@arcgis/core 5.2.0-next.67 → 5.2.0-next.69

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 (443) hide show
  1. package/arcgisGlobal.d.ts +2 -0
  2. package/assets/components/assets/combobox/t9n/messages.ar.json +1 -1
  3. package/assets/components/assets/combobox/t9n/messages.bg.json +1 -1
  4. package/assets/components/assets/combobox/t9n/messages.bs.json +1 -1
  5. package/assets/components/assets/combobox/t9n/messages.ca.json +1 -1
  6. package/assets/components/assets/combobox/t9n/messages.cs.json +1 -1
  7. package/assets/components/assets/combobox/t9n/messages.da.json +1 -1
  8. package/assets/components/assets/combobox/t9n/messages.de.json +1 -1
  9. package/assets/components/assets/combobox/t9n/messages.el.json +1 -1
  10. package/assets/components/assets/combobox/t9n/messages.en.json +1 -1
  11. package/assets/components/assets/combobox/t9n/messages.es.json +1 -1
  12. package/assets/components/assets/combobox/t9n/messages.et.json +1 -1
  13. package/assets/components/assets/combobox/t9n/messages.fi.json +1 -1
  14. package/assets/components/assets/combobox/t9n/messages.fr.json +1 -1
  15. package/assets/components/assets/combobox/t9n/messages.he.json +1 -1
  16. package/assets/components/assets/combobox/t9n/messages.hr.json +1 -1
  17. package/assets/components/assets/combobox/t9n/messages.hu.json +1 -1
  18. package/assets/components/assets/combobox/t9n/messages.id.json +1 -1
  19. package/assets/components/assets/combobox/t9n/messages.it.json +1 -1
  20. package/assets/components/assets/combobox/t9n/messages.ja.json +1 -1
  21. package/assets/components/assets/combobox/t9n/messages.json +1 -1
  22. package/assets/components/assets/combobox/t9n/messages.ko.json +1 -1
  23. package/assets/components/assets/combobox/t9n/messages.lt.json +1 -1
  24. package/assets/components/assets/combobox/t9n/messages.lv.json +1 -1
  25. package/assets/components/assets/combobox/t9n/messages.nl.json +1 -1
  26. package/assets/components/assets/combobox/t9n/messages.no.json +1 -1
  27. package/assets/components/assets/combobox/t9n/messages.pl.json +1 -1
  28. package/assets/components/assets/combobox/t9n/messages.pt-BR.json +1 -1
  29. package/assets/components/assets/combobox/t9n/messages.pt-PT.json +1 -1
  30. package/assets/components/assets/combobox/t9n/messages.ro.json +1 -1
  31. package/assets/components/assets/combobox/t9n/messages.ru.json +1 -1
  32. package/assets/components/assets/combobox/t9n/messages.sk.json +1 -1
  33. package/assets/components/assets/combobox/t9n/messages.sl.json +1 -1
  34. package/assets/components/assets/combobox/t9n/messages.sr.json +1 -1
  35. package/assets/components/assets/combobox/t9n/messages.sv.json +1 -1
  36. package/assets/components/assets/combobox/t9n/messages.th.json +1 -1
  37. package/assets/components/assets/combobox/t9n/messages.tr.json +1 -1
  38. package/assets/components/assets/combobox/t9n/messages.uk.json +1 -1
  39. package/assets/components/assets/combobox/t9n/messages.vi.json +1 -1
  40. package/assets/components/assets/combobox/t9n/messages.zh-CN.json +1 -1
  41. package/assets/components/assets/combobox/t9n/messages.zh-HK.json +1 -1
  42. package/assets/components/assets/combobox/t9n/messages.zh-TW.json +1 -1
  43. package/assets/components/assets/icon/arcgisEnterprise16.json +1 -0
  44. package/assets/components/assets/icon/arcgisEnterprise24.json +1 -0
  45. package/assets/components/assets/icon/arcgisEnterprise32.json +1 -0
  46. package/assets/components/assets/icon/buildingIndex16.json +1 -0
  47. package/assets/components/assets/icon/buildingIndex24.json +1 -0
  48. package/assets/components/assets/icon/buildingIndex32.json +1 -0
  49. package/assets/components/assets/icon/fireIndex16.json +1 -0
  50. package/assets/components/assets/icon/fireIndex24.json +1 -0
  51. package/assets/components/assets/icon/fireIndex32.json +1 -0
  52. package/assets/components/assets/icon/geologyIndex16.json +1 -0
  53. package/assets/components/assets/icon/geologyIndex24.json +1 -0
  54. package/assets/components/assets/icon/geologyIndex32.json +1 -0
  55. package/assets/components/assets/icon/orientedImageryFullSuperimpose16.json +1 -0
  56. package/assets/components/assets/icon/orientedImageryFullSuperimpose24.json +1 -0
  57. package/assets/components/assets/icon/orientedImageryFullSuperimpose32.json +1 -0
  58. package/assets/components/assets/icon/orientedImageryHalfSuperimpose16.json +1 -0
  59. package/assets/components/assets/icon/orientedImageryHalfSuperimpose24.json +1 -0
  60. package/assets/components/assets/icon/orientedImageryHalfSuperimpose32.json +1 -0
  61. package/assets/components/assets/icon/orientedImagerySceneOnly16.json +1 -0
  62. package/assets/components/assets/icon/orientedImagerySceneOnly24.json +1 -0
  63. package/assets/components/assets/icon/orientedImagerySceneOnly32.json +1 -0
  64. package/assets/components/assets/icon/parquetFeatureLayer16.json +1 -0
  65. package/assets/components/assets/icon/parquetFeatureLayer24.json +1 -0
  66. package/assets/components/assets/icon/parquetFeatureLayer32.json +1 -0
  67. package/assets/components/assets/icon/publish32.json +1 -1
  68. package/assets/components/assets/icon/radarChart16.json +1 -0
  69. package/assets/components/assets/icon/radarChart24.json +1 -0
  70. package/assets/components/assets/icon/radarChart32.json +1 -0
  71. package/assets/components/assets/icon/returnToDefault16.json +1 -1
  72. package/assets/components/assets/icon/returnToDefault32.json +1 -1
  73. package/assets/components/assets/icon/smartSearch16.json +1 -0
  74. package/assets/components/assets/icon/smartSearch24.json +1 -0
  75. package/assets/components/assets/icon/smartSearch32.json +1 -0
  76. package/assets/components/assets/icon/snowIndex16.json +1 -0
  77. package/assets/components/assets/icon/snowIndex24.json +1 -0
  78. package/assets/components/assets/icon/snowIndex32.json +1 -0
  79. package/assets/components/assets/icon/soilAdjustedVegetationIndex16.json +1 -0
  80. package/assets/components/assets/icon/soilAdjustedVegetationIndex24.json +1 -0
  81. package/assets/components/assets/icon/soilAdjustedVegetationIndex32.json +1 -0
  82. package/assets/components/assets/icon/treeMap16.json +1 -0
  83. package/assets/components/assets/icon/treeMap24.json +1 -0
  84. package/assets/components/assets/icon/treeMap32.json +1 -0
  85. package/assets/components/assets/icon/userSave16.json +1 -0
  86. package/assets/components/assets/icon/userSave24.json +1 -0
  87. package/assets/components/assets/icon/userSave32.json +1 -0
  88. package/assets/components/assets/icon/vegetationIndex16.json +1 -0
  89. package/assets/components/assets/icon/vegetationIndex24.json +1 -0
  90. package/assets/components/assets/icon/vegetationIndex32.json +1 -0
  91. package/assets/components/assets/icon/weatherRadar16.json +1 -0
  92. package/assets/components/assets/icon/weatherRadar24.json +1 -0
  93. package/assets/components/assets/icon/weatherRadar32.json +1 -0
  94. package/assets/components/assets/input/t9n/messages.ar.json +1 -1
  95. package/assets/components/assets/input/t9n/messages.bg.json +1 -1
  96. package/assets/components/assets/input/t9n/messages.bs.json +1 -1
  97. package/assets/components/assets/input/t9n/messages.ca.json +1 -1
  98. package/assets/components/assets/input/t9n/messages.cs.json +1 -1
  99. package/assets/components/assets/input/t9n/messages.da.json +1 -1
  100. package/assets/components/assets/input/t9n/messages.de.json +1 -1
  101. package/assets/components/assets/input/t9n/messages.el.json +1 -1
  102. package/assets/components/assets/input/t9n/messages.en.json +1 -1
  103. package/assets/components/assets/input/t9n/messages.es.json +1 -1
  104. package/assets/components/assets/input/t9n/messages.et.json +1 -1
  105. package/assets/components/assets/input/t9n/messages.fi.json +1 -1
  106. package/assets/components/assets/input/t9n/messages.fr.json +1 -1
  107. package/assets/components/assets/input/t9n/messages.he.json +1 -1
  108. package/assets/components/assets/input/t9n/messages.hr.json +1 -1
  109. package/assets/components/assets/input/t9n/messages.hu.json +1 -1
  110. package/assets/components/assets/input/t9n/messages.id.json +1 -1
  111. package/assets/components/assets/input/t9n/messages.it.json +1 -1
  112. package/assets/components/assets/input/t9n/messages.ja.json +1 -1
  113. package/assets/components/assets/input/t9n/messages.json +1 -1
  114. package/assets/components/assets/input/t9n/messages.ko.json +1 -1
  115. package/assets/components/assets/input/t9n/messages.lt.json +1 -1
  116. package/assets/components/assets/input/t9n/messages.lv.json +1 -1
  117. package/assets/components/assets/input/t9n/messages.nl.json +1 -1
  118. package/assets/components/assets/input/t9n/messages.no.json +1 -1
  119. package/assets/components/assets/input/t9n/messages.pl.json +1 -1
  120. package/assets/components/assets/input/t9n/messages.pt-BR.json +1 -1
  121. package/assets/components/assets/input/t9n/messages.pt-PT.json +1 -1
  122. package/assets/components/assets/input/t9n/messages.ro.json +1 -1
  123. package/assets/components/assets/input/t9n/messages.ru.json +1 -1
  124. package/assets/components/assets/input/t9n/messages.sk.json +1 -1
  125. package/assets/components/assets/input/t9n/messages.sl.json +1 -1
  126. package/assets/components/assets/input/t9n/messages.sr.json +1 -1
  127. package/assets/components/assets/input/t9n/messages.sv.json +1 -1
  128. package/assets/components/assets/input/t9n/messages.th.json +1 -1
  129. package/assets/components/assets/input/t9n/messages.tr.json +1 -1
  130. package/assets/components/assets/input/t9n/messages.uk.json +1 -1
  131. package/assets/components/assets/input/t9n/messages.vi.json +1 -1
  132. package/assets/components/assets/input/t9n/messages.zh-CN.json +1 -1
  133. package/assets/components/assets/input/t9n/messages.zh-HK.json +1 -1
  134. package/assets/components/assets/input/t9n/messages.zh-TW.json +1 -1
  135. package/assets/components/assets/input-date-picker/t9n/messages.ar.json +1 -1
  136. package/assets/components/assets/input-date-picker/t9n/messages.bg.json +1 -1
  137. package/assets/components/assets/input-date-picker/t9n/messages.bs.json +1 -1
  138. package/assets/components/assets/input-date-picker/t9n/messages.ca.json +1 -1
  139. package/assets/components/assets/input-date-picker/t9n/messages.cs.json +1 -1
  140. package/assets/components/assets/input-date-picker/t9n/messages.da.json +1 -1
  141. package/assets/components/assets/input-date-picker/t9n/messages.de.json +1 -1
  142. package/assets/components/assets/input-date-picker/t9n/messages.el.json +1 -1
  143. package/assets/components/assets/input-date-picker/t9n/messages.en.json +1 -1
  144. package/assets/components/assets/input-date-picker/t9n/messages.es.json +1 -1
  145. package/assets/components/assets/input-date-picker/t9n/messages.et.json +1 -1
  146. package/assets/components/assets/input-date-picker/t9n/messages.fi.json +1 -1
  147. package/assets/components/assets/input-date-picker/t9n/messages.fr.json +1 -1
  148. package/assets/components/assets/input-date-picker/t9n/messages.he.json +1 -1
  149. package/assets/components/assets/input-date-picker/t9n/messages.hr.json +1 -1
  150. package/assets/components/assets/input-date-picker/t9n/messages.hu.json +1 -1
  151. package/assets/components/assets/input-date-picker/t9n/messages.id.json +1 -1
  152. package/assets/components/assets/input-date-picker/t9n/messages.it.json +1 -1
  153. package/assets/components/assets/input-date-picker/t9n/messages.ja.json +1 -1
  154. package/assets/components/assets/input-date-picker/t9n/messages.json +1 -1
  155. package/assets/components/assets/input-date-picker/t9n/messages.ko.json +1 -1
  156. package/assets/components/assets/input-date-picker/t9n/messages.lt.json +1 -1
  157. package/assets/components/assets/input-date-picker/t9n/messages.lv.json +1 -1
  158. package/assets/components/assets/input-date-picker/t9n/messages.nl.json +1 -1
  159. package/assets/components/assets/input-date-picker/t9n/messages.no.json +1 -1
  160. package/assets/components/assets/input-date-picker/t9n/messages.pl.json +1 -1
  161. package/assets/components/assets/input-date-picker/t9n/messages.pt-BR.json +1 -1
  162. package/assets/components/assets/input-date-picker/t9n/messages.pt-PT.json +1 -1
  163. package/assets/components/assets/input-date-picker/t9n/messages.ro.json +1 -1
  164. package/assets/components/assets/input-date-picker/t9n/messages.ru.json +1 -1
  165. package/assets/components/assets/input-date-picker/t9n/messages.sk.json +1 -1
  166. package/assets/components/assets/input-date-picker/t9n/messages.sl.json +1 -1
  167. package/assets/components/assets/input-date-picker/t9n/messages.sr.json +1 -1
  168. package/assets/components/assets/input-date-picker/t9n/messages.sv.json +1 -1
  169. package/assets/components/assets/input-date-picker/t9n/messages.th.json +1 -1
  170. package/assets/components/assets/input-date-picker/t9n/messages.tr.json +1 -1
  171. package/assets/components/assets/input-date-picker/t9n/messages.uk.json +1 -1
  172. package/assets/components/assets/input-date-picker/t9n/messages.vi.json +1 -1
  173. package/assets/components/assets/input-date-picker/t9n/messages.zh-CN.json +1 -1
  174. package/assets/components/assets/input-date-picker/t9n/messages.zh-HK.json +1 -1
  175. package/assets/components/assets/input-date-picker/t9n/messages.zh-TW.json +1 -1
  176. package/assets/components/assets/input-number/t9n/messages.ar.json +1 -1
  177. package/assets/components/assets/input-number/t9n/messages.bg.json +1 -1
  178. package/assets/components/assets/input-number/t9n/messages.bs.json +1 -1
  179. package/assets/components/assets/input-number/t9n/messages.ca.json +1 -1
  180. package/assets/components/assets/input-number/t9n/messages.cs.json +1 -1
  181. package/assets/components/assets/input-number/t9n/messages.da.json +1 -1
  182. package/assets/components/assets/input-number/t9n/messages.de.json +1 -1
  183. package/assets/components/assets/input-number/t9n/messages.el.json +1 -1
  184. package/assets/components/assets/input-number/t9n/messages.en.json +1 -1
  185. package/assets/components/assets/input-number/t9n/messages.es.json +1 -1
  186. package/assets/components/assets/input-number/t9n/messages.et.json +1 -1
  187. package/assets/components/assets/input-number/t9n/messages.fi.json +1 -1
  188. package/assets/components/assets/input-number/t9n/messages.fr.json +1 -1
  189. package/assets/components/assets/input-number/t9n/messages.he.json +1 -1
  190. package/assets/components/assets/input-number/t9n/messages.hr.json +1 -1
  191. package/assets/components/assets/input-number/t9n/messages.hu.json +1 -1
  192. package/assets/components/assets/input-number/t9n/messages.id.json +1 -1
  193. package/assets/components/assets/input-number/t9n/messages.it.json +1 -1
  194. package/assets/components/assets/input-number/t9n/messages.ja.json +1 -1
  195. package/assets/components/assets/input-number/t9n/messages.json +1 -1
  196. package/assets/components/assets/input-number/t9n/messages.ko.json +1 -1
  197. package/assets/components/assets/input-number/t9n/messages.lt.json +1 -1
  198. package/assets/components/assets/input-number/t9n/messages.lv.json +1 -1
  199. package/assets/components/assets/input-number/t9n/messages.nl.json +1 -1
  200. package/assets/components/assets/input-number/t9n/messages.no.json +1 -1
  201. package/assets/components/assets/input-number/t9n/messages.pl.json +1 -1
  202. package/assets/components/assets/input-number/t9n/messages.pt-BR.json +1 -1
  203. package/assets/components/assets/input-number/t9n/messages.pt-PT.json +1 -1
  204. package/assets/components/assets/input-number/t9n/messages.ro.json +1 -1
  205. package/assets/components/assets/input-number/t9n/messages.ru.json +1 -1
  206. package/assets/components/assets/input-number/t9n/messages.sk.json +1 -1
  207. package/assets/components/assets/input-number/t9n/messages.sl.json +1 -1
  208. package/assets/components/assets/input-number/t9n/messages.sr.json +1 -1
  209. package/assets/components/assets/input-number/t9n/messages.sv.json +1 -1
  210. package/assets/components/assets/input-number/t9n/messages.th.json +1 -1
  211. package/assets/components/assets/input-number/t9n/messages.tr.json +1 -1
  212. package/assets/components/assets/input-number/t9n/messages.uk.json +1 -1
  213. package/assets/components/assets/input-number/t9n/messages.vi.json +1 -1
  214. package/assets/components/assets/input-number/t9n/messages.zh-CN.json +1 -1
  215. package/assets/components/assets/input-number/t9n/messages.zh-HK.json +1 -1
  216. package/assets/components/assets/input-number/t9n/messages.zh-TW.json +1 -1
  217. package/assets/components/assets/input-text/t9n/messages.ar.json +1 -1
  218. package/assets/components/assets/input-text/t9n/messages.bg.json +1 -1
  219. package/assets/components/assets/input-text/t9n/messages.bs.json +1 -1
  220. package/assets/components/assets/input-text/t9n/messages.ca.json +1 -1
  221. package/assets/components/assets/input-text/t9n/messages.cs.json +1 -1
  222. package/assets/components/assets/input-text/t9n/messages.da.json +1 -1
  223. package/assets/components/assets/input-text/t9n/messages.de.json +1 -1
  224. package/assets/components/assets/input-text/t9n/messages.el.json +1 -1
  225. package/assets/components/assets/input-text/t9n/messages.en.json +1 -1
  226. package/assets/components/assets/input-text/t9n/messages.es.json +1 -1
  227. package/assets/components/assets/input-text/t9n/messages.et.json +1 -1
  228. package/assets/components/assets/input-text/t9n/messages.fi.json +1 -1
  229. package/assets/components/assets/input-text/t9n/messages.fr.json +1 -1
  230. package/assets/components/assets/input-text/t9n/messages.he.json +1 -1
  231. package/assets/components/assets/input-text/t9n/messages.hr.json +1 -1
  232. package/assets/components/assets/input-text/t9n/messages.hu.json +1 -1
  233. package/assets/components/assets/input-text/t9n/messages.id.json +1 -1
  234. package/assets/components/assets/input-text/t9n/messages.it.json +1 -1
  235. package/assets/components/assets/input-text/t9n/messages.ja.json +1 -1
  236. package/assets/components/assets/input-text/t9n/messages.json +1 -1
  237. package/assets/components/assets/input-text/t9n/messages.ko.json +1 -1
  238. package/assets/components/assets/input-text/t9n/messages.lt.json +1 -1
  239. package/assets/components/assets/input-text/t9n/messages.lv.json +1 -1
  240. package/assets/components/assets/input-text/t9n/messages.nl.json +1 -1
  241. package/assets/components/assets/input-text/t9n/messages.no.json +1 -1
  242. package/assets/components/assets/input-text/t9n/messages.pl.json +1 -1
  243. package/assets/components/assets/input-text/t9n/messages.pt-BR.json +1 -1
  244. package/assets/components/assets/input-text/t9n/messages.pt-PT.json +1 -1
  245. package/assets/components/assets/input-text/t9n/messages.ro.json +1 -1
  246. package/assets/components/assets/input-text/t9n/messages.ru.json +1 -1
  247. package/assets/components/assets/input-text/t9n/messages.sk.json +1 -1
  248. package/assets/components/assets/input-text/t9n/messages.sl.json +1 -1
  249. package/assets/components/assets/input-text/t9n/messages.sr.json +1 -1
  250. package/assets/components/assets/input-text/t9n/messages.sv.json +1 -1
  251. package/assets/components/assets/input-text/t9n/messages.th.json +1 -1
  252. package/assets/components/assets/input-text/t9n/messages.tr.json +1 -1
  253. package/assets/components/assets/input-text/t9n/messages.uk.json +1 -1
  254. package/assets/components/assets/input-text/t9n/messages.vi.json +1 -1
  255. package/assets/components/assets/input-text/t9n/messages.zh-CN.json +1 -1
  256. package/assets/components/assets/input-text/t9n/messages.zh-HK.json +1 -1
  257. package/assets/components/assets/input-text/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.en.json +1 -1
  267. package/assets/components/assets/input-time-picker/t9n/messages.es.json +1 -1
  268. package/assets/components/assets/input-time-picker/t9n/messages.et.json +1 -1
  269. package/assets/components/assets/input-time-picker/t9n/messages.fi.json +1 -1
  270. package/assets/components/assets/input-time-picker/t9n/messages.fr.json +1 -1
  271. package/assets/components/assets/input-time-picker/t9n/messages.he.json +1 -1
  272. package/assets/components/assets/input-time-picker/t9n/messages.hr.json +1 -1
  273. package/assets/components/assets/input-time-picker/t9n/messages.hu.json +1 -1
  274. package/assets/components/assets/input-time-picker/t9n/messages.id.json +1 -1
  275. package/assets/components/assets/input-time-picker/t9n/messages.it.json +1 -1
  276. package/assets/components/assets/input-time-picker/t9n/messages.ja.json +1 -1
  277. package/assets/components/assets/input-time-picker/t9n/messages.json +1 -1
  278. package/assets/components/assets/input-time-picker/t9n/messages.ko.json +1 -1
  279. package/assets/components/assets/input-time-picker/t9n/messages.lt.json +1 -1
  280. package/assets/components/assets/input-time-picker/t9n/messages.lv.json +1 -1
  281. package/assets/components/assets/input-time-picker/t9n/messages.nl.json +1 -1
  282. package/assets/components/assets/input-time-picker/t9n/messages.no.json +1 -1
  283. package/assets/components/assets/input-time-picker/t9n/messages.pl.json +1 -1
  284. package/assets/components/assets/input-time-picker/t9n/messages.pt-BR.json +1 -1
  285. package/assets/components/assets/input-time-picker/t9n/messages.pt-PT.json +1 -1
  286. package/assets/components/assets/input-time-picker/t9n/messages.ro.json +1 -1
  287. package/assets/components/assets/input-time-picker/t9n/messages.ru.json +1 -1
  288. package/assets/components/assets/input-time-picker/t9n/messages.sk.json +1 -1
  289. package/assets/components/assets/input-time-picker/t9n/messages.sl.json +1 -1
  290. package/assets/components/assets/input-time-picker/t9n/messages.sr.json +1 -1
  291. package/assets/components/assets/input-time-picker/t9n/messages.sv.json +1 -1
  292. package/assets/components/assets/input-time-picker/t9n/messages.th.json +1 -1
  293. package/assets/components/assets/input-time-picker/t9n/messages.tr.json +1 -1
  294. package/assets/components/assets/input-time-picker/t9n/messages.uk.json +1 -1
  295. package/assets/components/assets/input-time-picker/t9n/messages.vi.json +1 -1
  296. package/assets/components/assets/input-time-picker/t9n/messages.zh-CN.json +1 -1
  297. package/assets/components/assets/input-time-picker/t9n/messages.zh-HK.json +1 -1
  298. package/assets/components/assets/input-time-picker/t9n/messages.zh-TW.json +1 -1
  299. package/assets/esri/core/workers/RemoteClient.js +1 -1
  300. package/assets/esri/core/workers/chunks/{6f39545710d1b35d922c.js → 181f330314c1989f642f.js} +1 -1
  301. package/assets/esri/core/workers/chunks/{d4058352db1e8255b52e.js → 1d38a710cf799cb0e5b3.js} +1 -1
  302. package/assets/esri/core/workers/chunks/{59dd83e5aee2908c7eca.js → 3f84ade6285560b692d1.js} +1 -1
  303. package/assets/esri/core/workers/chunks/{25197ecb324d6f08e03e.js → 538bdf02c4dfb5ec72fe.js} +1 -1
  304. package/assets/esri/core/workers/chunks/{f5c9659fc5d571d501c9.js → 59a795eba31061dc357a.js} +1 -1
  305. package/assets/esri/core/workers/chunks/{7d163d9d90393e491ee5.js → 5fb0e8f89b885e5e3742.js} +1 -1
  306. package/assets/esri/core/workers/chunks/{19bf6826e7d9a4d52035.js → 6cc1120554bcb1b4899b.js} +1 -1
  307. package/assets/esri/core/workers/chunks/7dd672c25beb8813cc75.js +2 -0
  308. package/assets/esri/core/workers/chunks/{d7267f429a051943187b.js → 873d8332e2149eb1b36a.js} +1 -1
  309. package/assets/esri/core/workers/chunks/{a97e0b9b057664911c14.js → 8f8db62f126e4a8c1bf7.js} +1 -1
  310. package/assets/esri/core/workers/chunks/b526055794e64b0227ca.js +256 -0
  311. package/assets/esri/core/workers/chunks/be291d920ebc68fde02b.js +2 -0
  312. package/assets/esri/core/workers/chunks/c10a0eebd935472d8fae.js +1 -0
  313. package/assets/esri/core/workers/chunks/c97451f75c23be979476.js +1 -0
  314. package/assets/esri/core/workers/chunks/d198ecb1fe3690d6092f.js +2 -0
  315. package/assets/esri/core/workers/chunks/d2a51c797b2966cb95f3.js +2 -0
  316. package/assets/esri/core/workers/chunks/d303621c902330be5035.js +1 -0
  317. package/assets/esri/core/workers/chunks/{7d4c65311064a5c2e0b1.js → df89bf05c18f0c8e418b.js} +1 -1
  318. package/assets/esri/core/workers/chunks/f4e813ead56d963b16b8.js +1 -0
  319. package/assets/esri/core/workers/chunks/f6f1122bed931f1d960b.js +1 -0
  320. package/assets/esri/core/workers/chunks/f82cd34a79c8aa58d40c.js +2 -0
  321. package/assets/esri/themes/base/widgets/_SelectionToolbar.scss +1 -0
  322. package/assets/esri/themes/dark/main.css +1 -1
  323. package/assets/esri/themes/light/main.css +1 -1
  324. package/assets/esri/themes/light/view.css +1 -1
  325. package/assets/esri/views/3d/environment/resources/milkyway-band.ktx2 +0 -0
  326. package/chunks/DeepSky.glsl.js +66 -0
  327. package/chunks/GaussianSplat.glsl.js +10 -9
  328. package/chunks/GaussianSplatDepth.glsl.js +11 -0
  329. package/chunks/GaussianSplatShadow.glsl.js +7 -16
  330. package/config.js +1 -1
  331. package/interfaces.d.ts +0 -14
  332. package/kernel.js +1 -1
  333. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  334. package/networks/RulesTable.js +1 -1
  335. package/networks/UtilityNetwork.js +1 -1
  336. package/networks/support/utils.js +1 -1
  337. package/package.json +4 -4
  338. package/popup/FeatureContent.d.ts +17 -96
  339. package/popup/FeatureContentCollection.d.ts +71 -188
  340. package/support/revision.js +1 -1
  341. package/symbols/LabelSymbol3D.js +1 -1
  342. package/symbols/LineSymbol3D.js +1 -1
  343. package/symbols/MeshSymbol3D.js +1 -1
  344. package/symbols/PointSymbol3D.js +1 -1
  345. package/symbols/PolygonSymbol3D.js +1 -1
  346. package/third-party-notices.txt +9 -0
  347. package/views/2d/engine/imagery/RasterVFDisplayObject.js +1 -1
  348. package/views/2d/engine/webgl/AFeatureTile.js +1 -1
  349. package/views/2d/interactive/editingTools/ControlPointsTransformTool.js +1 -1
  350. package/views/2d/layers/support/MediaLayerInteraction.js +1 -1
  351. package/views/2d/layers/support/MediaLayerInteractionOptions.d.ts +46 -0
  352. package/views/2d/layers/support/MediaLayerInteractionOptions.js +1 -1
  353. package/views/2d/layers/support/MediaLayerInteractionReshapeOptions.d.ts +22 -0
  354. package/views/2d/layers/support/MediaLayerInteractionReshapeOptions.js +2 -0
  355. package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
  356. package/views/3d/analysis/Viewshed/ViewshedEditTool.js +1 -1
  357. package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +1 -1
  358. package/views/3d/analysis/Viewshed/ViewshedSnappingController.js +1 -1
  359. package/views/3d/analysis/Viewshed/ViewshedTool.js +1 -1
  360. package/views/3d/analysis/Viewshed/placementUtils.js +1 -1
  361. package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
  362. package/views/3d/layers/I3SMeshView3D.js +1 -1
  363. package/views/3d/layers/i3s/I3SIntersectionHandler.js +1 -1
  364. package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
  365. package/views/3d/layers/i3s/PointCloudRenderer.js +1 -1
  366. package/views/3d/layers/i3s/SweptSphereVolume.js +2 -0
  367. package/views/3d/layers/support/MediaLayerInteractionReshapeOptions.d.ts +0 -1
  368. package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
  369. package/views/3d/support/gaussianSplatting/GaussianSplatFadeHelper.js +1 -1
  370. package/views/3d/support/hitTest.js +1 -1
  371. package/views/3d/terrain/TerrainSurface.js +1 -1
  372. package/views/3d/webgl/RenderCamera.js +1 -1
  373. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  374. package/views/3d/webgl-engine/collections/Component/ComponentObjectElevationAgnosticBVH.js +1 -1
  375. package/views/3d/webgl-engine/collections/Component/ComponentObjectFixedBVH.js +1 -1
  376. package/views/3d/webgl-engine/collections/Component/ElevationAgnosticBVH.js +1 -1
  377. package/views/3d/webgl-engine/collections/Component/IntersectionGeometry.js +1 -1
  378. package/views/3d/webgl-engine/effects/stars/DeepSky.glsl.js +2 -0
  379. package/views/3d/webgl-engine/effects/stars/DeepSkyTechnique.js +2 -0
  380. package/views/3d/webgl-engine/effects/stars/Stars.js +1 -1
  381. package/views/3d/webgl-engine/effects/stars/starsUtils.js +2 -0
  382. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  383. package/views/3d/webgl-engine/lib/GaussianSplatDepthRenderer.js +2 -0
  384. package/views/3d/webgl-engine/lib/GaussianSplatRenderer.js +1 -1
  385. package/views/3d/webgl-engine/lib/GaussianSplatShadows.js +1 -1
  386. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  387. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  388. package/views/3d/webgl-engine/lib/screenPolygonOverlapUtils.js +1 -1
  389. package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
  390. package/views/3d/webgl-engine/shaders/GaussianSplatDepth.glsl.js +2 -0
  391. package/views/3d/webgl-engine/shaders/GaussianSplatDepthPolicy.js +2 -0
  392. package/views/3d/webgl-engine/shaders/GaussianSplatDepthTechnique.js +2 -0
  393. package/views/3d/webgl-engine/shaders/GaussianSplatPass.glsl.js +97 -0
  394. package/views/3d/webgl-engine/shaders/GaussianSplatShadow.glsl.js +1 -1
  395. package/views/3d/webgl-engine/shaders/GaussianSplatShadowTechnique.js +1 -1
  396. package/views/3d/webgl-engine/shaders/GaussianSplatTechniqueConfiguration.js +1 -1
  397. package/views/3d/webgl.js +1 -1
  398. package/widgets/BasemapLayerList.js +1 -1
  399. package/widgets/Bookmarks.js +1 -1
  400. package/widgets/Daylight.js +1 -1
  401. package/widgets/Editor/AddAssociationWorkflow.js +1 -1
  402. package/widgets/Editor/AddAssociationWorkflowData.js +1 -1
  403. package/widgets/Editor/legacy/AddAssociationWorkflow.js +1 -1
  404. package/widgets/Editor/legacy/AddAssociationWorkflowData.js +1 -1
  405. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/AssociationDetails.js +1 -1
  406. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationItemList.js +1 -1
  407. package/widgets/FeatureForm/UtilityNetworkAssociationAddAssociationViewModel.js +1 -1
  408. package/widgets/FeatureTable/Grid/EditorColumn.js +1 -1
  409. package/widgets/LayerList.js +1 -1
  410. package/widgets/OrientedImageryViewer/components/ImageViewerViewModel.js +1 -1
  411. package/widgets/OrientedImageryViewer/support/panConstraint.js +1 -1
  412. package/widgets/PanoramicVideoViewer.js +1 -1
  413. package/widgets/PanoramicViewer.js +1 -1
  414. package/widgets/Print.js +1 -1
  415. package/widgets/Search/support/locatorUtils.js +1 -1
  416. package/widgets/ShadowCast.js +1 -1
  417. package/widgets/Sketch.js +1 -1
  418. package/widgets/TableList.js +1 -1
  419. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeature.js +1 -1
  420. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeaturesDrillIn.js +1 -1
  421. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  422. package/widgets/support/SelectionToolbar.js +1 -1
  423. package/widgets/support/SketchTooltipControls.js +1 -1
  424. package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +1 -1
  425. package/widgets/support/UtilityNetworkAssociations/utils/createAssociation.js +1 -1
  426. package/widgets/support/UtilityNetworkAssociations/utils/isFromElement.js +1 -1
  427. package/assets/esri/core/workers/chunks/15de305ac3d6433748e7.js +0 -1
  428. package/assets/esri/core/workers/chunks/2426601b8cae7f06af4d.js +0 -256
  429. package/assets/esri/core/workers/chunks/242cad472fbc38b24dbc.js +0 -2
  430. package/assets/esri/core/workers/chunks/24c0b3586bb6500eda53.js +0 -2
  431. package/assets/esri/core/workers/chunks/394716bd1ecfd638d708.js +0 -2
  432. package/assets/esri/core/workers/chunks/55af58b6dff52dc040fe.js +0 -2
  433. package/assets/esri/core/workers/chunks/5b18696109fe84a1010a.js +0 -2
  434. package/assets/esri/core/workers/chunks/7f6eee102871769fdf8f.js +0 -1
  435. package/assets/esri/core/workers/chunks/93c0a620a147cbf4a0ba.js +0 -1
  436. package/assets/esri/core/workers/chunks/a27172dacdb85a774c4b.js +0 -1
  437. package/assets/esri/core/workers/chunks/ddafe402f1bc9e8285ef.js +0 -1
  438. package/views/3d/layers/i3s/SphereCone.js +0 -2
  439. /package/assets/esri/core/workers/chunks/{394716bd1ecfd638d708.js.LICENSE.txt → 7dd672c25beb8813cc75.js.LICENSE.txt} +0 -0
  440. /package/assets/esri/core/workers/chunks/{55af58b6dff52dc040fe.js.LICENSE.txt → be291d920ebc68fde02b.js.LICENSE.txt} +0 -0
  441. /package/assets/esri/core/workers/chunks/{24c0b3586bb6500eda53.js.LICENSE.txt → d198ecb1fe3690d6092f.js.LICENSE.txt} +0 -0
  442. /package/assets/esri/core/workers/chunks/{5b18696109fe84a1010a.js.LICENSE.txt → d2a51c797b2966cb95f3.js.LICENSE.txt} +0 -0
  443. /package/assets/esri/core/workers/chunks/{242cad472fbc38b24dbc.js.LICENSE.txt → f82cd34a79c8aa58d40c.js.LICENSE.txt} +0 -0
package/widgets/Sketch.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{substitute as t}from"../intl.js";import{isSome as o}from"../core/arrayUtils.js";import{deprecateWidget as i}from"../core/deprecate.js";import{handlesGroup as s}from"../core/handleUtils.js";import l from"../core/Logger.js";import{removeMaybe as r,destroyMaybe as n}from"../core/maybe.js";import{ignoreAbortErrors as a}from"../core/promiseUtils.js";import{watch as c,syncAndInitial as p,when as h}from"../core/reactiveUtils.js";import{property as d,subclass as u}from"../core/accessorSupport/decorators.js";import{symbolTypes as v}from"../symbols/support/typeUtils.js";import g from"../views/interactive/sketch/SketchLabelOptions.js";import m from"../views/interactive/sketch/SketchTooltipOptions.js";import f from"../views/interactive/sketch/SketchValueOptions.js";import _ from"./Widget.js";import y from"./Sketch/SketchViewModel.js";import b from"./Sketch/VisibleElements.js";import w from"./Sketch/support/ResponsiveToolbar/ResponsiveToolbar.js";import{loadCalciteComponents as T}from"./support/componentsUtils.js";import{connectDelayedLoading as S}from"./support/loaderUtils.js";import C from"./support/SelectionToolbar.js";import M from"./support/SketchTooltipControls.js";import O from"./support/SnappingControls.js";import{tsx as k,messageBundle as P,vmEvent as I}from"./support/widget.js";import L from"./support/SelectionToolbar/VisibleElements.js";import E from"./support/SketchTooltipControls/VisibleElements.js";const R="esri-sketch",x="settings-menu-action",G={base:R,vertical:`${R}--vertical`,docked:`${R}-bar`,floating:`${R}-pad`,chipHorizontal:`${R}__selection-count-chip--horizontal`,chipVertical:`${R}__selection-count-chip--vertical`,chipVerticalSmall:`${R}__selection-count-chip--vertical--s`,popoverWrapper:`${R}__popover-wrapper`,simplificationProgressLoader:`${R}__simplification-progress-loader`},U={point:"pin",polyline:"line",polygon:"polygon",rectangle:"rectangle",circle:"circle",multipoint:"pins",mesh:"i3d-building",freehandPolygon:"freehand-area",freehandPolyline:"freehand",text:"text"};let D=class extends _{constructor(e,t){super(e,t),this._selectionToolbar=null,this._viewModelHandlesGroup=null,this._popoverElement=null,this.availableCreateTools=["point","polyline","polygon","rectangle","circle"],this.customToolOptions=null,this.customActions=null,this.toolbarKind="floating",this.contextualToolLocation="separate",this.groupCollapsePriorities=null,this.groupAllowCollapseOptions=null,this.messages=null,this.messagesCommon=null,this.visibleElements=new b,this._defaultViewModel=null,this._activeCustomToolOptions=null,this._effectiveRenderStateCache=new Map,this._calcitePopoverReferenceElement=null,this._relativeLocation="top",this._popoverOpen=!1,this._showSimplificationProgress=!1,this._clickedWhileTemporarilyDisabled=!1,!0!==e?.suppressDeprecationWarning&&(this.announceDeprecation=()=>{i(l.getLogger(this),"Sketch","arcgis-sketch",{version:"5.0"})}),this._activateCreateTool=this._activateCreateTool.bind(this),this.viewModel=e?.viewModel||(this._defaultViewModel=new y({creationMode:e?.creationMode??"continuous",useLegacyCreateTools:e?.useLegacyCreateTools??"3d"===e?.view?.type})),this.viewModel.pluginManager.sketch=this}normalizeCtorArgs(e={}){const{suppressDeprecationWarning:t,...o}=e;return o}initialize(){const{layer:e,view:t}=this,o=new C({persistSelection:!1,visibleElements:new L({chip:!1,lassoTool:!0,operationTypeControls:!1,pan:!1,pointTool:!1,rectangleTool:!0}),view:t,sources:e?[e]:null,scale:this.scale,disabled:"disabled"===this.state||this._hasLongRunningOperation});this.addHandles([c(()=>this.viewModel,e=>{this._viewModelHandlesGroup=r(this._viewModelHandlesGroup),e&&(this._viewModelHandlesGroup=s([e.on("delete",e=>this.emit("delete",e)),c(()=>e.layer,e=>{this._selectionToolbar&&(this._selectionToolbar.sources=e?[e]:null)}),c(()=>e.view,e=>{this._selectionToolbar&&(this._selectionToolbar.view=e)}),c(()=>e.state,()=>{this.notifyChange("state"),this._syncSelectionToolbarDisabledState()}),c(()=>e.geometrySimplificationInProgress,e=>{e||(this._clickedWhileTemporarilyDisabled=!1),this._syncSelectionToolbarDisabledState()}),S({getLoading:()=>e.geometrySimplificationInProgress,setEffectiveLoading:e=>{this._showSimplificationProgress=e,this._syncSelectionToolbarDisabledState()}})]))},p),h(()=>o.activeOperation,()=>{this.viewModel.cancel(),this._activeCustomToolOptions=null}),o.on("complete",e=>this._onSelectionOperationComplete(e)),c(()=>{const{visibleElements:{selectionTools:e}}=this;return{lassoTool:!!e?.["lasso-selection"],rectangleTool:!!e?.["rectangle-selection"]}},e=>{Object.assign(o.visibleElements,e)},p)]),this._selectionToolbar=o,this._syncSelectionToolbarDisabledState()}loadDependencies(){return T({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),chip:()=>import("@esri/calcite-components/dist/components/calcite-chip"),loader:()=>import("@esri/calcite-components/dist/components/calcite-loader"),popover:()=>import("@esri/calcite-components/dist/components/calcite-popover")})}destroy(){this._selectionToolbar?.destroy(),this._viewModelHandlesGroup=r(this._viewModelHandlesGroup)}get activeTool(){const e=this._selectionToolbar?.activeOperation;if(e)switch(e.toolName){case"lasso":return"lasso-selection";case"rectangle":return"rectangle-selection";case"default":return"custom-selection"}const{availableCreateTools:t}=this,{activeTool:o,activeCreateToolDrawMode:i}=this.viewModel;return"polygon"===o&&"freehand"===i&&t?.includes("freehandPolygon")?"freehandPolygon":"polyline"===o&&"freehand"===i&&t?.includes("freehandPolyline")?"freehandPolyline":this.viewModel.activeTool}get activeTooltip(){return this.viewModel.activeTooltip}get createGraphic(){return this.viewModel.createGraphic}get creationMode(){return this.viewModel.creationMode}set creationMode(e){this.viewModel.creationMode=e}get defaultCreateOptions(){return this.viewModel.defaultCreateOptions}set defaultCreateOptions(e){this.viewModel.defaultCreateOptions=e}get defaultUpdateOptions(){return this.viewModel.defaultUpdateOptions}set defaultUpdateOptions(e){this.viewModel.defaultUpdateOptions=e}get icon(){return"pencil"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get labelOptions(){return this.viewModel.labelOptions}set labelOptions(e){this.viewModel.labelOptions=e}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}set layout(e){this._set("layout",e),this._selectionToolbar&&(this._selectionToolbar.layout=e)}get pointSymbol(){return this.viewModel.pointSymbol}set pointSymbol(e){this.viewModel.pointSymbol=e}get polygonSymbol(){return this.viewModel.polygonSymbol}set polygonSymbol(e){this.viewModel.polygonSymbol=e}get polylineSymbol(){return this.viewModel.polylineSymbol}set polylineSymbol(e){this.viewModel.polylineSymbol=e}get textSymbol(){return this.viewModel.textSymbol}set textSymbol(e){this.viewModel.textSymbol=e}set scale(e){this._set("scale",e),this._selectionToolbar&&(this._selectionToolbar.scale=e)}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get state(){return this._selectionToolbar?.activeOperation?"active":this.viewModel.state}get tooltipOptions(){return this.viewModel.tooltipOptions}set tooltipOptions(e){this.viewModel.tooltipOptions=e}get updateGraphics(){return this.viewModel.updateGraphics}get valueOptions(){return this.viewModel.valueOptions}set valueOptions(e){this.viewModel.valueOptions=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}set viewModel(e){const t=this._get("viewModel");e!==t&&(t&&t===this._defaultViewModel&&n(t),t?.pluginManager?.sketch===this&&(t.pluginManager.sketch=null),this._set("viewModel",e),e.pluginManager.sketch=this)}get useLegacyCreateTools(){return this.viewModel.useLegacyCreateTools}set useLegacyCreateTools(e){this.viewModel.useLegacyCreateTools=e}get isUsingLegacyCreateTools(){return this.viewModel.isUsingLegacyCreateTools}get settingsManager(){return this.viewModel.settingsManager}get _effectiveAvailableCreateTools(){return this._getEffectiveValue("availableCreateTools",()=>{const e=this.viewModel.effectiveAvailablePlugins;return e?.length?e:this._visibleCreateTools})}get _effectiveUpdateGraphicsCount(){return this._getEffectiveValue("updateGraphicsCount",()=>this.updateGraphics.length)}get _effectiveFirstPluginWithSwappableLeaf(){return this._getEffectiveValue("firstPluginWithSwappableLeaf",()=>this.viewModel.firstPluginWithSwappableLeaf)}get _effectiveActivePluginUniqueIds(){return this._getEffectiveValue("activePluginUniqueIds",()=>{const e=this.viewModel.drawTool?.pluginStack.filter(e=>!e.configuration?.hidden).map(e=>e.configuration?.uniqueId).filter(o);return e?new Set(e):new Set})}get _isEffectiveRenderStateFrozen(){const{viewModel:e}=this;return e.toolTransitionInProgress||e.geometrySimplificationInProgress}get _visibleCreateTools(){const{availableCreateTools:e,view:t,visibleElements:o}=this,i=e?.filter(e=>!!o.createTools?.[e]);return"3d"===t?.type?i?.filter(e=>"multipoint"!==e):i}_getEffectiveValue(e,t){if(!this._isEffectiveRenderStateFrozen||!this._effectiveRenderStateCache.has(e)){const o=t();return this._effectiveRenderStateCache.set(e,o),o}return this._effectiveRenderStateCache.get(e)}create(e,t,o){const i=o?.createOptions??t;return this._activeCustomToolOptions=o,a(this.viewModel.create(e,i))}update(e,t){return a(this.viewModel.update(e,t))}complete(){this.viewModel.complete()}cancel(){this._selectionToolbar?.cancel(),this.viewModel.cancel(),this._activeCustomToolOptions=null}undo(){this.viewModel.undo(),this.view?.focus()}redo(){this.viewModel.redo(),this.view?.focus()}delete(){this.viewModel.delete()}duplicate(){return this.viewModel.duplicate()}dismissFloatingElements(){this._popoverOpen=!1}render(){const{toolbarKind:e,layout:t,scale:o}=this;return k("div",null,k("div",{classes:{[G.base]:!0,[G.floating]:"floating"===e,[G.docked]:"docked"===e,[G.vertical]:"vertical"===t}},k(w,{barStyle:e,layout:t,scale:o},this._renderSelectionSetItemGroupInline(),this._renderSelectionToolsOrBack(),this._renderCreateToolActionGroup(),this._renderUndoRedoMenuItemGroup(),this._renderSettingsMenuItemGroup(),this._renderSimplificationProgressItemGroupInline()),this._renderSelectionSetToolbar(),this._renderSimplificationProgressToolbar(),this._renderSettingsMenuPopover()))}_renderSimplificationProgressToolbar(){if("separate"!==this.contextualToolLocation)return;const e=this._renderSimplificationProgressItemGroup();return e?k(w,{barStyle:this.toolbarKind,layout:this.layout,scale:this.scale},e):void 0}_renderSimplificationProgressItemGroupInline(){if("separate"!==this.contextualToolLocation)return this._renderSimplificationProgressItemGroup()}_renderSelectionToolsOrBack(){if(!this.viewModel.isUsingLegacyCreateTools&&this._effectiveFirstPluginWithSwappableLeaf)return this._renderBackButton();const e=this.customActions?.filter(e=>"selection-toolbar"===e.position);return k("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionTools")??!0,"group-kind":"split-button",key:"selection-split-button",priority:this.groupCollapsePriorities?.get("selectionTools")??0},this._renderDefaultSelectionButton(),this._selectionToolbar?.render(),e?.map(e=>this._renderToolbarItem(e)))}_renderSettingsMenuPopover(){const{messagesCommon:e,snappingOptions:t,view:o,viewModel:i,visibleElements:s}=this;if(!this._calcitePopoverReferenceElement)return;const l={directionModePicker:s.directionModePicker,labelsToggle:s.labelsToggle,tooltipsToggle:s.tooltipsToggle},r="horizontal"===this.layout?"top"===this._relativeLocation?"bottom-end":"top-end":"right-end";return k("calcite-popover",{afterCreate:e=>this._popoverElement=e,closable:!0,heading:e.settings,key:`${this.id}-settings`,label:e.settings,open:this._popoverOpen,overlayPositioning:"fixed",placement:r,referenceElement:this._calcitePopoverReferenceElement,scale:this.scale,topLayerDisabled:this.topLayerDisabled,onCalcitePopoverBeforeClose:e=>this._beforePopoverClose(e.target),onCalcitePopoverBeforeOpen:e=>this._remeasurePopoverSizes(e.currentTarget),onCalcitePopoverClose:e=>this._refocusOnView(e.target)},k("div",{class:G.popoverWrapper},Object.values(l).includes(!0)?k(M,{sketchOptions:i.sketchOptions,view:o,visibleElements:new E(l)}):void 0,s.snappingControls&&o&&t?k(O,{snappingManager:this.viewModel.snappingManager,snappingOptions:t,view:o,visibleElements:s.snappingControlsElements}):void 0))}_beforePopoverClose(e){e===this._popoverElement&&(this._popoverOpen=!1)}_renderSelectionSetToolbar(){if("separate"!==this.contextualToolLocation)return;const e=this._renderSelectionSetItemGroup();return e?.length?k(w,{barStyle:this.toolbarKind,layout:this.layout,scale:this.scale},e):void 0}_renderSimplificationProgressItemGroup(){if(!this.visibleElements.geometrySimplificationActivityIndicator||!this._showSimplificationProgress)return;const e=`${this.messages.finalizingDrawingTitle}`;return k("div",{"group-kind":"measured-content-group",key:"simplification-progress-group",slot:"actions-end"},k("calcite-action",{"data-testid":"simplification-progress",key:"simplification-progress",scale:this.scale,text:e,title:e},k("calcite-loader",{class:G.simplificationProgressLoader,inline:!0,label:e,scale:this.scale,type:"indeterminate"})))}_renderSelectionSetItemGroupInline(){return"separate"===this.contextualToolLocation?[]:this._renderSelectionSetItemGroup()}_renderUndoRedoMenuItemGroup(){return k("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("undoRedo")??!0,"group-kind":"split-button",key:"undo-redo-menu",priority:this.groupCollapsePriorities?.get("undoRedo")??10,slot:"actions-end"},this._renderUndoButton(),this._renderRedoButton())}_renderSettingsMenuItemGroup(){const e=[],t=[];this.customActions?.forEach(o=>{"settings-before"===o.position?t.push(o):"settings-after"===o.position&&e.push(o)});const i=[...t.map(e=>this._renderToolbarItem(e)),this._renderSettingsMenuButton(),...e.map(e=>this._renderToolbarItem(e))].filter(o);if(i.length)return k("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("settings")??!1,"group-kind":"overflow-group",key:"settings-menu",priority:this.groupCollapsePriorities?.get("settings")??1e3,slot:"actions-end"},i)}_renderSelectionSetItemGroup(){if(!this._effectiveUpdateGraphicsCount)return[];const e="inline-end"===this.contextualToolLocation?"actions-end":void 0,t=this.customActions?.filter(e=>"before-selection-set"===e.position),o=this.customActions?.filter(e=>"after-selection-set"===e.position),i=this.groupCollapsePriorities?.get("selectionSet")??100;return[k("div",{"group-kind":"measured-content",key:"selection-count-chip-group",priority:i,slot:e},this._renderFeatureCountChip()),k("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionSet")??!1,"group-kind":"overflow-group",key:"selection-set-tool-group",priority:i,slot:e},t?.map(e=>this._renderToolbarItem(e)),this._renderDuplicateButton(),this._renderDeleteButton(),o?.map(e=>this._renderToolbarItem(e)))]}_renderDefaultSelectionButton(){if(!this._getEffectiveValue("updateOnGraphicClick",()=>this.viewModel.updateOnGraphicClick))return[];const{messages:e}=this;return this._renderToolbarItem({id:"pointer-select",text:e.selectFeature,icon:"cursor",onclick:this._activateDefaultSelectTool,active:"ready"===this._getEffectiveValue("state",()=>this.state)})}_renderBackButton(){const{isUsingLegacyCreateTools:e}=this,t=this._getEffectiveValue("multiplePluginsActive",()=>this.viewModel.multiplePluginsActive),o=this._effectiveFirstPluginWithSwappableLeaf,i=this._getEffectiveValue("rootPlugins",()=>this.viewModel.rootPlugins);if(!e&&t&&o&&i&&(!(i.length<2&&i.includes(o))||this.visibleElements.singlePluginBackButton))return k("div",{"allow-collapse":!1,"group-kind":"overflow-group",key:"selection-split-button"},k("calcite-action",{disabled:"disabled"===this.state||this._hasLongRunningOperation,icon:"chevron-left",iconFlipRtl:!0,scale:this.scale,text:this.messagesCommon.back,onclick:()=>{this.shouldIgnoreClick()||this.viewModel?.cancel()}}))}_renderCreateToolActionGroup(){const e=this._effectiveFirstPluginWithSwappableLeaf?[]:this.customToolOptions?.flatMap(e=>this._renderCustomToolItem(e))??[],t=this._effectiveAvailableCreateTools,o=t?.filter(e=>"string"==typeof e),i=o?.map(e=>this._renderCreateToolItem(e)),s=t?.filter(e=>"string"!=typeof e).map(e=>this._renderCreateToolItem(e));return[i?.length||e?.length||s?.length?k("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("createTools")??!0,"group-kind":"overflow-group",key:"create-tools-group",priority:this.groupCollapsePriorities?.get("createTools")??100},i,e,s):void 0]}_renderCreateToolItem(e){return"string"==typeof e?this._renderBuiltInCreateToolItem(e):this._renderDrawToolPluginItem(e)}_renderDrawToolPluginItem(e){const{icon:t,localizationKey:o,uniqueId:i,hidden:s}=e;if(s)return[];const l=this.messages.digitizers,r=l?.[o]??o,n=!this._activeCustomToolOptions&&this._effectiveActivePluginUniqueIds.has(i);return this._renderToolbarItem({id:`${o}-button`,text:r,icon:t,onclick:()=>this._activatePlugin([e]),active:n})}_renderBuiltInCreateToolItem(e){return this._renderToolbarItem({id:`${e}-button`,text:this.messages.draw[e],icon:U[e],onclick:()=>this._activateCreateTool(e),active:this._getEffectiveValue("activeTool",()=>this.activeTool)===e&&!this._activeCustomToolOptions})}_renderCustomToolItem(e){const{toolKey:t}=e;return this._renderToolbarItem({id:`custom-${e.toolKey}`,text:e.label,icon:e.icon,onclick:()=>this._activateCreateTool(e.toolName,null,e),active:this._activeCustomToolOptions?.toolKey===t})}_renderUndoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"undo-button",text:this.messages.undo,icon:"undo",disabled:!this.viewModel.canUndo(),onclick:this.undo,flipRTL:!0}):[]}_renderRedoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"redo-button",text:this.messages.redo,icon:"redo",disabled:!this.viewModel.canRedo(),onclick:this.redo,flipRTL:!0}):[]}_renderSettingsMenuButton(){return this.visibleElements.settingsMenu?this._renderToolbarItem({id:x,text:this.messagesCommon.settings,icon:"gear",active:this._popoverOpen,onclick:()=>this._popoverOpen=!this._popoverOpen,afterCreate:e=>this._calcitePopoverReferenceElement=e,afterUpdate:e=>this._calcitePopoverReferenceElement=e,afterRemoved:()=>this._calcitePopoverReferenceElement=null}):[]}_renderFeatureCountChip(){if(!this.visibleElements.selectionCountLabel)return[];const{layout:e,messages:o,scale:i,id:s}=this,l=this._effectiveUpdateGraphicsCount,r=t(o.selectedCount,{count:l}),n="l"===i?999:99,a=l>n?t(o.selectedCountTruncated,{truncated:n}):l,c="l"!==i&&"vertical"===e,p=c?`${s}-selection-chip-small`:`${s}-selection-chip`;return[c?k("span",{classes:{[G.chipVertical]:!0,[G.chipVerticalSmall]:"s"===this.scale},id:p,tabIndex:0,title:r},a):k("calcite-chip",{appearance:"outline",class:"horizontal"===e?G.chipHorizontal:G.chipVertical,id:p,kind:"brand",label:r,scale:"l"===i?"m":"s",tabIndex:0,title:"vertical"===e?r:void 0},"vertical"===e?a:r)]}_renderDuplicateButton(){if(!this.visibleElements.duplicateButton)return[];const{messages:e}=this;return this._renderToolbarItem({id:"duplicate",text:this._effectiveUpdateGraphicsCount>1?e.duplicateFeatures:e.duplicateFeature,icon:"copy",onclick:this._onDuplicateSelect})}_renderDeleteButton(){if(!this.visibleElements.deleteButton)return[];const{messages:e}=this,t=this._effectiveUpdateGraphicsCount>1?e.deleteFeatures:e.deleteFeature;return this._renderToolbarItem({id:"delete",text:t,icon:"trash",onclick:this.delete})}_renderToolbarItem({id:e,text:t,icon:o,disabled:i,onclick:s,active:l,flipRTL:r,afterCreate:n,afterUpdate:a,afterRemoved:c}){const p=`${this.id}-${e}`,h=s?()=>{this.shouldIgnoreClick()||s.call(this)}:void 0;return[k("calcite-action",{active:l,afterCreate:n,afterRemoved:c,afterUpdate:a,bind:this,"data-testid":e,disabled:i||"disabled"===this.state||this._hasLongRunningOperation,icon:o,iconFlipRtl:r??!1,id:p,key:e,scale:this.scale,text:t,title:t,onclick:h})]}get _hasLongRunningOperation(){return this._showSimplificationProgress||this._clickedWhileTemporarilyDisabled}_remeasurePopoverSizes(e){try{const t=this._calcitePopoverReferenceElement,o=e.parentElement,i=this?.view?.container?.getBoundingClientRect(),s=o?.style;if(!(o&&i&&s&&this.view?.container?.contains(o)&&t))return;const{bottom:l,top:r}=t.getBoundingClientRect();if("horizontal"===this.layout){const e=l<i.height/2;e!==("top"===this._relativeLocation)&&(this._relativeLocation=e?"top":"bottom"),e?(s?.setProperty("--sketch-view-height-offset",l-i.top+"px"),s?.setProperty("--sketch-view-margin-offset","30px")):(s?.setProperty("--sketch-view-height-offset",i.bottom-r+"px"),s?.setProperty("--sketch-view-margin-offset","15px"))}else"vertical"===this.layout&&(s.setProperty("--sketch-view-height-offset","15px"),s.setProperty("--sketch-view-margin-offset","15px"));const n=e.shadowRoot?.querySelector("div.header")?.getBoundingClientRect().height;s.setProperty("--sketch-popover-header-offset",`${n}px`)}catch(t){l.getLogger(this.declaredClass).warnOnce("Sketch failed to lay out settings menu.",t)}}_activateCreateTool(e,t,o){const i=this._activeCustomToolOptions;if(o||i){if(o?.toolKey===i?.toolKey)return void this.cancel()}else if(this.activeTool===e)return void this.cancel();this._selectionToolbar?.cancel(),this.create(e,t,o)}_activatePlugin(e){this._selectionToolbar?.cancel(),this.viewModel.firstPluginWithSwappableLeaf?(this.viewModel.drawTool?.replaceLeaf(e),this.view?.ready&&this.view.focus()):this._activateCreateTool(e)}_onDuplicateSelect(){const e=this.duplicate(),t=this.viewModel.activeTool;"transform"!==t&&"reshape"!==t||this.update(e,{tool:t})}shouldIgnoreClick(){return!!this._clickedWhileTemporarilyDisabled||!!this.viewModel.geometrySimplificationInProgress&&(this._clickedWhileTemporarilyDisabled=!0,this._syncSelectionToolbarDisabledState(),!0)}_onSelectionOperationComplete(e){const{viewModel:{defaultUpdateOptions:t}}=this,{selection:o}=e;if(!e.aborted&&o.length){const e=t.tool,i=o.length>1&&"reshape"===e?"transform":e;this.update(o,{...t,tool:i})}this.notifyChange("state")}_activateDefaultSelectTool(){this.cancel(),this.view?.focus()}_refocusOnView(e){this.activeTool&&e===this._popoverElement&&this.view?.focus()}_syncSelectionToolbarDisabledState(){this._selectionToolbar&&(this._selectionToolbar.disabled="disabled"===this.state||this._hasLongRunningOperation)}};e([d()],D.prototype,"activeTool",null),e([d({readOnly:!0})],D.prototype,"activeTooltip",null),e([d({cast:e=>{if(!e?.length)return null;const t=new Set(["point","polyline","polygon","rectangle","circle","multipoint","freehandPolyline","freehandPolygon","mesh","text"]);return e.filter(e=>t.has(e))}})],D.prototype,"availableCreateTools",void 0),e([d({readOnly:!0})],D.prototype,"createGraphic",null),e([d()],D.prototype,"creationMode",null),e([d()],D.prototype,"customToolOptions",void 0),e([d()],D.prototype,"customActions",void 0),e([d()],D.prototype,"defaultCreateOptions",null),e([d()],D.prototype,"defaultUpdateOptions",null),e([d()],D.prototype,"icon",null),e([d()],D.prototype,"label",null),e([d({type:g})],D.prototype,"labelOptions",null),e([d()],D.prototype,"layer",null),e([d({type:["horizontal","vertical"],value:"horizontal"})],D.prototype,"layout",null),e([d({types:v})],D.prototype,"pointSymbol",null),e([d({types:v})],D.prototype,"polygonSymbol",null),e([d({types:v})],D.prototype,"polylineSymbol",null),e([d()],D.prototype,"textSymbol",null),e([d({value:"m"})],D.prototype,"scale",null),e([d()],D.prototype,"toolbarKind",void 0),e([d()],D.prototype,"contextualToolLocation",void 0),e([d()],D.prototype,"groupCollapsePriorities",void 0),e([d()],D.prototype,"groupAllowCollapseOptions",void 0),e([d(),P("esri/widgets/Sketch/t9n/Sketch")],D.prototype,"messages",void 0),e([d(),P("esri/t9n/common")],D.prototype,"messagesCommon",void 0),e([d()],D.prototype,"snappingOptions",null),e([d()],D.prototype,"state",null),e([d({type:m})],D.prototype,"tooltipOptions",null),e([d({readOnly:!0})],D.prototype,"updateGraphics",null),e([d({type:f,nonNullable:!0})],D.prototype,"valueOptions",null),e([d()],D.prototype,"view",null),e([d({type:y}),I(["create","duplicate","update","undo","redo"])],D.prototype,"viewModel",null),e([d({type:b,nonNullable:!0})],D.prototype,"visibleElements",void 0),e([d()],D.prototype,"useLegacyCreateTools",null),e([d()],D.prototype,"isUsingLegacyCreateTools",null),e([d()],D.prototype,"settingsManager",null),e([d()],D.prototype,"_effectiveAvailableCreateTools",null),e([d()],D.prototype,"_effectiveUpdateGraphicsCount",null),e([d()],D.prototype,"_effectiveFirstPluginWithSwappableLeaf",null),e([d()],D.prototype,"_effectiveActivePluginUniqueIds",null),e([d()],D.prototype,"_isEffectiveRenderStateFrozen",null),e([d()],D.prototype,"_defaultViewModel",void 0),e([d()],D.prototype,"_activeCustomToolOptions",void 0),e([d()],D.prototype,"_calcitePopoverReferenceElement",void 0),e([d()],D.prototype,"_hasLongRunningOperation",null),e([d()],D.prototype,"_relativeLocation",void 0),e([d()],D.prototype,"_popoverOpen",void 0),e([d()],D.prototype,"_showSimplificationProgress",void 0),e([d()],D.prototype,"_clickedWhileTemporarilyDisabled",void 0),D=e([u("esri.widgets.Sketch")],D);const B=D;export{B as default};
2
+ import{__decorate as e}from"tslib";import{substitute as t}from"../intl.js";import{isSome as o}from"../core/arrayUtils.js";import{deprecateWidget as i}from"../core/deprecate.js";import{handlesGroup as s}from"../core/handleUtils.js";import l from"../core/Logger.js";import{removeMaybe as r,destroyMaybe as n}from"../core/maybe.js";import{ignoreAbortErrors as a}from"../core/promiseUtils.js";import{watch as c,syncAndInitial as p,when as h}from"../core/reactiveUtils.js";import{property as d,subclass as u}from"../core/accessorSupport/decorators.js";import{symbolTypes as v}from"../symbols/support/typeUtils.js";import g from"../views/interactive/sketch/SketchLabelOptions.js";import m from"../views/interactive/sketch/SketchTooltipOptions.js";import f from"../views/interactive/sketch/SketchValueOptions.js";import _ from"./Widget.js";import y from"./Sketch/SketchViewModel.js";import b from"./Sketch/VisibleElements.js";import w from"./Sketch/support/ResponsiveToolbar/ResponsiveToolbar.js";import{loadCalciteComponents as T}from"./support/componentsUtils.js";import{connectDelayedLoading as S}from"./support/loaderUtils.js";import C from"./support/SelectionToolbar.js";import M from"./support/SketchTooltipControls.js";import O from"./support/SnappingControls.js";import{tsx as k,messageBundle as P,vmEvent as I}from"./support/widget.js";import L from"./support/SelectionToolbar/VisibleElements.js";import E from"./support/SketchTooltipControls/VisibleElements.js";const R="esri-sketch",x="settings-menu-action",G={base:R,vertical:`${R}--vertical`,docked:`${R}-bar`,floating:`${R}-pad`,chipHorizontal:`${R}__selection-count-chip--horizontal`,chipVertical:`${R}__selection-count-chip--vertical`,chipVerticalSmall:`${R}__selection-count-chip--vertical--s`,popoverWrapper:`${R}__popover-wrapper`,simplificationProgressLoader:`${R}__simplification-progress-loader`},U={point:"pin",polyline:"line",polygon:"polygon",rectangle:"rectangle",circle:"circle",multipoint:"pins",mesh:"i3DBuilding",freehandPolygon:"freehand-area",freehandPolyline:"freehand",text:"text"};let D=class extends _{constructor(e,t){super(e,t),this._selectionToolbar=null,this._viewModelHandlesGroup=null,this._popoverElement=null,this.availableCreateTools=["point","polyline","polygon","rectangle","circle"],this.customToolOptions=null,this.customActions=null,this.toolbarKind="floating",this.contextualToolLocation="separate",this.groupCollapsePriorities=null,this.groupAllowCollapseOptions=null,this.messages=null,this.messagesCommon=null,this.visibleElements=new b,this._defaultViewModel=null,this._activeCustomToolOptions=null,this._effectiveRenderStateCache=new Map,this._calcitePopoverReferenceElement=null,this._relativeLocation="top",this._popoverOpen=!1,this._showSimplificationProgress=!1,this._clickedWhileTemporarilyDisabled=!1,!0!==e?.suppressDeprecationWarning&&(this.announceDeprecation=()=>{i(l.getLogger(this),"Sketch","arcgis-sketch",{version:"5.0"})}),this._activateCreateTool=this._activateCreateTool.bind(this),this.viewModel=e?.viewModel||(this._defaultViewModel=new y({creationMode:e?.creationMode??"continuous",useLegacyCreateTools:e?.useLegacyCreateTools??"3d"===e?.view?.type})),this.viewModel.pluginManager.sketch=this}normalizeCtorArgs(e={}){const{suppressDeprecationWarning:t,...o}=e;return o}initialize(){const{layer:e,view:t}=this,o=new C({persistSelection:!1,visibleElements:new L({chip:!1,lassoTool:!0,operationTypeControls:!1,pan:!1,pointTool:!1,rectangleTool:!0}),view:t,sources:e?[e]:null,scale:this.scale,disabled:"disabled"===this.state||this._hasLongRunningOperation});this.addHandles([c(()=>this.viewModel,e=>{this._viewModelHandlesGroup=r(this._viewModelHandlesGroup),e&&(this._viewModelHandlesGroup=s([e.on("delete",e=>this.emit("delete",e)),c(()=>e.layer,e=>{this._selectionToolbar&&(this._selectionToolbar.sources=e?[e]:null)}),c(()=>e.view,e=>{this._selectionToolbar&&(this._selectionToolbar.view=e)}),c(()=>e.state,()=>{this.notifyChange("state"),this._syncSelectionToolbarDisabledState()}),c(()=>e.geometrySimplificationInProgress,e=>{e||(this._clickedWhileTemporarilyDisabled=!1),this._syncSelectionToolbarDisabledState()}),S({getLoading:()=>e.geometrySimplificationInProgress,setEffectiveLoading:e=>{this._showSimplificationProgress=e,this._syncSelectionToolbarDisabledState()}})]))},p),h(()=>o.activeOperation,()=>{this.viewModel.cancel(),this._activeCustomToolOptions=null}),o.on("complete",e=>this._onSelectionOperationComplete(e)),c(()=>{const{visibleElements:{selectionTools:e}}=this;return{lassoTool:!!e?.["lasso-selection"],rectangleTool:!!e?.["rectangle-selection"]}},e=>{Object.assign(o.visibleElements,e)},p)]),this._selectionToolbar=o,this._syncSelectionToolbarDisabledState()}loadDependencies(){return T({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),chip:()=>import("@esri/calcite-components/dist/components/calcite-chip"),loader:()=>import("@esri/calcite-components/dist/components/calcite-loader"),popover:()=>import("@esri/calcite-components/dist/components/calcite-popover")})}destroy(){this._selectionToolbar?.destroy(),this._viewModelHandlesGroup=r(this._viewModelHandlesGroup)}get activeTool(){const e=this._selectionToolbar?.activeOperation;if(e)switch(e.toolName){case"lasso":return"lasso-selection";case"rectangle":return"rectangle-selection";case"default":return"custom-selection"}const{availableCreateTools:t}=this,{activeTool:o,activeCreateToolDrawMode:i}=this.viewModel;return"polygon"===o&&"freehand"===i&&t?.includes("freehandPolygon")?"freehandPolygon":"polyline"===o&&"freehand"===i&&t?.includes("freehandPolyline")?"freehandPolyline":this.viewModel.activeTool}get activeTooltip(){return this.viewModel.activeTooltip}get createGraphic(){return this.viewModel.createGraphic}get creationMode(){return this.viewModel.creationMode}set creationMode(e){this.viewModel.creationMode=e}get defaultCreateOptions(){return this.viewModel.defaultCreateOptions}set defaultCreateOptions(e){this.viewModel.defaultCreateOptions=e}get defaultUpdateOptions(){return this.viewModel.defaultUpdateOptions}set defaultUpdateOptions(e){this.viewModel.defaultUpdateOptions=e}get icon(){return"pencil"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get labelOptions(){return this.viewModel.labelOptions}set labelOptions(e){this.viewModel.labelOptions=e}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}set layout(e){this._set("layout",e),this._selectionToolbar&&(this._selectionToolbar.layout=e)}get pointSymbol(){return this.viewModel.pointSymbol}set pointSymbol(e){this.viewModel.pointSymbol=e}get polygonSymbol(){return this.viewModel.polygonSymbol}set polygonSymbol(e){this.viewModel.polygonSymbol=e}get polylineSymbol(){return this.viewModel.polylineSymbol}set polylineSymbol(e){this.viewModel.polylineSymbol=e}get textSymbol(){return this.viewModel.textSymbol}set textSymbol(e){this.viewModel.textSymbol=e}set scale(e){this._set("scale",e),this._selectionToolbar&&(this._selectionToolbar.scale=e)}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get state(){return this._selectionToolbar?.activeOperation?"active":this.viewModel.state}get tooltipOptions(){return this.viewModel.tooltipOptions}set tooltipOptions(e){this.viewModel.tooltipOptions=e}get updateGraphics(){return this.viewModel.updateGraphics}get valueOptions(){return this.viewModel.valueOptions}set valueOptions(e){this.viewModel.valueOptions=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}set viewModel(e){const t=this._get("viewModel");e!==t&&(t&&t===this._defaultViewModel&&n(t),t?.pluginManager?.sketch===this&&(t.pluginManager.sketch=null),this._set("viewModel",e),e.pluginManager.sketch=this)}get useLegacyCreateTools(){return this.viewModel.useLegacyCreateTools}set useLegacyCreateTools(e){this.viewModel.useLegacyCreateTools=e}get isUsingLegacyCreateTools(){return this.viewModel.isUsingLegacyCreateTools}get settingsManager(){return this.viewModel.settingsManager}get _effectiveAvailableCreateTools(){return this._getEffectiveValue("availableCreateTools",()=>{const e=this.viewModel.effectiveAvailablePlugins;return e?.length?e:this._visibleCreateTools})}get _effectiveUpdateGraphicsCount(){return this._getEffectiveValue("updateGraphicsCount",()=>this.updateGraphics.length)}get _effectiveFirstPluginWithSwappableLeaf(){return this._getEffectiveValue("firstPluginWithSwappableLeaf",()=>this.viewModel.firstPluginWithSwappableLeaf)}get _effectiveActivePluginUniqueIds(){return this._getEffectiveValue("activePluginUniqueIds",()=>{const e=this.viewModel.drawTool?.pluginStack.filter(e=>!e.configuration?.hidden).map(e=>e.configuration?.uniqueId).filter(o);return e?new Set(e):new Set})}get _isEffectiveRenderStateFrozen(){const{viewModel:e}=this;return e.toolTransitionInProgress||e.geometrySimplificationInProgress}get _visibleCreateTools(){const{availableCreateTools:e,view:t,visibleElements:o}=this,i=e?.filter(e=>!!o.createTools?.[e]);return"3d"===t?.type?i?.filter(e=>"multipoint"!==e):i}_getEffectiveValue(e,t){if(!this._isEffectiveRenderStateFrozen||!this._effectiveRenderStateCache.has(e)){const o=t();return this._effectiveRenderStateCache.set(e,o),o}return this._effectiveRenderStateCache.get(e)}create(e,t,o){const i=o?.createOptions??t;return this._activeCustomToolOptions=o,a(this.viewModel.create(e,i))}update(e,t){return a(this.viewModel.update(e,t))}complete(){this.viewModel.complete()}cancel(){this._selectionToolbar?.cancel(),this.viewModel.cancel(),this._activeCustomToolOptions=null}undo(){this.viewModel.undo(),this.view?.focus()}redo(){this.viewModel.redo(),this.view?.focus()}delete(){this.viewModel.delete()}duplicate(){return this.viewModel.duplicate()}dismissFloatingElements(){this._popoverOpen=!1}render(){const{toolbarKind:e,layout:t,scale:o}=this;return k("div",null,k("div",{classes:{[G.base]:!0,[G.floating]:"floating"===e,[G.docked]:"docked"===e,[G.vertical]:"vertical"===t}},k(w,{barStyle:e,layout:t,scale:o},this._renderSelectionSetItemGroupInline(),this._renderSelectionToolsOrBack(),this._renderCreateToolActionGroup(),this._renderUndoRedoMenuItemGroup(),this._renderSettingsMenuItemGroup(),this._renderSimplificationProgressItemGroupInline()),this._renderSelectionSetToolbar(),this._renderSimplificationProgressToolbar(),this._renderSettingsMenuPopover()))}_renderSimplificationProgressToolbar(){if("separate"!==this.contextualToolLocation)return;const e=this._renderSimplificationProgressItemGroup();return e?k(w,{barStyle:this.toolbarKind,layout:this.layout,scale:this.scale},e):void 0}_renderSimplificationProgressItemGroupInline(){if("separate"!==this.contextualToolLocation)return this._renderSimplificationProgressItemGroup()}_renderSelectionToolsOrBack(){if(!this.viewModel.isUsingLegacyCreateTools&&this._effectiveFirstPluginWithSwappableLeaf)return this._renderBackButton();const e=this.customActions?.filter(e=>"selection-toolbar"===e.position);return k("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionTools")??!0,"group-kind":"split-button",key:"selection-split-button",priority:this.groupCollapsePriorities?.get("selectionTools")??0},this._renderDefaultSelectionButton(),this._selectionToolbar?.render(),e?.map(e=>this._renderToolbarItem(e)))}_renderSettingsMenuPopover(){const{messagesCommon:e,snappingOptions:t,view:o,viewModel:i,visibleElements:s}=this;if(!this._calcitePopoverReferenceElement)return;const l={directionModePicker:s.directionModePicker,labelsToggle:s.labelsToggle,tooltipsToggle:s.tooltipsToggle},r="horizontal"===this.layout?"top"===this._relativeLocation?"bottom-end":"top-end":"right-end";return k("calcite-popover",{afterCreate:e=>this._popoverElement=e,closable:!0,heading:e.settings,key:`${this.id}-settings`,label:e.settings,open:this._popoverOpen,overlayPositioning:"fixed",placement:r,referenceElement:this._calcitePopoverReferenceElement,scale:this.scale,topLayerDisabled:this.topLayerDisabled,onCalcitePopoverBeforeClose:e=>this._beforePopoverClose(e.target),onCalcitePopoverBeforeOpen:e=>this._remeasurePopoverSizes(e.currentTarget),onCalcitePopoverClose:e=>this._refocusOnView(e.target)},k("div",{class:G.popoverWrapper},Object.values(l).includes(!0)?k(M,{sketchOptions:i.sketchOptions,view:o,visibleElements:new E(l)}):void 0,s.snappingControls&&o&&t?k(O,{snappingManager:this.viewModel.snappingManager,snappingOptions:t,view:o,visibleElements:s.snappingControlsElements}):void 0))}_beforePopoverClose(e){e===this._popoverElement&&(this._popoverOpen=!1)}_renderSelectionSetToolbar(){if("separate"!==this.contextualToolLocation)return;const e=this._renderSelectionSetItemGroup();return e?.length?k(w,{barStyle:this.toolbarKind,layout:this.layout,scale:this.scale},e):void 0}_renderSimplificationProgressItemGroup(){if(!this.visibleElements.geometrySimplificationActivityIndicator||!this._showSimplificationProgress)return;const e=`${this.messages.finalizingDrawingTitle}`;return k("div",{"group-kind":"measured-content-group",key:"simplification-progress-group",slot:"actions-end"},k("calcite-action",{"data-testid":"simplification-progress",key:"simplification-progress",scale:this.scale,text:e,title:e},k("calcite-loader",{class:G.simplificationProgressLoader,inline:!0,label:e,scale:this.scale,type:"indeterminate"})))}_renderSelectionSetItemGroupInline(){return"separate"===this.contextualToolLocation?[]:this._renderSelectionSetItemGroup()}_renderUndoRedoMenuItemGroup(){return k("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("undoRedo")??!0,"group-kind":"split-button",key:"undo-redo-menu",priority:this.groupCollapsePriorities?.get("undoRedo")??10,slot:"actions-end"},this._renderUndoButton(),this._renderRedoButton())}_renderSettingsMenuItemGroup(){const e=[],t=[];this.customActions?.forEach(o=>{"settings-before"===o.position?t.push(o):"settings-after"===o.position&&e.push(o)});const i=[...t.map(e=>this._renderToolbarItem(e)),this._renderSettingsMenuButton(),...e.map(e=>this._renderToolbarItem(e))].filter(o);if(i.length)return k("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("settings")??!1,"group-kind":"overflow-group",key:"settings-menu",priority:this.groupCollapsePriorities?.get("settings")??1e3,slot:"actions-end"},i)}_renderSelectionSetItemGroup(){if(!this._effectiveUpdateGraphicsCount)return[];const e="inline-end"===this.contextualToolLocation?"actions-end":void 0,t=this.customActions?.filter(e=>"before-selection-set"===e.position),o=this.customActions?.filter(e=>"after-selection-set"===e.position),i=this.groupCollapsePriorities?.get("selectionSet")??100;return[k("div",{"group-kind":"measured-content",key:"selection-count-chip-group",priority:i,slot:e},this._renderFeatureCountChip()),k("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionSet")??!1,"group-kind":"overflow-group",key:"selection-set-tool-group",priority:i,slot:e},t?.map(e=>this._renderToolbarItem(e)),this._renderDuplicateButton(),this._renderDeleteButton(),o?.map(e=>this._renderToolbarItem(e)))]}_renderDefaultSelectionButton(){if(!this._getEffectiveValue("updateOnGraphicClick",()=>this.viewModel.updateOnGraphicClick))return[];const{messages:e}=this;return this._renderToolbarItem({id:"pointer-select",text:e.selectFeature,icon:"cursor",onclick:this._activateDefaultSelectTool,active:"ready"===this._getEffectiveValue("state",()=>this.state)})}_renderBackButton(){const{isUsingLegacyCreateTools:e}=this,t=this._getEffectiveValue("multiplePluginsActive",()=>this.viewModel.multiplePluginsActive),o=this._effectiveFirstPluginWithSwappableLeaf,i=this._getEffectiveValue("rootPlugins",()=>this.viewModel.rootPlugins);if(!e&&t&&o&&i&&(!(i.length<2&&i.includes(o))||this.visibleElements.singlePluginBackButton))return k("div",{"allow-collapse":!1,"group-kind":"overflow-group",key:"selection-split-button"},k("calcite-action",{disabled:"disabled"===this.state||this._hasLongRunningOperation,icon:"chevron-left",iconFlipRtl:!0,scale:this.scale,text:this.messagesCommon.back,onclick:()=>{this.shouldIgnoreClick()||this.viewModel?.cancel()}}))}_renderCreateToolActionGroup(){const e=this._effectiveFirstPluginWithSwappableLeaf?[]:this.customToolOptions?.flatMap(e=>this._renderCustomToolItem(e))??[],t=this._effectiveAvailableCreateTools,o=t?.filter(e=>"string"==typeof e),i=o?.map(e=>this._renderCreateToolItem(e)),s=t?.filter(e=>"string"!=typeof e).map(e=>this._renderCreateToolItem(e));return[i?.length||e?.length||s?.length?k("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("createTools")??!0,"group-kind":"overflow-group",key:"create-tools-group",priority:this.groupCollapsePriorities?.get("createTools")??100},i,e,s):void 0]}_renderCreateToolItem(e){return"string"==typeof e?this._renderBuiltInCreateToolItem(e):this._renderDrawToolPluginItem(e)}_renderDrawToolPluginItem(e){const{icon:t,localizationKey:o,uniqueId:i,hidden:s}=e;if(s)return[];const l=this.messages.digitizers,r=l?.[o]??o,n=!this._activeCustomToolOptions&&this._effectiveActivePluginUniqueIds.has(i);return this._renderToolbarItem({id:`${o}-button`,text:r,icon:t,onclick:()=>this._activatePlugin([e]),active:n})}_renderBuiltInCreateToolItem(e){return this._renderToolbarItem({id:`${e}-button`,text:this.messages.draw[e],icon:U[e],onclick:()=>this._activateCreateTool(e),active:this._getEffectiveValue("activeTool",()=>this.activeTool)===e&&!this._activeCustomToolOptions})}_renderCustomToolItem(e){const{toolKey:t}=e;return this._renderToolbarItem({id:`custom-${e.toolKey}`,text:e.label,icon:e.icon,onclick:()=>this._activateCreateTool(e.toolName,null,e),active:this._activeCustomToolOptions?.toolKey===t})}_renderUndoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"undo-button",text:this.messages.undo,icon:"undo",disabled:!this.viewModel.canUndo(),onclick:this.undo,flipRTL:!0}):[]}_renderRedoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"redo-button",text:this.messages.redo,icon:"redo",disabled:!this.viewModel.canRedo(),onclick:this.redo,flipRTL:!0}):[]}_renderSettingsMenuButton(){return this.visibleElements.settingsMenu?this._renderToolbarItem({id:x,text:this.messagesCommon.settings,icon:"gear",active:this._popoverOpen,onclick:()=>this._popoverOpen=!this._popoverOpen,afterCreate:e=>this._calcitePopoverReferenceElement=e,afterUpdate:e=>this._calcitePopoverReferenceElement=e,afterRemoved:()=>this._calcitePopoverReferenceElement=null}):[]}_renderFeatureCountChip(){if(!this.visibleElements.selectionCountLabel)return[];const{layout:e,messages:o,scale:i,id:s}=this,l=this._effectiveUpdateGraphicsCount,r=t(o.selectedCount,{count:l}),n="l"===i?999:99,a=l>n?t(o.selectedCountTruncated,{truncated:n}):l,c="l"!==i&&"vertical"===e,p=c?`${s}-selection-chip-small`:`${s}-selection-chip`;return[c?k("span",{classes:{[G.chipVertical]:!0,[G.chipVerticalSmall]:"s"===this.scale},id:p,tabIndex:0,title:r},a):k("calcite-chip",{appearance:"outline",class:"horizontal"===e?G.chipHorizontal:G.chipVertical,id:p,kind:"brand",label:r,scale:"l"===i?"m":"s",tabIndex:0,title:"vertical"===e?r:void 0},"vertical"===e?a:r)]}_renderDuplicateButton(){if(!this.visibleElements.duplicateButton)return[];const{messages:e}=this;return this._renderToolbarItem({id:"duplicate",text:this._effectiveUpdateGraphicsCount>1?e.duplicateFeatures:e.duplicateFeature,icon:"copy",onclick:this._onDuplicateSelect})}_renderDeleteButton(){if(!this.visibleElements.deleteButton)return[];const{messages:e}=this,t=this._effectiveUpdateGraphicsCount>1?e.deleteFeatures:e.deleteFeature;return this._renderToolbarItem({id:"delete",text:t,icon:"trash",onclick:this.delete})}_renderToolbarItem({id:e,text:t,icon:o,disabled:i,onclick:s,active:l,flipRTL:r,afterCreate:n,afterUpdate:a,afterRemoved:c}){const p=`${this.id}-${e}`,h=s?()=>{this.shouldIgnoreClick()||s.call(this)}:void 0;return[k("calcite-action",{active:l,afterCreate:n,afterRemoved:c,afterUpdate:a,bind:this,"data-testid":e,disabled:i||"disabled"===this.state||this._hasLongRunningOperation,icon:o,iconFlipRtl:r??!1,id:p,key:e,scale:this.scale,text:t,title:t,onclick:h})]}get _hasLongRunningOperation(){return this._showSimplificationProgress||this._clickedWhileTemporarilyDisabled}_remeasurePopoverSizes(e){try{const t=this._calcitePopoverReferenceElement,o=e.parentElement,i=this?.view?.container?.getBoundingClientRect(),s=o?.style;if(!(o&&i&&s&&this.view?.container?.contains(o)&&t))return;const{bottom:l,top:r}=t.getBoundingClientRect();if("horizontal"===this.layout){const e=l<i.height/2;e!==("top"===this._relativeLocation)&&(this._relativeLocation=e?"top":"bottom"),e?(s?.setProperty("--sketch-view-height-offset",l-i.top+"px"),s?.setProperty("--sketch-view-margin-offset","30px")):(s?.setProperty("--sketch-view-height-offset",i.bottom-r+"px"),s?.setProperty("--sketch-view-margin-offset","15px"))}else"vertical"===this.layout&&(s.setProperty("--sketch-view-height-offset","15px"),s.setProperty("--sketch-view-margin-offset","15px"));const n=e.shadowRoot?.querySelector("div.header")?.getBoundingClientRect().height;s.setProperty("--sketch-popover-header-offset",`${n}px`)}catch(t){l.getLogger(this.declaredClass).warnOnce("Sketch failed to lay out settings menu.",t)}}_activateCreateTool(e,t,o){const i=this._activeCustomToolOptions;if(o||i){if(o?.toolKey===i?.toolKey)return void this.cancel()}else if(this.activeTool===e)return void this.cancel();this._selectionToolbar?.cancel(),this.create(e,t,o)}_activatePlugin(e){this._selectionToolbar?.cancel(),this.viewModel.firstPluginWithSwappableLeaf?(this.viewModel.drawTool?.replaceLeaf(e),this.view?.ready&&this.view.focus()):this._activateCreateTool(e)}_onDuplicateSelect(){const e=this.duplicate(),t=this.viewModel.activeTool;"transform"!==t&&"reshape"!==t||this.update(e,{tool:t})}shouldIgnoreClick(){return!!this._clickedWhileTemporarilyDisabled||!!this.viewModel.geometrySimplificationInProgress&&(this._clickedWhileTemporarilyDisabled=!0,this._syncSelectionToolbarDisabledState(),!0)}_onSelectionOperationComplete(e){const{viewModel:{defaultUpdateOptions:t}}=this,{selection:o}=e;if(!e.aborted&&o.length){const e=t.tool,i=o.length>1&&"reshape"===e?"transform":e;this.update(o,{...t,tool:i})}this.notifyChange("state")}_activateDefaultSelectTool(){this.cancel(),this.view?.focus()}_refocusOnView(e){this.activeTool&&e===this._popoverElement&&this.view?.focus()}_syncSelectionToolbarDisabledState(){this._selectionToolbar&&(this._selectionToolbar.disabled="disabled"===this.state||this._hasLongRunningOperation)}};e([d()],D.prototype,"activeTool",null),e([d({readOnly:!0})],D.prototype,"activeTooltip",null),e([d({cast:e=>{if(!e?.length)return null;const t=new Set(["point","polyline","polygon","rectangle","circle","multipoint","freehandPolyline","freehandPolygon","mesh","text"]);return e.filter(e=>t.has(e))}})],D.prototype,"availableCreateTools",void 0),e([d({readOnly:!0})],D.prototype,"createGraphic",null),e([d()],D.prototype,"creationMode",null),e([d()],D.prototype,"customToolOptions",void 0),e([d()],D.prototype,"customActions",void 0),e([d()],D.prototype,"defaultCreateOptions",null),e([d()],D.prototype,"defaultUpdateOptions",null),e([d()],D.prototype,"icon",null),e([d()],D.prototype,"label",null),e([d({type:g})],D.prototype,"labelOptions",null),e([d()],D.prototype,"layer",null),e([d({type:["horizontal","vertical"],value:"horizontal"})],D.prototype,"layout",null),e([d({types:v})],D.prototype,"pointSymbol",null),e([d({types:v})],D.prototype,"polygonSymbol",null),e([d({types:v})],D.prototype,"polylineSymbol",null),e([d()],D.prototype,"textSymbol",null),e([d({value:"m"})],D.prototype,"scale",null),e([d()],D.prototype,"toolbarKind",void 0),e([d()],D.prototype,"contextualToolLocation",void 0),e([d()],D.prototype,"groupCollapsePriorities",void 0),e([d()],D.prototype,"groupAllowCollapseOptions",void 0),e([d(),P("esri/widgets/Sketch/t9n/Sketch")],D.prototype,"messages",void 0),e([d(),P("esri/t9n/common")],D.prototype,"messagesCommon",void 0),e([d()],D.prototype,"snappingOptions",null),e([d()],D.prototype,"state",null),e([d({type:m})],D.prototype,"tooltipOptions",null),e([d({readOnly:!0})],D.prototype,"updateGraphics",null),e([d({type:f,nonNullable:!0})],D.prototype,"valueOptions",null),e([d()],D.prototype,"view",null),e([d({type:y}),I(["create","duplicate","update","undo","redo"])],D.prototype,"viewModel",null),e([d({type:b,nonNullable:!0})],D.prototype,"visibleElements",void 0),e([d()],D.prototype,"useLegacyCreateTools",null),e([d()],D.prototype,"isUsingLegacyCreateTools",null),e([d()],D.prototype,"settingsManager",null),e([d()],D.prototype,"_effectiveAvailableCreateTools",null),e([d()],D.prototype,"_effectiveUpdateGraphicsCount",null),e([d()],D.prototype,"_effectiveFirstPluginWithSwappableLeaf",null),e([d()],D.prototype,"_effectiveActivePluginUniqueIds",null),e([d()],D.prototype,"_isEffectiveRenderStateFrozen",null),e([d()],D.prototype,"_defaultViewModel",void 0),e([d()],D.prototype,"_activeCustomToolOptions",void 0),e([d()],D.prototype,"_calcitePopoverReferenceElement",void 0),e([d()],D.prototype,"_hasLongRunningOperation",null),e([d()],D.prototype,"_relativeLocation",void 0),e([d()],D.prototype,"_popoverOpen",void 0),e([d()],D.prototype,"_showSimplificationProgress",void 0),e([d()],D.prototype,"_clickedWhileTemporarilyDisabled",void 0),D=e([u("esri.widgets.Sketch")],D);const B=D;export{B as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../core/Collection.js";import{deprecateWidget as i}from"../core/deprecate.js";import{IdentifiableMixin as o}from"../core/Identifiable.js";import s from"../core/Logger.js";import{on as l,initial as r,watch as n}from"../core/reactiveUtils.js";import{property as a,subclass as d}from"../core/accessorSupport/decorators.js";import c from"./Widget.js";import m from"./LayerList/LayerListItem.js";import{minDragEnabledItems as p,minFilterItems as h,getLayerType as u,removeDestroyedListItems as g,setFilterPredicate as f}from"./LayerList/support/layerListUtils.js";import{loadCalciteComponents as I}from"./support/componentsUtils.js";import{globalCss as b}from"./support/globalCss.js";import{calciteListFilterProps as v}from"./support/listUtils.js";import{tsx as _,messageBundle as w,vmEvent as y}from"./support/widget.js";import{setFocus as L}from"./support/widgetUtils.js";import{css as E}from"./TableList/css.js";import C from"./TableList/ListItem.js";import M from"./TableList/TableListViewModel.js";import F from"./TableList/TableListVisibleElements.js";import{getItem as P,sortTablesToIds as D}from"./TableList/support/tableListUtils.js";const T="nested",U=t.ofType(C);let j=class extends(o(c)){constructor(e,t){super(e,t),this._rootListEl=null,this._focusRootFlowItem=!1,this._focusPanelFlowItem=!1,this._lastDragDetail=null,this._selectedDragItemLayerUid=null,this._rootGroupUid=`table-${this.uid}`,this.collapsed=!1,this.dragEnabled=!1,this.filterPlaceholder="",this.filterPredicate=null,this.filterText="",this.headingLevel=2,this.listItemCanGiveFunction=null,this.listItemCanReceiveFunction=null,this.messages=null,this.messagesCommon=null,this.minDragEnabledItems=p,this.minFilterItems=h,this.selectedItems=new U,this.selectionMode="none",this.viewModel=new M,this.visibleElements=new F,this._canMove=({dragEl:e,fromEl:t,toEl:i},o)=>{const s="pull"===o?this.listItemCanGiveFunction:this.listItemCanReceiveFunction,l=P(e);if(!l?.sortable)return!1;const r=P(t),n=u(t),a=P(i),d=u(i),c=!!n&&!!d&&n===d,m={selected:l,from:r,to:a},p=t.group,h=i.group;return p&&h&&"function"==typeof s?s.call(null,m):c},this._onCalciteListOrderChange=e=>{const{_lastDragDetail:t}=this,{toEl:i,fromEl:o,dragEl:s,newIndex:l}=e;if(!o||!i||t?.newIndex===l&&t?.dragEl===s&&t?.toEl===i&&t?.fromEl===o)return;this._lastDragDetail=e,this._selectedDragItemLayerUid=s.value;const r=Array.from(o.children).filter(e=>e?.matches("calcite-list-item")).map(e=>e.value);D(this.viewModel.tables,r)},this._onSelectedDragItemLayerUidChange=e=>{this._selectedDragItemLayerUid=e},this._onTriggerAction=(e,t)=>{this.triggerAction(e,t)},this._onPanelOpen=()=>{this._focusPanelFlowItem=!0},this.announceDeprecation=()=>{i(s.getLogger(this),"Table List","arcgis-table-list",{version:"5.0"})}}initialize(){this.addHandles([l(()=>this.viewModel.tableItems,"change",()=>g(this.selectedItems),r),n(()=>[this.filterPredicate,this._rootListEl],()=>f(this._rootListEl,this.filterPredicate))])}loadDependencies(){return I({button:()=>import("@esri/calcite-components/dist/components/calcite-button"),flow:()=>import("@esri/calcite-components/dist/components/calcite-flow"),"flow-item":()=>import("@esri/calcite-components/dist/components/calcite-flow-item"),list:()=>import("@esri/calcite-components/dist/components/calcite-list"),notice:()=>import("@esri/calcite-components/dist/components/calcite-notice")})}get _dragEnabled(){return this.viewModel.totalItems>=this.minDragEnabledItems&&this.dragEnabled}get _filterEnabled(){return this.viewModel.totalItems>=this.minFilterItems&&this.visibleElements.filter}get _visibleItems(){return this.tableItems?.filter(e=>!e.hidden&&(this.visibleElements.errors||!e.error))}get _openedPanelItems(){return this._visibleItems.filter(({hidden:e,panel:t})=>!e&&t?.open&&!t.disabled&&t.flowEnabled)}get icon(){return"table"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get listItemCreatedFunction(){return this.viewModel.listItemCreatedFunction}set listItemCreatedFunction(e){this.viewModel.listItemCreatedFunction=e}get map(){return this.viewModel.map}set map(e){this.viewModel.map=e}get tableItems(){return this.viewModel.tableItems}get tables(){return this.viewModel.tables}set tables(e){this.viewModel.tables=e}triggerAction(e,t){return this.viewModel.triggerAction(e,t)}render(){const e=this.viewModel?.state,t={[b.hidden]:"loading"===e,[b.disabled]:"disabled"===e};return _("div",{class:this.classes(E.base,b.widget,b.panel,t)},this._renderItems())}_renderNoItemsMessage(){return _("div",{slot:"message"},this.messages.noItemsToDisplay)}_renderNoItems(){return _("div",{class:E.itemMessage,key:"esri-layer-list__no-items"},_("calcite-notice",{icon:"information",kind:"info",open:!0,width:"full"},this._renderNoItemsMessage()))}_renderPanelFlowItems(){const{_openedPanelItems:e}=this;return e.toArray().map(({title:t,panel:i},o)=>{const s=()=>this._handlePanelFlowItemBack(i);return _("calcite-flow-item",{afterCreate:this._focusPanelFlowItemNode,afterUpdate:this._focusPanelFlowItemNode,bind:this,description:t,heading:i.title,headingLevel:this.headingLevel,key:`flow-panel-${i.uid}`,selected:o===e.length-1,onCalciteFlowItemBack:e=>{e.preventDefault(),s()}},i.render(),_("calcite-button",{appearance:"transparent",slot:"footer-start",width:"full",onclick:s},this.messagesCommon.back))})}_handlePanelFlowItemBack(e){e.open=!1,this._focusRootFlowItem=!0}_focusRootFlowItemNode(e){this._focusRootFlowItem&&(this._focusRootFlowItem=!1,L(e))}_focusPanelFlowItemNode(e){this._focusPanelFlowItem&&(this._focusPanelFlowItem=!1,L(e))}_renderItems(){const{visible:e,collapsed:t,visibleElements:{closeButton:i,collapseButton:o,heading:s,flow:l},_dragEnabled:r,_visibleItems:n,_filterEnabled:a,_rootGroupUid:d,_openedPanelItems:c,selectionMode:m,messages:p,filterPlaceholder:h,filterText:u}=this,g=[_("calcite-flow-item",{afterCreate:this._focusRootFlowItemNode,afterUpdate:this._focusRootFlowItemNode,bind:this,closable:i,closed:!e,collapsed:t,collapsible:o,heading:s?p.widgetLabel:void 0,headingLevel:this.headingLevel,key:"root-flow-item",selected:!c.length,onCalciteFlowItemClose:()=>this.visible=!1},n?.length?null:this._renderNoItems(),_("calcite-list",{afterCreate:e=>{this._rootListEl=e},afterRemoved:()=>{this._rootListEl=null},canPull:e=>this._canMove(e,"pull"),canPut:e=>this._canMove(e,"put"),"data-layer-type":d,displayMode:T,dragEnabled:r,filterEnabled:a,filterPlaceholder:h,filterProps:v,filterText:a?u:"",group:d,key:"root-list",label:p.widgetLabel,selectionAppearance:"border",selectionMode:m,onCalciteListChange:e=>this._handleCalciteListChange(e),onCalciteListDragEnd:e=>this._handleCalciteListDragEnd(e.detail),onCalciteListFilter:e=>this.filterText=e.currentTarget?.filterText??"",onCalciteListOrderChange:e=>this._onCalciteListOrderChange(e.detail)},n.toArray().map(e=>this._renderItem(e)),a?_("div",{class:E.filterNoResults,slot:"filter-no-results"},_("calcite-notice",{kind:"info",open:!0,width:"full"},this._renderNoItemsMessage())):null)),this._renderPanelFlowItems()];return e?l?_("calcite-flow",{key:"root-flow"},g):g:null}_handleCalciteListDragEnd(e){const{fromEl:t,dragEl:i,oldIndex:o}=e;t.insertBefore(i,t.children[o])}_renderItem(e){return _(m,{canMove:this._canMove,css:E,displayMode:T,dragEnabled:this.dragEnabled,item:e,key:`layerListItem-${e.layer.uid}`,listModeDisabled:this.viewModel.listModeDisabled,messages:this.messages,messagesCommon:this.messagesCommon,rootGroupUid:this._rootGroupUid,selectedDragItemLayerUid:this._selectedDragItemLayerUid,selectedItems:this.selectedItems,selectionMode:this.selectionMode,visibleElements:this.visibleElements,onAction:this._onTriggerAction,onPanelOpen:this._onPanelOpen,onSelectedDragItemLayerUidChange:this._onSelectedDragItemLayerUidChange})}_handleCalciteListChange(e){const{selectionMode:t,selectedItems:i}=this;if("none"===t)return;const o=e.target.selectedItems.map(e=>P(e)).filter(Boolean);i.removeAll(),i.addMany(o)}};e([a()],j.prototype,"_rootListEl",void 0),e([a()],j.prototype,"_focusRootFlowItem",void 0),e([a()],j.prototype,"_focusPanelFlowItem",void 0),e([a()],j.prototype,"_dragEnabled",null),e([a()],j.prototype,"_filterEnabled",null),e([a()],j.prototype,"_visibleItems",null),e([a()],j.prototype,"_openedPanelItems",null),e([a()],j.prototype,"collapsed",void 0),e([a()],j.prototype,"dragEnabled",void 0),e([a()],j.prototype,"filterPlaceholder",void 0),e([a()],j.prototype,"filterPredicate",void 0),e([a()],j.prototype,"filterText",void 0),e([a()],j.prototype,"headingLevel",void 0),e([a()],j.prototype,"icon",null),e([a()],j.prototype,"label",null),e([a()],j.prototype,"listItemCanGiveFunction",void 0),e([a()],j.prototype,"listItemCanReceiveFunction",void 0),e([a()],j.prototype,"listItemCreatedFunction",null),e([a()],j.prototype,"map",null),e([a(),w("esri/widgets/TableList/t9n/TableList")],j.prototype,"messages",void 0),e([a(),w("esri/t9n/common")],j.prototype,"messagesCommon",void 0),e([a()],j.prototype,"minDragEnabledItems",void 0),e([a()],j.prototype,"minFilterItems",void 0),e([a({type:U})],j.prototype,"selectedItems",void 0),e([a()],j.prototype,"selectionMode",void 0),e([a({readOnly:!0})],j.prototype,"tableItems",null),e([a()],j.prototype,"tables",null),e([y("trigger-action"),a({type:M})],j.prototype,"viewModel",void 0),e([a({type:F,nonNullable:!0})],j.prototype,"visibleElements",void 0),j=e([d("esri.widgets.TableList")],j);const k=j;export{k as default};
2
+ import{__decorate as e}from"tslib";import t from"../core/Collection.js";import{deprecateWidget as i}from"../core/deprecate.js";import{IdentifiableMixin as o}from"../core/Identifiable.js";import s from"../core/Logger.js";import{on as l,initial as r,watch as n}from"../core/reactiveUtils.js";import{property as a,subclass as d}from"../core/accessorSupport/decorators.js";import c from"./Widget.js";import m from"./LayerList/LayerListItem.js";import{minDragEnabledItems as p,minFilterItems as h,getLayerType as u,removeDestroyedListItems as g,setFilterPredicate as f}from"./LayerList/support/layerListUtils.js";import{loadCalciteComponents as I}from"./support/componentsUtils.js";import{globalCss as b}from"./support/globalCss.js";import{calciteListFilterProps as v}from"./support/listUtils.js";import{tsx as _,messageBundle as w,vmEvent as y}from"./support/widget.js";import{setFocus as L}from"./support/widgetUtils.js";import{css as E}from"./TableList/css.js";import C from"./TableList/ListItem.js";import M from"./TableList/TableListViewModel.js";import F from"./TableList/TableListVisibleElements.js";import{getItem as P,sortTablesToIds as D}from"./TableList/support/tableListUtils.js";const T="nested",U=t.ofType(C);let j=class extends(o(c)){constructor(e,t){super(e,t),this._rootListEl=null,this._focusRootFlowItem=!1,this._focusPanelFlowItem=!1,this._lastDragDetail=null,this._selectedDragItemLayerUid=null,this._rootGroupUid=`table-${this.uid}`,this.collapsed=!1,this.dragEnabled=!1,this.filterPlaceholder="",this.filterPredicate=null,this.filterText="",this.headingLevel=2,this.listItemCanGiveFunction=null,this.listItemCanReceiveFunction=null,this.messages=null,this.messagesCommon=null,this.minDragEnabledItems=p,this.minFilterItems=h,this.selectedItems=new U,this.selectionMode="none",this.viewModel=new M,this.visibleElements=new F,this._canMove=({dragEl:e,fromEl:t,toEl:i},o)=>{const s="pull"===o?this.listItemCanGiveFunction:this.listItemCanReceiveFunction,l=P(e);if(!l?.sortable)return!1;const r=P(t),n=u(t),a=P(i),d=u(i),c=!!n&&!!d&&n===d,m={selected:l,from:r,to:a},p=t.group,h=i.group;return p&&h&&"function"==typeof s?s.call(null,m):c},this._onCalciteListOrderChange=e=>{const{_lastDragDetail:t}=this,{toEl:i,fromEl:o,dragEl:s,newIndex:l}=e;if(!o||!i||t?.newIndex===l&&t?.dragEl===s&&t?.toEl===i&&t?.fromEl===o)return;this._lastDragDetail=e,this._selectedDragItemLayerUid=s.value;const r=Array.from(o.children).filter(e=>e?.matches("calcite-list-item")).map(e=>e.value);D(this.viewModel.tables,r)},this._onSelectedDragItemLayerUidChange=e=>{this._selectedDragItemLayerUid=e},this._onTriggerAction=(e,t)=>{this.triggerAction(e,t)},this._onPanelOpen=()=>{this._focusPanelFlowItem=!0},this.announceDeprecation=()=>{i(s.getLogger(this),"Table List","arcgis-table-list",{version:"5.0"})}}initialize(){this.addHandles([l(()=>this.viewModel.tableItems,"change",()=>g(this.selectedItems),r),n(()=>[this.filterPredicate,this._rootListEl],()=>f(this._rootListEl,this.filterPredicate))])}loadDependencies(){return I({button:()=>import("@esri/calcite-components/dist/components/calcite-button"),flow:()=>import("@esri/calcite-components/dist/components/calcite-flow"),"flow-item":()=>import("@esri/calcite-components/dist/components/calcite-flow-item"),list:()=>import("@esri/calcite-components/dist/components/calcite-list"),notice:()=>import("@esri/calcite-components/dist/components/calcite-notice")})}get _dragEnabled(){return this.viewModel.totalItems>=this.minDragEnabledItems&&this.dragEnabled}get _filterEnabled(){return this.viewModel.totalItems>=this.minFilterItems&&this.visibleElements.filter}get _visibleItems(){return this.tableItems?.filter(e=>!e.hidden&&(this.visibleElements.errors||!e.error))}get _openedPanelItems(){return this._visibleItems.filter(({hidden:e,panel:t})=>!e&&t?.open&&!t.disabled&&t.flowEnabled)}get icon(){return"table"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get listItemCreatedFunction(){return this.viewModel.listItemCreatedFunction}set listItemCreatedFunction(e){this.viewModel.listItemCreatedFunction=e}get map(){return this.viewModel.map}set map(e){this.viewModel.map=e}get tableItems(){return this.viewModel.tableItems}get tables(){return this.viewModel.tables}set tables(e){this.viewModel.tables=e}triggerAction(e,t){return this.viewModel.triggerAction(e,t)}render(){const e=this.viewModel?.state,t={[b.hidden]:"loading"===e,[b.disabled]:"disabled"===e};return _("div",{class:this.classes(E.base,b.widget,b.panel,t)},this._renderItems())}_renderNoItemsMessage(){return _("div",{slot:"message"},this.messages.noItemsToDisplay)}_renderNoItems(){return _("div",{class:E.itemMessage,key:"esri-layer-list__no-items"},_("calcite-notice",{icon:"information",kind:"info",open:!0,width:"full"},this._renderNoItemsMessage()))}_renderPanelFlowItems(){const{_openedPanelItems:e}=this;return e.toArray().map(({title:t,panel:i},o)=>{const s=()=>this._handlePanelFlowItemBack(i);return _("calcite-flow-item",{afterCreate:this._focusPanelFlowItemNode,afterUpdate:this._focusPanelFlowItemNode,bind:this,description:t,heading:i.title,headingLevel:this.headingLevel,key:`flow-panel-${i.uid}`,selected:o===e.length-1,onCalciteFlowItemBack:e=>{e.preventDefault(),s()}},i.render(),_("calcite-button",{appearance:"transparent",slot:"footer-start",width:"full",onclick:s},this.messagesCommon.back))})}_handlePanelFlowItemBack(e){e.open=!1,this._focusRootFlowItem=!0}_focusRootFlowItemNode(e){this._focusRootFlowItem&&(this._focusRootFlowItem=!1,L(e))}_focusPanelFlowItemNode(e){this._focusPanelFlowItem&&(this._focusPanelFlowItem=!1,L(e))}_renderItems(){const{visible:e,collapsed:t,visibleElements:{closeButton:i,collapseButton:o,heading:s,flow:l},_dragEnabled:r,_visibleItems:n,_filterEnabled:a,_rootGroupUid:d,_openedPanelItems:c,selectionMode:m,messages:p,filterPlaceholder:h,filterText:u}=this,g=[_("calcite-flow-item",{afterCreate:this._focusRootFlowItemNode,afterUpdate:this._focusRootFlowItemNode,bind:this,closable:i,closed:!e,collapsed:t,collapsible:o,heading:s?p.widgetLabel:void 0,headingLevel:this.headingLevel,key:"root-flow-item",selected:!c.length,onCalciteFlowItemClose:()=>this.visible=!1},n?.length?null:this._renderNoItems(),_("calcite-list",{afterCreate:e=>{this._rootListEl=e},afterRemoved:()=>{this._rootListEl=null},canPull:e=>this._canMove(e,"pull"),canPut:e=>this._canMove(e,"put"),"data-layer-type":d,displayMode:T,dragEnabled:r,filterEnabled:a,filterPlaceholder:h,filterProps:v,filterText:a?u:"",group:d,key:"root-list",label:p.widgetLabel,selectionAppearance:"border",selectionMode:m,onCalciteListChange:e=>this._handleCalciteListChange(e),onCalciteListDragEnd:e=>this._handleCalciteListDragEnd(e.detail),onCalciteListFilter:e=>this.filterText=e.currentTarget?.filterText??"",onCalciteListOrderChange:e=>this._onCalciteListOrderChange(e.detail)},n.toArray().map(e=>this._renderItem(e)),a?_("div",{class:E.filterNoResults,slot:"filter-no-results"},_("calcite-notice",{kind:"info",open:!0,width:"full"},this._renderNoItemsMessage())):null)),this._renderPanelFlowItems()];return e?l?_("calcite-flow",{key:"root-flow"},g):g:null}_handleCalciteListDragEnd({fromEl:e,dragEl:t,oldIndex:i}){null!=i&&e.insertBefore(t,e.children[i])}_renderItem(e){return _(m,{canMove:this._canMove,css:E,displayMode:T,dragEnabled:this.dragEnabled,item:e,key:`layerListItem-${e.layer.uid}`,listModeDisabled:this.viewModel.listModeDisabled,messages:this.messages,messagesCommon:this.messagesCommon,rootGroupUid:this._rootGroupUid,selectedDragItemLayerUid:this._selectedDragItemLayerUid,selectedItems:this.selectedItems,selectionMode:this.selectionMode,visibleElements:this.visibleElements,onAction:this._onTriggerAction,onPanelOpen:this._onPanelOpen,onSelectedDragItemLayerUidChange:this._onSelectedDragItemLayerUidChange})}_handleCalciteListChange(e){const{selectionMode:t,selectedItems:i}=this;if("none"===t)return;const o=e.target.selectedItems.map(e=>P(e)).filter(Boolean);i.removeAll(),i.addMany(o)}};e([a()],j.prototype,"_rootListEl",void 0),e([a()],j.prototype,"_focusRootFlowItem",void 0),e([a()],j.prototype,"_focusPanelFlowItem",void 0),e([a()],j.prototype,"_dragEnabled",null),e([a()],j.prototype,"_filterEnabled",null),e([a()],j.prototype,"_visibleItems",null),e([a()],j.prototype,"_openedPanelItems",null),e([a()],j.prototype,"collapsed",void 0),e([a()],j.prototype,"dragEnabled",void 0),e([a()],j.prototype,"filterPlaceholder",void 0),e([a()],j.prototype,"filterPredicate",void 0),e([a()],j.prototype,"filterText",void 0),e([a()],j.prototype,"headingLevel",void 0),e([a()],j.prototype,"icon",null),e([a()],j.prototype,"label",null),e([a()],j.prototype,"listItemCanGiveFunction",void 0),e([a()],j.prototype,"listItemCanReceiveFunction",void 0),e([a()],j.prototype,"listItemCreatedFunction",null),e([a()],j.prototype,"map",null),e([a(),w("esri/widgets/TableList/t9n/TableList")],j.prototype,"messages",void 0),e([a(),w("esri/t9n/common")],j.prototype,"messagesCommon",void 0),e([a()],j.prototype,"minDragEnabledItems",void 0),e([a()],j.prototype,"minFilterItems",void 0),e([a({type:U})],j.prototype,"selectedItems",void 0),e([a()],j.prototype,"selectionMode",void 0),e([a({readOnly:!0})],j.prototype,"tableItems",null),e([a()],j.prototype,"tables",null),e([y("trigger-action"),a({type:M})],j.prototype,"viewModel",void 0),e([a({type:F,nonNullable:!0})],j.prototype,"visibleElements",void 0),j=e([d("esri.widgets.TableList")],j);const k=j;export{k as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{substitute as t}from"../../intl.js";import i from"../../core/Collection.js";import{watch as o}from"../../core/reactiveUtils.js";import{throttle as s}from"../../core/throttle.js";import{property as n,subclass as r}from"../../core/accessorSupport/decorators.js";import{fetchMessageBundle as l}from"../../intl/messages.js";import{isFeatureLayer as a,isSubtypeSublayer as d}from"../../layers/support/layerUtils.js";import{UtilityNetworkAssociationsContent as c}from"../../popup/content.js";import{substituteActionImage as u,getActionStyles as p}from"../../support/actions/actionUtils.js";import h from"../Feature.js";import m from"../Spinner.js";import g from"../Widget.js";import{css as w}from"../Feature/resources.js";import{FeatureContentMixin as v}from"../Feature/support/FeatureContentMixin.js";import{css as _}from"../Features/css.js";import f from"../Features/FeaturesViewModel.js";import{ActionsCollection as y}from"../Popup/actions.js";import{zoomToLocation as M}from"../Popup/actionUtils.js";import{loadCalciteComponents as F}from"../support/componentsUtils.js";import{globalCss as A}from"../support/globalCss.js";import{Heading as I}from"../support/Heading.js";import{tsx as b,messageBundle as k,vmEvent as T}from"../support/widget.js";import C from"./UtilityNetworkTraceFeaturesDrillIn.js";const W="selected-index",N=0,x="features-spinner",j="esri-utility-network-trace",S={blockContainer:`${j}__block-container`,blockContent:`${j}__block-content`,featureContent:`${j}__feature-content`,paddingBottom:`${j}__pad-bottom`,paddingTop:`${j}__pad-top`};let L=class extends(v(g)){constructor(e,t){super(e,t),this._actionBarMenuNode=null,this._drillInFlowItems=new i,this._drillInWidget=new C({flowItems:this._drillInFlowItems}),this._feature=null,this._featureMenuViewportNode=null,this._spinner=null,this._utilityNetworkTraceMessages=null,this.featureNavigationTop=!1,this.headerActions=new y,this.headingLevel=2,this.messages=null,this.messagesCommon=null,this.responsiveActionsEnabled=!1,this.viewModel=new f,this._renderAction=(e,t)=>{const i=this._getActionTitle(e),{type:o,active:s,uid:n,disabled:r,indicator:l}=e;return e.visible?b("calcite-action",{active:"toggle"===o&&e.value,bind:this,"data-action-uid":n,disabled:"zoom-to-feature"===e.id?!this.feature.geometry:r,icon:this._getActionIcon(e),indicator:l,key:`action-${t}`,loading:s,scale:"s",text:i,title:this._hideActionText?i:void 0,onclick:this._triggerAction},this._renderFallbackIcon(e)):null},this._renderAddNsoBlock=()=>{const{_utilityNetworkTraceMessages:e,messagesCommon:t}=this;return b("calcite-block",{class:S.blockContent,expanded:!this.feature,heading:e?.inputsStrings.addNonspatialOption},b("calcite-action",{icon:"x",slot:"actions-end",text:t.close,onclick:()=>this.emit("close-un-trace-feature-block")}),b("calcite-notice",{icon:"information",kind:"info",open:!this.feature},b("div",{slot:"message"},e?.inputsStrings.addNonspatialHint)))},this._renderNoPopupErrorBlock=()=>{const{_utilityNetworkTraceMessages:e,messagesCommon:t}=this;return b("calcite-block",{description:void 0,expanded:!0,heading:"show-feature-info"===this.mode?t.warning:void 0},b("calcite-notice",{class:this.classes(S.paddingBottom,S.paddingTop),icon:"exclamation-mark-triangle",kind:"danger",open:!0},b("div",{slot:"message"},e.alertsStrings.noPopupConfigured)),"show-feature-info"===this.mode?b("calcite-action",{icon:"x",slot:"actions-end",text:t.close,onclick:()=>this.emit("close-un-trace-feature-block")}):void 0)},this._displaySpinnerThrottled=s(()=>this._displaySpinner(),N),this.addHandles([this._displaySpinnerThrottled,o(()=>this.viewModel?.active,e=>this._drillInWidget.closed=!e),o(()=>this.viewModel?.view,(e,t)=>this._viewChange(e,t)),o(()=>this.viewModel?.view?.ready,(e,t)=>this._viewReadyChange(e??!1,t??!1)),o(()=>[this.viewModel?.waitingForResult,this.viewModel?.location],()=>{this._hideSpinner(),this._displaySpinnerThrottled()}),o(()=>this.viewModel?.screenLocation,()=>this._closeOpenActionMenu()),o(()=>this.selectedFeatureWidget,()=>this._destroyDrillInFlowItemWidgets()),o(()=>{const e=this.selectedFeatureWidget?.viewModel;return[e?.title,e?.state]},()=>this._setTitleFromFeatureWidget()),o(()=>{const e=this.selectedFeatureWidget?.viewModel;return[e?.content,e?.state]},()=>this._setContentFromFeatureWidget()),o(()=>this.viewModel?.featureViewModels,()=>this._featureMenuViewportScrollTop()),this._drillInWidget.on("close",()=>{this.emit("close")}),this._drillInWidget.on("exit",()=>this._destroyDrillInFlowItemWidgets()),this._drillInWidget.on("open-feature",({feature:e})=>this._openRelatedFeature(e)),this._drillInWidget.on("zoom-to-feature",({featureWidget:e})=>M(this.viewModel,e)),this._drillInWidget.on("add-nso-trace-location",({featureWidget:e})=>this.emit("add-nso-trace-location",{featureWidget:e}))])}initialize(){(async()=>{this._utilityNetworkTraceMessages=await l("esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace")})(),this._drillInWidget.mode=this.mode,this._drillInWidget.closable=!1}loadDependencies(){return F({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),"action-bar":()=>import("@esri/calcite-components/dist/components/calcite-action-bar"),"action-group":()=>import("@esri/calcite-components/dist/components/calcite-action-group"),block:()=>import("@esri/calcite-components/dist/components/calcite-block"),flow:()=>import("@esri/calcite-components/dist/components/calcite-flow"),"flow-item":()=>import("@esri/calcite-components/dist/components/calcite-flow-item"),notice:()=>import("@esri/calcite-components/dist/components/calcite-notice")})}destroy(){this._destroyDrillInFlowItemWidgets(),this._destroySelectedFeatureWidget(),this._destroySpinner(),this._drillInWidget?.destroy()}get _hideActionText(){if(!this.responsiveActionsEnabled)return!1;const e=this.view?.widthBreakpoint;return"xsmall"===e||"small"===e||"medium"===e}get active(){return this.viewModel.active}get content(){return this.viewModel.content}set content(e){this.viewModel.content=e}get feature(){return this.viewModel.features.length?this.viewModel.features[0]:null}set feature(e){this.viewModel.features=e?[e]:[]}get goToOverride(){return this.viewModel.goToOverride}set goToOverride(e){this.viewModel.goToOverride=e}get hasAssociationsPopupElement(){const e=a(this.feature?.sourceLayer)?this.feature?.sourceLayer:void 0,t=d(this.feature?.sourceLayer)?this.feature?.sourceLayer:void 0,i=e?.popupTemplate||t?.popupTemplate||null,o=i?.content;return!(Array.isArray(o)&&!o.some(e=>e instanceof c))}get hasPopupInfo(){const e=a(this.feature?.sourceLayer)?this.feature?.sourceLayer:void 0,t=d(this.feature?.sourceLayer)?this.feature?.sourceLayer:void 0;return!(!e?.popupTemplate&&!t?.popupTemplate)}get location(){return this.viewModel.location}set location(e){this.viewModel.location=e}get mode(){return this._get("mode")||"add-nso"}set mode(e){this._set("mode",e)}get promises(){return this.viewModel.promises}set promises(e){this.viewModel.promises=e}get selectedFeature(){return this.viewModel.selectedFeature}get selectedDrillInFeature(){const e=Array.from(this._drillInFlowItems).at(-1);if(!e)return null;const{flowType:t}=e;return"feature-association"===t||"feature-relationship"===t?e.graphic??null:null}get selectedFeatureWidget(){const{_feature:e,headingLevel:t,_drillInFlowItems:i,timeZone:o}=this,{selectedFeatureViewModel:s}=this.viewModel,n={title:!1};return s?(e?(e.viewModel=s,e.visibleElements=n):this._feature=new h({flowItems:i,headingLevel:t+1,timeZone:o,viewModel:s,visibleElements:n}),this._feature):null}get timeZone(){return this.viewModel.timeZone}set timeZone(e){this.viewModel.timeZone=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}open(e){this.removeHandles(W),this.viewModel.open({features:[e]})}triggerAction(e){return this.viewModel.triggerAction(e)}render(){return b("div",{bind:this,class:this.classes(_.base,A.widget,A.panel,S.blockContainer)},"add-nso"===this.mode?this._renderAddNsoBlock():void 0,this.feature?this.hasPopupInfo?this._renderContentContainer():this._renderNoPopupErrorBlock():void 0)}_renderActionBar(){return this.viewModel.allActions?.length?b("calcite-action-bar",{expandDisabled:!0,expanded:!this._hideActionText,key:"header-action-bar",scale:"s",slot:"action-bar"},b("calcite-action-group",{afterCreate:e=>this._actionBarMenuNode=e,overlayPositioning:"fixed",scale:"s"},this._renderActions())):null}_renderActions(){return this.viewModel.allActions.toArray().map(this._renderAction)}_renderContent(){const e=this.viewModel?.content;return e?"string"==typeof e?b("div",{class:w.contentNode,innerHTML:e,key:e}):this.renderNodeContent(e):null}_renderContentContainer(){const e=[this._renderContentFeature(),this._drillInWidget.render()];return b("calcite-flow",{key:"content-container"},e)}_renderContentFeature(){const{_drillInFlowItems:e,headingLevel:t,featureNavigationTop:i}=this,{title:o,active:s}=this.viewModel,n=o||"";return b("calcite-flow-item",{bind:this,class:this.classes({[_.contentFeature]:!0}),closed:!s,collapseDirection:i?"down":"up",headingLevel:t,key:"root-flow-item",loading:this.viewModel.waitingForContents,selected:0===e.length},"show-feature-info"===this.mode?b("calcite-action",{icon:"x",slot:"header-actions-end",text:this.messagesCommon.close,onclick:()=>{this.emit("close")}}):void 0,n?b(I,{class:this.classes(_.featuresHeading,A.heading),innerHTML:n,key:"header-content",level:this.headingLevel,slot:"header-content"}):null,this._renderHeaderActions(),this._renderActionBar(),b("div",{class:"add-nso"===this.mode?this.classes(_.container,_.contentContainer):this.classes(_.container,_.contentContainer,S.featureContent)},this._renderContent()))}_renderFallbackIcon(e){const{className:t,icon:i}=e;if(i)return null;const o=u({action:e,feature:this.selectedFeature}),s={[_.icon]:!!t,[_.actionImage]:!!o};return t&&(s[t]=!0),o||t?b("span",{"aria-hidden":"true",class:this.classes(_.icon,s),key:"icon",styles:p(o)}):null}_renderHeaderAction(e,t){const i=e.title||"";return e.visible?b("calcite-action",{active:"toggle"===e.type&&e.value,bind:this,"data-action-uid":e.uid,disabled:e.disabled||!this.feature.geometry,icon:e.icon??void 0,indicator:e.indicator,key:`header-action-${t}`,loading:e.active,slot:"header-actions-end",text:i,title:i,onclick:this._triggerHeaderAction}):null}_renderHeaderActions(){return this.headerActions.map((e,t)=>this._renderHeaderAction(e,t)).toArray()}_closeOpenActionMenu(){const{_actionBarMenuNode:e}=this;e&&(e.menuOpen=!1)}_createSpinner(e){e&&(this._spinner=new m({view:e}),e.ui.add(this._spinner,{key:x,position:"manual",internal:!0}))}_destroyDrillInFlowItemWidgets(){this._drillInFlowItems.drain(e=>{"showAllEnabled"in e.viewModel&&(e.viewModel.showAllEnabled=!1),e.viewModel=null,e.destroy()})}_destroySelectedFeatureWidget(){const{_feature:e}=this;e&&(e.viewModel=null,!e.destroyed&&e.destroy()),this._feature=null}_destroySpinner(){const{_spinner:e,view:t}=this;e&&(t?.ui?.remove(e,x),e.destroy(),this._spinner=null)}_displaySpinner(){const{_spinner:e}=this;if(!e)return;const{location:t,waitingForResult:i}=this.viewModel;i&&t?e.show({location:t}):e.hide()}_featureMenuViewportScrollTop(){this._featureMenuViewportNode?.scrollContentTo({top:0})}_getActionIcon(e){return e.icon?e.icon:e.image||e.className?void 0:"question"}_getActionTitle(e){const{messages:i,selectedFeature:o,messagesCommon:s}=this,{id:n}=e,r=o?.attributes,l=e.title??"",a="zoom-to-feature"===n?t(l,{messages:i}):"remove-selected-feature"===n?t(l,{messages:s}):"zoom-to-clustered-features"===n||"browse-clustered-features"===n?t(l,{messages:i}):e.title;return a&&r?t(a,r):a??""}_hideSpinner(){const{_spinner:e}=this;e&&(e.location=null,e.hide())}async _openRelatedFeature(e){await e.viewModel.updateGeometry();const t=e.graphic,i=t?.geometry;null!=i&&null!=t&&(this._destroyDrillInFlowItemWidgets(),await this.viewModel.zoomTo({target:i}),this.open(t))}_setContentFromFeatureWidget(){const{selectedFeatureWidget:e}=this;e&&(this.viewModel.content=e)}_setTitleFromFeatureWidget(){const{selectedFeatureWidget:e,messagesCommon:t}=this,i=e?.viewModel;e&&(this.viewModel.title="error"===i?.state?t?.errorMessage:i?.title||"")}_triggerAction(e){const t=e.currentTarget;if(t.disabled)return;const i=t.dataset.actionUid,{allActions:o}=this.viewModel,s=o.findIndex(e=>e.uid===i),n=o.at(s);"toggle"===n?.type&&(n.value=!n.value),this.viewModel.triggerAction(s)}_triggerHeaderAction(e){const t=e.currentTarget;if(t.disabled)return;const i=t.dataset.actionUid,o=this.headerActions.find(({uid:e})=>e===i);o&&!o.disabled&&("toggle"===o?.type&&(o.value=!o.value),this.emit("trigger-header-action",{action:o}))}_viewReadyChange(e,t){e?this._wireUpView(this.viewModel?.view):t&&this.viewModel.clear()}_viewChange(e,t){e&&t&&this.viewModel.clear()}_wireUpView(e){this._destroySpinner(),e&&this._createSpinner(e)}};e([n()],L.prototype,"_drillInFlowItems",void 0),e([n()],L.prototype,"_hideActionText",null),e([n({readOnly:!0})],L.prototype,"active",null),e([n()],L.prototype,"content",null),e([n()],L.prototype,"feature",null),e([n()],L.prototype,"featureNavigationTop",void 0),e([n()],L.prototype,"goToOverride",null),e([n()],L.prototype,"hasAssociationsPopupElement",null),e([n()],L.prototype,"hasPopupInfo",null),e([n({type:y})],L.prototype,"headerActions",void 0),e([n()],L.prototype,"headingLevel",void 0),e([n()],L.prototype,"location",null),e([n(),k("esri/widgets/Features/t9n/Features")],L.prototype,"messages",void 0),e([n(),k("esri/t9n/common")],L.prototype,"messagesCommon",void 0),e([n()],L.prototype,"mode",null),e([n()],L.prototype,"promises",null),e([n()],L.prototype,"responsiveActionsEnabled",void 0),e([n({readOnly:!0})],L.prototype,"selectedFeature",null),e([n({readOnly:!0})],L.prototype,"selectedDrillInFeature",null),e([n({readOnly:!0})],L.prototype,"selectedFeatureWidget",null),e([n()],L.prototype,"timeZone",null),e([n()],L.prototype,"view",null),e([n({type:f}),T(["triggerAction","trigger-action"])],L.prototype,"viewModel",void 0),L=e([r("esri.widgets.UtilityNetworkTrace.UtilityNetworkTraceFeature")],L);const U=L;export{U as default};
2
+ import{__decorate as e}from"tslib";import{substitute as t}from"../../intl.js";import i from"../../core/Collection.js";import{watch as o}from"../../core/reactiveUtils.js";import{throttle as s}from"../../core/throttle.js";import{property as n,subclass as r}from"../../core/accessorSupport/decorators.js";import{getGraphicLayer as l}from"../../graphic/graphicOriginUtils.js";import{fetchMessageBundle as a}from"../../intl/messages.js";import{isFeatureLayer as d,isSubtypeSublayer as c}from"../../layers/support/layerUtils.js";import{UtilityNetworkAssociationsContent as p}from"../../popup/content.js";import{substituteActionImage as u,getActionStyles as h}from"../../support/actions/actionUtils.js";import m from"../Feature.js";import g from"../Spinner.js";import w from"../Widget.js";import{css as v}from"../Feature/resources.js";import{FeatureContentMixin as _}from"../Feature/support/FeatureContentMixin.js";import{css as f}from"../Features/css.js";import y from"../Features/FeaturesViewModel.js";import{ActionsCollection as M}from"../Popup/actions.js";import{zoomToLocation as F}from"../Popup/actionUtils.js";import{loadCalciteComponents as A}from"../support/componentsUtils.js";import{globalCss as I}from"../support/globalCss.js";import{Heading as b}from"../support/Heading.js";import{tsx as k,messageBundle as T,vmEvent as C}from"../support/widget.js";import W from"./UtilityNetworkTraceFeaturesDrillIn.js";const N="selected-index",x=0,j="features-spinner",S="esri-utility-network-trace",U={blockContainer:`${S}__block-container`,blockContent:`${S}__block-content`,featureContent:`${S}__feature-content`,paddingBottom:`${S}__pad-bottom`,paddingTop:`${S}__pad-top`};let O=class extends(_(w)){constructor(e,t){super(e,t),this._actionBarMenuNode=null,this._drillInFlowItems=new i,this._drillInWidget=new W({flowItems:this._drillInFlowItems}),this._feature=null,this._featureMenuViewportNode=null,this._spinner=null,this._utilityNetworkTraceMessages=null,this.featureNavigationTop=!1,this.headerActions=new M,this.headingLevel=2,this.messages=null,this.messagesCommon=null,this.responsiveActionsEnabled=!1,this.viewModel=new y,this._renderAction=(e,t)=>{const i=this._getActionTitle(e),{type:o,active:s,uid:n,disabled:r,indicator:l}=e;return e.visible?k("calcite-action",{active:"toggle"===o&&e.value,bind:this,"data-action-uid":n,disabled:"zoom-to-feature"===e.id?!this.feature.geometry:r,icon:this._getActionIcon(e),indicator:l,key:`action-${t}`,loading:s,scale:"s",text:i,title:this._hideActionText?i:void 0,onclick:this._triggerAction},this._renderFallbackIcon(e)):null},this._renderAddNsoBlock=()=>{const{_utilityNetworkTraceMessages:e,messagesCommon:t}=this;return k("calcite-block",{class:U.blockContent,expanded:!this.feature,heading:e?.inputsStrings.addNonspatialOption},k("calcite-action",{icon:"x",slot:"actions-end",text:t.close,onclick:()=>this.emit("close-un-trace-feature-block")}),k("calcite-notice",{icon:"information",kind:"info",open:!this.feature},k("div",{slot:"message"},e?.inputsStrings.addNonspatialHint)))},this._renderNoPopupErrorBlock=()=>{const{_utilityNetworkTraceMessages:e,messagesCommon:t}=this;return k("calcite-block",{description:void 0,expanded:!0,heading:"show-feature-info"===this.mode?t.warning:void 0},k("calcite-notice",{class:this.classes(U.paddingBottom,U.paddingTop),icon:"exclamation-mark-triangle",kind:"danger",open:!0},k("div",{slot:"message"},e.alertsStrings.noPopupConfigured)),"show-feature-info"===this.mode?k("calcite-action",{icon:"x",slot:"actions-end",text:t.close,onclick:()=>this.emit("close-un-trace-feature-block")}):void 0)},this._displaySpinnerThrottled=s(()=>this._displaySpinner(),x),this.addHandles([this._displaySpinnerThrottled,o(()=>this.viewModel?.active,e=>this._drillInWidget.closed=!e),o(()=>this.viewModel?.view,(e,t)=>this._viewChange(e,t)),o(()=>this.viewModel?.view?.ready,(e,t)=>this._viewReadyChange(e??!1,t??!1)),o(()=>[this.viewModel?.waitingForResult,this.viewModel?.location],()=>{this._hideSpinner(),this._displaySpinnerThrottled()}),o(()=>this.viewModel?.screenLocation,()=>this._closeOpenActionMenu()),o(()=>this.selectedFeatureWidget,()=>this._destroyDrillInFlowItemWidgets()),o(()=>{const e=this.selectedFeatureWidget?.viewModel;return[e?.title,e?.state]},()=>this._setTitleFromFeatureWidget()),o(()=>{const e=this.selectedFeatureWidget?.viewModel;return[e?.content,e?.state]},()=>this._setContentFromFeatureWidget()),o(()=>this.viewModel?.featureViewModels,()=>this._featureMenuViewportScrollTop()),this._drillInWidget.on("close",()=>{this.emit("close")}),this._drillInWidget.on("exit",()=>this._destroyDrillInFlowItemWidgets()),this._drillInWidget.on("open-feature",({feature:e})=>this._openRelatedFeature(e)),this._drillInWidget.on("zoom-to-feature",({featureWidget:e})=>F(this.viewModel,e)),this._drillInWidget.on("add-nso-trace-location",({featureWidget:e})=>this.emit("add-nso-trace-location",{featureWidget:e}))])}initialize(){(async()=>{this._utilityNetworkTraceMessages=await a("esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace")})(),this._drillInWidget.mode=this.mode,this._drillInWidget.closable=!1}loadDependencies(){return A({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),"action-bar":()=>import("@esri/calcite-components/dist/components/calcite-action-bar"),"action-group":()=>import("@esri/calcite-components/dist/components/calcite-action-group"),block:()=>import("@esri/calcite-components/dist/components/calcite-block"),flow:()=>import("@esri/calcite-components/dist/components/calcite-flow"),"flow-item":()=>import("@esri/calcite-components/dist/components/calcite-flow-item"),notice:()=>import("@esri/calcite-components/dist/components/calcite-notice")})}destroy(){this._destroyDrillInFlowItemWidgets(),this._destroySelectedFeatureWidget(),this._destroySpinner(),this._drillInWidget?.destroy()}get _hideActionText(){if(!this.responsiveActionsEnabled)return!1;const e=this.view?.widthBreakpoint;return"xsmall"===e||"small"===e||"medium"===e}get active(){return this.viewModel.active}get content(){return this.viewModel.content}set content(e){this.viewModel.content=e}get feature(){return this.viewModel.features.length?this.viewModel.features[0]:null}set feature(e){this.viewModel.features=e?[e]:[]}get goToOverride(){return this.viewModel.goToOverride}set goToOverride(e){this.viewModel.goToOverride=e}get hasAssociationsPopupElement(){if(!this.feature)return!1;const e=l(this.feature),t=e&&d(e)?e:void 0,i=c(e)?e:void 0,o=t?.popupTemplate||i?.popupTemplate||null,s=o?.content;return!(Array.isArray(s)&&!s.some(e=>e instanceof p))}get hasPopupInfo(){const e=this.feature?l(this.feature):null,t=e&&d(e)?e:void 0,i=c(e)?e:void 0;return!(!t?.popupTemplate&&!i?.popupTemplate)}get location(){return this.viewModel.location}set location(e){this.viewModel.location=e}get mode(){return this._get("mode")||"add-nso"}set mode(e){this._set("mode",e)}get promises(){return this.viewModel.promises}set promises(e){this.viewModel.promises=e}get selectedFeature(){return this.viewModel.selectedFeature}get selectedDrillInFeature(){const e=Array.from(this._drillInFlowItems).at(-1);if(!e)return null;const{flowType:t}=e;return"feature-association"===t||"feature-relationship"===t?e.graphic??null:null}get selectedFeatureWidget(){const{_feature:e,headingLevel:t,_drillInFlowItems:i,timeZone:o}=this,{selectedFeatureViewModel:s}=this.viewModel,n={title:!1};return s?(e?(e.viewModel=s,e.visibleElements=n):this._feature=new m({flowItems:i,headingLevel:t+1,timeZone:o,viewModel:s,visibleElements:n}),this._feature):null}get timeZone(){return this.viewModel.timeZone}set timeZone(e){this.viewModel.timeZone=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}open(e){this.removeHandles(N),this.viewModel.open({features:[e]})}triggerAction(e){return this.viewModel.triggerAction(e)}render(){return k("div",{bind:this,class:this.classes(f.base,I.widget,I.panel,U.blockContainer)},"add-nso"===this.mode?this._renderAddNsoBlock():void 0,this.feature?this.hasPopupInfo?this._renderContentContainer():this._renderNoPopupErrorBlock():void 0)}_renderActionBar(){return this.viewModel.allActions?.length?k("calcite-action-bar",{expandDisabled:!0,expanded:!this._hideActionText,key:"header-action-bar",scale:"s",slot:"action-bar"},k("calcite-action-group",{afterCreate:e=>this._actionBarMenuNode=e,overlayPositioning:"fixed",scale:"s"},this._renderActions())):null}_renderActions(){return this.viewModel.allActions.toArray().map(this._renderAction)}_renderContent(){const e=this.viewModel?.content;return e?"string"==typeof e?k("div",{class:v.contentNode,innerHTML:e,key:e}):this.renderNodeContent(e):null}_renderContentContainer(){const e=[this._renderContentFeature(),this._drillInWidget.render()];return k("calcite-flow",{key:"content-container"},e)}_renderContentFeature(){const{_drillInFlowItems:e,headingLevel:t,featureNavigationTop:i}=this,{title:o,active:s}=this.viewModel,n=o||"";return k("calcite-flow-item",{bind:this,class:this.classes({[f.contentFeature]:!0}),closed:!s,collapseDirection:i?"down":"up",headingLevel:t,key:"root-flow-item",loading:this.viewModel.waitingForContents,selected:0===e.length},"show-feature-info"===this.mode?k("calcite-action",{icon:"x",slot:"header-actions-end",text:this.messagesCommon.close,onclick:()=>{this.emit("close")}}):void 0,n?k(b,{class:this.classes(f.featuresHeading,I.heading),innerHTML:n,key:"header-content",level:this.headingLevel,slot:"header-content"}):null,this._renderHeaderActions(),this._renderActionBar(),k("div",{class:"add-nso"===this.mode?this.classes(f.container,f.contentContainer):this.classes(f.container,f.contentContainer,U.featureContent)},this._renderContent()))}_renderFallbackIcon(e){const{className:t,icon:i}=e;if(i)return null;const o=u({action:e,feature:this.selectedFeature}),s={[f.icon]:!!t,[f.actionImage]:!!o};return t&&(s[t]=!0),o||t?k("span",{"aria-hidden":"true",class:this.classes(f.icon,s),key:"icon",styles:h(o)}):null}_renderHeaderAction(e,t){const i=e.title||"";return e.visible?k("calcite-action",{active:"toggle"===e.type&&e.value,bind:this,"data-action-uid":e.uid,disabled:e.disabled||!this.feature.geometry,icon:e.icon??void 0,indicator:e.indicator,key:`header-action-${t}`,loading:e.active,slot:"header-actions-end",text:i,title:i,onclick:this._triggerHeaderAction}):null}_renderHeaderActions(){return this.headerActions.map((e,t)=>this._renderHeaderAction(e,t)).toArray()}_closeOpenActionMenu(){const{_actionBarMenuNode:e}=this;e&&(e.menuOpen=!1)}_createSpinner(e){e&&(this._spinner=new g({view:e}),e.ui.add(this._spinner,{key:j,position:"manual",internal:!0}))}_destroyDrillInFlowItemWidgets(){this._drillInFlowItems.drain(e=>{"showAllEnabled"in e.viewModel&&(e.viewModel.showAllEnabled=!1),e.viewModel=null,e.destroy()})}_destroySelectedFeatureWidget(){const{_feature:e}=this;e&&(e.viewModel=null,!e.destroyed&&e.destroy()),this._feature=null}_destroySpinner(){const{_spinner:e,view:t}=this;e&&(t?.ui?.remove(e,j),e.destroy(),this._spinner=null)}_displaySpinner(){const{_spinner:e}=this;if(!e)return;const{location:t,waitingForResult:i}=this.viewModel;i&&t?e.show({location:t}):e.hide()}_featureMenuViewportScrollTop(){this._featureMenuViewportNode?.scrollContentTo({top:0})}_getActionIcon(e){return e.icon?e.icon:e.image||e.className?void 0:"question"}_getActionTitle(e){const{messages:i,selectedFeature:o,messagesCommon:s}=this,{id:n}=e,r=o?.attributes,l=e.title??"",a="zoom-to-feature"===n?t(l,{messages:i}):"remove-selected-feature"===n?t(l,{messages:s}):"zoom-to-clustered-features"===n||"browse-clustered-features"===n?t(l,{messages:i}):e.title;return a&&r?t(a,r):a??""}_hideSpinner(){const{_spinner:e}=this;e&&(e.location=null,e.hide())}async _openRelatedFeature(e){await e.viewModel.updateGeometry();const t=e.graphic,i=t?.geometry;null!=i&&null!=t&&(this._destroyDrillInFlowItemWidgets(),await this.viewModel.zoomTo({target:i}),this.open(t))}_setContentFromFeatureWidget(){const{selectedFeatureWidget:e}=this;e&&(this.viewModel.content=e)}_setTitleFromFeatureWidget(){const{selectedFeatureWidget:e,messagesCommon:t}=this,i=e?.viewModel;e&&(this.viewModel.title="error"===i?.state?t?.errorMessage:i?.title||"")}_triggerAction(e){const t=e.currentTarget;if(t.disabled)return;const i=t.dataset.actionUid,{allActions:o}=this.viewModel,s=o.findIndex(e=>e.uid===i),n=o.at(s);"toggle"===n?.type&&(n.value=!n.value),this.viewModel.triggerAction(s)}_triggerHeaderAction(e){const t=e.currentTarget;if(t.disabled)return;const i=t.dataset.actionUid,o=this.headerActions.find(({uid:e})=>e===i);o&&!o.disabled&&("toggle"===o?.type&&(o.value=!o.value),this.emit("trigger-header-action",{action:o}))}_viewReadyChange(e,t){e?this._wireUpView(this.viewModel?.view):t&&this.viewModel.clear()}_viewChange(e,t){e&&t&&this.viewModel.clear()}_wireUpView(e){this._destroySpinner(),e&&this._createSpinner(e)}};e([n()],O.prototype,"_drillInFlowItems",void 0),e([n()],O.prototype,"_hideActionText",null),e([n({readOnly:!0})],O.prototype,"active",null),e([n()],O.prototype,"content",null),e([n()],O.prototype,"feature",null),e([n()],O.prototype,"featureNavigationTop",void 0),e([n()],O.prototype,"goToOverride",null),e([n()],O.prototype,"hasAssociationsPopupElement",null),e([n()],O.prototype,"hasPopupInfo",null),e([n({type:M})],O.prototype,"headerActions",void 0),e([n()],O.prototype,"headingLevel",void 0),e([n()],O.prototype,"location",null),e([n(),T("esri/widgets/Features/t9n/Features")],O.prototype,"messages",void 0),e([n(),T("esri/t9n/common")],O.prototype,"messagesCommon",void 0),e([n()],O.prototype,"mode",null),e([n()],O.prototype,"promises",null),e([n()],O.prototype,"responsiveActionsEnabled",void 0),e([n({readOnly:!0})],O.prototype,"selectedFeature",null),e([n({readOnly:!0})],O.prototype,"selectedDrillInFeature",null),e([n({readOnly:!0})],O.prototype,"selectedFeatureWidget",null),e([n()],O.prototype,"timeZone",null),e([n()],O.prototype,"view",null),e([n({type:y}),C(["triggerAction","trigger-action"])],O.prototype,"viewModel",void 0),O=e([r("esri.widgets.UtilityNetworkTrace.UtilityNetworkTraceFeature")],O);const H=O;export{H as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{substitute as t}from"../../intl.js";import{property as i,subclass as o}from"../../core/accessorSupport/decorators.js";import{fetchMessageBundle as s}from"../../intl/messages.js";import a from"../Widget.js";import{css as n}from"../Features/css.js";import{zoomToFeature as r}from"../Popup/actions.js";import{loadCalciteComponents as c}from"../support/componentsUtils.js";import{messageBundle as l,tsx as d,tsxFragment as u}from"../support/widget.js";const m=r.clone(),p={featureContent:`${"esri-utility-network-trace"}__feature-content`};let h=class extends a{constructor(e,t){super(e,t),this._utilityNetworkTraceMessages=null,this.closed=!1,this.closable=!0,this.messages=null,this.messagesCommon=null,this._handleAddNonspatialTraceLocation=e=>{this.emit("add-nso-trace-location",{featureWidget:e})},this._handleOpenFeature=e=>{this.emit("open-feature",{feature:e})},this._handleZoomToFeature=e=>{this.emit("zoom-to-feature",{featureWidget:e})}}initialize(){(async()=>{this._utilityNetworkTraceMessages=await s("esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace")})()}loadDependencies(){return c({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),"action-bar":()=>import("@esri/calcite-components/dist/components/calcite-action-bar"),"action-group":()=>import("@esri/calcite-components/dist/components/calcite-action-group"),"flow-item":()=>import("@esri/calcite-components/dist/components/calcite-flow-item")})}get mode(){return this._get("mode")||"show-feature-info"}set mode(e){this._set("mode",e)}render(){const{flowItems:e}=this,t=e?.toArray();return d(u,null,t?.map((t,i)=>this._renderFlowItem(t,i===e.length-1)))}_renderAddNonspatialTraceLocationAction(e){const{_utilityNetworkTraceMessages:t}=this;return d("calcite-action",{bind:this,icon:"utility-network-trace",scale:"s",text:t.inputsStrings.addNonspatialOption,textEnabled:!0,title:t.inputsStrings.addNonspatialOption,onclick:()=>this._handleAddNonspatialTraceLocation(e)})}_renderFlowItem(e,t){const{messages:i,closable:o,closed:s}=this,a="graphic"in e&&!e.isTable,r="feature-association"===e.flowType,c=this._getExitMessage(e),l=i.selectFeature,u=e,m=u?u.graphic?.sourceLayer:null,h=!(m?m.geometryType:null);return d("calcite-flow-item",{bind:this,closable:o,closed:s,description:this._getDrillInFlowItemDescription(e),heading:e.title??"",key:`flow-item-${e.viewModel.uid}`,selected:t,onCalciteFlowItemBack:e=>{e.preventDefault(),this._handleDrillInBackClick()}},d("calcite-action",{bind:this,class:n.actionExit,icon:"move-up",key:"exit-action",slot:"header-actions-start",text:c,title:c,onclick:this._handleExitClick}),a?d("calcite-action",{bind:this,icon:"zoom-to-object",key:"open-feature-action",slot:"header-actions-end",text:l,title:l,onclick:()=>this._handleOpenFeature(e)}):null,"show-feature-info"===this.mode?d("calcite-action",{icon:"x",slot:"header-actions-end",text:this.messagesCommon.close,onclick:()=>{this.emit("close")}}):void 0,r&&"add-nso"===this.mode?d("calcite-action-bar",{expandDisabled:!0,expanded:!0,key:"header-action-bar",scale:"s",slot:"action-bar"},d("calcite-action-group",{overlayPositioning:"fixed",scale:"s"},h?this._renderAddNonspatialTraceLocationAction(e):this._renderZoomToFeatureAction(e))):null,d("div",{class:this.classes(n.container,p.featureContent)},e.render()))}_renderZoomToFeatureAction(e){const t=this._getActionTitle(m);return d("calcite-action",{active:m.active,bind:this,"data-action-uid":m.uid,disabled:m.disabled,icon:m.icon??"question",indicator:m.indicator,key:`action-${m.uid}`,loading:m.active,scale:"s",text:t,textEnabled:!0,title:t,onclick:()=>this._handleZoomToFeature(e)})}_getActionTitle(e){const{messages:i}=this,{id:o}=e,s=e.title??"";return"zoom-to-feature"===o?t(s,{messages:i}):s}_getDrillInFlowItemDescription(e){switch(e.flowType){case"feature":case"feature-association":case"feature-utility-network-associations":return e.viewModel.description??"";case"feature-relationship":return e.allItemsDescription;case"feature-utility-network-association-type":return e.description??""}}_getExitMessage(e){switch(e.flowType){case"feature":case"feature-association":return"";case"feature-relationship":return this.messages.exitRelatedRecords;case"feature-utility-network-associations":case"feature-utility-network-association-type":return this.messages.exitAssociations}}_handleDrillInBackClick(){const e=this.flowItems?.pop();e&&("showAllEnabled"in e.viewModel&&(e.viewModel.showAllEnabled=!1),e&&(e.viewModel=null,e.destroy()))}_handleExitClick(){this.emit("exit")}};e([i()],h.prototype,"closed",void 0),e([i()],h.prototype,"closable",void 0),e([i()],h.prototype,"flowItems",void 0),e([i(),l("esri/widgets/Features/t9n/Features")],h.prototype,"messages",void 0),e([i(),l("esri/t9n/common")],h.prototype,"messagesCommon",void 0),e([i()],h.prototype,"mode",null),h=e([o("esri.widgets.UtilityNetworkTrace.UtilityNetworkTraceFeaturesDrillIn")],h);const f=h;export{f as default};
2
+ import{__decorate as e}from"tslib";import{substitute as t}from"../../intl.js";import{property as i,subclass as o}from"../../core/accessorSupport/decorators.js";import{getGraphicLayer as s}from"../../graphic/graphicOriginUtils.js";import{fetchMessageBundle as a}from"../../intl/messages.js";import n from"../Widget.js";import{css as r}from"../Features/css.js";import{zoomToFeature as c}from"../Popup/actions.js";import{loadCalciteComponents as l}from"../support/componentsUtils.js";import{messageBundle as d,tsx as p,tsxFragment as m}from"../support/widget.js";const u=c.clone(),h={featureContent:`${"esri-utility-network-trace"}__feature-content`};let f=class extends n{constructor(e,t){super(e,t),this._utilityNetworkTraceMessages=null,this.closed=!1,this.closable=!0,this.messages=null,this.messagesCommon=null,this._handleAddNonspatialTraceLocation=e=>{this.emit("add-nso-trace-location",{featureWidget:e})},this._handleOpenFeature=e=>{this.emit("open-feature",{feature:e})},this._handleZoomToFeature=e=>{this.emit("zoom-to-feature",{featureWidget:e})}}initialize(){(async()=>{this._utilityNetworkTraceMessages=await a("esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace")})()}loadDependencies(){return l({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),"action-bar":()=>import("@esri/calcite-components/dist/components/calcite-action-bar"),"action-group":()=>import("@esri/calcite-components/dist/components/calcite-action-group"),"flow-item":()=>import("@esri/calcite-components/dist/components/calcite-flow-item")})}get mode(){return this._get("mode")||"show-feature-info"}set mode(e){this._set("mode",e)}render(){const{flowItems:e}=this,t=e?.toArray();return p(m,null,t?.map((t,i)=>this._renderFlowItem(t,i===e.length-1)))}_renderAddNonspatialTraceLocationAction(e){const{_utilityNetworkTraceMessages:t}=this;return p("calcite-action",{bind:this,icon:"utility-network-trace",scale:"s",text:t.inputsStrings.addNonspatialOption,textEnabled:!0,title:t.inputsStrings.addNonspatialOption,onclick:()=>this._handleAddNonspatialTraceLocation(e)})}_renderFlowItem(e,t){const{messages:i,closable:o,closed:a}=this,n="graphic"in e&&!e.isTable,c="feature-association"===e.flowType,l=this._getExitMessage(e),d=i.selectFeature,m=e,u=m&&m.graphic?s(m.graphic):null,f=!(u?u.geometryType:null);return p("calcite-flow-item",{bind:this,closable:o,closed:a,description:this._getDrillInFlowItemDescription(e),heading:e.title??"",key:`flow-item-${e.viewModel.uid}`,selected:t,onCalciteFlowItemBack:e=>{e.preventDefault(),this._handleDrillInBackClick()}},p("calcite-action",{bind:this,class:r.actionExit,icon:"move-up",key:"exit-action",slot:"header-actions-start",text:l,title:l,onclick:this._handleExitClick}),n?p("calcite-action",{bind:this,icon:"zoom-to-object",key:"open-feature-action",slot:"header-actions-end",text:d,title:d,onclick:()=>this._handleOpenFeature(e)}):null,"show-feature-info"===this.mode?p("calcite-action",{icon:"x",slot:"header-actions-end",text:this.messagesCommon.close,onclick:()=>{this.emit("close")}}):void 0,c&&"add-nso"===this.mode?p("calcite-action-bar",{expandDisabled:!0,expanded:!0,key:"header-action-bar",scale:"s",slot:"action-bar"},p("calcite-action-group",{overlayPositioning:"fixed",scale:"s"},f?this._renderAddNonspatialTraceLocationAction(e):this._renderZoomToFeatureAction(e))):null,p("div",{class:this.classes(r.container,h.featureContent)},e.render()))}_renderZoomToFeatureAction(e){const t=this._getActionTitle(u);return p("calcite-action",{active:u.active,bind:this,"data-action-uid":u.uid,disabled:u.disabled,icon:u.icon??"question",indicator:u.indicator,key:`action-${u.uid}`,loading:u.active,scale:"s",text:t,textEnabled:!0,title:t,onclick:()=>this._handleZoomToFeature(e)})}_getActionTitle(e){const{messages:i}=this,{id:o}=e,s=e.title??"";return"zoom-to-feature"===o?t(s,{messages:i}):s}_getDrillInFlowItemDescription(e){switch(e.flowType){case"feature":case"feature-association":case"feature-utility-network-associations":return e.viewModel.description??"";case"feature-relationship":return e.allItemsDescription;case"feature-utility-network-association-type":return e.description??""}}_getExitMessage(e){switch(e.flowType){case"feature":case"feature-association":return"";case"feature-relationship":return this.messages.exitRelatedRecords;case"feature-utility-network-associations":case"feature-utility-network-association-type":return this.messages.exitAssociations}}_handleDrillInBackClick(){const e=this.flowItems?.pop();e&&("showAllEnabled"in e.viewModel&&(e.viewModel.showAllEnabled=!1),e&&(e.viewModel=null,e.destroy()))}_handleExitClick(){this.emit("exit")}};e([i()],f.prototype,"closed",void 0),e([i()],f.prototype,"closable",void 0),e([i()],f.prototype,"flowItems",void 0),e([i(),d("esri/widgets/Features/t9n/Features")],f.prototype,"messages",void 0),e([i(),d("esri/t9n/common")],f.prototype,"messagesCommon",void 0),e([i()],f.prototype,"mode",null),f=e([o("esri.widgets.UtilityNetworkTrace.UtilityNetworkTraceFeaturesDrillIn")],f);const g=f;export{g as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{id as t}from"../../kernel.js";import r from"../../core/Collection.js";import{deprecatedModule as s}from"../../core/deprecate.js";import i from"../../core/Error.js";import{EventedAccessor as a}from"../../core/Evented.js";import l from"../../core/Logger.js";import{whenOnce as o,once as n}from"../../core/reactiveUtils.js";import{property as c,subclass as u}from"../../core/accessorSupport/decorators.js";import{ensureArray as h}from"../../core/accessorSupport/ensureType.js";import{isPoint as p,isMultipoint as d}from"../../geometry/support/jsonTypeUtils.js";import{fetchMessageBundle as g}from"../../intl/messages.js";import y from"../../layers/FeatureLayer.js";import m from"../../layers/GraphicsLayer.js";import f from"../../layers/support/CodedValueDomain.js";import{isFeatureLayer as w,isSubtypeSublayer as b,getOwningPortalUrl as _}from"../../layers/support/layerUtils.js";import A from"../../networks/UtilityNetwork.js";import{getFeaturesFromLayers as v}from"../../networks/support/utils.js";import k from"../../portal/Portal.js";import{hasUserTypeExtension as I}from"../../portal/support/utils.js";import{trace as F}from"../../rest/networks/trace.js";import G from"../../rest/networks/support/TraceLocation.js";import R from"../../rest/networks/support/TraceParameters.js";import{addUniqueLayer as T}from"../../views/draw/support/layerUtils.js";import{GeometryHandler as L}from"./support/GeometryHandler.js";import{GraphicHandler as H,barrierColor as N,startingPointColor as S}from"./support/GraphicHandler.js";import{ResultAreaHandler as P}from"./support/ResultAreaHandler.js";import{UtilityHelper as U}from"./support/UtilityHelper.js";const B=()=>g("esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace"),j=()=>g("esri/core/t9n/Units"),V=`utility-network-trace-flags-${Date.now()}`,C=`utility-network-trace-results-${Date.now()}`,E=`utility-network-trace-sketch-${Date.now()}`;function O(e){return e instanceof f}function D(e){return"feature"===e.layer.type||"subtype-group"===e.layer.type}function M(e){return"layer"in e}function x(e){return void 0!==e.layerViews}function q(e){return"graphics"===e.type}function $(e){return"feature"===e.type||"subtype-group"===e.type||"group"===e.type}async function z(e){const t=new y({url:e.networkSystemLayers.dirtyAreasLayerUrl});await t.load();const r=t.version;if(Number(r)<=11.1){const t=await _(e.layerUrl),r=new k({url:t});await r.load();const s=r?.user?.username;return!!s&&I(r,s,"utilityNetwork")}return!0}s(l.getLogger("esri.widgets.UtilityNetworkTrace.UtilityNetworkTraceViewModel"),"UtilityNetworkTraceViewModel",{replacement:"Use esri/networks/UtilityNetworkTraceAnalysis instead",version:"5.0",warnOnce:!0});let Q=class extends a{constructor(e){super(e),this._activeProgress=!1,this._clickHandler=null,this._flags=[],this._flagId=0,this._geometryHandler=null,this._highlightHandler=[],this._resultAreaHandler=null,this._sketchViewModel=null,this._traceTimeout=6e5,this._utilityHelper=new U,this._validUNLayers=[],this._watchHandler=null,this.traces=[],this.graphicHandler=null,this.defaultGraphicColor={color:[255,255,0,.6],haloOpacity:.9,fillOpacity:.2,hex:"#FFFF00"},this.enableResultArea=!1,this.flags=[],this.messages=null,this.messagesUnits=null,this.defaultResultAreaProperties={type:"convexhull",distance:10,unit:"meters",areaUnit:"square-meters",color:{color:[255,165,0,.5],haloOpacity:.9,fillOpacity:.2,hex:"#ffa500"},show:!1},this.selectedTraces=[],this.selectOnComplete=!0,this.showGraphicsOnComplete=!0,this.showSelectionAttributes=!0,this.traceResults=[],this.utilityNetwork=null}initialize(){this._geometryHandler=new L,this.graphicHandler=new H,this._resultAreaHandler=new P;(async()=>{const[e,t]=await Promise.all([B(),j()]);this.set({messages:e,messagesUnits:t})})()}destroy(){this.view=null}get resultAreaProperties(){return this.defaultResultAreaProperties}set resultAreaProperties(e){this._set("resultAreaProperties",{...this.defaultResultAreaProperties,...e}),this.graphicHandler.addCustomColor(this.resultAreaProperties.color),this.traceResults.forEach(t=>{const r=t.resultArea?.show;t.resultArea={...this.defaultResultAreaProperties,...e},this.removeResultAreaFromMap(t),this.enableResultArea&&this.createResultAreaGraphic(t).then(s=>{if(s){t.resultAreaGraphic=s;const i=e?.show??r;t.resultArea&&(t.resultArea.show=i),i&&this.addResultAreaToMap(t,s)}})})}get state(){return this.view?.ready?"ready":"loading"}get view(){return this._get("view")}set view(e){e&&"2d"!==e.type&&l.getLogger(this).error(new i("view:invalid-view","SceneView is not supported",{view:e})),this._set("view",e),this.utilityNetwork&&this.reset(),this.utilityNetwork=null,this.loadUtilityNetwork().then(e=>{e&&this.selectTracesOnLoad()},()=>{})}addFlagByHit(e,t){const r=!!this.view&&this.view.popupEnabled,s=e=>{this.view?.popup&&(this.view.popupEnabled=e)};return new Promise((i,a)=>{r&&s(!1),this._clickHandler?.remove(),this._clickHandler=this._sketchViewModel.on("create",l=>{if("complete"===l.state){const o=this._getGraphicLayer(E);o&&l.graphic&&o.remove(l.graphic),this.queryFlagByHitTest(l,e,t).then(r=>{this.emit("add-flag-complete",{type:e,symbol:t}),i(r)}).catch(r=>{this.emit("add-flag-error",{type:e,symbol:t}),a(r)}).finally(()=>{r&&s(!0),this._clickHandler?.remove()})}}),this._sketchViewModel.create("point"),this.emit("add-flag",{type:e})})}addNonspatialTraceLocation(e,t){const r=this._getDisplayField(e),s=this.utilityNetwork?.getTerminalConfiguration(e),i={terminalId:null,isFilterBarrier:!1,allTerminals:s,selectedTerminals:[s?s.terminals[0].id||null:1],displayValue:r};e.attributes={...e.attributes,...i};const a=e.attributes.hasOwnProperty("GLOBALID")?e.attributes.GLOBALID:e.attributes.globalid;if(!this._flags.some(e=>e.globalId===a&&e.type===t)){const r=this._createFlagProperty(e,t,null);this._flags.push(r),this.emit("add-flag-complete",{type:t})}this.emit("add-flag",{type:t})}async addFlagsOnLoad(){if(this._flags.length>0)return[];await o(()=>null!=this.view&&!this.view.updating);return(await Promise.all(this.flags.map(async e=>{if(!e.mapPoint)return null;const{type:t}=e,r=e.mapPoint.clone(),s="barrier"===t?N:S,i={graphic:this.graphicHandler.makeGraphic(r,s),state:"complete",tool:"point",toolEventInfo:null,type:"create"};try{return await this.queryFlagByHitTest(i,e.type,null),this.emit("add-flag-complete",{type:t}),null}catch(a){return this.emit("add-flag-error",{type:t}),"barrier"===t?"barrier":"starting-point"}}))).filter(e=>!e)}async addResultAreaToMap(e,t){if(this.view)if(e.resultArea.show=!0,t)this._resultAreaHandler?.addResultAreaToMap(t,this.view.map),this.emit("add-result-area",{graphic:t});else if(e.results){const t=await this.createResultAreaGraphic(e);t&&(e.resultAreaGraphic=t,this._resultAreaHandler?.addResultAreaToMap(t,this.view.map),this.emit("add-result-area",{graphic:t}))}}async addResultGraphicToView(e,t){const{view:r}=this,{results:s}=e;if(r&&s&&this.utilityNetwork)for(const i in s.aggregatedGeometry)if("line,multipoint,polygon".includes(i)){const a=i,l=s.aggregatedGeometry[a];if(null!=l){l.spatialReference=this.utilityNetwork.spatialReference,e.graphicEnabled=!0;const s=await this._geometryHandler.projectGeometry(l,r.spatialReference),i={globalid:e.trace.globalId};if(null!==s){const e=this.graphicHandler.makeGraphic(s,t.color,i,r.spatialReference);this._getGraphicLayer(C)?.add(e)}}}}addTerminal(e,t){const r=[...this._flags];r.forEach(r=>{r.globalId===t.globalId&&(t.selectedTerminals?.includes(parseInt(e,10))||r.selectedTerminals?.push(parseInt(e,10)))}),this._flags=r}async callTrace(){const e=this.traces.filter(e=>e.selected);return!!e.length&&(this.traceResults.length>0&&this.traceResults.forEach(e=>{this.removeResultGraphicFromView(e)}),this.traceResults=[],this.removeSelection(),await Promise.all(e.map(async(e,t)=>{const r=e,s=new R({gdbVersion:this.utilityNetwork?.gdbVersion,moment:this.utilityNetwork?.historicMoment,namedTraceConfigurationGlobalId:r.globalId,outSpatialReference:null,resultTypes:null,traceType:r.traceType,traceLocations:h(G,this._flags),traceConfiguration:null});await this.executeTrace(r,this.utilityNetwork?.networkServiceUrl,s).then(async e=>{if(e.hasOwnProperty("results")){const r={...e};if(null!==r.results){r.resultArea={...this.resultAreaProperties};const e=[...r.results.elements];r.results.elements.length=0;const s=new Map;for(const t of e)s.has(t.globalId)||(s.set(t.globalId,!0),r.results.elements.push(t));const i=[...this.traceResults];if(i.splice(t,0,r),this.traceResults=i,null!==r.results&&(this.selectOnComplete&&this.mergeSelection(!0,r.trace),this.showGraphicsOnComplete&&await this.addResultGraphicToView(r,r.graphicColor),this.enableResultArea)){const e=await this.createResultAreaGraphic(r);e&&(r.resultAreaGraphic=e,r.resultArea?.show&&await this.addResultAreaToMap(r,r.resultAreaGraphic))}}else{const r=[...this.traceResults];r.splice(t,0,e),this.traceResults=r}this._activeProgress=!1}else{this._activeProgress=!1;const r=[...this.traceResults];r.splice(t,0,e),this.traceResults=r}}).catch(e=>{throw this._activeProgress=!1,e})})),!0)}cancelAddFlagByHit(){this._sketchViewModel.cancel()}changeResultAreaColor(e,t){if(!e.resultArea)return;e.resultArea.color=t;const r=this._resultAreaHandler?.changeResultAreaColor(e.trace.globalId,t,this.view.map);e.resultAreaGraphic&&(e.resultAreaGraphic.symbol=r)}changeResultGraphicColor(e,t){const r=[...this.traceResults];r.length>0&&r.forEach(r=>{r.trace.globalId===t.trace.globalId&&(r.graphicColor=e,r.graphicEnabled=!0)}),this.traceResults=r,this.removeResultGraphicFromView(t),this.addResultGraphicToView(t,e)}changeFlagSymbol(e,t){this._flags.length>0&&this._flags.forEach(r=>{r.type===e&&t&&r.mapGraphic&&(r.mapGraphic.symbol=t)})}checkCanTrace(){const e={status:!0,issues:[]},t=this.traces.filter(e=>e.selected);t.length||(e.status=!1,e.issues.push("noTracesSelected"));this._flags.some(e=>"starting-point"===e.type)||(e.status=!1,e.issues.push("noStartingPoints"));return this._flags.filter(e=>null!==e.allTerminals).some(e=>!e.selectedTerminals.length)&&(e.status=!1,e.issues.push("noTerminalSelected")),e}checkSelectionExist(){return this._highlightHandler.some(e=>e)}clearResult(e){if(!this.view)return;let t=this.traceResults;if(t.length>0){const r=t.filter(t=>t.trace.globalId===e.globalId);r.length>0&&(this.removeResultGraphicFromView(r[0]),this.removeResultAreaFromMap(r[0])),t=t.filter(t=>t.trace.globalId!==e.globalId)}this.traceResults=t,0===t.length?(this.removeAllResultAreaGraphics(),this.removeSelection(),this.emit("clear-selection",{resultSet:[]})):this.mergeSelection(!1,e)}createResultAreaGeometries(e,t,r){if(!this.view||!this.resultAreaProperties)return;let s;if(s="convexhull"===this.resultAreaProperties?.type?1===t.length&&(p(t[0])||d(t[0])&&1===t[0].points.length)?this._resultAreaHandler?.createBuffer(t,r,e.resultArea?.unit,!0):this._resultAreaHandler?.createConvexHull(t,e.resultArea?.distance,e.resultArea?.unit):this._resultAreaHandler?.createBuffer(t,r,e.resultArea?.unit,!0),!s)return;if(Array.isArray(s)){for(const t of s){const r=this.getResultAreaAttributes(e,t),s=this._resultAreaHandler?.createResultAreaGraphic(t,r,e.resultArea?.areaUnit,this.messages,this.messagesUnits,e.resultArea?.color);if(s)return s}return}const i=this.getResultAreaAttributes(e,s);return this._resultAreaHandler?.createResultAreaGraphic(s,i,e.resultArea?.areaUnit,this.messages,this.messagesUnits,e.resultArea?.color)}async createResultAreaGraphic(e){if(e.results){const t=await this._createResultAreaInputGeometry(e.results);if(t.length>0){const r=Array(t.length).fill(e.resultArea?.distance),s=this.createResultAreaGeometries(e,t,r);return this.emit("create-result-area",{graphic:s}),s}}}executeTrace(e,t,r){const s=this._processFlags(r.traceLocations);return r.traceLocations=s,F(t,r,{timeout:this._traceTimeout}).then(t=>({trace:e,results:t,selectionEnabled:!1,graphicEnabled:!1,graphicColor:this.defaultGraphicColor,status:"success",date:new Date})).catch(t=>({trace:e,results:null,selectionEnabled:!1,graphicEnabled:!1,graphicColor:this.defaultGraphicColor,status:t.message,date:new Date}))}async getNonspatialTraceLocationInitialFeature(){return new Promise((e,t)=>{this._clickHandler?.remove(),this._clickHandler=this._sketchViewModel.on("create",async r=>{if("complete"!==r.state)return;const s=this._getGraphicLayer(E);s&&r.graphic&&s.remove(r.graphic);const i=this.view?.toScreen(r.graphic?.geometry);if(!i)return;const a=await(this.view?.hitTest(i));if(a?.results.length){const r=a.results.find(e=>"graphic"===e.type&&this.utilityNetwork?.isUtilityLayer(e.layer));r?e(r):t(null)}}),this._sketchViewModel.create("point")})}getResultAreaAttributes(e,r){const{messages:s}=this,i=[],a=[];this._flags.forEach(e=>{const t=e.displayValue?.field+":"+e.displayValue?.value+";"+s.attributeStrings.globalid+":"+e.globalId+";"+s.attributeStrings.terminalid+":"+e.terminalId+";"+s.attributeStrings.x+":"+e.mapPoint?.x+";"+s.attributeStrings.y+":"+e.mapPoint?.y;"starting-point"===e.type?i.push(t):a.push(t)});const l=this.utilityNetwork?.gdbVersion;return{traceId:e.trace.globalId,traceName:e.trace.title,traceDescription:e.trace.description??"",startingPoints:i.toString(),barriers:a.toString(),version:l??void 0,username:t?.credentials[0]?.userId,date:e.date,elementCount:e.results?.elements.length,functionResult:JSON.stringify(e.results?.globalFunctionResults),areaStatistic:r?this._geometryHandler.calculateArea(r,e.resultArea?.areaUnit):0}}getValidSources(){let e=[];const t=this.utilityNetwork?.dataElement?.domainNetworks??[];for(const r of t)e=e.concat(r.junctionSources),e=e.concat(r.edgeSources);return e}groupResultsByNetworkSource(e){return 0===e.length?[]:this._groupBy(e,"networkSourceId")}async loadUtilityNetwork(){const{view:e}=this;if(!e)return null;if(await e.when(),this.utilityNetwork){if(this.utilityNetwork.loaded||await this.utilityNetwork.load(),this.utilityNetwork instanceof A){try{const t=e.map;await t.loadAll()}catch(s){if("layer:unsupported-layer-type"!==s.name&&"subtype-grouplayer:missing-subtypes"!==s.name)throw s;console.error(s)}finally{this._loadUNSupportItems()}return this.utilityNetwork}return null}const t=e.map,r=t.utilityNetworks?.at(0);if(r){if(await r.load(),this.utilityNetwork=r,!await z(r))throw new i("utility-network:no-user-type-extension","User type extension not found");try{await t.loadAll()}catch(s){if("layer:unsupported-layer-type"!==s.name&&"subtype-grouplayer:missing-subtypes"!==s.name)throw s;console.error(s)}finally{this._loadUNSupportItems()}return r}return null}manageFilterBarrier(e,t){const r=[...this._flags];r.forEach(r=>{r.globalId===t.globalId&&"barrier"===t.type&&r.id===t.id&&(r.isFilterBarrier=e)}),this._flags=r}mergeSelection(e,t){let r=[];const s=[...this.traceResults],i=t.globalId;s.forEach(t=>{i===t.trace.globalId&&(t.selectionEnabled=e),t.selectionEnabled&&null!==t.results?.elements&&(r=[...r,...t.results?.elements??[]])}),this.selectResults([...new Set(r)])}async queryFeaturesById(e){const{view:t}=this;if(!t||!this.utilityNetwork)return null;const s=this.utilityNetwork.getObjectIdsFromElements(e),i={layerUrl:s[0].layerUrl,objectIds:s[0].objectIds,outFields:["*"]},a=t.map?.allTables.toArray().filter(e=>e?.parsedUrl?.path===s[0].layerUrl).filter(w)??[];this._getUniqueMapLayerViews(t).filter(({layer:e})=>e?.parsedUrl?.path===s[0].layerUrl).forEach(({layer:e})=>{"feature"!==e.type&&"subtype-group"!==e.type||a.push(e)});const l=(await Promise.all(a.map(async e=>{const s={layers:new r([e]),layerInfos:[i],returnGeometry:!0,outSpatialReference:t.spatialReference},[a]=await v(s,!1);return a}))).filter(({featureSet:e})=>e.features.length>0);return l.length>0?l:null}queryFlagByHitTest(e,t,r){return this._lookupFlagByHit(e).then(e=>{const{view:s}=this;if(!s)return!1;if(e.length>0){const s=[...this._flags],i=r;return e.forEach(e=>{const r=e.graphic,a=r.attributes.hasOwnProperty("GLOBALID")?r.attributes.GLOBALID:r.attributes.globalid;if(s.filter(e=>e.globalId===a).length<=0){const e=this.graphicHandler.getFlagGraphic(r.attributes.mapPoint,t,r,i);this._getGraphicLayer(V)?.add(e);const a=this._createFlagProperty(r,t,e);s.push(a)}else if(null!==r.attributes.percentAlong){const e=this.graphicHandler.getFlagGraphic(r.attributes.mapPoint,t,r,i);this._getGraphicLayer(V)?.add(e);const a=this._createFlagProperty(r,t,e);s.push(a)}}),this._flags=s,!0}return!1})}removeResultGraphicFromView(e){const{view:t}=this;if(!t)return;const r=this._getGraphicLayer(C)?.graphics;e.graphicEnabled=!1;const s=r?.filter(t=>t.attributes[t.attributes.hasOwnProperty("GLOBALID")?"GLOBALID":"globalid"]===e.trace.globalId);s?.forEach(e=>{this._getGraphicLayer(C)?.remove(e)})}removeFlag(e){const t=this._flags.filter(t=>{if(t.id!==e.id)return t});this._removeGraphic(e),this._flags=t}removeAllResultAreaGraphics(){this._resultAreaHandler?.removeAllResultAreaGraphics(this.view.map)}removeResultAreaFromMap(e){if(e.resultArea){e.resultArea.show=!1;const t=this._resultAreaHandler?.removeResultArea(e.trace.globalId,this.view?.map);t&&this.emit("remove-result-area",{graphic:t})}}removeSelection(){this._highlightHandler.forEach(e=>{e&&e.remove()}),this._highlightHandler=[]}removeTerminal(e,t){const r=[...this._flags];r.forEach(r=>{if(r.globalId===t.globalId&&t.selectedTerminals?.includes(parseInt(e,10))){const s=t.selectedTerminals.indexOf(parseInt(e,10));r.selectedTerminals?.splice(s,1)}}),this._flags=r}removeFlagsOnLoadWatcher(){this._watchHandler&&null!==this._watchHandler&&this._watchHandler.remove()}removeClickHandler(){this._clickHandler&&(this._sketchViewModel.cancel(),this._clickHandler.remove())}reset(){this._flags=[],this.traceResults=[];const e=[...this.traces];e.forEach(e=>{e.selected=!1}),this.traces=e,this.view&&(this._getGraphicLayer(E)?.removeAll(),this._getGraphicLayer(V)?.removeAll(),this._getGraphicLayer(C)?.removeAll(),this.removeAllResultAreaGraphics(),this.removeSelection(),this.emit("clear-selection",{resultSet:[]}),this.emit("reset"))}selectFeaturesById(e){const{view:t}=this;if(!t||!this.utilityNetwork)return;const r=this.utilityNetwork.getObjectIdsFromElements(e);this._getUniqueMapLayerViews(t).forEach(e=>{M(e)&&e.layer?.parsedUrl?.path===r[0].layerUrl&&D(e)&&this._highlightHandler.push(e.highlight(r[0].objectIds))})}selectResults(e){if(e.length>0){this.removeSelection();const t=this.groupResultsByNetworkSource(e),r=[];for(const e in t)this.selectFeaturesById(t[e]),r.push(this.queryFeaturesById(t[e]));Promise.all(r).then(e=>{this.emit("select-features",{resultSet:e})})}else this.removeSelection(),this.emit("clear-selection",{resultSet:[]})}selectTraces(e,t){const r=[...this.traces];r.forEach(r=>{t===r.globalId&&(r.selected=e)}),this.traces=r}selectTracesOnLoad(){this.utilityNetwork?.hasOwnProperty("sharedNamedTraceConfigurations")&&(this.traces=[...this.utilityNetwork.sharedNamedTraceConfigurations],this.traces.forEach(e=>{e.selected=!1,this.selectedTraces.includes(e.globalId)&&(e.selected=!0)}))}zoomToAsset(e){this.view?.goTo(e).catch(e=>console.error(e))}async _createResultAreaInputGeometry(e){if(null!=e.aggregatedGeometry)return this._geometryHandler.mergeAggregatedToGeometries(e.aggregatedGeometry);const t=this.groupResultsByNetworkSource(e.elements),r=[];for(const s in t)r.push(this.queryFeaturesById(t[s]));try{const e=await Promise.all(r),t=[];for(const r of e)if(r)for(const e of r)for(const r of e.featureSet.features)r.geometry&&t.push(r.geometry);return t}catch{return[]}}_loadUNSupportItems(){if(!this.utilityNetwork)return;const{map:e}=this.view,{messages:t}=this;this._populateOutfields(),this._createGraphicLayer(E),this._createGraphicLayer(V),this._createGraphicLayer(C),this._resultAreaHandler?.createGraphicLayer(e,t?.alertsStrings.genericResultHeader),this._validUNLayers=this._utilityHelper.getValidUtilityNetworkLayers(e,this.utilityNetwork),this._sketchViewModel=this.graphicHandler.initializeSketch(this.view,this._getGraphicLayer(E),this._validUNLayers)}_getUniqueMapLayerViews(e){const t=[],r=e.layerViews.filter(({layer:{type:e}})=>"feature"===e||"group"===e||"subtype-group"===e).toArray(),s=e=>{for(const r of e.layerViews)x(r)?s(r):t.push(r)};return r.forEach(e=>{switch(e.layer.type){case"group":x(e)&&s(e);break;case"subtype-group":t.push(e);break;default:t.some(t=>t.layer.id===e.layer.id)||t.push(e)}}),t}_processFlags(e){const t=[];return e.forEach(e=>{if(null!==e.selectedTerminals&&e.selectedTerminals.length>0)e.selectedTerminals.forEach(r=>{const s=new G({globalId:e.globalId,percentAlong:e.percentAlong,terminalId:r,type:e.type,isFilterBarrier:e.isFilterBarrier});t.push(s)});else{const r=new G({globalId:e.globalId,percentAlong:e.percentAlong,type:e.type,isFilterBarrier:e.isFilterBarrier});t.push(r)}}),t}_getDisplayField(e){return b(e?.sourceLayer)?this._getDisplayFieldBySublayer(e):this._getDisplayFieldByFeatureLayer(e)}_getDisplayFieldBySublayer(e){let t="",r="";const s=e.sourceLayer;t=this._checkParentForData(s,"displayField");for(const i in e.attributes){const a=i.toLowerCase();a===t?.toLowerCase()?(r=e.attributes[i],"assetgroup"===a||"assettype"===a?r=this._checkSubtype(s,s.subtypeCode):(r=this._checkDomain(s.fields,i,r),"string"==typeof r&&(r=this._defaultDisplayField(r,s)))):(r=this._checkDomain(s.fields,i,r),"string"==typeof r&&(r=this._defaultDisplayField(r,s)))}return{field:t,value:r?.toString()??s.title}}_getDisplayFieldByFeatureLayer(e){const t=e.sourceLayer;let r=t.displayField,s="";for(const i in e.attributes){const a=i.toLowerCase();if(a===r?.toLowerCase())if(s=e.attributes[i],"assetgroup"===a||"assettype"===a){let a=e.attributes[t.typeIdField.toUpperCase()];a||(a=e.attributes[t.typeIdField.toLowerCase()]),r=t.typeIdField,s=this._checkSubtype(t,a),""===r&&(t.templates&&t.templates.length>0?(r=t.templates[0]?.name,s=t.templates[0]?.name):(r=t.displayField,s=e.attributes[i]))}else s=this._checkDomain(t.fields,i,s),"string"==typeof s&&(s=this._defaultDisplayField(s,t));else s=this._checkDomain(t.fields,i,s),"string"==typeof s&&(s=this._defaultDisplayField(s,t))}return{field:r,value:s?s.toString():""}}_checkSubtype(e,t){let r=t;if("subtype-sublayer"===e.type){const s=this._checkParentForData(e,"subtypes");s?.length>0&&s.forEach(e=>{e.code===t&&(r=e.name)})}else if(null!=e.types&&e.types.length>0){const s=e.types.filter(e=>e.id===t);s.length>0&&(r=s[0].name)}return r}_checkDomain(e,t,r){let s=r;const i=e.filter(e=>e.name.toLowerCase()===t.toLowerCase());if(i.length>0&&O(i[0].domain)&&i[0].domain?.codedValues){const e=i[0].domain.codedValues.filter(({code:e})=>e===r);e.length>0&&(s=e[0].name)}return s}_checkParentForData(e,t){return e.parent?.[t]??null}_defaultDisplayField(e,t){return e.trim()?e:t.templates&&t.templates?.length>0?t.templates[0].name:t.title}get _uniqueFlagId(){return this._flagId++}_groupBy(e,t){return e.reduce((e,r)=>((e[r[t]]=e[r[t]]||[]).push(r),e),{})}async _lookupFlagByHit(e){const t=[];let r={};const s=e.graphic?.geometry,i=this.view?.toScreen(s),a=await(this.view?.hitTest(i,{include:this._validUNLayers}));if(!a?.results.length)return[];const l=a?.results.find(e=>null!==e.layer),o=l,c=o.graphic.geometry?.type,u=l?.layer,h=u.globalIdField??"globalid",p=u.objectIdField??"objectid";if(h&&!!o.graphic.attributes[h])r=o.graphic.attributes;else{const e=await(this.view?.whenLayerView(u)),t=e.createQuery();t.outFields=["assetgroup","assettype","globalid","objectid"],t.where=`${p} = ${o.graphic.attributes[p]}`,await n(()=>!e?.updating&&!e?.dataUpdating);const s=await(e?.queryFeatures(t)),i=s?.features[0],a=i?.attributes;r=a}const d=this._getDisplayField(o.graphic),g=o.mapPoint;let y={};if("point"===c||"polygon"===c){if(this.utilityNetwork){const e=this.utilityNetwork.getTerminalConfiguration(o.graphic);y={terminalId:e?e.terminals[0].id||null:1,isFilterBarrier:!1,allTerminals:e??null,selectedTerminals:[e?e.terminals[0].id||null:1],percentAlong:null,displayValue:d,mapPoint:g}}}else if("polyline"===c){const t=o.graphic,r=t.layer,s=t.getObjectId(),i=r.createQuery();i.objectIds=[s];const a=await r.queryFeatures(i),l=a?.features[0],n=l?.geometry;await this._geometryHandler.loadProjector();const c=this._geometryHandler.getPercentageAlong(n,e.graphic?.geometry,n.spatialReference);if(c[0]<0)return[];y={terminalId:null,isFilterBarrier:!1,allTerminals:null,selectedTerminals:null,percentAlong:c,displayValue:d,mapPoint:g}}return o.graphic.attributes={...r,...y},t.push(o),t}_createFlagProperty(e,t,r){const s=new G;s.terminalId=e.attributes.terminalId,s.isFilterBarrier=e.attributes.isFilterBarrier,s.percentAlong=e.attributes.percentAlong,s.globalId=e.attributes.globalid||e.attributes.GLOBALID,s.type=t;const i=s;return i.details=e,i.mapGraphic=r,i.id=this._uniqueFlagId,i.allTerminals=e.attributes.allTerminals,i.selectedTerminals=e.attributes.selectedTerminals,i.displayValue=e.attributes.displayValue,i.mapPoint=e.attributes.mapPoint,i}_populateOutfields(){if(!this.view)return;const{map:e}=this.view,t=this.getValidSources(),r=e=>{"group"===e.type?e.layers.forEach(e=>{$(e)&&r(e)}):t.some(t=>t.layerId===e.layerId)&&e.fields.some(e=>"assetgroup"===e.name.toLowerCase())&&(e.outFields=["assetgroup","assettype","globalid","objectid"])};for(const s of e.layers)$(s)&&r(s)}_removeGraphic(e){this._getGraphicLayer(V)?.remove(e.mapGraphic)}_createGraphicLayer(e){const{map:t}=this.view;if(!t.findLayerById(e)){const t=new m({id:e,internal:!0,listMode:"hide",title:e});T(this.view,t)}}_getGraphicLayer(e){const{map:t}=this.view;if(t){const r=t.findLayerById(e);if(r&&q(r))return r}return null}};e([c()],Q.prototype,"_activeProgress",void 0),e([c()],Q.prototype,"_flags",void 0),e([c()],Q.prototype,"traces",void 0),e([c()],Q.prototype,"defaultGraphicColor",void 0),e([c()],Q.prototype,"enableResultArea",void 0),e([c()],Q.prototype,"flags",void 0),e([c()],Q.prototype,"messages",void 0),e([c()],Q.prototype,"messagesUnits",void 0),e([c()],Q.prototype,"resultAreaProperties",null),e([c()],Q.prototype,"selectedTraces",void 0),e([c()],Q.prototype,"selectOnComplete",void 0),e([c()],Q.prototype,"showGraphicsOnComplete",void 0),e([c()],Q.prototype,"showSelectionAttributes",void 0),e([c({readOnly:!0})],Q.prototype,"state",null),e([c()],Q.prototype,"traceResults",void 0),e([c()],Q.prototype,"utilityNetwork",void 0),e([c({value:null})],Q.prototype,"view",null),Q=e([u("esri.widgets.UtilityNetworkTrace.UtilityNetworkTraceViewModel")],Q);const J=Q;export{J as default};
2
+ import{__decorate as e}from"tslib";import{id as t}from"../../kernel.js";import r from"../../core/Collection.js";import{deprecatedModule as s}from"../../core/deprecate.js";import i from"../../core/Error.js";import{EventedAccessor as a}from"../../core/Evented.js";import l from"../../core/Logger.js";import{whenOnce as o,once as n}from"../../core/reactiveUtils.js";import{property as c,subclass as u}from"../../core/accessorSupport/decorators.js";import{ensureArray as h}from"../../core/accessorSupport/ensureType.js";import{isPoint as p,isMultipoint as d}from"../../geometry/support/jsonTypeUtils.js";import{getGraphicLayer as g}from"../../graphic/graphicOriginUtils.js";import{fetchMessageBundle as y}from"../../intl/messages.js";import m from"../../layers/FeatureLayer.js";import f from"../../layers/GraphicsLayer.js";import w from"../../layers/support/CodedValueDomain.js";import{isFeatureLayer as b,isSubtypeSublayer as _,getOwningPortalUrl as A}from"../../layers/support/layerUtils.js";import v from"../../networks/UtilityNetwork.js";import{getFeaturesFromLayers as k}from"../../networks/support/utils.js";import I from"../../portal/Portal.js";import{hasUserTypeExtension as F}from"../../portal/support/utils.js";import{trace as G}from"../../rest/networks/trace.js";import R from"../../rest/networks/support/TraceLocation.js";import T from"../../rest/networks/support/TraceParameters.js";import{addUniqueLayer as L}from"../../views/draw/support/layerUtils.js";import{GeometryHandler as H}from"./support/GeometryHandler.js";import{GraphicHandler as N,barrierColor as S,startingPointColor as P}from"./support/GraphicHandler.js";import{ResultAreaHandler as U}from"./support/ResultAreaHandler.js";import{UtilityHelper as j}from"./support/UtilityHelper.js";const B=()=>y("esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace"),V=()=>y("esri/core/t9n/Units"),C=`utility-network-trace-flags-${Date.now()}`,E=`utility-network-trace-results-${Date.now()}`,O=`utility-network-trace-sketch-${Date.now()}`;function D(e){return e instanceof w}function M(e){return"feature"===e.layer.type||"subtype-group"===e.layer.type}function x(e){return"layer"in e}function q(e){return void 0!==e.layerViews}function $(e){return"graphics"===e.type}function z(e){return"feature"===e.type||"subtype-group"===e.type||"group"===e.type}async function Q(e){const t=new m({url:e.networkSystemLayers.dirtyAreasLayerUrl});await t.load();const r=t.version;if(Number(r)<=11.1){const t=await A(e.layerUrl),r=new I({url:t});await r.load();const s=r?.user?.username;return!!s&&F(r,s,"utilityNetwork")}return!0}s(l.getLogger("esri.widgets.UtilityNetworkTrace.UtilityNetworkTraceViewModel"),"UtilityNetworkTraceViewModel",{replacement:"Use esri/networks/UtilityNetworkTraceAnalysis instead",version:"5.0",warnOnce:!0});let J=class extends a{constructor(e){super(e),this._activeProgress=!1,this._clickHandler=null,this._flags=[],this._flagId=0,this._geometryHandler=null,this._highlightHandler=[],this._resultAreaHandler=null,this._sketchViewModel=null,this._traceTimeout=6e5,this._utilityHelper=new j,this._validUNLayers=[],this._watchHandler=null,this.traces=[],this.graphicHandler=null,this.defaultGraphicColor={color:[255,255,0,.6],haloOpacity:.9,fillOpacity:.2,hex:"#FFFF00"},this.enableResultArea=!1,this.flags=[],this.messages=null,this.messagesUnits=null,this.defaultResultAreaProperties={type:"convexhull",distance:10,unit:"meters",areaUnit:"square-meters",color:{color:[255,165,0,.5],haloOpacity:.9,fillOpacity:.2,hex:"#ffa500"},show:!1},this.selectedTraces=[],this.selectOnComplete=!0,this.showGraphicsOnComplete=!0,this.showSelectionAttributes=!0,this.traceResults=[],this.utilityNetwork=null}initialize(){this._geometryHandler=new H,this.graphicHandler=new N,this._resultAreaHandler=new U;(async()=>{const[e,t]=await Promise.all([B(),V()]);this.set({messages:e,messagesUnits:t})})()}destroy(){this.view=null}get resultAreaProperties(){return this.defaultResultAreaProperties}set resultAreaProperties(e){this._set("resultAreaProperties",{...this.defaultResultAreaProperties,...e}),this.graphicHandler.addCustomColor(this.resultAreaProperties.color),this.traceResults.forEach(t=>{const r=t.resultArea?.show;t.resultArea={...this.defaultResultAreaProperties,...e},this.removeResultAreaFromMap(t),this.enableResultArea&&this.createResultAreaGraphic(t).then(s=>{if(s){t.resultAreaGraphic=s;const i=e?.show??r;t.resultArea&&(t.resultArea.show=i),i&&this.addResultAreaToMap(t,s)}})})}get state(){return this.view?.ready?"ready":"loading"}get view(){return this._get("view")}set view(e){e&&"2d"!==e.type&&l.getLogger(this).error(new i("view:invalid-view","SceneView is not supported",{view:e})),this._set("view",e),this.utilityNetwork&&this.reset(),this.utilityNetwork=null,this.loadUtilityNetwork().then(e=>{e&&this.selectTracesOnLoad()},()=>{})}addFlagByHit(e,t){const r=!!this.view&&this.view.popupEnabled,s=e=>{this.view?.popup&&(this.view.popupEnabled=e)};return new Promise((i,a)=>{r&&s(!1),this._clickHandler?.remove(),this._clickHandler=this._sketchViewModel.on("create",l=>{if("complete"===l.state){const o=this._getGraphicLayer(O);o&&l.graphic&&o.remove(l.graphic),this.queryFlagByHitTest(l,e,t).then(r=>{this.emit("add-flag-complete",{type:e,symbol:t}),i(r)}).catch(r=>{this.emit("add-flag-error",{type:e,symbol:t}),a(r)}).finally(()=>{r&&s(!0),this._clickHandler?.remove()})}}),this._sketchViewModel.create("point"),this.emit("add-flag",{type:e})})}addNonspatialTraceLocation(e,t){const r=this._getDisplayField(e),s=this.utilityNetwork?.getTerminalConfiguration(e),i={terminalId:null,isFilterBarrier:!1,allTerminals:s,selectedTerminals:[s?s.terminals[0].id||null:1],displayValue:r};e.attributes={...e.attributes,...i};const a=e.attributes.hasOwnProperty("GLOBALID")?e.attributes.GLOBALID:e.attributes.globalid;if(!this._flags.some(e=>e.globalId===a&&e.type===t)){const r=this._createFlagProperty(e,t,null);this._flags.push(r),this.emit("add-flag-complete",{type:t})}this.emit("add-flag",{type:t})}async addFlagsOnLoad(){if(this._flags.length>0)return[];await o(()=>null!=this.view&&!this.view.updating);return(await Promise.all(this.flags.map(async e=>{if(!e.mapPoint)return null;const{type:t}=e,r=e.mapPoint.clone(),s="barrier"===t?S:P,i={graphic:this.graphicHandler.makeGraphic(r,s),state:"complete",tool:"point",toolEventInfo:null,type:"create"};try{return await this.queryFlagByHitTest(i,e.type,null),this.emit("add-flag-complete",{type:t}),null}catch(a){return this.emit("add-flag-error",{type:t}),"barrier"===t?"barrier":"starting-point"}}))).filter(e=>!e)}async addResultAreaToMap(e,t){if(this.view)if(e.resultArea.show=!0,t)this._resultAreaHandler?.addResultAreaToMap(t,this.view.map),this.emit("add-result-area",{graphic:t});else if(e.results){const t=await this.createResultAreaGraphic(e);t&&(e.resultAreaGraphic=t,this._resultAreaHandler?.addResultAreaToMap(t,this.view.map),this.emit("add-result-area",{graphic:t}))}}async addResultGraphicToView(e,t){const{view:r}=this,{results:s}=e;if(r&&s&&this.utilityNetwork)for(const i in s.aggregatedGeometry)if("line,multipoint,polygon".includes(i)){const a=i,l=s.aggregatedGeometry[a];if(null!=l){l.spatialReference=this.utilityNetwork.spatialReference,e.graphicEnabled=!0;const s=await this._geometryHandler.projectGeometry(l,r.spatialReference),i={globalid:e.trace.globalId};if(null!==s){const e=this.graphicHandler.makeGraphic(s,t.color,i,r.spatialReference);this._getGraphicLayer(E)?.add(e)}}}}addTerminal(e,t){const r=[...this._flags];r.forEach(r=>{r.globalId===t.globalId&&(t.selectedTerminals?.includes(parseInt(e,10))||r.selectedTerminals?.push(parseInt(e,10)))}),this._flags=r}async callTrace(){const e=this.traces.filter(e=>e.selected);return!!e.length&&(this.traceResults.length>0&&this.traceResults.forEach(e=>{this.removeResultGraphicFromView(e)}),this.traceResults=[],this.removeSelection(),await Promise.all(e.map(async(e,t)=>{const r=e,s=new T({gdbVersion:this.utilityNetwork?.gdbVersion,moment:this.utilityNetwork?.historicMoment,namedTraceConfigurationGlobalId:r.globalId,outSpatialReference:null,resultTypes:null,traceType:r.traceType,traceLocations:h(R,this._flags),traceConfiguration:null});await this.executeTrace(r,this.utilityNetwork?.networkServiceUrl,s).then(async e=>{if(e.hasOwnProperty("results")){const r={...e};if(null!==r.results){r.resultArea={...this.resultAreaProperties};const e=[...r.results.elements];r.results.elements.length=0;const s=new Map;for(const t of e)s.has(t.globalId)||(s.set(t.globalId,!0),r.results.elements.push(t));const i=[...this.traceResults];if(i.splice(t,0,r),this.traceResults=i,null!==r.results&&(this.selectOnComplete&&this.mergeSelection(!0,r.trace),this.showGraphicsOnComplete&&await this.addResultGraphicToView(r,r.graphicColor),this.enableResultArea)){const e=await this.createResultAreaGraphic(r);e&&(r.resultAreaGraphic=e,r.resultArea?.show&&await this.addResultAreaToMap(r,r.resultAreaGraphic))}}else{const r=[...this.traceResults];r.splice(t,0,e),this.traceResults=r}this._activeProgress=!1}else{this._activeProgress=!1;const r=[...this.traceResults];r.splice(t,0,e),this.traceResults=r}}).catch(e=>{throw this._activeProgress=!1,e})})),!0)}cancelAddFlagByHit(){this._sketchViewModel.cancel()}changeResultAreaColor(e,t){if(!e.resultArea)return;e.resultArea.color=t;const r=this._resultAreaHandler?.changeResultAreaColor(e.trace.globalId,t,this.view.map);e.resultAreaGraphic&&(e.resultAreaGraphic.symbol=r)}changeResultGraphicColor(e,t){const r=[...this.traceResults];r.length>0&&r.forEach(r=>{r.trace.globalId===t.trace.globalId&&(r.graphicColor=e,r.graphicEnabled=!0)}),this.traceResults=r,this.removeResultGraphicFromView(t),this.addResultGraphicToView(t,e)}changeFlagSymbol(e,t){this._flags.length>0&&this._flags.forEach(r=>{r.type===e&&t&&r.mapGraphic&&(r.mapGraphic.symbol=t)})}checkCanTrace(){const e={status:!0,issues:[]},t=this.traces.filter(e=>e.selected);t.length||(e.status=!1,e.issues.push("noTracesSelected"));this._flags.some(e=>"starting-point"===e.type)||(e.status=!1,e.issues.push("noStartingPoints"));return this._flags.filter(e=>null!==e.allTerminals).some(e=>!e.selectedTerminals.length)&&(e.status=!1,e.issues.push("noTerminalSelected")),e}checkSelectionExist(){return this._highlightHandler.some(e=>e)}clearResult(e){if(!this.view)return;let t=this.traceResults;if(t.length>0){const r=t.filter(t=>t.trace.globalId===e.globalId);r.length>0&&(this.removeResultGraphicFromView(r[0]),this.removeResultAreaFromMap(r[0])),t=t.filter(t=>t.trace.globalId!==e.globalId)}this.traceResults=t,0===t.length?(this.removeAllResultAreaGraphics(),this.removeSelection(),this.emit("clear-selection",{resultSet:[]})):this.mergeSelection(!1,e)}createResultAreaGeometries(e,t,r){if(!this.view||!this.resultAreaProperties)return;let s;if(s="convexhull"===this.resultAreaProperties?.type?1===t.length&&(p(t[0])||d(t[0])&&1===t[0].points.length)?this._resultAreaHandler?.createBuffer(t,r,e.resultArea?.unit,!0):this._resultAreaHandler?.createConvexHull(t,e.resultArea?.distance,e.resultArea?.unit):this._resultAreaHandler?.createBuffer(t,r,e.resultArea?.unit,!0),!s)return;if(Array.isArray(s)){for(const t of s){const r=this.getResultAreaAttributes(e,t),s=this._resultAreaHandler?.createResultAreaGraphic(t,r,e.resultArea?.areaUnit,this.messages,this.messagesUnits,e.resultArea?.color);if(s)return s}return}const i=this.getResultAreaAttributes(e,s);return this._resultAreaHandler?.createResultAreaGraphic(s,i,e.resultArea?.areaUnit,this.messages,this.messagesUnits,e.resultArea?.color)}async createResultAreaGraphic(e){if(e.results){const t=await this._createResultAreaInputGeometry(e.results);if(t.length>0){const r=Array(t.length).fill(e.resultArea?.distance),s=this.createResultAreaGeometries(e,t,r);return this.emit("create-result-area",{graphic:s}),s}}}executeTrace(e,t,r){const s=this._processFlags(r.traceLocations);return r.traceLocations=s,G(t,r,{timeout:this._traceTimeout}).then(t=>({trace:e,results:t,selectionEnabled:!1,graphicEnabled:!1,graphicColor:this.defaultGraphicColor,status:"success",date:new Date})).catch(t=>({trace:e,results:null,selectionEnabled:!1,graphicEnabled:!1,graphicColor:this.defaultGraphicColor,status:t.message,date:new Date}))}async getNonspatialTraceLocationInitialFeature(){return new Promise((e,t)=>{this._clickHandler?.remove(),this._clickHandler=this._sketchViewModel.on("create",async r=>{if("complete"!==r.state)return;const s=this._getGraphicLayer(O);s&&r.graphic&&s.remove(r.graphic);const i=this.view?.toScreen(r.graphic?.geometry);if(!i)return;const a=await(this.view?.hitTest(i));if(a?.results.length){const r=a.results.find(e=>"graphic"===e.type&&this.utilityNetwork?.isUtilityLayer(e.layer));r?e(r):t(null)}}),this._sketchViewModel.create("point")})}getResultAreaAttributes(e,r){const{messages:s}=this,i=[],a=[];this._flags.forEach(e=>{const t=e.displayValue?.field+":"+e.displayValue?.value+";"+s.attributeStrings.globalid+":"+e.globalId+";"+s.attributeStrings.terminalid+":"+e.terminalId+";"+s.attributeStrings.x+":"+e.mapPoint?.x+";"+s.attributeStrings.y+":"+e.mapPoint?.y;"starting-point"===e.type?i.push(t):a.push(t)});const l=this.utilityNetwork?.gdbVersion;return{traceId:e.trace.globalId,traceName:e.trace.title,traceDescription:e.trace.description??"",startingPoints:i.toString(),barriers:a.toString(),version:l??void 0,username:t?.credentials[0]?.userId,date:e.date,elementCount:e.results?.elements.length,functionResult:JSON.stringify(e.results?.globalFunctionResults),areaStatistic:r?this._geometryHandler.calculateArea(r,e.resultArea?.areaUnit):0}}getValidSources(){let e=[];const t=this.utilityNetwork?.dataElement?.domainNetworks??[];for(const r of t)e=e.concat(r.junctionSources),e=e.concat(r.edgeSources);return e}groupResultsByNetworkSource(e){return 0===e.length?[]:this._groupBy(e,"networkSourceId")}async loadUtilityNetwork(){const{view:e}=this;if(!e)return null;if(await e.when(),this.utilityNetwork){if(this.utilityNetwork.loaded||await this.utilityNetwork.load(),this.utilityNetwork instanceof v){try{const t=e.map;await t.loadAll()}catch(s){if("layer:unsupported-layer-type"!==s.name&&"subtype-grouplayer:missing-subtypes"!==s.name)throw s;console.error(s)}finally{this._loadUNSupportItems()}return this.utilityNetwork}return null}const t=e.map,r=t.utilityNetworks?.at(0);if(r){if(await r.load(),this.utilityNetwork=r,!await Q(r))throw new i("utility-network:no-user-type-extension","User type extension not found");try{await t.loadAll()}catch(s){if("layer:unsupported-layer-type"!==s.name&&"subtype-grouplayer:missing-subtypes"!==s.name)throw s;console.error(s)}finally{this._loadUNSupportItems()}return r}return null}manageFilterBarrier(e,t){const r=[...this._flags];r.forEach(r=>{r.globalId===t.globalId&&"barrier"===t.type&&r.id===t.id&&(r.isFilterBarrier=e)}),this._flags=r}mergeSelection(e,t){let r=[];const s=[...this.traceResults],i=t.globalId;s.forEach(t=>{i===t.trace.globalId&&(t.selectionEnabled=e),t.selectionEnabled&&null!==t.results?.elements&&(r=[...r,...t.results?.elements??[]])}),this.selectResults([...new Set(r)])}async queryFeaturesById(e){const{view:t}=this;if(!t||!this.utilityNetwork)return null;const s=this.utilityNetwork.getObjectIdsFromElements(e),i={layerUrl:s[0].layerUrl,objectIds:s[0].objectIds,outFields:["*"]},a=t.map?.allTables.toArray().filter(e=>e?.parsedUrl?.path===s[0].layerUrl).filter(b)??[];this._getUniqueMapLayerViews(t).filter(({layer:e})=>e?.parsedUrl?.path===s[0].layerUrl).forEach(({layer:e})=>{"feature"!==e.type&&"subtype-group"!==e.type||a.push(e)});const l=(await Promise.all(a.map(async e=>{const s={layers:new r([e]),layerInfos:[i],returnGeometry:!0,outSpatialReference:t.spatialReference},[a]=await k(s,!1);return a}))).filter(({featureSet:e})=>e.features.length>0);return l.length>0?l:null}queryFlagByHitTest(e,t,r){return this._lookupFlagByHit(e).then(e=>{const{view:s}=this;if(!s)return!1;if(e.length>0){const s=[...this._flags],i=r;return e.forEach(e=>{const r=e.graphic,a=r.attributes.hasOwnProperty("GLOBALID")?r.attributes.GLOBALID:r.attributes.globalid;if(s.filter(e=>e.globalId===a).length<=0){const e=this.graphicHandler.getFlagGraphic(r.attributes.mapPoint,t,r,i);this._getGraphicLayer(C)?.add(e);const a=this._createFlagProperty(r,t,e);s.push(a)}else if(null!==r.attributes.percentAlong){const e=this.graphicHandler.getFlagGraphic(r.attributes.mapPoint,t,r,i);this._getGraphicLayer(C)?.add(e);const a=this._createFlagProperty(r,t,e);s.push(a)}}),this._flags=s,!0}return!1})}removeResultGraphicFromView(e){const{view:t}=this;if(!t)return;const r=this._getGraphicLayer(E)?.graphics;e.graphicEnabled=!1;const s=r?.filter(t=>t.attributes[t.attributes.hasOwnProperty("GLOBALID")?"GLOBALID":"globalid"]===e.trace.globalId);s?.forEach(e=>{this._getGraphicLayer(E)?.remove(e)})}removeFlag(e){const t=this._flags.filter(t=>{if(t.id!==e.id)return t});this._removeGraphic(e),this._flags=t}removeAllResultAreaGraphics(){this._resultAreaHandler?.removeAllResultAreaGraphics(this.view.map)}removeResultAreaFromMap(e){if(e.resultArea){e.resultArea.show=!1;const t=this._resultAreaHandler?.removeResultArea(e.trace.globalId,this.view?.map);t&&this.emit("remove-result-area",{graphic:t})}}removeSelection(){this._highlightHandler.forEach(e=>{e&&e.remove()}),this._highlightHandler=[]}removeTerminal(e,t){const r=[...this._flags];r.forEach(r=>{if(r.globalId===t.globalId&&t.selectedTerminals?.includes(parseInt(e,10))){const s=t.selectedTerminals.indexOf(parseInt(e,10));r.selectedTerminals?.splice(s,1)}}),this._flags=r}removeFlagsOnLoadWatcher(){this._watchHandler&&null!==this._watchHandler&&this._watchHandler.remove()}removeClickHandler(){this._clickHandler&&(this._sketchViewModel.cancel(),this._clickHandler.remove())}reset(){this._flags=[],this.traceResults=[];const e=[...this.traces];e.forEach(e=>{e.selected=!1}),this.traces=e,this.view&&(this._getGraphicLayer(O)?.removeAll(),this._getGraphicLayer(C)?.removeAll(),this._getGraphicLayer(E)?.removeAll(),this.removeAllResultAreaGraphics(),this.removeSelection(),this.emit("clear-selection",{resultSet:[]}),this.emit("reset"))}selectFeaturesById(e){const{view:t}=this;if(!t||!this.utilityNetwork)return;const r=this.utilityNetwork.getObjectIdsFromElements(e);this._getUniqueMapLayerViews(t).forEach(e=>{x(e)&&e.layer?.parsedUrl?.path===r[0].layerUrl&&M(e)&&this._highlightHandler.push(e.highlight(r[0].objectIds))})}selectResults(e){if(e.length>0){this.removeSelection();const t=this.groupResultsByNetworkSource(e),r=[];for(const e in t)this.selectFeaturesById(t[e]),r.push(this.queryFeaturesById(t[e]));Promise.all(r).then(e=>{this.emit("select-features",{resultSet:e})})}else this.removeSelection(),this.emit("clear-selection",{resultSet:[]})}selectTraces(e,t){const r=[...this.traces];r.forEach(r=>{t===r.globalId&&(r.selected=e)}),this.traces=r}selectTracesOnLoad(){this.utilityNetwork?.hasOwnProperty("sharedNamedTraceConfigurations")&&(this.traces=[...this.utilityNetwork.sharedNamedTraceConfigurations],this.traces.forEach(e=>{e.selected=!1,this.selectedTraces.includes(e.globalId)&&(e.selected=!0)}))}zoomToAsset(e){this.view?.goTo(e).catch(e=>console.error(e))}async _createResultAreaInputGeometry(e){if(null!=e.aggregatedGeometry)return this._geometryHandler.mergeAggregatedToGeometries(e.aggregatedGeometry);const t=this.groupResultsByNetworkSource(e.elements),r=[];for(const s in t)r.push(this.queryFeaturesById(t[s]));try{const e=await Promise.all(r),t=[];for(const r of e)if(r)for(const e of r)for(const r of e.featureSet.features)r.geometry&&t.push(r.geometry);return t}catch{return[]}}_loadUNSupportItems(){if(!this.utilityNetwork)return;const{map:e}=this.view,{messages:t}=this;this._populateOutfields(),this._createGraphicLayer(O),this._createGraphicLayer(C),this._createGraphicLayer(E),this._resultAreaHandler?.createGraphicLayer(e,t?.alertsStrings.genericResultHeader),this._validUNLayers=this._utilityHelper.getValidUtilityNetworkLayers(e,this.utilityNetwork),this._sketchViewModel=this.graphicHandler.initializeSketch(this.view,this._getGraphicLayer(O),this._validUNLayers)}_getUniqueMapLayerViews(e){const t=[],r=e.layerViews.filter(({layer:{type:e}})=>"feature"===e||"group"===e||"subtype-group"===e).toArray(),s=e=>{for(const r of e.layerViews)q(r)?s(r):t.push(r)};return r.forEach(e=>{switch(e.layer.type){case"group":q(e)&&s(e);break;case"subtype-group":t.push(e);break;default:t.some(t=>t.layer.id===e.layer.id)||t.push(e)}}),t}_processFlags(e){const t=[];return e.forEach(e=>{if(null!==e.selectedTerminals&&e.selectedTerminals.length>0)e.selectedTerminals.forEach(r=>{const s=new R({globalId:e.globalId,percentAlong:e.percentAlong,terminalId:r,type:e.type,isFilterBarrier:e.isFilterBarrier});t.push(s)});else{const r=new R({globalId:e.globalId,percentAlong:e.percentAlong,type:e.type,isFilterBarrier:e.isFilterBarrier});t.push(r)}}),t}_getDisplayField(e){return _(g(e))?this._getDisplayFieldBySublayer(e):this._getDisplayFieldByFeatureLayer(e)}_getDisplayFieldBySublayer(e){let t="",r="";const s=g(e);t=this._checkParentForData(s,"displayField");for(const i in e.attributes){const a=i.toLowerCase();a===t?.toLowerCase()?(r=e.attributes[i],"assetgroup"===a||"assettype"===a?r=this._checkSubtype(s,s.subtypeCode):(r=this._checkDomain(s.fields,i,r),"string"==typeof r&&(r=this._defaultDisplayField(r,s)))):(r=this._checkDomain(s.fields,i,r),"string"==typeof r&&(r=this._defaultDisplayField(r,s)))}return{field:t,value:r?.toString()??s.title}}_getDisplayFieldByFeatureLayer(e){const t=g(e);let r=t.displayField,s="";for(const i in e.attributes){const a=i.toLowerCase();if(a===r?.toLowerCase())if(s=e.attributes[i],"assetgroup"===a||"assettype"===a){let a=e.attributes[t.typeIdField.toUpperCase()];a||(a=e.attributes[t.typeIdField.toLowerCase()]),r=t.typeIdField,s=this._checkSubtype(t,a),""===r&&(t.templates&&t.templates.length>0?(r=t.templates[0]?.name,s=t.templates[0]?.name):(r=t.displayField,s=e.attributes[i]))}else s=this._checkDomain(t.fields,i,s),"string"==typeof s&&(s=this._defaultDisplayField(s,t));else s=this._checkDomain(t.fields,i,s),"string"==typeof s&&(s=this._defaultDisplayField(s,t))}return{field:r,value:s?s.toString():""}}_checkSubtype(e,t){let r=t;if("subtype-sublayer"===e.type){const s=this._checkParentForData(e,"subtypes");s?.length>0&&s.forEach(e=>{e.code===t&&(r=e.name)})}else if(null!=e.types&&e.types.length>0){const s=e.types.filter(e=>e.id===t);s.length>0&&(r=s[0].name)}return r}_checkDomain(e,t,r){let s=r;const i=e.filter(e=>e.name.toLowerCase()===t.toLowerCase());if(i.length>0&&D(i[0].domain)&&i[0].domain?.codedValues){const e=i[0].domain.codedValues.filter(({code:e})=>e===r);e.length>0&&(s=e[0].name)}return s}_checkParentForData(e,t){return e.parent?.[t]??null}_defaultDisplayField(e,t){return e.trim()?e:t.templates&&t.templates?.length>0?t.templates[0].name:t.title}get _uniqueFlagId(){return this._flagId++}_groupBy(e,t){return e.reduce((e,r)=>((e[r[t]]=e[r[t]]||[]).push(r),e),{})}async _lookupFlagByHit(e){const t=[];let r={};const s=e.graphic?.geometry,i=this.view?.toScreen(s),a=await(this.view?.hitTest(i,{include:this._validUNLayers}));if(!a?.results.length)return[];const l=a?.results.find(e=>null!==e.layer),o=l,c=o.graphic.geometry?.type,u=l?.layer,h=u.globalIdField??"globalid",p=u.objectIdField??"objectid";if(h&&!!o.graphic.attributes[h])r=o.graphic.attributes;else{const e=await(this.view?.whenLayerView(u)),t=e.createQuery();t.outFields=["assetgroup","assettype","globalid","objectid"],t.where=`${p} = ${o.graphic.attributes[p]}`,await n(()=>!e?.updating&&!e?.dataUpdating);const s=await(e?.queryFeatures(t)),i=s?.features[0],a=i?.attributes;r=a}const d=this._getDisplayField(o.graphic),g=o.mapPoint;let y={};if("point"===c||"polygon"===c){if(this.utilityNetwork){const e=this.utilityNetwork.getTerminalConfiguration(o.graphic);y={terminalId:e?e.terminals[0].id||null:1,isFilterBarrier:!1,allTerminals:e??null,selectedTerminals:[e?e.terminals[0].id||null:1],percentAlong:null,displayValue:d,mapPoint:g}}}else if("polyline"===c){const t=o.graphic,r=t.layer,s=t.getObjectId(),i=r.createQuery();i.objectIds=[s];const a=await r.queryFeatures(i),l=a?.features[0],n=l?.geometry;await this._geometryHandler.loadProjector();const c=this._geometryHandler.getPercentageAlong(n,e.graphic?.geometry,n.spatialReference);if(c[0]<0)return[];y={terminalId:null,isFilterBarrier:!1,allTerminals:null,selectedTerminals:null,percentAlong:c,displayValue:d,mapPoint:g}}return o.graphic.attributes={...r,...y},t.push(o),t}_createFlagProperty(e,t,r){const s=new R;s.terminalId=e.attributes.terminalId,s.isFilterBarrier=e.attributes.isFilterBarrier,s.percentAlong=e.attributes.percentAlong,s.globalId=e.attributes.globalid||e.attributes.GLOBALID,s.type=t;const i=s;return i.details=e,i.mapGraphic=r,i.id=this._uniqueFlagId,i.allTerminals=e.attributes.allTerminals,i.selectedTerminals=e.attributes.selectedTerminals,i.displayValue=e.attributes.displayValue,i.mapPoint=e.attributes.mapPoint,i}_populateOutfields(){if(!this.view)return;const{map:e}=this.view,t=this.getValidSources(),r=e=>{"group"===e.type?e.layers.forEach(e=>{z(e)&&r(e)}):t.some(t=>t.layerId===e.layerId)&&e.fields.some(e=>"assetgroup"===e.name.toLowerCase())&&(e.outFields=["assetgroup","assettype","globalid","objectid"])};for(const s of e.layers)z(s)&&r(s)}_removeGraphic(e){this._getGraphicLayer(C)?.remove(e.mapGraphic)}_createGraphicLayer(e){const{map:t}=this.view;if(!t.findLayerById(e)){const t=new f({id:e,internal:!0,listMode:"hide",title:e});L(this.view,t)}}_getGraphicLayer(e){const{map:t}=this.view;if(t){const r=t.findLayerById(e);if(r&&$(r))return r}return null}};e([c()],J.prototype,"_activeProgress",void 0),e([c()],J.prototype,"_flags",void 0),e([c()],J.prototype,"traces",void 0),e([c()],J.prototype,"defaultGraphicColor",void 0),e([c()],J.prototype,"enableResultArea",void 0),e([c()],J.prototype,"flags",void 0),e([c()],J.prototype,"messages",void 0),e([c()],J.prototype,"messagesUnits",void 0),e([c()],J.prototype,"resultAreaProperties",null),e([c()],J.prototype,"selectedTraces",void 0),e([c()],J.prototype,"selectOnComplete",void 0),e([c()],J.prototype,"showGraphicsOnComplete",void 0),e([c()],J.prototype,"showSelectionAttributes",void 0),e([c({readOnly:!0})],J.prototype,"state",null),e([c()],J.prototype,"traceResults",void 0),e([c()],J.prototype,"utilityNetwork",void 0),e([c({value:null})],J.prototype,"view",null),J=e([u("esri.widgets.UtilityNetworkTrace.UtilityNetworkTraceViewModel")],J);const W=J;export{W as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{formatNumber as t}from"../../intl.js";import{deprecatedProperty as o}from"../../core/deprecate.js";import{handlesGroup as i}from"../../core/handleUtils.js";import s from"../../core/Logger.js";import{removeMaybe as l}from"../../core/maybe.js";import{on as r}from"../../core/reactiveUtils.js";import{property as n,subclass as a}from"../../core/accessorSupport/decorators.js";import c from"../Widget.js";import{loadCalciteComponents as p}from"./componentsUtils.js";import{globalCss as d}from"./globalCss.js";import{messageBundle as u,tsx as h}from"./widget.js";import v from"./SelectionToolbar/SelectionToolbarViewModel.js";import m from"./SelectionToolbar/VisibleElements.js";const f="esri-selection-toolbar",g={base:f,container:`${f}__container`,toolButton:`${f}__tool-button`};let T=class extends c{constructor(e,t){super(e,t),this._viewModelHandlesGroup=null,this.availableOperationTypes=["replace","add","remove"],this.disabled=!1,this.layout="horizontal",this.messages=null,this.scale="s",this.viewModel=new v,this.visibleElements=new m}initialize(){this._viewModelHandlesGroup=i([r(()=>this.viewModel,"before-activate",e=>this.emit("before-activate",e)),r(()=>this.viewModel,"complete",e=>this.emit("complete",e)),r(()=>this.viewModel,"selection-change",e=>this.emit("selection-change",e))])}destroy(){this._viewModelHandlesGroup=l(this._viewModelHandlesGroup)}loadDependencies(){return p({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),"action-bar":()=>import("@esri/calcite-components/dist/components/calcite-action-bar"),"action-group":()=>import("@esri/calcite-components/dist/components/calcite-action-group"),chip:()=>import("@esri/calcite-components/dist/components/calcite-chip"),dropdown:()=>import("@esri/calcite-components/dist/components/calcite-dropdown"),"dropdown-item":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-item"),"dropdown-group":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-group"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon")})}get _effectiveDisabled(){return this.disabled||"disabled"===this.state}get _effectiveOperationType(){return this.activeOperation?.effectiveType||this.defaultOperationType}get activeOperation(){return this.viewModel.activeOperation}get continuousSelectionEnabled(){return this.viewModel.continuousSelectionEnabled}set continuousSelectionEnabled(e){this.viewModel.continuousSelectionEnabled=e}get defaultLassoToolOptions(){return this.viewModel.defaultLassoToolOptions}set defaultLassoToolOptions(e){this.viewModel.defaultLassoToolOptions=e}get defaultOperationType(){return this.viewModel.defaultOperationType}set defaultOperationType(e){this.viewModel.defaultOperationType=e}get defaultPointToolOptions(){return this.viewModel.defaultPointToolOptions}set defaultPointToolOptions(e){this.viewModel.defaultPointToolOptions=e}get defaultRectangleToolOptions(){return this.viewModel.defaultRectangleToolOptions}set defaultRectangleToolOptions(e){this.viewModel.defaultRectangleToolOptions=e}get effectiveSelectionManager(){return this.viewModel.effectiveSelectionManager}get effectiveSources(){return this.viewModel.effectiveSources}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get layers(){return o(s.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources}set layers(e){o(s.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources=e}get layerViewPreferenceEnabled(){return this.viewModel.layerViewPreferenceEnabled}set layerViewPreferenceEnabled(e){this.viewModel.layerViewPreferenceEnabled=e}get persistSelection(){return this.viewModel.persistSelection}set persistSelection(e){this.viewModel.persistSelection=e}get returnFeatureTitleFields(){return this.viewModel.returnFeatureTitleFields}set returnFeatureTitleFields(e){this.viewModel.returnFeatureTitleFields=e}get returnGeometry(){return this.viewModel.returnGeometry}set returnGeometry(e){this.viewModel.returnGeometry=e}get selectOnComplete(){return this.viewModel.selectOnComplete}set selectOnComplete(e){this.viewModel.selectOnComplete=e}get selectionManager(){return this.viewModel.selectionManager}set selectionManager(e){this.viewModel.selectionManager=e}get state(){return this.viewModel.state}get sources(){return this.viewModel.sources}set sources(e){this.viewModel.sources=e}get toolConfigs(){return this.viewModel.toolConfigs}set toolConfigs(e){this.viewModel.toolConfigs=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}get visibleToolCount(){const{visibleElements:e}=this;return this.toolConfigs.length+(e.lassoTool?1:0)+(e.rectangleTool?1:0)}activate(e){if(this.cancel(),!this._effectiveDisabled)return this.viewModel.activate(e)}activateTool(e){if(!this._effectiveDisabled)return this.viewModel.activateTool(e)}cancel(){this.viewModel.cancel()}toggleTool(e){if(!this._effectiveDisabled)return this.viewModel.toggleTool(e)}render(){return h("div",{"aria-label":this.label,class:this.classes(g.base,d.widget)},h("div",{class:g.container},h("calcite-action-bar",{expandDisabled:!0,layout:"horizontal",overflowActionsDisabled:!0,scale:this.scale},this._renderOperationTypeControls(),this._renderToolsGroup(),this._renderChip())))}_renderToolsGroup(){return h("calcite-action-group",{key:"tools-group"},this._renderDefaultTools(),this._renderCustomTools())}_renderDefaultTools(){return[this._renderPanAction(),this._renderPointTool(),this._renderRectangleTool(),this._renderLassoTool()]}_renderPanAction(){if(!this.visibleElements.pan)return;const e=this.messages.pan,t=`${this.id}-tool-pan`;return this._renderAction({active:!this.activeOperation,disabled:this._effectiveDisabled,icon:"pan",id:t,key:t,onclick:()=>this.cancel(),text:e,title:e})}_renderChip(){if(!this.visibleElements.chip)return;const{effectiveSelectionManager:e}=this,o=e?.count??0,i=t(o);return h("calcite-chip",{appearance:"outline",closable:o>0,closed:0===o,disabled:this._effectiveDisabled||0===o,label:i,scale:this.scale,slot:"actions-end",title:this.messages.clearSelection,onCalciteChipClose:()=>e?.clear()},i)}_renderCustomTools(){return this.toolConfigs.map(({toolName:e,icon:t})=>this._renderToolWithTooltip(e,t))}_renderPointTool(){if(this.visibleElements.pointTool)return this._renderToolWithTooltip("point","selection-set",this.messages.selectByPoint)}_renderLassoTool(){if(this.visibleElements.lassoTool)return this._renderToolWithTooltip("lasso","lasso-select",this.messages.selectByLasso)}_renderRectangleTool(){if(this.visibleElements.rectangleTool)return this._renderToolWithTooltip("rectangle","cursor-marquee",this.messages.selectByRectangle)}_renderOperationTypeControls(){const{availableOperationTypes:e}=this;if(!this.visibleElements.operationTypeControls||!e.length)return;const{_effectiveOperationType:t,scale:o}=this,i=this._getIconForSelectionOperationType(t),s=this._getLabelForSelectionOperationType(t);return h("calcite-action-group",{key:"toggle-group"},h("calcite-dropdown",{overlayPositioning:"fixed",placement:"bottom-start",scale:o,topLayerDisabled:this.topLayerDisabled},h("calcite-action",{class:g.toolButton,disabled:this._effectiveDisabled,icon:i,scale:o,slot:"trigger",text:s,title:s},h("calcite-icon",{icon:"chevron-down",scale:"s"})),h("calcite-dropdown-group",null,e.map(e=>this._renderOperationTypeDropdownItem(e)))))}_renderOperationTypeDropdownItem(e){return h("calcite-dropdown-item",{iconStart:this._getIconForSelectionOperationType(e),selected:this.defaultOperationType===e,onCalciteDropdownItemSelect:()=>this.defaultOperationType=e},this._getLabelForSelectionOperationType(e))}_renderToolWithTooltip(e,t,o=e){const i=`${this.id}-tool-${e}`;return this._renderAction({active:this.activeOperation?.toolName===e,disabled:this._effectiveDisabled,icon:t||"selection",id:i,key:i,onclick:t=>{t.stopPropagation(),this.toggleTool(e)},text:o,title:o})}_renderAction(e){return h("calcite-action",{...e,bind:this,class:g.toolButton,scale:this.scale})}_getIconForSelectionOperationType(e){switch(e){case"replace":return"overwrite-features";case"add":return"cursor-plus";case"remove":return"cursor-minus"}}_getLabelForSelectionOperationType(e){const{messages:t}=this;switch(e){case"replace":return t.replaceSelection;case"add":return t.addToSelection;case"remove":return t.removeFromSelection}}};e([n()],T.prototype,"_effectiveDisabled",null),e([n()],T.prototype,"_effectiveOperationType",null),e([n()],T.prototype,"activeOperation",null),e([n()],T.prototype,"availableOperationTypes",void 0),e([n()],T.prototype,"continuousSelectionEnabled",null),e([n()],T.prototype,"defaultLassoToolOptions",null),e([n()],T.prototype,"defaultOperationType",null),e([n()],T.prototype,"defaultPointToolOptions",null),e([n()],T.prototype,"defaultRectangleToolOptions",null),e([n()],T.prototype,"disabled",void 0),e([n()],T.prototype,"effectiveSelectionManager",null),e([n()],T.prototype,"effectiveSources",null),e([n()],T.prototype,"label",null),e([n()],T.prototype,"layers",null),e([n()],T.prototype,"layerViewPreferenceEnabled",null),e([n()],T.prototype,"layout",void 0),e([n(),u("esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar")],T.prototype,"messages",void 0),e([n()],T.prototype,"persistSelection",null),e([n()],T.prototype,"returnFeatureTitleFields",null),e([n()],T.prototype,"returnGeometry",null),e([n()],T.prototype,"selectOnComplete",null),e([n()],T.prototype,"scale",void 0),e([n()],T.prototype,"selectionManager",null),e([n()],T.prototype,"state",null),e([n()],T.prototype,"sources",null),e([n()],T.prototype,"toolConfigs",null),e([n()],T.prototype,"view",null),e([n()],T.prototype,"viewModel",void 0),e([n({type:m,nonNullable:!0})],T.prototype,"visibleElements",void 0),e([n()],T.prototype,"visibleToolCount",null),T=e([a("esri.widgets.support.SelectionToolbar")],T);const y=T;export{y as default};
2
+ import{__decorate as e}from"tslib";import{formatNumber as t}from"../../intl.js";import{deprecatedProperty as o}from"../../core/deprecate.js";import{handlesGroup as i}from"../../core/handleUtils.js";import s from"../../core/Logger.js";import{removeMaybe as l}from"../../core/maybe.js";import{on as r}from"../../core/reactiveUtils.js";import{property as n,subclass as a}from"../../core/accessorSupport/decorators.js";import c from"../Widget.js";import{loadCalciteComponents as p}from"./componentsUtils.js";import{globalCss as d}from"./globalCss.js";import{messageBundle as u,tsx as h}from"./widget.js";import v from"./SelectionToolbar/SelectionToolbarViewModel.js";import m from"./SelectionToolbar/VisibleElements.js";const f="esri-selection-toolbar",g={base:f,container:`${f}__container`,toolButton:`${f}__tool-button`};let T=class extends c{constructor(e,t){super(e,t),this._viewModelHandlesGroup=null,this.availableOperationTypes=["replace","add","remove"],this.disabled=!1,this.layout="horizontal",this.messages=null,this.scale="s",this.viewModel=new v,this.visibleElements=new m}initialize(){this._viewModelHandlesGroup=i([r(()=>this.viewModel,"before-activate",e=>this.emit("before-activate",e)),r(()=>this.viewModel,"complete",e=>this.emit("complete",e)),r(()=>this.viewModel,"selection-change",e=>this.emit("selection-change",e))])}destroy(){this._viewModelHandlesGroup=l(this._viewModelHandlesGroup)}loadDependencies(){return p({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),"action-bar":()=>import("@esri/calcite-components/dist/components/calcite-action-bar"),"action-group":()=>import("@esri/calcite-components/dist/components/calcite-action-group"),chip:()=>import("@esri/calcite-components/dist/components/calcite-chip"),dropdown:()=>import("@esri/calcite-components/dist/components/calcite-dropdown"),"dropdown-item":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-item"),"dropdown-group":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-group"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon")})}get _effectiveDisabled(){return this.disabled||"disabled"===this.state}get _effectiveOperationType(){return this.activeOperation?.effectiveType||this.defaultOperationType}get activeOperation(){return this.viewModel.activeOperation}get continuousSelectionEnabled(){return this.viewModel.continuousSelectionEnabled}set continuousSelectionEnabled(e){this.viewModel.continuousSelectionEnabled=e}get defaultLassoToolOptions(){return this.viewModel.defaultLassoToolOptions}set defaultLassoToolOptions(e){this.viewModel.defaultLassoToolOptions=e}get defaultOperationType(){return this.viewModel.defaultOperationType}set defaultOperationType(e){this.viewModel.defaultOperationType=e}get defaultPointToolOptions(){return this.viewModel.defaultPointToolOptions}set defaultPointToolOptions(e){this.viewModel.defaultPointToolOptions=e}get defaultRectangleToolOptions(){return this.viewModel.defaultRectangleToolOptions}set defaultRectangleToolOptions(e){this.viewModel.defaultRectangleToolOptions=e}get effectiveSelectionManager(){return this.viewModel.effectiveSelectionManager}get effectiveSources(){return this.viewModel.effectiveSources}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get layers(){return o(s.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources}set layers(e){o(s.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources=e}get layerViewPreferenceEnabled(){return this.viewModel.layerViewPreferenceEnabled}set layerViewPreferenceEnabled(e){this.viewModel.layerViewPreferenceEnabled=e}get persistSelection(){return this.viewModel.persistSelection}set persistSelection(e){this.viewModel.persistSelection=e}get returnFeatureTitleFields(){return this.viewModel.returnFeatureTitleFields}set returnFeatureTitleFields(e){this.viewModel.returnFeatureTitleFields=e}get returnGeometry(){return this.viewModel.returnGeometry}set returnGeometry(e){this.viewModel.returnGeometry=e}get selectOnComplete(){return this.viewModel.selectOnComplete}set selectOnComplete(e){this.viewModel.selectOnComplete=e}get selectionManager(){return this.viewModel.selectionManager}set selectionManager(e){this.viewModel.selectionManager=e}get state(){return this.viewModel.state}get sources(){return this.viewModel.sources}set sources(e){this.viewModel.sources=e}get toolConfigs(){return this.viewModel.toolConfigs}set toolConfigs(e){this.viewModel.toolConfigs=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}get visibleToolCount(){const{visibleElements:e}=this;return this.toolConfigs.length+(e.lassoTool?1:0)+(e.rectangleTool?1:0)}activate(e){if(this.cancel(),!this._effectiveDisabled)return this.viewModel.activate(e)}activateTool(e){if(!this._effectiveDisabled)return this.viewModel.activateTool(e)}cancel(){this.viewModel.cancel()}toggleTool(e){if(!this._effectiveDisabled)return this.viewModel.toggleTool(e)}render(){return h("div",{"aria-label":this.label,class:this.classes(g.base,d.widget)},h("div",{class:g.container},h("calcite-action-bar",{expandDisabled:!0,layout:this.layout,overflowActionsDisabled:!0,scale:this.scale},this._renderOperationTypeControls(),this._renderToolsGroup(),this._renderChip())))}_renderToolsGroup(){return h("calcite-action-group",{key:"tools-group"},this._renderDefaultTools(),this._renderCustomTools())}_renderDefaultTools(){return[this._renderPanAction(),this._renderPointTool(),this._renderRectangleTool(),this._renderLassoTool()]}_renderPanAction(){if(!this.visibleElements.pan)return;const e=this.messages.pan,t=`${this.id}-tool-pan`;return this._renderAction({active:!this.activeOperation,disabled:this._effectiveDisabled,icon:"pan",id:t,key:t,onclick:()=>this.cancel(),text:e,title:e})}_renderChip(){if(!this.visibleElements.chip)return;const{effectiveSelectionManager:e}=this,o=e?.count??0,i=t(o);return h("calcite-chip",{appearance:"outline",closable:o>0,closed:0===o,disabled:this._effectiveDisabled||0===o,label:i,scale:this.scale,title:this.messages.clearSelection,onCalciteChipClose:()=>e?.clear()},i)}_renderCustomTools(){return this.toolConfigs.map(({toolName:e,icon:t})=>this._renderToolWithTooltip(e,t))}_renderPointTool(){if(this.visibleElements.pointTool)return this._renderToolWithTooltip("point","selection-set",this.messages.selectByPoint)}_renderLassoTool(){if(this.visibleElements.lassoTool)return this._renderToolWithTooltip("lasso","lasso-select",this.messages.selectByLasso)}_renderRectangleTool(){if(this.visibleElements.rectangleTool)return this._renderToolWithTooltip("rectangle","cursor-marquee",this.messages.selectByRectangle)}_renderOperationTypeControls(){const{availableOperationTypes:e}=this;if(!this.visibleElements.operationTypeControls||!e.length)return;const{_effectiveOperationType:t,scale:o}=this,i=this._getIconForSelectionOperationType(t),s=this._getLabelForSelectionOperationType(t);return h("calcite-action-group",{key:"toggle-group"},h("calcite-dropdown",{overlayPositioning:"fixed",placement:"bottom-start",scale:o,topLayerDisabled:this.topLayerDisabled},h("calcite-action",{class:g.toolButton,disabled:this._effectiveDisabled,icon:i,scale:o,slot:"trigger",text:s,title:s},h("calcite-icon",{icon:"chevron-down",scale:"s"})),h("calcite-dropdown-group",null,e.map(e=>this._renderOperationTypeDropdownItem(e)))))}_renderOperationTypeDropdownItem(e){return h("calcite-dropdown-item",{iconStart:this._getIconForSelectionOperationType(e),selected:this.defaultOperationType===e,onCalciteDropdownItemSelect:()=>this.defaultOperationType=e},this._getLabelForSelectionOperationType(e))}_renderToolWithTooltip(e,t,o=e){const i=`${this.id}-tool-${e}`;return this._renderAction({active:this.activeOperation?.toolName===e,disabled:this._effectiveDisabled,icon:t||"selection",id:i,key:i,onclick:t=>{t.stopPropagation(),this.toggleTool(e)},text:o,title:o})}_renderAction(e){return h("calcite-action",{...e,bind:this,class:g.toolButton,scale:this.scale})}_getIconForSelectionOperationType(e){switch(e){case"replace":return"overwrite-features";case"add":return"cursor-plus";case"remove":return"cursor-minus"}}_getLabelForSelectionOperationType(e){const{messages:t}=this;switch(e){case"replace":return t.replaceSelection;case"add":return t.addToSelection;case"remove":return t.removeFromSelection}}};e([n()],T.prototype,"_effectiveDisabled",null),e([n()],T.prototype,"_effectiveOperationType",null),e([n()],T.prototype,"activeOperation",null),e([n()],T.prototype,"availableOperationTypes",void 0),e([n()],T.prototype,"continuousSelectionEnabled",null),e([n()],T.prototype,"defaultLassoToolOptions",null),e([n()],T.prototype,"defaultOperationType",null),e([n()],T.prototype,"defaultPointToolOptions",null),e([n()],T.prototype,"defaultRectangleToolOptions",null),e([n()],T.prototype,"disabled",void 0),e([n()],T.prototype,"effectiveSelectionManager",null),e([n()],T.prototype,"effectiveSources",null),e([n()],T.prototype,"label",null),e([n()],T.prototype,"layers",null),e([n()],T.prototype,"layerViewPreferenceEnabled",null),e([n()],T.prototype,"layout",void 0),e([n(),u("esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar")],T.prototype,"messages",void 0),e([n()],T.prototype,"persistSelection",null),e([n()],T.prototype,"returnFeatureTitleFields",null),e([n()],T.prototype,"returnGeometry",null),e([n()],T.prototype,"selectOnComplete",null),e([n()],T.prototype,"scale",void 0),e([n()],T.prototype,"selectionManager",null),e([n()],T.prototype,"state",null),e([n()],T.prototype,"sources",null),e([n()],T.prototype,"toolConfigs",null),e([n()],T.prototype,"view",null),e([n()],T.prototype,"viewModel",void 0),e([n({type:m,nonNullable:!0})],T.prototype,"visibleElements",void 0),e([n()],T.prototype,"visibleToolCount",null),T=e([a("esri.widgets.support.SelectionToolbar")],T);const y=T;export{y as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{isSome as t}from"../../core/arrayUtils.js";import{property as o,subclass as i}from"../../core/accessorSupport/decorators.js";import s from"../../views/interactive/sketch/SketchOptions.js";import{directionModeIcons as l}from"../../views/interactive/tooltip/components/directionModeIcons.js";import n from"../Widget.js";import{loadCalciteComponents as r}from"./componentsUtils.js";import{globalCss as a}from"./globalCss.js";import{loadLabeledSwitchComponents as c,LabeledSwitch as d}from"./LabeledSwitch.js";import{messageBundle as p,tsx as b}from"./widget.js";import h from"./SketchTooltipControls/VisibleElements.js";const m="esri-sketch-tooltip-controls",g={base:m,block:`${m}__block`,blockContent:`${m}__block-content`,radioButtonLabelWrapper:`${m}__radio-button-label-wrapper`};let u=class extends n{constructor(e,t){super(e,t),this.viewModel=null,this.visibleElements=new h,this.sketchOptions=new s,this.view=void 0,this._onTooltipsEnabledChange=e=>{this.sketchOptions.tooltips.enabled=e},this._onLabelsEnabledChange=e=>{this.sketchOptions.labels.enabled=e},this._onDirectionModeChange=e=>{this.sketchOptions.values.directionMode=e.currentTarget.selectedItem.value}}loadDependencies(){return Promise.all([r({block:()=>import("@esri/calcite-components/dist/components/calcite-block"),label:()=>import("@esri/calcite-components/dist/components/calcite-label"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon"),"radio-button":()=>import("@esri/calcite-components/dist/components/calcite-radio-button"),"radio-button-group":()=>import("@esri/calcite-components/dist/components/calcite-radio-button-group")}),c()])}render(){const{label:e,visibleElements:t}=this,o=this._renderContent();return b("div",{"aria-label":e,class:this.classes(g.base,a.widget)},o?b("calcite-block",{class:g.block,expanded:!0,heading:t.header?this.label:"",key:"content-block",label:this.label},b("div",{class:g.blockContent,key:"content"},o)):void 0)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get _viewEligibleForLabels(){const{view:e}=this;return"3d"===e?.type||"2d"===e?.type&&"map"===e.view2dType}_renderContent(){const{visibleElements:e}=this,o=[e.tooltipsToggle?this._renderTooltipsToggle():null,e.labelsToggle&&this._viewEligibleForLabels?this._renderLabelsToggle():null,e.directionModePicker?this._renderDirectionModePicker():null].filter(t);return 0===o.length?null:o}_renderTooltipsToggle(){const{messages:e,sketchOptions:t}=this;return b(d,{checked:t.tooltips.effectiveEnabled,hint:e.tooltipsToggleHint,key:`${this.id}__tooltips`,label:e.tooltipsToggle,topLayerDisabled:this.topLayerDisabled,onChange:this._onTooltipsEnabledChange})}_renderLabelsToggle(){const{messages:e,sketchOptions:t}=this;return b(d,{checked:t.labels.enabled,hint:e.labelsToggleHint,key:`${this.id}__labels`,label:e.labelsToggle,topLayerDisabled:this.topLayerDisabled,onChange:this._onLabelsEnabledChange})}_renderDirectionModePicker(){const{messages:e,sketchOptions:t}=this,{directionMode:o}=t.values;return b("calcite-label",{key:"direction-mode",layout:"default",scale:"s"},e.directionModePicker,b("calcite-radio-button-group",{key:"radio-button-group",layout:"horizontal",name:this.id,scale:"s",value:o,onCalciteRadioButtonGroupChange:this._onDirectionModeChange},this._renderDirectionModeOption("relative",o,e.directionModeRelative),this._renderDirectionModeOption("absolute",o,e.directionModeAbsolute)))}_renderDirectionModeOption(e,t,o){return b("calcite-label",{key:e,layout:"inline",scale:"s"},b("calcite-radio-button",{checked:e===t,scale:"s",value:e}),b("div",{class:g.radioButtonLabelWrapper,key:"label-wrapper"},b("calcite-icon",{icon:l[e],scale:"s"}),o))}};e([o()],u.prototype,"label",null),e([o({type:h,nonNullable:!0})],u.prototype,"visibleElements",void 0),e([o(),p("esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls")],u.prototype,"messages",void 0),e([o({nonNullable:!0,type:s})],u.prototype,"sketchOptions",void 0),e([o()],u.prototype,"view",void 0),e([o()],u.prototype,"_viewEligibleForLabels",null),u=e([i("esri.widgets.support.SketchTooltipControls")],u);const k=u;export{k as default};
2
+ import{__decorate as e}from"tslib";import{isSome as t}from"../../core/arrayUtils.js";import{property as o,subclass as i}from"../../core/accessorSupport/decorators.js";import s from"../../views/interactive/sketch/SketchOptions.js";import{directionModeIcons as l}from"../../views/interactive/tooltip/components/directionModeIcons.js";import n from"../Widget.js";import{loadCalciteComponents as r}from"./componentsUtils.js";import{globalCss as a}from"./globalCss.js";import{loadLabeledSwitchComponents as c,LabeledSwitch as d}from"./LabeledSwitch.js";import{messageBundle as p,tsx as b}from"./widget.js";import h from"./SketchTooltipControls/VisibleElements.js";const m="esri-sketch-tooltip-controls",g={base:m,block:`${m}__block`,blockContent:`${m}__block-content`,radioButtonLabelWrapper:`${m}__radio-button-label-wrapper`};let u=class extends n{constructor(e,t){super(e,t),this.viewModel=null,this.visibleElements=new h,this.sketchOptions=new s,this.view=void 0,this._onTooltipsEnabledChange=e=>{this.sketchOptions.tooltips.enabled=e},this._onLabelsEnabledChange=e=>{this.sketchOptions.labels.enabled=e},this._onDirectionModeChange=e=>{this.sketchOptions.values.directionMode=e.currentTarget.selectedItem?.value??"relative"}}loadDependencies(){return Promise.all([r({block:()=>import("@esri/calcite-components/dist/components/calcite-block"),label:()=>import("@esri/calcite-components/dist/components/calcite-label"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon"),"radio-button":()=>import("@esri/calcite-components/dist/components/calcite-radio-button"),"radio-button-group":()=>import("@esri/calcite-components/dist/components/calcite-radio-button-group")}),c()])}render(){const{label:e,visibleElements:t}=this,o=this._renderContent();return b("div",{"aria-label":e,class:this.classes(g.base,a.widget)},o?b("calcite-block",{class:g.block,expanded:!0,heading:t.header?this.label:"",key:"content-block",label:this.label},b("div",{class:g.blockContent,key:"content"},o)):void 0)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get _viewEligibleForLabels(){const{view:e}=this;return"3d"===e?.type||"2d"===e?.type&&"map"===e.view2dType}_renderContent(){const{visibleElements:e}=this,o=[e.tooltipsToggle?this._renderTooltipsToggle():null,e.labelsToggle&&this._viewEligibleForLabels?this._renderLabelsToggle():null,e.directionModePicker?this._renderDirectionModePicker():null].filter(t);return 0===o.length?null:o}_renderTooltipsToggle(){const{messages:e,sketchOptions:t}=this;return b(d,{checked:t.tooltips.effectiveEnabled,hint:e.tooltipsToggleHint,key:`${this.id}__tooltips`,label:e.tooltipsToggle,topLayerDisabled:this.topLayerDisabled,onChange:this._onTooltipsEnabledChange})}_renderLabelsToggle(){const{messages:e,sketchOptions:t}=this;return b(d,{checked:t.labels.enabled,hint:e.labelsToggleHint,key:`${this.id}__labels`,label:e.labelsToggle,topLayerDisabled:this.topLayerDisabled,onChange:this._onLabelsEnabledChange})}_renderDirectionModePicker(){const{messages:e,sketchOptions:t}=this,{directionMode:o}=t.values;return b("calcite-label",{key:"direction-mode",layout:"default",scale:"s"},e.directionModePicker,b("calcite-radio-button-group",{key:"radio-button-group",layout:"horizontal",name:this.id,scale:"s",value:o,onCalciteRadioButtonGroupChange:this._onDirectionModeChange},this._renderDirectionModeOption("relative",o,e.directionModeRelative),this._renderDirectionModeOption("absolute",o,e.directionModeAbsolute)))}_renderDirectionModeOption(e,t,o){return b("calcite-label",{key:e,layout:"inline",scale:"s"},b("calcite-radio-button",{checked:e===t,scale:"s",value:e}),b("div",{class:g.radioButtonLabelWrapper,key:"label-wrapper"},b("calcite-icon",{icon:l[e],scale:"s"}),o))}};e([o()],u.prototype,"label",null),e([o({type:h,nonNullable:!0})],u.prototype,"visibleElements",void 0),e([o(),p("esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls")],u.prototype,"messages",void 0),e([o({nonNullable:!0,type:s})],u.prototype,"sketchOptions",void 0),e([o()],u.prototype,"view",void 0),e([o()],u.prototype,"_viewEligibleForLabels",null),u=e([i("esri.widgets.support.SketchTooltipControls")],u);const k=u;export{k as default};