@arcgis/core 4.33.0-next.20250514 → 4.33.0-next.20250516

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 (474) hide show
  1. package/Basemap.js +1 -1
  2. package/Graphic.js +1 -1
  3. package/Map.js +1 -1
  4. package/WebScene.js +1 -1
  5. package/applications/Components/SelectionOperation.js +1 -1
  6. package/applications/Components/baUtils.js +1 -1
  7. package/arcade/functions/featuresetbase.js +1 -1
  8. package/assets/esri/core/workers/RemoteClient.js +1 -1
  9. package/assets/esri/core/workers/chunks/009730713ed9bc7c7388.js +1 -0
  10. package/assets/esri/core/workers/chunks/02853ab923245459b32e.js +1 -0
  11. package/assets/esri/core/workers/chunks/0624ae07d3af8d5f1ac8.js +1 -0
  12. package/assets/esri/core/workers/chunks/{6e8c6c9112ecb867b7be.js → 0817ddd885ce8b2459cb.js} +1 -1
  13. package/assets/esri/core/workers/chunks/{69e8aabe5a1eb2d1e414.js → 0832bd5195b5791dd803.js} +1 -1
  14. package/assets/esri/core/workers/chunks/0c50ee1f3cdd30d96479.js +1 -0
  15. package/assets/esri/core/workers/chunks/0d23610475c85385fbff.js +1 -0
  16. package/assets/esri/core/workers/chunks/{b4f38fe9cc948a39ad87.js → 0fd6d80393722132e044.js} +2 -2
  17. package/assets/esri/core/workers/chunks/{b4f38fe9cc948a39ad87.js.LICENSE.txt → 0fd6d80393722132e044.js.LICENSE.txt} +1 -1
  18. package/assets/esri/core/workers/chunks/1051a5a57b2fb843a555.js +1 -0
  19. package/assets/esri/core/workers/chunks/133e4bde346828d4510b.js +1 -0
  20. package/assets/esri/core/workers/chunks/19a58adc75a34f84b0ef.js +1 -0
  21. package/assets/esri/core/workers/chunks/{7e8f78b96d43c224c7b6.js → 19c50f052eba0553bf4d.js} +1 -1
  22. package/assets/esri/core/workers/chunks/1d7f2abfccc54659d6f2.js +1 -0
  23. package/assets/esri/core/workers/chunks/{339e7a900e2bba9d3647.js → 1f19bd3ef795c6765384.js} +1 -1
  24. package/assets/esri/core/workers/chunks/1f9c6fbcd4d0eae1e574.js +1 -0
  25. package/assets/esri/core/workers/chunks/234117cc5cb7c6863313.js +1 -0
  26. package/assets/esri/core/workers/chunks/{1c025beaaac5ec7c04fb.js → 2adf558cd8d8155d07d7.js} +1 -1
  27. package/assets/esri/core/workers/chunks/{837f886f759fc6f0489d.js → 2b1486a466760d2152f5.js} +1 -1
  28. package/assets/esri/core/workers/chunks/{47f64a340b5d56bf9e59.js → 2cf82d3645c75d311e99.js} +1 -1
  29. package/assets/esri/core/workers/chunks/320e821af81138fe12ac.js +1 -0
  30. package/assets/esri/core/workers/chunks/{f7ab3511f6627f467796.js → 377a7f0f7d304ff9fe5b.js} +1 -1
  31. package/assets/esri/core/workers/chunks/3bf1cf6c3cba172e2f6d.js +1 -0
  32. package/assets/esri/core/workers/chunks/{b3ca65d6112079fb1d00.js → 3ce5d7ad16e41eea05be.js} +1 -1
  33. package/assets/esri/core/workers/chunks/465f2db4ab8aa9c9f907.js +1 -0
  34. package/assets/esri/core/workers/chunks/{1e13e03aad422f9e871e.js → 47fe2379f2214bf50036.js} +1 -1
  35. package/assets/esri/core/workers/chunks/{b8b5dfd2d73a8410fba2.js → 4954e0cf4a40e45d237f.js} +1 -1
  36. package/assets/esri/core/workers/chunks/4a362a35bcdb8405a53a.js +1 -0
  37. package/assets/esri/core/workers/chunks/4f8ebd9f0758b801835c.js +1 -0
  38. package/assets/esri/core/workers/chunks/5228d39c05d660a135b6.js +1 -0
  39. package/assets/esri/core/workers/chunks/523046e04679e301797d.js +1 -0
  40. package/assets/esri/core/workers/chunks/{736cb9f74bf050b70f4c.js → 52a3d0e041717da7697e.js} +1 -1
  41. package/assets/esri/core/workers/chunks/54ea93f416ab52b413c1.js +1 -0
  42. package/assets/esri/core/workers/chunks/554a8bf4626336e68798.js +1 -0
  43. package/assets/esri/core/workers/chunks/55f087bca75c3f2a4515.js +1 -0
  44. package/assets/esri/core/workers/chunks/{bbaadce582df7e20397b.js → 56d2a20c1b143697aa19.js} +1 -1
  45. package/assets/esri/core/workers/chunks/57211c35a9646f088d86.js +1 -0
  46. package/assets/esri/core/workers/chunks/58526def64536b6581ab.js +1 -0
  47. package/assets/esri/core/workers/chunks/5890740d5a761b038560.js +1 -0
  48. package/assets/esri/core/workers/chunks/{9a641fb94819574e48f6.js → 5a73d8b7b01758ed4fdd.js} +1 -1
  49. package/assets/esri/core/workers/chunks/5dbd8d81d94cfda5bb32.js +1 -0
  50. package/assets/esri/core/workers/chunks/{a0d2bd5d4ed3c90f6b1c.js → 5f766bcb751d66fbf1c8.js} +1 -1
  51. package/assets/esri/core/workers/chunks/609c7c9b7046b3a7acde.js +1 -0
  52. package/assets/esri/core/workers/chunks/{d21d9e8b8c8a2e0485d5.js → 612f6739c9399fbae4d0.js} +1 -1
  53. package/assets/esri/core/workers/chunks/{30f3014c0ac6e2bc14bf.js → 622c0552ca3cd674d46c.js} +1 -1
  54. package/assets/esri/core/workers/chunks/6409160d226a0bea5ac6.js +1 -0
  55. package/assets/esri/core/workers/chunks/65fd971d0574d69cbc26.js +1 -0
  56. package/assets/esri/core/workers/chunks/6993a59cbb78bc26f029.js +1 -0
  57. package/assets/esri/core/workers/chunks/6b23ca6570357f9fb724.js +1 -0
  58. package/assets/esri/core/workers/chunks/6c37a5bd00d255d1337a.js +1 -0
  59. package/assets/esri/core/workers/chunks/6ce4327f63e6eb92bba8.js +1 -0
  60. package/assets/esri/core/workers/chunks/6f9b8df290b0ce09beae.js +1 -0
  61. package/assets/esri/core/workers/chunks/{e0247252c6a0f3340e33.js → 6fa1a5b7276a037dbd6a.js} +84 -106
  62. package/assets/esri/core/workers/chunks/7a9a0383f27f4967bcfa.js +1 -0
  63. package/assets/esri/core/workers/chunks/7c819b3e6d69c526f4b2.js +1 -0
  64. package/assets/esri/core/workers/chunks/7df147da40474b028705.js +1 -0
  65. package/assets/esri/core/workers/chunks/{0766ecb677d667e5fb83.js → 7e1dc8e5e18f18dd21e2.js} +2 -2
  66. package/assets/esri/core/workers/chunks/{0766ecb677d667e5fb83.js.LICENSE.txt → 7e1dc8e5e18f18dd21e2.js.LICENSE.txt} +1 -1
  67. package/assets/esri/core/workers/chunks/{e662c86b8bafc5512d3d.js → 847e88e1d6da1e74cdc8.js} +1 -1
  68. package/assets/esri/core/workers/chunks/{6f5ec9bf7cf8a36d8e8b.js → 87eca6de502d18d8b7eb.js} +1 -1
  69. package/assets/esri/core/workers/chunks/87fc7b6c3e2d4f7775e2.js +1 -0
  70. package/assets/esri/core/workers/chunks/{10e6dffa57aa1a626708.js → 8a6aac37b3133de74cce.js} +1 -1
  71. package/assets/esri/core/workers/chunks/8a87c181b85d0b86b9bb.js.LICENSE.txt +1 -1
  72. package/assets/esri/core/workers/chunks/91cd29f53f07bc38fe75.js +1 -0
  73. package/assets/esri/core/workers/chunks/{5583d18032ed8bc17c74.js → 938f1eebc48871be64e9.js} +1 -1
  74. package/assets/esri/core/workers/chunks/97c148adf0347c69a79c.js +1 -0
  75. package/assets/esri/core/workers/chunks/9839309d0cd804fe52c2.js +1 -0
  76. package/assets/esri/core/workers/chunks/{029a118e6dfb3f544a5c.js → 98ef17d15517368d2383.js} +1 -1
  77. package/assets/esri/core/workers/chunks/{c10885b3a0739708e9e0.js → 9a06476b834584d00d5c.js} +1 -1
  78. package/assets/esri/core/workers/chunks/9c8224ca29475556e5ea.js +1 -0
  79. package/assets/esri/core/workers/chunks/{fd24dd602a3fed88d90e.js → 9d5eac3bd1526e2b33e3.js} +1 -1
  80. package/assets/esri/core/workers/chunks/{38f5e6a202ce292edd9f.js → 9eb9c8db2510154c09cc.js} +1 -1
  81. package/assets/esri/core/workers/chunks/a036503087baa1f9fd00.js +1 -0
  82. package/assets/esri/core/workers/chunks/{6e64ce0958c3432004b6.js → a70a86ba4e487f62f683.js} +2 -2
  83. package/assets/esri/core/workers/chunks/a937076d2f8c2b6a5d8a.js +1 -0
  84. package/assets/esri/core/workers/chunks/{90ae15ce22a49bd84876.js → ab9614555a15f04396f6.js} +2 -2
  85. package/assets/esri/core/workers/chunks/{90ae15ce22a49bd84876.js.LICENSE.txt → ab9614555a15f04396f6.js.LICENSE.txt} +1 -1
  86. package/assets/esri/core/workers/chunks/ae733c963d61065faa54.js +1 -0
  87. package/assets/esri/core/workers/chunks/{8e82acd1f730571680f4.js → aeb5bbe861f65544d504.js} +1 -1
  88. package/assets/esri/core/workers/chunks/b0522dffa5600345c07e.js +1 -0
  89. package/assets/esri/core/workers/chunks/{d1f7bfb8daf11ecada9f.js → b4273381dc069f4e1fa2.js} +1 -1
  90. package/assets/esri/core/workers/chunks/{fb2e28e6a87956267d1c.js → b92a34f88569c481ed10.js} +1 -1
  91. package/assets/esri/core/workers/chunks/{352b7dcd1633e0c98194.js → ba940ebdae84b174a7be.js} +1 -1
  92. package/assets/esri/core/workers/chunks/be2c8c0a8b2bce7979b6.js +1 -0
  93. package/assets/esri/core/workers/chunks/bf9b6b74654d303a6dae.js +1 -0
  94. package/assets/esri/core/workers/chunks/c07c1bb7ae09136dc1f6.js +1 -0
  95. package/assets/esri/core/workers/chunks/c938f5d269ba202d10ef.js +1 -0
  96. package/assets/esri/core/workers/chunks/cbbca011f8b176d4b5db.js +1 -0
  97. package/assets/esri/core/workers/chunks/{c604fefedccfd4db9953.js → ce321fd8fc5551e190ec.js} +1 -1
  98. package/assets/esri/core/workers/chunks/ce53ddda04e09ba2f860.js +1 -0
  99. package/assets/esri/core/workers/chunks/d9a23fb0c6c936d5e8ec.js +1 -0
  100. package/assets/esri/core/workers/chunks/db3f710d770adf631b28.js +2 -0
  101. package/assets/esri/core/workers/chunks/{6394ab6f629aa90292e6.js.LICENSE.txt → db3f710d770adf631b28.js.LICENSE.txt} +1 -1
  102. package/assets/esri/core/workers/chunks/{6805e7b43d6ecf3ea93c.js → dcf5719f38ad40b92941.js} +1 -1
  103. package/assets/esri/core/workers/chunks/e2cada6644c49b1b6e79.js +1 -0
  104. package/assets/esri/core/workers/chunks/e2fb4bebce3aee406efa.js +1 -0
  105. package/assets/esri/core/workers/chunks/e3638f9d4c0fda238f4b.js +1 -0
  106. package/assets/esri/core/workers/chunks/e85f892ea44d67d53ff0.js +2 -0
  107. package/assets/esri/core/workers/chunks/{3596540ef49e5330ceb2.js.LICENSE.txt → e85f892ea44d67d53ff0.js.LICENSE.txt} +1 -1
  108. package/assets/esri/core/workers/chunks/e89345c7af9d3d4d8452.js +1 -0
  109. package/assets/esri/core/workers/chunks/{a31658f544ac6e1801d6.js → ead5d4e271effc04def3.js} +1 -1
  110. package/assets/esri/core/workers/chunks/ece68a25651ef03fc95d.js +1 -0
  111. package/assets/esri/core/workers/chunks/f218a190015de1444018.js +1 -0
  112. package/assets/esri/core/workers/chunks/f229044615af3142bcb0.js +1 -0
  113. package/assets/esri/core/workers/chunks/f2692f25ef693cf12ce0.js +1 -0
  114. package/assets/esri/core/workers/chunks/f4c6ea630cecf0f260d7.js +2 -0
  115. package/assets/esri/core/workers/chunks/{e0dc8794343c2a949ffb.js.LICENSE.txt → f4c6ea630cecf0f260d7.js.LICENSE.txt} +1 -1
  116. package/assets/esri/core/workers/chunks/f718cb847c4eb1e43ad9.js +1 -0
  117. package/assets/esri/core/workers/chunks/faa40ef04604c7cce706.js +1 -0
  118. package/assets/esri/core/workers/chunks/{218a66d53f7cf4f285aa.js → fbd2f45d5adce4ca323f.js} +2 -2
  119. package/assets/esri/core/workers/chunks/{218a66d53f7cf4f285aa.js.LICENSE.txt → fbd2f45d5adce4ca323f.js.LICENSE.txt} +1 -1
  120. package/assets/esri/core/workers/chunks/{498886c321a2501658bc.js → ffaa977cd97a2b7190c5.js} +1 -1
  121. package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
  122. package/assets/esri/themes/base/widgets/_Editor.scss +2 -1
  123. package/assets/esri/themes/base/widgets/_SearchResultRenderer.scss +5 -30
  124. package/assets/esri/themes/base/widgets/_SelectionToolbar.scss +5 -0
  125. package/assets/esri/themes/dark/main.css +1 -1
  126. package/assets/esri/themes/light/main.css +1 -1
  127. package/assets/esri/themes/light/view.css +1 -1
  128. package/assets/esri/widgets/Search/t9n/Search.json +1 -1
  129. package/assets/esri/widgets/Search/t9n/Search_en.json +1 -1
  130. package/chunks/Envelope.js +1 -1
  131. package/chunks/Jpg.js +1 -1
  132. package/chunks/LineSeries.js +1 -1
  133. package/chunks/ProjectionTransformation.js +1 -1
  134. package/chunks/QuadraticBezier.js +1 -1
  135. package/chunks/ShadowCastAccumulate.glsl.js +7 -5
  136. package/chunks/ShadowCastClear.glsl.js +5 -0
  137. package/chunks/ShadowCastVisualize.glsl.js +1 -1
  138. package/chunks/ShadowHighlight.glsl.js +8 -7
  139. package/chunks/Transformation2D.js +1 -1
  140. package/chunks/arcgis-knowledge-client-core-simd.js +1 -1
  141. package/chunks/arcgis-knowledge-client-core.js +1 -1
  142. package/chunks/basis_encoder.js +1 -1
  143. package/chunks/basis_transcoder.js +1 -1
  144. package/chunks/bundle.js +1 -1
  145. package/chunks/chartUtilsAm5.js +1 -1
  146. package/chunks/dxt_encoder.js +1 -1
  147. package/chunks/geometryEngineBase.js +1 -1
  148. package/chunks/i3s.js +1 -1
  149. package/chunks/lclayout.js +1 -1
  150. package/chunks/libtess-asm.js +1 -1
  151. package/chunks/lyr3DMain.js +1 -1
  152. package/chunks/lyr3DWorker.js +1 -1
  153. package/chunks/vec4.js +1 -1
  154. package/chunks/vxlLayer.js +1 -1
  155. package/config.js +1 -1
  156. package/core/arrayUtils.js +1 -1
  157. package/core/image/apng.js +1 -1
  158. package/core/image/gif.js +1 -1
  159. package/core/mathUtils.js +1 -1
  160. package/core/workers/Connection.js +1 -1
  161. package/geometry/operators/densifyOperator.d.ts +0 -1
  162. package/geometry/operators/gx/operatorOffset.js +1 -1
  163. package/geometry/operators/gx/operatorPolygonSlicer.js +1 -1
  164. package/geometry/support/aaBoundingBox.js +1 -1
  165. package/geometry/support/meshProperties.js +1 -1
  166. package/geometry/support/normalizeUtilsSync.js +1 -1
  167. package/interfaces.d.ts +313 -163
  168. package/intl/date.js +1 -1
  169. package/intl/number.js +1 -1
  170. package/layers/BingMapsLayer.js +1 -1
  171. package/layers/graphics/OptimizedFeatureSet.js +1 -1
  172. package/layers/graphics/controllers/StreamController.js +1 -1
  173. package/layers/graphics/data/FeatureIdInfo.js +5 -0
  174. package/layers/graphics/data/QueryEngine.js +1 -1
  175. package/layers/graphics/data/StreamFeatureManager.js +1 -1
  176. package/layers/graphics/data/createFeatureId.js +5 -0
  177. package/layers/graphics/featureConversionUtils.js +1 -1
  178. package/layers/graphics/sources/WFSSourceWorker.js +1 -1
  179. package/layers/graphics/sources/geojson/GeoJSONSourceWorker.js +1 -1
  180. package/layers/graphics/sources/support/CSVSourceWorker.js +1 -1
  181. package/layers/graphics/sources/support/MemorySourceWorker.js +1 -1
  182. package/layers/knowledgeGraph/KnowledgeGraphSublayer.js +1 -1
  183. package/layers/ogc/ogcFeatureUtils.js +1 -1
  184. package/layers/orientedImagery/core/coverageUtils.js +1 -1
  185. package/layers/orientedImagery/core/utils.js +1 -1
  186. package/layers/orientedImagery/queries.js +1 -1
  187. package/layers/orientedImagery/transformations/utils.js +1 -1
  188. package/layers/support/LercWorker.js +1 -1
  189. package/layers/support/rasterDatasets/BaseRaster.js +1 -1
  190. package/layers/support/rasterFunctions/rasterProjectionHelper.js +1 -1
  191. package/layers/support/rasterFunctions/stretchUtils.js +1 -1
  192. package/layers/support/wmsUtils.js +1 -1
  193. package/layers/video/VideoController.js +1 -1
  194. package/package.json +2 -2
  195. package/portal/Portal.js +1 -1
  196. package/request.js +1 -1
  197. package/rest/knowledgeGraph/GraphAddNamedTypesResult.js +1 -1
  198. package/rest/knowledgeGraph/GraphAddPropertyResult.js +5 -0
  199. package/rest/knowledgeGraph/GraphApplyEditsResult.js +1 -1
  200. package/rest/knowledgeGraph/GraphDeleteNamedTypeResult.js +1 -1
  201. package/rest/knowledgeGraph/GraphDeletePropertyResult.js +5 -0
  202. package/rest/knowledgeGraph/GraphUpdateNamedTypesResult.js +5 -0
  203. package/rest/knowledgeGraph/GraphUpdatePropertyResult.js +5 -0
  204. package/rest/knowledgeGraph/wasmInterface/updateToWasmEncodedFactories.js +1 -1
  205. package/rest/knowledgeGraph/wasmInterface/wasmToDataModelChangeResponseFactories.js +1 -1
  206. package/rest/knowledgeGraphService.js +1 -1
  207. package/rest/networks/support/Association.js +1 -1
  208. package/rest/networks/support/NetworkElement.js +1 -1
  209. package/rest/networks/support/QueryAssociationsParameters.js +1 -1
  210. package/rest/networks/support/TelecomNetworkElement.js +1 -1
  211. package/rest/networks/support/TraceResult.js +1 -1
  212. package/rest/networks/unitIdentifiers/insertGap.js +5 -0
  213. package/rest/networks/unitIdentifiers/queryUnitIdentifiers.js +5 -0
  214. package/rest/networks/unitIdentifiers/reset.js +5 -0
  215. package/rest/networks/unitIdentifiers/resize.js +5 -0
  216. package/rest/networks/unitIdentifiers/support/InsertGapParameters.js +5 -0
  217. package/rest/networks/unitIdentifiers/support/QueryUnitIdentifiersParamters.js +5 -0
  218. package/rest/networks/unitIdentifiers/support/ResetParameters.js +5 -0
  219. package/rest/networks/unitIdentifiers/support/ResizeParameters.js +5 -0
  220. package/rest/networks/unitIdentifiers/support/UnitQueryResult.js +5 -0
  221. package/rest/query/operations/pbfDehydratedFeatureSet.js +1 -1
  222. package/rest/query/operations/pbfJSONFeatureSet.js +1 -1
  223. package/rest/query/operations/queryRelatedRecords.js +1 -1
  224. package/rest/utils.js +1 -1
  225. package/smartMapping/support/adapters/InMemoryLayerAdapter.js +1 -1
  226. package/support/apiKeyUtils.js +1 -1
  227. package/support/basemapEnsureType.js +1 -1
  228. package/support/revision.js +1 -1
  229. package/symbols/cim/effects/EffectControlMeasureLine.js +1 -1
  230. package/unionTypes.d.ts +2 -0
  231. package/views/2d/engine/ManagedCanvas.js +1 -1
  232. package/views/2d/engine/Stage.js +1 -1
  233. package/views/2d/engine/vectorTiles/VectorTile.js +1 -1
  234. package/views/2d/engine/webgl/TileContainer.js +1 -1
  235. package/views/2d/engine/webgl/grouping.js +1 -1
  236. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  237. package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
  238. package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
  239. package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
  240. package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
  241. package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
  242. package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
  243. package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
  244. package/views/2d/layers/features/layerAdapters/StreamLayerAdapter.js +1 -1
  245. package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
  246. package/views/2d/layers/features/layerAdapters/featureServiceUtils.js +1 -1
  247. package/views/2d/layers/features/processor/AAggregateStrategy.js +1 -1
  248. package/views/2d/layers/features/processor/BinningStrategy.js +1 -1
  249. package/views/2d/layers/features/processor/ClusterStrategy.js +1 -1
  250. package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
  251. package/views/2d/layers/features/sources/FeatureSource.js +1 -1
  252. package/views/2d/layers/features/sources/FeatureSourceQueryInfo.js +1 -1
  253. package/views/2d/layers/features/sources/strategies/StreamLoadStrategy.js +1 -1
  254. package/views/2d/layers/features/sources/strategies/support/queryAdapters.js +1 -1
  255. package/views/2d/layers/features/support/AttributeStore.js +1 -1
  256. package/views/2d/layers/features/support/FeatureMetadata.js +1 -1
  257. package/views/2d/layers/features/support/FeatureSetReaderJSON.js +1 -1
  258. package/views/2d/layers/features/support/FeatureSetReaderPBF.js +1 -1
  259. package/views/2d/layers/features/support/FeatureSetReaderPBFHeader.js +1 -1
  260. package/views/2d/layers/features/support/FeatureSetReaderParquet.js +1 -1
  261. package/views/3d/FocusAreasView.js +1 -1
  262. package/views/3d/analysis/AnalysisViewManager3D.js +1 -1
  263. package/views/3d/analysis/DimensionAnalysisView3D.d.ts +4 -0
  264. package/views/3d/analysis/DimensionAnalysisView3D.js +1 -1
  265. package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
  266. package/views/3d/camera/constraintUtils/common.js +1 -1
  267. package/views/3d/interactive/Manipulator3D.js +1 -1
  268. package/views/3d/interactive/SnappingVisualizer3D.js +1 -1
  269. package/views/3d/layers/ContentGeometryLayerView.js +5 -0
  270. package/views/3d/layers/DimensionLayerView3D.js +1 -1
  271. package/views/3d/layers/FlowSubView3D.js +1 -1
  272. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  273. package/views/3d/layers/I3SMeshView3D.js +1 -1
  274. package/views/3d/layers/LineOfSightLayerView3D.js +1 -1
  275. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  276. package/views/3d/layers/RouteLayerView3D.js +1 -1
  277. package/views/3d/layers/ViewshedLayerView3D.js +1 -1
  278. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  279. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  280. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
  281. package/views/3d/layers/graphics/Graphics3DGraphic.js +1 -1
  282. package/views/3d/layers/graphics/Graphics3DGraphicsPipeline.js +1 -1
  283. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  284. package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
  285. package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
  286. package/views/3d/layers/graphics/Graphics3DWebStyleSymbol.js +1 -1
  287. package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
  288. package/views/3d/layers/graphics/Labeler.js +1 -1
  289. package/views/3d/layers/graphics/QueryEngine.js +1 -1
  290. package/views/3d/layers/graphics/focusAreaStyle.js +5 -0
  291. package/views/3d/layers/graphics/pipeline/Feature3DPipelineWorker.js +1 -1
  292. package/views/3d/layers/i3s/I3SBinaryReader.js +1 -1
  293. package/views/3d/layers/i3s/I3SMaterialUtil.js +1 -1
  294. package/views/3d/layers/i3s/I3SNodeLoader.js +1 -1
  295. package/views/3d/layers/i3s/I3SQueryEngine.js +1 -1
  296. package/views/3d/layers/i3s/PagedNodeIndex.js +1 -1
  297. package/views/3d/layers/i3s/PointCloudWorkerUtil.js +1 -1
  298. package/views/3d/layers/support/FeatureTileFetcher3D.js +1 -1
  299. package/views/3d/layers/support/LayerViewAnalysisViewManager.js +5 -0
  300. package/views/3d/support/pointsOfInterest/ContentGeometryUpdates.js +1 -1
  301. package/views/3d/support/pointsOfInterest/PointsOfInterest.js +1 -1
  302. package/views/3d/terrain/PatchRenderData.js +1 -1
  303. package/views/3d/terrain/TerrainRenderer.js +1 -1
  304. package/views/3d/terrain/TerrainSurface.js +1 -1
  305. package/views/3d/terrain/TileAgent.js +1 -1
  306. package/views/3d/webgl-engine/collections/Component/IndexRange/ComponentRange.js +1 -1
  307. package/views/3d/webgl-engine/core/FBOCache.js +1 -1
  308. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +3 -3
  309. package/views/3d/webgl-engine/core/shaderLibrary/shading/ShadowmapFiltering.glsl.js +3 -25
  310. package/views/3d/webgl-engine/core/shaderLibrary/shading/calculateUVZShadow.glsl.js +1 -1
  311. package/views/3d/webgl-engine/core/shaderModules/Texture2DShadowBindUniform.js +5 -0
  312. package/views/3d/webgl-engine/effects/RenderPluginManager.js +1 -1
  313. package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizerNode.js +3 -3
  314. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskNode.js +1 -1
  315. package/views/3d/webgl-engine/lib/BoundingInfo.js +1 -1
  316. package/views/3d/webgl-engine/lib/DepthRange.js +1 -1
  317. package/views/3d/webgl-engine/lib/GPUPointOcclusionQuery.js +1 -1
  318. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  319. package/views/3d/webgl-engine/lib/Material.js +1 -1
  320. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  321. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  322. package/views/3d/webgl-engine/lib/ShadowCastRenderer.js +1 -1
  323. package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
  324. package/views/3d/webgl-engine/lib/ViewshedShadowMap.js +1 -1
  325. package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
  326. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  327. package/views/3d/webgl-engine/lib/verticalOffsetUtils.js +1 -1
  328. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  329. package/views/3d/webgl-engine/shaders/ShadowCastAccumulate.glsl.js +1 -1
  330. package/views/3d/webgl-engine/shaders/ShadowCastClear.glsl.js +5 -0
  331. package/views/3d/webgl-engine/shaders/ShadowCastClearTechnique.js +5 -0
  332. package/views/3d/webgl-engine/shaders/ShadowHighlight.glsl.js +1 -1
  333. package/views/3d/webgl.js +1 -1
  334. package/views/FocusArea.js +1 -1
  335. package/views/FocusAreas.js +1 -1
  336. package/views/GroundView.js +1 -1
  337. package/views/SceneView.js +1 -1
  338. package/views/View.js +1 -1
  339. package/views/draw/support/Box.js +1 -1
  340. package/views/draw/support/GraphicMover.js +1 -1
  341. package/views/draw/support/Reshape.js +1 -1
  342. package/views/input/InputManager.js +1 -1
  343. package/views/interactive/snapping/featureSources/GraphicsSnappingSource.js +1 -1
  344. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js +1 -1
  345. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiledFetcher.js +1 -1
  346. package/views/layers/FeatureLayerView.js +1 -1
  347. package/views/support/LayerViewManager.js +1 -1
  348. package/views/webgl/RenderingContext.js +1 -1
  349. package/views/webgl/ShaderBuilder.js +1 -1
  350. package/views/webgl/Texture.js +1 -1
  351. package/views/webgl/TextureDescriptor.js +1 -1
  352. package/views/webgl/textureUtils.js +1 -1
  353. package/webscene/Slide.js +1 -1
  354. package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
  355. package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.js +1 -1
  356. package/widgets/BatchAttributeForm/VisibleElements.js +1 -1
  357. package/widgets/BatchAttributeForm.js +1 -1
  358. package/widgets/CoordinateConversion.js +1 -1
  359. package/widgets/Directions.js +1 -1
  360. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
  361. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.js +1 -1
  362. package/widgets/Editor/EditorViewModel.js +1 -1
  363. package/widgets/Editor/UpdateFeaturesWorkflow.d.ts +4 -0
  364. package/widgets/Editor/UpdateFeaturesWorkflow.js +1 -1
  365. package/widgets/Editor/UpdateFeaturesWorkflowData.d.ts +4 -0
  366. package/widgets/Editor/UpdateFeaturesWorkflowData.js +1 -1
  367. package/widgets/Editor/UpdateWorkflow.js +1 -1
  368. package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
  369. package/widgets/Editor/support/SketchController.js +1 -1
  370. package/widgets/Editor/workflowUtils.js +1 -1
  371. package/widgets/Editor.js +1 -1
  372. package/widgets/ElevationProfile/support/profileUtils.js +1 -1
  373. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationItemList.js +1 -1
  374. package/widgets/FeatureForm.js +1 -1
  375. package/widgets/LayerList/LayerListItem.js +1 -1
  376. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  377. package/widgets/OrientedImageryViewer/components/ImageViewer.js +1 -1
  378. package/widgets/OrientedImageryViewer/components/ImageViewerViewModel.js +1 -1
  379. package/widgets/OrientedImageryViewer/components/NavigationUI.js +1 -1
  380. package/widgets/OrientedImageryViewer/components/NavigationUIPanoramicViewModel.js +5 -0
  381. package/widgets/OrientedImageryViewer/components/NavigationUIViewModel.js +1 -1
  382. package/widgets/OrientedImageryViewer/components/imageNavigationUtils.js +1 -1
  383. package/widgets/OrientedImageryViewer/constants.js +1 -1
  384. package/widgets/OrientedImageryViewer/navigation/NavigationManager.js +5 -0
  385. package/widgets/OrientedImageryViewer/navigation/NavigationManagerPanoramic.js +5 -0
  386. package/widgets/OrientedImageryViewer/navigation/errors.js +5 -0
  387. package/widgets/OrientedImageryViewer/navigation/queries.js +5 -0
  388. package/widgets/OrientedImageryViewer/navigation/utils.js +5 -0
  389. package/widgets/PanoramicViewer/PanoramicViewerViewModel.js +1 -1
  390. package/widgets/PanoramicViewer.js +1 -1
  391. package/widgets/Search/SearchResultRenderer.js +1 -1
  392. package/widgets/Search/SearchViewModel.js +1 -1
  393. package/widgets/Search/searchResultRendererCSS.js +1 -1
  394. package/widgets/ShadowCast/ShadowCastViewModel.js +1 -1
  395. package/widgets/Sketch/SketchViewModel.js +1 -1
  396. package/widgets/Sketch.js +1 -1
  397. package/widgets/support/SelectionList/SelectionListViewModel.js +1 -1
  398. package/widgets/support/SelectionList/selectionListUtils.js +1 -1
  399. package/widgets/support/SelectionList.js +1 -1
  400. package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.js +1 -1
  401. package/widgets/support/SelectionToolbar.js +1 -1
  402. package/widgets/support/Selector2D/SelectionOperation.js +1 -1
  403. package/widgets/support/SnappingControls.js +1 -1
  404. package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +1 -1
  405. package/widgets/support/UtilityNetworkAssociations/utils/createAssociation.js +1 -1
  406. package/assets/esri/core/workers/chunks/0516bd18334d3af6c555.js +0 -1
  407. package/assets/esri/core/workers/chunks/0d8a635c1f9aeaf7564c.js +0 -1
  408. package/assets/esri/core/workers/chunks/191a45a594ecaf7f1abb.js +0 -1
  409. package/assets/esri/core/workers/chunks/1abd026ed12c863e1d94.js +0 -1
  410. package/assets/esri/core/workers/chunks/1c6542315390037053a6.js +0 -1
  411. package/assets/esri/core/workers/chunks/201db423e3c6f947b77c.js +0 -1
  412. package/assets/esri/core/workers/chunks/23de8aeed5b82c682cbe.js +0 -1
  413. package/assets/esri/core/workers/chunks/297d2c0a9d3f1e978318.js +0 -1
  414. package/assets/esri/core/workers/chunks/2e0af748eba93f3ea6cb.js +0 -1
  415. package/assets/esri/core/workers/chunks/3596540ef49e5330ceb2.js +0 -2
  416. package/assets/esri/core/workers/chunks/3604a77c93cf2927787b.js +0 -1
  417. package/assets/esri/core/workers/chunks/391b1c3e736a62befbaf.js +0 -1
  418. package/assets/esri/core/workers/chunks/40e556a0645af8658658.js +0 -1
  419. package/assets/esri/core/workers/chunks/4402336db7210cd583e0.js +0 -1
  420. package/assets/esri/core/workers/chunks/4899cdc8bb5085c356f9.js +0 -1
  421. package/assets/esri/core/workers/chunks/4bd5cbf6e0be2fc7e84d.js +0 -1
  422. package/assets/esri/core/workers/chunks/4c8052e81916579841f4.js +0 -1
  423. package/assets/esri/core/workers/chunks/4c9aa1dafdc0d9537231.js +0 -1
  424. package/assets/esri/core/workers/chunks/4feb774f123da26e9f2a.js +0 -1
  425. package/assets/esri/core/workers/chunks/51b5dfc7085272d26b89.js +0 -1
  426. package/assets/esri/core/workers/chunks/566c2ce50af225e556ac.js +0 -1
  427. package/assets/esri/core/workers/chunks/5ddf463c85c33428e807.js +0 -1
  428. package/assets/esri/core/workers/chunks/61032b5050464cb48056.js +0 -1
  429. package/assets/esri/core/workers/chunks/6394ab6f629aa90292e6.js +0 -2
  430. package/assets/esri/core/workers/chunks/63dade3e1cc7f5b76846.js +0 -1
  431. package/assets/esri/core/workers/chunks/64af433e88d4dd21a2ff.js +0 -1
  432. package/assets/esri/core/workers/chunks/6b42bcfbb60432e3ed1f.js +0 -1
  433. package/assets/esri/core/workers/chunks/6e12900a9f4c3c9941ec.js +0 -1
  434. package/assets/esri/core/workers/chunks/6e5d8a6b29c06a27998c.js +0 -1
  435. package/assets/esri/core/workers/chunks/6f506303017903b9a06f.js +0 -1
  436. package/assets/esri/core/workers/chunks/71e46e866c23372b0b58.js +0 -1
  437. package/assets/esri/core/workers/chunks/75fa861b5757551f8fdc.js +0 -1
  438. package/assets/esri/core/workers/chunks/7c49a8877bd744daa3d5.js +0 -1
  439. package/assets/esri/core/workers/chunks/7ea5bbb52e84be9a608e.js +0 -1
  440. package/assets/esri/core/workers/chunks/82c395d8649096609a8a.js +0 -1
  441. package/assets/esri/core/workers/chunks/86138c297095af1ac604.js +0 -1
  442. package/assets/esri/core/workers/chunks/8c21cc9af4ce9652cc5c.js +0 -1
  443. package/assets/esri/core/workers/chunks/8e6301006abdf47cc88d.js +0 -1
  444. package/assets/esri/core/workers/chunks/90f93091fe088875f80f.js +0 -1
  445. package/assets/esri/core/workers/chunks/91a02ee91f61cf841111.js +0 -1
  446. package/assets/esri/core/workers/chunks/9baeb3b5733acdda4e7c.js +0 -1
  447. package/assets/esri/core/workers/chunks/a1d697e2be1e892a666a.js +0 -1
  448. package/assets/esri/core/workers/chunks/a1f27c4f4b5ef3e359f7.js +0 -1
  449. package/assets/esri/core/workers/chunks/a348ff2dd936c6bf9399.js +0 -1
  450. package/assets/esri/core/workers/chunks/a9b1f4bf5eaa937943be.js +0 -1
  451. package/assets/esri/core/workers/chunks/b64f708f821dd2bb51cd.js +0 -1
  452. package/assets/esri/core/workers/chunks/bf453744067267e84d1b.js +0 -1
  453. package/assets/esri/core/workers/chunks/c1175477dfcdee90a453.js +0 -1
  454. package/assets/esri/core/workers/chunks/c4e2b75b9135920babc3.js +0 -1
  455. package/assets/esri/core/workers/chunks/cb80b7ddc9acf625d754.js +0 -1
  456. package/assets/esri/core/workers/chunks/d22f91bc16a7641bcbef.js +0 -1
  457. package/assets/esri/core/workers/chunks/d52cf7b795ee52034f9e.js +0 -1
  458. package/assets/esri/core/workers/chunks/d971571a957de70d5a8d.js +0 -1
  459. package/assets/esri/core/workers/chunks/d9d9d4f99140e579eabb.js +0 -1
  460. package/assets/esri/core/workers/chunks/dc3a6beb3028009b3c23.js +0 -1
  461. package/assets/esri/core/workers/chunks/e0dc8794343c2a949ffb.js +0 -2
  462. package/assets/esri/core/workers/chunks/e483d2f169e51a361742.js +0 -1
  463. package/assets/esri/core/workers/chunks/e5608e5232e983531f72.js +0 -1
  464. package/assets/esri/core/workers/chunks/e613df03ceb39e29befa.js +0 -1
  465. package/assets/esri/core/workers/chunks/e697dd4508f02dcfe329.js +0 -1
  466. package/assets/esri/core/workers/chunks/eabfab23246d4a052ea3.js +0 -1
  467. package/assets/esri/core/workers/chunks/ec8e8048b3df2c92008d.js +0 -1
  468. package/assets/esri/core/workers/chunks/ed6d0fea159dea638c2f.js +0 -1
  469. package/assets/esri/core/workers/chunks/f5fcba6ca6f43bf1d65d.js +0 -1
  470. package/assets/esri/core/workers/chunks/f92d76b694ff0cdb212c.js +0 -1
  471. package/chunks/NetworkElement.js +0 -5
  472. package/views/FocusAreasUtils.js +0 -5
  473. package/views/analysis/DimensionAnalysisView.d.ts +0 -4
  474. package/views/analysis/DimensionAnalysisView.js +0 -5
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[301],{2272:(e,t,r)=>{r.d(t,{Dl:()=>c,gf:()=>u,jV:()=>l,lF:()=>d});var n=r(92602),i=r(70333),s=r(4718),a=r(84952),o=r(926);function l(e,t){return t?{...t,query:{...e??{},...t.query}}:{query:e}}function c(e){return"string"==typeof e?(0,a.An)(e):(0,s.o8)(e)}function d(e,t,r){const n={};for(const i in e){if("declaredClass"===i)continue;const s=e[i];if(null!=s&&"function"!=typeof s)if(Array.isArray(s))n[i]=s.map((e=>d(e)));else if("object"==typeof s)if(s.toJSON){const e=s.toJSON(r?.[i]);n[i]=t?e:JSON.stringify(e)}else n[i]=t?s:JSON.stringify(s);else n[i]=s}return n}async function u(e,t,s){const a=function(e,t){return e?(0,o.Jn)(e,t)?t||n.A.apiKey:i.id?.findCredential(e)?.token:null}(e,t);if(a)return a;!i.id&&n.A.request.useIdentity&&await Promise.all([r.e(7292),r.e(3747)]).then(r.bind(r,73747));const l=await(i.id?.getCredential(e,s));return l?.token}},3330:(e,t,r)=>{r.d(t,{GB:()=>i,Qo:()=>a,Y4:()=>s});var n=r(96285);class i{static{this.instance=new n.oh("Etc/UTC")}}function s(e){return e instanceof n.bo?e===i.instance:"unknown"===e?.toString().toLowerCase()}function a(e){return s(e)?i.instance:e}},6867:(e,t,r)=>{r.d(t,{i:()=>u});var n=r(58083),i=r(9093),s=r(38954),a=r(51850),o=r(87317),l=r(91829),c=r(71351),d=r(29878);class u{get ray(){return this._ray}get distanceInRenderSpace(){return null==this.distance?null:((0,s.g)(m,this.ray.direction,this.distance),(0,s.l)(m))}withinDistance(e){return!!h(this)&&this.distanceInRenderSpace<=e}getIntersectionPoint(e){return!!h(this)&&((0,s.g)(m,this.ray.direction,this.distance),(0,s.f)(e,this.ray.origin,m),!0)}getTransformedNormal(e){return(0,s.c)(f,this.normal),f[3]=0,(0,o.t)(f,f,this.transformation),(0,s.c)(e,f),(0,s.n)(e,e)}constructor(e){this.intersector=d.d.OBJECT,this.normal=(0,a.vt)(),this.transformation=(0,i.vt)(),this._ray=(0,c.vt)(),this.init(e)}init(e){this.distance=this.target=this.drapedLayerOrder=this.renderPriority=null,this.intersector=d.d.OBJECT,(0,c.C)(e,this._ray)}set(e,t,r,o,l,c,d){this.intersector=e,this.distance=r,(0,s.c)(this.normal,o??a.Cb),(0,n.C)(this.transformation,l??i.zK),this.target=t,this.drapedLayerOrder=c,this.renderPriority=d}copy(e){(0,c.C)(e.ray,this._ray),this.intersector=e.intersector,this.distance=e.distance,this.target=e.target,this.drapedLayerOrder=e.drapedLayerOrder,this.renderPriority=e.renderPriority,(0,s.c)(this.normal,e.normal),(0,n.C)(this.transformation,e.transformation)}}function h(e){return null!=e?.distance}const m=(0,a.vt)(),f=(0,l.vt)()},10536:(e,t,r)=>{function n(e){const t={};for(const r in e){if("declaredClass"===r)continue;const i=e[r];if(null!=i&&"function"!=typeof i)if(Array.isArray(i)){t[r]=[];for(let e=0;e<i.length;e++)t[r][e]=n(i[e])}else"object"==typeof i?i.toJSON&&(t[r]=JSON.stringify(i)):t[r]=i}return t}r.d(t,{z:()=>n})},13259:(e,t,r)=>{r.d(t,{H:()=>z,b:()=>E,c:()=>k,f:()=>B,s:()=>M});var n=r(37585),i=r(48163),s=r(91829),a=r(79258),o=r(49255),l=r(76591),c=r(36782),d=r(47522),u=r(40268),h=r(63578),m=r(13755),f=r(42593),p=r(42398),y=r(63365),g=r(26835),_=r(52587),b=r(20693),v=r(47286),w=r(14314),x=r(81961),S=r(71988),C=r(33094),T=r(20304),I=r(31821),A=r(12791),O=r(63761),R=r(59643),P=r(46540),D=r(14113),F=r(49788);const M={occludedFadeFactor:1};function E(e){const t=new D.N5,{signedDistanceFieldEnabled:r,occlusionTestEnabled:i,horizonCullingEnabled:M,pixelSnappingEnabled:E,hasScreenSizePerspective:B,debugDrawLabelBorder:z,vvSize:j,vvColor:N,hasRotation:q,occludedFragmentFade:H,sampleSignedDistanceFieldTexelCenter:G}=e;t.include(u.Q,e),t.vertex.include(l.rA,e);const{occlusionPass:$,output:Y,oitPass:Z}=e;if($)return t.include(h.I,e),t;const{vertex:J,fragment:W}=t;t.include(_.Y6),t.include(p.A,e),t.include(c.g,e),i&&t.include(m.y),W.include(g.W),W.include(y.a),t.varyings.add("vcolor","vec4"),t.varyings.add("vtc","vec2"),t.varyings.add("vsize","vec2");const X=Y===o.V.Highlight,Q=X&&i;Q&&t.varyings.add("voccluded","float"),J.uniforms.add(new w.I("viewport",(e=>e.camera.fullViewport)),new v.G("screenOffset",((e,t)=>(0,n.hZ)(L,2*e.screenOffset[0]*t.camera.pixelRatio,2*e.screenOffset[1]*t.camera.pixelRatio))),new v.G("anchorPosition",(e=>k(e))),new S.E("materialColor",(e=>e.color)),new T.m("materialRotation",(e=>e.rotation)),new O.N("tex",(e=>e.texture))),(0,b.Nz)(J),r&&(J.uniforms.add(new S.E("outlineColor",(e=>e.outlineColor))),W.uniforms.add(new S.E("outlineColor",(e=>U(e)?e.outlineColor:s.uY)),new T.m("outlineSize",(e=>U(e)?e.outlineSize:0)))),M&&J.uniforms.add(new x.V("pointDistanceSphere",((e,t)=>{const r=t.camera.eye,n=e.origin;return(0,s.fA)(n[0]-r[0],n[1]-r[1],n[2]-r[2],a.$O.radius)}))),E&&J.include(d.K),B&&((0,_.pM)(J),(0,_.OH)(J)),z&&t.varyings.add("debugBorderCoords","vec4"),t.attributes.add(P.r.UVI,"vec2"),t.attributes.add(P.r.COLOR,"vec4"),t.attributes.add(P.r.SIZE,"vec2"),t.attributes.add(P.r.ROTATION,"float"),(j||N)&&t.attributes.add(P.r.FEATUREATTRIBUTE,"vec4"),J.code.add(M?I.H`bool behindHorizon(vec3 posModel) {
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[301],{2272:(e,t,r)=>{r.d(t,{Dl:()=>c,gf:()=>u,jV:()=>l,lF:()=>d});var n=r(92602),i=r(70333),s=r(4718),a=r(84952),o=r(926);function l(e,t){return t?{...t,query:{...e??{},...t.query}}:{query:e}}function c(e){return"string"==typeof e?(0,a.An)(e):(0,s.o8)(e)}function d(e,t,r){const n={};for(const i in e){if("declaredClass"===i)continue;const s=e[i];if(null!=s&&"function"!=typeof s)if(Array.isArray(s))n[i]=s.map((e=>d(e)));else if("object"==typeof s)if(s.toJSON){const e=s.toJSON(r?.[i]);n[i]=t?e:JSON.stringify(e)}else n[i]=t?s:JSON.stringify(s);else n[i]=s}return n}async function u(e,t,s){const a=function(e,t){return e?t&&(0,o.Qc)(e)?t:(0,o.CG)(e)??i.id?.findCredential(e)?.token:null}(e,t);if(a)return a;!i.id&&n.A.request.useIdentity&&await Promise.all([r.e(7292),r.e(3747)]).then(r.bind(r,73747));const l=await i.id.getCredential(e,s);return l?.token}},3330:(e,t,r)=>{r.d(t,{GB:()=>i,Qo:()=>a,Y4:()=>s});var n=r(96285);class i{static{this.instance=new n.oh("Etc/UTC")}}function s(e){return e instanceof n.bo?e===i.instance:"unknown"===e?.toString().toLowerCase()}function a(e){return s(e)?i.instance:e}},6867:(e,t,r)=>{r.d(t,{i:()=>u});var n=r(58083),i=r(9093),s=r(38954),a=r(51850),o=r(87317),l=r(91829),c=r(71351),d=r(29878);class u{get ray(){return this._ray}get distanceInRenderSpace(){return null==this.distance?null:((0,s.g)(m,this.ray.direction,this.distance),(0,s.l)(m))}withinDistance(e){return!!h(this)&&this.distanceInRenderSpace<=e}getIntersectionPoint(e){return!!h(this)&&((0,s.g)(m,this.ray.direction,this.distance),(0,s.f)(e,this.ray.origin,m),!0)}getTransformedNormal(e){return(0,s.c)(f,this.normal),f[3]=0,(0,o.t)(f,f,this.transformation),(0,s.c)(e,f),(0,s.n)(e,e)}constructor(e){this.intersector=d.d.OBJECT,this.normal=(0,a.vt)(),this.transformation=(0,i.vt)(),this._ray=(0,c.vt)(),this.init(e)}init(e){this.distance=this.target=this.drapedLayerOrder=this.renderPriority=null,this.intersector=d.d.OBJECT,(0,c.C)(e,this._ray)}set(e,t,r,o,l,c,d){this.intersector=e,this.distance=r,(0,s.c)(this.normal,o??a.Cb),(0,n.C)(this.transformation,l??i.zK),this.target=t,this.drapedLayerOrder=c,this.renderPriority=d}copy(e){(0,c.C)(e.ray,this._ray),this.intersector=e.intersector,this.distance=e.distance,this.target=e.target,this.drapedLayerOrder=e.drapedLayerOrder,this.renderPriority=e.renderPriority,(0,s.c)(this.normal,e.normal),(0,n.C)(this.transformation,e.transformation)}}function h(e){return null!=e?.distance}const m=(0,a.vt)(),f=(0,l.vt)()},10536:(e,t,r)=>{function n(e){const t={};for(const r in e){if("declaredClass"===r)continue;const i=e[r];if(null!=i&&"function"!=typeof i)if(Array.isArray(i)){t[r]=[];for(let e=0;e<i.length;e++)t[r][e]=n(i[e])}else"object"==typeof i?i.toJSON&&(t[r]=JSON.stringify(i)):t[r]=i}return t}r.d(t,{z:()=>n})},13259:(e,t,r)=>{r.d(t,{H:()=>z,b:()=>E,c:()=>k,f:()=>B,s:()=>M});var n=r(37585),i=r(48163),s=r(91829),a=r(79258),o=r(49255),l=r(76591),c=r(36782),d=r(47522),u=r(40268),h=r(63578),m=r(13755),f=r(42593),p=r(42398),y=r(63365),g=r(26835),_=r(52587),b=r(20693),v=r(47286),w=r(14314),x=r(81961),S=r(71988),C=r(33094),T=r(20304),I=r(31821),A=r(12791),O=r(63761),R=r(59643),P=r(46540),D=r(14113),F=r(49788);const M={occludedFadeFactor:1};function E(e){const t=new D.N5,{signedDistanceFieldEnabled:r,occlusionTestEnabled:i,horizonCullingEnabled:M,pixelSnappingEnabled:E,hasScreenSizePerspective:B,debugDrawLabelBorder:z,vvSize:j,vvColor:N,hasRotation:q,occludedFragmentFade:H,sampleSignedDistanceFieldTexelCenter:G}=e;t.include(u.Q,e),t.vertex.include(l.rA,e);const{occlusionPass:$,output:Y,oitPass:Z}=e;if($)return t.include(h.I,e),t;const{vertex:J,fragment:W}=t;t.include(_.Y6),t.include(p.A,e),t.include(c.g,e),i&&t.include(m.y),W.include(g.W),W.include(y.a),t.varyings.add("vcolor","vec4"),t.varyings.add("vtc","vec2"),t.varyings.add("vsize","vec2");const X=Y===o.V.Highlight,Q=X&&i;Q&&t.varyings.add("voccluded","float"),J.uniforms.add(new w.I("viewport",(e=>e.camera.fullViewport)),new v.G("screenOffset",((e,t)=>(0,n.hZ)(L,2*e.screenOffset[0]*t.camera.pixelRatio,2*e.screenOffset[1]*t.camera.pixelRatio))),new v.G("anchorPosition",(e=>k(e))),new S.E("materialColor",(e=>e.color)),new T.m("materialRotation",(e=>e.rotation)),new O.N("tex",(e=>e.texture))),(0,b.Nz)(J),r&&(J.uniforms.add(new S.E("outlineColor",(e=>e.outlineColor))),W.uniforms.add(new S.E("outlineColor",(e=>U(e)?e.outlineColor:s.uY)),new T.m("outlineSize",(e=>U(e)?e.outlineSize:0)))),M&&J.uniforms.add(new x.V("pointDistanceSphere",((e,t)=>{const r=t.camera.eye,n=e.origin;return(0,s.fA)(n[0]-r[0],n[1]-r[1],n[2]-r[2],a.$O.radius)}))),E&&J.include(d.K),B&&((0,_.pM)(J),(0,_.OH)(J)),z&&t.varyings.add("debugBorderCoords","vec4"),t.attributes.add(P.r.UVI,"vec2"),t.attributes.add(P.r.COLOR,"vec4"),t.attributes.add(P.r.SIZE,"vec2"),t.attributes.add(P.r.ROTATION,"float"),(j||N)&&t.attributes.add(P.r.FEATUREATTRIBUTE,"vec4"),J.code.add(M?I.H`bool behindHorizon(vec3 posModel) {
2
2
  vec3 camToEarthCenter = pointDistanceSphere.xyz - localOrigin;
3
3
  vec3 camToPos = pointDistanceSphere.xyz + posModel;
4
4
  float earthRadius = pointDistanceSphere.w;
@@ -343,4 +343,4 @@ gl_Position = posProjCenter;
343
343
  gl_PointSize = 1.0;`),a.main.add(s.H`fragColor = vec4(1);
344
344
  if(discardByTerrainDepth()) {
345
345
  fragColor.g = 0.5;
346
- }`)}},65215:(e,t,r)=>{r.d(t,{H:()=>n,R:()=>i});class n{constructor(e){this.layerViewUid=e}}class i extends n{constructor(e,t){super(e),this.graphicUid=t}}},65494:(e,t,r)=>{r.d(t,{L:()=>l,r:()=>a});var n=r(67076),i=r(90360),s=r(41214);function a(e,t){return l(e,null,t)}const o=(0,i.C)({types:s.Hg});function l(e,t,r){return e?e&&(e.styleName||e.styleUrl)&&"uniqueValue"!==e.type?(r?.messages&&r.messages.push(new n.A("renderer:unsupported","Only UniqueValueRenderer can be referenced from a web style, but found '"+e.type+"'",{definition:e,context:r})),null):o(e,t,r):null}},65806:(e,t,r)=>{r.d(t,{g:()=>a});var n=r(51850),i=r(80586),s=r(9762);function a(e,t,r,n){if((0,i.canProjectWithoutEngine)(e.spatialReference,r)){o[0]=e.x,o[1]=e.y;const i=e.z;return o[2]=i??n??0,(0,s.projectBuffer)(o,e.spatialReference,0,t,r,0)}const a=(0,i.tryProjectWithZConversion)(e,r);return!!a&&(t[0]=a?.x,t[1]=a?.y,t[2]=a?.z??n??0,!0)}const o=(0,n.vt)()},66131:(e,t,r)=>{r.d(t,{lY:()=>u,mT:()=>h});var n,i=r(799),s=r(3330),a=r(96285);(n||(n={})).TimeZoneNotRecognized="TimeZoneNotRecognized";const o={[n.TimeZoneNotRecognized]:"Timezone identifier has not been recognized."};class l extends Error{constructor(e,t){super((0,i.HC)(o[e],t)),this.declaredRootClass="esri.arcade.arcadedate.dateerror",Error.captureStackTrace&&Error.captureStackTrace(this,l)}}function c(e,t,r){return e<t?e-t:e>r?e-r:0}function d(e,t,r){return e<t?t:e>r?r:e}class u{constructor(e){this._date=e,this.declaredRootClass="esri.arcade.arcadedate"}static fromParts(e=0,t=1,r=1,n=0,i=0,s=0,o=0,l){if(isNaN(e)||isNaN(t)||isNaN(r)||isNaN(n)||isNaN(i)||isNaN(s)||isNaN(o))return null;const m=a.c9.local(e,t).daysInMonth;let f=a.c9.fromObject({day:d(r,1,m),year:e,month:d(t,1,12),hour:d(n,0,23),minute:d(i,0,59),second:d(s,0,59),millisecond:d(o,0,999)},{zone:h(l)});return f=f.plus({months:c(t,1,12),days:c(r,1,m),hours:c(n,0,23),minutes:c(i,0,59),seconds:c(s,0,59),milliseconds:c(o,0,999)}),new u(f)}static get systemTimeZoneCanonicalName(){return Intl.DateTimeFormat().resolvedOptions().timeZone??"system"}static arcadeDateAndZoneToArcadeDate(e,t){const r=h(t);return e.isUnknownTimeZone||r===s.GB.instance?u.fromParts(e.year,e.monthJS+1,e.day,e.hour,e.minute,e.second,e.millisecond,r):new u(e._date.setZone(r))}static dateJSToArcadeDate(e){return new u(a.c9.fromJSDate(e,{zone:"system"}))}static dateJSAndZoneToArcadeDate(e,t="system"){const r=h(t);return new u(a.c9.fromJSDate(e,{zone:r}))}static unknownEpochToArcadeDate(e){return new u(a.c9.fromMillis(e,{zone:s.GB.instance}))}static unknownDateJSToArcadeDate(e){return new u(a.c9.fromMillis(e.getTime(),{zone:s.GB.instance}))}static epochToArcadeDate(e,t="system"){const r=h(t);return new u(a.c9.fromMillis(e,{zone:r}))}static dateTimeToArcadeDate(e){return new u(e)}clone(){return new u(this._date)}changeTimeZone(e){const t=h(e);return u.dateTimeToArcadeDate(this._date.setZone(t))}static dateTimeAndZoneToArcadeDate(e,t){const r=h(t);return e.zone===s.GB.instance||r===s.GB.instance?u.fromParts(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond,r):new u(e.setZone(r))}static nowToArcadeDate(e){const t=h(e);return new u(a.c9.fromJSDate(new Date,{zone:t}))}static nowUTCToArcadeDate(){return new u(a.c9.utc())}get isSystem(){return"system"===this.timeZone||this.timeZone===u.systemTimeZoneCanonicalName}equals(e){return this.isSystem&&e.isSystem?this.toNumber()===e.toNumber():this.isUnknownTimeZone===e.isUnknownTimeZone&&this._date.equals(e._date)}get isUnknownTimeZone(){return this._date.zone===s.GB.instance}get isValid(){return this._date.isValid}get hour(){return this._date.hour}get second(){return this._date.second}get day(){return this._date.day}get dayOfWeekISO(){return this._date.weekday}get dayOfWeekJS(){let e=this._date.weekday;return e>6&&(e=0),e}get millisecond(){return this._date.millisecond}get monthISO(){return this._date.month}get weekISO(){return this._date.weekNumber}get yearISO(){return this._date.weekYear}get monthJS(){return this._date.month-1}get year(){return this._date.year}get minute(){return this._date.minute}get zone(){return this._date.zone}get timeZoneOffset(){return this.isUnknownTimeZone?0:this._date.offset}get timeZone(){if(this.isUnknownTimeZone)return"unknown";if("system"===this._date.zone.type)return"system";const e=this.zone;return"fixed"===e.type?0===e.fixed?"UTC":e.formatOffset(0,"short"):e.name}stringify(){return JSON.stringify(this.toJSDate())}plus(e){return new u(this._date.plus(e))}diff(e,t="milliseconds"){return this._date.diff(e._date,t)[t]}toISODate(){return this._date.toISODate()}toISOString(e){return e?this._date.toISO({suppressMilliseconds:!0,includeOffset:!this.isUnknownTimeZone}):this._date.toISO({includeOffset:!this.isUnknownTimeZone})}toISOTime(e,t){return this._date.toISOTime({suppressMilliseconds:e,includeOffset:t&&!this.isUnknownTimeZone})}toFormat(e,t){return this.isUnknownTimeZone&&(e=e.replaceAll("Z","")),this._date.toFormat(e,t)}toJSDate(){return this._date.toJSDate()}toSQLValue(){return this._date.toFormat("yyyy-LL-dd HH:mm:ss")}toSQLWithKeyword(){return`timestamp '${this.toSQLValue()}'`}toDateTime(){return this._date}toNumber(){return this._date.toMillis()}getTime(){return this._date.toMillis()}toUTC(){return new u(this._date.toUTC())}toLocal(){return new u(this._date.toLocal())}toString(){return this.toISOString(!0)}static fromReaderAsTimeStampOffset(e){if(!e)return null;const t=a.c9.fromISO(e,{setZone:!0});return new u(t)}}function h(e,t=!0){if(e instanceof a.bo)return e;if("system"===e.toLowerCase())return"system";if("utc"===e.toLowerCase())return"UTC";if("unknown"===e.toLowerCase())return s.GB.instance;if(/^[+-]?[0-9]{1,2}([:][0-9]{2})?$/.test(e)){const t=a.mQ.parseSpecifier("UTC"+(e.startsWith("+")||e.startsWith("-")?"":"+")+e);if(t)return t}const r=a.oh.create(e);if(!r.isValid){if(t)throw new l(n.TimeZoneNotRecognized);return null}return r}},66208:(e,t,r)=>{r.d(t,{m:()=>i});var n=r(53655);function i(e,t){const r=(0,n.SH)(e,t),i=r.queryResult.featureResult,s=r.queryResult.queryGeometry,a=r.queryResult.queryGeometryType;if(i&&i.features&&i.features.length&&i.objectIdFieldName){const e=i.objectIdFieldName;for(const t of i.features)t.attributes&&(t.objectId=t.attributes[e])}return i&&(i.queryGeometry=s,i.queryGeometryType=a),i}},66357:(e,t,r)=>{r.r(t),r.d(t,{default:()=>ln});var n=r(90237),i=r(65529),s=r(74887),a=r(36708),o=r(10107),l=r(44208),c=(r(53966),r(87811),r(40608)),d=r(5443),u=r(80586),h=r(16930),m=r(68298),f=r(61956),p=r(65494);class y{constructor(e,t,r){this.renderCommandContext=e,this.renderCommandBuffer=t,this.pipelineStateCommands=r}append(e){this.appendRenderCommands(e.renderCommandBuffer),this.appendPipelineStateCommands(e.pipelineStateCommands)}appendRenderCommands(e){this.renderCommandBuffer.commands.push(...e.commands),this.renderCommandBuffer.transferList.push(...e.transferList)}appendPipelineStateCommand(e){this.pipelineStateCommands.push(e)}appendPipelineStateCommands(e){for(const t of e)this.appendPipelineStateCommand(t)}async execute(){for(const e of this.pipelineStateCommands)e();await this.renderCommandContext.dispatchRenderCommands(this.renderCommandBuffer)}static create(e,t=[]){return new y(e,e.createRenderCommandBuffer(),t)}}var g=r(68197),_=r(18574),b=r(87403),v=r(28975);function w(){return new _.A({material:new v.N({color:new g.A("red")})})}var x=r(9093),S=r(51850),C=r(91829),T=r(6847),I=r(83047),A=r(58083),O=(r(87317),r(70328)),R=r(19419);r(12359),r(95108),r(27615),r(52106),r(4718),r(34275),r(65864);var P=r(37585),D=r(48163),F=r(34727),M=r(26857);new Map,(()=>{let e="";for(let t=32;t<127;t++)e+=String.fromCharCode(t)})();const E=[];{const e=16;for(let t=0;t<360;t+=360/e)E.push([Math.cos(Math.PI*t/180),Math.sin(Math.PI*t/180)])}var U,k;(k=U||(U={}))[k.Left=0]="Left",k[k.Center=1]="Center",k[k.Right=2]="Right",Object.freeze({left:0,center:.5,right:1});const L=Object.freeze({"bottom-left":(0,D.fA)(0,0),bottom:(0,D.fA)(.5,0),"bottom-right":(0,D.fA)(1,0),left:(0,D.fA)(0,.5),center:(0,D.fA)(.5,.5),right:(0,D.fA)(1,.5),"top-left":(0,D.fA)(0,1),top:(0,D.fA)(.5,1),"top-right":(0,D.fA)(1,1)});var B=r(9762),V=r(27993);function z(e){const{featureCount:t}=e;if(0===t)return new Uint32Array;const r=new Uint32Array(t);return e.getObjectIdsArray(r),r}function j(e){const{featureCount:t}=e;if(0===t)return new Float64Array;const r=new Float64Array(3*t);return e.getCoordinatesArray(r),r}function N(e,t){const r=t.viewSpatialReference,n=t.renderSpatialReference,{extent:i}=e,s=(0,R.gX)(i),a=(0,S.vt)();return(0,V.F)([s[0],s[1],0],r,a,n),a}var q=r(97146);function H(e){const t=new Map;for(const[r,n]of e)t.set(r,{...n,indices:(0,q.Dg)(n.indices)});return t}var G=r(40804),$=(r(48833),r(63907));const Y=(0,C.CN)(.25,.25,.75,.75);function Z(e){return"cross"===e||"x"===e}function J(e,t=128,r=.5*t,n=0){switch(e){case"circle":default:return function(e,t){const r=e/2-.5;return ee(e,Q(r,r,t/2))}(t,r);case"square":return function(e,t){return W(e,t,!1)}(t,r);case"cross":return function(e,t,r=0){return X(e,t,!1,r)}(t,r,n);case"x":return function(e,t,r=0){return X(e,t,!0,r)}(t,r,n);case"kite":return function(e,t){return W(e,t,!0)}(t,r);case"triangle":return function(e,t){return ee(e,K(e/2,t,t/2))}(t,r);case"arrow":return function(e,t){const r=t,n=t/2,i=e/2,s=.8*r,a=Q(i,(e-t)/2-s,Math.sqrt(s*s+n*n)),o=K(i,r,n);return ee(e,((e,t)=>Math.max(o(e,t),-a(e,t))))}(t,r)}}function W(e,t,r){return r&&(t/=Math.SQRT2),ee(e,((n,i)=>{let s=n-.5*e+.25,a=.5*e-i-.75;if(r){const e=(s+a)/Math.SQRT2;a=(a-s)/Math.SQRT2,s=e}return Math.max(Math.abs(s),Math.abs(a))-.5*t}))}function X(e,t,r,n=0){t-=n,r&&(t*=Math.SQRT2);const i=.5*t;return ee(e,((t,s)=>{let a,o=t-.5*e,l=.5*e-s-1;if(r){const e=(o+l)/Math.SQRT2;l=(l-o)/Math.SQRT2,o=e}return o=Math.abs(o),l=Math.abs(l),a=o>l?o>i?Math.sqrt((o-i)*(o-i)+l*l):l:l>i?Math.sqrt(o*o+(l-i)*(l-i)):o,a-=n/2,a}))}function Q(e,t,r){return(n,i)=>{const s=n-e,a=i-t;return Math.sqrt(s*s+a*a)-r}}function K(e,t,r){const n=Math.sqrt(t*t+r*r);return(i,s)=>{const a=Math.abs(i-e)-r,o=s-e+t/2+.75,l=(t*a+r*o)/n,c=-o;return Math.max(l,c)}}function ee(e,t){const r=new Uint8Array(4*e*e);for(let n=0;n<e;n++)for(let i=0;i<e;i++){const s=i+e*n;let a=t(i,n);a=a/e+.5,(0,G.U)(a,r,4*s)}return r}var te=r(46610),re=r(46540);class ne{constructor(e,t){this._context=null,this._symbolLayer=null,this._draped=!1,this._loaded=!1,this._loadingPromise=null,this._iconTextureID=null,this._materialId=null,this._context=t,this._symbolLayer=e}get loaded(){return this._loaded}load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}_destroy(){this._iconTextureID=null}async _load(){const e=this._context.renderCommandContext,t=await e.createTexture((()=>function(e,t=128,r=.5*t,n=0){return{data:J(e,t,r,n),parameters:{mipmap:!1,wrap:{s:$.pF.CLAMP_TO_EDGE,t:$.pF.CLAMP_TO_EDGE},width:t,height:t,components:4,noUnpackFlip:!0,reloadable:!0}}}("circle")));this._iconTextureID=t;const r={anchorPosition:L.center,occlusionTest:!0,hasSlicePlane:!1,color:this._getFillColor(),outlineColor:this._getOutlineColor(),outlineSize:1,distanceFieldBoundingBox:Y,textureId:t,textureIsSignedDistanceField:!0,sampleSignedDistanceFieldTexelCenter:Z("circle")};this._materialId=await e.createMaterial({type:"hud",parameters:r}),await e.createDirectRenderer(this._materialId),this._loaded=!0}async createAddCommand(e){const{_materialId:t,_context:r}=this,{renderCommandContext:n}=r;if(null==t)throw new Error("expected material not to be null");const i=await this._createGeometry(e);if(null==i)return r.createPipelineCommand();const s=N(e,r);return r.createPipelineCommand(n.addDirectRendererGeometry(e.id,i,s))}async _createGeometry(e){const{_materialId:t,_context:r}=this,{mainThreadDelegate:n}=r,{featureCount:i}=e;if(0===i||null==t)return null;const s=z(e),a=j(e),o=function(e,t){const r=e.length/3,n=t.viewSpatialReference,i=t.renderSpatialReference,s=new Float64Array(3*r);if(!(0,B.projectBuffer)(e,n,0,s,i,0,r))throw new Error("Failed to project coordinates");return s}(await n.applyElevationAlignmentTo(a),r),l=new Float64Array([0,0,1]),c=new Float64Array([255,255,255,255]),d=new Float64Array([24,24]),u=new Float64Array([0,0,0,1]),h=new Float64Array([0,0]),m=new Float64Array([0]),f=new Uint32Array(i);for(let e=0;e<i;++e)f[e]=e;const p=new Uint32Array(i);for(let e=0;e<i;++e)p[e]=0;const y=new te.n(o,f,3,!0),g=new te.n(l,p,3,!0),_=new te.n(h,p,2,!0),b=new te.n(c,p,4,!0),v=new te.n(m,p,1,!0),w=new te.n(d,p,2,!0),S=new te.n(u,p,4,!0),C=[[re.r.POSITION,y],[re.r.NORMAL,g],[re.r.UV0,_],[re.r.COLOR,b],[re.r.ROTATION,v],[re.r.SIZE,w],[re.r.CENTEROFFSETANDDISTANCE,S]],T=new Uint8Array(i);return e.getVisibilityArray(T),{attributes:H(C),objectAndLayerIdColor:void 0,transformation:(0,x.vt)(),materialId:t,objectIds:s,visibilities:T}}async createRemoveCommand(e){const{_materialId:t,_context:r}=this,n=r.renderCommandContext;return null==t?r.createPipelineCommand():r.createPipelineCommand(n.removeDirectRendererGeometryBuffer(t,e))}async createUpdateVisibilityCommand(e){const{_materialId:t,_context:r}=this,n=r.renderCommandContext;if(null==t)return r.createPipelineCommand();const i=new Uint8Array(e.featureCount);return e.getVisibilityArray(i),r.createPipelineCommand(n.updateVisibility(t,e.id,i))}async createUpdateLayerViewOpacityCommand(e){const{_context:t,_materialId:r}=this,n=t.renderCommandContext;return null==r?t.createPipelineCommand():t.createPipelineCommand(n.updateMaterial({type:"hud",materialId:r,parameters:{color:this._getFillColor(),outlineColor:this._getOutlineColor()}}))}async createUpdateElevationCommand(e){const{_materialId:t,_context:r}=this,{renderCommandContext:n}=r,{featureCount:i,id:s}=e;if(null==t||0===i)return r.createPipelineCommand();const a=await this._createGeometry(e);if(null==a)return r.createPipelineCommand();const o=N(e,r);return r.createPipelineCommand(n.updateDirectRendererGeometry(s,a,o))}async createDestroyCommand(){const{_iconTextureID:e,_context:t}=this,r=t.renderCommandContext;let n;return n=null!=e?await r.releaseTexture(e):y.create(r),n.appendPipelineStateCommand((()=>this._destroy())),n}_getOutlineColor(){const e=this._getLayerOpacity(),t=this._symbolLayer,r=t?.outline?.color;if(null!=r){const t=g.A.toUnitRGB(r),n=r.a*e;return[t[0],t[1],t[2],n]}return[0,0,0,0]}_getFillColor(){if(function(e){return null!=e&&("cross"===e||"x"===e)}(this._getPrimitive()))return se;const e=null==this._getPrimitive(),t=this._symbolLayer?.material?.color;return this._getCombinedOpacityAndColor(t,{hasIntrinsicColor:e})}_getLayerOpacity(){return this._context.layerViewInfo.fullOpacity}_getCombinedOpacity(e,t=ie){const r=this._draped?1:this._getLayerOpacity();return e?r*e.a:t.hasIntrinsicColor?r:0}_getCombinedOpacityAndColor(e,t=ie){const r=this._getCombinedOpacity(e,t);return function(e,t,r=null){const n=(0,C.o8)(C.Un);return null!=e&&(n[0]=e[0],n[1]=e[1],n[2]=e[2]),null!=t?n[3]=t:null!=e&&e.length>3&&(n[3]=e[3]),r&&(n[0]*=r,n[1]*=r,n[2]*=r,n[3]*=r),n}(null!=e?g.A.toUnitRGB(e):S.Un,r)}_getPrimitive(){return e=this._symbolLayer,e.resource?.href?null:e.resource?.primitive??T.r;var e}}const ie={hasIntrinsicColor:!1},se=C.uY;class ae{constructor(e,t){this._loaded=!1,this._loadingPromise=null,this._context=null,this._symbol=null,this._symbolLayerRenderers=[],this._context=t,this._symbol=e}_destroy(){}get loaded(){return this._loaded}load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){const{_context:e,_symbol:t,_symbolLayerRenderers:r}=this,n=[];for(const i of t.symbolLayers){const t=e.symbolRendererFactory.createSymbolRendererFromSymbolLayer(i);null!=t&&(n.push(t.load()),r.push(t))}await Promise.all(n),this._loaded=!0}async createDestroyCommand(){const{_context:e,_symbolLayerRenderers:t}=this,r=[];for(const e of t)r.push(e.createDestroyCommand());const n=e.joinPipelineCommands(await Promise.all(r));return n.appendPipelineStateCommand((()=>this._destroy())),n}async createAddCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,n=[];for(const t of r)n.push(t.createAddCommand(e));return t.joinPipelineCommands(await Promise.all(n))}async createRemoveCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,n=[];for(const t of r)n.push(t.createRemoveCommand(e));return t.joinPipelineCommands(await Promise.all(n))}async createUpdateVisibilityCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,n=[];for(const t of r)n.push(t.createUpdateVisibilityCommand(e));return t.joinPipelineCommands(await Promise.all(n))}async createUpdateLayerViewOpacityCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,n=[];for(const t of r)n.push(t.createUpdateLayerViewOpacityCommand(e));return t.joinPipelineCommands(await Promise.all(n))}async createUpdateElevationCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,n=[];for(const t of r)n.push(t.createUpdateElevationCommand(e));return t.joinPipelineCommands(await Promise.all(n))}}class oe{constructor(e,t){this._symbol=null,this._featureData=new Map,this._loaded=!1,this._loadingPromise=null,this._renderer=null,this._context=t,this._renderer=e}async load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){const{_renderer:e,_context:t}=this;this._symbol=t.symbolRendererFactory.createSymbolRendererFromSymbol(e.symbol),this._loaded=!0}get loaded(){return this._loaded}async createAddCommand(e){const t=this._context,r=await this._provisionSymbol(),n=null==r?t.createPipelineCommand():await r.createAddCommand(e);return n.appendPipelineStateCommand((()=>this._featureData.set(e.id,e))),n}async createRemoveCommand(e){const t=this._context,r=await this._provisionSymbol(),n=null==r?t.createPipelineCommand():await r.createRemoveCommand(e);return n.appendPipelineStateCommand((()=>this._featureData.delete(e))),n}async createUpdateVisibilityCommand(e){const t=this._context,r=await this._provisionSymbol();return null==r?t.createPipelineCommand():await r.createUpdateVisibilityCommand(e)}async createUpdateLayerViewOpacityCommand(e){const t=this._context,r=await this._provisionSymbol();return null==r?t.createPipelineCommand():await r.createUpdateLayerViewOpacityCommand(e)}async createUpdateElevationCommand(){const{_featureData:e,_context:t}=this,r=await this._provisionSymbol();if(null==r)return t.createPipelineCommand();const n=[];for(const t of e.values())n.push(r.createUpdateElevationCommand(t));const i=await Promise.all(n);return t.joinPipelineCommands(i)}async createDestroyCommand(){const{_symbol:e,_context:t,_featureData:r}=this;if(!e)return t.createPipelineCommand();const n=[];for(const e of r.keys())n.push(this.createRemoveCommand(e));n.push(e.createDestroyCommand());const i=await Promise.all(n);return t.joinPipelineCommands(i)}async _provisionSymbol(){const e=this._symbol;return e?(e.loaded||await e.load(),e):null}}var le,ce,de=r(48353),ue=r(30809),he=r(8887),me=r(38954),fe=r(72385),pe=(r(4197),r(11868)),ye=r(240);r(71351),(ce=le||(le={})).length=function(e,t){const r=e[t],n=e[t+1],i=e[t+2];return Math.sqrt(r*r+n*n+i*i)},ce.normalize=function(e,t){const r=e[t],n=e[t+1],i=e[t+2],s=1/Math.sqrt(r*r+n*n+i*i);e[t]*=s,e[t+1]*=s,e[t+2]*=s},ce.scale=function(e,t,r){e[t]*=r,e[t+1]*=r,e[t+2]*=r},ce.add=function(e,t,r,n,i,s=t){(i=i||e)[s]=e[t]+r[n],i[s+1]=e[t+1]+r[n+1],i[s+2]=e[t+2]+r[n+2]},ce.subtract=function(e,t,r,n,i,s=t){(i=i||e)[s]=e[t]-r[n],i[s+1]=e[t+1]-r[n+1],i[s+2]=e[t+2]-r[n+2]},r(87170);var ge=r(620);r(75039);const _e=le,be=new Array(36);for(let e=0;e<6;e++)for(let t=0;t<6;t++)be[6*e+t]=e;const ve=new Array(36);for(let e=0;e<6;e++)ve[6*e]=0,ve[6*e+1]=1,ve[6*e+2]=2,ve[6*e+3]=2,ve[6*e+4]=3,ve[6*e+5]=0;const we=(0,fe.fA)(-.5,0,-.5),xe=(0,fe.fA)(.5,0,-.5),Se=(0,fe.fA)(0,0,.5),Ce=(0,fe.fA)(0,.5,0),Te=(0,fe.vt)(),Ie=(0,fe.vt)(),Ae=(0,fe.vt)(),Oe=(0,fe.vt)(),Re=(0,fe.vt)();(0,me.d)(Te,we,Ce),(0,me.d)(Ie,we,xe),(0,me.h)(Ae,Te,Ie),(0,me.n)(Ae,Ae),(0,me.d)(Te,xe,Ce),(0,me.d)(Ie,xe,Se),(0,me.h)(Oe,Te,Ie),(0,me.n)(Oe,Oe),(0,me.d)(Te,Se,Ce),(0,me.d)(Ie,Se,we),(0,me.h)(Re,Te,Ie),(0,me.n)(Re,Re),Ae[0],Ae[1],Ae[2],Oe[0],Oe[1],Oe[2],Re[0],Re[1],Re[2],(0,S.vt)();var Pe=r(4576),De=r(69397);r(62258),r(6867),r(29878),r(87582);var Fe=r(57917);function Me(e,t){const r=(e,r,n=!1)=>({levels:e.map((e=>{const i=H(r(e.tesselation));return n&&function(e){const t=e,r=t.get(re.r.POSITION).data,n=t.get(re.r.NORMAL).data;if(n){const t=Ee(e,re.r.NORMAL).data;for(let e=0;e<n.length;e+=3){const r=n[e+1];t[e+1]=-n[e+2],t[e+2]=r}}if(r){const t=Ee(e,re.r.POSITION).data;for(let e=0;e<r.length;e+=3){const n=r[e+1];t[e+1]=-r[e+2],t[e+2]=n}}}(i),{components:[{attributes:i,objectAndLayerIdColor:void 0,transformation:null,materialId:t,visibilities:new Uint8Array([1]),objectIds:new Uint32Array([-1])}],minScreenSpaceRadius:e.minScreenSpaceRadius}}))});switch(e){case"cone":return r(Ue,(e=>function(e,t,r,n,i=!0,s=!0){let a=0;const o=t,l=e;let c=(0,fe.fA)(0,a,0),d=(0,fe.fA)(0,a+l,0),u=(0,fe.fA)(0,-1,0),h=(0,fe.fA)(0,1,0);n&&(a=l,d=(0,fe.fA)(0,0,0),c=(0,fe.fA)(0,a,0),u=(0,fe.fA)(0,1,0),h=(0,fe.fA)(0,-1,0));const m=[d,c],f=[u,h],p=r+2,y=Math.sqrt(l*l+o*o);if(n)for(let e=r-1;e>=0;e--){const t=e*(2*Math.PI/r),n=(0,fe.fA)(Math.cos(t)*o,a,Math.sin(t)*o);m.push(n);const i=(0,fe.fA)(l*Math.cos(t)/y,-o/y,l*Math.sin(t)/y);f.push(i)}else for(let e=0;e<r;e++){const t=e*(2*Math.PI/r),n=(0,fe.fA)(Math.cos(t)*o,a,Math.sin(t)*o);m.push(n);const i=(0,fe.fA)(l*Math.cos(t)/y,o/y,l*Math.sin(t)/y);f.push(i)}const g=new Array,_=new Array;if(i){for(let e=3;e<m.length;e++)g.push(1),g.push(e-1),g.push(e),_.push(0),_.push(0),_.push(0);g.push(m.length-1),g.push(2),g.push(1),_.push(0),_.push(0),_.push(0)}if(s){for(let e=3;e<m.length;e++)g.push(e),g.push(e-1),g.push(0),_.push(e),_.push(e-1),_.push(1);g.push(0),g.push(2),g.push(m.length-1),_.push(1),_.push(2),_.push(f.length-1)}const b=(0,pe.oe)(3*p);for(let e=0;e<p;e++)b[3*e]=m[e][0],b[3*e+1]=m[e][1],b[3*e+2]=m[e][2];const v=(0,pe.oe)(3*p);for(let e=0;e<p;e++)v[3*e]=f[e][0],v[3*e+1]=f[e][1],v[3*e+2]=f[e][2];return[[re.r.POSITION,new te.n(b,g,3,!0)],[re.r.NORMAL,new te.n(v,_,3,!0)]]}(1,.5,e,!1)),!0);case"sphere":return r([{tesselation:0,minScreenSpaceRadius:0},{tesselation:1,minScreenSpaceRadius:8},{tesselation:2,minScreenSpaceRadius:16},{tesselation:3,minScreenSpaceRadius:50},{tesselation:4,minScreenSpaceRadius:250}],(e=>function(e,t,r){const n=e;let i,s;if(r)i=[0,-1,0,1,0,0,0,0,1,-1,0,0,0,0,-1,0,1,0],s=[0,1,2,0,2,3,0,3,4,0,4,1,1,5,2,2,5,3,3,5,4,4,5,1];else{const e=n*(1+Math.sqrt(5))/2;i=[-n,e,0,n,e,0,-n,-e,0,n,-e,0,0,-n,e,0,n,e,0,-n,-e,0,n,-e,e,0,-n,e,0,n,-e,0,-n,-e,0,n],s=[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1]}for(let t=0;t<i.length;t+=3)_e.scale(i,t,e/_e.length(i,t));let a={};function o(t,r){t>r&&([t,r]=[r,t]);const n=t.toString()+"."+r.toString();if(a[n])return a[n];let s=i.length;return i.length+=3,_e.add(i,3*t,i,3*r,i,s),_e.scale(i,s,e/_e.length(i,s)),s/=3,a[n]=s,s}for(let e=0;e<t;e++){const e=s.length,t=new Array(4*e);for(let r=0;r<e;r+=3){const e=s[r],n=s[r+1],i=s[r+2],a=o(e,n),l=o(n,i),c=o(i,e),d=4*r;t[d]=e,t[d+1]=a,t[d+2]=c,t[d+3]=n,t[d+4]=l,t[d+5]=a,t[d+6]=i,t[d+7]=c,t[d+8]=l,t[d+9]=a,t[d+10]=l,t[d+11]=c}s=t,a={}}const l=(0,pe.Wz)(i);for(let e=0;e<l.length;e+=3)_e.normalize(l,e);return[[re.r.POSITION,new te.n((0,pe.Wz)(i),s,3,!0)],[re.r.NORMAL,new te.n(l,s,3,!0)]]}(.5,e,!0)));case"cube":case"inverted-cone":case"cylinder":case"tetrahedron":case"diamond":throw new Error("not implemented");default:return}}function Ee(e,t){let r=e.get(t);return r&&!r.exclusive&&(r={...r,exclusive:!0,data:(0,Fe.S)(r.data)},e.set(t,r)),r}const Ue=[{tesselation:6,minScreenSpaceRadius:0},{tesselation:18,minScreenSpaceRadius:7},{tesselation:64,minScreenSpaceRadius:65}];var ke=r(89192),Le=r(51768),Be=r(74810);class Ve{constructor(e,t){this._loaded=!1,this._loadingPromise=null,this._primitiveMaterialId=null,this._lodRendererId=null,this._context=null,this._symbolLayer=null,this._primitive=null,this._context=t,this._symbolLayer=e}_destroy(){this._lodRendererId=null,this._primitiveMaterialId=null}get loaded(){return this._loaded}get _isPrimitive(){return null!=this._primitive}load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){const e=this._context.renderCommandContext,t=this._getLayerOpacity();let r={usePBR:!0,isSchematic:!0,mrrFactors:Be.Bt,ambient:S.Un,diffuse:S.Un,hasSlicePlane:!1,castShadows:!0,layerOpacity:t,offsetTransparentBackfaces:!1,screenSizePerspective:{}};if(r.externalColor=C.Un,r.isInstanced=!0,this._isPrimitive){const e=new Le.fs;e.layerOpacity=t,r={...r,cullFace:ze((0,Le.ty)(e))}}const n=await e.createMaterial({type:"default",parameters:r}),i=this._symbolLayer.resource;this._primitive=i&&function(e){switch(e){case"sphere":case"cube":case"diamond":case"cylinder":case"cone":case"inverted-cone":case"tetrahedron":return!0}return!1}(i?.primitive)?i.primitive:ue.r;const s=Me(this._primitive,n);this._lodRendererId=await e.createLodRenderer(s),this._primitiveMaterialId=n,this._loaded=!0}async createDestroyCommand(){const{_lodRendererId:e,_primitiveMaterialId:t,_context:r}=this,n=r.renderCommandContext,i=[];return null!=e&&i.push(n.destroyLodRenderer(e)),null!=t&&i.push(n.destroyMaterial(t)),new y(n,n.mergeRenderCommandBuffers(i),[()=>this._destroy()])}async createAddCommand(e){const t=this._context,{renderCommandContext:r,mainThreadDelegate:n}=t;if(null==this._lodRendererId)throw new Error("expected lod renderer id to not be null");const{featureCount:i}=e;if(0===i)return t.createPipelineCommand();const s=this._isPrimitive,a=this._primitive||ue.r,o=(0,O.vt)((0,he.Fq)(a)),l=(0,S.ci)((0,O.Ej)(o)),c=(0,S.ci)((0,he.Bb)(l,{isPrimitive:s,width:100,depth:null,height:null})),d=new Float64Array(16*i),u=new Float64Array(16*i),h=j(e),m=await n.applyElevationAlignmentTo(h);for(let e=0;e<i;++e){const t=e,r=m[3*e+0],n=m[3*e+1],i=m[3*e+2],s=this._computeGlobalTransform(r,n,i,this._context.viewSpatialReference,qe),a=this._computeLocalTransform(c,l,Ne);this._writeMatrixToTypedBuffer(d,t,a),this._writeMatrixToTypedBuffer(u,t,s)}const f=z(e),p=new Uint8Array(i);e.getVisibilityArray(p);const y={featureIds:new Uint32Array(f),visibility:p,localTransforms:d,globalTransforms:u};return t.createPipelineCommand(r.addLodInstances(this._lodRendererId,e.id,y))}async createRemoveCommand(e){const{_context:t,_lodRendererId:r}=this,n=t.renderCommandContext;return null==r?t.createPipelineCommand():t.createPipelineCommand(n.removeLodInstances(r,e))}async createUpdateVisibilityCommand(e){const{_lodRendererId:t,_context:r}=this,n=r.renderCommandContext;if(null==t)return r.createPipelineCommand();const i=new Uint8Array(e.featureCount);return e.getVisibilityArray(i),r.createPipelineCommand(n.updateVisibility(t,e.id,i))}async createUpdateLayerViewOpacityCommand(e){const{_context:t}=this,r=t.renderCommandContext,n=this._primitiveMaterialId;if(null==n)return t.createPipelineCommand();const i=this._getLayerOpacity();let s={layerOpacity:i};if(this._isPrimitive){const e=new Le.fs;e.layerOpacity=i,s={...s,cullFace:ze((0,Le.ty)(e))}}return t.createPipelineCommand(r.updateMaterial({type:"default",materialId:n,parameters:s}))}async createUpdateElevationCommand(e){const{_context:t,_lodRendererId:r}=this,{renderCommandContext:n,mainThreadDelegate:i}=t,{featureCount:s,id:a}=e;if(null==r||0===s)return t.createPipelineCommand();const o=new Float64Array(16*s),l=j(e),c=await i.applyElevationAlignmentTo(l);for(let e=0;e<s;++e){const t=e,r=c[3*e+0],n=c[3*e+1],i=c[3*e+2],s=this._computeGlobalTransform(r,n,i,this._context.viewSpatialReference,qe);this._writeMatrixToTypedBuffer(o,t,s)}return t.createPipelineCommand(n.updateLodInstancesData(r,a,o))}_writeMatrixToTypedBuffer(e,t,r){let n=16*t;for(let t=0;t<16;t++)e[n++]=r[t]}_computeGlobalTransform(e,t,r,n,i){return je[0]=e,je[1]=t,je[2]=r,(0,de.l)(n,je,i,this._context.renderSpatialReference),i}_computeLocalTransform(e,t,r){return(0,A.D_)(r),this._applyObjectScale(e,t,r),r}_applyObjectScale(e,t,r){const n=function(e=S.Un,t,r,n=1){const i=new Array(3);if(null==t||null==r)i[0]=1,i[1]=1,i[2]=1;else{let n,s=0;for(let a=2;a>=0;a--){const o=e[a],l=null!=o,c=0===a&&!n&&!l,d=r[a];let u;"symbol-value"===o||c?u=0!==d?t[a]/d:1:l&&"proportional"!==o&&isFinite(o)&&(u=0!==d?o/d:1),null!=u&&(i[a]=u,n=u,s=Math.max(s,Math.abs(u)))}for(let e=2;e>=0;e--)null==i[e]?i[e]=n:0===i[e]&&(i[e]=.001*s)}for(let e=2;e>=0;e--)i[e]/=n;return(0,S.ci)(i)}(e,e,t,this._context.renderCoordsHelper.unitInMeters);1===n[0]&&1===n[1]&&1===n[2]||(0,A.hs)(r,r,n)}_getLayerOpacity(){return this._context.layerViewInfo.fullOpacity}}function ze(e){return e?ke.s2.None:ke.s2.Back}const je=(0,S.vt)(),Ne=(0,x.vt)(),qe=(0,x.vt)();class He{constructor(e,t){this._symbols=new Array,this._featureDataPartitioning=new Map,this._loaded=!1,this._loadingPromise=null,this._renderer=null,this._context=t,this._renderer=e}async load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){this._symbols[0]=new ne(w(),this._context),this._symbols[1]=new Ve(new b.A,this._context),this._loaded=!0}get loaded(){return this._loaded}async createAddCommand(e){const t=this._context,r=this._partition(e),n=await Promise.all(r.map((async({index:e,features:t})=>{const r=await this._provisionSymbol(e);return await(r?.createAddCommand(t))}))),i=t.joinPipelineCommands(n);return i.appendPipelineStateCommand((()=>this._featureDataPartitioning.set(e.id,r))),i}async createRemoveCommand(e){const{_featureDataPartitioning:t,_context:r}=this,n=r.renderCommandContext,i=t.get(e);if(null==i)return new y(n,n.createRenderCommandBuffer(),[]);const s=await Promise.all(i.map((async({index:e,features:t})=>{const r=this._getLoadedSymbol(e);return await(r?.createRemoveCommand(t.id))}))),a=r.joinPipelineCommands(s);return a.appendPipelineStateCommand((()=>t.delete(e))),a}async createUpdateVisibilityCommand(e){const{_featureDataPartitioning:t,_context:r}=this,n=r.renderCommandContext,i=t.get(e.id);if(null==i)return new y(n,n.createRenderCommandBuffer(),[]);const s=await Promise.all(i.map((async({index:e,features:t})=>{const r=this._getLoadedSymbol(e);return await(r?.createUpdateVisibilityCommand(t))})));return r.joinPipelineCommands(s)}async createUpdateLayerViewOpacityCommand(e){const t=this._context,r=[];for(let t=0;t<this._symbols.length;++t){const n=this._symbols[t];null!=n&&n.loaded&&r.push(n.createUpdateLayerViewOpacityCommand(e))}const n=await Promise.all(r);return t.joinPipelineCommands(n)}async createUpdateElevationCommand(){const{_featureDataPartitioning:e,_context:t}=this,r=[];for(const t of e.values()){const e=t.map((async({index:e,features:t})=>{const r=this._getLoadedSymbol(e);return await(r?.createUpdateElevationCommand(t))}));r.push(...e)}const n=await Promise.all(r);return t.joinPipelineCommands(n)}async createDestroyCommand(){const{_featureDataPartitioning:e,_context:t}=this,r=[];for(const t of e.keys())r.push(this.createRemoveCommand(t));for(const e of this._symbols)r.push(e.createDestroyCommand());const n=await Promise.all(r);return t.joinPipelineCommands(n)}async _provisionSymbol(e){if(null==e)return null;const t=this._symbols[e];return t?(t.loaded||await t.load(),t):null}_getLoadedSymbol(e){if(null==e)return null;const t=this._symbols[e];return null!=t&&t.loaded?t:null}_partition(e){const t=z(e);if(null==t)throw new Error("unable to fetch objectIds");const{featureCount:r}=e,n=[[],[]];for(let e=0;e<r;++e)n[t[e]%2].push(e);return n.map(((t,r)=>new Ge(r,e.subset(new Uint32Array(t))))).filter((e=>e.features.featureCount>0))}}class Ge{constructor(e,t){this.index=e,this.features=t}}class $e{constructor(e,t,r,n,i,s,a){this.viewSpatialReference=e,this.renderSpatialReference=t,this.mainThreadDelegate=r,this.renderCoordsHelper=n,this.renderCommandContext=i,this.layerInfo=s,this.layerViewInfo=a,this.symbolRendererFactory=new Ye(this)}createPipelineCommand(e=this.renderCommandContext.createRenderCommandBuffer(),t=[]){return new y(this.renderCommandContext,e,t)}joinPipelineCommands(e){return 0===e.length?this.createPipelineCommand():e.filter((e=>null!=e)).reduce(((e,t)=>(e.append(t),e)))}}class Ye{constructor(e){this.context=e}createSymbolRendererFromJSON(e){const t=(0,p.L)(e??Ze)??void 0;if(!t)throw new Error("Failed to create renderer");const r=t.type;switch(r){case"simple":return new oe(t,this.context);case"unique-value":return new He(t,this.context);default:return console.warn(`Unable to create symbolrenderer for renderer of ${r}`),this.createSymbolRendererFromJSON(Ze)}}createSymbolRendererFromSymbol(e){const t=e?.type;switch(t){case"point-3d":return new ae(e,this.context);case"picture-marker":case"simple-marker":return new ne(w(),this.context);default:return console.warn(`Unable to create symbolrenderer for symbol of ${t}`),null}}createSymbolRendererFromSymbolLayer(e){const t=e.type;return"icon"===t?new ne(e,this.context):(console.warn(`Unable to create symbolrenderer for symbolLayer of ${t}`),null)}}const Ze={type:"simple"};var Je=r(69622),We=r(60999),Xe=r(32587),Qe=r(11932),Ke=r(24326);function et(e=""){return`${e}${(0,Ke.c)()}`}r(37539),new Float64Array(3);class tt{constructor(e,t){this._parent=e,this._subsetIndices=t,this.id=et(`featureDataSubset-${e.id}-`)}get tileId(){return this._parent.tileId}get extent(){return this._parent.extent}get featureCount(){return this._subsetIndices.length}get usedMemory(){return this._parent.usedMemory+De.qK+this._subsetIndices.byteLength}get isFullyEnabled(){for(const e of this._subsetIndices)if(!this._parent.getEnabled(e))return!1;return!0}getObjectId(e){return this._parent.getObjectId(this._subsetIndices[e])}getAttribute(e,t){return this._parent.getAttribute(this._subsetIndices[e],t)}getAttributeAsTimestamp(e,t){return this._parent.getAttribute(this._subsetIndices[e],t)}getAttributes(e){return this._parent.getAttributes(this._subsetIndices[e])}getCoordinates(e,t,r){return this._parent.getCoordinates(this._subsetIndices[e],t,r)}getOptimizedGeometry(e){return this._parent.getOptimizedGeometry(this._subsetIndices[e])}getCentroid(e,t){return this._parent.getCentroid(this._subsetIndices[e],t)}getBounds(e){return this._parent.getBounds(this._subsetIndices[e])}getBoundingBox(e){return this._parent.getBoundingBox(this._subsetIndices[e])}getObjectIdsArray(e,t,r){return this._parent.getObjectIdsArray(e,this._translatedIndices(t),r)}getCoordinatesArray(e,t,r){return this._parent.getCoordinatesArray(e,this._translatedIndices(t),r)}objectIds(e){return this._parent.objectIds(this._translatedIndices(e))}subset(e){const{_subsetIndices:t}=this,r=new Uint32Array(e.length);for(let n=0;n<r.length;++n)r[n]=t[e[n]];return new tt(this._parent,r)}disableObjectIds(e){if(0===e.size)return;const{featureCount:t}=this,r=new Array;for(let n=0;n<t;++n)this.getEnabled(n)&&e.has(this.getObjectId(n))&&r.push(n);if(0!==r.length)for(const e of r)this.setEnabled(e,!1)}setEnabled(e,t){this._parent.setEnabled(this._subsetIndices[e],t)}getEnabled(e){return this._parent.getEnabled(this._subsetIndices[e])}enableAll(){const{_subsetIndices:e,_parent:t}=this;for(const r of e)t.setEnabled(r,!0)}getVisibilityArray(e,t,r){return this._parent.getVisibilityArray(e,this._translatedIndices(t),r)}enabledObjectIds(e){return this._parent.enabledObjectIds(this._translatedIndices(e))}*_translatedIndices(e){const{_subsetIndices:t}=this;if(null!=e)for(const r of e)yield t[r];else yield*t}}class rt{constructor(e){this._tile=e,this.id=et(`featureData-${e.id}-`),this._enabled=new Array(e.featureCount).fill(!0)}get tileId(){return this._tile.id}get featureCount(){return this._tile.featureCount}get usedMemory(){return De.qK+(0,De.$B)(this.id)}get extent(){return this._tile.descriptor.extent}get isFullyEnabled(){return this._enabled.every((e=>e))}getObjectId(e){return this._tile.getObjectId(e)}getAttribute(e,t){return this._tile.getAttribute(e,t)}getAttributeAsTimestamp(e,t){return this._tile.getAttribute(e,t)}getAttributes(e){return this._tile.getAttributes(e)}getCoordinates(e,t,r){return this._tile.getCoordinates(e,t,r)}getOptimizedGeometry(e){return this._tile.getOptimizedGeometry(e)}getCentroid(e,t){return this._tile.getCentroid(e,t)}getBounds(e){return this._tile.getBounds(e)}getBoundingBox(e){return this._tile.getBoundingBox(e)}getObjectIdsArray(e,t,r){return this._tile.getObjectIdsArray(e,t,r)}getCoordinatesArray(e,t,r){return this._tile.getCoordinatesArray(e,t,r)}objectIds(e){return this._tile.objectIds(e)}subset(e){return new tt(this,e)}disableObjectIds(e){if(0===e.size)return;const{_enabled:t}=this,r=new Array;for(const n of this._allFeatureIndices())t[n]&&e.has(this.getObjectId(n))&&r.push(n);if(0!==r.length)for(const e of r)t[e]=!1}setEnabled(e,t){this._enabled[e]=t}getEnabled(e){return this._enabled[e]}enableAll(){this._enabled.fill(!0)}getVisibilityArray(e,t=this._allFeatureIndices(),r=0){const{_enabled:n}=this;for(const i of t)e[r++]=Number(n[i]);return r}*enabledObjectIds(e=this._allFeatureIndices()){const{_enabled:t}=this;for(const r of e)t[r]&&(yield this.getObjectId(r))}*_allFeatureIndices(){const{featureCount:e}=this;for(let t=0;t<e;++t)yield t}}let nt=class extends Je.A{constructor(e){super(e),this.extent=null,this._tileHandles=new Xe.A,this._wanted=new Xe.A,this._updateRequested=!1,this._synchronizationTask=null,this._requestedTiles=new Array}destroy(){this._tileHandles.clear(),this._wanted.clear()}get updating(){return this._updateRequested||!(this._synchronizationTask?.finished??1)}get _boundingRect(){const{extent:e}=this;return null==e?null:(0,R.VY)(e)}get _missingTiles(){const e=new Array,t=this._wanted,r=this._tileHandles;for(const n of t.values())null==r.get(n.id)?.featureData&&e.push(n);return e}onTileTreeChange({tiles:e}){this._requestedTiles=e,this._scheduleTilesSync()}_scheduleTilesSync(){if(this._updateRequested)return;this._updateRequested=!0;const e=this._synchronizationTask,t=(0,We.UT)((async()=>{try{await(0,a.C_)((()=>e?.finished??!0)),await(0,Qe.NO)(),this._updateRequested=!1,await this._synchronizeTiles()}finally{this._synchronizationTask===t&&(this._synchronizationTask=null)}}));this._synchronizationTask=t}async _synchronizeTiles(){const e=this._requestedTiles,t=this._tileHandles,r=new Array;for(const n of e)t.has(n.id)||r.push(n);const n=new Array;for(const r of t.values()){const{id:t}=r;e.every((e=>e.id!==t))&&n.push(r.descriptor)}const i=this._tileHandles,{_boundingRect:s}=this,a=null!=s?r.filter((e=>(0,R.HY)(s,e.extent))):r,o=this._wanted,l=new Array;for(const{id:e}of n)o.delete(e);for(const e of a)o.set(e.id,e);const c=this._missingTiles;for(const e of n){const{id:t}=e;if(c.some((t=>it(t,e)||it(e,t))))continue;const r=i.get(t);null!=r&&l.push(this._removeTile(r))}for(const e of a)l.push(this._addTile(e));const d=await Promise.allSettled(l);for(const e of d)"rejected"===e.status&&console.error(e.reason)}forEachTile(e){for(const t of this._tileHandles.values()){const r=t.featureData;null!=r&&e(r)}}*loadedTiles(){for(const e of this._tileHandles.values()){const t=e.featureData;null!=t&&(yield t)}}async _removeTile(e){e.loadTask.abort(),this._tileHandles.delete(e.id),this._validate();const{featureData:t}=e;if(null!=t){const e={stack:[],error:void 0,hasError:!1};try{(0,n.b)(e,await this.tileLocks.lock([t.tileId]),!1);const r=await this.createRemoveCommand(t.id);await(r?.execute())}catch(t){e.error=t,e.hasError=!0}finally{(0,n.c)(e)}}}async _addTile(e){const{_tileHandles:t}=this,r=t.get(e.id);if(null!=r){if(!at(r)||r.featureData.isFullyEnabled)return;return r.featureData.enableAll(),void await this._onTileLoad(r)}const n=new st(e,(0,We.UT)((async t=>{const r=await this.loadTile(e,t);return(0,s.Te)(t),new rt(r)})));this._tileHandles.set(n.id,n);try{await n.loadTask.promise}catch(e){return void(0,s.jH)(e)}(function(e){if(!at(e))throw new Error})(n),await this._onTileLoad(n)}async _onTileLoad(e){const t={stack:[],error:void 0,hasError:!1};try{const{_wanted:r,_tileHandles:i,_missingTiles:s}=this,a=e.descriptor,o=new Array,l=new Array,c=new Array,d=new Set;for(const t of i.values()){if(t===e)continue;const{descriptor:n,id:c}=t;if(r.has(c)||s.some((e=>it(e,n)||it(n,e)))){if(at(t)){if(it(a,n)){const e=t.featureData;for(const t of e.objectIds())d.add(t)}if(it(n,a)){const{featureData:e}=t;l.push(e)}}}else{i.delete(c),t.loadTask.abort();const{featureData:e}=t;null!=e&&o.push(e)}}d.size>0&&(e.featureData.disableObjectIds(d),this._validateRemoval(e.featureData,d)),this._validate(),c.push(e.featureData);const u=[...c,...o,...l].map((e=>e.tileId));if((0,n.b)(t,await this.tileLocks.lock(u),!1),0!==l.length){const t=e.featureData,r=new Set(t.objectIds());for(const e of l)e.disableObjectIds(r),this._validateRemoval(e,r)}const h=o.map((e=>this.createRemoveCommand(e.id))),m=c.map((e=>this.createAddCommand(e))),f=l.map((e=>this.createUpdateCommand(e))),p=function(e){return 0===e.length?null:e.reduce(((e,t)=>(e.append(t),e)))}((await Promise.all([...h,...m,...f])).filter(Pe.Ru));await(p?.execute())}catch(e){t.error=e,t.hasError=!0}finally{(0,n.c)(t)}}_validate(){if(!(0,l.A)("feature-pipeline-3d-test-validation"))return;const e=new Array;for(const t of this._tileHandles.values()){if(!at(t))continue;const{featureData:r}=t;e.push({featureData:r,objectIds:new Set(r.enabledObjectIds())})}for(let t=0;t<e.length;++t){const{featureData:r,objectIds:n}=e[t];for(let i=t+1;i<e.length;++i){const{featureData:t,objectIds:s}=e[i];for(const e of s)if(n.has(e))throw new Error(`${r.id} and ${t.id} both contain ${e}.`)}}}_validateRemoval(e,t){if((0,l.A)("feature-pipeline-3d-test-validation"))for(const r of e.enabledObjectIds())if(t.has(r))throw new Error(`Failed to remove ${r} from ${e.id}!`)}};function it({lij:[e,t,r]},{lij:[n,i,s]}){const a=n-e;return a>=0&&t===i>>a&&r===s>>a}(0,n._)([(0,o.MZ)()],nt.prototype,"updating",null),(0,n._)([(0,o.MZ)({constructOnly:!0})],nt.prototype,"loadTile",void 0),(0,n._)([(0,o.MZ)({constructOnly:!0})],nt.prototype,"createAddCommand",void 0),(0,n._)([(0,o.MZ)({constructOnly:!0})],nt.prototype,"createRemoveCommand",void 0),(0,n._)([(0,o.MZ)({constructOnly:!0})],nt.prototype,"createUpdateCommand",void 0),(0,n._)([(0,o.MZ)({constructOnly:!0})],nt.prototype,"tileLocks",void 0),(0,n._)([(0,o.MZ)()],nt.prototype,"extent",void 0),(0,n._)([(0,o.MZ)()],nt.prototype,"_boundingRect",null),(0,n._)([(0,o.MZ)()],nt.prototype,"_missingTiles",null),(0,n._)([(0,o.MZ)()],nt.prototype,"_updateRequested",void 0),(0,n._)([(0,o.MZ)()],nt.prototype,"_synchronizationTask",void 0),nt=(0,n._)([(0,c.$)("esri.views.3d.layers.graphics.pipeline.Tile3DManager")],nt);class st{constructor(e,t){this.descriptor=e,this.loadTask=t}get id(){return this.descriptor.id}get featureData(){return this.loadTask.value}}function at(e){return null!=e.featureData}var ot=r(36563);class lt{constructor(){this._previousActions=new Map}async lock(e){const{_previousActions:t}=this,r=e.map((e=>t.get(e))).filter(Pe.Ru),n=Promise.allSettled(r),i=(0,s.Tw)(),a=(0,ot.hA)((()=>i.resolve())),o=i.promise.finally((()=>{for(const r of e)t.get(r)===o&&t.delete(r)}));for(const r of e)t.set(r,o);return await n,(0,ot.Bf)(a)}}var ct=r(75503),dt=r(27647),ut=r(92722);class ht{constructor(e,t){this._index=e,this._view=t}get usedMemory(){return De.qK+De.RS}getObjectId(){return this._view.getObjectId(this._index)}getAttribute(e){return this._view.getAttribute(this._index,e)}getAttributeAsTimestamp(e){return this._view.getAttributeAsTimestamp(this._index,e)}getAttributes(){return this._view.getAttributes(this._index)}getOptimizedGeometry(){return this._view.getOptimizedGeometry(this._index)}getCentroid(e){return this._view.getCentroid(this._index,e)}getBounds(){return this._view.getBounds(this._index)}getBoundingBox(){return this._view.getBoundingBox(this._index)}cloneWithGeometry(e){return new mt(this._index,this._view,e)}}class mt extends ht{constructor(e,t,r){super(e,t),this._geometryOverride=r}getOptimizedGeometry(){return this._geometryOverride}getCentroid(e){return(0,dt.Q)(new ut.A,this._geometryOverride,e.hasZ,e.hasM)}}class ft{constructor(e,t){this.featureData=e,this.bounds=t}}class pt{constructor(){this._tileBounds=new Map,this.events=new i.A,this.featureAdapter=yt.shared}get usedMemory(){return De.qK+De.qK*this._tileBounds.size}addTile(e){const{featureCount:t}=e;if(0===t)return;const r=new ct.w(9,(t=>e.getBounds(t))),n=new Array;for(let e=0;e<t;++e)n[e]=e;r.load(n),this._tileBounds.set(e.id,new ft(e,r)),this.events.emit("changed")}removeTile(e){this._tileBounds.delete(e),this.events.emit("changed")}clear(){this._tileBounds.clear(),this.events.emit("changed")}forEach(e){for(const{featureData:t,bounds:r}of this._tileBounds.values())r.all((r=>{t.getEnabled(r)&&e(new ht(r,t))}))}forEachInBounds(e,t){gt.minX=e[0],gt.minY=e[1],gt.maxX=e[2],gt.maxY=e[3];for(const{featureData:e,bounds:r}of this._tileBounds.values())r.search(gt,(r=>{e.getEnabled(r)&&t(new ht(r,e))}))}forEachBounds(e,t){for(const r of e)t(r.getBoundingBox())}getFullExtent(e){let t=1/0,r=1/0,n=-1/0,i=-1/0;for(const{bounds:e}of this._tileBounds.values()){const{minX:s,minY:a,maxX:o,maxY:l}=e.toJSON();t=Math.min(t,s),r=Math.min(r,a),n=Math.min(n,o),i=Math.min(i,l)}return{xmin:t,ymin:r,xmax:n,ymax:i,spatialReference:e}}}class yt{static{this.shared=new yt}getObjectId(e){return e.getObjectId()}getAttribute(e,t){return e.getAttribute(t)}getAttributeAsTimestamp(e,t){return e.getAttributeAsTimestamp(t)}getAttributes(e){return e.getAttributes()}getGeometry(e){return e.getOptimizedGeometry()}getCentroid(e,t){return e.getCentroid(t)}cloneWithGeometry(e,t){return e.cloneWithGeometry(t)}}const gt=new ct.E;var _t=r(80893);class bt{constructor(e,t,r){this.descriptor=e,this._pages=t,this._pageSize=r;const n=De.ez+t.reduce(((e,{usedMemory:t})=>e+t),0),i=3*De.RS;this.usedMemory=De.qK+n+i,this.featureCount=t.reduce(((e,t)=>e+t.featureCount),0)}get id(){return this.descriptor.id}getObjectId(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getObjectId(r)}getAttribute(e,t){const{pageIndex:r,featurePageIndex:n}=this._translateIndex(e);return this._pages[r].getAttribute(n,t)}getAttributeAsTimestamp(e,t){const{pageIndex:r,featurePageIndex:n}=this._translateIndex(e);return this._pages[r].getAttributeAsTimestamp(n,t)}getAttributes(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getAttributes(r)}getCoordinates(e,t,r){const{pageIndex:n,featurePageIndex:i}=this._translateIndex(e);this._pages[n].getCoordinates(i,t,r)}getOptimizedGeometry(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getOptimizedGeometry(r)}getCentroid(e,t){const{pageIndex:r,featurePageIndex:n}=this._translateIndex(e);return this._pages[r].getCentroid(n,t)}getBounds(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getBounds(r)}getBoundingBox(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getBoundingBox(r)}getObjectIdsArray(e,t=this._allFeatureIndices(),r=0){let n=r;for(const{page:r,indices:i}of this._batchPageIndices(t))n=r.getObjectIdsArray(e,i,n);return n}getCoordinatesArray(e,t=this._allFeatureIndices(),r=0){let n=r;for(const{page:r,indices:i}of this._batchPageIndices(t))n=r.getCoordinatesArray(e,i,n);return n}*objectIds(e=this._allFeatureIndices()){for(const{page:t,indices:r}of this._batchPageIndices(e))for(const e of t.objectIds(r))yield e}*_allFeatureIndices(){const{featureCount:e}=this;for(let t=0;t<e;++t)yield t}_translateIndex(e){const{_pageSize:t}=this;return{pageIndex:Math.floor(e/t),featurePageIndex:e%t}}*_batchPageIndices(e){const t=new Array;{let r=0,n=new Array;for(const i of e){const{pageIndex:e,featurePageIndex:s}=this._translateIndex(i);r!==e&&(0!==n.length&&t.push({pageIndex:r,indices:n}),r=e,n=[]),n.push(s)}0!==n.length&&t.push({pageIndex:r,indices:n})}const{_pages:r}=this;for(const{pageIndex:e,indices:n}of t)yield{page:r[e],indices:n}}}var vt=r(49186),wt=r(51624),xt=r(62577),St=r(95466),Ct=r(53655);class Tt{constructor(e){this._reader=new wt.A(new Uint8Array(e),new DataView(e)),this._index=function(e){for(;e.next();){if(2===e.tag())return It(e.getMessage());e.skip()}Ot()}(this._reader)}get featureCount(){return this._index.featureIndices.length}get exceededTransferLimit(){return this._index.exceededTransferLimit}get usedMemory(){return this._reader.usedMemory}getObjectId(e){return this.getAttribute(e,this._index.objectIdFieldName)}getAttribute(e,t){const{_index:{fieldsIndex:r,attributeIndices:n}}=this,i=r.get(t)?.index;if(null==i)return;const s=n[e*r.fields.length+i],a=this._reader;return a.move(s),Rt(a)}getAttributeAsTimestamp(e,t){const r=this.getAttribute(e,t);return"string"==typeof r?new Date(r).getTime():"number"==typeof r||null==r?r:null}getAttributes(e){const{_index:{fieldsIndex:t,attributeIndices:r}}=this,n=e*t.fields.length,i=this._reader,s={};for(const e of t.fields){const t=r[n+e.index];i.move(t),s[e.name]=Rt(i)}return s}getCoordinates(e,t,r=0){const n=this._reader,{transform:i,featureIndices:s}=this._index,{scale:a,translate:o}=i;n.move(s[e]),this._readCoordinates(a,o,t,r)}getOptimizedGeometry(e){const t=(0,S.vt)();return this.getCoordinates(e,t),new ut.A([],t)}getCentroid(e,{hasZ:t,hasM:r}){this.getCoordinates(e,Pt);const[n,i,s]=Pt,a=[n,i];return t&&(a[3]=s),r&&(a[t?4:3]=0),new ut.A([],a)}getBounds(e){this.getCoordinates(e,Pt);const[t,r]=Pt,n=new ct.E;return n.minX=t,n.minY=r,n.maxX=t,n.maxY=r,n}getBoundingBox(e){this.getCoordinates(e,Pt);const[t,r,n]=Pt;return(0,O.fA)(t,r,n,t,r,n)}getObjectIdsArray(e,t=this._allFeatureIndices(),r=0){const n=this._reader,{objectIdFieldName:i,attributeIndices:s,fieldsIndex:a}=this._index,o=a.get(i).index,l=a.fields.length;for(const i of t){const t=s[i*l+o];n.move(t),e[r++]=Rt(n)}return r}getCoordinatesArray(e,t=this._allFeatureIndices(),r=0){const n=this._reader,{transform:i,featureIndices:s}=this._index,{scale:a,translate:o}=i;for(const i of t){const t=s[i];n.move(t),r=this._readCoordinates(a,o,e,r)}return r}*objectIds(e=this._allFeatureIndices()){const t=this._reader,{objectIdFieldName:r,attributeIndices:n,fieldsIndex:i}=this._index,s=i.get(r).index,a=i.fields.length;for(const r of e){const e=n[r*a+s];t.move(e),yield Rt(t)}}*_allFeatureIndices(){const{featureCount:e}=this;for(let t=0;t<e;++t)yield t}_readCoordinates([e,t,r],[n,i,s],a,o){const l=this._reader,c=l.getLength(),d=l.pos()+c;for(;l.pos()<d&&l.next();)switch(l.tag()){case 2:{const c=l.getLength(),d=l.pos()+c;for(;l.pos()<d&&l.next();)3===l.tag()?(l.getUInt32(),a[o++]=n+e*l.getSInt64(),a[o++]=i+t*l.getSInt64(),a[o++]=s+r*l.getSInt64()):l.skip();break}default:l.skip()}return o}}function It(e){for(;e.next();){if(1===e.tag())return At(e.getMessage());e.skip()}Ot()}function At(e){let t,r,n=!1,i=!1,s=0;const a=new Array,o=new Array,l=new Array;for(;e.next();)switch(e.tag()){case 1:r=e.getString();break;case 7:0!==e.getEnum()&&Ot();break;case 9:n=e.getBool()??!1;break;case 12:t=(0,xt.Q1)(e.processMessage(Ct.ae));break;case 13:{const t=e.processMessage(Ct.cn);t.index=s++,a.push(t);break}case 15:{o.push(e.pos());const t=e.getUInt32(),r=e.pos()+t;for(;e.pos()<r&&e.next();)1===e.tag()?(l.push(e.pos()),e.skip()):e.skip();break}case 10:i=e.getBool()??!1;break;default:e.skip()}const c=new St.A(a);return null!=t&&i&&null!=r&&c.has(r)||Ot(),{transform:t,exceededTransferLimit:n,fieldsIndex:c,objectIdFieldName:r,featureIndices:o,attributeIndices:l}}function Ot(){const e=new vt.A("pbf-parsing-failed","Error while parsing PBF",new Error);throw console.error(e),e}function Rt(e){const t=e.getLength(),r=e.pos()+t;for(;e.pos()<r&&e.next();)switch(e.tag()){case 1:return e.getString();case 2:return e.getFloat();case 3:return e.getDouble();case 4:return e.getSInt32();case 5:return e.getUInt32();case 6:return e.getInt64();case 7:return e.getUInt64();case 8:return e.getSInt64();case 9:return e.getBool();default:return e.skip(),null}return null}const Pt=(0,S.vt)();class Dt{constructor(e,t,r,n,i){this.spatialReference=e,this.url=r,this.objectIdField=n,this.capabilities=i;const{supportsMaxRecordCountFactor:s,maxRecordCount:a}=this.capabilities.query,o=s?4:1,l=(a??8e3)*o;this._pageSize=Math.min(8e3,l);const c=t.clone();c.cacheHint=!0,c.resultType="tile",c.outSpatialReference=e,c.returnGeometry=!0,c.returnZ=!0,c.maxRecordCountFactor=o,c.num=this._pageSize,c.outFields=[n],this._baseQuery=c}async fetch(e,t){const{spatialReference:r,_pageSize:n}=this,i=(0,R.w1)(e.extent,r),a=this._baseQuery.clone();a.geometry=i;const o=new Array;let l=0,c=!1,d=1;for(;!c;){const e=[];for(let r=0;r<d;++r)e.push(this._fetchPage(a,l++,t));const r=await Promise.all(e);(0,s.Te)(t);for(const e of r){const t=0!==e.featureCount;c||=!e.exceededTransferLimit||!t,t&&o.push(e)}d=Math.min(d+1,4)}return new bt(e,o,n)}async _fetchPage(e,t,r){const n=e.clone();n.start=t*this._pageSize;const i=(await(0,_t.kS)(this.url,n,{signal:r})).data;return(0,s.Te)(r),new Tt(i)}}var Ft=r(24151),Mt=r(29920),Et=r(77690),Ut=r(29242);var kt=r(13030),Lt=r(78662),Bt=r(1843),Vt=r(49255),zt=r(40268),jt=r(16943),Nt=r(25634),qt=r(11725),Ht=r(13464),Gt=r(77194);class $t{constructor(){this.scale=0,this.factor=0,this.minScaleFactor=0}}var Yt=r(59907),Zt=r(43616),Jt=r(13259),Wt=r(97220),Xt=r(98958),Qt=r(59643),Kt=r(33524),er=r(90644);class tr extends Xt.w{constructor(e,t){super(e,t,new Wt.$(Jt.H,(()=>r.e(8241).then(r.bind(r,48241))))),this.primitiveType=t.occlusionPass?$.WR.POINTS:$.WR.TRIANGLES}initializePipeline(e){const{oitPass:t,hasPolygonOffset:r,draped:n,output:i,depthTestEnabled:s,occlusionPass:a}=e,o=t===Qt.Y.NONE,l=t===Qt.Y.ColorAlpha,c=i===Vt.V.Highlight,d=s&&!n&&!l&&!a&&!c;return(0,er.Ey)({blending:(0,Vt.RN)(i)?o?er.RC:(0,Kt.ez)(t):null,depthTest:s&&!n?{func:$.MT.LEQUAL}:null,depthWrite:d?er.Uy:null,drawBuffers:(0,Kt.m6)(t,i),colorWrite:er.kn,polygonOffset:r?rr:null})}}const rr={factor:0,units:-4};var nr=r(53466),ir=r(22911),sr=r(51976),ar=r(35256);class or extends ar.E{constructor(e){super(),this.spherical=e,this.screenCenterOffsetUnitsEnabled=!1,this.occlusionTestEnabled=!0,this.signedDistanceFieldEnabled=!1,this.sampleSignedDistanceFieldTexelCenter=!1,this.vvSize=!1,this.vvColor=!1,this.hasVerticalOffset=!1,this.hasScreenSizePerspective=!1,this.hasRotation=!1,this.debugDrawLabelBorder=!1,this.hasPolygonOffset=!1,this.depthTestEnabled=!0,this.pixelSnappingEnabled=!0,this.draped=!1,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.occlusionPass=!1,this.occludedFragmentFade=!1,this.objectAndLayerIdColorInstanced=!1,this.horizonCullingEnabled=!0,this.isFocused=!0,this.textureCoordinateType=nr.I.None,this.emissionSource=ir.ZX.None,this.discardInvisibleFragments=!0,this.hasVvInstancing=!1,this.snowCover=!1}}(0,n._)([(0,sr.W)()],or.prototype,"screenCenterOffsetUnitsEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"occlusionTestEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"signedDistanceFieldEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"sampleSignedDistanceFieldTexelCenter",void 0),(0,n._)([(0,sr.W)()],or.prototype,"vvSize",void 0),(0,n._)([(0,sr.W)()],or.prototype,"vvColor",void 0),(0,n._)([(0,sr.W)()],or.prototype,"hasVerticalOffset",void 0),(0,n._)([(0,sr.W)()],or.prototype,"hasScreenSizePerspective",void 0),(0,n._)([(0,sr.W)()],or.prototype,"hasRotation",void 0),(0,n._)([(0,sr.W)()],or.prototype,"debugDrawLabelBorder",void 0),(0,n._)([(0,sr.W)()],or.prototype,"hasPolygonOffset",void 0),(0,n._)([(0,sr.W)()],or.prototype,"depthTestEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"pixelSnappingEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"draped",void 0),(0,n._)([(0,sr.W)()],or.prototype,"terrainDepthTest",void 0),(0,n._)([(0,sr.W)()],or.prototype,"cullAboveTerrain",void 0),(0,n._)([(0,sr.W)()],or.prototype,"occlusionPass",void 0),(0,n._)([(0,sr.W)()],or.prototype,"occludedFragmentFade",void 0),(0,n._)([(0,sr.W)()],or.prototype,"objectAndLayerIdColorInstanced",void 0),(0,n._)([(0,sr.W)()],or.prototype,"horizonCullingEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"isFocused",void 0);var lr=r(49788);class cr extends qt.im{constructor(e,t){super(e,Mr),this.produces=new Map([[Ht.N.HUD_MATERIAL,e=>(0,Vt.Mb)(e)&&!this.parameters.drawAsLabel],[Ht.N.LABEL_MATERIAL,e=>(0,Vt.Mb)(e)&&this.parameters.drawAsLabel],[Ht.N.OCCLUSION_PIXELS,()=>this.parameters.occlusionTest],[Ht.N.DRAPED_MATERIAL,e=>this.parameters.draped&&(0,Vt.Mb)(e)]]),this._visible=!0,this._configuration=new or(t)}getConfiguration(e,t){const r=this.parameters.draped;return super.getConfiguration(e,t,this._configuration),this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.hasVerticalOffset=!!this.parameters.verticalOffset,this._configuration.hasScreenSizePerspective=!!this.parameters.screenSizePerspective,this._configuration.screenCenterOffsetUnitsEnabled="screen"===this.parameters.centerOffsetUnits,this._configuration.hasPolygonOffset=this.parameters.polygonOffset,this._configuration.draped=r,this._configuration.occlusionTestEnabled=this.parameters.occlusionTest,this._configuration.pixelSnappingEnabled=this.parameters.pixelSnappingEnabled,this._configuration.signedDistanceFieldEnabled=this.parameters.textureIsSignedDistanceField,this._configuration.sampleSignedDistanceFieldTexelCenter=this.parameters.sampleSignedDistanceFieldTexelCenter,this._configuration.hasRotation=this.parameters.hasRotation,this._configuration.vvSize=!!this.parameters.vvSize,this._configuration.vvColor=!!this.parameters.vvColor,this._configuration.occlusionPass=t.slot===Ht.N.OCCLUSION_PIXELS,this._configuration.occludedFragmentFade=!r&&this.parameters.occludedFragmentFade,this._configuration.horizonCullingEnabled=this.parameters.horizonCullingEnabled,this._configuration.isFocused=this.parameters.isFocused,this._configuration.depthTestEnabled=this.parameters.depthEnabled||t.slot===Ht.N.OCCLUSION_PIXELS,(0,Vt.RN)(e)&&(this._configuration.debugDrawLabelBorder=!!M.b.LABELS_SHOW_BORDER),this._configuration.oitPass=t.oitPass,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration}intersect(e,t,r,n,i,s){const{options:{selectionMode:a,hud:o,excludeLabels:l},point:c,camera:d}=r,{parameters:u}=this;if(!a||!o||l&&u.isLabel||!e.visible||!c||!d)return;const h=e.attributes.get(re.r.FEATUREATTRIBUTE),m=null==h?null:(0,C.ci)(h.data,Ar),{scaleX:f,scaleY:p}=Lr(m,u,d.pixelRatio);(0,Et.z0)(wr,t),e.attributes.has(re.r.FEATUREATTRIBUTE)&&function(e){const t=e[0],r=e[1],n=e[2],i=e[3],s=e[4],a=e[5],o=e[6],l=e[7],c=e[8],d=1/Math.sqrt(t*t+r*r+n*n),u=1/Math.sqrt(i*i+s*s+a*a),h=1/Math.sqrt(o*o+l*l+c*c);e[0]=t*d,e[1]=r*d,e[2]=n*d,e[3]=i*u,e[4]=s*u,e[5]=a*u,e[6]=o*h,e[7]=l*h,e[8]=c*h}(wr);const y=e.attributes.get(re.r.POSITION),g=e.attributes.get(re.r.SIZE),_=e.attributes.get(re.r.NORMAL),b=e.attributes.get(re.r.ROTATION),v=e.attributes.get(re.r.CENTEROFFSETANDDISTANCE);(0,ge.vA)(y.size>=3);const w=(0,Jt.c)(u),x="screen"===this.parameters.centerOffsetUnits;for(let e=0;e<y.data.length/y.size;e++){const n=e*y.size;(0,me.i)(fr,y.data[n],y.data[n+1],y.data[n+2]),(0,me.t)(fr,fr,t),(0,me.t)(fr,fr,d.viewMatrix);const i=e*v.size;if((0,me.i)(Tr,v.data[i],v.data[i+1],v.data[i+2]),!x&&(fr[0]+=Tr[0],fr[1]+=Tr[1],0!==Tr[2])){const e=Tr[2];(0,me.n)(Tr,fr),(0,me.d)(fr,fr,(0,me.g)(Tr,Tr,e))}const a=e*_.size;if((0,me.i)(pr,_.data[a],_.data[a+1],_.data[a+2]),ur(pr,wr,d,Or),Br(this.parameters,fr,Or,d,mr),d.applyProjection(fr,yr),yr[0]>-1){x&&(Tr[0]||Tr[1])&&(yr[0]+=Tr[0]*d.pixelRatio,0!==Tr[1]&&(yr[1]+=(0,Gt.m0)(Tr[1],mr.factorAlignment)*d.pixelRatio),d.unapplyProjection(yr,fr)),yr[0]+=this.parameters.screenOffset[0]*d.pixelRatio,yr[1]+=this.parameters.screenOffset[1]*d.pixelRatio,yr[0]=Math.floor(yr[0]),yr[1]=Math.floor(yr[1]);const t=e*g.size;Dr[0]=g.data[t],Dr[1]=g.data[t+1],(0,Gt.MD)(Dr,mr.factor,Dr);const n=Rr*d.pixelRatio;let i=0;u.textureIsSignedDistanceField&&(i=Math.min(u.outlineSize,.5*Dr[0])*d.pixelRatio/2),Dr[0]*=f,Dr[1]*=p;const a=e*b.size,o=u.rotation+b.data[a];if(hr(c,yr[0],yr[1],Dr,n,i,o,u,w)){const e=r.ray;if((0,me.t)(_r,fr,(0,A.B8)(Sr,d.viewMatrix)),yr[0]=c[0],yr[1]=c[1],d.unprojectFromRenderScreen(yr,fr)){const t=(0,S.vt)();(0,me.c)(t,e.direction);const r=1/(0,me.l)(t);(0,me.g)(t,t,r),s((0,me.j)(e.origin,fr)*r,t,-1,_r)}}}}}intersectDraped(e,t,r,n,i){const s=e.attributes.get(re.r.POSITION),a=e.attributes.get(re.r.SIZE),o=e.attributes.get(re.r.ROTATION),l=this.parameters,c=(0,Jt.c)(l),d=e.attributes.get(re.r.FEATUREATTRIBUTE),u=null==d?null:(0,C.ci)(d.data,Ar),{scaleX:h,scaleY:m}=Lr(u,l,e.screenToWorldRatio),f=Pr*e.screenToWorldRatio;for(let t=0;t<s.data.length/s.size;t++){const d=t*s.size,u=s.data[d],p=s.data[d+1],y=t*a.size;Dr[0]=a.data[y],Dr[1]=a.data[y+1];let g=0;l.textureIsSignedDistanceField&&(g=Math.min(l.outlineSize,.5*Dr[0])*e.screenToWorldRatio/2),Dr[0]*=h,Dr[1]*=m;const _=t*o.size,b=l.rotation+o.data[_];hr(r,u,p,Dr,f,g,b,l,c)&&n(i.distance,i.normal,-1)}}createBufferWriter(){return new kr}applyShaderOffsetsView(e,t,r,n,i,s,a){const o=ur(t,r,i,Or);return this._applyVerticalGroundOffsetView(e,o,i,a),Br(this.parameters,a,o,i,s),this._applyPolygonOffsetView(a,o,n[3],i,a),this._applyCenterOffsetView(a,n,a),a}applyShaderOffsetsNDC(e,t,r,n,i){return this._applyCenterOffsetNDC(e,t,r,n),null!=i&&(0,me.c)(i,n),this._applyPolygonOffsetNDC(n,t,r,n),n}_applyPolygonOffsetView(e,t,r,n,i){const s=n.aboveGround?1:-1;let a=Math.sign(r);0===a&&(a=s);const o=s*a;if(this.parameters.shaderPolygonOffset<=0)return(0,me.c)(i,e);const l=(0,F.qE)(Math.abs(t.cosAngle),.01,1),c=1-Math.sqrt(1-l*l)/l/n.viewport[2];return(0,me.g)(i,e,o>0?c:1/c),i}_applyVerticalGroundOffsetView(e,t,r,n){const i=(0,me.l)(e),s=r.aboveGround?1:-1,a=r.computeRenderPixelSizeAtDist(i)*zt.R,o=(0,me.g)(fr,t.normal,s*a);return(0,me.f)(n,e,o),n}_applyCenterOffsetView(e,t,r){const n="screen"!==this.parameters.centerOffsetUnits;return r!==e&&(0,me.c)(r,e),n&&(r[0]+=t[0],r[1]+=t[1],t[2]&&((0,me.n)(pr,r),(0,me.a)(r,r,(0,me.g)(pr,pr,t[2])))),r}_applyCenterOffsetNDC(e,t,r,n){const i="screen"!==this.parameters.centerOffsetUnits;return n!==e&&(0,me.c)(n,e),i||(n[0]+=t[0]/r.fullWidth*2,n[1]+=t[1]/r.fullHeight*2),n}_applyPolygonOffsetNDC(e,t,r,n){const i=this.parameters.shaderPolygonOffset;if(e!==n&&(0,me.c)(n,e),i){const e=r.aboveGround?1:-1,s=e*Math.sign(t[3]);n[2]-=(s||e)*i}return n}set visible(e){this._visible=e}get visible(){const{color:e,outlineSize:t,outlineColor:r}=this.parameters,n=e[3]>=lr.Q||t>=lr.Q&&r[3]>=lr.Q;return this._visible&&n}createGLMaterial(e){return new dr(e)}calculateRelativeScreenBounds(e,t,r=(0,R.vt)()){return function(e,t,r,n){n[0]=e.anchorPosition[0]*-t[0]+e.screenOffset[0]*r,n[1]=e.anchorPosition[1]*-t[1]+e.screenOffset[1]*r}(this.parameters,e,t,r),r[2]=r[0]+e[0],r[3]=r[1]+e[1],r}}class dr extends Nt.m8{constructor(e){super({...e,...e.material.parameters})}beginSlot(e){return this.updateTexture(this._material.parameters.textureId),this._material.setParameters(this.textureBindParameters),this.getTechnique(tr,e)}}function ur(e,t,r,n){return function(e){return function(e){return e instanceof Float32Array&&e.length>=16}(e)||function(e){return Array.isArray(e)&&e.length>=16}(e)}(t)&&(t=(0,Et.z0)(xr,t)),(0,me.o)(n.normal,e,t),(0,me.t)(n.normal,n.normal,r.viewInverseTransposeMatrix),n.cosAngle=(0,me.e)(gr,Fr),n}function hr(e,t,r,n,i,s,a,o,l){let c=t-i-n[0]*l[0],d=c+n[0]+2*i,u=r-i-n[1]*l[1],h=u+n[1]+2*i;const m=o.distanceFieldBoundingBox;return o.textureIsSignedDistanceField&&null!=m&&(c+=n[0]*m[0],u+=n[1]*m[1],d-=n[0]*(1-m[2]),h-=n[1]*(1-m[3]),c-=s,d+=s,u-=s,h+=s),(0,P.hZ)(vr,t,r),(0,P.e$)(br,e,vr,(0,F.kU)(a)),br[0]>c&&br[0]<d&&br[1]>u&&br[1]<h}const mr=new class{constructor(){this.factor=new $t,this.factorAlignment=new $t}},fr=(0,S.vt)(),pr=(0,S.vt)(),yr=(0,C.vt)(),gr=(0,S.vt)(),_r=(0,S.vt)(),br=(0,D.vt)(),vr=(0,D.vt)(),wr=(0,Ut.vt)(),xr=(0,Ut.vt)(),Sr=(0,x.vt)(),Cr=(0,C.vt)(),Tr=(0,S.vt)(),Ir=(0,S.vt)(),Ar=(0,C.vt)(),Or={normal:gr,cosAngle:0},Rr=1,Pr=2,Dr=(0,D.fA)(0,0),Fr=(0,S.fA)(0,0,1);class Mr extends Nt.NV{constructor(){super(...arguments),this.renderOccluded=qt.m$.Occlude,this.isDecoration=!1,this.color=(0,C.CN)(1,1,1,1),this.polygonOffset=!1,this.anchorPosition=(0,D.fA)(.5,.5),this.screenOffset=[0,0],this.shaderPolygonOffset=1e-5,this.textureIsSignedDistanceField=!1,this.sampleSignedDistanceFieldTexelCenter=!1,this.outlineColor=(0,C.CN)(1,1,1,1),this.outlineSize=0,this.distanceFieldBoundingBox=(0,C.vt)(),this.rotation=0,this.hasRotation=!1,this.vvSizeEnabled=!1,this.vvSize=null,this.vvColor=null,this.vvOpacity=null,this.vvSymbolAnchor=null,this.vvSymbolRotationMatrix=null,this.hasSlicePlane=!1,this.pixelSnappingEnabled=!0,this.occlusionTest=!0,this.occludedFragmentFade=!1,this.horizonCullingEnabled=!1,this.centerOffsetUnits="world",this.drawAsLabel=!1,this.depthEnabled=!0,this.isFocused=!0,this.focusEffect="none",this.draped=!1,this.isLabel=!1}}const Er=(0,Bt.BP)().vec3f(re.r.POSITION).vec3f(re.r.NORMAL).vec2i16(re.r.UVI).vec4u8(re.r.COLOR).vec2f(re.r.SIZE).f32(re.r.ROTATION).vec4f(re.r.CENTEROFFSETANDDISTANCE).vec4f(re.r.FEATUREATTRIBUTE),Ur=Er.clone().vec4u8(re.r.OLIDCOLOR);class kr{constructor(){this.vertexBufferLayout=(0,jt.E)()?Ur:Er}elementCount(e){return 6*e.get(re.r.POSITION).indices.length}write(e,t,r,n,i,s){const{position:a,normal:o,uvi:l,color:c,size:d,rotation:u,centerOffsetAndDistance:h,featureAttribute:m}=i;(0,Yt.Hk)(r.get(re.r.POSITION),e,a,s,6),(0,Yt.p1)(r.get(re.r.NORMAL),t,o,s,6);const f=r.get(re.r.UVI)?.data;let p=0,y=0,g=-1-Jt.f,_=-1-Jt.f;f&&f.length>=4&&(p=f[0],y=f[1],g=-1-f[2],_=-1-f[3]);let b=r.get(re.r.POSITION).indices.length,v=s;for(let e=0;e<b;++e)l.set(v,0,p),l.set(v,1,y),v++,l.set(v,0,g),l.set(v,1,y),v++,l.set(v,0,g),l.set(v,1,_),v++,l.set(v,0,g),l.set(v,1,_),v++,l.set(v,0,p),l.set(v,1,_),v++,l.set(v,0,p),l.set(v,1,y),v++;(0,Yt.tb)(r.get(re.r.COLOR),4,c,s,6);const{data:w,indices:x}=r.get(re.r.SIZE);b=x.length,v=s;for(let e=0;e<b;++e){const t=w[2*x[e]],r=w[2*x[e]+1];for(let e=0;e<6;++e)d.set(v,0,t),d.set(v,1,r),v++}if((0,Yt.uO)(r.get(re.r.ROTATION),u,s,6),r.get(re.r.CENTEROFFSETANDDISTANCE)?(0,Yt.Ut)(r.get(re.r.CENTEROFFSETANDDISTANCE),h,s,6):(0,Yt.Pq)(h,s,6*b),r.get(re.r.FEATUREATTRIBUTE)?(0,Yt.Ut)(r.get(re.r.FEATUREATTRIBUTE),m,s,6):(0,Yt.Pq)(m,s,6*b),null!=n){const e=r.get(re.r.POSITION)?.indices;if(e){const t=e.length,r=i.getField(re.r.OLIDCOLOR,kt.XP);(0,Yt.vx)(n,r,t,s,6)}}return{numVerticesPerItem:6,numItems:b}}intersect(e,t,r,n,i,s,a){const{options:{selectionMode:o,hud:l,excludeLabels:c},point:d,camera:u}=n;if(!o||!l||c&&t.isLabel||!d)return;const h=this.vertexBufferLayout.createView(e),m=h.getField(re.r.POSITION,kt.xs),f=h.getField(re.r.NORMAL,kt.xs),p=h.getField(re.r.ROTATION,kt.Y$),y=h.getField(re.r.SIZE,kt.gH),g=h.getField(re.r.FEATUREATTRIBUTE,kt.Eq),_=h.getField(re.r.CENTEROFFSETANDDISTANCE,kt.Eq),b="screen"===t.centerOffsetUnits,v=(0,Jt.c)(t);if(null==m||null==f||null==p||null==y||null==_||null==u)return;const w=null==g?null:g.getVec(0,Ar),{scaleX:x,scaleY:C}=Lr(w,t,u.pixelRatio),T=m.count/6;for(let e=0;e<T;e++){const i=6*e;if(m.getVec(i,fr),null!=r&&(0,me.f)(fr,fr,r),(0,me.t)(fr,fr,u.viewMatrix),_.getVec(i,Cr),(0,me.i)(Tr,Cr[0],Cr[1],Cr[2]),!b&&(fr[0]+=Tr[0],fr[1]+=Tr[1],0!==Tr[2])){const e=Tr[2];(0,me.n)(Tr,fr),(0,me.d)(fr,fr,(0,me.g)(Tr,Tr,e))}if(f.getVec(i,pr),ur(pr,wr,u,Or),Br(t,fr,Or,u,mr),u.applyProjection(fr,yr),yr[0]>-1){b&&(Tr[0]||Tr[1])&&(yr[0]+=Tr[0]*u.pixelRatio,0!==Tr[1]&&(yr[1]+=(0,Gt.m0)(Tr[1],mr.factorAlignment)*u.pixelRatio),u.unapplyProjection(yr,fr)),yr[0]+=t.screenOffset[0]*u.pixelRatio,yr[1]+=t.screenOffset[1]*u.pixelRatio,yr[0]=Math.floor(yr[0]),yr[1]=Math.floor(yr[1]),y.getVec(i,Dr),(0,Gt.MD)(Dr,mr.factor,Dr);const r=Rr*u.pixelRatio;let s=0;t.textureIsSignedDistanceField&&(s=Math.min(t.outlineSize,.5*Dr[0])*u.pixelRatio/2),Dr[0]*=x,Dr[1]*=C;const o=p.get(i),l=t.rotation+o;if(hr(d,yr[0],yr[1],Dr,r,s,l,t,v)){const t=n.ray;if((0,me.t)(_r,fr,(0,A.B8)(Sr,u.viewMatrix)),yr[0]=d[0],yr[1]=d[1],u.unprojectFromRenderScreen(yr,fr)){const r=(0,S.vt)();(0,me.c)(r,t.direction);const n=1/(0,me.l)(r);(0,me.g)(r,r,n),a((0,me.j)(t.origin,fr)*n,r,e,_r)}}}}}}function Lr(e,t,r){return null==e||null==t.vvSize?{scaleX:r,scaleY:r}:((0,Lt.VC)(Ir,t,e),{scaleX:Ir[0]*r,scaleY:Ir[1]*r})}function Br(e,t,r,n,i){if(!e.verticalOffset?.screenLength)return e.screenSizePerspective||e.screenSizePerspectiveAlignment?Vr(e,i,(0,me.l)(t),r.cosAngle):(i.factor.scale=1,i.factorAlignment.scale=1),t;const s=(0,me.l)(t),a=e.screenSizePerspectiveAlignment??e.screenSizePerspective,o=(0,Zt.kE)(n,s,e.verticalOffset,r.cosAngle,a);return Vr(e,i,s,r.cosAngle),(0,me.g)(r.normal,r.normal,o),(0,me.f)(t,t,r.normal)}function Vr(e,t,r,n){null!=e.screenSizePerspective?(0,Gt.cJ)(n,r,e.screenSizePerspective,t.factor):(t.factor.scale=1,t.factor.factor=0,t.factor.minScaleFactor=0),null!=e.screenSizePerspectiveAlignment?(0,Gt.cJ)(n,r,e.screenSizePerspectiveAlignment,t.factorAlignment):(t.factorAlignment.factor=t.factor.factor,t.factorAlignment.scale=t.factor.scale,t.factorAlignment.minScaleFactor=t.factor.minScaleFactor)}class zr{constructor(e,t){this._mainThreadDelegate=t,this._bufferWriters=new Map,this.globalViewingMode=e===Ft.RT.Global}createRenderCommandBuffer(e=[],t=[]){return{commands:e,transferList:t}}mergeRenderCommandBuffers(e){const t=this.createRenderCommandBuffer();for(const r of e)null!=r&&(t.commands.push(...r.commands),t.transferList.push(...r.transferList));return t}async createTexture(e){const{data:t,parameters:r}=e();return await this._mainThreadDelegate.createTexture(t,r)}async releaseTexture(e){const t=this._destroyTexture(e);return new y(this,t,[])}_destroyTexture(e){return{commands:[{id:"destroy-texture",textureId:e}],transferList:[]}}async createMaterial(e){const{type:t,parameters:r}=e,n=et("material");let i,s;switch(t){case"default":i=new Le.$U(e.parameters,{spherical:this.globalViewingMode}),s={type:t,materialId:n,parameters:e.parameters};break;case"hud":i=new cr(r,this.globalViewingMode),s={type:t,materialId:n,parameters:e.parameters}}return this._bufferWriters.set(n,i.createBufferWriter()),await this._mainThreadDelegate.createMaterial(s),n}destroyMaterial(e){return{commands:[{id:"destroy-material",materialId:e}],transferList:[]}}updateMaterial(e){return{commands:[{...e,id:"update-material"}],transferList:[]}}async createDirectRenderer(e){return await this._mainThreadDelegate.createDirectRenderer(e),e}async destroyDirectRenderer(e){await this._mainThreadDelegate.destroyDirectRenderer(e)}addDirectRendererGeometry(e,t,r){const{materialId:n}=t;if(null==this._bufferWriters.get(n))throw new Error(`no bufferwriter found for material ${n}`);const{renderGeometryBuffer:i,renderGeometryBufferItems:s}=this.createRenderGeometryBuffer(t,r);return this.addDirectRendererGeometryBuffer(n,e,i,s,r)}updateDirectRendererGeometry(e,t,r){const{materialId:n}=t;if(null==this._bufferWriters.get(n))throw new Error(`no bufferwriter found for material ${n}`);const{renderGeometryBuffer:i,renderGeometryBufferItems:s}=this.createRenderGeometryBuffer(t,r);return this.updateDirectRendererGeometryBuffer(n,e,i,s,r)}addDirectRendererGeometryBuffer(e,t,r,n,i){const{objectIds:s,visibilities:a}=n;return{commands:[{id:"add-direct-renderer-geometry-buffer",rendererId:e,groupId:t,renderGeometryBuffer:r,renderGeometryBufferItems:n,localOrigin:i}],transferList:[r.data,s.buffer,a.buffer]}}updateDirectRendererGeometryBuffer(e,t,r,n,i){const{objectIds:s,visibilities:a}=n;return{commands:[{id:"update-direct-renderer-geometry-buffer",rendererId:e,groupId:t,renderGeometryBuffer:r,renderGeometryBufferItems:n,localOrigin:i}],transferList:[r.data,s.buffer,a.buffer]}}removeDirectRendererGeometryBuffer(e,t){return{commands:[{id:"remove-direct-renderer-geometry-buffer",rendererId:e,groupId:t}],transferList:[]}}async createLodRenderer(e){const t=et("lod-renderer"),r=new Set,n={levels:e.levels.map((e=>({components:e.components.map((e=>{const t=e.attributes.get(re.r.POSITION);if(!t||0===t.indices.length)throw new Error("positions attribute expected");const n=(0,q.tM)(t.indices.length/3),i=new Mt.j(n,3,t);if(null==this._bufferWriters.get(e.materialId))throw new Error("writer not found");const{renderGeometryBuffer:s}=this.createRenderGeometryBuffer(e,null);return r.add(s.data),{materialId:e.materialId,renderGeometryBuffer:s,boundingInfo:{bbMax:i.bbMax,bbMin:i.bbMin}}})),minScreenSpaceRadius:e.minScreenSpaceRadius})))};return await this._mainThreadDelegate.createLodRenderer(t,n,Array.from(r)),t}destroyLodRenderer(e){return{commands:[{id:"destroy-lod-renderer",rendererId:e}],transferList:[]}}addLodInstances(e,t,r){return{commands:[{id:"add-lod-instances",rendererId:e,groupId:t,data:r}],transferList:[r.featureIds.buffer,r.globalTransforms.buffer,r.localTransforms.buffer,r.visibility.buffer]}}removeLodInstances(e,t){return{commands:[{id:"remove-lod-instances",rendererId:e,groupId:t}],transferList:[]}}updateLodInstancesData(e,t,r){return{commands:[{id:"update-lod-instance-data",rendererId:e,groupId:t,globalTransforms:r}],transferList:[r.buffer]}}updateVisibility(e,t,r){return{commands:[{id:"update-visibility",rendererId:e,groupId:t,visibility:r}],transferList:[r.buffer]}}async dispatchRenderCommands(e){0!==e.commands.length&&await this._mainThreadDelegate.executeRenderCommands(e)}createRenderGeometryBuffer(e,t){const{materialId:r,visibilities:n,objectIds:i}=e,s=this._bufferWriters.get(r);if(null==s)throw new Error("no registered bufferWriter for material found");let a=null;if(e.transformation&&t)(0,A.C)(jr,e.transformation),jr[12]-=t[0],jr[13]-=t[1],jr[14]-=t[2],a=jr;else{if(t)throw new Error("not implemented");e.transformation&&(a=e.transformation)}let o=null;a&&((0,A.B8)(Nr,jr),(0,A.mg)(Nr,Nr),o=Nr);const l=e.attributes,c=s.elementCount(l),d=s.vertexBufferLayout.stride/4;c>Math.floor(qr/d)&&console.warn("geometry with very large number of elements encountered");const u=s.vertexBufferLayout.createBuffer(c),h=s.write(a,o,l,e.objectAndLayerIdColor,u,0);if(null==h)throw new Error("Bufferwriter.write does not provide item information.");if(n.length!==h.numItems||i.length!==h.numItems)throw new Error("Unexpected mismatch between number of RenderGeometryBufferItems and provided objectIds/visibility flags.");return{renderGeometryBuffer:{data:u.buffer,elementCount:c},renderGeometryBufferItems:{objectIds:i,visibilities:n,ranges:{numVertices:h.numVerticesPerItem,numItems:h.numItems}}}}}const jr=(0,x.vt)(),Nr=(0,x.vt)(),qr=4194304;var Hr=r(73941),Gr=r(98764),$r=r(65806);const Yr=(0,S.vt)();var Zr=r(88582),Jr=r(17352),Wr=r(97937);function Xr(e,t,r=function(e){return{operations:e,value:e.create()}}(e)){return r.operations=e,e.copy(t,r.value),r}const Qr=2**50;function Kr(e,t,r,n){return e.operations.setAltitudeAt(e.value,t,r,n)}function en(e,t,r){return e.operations.elevate(e.value,t,r.value)}const tn=(0,S.vt)();(0,S.vt)();var rn=r(44280),nn=r(32114);function sn(e){return"point"===e.type}class an{constructor(e,t,r,n){this.viewingMode=e,this.spatialReference=t,this.unitInMeters=r,this._coordinateSystem=n,this._tmpCoordinateSystem=function(e){const{value:t,operations:r}=e;return{operations:r,value:r.create(t)}}(n),this.referenceEllipsoid=(0,Hr.tO)(t),this.sphericalPCPF=(0,Gr.lO)(t)}set extent(e){e&&function(e,t,r){e.operations.setExtent(e.value,t,r.value)}(this._coordinateSystem,e,this._coordinateSystem)}get extent(){return function(e,t){return e.operations.getExtent(e.value,t),t}(this._coordinateSystem,(0,R.vt)())}getAltitude(e){return function(e,t){return e.operations.altitudeAt(e.value,t)}(this._coordinateSystem,e)}setAltitude(e,t,r=e){return Kr(this._coordinateSystem,r,t,e)}setAltitudeOfTransformation(e,t){!function(e,t,r,n){t!==n&&(0,A.C)(n,t),(0,me.i)(tn,n[12],n[13],n[14]),Kr(e,tn,r,tn),n[12]=tn[0],n[13]=tn[1],n[14]=tn[2]}(this._coordinateSystem,t,e,t)}worldUpAtPosition(e,t){return function(e,t,r){return e.operations.axisAt(e.value,t,Zr._.Z,r)}(this._coordinateSystem,e,t)}worldBasisAtPosition(e,t,r){return function(e,t,r,n){return e.operations.axisAt(e.value,t,r,n)}(this._coordinateSystem,e,t,r)}basisMatrixAtPosition(e,t){const r=this.worldBasisAtPosition(e,Zr._.X,nn.rq.get()),n=this.worldBasisAtPosition(e,Zr._.Y,nn.rq.get()),i=this.worldBasisAtPosition(e,Zr._.Z,nn.rq.get());return(0,A.hZ)(t,r[0],r[1],r[2],0,n[0],n[1],n[2],0,i[0],i[1],i[2],0,0,0,0,1),t}headingAtPosition(e,t){const r=this.worldUpAtPosition(e,nn.rq.get()),n=this.worldBasisAtPosition(e,Zr._.Y,nn.rq.get()),i=(0,rn.EJ)(t,n,r);return(0,F.KJ)(i)}intersectManifoldClosestSilhouette(e,t,r){return en(this._coordinateSystem,t,this._tmpCoordinateSystem),function(e,t,r){e.operations.intersectRayClosestSilhouette(e.value,t,r)}(this._tmpCoordinateSystem,e,r),r}intersectManifold(e,t,r){en(this._coordinateSystem,t,this._tmpCoordinateSystem);const n=nn.rq.get();return function(e,t,r){return e.operations.intersectRay(e.value,t,r)}(this._tmpCoordinateSystem,e,n)?(0,me.c)(r,n):null}intersectInfiniteManifold(e,t,r){if(this.viewingMode===Ft.RT.Global)return this.intersectManifold(e,t,r);en(this._coordinateSystem,t,this._tmpCoordinateSystem);const n=this._tmpCoordinateSystem.value,i=nn.rq.get();return(0,ye.Ui)(n.plane,e,i)?(0,me.c)(r,i):null}toRenderCoords(e,t,r){return sn(e)?(0,$r.g)(e,t,this.spatialReference):(0,V.F)(e,t,r,this.spatialReference)}fromRenderCoords(e,t,r=null){return sn(t)?(null!=r&&(t.spatialReference=r),function(e,t,r){return!!(0,V.F)(e,t,Yr,r.spatialReference)&&(r.x=Yr[0],r.y=Yr[1],r.z=Yr[2],!0)}(e,this.spatialReference,t)?t:null):(0,V.F)(e,this.spatialReference,t,r)?t:null}static create(e,t){switch(e){case Ft.RT.Local:return new an(Ft.RT.Local,t,(0,I.GA)(t),Xr(Jr.b,(0,Jr.f)([0,0,0],[Qr,0,0],[0,Qr,0])));case Ft.RT.Global:return new an(Ft.RT.Global,t,1,function(e){return Xr(Wr.s,(0,Wr.f)(0,0,0,(0,Hr.tO)(e).radius))}(t))}}static renderUnitScaleFactor(e,t){return(0,I.KX)(e)/(0,I.KX)(t)}}let on=class extends i.A.EventedAccessor{constructor(){super(...arguments),this.remoteClient=null,this._featureStore=new pt,this._tileLocks=new lt,this._tileManager=null,this._renderer=null,this._fetcher=null,this._queryEngine=null,this._defaultQueryJSON=null,this._mainThreadDelegate=null,this._viewSpatialReference=null,this._renderCommandContext=null,this._context=null}get updating(){return this._tileManager.updating}destroy(){this._featureStore.clear(),this._tileManager?.destroy()}async setup({viewSpatialReference:e,renderSpatialReference:t,viewingMode:r,layerInfo:n,layerViewInfo:i}){const s=h.A.fromJSON(e);this._viewSpatialReference=s;const o=h.A.fromJSON(t);this._fetcher=new Dt(this._viewSpatialReference,f.A.fromJSON(n.baseQuery),n.url,n.objectIdField,n.capabilities),this._queryEngine=new m.do({hasZ:!0,hasM:!1,geometryType:"esriGeometryPoint",objectIdField:n.objectIdField,fieldsIndex:n.fieldIndex,availableFields:[n.objectIdField],spatialReference:e,featureStore:this._featureStore,timeInfo:n.timeInfo}),this._mainThreadDelegate={createTexture:async(e,t)=>{const r={data:e,parameters:t};return await this.remoteClient.invoke("createTexture",r,{transferList:[e.buffer]})},releaseTexture:async e=>{const t={uid:e};await this.remoteClient.invoke("releaseTexture",t)},createMaterial:async e=>{const t={materialJSON:e};await this.remoteClient.invoke("createMaterial",t)},destroyMaterial:async e=>{const t={materialId:e};await this.remoteClient.invoke("destroyMaterial",t)},createDirectRenderer:async e=>{const t={materialId:e};await this.remoteClient.invoke("createDirectRenderer",t)},destroyDirectRenderer:async e=>{const t={materialId:e};await this.remoteClient.invoke("destroyDirectRenderer",t)},createLodRenderer:async(e,t,r)=>{const n={rendererId:e,lodRenderGeometry:t};await this.remoteClient.invoke("createLoDRenderer",n,{transferList:r})},destroyLodRenderer:async e=>{const t={rendererId:e};await this.remoteClient.invoke("destroyLoDRenderer",t)},executeRenderCommands:async e=>{const t={commands:e.commands};await this.remoteClient.invoke("dispatchRenderCommands",t,{transferList:e.transferList})},applyElevationAlignmentTo:async e=>{const t={mapPoints:e};return await this.remoteClient.invoke("applyElevationAlignment",t,{transferList:[e.buffer]})}};const l=an.create(r,o),c=new zr(r,this._mainThreadDelegate);this._renderCommandContext=c;const p=new $e(s,o,this._mainThreadDelegate,l,c,n,i);this._context=p,this._renderer=p.symbolRendererFactory.createSymbolRendererFromJSON(n.renderer),this._defaultQueryJSON=new f.A({outSpatialReference:s}).toJSON();let y=null;if(null!=n.fullExtent){const e=d.A.fromJSON(n.fullExtent);await(0,u.initializeProjection)(e.spatialReference,s),y=(0,u.project)(e,s)}return this._tileManager=new nt({loadTile:(e,t)=>this._fetcher.fetch(e,t),createAddCommand:(e,t)=>this._createAddFeatureDataCommand(e,t),createRemoveCommand:e=>this._createRemoveFeatureDataCommand(e),createUpdateCommand:(e,t)=>this._createUpdateFeatureDataVisibilityCommand(e,t),tileLocks:this._tileLocks,extent:y}),this.addHandles((0,a.wB)((()=>this.updating),(e=>{this.emit("notify-updating",{updating:e})})),a.Vh),null!=this._renderer&&await this._renderer.load(),cn}async executeQuery(e,t){return{result:await this._queryEngine.executeQuery(this._ensureQuery(e),t)}}async executeQueryForIds(e,t){const r=await this._queryEngine.executeQueryForIdSet(this._ensureQuery(e),t);return{result:Array.from(r)}}async executeQueryForCount(e,t){return{result:await this._queryEngine.executeQueryForCount(this._ensureQuery(e),t)}}async executeQueryForExtent(e,t){return{result:await this._queryEngine.executeQueryForExtent(this._ensureQuery(e),t)}}async executeQueryForLatestObservations(e,t){return{result:await this._queryEngine.executeQueryForLatestObservations(this._ensureQuery(e),t)}}onTileTreeChange(e){return this._tileManager.onTileTreeChange(e),Promise.resolve(cn)}async onElevationChange(e){return cn}async onLayerViewOpacityChange(e){const{_context:t,_renderer:r}=this;if(t.layerViewInfo.fullOpacity=e,null==r)return cn;const n=await r.createUpdateLayerViewOpacityCommand(e);return await n.execute(),cn}async onRendererChange(e){const{_context:t}=this,r=t.symbolRendererFactory.createSymbolRendererFromJSON(e);await r.load();const i=this._renderer;this._renderer=r;const s=[...this._tileManager.loadedTiles()],a=s.map((e=>e.tileId));{const e={stack:[],error:void 0,hasError:!1};try{(0,n.b)(e,await this._tileLocks.lock(a),!1);const o=s.flatMap((e=>[i.createRemoveCommand(e.id),r.createAddCommand(e)])),l=await Promise.all(o),c=t.joinPipelineCommands(l);await c.execute()}catch(t){e.error=t,e.hasError=!0}finally{(0,n.c)(e)}}const o=await i.createDestroyCommand();return await o.execute(),cn}async _createAddFeatureDataCommand(e,t){const r=this._featureStore,n=this._renderer;let i;return i=null!=n?await n.createAddCommand(e):y.create(this._renderCommandContext),(0,s.Te)(t),i.appendPipelineStateCommand((()=>{r.addTile(e)})),i}async _createRemoveFeatureDataCommand(e){const t=this._featureStore,r=this._renderer;let n;return n=null!=r?await r.createRemoveCommand(e):y.create(this._renderCommandContext),n.appendPipelineStateCommand((()=>{t.removeTile(e)})),n}async _createUpdateFeatureDataVisibilityCommand(e,t){const r=this._renderer;let n;return n=null!=r?await r.createUpdateVisibilityCommand(e):y.create(this._renderCommandContext),(0,s.Te)(t),n}_ensureQuery(e){return e??this._defaultQueryJSON}};(0,n._)([(0,o.MZ)()],on.prototype,"updating",null),on=(0,n._)([(0,c.$)("esri.views.3d.layers.graphics.pipeline.Feature3DPipelineWorker")],on);const ln=on,cn={result:void 0}},69418:(e,t,r)=>{r.d(t,{S:()=>c,z:()=>l});var n=r(83047),i=r(21325),s=r(43334),a=r(58512),o=r(92722);const l=["esriGeometryPoint","esriGeometryMultipoint","esriGeometryPolyline","esriGeometryPolygon"];class c{constructor(e){this._options=e,this.geometryTypes=l,this._coordinatePtr=0,this._vertexDimension=0}createFeatureResult(){return new a.A}prepareFeatures(e){this._vertexDimension=2,e.hasZ&&this._vertexDimension++,e.hasM&&this._vertexDimension++}finishFeatureResult(e){if(!e?.features||!e.hasZ||!this._options.sourceSpatialReference||!e.spatialReference||(0,i.aI)(e.spatialReference,this._options.sourceSpatialReference)||e.spatialReference.vcsWkid)return;const t=(0,n.G9)(this._options.sourceSpatialReference)/(0,n.G9)(e.spatialReference);if(1!==t)for(const r of e.features){if(!(0,s.N3)(r))continue;const e=r.geometry.coords;for(let r=2;r<e.length;r+=3)e[r]*=t}}addFeature(e,t){e.features.push(t)}createFeature(){return new s.Om(null,{},null,0)}createSpatialReference(){return{wkid:0}}createGeometry(){return new o.A}addField(e,t){e.fields.push(t)}allocateCoordinates(e){e.coords.length=e.lengths.reduce(((e,t)=>e+t),0)*this._vertexDimension,this._coordinatePtr=0}addCoordinate(e,t){e.coords[this._coordinatePtr++]=t}addCoordinatePoint(e,t){e.coords.push(t)}addLength(e,t){e.lengths.push(t)}addQueryGeometry(e,t){e.queryGeometry=t.queryGeometry,e.queryGeometryType=t.queryGeometryType}createPointGeometry(){return new o.A}}},72385:(e,t,r)=>{function n(){return new Float32Array(3)}function i(e){const t=new Float32Array(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function s(e,t,r){const n=new Float32Array(3);return n[0]=e,n[1]=t,n[2]=r,n}function a(){return n()}function o(){return s(1,1,1)}function l(){return s(1,0,0)}function c(){return s(0,1,0)}function d(){return s(0,0,1)}r.d(t,{fA:()=>s,o8:()=>i,vt:()=>n});const u=a(),h=o(),m=l(),f=c(),p=d();Object.freeze(Object.defineProperty({__proto__:null,ONES:h,UNIT_X:m,UNIT_Y:f,UNIT_Z:p,ZEROS:u,clone:i,create:n,fromValues:s,ones:o,unitX:l,unitY:c,unitZ:d,zeros:a},Symbol.toStringTag,{value:"Module"}))},73681:(e,t,r)=>{r.d(t,{n:()=>l});var n=r(49186),i=r(53966),s=r(46140),a=r(95466),o=r(55674);class l{static async from(e,t,r){const a=e.dictionary_version?s.R.parse(e.dictionary_version):null,d=new Set(e.itemsNames),u={};if(t)for(const e in t)u[e]=t[e];if(e.authoringInfo.configuration)for(const t of e.authoringInfo.configuration)u.hasOwnProperty(t.name)||(u[t.name]=t.value);const h=new Set(e.authoringInfo.symbol);for(const e of Object.keys(r))h.delete(e);h.size&&i.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("missing-fields: fieldMap entries for the following symbol fields are missing",{symbolFields:h});const m=await(0,o.xR)(e.expression,null,u);if(!m)throw new n.A("dictionary-renderer:expression-error","Unable to create dictionary renderer expression");const f=!a||!a.greaterEqual(4,0);f&&i.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("Dictionary script does not support native field types. Applying fallback",{version:a});const p=new c(r,f);return new l(f,d,m,p)}constructor(e,t,r,n){this._requiresFieldCoercionToString=e,this._itemNames=t,this._compiled=r,this._reader=n}get itemNames(){return this._itemNames}evaluate(e,t,r,n){try{return this._reader.bind(e,r,n),this._compiled.evaluate(this._reader,{$view:{scale:t}})}catch(e){i.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("arcade: dictionary script evaluation failed",{error:e})}return null}createDictionaryFieldsIndex(e){if(!this._requiresFieldCoercionToString)return new a.A(e);const t=e.map((e=>({...e,type:"esriFieldTypeString"})));return new a.A(t)}}class c extends o.Gj{constructor(e,t){super(),this._fieldMap=e,this._requiresFieldCoercionToString=t}_getField(e){const t=this._fieldMap[e]??e;return this._boundSchema.fieldsIndex.get(t)}field(e){if(!this._requiresFieldCoercionToString)return super.field(e,!1);const t=this._getField(e);return null==t?"":""+this._boundTarget.attributes[t.name]}}},75503:(e,t,r)=>{r.d(t,{E:()=>T,w:()=>o});var n=r(4576),i=r(21818),s=(r(44208),r(3694)),a=r(11006);class o{constructor(e=9,t){this._compareMinX=h,this._compareMinY=m,this._toBBox=e=>e,this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),t&&("function"==typeof t?this._toBBox=t:this._initFormat(t)),this.clear()}destroy(){this.clear(),w.prune(),x.prune(),S.prune(),C.prune()}all(e){l(this._data,e)}search(e,t){let r=this._data;const n=this._toBBox;if(b(e,r))for(w.clear();r;){for(let i=0,s=r.children.length;i<s;i++){const s=r.children[i],a=r.leaf?n(s):s;b(e,a)&&(r.leaf?t(s):_(e,a)?l(s,t):w.push(s))}r=w.pop()}}collides(e){let t=this._data;const r=this._toBBox;if(!b(e,t))return!1;for(w.clear();t;){for(let n=0,i=t.children.length;n<i;n++){const i=t.children[n],s=t.leaf?r(i):i;if(b(e,s)){if(t.leaf||_(e,s))return!0;w.push(i)}}t=w.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,r=e.length;t<r;t++)this.insert(e[t]);return this}let t=this._build(e.slice(),0,e.length-1,0);if(this._data.children.length)if(this._data.height===t.height)this._splitRoot(this._data,t);else{if(this._data.height<t.height){const e=this._data;this._data=t,t=e}this._insert(t,this._data.height-t.height-1,!0)}else this._data=t;return this}insert(e){return e&&this._insert(e,this._data.height-1),this}clear(){return this._data=new A([]),this}remove(e){if(!e)return this;let t,r=this._data,s=null,a=0,o=!1;const l=this._toBBox(e);for(S.clear(),C.clear();r||S.length>0;){if(r||(r=S.pop(),s=S.data[S.length-1],a=C.pop()??0,o=!0),r.leaf&&(t=(0,n.qh)(r.children,(0,i.zI)(e),r.children.length,r.indexHint),-1!==t))return r.children.splice(t,1),S.push(r),this._condense(S),this;o||r.leaf||!_(r,l)?s?(a++,r=s.children[a],o=!1):r=null:(S.push(r),C.push(a),a=0,s=r,r=r.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,r,n){const i=r-t+1;let s=this._maxEntries;if(i<=s){const n=new A(e.slice(t,r+1));return c(n,this._toBBox),n}n||(n=Math.ceil(Math.log(i)/Math.log(s)),s=Math.ceil(i/s**(n-1)));const a=new O([]);a.height=n;const o=Math.ceil(i/s),l=o*Math.ceil(Math.sqrt(s));v(e,t,r,l,this._compareMinX);for(let i=t;i<=r;i+=l){const t=Math.min(i+l-1,r);v(e,i,t,o,this._compareMinY);for(let r=i;r<=t;r+=o){const i=Math.min(r+o-1,t);a.children.push(this._build(e,r,i,n-1))}}return c(a,this._toBBox),a}_insert(e,t,r){const n=this._toBBox,i=r?e:n(e);S.clear();const s=function(e,t,r,n){for(;n.push(t),!0!==t.leaf&&n.length-1!==r;){let r,n=1/0,i=1/0;for(let s=0,a=t.children.length;s<a;s++){const a=t.children[s],o=f(a),l=y(e,a)-o;l<i?(i=l,n=o<n?o:n,r=a):l===i&&o<n&&(n=o,r=a)}t=r||t.children[0]}return t}(i,this._data,t,S);for(s.children.push(e),u(s,i);t>=0&&S.data[t].children.length>this._maxEntries;)this._split(S,t),t--;!function(e,t,r){for(let n=r;n>=0;n--)u(t.data[n],e)}(i,S,t)}_split(e,t){const r=e.data[t],n=r.children.length,i=this._minEntries;this._chooseSplitAxis(r,i,n);const s=this._chooseSplitIndex(r,i,n);if(!s)return;const a=r.children.splice(s,r.children.length-s),o=r.leaf?new A(a):new O(a);o.height=r.height,c(r,this._toBBox),c(o,this._toBBox),t?e.data[t-1].children.push(o):this._splitRoot(r,o)}_splitRoot(e,t){this._data=new O([e,t]),this._data.height=e.height+1,c(this._data,this._toBBox)}_chooseSplitIndex(e,t,r){let n,i,s;n=i=1/0;for(let a=t;a<=r-t;a++){const t=d(e,0,a,this._toBBox),o=d(e,a,r,this._toBBox),l=g(t,o),c=f(t)+f(o);l<n?(n=l,s=a,i=c<i?c:i):l===n&&c<i&&(i=c,s=a)}return s}_chooseSplitAxis(e,t,r){const n=e.leaf?this._compareMinX:h,i=e.leaf?this._compareMinY:m;this._allDistMargin(e,t,r,n)<this._allDistMargin(e,t,r,i)&&e.children.sort(n)}_allDistMargin(e,t,r,n){e.children.sort(n);const i=this._toBBox,s=d(e,0,t,i),a=d(e,r-t,r,i);let o=p(s)+p(a);for(let n=t;n<r-t;n++){const t=e.children[n];u(s,e.leaf?i(t):t),o+=p(s)}for(let n=r-t-1;n>=t;n--){const t=e.children[n];u(a,e.leaf?i(t):t),o+=p(a)}return o}_condense(e){for(let t=e.length-1;t>=0;t--){const r=e.data[t];if(0===r.children.length)if(t>0){const i=e.data[t-1],s=i.children;s.splice((0,n.qh)(s,r,s.length,i.indexHint),1)}else this.clear();else c(r,this._toBBox)}}_initFormat(e){const t=["return a"," - b",";"];this._compareMinX=new Function("a","b",t.join(e[0])),this._compareMinY=new Function("a","b",t.join(e[1])),this._toBBox=new Function("a","return {minX: a"+e[0]+", minY: a"+e[1]+", maxX: a"+e[2]+", maxY: a"+e[3]+"};")}}function l(e,t){let r=e;for(x.clear();r;){if(!0===r.leaf)for(const e of r.children)t((0,i.zI)(e));else x.pushArray(r.children);r=x.pop()??null}}function c(e,t){d(e,0,e.children.length,t,e)}function d(e,t,r,n,i){i||(i=new A([])),i.minX=1/0,i.minY=1/0,i.maxX=-1/0,i.maxY=-1/0;for(let s,a=t;a<r;a++)s=e.children[a],u(i,e.leaf?n(s):s);return i}function u(e,t){e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY)}function h(e,t){return e.minX-t.minX}function m(e,t){return e.minY-t.minY}function f(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function p(e){return e.maxX-e.minX+(e.maxY-e.minY)}function y(e,t){return(Math.max(t.maxX,e.maxX)-Math.min(t.minX,e.minX))*(Math.max(t.maxY,e.maxY)-Math.min(t.minY,e.minY))}function g(e,t){const r=Math.max(e.minX,t.minX),n=Math.max(e.minY,t.minY),i=Math.min(e.maxX,t.maxX),s=Math.min(e.maxY,t.maxY);return Math.max(0,i-r)*Math.max(0,s-n)}function _(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function b(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function v(e,t,r,n,i){const s=[t,r];for(;s.length;){const t=s.pop(),r=s.pop();if(t-r<=n)continue;const o=r+Math.ceil((t-r)/n/2)*n;(0,a.q)(e,o,r,t,i),s.push(r,o,o,t)}}const w=new s.A,x=new s.A,S=new s.A,C=new s.A({deallocator:void 0});class T{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class I extends T{constructor(){super(...arguments),this.height=1,this.indexHint=new n.vW}}class A extends I{constructor(e){super(),this.children=e,this.leaf=!0}}class O extends I{constructor(e){super(),this.children=e,this.leaf=!1}}},76357:(e,t,r)=>{r.d(t,{A:()=>d});var n=r(90237),i=r(66552),s=r(25482),a=r(10107),o=(r(44208),r(53966),r(87811),r(93223)),l=r(40608);const c=new i.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let d=class extends s.A{constructor(e){super(e),this.name=null,this.type=null}};(0,n._)([(0,a.MZ)({type:String,json:{write:!0}})],d.prototype,"name",void 0),(0,n._)([(0,o.e)(c),(0,a.MZ)({json:{write:{isRequired:!0}}})],d.prototype,"type",void 0),d=(0,n._)([(0,l.$)("esri.layers.support.Domain")],d)},77548:(e,t,r)=>{r.d(t,{tk:()=>u,BR:()=>d,wI:()=>c,Ov:()=>o,W_:()=>l,TU:()=>a,XX:()=>s});var n=r(70333),i=r(78888);r(5503),r(36563),r(36708),new WeakMap;const s={Point:"SceneLayer","3DObject":"SceneLayer",IntegratedMesh:"IntegratedMeshLayer",PointCloud:"PointCloudLayer",Building:"BuildingSceneLayer"};function a(e){const t=e?.type;return"building-scene"===t||"integrated-mesh"===t||"point-cloud"===t||"scene"===t}function o(e){return"feature"===e?.type&&!e.url&&"memory"===e.source?.type}function l(e){const t=e?.type;return("feature"===t||"subtype-group"===t||"oriented-imagery"===t)&&"feature-layer"===e?.source?.type}async function c(e,t){const r=n.id?.findServerInfo(e);if(null!=r?.currentVersion)return r.owningSystemUrl||null;const s=e.toLowerCase().indexOf("/rest/services");if(-1===s)return null;const a=`${e.slice(0,s)}/rest/info`,o=null!=t?t.signal:null,{data:l}=await(0,i.A)(a,{query:{f:"json"},responseType:"json",signal:o});return l?.owningSystemUrl||null}function d(e){return function(e){if(!("capabilities"in e))return!1;switch(e.type){case"catalog":case"catalog-footprint":case"csv":case"feature":case"geojson":case"imagery":case"knowledge-graph-sublayer":case"ogc-feature":case"oriented-imagery":case"scene":case"sublayer":case"subtype-group":case"subtype-sublayer":case"wfs":return!0;default:return!1}}(e)?"effectiveCapabilities"in e?e.effectiveCapabilities:e.capabilities:null}function u(e){return!!function(e){if(!("editingEnabled"in e))return!1;switch(e.type){case"csv":case"feature":case"geojson":case"oriented-imagery":case"scene":case"subtype-group":case"subtype-sublayer":return!0;default:return!1}}(e)&&("effectiveEditingEnabled"in e?e.effectiveEditingEnabled:e.editingEnabled)}},78502:(e,t,r)=>{r.d(t,{Fq:()=>a,Yc:()=>i,Yq:()=>s});var n=r(5443);function i(e){if(null==e)return null;switch(e.type){case"polygon":case"multipoint":case"polyline":return e.extent;case"point":return new n.A({xmin:e.x,ymin:e.y,xmax:e.x,ymax:e.y,spatialReference:e.spatialReference});case"extent":return e}return null}function s(e){if(null==e)return null;const t=e.clone();return void 0!==e.cache._geVersion&&(t.cache._geVersion=e.cache._geVersion),t}function a(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e}},80451:(e,t,r)=>{r.d(t,{rS:()=>f,gK:()=>m}),r(44208);var n,i=r(53177),s=r(76357),a=r(90237),o=(r(53966),r(87811),r(49186),r(93223)),l=r(40608);let c=class extends s.A{static{n=this}constructor(e){super(e),this.type="inherited"}clone(){return new n}};(0,a._)([(0,o.e)({inherited:"inherited"})],c.prototype,"type",void 0),c=n=(0,a._)([(0,l.$)("esri.layers.support.InheritedDomain")],c);var d,u=r(10107);let h=class extends s.A{static{d=this}constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new d({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,a._)([(0,u.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,r){t[r]=[this.minValue||0,e]},isRequired:!0}}})],h.prototype,"maxValue",void 0),(0,a._)([(0,u.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[0]},write:{target:"range",writer(e,t,r){t[r]=[e,this.maxValue||0]},isRequired:!0}}})],h.prototype,"minValue",void 0),(0,a._)([(0,o.e)({range:"range"})],h.prototype,"type",void 0),h=d=(0,a._)([(0,l.$)("esri.layers.support.RangeDomain")],h);const m={key:"type",base:s.A,typeMap:{range:h,"coded-value":i.A,inherited:c}};function f(e){if(!e?.type)return null;switch(e.type){case"range":return h.fromJSON(e);case"codedValue":return i.A.fromJSON(e);case"inherited":return c.fromJSON(e)}return null}},80893:(e,t,r)=>{r.d(t,{IJ:()=>f,Jf:()=>_,Pk:()=>y,eW:()=>m,gW:()=>g,kS:()=>p});var n=r(78888),i=r(84952),s=r(65864),a=r(17136),o=r(21325),l=r(10536),c=r(66208),d=r(58501);const u="Layer does not support extent calculation.";function h(e,t,r){const n=e.geometry,i=e.toJSON();delete i.compactGeometryEnabled,delete i.defaultSpatialReferenceEnabled;const a=i;let l,c,d;if(n&&(c=n.spatialReference,d=(0,o.YX)(c),a.geometryType=(0,s.$B)(n),a.geometry=function(e,t){if(t&&"extent"===e.type)return`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`;if(t&&"point"===e.type)return`${e.x},${e.y}`;const r=e.toJSON();return delete r.spatialReference,JSON.stringify(r)}(n,e.compactGeometryEnabled),a.inSR=d),i.groupByFieldsForStatistics&&(a.groupByFieldsForStatistics=i.groupByFieldsForStatistics.join(",")),i.objectIds)switch(r?.uniqueIdFields?.length){case void 0:a.objectIds=i.objectIds.join(",");break;case 1:a.uniqueIds=JSON.stringify(i.objectIds),delete a.objectIds;break;default:a.uniqueIds=JSON.stringify(i.objectIds.map((e=>JSON.parse(e)))),delete a.objectIds}if(i.orderByFields&&(a.orderByFields=i.orderByFields.join(",")),!i.outFields||!i.returnDistinctValues&&(t?.returnCountOnly||t?.returnExtentOnly||t?.returnIdsOnly)?delete a.outFields:i.outFields.includes("*")?a.outFields="*":a.outFields=i.outFields.join(","),i.outSR?(a.outSR=(0,o.YX)(i.outSR),l=e.outSpatialReference):n&&(i.returnGeometry||i.returnCentroid)&&(a.outSR=a.inSR,l=c),i.returnGeometry&&delete i.returnGeometry,i.outStatistics&&(a.outStatistics=JSON.stringify(i.outStatistics)),i.fullText&&(a.fullText=JSON.stringify(i.fullText)),i.pixelSize&&(a.pixelSize=JSON.stringify(i.pixelSize)),i.quantizationParameters&&(e.defaultSpatialReferenceEnabled&&null!=c&&null!=e.quantizationParameters?.extent&&c.equals(e.quantizationParameters.extent.spatialReference)&&delete i.quantizationParameters.extent.spatialReference,a.quantizationParameters=JSON.stringify(i.quantizationParameters)),i.parameterValues&&(a.parameterValues=JSON.stringify(i.parameterValues)),i.rangeValues&&(a.rangeValues=JSON.stringify(i.rangeValues)),i.dynamicDataSource&&(a.layer=JSON.stringify({source:i.dynamicDataSource}),delete i.dynamicDataSource),i.timeExtent){const e=i.timeExtent,{start:t,end:r}=e;null==t&&null==r||(a.time=t===r?t:`${t??"null"},${r??"null"}`),delete i.timeExtent}return e.defaultSpatialReferenceEnabled&&null!=c&&null!=l&&c.equals(l)&&(a.defaultSR=a.inSR,delete a.inSR,delete a.outSR),a}async function m(e,t,r,n,i){const s=t.timeExtent?.isEmpty?{data:{features:[]}}:await v(e,t,"json",n,void 0,i);return(0,d.q)(t,r,s.data),s}async function f(e,t,r,n,i){if(t.timeExtent?.isEmpty)return{data:r.createFeatureResult()};const s=await p(e,t,n,i),a=s;return a.data=(0,c.m)(s.data,r),a}function p(e,t,r,n){return v(e,t,"pbf",r,void 0,n)}function y(e,t,r,n){return t.timeExtent?.isEmpty?Promise.resolve({data:{objectIds:[]}}):v(e,t,"json",r,{returnIdsOnly:!0},n)}function g(e,t,r,n){return t.timeExtent?.isEmpty?Promise.resolve({data:{count:0}}):v(e,t,"json",r,{returnIdsOnly:!0,returnCountOnly:!0},n)}async function _(e,t,r){if(t.timeExtent?.isEmpty)return{data:{count:0,extent:null}};const n=await v(e,t,"json",r,{returnExtentOnly:!0,returnCountOnly:!0}),i=n.data;if(i.hasOwnProperty("extent"))return n;if(i.features)throw new Error(u);if(i.hasOwnProperty("count"))throw new Error(u);return n}function b(e,t){if(!e.returnIdsOnly||!t.uniqueIdFields)return e;const r={...e,returnUniqueIdsOnly:!0};return delete r.returnIdsOnly,r}async function v(e,t,r,s={},o={},c={}){const d="string"==typeof e?(0,i.An)(e):e,u=t.geometry?[t.geometry]:[],m=await(0,a.el)(u,null,{signal:s.signal}),f=m?.[0];null!=f&&((t=t.clone()).geometry=f);const p=(0,l.z)({...d.query,f:r,...b(o,c),...h(t,o,c)});return(0,n.A)((0,i.fj)(d.path,(y=o,null==t.formatOf3DObjects||y.returnCountOnly||y.returnExtentOnly||y.returnIdsOnly?"query":"query3d")),{...s,responseType:"pbf"===r?"array-buffer":"json",query:{...p,...s.query}});var y}},81961:(e,t,r)=>{r.d(t,{V:()=>s});var n=r(69270),i=r(74333);class s extends i.n{constructor(e,t){super(e,"vec4",n.c.Draw,((r,n,i)=>r.setUniform4fv(e,t(n,i))))}}},87582:(e,t,r)=>{r(6867);var n=r(65215);r(29878),n.R},95696:(e,t,r)=>{r.d(t,{A:()=>d});var n,i=r(90237),s=r(69540),a=r(25482),o=r(10107),l=(r(44208),r(53966),r(87811),r(93223)),c=r(40608);let d=class extends(s.A.ClonableMixin(a.A)){static{n=this}constructor(e){super(e),this.type="georeferenced",this.origin=null}static{this.absolute=new n}};(0,i._)([(0,l.e)({georeferenced:"georeferenced"},{readOnly:!0})],d.prototype,"type",void 0),(0,i._)([(0,o.MZ)({type:[Number],nonNullable:!1,json:{write:!0}})],d.prototype,"origin",void 0),d=n=(0,i._)([(0,c.$)("esri.geometry.support.MeshGeoreferencedVertexSpace")],d)},96576:(e,t,r)=>{r.d(t,{A:()=>h});var n,i=r(90237),s=r(4718),a=r(10107),o=(r(44208),r(53966),r(93223)),l=r(40608),c=r(92438),d=r(63988),u=r(49849);let h=n=class extends((0,d.h)(c.A)){constructor(e){super(e),this.description=null,this.label=null,this.symbol=null,this.type="simple"}async collectRequiredFields(e,t){await Promise.all([this.collectSymbolFields(e,t),this.collectVVRequiredFields(e,t)])}async collectSymbolFields(e,t){await Promise.all(this.symbols.map((r=>r.collectRequiredFields(e,t))))}getSymbol(e,t){return this.symbol}async getSymbolAsync(e,t){return this.symbol}get symbols(){return this.symbol?[this.symbol]:[]}getAttributeHash(){return this.visualVariables?.reduce(((e,t)=>e+t.getAttributeHash()),"")??""}getMeshHash(){return this.symbols.reduce(((e,t)=>e+JSON.stringify(t)),"")}get arcadeRequired(){return this.arcadeRequiredForVisualVariables}clone(){return new n({description:this.description,label:this.label,symbol:(0,s.o8)(this.symbol),visualVariables:(0,s.o8)(this.visualVariables),authoringInfo:(0,s.o8)(this.authoringInfo)})}};(0,i._)([(0,a.MZ)({type:String,json:{write:!0}})],h.prototype,"description",void 0),(0,i._)([(0,a.MZ)({type:String,json:{write:!0}})],h.prototype,"label",void 0),(0,i._)([(0,a.MZ)(u.Wp)],h.prototype,"symbol",void 0),(0,i._)([(0,o.e)({simple:"simple"})],h.prototype,"type",void 0),h=n=(0,i._)([(0,l.$)("esri.renderers.SimpleRenderer")],h)},98453:(e,t,r)=>{r.d(t,{m:()=>n});const n=new(r(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"})}}]);
346
+ }`)}},65215:(e,t,r)=>{r.d(t,{H:()=>n,R:()=>i});class n{constructor(e){this.layerViewUid=e}}class i extends n{constructor(e,t){super(e),this.graphicUid=t}}},65494:(e,t,r)=>{r.d(t,{L:()=>l,r:()=>a});var n=r(67076),i=r(90360),s=r(41214);function a(e,t){return l(e,null,t)}const o=(0,i.C)({types:s.Hg});function l(e,t,r){return e?e&&(e.styleName||e.styleUrl)&&"uniqueValue"!==e.type?(r?.messages&&r.messages.push(new n.A("renderer:unsupported","Only UniqueValueRenderer can be referenced from a web style, but found '"+e.type+"'",{definition:e,context:r})),null):o(e,t,r):null}},65806:(e,t,r)=>{r.d(t,{g:()=>a});var n=r(51850),i=r(80586),s=r(9762);function a(e,t,r,n){if((0,i.canProjectWithoutEngine)(e.spatialReference,r)){o[0]=e.x,o[1]=e.y;const i=e.z;return o[2]=i??n??0,(0,s.projectBuffer)(o,e.spatialReference,0,t,r,0)}const a=(0,i.tryProjectWithZConversion)(e,r);return!!a&&(t[0]=a?.x,t[1]=a?.y,t[2]=a?.z??n??0,!0)}const o=(0,n.vt)()},66131:(e,t,r)=>{r.d(t,{lY:()=>u,mT:()=>h});var n,i=r(799),s=r(3330),a=r(96285);(n||(n={})).TimeZoneNotRecognized="TimeZoneNotRecognized";const o={[n.TimeZoneNotRecognized]:"Timezone identifier has not been recognized."};class l extends Error{constructor(e,t){super((0,i.HC)(o[e],t)),this.declaredRootClass="esri.arcade.arcadedate.dateerror",Error.captureStackTrace&&Error.captureStackTrace(this,l)}}function c(e,t,r){return e<t?e-t:e>r?e-r:0}function d(e,t,r){return e<t?t:e>r?r:e}class u{constructor(e){this._date=e,this.declaredRootClass="esri.arcade.arcadedate"}static fromParts(e=0,t=1,r=1,n=0,i=0,s=0,o=0,l){if(isNaN(e)||isNaN(t)||isNaN(r)||isNaN(n)||isNaN(i)||isNaN(s)||isNaN(o))return null;const m=a.c9.local(e,t).daysInMonth;let f=a.c9.fromObject({day:d(r,1,m),year:e,month:d(t,1,12),hour:d(n,0,23),minute:d(i,0,59),second:d(s,0,59),millisecond:d(o,0,999)},{zone:h(l)});return f=f.plus({months:c(t,1,12),days:c(r,1,m),hours:c(n,0,23),minutes:c(i,0,59),seconds:c(s,0,59),milliseconds:c(o,0,999)}),new u(f)}static get systemTimeZoneCanonicalName(){return Intl.DateTimeFormat().resolvedOptions().timeZone??"system"}static arcadeDateAndZoneToArcadeDate(e,t){const r=h(t);return e.isUnknownTimeZone||r===s.GB.instance?u.fromParts(e.year,e.monthJS+1,e.day,e.hour,e.minute,e.second,e.millisecond,r):new u(e._date.setZone(r))}static dateJSToArcadeDate(e){return new u(a.c9.fromJSDate(e,{zone:"system"}))}static dateJSAndZoneToArcadeDate(e,t="system"){const r=h(t);return new u(a.c9.fromJSDate(e,{zone:r}))}static unknownEpochToArcadeDate(e){return new u(a.c9.fromMillis(e,{zone:s.GB.instance}))}static unknownDateJSToArcadeDate(e){return new u(a.c9.fromMillis(e.getTime(),{zone:s.GB.instance}))}static epochToArcadeDate(e,t="system"){const r=h(t);return new u(a.c9.fromMillis(e,{zone:r}))}static dateTimeToArcadeDate(e){return new u(e)}clone(){return new u(this._date)}changeTimeZone(e){const t=h(e);return u.dateTimeToArcadeDate(this._date.setZone(t))}static dateTimeAndZoneToArcadeDate(e,t){const r=h(t);return e.zone===s.GB.instance||r===s.GB.instance?u.fromParts(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond,r):new u(e.setZone(r))}static nowToArcadeDate(e){const t=h(e);return new u(a.c9.fromJSDate(new Date,{zone:t}))}static nowUTCToArcadeDate(){return new u(a.c9.utc())}get isSystem(){return"system"===this.timeZone||this.timeZone===u.systemTimeZoneCanonicalName}equals(e){return this.isSystem&&e.isSystem?this.toNumber()===e.toNumber():this.isUnknownTimeZone===e.isUnknownTimeZone&&this._date.equals(e._date)}get isUnknownTimeZone(){return this._date.zone===s.GB.instance}get isValid(){return this._date.isValid}get hour(){return this._date.hour}get second(){return this._date.second}get day(){return this._date.day}get dayOfWeekISO(){return this._date.weekday}get dayOfWeekJS(){let e=this._date.weekday;return e>6&&(e=0),e}get millisecond(){return this._date.millisecond}get monthISO(){return this._date.month}get weekISO(){return this._date.weekNumber}get yearISO(){return this._date.weekYear}get monthJS(){return this._date.month-1}get year(){return this._date.year}get minute(){return this._date.minute}get zone(){return this._date.zone}get timeZoneOffset(){return this.isUnknownTimeZone?0:this._date.offset}get timeZone(){if(this.isUnknownTimeZone)return"unknown";if("system"===this._date.zone.type)return"system";const e=this.zone;return"fixed"===e.type?0===e.fixed?"UTC":e.formatOffset(0,"short"):e.name}stringify(){return JSON.stringify(this.toJSDate())}plus(e){return new u(this._date.plus(e))}diff(e,t="milliseconds"){return this._date.diff(e._date,t)[t]}toISODate(){return this._date.toISODate()}toISOString(e){return e?this._date.toISO({suppressMilliseconds:!0,includeOffset:!this.isUnknownTimeZone}):this._date.toISO({includeOffset:!this.isUnknownTimeZone})}toISOTime(e,t){return this._date.toISOTime({suppressMilliseconds:e,includeOffset:t&&!this.isUnknownTimeZone})}toFormat(e,t){return this.isUnknownTimeZone&&(e=e.replaceAll("Z","")),this._date.toFormat(e,t)}toJSDate(){return this._date.toJSDate()}toSQLValue(){return this._date.toFormat("yyyy-LL-dd HH:mm:ss")}toSQLWithKeyword(){return`timestamp '${this.toSQLValue()}'`}toDateTime(){return this._date}toNumber(){return this._date.toMillis()}getTime(){return this._date.toMillis()}toUTC(){return new u(this._date.toUTC())}toLocal(){return new u(this._date.toLocal())}toString(){return this.toISOString(!0)}static fromReaderAsTimeStampOffset(e){if(!e)return null;const t=a.c9.fromISO(e,{setZone:!0});return new u(t)}}function h(e,t=!0){if(e instanceof a.bo)return e;if("system"===e.toLowerCase())return"system";if("utc"===e.toLowerCase())return"UTC";if("unknown"===e.toLowerCase())return s.GB.instance;if(/^[+-]?[0-9]{1,2}([:][0-9]{2})?$/.test(e)){const t=a.mQ.parseSpecifier("UTC"+(e.startsWith("+")||e.startsWith("-")?"":"+")+e);if(t)return t}const r=a.oh.create(e);if(!r.isValid){if(t)throw new l(n.TimeZoneNotRecognized);return null}return r}},66208:(e,t,r)=>{r.d(t,{m:()=>i});var n=r(53655);function i(e,t){const r=(0,n.SH)(e,t),i=r.queryResult.featureResult,s=r.queryResult.queryGeometry,a=r.queryResult.queryGeometryType;if(i&&i.features&&i.features.length&&i.objectIdFieldName){const e=i.objectIdFieldName;for(const t of i.features)t.attributes&&(t.objectId=t.attributes[e])}return i&&(i.queryGeometry=s,i.queryGeometryType=a),i}},66357:(e,t,r)=>{r.r(t),r.d(t,{default:()=>ln});var n=r(90237),i=r(65529),s=r(74887),a=r(36708),o=r(10107),l=r(44208),c=(r(53966),r(87811),r(40608)),d=r(5443),u=r(80586),h=r(16930),m=r(68298),f=r(61956),p=r(65494);class y{constructor(e,t,r){this.renderCommandContext=e,this.renderCommandBuffer=t,this.pipelineStateCommands=r}append(e){this.appendRenderCommands(e.renderCommandBuffer),this.appendPipelineStateCommands(e.pipelineStateCommands)}appendRenderCommands(e){this.renderCommandBuffer.commands.push(...e.commands),this.renderCommandBuffer.transferList.push(...e.transferList)}appendPipelineStateCommand(e){this.pipelineStateCommands.push(e)}appendPipelineStateCommands(e){for(const t of e)this.appendPipelineStateCommand(t)}async execute(){for(const e of this.pipelineStateCommands)e();await this.renderCommandContext.dispatchRenderCommands(this.renderCommandBuffer)}static create(e,t=[]){return new y(e,e.createRenderCommandBuffer(),t)}}var g=r(68197),_=r(18574),b=r(87403),v=r(28975);function w(){return new _.A({material:new v.N({color:new g.A("red")})})}var x=r(9093),S=r(51850),C=r(91829),T=r(6847),I=r(83047),A=r(58083),O=(r(87317),r(70328)),R=r(19419);r(12359),r(95108),r(27615),r(52106),r(4718),r(34275),r(65864);var P=r(37585),D=r(48163),F=r(34727),M=r(26857);new Map,(()=>{let e="";for(let t=32;t<127;t++)e+=String.fromCharCode(t)})();const E=[];{const e=16;for(let t=0;t<360;t+=360/e)E.push([Math.cos(Math.PI*t/180),Math.sin(Math.PI*t/180)])}var U,k;(k=U||(U={}))[k.Left=0]="Left",k[k.Center=1]="Center",k[k.Right=2]="Right",Object.freeze({left:0,center:.5,right:1});const L=Object.freeze({"bottom-left":(0,D.fA)(0,0),bottom:(0,D.fA)(.5,0),"bottom-right":(0,D.fA)(1,0),left:(0,D.fA)(0,.5),center:(0,D.fA)(.5,.5),right:(0,D.fA)(1,.5),"top-left":(0,D.fA)(0,1),top:(0,D.fA)(.5,1),"top-right":(0,D.fA)(1,1)});var B=r(9762),V=r(27993);function z(e){const{featureCount:t}=e;if(0===t)return new Uint32Array;const r=new Uint32Array(t);return e.getObjectIdsArray(r),r}function j(e){const{featureCount:t}=e;if(0===t)return new Float64Array;const r=new Float64Array(3*t);return e.getCoordinatesArray(r),r}function N(e,t){const r=t.viewSpatialReference,n=t.renderSpatialReference,{extent:i}=e,s=(0,R.gX)(i),a=(0,S.vt)();return(0,V.F)([s[0],s[1],0],r,a,n),a}var q=r(97146);function H(e){const t=new Map;for(const[r,n]of e)t.set(r,{...n,indices:(0,q.Dg)(n.indices)});return t}var G=r(40804),$=(r(48833),r(63907));const Y=(0,C.CN)(.25,.25,.75,.75);function Z(e){return"cross"===e||"x"===e}function J(e,t=128,r=.5*t,n=0){switch(e){case"circle":default:return function(e,t){const r=e/2-.5;return ee(e,Q(r,r,t/2))}(t,r);case"square":return function(e,t){return W(e,t,!1)}(t,r);case"cross":return function(e,t,r=0){return X(e,t,!1,r)}(t,r,n);case"x":return function(e,t,r=0){return X(e,t,!0,r)}(t,r,n);case"kite":return function(e,t){return W(e,t,!0)}(t,r);case"triangle":return function(e,t){return ee(e,K(e/2,t,t/2))}(t,r);case"arrow":return function(e,t){const r=t,n=t/2,i=e/2,s=.8*r,a=Q(i,(e-t)/2-s,Math.sqrt(s*s+n*n)),o=K(i,r,n);return ee(e,((e,t)=>Math.max(o(e,t),-a(e,t))))}(t,r)}}function W(e,t,r){return r&&(t/=Math.SQRT2),ee(e,((n,i)=>{let s=n-.5*e+.25,a=.5*e-i-.75;if(r){const e=(s+a)/Math.SQRT2;a=(a-s)/Math.SQRT2,s=e}return Math.max(Math.abs(s),Math.abs(a))-.5*t}))}function X(e,t,r,n=0){t-=n,r&&(t*=Math.SQRT2);const i=.5*t;return ee(e,((t,s)=>{let a,o=t-.5*e,l=.5*e-s-1;if(r){const e=(o+l)/Math.SQRT2;l=(l-o)/Math.SQRT2,o=e}return o=Math.abs(o),l=Math.abs(l),a=o>l?o>i?Math.sqrt((o-i)*(o-i)+l*l):l:l>i?Math.sqrt(o*o+(l-i)*(l-i)):o,a-=n/2,a}))}function Q(e,t,r){return(n,i)=>{const s=n-e,a=i-t;return Math.sqrt(s*s+a*a)-r}}function K(e,t,r){const n=Math.sqrt(t*t+r*r);return(i,s)=>{const a=Math.abs(i-e)-r,o=s-e+t/2+.75,l=(t*a+r*o)/n,c=-o;return Math.max(l,c)}}function ee(e,t){const r=new Uint8Array(4*e*e);for(let n=0;n<e;n++)for(let i=0;i<e;i++){const s=i+e*n;let a=t(i,n);a=a/e+.5,(0,G.U)(a,r,4*s)}return r}var te=r(46610),re=r(46540);class ne{constructor(e,t){this._context=null,this._symbolLayer=null,this._draped=!1,this._loaded=!1,this._loadingPromise=null,this._iconTextureID=null,this._materialId=null,this._context=t,this._symbolLayer=e}get loaded(){return this._loaded}load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}_destroy(){this._iconTextureID=null}async _load(){const e=this._context.renderCommandContext,t=await e.createTexture((()=>function(e,t=128,r=.5*t,n=0){return{data:J(e,t,r,n),parameters:{mipmap:!1,wrap:{s:$.pF.CLAMP_TO_EDGE,t:$.pF.CLAMP_TO_EDGE},width:t,height:t,components:4,noUnpackFlip:!0,reloadable:!0}}}("circle")));this._iconTextureID=t;const r={anchorPosition:L.center,occlusionTest:!0,hasSlicePlane:!1,color:this._getFillColor(),outlineColor:this._getOutlineColor(),outlineSize:1,distanceFieldBoundingBox:Y,textureId:t,textureIsSignedDistanceField:!0,sampleSignedDistanceFieldTexelCenter:Z("circle")};this._materialId=await e.createMaterial({type:"hud",parameters:r}),await e.createDirectRenderer(this._materialId),this._loaded=!0}async createAddCommand(e){const{_materialId:t,_context:r}=this,{renderCommandContext:n}=r;if(null==t)throw new Error("expected material not to be null");const i=await this._createGeometry(e);if(null==i)return r.createPipelineCommand();const s=N(e,r);return r.createPipelineCommand(n.addDirectRendererGeometry(e.id,i,s))}async _createGeometry(e){const{_materialId:t,_context:r}=this,{mainThreadDelegate:n}=r,{featureCount:i}=e;if(0===i||null==t)return null;const s=z(e),a=j(e),o=function(e,t){const r=e.length/3,n=t.viewSpatialReference,i=t.renderSpatialReference,s=new Float64Array(3*r);if(!(0,B.projectBuffer)(e,n,0,s,i,0,r))throw new Error("Failed to project coordinates");return s}(await n.applyElevationAlignmentTo(a),r),l=new Float64Array([0,0,1]),c=new Float64Array([255,255,255,255]),d=new Float64Array([24,24]),u=new Float64Array([0,0,0,1]),h=new Float64Array([0,0]),m=new Float64Array([0]),f=new Uint32Array(i);for(let e=0;e<i;++e)f[e]=e;const p=new Uint32Array(i);for(let e=0;e<i;++e)p[e]=0;const y=new te.n(o,f,3,!0),g=new te.n(l,p,3,!0),_=new te.n(h,p,2,!0),b=new te.n(c,p,4,!0),v=new te.n(m,p,1,!0),w=new te.n(d,p,2,!0),S=new te.n(u,p,4,!0),C=[[re.r.POSITION,y],[re.r.NORMAL,g],[re.r.UV0,_],[re.r.COLOR,b],[re.r.ROTATION,v],[re.r.SIZE,w],[re.r.CENTEROFFSETANDDISTANCE,S]],T=new Uint8Array(i);return e.getVisibilityArray(T),{attributes:H(C),objectAndLayerIdColor:void 0,transformation:(0,x.vt)(),materialId:t,objectIds:s,visibilities:T}}async createRemoveCommand(e){const{_materialId:t,_context:r}=this,n=r.renderCommandContext;return null==t?r.createPipelineCommand():r.createPipelineCommand(n.removeDirectRendererGeometryBuffer(t,e))}async createUpdateVisibilityCommand(e){const{_materialId:t,_context:r}=this,n=r.renderCommandContext;if(null==t)return r.createPipelineCommand();const i=new Uint8Array(e.featureCount);return e.getVisibilityArray(i),r.createPipelineCommand(n.updateVisibility(t,e.id,i))}async createUpdateLayerViewOpacityCommand(e){const{_context:t,_materialId:r}=this,n=t.renderCommandContext;return null==r?t.createPipelineCommand():t.createPipelineCommand(n.updateMaterial({type:"hud",materialId:r,parameters:{color:this._getFillColor(),outlineColor:this._getOutlineColor()}}))}async createUpdateElevationCommand(e){const{_materialId:t,_context:r}=this,{renderCommandContext:n}=r,{featureCount:i,id:s}=e;if(null==t||0===i)return r.createPipelineCommand();const a=await this._createGeometry(e);if(null==a)return r.createPipelineCommand();const o=N(e,r);return r.createPipelineCommand(n.updateDirectRendererGeometry(s,a,o))}async createDestroyCommand(){const{_iconTextureID:e,_context:t}=this,r=t.renderCommandContext;let n;return n=null!=e?await r.releaseTexture(e):y.create(r),n.appendPipelineStateCommand((()=>this._destroy())),n}_getOutlineColor(){const e=this._getLayerOpacity(),t=this._symbolLayer,r=t?.outline?.color;if(null!=r){const t=g.A.toUnitRGB(r),n=r.a*e;return[t[0],t[1],t[2],n]}return[0,0,0,0]}_getFillColor(){if(function(e){return null!=e&&("cross"===e||"x"===e)}(this._getPrimitive()))return se;const e=null==this._getPrimitive(),t=this._symbolLayer?.material?.color;return this._getCombinedOpacityAndColor(t,{hasIntrinsicColor:e})}_getLayerOpacity(){return this._context.layerViewInfo.fullOpacity}_getCombinedOpacity(e,t=ie){const r=this._draped?1:this._getLayerOpacity();return e?r*e.a:t.hasIntrinsicColor?r:0}_getCombinedOpacityAndColor(e,t=ie){const r=this._getCombinedOpacity(e,t);return function(e,t,r=null){const n=(0,C.o8)(C.Un);return null!=e&&(n[0]=e[0],n[1]=e[1],n[2]=e[2]),null!=t?n[3]=t:null!=e&&e.length>3&&(n[3]=e[3]),r&&(n[0]*=r,n[1]*=r,n[2]*=r,n[3]*=r),n}(null!=e?g.A.toUnitRGB(e):S.Un,r)}_getPrimitive(){return e=this._symbolLayer,e.resource?.href?null:e.resource?.primitive??T.r;var e}}const ie={hasIntrinsicColor:!1},se=C.uY;class ae{constructor(e,t){this._loaded=!1,this._loadingPromise=null,this._context=null,this._symbol=null,this._symbolLayerRenderers=[],this._context=t,this._symbol=e}_destroy(){}get loaded(){return this._loaded}load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){const{_context:e,_symbol:t,_symbolLayerRenderers:r}=this,n=[];for(const i of t.symbolLayers){const t=e.symbolRendererFactory.createSymbolRendererFromSymbolLayer(i);null!=t&&(n.push(t.load()),r.push(t))}await Promise.all(n),this._loaded=!0}async createDestroyCommand(){const{_context:e,_symbolLayerRenderers:t}=this,r=[];for(const e of t)r.push(e.createDestroyCommand());const n=e.joinPipelineCommands(await Promise.all(r));return n.appendPipelineStateCommand((()=>this._destroy())),n}async createAddCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,n=[];for(const t of r)n.push(t.createAddCommand(e));return t.joinPipelineCommands(await Promise.all(n))}async createRemoveCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,n=[];for(const t of r)n.push(t.createRemoveCommand(e));return t.joinPipelineCommands(await Promise.all(n))}async createUpdateVisibilityCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,n=[];for(const t of r)n.push(t.createUpdateVisibilityCommand(e));return t.joinPipelineCommands(await Promise.all(n))}async createUpdateLayerViewOpacityCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,n=[];for(const t of r)n.push(t.createUpdateLayerViewOpacityCommand(e));return t.joinPipelineCommands(await Promise.all(n))}async createUpdateElevationCommand(e){const{_context:t,_symbolLayerRenderers:r}=this,n=[];for(const t of r)n.push(t.createUpdateElevationCommand(e));return t.joinPipelineCommands(await Promise.all(n))}}class oe{constructor(e,t){this._symbol=null,this._featureData=new Map,this._loaded=!1,this._loadingPromise=null,this._renderer=null,this._context=t,this._renderer=e}async load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){const{_renderer:e,_context:t}=this;this._symbol=t.symbolRendererFactory.createSymbolRendererFromSymbol(e.symbol),this._loaded=!0}get loaded(){return this._loaded}async createAddCommand(e){const t=this._context,r=await this._provisionSymbol(),n=null==r?t.createPipelineCommand():await r.createAddCommand(e);return n.appendPipelineStateCommand((()=>this._featureData.set(e.id,e))),n}async createRemoveCommand(e){const t=this._context,r=await this._provisionSymbol(),n=null==r?t.createPipelineCommand():await r.createRemoveCommand(e);return n.appendPipelineStateCommand((()=>this._featureData.delete(e))),n}async createUpdateVisibilityCommand(e){const t=this._context,r=await this._provisionSymbol();return null==r?t.createPipelineCommand():await r.createUpdateVisibilityCommand(e)}async createUpdateLayerViewOpacityCommand(e){const t=this._context,r=await this._provisionSymbol();return null==r?t.createPipelineCommand():await r.createUpdateLayerViewOpacityCommand(e)}async createUpdateElevationCommand(){const{_featureData:e,_context:t}=this,r=await this._provisionSymbol();if(null==r)return t.createPipelineCommand();const n=[];for(const t of e.values())n.push(r.createUpdateElevationCommand(t));const i=await Promise.all(n);return t.joinPipelineCommands(i)}async createDestroyCommand(){const{_symbol:e,_context:t,_featureData:r}=this;if(!e)return t.createPipelineCommand();const n=[];for(const e of r.keys())n.push(this.createRemoveCommand(e));n.push(e.createDestroyCommand());const i=await Promise.all(n);return t.joinPipelineCommands(i)}async _provisionSymbol(){const e=this._symbol;return e?(e.loaded||await e.load(),e):null}}var le,ce,de=r(48353),ue=r(30809),he=r(8887),me=r(38954),fe=r(72385),pe=(r(4197),r(11868)),ye=r(240);r(71351),(ce=le||(le={})).length=function(e,t){const r=e[t],n=e[t+1],i=e[t+2];return Math.sqrt(r*r+n*n+i*i)},ce.normalize=function(e,t){const r=e[t],n=e[t+1],i=e[t+2],s=1/Math.sqrt(r*r+n*n+i*i);e[t]*=s,e[t+1]*=s,e[t+2]*=s},ce.scale=function(e,t,r){e[t]*=r,e[t+1]*=r,e[t+2]*=r},ce.add=function(e,t,r,n,i,s=t){(i=i||e)[s]=e[t]+r[n],i[s+1]=e[t+1]+r[n+1],i[s+2]=e[t+2]+r[n+2]},ce.subtract=function(e,t,r,n,i,s=t){(i=i||e)[s]=e[t]-r[n],i[s+1]=e[t+1]-r[n+1],i[s+2]=e[t+2]-r[n+2]},r(87170);var ge=r(620);r(75039);const _e=le,be=new Array(36);for(let e=0;e<6;e++)for(let t=0;t<6;t++)be[6*e+t]=e;const ve=new Array(36);for(let e=0;e<6;e++)ve[6*e]=0,ve[6*e+1]=1,ve[6*e+2]=2,ve[6*e+3]=2,ve[6*e+4]=3,ve[6*e+5]=0;const we=(0,fe.fA)(-.5,0,-.5),xe=(0,fe.fA)(.5,0,-.5),Se=(0,fe.fA)(0,0,.5),Ce=(0,fe.fA)(0,.5,0),Te=(0,fe.vt)(),Ie=(0,fe.vt)(),Ae=(0,fe.vt)(),Oe=(0,fe.vt)(),Re=(0,fe.vt)();(0,me.d)(Te,we,Ce),(0,me.d)(Ie,we,xe),(0,me.h)(Ae,Te,Ie),(0,me.n)(Ae,Ae),(0,me.d)(Te,xe,Ce),(0,me.d)(Ie,xe,Se),(0,me.h)(Oe,Te,Ie),(0,me.n)(Oe,Oe),(0,me.d)(Te,Se,Ce),(0,me.d)(Ie,Se,we),(0,me.h)(Re,Te,Ie),(0,me.n)(Re,Re),Ae[0],Ae[1],Ae[2],Oe[0],Oe[1],Oe[2],Re[0],Re[1],Re[2],(0,S.vt)();var Pe=r(4576),De=r(69397);r(62258),r(6867),r(29878),r(87582);var Fe=r(57917);function Me(e,t){const r=(e,r,n=!1)=>({levels:e.map((e=>{const i=H(r(e.tesselation));return n&&function(e){const t=e,r=t.get(re.r.POSITION).data,n=t.get(re.r.NORMAL).data;if(n){const t=Ee(e,re.r.NORMAL).data;for(let e=0;e<n.length;e+=3){const r=n[e+1];t[e+1]=-n[e+2],t[e+2]=r}}if(r){const t=Ee(e,re.r.POSITION).data;for(let e=0;e<r.length;e+=3){const n=r[e+1];t[e+1]=-r[e+2],t[e+2]=n}}}(i),{components:[{attributes:i,objectAndLayerIdColor:void 0,transformation:null,materialId:t,visibilities:new Uint8Array([1]),objectIds:new Uint32Array([-1])}],minScreenSpaceRadius:e.minScreenSpaceRadius}}))});switch(e){case"cone":return r(Ue,(e=>function(e,t,r,n,i=!0,s=!0){let a=0;const o=t,l=e;let c=(0,fe.fA)(0,a,0),d=(0,fe.fA)(0,a+l,0),u=(0,fe.fA)(0,-1,0),h=(0,fe.fA)(0,1,0);n&&(a=l,d=(0,fe.fA)(0,0,0),c=(0,fe.fA)(0,a,0),u=(0,fe.fA)(0,1,0),h=(0,fe.fA)(0,-1,0));const m=[d,c],f=[u,h],p=r+2,y=Math.sqrt(l*l+o*o);if(n)for(let e=r-1;e>=0;e--){const t=e*(2*Math.PI/r),n=(0,fe.fA)(Math.cos(t)*o,a,Math.sin(t)*o);m.push(n);const i=(0,fe.fA)(l*Math.cos(t)/y,-o/y,l*Math.sin(t)/y);f.push(i)}else for(let e=0;e<r;e++){const t=e*(2*Math.PI/r),n=(0,fe.fA)(Math.cos(t)*o,a,Math.sin(t)*o);m.push(n);const i=(0,fe.fA)(l*Math.cos(t)/y,o/y,l*Math.sin(t)/y);f.push(i)}const g=new Array,_=new Array;if(i){for(let e=3;e<m.length;e++)g.push(1),g.push(e-1),g.push(e),_.push(0),_.push(0),_.push(0);g.push(m.length-1),g.push(2),g.push(1),_.push(0),_.push(0),_.push(0)}if(s){for(let e=3;e<m.length;e++)g.push(e),g.push(e-1),g.push(0),_.push(e),_.push(e-1),_.push(1);g.push(0),g.push(2),g.push(m.length-1),_.push(1),_.push(2),_.push(f.length-1)}const b=(0,pe.oe)(3*p);for(let e=0;e<p;e++)b[3*e]=m[e][0],b[3*e+1]=m[e][1],b[3*e+2]=m[e][2];const v=(0,pe.oe)(3*p);for(let e=0;e<p;e++)v[3*e]=f[e][0],v[3*e+1]=f[e][1],v[3*e+2]=f[e][2];return[[re.r.POSITION,new te.n(b,g,3,!0)],[re.r.NORMAL,new te.n(v,_,3,!0)]]}(1,.5,e,!1)),!0);case"sphere":return r([{tesselation:0,minScreenSpaceRadius:0},{tesselation:1,minScreenSpaceRadius:8},{tesselation:2,minScreenSpaceRadius:16},{tesselation:3,minScreenSpaceRadius:50},{tesselation:4,minScreenSpaceRadius:250}],(e=>function(e,t,r){const n=e;let i,s;if(r)i=[0,-1,0,1,0,0,0,0,1,-1,0,0,0,0,-1,0,1,0],s=[0,1,2,0,2,3,0,3,4,0,4,1,1,5,2,2,5,3,3,5,4,4,5,1];else{const e=n*(1+Math.sqrt(5))/2;i=[-n,e,0,n,e,0,-n,-e,0,n,-e,0,0,-n,e,0,n,e,0,-n,-e,0,n,-e,e,0,-n,e,0,n,-e,0,-n,-e,0,n],s=[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1]}for(let t=0;t<i.length;t+=3)_e.scale(i,t,e/_e.length(i,t));let a={};function o(t,r){t>r&&([t,r]=[r,t]);const n=t.toString()+"."+r.toString();if(a[n])return a[n];let s=i.length;return i.length+=3,_e.add(i,3*t,i,3*r,i,s),_e.scale(i,s,e/_e.length(i,s)),s/=3,a[n]=s,s}for(let e=0;e<t;e++){const e=s.length,t=new Array(4*e);for(let r=0;r<e;r+=3){const e=s[r],n=s[r+1],i=s[r+2],a=o(e,n),l=o(n,i),c=o(i,e),d=4*r;t[d]=e,t[d+1]=a,t[d+2]=c,t[d+3]=n,t[d+4]=l,t[d+5]=a,t[d+6]=i,t[d+7]=c,t[d+8]=l,t[d+9]=a,t[d+10]=l,t[d+11]=c}s=t,a={}}const l=(0,pe.Wz)(i);for(let e=0;e<l.length;e+=3)_e.normalize(l,e);return[[re.r.POSITION,new te.n((0,pe.Wz)(i),s,3,!0)],[re.r.NORMAL,new te.n(l,s,3,!0)]]}(.5,e,!0)));case"cube":case"inverted-cone":case"cylinder":case"tetrahedron":case"diamond":throw new Error("not implemented");default:return}}function Ee(e,t){let r=e.get(t);return r&&!r.exclusive&&(r={...r,exclusive:!0,data:(0,Fe.S)(r.data)},e.set(t,r)),r}const Ue=[{tesselation:6,minScreenSpaceRadius:0},{tesselation:18,minScreenSpaceRadius:7},{tesselation:64,minScreenSpaceRadius:65}];var ke=r(89192),Le=r(51768),Be=r(74810);class Ve{constructor(e,t){this._loaded=!1,this._loadingPromise=null,this._primitiveMaterialId=null,this._lodRendererId=null,this._context=null,this._symbolLayer=null,this._primitive=null,this._context=t,this._symbolLayer=e}_destroy(){this._lodRendererId=null,this._primitiveMaterialId=null}get loaded(){return this._loaded}get _isPrimitive(){return null!=this._primitive}load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){const e=this._context.renderCommandContext,t=this._getLayerOpacity();let r={usePBR:!0,isSchematic:!0,mrrFactors:Be.Bt,ambient:S.Un,diffuse:S.Un,hasSlicePlane:!1,castShadows:!0,layerOpacity:t,offsetTransparentBackfaces:!1,screenSizePerspective:{}};if(r.externalColor=C.Un,r.isInstanced=!0,this._isPrimitive){const e=new Le.fs;e.layerOpacity=t,r={...r,cullFace:ze((0,Le.ty)(e))}}const n=await e.createMaterial({type:"default",parameters:r}),i=this._symbolLayer.resource;this._primitive=i&&function(e){switch(e){case"sphere":case"cube":case"diamond":case"cylinder":case"cone":case"inverted-cone":case"tetrahedron":return!0}return!1}(i?.primitive)?i.primitive:ue.r;const s=Me(this._primitive,n);this._lodRendererId=await e.createLodRenderer(s),this._primitiveMaterialId=n,this._loaded=!0}async createDestroyCommand(){const{_lodRendererId:e,_primitiveMaterialId:t,_context:r}=this,n=r.renderCommandContext,i=[];return null!=e&&i.push(n.destroyLodRenderer(e)),null!=t&&i.push(n.destroyMaterial(t)),new y(n,n.mergeRenderCommandBuffers(i),[()=>this._destroy()])}async createAddCommand(e){const t=this._context,{renderCommandContext:r,mainThreadDelegate:n}=t;if(null==this._lodRendererId)throw new Error("expected lod renderer id to not be null");const{featureCount:i}=e;if(0===i)return t.createPipelineCommand();const s=this._isPrimitive,a=this._primitive||ue.r,o=(0,O.vt)((0,he.Fq)(a)),l=(0,S.ci)((0,O.Ej)(o)),c=(0,S.ci)((0,he.Bb)(l,{isPrimitive:s,width:100,depth:null,height:null})),d=new Float64Array(16*i),u=new Float64Array(16*i),h=j(e),m=await n.applyElevationAlignmentTo(h);for(let e=0;e<i;++e){const t=e,r=m[3*e+0],n=m[3*e+1],i=m[3*e+2],s=this._computeGlobalTransform(r,n,i,this._context.viewSpatialReference,qe),a=this._computeLocalTransform(c,l,Ne);this._writeMatrixToTypedBuffer(d,t,a),this._writeMatrixToTypedBuffer(u,t,s)}const f=z(e),p=new Uint8Array(i);e.getVisibilityArray(p);const y={featureIds:new Uint32Array(f),visibility:p,localTransforms:d,globalTransforms:u};return t.createPipelineCommand(r.addLodInstances(this._lodRendererId,e.id,y))}async createRemoveCommand(e){const{_context:t,_lodRendererId:r}=this,n=t.renderCommandContext;return null==r?t.createPipelineCommand():t.createPipelineCommand(n.removeLodInstances(r,e))}async createUpdateVisibilityCommand(e){const{_lodRendererId:t,_context:r}=this,n=r.renderCommandContext;if(null==t)return r.createPipelineCommand();const i=new Uint8Array(e.featureCount);return e.getVisibilityArray(i),r.createPipelineCommand(n.updateVisibility(t,e.id,i))}async createUpdateLayerViewOpacityCommand(e){const{_context:t}=this,r=t.renderCommandContext,n=this._primitiveMaterialId;if(null==n)return t.createPipelineCommand();const i=this._getLayerOpacity();let s={layerOpacity:i};if(this._isPrimitive){const e=new Le.fs;e.layerOpacity=i,s={...s,cullFace:ze((0,Le.ty)(e))}}return t.createPipelineCommand(r.updateMaterial({type:"default",materialId:n,parameters:s}))}async createUpdateElevationCommand(e){const{_context:t,_lodRendererId:r}=this,{renderCommandContext:n,mainThreadDelegate:i}=t,{featureCount:s,id:a}=e;if(null==r||0===s)return t.createPipelineCommand();const o=new Float64Array(16*s),l=j(e),c=await i.applyElevationAlignmentTo(l);for(let e=0;e<s;++e){const t=e,r=c[3*e+0],n=c[3*e+1],i=c[3*e+2],s=this._computeGlobalTransform(r,n,i,this._context.viewSpatialReference,qe);this._writeMatrixToTypedBuffer(o,t,s)}return t.createPipelineCommand(n.updateLodInstancesData(r,a,o))}_writeMatrixToTypedBuffer(e,t,r){let n=16*t;for(let t=0;t<16;t++)e[n++]=r[t]}_computeGlobalTransform(e,t,r,n,i){return je[0]=e,je[1]=t,je[2]=r,(0,de.l)(n,je,i,this._context.renderSpatialReference),i}_computeLocalTransform(e,t,r){return(0,A.D_)(r),this._applyObjectScale(e,t,r),r}_applyObjectScale(e,t,r){const n=function(e=S.Un,t,r,n=1){const i=new Array(3);if(null==t||null==r)i[0]=1,i[1]=1,i[2]=1;else{let n,s=0;for(let a=2;a>=0;a--){const o=e[a],l=null!=o,c=0===a&&!n&&!l,d=r[a];let u;"symbol-value"===o||c?u=0!==d?t[a]/d:1:l&&"proportional"!==o&&isFinite(o)&&(u=0!==d?o/d:1),null!=u&&(i[a]=u,n=u,s=Math.max(s,Math.abs(u)))}for(let e=2;e>=0;e--)null==i[e]?i[e]=n:0===i[e]&&(i[e]=.001*s)}for(let e=2;e>=0;e--)i[e]/=n;return(0,S.ci)(i)}(e,e,t,this._context.renderCoordsHelper.unitInMeters);1===n[0]&&1===n[1]&&1===n[2]||(0,A.hs)(r,r,n)}_getLayerOpacity(){return this._context.layerViewInfo.fullOpacity}}function ze(e){return e?ke.s2.None:ke.s2.Back}const je=(0,S.vt)(),Ne=(0,x.vt)(),qe=(0,x.vt)();class He{constructor(e,t){this._symbols=new Array,this._featureDataPartitioning=new Map,this._loaded=!1,this._loadingPromise=null,this._renderer=null,this._context=t,this._renderer=e}async load(){return null==this._loadingPromise&&(this._loadingPromise=this._load()),this._loadingPromise}async _load(){this._symbols[0]=new ne(w(),this._context),this._symbols[1]=new Ve(new b.A,this._context),this._loaded=!0}get loaded(){return this._loaded}async createAddCommand(e){const t=this._context,r=this._partition(e),n=await Promise.all(r.map((async({index:e,features:t})=>{const r=await this._provisionSymbol(e);return await(r?.createAddCommand(t))}))),i=t.joinPipelineCommands(n);return i.appendPipelineStateCommand((()=>this._featureDataPartitioning.set(e.id,r))),i}async createRemoveCommand(e){const{_featureDataPartitioning:t,_context:r}=this,n=r.renderCommandContext,i=t.get(e);if(null==i)return new y(n,n.createRenderCommandBuffer(),[]);const s=await Promise.all(i.map((async({index:e,features:t})=>{const r=this._getLoadedSymbol(e);return await(r?.createRemoveCommand(t.id))}))),a=r.joinPipelineCommands(s);return a.appendPipelineStateCommand((()=>t.delete(e))),a}async createUpdateVisibilityCommand(e){const{_featureDataPartitioning:t,_context:r}=this,n=r.renderCommandContext,i=t.get(e.id);if(null==i)return new y(n,n.createRenderCommandBuffer(),[]);const s=await Promise.all(i.map((async({index:e,features:t})=>{const r=this._getLoadedSymbol(e);return await(r?.createUpdateVisibilityCommand(t))})));return r.joinPipelineCommands(s)}async createUpdateLayerViewOpacityCommand(e){const t=this._context,r=[];for(let t=0;t<this._symbols.length;++t){const n=this._symbols[t];null!=n&&n.loaded&&r.push(n.createUpdateLayerViewOpacityCommand(e))}const n=await Promise.all(r);return t.joinPipelineCommands(n)}async createUpdateElevationCommand(){const{_featureDataPartitioning:e,_context:t}=this,r=[];for(const t of e.values()){const e=t.map((async({index:e,features:t})=>{const r=this._getLoadedSymbol(e);return await(r?.createUpdateElevationCommand(t))}));r.push(...e)}const n=await Promise.all(r);return t.joinPipelineCommands(n)}async createDestroyCommand(){const{_featureDataPartitioning:e,_context:t}=this,r=[];for(const t of e.keys())r.push(this.createRemoveCommand(t));for(const e of this._symbols)r.push(e.createDestroyCommand());const n=await Promise.all(r);return t.joinPipelineCommands(n)}async _provisionSymbol(e){if(null==e)return null;const t=this._symbols[e];return t?(t.loaded||await t.load(),t):null}_getLoadedSymbol(e){if(null==e)return null;const t=this._symbols[e];return null!=t&&t.loaded?t:null}_partition(e){const t=z(e);if(null==t)throw new Error("unable to fetch objectIds");const{featureCount:r}=e,n=[[],[]];for(let e=0;e<r;++e)n[t[e]%2].push(e);return n.map(((t,r)=>new Ge(r,e.subset(new Uint32Array(t))))).filter((e=>e.features.featureCount>0))}}class Ge{constructor(e,t){this.index=e,this.features=t}}class $e{constructor(e,t,r,n,i,s,a){this.viewSpatialReference=e,this.renderSpatialReference=t,this.mainThreadDelegate=r,this.renderCoordsHelper=n,this.renderCommandContext=i,this.layerInfo=s,this.layerViewInfo=a,this.symbolRendererFactory=new Ye(this)}createPipelineCommand(e=this.renderCommandContext.createRenderCommandBuffer(),t=[]){return new y(this.renderCommandContext,e,t)}joinPipelineCommands(e){return 0===e.length?this.createPipelineCommand():e.filter((e=>null!=e)).reduce(((e,t)=>(e.append(t),e)))}}class Ye{constructor(e){this.context=e}createSymbolRendererFromJSON(e){const t=(0,p.L)(e??Ze)??void 0;if(!t)throw new Error("Failed to create renderer");const r=t.type;switch(r){case"simple":return new oe(t,this.context);case"unique-value":return new He(t,this.context);default:return console.warn(`Unable to create symbolrenderer for renderer of ${r}`),this.createSymbolRendererFromJSON(Ze)}}createSymbolRendererFromSymbol(e){const t=e?.type;switch(t){case"point-3d":return new ae(e,this.context);case"picture-marker":case"simple-marker":return new ne(w(),this.context);default:return console.warn(`Unable to create symbolrenderer for symbol of ${t}`),null}}createSymbolRendererFromSymbolLayer(e){const t=e.type;return"icon"===t?new ne(e,this.context):(console.warn(`Unable to create symbolrenderer for symbolLayer of ${t}`),null)}}const Ze={type:"simple"};var Je=r(69622),We=r(60999),Xe=r(32587),Qe=r(11932),Ke=r(24326);function et(e=""){return`${e}${(0,Ke.c)()}`}r(37539),new Float64Array(3);class tt{constructor(e,t){this._parent=e,this._subsetIndices=t,this.id=et(`featureDataSubset-${e.id}-`)}get tileId(){return this._parent.tileId}get extent(){return this._parent.extent}get featureCount(){return this._subsetIndices.length}get usedMemory(){return this._parent.usedMemory+De.qK+this._subsetIndices.byteLength}get isFullyEnabled(){for(const e of this._subsetIndices)if(!this._parent.getEnabled(e))return!1;return!0}getObjectId(e){return this._parent.getObjectId(this._subsetIndices[e])}getAttribute(e,t){return this._parent.getAttribute(this._subsetIndices[e],t)}getAttributeAsTimestamp(e,t){return this._parent.getAttribute(this._subsetIndices[e],t)}getAttributes(e){return this._parent.getAttributes(this._subsetIndices[e])}getCoordinates(e,t,r){return this._parent.getCoordinates(this._subsetIndices[e],t,r)}getOptimizedGeometry(e){return this._parent.getOptimizedGeometry(this._subsetIndices[e])}getCentroid(e,t){return this._parent.getCentroid(this._subsetIndices[e],t)}getBounds(e){return this._parent.getBounds(this._subsetIndices[e])}getBoundingBox(e){return this._parent.getBoundingBox(this._subsetIndices[e])}getObjectIdsArray(e,t,r){return this._parent.getObjectIdsArray(e,this._translatedIndices(t),r)}getCoordinatesArray(e,t,r){return this._parent.getCoordinatesArray(e,this._translatedIndices(t),r)}objectIds(e){return this._parent.objectIds(this._translatedIndices(e))}subset(e){const{_subsetIndices:t}=this,r=new Uint32Array(e.length);for(let n=0;n<r.length;++n)r[n]=t[e[n]];return new tt(this._parent,r)}disableObjectIds(e){if(0===e.size)return;const{featureCount:t}=this,r=new Array;for(let n=0;n<t;++n)this.getEnabled(n)&&e.has(this.getObjectId(n))&&r.push(n);if(0!==r.length)for(const e of r)this.setEnabled(e,!1)}setEnabled(e,t){this._parent.setEnabled(this._subsetIndices[e],t)}getEnabled(e){return this._parent.getEnabled(this._subsetIndices[e])}enableAll(){const{_subsetIndices:e,_parent:t}=this;for(const r of e)t.setEnabled(r,!0)}getVisibilityArray(e,t,r){return this._parent.getVisibilityArray(e,this._translatedIndices(t),r)}enabledObjectIds(e){return this._parent.enabledObjectIds(this._translatedIndices(e))}*_translatedIndices(e){const{_subsetIndices:t}=this;if(null!=e)for(const r of e)yield t[r];else yield*t}}class rt{constructor(e){this._tile=e,this.id=et(`featureData-${e.id}-`),this._enabled=new Array(e.featureCount).fill(!0)}get tileId(){return this._tile.id}get featureCount(){return this._tile.featureCount}get usedMemory(){return De.qK+(0,De.$B)(this.id)}get extent(){return this._tile.descriptor.extent}get isFullyEnabled(){return this._enabled.every((e=>e))}getObjectId(e){return this._tile.getObjectId(e)}getAttribute(e,t){return this._tile.getAttribute(e,t)}getAttributeAsTimestamp(e,t){return this._tile.getAttribute(e,t)}getAttributes(e){return this._tile.getAttributes(e)}getCoordinates(e,t,r){return this._tile.getCoordinates(e,t,r)}getOptimizedGeometry(e){return this._tile.getOptimizedGeometry(e)}getCentroid(e,t){return this._tile.getCentroid(e,t)}getBounds(e){return this._tile.getBounds(e)}getBoundingBox(e){return this._tile.getBoundingBox(e)}getObjectIdsArray(e,t,r){return this._tile.getObjectIdsArray(e,t,r)}getCoordinatesArray(e,t,r){return this._tile.getCoordinatesArray(e,t,r)}objectIds(e){return this._tile.objectIds(e)}subset(e){return new tt(this,e)}disableObjectIds(e){if(0===e.size)return;const{_enabled:t}=this,r=new Array;for(const n of this._allFeatureIndices())t[n]&&e.has(this.getObjectId(n))&&r.push(n);if(0!==r.length)for(const e of r)t[e]=!1}setEnabled(e,t){this._enabled[e]=t}getEnabled(e){return this._enabled[e]}enableAll(){this._enabled.fill(!0)}getVisibilityArray(e,t=this._allFeatureIndices(),r=0){const{_enabled:n}=this;for(const i of t)e[r++]=Number(n[i]);return r}*enabledObjectIds(e=this._allFeatureIndices()){const{_enabled:t}=this;for(const r of e)t[r]&&(yield this.getObjectId(r))}*_allFeatureIndices(){const{featureCount:e}=this;for(let t=0;t<e;++t)yield t}}let nt=class extends Je.A{constructor(e){super(e),this.extent=null,this._tileHandles=new Xe.A,this._wanted=new Xe.A,this._updateRequested=!1,this._synchronizationTask=null,this._requestedTiles=new Array}destroy(){this._tileHandles.clear(),this._wanted.clear()}get updating(){return this._updateRequested||!(this._synchronizationTask?.finished??1)}get _boundingRect(){const{extent:e}=this;return null==e?null:(0,R.VY)(e)}get _missingTiles(){const e=new Array,t=this._wanted,r=this._tileHandles;for(const n of t.values())null==r.get(n.id)?.featureData&&e.push(n);return e}onTileTreeChange({tiles:e}){this._requestedTiles=e,this._scheduleTilesSync()}_scheduleTilesSync(){if(this._updateRequested)return;this._updateRequested=!0;const e=this._synchronizationTask,t=(0,We.UT)((async()=>{try{await(0,a.C_)((()=>e?.finished??!0)),await(0,Qe.NO)(),this._updateRequested=!1,await this._synchronizeTiles()}finally{this._synchronizationTask===t&&(this._synchronizationTask=null)}}));this._synchronizationTask=t}async _synchronizeTiles(){const e=this._requestedTiles,t=this._tileHandles,r=new Array;for(const n of e)t.has(n.id)||r.push(n);const n=new Array;for(const r of t.values()){const{id:t}=r;e.every((e=>e.id!==t))&&n.push(r.descriptor)}const i=this._tileHandles,{_boundingRect:s}=this,a=null!=s?r.filter((e=>(0,R.HY)(s,e.extent))):r,o=this._wanted,l=new Array;for(const{id:e}of n)o.delete(e);for(const e of a)o.set(e.id,e);const c=this._missingTiles;for(const e of n){const{id:t}=e;if(c.some((t=>it(t,e)||it(e,t))))continue;const r=i.get(t);null!=r&&l.push(this._removeTile(r))}for(const e of a)l.push(this._addTile(e));const d=await Promise.allSettled(l);for(const e of d)"rejected"===e.status&&console.error(e.reason)}forEachTile(e){for(const t of this._tileHandles.values()){const r=t.featureData;null!=r&&e(r)}}*loadedTiles(){for(const e of this._tileHandles.values()){const t=e.featureData;null!=t&&(yield t)}}async _removeTile(e){e.loadTask.abort(),this._tileHandles.delete(e.id),this._validate();const{featureData:t}=e;if(null!=t){const e={stack:[],error:void 0,hasError:!1};try{(0,n.b)(e,await this.tileLocks.lock([t.tileId]),!1);const r=await this.createRemoveCommand(t.id);await(r?.execute())}catch(t){e.error=t,e.hasError=!0}finally{(0,n.c)(e)}}}async _addTile(e){const{_tileHandles:t}=this,r=t.get(e.id);if(null!=r){if(!at(r)||r.featureData.isFullyEnabled)return;return r.featureData.enableAll(),void await this._onTileLoad(r)}const n=new st(e,(0,We.UT)((async t=>{const r=await this.loadTile(e,t);return(0,s.Te)(t),new rt(r)})));this._tileHandles.set(n.id,n);try{await n.loadTask.promise}catch(e){return void(0,s.jH)(e)}(function(e){if(!at(e))throw new Error})(n),await this._onTileLoad(n)}async _onTileLoad(e){const t={stack:[],error:void 0,hasError:!1};try{const{_wanted:r,_tileHandles:i,_missingTiles:s}=this,a=e.descriptor,o=new Array,l=new Array,c=new Array,d=new Set;for(const t of i.values()){if(t===e)continue;const{descriptor:n,id:c}=t;if(r.has(c)||s.some((e=>it(e,n)||it(n,e)))){if(at(t)){if(it(a,n)){const e=t.featureData;for(const t of e.objectIds())d.add(t)}if(it(n,a)){const{featureData:e}=t;l.push(e)}}}else{i.delete(c),t.loadTask.abort();const{featureData:e}=t;null!=e&&o.push(e)}}d.size>0&&(e.featureData.disableObjectIds(d),this._validateRemoval(e.featureData,d)),this._validate(),c.push(e.featureData);const u=[...c,...o,...l].map((e=>e.tileId));if((0,n.b)(t,await this.tileLocks.lock(u),!1),0!==l.length){const t=e.featureData,r=new Set(t.objectIds());for(const e of l)e.disableObjectIds(r),this._validateRemoval(e,r)}const h=o.map((e=>this.createRemoveCommand(e.id))),m=c.map((e=>this.createAddCommand(e))),f=l.map((e=>this.createUpdateCommand(e))),p=function(e){return 0===e.length?null:e.reduce(((e,t)=>(e.append(t),e)))}((await Promise.all([...h,...m,...f])).filter(Pe.Ru));await(p?.execute())}catch(e){t.error=e,t.hasError=!0}finally{(0,n.c)(t)}}_validate(){if(!(0,l.A)("feature-pipeline-3d-test-validation"))return;const e=new Array;for(const t of this._tileHandles.values()){if(!at(t))continue;const{featureData:r}=t;e.push({featureData:r,objectIds:new Set(r.enabledObjectIds())})}for(let t=0;t<e.length;++t){const{featureData:r,objectIds:n}=e[t];for(let i=t+1;i<e.length;++i){const{featureData:t,objectIds:s}=e[i];for(const e of s)if(n.has(e))throw new Error(`${r.id} and ${t.id} both contain ${e}.`)}}}_validateRemoval(e,t){if((0,l.A)("feature-pipeline-3d-test-validation"))for(const r of e.enabledObjectIds())if(t.has(r))throw new Error(`Failed to remove ${r} from ${e.id}!`)}};function it({lij:[e,t,r]},{lij:[n,i,s]}){const a=n-e;return a>=0&&t===i>>a&&r===s>>a}(0,n._)([(0,o.MZ)()],nt.prototype,"updating",null),(0,n._)([(0,o.MZ)({constructOnly:!0})],nt.prototype,"loadTile",void 0),(0,n._)([(0,o.MZ)({constructOnly:!0})],nt.prototype,"createAddCommand",void 0),(0,n._)([(0,o.MZ)({constructOnly:!0})],nt.prototype,"createRemoveCommand",void 0),(0,n._)([(0,o.MZ)({constructOnly:!0})],nt.prototype,"createUpdateCommand",void 0),(0,n._)([(0,o.MZ)({constructOnly:!0})],nt.prototype,"tileLocks",void 0),(0,n._)([(0,o.MZ)()],nt.prototype,"extent",void 0),(0,n._)([(0,o.MZ)()],nt.prototype,"_boundingRect",null),(0,n._)([(0,o.MZ)()],nt.prototype,"_missingTiles",null),(0,n._)([(0,o.MZ)()],nt.prototype,"_updateRequested",void 0),(0,n._)([(0,o.MZ)()],nt.prototype,"_synchronizationTask",void 0),nt=(0,n._)([(0,c.$)("esri.views.3d.layers.graphics.pipeline.Tile3DManager")],nt);class st{constructor(e,t){this.descriptor=e,this.loadTask=t}get id(){return this.descriptor.id}get featureData(){return this.loadTask.value}}function at(e){return null!=e.featureData}var ot=r(36563);class lt{constructor(){this._previousActions=new Map}async lock(e){const{_previousActions:t}=this,r=e.map((e=>t.get(e))).filter(Pe.Ru),n=Promise.allSettled(r),i=(0,s.Tw)(),a=(0,ot.hA)((()=>i.resolve())),o=i.promise.finally((()=>{for(const r of e)t.get(r)===o&&t.delete(r)}));for(const r of e)t.set(r,o);return await n,(0,ot.Bf)(a)}}var ct=r(75503),dt=r(27647),ut=r(92722);class ht{constructor(e,t){this._index=e,this._view=t}get usedMemory(){return De.qK+De.RS}getObjectId(){return this._view.getObjectId(this._index)}getAttribute(e){return this._view.getAttribute(this._index,e)}getAttributeAsTimestamp(e){return this._view.getAttributeAsTimestamp(this._index,e)}getAttributes(){return this._view.getAttributes(this._index)}getOptimizedGeometry(){return this._view.getOptimizedGeometry(this._index)}getCentroid(e){return this._view.getCentroid(this._index,e)}getBounds(){return this._view.getBounds(this._index)}getBoundingBox(){return this._view.getBoundingBox(this._index)}cloneWithGeometry(e){return new mt(this._index,this._view,e)}}class mt extends ht{constructor(e,t,r){super(e,t),this._geometryOverride=r}getOptimizedGeometry(){return this._geometryOverride}getCentroid(e){return(0,dt.Q)(new ut.A,this._geometryOverride,e.hasZ,e.hasM)}}class ft{constructor(e,t){this.featureData=e,this.bounds=t}}class pt{constructor(){this._tileBounds=new Map,this.events=new i.A,this.featureAdapter=yt.shared}get usedMemory(){return De.qK+De.qK*this._tileBounds.size}addTile(e){const{featureCount:t}=e;if(0===t)return;const r=new ct.w(9,(t=>e.getBounds(t))),n=new Array;for(let e=0;e<t;++e)n[e]=e;r.load(n),this._tileBounds.set(e.id,new ft(e,r)),this.events.emit("changed")}removeTile(e){this._tileBounds.delete(e),this.events.emit("changed")}clear(){this._tileBounds.clear(),this.events.emit("changed")}forEach(e){for(const{featureData:t,bounds:r}of this._tileBounds.values())r.all((r=>{t.getEnabled(r)&&e(new ht(r,t))}))}forEachInBounds(e,t){gt.minX=e[0],gt.minY=e[1],gt.maxX=e[2],gt.maxY=e[3];for(const{featureData:e,bounds:r}of this._tileBounds.values())r.search(gt,(r=>{e.getEnabled(r)&&t(new ht(r,e))}))}forEachBounds(e,t){for(const r of e)t(r.getBoundingBox())}getFullExtent(e){let t=1/0,r=1/0,n=-1/0,i=-1/0;for(const{bounds:e}of this._tileBounds.values()){const{minX:s,minY:a,maxX:o,maxY:l}=e.toJSON();t=Math.min(t,s),r=Math.min(r,a),n=Math.min(n,o),i=Math.min(i,l)}return{xmin:t,ymin:r,xmax:n,ymax:i,spatialReference:e}}}class yt{static{this.shared=new yt}getObjectId(e){return e.getObjectId()}getAttribute(e,t){return e.getAttribute(t)}getAttributeAsTimestamp(e,t){return e.getAttributeAsTimestamp(t)}getAttributes(e){return e.getAttributes()}getGeometry(e){return e.getOptimizedGeometry()}getCentroid(e,t){return e.getCentroid(t)}cloneWithGeometry(e,t){return e.cloneWithGeometry(t)}}const gt=new ct.E;var _t=r(80893);class bt{constructor(e,t,r){this.descriptor=e,this._pages=t,this._pageSize=r;const n=De.ez+t.reduce(((e,{usedMemory:t})=>e+t),0),i=3*De.RS;this.usedMemory=De.qK+n+i,this.featureCount=t.reduce(((e,t)=>e+t.featureCount),0)}get id(){return this.descriptor.id}getObjectId(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getObjectId(r)}getAttribute(e,t){const{pageIndex:r,featurePageIndex:n}=this._translateIndex(e);return this._pages[r].getAttribute(n,t)}getAttributeAsTimestamp(e,t){const{pageIndex:r,featurePageIndex:n}=this._translateIndex(e);return this._pages[r].getAttributeAsTimestamp(n,t)}getAttributes(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getAttributes(r)}getCoordinates(e,t,r){const{pageIndex:n,featurePageIndex:i}=this._translateIndex(e);this._pages[n].getCoordinates(i,t,r)}getOptimizedGeometry(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getOptimizedGeometry(r)}getCentroid(e,t){const{pageIndex:r,featurePageIndex:n}=this._translateIndex(e);return this._pages[r].getCentroid(n,t)}getBounds(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getBounds(r)}getBoundingBox(e){const{pageIndex:t,featurePageIndex:r}=this._translateIndex(e);return this._pages[t].getBoundingBox(r)}getObjectIdsArray(e,t=this._allFeatureIndices(),r=0){let n=r;for(const{page:r,indices:i}of this._batchPageIndices(t))n=r.getObjectIdsArray(e,i,n);return n}getCoordinatesArray(e,t=this._allFeatureIndices(),r=0){let n=r;for(const{page:r,indices:i}of this._batchPageIndices(t))n=r.getCoordinatesArray(e,i,n);return n}*objectIds(e=this._allFeatureIndices()){for(const{page:t,indices:r}of this._batchPageIndices(e))for(const e of t.objectIds(r))yield e}*_allFeatureIndices(){const{featureCount:e}=this;for(let t=0;t<e;++t)yield t}_translateIndex(e){const{_pageSize:t}=this;return{pageIndex:Math.floor(e/t),featurePageIndex:e%t}}*_batchPageIndices(e){const t=new Array;{let r=0,n=new Array;for(const i of e){const{pageIndex:e,featurePageIndex:s}=this._translateIndex(i);r!==e&&(0!==n.length&&t.push({pageIndex:r,indices:n}),r=e,n=[]),n.push(s)}0!==n.length&&t.push({pageIndex:r,indices:n})}const{_pages:r}=this;for(const{pageIndex:e,indices:n}of t)yield{page:r[e],indices:n}}}var vt=r(49186),wt=r(51624),xt=r(62577),St=r(95466),Ct=r(53655);class Tt{constructor(e){this._reader=new wt.A(new Uint8Array(e),new DataView(e)),this._index=function(e){for(;e.next();){if(2===e.tag())return It(e.getMessage());e.skip()}Ot()}(this._reader)}get featureCount(){return this._index.featureIndices.length}get exceededTransferLimit(){return this._index.exceededTransferLimit}get usedMemory(){return this._reader.usedMemory}getObjectId(e){return this.getAttribute(e,this._index.objectIdFieldName)}getAttribute(e,t){const{_index:{fieldsIndex:r,attributeIndices:n}}=this,i=r.get(t)?.index;if(null==i)return;const s=n[e*r.fields.length+i],a=this._reader;return a.move(s),Rt(a)}getAttributeAsTimestamp(e,t){const r=this.getAttribute(e,t);return"string"==typeof r?new Date(r).getTime():"number"==typeof r||null==r?r:null}getAttributes(e){const{_index:{fieldsIndex:t,attributeIndices:r}}=this,n=e*t.fields.length,i=this._reader,s={};for(const e of t.fields){const t=r[n+e.index];i.move(t),s[e.name]=Rt(i)}return s}getCoordinates(e,t,r=0){const n=this._reader,{transform:i,featureIndices:s}=this._index,{scale:a,translate:o}=i;n.move(s[e]),this._readCoordinates(a,o,t,r)}getOptimizedGeometry(e){const t=(0,S.vt)();return this.getCoordinates(e,t),new ut.A([],t)}getCentroid(e,{hasZ:t,hasM:r}){this.getCoordinates(e,Pt);const[n,i,s]=Pt,a=[n,i];return t&&(a[3]=s),r&&(a[t?4:3]=0),new ut.A([],a)}getBounds(e){this.getCoordinates(e,Pt);const[t,r]=Pt,n=new ct.E;return n.minX=t,n.minY=r,n.maxX=t,n.maxY=r,n}getBoundingBox(e){this.getCoordinates(e,Pt);const[t,r,n]=Pt;return(0,O.fA)(t,r,n,t,r,n)}getObjectIdsArray(e,t=this._allFeatureIndices(),r=0){const n=this._reader,{objectIdFieldName:i,attributeIndices:s,fieldsIndex:a}=this._index,o=a.get(i).index,l=a.fields.length;for(const i of t){const t=s[i*l+o];n.move(t),e[r++]=Rt(n)}return r}getCoordinatesArray(e,t=this._allFeatureIndices(),r=0){const n=this._reader,{transform:i,featureIndices:s}=this._index,{scale:a,translate:o}=i;for(const i of t){const t=s[i];n.move(t),r=this._readCoordinates(a,o,e,r)}return r}*objectIds(e=this._allFeatureIndices()){const t=this._reader,{objectIdFieldName:r,attributeIndices:n,fieldsIndex:i}=this._index,s=i.get(r).index,a=i.fields.length;for(const r of e){const e=n[r*a+s];t.move(e),yield Rt(t)}}*_allFeatureIndices(){const{featureCount:e}=this;for(let t=0;t<e;++t)yield t}_readCoordinates([e,t,r],[n,i,s],a,o){const l=this._reader,c=l.getLength(),d=l.pos()+c;for(;l.pos()<d&&l.next();)switch(l.tag()){case 2:{const c=l.getLength(),d=l.pos()+c;for(;l.pos()<d&&l.next();)3===l.tag()?(l.getUInt32(),a[o++]=n+e*l.getSInt64(),a[o++]=i+t*l.getSInt64(),a[o++]=s+r*l.getSInt64()):l.skip();break}default:l.skip()}return o}}function It(e){for(;e.next();){if(1===e.tag())return At(e.getMessage());e.skip()}Ot()}function At(e){let t,r,n=!1,i=!1,s=0;const a=new Array,o=new Array,l=new Array;for(;e.next();)switch(e.tag()){case 1:r=e.getString();break;case 7:0!==e.getEnum()&&Ot();break;case 9:n=e.getBool()??!1;break;case 12:t=(0,xt.Q1)(e.processMessage(Ct.ae));break;case 13:{const t=e.processMessage(Ct.cn);t.index=s++,a.push(t);break}case 15:{o.push(e.pos());const t=e.getUInt32(),r=e.pos()+t;for(;e.pos()<r&&e.next();)1===e.tag()?(l.push(e.pos()),e.skip()):e.skip();break}case 10:i=e.getBool()??!1;break;default:e.skip()}const c=new St.A(a);return null!=t&&i&&null!=r&&c.has(r)||Ot(),{transform:t,exceededTransferLimit:n,fieldsIndex:c,objectIdFieldName:r,featureIndices:o,attributeIndices:l}}function Ot(){const e=new vt.A("pbf-parsing-failed","Error while parsing PBF",new Error);throw console.error(e),e}function Rt(e){const t=e.getLength(),r=e.pos()+t;for(;e.pos()<r&&e.next();)switch(e.tag()){case 1:return e.getString();case 2:return e.getFloat();case 3:return e.getDouble();case 4:return e.getSInt32();case 5:return e.getUInt32();case 6:return e.getInt64();case 7:return e.getUInt64();case 8:return e.getSInt64();case 9:return e.getBool();default:return e.skip(),null}return null}const Pt=(0,S.vt)();class Dt{constructor(e,t,r,n,i){this.spatialReference=e,this.url=r,this.objectIdField=n,this.capabilities=i;const{supportsMaxRecordCountFactor:s,maxRecordCount:a}=this.capabilities.query,o=s?4:1,l=(a??8e3)*o;this._pageSize=Math.min(8e3,l);const c=t.clone();c.cacheHint=!0,c.resultType="tile",c.outSpatialReference=e,c.returnGeometry=!0,c.returnZ=!0,c.maxRecordCountFactor=o,c.num=this._pageSize,c.outFields=[n],this._baseQuery=c}async fetch(e,t){const{spatialReference:r,_pageSize:n}=this,i=(0,R.w1)(e.extent,r),a=this._baseQuery.clone();a.geometry=i;const o=new Array;let l=0,c=!1,d=1;for(;!c;){const e=[];for(let r=0;r<d;++r)e.push(this._fetchPage(a,l++,t));const r=await Promise.all(e);(0,s.Te)(t);for(const e of r){const t=0!==e.featureCount;c||=!e.exceededTransferLimit||!t,t&&o.push(e)}d=Math.min(d+1,4)}return new bt(e,o,n)}async _fetchPage(e,t,r){const n=e.clone();n.start=t*this._pageSize;const i=(await(0,_t.kS)(this.url,n,{signal:r})).data;return(0,s.Te)(r),new Tt(i)}}var Ft=r(24151),Mt=r(29920),Et=r(77690),Ut=r(29242);var kt=r(13030),Lt=r(78662),Bt=r(1843),Vt=r(49255),zt=r(40268),jt=r(16943),Nt=r(25634),qt=r(11725),Ht=r(13464),Gt=r(77194);class $t{constructor(){this.scale=0,this.factor=0,this.minScaleFactor=0}}var Yt=r(59907),Zt=r(43616),Jt=r(13259),Wt=r(97220),Xt=r(98958),Qt=r(59643),Kt=r(33524),er=r(90644);class tr extends Xt.w{constructor(e,t){super(e,t,new Wt.$(Jt.H,(()=>r.e(8241).then(r.bind(r,48241))))),this.primitiveType=t.occlusionPass?$.WR.POINTS:$.WR.TRIANGLES}initializePipeline(e){const{oitPass:t,hasPolygonOffset:r,draped:n,output:i,depthTestEnabled:s,occlusionPass:a}=e,o=t===Qt.Y.NONE,l=t===Qt.Y.ColorAlpha,c=i===Vt.V.Highlight,d=s&&!n&&!l&&!a&&!c;return(0,er.Ey)({blending:(0,Vt.RN)(i)?o?er.RC:(0,Kt.ez)(t):null,depthTest:s&&!n?{func:$.MT.LEQUAL}:null,depthWrite:d?er.Uy:null,drawBuffers:(0,Kt.m6)(t,i),colorWrite:er.kn,polygonOffset:r?rr:null})}}const rr={factor:0,units:-4};var nr=r(53466),ir=r(22911),sr=r(51976),ar=r(35256);class or extends ar.E{constructor(e){super(),this.spherical=e,this.screenCenterOffsetUnitsEnabled=!1,this.occlusionTestEnabled=!0,this.signedDistanceFieldEnabled=!1,this.sampleSignedDistanceFieldTexelCenter=!1,this.vvSize=!1,this.vvColor=!1,this.hasVerticalOffset=!1,this.hasScreenSizePerspective=!1,this.hasRotation=!1,this.debugDrawLabelBorder=!1,this.hasPolygonOffset=!1,this.depthTestEnabled=!0,this.pixelSnappingEnabled=!0,this.draped=!1,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.occlusionPass=!1,this.occludedFragmentFade=!1,this.objectAndLayerIdColorInstanced=!1,this.horizonCullingEnabled=!0,this.isFocused=!0,this.textureCoordinateType=nr.I.None,this.emissionSource=ir.ZX.None,this.discardInvisibleFragments=!0,this.hasVvInstancing=!1,this.snowCover=!1}}(0,n._)([(0,sr.W)()],or.prototype,"screenCenterOffsetUnitsEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"occlusionTestEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"signedDistanceFieldEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"sampleSignedDistanceFieldTexelCenter",void 0),(0,n._)([(0,sr.W)()],or.prototype,"vvSize",void 0),(0,n._)([(0,sr.W)()],or.prototype,"vvColor",void 0),(0,n._)([(0,sr.W)()],or.prototype,"hasVerticalOffset",void 0),(0,n._)([(0,sr.W)()],or.prototype,"hasScreenSizePerspective",void 0),(0,n._)([(0,sr.W)()],or.prototype,"hasRotation",void 0),(0,n._)([(0,sr.W)()],or.prototype,"debugDrawLabelBorder",void 0),(0,n._)([(0,sr.W)()],or.prototype,"hasPolygonOffset",void 0),(0,n._)([(0,sr.W)()],or.prototype,"depthTestEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"pixelSnappingEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"draped",void 0),(0,n._)([(0,sr.W)()],or.prototype,"terrainDepthTest",void 0),(0,n._)([(0,sr.W)()],or.prototype,"cullAboveTerrain",void 0),(0,n._)([(0,sr.W)()],or.prototype,"occlusionPass",void 0),(0,n._)([(0,sr.W)()],or.prototype,"occludedFragmentFade",void 0),(0,n._)([(0,sr.W)()],or.prototype,"objectAndLayerIdColorInstanced",void 0),(0,n._)([(0,sr.W)()],or.prototype,"horizonCullingEnabled",void 0),(0,n._)([(0,sr.W)()],or.prototype,"isFocused",void 0);var lr=r(49788);class cr extends qt.im{constructor(e,t){super(e,Mr),this.produces=new Map([[Ht.N.HUD_MATERIAL,e=>(0,Vt.Mb)(e)&&!this.parameters.drawAsLabel],[Ht.N.LABEL_MATERIAL,e=>(0,Vt.Mb)(e)&&this.parameters.drawAsLabel],[Ht.N.OCCLUSION_PIXELS,()=>this.parameters.occlusionTest],[Ht.N.DRAPED_MATERIAL,e=>this.parameters.draped&&(0,Vt.Mb)(e)]]),this._visible=!0,this._configuration=new or(t)}getConfiguration(e,t){const r=this.parameters.draped;return super.getConfiguration(e,t,this._configuration),this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.hasVerticalOffset=!!this.parameters.verticalOffset,this._configuration.hasScreenSizePerspective=!!this.parameters.screenSizePerspective,this._configuration.screenCenterOffsetUnitsEnabled="screen"===this.parameters.centerOffsetUnits,this._configuration.hasPolygonOffset=this.parameters.polygonOffset,this._configuration.draped=r,this._configuration.occlusionTestEnabled=this.parameters.occlusionTest,this._configuration.pixelSnappingEnabled=this.parameters.pixelSnappingEnabled,this._configuration.signedDistanceFieldEnabled=this.parameters.textureIsSignedDistanceField,this._configuration.sampleSignedDistanceFieldTexelCenter=this.parameters.sampleSignedDistanceFieldTexelCenter,this._configuration.hasRotation=this.parameters.hasRotation,this._configuration.vvSize=!!this.parameters.vvSize,this._configuration.vvColor=!!this.parameters.vvColor,this._configuration.occlusionPass=t.slot===Ht.N.OCCLUSION_PIXELS,this._configuration.occludedFragmentFade=!r&&this.parameters.occludedFragmentFade,this._configuration.horizonCullingEnabled=this.parameters.horizonCullingEnabled,this._configuration.isFocused=this.parameters.isFocused,this._configuration.depthTestEnabled=this.parameters.depthEnabled||t.slot===Ht.N.OCCLUSION_PIXELS,(0,Vt.RN)(e)&&(this._configuration.debugDrawLabelBorder=!!M.b.LABELS_SHOW_BORDER),this._configuration.oitPass=t.oitPass,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration}intersect(e,t,r,n,i,s){const{options:{selectionMode:a,hud:o,excludeLabels:l},point:c,camera:d}=r,{parameters:u}=this;if(!a||!o||l&&u.isLabel||!e.visible||!c||!d)return;const h=e.attributes.get(re.r.FEATUREATTRIBUTE),m=null==h?null:(0,C.ci)(h.data,Ar),{scaleX:f,scaleY:p}=Lr(m,u,d.pixelRatio);(0,Et.z0)(wr,t),e.attributes.has(re.r.FEATUREATTRIBUTE)&&function(e){const t=e[0],r=e[1],n=e[2],i=e[3],s=e[4],a=e[5],o=e[6],l=e[7],c=e[8],d=1/Math.sqrt(t*t+r*r+n*n),u=1/Math.sqrt(i*i+s*s+a*a),h=1/Math.sqrt(o*o+l*l+c*c);e[0]=t*d,e[1]=r*d,e[2]=n*d,e[3]=i*u,e[4]=s*u,e[5]=a*u,e[6]=o*h,e[7]=l*h,e[8]=c*h}(wr);const y=e.attributes.get(re.r.POSITION),g=e.attributes.get(re.r.SIZE),_=e.attributes.get(re.r.NORMAL),b=e.attributes.get(re.r.ROTATION),v=e.attributes.get(re.r.CENTEROFFSETANDDISTANCE);(0,ge.vA)(y.size>=3);const w=(0,Jt.c)(u),x="screen"===this.parameters.centerOffsetUnits;for(let e=0;e<y.data.length/y.size;e++){const n=e*y.size;(0,me.i)(fr,y.data[n],y.data[n+1],y.data[n+2]),(0,me.t)(fr,fr,t),(0,me.t)(fr,fr,d.viewMatrix);const i=e*v.size;if((0,me.i)(Tr,v.data[i],v.data[i+1],v.data[i+2]),!x&&(fr[0]+=Tr[0],fr[1]+=Tr[1],0!==Tr[2])){const e=Tr[2];(0,me.n)(Tr,fr),(0,me.d)(fr,fr,(0,me.g)(Tr,Tr,e))}const a=e*_.size;if((0,me.i)(pr,_.data[a],_.data[a+1],_.data[a+2]),ur(pr,wr,d,Or),Br(this.parameters,fr,Or,d,mr),d.applyProjection(fr,yr),yr[0]>-1){x&&(Tr[0]||Tr[1])&&(yr[0]+=Tr[0]*d.pixelRatio,0!==Tr[1]&&(yr[1]+=(0,Gt.m0)(Tr[1],mr.factorAlignment)*d.pixelRatio),d.unapplyProjection(yr,fr)),yr[0]+=this.parameters.screenOffset[0]*d.pixelRatio,yr[1]+=this.parameters.screenOffset[1]*d.pixelRatio,yr[0]=Math.floor(yr[0]),yr[1]=Math.floor(yr[1]);const t=e*g.size;Dr[0]=g.data[t],Dr[1]=g.data[t+1],(0,Gt.MD)(Dr,mr.factor,Dr);const n=Rr*d.pixelRatio;let i=0;u.textureIsSignedDistanceField&&(i=Math.min(u.outlineSize,.5*Dr[0])*d.pixelRatio/2),Dr[0]*=f,Dr[1]*=p;const a=e*b.size,o=u.rotation+b.data[a];if(hr(c,yr[0],yr[1],Dr,n,i,o,u,w)){const e=r.ray;if((0,me.t)(_r,fr,(0,A.B8)(Sr,d.viewMatrix)),yr[0]=c[0],yr[1]=c[1],d.unprojectFromRenderScreen(yr,fr)){const t=(0,S.vt)();(0,me.c)(t,e.direction);const r=1/(0,me.l)(t);(0,me.g)(t,t,r),s((0,me.j)(e.origin,fr)*r,t,-1,_r)}}}}}intersectDraped(e,t,r,n,i){const s=e.attributes.get(re.r.POSITION),a=e.attributes.get(re.r.SIZE),o=e.attributes.get(re.r.ROTATION),l=this.parameters,c=(0,Jt.c)(l),d=e.attributes.get(re.r.FEATUREATTRIBUTE),u=null==d?null:(0,C.ci)(d.data,Ar),{scaleX:h,scaleY:m}=Lr(u,l,e.screenToWorldRatio),f=Pr*e.screenToWorldRatio;for(let t=0;t<s.data.length/s.size;t++){const d=t*s.size,u=s.data[d],p=s.data[d+1],y=t*a.size;Dr[0]=a.data[y],Dr[1]=a.data[y+1];let g=0;l.textureIsSignedDistanceField&&(g=Math.min(l.outlineSize,.5*Dr[0])*e.screenToWorldRatio/2),Dr[0]*=h,Dr[1]*=m;const _=t*o.size,b=l.rotation+o.data[_];hr(r,u,p,Dr,f,g,b,l,c)&&n(i.distance,i.normal,-1)}}createBufferWriter(){return new kr}applyShaderOffsetsView(e,t,r,n,i,s,a){const o=ur(t,r,i,Or);return this._applyVerticalGroundOffsetView(e,o,i,a),Br(this.parameters,a,o,i,s),this._applyPolygonOffsetView(a,o,n[3],i,a),this._applyCenterOffsetView(a,n,a),a}applyShaderOffsetsNDC(e,t,r,n,i){return this._applyCenterOffsetNDC(e,t,r,n),null!=i&&(0,me.c)(i,n),this._applyPolygonOffsetNDC(n,t,r,n),n}_applyPolygonOffsetView(e,t,r,n,i){const s=n.aboveGround?1:-1;let a=Math.sign(r);0===a&&(a=s);const o=s*a;if(this.parameters.shaderPolygonOffset<=0)return(0,me.c)(i,e);const l=(0,F.qE)(Math.abs(t.cosAngle),.01,1),c=1-Math.sqrt(1-l*l)/l/n.viewport[2];return(0,me.g)(i,e,o>0?c:1/c),i}_applyVerticalGroundOffsetView(e,t,r,n){const i=(0,me.l)(e),s=r.aboveGround?1:-1,a=r.computeRenderPixelSizeAtDist(i)*zt.R,o=(0,me.g)(fr,t.normal,s*a);return(0,me.f)(n,e,o),n}_applyCenterOffsetView(e,t,r){const n="screen"!==this.parameters.centerOffsetUnits;return r!==e&&(0,me.c)(r,e),n&&(r[0]+=t[0],r[1]+=t[1],t[2]&&((0,me.n)(pr,r),(0,me.a)(r,r,(0,me.g)(pr,pr,t[2])))),r}_applyCenterOffsetNDC(e,t,r,n){const i="screen"!==this.parameters.centerOffsetUnits;return n!==e&&(0,me.c)(n,e),i||(n[0]+=t[0]/r.fullWidth*2,n[1]+=t[1]/r.fullHeight*2),n}_applyPolygonOffsetNDC(e,t,r,n){const i=this.parameters.shaderPolygonOffset;if(e!==n&&(0,me.c)(n,e),i){const e=r.aboveGround?1:-1,s=e*Math.sign(t[3]);n[2]-=(s||e)*i}return n}set visible(e){this._visible=e}get visible(){const{color:e,outlineSize:t,outlineColor:r}=this.parameters,n=e[3]>=lr.Q||t>=lr.Q&&r[3]>=lr.Q;return this._visible&&n}createGLMaterial(e){return new dr(e)}calculateRelativeScreenBounds(e,t,r=(0,R.vt)()){return function(e,t,r,n){n[0]=e.anchorPosition[0]*-t[0]+e.screenOffset[0]*r,n[1]=e.anchorPosition[1]*-t[1]+e.screenOffset[1]*r}(this.parameters,e,t,r),r[2]=r[0]+e[0],r[3]=r[1]+e[1],r}}class dr extends Nt.m8{constructor(e){super({...e,...e.material.parameters})}beginSlot(e){return this.updateTexture(this._material.parameters.textureId),this._material.setParameters(this.textureBindParameters),this.getTechnique(tr,e)}}function ur(e,t,r,n){return function(e){return function(e){return e instanceof Float32Array&&e.length>=16}(e)||function(e){return Array.isArray(e)&&e.length>=16}(e)}(t)&&(t=(0,Et.z0)(xr,t)),(0,me.o)(n.normal,e,t),(0,me.t)(n.normal,n.normal,r.viewInverseTransposeMatrix),n.cosAngle=(0,me.e)(gr,Fr),n}function hr(e,t,r,n,i,s,a,o,l){let c=t-i-n[0]*l[0],d=c+n[0]+2*i,u=r-i-n[1]*l[1],h=u+n[1]+2*i;const m=o.distanceFieldBoundingBox;return o.textureIsSignedDistanceField&&null!=m&&(c+=n[0]*m[0],u+=n[1]*m[1],d-=n[0]*(1-m[2]),h-=n[1]*(1-m[3]),c-=s,d+=s,u-=s,h+=s),(0,P.hZ)(vr,t,r),(0,P.e$)(br,e,vr,(0,F.kU)(a)),br[0]>c&&br[0]<d&&br[1]>u&&br[1]<h}const mr=new class{constructor(){this.factor=new $t,this.factorAlignment=new $t}},fr=(0,S.vt)(),pr=(0,S.vt)(),yr=(0,C.vt)(),gr=(0,S.vt)(),_r=(0,S.vt)(),br=(0,D.vt)(),vr=(0,D.vt)(),wr=(0,Ut.vt)(),xr=(0,Ut.vt)(),Sr=(0,x.vt)(),Cr=(0,C.vt)(),Tr=(0,S.vt)(),Ir=(0,S.vt)(),Ar=(0,C.vt)(),Or={normal:gr,cosAngle:0},Rr=1,Pr=2,Dr=(0,D.fA)(0,0),Fr=(0,S.fA)(0,0,1);class Mr extends Nt.NV{constructor(){super(...arguments),this.renderOccluded=qt.m$.Occlude,this.isDecoration=!1,this.color=(0,C.CN)(1,1,1,1),this.polygonOffset=!1,this.anchorPosition=(0,D.fA)(.5,.5),this.screenOffset=[0,0],this.shaderPolygonOffset=1e-5,this.textureIsSignedDistanceField=!1,this.sampleSignedDistanceFieldTexelCenter=!1,this.outlineColor=(0,C.CN)(1,1,1,1),this.outlineSize=0,this.distanceFieldBoundingBox=(0,C.vt)(),this.rotation=0,this.hasRotation=!1,this.vvSizeEnabled=!1,this.vvSize=null,this.vvColor=null,this.vvOpacity=null,this.vvSymbolAnchor=null,this.vvSymbolRotationMatrix=null,this.hasSlicePlane=!1,this.pixelSnappingEnabled=!0,this.occlusionTest=!0,this.occludedFragmentFade=!1,this.horizonCullingEnabled=!1,this.centerOffsetUnits="world",this.drawAsLabel=!1,this.depthEnabled=!0,this.isFocused=!0,this.focusStyle="none",this.draped=!1,this.isLabel=!1}}const Er=(0,Bt.BP)().vec3f(re.r.POSITION).vec3f(re.r.NORMAL).vec2i16(re.r.UVI).vec4u8(re.r.COLOR).vec2f(re.r.SIZE).f32(re.r.ROTATION).vec4f(re.r.CENTEROFFSETANDDISTANCE).vec4f(re.r.FEATUREATTRIBUTE),Ur=Er.clone().vec4u8(re.r.OLIDCOLOR);class kr{constructor(){this.vertexBufferLayout=(0,jt.E)()?Ur:Er}elementCount(e){return 6*e.get(re.r.POSITION).indices.length}write(e,t,r,n,i,s){const{position:a,normal:o,uvi:l,color:c,size:d,rotation:u,centerOffsetAndDistance:h,featureAttribute:m}=i;(0,Yt.Hk)(r.get(re.r.POSITION),e,a,s,6),(0,Yt.p1)(r.get(re.r.NORMAL),t,o,s,6);const f=r.get(re.r.UVI)?.data;let p=0,y=0,g=-1-Jt.f,_=-1-Jt.f;f&&f.length>=4&&(p=f[0],y=f[1],g=-1-f[2],_=-1-f[3]);let b=r.get(re.r.POSITION).indices.length,v=s;for(let e=0;e<b;++e)l.set(v,0,p),l.set(v,1,y),v++,l.set(v,0,g),l.set(v,1,y),v++,l.set(v,0,g),l.set(v,1,_),v++,l.set(v,0,g),l.set(v,1,_),v++,l.set(v,0,p),l.set(v,1,_),v++,l.set(v,0,p),l.set(v,1,y),v++;(0,Yt.tb)(r.get(re.r.COLOR),4,c,s,6);const{data:w,indices:x}=r.get(re.r.SIZE);b=x.length,v=s;for(let e=0;e<b;++e){const t=w[2*x[e]],r=w[2*x[e]+1];for(let e=0;e<6;++e)d.set(v,0,t),d.set(v,1,r),v++}if((0,Yt.uO)(r.get(re.r.ROTATION),u,s,6),r.get(re.r.CENTEROFFSETANDDISTANCE)?(0,Yt.Ut)(r.get(re.r.CENTEROFFSETANDDISTANCE),h,s,6):(0,Yt.Pq)(h,s,6*b),r.get(re.r.FEATUREATTRIBUTE)?(0,Yt.Ut)(r.get(re.r.FEATUREATTRIBUTE),m,s,6):(0,Yt.Pq)(m,s,6*b),null!=n){const e=r.get(re.r.POSITION)?.indices;if(e){const t=e.length,r=i.getField(re.r.OLIDCOLOR,kt.XP);(0,Yt.vx)(n,r,t,s,6)}}return{numVerticesPerItem:6,numItems:b}}intersect(e,t,r,n,i,s,a){const{options:{selectionMode:o,hud:l,excludeLabels:c},point:d,camera:u}=n;if(!o||!l||c&&t.isLabel||!d)return;const h=this.vertexBufferLayout.createView(e),m=h.getField(re.r.POSITION,kt.xs),f=h.getField(re.r.NORMAL,kt.xs),p=h.getField(re.r.ROTATION,kt.Y$),y=h.getField(re.r.SIZE,kt.gH),g=h.getField(re.r.FEATUREATTRIBUTE,kt.Eq),_=h.getField(re.r.CENTEROFFSETANDDISTANCE,kt.Eq),b="screen"===t.centerOffsetUnits,v=(0,Jt.c)(t);if(null==m||null==f||null==p||null==y||null==_||null==u)return;const w=null==g?null:g.getVec(0,Ar),{scaleX:x,scaleY:C}=Lr(w,t,u.pixelRatio),T=m.count/6;for(let e=0;e<T;e++){const i=6*e;if(m.getVec(i,fr),null!=r&&(0,me.f)(fr,fr,r),(0,me.t)(fr,fr,u.viewMatrix),_.getVec(i,Cr),(0,me.i)(Tr,Cr[0],Cr[1],Cr[2]),!b&&(fr[0]+=Tr[0],fr[1]+=Tr[1],0!==Tr[2])){const e=Tr[2];(0,me.n)(Tr,fr),(0,me.d)(fr,fr,(0,me.g)(Tr,Tr,e))}if(f.getVec(i,pr),ur(pr,wr,u,Or),Br(t,fr,Or,u,mr),u.applyProjection(fr,yr),yr[0]>-1){b&&(Tr[0]||Tr[1])&&(yr[0]+=Tr[0]*u.pixelRatio,0!==Tr[1]&&(yr[1]+=(0,Gt.m0)(Tr[1],mr.factorAlignment)*u.pixelRatio),u.unapplyProjection(yr,fr)),yr[0]+=t.screenOffset[0]*u.pixelRatio,yr[1]+=t.screenOffset[1]*u.pixelRatio,yr[0]=Math.floor(yr[0]),yr[1]=Math.floor(yr[1]),y.getVec(i,Dr),(0,Gt.MD)(Dr,mr.factor,Dr);const r=Rr*u.pixelRatio;let s=0;t.textureIsSignedDistanceField&&(s=Math.min(t.outlineSize,.5*Dr[0])*u.pixelRatio/2),Dr[0]*=x,Dr[1]*=C;const o=p.get(i),l=t.rotation+o;if(hr(d,yr[0],yr[1],Dr,r,s,l,t,v)){const t=n.ray;if((0,me.t)(_r,fr,(0,A.B8)(Sr,u.viewMatrix)),yr[0]=d[0],yr[1]=d[1],u.unprojectFromRenderScreen(yr,fr)){const r=(0,S.vt)();(0,me.c)(r,t.direction);const n=1/(0,me.l)(r);(0,me.g)(r,r,n),a((0,me.j)(t.origin,fr)*n,r,e,_r)}}}}}}function Lr(e,t,r){return null==e||null==t.vvSize?{scaleX:r,scaleY:r}:((0,Lt.VC)(Ir,t,e),{scaleX:Ir[0]*r,scaleY:Ir[1]*r})}function Br(e,t,r,n,i){if(!e.verticalOffset?.screenLength)return e.screenSizePerspective||e.screenSizePerspectiveAlignment?Vr(e,i,(0,me.l)(t),r.cosAngle):(i.factor.scale=1,i.factorAlignment.scale=1),t;const s=(0,me.l)(t),a=e.screenSizePerspectiveAlignment??e.screenSizePerspective,o=(0,Zt.kE)(n,s,e.verticalOffset,r.cosAngle,a);return Vr(e,i,s,r.cosAngle),(0,me.g)(r.normal,r.normal,o),(0,me.f)(t,t,r.normal)}function Vr(e,t,r,n){null!=e.screenSizePerspective?(0,Gt.cJ)(n,r,e.screenSizePerspective,t.factor):(t.factor.scale=1,t.factor.factor=0,t.factor.minScaleFactor=0),null!=e.screenSizePerspectiveAlignment?(0,Gt.cJ)(n,r,e.screenSizePerspectiveAlignment,t.factorAlignment):(t.factorAlignment.factor=t.factor.factor,t.factorAlignment.scale=t.factor.scale,t.factorAlignment.minScaleFactor=t.factor.minScaleFactor)}class zr{constructor(e,t){this._mainThreadDelegate=t,this._bufferWriters=new Map,this.globalViewingMode=e===Ft.RT.Global}createRenderCommandBuffer(e=[],t=[]){return{commands:e,transferList:t}}mergeRenderCommandBuffers(e){const t=this.createRenderCommandBuffer();for(const r of e)null!=r&&(t.commands.push(...r.commands),t.transferList.push(...r.transferList));return t}async createTexture(e){const{data:t,parameters:r}=e();return await this._mainThreadDelegate.createTexture(t,r)}async releaseTexture(e){const t=this._destroyTexture(e);return new y(this,t,[])}_destroyTexture(e){return{commands:[{id:"destroy-texture",textureId:e}],transferList:[]}}async createMaterial(e){const{type:t,parameters:r}=e,n=et("material");let i,s;switch(t){case"default":i=new Le.$U(e.parameters,{spherical:this.globalViewingMode}),s={type:t,materialId:n,parameters:e.parameters};break;case"hud":i=new cr(r,this.globalViewingMode),s={type:t,materialId:n,parameters:e.parameters}}return this._bufferWriters.set(n,i.createBufferWriter()),await this._mainThreadDelegate.createMaterial(s),n}destroyMaterial(e){return{commands:[{id:"destroy-material",materialId:e}],transferList:[]}}updateMaterial(e){return{commands:[{...e,id:"update-material"}],transferList:[]}}async createDirectRenderer(e){return await this._mainThreadDelegate.createDirectRenderer(e),e}async destroyDirectRenderer(e){await this._mainThreadDelegate.destroyDirectRenderer(e)}addDirectRendererGeometry(e,t,r){const{materialId:n}=t;if(null==this._bufferWriters.get(n))throw new Error(`no bufferwriter found for material ${n}`);const{renderGeometryBuffer:i,renderGeometryBufferItems:s}=this.createRenderGeometryBuffer(t,r);return this.addDirectRendererGeometryBuffer(n,e,i,s,r)}updateDirectRendererGeometry(e,t,r){const{materialId:n}=t;if(null==this._bufferWriters.get(n))throw new Error(`no bufferwriter found for material ${n}`);const{renderGeometryBuffer:i,renderGeometryBufferItems:s}=this.createRenderGeometryBuffer(t,r);return this.updateDirectRendererGeometryBuffer(n,e,i,s,r)}addDirectRendererGeometryBuffer(e,t,r,n,i){const{objectIds:s,visibilities:a}=n;return{commands:[{id:"add-direct-renderer-geometry-buffer",rendererId:e,groupId:t,renderGeometryBuffer:r,renderGeometryBufferItems:n,localOrigin:i}],transferList:[r.data,s.buffer,a.buffer]}}updateDirectRendererGeometryBuffer(e,t,r,n,i){const{objectIds:s,visibilities:a}=n;return{commands:[{id:"update-direct-renderer-geometry-buffer",rendererId:e,groupId:t,renderGeometryBuffer:r,renderGeometryBufferItems:n,localOrigin:i}],transferList:[r.data,s.buffer,a.buffer]}}removeDirectRendererGeometryBuffer(e,t){return{commands:[{id:"remove-direct-renderer-geometry-buffer",rendererId:e,groupId:t}],transferList:[]}}async createLodRenderer(e){const t=et("lod-renderer"),r=new Set,n={levels:e.levels.map((e=>({components:e.components.map((e=>{const t=e.attributes.get(re.r.POSITION);if(!t||0===t.indices.length)throw new Error("positions attribute expected");const n=(0,q.tM)(t.indices.length/3),i=new Mt.j(n,3,t);if(null==this._bufferWriters.get(e.materialId))throw new Error("writer not found");const{renderGeometryBuffer:s}=this.createRenderGeometryBuffer(e,null);return r.add(s.data),{materialId:e.materialId,renderGeometryBuffer:s,boundingInfo:{bbMax:i.bbMax,bbMin:i.bbMin}}})),minScreenSpaceRadius:e.minScreenSpaceRadius})))};return await this._mainThreadDelegate.createLodRenderer(t,n,Array.from(r)),t}destroyLodRenderer(e){return{commands:[{id:"destroy-lod-renderer",rendererId:e}],transferList:[]}}addLodInstances(e,t,r){return{commands:[{id:"add-lod-instances",rendererId:e,groupId:t,data:r}],transferList:[r.featureIds.buffer,r.globalTransforms.buffer,r.localTransforms.buffer,r.visibility.buffer]}}removeLodInstances(e,t){return{commands:[{id:"remove-lod-instances",rendererId:e,groupId:t}],transferList:[]}}updateLodInstancesData(e,t,r){return{commands:[{id:"update-lod-instance-data",rendererId:e,groupId:t,globalTransforms:r}],transferList:[r.buffer]}}updateVisibility(e,t,r){return{commands:[{id:"update-visibility",rendererId:e,groupId:t,visibility:r}],transferList:[r.buffer]}}async dispatchRenderCommands(e){0!==e.commands.length&&await this._mainThreadDelegate.executeRenderCommands(e)}createRenderGeometryBuffer(e,t){const{materialId:r,visibilities:n,objectIds:i}=e,s=this._bufferWriters.get(r);if(null==s)throw new Error("no registered bufferWriter for material found");let a=null;if(e.transformation&&t)(0,A.C)(jr,e.transformation),jr[12]-=t[0],jr[13]-=t[1],jr[14]-=t[2],a=jr;else{if(t)throw new Error("not implemented");e.transformation&&(a=e.transformation)}let o=null;a&&((0,A.B8)(Nr,jr),(0,A.mg)(Nr,Nr),o=Nr);const l=e.attributes,c=s.elementCount(l),d=s.vertexBufferLayout.stride/4;c>Math.floor(qr/d)&&console.warn("geometry with very large number of elements encountered");const u=s.vertexBufferLayout.createBuffer(c),h=s.write(a,o,l,e.objectAndLayerIdColor,u,0);if(null==h)throw new Error("Bufferwriter.write does not provide item information.");if(n.length!==h.numItems||i.length!==h.numItems)throw new Error("Unexpected mismatch between number of RenderGeometryBufferItems and provided objectIds/visibility flags.");return{renderGeometryBuffer:{data:u.buffer,elementCount:c},renderGeometryBufferItems:{objectIds:i,visibilities:n,ranges:{numVertices:h.numVerticesPerItem,numItems:h.numItems}}}}}const jr=(0,x.vt)(),Nr=(0,x.vt)(),qr=4194304;var Hr=r(73941),Gr=r(98764),$r=r(65806);const Yr=(0,S.vt)();var Zr=r(88582),Jr=r(17352),Wr=r(97937);function Xr(e,t,r=function(e){return{operations:e,value:e.create()}}(e)){return r.operations=e,e.copy(t,r.value),r}const Qr=2**50;function Kr(e,t,r,n){return e.operations.setAltitudeAt(e.value,t,r,n)}function en(e,t,r){return e.operations.elevate(e.value,t,r.value)}const tn=(0,S.vt)();(0,S.vt)();var rn=r(44280),nn=r(32114);function sn(e){return"point"===e.type}class an{constructor(e,t,r,n){this.viewingMode=e,this.spatialReference=t,this.unitInMeters=r,this._coordinateSystem=n,this._tmpCoordinateSystem=function(e){const{value:t,operations:r}=e;return{operations:r,value:r.create(t)}}(n),this.referenceEllipsoid=(0,Hr.tO)(t),this.sphericalPCPF=(0,Gr.lO)(t)}set extent(e){e&&function(e,t,r){e.operations.setExtent(e.value,t,r.value)}(this._coordinateSystem,e,this._coordinateSystem)}get extent(){return function(e,t){return e.operations.getExtent(e.value,t),t}(this._coordinateSystem,(0,R.vt)())}getAltitude(e){return function(e,t){return e.operations.altitudeAt(e.value,t)}(this._coordinateSystem,e)}setAltitude(e,t,r=e){return Kr(this._coordinateSystem,r,t,e)}setAltitudeOfTransformation(e,t){!function(e,t,r,n){t!==n&&(0,A.C)(n,t),(0,me.i)(tn,n[12],n[13],n[14]),Kr(e,tn,r,tn),n[12]=tn[0],n[13]=tn[1],n[14]=tn[2]}(this._coordinateSystem,t,e,t)}worldUpAtPosition(e,t){return function(e,t,r){return e.operations.axisAt(e.value,t,Zr._.Z,r)}(this._coordinateSystem,e,t)}worldBasisAtPosition(e,t,r){return function(e,t,r,n){return e.operations.axisAt(e.value,t,r,n)}(this._coordinateSystem,e,t,r)}basisMatrixAtPosition(e,t){const r=this.worldBasisAtPosition(e,Zr._.X,nn.rq.get()),n=this.worldBasisAtPosition(e,Zr._.Y,nn.rq.get()),i=this.worldBasisAtPosition(e,Zr._.Z,nn.rq.get());return(0,A.hZ)(t,r[0],r[1],r[2],0,n[0],n[1],n[2],0,i[0],i[1],i[2],0,0,0,0,1),t}headingAtPosition(e,t){const r=this.worldUpAtPosition(e,nn.rq.get()),n=this.worldBasisAtPosition(e,Zr._.Y,nn.rq.get()),i=(0,rn.EJ)(t,n,r);return(0,F.KJ)(i)}intersectManifoldClosestSilhouette(e,t,r){return en(this._coordinateSystem,t,this._tmpCoordinateSystem),function(e,t,r){e.operations.intersectRayClosestSilhouette(e.value,t,r)}(this._tmpCoordinateSystem,e,r),r}intersectManifold(e,t,r){en(this._coordinateSystem,t,this._tmpCoordinateSystem);const n=nn.rq.get();return function(e,t,r){return e.operations.intersectRay(e.value,t,r)}(this._tmpCoordinateSystem,e,n)?(0,me.c)(r,n):null}intersectInfiniteManifold(e,t,r){if(this.viewingMode===Ft.RT.Global)return this.intersectManifold(e,t,r);en(this._coordinateSystem,t,this._tmpCoordinateSystem);const n=this._tmpCoordinateSystem.value,i=nn.rq.get();return(0,ye.Ui)(n.plane,e,i)?(0,me.c)(r,i):null}toRenderCoords(e,t,r){return sn(e)?(0,$r.g)(e,t,this.spatialReference):(0,V.F)(e,t,r,this.spatialReference)}fromRenderCoords(e,t,r=null){return sn(t)?(null!=r&&(t.spatialReference=r),function(e,t,r){return!!(0,V.F)(e,t,Yr,r.spatialReference)&&(r.x=Yr[0],r.y=Yr[1],r.z=Yr[2],!0)}(e,this.spatialReference,t)?t:null):(0,V.F)(e,this.spatialReference,t,r)?t:null}static create(e,t){switch(e){case Ft.RT.Local:return new an(Ft.RT.Local,t,(0,I.GA)(t),Xr(Jr.b,(0,Jr.f)([0,0,0],[Qr,0,0],[0,Qr,0])));case Ft.RT.Global:return new an(Ft.RT.Global,t,1,function(e){return Xr(Wr.s,(0,Wr.f)(0,0,0,(0,Hr.tO)(e).radius))}(t))}}static renderUnitScaleFactor(e,t){return(0,I.KX)(e)/(0,I.KX)(t)}}let on=class extends i.A.EventedAccessor{constructor(){super(...arguments),this.remoteClient=null,this._featureStore=new pt,this._tileLocks=new lt,this._tileManager=null,this._renderer=null,this._fetcher=null,this._queryEngine=null,this._defaultQueryJSON=null,this._mainThreadDelegate=null,this._viewSpatialReference=null,this._renderCommandContext=null,this._context=null}get updating(){return this._tileManager.updating}destroy(){this._featureStore.clear(),this._tileManager?.destroy()}async setup({viewSpatialReference:e,renderSpatialReference:t,viewingMode:r,layerInfo:n,layerViewInfo:i}){const s=h.A.fromJSON(e);this._viewSpatialReference=s;const o=h.A.fromJSON(t);this._fetcher=new Dt(this._viewSpatialReference,f.A.fromJSON(n.baseQuery),n.url,n.objectIdField,n.capabilities),this._queryEngine=new m.do({hasZ:!0,hasM:!1,geometryType:"esriGeometryPoint",featureIdInfo:{type:"object-id",fieldName:n.objectIdField},fieldsIndex:n.fieldIndex,availableFields:[n.objectIdField],spatialReference:e,featureStore:this._featureStore,timeInfo:n.timeInfo}),this._mainThreadDelegate={createTexture:async(e,t)=>{const r={data:e,parameters:t};return await this.remoteClient.invoke("createTexture",r,{transferList:[e.buffer]})},releaseTexture:async e=>{const t={uid:e};await this.remoteClient.invoke("releaseTexture",t)},createMaterial:async e=>{const t={materialJSON:e};await this.remoteClient.invoke("createMaterial",t)},destroyMaterial:async e=>{const t={materialId:e};await this.remoteClient.invoke("destroyMaterial",t)},createDirectRenderer:async e=>{const t={materialId:e};await this.remoteClient.invoke("createDirectRenderer",t)},destroyDirectRenderer:async e=>{const t={materialId:e};await this.remoteClient.invoke("destroyDirectRenderer",t)},createLodRenderer:async(e,t,r)=>{const n={rendererId:e,lodRenderGeometry:t};await this.remoteClient.invoke("createLoDRenderer",n,{transferList:r})},destroyLodRenderer:async e=>{const t={rendererId:e};await this.remoteClient.invoke("destroyLoDRenderer",t)},executeRenderCommands:async e=>{const t={commands:e.commands};await this.remoteClient.invoke("dispatchRenderCommands",t,{transferList:e.transferList})},applyElevationAlignmentTo:async e=>{const t={mapPoints:e};return await this.remoteClient.invoke("applyElevationAlignment",t,{transferList:[e.buffer]})}};const l=an.create(r,o),c=new zr(r,this._mainThreadDelegate);this._renderCommandContext=c;const p=new $e(s,o,this._mainThreadDelegate,l,c,n,i);this._context=p,this._renderer=p.symbolRendererFactory.createSymbolRendererFromJSON(n.renderer),this._defaultQueryJSON=new f.A({outSpatialReference:s}).toJSON();let y=null;if(null!=n.fullExtent){const e=d.A.fromJSON(n.fullExtent);await(0,u.initializeProjection)(e.spatialReference,s),y=(0,u.project)(e,s)}return this._tileManager=new nt({loadTile:(e,t)=>this._fetcher.fetch(e,t),createAddCommand:(e,t)=>this._createAddFeatureDataCommand(e,t),createRemoveCommand:e=>this._createRemoveFeatureDataCommand(e),createUpdateCommand:(e,t)=>this._createUpdateFeatureDataVisibilityCommand(e,t),tileLocks:this._tileLocks,extent:y}),this.addHandles((0,a.wB)((()=>this.updating),(e=>{this.emit("notify-updating",{updating:e})})),a.Vh),null!=this._renderer&&await this._renderer.load(),cn}async executeQuery(e,t){return{result:await this._queryEngine.executeQuery(this._ensureQuery(e),t)}}async executeQueryForIds(e,t){const r=await this._queryEngine.executeQueryForIdSet(this._ensureQuery(e),t);return{result:Array.from(r)}}async executeQueryForCount(e,t){return{result:await this._queryEngine.executeQueryForCount(this._ensureQuery(e),t)}}async executeQueryForExtent(e,t){return{result:await this._queryEngine.executeQueryForExtent(this._ensureQuery(e),t)}}async executeQueryForLatestObservations(e,t){return{result:await this._queryEngine.executeQueryForLatestObservations(this._ensureQuery(e),t)}}onTileTreeChange(e){return this._tileManager.onTileTreeChange(e),Promise.resolve(cn)}async onElevationChange(e){return cn}async onLayerViewOpacityChange(e){const{_context:t,_renderer:r}=this;if(t.layerViewInfo.fullOpacity=e,null==r)return cn;const n=await r.createUpdateLayerViewOpacityCommand(e);return await n.execute(),cn}async onRendererChange(e){const{_context:t}=this,r=t.symbolRendererFactory.createSymbolRendererFromJSON(e);await r.load();const i=this._renderer;this._renderer=r;const s=[...this._tileManager.loadedTiles()],a=s.map((e=>e.tileId));{const e={stack:[],error:void 0,hasError:!1};try{(0,n.b)(e,await this._tileLocks.lock(a),!1);const o=s.flatMap((e=>[i.createRemoveCommand(e.id),r.createAddCommand(e)])),l=await Promise.all(o),c=t.joinPipelineCommands(l);await c.execute()}catch(t){e.error=t,e.hasError=!0}finally{(0,n.c)(e)}}const o=await i.createDestroyCommand();return await o.execute(),cn}async _createAddFeatureDataCommand(e,t){const r=this._featureStore,n=this._renderer;let i;return i=null!=n?await n.createAddCommand(e):y.create(this._renderCommandContext),(0,s.Te)(t),i.appendPipelineStateCommand((()=>{r.addTile(e)})),i}async _createRemoveFeatureDataCommand(e){const t=this._featureStore,r=this._renderer;let n;return n=null!=r?await r.createRemoveCommand(e):y.create(this._renderCommandContext),n.appendPipelineStateCommand((()=>{t.removeTile(e)})),n}async _createUpdateFeatureDataVisibilityCommand(e,t){const r=this._renderer;let n;return n=null!=r?await r.createUpdateVisibilityCommand(e):y.create(this._renderCommandContext),(0,s.Te)(t),n}_ensureQuery(e){return e??this._defaultQueryJSON}};(0,n._)([(0,o.MZ)()],on.prototype,"updating",null),on=(0,n._)([(0,c.$)("esri.views.3d.layers.graphics.pipeline.Feature3DPipelineWorker")],on);const ln=on,cn={result:void 0}},69418:(e,t,r)=>{r.d(t,{S:()=>c,z:()=>l});var n=r(83047),i=r(21325),s=r(43334),a=r(58512),o=r(92722);const l=["esriGeometryPoint","esriGeometryMultipoint","esriGeometryPolyline","esriGeometryPolygon"];class c{constructor(e){this._options=e,this.geometryTypes=l,this._coordinatePtr=0,this._vertexDimension=0}createFeatureResult(){return new a.A}prepareFeatures(e){this._vertexDimension=2,e.hasZ&&this._vertexDimension++,e.hasM&&this._vertexDimension++}finishFeatureResult(e){if(!e?.features||!e.hasZ||!this._options.sourceSpatialReference||!e.spatialReference||(0,i.aI)(e.spatialReference,this._options.sourceSpatialReference)||e.spatialReference.vcsWkid)return;const t=(0,n.G9)(this._options.sourceSpatialReference)/(0,n.G9)(e.spatialReference);if(1!==t)for(const r of e.features){if(!(0,s.N3)(r))continue;const e=r.geometry.coords;for(let r=2;r<e.length;r+=3)e[r]*=t}}addFeature(e,t){e.features.push(t)}createFeature(){return new s.Om(null,{},null,0)}createSpatialReference(){return{wkid:0}}createGeometry(){return new o.A}addField(e,t){e.fields.push(t)}allocateCoordinates(e){e.coords.length=e.lengths.reduce(((e,t)=>e+t),0)*this._vertexDimension,this._coordinatePtr=0}addCoordinate(e,t){e.coords[this._coordinatePtr++]=t}addCoordinatePoint(e,t){e.coords.push(t)}addLength(e,t){e.lengths.push(t)}addQueryGeometry(e,t){e.queryGeometry=t.queryGeometry,e.queryGeometryType=t.queryGeometryType}createPointGeometry(){return new o.A}}},72385:(e,t,r)=>{function n(){return new Float32Array(3)}function i(e){const t=new Float32Array(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function s(e,t,r){const n=new Float32Array(3);return n[0]=e,n[1]=t,n[2]=r,n}function a(){return n()}function o(){return s(1,1,1)}function l(){return s(1,0,0)}function c(){return s(0,1,0)}function d(){return s(0,0,1)}r.d(t,{fA:()=>s,o8:()=>i,vt:()=>n});const u=a(),h=o(),m=l(),f=c(),p=d();Object.freeze(Object.defineProperty({__proto__:null,ONES:h,UNIT_X:m,UNIT_Y:f,UNIT_Z:p,ZEROS:u,clone:i,create:n,fromValues:s,ones:o,unitX:l,unitY:c,unitZ:d,zeros:a},Symbol.toStringTag,{value:"Module"}))},73681:(e,t,r)=>{r.d(t,{n:()=>l});var n=r(49186),i=r(53966),s=r(46140),a=r(95466),o=r(55674);class l{static async from(e,t,r){const a=e.dictionary_version?s.R.parse(e.dictionary_version):null,d=new Set(e.itemsNames),u={};if(t)for(const e in t)u[e]=t[e];if(e.authoringInfo.configuration)for(const t of e.authoringInfo.configuration)u.hasOwnProperty(t.name)||(u[t.name]=t.value);const h=new Set(e.authoringInfo.symbol);for(const e of Object.keys(r))h.delete(e);h.size&&i.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("missing-fields: fieldMap entries for the following symbol fields are missing",{symbolFields:h});const m=await(0,o.xR)(e.expression,null,u);if(!m)throw new n.A("dictionary-renderer:expression-error","Unable to create dictionary renderer expression");const f=!a||!a.greaterEqual(4,0);f&&i.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("Dictionary script does not support native field types. Applying fallback",{version:a});const p=new c(r,f);return new l(f,d,m,p)}constructor(e,t,r,n){this._requiresFieldCoercionToString=e,this._itemNames=t,this._compiled=r,this._reader=n}get itemNames(){return this._itemNames}evaluate(e,t,r,n){try{return this._reader.bind(e,r,n),this._compiled.evaluate(this._reader,{$view:{scale:t}})}catch(e){i.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("arcade: dictionary script evaluation failed",{error:e})}return null}createDictionaryFieldsIndex(e){if(!this._requiresFieldCoercionToString)return new a.A(e);const t=e.map((e=>({...e,type:"esriFieldTypeString"})));return new a.A(t)}}class c extends o.Gj{constructor(e,t){super(),this._fieldMap=e,this._requiresFieldCoercionToString=t}_getField(e){const t=this._fieldMap[e]??e;return this._boundSchema.fieldsIndex.get(t)}field(e){if(!this._requiresFieldCoercionToString)return super.field(e,!1);const t=this._getField(e);return null==t?"":""+this._boundTarget.attributes[t.name]}}},75503:(e,t,r)=>{r.d(t,{E:()=>T,w:()=>o});var n=r(4576),i=r(21818),s=(r(44208),r(3694)),a=r(11006);class o{constructor(e=9,t){this._compareMinX=h,this._compareMinY=m,this._toBBox=e=>e,this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),t&&("function"==typeof t?this._toBBox=t:this._initFormat(t)),this.clear()}destroy(){this.clear(),w.prune(),x.prune(),S.prune(),C.prune()}all(e){l(this._data,e)}search(e,t){let r=this._data;const n=this._toBBox;if(b(e,r))for(w.clear();r;){for(let i=0,s=r.children.length;i<s;i++){const s=r.children[i],a=r.leaf?n(s):s;b(e,a)&&(r.leaf?t(s):_(e,a)?l(s,t):w.push(s))}r=w.pop()}}collides(e){let t=this._data;const r=this._toBBox;if(!b(e,t))return!1;for(w.clear();t;){for(let n=0,i=t.children.length;n<i;n++){const i=t.children[n],s=t.leaf?r(i):i;if(b(e,s)){if(t.leaf||_(e,s))return!0;w.push(i)}}t=w.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,r=e.length;t<r;t++)this.insert(e[t]);return this}let t=this._build(e.slice(),0,e.length-1,0);if(this._data.children.length)if(this._data.height===t.height)this._splitRoot(this._data,t);else{if(this._data.height<t.height){const e=this._data;this._data=t,t=e}this._insert(t,this._data.height-t.height-1,!0)}else this._data=t;return this}insert(e){return e&&this._insert(e,this._data.height-1),this}clear(){return this._data=new A([]),this}remove(e){if(!e)return this;let t,r=this._data,s=null,a=0,o=!1;const l=this._toBBox(e);for(S.clear(),C.clear();r||S.length>0;){if(r||(r=S.pop(),s=S.data[S.length-1],a=C.pop()??0,o=!0),r.leaf&&(t=(0,n.qh)(r.children,(0,i.zI)(e),r.children.length,r.indexHint),-1!==t))return r.children.splice(t,1),S.push(r),this._condense(S),this;o||r.leaf||!_(r,l)?s?(a++,r=s.children[a],o=!1):r=null:(S.push(r),C.push(a),a=0,s=r,r=r.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,r,n){const i=r-t+1;let s=this._maxEntries;if(i<=s){const n=new A(e.slice(t,r+1));return c(n,this._toBBox),n}n||(n=Math.ceil(Math.log(i)/Math.log(s)),s=Math.ceil(i/s**(n-1)));const a=new O([]);a.height=n;const o=Math.ceil(i/s),l=o*Math.ceil(Math.sqrt(s));v(e,t,r,l,this._compareMinX);for(let i=t;i<=r;i+=l){const t=Math.min(i+l-1,r);v(e,i,t,o,this._compareMinY);for(let r=i;r<=t;r+=o){const i=Math.min(r+o-1,t);a.children.push(this._build(e,r,i,n-1))}}return c(a,this._toBBox),a}_insert(e,t,r){const n=this._toBBox,i=r?e:n(e);S.clear();const s=function(e,t,r,n){for(;n.push(t),!0!==t.leaf&&n.length-1!==r;){let r,n=1/0,i=1/0;for(let s=0,a=t.children.length;s<a;s++){const a=t.children[s],o=f(a),l=y(e,a)-o;l<i?(i=l,n=o<n?o:n,r=a):l===i&&o<n&&(n=o,r=a)}t=r||t.children[0]}return t}(i,this._data,t,S);for(s.children.push(e),u(s,i);t>=0&&S.data[t].children.length>this._maxEntries;)this._split(S,t),t--;!function(e,t,r){for(let n=r;n>=0;n--)u(t.data[n],e)}(i,S,t)}_split(e,t){const r=e.data[t],n=r.children.length,i=this._minEntries;this._chooseSplitAxis(r,i,n);const s=this._chooseSplitIndex(r,i,n);if(!s)return;const a=r.children.splice(s,r.children.length-s),o=r.leaf?new A(a):new O(a);o.height=r.height,c(r,this._toBBox),c(o,this._toBBox),t?e.data[t-1].children.push(o):this._splitRoot(r,o)}_splitRoot(e,t){this._data=new O([e,t]),this._data.height=e.height+1,c(this._data,this._toBBox)}_chooseSplitIndex(e,t,r){let n,i,s;n=i=1/0;for(let a=t;a<=r-t;a++){const t=d(e,0,a,this._toBBox),o=d(e,a,r,this._toBBox),l=g(t,o),c=f(t)+f(o);l<n?(n=l,s=a,i=c<i?c:i):l===n&&c<i&&(i=c,s=a)}return s}_chooseSplitAxis(e,t,r){const n=e.leaf?this._compareMinX:h,i=e.leaf?this._compareMinY:m;this._allDistMargin(e,t,r,n)<this._allDistMargin(e,t,r,i)&&e.children.sort(n)}_allDistMargin(e,t,r,n){e.children.sort(n);const i=this._toBBox,s=d(e,0,t,i),a=d(e,r-t,r,i);let o=p(s)+p(a);for(let n=t;n<r-t;n++){const t=e.children[n];u(s,e.leaf?i(t):t),o+=p(s)}for(let n=r-t-1;n>=t;n--){const t=e.children[n];u(a,e.leaf?i(t):t),o+=p(a)}return o}_condense(e){for(let t=e.length-1;t>=0;t--){const r=e.data[t];if(0===r.children.length)if(t>0){const i=e.data[t-1],s=i.children;s.splice((0,n.qh)(s,r,s.length,i.indexHint),1)}else this.clear();else c(r,this._toBBox)}}_initFormat(e){const t=["return a"," - b",";"];this._compareMinX=new Function("a","b",t.join(e[0])),this._compareMinY=new Function("a","b",t.join(e[1])),this._toBBox=new Function("a","return {minX: a"+e[0]+", minY: a"+e[1]+", maxX: a"+e[2]+", maxY: a"+e[3]+"};")}}function l(e,t){let r=e;for(x.clear();r;){if(!0===r.leaf)for(const e of r.children)t((0,i.zI)(e));else x.pushArray(r.children);r=x.pop()??null}}function c(e,t){d(e,0,e.children.length,t,e)}function d(e,t,r,n,i){i||(i=new A([])),i.minX=1/0,i.minY=1/0,i.maxX=-1/0,i.maxY=-1/0;for(let s,a=t;a<r;a++)s=e.children[a],u(i,e.leaf?n(s):s);return i}function u(e,t){e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY)}function h(e,t){return e.minX-t.minX}function m(e,t){return e.minY-t.minY}function f(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function p(e){return e.maxX-e.minX+(e.maxY-e.minY)}function y(e,t){return(Math.max(t.maxX,e.maxX)-Math.min(t.minX,e.minX))*(Math.max(t.maxY,e.maxY)-Math.min(t.minY,e.minY))}function g(e,t){const r=Math.max(e.minX,t.minX),n=Math.max(e.minY,t.minY),i=Math.min(e.maxX,t.maxX),s=Math.min(e.maxY,t.maxY);return Math.max(0,i-r)*Math.max(0,s-n)}function _(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function b(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function v(e,t,r,n,i){const s=[t,r];for(;s.length;){const t=s.pop(),r=s.pop();if(t-r<=n)continue;const o=r+Math.ceil((t-r)/n/2)*n;(0,a.q)(e,o,r,t,i),s.push(r,o,o,t)}}const w=new s.A,x=new s.A,S=new s.A,C=new s.A({deallocator:void 0});class T{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class I extends T{constructor(){super(...arguments),this.height=1,this.indexHint=new n.vW}}class A extends I{constructor(e){super(),this.children=e,this.leaf=!0}}class O extends I{constructor(e){super(),this.children=e,this.leaf=!1}}},76357:(e,t,r)=>{r.d(t,{A:()=>d});var n=r(90237),i=r(66552),s=r(25482),a=r(10107),o=(r(44208),r(53966),r(87811),r(93223)),l=r(40608);const c=new i.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let d=class extends s.A{constructor(e){super(e),this.name=null,this.type=null}};(0,n._)([(0,a.MZ)({type:String,json:{write:!0}})],d.prototype,"name",void 0),(0,n._)([(0,o.e)(c),(0,a.MZ)({json:{write:{isRequired:!0}}})],d.prototype,"type",void 0),d=(0,n._)([(0,l.$)("esri.layers.support.Domain")],d)},77548:(e,t,r)=>{r.d(t,{tk:()=>u,BR:()=>d,wI:()=>c,Ov:()=>o,W_:()=>l,TU:()=>a,XX:()=>s});var n=r(70333),i=r(78888);r(5503),r(36563),r(36708),new WeakMap;const s={Point:"SceneLayer","3DObject":"SceneLayer",IntegratedMesh:"IntegratedMeshLayer",PointCloud:"PointCloudLayer",Building:"BuildingSceneLayer"};function a(e){const t=e?.type;return"building-scene"===t||"integrated-mesh"===t||"point-cloud"===t||"scene"===t}function o(e){return"feature"===e?.type&&!e.url&&"memory"===e.source?.type}function l(e){const t=e?.type;return("feature"===t||"subtype-group"===t||"oriented-imagery"===t)&&"feature-layer"===e?.source?.type}async function c(e,t){const r=n.id?.findServerInfo(e);if(null!=r?.currentVersion)return r.owningSystemUrl||null;const s=e.toLowerCase().indexOf("/rest/services");if(-1===s)return null;const a=`${e.slice(0,s)}/rest/info`,o=null!=t?t.signal:null,{data:l}=await(0,i.A)(a,{query:{f:"json"},responseType:"json",signal:o});return l?.owningSystemUrl||null}function d(e){return function(e){if(!("capabilities"in e))return!1;switch(e.type){case"catalog":case"catalog-footprint":case"csv":case"feature":case"geojson":case"imagery":case"knowledge-graph-sublayer":case"ogc-feature":case"oriented-imagery":case"scene":case"sublayer":case"subtype-group":case"subtype-sublayer":case"wfs":return!0;default:return!1}}(e)?"effectiveCapabilities"in e?e.effectiveCapabilities:e.capabilities:null}function u(e){return!!function(e){if(!("editingEnabled"in e))return!1;switch(e.type){case"csv":case"feature":case"geojson":case"oriented-imagery":case"scene":case"subtype-group":case"subtype-sublayer":return!0;default:return!1}}(e)&&("effectiveEditingEnabled"in e?e.effectiveEditingEnabled:e.editingEnabled)}},78502:(e,t,r)=>{r.d(t,{Fq:()=>a,Yc:()=>i,Yq:()=>s});var n=r(5443);function i(e){if(null==e)return null;switch(e.type){case"polygon":case"multipoint":case"polyline":return e.extent;case"point":return new n.A({xmin:e.x,ymin:e.y,xmax:e.x,ymax:e.y,spatialReference:e.spatialReference});case"extent":return e}return null}function s(e){if(null==e)return null;const t=e.clone();return void 0!==e.cache._geVersion&&(t.cache._geVersion=e.cache._geVersion),t}function a(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e}},80451:(e,t,r)=>{r.d(t,{rS:()=>f,gK:()=>m}),r(44208);var n,i=r(53177),s=r(76357),a=r(90237),o=(r(53966),r(87811),r(49186),r(93223)),l=r(40608);let c=class extends s.A{static{n=this}constructor(e){super(e),this.type="inherited"}clone(){return new n}};(0,a._)([(0,o.e)({inherited:"inherited"})],c.prototype,"type",void 0),c=n=(0,a._)([(0,l.$)("esri.layers.support.InheritedDomain")],c);var d,u=r(10107);let h=class extends s.A{static{d=this}constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new d({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,a._)([(0,u.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,r){t[r]=[this.minValue||0,e]},isRequired:!0}}})],h.prototype,"maxValue",void 0),(0,a._)([(0,u.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[0]},write:{target:"range",writer(e,t,r){t[r]=[e,this.maxValue||0]},isRequired:!0}}})],h.prototype,"minValue",void 0),(0,a._)([(0,o.e)({range:"range"})],h.prototype,"type",void 0),h=d=(0,a._)([(0,l.$)("esri.layers.support.RangeDomain")],h);const m={key:"type",base:s.A,typeMap:{range:h,"coded-value":i.A,inherited:c}};function f(e){if(!e?.type)return null;switch(e.type){case"range":return h.fromJSON(e);case"codedValue":return i.A.fromJSON(e);case"inherited":return c.fromJSON(e)}return null}},80893:(e,t,r)=>{r.d(t,{IJ:()=>f,Jf:()=>_,Pk:()=>y,eW:()=>m,gW:()=>g,kS:()=>p});var n=r(78888),i=r(84952),s=r(65864),a=r(17136),o=r(21325),l=r(10536),c=r(66208),d=r(58501);const u="Layer does not support extent calculation.";function h(e,t,r){const n=e.geometry,i=e.toJSON();delete i.compactGeometryEnabled,delete i.defaultSpatialReferenceEnabled;const a=i;let l,c,d;if(n&&(c=n.spatialReference,d=(0,o.YX)(c),a.geometryType=(0,s.$B)(n),a.geometry=function(e,t){if(t&&"extent"===e.type)return`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`;if(t&&"point"===e.type)return`${e.x},${e.y}`;const r=e.toJSON();return delete r.spatialReference,JSON.stringify(r)}(n,e.compactGeometryEnabled),a.inSR=d),i.groupByFieldsForStatistics&&(a.groupByFieldsForStatistics=i.groupByFieldsForStatistics.join(",")),i.objectIds)switch(r?.uniqueIdFields?.length){case void 0:a.objectIds=i.objectIds.join(",");break;case 1:a.uniqueIds=JSON.stringify(i.objectIds),delete a.objectIds;break;default:a.uniqueIds=JSON.stringify(i.objectIds.map((e=>JSON.parse(e)))),delete a.objectIds}if(i.orderByFields&&(a.orderByFields=i.orderByFields.join(",")),!i.outFields||!i.returnDistinctValues&&(t?.returnCountOnly||t?.returnExtentOnly||t?.returnIdsOnly)?delete a.outFields:i.outFields.includes("*")?a.outFields="*":a.outFields=i.outFields.join(","),i.outSR?(a.outSR=(0,o.YX)(i.outSR),l=e.outSpatialReference):n&&(i.returnGeometry||i.returnCentroid)&&(a.outSR=a.inSR,l=c),i.returnGeometry&&delete i.returnGeometry,i.outStatistics&&(a.outStatistics=JSON.stringify(i.outStatistics)),i.fullText&&(a.fullText=JSON.stringify(i.fullText)),i.pixelSize&&(a.pixelSize=JSON.stringify(i.pixelSize)),i.quantizationParameters&&(e.defaultSpatialReferenceEnabled&&null!=c&&null!=e.quantizationParameters?.extent&&c.equals(e.quantizationParameters.extent.spatialReference)&&delete i.quantizationParameters.extent.spatialReference,a.quantizationParameters=JSON.stringify(i.quantizationParameters)),i.parameterValues&&(a.parameterValues=JSON.stringify(i.parameterValues)),i.rangeValues&&(a.rangeValues=JSON.stringify(i.rangeValues)),i.dynamicDataSource&&(a.layer=JSON.stringify({source:i.dynamicDataSource}),delete i.dynamicDataSource),i.timeExtent){const e=i.timeExtent,{start:t,end:r}=e;null==t&&null==r||(a.time=t===r?t:`${t??"null"},${r??"null"}`),delete i.timeExtent}return e.defaultSpatialReferenceEnabled&&null!=c&&null!=l&&c.equals(l)&&(a.defaultSR=a.inSR,delete a.inSR,delete a.outSR),a}async function m(e,t,r,n,i){const s=t.timeExtent?.isEmpty?{data:{features:[]}}:await v(e,t,"json",n,void 0,i);return(0,d.q)(t,r,s.data),s}async function f(e,t,r,n,i){if(t.timeExtent?.isEmpty)return{data:r.createFeatureResult()};const s=await p(e,t,n,i),a=s;return a.data=(0,c.m)(s.data,r),a}function p(e,t,r,n){return v(e,t,"pbf",r,void 0,n)}function y(e,t,r,n){return t.timeExtent?.isEmpty?Promise.resolve({data:{objectIds:[]}}):v(e,t,"json",r,{returnIdsOnly:!0},n)}function g(e,t,r,n){return t.timeExtent?.isEmpty?Promise.resolve({data:{count:0}}):v(e,t,"json",r,{returnIdsOnly:!0,returnCountOnly:!0},n)}async function _(e,t,r){if(t.timeExtent?.isEmpty)return{data:{count:0,extent:null}};const n=await v(e,t,"json",r,{returnExtentOnly:!0,returnCountOnly:!0}),i=n.data;if(i.hasOwnProperty("extent"))return n;if(i.features)throw new Error(u);if(i.hasOwnProperty("count"))throw new Error(u);return n}function b(e,t){if(!e.returnIdsOnly||!t.uniqueIdFields)return e;const r={...e,returnUniqueIdsOnly:!0};return delete r.returnIdsOnly,r}async function v(e,t,r,s={},o={},c={}){const d="string"==typeof e?(0,i.An)(e):e,u=t.geometry?[t.geometry]:[],m=await(0,a.el)(u,null,{signal:s.signal}),f=m?.[0];null!=f&&((t=t.clone()).geometry=f);const p=(0,l.z)({...d.query,f:r,...b(o,c),...h(t,o,c)});return(0,n.A)((0,i.fj)(d.path,(y=o,null==t.formatOf3DObjects||y.returnCountOnly||y.returnExtentOnly||y.returnIdsOnly?"query":"query3d")),{...s,responseType:"pbf"===r?"array-buffer":"json",query:{...p,...s.query}});var y}},81961:(e,t,r)=>{r.d(t,{V:()=>s});var n=r(69270),i=r(74333);class s extends i.n{constructor(e,t){super(e,"vec4",n.c.Draw,((r,n,i)=>r.setUniform4fv(e,t(n,i))))}}},87582:(e,t,r)=>{r(6867);var n=r(65215);r(29878),n.R},95696:(e,t,r)=>{r.d(t,{A:()=>d});var n,i=r(90237),s=r(69540),a=r(25482),o=r(10107),l=(r(44208),r(53966),r(87811),r(93223)),c=r(40608);let d=class extends(s.A.ClonableMixin(a.A)){static{n=this}constructor(e){super(e),this.type="georeferenced",this.origin=null}static{this.absolute=new n}};(0,i._)([(0,l.e)({georeferenced:"georeferenced"},{readOnly:!0})],d.prototype,"type",void 0),(0,i._)([(0,o.MZ)({type:[Number],nonNullable:!1,json:{write:!0}})],d.prototype,"origin",void 0),d=n=(0,i._)([(0,c.$)("esri.geometry.support.MeshGeoreferencedVertexSpace")],d)},96576:(e,t,r)=>{r.d(t,{A:()=>h});var n,i=r(90237),s=r(4718),a=r(10107),o=(r(44208),r(53966),r(93223)),l=r(40608),c=r(92438),d=r(63988),u=r(49849);let h=n=class extends((0,d.h)(c.A)){constructor(e){super(e),this.description=null,this.label=null,this.symbol=null,this.type="simple"}async collectRequiredFields(e,t){await Promise.all([this.collectSymbolFields(e,t),this.collectVVRequiredFields(e,t)])}async collectSymbolFields(e,t){await Promise.all(this.symbols.map((r=>r.collectRequiredFields(e,t))))}getSymbol(e,t){return this.symbol}async getSymbolAsync(e,t){return this.symbol}get symbols(){return this.symbol?[this.symbol]:[]}getAttributeHash(){return this.visualVariables?.reduce(((e,t)=>e+t.getAttributeHash()),"")??""}getMeshHash(){return this.symbols.reduce(((e,t)=>e+JSON.stringify(t)),"")}get arcadeRequired(){return this.arcadeRequiredForVisualVariables}clone(){return new n({description:this.description,label:this.label,symbol:(0,s.o8)(this.symbol),visualVariables:(0,s.o8)(this.visualVariables),authoringInfo:(0,s.o8)(this.authoringInfo)})}};(0,i._)([(0,a.MZ)({type:String,json:{write:!0}})],h.prototype,"description",void 0),(0,i._)([(0,a.MZ)({type:String,json:{write:!0}})],h.prototype,"label",void 0),(0,i._)([(0,a.MZ)(u.Wp)],h.prototype,"symbol",void 0),(0,i._)([(0,o.e)({simple:"simple"})],h.prototype,"type",void 0),h=n=(0,i._)([(0,l.$)("esri.renderers.SimpleRenderer")],h)},98453:(e,t,r)=>{r.d(t,{m:()=>n});const n=new(r(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"})}}]);