@arcgis/map-components 5.1.0-next.104 → 5.1.0-next.105

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 (263) hide show
  1. package/dist/cdn/3AKJIFJP.js +2 -0
  2. package/dist/cdn/6IRKJ76J.js +2 -0
  3. package/dist/cdn/6QJQJ4I7.js +2 -0
  4. package/dist/cdn/FMT63SES.js +2 -0
  5. package/dist/cdn/IMSDXTQ5.js +2 -0
  6. package/dist/cdn/JFWOTBXI.js +2 -0
  7. package/dist/cdn/JIAEOA2S.js +2 -0
  8. package/dist/cdn/PKV6NA3M.js +2 -0
  9. package/dist/cdn/TKQLQE4E.js +2 -0
  10. package/dist/cdn/TZVSBVJN.js +2 -0
  11. package/dist/cdn/{KASY64TA.js → UQCQAL4T.js} +1 -1
  12. package/dist/cdn/{UCPJMQPU.js → VVIDVEKK.js} +1 -1
  13. package/dist/cdn/{AWQHNAWY.js → XB5I52AG.js} +1 -1
  14. package/dist/cdn/XIJGC7OK.js +2 -0
  15. package/dist/cdn/assets/feature-next/t9n/messages.ar.json +1 -0
  16. package/dist/cdn/assets/feature-next/t9n/messages.bg.json +1 -0
  17. package/dist/cdn/assets/feature-next/t9n/messages.bs.json +1 -0
  18. package/dist/cdn/assets/feature-next/t9n/messages.ca.json +1 -0
  19. package/dist/cdn/assets/feature-next/t9n/messages.cs.json +1 -0
  20. package/dist/cdn/assets/feature-next/t9n/messages.da.json +1 -0
  21. package/dist/cdn/assets/feature-next/t9n/messages.de.json +1 -0
  22. package/dist/cdn/assets/feature-next/t9n/messages.el.json +1 -0
  23. package/dist/cdn/assets/feature-next/t9n/messages.en.json +1 -0
  24. package/dist/cdn/assets/feature-next/t9n/messages.es.json +1 -0
  25. package/dist/cdn/assets/feature-next/t9n/messages.et.json +1 -0
  26. package/dist/cdn/assets/feature-next/t9n/messages.fi.json +1 -0
  27. package/dist/cdn/assets/feature-next/t9n/messages.fr.json +1 -0
  28. package/dist/cdn/assets/feature-next/t9n/messages.he.json +1 -0
  29. package/dist/cdn/assets/feature-next/t9n/messages.hr.json +1 -0
  30. package/dist/cdn/assets/feature-next/t9n/messages.hu.json +1 -0
  31. package/dist/cdn/assets/feature-next/t9n/messages.id.json +1 -0
  32. package/dist/cdn/assets/feature-next/t9n/messages.it.json +1 -0
  33. package/dist/cdn/assets/feature-next/t9n/messages.ja.json +1 -0
  34. package/dist/cdn/assets/feature-next/t9n/messages.ko.json +1 -0
  35. package/dist/cdn/assets/feature-next/t9n/messages.lt.json +1 -0
  36. package/dist/cdn/assets/feature-next/t9n/messages.lv.json +1 -0
  37. package/dist/cdn/assets/feature-next/t9n/messages.nl.json +1 -0
  38. package/dist/cdn/assets/feature-next/t9n/messages.no.json +1 -0
  39. package/dist/cdn/assets/feature-next/t9n/messages.pl.json +1 -0
  40. package/dist/cdn/assets/feature-next/t9n/messages.pt-BR.json +1 -0
  41. package/dist/cdn/assets/feature-next/t9n/messages.pt-PT.json +1 -0
  42. package/dist/cdn/assets/feature-next/t9n/messages.ro.json +1 -0
  43. package/dist/cdn/assets/feature-next/t9n/messages.ru.json +1 -0
  44. package/dist/cdn/assets/feature-next/t9n/messages.sk.json +1 -0
  45. package/dist/cdn/assets/feature-next/t9n/messages.sl.json +1 -0
  46. package/dist/cdn/assets/feature-next/t9n/messages.sr.json +1 -0
  47. package/dist/cdn/assets/feature-next/t9n/messages.sv.json +1 -0
  48. package/dist/cdn/assets/feature-next/t9n/messages.th.json +1 -0
  49. package/dist/cdn/assets/feature-next/t9n/messages.tr.json +1 -0
  50. package/dist/cdn/assets/feature-next/t9n/messages.uk.json +1 -0
  51. package/dist/cdn/assets/feature-next/t9n/messages.vi.json +1 -0
  52. package/dist/cdn/assets/feature-next/t9n/messages.zh-CN.json +1 -0
  53. package/dist/cdn/assets/feature-next/t9n/messages.zh-HK.json +1 -0
  54. package/dist/cdn/assets/feature-next/t9n/messages.zh-TW.json +1 -0
  55. package/dist/cdn/assets/features/t9n/messages.ar.json +1 -1
  56. package/dist/cdn/assets/features/t9n/messages.bg.json +1 -1
  57. package/dist/cdn/assets/features/t9n/messages.bs.json +1 -1
  58. package/dist/cdn/assets/features/t9n/messages.ca.json +1 -1
  59. package/dist/cdn/assets/features/t9n/messages.cs.json +1 -1
  60. package/dist/cdn/assets/features/t9n/messages.da.json +1 -1
  61. package/dist/cdn/assets/features/t9n/messages.de.json +1 -1
  62. package/dist/cdn/assets/features/t9n/messages.el.json +1 -1
  63. package/dist/cdn/assets/features/t9n/messages.en.json +1 -1
  64. package/dist/cdn/assets/features/t9n/messages.es.json +1 -1
  65. package/dist/cdn/assets/features/t9n/messages.et.json +1 -1
  66. package/dist/cdn/assets/features/t9n/messages.fi.json +1 -1
  67. package/dist/cdn/assets/features/t9n/messages.fr.json +1 -1
  68. package/dist/cdn/assets/features/t9n/messages.he.json +1 -1
  69. package/dist/cdn/assets/features/t9n/messages.hr.json +1 -1
  70. package/dist/cdn/assets/features/t9n/messages.hu.json +1 -1
  71. package/dist/cdn/assets/features/t9n/messages.id.json +1 -1
  72. package/dist/cdn/assets/features/t9n/messages.it.json +1 -1
  73. package/dist/cdn/assets/features/t9n/messages.ja.json +1 -1
  74. package/dist/cdn/assets/features/t9n/messages.ko.json +1 -1
  75. package/dist/cdn/assets/features/t9n/messages.lt.json +1 -1
  76. package/dist/cdn/assets/features/t9n/messages.lv.json +1 -1
  77. package/dist/cdn/assets/features/t9n/messages.nl.json +1 -1
  78. package/dist/cdn/assets/features/t9n/messages.no.json +1 -1
  79. package/dist/cdn/assets/features/t9n/messages.pl.json +1 -1
  80. package/dist/cdn/assets/features/t9n/messages.pt-BR.json +1 -1
  81. package/dist/cdn/assets/features/t9n/messages.pt-PT.json +1 -1
  82. package/dist/cdn/assets/features/t9n/messages.ro.json +1 -1
  83. package/dist/cdn/assets/features/t9n/messages.ru.json +1 -1
  84. package/dist/cdn/assets/features/t9n/messages.sk.json +1 -1
  85. package/dist/cdn/assets/features/t9n/messages.sl.json +1 -1
  86. package/dist/cdn/assets/features/t9n/messages.sr.json +1 -1
  87. package/dist/cdn/assets/features/t9n/messages.sv.json +1 -1
  88. package/dist/cdn/assets/features/t9n/messages.th.json +1 -1
  89. package/dist/cdn/assets/features/t9n/messages.tr.json +1 -1
  90. package/dist/cdn/assets/features/t9n/messages.uk.json +1 -1
  91. package/dist/cdn/assets/features/t9n/messages.vi.json +1 -1
  92. package/dist/cdn/assets/features/t9n/messages.zh-CN.json +1 -1
  93. package/dist/cdn/assets/features/t9n/messages.zh-HK.json +1 -1
  94. package/dist/cdn/assets/features/t9n/messages.zh-TW.json +1 -1
  95. package/dist/cdn/assets/features-next/t9n/messages.ar.json +1 -0
  96. package/dist/cdn/assets/features-next/t9n/messages.bg.json +1 -0
  97. package/dist/cdn/assets/features-next/t9n/messages.bs.json +1 -0
  98. package/dist/cdn/assets/features-next/t9n/messages.ca.json +1 -0
  99. package/dist/cdn/assets/features-next/t9n/messages.cs.json +1 -0
  100. package/dist/cdn/assets/features-next/t9n/messages.da.json +1 -0
  101. package/dist/cdn/assets/features-next/t9n/messages.de.json +1 -0
  102. package/dist/cdn/assets/features-next/t9n/messages.el.json +1 -0
  103. package/dist/cdn/assets/features-next/t9n/messages.en.json +1 -0
  104. package/dist/cdn/assets/features-next/t9n/messages.es.json +1 -0
  105. package/dist/cdn/assets/features-next/t9n/messages.et.json +1 -0
  106. package/dist/cdn/assets/features-next/t9n/messages.fi.json +1 -0
  107. package/dist/cdn/assets/features-next/t9n/messages.fr.json +1 -0
  108. package/dist/cdn/assets/features-next/t9n/messages.he.json +1 -0
  109. package/dist/cdn/assets/features-next/t9n/messages.hr.json +1 -0
  110. package/dist/cdn/assets/features-next/t9n/messages.hu.json +1 -0
  111. package/dist/cdn/assets/features-next/t9n/messages.id.json +1 -0
  112. package/dist/cdn/assets/features-next/t9n/messages.it.json +1 -0
  113. package/dist/cdn/assets/features-next/t9n/messages.ja.json +1 -0
  114. package/dist/cdn/assets/features-next/t9n/messages.ko.json +1 -0
  115. package/dist/cdn/assets/features-next/t9n/messages.lt.json +1 -0
  116. package/dist/cdn/assets/features-next/t9n/messages.lv.json +1 -0
  117. package/dist/cdn/assets/features-next/t9n/messages.nl.json +1 -0
  118. package/dist/cdn/assets/features-next/t9n/messages.no.json +1 -0
  119. package/dist/cdn/assets/features-next/t9n/messages.pl.json +1 -0
  120. package/dist/cdn/assets/features-next/t9n/messages.pt-BR.json +1 -0
  121. package/dist/cdn/assets/features-next/t9n/messages.pt-PT.json +1 -0
  122. package/dist/cdn/assets/features-next/t9n/messages.ro.json +1 -0
  123. package/dist/cdn/assets/features-next/t9n/messages.ru.json +1 -0
  124. package/dist/cdn/assets/features-next/t9n/messages.sk.json +1 -0
  125. package/dist/cdn/assets/features-next/t9n/messages.sl.json +1 -0
  126. package/dist/cdn/assets/features-next/t9n/messages.sr.json +1 -0
  127. package/dist/cdn/assets/features-next/t9n/messages.sv.json +1 -0
  128. package/dist/cdn/assets/features-next/t9n/messages.th.json +1 -0
  129. package/dist/cdn/assets/features-next/t9n/messages.tr.json +1 -0
  130. package/dist/cdn/assets/features-next/t9n/messages.uk.json +1 -0
  131. package/dist/cdn/assets/features-next/t9n/messages.vi.json +1 -0
  132. package/dist/cdn/assets/features-next/t9n/messages.zh-CN.json +1 -0
  133. package/dist/cdn/assets/features-next/t9n/messages.zh-HK.json +1 -0
  134. package/dist/cdn/assets/features-next/t9n/messages.zh-TW.json +1 -0
  135. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.ar.json +1 -1
  136. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.bg.json +1 -1
  137. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.bs.json +1 -1
  138. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.ca.json +1 -1
  139. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.cs.json +1 -1
  140. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.da.json +1 -1
  141. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.de.json +1 -1
  142. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.el.json +1 -1
  143. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.es.json +1 -1
  144. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.et.json +1 -1
  145. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.fi.json +1 -1
  146. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.fr.json +1 -1
  147. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.he.json +1 -1
  148. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.hr.json +1 -1
  149. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.hu.json +1 -1
  150. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.id.json +1 -1
  151. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.it.json +1 -1
  152. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.ja.json +1 -1
  153. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.ko.json +1 -1
  154. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.lt.json +1 -1
  155. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.lv.json +1 -1
  156. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.nl.json +1 -1
  157. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.no.json +1 -1
  158. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.pl.json +1 -1
  159. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.pt-BR.json +1 -1
  160. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.pt-PT.json +1 -1
  161. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.ro.json +1 -1
  162. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.ru.json +1 -1
  163. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.sk.json +1 -1
  164. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.sl.json +1 -1
  165. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.sr.json +1 -1
  166. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.sv.json +1 -1
  167. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.th.json +1 -1
  168. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.tr.json +1 -1
  169. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.uk.json +1 -1
  170. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.vi.json +1 -1
  171. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.zh-CN.json +1 -1
  172. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.zh-HK.json +1 -1
  173. package/dist/cdn/assets/utility-network-trace-analysis/t9n/messages.zh-TW.json +1 -1
  174. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.ar.json +1 -1
  175. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.bg.json +1 -1
  176. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.bs.json +1 -1
  177. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.ca.json +1 -1
  178. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.cs.json +1 -1
  179. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.da.json +1 -1
  180. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.de.json +1 -1
  181. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.el.json +1 -1
  182. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.es.json +1 -1
  183. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.et.json +1 -1
  184. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.fi.json +1 -1
  185. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.fr.json +1 -1
  186. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.he.json +1 -1
  187. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.hr.json +1 -1
  188. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.hu.json +1 -1
  189. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.id.json +1 -1
  190. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.it.json +1 -1
  191. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.ja.json +1 -1
  192. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.ko.json +1 -1
  193. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.lt.json +1 -1
  194. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.lv.json +1 -1
  195. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.nl.json +1 -1
  196. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.no.json +1 -1
  197. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.pl.json +1 -1
  198. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.pt-BR.json +1 -1
  199. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.pt-PT.json +1 -1
  200. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.ro.json +1 -1
  201. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.ru.json +1 -1
  202. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.sk.json +1 -1
  203. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.sl.json +1 -1
  204. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.sr.json +1 -1
  205. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.sv.json +1 -1
  206. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.th.json +1 -1
  207. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.tr.json +1 -1
  208. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.uk.json +1 -1
  209. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.vi.json +1 -1
  210. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.zh-CN.json +1 -1
  211. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.zh-HK.json +1 -1
  212. package/dist/cdn/assets/utility-network-trace-inputs/t9n/messages.zh-TW.json +1 -1
  213. package/dist/cdn/index.js +1 -1
  214. package/dist/cdn/main.css +1 -1
  215. package/dist/chunks/action-utils.js +37 -23
  216. package/dist/components/arcgis-aggregated-features/customElement.js +1 -1
  217. package/dist/components/arcgis-aggregated-features/index.js +1 -1
  218. package/dist/components/arcgis-bookmarks/customElement.d.ts +1 -1
  219. package/dist/components/arcgis-feature/customElement.d.ts +4 -4
  220. package/dist/components/arcgis-feature/customElement.js +69 -111
  221. package/dist/components/arcgis-feature-next/customElement.d.ts +444 -0
  222. package/dist/components/arcgis-feature-next/customElement.js +279 -0
  223. package/dist/components/arcgis-feature-next/index.d.ts +1 -0
  224. package/dist/components/arcgis-feature-next/index.js +13 -0
  225. package/dist/components/arcgis-feature-relationship/customElement.js +76 -73
  226. package/dist/components/arcgis-feature-relationship/index.js +1 -0
  227. package/dist/components/arcgis-feature-utility-network-association-list/customElement.js +18 -15
  228. package/dist/components/arcgis-feature-utility-network-association-list/index.js +1 -0
  229. package/dist/components/arcgis-feature-utility-network-associations/customElement.js +63 -53
  230. package/dist/components/arcgis-features/customElement.d.ts +28 -52
  231. package/dist/components/arcgis-features/customElement.js +181 -184
  232. package/dist/components/arcgis-features/index.js +0 -1
  233. package/dist/components/arcgis-features-next/customElement.d.ts +678 -0
  234. package/dist/components/arcgis-features-next/customElement.js +400 -0
  235. package/dist/components/arcgis-features-next/index.d.ts +1 -0
  236. package/dist/components/arcgis-features-next/index.js +15 -0
  237. package/dist/components/arcgis-popup/customElement.d.ts +2 -2
  238. package/dist/components/arcgis-popup/customElement.js +1 -1
  239. package/dist/components/arcgis-popup/index.js +1 -1
  240. package/dist/components/arcgis-search/customElement.d.ts +1 -1
  241. package/dist/components/arcgis-utility-network-trace-analysis/customElement.js +32 -33
  242. package/dist/components/arcgis-utility-network-trace-inputs/customElement.d.ts +5 -0
  243. package/dist/components/arcgis-utility-network-trace-inputs/customElement.js +47 -47
  244. package/dist/docs/api.json +1 -1
  245. package/dist/docs/docs.json +1 -1
  246. package/dist/docs/vscode.html-custom-data.json +1 -1
  247. package/dist/docs/web-types.json +1 -1
  248. package/dist/index.d.ts +20 -0
  249. package/dist/loader.js +7 -5
  250. package/dist/types/lumina.d.ts +17 -1
  251. package/dist/types/preact.d.ts +19 -1
  252. package/dist/types/react.d.ts +21 -1
  253. package/dist/types/stencil.d.ts +17 -1
  254. package/package.json +4 -4
  255. package/dist/cdn/37PU5RQF.js +0 -2
  256. package/dist/cdn/6U7WM64M.js +0 -2
  257. package/dist/cdn/AHWGHYPQ.js +0 -2
  258. package/dist/cdn/FNHPWOUX.js +0 -2
  259. package/dist/cdn/HVKDLP74.js +0 -2
  260. package/dist/cdn/LTUURA6B.js +0 -2
  261. package/dist/cdn/SKRNQKVO.js +0 -2
  262. package/dist/cdn/W2QDJLIF.js +0 -2
  263. package/dist/cdn/XIN3BIAA.js +0 -2
@@ -0,0 +1,400 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
+ import { c as B } from "../../chunks/runtime.js";
3
+ import { css as R, html as o } from "lit";
4
+ import { keyed as A } from "lit/directives/keyed.js";
5
+ import O from "@arcgis/core/support/actions/ActionButton.js";
6
+ import E from "@arcgis/core/core/Collection.js";
7
+ import H from "@arcgis/core/popup/Features.js";
8
+ import { LitElement as P, createEvent as I, renderElement as z, nothing as p, safeClassMap as x } from "@arcgis/lumina";
9
+ import { usePropertyChange as Z, bypassReadOnly as k } from "@arcgis/lumina/controllers";
10
+ import { slotChangeHasContent as D, classes as y } from "@arcgis/toolkit/dom";
11
+ import { createRef as _, ref as v } from "lit/directives/ref.js";
12
+ import { g as S } from "../../chunks/feature-utils.js";
13
+ import { initializeProjection as V } from "@arcgis/core/applications/Components/featureUtils.js";
14
+ import { t as U, z as j } from "../../chunks/action-utils.js";
15
+ import { m as G } from "../../chunks/useViewModel.js";
16
+ import { renderingSanitizer as M } from "@arcgis/core/applications/Components/sanitizerUtils.js";
17
+ import { stripHTML as T } from "@arcgis/core/applications/Components/stringUtils.js";
18
+ import { substitute as g, formatNumber as C } from "@arcgis/core/intl.js";
19
+ import { u as K } from "../../chunks/useT9n.js";
20
+ import { watch as d } from "@arcgis/core/core/reactiveUtils.js";
21
+ import { a as L } from "../../chunks/maybe.js";
22
+ const q = R`:host{display:flex;overflow:hidden;flex:1 1 auto}.root{--calcite-color-background: var(--calcite-color-foreground-1);display:flex;overflow:hidden;flex:1 1 auto;flex-direction:column}.root img{image-orientation:from-image}.flow-item-collapsed{--calcite-flow-item-header-border-block-end: none}.container{display:flex;flex:1 1 auto;background-color:var(--calcite-color-foreground-1)}.container calcite-list{width:100%}.container:not(:empty,.content-hidden){padding:var(--arcgis-internal-padding-md, var(--calcite-spacing-md))}.root .arcgis-feature,.root .arcgis-feature-relationship,.root .arcgis-feature-utility-network-associations{background-color:transparent}.heading{word-break:break-word;word-wrap:break-word}.header,.footer{display:flex;align-items:center;justify-content:flex-end;background-color:var(--calcite-color-foreground-1)}.footer{flex:1}.pagination-text{padding-inline:var(--calcite-spacing-sm);color:var(--calcite-color-text-3);font-size:var(--calcite-font-size-sm)}.loader{align-self:center;padding-inline:var(--calcite-spacing-lg)}.pagination-action-bar{flex:1}.pagination-menu-button{padding-inline:var(--calcite-spacing-xxs);border-inline-start:var(--calcite-border-width-sm) solid var(--calcite-color-border-3)}.icon{display:inline-block;flex:0 0 var(--calcite-spacing-lg);width:var(--calcite-spacing-lg);height:var(--calcite-spacing-lg)}.action-image{flex:0 0 var(--calcite-spacing-lg);background-position:50% 50%;background-repeat:no-repeat;background-size:contain;width:var(--calcite-spacing-lg);height:var(--calcite-spacing-lg)}.header{border-block-end:var(--calcite-border-width-sm) solid var(--calcite-color-border-3)}.content-feature{--calcite-flow-item-footer-padding: 0}.feature-menu-observer{position:relative;bottom:var(--calcite-spacing-xxl);z-index:2;text-align:center}.action-exit{transform:scaleX(-1)}.flow-item-drill-in{--calcite-flow-item-footer-padding: 0}`;
23
+ function W(m) {
24
+ return m?.declaredClass.startsWith("esri.layers.") ?? !1;
25
+ }
26
+ function X(m) {
27
+ if (!(!m || !("featureReduction" in m)))
28
+ return m.featureReduction?.type;
29
+ }
30
+ const J = G(H);
31
+ class Q extends P {
32
+ constructor() {
33
+ super(...arguments), this._zoomToFeature = new O({
34
+ icon: "magnifying-glass-plus",
35
+ id: "zoom-to-feature",
36
+ title: "{messages.zoom}"
37
+ }), this._fetchFeaturesController = null, this._featureMenuIntersectionObserverCallback = ([e]) => {
38
+ e?.isIntersecting && this.viewModel.featurePage != null && this.viewModel.featurePage++;
39
+ }, this._featureMenuIntersectionObserver = new IntersectionObserver(this._featureMenuIntersectionObserverCallback, {
40
+ root: window.document
41
+ }), this._featureMenuIntersectionObserverNode = null, this._rootFlowItemNode = _(), this._featureMenuViewportNode = _(), this._actionBarMenuNode = _(), this._flowContainerNode = _(), this._aggregatedFeaturesComponent = _(), this.messages = K(), this._selectedFeatureComponent = _(), this._cancelOpenRelatedFeature = () => {
42
+ this._openRelatedFeatureAbortController = L(this._openRelatedFeatureAbortController);
43
+ }, this._openRelatedFeatureAbortController = null, this.flowItems = new E(), this._aggregatedFeatureCount = 0, this._selectedAggregatedFeatureIndex = -1, this._aggregatedFeaturesLoading = !1, this._hasActionsStartSlotContent = !1, this._hasActionsEndSlotContent = !1, this.viewModel = J(this), this.actions = this.viewModel.actions, this.active = this.viewModel.active, this.autoDestroyDisabled = !1, this.collapsed = !1, this.content = this.viewModel.content, this.defaultPopupTemplateEnabled = this.viewModel.defaultPopupTemplateEnabled, this.effectiveHeading = this.viewModel.effectiveHeading, this.featureCount = this.viewModel.featureCount, this.featureMenuOpen = !1, this.featureNavigationTop = !1, this.features = this.viewModel.features, this.featuresPerPage = this.viewModel.featuresPerPage, this.featureItemAbilities = this.viewModel.featureItemAbilities, this.goToOverride = this.viewModel.goToOverride, this.headerActions = new E(), this.heading = this.viewModel.heading, this.headingLevel = 2, this.hideActionBar = !1, this.hideCloseButton = !1, this.hideFeatureMenuHeading = !1, this.hideFeatureNavigation = !1, this.hideFeatureListLayerTitle = !1, this.hideHeading = !1, this.hideSelectFeature = !1, this.hideSpinner = !1, this.hideContent = !1, this.chartAnimationDisabled = this.viewModel.featureItemAbilities?.chartAnimation, this.hideAttachmentsContent = this.viewModel.featureItemAbilities?.attachmentsContent, this.hideCustomContent = this.viewModel.featureItemAbilities?.customContent, this.hideExpressionContent = !1, this.hideFieldsContent = this.viewModel.featureItemAbilities?.fieldsContent, this.hideMediaContent = this.viewModel.featureItemAbilities?.mediaContent, this.hideRelationshipContent = this.viewModel.featureItemAbilities?.relationshipContent, this.hideTextContent = this.viewModel.featureItemAbilities?.textContent, this.hideUtilityNetworkContent = this.viewModel.featureItemAbilities?.utilityNetworkAssociationsContent, this.hideLastEditedInfo = !1, this.highlightDisabled = this.viewModel.highlightEnabled, this.includeDefaultActionsDisabled = this.viewModel.includeDefaultActions, this.initialDisplayMode = this.viewModel.initialDisplayMode, this.location = this.viewModel.location, this.map = this.viewModel.map, this.open = this.viewModel.open, this.promises = this.viewModel.promises, this.responsiveActionsEnabled = !1, this.selectedFeature = this.viewModel.selectedFeature, this.selectedFeatureIndex = this.viewModel.selectedFeatureIndex, this.showCollapseButton = !1, this.spatialReference = this.viewModel.spatialReference, this.state = this.viewModel.state, this.timeZone = this.viewModel.timeZone, this.updateLocationEnabled = this.viewModel.updateLocationEnabled, this.view = this.viewModel.view, this.arcgisPropertyChange = Z()("active", "collapsed", "effectiveHeading", "featureCount", "featureMenuOpen", "features", "promises", "selectedDrillInFeature", "selectedFeature", "selectedFeatureComponent", "selectedFeatureIndex", "state", "open"), this.arcgisReady = I(), this.arcgisClose = I(), this.arcgisTriggerAction = I();
44
+ }
45
+ static {
46
+ this.properties = { _openRelatedFeatureAbortController: 16, flowItems: 16, _aggregatedFeatureCount: 16, _selectedAggregatedFeatureIndex: 16, _aggregatedFeaturesLoading: 16, _hasActionsStartSlotContent: 16, _hasActionsEndSlotContent: 16, _hideActionText: 16, _featureNavigationVisible: 16, _isCollapsed: 16, _collapseEnabled: 16, _featureFlowItemSelected: 16, viewModel: 0, actions: 0, active: 0, autoDestroyDisabled: 5, collapsed: 5, content: 1, defaultPopupTemplateEnabled: 5, effectiveHeading: 32, featureCount: 9, featureMenuOpen: 5, featureMenuTitle: 1, featureNavigationTop: 5, features: 0, featuresPerPage: 9, featureItemAbilities: 0, goToOverride: 0, headerActions: 0, heading: 1, headingLevel: 9, hideActionBar: 5, hideCloseButton: 5, hideFeatureMenuHeading: 5, hideFeatureNavigation: 5, hideFeatureListLayerTitle: 5, hideHeading: 5, hideSelectFeature: 5, hideSpinner: 5, hideContent: 5, chartAnimationDisabled: 5, hideAttachmentsContent: 5, hideCustomContent: 5, hideExpressionContent: 5, hideFieldsContent: 5, hideMediaContent: 5, hideRelationshipContent: 5, hideTextContent: 5, hideUtilityNetworkContent: 5, hideLastEditedInfo: 5, highlightDisabled: 5, icon: 1, includeDefaultActionsDisabled: 5, initialDisplayMode: 1, label: 1, location: 0, map: 0, messageOverrides: 0, open: 5, referenceElement: 1, promises: 0, responsiveActionsEnabled: 5, selectedDrillInFeature: 32, selectedFeature: 0, selectedFeatureComponent: 32, selectedFeatureIndex: 9, showCollapseButton: 5, spatialReference: 0, state: 32, timeZone: 1, updateLocationEnabled: 5, view: 0 };
47
+ }
48
+ static {
49
+ this.styles = q;
50
+ }
51
+ get _hideActionText() {
52
+ if (!this.responsiveActionsEnabled)
53
+ return !1;
54
+ const e = this.viewModel.view?.widthBreakpoint;
55
+ return e === "xsmall" || e === "small" || e === "medium";
56
+ }
57
+ get _featureNavigationVisible() {
58
+ return this.viewModel.active && this.viewModel.featureCount > 1 && !!this.viewModel.selectedFeature && !this.hideFeatureNavigation;
59
+ }
60
+ get _isCollapsed() {
61
+ return this._collapseEnabled && this.collapsed;
62
+ }
63
+ get _collapseEnabled() {
64
+ return this.showCollapseButton && (this.initialDisplayMode === "list" || !!(this.heading || this.viewModel.selectedFeatureItem?.heading) && !!(this.content || this.viewModel.selectedFeatureItem?.content));
65
+ }
66
+ get _featureFlowItemSelected() {
67
+ return this.initialDisplayMode === "list" ? !!this.selectedFeature : !this.featureMenuOpen;
68
+ }
69
+ clear() {
70
+ this.viewModel.clear();
71
+ }
72
+ close() {
73
+ this.open = !1;
74
+ }
75
+ async destroy() {
76
+ await this.manager.destroy(), await this._destroySpinner(this.referenceElement), this._cancelOpenRelatedFeature(), this._removeFlowItems(), this._unobserveFeatureMenuObserver(), this._cancelFetchingFeatures(), this._featureMenuIntersectionObserver?.disconnect();
77
+ }
78
+ async fetchFeatures(e, t) {
79
+ this._cancelFetchingFeatures();
80
+ const { signal: a } = t ?? {}, i = new AbortController(), { signal: s } = i, n = a ? AbortSignal.any([s, a]) : s;
81
+ if (this._fetchFeaturesController = i, !e && this.view && this.location && (await V(this.location.spatialReference, this.view.spatialReference, null, {
82
+ signal: n
83
+ }), e = this.view.toScreen(this.location) ?? void 0), !e)
84
+ return;
85
+ const r = await this.viewModel.fetchFeatures(e, {
86
+ ...t,
87
+ signal: n
88
+ });
89
+ this.location = r.location, this.promises = r.pendingFeatures;
90
+ }
91
+ next() {
92
+ this.viewModel.next();
93
+ }
94
+ previous() {
95
+ this.viewModel.previous();
96
+ }
97
+ async setFocus() {
98
+ await this._flowContainerNode.value?.setFocus();
99
+ }
100
+ async triggerAction(e) {
101
+ if (!e.disabled)
102
+ return e?.type === "toggle" && (e.value = !e.value), await U(e, this.viewModel);
103
+ }
104
+ loaded() {
105
+ this.manager.onLifecycle(() => [
106
+ d(() => this.viewModel?.selectedFeatureIndex, (e, t) => this._selectedFeatureIndexUpdated(e, t)),
107
+ d(() => this.viewModel?.view?.scale, () => this._viewScaleChange()),
108
+ d(() => this.viewModel?.view, (e, t) => t && this._viewChange()),
109
+ d(() => this._spinnerEl?.screenLocation, () => this._closeOpenActionMenu()),
110
+ d(() => this.selectedFeatureComponent?.viewModel, () => this._removeFlowItems()),
111
+ d(() => this.viewModel?.featureItems, () => this._featureMenuViewportScrollTop()),
112
+ d(() => this.flowItems.length, () => this._syncSelectedDrillInFeature()),
113
+ d(() => [this.flowItems?.length, this.featureMenuOpen], () => {
114
+ this.setFocus();
115
+ }),
116
+ d(() => this.viewModel.aggregatedFeaturesEnabled, (e) => {
117
+ e || (this._aggregatedFeatureCount = 0, this._selectedAggregatedFeatureIndex = -1, this._aggregatedFeaturesLoading = !1, this._removeFlowItems());
118
+ }),
119
+ d(() => this.referenceElement, (e, t) => {
120
+ this._destroySpinner(t), this._createSpinner();
121
+ }, { initial: !0 }),
122
+ d(() => [this.hideSpinner, this.viewModel?.view, this.viewModel?.location, this.viewModel?.waitingForResult], () => {
123
+ this._createSpinner();
124
+ }, { initial: !0 })
125
+ ]);
126
+ }
127
+ updated() {
128
+ const e = this._selectedFeatureComponent.value ?? void 0;
129
+ this.selectedFeatureComponent !== e && k(() => this.selectedFeatureComponent = e);
130
+ }
131
+ _cancelFetchingFeatures() {
132
+ this._fetchFeaturesController = L(this._fetchFeaturesController);
133
+ }
134
+ _handleClose() {
135
+ this.close(), this.arcgisClose.emit();
136
+ }
137
+ _groupResultsByLayer() {
138
+ const { featureItems: e } = this.viewModel, t = /* @__PURE__ */ new Map();
139
+ return e.forEach((a) => {
140
+ const i = a?.graphic;
141
+ if (!i)
142
+ return;
143
+ const s = S(i), n = W(s) ? s : null;
144
+ let r = t.get(n);
145
+ r || (r = [], t.set(n, r)), r.push(a);
146
+ }), t;
147
+ }
148
+ _handleCollapseToggle() {
149
+ this.collapsed = !this.collapsed;
150
+ }
151
+ async _openRelatedFeature(e) {
152
+ this._cancelOpenRelatedFeature();
153
+ const t = new AbortController();
154
+ if (this._openRelatedFeatureAbortController = t, await e.updateGeometry(), t.signal.aborted)
155
+ return;
156
+ const a = e.graphic, i = a?.geometry;
157
+ if (i == null || a == null) {
158
+ this._openRelatedFeatureAbortController = null;
159
+ return;
160
+ }
161
+ if (this._removeFlowItems(), await this.viewModel.zoomTo({ target: i }), t.signal.aborted)
162
+ return;
163
+ const s = await import("@arcgis/core/geometry/operators/labelPointOperator.js");
164
+ if (t.signal.aborted)
165
+ return;
166
+ const n = s.execute(i);
167
+ n != null && (this.location = n), this.features = [a], this.open = !0, await this.setFocus(), this._openRelatedFeatureAbortController = null;
168
+ }
169
+ _handlePaginationMenuButton() {
170
+ this._updateFeatureMenu();
171
+ }
172
+ _openFeatureMenu() {
173
+ this._updateFeatureMenu(!0);
174
+ }
175
+ _closeFeatureMenu() {
176
+ this._updateFeatureMenu(!1);
177
+ }
178
+ _updateFeatureMenu(e = !this.featureMenuOpen) {
179
+ this.featureMenuOpen = e;
180
+ }
181
+ _previousFeature() {
182
+ this.viewModel.previous();
183
+ }
184
+ _nextFeature() {
185
+ this.viewModel.next();
186
+ }
187
+ _handleFeatureBack() {
188
+ this.initialDisplayMode === "list" ? (this.selectedFeatureIndex = -1, this.setFocus()) : this._openFeatureMenu();
189
+ }
190
+ _handleFeatureMenuBack() {
191
+ this.initialDisplayMode === "list" ? (this.selectedFeatureIndex = -1, this.setFocus()) : this.featureMenuOpen && this._closeFeatureMenu();
192
+ }
193
+ _setActiveFeature(e) {
194
+ const { viewModel: t } = this;
195
+ t.activeFeature = t.features?.[e] || null;
196
+ }
197
+ _removeActiveFeature() {
198
+ this.viewModel.activeFeature = null;
199
+ }
200
+ _selectFeature(e) {
201
+ this.viewModel.selectedFeatureIndex = e, this.initialDisplayMode === "feature" ? this._handleFeatureMenuBack() : this.setFocus();
202
+ }
203
+ _unobserveFeatureMenuObserver() {
204
+ this._featureMenuIntersectionObserverNode && this._featureMenuIntersectionObserver.unobserve(this._featureMenuIntersectionObserverNode);
205
+ }
206
+ _featureMenuIntersectionObserverCreated(e) {
207
+ this._unobserveFeatureMenuObserver(), e && this._featureMenuIntersectionObserver.observe(e), this._featureMenuIntersectionObserverNode = e;
208
+ }
209
+ _getActionTitle(e) {
210
+ const { messages: t, selectedFeature: a } = this, { id: i } = e, s = a?.attributes, n = e.title ?? "", r = i === "zoom-to-feature" ? g(n, { messages: t }) : i === "remove-selected-feature" ? g(n, { messages: t }) : i === "zoom-to-clustered-features" ? g(n, { messages: t }) : i === "browse-aggregated-features" ? g(n, { messages: t }) : e.title;
211
+ return r && s ? g(r, s) : r ?? "";
212
+ }
213
+ _onMainKeydown(e) {
214
+ const { key: t } = e;
215
+ t === "ArrowLeft" && (e.stopPropagation(), this._handleFeatureMenuBack(), this.previous(), this.setFocus()), t === "ArrowRight" && (e.stopPropagation(), this._handleFeatureMenuBack(), this.next(), this.setFocus());
216
+ }
217
+ _featureMenuViewportScrollTop() {
218
+ this._featureMenuViewportNode.value?.scrollContentTo({ top: 0 });
219
+ }
220
+ _selectedFeatureIndexUpdated(e, t) {
221
+ const { featureCount: a, waitingForResult: i } = this.viewModel;
222
+ i || !a || e === t || e === -1 || (this._aggregatedFeatureCount = 0, this._selectedAggregatedFeatureIndex = -1, this._removeFlowItems(), this._rootFlowItemNode.value?.scrollContentTo({ top: 0 }));
223
+ }
224
+ _triggerAction(e) {
225
+ this.triggerAction(e), this.arcgisTriggerAction.emit({ action: e });
226
+ }
227
+ _viewScaleChange() {
228
+ const { selectedFeature: e } = this;
229
+ !e?.isAggregate || X(S(e)) !== "cluster" || (this.viewModel.aggregatedFeaturesEnabled = !1, this.open = !1, this.clear());
230
+ }
231
+ _viewChange() {
232
+ this.viewModel.clear(), this.open = !1, this._aggregatedFeatureCount = 0, this._removeFlowItems();
233
+ }
234
+ _handleAggregatedFeaturesPropertyChange({ detail: e, target: t }) {
235
+ e.name === "aggregatedFeatureCount" && (this._aggregatedFeatureCount = t.aggregatedFeatureCount), e.name === "selectedAggregatedFeatureIndex" && (this._selectedAggregatedFeatureIndex = t.selectedAggregatedFeatureIndex, this._syncSelectedDrillInFeature()), e.name === "loading" && (this._aggregatedFeaturesLoading = t.loading);
236
+ }
237
+ _closeOpenActionMenu() {
238
+ const { _actionBarMenuNode: e } = this;
239
+ e.value && (e.value.menuOpen = !1);
240
+ }
241
+ _syncSelectedDrillInFeature() {
242
+ const e = this.flowItems.getItemAt(this.flowItems.length - 1);
243
+ k(() => this.selectedDrillInFeature = e?.graphic ?? void 0);
244
+ }
245
+ _removeFlowItems() {
246
+ this.viewModel.aggregatedFeaturesEnabled = !1, this.flowItems?.destroyAll();
247
+ }
248
+ _getDrillInFlowItemDescription(e) {
249
+ switch (e.flowType) {
250
+ case "feature":
251
+ case "feature-association":
252
+ case "feature-utility-network-associations":
253
+ case "feature-utility-network-association-type":
254
+ return e.description;
255
+ case "feature-relationship":
256
+ return e.allItemsDescription;
257
+ }
258
+ }
259
+ _handleDrillInBackClick() {
260
+ this.flowItems?.pop()?.destroy();
261
+ }
262
+ _getHeading() {
263
+ const { effectiveHeading: e } = this.viewModel;
264
+ return !this.hideHeading && e ? e : "";
265
+ }
266
+ _handleActionsStartSlotChange(e) {
267
+ this._hasActionsStartSlotContent = D(e);
268
+ }
269
+ _handleActionsEndSlotChange(e) {
270
+ this._hasActionsEndSlotContent = D(e);
271
+ }
272
+ async _destroySpinner(e) {
273
+ e?.manager?.component?.extraContent?.remove(this._spinnerEl);
274
+ }
275
+ async _createSpinner() {
276
+ const e = this.referenceElement;
277
+ e && (await this._destroySpinner(e), this._spinnerEl = z(o`<arcgis-spinner auto-destroy-disabled .label=${this.messages.loading ?? ""} .trackLocation=${!this.hideSpinner && this.viewModel?.waitingForResult} .location=${this.viewModel?.location ?? void 0} .view=${this.viewModel?.view ?? void 0}></arcgis-spinner>`), e.manager?.component?.extraContent?.add(this._spinnerEl));
278
+ }
279
+ render() {
280
+ return o`<div class="root" @keydown=${this._onMainKeydown}>${this._renderHeader()}${this._renderContentContainer()}</div>`;
281
+ }
282
+ _renderFeatureNavigation() {
283
+ return [
284
+ this._renderPagination(() => this._previousFeature(), () => this._nextFeature()),
285
+ this.initialDisplayMode === "list" ? this._renderFeaturePaginationText(this.viewModel.featureCount, this.viewModel.selectedFeatureIndex) : this._renderFeatureMenuButton()
286
+ ];
287
+ }
288
+ _renderHeader() {
289
+ return this.featureNavigationTop && this._featureNavigationVisible ? o`<div class="header">${this._renderFeatureNavigation()}</div>` : null;
290
+ }
291
+ _renderFooter() {
292
+ return !this.featureNavigationTop && this._featureNavigationVisible ? o`<div class="footer" slot=footer>${this._renderFeatureNavigation()}</div>` : null;
293
+ }
294
+ _renderFeaturePaginationText(e, t) {
295
+ const { messages: a } = this;
296
+ return o`<div class="pagination-text">${g(a.pageText ?? "", {
297
+ index: C(t + 1),
298
+ total: C(e)
299
+ })}</div>`;
300
+ }
301
+ _renderFeatureMenuButton() {
302
+ const { messages: e, viewModel: t } = this, { featureCount: a, selectedFeatureIndex: i, pendingPromisesCount: s } = t;
303
+ return o`<calcite-action class="pagination-menu-button" icon=list .label=${e.selectFeature} .loading=${s > 0} @click=${this._handlePaginationMenuButton} .text=${g(e.pageText ?? "", {
304
+ index: C(i + 1),
305
+ total: C(a)
306
+ })} text-enabled title=${e.selectFeature ?? p}></calcite-action>`;
307
+ }
308
+ _renderPagination(e, t) {
309
+ const { previous: a, next: i } = this.messages;
310
+ return o`<calcite-action-bar class="pagination-action-bar" expand-disabled layout=horizontal overflow-actions-disabled scale=s><calcite-action-group scale=s><calcite-action class="pagination-previous" icon=chevron-left icon-flip-rtl .label=${a ?? ""} @click=${e} .text=${a ?? ""} title=${a ?? "" ?? p}></calcite-action><calcite-action icon=chevron-right icon-flip-rtl .label=${i ?? ""} @click=${t} .text=${i ?? ""} title=${i ?? "" ?? p}></calcite-action></calcite-action-group></calcite-action-bar>`;
311
+ }
312
+ _renderFeatureMenuItem(e, t) {
313
+ const { initialDisplayMode: a } = this, { selectedFeatureItem: i } = this.viewModel, s = e === i;
314
+ return o`<calcite-list-item @blur=${this._removeActiveFeature} @focus=${() => this._setActiveFeature(t)} @mouseleave=${this._removeActiveFeature} @mouseover=${() => this._setActiveFeature(t)} .selected=${s} @calciteListItemSelect=${() => this._selectFeature(t)}><span .innerHTML=${(M.sanitize(e.heading) || this.messages.untitled) ?? ""} slot=content></span>${a === "list" ? o`<calcite-icon flip-rtl icon=chevron-right scale=s slot=content-end></calcite-icon>` : null}</calcite-list-item>`;
315
+ }
316
+ _renderFeatureMenu() {
317
+ const { messages: e, viewModel: t } = this, a = this._groupResultsByLayer(), i = /* @__PURE__ */ new Map();
318
+ t.featureItems.forEach((n, r) => i.set(n, r));
319
+ const s = this.initialDisplayMode === "list" ? "none" : "single";
320
+ return t.featureItems.length ? o`<calcite-list display-mode=flat .label=${e?.featuresList ?? ""} selection-appearance=icon .selectionMode=${s}>${Array.from(a.keys(), (n) => {
321
+ const r = a.get(n)?.map((l) => {
322
+ const h = i.get(l);
323
+ return h == null ? null : this._renderFeatureMenuItem(l, h);
324
+ }), c = n ? n.title ?? this.messages.untitled : null;
325
+ return !this.hideFeatureListLayerTitle && c !== null ? A(n ?? "map-graphics", o`<calcite-list-item-group .heading=${c}>${r}</calcite-list-item-group>`) : r;
326
+ })}</calcite-list>` : null;
327
+ }
328
+ _renderHeaderAction(e) {
329
+ const t = e.title || "";
330
+ return e.visible ? o`<calcite-action .active=${e.type === "toggle" ? e.value : !1} .disabled=${e.disabled} .icon=${e.icon ?? void 0} .indicator=${e.active} .loading=${e.active} @click=${() => this._triggerAction(e)} slot=header-actions-end .text=${t} title=${t ?? p}></calcite-action>` : null;
331
+ }
332
+ _renderHeaderActions() {
333
+ return this.headerActions.map((e) => this._renderHeaderAction(e)).toArray();
334
+ }
335
+ _renderContentFeature(e) {
336
+ const { headingLevel: t, hideCloseButton: a, _isCollapsed: i, _collapseEnabled: s, featureNavigationTop: n, initialDisplayMode: r, selectedFeature: c, hideHeading: l } = this, { active: h, selectedFeatureItem: f, content: F } = this.viewModel, u = this._getHeading();
337
+ if (r === "list" && !c)
338
+ return null;
339
+ const w = f ? !f.content : !F;
340
+ return o`<calcite-flow-item class=${x(y({
341
+ "content-feature": !0,
342
+ "flow-item-collapsed": i
343
+ }))} .closable=${!a} .closed=${!h} .collapsed=${i} .collapseDirection=${n ? "down" : "up"} .collapsible=${s} .headingLevel=${t} .selected=${e} .messageOverrides=${{ collapse: this.messages.collapse, expand: this.messages.expand }} @calciteFlowItemBack=${this._handleFeatureBack} .loading=${!!this._openRelatedFeatureAbortController} @calciteFlowItemClose=${this._handleClose} @calciteFlowItemToggle=${this._handleCollapseToggle} .heading=${!l && u ? T(u) : void 0} ${v(this._rootFlowItemNode)}>${!l && u ? o`<div slot=heading><div .innerHTML=${M.sanitize(u ?? "") ?? ""}></div></div>` : null}${this._renderHeaderActions()}${this._renderActionBar()}<div class=${x(y("container", "content-container", {
344
+ "content-hidden": w
345
+ }))}>${this._renderContent()}</div>${this._renderFooter()}</calcite-flow-item>`;
346
+ }
347
+ _renderFeatureMenuContainer() {
348
+ const { viewModel: e, hideCloseButton: t, featureMenuTitle: a, messages: i, initialDisplayMode: s, featureMenuOpen: n, _featureFlowItemSelected: r, _collapseEnabled: c, _isCollapsed: l, featureNavigationTop: h, headingLevel: f } = this, { active: F, featureItems: u, pendingPromisesCount: w } = e, $ = a ?? i.selectFeature;
349
+ if (s === "feature" && !n)
350
+ return null;
351
+ const b = !r;
352
+ return o`<calcite-flow-item class=${x(y({
353
+ "flow-item-collapsed": l
354
+ }))} .closable=${s === "list" && !t} .closed=${!F} .collapsed=${s === "list" && l} .collapseDirection=${h ? "down" : "up"} .collapsible=${s === "list" && c} .messageOverrides=${{ collapse: this.messages.collapse, expand: this.messages.expand }} .description=${this.hideFeatureMenuHeading ? void 0 : g(i.total ?? "", {
355
+ total: u.length
356
+ })} .heading=${this.hideFeatureMenuHeading ? void 0 : $} .headingLevel=${f} .loading=${e.waitingForContents} .selected=${b} @calciteFlowItemBack=${(N) => {
357
+ N.preventDefault(), this._handleFeatureMenuBack();
358
+ }} @calciteFlowItemClose=${this._handleClose} @calciteFlowItemToggle=${this._handleCollapseToggle} ${v(this._featureMenuViewportNode)}>${s === "list" ? this._renderHeaderActions() : null}${w > 0 ? o`<calcite-loader class="loader" inline .label=${i.loading ?? ""} slot=header-actions-end></calcite-loader>` : null}<div class="container">${b ? this._renderFeatureMenu() : null}</div><div class="feature-menu-observer" ${v(this._featureMenuIntersectionObserverCreated)}></div>${s === "feature" ? o`<calcite-button scale=s appearance=transparent @click=${this._handleFeatureMenuBack} slot=footer-start width=full>${i.back}</calcite-button>` : null}</calcite-flow-item>`;
359
+ }
360
+ _renderFlowItem(e, t) {
361
+ const { messages: a, hideCloseButton: i, hideSelectFeature: s, active: n, hideHeading: r } = this, c = "graphic" in e && "isFeatureFromTable" in e && !e.isFeatureFromTable, l = c && !s, h = e.flowType === "feature-association", f = a.returnToInitialFeature ?? "", F = a?.selectFeature, u = this._getActionTitle(this._zoomToFeature), w = !this.hideActionBar && h && c, $ = e.flowType === "feature" && this.viewModel.aggregatedFeaturesEnabled ? o`<div class="footer" slot=footer>${this._renderPagination(() => {
362
+ this._aggregatedFeaturesComponent.value?.previous();
363
+ }, () => {
364
+ this._aggregatedFeaturesComponent.value?.next();
365
+ })}${this._renderFeaturePaginationText(this._aggregatedFeatureCount, this._selectedAggregatedFeatureIndex)}</div>` : null;
366
+ return o`<calcite-flow-item .closable=${!i} .closed=${!n} class="flow-item-drill-in" .description=${T(this._getDrillInFlowItemDescription(e) ?? "")} .heading=${r ? void 0 : T(e.heading ?? "")} .selected=${t} @calciteFlowItemBack=${(b) => {
367
+ b.preventDefault(), this._handleDrillInBackClick();
368
+ }} .loading=${!!this._openRelatedFeatureAbortController} @calciteFlowItemClose=${this._handleClose}>${r ? null : o`<div slot=heading><div .innerHTML=${M.sanitize(e.heading ?? "") ?? ""}></div></div>`}<div slot=description><div .innerHTML=${M.sanitize(this._getDrillInFlowItemDescription(e) ?? "") ?? ""}></div></div><calcite-action class="action-exit" icon=move-up @click=${this._removeFlowItems} slot=header-actions-start .text=${f ?? ""} title=${f ?? "" ?? p}></calcite-action>${l ? o`<calcite-action icon=zoom-to-object @click=${() => this._openRelatedFeature(e)} slot=header-actions-end .text=${F ?? ""} title=${F ?? p}></calcite-action>` : null}${w ? o`<calcite-action-bar expand-disabled expanded scale=s slot=action-bar><calcite-action-group overlay-positioning=fixed scale=s><calcite-action .disabled=${this._zoomToFeature.disabled} .icon=${this._zoomToFeature.icon ?? void 0} .loading=${this._zoomToFeature.active} scale=s text-enabled .text=${u} title=${u ?? p} @click=${() => j(this.viewModel, this._zoomToFeature, e)}></calcite-action></calcite-action-group></calcite-action-bar>` : null}<div class="container">${e}</div>${$}</calcite-flow-item>`;
369
+ }
370
+ _renderContentContainer() {
371
+ const e = this.flowItems?.toArray(), t = e.length > 0, a = this.viewModel.aggregatedFeaturesEnabled && this.viewModel.selectedFeature?.isAggregate && !t, i = a && e.length === 0, s = e.length === 0 && this._featureFlowItemSelected && !a, n = e?.map((l, h) => this._renderFlowItem(l, this._featureFlowItemSelected && h === e.length - 1)), r = this._renderBrowseAggregateContainer(!!i), c = this.initialDisplayMode === "list" ? [this._renderFeatureMenuContainer(), this._renderContentFeature(s)] : [this._renderContentFeature(s), this._renderFeatureMenuContainer()];
372
+ return o`<calcite-flow ${v(this._flowContainerNode)}>${c}${r}${n}</calcite-flow>`;
373
+ }
374
+ _renderBrowseAggregateContainer(e) {
375
+ const { hideCloseButton: t, active: a, messages: i } = this, { selectedFeature: s } = this.viewModel;
376
+ return this.viewModel.aggregatedFeaturesEnabled && s?.isAggregate ? o`<calcite-flow-item .selected=${e} .closable=${!t} .closed=${!a} .description=${this._aggregatedFeatureCount ? g(i.total ?? "", {
377
+ total: this._aggregatedFeatureCount
378
+ }) : ""} .heading=${i.aggregatedFeatures} @calciteFlowItemBack=${(r) => {
379
+ r.preventDefault(), this.viewModel.aggregatedFeaturesEnabled = !1;
380
+ }} .loading=${this._aggregatedFeaturesLoading} @calciteFlowItemClose=${this._handleClose}><arcgis-aggregated-features .autoDestroyDisabled=${this.autoDestroyDisabled} .feature=${s ?? void 0} .flowItems=${this.flowItems} .map=${this.map ?? void 0} .messages=${i} @arcgisPropertyChange=${this._handleAggregatedFeaturesPropertyChange} .spatialReference=${this.spatialReference ?? void 0} .timeZone=${this.timeZone ?? void 0} .view=${this.view ?? void 0} ${v(this._aggregatedFeaturesComponent)}></arcgis-aggregated-features><calcite-button appearance=transparent @click=${() => this.viewModel.aggregatedFeaturesEnabled = !1} slot=footer-start scale=s width=full>${i.back}</calcite-button></calcite-flow-item>` : null;
381
+ }
382
+ _renderActionBar() {
383
+ const e = this.viewModel.selectedFeatureItem?.isFeatureFromTable, t = this.viewModel.allActions.toArray(), a = e && !this.location ? t.filter((s) => s.id !== this._zoomToFeature.id) : t, i = !!a.length || this._hasActionsStartSlotContent || this._hasActionsEndSlotContent;
384
+ return !this._isCollapsed && !this.hideActionBar && i ? o`<calcite-action-bar expand-disabled .expanded=${!this._hideActionText} scale=s slot=action-bar><slot name=actions-start @slotchange=${this._handleActionsStartSlotChange}></slot><calcite-action-group overlay-positioning=fixed scale=s ${v(this._actionBarMenuNode)}>${this._renderActions(a)}</calcite-action-group><slot name=actions-end @slotchange=${this._handleActionsEndSlotChange}></slot></calcite-action-bar>` : null;
385
+ }
386
+ _renderActions(e) {
387
+ return e.map((t) => {
388
+ const a = this._getActionTitle(t);
389
+ return o`<calcite-action .active=${t.type === "toggle" ? t.value : !1} .disabled=${t.disabled} .icon=${t.icon ?? void 0} .loading=${t.active} scale=s .textEnabled=${!this._hideActionText} .text=${a ?? ""} title=${a ?? p} .hidden=${!t.visible} @click=${() => this._triggerAction(t)}></calcite-action>`;
390
+ });
391
+ }
392
+ _renderContent() {
393
+ const { content: e, selectedFeatureItem: t } = this.viewModel;
394
+ return t ? A(t, o`<arcgis-feature-next .autoDestroyDisabled=${this.autoDestroyDisabled} .chartAnimationDisabled=${this.chartAnimationDisabled} .defaultPopupTemplateEnabled=${this.defaultPopupTemplateEnabled} .flowItems=${this.flowItems} .graphic=${t.graphic} .headingLevel=${this.headingLevel + 1} .hideAttachmentsContent=${this.hideAttachmentsContent} .hideContent=${this.hideContent} .hideCustomContent=${this.hideCustomContent} .hideExpressionContent=${this.hideExpressionContent} .hideFieldsContent=${this.hideFieldsContent} hide-heading .hideLastEditedInfo=${this.hideLastEditedInfo} .hideMediaContent=${this.hideMediaContent} .hideTextContent=${this.hideTextContent} .location=${this.location} .map=${this.map} .referenceElement=${this.referenceElement} .showRelationshipContent=${!this.hideRelationshipContent} .showUtilityNetworkContent=${!this.hideUtilityNetworkContent} .spatialReference=${this.spatialReference} .timeZone=${this.timeZone} ${v(this._selectedFeatureComponent)}></arcgis-feature-next>`) : typeof e == "string" ? A(e, o`<div .innerHTML=${M.sanitize(e) ?? ""}></div>`) : e ?? null;
395
+ }
396
+ }
397
+ B("arcgis-features-next", Q);
398
+ export {
399
+ Q as ArcgisFeaturesNext
400
+ };
@@ -0,0 +1 @@
1
+ export * from "./customElement.js";
@@ -0,0 +1,15 @@
1
+ import "../arcgis-spinner/index.js";
2
+ import "@esri/calcite-components/components/calcite-action";
3
+ import "@esri/calcite-components/components/calcite-action-bar";
4
+ import "@esri/calcite-components/components/calcite-action-group";
5
+ import "@esri/calcite-components/components/calcite-list-item";
6
+ import "@esri/calcite-components/components/calcite-icon";
7
+ import "@esri/calcite-components/components/calcite-list";
8
+ import "@esri/calcite-components/components/calcite-list-item-group";
9
+ import "@esri/calcite-components/components/calcite-flow-item";
10
+ import "@esri/calcite-components/components/calcite-loader";
11
+ import "@esri/calcite-components/components/calcite-button";
12
+ import "@esri/calcite-components/components/calcite-flow";
13
+ import "../arcgis-aggregated-features/index.js";
14
+ import "../arcgis-feature-next/index.js";
15
+ export * from "./customElement.js";
@@ -8,10 +8,10 @@ import type Point from "@arcgis/core/geometry/Point.js";
8
8
  import type { ArcgisReferenceElement, HeadingLevel } from "../types.js";
9
9
  import type { Alignment, DockOptions, PopupPositionResult, FetchFeaturesOptions } from "./types.js";
10
10
  import type { PublicLitElement as LitElement } from "@arcgis/lumina";
11
- import type { ArcgisFeature } from "../arcgis-feature/customElement.js";
12
11
  import type { ActionEvent, PopupOpenOptions } from "@arcgis/core/widgets/Popup/types.js";
13
12
  import type { ScreenPoint } from "@arcgis/core/core/types.js";
14
13
  import type { ClickEvent } from "@arcgis/core/views/input/types.js";
14
+ import type { ArcgisFeatureNext } from "../arcgis-feature-next/customElement.js";
15
15
  import type { T9nMeta } from "@arcgis/lumina/controllers";
16
16
  import type { PopupAction, InitialDisplayOptions, State } from "@arcgis/core/popup/types.js";
17
17
  import type { GoToOverride } from "@arcgis/core/widgets/support/types.js";
@@ -530,7 +530,7 @@ export abstract class ArcgisPopup extends LitElement {
530
530
  * Returns a reference to the current [arcgis-feature](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-feature/) that the Popup is using.
531
531
  * This is useful if needing to get a reference to the component in order to make any changes to it.
532
532
  */
533
- get selectedFeatureComponent(): ArcgisFeature | null;
533
+ get selectedFeatureComponent(): ArcgisFeatureNext | null;
534
534
  /**
535
535
  * Index of the feature that is [selectedFeature](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-popup/#selectedFeature). When [features](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-popup/#features) are set,
536
536
  * the first index is automatically selected.
@@ -344,7 +344,7 @@ class W extends S {
344
344
  const t = {
345
345
  shadow: this.dockEnabled
346
346
  };
347
- return g`<div class=${y(x("main-container", t))} ${f(this._mainContainerNode)}>${P(this.viewModel, g`<arcgis-features .collapsed=${this.collapsed} .autoDestroyDisabled=${this.autoDestroyDisabled} .featureNavigationTop=${this._featureNavigationTop} .headingLevel=${this.headingLevel} .hidden=${!this.active} .hideActionBar=${this.hideActionBar} .hideCloseButton=${this.hideCloseButton} .hideFeatureListLayerTitle=${this.hideFeatureListLayerTitle} .hideFeatureMenuHeading=${this.hideFeatureMenuHeading} .hideFeatureNavigation=${this.hideFeatureNavigation} .hideHeading=${this.hideHeading} .hideSpinner=${this.hideSpinner} @arcgisPropertyChange=${this._handleArcgisPropertyChange} @arcgisTriggerAction=${this._handleArcgisTriggerAction} @arcgisClose=${this._handleClose} .messageOverrides=${{ collapse: this.messages.collapse, expand: this.messages.expand }} .referenceElement=${this.referenceElement} .responsiveActionsEnabled=${!0} .showCollapseButton=${!this.hideCollapseButton} .viewModel=${this.viewModel} ${f(this._featuresComponent)}><slot name=actions-start slot=actions-start></slot><slot name=actions-end slot=actions-end></slot></arcgis-features>`)}</div>`;
347
+ return g`<div class=${y(x("main-container", t))} ${f(this._mainContainerNode)}>${P(this.viewModel, g`<arcgis-features-next .collapsed=${this.collapsed} .autoDestroyDisabled=${this.autoDestroyDisabled} .featureNavigationTop=${this._featureNavigationTop} .headingLevel=${this.headingLevel} .hidden=${!this.active} .hideActionBar=${this.hideActionBar} .hideCloseButton=${this.hideCloseButton} .hideFeatureListLayerTitle=${this.hideFeatureListLayerTitle} .hideFeatureMenuHeading=${this.hideFeatureMenuHeading} .hideFeatureNavigation=${this.hideFeatureNavigation} .hideHeading=${this.hideHeading} .hideSpinner=${this.hideSpinner} @arcgisPropertyChange=${this._handleArcgisPropertyChange} @arcgisTriggerAction=${this._handleArcgisTriggerAction} @arcgisClose=${this._handleClose} .messageOverrides=${{ collapse: this.messages.collapse, expand: this.messages.expand }} .referenceElement=${this.referenceElement} .responsiveActionsEnabled=${!0} .showCollapseButton=${!this.hideCollapseButton} .viewModel=${this.viewModel} ${f(this._featuresComponent)}><slot name=actions-start slot=actions-start></slot><slot name=actions-end slot=actions-end></slot></arcgis-features-next>`)}</div>`;
348
348
  }
349
349
  }
350
350
  A("arcgis-popup", W);
@@ -1,2 +1,2 @@
1
- import "../arcgis-features/index.js";
1
+ import "../arcgis-features-next/index.js";
2
2
  export * from "./customElement.js";
@@ -31,7 +31,7 @@ import type { GoToOverride } from "@arcgis/core/widgets/support/types.js";
31
31
  * specified point (the center of the view) by passing in the `location parameter`. Features closest to the input location show up higher in the list of results.
32
32
  * This behavior can be changed by using the localSearchDisabled property.
33
33
  *
34
- * Starting with version `5.1`, on [@arcgisSelectResult](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-search/#event-arcgisSelectResult) the selected search result is announced to assistive technologies. Visit the [Accessibility guide](xref://site.self/accessibility/#assistive-technologies) to learn more
34
+ * Starting with version `5.1`, on [@arcgisSelectResult](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-search/#event-arcgisSelectResult) the selected search result is announced to assistive technologies. Visit the [Accessibility guide](https://developers.arcgis.com/javascript/latest/accessibility/#assistive-technologies) to learn more
35
35
  * about live announcements supporting more audiences.
36
36
  *
37
37
  * @since 4.28