@arcgis/core 4.34.0-next.89 → 4.34.0-next.90

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 (380) hide show
  1. package/applications/Components/featureUtils.d.ts +2 -0
  2. package/applications/Components/featureUtils.js +1 -1
  3. package/assets/esri/core/workers/RemoteClient.js +1 -1
  4. package/assets/esri/core/workers/chunks/{eada3483116a5ea8baed.js → 004c2a1a37b99a184b13.js} +1 -1
  5. package/assets/esri/core/workers/chunks/{23f54b49742098def8ae.js → 00ee2a605c30744f415a.js} +1 -1
  6. package/assets/esri/core/workers/chunks/024063fe2bbb27899094.js +1 -0
  7. package/assets/esri/core/workers/chunks/0271a2ca4e9b1e4fd284.js +1 -0
  8. package/assets/esri/core/workers/chunks/0328eaea66c1db98da1c.js +1 -0
  9. package/assets/esri/core/workers/chunks/04bac7bb3f794b33e2e4.js +1 -0
  10. package/assets/esri/core/workers/chunks/{8380a092ffc8e92ede7a.js → 05072093e0209ef5db20.js} +1 -1
  11. package/assets/esri/core/workers/chunks/{b53008c1461dd6bacc63.js → 06221ebadab32111e2c6.js} +1 -1
  12. package/assets/esri/core/workers/chunks/06aed0a5464965be8d52.js +1 -0
  13. package/assets/esri/core/workers/chunks/{67fdc8074cdcf374af9a.js → 07a7ca89ef2ca4fc090b.js} +1 -1
  14. package/assets/esri/core/workers/chunks/0810dbbf348a927392e7.js +1 -0
  15. package/assets/esri/core/workers/chunks/08374e5805fcedc1cb57.js +1 -0
  16. package/assets/esri/core/workers/chunks/0856cd281efd71bfe3c4.js +1 -0
  17. package/assets/esri/core/workers/chunks/08957e462d06c4dc8ab5.js +1 -0
  18. package/assets/esri/core/workers/chunks/0aaaf4d1c4a5d284216e.js +1 -0
  19. package/assets/esri/core/workers/chunks/{3c0990c4be06a2fd51e9.js → 0ca5060c81a1a05b8be3.js} +1 -1
  20. package/assets/esri/core/workers/chunks/0ceb68ff73e5d39e837a.js +1 -0
  21. package/assets/esri/core/workers/chunks/{998d164b3e0b99a0ff1e.js → 0e5e565df6ec71445f2e.js} +1 -1
  22. package/assets/esri/core/workers/chunks/0f4e9846d074864b39c2.js +1 -0
  23. package/assets/esri/core/workers/chunks/100a0041ee42b0b2fa32.js +1 -0
  24. package/assets/esri/core/workers/chunks/1194c2432c31def87db1.js +1 -0
  25. package/assets/esri/core/workers/chunks/{2896ada406074f754b00.js → 1214c126af0de25a4b4a.js} +1 -1
  26. package/assets/esri/core/workers/chunks/{978ffde9ebebf5c83aea.js → 14114be3afd6d292f89c.js} +1 -1
  27. package/assets/esri/core/workers/chunks/{4dd4b19c410026233999.js → 142c45ad68eecaf3fc7c.js} +1 -1
  28. package/assets/esri/core/workers/chunks/{2b2f1fcd50dea017d891.js → 147f6e7b147beaa4ed29.js} +1 -1
  29. package/assets/esri/core/workers/chunks/155dcbd957f8787a45c3.js +1 -0
  30. package/assets/esri/core/workers/chunks/{d5363e5637d37e89a25f.js → 18e9cb71fa020e93d139.js} +1 -1
  31. package/assets/esri/core/workers/chunks/19bd0b56d82446dbb7c5.js +1 -0
  32. package/assets/esri/core/workers/chunks/{96de78f9994207aa7201.js → 1bbc0dfad4cd72a1c42b.js} +1 -1
  33. package/assets/esri/core/workers/chunks/{914eaed113dda727eb47.js → 20988e116f3723228f36.js} +1 -1
  34. package/assets/esri/core/workers/chunks/{831a69e5a87e92830fbe.js → 21f37a4b8d1857369203.js} +1 -1
  35. package/assets/esri/core/workers/chunks/22c3a21bc9f32c429c48.js +1 -0
  36. package/assets/esri/core/workers/chunks/282c4f3484c605ce7d5e.js +1 -0
  37. package/assets/esri/core/workers/chunks/2870723d57aa7b885896.js +1 -0
  38. package/assets/esri/core/workers/chunks/28bb6896c5fd353ca5e9.js +1 -0
  39. package/assets/esri/core/workers/chunks/2b867cec6ada339f1c8f.js +1 -0
  40. package/assets/esri/core/workers/chunks/{709dc98379f4ce18a0b5.js → 31186e83fe009aa0fd36.js} +1 -1
  41. package/assets/esri/core/workers/chunks/{c779c8b98e07fa881c1d.js → 348c871657b0af621c33.js} +1 -1
  42. package/assets/esri/core/workers/chunks/35ca317490540fae437c.js +1 -0
  43. package/assets/esri/core/workers/chunks/{c5fe356fc5b8b7be0d31.js → 375f20f2e91d6a7507e8.js} +1 -1
  44. package/assets/esri/core/workers/chunks/3807d0b9b1894731174d.js +1 -0
  45. package/assets/esri/core/workers/chunks/38d874d7f815f5329420.js +1 -0
  46. package/assets/esri/core/workers/chunks/393274af1804e5b6046a.js +1 -0
  47. package/assets/esri/core/workers/chunks/3c3b1dc95f03082e4d5b.js +1 -0
  48. package/assets/esri/core/workers/chunks/3dcdbba706a8034b6ba3.js +1 -0
  49. package/assets/esri/core/workers/chunks/{834985ec601623df34a1.js → 3e11a893271caa11a881.js} +1 -1
  50. package/assets/esri/core/workers/chunks/4133ab8720e7e4afa9a6.js +1 -0
  51. package/assets/esri/core/workers/chunks/{b246ed6d86c2c8df56fb.js → 41f275401e1cde7eee20.js} +1 -1
  52. package/assets/esri/core/workers/chunks/{595593dd03bcfba795c8.js → 4660798b3b45dcb5cecb.js} +2 -2
  53. package/assets/esri/core/workers/chunks/{69ae235423f0b1bdfcb4.js → 48c8ef4170e803a564d6.js} +1 -1
  54. package/assets/esri/core/workers/chunks/{c90830ee562b5ddc4f8b.js → 49e6219dd08cb6c27023.js} +1 -1
  55. package/assets/esri/core/workers/chunks/{00bbd37910c70989b54d.js → 4d0e099f34639cda3a9b.js} +1 -1
  56. package/assets/esri/core/workers/chunks/4d807bfe75108438db83.js +1 -0
  57. package/assets/esri/core/workers/chunks/{d1fc2c6e95fe2572d297.js → 50d9f69d5255af4b29bb.js} +1 -1
  58. package/assets/esri/core/workers/chunks/{300b96f0f8e34b4a5d8b.js → 56de25a6fe659a5b5c2b.js} +1 -1
  59. package/assets/esri/core/workers/chunks/57c08ccb75e3135978d1.js +1 -0
  60. package/assets/esri/core/workers/chunks/5ad1985a9e66fb2232ae.js +1 -0
  61. package/assets/esri/core/workers/chunks/{d8494617cebc68e50d35.js → 5b7a2ee44883b1fb2a5f.js} +1 -1
  62. package/assets/esri/core/workers/chunks/5caf49e679ed0c27e0bd.js +1 -0
  63. package/assets/esri/core/workers/chunks/{f5c821ca2911a5103c9a.js → 5d15ca055071d7db6de8.js} +1 -1
  64. package/assets/esri/core/workers/chunks/{59139347495988b19061.js → 61a9ffd4cf07d8bb7a9b.js} +1 -1
  65. package/assets/esri/core/workers/chunks/61e8e159f1f336569b27.js +1 -0
  66. package/assets/esri/core/workers/chunks/{88b8f33ce1cbf8a0f855.js → 633faa9cec8988ab06af.js} +4 -4
  67. package/assets/esri/core/workers/chunks/648c91a9822bc9d6ee47.js +1 -0
  68. package/assets/esri/core/workers/chunks/6aa349e1adf844df4b5b.js +1 -0
  69. package/assets/esri/core/workers/chunks/{d2371f5034b2a32e2523.js → 6cfa0967045068ce8a8b.js} +1 -1
  70. package/assets/esri/core/workers/chunks/{28d30be414e59eabd963.js → 70c8f69eed14d55c5cf6.js} +1 -1
  71. package/assets/esri/core/workers/chunks/{fdc8300b6374ef2b8b3e.js → 74881340e040bfd0580f.js} +1 -1
  72. package/assets/esri/core/workers/chunks/{8be81e1530b952c97936.js → 768ae52b4e5c3e571ef5.js} +1 -1
  73. package/assets/esri/core/workers/chunks/{b43473e84b3f7fa2634d.js → 77e611724a499d36eacc.js} +1 -1
  74. package/assets/esri/core/workers/chunks/7f8b85de079614b9c336.js +1 -0
  75. package/assets/esri/core/workers/chunks/{9280edff80fd87860a5e.js → 80a155496deef2c02a3e.js} +1 -1
  76. package/assets/esri/core/workers/chunks/{7db105f6b688b6da8106.js → 82ba4140e30f083fbc87.js} +1 -1
  77. package/assets/esri/core/workers/chunks/{672c04d48aa51f16e9b7.js → 8a6052b4d163d5088e11.js} +1 -1
  78. package/assets/esri/core/workers/chunks/{5b35b30495145bf8dd5d.js → 8ff2daef892881ff2019.js} +1 -1
  79. package/assets/esri/core/workers/chunks/9a855a10798348a21bab.js +1 -0
  80. package/assets/esri/core/workers/chunks/9bb6984f24cd5461a754.js +1 -0
  81. package/assets/esri/core/workers/chunks/9d9a639f7388a29e7c96.js +1 -0
  82. package/assets/esri/core/workers/chunks/{813efde41e90e652b7db.js → 9f2a3f37fe9b19ef1209.js} +1 -1
  83. package/assets/esri/core/workers/chunks/a1a7b0e7ca488c895cb7.js +1 -0
  84. package/assets/esri/core/workers/chunks/a6a2d4602dfeb62e0ecc.js +1 -0
  85. package/assets/esri/core/workers/chunks/{d3fd11da3a823e148957.js → ab88577987cf2fe1cb32.js} +1 -1
  86. package/assets/esri/core/workers/chunks/{a6767d75e718f2e1e714.js → ad9606164c694af0c61f.js} +1 -1
  87. package/assets/esri/core/workers/chunks/b18887a6dc86f0c8324a.js +1 -0
  88. package/assets/esri/core/workers/chunks/b240298b8b643a323d34.js +1 -0
  89. package/assets/esri/core/workers/chunks/{481c2b01e2fe92249698.js → b265472ac3f949a7f40c.js} +1 -1
  90. package/assets/esri/core/workers/chunks/b47f26d6aa9a2848a677.js +1 -0
  91. package/assets/esri/core/workers/chunks/{4094cebc4b92c52f4e27.js → b48abbf877e26ed1a4f8.js} +1 -1
  92. package/assets/esri/core/workers/chunks/b510c07dfd0d31683b08.js +1 -0
  93. package/assets/esri/core/workers/chunks/b661ea374fe38c8e29ca.js +1 -0
  94. package/assets/esri/core/workers/chunks/b8f55ee77ab6ea4c289e.js +1 -0
  95. package/assets/esri/core/workers/chunks/{ccd157ede169b93eea65.js → bb0a1be03bb9d621432c.js} +1 -1
  96. package/assets/esri/core/workers/chunks/{fdae43a97537093e4b97.js → bdf0ab95401c6d8fbc7d.js} +1 -1
  97. package/assets/esri/core/workers/chunks/c20862fe15295a294bbd.js +1 -0
  98. package/assets/esri/core/workers/chunks/{365d63c2aed3a49918f2.js → c27783ce7ea51a5e49c5.js} +1 -1
  99. package/assets/esri/core/workers/chunks/{ce937ff0dd1147ea297e.js → c3020747f9001ca6a6e7.js} +1 -1
  100. package/assets/esri/core/workers/chunks/{516864fb68025acc7db6.js → c547692862df95d22818.js} +1 -1
  101. package/assets/esri/core/workers/chunks/c5c6a32a24005478c976.js +1 -0
  102. package/assets/esri/core/workers/chunks/{e4acc3c2b6d865ed1940.js → c7c76a8a1c47eb62bef1.js} +1 -1
  103. package/assets/esri/core/workers/chunks/{58422c616a824ab49218.js → c84665db250b05e2829d.js} +1 -1
  104. package/assets/esri/core/workers/chunks/cb6a9b43406f4fbe10b2.js +1 -0
  105. package/assets/esri/core/workers/chunks/{cef9ff811221a7c3812c.js → cb90cfa35d77ab561939.js} +1 -1
  106. package/assets/esri/core/workers/chunks/ced12ad98f8f48d0dc00.js +1 -0
  107. package/assets/esri/core/workers/chunks/{bd451668c4ce9f7d7128.js → d56548a994753b08403c.js} +1 -1
  108. package/assets/esri/core/workers/chunks/{251b7f2e295ce191eb62.js → da4163b4f9b34e83c92d.js} +1 -1
  109. package/assets/esri/core/workers/chunks/{43fba9d6be5971ec20a9.js → e0017c6739d2532793e6.js} +1 -1
  110. package/assets/esri/core/workers/chunks/e22b400636094fc7b6c0.js +1 -0
  111. package/assets/esri/core/workers/chunks/{0296ebe8e37e30af771c.js → e2fdc4dc1ab9decd731e.js} +1 -1
  112. package/assets/esri/core/workers/chunks/e34136ad9d620cb845fd.js +1 -0
  113. package/assets/esri/core/workers/chunks/e537e1d37f3fcb14fce2.js +1 -0
  114. package/assets/esri/core/workers/chunks/e5baa30944061418cb13.js +1 -0
  115. package/assets/esri/core/workers/chunks/edef1e2254c992459c63.js +1 -0
  116. package/assets/esri/core/workers/chunks/{109149c378aa4c5f8526.js → eea9d49d55c2d1355497.js} +1 -1
  117. package/assets/esri/core/workers/chunks/{3245663da75e168bf85c.js → ef75cad6570b14a42b62.js} +1 -1
  118. package/assets/esri/core/workers/chunks/{2a2a925c45d5fd58628b.js → f3284d4e0d41efb0b4a0.js} +1 -1
  119. package/assets/esri/core/workers/chunks/f62717338075df626eda.js +1 -0
  120. package/assets/esri/core/workers/chunks/{d07d3b0e06f12aee4a8b.js → f6ce485c082d0d640b01.js} +1 -1
  121. package/assets/esri/core/workers/chunks/fb6ebb780bb59e252887.js +1 -0
  122. package/assets/esri/core/workers/chunks/{69e6000044bfb03776ac.js → fd34c033ce7f16835368.js} +1 -1
  123. package/assets/esri/core/workers/chunks/fdadf11f31384c09db9f.js +1 -0
  124. package/assets/esri/core/workers/chunks/{80bd5988180f4618fd61.js → ff6d189ba78980d40bb5.js} +1 -1
  125. package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
  126. package/assets/esri/widgets/Sketch/t9n/Sketch_ar.json +1 -1
  127. package/assets/esri/widgets/Sketch/t9n/Sketch_bg.json +1 -1
  128. package/assets/esri/widgets/Sketch/t9n/Sketch_bs.json +1 -1
  129. package/assets/esri/widgets/Sketch/t9n/Sketch_ca.json +1 -1
  130. package/assets/esri/widgets/Sketch/t9n/Sketch_cs.json +1 -1
  131. package/assets/esri/widgets/Sketch/t9n/Sketch_da.json +1 -1
  132. package/assets/esri/widgets/Sketch/t9n/Sketch_de.json +1 -1
  133. package/assets/esri/widgets/Sketch/t9n/Sketch_el.json +1 -1
  134. package/assets/esri/widgets/Sketch/t9n/Sketch_es.json +1 -1
  135. package/assets/esri/widgets/Sketch/t9n/Sketch_et.json +1 -1
  136. package/assets/esri/widgets/Sketch/t9n/Sketch_fi.json +1 -1
  137. package/assets/esri/widgets/Sketch/t9n/Sketch_fr.json +1 -1
  138. package/assets/esri/widgets/Sketch/t9n/Sketch_he.json +1 -1
  139. package/assets/esri/widgets/Sketch/t9n/Sketch_hr.json +1 -1
  140. package/assets/esri/widgets/Sketch/t9n/Sketch_hu.json +1 -1
  141. package/assets/esri/widgets/Sketch/t9n/Sketch_id.json +1 -1
  142. package/assets/esri/widgets/Sketch/t9n/Sketch_it.json +1 -1
  143. package/assets/esri/widgets/Sketch/t9n/Sketch_ja.json +1 -1
  144. package/assets/esri/widgets/Sketch/t9n/Sketch_ko.json +1 -1
  145. package/assets/esri/widgets/Sketch/t9n/Sketch_lt.json +1 -1
  146. package/assets/esri/widgets/Sketch/t9n/Sketch_lv.json +1 -1
  147. package/assets/esri/widgets/Sketch/t9n/Sketch_nl.json +1 -1
  148. package/assets/esri/widgets/Sketch/t9n/Sketch_no.json +1 -1
  149. package/assets/esri/widgets/Sketch/t9n/Sketch_pl.json +1 -1
  150. package/assets/esri/widgets/Sketch/t9n/Sketch_pt-BR.json +1 -1
  151. package/assets/esri/widgets/Sketch/t9n/Sketch_pt-PT.json +1 -1
  152. package/assets/esri/widgets/Sketch/t9n/Sketch_ro.json +1 -1
  153. package/assets/esri/widgets/Sketch/t9n/Sketch_ru.json +1 -1
  154. package/assets/esri/widgets/Sketch/t9n/Sketch_sk.json +1 -1
  155. package/assets/esri/widgets/Sketch/t9n/Sketch_sl.json +1 -1
  156. package/assets/esri/widgets/Sketch/t9n/Sketch_sr.json +1 -1
  157. package/assets/esri/widgets/Sketch/t9n/Sketch_sv.json +1 -1
  158. package/assets/esri/widgets/Sketch/t9n/Sketch_th.json +1 -1
  159. package/assets/esri/widgets/Sketch/t9n/Sketch_tr.json +1 -1
  160. package/assets/esri/widgets/Sketch/t9n/Sketch_uk.json +1 -1
  161. package/assets/esri/widgets/Sketch/t9n/Sketch_vi.json +1 -1
  162. package/assets/esri/widgets/Sketch/t9n/Sketch_zh-CN.json +1 -1
  163. package/assets/esri/widgets/Sketch/t9n/Sketch_zh-HK.json +1 -1
  164. package/assets/esri/widgets/Sketch/t9n/Sketch_zh-TW.json +1 -1
  165. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_ar.json +1 -1
  166. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_bg.json +1 -1
  167. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_bs.json +1 -1
  168. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_ca.json +1 -1
  169. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_cs.json +1 -1
  170. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_da.json +1 -1
  171. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_de.json +1 -1
  172. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_el.json +1 -1
  173. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_es.json +1 -1
  174. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_et.json +1 -1
  175. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_fi.json +1 -1
  176. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_fr.json +1 -1
  177. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_he.json +1 -1
  178. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_hr.json +1 -1
  179. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_hu.json +1 -1
  180. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_id.json +1 -1
  181. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_it.json +1 -1
  182. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_ja.json +1 -1
  183. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_ko.json +1 -1
  184. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_lt.json +1 -1
  185. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_lv.json +1 -1
  186. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_nl.json +1 -1
  187. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_no.json +1 -1
  188. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_pl.json +1 -1
  189. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_pt-BR.json +1 -1
  190. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_pt-PT.json +1 -1
  191. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_ro.json +1 -1
  192. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_ru.json +1 -1
  193. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_sk.json +1 -1
  194. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_sl.json +1 -1
  195. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_sr.json +1 -1
  196. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_sv.json +1 -1
  197. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_th.json +1 -1
  198. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_tr.json +1 -1
  199. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_uk.json +1 -1
  200. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_vi.json +1 -1
  201. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_zh-CN.json +1 -1
  202. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_zh-HK.json +1 -1
  203. package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_zh-TW.json +1 -1
  204. package/chunks/Bufferer-Dw9Qi4T1.js +1 -1
  205. package/chunks/Distance2DCalculator-CXhBP-8I.js +1 -1
  206. package/chunks/GaussianSplat.glsl.js +2 -2
  207. package/chunks/GeodeticDistanceCalculator-Ce-woMPw.js +1 -1
  208. package/chunks/GeodeticUtils.js +1 -1
  209. package/chunks/GlowBlur.glsl.js +5 -5
  210. package/chunks/MultiPathImpl.js +1 -1
  211. package/chunks/OITBlend.glsl.js +9 -7
  212. package/chunks/OperatorCrosses.js +1 -1
  213. package/chunks/OperatorCut.js +1 -1
  214. package/chunks/OperatorGeodesicBuffer.js +1 -1
  215. package/chunks/OperatorGeodeticArea.js +1 -1
  216. package/chunks/OperatorGeodeticDensifyByLength.js +1 -1
  217. package/chunks/OperatorGeodeticLength.js +1 -1
  218. package/chunks/OperatorIntersects.js +1 -1
  219. package/chunks/OperatorMultiPartToSinglePart.js +1 -1
  220. package/chunks/OperatorOverlaps.js +1 -1
  221. package/chunks/OperatorProximity.js +1 -1
  222. package/chunks/OperatorProximityGeodesic.js +1 -1
  223. package/chunks/OperatorShapePreservingLength.js +1 -1
  224. package/chunks/OperatorShapePreservingProject.js +1 -1
  225. package/chunks/OperatorSimplifyOGC.js +1 -1
  226. package/chunks/OperatorTouches.js +1 -1
  227. package/chunks/OperatorWithin.js +1 -1
  228. package/chunks/Point2D.js +1 -1
  229. package/chunks/ProjectionTransformation.js +1 -1
  230. package/chunks/SideCalculator2D-BNwb5gvz.js +1 -1
  231. package/chunks/UnitFactory.js +1 -1
  232. package/chunks/containsOperator.js +1 -1
  233. package/chunks/disjointOperator.js +1 -1
  234. package/chunks/equalsOperator.js +1 -1
  235. package/chunks/relateOperator.js +1 -1
  236. package/config.js +1 -1
  237. package/geohash/geohashUtils.js +1 -1
  238. package/geometry/operators/gx/operatorAutoComplete.js +1 -1
  239. package/geometry/operators/gx/operatorBuffer.js +1 -1
  240. package/geometry/operators/gx/operatorDifference.js +1 -1
  241. package/geometry/operators/gx/operatorGraphicBuffer.js +1 -1
  242. package/geometry/operators/gx/operatorIntegrate.js +1 -1
  243. package/geometry/operators/gx/operatorIntersection.js +1 -1
  244. package/geometry/operators/gx/operatorLabelPoint.js +1 -1
  245. package/geometry/operators/gx/operatorLinesToPolygons.js +1 -1
  246. package/geometry/operators/gx/operatorPolygonOverlay.js +1 -1
  247. package/geometry/operators/gx/operatorSimplify.js +1 -1
  248. package/geometry/operators/gx/operatorSymmetricDifference.js +1 -1
  249. package/geometry/operators/gx/operatorUnion.js +1 -1
  250. package/geometry/operators/json/containsOperator.js +1 -1
  251. package/geometry/operators/json/disjointOperator.js +1 -1
  252. package/geometry/operators/json/projectOperator.js +5 -0
  253. package/geometry/operators/projectOperator.js +1 -1
  254. package/geometry/operators/reshapeOperator.js +1 -1
  255. package/geometry/operators/shapePreservingProjectOperator.js +1 -1
  256. package/geometry/operators/support/geographicTransformationUtils.js +1 -1
  257. package/geometry/operators/support/initNoPeFactory.js +1 -1
  258. package/geometry/operators/support/jsonConverter.js +1 -1
  259. package/geometry/operators/support/projectionTransformation.js +5 -0
  260. package/geometry/projectionUtils.js +1 -1
  261. package/geometry/support/GeographicTransformation.js +1 -1
  262. package/geometry/support/GeographicTransformationStep.js +1 -1
  263. package/interfaces.d.ts +359 -0
  264. package/intl/date.js +1 -1
  265. package/kernel.js +1 -1
  266. package/layers/graphics/data/QueryEngine.js +1 -1
  267. package/layers/graphics/data/projectionSupport.js +1 -1
  268. package/layers/graphics/data/queryUtils.js +1 -1
  269. package/layers/graphics/sources/support/CSVSourceWorker.js +1 -1
  270. package/layers/support/DateTimeFieldFormat.d.ts +4 -0
  271. package/layers/support/FieldConfiguration.d.ts +4 -0
  272. package/layers/support/NumberFieldFormat.d.ts +4 -0
  273. package/layers/support/vectorTileLayerLoader.js +1 -1
  274. package/package.json +2 -2
  275. package/support/revision.js +1 -1
  276. package/views/2d/engine/flow/dataUtils.js +1 -1
  277. package/views/2d/engine/flow/utils.js +1 -1
  278. package/views/2d/layers/MediaLayerView2D.js +1 -1
  279. package/views/2d/layers/TileLayerView2D.js +1 -1
  280. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementError.d.ts +4 -0
  281. package/views/3d/{support/flow/VisualQuery3D.js → analysis/VolumeMeasurement/VolumeMeasurementError.js} +1 -1
  282. package/views/3d/analysis/VolumeMeasurementAnalysisView3D.js +1 -1
  283. package/views/3d/layers/FlowSubView3D.js +1 -1
  284. package/views/3d/state/ViewState.js +1 -1
  285. package/views/3d/state/controllers/SurfaceCollisionCorrectionController.js +1 -1
  286. package/views/3d/support/DisplayQualityProfile.js +1 -1
  287. package/views/3d/support/QualitySettings.js +1 -1
  288. package/views/3d/support/flow/FlowQuery3D.js +5 -0
  289. package/views/3d/support/flow/FlowSubViewExtent3D.js +1 -1
  290. package/views/3d/support/flow/FlowSubViewTiles3D.js +1 -1
  291. package/views/3d/support/flow/FlowWorker.js +1 -1
  292. package/views/3d/support/flow/StreamlineResources3D.js +1 -1
  293. package/views/3d/support/flow/geometryUtils.js +1 -1
  294. package/views/3d/support/flow/loadUtils.js +1 -1
  295. package/views/3d/support/pointsOfInterest/StableSurfaceCenter.js +1 -1
  296. package/views/3d/webgl-engine/core/shaderLibrary/output/Emissions.glsl.js +2 -2
  297. package/views/3d/webgl-engine/effects/glow/GlowRenderNode.js +1 -1
  298. package/views/3d/webgl-engine/effects/transparency/OITBlend.js +1 -1
  299. package/views/3d/webgl-engine/effects/transparency/OITBlendTechnique.js +1 -1
  300. package/views/3d/webgl-engine/effects/transparency/OITBlendTechniqueConfiguration.js +1 -1
  301. package/views/3d/webgl-engine/lib/CutFillColor.js +1 -1
  302. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  303. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  304. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  305. package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
  306. package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
  307. package/views/3d/webgl-engine/shaders/GaussianSplatTechniqueConfiguration.js +1 -1
  308. package/views/VideoView.js +1 -1
  309. package/views/webgl/enums.js +1 -1
  310. package/views/webgl/renderState.js +1 -1
  311. package/webmap/utils.js +1 -1
  312. package/widgets/Editor/Upload.js +1 -1
  313. package/widgets/FeatureTable/FieldColumn.js +1 -1
  314. package/widgets/FeatureTable/support/tableUtils.js +1 -1
  315. package/widgets/OrientedImageryViewer.js +1 -1
  316. package/assets/esri/core/workers/chunks/0103b70126bc5dffc55e.js +0 -1
  317. package/assets/esri/core/workers/chunks/03ef19f0753d68770444.js +0 -1
  318. package/assets/esri/core/workers/chunks/050429f516149ce3b517.js +0 -1
  319. package/assets/esri/core/workers/chunks/09f1a27442bdd52cdeb7.js +0 -1
  320. package/assets/esri/core/workers/chunks/0fadd1defbb6743dacdc.js +0 -1
  321. package/assets/esri/core/workers/chunks/124f8757ea18bfd158ec.js +0 -1
  322. package/assets/esri/core/workers/chunks/135142f3cbfaf24949bc.js +0 -1
  323. package/assets/esri/core/workers/chunks/138c11b5eca621e51396.js +0 -1
  324. package/assets/esri/core/workers/chunks/14743a962e661babe0a4.js +0 -1
  325. package/assets/esri/core/workers/chunks/1bf17c6548ac4cd5a166.js +0 -1
  326. package/assets/esri/core/workers/chunks/1d9212a70df68a508dca.js +0 -1
  327. package/assets/esri/core/workers/chunks/213e82a7e3fa5b253ec1.js +0 -1
  328. package/assets/esri/core/workers/chunks/3b23c37e5bc552dc81d4.js +0 -1
  329. package/assets/esri/core/workers/chunks/3d68a650a1f944ec5171.js +0 -1
  330. package/assets/esri/core/workers/chunks/451555af283b32a10fef.js +0 -1
  331. package/assets/esri/core/workers/chunks/48913b944c28343816ac.js +0 -1
  332. package/assets/esri/core/workers/chunks/4e6e8dda6c12f6fbed8e.js +0 -1
  333. package/assets/esri/core/workers/chunks/4e77b9cc1d9437bcbb0c.js +0 -1
  334. package/assets/esri/core/workers/chunks/5019f1b8186a65a0313b.js +0 -1
  335. package/assets/esri/core/workers/chunks/547af4ffbeeccba9d187.js +0 -1
  336. package/assets/esri/core/workers/chunks/589a0e244ef5f1b84ab6.js +0 -1
  337. package/assets/esri/core/workers/chunks/59e27818cb68f0285d54.js +0 -1
  338. package/assets/esri/core/workers/chunks/5e1d6704ee0aa41b1d06.js +0 -1
  339. package/assets/esri/core/workers/chunks/6b0baecbd35d26393dcf.js +0 -1
  340. package/assets/esri/core/workers/chunks/6dafb2b95bae552c1cc2.js +0 -1
  341. package/assets/esri/core/workers/chunks/71df48968d6cdc736458.js +0 -1
  342. package/assets/esri/core/workers/chunks/773d106f60f7dad1493d.js +0 -1
  343. package/assets/esri/core/workers/chunks/79c4f10da8360ee60cd2.js +0 -1
  344. package/assets/esri/core/workers/chunks/7aa7aff6d42be7c2d1d2.js +0 -1
  345. package/assets/esri/core/workers/chunks/82404ff7c298493ff6f4.js +0 -1
  346. package/assets/esri/core/workers/chunks/84a556dafd583635ad5e.js +0 -1
  347. package/assets/esri/core/workers/chunks/885a398de8a33d36c59e.js +0 -1
  348. package/assets/esri/core/workers/chunks/8bd6c27a93a697a7fa3d.js +0 -1
  349. package/assets/esri/core/workers/chunks/8be9fa12e854a83062c3.js +0 -1
  350. package/assets/esri/core/workers/chunks/9386a0ebff78b6303ed2.js +0 -1
  351. package/assets/esri/core/workers/chunks/9673e25114fc1897460d.js +0 -1
  352. package/assets/esri/core/workers/chunks/96a14689815bec741308.js +0 -1
  353. package/assets/esri/core/workers/chunks/977582cb3c8f17a2cb4c.js +0 -1
  354. package/assets/esri/core/workers/chunks/97d71459ad72b4b780a3.js +0 -1
  355. package/assets/esri/core/workers/chunks/a1abe9865d66789bd5af.js +0 -1
  356. package/assets/esri/core/workers/chunks/a7ea2e3895046e566bc6.js +0 -1
  357. package/assets/esri/core/workers/chunks/a96e58ed9a4a2329ee53.js +0 -1
  358. package/assets/esri/core/workers/chunks/aa778e5d7db40d9b9b4a.js +0 -1
  359. package/assets/esri/core/workers/chunks/acb49f3d2b783e81a215.js +0 -1
  360. package/assets/esri/core/workers/chunks/b0a03b6edbcf6e933431.js +0 -1
  361. package/assets/esri/core/workers/chunks/bc83bcfe123525d21884.js +0 -1
  362. package/assets/esri/core/workers/chunks/bd028badc07270eda3d0.js +0 -1
  363. package/assets/esri/core/workers/chunks/be8dd8e68c8805300ad1.js +0 -1
  364. package/assets/esri/core/workers/chunks/c1d75c48558ed23c5b2b.js +0 -1
  365. package/assets/esri/core/workers/chunks/c24214666d10cb648428.js +0 -1
  366. package/assets/esri/core/workers/chunks/c3010d783506f8410f99.js +0 -1
  367. package/assets/esri/core/workers/chunks/d0296368ae143de4d5ce.js +0 -1
  368. package/assets/esri/core/workers/chunks/d51aabb9b950f49df183.js +0 -1
  369. package/assets/esri/core/workers/chunks/d8a0eb143b2079d7b6b7.js +0 -1
  370. package/assets/esri/core/workers/chunks/dca2b487152cde45fb65.js +0 -1
  371. package/assets/esri/core/workers/chunks/e760b8ca64d67c04d98a.js +0 -1
  372. package/assets/esri/core/workers/chunks/ee78a38a0cacb19b2fd4.js +0 -1
  373. package/assets/esri/core/workers/chunks/f5710ced8d38f9a90fc5.js +0 -1
  374. package/assets/esri/core/workers/chunks/f592c4e5e1746d4619db.js +0 -1
  375. package/assets/esri/core/workers/chunks/f8d2c52cc51d5f1bbce2.js +0 -1
  376. package/assets/esri/core/workers/chunks/f9decc88561c03aca3c9.js +0 -1
  377. package/assets/esri/core/workers/chunks/fd1fdb97a294a1b7041d.js +0 -1
  378. package/assets/esri/core/workers/chunks/ffee8cc83d703c1dc0c0.js +0 -1
  379. package/chunks/CompositeGeographicTransformation.js +0 -5
  380. package/chunks/GeographicTransformation.js +0 -5
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[36],{1193:(e,t,n)=>{n.d(t,{H:()=>h});var r,o=n(31635),i=n(69540),s=n(25482),a=n(4718),l=n(53966),u=n(10107),c=n(79901),f=n(40608),p=n(31199);let h=r=class extends((0,i.OU)(s.o)){constructor(e){super(e),this.color=null,this.position=new Float64Array(0),this.uv=null,this.normal=null,this.tangent=null}castColor(e){return(0,p.b)(e,Uint8Array,[Uint8ClampedArray],{loggerTag:".color=",stride:4},l.A.getLogger(this))}castPosition(e){return e&&e instanceof Float32Array&&l.A.getLogger(this).warn(".position=","Setting position attribute from a Float32Array may cause precision problems. Consider storing data in a Float64Array or a regular number array"),(0,p.b)(e,Float64Array,[Float32Array],{loggerTag:".position=",stride:3},l.A.getLogger(this))}castUv(e){return(0,p.b)(e,Float32Array,[Float64Array],{loggerTag:".uv=",stride:2},l.A.getLogger(this))}castNormal(e){return(0,p.b)(e,Float32Array,[Float64Array],{loggerTag:".normal=",stride:3},l.A.getLogger(this))}castTangent(e){return(0,p.b)(e,Float32Array,[Float64Array],{loggerTag:".tangent=",stride:4},l.A.getLogger(this))}clonePositional(){const e={position:(0,a.o8)(this.position),normal:(0,a.o8)(this.normal),tangent:(0,a.o8)(this.tangent),uv:this.uv,color:this.color};return new r(e)}get usedMemory(){return this.position.byteLength+(this.uv?.byteLength??0)+(this.normal?.byteLength??0)+(this.tangent?.byteLength??0)+(this.color?.byteLength??0)}};(0,o.Cg)([(0,u.MZ)({json:{write:p.B}})],h.prototype,"color",void 0),(0,o.Cg)([(0,c.w)("color")],h.prototype,"castColor",null),(0,o.Cg)([(0,u.MZ)({nonNullable:!0,json:{write:p.B}})],h.prototype,"position",void 0),(0,o.Cg)([(0,c.w)("position")],h.prototype,"castPosition",null),(0,o.Cg)([(0,u.MZ)({json:{write:p.B}})],h.prototype,"uv",void 0),(0,o.Cg)([(0,c.w)("uv")],h.prototype,"castUv",null),(0,o.Cg)([(0,u.MZ)({json:{write:p.B}})],h.prototype,"normal",void 0),(0,o.Cg)([(0,c.w)("normal")],h.prototype,"castNormal",null),(0,o.Cg)([(0,u.MZ)({json:{write:p.B}})],h.prototype,"tangent",void 0),(0,o.Cg)([(0,c.w)("tangent")],h.prototype,"castTangent",null),h=r=(0,o.Cg)([(0,f.$)("esri.geometry.support.MeshVertexAttributes")],h)},9318:(e,t,n)=>{n.d(t,{b:()=>i});var r=n(34727),o=n(97146);function i(e,t,n){const i=Array.isArray(e),c=i?e.length/t:e.byteLength/(4*t),f=i?e:new Uint32Array(e,0,c*t),p=n?.minReduction??0,h=n?.originalIndices||null,g=h?h.length:0,y=n?.componentOffsets||null;let d=0;if(y)for(let e=0;e<y.length-1;e++){const t=y[e+1]-y[e];t>d&&(d=t)}else d=c;const m=Math.floor(1.1*d)+1;(null==u||u.length<2*m)&&(u=new Uint32Array((0,r.cU)(2*m)));for(let e=0;e<2*m;e++)u[e]=0;let x=0;const v=!!y&&!!h,w=v?g:c;let A=(0,o.my)(c);const b=new Uint32Array(g),M=1.96;let C=0!==p?Math.ceil(4*M*M/(p*p)*p*(1-p)):w,T=1,S=y?y[1]:w;for(let e=0;e<w;e++){if(e===C){const t=1-x/e;if(t+M*Math.sqrt(t*(1-t)/e)<p)return null;C*=2}if(e===S){for(let e=0;e<2*m;e++)u[e]=0;if(h)for(let e=y[T-1];e<y[T];e++)b[e]=A[h[e]];S=y[++T]}const n=v?h[e]:e,r=n*t,o=l(f,r,t);let i=o%m,a=x;for(;0!==u[2*i+1];){if(u[2*i]===o){const e=u[2*i+1]-1;if(s(f,r,e*t,t)){a=A[e];break}}i++,i>=m&&(i-=m)}a===x&&(u[2*i]=o,u[2*i+1]=n+1,x++),A[n]=a}if(0!==p&&1-x/c<p)return null;if(v){for(let e=y[T-1];e<b.length;e++)b[e]=A[h[e]];A=(0,o.uW)(b)}const R=i?new Array(x):new Uint32Array(x*t);x=0;for(let e=0;e<w;e++)A[e]===x&&(a(f,(v?h[e]:e)*t,R,x*t,t),x++);if(h&&!v){const e=new Uint32Array(g);for(let t=0;t<e.length;t++)e[t]=A[h[t]];A=(0,o.uW)(e)}return{buffer:Array.isArray(R)?R:R.buffer,indices:A,uniqueCount:x}}function s(e,t,n,r){for(let o=0;o<r;o++)if(e[t+o]!==e[n+o])return!1;return!0}function a(e,t,n,r,o){for(let i=0;i<o;i++)n[r+i]=e[t+i]}function l(e,t,n){let r=0;for(let o=0;o<n;o++)r=e[t+o]+r|0,r=r+(r<<11)+(r>>>2)|0;return r>>>0}let u=null},16939:(e,t,n)=>{n.d(t,{A:()=>y});var r,o=n(31635),i=n(69540),s=n(25482),a=n(53966),l=n(10107),u=n(79901),c=(n(44208),n(87811),n(40608)),f=n(56507),p=n(19211),h=n(80882),g=n(31199);let y=r=class extends((0,i.OU)(s.o)){static from(e){return(0,f.PZ)(r,e)}constructor(e){super(e),this.faces=null,this.material=null,this.name=void 0,this.shading="source",this.trustSourceNormals=!1}castFaces(e){return(0,g.b)(e,Uint32Array,[Uint16Array],{loggerTag:".faces=",stride:3},a.A.getLogger(this))}castMaterial(e){return(0,f.PZ)(e&&"object"==typeof e&&("metallic"in e||"roughness"in e||"metallicRoughnessTexture"in e)?h.A:p.A,e)}get memoryUsage(){let e=0;return null!=this.faces&&(e+=this.faces.byteLength),null!=this.material&&(e+=this.material.memoryUsage),e}};(0,o.Cg)([(0,l.MZ)({json:{write:g.B}})],y.prototype,"faces",void 0),(0,o.Cg)([(0,u.w)("faces")],y.prototype,"castFaces",null),(0,o.Cg)([(0,l.MZ)({type:p.A,json:{write:!0}})],y.prototype,"material",void 0),(0,o.Cg)([(0,u.w)("material")],y.prototype,"castMaterial",null),(0,o.Cg)([(0,l.MZ)({json:{write:!0}})],y.prototype,"name",void 0),(0,o.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],y.prototype,"shading",void 0),(0,o.Cg)([(0,l.MZ)({type:Boolean})],y.prototype,"trustSourceNormals",void 0),y=r=(0,o.Cg)([(0,c.$)("esri.geometry.support.MeshComponent")],y)},18251:(e,t,n)=>{n.d(t,{A:()=>c});var r=n(31635),o=n(69540),i=n(25482),s=n(10107),a=(n(44208),n(53966),n(87811),n(93223)),l=n(40608),u=n(51850);let c=class extends((0,o.OU)(i.o)){constructor(e){super(e),this.type="local",this.origin=(0,u.vt)()}};(0,r.Cg)([(0,a.e)({local:"local"},{readOnly:!0})],c.prototype,"type",void 0),(0,r.Cg)([(0,s.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],c.prototype,"origin",void 0),c=(0,r.Cg)([(0,l.$)("esri.geometry.support.MeshLocalVertexSpace")],c)},19211:(e,t,n)=>{n.d(t,{A:()=>p});var r=n(31635),o=n(68197),i=n(69540),s=n(25482),a=n(10107),l=(n(44208),n(53966),n(87811),n(40608)),u=n(35063),c=n(51147),f=n(66895);let p=class extends((0,i.OU)(s.o)){constructor(e){super(e),this.color=null,this.colorTexture=null,this.colorTextureTransform=null,this.normalTexture=void 0,this.normalTextureTransform=void 0,this.alphaMode="auto",this.alphaCutoff=.5,this.doubleSided=!0}clone(e){const t=(0,f.hz)(e),n=t?.materialMap?.get(this);if(n)return n;const r=super.clone((0,f.QN)(e));return t?.materialMap?.set(this,r),r}get memoryUsage(){return this.getMemoryUsage()}getMemoryUsage(){let e=0;return e+=null!=this.color?16:0,null!=this.colorTexture&&(e+=this.colorTexture.memoryUsage),e+=null!=this.colorTextureTransform?20:0,null!=this.normalTexture&&(e+=this.normalTexture.memoryUsage),e+=null!=this.normalTextureTransform?20:0,e}};(0,r.Cg)([(0,a.MZ)({type:o.A,json:{write:!0}})],p.prototype,"color",void 0),(0,r.Cg)([(0,a.MZ)({type:u.A,json:{write:!0}})],p.prototype,"colorTexture",void 0),(0,r.Cg)([(0,a.MZ)({type:c.A,json:{write:!0}})],p.prototype,"colorTextureTransform",void 0),(0,r.Cg)([(0,a.MZ)({type:u.A,json:{write:!0}})],p.prototype,"normalTexture",void 0),(0,r.Cg)([(0,a.MZ)({type:c.A,json:{write:!0}})],p.prototype,"normalTextureTransform",void 0),(0,r.Cg)([(0,a.MZ)({nonNullable:!0,json:{write:!0}})],p.prototype,"alphaMode",void 0),(0,r.Cg)([(0,a.MZ)({nonNullable:!0,json:{write:!0}})],p.prototype,"alphaCutoff",void 0),(0,r.Cg)([(0,a.MZ)({nonNullable:!0,json:{write:!0}})],p.prototype,"doubleSided",void 0),p=(0,r.Cg)([(0,l.$)("esri.geometry.support.MeshMaterial")],p)},21287:(e,t,n)=>{n.d(t,{M5:()=>f,eV:()=>c});var r=n(78888),o=n(49186),i=n(74887),s=n(84952),a=n(26306);let l=null,u=!0;function c(e,t,n,r){if(!t||!n)throw new Error("Cannot construct image data without dimensions");if(u)try{return new ImageData(e,t,n)}catch(e){u=!1}const o=function(e,t,n){return n||(l||(l=document.createElement("canvas"),l.width=1,l.height=1),n=l),n.getContext("2d").createImageData(e,t)}(t,n,r);return o.data.set(e,0),o}async function f(e,t){const{arrayBuffer:l,mediaType:u}=await async function(e,t){const n=(0,s.r$)(e);if(n?.isBase64)return{arrayBuffer:(0,a.M)(n.data),mediaType:n.mediaType};const o=await(0,r.A)(e,{responseType:"array-buffer",...t});return{arrayBuffer:o.data,mediaType:o.getHeader?.("Content-Type")??""}}(e,t),c="image/png"===u;if("image/gif"===u){const{isAnimatedGIF:e,parseGif:r}=await n.e(820).then(n.bind(n,10820));if(e(l))return r(l,t)}if(c){const{isAnimatedPNG:e,parseApng:r}=await n.e(2390).then(n.bind(n,22390));if(e(l))return r(l,t)}return async function(e,t){const n=window.URL.createObjectURL(e);try{const{data:e}=await(0,r.A)(n,{...t,responseType:"image"});return e}catch(e){if(!(0,i.zf)(e))throw new o.A("invalid-image",`Could not fetch requested image at ${n}`);throw e}finally{window.URL.revokeObjectURL(n)}}(new Blob([l],{type:u}),t)}},22141:(e,t,n)=>{n.d(t,{$5:()=>b,CN:()=>x,JP:()=>m,KM:()=>C,Mv:()=>S,X4:()=>v,gr:()=>A,qs:()=>M,si:()=>w,xA:()=>T});var r=n(34727),o=n(77690),i=n(29242),s=n(58083),a=n(9093),l=n(38954),u=n(51850),c=n(48353),f=n(9762),p=(n(79258),n(21325)),h=n(28735),g=n(13030),y=n(73354),d=n(65686);const m="Projection may be possible after calling projection.load().";function x(e,t,n,r){e.error(`Failed to project from (wkid:${t.wkid}) to (wkid:${n.wkid}).${r?" ":""}${r}`)}function v(e,t,n,r,o,i){return Z(0,g.xs.fromTypedArray(e),0,g.Xm.fromTypedArray(t),n,g.Xm.fromTypedArray(r),o,g.xs.fromTypedArray(i))?i:null}function w(e,t,n,r,o,i){return Z(1,g.xs.fromTypedArray(e),0,g.Xm.fromTypedArray(t),n,g.Xm.fromTypedArray(r),o,g.xs.fromTypedArray(i))?i:null}function A(e,t,n,r){return(0,f.projectBuffer)(e,t,0,n,r,0)?n:null}function b(e,t,n,r){return(0,f.projectBuffer)(e,t,0,n,r,0)?n:null}function M(e,t,n){return(0,o.Ge)(L,n),(0,y.b)(t,e,L),(0,r.or)(L)&&(0,y.n)(t,t),t}function C(e,t,n){return(0,o.z0)(L,n),(0,d.t)(t,e,L),(0,r.or)(L)&&(0,y.n)(t,t,4),t}function T(e,t,n,r,o,i){if(!Z(0,g.xs.fromTypedArray(e,4*Float32Array.BYTES_PER_ELEMENT),1,g.Xm.fromTypedArray(t),n,g.Xm.fromTypedArray(r),o,g.xs.fromTypedArray(i,4*Float32Array.BYTES_PER_ELEMENT)))return null;for(let t=3;t<e.length;t+=4)i[t]=e[t];return i}function S(e,t,n,r,o,i){if(!Z(1,g.xs.fromTypedArray(e,16),1,g.Xm.fromTypedArray(t),n,g.Xm.fromTypedArray(r),o,g.xs.fromTypedArray(i,16)))return null;for(let t=3;t<e.length;t+=4)i[t]=e[t];return i}function R(e,t,n,r,i){switch((0,c.l)(r,n,B,r),1===e&&(0,s.B8)(B,B),t){case 0:return(0,o.Ge)(i,B);case 1:return(0,o.z0)(i,B)}}function Z(e,t,n,r,o,i,s,a){if(!t)return;const u=r.count;if(function(e){return e.isWGS84||(0,p.x1)(e)||(0,p.q8)(e)||(0,p.KQ)(e)}(o))for(let r=0;r<u;r++)i.getVec(r,U),t.getVec(r,N),(0,l.o)(N,N,R(e,n,U,s,L)),a.setVec(r,N);else for(let o=0;o<u;o++){i.getVec(o,U),t.getVec(o,N);const u=(0,h.jg)(r.get(o,1));let c=Math.cos(u);1===n!=(0===e)&&(c=1/c),R(e,n,U,s,L),0===e?(L[0]*=c,L[1]*=c,L[2]*=c,L[3]*=c,L[4]*=c,L[5]*=c):(L[0]*=c,L[3]*=c,L[6]*=c,L[1]*=c,L[4]*=c,L[7]*=c),(0,l.o)(N,N,L),(0,l.n)(N,N),a.setVec(o,N)}return a}const U=(0,u.vt)(),N=(0,u.vt)(),B=(0,a.vt)(),L=(0,i.vt)()},27615:(e,t,n)=>{n.d(t,{CK:()=>l,Hq:()=>a,MW:()=>u,TE:()=>c,yJ:()=>f});var r=n(38954),o=n(86738),i=n(95696),s=n(18251);function a(e){return null!=e.origin}function l(e){return a(e.vertexSpace)}function u(e,t){if(!a(e))return null;const[n,r,i]=e.origin;return new o.A({x:n,y:r,z:i,spatialReference:t})}function c(e,t){const{x:n,y:r,z:o,spatialReference:a}=e,l=[n,r,o??0];return"local"===(t?.vertexSpace??function(e){return e.isGeographic||e.isWebMercator?"local":"georeferenced"}(a))?new s.A({origin:l}):new i.A({origin:l})}function f(e,t){return e.type===t.type&&(e.origin===t.origin||null!=e.origin&&null!=t.origin&&(0,r.q)(e.origin,t.origin))}},31199:(e,t,n)=>{function r(e,t,n,r){const{loggerTag:o,stride:i}=t;return e.length%i!==0?(r.error(o,`Invalid array length, expected a multiple of ${i}`),new n([])):e}function o(e,t,n,o,i){if(!e)return e;if(e instanceof t)return r(e,o,t,i);for(const s of n)if(e instanceof s)return r(new t(e),o,t,i);if(Array.isArray(e))return r(new t(e),o,t,i);{const r=n.map(e=>`'${e.name}'`);return i.error(`Failed to set property, expected one of ${r}, but got ${e.constructor.name}`),new t([])}}function i(e,t,n){t[n]=function(e){const t=new Array(e.length);for(let n=0;n<e.length;n++)t[n]=e[n];return t}(e)}n.d(t,{B:()=>i,b:()=>o})},35063:(e,t,n)=>{n.d(t,{A:()=>m});var r,o=n(31635),i=n(69540),s=(n(44208),n(21287)),a=n(25482),l=n(10107),u=n(56507),c=(n(87811),n(36005)),f=n(40608),p=n(43937),h=n(66895),g=n(97159);const y=new WeakMap;let d=0,m=class extends((0,i.OU)(a.o)){static{r=this}constructor(e){super(e),this.wrap="repeat"}get url(){return this._get("url")||null}set url(e){this._set("url",e),e&&this._set("data",null)}get data(){return this._get("data")||null}set data(e){this._set("data",e),e&&this._set("url",null)}writeData(e,t,n,r){if(e instanceof HTMLImageElement){const o={type:"image-element",src:(0,g.t)(e.src,r),crossOrigin:e.crossOrigin};t[n]=o}else if(e instanceof HTMLCanvasElement){const r={type:"canvas-element",imageData:x(e.getContext("2d").getImageData(0,0,e.width,e.height))};t[n]=r}else if(e instanceof HTMLVideoElement){const o={type:"video-element",src:(0,g.t)(e.src,r),autoplay:e.autoplay,loop:e.loop,muted:e.muted,crossOrigin:e.crossOrigin,preload:e.preload};t[n]=o}else if(e instanceof ImageData){const r={type:"image-data",imageData:x(e)};t[n]=r}}readData(e){switch(e.type){case"image-element":{const t=new Image;return t.src=e.src,t.crossOrigin=e.crossOrigin,t}case"canvas-element":{const t=v(e.imageData),n=document.createElement("canvas");return n.width=t.width,n.height=t.height,n.getContext("2d").putImageData(t,0,0),n}case"image-data":return v(e.imageData);case"video-element":{const t=document.createElement("video");return t.src=e.src,t.crossOrigin=e.crossOrigin,t.autoplay=e.autoplay,t.loop=e.loop,t.muted=e.muted,t.preload=e.preload,t}default:return}}get transparent(){const{data:e,url:t}=this,n=e=>e?.toLowerCase().endsWith(".png")||e?.toLocaleLowerCase().startsWith("data:image/png;");return e instanceof HTMLCanvasElement?w(e.getContext("2d").getImageData(0,0,e.width,e.height)):e instanceof ImageData?w(e):!(!t||!n(t))||!!(e instanceof HTMLImageElement&&n(e.src))}set transparent(e){this._overrideIfSome("transparent",e)}get contentHash(){const e="string"==typeof this.wrap?this.wrap:"object"==typeof this.wrap?`${this.wrap.horizontal}/${this.wrap.vertical}`:"",t=(t="")=>`d:${t},t:${this.transparent},w:${e}`;return null!=this.url?t(this.url):null!=this.data?this.data instanceof HTMLImageElement||this.data instanceof HTMLVideoElement?t(this.data.src):(y.has(this.data)||y.set(this.data,++d),t(y.get(this.data))):t()}get memoryUsage(){let e=0;if(e+=null!=this.url?this.url.length:0,null!=this.data){const t=this.data;"data"in t?e+=t.data.byteLength:t instanceof HTMLImageElement?e+=t.naturalWidth*t.naturalHeight*3:t instanceof HTMLCanvasElement&&(e+=t.width*t.height*3)}return e}clone(e){const t=(0,h.$N)(e),n=t?.textureMap?.get(this);if(n)return n;const r=super.clone(e);return t?.textureMap?.set(this,r),r}static from(e){return"string"==typeof e?new r({url:e}):e instanceof HTMLImageElement||e instanceof HTMLCanvasElement||e instanceof ImageData||e instanceof HTMLVideoElement?new r({data:e}):(0,u.PZ)(r,e)}};function x(e){let t="";for(let n=0;n<e.data.length;n++)t+=String.fromCharCode(e.data[n]);return{data:btoa(t),width:e.width,height:e.height}}function v(e){const t=atob(e.data),n=new Uint8ClampedArray(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return(0,s.eV)(n,e.width,e.height)}function w(e){for(let t=3;t<e.data.length;t+=4)if(255!==e.data[t])return!0;return!1}(0,o.Cg)([(0,l.MZ)({type:String,json:{write:g.w}})],m.prototype,"url",null),(0,o.Cg)([(0,l.MZ)({clonable:"reference",json:{write:{overridePolicy(){return{enabled:!this.url}}}}})],m.prototype,"data",null),(0,o.Cg)([(0,p.K)("data")],m.prototype,"writeData",null),(0,o.Cg)([(0,c.w)("data")],m.prototype,"readData",null),(0,o.Cg)([(0,l.MZ)({type:Boolean,json:{write:{overridePolicy(){return{enabled:this._isOverridden("transparent")}}}}})],m.prototype,"transparent",null),(0,o.Cg)([(0,l.MZ)({json:{write:!0}})],m.prototype,"wrap",void 0),(0,o.Cg)([(0,l.MZ)({readOnly:!0})],m.prototype,"contentHash",null),m=r=(0,o.Cg)([(0,f.$)("esri.geometry.support.MeshTexture")],m)},40036:(e,t,n)=>{n.d(t,{default:()=>Ke});var r=n(31635),o=n(69540),i=n(49186),s=n(92474),a=n(53966),l=n(61893),u=n(74887),c=n(36708),f=n(10107),p=(n(44208),n(87811),n(40608)),h=n(51850),g=n(91075),y=n(86738),d=n(39829),m=n(70328),x=n(24770),v=n(16939);const w="Expected location to be a Point instance";class A extends i.A{constructor(){super("invalid-input:location",w)}}var b=n(95696),M=n(18251),C=n(73836),T=n(1193),S=n(27615),R=n(83349),Z=n(95108),U=n(4197),N=n(97146),B=n(34727),L=n(83047),F=n(38954),j=n(27921);function O(e,t,n){const r=function(e,t,n,r){const o=(e=>!Array.isArray(e[0]))(t)?(e,n)=>t[3*e+n]:(e,n)=>t[e][n],i=r?(0,L.GA)(r)/(0,L.G9)(r):1;return(0,j.lU)(e,(e,t)=>(0,F.i)(e,o(t,0)*i,o(t,1)*i,o(t,2)),n)}(E,e,t,n)?(0,j.Qj)(E):[0,0,1];return Math.abs(r[2])>Math.cos((0,B.kU)(80))?2:Math.abs(r[1])>Math.abs(r[0])?1:0}const E=(0,j.vt)();var _=n(9318);function $(e,t,n,r){const o=e.length,i=new Array(o),s=new Array(o),a=new Array(o);let l=0;for(let t=0;t<o;++t)l+=e[t].length;let u=0,c=0,f=0;const p=(0,U.jh)(3*l);let h=0;for(let l=o-1;l>=0;l--){const g=e[l],y=1===n&&z(g,t,r);if(y&&1!==o)i[u++]=g;else{let e=g.length;for(let t=0;t<u;++t)e+=i[t].length;const n={index:h,pathLengths:new Array(u+1),count:e,holeIndices:new Array(u)};n.pathLengths[0]=g.length,g.length>0&&(a[f++]={index:h,count:g.length}),h=y?P(g,g.length-1,-1,p,h,g.length,t):P(g,0,1,p,h,g.length,t);for(let e=0;e<u;++e){const r=i[e];n.holeIndices[e]=h,n.pathLengths[e+1]=r.length,r.length>0&&(a[f++]={index:h,count:r.length}),h=P(r,0,1,p,h,r.length,t)}u=0,n.count>0&&(s[c++]=n)}}for(let e=0;e<u;++e){const n=i[e];n.length>0&&(a[f++]={index:h,count:n.length}),h=P(n,0,1,p,h,n.length,t)}return s.length=c,a.length=f,{position:p,polygons:s,outlines:a}}function P(e,t,n,r,o,i,s){o*=3;for(let a=0;a<i;++a){const i=e[t];r[o++]=i[0],r[o++]=i[1],r[o++]=s&&i[2]?i[2]:0,t+=n}return o/3}function z(e,t,n){if(!t)return!(0,Z.$3)(e);switch(O(e,e.length-1,n)){case 0:return!(0,Z.$3)(e,1,2);case 1:return!(0,Z.$3)(e,0,2);case 2:return!(0,Z.$3)(e,0,1)}}var I=n(65806),H=n(51447);function D(e,t,n,r){if(void 0!==r){(0,H.io)(e(),"option: geographic",{replacement:"Use mesh `vertexSpace` and spatial reference to control how operations are performed instead.",version:"4.30",warnOnce:!0});const o="local"===t.type;if(!(0,S.Hq)(t)||r===o)return n.isGeographic||n.isWebMercator&&r;e().warnOnce(`Specifying the 'geographic' parameter (${r}) for a Mesh vertex space of type "${t.type}" is not supported. This parameter will be ignored.`)}switch(t.type){case"georeferenced":return n.isGeographic;case"local":return n.isGeographic||n.isWebMercator}}var k=n(22141),q=n(72258);const G=()=>a.A.getLogger("esri.geometry.support.meshUtils.centerAt");const V=(0,h.vt)(),W=(0,h.vt)(),K=(0,h.vt)();var X=n(9093),Y=n(5443),J=n(98988),Q=n(98764),ee=n(48353),te=n(9762),ne=n(73354);const re=(0,X.vt)(),oe=(0,U.jh)(24);var ie=n(21818),se=n(84952);function ae(e){const t=(0,se.nM)(e.url);return n=>{const r=(0,se.V1)(n,t,t),o=r?r.replace(/^ *\.\//,""):null;return(o?e.files.get(o):null)??n}}function le(e){return ye.fromBlob(e,de(e.name,e.type))}const ue=/^model\/gltf\+json$/,ce=/^model\/gltf-binary$/,fe=/\.gltf$/i,pe=/\.glb$/i;function he({mimeType:e,source:t,name:n}){return ue.test(e)||fe.test(n)?{url:t.url,type:"gltf"}:ce.test(e)||pe.test(n)?{url:t.url,type:"glb"}:null}function ge(e){const t=new Map;let n=null,r=null;for(const o of e){const{source:e,name:i}=o;n??=he(o),"ESRI3DO_NORM.glb"===i&&(r=he(o)),t.set(i,e.url),e.files.forEach((e,n)=>t.set(n,e))}const o=r??n;if(null==o)throw new i.A("mesh-load-external:missing-files","Missing files to load external mesh source");return new ye(o.url,()=>e.forEach(({source:e})=>e.dispose()),t,o.type)}class ye{constructor(e,t=()=>{},n=new Map,r){this.url=e,this.dispose=t,this.files=n,this.type=r}static fromBlob(e,t){const n=URL.createObjectURL(e);return new ye(n,()=>URL.revokeObjectURL(n),void 0,t)}}function de(e,t){return ue.test(t)||fe.test(e)?"gltf":ce.test(t)||fe.test(e)?"glb":void 0}var me=n(66895),xe=n(7762),ve=n(63579);let we=class extends o.Pw{constructor(e){super(e),this.externalSources=new xe.A,this._explicitDisplaySource=null,this.georeferenced=!1,this.addHandles((0,c.on)(()=>this.externalSources,"after-remove",({item:e})=>{e===this._explicitDisplaySource&&(this._explicitDisplaySource=null)},{sync:!0,onListenerRemove:()=>this._explicitDisplaySource=null}))}get displaySource(){return this._explicitDisplaySource??this._implicitDisplaySource}set displaySource(e){if(null!=e&&!(0,ve.yr)(e))throw new Error("Cannot use this source for display: it is not in a supported format.");this._explicitDisplaySource=e,e&&this.externalSources.every(t=>!(0,ve.in)(t,e))&&this.externalSources.add(e)}clearSources(){this.externalSources.removeAll()}getExternalSourcesOnService(e){return this.externalSources.items.filter(t=>(0,ve.eN)(t,e))}get _implicitDisplaySource(){return this.externalSources.find(ve.yr)}};(0,r.Cg)([(0,f.MZ)()],we.prototype,"externalSources",void 0),(0,r.Cg)([(0,f.MZ)()],we.prototype,"displaySource",null),(0,r.Cg)([(0,f.MZ)()],we.prototype,"_implicitDisplaySource",null),(0,r.Cg)([(0,f.MZ)()],we.prototype,"_explicitDisplaySource",void 0),(0,r.Cg)([(0,f.MZ)()],we.prototype,"georeferenced",void 0),we=(0,r.Cg)([(0,p.$)("esri.geometry.support.meshUtils.Metadata")],we);var Ae=n(29242);const be={position:[-.5,-.5,0,.5,-.5,0,.5,.5,0,-.5,.5,0],normal:[0,0,1,0,0,1,0,0,1,0,0,1],uv:[0,1,1,1,1,0,0,0],faces:[0,1,2,0,2,3],facingAxisOrderSwap:{east:[3,1,2],west:[-3,-1,2],north:[-1,3,2],south:[1,-3,2],up:[1,2,3],down:[1,-2,-3]}};function Me(e,t,n){e.isPlane||function(e){for(let t=0;t<e.position.length;t+=3)e.position[t+2]+=.5}(e),function(e,t){if(null!=t){Re[0]=t[0],Re[4]=t[1],Re[8]=t[2];for(let t=0;t<e.position.length;t+=3){for(let n=0;n<3;n++)Se[n]=e.position[t+n];(0,F.o)(Se,Se,Re);for(let n=0;n<3;n++)e.position[t+n]=Se[n]}if(t[0]!==t[1]||t[1]!==t[2]){Re[0]=1/t[0],Re[4]=1/t[1],Re[8]=1/t[2];for(let t=0;t<e.normal.length;t+=3){for(let n=0;n<3;n++)Se[n]=e.normal[t+n];(0,F.o)(Se,Se,Re),(0,F.n)(Se,Se);for(let n=0;n<3;n++)e.normal[t+n]=Se[n]}}}}(e,function(e,t,n){const r=(0,q.xK)(t,n);if(null==e&&1===r)return null;if(null==e)return[r,r,r];if("number"==typeof e){const t=e*r;return[t,t,t]}return[null!=e.width?e.width*r:r,null!=e.depth?e.depth*r:r,null!=e.height?e.height*r:r]}(n?.size,n?.unit,t.spatialReference));const r=(0,S.TE)(t,n),o=t.spatialReference.isGeographic?(0,S.TE)(t):r,i=(0,q.UR)({vertexAttributes:e,vertexSpace:o,spatialReference:t.spatialReference},r,{allowBufferReuse:!0});return{vertexAttributes:new T.H({...i,uv:e.uv}),vertexSpace:r,components:[new v.A({faces:e.faces,material:n?.material||null})],spatialReference:t.spatialReference}}const Ce={faceDescriptions:[{axis:[0,-1,0],uvOrigin:[0,.625],corners:[[-1,-1],[1,-1],[1,1],[-1,1]]},{axis:[1,0,0],uvOrigin:[.25,.625],corners:[[-1,-1],[1,-1],[1,1],[-1,1]]},{axis:[0,1,0],uvOrigin:[.5,.625],corners:[[1,-1],[-1,-1],[-1,1],[1,1]]},{axis:[-1,0,0],uvOrigin:[.75,.625],corners:[[1,-1],[-1,-1],[-1,1],[1,1]]},{axis:[0,0,1],uvOrigin:[0,.375],corners:[[-1,-1],[1,-1],[1,1],[-1,1]]},{axis:[0,0,-1],uvOrigin:[0,.875],corners:[[-1,1],[1,1],[1,-1],[-1,-1]]}],uvScales:[[0,0],[1,0],[1,1],[0,1]],faceVertexOffsets:[0,1,2,0,2,3]},Te={south:0,east:1,north:2,west:3,up:4,down:5},Se=(0,h.vt)(),Re=(0,Ae.vt)();var Ze=n(77690),Ue=n(58083),Ne=n(67026),Be=n(82534);const Le=()=>a.A.getLogger("esri.geometry.support.meshUtils.rotate");function Fe(e,t,n,r=h.uY){if(null!=e){(0,Ue.$0)(_e,(0,x.$I)(t),(0,x.yo)(t));for(let t=0;t<e.length;t+=n){for(let n=0;n<3;n++)je[n]=e[t+n]-r[n];(0,F.t)(je,je,_e);for(let n=0;n<3;n++)e[t+n]=je[n]+r[n]}}}const je=(0,h.vt)(),Oe=(0,X.vt)(),Ee=(0,x.vt)(),_e=(0,X.vt)(),$e=(0,Ae.vt)(),Pe=(0,h.vt)(),ze=(0,Be.vt)(),Ie=()=>a.A.getLogger("esri.geometry.support.meshUtils.scale");function He(e,t,n=h.uY){if(e)for(let r=0;r<e.length;r+=3){for(let t=0;t<3;t++)De[t]=e[r+t]-n[t];(0,F.g)(De,De,t);for(let t=0;t<3;t++)e[r+t]=De[t]+n[t]}}const De=(0,h.vt)(),ke=(0,h.vt)(),qe=(0,X.vt)(),Ge=(0,h.vt)();var Ve;const We={base:null,key:"type",defaultKeyValue:"georeferenced",typeMap:{georeferenced:b.A,local:M.A}};let Ke=Ve=class extends((0,o.OU)((0,s.WV)((0,l.g)(g.A)))){constructor(e){super(e),this.components=null,this.vertexSpace=new b.A,this.transform=null,this.metadata=new we,this.hasZ=!0,this.hasM=!1,this.vertexAttributes=new T.H,this.type="mesh"}initialize(){(0===this.metadata.externalSources.length||this.vertexAttributes.position.length)&&(this.loadStatus="loaded"),this.when(()=>{this.addHandles((0,c.wB)(()=>({vertexAttributes:this.vertexAttributes,components:this.components?.map(e=>e.clone())}),()=>this._clearSources(),{once:!0,sync:!0}))})}get hasExtent(){return this.loaded?this.vertexAttributes.position.length>0&&(!this.components||this.components.length>0):null!=this.metadata.displaySource?.extent}get _transformedExtent(){const{spatialReference:e,vertexSpace:t}=this,n=this;return function(e){const{spatialReference:t,vertexSpace:n,untransformedBounds:r}=e,o=(0,m.gE)(r,oe);if((0,S.Hq)(n)&&e.transform&&(0,ne.t)(o,o,e.transform.localMatrix),"georeferenced"===n.type){const e=n.origin;return e&&(0,ne.a)(o,o,e),(0,m.w1)((0,m.vY)(o),t)}const i=(0,Q.lO)(t),s=n.origin;if(!(0,J.canProjectWithoutEngine)(i,t)){const[e,n,r]=s;return new Y.A({xmin:e,ymin:n,zmin:r,xmax:e,ymax:n,zmax:r,spatialReference:t})}return(0,ee.l)(t,s,re,i),(0,ne.t)(o,o,re),(0,te.projectBuffer)(o,i,0,o,t,0),(0,m.w1)((0,m.vY)(o),t)}({get transform(){return n.transform},vertexSpace:t,spatialReference:e,untransformedBounds:this._untransformedBounds})}get _untransformedBounds(){const{vertexAttributes:{position:e},components:t}=this;return 0===e.length||0===t?.length?(0,m.vt)(m.v_):(0,m.vY)(e)}get origin(){const e=(0,S.MW)(this.vertexSpace,this.spatialReference);if(null!=e)return e;const{center:t,zmin:n}=this._transformedExtent;return new y.A({x:t.x,y:t.y,z:n,spatialReference:this.spatialReference})}get extent(){return this.loaded||null==this.metadata?.displaySource?.extent?this._transformedExtent:this.metadata.displaySource.extent.clone()}addComponent(e){this._checkIfLoaded("addComponent()")&&(this.components||(this.components=[]),this.components.push(v.A.from(e)),this.notifyChange("components"))}removeComponent(e){if(this._checkIfLoaded("removeComponent()")){if(this.components){const t=this.components.indexOf(e);if(-1!==t)return this.components.splice(t,1),void this.notifyChange("components")}a.A.getLogger(this).error("removeComponent()","Provided component is not part of the list of components")}}rotate(e,t,n,r){return(0,x.AU)(e,t,n,Xe),function(e,t,n){if(!e.vertexAttributes?.position||0===t[3])return;const{spatialReference:r,vertexSpace:o}=e,i=n?.origin??e.origin,s=n?.geographic,a=D(Le,o,r,s);(0,S.CK)(e)?function(e,t,n){e.transform??=new C.A;const{vertexSpace:r,transform:o,spatialReference:i}=e,[s,a,l]=r.origin,u=new y.A({x:s,y:a,z:l,spatialReference:i}),c=je;if(u.equals(n))(0,F.i)(c,0,0,0);else if(!(0,q.p5)(c,n,e))return void(0,k.CN)(Le(),n.spatialReference,i,k.JP);(0,Ne.x8)(ze,(0,x.yo)(t),(0,x.$I)(t));const f=(0,Ue.O7)(Oe,ze,h.uY,h.Un,c),{localMatrix:p}=o,g=(0,Ue.lw)(Oe,f,p);o.scale=(0,Ue.X_)((0,h.vt)(),g),(0,Ue.hs)(g,g,(0,F.r)(je,o.scale));const d=o.rotationAxis;o.rotation=(0,x.ui)(g),0===o.rotationAngle&&(o.rotationAxis=d),o.translation=(0,Ue.sC)((0,h.vt)(),g)}(e,t,i):a?function(e,t,n){const r=e.spatialReference,o=(0,Q.lO)(r),i=Pe;if(!(0,I.g)(n,i,o)&&((0,k.CN)(Le(),n.spatialReference,o,"Falling back to mesh origin"),!(0,I.g)(e.origin,i,o)))return void(0,k.CN)(Le(),e.origin.spatialReference,o);const s=e.vertexAttributes.position,a=e.vertexAttributes.normal,l=e.vertexAttributes.tangent,u=new Float64Array(s.length),c=null!=a?new Float32Array(a.length):null,f=null!=l?new Float32Array(l.length):null;(0,ee.l)(o,i,_e,o),(0,Ze.z0)($e,_e);const p=Ee;(0,F.o)((0,x.yo)(Ee),(0,x.yo)(t),$e),p[3]=t[3],!(0,k.gr)(s,r,u,o)||null!=a&&null!=c&&!(0,k.X4)(a,s,r,u,o,c)||null!=l&&null!=f&&!(0,k.xA)(l,s,r,u,o,f)?(0,k.CN)(Le(),r,o):(Fe(u,p,3,i),!(0,k.$5)(u,o,s,r)||null!=a&&null!=c&&(Fe(c,p,3),!(0,k.si)(c,s,r,u,o,a))||null!=l&&null!=f&&(Fe(f,p,4),!(0,k.Mv)(f,s,r,u,o,l))?(0,k.CN)(Le(),o,r):e.vertexAttributesChanged())}(e,t,i):function(e,t,n){const r=Pe;if(!(0,I.g)(n,r,e.spatialReference)){const t=e.origin;return r[0]=t.x,r[1]=t.y,r[2]=t.z,void(0,k.CN)(Le(),n.spatialReference,e.spatialReference,k.JP)}Fe(e.vertexAttributes.position,t,3,r),Fe(e.vertexAttributes.normal,t,3),Fe(e.vertexAttributes.tangent,t,4),e.vertexAttributesChanged()}(e,t,i)}(this,Xe,r),this}offset(e,t,n){if(!this._checkIfLoaded("offset()"))return this;const{vertexSpace:r,vertexAttributes:o}=this,i=o?.position;if(!i)return this;if((0,S.Hq)(r)){const[o,i,s]=r.origin;r.origin=(0,h.fA)(o+e,i+t,s+n)}else{for(let r=0;r<i.length;r+=3)i[r]+=e,i[r+1]+=t,i[r+2]+=n;this.vertexAttributesChanged()}return this}scale(e,t){return this._checkIfLoaded("scale()")?(function(e,t,n){if(!e.vertexAttributes?.position)return;const{vertexSpace:r,spatialReference:o}=e,i=n?.origin??e.origin,s=n?.geographic,a=D(Ie,r,o,s);(0,S.CK)(e)?function(e,t,n){e.transform??=new C.A;const{vertexSpace:r,transform:o,spatialReference:i}=e,[s,a,l]=r.origin,u=new y.A({x:s,y:a,z:l,spatialReference:i}),c=De;if(u.equals(n))(0,F.i)(c,0,0,0);else if(!(0,q.p5)(c,n,e))return void(0,k.CN)(Ie(),n.spatialReference,i,k.JP);const f=(0,F.i)(ke,t,t,t),p=(0,Ue.O7)(qe,Be.zK,h.uY,f,c),{localMatrix:g}=o,d=(0,Ue.lw)(qe,p,g);o.scale=(0,Ue.X_)((0,h.vt)(),d),(0,Ue.hs)(d,d,(0,F.r)(De,o.scale));const m=o.rotationAxis;o.rotation=(0,x.ui)(d),0===o.rotationAngle&&(o.rotationAxis=m),o.translation=(0,Ue.sC)((0,h.vt)(),d)}(e,t,i):a?function(e,t,n){const r=e.spatialReference,o=(0,Q.lO)(r),i=Ge;if(!(0,I.g)(n,i,o)&&((0,k.CN)(Ie(),n.spatialReference,o,"Falling back to mesh origin"),!(0,I.g)(e.origin,i,o)))return void(0,k.CN)(Ie(),e.origin.spatialReference,o);const s=e.vertexAttributes.position,a=e.vertexAttributes.normal,l=e.vertexAttributes.tangent,u=new Float64Array(s.length),c=null!=a?new Float32Array(a.length):null,f=null!=l?new Float32Array(l.length):null;!(0,k.gr)(s,r,u,o)||null!=a&&null!=c&&!(0,k.X4)(a,s,r,u,o,c)||null!=l&&null!=f&&!(0,k.xA)(l,s,r,u,o,f)?(0,k.CN)(Ie(),r,o):(He(u,t,i),!(0,k.$5)(u,o,s,r)||null!=a&&null!=c&&!(0,k.si)(c,s,r,u,o,a)||null!=l&&null!=f&&!(0,k.Mv)(f,s,r,u,o,l)?(0,k.CN)(Ie(),o,r):e.vertexAttributesChanged())}(e,t,i):function(e,t,n){const r=Ge;if(!(0,I.g)(n,r,e.spatialReference)){const t=e.origin;return r[0]=t.x,r[1]=t.y,r[2]=t.z,void(0,k.CN)(Ie(),n.spatialReference,e.spatialReference,k.JP)}He(e.vertexAttributes.position,t,r),e.vertexAttributesChanged()}(e,t,i)}(this,e,t),this):this}centerAt(e,t){return this._checkIfLoaded("centerAt()")?(function(e,t,n){if(!e.vertexAttributes?.position)return;const{vertexSpace:r}=e,o=n?.origin??e.origin,i=D(G,r,o.spatialReference,n?.geographic);(0,S.Hq)(r)?function(e,t,n){const{vertexSpace:r}=e;if(!(0,S.Hq)(r))return;const o=W,i=V;if(!(0,I.g)(t,i,e.spatialReference))return void(0,k.CN)(G(),t.spatialReference,e.spatialReference,k.JP);if(!(0,I.g)(n,o,e.spatialReference)){const t=e.origin;return o[0]=t.x,o[1]=t.y,o[2]=t.z,void(0,k.CN)(G(),n.spatialReference,e.spatialReference,k.JP)}const s=(0,F.d)(K,i,o);r.origin=(0,F.f)((0,h.vt)(),r.origin,s)}(e,t,o):i?function(e,t,n){const r=(0,h.fA)(n.x,n.y,n.z??0),o=(0,q.UR)(e,new M.A({origin:r}));if(!o)return;const i=(0,h.fA)(t.x,t.y,t.z??0),s=(0,q.UR)({vertexAttributes:o,spatialReference:e.spatialReference,vertexSpace:new M.A({origin:i})},b.A.absolute);if(!s)return;const{position:a,normal:l,tangent:u}=s;e.vertexAttributes.position=a,e.vertexAttributes.normal=l,e.vertexAttributes.tangent=u,e.vertexAttributesChanged()}(e,t,o):function(e,t,n){const r=W,o=V;if((0,I.g)(t,o,e.spatialReference)){if(!(0,I.g)(n,r,e.spatialReference)){const t=e.origin;return r[0]=t.x,r[1]=t.y,r[2]=t.z,void(0,k.CN)(G(),n.spatialReference,e.spatialReference,k.JP)}(function(e,t,n){if(e)for(let r=0;r<e.length;r+=3)for(let o=0;o<3;o++)e[r+o]+=t[o]-n[o]})(e.vertexAttributes.position,o,r),e.vertexAttributesChanged()}else(0,k.CN)(G(),t.spatialReference,e.spatialReference,k.JP)}(e,t,o)}(this,e,t),this):this}load(e){const{metadata:{displaySource:t}}=this;return t&&this.addResolvingPromise(async function(e,t,r){switch(t.source.type){case"client":case"service":return async function(e,t,r){const{source:o}=t,{loadGLTFMesh:s}=await(0,u.qr)(n.e(7375).then(n.bind(n,97375)),r),a=await async function(e,t){switch(e.type){case"client":return Array.isArray(e.files)?function(e){if(!e.length)throw new i.A("mesh-load-external:missing-assets","There must be at least one file to load");return ge(e.map(e=>({name:e.name,mimeType:e.type,source:le(e)})))}(e.files):le(e.files);case"service":return async function(e,t){if(!e.length)throw new i.A("mesh-load-external:missing-assets","There must be at least one file to load");const n=await(0,u.nA)(e.map(async e=>{const n=await async function(e,t){const{parts:n,assetMimeType:r,assetName:o}=e;if(1===n.length)return new ye(n[0].partUrl);const i=await e.toBlob(t);return(0,u.Te)(t),ye.fromBlob(i,de(o,r))}(e);return(0,u.Te)(t),{name:e.assetName,mimeType:e.assetMimeType,source:n}}));if((0,u.G4)(t))throw n.forEach(e=>e.source.dispose()),(0,u.NK)();return ge(n)}(e.assets,t);default:throw new i.A("mesh-load-external:invalid-source","Invalid source type")}}(o,r);(0,u.Te)(r);const l=s(new y.A({x:0,y:0,z:0,spatialReference:e.spatialReference}),a.url,{resolveFile:ae(a),signal:r?.signal,expectedType:a.type,unitConversionDisabled:t.unitConversionDisabled});l.then(()=>a.dispose(),()=>a.dispose());const{vertexAttributes:c,components:f}=await l;e.vertexAttributes=c,e.components=f}(e,t,r);case"loadable":return t.source.load(e,r);default:(0,ie.Xb)(t.source)}}(this,t,e)),Promise.resolve(this)}addExternalSources(e){this.metadata.externalSources.addMany(e)}updateDisplaySource(e){this.metadata.displaySource=e}clone(e){return super.clone((0,me.WO)((0,me.QN)(e)))}cloneShallow(){return new Ve({components:this.components,spatialReference:this.spatialReference,vertexAttributes:this.vertexAttributes,vertexSpace:this.vertexSpace.clone(),transform:this.transform,metadata:this.metadata})}vertexAttributesChanged(){this.notifyChange("vertexAttributes")}async toBinaryGLTF(e){const[{toBinaryGLTF:t}]=await Promise.all([n.e(4038).then(n.bind(n,84038)),this.load(e)]);return(0,u.Te)(e),await t(this,e)}get usedMemory(){return this.components?this.components.reduce((e,t)=>e+t.memoryUsage,this.vertexAttributes.usedMemory):this.vertexAttributes.usedMemory}_clearSources(){this.metadata.clearSources()}_checkIfLoaded(e){return!!this.loaded||(a.A.getLogger(this).error(e,"Mesh must be loaded before applying operations"),!1)}static createBox(e,t){if(!(e instanceof y.A))return a.A.getLogger(this.prototype).error(".createBox()",w),null;const n=new Ve(Me(function(){const{faceDescriptions:e,faceVertexOffsets:t,uvScales:n}=Ce,r=4*e.length,o=new Float64Array(3*r),i=new Float32Array(3*r),s=new Float32Array(2*r),a=new Uint32Array(2*e.length*3);let l=0,u=0,c=0,f=0;for(let r=0;r<e.length;r++){const p=e[r],h=l/3;for(const e of t)a[f++]=h+e;const g=p.corners;for(let e=0;e<4;e++){const t=g[e];let r=0;s[c++]=.25*n[e][0]+p.uvOrigin[0],s[c++]=p.uvOrigin[1]-.25*n[e][1];for(let e=0;e<3;e++)0!==p.axis[e]?(o[l++]=.5*p.axis[e],i[u++]=p.axis[e]):(o[l++]=.5*t[r++],i[u++]=0)}}return{position:o,normal:i,uv:s,faces:a}}(),e,t));return t?.imageFace&&"all"!==t.imageFace?function(e,t){const n=e.components[0],r=n.faces,o=Te[t],i=6*o,s=new Array(6),a=new Array(r.length-6);let l=0,u=0;for(let e=0;e<r.length;e++)e>=i&&e<i+6?s[l++]=r[e]:a[u++]=r[e];if(null!=e.vertexAttributes.uv){const t=new Float32Array(e.vertexAttributes.uv),n=4*o*2,r=[0,1,1,1,1,0,0,0];for(let e=0;e<r.length;e++)t[n+e]=r[e];e.vertexAttributes.uv=t}return e.components=[new v.A({faces:s,material:n.material}),new v.A({faces:a})],e}(n,t.imageFace):n}static createSphere(e,t){return e instanceof y.A?new Ve(Me(function(e=0){const t=Math.round(8*2**e),n=2*t,r=(t-1)*(n+1)+2*n,o=new Float64Array(3*r),i=new Float32Array(3*r),s=new Float32Array(2*r),a=new Uint32Array((t-1)*n*2*3);let l=0,u=0,c=0,f=0;for(let e=0;e<=t;e++){const r=e/t*Math.PI+.5*Math.PI,p=Math.cos(r),h=Math.sin(r);Se[2]=h;const g=0===e||e===t,y=g?n-1:n;for(let r=0;r<=y;r++){const h=r/y*2*Math.PI;Se[0]=-Math.sin(h)*p,Se[1]=Math.cos(h)*p;for(let e=0;e<3;e++)o[l]=.5*Se[e],i[l]=Se[e],++l;s[u++]=(r+(g?.5:0))/n,s[u++]=e/t,0!==e&&r!==n&&(e!==t&&(a[c++]=f,a[c++]=f+1,a[c++]=f-n),1!==e&&(a[c++]=f,a[c++]=f-n,a[c++]=f-n-1)),f++}}return{position:o,normal:i,uv:s,faces:a}}(t?.densificationFactor||0),e,t)):(a.A.getLogger(this.prototype).error(".createSphere()",w),null)}static createCylinder(e,t){return e instanceof y.A?new Ve(Me(function(e=0){const t=Math.round(16*2**e),n=4*(t+1)+2*t,r=new Float64Array(3*n),o=new Float32Array(3*n),i=new Float32Array(2*n),s=new Uint32Array(4*t*3);let a=0,l=0,u=0,c=0,f=0;for(let e=0;e<=5;e++){const n=0===e||5===e,p=e<=1||e>=4,h=2===e||4===e,g=n?t-1:t;for(let y=0;y<=g;y++){const d=y/g*2*Math.PI,m=n?0:.5;Se[0]=m*Math.sin(d),Se[1]=m*-Math.cos(d),Se[2]=e<=2?.5:-.5;for(let t=0;t<3;t++)r[a++]=Se[t],o[l++]=p?2===t?e<=1?1:-1:0:2===t?0:Se[t]/m;i[u++]=(y+(n?.5:0))/t,i[u++]=e<=1?1*e/3:e<=3?1*(e-2)/3+1/3:1*(e-4)/3+2/3,h||0===e||y===t||(5!==e&&(s[c++]=f,s[c++]=f+1,s[c++]=f-t),1!==e&&(s[c++]=f,s[c++]=f-t,s[c++]=f-t-1)),f++}}return{position:r,normal:o,uv:i,faces:s}}(t?.densificationFactor||0),e,t)):(a.A.getLogger(this.prototype).error(".createCylinder()",w),null)}static createPlane(e,t){if(!(e instanceof y.A))return a.A.getLogger(this.prototype).error(".createPlane()",w),null;const n=t?.facing??"up",r=function(e,t){const n="number"==typeof t?t:null!=t?t.width:1,r="number"==typeof t?t:null!=t?t.height:1;switch(e){case"up":case"down":return{width:n,depth:r};case"north":case"south":return{width:n,height:r};case"east":case"west":return{depth:n,height:r}}}(n,t?.size);return new Ve(Me(function(e){const t=be.facingAxisOrderSwap[e],n=be.position,r=be.normal,o=new Float64Array(n.length),i=new Float32Array(r.length);let s=0;for(let e=0;e<4;e++){const e=s;for(let a=0;a<3;a++){const l=t[a],u=Math.abs(l)-1,c=l>=0?1:-1;o[s]=n[e+u]*c,i[s]=r[e+u]*c,s++}}return{position:o,normal:i,uv:new Float32Array(be.uv),faces:new Uint32Array(be.faces),isPlane:!0}}(n),e,{...t,size:r}))}static createFromPolygon(e,t){if(!(e instanceof d.A))return a.A.getLogger(this.prototype).error(".createFromPolygon()","Expected polygon to be a Polygon instance"),null;const n=function(e){const t=$(e.rings,e.hasZ,1,e.spatialReference),n=new Array;let r=0,o=0;for(const e of t.polygons){const i=e.count,s=e.index,a=(0,U.l5)(t.position,3*s,3*i),l=e.holeIndices.map(e=>e-s),u=(0,N.uW)((0,R.e)(a,l,3));n.push({position:a,faces:u}),r+=a.length,o+=u.length}const i=function(e,t,n){if(1===e.length)return e[0];const r=(0,U.jh)(t),o=new Array(n);let i=0,s=0,a=0;for(const t of e){for(let e=0;e<t.position.length;e++)r[i++]=t.position[e];for(const e of t.faces)o[s++]=e+a;a=i/3}return{position:r,faces:(0,N.uW)(o)}}(n,r,o),s=Array.isArray(i.position)?(0,_.b)(i.position,3,{originalIndices:i.faces}):(0,_.b)(i.position.buffer,6,{originalIndices:i.faces});return i.position=(0,U.xm)(new Float64Array(s.buffer)),i.faces=s.indices,i}(e);return new Ve({vertexAttributes:new T.H({position:n.position}),components:[new v.A({faces:n.faces,shading:"flat",material:t?.material??null})],spatialReference:e.spatialReference,vertexSpace:new b.A})}static async createFromGLTF(e,t,r){if(!(e instanceof y.A)){const e=new A;throw a.A.getLogger(this.prototype).error(".createfromGLTF()",e.message),e}const{loadGLTFMesh:o}=await(0,u.qr)(n.e(7375).then(n.bind(n,97375)),r);return new Ve(await o(e,t,r))}static createWithExternalSource(e,t,n){const r=n?.extent??null,{spatialReference:o}=e,i=n?.transform?.clone()??new C.A,s=(0,S.TE)(e,n),a=n?.unitConversionDisabled,l={source:t,extent:r,unitConversionDisabled:a},u=new we;return u.externalSources.push(l),new Ve({metadata:u,transform:i,vertexSpace:s,spatialReference:o})}static createIncomplete(e,t){const{spatialReference:n}=e,r=t?.transform?.clone()??new C.A,o=(0,S.TE)(e,t),s=new Ve({transform:r,vertexSpace:o,spatialReference:n});return s.addResolvingPromise(Promise.reject(new i.A("mesh-incomplete","Mesh resources are not complete"))),s}};(0,r.Cg)([(0,f.MZ)({type:[v.A],json:{write:!0}})],Ke.prototype,"components",void 0),(0,r.Cg)([(0,f.MZ)({nonNullable:!0,types:We,constructOnly:!0,json:{write:!0},clonable:(e,t)=>(0,me.o2)(t)?.vertexSpace??e.clone(t)})],Ke.prototype,"vertexSpace",void 0),(0,r.Cg)([(0,f.MZ)({type:C.A,clonable:(e,t)=>{const n=(0,me.o2)(t);return n&&"transform"in n?n.transform:e?.clone()??e},json:{write:!0}})],Ke.prototype,"transform",void 0),(0,r.Cg)([(0,f.MZ)({constructOnly:!0,type:we,clonable:(e,t)=>(0,me.o2)(t)?.metadata??e.clone()})],Ke.prototype,"metadata",void 0),(0,r.Cg)([(0,f.MZ)()],Ke.prototype,"hasExtent",null),(0,r.Cg)([(0,f.MZ)()],Ke.prototype,"_transformedExtent",null),(0,r.Cg)([(0,f.MZ)()],Ke.prototype,"_untransformedBounds",null),(0,r.Cg)([(0,f.MZ)()],Ke.prototype,"origin",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Ke.prototype,"extent",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1,write:!0,default:!0}})],Ke.prototype,"hasZ",void 0),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1,write:!0,default:!1}})],Ke.prototype,"hasM",void 0),(0,r.Cg)([(0,f.MZ)({type:T.H,nonNullable:!0,json:{write:!0},clonable:(e,t)=>(0,me.o2)(t)?.vertexAttributes??e.clone(t)})],Ke.prototype,"vertexAttributes",void 0),Ke=Ve=(0,r.Cg)([(0,p.$)("esri.geometry.Mesh")],Ke);const Xe=(0,x.vt)()},51147:(e,t,n)=>{n.d(t,{A:()=>l});var r=n(31635),o=n(69540),i=n(25482),s=n(10107),a=(n(44208),n(53966),n(87811),n(40608));let l=class extends((0,o.OU)(i.o)){constructor(e){super(e),this.offset=[0,0],this.rotation=0,this.scale=[1,1]}};(0,r.Cg)([(0,s.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],l.prototype,"offset",void 0),(0,r.Cg)([(0,s.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],l.prototype,"rotation",void 0),(0,r.Cg)([(0,s.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],l.prototype,"scale",void 0),l=(0,r.Cg)([(0,a.$)("esri.geometry.support.MeshTextureTransform")],l)},63579:(e,t,n)=>{n.d(t,{Bq:()=>l,Qp:()=>a,WN:()=>d,dK:()=>m,eN:()=>h,fH:()=>y,in:()=>g,yr:()=>u});var r=n(78888),o=n(4576),i=(n(44208),n(74887)),s=n(20557);class a{constructor(e,t,n){this.assetName=e,this.assetMimeType=t,this.parts=n}equals(e){return this===e||this.assetName===e.assetName&&this.assetMimeType===e.assetMimeType&&(0,o.aI)(this.parts,e.parts,(e,t)=>e.equals(t))}isOnService(e){return this.parts.every(t=>t.isOnService(e))}makeHash(){let e="";for(const t of this.parts)e+=t.partHash;return e}async toBlob(e){const{parts:t}=this;if(1===t.length)return t[0].toBlob(e);const n=await Promise.all(t.map(t=>t.toBlob(e)));return(0,i.Te)(e),new Blob(n)}}class l{constructor(e,t){this.partUrl=e,this.partHash=t}equals(e){return this===e||this.partUrl===e.partUrl&&this.partHash===e.partHash}isOnService(e){return this.partUrl.startsWith(`${e.path}/assets/`)}async toBlob(e){const{data:t}=await(0,r.A)(this.partUrl,{responseType:"blob"});return(0,i.Te)(e),t}}function u(e){return function(e){switch(e?.type){case"client":return Array.isArray(e.files)?e.files.some(p):p(e.files);case"service":return e.assets.some(p);case"loadable":return!0;default:return!1}}(e?.source)}const c=/^(model\/gltf\+json)|(model\/gltf-binary)$/,f=/\.(gltf|glb)/i;function p(e){if(e instanceof File){const{type:t,name:n}=e;return c.test(t)||f.test(n)}return c.test(e.assetMimeType)||f.test(e.assetName)}function h(e,t){if(!e)return!1;const{source:n}=e;return function(e,t){return"service"===e.type&&e.assets.every(e=>e.isOnService(t))}(n,t)}function g(e,t){if(e===t)return!0;const{source:n}=e,{source:r}=t;if(n===r)return!0;if("service"===n.type&&"service"===r.type){if(n.assets.length!==r.assets.length)return!1;const e=(e,t)=>e.assetName<t.assetName?-1:e.assetName>t.assetName?1:0,t=[...n.assets].sort(e),o=[...r.assets].sort(e);for(let e=0;e<t.length;++e)if(!t[e].equals(o[e]))return!1;return!0}return!1}function y(e,t){return e instanceof File?(0,s.rq)(e,t):(0,s.z$)(e.assetMimeType,e.assetName,t)}function d(e){switch(e.type){case"client":return Array.isArray(e.files)?e.files:[e.files];case"service":return e.assets;case"loadable":return}}function m(e){return!!e.original}},66895:(e,t,n)=>{n.d(t,{$N:()=>c,Lz:()=>i,QN:()=>f,WO:()=>l,hz:()=>a,o2:()=>o});const r=Symbol("meshContext");function o(e){return e&&"object"==typeof e&&r in e?e[r]:void 0}function i(e,t){const n=o(e);return{...e,[r]:{...n,...t}}}const s=Symbol("meshMaterialContext");function a(e){return e&&"object"==typeof e&&s in e?e[s]:void 0}function l(e){const t=a(e);if(t?.materialMap)return e;const n={materialMap:new Map};return{...e,[s]:n}}const u=Symbol("meshTextureContext");function c(e){return e&&"object"==typeof e&&u in e?e[u]:void 0}function f(e){const t=c(e);if(t?.textureMap)return e;const n={textureMap:new Map};return{...e,[u]:n}}},72258:(e,t,n)=>{n.d(t,{UR:()=>A,p5:()=>w,xK:()=>R});var r=n(53966),o=n(34727),i=n(83047),s=n(77690),a=n(29242),l=n(58083),u=n(9093),c=n(38954),f=n(51850),p=n(98764),h=n(48353),g=n(65806),y=n(27615),d=n(21325),m=n(73354),x=n(22141);const v=()=>r.A.getLogger("esri.geometry.support.meshUtils.vertexSpaceConversion");function w(e,t,{vertexSpace:n,spatialReference:r}){if("georeferenced"===n.type){const o=e;if(!(0,g.g)(t,o,r))return!1;const{origin:i}=n;return(0,c.d)(e,o,i),!0}const o=(0,p.lO)(r),i=e;if(!(0,g.g)(t,i,o))return!1;const{origin:s}=n,a=L;if(!(0,h.l)(r,s,a,o))return!1;const u=(0,l.B8)(L,a);return null!=u&&((0,c.t)(e,i,u),!0)}function A(e,t,n){const{vertexSpace:r,transform:o,vertexAttributes:i}=e,a=(0,y.Hq)(r)?o:null,f=T(e.spatialReference,n,3);if((0,y.yJ)(r,t)&&(!a||(0,l.t2)(a.localMatrix,u.zK))&&S(f)){const{position:e,normal:t,tangent:r}=i,o=n?.allowBufferReuse;return{position:o?e:e.slice(),normal:o?t:t?.slice(),tangent:o?r:r?.slice()}}switch(e.vertexSpace.type){case"local":return"local"===t.type?function({vertexAttributes:e,spatialReference:t,transform:n},{origin:r},o,i){const s=b(t,i);if(!(0,h.l)(t,r,Z,s))return(0,x.CN)(v(),t,s),null;if(n&&(0,l.lw)(Z,Z,n.localMatrix),!(0,h.l)(t,o,U,s))return(0,x.CN)(v(),s,t),null;(0,l.B8)(U,U);const a=(0,l.lw)(Z,U,Z);return C(a,t,i,3),M(e,a)}(e,e.vertexSpace,t.origin,n):function({spatialReference:e,vertexAttributes:t,transform:n},{origin:r},o,i){const s=b(e,i);if(!(0,h.l)(e,r,Z,s))return(0,x.CN)(v(),e,s),null;n&&(0,l.lw)(Z,Z,n.localMatrix),C(Z,e,i,1);const a=new Float64Array(t.position.length),u=function(e,t,n,r,o){(0,m.t)(r,e,t);const i=new Float64Array(e.length);return(0,x.$5)(r,o,i,n)?i:((0,x.CN)(v(),o,n),null)}(t.position,Z,e,a,s);if(!u)return null;const f=function(e,t,n,r,o,i){if(null==o)return null;const s=new Float32Array(o.length);return(0,x.qs)(o,s,i),(0,x.si)(s,e,t,n,r,s)?s:((0,x.CN)(v(),r,t),null)}(u,e,a,s,t.normal,Z);if(t.normal&&!f)return null;const p=function(e,t,n,r,o,i){if(null==o)return null;const s=new Float32Array(o.length);return(0,x.KM)(o,s,i),(0,x.Mv)(s,e,t,n,r,s)?s:((0,x.CN)(v(),r,t),null)}(u,e,a,s,t.tangent,Z);if(t.tangent&&!p)return null;if(o){const e=(0,c.u)(B,o);(0,m.a)(u,u,e)}return{position:u,normal:f,tangent:p}}(e,e.vertexSpace,t.origin,n);case"georeferenced":return"local"===t.type?function({vertexAttributes:e,spatialReference:t,transform:n},{origin:r},o,i){const a=b(t,i);if(!(0,h.l)(t,o,Z,a))return(0,x.CN)(v(),t,a),null;const u=1/T(t,i,2);(0,l.hs)(Z,Z,[u,u,u]);const c=(0,l.B8)(U,Z),{position:f,normal:p,tangent:g}=function(e,t,n){if(!t)return e;if(!n){const{position:n,normal:r,tangent:o}=e;return{position:(0,m.a)(new Float64Array(n.length),n,t),tangent:o,normal:r}}const r=M(e,n.localMatrix);return(0,m.a)(r.position,r.position,t),r}(e,r,n),y=new Float64Array(f.length),d=function(e,t,n,r,o){const i=(0,x.gr)(e,t,r,o);if(!i)return(0,x.CN)(v(),t,o),null;const s=new Float64Array(i.length);return(0,m.t)(s,i,n),s}(f,t,c,y,a);if(!d)return null;const w=(0,s.Ge)(N,c),A=function(e,t,n,r,o,i,s){if(null==e)return null;const a=s??new Float32Array(e.length);return(0,x.X4)(e,t,n,r,o,a)?((0,m.b)(a,a,i),a):((0,x.CN)(v(),n,o),null)}(p,f,t,y,a,w,p!==e.normal?p:void 0);if(!A&&p)return null;const C=function(e,t,n,r,o,i,s){if(null==e)return null;const a=s??new Float32Array(e.length);return(0,x.xA)(e,t,n,r,o,a)?((0,m.b)(a,a,i,4),a):((0,x.CN)(v(),n,o),null)}(g,f,t,y,a,w,g!==e.tangent?g:void 0);return!C&&g?null:{position:d,normal:A,tangent:C}}(e,e.vertexSpace,t.origin,n):function({vertexAttributes:e,transform:t,spatialReference:n},{origin:r},o,i){const s=T(n,i,3),a=r||!S(s)?(0,l.C)(Z,t?.localMatrix??u.zK):null;a&&C(a,n,i,3);const{position:f,normal:p,tangent:h}=a?M(e,a):e,g=i?.allowBufferReuse,y=g?f:new Float64Array(f.length);let d=f;if(r&&(d=(0,m.a)(y,d,r)),o){const e=(0,c.u)(B,o);d=(0,m.a)(y,d,e)}return{position:d!==e.position||g?d:d.slice(),normal:p!==e.normal||g?p:p?.slice(),tangent:h!==e.tangent||g?h:h?.slice()}}(e,e.vertexSpace,t.origin,n)}}function b(e,t){return t?.useEllipsoid&&(0,d.B3)(e)?p.Y0:(0,p.lO)(e)}function M(e,t){const n=new Float64Array(e.position.length);(0,m.t)(n,e.position,t);const r=e.normal?new Float32Array(e.normal.length):null,o=e.tangent?new Float32Array(e.tangent.length):null;return r&&e.normal&&(0,x.qs)(e.normal,r,t),o&&e.tangent&&(0,x.KM)(e.tangent,o,t),{position:n,normal:r,tangent:o}}function C(e,t,n,r){const o=T(t,n,r);S(o)||(0,l.hs)(e,e,[o,o,o])}function T(e,t,n){const r=!!(1&n),o=!!(2&n),i=t?.sourceUnit,s=t?.targetUnit;if(!i&&!s)return 1;let a=R(i,e);r||!i||S(a)||(v().warn("source unit conversion not supported"),a=1);let l=1/R(s,e);return o||!s||S(l)||(v().warn("target unit conversion not supported"),l=1),a*l}function S(e){return(0,o.Io)(e,1)}function R(e,t){if(null==e)return 1;const n=(0,i.KX)(t);return 1/(0,i.oU)(n,"meters",e)}const Z=(0,u.vt)(),U=(0,u.vt)(),N=(0,a.vt)(),B=(0,f.vt)(),L=(0,u.vt)()},73354:(e,t,n)=>{n.d(t,{a:()=>f,b:()=>a,c:()=>s,d:()=>o,e:()=>p,f:()=>c,l:()=>u,n:()=>h,t:()=>i});var r=n(40876);function o(e,t,n){i(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function i(e,t,n,r=3,o=r){if(e.length/r!==Math.ceil(t.length/o))return e;const i=e.length/r,s=n[0],a=n[1],l=n[2],u=n[4],c=n[5],f=n[6],p=n[8],h=n[9],g=n[10],y=n[12],d=n[13],m=n[14];let x=0,v=0;for(let n=0;n<i;n++){const n=t[x],i=t[x+1],w=t[x+2];e[v]=s*n+u*i+p*w+y,e[v+1]=a*n+c*i+h*w+d,e[v+2]=l*n+f*i+g*w+m,x+=o,v+=r}return e}function s(e,t,n){a(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function a(e,t,n,r=3,o=r){if(e.length/r!==Math.ceil(t.length/o))return;const i=e.length/r,s=n[0],a=n[1],l=n[2],u=n[3],c=n[4],f=n[5],p=n[6],h=n[7],g=n[8];let y=0,d=0;for(let n=0;n<i;n++){const n=t[y],i=t[y+1],m=t[y+2];e[d]=s*n+u*i+p*m,e[d+1]=a*n+c*i+h*m,e[d+2]=l*n+f*i+g*m,y+=o,d+=r}}function l(e,t,n,r=3,o=r){const i=Math.min(e.length/r,t.length/o);let s=0,a=0;for(let l=0;l<i;l++)e[a]=n*t[s],e[a+1]=n*t[s+1],e[a+2]=n*t[s+2],s+=o,a+=r;return e}function u(e,t,n,r){c(e.typedBuffer,t.typedBuffer,n,r,e.typedBufferStride,t.typedBufferStride)}function c(e,t,n,o,i=3,s=i){const a=Math.min(e.length/i,t.length/s);let l=0,u=0;const c=1/r.Tf;for(let r=0;r<a;r++)e[u]=o*(n*t[l])**c,e[u+1]=o*(n*t[l+1])**c,e[u+2]=o*(n*t[l+2])**c,l+=s,u+=i}function f(e,t,n,r=3,o=r){const i=e.length/r;if(i!==Math.ceil(t.length/o))return e;let s=0,a=0;for(let l=0;l<i;l++)e[a]=t[s]+n[0],e[a+1]=t[s+1]+n[1],e[a+2]=t[s+2]+n[2],s+=o,a+=r;return e}function p(e,t){h(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function h(e,t,n=3,r=n){const o=Math.min(e.length/n,t.length/r);let i=0,s=0;for(let a=0;a<o;a++){const o=t[i],a=t[i+1],l=t[i+2],u=o*o+a*a+l*l;if(u>0){const t=1/Math.sqrt(u);e[s]=t*o,e[s+1]=t*a,e[s+2]=t*l}i+=r,s+=n}}n(44208),n(53966),Object.freeze(Object.defineProperty({__proto__:null,linearToSRGB:c,linearToSRGBView:u,normalize:h,normalizeView:p,scale:l,scaleView:function(e,t,n){l(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)},shiftRight:function(e,t,n){const r=Math.min(e.count,t.count),o=e.typedBuffer,i=e.typedBufferStride,s=t.typedBuffer,a=t.typedBufferStride;let l=0,u=0;for(let e=0;e<r;e++)o[u]=s[l]>>n,o[u+1]=s[l+1]>>n,o[u+2]=s[l+2]>>n,l+=a,u+=i},transformMat3:a,transformMat3View:s,transformMat4:i,transformMat4View:o,translate:f},Symbol.toStringTag,{value:"Module"}))},80882:(e,t,n)=>{n.d(t,{A:()=>c});var r=n(31635),o=n(68197),i=n(10107),s=(n(44208),n(53966),n(87811),n(40608)),a=n(19211),l=n(35063),u=n(51147);let c=class extends a.A{constructor(e){super(e),this.emissiveColor=null,this.emissiveTexture=null,this.emissiveTextureTransform=void 0,this.occlusionTexture=null,this.occlusionTextureTransform=void 0,this.metallic=1,this.roughness=1,this.metallicRoughnessTexture=null,this.metallicRoughnessTextureTransform=void 0}getMemoryUsage(){let e=super.getMemoryUsage();return e+=null!=this.emissiveColor?16:0,null!=this.emissiveTexture&&(e+=this.emissiveTexture.memoryUsage),e+=null!=this.emissiveTextureTransform?20:0,null!=this.occlusionTexture&&(e+=this.occlusionTexture.memoryUsage),e+=null!=this.occlusionTextureTransform?20:0,null!=this.metallicRoughnessTexture&&(e+=this.metallicRoughnessTexture.memoryUsage),e+=null!=this.metallicRoughnessTextureTransform?20:0,e}};(0,r.Cg)([(0,i.MZ)({type:o.A,json:{write:!0}})],c.prototype,"emissiveColor",void 0),(0,r.Cg)([(0,i.MZ)({type:l.A,json:{write:!0}})],c.prototype,"emissiveTexture",void 0),(0,r.Cg)([(0,i.MZ)({type:u.A,json:{write:!0}})],c.prototype,"emissiveTextureTransform",void 0),(0,r.Cg)([(0,i.MZ)({type:l.A,json:{write:!0}})],c.prototype,"occlusionTexture",void 0),(0,r.Cg)([(0,i.MZ)({type:u.A,json:{write:!0}})],c.prototype,"occlusionTextureTransform",void 0),(0,r.Cg)([(0,i.MZ)({type:Number,nonNullable:!0,json:{write:!0},range:{min:0,max:1}})],c.prototype,"metallic",void 0),(0,r.Cg)([(0,i.MZ)({type:Number,nonNullable:!0,json:{write:!0},range:{min:0,max:1}})],c.prototype,"roughness",void 0),(0,r.Cg)([(0,i.MZ)({type:l.A,json:{write:!0}})],c.prototype,"metallicRoughnessTexture",void 0),(0,r.Cg)([(0,i.MZ)({type:u.A,json:{write:!0}})],c.prototype,"metallicRoughnessTextureTransform",void 0),c=(0,r.Cg)([(0,s.$)("esri.geometry.support.MeshMaterialMetallicRoughness")],c)},83349:(e,t,n)=>{function r(e,t,n){n=n||2;var r,i,a,l,u,c,p,h=t&&t.length,g=h?t[0]*n:e.length,y=o(e,0,g,n,!0),d=[];if(!y||y.next===y.prev)return d;if(h&&(y=f(e,t,y,n)),e.length>80*n){r=a=e[0],i=l=e[1];for(var m=n;m<g;m+=n)(u=e[m])<r&&(r=u),(c=e[m+1])<i&&(i=c),u>a&&(a=u),c>l&&(l=c);p=0!==(p=Math.max(a-r,l-i))?1/p:0}return s(y,d,n,r,i,p),d}function o(e,t,n,r,o){var i,s;if(o===B(e,t,n,r)>0)for(i=t;i<n;i+=r)s=Z(i,e[i],e[i+1],s);else for(i=n-r;i>=t;i-=r)s=Z(i,e[i],e[i+1],s);if(s&&b(s,s.next)){var a=s.next;U(s),s=a}return s}function i(e,t){if(!e)return e;t||(t=e);var n,r=e;do{if(n=!1,r.steiner||!b(r,r.next)&&0!==A(r.prev,r,r.next))r=r.next;else{var o=r.prev;if(U(r),(r=t=o)===r.next)break;n=!0}}while(n||r!==t);return t}function s(e,t,n,r,o,f,p){if(e){!p&&f&&d(e,r,o,f);for(var h,g,y=e;e.prev!==e.next;)if(h=e.prev,g=e.next,f?l(e,r,o,f):a(e))t.push(h.i/n),t.push(e.i/n),t.push(g.i/n),U(e),e=g.next,y=g.next;else if((e=g)===y){p?1===p?s(e=u(i(e),t,n),t,n,r,o,f,2):2===p&&c(e,t,n,r,o,f):s(i(e),t,n,r,o,f,1);break}}}function a(e){var t=e.prev,n=e,r=e.next;if(A(t,n,r)>=0)return!1;for(var o=e.next.next;o!==e.prev;){if(v(t.x,t.y,n.x,n.y,r.x,r.y,o.x,o.y)&&A(o.prev,o,o.next)>=0)return!1;o=o.next}return!0}function l(e,t,n,r){var o=e.prev,i=e,s=e.next;if(A(o,i,s)>=0)return!1;for(var a=o.x<i.x?o.x<s.x?o.x:s.x:i.x<s.x?i.x:s.x,l=o.y<i.y?o.y<s.y?o.y:s.y:i.y<s.y?i.y:s.y,u=o.x>i.x?o.x>s.x?o.x:s.x:i.x>s.x?i.x:s.x,c=o.y>i.y?o.y>s.y?o.y:s.y:i.y>s.y?i.y:s.y,f=m(a,l,t,n,r),p=m(u,c,t,n,r),h=e.prevZ,g=e.nextZ;h&&h.z>=f&&g&&g.z<=p;){if(h!==e.prev&&h!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,h.x,h.y)&&A(h.prev,h,h.next)>=0)return!1;if(h=h.prevZ,g!==e.prev&&g!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,g.x,g.y)&&A(g.prev,g,g.next)>=0)return!1;g=g.nextZ}for(;h&&h.z>=f;){if(h!==e.prev&&h!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,h.x,h.y)&&A(h.prev,h,h.next)>=0)return!1;h=h.prevZ}for(;g&&g.z<=p;){if(g!==e.prev&&g!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,g.x,g.y)&&A(g.prev,g,g.next)>=0)return!1;g=g.nextZ}return!0}function u(e,t,n){var r=e;do{var o=r.prev,s=r.next.next;!b(o,s)&&M(o,r,r.next,s)&&S(o,s)&&S(s,o)&&(t.push(o.i/n),t.push(r.i/n),t.push(s.i/n),U(r),U(r.next),r=e=s),r=r.next}while(r!==e);return i(r)}function c(e,t,n,r,o,a){var l=e;do{for(var u=l.next.next;u!==l.prev;){if(l.i!==u.i&&w(l,u)){var c=R(l,u);return l=i(l,l.next),c=i(c,c.next),s(l,t,n,r,o,a),void s(c,t,n,r,o,a)}u=u.next}l=l.next}while(l!==e)}function f(e,t,n,r){var s,a,l,u=[];for(s=0,a=t.length;s<a;s++)(l=o(e,t[s]*r,s<a-1?t[s+1]*r:e.length,r,!1))===l.next&&(l.steiner=!0),u.push(x(l));for(u.sort(p),s=0;s<u.length;s++)n=i(n=g(u[s],n),n.next);return n}function p(e,t){return e.x-t.x}function h(e){if(e.next.prev===e)return e;let t=e;for(;;){const n=t.next;if(n.prev===t||n===t||n===e)break;t=n}return t}function g(e,t){var n=function(e,t){var n,r=t,o=e.x,i=e.y,s=-1/0;do{if(i<=r.y&&i>=r.next.y&&r.next.y!==r.y){var a=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(a<=o&&a>s){if(s=a,a===o){if(i===r.y)return r;if(i===r.next.y)return r.next}n=r.x<r.next.x?r:r.next}}r=r.next}while(r!==t);if(!n)return null;if(o===s)return n;var l,u=n,c=n.x,f=n.y,p=1/0;r=n;do{o>=r.x&&r.x>=c&&o!==r.x&&v(i<f?o:s,i,c,f,i<f?s:o,i,r.x,r.y)&&(l=Math.abs(i-r.y)/(o-r.x),S(r,e)&&(l<p||l===p&&(r.x>n.x||r.x===n.x&&y(n,r)))&&(n=r,p=l)),r=r.next}while(r!==u);return n}(e,t);if(!n)return t;var r=R(n,e),o=i(n,n.next);let s=h(r);return i(s,s.next),o=h(o),h(t===n?o:t)}function y(e,t){return A(e.prev,e,t.prev)<0&&A(t.next,e,e.next)<0}function d(e,t,n,r){var o=e;do{null===o.z&&(o.z=m(o.x,o.y,t,n,r)),o.prevZ=o.prev,o.nextZ=o.next,o=o.next}while(o!==e);o.prevZ.nextZ=null,o.prevZ=null,function(e){var t,n,r,o,i,s,a,l,u=1;do{for(n=e,e=null,i=null,s=0;n;){for(s++,r=n,a=0,t=0;t<u&&(a++,r=r.nextZ);t++);for(l=u;a>0||l>0&&r;)0!==a&&(0===l||!r||n.z<=r.z)?(o=n,n=n.nextZ,a--):(o=r,r=r.nextZ,l--),i?i.nextZ=o:e=o,o.prevZ=i,i=o;n=r}i.nextZ=null,u*=2}while(s>1)}(o)}function m(e,t,n,r,o){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)*o)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*o)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function x(e){var t=e,n=e;do{(t.x<n.x||t.x===n.x&&t.y<n.y)&&(n=t),t=t.next}while(t!==e);return n}function v(e,t,n,r,o,i,s,a){return(o-s)*(t-a)-(e-s)*(i-a)>=0&&(e-s)*(r-a)-(n-s)*(t-a)>=0&&(n-s)*(i-a)-(o-s)*(r-a)>=0}function w(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!function(e,t){var n=e;do{if(n.i!==e.i&&n.next.i!==e.i&&n.i!==t.i&&n.next.i!==t.i&&M(n,n.next,e,t))return!0;n=n.next}while(n!==e);return!1}(e,t)&&(S(e,t)&&S(t,e)&&function(e,t){var n=e,r=!1,o=(e.x+t.x)/2,i=(e.y+t.y)/2;do{n.y>i!=n.next.y>i&&n.next.y!==n.y&&o<(n.next.x-n.x)*(i-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next}while(n!==e);return r}(e,t)&&(A(e.prev,e,t.prev)||A(e,t.prev,t))||b(e,t)&&A(e.prev,e,e.next)>0&&A(t.prev,t,t.next)>0)}function A(e,t,n){return(t.y-e.y)*(n.x-t.x)-(t.x-e.x)*(n.y-t.y)}function b(e,t){return e.x===t.x&&e.y===t.y}function M(e,t,n,r){var o=T(A(e,t,n)),i=T(A(e,t,r)),s=T(A(n,r,e)),a=T(A(n,r,t));return o!==i&&s!==a||!(0!==o||!C(e,n,t))||!(0!==i||!C(e,r,t))||!(0!==s||!C(n,e,r))||!(0!==a||!C(n,t,r))}function C(e,t,n){return t.x<=Math.max(e.x,n.x)&&t.x>=Math.min(e.x,n.x)&&t.y<=Math.max(e.y,n.y)&&t.y>=Math.min(e.y,n.y)}function T(e){return e>0?1:e<0?-1:0}function S(e,t){return A(e.prev,e,e.next)<0?A(e,t,e.next)>=0&&A(e,e.prev,t)>=0:A(e,t,e.prev)<0||A(e,e.next,t)<0}function R(e,t){var n=new N(e.i,e.x,e.y),r=new N(t.i,t.x,t.y),o=e.next,i=t.prev;return e.next=t,t.prev=e,n.next=o,o.prev=n,r.next=n,n.prev=r,i.next=r,r.prev=i,r}function Z(e,t,n,r){var o=new N(e,t,n);return r?(o.next=r.next,o.prev=r,r.next.prev=o,r.next=o):(o.prev=o,o.next=o),o}function U(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function N(e,t,n){this.i=e,this.x=t,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function B(e,t,n,r){for(var o=0,i=t,s=n-r;i<n;i+=r)o+=(e[s]-e[i])*(e[i+1]+e[s+1]),s=i;return o}n.d(t,{e:()=>r}),r.deviation=function(e,t,n,r){var o=t&&t.length,i=o?t[0]*n:e.length,s=Math.abs(B(e,0,i,n));if(o)for(var a=0,l=t.length;a<l;a++){var u=t[a]*n,c=a<l-1?t[a+1]*n:e.length;s-=Math.abs(B(e,u,c,n))}var f=0;for(a=0;a<r.length;a+=3){var p=r[a]*n,h=r[a+1]*n,g=r[a+2]*n;f+=Math.abs((e[p]-e[g])*(e[h+1]-e[p+1])-(e[p]-e[h])*(e[g+1]-e[p+1]))}return 0===s&&0===f?0:Math.abs((f-s)/s)},r.flatten=function(e){for(var t=e[0][0].length,n={vertices:[],holes:[],dimensions:t},r=0,o=0;o<e.length;o++){for(var i=0;i<e[o].length;i++)for(var s=0;s<t;s++)n.vertices.push(e[o][i][s]);o>0&&(r+=e[o-1].length,n.holes.push(r))}return n}},95696:(e,t,n)=>{n.d(t,{A:()=>c});var r,o=n(31635),i=n(69540),s=n(25482),a=n(10107),l=(n(44208),n(53966),n(87811),n(93223)),u=n(40608);let c=class extends((0,i.OU)(s.o)){static{r=this}constructor(e){super(e),this.type="georeferenced",this.origin=null}static{this.absolute=new r}};(0,o.Cg)([(0,l.e)({georeferenced:"georeferenced"},{readOnly:!0})],c.prototype,"type",void 0),(0,o.Cg)([(0,a.MZ)({type:[Number],nonNullable:!1,json:{write:!0}})],c.prototype,"origin",void 0),c=r=(0,o.Cg)([(0,u.$)("esri.geometry.support.MeshGeoreferencedVertexSpace")],c)},97146:(e,t,n)=>{n.d(t,{Dg:()=>i,my:()=>s,tM:()=>c,uW:()=>o});var r=n(34275);function o(e){return i(e,!0)}function i(e,t){if(Array.isArray(e)){if(e.length<r.y9)return e}else if(e.length<r.y9)return Array.from(e);let n=!0,o=!0;return e.some((e,t)=>(n=n&&0===e,o=o&&e===t,!n&&!o)),n?function(e){if(1===e)return l;if(e<r.y9)return new Array(e).fill(0);if(e>p.length){const t=Math.max(2*p.length,e);p=new Uint8Array(t)}return new Uint8Array(p.buffer,0,e)}(e.length):o?c(e.length):(0,r.iu)(e)&&e.BYTES_PER_ELEMENT===Uint16Array.BYTES_PER_ELEMENT?e:function(e,t){for(const n of e){if(n>=65536)return(0,r.iu)(e)?e:new Uint32Array(e);n>=256&&(t=!1)}return t?new Uint8Array(e):new Uint16Array(e)}(e,!t)}function s(e){return e<=r.y9?new Array(e):e<=65536?new Uint16Array(e):new Uint32Array(e)}let a=f(131072);const l=[0],u=(()=>{const e=new Uint16Array(65536);for(let t=0;t<e.length;++t)e[t]=t;return e})();function c(e){return 1===e?l:e<r.y9?Array.from(new Uint16Array(u.buffer,0,e)):e<u.length?new Uint16Array(u.buffer,0,e):(e>a.length&&(a=f(Math.max(2*a.length,e))),new Uint32Array(a.buffer,0,e))}function f(e){const t=new Uint32Array(e);for(let e=0;e<t.length;e++)t[e]=e;return t}let p=new Uint8Array(65536)}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[36],{1193:(e,t,n)=>{n.d(t,{H:()=>h});var r,o=n(31635),i=n(69540),s=n(25482),a=n(4718),l=n(53966),u=n(10107),c=n(79901),f=n(40608),p=n(31199);let h=r=class extends((0,i.OU)(s.o)){constructor(e){super(e),this.color=null,this.position=new Float64Array(0),this.uv=null,this.normal=null,this.tangent=null}castColor(e){return(0,p.b)(e,Uint8Array,[Uint8ClampedArray],{loggerTag:".color=",stride:4},l.A.getLogger(this))}castPosition(e){return e&&e instanceof Float32Array&&l.A.getLogger(this).warn(".position=","Setting position attribute from a Float32Array may cause precision problems. Consider storing data in a Float64Array or a regular number array"),(0,p.b)(e,Float64Array,[Float32Array],{loggerTag:".position=",stride:3},l.A.getLogger(this))}castUv(e){return(0,p.b)(e,Float32Array,[Float64Array],{loggerTag:".uv=",stride:2},l.A.getLogger(this))}castNormal(e){return(0,p.b)(e,Float32Array,[Float64Array],{loggerTag:".normal=",stride:3},l.A.getLogger(this))}castTangent(e){return(0,p.b)(e,Float32Array,[Float64Array],{loggerTag:".tangent=",stride:4},l.A.getLogger(this))}clonePositional(){const e={position:(0,a.o8)(this.position),normal:(0,a.o8)(this.normal),tangent:(0,a.o8)(this.tangent),uv:this.uv,color:this.color};return new r(e)}get usedMemory(){return this.position.byteLength+(this.uv?.byteLength??0)+(this.normal?.byteLength??0)+(this.tangent?.byteLength??0)+(this.color?.byteLength??0)}};(0,o.Cg)([(0,u.MZ)({json:{write:p.B}})],h.prototype,"color",void 0),(0,o.Cg)([(0,c.w)("color")],h.prototype,"castColor",null),(0,o.Cg)([(0,u.MZ)({nonNullable:!0,json:{write:p.B}})],h.prototype,"position",void 0),(0,o.Cg)([(0,c.w)("position")],h.prototype,"castPosition",null),(0,o.Cg)([(0,u.MZ)({json:{write:p.B}})],h.prototype,"uv",void 0),(0,o.Cg)([(0,c.w)("uv")],h.prototype,"castUv",null),(0,o.Cg)([(0,u.MZ)({json:{write:p.B}})],h.prototype,"normal",void 0),(0,o.Cg)([(0,c.w)("normal")],h.prototype,"castNormal",null),(0,o.Cg)([(0,u.MZ)({json:{write:p.B}})],h.prototype,"tangent",void 0),(0,o.Cg)([(0,c.w)("tangent")],h.prototype,"castTangent",null),h=r=(0,o.Cg)([(0,f.$)("esri.geometry.support.MeshVertexAttributes")],h)},9318:(e,t,n)=>{n.d(t,{b:()=>i});var r=n(34727),o=n(97146);function i(e,t,n){const i=Array.isArray(e),c=i?e.length/t:e.byteLength/(4*t),f=i?e:new Uint32Array(e,0,c*t),p=n?.minReduction??0,h=n?.originalIndices||null,g=h?h.length:0,y=n?.componentOffsets||null;let d=0;if(y)for(let e=0;e<y.length-1;e++){const t=y[e+1]-y[e];t>d&&(d=t)}else d=c;const m=Math.floor(1.1*d)+1;(null==u||u.length<2*m)&&(u=new Uint32Array((0,r.cU)(2*m)));for(let e=0;e<2*m;e++)u[e]=0;let x=0;const v=!!y&&!!h,w=v?g:c;let A=(0,o.my)(c);const b=new Uint32Array(g),M=1.96;let C=0!==p?Math.ceil(4*M*M/(p*p)*p*(1-p)):w,T=1,S=y?y[1]:w;for(let e=0;e<w;e++){if(e===C){const t=1-x/e;if(t+M*Math.sqrt(t*(1-t)/e)<p)return null;C*=2}if(e===S){for(let e=0;e<2*m;e++)u[e]=0;if(h)for(let e=y[T-1];e<y[T];e++)b[e]=A[h[e]];S=y[++T]}const n=v?h[e]:e,r=n*t,o=l(f,r,t);let i=o%m,a=x;for(;0!==u[2*i+1];){if(u[2*i]===o){const e=u[2*i+1]-1;if(s(f,r,e*t,t)){a=A[e];break}}i++,i>=m&&(i-=m)}a===x&&(u[2*i]=o,u[2*i+1]=n+1,x++),A[n]=a}if(0!==p&&1-x/c<p)return null;if(v){for(let e=y[T-1];e<b.length;e++)b[e]=A[h[e]];A=(0,o.uW)(b)}const R=i?new Array(x):new Uint32Array(x*t);x=0;for(let e=0;e<w;e++)A[e]===x&&(a(f,(v?h[e]:e)*t,R,x*t,t),x++);if(h&&!v){const e=new Uint32Array(g);for(let t=0;t<e.length;t++)e[t]=A[h[t]];A=(0,o.uW)(e)}return{buffer:Array.isArray(R)?R:R.buffer,indices:A,uniqueCount:x}}function s(e,t,n,r){for(let o=0;o<r;o++)if(e[t+o]!==e[n+o])return!1;return!0}function a(e,t,n,r,o){for(let i=0;i<o;i++)n[r+i]=e[t+i]}function l(e,t,n){let r=0;for(let o=0;o<n;o++)r=e[t+o]+r|0,r=r+(r<<11)+(r>>>2)|0;return r>>>0}let u=null},16939:(e,t,n)=>{n.d(t,{A:()=>y});var r,o=n(31635),i=n(69540),s=n(25482),a=n(53966),l=n(10107),u=n(79901),c=(n(44208),n(87811),n(40608)),f=n(56507),p=n(19211),h=n(80882),g=n(31199);let y=r=class extends((0,i.OU)(s.o)){static from(e){return(0,f.PZ)(r,e)}constructor(e){super(e),this.faces=null,this.material=null,this.name=void 0,this.shading="source",this.trustSourceNormals=!1}castFaces(e){return(0,g.b)(e,Uint32Array,[Uint16Array],{loggerTag:".faces=",stride:3},a.A.getLogger(this))}castMaterial(e){return(0,f.PZ)(e&&"object"==typeof e&&("metallic"in e||"roughness"in e||"metallicRoughnessTexture"in e)?h.A:p.A,e)}get memoryUsage(){let e=0;return null!=this.faces&&(e+=this.faces.byteLength),null!=this.material&&(e+=this.material.memoryUsage),e}};(0,o.Cg)([(0,l.MZ)({json:{write:g.B}})],y.prototype,"faces",void 0),(0,o.Cg)([(0,u.w)("faces")],y.prototype,"castFaces",null),(0,o.Cg)([(0,l.MZ)({type:p.A,json:{write:!0}})],y.prototype,"material",void 0),(0,o.Cg)([(0,u.w)("material")],y.prototype,"castMaterial",null),(0,o.Cg)([(0,l.MZ)({json:{write:!0}})],y.prototype,"name",void 0),(0,o.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],y.prototype,"shading",void 0),(0,o.Cg)([(0,l.MZ)({type:Boolean})],y.prototype,"trustSourceNormals",void 0),y=r=(0,o.Cg)([(0,c.$)("esri.geometry.support.MeshComponent")],y)},18251:(e,t,n)=>{n.d(t,{A:()=>c});var r=n(31635),o=n(69540),i=n(25482),s=n(10107),a=(n(44208),n(53966),n(87811),n(93223)),l=n(40608),u=n(51850);let c=class extends((0,o.OU)(i.o)){constructor(e){super(e),this.type="local",this.origin=(0,u.vt)()}};(0,r.Cg)([(0,a.e)({local:"local"},{readOnly:!0})],c.prototype,"type",void 0),(0,r.Cg)([(0,s.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],c.prototype,"origin",void 0),c=(0,r.Cg)([(0,l.$)("esri.geometry.support.MeshLocalVertexSpace")],c)},19211:(e,t,n)=>{n.d(t,{A:()=>p});var r=n(31635),o=n(68197),i=n(69540),s=n(25482),a=n(10107),l=(n(44208),n(53966),n(87811),n(40608)),u=n(35063),c=n(51147),f=n(66895);let p=class extends((0,i.OU)(s.o)){constructor(e){super(e),this.color=null,this.colorTexture=null,this.colorTextureTransform=null,this.normalTexture=void 0,this.normalTextureTransform=void 0,this.alphaMode="auto",this.alphaCutoff=.5,this.doubleSided=!0}clone(e){const t=(0,f.hz)(e),n=t?.materialMap?.get(this);if(n)return n;const r=super.clone((0,f.QN)(e));return t?.materialMap?.set(this,r),r}get memoryUsage(){return this.getMemoryUsage()}getMemoryUsage(){let e=0;return e+=null!=this.color?16:0,null!=this.colorTexture&&(e+=this.colorTexture.memoryUsage),e+=null!=this.colorTextureTransform?20:0,null!=this.normalTexture&&(e+=this.normalTexture.memoryUsage),e+=null!=this.normalTextureTransform?20:0,e}};(0,r.Cg)([(0,a.MZ)({type:o.A,json:{write:!0}})],p.prototype,"color",void 0),(0,r.Cg)([(0,a.MZ)({type:u.A,json:{write:!0}})],p.prototype,"colorTexture",void 0),(0,r.Cg)([(0,a.MZ)({type:c.A,json:{write:!0}})],p.prototype,"colorTextureTransform",void 0),(0,r.Cg)([(0,a.MZ)({type:u.A,json:{write:!0}})],p.prototype,"normalTexture",void 0),(0,r.Cg)([(0,a.MZ)({type:c.A,json:{write:!0}})],p.prototype,"normalTextureTransform",void 0),(0,r.Cg)([(0,a.MZ)({nonNullable:!0,json:{write:!0}})],p.prototype,"alphaMode",void 0),(0,r.Cg)([(0,a.MZ)({nonNullable:!0,json:{write:!0}})],p.prototype,"alphaCutoff",void 0),(0,r.Cg)([(0,a.MZ)({nonNullable:!0,json:{write:!0}})],p.prototype,"doubleSided",void 0),p=(0,r.Cg)([(0,l.$)("esri.geometry.support.MeshMaterial")],p)},21287:(e,t,n)=>{n.d(t,{M5:()=>f,eV:()=>c});var r=n(78888),o=n(49186),i=n(74887),s=n(84952),a=n(26306);let l=null,u=!0;function c(e,t,n,r){if(!t||!n)throw new Error("Cannot construct image data without dimensions");if(u)try{return new ImageData(e,t,n)}catch(e){u=!1}const o=function(e,t,n){return n||(l||(l=document.createElement("canvas"),l.width=1,l.height=1),n=l),n.getContext("2d").createImageData(e,t)}(t,n,r);return o.data.set(e,0),o}async function f(e,t){const{arrayBuffer:l,mediaType:u}=await async function(e,t){const n=(0,s.r$)(e);if(n?.isBase64)return{arrayBuffer:(0,a.M)(n.data),mediaType:n.mediaType};const o=await(0,r.A)(e,{responseType:"array-buffer",...t});return{arrayBuffer:o.data,mediaType:o.getHeader?.("Content-Type")??""}}(e,t),c="image/png"===u;if("image/gif"===u){const{isAnimatedGIF:e,parseGif:r}=await n.e(820).then(n.bind(n,10820));if(e(l))return r(l,t)}if(c){const{isAnimatedPNG:e,parseApng:r}=await n.e(2390).then(n.bind(n,22390));if(e(l))return r(l,t)}return async function(e,t){const n=window.URL.createObjectURL(e);try{const{data:e}=await(0,r.A)(n,{...t,responseType:"image"});return e}catch(e){if(!(0,i.zf)(e))throw new o.A("invalid-image",`Could not fetch requested image at ${n}`);throw e}finally{window.URL.revokeObjectURL(n)}}(new Blob([l],{type:u}),t)}},22141:(e,t,n)=>{n.d(t,{$5:()=>b,CN:()=>x,JP:()=>m,KM:()=>C,Mv:()=>S,X4:()=>v,gr:()=>A,qs:()=>M,si:()=>w,xA:()=>T});var r=n(34727),o=n(77690),i=n(29242),s=n(58083),a=n(9093),l=n(38954),u=n(51850),c=n(48353),f=n(9762),p=(n(79258),n(21325)),h=n(28735),g=n(13030),y=n(73354),d=n(65686);const m="Projection may be possible after calling projection.load().";function x(e,t,n,r){e.error(`Failed to project from (wkid:${t.wkid}) to (wkid:${n.wkid}).${r?" ":""}${r}`)}function v(e,t,n,r,o,i){return Z(0,g.xs.fromTypedArray(e),0,g.Xm.fromTypedArray(t),n,g.Xm.fromTypedArray(r),o,g.xs.fromTypedArray(i))?i:null}function w(e,t,n,r,o,i){return Z(1,g.xs.fromTypedArray(e),0,g.Xm.fromTypedArray(t),n,g.Xm.fromTypedArray(r),o,g.xs.fromTypedArray(i))?i:null}function A(e,t,n,r){return(0,f.projectBuffer)(e,t,0,n,r,0)?n:null}function b(e,t,n,r){return(0,f.projectBuffer)(e,t,0,n,r,0)?n:null}function M(e,t,n){return(0,o.Ge)(L,n),(0,y.b)(t,e,L),(0,r.or)(L)&&(0,y.n)(t,t),t}function C(e,t,n){return(0,o.z0)(L,n),(0,d.t)(t,e,L),(0,r.or)(L)&&(0,y.n)(t,t,4),t}function T(e,t,n,r,o,i){if(!Z(0,g.xs.fromTypedArray(e,4*Float32Array.BYTES_PER_ELEMENT),1,g.Xm.fromTypedArray(t),n,g.Xm.fromTypedArray(r),o,g.xs.fromTypedArray(i,4*Float32Array.BYTES_PER_ELEMENT)))return null;for(let t=3;t<e.length;t+=4)i[t]=e[t];return i}function S(e,t,n,r,o,i){if(!Z(1,g.xs.fromTypedArray(e,16),1,g.Xm.fromTypedArray(t),n,g.Xm.fromTypedArray(r),o,g.xs.fromTypedArray(i,16)))return null;for(let t=3;t<e.length;t+=4)i[t]=e[t];return i}function R(e,t,n,r,i){switch((0,c.l)(r,n,B,r),1===e&&(0,s.B8)(B,B),t){case 0:return(0,o.Ge)(i,B);case 1:return(0,o.z0)(i,B)}}function Z(e,t,n,r,o,i,s,a){if(!t)return;const u=r.count;if(function(e){return e.isWGS84||(0,p.x1)(e)||(0,p.q8)(e)||(0,p.KQ)(e)}(o))for(let r=0;r<u;r++)i.getVec(r,U),t.getVec(r,N),(0,l.o)(N,N,R(e,n,U,s,L)),a.setVec(r,N);else for(let o=0;o<u;o++){i.getVec(o,U),t.getVec(o,N);const u=(0,h.jg)(r.get(o,1));let c=Math.cos(u);1===n!=(0===e)&&(c=1/c),R(e,n,U,s,L),0===e?(L[0]*=c,L[1]*=c,L[2]*=c,L[3]*=c,L[4]*=c,L[5]*=c):(L[0]*=c,L[3]*=c,L[6]*=c,L[1]*=c,L[4]*=c,L[7]*=c),(0,l.o)(N,N,L),(0,l.n)(N,N),a.setVec(o,N)}return a}const U=(0,u.vt)(),N=(0,u.vt)(),B=(0,a.vt)(),L=(0,i.vt)()},27615:(e,t,n)=>{n.d(t,{CK:()=>l,Hq:()=>a,MW:()=>u,TE:()=>c,yJ:()=>f});var r=n(38954),o=n(86738),i=n(95696),s=n(18251);function a(e){return null!=e.origin}function l(e){return a(e.vertexSpace)}function u(e,t){if(!a(e))return null;const[n,r,i]=e.origin;return new o.A({x:n,y:r,z:i,spatialReference:t})}function c(e,t){const{x:n,y:r,z:o,spatialReference:a}=e,l=[n,r,o??0];return"local"===(t?.vertexSpace??function(e){return e.isGeographic||e.isWebMercator?"local":"georeferenced"}(a))?new s.A({origin:l}):new i.A({origin:l})}function f(e,t){return e.type===t.type&&(e.origin===t.origin||null!=e.origin&&null!=t.origin&&(0,r.q)(e.origin,t.origin))}},31199:(e,t,n)=>{function r(e,t,n,r){const{loggerTag:o,stride:i}=t;return e.length%i!==0?(r.error(o,`Invalid array length, expected a multiple of ${i}`),new n([])):e}function o(e,t,n,o,i){if(!e)return e;if(e instanceof t)return r(e,o,t,i);for(const s of n)if(e instanceof s)return r(new t(e),o,t,i);if(Array.isArray(e))return r(new t(e),o,t,i);{const r=n.map(e=>`'${e.name}'`);return i.error(`Failed to set property, expected one of ${r}, but got ${e.constructor.name}`),new t([])}}function i(e,t,n){t[n]=function(e){const t=new Array(e.length);for(let n=0;n<e.length;n++)t[n]=e[n];return t}(e)}n.d(t,{B:()=>i,b:()=>o})},35063:(e,t,n)=>{n.d(t,{A:()=>m});var r,o=n(31635),i=n(69540),s=(n(44208),n(21287)),a=n(25482),l=n(10107),u=n(56507),c=(n(87811),n(36005)),f=n(40608),p=n(43937),h=n(66895),g=n(97159);const y=new WeakMap;let d=0,m=class extends((0,i.OU)(a.o)){static{r=this}constructor(e){super(e),this.wrap="repeat"}get url(){return this._get("url")||null}set url(e){this._set("url",e),e&&this._set("data",null)}get data(){return this._get("data")||null}set data(e){this._set("data",e),e&&this._set("url",null)}writeData(e,t,n,r){if(e instanceof HTMLImageElement){const o={type:"image-element",src:(0,g.t)(e.src,r),crossOrigin:e.crossOrigin};t[n]=o}else if(e instanceof HTMLCanvasElement){const r={type:"canvas-element",imageData:x(e.getContext("2d").getImageData(0,0,e.width,e.height))};t[n]=r}else if(e instanceof HTMLVideoElement){const o={type:"video-element",src:(0,g.t)(e.src,r),autoplay:e.autoplay,loop:e.loop,muted:e.muted,crossOrigin:e.crossOrigin,preload:e.preload};t[n]=o}else if(e instanceof ImageData){const r={type:"image-data",imageData:x(e)};t[n]=r}}readData(e){switch(e.type){case"image-element":{const t=new Image;return t.src=e.src,t.crossOrigin=e.crossOrigin,t}case"canvas-element":{const t=v(e.imageData),n=document.createElement("canvas");return n.width=t.width,n.height=t.height,n.getContext("2d").putImageData(t,0,0),n}case"image-data":return v(e.imageData);case"video-element":{const t=document.createElement("video");return t.src=e.src,t.crossOrigin=e.crossOrigin,t.autoplay=e.autoplay,t.loop=e.loop,t.muted=e.muted,t.preload=e.preload,t}default:return}}get transparent(){const{data:e,url:t}=this,n=e=>e?.toLowerCase().endsWith(".png")||e?.toLocaleLowerCase().startsWith("data:image/png;");return e instanceof HTMLCanvasElement?w(e.getContext("2d").getImageData(0,0,e.width,e.height)):e instanceof ImageData?w(e):!(!t||!n(t))||!!(e instanceof HTMLImageElement&&n(e.src))}set transparent(e){this._overrideIfSome("transparent",e)}get contentHash(){const e="string"==typeof this.wrap?this.wrap:"object"==typeof this.wrap?`${this.wrap.horizontal}/${this.wrap.vertical}`:"",t=(t="")=>`d:${t},t:${this.transparent},w:${e}`;return null!=this.url?t(this.url):null!=this.data?this.data instanceof HTMLImageElement||this.data instanceof HTMLVideoElement?t(this.data.src):(y.has(this.data)||y.set(this.data,++d),t(y.get(this.data))):t()}get memoryUsage(){let e=0;if(e+=null!=this.url?this.url.length:0,null!=this.data){const t=this.data;"data"in t?e+=t.data.byteLength:t instanceof HTMLImageElement?e+=t.naturalWidth*t.naturalHeight*3:t instanceof HTMLCanvasElement&&(e+=t.width*t.height*3)}return e}clone(e){const t=(0,h.$N)(e),n=t?.textureMap?.get(this);if(n)return n;const r=super.clone(e);return t?.textureMap?.set(this,r),r}static from(e){return"string"==typeof e?new r({url:e}):e instanceof HTMLImageElement||e instanceof HTMLCanvasElement||e instanceof ImageData||e instanceof HTMLVideoElement?new r({data:e}):(0,u.PZ)(r,e)}};function x(e){let t="";for(let n=0;n<e.data.length;n++)t+=String.fromCharCode(e.data[n]);return{data:btoa(t),width:e.width,height:e.height}}function v(e){const t=atob(e.data),n=new Uint8ClampedArray(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return(0,s.eV)(n,e.width,e.height)}function w(e){for(let t=3;t<e.data.length;t+=4)if(255!==e.data[t])return!0;return!1}(0,o.Cg)([(0,l.MZ)({type:String,json:{write:g.w}})],m.prototype,"url",null),(0,o.Cg)([(0,l.MZ)({clonable:"reference",json:{write:{overridePolicy(){return{enabled:!this.url}}}}})],m.prototype,"data",null),(0,o.Cg)([(0,p.K)("data")],m.prototype,"writeData",null),(0,o.Cg)([(0,c.w)("data")],m.prototype,"readData",null),(0,o.Cg)([(0,l.MZ)({type:Boolean,json:{write:{overridePolicy(){return{enabled:this._isOverridden("transparent")}}}}})],m.prototype,"transparent",null),(0,o.Cg)([(0,l.MZ)({json:{write:!0}})],m.prototype,"wrap",void 0),(0,o.Cg)([(0,l.MZ)({readOnly:!0})],m.prototype,"contentHash",null),m=r=(0,o.Cg)([(0,f.$)("esri.geometry.support.MeshTexture")],m)},40036:(e,t,n)=>{n.d(t,{default:()=>Ke});var r=n(31635),o=n(69540),i=n(49186),s=n(92474),a=n(53966),l=n(61893),u=n(74887),c=n(36708),f=n(10107),p=(n(44208),n(87811),n(40608)),h=n(51850),g=n(91075),y=n(86738),d=n(39829),m=n(70328),x=n(24770),v=n(16939);const w="Expected location to be a Point instance";class A extends i.A{constructor(){super("invalid-input:location",w)}}var b=n(95696),M=n(18251),C=n(73836),T=n(1193),S=n(27615),R=n(83349),Z=n(95108),U=n(4197),N=n(97146),B=n(34727),L=n(83047),F=n(38954),j=n(27921);function O(e,t,n){const r=function(e,t,n,r){const o=(e=>!Array.isArray(e[0]))(t)?(e,n)=>t[3*e+n]:(e,n)=>t[e][n],i=r?(0,L.GA)(r)/(0,L.G9)(r):1;return(0,j.lU)(e,(e,t)=>(0,F.i)(e,o(t,0)*i,o(t,1)*i,o(t,2)),n)}(E,e,t,n)?(0,j.Qj)(E):[0,0,1];return Math.abs(r[2])>Math.cos((0,B.kU)(80))?2:Math.abs(r[1])>Math.abs(r[0])?1:0}const E=(0,j.vt)();var _=n(9318);function $(e,t,n,r){const o=e.length,i=new Array(o),s=new Array(o),a=new Array(o);let l=0;for(let t=0;t<o;++t)l+=e[t].length;let u=0,c=0,f=0;const p=(0,U.jh)(3*l);let h=0;for(let l=o-1;l>=0;l--){const g=e[l],y=1===n&&z(g,t,r);if(y&&1!==o)i[u++]=g;else{let e=g.length;for(let t=0;t<u;++t)e+=i[t].length;const n={index:h,pathLengths:new Array(u+1),count:e,holeIndices:new Array(u)};n.pathLengths[0]=g.length,g.length>0&&(a[f++]={index:h,count:g.length}),h=y?P(g,g.length-1,-1,p,h,g.length,t):P(g,0,1,p,h,g.length,t);for(let e=0;e<u;++e){const r=i[e];n.holeIndices[e]=h,n.pathLengths[e+1]=r.length,r.length>0&&(a[f++]={index:h,count:r.length}),h=P(r,0,1,p,h,r.length,t)}u=0,n.count>0&&(s[c++]=n)}}for(let e=0;e<u;++e){const n=i[e];n.length>0&&(a[f++]={index:h,count:n.length}),h=P(n,0,1,p,h,n.length,t)}return s.length=c,a.length=f,{position:p,polygons:s,outlines:a}}function P(e,t,n,r,o,i,s){o*=3;for(let a=0;a<i;++a){const i=e[t];r[o++]=i[0],r[o++]=i[1],r[o++]=s&&i[2]?i[2]:0,t+=n}return o/3}function z(e,t,n){if(!t)return!(0,Z.$3)(e);switch(O(e,e.length-1,n)){case 0:return!(0,Z.$3)(e,1,2);case 1:return!(0,Z.$3)(e,0,2);case 2:return!(0,Z.$3)(e,0,1)}}var I=n(65806),H=n(51447);function D(e,t,n,r){if(void 0!==r){(0,H.io)(e(),"option: geographic",{replacement:"Use mesh `vertexSpace` and spatial reference to control how operations are performed instead.",version:"4.30",warnOnce:!0});const o="local"===t.type;if(!(0,S.Hq)(t)||r===o)return n.isGeographic||n.isWebMercator&&r;e().warnOnce(`Specifying the 'geographic' parameter (${r}) for a Mesh vertex space of type "${t.type}" is not supported. This parameter will be ignored.`)}switch(t.type){case"georeferenced":return n.isGeographic;case"local":return n.isGeographic||n.isWebMercator}}var k=n(22141),q=n(72258);const G=()=>a.A.getLogger("esri.geometry.support.meshUtils.centerAt");const V=(0,h.vt)(),W=(0,h.vt)(),K=(0,h.vt)();var X=n(9093),Y=n(5443),J=n(91218),Q=n(98764),ee=n(48353),te=n(9762),ne=n(73354);const re=(0,X.vt)(),oe=(0,U.jh)(24);var ie=n(21818),se=n(84952);function ae(e){const t=(0,se.nM)(e.url);return n=>{const r=(0,se.V1)(n,t,t),o=r?r.replace(/^ *\.\//,""):null;return(o?e.files.get(o):null)??n}}function le(e){return ye.fromBlob(e,de(e.name,e.type))}const ue=/^model\/gltf\+json$/,ce=/^model\/gltf-binary$/,fe=/\.gltf$/i,pe=/\.glb$/i;function he({mimeType:e,source:t,name:n}){return ue.test(e)||fe.test(n)?{url:t.url,type:"gltf"}:ce.test(e)||pe.test(n)?{url:t.url,type:"glb"}:null}function ge(e){const t=new Map;let n=null,r=null;for(const o of e){const{source:e,name:i}=o;n??=he(o),"ESRI3DO_NORM.glb"===i&&(r=he(o)),t.set(i,e.url),e.files.forEach((e,n)=>t.set(n,e))}const o=r??n;if(null==o)throw new i.A("mesh-load-external:missing-files","Missing files to load external mesh source");return new ye(o.url,()=>e.forEach(({source:e})=>e.dispose()),t,o.type)}class ye{constructor(e,t=()=>{},n=new Map,r){this.url=e,this.dispose=t,this.files=n,this.type=r}static fromBlob(e,t){const n=URL.createObjectURL(e);return new ye(n,()=>URL.revokeObjectURL(n),void 0,t)}}function de(e,t){return ue.test(t)||fe.test(e)?"gltf":ce.test(t)||fe.test(e)?"glb":void 0}var me=n(66895),xe=n(7762),ve=n(63579);let we=class extends o.Pw{constructor(e){super(e),this.externalSources=new xe.A,this._explicitDisplaySource=null,this.georeferenced=!1,this.addHandles((0,c.on)(()=>this.externalSources,"after-remove",({item:e})=>{e===this._explicitDisplaySource&&(this._explicitDisplaySource=null)},{sync:!0,onListenerRemove:()=>this._explicitDisplaySource=null}))}get displaySource(){return this._explicitDisplaySource??this._implicitDisplaySource}set displaySource(e){if(null!=e&&!(0,ve.yr)(e))throw new Error("Cannot use this source for display: it is not in a supported format.");this._explicitDisplaySource=e,e&&this.externalSources.every(t=>!(0,ve.in)(t,e))&&this.externalSources.add(e)}clearSources(){this.externalSources.removeAll()}getExternalSourcesOnService(e){return this.externalSources.items.filter(t=>(0,ve.eN)(t,e))}get _implicitDisplaySource(){return this.externalSources.find(ve.yr)}};(0,r.Cg)([(0,f.MZ)()],we.prototype,"externalSources",void 0),(0,r.Cg)([(0,f.MZ)()],we.prototype,"displaySource",null),(0,r.Cg)([(0,f.MZ)()],we.prototype,"_implicitDisplaySource",null),(0,r.Cg)([(0,f.MZ)()],we.prototype,"_explicitDisplaySource",void 0),(0,r.Cg)([(0,f.MZ)()],we.prototype,"georeferenced",void 0),we=(0,r.Cg)([(0,p.$)("esri.geometry.support.meshUtils.Metadata")],we);var Ae=n(29242);const be={position:[-.5,-.5,0,.5,-.5,0,.5,.5,0,-.5,.5,0],normal:[0,0,1,0,0,1,0,0,1,0,0,1],uv:[0,1,1,1,1,0,0,0],faces:[0,1,2,0,2,3],facingAxisOrderSwap:{east:[3,1,2],west:[-3,-1,2],north:[-1,3,2],south:[1,-3,2],up:[1,2,3],down:[1,-2,-3]}};function Me(e,t,n){e.isPlane||function(e){for(let t=0;t<e.position.length;t+=3)e.position[t+2]+=.5}(e),function(e,t){if(null!=t){Re[0]=t[0],Re[4]=t[1],Re[8]=t[2];for(let t=0;t<e.position.length;t+=3){for(let n=0;n<3;n++)Se[n]=e.position[t+n];(0,F.o)(Se,Se,Re);for(let n=0;n<3;n++)e.position[t+n]=Se[n]}if(t[0]!==t[1]||t[1]!==t[2]){Re[0]=1/t[0],Re[4]=1/t[1],Re[8]=1/t[2];for(let t=0;t<e.normal.length;t+=3){for(let n=0;n<3;n++)Se[n]=e.normal[t+n];(0,F.o)(Se,Se,Re),(0,F.n)(Se,Se);for(let n=0;n<3;n++)e.normal[t+n]=Se[n]}}}}(e,function(e,t,n){const r=(0,q.xK)(t,n);if(null==e&&1===r)return null;if(null==e)return[r,r,r];if("number"==typeof e){const t=e*r;return[t,t,t]}return[null!=e.width?e.width*r:r,null!=e.depth?e.depth*r:r,null!=e.height?e.height*r:r]}(n?.size,n?.unit,t.spatialReference));const r=(0,S.TE)(t,n),o=t.spatialReference.isGeographic?(0,S.TE)(t):r,i=(0,q.UR)({vertexAttributes:e,vertexSpace:o,spatialReference:t.spatialReference},r,{allowBufferReuse:!0});return{vertexAttributes:new T.H({...i,uv:e.uv}),vertexSpace:r,components:[new v.A({faces:e.faces,material:n?.material||null})],spatialReference:t.spatialReference}}const Ce={faceDescriptions:[{axis:[0,-1,0],uvOrigin:[0,.625],corners:[[-1,-1],[1,-1],[1,1],[-1,1]]},{axis:[1,0,0],uvOrigin:[.25,.625],corners:[[-1,-1],[1,-1],[1,1],[-1,1]]},{axis:[0,1,0],uvOrigin:[.5,.625],corners:[[1,-1],[-1,-1],[-1,1],[1,1]]},{axis:[-1,0,0],uvOrigin:[.75,.625],corners:[[1,-1],[-1,-1],[-1,1],[1,1]]},{axis:[0,0,1],uvOrigin:[0,.375],corners:[[-1,-1],[1,-1],[1,1],[-1,1]]},{axis:[0,0,-1],uvOrigin:[0,.875],corners:[[-1,1],[1,1],[1,-1],[-1,-1]]}],uvScales:[[0,0],[1,0],[1,1],[0,1]],faceVertexOffsets:[0,1,2,0,2,3]},Te={south:0,east:1,north:2,west:3,up:4,down:5},Se=(0,h.vt)(),Re=(0,Ae.vt)();var Ze=n(77690),Ue=n(58083),Ne=n(67026),Be=n(82534);const Le=()=>a.A.getLogger("esri.geometry.support.meshUtils.rotate");function Fe(e,t,n,r=h.uY){if(null!=e){(0,Ue.$0)(_e,(0,x.$I)(t),(0,x.yo)(t));for(let t=0;t<e.length;t+=n){for(let n=0;n<3;n++)je[n]=e[t+n]-r[n];(0,F.t)(je,je,_e);for(let n=0;n<3;n++)e[t+n]=je[n]+r[n]}}}const je=(0,h.vt)(),Oe=(0,X.vt)(),Ee=(0,x.vt)(),_e=(0,X.vt)(),$e=(0,Ae.vt)(),Pe=(0,h.vt)(),ze=(0,Be.vt)(),Ie=()=>a.A.getLogger("esri.geometry.support.meshUtils.scale");function He(e,t,n=h.uY){if(e)for(let r=0;r<e.length;r+=3){for(let t=0;t<3;t++)De[t]=e[r+t]-n[t];(0,F.g)(De,De,t);for(let t=0;t<3;t++)e[r+t]=De[t]+n[t]}}const De=(0,h.vt)(),ke=(0,h.vt)(),qe=(0,X.vt)(),Ge=(0,h.vt)();var Ve;const We={base:null,key:"type",defaultKeyValue:"georeferenced",typeMap:{georeferenced:b.A,local:M.A}};let Ke=Ve=class extends((0,o.OU)((0,s.WV)((0,l.g)(g.A)))){constructor(e){super(e),this.components=null,this.vertexSpace=new b.A,this.transform=null,this.metadata=new we,this.hasZ=!0,this.hasM=!1,this.vertexAttributes=new T.H,this.type="mesh"}initialize(){(0===this.metadata.externalSources.length||this.vertexAttributes.position.length)&&(this.loadStatus="loaded"),this.when(()=>{this.addHandles((0,c.wB)(()=>({vertexAttributes:this.vertexAttributes,components:this.components?.map(e=>e.clone())}),()=>this._clearSources(),{once:!0,sync:!0}))})}get hasExtent(){return this.loaded?this.vertexAttributes.position.length>0&&(!this.components||this.components.length>0):null!=this.metadata.displaySource?.extent}get _transformedExtent(){const{spatialReference:e,vertexSpace:t}=this,n=this;return function(e){const{spatialReference:t,vertexSpace:n,untransformedBounds:r}=e,o=(0,m.gE)(r,oe);if((0,S.Hq)(n)&&e.transform&&(0,ne.t)(o,o,e.transform.localMatrix),"georeferenced"===n.type){const e=n.origin;return e&&(0,ne.a)(o,o,e),(0,m.w1)((0,m.vY)(o),t)}const i=(0,Q.lO)(t),s=n.origin;if(!(0,J.canProjectWithoutEngine)(i,t)){const[e,n,r]=s;return new Y.A({xmin:e,ymin:n,zmin:r,xmax:e,ymax:n,zmax:r,spatialReference:t})}return(0,ee.l)(t,s,re,i),(0,ne.t)(o,o,re),(0,te.projectBuffer)(o,i,0,o,t,0),(0,m.w1)((0,m.vY)(o),t)}({get transform(){return n.transform},vertexSpace:t,spatialReference:e,untransformedBounds:this._untransformedBounds})}get _untransformedBounds(){const{vertexAttributes:{position:e},components:t}=this;return 0===e.length||0===t?.length?(0,m.vt)(m.v_):(0,m.vY)(e)}get origin(){const e=(0,S.MW)(this.vertexSpace,this.spatialReference);if(null!=e)return e;const{center:t,zmin:n}=this._transformedExtent;return new y.A({x:t.x,y:t.y,z:n,spatialReference:this.spatialReference})}get extent(){return this.loaded||null==this.metadata?.displaySource?.extent?this._transformedExtent:this.metadata.displaySource.extent.clone()}addComponent(e){this._checkIfLoaded("addComponent()")&&(this.components||(this.components=[]),this.components.push(v.A.from(e)),this.notifyChange("components"))}removeComponent(e){if(this._checkIfLoaded("removeComponent()")){if(this.components){const t=this.components.indexOf(e);if(-1!==t)return this.components.splice(t,1),void this.notifyChange("components")}a.A.getLogger(this).error("removeComponent()","Provided component is not part of the list of components")}}rotate(e,t,n,r){return(0,x.AU)(e,t,n,Xe),function(e,t,n){if(!e.vertexAttributes?.position||0===t[3])return;const{spatialReference:r,vertexSpace:o}=e,i=n?.origin??e.origin,s=n?.geographic,a=D(Le,o,r,s);(0,S.CK)(e)?function(e,t,n){e.transform??=new C.A;const{vertexSpace:r,transform:o,spatialReference:i}=e,[s,a,l]=r.origin,u=new y.A({x:s,y:a,z:l,spatialReference:i}),c=je;if(u.equals(n))(0,F.i)(c,0,0,0);else if(!(0,q.p5)(c,n,e))return void(0,k.CN)(Le(),n.spatialReference,i,k.JP);(0,Ne.x8)(ze,(0,x.yo)(t),(0,x.$I)(t));const f=(0,Ue.O7)(Oe,ze,h.uY,h.Un,c),{localMatrix:p}=o,g=(0,Ue.lw)(Oe,f,p);o.scale=(0,Ue.X_)((0,h.vt)(),g),(0,Ue.hs)(g,g,(0,F.r)(je,o.scale));const d=o.rotationAxis;o.rotation=(0,x.ui)(g),0===o.rotationAngle&&(o.rotationAxis=d),o.translation=(0,Ue.sC)((0,h.vt)(),g)}(e,t,i):a?function(e,t,n){const r=e.spatialReference,o=(0,Q.lO)(r),i=Pe;if(!(0,I.g)(n,i,o)&&((0,k.CN)(Le(),n.spatialReference,o,"Falling back to mesh origin"),!(0,I.g)(e.origin,i,o)))return void(0,k.CN)(Le(),e.origin.spatialReference,o);const s=e.vertexAttributes.position,a=e.vertexAttributes.normal,l=e.vertexAttributes.tangent,u=new Float64Array(s.length),c=null!=a?new Float32Array(a.length):null,f=null!=l?new Float32Array(l.length):null;(0,ee.l)(o,i,_e,o),(0,Ze.z0)($e,_e);const p=Ee;(0,F.o)((0,x.yo)(Ee),(0,x.yo)(t),$e),p[3]=t[3],!(0,k.gr)(s,r,u,o)||null!=a&&null!=c&&!(0,k.X4)(a,s,r,u,o,c)||null!=l&&null!=f&&!(0,k.xA)(l,s,r,u,o,f)?(0,k.CN)(Le(),r,o):(Fe(u,p,3,i),!(0,k.$5)(u,o,s,r)||null!=a&&null!=c&&(Fe(c,p,3),!(0,k.si)(c,s,r,u,o,a))||null!=l&&null!=f&&(Fe(f,p,4),!(0,k.Mv)(f,s,r,u,o,l))?(0,k.CN)(Le(),o,r):e.vertexAttributesChanged())}(e,t,i):function(e,t,n){const r=Pe;if(!(0,I.g)(n,r,e.spatialReference)){const t=e.origin;return r[0]=t.x,r[1]=t.y,r[2]=t.z,void(0,k.CN)(Le(),n.spatialReference,e.spatialReference,k.JP)}Fe(e.vertexAttributes.position,t,3,r),Fe(e.vertexAttributes.normal,t,3),Fe(e.vertexAttributes.tangent,t,4),e.vertexAttributesChanged()}(e,t,i)}(this,Xe,r),this}offset(e,t,n){if(!this._checkIfLoaded("offset()"))return this;const{vertexSpace:r,vertexAttributes:o}=this,i=o?.position;if(!i)return this;if((0,S.Hq)(r)){const[o,i,s]=r.origin;r.origin=(0,h.fA)(o+e,i+t,s+n)}else{for(let r=0;r<i.length;r+=3)i[r]+=e,i[r+1]+=t,i[r+2]+=n;this.vertexAttributesChanged()}return this}scale(e,t){return this._checkIfLoaded("scale()")?(function(e,t,n){if(!e.vertexAttributes?.position)return;const{vertexSpace:r,spatialReference:o}=e,i=n?.origin??e.origin,s=n?.geographic,a=D(Ie,r,o,s);(0,S.CK)(e)?function(e,t,n){e.transform??=new C.A;const{vertexSpace:r,transform:o,spatialReference:i}=e,[s,a,l]=r.origin,u=new y.A({x:s,y:a,z:l,spatialReference:i}),c=De;if(u.equals(n))(0,F.i)(c,0,0,0);else if(!(0,q.p5)(c,n,e))return void(0,k.CN)(Ie(),n.spatialReference,i,k.JP);const f=(0,F.i)(ke,t,t,t),p=(0,Ue.O7)(qe,Be.zK,h.uY,f,c),{localMatrix:g}=o,d=(0,Ue.lw)(qe,p,g);o.scale=(0,Ue.X_)((0,h.vt)(),d),(0,Ue.hs)(d,d,(0,F.r)(De,o.scale));const m=o.rotationAxis;o.rotation=(0,x.ui)(d),0===o.rotationAngle&&(o.rotationAxis=m),o.translation=(0,Ue.sC)((0,h.vt)(),d)}(e,t,i):a?function(e,t,n){const r=e.spatialReference,o=(0,Q.lO)(r),i=Ge;if(!(0,I.g)(n,i,o)&&((0,k.CN)(Ie(),n.spatialReference,o,"Falling back to mesh origin"),!(0,I.g)(e.origin,i,o)))return void(0,k.CN)(Ie(),e.origin.spatialReference,o);const s=e.vertexAttributes.position,a=e.vertexAttributes.normal,l=e.vertexAttributes.tangent,u=new Float64Array(s.length),c=null!=a?new Float32Array(a.length):null,f=null!=l?new Float32Array(l.length):null;!(0,k.gr)(s,r,u,o)||null!=a&&null!=c&&!(0,k.X4)(a,s,r,u,o,c)||null!=l&&null!=f&&!(0,k.xA)(l,s,r,u,o,f)?(0,k.CN)(Ie(),r,o):(He(u,t,i),!(0,k.$5)(u,o,s,r)||null!=a&&null!=c&&!(0,k.si)(c,s,r,u,o,a)||null!=l&&null!=f&&!(0,k.Mv)(f,s,r,u,o,l)?(0,k.CN)(Ie(),o,r):e.vertexAttributesChanged())}(e,t,i):function(e,t,n){const r=Ge;if(!(0,I.g)(n,r,e.spatialReference)){const t=e.origin;return r[0]=t.x,r[1]=t.y,r[2]=t.z,void(0,k.CN)(Ie(),n.spatialReference,e.spatialReference,k.JP)}He(e.vertexAttributes.position,t,r),e.vertexAttributesChanged()}(e,t,i)}(this,e,t),this):this}centerAt(e,t){return this._checkIfLoaded("centerAt()")?(function(e,t,n){if(!e.vertexAttributes?.position)return;const{vertexSpace:r}=e,o=n?.origin??e.origin,i=D(G,r,o.spatialReference,n?.geographic);(0,S.Hq)(r)?function(e,t,n){const{vertexSpace:r}=e;if(!(0,S.Hq)(r))return;const o=W,i=V;if(!(0,I.g)(t,i,e.spatialReference))return void(0,k.CN)(G(),t.spatialReference,e.spatialReference,k.JP);if(!(0,I.g)(n,o,e.spatialReference)){const t=e.origin;return o[0]=t.x,o[1]=t.y,o[2]=t.z,void(0,k.CN)(G(),n.spatialReference,e.spatialReference,k.JP)}const s=(0,F.d)(K,i,o);r.origin=(0,F.f)((0,h.vt)(),r.origin,s)}(e,t,o):i?function(e,t,n){const r=(0,h.fA)(n.x,n.y,n.z??0),o=(0,q.UR)(e,new M.A({origin:r}));if(!o)return;const i=(0,h.fA)(t.x,t.y,t.z??0),s=(0,q.UR)({vertexAttributes:o,spatialReference:e.spatialReference,vertexSpace:new M.A({origin:i})},b.A.absolute);if(!s)return;const{position:a,normal:l,tangent:u}=s;e.vertexAttributes.position=a,e.vertexAttributes.normal=l,e.vertexAttributes.tangent=u,e.vertexAttributesChanged()}(e,t,o):function(e,t,n){const r=W,o=V;if((0,I.g)(t,o,e.spatialReference)){if(!(0,I.g)(n,r,e.spatialReference)){const t=e.origin;return r[0]=t.x,r[1]=t.y,r[2]=t.z,void(0,k.CN)(G(),n.spatialReference,e.spatialReference,k.JP)}(function(e,t,n){if(e)for(let r=0;r<e.length;r+=3)for(let o=0;o<3;o++)e[r+o]+=t[o]-n[o]})(e.vertexAttributes.position,o,r),e.vertexAttributesChanged()}else(0,k.CN)(G(),t.spatialReference,e.spatialReference,k.JP)}(e,t,o)}(this,e,t),this):this}load(e){const{metadata:{displaySource:t}}=this;return t&&this.addResolvingPromise(async function(e,t,r){switch(t.source.type){case"client":case"service":return async function(e,t,r){const{source:o}=t,{loadGLTFMesh:s}=await(0,u.qr)(n.e(7375).then(n.bind(n,97375)),r),a=await async function(e,t){switch(e.type){case"client":return Array.isArray(e.files)?function(e){if(!e.length)throw new i.A("mesh-load-external:missing-assets","There must be at least one file to load");return ge(e.map(e=>({name:e.name,mimeType:e.type,source:le(e)})))}(e.files):le(e.files);case"service":return async function(e,t){if(!e.length)throw new i.A("mesh-load-external:missing-assets","There must be at least one file to load");const n=await(0,u.nA)(e.map(async e=>{const n=await async function(e,t){const{parts:n,assetMimeType:r,assetName:o}=e;if(1===n.length)return new ye(n[0].partUrl);const i=await e.toBlob(t);return(0,u.Te)(t),ye.fromBlob(i,de(o,r))}(e);return(0,u.Te)(t),{name:e.assetName,mimeType:e.assetMimeType,source:n}}));if((0,u.G4)(t))throw n.forEach(e=>e.source.dispose()),(0,u.NK)();return ge(n)}(e.assets,t);default:throw new i.A("mesh-load-external:invalid-source","Invalid source type")}}(o,r);(0,u.Te)(r);const l=s(new y.A({x:0,y:0,z:0,spatialReference:e.spatialReference}),a.url,{resolveFile:ae(a),signal:r?.signal,expectedType:a.type,unitConversionDisabled:t.unitConversionDisabled});l.then(()=>a.dispose(),()=>a.dispose());const{vertexAttributes:c,components:f}=await l;e.vertexAttributes=c,e.components=f}(e,t,r);case"loadable":return t.source.load(e,r);default:(0,ie.Xb)(t.source)}}(this,t,e)),Promise.resolve(this)}addExternalSources(e){this.metadata.externalSources.addMany(e)}updateDisplaySource(e){this.metadata.displaySource=e}clone(e){return super.clone((0,me.WO)((0,me.QN)(e)))}cloneShallow(){return new Ve({components:this.components,spatialReference:this.spatialReference,vertexAttributes:this.vertexAttributes,vertexSpace:this.vertexSpace.clone(),transform:this.transform,metadata:this.metadata})}vertexAttributesChanged(){this.notifyChange("vertexAttributes")}async toBinaryGLTF(e){const[{toBinaryGLTF:t}]=await Promise.all([n.e(4038).then(n.bind(n,84038)),this.load(e)]);return(0,u.Te)(e),await t(this,e)}get usedMemory(){return this.components?this.components.reduce((e,t)=>e+t.memoryUsage,this.vertexAttributes.usedMemory):this.vertexAttributes.usedMemory}_clearSources(){this.metadata.clearSources()}_checkIfLoaded(e){return!!this.loaded||(a.A.getLogger(this).error(e,"Mesh must be loaded before applying operations"),!1)}static createBox(e,t){if(!(e instanceof y.A))return a.A.getLogger(this.prototype).error(".createBox()",w),null;const n=new Ve(Me(function(){const{faceDescriptions:e,faceVertexOffsets:t,uvScales:n}=Ce,r=4*e.length,o=new Float64Array(3*r),i=new Float32Array(3*r),s=new Float32Array(2*r),a=new Uint32Array(2*e.length*3);let l=0,u=0,c=0,f=0;for(let r=0;r<e.length;r++){const p=e[r],h=l/3;for(const e of t)a[f++]=h+e;const g=p.corners;for(let e=0;e<4;e++){const t=g[e];let r=0;s[c++]=.25*n[e][0]+p.uvOrigin[0],s[c++]=p.uvOrigin[1]-.25*n[e][1];for(let e=0;e<3;e++)0!==p.axis[e]?(o[l++]=.5*p.axis[e],i[u++]=p.axis[e]):(o[l++]=.5*t[r++],i[u++]=0)}}return{position:o,normal:i,uv:s,faces:a}}(),e,t));return t?.imageFace&&"all"!==t.imageFace?function(e,t){const n=e.components[0],r=n.faces,o=Te[t],i=6*o,s=new Array(6),a=new Array(r.length-6);let l=0,u=0;for(let e=0;e<r.length;e++)e>=i&&e<i+6?s[l++]=r[e]:a[u++]=r[e];if(null!=e.vertexAttributes.uv){const t=new Float32Array(e.vertexAttributes.uv),n=4*o*2,r=[0,1,1,1,1,0,0,0];for(let e=0;e<r.length;e++)t[n+e]=r[e];e.vertexAttributes.uv=t}return e.components=[new v.A({faces:s,material:n.material}),new v.A({faces:a})],e}(n,t.imageFace):n}static createSphere(e,t){return e instanceof y.A?new Ve(Me(function(e=0){const t=Math.round(8*2**e),n=2*t,r=(t-1)*(n+1)+2*n,o=new Float64Array(3*r),i=new Float32Array(3*r),s=new Float32Array(2*r),a=new Uint32Array((t-1)*n*2*3);let l=0,u=0,c=0,f=0;for(let e=0;e<=t;e++){const r=e/t*Math.PI+.5*Math.PI,p=Math.cos(r),h=Math.sin(r);Se[2]=h;const g=0===e||e===t,y=g?n-1:n;for(let r=0;r<=y;r++){const h=r/y*2*Math.PI;Se[0]=-Math.sin(h)*p,Se[1]=Math.cos(h)*p;for(let e=0;e<3;e++)o[l]=.5*Se[e],i[l]=Se[e],++l;s[u++]=(r+(g?.5:0))/n,s[u++]=e/t,0!==e&&r!==n&&(e!==t&&(a[c++]=f,a[c++]=f+1,a[c++]=f-n),1!==e&&(a[c++]=f,a[c++]=f-n,a[c++]=f-n-1)),f++}}return{position:o,normal:i,uv:s,faces:a}}(t?.densificationFactor||0),e,t)):(a.A.getLogger(this.prototype).error(".createSphere()",w),null)}static createCylinder(e,t){return e instanceof y.A?new Ve(Me(function(e=0){const t=Math.round(16*2**e),n=4*(t+1)+2*t,r=new Float64Array(3*n),o=new Float32Array(3*n),i=new Float32Array(2*n),s=new Uint32Array(4*t*3);let a=0,l=0,u=0,c=0,f=0;for(let e=0;e<=5;e++){const n=0===e||5===e,p=e<=1||e>=4,h=2===e||4===e,g=n?t-1:t;for(let y=0;y<=g;y++){const d=y/g*2*Math.PI,m=n?0:.5;Se[0]=m*Math.sin(d),Se[1]=m*-Math.cos(d),Se[2]=e<=2?.5:-.5;for(let t=0;t<3;t++)r[a++]=Se[t],o[l++]=p?2===t?e<=1?1:-1:0:2===t?0:Se[t]/m;i[u++]=(y+(n?.5:0))/t,i[u++]=e<=1?1*e/3:e<=3?1*(e-2)/3+1/3:1*(e-4)/3+2/3,h||0===e||y===t||(5!==e&&(s[c++]=f,s[c++]=f+1,s[c++]=f-t),1!==e&&(s[c++]=f,s[c++]=f-t,s[c++]=f-t-1)),f++}}return{position:r,normal:o,uv:i,faces:s}}(t?.densificationFactor||0),e,t)):(a.A.getLogger(this.prototype).error(".createCylinder()",w),null)}static createPlane(e,t){if(!(e instanceof y.A))return a.A.getLogger(this.prototype).error(".createPlane()",w),null;const n=t?.facing??"up",r=function(e,t){const n="number"==typeof t?t:null!=t?t.width:1,r="number"==typeof t?t:null!=t?t.height:1;switch(e){case"up":case"down":return{width:n,depth:r};case"north":case"south":return{width:n,height:r};case"east":case"west":return{depth:n,height:r}}}(n,t?.size);return new Ve(Me(function(e){const t=be.facingAxisOrderSwap[e],n=be.position,r=be.normal,o=new Float64Array(n.length),i=new Float32Array(r.length);let s=0;for(let e=0;e<4;e++){const e=s;for(let a=0;a<3;a++){const l=t[a],u=Math.abs(l)-1,c=l>=0?1:-1;o[s]=n[e+u]*c,i[s]=r[e+u]*c,s++}}return{position:o,normal:i,uv:new Float32Array(be.uv),faces:new Uint32Array(be.faces),isPlane:!0}}(n),e,{...t,size:r}))}static createFromPolygon(e,t){if(!(e instanceof d.A))return a.A.getLogger(this.prototype).error(".createFromPolygon()","Expected polygon to be a Polygon instance"),null;const n=function(e){const t=$(e.rings,e.hasZ,1,e.spatialReference),n=new Array;let r=0,o=0;for(const e of t.polygons){const i=e.count,s=e.index,a=(0,U.l5)(t.position,3*s,3*i),l=e.holeIndices.map(e=>e-s),u=(0,N.uW)((0,R.e)(a,l,3));n.push({position:a,faces:u}),r+=a.length,o+=u.length}const i=function(e,t,n){if(1===e.length)return e[0];const r=(0,U.jh)(t),o=new Array(n);let i=0,s=0,a=0;for(const t of e){for(let e=0;e<t.position.length;e++)r[i++]=t.position[e];for(const e of t.faces)o[s++]=e+a;a=i/3}return{position:r,faces:(0,N.uW)(o)}}(n,r,o),s=Array.isArray(i.position)?(0,_.b)(i.position,3,{originalIndices:i.faces}):(0,_.b)(i.position.buffer,6,{originalIndices:i.faces});return i.position=(0,U.xm)(new Float64Array(s.buffer)),i.faces=s.indices,i}(e);return new Ve({vertexAttributes:new T.H({position:n.position}),components:[new v.A({faces:n.faces,shading:"flat",material:t?.material??null})],spatialReference:e.spatialReference,vertexSpace:new b.A})}static async createFromGLTF(e,t,r){if(!(e instanceof y.A)){const e=new A;throw a.A.getLogger(this.prototype).error(".createfromGLTF()",e.message),e}const{loadGLTFMesh:o}=await(0,u.qr)(n.e(7375).then(n.bind(n,97375)),r);return new Ve(await o(e,t,r))}static createWithExternalSource(e,t,n){const r=n?.extent??null,{spatialReference:o}=e,i=n?.transform?.clone()??new C.A,s=(0,S.TE)(e,n),a=n?.unitConversionDisabled,l={source:t,extent:r,unitConversionDisabled:a},u=new we;return u.externalSources.push(l),new Ve({metadata:u,transform:i,vertexSpace:s,spatialReference:o})}static createIncomplete(e,t){const{spatialReference:n}=e,r=t?.transform?.clone()??new C.A,o=(0,S.TE)(e,t),s=new Ve({transform:r,vertexSpace:o,spatialReference:n});return s.addResolvingPromise(Promise.reject(new i.A("mesh-incomplete","Mesh resources are not complete"))),s}};(0,r.Cg)([(0,f.MZ)({type:[v.A],json:{write:!0}})],Ke.prototype,"components",void 0),(0,r.Cg)([(0,f.MZ)({nonNullable:!0,types:We,constructOnly:!0,json:{write:!0},clonable:(e,t)=>(0,me.o2)(t)?.vertexSpace??e.clone(t)})],Ke.prototype,"vertexSpace",void 0),(0,r.Cg)([(0,f.MZ)({type:C.A,clonable:(e,t)=>{const n=(0,me.o2)(t);return n&&"transform"in n?n.transform:e?.clone()??e},json:{write:!0}})],Ke.prototype,"transform",void 0),(0,r.Cg)([(0,f.MZ)({constructOnly:!0,type:we,clonable:(e,t)=>(0,me.o2)(t)?.metadata??e.clone()})],Ke.prototype,"metadata",void 0),(0,r.Cg)([(0,f.MZ)()],Ke.prototype,"hasExtent",null),(0,r.Cg)([(0,f.MZ)()],Ke.prototype,"_transformedExtent",null),(0,r.Cg)([(0,f.MZ)()],Ke.prototype,"_untransformedBounds",null),(0,r.Cg)([(0,f.MZ)()],Ke.prototype,"origin",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Ke.prototype,"extent",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1,write:!0,default:!0}})],Ke.prototype,"hasZ",void 0),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1,write:!0,default:!1}})],Ke.prototype,"hasM",void 0),(0,r.Cg)([(0,f.MZ)({type:T.H,nonNullable:!0,json:{write:!0},clonable:(e,t)=>(0,me.o2)(t)?.vertexAttributes??e.clone(t)})],Ke.prototype,"vertexAttributes",void 0),Ke=Ve=(0,r.Cg)([(0,p.$)("esri.geometry.Mesh")],Ke);const Xe=(0,x.vt)()},51147:(e,t,n)=>{n.d(t,{A:()=>l});var r=n(31635),o=n(69540),i=n(25482),s=n(10107),a=(n(44208),n(53966),n(87811),n(40608));let l=class extends((0,o.OU)(i.o)){constructor(e){super(e),this.offset=[0,0],this.rotation=0,this.scale=[1,1]}};(0,r.Cg)([(0,s.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],l.prototype,"offset",void 0),(0,r.Cg)([(0,s.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],l.prototype,"rotation",void 0),(0,r.Cg)([(0,s.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],l.prototype,"scale",void 0),l=(0,r.Cg)([(0,a.$)("esri.geometry.support.MeshTextureTransform")],l)},63579:(e,t,n)=>{n.d(t,{Bq:()=>l,Qp:()=>a,WN:()=>d,dK:()=>m,eN:()=>h,fH:()=>y,in:()=>g,yr:()=>u});var r=n(78888),o=n(4576),i=(n(44208),n(74887)),s=n(20557);class a{constructor(e,t,n){this.assetName=e,this.assetMimeType=t,this.parts=n}equals(e){return this===e||this.assetName===e.assetName&&this.assetMimeType===e.assetMimeType&&(0,o.aI)(this.parts,e.parts,(e,t)=>e.equals(t))}isOnService(e){return this.parts.every(t=>t.isOnService(e))}makeHash(){let e="";for(const t of this.parts)e+=t.partHash;return e}async toBlob(e){const{parts:t}=this;if(1===t.length)return t[0].toBlob(e);const n=await Promise.all(t.map(t=>t.toBlob(e)));return(0,i.Te)(e),new Blob(n)}}class l{constructor(e,t){this.partUrl=e,this.partHash=t}equals(e){return this===e||this.partUrl===e.partUrl&&this.partHash===e.partHash}isOnService(e){return this.partUrl.startsWith(`${e.path}/assets/`)}async toBlob(e){const{data:t}=await(0,r.A)(this.partUrl,{responseType:"blob"});return(0,i.Te)(e),t}}function u(e){return function(e){switch(e?.type){case"client":return Array.isArray(e.files)?e.files.some(p):p(e.files);case"service":return e.assets.some(p);case"loadable":return!0;default:return!1}}(e?.source)}const c=/^(model\/gltf\+json)|(model\/gltf-binary)$/,f=/\.(gltf|glb)/i;function p(e){if(e instanceof File){const{type:t,name:n}=e;return c.test(t)||f.test(n)}return c.test(e.assetMimeType)||f.test(e.assetName)}function h(e,t){if(!e)return!1;const{source:n}=e;return function(e,t){return"service"===e.type&&e.assets.every(e=>e.isOnService(t))}(n,t)}function g(e,t){if(e===t)return!0;const{source:n}=e,{source:r}=t;if(n===r)return!0;if("service"===n.type&&"service"===r.type){if(n.assets.length!==r.assets.length)return!1;const e=(e,t)=>e.assetName<t.assetName?-1:e.assetName>t.assetName?1:0,t=[...n.assets].sort(e),o=[...r.assets].sort(e);for(let e=0;e<t.length;++e)if(!t[e].equals(o[e]))return!1;return!0}return!1}function y(e,t){return e instanceof File?(0,s.rq)(e,t):(0,s.z$)(e.assetMimeType,e.assetName,t)}function d(e){switch(e.type){case"client":return Array.isArray(e.files)?e.files:[e.files];case"service":return e.assets;case"loadable":return}}function m(e){return!!e.original}},66895:(e,t,n)=>{n.d(t,{$N:()=>c,Lz:()=>i,QN:()=>f,WO:()=>l,hz:()=>a,o2:()=>o});const r=Symbol("meshContext");function o(e){return e&&"object"==typeof e&&r in e?e[r]:void 0}function i(e,t){const n=o(e);return{...e,[r]:{...n,...t}}}const s=Symbol("meshMaterialContext");function a(e){return e&&"object"==typeof e&&s in e?e[s]:void 0}function l(e){const t=a(e);if(t?.materialMap)return e;const n={materialMap:new Map};return{...e,[s]:n}}const u=Symbol("meshTextureContext");function c(e){return e&&"object"==typeof e&&u in e?e[u]:void 0}function f(e){const t=c(e);if(t?.textureMap)return e;const n={textureMap:new Map};return{...e,[u]:n}}},72258:(e,t,n)=>{n.d(t,{UR:()=>A,p5:()=>w,xK:()=>R});var r=n(53966),o=n(34727),i=n(83047),s=n(77690),a=n(29242),l=n(58083),u=n(9093),c=n(38954),f=n(51850),p=n(98764),h=n(48353),g=n(65806),y=n(27615),d=n(21325),m=n(73354),x=n(22141);const v=()=>r.A.getLogger("esri.geometry.support.meshUtils.vertexSpaceConversion");function w(e,t,{vertexSpace:n,spatialReference:r}){if("georeferenced"===n.type){const o=e;if(!(0,g.g)(t,o,r))return!1;const{origin:i}=n;return(0,c.d)(e,o,i),!0}const o=(0,p.lO)(r),i=e;if(!(0,g.g)(t,i,o))return!1;const{origin:s}=n,a=L;if(!(0,h.l)(r,s,a,o))return!1;const u=(0,l.B8)(L,a);return null!=u&&((0,c.t)(e,i,u),!0)}function A(e,t,n){const{vertexSpace:r,transform:o,vertexAttributes:i}=e,a=(0,y.Hq)(r)?o:null,f=T(e.spatialReference,n,3);if((0,y.yJ)(r,t)&&(!a||(0,l.t2)(a.localMatrix,u.zK))&&S(f)){const{position:e,normal:t,tangent:r}=i,o=n?.allowBufferReuse;return{position:o?e:e.slice(),normal:o?t:t?.slice(),tangent:o?r:r?.slice()}}switch(e.vertexSpace.type){case"local":return"local"===t.type?function({vertexAttributes:e,spatialReference:t,transform:n},{origin:r},o,i){const s=b(t,i);if(!(0,h.l)(t,r,Z,s))return(0,x.CN)(v(),t,s),null;if(n&&(0,l.lw)(Z,Z,n.localMatrix),!(0,h.l)(t,o,U,s))return(0,x.CN)(v(),s,t),null;(0,l.B8)(U,U);const a=(0,l.lw)(Z,U,Z);return C(a,t,i,3),M(e,a)}(e,e.vertexSpace,t.origin,n):function({spatialReference:e,vertexAttributes:t,transform:n},{origin:r},o,i){const s=b(e,i);if(!(0,h.l)(e,r,Z,s))return(0,x.CN)(v(),e,s),null;n&&(0,l.lw)(Z,Z,n.localMatrix),C(Z,e,i,1);const a=new Float64Array(t.position.length),u=function(e,t,n,r,o){(0,m.t)(r,e,t);const i=new Float64Array(e.length);return(0,x.$5)(r,o,i,n)?i:((0,x.CN)(v(),o,n),null)}(t.position,Z,e,a,s);if(!u)return null;const f=function(e,t,n,r,o,i){if(null==o)return null;const s=new Float32Array(o.length);return(0,x.qs)(o,s,i),(0,x.si)(s,e,t,n,r,s)?s:((0,x.CN)(v(),r,t),null)}(u,e,a,s,t.normal,Z);if(t.normal&&!f)return null;const p=function(e,t,n,r,o,i){if(null==o)return null;const s=new Float32Array(o.length);return(0,x.KM)(o,s,i),(0,x.Mv)(s,e,t,n,r,s)?s:((0,x.CN)(v(),r,t),null)}(u,e,a,s,t.tangent,Z);if(t.tangent&&!p)return null;if(o){const e=(0,c.u)(B,o);(0,m.a)(u,u,e)}return{position:u,normal:f,tangent:p}}(e,e.vertexSpace,t.origin,n);case"georeferenced":return"local"===t.type?function({vertexAttributes:e,spatialReference:t,transform:n},{origin:r},o,i){const a=b(t,i);if(!(0,h.l)(t,o,Z,a))return(0,x.CN)(v(),t,a),null;const u=1/T(t,i,2);(0,l.hs)(Z,Z,[u,u,u]);const c=(0,l.B8)(U,Z),{position:f,normal:p,tangent:g}=function(e,t,n){if(!t)return e;if(!n){const{position:n,normal:r,tangent:o}=e;return{position:(0,m.a)(new Float64Array(n.length),n,t),tangent:o,normal:r}}const r=M(e,n.localMatrix);return(0,m.a)(r.position,r.position,t),r}(e,r,n),y=new Float64Array(f.length),d=function(e,t,n,r,o){const i=(0,x.gr)(e,t,r,o);if(!i)return(0,x.CN)(v(),t,o),null;const s=new Float64Array(i.length);return(0,m.t)(s,i,n),s}(f,t,c,y,a);if(!d)return null;const w=(0,s.Ge)(N,c),A=function(e,t,n,r,o,i,s){if(null==e)return null;const a=s??new Float32Array(e.length);return(0,x.X4)(e,t,n,r,o,a)?((0,m.b)(a,a,i),a):((0,x.CN)(v(),n,o),null)}(p,f,t,y,a,w,p!==e.normal?p:void 0);if(!A&&p)return null;const C=function(e,t,n,r,o,i,s){if(null==e)return null;const a=s??new Float32Array(e.length);return(0,x.xA)(e,t,n,r,o,a)?((0,m.b)(a,a,i,4),a):((0,x.CN)(v(),n,o),null)}(g,f,t,y,a,w,g!==e.tangent?g:void 0);return!C&&g?null:{position:d,normal:A,tangent:C}}(e,e.vertexSpace,t.origin,n):function({vertexAttributes:e,transform:t,spatialReference:n},{origin:r},o,i){const s=T(n,i,3),a=r||!S(s)?(0,l.C)(Z,t?.localMatrix??u.zK):null;a&&C(a,n,i,3);const{position:f,normal:p,tangent:h}=a?M(e,a):e,g=i?.allowBufferReuse,y=g?f:new Float64Array(f.length);let d=f;if(r&&(d=(0,m.a)(y,d,r)),o){const e=(0,c.u)(B,o);d=(0,m.a)(y,d,e)}return{position:d!==e.position||g?d:d.slice(),normal:p!==e.normal||g?p:p?.slice(),tangent:h!==e.tangent||g?h:h?.slice()}}(e,e.vertexSpace,t.origin,n)}}function b(e,t){return t?.useEllipsoid&&(0,d.B3)(e)?p.Y0:(0,p.lO)(e)}function M(e,t){const n=new Float64Array(e.position.length);(0,m.t)(n,e.position,t);const r=e.normal?new Float32Array(e.normal.length):null,o=e.tangent?new Float32Array(e.tangent.length):null;return r&&e.normal&&(0,x.qs)(e.normal,r,t),o&&e.tangent&&(0,x.KM)(e.tangent,o,t),{position:n,normal:r,tangent:o}}function C(e,t,n,r){const o=T(t,n,r);S(o)||(0,l.hs)(e,e,[o,o,o])}function T(e,t,n){const r=!!(1&n),o=!!(2&n),i=t?.sourceUnit,s=t?.targetUnit;if(!i&&!s)return 1;let a=R(i,e);r||!i||S(a)||(v().warn("source unit conversion not supported"),a=1);let l=1/R(s,e);return o||!s||S(l)||(v().warn("target unit conversion not supported"),l=1),a*l}function S(e){return(0,o.Io)(e,1)}function R(e,t){if(null==e)return 1;const n=(0,i.KX)(t);return 1/(0,i.oU)(n,"meters",e)}const Z=(0,u.vt)(),U=(0,u.vt)(),N=(0,a.vt)(),B=(0,f.vt)(),L=(0,u.vt)()},73354:(e,t,n)=>{n.d(t,{a:()=>f,b:()=>a,c:()=>s,d:()=>o,e:()=>p,f:()=>c,l:()=>u,n:()=>h,t:()=>i});var r=n(40876);function o(e,t,n){i(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function i(e,t,n,r=3,o=r){if(e.length/r!==Math.ceil(t.length/o))return e;const i=e.length/r,s=n[0],a=n[1],l=n[2],u=n[4],c=n[5],f=n[6],p=n[8],h=n[9],g=n[10],y=n[12],d=n[13],m=n[14];let x=0,v=0;for(let n=0;n<i;n++){const n=t[x],i=t[x+1],w=t[x+2];e[v]=s*n+u*i+p*w+y,e[v+1]=a*n+c*i+h*w+d,e[v+2]=l*n+f*i+g*w+m,x+=o,v+=r}return e}function s(e,t,n){a(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function a(e,t,n,r=3,o=r){if(e.length/r!==Math.ceil(t.length/o))return;const i=e.length/r,s=n[0],a=n[1],l=n[2],u=n[3],c=n[4],f=n[5],p=n[6],h=n[7],g=n[8];let y=0,d=0;for(let n=0;n<i;n++){const n=t[y],i=t[y+1],m=t[y+2];e[d]=s*n+u*i+p*m,e[d+1]=a*n+c*i+h*m,e[d+2]=l*n+f*i+g*m,y+=o,d+=r}}function l(e,t,n,r=3,o=r){const i=Math.min(e.length/r,t.length/o);let s=0,a=0;for(let l=0;l<i;l++)e[a]=n*t[s],e[a+1]=n*t[s+1],e[a+2]=n*t[s+2],s+=o,a+=r;return e}function u(e,t,n,r){c(e.typedBuffer,t.typedBuffer,n,r,e.typedBufferStride,t.typedBufferStride)}function c(e,t,n,o,i=3,s=i){const a=Math.min(e.length/i,t.length/s);let l=0,u=0;const c=1/r.Tf;for(let r=0;r<a;r++)e[u]=o*(n*t[l])**c,e[u+1]=o*(n*t[l+1])**c,e[u+2]=o*(n*t[l+2])**c,l+=s,u+=i}function f(e,t,n,r=3,o=r){const i=e.length/r;if(i!==Math.ceil(t.length/o))return e;let s=0,a=0;for(let l=0;l<i;l++)e[a]=t[s]+n[0],e[a+1]=t[s+1]+n[1],e[a+2]=t[s+2]+n[2],s+=o,a+=r;return e}function p(e,t){h(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function h(e,t,n=3,r=n){const o=Math.min(e.length/n,t.length/r);let i=0,s=0;for(let a=0;a<o;a++){const o=t[i],a=t[i+1],l=t[i+2],u=o*o+a*a+l*l;if(u>0){const t=1/Math.sqrt(u);e[s]=t*o,e[s+1]=t*a,e[s+2]=t*l}i+=r,s+=n}}n(44208),n(53966),Object.freeze(Object.defineProperty({__proto__:null,linearToSRGB:c,linearToSRGBView:u,normalize:h,normalizeView:p,scale:l,scaleView:function(e,t,n){l(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)},shiftRight:function(e,t,n){const r=Math.min(e.count,t.count),o=e.typedBuffer,i=e.typedBufferStride,s=t.typedBuffer,a=t.typedBufferStride;let l=0,u=0;for(let e=0;e<r;e++)o[u]=s[l]>>n,o[u+1]=s[l+1]>>n,o[u+2]=s[l+2]>>n,l+=a,u+=i},transformMat3:a,transformMat3View:s,transformMat4:i,transformMat4View:o,translate:f},Symbol.toStringTag,{value:"Module"}))},80882:(e,t,n)=>{n.d(t,{A:()=>c});var r=n(31635),o=n(68197),i=n(10107),s=(n(44208),n(53966),n(87811),n(40608)),a=n(19211),l=n(35063),u=n(51147);let c=class extends a.A{constructor(e){super(e),this.emissiveColor=null,this.emissiveTexture=null,this.emissiveTextureTransform=void 0,this.occlusionTexture=null,this.occlusionTextureTransform=void 0,this.metallic=1,this.roughness=1,this.metallicRoughnessTexture=null,this.metallicRoughnessTextureTransform=void 0}getMemoryUsage(){let e=super.getMemoryUsage();return e+=null!=this.emissiveColor?16:0,null!=this.emissiveTexture&&(e+=this.emissiveTexture.memoryUsage),e+=null!=this.emissiveTextureTransform?20:0,null!=this.occlusionTexture&&(e+=this.occlusionTexture.memoryUsage),e+=null!=this.occlusionTextureTransform?20:0,null!=this.metallicRoughnessTexture&&(e+=this.metallicRoughnessTexture.memoryUsage),e+=null!=this.metallicRoughnessTextureTransform?20:0,e}};(0,r.Cg)([(0,i.MZ)({type:o.A,json:{write:!0}})],c.prototype,"emissiveColor",void 0),(0,r.Cg)([(0,i.MZ)({type:l.A,json:{write:!0}})],c.prototype,"emissiveTexture",void 0),(0,r.Cg)([(0,i.MZ)({type:u.A,json:{write:!0}})],c.prototype,"emissiveTextureTransform",void 0),(0,r.Cg)([(0,i.MZ)({type:l.A,json:{write:!0}})],c.prototype,"occlusionTexture",void 0),(0,r.Cg)([(0,i.MZ)({type:u.A,json:{write:!0}})],c.prototype,"occlusionTextureTransform",void 0),(0,r.Cg)([(0,i.MZ)({type:Number,nonNullable:!0,json:{write:!0},range:{min:0,max:1}})],c.prototype,"metallic",void 0),(0,r.Cg)([(0,i.MZ)({type:Number,nonNullable:!0,json:{write:!0},range:{min:0,max:1}})],c.prototype,"roughness",void 0),(0,r.Cg)([(0,i.MZ)({type:l.A,json:{write:!0}})],c.prototype,"metallicRoughnessTexture",void 0),(0,r.Cg)([(0,i.MZ)({type:u.A,json:{write:!0}})],c.prototype,"metallicRoughnessTextureTransform",void 0),c=(0,r.Cg)([(0,s.$)("esri.geometry.support.MeshMaterialMetallicRoughness")],c)},83349:(e,t,n)=>{function r(e,t,n){n=n||2;var r,i,a,l,u,c,p,h=t&&t.length,g=h?t[0]*n:e.length,y=o(e,0,g,n,!0),d=[];if(!y||y.next===y.prev)return d;if(h&&(y=f(e,t,y,n)),e.length>80*n){r=a=e[0],i=l=e[1];for(var m=n;m<g;m+=n)(u=e[m])<r&&(r=u),(c=e[m+1])<i&&(i=c),u>a&&(a=u),c>l&&(l=c);p=0!==(p=Math.max(a-r,l-i))?1/p:0}return s(y,d,n,r,i,p),d}function o(e,t,n,r,o){var i,s;if(o===B(e,t,n,r)>0)for(i=t;i<n;i+=r)s=Z(i,e[i],e[i+1],s);else for(i=n-r;i>=t;i-=r)s=Z(i,e[i],e[i+1],s);if(s&&b(s,s.next)){var a=s.next;U(s),s=a}return s}function i(e,t){if(!e)return e;t||(t=e);var n,r=e;do{if(n=!1,r.steiner||!b(r,r.next)&&0!==A(r.prev,r,r.next))r=r.next;else{var o=r.prev;if(U(r),(r=t=o)===r.next)break;n=!0}}while(n||r!==t);return t}function s(e,t,n,r,o,f,p){if(e){!p&&f&&d(e,r,o,f);for(var h,g,y=e;e.prev!==e.next;)if(h=e.prev,g=e.next,f?l(e,r,o,f):a(e))t.push(h.i/n),t.push(e.i/n),t.push(g.i/n),U(e),e=g.next,y=g.next;else if((e=g)===y){p?1===p?s(e=u(i(e),t,n),t,n,r,o,f,2):2===p&&c(e,t,n,r,o,f):s(i(e),t,n,r,o,f,1);break}}}function a(e){var t=e.prev,n=e,r=e.next;if(A(t,n,r)>=0)return!1;for(var o=e.next.next;o!==e.prev;){if(v(t.x,t.y,n.x,n.y,r.x,r.y,o.x,o.y)&&A(o.prev,o,o.next)>=0)return!1;o=o.next}return!0}function l(e,t,n,r){var o=e.prev,i=e,s=e.next;if(A(o,i,s)>=0)return!1;for(var a=o.x<i.x?o.x<s.x?o.x:s.x:i.x<s.x?i.x:s.x,l=o.y<i.y?o.y<s.y?o.y:s.y:i.y<s.y?i.y:s.y,u=o.x>i.x?o.x>s.x?o.x:s.x:i.x>s.x?i.x:s.x,c=o.y>i.y?o.y>s.y?o.y:s.y:i.y>s.y?i.y:s.y,f=m(a,l,t,n,r),p=m(u,c,t,n,r),h=e.prevZ,g=e.nextZ;h&&h.z>=f&&g&&g.z<=p;){if(h!==e.prev&&h!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,h.x,h.y)&&A(h.prev,h,h.next)>=0)return!1;if(h=h.prevZ,g!==e.prev&&g!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,g.x,g.y)&&A(g.prev,g,g.next)>=0)return!1;g=g.nextZ}for(;h&&h.z>=f;){if(h!==e.prev&&h!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,h.x,h.y)&&A(h.prev,h,h.next)>=0)return!1;h=h.prevZ}for(;g&&g.z<=p;){if(g!==e.prev&&g!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,g.x,g.y)&&A(g.prev,g,g.next)>=0)return!1;g=g.nextZ}return!0}function u(e,t,n){var r=e;do{var o=r.prev,s=r.next.next;!b(o,s)&&M(o,r,r.next,s)&&S(o,s)&&S(s,o)&&(t.push(o.i/n),t.push(r.i/n),t.push(s.i/n),U(r),U(r.next),r=e=s),r=r.next}while(r!==e);return i(r)}function c(e,t,n,r,o,a){var l=e;do{for(var u=l.next.next;u!==l.prev;){if(l.i!==u.i&&w(l,u)){var c=R(l,u);return l=i(l,l.next),c=i(c,c.next),s(l,t,n,r,o,a),void s(c,t,n,r,o,a)}u=u.next}l=l.next}while(l!==e)}function f(e,t,n,r){var s,a,l,u=[];for(s=0,a=t.length;s<a;s++)(l=o(e,t[s]*r,s<a-1?t[s+1]*r:e.length,r,!1))===l.next&&(l.steiner=!0),u.push(x(l));for(u.sort(p),s=0;s<u.length;s++)n=i(n=g(u[s],n),n.next);return n}function p(e,t){return e.x-t.x}function h(e){if(e.next.prev===e)return e;let t=e;for(;;){const n=t.next;if(n.prev===t||n===t||n===e)break;t=n}return t}function g(e,t){var n=function(e,t){var n,r=t,o=e.x,i=e.y,s=-1/0;do{if(i<=r.y&&i>=r.next.y&&r.next.y!==r.y){var a=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(a<=o&&a>s){if(s=a,a===o){if(i===r.y)return r;if(i===r.next.y)return r.next}n=r.x<r.next.x?r:r.next}}r=r.next}while(r!==t);if(!n)return null;if(o===s)return n;var l,u=n,c=n.x,f=n.y,p=1/0;r=n;do{o>=r.x&&r.x>=c&&o!==r.x&&v(i<f?o:s,i,c,f,i<f?s:o,i,r.x,r.y)&&(l=Math.abs(i-r.y)/(o-r.x),S(r,e)&&(l<p||l===p&&(r.x>n.x||r.x===n.x&&y(n,r)))&&(n=r,p=l)),r=r.next}while(r!==u);return n}(e,t);if(!n)return t;var r=R(n,e),o=i(n,n.next);let s=h(r);return i(s,s.next),o=h(o),h(t===n?o:t)}function y(e,t){return A(e.prev,e,t.prev)<0&&A(t.next,e,e.next)<0}function d(e,t,n,r){var o=e;do{null===o.z&&(o.z=m(o.x,o.y,t,n,r)),o.prevZ=o.prev,o.nextZ=o.next,o=o.next}while(o!==e);o.prevZ.nextZ=null,o.prevZ=null,function(e){var t,n,r,o,i,s,a,l,u=1;do{for(n=e,e=null,i=null,s=0;n;){for(s++,r=n,a=0,t=0;t<u&&(a++,r=r.nextZ);t++);for(l=u;a>0||l>0&&r;)0!==a&&(0===l||!r||n.z<=r.z)?(o=n,n=n.nextZ,a--):(o=r,r=r.nextZ,l--),i?i.nextZ=o:e=o,o.prevZ=i,i=o;n=r}i.nextZ=null,u*=2}while(s>1)}(o)}function m(e,t,n,r,o){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)*o)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*o)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function x(e){var t=e,n=e;do{(t.x<n.x||t.x===n.x&&t.y<n.y)&&(n=t),t=t.next}while(t!==e);return n}function v(e,t,n,r,o,i,s,a){return(o-s)*(t-a)-(e-s)*(i-a)>=0&&(e-s)*(r-a)-(n-s)*(t-a)>=0&&(n-s)*(i-a)-(o-s)*(r-a)>=0}function w(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!function(e,t){var n=e;do{if(n.i!==e.i&&n.next.i!==e.i&&n.i!==t.i&&n.next.i!==t.i&&M(n,n.next,e,t))return!0;n=n.next}while(n!==e);return!1}(e,t)&&(S(e,t)&&S(t,e)&&function(e,t){var n=e,r=!1,o=(e.x+t.x)/2,i=(e.y+t.y)/2;do{n.y>i!=n.next.y>i&&n.next.y!==n.y&&o<(n.next.x-n.x)*(i-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next}while(n!==e);return r}(e,t)&&(A(e.prev,e,t.prev)||A(e,t.prev,t))||b(e,t)&&A(e.prev,e,e.next)>0&&A(t.prev,t,t.next)>0)}function A(e,t,n){return(t.y-e.y)*(n.x-t.x)-(t.x-e.x)*(n.y-t.y)}function b(e,t){return e.x===t.x&&e.y===t.y}function M(e,t,n,r){var o=T(A(e,t,n)),i=T(A(e,t,r)),s=T(A(n,r,e)),a=T(A(n,r,t));return o!==i&&s!==a||!(0!==o||!C(e,n,t))||!(0!==i||!C(e,r,t))||!(0!==s||!C(n,e,r))||!(0!==a||!C(n,t,r))}function C(e,t,n){return t.x<=Math.max(e.x,n.x)&&t.x>=Math.min(e.x,n.x)&&t.y<=Math.max(e.y,n.y)&&t.y>=Math.min(e.y,n.y)}function T(e){return e>0?1:e<0?-1:0}function S(e,t){return A(e.prev,e,e.next)<0?A(e,t,e.next)>=0&&A(e,e.prev,t)>=0:A(e,t,e.prev)<0||A(e,e.next,t)<0}function R(e,t){var n=new N(e.i,e.x,e.y),r=new N(t.i,t.x,t.y),o=e.next,i=t.prev;return e.next=t,t.prev=e,n.next=o,o.prev=n,r.next=n,n.prev=r,i.next=r,r.prev=i,r}function Z(e,t,n,r){var o=new N(e,t,n);return r?(o.next=r.next,o.prev=r,r.next.prev=o,r.next=o):(o.prev=o,o.next=o),o}function U(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function N(e,t,n){this.i=e,this.x=t,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function B(e,t,n,r){for(var o=0,i=t,s=n-r;i<n;i+=r)o+=(e[s]-e[i])*(e[i+1]+e[s+1]),s=i;return o}n.d(t,{e:()=>r}),r.deviation=function(e,t,n,r){var o=t&&t.length,i=o?t[0]*n:e.length,s=Math.abs(B(e,0,i,n));if(o)for(var a=0,l=t.length;a<l;a++){var u=t[a]*n,c=a<l-1?t[a+1]*n:e.length;s-=Math.abs(B(e,u,c,n))}var f=0;for(a=0;a<r.length;a+=3){var p=r[a]*n,h=r[a+1]*n,g=r[a+2]*n;f+=Math.abs((e[p]-e[g])*(e[h+1]-e[p+1])-(e[p]-e[h])*(e[g+1]-e[p+1]))}return 0===s&&0===f?0:Math.abs((f-s)/s)},r.flatten=function(e){for(var t=e[0][0].length,n={vertices:[],holes:[],dimensions:t},r=0,o=0;o<e.length;o++){for(var i=0;i<e[o].length;i++)for(var s=0;s<t;s++)n.vertices.push(e[o][i][s]);o>0&&(r+=e[o-1].length,n.holes.push(r))}return n}},95696:(e,t,n)=>{n.d(t,{A:()=>c});var r,o=n(31635),i=n(69540),s=n(25482),a=n(10107),l=(n(44208),n(53966),n(87811),n(93223)),u=n(40608);let c=class extends((0,i.OU)(s.o)){static{r=this}constructor(e){super(e),this.type="georeferenced",this.origin=null}static{this.absolute=new r}};(0,o.Cg)([(0,l.e)({georeferenced:"georeferenced"},{readOnly:!0})],c.prototype,"type",void 0),(0,o.Cg)([(0,a.MZ)({type:[Number],nonNullable:!1,json:{write:!0}})],c.prototype,"origin",void 0),c=r=(0,o.Cg)([(0,u.$)("esri.geometry.support.MeshGeoreferencedVertexSpace")],c)},97146:(e,t,n)=>{n.d(t,{Dg:()=>i,my:()=>s,tM:()=>c,uW:()=>o});var r=n(34275);function o(e){return i(e,!0)}function i(e,t){if(Array.isArray(e)){if(e.length<r.y9)return e}else if(e.length<r.y9)return Array.from(e);let n=!0,o=!0;return e.some((e,t)=>(n=n&&0===e,o=o&&e===t,!n&&!o)),n?function(e){if(1===e)return l;if(e<r.y9)return new Array(e).fill(0);if(e>p.length){const t=Math.max(2*p.length,e);p=new Uint8Array(t)}return new Uint8Array(p.buffer,0,e)}(e.length):o?c(e.length):(0,r.iu)(e)&&e.BYTES_PER_ELEMENT===Uint16Array.BYTES_PER_ELEMENT?e:function(e,t){for(const n of e){if(n>=65536)return(0,r.iu)(e)?e:new Uint32Array(e);n>=256&&(t=!1)}return t?new Uint8Array(e):new Uint16Array(e)}(e,!t)}function s(e){return e<=r.y9?new Array(e):e<=65536?new Uint16Array(e):new Uint32Array(e)}let a=f(131072);const l=[0],u=(()=>{const e=new Uint16Array(65536);for(let t=0;t<e.length;++t)e[t]=t;return e})();function c(e){return 1===e?l:e<r.y9?Array.from(new Uint16Array(u.buffer,0,e)):e<u.length?new Uint16Array(u.buffer,0,e):(e>a.length&&(a=f(Math.max(2*a.length,e))),new Uint32Array(a.buffer,0,e))}function f(e){const t=new Uint32Array(e);for(let e=0;e<t.length;e++)t[e]=e;return t}let p=new Uint8Array(65536)}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3299],{83299:(e,t,n)=>{n.r(t),n.d(t,{fromGeometries:()=>me,fromGeometry:()=>le,fromGeometryToGXGeometry:()=>ce,fromSpatialReference:()=>de,getSpatialReference:()=>oe,toGeometry:()=>he});var r=n(55537),i=n(83661),a=n(39117),s=n(95213),o=n(88885),u=n(16930);function m(){if(-1===this.m_i)return this.m_i=0,{value:{m_token:1,m_value:null},done:!1};if(this.m_i<this.m_keys.length){const e=this.m_bReturnKey,t=Math.trunc(this.m_i);return this.m_bReturnKey=!this.m_bReturnKey,this.m_i+=.5,e?{value:{m_token:5,m_value:this.m_keys[t]},done:!1}:{value:{m_token:6,m_value:this.m_o[this.m_keys[t]]},done:!1}}return{value:{m_token:3,m_value:null},done:!0}}function l(){if(-1===this.m_i)return this.m_i=0,{value:{m_token:2,m_value:null},done:!1};if(this.m_i<this.m_a.length){const e={value:{m_token:6,m_value:this.m_a[this.m_i++]},done:!1};return this.m_strict||void 0===e.value.m_value&&(e.value.m_value=Number.NaN),e}return{value:{m_token:4,m_value:null},done:!0}}n(90293);class c{createJSONObjectIterator(e){return{m_iteratorType:"object",m_o:e,m_keys:this.m_options.strict?Object.keys(e):Object.keys(e).filter(t=>void 0!==e[t]),m_i:-1,m_bReturnKey:!0,next:m}}createJSONArrayIterator(e){return{m_iteratorType:"array",m_strict:this.m_options.strict,m_i:-1,m_a:e,next:l}}constructor(e,t){this.m_currentToken=0,this.m_options=t?{...t}:{strict:!0};const n=e;this.m_iteratorStack=[n instanceof Array?this.createJSONArrayIterator(n):this.createJSONObjectIterator(n)],this.m_nextFlatToken={m_value:null,m_token:0}}nextToken(){if(0===this.m_iteratorStack.length)return this.m_currentToken=0;switch(this.m_nextFlatToken=this.m_iteratorStack.at(-1).next().value,this.m_currentValue=void 0,this.m_nextFlatToken.m_token){case 1:return this.m_currentToken=1;case 3:return this.m_iteratorStack.pop(),this.m_currentToken=3;case 2:return this.m_currentToken=2;case 4:return this.m_iteratorStack.pop(),this.m_currentToken=4;case 5:return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=5;case 6:if(this.m_nextFlatToken.m_value instanceof Array)return this.m_iteratorStack.push(this.createJSONArrayIterator(this.m_nextFlatToken.m_value)),this.nextToken();if(this.m_nextFlatToken.m_value instanceof Object)return this.m_iteratorStack.push(this.createJSONObjectIterator(this.m_nextFlatToken.m_value)),this.nextToken();if("number"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=this.m_nextFlatToken.m_value,Number.isSafeInteger(this.m_currentValue)&&this.m_currentValue>=(0,i.aJ)()&&this.m_currentValue<=(0,i.i)()?this.m_currentToken=8:this.m_currentToken=7;if("string"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=6;if("boolean"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=this.m_nextFlatToken.m_value?11:12;if("object"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=null,this.m_currentToken=10;(0,r.d)("unrecognized json element type")}return(0,r.d)("unrecognized json element type"),0}currentToken(){return this.m_currentToken}skipChildren(){if(0!==this.m_iteratorStack.length)switch(this.m_currentValue=void 0,this.m_nextFlatToken.m_token){case 1:return this.m_iteratorStack.pop(),this.m_nextFlatToken.m_token=3,void(this.m_currentToken=3);case 2:return this.m_iteratorStack.pop(),this.m_nextFlatToken.m_token=4,void(this.m_currentToken=4)}}currentString(){return 6!==this.m_currentToken&&5!==this.m_currentToken&&(0,r.a)("invalid token"),this.m_currentValue}currentDoubleValue(){return 7!==this.m_currentToken&&8!==this.m_currentToken&&(0,r.a)("invalid token"),this.m_currentValue}currentInt32Value(){return 8!==this.m_currentToken&&(0,r.a)("invalid token"),this.m_currentValue}currentInt64Value(){return(0,r.g)(0),0n}currentBoolValue(){return 12!==this.m_currentToken&&11!==this.m_currentToken&&(0,r.a)("invalid token"),this.m_currentValue}isError(){return 0}}class d{constructor(e){return this.m_buffer=null,this.m_view=null,this.m_sz=0,this.m_offset=0,this.m_bOwnsBuffer=!0,this.m_bLittleEndian=!0,this.m_element=new ArrayBuffer(8),this.m_elementBytes=new Uint8Array(this.m_element),this.m_elementView=new DataView(this.m_element),this.m_elementDouble=new Float64Array(this.m_element),this.m_elementFloat=new Float32Array(this.m_element),this.m_elementInt64=new BigInt64Array(this.m_element),this.m_elementInt32=new Int32Array(this.m_element),this.m_elementInt16=new Int16Array(this.m_element),void 0!==e.sz?(this.m_sz=e.sz,e.buffer?(this.m_sz<0&&(0,r.q)("size out of range"),this.m_buffer=e.buffer,this.m_offset=void 0!==e.offset?e.offset:0,this.m_view=void 0!==e.offset?new DataView(e.buffer,e.offset,e.sz):new DataView(this.m_buffer),this.m_bOwnsBuffer=!1,void(this.m_bLittleEndian=!0)):(this.m_sz<0&&(0,r.q)("size out of range"),void(this.m_sz>0&&(this.m_buffer=new ArrayBuffer(this.m_sz),this.m_view=new DataView(this.m_buffer))))):e.move?(this.m_sz=e.move.m_sz,this.m_buffer=e.move.m_buffer,this.m_view=e.move.m_view,this.m_bOwnsBuffer=e.move.m_bOwnsBuffer,this.m_bLittleEndian=e.move.m_bLittleEndian,e.move.m_buffer=null,e.move.m_view=null,e.move.m_sz=0,void(e.move.m_bOwnsBuffer=!0)):void(0,r.d)("unrecognized constructor options")}swapBytesDouble(){this.doSwap()&&(this.m_elementDouble[0]=this.m_elementBytes[0]<<56|this.m_elementBytes[1]<<48|this.m_elementBytes[2]<<40|this.m_elementBytes[3]<<32|this.m_elementBytes[4]<<24|this.m_elementBytes[5]<<16|this.m_elementBytes[6]<<8|this.m_elementBytes[7])}swapBytesInt32(){this.doSwap()&&(this.m_elementInt32[0]=this.m_elementBytes[0]<<24|this.m_elementBytes[1]<<16|this.m_elementBytes[2]<<8|this.m_elementBytes[3])}getOffset(){return this.m_offset}assignMove(e){return this===e||(this.clear(),this.m_sz=e.m_sz,this.m_buffer=e.m_buffer,this.m_view=e.m_view,this.m_bOwnsBuffer=e.m_bOwnsBuffer,this.m_bLittleEndian=e.m_bLittleEndian,e.m_buffer=null,e.m_sz=0,e.m_bOwnsBuffer=!0),this}doSwap(){return this.m_bLittleEndian!==(1===d.getNativeByteOrder())}setNativeByteOrder(){this.m_bLittleEndian=1===d.getNativeByteOrder()}setOrder(e){this.m_bLittleEndian=1===e}getOrder(){return this.m_bLittleEndian?1:0}getView(){return this.m_view||(0,r.p)("buffer not defined"),this.m_view}static getNativeByteOrder(){return 1}clear(){this.m_buffer=null,this.m_sz=0,this.m_bOwnsBuffer=!0}size(){return this.m_sz}readDouble(e){return this.doSwap()?(this.m_elementDouble[0]=this.m_view.getFloat64(e,this.m_bLittleEndian),this.swapBytesDouble(),this.m_elementDouble[0]):this.m_view.getFloat64(e,this.m_bLittleEndian)}writeDouble(e,t){this.m_elementDouble[0]=t,this.swapBytesDouble(),this.m_view.setFloat64(e,this.m_elementDouble[0],this.m_bLittleEndian)}readInt32(e){return this.doSwap()?(this.m_elementInt32[0]=this.m_view.getInt32(e,this.m_bLittleEndian),this.swapBytesInt32(),this.m_elementInt32[0]):this.m_view.getInt32(e,this.m_bLittleEndian)}writeInt32(e,t){this.m_elementInt32[0]=t,this.swapBytesInt32(),this.m_view.setInt32(e,this.m_elementInt32[0],this.m_bLittleEndian)}getPtr(){return this.m_buffer}setSizeNoRealloc(e){(0,r.g)(e>=0&&e<=this.m_sz),this.m_sz=e}}function h(e){let t=!1;for(;3!==e.nextToken();){const n=e.currentString();e.nextToken(),"uwkid"===n?t||(t=!0,8===e.currentToken()&&e.currentInt32Value()):e.skipChildren()}return null}function _(e){let t=!1,n=!1,r=!1,i=!1,s=!1,o=!1,u=!1,m=!1,l=!1,c=!1,d=!1,_=!1,f=!1,p=!1,k=!1,b=!1,y=!1,g=-1,N=-1,T=-1,v=-1,x=0,A=0,S=0,w=0,C=0,D=0,F=0,j=0,O=0,I=0,z="",E="",G=null;for(;3!==e.nextToken();){const a=e.currentString();e.nextToken(),"wkid"===a?t||(t=!0,8===e.currentToken()&&(g=e.currentInt32Value())):"latestWkid"===a?n||(n=!0,8===e.currentToken()&&(N=e.currentInt32Value())):"wkt"===a?s||(s=!0,6===e.currentToken()&&(z=e.currentString())):"wkt2"===a?s||6===e.currentToken()&&(E=e.currentString()):"vcsWkid"===a?r||(r=!0,8===e.currentToken()&&(T=e.currentInt32Value())):"latestVcsWkid"===a?i||(i=!0,8===e.currentToken()&&(v=e.currentInt32Value())):"xyTolerance"===a?u||(u=!0,o=!0,x=e.currentDoubleValue()):"zTolerance"===a?m||(m=!0,o=!0,A=e.currentDoubleValue()):"mTolerance"===a?l||(l=!0,o=!0,S=e.currentDoubleValue()):"falseX"===a?c||(c=!0,o=!0,F=e.currentDoubleValue()):"falseY"===a?d||(d=!0,o=!0,j=e.currentDoubleValue()):"falseZ"===a?_||(_=!0,o=!0,O=e.currentDoubleValue()):"falseM"===a?f||(f=!0,o=!0,I=e.currentDoubleValue()):"xyUnits"===a?p||(p=!0,o=!0,w=e.currentDoubleValue()):"zUnits"===a?k||(k=!0,o=!0,C=e.currentDoubleValue()):"mUnits"===a?b||(b=!0,o=!0,D=e.currentDoubleValue()):"unit"===a?y||(y=!0,G=h(e)):e.skipChildren()}v<=0&&T>0&&(v=T),T<=0&&v>0&&(T=v);let P=null,B=!0;if(0!==z.length&&(B=!1,(0,a.q)(z)&&(P=(0,a.b)(z))),P||0===E.length||(B=!1,(0,a.q)(E)&&(P=(0,a.b)(E))),!P&&N>0&&(B=!1,(0,a.p)(N)&&(v<=0||(0,a.aX)())&&(P=(0,a.c)(N,v))),!P&&g>0&&(B=!1,(0,a.p)(g)&&(T<=0||(0,a.aX)())&&(P=(0,a.c)(g,T))),B&&(P=(0,a.e)(G)),o&&P){const e=new a.a;P.queryPrecisionDescriptorWithoutFalseXY(e),u&&e.setTolerance(0,x),m&&e.setTolerance(1,A),l&&e.setTolerance(2,S),p&&c&&d&&e.setGridParams(F,j,w),k&&_&&e.setZParams(O,C),b&&f&&e.setMParams(I,D),P=(0,a.f)(P,e)}return P}function f(e,t,n,a){2!==a.currentToken()&&(0,r.a)("failed to parse multipath: array of array of vertices is expected");const u=e?new o.a:new o.P,m=u,l=(0,s.$)(0),c=(0,s.a1)(2,0),d=(0,s.a0)(0);let h=null,_=null,f=null,p=null,k=null,y=0,v=0,x=0;const A=new o.S,S=i.P.getNAN();let w=0,C=0;const D=e?1:0;for(;4!==a.nextToken();){2!==a.currentToken()&&(0,r.a)("failed to parse multipath: ring/path array is expected");let n=2,u=0,F=!0;const j=4;let O=0,I=0;const z=i.P.getNAN(),E=(0,i.d)(j,Number.NaN),G=(0,i.d)(j,Number.NaN);let P=!1;for(a.nextToken();4!==a.currentToken();){if(t&&1===a.currentToken())F&&(0,r.a)("failed to parse multipath: starting vertex array is expected"),f||(f=(0,s.a0)(w-1,1),p=(0,s.$)(w-1,-1),k=(0,s.a1)(0)),P=!0,n=1,({segFlag:x,toPointSz:O}=T(A,E,S,a));else{for(P=!1,2!==a.currentToken()&&(0,r.a)("failed to parse multipath: array is expected, rings/paths vertices consist of arrays of coordinates"),O=0;4!==a.nextToken();)O===j&&(0,r.a)("failed to parse multipath: each vertex array has to have at most 4 elements"),E[O++]=b(a);O<2&&(0,r.a)("failed to parse multipath: each vertex array has to have at least 2 elements"),(0,s.a5)(E[0],E[1])||(0,r.a)("failed to parse multipath: x and y must be finite")}a.nextToken();do{if(c.size()===2*w&&c.resize(g(w)),c.writePoint2D(2*w,z.setCoords(E[0],E[1])),h&&h.size()===w&&h.resize(N(w)),O>2?(h||(h=(0,s.a1)(w+1,Number.NaN)),h.write(w,E[2])):h&&h.write(w,Number.NaN),_&&_.size()===w&&_.resize(N(w)),O>3?(_||(_=(0,s.a1)(w+1,Number.NaN)),_.write(w,E[3])):_&&_.write(w,Number.NaN),F)C++,l.add(w),d.add(D),F=!1,I=O,(0,i.b)(G,E,0,0,I);else if(null!==f)if(P){const e=(0,o.a9)(x),t=k.size();k.resize(t+e),f.add(x),p.add(y),A.get().writeInBufferStream(k,y),y+=e,m.incCurveType(x,1),v++}else f.add(1),p.add(-1);w++,u++,S.setCoords(E[0],E[1])}while(u<n&&4===a.currentToken())}0!==u&&(e&&u>n&&O===I&&0===(0,i.aK)(E,G,O)?(w--,u--):null!==f&&(f.add(1),p.add(-1)))}return w&&(l.resize(C),d.resize(C),w>0&&(l.add(w),d.add(0)),m.setAttributeStreamRef(0,c),m.setPathFlagsStreamRef(d),m.setPathStreamRef(l),null!==f&&(m.updateCurveCounter(v),m.setSegmentData(p,k,f,y)),m.notifyModifiedFlags(65535)),{geometry:u,as:h,bs:_}}function p(e,t){2!==t.currentToken()&&(0,r.a)("failed to parse multipoint: array of vertices is expected");let n=0;const a=new o.M,u=(0,s.a1)(2,0);let m=0;const l=(0,i.d)(4,Number.NaN),c=new i.P;let d=null,h=null;for(;4!==t.nextToken();){for(2!==t.currentToken()&&(0,r.a)("failed to parse multipoint: array is expected, multipoint vertices consist of arrays of cooridinates"),m=0;4!==t.nextToken();)4===m&&(0,r.a)("failed to parse multipoint: each vertex array has to have at most 4 elements"),l[m++]=b(t);m<2&&(0,r.a)("failed to parse multipoint: each vertex array has to have at least 2 elements"),(0,s.a5)(l[0],l[1])||(0,r.a)("failed to parse multipoint: x and y must be finite"),u.size()===2*n&&u.resize(g(n)),u.writePoint2D(2*n,c.setCoords(l[0],l[1])),d&&d.size()===n&&d.resize(N(n)),m>2?(d||(d=(0,s.a1)(n+1,Number.NaN)),d.write(n,l[2])):d&&d.write(n,Number.NaN),h&&h.size()===n&&h.resize(N(n)),m>3?(h||(h=(0,s.a1)(n+1,Number.NaN)),h.write(n,l[3])):h&&h.write(n,Number.NaN),n++}if(n){const e=a.getImpl();e.setAttributeStreamRef(0,u),e.resizeNoInit(n),e.notifyModifiedFlags(65535)}return{geometry:a,as:d,bs:h}}function k(e,t){2!==t.currentToken()&&(0,r.a)("failed to parse array of IDs: array of array of integers is expected");const n=(0,s.a6)(2,0);let i=0,a=-1;for(;4!==t.nextToken();){const e=i;n.size()===i&&n.resize(N(i)),i++;let s=0;for(-1===a?a=2===t.currentToken()?1:0:1===a&&2!==t.currentToken()&&(0,r.a)("failed to parse array of IDs: array of array of integers is expected"),0===a&&(n.size()===i&&n.resize(N(i)),n.write(i,y(t)),s++,i++);4!==t.nextToken();)n.size()===i&&n.resize(N(i)),n.write(i,y(t)),s++,i++;if(n.write(e,s),0===a)break}return n.resize(i),n}function b(e){const t=e.currentToken();if(10===t||6===t&&"NaN"===e.currentString())return Number.NaN;{const t=e.currentDoubleValue();return Number.isNaN(t)?Number.NaN:t}}function y(e){return e.currentInt32Value()}function g(e){let t=2*Math.trunc(3*(e+1)/2);return t<8?t=8:t<32&&(t=32),t}function N(e){let t=Math.trunc(3*(e+1)/2);return t<4?t=4:t<16&&(t=16),t}function T(e,t,n,a,s){const u={segFlag:0,toPointSz:0};let m=a.currentToken();m=a.nextToken();const l=a.currentString(),c=l[0];for((1!==l.length||"a"!==c&&"b"!==c&&"c"!==c&&"n"!==c&&"q"!==c)&&(0,r.a)('failed to parse curve: expecting "a", "b", "n", "q", or "c"'),m=a.nextToken(),2!==m&&(0,r.a)("failed to parse curve: start array is expected for curve parameters"),m=a.nextToken(),2!==m&&(0,r.a)("failed to parse curve: start array is expected for to point"),u.toPointSz=0;4!==a.nextToken();)4===u.toPointSz&&(0,r.a)("failed to parse curve: vertex array cannot have more than 4 elements"),t[u.toPointSz++]=b(a);u.toPointSz<2&&(0,r.a)("failed to parse curve: vertex array must have at least 2 elements");const h=i.P.construct(t[0],t[1]),_=i.P.getNAN();let f=-1,p=-1,k=!1,y=Number.NaN,g=Number.NaN,N=Number.NaN;const T=[i.P.getNAN(),i.P.getNAN(),i.P.getNAN()],x=i.P.getNAN();if("a"===c){m=a.nextToken(),2!==m&&(0,r.a)("failed to parse curve: start array is expected for center point"),m=a.nextToken();const e=b(a);m=a.nextToken();const t=b(a);m=a.nextToken(),4!==m&&(0,r.a)("failed to parse curve: end array is expected for center point"),_.setCoords(e,t),m=a.nextToken(),f=a.currentInt32Value(),m=a.nextToken(),p=a.currentInt32Value(),m=a.nextToken(),4!==m?(k=!1,y=b(a),m=a.nextToken(),g=b(a),m=a.nextToken(),N=b(a),m=a.nextToken(),4!==m&&(0,r.a)("failed to parse curve: end array is expected for curve parameters")):k=!0,u.segFlag=4}else if("b"===c){for(let e=0;e<2;e++){m=a.nextToken(),2!==m&&(0,r.a)("failed to parse curve: start array is expected for control point"),m=a.nextToken();const t=b(a);m=a.nextToken();const n=b(a);m=a.nextToken(),4!==m&&(0,r.a)("failed to parse curve: end array is expected for control point"),T[e].setCoords(t,n)}m=a.nextToken(),4!==m&&(0,r.a)("failed to parse curve: end array is expected for curve parameters"),u.segFlag=2}else if("n"===c){{m=a.nextToken(),2!==m&&(0,r.a)("failed to parse curve: start array is expected for control point"),m=a.nextToken();const e=b(a);m=a.nextToken();const t=b(a);m=a.nextToken(),4!==m&&(0,r.a)("failed to parse curve: end array is expected for control point"),T[0].setCoords(e,t)}m=a.nextToken();const e=b(a);m=a.nextToken();const t=b(a);m=a.nextToken();const n=b(a);T[1].setCoords(e,t),T[2].setCoords(n,n),m=a.nextToken(),4!==m&&(0,r.a)("failed to parse curve: end array is expected for curve parameters"),u.segFlag=8}else if("q"===c){for(let e=0;e<1;e++){m=a.nextToken(),2!==m&&(0,r.a)("failed to parse curve: start array is expected for control point"),m=a.nextToken();const t=b(a);m=a.nextToken();const n=b(a);m=a.nextToken(),4!==m&&(0,r.a)("failed to parse curve: end array is expected for control point"),T[e].setCoords(t,n)}m=a.nextToken(),4!==m&&(0,r.a)("failed to parse curve: end array is expected for curve parameters"),u.segFlag=16}else{m=a.nextToken(),2!==m&&(0,r.a)("failed to parse curve: start array is expected for interior point"),m=a.nextToken();const e=b(a);m=a.nextToken();const t=b(a);m=a.nextToken(),4!==m&&(0,r.a)("failed to parse curve: end array is expected for interior point"),x.setCoords(e,t),m=a.nextToken(),4!==m&&(0,r.a)("failed to parse curve: end array is expected for curve parameters"),u.segFlag=4}if(m=a.nextToken(),3!==m&&(0,r.a)("failed to parse curve: end object is expected for curve"),"a"===c)if(e.createEllipticArc(),k){const t=!0;v(e.get(),n,h,_,t,f,p)}else!function(e,t,n,r,i,a,s,u,m){e.dropAllAttributes();const l=new ArrayBuffer(44),c=new d({sz:44,buffer:l});let h=0;c.writeDouble(h,r.x),h+=8,c.writeDouble(h,r.y),h+=8,c.writeDouble(h,s),h+=8,c.writeDouble(h,u),h+=8,c.writeDouble(h,m),h+=8;let _=0;a||(_|=2048),i&&(_|=4096),c.writeInt32(h,_),h+=4,function(e,t,n,r){e.m_bits=0,e.m_center.x=r.readDouble(0),e.m_center.y=r.readDouble(8),e.m_rotation=r.readDouble(16),e.m_semiMajorAxis=r.readDouble(24),e.m_minorMajorRatio=r.readDouble(32),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y;const i=r.readInt32(40);if(1&i)return!1;let a=!!(64&i),s=!!(128&i);const u=!!(2048&i),m=!!(4096&i);!(512&i)&&!(1024&i)||s||(a=!0),s&&!t.equals(n)?(s=!1,a=!0):a&&t.equals(n)&&(s=!0,a=!1),s?(e.m_center.assign(t),e.m_startAngle=e.m_center.x,e.m_sweepAngle=e.m_center.y,(0,o.a8)(e,Number.NaN,u,m),e.m_semiMajorAxis=0,e.m_interior.setCoordsPoint2D(t)):a?(e.m_center.setNAN(),e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,(0,o.a6)(e),e.queryCoord2D(.5,e.m_interior)):e.constructEllipticArcEndPointsCenter(t,n,e.m_semiMajorAxis,e.m_minorMajorRatio,e.m_rotation,!m,u,e.m_center),e.setProjectionBehavior(1),(0,o.a6)(e)}(e,t,n,c)}(e.get(),n,h,_,f,p,y,g,N);else if("b"===c)e.createCubicBezier(),function(e,t,n,a){e.dropAllAttributes();const s=new ArrayBuffer(32),o=new d({sz:32,buffer:s});let u=0;o.writeDouble(u,a[0].x),u+=8,o.writeDouble(u,a[0].y),u+=8,o.writeDouble(u,a[1].x),u+=8,o.writeDouble(u,a[1].y),u+=8,function(e,t,n,a){(0,r.g)(32<=a.size()),e.m_cp=(0,i.m)(i.P,2),e.m_cp[0].x=a.readDouble(0),e.m_cp[0].y=a.readDouble(8),e.m_cp[1].x=a.readDouble(16),e.m_cp[1].y=a.readDouble(24),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y}(e,t,n,o)}(e.get(),n,h,T);else if("n"===c)e.createQuadraticRationalBezier(),function(e,t,n,r,i,a,s){e.dropAllAttributes();const o=new ArrayBuffer(40),u=new d({sz:40,buffer:o});let m=0;u.writeDouble(m,r.x),m+=8,u.writeDouble(m,r.y),m+=8,u.writeDouble(m,i),m+=8,u.writeDouble(m,a),m+=8,u.writeDouble(m,s),m+=8,function(e,t,n,r){e.m_cp.x=r.readDouble(0),e.m_cp.y=r.readDouble(8),e.m_weights[0]=r.readDouble(16),e.m_weights[1]=r.readDouble(24),e.m_weights[2]=r.readDouble(32),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y}(e,t,n,u)}(e.get(),n,h,T[0],T[1].x,T[1].y,T[2].x);else if("q"===c)e.createQuadraticBezier(),e.get().construct(n,T[0],h);else{e.createEllipticArc();const t=!1;v(e.get(),n,h,x,t,-1,-1)}return u}function v(e,t,n,a,s,u,m){e.dropAllAttributes();const l=new ArrayBuffer(20),c=new d({sz:20,buffer:l});let h=0;c.writeDouble(h,a.x),h+=8,c.writeDouble(h,a.y),h+=8;let _=0;s?(m||(_|=8),u&&(_|=16)):_|=128,c.writeInt32(h,_),h+=4,function(e,t,n,a){0>=a.size()&&(0,r.q)("Byte_buffer out of range access"),e.m_bits=0,e.m_rotation=0,e.m_cosr=1,e.m_sinr=0,e.setStartXY(t),e.setEndXY(n);const s=i.P.getNAN();s.x=a.readDouble(0),s.y=a.readDouble(8);const u=a.readInt32(16);if(1&u)return e.m_semiMajorAxis=0,e.m_minorMajorRatio=1,e.m_interior.assign(s),e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,(0,o.a6)(e),!1;let m=!!(64&u);const l=!!(128&u);let c=!!(32&u);const d=!!(8&u),h=!!(16&u),_=t.equals(n);m&&!_&&(m=!1,c=!0),c&&_&&(m=!0,c=!1,s.setCoords(0,0)),m||(l?c?(e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_interior.assign(s),e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0):(e.constructCircularArcThreePoint(t,n,s),_&&d===e.isClockwise()&&e.reverse()):c?(e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,(0,o.a6)(e),e.queryCoord2D(.5,e.m_interior)):(0,o.a7)(e,t,n,s,d,h)),m&&(e.m_center.assign(t),e.m_startAngle=s.x,e.m_sweepAngle=s.y,(0,o.a8)(e,Number.NaN,d,h),e.m_semiMajorAxis=0,e.m_minorMajorRatio=1,e.m_interior.setCoordsPoint2D(t)),e.setProjectionBehavior(0),(0,o.a6)(e)}(e,t,n,c)}function x(e,t,n,i,a){const s=e.getGeometryType();if(s===r.G.enumEllipticArc)return function(e,t,n,i,a){(0,r.g)(!(0,o.a5)(e));const s=e.getEndXY(),u=e.hasAttribute(1)&&!t,m=e.hasAttribute(2)&&!n;let l=Number.NaN,c=Number.NaN;if(u&&(l=e.getEndAttributeAsDbl(1,0)),m&&(c=e.getEndAttributeAsDbl(2,0)),e.isDegenerateToLine()||e.isDegenerate(0))return S(u,m,s.x,s.y,l,c,i,a),!0;const d=0===e.projectionBehavior(),h=!!d&&e.isClosed();if(d&&!h)a.startObject(),a.addFieldName("c"),a.startArray(),S(u,m,s.x,s.y,l,c,i,a),w(e.m_interior.x,e.m_interior.y,17,a),a.endArray(),a.endObject();else if(d){a.startObject(),a.addFieldName("a"),a.startArray(),S(u,m,s.x,s.y,l,c,i,a);const t=0,n=0;w(e.m_center.x+t,e.m_center.y+n,17,a);const r=!e.isMajor();a.addInt32(r?1:0);const o=e.isClockwise();a.addInt32(o?1:0),a.endArray(),a.endObject()}else{a.startObject(),a.addFieldName("a"),a.startArray(),S(u,m,s.x,s.y,l,c,i,a);const t=e;w(t.m_center.x,t.m_center.y,17,a);const n=!t.isMajor();a.addInt32(n?1:0);const r=t.isClockwise();a.addInt32(r?1:0),a.addDouble(t.m_rotation,17),a.addDouble(t.m_semiMajorAxis,17),a.addDouble(t.m_minorMajorRatio,17),a.endArray(),a.endObject()}return!1}(e,t,n,i,a);if(s===r.G.enumBezier)return A(e,t,n,i,a);if(s===r.G.enumRationalBezier2)return function(e,t,n,r,i){const a=e.getEndXY(),s=e.hasAttribute(1)&&!t,o=e.hasAttribute(2)&&!n;let u=Number.NaN,m=Number.NaN;s&&(u=e.getEndAttributeAsDbl(1,0)),o&&(m=e.getEndAttributeAsDbl(2,0)),i.startObject(),i.addFieldName("n"),i.startArray(),S(s,o,a.x,a.y,u,m,r,i),w(e.m_cp.x,e.m_cp.y,r,i);const l=r;return i.addDouble(e.m_weights[0],l),i.addDouble(e.m_weights[1],l),i.addDouble(e.m_weights[2],l),i.endArray(),i.endObject(),!1}(e,t,n,i,a);if(s===r.G.enumBezier2){const r=new o.J;return r.constructFromQuadraticSegment(e),A(r,t,n,i,a)}(0,r.t)("")}function A(e,t,n,r,i){const a=e.getEndXY(),s=e.hasAttribute(1)&&!t,o=e.hasAttribute(2)&&!n;let u=Number.NaN,m=Number.NaN;return s&&(u=e.getEndAttributeAsDbl(1,0)),o&&(m=e.getEndAttributeAsDbl(2,0)),i.startObject(),i.addFieldName("b"),i.startArray(),S(s,o,a.x,a.y,u,m,r,i),w(e.m_cp[0].x,e.m_cp[0].y,r,i),w(e.m_cp[1].x,e.m_cp[1].y,r,i),i.endArray(),i.endObject(),!1}function S(e,t,n,r,i,a,s,o){o.startArray(),o.addDouble(n,s),o.addDouble(r,s),e&&o.addDouble(i,s),t&&o.addDouble(a,s),o.endArray()}function w(e,t,n,r){r.startArray(),r.addDouble(e,n),r.addDouble(t,n),r.endArray()}function C(e,t,n,i){const a=n.getImpl(),u=!!(2&t),m=!!(4&t),l=!!(8&t),c=a.hasAttribute(1)&&!u,d=a.hasAttribute(2)&&!m,h=a.hasAttribute(3)&&!l,_=a.hasNonLinearSegments();c&&(i.addFieldName("hasZ"),i.addBool(!0)),d&&(i.addFieldName("hasM"),i.addBool(!0)),e?_?i.addFieldName("curveRings"):i.addFieldName("rings"):_?i.addFieldName("curvePaths"):i.addFieldName("paths");let f=null;const p=[];if(n.isEmpty())i.startArray(),i.endArray();else{const e=17-(31&t>>13);i.startArray();const l=n.getPathCount();let k=0;const b=a.getAttributeStreamRef(0);let y=null,g=null,N=null;const T=new o.S;let v=null,A=null,S=null;_&&(v=a.getSegmentFlagsStreamRef(),A=a.getSegmentIndexStreamRef(),S=a.getSegmentDataStreamRef()),c&&(y=a.getAttributeStreamRef(1)),d&&(g=a.getAttributeStreamRef(2)),h&&(N=a.getAttributeStreamRef(3),f=(0,s.X)(3,0));for(let t=0;t<l;t++){i.startArray(),h&&p.push(0);const a=n.getPathEnd(t);if(k===a){i.endArray();continue}const s=n.isClosedPath(t);let o=b.read(2*k),l=b.read(2*k+1),_=c?y.read(k):Number.NaN,w=d?g.read(k):Number.NaN,C=h?N.read(k):0;D(c,d,o,l,_,w,e,i);let F=1;h&&(f.add(C),p[p.length-1]++);const j=o,O=l,I=_,z=w,E=C;let G=!1,P=0,B=Number.NaN,R=Number.NaN,V=0;for(let t=k+1,n=k,M=s?a+1:a;t<M;t++,n++){const s=null!==v?31&v.read(n):1;let k,M;if(t<a?(k=b.read(2*t),M=b.read(2*t+1),c&&(B=y.read(t)),d&&(R=g.read(t)),h&&(V=N.read(t))):(k=j,M=O,B=I,R=z,V=E),1!==s){G=!0,4===s?T.createEllipticArc():2===s?T.createCubicBezier():16===s?T.createQuadraticBezier():8===s?T.createQuadraticRationalBezier():(0,r.t)("JSON export.unsupported curve");const t=T.get(),a=A.read(n);t.setStartXYCoords(o,l),t.setEndXYCoords(k,M),c&&(t.setStartAttribute(1,0,_),t.setEndAttribute(1,0,B)),d&&(t.setStartAttribute(2,0,w),t.setEndAttribute(2,0,R)),t.readFromBufferStream(S,a),x(T.get(),u,m,e,i)&&P++}else D(c,d,k,M,B,R,e,i);h&&(f.add(V),p[p.length-1]++),F++,o=k,l=M,_=B,w=R,C=V}G&&0===P||(F<2&&P<1&&(D(c,d,o,l,_,w,e,i),F++,h&&(f.add(C),p[p.length-1]++)),s&&F<3&&P<2&&(D(c,d,j,O,I,z,e,i),F++,o=j,l=O,_=I,w=z,C=E,h&&(f.add(E),p[p.length-1]++))),i.endArray(),k=a}i.endArray()}if(h){i.addFieldName("ids"),i.startArray();let e=0;for(let t=0,n=p.length;t<n;++t){const n=p[t];(0,r.g)(0===n||null!==f&&e+n<=f.size()),i.startArray();for(let t=0;t<n;++t)i.addInt32(f.read(e)),e++;i.endArray()}i.endArray()}}function D(e,t,n,r,i,a,s,o){o.startArray(),o.addDouble(n,s),o.addDouble(r,s),e&&o.addDouble(i,s),t&&o.addDouble(a,s),o.endArray()}const F="a".charCodeAt(0),j="A".charCodeAt(0),O="*".charCodeAt(0),I="b".charCodeAt(0),z="\\".charCodeAt(0),E="[".charCodeAt(0),G="{".charCodeAt(0),P=":".charCodeAt(0),B=".".charCodeAt(0),R=",".charCodeAt(0),V='"'.charCodeAt(0),M="]".charCodeAt(0),U="}".charCodeAt(0),W="e".charCodeAt(0),X="E".charCodeAt(0),Y="f".charCodeAt(0),L="F".charCodeAt(0),q="/".charCodeAt(0),K="-".charCodeAt(0),J="+".charCodeAt(0),Z="n".charCodeAt(0),H="N".charCodeAt(0),Q="r".charCodeAt(0),$="t".charCodeAt(0),ee="u".charCodeAt(0),te="0".charCodeAt(0),ne="9".charCodeAt(0);class re{constructor(e){this.m_functionStack=[],this.m_pushPositions=[],this.m_utf8Decoder=new TextDecoder("utf-8",{fatal:!0}),void 0===e?(this.m_startToken=Number.MAX_SAFE_INTEGER,this.m_endToken=0,this.m_currentTokenType=0,this.m_functionStack.push(()=>this.accept_()),this.m_jsonString=null,this.m_bHasEscapes=!1):e.jsonString?this.resetParserFromString(e.jsonString):e.jsonStream?(0,r.t)("streaming json parsing not yet impl"):(0,r.d)("invalid constructor parameter")}prepSubstrString_(){}getCurrentSubstrString_(){return this.m_jsonString.slice(this.m_startToken,this.m_endToken)}stepOverCharString_(){this.m_endToken++}peekCharString_(){return this.m_jsonString.charCodeAt(this.m_endToken)}getString_(e){const t=this.m_jsonString?.slice(this.m_startToken,this.m_startToken+e-1);return this.m_endToken+=e-1,{s:t,bDone:this.m_endToken>=this.m_jsonString.length}}incrementString_(){this.m_endToken++}eofString_(){return this.m_endToken>=this.m_jsonString.length}setStringFunctions_(){this.m_prepSubstr=this.prepSubstrString_,this.m_getCurrentSubstr=this.getCurrentSubstrString_,this.m_stepOverChar=this.stepOverCharString_,this.m_peekChar=this.peekCharString_,this.m_get=this.getString_,this.m_increment=this.incrementString_,this.m_eof=this.eofString_}setStreamFunctions_(){(0,r.t)("streaming json parsing not yet impl")}reset_(){this.m_jsonString=null,this.m_endToken=0,this.m_startToken=Number.MAX_SAFE_INTEGER,this.m_currentTokenType=0,this.m_bHasEscapes=!1,this.m_functionStack.length=0,this.m_functionStack.push(()=>this.start_()),this.m_pushPositions.length=0}resetParserFromString(e){this.reset_(),this.setStringFunctions_(),this.m_jsonString=e}resetParserFromStream(e){(0,r.t)("streaming json parsing not yet impl")}resetToPosition(e){return!!this.m_jsonString&&(this.m_endToken=e,this.m_startToken=Number.MAX_VALUE,this.m_currentTokenType=0,this.m_functionStack.length=0,e>=this.m_jsonString.length?(this.m_functionStack.push(()=>this.accept_()),!1):(this.m_functionStack.push(()=>this.start_()),!0))}nextToken(){return this.m_functionStack.at(-1)(),this.m_currentTokenType}currentToken(){return this.m_currentTokenType}currentTokenStartIndex(){return this.m_startToken}currentTokenEndIndex(){return this.m_endToken}currentText(){return(0,r.g)(0),""}childrenAsString(){return(0,r.g)(0),""}skipChildren(){this.skipChildren_()}skipChildren_(){if(1===this.m_currentTokenType){let e=1;do{this.m_currentTokenType=this.nextToken(),1===this.m_currentTokenType?e++:3===this.m_currentTokenType&&e--}while(3!==this.m_currentTokenType||0!==e);return}if(2===this.m_currentTokenType){let e=1;do{this.m_currentTokenType=this.nextToken(),2===this.m_currentTokenType?e++:4===this.m_currentTokenType&&e--}while(4!==this.m_currentTokenType||0!==e);return}}currentTerminalAsString_(){switch(this.m_currentTokenType){case 7:case 8:case 9:return this.m_getCurrentSubstr().slice(0,this.m_endToken-this.m_startToken);case 10:return"null";case 11:return"true";case 12:return"false"}(0,r.a)("invalid token")}toUTF8_(e,t){let n=0,r=e;for(;t.charCodeAt(r)===z&&t.charCodeAt(r+1)===ee;)n++,r+=6;r=e;const i=new Uint8Array(n);let a=0;for(;t.charCodeAt(r)===z&&t.charCodeAt(r+1)===ee;)i[a++]=Number.parseInt(t.slice(r+2,r+6),16),r+=6;return{u8s:this.m_utf8Decoder.decode(i),end:r}}unquoteCurrentString_(){let e="",t=1;const n=this.m_endToken-this.m_startToken-1;let r=0;const i=this.m_getCurrentSubstr();for(let a=t;a<n;a++)if(i.charCodeAt(a)!==z)r++;else{switch(r>0&&(e+=i.slice(t,t+r)),i.charCodeAt(++a)){case V:e+='"';break;case ee:{const{u8s:t,end:n}=this.toUTF8_(a-1,i);a=n-1,e+=t;break}case z:e+="\\";break;case q:e+="/";break;case I:e+="\b";break;case Y:e+="\f";break;case Z:e+="\n";break;case Q:e+="\r";break;case $:e+="\t"}t=a+1,r=0}return r>0&&(e+=i.slice(t,t+r)),e}currentString(){return 5!==this.m_currentTokenType&&6!==this.m_currentTokenType?this.currentTerminalAsString_():this.m_bHasEscapes?this.unquoteCurrentString_():this.m_getCurrentSubstr().slice(1,this.m_endToken-this.m_startToken-2+1)}currentDoubleValue(){if(7!==this.m_currentTokenType&&8!==this.m_currentTokenType&&9!==this.m_currentTokenType&&6!==this.m_currentTokenType&&10!==this.m_currentTokenType&&(0,r.a)("invalid token"),10===this.m_currentTokenType)return Number.NaN;let e=this.m_getCurrentSubstr(),t=this.m_endToken-this.m_startToken;if(6===this.m_currentTokenType){if("NaN"===this.currentString())return Number.NaN;e=e.slice(1),t-=2,0===t&&(0,r.a)("invalid token")}const n=Number.parseFloat(e);if(6===this.m_currentTokenType)Number.isNaN(n)&&(0,r.a)("invalid token");else if(Number.isNaN(n))return Number.NaN;return n}currentInt32Value(){8!==this.m_currentTokenType&&6!==this.m_currentTokenType&&(0,r.a)("invalid token");let e=this.m_getCurrentSubstr(),t=this.m_endToken-this.m_startToken;6===this.m_currentTokenType&&(e=e.slice(1),t-=2,0===t&&(0,r.a)("invalid token"));const n=parseInt(e);return Number.isNaN(n)&&(0,r.a)("invalid token"),n}currentInt64Value(){return(0,r.g)(0),0n}currentBoolValue(){return(0,r.g)(0),!1}isError(){return 0}JSONString(){return(0,r.g)(0),""}pushPosition(){return(0,r.g)(0),!1}popPosition(){return(0,r.g)(0),!1}skipCStyleComments_(){(0,r.g)(0)}skipCppStyleComments_(){(0,r.g)(0)}skipComments_(){this.m_prepSubstr();let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&(0,r.a)("invalid token"),e=this.m_peekChar(),e===O?this.skipCStyleComments_():e===q?this.skipCppStyleComments_():(0,r.a)("invalid token")}skipWhiteSpace_(){let e;do{this.m_eof()&&(0,r.a)("invalid token");let t=this.m_peekChar();for(;t>=9&&t<=13||32===t;)this.m_increment(),this.m_eof()&&(0,r.a)("invalid token"),t=this.m_peekChar();t===q?(this.m_startToken=this.m_endToken,e=!0,this.skipComments_()):e=!1}while(e)}rightBracket_(){return this.m_peekChar()===M&&(this.m_startToken=this.m_endToken,this.m_increment(),this.m_currentTokenType=4,!0)}rightBrace_(){return this.m_peekChar()===U&&(this.m_startToken=this.m_endToken,this.m_increment(),this.m_currentTokenType=3,!0)}string_(){this.m_prepSubstr(),this.m_bHasEscapes=!1,this.m_stepOverChar(),this.m_eof()&&(0,r.a)("invalid token");let e=this.m_peekChar();for(;e!==V;){const t=e===z;if(this.m_stepOverChar(),this.m_eof()&&(0,r.a)("invalid token"),e=this.m_peekChar(),t)if(this.m_bHasEscapes=!0,e===V||e===z||e===q||e===I||e===Y||e===Z||e===Q||e===$)this.m_stepOverChar(),this.m_eof()&&(0,r.a)("invalid token"),e=this.m_peekChar();else if(e===ee)for(let t=0;t<4;t++)this.m_stepOverChar(),this.m_eof()&&(0,r.a)("invalid token"),e=this.m_peekChar(),e>=te&&e<=ne||e>=F&&e<=Y||e>=j&&e<=L||(0,r.a)("invalid token");else(0,r.a)("invalid token")}this.m_stepOverChar()}comma_(){return this.m_peekChar()===R&&(this.m_increment(),!0)}colon_(){return this.m_peekChar()===P&&(this.m_increment(),!0)}fieldNameEnd_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.colon_()?(this.skipWhiteSpace_(),this.value_()):(0,r.a)("invalid token")}fieldNameStart_(){this.m_startToken=this.m_endToken,this.m_peekChar()!==V&&(0,r.a)("invalid token"),this.string_(),this.m_currentTokenType=5,this.m_functionStack.push(()=>this.fieldNameEnd_())}pairEnd_(){this.skipWhiteSpace_(),this.comma_()?(this.skipWhiteSpace_(),this.fieldNameStart_()):this.rightBrace_()?this.m_functionStack.pop():(0,r.a)("invalid token")}arrayStart_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.rightBracket_()||(this.m_functionStack.push(()=>this.elementEnd_()),this.value_())}elementEnd_(){this.skipWhiteSpace_(),this.comma_()?(this.skipWhiteSpace_(),this.value_()):this.rightBracket_()?this.m_functionStack.pop():(0,r.a)("invalid token")}objectStart_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.rightBrace_()||(this.m_functionStack.push(()=>this.pairEnd_()),this.fieldNameStart_())}valueStartObject_(){this.m_increment(),this.m_currentTokenType=1,this.m_functionStack.push(()=>this.objectStart_())}valueStartArray_(){this.m_increment(),this.m_currentTokenType=2,this.m_functionStack.push(()=>this.arrayStart_())}valueString_(){this.string_(),this.m_currentTokenType=6}int_(){this.m_peekChar()!==te?this.digits_():this.m_stepOverChar()}digits_(){let e=this.m_peekChar();do{this.m_stepOverChar(),this.m_eof()&&(0,r.a)("invalid token"),e=this.m_peekChar()}while(e>=te&&e<=ne)}frac_(){let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&(0,r.a)("invalid token"),e=this.m_peekChar(),e>=te&&e<=ne||(0,r.a)("invalid token"),this.digits_()}exp_(){let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&(0,r.a)("invalid token"),e=this.m_peekChar(),e!==J&&e!==K||(this.m_stepOverChar(),this.m_eof()&&(0,r.a)("invalid token"),e=this.m_peekChar()),e>=te&&e<=ne||(0,r.a)("invalid token"),this.digits_()}valueNumber_(){this.m_prepSubstr();let e=!1,t=this.m_peekChar();if(t===K?(this.m_stepOverChar(),this.m_eof()&&(0,r.a)("invalid token"),t=this.m_peekChar(),e=!0,t>=te&&t<=ne||(0,r.a)("invalid token"),this.int_()):this.int_(),t=this.m_peekChar(),t===B)this.m_currentTokenType=7,this.frac_(),t=this.m_peekChar(),t!==W&&t!==X||this.exp_();else if(t===W||t===X)this.m_currentTokenType=7,this.exp_();else{let t=0;e&&t++;const n=this.m_endToken-this.m_startToken-t;if(n<10)this.m_currentTokenType=8;else if(10===n){const n=this.m_getCurrentSubstr();e?n.slice(t)<="2147483648"?this.m_currentTokenType=8:this.m_currentTokenType=9:n.slice(t)<="2147483647"?this.m_currentTokenType=8:this.m_currentTokenType=9}else if(n<19)this.m_currentTokenType=9;else if(19===n){const n=this.m_getCurrentSubstr();e?n.slice(t)<="9223372036854775808"?this.m_currentTokenType=9:this.m_currentTokenType=7:n.slice(t)<="9223372036854775807"?this.m_currentTokenType=9:this.m_currentTokenType=7}else this.m_currentTokenType=7}}valueNull_(){const{s:e,bDone:t}=this.m_get(5);t&&(0,r.a)("invalid token"),"null"!==e&&(0,r.a)("invalid token"),this.m_currentTokenType=10}valueTrue_(){const{s:e,bDone:t}=this.m_get(5);t&&(0,r.a)("invalid token"),"true"!==e&&(0,r.a)("invalid token"),this.m_currentTokenType=11}valueFalse_(){const{s:e,bDone:t}=this.m_get(6);t&&(0,r.a)("invalid token"),"false"!==e&&(0,r.a)("invalid token"),this.m_currentTokenType=12}valueNan_(){const{s:e,bDone:t}=this.m_get(4);t&&(0,r.a)("invalid token"),"NaN"!==e&&(0,r.a)("invalid token"),this.m_currentTokenType=7}value_(){this.m_startToken=this.m_endToken;const e=this.m_peekChar();e===G?this.valueStartObject_():e===E?this.valueStartArray_():e===V?this.valueString_():e===K||e>=te&&e<=te+9?this.valueNumber_():e===Z?this.valueNull_():e===$?this.valueTrue_():e===Y?this.valueFalse_():e===H?this.valueNan_():(0,r.a)("invalid token")}start_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.m_functionStack.push(()=>this.accept_());const e=this.m_peekChar();e!==G&&e!==E&&(0,r.a)("invalid token"),this.value_()}accept_(){this.m_startToken=this.m_endToken,this.m_currentTokenType=0}}const ie=new class{constructor(){this.m_pendingKey=null,this.m_acceptedObject=null,this.m_currentObject=[]}reset(){this.m_pendingKey=null,this.m_acceptedObject=null,this.m_currentObject.length=0}startObject(){const e={};this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):Array.isArray(this.m_currentObject.at(-1))&&this.m_currentObject.at(-1).push(e),this.m_currentObject.push(e)}startArray(){const e=[];this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):Array.isArray(this.m_currentObject.at(-1))&&this.m_currentObject.at(-1).push(e),this.m_currentObject.push(e)}endObject(){this.m_acceptedObject=this.m_currentObject.at(-1),this.m_currentObject.pop()}endArray(){this.m_currentObject.pop()}addFieldName(e){this.m_pendingKey=e}addValue_(e){this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):this.m_currentObject.at(-1).push(e)}addString(e){this.addValue_(e)}addDouble(e,t){this.addValue_(e)}addInt64(e){(0,r.g)(0)}addInt32(e){this.addValue_(e)}addBool(e){this.addValue_(e)}addNull(){this.addValue_(null)}getObject(){return this.m_acceptedObject}},ae=new class{getOperatorType(){return 10405}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(e,t,n,i,s,o){!function(e,t,n,i){if(t||n){if(i.startObject(),null!==t)switch(t.getGeometryType()){case r.G.enumPolygon:C(!0,e,t,i);break;case r.G.enumPolyline:C(!1,e,t,i);break;case r.G.enumMultiPoint:!function(e,t,n){const i=t.getImpl(),a=i.hasAttribute(1)&&!(2&e),s=i.hasAttribute(2)&&!(4&e),o=i.hasAttribute(3)&&!(8&e);a&&(n.addFieldName("hasZ"),n.addBool(!0)),s&&(n.addFieldName("hasM"),n.addBool(!0)),n.addFieldName("points");const u=t.getPointCount();if(t.isEmpty())n.startArray(),n.endArray();else{const t=17-(31&e>>13);n.startArray();const r=i.getAttributeStreamRef(0);let o=null,m=null;a&&(o=i.getAttributeStreamRef(1)),s&&(m=i.getAttributeStreamRef(2));for(let e=0;e<u;e++){const i=r.read(2*e),u=r.read(2*e+1);let l=Number.NaN,c=Number.NaN;a&&(l=o.read(e)),s&&(c=m.read(e)),D(a,s,i,u,l,c,t,n)}n.endArray()}if(o){let e=null;i.isEmpty()||(e=i.getAttributeStreamRef(3)),(0,r.g)(0===u||null!==e&&e.size()>=u),n.addFieldName("ids"),n.startArray();for(let t=0;t<u;t++)n.addInt32(e.read(t));n.endArray()}}(e,t,i);break;case r.G.enumPoint:!function(e,t,n){const r=t.hasAttribute(1)&&!(2&e),i=t.hasAttribute(2)&&!(4&e),a=t.hasAttribute(3)&&!(8&e);if(t.isEmpty())return n.addFieldName("x"),n.addNull(),n.addFieldName("y"),n.addNull(),r&&(n.addFieldName("z"),n.addNull()),i&&(n.addFieldName("m"),n.addNull()),void(a&&(n.addFieldName("id"),n.addInt32(0)));const s=17-(31&e>>13);n.addFieldName("x"),n.addDouble(t.getX(),s),n.addFieldName("y"),n.addDouble(t.getY(),s),r&&(n.addFieldName("z"),n.addDouble(t.getZ(),s)),i&&(n.addFieldName("m"),n.addDouble(t.getM(),s)),a&&(n.addFieldName("id"),n.addInt32(t.getID()))}(e,t,i);break;case r.G.enumEnvelope:!function(e,t,n){const r=t.hasAttribute(1)&&!(2&e),i=t.hasAttribute(2)&&!(4&e),a=t.hasAttribute(3)&&!(8&e);if(t.isEmpty())return n.addFieldName("xmin"),n.addNull(),n.addFieldName("ymin"),n.addNull(),n.addFieldName("xmax"),n.addNull(),n.addFieldName("ymax"),n.addNull(),r&&(n.addFieldName("zmin"),n.addNull(),n.addFieldName("zmax"),n.addNull()),i&&(n.addFieldName("mmin"),n.addNull(),n.addFieldName("mmax"),n.addNull()),void(a&&(n.addFieldName("idmin"),n.addInt32(0),n.addFieldName("idmax"),n.addInt32(0)));const s=17-(31&e>>13);if(n.addFieldName("xmin"),n.addDouble(t.getXMin(),s),n.addFieldName("ymin"),n.addDouble(t.getYMin(),s),n.addFieldName("xmax"),n.addDouble(t.getXMax(),s),n.addFieldName("ymax"),n.addDouble(t.getYMax(),s),r){const e=t.queryInterval(1,0);n.addFieldName("zmin"),n.addDouble(e.vmin,s),n.addFieldName("zmax"),n.addDouble(e.vmax,s)}if(i){const e=t.queryInterval(2,0);n.addFieldName("mmin"),n.addDouble(e.vmin,s),n.addFieldName("mmax"),n.addDouble(e.vmax,s)}if(a){const e=t.queryInterval(3,0);n.addFieldName("idmin"),n.addInt32(e.vmin),n.addFieldName("idmax"),n.addInt32(e.vmax)}}(e,t,i);break;case r.G.enumMultipatch:(0,r.g)(0);break;default:(0,r.d)("exportToJSON")}null!==n&&(i.addFieldName("spatialReference"),function(e,t,n){n.startObject();let i=0;t.isCustomWkid()||(i=t.getOldID());let s=0;const o=t.getVCS();if(null!==o&&(o.isCustomWkid()||(s=o.getOldID()),s<=0&&(i=0)),i>0){n.addFieldName("wkid"),n.addInt32(i);const e=t.getLatestID();if(e>0&&e!==i&&(n.addFieldName("latestWkid"),n.addInt32(e)),s>0){n.addFieldName("vcsWkid"),n.addInt32(s);const e=t.getLatestVerticalID();e!==s&&(n.addFieldName("latestVcsWkid"),n.addInt32(e))}}if(0===t.getCoordinateSystemType())n.addFieldName("wkid"),n.addNull(),null!==t.getUnit()&&(n.addFieldName("unit"),function(e,t,n){n.startObject();const i=t.getID();i<=0&&(0,r.a)("cannot export unit that has no valid WKID"),n.addFieldName("uwkid"),n.addInt32(i),n.endObject()}(0,t.getUnit(),n));else if(i<=0||1&e){let r="";64&e&&(r=t.getText2(),n.addFieldName("wkt2"),n.addString(r));const i=t.getText();i!==r&&(n.addFieldName("wkt"),n.addString(i))}if(16&e){const e=new a.a;t.queryPrecisionDescriptor(e),n.addFieldName("xyTolerance"),n.addDouble(e.getTolerance(0)),n.addFieldName("zTolerance"),n.addDouble(e.getTolerance(1)),n.addFieldName("mTolerance"),n.addDouble(e.getTolerance(2)),n.addFieldName("falseX"),n.addDouble(e.getFalseX()),n.addFieldName("falseY"),n.addDouble(e.getFalseY()),n.addFieldName("xyUnits"),n.addDouble(e.getGridUnitsXY()),n.addFieldName("falseZ"),n.addDouble(e.getFalseZ()),n.addFieldName("zUnits"),n.addDouble(e.getGridUnitsZ()),n.addFieldName("falseM"),n.addDouble(e.getFalseM()),n.addFieldName("mUnits"),n.addDouble(e.getGridUnitsM())}n.endObject()}(e,n,i)),i.endObject()}}(e,t,n,i)}exportSpatialReference(e,t,n,i){(0,r.g)(0)}exportProjectionTransformation(e,t,n,i){(0,r.g)(0)}exportDatumTransformation(e,t,n,i){(0,r.g)(0)}static geometryTypeToString(e){return(0,r.g)(0),""}},se=new class{getOperatorType(){return 10404}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(e,t,n,i,u,m,l){let c;"string"==typeof n?(c=new re({jsonString:n}),c.nextToken()):c=n,1!==c.currentToken()&&(0,r.a)("failed to import map geometry: start of object is expected");const d=function(e,t,n,i,a){let u=!1,m=!1,l=!1,c=!1,d=!1,h=!1,g=!1,N=!1,T=!1,v=!1,x=!1,A=!1,S=!1,w=!1,C=!1,D=!1,F=!1,j=!1,O=!1,I=!1,z=!1,E=!1,G=!1,P=!1,B=Number.NaN,R=Number.NaN,V=Number.NaN,M=Number.NaN,U=0,W=Number.NaN,X=Number.NaN,Y=Number.NaN,L=Number.NaN,q=Number.NaN,K=Number.NaN,J=Number.NaN,Z=Number.NaN,H=0,Q=0,$=!1,ee=!1,te=null,ne=null,re=null,ie=null,ae=null;for(;3!==n.nextToken();){const t=n.currentString();if(n.nextToken(),"spatialReference"===t){if(a&&!u){u=!0,1===n.currentToken()?ie=_(n):10!==n.currentToken()&&(0,r.a)("failed to parse spatial reference: object or null is expected");continue}}else if(i)if("hasZ"===t){if(!m){m=!0,$=11===n.currentToken();continue}}else if("hasM"===t){if(!l){l=!0,ee=11===n.currentToken();continue}}else if("rings"===t){if(!(d||h||e!==r.G.enumUnknown&&e!==r.G.enumPolygon)){d=!0,({geometry:ae,as:te,bs:ne}=f(!0,!1,0,n));continue}}else if("curveRings"===t){if(!h&&(e===r.G.enumUnknown||e===r.G.enumPolygon)){h=!0,({geometry:ae,as:te,bs:ne}=f(!0,!0,0,n));continue}}else if("paths"===t){if(!(g||N||e!==r.G.enumUnknown&&e!==r.G.enumPolyline)){g=!0,({geometry:ae,as:te,bs:ne}=f(!1,!1,0,n));continue}}else if("curvePaths"===t){if(!N&&(e===r.G.enumUnknown||e===r.G.enumPolyline)){N=!0,({geometry:ae,as:te,bs:ne}=f(!1,!0,0,n));continue}}else if("points"===t){if(!T&&(e===r.G.enumUnknown||e===r.G.enumMultiPoint)){T=!0,({geometry:ae,as:te,bs:ne}=p(0,n));continue}}else if("ids"===t){if(!c){c=!0,re=k(0,n);continue}}else if("x"===t){if(!v&&(e===r.G.enumUnknown||e===r.G.enumPoint)){v=!0,B=b(n);continue}}else if("y"===t){if(!x&&(e===r.G.enumUnknown||e===r.G.enumPoint)){x=!0,R=b(n);continue}}else if("z"===t){if(!A&&(e===r.G.enumUnknown||e===r.G.enumPoint)){A=!0,V=b(n);continue}}else if("m"===t){if(!S&&(e===r.G.enumUnknown||e===r.G.enumPoint)){S=!0,M=b(n);continue}}else if("id"===t){if(!w&&(e===r.G.enumUnknown||e===r.G.enumPoint)){w=!0,U=y(n);continue}}else if("xmin"===t){if(!C&&(e===r.G.enumUnknown||e===r.G.enumEnvelope)){C=!0,W=b(n);continue}}else if("ymin"===t){if(!D&&(e===r.G.enumUnknown||e===r.G.enumEnvelope)){D=!0,X=b(n);continue}}else if("mmin"===t){if(!z&&(e===r.G.enumUnknown||e===r.G.enumEnvelope)){z=!0,J=b(n);continue}}else if("zmin"===t){if(!O&&(e===r.G.enumUnknown||e===r.G.enumEnvelope)){O=!0,q=b(n);continue}}else if("idmin"===t){if(!G&&(e===r.G.enumUnknown||e===r.G.enumEnvelope)){G=!0,H=y(n);continue}}else if("xmax"===t){if(!F&&(e===r.G.enumUnknown||e===r.G.enumEnvelope)){F=!0,Y=b(n);continue}}else if("ymax"===t){if(!j&&(e===r.G.enumUnknown||e===r.G.enumEnvelope)){j=!0,L=b(n);continue}}else if("mmax"===t){if(!E&&(e===r.G.enumUnknown||e===r.G.enumEnvelope)){E=!0,Z=b(n);continue}}else if("zmax"===t){if(!I&&(e===r.G.enumUnknown||e===r.G.enumEnvelope)){I=!0,K=b(n);continue}}else if("idmax"===t){if(!P&&(e===r.G.enumUnknown||e===r.G.enumEnvelope)){P=!0,Q=y(n);continue}}else"materials"===t&&(0,r.g)(0);n.skipChildren()}if(d||h||g||N||T){let e=null,t=null;const n=ae;$&&(ae.addAttribute(1),e=te,e||(e=(0,s.a1)(n.getPointCount(),Number.NaN))),ee&&(ae.addAttribute(2),t=$?ne:te),null!=re&&ae.addAttribute(3),$&&null!=e&&n.setAttributeStreamRef(1,e),ee&&null!=t&&n.setAttributeStreamRef(2,t),null!=re&&function(e,t){if(e.isEmpty())return;const n=(0,s.a6)(2,0),i=e.getGeometryType();let a=0;i===o.M.type?a=1:i===o.P.type||i===o.a.type?a=e.getPathCount():(0,r.d)("not implemented"),n.resize(e.getPointCount(),0);let u=0;for(let s=0;s<a;++s){const a=t.read(u);u++;const m=u+a;let l=0,c=0;i===o.M.type?l=e.getPointCount():i===o.P.type||i===o.a.type?(l=e.getPathSize(s),c=e.getPathStart(s)):(0,r.d)("not implemented");for(let e=0,r=Math.min(a,l);e<r;++e)n.write(c,t.read(u)),u++,c++;u=m}e.getImpl().setAttributeStreamRef(3,n)}(n,re)}else if(v||x||S||A||w){(0,s.a4)(B,R)||(0,r.a)("failed to parse point: x and y must be finite or nan"),(Number.isNaN(R)||Number.isNaN(B))&&(B=Number.NaN,R=Number.NaN);const e=new s.P({x:B,y:R});A&&e.setZ(V),S&&e.setM(M),w&&e.setID(U),ae=e}else if(C||D||F||j||O||I||z||E||G||P){(Number.isNaN(X)||Number.isNaN(Y)||Number.isNaN(L))&&(W=Number.NaN);const e=new s.E({xmin:W,ymin:X,xmax:Y,ymax:L});O&&I&&e.setInterval(1,0,q,K),z&&E&&e.setInterval(2,0,J,Z),G&&P&&e.setInterval(3,0,H,Q),ae=e}return{...ae?{geom:ae}:{},...ie?{sr:ie}:{}}}(t,0,c,i,u);return new a.aY(d)}importSpatialReference(e){const t=_(e);return null===t&&(0,r.d)("failed to import spatial reference"),t}importProjectionTransformation(e,t){return(0,r.g)(0),{}}importDatumTransformation(e,t){return(0,r.g)(0),{}}static stringToGeometryType(e){return(e=e.toLowerCase()).startsWith("esrigeometry")||(0,r.a)("string_to_geometry_type"),e.endsWith("point")?r.G.enumPoint:e.endsWith("envelope")?r.G.enumEnvelope:e.endsWith("multipoint")?r.G.enumMultiPoint:e.endsWith("polyline")?r.G.enumPolyline:e.endsWith("polygon")?r.G.enumPolygon:void(0,r.a)("string_to_geometry_type")}};function oe(e){return Array.isArray(e)?e[0].spatialReference:e.spatialReference}function ue(e,t){const{includeGeometry:n=!0,includeSpatialReference:i=!0}=t??{},a=new c(e,{strict:!1});return a.nextToken(),se.execute(0,r.G.enumUnknown,a,n,i)}function me(e){let t=null;return[e.map(e=>{if(null==t){const n=le(e);return t=n.getSpatialReference(),n.getGeometry()}return ce(e)}),t]}function le(e){return e.spatialReference instanceof u.A&&(e={...e,spatialReference:e.spatialReference.toJSON()}),ue(e)}function ce(e){return ue(e,{includeSpatialReference:!1}).getGeometry()}function de(e){return e instanceof u.A&&(e=e.toJSON()),ue({spatialReference:e},{includeGeometry:!1}).getSpatialReference()}function he(e,t){return e instanceof a.aY&&(t=e.getSpatialReference(),e=e.getGeometry()),e?.isEmpty()?null:(ie.reset(),ae.execute(0,e,t,ie),ie.getObject())}},90293:(e,t,n)=>{n(79187),n(55537),n(88885),n(95213),n(83661);var r=n(39117),i=n(83047),a=n(21325);(0,r.k)()||(0,r.l)(e=>{let t,n;"number"==typeof e?t=e:n=e;const r={wkid:t,wkt:n};let s,o;if(n){s=(0,i.x1)(n);const e=(0,a.EA)(r);if(!s&&!e)throw new Error(`Unsupported WKT type: ${n}`)}else s=!(0,a.EA)(r);return o=t&&i.yD.has(t)?Math.PI/200:s?(0,i.Ao)(r):Math.PI/180,{isPCS:s,metersOrRadiansPerUnit:o,semiMajor:0,wkidOrWkt:e}})}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2095],{64476:(e,t,n)=>{n.d(t,{ElevationQuery:()=>I});var i=n(60999),s=n(49186),a=n(97768),l=n(74887),o=n(83047),r=n(98988),c=n(19419),u=(n(44208),n(65529)),h=n(53966),m=n(86738),f=n(16930),p=n(28735);const d=()=>h.A.getLogger("esri.layers.support.ElevationSampler");class y extends u.a${queryElevation(e){return function(e,t){const n=v(e,t.spatialReference);if(!n)return null;switch(e.type){case"point":return function(e,t,n){return e.hasZ=!0,e.z=n.elevationAt(t.x,t.y),e}(e,n,t);case"polyline":return function(e,t,n){T.spatialReference=t.spatialReference;const i=e.hasM&&!e.hasZ;for(let s=0;s<e.paths.length;s++){const a=e.paths[s],l=t.paths[s];for(let e=0;e<a.length;e++){const t=a[e],s=l[e];T.x=s[0],T.y=s[1],i&&(t[3]=t[2]),t[2]=n.elevationAt(T.x,T.y)}}return e.hasZ=!0,e}(e,n,t);case"multipoint":return function(e,t,n){T.spatialReference=t.spatialReference;const i=e.hasM&&!e.hasZ;for(let s=0;s<e.points.length;s++){const a=e.points[s],l=t.points[s];T.x=l[0],T.y=l[1],i&&(a[3]=a[2]),a[2]=n.elevationAt(T.x,T.y)}return e.hasZ=!0,e}(e,n,t);default:return null}}(e.clone(),this)}}class x extends y{get spatialReference(){return this.extent.spatialReference}constructor(e,t,n){super(),this.tile=e,this.noDataValue=n;const i=e.tile.extent;this.extent=(0,c.w1)(i,t.spatialReference),this.extent.zmin=e.zmin,this.extent.zmax=e.zmax,this._aaExtent=i;const s=(0,o.GA)(t.spatialReference),a=t.lodAt(e.tile.level).resolution*s;this.demResolution={min:a,max:a}}contains(e){const t=v(e,this.spatialReference);return null!=t&&this.containsAt(t.x,t.y)}containsAt(e,t){return(0,c.Rj)(this._aaExtent,e,t)}elevationAt(e,t){if(!this.containsAt(e,t)){const n=this.extent,i=`${n.xmin}, ${n.ymin}, ${n.xmax}, ${n.ymax}`;return d().warn("#elevationAt()",`Point used to sample elevation (${e}, ${t}) is outside of the sampler extent (${i})`),this.noDataValue}return this.tile.sample(e,t)??this.noDataValue}}class w extends y{get spatialReference(){return this.extent.spatialReference}constructor(e,t,n){let i;super(),"number"==typeof t?(this.noDataValue=t,this.samplers=e):(i=t,this.noDataValue=n,this.samplers=e.map(e=>new x(e,i,this.noDataValue)));const s=this.samplers[0];if(s){this.extent=s.extent.clone();const{min:e,max:t}=s.demResolution;this.demResolution={min:e,max:t};for(let e=1;e<this.samplers.length;e++){const t=this.samplers[e];this.extent.union(t.extent),this.demResolution.min=Math.min(this.demResolution.min,t.demResolution.min),this.demResolution.max=Math.max(this.demResolution.max,t.demResolution.max)}}else this.extent=(0,c.w1)((0,c.vt)(),i?.spatialReference??f.A.WGS84),this.demResolution={min:0,max:0}}elevationAt(e,t){let n;for(const i of this.samplers)if(i.containsAt(e,t)&&(n=i.elevationAt(e,t),n!==i.noDataValue))return n;return null!=n?n:(d().warn("#elevationAt()",`Point used to sample elevation (${e}, ${t}) is outside of the sampler`),this.noDataValue)}}function v(e,t){if(null==e)return null;const n=e.spatialReference;if(n.equals(t))return e;const i=(0,p.Cv)(e,t);return i||d().error(`Cannot project geometry spatial reference (wkid:${n.wkid}) to elevation sampler spatial reference (wkid:${t.wkid})`),i}const T=new m.A;class g{constructor(e,t){this.data=e,this.safeWidth=.99999999*(e.width-1),this.dx=(e.width-1)/(t[2]-t[0]),this.dy=(e.width-1)/(t[3]-t[1]),this.x0=t[0],this.y1=t[3]}}class R{constructor(e,t=null){if(this.tile=e,null!=t&&null!=e){const n=e.extent;this._samplerData=new g(t,n)}}get zmin(){return null!=this._samplerData?this._samplerData.data.minValue:0}get zmax(){return null!=this._samplerData?this._samplerData.data.maxValue:0}get hasNoDataValues(){return!!this._samplerData?.data.hasNoDataValues}sample(e,t){if(null==this._samplerData)return;const{safeWidth:n,data:i,dx:s,dy:a,y1:l,x0:o}=this._samplerData,{width:r,values:c,noDataValue:u}=i,h=A(a*(l-t),0,n),m=A(s*(e-o),0,n),f=Math.floor(h),p=Math.floor(m),d=f*r+p,y=d+r,x=c[d],w=c[y],v=c[d+1],T=c[y+1];if(x!==u&&w!==u&&v!==u&&T!==u){const e=m-p,t=x+(v-x)*e;return t+(w+(T-w)*e-t)*(h-f)}}}function A(e,t,n){return e<t?t:e>n?n:e}var _=n(48526),E=n(82799);class D{export(){return this._exporter(this.coordinates,this.spatialReference)}clone(e){const t=new D;return t.geometry=this.geometry,t.spatialReference=this.spatialReference,t.coordinates=e||this.coordinates.map(e=>e.clone()),t._exporter=this._exporter,t}async project(e,t){if(this.spatialReference.equals(e))return this.clone();await(0,r.initializeProjection)([{source:this.spatialReference,dest:e}],{signal:t});const n=new _.A({spatialReference:this.spatialReference,points:this.coordinates.map(e=>[e.x,e.y])}),i=(0,r.project)(n,e);if(!i)return null;const s=this.coordinates.map((e,t)=>{const n=e.clone(),s=i.points[t];return n.x=s[0],n.y=s[1],n}),a=this.clone(s);return a.spatialReference=e,a}static fromGeometry(e){const t=new D;if(t.geometry=e,t.spatialReference=e.spatialReference,e instanceof D)t.coordinates=e.coordinates.map(e=>e.clone()),t._exporter=(t,n)=>{const i=e.clone(t);return i.spatialReference=n,i};else switch(e.type){case"point":{const n=e,{hasZ:i,hasM:s}=n;t.coordinates=i&&s?[new q(n.x,n.y,n.z,n.m)]:i?[new q(n.x,n.y,n.z)]:s?[new q(n.x,n.y,null,n.m)]:[new q(n.x,n.y)],t._exporter=(t,n)=>e.hasM?new m.A(t[0].x,t[0].y,t[0].z,t[0].m,n):new m.A(t[0].x,t[0].y,t[0].z,n);break}case"multipoint":{const n=e,{hasZ:i,hasM:s}=n;t.coordinates=i&&s?n.points.map(e=>new q(e[0],e[1],e[2],e[3])):i?n.points.map(e=>new q(e[0],e[1],e[2])):s?n.points.map(e=>new q(e[0],e[1],null,e[2])):n.points.map(e=>new q(e[0],e[1])),t._exporter=(t,n)=>e.hasM?new _.A({points:t.map(e=>[e.x,e.y,e.z??0,e.m??0]),hasZ:!0,hasM:!0,spatialReference:n}):new _.A({points:t.map(e=>[e.x,e.y,e.z??0]),spatialReference:n});break}case"polyline":{const n=e,i=[],s=[],{hasZ:a,hasM:l}=e;let o=0;for(const e of n.paths)if(s.push([o,o+e.length]),o+=e.length,a&&l)for(const t of e)i.push(new q(t[0],t[1],t[2],t[3]));else if(a)for(const t of e)i.push(new q(t[0],t[1],t[2]));else if(l)for(const t of e)i.push(new q(t[0],t[1],null,t[2]));else for(const t of e)i.push(new q(t[0],t[1]));t.coordinates=i,t._exporter=(t,n)=>{const i=e.hasM?t.map(e=>[e.x,e.y,e.z??0,e.m??0]):t.map(e=>[e.x,e.y,e.z??0]),a=s.map(e=>i.slice(e[0],e[1]));return new E.A({paths:a,hasM:e.hasM,hasZ:!0,spatialReference:n})};break}}return t}}class q{constructor(e,t,n=null,i=null,s=null,a=null){this.x=e,this.y=t,this.z=n,this.m=i,this.tile=s,this.elevationTile=a}clone(){return new q(this.x,this.y,this.z,this.m)}}var C=n(72802);class I{async queryAll(e,t,n){if(!(e=n?.ignoreInvisibleLayers?e.filter(e=>e.visible):e.slice()).length)throw new s.A(P,"Elevation queries require at least one elevation layer to fetch tiles from");const i=D.fromGeometry(t);let a=!1;n?.returnSampleInfo||(a=!0);const l={...F,...n,returnSampleInfo:!0},o=await this.query(e[e.length-1],i,l),r=await this._queryAllContinue(e,o,l);return r.geometry=r.geometry.export(),a&&delete r.sampleInfo,r}async query(e,t,n){if(!e)throw new s.A(P,"Elevation queries require an elevation layer to fetch tiles from");if(!t||!(t instanceof D)&&"point"!==t.type&&"multipoint"!==t.type&&"polyline"!==t.type)throw new s.A("elevation-query:invalid-geometry","Only point, polyline and multipoint geometries can be used to query elevation");const i={...F,...n},l=new M(e,t.spatialReference,i),c=i.signal;return await e.load({signal:c}),await async function(e,t,n){let i;const a=e.layer.tileInfo.spatialReference;if(t instanceof D?i=await t.project(a,n):(await(0,r.initializeProjection)([{source:t.spatialReference,dest:a}],{signal:n}),i=(0,r.project)(t,a)),!i)throw new s.A("elevation-query:spatial-reference-mismatch",`Cannot query elevation in '${t.spatialReference.wkid}' on an elevation service in '${a.wkid}'`);e.geometry=D.fromGeometry(i)}(l,t,c),await this._selectTiles(l,c),await k(l,c),function(e){e.geometry.coordinates.forEach(t=>{const n=t.elevationTile;let i=e.parameters.noDataValue;if(n){const e=n.sample(t.x,t.y);null!=e?i=e:t.elevationTile=null}t.z=i})}(l),async function(e,t){const n=await e.geometry.project(e.outSpatialReference,t);(0,a.Lw)(n);const i={geometry:n.export(),noDataValue:e.parameters.noDataValue};return e.parameters.returnSampleInfo&&(i.sampleInfo=function(e){const t=e.layer.tileInfo,n=(0,o.GA)(t.spatialReference);return e.geometry.coordinates.map(i=>{let s=-1;return i.elevationTile&&i.elevationTile!==e.outsideExtentTile&&(s=t.lodAt(i.elevationTile.tile.level).resolution*n),{demResolution:s}})}(e)),e.geometry.coordinates.forEach(e=>{e.tile=null,e.elevationTile=null}),i}(l,c)}async createSampler(e,t,n){if(!e)throw new s.A(P,"Elevation queries require an elevation layer to fetch tiles from");if(!t||"extent"!==t.type)throw new s.A("elevation-query:invalid-extent","Invalid or undefined extent");const i={...F,...n};return this._createSampler(e,t,i)}async createSamplerAll(e,t,n){if(!(e=n?.ignoreInvisibleLayers?e.filter(e=>e.visible):e.slice()).length)throw new s.A(P,"Elevation queries require at least one elevation layer to fetch tiles from");if(!t||"extent"!==t.type)throw new s.A("elevation-query:invalid-extent","Invalid or undefined extent");const i={...F,...n,returnSampleInfo:!0},a=await this._createSampler(e[e.length-1],t,i);return this._createSamplerAllContinue(e,t,a,i)}async _createSampler(e,t,n,i){const s=n.signal;await e.load({signal:s});const a=t.spatialReference,l=e.tileInfo.spatialReference;a.equals(l)||(await(0,r.initializeProjection)([{source:a,dest:l}],{signal:s}),t=(0,r.project)(t,l));const o=new V(e,t,n,i);return await this._selectTiles(o,s),await k(o,s),new w(o.elevationTiles,o.layer.tileInfo,o.parameters.noDataValue)}async _createSamplerAllContinue(e,t,n,i){if(e.pop(),!e.length)return n;const s=n.samplers.filter(e=>!e.tile.hasNoDataValues).map(e=>(0,c.VY)(e.extent)),a=await this._createSampler(e[e.length-1],t,i,s);if(0===a.samplers.length)return n;const l=n.samplers.concat(a.samplers),o=new w(l,i.noDataValue);return this._createSamplerAllContinue(e,t,o,i)}async _queryAllContinue(e,t,n){const i=e.pop(),s=t.geometry.coordinates,l=t.sampleInfo;(0,a.Lw)(l);const o=[],r=[];for(let t=0;t<s.length;t++){const n=l[t];n.demResolution>=0?n.source||(n.source=i):e.length&&(o.push(s[t]),r.push(t))}if(!e.length||0===o.length)return t;const c=t.geometry.clone(o),u=await this.query(e[e.length-1],c,n),h=u.sampleInfo;if(!h)throw new Error("no sampleInfo");return r.forEach((e,t)=>{s[e].z=u.geometry.coordinates[t].z,l[e].demResolution=h[t].demResolution}),this._queryAllContinue(e,t,n)}async _selectTiles(e,t){"geometry"===e.type&&function(e){if(null==e.layer.fullExtent)return;const t=new R(null);t.sample=()=>e.parameters.noDataValue,e.outsideExtentTile=t;const n=e.layer.fullExtent;e.geometry.coordinates.forEach(e=>{const i=e.x,s=e.y;(i<n.xmin||i>n.xmax||s<n.ymin||s>n.ymax)&&(e.elevationTile=t)})}(e);const n=e.parameters.demResolution;if("number"==typeof n)!function(e,t){const n=function(e,t){const{tileInfo:n,tilemapCache:i}=e.layer,s=t/(0,o.GA)(n.spatialReference),a=b(n,i);let l=a[0],r=0;for(let e=1;e<a.length;e++){const t=a[e];Math.abs(t.resolution-s)<Math.abs(l.resolution-s)&&(l=t,r=e)}return r}(e,t);e.selectTilesAtLOD(n)}(e,n);else if("finest-contiguous"===n)await this._selectTilesFinestContiguous(e,t);else{if("auto"!==n)throw new s.A("elevation-query:invalid-dem-resolution",`Invalid dem resolution value '${n}', expected a number, "finest-contiguous" or "auto"`);await this._selectTilesAuto(e,t)}}async _selectTilesFinestContiguous(e,t){const{tileInfo:n,tilemapCache:i}=e.layer,s=S(n,i,e.parameters.minDemResolution);await this._selectTilesFinestContiguousAt(e,s,t)}async _selectTilesFinestContiguousAt(e,t,n){const i=e.layer;if(e.selectTilesAtLOD(t),t<0)return;const a=i.tilemapCache,o=e.getTilesToFetch();try{if(a&&!L(a))await(0,l.qr)(Promise.all(o.map(e=>a.fetchAvailability(e.level,e.row,e.col,{signal:n}))),n);else if(await k(e,n),!e.allElevationTilesFetched())throw e.clearElevationTiles(),new s.A("elevation-query:has-unavailable-tiles","Some elevation tiles are unavailable")}catch(i){(0,l.QP)(i),await this._selectTilesFinestContiguousAt(e,t-1,n)}}async _selectTilesAuto(e,t){(function(e){const{tileInfo:t,tilemapCache:n}=e.layer,i=S(t,n,e.parameters.minDemResolution);e.selectTilesAtLOD(i,e.parameters.maximumAutoTileRequests)})(e),function(e){const t=e.layer.tileInfo;let n=0;const i={},s=e=>{null!=e.id&&(e.id in i?i[e.id]++:(i[e.id]=1,n++))},a=e=>{if(null==e.id)return;const t=i[e.id];1===t?(delete i[e.id],n--):i[e.id]=t-1};e.forEachTileToFetch(s,a);let l=!0;for(;l&&(l=!1,e.forEachTileToFetch(i=>{n<=e.parameters.maximumAutoTileRequests||(a(i),t.upsampleTile(i)&&(l=!0),s(i))},a),l););}(e);const n=e.layer.tilemapCache;if(!n||L(n))return this._selectTilesAutoPrefetchUpsample(e,t);const s=e.getTilesToFetch(),a={},o=s.map(async e=>{const s=new C.U(null,0,0,0,(0,c.vt)()),o=await(0,i.Ke)(n.fetchAvailabilityUpsample(e.level,e.row,e.col,s,{signal:t}));!1!==o.ok?null!=e.id&&(a[e.id]=s):(0,l.QP)(o.error)});await(0,l.qr)(Promise.all(o),t),e.remapTiles(a)}async _selectTilesAutoPrefetchUpsample(e,t){const n=e.layer.tileInfo;await k(e,t);let i=!1;e.forEachTileToFetch((e,t)=>{n.upsampleTile(e)?i=!0:t()}),i&&await this._selectTilesAutoPrefetchUpsample(e,t)}}class z{constructor(e,t){this.layer=e,this.parameters=t}}class M extends z{constructor(e,t,n){super(e,n),this.outSpatialReference=t,this.type="geometry"}selectTilesAtLOD(e){if(e<0)this.geometry.coordinates.forEach(e=>e.tile=null);else{const{tileInfo:t,tilemapCache:n}=this.layer,i=b(t,n)[e].level;this.geometry.coordinates.forEach(e=>e.tile=t.tileAt(i,e.x,e.y))}}allElevationTilesFetched(){return!this.geometry.coordinates.some(e=>!e.elevationTile)}clearElevationTiles(){for(const e of this.geometry.coordinates)e.elevationTile!==this.outsideExtentTile&&(e.elevationTile=null)}populateElevationTiles(e){for(const t of this.geometry.coordinates)!t.elevationTile&&t.tile?.id&&(t.elevationTile=e[t.tile.id])}remapTiles(e){for(const t of this.geometry.coordinates){const n=t.tile?.id;t.tile=n?e[n]:null}}getTilesToFetch(){const e={},t=[];for(const n of this.geometry.coordinates){const i=n.tile;if(!i)continue;const s=n.tile?.id;n.elevationTile||!s||e[s]||(e[s]=i,t.push(i))}return t}forEachTileToFetch(e){for(const t of this.geometry.coordinates)t.tile&&!t.elevationTile&&e(t.tile,()=>t.tile=null)}}class V extends z{constructor(e,t,n,i){super(e,n),this.type="extent",this.elevationTiles=[],this._candidateTiles=[],this._fetchedCandidates=new Set,this.extent=t.clone().intersection(e.fullExtent),this.maskExtents=i}selectTilesAtLOD(e,t){const n=this._maximumLodForRequests(t),i=Math.min(n,e);i<0?this._candidateTiles.length=0:this._selectCandidateTilesCoveringExtentAt(i)}_maximumLodForRequests(e){const{tileInfo:t,tilemapCache:n}=this.layer,i=b(t,n);if(!e)return i.length-1;const s=this.extent;if(null==s)return-1;for(let n=i.length-1;n>=0;n--){const a=i[n],l=a.resolution*t.size[0],o=a.resolution*t.size[1];if(Math.ceil(s.width/l)*Math.ceil(s.height/o)<=e)return n}return-1}allElevationTilesFetched(){return this._candidateTiles.length===this.elevationTiles.length}clearElevationTiles(){this.elevationTiles.length=0,this._fetchedCandidates.clear()}populateElevationTiles(e){for(const t of this._candidateTiles){const n=t.id&&e[t.id];n&&(this._fetchedCandidates.add(t),this.elevationTiles.push(n))}}remapTiles(e){this._candidateTiles=$(this._candidateTiles.map(t=>e[t.id]))}getTilesToFetch(){return this._candidateTiles}forEachTileToFetch(e,t){const n=this._candidateTiles;this._candidateTiles=[],n.forEach(n=>{if(this._fetchedCandidates.has(n))return void t?.(n);let i=!1;e(n,()=>i=!0),i?t?.(n):this._candidateTiles.push(n)}),this._candidateTiles=$(this._candidateTiles,t)}_selectCandidateTilesCoveringExtentAt(e){this._candidateTiles.length=0;const t=this.extent;if(null==t)return;const{tileInfo:n,tilemapCache:i}=this.layer,s=b(n,i)[e],a=n.tileAt(s.level,t.xmin,t.ymin),l=a.extent;if(null==l)return;const o=s.resolution*n.size[0],r=s.resolution*n.size[1],c=Math.ceil((t.xmax-l[0])/o),u=Math.ceil((t.ymax-l[1])/r);for(let e=0;e<u;e++)for(let t=0;t<c;t++){const i=new C.U(null,a.level,a.row-e,a.col+t);n.updateTileInfo(i),this._tileIsMasked(i)||this._candidateTiles.push(i)}}_tileIsMasked(e){return!!this.maskExtents&&this.maskExtents.some(t=>e.extent&&(0,c.gR)(t,e.extent))}}function S(e,t,n=0){const i=b(e,t);let s=i.length-1;if(n>0){const t=n/(0,o.GA)(e.spatialReference),a=i.findIndex(e=>e.resolution<t);0===a?s=0:a>0&&(s=a-1)}return s}const F={maximumAutoTileRequests:20,noDataValue:0,returnSampleInfo:!1,demResolution:"auto",minDemResolution:0,signal:null};function b(e,t){const n=e.lods;if(L(t)){const{effectiveMinLOD:e,effectiveMaxLOD:i}=t;return n.filter(t=>t.level>=e&&t.level<=i)}return n}async function k(e,t){const n=e.getTilesToFetch(),i={},s=e.parameters.cache,a=e.parameters.noDataValue,o=n.map(async n=>{if(null==n.id)return;const l=`${e.layer.uid}:${n.id}:${a}`,o=null!=s?s.get(l):null,r=null!=o?o:await e.layer.fetchTile(n.level,n.row,n.col,{noDataValue:a,signal:t});null!=s&&s.put(l,r),i[n.id]=new R(n,r)});await(0,l.qr)(Promise.allSettled(o),t),e.populateElevationTiles(i)}function $(e,t){const n={},i=[];for(const s of e){const e=s.id;e&&!n[e]?(n[e]=s,i.push(s)):t?.(s)}const s=i.sort((e,t)=>e.level-t.level);return s.filter((e,n)=>{for(let i=0;i<n;i++){const n=s[i].extent;if(n&&e.extent&&(0,c.gR)(n,e.extent))return t?.(e),!1}return!0})}function L(e){return null!=e?.tileInfo}const P="elevation-query:invalid-layer"}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2095],{64476:(e,t,n)=>{n.d(t,{ElevationQuery:()=>I});var i=n(60999),s=n(49186),a=n(97768),l=n(74887),o=n(83047),r=n(91218),c=n(19419),u=(n(44208),n(65529)),h=n(53966),m=n(86738),f=n(16930),p=n(28735);const d=()=>h.A.getLogger("esri.layers.support.ElevationSampler");class y extends u.a${queryElevation(e){return function(e,t){const n=v(e,t.spatialReference);if(!n)return null;switch(e.type){case"point":return function(e,t,n){return e.hasZ=!0,e.z=n.elevationAt(t.x,t.y),e}(e,n,t);case"polyline":return function(e,t,n){T.spatialReference=t.spatialReference;const i=e.hasM&&!e.hasZ;for(let s=0;s<e.paths.length;s++){const a=e.paths[s],l=t.paths[s];for(let e=0;e<a.length;e++){const t=a[e],s=l[e];T.x=s[0],T.y=s[1],i&&(t[3]=t[2]),t[2]=n.elevationAt(T.x,T.y)}}return e.hasZ=!0,e}(e,n,t);case"multipoint":return function(e,t,n){T.spatialReference=t.spatialReference;const i=e.hasM&&!e.hasZ;for(let s=0;s<e.points.length;s++){const a=e.points[s],l=t.points[s];T.x=l[0],T.y=l[1],i&&(a[3]=a[2]),a[2]=n.elevationAt(T.x,T.y)}return e.hasZ=!0,e}(e,n,t);default:return null}}(e.clone(),this)}}class x extends y{get spatialReference(){return this.extent.spatialReference}constructor(e,t,n){super(),this.tile=e,this.noDataValue=n;const i=e.tile.extent;this.extent=(0,c.w1)(i,t.spatialReference),this.extent.zmin=e.zmin,this.extent.zmax=e.zmax,this._aaExtent=i;const s=(0,o.GA)(t.spatialReference),a=t.lodAt(e.tile.level).resolution*s;this.demResolution={min:a,max:a}}contains(e){const t=v(e,this.spatialReference);return null!=t&&this.containsAt(t.x,t.y)}containsAt(e,t){return(0,c.Rj)(this._aaExtent,e,t)}elevationAt(e,t){if(!this.containsAt(e,t)){const n=this.extent,i=`${n.xmin}, ${n.ymin}, ${n.xmax}, ${n.ymax}`;return d().warn("#elevationAt()",`Point used to sample elevation (${e}, ${t}) is outside of the sampler extent (${i})`),this.noDataValue}return this.tile.sample(e,t)??this.noDataValue}}class w extends y{get spatialReference(){return this.extent.spatialReference}constructor(e,t,n){let i;super(),"number"==typeof t?(this.noDataValue=t,this.samplers=e):(i=t,this.noDataValue=n,this.samplers=e.map(e=>new x(e,i,this.noDataValue)));const s=this.samplers[0];if(s){this.extent=s.extent.clone();const{min:e,max:t}=s.demResolution;this.demResolution={min:e,max:t};for(let e=1;e<this.samplers.length;e++){const t=this.samplers[e];this.extent.union(t.extent),this.demResolution.min=Math.min(this.demResolution.min,t.demResolution.min),this.demResolution.max=Math.max(this.demResolution.max,t.demResolution.max)}}else this.extent=(0,c.w1)((0,c.vt)(),i?.spatialReference??f.A.WGS84),this.demResolution={min:0,max:0}}elevationAt(e,t){let n;for(const i of this.samplers)if(i.containsAt(e,t)&&(n=i.elevationAt(e,t),n!==i.noDataValue))return n;return null!=n?n:(d().warn("#elevationAt()",`Point used to sample elevation (${e}, ${t}) is outside of the sampler`),this.noDataValue)}}function v(e,t){if(null==e)return null;const n=e.spatialReference;if(n.equals(t))return e;const i=(0,p.Cv)(e,t);return i||d().error(`Cannot project geometry spatial reference (wkid:${n.wkid}) to elevation sampler spatial reference (wkid:${t.wkid})`),i}const T=new m.A;class g{constructor(e,t){this.data=e,this.safeWidth=.99999999*(e.width-1),this.dx=(e.width-1)/(t[2]-t[0]),this.dy=(e.width-1)/(t[3]-t[1]),this.x0=t[0],this.y1=t[3]}}class R{constructor(e,t=null){if(this.tile=e,null!=t&&null!=e){const n=e.extent;this._samplerData=new g(t,n)}}get zmin(){return null!=this._samplerData?this._samplerData.data.minValue:0}get zmax(){return null!=this._samplerData?this._samplerData.data.maxValue:0}get hasNoDataValues(){return!!this._samplerData?.data.hasNoDataValues}sample(e,t){if(null==this._samplerData)return;const{safeWidth:n,data:i,dx:s,dy:a,y1:l,x0:o}=this._samplerData,{width:r,values:c,noDataValue:u}=i,h=A(a*(l-t),0,n),m=A(s*(e-o),0,n),f=Math.floor(h),p=Math.floor(m),d=f*r+p,y=d+r,x=c[d],w=c[y],v=c[d+1],T=c[y+1];if(x!==u&&w!==u&&v!==u&&T!==u){const e=m-p,t=x+(v-x)*e;return t+(w+(T-w)*e-t)*(h-f)}}}function A(e,t,n){return e<t?t:e>n?n:e}var _=n(48526),E=n(82799);class D{export(){return this._exporter(this.coordinates,this.spatialReference)}clone(e){const t=new D;return t.geometry=this.geometry,t.spatialReference=this.spatialReference,t.coordinates=e||this.coordinates.map(e=>e.clone()),t._exporter=this._exporter,t}async project(e,t){if(this.spatialReference.equals(e))return this.clone();await(0,r.initializeProjection)([{source:this.spatialReference,dest:e}],{signal:t});const n=new _.A({spatialReference:this.spatialReference,points:this.coordinates.map(e=>[e.x,e.y])}),i=(0,r.project)(n,e);if(!i)return null;const s=this.coordinates.map((e,t)=>{const n=e.clone(),s=i.points[t];return n.x=s[0],n.y=s[1],n}),a=this.clone(s);return a.spatialReference=e,a}static fromGeometry(e){const t=new D;if(t.geometry=e,t.spatialReference=e.spatialReference,e instanceof D)t.coordinates=e.coordinates.map(e=>e.clone()),t._exporter=(t,n)=>{const i=e.clone(t);return i.spatialReference=n,i};else switch(e.type){case"point":{const n=e,{hasZ:i,hasM:s}=n;t.coordinates=i&&s?[new q(n.x,n.y,n.z,n.m)]:i?[new q(n.x,n.y,n.z)]:s?[new q(n.x,n.y,null,n.m)]:[new q(n.x,n.y)],t._exporter=(t,n)=>e.hasM?new m.A(t[0].x,t[0].y,t[0].z,t[0].m,n):new m.A(t[0].x,t[0].y,t[0].z,n);break}case"multipoint":{const n=e,{hasZ:i,hasM:s}=n;t.coordinates=i&&s?n.points.map(e=>new q(e[0],e[1],e[2],e[3])):i?n.points.map(e=>new q(e[0],e[1],e[2])):s?n.points.map(e=>new q(e[0],e[1],null,e[2])):n.points.map(e=>new q(e[0],e[1])),t._exporter=(t,n)=>e.hasM?new _.A({points:t.map(e=>[e.x,e.y,e.z??0,e.m??0]),hasZ:!0,hasM:!0,spatialReference:n}):new _.A({points:t.map(e=>[e.x,e.y,e.z??0]),spatialReference:n});break}case"polyline":{const n=e,i=[],s=[],{hasZ:a,hasM:l}=e;let o=0;for(const e of n.paths)if(s.push([o,o+e.length]),o+=e.length,a&&l)for(const t of e)i.push(new q(t[0],t[1],t[2],t[3]));else if(a)for(const t of e)i.push(new q(t[0],t[1],t[2]));else if(l)for(const t of e)i.push(new q(t[0],t[1],null,t[2]));else for(const t of e)i.push(new q(t[0],t[1]));t.coordinates=i,t._exporter=(t,n)=>{const i=e.hasM?t.map(e=>[e.x,e.y,e.z??0,e.m??0]):t.map(e=>[e.x,e.y,e.z??0]),a=s.map(e=>i.slice(e[0],e[1]));return new E.A({paths:a,hasM:e.hasM,hasZ:!0,spatialReference:n})};break}}return t}}class q{constructor(e,t,n=null,i=null,s=null,a=null){this.x=e,this.y=t,this.z=n,this.m=i,this.tile=s,this.elevationTile=a}clone(){return new q(this.x,this.y,this.z,this.m)}}var C=n(72802);class I{async queryAll(e,t,n){if(!(e=n?.ignoreInvisibleLayers?e.filter(e=>e.visible):e.slice()).length)throw new s.A(P,"Elevation queries require at least one elevation layer to fetch tiles from");const i=D.fromGeometry(t);let a=!1;n?.returnSampleInfo||(a=!0);const l={...F,...n,returnSampleInfo:!0},o=await this.query(e[e.length-1],i,l),r=await this._queryAllContinue(e,o,l);return r.geometry=r.geometry.export(),a&&delete r.sampleInfo,r}async query(e,t,n){if(!e)throw new s.A(P,"Elevation queries require an elevation layer to fetch tiles from");if(!t||!(t instanceof D)&&"point"!==t.type&&"multipoint"!==t.type&&"polyline"!==t.type)throw new s.A("elevation-query:invalid-geometry","Only point, polyline and multipoint geometries can be used to query elevation");const i={...F,...n},l=new M(e,t.spatialReference,i),c=i.signal;return await e.load({signal:c}),await async function(e,t,n){let i;const a=e.layer.tileInfo.spatialReference;if(t instanceof D?i=await t.project(a,n):(await(0,r.initializeProjection)([{source:t.spatialReference,dest:a}],{signal:n}),i=(0,r.project)(t,a)),!i)throw new s.A("elevation-query:spatial-reference-mismatch",`Cannot query elevation in '${t.spatialReference.wkid}' on an elevation service in '${a.wkid}'`);e.geometry=D.fromGeometry(i)}(l,t,c),await this._selectTiles(l,c),await k(l,c),function(e){e.geometry.coordinates.forEach(t=>{const n=t.elevationTile;let i=e.parameters.noDataValue;if(n){const e=n.sample(t.x,t.y);null!=e?i=e:t.elevationTile=null}t.z=i})}(l),async function(e,t){const n=await e.geometry.project(e.outSpatialReference,t);(0,a.Lw)(n);const i={geometry:n.export(),noDataValue:e.parameters.noDataValue};return e.parameters.returnSampleInfo&&(i.sampleInfo=function(e){const t=e.layer.tileInfo,n=(0,o.GA)(t.spatialReference);return e.geometry.coordinates.map(i=>{let s=-1;return i.elevationTile&&i.elevationTile!==e.outsideExtentTile&&(s=t.lodAt(i.elevationTile.tile.level).resolution*n),{demResolution:s}})}(e)),e.geometry.coordinates.forEach(e=>{e.tile=null,e.elevationTile=null}),i}(l,c)}async createSampler(e,t,n){if(!e)throw new s.A(P,"Elevation queries require an elevation layer to fetch tiles from");if(!t||"extent"!==t.type)throw new s.A("elevation-query:invalid-extent","Invalid or undefined extent");const i={...F,...n};return this._createSampler(e,t,i)}async createSamplerAll(e,t,n){if(!(e=n?.ignoreInvisibleLayers?e.filter(e=>e.visible):e.slice()).length)throw new s.A(P,"Elevation queries require at least one elevation layer to fetch tiles from");if(!t||"extent"!==t.type)throw new s.A("elevation-query:invalid-extent","Invalid or undefined extent");const i={...F,...n,returnSampleInfo:!0},a=await this._createSampler(e[e.length-1],t,i);return this._createSamplerAllContinue(e,t,a,i)}async _createSampler(e,t,n,i){const s=n.signal;await e.load({signal:s});const a=t.spatialReference,l=e.tileInfo.spatialReference;a.equals(l)||(await(0,r.initializeProjection)([{source:a,dest:l}],{signal:s}),t=(0,r.project)(t,l));const o=new V(e,t,n,i);return await this._selectTiles(o,s),await k(o,s),new w(o.elevationTiles,o.layer.tileInfo,o.parameters.noDataValue)}async _createSamplerAllContinue(e,t,n,i){if(e.pop(),!e.length)return n;const s=n.samplers.filter(e=>!e.tile.hasNoDataValues).map(e=>(0,c.VY)(e.extent)),a=await this._createSampler(e[e.length-1],t,i,s);if(0===a.samplers.length)return n;const l=n.samplers.concat(a.samplers),o=new w(l,i.noDataValue);return this._createSamplerAllContinue(e,t,o,i)}async _queryAllContinue(e,t,n){const i=e.pop(),s=t.geometry.coordinates,l=t.sampleInfo;(0,a.Lw)(l);const o=[],r=[];for(let t=0;t<s.length;t++){const n=l[t];n.demResolution>=0?n.source||(n.source=i):e.length&&(o.push(s[t]),r.push(t))}if(!e.length||0===o.length)return t;const c=t.geometry.clone(o),u=await this.query(e[e.length-1],c,n),h=u.sampleInfo;if(!h)throw new Error("no sampleInfo");return r.forEach((e,t)=>{s[e].z=u.geometry.coordinates[t].z,l[e].demResolution=h[t].demResolution}),this._queryAllContinue(e,t,n)}async _selectTiles(e,t){"geometry"===e.type&&function(e){if(null==e.layer.fullExtent)return;const t=new R(null);t.sample=()=>e.parameters.noDataValue,e.outsideExtentTile=t;const n=e.layer.fullExtent;e.geometry.coordinates.forEach(e=>{const i=e.x,s=e.y;(i<n.xmin||i>n.xmax||s<n.ymin||s>n.ymax)&&(e.elevationTile=t)})}(e);const n=e.parameters.demResolution;if("number"==typeof n)!function(e,t){const n=function(e,t){const{tileInfo:n,tilemapCache:i}=e.layer,s=t/(0,o.GA)(n.spatialReference),a=b(n,i);let l=a[0],r=0;for(let e=1;e<a.length;e++){const t=a[e];Math.abs(t.resolution-s)<Math.abs(l.resolution-s)&&(l=t,r=e)}return r}(e,t);e.selectTilesAtLOD(n)}(e,n);else if("finest-contiguous"===n)await this._selectTilesFinestContiguous(e,t);else{if("auto"!==n)throw new s.A("elevation-query:invalid-dem-resolution",`Invalid dem resolution value '${n}', expected a number, "finest-contiguous" or "auto"`);await this._selectTilesAuto(e,t)}}async _selectTilesFinestContiguous(e,t){const{tileInfo:n,tilemapCache:i}=e.layer,s=S(n,i,e.parameters.minDemResolution);await this._selectTilesFinestContiguousAt(e,s,t)}async _selectTilesFinestContiguousAt(e,t,n){const i=e.layer;if(e.selectTilesAtLOD(t),t<0)return;const a=i.tilemapCache,o=e.getTilesToFetch();try{if(a&&!L(a))await(0,l.qr)(Promise.all(o.map(e=>a.fetchAvailability(e.level,e.row,e.col,{signal:n}))),n);else if(await k(e,n),!e.allElevationTilesFetched())throw e.clearElevationTiles(),new s.A("elevation-query:has-unavailable-tiles","Some elevation tiles are unavailable")}catch(i){(0,l.QP)(i),await this._selectTilesFinestContiguousAt(e,t-1,n)}}async _selectTilesAuto(e,t){(function(e){const{tileInfo:t,tilemapCache:n}=e.layer,i=S(t,n,e.parameters.minDemResolution);e.selectTilesAtLOD(i,e.parameters.maximumAutoTileRequests)})(e),function(e){const t=e.layer.tileInfo;let n=0;const i={},s=e=>{null!=e.id&&(e.id in i?i[e.id]++:(i[e.id]=1,n++))},a=e=>{if(null==e.id)return;const t=i[e.id];1===t?(delete i[e.id],n--):i[e.id]=t-1};e.forEachTileToFetch(s,a);let l=!0;for(;l&&(l=!1,e.forEachTileToFetch(i=>{n<=e.parameters.maximumAutoTileRequests||(a(i),t.upsampleTile(i)&&(l=!0),s(i))},a),l););}(e);const n=e.layer.tilemapCache;if(!n||L(n))return this._selectTilesAutoPrefetchUpsample(e,t);const s=e.getTilesToFetch(),a={},o=s.map(async e=>{const s=new C.U(null,0,0,0,(0,c.vt)()),o=await(0,i.Ke)(n.fetchAvailabilityUpsample(e.level,e.row,e.col,s,{signal:t}));!1!==o.ok?null!=e.id&&(a[e.id]=s):(0,l.QP)(o.error)});await(0,l.qr)(Promise.all(o),t),e.remapTiles(a)}async _selectTilesAutoPrefetchUpsample(e,t){const n=e.layer.tileInfo;await k(e,t);let i=!1;e.forEachTileToFetch((e,t)=>{n.upsampleTile(e)?i=!0:t()}),i&&await this._selectTilesAutoPrefetchUpsample(e,t)}}class z{constructor(e,t){this.layer=e,this.parameters=t}}class M extends z{constructor(e,t,n){super(e,n),this.outSpatialReference=t,this.type="geometry"}selectTilesAtLOD(e){if(e<0)this.geometry.coordinates.forEach(e=>e.tile=null);else{const{tileInfo:t,tilemapCache:n}=this.layer,i=b(t,n)[e].level;this.geometry.coordinates.forEach(e=>e.tile=t.tileAt(i,e.x,e.y))}}allElevationTilesFetched(){return!this.geometry.coordinates.some(e=>!e.elevationTile)}clearElevationTiles(){for(const e of this.geometry.coordinates)e.elevationTile!==this.outsideExtentTile&&(e.elevationTile=null)}populateElevationTiles(e){for(const t of this.geometry.coordinates)!t.elevationTile&&t.tile?.id&&(t.elevationTile=e[t.tile.id])}remapTiles(e){for(const t of this.geometry.coordinates){const n=t.tile?.id;t.tile=n?e[n]:null}}getTilesToFetch(){const e={},t=[];for(const n of this.geometry.coordinates){const i=n.tile;if(!i)continue;const s=n.tile?.id;n.elevationTile||!s||e[s]||(e[s]=i,t.push(i))}return t}forEachTileToFetch(e){for(const t of this.geometry.coordinates)t.tile&&!t.elevationTile&&e(t.tile,()=>t.tile=null)}}class V extends z{constructor(e,t,n,i){super(e,n),this.type="extent",this.elevationTiles=[],this._candidateTiles=[],this._fetchedCandidates=new Set,this.extent=t.clone().intersection(e.fullExtent),this.maskExtents=i}selectTilesAtLOD(e,t){const n=this._maximumLodForRequests(t),i=Math.min(n,e);i<0?this._candidateTiles.length=0:this._selectCandidateTilesCoveringExtentAt(i)}_maximumLodForRequests(e){const{tileInfo:t,tilemapCache:n}=this.layer,i=b(t,n);if(!e)return i.length-1;const s=this.extent;if(null==s)return-1;for(let n=i.length-1;n>=0;n--){const a=i[n],l=a.resolution*t.size[0],o=a.resolution*t.size[1];if(Math.ceil(s.width/l)*Math.ceil(s.height/o)<=e)return n}return-1}allElevationTilesFetched(){return this._candidateTiles.length===this.elevationTiles.length}clearElevationTiles(){this.elevationTiles.length=0,this._fetchedCandidates.clear()}populateElevationTiles(e){for(const t of this._candidateTiles){const n=t.id&&e[t.id];n&&(this._fetchedCandidates.add(t),this.elevationTiles.push(n))}}remapTiles(e){this._candidateTiles=$(this._candidateTiles.map(t=>e[t.id]))}getTilesToFetch(){return this._candidateTiles}forEachTileToFetch(e,t){const n=this._candidateTiles;this._candidateTiles=[],n.forEach(n=>{if(this._fetchedCandidates.has(n))return void t?.(n);let i=!1;e(n,()=>i=!0),i?t?.(n):this._candidateTiles.push(n)}),this._candidateTiles=$(this._candidateTiles,t)}_selectCandidateTilesCoveringExtentAt(e){this._candidateTiles.length=0;const t=this.extent;if(null==t)return;const{tileInfo:n,tilemapCache:i}=this.layer,s=b(n,i)[e],a=n.tileAt(s.level,t.xmin,t.ymin),l=a.extent;if(null==l)return;const o=s.resolution*n.size[0],r=s.resolution*n.size[1],c=Math.ceil((t.xmax-l[0])/o),u=Math.ceil((t.ymax-l[1])/r);for(let e=0;e<u;e++)for(let t=0;t<c;t++){const i=new C.U(null,a.level,a.row-e,a.col+t);n.updateTileInfo(i),this._tileIsMasked(i)||this._candidateTiles.push(i)}}_tileIsMasked(e){return!!this.maskExtents&&this.maskExtents.some(t=>e.extent&&(0,c.gR)(t,e.extent))}}function S(e,t,n=0){const i=b(e,t);let s=i.length-1;if(n>0){const t=n/(0,o.GA)(e.spatialReference),a=i.findIndex(e=>e.resolution<t);0===a?s=0:a>0&&(s=a-1)}return s}const F={maximumAutoTileRequests:20,noDataValue:0,returnSampleInfo:!1,demResolution:"auto",minDemResolution:0,signal:null};function b(e,t){const n=e.lods;if(L(t)){const{effectiveMinLOD:e,effectiveMaxLOD:i}=t;return n.filter(t=>t.level>=e&&t.level<=i)}return n}async function k(e,t){const n=e.getTilesToFetch(),i={},s=e.parameters.cache,a=e.parameters.noDataValue,o=n.map(async n=>{if(null==n.id)return;const l=`${e.layer.uid}:${n.id}:${a}`,o=null!=s?s.get(l):null,r=null!=o?o:await e.layer.fetchTile(n.level,n.row,n.col,{noDataValue:a,signal:t});null!=s&&s.put(l,r),i[n.id]=new R(n,r)});await(0,l.qr)(Promise.allSettled(o),t),e.populateElevationTiles(i)}function $(e,t){const n={},i=[];for(const s of e){const e=s.id;e&&!n[e]?(n[e]=s,i.push(s)):t?.(s)}const s=i.sort((e,t)=>e.level-t.level);return s.filter((e,n)=>{for(let i=0;i<n;i++){const n=s[i].extent;if(n&&e.extent&&(0,c.gR)(n,e.extent))return t?.(e),!1}return!0})}function L(e){return null!=e?.tileInfo}const P="elevation-query:invalid-layer"}}]);