@arcgis/core 4.28.0-next.20230524 → 4.28.0-next.20230621

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 (1955) hide show
  1. package/Map.js +1 -1
  2. package/README.md +17 -17
  3. package/WebMap.js +1 -1
  4. package/WebScene.js +1 -1
  5. package/arcade/featureSetUtils.js +1 -1
  6. package/arcade/featureset/actions/Adapted.js +1 -1
  7. package/arcade/featureset/actions/GroupBy.js +1 -1
  8. package/arcade/featureset/actions/OrderBy.js +1 -1
  9. package/arcade/featureset/support/FeatureSetIterator.js +1 -1
  10. package/arcade/functions/featuresetbase.js +1 -1
  11. package/arcade/functions/featuresetstring.js +1 -1
  12. package/arcade/functions/geometry.js +1 -1
  13. package/arcade/languageUtils.js +1 -1
  14. package/arcade/treeAnalysis.js +1 -1
  15. package/assets/components/assets/card/t9n/messages_ar.json +1 -1
  16. package/assets/components/assets/card/t9n/messages_bg.json +1 -1
  17. package/assets/components/assets/card/t9n/messages_bs.json +1 -1
  18. package/assets/components/assets/card/t9n/messages_ca.json +1 -1
  19. package/assets/components/assets/card/t9n/messages_cs.json +1 -1
  20. package/assets/components/assets/card/t9n/messages_da.json +1 -1
  21. package/assets/components/assets/card/t9n/messages_de.json +1 -1
  22. package/assets/components/assets/card/t9n/messages_el.json +1 -1
  23. package/assets/components/assets/card/t9n/messages_es.json +1 -1
  24. package/assets/components/assets/card/t9n/messages_et.json +1 -1
  25. package/assets/components/assets/card/t9n/messages_fi.json +1 -1
  26. package/assets/components/assets/card/t9n/messages_fr.json +1 -1
  27. package/assets/components/assets/card/t9n/messages_he.json +1 -1
  28. package/assets/components/assets/card/t9n/messages_hr.json +1 -1
  29. package/assets/components/assets/card/t9n/messages_hu.json +1 -1
  30. package/assets/components/assets/card/t9n/messages_id.json +1 -1
  31. package/assets/components/assets/card/t9n/messages_it.json +1 -1
  32. package/assets/components/assets/card/t9n/messages_ja.json +1 -1
  33. package/assets/components/assets/card/t9n/messages_ko.json +1 -1
  34. package/assets/components/assets/card/t9n/messages_lt.json +1 -1
  35. package/assets/components/assets/card/t9n/messages_lv.json +1 -1
  36. package/assets/components/assets/card/t9n/messages_nl.json +1 -1
  37. package/assets/components/assets/card/t9n/messages_no.json +1 -1
  38. package/assets/components/assets/card/t9n/messages_pl.json +1 -1
  39. package/assets/components/assets/card/t9n/messages_pt-BR.json +1 -1
  40. package/assets/components/assets/card/t9n/messages_pt-PT.json +1 -1
  41. package/assets/components/assets/card/t9n/messages_ro.json +1 -1
  42. package/assets/components/assets/card/t9n/messages_ru.json +1 -1
  43. package/assets/components/assets/card/t9n/messages_sk.json +1 -1
  44. package/assets/components/assets/card/t9n/messages_sl.json +1 -1
  45. package/assets/components/assets/card/t9n/messages_sr.json +1 -1
  46. package/assets/components/assets/card/t9n/messages_sv.json +1 -1
  47. package/assets/components/assets/card/t9n/messages_th.json +1 -1
  48. package/assets/components/assets/card/t9n/messages_tr.json +1 -1
  49. package/assets/components/assets/card/t9n/messages_uk.json +1 -1
  50. package/assets/components/assets/card/t9n/messages_vi.json +1 -1
  51. package/assets/components/assets/card/t9n/messages_zh-CN.json +1 -1
  52. package/assets/components/assets/card/t9n/messages_zh-HK.json +1 -1
  53. package/assets/components/assets/card/t9n/messages_zh-TW.json +1 -1
  54. package/assets/components/assets/combobox/t9n/messages.json +1 -0
  55. package/assets/components/assets/combobox/t9n/messages_ar.json +1 -0
  56. package/assets/components/assets/combobox/t9n/messages_bg.json +1 -0
  57. package/assets/components/assets/combobox/t9n/messages_bs.json +1 -0
  58. package/assets/components/assets/combobox/t9n/messages_ca.json +1 -0
  59. package/assets/components/assets/combobox/t9n/messages_cs.json +1 -0
  60. package/assets/components/assets/combobox/t9n/messages_da.json +1 -0
  61. package/assets/components/assets/combobox/t9n/messages_de.json +1 -0
  62. package/assets/components/assets/combobox/t9n/messages_el.json +1 -0
  63. package/assets/components/assets/combobox/t9n/messages_en.json +1 -0
  64. package/assets/components/assets/combobox/t9n/messages_es.json +1 -0
  65. package/assets/components/assets/combobox/t9n/messages_et.json +1 -0
  66. package/assets/components/assets/combobox/t9n/messages_fi.json +1 -0
  67. package/assets/components/assets/combobox/t9n/messages_fr.json +1 -0
  68. package/assets/components/assets/combobox/t9n/messages_he.json +1 -0
  69. package/assets/components/assets/combobox/t9n/messages_hr.json +1 -0
  70. package/assets/components/assets/combobox/t9n/messages_hu.json +1 -0
  71. package/assets/components/assets/combobox/t9n/messages_id.json +1 -0
  72. package/assets/components/assets/combobox/t9n/messages_it.json +1 -0
  73. package/assets/components/assets/combobox/t9n/messages_ja.json +1 -0
  74. package/assets/components/assets/combobox/t9n/messages_ko.json +1 -0
  75. package/assets/components/assets/combobox/t9n/messages_lt.json +1 -0
  76. package/assets/components/assets/combobox/t9n/messages_lv.json +1 -0
  77. package/assets/components/assets/combobox/t9n/messages_nl.json +1 -0
  78. package/assets/components/assets/combobox/t9n/messages_no.json +1 -0
  79. package/assets/components/assets/combobox/t9n/messages_pl.json +1 -0
  80. package/assets/components/assets/combobox/t9n/messages_pt-BR.json +1 -0
  81. package/assets/components/assets/combobox/t9n/messages_pt-PT.json +1 -0
  82. package/assets/components/assets/combobox/t9n/messages_ro.json +1 -0
  83. package/assets/components/assets/combobox/t9n/messages_ru.json +1 -0
  84. package/assets/components/assets/combobox/t9n/messages_sk.json +1 -0
  85. package/assets/components/assets/combobox/t9n/messages_sl.json +1 -0
  86. package/assets/components/assets/combobox/t9n/messages_sr.json +1 -0
  87. package/assets/components/assets/combobox/t9n/messages_sv.json +1 -0
  88. package/assets/components/assets/combobox/t9n/messages_th.json +1 -0
  89. package/assets/components/assets/combobox/t9n/messages_tr.json +1 -0
  90. package/assets/components/assets/combobox/t9n/messages_uk.json +1 -0
  91. package/assets/components/assets/combobox/t9n/messages_vi.json +1 -0
  92. package/assets/components/assets/combobox/t9n/messages_zh-CN.json +1 -0
  93. package/assets/components/assets/combobox/t9n/messages_zh-HK.json +1 -0
  94. package/assets/components/assets/combobox/t9n/messages_zh-TW.json +1 -0
  95. package/assets/components/assets/handle/t9n/messages_cs.json +1 -1
  96. package/assets/components/assets/handle/t9n/messages_ja.json +1 -1
  97. package/assets/components/assets/handle/t9n/messages_ru.json +1 -1
  98. package/assets/components/assets/handle/t9n/messages_sk.json +1 -1
  99. package/assets/components/assets/icon/accessibility16.json +1 -0
  100. package/assets/components/assets/icon/accessibility24.json +1 -0
  101. package/assets/components/assets/icon/accessibility32.json +1 -0
  102. package/assets/components/assets/icon/addAndUpdateFeatures16.json +1 -0
  103. package/assets/components/assets/icon/addAndUpdateFeatures24.json +1 -0
  104. package/assets/components/assets/icon/addAndUpdateFeatures32.json +1 -0
  105. package/assets/components/assets/icon/addFeatures16.json +1 -0
  106. package/assets/components/assets/icon/addFeatures24.json +1 -0
  107. package/assets/components/assets/icon/addFeatures32.json +1 -0
  108. package/assets/components/assets/icon/arrowCircleDown16.json +1 -0
  109. package/assets/components/assets/icon/arrowCircleDown16F.json +1 -0
  110. package/assets/components/assets/icon/arrowCircleDown24.json +1 -0
  111. package/assets/components/assets/icon/arrowCircleDown24F.json +1 -0
  112. package/assets/components/assets/icon/arrowCircleDown32.json +1 -0
  113. package/assets/components/assets/icon/arrowCircleDown32F.json +1 -0
  114. package/assets/components/assets/icon/arrowCircleDownF16.json +1 -0
  115. package/assets/components/assets/icon/arrowCircleDownF24.json +1 -0
  116. package/assets/components/assets/icon/arrowCircleDownF32.json +1 -0
  117. package/assets/components/assets/icon/joinedViewLayer16.json +1 -0
  118. package/assets/components/assets/icon/joinedViewLayer24.json +1 -0
  119. package/assets/components/assets/icon/joinedViewLayer32.json +1 -0
  120. package/assets/components/assets/icon/locationSharing16.json +1 -0
  121. package/assets/components/assets/icon/locationSharing16F.json +1 -0
  122. package/assets/components/assets/icon/locationSharing24.json +1 -0
  123. package/assets/components/assets/icon/locationSharing24F.json +1 -0
  124. package/assets/components/assets/icon/locationSharing32.json +1 -0
  125. package/assets/components/assets/icon/locationSharing32F.json +1 -0
  126. package/assets/components/assets/icon/locationSharingDisabled16.json +1 -0
  127. package/assets/components/assets/icon/locationSharingDisabled24.json +1 -0
  128. package/assets/components/assets/icon/locationSharingDisabled32.json +1 -0
  129. package/assets/components/assets/icon/locationSharingEnabled16.json +1 -0
  130. package/assets/components/assets/icon/locationSharingEnabled24.json +1 -0
  131. package/assets/components/assets/icon/locationSharingEnabled32.json +1 -0
  132. package/assets/components/assets/icon/locationSharingFilled16.json +1 -0
  133. package/assets/components/assets/icon/locationSharingFilled24.json +1 -0
  134. package/assets/components/assets/icon/locationSharingFilled32.json +1 -0
  135. package/assets/components/assets/icon/locationSharingOff16.json +1 -0
  136. package/assets/components/assets/icon/locationSharingOff24.json +1 -0
  137. package/assets/components/assets/icon/locationSharingOff32.json +1 -0
  138. package/assets/components/assets/icon/maskInside16.json +1 -0
  139. package/assets/components/assets/icon/maskInside24.json +1 -0
  140. package/assets/components/assets/icon/maskInside32.json +1 -0
  141. package/assets/components/assets/icon/maskOutside16.json +1 -0
  142. package/assets/components/assets/icon/maskOutside24.json +1 -0
  143. package/assets/components/assets/icon/maskOutside32.json +1 -0
  144. package/assets/components/assets/icon/numberCircle116F.json +1 -0
  145. package/assets/components/assets/icon/numberCircle124F.json +1 -0
  146. package/assets/components/assets/icon/numberCircle132F.json +1 -0
  147. package/assets/components/assets/icon/numberCircle1F16.json +1 -0
  148. package/assets/components/assets/icon/numberCircle1F24.json +1 -0
  149. package/assets/components/assets/icon/numberCircle1F32.json +1 -0
  150. package/assets/components/assets/icon/numberCircle216F.json +1 -0
  151. package/assets/components/assets/icon/numberCircle224F.json +1 -0
  152. package/assets/components/assets/icon/numberCircle232F.json +1 -0
  153. package/assets/components/assets/icon/numberCircle2F16.json +1 -0
  154. package/assets/components/assets/icon/numberCircle2F24.json +1 -0
  155. package/assets/components/assets/icon/numberCircle2F32.json +1 -0
  156. package/assets/components/assets/icon/numberCircle316F.json +1 -0
  157. package/assets/components/assets/icon/numberCircle324F.json +1 -0
  158. package/assets/components/assets/icon/numberCircle332F.json +1 -0
  159. package/assets/components/assets/icon/numberCircle3F16.json +1 -0
  160. package/assets/components/assets/icon/numberCircle3F24.json +1 -0
  161. package/assets/components/assets/icon/numberCircle3F32.json +1 -0
  162. package/assets/components/assets/icon/numberCircle416F.json +1 -0
  163. package/assets/components/assets/icon/numberCircle424F.json +1 -0
  164. package/assets/components/assets/icon/numberCircle432F.json +1 -0
  165. package/assets/components/assets/icon/numberCircle4F16.json +1 -0
  166. package/assets/components/assets/icon/numberCircle4F24.json +1 -0
  167. package/assets/components/assets/icon/numberCircle4F32.json +1 -0
  168. package/assets/components/assets/icon/numberCircle516F.json +1 -0
  169. package/assets/components/assets/icon/numberCircle524F.json +1 -0
  170. package/assets/components/assets/icon/numberCircle532F.json +1 -0
  171. package/assets/components/assets/icon/numberCircle5F16.json +1 -0
  172. package/assets/components/assets/icon/numberCircle5F24.json +1 -0
  173. package/assets/components/assets/icon/numberCircle5F32.json +1 -0
  174. package/assets/components/assets/icon/numberCircle616F.json +1 -0
  175. package/assets/components/assets/icon/numberCircle624F.json +1 -0
  176. package/assets/components/assets/icon/numberCircle632F.json +1 -0
  177. package/assets/components/assets/icon/numberCircle6F16.json +1 -0
  178. package/assets/components/assets/icon/numberCircle6F24.json +1 -0
  179. package/assets/components/assets/icon/numberCircle6F32.json +1 -0
  180. package/assets/components/assets/icon/numberCircle716F.json +1 -0
  181. package/assets/components/assets/icon/numberCircle724F.json +1 -0
  182. package/assets/components/assets/icon/numberCircle732F.json +1 -0
  183. package/assets/components/assets/icon/numberCircle7F16.json +1 -0
  184. package/assets/components/assets/icon/numberCircle7F24.json +1 -0
  185. package/assets/components/assets/icon/numberCircle7F32.json +1 -0
  186. package/assets/components/assets/icon/numberCircle816F.json +1 -0
  187. package/assets/components/assets/icon/numberCircle824F.json +1 -0
  188. package/assets/components/assets/icon/numberCircle832F.json +1 -0
  189. package/assets/components/assets/icon/numberCircle8F16.json +1 -0
  190. package/assets/components/assets/icon/numberCircle8F24.json +1 -0
  191. package/assets/components/assets/icon/numberCircle8F32.json +1 -0
  192. package/assets/components/assets/icon/numberCircle916F.json +1 -0
  193. package/assets/components/assets/icon/numberCircle924F.json +1 -0
  194. package/assets/components/assets/icon/numberCircle932F.json +1 -0
  195. package/assets/components/assets/icon/numberCircle9F16.json +1 -0
  196. package/assets/components/assets/icon/numberCircle9F24.json +1 -0
  197. package/assets/components/assets/icon/numberCircle9F32.json +1 -0
  198. package/assets/components/assets/icon/orientedImageryLayer16.json +1 -0
  199. package/assets/components/assets/icon/orientedImageryLayer24.json +1 -0
  200. package/assets/components/assets/icon/orientedImageryLayer32.json +1 -0
  201. package/assets/components/assets/icon/overwriteFeatures16.json +1 -0
  202. package/assets/components/assets/icon/overwriteFeatures24.json +1 -0
  203. package/assets/components/assets/icon/overwriteFeatures32.json +1 -0
  204. package/assets/components/assets/icon/parcelLayer16.json +1 -0
  205. package/assets/components/assets/icon/parcelLayer24.json +1 -0
  206. package/assets/components/assets/icon/parcelLayer32.json +1 -0
  207. package/assets/components/assets/icon/refreshF16.json +1 -0
  208. package/assets/components/assets/icon/refreshF24.json +1 -0
  209. package/assets/components/assets/icon/refreshF32.json +1 -0
  210. package/assets/components/assets/icon/strikethrough16.json +1 -0
  211. package/assets/components/assets/icon/strikethrough24.json +1 -0
  212. package/assets/components/assets/icon/strikethrough32.json +1 -0
  213. package/assets/components/assets/icon/updateFeatures16.json +1 -0
  214. package/assets/components/assets/icon/updateFeatures24.json +1 -0
  215. package/assets/components/assets/icon/updateFeatures32.json +1 -0
  216. package/assets/components/assets/icon/viewAssociations16.json +1 -0
  217. package/assets/components/assets/icon/viewAssociations24.json +1 -0
  218. package/assets/components/assets/icon/viewAssociations32.json +1 -0
  219. package/assets/components/assets/input-date-picker/t9n/messages_ar.json +1 -1
  220. package/assets/components/assets/input-date-picker/t9n/messages_bg.json +1 -1
  221. package/assets/components/assets/input-date-picker/t9n/messages_bs.json +1 -1
  222. package/assets/components/assets/input-date-picker/t9n/messages_ca.json +1 -1
  223. package/assets/components/assets/input-date-picker/t9n/messages_cs.json +1 -1
  224. package/assets/components/assets/input-date-picker/t9n/messages_da.json +1 -1
  225. package/assets/components/assets/input-date-picker/t9n/messages_de.json +1 -1
  226. package/assets/components/assets/input-date-picker/t9n/messages_el.json +1 -1
  227. package/assets/components/assets/input-date-picker/t9n/messages_es.json +1 -1
  228. package/assets/components/assets/input-date-picker/t9n/messages_et.json +1 -1
  229. package/assets/components/assets/input-date-picker/t9n/messages_fi.json +1 -1
  230. package/assets/components/assets/input-date-picker/t9n/messages_fr.json +1 -1
  231. package/assets/components/assets/input-date-picker/t9n/messages_he.json +1 -1
  232. package/assets/components/assets/input-date-picker/t9n/messages_hr.json +1 -1
  233. package/assets/components/assets/input-date-picker/t9n/messages_hu.json +1 -1
  234. package/assets/components/assets/input-date-picker/t9n/messages_id.json +1 -1
  235. package/assets/components/assets/input-date-picker/t9n/messages_it.json +1 -1
  236. package/assets/components/assets/input-date-picker/t9n/messages_ja.json +1 -1
  237. package/assets/components/assets/input-date-picker/t9n/messages_ko.json +1 -1
  238. package/assets/components/assets/input-date-picker/t9n/messages_lt.json +1 -1
  239. package/assets/components/assets/input-date-picker/t9n/messages_lv.json +1 -1
  240. package/assets/components/assets/input-date-picker/t9n/messages_nl.json +1 -1
  241. package/assets/components/assets/input-date-picker/t9n/messages_no.json +1 -1
  242. package/assets/components/assets/input-date-picker/t9n/messages_pl.json +1 -1
  243. package/assets/components/assets/input-date-picker/t9n/messages_pt-BR.json +1 -1
  244. package/assets/components/assets/input-date-picker/t9n/messages_pt-PT.json +1 -1
  245. package/assets/components/assets/input-date-picker/t9n/messages_ro.json +1 -1
  246. package/assets/components/assets/input-date-picker/t9n/messages_ru.json +1 -1
  247. package/assets/components/assets/input-date-picker/t9n/messages_sk.json +1 -1
  248. package/assets/components/assets/input-date-picker/t9n/messages_sl.json +1 -1
  249. package/assets/components/assets/input-date-picker/t9n/messages_sr.json +1 -1
  250. package/assets/components/assets/input-date-picker/t9n/messages_sv.json +1 -1
  251. package/assets/components/assets/input-date-picker/t9n/messages_th.json +1 -1
  252. package/assets/components/assets/input-date-picker/t9n/messages_tr.json +1 -1
  253. package/assets/components/assets/input-date-picker/t9n/messages_uk.json +1 -1
  254. package/assets/components/assets/input-date-picker/t9n/messages_vi.json +1 -1
  255. package/assets/components/assets/input-date-picker/t9n/messages_zh-CN.json +1 -1
  256. package/assets/components/assets/input-date-picker/t9n/messages_zh-HK.json +1 -1
  257. package/assets/components/assets/input-date-picker/t9n/messages_zh-TW.json +1 -1
  258. package/assets/components/assets/input-time-picker/t9n/messages_ar.json +1 -1
  259. package/assets/components/assets/input-time-picker/t9n/messages_bg.json +1 -1
  260. package/assets/components/assets/input-time-picker/t9n/messages_bs.json +1 -1
  261. package/assets/components/assets/input-time-picker/t9n/messages_ca.json +1 -1
  262. package/assets/components/assets/input-time-picker/t9n/messages_cs.json +1 -1
  263. package/assets/components/assets/input-time-picker/t9n/messages_da.json +1 -1
  264. package/assets/components/assets/input-time-picker/t9n/messages_de.json +1 -1
  265. package/assets/components/assets/input-time-picker/t9n/messages_el.json +1 -1
  266. package/assets/components/assets/input-time-picker/t9n/messages_es.json +1 -1
  267. package/assets/components/assets/input-time-picker/t9n/messages_et.json +1 -1
  268. package/assets/components/assets/input-time-picker/t9n/messages_fi.json +1 -1
  269. package/assets/components/assets/input-time-picker/t9n/messages_fr.json +1 -1
  270. package/assets/components/assets/input-time-picker/t9n/messages_he.json +1 -1
  271. package/assets/components/assets/input-time-picker/t9n/messages_hr.json +1 -1
  272. package/assets/components/assets/input-time-picker/t9n/messages_hu.json +1 -1
  273. package/assets/components/assets/input-time-picker/t9n/messages_id.json +1 -1
  274. package/assets/components/assets/input-time-picker/t9n/messages_it.json +1 -1
  275. package/assets/components/assets/input-time-picker/t9n/messages_ja.json +1 -1
  276. package/assets/components/assets/input-time-picker/t9n/messages_ko.json +1 -1
  277. package/assets/components/assets/input-time-picker/t9n/messages_lt.json +1 -1
  278. package/assets/components/assets/input-time-picker/t9n/messages_lv.json +1 -1
  279. package/assets/components/assets/input-time-picker/t9n/messages_nl.json +1 -1
  280. package/assets/components/assets/input-time-picker/t9n/messages_no.json +1 -1
  281. package/assets/components/assets/input-time-picker/t9n/messages_pl.json +1 -1
  282. package/assets/components/assets/input-time-picker/t9n/messages_pt-BR.json +1 -1
  283. package/assets/components/assets/input-time-picker/t9n/messages_pt-PT.json +1 -1
  284. package/assets/components/assets/input-time-picker/t9n/messages_ro.json +1 -1
  285. package/assets/components/assets/input-time-picker/t9n/messages_ru.json +1 -1
  286. package/assets/components/assets/input-time-picker/t9n/messages_sk.json +1 -1
  287. package/assets/components/assets/input-time-picker/t9n/messages_sl.json +1 -1
  288. package/assets/components/assets/input-time-picker/t9n/messages_sr.json +1 -1
  289. package/assets/components/assets/input-time-picker/t9n/messages_sv.json +1 -1
  290. package/assets/components/assets/input-time-picker/t9n/messages_th.json +1 -1
  291. package/assets/components/assets/input-time-picker/t9n/messages_tr.json +1 -1
  292. package/assets/components/assets/input-time-picker/t9n/messages_uk.json +1 -1
  293. package/assets/components/assets/input-time-picker/t9n/messages_vi.json +1 -1
  294. package/assets/components/assets/input-time-picker/t9n/messages_zh-CN.json +1 -1
  295. package/assets/components/assets/input-time-picker/t9n/messages_zh-HK.json +1 -1
  296. package/assets/components/assets/input-time-picker/t9n/messages_zh-TW.json +1 -1
  297. package/assets/components/assets/list-item/t9n/messages_vi.json +1 -1
  298. package/assets/components/assets/menu/t9n/messages.json +3 -0
  299. package/assets/components/assets/menu/t9n/messages_ar.json +3 -0
  300. package/assets/components/assets/menu/t9n/messages_bg.json +3 -0
  301. package/assets/components/assets/menu/t9n/messages_bs.json +3 -0
  302. package/assets/components/assets/menu/t9n/messages_ca.json +3 -0
  303. package/assets/components/assets/menu/t9n/messages_cs.json +3 -0
  304. package/assets/components/assets/menu/t9n/messages_da.json +3 -0
  305. package/assets/components/assets/menu/t9n/messages_de.json +3 -0
  306. package/assets/components/assets/menu/t9n/messages_el.json +3 -0
  307. package/assets/components/assets/menu/t9n/messages_en.json +3 -0
  308. package/assets/components/assets/menu/t9n/messages_es.json +3 -0
  309. package/assets/components/assets/menu/t9n/messages_et.json +3 -0
  310. package/assets/components/assets/menu/t9n/messages_fi.json +3 -0
  311. package/assets/components/assets/menu/t9n/messages_fr.json +3 -0
  312. package/assets/components/assets/menu/t9n/messages_he.json +3 -0
  313. package/assets/components/assets/menu/t9n/messages_hr.json +3 -0
  314. package/assets/components/assets/menu/t9n/messages_hu.json +3 -0
  315. package/assets/components/assets/menu/t9n/messages_id.json +3 -0
  316. package/assets/components/assets/menu/t9n/messages_it.json +3 -0
  317. package/assets/components/assets/menu/t9n/messages_ja.json +3 -0
  318. package/assets/components/assets/menu/t9n/messages_ko.json +3 -0
  319. package/assets/components/assets/menu/t9n/messages_lt.json +3 -0
  320. package/assets/components/assets/menu/t9n/messages_lv.json +3 -0
  321. package/assets/components/assets/menu/t9n/messages_nl.json +3 -0
  322. package/assets/components/assets/menu/t9n/messages_no.json +3 -0
  323. package/assets/components/assets/menu/t9n/messages_pl.json +3 -0
  324. package/assets/components/assets/menu/t9n/messages_pt-BR.json +3 -0
  325. package/assets/components/assets/menu/t9n/messages_pt-PT.json +3 -0
  326. package/assets/components/assets/menu/t9n/messages_ro.json +3 -0
  327. package/assets/components/assets/menu/t9n/messages_ru.json +3 -0
  328. package/assets/components/assets/menu/t9n/messages_sk.json +3 -0
  329. package/assets/components/assets/menu/t9n/messages_sl.json +3 -0
  330. package/assets/components/assets/menu/t9n/messages_sr.json +3 -0
  331. package/assets/components/assets/menu/t9n/messages_sv.json +3 -0
  332. package/assets/components/assets/menu/t9n/messages_th.json +3 -0
  333. package/assets/components/assets/menu/t9n/messages_tr.json +3 -0
  334. package/assets/components/assets/menu/t9n/messages_uk.json +3 -0
  335. package/assets/components/assets/menu/t9n/messages_vi.json +3 -0
  336. package/assets/components/assets/menu/t9n/messages_zh-CN.json +3 -0
  337. package/assets/components/assets/menu/t9n/messages_zh-HK.json +3 -0
  338. package/assets/components/assets/menu/t9n/messages_zh-TW.json +3 -0
  339. package/assets/components/assets/menu-item/t9n/messages.json +4 -0
  340. package/assets/components/assets/menu-item/t9n/messages_ar.json +4 -0
  341. package/assets/components/assets/menu-item/t9n/messages_bg.json +4 -0
  342. package/assets/components/assets/menu-item/t9n/messages_bs.json +4 -0
  343. package/assets/components/assets/menu-item/t9n/messages_ca.json +4 -0
  344. package/assets/components/assets/menu-item/t9n/messages_cs.json +4 -0
  345. package/assets/components/assets/menu-item/t9n/messages_da.json +4 -0
  346. package/assets/components/assets/menu-item/t9n/messages_de.json +4 -0
  347. package/assets/components/assets/menu-item/t9n/messages_el.json +4 -0
  348. package/assets/components/assets/menu-item/t9n/messages_en.json +4 -0
  349. package/assets/components/assets/menu-item/t9n/messages_es.json +4 -0
  350. package/assets/components/assets/menu-item/t9n/messages_et.json +4 -0
  351. package/assets/components/assets/menu-item/t9n/messages_fi.json +4 -0
  352. package/assets/components/assets/menu-item/t9n/messages_fr.json +4 -0
  353. package/assets/components/assets/menu-item/t9n/messages_he.json +4 -0
  354. package/assets/components/assets/menu-item/t9n/messages_hr.json +4 -0
  355. package/assets/components/assets/menu-item/t9n/messages_hu.json +4 -0
  356. package/assets/components/assets/menu-item/t9n/messages_id.json +4 -0
  357. package/assets/components/assets/menu-item/t9n/messages_it.json +4 -0
  358. package/assets/components/assets/menu-item/t9n/messages_ja.json +4 -0
  359. package/assets/components/assets/menu-item/t9n/messages_ko.json +4 -0
  360. package/assets/components/assets/menu-item/t9n/messages_lt.json +4 -0
  361. package/assets/components/assets/menu-item/t9n/messages_lv.json +4 -0
  362. package/assets/components/assets/menu-item/t9n/messages_nl.json +4 -0
  363. package/assets/components/assets/menu-item/t9n/messages_no.json +4 -0
  364. package/assets/components/assets/menu-item/t9n/messages_pl.json +4 -0
  365. package/assets/components/assets/menu-item/t9n/messages_pt-BR.json +4 -0
  366. package/assets/components/assets/menu-item/t9n/messages_pt-PT.json +4 -0
  367. package/assets/components/assets/menu-item/t9n/messages_ro.json +4 -0
  368. package/assets/components/assets/menu-item/t9n/messages_ru.json +4 -0
  369. package/assets/components/assets/menu-item/t9n/messages_sk.json +4 -0
  370. package/assets/components/assets/menu-item/t9n/messages_sl.json +4 -0
  371. package/assets/components/assets/menu-item/t9n/messages_sr.json +4 -0
  372. package/assets/components/assets/menu-item/t9n/messages_sv.json +4 -0
  373. package/assets/components/assets/menu-item/t9n/messages_th.json +4 -0
  374. package/assets/components/assets/menu-item/t9n/messages_tr.json +4 -0
  375. package/assets/components/assets/menu-item/t9n/messages_uk.json +4 -0
  376. package/assets/components/assets/menu-item/t9n/messages_vi.json +4 -0
  377. package/assets/components/assets/menu-item/t9n/messages_zh-CN.json +4 -0
  378. package/assets/components/assets/menu-item/t9n/messages_zh-HK.json +4 -0
  379. package/assets/components/assets/menu-item/t9n/messages_zh-TW.json +4 -0
  380. package/assets/components/assets/tab-title/t9n/messages.json +3 -0
  381. package/assets/components/assets/tab-title/t9n/messages_ar.json +3 -0
  382. package/assets/components/assets/tab-title/t9n/messages_bg.json +3 -0
  383. package/assets/components/assets/tab-title/t9n/messages_bs.json +3 -0
  384. package/assets/components/assets/tab-title/t9n/messages_ca.json +3 -0
  385. package/assets/components/assets/tab-title/t9n/messages_cs.json +3 -0
  386. package/assets/components/assets/tab-title/t9n/messages_da.json +3 -0
  387. package/assets/components/assets/tab-title/t9n/messages_de.json +3 -0
  388. package/assets/components/assets/tab-title/t9n/messages_el.json +3 -0
  389. package/assets/components/assets/tab-title/t9n/messages_en.json +3 -0
  390. package/assets/components/assets/tab-title/t9n/messages_es.json +3 -0
  391. package/assets/components/assets/tab-title/t9n/messages_et.json +3 -0
  392. package/assets/components/assets/tab-title/t9n/messages_fi.json +3 -0
  393. package/assets/components/assets/tab-title/t9n/messages_fr.json +3 -0
  394. package/assets/components/assets/tab-title/t9n/messages_he.json +3 -0
  395. package/assets/components/assets/tab-title/t9n/messages_hr.json +3 -0
  396. package/assets/components/assets/tab-title/t9n/messages_hu.json +3 -0
  397. package/assets/components/assets/tab-title/t9n/messages_id.json +3 -0
  398. package/assets/components/assets/tab-title/t9n/messages_it.json +3 -0
  399. package/assets/components/assets/tab-title/t9n/messages_ja.json +3 -0
  400. package/assets/components/assets/tab-title/t9n/messages_ko.json +3 -0
  401. package/assets/components/assets/tab-title/t9n/messages_lt.json +3 -0
  402. package/assets/components/assets/tab-title/t9n/messages_lv.json +3 -0
  403. package/assets/components/assets/tab-title/t9n/messages_nl.json +3 -0
  404. package/assets/components/assets/tab-title/t9n/messages_no.json +3 -0
  405. package/assets/components/assets/tab-title/t9n/messages_pl.json +3 -0
  406. package/assets/components/assets/tab-title/t9n/messages_pt-BR.json +3 -0
  407. package/assets/components/assets/tab-title/t9n/messages_pt-PT.json +3 -0
  408. package/assets/components/assets/tab-title/t9n/messages_ro.json +3 -0
  409. package/assets/components/assets/tab-title/t9n/messages_ru.json +3 -0
  410. package/assets/components/assets/tab-title/t9n/messages_sk.json +3 -0
  411. package/assets/components/assets/tab-title/t9n/messages_sl.json +3 -0
  412. package/assets/components/assets/tab-title/t9n/messages_sr.json +3 -0
  413. package/assets/components/assets/tab-title/t9n/messages_sv.json +3 -0
  414. package/assets/components/assets/tab-title/t9n/messages_th.json +3 -0
  415. package/assets/components/assets/tab-title/t9n/messages_tr.json +3 -0
  416. package/assets/components/assets/tab-title/t9n/messages_uk.json +3 -0
  417. package/assets/components/assets/tab-title/t9n/messages_vi.json +3 -0
  418. package/assets/components/assets/tab-title/t9n/messages_zh-CN.json +3 -0
  419. package/assets/components/assets/tab-title/t9n/messages_zh-HK.json +3 -0
  420. package/assets/components/assets/tab-title/t9n/messages_zh-TW.json +3 -0
  421. package/assets/components/assets/text-area/t9n/messages.json +2 -1
  422. package/assets/components/assets/text-area/t9n/messages_en.json +2 -1
  423. package/assets/esri/core/workers/RemoteClient.js +1 -1
  424. package/assets/esri/core/workers/chunks/002fe1ec63ea33e6972d.js +1 -0
  425. package/assets/esri/core/workers/chunks/013efa75c96be04cf57a.js +1 -0
  426. package/assets/esri/core/workers/chunks/0254165377538522c830.js +1 -0
  427. package/assets/esri/core/workers/chunks/036301f545aba2b8e485.js +1 -0
  428. package/assets/esri/core/workers/chunks/07f16ea775b39a1a4a7b.js +1 -0
  429. package/assets/esri/core/workers/chunks/0d47e4b1b41b1f87e81b.js +1 -0
  430. package/assets/esri/core/workers/chunks/0d805fd9cd9ff3a636ca.js +1 -0
  431. package/assets/esri/core/workers/chunks/0fb1d3dce61bdd71bfff.js +1 -0
  432. package/assets/esri/core/workers/chunks/105cf61dbd999d0cee16.js +1 -0
  433. package/assets/esri/core/workers/chunks/114ef73112dd50edf5a4.js +1 -0
  434. package/assets/esri/core/workers/chunks/{1766371def0b2f953ac3.js → 13ed0105d52d57897730.js} +1 -1
  435. package/assets/esri/core/workers/chunks/1497709057d28ce7c1be.js +1 -0
  436. package/assets/esri/core/workers/chunks/170c72126d10b1fdb2b0.js +1 -0
  437. package/assets/esri/core/workers/chunks/1bbc868d2430103951eb.js +1 -0
  438. package/assets/esri/core/workers/chunks/1d2ef88a8d028adef102.js +1 -0
  439. package/assets/esri/core/workers/chunks/1e9e68312cd865358260.js +1 -0
  440. package/assets/esri/core/workers/chunks/2420ec029236ab31d908.js +1 -0
  441. package/assets/esri/core/workers/chunks/28474af01bf427c36eeb.js +1 -0
  442. package/assets/esri/core/workers/chunks/28c67c98039503b62e6e.js +1 -0
  443. package/assets/esri/core/workers/chunks/2ef70c9b2484a11b7435.js +1 -0
  444. package/assets/esri/core/workers/chunks/{efb96aefe979a0f5c632.js → 3048157f4f13d22c1753.js} +1 -1
  445. package/assets/esri/core/workers/chunks/308eeeaec591b4eea1de.js +1 -0
  446. package/assets/esri/core/workers/chunks/308f3811dfa71f619279.js +1 -0
  447. package/assets/esri/core/workers/chunks/314a8b5593306be246ab.js +1 -0
  448. package/assets/esri/core/workers/chunks/35a97dd2872ac3f00977.js +1 -0
  449. package/assets/esri/core/workers/chunks/3620e9fa4b5dbc21ad87.js +1 -0
  450. package/assets/esri/core/workers/chunks/39079bcfd35ed73c4e34.js +1 -0
  451. package/assets/esri/core/workers/chunks/39ae4b9b766f674bc6f2.js +1 -0
  452. package/assets/esri/core/workers/chunks/{2bdc63395c7466ce1641.js → 3b3d676b609c47a77164.js} +1 -1
  453. package/assets/esri/core/workers/chunks/3bbaa78c68a4bf159722.js +1 -0
  454. package/assets/esri/core/workers/chunks/{0d02856e55d20b99fc8b.js → 3bc77c0c08f72d74f08b.js} +1 -1
  455. package/assets/esri/core/workers/chunks/3c3f65913006b84b2289.js +1 -0
  456. package/assets/esri/core/workers/chunks/3d42fa4ab5f8632d690a.js +1 -0
  457. package/assets/esri/core/workers/chunks/3d9a8cb638cf9b8ca4b3.js +1 -0
  458. package/assets/esri/core/workers/chunks/3db8ae98799c752afe60.js +1 -0
  459. package/assets/esri/core/workers/chunks/4018d8a06471423cb672.js +1 -0
  460. package/assets/esri/core/workers/chunks/42b6315e21c4c1345ba5.js +1 -0
  461. package/assets/esri/core/workers/chunks/42be658be0019944d8d5.js +1 -0
  462. package/assets/esri/core/workers/chunks/42f3421740a5479559dc.js +1 -0
  463. package/assets/esri/core/workers/chunks/45629ff775e77234b227.js +1 -0
  464. package/assets/esri/core/workers/chunks/4b235d1b6a72773cd4f4.js +1107 -0
  465. package/assets/esri/core/workers/chunks/50b17799f1abce982a19.js +1 -0
  466. package/assets/esri/core/workers/chunks/52315f93a6f0ad59bd90.js +1 -0
  467. package/assets/esri/core/workers/chunks/54b319ca2d557b4b4358.js +1 -0
  468. package/assets/esri/core/workers/chunks/57077e608f20d3a931e8.js +1 -0
  469. package/assets/esri/core/workers/chunks/{97cdbec7532cfcdf9ad2.js → 595a2baa04d92de59558.js} +1 -1
  470. package/assets/esri/core/workers/chunks/5bb96e602d7cecbecf54.js +1 -0
  471. package/assets/esri/core/workers/chunks/5c69acab678f61d3f1a2.js +1 -0
  472. package/assets/esri/core/workers/chunks/{45a4041881e6235d73a2.js → 5f6e899aceffcf9bffb0.js} +1 -1
  473. package/assets/esri/core/workers/chunks/63322229183f1d4eaa70.js +1 -0
  474. package/assets/esri/core/workers/chunks/642510b0371311ff8e16.js +1 -0
  475. package/assets/esri/core/workers/chunks/68b0e0aa33880bc1ba77.js +1 -0
  476. package/assets/esri/core/workers/chunks/6995ace1d25d67c98d0e.js +1 -0
  477. package/assets/esri/core/workers/chunks/6a3d611e8842afbb50ab.js.LICENSE.txt +1 -6
  478. package/assets/esri/core/workers/chunks/6a82be278c7f3db83354.js +1 -0
  479. package/assets/esri/core/workers/chunks/6aa99bcb868b0a7cc58c.js +1 -0
  480. package/assets/esri/core/workers/chunks/6e562fa57c0347091154.js +1 -0
  481. package/assets/esri/core/workers/chunks/6fb92cd88e4fb65fa7be.js +1 -0
  482. package/assets/esri/core/workers/chunks/740dc67038f554431f1b.js +1 -0
  483. package/assets/esri/core/workers/chunks/77fcc4fc0fb3739365f6.js +1 -0
  484. package/assets/esri/core/workers/chunks/784587a8ae46e3856507.js +1 -0
  485. package/assets/esri/core/workers/chunks/{4c35c663528f710e8c78.js → 79cb672c85ea29e8484a.js} +1 -1
  486. package/assets/esri/core/workers/chunks/7ce036a6592cd745e720.js +1 -0
  487. package/assets/esri/core/workers/chunks/7dc6774c77c822b68c99.js +1 -0
  488. package/assets/esri/core/workers/chunks/7e4013f8c31c9a9438c6.js +1 -0
  489. package/assets/esri/core/workers/chunks/82939ead43848a13f765.js +1 -0
  490. package/assets/esri/core/workers/chunks/82a103a8b5382300889d.js +1 -0
  491. package/assets/esri/core/workers/chunks/88fdd288ef799a7ac48a.js +1 -0
  492. package/assets/esri/core/workers/chunks/8b05fb365336cc42fecc.js +1 -0
  493. package/assets/esri/core/workers/chunks/8b6b963230df56850580.js +1 -0
  494. package/assets/esri/core/workers/chunks/8e08968505483dc58e00.js +1 -0
  495. package/assets/esri/core/workers/chunks/915734255a79bff3ef0f.js +1 -0
  496. package/assets/esri/core/workers/chunks/928a311786199825fd29.js +1 -0
  497. package/assets/esri/core/workers/chunks/95ff92d7caa34664d58f.js +1 -0
  498. package/assets/esri/core/workers/chunks/99512f2aa78e8ff6b6c6.js +1 -0
  499. package/assets/esri/core/workers/chunks/9a0e7c41f796609b3db9.js +1 -0
  500. package/assets/esri/core/workers/chunks/9c8ab6bd8c170cbc5fa5.js +1 -0
  501. package/assets/esri/core/workers/chunks/9e570cd4a48c30c83ae6.js +1 -0
  502. package/assets/esri/core/workers/chunks/a6ece91e6b3343f133a0.js +1 -0
  503. package/assets/esri/core/workers/chunks/{96c027ffad89524b0820.js → af8f75478979e11fc00a.js} +1 -1
  504. package/assets/esri/core/workers/chunks/b052463ffb7cb32306dc.js +1 -0
  505. package/assets/esri/core/workers/chunks/b2a423d9ce8bb784267c.js +1 -0
  506. package/assets/esri/core/workers/chunks/b31974524932e638df8c.js +1 -0
  507. package/assets/esri/core/workers/chunks/b75b4b132dbd9cb9d372.js +1 -0
  508. package/assets/esri/core/workers/chunks/bb3c94acc6d60436e40a.js +1 -0
  509. package/assets/esri/core/workers/chunks/bc89f5f9653bb1242a61.js +1 -0
  510. package/assets/esri/core/workers/chunks/bcd2af32e2380fc3c6b3.js +1 -0
  511. package/assets/esri/core/workers/chunks/{4a12ca8d6756cedfb74c.js → bf3a6346ec25692e130c.js} +1 -1
  512. package/assets/esri/core/workers/chunks/{3c5a64a545272f148e93.js → c16ec2f614844b3191c0.js} +1 -1
  513. package/assets/esri/core/workers/chunks/c1dfbda75abc748a6ca4.js +1 -0
  514. package/assets/esri/core/workers/chunks/c8702e53a8ad6cf6ab85.js +1 -0
  515. package/assets/esri/core/workers/chunks/c90416e7bf29eb1d4536.js +1 -0
  516. package/assets/esri/core/workers/chunks/cb004c492e22c50f9bfa.js +1 -0
  517. package/assets/esri/core/workers/chunks/cb763c42379341b94d1e.js +1 -0
  518. package/assets/esri/core/workers/chunks/cfc3dcca2b69d20d5375.js +1 -0
  519. package/assets/esri/core/workers/chunks/cfc48f30ecc9b27ac409.js +1 -0
  520. package/assets/esri/core/workers/chunks/cfe379a78a983373b3ac.js +1 -0
  521. package/assets/esri/core/workers/chunks/d0e2b42dca51711f2c6f.js +1 -0
  522. package/assets/esri/core/workers/chunks/d0ff496834686dbfe29f.js +1 -0
  523. package/assets/esri/core/workers/chunks/{c7fb48ea5d907883bcce.js → d199290f843ffb78a001.js} +1 -1
  524. package/assets/esri/core/workers/chunks/d1c00e7d7884c3010e1c.js +1 -0
  525. package/assets/esri/core/workers/chunks/d2a127f7bb0e2ba14a13.js +1 -0
  526. package/assets/esri/core/workers/chunks/d8607326a199dd994844.js +1 -0
  527. package/assets/esri/core/workers/chunks/da0ab3f64802204323ed.js +1 -0
  528. package/assets/esri/core/workers/chunks/dabd889e064c4e7807fa.js +1 -0
  529. package/assets/esri/core/workers/chunks/{3bc6b5f0643364749ef8.js → de3d57c9b5d7a1d33bf1.js} +1 -1
  530. package/assets/esri/core/workers/chunks/df661a3b3629bd122a73.js +1 -0
  531. package/assets/esri/core/workers/chunks/df96824a6f76bad1370c.js +1 -0
  532. package/assets/esri/core/workers/chunks/e097f41bbfac00250477.js +1 -0
  533. package/assets/esri/core/workers/chunks/e3243d120a23a9b48392.js +1 -0
  534. package/assets/esri/core/workers/chunks/e325151aaa4a1c2a2d0c.js +1 -0
  535. package/assets/esri/core/workers/chunks/e55f80b774e090a0aa04.js +1 -0
  536. package/assets/esri/core/workers/chunks/e668c7e2e61aae6ca6e0.js +1 -0
  537. package/assets/esri/core/workers/chunks/e69e12c25658592e9874.js +1 -0
  538. package/assets/esri/core/workers/chunks/eb7053ba7e491bf25829.js +1 -0
  539. package/assets/esri/core/workers/chunks/ebe25310eabce61f7e72.js +1 -0
  540. package/assets/esri/core/workers/chunks/ef900614353505afb210.js +1 -0
  541. package/assets/esri/core/workers/chunks/f0299d93a95f40ea7cf7.js +1 -0
  542. package/assets/esri/core/workers/chunks/f1da7b29eecad0e9efae.js +1 -0
  543. package/assets/esri/core/workers/chunks/f23b95d7e51a144ad065.js +1 -0
  544. package/assets/esri/core/workers/chunks/f263e73a25fae4beffae.js +1 -0
  545. package/assets/esri/core/workers/chunks/{dcec000d7e883fab69ee.js → f50c6491bff822d89716.js} +1 -1
  546. package/assets/esri/core/workers/chunks/f528239fdba6d910d022.js +1 -0
  547. package/assets/esri/core/workers/chunks/f556490dae3c69419052.js +1 -0
  548. package/assets/esri/core/workers/chunks/f709ce36e29371d4f9d0.js +1 -0
  549. package/assets/esri/core/workers/chunks/{2f9fadbe7e94f79afeda.js → f88a6a9c837b5f76bdd2.js} +1 -1
  550. package/assets/esri/core/workers/chunks/fb44d872b9dbadcf8ccf.js +1 -0
  551. package/assets/esri/core/workers/chunks/fcc8aa0624f212b94a70.js +1 -0
  552. package/assets/esri/images/portal/livestreamvideolayer16.png +0 -0
  553. package/assets/esri/images/portal/{mediaservice16.png → videolayer16.png} +0 -0
  554. package/assets/esri/t9n/common_sv.json +1 -1
  555. package/assets/esri/themes/base/_View.scss +2 -5
  556. package/assets/esri/themes/base/widgets/_BasemapGallery.scss +9 -12
  557. package/assets/esri/themes/base/widgets/_Bookmarks.scss +5 -0
  558. package/assets/esri/themes/base/widgets/_Daylight.scss +4 -6
  559. package/assets/esri/themes/base/widgets/_Feature.scss +20 -8
  560. package/assets/esri/themes/base/widgets/_FeatureContent.scss +9 -3
  561. package/assets/esri/themes/base/widgets/_FeatureForm.scss +19 -2
  562. package/assets/esri/themes/base/widgets/_Features.scss +5 -7
  563. package/assets/esri/themes/base/widgets/_OrientedImageryViewer.scss +69 -36
  564. package/assets/esri/themes/base/widgets/_Popup.scss +3 -3
  565. package/assets/esri/themes/base/widgets/_ScaleRangeSlider.scss +1 -0
  566. package/assets/esri/themes/base/widgets/_Swipe.scss +11 -0
  567. package/assets/esri/themes/base/widgets/_ValuePicker.scss +5 -2
  568. package/assets/esri/themes/base/widgets/_Widget.scss +7 -0
  569. package/assets/esri/themes/dark/main.css +1 -1
  570. package/assets/esri/themes/light/main.css +1 -1
  571. package/assets/esri/themes/light/view.css +1 -1
  572. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ar.json +1 -1
  573. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_bg.json +1 -1
  574. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_bs.json +1 -1
  575. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ca.json +1 -1
  576. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_cs.json +1 -1
  577. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_da.json +1 -1
  578. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_de.json +1 -1
  579. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_el.json +1 -1
  580. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_es.json +1 -1
  581. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_et.json +1 -1
  582. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_fi.json +1 -1
  583. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_fr.json +1 -1
  584. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_he.json +1 -1
  585. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_hr.json +1 -1
  586. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_hu.json +1 -1
  587. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_id.json +1 -1
  588. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_it.json +1 -1
  589. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ja.json +1 -1
  590. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ko.json +1 -1
  591. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_lt.json +1 -1
  592. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_lv.json +1 -1
  593. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_nb.json +1 -1
  594. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_nl.json +1 -1
  595. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_pl.json +1 -1
  596. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_pt-BR.json +1 -1
  597. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_pt-PT.json +1 -1
  598. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ro.json +1 -1
  599. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ru.json +1 -1
  600. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_sk.json +1 -1
  601. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_sl.json +1 -1
  602. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_sr.json +1 -1
  603. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_sv.json +1 -1
  604. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_th.json +1 -1
  605. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_tr.json +1 -1
  606. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_uk.json +1 -1
  607. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_vi.json +1 -1
  608. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_zh-CN.json +1 -1
  609. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_zh-HK.json +1 -1
  610. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_zh-TW.json +1 -1
  611. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ar.json +1 -1
  612. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_bg.json +1 -1
  613. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_bs.json +1 -1
  614. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ca.json +1 -1
  615. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_cs.json +1 -1
  616. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_da.json +1 -1
  617. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_de.json +1 -1
  618. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_el.json +1 -1
  619. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_es.json +1 -1
  620. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_et.json +1 -1
  621. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_fi.json +1 -1
  622. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_fr.json +1 -1
  623. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_he.json +1 -1
  624. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_hr.json +1 -1
  625. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_hu.json +1 -1
  626. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_id.json +1 -1
  627. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_it.json +1 -1
  628. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ja.json +1 -1
  629. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ko.json +1 -1
  630. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_lt.json +1 -1
  631. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_lv.json +1 -1
  632. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_nb.json +1 -1
  633. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_nl.json +1 -1
  634. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_pl.json +1 -1
  635. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_pt-BR.json +1 -1
  636. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_pt-PT.json +1 -1
  637. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ro.json +1 -1
  638. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ru.json +1 -1
  639. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sk.json +1 -1
  640. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sl.json +1 -1
  641. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sr.json +1 -1
  642. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sv.json +1 -1
  643. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_th.json +1 -1
  644. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_tr.json +1 -1
  645. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_uk.json +1 -1
  646. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_vi.json +1 -1
  647. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_zh-CN.json +1 -1
  648. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_zh-HK.json +1 -1
  649. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_zh-TW.json +1 -1
  650. package/assets/esri/widgets/CoordinateConversion/t9n/CoordinateConversion_ja.json +1 -1
  651. package/assets/esri/widgets/Editor/t9n/Editor_ar.json +1 -1
  652. package/assets/esri/widgets/Editor/t9n/Editor_bg.json +1 -1
  653. package/assets/esri/widgets/Editor/t9n/Editor_bs.json +1 -1
  654. package/assets/esri/widgets/Editor/t9n/Editor_ca.json +1 -1
  655. package/assets/esri/widgets/Editor/t9n/Editor_cs.json +1 -1
  656. package/assets/esri/widgets/Editor/t9n/Editor_da.json +1 -1
  657. package/assets/esri/widgets/Editor/t9n/Editor_de.json +1 -1
  658. package/assets/esri/widgets/Editor/t9n/Editor_el.json +1 -1
  659. package/assets/esri/widgets/Editor/t9n/Editor_es.json +1 -1
  660. package/assets/esri/widgets/Editor/t9n/Editor_et.json +1 -1
  661. package/assets/esri/widgets/Editor/t9n/Editor_fi.json +1 -1
  662. package/assets/esri/widgets/Editor/t9n/Editor_fr.json +1 -1
  663. package/assets/esri/widgets/Editor/t9n/Editor_he.json +1 -1
  664. package/assets/esri/widgets/Editor/t9n/Editor_hr.json +1 -1
  665. package/assets/esri/widgets/Editor/t9n/Editor_hu.json +1 -1
  666. package/assets/esri/widgets/Editor/t9n/Editor_id.json +1 -1
  667. package/assets/esri/widgets/Editor/t9n/Editor_it.json +1 -1
  668. package/assets/esri/widgets/Editor/t9n/Editor_ja.json +1 -1
  669. package/assets/esri/widgets/Editor/t9n/Editor_ko.json +1 -1
  670. package/assets/esri/widgets/Editor/t9n/Editor_lt.json +1 -1
  671. package/assets/esri/widgets/Editor/t9n/Editor_lv.json +1 -1
  672. package/assets/esri/widgets/Editor/t9n/Editor_nb.json +1 -1
  673. package/assets/esri/widgets/Editor/t9n/Editor_nl.json +1 -1
  674. package/assets/esri/widgets/Editor/t9n/Editor_pl.json +1 -1
  675. package/assets/esri/widgets/Editor/t9n/Editor_pt-BR.json +1 -1
  676. package/assets/esri/widgets/Editor/t9n/Editor_pt-PT.json +1 -1
  677. package/assets/esri/widgets/Editor/t9n/Editor_ro.json +1 -1
  678. package/assets/esri/widgets/Editor/t9n/Editor_ru.json +1 -1
  679. package/assets/esri/widgets/Editor/t9n/Editor_sk.json +1 -1
  680. package/assets/esri/widgets/Editor/t9n/Editor_sl.json +1 -1
  681. package/assets/esri/widgets/Editor/t9n/Editor_sr.json +1 -1
  682. package/assets/esri/widgets/Editor/t9n/Editor_sv.json +1 -1
  683. package/assets/esri/widgets/Editor/t9n/Editor_th.json +1 -1
  684. package/assets/esri/widgets/Editor/t9n/Editor_tr.json +1 -1
  685. package/assets/esri/widgets/Editor/t9n/Editor_uk.json +1 -1
  686. package/assets/esri/widgets/Editor/t9n/Editor_vi.json +1 -1
  687. package/assets/esri/widgets/Editor/t9n/Editor_zh-CN.json +1 -1
  688. package/assets/esri/widgets/Editor/t9n/Editor_zh-HK.json +1 -1
  689. package/assets/esri/widgets/Editor/t9n/Editor_zh-TW.json +1 -1
  690. package/assets/esri/widgets/Feature/t9n/Feature_ar.json +1 -1
  691. package/assets/esri/widgets/Feature/t9n/Feature_bg.json +1 -1
  692. package/assets/esri/widgets/Feature/t9n/Feature_bs.json +1 -1
  693. package/assets/esri/widgets/Feature/t9n/Feature_ca.json +1 -1
  694. package/assets/esri/widgets/Feature/t9n/Feature_cs.json +1 -1
  695. package/assets/esri/widgets/Feature/t9n/Feature_da.json +1 -1
  696. package/assets/esri/widgets/Feature/t9n/Feature_de.json +1 -1
  697. package/assets/esri/widgets/Feature/t9n/Feature_el.json +1 -1
  698. package/assets/esri/widgets/Feature/t9n/Feature_es.json +1 -1
  699. package/assets/esri/widgets/Feature/t9n/Feature_et.json +1 -1
  700. package/assets/esri/widgets/Feature/t9n/Feature_fi.json +1 -1
  701. package/assets/esri/widgets/Feature/t9n/Feature_fr.json +1 -1
  702. package/assets/esri/widgets/Feature/t9n/Feature_he.json +1 -1
  703. package/assets/esri/widgets/Feature/t9n/Feature_hr.json +1 -1
  704. package/assets/esri/widgets/Feature/t9n/Feature_hu.json +1 -1
  705. package/assets/esri/widgets/Feature/t9n/Feature_id.json +1 -1
  706. package/assets/esri/widgets/Feature/t9n/Feature_it.json +1 -1
  707. package/assets/esri/widgets/Feature/t9n/Feature_ja.json +1 -1
  708. package/assets/esri/widgets/Feature/t9n/Feature_ko.json +1 -1
  709. package/assets/esri/widgets/Feature/t9n/Feature_lt.json +1 -1
  710. package/assets/esri/widgets/Feature/t9n/Feature_lv.json +1 -1
  711. package/assets/esri/widgets/Feature/t9n/Feature_nb.json +1 -1
  712. package/assets/esri/widgets/Feature/t9n/Feature_nl.json +1 -1
  713. package/assets/esri/widgets/Feature/t9n/Feature_pl.json +1 -1
  714. package/assets/esri/widgets/Feature/t9n/Feature_pt-BR.json +1 -1
  715. package/assets/esri/widgets/Feature/t9n/Feature_pt-PT.json +1 -1
  716. package/assets/esri/widgets/Feature/t9n/Feature_ro.json +1 -1
  717. package/assets/esri/widgets/Feature/t9n/Feature_ru.json +1 -1
  718. package/assets/esri/widgets/Feature/t9n/Feature_sk.json +1 -1
  719. package/assets/esri/widgets/Feature/t9n/Feature_sl.json +1 -1
  720. package/assets/esri/widgets/Feature/t9n/Feature_sr.json +1 -1
  721. package/assets/esri/widgets/Feature/t9n/Feature_sv.json +1 -1
  722. package/assets/esri/widgets/Feature/t9n/Feature_th.json +1 -1
  723. package/assets/esri/widgets/Feature/t9n/Feature_tr.json +1 -1
  724. package/assets/esri/widgets/Feature/t9n/Feature_uk.json +1 -1
  725. package/assets/esri/widgets/Feature/t9n/Feature_vi.json +1 -1
  726. package/assets/esri/widgets/Feature/t9n/Feature_zh-CN.json +1 -1
  727. package/assets/esri/widgets/Feature/t9n/Feature_zh-HK.json +1 -1
  728. package/assets/esri/widgets/Feature/t9n/Feature_zh-TW.json +1 -1
  729. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ar.json +1 -1
  730. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_bg.json +1 -1
  731. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_bs.json +1 -1
  732. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ca.json +1 -1
  733. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_cs.json +1 -1
  734. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_da.json +1 -1
  735. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_de.json +1 -1
  736. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_el.json +1 -1
  737. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_es.json +1 -1
  738. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_et.json +1 -1
  739. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_fi.json +1 -1
  740. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_fr.json +1 -1
  741. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_he.json +1 -1
  742. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_hr.json +1 -1
  743. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_hu.json +1 -1
  744. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_id.json +1 -1
  745. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_it.json +1 -1
  746. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ja.json +1 -1
  747. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ko.json +1 -1
  748. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_lt.json +1 -1
  749. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_lv.json +1 -1
  750. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_nb.json +1 -1
  751. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_nl.json +1 -1
  752. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pl.json +1 -1
  753. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pt-BR.json +1 -1
  754. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pt-PT.json +1 -1
  755. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ro.json +1 -1
  756. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ru.json +1 -1
  757. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sk.json +1 -1
  758. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sl.json +1 -1
  759. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sr.json +1 -1
  760. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sv.json +1 -1
  761. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_th.json +1 -1
  762. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_tr.json +1 -1
  763. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_uk.json +1 -1
  764. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_vi.json +1 -1
  765. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-CN.json +1 -1
  766. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-HK.json +1 -1
  767. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-TW.json +1 -1
  768. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_ja.json +1 -1
  769. package/assets/esri/widgets/Features/t9n/Features_ar.json +1 -1
  770. package/assets/esri/widgets/Features/t9n/Features_bg.json +1 -1
  771. package/assets/esri/widgets/Features/t9n/Features_bs.json +1 -1
  772. package/assets/esri/widgets/Features/t9n/Features_ca.json +1 -1
  773. package/assets/esri/widgets/Features/t9n/Features_cs.json +1 -1
  774. package/assets/esri/widgets/Features/t9n/Features_da.json +1 -1
  775. package/assets/esri/widgets/Features/t9n/Features_de.json +1 -1
  776. package/assets/esri/widgets/Features/t9n/Features_el.json +1 -1
  777. package/assets/esri/widgets/Features/t9n/Features_es.json +1 -1
  778. package/assets/esri/widgets/Features/t9n/Features_et.json +1 -1
  779. package/assets/esri/widgets/Features/t9n/Features_fi.json +1 -1
  780. package/assets/esri/widgets/Features/t9n/Features_fr.json +1 -1
  781. package/assets/esri/widgets/Features/t9n/Features_he.json +1 -1
  782. package/assets/esri/widgets/Features/t9n/Features_hr.json +1 -1
  783. package/assets/esri/widgets/Features/t9n/Features_hu.json +1 -1
  784. package/assets/esri/widgets/Features/t9n/Features_id.json +1 -1
  785. package/assets/esri/widgets/Features/t9n/Features_it.json +1 -1
  786. package/assets/esri/widgets/Features/t9n/Features_ja.json +1 -1
  787. package/assets/esri/widgets/Features/t9n/Features_ko.json +1 -1
  788. package/assets/esri/widgets/Features/t9n/Features_lt.json +1 -1
  789. package/assets/esri/widgets/Features/t9n/Features_lv.json +1 -1
  790. package/assets/esri/widgets/Features/t9n/Features_nb.json +1 -1
  791. package/assets/esri/widgets/Features/t9n/Features_nl.json +1 -1
  792. package/assets/esri/widgets/Features/t9n/Features_pl.json +1 -1
  793. package/assets/esri/widgets/Features/t9n/Features_pt-BR.json +1 -1
  794. package/assets/esri/widgets/Features/t9n/Features_pt-PT.json +1 -1
  795. package/assets/esri/widgets/Features/t9n/Features_ro.json +1 -1
  796. package/assets/esri/widgets/Features/t9n/Features_ru.json +1 -1
  797. package/assets/esri/widgets/Features/t9n/Features_sk.json +1 -1
  798. package/assets/esri/widgets/Features/t9n/Features_sl.json +1 -1
  799. package/assets/esri/widgets/Features/t9n/Features_sr.json +1 -1
  800. package/assets/esri/widgets/Features/t9n/Features_sv.json +1 -1
  801. package/assets/esri/widgets/Features/t9n/Features_th.json +1 -1
  802. package/assets/esri/widgets/Features/t9n/Features_tr.json +1 -1
  803. package/assets/esri/widgets/Features/t9n/Features_uk.json +1 -1
  804. package/assets/esri/widgets/Features/t9n/Features_vi.json +1 -1
  805. package/assets/esri/widgets/Features/t9n/Features_zh-CN.json +1 -1
  806. package/assets/esri/widgets/Features/t9n/Features_zh-HK.json +1 -1
  807. package/assets/esri/widgets/Features/t9n/Features_zh-TW.json +1 -1
  808. package/assets/esri/widgets/Legend/t9n/Legend_ar.json +1 -1
  809. package/assets/esri/widgets/Legend/t9n/Legend_bg.json +1 -1
  810. package/assets/esri/widgets/Legend/t9n/Legend_bs.json +1 -1
  811. package/assets/esri/widgets/Legend/t9n/Legend_ca.json +1 -1
  812. package/assets/esri/widgets/Legend/t9n/Legend_cs.json +1 -1
  813. package/assets/esri/widgets/Legend/t9n/Legend_da.json +1 -1
  814. package/assets/esri/widgets/Legend/t9n/Legend_de.json +1 -1
  815. package/assets/esri/widgets/Legend/t9n/Legend_el.json +1 -1
  816. package/assets/esri/widgets/Legend/t9n/Legend_es.json +1 -1
  817. package/assets/esri/widgets/Legend/t9n/Legend_et.json +1 -1
  818. package/assets/esri/widgets/Legend/t9n/Legend_fi.json +1 -1
  819. package/assets/esri/widgets/Legend/t9n/Legend_fr.json +1 -1
  820. package/assets/esri/widgets/Legend/t9n/Legend_he.json +1 -1
  821. package/assets/esri/widgets/Legend/t9n/Legend_hr.json +1 -1
  822. package/assets/esri/widgets/Legend/t9n/Legend_hu.json +1 -1
  823. package/assets/esri/widgets/Legend/t9n/Legend_id.json +1 -1
  824. package/assets/esri/widgets/Legend/t9n/Legend_it.json +1 -1
  825. package/assets/esri/widgets/Legend/t9n/Legend_ja.json +1 -1
  826. package/assets/esri/widgets/Legend/t9n/Legend_ko.json +1 -1
  827. package/assets/esri/widgets/Legend/t9n/Legend_lt.json +1 -1
  828. package/assets/esri/widgets/Legend/t9n/Legend_lv.json +1 -1
  829. package/assets/esri/widgets/Legend/t9n/Legend_nb.json +1 -1
  830. package/assets/esri/widgets/Legend/t9n/Legend_nl.json +1 -1
  831. package/assets/esri/widgets/Legend/t9n/Legend_pl.json +1 -1
  832. package/assets/esri/widgets/Legend/t9n/Legend_pt-BR.json +1 -1
  833. package/assets/esri/widgets/Legend/t9n/Legend_pt-PT.json +1 -1
  834. package/assets/esri/widgets/Legend/t9n/Legend_ro.json +1 -1
  835. package/assets/esri/widgets/Legend/t9n/Legend_ru.json +1 -1
  836. package/assets/esri/widgets/Legend/t9n/Legend_sk.json +1 -1
  837. package/assets/esri/widgets/Legend/t9n/Legend_sl.json +1 -1
  838. package/assets/esri/widgets/Legend/t9n/Legend_sr.json +1 -1
  839. package/assets/esri/widgets/Legend/t9n/Legend_sv.json +1 -1
  840. package/assets/esri/widgets/Legend/t9n/Legend_th.json +1 -1
  841. package/assets/esri/widgets/Legend/t9n/Legend_tr.json +1 -1
  842. package/assets/esri/widgets/Legend/t9n/Legend_uk.json +1 -1
  843. package/assets/esri/widgets/Legend/t9n/Legend_vi.json +1 -1
  844. package/assets/esri/widgets/Legend/t9n/Legend_zh-CN.json +1 -1
  845. package/assets/esri/widgets/Legend/t9n/Legend_zh-HK.json +1 -1
  846. package/assets/esri/widgets/Legend/t9n/Legend_zh-TW.json +1 -1
  847. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer.json +1 -1
  848. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ar.json +1 -1
  849. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bg.json +1 -1
  850. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bs.json +1 -1
  851. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ca.json +1 -1
  852. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_cs.json +1 -1
  853. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_da.json +1 -1
  854. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_de.json +1 -1
  855. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_el.json +1 -1
  856. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_en.json +1 -1
  857. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_es.json +1 -1
  858. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_et.json +1 -1
  859. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fi.json +1 -1
  860. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fr.json +1 -1
  861. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_he.json +1 -1
  862. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hr.json +1 -1
  863. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hu.json +1 -1
  864. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_id.json +1 -1
  865. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_it.json +1 -1
  866. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ja.json +1 -1
  867. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ko.json +1 -1
  868. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lt.json +1 -1
  869. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lv.json +1 -1
  870. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nb.json +1 -1
  871. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nl.json +1 -1
  872. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pl.json +1 -1
  873. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-BR.json +1 -1
  874. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-PT.json +1 -1
  875. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ro.json +1 -1
  876. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ru.json +1 -1
  877. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sk.json +1 -1
  878. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sl.json +1 -1
  879. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sr.json +1 -1
  880. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sv.json +1 -1
  881. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_th.json +1 -1
  882. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_tr.json +1 -1
  883. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_uk.json +1 -1
  884. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_vi.json +1 -1
  885. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-CN.json +1 -1
  886. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-HK.json +1 -1
  887. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-TW.json +1 -1
  888. package/assets/esri/widgets/Popup/t9n/Popup_ar.json +1 -1
  889. package/assets/esri/widgets/Popup/t9n/Popup_bg.json +1 -1
  890. package/assets/esri/widgets/Popup/t9n/Popup_bs.json +1 -1
  891. package/assets/esri/widgets/Popup/t9n/Popup_ca.json +1 -1
  892. package/assets/esri/widgets/Popup/t9n/Popup_cs.json +1 -1
  893. package/assets/esri/widgets/Popup/t9n/Popup_da.json +1 -1
  894. package/assets/esri/widgets/Popup/t9n/Popup_de.json +1 -1
  895. package/assets/esri/widgets/Popup/t9n/Popup_el.json +1 -1
  896. package/assets/esri/widgets/Popup/t9n/Popup_es.json +1 -1
  897. package/assets/esri/widgets/Popup/t9n/Popup_et.json +1 -1
  898. package/assets/esri/widgets/Popup/t9n/Popup_fi.json +1 -1
  899. package/assets/esri/widgets/Popup/t9n/Popup_fr.json +1 -1
  900. package/assets/esri/widgets/Popup/t9n/Popup_he.json +1 -1
  901. package/assets/esri/widgets/Popup/t9n/Popup_hr.json +1 -1
  902. package/assets/esri/widgets/Popup/t9n/Popup_hu.json +1 -1
  903. package/assets/esri/widgets/Popup/t9n/Popup_id.json +1 -1
  904. package/assets/esri/widgets/Popup/t9n/Popup_it.json +1 -1
  905. package/assets/esri/widgets/Popup/t9n/Popup_ja.json +1 -1
  906. package/assets/esri/widgets/Popup/t9n/Popup_ko.json +1 -1
  907. package/assets/esri/widgets/Popup/t9n/Popup_lt.json +1 -1
  908. package/assets/esri/widgets/Popup/t9n/Popup_lv.json +1 -1
  909. package/assets/esri/widgets/Popup/t9n/Popup_nb.json +1 -1
  910. package/assets/esri/widgets/Popup/t9n/Popup_nl.json +1 -1
  911. package/assets/esri/widgets/Popup/t9n/Popup_pl.json +1 -1
  912. package/assets/esri/widgets/Popup/t9n/Popup_pt-BR.json +1 -1
  913. package/assets/esri/widgets/Popup/t9n/Popup_pt-PT.json +1 -1
  914. package/assets/esri/widgets/Popup/t9n/Popup_ro.json +1 -1
  915. package/assets/esri/widgets/Popup/t9n/Popup_ru.json +1 -1
  916. package/assets/esri/widgets/Popup/t9n/Popup_sk.json +1 -1
  917. package/assets/esri/widgets/Popup/t9n/Popup_sl.json +1 -1
  918. package/assets/esri/widgets/Popup/t9n/Popup_sr.json +1 -1
  919. package/assets/esri/widgets/Popup/t9n/Popup_sv.json +1 -1
  920. package/assets/esri/widgets/Popup/t9n/Popup_th.json +1 -1
  921. package/assets/esri/widgets/Popup/t9n/Popup_tr.json +1 -1
  922. package/assets/esri/widgets/Popup/t9n/Popup_uk.json +1 -1
  923. package/assets/esri/widgets/Popup/t9n/Popup_vi.json +1 -1
  924. package/assets/esri/widgets/Popup/t9n/Popup_zh-CN.json +1 -1
  925. package/assets/esri/widgets/Popup/t9n/Popup_zh-HK.json +1 -1
  926. package/assets/esri/widgets/Popup/t9n/Popup_zh-TW.json +1 -1
  927. package/assets/esri/widgets/Sketch/t9n/Sketch_ar.json +1 -1
  928. package/assets/esri/widgets/Sketch/t9n/Sketch_bg.json +1 -1
  929. package/assets/esri/widgets/Sketch/t9n/Sketch_bs.json +1 -1
  930. package/assets/esri/widgets/Sketch/t9n/Sketch_ca.json +1 -1
  931. package/assets/esri/widgets/Sketch/t9n/Sketch_cs.json +1 -1
  932. package/assets/esri/widgets/Sketch/t9n/Sketch_da.json +1 -1
  933. package/assets/esri/widgets/Sketch/t9n/Sketch_de.json +1 -1
  934. package/assets/esri/widgets/Sketch/t9n/Sketch_el.json +1 -1
  935. package/assets/esri/widgets/Sketch/t9n/Sketch_es.json +1 -1
  936. package/assets/esri/widgets/Sketch/t9n/Sketch_et.json +1 -1
  937. package/assets/esri/widgets/Sketch/t9n/Sketch_fi.json +1 -1
  938. package/assets/esri/widgets/Sketch/t9n/Sketch_fr.json +1 -1
  939. package/assets/esri/widgets/Sketch/t9n/Sketch_he.json +1 -1
  940. package/assets/esri/widgets/Sketch/t9n/Sketch_hr.json +1 -1
  941. package/assets/esri/widgets/Sketch/t9n/Sketch_hu.json +1 -1
  942. package/assets/esri/widgets/Sketch/t9n/Sketch_id.json +1 -1
  943. package/assets/esri/widgets/Sketch/t9n/Sketch_it.json +1 -1
  944. package/assets/esri/widgets/Sketch/t9n/Sketch_ja.json +1 -1
  945. package/assets/esri/widgets/Sketch/t9n/Sketch_ko.json +1 -1
  946. package/assets/esri/widgets/Sketch/t9n/Sketch_lt.json +1 -1
  947. package/assets/esri/widgets/Sketch/t9n/Sketch_lv.json +1 -1
  948. package/assets/esri/widgets/Sketch/t9n/Sketch_nb.json +1 -1
  949. package/assets/esri/widgets/Sketch/t9n/Sketch_nl.json +1 -1
  950. package/assets/esri/widgets/Sketch/t9n/Sketch_pl.json +1 -1
  951. package/assets/esri/widgets/Sketch/t9n/Sketch_pt-BR.json +1 -1
  952. package/assets/esri/widgets/Sketch/t9n/Sketch_pt-PT.json +1 -1
  953. package/assets/esri/widgets/Sketch/t9n/Sketch_ro.json +1 -1
  954. package/assets/esri/widgets/Sketch/t9n/Sketch_ru.json +1 -1
  955. package/assets/esri/widgets/Sketch/t9n/Sketch_sk.json +1 -1
  956. package/assets/esri/widgets/Sketch/t9n/Sketch_sl.json +1 -1
  957. package/assets/esri/widgets/Sketch/t9n/Sketch_sr.json +1 -1
  958. package/assets/esri/widgets/Sketch/t9n/Sketch_sv.json +1 -1
  959. package/assets/esri/widgets/Sketch/t9n/Sketch_th.json +1 -1
  960. package/assets/esri/widgets/Sketch/t9n/Sketch_tr.json +1 -1
  961. package/assets/esri/widgets/Sketch/t9n/Sketch_uk.json +1 -1
  962. package/assets/esri/widgets/Sketch/t9n/Sketch_vi.json +1 -1
  963. package/assets/esri/widgets/Sketch/t9n/Sketch_zh-CN.json +1 -1
  964. package/assets/esri/widgets/Sketch/t9n/Sketch_zh-HK.json +1 -1
  965. package/assets/esri/widgets/Sketch/t9n/Sketch_zh-TW.json +1 -1
  966. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ar.json +1 -1
  967. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_bg.json +1 -1
  968. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_bs.json +1 -1
  969. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ca.json +1 -1
  970. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_cs.json +1 -1
  971. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_da.json +1 -1
  972. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_de.json +1 -1
  973. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_el.json +1 -1
  974. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_es.json +1 -1
  975. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_et.json +1 -1
  976. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fi.json +1 -1
  977. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fr.json +1 -1
  978. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_he.json +1 -1
  979. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_hr.json +1 -1
  980. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_hu.json +1 -1
  981. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_id.json +1 -1
  982. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_it.json +1 -1
  983. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ja.json +1 -1
  984. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ko.json +1 -1
  985. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lt.json +1 -1
  986. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lv.json +1 -1
  987. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_nb.json +1 -1
  988. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_nl.json +1 -1
  989. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pl.json +1 -1
  990. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pt-BR.json +1 -1
  991. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pt-PT.json +1 -1
  992. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ro.json +1 -1
  993. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ru.json +1 -1
  994. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sk.json +1 -1
  995. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sl.json +1 -1
  996. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sr.json +1 -1
  997. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sv.json +1 -1
  998. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_th.json +1 -1
  999. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_tr.json +1 -1
  1000. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_uk.json +1 -1
  1001. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_vi.json +1 -1
  1002. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-CN.json +1 -1
  1003. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-HK.json +1 -1
  1004. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-TW.json +1 -1
  1005. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ar.json +1 -1
  1006. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_bg.json +1 -1
  1007. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_bs.json +1 -1
  1008. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ca.json +1 -1
  1009. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_cs.json +1 -1
  1010. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_da.json +1 -1
  1011. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_de.json +1 -1
  1012. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_el.json +1 -1
  1013. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_es.json +1 -1
  1014. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_et.json +1 -1
  1015. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_fi.json +1 -1
  1016. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_fr.json +1 -1
  1017. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_he.json +1 -1
  1018. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_hr.json +1 -1
  1019. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_hu.json +1 -1
  1020. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_id.json +1 -1
  1021. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_it.json +1 -1
  1022. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ja.json +1 -1
  1023. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ko.json +1 -1
  1024. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_lt.json +1 -1
  1025. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_lv.json +1 -1
  1026. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_nb.json +1 -1
  1027. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_nl.json +1 -1
  1028. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pl.json +1 -1
  1029. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pt-BR.json +1 -1
  1030. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pt-PT.json +1 -1
  1031. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ro.json +1 -1
  1032. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ru.json +1 -1
  1033. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sk.json +1 -1
  1034. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sl.json +1 -1
  1035. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sr.json +1 -1
  1036. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sv.json +1 -1
  1037. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_th.json +1 -1
  1038. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_tr.json +1 -1
  1039. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_uk.json +1 -1
  1040. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_vi.json +1 -1
  1041. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-CN.json +1 -1
  1042. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-HK.json +1 -1
  1043. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-TW.json +1 -1
  1044. package/chunks/AtmosphereCompositing.glsl.js +5 -5
  1045. package/chunks/BlendWeights.glsl.js +9 -9
  1046. package/chunks/Blur.glsl.js +1 -1
  1047. package/chunks/ChapmanAtmosphere.glsl.js +8 -7
  1048. package/chunks/CheckerBoard.glsl.js +5 -5
  1049. package/chunks/CloudsComposition.glsl.js +3 -3
  1050. package/chunks/ColorMaterial.glsl.js +12 -12
  1051. package/chunks/ComponentShader.glsl.js +8 -8
  1052. package/chunks/DefaultMaterial.glsl.js +43 -43
  1053. package/chunks/EdgeDetect.glsl.js +2 -2
  1054. package/chunks/EdgeShader.glsl.js +1 -1
  1055. package/chunks/Fog.glsl.js +2 -2
  1056. package/chunks/HUDMaterial.glsl.js +1 -1
  1057. package/chunks/HighlightApply.glsl.js +4 -4
  1058. package/chunks/ImageMaterial.glsl.js +7 -7
  1059. package/chunks/LineCallout.glsl.js +5 -5
  1060. package/chunks/LineMarker.glsl.js +1 -1
  1061. package/chunks/Path.glsl.js +16 -16
  1062. package/chunks/Pattern.glsl.js +33 -32
  1063. package/chunks/Precipitation.glsl.js +3 -3
  1064. package/chunks/RealisticTree.glsl.js +7 -7
  1065. package/chunks/RibbonLine.glsl.js +41 -41
  1066. package/chunks/SSAO.glsl.js +1 -1
  1067. package/chunks/ShadedColorMaterial.glsl.js +1 -1
  1068. package/chunks/ShadowCastAccumulate.glsl.js +4 -3
  1069. package/chunks/ShadowCastVisualize.glsl.js +1 -1
  1070. package/chunks/ShadowHighlight.glsl.js +14 -11
  1071. package/chunks/Terrain.glsl.js +15 -13
  1072. package/chunks/Theme.js +1 -1
  1073. package/chunks/Tooltip.js +1 -1
  1074. package/chunks/WaterSurface.glsl.js +18 -18
  1075. package/chunks/boundedPlane.js +1 -1
  1076. package/chunks/languageUtils.js +1 -1
  1077. package/chunks/mat3.js +1 -1
  1078. package/chunks/quat.js +1 -1
  1079. package/chunks/quat2.js +1 -1
  1080. package/chunks/quatf32.js +1 -1
  1081. package/chunks/vec2.js +1 -1
  1082. package/chunks/vec3.js +1 -1
  1083. package/chunks/vec3f32.js +1 -1
  1084. package/copyright.txt +1 -1
  1085. package/core/Clonable.js +1 -1
  1086. package/core/Collection.js +1 -1
  1087. package/core/Evented.js +1 -1
  1088. package/core/Handles.js +1 -1
  1089. package/core/JSONSupport.js +1 -1
  1090. package/core/MemCache.js +1 -1
  1091. package/core/MemCachePool.js +5 -0
  1092. package/core/Promise.js +1 -1
  1093. package/core/Queue.js +1 -1
  1094. package/core/ReadOnlyMultiOriginJSONSupport.js +1 -1
  1095. package/core/ReentrantObjectPool.js +1 -1
  1096. package/core/accessorSupport/MultiOriginStore.js +1 -1
  1097. package/core/accessorSupport/PropertyOrigin.js +1 -1
  1098. package/core/accessorSupport/extensions/serializableProperty/reader.js +1 -1
  1099. package/core/accessorSupport/trackingUtils.js +1 -1
  1100. package/core/accessorSupport/utils.js +1 -1
  1101. package/core/accessorSupport/watch.js +1 -1
  1102. package/core/clock.js +1 -1
  1103. package/core/events.js +1 -1
  1104. package/core/fontUtils.js +1 -1
  1105. package/core/handleUtils.js +1 -1
  1106. package/core/libs/gl-matrix-2/factories/quatf32.js +1 -1
  1107. package/core/libs/gl-matrix-2/factories/vec3f32.js +1 -1
  1108. package/core/libs/gl-matrix-2/math/mat3.js +1 -1
  1109. package/core/libs/gl-matrix-2/math/quat.js +1 -1
  1110. package/core/libs/gl-matrix-2/math/vec2.js +1 -1
  1111. package/core/libs/gl-matrix-2/math/vec3.js +1 -1
  1112. package/core/libs/gl-matrix-2/vec3.js +1 -1
  1113. package/core/libs/rbush/PooledRBush.js +1 -1
  1114. package/core/maybe.js +1 -1
  1115. package/core/perspectiveUtils.js +1 -1
  1116. package/core/promiseUtils.js +1 -1
  1117. package/core/scheduling.js +1 -1
  1118. package/core/support/OwningCollection.js +1 -1
  1119. package/core/support/WatchUpdatingTracking.js +1 -1
  1120. package/core/time.js +1 -1
  1121. package/core/timeUtils.js +1 -1
  1122. package/core/unitFormatUtils.js +1 -1
  1123. package/core/unitUtils.js +1 -1
  1124. package/core/urlUtils.js +1 -1
  1125. package/core/watchUtils.js +1 -1
  1126. package/core/workers/RemoteClient.js +1 -1
  1127. package/core/workers/request.js +1 -1
  1128. package/core/workers/workers.js +1 -1
  1129. package/form/elements/RelationshipElement.d.ts +4 -0
  1130. package/geometry/Mesh.js +1 -1
  1131. package/geometry/Polygon.js +1 -1
  1132. package/geometry/support/DoubleArray.js +1 -1
  1133. package/geometry/support/MeshComponent.js +1 -1
  1134. package/geometry/support/MeshMaterial.js +1 -1
  1135. package/geometry/support/MeshMaterialMetallicRoughness.js +1 -1
  1136. package/geometry/support/MeshTexture.js +1 -1
  1137. package/geometry/support/MeshVertexAttributes.js +1 -1
  1138. package/geometry/support/axisAngleDegrees.js +1 -1
  1139. package/geometry/support/coordsUtils.js +1 -1
  1140. package/geometry/support/meshUtils/External.js +1 -1
  1141. package/geometry/support/meshUtils/bounds.js +5 -0
  1142. package/geometry/support/meshUtils/centerAt.js +1 -1
  1143. package/geometry/support/meshUtils/georeference.js +1 -1
  1144. package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
  1145. package/geometry/support/meshUtils/merge.js +1 -1
  1146. package/geometry/support/meshUtils/projection.js +1 -1
  1147. package/geometry/support/meshUtils/rotate.js +1 -1
  1148. package/geometry/support/meshUtils/scale.js +1 -1
  1149. package/geometry/support/meshVertexSpaceUtils.js +5 -0
  1150. package/geometry/support/plane.js +1 -1
  1151. package/geometry/support/rotate.js +1 -1
  1152. package/geometry/support/triangulationUtils.js +1 -1
  1153. package/identity/IdentityManagerBase.js +1 -1
  1154. package/interfaces.d.ts +2665 -476
  1155. package/intl/date.js +1 -1
  1156. package/intl/locale.js +1 -1
  1157. package/intl/messages.js +1 -1
  1158. package/intl/number.js +1 -1
  1159. package/layers/FeatureLayer.js +1 -1
  1160. package/layers/ImageryTileLayer.js +1 -1
  1161. package/layers/KnowledgeGraphLayer.js +1 -1
  1162. package/layers/LinkChartLayer.js +1 -1
  1163. package/layers/MapImageLayer.js +1 -1
  1164. package/layers/OrientedImageryLayer.js +1 -1
  1165. package/layers/RouteLayer.js +1 -1
  1166. package/layers/SceneLayer.js +1 -1
  1167. package/layers/StreamLayer.js +1 -1
  1168. package/layers/SubtypeGroupLayer.js +1 -1
  1169. package/layers/TileLayer.js +1 -1
  1170. package/layers/VideoLayer.js +1 -1
  1171. package/layers/graphics/controllers/FeatureTileController3D.js +1 -1
  1172. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  1173. package/layers/graphics/controllers/StreamController.js +1 -1
  1174. package/layers/graphics/data/QueryEngine.js +1 -1
  1175. package/layers/graphics/data/attributeSupport.js +1 -1
  1176. package/layers/graphics/editingSupport.js +1 -1
  1177. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  1178. package/layers/graphics/sources/MemorySource.js +1 -1
  1179. package/layers/graphics/sources/OGCFeatureSource.js +1 -1
  1180. package/layers/graphics/sources/WFSSource.js +1 -1
  1181. package/layers/graphics/sources/support/clientSideDefaults.js +1 -1
  1182. package/layers/graphics/sources/support/uploadAssets.js +1 -1
  1183. package/layers/knowledgeGraph/KnowledgeGraphLayerDataManager.js +1 -1
  1184. package/layers/knowledgeGraph/KnowledgeGraphSublayer.d.ts +4 -0
  1185. package/layers/knowledgeGraph/KnowledgeGraphSublayer.js +5 -0
  1186. package/layers/knowledgeGraph/{KnowledgeGraphSubLayerBase.js → KnowledgeGraphSublayerBase.js} +1 -1
  1187. package/layers/mixins/ArcGISImageService.js +1 -1
  1188. package/layers/mixins/EditBusLayer.js +1 -1
  1189. package/layers/mixins/FeatureLayerBase.js +1 -1
  1190. package/layers/mixins/ImageryTileMixin.js +1 -1
  1191. package/layers/orientedImagery/core/ExposurePoint.js +1 -1
  1192. package/layers/orientedImagery/core/bestImageUtils.js +1 -1
  1193. package/layers/orientedImagery/core/coverageUtils.js +1 -1
  1194. package/layers/orientedImagery/transformations/groundToImageUtils.js +1 -1
  1195. package/layers/orientedImagery/transformations/imageToGroundUtils.js +1 -1
  1196. package/layers/support/ElevationQuery.js +1 -1
  1197. package/layers/support/ElevationSampler.js +1 -1
  1198. package/layers/support/ExportImageParameters.js +1 -1
  1199. package/layers/support/ExportWMSImageParameters.js +1 -1
  1200. package/layers/support/FeatureReductionBinning.js +1 -1
  1201. package/layers/support/FeatureReductionCluster.js +1 -1
  1202. package/layers/support/FetchAssociatedFeatureLayer.js +1 -1
  1203. package/layers/support/RasterFunction.js +1 -1
  1204. package/layers/support/RasterFunctionInfo.js +5 -0
  1205. package/layers/support/RasterFunctionProperties.js +5 -0
  1206. package/layers/support/RasterFunctionTemplate.js +5 -0
  1207. package/layers/support/RasterFunctionVariable.js +5 -0
  1208. package/layers/support/Sublayer.js +1 -1
  1209. package/layers/support/SubtypeSublayer.js +1 -1
  1210. package/layers/support/TelemetryData.js +1 -1
  1211. package/layers/support/TelemetryDisplay.js +1 -1
  1212. package/layers/support/VideoTimeExtent.js +1 -1
  1213. package/layers/support/capabilities.js +1 -1
  1214. package/layers/support/editableLayers.js +1 -1
  1215. package/layers/support/featureLayerUtils.js +1 -1
  1216. package/layers/support/fieldUtils.js +1 -1
  1217. package/layers/support/imageryRendererUtils.js +1 -1
  1218. package/layers/support/layerUtils.js +1 -1
  1219. package/layers/support/rasterDatasets/BaseRaster.js +1 -1
  1220. package/layers/support/rasterEnums.js +1 -1
  1221. package/layers/support/rasterFunctions/BaseRasterFunction.js +1 -1
  1222. package/layers/support/rasterFunctions/colormaps.js +1 -1
  1223. package/layers/support/serviceCapabilitiesUtils.js +1 -1
  1224. package/layers/video/VideoCameraSensorModel.js +5 -0
  1225. package/layers/video/VideoController.js +5 -0
  1226. package/layers/video/videoUtils.js +5 -0
  1227. package/layers/voxel/VoxelVolume.js +1 -1
  1228. package/layers/voxel/voxelPlaneUtils.js +1 -1
  1229. package/networks/Network.js +1 -1
  1230. package/networks/support/TopologyValidationJobInfo.js +1 -1
  1231. package/networks/support/TraceJobInfo.d.ts +4 -0
  1232. package/package.json +3 -3
  1233. package/popup/support/FieldInfoFormat.js +1 -1
  1234. package/portal/PortalGroup.js +1 -1
  1235. package/portal/PortalItem.js +1 -1
  1236. package/portal/schemas/definitions.js +1 -1
  1237. package/portal/support/portalItemUtils.js +1 -1
  1238. package/renderers/SimpleRenderer.js +1 -1
  1239. package/renderers/support/ClassBreakInfo.js +1 -1
  1240. package/renderers/support/UniqueValueInfo.js +1 -1
  1241. package/renderers/support/colorRampUtils.js +1 -1
  1242. package/renderers/support/commonProperties.js +1 -1
  1243. package/renderers/support/types.js +1 -1
  1244. package/renderers/support/utils.js +1 -1
  1245. package/request.js +1 -1
  1246. package/rest/knowledgeGraph/GraphApplyEditsResult.js +1 -1
  1247. package/rest/places.js +1 -1
  1248. package/rest/query/operations/pbfJSONFeatureSet.js +1 -1
  1249. package/rest/support/PlacesQueryResult.js +1 -1
  1250. package/rest/support/meshFeatureSet.js +1 -1
  1251. package/smartMapping/labels/bins.d.ts +4 -0
  1252. package/smartMapping/labels/bins.js +5 -0
  1253. package/smartMapping/labels/clusters.js +1 -1
  1254. package/smartMapping/labels/support/utils.js +5 -0
  1255. package/smartMapping/renderers/color.js +1 -1
  1256. package/smartMapping/renderers/dotDensity.js +1 -1
  1257. package/smartMapping/renderers/heatmap.js +1 -1
  1258. package/smartMapping/renderers/location.js +1 -1
  1259. package/smartMapping/renderers/pieChart.js +1 -1
  1260. package/smartMapping/renderers/size.js +1 -1
  1261. package/smartMapping/renderers/type.js +1 -1
  1262. package/smartMapping/support/binningUtils.js +1 -1
  1263. package/smartMapping/symbology/color.js +1 -1
  1264. package/smartMapping/symbology/flow.js +1 -1
  1265. package/smartMapping/symbology/support/colors.js +1 -1
  1266. package/statistics/utils.js +1 -1
  1267. package/support/AnalysesCollection.js +1 -1
  1268. package/support/arcadeUtils.js +1 -1
  1269. package/support/basemapUtils.js +1 -1
  1270. package/support/featureFlags.js +1 -1
  1271. package/support/requestUtils.js +1 -1
  1272. package/support/revision.js +1 -1
  1273. package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
  1274. package/symbols/cim/CIMSymbolHelper.js +1 -1
  1275. package/symbols/cim/CIMSymbolRasterizer.js +1 -1
  1276. package/symbols/cim/cimAnalyzer.js +1 -1
  1277. package/symbols/cim/effects/EffectBuffer.js +1 -1
  1278. package/symbols/cim/effects/EffectDonut.js +1 -1
  1279. package/symbols/cim/effects/EffectOffset.js +1 -1
  1280. package/symbols/support/previewCIMSymbol.js +1 -1
  1281. package/symbols/support/previewSymbol3D.js +1 -1
  1282. package/symbols/support/svgUtils.js +1 -1
  1283. package/symbols/support/utils.js +1 -1
  1284. package/symbols/support/webStyleSymbolUtils.js +1 -1
  1285. package/versionManagement/VersionManagementService.js +1 -1
  1286. package/versionManagement/support/versionManagementUtils.js +1 -1
  1287. package/views/2d/LabelManager.js +1 -1
  1288. package/views/2d/MapViewConstraints.js +1 -1
  1289. package/views/2d/PaddedViewState.js +1 -1
  1290. package/views/2d/ViewState.js +1 -1
  1291. package/views/2d/ViewStateManager.js +5 -0
  1292. package/views/2d/engine/flow/FlowDisplayObject.js +1 -1
  1293. package/views/2d/engine/imagery/RasterVFTile.js +1 -1
  1294. package/views/2d/engine/vectorTiles/RenderBucket.js +1 -1
  1295. package/views/2d/engine/vectorTiles/VectorTile.js +1 -1
  1296. package/views/2d/engine/webgl/BufferPool.js +1 -1
  1297. package/views/2d/engine/webgl/OverlayContainer.js +1 -1
  1298. package/views/2d/engine/webgl/TiledDisplayObject.js +1 -1
  1299. package/views/2d/engine/webgl/WGLTile.js +1 -1
  1300. package/views/2d/engine/webgl/WorldExtentClipRenderer.js +1 -1
  1301. package/views/2d/engine/webgl/animatedFormats/AnimatableTextureResource.js +1 -1
  1302. package/views/2d/engine/webgl/animatedFormats/utils.js +1 -1
  1303. package/views/2d/engine/webgl/brushes/WGLBrushHeatmap.js +1 -1
  1304. package/views/2d/engine/webgl/cpuMapped/Buffer.js +1 -1
  1305. package/views/2d/engine/webgl/cpuMapped/Geometry.js +1 -1
  1306. package/views/2d/engine/webgl/effects/highlight/HighlightSurfaces.js +1 -1
  1307. package/views/2d/engine/webgl/mesh/templates/shapingUtils.js +1 -1
  1308. package/views/2d/input/MapViewInputManager.js +1 -1
  1309. package/views/2d/interactive/SnappingVisualizer2D.js +1 -1
  1310. package/views/2d/interactive/editingTools/TransformTool.js +1 -1
  1311. package/views/2d/interactive/editingTools/draw/DrawGraphicTool2D.js +1 -1
  1312. package/views/2d/interactive/editingTools/manipulations/ScaleManipulation.js +1 -1
  1313. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  1314. package/views/2d/layers/GraphicsLayerView2D.js +1 -1
  1315. package/views/2d/layers/ImageryLayerView2D.js +1 -1
  1316. package/views/2d/layers/KMLLayerView2D.js +1 -1
  1317. package/views/2d/layers/LayerView2D.js +1 -1
  1318. package/views/2d/layers/MapImageLayerView2D.js +1 -1
  1319. package/views/2d/layers/MapNotesLayerView2D.js +1 -1
  1320. package/views/2d/layers/MediaLayerView2D.js +1 -1
  1321. package/views/2d/layers/RouteLayerView2D.js +1 -1
  1322. package/views/2d/layers/StreamLayerView2D.js +1 -1
  1323. package/views/2d/layers/TileLayerView2D.js +1 -1
  1324. package/views/2d/layers/features/Pipeline.js +1 -1
  1325. package/views/2d/layers/features/Store2D.js +1 -1
  1326. package/views/2d/layers/features/controllers/FeatureController2D.js +1 -1
  1327. package/views/2d/layers/features/processors/BaseProcessor.js +1 -1
  1328. package/views/2d/layers/features/processors/HeatmapProcessor.js +1 -1
  1329. package/views/2d/layers/features/processors/SymbolProcessor.js +1 -1
  1330. package/views/2d/layers/features/schemaUtils.js +1 -1
  1331. package/views/2d/layers/features/sources/SnapshotFeatureSource.js +1 -1
  1332. package/views/2d/layers/features/sources/StreamConnectionState.js +1 -1
  1333. package/views/2d/layers/features/sources/StreamSource.js +1 -1
  1334. package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
  1335. package/views/2d/layers/features/tileRenderers/BaseTileRenderer.js +1 -1
  1336. package/views/2d/layers/graphics/GraphicBoundsRenderer.js +1 -1
  1337. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  1338. package/views/2d/layers/imagery/BaseImageryTileSubView2D.js +1 -1
  1339. package/views/2d/layers/imagery/VectorFieldView2D.js +1 -1
  1340. package/views/2d/layers/support/DebugOverlay.js +1 -1
  1341. package/views/2d/navigation/MapViewNavigation.js +1 -1
  1342. package/views/2d/navigation/ZoomBox.js +1 -1
  1343. package/views/2d/navigation/actions/Pinch.js +1 -1
  1344. package/views/2d/navigation/actions/Rotate.js +1 -1
  1345. package/views/2d/viewpointUtils.js +1 -1
  1346. package/views/3d/analysis/AnalysisViewManager3D.js +1 -1
  1347. package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementPathHelper.js +1 -1
  1348. package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementVisualization.js +1 -1
  1349. package/views/3d/analysis/Dimension/DimensionController.js +1 -1
  1350. package/views/3d/analysis/Dimension/DimensionVisualization.js +1 -1
  1351. package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
  1352. package/views/3d/analysis/Dimension/LengthDimensionVisualization.js +1 -1
  1353. package/views/3d/analysis/Dimension/lengthDimensionManipulatorUtils.js +1 -1
  1354. package/views/3d/analysis/Dimension/lengthDimensionUtils.js +1 -1
  1355. package/views/3d/analysis/DimensionAnalysisView3D.js +1 -1
  1356. package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementController.js +1 -1
  1357. package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementVisualization.js +1 -1
  1358. package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
  1359. package/views/3d/analysis/LineOfSight/LineOfSightIntersectionResult.js +1 -1
  1360. package/views/3d/analysis/LineOfSight/LineOfSightTool.js +1 -1
  1361. package/views/3d/analysis/LineOfSight/LineOfSightVisualization.js +1 -1
  1362. package/views/3d/analysis/LineOfSightAnalysisView3D.js +1 -1
  1363. package/views/3d/analysis/Slice/SliceTool.js +1 -1
  1364. package/views/3d/analysis/Slice/SliceVisualization.js +1 -1
  1365. package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
  1366. package/views/3d/analysis/support/viewUtils.js +1 -1
  1367. package/views/3d/camera/constraintUtils/distance.js +1 -1
  1368. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  1369. package/views/3d/environment/ChapmanAtmosphereTechnique.js +1 -1
  1370. package/views/3d/environment/CloudsComposition.js +1 -1
  1371. package/views/3d/environment/CloudsGenerator.js +1 -1
  1372. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  1373. package/views/3d/environment/NoiseTextureAtlas.js +1 -1
  1374. package/views/3d/environment/SceneViewEnvironmentManager.js +1 -1
  1375. package/views/3d/environment/weatherUtils.js +1 -1
  1376. package/views/3d/externalRenderers/ExternalRendererStore.js +1 -1
  1377. package/views/3d/externalRenderers/RenderContext.js +1 -1
  1378. package/views/3d/glTF/internal/resourceUtils.js +1 -1
  1379. package/views/3d/input/SceneInputManager.js +1 -1
  1380. package/views/3d/interactive/Manipulator3D.js +1 -1
  1381. package/views/3d/interactive/SnappingVisualizer3D.js +1 -1
  1382. package/views/3d/interactive/editingTools/draw/DrawGraphicTool3D.js +1 -1
  1383. package/views/3d/interactive/editingTools/lineGraphicVisualElementUtils.js +1 -1
  1384. package/views/3d/interactive/editingTools/manipulations/MoveXYAxisManipulation.js +1 -1
  1385. package/views/3d/interactive/editingTools/manipulations/MoveXYDiscManipulation.js +1 -1
  1386. package/views/3d/interactive/editingTools/manipulatorUtils.js +1 -1
  1387. package/views/3d/interactive/editingTools/moveGraphic/GraphicMoveTool.js +1 -1
  1388. package/views/3d/interactive/editingTools/originGraphicVisualElementUtils.js +1 -1
  1389. package/views/3d/interactive/editingTools/reshapeGraphic/GraphicReshapeTool.js +1 -1
  1390. package/views/3d/interactive/editingTools/reshapeGraphic/ReshapeOperation.js +1 -1
  1391. package/views/3d/interactive/editingTools/reshapeGraphic/edgeOffsetUtils.js +1 -1
  1392. package/views/3d/interactive/editingTools/transformGraphic/ExtentTransformTool.js +1 -1
  1393. package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
  1394. package/views/3d/interactive/editingTools/transformGraphic/GraphicTransformTool.js +1 -1
  1395. package/views/3d/interactive/editingTools/transformGraphic/ScaleRotateMeshAdapter.js +1 -1
  1396. package/views/3d/interactive/editingTools/transformGraphic/ScaleRotateObjectSymbol3DAdapter.js +1 -1
  1397. package/views/3d/interactive/manipulatorUtils.js +1 -1
  1398. package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js +1 -1
  1399. package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DView.js +1 -1
  1400. package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DTool.js +1 -1
  1401. package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DView.js +1 -1
  1402. package/views/3d/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiles3D.js +1 -1
  1403. package/views/3d/interactive/visualElements/EngineVisualElement.js +1 -1
  1404. package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
  1405. package/views/3d/interactive/visualElements/LabelVisualElement.js +1 -1
  1406. package/views/3d/interactive/visualElements/LaserlineVisualElement.js +1 -1
  1407. package/views/3d/interactive/visualElements/LineVisualElement.js +1 -1
  1408. package/views/3d/interactive/visualElements/MarkerVisualElement.js +1 -1
  1409. package/views/3d/interactive/visualElements/MeasurementAreaVisualElement.js +1 -1
  1410. package/views/3d/interactive/visualElements/MeasurementArrowVisualElement.js +1 -1
  1411. package/views/3d/interactive/visualElements/Object3DVisualElement.js +1 -1
  1412. package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
  1413. package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
  1414. package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
  1415. package/views/3d/interactive/visualElements/RightAngleQuadVisualElement.js +1 -1
  1416. package/views/3d/interactive/visualElements/SlicePlaneVisualElement.js +1 -1
  1417. package/views/3d/interactive/visualElements/VerticesVisualElement.js +1 -1
  1418. package/views/3d/interactive/visualElements/VisualElement.js +1 -1
  1419. package/views/3d/layers/BuildingComponentSublayerView3D.js +1 -1
  1420. package/views/3d/layers/BuildingSceneLayerView3D.js +1 -1
  1421. package/views/3d/layers/BuildingSublayerView3D.js +1 -1
  1422. package/views/3d/layers/DimensionLayerView3D.js +1 -1
  1423. package/views/3d/layers/DynamicLayerView3D.js +1 -1
  1424. package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
  1425. package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
  1426. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  1427. package/views/3d/layers/I3SMeshView3D.js +1 -1
  1428. package/views/3d/layers/I3SMeshViewLabeler.js +1 -1
  1429. package/views/3d/layers/I3SMeshWorkerHandle.js +1 -1
  1430. package/views/3d/layers/II3SMeshView3D.js +1 -1
  1431. package/views/3d/layers/ImageryLayerView3D.js +1 -1
  1432. package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
  1433. package/views/3d/layers/IntegratedMeshLayerView3D.js +1 -1
  1434. package/views/3d/layers/LayerView3D.js +1 -1
  1435. package/views/3d/layers/LineOfSightLayerView3D.js +1 -1
  1436. package/views/3d/layers/MapImageLayerView3D.js +1 -1
  1437. package/views/3d/layers/MediaLayerView3D.js +1 -1
  1438. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  1439. package/views/3d/layers/PointCloudWorker.js +1 -1
  1440. package/views/3d/layers/RouteLayerView3D.js +1 -1
  1441. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  1442. package/views/3d/layers/SceneLayerView3D.js +1 -1
  1443. package/views/3d/layers/SceneLayerWorker.js +1 -1
  1444. package/views/3d/layers/StreamLayerView3D.js +1 -1
  1445. package/views/3d/layers/TileLayerView3D.js +1 -1
  1446. package/views/3d/layers/VectorTileLayerView3D.js +1 -1
  1447. package/views/3d/layers/VoxelLayerView3D.js +1 -1
  1448. package/views/3d/layers/WMSLayerView3D.js +1 -1
  1449. package/views/3d/layers/WMTSLayerView3D.js +1 -1
  1450. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  1451. package/views/3d/layers/graphics/ElevationQuery.js +1 -1
  1452. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  1453. package/views/3d/layers/graphics/Graphics3DElevationAlignment.js +1 -1
  1454. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  1455. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
  1456. package/views/3d/layers/graphics/Graphics3DFrustumVisibility.js +1 -1
  1457. package/views/3d/layers/graphics/Graphics3DGraphic.js +1 -1
  1458. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  1459. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  1460. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  1461. package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
  1462. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  1463. package/views/3d/layers/graphics/Graphics3DScaleVisibility.js +1 -1
  1464. package/views/3d/layers/graphics/GraphicsDeconflictor.js +1 -1
  1465. package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
  1466. package/views/3d/layers/graphics/Labeler.js +1 -1
  1467. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  1468. package/views/3d/layers/graphics/polygonUtils.js +1 -1
  1469. package/views/3d/layers/graphics/webStyleUtils.js +1 -1
  1470. package/views/3d/layers/i3s/Highlights.js +1 -1
  1471. package/views/3d/layers/i3s/I3SClientMaterialUtil.js +5 -0
  1472. package/views/3d/layers/i3s/I3SClientNodeLoader.js +1 -1
  1473. package/views/3d/layers/i3s/I3SFrameTask.js +1 -1
  1474. package/views/3d/layers/i3s/I3SGeometryUtil.js +1 -1
  1475. package/views/3d/layers/i3s/I3SIndex.js +1 -1
  1476. package/views/3d/layers/i3s/I3SMaterialUtil.js +1 -1
  1477. package/views/3d/layers/i3s/I3SMeshViewFilter.js +1 -1
  1478. package/views/3d/layers/i3s/I3SOverrides.js +1 -1
  1479. package/views/3d/layers/i3s/I3SQueryEngine.js +1 -1
  1480. package/views/3d/layers/i3s/I3SUtil.js +1 -1
  1481. package/views/3d/layers/i3s/featureEditing.js +1 -1
  1482. package/views/3d/layers/support/FeatureTileFetcher3D.js +1 -1
  1483. package/views/3d/layers/support/FeatureTileTree3D.js +1 -1
  1484. package/views/3d/layers/support/FeatureVisibilityFilter.js +1 -1
  1485. package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
  1486. package/views/3d/layers/support/SceneLayerViewRequiredFields.js +1 -1
  1487. package/views/3d/layers/support/uvUtils.js +1 -1
  1488. package/views/3d/state/Frustum.js +1 -1
  1489. package/views/3d/state/GoToOperation.js +1 -1
  1490. package/views/3d/state/ViewState.js +1 -1
  1491. package/views/3d/state/ViewStateManager.js +1 -1
  1492. package/views/3d/state/controllers/GamepadKeyboardController.js +1 -1
  1493. package/views/3d/state/controllers/RotateController.js +1 -1
  1494. package/views/3d/state/controllers/global/PinchAndPanController.js +1 -1
  1495. package/views/3d/state/controllers/global/ZoomController.js +1 -1
  1496. package/views/3d/state/controllers/local/ZoomController.js +1 -1
  1497. package/views/3d/state/controllers/momentum/ZoomPlanarMomentumController.js +1 -1
  1498. package/views/3d/support/CombinedElevationProvider.js +1 -1
  1499. package/views/3d/support/DisplayQualityProfile.js +1 -1
  1500. package/views/3d/support/FrustumExtentIntersection.js +1 -1
  1501. package/views/3d/support/LaserLineRenderer.js +1 -1
  1502. package/views/3d/support/MemoryController.js +1 -1
  1503. package/views/3d/support/RenderCoordsHelper.js +1 -1
  1504. package/views/3d/support/SceneViewPerformanceInfo.js +1 -1
  1505. package/views/3d/support/SharedSymbolResources.js +1 -1
  1506. package/views/3d/support/StreamTextureCollection.js +1 -1
  1507. package/views/3d/support/geometryUtils/ray.js +1 -1
  1508. package/views/3d/support/orientedBoundingBox.js +1 -1
  1509. package/views/3d/support/pointsOfInterest/Focus.js +1 -1
  1510. package/views/3d/support/pointsOfInterest/StableSurfaceCenter.js +1 -1
  1511. package/views/3d/support/renderInfoUtils/line.js +1 -1
  1512. package/views/3d/support/renderInfoUtils/polygon.js +1 -1
  1513. package/views/3d/support/sunUtils.js +1 -1
  1514. package/views/3d/terrain/Overlay.js +1 -1
  1515. package/views/3d/terrain/OverlayFramebufferObject.js +1 -1
  1516. package/views/3d/terrain/OverlayManager.js +1 -1
  1517. package/views/3d/terrain/OverlayRenderTarget.js +1 -1
  1518. package/views/3d/terrain/OverlayRenderer.js +1 -1
  1519. package/views/3d/terrain/PatchRenderData.js +1 -1
  1520. package/views/3d/terrain/SphericalPatch.js +1 -1
  1521. package/views/3d/terrain/TerrainRenderer.js +1 -1
  1522. package/views/3d/terrain/TerrainSurface.js +1 -1
  1523. package/views/3d/terrain/Tile.js +1 -1
  1524. package/views/3d/terrain/TileRenderer.js +1 -1
  1525. package/views/3d/terrain/TilingSchemeLogic.js +1 -1
  1526. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  1527. package/views/3d/webgl-engine/collections/Component/DepthRange.js +1 -1
  1528. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  1529. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
  1530. package/views/3d/webgl-engine/core/FBOCache.js +5 -0
  1531. package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
  1532. package/views/3d/webgl-engine/core/shaderLibrary/Laserline.glsl.js +1 -1
  1533. package/views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js +3 -9
  1534. package/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js +13 -15
  1535. package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +30 -35
  1536. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +1 -1
  1537. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUDOcclusionPass.glsl.js +6 -6
  1538. package/views/3d/webgl-engine/core/shaderLibrary/hud/{HUDUniforms.js → HUDRenderStyle.js} +1 -1
  1539. package/views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js +5 -6
  1540. package/views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js +3 -3
  1541. package/views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js +5 -1
  1542. package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassGeometryTest.glsl.js +2 -2
  1543. package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js +3 -3
  1544. package/views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js +10 -10
  1545. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +18 -16
  1546. package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js +2 -2
  1547. package/views/3d/webgl-engine/core/shaderLibrary/shading/Water.glsl.js +1 -1
  1548. package/views/3d/webgl-engine/core/shaderLibrary/shading/WaterDistortion.glsl.js +2 -2
  1549. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +8 -8
  1550. package/views/3d/webgl-engine/core/shaderLibrary/terrain/TerrainTexture.glsl.js +9 -9
  1551. package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +1 -1
  1552. package/views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloat16Encoding.glsl.js +25 -0
  1553. package/views/3d/webgl-engine/core/shaderModules/Matrix4sDrawUniform.js +1 -1
  1554. package/views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js +1 -1
  1555. package/views/3d/webgl-engine/core/shaderModules/Uniform.js +1 -1
  1556. package/views/3d/webgl-engine/core/util/TwoVectorPosition.js +1 -1
  1557. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  1558. package/views/3d/webgl-engine/lib/Camera.js +1 -1
  1559. package/views/3d/webgl-engine/lib/CompositingHelper.js +1 -1
  1560. package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +1 -1
  1561. package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
  1562. package/views/3d/webgl-engine/lib/Highlight.js +1 -1
  1563. package/views/3d/webgl-engine/lib/MagnifierHelper.js +1 -1
  1564. package/views/3d/webgl-engine/lib/Material.js +1 -1
  1565. package/views/3d/webgl-engine/lib/OffscreenRendering.js +1 -1
  1566. package/views/3d/webgl-engine/lib/PathCapBuilder.js +1 -1
  1567. package/views/3d/webgl-engine/lib/PathExtruder.js +1 -1
  1568. package/views/3d/webgl-engine/lib/PathGeometryData.js +1 -1
  1569. package/views/3d/webgl-engine/lib/Program.js +1 -1
  1570. package/views/3d/webgl-engine/lib/RenderFeature.js +1 -1
  1571. package/views/3d/webgl-engine/lib/RenderPluginManager.js +1 -1
  1572. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  1573. package/views/3d/webgl-engine/lib/RenderingContext.js +1 -1
  1574. package/views/3d/webgl-engine/lib/SSAOHelper.js +1 -1
  1575. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  1576. package/views/3d/webgl-engine/lib/ShadowCastRenderer.js +1 -1
  1577. package/views/3d/webgl-engine/lib/ShadowHighlight.js +1 -1
  1578. package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
  1579. package/views/3d/webgl-engine/lib/SmaaRenderPass.js +1 -1
  1580. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  1581. package/views/3d/webgl-engine/lib/VertexAttribute.js +1 -1
  1582. package/views/3d/webgl-engine/lib/basicInterfaces.js +1 -1
  1583. package/views/3d/webgl-engine/lib/edgeRendering/EdgeRenderer.js +1 -1
  1584. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechniqueConfiguration.js +1 -1
  1585. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  1586. package/views/3d/webgl-engine/lib/edgeRendering/edgePreprocessing.js +1 -1
  1587. package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
  1588. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  1589. package/views/3d/webgl-engine/lib/lodRendering/RenderInstanceData.js +1 -1
  1590. package/views/3d/webgl-engine/lib/verticalOffsetUtils.js +1 -1
  1591. package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
  1592. package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
  1593. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  1594. package/views/3d/webgl-engine/materials/DefaultTechniqueConfiguration.js +1 -1
  1595. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  1596. package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
  1597. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  1598. package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
  1599. package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
  1600. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  1601. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  1602. package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
  1603. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  1604. package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
  1605. package/views/3d/webgl-engine/materials/SlicePlaneMaterial.js +1 -1
  1606. package/views/3d/webgl-engine/materials/VisualVariablePassParameters.js +1 -1
  1607. package/views/3d/webgl-engine/materials/WaterGLMaterial.js +1 -1
  1608. package/views/3d/webgl-engine/materials/WaterMaterial.js +1 -1
  1609. package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
  1610. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  1611. package/views/3d/webgl-engine/materials/pbrUtils.js +5 -0
  1612. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  1613. package/views/3d/webgl-engine/materials/renderers/VaoCache.js +1 -1
  1614. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  1615. package/views/3d/webgl-engine/parts/ScreenshotManager.js +1 -1
  1616. package/views/3d/webgl-engine/shaders/AtmosphereCompositing.glsl.js +1 -1
  1617. package/views/3d/webgl-engine/shaders/AtmosphereCompositingTechnique.js +1 -1
  1618. package/views/3d/webgl-engine/shaders/CheckerBoardTechniqueConfiguration.js +1 -1
  1619. package/views/3d/webgl-engine/shaders/ColorMaterialTechniqueConfiguration.js +1 -1
  1620. package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
  1621. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  1622. package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
  1623. package/views/3d/webgl-engine/shaders/HUDMaterialTechniqueConfiguration.js +1 -1
  1624. package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
  1625. package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
  1626. package/views/3d/webgl-engine/shaders/LineCalloutTechniqueConfiguration.js +1 -1
  1627. package/views/3d/webgl-engine/shaders/LineMarkerTechniqueConfiguration.js +1 -1
  1628. package/views/3d/webgl-engine/shaders/Pattern.glsl.js +1 -1
  1629. package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
  1630. package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
  1631. package/views/3d/webgl-engine/shaders/SMAAPassParameters.js +1 -1
  1632. package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
  1633. package/views/3d/webgl-engine/shaders/ShadowCastAccumulate.glsl.js +1 -1
  1634. package/views/3d/webgl-engine/shaders/ShadowCastAccumulateTechnique.js +1 -1
  1635. package/views/3d/webgl-engine/shaders/ShadowHighlight.glsl.js +1 -1
  1636. package/views/3d/webgl-engine/shaders/ShadowHighlightTechnique.js +1 -1
  1637. package/views/3d/webgl-engine/statistics/RendererPerformanceInfo.js +1 -1
  1638. package/views/DOMContainer.js +1 -1
  1639. package/views/LayerViewManager.js +1 -1
  1640. package/views/MapView.js +1 -1
  1641. package/views/PopupView.js +1 -1
  1642. package/views/SceneView.js +1 -1
  1643. package/views/ToolViewManager.js +1 -1
  1644. package/views/draw/DrawGraphicTool.js +1 -1
  1645. package/views/draw/DrawOperation.js +1 -1
  1646. package/views/draw/DrawTool.js +1 -1
  1647. package/views/draw/support/GraphicMover.js +1 -1
  1648. package/views/draw/support/HighlightHelper.js +1 -1
  1649. package/views/draw/support/Reshape.js +1 -1
  1650. package/views/draw/support/createUtils.js +1 -1
  1651. package/views/draw/support/surfaceCoordinateSystems.js +1 -1
  1652. package/views/input/ViewEvents.js +1 -1
  1653. package/views/interactive/SegmentLabels.js +1 -1
  1654. package/views/interactive/coordinateHelper.js +1 -1
  1655. package/views/interactive/editGeometry/EditGeometry.js +1 -1
  1656. package/views/interactive/editGeometry/EditGeometryOperations.js +1 -1
  1657. package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
  1658. package/views/interactive/editGeometry/operations/ScaleVertex.js +1 -1
  1659. package/views/interactive/editGeometry/support/editPlaneUtils.js +1 -1
  1660. package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
  1661. package/views/interactive/snapping/RightAngleSnapper.js +1 -1
  1662. package/views/interactive/snapping/SnappingConstraint.js +1 -1
  1663. package/views/interactive/snapping/SnappingDragPipelineStep.js +1 -1
  1664. package/views/interactive/snapping/SnappingManager.js +1 -1
  1665. package/views/interactive/snapping/featureSources/FeatureServiceSnappingSource.js +1 -1
  1666. package/views/interactive/snapping/featureSources/GraphicsSnappingSource.js +1 -1
  1667. package/views/interactive/snapping/featureSources/I3SSnappingSource.js +1 -1
  1668. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js +1 -1
  1669. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorkerHandle.js +1 -1
  1670. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiledFetcher.js +1 -1
  1671. package/views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorkerHandle.js +1 -1
  1672. package/views/interactive/snapping/featureSources/sceneLayerSource/sceneLayerSnappingUtils.js +1 -1
  1673. package/views/interactive/support/viewUtils.js +1 -1
  1674. package/views/layers/FeatureLayerView.js +1 -1
  1675. package/views/layers/GroupLayerView.js +1 -1
  1676. package/views/layers/LayerView.js +1 -1
  1677. package/views/layers/RefreshableLayerView.js +1 -1
  1678. package/views/layers/StreamLayerView.js +1 -1
  1679. package/views/layers/support/MapServiceLayerViewHelper.js +1 -1
  1680. package/views/overlay/LineOverlayItem.js +1 -1
  1681. package/views/overlay/TextOverlayItem.js +1 -1
  1682. package/views/overlay/ViewOverlay.js +1 -1
  1683. package/views/support/QueueProcessor.js +1 -1
  1684. package/views/support/euclideanAreaMeasurementUtils.js +1 -1
  1685. package/views/support/geometry2dUtils.js +1 -1
  1686. package/views/support/geometry3dUtils.js +1 -1
  1687. package/views/support/screenshotUtils.js +1 -1
  1688. package/views/ui/DefaultUI.js +1 -1
  1689. package/views/ui/UI.js +1 -1
  1690. package/views/webgl/AppleAmdDriverHelper.js +5 -0
  1691. package/views/webgl/BufferObject.js +1 -1
  1692. package/views/webgl/FramebufferObject.js +1 -1
  1693. package/views/webgl/Measurement.js +1 -1
  1694. package/views/webgl/Renderbuffer.js +1 -1
  1695. package/views/webgl/RenderingContext.js +1 -1
  1696. package/views/webgl/Texture.js +1 -1
  1697. package/views/webgl/TextureDescriptor.js +1 -1
  1698. package/views/webgl/VertexArrayObject.js +1 -1
  1699. package/views/webgl/heatmapTextureUtils.js +1 -1
  1700. package/views/webgl/testAppleAmdDrawArrays.js +1 -1
  1701. package/views/webgl/testSVGPremultipliedAlpha.js +1 -1
  1702. package/{layers/orientedImagery/core/imageryUtils.js → webdoc/interfaces.js} +1 -1
  1703. package/webdoc/support/writeUtils.js +1 -1
  1704. package/webmap/initialViewPropertiesUtils.js +1 -1
  1705. package/webscene/Slide.js +1 -1
  1706. package/widgets/Attachments.js +1 -1
  1707. package/widgets/Attribution/AttributionViewModel.js +1 -1
  1708. package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
  1709. package/widgets/BasemapGallery/support/BasemapGalleryItem.js +1 -1
  1710. package/widgets/BasemapGallery/support/PortalBasemapsSource.js +1 -1
  1711. package/widgets/BasemapGallery.js +1 -1
  1712. package/widgets/BasemapLayerList/BasemapLayerListViewModel.js +1 -1
  1713. package/widgets/BasemapLayerList.js +1 -1
  1714. package/widgets/Bookmarks/css.js +1 -1
  1715. package/widgets/Bookmarks.js +1 -1
  1716. package/widgets/BuildingExplorer/BuildingDisciplinesViewModel.js +1 -1
  1717. package/widgets/BuildingExplorer/BuildingExplorerViewModel.js +1 -1
  1718. package/widgets/BuildingExplorer/BuildingNumericFilterViewModel.js +1 -1
  1719. package/widgets/Compass/CompassViewModel.js +1 -1
  1720. package/widgets/Daylight/DaylightViewModel.js +1 -1
  1721. package/widgets/Directions/DirectionsViewModel.js +1 -1
  1722. package/widgets/Directions.js +1 -1
  1723. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  1724. package/widgets/Editor/CreateFeaturesWorkflowData.js +1 -1
  1725. package/widgets/Editor/CreateWorkflow.js +1 -1
  1726. package/widgets/Editor/EditorViewModel.js +1 -1
  1727. package/widgets/Editor/Edits.js +1 -1
  1728. package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
  1729. package/widgets/Editor/UpdateRecordWorkflow.js +1 -1
  1730. package/widgets/Editor/UpdateWorkflow.js +1 -1
  1731. package/widgets/Editor/UpdateWorkflowData.js +1 -1
  1732. package/widgets/Editor/Upload.js +1 -1
  1733. package/widgets/Editor/Workflow.js +1 -1
  1734. package/widgets/Editor/modelUploadUtils.js +1 -1
  1735. package/widgets/Editor/workflowUtils.js +1 -1
  1736. package/widgets/Editor.js +1 -1
  1737. package/widgets/ElevationProfile/ElevationProfileController.js +1 -1
  1738. package/widgets/ElevationProfile/ElevationProfileInteraction.js +1 -1
  1739. package/widgets/ElevationProfile/ElevationProfileViewModel.js +1 -1
  1740. package/widgets/ElevationProfile/support/ElevationProfileView.js +1 -1
  1741. package/widgets/ElevationProfile/support/InputRepresentation3D.js +1 -1
  1742. package/widgets/ElevationProfile/support/ProfileLines3D.js +1 -1
  1743. package/widgets/Feature/FeatureAttachments.js +1 -1
  1744. package/widgets/Feature/FeatureContent/FeatureContentViewModel.js +1 -1
  1745. package/widgets/Feature/FeatureExpression/FeatureExpressionViewModel.js +1 -1
  1746. package/widgets/Feature/FeatureMedia/pieChart.js +1 -1
  1747. package/widgets/Feature/FeatureMedia/xyChart.js +1 -1
  1748. package/widgets/Feature/FeatureMedia.js +1 -1
  1749. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  1750. package/widgets/Feature/FeatureRelationship.js +1 -1
  1751. package/widgets/Feature/FeatureViewModel.js +1 -1
  1752. package/widgets/Feature/support/featureUtils.js +1 -1
  1753. package/widgets/Feature/support/relatedFeatureUtils.js +1 -1
  1754. package/widgets/FeatureForm/EditableInput.d.ts +4 -0
  1755. package/widgets/FeatureForm/EditableInput.js +1 -1
  1756. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  1757. package/widgets/FeatureForm/FieldInput.d.ts +4 -0
  1758. package/widgets/FeatureForm/FieldInput.js +1 -1
  1759. package/widgets/FeatureForm/FormExpressionsManager.js +1 -1
  1760. package/widgets/FeatureForm/GroupInput.d.ts +4 -0
  1761. package/widgets/FeatureForm/GroupInput.js +1 -1
  1762. package/widgets/FeatureForm/InputBase.d.ts +4 -0
  1763. package/widgets/FeatureForm/InputBase.js +1 -1
  1764. package/widgets/FeatureForm/InputField.d.ts +4 -0
  1765. package/widgets/FeatureForm/InputFieldGroup.d.ts +4 -0
  1766. package/widgets/FeatureForm/RelationshipInput.d.ts +4 -0
  1767. package/widgets/FeatureForm/RelationshipInput.js +1 -1
  1768. package/widgets/FeatureForm/css.js +1 -1
  1769. package/widgets/FeatureForm/featureFormUtils.js +1 -1
  1770. package/widgets/FeatureForm.js +1 -1
  1771. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  1772. package/widgets/FeatureTable/FieldColumn.js +1 -1
  1773. package/widgets/FeatureTable/Grid/Column.js +1 -1
  1774. package/widgets/FeatureTable/Grid/Grid.js +11 -11
  1775. package/widgets/FeatureTable/Grid/support/ButtonMenu.js +1 -1
  1776. package/widgets/FeatureTable.js +1 -1
  1777. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
  1778. package/widgets/FeatureTemplates/ItemList.js +1 -1
  1779. package/widgets/FeatureTemplates.js +1 -1
  1780. package/widgets/Features/FeaturesViewModel.d.ts +4 -0
  1781. package/widgets/Features.d.ts +4 -0
  1782. package/widgets/Features.js +1 -1
  1783. package/widgets/FloorFilter/FloorFilterViewModel.js +1 -1
  1784. package/widgets/Home.js +1 -1
  1785. package/widgets/LayerList/ListItem.js +1 -1
  1786. package/widgets/Legend/LegendViewModel.js +1 -1
  1787. package/widgets/Legend/styles/Card.js +1 -1
  1788. package/widgets/Legend/styles/Classic.js +1 -1
  1789. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  1790. package/widgets/Legend/support/styleUtils.js +1 -1
  1791. package/widgets/LineOfSight/LineOfSightViewModel.js +1 -1
  1792. package/widgets/Locate/LocateViewModel.js +1 -1
  1793. package/widgets/Locate.js +1 -1
  1794. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  1795. package/widgets/OrientedImageryViewer.js +1 -1
  1796. package/widgets/Popup.js +1 -1
  1797. package/widgets/Print/FileLink.js +1 -1
  1798. package/widgets/ScaleRangeSlider.js +1 -1
  1799. package/widgets/ShadowCast/ShadowCastViewModel.js +1 -1
  1800. package/widgets/ShadowCast/ShadowTooltipViewModel.js +1 -1
  1801. package/widgets/ShadowCast.js +1 -1
  1802. package/widgets/Sketch/SketchViewModel.js +1 -1
  1803. package/widgets/TableList/ListItem.js +1 -1
  1804. package/widgets/TimeSlider/TimeSliderViewModel.js +1 -1
  1805. package/widgets/Track/TrackViewModel.js +1 -1
  1806. package/widgets/Track.js +1 -1
  1807. package/widgets/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.js +1 -1
  1808. package/widgets/UtilityNetworkAssociations.js +1 -1
  1809. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  1810. package/widgets/UtilityNetworkTrace/support/GeometryHandler.js +1 -1
  1811. package/widgets/UtilityNetworkTrace/support/ResultAreaHandler.js +1 -1
  1812. package/widgets/UtilityNetworkTrace.js +1 -1
  1813. package/widgets/UtilityNetworkValidateTopology/UtilityNetworkValidateTopologyViewModel.d.ts +4 -0
  1814. package/widgets/UtilityNetworkValidateTopology/UtilityNetworkValidateTopologyViewModel.js +1 -1
  1815. package/widgets/UtilityNetworkValidateTopology.d.ts +4 -0
  1816. package/widgets/UtilityNetworkValidateTopology.js +1 -1
  1817. package/widgets/ValuePicker/ValuePickerBaseComponent.js +1 -1
  1818. package/widgets/ValuePicker/ValuePickerCollection.d.ts +4 -0
  1819. package/widgets/ValuePicker/ValuePickerCombobox.d.ts +4 -0
  1820. package/widgets/ValuePicker/ValuePickerCombobox.js +1 -1
  1821. package/widgets/ValuePicker/ValuePickerLabel.d.ts +4 -0
  1822. package/widgets/ValuePicker/ValuePickerSlider.d.ts +4 -0
  1823. package/widgets/ValuePicker/ValuePickerSlider.js +1 -1
  1824. package/widgets/ValuePicker.d.ts +4 -0
  1825. package/widgets/ValuePicker.js +1 -1
  1826. package/widgets/Weather/WeatherViewModel.js +1 -1
  1827. package/widgets/Widget.js +1 -1
  1828. package/widgets/smartMapping/HeatmapSlider/HeatmapSliderViewModel.js +1 -1
  1829. package/widgets/support/ColorPicker.js +1 -1
  1830. package/widgets/support/GeolocationPositioning.js +1 -1
  1831. package/widgets/support/Popover.js +1 -1
  1832. package/widgets/support/Selector2D/SelectionOperation2D.js +1 -1
  1833. package/widgets/support/Selector2D.js +1 -1
  1834. package/widgets/support/SnappingControls/SnappingControlsViewModel.js +1 -1
  1835. package/widgets/support/chartUtils.js +1 -1
  1836. package/widgets/support/chartUtilsAm5.js +1 -1
  1837. package/widgets/support/componentsUtils.js +1 -1
  1838. package/widgets/support/geolocationUtils.js +1 -1
  1839. package/widgets/support/jsxWidgetSupport.js +1 -1
  1840. package/assets/esri/core/workers/chunks/030b43764f945cb1f8b0.js +0 -1
  1841. package/assets/esri/core/workers/chunks/03bc91648286b9b75e30.js +0 -1
  1842. package/assets/esri/core/workers/chunks/03dba2a2bbc363369a0f.js +0 -1
  1843. package/assets/esri/core/workers/chunks/0618fb0058f39ecd363f.js +0 -1
  1844. package/assets/esri/core/workers/chunks/099cacba30fd93af8ebc.js +0 -1
  1845. package/assets/esri/core/workers/chunks/0adcc644ab424469a62d.js +0 -1
  1846. package/assets/esri/core/workers/chunks/0fcb8d408696075338e2.js +0 -1
  1847. package/assets/esri/core/workers/chunks/1257825488d2494e901d.js +0 -1
  1848. package/assets/esri/core/workers/chunks/14d97dc471ff449bb12d.js +0 -1
  1849. package/assets/esri/core/workers/chunks/16e459b16bdd6e1a821b.js +0 -1
  1850. package/assets/esri/core/workers/chunks/187c3b971ed0fc4363ef.js +0 -1
  1851. package/assets/esri/core/workers/chunks/18db07d739a713cc0465.js +0 -1
  1852. package/assets/esri/core/workers/chunks/1fd7e2d91d0d76ba1802.js +0 -1
  1853. package/assets/esri/core/workers/chunks/20ea76301f58a4145223.js +0 -1
  1854. package/assets/esri/core/workers/chunks/270471cd31609e303496.js +0 -1
  1855. package/assets/esri/core/workers/chunks/293315442f5afe8069dc.js +0 -1
  1856. package/assets/esri/core/workers/chunks/2e627c94e57c924e5917.js +0 -1095
  1857. package/assets/esri/core/workers/chunks/39288fa69561d21f04f8.js +0 -1
  1858. package/assets/esri/core/workers/chunks/39714837f9d3708e3806.js +0 -1
  1859. package/assets/esri/core/workers/chunks/3a63ab2bff22950ffadf.js +0 -1
  1860. package/assets/esri/core/workers/chunks/3ce1fe5e7a841f6dc355.js +0 -1
  1861. package/assets/esri/core/workers/chunks/3d511e09f36002e1032e.js +0 -1
  1862. package/assets/esri/core/workers/chunks/431d54867bc3bb848fbb.js +0 -1
  1863. package/assets/esri/core/workers/chunks/4474512927623c7bb16c.js +0 -1
  1864. package/assets/esri/core/workers/chunks/45e5ad704d18dd0857ce.js +0 -1
  1865. package/assets/esri/core/workers/chunks/4f2e49bbbf667b68d8a7.js +0 -1
  1866. package/assets/esri/core/workers/chunks/50e6bf76dcb372183824.js +0 -1
  1867. package/assets/esri/core/workers/chunks/50f929d9453fb058cf47.js +0 -1
  1868. package/assets/esri/core/workers/chunks/5270fedc8c7951807eb4.js +0 -1
  1869. package/assets/esri/core/workers/chunks/528107548340cfc6a8f0.js +0 -1
  1870. package/assets/esri/core/workers/chunks/55486c644e8b01326a0d.js +0 -1
  1871. package/assets/esri/core/workers/chunks/5576858f56314afcb4d5.js +0 -1
  1872. package/assets/esri/core/workers/chunks/571dac507622948ac03e.js +0 -1
  1873. package/assets/esri/core/workers/chunks/5a4c04bf4f57e74457c5.js +0 -1
  1874. package/assets/esri/core/workers/chunks/5bbe1495fa421394d12e.js +0 -1
  1875. package/assets/esri/core/workers/chunks/621c91af7c051d44d378.js +0 -1
  1876. package/assets/esri/core/workers/chunks/673d6e284d5e85a107ca.js +0 -1
  1877. package/assets/esri/core/workers/chunks/6ab0c2e27ba6b1b4afc7.js +0 -1
  1878. package/assets/esri/core/workers/chunks/6b0e5728b2dbd23b0834.js +0 -1
  1879. package/assets/esri/core/workers/chunks/6d80f81bf6ad97a7e69e.js +0 -1
  1880. package/assets/esri/core/workers/chunks/6e7178de0b2c3d2f7e6b.js +0 -1
  1881. package/assets/esri/core/workers/chunks/70d6e5edf05ef7079fa8.js +0 -1
  1882. package/assets/esri/core/workers/chunks/71bdf8f10aee0077f681.js +0 -1
  1883. package/assets/esri/core/workers/chunks/72b2c3c8e76da699690c.js +0 -1
  1884. package/assets/esri/core/workers/chunks/749fafd2481d37b5e2a0.js +0 -1
  1885. package/assets/esri/core/workers/chunks/785a6c925f29bc962992.js +0 -1
  1886. package/assets/esri/core/workers/chunks/78ce0b1af62435d8ebf4.js +0 -1
  1887. package/assets/esri/core/workers/chunks/791f529e90135398b3d5.js +0 -1
  1888. package/assets/esri/core/workers/chunks/7bbdba52157da13a01fc.js +0 -1
  1889. package/assets/esri/core/workers/chunks/83298b1bdbcbe39d8ba1.js +0 -1
  1890. package/assets/esri/core/workers/chunks/84f897e5910752e7aebc.js +0 -1
  1891. package/assets/esri/core/workers/chunks/858961981aa2a57d37db.js +0 -1
  1892. package/assets/esri/core/workers/chunks/8cc8d88e5dd1e586eb04.js +0 -1
  1893. package/assets/esri/core/workers/chunks/8d3abfe6fdc5ac8d6cb7.js +0 -1
  1894. package/assets/esri/core/workers/chunks/924e4a18d8403d1caea3.js +0 -1
  1895. package/assets/esri/core/workers/chunks/94c1a2d31b3253cf6062.js +0 -1
  1896. package/assets/esri/core/workers/chunks/96d339abcd917f1f0ae1.js +0 -1
  1897. package/assets/esri/core/workers/chunks/97dbfe04136aa5e4cd4d.js +0 -1
  1898. package/assets/esri/core/workers/chunks/9ab400a89dd701778d2c.js +0 -1
  1899. package/assets/esri/core/workers/chunks/9de820b7df38b948c92b.js +0 -1
  1900. package/assets/esri/core/workers/chunks/9e209c6a2aded37f90fb.js +0 -1
  1901. package/assets/esri/core/workers/chunks/9fe349f43d5ff5a4ac2d.js +0 -1
  1902. package/assets/esri/core/workers/chunks/a12d1d3addeae0771c00.js +0 -1
  1903. package/assets/esri/core/workers/chunks/a1c31bb8c12831539328.js +0 -1
  1904. package/assets/esri/core/workers/chunks/a2484a3993ec81a095b4.js +0 -1
  1905. package/assets/esri/core/workers/chunks/a5bd457d0284419b4f34.js +0 -1
  1906. package/assets/esri/core/workers/chunks/a6c2fbf8aefb2e793ce3.js +0 -1
  1907. package/assets/esri/core/workers/chunks/a719cb801d647234546c.js +0 -1
  1908. package/assets/esri/core/workers/chunks/a95bee31d06e69a0d56d.js +0 -1
  1909. package/assets/esri/core/workers/chunks/ab2b56442fee12be5c68.js +0 -1
  1910. package/assets/esri/core/workers/chunks/ad215f7279e6b0a0d6f3.js +0 -1
  1911. package/assets/esri/core/workers/chunks/af5c9cbbcb6f56893560.js +0 -1
  1912. package/assets/esri/core/workers/chunks/b1d88f8e528bf7092f35.js +0 -1
  1913. package/assets/esri/core/workers/chunks/b4e2dc6b3d06b426e596.js +0 -1
  1914. package/assets/esri/core/workers/chunks/b6b2cac44a5189afdc7a.js +0 -1
  1915. package/assets/esri/core/workers/chunks/ba43e85d345393f47778.js +0 -1
  1916. package/assets/esri/core/workers/chunks/ba6024465308c248170b.js +0 -1
  1917. package/assets/esri/core/workers/chunks/bc2c4b00168f9251f693.js +0 -1
  1918. package/assets/esri/core/workers/chunks/bead656f8da33e023b2b.js +0 -1
  1919. package/assets/esri/core/workers/chunks/c2cb9fa18c77f0c5104e.js +0 -1
  1920. package/assets/esri/core/workers/chunks/c2fb0f3179b9ff294b68.js +0 -1
  1921. package/assets/esri/core/workers/chunks/cb8270d50f152fff2804.js +0 -1
  1922. package/assets/esri/core/workers/chunks/d0ff968e42116f592065.js +0 -1
  1923. package/assets/esri/core/workers/chunks/d265da47f6c752a40ac1.js +0 -1
  1924. package/assets/esri/core/workers/chunks/d26eaac455346f4df51a.js +0 -1
  1925. package/assets/esri/core/workers/chunks/d30be8788a3ea70f1edf.js +0 -1
  1926. package/assets/esri/core/workers/chunks/d3768c90b419386b65f9.js +0 -1
  1927. package/assets/esri/core/workers/chunks/d64c271c173797d98286.js +0 -1
  1928. package/assets/esri/core/workers/chunks/d6b6bb8aecc85d2a3f6b.js +0 -1
  1929. package/assets/esri/core/workers/chunks/d725dbbdeb05322e6d88.js +0 -1
  1930. package/assets/esri/core/workers/chunks/d95ca50ca7af4c222036.js +0 -1
  1931. package/assets/esri/core/workers/chunks/da6db22616bd95ee5380.js +0 -1
  1932. package/assets/esri/core/workers/chunks/df3e497d12ed77bae168.js +0 -1
  1933. package/assets/esri/core/workers/chunks/df6f54607ad4c6e28d1d.js +0 -1
  1934. package/assets/esri/core/workers/chunks/e1b2076d0040fcb7d864.js +0 -1
  1935. package/assets/esri/core/workers/chunks/e2f4e1c4fe166d249b2e.js +0 -1
  1936. package/assets/esri/core/workers/chunks/e46cd2a6da8d5cba1db6.js +0 -1
  1937. package/assets/esri/core/workers/chunks/e5bbd4cc5edbf7ab3624.js +0 -1
  1938. package/assets/esri/core/workers/chunks/e72150a38b202b68be2b.js +0 -1
  1939. package/assets/esri/core/workers/chunks/e8db7303b2f63c0ec0c9.js +0 -1
  1940. package/assets/esri/core/workers/chunks/ea9e25eaaada36253da3.js +0 -1
  1941. package/assets/esri/core/workers/chunks/eca24f316629ad0c0609.js +0 -1
  1942. package/assets/esri/core/workers/chunks/f21aa0bfc6c8f809ea86.js +0 -1
  1943. package/assets/esri/core/workers/chunks/f3462020ee3b9c6f3822.js +0 -1
  1944. package/assets/esri/core/workers/chunks/f720967ba8c5486a26a2.js +0 -1
  1945. package/assets/esri/core/workers/chunks/fb080339bfaf32731ca6.js +0 -1
  1946. package/assets/esri/core/workers/chunks/fdf58386a67e54c09bfb.js +0 -1
  1947. package/layers/knowledgeGraph/KnowledgeGraphSubLayer.d.ts +0 -4
  1948. package/layers/knowledgeGraph/KnowledgeGraphSubLayer.js +0 -5
  1949. package/layers/orientedImagery/core/Affixes.js +0 -5
  1950. package/layers/orientedImagery/core/CameraProperties.js +0 -5
  1951. package/layers/orientedImagery/core/ImageProperties.js +0 -5
  1952. package/layers/orientedImagery/core/ImageryTypes.js +0 -5
  1953. package/layers/video/VideoEngine.js +0 -5
  1954. package/views/3d/webgl-engine/lib/AppleAmdDriverHelper.js +0 -5
  1955. package/views/3d/webgl-engine/lib/RenderTargetHelper.js +0 -5
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as i}from"../../../../chunks/tslib.es6.js";import t from"../../../../core/Accessor.js";import{lerp as s}from"../../../../core/mathUtils.js";import e from"../../../../core/PooledArray.js";import{property as r}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import{subclass as o}from"../../../../core/accessorSupport/decorators/subclass.js";import{p as a}from"../../../../chunks/mat4.js";import{c}from"../../../../chunks/mat4f64.js";import{a as n}from"../../../../chunks/vec2f64.js";import{m as l,g as h,s as p,c as u}from"../../../../chunks/vec3.js";import{Z as d,c as f}from"../../../../chunks/vec3f64.js";import{s as _,t as m,b as g}from"../../../../chunks/vec4.js";import{c as b}from"../../../../chunks/vec4f64.js";import{getReferenceEllipsoid as v}from"../../../../geometry/ellipsoidUtils.js";import{create as y,empty as G,offset as S,width as B,height as D,expand as w,intersects as N}from"../../../../geometry/support/aaBoundingRect.js";import{a as I,c as j,e as V}from"../../../../chunks/boundedPlane.js";import{create as C}from"../../../../geometry/support/ray.js";import{d as P,g as A,i as O,c as M}from"../../../../chunks/sphere.js";import{drawAccelerationStruct as x,prepare as E,drawPoly as T}from"./deconflictorDebug.js";import{VisibilityGroup as z,VisibilityFlag as F}from"./enums.js";import X from"../../support/debugFlags.js";import{Camera as L}from"../../webgl-engine/lib/Camera.js";import{applyPrecomputedScaleFactor as Y}from"../../webgl-engine/lib/screenSizePerspectiveUtils.js";import{VertexAttribute as k}from"../../webgl-engine/lib/VertexAttribute.js";import{HUDMaterial as R}from"../../webgl-engine/materials/HUDMaterial.js";import{ScaleInfo as U}from"../../webgl-engine/materials/ScaleInfo.js";const W=f(),H=b(),Z=b(),q=f(),J=c(),K=M(),Q=C(),$=f(),ii=y();class ti{constructor(){this.aabr=y(),this.distance=0,this.culled=!1,this.visible=!1}}class si{constructor(i,t){this.graphics3DGraphic=i,this.slicePlaneEnabled=t,this.info={}}}var ei;!function(i){i[i.Idle=0]="Idle",i[i.Process=1]="Process",i[i.Sort=2]="Sort",i[i.Deconflict=3]="Deconflict",i[i.NumStates=4]="NumStates"}(ei||(ei={}));class ri{constructor(){this.camera=new L,this.slicePlane=I(),this.slicePlaneEnabled=!1}copyFrom(i){this.camera.copyFrom(i.camera),j(i.slicePlane,this.slicePlane),this.slicePlaneEnabled=i.slicePlaneEnabled}}let oi=class extends t{get dirty(){return this._dirty}get state(){return this._state}constructor(i){super(i),this._dirty=!1,this._runningViewState=new ri,this._state=ei.Idle,this._active=new Map,this._visible=new Map,this._iterators=new hi,this._accBinsNumX=15,this._accBinsNumY=20,this._accBinsSizeX=0,this._accBinsSizeY=0,this._accBins=null,this.accNumTests=0}destroy(){this._active.clear(),this._visible.clear(),this._iterators=null}setDirty(){!this._dirty&&this._active.size>0&&(this._dirty=!0,this.notifyChange("updating"))}get updating(){return this._state!==ei.Idle||this._dirty}get updatingProgress(){if(!this.updating)return 1;const i=this._state/ei.NumStates;return this._dirty?.5*i:i}get running(){return this.view.ready&&null!=this.view.state&&this.updating}runTask(i){switch(this._state){case ei.Idle:this._startUpdate(),i.madeProgress();case ei.Process:if(this._state=ei.Process,!this._processActiveGraphics(i))return;case ei.Sort:if(this._state=ei.Sort,!this._sortVisibleGraphics(i))return;case ei.Deconflict:if(this._state=ei.Deconflict,!this._deconflictVisibleGraphics(i))return;default:x(this,this._visible),this._state=ei.Idle,this.notifyChange("updating")}}modifyGraphics(i,t){t?i.forEach((i=>this.addToActiveGraphics(i))):i.forEach((i=>this.removeFromActiveGraphics(i))),this.setDirty()}layerSupportsDeconfliction(i){if(null==i||"object3d"!==i.type)return!1;const t=i.stageObject;if(1!==(t?t.geometries.length:0))return!1;const s=t?.geometries[0],e=s?.material;return e instanceof R}_startUpdate(){E(this.view),this._dirty=!1,this._runningViewState.copyFrom(this.viewState);const{fullWidth:i,fullHeight:t}=this._runningViewState.camera;this._initBins(i,t),this._resetIterators()}addToActiveGraphics(i){i.info[this.visibilityGroup]=new ti,this._active.set(i.graphics3DGraphic.graphic.uid,i),this.setDirty()}removeFromActiveGraphics(i){this._visible.delete(i.graphics3DGraphic.graphic.uid),ai(i,this.visibilityGroup),delete i.info[this.visibilityGroup],this._active.delete(i.graphics3DGraphic.graphic.uid),this.setDirty()}_processActiveGraphics(i){const t=this._ensureActiveGraphicsIterator(),s=a(J,this._runningViewState.camera.projectionMatrix),e="global"===this.view.viewingMode&&1===this.view.map.ground.opacity&&this._runningViewState.camera.relativeElevation>0?K:null;let r=0;for(null!=e&&(l(e,d,this._runningViewState.camera.viewMatrix),e[3]=v(this.view.spatialReference).radius,r=P(e,d));!i.done;){i.madeProgress();const o=t.next();if(!0===o.done)return this._resetActiveGraphicsIterator(),!0;const a=o.value,c=a&&a.info[this.visibilityGroup];c&&(this._collectGraphics3DGraphics(a,s,e,r),c.culled?this._visible.delete(a.graphics3DGraphic.graphic.uid):this._visible.set(a.graphics3DGraphic.graphic.uid,a))}return!1}_sortVisibleGraphics(i){const t=this._ensureSortGraphicsIterator();for(;!i.done;){const s=t.next();if(i.madeProgress(),!0===s.done)return this._resetSortGraphicsIterator(),!0}return!1}_deconflictVisibleGraphics(i){const t=this._ensureVisibleGraphicsIterator(),s=this.visibilityGroup===z.LABEL;for(;!i.done;){i.madeProgress();const e=t.next();if(!0===e.done)return this._resetVisibleGraphicsIterator(),!0;const r=e.value,o=r.info[this.visibilityGroup];if(!o||o.culled)continue;const a=r.graphics3DGraphic,c=!s||a.isVisible();o.visible=c&&!this._isConflicted(r),o.visible&&this._addToBins(r),this._setGraphicVisibility(r,o.visible),T(o,o.visible)}return!1}_resetIterators(){this._iterators.active=null,this._iterators.visible=null,this._iterators.sort=null}_ensureActiveGraphicsIterator(){return this._iterators.active||(this._iterators.active=ci(this._active)),this._iterators.active}_resetActiveGraphicsIterator(){this._iterators.active=null}_ensureVisibleGraphicsIterator(){return this._iterators.visible||(this._iterators.visible=ci(this._visible)),this._iterators.visible}_resetVisibleGraphicsIterator(){this._iterators.visible=null}_ensureSortGraphicsIterator(){return this._iterators.sort||(this._iterators.sort=ni(this._visible,this._iterators.sortArray,this.visibilityGroup)),this._iterators.sort}_resetSortGraphicsIterator(){this._iterators.sort=null}_collectGraphics3DGraphics(i,t,s,e){const r=i.graphics3DGraphic;if(r.destroyed)return;const o=i.info[this.visibilityGroup];if(!r.isVisible(z.GRAPHIC,F.DECONFLICTION))return void(o.culled=!0);const a=this.getGraphicsLayers(r);G(o.aabr);let c=null;for(const n of a){if(!this.layerSupportsDeconfliction(n))continue;const r=n.stageObject.geometries[0].material;if(null==c){if(c=di,this._getProjectionInfo(n,t,c),c.isOutsideScreen||this._isCulledBySlice(i,W)||null!=s&&this._isCulledByHorizon(c,s,e))return void(o.culled=!0);!X.TESTS_DISABLE_OPTIMIZATIONS&&o.visible&&(c.distance*=.7)}this._expandBoundingRect(o,n,r,c)}null==c?o.culled=!0:(o.distance=c.distance,o.culled=!1)}_getProjectionInfo(i,t,s){const e=this._runningViewState.camera,r=i.stageObject,o=r.geometries[0],a=o.material,c=A(r.boundingVolumeWorldSpace.bounds);l(W,c,e.viewMatrix);const n=o.vertexAttributes,u=n.get(k.NORMAL).data,d=n.get(k.AUXPOS1).data;a.applyShaderOffsetsView(W,u,r.transformation,d,e,s.scaleInfo,W),_(H,W[0],W[1],W[2],1),m(Z,H,e.projectionMatrix),h(s.positionNDC,Z,1/Z[3]),a.applyShaderOffsetsNDC(s.positionNDC,d,e,s.positionNDC,q),s.distanceWithoutPolygonOffset=e.depthNDCToWorld(q[2]),s.distance=q[2]===s.positionNDC[2]?s.distanceWithoutPolygonOffset:e.depthNDCToWorld(s.positionNDC[2]),_(Z,s.positionNDC[0],s.positionNDC[1],s.positionNDC[2],1),m(H,Z,t),g(H,H,1/H[3]),p(s.positionView,W[0],W[1],W[2])}_isCulledByHorizon(i,t,s){return u(Q.direction,i.positionView),p(Q.origin,0,0,0),!!O(t,Q,$)&&i.distanceWithoutPolygonOffset>s}_isCulledBySlice(i,t){return i.slicePlaneEnabled&&this._runningViewState.slicePlaneEnabled&&V(this._runningViewState.slicePlane,t)}_expandBoundingRect(i,t,e,{positionNDC:r,scaleInfo:o}){const a=this._runningViewState.camera,c=t.getScreenSize(pi);Y(c,o.factor,c),c[0]*=a.pixelRatio,c[1]*=a.pixelRatio;const n=S(e.calculateRelativeScreenBounds(c,o.factorAlignment.scale,ii),s(0,a.fullWidth,.5+.5*r[0]),s(0,a.fullHeight,.5+.5*r[1])),l=this.iconMarginFactor;if(0!==l){const i=l*Math.min(B(n),D(n));n[0]-=i,n[1]-=i,n[2]+=i,n[3]+=i}w(i.aabr,n,i.aabr)}_isConflicted(i){const t=i.graphics3DGraphic.graphic.uid,s=i.info[this.visibilityGroup];for(let e=Math.floor(s.aabr[0]/this._accBinsSizeX);e<=Math.floor(s.aabr[2]/this._accBinsSizeX);e++)if(!(e<0||e>=this._accBinsNumX))for(let i=Math.floor(s.aabr[1]/this._accBinsSizeY);i<=Math.floor(s.aabr[3]/this._accBinsSizeY);i++){if(i<0||i>=this._accBinsNumY)continue;const r=this._accBins[e][i];for(let i=0;i<r.length;i++){const e=r.data[i],o=e.info[this.visibilityGroup];if(o&&o.visible&&e.graphics3DGraphic.graphic.uid!==t&&(this.accNumTests++,N(o.aabr,s.aabr)))return!0}}return!1}_initBins(i,t){if(null==this._accBins){this._accBins=[];for(let i=0;i<this._accBinsNumX;i++){this._accBins.push([]);const i=this._accBins[this._accBins.length-1];for(let t=0;t<this._accBinsNumY;t++)i.push(new e)}}else for(let s=0;s<this._accBinsNumX;s++)for(let i=0;i<this._accBinsNumY;i++)this._accBins[s][i].clear();this._accBinsSizeX=i/this._accBinsNumX,this._accBinsSizeY=t/this._accBinsNumY,this.accNumTests=0}_addToBins(i){const t=i.info[this.visibilityGroup],s=Math.floor(t.aabr[0]/this._accBinsSizeX),e=Math.floor(t.aabr[2]/this._accBinsSizeX),r=Math.floor(t.aabr[1]/this._accBinsSizeY),o=Math.floor(t.aabr[3]/this._accBinsSizeY);for(let a=s;a<=e;a++)if(!(a<0||a>=this._accBinsNumX))for(let t=r;t<=o;t++)t<0||t>=this._accBinsNumY||this._accBins[a][t].push(i)}_setGraphicVisibility(i,t){const s=i.graphics3DGraphic;s.destroyed||(s.setVisibilityFlag(this.visibilityGroup,F.DECONFLICTION,t),this.visibilityGroup===z.LABEL&&this.view.labeler.setLabelGraphicVisibility(s,t))}};function ai(i,t){const s=i.graphics3DGraphic;s.destroyed||s.setVisibilityFlag(t,F.DECONFLICTION,!0)}function*ci(i){if(Map.prototype.entries){const t=i.entries();for(let i=t.next();!i.done;i=t.next())yield i.value[1]}else yield*i.values()}function*ni(i,t,s){t.clear(),i.forEach(((i,e)=>{const r=t.pushNew();r.id=e,r.visible=i.graphics3DGraphic.getVisibilityFlag(s,F.DECONFLICTION);const o=i.info&&i.info[s];r.prio=i.graphics3DGraphic.deconflictionPriority,r.distance=o?o.distance:Number.MAX_VALUE})),yield;const e=t.iterableSort(((i,t)=>i.visible!==t.visible?i.visible?-1:1:i.prio!==t.prio?t.prio-i.prio:i.distance!==t.distance?i.distance-t.distance:i.id-t.id));for(let r=e.next();!r.done;r=e.next())yield;t.forAll((t=>{const s=i.get(t.id);s&&(i.delete(t.id),i.set(t.id,s))})),t.clear()}i([r({constructOnly:!0})],oi.prototype,"view",void 0),i([r({type:Boolean,readOnly:!0})],oi.prototype,"updating",null),oi=i([o("esri.views.3d.layers.graphics.Deconflictor")],oi);class li{constructor(){this.id=0,this.visible=!1,this.prio=0,this.distance=0}}class hi{constructor(i=null,t=null,s=null){this.active=i,this.visible=t,this.sort=s,this.sortArray=new e({allocator:i=>i||new li})}}const pi=n();class ui{constructor(){this.positionView=f(),this.positionNDC=f(),this.distance=0,this.distanceWithoutPolygonOffset=0,this.scaleInfo=new U}get isOutsideScreen(){const i=this.positionNDC;return i[0]<-1||i[1]<-1||i[2]<-1||i[0]>=1||i[1]>=1}}const di=new ui;export{oi as Deconflictor,si as DeconflictorGraphic,ri as DeconflictorViewState,ei as State};
5
+ import{_ as i}from"../../../../chunks/tslib.es6.js";import t from"../../../../core/Accessor.js";import{lerp as s}from"../../../../core/mathUtils.js";import e from"../../../../core/PooledArray.js";import{property as r}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import{subclass as o}from"../../../../core/accessorSupport/decorators/subclass.js";import{p as a}from"../../../../chunks/mat4.js";import{c}from"../../../../chunks/mat4f64.js";import{a as n}from"../../../../chunks/vec2f64.js";import{m as l,g as h,s as p,c as u}from"../../../../chunks/vec3.js";import{Z as d,c as f}from"../../../../chunks/vec3f64.js";import{s as _,t as m,b as g}from"../../../../chunks/vec4.js";import{c as b}from"../../../../chunks/vec4f64.js";import{getReferenceEllipsoid as v}from"../../../../geometry/ellipsoidUtils.js";import{create as y,empty as G,offset as S,width as B,height as D,expand as w,intersects as N}from"../../../../geometry/support/aaBoundingRect.js";import{a as j,c as I,e as V}from"../../../../chunks/boundedPlane.js";import{create as C}from"../../../../geometry/support/ray.js";import{d as P,g as A,i as O,c as M}from"../../../../chunks/sphere.js";import{drawAccelerationStruct as x,prepare as z,drawPoly as E}from"./deconflictorDebug.js";import{VisibilityGroup as T,VisibilityFlag as X}from"./enums.js";import{Camera as F}from"../../webgl-engine/lib/Camera.js";import{applyPrecomputedScaleFactor as L}from"../../webgl-engine/lib/screenSizePerspectiveUtils.js";import{VertexAttribute as Y}from"../../webgl-engine/lib/VertexAttribute.js";import{HUDMaterial as k}from"../../webgl-engine/materials/HUDMaterial.js";import{ScaleInfo as R}from"../../webgl-engine/materials/ScaleInfo.js";const U=f(),W=b(),H=b(),Z=f(),q=c(),J=M(),K=C(),Q=f(),$=y();class ii{constructor(){this.aabr=y(),this.distance=0,this.culled=!1,this.visible=!1}}class ti{constructor(i,t){this.graphics3DGraphic=i,this.slicePlaneEnabled=t,this.info={}}}var si;!function(i){i[i.Idle=0]="Idle",i[i.Process=1]="Process",i[i.Sort=2]="Sort",i[i.Deconflict=3]="Deconflict",i[i.NumStates=4]="NumStates"}(si||(si={}));class ei{constructor(){this.camera=new F,this.slicePlane=j(),this.slicePlaneEnabled=!1}copyFrom(i){this.camera.copyFrom(i.camera),I(i.slicePlane,this.slicePlane),this.slicePlaneEnabled=i.slicePlaneEnabled}}let ri=class extends t{get dirty(){return this._dirty}get state(){return this._state}constructor(i){super(i),this._dirty=!1,this._runningViewState=new ei,this._state=si.Idle,this._active=new Map,this._visible=new Map,this._iterators=new li,this._accBinsNumX=15,this._accBinsNumY=20,this._accBinsSizeX=0,this._accBinsSizeY=0,this._accBins=null,this.accNumTests=0}destroy(){this._active.clear(),this._visible.clear(),this._iterators=null}setDirty(){!this._dirty&&this._active.size>0&&(this._dirty=!0,this.notifyChange("updating"))}get updating(){return this._state!==si.Idle||this._dirty}get updatingProgress(){if(!this.updating)return 1;const i=this._state/si.NumStates;return this._dirty?.5*i:i}get running(){return this.view.ready&&null!=this.view.state&&this.updating}runTask(i){switch(this._state){case si.Idle:this._startUpdate(),i.madeProgress();case si.Process:if(this._state=si.Process,!this._processActiveGraphics(i))return;case si.Sort:if(this._state=si.Sort,!this._sortVisibleGraphics(i))return;case si.Deconflict:if(this._state=si.Deconflict,!this._deconflictVisibleGraphics(i))return;default:x(this,this._visible),this._state=si.Idle,this.notifyChange("updating")}}modifyGraphics(i,t){t?i.forEach((i=>this.addToActiveGraphics(i))):i.forEach((i=>this.removeFromActiveGraphics(i))),this.setDirty()}layerSupportsDeconfliction(i){if(null==i||"object3d"!==i.type)return!1;const t=i.stageObject;if(1!==(t?t.geometries.length:0))return!1;const s=t?.geometries[0],e=s?.material;return e instanceof k}_startUpdate(){z(this.view),this._dirty=!1,this._runningViewState.copyFrom(this.viewState);const{fullWidth:i,fullHeight:t}=this._runningViewState.camera;this._initBins(i,t),this._resetIterators()}addToActiveGraphics(i){i.info[this.visibilityGroup]=new ii,this._active.set(i.graphics3DGraphic.graphic.uid,i),this.setDirty()}removeFromActiveGraphics(i){this._visible.delete(i.graphics3DGraphic.graphic.uid),oi(i,this.visibilityGroup),delete i.info[this.visibilityGroup],this._active.delete(i.graphics3DGraphic.graphic.uid),this.setDirty()}_processActiveGraphics(i){const t=this._ensureActiveGraphicsIterator(),s=a(q,this._runningViewState.camera.projectionMatrix),e="global"===this.view.viewingMode&&1===this.view.map.ground.opacity&&this._runningViewState.camera.relativeElevation>0?J:null;let r=0;for(null!=e&&(l(e,d,this._runningViewState.camera.viewMatrix),e[3]=v(this.view.spatialReference).radius,r=P(e,d));!i.done;){i.madeProgress();const o=t.next();if(!0===o.done)return this._resetActiveGraphicsIterator(),!0;const a=o.value,c=a&&a.info[this.visibilityGroup];c&&(this._collectGraphics3DGraphics(a,s,e,r),c.culled?this._visible.delete(a.graphics3DGraphic.graphic.uid):this._visible.set(a.graphics3DGraphic.graphic.uid,a))}return!1}_sortVisibleGraphics(i){const t=this._ensureSortGraphicsIterator();for(;!i.done;){const s=t.next();if(i.madeProgress(),!0===s.done)return this._resetSortGraphicsIterator(),!0}return!1}_deconflictVisibleGraphics(i){const t=this._ensureVisibleGraphicsIterator(),s=this.visibilityGroup===T.LABEL;for(;!i.done;){i.madeProgress();const e=t.next();if(!0===e.done)return this._resetVisibleGraphicsIterator(),!0;const r=e.value,o=r.info[this.visibilityGroup];if(!o||o.culled)continue;const a=r.graphics3DGraphic,c=!s||a.isVisible();o.visible=c&&!this._isConflicted(r),o.visible&&this._addToBins(r),this._setGraphicVisibility(r,o.visible),E(o,o.visible)}return!1}_resetIterators(){this._iterators.active=null,this._iterators.visible=null,this._iterators.sort=null}_ensureActiveGraphicsIterator(){return this._iterators.active||(this._iterators.active=ai(this._active)),this._iterators.active}_resetActiveGraphicsIterator(){this._iterators.active=null}_ensureVisibleGraphicsIterator(){return this._iterators.visible||(this._iterators.visible=ai(this._visible)),this._iterators.visible}_resetVisibleGraphicsIterator(){this._iterators.visible=null}_ensureSortGraphicsIterator(){return this._iterators.sort||(this._iterators.sort=ci(this._visible,this._iterators.sortArray,this.visibilityGroup)),this._iterators.sort}_resetSortGraphicsIterator(){this._iterators.sort=null}_collectGraphics3DGraphics(i,t,s,e){const r=i.graphics3DGraphic;if(r.destroyed)return;const o=i.info[this.visibilityGroup];if(!r.isVisible(T.GRAPHIC,X.DECONFLICTION))return void(o.culled=!0);const a=this.getGraphicsLayers(r);G(o.aabr);let c=null;for(const n of a){if(!this.layerSupportsDeconfliction(n))continue;const r=n.stageObject.geometries[0].material;if(null==c&&(c=ui,this._getProjectionInfo(n,t,c),c.isOutsideScreen||this._isCulledBySlice(i,U)||null!=s&&this._isCulledByHorizon(c,s,e)))return void(o.culled=!0);this._expandBoundingRect(o,n,r,c)}null==c?o.culled=!0:(o.distance=c.distance,o.culled=!1)}_getProjectionInfo(i,t,s){const e=this._runningViewState.camera,r=i.stageObject,o=r.geometries[0],a=o.material,c=A(r.boundingVolumeWorldSpace.bounds);l(U,c,e.viewMatrix);const n=o.vertexAttributes,u=n.get(Y.NORMAL).data,d=n.get(Y.AUXPOS1).data;a.applyShaderOffsetsView(U,u,r.transformation,d,e,s.scaleInfo,U),_(W,U[0],U[1],U[2],1),m(H,W,e.projectionMatrix),h(s.positionNDC,H,1/H[3]),a.applyShaderOffsetsNDC(s.positionNDC,d,e,s.positionNDC,Z),s.distanceWithoutPolygonOffset=e.depthNDCToWorld(Z[2]),s.distance=Z[2]===s.positionNDC[2]?s.distanceWithoutPolygonOffset:e.depthNDCToWorld(s.positionNDC[2]),_(H,s.positionNDC[0],s.positionNDC[1],s.positionNDC[2],1),m(W,H,t),g(W,W,1/W[3]),p(s.positionView,U[0],U[1],U[2])}_isCulledByHorizon(i,t,s){return u(K.direction,i.positionView),p(K.origin,0,0,0),!!O(t,K,Q)&&i.distanceWithoutPolygonOffset>s}_isCulledBySlice(i,t){return i.slicePlaneEnabled&&this._runningViewState.slicePlaneEnabled&&V(this._runningViewState.slicePlane,t)}_expandBoundingRect(i,t,e,{positionNDC:r,scaleInfo:o}){const a=this._runningViewState.camera,c=t.getScreenSize(hi);L(c,o.factor,c),c[0]*=a.pixelRatio,c[1]*=a.pixelRatio;const n=S(e.calculateRelativeScreenBounds(c,o.factorAlignment.scale,$),s(0,a.fullWidth,.5+.5*r[0]),s(0,a.fullHeight,.5+.5*r[1])),l=this.iconMarginFactor;if(0!==l){const i=l*Math.min(B(n),D(n));n[0]-=i,n[1]-=i,n[2]+=i,n[3]+=i}w(i.aabr,n,i.aabr)}_isConflicted(i){const t=i.graphics3DGraphic.graphic.uid,s=i.info[this.visibilityGroup];for(let e=Math.floor(s.aabr[0]/this._accBinsSizeX);e<=Math.floor(s.aabr[2]/this._accBinsSizeX);e++)if(!(e<0||e>=this._accBinsNumX))for(let i=Math.floor(s.aabr[1]/this._accBinsSizeY);i<=Math.floor(s.aabr[3]/this._accBinsSizeY);i++){if(i<0||i>=this._accBinsNumY)continue;const r=this._accBins[e][i];for(let i=0;i<r.length;i++){const e=r.data[i],o=e.info[this.visibilityGroup];if(o&&o.visible&&e.graphics3DGraphic.graphic.uid!==t&&(this.accNumTests++,N(o.aabr,s.aabr)))return!0}}return!1}_initBins(i,t){if(null==this._accBins){this._accBins=[];for(let i=0;i<this._accBinsNumX;i++){this._accBins.push([]);const i=this._accBins[this._accBins.length-1];for(let t=0;t<this._accBinsNumY;t++)i.push(new e)}}else for(let s=0;s<this._accBinsNumX;s++)for(let i=0;i<this._accBinsNumY;i++)this._accBins[s][i].clear();this._accBinsSizeX=i/this._accBinsNumX,this._accBinsSizeY=t/this._accBinsNumY,this.accNumTests=0}_addToBins(i){const t=i.info[this.visibilityGroup],s=Math.floor(t.aabr[0]/this._accBinsSizeX),e=Math.floor(t.aabr[2]/this._accBinsSizeX),r=Math.floor(t.aabr[1]/this._accBinsSizeY),o=Math.floor(t.aabr[3]/this._accBinsSizeY);for(let a=s;a<=e;a++)if(!(a<0||a>=this._accBinsNumX))for(let t=r;t<=o;t++)t<0||t>=this._accBinsNumY||this._accBins[a][t].push(i)}_setGraphicVisibility(i,t){const s=i.graphics3DGraphic;s.destroyed||(s.setVisibilityFlag(this.visibilityGroup,X.DECONFLICTION,t),this.visibilityGroup===T.LABEL&&this.view.labeler.setLabelGraphicVisibility(s,t))}};function oi(i,t){const s=i.graphics3DGraphic;s.destroyed||s.setVisibilityFlag(t,X.DECONFLICTION,!0)}function*ai(i){if(Map.prototype.entries){const t=i.entries();for(let i=t.next();!i.done;i=t.next())yield i.value[1]}else yield*i.values()}function*ci(i,t,s){t.clear(),i.forEach(((i,e)=>{const r=t.pushNew();r.id=e,r.visible=i.graphics3DGraphic.getVisibilityFlag(s,X.DECONFLICTION);const o=i.info&&i.info[s];r.prio=i.graphics3DGraphic.deconflictionPriority,r.distance=o?o.distance:Number.MAX_VALUE})),yield;const e=t.iterableSort(((i,t)=>i.prio!==t.prio?t.prio-i.prio:i.distance!==t.distance?i.distance-t.distance:i.visible!==t.visible?i.visible?-1:1:i.id-t.id));for(let r=e.next();!r.done;r=e.next())yield;t.forAll((t=>{const s=i.get(t.id);s&&(i.delete(t.id),i.set(t.id,s))})),t.clear()}i([r({constructOnly:!0})],ri.prototype,"view",void 0),i([r({type:Boolean,readOnly:!0})],ri.prototype,"updating",null),ri=i([o("esri.views.3d.layers.graphics.Deconflictor")],ri);class ni{constructor(){this.id=0,this.visible=!1,this.prio=0,this.distance=0}}class li{constructor(i=null,t=null,s=null){this.active=i,this.visible=t,this.sort=s,this.sortArray=new e({allocator:i=>i||new ni})}}const hi=n();class pi{constructor(){this.positionView=f(),this.positionNDC=f(),this.distance=0,this.distanceWithoutPolygonOffset=0,this.scaleInfo=new R}get isOutsideScreen(){const i=this.positionNDC;return i[0]<-1||i[1]<-1||i[2]<-1||i[0]>=1||i[1]>=1}}const ui=new pi;export{ri as Deconflictor,ti as DeconflictorGraphic,ei as DeconflictorViewState,si as State};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../geometry.js";import{remove as e}from"../../../../core/arrayUtils.js";import{createResolver as t,onAbort as r,createAbortError as s}from"../../../../core/promiseUtils.js";import{TaskPriority as i,noBudget as n}from"../../../support/Scheduler.js";import o from"../../../../geometry/Multipoint.js";class a{constructor(e,t){this.spatialReference=e,this._view=t}getElevation(e,t,r){return this._view.elevationProvider.getElevation(e,t,0,this.spatialReference,r)}async queryElevation(e,t,r,s,i){return this._view.elevationProvider.queryElevation(e,t,0,this.spatialReference,i,r,s)}}class l{constructor(e,t,r,s){this.spatialReference=t,this._getElevationQueryProvider=r,this._queries=new Array,this._queryOptions={...s,ignoreInvisibleLayers:!0},this._frameTask=e.registerTask(i.ELEVATION_QUERY,this)}destroy(){this._frameTask.remove()}queryElevation(i,n,o,a=0){const l=t(),u={x:i,y:n,minDemResolution:a,result:l,signal:o};return this._queries.push(u),r(o,(()=>{e(this._queries,u),l.reject(s())})),l.promise}get running(){return this._queries.length>0}runTask(e){const t=this._queries;this._queries=[];const i=this._getElevationQueryProvider();if(!i)return t.forEach((e=>e.result.reject())),void e.madeProgress();const n=t.map((e=>[e.x,e.y])),a=t.reduce(((e,t)=>Math.min(e,t.minDemResolution)),1/0),l=new o({points:n,spatialReference:this.spatialReference}),u=t.length>1&&t.some((e=>!!e.signal))?new AbortController:null,h=null!=u?u.signal:t[0].signal;if(null!=u){let e=0;t.forEach((i=>r(i.signal,(()=>{e++,i.result.reject(s()),e===t.length&&u.abort()}))))}const c={...this._queryOptions,minDemResolution:a,signal:h};i.queryElevation(l,c).then((e=>{t.forEach(((t,r)=>{null!=t.signal&&t.signal.aborted?t.result.reject(s()):t.result.resolve(e.geometry.points[r][2])}))})).catch((e=>{t.forEach((t=>t.result.reject(e)))})),e.madeProgress()}get test(){const e=this;return{update:()=>e._queries.length>0&&e.runTask(n)}}}export{l as ElevationQuery,a as ViewElevationProvider};
5
+ import"../../../../geometry.js";import{remove as e}from"../../../../core/arrayUtils.js";import{createAbortError as t,createResolver as r,onAbort as s}from"../../../../core/promiseUtils.js";import{TaskPriority as i,noBudget as n}from"../../../support/Scheduler.js";import o from"../../../../geometry/Multipoint.js";class l{constructor(e,t){this.spatialReference=e,this._view=t}getElevation(e,t,r){return this._view.elevationProvider.getElevation(e,t,0,this.spatialReference,r)}async queryElevation(e,t,r,s,i){return this._view.elevationProvider.queryElevation(e,t,0,this.spatialReference,i,r,s)}}class a{constructor(e,t,r,s){this.spatialReference=t,this._getElevationQueryProvider=r,this._queries=new Array,this._queryOptions={...s,ignoreInvisibleLayers:!0},this._frameTask=e.registerTask(i.ELEVATION_QUERY,this)}destroy({completeTasks:e}={completeTasks:!1}){if(this._frameTask.remove(),this.running)if(e)this.runTask(n);else for(const r of this._queries)r.result.reject(t())}queryElevation(i,n,o,l=0){const a=r(),u={x:i,y:n,minDemResolution:l,result:a,signal:o};return this._queries.push(u),s(o,(()=>{e(this._queries,u),a.reject(t())})),a.promise}get running(){return this._queries.length>0}runTask(e){const r=this._queries;this._queries=[];const i=this._getElevationQueryProvider();if(!i)return r.forEach((e=>e.result.reject())),void e.madeProgress();const n=r.map((e=>[e.x,e.y])),l=r.reduce(((e,t)=>Math.min(e,t.minDemResolution)),1/0),a=new o({points:n,spatialReference:this.spatialReference}),u=r.length>1&&r.some((e=>!!e.signal))?new AbortController:null,c=null!=u?u.signal:r[0].signal;if(null!=u){let e=0;r.forEach((i=>s(i.signal,(()=>{e++,i.result.reject(t()),e===r.length&&u.abort()}))))}const h={...this._queryOptions,minDemResolution:l,signal:c};i.queryElevation(a,h).then((e=>{r.forEach(((r,s)=>{null!=r.signal&&r.signal.aborted?r.result.reject(t()):r.result.resolve(e.geometry.points[s][2])}))})).catch((e=>{r.forEach((t=>t.result.reject(e)))})),e.madeProgress()}get test(){const e=this;return{update:()=>e._queries.length>0&&e.runTask(n)}}}export{a as ElevationQuery,l as ViewElevationProvider};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import"../../../../geometry.js";import"../../../../renderers/ClassBreaksRenderer.js";import"../../../../renderers/DictionaryRenderer.js";import"../../../../renderers/DotDensityRenderer.js";import"../../../../renderers/HeatmapRenderer.js";import"../../../../renderers/PieChartRenderer.js";import"../../../../renderers/Renderer.js";import"../../../../renderers/SimpleRenderer.js";import i from"../../../../renderers/UniqueValueRenderer.js";import"../../../../renderers/support/jsonUtils.js";import"../../../../symbols.js";import t from"../../../../core/Accessor.js";import{isSome as r}from"../../../../core/arrayUtils.js";import"../../../../core/has.js";import s from"../../../../core/Error.js";import a from"../../../../core/Handles.js";import{makeHandle as n}from"../../../../core/handleUtils.js";import o from"../../../../core/Logger.js";import{someMap as l,findInMap as h}from"../../../../core/MapUtils.js";import{destroyMaybe as d,removeMaybe as p,disposeMaybe as c}from"../../../../core/maybe.js";import y from"../../../../core/PooledArray.js";import{throwIfAborted as m,eachAlways as g,createResolver as u,isAbortError as b}from"../../../../core/promiseUtils.js";import{watch as _,when as f,on as v,syncAndInitial as C,whenOnce as S}from"../../../../core/reactiveUtils.js";import{schedule as w}from"../../../../core/scheduling.js";import{property as G}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as x}from"../../../../core/accessorSupport/decorators/subclass.js";import{diff as P,isEmpty as R}from"../../../../core/accessorSupport/diffUtils.js";import{s as D,a as E,g as I}from"../../../../chunks/vec3.js";import{c as U}from"../../../../chunks/vec3f64.js";import{projectVectorToVector as A,projectXYZToVector as O,canProjectWithoutEngine as j,projectBuffer as L}from"../../../../geometry/projection.js";import{create as V,center as F,fromRect as T,equals as k}from"../../../../geometry/support/aaBoundingBox.js";import{create as z}from"../../../../geometry/support/aaBoundingRect.js";import{equals as W}from"../../../../geometry/support/spatialReferenceUtils.js";import M from"../../../../layers/Layer.js";import{getObjectId as N,computeAABB as B,hasGeometry as H}from"../../../../layers/graphics/dehydratedFeatures.js";import{hydrateGraphic as q}from"../../../../layers/graphics/hydratedFeatures.js";import{isSupportedRenderer3D as Y,validateTo3D as $}from"../../../../renderers/support/rendererConversion.js";import{loadArcade as Z}from"../../../../support/arcadeOnDemand.js";import{getDefaultSymbol3D as J}from"../../../../symbols/support/defaults3D.js";import{to3D as Q}from"../../../../symbols/support/symbolConversion.js";import{ViewElevationProvider as K}from"./ElevationQuery.js";import{VisibilityGroup as X,VisibilityFlag as ee}from"./enums.js";import{extractExpressionInfo as ie,createContext as te}from"./featureExpressionInfoUtils.js";import{Graphics3DFeatureStore as re}from"./Graphics3DFeatureStore.js";import se from"./Graphics3DGraphicCreationContext.js";import{Graphics3DSymbolCreationContext as ae}from"./Graphics3DSymbolCreationContext.js";import{make as ne}from"./Graphics3DSymbolFactory.js";import oe from"./Graphics3DWebStyleSymbol.js";import{GraphicStateTracking as le}from"./GraphicStateTracking.js";import{computeCentroid as he}from"./graphicUtils.js";import{ApplyRendererDiffResult as de}from"./interfaces.js";import{LoadStatus as pe}from"./Loadable.js";import{SpatialIndex2D as ce}from"./SpatialIndex2D.js";import{averageSymbolComplexities as ye,defaultSymbolComplexity as me}from"./symbolComplexity.js";import{StageLayerElevationProvider as ge}from"../support/StageLayerElevationProvider.js";import{toBoundingRect as ue}from"../../support/extentUtils.js";import{PropertiesPool as be}from"../../support/PropertiesPool.js";import{GridLocalOriginFactory as _e}from"../../webgl-engine/lib/GridLocalOriginFactory.js";import{UpdatePolicy as fe}from"../../webgl-engine/lib/UpdatePolicy.js";import{WebGLLayer as ve}from"../../webgl-engine/lib/WebGLLayer.js";import{hasPopupTemplate as Ce}from"../../../layers/support/popupUtils.js";import{ImmediateTask as Se,noBudget as we,TaskPriority as Ge,Task as xe}from"../../../support/Scheduler.js";import Pe from"../../../../geometry/Extent.js";import Re from"../../../../geometry/Point.js";import De from"../../../../symbols/LabelSymbol3D.js";import Ee from"../../../../symbols/TextSymbol.js";import Ie from"../../../../symbols/WebStyleSymbol.js";var Ue;const Ae=U(),Oe=V(),je="esri.views.3d.layers.graphics.Graphics3DCore",Le=o.getLogger(je);let Ve=Ue=class extends t{get _viewSpatialReference(){return this.owner.view.spatialReference}get spatialIndex(){return this._spatialIndex||(this._spatialIndex=new ce({objectIdField:this.owner.layer?.objectIdField,spatialReference:this._viewSpatialReference,hasZ:!!this.hasZ,hasM:!!this.hasM}),this._spatialIndex.setup(Array.from(this.graphics3DGraphics.values()))),this._spatialIndex.update(),this._spatialIndex}get numberOfGraphics(){return this._numberOfGraphics}get effectiveUpdatePolicy(){return null!=this.currentRenderer&&"dictionary"===this.currentRenderer.type?fe.ASYNC:this._forcedUpdatePolicy??this.preferredUpdatePolicy}get featureStore(){return this._featureStore}get initializePromise(){return this._initializePromise}get scaleVisibility(){return this._scaleVisibility}get elevationAlignment(){return this._elevationAlignment}get objectStates(){return this._objectStates}get filterVisibility(){return this._filterVisibility}get updating(){return!!(this._graphicsWaitingForSymbol.size>0||this.running||this._elevationAlignment?.updating||null!=this._scaleVisibility&&this._scaleVisibility.updating||null!=this._filterVisibility&&this._filterVisibility.updating||this._rendererChangeAbortController||this._elevationInfoChangeAbortController||this._updatingPendingLoadedGraphicsChange||this._frameTask.updating||this._loadingSymbols>0)}get running(){return this._pendingUpdates.size>0||!!this._spatialIndex?.updating}get suspendedOrOutsideOfView(){return this.owner.suspended||!!this.owner.suspendInfo?.outsideOfView}get updatingRemaining(){return this.updating?this._pendingUpdates.size+.1*(this._spatialIndex?.updatingRemaining||0)+.1*(this._elevationAlignment?.updatingRemaining||0):0}get displayFeatureLimit(){const e=this.owner&&this.owner.view&&this.owner.view.qualitySettings,i=e?e.graphics3D.minTotalNumberOfFeatures:0,t=e?e.graphics3D.maxTotalNumberOfFeatures:0,r=e?e.graphics3D.maxTotalNumberOfPrimitives:0,s=this.averageSymbolComplexity,a=Math.max(1,null!=s?s.primitivesPerFeature:1),n=null!=s&&s.drawCallsPerFeature>0?t/s.drawCallsPerFeature*.3:t,o=Math.ceil(r/a),l=Math.max(i,Math.min(t,o,n)),h=this._get("displayFeatureLimit");return h&&h.minimumTotalNumberOfFeatures===i&&h.maximumTotalNumberOfFeatures===t&&h.maximumTotalNumberOfPrimitives===r&&h.averageSymbolComplexity===s&&h.maximumNumberOfFeatures===l?h:{minimumTotalNumberOfFeatures:i,maximumTotalNumberOfFeatures:t,maximumTotalNumberOfPrimitives:r,averageSymbolComplexity:s,maximumNumberOfFeatures:l}}get averageSymbolComplexity(){const e=ye(this._symbolComplexities),i=this._get("averageSymbolComplexity");return 0===e.numComplexities||null!=i&&(e.estimated&&(i.primitivesPerFeature>=e.primitivesPerFeature||i.primitivesPerCoordinate>=e.primitivesPerCoordinate||i.drawCallsPerFeature>=e.drawCallsPerFeature)||i.primitivesPerFeature===e.primitivesPerFeature&&i.primitivesPerCoordinate===e.primitivesPerCoordinate&&i.drawCallsPerFeature===e.drawCallsPerFeature)?i:e}get usedMemory(){const e=null!=this.averageSymbolComplexity&&this.labelsEnabled?this.averageSymbolComplexity.memory.bytesPerFeatureLabel*this._numberOfGraphics:0,i=this._getSymbolComplexitiesUsed().reduce(((e,i)=>e+i.memory.resourceBytes),0);return this._usedMemory+e+i}get usedMemoryPerGraphic(){if(this._usedMemory&&this._numberOfGraphics){const e=this._numberOfGraphics/(this._numberOfGraphics+Math.max(this._pendingAdds,this._pendingRemoves));return this._usedMemory/this._numberOfGraphics*e}if(null!=this.averageSymbolComplexity){const e=this.labelsEnabled?this.averageSymbolComplexity.memory.bytesPerFeatureLabel:0;return this.averageSymbolComplexity.memory.bytesPerFeature+e}return 0}get unprocessedMemoryEstimate(){return(this._pendingAdds-this._pendingRemoves)*this.usedMemoryPerGraphic}get _symbolComplexities(){return this.currentRenderer?this._getSymbolComplexitiesUsedOrRenderer(this.currentRenderer):this._getSymbolComplexitiesUsed()}get visible(){return this._visible}_getConvertedSymbol(e){if("web-style"===e.type)return e.clone();const i=this._symbolConversionCache.get(e.id);if(null!=i)return i;const t=Q(e,{geometryType:this.layer?.geometryType??void 0,retainId:!0,hasLabelingContext:this._hasLabelingContext(e)}),r=t.symbol||null;return null==r&&t.error&&Le.error(t.error.message),this._symbolConversionCache.set(e.id,r),r}_getSymbolComplexitiesUsedOrRenderer(e){if(null==e)return[];const i=e.getSymbols(),t="backgroundFillSymbol"in e?e.backgroundFillSymbol:null;if(!(t||i&&i.length))return[];const r=[],s=this._getSymbolComplexityUsedOrRenderer(t);null!=s&&r.push(s);for(const a of i){const e=this._getSymbolComplexityUsedOrRenderer(a);null!=e&&r.push(e)}return r}_getSymbolComplexityUsedOrRenderer(e){if(null==e)return null;const i=this._symbols.get(e.id);if(null!=i)return i.complexity;const t=this._getConvertedSymbol(e);return null!=t?me(t):null}_getSymbolComplexitiesUsed(){const e=[];return this._symbols.forEach((i=>{null!=i&&e.push(i.complexity)})),e}get _objectIdField(){return this.layer.objectIdField}constructor(e){super(e),this._propertiesPool=new be({computedExtent:Pe},this),this.computedExtent=null,this.currentRenderer=null,this.rendererHasGeometryOperations=!1,this._graphicStateTracking=null,this.graphics3DGraphics=new Map,this.stageLayer=null,this.stage=null,this._graphicsDrapedUids=new Set,this._graphicsBySymbol=new Map,this._symbolConversionCache=new Map,this._symbols=new Map,this._graphicsWithoutSymbol=new Map,this._graphicsWaitingForSymbol=new Map,this._graphicsUpdateId=0,this._handles=new a,this._frameTask=Se,this._suspendSymbolCleanup=!1,this._arcadeOnDemand=null,this._rendererChangeAbortController=null,this._elevationInfoChangeAbortController=null,this._initializeAbortController=null,this._scaleVisibility=null,this._filterVisibility=null,this._spatialIndex=null,this.extentPadding=0,this._updatingPendingLoadedGraphicsChange=null,this._featureStore=null,this._deconflictor=null,this._labeler=null,this._objectStates=null,this._viewElevationProvider=null,this._stageLayerElevationProvider=null,this._sharedSymbolResourcesOwnerHandle=null,this._whenGraphics3DGraphicRequests={},this._pendingUpdates=new Map,this._numberOfGraphics=0,this._numberOfGraphicsProvidingElevation=0,this._pendingAdds=0,this._pendingRemoves=0,this._applyPendingRemovesFirst=!1,this._loadingSymbols=0,this._pendingUpdatesPool=new y({allocator:e=>e||new Te,deallocator:e=>(e.clear(),e)}),this._symbolWarningLogged=!1,this._geometryWarningLogged=!1,this._objectIdInvisibleSet=new Set,this._whenSymbolRemoved=new y,this.preferredUpdatePolicy=fe.SYNC,this._forcedUpdatePolicy=null,this.elevationFeatureExpressionEnabled=!0,this.owner=null,this.layer=null,this.graphicSymbolSupported=!0,this.getRenderingInfoWithoutRenderer=!1,this.setUidToIdOnAdd=!0,this.hasZ=null,this.hasM=null,this._usedMemory=0,this._visible=!1,this._startCreateGraphics=!1,this.symbolCreationContext=new ae(e.owner.view.resourceController.scheduler,((e,i)=>this._frameTask.schedule(e,i)))}initialize(){this._featureStore=new re({objectIdField:this.owner.layer&&this.owner.layer.objectIdField,hasZ:!!this.hasZ,hasM:!!this.hasM,viewSpatialReference:this._viewSpatialReference,featureSpatialReference:this.owner.featureSpatialReference,getSpatialIndex:()=>this.spatialIndex,forEach:e=>this.graphics3DGraphics.forEach(e)});const e=(e,i,t)=>this.spatialIndex.queryGraphicUIDsInExtent(e,i,t),{componentFactories:i}=this;if(null!=i.elevationAlignment){const t=i.elevationAlignment(this,e);this._elevationAlignment=t}if(null!=i.scaleVisibility){const t=i.scaleVisibility(this,e);this._scaleVisibility=t}if(null!=i.filterVisibility){const e=i.filterVisibility({featureStore:this._featureStore,getFeatureCount:()=>this.graphics3DGraphics.size,updateFeatureVisibilities:e=>this.modifyGraphics3DGraphicVisibilities((i=>i.setVisibilityFlag(X.GRAPHIC,ee.FILTER,e(N(i.graphic,this._objectIdField))))),setAllFeaturesVisibility:e=>this.modifyGraphics3DGraphicVisibilities((i=>i.setVisibilityFlag(X.GRAPHIC,ee.FILTER,e))),clearFeaturesVisibility:()=>this.modifyGraphics3DGraphicVisibilities((e=>e.setVisibilityFlag(X.GRAPHIC,ee.FILTER,!0)))});this._filterVisibility=e}if(null!=i.deconflictor){const e=i.deconflictor(this);this._deconflictor=e}if(null!=i.labeler&&null!=this._scaleVisibility){const e=i.labeler(this,this._scaleVisibility);this._labeler=e}if(null!=i.objectStates){const e=i.objectStates(this);this._objectStates=e}this._initializeAbortController=new AbortController,this._initializePromise=this._initializeAsync()}async _initializeAsync(){const e=this._initializeAbortController?.signal,i=this.owner.view;this._viewElevationProvider=new K(this._viewSpatialReference,i),this._initializeStage(i,this.layer.uid);const t=i.sharedSymbolResources;this.symbolCreationContext.sharedResources=t,this._sharedSymbolResourcesOwnerHandle=t.addGraphicsOwner(this.owner),null!=this.currentRenderer&&(this.symbolCreationContext.renderer=this.currentRenderer),this.symbolCreationContext.stage=this.stage,this.symbolCreationContext.streamDataRequester=t.streamDataRequester,this.symbolCreationContext.renderCoordsHelper=i.renderCoordsHelper,this.symbolCreationContext.layer=this.layer,this.symbolCreationContext.graphicsCoreOwner=this.owner,this.symbolCreationContext.localOriginFactory=new _e(i.renderSpatialReference),this.symbolCreationContext.elevationProvider=i.elevationProvider,this.symbolCreationContext.notifyGraphicGeometryChanged=e=>this.notifyGraphicGeometryChanged(e),this.symbolCreationContext.notifyGraphicVisibilityChanged=e=>this.notifyGraphicVisibilityChanged(e);const r=ie(this.layer.elevationInfo,this.elevationFeatureExpressionEnabled);if(this.symbolCreationContext.featureExpressionInfoContext=await te(r,this._viewSpatialReference,e,Le),m(e),this.symbolCreationContext.screenSizePerspectiveEnabled=i.screenSizePerspectiveEnabled&&!!this.layer.screenSizePerspectiveEnabled,this.symbolCreationContext.slicePlaneEnabled=!!this.owner.slicePlaneEnabled,this.symbolCreationContext.physicalBasedRenderingEnabled=!!this.owner.view.qualitySettings?.physicallyBasedRenderingEnabled,this.symbolCreationContext.skipHighSymbolLods=!!this.owner.view.qualitySettings?.graphics3D?.skipHighSymbolLods,"drapeSourceType"in this.owner){const{owner:e}=this;this.symbolCreationContext.drapeSourceRenderer=i.basemapTerrain.overlayManager.registerGeometryDrapeSource(e),this._handles.add(n((()=>i.basemapTerrain.overlayManager.unregisterDrapeSource(e))))}this._handles.add([_((()=>this.suspendedOrOutsideOfView),(()=>this._frameTask.reschedule((()=>this._updateLayerVisibility())))),_((()=>[this.layer?.screenSizePerspectiveEnabled,this.owner.view?.screenSizePerspectiveEnabled]),(()=>{const e=i.screenSizePerspectiveEnabled&&!!this.layer.screenSizePerspectiveEnabled;e!==this.symbolCreationContext.screenSizePerspectiveEnabled&&(this.symbolCreationContext.screenSizePerspectiveEnabled=e,this._labeler?.reset(),this.recreateAllGraphicsAndSymbols())})),_((()=>this.owner.slicePlaneEnabled),(e=>this._slicePlaneEnabledChange(!!e))),_((()=>this.owner.view.state?.rasterPixelRatio),(()=>this._pixelRatioChange())),_((()=>!!this.owner.view.qualitySettings?.physicallyBasedRenderingEnabled),(e=>this._physicalBasedRenderingChange(e))),_((()=>!!this.owner.view.qualitySettings?.graphics3D?.skipHighSymbolLods),(e=>this._skipHighSymbolLoDsChange(e))),f((()=>i.basemapTerrain?.tilingScheme),(e=>{if(e.spatialReference.equals(this.symbolCreationContext.overlaySR)||null==i.basemapTerrain.spatialReference||(this.symbolCreationContext.overlaySR=i.basemapTerrain.spatialReference),this._handles.has("loaded-graphics"))this.recreateAllGraphics();else{const e=()=>this.owner?.loadedGraphics;this._handles.add([v(e,"change",(e=>{this._graphicsCollectionChanged(e),this._signalUpdatingDuringAsyncLoadedGraphicsChange()}),{onListenerAdd:()=>{this.recreateAllGraphics(),this._signalUpdatingDuringAsyncLoadedGraphicsChange()}})],"loaded-graphics")}}),{initial:!0}),_((()=>this.effectiveUpdatePolicy),(e=>{null!=this.stageLayer&&(this.stageLayer.updatePolicy=e),this.symbolCreationContext.isAsync=this.effectiveUpdatePolicy===fe.ASYNC,e===fe.SYNC&&this.runTask(we)}),C)]),this._frameTask=i.resourceController.scheduler.registerTask(Ge.GRAPHICS_CORE,this),this.layer&&"featureReduction"in this.layer&&this._handles.add(_((()=>this.layer.featureReduction),(()=>this._deconflictor.featureReductionChange()))),this.notifyChange("averageSymbolComplexity"),this.rendererChange(this.owner.renderer).catch((()=>{})),this._initializeAbortController=null}_abortInitialize(){this._initializeAbortController&&(this._initializeAbortController.abort(),this._initializeAbortController=null)}destroy(){this._abortInitialize(),this._abortRendererChange(),this._abortElevationInfoChange(),this._frameTask.remove(),this._frameTask=Se,this.owner.view?.deconflictor?.removeGraphicsOwner(this),this.owner.view?.labeler?.removeGraphicsOwner(this),this._elevationAlignment=d(this._elevationAlignment),this._scaleVisibility=d(this._scaleVisibility),this._filterVisibility=d(this._filterVisibility),this._deconflictor=null,this._labeler=null,this._objectStates=d(this._objectStates),this.clear(),this._featureStore=d(this._featureStore),this._updatingPendingLoadedGraphicsChange=p(this._updatingPendingLoadedGraphicsChange),this._graphicStateTracking=d(this._graphicStateTracking),this.stage&&(this.stageLayer=d(this.stageLayer),this.stage=null),this._handles=d(this._handles),this._set("owner",null);for(const e in this._whenGraphics3DGraphicRequests)this._whenGraphics3DGraphicRequests[e].reject(new s("graphic:layer-destroyed","Layer has been destroyed"));this._whenGraphics3DGraphicRequests=null,this._sharedSymbolResourcesOwnerHandle=p(this._sharedSymbolResourcesOwnerHandle),this._propertiesPool=d(this._propertiesPool),this._pendingUpdatesPool=null,this._symbolConversionCache.clear(),this._objectIdInvisibleSet.clear(),this._spatialIndex=d(this._spatialIndex)}clear(){this._objectStates?.allGraphicsDeleted(),null!=this._graphicStateTracking&&this._graphicStateTracking.allGraphicsDeleted(),this.graphics3DGraphics.forEach((e=>e.destroy())),this._spatialIndex?.clear(),this.graphics3DGraphics.clear(),this._numberOfGraphics=0,this._usedMemory=0,this._updateLayerVisibility(),this._symbols.forEach(d),this._symbols.clear(),this._graphicsBySymbol.clear(),this._graphicsWithoutSymbol.clear(),this._graphicsWaitingForSymbol.clear(),this._pendingUpdates.clear(),this._pendingUpdatesPool.clear(),this._pendingAdds=0,this._pendingRemoves=0,this._applyPendingRemovesFirst=!1,this.notifyChange("updating"),this.notifyChange("running"),this.notifyChange("updatingRemaining"),this._featureStore.events.emit("changed")}_initializeStage(e,i){this.stage=e._stage,this.stageLayer=new ve(this.stage,{pickable:!this.suspendedOrOutsideOfView,updatePolicy:this.effectiveUpdatePolicy},i);const t=this.stageLayer.events;t.on("objectTransformation",(e=>this.notifyGraphicGeometryChanged(e.graphicUid))),t.on("objectShaderTransformation",(e=>this.notifyGraphicGeometryChanged(e.graphicUid))),t.on("visibilityChanged",(e=>this.notifyGraphicVisibilityChanged(e.graphicUid))),t.on("objectGeometryAdded",(e=>this.notifyGraphicGeometryChanged(e.object.graphicUid))),t.on("objectGeometryRemoved",(e=>this.notifyGraphicGeometryChanged(e.object.graphicUid))),t.on("objectGeometryUpdated",(e=>this.notifyGraphicGeometryChanged(e.object.graphicUid)))}notifyGraphicGeometryChanged(e){if(null==this._graphicStateTracking||null==e)return;const i=this.graphics3DGraphics.get(e);i&&this._graphicStateTracking.updateGraphicGeometry(i)}notifyGraphicVisibilityChanged(e){if(null==this._graphicStateTracking||null==e)return;const i=this.graphics3DGraphics.get(e);i&&this._graphicStateTracking.updateGraphicVisibility(i)}_updateLayerVisibility(){const e=this.displayFeatureLimit.maximumNumberOfFeatures,i=this._numberOfGraphics>e*ke,t=!this.suspendedOrOutsideOfView&&!i;t!==this._visible&&(this._visible=t,t?(this.stageLayer.pickable=!0,this.updateAllGraphicsVisibility()):(this.stageLayer.pickable=!1,this._hideAllGraphics()),this._updateStageLayerVisibility())}_updateStageLayerVisibility(){this.stageLayer.visible=this._visible&&(null==this.layer.opacity||this.layer.opacity>0)}getGraphics3DGraphicById(e){return null!=e?this.graphics3DGraphics.get(e):void 0}getGraphics3DGraphicByObjectId(e){return this.owner.layer?.objectIdField?this._findGraphics3DGraphicByObjectId(e):null}_getGraphicObjectID(e,i=this.owner.layer&&this.owner.layer.objectIdField){return N(e,i)}get graphics3DGraphicsByObjectID(){const e=this.owner.layer&&this.owner.layer.objectIdField;if(!e)return;const i=new Map;return this.graphics3DGraphics.forEach((t=>{if(!t)return;const r=t.graphic,s=this._getGraphicObjectID(r,e);null!=s&&i.set(s,t)})),i}get labelsEnabled(){return!(!this._labeler||!this._labeler.layerLabelsEnabled())}async updateLabelingInfo(e){const i=this._deconflictor&&this._deconflictor.labelingInfoChange(e),t=this._labeler&&this._labeler.labelingInfoChange(e);await g([i,t])}updateVisibilityInfo(){this._deconflictor&&this._deconflictor.labelingInfoChange(),this._labeler&&this._labeler.visibilityInfoChange()}get symbolUpdateType(){if(this._pendingUpdates.size>0)return"unknown";let e=0,i=0;return l(this._symbols,((t,r)=>{if(null!=t){const s=t.getFastUpdateStatus();if(s.loading>0)return!0;this._graphicsBySymbol.has(r)&&(i+=s.fast,e+=s.slow)}return!1}))?"unknown":i>=0&&0===e?"fast":e>=0&&0===i?"slow":"mixed"}runTask(e){if(this._frameTask.processQueue(e),this._applyPendingUpdates(e),this.notifyChange("running"),this.running||this.notifyChange("updating"),this.notifyChange("updatingRemaining"),!e.hasProgressed)return xe.YIELD}setObjectIdVisibility(e,i){i?this._objectIdInvisibleSet.delete(e):this._objectIdInvisibleSet.add(e);const t=this._findGraphics3DGraphicByObjectId(e);null!=t&&this._updateUserVisibility(t)}_findGraphics3DGraphicByObjectId(e){return h(this.graphics3DGraphics,(i=>this._getGraphicObjectID(i.graphic)===e))}_updateUserVisibility(e){if(null==e)return!1;const i=e.graphic,t=this._getGraphicObjectID(i),r=i.visible&&!this.owner.suspended&&(null==t||!this._objectIdInvisibleSet.has(t));return e.setVisibilityFlag(X.GRAPHIC,ee.USER,r)}_whenGraphics3DGraphic(e){const i=this.graphics3DGraphics.get(e.uid);if(i)return Promise.resolve(i);const t=this._whenGraphics3DGraphicRequests[e.uid];if(t)return t.promise;const r=u();return this._whenGraphics3DGraphicRequests[e.uid]=r,r.promise}async _boundsForGraphics3DGraphic(e,i){const t=this._viewSpatialReference,r=this.owner.view.renderSpatialReference,s=this.owner.view.basemapTerrain.spatialReference,a=(e,i,s)=>L(e,r,i,e,t,i,s),n=(e,i,r)=>L(e,s,i,e,t,i,r),o=this._viewElevationProvider?{service:this._viewElevationProvider,useViewElevation:null!=i&&!!i.useViewElevation,minDemResolution:null!=i?i.minDemResolution:null,minDemResolutionForPoints:this.owner.view.resolution}:null,l=await e.getProjectedBoundingBox(a,n,o,i?.signal);if(!l)return null;const h=l.boundingBox;if(l.requiresDrapedElevation){const e=this.symbolCreationContext.elevationProvider;if(e){F(h,Ae);const i=e.getElevation(Ae[0],Ae[1],0,t,"ground")??0;h[2]=Math.min(h[2],i),h[5]=Math.max(h[5],i)}}return{boundingBox:h,screenSpaceObjects:l.screenSpaceObjects}}async whenGraphicBounds(e,i){await S((()=>this.owner?.loadedGraphics));const t=this.owner.layer&&this.owner.layer.objectIdField,r=this.owner.loadedGraphics.find((i=>i===e||null!=t&&null!=i.attributes&&e.attributes&&i.attributes[t]===e.attributes[t]));if(!r)throw new s("internal:graphic-not-part-of-view","Graphic is not part of this view");const a=await this._whenGraphics3DGraphic(r);return this._boundsForGraphics3DGraphic(a,i)}computeAttachmentOrigin(e,i){const t=this.graphics3DGraphics.get(e.uid);if(!t)return null;const r=t.computeAttachmentOrigin();if(0===r.render.num&&0===r.draped.num)return null;D(ze,0,0,0);let s=0;if(r.render.num>0){if(!A(r.render.origin,this.symbolCreationContext.renderCoordsHelper.spatialReference,We,i))return null;E(ze,ze,We),s++}if(r.draped.num>0){const[e,t]=r.draped.origin,a=this._viewElevationProvider.getElevation(e,t,"ground")??0;if(D(We,e,t,a),!A(We,this._viewElevationProvider.spatialReference,We,i))return null;E(ze,ze,We),s++}return s>1&&I(ze,ze,1/s),new Re({x:ze[0],y:ze[1],z:ze[2],spatialReference:i})}getSymbolLayerSize(e,i){const t=this._symbols.get(e.id);if(null==t)throw new s("internal:symbol-not-part-of-view","Symbol is not part of this view");const r=e.symbolLayers.indexOf(i);if(-1===r)throw new s("internal:missing-symbol-layer","Symbol layer is not in symbol");const a=t.getSymbolLayerSize(r);if(null==a)throw new s("internal:missing-size","Symbol layer has no valid size");return a}_graphicsCollectionChanged(e){this._startCreateGraphics&&(this.add(e.added),this.remove(e.removed))}graphicUpdateHandler(e){const i=e.graphic.uid,t=this.graphics3DGraphics.get(i);if(null!=t||null!=this._graphicsWithoutSymbol.get(i))switch(e.property){case"visible":this._graphicUpdateVisibleHandler(t);break;case"geometry":this._graphicUpdateGeometryHandler(t,e);break;case"symbol":this._graphicUpdateSymbolHandler(t,e);break;case"attributes":break;case"origin-transform":this._graphicUpdateTransformHandler(t,e)}}_graphicUpdateGeometryHandler(e,i){this._graphicUpdateGeometryOrTransformHandler(e,i,(()=>null!=i.newValue&&null!=e&&e.graphics3DSymbol.updateGeometry(e,i.newValue)));const t=i.graphic.geometry;null!=t&&this._expandComputedExtent(t)}_graphicUpdateTransformHandler(e,i){const t=i.graphic.geometry;this._graphicUpdateGeometryOrTransformHandler(e,i,(()=>null!=i.newValue&&null!=e&&null!=t&&e.graphics3DSymbol.updateTransform(e,t.spatialReference,i.newValue,i.action)))}_graphicUpdateGeometryOrTransformHandler(e,i,t){if(null!=i.graphic.geometry)if(null!=e)t()||this._recreateGraphic(e.graphic);else{const e=i.graphic.symbol&&i.graphic.symbol.id;if(e){const i=this._symbols.get(e);if(null!=i&&i.loadStatus===pe.LOADING)return}this._recreateGraphic(i.graphic)}else this._recreateGraphic(i.graphic)}_graphicUpdateSymbolHandler(e,i){const t=i.graphic,r=null!=e?e.graphics3DSymbol:null!=i.oldValue?this._symbols.get(i.oldValue.id):null;if(null==r||null==i.newValue)return void this._recreateGraphic(t);const s=r.symbol,a=this._getConvertedSymbol(i.newValue);if(null!=a&&(a.type!==s.type||"web-style"===a.type)||"web-style"===s.type)return void this._recreateGraphic(t);const n=this._graphicsBySymbol.get(s.id);if(n&&1!==n.size)return void this._recreateGraphic(t);const o=P(s,a);if(null==o)return void this._updateSymbolMapping(s.id,a);const l={diff:o,graphics3DGraphicPatches:[],symbolStatePatches:[]};if(r.prepareSymbolPatch(l),!R(l.diff))return void this._recreateGraphic(t);const h=this._getRenderingInfo(t);if(null==h)return void this._recreateGraphic(t);const d=r.extentPadding;for(const p of l.symbolStatePatches)p();if(d!==r.extentPadding&&this._recomputeExtentPadding(),null!=e)for(const p of l.graphics3DGraphicPatches)p(e,h);this._updateSymbolMapping(s.id,a)}_graphicUpdateVisibleHandler(e){this._updateUserVisibility(e)&&(this._labeler&&this.owner.view.labeler.setDirty(),this.owner.view.deconflictor.setDirty())}recreateGraphics(e){this._suspendSymbolCleanup=!0,this.remove(e),this.add(e),this._suspendSymbolCleanup=!1,this.effectiveUpdatePolicy===fe.SYNC&&this._cleanupSymbols()}_recreateGraphic(e){this.recreateGraphics([e])}_beginGraphicUpdate(e){const i=this._graphicsUpdateId;return this._graphicsUpdateId++,this._graphicsWaitingForSymbol.set(e.uid,i),1===this._graphicsWaitingForSymbol.size&&this.notifyChange("updating"),i}_endGraphicUpdate(e){e&&(this._graphicsWaitingForSymbol.delete(e.uid),0===this._graphicsWaitingForSymbol.size&&(this._cleanupSymbols(),this.notifyChange("updating")))}_recomputeExtentPadding(){let e=0;this._symbols.forEach((i=>{null!=i&&(e=Math.max(e,i.extentPadding))})),this._set("extentPadding",e)}_expandComputedExtent(e){const i=Oe,t=e.spatialReference;B(e,i);const r=this._viewSpatialReference,s=Ue.tmpVec;if(W(t,r)||O(i[0],i[1],0,t,s,r)&&(i[0]=s[0],i[1]=s[1],O(i[3],i[4],0,t,s,r),i[3]=s[0],i[4]=s[1]),!(isFinite(i[0])&&isFinite(i[3])&&isFinite(i[1])&&isFinite(i[4])))return;const a=this.computedExtent;let n=null;const o=isFinite(i[2])&&isFinite(i[5]),l=o&&(!a||null==a.zmin||i[2]<a.zmin),h=o&&(!a||null==a.zmax||i[5]>a.zmax);if(a){(i[0]<a.xmin||i[1]<a.ymin||i[3]>a.xmax||i[4]>a.ymax||l||h)&&(n=this._propertiesPool.get("computedExtent"),n.xmin=Math.min(i[0],a.xmin),n.ymin=Math.min(i[1],a.ymin),n.xmax=Math.max(i[3],a.xmax),n.ymax=Math.max(i[4],a.ymax),n.spatialReference=r)}else n=this._propertiesPool.get("computedExtent"),n.xmin=i[0],n.ymin=i[1],n.xmax=i[3],n.ymax=i[4],n.spatialReference=r;n&&(l&&(n.zmin=i[2]),h&&(n.zmax=i[5]),this._set("computedExtent",n))}_abortElevationInfoChange(){this._elevationInfoChangeAbortController&&(this._elevationInfoChangeAbortController.abort(),this._elevationInfoChangeAbortController=null)}async elevationInfoChange(){this._abortElevationInfoChange();const e=new AbortController;this._elevationInfoChangeAbortController=e;const i=ie(this.layer.elevationInfo,this.elevationFeatureExpressionEnabled);this.symbolCreationContext.featureExpressionInfoContext=await te(i,this._viewSpatialReference,e.signal,Le),m(e.signal),this._elevationInfoChangeAbortController=null,this._labeler?.elevationInfoChange(),this.forEachGraphics3DSymbol(((e,i,t)=>{e.globalPropertyChanged("elevationInfo",i)?i.forEach((e=>{const i=e.graphic,t=e.labelLayers;for(const r of t){r.graphics3DSymbolLayer.updateGraphicElevationContext(i,r)}})):this._recreateSymbol(t)})),this.updateStageLayerElevationProvider(),this._elevationAlignment?.elevationInfoChange()}updateStageLayerElevationProvider(){this._stageLayerElevationProvider?(this.layer.elevationInfo&&"relative-to-scene"===this.layer.elevationInfo.mode||0===this._numberOfGraphicsProvidingElevation)&&(this.owner.view.elevationProvider.unregister(this._stageLayerElevationProvider),this._stageLayerElevationProvider=c(this._stageLayerElevationProvider)):(!this.layer.elevationInfo||this.layer.elevationInfo&&"relative-to-scene"!==this.layer.elevationInfo.mode)&&this._numberOfGraphicsProvidingElevation>0&&(this._stageLayerElevationProvider=new ge({layer:this.layer,stageLayer:this.stageLayer,view:this.owner.view}),this.owner.view.elevationProvider.register("scene",this._stageLayerElevationProvider))}_clearSymbolsAndGraphics(){this.clear(),null!=this._filterVisibility&&this._filterVisibility.clear(),this._labeler?.reset(),this._deconflictor?.clear(),this._elevationAlignment?.clear(),this.stageLayer?.invalidateSpatialQueryAccelerator(),this._stageLayerElevationProvider&&(this.owner.view.elevationProvider.unregister(this._stageLayerElevationProvider),this._stageLayerElevationProvider=c(this._stageLayerElevationProvider))}startCreateGraphics(){this._startCreateGraphics=!0,this.recreateAllGraphics()}recreateAllGraphics(){this._recreateAllGraphics(!1)}recreateAllGraphicsAndSymbols(){this._recreateAllGraphics(!0)}_recreateAllGraphics(e=!1){if(!this._startCreateGraphics)return;const{loadedGraphics:i,view:t}=this.owner,r=t.basemapTerrain.tilingScheme&&i&&i.length?i.toArray():null;!e&&r||this._clearSymbolsAndGraphics(),this.symbolCreationContext.screenSizePerspectiveEnabled=this.owner.view.screenSizePerspectiveEnabled&&!!this.layer.screenSizePerspectiveEnabled,this.symbolCreationContext.slicePlaneEnabled=!!this.owner.slicePlaneEnabled,this._set("computedExtent",null),r&&(e?this.add(r):this.recreateGraphics(r))}_recreateSymbol(e){const i=this._graphicsBySymbol.get(e),t=[];i&&(i.forEach(((e,i)=>{const r=e.usedMemory;this._conditionalRemove(e,i),this._spatialIndex?.remove(e),t.push(e.graphic),e.destroy(),this._removeGraphics3DGraphic(i,r),this._updateLayerVisibility(),this._featureStore.events.emit("changed")})),this._graphicsBySymbol.set(e,new Map));const r=this._symbols.get(e);d(r),this._symbols.delete(e),this.add(t)}_recreateGraphicsForSymbol(e){const i=this._graphicsBySymbol.get(e);if(i){const e=[];i.forEach((i=>e.push(i.graphic))),this.recreateGraphics(e)}}_conditionalRemove(e,i){this._graphicsDrapedUids.delete(i),this._objectStates?.removeGraphic(e),this._labeler?.removeGraphic(e),this._deconflictor?.removeGraphic(e),null!=this._graphicStateTracking&&this._graphicStateTracking.removeGraphic(e)}add(e){e&&0!==e.length&&(this.owner.view.basemapTerrain&&this.owner.view.basemapTerrain.tilingScheme?(this._updatePolicyForGraphics(e)===fe.ASYNC?this._addDelayed(e):this._addImmediate(e),this.notifyChange("updating")):Le.error("#add()","Cannot add graphics before terrain surface has been initialized"))}_updatePolicyForGraphics(e){if(this.effectiveUpdatePolicy===fe.SYNC&&("mesh"===this.layer.geometryType||null==this.layer.geometryType))for(const i of e)if(null!=i.geometry&&"mesh"===i.geometry.type&&!i.geometry.loaded)return fe.ASYNC;return this.effectiveUpdatePolicy}_addImmediate(e){this._geometryWarningLogged=!1,this._symbolWarningLogged=!1;for(const i of e)this._addGraphic(i,this._getRenderingInfo(i,Le),fe.SYNC);this._cleanupSymbols(),this._labeler&&(this.owner.view.labeler.setDirty(),this._cleanupSymbols()),this.owner.view.deconflictor.setDirty()}_addDelayed(e){for(const i of e){const e=i.uid;let t=this._pendingUpdates.get(e);t?t.add?t.state!==Fe.NEW&&t.abortController?.abort():this._pendingAdds++:(t=this._pendingUpdatesPool.pushNew(),this._pendingAdds++,this._pendingUpdates.set(e,t)),t.add=i}this.notifyChange("running"),this.notifyChange("updatingRemaining")}remove(e){this.effectiveUpdatePolicy===fe.ASYNC?this._removeDelayed(e):this._removeImmediate(e),this.notifyChange("updating")}_removeImmediate(e){for(const i of e)this._removeGraphic(i);this._cleanupSymbols(),this._labeler&&this.owner.view.labeler.setDirty(),this.owner.view.deconflictor.setDirty()}_removeDelayed(e){for(const i of e){const e=i.uid,t=this._pendingUpdates.get(e);if(t)t.add&&(t.remove?t.add=null:this._pendingUpdates.delete(e),t.state===Fe.LOADING&&t.abortController?.abort(),this._pendingAdds--);else{const t=this._pendingUpdatesPool.pushNew();t.remove=i,this._pendingUpdates.set(e,t),this._pendingRemoves++,this._applyPendingRemovesFirst=!0}}0===this._pendingUpdates.size&&this._finishPendingUpdates(),this.notifyChange("running"),this.notifyChange("updatingRemaining")}_finishPendingUpdates(){this._pendingUpdatesPool.clear(),this._cleanupSymbols(),(this._pendingAdds||this._pendingRemoves)&&Le.warn("pendingAdds/Removes in inconsistent state!"),this._pendingAdds=0,this._pendingRemoves=0,this._applyPendingRemovesFirst=!1}_applyPendingUpdates(e){if(this._geometryWarningLogged=!1,this._symbolWarningLogged=!1,0===this._pendingUpdates.size&&this._spatialIndex?.updating)return this._spatialIndex.update(),void e.madeProgress();if(this._applyPendingRemovesFirst){this._applyPendingRemovesFirst=!1;for(const[i,t]of this._pendingUpdates){if(e.done){this._applyPendingRemovesFirst=!0;break}if(t.remove&&!t.add&&(this._pendingRemoves--,e.madeProgress(),this._removeGraphic(t.remove),t.remove=null,this._pendingUpdates.delete(i),0===this._pendingRemoves))break}}for(const[i,t]of this._pendingUpdates){if(e.done)break;t.add&&t.state===Fe.NEW&&this._processPendingUpdateNew(t);let r=this.effectiveUpdatePolicy;if(!t.remove||t.add&&t.state!==Fe.READY||(this._pendingRemoves--,e.madeProgress(),this._removeGraphic(t.remove),t.remove=null,r=fe.SYNC),t.add)switch(t.state){case Fe.READY:this._addGraphic(t.add,t.renderingInfo,r),t.add=null,this._pendingAdds--,e.madeProgress();break;case Fe.REJECTED:t.add=null,this._pendingAdds--;case Fe.LOADING:}null==t.remove&&null==t.add&&this._pendingUpdates.delete(i)}0===this._pendingUpdates.size&&(this._finishPendingUpdates(),this.notifyChange("running"))}_processPendingUpdateNew(e){if(!e.add)return void(e.state=Fe.READY);const i=e.add.geometry;null==i||"mesh"!==i.type||i.loaded?this._processPendingUpdateNewRenderingInfo(e):this._processPendingUpdateNewMesh(e,i)}async _processPendingUpdateNewMesh(e,i){e.state=Fe.LOADING,e.abortController=new AbortController;const t=e.abortController.signal;try{await i.load({signal:t})}catch(r){return this._processPendingUpdateNewError(e,r)}e.abortController=null,this._processPendingUpdateNewRenderingInfo(e)}_processPendingUpdateNewError(e,i){e.abortController=null,b(i)?e.state=Fe.NEW:e.state=Fe.REJECTED}async _processPendingUpdateNewRenderingInfo(e){if(null==this.layer.renderer||"dictionary"!==this.layer.renderer.type)return e.renderingInfo=this._getRenderingInfo(e.add,Le),void(e.state=Fe.READY);e.state=Fe.LOADING,e.abortController=new AbortController;let i=null;try{i=await this._getRenderingInfoAsync(e.add,{signal:e.abortController.signal})}catch(t){return e.abortController=null,void(b(t)?e.state=Fe.NEW:e.state=Fe.REJECTED)}null==i||null==i.symbol?(Le&&!this._symbolWarningLogged&&(this._symbolWarningLogged=!0,Le.warn(`Graphic in layer ${this.layer.id} has no symbol and will not render`)),e.renderingInfo=null):e.renderingInfo=i,e.state=Fe.READY}_addGraphic(e,i,t){if(this._graphicsWithoutSymbol.set(e.uid,e),null==i||null==i.symbol||!H(e))return;null!=this.stage.renderView.objectAndLayerIdRenderHelper&&this.setUidToIdOnAdd&&this.stage.renderView.objectAndLayerIdRenderHelper.setUidToObjectAndLayerId(e.objectId,e.uid,this.layer.id,this.layer.uid,!!this.layer.popupEnabled&&Ce(this.layer,this.owner.view.popup?.defaultPopupTemplateEnabled));const r=i.symbol,s=this.getOrCreateGraphics3DSymbol(r,i.renderer);if(null==s)return;this._expandComputedExtent(e.geometry);const a=this._beginGraphicUpdate(e),n=new se(e,i,this.layer);let o=!1;const l=e=>{e===s.symbol.id&&(o=!0)};this._whenSymbolRemoved.push(l);const h=()=>{if(--this._loadingSymbols,this.destroyed)return;this._whenSymbolRemoved.removeUnordered(l);if(this._graphicsWaitingForSymbol.get(e.uid)!==a||o||s.destroyed||this.graphicSymbolSupported&&e.symbol&&e.symbol.id!==s.symbol.id)--s.referenced,this._cleanupSymbols();else{const i=this._createGraphics3DGraphic(s,n);this._spatialIndex&&null!=i&&this._spatialIndex.add(i),--s.referenced,this._endGraphicUpdate(e)}this._featureStore.events.emit("changed"),this._labeler&&this.owner.view.labeler.setDirty()},d=i=>{--this._loadingSymbols,this.destroyed||(this._whenSymbolRemoved.removeUnordered(l),o||(b(i)?this.add([e]):s.destroyed||this._endGraphicUpdate(e)))};++this._loadingSymbols,t===fe.ASYNC?s.load((()=>this._frameTask.schedule(h)),(e=>this._frameTask.schedule((()=>d(e))))):s.load(h,d)}_removeGraphic(e){const i=e.uid,t=this.graphics3DGraphics.get(i);if(t){t.graphics3DSymbol.onRemoveGraphic(t);const e=t.usedMemory,r=t.isElevationSource;this._conditionalRemove(t,i),this._spatialIndex?.remove(t);const s=t.graphics3DSymbol.symbol.id;this._graphicsBySymbol.get(s)?.delete(i),this._graphicsWithoutSymbol.delete(i),this._removeGraphics3DGraphic(i,e,r),t.destroy(),this._featureStore.events.emit("changed")}else this._graphicsWithoutSymbol.delete(i),this._graphicsWaitingForSymbol.delete(i),0===this._graphicsWaitingForSymbol.size&&(this._cleanupSymbols(),this.notifyChange("updating"))}_hasLabelingContext(e){if(e instanceof De||e instanceof Ee){const i=this.symbolCreationContext.layer;return!!i.labelingInfo&&i.labelingInfo.some((i=>i.symbol===e))}return!1}_hasValidSymbolCreationContext(e){return!(e instanceof De&&!this._hasLabelingContext(e))||(Le.error("LabelSymbol3D is only valid as part of a LabelClass. Using LabelSymbol3D as a renderer symbol is not supported."),!1)}_getRenderingInfo(e,i){const t=e.geometry;if(null==t)return i&&!this._geometryWarningLogged&&(this._geometryWarningLogged=!0,i.warn(`Graphic in layer ${this.layer.id} has no geometry and will not render`)),null;if(!j(t.spatialReference,this._viewSpatialReference))return i&&!this._geometryWarningLogged&&(this._geometryWarningLogged=!0,i.warn(`Graphic in layer ${this.layer.id} has incompatible spatial reference and will not render`)),null;if(!this.graphicSymbolSupported&&null!=e.symbol)return i&&!this._symbolWarningLogged&&(this._symbolWarningLogged=!0,i.warn(`Graphic in layer ${this.layer.id} is not allowed to have a symbol, use a renderer instead`)),null;const r=this.rendererHasGeometryOperations?q(e,this.layer):e;let s;if(this.owner.getRenderingInfo&&(this.getRenderingInfoWithoutRenderer||null!=this.currentRenderer))s=this.owner.getRenderingInfo(r,this.currentRenderer,this._arcadeOnDemand);else{s={symbol:r.symbol||J(r.geometry)}}return null==s||null==s.symbol?(i&&!this._symbolWarningLogged&&(this._symbolWarningLogged=!0,i.warn(`Graphic in layer ${this.layer.id} has no symbol and will not render`)),null):s}_getRenderingInfoAsync(e,i){if(null==e.geometry)return Le&&!this._geometryWarningLogged&&(this._geometryWarningLogged=!0,Le.warn(`Graphic in layer ${this.layer.id} has no geometry and will not render`)),null;if(!this.graphicSymbolSupported&&null!=e.symbol)return Le&&!this._symbolWarningLogged&&(this._symbolWarningLogged=!0,Le.warn(`Graphic in layer ${this.layer.id} is not allowed to have a symbol, use a renderer instead`)),null;const t=this.rendererHasGeometryOperations?q(e,this.layer):e;return this.owner.getRenderingInfoAsync(t,this.currentRenderer,this._arcadeOnDemand,i)}_createGraphics3DSymbol(e,i){if(!this._hasValidSymbolCreationContext(e))return null;const t=this._getConvertedSymbol(e);if(!t)return null;let r;if(null!=i&&"backgroundFillSymbol"in i&&i.backgroundFillSymbol){const e=Q(i.backgroundFillSymbol,{ignoreDrivers:!0});null!=e.symbol&&"web-style"!==e.symbol.type&&"cim"!==e.symbol.type&&(r=e.symbol.symbolLayers)}const s=ne(t,this.symbolCreationContext,r);return s.load((()=>{const e=s.extentPadding;e>this.extentPadding&&this._set("extentPadding",e),this.notifyChange("averageSymbolComplexity")}),(()=>{})),s}getOrCreateGraphics3DSymbol(e,i){let t=this._symbols.get(e.id);return void 0===t&&(t=e instanceof Ie?new oe(e,(e=>this._frameTask.schedule(e)),(e=>this._createGraphics3DSymbol(e,i))):this._createGraphics3DSymbol(e,i),this._symbols.set(e.id,t)),null!=t&&++t.referenced,t}trackGraphicState(e){return null==this._graphicStateTracking&&(this._graphicStateTracking=new le(this)),this._graphicStateTracking.add(e)}_addGraphics3DGraphic(e){this._usedMemory+=e.usedMemory,this.graphics3DGraphics.set(e.graphic.uid,e),this._numberOfGraphics++,e.isElevationSource&&(this._numberOfGraphicsProvidingElevation++,this.updateStageLayerElevationProvider()),this._updateLayerVisibility()}_removeGraphics3DGraphic(e,i,t=!1){this._usedMemory-=i,this.graphics3DGraphics.delete(e),this._numberOfGraphics--,t&&(this._numberOfGraphicsProvidingElevation--,this.updateStageLayerElevationProvider()),this._updateLayerVisibility()}_createGraphics3DGraphic(e,i){const t=i.graphic;if(this._graphicsWithoutSymbol.delete(t.uid),!this._symbols.has(e.symbol.id))return this.add([t]),null;if(this.graphics3DGraphics.has(t.uid))return null;const r=e.createGraphics3DGraphic(i);if(null==r)return null;this._addGraphics3DGraphic(r);const s=e.symbol.id;this._graphicsBySymbol.has(s)||this._graphicsBySymbol.set(s,new Map),this._graphicsBySymbol.get(s).set(t.uid,r);if(r.isDraped&&this._graphicsDrapedUids.add(t.uid),r.centroid=null,null!=t.geometry&&"point"!==t.geometry.type&&(r.centroid=he(t.geometry,this._viewSpatialReference)),this._updateUserVisibility(r),null!=this._scaleVisibility&&this._scaleVisibility.updateVisibility(r),null!=this._filterVisibility){const{defaultVisibility:e}=this._filterVisibility;r.setVisibilityFlag(X.GRAPHIC,ee.FILTER,e),e||this._filterVisibility.reapply()}this._deconflictor?.addGraphic(r),this._labeler?.addGraphic(r),this._objectStates?.addGraphic(r),this._deconflictor&&this.owner.view.deconflictor.setInitialIconVisibilityFlag(this,r),r.initialize(this.stageLayer,this.owner),null!=this._graphicStateTracking&&this._graphicStateTracking.addGraphic(r);const a=this._whenGraphics3DGraphicRequests[t.uid];return a&&(delete this._whenGraphics3DGraphicRequests[t.uid],a.resolve(r)),r}_abortRendererChange(){this._rendererChangeAbortController&&(this._rendererChangeAbortController.abort(),this._rendererChangeAbortController=null)}async rendererChange(e){if(this._abortRendererChange(),e!==this.currentRenderer)if(this._validateRenderer(e),null==e&&this._currentRendererChange(null,!1),Y(e))if(null!=e&&e.arcadeRequired){const i=new AbortController;this._rendererChangeAbortController=i;const{arcadeUtils:t}=await this._ensureArcade();m(i);const r=t.hasGeometryOperations(e);r&&(await t.enableGeometryOperations(),m(i)),this.effectiveUpdatePolicy===fe.ASYNC?await this._frameTask.schedule((()=>this._currentRendererChange(e,r)),i.signal):this._currentRendererChange(e,r),this._rendererChangeAbortController=null}else if(this.effectiveUpdatePolicy===fe.ASYNC){const i=new AbortController;this._rendererChangeAbortController=i,await this._frameTask.schedule((()=>this._currentRendererChange(e,!1)),i.signal),this._rendererChangeAbortController=null}else this._currentRendererChange(e,!1);else this._currentRendererChange(e,!1)}async _ensureArcade(){return null==this._arcadeOnDemand?(this._arcadeOnDemand=await Z(),this._arcadeOnDemand):this._arcadeOnDemand}_currentRendererChange(e,i){this.currentRenderer=e,this.rendererHasGeometryOperations=i,this.symbolCreationContext.arcade=this._arcadeOnDemand;const t=this.symbolCreationContext.renderer;if(e===t)return;if(this._symbolConversionCache.clear(),null==e)return this.symbolCreationContext.renderer=null,void this.recreateAllGraphicsAndSymbols();const r=P(t,e);this._updateUnchangedSymbolMappings(r,e,t),this.symbolCreationContext.renderer=e,null!=r&&("complete"===r.type?this.recreateAllGraphicsAndSymbols():"partial"===r.type&&(this._applyRendererDiff(r,e,t)?this._volatileGraphicsUpdated():this.recreateAllGraphicsAndSymbols()),this.notifyChange("averageSymbolComplexity"))}_diffHasSymbolChange(e){for(const i in e.diff)switch(i){case"visualVariables":case"defaultSymbol":case"uniqueValueInfos":break;case"uniqueValueGroups":case"authoringInfo":case"fieldDelimiter":delete e.diff[i];break;default:return!0}return!1}_applySymbolSetDiff(e,i,t){e=e||[],i=i||[];const r=[];for(const s of i){const i=this._graphicsBySymbol.get(s.id);i&&i.forEach(((a,n)=>{const o=a.graphic,l=this.layer instanceof M?this.layer:null,h=this._arcadeOnDemand;if(s===t.defaultSymbol&&t.getSymbol(q(o,l),{arcade:h})===t.defaultSymbol)return;const d=a.usedMemory;e.length||t.defaultSymbol?r.push(o):this._graphicsWithoutSymbol.set(n,o);const p=this.graphics3DGraphics.get(n);this._conditionalRemove(p,n),a.destroy(),i.delete(n),this._removeGraphics3DGraphic(n,d),this._updateLayerVisibility()})),this._whenSymbolRemoved.forAll((e=>e(s.id)))}(e.length||r.length)&&(this._graphicsWithoutSymbol.forEach((e=>r.push(e))),this._graphicsWithoutSymbol.clear(),this.add(r)),this._cleanupSymbols(),this._labeler&&this.owner.view.labeler.setDirty(),this.owner.view.deconflictor.setDirty()}_applyUniqueValueRendererDiff(e,i,t){const s=e.diff.defaultSymbol,a=e.diff.uniqueValueInfos;if(s||a){const n=a?a.added.map((e=>e.symbol)).filter(r):[],o=a?a.removed.map((e=>e.symbol)).filter(r):[];if(a)for(let e=0;e<a.changed.length;e++)n.push(a.changed[e].newValue.symbol),o.push(a.changed[e].oldValue.symbol);return s?(t.defaultSymbol&&o.push(t.defaultSymbol),i.defaultSymbol&&n.push(i.defaultSymbol)):t.defaultSymbol&&n.length&&o.push(i.defaultSymbol),this._applySymbolSetDiff(n,o,i),delete e.diff.defaultSymbol,delete e.diff.uniqueValueInfos,!0}return!1}_calculateUnchangedSymbolMapping(e,i,t){if("unique-value"!==i?.type||"unique-value"!==t?.type||null!=e&&"partial"!==e.type)return[];const r=e=>null!=e?e.id:null,s=e&&e.diff,a=s&&s.defaultSymbol,n=s&&s.uniqueValueInfos;let o;if(n)o=n.unchanged.map((e=>({oldId:r(e.oldValue.symbol),newId:r(e.newValue.symbol)})));else{o=[];for(const e of t.uniqueValueInfos??[]){const t=r(e.symbol),s=i.uniqueValueInfos?.find((i=>i.value===e.value));s&&t!==r(s.symbol)&&o.push({oldId:t,newId:r(s.symbol)})}}return!a&&t.defaultSymbol&&o.push({oldId:r(t.defaultSymbol),newId:r(i.defaultSymbol)}),o}_updateSymbolMapping(e,i){const t=null!=i&&i?"string"==typeof i?i:i.id:null;if(null==e||e===t)return;const r=this._graphicsBySymbol.get(e);this._graphicsBySymbol.delete(e),void 0!==r&&this._graphicsBySymbol.set(t,r);const s=this._symbols.get(e);if(void 0!==s&&(this._symbols.delete(e),this._symbols.set(t,s),null!=s)){const e="string"==typeof i?null:i;null!=e?s.symbol=e:s.symbol.id=t}}_updateUnchangedSymbolMappings(e,i,t){const r=this._calculateUnchangedSymbolMapping(e,i,t);for(const{oldId:s,newId:a}of r)this._updateSymbolMapping(s,a)}_applyRendererDiff(e,t,r){if(this._diffHasSymbolChange(e))return!1;if(t instanceof i&&r instanceof i&&this._applyUniqueValueRendererDiff(e,t,r)&&0===Object.keys(e.diff).length)return!0;for(const[i]of this._graphicsBySymbol){const r=this._symbols.get(i);if(null!=r)switch(r.applyRendererDiff(e,t)){case de.RecreateSymbol:this._recreateSymbol(i);break;case de.RecreateGraphics:this._recreateGraphicsForSymbol(i);case de.FastUpdate:}}return!0}opacityChange(){this.forEachGraphics3DSymbol(((e,i)=>e.globalPropertyChanged("opacity",i))),this._updateStageLayerVisibility()}_slicePlaneEnabledChange(e){e!==this.symbolCreationContext.slicePlaneEnabled&&(this.symbolCreationContext.slicePlaneEnabled=e,this.stageLayer.sliceable=e,this.forEachGraphics3DSymbol(((e,i)=>e.globalPropertyChanged("slicePlaneEnabled",i))),this._deconflictor&&this._deconflictor.slicePlaneEnabledChange(),this._labeler&&this._labeler.slicePlaneEnabledChange())}_physicalBasedRenderingChange(e){this.symbolCreationContext.physicalBasedRenderingEnabled=e,this.forEachGraphics3DSymbol(((e,i,t)=>{e.globalPropertyChanged("physicalBasedRenderingEnabled",i)||this._recreateSymbol(t)}))}_skipHighSymbolLoDsChange(e){this.symbolCreationContext.skipHighSymbolLods=e,this.forEachGraphics3DSymbol(((e,i,t)=>{e.globalPropertyChanged("skipHighSymbolLods",i)||this._recreateSymbol(t)}))}_pixelRatioChange(){this.forEachGraphics3DSymbol(((e,i,t)=>{e.globalPropertyChanged("pixelRatio",i)||this._recreateSymbol(t)}))}_signalUpdatingDuringAsyncLoadedGraphicsChange(){this._updatingPendingLoadedGraphicsChange&&this._updatingPendingLoadedGraphicsChange.remove(),this._updatingPendingLoadedGraphicsChange=w((()=>{this._updatingPendingLoadedGraphicsChange=null}))}setClippingExtent(e,i){const t=this.symbolCreationContext.clippingExtent,r=z();return ue(e,r,i)?this.symbolCreationContext.clippingExtent=T(V(),r):this.symbolCreationContext.clippingExtent=null,!k(this.symbolCreationContext.clippingExtent,t)}modifyGraphics3DGraphicVisibilities(e){if(this.destroyed)return;let i=!1;this.graphics3DGraphics.forEach((t=>{e(t)&&(i=!0)})),i&&(this.owner.view.labeler?.setDirty(),this.owner.view.deconflictor?.setDirty())}forEachGraphics3DSymbol(e){for(const[i,t]of this._symbols){if(null==t)return;e(t,this._graphicsBySymbol.get(i)||Me,i)}}updateAllGraphicsVisibility(){null!=this._filterVisibility&&this._filterVisibility.reapply(),this.modifyGraphics3DGraphicVisibilities((e=>{const i=this._updateUserVisibility(e),t=null!=this._scaleVisibility&&this._scaleVisibility.updateVisibility(e);return i||t}))}_hideAllGraphics(){this.modifyGraphics3DGraphicVisibilities((e=>e.setVisibilityFlag(X.GRAPHIC,ee.USER,!1)))}_validateRenderer(e){const i=$(e,{geometryType:this.layer?.geometryType});if(i){const e=`Renderer for layer '${this.layer.title?`${this.layer.title}, `:""}, id:${this.layer.id}' is not supported in a SceneView`;Le.warn(e,i.message)}}_volatileGraphicsUpdated(){this._labeler?.reset(),this.stageLayer.shaderTransformationChanged(),this.notifyChange("updating")}_cleanupSymbols(){if(this._graphicsWaitingForSymbol.size>0||this._suspendSymbolCleanup)return;let e=!1;this._symbols.forEach(((i,t)=>{if(null==i||i.referenced>0)return;const r=this._graphicsBySymbol.get(t);r&&0!==r.size||(this._graphicsBySymbol.delete(t),this._symbols.delete(t),d(i),e=!0)})),e&&(this._recomputeExtentPadding(),this.notifyChange("averageSymbolComplexity"))}get test(){return{snapshotInternals:()=>({graphics:[...this.graphics3DGraphics.keys()].sort(),symbols:[...this._symbols.keys()].sort(),graphicsBySymbol:[...this._graphicsBySymbol.keys()].sort().map((e=>({symbolId:e,graphics:[...this._graphicsBySymbol.get(e).keys()].sort()}))),graphicsWithoutSymbol:[...this._graphicsWithoutSymbol.keys()].sort(),graphicsDrapedUids:[...this._graphicsDrapedUids].sort(),pendingUpdates:this._pendingUpdates}),symbols:this._symbols,filterVisibility:this._filterVisibility,numPending:this._pendingUpdates.size,forceUpdatePolicy:e=>{this._forcedUpdatePolicy=e}}}get performanceInfo(){return{visible:this.graphics3DGraphics.size,missing:this._graphicsWithoutSymbol.size,pending:this._pendingUpdates.size}}};var Fe;Ve.tmpVec=U(),e([G({readOnly:!0})],Ve.prototype,"computedExtent",void 0),e([G()],Ve.prototype,"currentRenderer",void 0),e([G()],Ve.prototype,"rendererHasGeometryOperations",void 0),e([G()],Ve.prototype,"_frameTask",void 0),e([G({readOnly:!0})],Ve.prototype,"_viewSpatialReference",null),e([G()],Ve.prototype,"_rendererChangeAbortController",void 0),e([G()],Ve.prototype,"_elevationInfoChangeAbortController",void 0),e([G()],Ve.prototype,"_initializeAbortController",void 0),e([G()],Ve.prototype,"_elevationAlignment",void 0),e([G()],Ve.prototype,"_scaleVisibility",void 0),e([G()],Ve.prototype,"_filterVisibility",void 0),e([G()],Ve.prototype,"_initializePromise",void 0),e([G()],Ve.prototype,"_spatialIndex",void 0),e([G({readOnly:!0})],Ve.prototype,"extentPadding",void 0),e([G()],Ve.prototype,"_updatingPendingLoadedGraphicsChange",void 0),e([G()],Ve.prototype,"_featureStore",void 0),e([G()],Ve.prototype,"_deconflictor",void 0),e([G()],Ve.prototype,"_labeler",void 0),e([G()],Ve.prototype,"_objectStates",void 0),e([G()],Ve.prototype,"_loadingSymbols",void 0),e([G()],Ve.prototype,"preferredUpdatePolicy",void 0),e([G()],Ve.prototype,"_forcedUpdatePolicy",void 0),e([G({readOnly:!0})],Ve.prototype,"effectiveUpdatePolicy",null),e([G({constructOnly:!0})],Ve.prototype,"elevationFeatureExpressionEnabled",void 0),e([G({constructOnly:!0})],Ve.prototype,"owner",void 0),e([G({constructOnly:!0})],Ve.prototype,"layer",void 0),e([G({constructOnly:!0})],Ve.prototype,"graphicSymbolSupported",void 0),e([G({constructOnly:!0})],Ve.prototype,"getRenderingInfoWithoutRenderer",void 0),e([G({constructOnly:!0})],Ve.prototype,"componentFactories",void 0),e([G({constructOnly:!0})],Ve.prototype,"setUidToIdOnAdd",void 0),e([G()],Ve.prototype,"featureStore",null),e([G()],Ve.prototype,"initializePromise",null),e([G()],Ve.prototype,"scaleVisibility",null),e([G()],Ve.prototype,"elevationAlignment",null),e([G()],Ve.prototype,"objectStates",null),e([G()],Ve.prototype,"filterVisibility",null),e([G({readOnly:!0})],Ve.prototype,"updating",null),e([G({readOnly:!0})],Ve.prototype,"running",null),e([G({readOnly:!0})],Ve.prototype,"suspendedOrOutsideOfView",null),e([G({readOnly:!0,dependsOn:[]})],Ve.prototype,"updatingRemaining",null),e([G({readOnly:!0,dependsOn:["owner.view.qualitySettings.graphics3D.maxTotalNumberOfPrimitives","owner.view.qualitySettings.graphics3D.maxTotalNumberOfFeatures","averageSymbolComplexity"]})],Ve.prototype,"displayFeatureLimit",null),e([G({readOnly:!0,dependsOn:[]})],Ve.prototype,"averageSymbolComplexity",null),e([G({constructOnly:!0})],Ve.prototype,"hasZ",void 0),e([G({constructOnly:!0})],Ve.prototype,"hasM",void 0),e([G()],Ve.prototype,"_objectIdField",null),Ve=Ue=e([x(je)],Ve),function(e){e[e.NEW=0]="NEW",e[e.LOADING=1]="LOADING",e[e.READY=2]="READY",e[e.REJECTED=3]="REJECTED"}(Fe||(Fe={}));class Te{constructor(){this.add=null,this.renderingInfo=null,this.state=Fe.NEW,this.abortController=null,this.remove=null}clear(){this.add=null,this.renderingInfo=null,this.state=Fe.NEW,this.abortController=null,this.remove=null}}const ke=10,ze=U(),We=U(),Me=new Map;export{Ve as Graphics3DCore};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import"../../../../geometry.js";import"../../../../renderers/ClassBreaksRenderer.js";import"../../../../renderers/DictionaryRenderer.js";import"../../../../renderers/DotDensityRenderer.js";import"../../../../renderers/HeatmapRenderer.js";import"../../../../renderers/PieChartRenderer.js";import"../../../../renderers/Renderer.js";import"../../../../renderers/SimpleRenderer.js";import i from"../../../../renderers/UniqueValueRenderer.js";import"../../../../renderers/support/jsonUtils.js";import t from"../../../../core/Logger.js";import"../../../../symbols.js";import r from"../../../../core/Accessor.js";import{isSome as s}from"../../../../core/arrayUtils.js";import"../../../../core/has.js";import a from"../../../../core/Error.js";import{makeHandle as n}from"../../../../core/handleUtils.js";import{someMap as o,findInMap as l}from"../../../../core/MapUtils.js";import{destroyMaybe as h,removeMaybe as d,disposeMaybe as p}from"../../../../core/maybe.js";import c from"../../../../core/PooledArray.js";import{throwIfAborted as y,eachAlways as m,createResolver as g,isAbortError as u}from"../../../../core/promiseUtils.js";import{watch as b,when as _,on as f,syncAndInitial as v,whenOnce as C}from"../../../../core/reactiveUtils.js";import{schedule as S}from"../../../../core/scheduling.js";import{property as w}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as G}from"../../../../core/accessorSupport/decorators/subclass.js";import{diff as x,isEmpty as P}from"../../../../core/accessorSupport/diffUtils.js";import{s as R,a as D,g as E}from"../../../../chunks/vec3.js";import{c as I}from"../../../../chunks/vec3f64.js";import{projectVectorToVector as U,projectXYZToVector as A,canProjectWithoutEngine as O,projectBuffer as j}from"../../../../geometry/projection.js";import{create as L,center as V,fromRect as F,equals as T}from"../../../../geometry/support/aaBoundingBox.js";import{create as k}from"../../../../geometry/support/aaBoundingRect.js";import{equals as z}from"../../../../geometry/support/spatialReferenceUtils.js";import W from"../../../../layers/Layer.js";import{getObjectId as M,computeAABB as N,hasGeometry as H}from"../../../../layers/graphics/dehydratedFeatures.js";import{hydrateGraphic as B}from"../../../../layers/graphics/hydratedFeatures.js";import{isSupportedRenderer3D as q,validateTo3D as Y}from"../../../../renderers/support/rendererConversion.js";import{loadArcade as $}from"../../../../support/arcadeOnDemand.js";import{isBasemapLayer as Z}from"../../../../support/basemapUtils.js";import{getDefaultSymbol3D as J}from"../../../../symbols/support/defaults3D.js";import{to3D as Q}from"../../../../symbols/support/symbolConversion.js";import{ViewElevationProvider as K}from"./ElevationQuery.js";import{VisibilityGroup as X,VisibilityFlag as ee}from"./enums.js";import{extractExpressionInfo as ie,createContext as te}from"./featureExpressionInfoUtils.js";import{Graphics3DFeatureStore as re}from"./Graphics3DFeatureStore.js";import se from"./Graphics3DGraphicCreationContext.js";import{Graphics3DSymbolCreationContext as ae}from"./Graphics3DSymbolCreationContext.js";import{make as ne}from"./Graphics3DSymbolFactory.js";import oe from"./Graphics3DWebStyleSymbol.js";import{GraphicStateTracking as le}from"./GraphicStateTracking.js";import{computeCentroid as he}from"./graphicUtils.js";import{ApplyRendererDiffResult as de}from"./interfaces.js";import{LoadStatus as pe}from"./Loadable.js";import{SpatialIndex2D as ce}from"./SpatialIndex2D.js";import{averageSymbolComplexities as ye,defaultSymbolComplexity as me}from"./symbolComplexity.js";import{StageLayerElevationProvider as ge}from"../support/StageLayerElevationProvider.js";import{toBoundingRect as ue}from"../../support/extentUtils.js";import{PropertiesPool as be}from"../../support/PropertiesPool.js";import{GridLocalOriginFactory as _e}from"../../webgl-engine/lib/GridLocalOriginFactory.js";import{UpdatePolicy as fe}from"../../webgl-engine/lib/UpdatePolicy.js";import{WebGLLayer as ve}from"../../webgl-engine/lib/WebGLLayer.js";import{hasPopupTemplate as Ce}from"../../../layers/support/popupUtils.js";import{ImmediateTask as Se,noBudget as we,TaskPriority as Ge,Task as xe}from"../../../support/Scheduler.js";import Pe from"../../../../geometry/Extent.js";import Re from"../../../../geometry/Point.js";import De from"../../../../symbols/LabelSymbol3D.js";import Ee from"../../../../symbols/TextSymbol.js";import Ie from"../../../../symbols/WebStyleSymbol.js";var Ue;const Ae=I(),Oe=L(),je="esri.views.3d.layers.graphics.Graphics3DCore",Le=t.getLogger(je);let Ve=Ue=class extends r{get _viewSpatialReference(){return this.owner.view.spatialReference}get spatialIndex(){return this._spatialIndex||(this._spatialIndex=new ce({objectIdField:this.owner.layer?.objectIdField,spatialReference:this._viewSpatialReference,hasZ:!!this.hasZ,hasM:!!this.hasM}),this._spatialIndex.setup(Array.from(this.graphics3DGraphics.values()))),this._spatialIndex.update(),this._spatialIndex}get numberOfGraphics(){return this._numberOfGraphics}get effectiveUpdatePolicy(){return null!=this.currentRenderer&&"dictionary"===this.currentRenderer.type?fe.ASYNC:this._forcedUpdatePolicy??this.preferredUpdatePolicy}get featureStore(){return this._featureStore}get initializePromise(){return this._initializePromise}get scaleVisibility(){return this._scaleVisibility}get elevationAlignment(){return this._elevationAlignment}get objectStates(){return this._objectStates}get filterVisibility(){return this._filterVisibility}get updating(){return!!(this._graphicsWaitingForSymbol.size>0||this.running||this._elevationAlignment?.updating||null!=this._scaleVisibility&&this._scaleVisibility.updating||null!=this._filterVisibility&&this._filterVisibility.updating||this._rendererChangeAbortController||this._elevationInfoChangeAbortController||this._updatingPendingLoadedGraphicsChange||this._frameTask.updating||this._loadingSymbols>0)}get running(){return this._pendingUpdates.size>0||!!this._spatialIndex?.updating}get suspendedOrOutsideOfView(){return this.owner.suspended||!!this.owner.suspendInfo?.outsideOfView}get updatingRemaining(){return this.updating?this._pendingUpdates.size+.1*(this._spatialIndex?.updatingRemaining||0)+.1*(this._elevationAlignment?.updatingRemaining||0):0}get displayFeatureLimit(){const e=this.owner&&this.owner.view&&this.owner.view.qualitySettings,i=e?e.graphics3D.minTotalNumberOfFeatures:0,t=e?e.graphics3D.maxTotalNumberOfFeatures:0,r=e?e.graphics3D.maxTotalNumberOfPrimitives:0,s=this.averageSymbolComplexity,a=Math.max(1,null!=s?s.primitivesPerFeature:1),n=null!=s&&s.drawCallsPerFeature>0?t/s.drawCallsPerFeature*.3:t,o=Math.ceil(r/a),l=Math.max(i,Math.min(t,o,n)),h=this._get("displayFeatureLimit");return h&&h.minimumTotalNumberOfFeatures===i&&h.maximumTotalNumberOfFeatures===t&&h.maximumTotalNumberOfPrimitives===r&&h.averageSymbolComplexity===s&&h.maximumNumberOfFeatures===l?h:{minimumTotalNumberOfFeatures:i,maximumTotalNumberOfFeatures:t,maximumTotalNumberOfPrimitives:r,averageSymbolComplexity:s,maximumNumberOfFeatures:l}}get averageSymbolComplexity(){const e=ye(this._symbolComplexities),i=this._get("averageSymbolComplexity");return 0===e.numComplexities||null!=i&&(e.estimated&&(i.primitivesPerFeature>=e.primitivesPerFeature||i.primitivesPerCoordinate>=e.primitivesPerCoordinate||i.drawCallsPerFeature>=e.drawCallsPerFeature)||i.primitivesPerFeature===e.primitivesPerFeature&&i.primitivesPerCoordinate===e.primitivesPerCoordinate&&i.drawCallsPerFeature===e.drawCallsPerFeature)?i:e}get usedMemory(){const e=null!=this.averageSymbolComplexity&&this.labelsEnabled?this.averageSymbolComplexity.memory.bytesPerFeatureLabel*this._numberOfGraphics:0,i=this._getSymbolComplexitiesUsed().reduce(((e,i)=>e+i.memory.resourceBytes),0);return this._usedMemory+e+i}get usedMemoryPerGraphic(){if(this._usedMemory&&this._numberOfGraphics){const e=this._numberOfGraphics/(this._numberOfGraphics+Math.max(this._pendingAdds,this._pendingRemoves));return this._usedMemory/this._numberOfGraphics*e}if(null!=this.averageSymbolComplexity){const e=this.labelsEnabled?this.averageSymbolComplexity.memory.bytesPerFeatureLabel:0;return this.averageSymbolComplexity.memory.bytesPerFeature+e}return 0}get unprocessedMemoryEstimate(){return(this._pendingAdds-this._pendingRemoves)*this.usedMemoryPerGraphic}get _symbolComplexities(){return this.currentRenderer?this._getSymbolComplexitiesUsedOrRenderer(this.currentRenderer):this._getSymbolComplexitiesUsed()}get visible(){return this._visible}_getConvertedSymbol(e){if("web-style"===e.type)return e.clone();const i=this._symbolConversionCache.get(e.id);if(null!=i)return i;const t=Q(e,{geometryType:this.layer?.geometryType??void 0,retainId:!0,hasLabelingContext:this._hasLabelingContext(e)}),r=t.symbol||null;return null==r&&t.error&&Le.error(t.error.message),this._symbolConversionCache.set(e.id,r),r}_getSymbolComplexitiesUsedOrRenderer(e){if(null==e)return[];const i=e.getSymbols(),t="backgroundFillSymbol"in e?e.backgroundFillSymbol:null;if(!(t||i&&i.length))return[];const r=[],s=this._getSymbolComplexityUsedOrRenderer(t);null!=s&&r.push(s);for(const a of i){const e=this._getSymbolComplexityUsedOrRenderer(a);null!=e&&r.push(e)}return r}_getSymbolComplexityUsedOrRenderer(e){if(null==e)return null;const i=this._symbols.get(e.id);if(null!=i)return i.complexity;const t=this._getConvertedSymbol(e);return null!=t?me(t):null}_getSymbolComplexitiesUsed(){const e=[];return this._symbols.forEach((i=>{null!=i&&e.push(i.complexity)})),e}get _objectIdField(){return this.layer.objectIdField}constructor(e){super(e),this._propertiesPool=new be({computedExtent:Pe},this),this.computedExtent=null,this.currentRenderer=null,this.rendererHasGeometryOperations=!1,this._graphicStateTracking=null,this.graphics3DGraphics=new Map,this.stageLayer=null,this.stage=null,this._graphicsDrapedUids=new Set,this._graphicsBySymbol=new Map,this._symbolConversionCache=new Map,this._symbols=new Map,this._graphicsWithoutSymbol=new Map,this._graphicsWaitingForSymbol=new Map,this._graphicsUpdateId=0,this._frameTask=Se,this._suspendSymbolCleanup=!1,this._arcadeOnDemand=null,this._rendererChangeAbortController=null,this._elevationInfoChangeAbortController=null,this._initializeAbortController=null,this._scaleVisibility=null,this._filterVisibility=null,this._spatialIndex=null,this.extentPadding=0,this._updatingPendingLoadedGraphicsChange=null,this._featureStore=null,this._deconflictor=null,this._labeler=null,this._objectStates=null,this._viewElevationProvider=null,this._stageLayerElevationProvider=null,this._sharedSymbolResourcesOwnerHandle=null,this._whenGraphics3DGraphicRequests={},this._pendingUpdates=new Map,this._numberOfGraphics=0,this._numberOfGraphicsProvidingElevation=0,this._pendingAdds=0,this._pendingRemoves=0,this._applyPendingRemovesFirst=!1,this._loadingSymbols=0,this._pendingUpdatesPool=new c({allocator:e=>e||new Te,deallocator:e=>(e.clear(),e)}),this._symbolWarningLogged=!1,this._geometryWarningLogged=!1,this._objectIdInvisibleSet=new Set,this._whenSymbolRemoved=new c,this.preferredUpdatePolicy=fe.SYNC,this._forcedUpdatePolicy=null,this.elevationFeatureExpressionEnabled=!0,this.owner=null,this.layer=null,this.graphicSymbolSupported=!0,this.getRenderingInfoWithoutRenderer=!1,this.setUidToIdOnAdd=!0,this.hasZ=null,this.hasM=null,this._usedMemory=0,this._visible=!1,this._startCreateGraphics=!1,this.symbolCreationContext=new ae(e.owner.view.resourceController.scheduler,((e,i)=>this._frameTask.schedule(e,i)))}initialize(){this._featureStore=new re({objectIdField:this.owner.layer&&this.owner.layer.objectIdField,hasZ:!!this.hasZ,hasM:!!this.hasM,viewSpatialReference:this._viewSpatialReference,featureSpatialReference:this.owner.featureSpatialReference,getSpatialIndex:()=>this.spatialIndex,forEach:e=>this.graphics3DGraphics.forEach(e)});const e=(e,i,t)=>this.spatialIndex.queryGraphicUIDsInExtent(e,i,t),{componentFactories:i}=this;if(null!=i.elevationAlignment){const t=i.elevationAlignment(this,e);this._elevationAlignment=t}if(null!=i.scaleVisibility){const t=i.scaleVisibility(this,e);this._scaleVisibility=t}if(null!=i.filterVisibility){const e=i.filterVisibility({featureStore:this._featureStore,getFeatureCount:()=>this.graphics3DGraphics.size,updateFeatureVisibilities:e=>this.modifyGraphics3DGraphicVisibilities((i=>i.setVisibilityFlag(X.GRAPHIC,ee.FILTER,e(M(i.graphic,this._objectIdField))))),setAllFeaturesVisibility:e=>this.modifyGraphics3DGraphicVisibilities((i=>i.setVisibilityFlag(X.GRAPHIC,ee.FILTER,e))),clearFeaturesVisibility:()=>this.modifyGraphics3DGraphicVisibilities((e=>e.setVisibilityFlag(X.GRAPHIC,ee.FILTER,!0)))});this._filterVisibility=e}if(null!=i.deconflictor){const e=i.deconflictor(this);this._deconflictor=e}if(null!=i.labeler&&null!=this._scaleVisibility){const e=i.labeler(this,this._scaleVisibility);this._labeler=e}if(null!=i.objectStates){const e=i.objectStates(this);this._objectStates=e}this._initializeAbortController=new AbortController,this._initializePromise=this._initializeAsync()}async _initializeAsync(){const e=this._initializeAbortController?.signal,i=this.owner.view;this._viewElevationProvider=new K(this._viewSpatialReference,i),this._initializeStage(i,this.layer.uid);const t=i.sharedSymbolResources;this.symbolCreationContext.sharedResources=t,this._sharedSymbolResourcesOwnerHandle=t.addGraphicsOwner(this.owner),null!=this.currentRenderer&&(this.symbolCreationContext.renderer=this.currentRenderer),this.symbolCreationContext.stage=this.stage,this.symbolCreationContext.streamDataRequester=t.streamDataRequester,this.symbolCreationContext.renderCoordsHelper=i.renderCoordsHelper,this.symbolCreationContext.layer=this.layer,this.symbolCreationContext.graphicsCoreOwner=this.owner,this.symbolCreationContext.localOriginFactory=new _e(i.renderSpatialReference),this.symbolCreationContext.elevationProvider=i.elevationProvider,this.symbolCreationContext.notifyGraphicGeometryChanged=e=>this.notifyGraphicGeometryChanged(e),this.symbolCreationContext.notifyGraphicVisibilityChanged=e=>this.notifyGraphicVisibilityChanged(e);const r=ie(this.layer.elevationInfo,this.elevationFeatureExpressionEnabled);if(this.symbolCreationContext.featureExpressionInfoContext=await te(r,this._viewSpatialReference,e,Le),y(e),this.symbolCreationContext.screenSizePerspectiveEnabled=i.screenSizePerspectiveEnabled&&!!this.layer.screenSizePerspectiveEnabled,this.symbolCreationContext.slicePlaneEnabled=!!this.owner.slicePlaneEnabled,this.symbolCreationContext.physicalBasedRenderingEnabled=!!this.owner.view.qualitySettings?.physicallyBasedRenderingEnabled,this.symbolCreationContext.skipHighSymbolLods=!!this.owner.view.qualitySettings?.graphics3D?.skipHighSymbolLods,"drapeSourceType"in this.owner){const{owner:e}=this;this.symbolCreationContext.drapeSourceRenderer=i.basemapTerrain.overlayManager.registerGeometryDrapeSource(e),this.addHandles(n((()=>i.basemapTerrain.overlayManager.unregisterDrapeSource(e))))}this.addHandles([b((()=>this.suspendedOrOutsideOfView),(()=>this._frameTask.reschedule((()=>this._updateLayerVisibility())))),b((()=>[this.layer?.screenSizePerspectiveEnabled,this.owner.view?.screenSizePerspectiveEnabled]),(()=>{const e=i.screenSizePerspectiveEnabled&&!!this.layer.screenSizePerspectiveEnabled;e!==this.symbolCreationContext.screenSizePerspectiveEnabled&&(this.symbolCreationContext.screenSizePerspectiveEnabled=e,this._labeler?.reset(),this.recreateAllGraphicsAndSymbols())})),b((()=>this.owner.slicePlaneEnabled),(e=>this._slicePlaneEnabledChange(!!e))),b((()=>this.owner.view.state?.rasterPixelRatio),(()=>this._pixelRatioChange())),b((()=>!!this.owner.view.qualitySettings?.physicallyBasedRenderingEnabled),(e=>this._physicalBasedRenderingChange(e))),b((()=>!!this.owner.view.qualitySettings?.graphics3D?.skipHighSymbolLods),(e=>this._skipHighSymbolLoDsChange(e))),_((()=>i.basemapTerrain?.tilingScheme),(e=>{if(e.spatialReference.equals(this.symbolCreationContext.overlaySR)||null==i.basemapTerrain.spatialReference||(this.symbolCreationContext.overlaySR=i.basemapTerrain.spatialReference),this.hasHandles("loaded-graphics"))this.recreateAllGraphics();else{const e=()=>this.owner?.loadedGraphics;this.addHandles([f(e,"change",(e=>{this._graphicsCollectionChanged(e),this._signalUpdatingDuringAsyncLoadedGraphicsChange()}),{onListenerAdd:()=>{this.recreateAllGraphics(),this._signalUpdatingDuringAsyncLoadedGraphicsChange()}})],"loaded-graphics")}}),{initial:!0}),b((()=>this.effectiveUpdatePolicy),(e=>{null!=this.stageLayer&&(this.stageLayer.updatePolicy=e),this.symbolCreationContext.isAsync=this.effectiveUpdatePolicy===fe.ASYNC,e===fe.SYNC&&this.runTask(we)}),v)]),this._frameTask=i.resourceController.scheduler.registerTask(Ge.GRAPHICS_CORE,this),this.layer&&"featureReduction"in this.layer&&this.addHandles(b((()=>this.layer.featureReduction),(()=>this._deconflictor.featureReductionChange()))),this.notifyChange("averageSymbolComplexity"),this.rendererChange(this.owner.renderer).catch((()=>{})),this._initializeAbortController=null}_abortInitialize(){this._initializeAbortController&&(this._initializeAbortController.abort(),this._initializeAbortController=null)}destroy(){this._abortInitialize(),this._abortRendererChange(),this._abortElevationInfoChange(),this._frameTask.remove(),this._frameTask=Se,this.owner.view?.deconflictor?.removeGraphicsOwner(this),this.owner.view?.labeler?.removeGraphicsOwner(this),this._elevationAlignment=h(this._elevationAlignment),this._scaleVisibility=h(this._scaleVisibility),this._filterVisibility=h(this._filterVisibility),this._deconflictor=null,this._labeler=null,this._objectStates=h(this._objectStates),this.clear(),this._featureStore=h(this._featureStore),this._updatingPendingLoadedGraphicsChange=d(this._updatingPendingLoadedGraphicsChange),this._graphicStateTracking=h(this._graphicStateTracking),this.stage&&(this.stageLayer=h(this.stageLayer),this.stage=null),this._set("owner",null);for(const e in this._whenGraphics3DGraphicRequests)this._whenGraphics3DGraphicRequests[e].reject(new a("graphic:layer-destroyed","Layer has been destroyed"));this._whenGraphics3DGraphicRequests=null,this._sharedSymbolResourcesOwnerHandle=d(this._sharedSymbolResourcesOwnerHandle),this._propertiesPool=h(this._propertiesPool),this._pendingUpdatesPool=null,this._symbolConversionCache.clear(),this._objectIdInvisibleSet.clear(),this._spatialIndex=h(this._spatialIndex)}clear(){this._objectStates?.allGraphicsDeleted(),null!=this._graphicStateTracking&&this._graphicStateTracking.allGraphicsDeleted(),this.graphics3DGraphics.forEach((e=>e.destroy())),this._spatialIndex?.clear(),this.graphics3DGraphics.clear(),this._numberOfGraphics=0,this._usedMemory=0,this._updateLayerVisibility(),this._symbols.forEach(h),this._symbols.clear(),this._graphicsBySymbol.clear(),this._graphicsWithoutSymbol.clear(),this._graphicsWaitingForSymbol.clear(),this._pendingUpdates.clear(),this._pendingUpdatesPool.clear(),this._pendingAdds=0,this._pendingRemoves=0,this._applyPendingRemovesFirst=!1,this.notifyChange("updating"),this.notifyChange("running"),this.notifyChange("updatingRemaining"),this._featureStore.events.emit("changed")}_initializeStage(e,i){this.stage=e._stage,this.stageLayer=new ve(this.stage,{pickable:!this.suspendedOrOutsideOfView,updatePolicy:this.effectiveUpdatePolicy},i);const t=this.stageLayer.events;t.on("objectTransformation",(e=>this.notifyGraphicGeometryChanged(e.graphicUid))),t.on("objectShaderTransformation",(e=>this.notifyGraphicGeometryChanged(e.graphicUid))),t.on("visibilityChanged",(e=>this.notifyGraphicVisibilityChanged(e.graphicUid))),t.on("objectGeometryAdded",(e=>this.notifyGraphicGeometryChanged(e.object.graphicUid))),t.on("objectGeometryRemoved",(e=>this.notifyGraphicGeometryChanged(e.object.graphicUid))),t.on("objectGeometryUpdated",(e=>this.notifyGraphicGeometryChanged(e.object.graphicUid)))}notifyGraphicGeometryChanged(e){if(null==this._graphicStateTracking||null==e)return;const i=this.graphics3DGraphics.get(e);i&&this._graphicStateTracking.updateGraphicGeometry(i)}notifyGraphicVisibilityChanged(e){if(null==this._graphicStateTracking||null==e)return;const i=this.graphics3DGraphics.get(e);i&&this._graphicStateTracking.updateGraphicVisibility(i)}_updateLayerVisibility(){const e=this.displayFeatureLimit.maximumNumberOfFeatures,i=this._numberOfGraphics>e*ke,t=!this.suspendedOrOutsideOfView&&!i;t!==this._visible&&(this._visible=t,t?(this.stageLayer.pickable=!0,this.updateAllGraphicsVisibility()):(this.stageLayer.pickable=!1,this._hideAllGraphics()),this._updateStageLayerVisibility())}_updateStageLayerVisibility(){this.stageLayer.visible=this._visible&&(null==this.layer.opacity||this.layer.opacity>0)}getGraphics3DGraphicById(e){return null!=e?this.graphics3DGraphics.get(e):void 0}getGraphics3DGraphicByObjectId(e){return this.owner.layer?.objectIdField?this._findGraphics3DGraphicByObjectId(e):null}_getGraphicObjectID(e,i=this.owner.layer&&this.owner.layer.objectIdField){return M(e,i)}get graphics3DGraphicsByObjectID(){const e=this.owner.layer&&this.owner.layer.objectIdField;if(!e)return;const i=new Map;return this.graphics3DGraphics.forEach((t=>{if(!t)return;const r=t.graphic,s=this._getGraphicObjectID(r,e);null!=s&&i.set(s,t)})),i}get labelsEnabled(){return!(!this._labeler||!this._labeler.layerLabelsEnabled())}async updateLabelingInfo(e){const i=this._deconflictor&&this._deconflictor.labelingInfoChange(e),t=this._labeler&&this._labeler.labelingInfoChange(e);await m([i,t])}updateVisibilityInfo(){this._deconflictor&&this._deconflictor.labelingInfoChange(),this._labeler&&this._labeler.visibilityInfoChange()}get symbolUpdateType(){if(this._pendingUpdates.size>0)return"unknown";let e=0,i=0;return o(this._symbols,((t,r)=>{if(null!=t){const s=t.getFastUpdateStatus();if(s.loading>0)return!0;this._graphicsBySymbol.has(r)&&(i+=s.fast,e+=s.slow)}return!1}))?"unknown":i>=0&&0===e?"fast":e>=0&&0===i?"slow":"mixed"}runTask(e){if(this._frameTask.processQueue(e),this._applyPendingUpdates(e),this.notifyChange("running"),this.running||this.notifyChange("updating"),this.notifyChange("updatingRemaining"),!e.hasProgressed)return xe.YIELD}setObjectIdVisibility(e,i){i?this._objectIdInvisibleSet.delete(e):this._objectIdInvisibleSet.add(e);const t=this._findGraphics3DGraphicByObjectId(e);null!=t&&this._updateUserVisibility(t)}_findGraphics3DGraphicByObjectId(e){return l(this.graphics3DGraphics,(i=>this._getGraphicObjectID(i.graphic)===e))}_updateUserVisibility(e){if(null==e)return!1;const i=e.graphic,t=this._getGraphicObjectID(i),r=i.visible&&!this.owner.suspended&&(null==t||!this._objectIdInvisibleSet.has(t));return e.setVisibilityFlag(X.GRAPHIC,ee.USER,r)}_whenGraphics3DGraphic(e){const i=this.graphics3DGraphics.get(e.uid);if(i)return Promise.resolve(i);const t=this._whenGraphics3DGraphicRequests[e.uid];if(t)return t.promise;const r=g();return this._whenGraphics3DGraphicRequests[e.uid]=r,r.promise}async _boundsForGraphics3DGraphic(e,i){const t=this._viewSpatialReference,r=this.owner.view.renderSpatialReference,s=this.owner.view.basemapTerrain.spatialReference,a=(e,i,s)=>j(e,r,i,e,t,i,s),n=(e,i,r)=>j(e,s,i,e,t,i,r),o=this._viewElevationProvider?{service:this._viewElevationProvider,useViewElevation:null!=i&&!!i.useViewElevation,minDemResolution:null!=i?i.minDemResolution:null,minDemResolutionForPoints:this.owner.view.resolution}:null,l=await e.getProjectedBoundingBox(a,n,o,i?.signal);if(!l)return null;const h=l.boundingBox;if(l.requiresDrapedElevation){const e=this.symbolCreationContext.elevationProvider;if(e){V(h,Ae);const i=e.getElevation(Ae[0],Ae[1],0,t,"ground")??0;h[2]=Math.min(h[2],i),h[5]=Math.max(h[5],i)}}return{boundingBox:h,screenSpaceObjects:l.screenSpaceObjects}}async whenGraphicBounds(e,i){await C((()=>this.owner?.loadedGraphics));const t=this.owner.layer&&this.owner.layer.objectIdField,r=this.owner.loadedGraphics.find((i=>i===e||null!=t&&null!=i.attributes&&e.attributes&&i.attributes[t]===e.attributes[t]));if(!r)throw new a("internal:graphic-not-part-of-view","Graphic is not part of this view");const s=await this._whenGraphics3DGraphic(r);return this._boundsForGraphics3DGraphic(s,i)}computeAttachmentOrigin(e,i){const t=this.graphics3DGraphics.get(e.uid);if(!t)return null;const r=t.computeAttachmentOrigin();if(0===r.render.num&&0===r.draped.num)return null;R(ze,0,0,0);let s=0;if(r.render.num>0){if(!U(r.render.origin,this.symbolCreationContext.renderCoordsHelper.spatialReference,We,i))return null;D(ze,ze,We),s++}if(r.draped.num>0){const[e,t]=r.draped.origin,a=this._viewElevationProvider.getElevation(e,t,"ground")??0;if(R(We,e,t,a),!U(We,this._viewElevationProvider.spatialReference,We,i))return null;D(ze,ze,We),s++}return s>1&&E(ze,ze,1/s),new Re({x:ze[0],y:ze[1],z:ze[2],spatialReference:i})}getSymbolLayerSize(e,i){const t=this._symbols.get(e.id);if(null==t)throw new a("internal:symbol-not-part-of-view","Symbol is not part of this view");const r=e.symbolLayers.indexOf(i);if(-1===r)throw new a("internal:missing-symbol-layer","Symbol layer is not in symbol");const s=t.getSymbolLayerSize(r);if(null==s)throw new a("internal:missing-size","Symbol layer has no valid size");return s}_graphicsCollectionChanged(e){this._startCreateGraphics&&(this.add(e.added),this.remove(e.removed))}graphicUpdateHandler(e){const i=e.graphic.uid,t=this.graphics3DGraphics.get(i);if(null!=t||null!=this._graphicsWithoutSymbol.get(i))switch(e.property){case"visible":this._graphicUpdateVisibleHandler(t);break;case"geometry":this._graphicUpdateGeometryHandler(t,e);break;case"symbol":this._graphicUpdateSymbolHandler(t,e);break;case"attributes":break;case"origin-transform":this._graphicUpdateTransformHandler(t,e)}}_graphicUpdateGeometryHandler(e,i){this._graphicUpdateGeometryOrTransformHandler(e,i,(()=>null!=i.newValue&&null!=e&&e.graphics3DSymbol.updateGeometry(e,i.newValue)));const t=i.graphic.geometry;null!=t&&this._expandComputedExtent(t)}_graphicUpdateTransformHandler(e,i){const t=i.graphic.geometry;this._graphicUpdateGeometryOrTransformHandler(e,i,(()=>null!=i.newValue&&null!=e&&null!=t&&e.graphics3DSymbol.updateTransform(e,t.spatialReference,i.newValue,i.action)))}_graphicUpdateGeometryOrTransformHandler(e,i,t){if(null!=i.graphic.geometry)if(null!=e)t()||this._recreateGraphic(e.graphic);else{const e=i.graphic.symbol&&i.graphic.symbol.id;if(e){const i=this._symbols.get(e);if(null!=i&&i.loadStatus===pe.LOADING)return}this._recreateGraphic(i.graphic)}else this._recreateGraphic(i.graphic)}_graphicUpdateSymbolHandler(e,i){const t=i.graphic,r=null!=e?e.graphics3DSymbol:null!=i.oldValue?this._symbols.get(i.oldValue.id):null;if(null==r||null==i.newValue)return void this._recreateGraphic(t);const s=r.symbol,a=this._getConvertedSymbol(i.newValue);if(null!=a&&(a.type!==s.type||"web-style"===a.type)||"web-style"===s.type)return void this._recreateGraphic(t);const n=this._graphicsBySymbol.get(s.id);if(n&&1!==n.size)return void this._recreateGraphic(t);const o=x(s,a);if(null==o)return void this._updateSymbolMapping(s.id,a);const l={diff:o,graphics3DGraphicPatches:[],symbolStatePatches:[]};if(r.prepareSymbolPatch(l),!P(l.diff))return void this._recreateGraphic(t);const h=this._getRenderingInfo(t);if(null==h)return void this._recreateGraphic(t);const d=r.extentPadding;for(const p of l.symbolStatePatches)p();if(d!==r.extentPadding&&this._recomputeExtentPadding(),null!=e)for(const p of l.graphics3DGraphicPatches)p(e,h);this._updateSymbolMapping(s.id,a)}_graphicUpdateVisibleHandler(e){this._updateUserVisibility(e)&&(this._labeler&&this.owner.view.labeler.setDirty(),this.owner.view.deconflictor.setDirty())}recreateGraphics(e){this._suspendSymbolCleanup=!0,this.remove(e),this.add(e),this._suspendSymbolCleanup=!1,this.effectiveUpdatePolicy===fe.SYNC&&this._cleanupSymbols()}_recreateGraphic(e){this.recreateGraphics([e])}_beginGraphicUpdate(e){const i=this._graphicsUpdateId;return this._graphicsUpdateId++,this._graphicsWaitingForSymbol.set(e.uid,i),1===this._graphicsWaitingForSymbol.size&&this.notifyChange("updating"),i}_endGraphicUpdate(e){e&&(this._graphicsWaitingForSymbol.delete(e.uid),0===this._graphicsWaitingForSymbol.size&&(this._cleanupSymbols(),this.notifyChange("updating")))}_recomputeExtentPadding(){let e=0;this._symbols.forEach((i=>{null!=i&&(e=Math.max(e,i.extentPadding))})),this._set("extentPadding",e)}_expandComputedExtent(e){const i=Oe,t=e.spatialReference;N(e,i);const r=this._viewSpatialReference,s=Ue.tmpVec;if(z(t,r)||A(i[0],i[1],0,t,s,r)&&(i[0]=s[0],i[1]=s[1],A(i[3],i[4],0,t,s,r),i[3]=s[0],i[4]=s[1]),!(isFinite(i[0])&&isFinite(i[3])&&isFinite(i[1])&&isFinite(i[4])))return;const a=this.computedExtent;let n=null;const o=isFinite(i[2])&&isFinite(i[5]),l=o&&(!a||null==a.zmin||i[2]<a.zmin),h=o&&(!a||null==a.zmax||i[5]>a.zmax);if(a){(i[0]<a.xmin||i[1]<a.ymin||i[3]>a.xmax||i[4]>a.ymax||l||h)&&(n=this._propertiesPool.get("computedExtent"),n.xmin=Math.min(i[0],a.xmin),n.ymin=Math.min(i[1],a.ymin),n.xmax=Math.max(i[3],a.xmax),n.ymax=Math.max(i[4],a.ymax),n.spatialReference=r)}else n=this._propertiesPool.get("computedExtent"),n.xmin=i[0],n.ymin=i[1],n.xmax=i[3],n.ymax=i[4],n.spatialReference=r;n&&(l&&(n.zmin=i[2]),h&&(n.zmax=i[5]),this._set("computedExtent",n))}_abortElevationInfoChange(){this._elevationInfoChangeAbortController&&(this._elevationInfoChangeAbortController.abort(),this._elevationInfoChangeAbortController=null)}async elevationInfoChange(){this._abortElevationInfoChange();const e=new AbortController;this._elevationInfoChangeAbortController=e;const i=ie(this.layer.elevationInfo,this.elevationFeatureExpressionEnabled);this.symbolCreationContext.featureExpressionInfoContext=await te(i,this._viewSpatialReference,e.signal,Le),y(e.signal),this._elevationInfoChangeAbortController=null,this._labeler?.elevationInfoChange(),this.forEachGraphics3DSymbol(((e,i,t)=>{e.globalPropertyChanged("elevationInfo",i)?i.forEach((e=>{const i=e.graphic,t=e.labelLayers;for(const r of t){r.graphics3DSymbolLayer.updateGraphicElevationContext(i,r)}})):this._recreateSymbol(t)})),this.updateStageLayerElevationProvider(),this._elevationAlignment?.elevationInfoChange()}updateStageLayerElevationProvider(){this._stageLayerElevationProvider?(this.layer.elevationInfo&&"relative-to-scene"===this.layer.elevationInfo.mode||0===this._numberOfGraphicsProvidingElevation)&&(this.owner.view.elevationProvider.unregister(this._stageLayerElevationProvider),this._stageLayerElevationProvider=p(this._stageLayerElevationProvider)):(!this.layer.elevationInfo||this.layer.elevationInfo&&"relative-to-scene"!==this.layer.elevationInfo.mode)&&this._numberOfGraphicsProvidingElevation>0&&(this._stageLayerElevationProvider=new ge({layer:this.layer,stageLayer:this.stageLayer,view:this.owner.view}),this.owner.view.elevationProvider.register("scene",this._stageLayerElevationProvider))}_clearSymbolsAndGraphics(){this.clear(),null!=this._filterVisibility&&this._filterVisibility.clear(),this._labeler?.reset(),this._deconflictor?.clear(),this._elevationAlignment?.clear(),this.stageLayer?.invalidateSpatialQueryAccelerator(),this._stageLayerElevationProvider&&(this.owner.view.elevationProvider.unregister(this._stageLayerElevationProvider),this._stageLayerElevationProvider=p(this._stageLayerElevationProvider))}startCreateGraphics(){this._startCreateGraphics=!0,this.recreateAllGraphics()}recreateAllGraphics(){this._recreateAllGraphics(!1)}recreateAllGraphicsAndSymbols(){this._recreateAllGraphics(!0)}_recreateAllGraphics(e=!1){if(!this._startCreateGraphics)return;const{loadedGraphics:i,view:t}=this.owner,r=t.basemapTerrain.tilingScheme&&i&&i.length?i.toArray():null;!e&&r||this._clearSymbolsAndGraphics(),this.symbolCreationContext.screenSizePerspectiveEnabled=this.owner.view.screenSizePerspectiveEnabled&&!!this.layer.screenSizePerspectiveEnabled,this.symbolCreationContext.slicePlaneEnabled=!!this.owner.slicePlaneEnabled,this._set("computedExtent",null),r&&(e?this.add(r):this.recreateGraphics(r))}_recreateSymbol(e){const i=this._graphicsBySymbol.get(e),t=[];i&&(i.forEach(((e,i)=>{const r=e.usedMemory;this._conditionalRemove(e,i),this._spatialIndex?.remove(e),t.push(e.graphic),e.destroy(),this._removeGraphics3DGraphic(i,r),this._updateLayerVisibility(),this._featureStore.events.emit("changed")})),this._graphicsBySymbol.set(e,new Map));const r=this._symbols.get(e);h(r),this._symbols.delete(e),this.add(t)}_recreateGraphicsForSymbol(e){const i=this._graphicsBySymbol.get(e);if(i){const e=[];i.forEach((i=>e.push(i.graphic))),this.recreateGraphics(e)}}_conditionalRemove(e,i){this._graphicsDrapedUids.delete(i),this._objectStates?.removeGraphic(e),this._labeler?.removeGraphic(e),this._deconflictor?.removeGraphic(e),null!=this._graphicStateTracking&&this._graphicStateTracking.removeGraphic(e)}add(e){e&&0!==e.length&&(this.owner.view.basemapTerrain&&this.owner.view.basemapTerrain.tilingScheme?(this._updatePolicyForGraphics(e)===fe.ASYNC?this._addDelayed(e):this._addImmediate(e),this.notifyChange("updating")):Le.error("#add()","Cannot add graphics before terrain surface has been initialized"))}_updatePolicyForGraphics(e){if(this.effectiveUpdatePolicy===fe.SYNC&&("mesh"===this.layer.geometryType||null==this.layer.geometryType))for(const i of e)if(null!=i.geometry&&"mesh"===i.geometry.type&&!i.geometry.loaded)return fe.ASYNC;return this.effectiveUpdatePolicy}_addImmediate(e){this._geometryWarningLogged=!1,this._symbolWarningLogged=!1;for(const i of e)this._addGraphic(i,this._getRenderingInfo(i,Le),fe.SYNC);this._cleanupSymbols(),this._labeler&&(this.owner.view.labeler.setDirty(),this._cleanupSymbols()),this.owner.view.deconflictor.setDirty()}_addDelayed(e){for(const i of e){const e=i.uid;let t=this._pendingUpdates.get(e);t?t.add?t.state!==Fe.NEW&&t.abortController?.abort():this._pendingAdds++:(t=this._pendingUpdatesPool.pushNew(),this._pendingAdds++,this._pendingUpdates.set(e,t)),t.add=i}this.notifyChange("running"),this.notifyChange("updatingRemaining")}remove(e){this.effectiveUpdatePolicy===fe.ASYNC?this._removeDelayed(e):this._removeImmediate(e),this.notifyChange("updating")}_removeImmediate(e){for(const i of e)this._removeGraphic(i);this._cleanupSymbols(),this._labeler&&this.owner.view.labeler.setDirty(),this.owner.view.deconflictor.setDirty()}_removeDelayed(e){for(const i of e){const e=i.uid,t=this._pendingUpdates.get(e);if(t)t.add&&(t.remove?t.add=null:this._pendingUpdates.delete(e),t.state===Fe.LOADING&&t.abortController?.abort(),this._pendingAdds--);else{const t=this._pendingUpdatesPool.pushNew();t.remove=i,this._pendingUpdates.set(e,t),this._pendingRemoves++,this._applyPendingRemovesFirst=!0}}0===this._pendingUpdates.size&&this._finishPendingUpdates(),this.notifyChange("running"),this.notifyChange("updatingRemaining")}_finishPendingUpdates(){this._pendingUpdatesPool.clear(),this._cleanupSymbols(),(this._pendingAdds||this._pendingRemoves)&&Le.warn("pendingAdds/Removes in inconsistent state!"),this._pendingAdds=0,this._pendingRemoves=0,this._applyPendingRemovesFirst=!1}_applyPendingUpdates(e){if(this._geometryWarningLogged=!1,this._symbolWarningLogged=!1,0===this._pendingUpdates.size&&this._spatialIndex?.updating)return this._spatialIndex.update(),void e.madeProgress();if(this._applyPendingRemovesFirst){this._applyPendingRemovesFirst=!1;for(const[i,t]of this._pendingUpdates){if(e.done){this._applyPendingRemovesFirst=!0;break}if(t.remove&&!t.add&&(this._pendingRemoves--,e.madeProgress(),this._removeGraphic(t.remove),t.remove=null,this._pendingUpdates.delete(i),0===this._pendingRemoves))break}}for(const[i,t]of this._pendingUpdates){if(e.done)break;t.add&&t.state===Fe.NEW&&this._processPendingUpdateNew(t);let r=this.effectiveUpdatePolicy;if(!t.remove||t.add&&t.state!==Fe.READY||(this._pendingRemoves--,e.madeProgress(),this._removeGraphic(t.remove),t.remove=null,r=fe.SYNC),t.add)switch(t.state){case Fe.READY:this._addGraphic(t.add,t.renderingInfo,r),t.add=null,this._pendingAdds--,e.madeProgress();break;case Fe.REJECTED:t.add=null,this._pendingAdds--;case Fe.LOADING:}null==t.remove&&null==t.add&&this._pendingUpdates.delete(i)}0===this._pendingUpdates.size&&(this._finishPendingUpdates(),this.notifyChange("running"))}_processPendingUpdateNew(e){if(!e.add)return void(e.state=Fe.READY);const i=e.add.geometry;null==i||"mesh"!==i.type||i.loaded?this._processPendingUpdateNewRenderingInfo(e):this._processPendingUpdateNewMesh(e,i)}async _processPendingUpdateNewMesh(e,i){e.state=Fe.LOADING,e.abortController=new AbortController;const t=e.abortController.signal;try{await i.load({signal:t})}catch(r){return this._processPendingUpdateNewError(e,r)}e.abortController=null,this._processPendingUpdateNewRenderingInfo(e)}_processPendingUpdateNewError(e,i){e.abortController=null,u(i)?e.state=Fe.NEW:e.state=Fe.REJECTED}async _processPendingUpdateNewRenderingInfo(e){if(null==this.layer.renderer||"dictionary"!==this.layer.renderer.type)return e.renderingInfo=this._getRenderingInfo(e.add,Le),void(e.state=Fe.READY);e.state=Fe.LOADING,e.abortController=new AbortController;let i=null;try{i=await this._getRenderingInfoAsync(e.add,{signal:e.abortController.signal})}catch(t){return e.abortController=null,void(u(t)?e.state=Fe.NEW:e.state=Fe.REJECTED)}null==i||null==i.symbol?(Le&&!this._symbolWarningLogged&&(this._symbolWarningLogged=!0,Le.warn(`Graphic in layer ${this.layer.id} has no symbol and will not render`)),e.renderingInfo=null):e.renderingInfo=i,e.state=Fe.READY}_addGraphic(e,i,t){if(this._graphicsWithoutSymbol.set(e.uid,e),null==i||null==i.symbol||!H(e))return;if(null!=this.stage.renderView.objectAndLayerIdRenderHelper&&this.setUidToIdOnAdd){const i=Z(this.owner.view.map,this.layer.uid);this.stage.renderView.objectAndLayerIdRenderHelper.setUidToObjectAndLayerId(e.objectId,e.uid,this.layer.id,this.layer.uid,!!this.layer.popupEnabled&&!i&&Ce(this.layer,this.owner.view.popup?.defaultPopupTemplateEnabled))}const r=i.symbol,s=this.getOrCreateGraphics3DSymbol(r,i.renderer);if(null==s)return;this._expandComputedExtent(e.geometry);const a=this._beginGraphicUpdate(e),n=new se(e,i,this.layer);let o=!1;const l=e=>{e===s.symbol.id&&(o=!0)};this._whenSymbolRemoved.push(l);const h=()=>{if(--this._loadingSymbols,this.destroyed)return;this._whenSymbolRemoved.removeUnordered(l);if(this._graphicsWaitingForSymbol.get(e.uid)!==a||o||s.destroyed||this.graphicSymbolSupported&&e.symbol&&e.symbol.id!==s.symbol.id)--s.referenced,this._cleanupSymbols();else{const i=this._createGraphics3DGraphic(s,n);this._spatialIndex&&null!=i&&this._spatialIndex.add(i),--s.referenced,this._endGraphicUpdate(e)}this._featureStore.events.emit("changed"),this._labeler&&this.owner.view.labeler.setDirty()},d=i=>{--this._loadingSymbols,this.destroyed||(this._whenSymbolRemoved.removeUnordered(l),o||(u(i)?this.add([e]):s.destroyed||this._endGraphicUpdate(e)))};++this._loadingSymbols,t===fe.ASYNC?s.load((()=>this._frameTask.schedule(h)),(e=>this._frameTask.schedule((()=>d(e))))):s.load(h,d)}_removeGraphic(e){const i=e.uid,t=this.graphics3DGraphics.get(i);if(t){t.graphics3DSymbol.onRemoveGraphic(t);const e=t.usedMemory,r=t.isElevationSource;this._conditionalRemove(t,i),this._spatialIndex?.remove(t);const s=t.graphics3DSymbol.symbol.id;this._graphicsBySymbol.get(s)?.delete(i),this._graphicsWithoutSymbol.delete(i),this._removeGraphics3DGraphic(i,e,r),t.destroy(),this._featureStore.events.emit("changed")}else this._graphicsWithoutSymbol.delete(i),this._graphicsWaitingForSymbol.delete(i),0===this._graphicsWaitingForSymbol.size&&(this._cleanupSymbols(),this.notifyChange("updating"))}_hasLabelingContext(e){if(e instanceof De||e instanceof Ee){const i=this.symbolCreationContext.layer;return!!i.labelingInfo&&i.labelingInfo.some((i=>i.symbol===e))}return!1}_hasValidSymbolCreationContext(e){return!(e instanceof De&&!this._hasLabelingContext(e))||(Le.error("LabelSymbol3D is only valid as part of a LabelClass. Using LabelSymbol3D as a renderer symbol is not supported."),!1)}_getRenderingInfo(e,i){const t=e.geometry;if(null==t)return i&&!this._geometryWarningLogged&&(this._geometryWarningLogged=!0,i.warn(`Graphic in layer ${this.layer.id} has no geometry and will not render`)),null;if(!O(t.spatialReference,this._viewSpatialReference))return i&&!this._geometryWarningLogged&&(this._geometryWarningLogged=!0,i.warn(`Graphic in layer ${this.layer.id} has incompatible spatial reference and will not render`)),null;if(!this.graphicSymbolSupported&&null!=e.symbol)return i&&!this._symbolWarningLogged&&(this._symbolWarningLogged=!0,i.warn(`Graphic in layer ${this.layer.id} is not allowed to have a symbol, use a renderer instead`)),null;const r=this.rendererHasGeometryOperations?B(e,this.layer):e;let s;if(this.owner.getRenderingInfo&&(this.getRenderingInfoWithoutRenderer||null!=this.currentRenderer))s=this.owner.getRenderingInfo(r,this.currentRenderer,this._arcadeOnDemand);else{s={symbol:r.symbol||J(r.geometry)}}return null==s||null==s.symbol?(i&&!this._symbolWarningLogged&&(this._symbolWarningLogged=!0,i.warn(`Graphic in layer ${this.layer.id} has no symbol and will not render`)),null):s}_getRenderingInfoAsync(e,i){if(null==e.geometry)return Le&&!this._geometryWarningLogged&&(this._geometryWarningLogged=!0,Le.warn(`Graphic in layer ${this.layer.id} has no geometry and will not render`)),null;if(!this.graphicSymbolSupported&&null!=e.symbol)return Le&&!this._symbolWarningLogged&&(this._symbolWarningLogged=!0,Le.warn(`Graphic in layer ${this.layer.id} is not allowed to have a symbol, use a renderer instead`)),null;const t=this.rendererHasGeometryOperations?B(e,this.layer):e;return this.owner.getRenderingInfoAsync(t,this.currentRenderer,this._arcadeOnDemand,i)}_createGraphics3DSymbol(e,i){if(!this._hasValidSymbolCreationContext(e))return null;const t=this._getConvertedSymbol(e);if(!t)return null;let r;if(null!=i&&"backgroundFillSymbol"in i&&i.backgroundFillSymbol){const e=Q(i.backgroundFillSymbol,{ignoreDrivers:!0});null!=e.symbol&&"web-style"!==e.symbol.type&&"cim"!==e.symbol.type&&(r=e.symbol.symbolLayers)}const s=ne(t,this.symbolCreationContext,r);return s.load((()=>{const e=s.extentPadding;e>this.extentPadding&&this._set("extentPadding",e),this.notifyChange("averageSymbolComplexity")}),(()=>{})),s}getOrCreateGraphics3DSymbol(e,i){let t=this._symbols.get(e.id);return void 0===t&&(t=e instanceof Ie?new oe(e,(e=>this._frameTask.schedule(e)),(e=>this._createGraphics3DSymbol(e,i))):this._createGraphics3DSymbol(e,i),this._symbols.set(e.id,t)),null!=t&&++t.referenced,t}trackGraphicState(e){return null==this._graphicStateTracking&&(this._graphicStateTracking=new le(this)),this._graphicStateTracking.add(e)}_addGraphics3DGraphic(e){this._usedMemory+=e.usedMemory,this.graphics3DGraphics.set(e.graphic.uid,e),this._numberOfGraphics++,e.isElevationSource&&(this._numberOfGraphicsProvidingElevation++,this.updateStageLayerElevationProvider()),this._updateLayerVisibility()}_removeGraphics3DGraphic(e,i,t=!1){this._usedMemory-=i,this.graphics3DGraphics.delete(e),this._numberOfGraphics--,t&&(this._numberOfGraphicsProvidingElevation--,this.updateStageLayerElevationProvider()),this._updateLayerVisibility()}_createGraphics3DGraphic(e,i){const t=i.graphic;if(this._graphicsWithoutSymbol.delete(t.uid),!this._symbols.has(e.symbol.id))return this.add([t]),null;if(this.graphics3DGraphics.has(t.uid))return null;const r=e.createGraphics3DGraphic(i);if(null==r)return null;this._addGraphics3DGraphic(r);const s=e.symbol.id;this._graphicsBySymbol.has(s)||this._graphicsBySymbol.set(s,new Map),this._graphicsBySymbol.get(s).set(t.uid,r);if(r.isDraped&&this._graphicsDrapedUids.add(t.uid),r.centroid=null,null!=t.geometry&&"point"!==t.geometry.type&&(r.centroid=he(t.geometry,this._viewSpatialReference)),this._updateUserVisibility(r),null!=this._scaleVisibility&&this._scaleVisibility.updateVisibility(r),null!=this._filterVisibility){const{defaultVisibility:e}=this._filterVisibility;r.setVisibilityFlag(X.GRAPHIC,ee.FILTER,e),e||this._filterVisibility.reapply()}this._deconflictor?.addGraphic(r),this._labeler?.addGraphic(r),this._objectStates?.addGraphic(r),this._deconflictor&&this.owner.view.deconflictor.setInitialIconVisibilityFlag(this,r),r.initialize(this.stageLayer,this.owner),null!=this._graphicStateTracking&&this._graphicStateTracking.addGraphic(r);const a=this._whenGraphics3DGraphicRequests[t.uid];return a&&(delete this._whenGraphics3DGraphicRequests[t.uid],a.resolve(r)),r}_abortRendererChange(){this._rendererChangeAbortController&&(this._rendererChangeAbortController.abort(),this._rendererChangeAbortController=null)}async rendererChange(e){if(this._abortRendererChange(),e!==this.currentRenderer)if(this._validateRenderer(e),null==e&&this._currentRendererChange(null,!1),q(e))if(null!=e&&e.arcadeRequired){const i=new AbortController;this._rendererChangeAbortController=i;const{arcadeUtils:t}=await this._ensureArcade();y(i);const r=t.hasGeometryOperations(e);r&&(await t.enableGeometryOperations(),y(i)),this.effectiveUpdatePolicy===fe.ASYNC?await this._frameTask.schedule((()=>this._currentRendererChange(e,r)),i.signal):this._currentRendererChange(e,r),this._rendererChangeAbortController=null}else if(this.effectiveUpdatePolicy===fe.ASYNC){const i=new AbortController;this._rendererChangeAbortController=i,await this._frameTask.schedule((()=>this._currentRendererChange(e,!1)),i.signal),this._rendererChangeAbortController=null}else this._currentRendererChange(e,!1);else this._currentRendererChange(e,!1)}async _ensureArcade(){return null==this._arcadeOnDemand?(this._arcadeOnDemand=await $(),this._arcadeOnDemand):this._arcadeOnDemand}_currentRendererChange(e,i){this.currentRenderer=e,this.rendererHasGeometryOperations=i,this.symbolCreationContext.arcade=this._arcadeOnDemand;const t=this.symbolCreationContext.renderer;if(e===t)return;if(this._symbolConversionCache.clear(),null==e)return this.symbolCreationContext.renderer=null,void this.recreateAllGraphicsAndSymbols();const r=x(t,e);this._updateUnchangedSymbolMappings(r,e,t),this.symbolCreationContext.renderer=e,null!=r&&("complete"===r.type?this.recreateAllGraphicsAndSymbols():"partial"===r.type&&(this._applyRendererDiff(r,e,t)?this._volatileGraphicsUpdated():this.recreateAllGraphicsAndSymbols()),this.notifyChange("averageSymbolComplexity"))}_diffHasSymbolChange(e){for(const i in e.diff)switch(i){case"visualVariables":case"defaultSymbol":case"uniqueValueInfos":break;case"uniqueValueGroups":case"authoringInfo":case"fieldDelimiter":delete e.diff[i];break;default:return!0}return!1}_applySymbolSetDiff(e,i,t){e=e||[],i=i||[];const r=[];for(const s of i){const i=this._graphicsBySymbol.get(s.id);i&&i.forEach(((a,n)=>{const o=a.graphic,l=this.layer instanceof W?this.layer:null,h=this._arcadeOnDemand;if(s===t.defaultSymbol&&t.getSymbol(B(o,l),{arcade:h})===t.defaultSymbol)return;const d=a.usedMemory;e.length||t.defaultSymbol?r.push(o):this._graphicsWithoutSymbol.set(n,o);const p=this.graphics3DGraphics.get(n);this._conditionalRemove(p,n),a.destroy(),i.delete(n),this._removeGraphics3DGraphic(n,d),this._updateLayerVisibility()})),this._whenSymbolRemoved.forAll((e=>e(s.id)))}(e.length||r.length)&&(this._graphicsWithoutSymbol.forEach((e=>r.push(e))),this._graphicsWithoutSymbol.clear(),this.add(r)),this._cleanupSymbols(),this._labeler&&this.owner.view.labeler.setDirty(),this.owner.view.deconflictor.setDirty()}_applyUniqueValueRendererDiff(e,i,t){const r=e.diff.defaultSymbol,a=e.diff.uniqueValueInfos;if(r||a){const n=a?a.added.map((e=>e.symbol)).filter(s):[],o=a?a.removed.map((e=>e.symbol)).filter(s):[];if(a)for(let e=0;e<a.changed.length;e++)n.push(a.changed[e].newValue.symbol),o.push(a.changed[e].oldValue.symbol);return r?(t.defaultSymbol&&o.push(t.defaultSymbol),i.defaultSymbol&&n.push(i.defaultSymbol)):t.defaultSymbol&&n.length&&o.push(i.defaultSymbol),this._applySymbolSetDiff(n,o,i),delete e.diff.defaultSymbol,delete e.diff.uniqueValueInfos,!0}return!1}_calculateUnchangedSymbolMapping(e,i,t){if("unique-value"!==i?.type||"unique-value"!==t?.type||null!=e&&"partial"!==e.type)return[];const r=e=>null!=e?e.id:null,s=e&&e.diff,a=s&&s.defaultSymbol,n=s&&s.uniqueValueInfos;let o;if(n)o=n.unchanged.map((e=>({oldId:r(e.oldValue.symbol),newId:r(e.newValue.symbol)})));else{o=[];for(const e of t.uniqueValueInfos??[]){const t=r(e.symbol),s=i.uniqueValueInfos?.find((i=>i.value===e.value));s&&t!==r(s.symbol)&&o.push({oldId:t,newId:r(s.symbol)})}}return!a&&t.defaultSymbol&&o.push({oldId:r(t.defaultSymbol),newId:r(i.defaultSymbol)}),o}_updateSymbolMapping(e,i){const t=null!=i&&i?"string"==typeof i?i:i.id:null;if(null==e||e===t)return;const r=this._graphicsBySymbol.get(e);this._graphicsBySymbol.delete(e),void 0!==r&&this._graphicsBySymbol.set(t,r);const s=this._symbols.get(e);if(void 0!==s&&(this._symbols.delete(e),this._symbols.set(t,s),null!=s)){const e="string"==typeof i?null:i;null!=e?s.symbol=e:s.symbol.id=t}}_updateUnchangedSymbolMappings(e,i,t){const r=this._calculateUnchangedSymbolMapping(e,i,t);for(const{oldId:s,newId:a}of r)this._updateSymbolMapping(s,a)}_applyRendererDiff(e,t,r){if(this._diffHasSymbolChange(e))return!1;if(t instanceof i&&r instanceof i&&this._applyUniqueValueRendererDiff(e,t,r)&&0===Object.keys(e.diff).length)return!0;for(const[i]of this._graphicsBySymbol){const r=this._symbols.get(i);if(null!=r)switch(r.applyRendererDiff(e,t)){case de.RecreateSymbol:this._recreateSymbol(i);break;case de.RecreateGraphics:this._recreateGraphicsForSymbol(i);case de.FastUpdate:}}return!0}opacityChange(){this.forEachGraphics3DSymbol(((e,i)=>e.globalPropertyChanged("opacity",i))),this._updateStageLayerVisibility()}_slicePlaneEnabledChange(e){e!==this.symbolCreationContext.slicePlaneEnabled&&(this.symbolCreationContext.slicePlaneEnabled=e,this.stageLayer.sliceable=e,this.forEachGraphics3DSymbol(((e,i)=>e.globalPropertyChanged("slicePlaneEnabled",i))),this._deconflictor&&this._deconflictor.slicePlaneEnabledChange(),this._labeler&&this._labeler.slicePlaneEnabledChange())}_physicalBasedRenderingChange(e){this.symbolCreationContext.physicalBasedRenderingEnabled=e,this.forEachGraphics3DSymbol(((e,i,t)=>{e.globalPropertyChanged("physicalBasedRenderingEnabled",i)||this._recreateSymbol(t)}))}_skipHighSymbolLoDsChange(e){this.symbolCreationContext.skipHighSymbolLods=e,this.forEachGraphics3DSymbol(((e,i,t)=>{e.globalPropertyChanged("skipHighSymbolLods",i)||this._recreateSymbol(t)}))}_pixelRatioChange(){this.forEachGraphics3DSymbol(((e,i,t)=>{e.globalPropertyChanged("pixelRatio",i)||this._recreateSymbol(t)}))}_signalUpdatingDuringAsyncLoadedGraphicsChange(){this._updatingPendingLoadedGraphicsChange&&this._updatingPendingLoadedGraphicsChange.remove(),this._updatingPendingLoadedGraphicsChange=S((()=>{this._updatingPendingLoadedGraphicsChange=null}))}setClippingExtent(e,i){const t=this.symbolCreationContext.clippingExtent,r=k();return ue(e,r,i)?this.symbolCreationContext.clippingExtent=F(L(),r):this.symbolCreationContext.clippingExtent=null,!T(this.symbolCreationContext.clippingExtent,t)}modifyGraphics3DGraphicVisibilities(e){if(this.destroyed)return;let i=!1;this.graphics3DGraphics.forEach((t=>{e(t)&&(i=!0)})),i&&(this.owner.view.labeler?.setDirty(),this.owner.view.deconflictor?.setDirty())}forEachGraphics3DSymbol(e){for(const[i,t]of this._symbols){if(null==t)return;e(t,this._graphicsBySymbol.get(i)||Me,i)}}updateAllGraphicsVisibility(){null!=this._filterVisibility&&this._filterVisibility.reapply(),this.modifyGraphics3DGraphicVisibilities((e=>{const i=this._updateUserVisibility(e),t=null!=this._scaleVisibility&&this._scaleVisibility.updateVisibility(e);return i||t}))}_hideAllGraphics(){this.modifyGraphics3DGraphicVisibilities((e=>e.setVisibilityFlag(X.GRAPHIC,ee.USER,!1)))}_validateRenderer(e){const i=Y(e,{geometryType:this.layer?.geometryType});if(i){const e=`Renderer for layer '${this.layer.title?`${this.layer.title}, `:""}, id:${this.layer.id}' is not supported in a SceneView`;Le.warn(e,i.message)}}_volatileGraphicsUpdated(){this._labeler?.reset(),this.stageLayer.shaderTransformationChanged(),this.notifyChange("updating")}_cleanupSymbols(){if(this._graphicsWaitingForSymbol.size>0||this._suspendSymbolCleanup)return;let e=!1;this._symbols.forEach(((i,t)=>{if(null==i||i.referenced>0)return;const r=this._graphicsBySymbol.get(t);r&&0!==r.size||(this._graphicsBySymbol.delete(t),this._symbols.delete(t),h(i),e=!0)})),e&&(this._recomputeExtentPadding(),this.notifyChange("averageSymbolComplexity"))}get test(){return{snapshotInternals:()=>({graphics:[...this.graphics3DGraphics.keys()].sort(),symbols:[...this._symbols.keys()].sort(),graphicsBySymbol:[...this._graphicsBySymbol.keys()].sort().map((e=>({symbolId:e,graphics:[...this._graphicsBySymbol.get(e).keys()].sort()}))),graphicsWithoutSymbol:[...this._graphicsWithoutSymbol.keys()].sort(),graphicsDrapedUids:[...this._graphicsDrapedUids].sort(),pendingUpdates:this._pendingUpdates}),symbols:this._symbols,filterVisibility:this._filterVisibility,numPending:this._pendingUpdates.size,forceUpdatePolicy:e=>{this._forcedUpdatePolicy=e}}}get performanceInfo(){return{visible:this.graphics3DGraphics.size,missing:this._graphicsWithoutSymbol.size,pending:this._pendingUpdates.size}}};var Fe;Ve.tmpVec=I(),e([w({readOnly:!0})],Ve.prototype,"computedExtent",void 0),e([w()],Ve.prototype,"currentRenderer",void 0),e([w()],Ve.prototype,"rendererHasGeometryOperations",void 0),e([w()],Ve.prototype,"_frameTask",void 0),e([w({readOnly:!0})],Ve.prototype,"_viewSpatialReference",null),e([w()],Ve.prototype,"_rendererChangeAbortController",void 0),e([w()],Ve.prototype,"_elevationInfoChangeAbortController",void 0),e([w()],Ve.prototype,"_initializeAbortController",void 0),e([w()],Ve.prototype,"_elevationAlignment",void 0),e([w()],Ve.prototype,"_scaleVisibility",void 0),e([w()],Ve.prototype,"_filterVisibility",void 0),e([w()],Ve.prototype,"_initializePromise",void 0),e([w()],Ve.prototype,"_spatialIndex",void 0),e([w({readOnly:!0})],Ve.prototype,"extentPadding",void 0),e([w()],Ve.prototype,"_updatingPendingLoadedGraphicsChange",void 0),e([w()],Ve.prototype,"_featureStore",void 0),e([w()],Ve.prototype,"_deconflictor",void 0),e([w()],Ve.prototype,"_labeler",void 0),e([w()],Ve.prototype,"_objectStates",void 0),e([w()],Ve.prototype,"_loadingSymbols",void 0),e([w()],Ve.prototype,"preferredUpdatePolicy",void 0),e([w()],Ve.prototype,"_forcedUpdatePolicy",void 0),e([w({readOnly:!0})],Ve.prototype,"effectiveUpdatePolicy",null),e([w({constructOnly:!0})],Ve.prototype,"elevationFeatureExpressionEnabled",void 0),e([w({constructOnly:!0})],Ve.prototype,"owner",void 0),e([w({constructOnly:!0})],Ve.prototype,"layer",void 0),e([w({constructOnly:!0})],Ve.prototype,"graphicSymbolSupported",void 0),e([w({constructOnly:!0})],Ve.prototype,"getRenderingInfoWithoutRenderer",void 0),e([w({constructOnly:!0})],Ve.prototype,"componentFactories",void 0),e([w({constructOnly:!0})],Ve.prototype,"setUidToIdOnAdd",void 0),e([w()],Ve.prototype,"featureStore",null),e([w()],Ve.prototype,"initializePromise",null),e([w()],Ve.prototype,"scaleVisibility",null),e([w()],Ve.prototype,"elevationAlignment",null),e([w()],Ve.prototype,"objectStates",null),e([w()],Ve.prototype,"filterVisibility",null),e([w({readOnly:!0})],Ve.prototype,"updating",null),e([w({readOnly:!0})],Ve.prototype,"running",null),e([w({readOnly:!0})],Ve.prototype,"suspendedOrOutsideOfView",null),e([w({readOnly:!0,dependsOn:[]})],Ve.prototype,"updatingRemaining",null),e([w({readOnly:!0,dependsOn:["owner.view.qualitySettings.graphics3D.maxTotalNumberOfPrimitives","owner.view.qualitySettings.graphics3D.maxTotalNumberOfFeatures","averageSymbolComplexity"]})],Ve.prototype,"displayFeatureLimit",null),e([w({readOnly:!0,dependsOn:[]})],Ve.prototype,"averageSymbolComplexity",null),e([w({constructOnly:!0})],Ve.prototype,"hasZ",void 0),e([w({constructOnly:!0})],Ve.prototype,"hasM",void 0),e([w()],Ve.prototype,"_objectIdField",null),Ve=Ue=e([G(je)],Ve),function(e){e[e.NEW=0]="NEW",e[e.LOADING=1]="LOADING",e[e.READY=2]="READY",e[e.REJECTED=3]="REJECTED"}(Fe||(Fe={}));class Te{constructor(){this.add=null,this.renderingInfo=null,this.state=Fe.NEW,this.abortController=null,this.remove=null}clear(){this.add=null,this.renderingInfo=null,this.state=Fe.NEW,this.abortController=null,this.remove=null}}const ke=10,ze=I(),We=I(),Me=new Map;export{Ve as Graphics3DCore};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import t from"../../../../core/Accessor.js";import i from"../../../../core/Evented.js";import r from"../../../../core/Handles.js";import{destroyMaybe as s}from"../../../../core/maybe.js";import{watch as a}from"../../../../core/reactiveUtils.js";import{property as n}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import{subclass as o}from"../../../../core/accessorSupport/decorators/subclass.js";import{ExtentSet as h}from"./ExtentSet.js";import{UpdatePolicy as p}from"../../webgl-engine/lib/UpdatePolicy.js";import{TaskPriority as d}from"../../../support/Scheduler.js";let c=class extends t{constructor(e){super(e),this._dirtyExtents=new h,this._globalDirty=!1,this._averageExtentUpdateSize=0,this._dirtyGraphicsSet=new Set,this._handles=new r,this._updateElevation=!1,this.graphicsCoreOwner=null,this.graphicsCore=null,this.events=new i}initialize(){const e=this.elevationProvider,t=this.graphicsCoreOwner.view.resourceController.scheduler;this._handles.add([e.on("elevation-change",(e=>this._elevationChanged(e))),a((()=>this.graphicsCoreOwner.suspended),(()=>this._suspendedChange())),t.registerTask(d.ELEVATION_ALIGNMENT,this)])}destroy(){this._dirtyGraphicsSet.clear(),this._handles=s(this._handles),this.graphicsCoreOwner=null,this.graphicsCore=null,this.queryGraphicUIDsInExtent=null,this.elevationProvider=null}clear(){this._dirtyGraphicsSet.clear(),this.notifyChange("updating")}_suspendedChange(){!0===this.graphicsCoreOwner.suspended?this._updateElevation=!1:!1===this.graphicsCoreOwner.suspended&&this._updateElevation&&(this._globalDirty=!0,this.notifyChange("updating"))}elevationInfoChange(){this._globalDirty=!0,this.notifyChange("updating")}get updating(){return this.running}get running(){return this._dirtyGraphicsSet.size>0||this._dirtyExtents&&!this._dirtyExtents.empty||this._globalDirty}get updatingRemaining(){return this._dirtyGraphicsSet.size+this._dirtyExtents.size*this._averageExtentUpdateSize}runTask(e){for(this._globalDirty&&(this._markAllGraphicsElevationDirty(),this._globalDirty=!1,e.madeProgress()),e.run((()=>this._dirtyExtents.merge(e)));this.running&&!e.done;)this._updateDirtyGraphics(e),this._updateDirtyExtents(e);this.notifyChange("updating")}_updateDirtyGraphics(e){const t=this.graphicsCoreOwner.view.renderCoordsHelper,i=this.graphicsCore.effectiveUpdatePolicy===p.ASYNC;for(const r of this._dirtyGraphicsSet.keys()){const s=this.graphicsCore.getGraphics3DGraphicById(r);if(this._dirtyGraphicsSet.delete(r),null!=s&&(s.alignWithElevation(this.elevationProvider,t,i),this.graphicsCoreOwner.view.deconflictor.setDirty(),e.madeProgress()),e.done)return}}_updateDirtyExtents(e){for(;!this._dirtyExtents.empty&&!e.done;){const t=this._dirtyExtents.pop(),i=this.elevationProvider.spatialReference;this.events.emit("invalidate-elevation",{extent:t,spatialReference:i});const r=this._dirtyGraphicsSet.size;this.queryGraphicUIDsInExtent(t,i,(e=>{const t=this.graphicsCore.getGraphics3DGraphicById(e);null!=t&&t.needsElevationUpdates()&&this._dirtyGraphicsSet.add(e)})),this._averageExtentUpdateSize=.1*(this._dirtyGraphicsSet.size-r)+.9*this._averageExtentUpdateSize,e.madeProgress()}}_markAllGraphicsElevationDirty(){this._dirtyExtents.clear(),this._dirtyGraphicsSet.clear(),this.graphicsCore.graphics3DGraphics.forEach(((e,t)=>this._dirtyGraphicsSet.add(t)))}_elevationChanged(e){if("scene"===e.context&&(!this.graphicsCore.layer.elevationInfo||"relative-to-scene"!==this.graphicsCore.layer.elevationInfo.mode))return;const{extent:t,spatialReference:i}=e;if(this.graphicsCoreOwner.suspended){if(!this._updateElevation){const e=this.graphicsCore.computedExtent;e&&t[2]>e.xmin&&t[0]<e.xmax&&t[3]>e.ymin&&t[1]<e.ymax&&(this._updateElevation=!0)}this.events.emit("invalidate-elevation",{extent:t,spatialReference:i})}else t[0]===-1/0?this._globalDirty=!0:this._dirtyExtents.add(t),this.notifyChange("updating")}};e([n()],c.prototype,"graphicsCoreOwner",void 0),e([n()],c.prototype,"graphicsCore",void 0),e([n()],c.prototype,"queryGraphicUIDsInExtent",void 0),e([n()],c.prototype,"elevationProvider",void 0),e([n({readOnly:!0})],c.prototype,"updating",null),e([n({readOnly:!0})],c.prototype,"updatingRemaining",null),c=e([o("esri.views.3d.layers.graphics.Graphics3DElevationAlignment")],c);const l=c;export{l as default};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import t from"../../../../core/Accessor.js";import i from"../../../../core/Evented.js";import{watch as r}from"../../../../core/reactiveUtils.js";import{property as s}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import{subclass as a}from"../../../../core/accessorSupport/decorators/subclass.js";import{ExtentSet as n}from"./ExtentSet.js";import{UpdatePolicy as o}from"../../webgl-engine/lib/UpdatePolicy.js";import{TaskPriority as h}from"../../../support/Scheduler.js";let p=class extends t{constructor(e){super(e),this._dirtyExtents=new n,this._globalDirty=!1,this._averageExtentUpdateSize=0,this._dirtyGraphicsSet=new Set,this._updateElevation=!1,this.graphicsCoreOwner=null,this.graphicsCore=null,this.events=new i}initialize(){const e=this.elevationProvider,t=this.graphicsCoreOwner.view.resourceController.scheduler;this.addHandles([e.on("elevation-change",(e=>this._elevationChanged(e))),r((()=>this.graphicsCoreOwner.suspended),(()=>this._suspendedChange())),t.registerTask(h.ELEVATION_ALIGNMENT,this)])}destroy(){this._dirtyGraphicsSet.clear(),this.graphicsCoreOwner=null,this.graphicsCore=null,this.queryGraphicUIDsInExtent=null,this.elevationProvider=null}clear(){this._dirtyGraphicsSet.clear(),this.notifyChange("updating")}_suspendedChange(){!0===this.graphicsCoreOwner.suspended?this._updateElevation=!1:!1===this.graphicsCoreOwner.suspended&&this._updateElevation&&(this._globalDirty=!0,this.notifyChange("updating"))}elevationInfoChange(){this._globalDirty=!0,this.notifyChange("updating")}get updating(){return this.running}get running(){return this._dirtyGraphicsSet.size>0||this._dirtyExtents&&!this._dirtyExtents.empty||this._globalDirty}get updatingRemaining(){return this._dirtyGraphicsSet.size+this._dirtyExtents.size*this._averageExtentUpdateSize}runTask(e){for(this._globalDirty&&(this._markAllGraphicsElevationDirty(),this._globalDirty=!1,e.madeProgress()),e.run((()=>this._dirtyExtents.merge(e)));this.running&&!e.done;)this._updateDirtyGraphics(e),this._updateDirtyExtents(e);this.notifyChange("updating")}_updateDirtyGraphics(e){const t=this.graphicsCoreOwner.view.renderCoordsHelper,i=this.graphicsCore.effectiveUpdatePolicy===o.ASYNC;for(const r of this._dirtyGraphicsSet.keys()){const s=this.graphicsCore.getGraphics3DGraphicById(r);if(this._dirtyGraphicsSet.delete(r),null!=s&&(s.alignWithElevation(this.elevationProvider,t,i),this.graphicsCoreOwner.view.deconflictor.setDirty(),e.madeProgress()),e.done)return}}_updateDirtyExtents(e){for(;!this._dirtyExtents.empty&&!e.done;){const t=this._dirtyExtents.pop(),i=this.elevationProvider.spatialReference;this.events.emit("invalidate-elevation",{extent:t,spatialReference:i});const r=this._dirtyGraphicsSet.size;this.queryGraphicUIDsInExtent(t,i,(e=>{const t=this.graphicsCore.getGraphics3DGraphicById(e);null!=t&&t.needsElevationUpdates()&&this._dirtyGraphicsSet.add(e)})),this._averageExtentUpdateSize=.1*(this._dirtyGraphicsSet.size-r)+.9*this._averageExtentUpdateSize,e.madeProgress()}}_markAllGraphicsElevationDirty(){this._dirtyExtents.clear(),this._dirtyGraphicsSet.clear(),this.graphicsCore.graphics3DGraphics.forEach(((e,t)=>this._dirtyGraphicsSet.add(t)))}_elevationChanged(e){if("scene"===e.context&&(!this.graphicsCore.layer.elevationInfo||"relative-to-scene"!==this.graphicsCore.layer.elevationInfo.mode))return;const{extent:t,spatialReference:i}=e;if(this.graphicsCoreOwner.suspended){if(!this._updateElevation){const e=this.graphicsCore.computedExtent;e&&t[2]>e.xmin&&t[0]<e.xmax&&t[3]>e.ymin&&t[1]<e.ymax&&(this._updateElevation=!0)}this.events.emit("invalidate-elevation",{extent:t,spatialReference:i})}else t[0]===-1/0?this._globalDirty=!0:this._dirtyExtents.add(t),this.notifyChange("updating")}};e([s()],p.prototype,"graphicsCoreOwner",void 0),e([s()],p.prototype,"graphicsCore",void 0),e([s()],p.prototype,"queryGraphicUIDsInExtent",void 0),e([s()],p.prototype,"elevationProvider",void 0),e([s({readOnly:!0})],p.prototype,"updating",null),e([s({readOnly:!0})],p.prototype,"updatingRemaining",null),p=e([a("esri.views.3d.layers.graphics.Graphics3DElevationAlignment")],p);const d=p;export{d as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../core/has.js";import e from"../../../../core/Error.js";import{clone as t}from"../../../../core/lang.js";import{getMetersPerVerticalUnitForSR as s}from"../../../../core/unitUtils.js";import{e as r}from"../../../../chunks/earcut.js";import{b as n}from"../../../../chunks/mat3.js";import{c as i}from"../../../../chunks/mat3f64.js";import{a as o,p as a}from"../../../../chunks/mat4.js";import{c as l}from"../../../../chunks/mat4f64.js";import{c,n as h,s as m,b as p,f as g,m as d}from"../../../../chunks/vec3.js";import{g as u,c as f}from"../../../../chunks/vec3f64.js";import{computeTranslationToOriginAndRotation as y}from"../../../../geometry/projection.js";import{create as b,empty as _,expandWithBuffer as x,intersectsClippingArea as j}from"../../../../geometry/support/aaBoundingBox.js";import{newDoubleArray as S}from"../../../../geometry/support/DoubleArray.js";import{newIndexArray as P,getZeroIndexArray as E}from"../../../../geometry/support/Indices.js";import{t as w}from"../../../../chunks/vec32.js";import{makeVertexCandidate as v,makeEdgeCandidate as C}from"../../../../layers/graphics/data/SnappingCandidate.js";import{getDriverAxisSizeValue as L}from"../../../../renderers/support/renderingInfoUtils.js";import{ViewingMode as O}from"../../../ViewingMode.js";import{needsElevationUpdates3D as I,SampleElevationInfo as M}from"./elevationAlignmentUtils.js";import{ElevationContext as A}from"./ElevationContext.js";import{Graphics3DObject3DGraphicLayer as z}from"./Graphics3DObject3DGraphicLayer.js";import{Graphics3DSymbolLayer as D}from"./Graphics3DSymbolLayer.js";import{validateSymbolLayerSize as R,computeCentroid as G}from"./graphicUtils.js";import{ApplyRendererDiffResult as B}from"./interfaces.js";import{geometryAsPolygon as U}from"./polygonUtils.js";import{createMaterial as T}from"../support/edgeUtils.js";import k from"../../support/debugFlags.js";import{SamplePosition as N}from"../../support/ElevationProvider.js";import{geometryToRenderInfo as V}from"../../support/renderInfoUtils/polygon.js";import{NormalType as H}from"../../webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js";import{Attribute as F}from"../../webgl-engine/lib/Attribute.js";import{CullFaceOptions as W}from"../../webgl-engine/lib/basicInterfaces.js";import{ContentObjectType as q}from"../../webgl-engine/lib/ContentObjectType.js";import{Geometry as Z}from"../../webgl-engine/lib/Geometry.js";import{isGeometryWithMapPositions as J}from"../../webgl-engine/lib/GeometryWithMapPositions.js";import{compressNormals as K}from"../../webgl-engine/lib/Normals.js";import{Object3D as Q}from"../../webgl-engine/lib/Object3D.js";import{VertexAttribute as X}from"../../webgl-engine/lib/VertexAttribute.js";import{DefaultMaterial as Y}from"../../webgl-engine/materials/DefaultMaterial.js";const $=["polygon","extent"];class ee extends D{constructor(e,t,s,r){super(e,t,s,r),this.ensureDrapedStatus(!1)}async doLoad(){if(!this._drivenProperties.size){const t=R(this._getSymbolSize());if(t)throw new e("graphics3dextrudesymbollayer:invalid-size",t)}const t=this.symbolLayer?.material?.color,s=this._getCombinedOpacityAndColor(t),r=u(s),n=s[3],i=n<1||this.needsDrivenTransparentPass,o={usePBR:this._context.physicalBasedRenderingEnabled,isSchematic:!0,diffuse:r,ambient:r,opacity:n,transparent:i,cullFace:i?W.None:W.Back,hasVertexColors:!0,hasSlicePlane:this._context.slicePlaneEnabled,castShadows:this.symbolLayer.castShadows,offsetTransparentBackfaces:!0,normalType:H.Compressed};this._material=new Y(o),this._bottomMaterial=new Y({...o,cullFace:W.Back}),this._context.stage.add(this._material),this._context.stage.add(this._bottomMaterial)}destroy(){super.destroy(),this._material&&(this._context.stage.remove(this._material),this._context.stage.remove(this._bottomMaterial))}createGraphics3DGraphic(e){const t=e.graphic;if(!this._validateGeometry(t.geometry,$,this.symbolLayer.type))return null;const s=this._getVertexOpacityAndColor(e.renderingInfo,255),r=this.setGraphicElevationContext(t,new A);return this._createAs3DShape(t,e.renderingInfo,s,r,t.uid)}layerOpacityChanged(e,t){const s=this.symbolLayer?.material?.color,r=this._getCombinedOpacity(s),n=r<1||this.needsDrivenTransparentPass;this._material.setParameters({opacity:r,transparent:n}),this._bottomMaterial.setParameters({opacity:r,transparent:n});const i=this._getLayerOpacity();e.forEach((e=>{const s=t(e);null!=s&&s.layerOpacityChanged(i,this._context.isAsync)}))}layerElevationInfoChanged(e,t){return this.updateGraphics3DGraphicElevationInfo(e,t,I)}slicePlaneEnabledChanged(e,t){return this._material.setParameters({hasSlicePlane:this._context.slicePlaneEnabled}),this._bottomMaterial.setParameters({hasSlicePlane:this._context.slicePlaneEnabled}),e.forEach((e=>{const s=t(e);null!=s&&s.slicePlaneEnabledChanged(this._context.slicePlaneEnabled,this._context.isAsync)})),!0}physicalBasedRenderingChanged(){return this._material.setParameters({usePBR:this._context.physicalBasedRenderingEnabled,isSchematic:!0}),this._bottomMaterial.setParameters({usePBR:this._context.physicalBasedRenderingEnabled,isSchematic:!0}),!0}_getExtrusionSize(e){let t;return t=e.size&&this._drivenProperties.size?L(e.size,2)??0:this._getSymbolSize(),t/=this._context.renderCoordsHelper.unitInMeters,t}applyRendererDiff(e,t){return this._drivenPropertiesChanged(t)?B.RecreateSymbol:B.RecreateGraphics}async queryForSnapping(e,r,n,i){const o=this._getExtrusionSize(n)*this._context.renderCoordsHelper.unitInMeters/s(r),{objectId:a,target:l}=e,c=t(l);switch(c.z=(c.z??0)+o,e.type){case"edge":{const{start:s,end:r}=e,n=t(s),i=t(r);return n.z=(n.z??0)+o,i.z=(i.z??0)+o,[C(a,c,1/0,n,i)]}case"vertex":return[v(a,c,1/0),C(a,l,1/0,l,c)];default:return[]}}_getSymbolSize(){return this.symbolLayer.size??1}_createAs3DShape(e,t,s,a,c){const h=U(e.geometry);if(null==h)return null;if(0===h.rings.length||!h.rings.some((e=>e.length>0)))return this._logGeometryValidationWarnings(h.rings,"rings","ExtrudeSymbol3DLayer"),null;const m=V(h,this._context.elevationProvider,this._context.renderCoordsHelper,a);this._logGeometryCreationWarnings(m,h.rings,"rings","ExtrudeSymbol3DLayer");const p=G(h);if(null==p)return null;const g=new Array,d=new Array,u=b(),E=l(),v=f(),C=this._context.renderCoordsHelper.viewingMode===O.Global;C||this._context.renderCoordsHelper.worldUpAtPosition(null,v),y(h.spatialReference,[p.x,p.y,0],E,this._context.renderCoordsHelper.spatialReference);const L=l();o(L,E);const M=i();n(M,L);const{polygons:A,mapPositions:D,position:R}=m;for(const n of A){const e=n.count;if(this._context.clippingExtent&&(_(u),x(u,n.mapPositions),!j(u,this._context.clippingExtent)))continue;const i=r(n.mapPositions,n.holeIndices,3);if(0===i.length)continue;const o=i.length,a=6*e,l=P(a+o),h=P(o),m=S(3*a),p=S(3*a),f=S(3*a),y=S(a);se(R,D,i,n,m,f,p,y,l,h,this._getExtrusionSize(t),v,C),w(m,m,L);const b=this._context.stage.renderView.getObjectAndLayerIdColor({graphicUid:c,layerUid:this._context.layer.uid}),E=new je(m,f,K(p),y);g.push(te(this._material,l,l.length-h.length,E,s,b),te(this._bottomMaterial,h,0,E,s,b)),d.push(E.heights)}if(0===g.length)return null;const B=new Q({geometries:g,layerUid:this._context.layer.uid,graphicUid:c,isElevationSource:!0});B.transformation=E;const k=T(this.symbolLayer,{opacity:this._getLayerOpacity()}),N=null!=k?{baseMaterial:this._material,edgeMaterials:[k],properties:{mergeGeometries:!0,hasSlicePlane:this._context.slicePlaneEnabled}}:null,H=new z(this,B,g,null,null,((e,t,s,r,n)=>de(e,t,s,r,n,d)),a,N);return H.alignedSampledElevation=m.sampledElevation,H.needsElevationUpdates=I(a.mode),H}}function te(e,t,s,r,n,i){const o=E(t.length),a=[[X.POSITION,new F(r.positions,3,!0)],[X.NORMALCOMPRESSED,new F(r.normals,2,!0)],[X.COLOR,new F(n,4,!0)]],l=[[X.POSITION,t],[X.NORMALCOMPRESSED,t],[X.COLOR,o]];return new Z(e,a,l,r.elevation,q.Mesh,i,s)}function se(e,t,s,r,n,i,o,a,l,c,h,m,p){const g=s.length/3;let d=0,u=2*r.count;re(e,t,r.index,r.count,s,0,g,n,i,o,a,l,c,u,h,m,p);let f=2*r.count;u=0,oe(n,i,a,o,d,r.pathLengths[0],r.count,f,l,u,h),f+=4*r.pathLengths[0],u+=2*r.pathLengths[0],d+=r.pathLengths[0];for(let y=1;y<r.pathLengths.length;++y)oe(n,i,a,o,d,r.pathLengths[y],r.count,f,l,u,h),f+=4*r.pathLengths[y],u+=2*r.pathLengths[y],d+=r.pathLengths[y]}function re(e,t,s,r,n,i,o,a,l,m,p,g,d,u,f,y,b){c(fe,y);const _=f>0?1:-1;let x=3*s,j=0,S=3*j,P=r,E=3*P;for(let c=0;c<r;++c)b&&(fe[0]=e[x],fe[1]=e[x+1],fe[2]=e[x+2],h(fe,fe)),a[S]=e[x],a[S+1]=e[x+1],a[S+2]=e[x+2],l[S]=t[x],l[S+1]=t[x+1],l[S+2]=t[x+2],m[S]=-_*fe[0],m[S+1]=-_*fe[1],m[S+2]=-_*fe[2],p[j]=0,a[E]=e[x]+f*fe[0],a[E+1]=e[x+1]+f*fe[1],a[E+2]=e[x+2]+f*fe[2],l[E]=t[x],l[E+1]=t[x+1],l[E+2]=t[x+2],m[E]=_*fe[0],m[E+1]=_*fe[1],m[E+2]=_*fe[2],p[P]=f,S+=3,E+=3,x+=3,j+=1,P+=1;x=3*i,S=0,E=3*u;const w=f<0?_e:be,v=f<0?be:_e;for(let c=0;c<o;++c)d[S]=n[x+w[0]],d[S+1]=n[x+w[1]],d[S+2]=n[x+w[2]],g[E]=n[x+v[0]]+r,g[E+1]=n[x+v[1]]+r,g[E+2]=n[x+v[2]]+r,S+=3,E+=3,x+=3}function ne(e,t,s,r,n,i,o){r[i]=r[o],o*=3,e[i*=3]=e[o],e[i+1]=e[o+1],e[i+2]=e[o+2],t[i]=t[o],t[i+1]=t[o+1],t[i+2]=t[o+2],s[i]=n[0],s[i+1]=n[1],s[i+2]=n[2]}const ie=f();function oe(e,t,s,r,n,i,o,a,l,c,h){let m=n,p=n+1,g=n+o,d=n+o+1,u=a,f=a+1,y=a+2*i,b=a+2*i+1;h<0&&(m=n+o+1,d=n),c*=3;for(let _=0;_<i;++_)_===i-1&&(h>0?(p=n,d=n+o):(p=n,m=n+o)),pe(e,m,p,g,ie),ne(e,t,r,s,ie,u,m),ne(e,t,r,s,ie,f,p),ne(e,t,r,s,ie,y,g),ne(e,t,r,s,ie,b,d),l[c++]=u,l[c++]=y,l[c++]=b,l[c++]=u,l[c++]=b,l[c++]=f,m++,p++,g++,d++,u+=2,f+=2,y+=2,b+=2}const ae=f(),le=f(),ce=f(),he=f(),me=f();function pe(e,t,s,r,n){t*=3,s*=3,r*=3,m(ae,e[t++],e[t++],e[t++]),m(le,e[s++],e[s++],e[s++]),m(ce,e[r++],e[r++],e[r++]),p(he,le,ae),p(me,ce,ae),g(n,me,he),h(n,n)}const ge=f();function de(e,t,s,r,n,i){const o=e.stageObject,c=o.geometries,h=c.length,p="absolute-height"!==t.mode;let g=0;const u=o.transformation,f=a(l(),u);for(let a=0;a<h;a+=2){const e=c[a];if(!J(e))continue;const t=e.getMutableAttribute(X.POSITION).data,l=i[a/2],h=new N(e.mapPositions),y=t.length/3;let b=0,_=!1,x=0;for(let i=0;i<y;i++){ge[0]=t[b],ge[1]=t[b+1],ge[2]=t[b+2],r(h,ye),p&&(x+=ye.sampledElevation),k.TESTS_DISABLE_OPTIMIZATIONS?(m(ue,h.array[h.offset],h.array[h.offset+1],ye.z+l[b/3]),null!=s&&n.toRenderCoords(ue,s,ue),d(ue,ue,f)):(m(ue,t[b],t[b+1],t[b+2]),d(ue,ue,u),n.setAltitude(ue,ye.z+l[b/3]),d(ue,ue,f)),t[b]=ue[0],t[b+1]=ue[1],t[b+2]=ue[2];const e=xe/n.unitInMeters;(Math.abs(ge[0]-t[b])>=e||Math.abs(ge[1]-t[b+1])>=e||Math.abs(ge[2]-t[b+2])>=e)&&(_=!0),h.offset+=3,b+=3}_&&(e.invalidateBoundingInfo(),o.geometryVertexAttrsUpdated(c[a]),c[a+1].invalidateBoundingInfo(),o.geometryVertexAttrsUpdated(c[a+1])),g+=x/y}return g/h}const ue=f(),fe=f(),ye=new M,be=[0,2,1],_e=[0,1,2],xe=.01;class je{constructor(e,t,s,r){this.positions=e,this.elevation=t,this.normals=s,this.heights=r}}export{ee as Graphics3DExtrudeSymbolLayer};
5
+ import"../../../../core/has.js";import e from"../../../../core/Error.js";import{clone as t}from"../../../../core/lang.js";import{getMetersPerVerticalUnitForSR as s}from"../../../../core/unitUtils.js";import{e as r}from"../../../../chunks/earcut.js";import{d as n}from"../../../../chunks/mat3.js";import{c as i}from"../../../../chunks/mat3f64.js";import{a as o,p as a}from"../../../../chunks/mat4.js";import{c as l}from"../../../../chunks/mat4f64.js";import{c,n as h,s as m,b as p,f as g,m as d}from"../../../../chunks/vec3.js";import{g as u,c as f}from"../../../../chunks/vec3f64.js";import{computeTranslationToOriginAndRotation as y}from"../../../../geometry/projection.js";import{create as b,empty as _,expandWithBuffer as x,intersectsClippingArea as j}from"../../../../geometry/support/aaBoundingBox.js";import{newDoubleArray as S}from"../../../../geometry/support/DoubleArray.js";import{newIndexArray as P,getZeroIndexArray as E}from"../../../../geometry/support/Indices.js";import{t as w}from"../../../../chunks/vec32.js";import{makeVertexCandidate as v,makeEdgeCandidate as C}from"../../../../layers/graphics/data/SnappingCandidate.js";import{getDriverAxisSizeValue as L}from"../../../../renderers/support/renderingInfoUtils.js";import{ViewingMode as O}from"../../../ViewingMode.js";import{needsElevationUpdates3D as I,SampleElevationInfo as M}from"./elevationAlignmentUtils.js";import{ElevationContext as A}from"./ElevationContext.js";import{Graphics3DObject3DGraphicLayer as z}from"./Graphics3DObject3DGraphicLayer.js";import{Graphics3DSymbolLayer as D}from"./Graphics3DSymbolLayer.js";import{validateSymbolLayerSize as R,computeCentroid as G}from"./graphicUtils.js";import{ApplyRendererDiffResult as B}from"./interfaces.js";import{geometryAsPolygon as U}from"./polygonUtils.js";import{createMaterial as T}from"../support/edgeUtils.js";import k from"../../support/debugFlags.js";import{SamplePosition as N}from"../../support/ElevationProvider.js";import{geometryToRenderInfo as V}from"../../support/renderInfoUtils/polygon.js";import{NormalType as H}from"../../webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js";import{Attribute as F}from"../../webgl-engine/lib/Attribute.js";import{CullFaceOptions as W}from"../../webgl-engine/lib/basicInterfaces.js";import{ContentObjectType as q}from"../../webgl-engine/lib/ContentObjectType.js";import{Geometry as Z}from"../../webgl-engine/lib/Geometry.js";import{isGeometryWithMapPositions as J}from"../../webgl-engine/lib/GeometryWithMapPositions.js";import{compressNormals as K}from"../../webgl-engine/lib/Normals.js";import{Object3D as Q}from"../../webgl-engine/lib/Object3D.js";import{VertexAttribute as X}from"../../webgl-engine/lib/VertexAttribute.js";import{DefaultMaterial as Y}from"../../webgl-engine/materials/DefaultMaterial.js";const $=["polygon","extent"];class ee extends D{constructor(e,t,s,r){super(e,t,s,r),this.ensureDrapedStatus(!1)}async doLoad(){if(!this._drivenProperties.size){const t=R(this._getSymbolSize());if(t)throw new e("graphics3dextrudesymbollayer:invalid-size",t)}const t=this.symbolLayer?.material?.color,s=this._getCombinedOpacityAndColor(t),r=u(s),n=s[3],i=n<1||this.needsDrivenTransparentPass,o={usePBR:this._context.physicalBasedRenderingEnabled,isSchematic:!0,diffuse:r,ambient:r,opacity:n,transparent:i,cullFace:i?W.None:W.Back,hasVertexColors:!0,hasSlicePlane:this._context.slicePlaneEnabled,castShadows:this.symbolLayer.castShadows,offsetTransparentBackfaces:!0,normalType:H.Compressed};this._material=new Y(o),this._bottomMaterial=new Y({...o,cullFace:W.Back}),this._context.stage.add(this._material),this._context.stage.add(this._bottomMaterial)}destroy(){super.destroy(),this._material&&(this._context.stage.remove(this._material),this._context.stage.remove(this._bottomMaterial))}createGraphics3DGraphic(e){const t=e.graphic;if(!this._validateGeometry(t.geometry,$,this.symbolLayer.type))return null;const s=this._getVertexOpacityAndColor(e.renderingInfo,255),r=this.setGraphicElevationContext(t,new A);return this._createAs3DShape(t,e.renderingInfo,s,r,t.uid)}layerOpacityChanged(e,t){const s=this.symbolLayer?.material?.color,r=this._getCombinedOpacity(s),n=r<1||this.needsDrivenTransparentPass;this._material.setParameters({opacity:r,transparent:n}),this._bottomMaterial.setParameters({opacity:r,transparent:n});const i=this._getLayerOpacity();e.forEach((e=>{const s=t(e);null!=s&&s.layerOpacityChanged(i,this._context.isAsync)}))}layerElevationInfoChanged(e,t){return this.updateGraphics3DGraphicElevationInfo(e,t,I)}slicePlaneEnabledChanged(e,t){return this._material.setParameters({hasSlicePlane:this._context.slicePlaneEnabled}),this._bottomMaterial.setParameters({hasSlicePlane:this._context.slicePlaneEnabled}),e.forEach((e=>{const s=t(e);null!=s&&s.slicePlaneEnabledChanged(this._context.slicePlaneEnabled,this._context.isAsync)})),!0}physicalBasedRenderingChanged(){return this._material.setParameters({usePBR:this._context.physicalBasedRenderingEnabled,isSchematic:!0}),this._bottomMaterial.setParameters({usePBR:this._context.physicalBasedRenderingEnabled,isSchematic:!0}),!0}_getExtrusionSize(e){let t;return t=e.size&&this._drivenProperties.size?L(e.size,2)??0:this._getSymbolSize(),t/=this._context.renderCoordsHelper.unitInMeters,t}applyRendererDiff(e,t){return this._drivenPropertiesChanged(t)?B.RecreateSymbol:B.RecreateGraphics}async queryForSnapping(e,r,n,i){const o=this._getExtrusionSize(n)*this._context.renderCoordsHelper.unitInMeters/s(r),{objectId:a,target:l}=e,c=t(l);switch(c.z=(c.z??0)+o,e.type){case"edge":{const{start:s,end:r}=e,n=t(s),i=t(r);return n.z=(n.z??0)+o,i.z=(i.z??0)+o,[C(a,c,1/0,n,i)]}case"vertex":return[v(a,c,1/0),C(a,l,1/0,l,c)];default:return[]}}_getSymbolSize(){return this.symbolLayer.size??1}_createAs3DShape(e,t,s,a,c){const h=U(e.geometry);if(null==h)return null;if(0===h.rings.length||!h.rings.some((e=>e.length>0)))return this._logGeometryValidationWarnings(h.rings,"rings","ExtrudeSymbol3DLayer"),null;const m=V(h,this._context.elevationProvider,this._context.renderCoordsHelper,a);this._logGeometryCreationWarnings(m,h.rings,"rings","ExtrudeSymbol3DLayer");const p=G(h);if(null==p)return null;const g=new Array,d=new Array,u=b(),E=l(),v=f(),C=this._context.renderCoordsHelper.viewingMode===O.Global;C||this._context.renderCoordsHelper.worldUpAtPosition(null,v),y(h.spatialReference,[p.x,p.y,0],E,this._context.renderCoordsHelper.spatialReference);const L=l();o(L,E);const M=i();n(M,L);const{polygons:A,mapPositions:D,position:R}=m;for(const n of A){const e=n.count;if(this._context.clippingExtent&&(_(u),x(u,n.mapPositions),!j(u,this._context.clippingExtent)))continue;const i=r(n.mapPositions,n.holeIndices,3);if(0===i.length)continue;const o=i.length,a=6*e,l=P(a+o),h=P(o),m=S(3*a),p=S(3*a),f=S(3*a),y=S(a);se(R,D,i,n,m,f,p,y,l,h,this._getExtrusionSize(t),v,C),w(m,m,L);const b=this._context.stage.renderView.getObjectAndLayerIdColor({graphicUid:c,layerUid:this._context.layer.uid}),E=new je(m,f,K(p),y);g.push(te(this._material,l,l.length-h.length,E,s,b),te(this._bottomMaterial,h,0,E,s,b)),d.push(E.heights)}if(0===g.length)return null;const B=new Q({geometries:g,layerUid:this._context.layer.uid,graphicUid:c,isElevationSource:!0});B.transformation=E;const k=T(this.symbolLayer,{opacity:this._getLayerOpacity()}),N=null!=k?{baseMaterial:this._material,edgeMaterials:[k],properties:{mergeGeometries:!0,hasSlicePlane:this._context.slicePlaneEnabled}}:null,H=new z(this,B,g,null,null,((e,t,s,r,n)=>de(e,t,s,r,n,d)),a,N);return H.alignedSampledElevation=m.sampledElevation,H.needsElevationUpdates=I(a.mode),H}}function te(e,t,s,r,n,i){const o=E(t.length),a=[[X.POSITION,new F(r.positions,3,!0)],[X.NORMALCOMPRESSED,new F(r.normals,2,!0)],[X.COLOR,new F(n,4,!0)]],l=[[X.POSITION,t],[X.NORMALCOMPRESSED,t],[X.COLOR,o]];return new Z(e,a,l,r.elevation,q.Mesh,i,s)}function se(e,t,s,r,n,i,o,a,l,c,h,m,p){const g=s.length/3;let d=0,u=2*r.count;re(e,t,r.index,r.count,s,0,g,n,i,o,a,l,c,u,h,m,p);let f=2*r.count;u=0,oe(n,i,a,o,d,r.pathLengths[0],r.count,f,l,u,h),f+=4*r.pathLengths[0],u+=2*r.pathLengths[0],d+=r.pathLengths[0];for(let y=1;y<r.pathLengths.length;++y)oe(n,i,a,o,d,r.pathLengths[y],r.count,f,l,u,h),f+=4*r.pathLengths[y],u+=2*r.pathLengths[y],d+=r.pathLengths[y]}function re(e,t,s,r,n,i,o,a,l,m,p,g,d,u,f,y,b){c(fe,y);const _=f>0?1:-1;let x=3*s,j=0,S=3*j,P=r,E=3*P;for(let c=0;c<r;++c)b&&(fe[0]=e[x],fe[1]=e[x+1],fe[2]=e[x+2],h(fe,fe)),a[S]=e[x],a[S+1]=e[x+1],a[S+2]=e[x+2],l[S]=t[x],l[S+1]=t[x+1],l[S+2]=t[x+2],m[S]=-_*fe[0],m[S+1]=-_*fe[1],m[S+2]=-_*fe[2],p[j]=0,a[E]=e[x]+f*fe[0],a[E+1]=e[x+1]+f*fe[1],a[E+2]=e[x+2]+f*fe[2],l[E]=t[x],l[E+1]=t[x+1],l[E+2]=t[x+2],m[E]=_*fe[0],m[E+1]=_*fe[1],m[E+2]=_*fe[2],p[P]=f,S+=3,E+=3,x+=3,j+=1,P+=1;x=3*i,S=0,E=3*u;const w=f<0?_e:be,v=f<0?be:_e;for(let c=0;c<o;++c)d[S]=n[x+w[0]],d[S+1]=n[x+w[1]],d[S+2]=n[x+w[2]],g[E]=n[x+v[0]]+r,g[E+1]=n[x+v[1]]+r,g[E+2]=n[x+v[2]]+r,S+=3,E+=3,x+=3}function ne(e,t,s,r,n,i,o){r[i]=r[o],o*=3,e[i*=3]=e[o],e[i+1]=e[o+1],e[i+2]=e[o+2],t[i]=t[o],t[i+1]=t[o+1],t[i+2]=t[o+2],s[i]=n[0],s[i+1]=n[1],s[i+2]=n[2]}const ie=f();function oe(e,t,s,r,n,i,o,a,l,c,h){let m=n,p=n+1,g=n+o,d=n+o+1,u=a,f=a+1,y=a+2*i,b=a+2*i+1;h<0&&(m=n+o+1,d=n),c*=3;for(let _=0;_<i;++_)_===i-1&&(h>0?(p=n,d=n+o):(p=n,m=n+o)),pe(e,m,p,g,ie),ne(e,t,r,s,ie,u,m),ne(e,t,r,s,ie,f,p),ne(e,t,r,s,ie,y,g),ne(e,t,r,s,ie,b,d),l[c++]=u,l[c++]=y,l[c++]=b,l[c++]=u,l[c++]=b,l[c++]=f,m++,p++,g++,d++,u+=2,f+=2,y+=2,b+=2}const ae=f(),le=f(),ce=f(),he=f(),me=f();function pe(e,t,s,r,n){t*=3,s*=3,r*=3,m(ae,e[t++],e[t++],e[t++]),m(le,e[s++],e[s++],e[s++]),m(ce,e[r++],e[r++],e[r++]),p(he,le,ae),p(me,ce,ae),g(n,me,he),h(n,n)}const ge=f();function de(e,t,s,r,n,i){const o=e.stageObject,c=o.geometries,h=c.length,p="absolute-height"!==t.mode;let g=0;const u=o.transformation,f=a(l(),u);for(let a=0;a<h;a+=2){const e=c[a];if(!J(e))continue;const t=e.getMutableAttribute(X.POSITION).data,l=i[a/2],h=new N(e.mapPositions),y=t.length/3;let b=0,_=!1,x=0;for(let i=0;i<y;i++){ge[0]=t[b],ge[1]=t[b+1],ge[2]=t[b+2],r(h,ye),p&&(x+=ye.sampledElevation),k.TESTS_DISABLE_OPTIMIZATIONS?(m(ue,h.array[h.offset],h.array[h.offset+1],ye.z+l[b/3]),null!=s&&n.toRenderCoords(ue,s,ue),d(ue,ue,f)):(m(ue,t[b],t[b+1],t[b+2]),d(ue,ue,u),n.setAltitude(ue,ye.z+l[b/3]),d(ue,ue,f)),t[b]=ue[0],t[b+1]=ue[1],t[b+2]=ue[2];const e=xe/n.unitInMeters;(Math.abs(ge[0]-t[b])>=e||Math.abs(ge[1]-t[b+1])>=e||Math.abs(ge[2]-t[b+2])>=e)&&(_=!0),h.offset+=3,b+=3}_&&(e.invalidateBoundingInfo(),o.geometryVertexAttrsUpdated(c[a]),c[a+1].invalidateBoundingInfo(),o.geometryVertexAttrsUpdated(c[a+1])),g+=x/y}return g/h}const ue=f(),fe=f(),ye=new M,be=[0,2,1],_e=[0,1,2],xe=.01;class je{constructor(e,t,s,r){this.positions=e,this.elevation=t,this.normals=s,this.heights=r}}export{ee as Graphics3DExtrudeSymbolLayer};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import t from"../../../../Graphic.js";import{XXH as i}from"../../../../arcade/functions/hash.js";import{neverReached as s}from"../../../../core/compilerUtils.js";import{HandleOwner as r}from"../../../../core/HandleOwner.js";import{destroyMaybe as n}from"../../../../core/maybe.js";import{logOnError as a}from"../../../../core/promiseUtils.js";import{watch as o,initial as l,when as p}from"../../../../core/reactiveUtils.js";import{property as u}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import{subclass as d}from"../../../../core/accessorSupport/decorators/subclass.js";import{diff as h}from"../../../../core/accessorSupport/diffUtils.js";import{canProject as c,project as m}from"../../../../geometry/support/webMercatorUtils.js";import{matchRandomRotationExpression as y}from"../../../../renderers/support/randomRotationExpression.js";import{getRenderingInfo as g,getRenderingInfoAsync as b}from"../../../../renderers/support/renderingInfoUtils.js";import f from"../../../../rest/support/Query.js";import{DrapeSourceType as E}from"../interfaces.js";import{SUSPEND_RESUME_EXTENT_OPTIMISM as C}from"./constants.js";import{Graphics3DCore as x}from"./Graphics3DCore.js";import v from"./Graphics3DElevationAlignment.js";import w from"./Graphics3DFrustumVisibility.js";import{Graphics3DObjectStates as V}from"./Graphics3DObjectStates.js";import j from"./Graphics3DScaleVisibility.js";import{enlargeExtent as S}from"./graphicUtils.js";import{attributeLookup as R}from"../support/attributeUtils.js";import{FeatureVisibilityFilter as O}from"../support/FeatureVisibilityFilter.js";import{Object3DState as I}from"../../webgl-engine/lib/basicInterfaces.js";import{UpdatePolicy as G}from"../../webgl-engine/lib/UpdatePolicy.js";let A=class extends r{constructor(e){super(e),this.type="graphics-3d",this._randomRotationRenderers=null,this.elevationFeatureExpressionEnabled=!1,this.scaleVisibilityEnabled=!1,this.filterVisibilityEnabled=!1,this.frustumVisibilityEnabled=!1,this.elevationAlignmentEnabled=!1,this.timeExtentEnabled=!1,this.setUidToIdOnAdd=!0,this.dataExtent=null,this.drapeSourceType=E.Features,this.preferredUpdatePolicy=G.ASYNC,this._suspendResumeExtent=null}initialize(){const e=this.owner,t=(this.filterVisibilityEnabled||this.timeExtentEnabled)&&"multipatch"!==e.layer.geometryType,i=new x({owner:this,layer:this.layer,preferredUpdatePolicy:this.preferredUpdatePolicy,elevationFeatureExpressionEnabled:this.elevationFeatureExpressionEnabled,graphicSymbolSupported:!1,hasZ:e.hasZ,hasM:e.hasM,setUidToIdOnAdd:this.setUidToIdOnAdd,componentFactories:{deconflictor:t=>e.view.deconflictor.addGraphicsOwner(t),labeler:(t,i)=>e.view.labeler.addGraphicsOwner(t,i),elevationAlignment:this.elevationAlignmentEnabled?(t,i)=>new v({graphicsCoreOwner:this,graphicsCore:t,queryGraphicUIDsInExtent:i,elevationProvider:e.view.elevationProvider}):null,scaleVisibility:this.scaleVisibilityEnabled?(t,i)=>new j({graphicsCoreOwner:this,layer:this.layer,queryGraphicUIDsInExtent:i,graphicsCore:t,basemapTerrain:e.view.basemapTerrain}):null,filterVisibility:t?t=>new O({context:{layerView:e,...t}}):null,objectStates:e=>new V(e)}});this._set("graphicsCore",i),this.frustumVisibilityEnabled&&this._set("frustumVisibility",new w({graphicsCoreOwner:this})),this.elevationAlignment&&this.updatingHandles.add((()=>this.layer.elevationInfo),((e,t)=>{h(e,t)&&this.updatingHandles.addPromise(this.graphicsCore.elevationInfoChange())})),this.updatingHandles.add((()=>this.layer.labelsVisible),(()=>this.graphicsCore.updateVisibilityInfo())),this.updatingHandles.add((()=>this.layer.labelingInfo),((e,t)=>{h(e,t)&&this.graphicsCore.updateLabelingInfo()})),this.updatingHandles.add((()=>this.preferredUpdatePolicy),(e=>this.graphicsCore.preferredUpdatePolicy=e)),this._set("initializePromise",this._initializeAsync()),this.updatingHandles.addPromise(this.initializePromise)}async _initializeAsync(){await a(this.graphicsCore.initializePromise);const e=this.owner;this.updatingHandles.add((()=>this.renderer),(e=>this.updatingHandles.addPromise(this.graphicsCore.rendererChange(e)))),this.updatingHandles.add((()=>e.fullOpacity),(()=>this.graphicsCore.opacityChange())),this._setupSuspendResumeExtent(),this.updateClippingExtent&&(this.updatingHandles.add((()=>e.view.clippingArea),(()=>this._updateClippingExtent())),this._updateClippingExtent()),this.graphicsCore.startCreateGraphics(),this.graphicsCore.labelsEnabled&&await a(this.graphicsCore.updateLabelingInfo())}destroy(){this.handles.removeAll(),this.updatingHandles.removeAll(),this._set("frustumVisibility",n(this.frustumVisibility)),this._set("graphicsCore",n(this.graphicsCore)),this._set("owner",null)}get layer(){return this.owner.layer}get renderer(){const{renderer:e,objectIdField:t}=this.layer;if(!e||!t||"heatmap"===e.type||!e.visualVariables)return e;const i=e.visualVariables.findIndex((e=>"rotation"===e.type&&null!=e.valueExpression&&y(e.valueExpression)===t&&(null==e.axis||"heading"===e.axis)&&"geographic"===e.rotationType));if(i<0)return e;const s=e.clone();return s.visualVariables.splice(i,1),this._randomRotationRenderers||(this._randomRotationRenderers=new WeakMap),this._randomRotationRenderers.set(s,t),s}get scaleVisibility(){return this.graphicsCore?.scaleVisibility}get filterVisibility(){return this.graphicsCore?.filterVisibility}get elevationAlignment(){return this.graphicsCore?.elevationAlignment}get objectStates(){return this.graphicsCore?.objectStates}get suspendResumeExtentMode(){return"suspendResumeExtentMode"in this.owner?this.owner.suspendResumeExtentMode:"computed"}get scaleVisibilitySuspended(){return null!=this.scaleVisibility&&this.scaleVisibility.suspended}get suspended(){return this.owner.suspended}get legendEnabled(){return null==this.frustumVisibility||!this.frustumVisibility.suspended}get suspendInfo(){const e={};return this.scaleVisibilitySuspended&&(e.outsideScaleRange=!0),null!=this.frustumVisibility&&this.frustumVisibility.suspended&&(e.outsideOfView=!0),e}get updating(){return!!(this.graphicsCore?.updating||null!=this.frustumVisibility&&this.frustumVisibility.updating||this.updatingHandles?.updating)}get updatingRemaining(){return this.graphicsCore?.updatingRemaining??0}get featureStore(){return this.graphicsCore?.featureStore}get view(){return this.owner.view}get loadedGraphics(){return this.owner.loadedGraphics}get fullOpacity(){return this.owner?.fullOpacity}get filter(){return"filter"in this.owner?this.owner.filter:null}get slicePlaneEnabled(){return this.owner.slicePlaneEnabled}get updatePolicy(){return this.owner.updatePolicy}get featureSpatialReference(){return"featureSpatialReference"in this.owner?this.owner.featureSpatialReference:this.owner.view.spatialReference}get graphics3DGraphics(){return this.graphicsCore?.graphics3DGraphics}get graphics3DGraphicsByObjectID(){return this.graphicsCore?.graphics3DGraphicsByObjectID}get symbolUpdateType(){return this.graphicsCore?.symbolUpdateType}get displayFeatureLimit(){const e=this.view.resourceController?.memoryController?.memoryFactor,t=this.graphicsCore?.displayFeatureLimit;if(null==e||1===e)return t;const i=Math.ceil(t.maximumNumberOfFeatures*e),s=Math.ceil(t.maximumTotalNumberOfFeatures*e),r=Math.ceil(t.minimumTotalNumberOfFeatures*e);return{...t,maximumNumberOfFeatures:i,maximumTotalNumberOfFeatures:s,minimumTotalNumberOfFeatures:r}}get usedMemory(){return this.graphicsCore?.usedMemory??0}get loadedFeatures(){return this.graphicsCore?.numberOfGraphics??0}get usedMemoryPerFeature(){return this.graphicsCore?.usedMemoryPerGraphic??0}get unprocessedMemoryEstimate(){return this.graphicsCore?.unprocessedMemoryEstimate??0}get performanceInfo(){return{core:this.graphicsCore.performanceInfo,elevationUpdating:this.elevationAlignment.updating,visibilityFrustum:null==this.frustumVisibility||!this.frustumVisibility.suspended,visibilityScale:!this.scaleVisibilitySuspended}}maskOccludee(e){const{set:t,handle:i}=this.objectStates.acquireSet(I.MaskOccludee,null);return this.objectStates.setUid(t,e.uid),i}highlight(e,i){if(e instanceof f){const{set:t,handle:s}=this.objectStates.acquireSet(I.Highlight,i);return this.owner.queryObjectIds(e).then((e=>this.objectStates.setObjectIds(t,e))),s}if("number"==typeof e||"string"==typeof e)return this.highlight([e],i);if(e instanceof t)return this.highlight([e],i);if("toArray"in e&&(e=e.toArray()),Array.isArray(e)&&e.length>0){if(e[0]instanceof t){const t=e;if(null==R(this.layer.fieldsIndex,t[0].attributes,i)){const e=t.map((e=>e.uid)),{set:i,handle:s}=this.objectStates.acquireSet(I.Highlight,null);return this.objectStates.setUids(i,e),s}e=t.map((e=>R(this.layer.fieldsIndex,e.attributes,i)))}if(Array.isArray(e)&&("number"==typeof e[0]||"string"==typeof e[0])){const t=e,{set:s,handle:r}=this.objectStates.acquireSet(I.Highlight,i);return this.objectStates.setObjectIds(s,t),r}}return U}resetObjectStates(){this.objectStates.reset()}whenGraphicBounds(e,t){return this.graphicsCore?.whenGraphicBounds(e,t)}computeAttachmentOrigin(e,t){return this.graphicsCore?.computeAttachmentOrigin(e,t)}notifyGraphicGeometryChanged(e){this.graphicsCore.notifyGraphicGeometryChanged(e)}notifyGraphicVisibilityChanged(e){this.graphicsCore.notifyGraphicVisibilityChanged(e)}getRenderingInfo(e,t,s){const r=g(e,{renderer:t,arcade:s});if(null!=r&&r.color){const e=r.color;e[0]=e[0]/255,e[1]=e[1]/255,e[2]=e[2]/255}if(null!=r&&null!=t&&this._randomRotationRenderers?.has(t)){const s=this._randomRotationRenderers.get(t),n=e.attributes[s],a=new i(0);a.updateFloatArray([n]),a.updateUint8Array([173]),r.heading=8.381e-8*a.digest()}return r}getRenderingInfoAsync(e,t,i,s){return b(e,{renderer:t,arcade:i,...s})}getSymbolLayerSize(e,t){return this.graphicsCore?.getSymbolLayerSize(e,t)}setObjectIdVisibility(e,t){this.graphicsCore?.setObjectIdVisibility(e,t)}refreshFilter(){null!=this.filterVisibility&&this.filterVisibility.reapply()}getGraphics3DGraphicByObjectId(e){return this.graphicsCore?.getGraphics3DGraphicByObjectId(e)}_updateClippingExtent(){const e=this.owner.view.clippingArea;this.graphicsCore.setClippingExtent(e,this.owner.view.spatialReference)&&(this.updateClippingExtent(e)||this.graphicsCore.recreateAllGraphics())}_setupSuspendResumeExtent(){(this.frustumVisibility||this.scaleVisibility)&&this.handles.add(o((()=>this.suspendResumeExtentMode),(()=>{switch(this.handles.remove(P),this.suspendResumeExtentMode){case"computed":this.handles.add([o((()=>this.graphicsCore.computedExtent),(e=>this._updateSuspendResumeExtent(e)),l),o((()=>this.graphicsCore.extentPadding),(()=>this._updateSuspendResumeExtent(this.graphicsCore.computedExtent)))],P);break;case"data":this.handles.add([p((()=>this.dataExtent),(e=>this._updateSuspendResumeExtent(e)),l),o((()=>this.graphicsCore.extentPadding),(()=>this._updateSuspendResumeExtent(this.dataExtent)))],P);break;default:s(this.suspendResumeExtentMode)}}),l))}_updateSuspendResumeExtent(e){e?this._suspendResumeExtentChanged(this._extentToSuspendResumeRect(e,this._suspendResumeExtent)):this._suspendResumeExtentChanged(null)}_extentToSuspendResumeRect(e,t){const i=this.owner.view.spatialReference;if(!e.spatialReference.equals(i)){if(!c(e,i))return;e=m(e,i)}return S(e,t,C,this.graphicsCore.extentPadding)}_suspendResumeExtentChanged(e){null!=this.frustumVisibility&&this.frustumVisibility.setExtent(e),null!=this.scaleVisibility&&this.scaleVisibility.setExtent(e)}};e([u()],A.prototype,"type",void 0),e([u({constructOnly:!0})],A.prototype,"owner",void 0),e([u()],A.prototype,"layer",null),e([u()],A.prototype,"renderer",null),e([u({constructOnly:!0})],A.prototype,"updateClippingExtent",void 0),e([u({constructOnly:!0})],A.prototype,"elevationFeatureExpressionEnabled",void 0),e([u({constructOnly:!0})],A.prototype,"graphicsCore",void 0),e([u({constructOnly:!0})],A.prototype,"scaleVisibilityEnabled",void 0),e([u({constructOnly:!0})],A.prototype,"filterVisibilityEnabled",void 0),e([u({constructOnly:!0})],A.prototype,"frustumVisibilityEnabled",void 0),e([u({constructOnly:!0})],A.prototype,"elevationAlignmentEnabled",void 0),e([u({constructOnly:!0})],A.prototype,"timeExtentEnabled",void 0),e([u({constructOnly:!0})],A.prototype,"setUidToIdOnAdd",void 0),e([u()],A.prototype,"scaleVisibility",null),e([u()],A.prototype,"filterVisibility",null),e([u()],A.prototype,"elevationAlignment",null),e([u({constructOnly:!0})],A.prototype,"frustumVisibility",void 0),e([u()],A.prototype,"objectStates",null),e([u()],A.prototype,"initializePromise",void 0),e([u()],A.prototype,"suspendResumeExtentMode",null),e([u()],A.prototype,"dataExtent",void 0),e([u()],A.prototype,"scaleVisibilitySuspended",null),e([u()],A.prototype,"suspended",null),e([u()],A.prototype,"legendEnabled",null),e([u()],A.prototype,"suspendInfo",null),e([u()],A.prototype,"updating",null),e([u()],A.prototype,"updatingRemaining",null),e([u()],A.prototype,"featureStore",null),e([u()],A.prototype,"view",null),e([u()],A.prototype,"loadedGraphics",null),e([u()],A.prototype,"fullOpacity",null),e([u()],A.prototype,"filter",null),e([u()],A.prototype,"slicePlaneEnabled",null),e([u()],A.prototype,"drapeSourceType",void 0),e([u()],A.prototype,"updatePolicy",null),e([u()],A.prototype,"preferredUpdatePolicy",void 0),e([u()],A.prototype,"displayFeatureLimit",null),A=e([d("esri.views.3d.layers.graphics.Graphics3DFeatureProcessor")],A);const _=A,P="suspendResumeExtentMode",U={remove(){},pause(){},resume(){}};export{_ as default};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import t from"../../../../Graphic.js";import{XXH as i}from"../../../../arcade/functions/hash.js";import s from"../../../../core/Accessor.js";import{neverReached as r}from"../../../../core/compilerUtils.js";import{makeHandle as n}from"../../../../core/handleUtils.js";import{destroyMaybe as a}from"../../../../core/maybe.js";import{logOnError as o}from"../../../../core/promiseUtils.js";import{watch as l,initial as p,when as u}from"../../../../core/reactiveUtils.js";import{property as d}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import{subclass as h}from"../../../../core/accessorSupport/decorators/subclass.js";import{diff as c}from"../../../../core/accessorSupport/diffUtils.js";import{WatchUpdatingTracking as m}from"../../../../core/support/WatchUpdatingTracking.js";import{canProject as y,project as g}from"../../../../geometry/support/webMercatorUtils.js";import{matchRandomRotationExpression as b}from"../../../../renderers/support/randomRotationExpression.js";import{getRenderingInfo as f,getRenderingInfoAsync as E}from"../../../../renderers/support/renderingInfoUtils.js";import C from"../../../../rest/support/Query.js";import{DrapeSourceType as x}from"../interfaces.js";import{SUSPEND_RESUME_EXTENT_OPTIMISM as v}from"./constants.js";import{Graphics3DCore as w}from"./Graphics3DCore.js";import V from"./Graphics3DElevationAlignment.js";import j from"./Graphics3DFrustumVisibility.js";import{Graphics3DObjectStates as S}from"./Graphics3DObjectStates.js";import R from"./Graphics3DScaleVisibility.js";import{enlargeExtent as O}from"./graphicUtils.js";import{attributeLookup as _}from"../support/attributeUtils.js";import{FeatureVisibilityFilter as I}from"../support/FeatureVisibilityFilter.js";import{Object3DState as G}from"../../webgl-engine/lib/basicInterfaces.js";import{UpdatePolicy as A}from"../../webgl-engine/lib/UpdatePolicy.js";let U=class extends s{constructor(e){super(e),this.type="graphics-3d",this._randomRotationRenderers=null,this._updatingHandles=new m,this.elevationFeatureExpressionEnabled=!1,this.scaleVisibilityEnabled=!1,this.filterVisibilityEnabled=!1,this.frustumVisibilityEnabled=!1,this.elevationAlignmentEnabled=!1,this.timeExtentEnabled=!1,this.setUidToIdOnAdd=!0,this.dataExtent=null,this.drapeSourceType=x.Features,this.preferredUpdatePolicy=A.ASYNC,this._suspendResumeExtent=null}initialize(){const e=this.owner,t=(this.filterVisibilityEnabled||this.timeExtentEnabled)&&"multipatch"!==e.layer.geometryType,i=new w({owner:this,layer:this.layer,preferredUpdatePolicy:this.preferredUpdatePolicy,elevationFeatureExpressionEnabled:this.elevationFeatureExpressionEnabled,graphicSymbolSupported:!1,hasZ:e.hasZ,hasM:e.hasM,setUidToIdOnAdd:this.setUidToIdOnAdd,componentFactories:{deconflictor:t=>e.view.deconflictor.addGraphicsOwner(t),labeler:(t,i)=>e.view.labeler.addGraphicsOwner(t,i),elevationAlignment:this.elevationAlignmentEnabled?(t,i)=>new V({graphicsCoreOwner:this,graphicsCore:t,queryGraphicUIDsInExtent:i,elevationProvider:e.view.elevationProvider}):null,scaleVisibility:this.scaleVisibilityEnabled?(t,i)=>new R({graphicsCoreOwner:this,layer:this.layer,queryGraphicUIDsInExtent:i,graphicsCore:t,basemapTerrain:e.view.basemapTerrain}):null,filterVisibility:t?t=>new I({context:{layerView:e,...t}}):null,objectStates:e=>new S(e)}});this._set("graphicsCore",i),this.frustumVisibilityEnabled&&this._set("frustumVisibility",new j({graphicsCoreOwner:this})),this.elevationAlignment&&this._updatingHandles.add((()=>this.layer.elevationInfo),((e,t)=>{c(e,t)&&this._updatingHandles.addPromise(this.graphicsCore.elevationInfoChange())})),this._updatingHandles.add((()=>this.layer.labelsVisible),(()=>this.graphicsCore.updateVisibilityInfo())),this._updatingHandles.add((()=>this.layer.labelingInfo),((e,t)=>{c(e,t)&&this.graphicsCore.updateLabelingInfo()})),this._updatingHandles.add((()=>this.preferredUpdatePolicy),(e=>this.graphicsCore.preferredUpdatePolicy=e)),this._set("initializePromise",this._initializeAsync()),this._updatingHandles.addPromise(this.initializePromise)}async _initializeAsync(){await o(this.graphicsCore.initializePromise);const e=this.owner;this._updatingHandles.add((()=>this.renderer),(e=>this._updatingHandles.addPromise(this.graphicsCore.rendererChange(e)))),this._updatingHandles.add((()=>e.fullOpacity),(()=>this.graphicsCore.opacityChange())),this._setupSuspendResumeExtent(),this.updateClippingExtent&&(this._updatingHandles.add((()=>e.view.clippingArea),(()=>this._updateClippingExtent())),this._updateClippingExtent()),this.graphicsCore.startCreateGraphics(),this.graphicsCore.labelsEnabled&&await o(this.graphicsCore.updateLabelingInfo())}destroy(){this.removeAllHandles(),this._updatingHandles.destroy(),this._set("frustumVisibility",a(this.frustumVisibility)),this._set("graphicsCore",a(this.graphicsCore)),this._set("owner",null)}get layer(){return this.owner.layer}get renderer(){const{renderer:e,objectIdField:t}=this.layer;if(!e||!t||"heatmap"===e.type||!e.visualVariables)return e;const i=e.visualVariables.findIndex((e=>"rotation"===e.type&&null!=e.valueExpression&&b(e.valueExpression)===t&&(null==e.axis||"heading"===e.axis)&&"geographic"===e.rotationType));if(i<0)return e;const s=e.clone();return s.visualVariables.splice(i,1),this._randomRotationRenderers||(this._randomRotationRenderers=new WeakMap),this._randomRotationRenderers.set(s,t),s}get scaleVisibility(){return this.graphicsCore?.scaleVisibility}get filterVisibility(){return this.graphicsCore?.filterVisibility}get elevationAlignment(){return this.graphicsCore?.elevationAlignment}get objectStates(){return this.graphicsCore?.objectStates}get suspendResumeExtentMode(){return"suspendResumeExtentMode"in this.owner?this.owner.suspendResumeExtentMode:"computed"}get scaleVisibilitySuspended(){return null!=this.scaleVisibility&&this.scaleVisibility.suspended}get suspended(){return this.owner.suspended}get legendEnabled(){return null==this.frustumVisibility||!this.frustumVisibility.suspended}get suspendInfo(){const e={};return this.scaleVisibilitySuspended&&(e.outsideScaleRange=!0),null!=this.frustumVisibility&&this.frustumVisibility.suspended&&(e.outsideOfView=!0),e}get updating(){return!!(this.graphicsCore?.updating||null!=this.frustumVisibility&&this.frustumVisibility.updating||this._updatingHandles.updating)}get updatingRemaining(){return this.graphicsCore?.updatingRemaining??0}get featureStore(){return this.graphicsCore?.featureStore}get view(){return this.owner.view}get loadedGraphics(){return this.owner.loadedGraphics}get fullOpacity(){return this.owner?.fullOpacity}get filter(){return"filter"in this.owner?this.owner.filter:null}get slicePlaneEnabled(){return this.owner.slicePlaneEnabled}get updatePolicy(){return this.owner.updatePolicy}get featureSpatialReference(){return"featureSpatialReference"in this.owner?this.owner.featureSpatialReference:this.owner.view.spatialReference}get graphics3DGraphics(){return this.graphicsCore?.graphics3DGraphics}get graphics3DGraphicsByObjectID(){return this.graphicsCore?.graphics3DGraphicsByObjectID}get symbolUpdateType(){return this.graphicsCore?.symbolUpdateType}get displayFeatureLimit(){const e=this.view.resourceController?.memoryController?.memoryFactor,t=this.graphicsCore?.displayFeatureLimit;if(null==e||1===e)return t;const i=Math.ceil(t.maximumNumberOfFeatures*e),s=Math.ceil(t.maximumTotalNumberOfFeatures*e),r=Math.ceil(t.minimumTotalNumberOfFeatures*e);return{...t,maximumNumberOfFeatures:i,maximumTotalNumberOfFeatures:s,minimumTotalNumberOfFeatures:r}}get usedMemory(){return this.graphicsCore?.usedMemory??0}get loadedFeatures(){return this.graphicsCore?.numberOfGraphics??0}get usedMemoryPerFeature(){return this.graphicsCore?.usedMemoryPerGraphic??0}get unprocessedMemoryEstimate(){return this.graphicsCore?.unprocessedMemoryEstimate??0}get performanceInfo(){return{core:this.graphicsCore.performanceInfo,elevationUpdating:this.elevationAlignment.updating,visibilityFrustum:null==this.frustumVisibility||!this.frustumVisibility.suspended,visibilityScale:!this.scaleVisibilitySuspended}}maskOccludee(e){const{set:t,handle:i}=this.objectStates.acquireSet(G.MaskOccludee,null);return this.objectStates.setUid(t,e.uid),i}highlight(e,i){if(e instanceof C){const{set:t,handle:s}=this.objectStates.acquireSet(G.Highlight,i);return this.owner.queryObjectIds(e).then((e=>this.objectStates.setObjectIds(t,e))),s}if("number"==typeof e||"string"==typeof e)return this.highlight([e],i);if(e instanceof t)return this.highlight([e],i);if("toArray"in e&&(e=e.toArray()),Array.isArray(e)&&e.length>0){if(e[0]instanceof t){const t=e;if(null==_(this.layer.fieldsIndex,t[0].attributes,i)){const e=t.map((e=>e.uid)),{set:i,handle:s}=this.objectStates.acquireSet(G.Highlight,null);return this.objectStates.setUids(i,e),s}e=t.map((e=>_(this.layer.fieldsIndex,e.attributes,i)))}if(Array.isArray(e)&&("number"==typeof e[0]||"string"==typeof e[0])){const t=e,{set:s,handle:r}=this.objectStates.acquireSet(G.Highlight,i);return this.objectStates.setObjectIds(s,t),r}}return n()}resetObjectStates(){this.objectStates.reset()}whenGraphicBounds(e,t){return this.graphicsCore?.whenGraphicBounds(e,t)}computeAttachmentOrigin(e,t){return this.graphicsCore?.computeAttachmentOrigin(e,t)}notifyGraphicGeometryChanged(e){this.graphicsCore.notifyGraphicGeometryChanged(e)}notifyGraphicVisibilityChanged(e){this.graphicsCore.notifyGraphicVisibilityChanged(e)}getRenderingInfo(e,t,s){const r=f(e,{renderer:t,arcade:s});if(null!=r&&r.color){const e=r.color;e[0]=e[0]/255,e[1]=e[1]/255,e[2]=e[2]/255}if(null!=r&&null!=t&&this._randomRotationRenderers?.has(t)){const s=this._randomRotationRenderers.get(t),n=e.attributes[s],a=new i(0);a.updateFloatArray([n]),a.updateUint8Array([173]),r.heading=8.381e-8*a.digest()}return r}getRenderingInfoAsync(e,t,i,s){return E(e,{renderer:t,arcade:i,...s})}getSymbolLayerSize(e,t){return this.graphicsCore?.getSymbolLayerSize(e,t)}setObjectIdVisibility(e,t){this.graphicsCore?.setObjectIdVisibility(e,t)}refreshFilter(){null!=this.filterVisibility&&this.filterVisibility.reapply()}getGraphics3DGraphicByObjectId(e){return this.graphicsCore?.getGraphics3DGraphicByObjectId(e)}_updateClippingExtent(){const e=this.owner.view.clippingArea;this.graphicsCore.setClippingExtent(e,this.owner.view.spatialReference)&&(this.updateClippingExtent(e)||this.graphicsCore.recreateAllGraphics())}_setupSuspendResumeExtent(){(this.frustumVisibility||this.scaleVisibility)&&this.addHandles(l((()=>this.suspendResumeExtentMode),(()=>{switch(this.removeHandles(F),this.suspendResumeExtentMode){case"computed":this.addHandles([l((()=>this.graphicsCore.computedExtent),(e=>this._updateSuspendResumeExtent(e)),p),l((()=>this.graphicsCore.extentPadding),(()=>this._updateSuspendResumeExtent(this.graphicsCore.computedExtent)))],F);break;case"data":this.addHandles([u((()=>this.dataExtent),(e=>this._updateSuspendResumeExtent(e)),p),l((()=>this.graphicsCore.extentPadding),(()=>this._updateSuspendResumeExtent(this.dataExtent)))],F);break;default:r(this.suspendResumeExtentMode)}}),p))}_updateSuspendResumeExtent(e){e?this._suspendResumeExtentChanged(this._extentToSuspendResumeRect(e,this._suspendResumeExtent)):this._suspendResumeExtentChanged(null)}_extentToSuspendResumeRect(e,t){const i=this.owner.view.spatialReference;if(!e.spatialReference.equals(i)){if(!y(e,i))return;e=g(e,i)}return O(e,t,v,this.graphicsCore.extentPadding)}_suspendResumeExtentChanged(e){null!=this.frustumVisibility&&this.frustumVisibility.setExtent(e),null!=this.scaleVisibility&&this.scaleVisibility.setExtent(e)}};e([d()],U.prototype,"type",void 0),e([d({constructOnly:!0})],U.prototype,"owner",void 0),e([d()],U.prototype,"layer",null),e([d()],U.prototype,"renderer",null),e([d({constructOnly:!0})],U.prototype,"updateClippingExtent",void 0),e([d({constructOnly:!0})],U.prototype,"elevationFeatureExpressionEnabled",void 0),e([d({constructOnly:!0})],U.prototype,"graphicsCore",void 0),e([d({constructOnly:!0})],U.prototype,"scaleVisibilityEnabled",void 0),e([d({constructOnly:!0})],U.prototype,"filterVisibilityEnabled",void 0),e([d({constructOnly:!0})],U.prototype,"frustumVisibilityEnabled",void 0),e([d({constructOnly:!0})],U.prototype,"elevationAlignmentEnabled",void 0),e([d({constructOnly:!0})],U.prototype,"timeExtentEnabled",void 0),e([d({constructOnly:!0})],U.prototype,"setUidToIdOnAdd",void 0),e([d()],U.prototype,"scaleVisibility",null),e([d()],U.prototype,"filterVisibility",null),e([d()],U.prototype,"elevationAlignment",null),e([d({constructOnly:!0})],U.prototype,"frustumVisibility",void 0),e([d()],U.prototype,"objectStates",null),e([d()],U.prototype,"initializePromise",void 0),e([d()],U.prototype,"suspendResumeExtentMode",null),e([d()],U.prototype,"dataExtent",void 0),e([d()],U.prototype,"scaleVisibilitySuspended",null),e([d()],U.prototype,"suspended",null),e([d()],U.prototype,"legendEnabled",null),e([d()],U.prototype,"suspendInfo",null),e([d()],U.prototype,"updating",null),e([d()],U.prototype,"updatingRemaining",null),e([d()],U.prototype,"featureStore",null),e([d()],U.prototype,"view",null),e([d()],U.prototype,"loadedGraphics",null),e([d()],U.prototype,"fullOpacity",null),e([d()],U.prototype,"filter",null),e([d()],U.prototype,"slicePlaneEnabled",null),e([d()],U.prototype,"drapeSourceType",void 0),e([d()],U.prototype,"updatePolicy",null),e([d()],U.prototype,"preferredUpdatePolicy",void 0),e([d()],U.prototype,"displayFeatureLimit",null),U=e([h("esri.views.3d.layers.graphics.Graphics3DFeatureProcessor")],U);const P=U,F="suspendResumeExtentMode";export{P as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import t from"../../../../core/Accessor.js";import s from"../../../../core/Handles.js";import{destroyMaybe as i}from"../../../../core/maybe.js";import{watch as r,sync as n,initial as o}from"../../../../core/reactiveUtils.js";import{property as a}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import{subclass as c}from"../../../../core/accessorSupport/decorators/subclass.js";import{getReferenceEllipsoid as h}from"../../../../geometry/ellipsoidUtils.js";import{FrustumExtentIntersection as p}from"../../support/FrustumExtentIntersection.js";import{TaskPriority as l,Task as u}from"../../../support/Scheduler.js";const d=1.2;let _=class extends t{constructor(e){super(e),this.suspended=!1,this._extent=null,this._extentIntersectionDirty=!0,this._isVisibleBelowSurfaceInternal=!1,this._handles=new s,this.graphicsCoreOwner=null,this.updating=!0}initialize(){const{graphicsCoreOwner:e}=this;this._extentIntersection=new p({renderCoordsHelper:e.view.renderCoordsHelper});const t=e.view,s=t.basemapTerrain,i=t.resourceController.scheduler;this._handles.add([t.on("resize",(()=>this._viewChange())),r((()=>t.state.camera),(()=>this._viewChange()),n),i.registerTask(l.FRUSTUM_VISIBILITY,this),r((()=>s.visibleElevationBounds),(()=>this._elevationBoundsChange()))]),"local"===t.viewingMode?this._isVisibleBelowSurface=!0:this._handles.add([r((()=>[s.baseOpacity,s.wireframe,t.map?.ground?.navigationConstraint?.type]),(()=>this._updateIsVisibleBelowSurface()),o)])}destroy(){this._set("graphicsCoreOwner",null),this._extent=null,this._extentIntersection=null,this._handles=i(this._handles)}_setDirty(){this.updating||this._set("updating",!0)}setExtent(e){this._extent=e,this._extentIntersectionDirty=!0,this._setDirty()}_viewChange(){this._setDirty()}_elevationBoundsChange(){this._setDirty(),this._extentIntersectionDirty=!0}set _isVisibleBelowSurface(e){this._isVisibleBelowSurfaceInternal=e,this._setDirty(),this._extentIntersectionDirty=!0}_updateIsVisibleBelowSurface(){const e=this.graphicsCoreOwner.view,t=e.basemapTerrain,s="local"===e.viewingMode,i="none"===e.map.ground?.navigationConstraint?.type;this._isVisibleBelowSurface=s||!t.opaque||i}_updateExtentIntersection(){if(!this._extentIntersectionDirty)return;this._extentIntersectionDirty=!1;const e=this.graphicsCoreOwner.view;let t;if(this._isVisibleBelowSurfaceInternal)t=-.3*h(e.spatialReference).radius;else{const{min:s,max:i}=e.basemapTerrain.visibleElevationBounds;t=s-Math.max(1,(i-s)*(d-1))}this._extentIntersection.update(this._extent,e.spatialReference,t)}get running(){return this.updating}runTask(e){if(this._set("updating",!1),!this._extent)return this._set("suspended",!1),u.YIELD;this._updateExtentIntersection();const t=this.graphicsCoreOwner.view.frustum,s=h(this.graphicsCoreOwner.view.spatialReference).radius;this._set("suspended",!this._extentIntersection.isVisibleInFrustum(t,s)),e.madeProgress()}};e([a({readOnly:!0})],_.prototype,"suspended",void 0),e([a({constructOnly:!0})],_.prototype,"graphicsCoreOwner",void 0),e([a({readOnly:!0})],_.prototype,"updating",void 0),_=e([c("esri.views.3d.layers.graphics.Graphics3DFrustumVisibility")],_);const m=_;export{m as default};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import t from"../../../../core/Accessor.js";import{watch as s,sync as i,initial as r}from"../../../../core/reactiveUtils.js";import{property as n}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import{subclass as o}from"../../../../core/accessorSupport/decorators/subclass.js";import{getReferenceEllipsoid as a}from"../../../../geometry/ellipsoidUtils.js";import{FrustumExtentIntersection as c}from"../../support/FrustumExtentIntersection.js";import{TaskPriority as p,Task as l}from"../../../support/Scheduler.js";const h=1.2;let u=class extends t{constructor(e){super(e),this.suspended=!1,this._extent=null,this._extentIntersectionDirty=!0,this._isVisibleBelowSurfaceInternal=!1,this.graphicsCoreOwner=null,this.updating=!0}initialize(){const{graphicsCoreOwner:e}=this;this._extentIntersection=new c({renderCoordsHelper:e.view.renderCoordsHelper});const t=e.view,n=t.basemapTerrain,o=t.resourceController.scheduler;this.addHandles([t.on("resize",(()=>this._viewChange())),s((()=>t.state.camera),(()=>this._viewChange()),i),o.registerTask(p.FRUSTUM_VISIBILITY,this),s((()=>n.visibleElevationBounds),(()=>this._elevationBoundsChange()))]),"local"===t.viewingMode?this._isVisibleBelowSurface=!0:this.addHandles([s((()=>[n.baseOpacity,n.wireframe,t.map?.ground?.navigationConstraint?.type]),(()=>this._updateIsVisibleBelowSurface()),r)])}destroy(){this._set("graphicsCoreOwner",null),this._extent=null,this._extentIntersection=null}_setDirty(){this.updating||this._set("updating",!0)}setExtent(e){this._extent=e,this._extentIntersectionDirty=!0,this._setDirty()}_viewChange(){this._setDirty()}_elevationBoundsChange(){this._setDirty(),this._extentIntersectionDirty=!0}set _isVisibleBelowSurface(e){this._isVisibleBelowSurfaceInternal=e,this._setDirty(),this._extentIntersectionDirty=!0}_updateIsVisibleBelowSurface(){const e=this.graphicsCoreOwner.view,t=e.basemapTerrain,s="local"===e.viewingMode,i="none"===e.map.ground?.navigationConstraint?.type;this._isVisibleBelowSurface=s||!t.opaque||i}_updateExtentIntersection(){if(!this._extentIntersectionDirty)return;this._extentIntersectionDirty=!1;const e=this.graphicsCoreOwner.view;let t;if(this._isVisibleBelowSurfaceInternal)t=-.3*a(e.spatialReference).radius;else{const{min:s,max:i}=e.basemapTerrain.visibleElevationBounds;t=s-Math.max(1,(i-s)*(h-1))}this._extentIntersection.update(this._extent,e.spatialReference,t)}get running(){return this.updating}runTask(e){if(this._set("updating",!1),!this._extent)return this._set("suspended",!1),l.YIELD;this._updateExtentIntersection();const t=this.graphicsCoreOwner.view.frustum,s=a(this.graphicsCoreOwner.view.spatialReference).radius;this._set("suspended",!this._extentIntersection.isVisibleInFrustum(t,s)),e.madeProgress()}};e([n({readOnly:!0})],u.prototype,"suspended",void 0),e([n({constructOnly:!0})],u.prototype,"graphicsCoreOwner",void 0),e([n({readOnly:!0})],u.prototype,"updating",void 0),u=e([o("esri.views.3d.layers.graphics.Graphics3DFrustumVisibility")],u);const d=u;export{d as default};