@arcgis/core 4.28.0-rc.1 → 4.28.0-rc.2

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 (688) hide show
  1. package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
  2. package/arcade/featureset/sources/FeatureLayerMemory.js +1 -1
  3. package/arcade/featureset/sources/FeatureLayerRelated.js +1 -1
  4. package/arcade/featureset/support/FeatureSet.js +1 -1
  5. package/arcade/functions/featuresetbase.js +1 -1
  6. package/arcade/treeAnalysis.js +1 -1
  7. package/assets/esri/core/workers/RemoteClient.js +1 -1
  8. package/assets/esri/core/workers/chunks/00da3c16741a9bc47f3a.js +1 -0
  9. package/assets/esri/core/workers/chunks/020825b9c12f2b6386a7.js +1 -0
  10. package/assets/esri/core/workers/chunks/07adca463da5554e514d.js +1 -0
  11. package/assets/esri/core/workers/chunks/07c1783baf9b19b4876a.js +1 -0
  12. package/assets/esri/core/workers/chunks/08a98e85e86ce560d005.js +1 -0
  13. package/assets/esri/core/workers/chunks/0e354096ad8817971eed.js +1 -0
  14. package/assets/esri/core/workers/chunks/0e4646d14fa0775bf463.js +1 -0
  15. package/assets/esri/core/workers/chunks/0ea41f142793edb99d3a.js +1 -0
  16. package/assets/esri/core/workers/chunks/10dc578a90e1194c8720.js +1 -0
  17. package/assets/esri/core/workers/chunks/18e0c5bfeb1aa7213dfa.js +1 -0
  18. package/assets/esri/core/workers/chunks/19c9966f74d287750aaa.js +1 -0
  19. package/assets/esri/core/workers/chunks/1a65d9b9f823d1e8b315.js +1 -0
  20. package/assets/esri/core/workers/chunks/1eb5468c7cf653338d53.js +1 -0
  21. package/assets/esri/core/workers/chunks/1f30ea1a598ddd2e5df3.js +1 -0
  22. package/assets/esri/core/workers/chunks/{40c00b352618c7839f7e.js → 1f87f22e00e3218661c6.js} +1 -1
  23. package/assets/esri/core/workers/chunks/1fc3b526e881ada30420.js +1 -0
  24. package/assets/esri/core/workers/chunks/2304b7456ced997904f6.js +1 -0
  25. package/assets/esri/core/workers/chunks/2d92df1e3ba4f05e0510.js +1 -0
  26. package/assets/esri/core/workers/chunks/32bd6a343ea49c331e1f.js +1 -0
  27. package/assets/esri/core/workers/chunks/3491f1945d9c06d8b2c7.js +1 -0
  28. package/assets/esri/core/workers/chunks/366cf9bba6989342e447.js +1 -0
  29. package/assets/esri/core/workers/chunks/37edbd9b05bfdb2e645d.js +1 -0
  30. package/assets/esri/core/workers/chunks/3c5a112a9b58770a5242.js +1 -0
  31. package/assets/esri/core/workers/chunks/41778f8c49febe1f9404.js +1 -0
  32. package/assets/esri/core/workers/chunks/430ec9f5949b31959893.js +1 -0
  33. package/assets/esri/core/workers/chunks/43575b9acf9819f195f9.js +1 -0
  34. package/assets/esri/core/workers/chunks/43f7d9366d06d69e7c50.js +1 -0
  35. package/assets/esri/core/workers/chunks/{b98a2191cb997d632438.js → 4672504d6fe649da19f2.js} +1 -1
  36. package/assets/esri/core/workers/chunks/4e813f112a428b4acf0e.js +1 -0
  37. package/assets/esri/core/workers/chunks/{ca023e409bb7de9a69ab.js → 51b8913dff24e693bd25.js} +1 -1
  38. package/assets/esri/core/workers/chunks/5386b166f2e5dc0d9143.js +1 -0
  39. package/assets/esri/core/workers/chunks/562eafa5090827ebb7ec.js +1 -0
  40. package/assets/esri/core/workers/chunks/56a61a8bff08ae273de4.js +1 -0
  41. package/assets/esri/core/workers/chunks/580e7d3cbf6797a50ded.js +1 -0
  42. package/assets/esri/core/workers/chunks/5e8f02da4eae41f57383.js +1 -0
  43. package/assets/esri/core/workers/chunks/6046be598e8c673eeb1f.js +1 -0
  44. package/assets/esri/core/workers/chunks/61dec8399919b278b636.js +1 -0
  45. package/assets/esri/core/workers/chunks/6334a8a7b671d4042108.js +1 -0
  46. package/assets/esri/core/workers/chunks/6747503826bfc94bc6c0.js +1 -0
  47. package/assets/esri/core/workers/chunks/6867ed1860afb7aac536.js +1 -0
  48. package/assets/esri/core/workers/chunks/69c1c850af7ee33258e0.js +1 -0
  49. package/assets/esri/core/workers/chunks/70aa04b09143b7dd2ecb.js +1 -0
  50. package/assets/esri/core/workers/chunks/7388fd97e7b1a2142744.js +1 -0
  51. package/assets/esri/core/workers/chunks/7648f3341b7dff2825c3.js +1 -0
  52. package/assets/esri/core/workers/chunks/768271a12dc7e1781447.js +1 -0
  53. package/assets/esri/core/workers/chunks/{efb17a298363beca5209.js → 7756ed853b4ba54cd081.js} +1 -1
  54. package/assets/esri/core/workers/chunks/7f3bc7a2de59e485f22f.js +1 -0
  55. package/assets/esri/core/workers/chunks/7f433e25f3892475d5dc.js +1 -0
  56. package/assets/esri/core/workers/chunks/80bf6cf1bef17215bca4.js +1 -0
  57. package/assets/esri/core/workers/chunks/83d063b7ce768e9ab3de.js +1 -0
  58. package/assets/esri/core/workers/chunks/83f7e22a12d90ef93e62.js +1 -0
  59. package/assets/esri/core/workers/chunks/{4cc680fe4c9c39d2f853.js → 8a7fa4e8b0d14da7c9eb.js} +1 -1
  60. package/assets/esri/core/workers/chunks/92d8f75e616afa5c761e.js +1 -0
  61. package/assets/esri/core/workers/chunks/99fd09dd42b75a932e84.js +1 -0
  62. package/assets/esri/core/workers/chunks/{f0664a24f2c3705747a5.js → 9c77d69a13ec22cdd760.js} +1 -1
  63. package/assets/esri/core/workers/chunks/a360534e89a337871921.js +1 -0
  64. package/assets/esri/core/workers/chunks/a4341ec0fe89b865d849.js +1 -0
  65. package/assets/esri/core/workers/chunks/a821fa1870b83fed5d31.js +1 -0
  66. package/assets/esri/core/workers/chunks/a8e4726c1db23324eb54.js +1 -0
  67. package/assets/esri/core/workers/chunks/abcfe3bda6f40318b092.js +1 -0
  68. package/assets/esri/core/workers/chunks/ac3e429d43f80c596ec8.js +1 -0
  69. package/assets/esri/core/workers/chunks/ac53b5479dd229fa4f7d.js +1 -0
  70. package/assets/esri/core/workers/chunks/aeb3efa91165dd3d2493.js.LICENSE.txt +1 -1
  71. package/assets/esri/core/workers/chunks/b03eaba5fa75d6ef834a.js +1 -0
  72. package/assets/esri/core/workers/chunks/b251d8a856dc8b9406e0.js +1 -0
  73. package/assets/esri/core/workers/chunks/b3f5e97b47e896c6008a.js +1 -0
  74. package/assets/esri/core/workers/chunks/b6cc8d7dcc710231fe72.js +1 -0
  75. package/assets/esri/core/workers/chunks/b7c81a5bbcdd94b8a7f6.js +1 -0
  76. package/assets/esri/core/workers/chunks/b9a726f3bbad6fd4d65a.js +1 -0
  77. package/assets/esri/core/workers/chunks/c416df0668f6c596095f.js +1 -0
  78. package/assets/esri/core/workers/chunks/c447f4bf0e5f012f8f9b.js +1 -0
  79. package/assets/esri/core/workers/chunks/c7bd63103f101c09b1ea.js +1 -0
  80. package/assets/esri/core/workers/chunks/ca3d5803cdf035d7389d.js +1 -0
  81. package/assets/esri/core/workers/chunks/cb4b17f5cf96a9e36781.js +1 -0
  82. package/assets/esri/core/workers/chunks/cbddfcf57f72428a6992.js +1 -0
  83. package/assets/esri/core/workers/chunks/cc86c8c88124d916e1b3.js +1 -0
  84. package/assets/esri/core/workers/chunks/d0119dff8771e749436a.js +1 -0
  85. package/assets/esri/core/workers/chunks/d07235ce2765a25b9be4.js +1 -0
  86. package/assets/esri/core/workers/chunks/d0f903f2257eb96f7789.js +1 -0
  87. package/assets/esri/core/workers/chunks/d153a8b71111165fc891.js +1 -0
  88. package/assets/esri/core/workers/chunks/d213024012b1a019bfde.js +1 -0
  89. package/assets/esri/core/workers/chunks/d5fec54e98c8622349a4.js +1 -0
  90. package/assets/esri/core/workers/chunks/d878bb6409df183ea0ce.js +1 -0
  91. package/assets/esri/core/workers/chunks/da124ccd18d2745195fe.js +1 -0
  92. package/assets/esri/core/workers/chunks/dd55151bfac60b0deaac.js +1 -0
  93. package/assets/esri/core/workers/chunks/e06cd10b6f8f363b5131.js +1 -0
  94. package/assets/esri/core/workers/chunks/e5352dc8983d06d4ee0f.js +1 -0
  95. package/assets/esri/core/workers/chunks/e67c4b7ad06d8404895a.js +1 -0
  96. package/assets/esri/core/workers/chunks/e810336a4292ea6076a6.js +1 -0
  97. package/assets/esri/core/workers/chunks/{4c3345ffbe79ee0167fb.js → ea9ae9d2aef01af90896.js} +1 -1
  98. package/assets/esri/core/workers/chunks/ef757269fb3fe0e74ef8.js +1 -0
  99. package/assets/esri/core/workers/chunks/f0d342303fc20e266d27.js +1 -0
  100. package/assets/esri/core/workers/chunks/f73563b23fd8dc6cf2fe.js +1 -0
  101. package/assets/esri/core/workers/chunks/f85107720159b855a469.js +1 -0
  102. package/assets/esri/core/workers/chunks/fbc57985d55b5fbe1e8a.js +1 -0
  103. package/assets/esri/core/workers/chunks/fc95b1a36ed68b851400.js +1 -0
  104. package/assets/esri/core/workers/chunks/{7cf7f2b991a7cbdad2ce.js → fd28400141a6751327ae.js} +1 -1
  105. package/assets/esri/themes/base/_core.scss +2 -0
  106. package/assets/esri/themes/base/widgets/_DatePicker.scss +4 -0
  107. package/assets/esri/themes/base/widgets/_Features.scss +1 -1
  108. package/assets/esri/themes/base/widgets/_ScaleRangeSlider.scss +1 -1
  109. package/assets/esri/themes/base/widgets/_TimeZoneLabel.scss +46 -0
  110. package/assets/esri/themes/base/widgets/_Tooltip.scss +1 -1
  111. package/assets/esri/themes/base/widgets/_UtilityNetworkTrace.scss +4 -0
  112. package/assets/esri/themes/dark/main.css +1 -1
  113. package/assets/esri/themes/light/main.css +1 -1
  114. package/assets/esri/themes/light/view.css +1 -1
  115. package/assets/esri/widgets/Editor/t9n/Editor_ar.json +1 -1
  116. package/assets/esri/widgets/Editor/t9n/Editor_bg.json +1 -1
  117. package/assets/esri/widgets/Editor/t9n/Editor_bs.json +1 -1
  118. package/assets/esri/widgets/Editor/t9n/Editor_ca.json +1 -1
  119. package/assets/esri/widgets/Editor/t9n/Editor_cs.json +1 -1
  120. package/assets/esri/widgets/Editor/t9n/Editor_da.json +1 -1
  121. package/assets/esri/widgets/Editor/t9n/Editor_de.json +1 -1
  122. package/assets/esri/widgets/Editor/t9n/Editor_el.json +1 -1
  123. package/assets/esri/widgets/Editor/t9n/Editor_es.json +1 -1
  124. package/assets/esri/widgets/Editor/t9n/Editor_et.json +1 -1
  125. package/assets/esri/widgets/Editor/t9n/Editor_fi.json +1 -1
  126. package/assets/esri/widgets/Editor/t9n/Editor_fr.json +1 -1
  127. package/assets/esri/widgets/Editor/t9n/Editor_he.json +1 -1
  128. package/assets/esri/widgets/Editor/t9n/Editor_hr.json +1 -1
  129. package/assets/esri/widgets/Editor/t9n/Editor_hu.json +1 -1
  130. package/assets/esri/widgets/Editor/t9n/Editor_id.json +1 -1
  131. package/assets/esri/widgets/Editor/t9n/Editor_it.json +1 -1
  132. package/assets/esri/widgets/Editor/t9n/Editor_ja.json +1 -1
  133. package/assets/esri/widgets/Editor/t9n/Editor_ko.json +1 -1
  134. package/assets/esri/widgets/Editor/t9n/Editor_lt.json +1 -1
  135. package/assets/esri/widgets/Editor/t9n/Editor_lv.json +1 -1
  136. package/assets/esri/widgets/Editor/t9n/Editor_nb.json +1 -1
  137. package/assets/esri/widgets/Editor/t9n/Editor_nl.json +1 -1
  138. package/assets/esri/widgets/Editor/t9n/Editor_pl.json +1 -1
  139. package/assets/esri/widgets/Editor/t9n/Editor_pt-BR.json +1 -1
  140. package/assets/esri/widgets/Editor/t9n/Editor_pt-PT.json +1 -1
  141. package/assets/esri/widgets/Editor/t9n/Editor_ro.json +1 -1
  142. package/assets/esri/widgets/Editor/t9n/Editor_ru.json +1 -1
  143. package/assets/esri/widgets/Editor/t9n/Editor_sk.json +1 -1
  144. package/assets/esri/widgets/Editor/t9n/Editor_sl.json +1 -1
  145. package/assets/esri/widgets/Editor/t9n/Editor_sr.json +1 -1
  146. package/assets/esri/widgets/Editor/t9n/Editor_sv.json +1 -1
  147. package/assets/esri/widgets/Editor/t9n/Editor_th.json +1 -1
  148. package/assets/esri/widgets/Editor/t9n/Editor_tr.json +1 -1
  149. package/assets/esri/widgets/Editor/t9n/Editor_uk.json +1 -1
  150. package/assets/esri/widgets/Editor/t9n/Editor_vi.json +1 -1
  151. package/assets/esri/widgets/Editor/t9n/Editor_zh-CN.json +1 -1
  152. package/assets/esri/widgets/Editor/t9n/Editor_zh-HK.json +1 -1
  153. package/assets/esri/widgets/Editor/t9n/Editor_zh-TW.json +1 -1
  154. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ar.json +1 -1
  155. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_bg.json +1 -1
  156. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_bs.json +1 -1
  157. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ca.json +1 -1
  158. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_cs.json +1 -1
  159. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_da.json +1 -1
  160. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_de.json +1 -1
  161. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_el.json +1 -1
  162. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_es.json +1 -1
  163. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_et.json +1 -1
  164. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_fi.json +1 -1
  165. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_fr.json +1 -1
  166. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_he.json +1 -1
  167. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_hr.json +1 -1
  168. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_hu.json +1 -1
  169. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_id.json +1 -1
  170. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_it.json +1 -1
  171. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ja.json +1 -1
  172. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ko.json +1 -1
  173. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_lt.json +1 -1
  174. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_lv.json +1 -1
  175. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_nb.json +1 -1
  176. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_nl.json +1 -1
  177. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pl.json +1 -1
  178. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pt-BR.json +1 -1
  179. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pt-PT.json +1 -1
  180. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ro.json +1 -1
  181. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ru.json +1 -1
  182. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sk.json +1 -1
  183. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sl.json +1 -1
  184. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sr.json +1 -1
  185. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sv.json +1 -1
  186. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_th.json +1 -1
  187. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_tr.json +1 -1
  188. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_uk.json +1 -1
  189. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_vi.json +1 -1
  190. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-CN.json +1 -1
  191. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-HK.json +1 -1
  192. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-TW.json +1 -1
  193. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ar.json +1 -1
  194. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bg.json +1 -1
  195. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bs.json +1 -1
  196. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ca.json +1 -1
  197. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_cs.json +1 -1
  198. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_da.json +1 -1
  199. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_de.json +1 -1
  200. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_el.json +1 -1
  201. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_es.json +1 -1
  202. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_et.json +1 -1
  203. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fi.json +1 -1
  204. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fr.json +1 -1
  205. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_he.json +1 -1
  206. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hr.json +1 -1
  207. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hu.json +1 -1
  208. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_id.json +1 -1
  209. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_it.json +1 -1
  210. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ja.json +1 -1
  211. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ko.json +1 -1
  212. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lt.json +1 -1
  213. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lv.json +1 -1
  214. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nb.json +1 -1
  215. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nl.json +1 -1
  216. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pl.json +1 -1
  217. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-BR.json +1 -1
  218. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-PT.json +1 -1
  219. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ro.json +1 -1
  220. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ru.json +1 -1
  221. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sk.json +1 -1
  222. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sl.json +1 -1
  223. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sr.json +1 -1
  224. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sv.json +1 -1
  225. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_th.json +1 -1
  226. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_tr.json +1 -1
  227. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_uk.json +1 -1
  228. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_vi.json +1 -1
  229. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-CN.json +1 -1
  230. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-HK.json +1 -1
  231. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-TW.json +1 -1
  232. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ar.json +1 -1
  233. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_bg.json +1 -1
  234. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_bs.json +1 -1
  235. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ca.json +1 -1
  236. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_cs.json +1 -1
  237. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_da.json +1 -1
  238. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_de.json +1 -1
  239. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_el.json +1 -1
  240. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_es.json +1 -1
  241. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_et.json +1 -1
  242. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_fi.json +1 -1
  243. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_fr.json +1 -1
  244. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_he.json +1 -1
  245. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_hr.json +1 -1
  246. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_hu.json +1 -1
  247. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_id.json +1 -1
  248. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_it.json +1 -1
  249. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ja.json +1 -1
  250. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ko.json +1 -1
  251. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_lt.json +1 -1
  252. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_lv.json +1 -1
  253. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_nb.json +1 -1
  254. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_nl.json +1 -1
  255. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_pl.json +1 -1
  256. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_pt-BR.json +1 -1
  257. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_pt-PT.json +1 -1
  258. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ro.json +1 -1
  259. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ru.json +1 -1
  260. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sk.json +1 -1
  261. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sl.json +1 -1
  262. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sr.json +1 -1
  263. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sv.json +1 -1
  264. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_th.json +1 -1
  265. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_tr.json +1 -1
  266. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_uk.json +1 -1
  267. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_vi.json +1 -1
  268. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_zh-CN.json +1 -1
  269. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_zh-HK.json +1 -1
  270. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_zh-TW.json +1 -1
  271. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ar.json +1 -1
  272. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_bg.json +1 -1
  273. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_bs.json +1 -1
  274. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ca.json +1 -1
  275. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_cs.json +1 -1
  276. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_da.json +1 -1
  277. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_de.json +1 -1
  278. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_el.json +1 -1
  279. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_es.json +1 -1
  280. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_et.json +1 -1
  281. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_fi.json +1 -1
  282. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_fr.json +1 -1
  283. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_he.json +1 -1
  284. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_hr.json +1 -1
  285. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_hu.json +1 -1
  286. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_id.json +1 -1
  287. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_it.json +1 -1
  288. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ja.json +1 -1
  289. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ko.json +1 -1
  290. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_lt.json +1 -1
  291. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_lv.json +1 -1
  292. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_nb.json +1 -1
  293. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_nl.json +1 -1
  294. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_pl.json +1 -1
  295. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_pt-BR.json +1 -1
  296. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_pt-PT.json +1 -1
  297. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ro.json +1 -1
  298. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ru.json +1 -1
  299. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sk.json +1 -1
  300. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sl.json +1 -1
  301. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sr.json +1 -1
  302. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sv.json +1 -1
  303. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_th.json +1 -1
  304. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_tr.json +1 -1
  305. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_uk.json +1 -1
  306. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_vi.json +1 -1
  307. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_zh-CN.json +1 -1
  308. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_zh-HK.json +1 -1
  309. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_zh-TW.json +1 -1
  310. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ar.json +1 -1
  311. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_bg.json +1 -1
  312. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_bs.json +1 -1
  313. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ca.json +1 -1
  314. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_cs.json +1 -1
  315. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_da.json +1 -1
  316. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_de.json +1 -1
  317. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_el.json +1 -1
  318. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_es.json +1 -1
  319. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_et.json +1 -1
  320. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_fi.json +1 -1
  321. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_fr.json +1 -1
  322. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_he.json +1 -1
  323. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_hr.json +1 -1
  324. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_hu.json +1 -1
  325. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_id.json +1 -1
  326. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_it.json +1 -1
  327. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ja.json +1 -1
  328. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ko.json +1 -1
  329. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_lt.json +1 -1
  330. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_lv.json +1 -1
  331. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_nb.json +1 -1
  332. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_nl.json +1 -1
  333. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pl.json +1 -1
  334. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pt-BR.json +1 -1
  335. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pt-PT.json +1 -1
  336. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ro.json +1 -1
  337. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ru.json +1 -1
  338. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sk.json +1 -1
  339. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sl.json +1 -1
  340. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sr.json +1 -1
  341. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sv.json +1 -1
  342. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_th.json +1 -1
  343. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_tr.json +1 -1
  344. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_uk.json +1 -1
  345. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_vi.json +1 -1
  346. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-CN.json +1 -1
  347. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-HK.json +1 -1
  348. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-TW.json +1 -1
  349. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ar.json +1 -1
  350. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_bg.json +1 -1
  351. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_bs.json +1 -1
  352. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ca.json +1 -1
  353. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_cs.json +1 -1
  354. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_da.json +1 -1
  355. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_de.json +1 -1
  356. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_el.json +1 -1
  357. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_es.json +1 -1
  358. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_et.json +1 -1
  359. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fi.json +1 -1
  360. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fr.json +1 -1
  361. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_he.json +1 -1
  362. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_hr.json +1 -1
  363. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_hu.json +1 -1
  364. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_id.json +1 -1
  365. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_it.json +1 -1
  366. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ja.json +1 -1
  367. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ko.json +1 -1
  368. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lt.json +1 -1
  369. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lv.json +1 -1
  370. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_nb.json +1 -1
  371. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_nl.json +1 -1
  372. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pl.json +1 -1
  373. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pt-BR.json +1 -1
  374. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pt-PT.json +1 -1
  375. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ro.json +1 -1
  376. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ru.json +1 -1
  377. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sk.json +1 -1
  378. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sl.json +1 -1
  379. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sr.json +1 -1
  380. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sv.json +1 -1
  381. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_th.json +1 -1
  382. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_tr.json +1 -1
  383. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_uk.json +1 -1
  384. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_vi.json +1 -1
  385. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-CN.json +1 -1
  386. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-HK.json +1 -1
  387. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-TW.json +1 -1
  388. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ar.json +1 -1
  389. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_bg.json +1 -1
  390. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_bs.json +1 -1
  391. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ca.json +1 -1
  392. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_cs.json +1 -1
  393. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_da.json +1 -1
  394. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_de.json +1 -1
  395. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_el.json +1 -1
  396. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_es.json +1 -1
  397. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_et.json +1 -1
  398. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_fi.json +1 -1
  399. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_fr.json +1 -1
  400. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_he.json +1 -1
  401. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_hr.json +1 -1
  402. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_hu.json +1 -1
  403. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_id.json +1 -1
  404. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_it.json +1 -1
  405. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ja.json +1 -1
  406. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ko.json +1 -1
  407. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_lt.json +1 -1
  408. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_lv.json +1 -1
  409. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_nb.json +1 -1
  410. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_nl.json +1 -1
  411. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pl.json +1 -1
  412. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pt-BR.json +1 -1
  413. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pt-PT.json +1 -1
  414. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ro.json +1 -1
  415. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ru.json +1 -1
  416. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sk.json +1 -1
  417. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sl.json +1 -1
  418. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sr.json +1 -1
  419. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sv.json +1 -1
  420. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_th.json +1 -1
  421. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_tr.json +1 -1
  422. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_uk.json +1 -1
  423. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_vi.json +1 -1
  424. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-CN.json +1 -1
  425. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-HK.json +1 -1
  426. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-TW.json +1 -1
  427. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ar.json +1 -1
  428. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_bg.json +1 -1
  429. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_bs.json +1 -1
  430. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ca.json +1 -1
  431. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_cs.json +1 -1
  432. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_da.json +1 -1
  433. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_de.json +1 -1
  434. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_el.json +1 -1
  435. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_es.json +1 -1
  436. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_et.json +1 -1
  437. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_fi.json +1 -1
  438. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_fr.json +1 -1
  439. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_he.json +1 -1
  440. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_hr.json +1 -1
  441. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_hu.json +1 -1
  442. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_id.json +1 -1
  443. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_it.json +1 -1
  444. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ja.json +1 -1
  445. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ko.json +1 -1
  446. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_lt.json +1 -1
  447. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_lv.json +1 -1
  448. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_nb.json +1 -1
  449. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_nl.json +1 -1
  450. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_pl.json +1 -1
  451. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_pt-BR.json +1 -1
  452. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_pt-PT.json +1 -1
  453. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ro.json +1 -1
  454. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ru.json +1 -1
  455. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sk.json +1 -1
  456. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sl.json +1 -1
  457. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sr.json +1 -1
  458. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sv.json +1 -1
  459. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_th.json +1 -1
  460. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_tr.json +1 -1
  461. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_uk.json +1 -1
  462. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_vi.json +1 -1
  463. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_zh-CN.json +1 -1
  464. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_zh-HK.json +1 -1
  465. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_zh-TW.json +1 -1
  466. package/chunks/HighlightApply.glsl.js +6 -7
  467. package/chunks/HighlightBlur.glsl.js +5 -6
  468. package/chunks/HighlightDownsample.glsl.js +8 -8
  469. package/chunks/languageUtils.js +1 -1
  470. package/core/MemCache.js +1 -1
  471. package/core/MemCachePool.js +1 -1
  472. package/core/colorUtils.js +1 -1
  473. package/geometry/GeometryCursor.js +1 -1
  474. package/interfaces.d.ts +317 -27
  475. package/intl/date.js +1 -1
  476. package/kernel.js +1 -1
  477. package/layers/GroupLayer.js +1 -1
  478. package/layers/MapNotesLayer.js +1 -1
  479. package/layers/SceneLayer.js +1 -1
  480. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  481. package/layers/graphics/data/AttributesBuilder.js +1 -1
  482. package/layers/graphics/data/QueryEngineResult.js +1 -1
  483. package/layers/graphics/editingSupport.js +1 -1
  484. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  485. package/layers/graphics/sources/csv/csv.js +1 -1
  486. package/layers/graphics/sources/geojson/GeoJSONSourceWorker.js +1 -1
  487. package/layers/graphics/sources/support/MemorySourceWorker.js +1 -1
  488. package/layers/graphics/sources/support/sourceUtils.js +1 -1
  489. package/layers/ogc/wfsUtils.js +1 -1
  490. package/layers/support/Field.js +1 -1
  491. package/layers/support/FieldsIndex.js +1 -1
  492. package/layers/support/LayerContingentValuesCache.js +1 -1
  493. package/layers/support/fieldProperties.js +1 -1
  494. package/layers/support/fieldUtils.js +1 -1
  495. package/layers/support/imageryRendererUtils.js +1 -1
  496. package/layers/support/labelFormatUtils.js +1 -1
  497. package/package.json +2 -2
  498. package/renderers/UniqueValueRenderer.js +1 -1
  499. package/renderers/support/utils.js +1 -1
  500. package/rest/featureService/FeatureService.js +1 -1
  501. package/rest/query/operations/query.js +1 -1
  502. package/smartMapping/labels/clusters.js +1 -1
  503. package/smartMapping/popup/support/clusterUtils.js +1 -1
  504. package/smartMapping/renderers/color.js +1 -1
  505. package/smartMapping/renderers/opacity.js +1 -1
  506. package/smartMapping/renderers/size.js +1 -1
  507. package/smartMapping/renderers/support/utils.js +1 -1
  508. package/smartMapping/renderers/type.js +1 -1
  509. package/smartMapping/renderers/univariateColorSize.js +1 -1
  510. package/smartMapping/statistics/histogram.js +1 -1
  511. package/smartMapping/statistics/summaryStatistics.js +1 -1
  512. package/smartMapping/statistics/support/statsWorker.js +1 -1
  513. package/smartMapping/statistics/support/utils.js +1 -1
  514. package/smartMapping/support/adapters/FeatureLayerAdapter.js +1 -1
  515. package/smartMapping/support/adapters/FeatureLayerBinningAdapter.js +1 -1
  516. package/smartMapping/support/adapters/InMemoryLayerAdapter.js +1 -1
  517. package/smartMapping/support/adapters/OGCFeatureLayerAdapter.js +1 -1
  518. package/smartMapping/support/adapters/SceneLayerAdapter.js +1 -1
  519. package/smartMapping/support/adapters/StreamLayerAdapter.js +1 -1
  520. package/smartMapping/support/adapters/support/utils.js +1 -1
  521. package/smartMapping/support/clusterUtils.js +1 -1
  522. package/smartMapping/support/utils.js +1 -1
  523. package/support/revision.js +1 -1
  524. package/symbols/cim/CIMSymbolHelper.js +1 -1
  525. package/symbols/cim/effects/EffectDashes.js +1 -1
  526. package/symbols/support/previewCIMSymbol.js +1 -1
  527. package/time/timeZoneUtils.js +1 -1
  528. package/versionManagement/VersionManagementService.js +1 -1
  529. package/views/2d/engine/vectorTiles/RenderBucket.js +1 -1
  530. package/views/2d/input/handlers/KeyPan.js +1 -1
  531. package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
  532. package/views/2d/viewpointUtils.js +1 -1
  533. package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementVisualization.js +1 -1
  534. package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementVisualization.js +1 -1
  535. package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
  536. package/views/3d/layers/I3SMeshView3D.js +1 -1
  537. package/views/3d/layers/i3s/I3SOverrides.js +1 -1
  538. package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
  539. package/views/3d/support/buffer/InterleavedLayout.js +1 -1
  540. package/views/3d/terrain/PlanarPatch.js +1 -1
  541. package/views/3d/terrain/SphericalPatch.js +1 -1
  542. package/views/3d/terrain/TerrainSurface.js +1 -1
  543. package/views/3d/terrain/Tile.js +1 -1
  544. package/views/3d/terrain/TileRenderer.js +1 -1
  545. package/views/3d/terrain/TileTexture.js +1 -1
  546. package/views/3d/webgl-engine/core/FBOCache.js +1 -1
  547. package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js +1 -1
  548. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  549. package/views/3d/webgl-engine/effects/highlight/HighlightPassParameters.js +1 -1
  550. package/views/3d/webgl-engine/lib/TextRenderer.js +1 -1
  551. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  552. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  553. package/views/3d/webgl-engine/shaders/HighlightApply.glsl.js +1 -1
  554. package/views/3d/webgl-engine/shaders/HighlightBlur.glsl.js +1 -1
  555. package/views/3d/webgl-engine/shaders/HighlightDownsample.glsl.js +1 -1
  556. package/views/interactive/SegmentLabels.js +1 -1
  557. package/views/overlay/TextOverlayItem.js +1 -1
  558. package/views/webgl/VertexArrayObject.js +1 -1
  559. package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
  560. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
  561. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  562. package/widgets/Editor/CreateFeaturesWorkflowData.js +1 -1
  563. package/widgets/Editor/EditorViewModel.js +1 -1
  564. package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
  565. package/widgets/Editor/UpdateRecordWorkflow.js +1 -1
  566. package/widgets/Editor/UpdateWorkflow.js +1 -1
  567. package/widgets/Editor/workflowUtils.js +1 -1
  568. package/widgets/Editor.js +1 -1
  569. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  570. package/widgets/Feature/FeatureViewModel.js +1 -1
  571. package/widgets/Feature/support/featureUtils.js +1 -1
  572. package/widgets/FeatureForm/FieldInput.js +1 -1
  573. package/widgets/FeatureForm/RelationshipInput.js +1 -1
  574. package/widgets/FeatureForm/featureFormUtils.js +1 -1
  575. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  576. package/widgets/FeatureTable/FieldColumn.js +1 -1
  577. package/widgets/Features/FeaturesViewModel.js +1 -1
  578. package/widgets/Features/css.js +1 -1
  579. package/widgets/Features.js +1 -1
  580. package/widgets/Legend/LegendViewModel.js +1 -1
  581. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  582. package/widgets/Legend/support/utils.js +1 -1
  583. package/widgets/LineOfSight.js +1 -1
  584. package/widgets/OrientedImageryViewer.d.ts +4 -0
  585. package/widgets/Popup/actionUtils.js +1 -1
  586. package/widgets/ScaleRangeSlider.js +1 -1
  587. package/widgets/TimeZoneLabel/TimeZoneLabelViewModel.js +5 -0
  588. package/widgets/TimeZoneLabel/css.js +5 -0
  589. package/widgets/TimeZoneLabel.d.ts +4 -0
  590. package/widgets/TimeZoneLabel.js +5 -0
  591. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  592. package/widgets/UtilityNetworkTrace/support/ResultAreaHandler.js +1 -1
  593. package/widgets/UtilityNetworkTrace.js +1 -1
  594. package/widgets/UtilityNetworkValidateTopology/UtilityNetworkValidateTopologyViewModel.js +1 -1
  595. package/widgets/support/SnappingControls/SnappingControlsViewModel.js +1 -1
  596. package/assets/esri/core/workers/chunks/0036b6df93a17e57e3b9.js +0 -1
  597. package/assets/esri/core/workers/chunks/089e59445bd0b1131ffb.js +0 -1
  598. package/assets/esri/core/workers/chunks/09886c56427c4b3f18b5.js +0 -1
  599. package/assets/esri/core/workers/chunks/0b539dacc5c72399ab32.js +0 -1
  600. package/assets/esri/core/workers/chunks/0bb57b54897fb4381b46.js +0 -1
  601. package/assets/esri/core/workers/chunks/0d77c9c97301a4ee4167.js +0 -1
  602. package/assets/esri/core/workers/chunks/0d8ca51043c7784aed96.js +0 -1
  603. package/assets/esri/core/workers/chunks/121a9e148509f2fe2210.js +0 -1
  604. package/assets/esri/core/workers/chunks/1461910bd37aea28948b.js +0 -1
  605. package/assets/esri/core/workers/chunks/1586929658af88f6f961.js +0 -1
  606. package/assets/esri/core/workers/chunks/16d45f439b89da3ec835.js +0 -1
  607. package/assets/esri/core/workers/chunks/1ef3533abdd937ae2794.js +0 -1
  608. package/assets/esri/core/workers/chunks/24c504585da8e44f956f.js +0 -1
  609. package/assets/esri/core/workers/chunks/24ff267cf253feac22de.js +0 -1
  610. package/assets/esri/core/workers/chunks/2561c2bd5a0826dedcb1.js +0 -1
  611. package/assets/esri/core/workers/chunks/2832161454babb40614b.js +0 -1
  612. package/assets/esri/core/workers/chunks/29cab345819ec02ed60a.js +0 -1
  613. package/assets/esri/core/workers/chunks/2f8e71dac98135bbc3e6.js +0 -1
  614. package/assets/esri/core/workers/chunks/369f2ef414498c17a05a.js +0 -1
  615. package/assets/esri/core/workers/chunks/4108445c4a653772c5ee.js +0 -1
  616. package/assets/esri/core/workers/chunks/432a009e756643f59cb4.js +0 -1
  617. package/assets/esri/core/workers/chunks/435f04e3964b1c6d4880.js +0 -1
  618. package/assets/esri/core/workers/chunks/44a3d01b7daa46584ed9.js +0 -1
  619. package/assets/esri/core/workers/chunks/44b870cb53ba68b17c32.js +0 -1
  620. package/assets/esri/core/workers/chunks/4736188659a62488c777.js +0 -1
  621. package/assets/esri/core/workers/chunks/4763831c8815fed636f7.js +0 -1
  622. package/assets/esri/core/workers/chunks/4781e2011a32d7724889.js +0 -1
  623. package/assets/esri/core/workers/chunks/4d81aa50d90f5701a343.js +0 -1
  624. package/assets/esri/core/workers/chunks/4e60ac00b15b34a3b5f5.js +0 -1
  625. package/assets/esri/core/workers/chunks/4e6bf1efe3b0b474cbb4.js +0 -1
  626. package/assets/esri/core/workers/chunks/505132c47dbdf5fdeacc.js +0 -1
  627. package/assets/esri/core/workers/chunks/526ae87737777154c3f3.js +0 -1
  628. package/assets/esri/core/workers/chunks/53859d0bd8bb14af2d4d.js +0 -1
  629. package/assets/esri/core/workers/chunks/593d7f17090b74945345.js +0 -1
  630. package/assets/esri/core/workers/chunks/5a3ccc0a19ac8fa9e524.js +0 -1
  631. package/assets/esri/core/workers/chunks/5baae5acd184e87d5dc4.js +0 -1
  632. package/assets/esri/core/workers/chunks/5bdd2a3422fe52aa2c65.js +0 -1
  633. package/assets/esri/core/workers/chunks/66ba749ab0a631bbfdec.js +0 -1
  634. package/assets/esri/core/workers/chunks/69da907a92901f0fb391.js +0 -1
  635. package/assets/esri/core/workers/chunks/6b14d89d689a21014aec.js +0 -1
  636. package/assets/esri/core/workers/chunks/6b7b5544ed1f9a84623f.js +0 -1
  637. package/assets/esri/core/workers/chunks/6ce986f4213df8a2d934.js +0 -1
  638. package/assets/esri/core/workers/chunks/785d9a9a933314551b10.js +0 -1
  639. package/assets/esri/core/workers/chunks/7f6840c53a456524b74c.js +0 -1
  640. package/assets/esri/core/workers/chunks/84870178173951ad6c2b.js +0 -1
  641. package/assets/esri/core/workers/chunks/8634d6a62f4de973e39b.js +0 -1
  642. package/assets/esri/core/workers/chunks/88d43db03cc11cbffa68.js +0 -1
  643. package/assets/esri/core/workers/chunks/902b672a3475ec83b58b.js +0 -1
  644. package/assets/esri/core/workers/chunks/943ea851c1b07af91172.js +0 -1
  645. package/assets/esri/core/workers/chunks/9a5e3b0cc8536f79c377.js +0 -1
  646. package/assets/esri/core/workers/chunks/9f8207c82a17508a87a8.js +0 -1
  647. package/assets/esri/core/workers/chunks/a01ffe03b1465c21b9e6.js +0 -1
  648. package/assets/esri/core/workers/chunks/a298c9031962951e55a9.js +0 -1
  649. package/assets/esri/core/workers/chunks/a9a0194120ec65a00f6d.js +0 -1
  650. package/assets/esri/core/workers/chunks/aa453ae526a233cedf0c.js +0 -1
  651. package/assets/esri/core/workers/chunks/ab5ffcf0db724d40f714.js +0 -1
  652. package/assets/esri/core/workers/chunks/ad38e456a7cee940a165.js +0 -1
  653. package/assets/esri/core/workers/chunks/ae3ea5fa813aec0db5e1.js +0 -1
  654. package/assets/esri/core/workers/chunks/ae59e10b225f08f38487.js +0 -1
  655. package/assets/esri/core/workers/chunks/b030cf4b00e42337dc89.js +0 -1
  656. package/assets/esri/core/workers/chunks/b0526633a93ef69ec47b.js +0 -1
  657. package/assets/esri/core/workers/chunks/b0d6e6e489aaa331861c.js +0 -1
  658. package/assets/esri/core/workers/chunks/b0ddb503463328531d8f.js +0 -1
  659. package/assets/esri/core/workers/chunks/b1a8024bf8cdd0cd3884.js +0 -1
  660. package/assets/esri/core/workers/chunks/b3243695e0edfcbca276.js +0 -1
  661. package/assets/esri/core/workers/chunks/be57692d4b9ff6cd4c02.js +0 -1
  662. package/assets/esri/core/workers/chunks/c0061d993e1ede22b1dc.js +0 -1
  663. package/assets/esri/core/workers/chunks/c260ad3434bb00ba64a7.js +0 -1
  664. package/assets/esri/core/workers/chunks/c2be3b9aa28e454cf931.js +0 -1
  665. package/assets/esri/core/workers/chunks/c459c8d8630eb4b955b1.js +0 -1
  666. package/assets/esri/core/workers/chunks/c4df42fe859a9115a6e4.js +0 -1
  667. package/assets/esri/core/workers/chunks/c5acddea13fd01912e79.js +0 -1
  668. package/assets/esri/core/workers/chunks/c607fe4df3ca054f9aa8.js +0 -1
  669. package/assets/esri/core/workers/chunks/ca85e88dad30b5f2956b.js +0 -1
  670. package/assets/esri/core/workers/chunks/ce3bb546a729f0ccf696.js +0 -1
  671. package/assets/esri/core/workers/chunks/cfd63bd57eea2caa4bcb.js +0 -1
  672. package/assets/esri/core/workers/chunks/d6ded127949160103f69.js +0 -1
  673. package/assets/esri/core/workers/chunks/d95eed98316e59f8f35d.js +0 -1
  674. package/assets/esri/core/workers/chunks/e0b49c5eb5427656e835.js +0 -1
  675. package/assets/esri/core/workers/chunks/e52b9e423c0ba4134309.js +0 -1
  676. package/assets/esri/core/workers/chunks/e52d5a48e83d8df36f92.js +0 -1
  677. package/assets/esri/core/workers/chunks/e53df0f018a82e3a35bd.js +0 -1
  678. package/assets/esri/core/workers/chunks/ea953f5a0a975f7bd7b9.js +0 -1
  679. package/assets/esri/core/workers/chunks/eb4bfafe821daeb4bb6e.js +0 -1
  680. package/assets/esri/core/workers/chunks/f183a4b52095e4c498b4.js +0 -1
  681. package/assets/esri/core/workers/chunks/f221b9c6ae6c7eb4ca01.js +0 -1
  682. package/assets/esri/core/workers/chunks/f57100e3dfc7f087c3ad.js +0 -1
  683. package/assets/esri/core/workers/chunks/f5fd2ee5878c63777c51.js +0 -1
  684. package/assets/esri/core/workers/chunks/f6b7036114b1d754fdd9.js +0 -1
  685. package/assets/esri/core/workers/chunks/f6c0680c535c5a3c73ee.js +0 -1
  686. package/assets/esri/core/workers/chunks/f72a5af2a7ca1536f10a.js +0 -1
  687. package/assets/esri/core/workers/chunks/f99deed4120f605b6cd6.js +0 -1
  688. package/layers/graphics/sources/support/QueryEngineBuildLayer.js +0 -5
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../Graphic.js";import r from"../../../core/Accessor.js";import{isSome as o}from"../../../core/arrayUtils.js";import{ClonableMixin as l}from"../../../core/Clonable.js";import a from"../../../core/Collection.js";import{IdentifiableMixin as s}from"../../../core/Identifiable.js";import{ignoreAbortErrors as i,debounce as n}from"../../../core/promiseUtils.js";import{watch as u,initial as d}from"../../../core/reactiveUtils.js";import{property as y}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as h}from"../../../core/accessorSupport/decorators/subclass.js";import p from"../../../rest/support/RelationshipQuery.js";import{getFixedFieldName as c,findRelatedLayer as C}from"../support/featureUtils.js";import{getComputedAttributes as b,parseFormTemplateString as g,getFieldsInTitleAndDesc as _}from"../../FeatureForm/featureFormUtils.js";const F=100;let f=class extends(l(s(r))){constructor(e){super(e),this._loaded=!1,this._queryAbortController=null,this._queryPageAbortController=null,this._queryFeatureCountAbortController=null,this.featuresPerPage=10,this.description=null,this.graphic=null,this.layer=null,this.map=null,this.orderByFields=null,this.featureCount=0,this.relationshipId=null,this.showAllEnabled=!1,this.title=null,this._cancelQuery=()=>{const{_queryAbortController:e}=this;e&&e.abort(),this._queryAbortController=null},this._cancelQueryFeatureCount=()=>{const{_queryFeatureCountAbortController:e}=this;e&&e.abort(),this._queryFeatureCountAbortController=null},this._cancelQueryPage=()=>{const{_queryPageAbortController:e}=this;e&&e.abort(),this._queryPageAbortController=null},this._queryController=async()=>{this._cancelQuery();const e=new AbortController;this._queryAbortController=e,await i(this._query()),this._queryAbortController===e&&(this._queryAbortController=null)},this._queryFeatureCountController=async()=>{this._loaded=!1,this._cancelQueryFeatureCount();const e=new AbortController;this._queryFeatureCountAbortController=e,await i(this._queryFeatureCount()),this._queryFeatureCountAbortController===e&&(this._queryFeatureCountAbortController=null),this._loaded=!0},this._queryPageController=async()=>{const e=new AbortController;this._queryPageAbortController=e,await i(this._queryPage()),this._queryPageAbortController===e&&(this._queryPageAbortController=null)},this._queryDebounced=n(this._queryController,F),this._queryFeatureCountDebounced=n(this._queryFeatureCountController,F),this._queryPageDebounced=n(this._queryPageController,F),this._query=async()=>{const{_queryAbortController:e,relatedFeatures:t}=this;this.featureCount&&(this._destroyRelatedFeatureViewModels(),this.featurePage=1,t.removeAll(),this.destroyed||t.addMany(this._sliceFeatures(await this._queryRelatedFeatures({signal:e?.signal}))))},this.addHandles([u((()=>[this.displayCount,this.graphic,this.layer,this.layer?.loaded,this.map,this.orderByFields,this.relationshipId,this.featuresPerPage,this.showAllEnabled,this.canQuery,this.featureCount]),(()=>this._queryDebounced()),d),u((()=>[this.featurePage,this.showAllEnabled]),(()=>this._queryPageDebounced())),u((()=>[this.layer,this.relationshipId,this.objectId,this.canQuery]),(()=>this._queryFeatureCountDebounced()))])}destroy(){this._destroyRelatedFeatureViewModels(),this.relatedFeatures.removeAll(),this._cancelQuery(),this._cancelQueryFeatureCount(),this._cancelQueryPage()}set featurePage(e){const{featuresPerPage:t,featureCount:r}=this,o=1,l=Math.ceil(r/t)||1;this._set("featurePage",Math.min(Math.max(e,o),l))}get featurePage(){return this._get("featurePage")}get orderByFieldsFixedCasing(){const{orderByFields:e,relatedLayer:t}=this;return e&&t?.loaded?e.map((e=>{const r=e.clone();return r.field=c(e.field,t),r})):e??[]}get supportsCacheHint(){return!!this.layer?.capabilities?.queryRelated?.supportsCacheHint}get canLoad(){return!!this.map&&"number"==typeof this.relationshipId&&"number"==typeof this.objectId}get canQuery(){const e=this.layer?.capabilities?.queryRelated;return!!(this.relatedLayer&&this.relationship&&"number"==typeof this.relationshipId&&"number"==typeof this.objectId&&e?.supportsCount&&e?.supportsPagination)}get itemDescriptionFieldName(){return this.orderByFieldsFixedCasing[0]?.field||null}set displayCount(e){const t=0,r=10;this._set("displayCount",Math.min(Math.max(e,t),r))}get displayCount(){return this._get("displayCount")}get objectId(){return(this.objectIdField&&this.graphic?.attributes?.[this.objectIdField])??null}get objectIdField(){return this.layer?.objectIdField||null}get relatedFeatures(){return this._get("relatedFeatures")||new a}get relatedFeatureInfos(){const{itemDescriptionFieldName:e,relatedFeatures:t,relatedLayer:r}=this;if(!t.length||!r)return[];const o=r&&"formTemplate"in r&&r.formTemplate,l=o&&o?.title||void 0;return t.map((t=>{let o;if(e){const l=t.getAttribute(e),a=r.fieldsIndex.get(e);if(a){const t=b({values:[l],fields:[a]})[e];null!=t&&(o=t.toString())}}return{feature:t,description:o,title:l?g({label:l,attributes:t.attributes,fieldsIndex:r.fieldsIndex}):void 0}})).toArray()}get relatedLayer(){const{layer:e,map:t,relationship:r}=this;return e?.loaded&&t&&r?C(t,e,r)??null:null}get relationship(){const{relationshipId:e,layer:t}=this;return"number"==typeof e?t?.relationships?.find((({id:t})=>t===e))??null:null}get relatedFeatureViewModels(){return this._get("relatedFeatureViewModels")||new a}get state(){const{_queryAbortController:e,_queryFeatureCountAbortController:t,_queryPageAbortController:r,canQuery:o,_loaded:l,canLoad:a}=this;return t||a&&!l?"loading":e||r?"querying":o?"ready":"disabled"}getRelatedFeatureByObjectId(e){return this.relatedFeatures.find((t=>t.getObjectId()===e))}_destroyRelatedFeatureViewModels(){this.relatedFeatureViewModels?.forEach((e=>!e.destroyed&&e.destroy())),this.relatedFeatureViewModels.removeAll()}async _queryFeatureCount(){const{layer:e,relatedLayer:t,relationshipId:r,objectId:o,_queryFeatureCountAbortController:l,canQuery:a,supportsCacheHint:s}=this;if(await(e?.load()),await(t?.load()),!a||!e||!t)return void this._set("featureCount",0);const i=t.createQuery(),n=new p({cacheHint:s,relationshipId:r,returnGeometry:!1,objectIds:[o],where:i.where??void 0}),u=await e.queryRelatedFeaturesCount(n,{signal:l?.signal});this._set("featureCount",u[o]||0)}_sliceFeatures(e){const{showAllEnabled:t,displayCount:r}=this;return t?e:r?e.slice(0,r):[]}async _queryPage(){const{relatedFeatures:e,featurePage:t,showAllEnabled:r,_queryPageAbortController:o,featureCount:l}=this;!r||t<2||!l||e.addMany(await this._queryRelatedFeatures({signal:o?.signal}))}async _queryRelatedFeatures(e){const{orderByFieldsFixedCasing:t,showAllEnabled:r,featuresPerPage:l,displayCount:a,layer:s,relationshipId:i,featurePage:n,featureCount:u,relatedLayer:d,supportsCacheHint:y}=this,{canQuery:h,objectId:c}=this;if(!h||!s||!d)return[];const C=r?((n-1)*l+u)%u:0,b=r?l:a,g=d.objectIdField,F=[...t.map((e=>e.field)),..._(d),g].filter(o),f=t.map((e=>`${e.field} ${e.order}`)),m=d.createQuery(),q=new p({orderByFields:f,start:C,num:b,outFields:F,cacheHint:y,relationshipId:i,returnGeometry:!1,objectIds:[c],where:m.where??void 0}),A=await s.queryRelatedFeatures(q,{signal:e?.signal}),w=A[c]?.features||[];return w.forEach((e=>{e.sourceLayer=d,e.layer=d})),w}};e([y()],f.prototype,"_loaded",void 0),e([y()],f.prototype,"_queryAbortController",void 0),e([y()],f.prototype,"_queryPageAbortController",void 0),e([y()],f.prototype,"_queryFeatureCountAbortController",void 0),e([y({value:1})],f.prototype,"featurePage",null),e([y()],f.prototype,"featuresPerPage",void 0),e([y({readOnly:!0})],f.prototype,"orderByFieldsFixedCasing",null),e([y({readOnly:!0})],f.prototype,"supportsCacheHint",null),e([y({readOnly:!0})],f.prototype,"canLoad",null),e([y({readOnly:!0})],f.prototype,"canQuery",null),e([y()],f.prototype,"description",void 0),e([y({readOnly:!0})],f.prototype,"itemDescriptionFieldName",null),e([y({value:3})],f.prototype,"displayCount",null),e([y({type:t})],f.prototype,"graphic",void 0),e([y()],f.prototype,"layer",void 0),e([y()],f.prototype,"map",void 0),e([y({readOnly:!0})],f.prototype,"objectId",null),e([y({readOnly:!0})],f.prototype,"objectIdField",null),e([y()],f.prototype,"orderByFields",void 0),e([y({readOnly:!0})],f.prototype,"relatedFeatures",null),e([y({readOnly:!0})],f.prototype,"relatedFeatureInfos",null),e([y({readOnly:!0})],f.prototype,"relatedLayer",null),e([y({readOnly:!0})],f.prototype,"relationship",null),e([y()],f.prototype,"featureCount",void 0),e([y({readOnly:!0})],f.prototype,"relatedFeatureViewModels",null),e([y()],f.prototype,"relationshipId",void 0),e([y()],f.prototype,"showAllEnabled",void 0),e([y()],f.prototype,"state",null),e([y()],f.prototype,"title",void 0),e([y()],f.prototype,"getRelatedFeatureByObjectId",null),f=e([h("esri.widgets.Feature.FeatureRelationship.FeatureRelationshipViewModel")],f);const m=f;export{m as default};
5
+ import{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../Graphic.js";import r from"../../../core/Accessor.js";import{isSome as o}from"../../../core/arrayUtils.js";import{ClonableMixin as l}from"../../../core/Clonable.js";import a from"../../../core/Collection.js";import{IdentifiableMixin as s}from"../../../core/Identifiable.js";import{ignoreAbortErrors as i,debounce as n}from"../../../core/promiseUtils.js";import{watch as u,initial as d}from"../../../core/reactiveUtils.js";import{property as y}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as h}from"../../../core/accessorSupport/decorators/subclass.js";import p from"../../../rest/support/RelationshipQuery.js";import{getFixedFieldName as c,findRelatedLayer as C}from"../support/featureUtils.js";import{getFieldsInTitleAndDesc as b}from"../../FeatureForm/featureFormUtils.js";const _=100;let g=class extends(l(s(r))){constructor(e){super(e),this._loaded=!1,this._queryAbortController=null,this._queryPageAbortController=null,this._queryFeatureCountAbortController=null,this.featuresPerPage=10,this.description=null,this.graphic=null,this.layer=null,this.map=null,this.orderByFields=null,this.featureCount=0,this.relationshipId=null,this.showAllEnabled=!1,this.title=null,this._cancelQuery=()=>{const{_queryAbortController:e}=this;e&&e.abort(),this._queryAbortController=null},this._cancelQueryFeatureCount=()=>{const{_queryFeatureCountAbortController:e}=this;e&&e.abort(),this._queryFeatureCountAbortController=null},this._cancelQueryPage=()=>{const{_queryPageAbortController:e}=this;e&&e.abort(),this._queryPageAbortController=null},this._queryController=async()=>{this._cancelQuery();const e=new AbortController;this._queryAbortController=e,await i(this._query()),this._queryAbortController===e&&(this._queryAbortController=null)},this._queryFeatureCountController=async()=>{this._loaded=!1,this._cancelQueryFeatureCount();const e=new AbortController;this._queryFeatureCountAbortController=e,await i(this._queryFeatureCount()),this._queryFeatureCountAbortController===e&&(this._queryFeatureCountAbortController=null),this._loaded=!0},this._queryPageController=async()=>{const e=new AbortController;this._queryPageAbortController=e,await i(this._queryPage()),this._queryPageAbortController===e&&(this._queryPageAbortController=null)},this._queryDebounced=n(this._queryController,_),this._queryFeatureCountDebounced=n(this._queryFeatureCountController,_),this._queryPageDebounced=n(this._queryPageController,_),this._query=async()=>{const{_queryAbortController:e,relatedFeatures:t}=this;this.featureCount&&(this._destroyRelatedFeatureViewModels(),this.featurePage=1,t.removeAll(),this.destroyed||t.addMany(this._sliceFeatures(await this._queryRelatedFeatures({signal:e?.signal}))))},this.addHandles([u((()=>[this.displayCount,this.graphic,this.layer,this.layer?.loaded,this.map,this.orderByFields,this.relationshipId,this.featuresPerPage,this.showAllEnabled,this.canQuery,this.featureCount]),(()=>this._queryDebounced()),d),u((()=>[this.featurePage,this.showAllEnabled]),(()=>this._queryPageDebounced())),u((()=>[this.layer,this.relationshipId,this.objectId,this.canQuery]),(()=>this._queryFeatureCountDebounced()))])}destroy(){this._destroyRelatedFeatureViewModels(),this.relatedFeatures.removeAll(),this._cancelQuery(),this._cancelQueryFeatureCount(),this._cancelQueryPage()}set featurePage(e){const{featuresPerPage:t,featureCount:r}=this,o=1,l=Math.ceil(r/t)||1;this._set("featurePage",Math.min(Math.max(e,o),l))}get featurePage(){return this._get("featurePage")}get orderByFieldsFixedCasing(){const{orderByFields:e,relatedLayer:t}=this;return e&&t?.loaded?e.map((e=>{const r=e.clone();return r.field=c(e.field,t),r})):e??[]}get supportsCacheHint(){return!!this.layer?.capabilities?.queryRelated?.supportsCacheHint}get canLoad(){return!!this.map&&"number"==typeof this.relationshipId&&"number"==typeof this.objectId}get canQuery(){const e=this.layer?.capabilities?.queryRelated;return!!(this.relatedLayer&&this.relationship&&"number"==typeof this.relationshipId&&"number"==typeof this.objectId&&e?.supportsCount&&e?.supportsPagination)}get itemDescriptionFieldName(){return this.orderByFieldsFixedCasing[0]?.field||null}set displayCount(e){const t=0,r=10;this._set("displayCount",Math.min(Math.max(e,t),r))}get displayCount(){return this._get("displayCount")}get objectId(){return(this.objectIdField&&this.graphic?.attributes?.[this.objectIdField])??null}get objectIdField(){return this.layer?.objectIdField||null}get relatedFeatures(){return this._get("relatedFeatures")||new a}get relatedLayer(){const{layer:e,map:t,relationship:r}=this;return e?.loaded&&t&&r?C(t,e,r)??null:null}get relationship(){const{relationshipId:e,layer:t}=this;return"number"==typeof e?t?.relationships?.find((({id:t})=>t===e))??null:null}get relatedFeatureViewModels(){return this._get("relatedFeatureViewModels")||new a}get state(){const{_queryAbortController:e,_queryFeatureCountAbortController:t,_queryPageAbortController:r,canQuery:o,_loaded:l,canLoad:a}=this;return t||a&&!l?"loading":e||r?"querying":o?"ready":"disabled"}getRelatedFeatureByObjectId(e){return this.relatedFeatures.find((t=>t.getObjectId()===e))}_destroyRelatedFeatureViewModels(){this.relatedFeatureViewModels?.forEach((e=>!e.destroyed&&e.destroy())),this.relatedFeatureViewModels.removeAll()}async _queryFeatureCount(){const{layer:e,relatedLayer:t,relationshipId:r,objectId:o,_queryFeatureCountAbortController:l,canQuery:a,supportsCacheHint:s}=this;if(await(e?.load()),await(t?.load()),!a||!e||!t)return void this._set("featureCount",0);const i=t.createQuery(),n=new p({cacheHint:s,relationshipId:r,returnGeometry:!1,objectIds:[o],where:i.where??void 0}),u=await e.queryRelatedFeaturesCount(n,{signal:l?.signal});this._set("featureCount",u[o]||0)}_sliceFeatures(e){const{showAllEnabled:t,displayCount:r}=this;return t?e:r?e.slice(0,r):[]}async _queryPage(){const{relatedFeatures:e,featurePage:t,showAllEnabled:r,_queryPageAbortController:o,featureCount:l}=this;!r||t<2||!l||e.addMany(await this._queryRelatedFeatures({signal:o?.signal}))}async _queryRelatedFeatures(e){const{orderByFieldsFixedCasing:t,showAllEnabled:r,featuresPerPage:l,displayCount:a,layer:s,relationshipId:i,featurePage:n,featureCount:u,relatedLayer:d,supportsCacheHint:y}=this,{canQuery:h,objectId:c}=this;if(!h||!s||!d)return[];const C=r?((n-1)*l+u)%u:0,_=r?l:a,g=d.objectIdField,F=[...t.map((e=>e.field)),...b(d),g].filter(o),m=t.map((e=>`${e.field} ${e.order}`)),f=d.createQuery(),q=new p({orderByFields:m,start:C,num:_,outFields:F,cacheHint:y,relationshipId:i,returnGeometry:!1,objectIds:[c],where:f.where??void 0}),A=await s.queryRelatedFeatures(q,{signal:e?.signal}),w=A[c]?.features||[];return w.forEach((e=>{e.sourceLayer=d,e.layer=d})),w}};e([y()],g.prototype,"_loaded",void 0),e([y()],g.prototype,"_queryAbortController",void 0),e([y()],g.prototype,"_queryPageAbortController",void 0),e([y()],g.prototype,"_queryFeatureCountAbortController",void 0),e([y({value:1})],g.prototype,"featurePage",null),e([y()],g.prototype,"featuresPerPage",void 0),e([y({readOnly:!0})],g.prototype,"orderByFieldsFixedCasing",null),e([y({readOnly:!0})],g.prototype,"supportsCacheHint",null),e([y({readOnly:!0})],g.prototype,"canLoad",null),e([y({readOnly:!0})],g.prototype,"canQuery",null),e([y()],g.prototype,"description",void 0),e([y({readOnly:!0})],g.prototype,"itemDescriptionFieldName",null),e([y({value:3})],g.prototype,"displayCount",null),e([y({type:t})],g.prototype,"graphic",void 0),e([y()],g.prototype,"layer",void 0),e([y()],g.prototype,"map",void 0),e([y({readOnly:!0})],g.prototype,"objectId",null),e([y({readOnly:!0})],g.prototype,"objectIdField",null),e([y()],g.prototype,"orderByFields",void 0),e([y({readOnly:!0})],g.prototype,"relatedFeatures",null),e([y({readOnly:!0})],g.prototype,"relatedLayer",null),e([y({readOnly:!0})],g.prototype,"relationship",null),e([y()],g.prototype,"featureCount",void 0),e([y({readOnly:!0})],g.prototype,"relatedFeatureViewModels",null),e([y()],g.prototype,"relationshipId",void 0),e([y()],g.prototype,"showAllEnabled",void 0),e([y()],g.prototype,"state",null),e([y()],g.prototype,"title",void 0),e([y()],g.prototype,"getRelatedFeatureByObjectId",null),g=e([h("esri.widgets.Feature.FeatureRelationship.FeatureRelationshipViewModel")],g);const F=g;export{F as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../Graphic.js";import{FeatureSetQueryInterceptor as i}from"../../arcade/featureset/support/FeatureSetQueryInterceptor.js";import r from"../../core/Accessor.js";import{isSome as o}from"../../core/arrayUtils.js";import{IdentifiableMixin as s}from"../../core/Identifiable.js";import n from"../../core/Logger.js";import{isAbortError as a,eachAlways as l}from"../../core/promiseUtils.js";import{watch as p,on as c,initial as d}from"../../core/reactiveUtils.js";import{throttle as u}from"../../core/throttle.js";import{property as h}from"../../core/accessorSupport/decorators/property.js";import{cast as f}from"../../core/accessorSupport/decorators/cast.js";import"../../core/has.js";import{subclass as m}from"../../core/accessorSupport/decorators/subclass.js";import _ from"../../popup/content/TextContent.js";import{system as y}from"../../time/timeZoneUtils.js";import g from"./FeatureAttachments/FeatureAttachmentsViewModel.js";import b from"./FeatureContent/FeatureContentViewModel.js";import I from"./FeatureExpression/FeatureExpressionViewModel.js";import A from"./FeatureFields/FeatureFieldsViewModel.js";import M from"./FeatureMedia/FeatureMediaViewModel.js";import w from"./FeatureRelationship/FeatureRelationshipViewModel.js";import{createCompiledExpressions as x}from"./support/arcadeFeatureUtils.js";import{createfieldInfoMap as v,getAllFieldInfos as F,getSourceLayer as C,querySourceLayer as T,isRelatableFeatureSupportedLayer as E,substituteFieldsInLinksAndAttributes as V,isExpressionField as j,isRelatedField as P,formatEditInfo as R,graphicCallback as L,queryUpdatedFeature as O,formatAttributes as S,preLayerQueryCallback as U,preRequestCallback as Z}from"./support/featureUtils.js";import{queryLayerInfos as k,queryRelatedFeatures as H,setRelatedFeatures as D,getRelatedFieldInfo as N,createRelatedInfo as q,updateRelatedInfo as B}from"./support/relatedFeatureUtils.js";var Q;const G=1,z="content-view-models",J="relationship-view-models",K={attachmentsContent:!0,chartAnimation:!0,customContent:!0,expressionContent:!0,fieldsContent:!0,mediaContent:!0,textContent:!0,relationshipContent:!0};let W=Q=class extends(s(r)){constructor(e){super(e),this._error=null,this._featureAbortController=null,this._graphicChangedThrottled=u(this._graphicChanged,G,this),this._expressionAttributes=null,this._graphicExpressionAttributes=null,this.abilities={...K},this.content=null,this.contentViewModels=[],this.description=null,this.defaultPopupTemplateEnabled=!1,this.formattedAttributes=null,this.lastEditInfo=null,this.relatedInfos=new Map,this.title="",this.view=null,this._isAllowedContentType=e=>{const{abilities:t}=this;return"attachments"===e.type&&!!t.attachmentsContent||"custom"===e.type&&!!t.customContent||"fields"===e.type&&!!t.fieldsContent||"media"===e.type&&!!t.mediaContent||"text"===e.type&&!!t.textContent||"expression"===e.type&&!!t.expressionContent||"relationship"===e.type&&!!t.relationshipContent},this.addHandles(p((()=>[this.graphic,this._effectivePopupTemplate,this.abilities]),(()=>this._graphicChangedThrottled()),d))}initialize(){this.addHandles(this._graphicChangedThrottled)}destroy(){this._clear(),this._cancelFeatureQuery(),this._error=null,this.graphic=null,this._destroyContentViewModels(),this.relatedInfos.clear()}get _effectivePopupTemplate(){return null!=this.graphic?this.graphic.getEffectivePopupTemplate(this.defaultPopupTemplateEnabled):null}get _fieldInfoMap(){return v(F(this._effectivePopupTemplate),this._sourceLayer)}get _sourceLayer(){return C(this.graphic)}castAbilities(e){return{...K,...e}}get isTable(){return this._sourceLayer?.isTable||!1}get state(){return this.graphic?this._error?"error":this.waitingForContent?"loading":"ready":"disabled"}set graphic(e){this._set("graphic",e?e.clone():null)}get spatialReference(){return this.view?.spatialReference??null}set spatialReference(e){this._override("spatialReference",e)}get map(){return this.view?.map||null}set map(e){this._override("map",e)}get waitingForContent(){return!!this._featureAbortController}setActiveMedia(e,t){const i=this.contentViewModels[e];i instanceof M&&i.setActiveMedia(t)}nextMedia(e){const t=this.contentViewModels[e];t instanceof M&&t.next()}previousMedia(e){const t=this.contentViewModels[e];t instanceof M&&t.previous()}async updateGeometry(){const{graphic:e,spatialReference:t,_sourceLayer:i}=this;await(i?.load());const r=i?.objectIdField;if(!r||!e||!i)return;const o=e?.attributes?.[r];if(null==o)return;const s=[o];if(!e.geometry){const r=await T({layer:i,graphic:e,outFields:[],objectIds:s,returnGeometry:!0,spatialReference:t}),o=r?.geometry;o&&(e.geometry=o)}}_clear(){this._set("title",""),this._set("content",null),this._set("formattedAttributes",null)}async _graphicChanged(){this._cancelFeatureQuery(),this._error=null,this._clear();const{graphic:e}=this;if(!e)return;const t=new AbortController;this._featureAbortController=t;try{await this._queryFeature({signal:t.signal})}catch(i){a(i)||(this._error=i,n.getLogger(this).error("error","The popupTemplate could not be displayed for this feature.",{error:i,graphic:e,popupTemplate:this._effectivePopupTemplate}))}this._featureAbortController===t&&(this._featureAbortController=null)}_cancelFeatureQuery(){const{_featureAbortController:e}=this;e&&e.abort(),this._featureAbortController=null}_compileContentElement(e,t){return"attachments"===e.type?this._compileAttachments(e,t):"custom"===e.type?this._compileCustom(e,t):"fields"===e.type?this._compileFields(e,t):"media"===e.type?this._compileMedia(e,t):"text"===e.type?this._compileText(e,t):"expression"===e.type?this._compileExpression(e,t):"relationship"===e.type?this._compileRelationship(e,t):void 0}_compileContent(e){if(this._destroyContentViewModels(),this.graphic)return Array.isArray(e)?e.filter(this._isAllowedContentType).map(((e,t)=>this._compileContentElement(e,t))).filter(o):"string"==typeof e?this._compileText(new _({text:e}),0).text:e}_destroyContentViewModels(){this.removeHandles(J),this.removeHandles(z),this.contentViewModels.forEach((e=>e&&!e.destroyed&&e.destroy())),this._set("contentViewModels",[])}_matchesFeature(e,t){const i=e?.graphic?.getObjectId(),r=t?.getObjectId();return null!=i&&null!=r&&i===r}_setRelatedFeaturesViewModels({relatedFeatureViewModels:e,relatedFeatures:t,map:i}){const{view:r,spatialReference:o}=this;t?.filter(Boolean).forEach((t=>{e.find((e=>this._matchesFeature(e,t)))||e.add(new Q({abilities:{relationshipContent:!1},map:i,view:r,spatialReference:o,graphic:t}))})),e.forEach((i=>{const r=t?.find((e=>this._matchesFeature(i,e)));r||e.remove(i)}))}_setExpressionContentVM(e,t){const i=this.formattedAttributes,{contentElement:r,contentElementViewModel:o}=e,s=r?.type;o&&s&&("fields"===s&&(this._createFieldsFormattedAttributes({contentElement:r,contentElementIndex:t,formattedAttributes:i}),o.set(this._createFieldsVMParams(r,t))),"media"===s&&(this._createMediaFormattedAttributes({contentElement:r,contentElementIndex:t,formattedAttributes:i}),o.set(this._createMediaVMParams(r,t))),"text"===s&&o.set(this._createTextVMParams(r)))}_compileRelationship(e,t){const{displayCount:i,orderByFields:r,relationshipId:o,title:s,description:n}=e,{_sourceLayer:a,graphic:l,map:p}=this;if(!E(a))return;const d=new w({displayCount:i,graphic:l,orderByFields:r,relationshipId:o,layer:a,map:p,...this._compileTitleAndDesc({title:s,description:n})});return this.contentViewModels[t]=d,this.addHandles(c((()=>d.relatedFeatures),"change",(()=>this._setRelatedFeaturesViewModels(d))),J),e}_compileExpression(e,t){const{expressionInfo:i}=e,{graphic:r,map:o,spatialReference:s,view:n}=this,a=new I({expressionInfo:i,graphic:r,interceptor:Q.interceptor,map:o,spatialReference:s,view:n});return this.contentViewModels[t]=a,this.addHandles(p((()=>a.contentElementViewModel),(()=>this._setExpressionContentVM(a,t)),d),z),e}_compileAttachments(e,t){const{graphic:i}=this,{description:r,title:o}=e;return this.contentViewModels[t]=new g({graphic:i,...this._compileTitleAndDesc({title:o,description:r})}),e}_compileCustom(e,t){const{graphic:i}=this,{creator:r,destroyer:o}=e;return this.contentViewModels[t]=new b({graphic:i,creator:r,destroyer:o}),e}_compileTitleAndDesc({title:e,description:t}){const{_fieldInfoMap:i,_sourceLayer:r,graphic:o,formattedAttributes:s}=this,n=o?.attributes,a=this._expressionAttributes,l=s.global;return{title:V({attributes:n,fieldInfoMap:i,globalAttributes:l,expressionAttributes:a,layer:r,text:e}),description:V({attributes:n,fieldInfoMap:i,globalAttributes:l,expressionAttributes:a,layer:r,text:t})}}_createFieldsVMParams(e,t){const i=this._effectivePopupTemplate,r=this.formattedAttributes,o={...r?.global,...r?.content[t]},s=e?.fieldInfos||i?.fieldInfos,n=s?.filter((({fieldName:e})=>j(e)||P(e)||o.hasOwnProperty(e))),a=i?.expressionInfos,{description:l,title:p}=e;return{attributes:o,expressionInfos:a,fieldInfos:n,...this._compileTitleAndDesc({title:p,description:l})}}_compileFields(e,t){const i=e.clone(),r=new A(this._createFieldsVMParams(e,t));return this.contentViewModels[t]=r,i.fieldInfos=r.formattedFieldInfos.slice(0),i}_createMediaVMParams(e,t){const{abilities:i,graphic:r,_fieldInfoMap:o,_effectivePopupTemplate:s,relatedInfos:n,_sourceLayer:a,_expressionAttributes:l}=this,p=this.formattedAttributes,c=r?.attributes??{},{description:d,mediaInfos:u,title:h}=e;return{abilities:{chartAnimation:i.chartAnimation},activeMediaInfoIndex:e.activeMediaInfoIndex||0,attributes:c,isAggregate:r?.isAggregate,layer:a,fieldInfoMap:o,formattedAttributes:{...p?.global,...p?.content[t]},expressionAttributes:l,mediaInfos:u,popupTemplate:s,relatedInfos:n,...this._compileTitleAndDesc({title:h,description:d})}}_compileMedia(e,t){const i=e.clone(),r=new M(this._createMediaVMParams(e,t));return i.mediaInfos=r.formattedMediaInfos.slice(0),this.contentViewModels[t]=r,i}_createTextVMParams(e){const{graphic:t,_fieldInfoMap:i,_sourceLayer:r,_expressionAttributes:o}=this;if(e&&e.text){const s=t?.attributes??{},n=this.formattedAttributes?.global??{};e.text=V({attributes:s,fieldInfoMap:i,globalAttributes:n,expressionAttributes:o,layer:r,text:e.text})}return{graphic:t,creator:e.text}}_compileText(e,t){const i=e.clone();return this.contentViewModels[t]=new b(this._createTextVMParams(i)),i}_compileLastEditInfo(){const{_effectivePopupTemplate:e,_sourceLayer:t,graphic:i}=this;if(!e)return;const{lastEditInfoEnabled:r}=e,o=t?.editFieldsInfo;return r&&o?R(o,i?.attributes):void 0}_compileTitle(e){const{_fieldInfoMap:t,_sourceLayer:i,graphic:r,_expressionAttributes:o}=this,s=r?.attributes??{},n=this.formattedAttributes?.global??{};return V({attributes:s,fieldInfoMap:t,globalAttributes:n,expressionAttributes:o,layer:i,text:e})}async _getTitle(){const{_effectivePopupTemplate:e,graphic:t}=this;if(!t)return null;const i=e?.title;return L(i,{graphic:t})}async _getContent(){const{_effectivePopupTemplate:e,graphic:t}=this;if(!t)return null;const i=e?.content;return L(i,{graphic:t})}async _queryFeature(e){const{_featureAbortController:t,_sourceLayer:i,graphic:r,_effectivePopupTemplate:o}=this,s=this.map,n=this.view,a=this.spatialReference;if(t!==this._featureAbortController||!r)return;await O({graphic:r,popupTemplate:o,layer:i,spatialReference:a},e);const{content:{value:p},title:{value:c}}=await l({content:this._getContent(),title:this._getTitle()}),{expressionAttributes:{value:d}}=await l({checkForRelatedFeatures:this._checkForRelatedFeatures(e),expressionAttributes:x({expressionInfos:o?.expressionInfos,spatialReference:a,graphic:r,map:s,interceptor:Q.interceptor,view:n})});t===this._featureAbortController&&r&&(this._expressionAttributes=d,this._graphicExpressionAttributes={...r.attributes,...d},this._set("formattedAttributes",this._createFormattedAttributes(p)),this._set("title",this._compileTitle(c)),this._set("lastEditInfo",this._compileLastEditInfo()||null),this._set("content",this._compileContent(p)||null))}_createMediaFormattedAttributes({contentElement:e,contentElementIndex:t,formattedAttributes:i}){const{_effectivePopupTemplate:r,graphic:o,relatedInfos:s,_sourceLayer:n,_fieldInfoMap:a,_graphicExpressionAttributes:l}=this;i.content[t]=S({fieldInfos:r?.fieldInfos,graphic:o,attributes:{...l,...e.attributes},layer:n,fieldInfoMap:a,relatedInfos:s,timeZone:this.view?.timeZone??y})}_createFieldsFormattedAttributes({contentElement:e,contentElementIndex:t,formattedAttributes:i}){if(e.fieldInfos){const{graphic:r,relatedInfos:o,_sourceLayer:s,_fieldInfoMap:n,_graphicExpressionAttributes:a}=this;i.content[t]=S({fieldInfos:e.fieldInfos,graphic:r,attributes:{...a,...e.attributes},layer:s,fieldInfoMap:n,relatedInfos:o,timeZone:this.view?.timeZone??y})}}_createFormattedAttributes(e){const{_effectivePopupTemplate:t,graphic:i,relatedInfos:r,_sourceLayer:o,_fieldInfoMap:s,_graphicExpressionAttributes:n}=this,a=t?.fieldInfos,l={global:S({fieldInfos:a,graphic:i,attributes:n,layer:o,fieldInfoMap:s,relatedInfos:r,timeZone:this.view?.timeZone??y}),content:[]};return Array.isArray(e)&&e.forEach(((e,t)=>{"fields"===e.type&&this._createFieldsFormattedAttributes({contentElement:e,contentElementIndex:t,formattedAttributes:l}),"media"===e.type&&this._createMediaFormattedAttributes({contentElement:e,contentElementIndex:t,formattedAttributes:l})})),l}_checkForRelatedFeatures(e){const{graphic:t,_effectivePopupTemplate:i}=this;return this._queryRelatedInfos(t,F(i),e)}async _queryRelatedInfos(e,t,i){const{relatedInfos:r,_sourceLayer:o}=this;r.clear();const s=null!=o?.associatedLayer?await(o?.associatedLayer.load(i)):o;if(!s||!e)return;const n=t.filter((e=>e&&P(e.fieldName)));if(!n?.length)return;t.forEach((e=>this._configureRelatedInfo(e,s)));const a=await k({relatedInfos:r,layer:s},i);Object.keys(a).forEach((e=>{const t=r.get(e.toString()),i=a[e]?.value;t&&i&&(t.layerInfo=i.data)}));const l=await H({graphic:e,relatedInfos:r,layer:s},i);Object.keys(l).forEach((e=>{D(l[e]?.value,r.get(e.toString()))}))}_configureRelatedInfo(e,t){const{relatedInfos:i}=this,r=N(e.fieldName);if(!r)return;const{layerId:o,fieldName:s}=r;if(!o)return;const n=i.get(o.toString())||q(o,t);n&&(B({relatedInfo:n,fieldName:s,fieldInfo:e}),this.relatedInfos.set(o,n))}};W.interceptor=new i(U,Z),e([h()],W.prototype,"_error",void 0),e([h()],W.prototype,"_featureAbortController",void 0),e([h({readOnly:!0})],W.prototype,"_effectivePopupTemplate",null),e([h({readOnly:!0})],W.prototype,"_fieldInfoMap",null),e([h({readOnly:!0})],W.prototype,"_sourceLayer",null),e([h()],W.prototype,"abilities",void 0),e([f("abilities")],W.prototype,"castAbilities",null),e([h({readOnly:!0})],W.prototype,"content",void 0),e([h({readOnly:!0})],W.prototype,"contentViewModels",void 0),e([h()],W.prototype,"description",void 0),e([h({type:Boolean})],W.prototype,"defaultPopupTemplateEnabled",void 0),e([h({readOnly:!0})],W.prototype,"isTable",null),e([h({readOnly:!0})],W.prototype,"state",null),e([h({readOnly:!0})],W.prototype,"formattedAttributes",void 0),e([h({type:t,value:null})],W.prototype,"graphic",null),e([h({readOnly:!0})],W.prototype,"lastEditInfo",void 0),e([h({readOnly:!0})],W.prototype,"relatedInfos",void 0),e([h()],W.prototype,"spatialReference",null),e([h({readOnly:!0})],W.prototype,"title",void 0),e([h()],W.prototype,"map",null),e([h({readOnly:!0})],W.prototype,"waitingForContent",null),e([h()],W.prototype,"view",void 0),W=Q=e([m("esri.widgets.FeatureViewModel")],W);const X=W;export{X as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../Graphic.js";import{FeatureSetQueryInterceptor as i}from"../../arcade/featureset/support/FeatureSetQueryInterceptor.js";import r from"../../core/Accessor.js";import{isSome as o}from"../../core/arrayUtils.js";import{IdentifiableMixin as s}from"../../core/Identifiable.js";import n from"../../core/Logger.js";import{isAbortError as a,eachAlways as l}from"../../core/promiseUtils.js";import{watch as p,on as c,initial as d}from"../../core/reactiveUtils.js";import{throttle as u}from"../../core/throttle.js";import{property as h}from"../../core/accessorSupport/decorators/property.js";import{cast as f}from"../../core/accessorSupport/decorators/cast.js";import"../../core/has.js";import{subclass as m}from"../../core/accessorSupport/decorators/subclass.js";import _ from"../../popup/content/TextContent.js";import{system as y}from"../../time/timeZoneUtils.js";import g from"./FeatureAttachments/FeatureAttachmentsViewModel.js";import b from"./FeatureContent/FeatureContentViewModel.js";import I from"./FeatureExpression/FeatureExpressionViewModel.js";import A from"./FeatureFields/FeatureFieldsViewModel.js";import M from"./FeatureMedia/FeatureMediaViewModel.js";import w from"./FeatureRelationship/FeatureRelationshipViewModel.js";import{createCompiledExpressions as x}from"./support/arcadeFeatureUtils.js";import{createfieldInfoMap as v,getAllFieldInfos as F,getSourceLayer as C,querySourceLayer as T,isRelatableFeatureSupportedLayer as E,substituteFieldsInLinksAndAttributes as V,isExpressionField as j,isRelatedField as P,formatEditInfo as R,graphicCallback as L,queryUpdatedFeature as O,formatAttributes as Z,preLayerQueryCallback as S,preRequestCallback as U}from"./support/featureUtils.js";import{queryLayerInfos as k,queryRelatedFeatures as H,setRelatedFeatures as D,getRelatedFieldInfo as N,createRelatedInfo as q,updateRelatedInfo as B}from"./support/relatedFeatureUtils.js";var Q;const G=1,z="content-view-models",J="relationship-view-models",K={attachmentsContent:!0,chartAnimation:!0,customContent:!0,expressionContent:!0,fieldsContent:!0,mediaContent:!0,textContent:!0,relationshipContent:!0};let W=Q=class extends(s(r)){constructor(e){super(e),this._error=null,this._featureAbortController=null,this._graphicChangedThrottled=u(this._graphicChanged,G,this),this._expressionAttributes=null,this._graphicExpressionAttributes=null,this.abilities={...K},this.content=null,this.contentViewModels=[],this.description=null,this.defaultPopupTemplateEnabled=!1,this.formattedAttributes=null,this.lastEditInfo=null,this.relatedInfos=new Map,this.title="",this.view=null,this._isAllowedContentType=e=>{const{abilities:t}=this;return"attachments"===e.type&&!!t.attachmentsContent||"custom"===e.type&&!!t.customContent||"fields"===e.type&&!!t.fieldsContent||"media"===e.type&&!!t.mediaContent||"text"===e.type&&!!t.textContent||"expression"===e.type&&!!t.expressionContent||"relationship"===e.type&&!!t.relationshipContent},this.addHandles(p((()=>[this.graphic,this._effectivePopupTemplate,this.abilities]),(()=>this._graphicChangedThrottled()),d))}initialize(){this.addHandles(this._graphicChangedThrottled)}destroy(){this._clear(),this._cancelFeatureQuery(),this._error=null,this.graphic=null,this._destroyContentViewModels(),this.relatedInfos.clear()}get _effectivePopupTemplate(){return null!=this.graphic?this.graphic.getEffectivePopupTemplate(this.defaultPopupTemplateEnabled):null}get _fieldInfoMap(){return v(F(this._effectivePopupTemplate),this._sourceLayer)}get _sourceLayer(){return C(this.graphic)}castAbilities(e){return{...K,...e}}get isTable(){return this._sourceLayer?.isTable||!1}get state(){return this.graphic?this._error?"error":this.waitingForContent?"loading":"ready":"disabled"}set graphic(e){this._set("graphic",e?e.clone():null)}get spatialReference(){return this.view?.spatialReference??null}set spatialReference(e){this._override("spatialReference",e)}get map(){return this.view?.map||null}set map(e){this._override("map",e)}get waitingForContent(){return!!this._featureAbortController}setActiveMedia(e,t){const i=this.contentViewModels[e];i instanceof M&&i.setActiveMedia(t)}nextMedia(e){const t=this.contentViewModels[e];t instanceof M&&t.next()}previousMedia(e){const t=this.contentViewModels[e];t instanceof M&&t.previous()}async updateGeometry(){const{graphic:e,spatialReference:t,_sourceLayer:i}=this;await(i?.load());const r=i?.objectIdField;if(!r||!e||!i)return;const o=e?.attributes?.[r];if(null==o)return;const s=[o];if(!e.geometry){const r=await T({layer:i,graphic:e,outFields:[],objectIds:s,returnGeometry:!0,spatialReference:t}),o=r?.geometry;o&&(e.geometry=o)}}_clear(){this._set("title",""),this._set("content",null),this._set("formattedAttributes",null)}async _graphicChanged(){this._cancelFeatureQuery(),this._error=null,this._clear();const{graphic:e}=this;if(!e)return;const t=new AbortController;this._featureAbortController=t;try{await this._queryFeature({signal:t.signal})}catch(i){a(i)||(this._error=i,n.getLogger(this).error("error","The popupTemplate could not be displayed for this feature.",{error:i,graphic:e,popupTemplate:this._effectivePopupTemplate}))}this._featureAbortController===t&&(this._featureAbortController=null)}_cancelFeatureQuery(){const{_featureAbortController:e}=this;e&&e.abort(),this._featureAbortController=null}_compileContentElement(e,t){return"attachments"===e.type?this._compileAttachments(e,t):"custom"===e.type?this._compileCustom(e,t):"fields"===e.type?this._compileFields(e,t):"media"===e.type?this._compileMedia(e,t):"text"===e.type?this._compileText(e,t):"expression"===e.type?this._compileExpression(e,t):"relationship"===e.type?this._compileRelationship(e,t):void 0}_compileContent(e){if(this._destroyContentViewModels(),this.graphic)return Array.isArray(e)?e.filter(this._isAllowedContentType).map(((e,t)=>this._compileContentElement(e,t))).filter(o):"string"==typeof e?this._compileText(new _({text:e}),0).text:e}_destroyContentViewModels(){this.removeHandles(J),this.removeHandles(z),this.contentViewModels.forEach((e=>e&&!e.destroyed&&e.destroy())),this._set("contentViewModels",[])}_matchesFeature(e,t){const i=e?.graphic?.getObjectId(),r=t?.getObjectId();return null!=i&&null!=r&&i===r}_setRelatedFeaturesViewModels({relatedFeatureViewModels:e,relatedFeatures:t,map:i}){const{view:r,spatialReference:o}=this;t?.filter(Boolean).forEach((t=>{e.find((e=>this._matchesFeature(e,t)))||e.add(new Q({abilities:{relationshipContent:!1},map:i,view:r,spatialReference:o,graphic:t}))})),e.forEach((i=>{const r=t?.find((e=>this._matchesFeature(i,e)));r||e.remove(i)}))}_setExpressionContentVM(e,t){const i=this.formattedAttributes,{contentElement:r,contentElementViewModel:o}=e,s=r?.type;o&&s&&("fields"===s&&(this._createFieldsFormattedAttributes({contentElement:r,contentElementIndex:t,formattedAttributes:i}),o.set(this._createFieldsVMParams(r,t))),"media"===s&&(this._createMediaFormattedAttributes({contentElement:r,contentElementIndex:t,formattedAttributes:i}),o.set(this._createMediaVMParams(r,t))),"text"===s&&o.set(this._createTextVMParams(r)))}_compileRelationship(e,t){const{displayCount:i,orderByFields:r,relationshipId:o,title:s,description:n}=e,{_sourceLayer:a,graphic:l,map:p}=this;if(!E(a))return;const d=new w({displayCount:i,graphic:l,orderByFields:r,relationshipId:o,layer:a,map:p,...this._compileTitleAndDesc({title:s,description:n})});return this.contentViewModels[t]=d,this.addHandles(c((()=>d.relatedFeatures),"change",(()=>this._setRelatedFeaturesViewModels(d))),J),e}_compileExpression(e,t){const{expressionInfo:i}=e,{graphic:r,map:o,spatialReference:s,view:n}=this,a=new I({expressionInfo:i,graphic:r,interceptor:Q.interceptor,map:o,spatialReference:s,view:n});return this.contentViewModels[t]=a,this.addHandles(p((()=>a.contentElementViewModel),(()=>this._setExpressionContentVM(a,t)),d),z),e}_compileAttachments(e,t){const{graphic:i}=this,{description:r,title:o}=e;return this.contentViewModels[t]=new g({graphic:i,...this._compileTitleAndDesc({title:o,description:r})}),e}_compileCustom(e,t){const{graphic:i}=this,{creator:r,destroyer:o}=e;return this.contentViewModels[t]=new b({graphic:i,creator:r,destroyer:o}),e}_compileTitleAndDesc({title:e,description:t}){const{_fieldInfoMap:i,_sourceLayer:r,graphic:o,formattedAttributes:s}=this,n=o?.attributes,a=this._expressionAttributes,l=s.global;return{title:V({attributes:n,fieldInfoMap:i,globalAttributes:l,expressionAttributes:a,layer:r,text:e}),description:V({attributes:n,fieldInfoMap:i,globalAttributes:l,expressionAttributes:a,layer:r,text:t})}}_createFieldsVMParams(e,t){const i=this._effectivePopupTemplate,r=this.formattedAttributes,o={...r?.global,...r?.content[t]},s=e?.fieldInfos||i?.fieldInfos,n=s?.filter((({fieldName:e})=>j(e)||P(e)||o.hasOwnProperty(e))),a=i?.expressionInfos,{description:l,title:p}=e;return{attributes:o,expressionInfos:a,fieldInfos:n,...this._compileTitleAndDesc({title:p,description:l})}}_compileFields(e,t){const i=e.clone(),r=new A(this._createFieldsVMParams(e,t));return this.contentViewModels[t]=r,i.fieldInfos=r.formattedFieldInfos.slice(0),i}_createMediaVMParams(e,t){const{abilities:i,graphic:r,_fieldInfoMap:o,_effectivePopupTemplate:s,relatedInfos:n,_sourceLayer:a,_expressionAttributes:l}=this,p=this.formattedAttributes,c=r?.attributes??{},{description:d,mediaInfos:u,title:h}=e;return{abilities:{chartAnimation:i.chartAnimation},activeMediaInfoIndex:e.activeMediaInfoIndex||0,attributes:c,isAggregate:r?.isAggregate,layer:a,fieldInfoMap:o,formattedAttributes:{...p?.global,...p?.content[t]},expressionAttributes:l,mediaInfos:u,popupTemplate:s,relatedInfos:n,...this._compileTitleAndDesc({title:h,description:d})}}_compileMedia(e,t){const i=e.clone(),r=new M(this._createMediaVMParams(e,t));return i.mediaInfos=r.formattedMediaInfos.slice(0),this.contentViewModels[t]=r,i}_createTextVMParams(e){const{graphic:t,_fieldInfoMap:i,_sourceLayer:r,_expressionAttributes:o}=this;if(e&&e.text){const s=t?.attributes??{},n=this.formattedAttributes?.global??{};e.text=V({attributes:s,fieldInfoMap:i,globalAttributes:n,expressionAttributes:o,layer:r,text:e.text})}return{graphic:t,creator:e.text}}_compileText(e,t){const i=e.clone();return this.contentViewModels[t]=new b(this._createTextVMParams(i)),i}_compileLastEditInfo(){const{_effectivePopupTemplate:e,_sourceLayer:t,graphic:i,view:r}=this;if(!e)return;const{lastEditInfoEnabled:o}=e,s=t?.editFieldsInfo;return o&&s?R(s,i?.attributes,r?.timeZone??y,t):void 0}_compileTitle(e){const{_fieldInfoMap:t,_sourceLayer:i,graphic:r,_expressionAttributes:o}=this,s=r?.attributes??{},n=this.formattedAttributes?.global??{};return V({attributes:s,fieldInfoMap:t,globalAttributes:n,expressionAttributes:o,layer:i,text:e})}async _getTitle(){const{_effectivePopupTemplate:e,graphic:t}=this;if(!t)return null;const i=e?.title;return L(i,{graphic:t})}async _getContent(){const{_effectivePopupTemplate:e,graphic:t}=this;if(!t)return null;const i=e?.content;return L(i,{graphic:t})}async _queryFeature(e){const{_featureAbortController:t,_sourceLayer:i,graphic:r,_effectivePopupTemplate:o}=this,s=this.map,n=this.view,a=this.spatialReference;if(t!==this._featureAbortController||!r)return;await O({graphic:r,popupTemplate:o,layer:i,spatialReference:a},e);const{content:{value:p},title:{value:c}}=await l({content:this._getContent(),title:this._getTitle()}),{expressionAttributes:{value:d}}=await l({checkForRelatedFeatures:this._checkForRelatedFeatures(e),expressionAttributes:x({expressionInfos:o?.expressionInfos,spatialReference:a,graphic:r,map:s,interceptor:Q.interceptor,view:n})});t===this._featureAbortController&&r&&(this._expressionAttributes=d,this._graphicExpressionAttributes={...r.attributes,...d},this._set("formattedAttributes",this._createFormattedAttributes(p)),this._set("title",this._compileTitle(c)),this._set("lastEditInfo",this._compileLastEditInfo()||null),this._set("content",this._compileContent(p)||null))}_createMediaFormattedAttributes({contentElement:e,contentElementIndex:t,formattedAttributes:i}){const{_effectivePopupTemplate:r,graphic:o,relatedInfos:s,_sourceLayer:n,_fieldInfoMap:a,_graphicExpressionAttributes:l}=this;i.content[t]=Z({fieldInfos:r?.fieldInfos,graphic:o,attributes:{...l,...e.attributes},layer:n,fieldInfoMap:a,relatedInfos:s,timeZone:this.view?.timeZone??y})}_createFieldsFormattedAttributes({contentElement:e,contentElementIndex:t,formattedAttributes:i}){if(e.fieldInfos){const{graphic:r,relatedInfos:o,_sourceLayer:s,_fieldInfoMap:n,_graphicExpressionAttributes:a}=this;i.content[t]=Z({fieldInfos:e.fieldInfos,graphic:r,attributes:{...a,...e.attributes},layer:s,fieldInfoMap:n,relatedInfos:o,timeZone:this.view?.timeZone??y})}}_createFormattedAttributes(e){const{_effectivePopupTemplate:t,graphic:i,relatedInfos:r,_sourceLayer:o,_fieldInfoMap:s,_graphicExpressionAttributes:n}=this,a=t?.fieldInfos,l={global:Z({fieldInfos:a,graphic:i,attributes:n,layer:o,fieldInfoMap:s,relatedInfos:r,timeZone:this.view?.timeZone??y}),content:[]};return Array.isArray(e)&&e.forEach(((e,t)=>{"fields"===e.type&&this._createFieldsFormattedAttributes({contentElement:e,contentElementIndex:t,formattedAttributes:l}),"media"===e.type&&this._createMediaFormattedAttributes({contentElement:e,contentElementIndex:t,formattedAttributes:l})})),l}_checkForRelatedFeatures(e){const{graphic:t,_effectivePopupTemplate:i}=this;return this._queryRelatedInfos(t,F(i),e)}async _queryRelatedInfos(e,t,i){const{relatedInfos:r,_sourceLayer:o}=this;r.clear();const s=null!=o?.associatedLayer?await(o?.associatedLayer.load(i)):o;if(!s||!e)return;const n=t.filter((e=>e&&P(e.fieldName)));if(!n?.length)return;t.forEach((e=>this._configureRelatedInfo(e,s)));const a=await k({relatedInfos:r,layer:s},i);Object.keys(a).forEach((e=>{const t=r.get(e.toString()),i=a[e]?.value;t&&i&&(t.layerInfo=i.data)}));const l=await H({graphic:e,relatedInfos:r,layer:s},i);Object.keys(l).forEach((e=>{D(l[e]?.value,r.get(e.toString()))}))}_configureRelatedInfo(e,t){const{relatedInfos:i}=this,r=N(e.fieldName);if(!r)return;const{layerId:o,fieldName:s}=r;if(!o)return;const n=i.get(o.toString())||q(o,t);n&&(B({relatedInfo:n,fieldName:s,fieldInfo:e}),this.relatedInfos.set(o,n))}};W.interceptor=new i(S,U),e([h()],W.prototype,"_error",void 0),e([h()],W.prototype,"_featureAbortController",void 0),e([h({readOnly:!0})],W.prototype,"_effectivePopupTemplate",null),e([h({readOnly:!0})],W.prototype,"_fieldInfoMap",null),e([h({readOnly:!0})],W.prototype,"_sourceLayer",null),e([h()],W.prototype,"abilities",void 0),e([f("abilities")],W.prototype,"castAbilities",null),e([h({readOnly:!0})],W.prototype,"content",void 0),e([h({readOnly:!0})],W.prototype,"contentViewModels",void 0),e([h()],W.prototype,"description",void 0),e([h({type:Boolean})],W.prototype,"defaultPopupTemplateEnabled",void 0),e([h({readOnly:!0})],W.prototype,"isTable",null),e([h({readOnly:!0})],W.prototype,"state",null),e([h({readOnly:!0})],W.prototype,"formattedAttributes",void 0),e([h({type:t,value:null})],W.prototype,"graphic",null),e([h({readOnly:!0})],W.prototype,"lastEditInfo",void 0),e([h({readOnly:!0})],W.prototype,"relatedInfos",void 0),e([h()],W.prototype,"spatialReference",null),e([h({readOnly:!0})],W.prototype,"title",void 0),e([h()],W.prototype,"map",null),e([h({readOnly:!0})],W.prototype,"waitingForContent",null),e([h()],W.prototype,"view",void 0),W=Q=e([m("esri.widgets.FeatureViewModel")],W);const X=W;export{X as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../../core/Logger.js";import{replace as t}from"../../../core/string.js";import{formatDate as n,formatTimestamp as r,formatTimeOnly as i,convertDateFormatToIntlOptions as o,formatDateOnly as a}from"../../../intl/date.js";import{formatNumber as l,convertNumberFormatToIntlOptions as u}from"../../../intl/number.js";import{isRasterPixelValueField as s,featureHasFields as f}from"../../../layers/support/fieldUtils.js";import{getEffectiveLayerCapabilities as c}from"../../../layers/support/layerUtils.js";import{loadArcade as d}from"../../../support/arcadeOnDemand.js";import{getTimeZoneFormattingOptions as m}from"../../../time/timeZoneUtils.js";const p="esri.widgets.Feature.support.featureUtils",y=e.getLogger(p),g=/href=(""|'')/gi,h=/(\{([^\{\r\n]+)\})/g,I=/\'/g,b=/^\s*expression\//i,F=/(\n)/gi,N=/[\u00A0-\u9999<>\&]/gim,w=/href\s*=\s*(?:\"([^\"]+)\"|\'([^\']+)\')/gi,Z=/^(?:mailto:|tel:)/,j="relationships/",E=o("short-date-short-time");function x(e){if(null!=e)return(e.sourceLayer||e.layer)??void 0}async function C(e,t){return"function"==typeof e?e(t):e}function q(e=""){if(e)return!Z.test(e.trim().toLowerCase())}function A(e){return!!e&&b.test(e)}function M(e,t){if(!A(t)||!e)return null;const n=t.replace(b,"").toLowerCase();let r=null;return e.some((e=>e.name.toLowerCase()===n&&(r=e,!0))),r}function T(e,t){const n=M(t,e?.fieldName);return n?n.title||null:e?e.label||e.fieldName:null}function L(e,t){const n=t.get(e.toLowerCase());return`{${n?.fieldName||e}}`}function v(e){return e.replaceAll(g,"")}function R(e,t){const n=D(t,e);return n?n.name:e}function $(e,t){return e&&e.map((e=>R(e,t)))}function D(e,t){return e&&"function"==typeof e.getField&&t?e.getField(t)??null:null}function U(e){return`${e}`.trim()}function G({attributes:e,globalAttributes:t,layer:n,text:r,expressionAttributes:i,fieldInfoMap:o}){return r?O({formattedAttributes:t,template:_(r,{...t,...i,...e},n),fieldInfoMap:o}):""}function O({formattedAttributes:e,template:n,fieldInfoMap:r}){return U(v(t(t(n,(e=>L(e,r))),e)))}function S(e,t,n=!1){const r=t[e];if("string"==typeof r){const i="%27",o=(n?encodeURIComponent(r):r).replaceAll(I,i);t[e]=o}}function k(e,t=!1){const n={...e};return Object.keys(n).forEach((e=>S(e,n,t))),n}function P(e,n,r){const i=(n=U(n))&&"{"!==n[0];return t(e,k(r,i||!1))}function Q(e,t){return e.replaceAll(h,((e,n,r)=>{const i=D(t,r);return i?`{${i.name}}`:n}))}function _(e,t,n){const r=Q(e,n);return r?r.replaceAll(w,((e,n,r)=>P(e,n||r,t))):r}function H(e,t){if("string"==typeof e&&t&&null==t.dateFormat&&(null!=t.places||null!=t.digitSeparator)){const t=Number(e);if(!isNaN(t))return t}return e}function z(e){return null!=e&&"object"==typeof e&&"fieldsIndex"in e&&"geometryType"in e&&"getField"in e&&"load"in e&&"loaded"in e&&"objectIdField"in e&&"spatialReference"in e&&"type"in e&&("feature"===e.type||"scene"===e.type)&&"when"in e}function B(e){return null!=e&&"object"==typeof e&&"createQuery"in e&&"queryFeatureCount"in e&&"queryObjectIds"in e&&"queryRelatedFeatures"in e&&"queryRelatedFeaturesCount"in e&&"relationships"in e}function J(e){return z(e)&&B(e)}function K(e){return!!e&&"object"==typeof e&&"sourceLayer"in e&&J(e.sourceLayer)}function V(e,t){const{fieldInfos:f,fieldName:c,preventPlacesFormatting:d,layer:p,timeZone:y}=t,g=Y(f,c),h=D(p,c);if(g&&!s(c)){const t=h?.type,l=g.format?.dateFormat;if("date"===t||"date-only"===t||"time-only"===t||"timestamp-offset"===t||l){if("number"==typeof e){const r=o(l??"short-date-short-time"),{timeZone:i,timeZoneName:a}=m(p,y,r,t);return n(e,{...r,timeZone:i,timeZoneName:a})}switch(t){case"date-only":return a(e,l?o(l):void 0);case"time-only":return i(e,l?o(l):void 0);case"timestamp-offset":{const n=o(l??"short-date-short-time"),{timeZone:i,timeZoneName:a}=m(p,y,n,t);return r(e,{...n,timeZone:i,timeZoneName:a})}}}}const I=g?.format;return"string"==typeof e&&s(c)&&I?W(e,I):"string"==typeof(e=H(e,I))||null==e||null==I?ae(e):l(e,d?{...u(I),minimumFractionDigits:0,maximumFractionDigits:20}:u(I))}function W(e,t){return e=e.trim(),/\d{2}-\d{2}/.test(e)?e:e.includes(",")?X(e,",",", ",t):e.includes(";")?X(e,";","; ",t):e.includes(" ")?X(e," "," ",t):l(Number(e),u(t))}function X(e,t,n,r){return e.trim().split(t).map((e=>l(Number(e),u(r)))).join(n)}function Y(e,t){if(e?.length&&t)return e.find((e=>e.fieldName?.toLowerCase()===t.toLowerCase()))}function ee({fieldName:e,graphic:t,layer:n}){if(de(e))return null;if(!n||"function"!=typeof n.getFeatureType)return null;const{typeIdField:r}=n;if(!r||e!==r)return null;const i=n.getFeatureType(t);return i?i.name:null}function te({fieldName:e,value:t,graphic:n,layer:r}){if(de(e))return null;if(!r||"function"!=typeof r.getFieldDomain)return null;const i=n&&r.getFieldDomain(e,{feature:n});return i&&"coded-value"===i.type?i.getName(t):null}function ne(e,t){const{creatorField:r,creationDateField:i,editorField:o,editDateField:a}=e;if(!t)return;const l=t[a];if("number"==typeof l){const e=t[o];return{type:"edit",date:n(l,E),user:e}}const u=t[i];if("number"==typeof u){const e=t[r];return{type:"create",date:n(u,E),user:e}}return null}function re(e,t){const n=new Map;return e?(e.forEach((e=>{const r=R(e.fieldName,t);e.fieldName=r,n.set(r.toLowerCase(),e)})),n):n}function ie(e){const t=[];if(!e)return t;const{fieldInfos:n,content:r}=e;return n&&t.push(...n),r&&Array.isArray(r)?(r.forEach((e=>{if("fields"===e.type){const n=e?.fieldInfos;n&&t.push(...n)}})),t):t}function oe(e){return e.replaceAll(N,(e=>`&#${e.charCodeAt(0)};`))}function ae(e){return"string"==typeof e?e.replaceAll(F,'<br class="esri-text-new-line" />'):e}function le(e){const{value:t,fieldName:l,fieldInfos:u,fieldInfoMap:s,layer:f,graphic:c,timeZone:d}=e;if(null==t)return"";const p=te({fieldName:l,value:t,graphic:c,layer:f});if(p)return p;const y=ee({fieldName:l,graphic:c,layer:f});if(y)return y;if(s.get(l.toLowerCase()))return V(t,{fieldInfos:u||Array.from(s.values()),fieldName:l,layer:f,timeZone:d});const g=f?.fieldsIndex?.get(l)?.type;switch(g){case"date":case"timestamp-offset":{const e=o("short-date-short-time"),{timeZone:i,timeZoneName:a}=m(f,d,e,g),l={...e,timeZone:i,timeZoneName:a};return"date"===g?n(t,l):r(t,l)}case"date-only":return a(t);case"time-only":return i(t)}return ae(t)}function ue({fieldInfos:e,attributes:t,layer:n,graphic:r,fieldInfoMap:i,relatedInfos:o,timeZone:a}){const l={};return o?.forEach((t=>ye({attributes:l,relatedInfo:t,fieldInfoMap:i,fieldInfos:e,layer:n,timeZone:a}))),t&&Object.keys(t).forEach((o=>{const u=t[o];l[o]=le({fieldName:o,fieldInfos:e,fieldInfoMap:i,layer:n,value:u,graphic:r,timeZone:a})})),l}async function se(e,t){const{layer:n,graphic:r,outFields:i,objectIds:o,returnGeometry:a,spatialReference:l}=e,u=o[0];if("number"!=typeof u&&"string"!=typeof u){const e="Could not query required fields for the specified feature. The feature's ID is invalid.",t={layer:n,graphic:r,objectId:u,requiredFields:i};return y.warn(e,t),null}if(!c(n)?.operations?.supportsQuery){const e="The specified layer cannot be queried. The following fields will not be available.",t={layer:n,graphic:r,requiredFields:i,returnGeometry:a};return y.warn(e,t),null}const s=n.createQuery();s.objectIds=o,s.outFields=i?.length?i:[n.objectIdField],s.returnGeometry=!!a,s.returnZ=!!a,s.returnM=!!a,s.outSpatialReference=l;return(await n.queryFeatures(s,t)).features[0]}async function fe(e){if(!e.expressionInfos?.length)return!1;const t=await d(),{arcadeUtils:{hasGeometryFunctions:n}}=t;return n(e)}async function ce({graphic:e,popupTemplate:t,layer:n,spatialReference:r},i){if(!n||!t)return;if("function"==typeof n.load&&await n.load(i),!e.attributes)return;const o=e.attributes[n.objectIdField];if(null==o)return;const a=[o],l=await t.getRequiredFields(n.fieldsIndex),u=f(l,e),s=u?[]:l,c=t.returnGeometry||await fe(t);if(u&&!c)return;const d=await se({layer:n,graphic:e,outFields:s,objectIds:a,returnGeometry:c,spatialReference:r},i);d&&(d.geometry&&(e.geometry=d.geometry),d.attributes&&(e.attributes={...e.attributes,...d.attributes}))}function de(e=""){return!!e&&e.includes(j)}function me(e){return e?`${j}${e.layerId}/${e.fieldName}`:""}function pe({attributes:e,graphic:t,relatedInfo:n,fieldInfos:r,fieldInfoMap:i,layer:o,timeZone:a}){e&&t&&n&&Object.keys(t.attributes).forEach((l=>{const u=me({layerId:n.relation.id.toString(),fieldName:l}),s=t.attributes[l];e[u]=le({fieldName:u,fieldInfos:r,fieldInfoMap:i,layer:o,value:s,graphic:t,timeZone:a})}))}function ye({attributes:e,relatedInfo:t,fieldInfoMap:n,fieldInfos:r,layer:i,timeZone:o}){e&&t&&(t.relatedFeatures?.forEach((a=>pe({attributes:e,graphic:a,relatedInfo:t,fieldInfoMap:n,fieldInfos:r,layer:i,timeZone:o}))),t.relatedStatsFeatures?.forEach((a=>pe({attributes:e,graphic:a,relatedInfo:t,fieldInfoMap:n,fieldInfos:r,layer:i,timeZone:o}))))}const ge=e=>{if(!e)return!1;const t=e.toUpperCase();return t.includes("CURRENT_TIMESTAMP")||t.includes("CURRENT_DATE")||t.includes("CURRENT_TIME")},he=({layer:e,method:t,query:n,definitionExpression:r})=>{if(!e.capabilities?.query?.supportsCacheHint||"attachments"===t)return;const i=null!=n.where?n.where:null,o=null!=n.geometry?n.geometry:null;ge(r)||ge(i)||"extent"===o?.type||"tile"===n.resultType||(n.cacheHint=!0)},Ie=({query:e,layer:t,method:n})=>{he({layer:t,method:n,query:e,definitionExpression:`${t.definitionExpression} ${t.serviceDefinitionExpression}`})},be=({queryPayload:e,layer:t,method:n})=>{he({layer:t,method:n,query:e,definitionExpression:`${t.definitionExpression} ${t.serviceDefinitionExpression}`})};function Fe(e,t,n){return e&&t&&n?Ne(e.allLayers,t,n)||Ne(e.allTables,t,n):null}function Ne(e,t,n){const r="scene"===t.type&&t.associatedLayer?t.associatedLayer.url:t.url;return e.filter(J).find((e=>e!==t&&e.url===r&&e.layerId===n.relatedTableId))}function we(e){const t=e.getObjectId();return null!=t?`oid:${t}`:`uid:${e.uid}`}export{ae as applyTextFormattingHTML,re as createfieldInfoMap,Fe as findRelatedLayer,Q as fixTokens,ue as formatAttributes,ne as formatEditInfo,V as formatValueToFieldInfo,ie as getAllFieldInfos,Y as getFieldInfo,T as getFieldInfoLabel,R as getFixedFieldName,$ as getFixedFieldNames,we as getHighlightKeyForFeature,x as getSourceLayer,C as graphicCallback,oe as htmlEntities,A as isExpressionField,z as isFeatureSupportedLayer,K as isGraphicForRelatableFeatureSupportedLayer,J as isRelatableFeatureSupportedLayer,B as isRelatableLayer,de as isRelatedField,Ie as preLayerQueryCallback,be as preRequestCallback,se as querySourceLayer,ce as queryUpdatedFeature,q as shouldOpenInNewTab,O as substituteAttributes,G as substituteFieldsInLinksAndAttributes};
5
+ import e from"../../../core/Logger.js";import{replace as t}from"../../../core/string.js";import{formatDate as n,convertDateFormatToIntlOptions as r}from"../../../intl/date.js";import{formatNumber as i,convertNumberFormatToIntlOptions as o}from"../../../intl/number.js";import{isRasterPixelValueField as a,featureHasFields as l,isTimeOnlyField as u}from"../../../layers/support/fieldUtils.js";import{getEffectiveLayerCapabilities as s}from"../../../layers/support/layerUtils.js";import{formatAnyDate as f,isAnyDateField as c}from"../../../smartMapping/support/utils.js";import{loadArcade as d}from"../../../support/arcadeOnDemand.js";import{getTimeZoneFormattingOptions as p}from"../../../time/timeZoneUtils.js";const m="esri.widgets.Feature.support.featureUtils",y=e.getLogger(m),g=/href=(""|'')/gi,I=/(\{([^\{\r\n]+)\})/g,h=/\'/g,b=/^\s*expression\//i,T=/(\n)/gi,w=/[\u00A0-\u9999<>\&]/gim,F=/href\s*=\s*(?:\"([^\"]+)\"|\'([^\']+)\')/gi,N=/^(?:mailto:|tel:)/,j="relationships/",Z=r("short-date-short-time");function E(e){if(null!=e)return(e.sourceLayer||e.layer)??void 0}async function x(e,t){return"function"==typeof e?e(t):e}function C(e=""){if(e)return!N.test(e.trim().toLowerCase())}function M(e){return!!e&&b.test(e)}function U(e,t){if(!M(t)||!e)return null;const n=t.replace(b,"").toLowerCase();let r=null;return e.some((e=>e.name.toLowerCase()===n&&(r=e,!0))),r}function q(e,t){const n=U(t,e?.fieldName);return n?n.title||null:e?e.label||e.fieldName:null}function A(e,t){const n=t.get(e.toLowerCase());return`{${n?.fieldName||e}}`}function L(e){return e.replaceAll(g,"")}function v(e,t){const n=$(t,e);return n?n.name:e}function R(e,t){return e&&e.map((e=>v(e,t)))}function $(e,t){return e&&"function"==typeof e.getField&&t?e.getField(t)??null:null}function k(e){return`${e}`.trim()}function D({attributes:e,globalAttributes:t,layer:n,text:r,expressionAttributes:i,fieldInfoMap:o}){return r?z({formattedAttributes:t,template:Q(r,{...t,...i,...e},n),fieldInfoMap:o}):""}function z({formattedAttributes:e,template:n,fieldInfoMap:r}){return k(L(t(t(n,(e=>A(e,r))),e)))}function O(e,t,n=!1){const r=t[e];if("string"==typeof r){const i="%27",o=(n?encodeURIComponent(r):r).replaceAll(h,i);t[e]=o}}function G(e,t=!1){const n={...e};return Object.keys(n).forEach((e=>O(e,n,t))),n}function S(e,n,r){const i=(n=k(n))&&"{"!==n[0];return t(e,G(r,i||!1))}function P(e,t){return e.replaceAll(I,((e,n,r)=>{const i=$(t,r);return i?`{${i.name}}`:n}))}function Q(e,t,n){const r=P(e,n);return r?r.replaceAll(F,((e,n,r)=>S(e,n||r,t))):r}function _(e,t){if("string"==typeof e&&t&&null==t.dateFormat&&(null!=t.places||null!=t.digitSeparator)){const t=Number(e);if(!isNaN(t))return t}return e}function H(e){return null!=e&&"object"==typeof e&&"fieldsIndex"in e&&"geometryType"in e&&"getField"in e&&"load"in e&&"loaded"in e&&"objectIdField"in e&&"spatialReference"in e&&"type"in e&&("feature"===e.type||"scene"===e.type)&&"when"in e}function B(e){return null!=e&&"object"==typeof e&&"createQuery"in e&&"queryFeatureCount"in e&&"queryObjectIds"in e&&"queryRelatedFeatures"in e&&"queryRelatedFeaturesCount"in e&&"relationships"in e}function J(e){return H(e)&&B(e)}function K(e){return!!e&&"object"==typeof e&&"sourceLayer"in e&&J(e.sourceLayer)}function V(e,t){const{fieldInfos:n,fieldName:r,preventPlacesFormatting:l,layer:u,timeZone:s}=t,c=Y(n,r),d=$(u,r);if(c&&!a(r)){const t=d?.type,n=c.format?.dateFormat;if("date"===t||"date-only"===t||"time-only"===t||"timestamp-offset"===t||n)return f(e,{format:n,fieldType:t,timeZoneOptions:{layerTimeZone:u&&"preferredTimeZone"in u?u.preferredTimeZone:null,viewTimeZone:s,datesInUnknownTimezone:!(!u||!("datesInUnknownTimezone"in u))&&!!u.datesInUnknownTimezone}})}const p=c?.format;return"string"==typeof e&&a(r)&&p?W(e,p):"string"==typeof(e=_(e,p))||null==e||null==p?ae(e):i(e,l?{...o(p),minimumFractionDigits:0,maximumFractionDigits:20}:o(p))}function W(e,t){return e=e.trim(),/\d{2}-\d{2}/.test(e)?e:e.includes(",")?X(e,",",", ",t):e.includes(";")?X(e,";","; ",t):e.includes(" ")?X(e," "," ",t):i(Number(e),o(t))}function X(e,t,n,r){return e.trim().split(t).map((e=>i(Number(e),o(r)))).join(n)}function Y(e,t){if(e?.length&&t)return e.find((e=>e.fieldName?.toLowerCase()===t.toLowerCase()))}function ee({fieldName:e,graphic:t,layer:n}){if(de(e))return null;if(!n||"function"!=typeof n.getFeatureType)return null;const{typeIdField:r}=n;if(!r||e!==r)return null;const i=n.getFeatureType(t);return i?i.name:null}function te({fieldName:e,value:t,graphic:n,layer:r}){if(de(e))return null;if(!r||"function"!=typeof r.getFieldDomain)return null;const i=n&&r.getFieldDomain(e,{feature:n});return i&&"coded-value"===i.type?i.getName(t):null}function ne(e,t,r,i){const{creatorField:o,creationDateField:a,editorField:l,editDateField:u}=e;if(!t)return;const s=p(i&&"preferredTimeZone"in i?i.preferredTimeZone:null,!(!i||!("datesInUnknownTimezone"in i))&&!!i.datesInUnknownTimezone,r,Z,"date"),f={...Z,...s},c=t[u];if("number"==typeof c){const e=t[l];return{type:"edit",date:n(c,f),user:e}}const d=t[a];if("number"==typeof d){const e=t[o];return{type:"create",date:n(d,f),user:e}}return null}function re(e,t){const n=new Map;return e?(e.forEach((e=>{const r=v(e.fieldName,t);e.fieldName=r,n.set(r.toLowerCase(),e)})),n):n}function ie(e){const t=[];if(!e)return t;const{fieldInfos:n,content:r}=e;return n&&t.push(...n),r&&Array.isArray(r)?(r.forEach((e=>{if("fields"===e.type){const n=e?.fieldInfos;n&&t.push(...n)}})),t):t}function oe(e){return e.replaceAll(w,(e=>`&#${e.charCodeAt(0)};`))}function ae(e){return"string"==typeof e?e.replaceAll(T,'<br class="esri-text-new-line" />'):e}function le(e){const{value:t,fieldName:n,fieldInfos:r,fieldInfoMap:i,layer:o,graphic:a,timeZone:l}=e;if(null==t)return"";const s=te({fieldName:n,value:t,graphic:a,layer:o});if(s)return s;const d=ee({fieldName:n,graphic:a,layer:o});if(d)return d;if(i.get(n.toLowerCase()))return V(t,{fieldInfos:r||Array.from(i.values()),fieldName:n,layer:o,timeZone:l});const p=o?.fieldsIndex?.get(n);return p&&(c(p)||u(p))?f(t,{fieldType:p.type,timeZoneOptions:{layerTimeZone:o&&"preferredTimeZone"in o?o.preferredTimeZone:null,viewTimeZone:l,datesInUnknownTimezone:!(!o||!("datesInUnknownTimezone"in o))&&!!o.datesInUnknownTimezone}}):ae(t)}function ue({fieldInfos:e,attributes:t,layer:n,graphic:r,fieldInfoMap:i,relatedInfos:o,timeZone:a}){const l={};return o?.forEach((t=>ye({attributes:l,relatedInfo:t,fieldInfoMap:i,fieldInfos:e,layer:n,timeZone:a}))),t&&Object.keys(t).forEach((o=>{const u=t[o];l[o]=le({fieldName:o,fieldInfos:e,fieldInfoMap:i,layer:n,value:u,graphic:r,timeZone:a})})),l}async function se(e,t){const{layer:n,graphic:r,outFields:i,objectIds:o,returnGeometry:a,spatialReference:l}=e,u=o[0];if("number"!=typeof u&&"string"!=typeof u){const e="Could not query required fields for the specified feature. The feature's ID is invalid.",t={layer:n,graphic:r,objectId:u,requiredFields:i};return y.warn(e,t),null}if(!s(n)?.operations?.supportsQuery){const e="The specified layer cannot be queried. The following fields will not be available.",t={layer:n,graphic:r,requiredFields:i,returnGeometry:a};return y.warn(e,t),null}const f=n.createQuery();f.objectIds=o,f.outFields=i?.length?i:[n.objectIdField],f.returnGeometry=!!a,f.returnZ=!!a,f.returnM=!!a,f.outSpatialReference=l;return(await n.queryFeatures(f,t)).features[0]}async function fe(e){if(!e.expressionInfos?.length)return!1;const t=await d(),{arcadeUtils:{hasGeometryFunctions:n}}=t;return n(e)}async function ce({graphic:e,popupTemplate:t,layer:n,spatialReference:r},i){if(!n||!t)return;if("function"==typeof n.load&&await n.load(i),!e.attributes)return;const o=e.attributes[n.objectIdField];if(null==o)return;const a=[o],u=await t.getRequiredFields(n.fieldsIndex),s=l(u,e),f=s?[]:u,c=t.returnGeometry||await fe(t);if(s&&!c)return;const d=await se({layer:n,graphic:e,outFields:f,objectIds:a,returnGeometry:c,spatialReference:r},i);d&&(d.geometry&&(e.geometry=d.geometry),d.attributes&&(e.attributes={...e.attributes,...d.attributes}))}function de(e=""){return!!e&&e.includes(j)}function pe(e){return e?`${j}${e.layerId}/${e.fieldName}`:""}function me({attributes:e,graphic:t,relatedInfo:n,fieldInfos:r,fieldInfoMap:i,layer:o,timeZone:a}){e&&t&&n&&Object.keys(t.attributes).forEach((l=>{const u=pe({layerId:n.relation.id.toString(),fieldName:l}),s=t.attributes[l];e[u]=le({fieldName:u,fieldInfos:r,fieldInfoMap:i,layer:o,value:s,graphic:t,timeZone:a})}))}function ye({attributes:e,relatedInfo:t,fieldInfoMap:n,fieldInfos:r,layer:i,timeZone:o}){e&&t&&(t.relatedFeatures?.forEach((a=>me({attributes:e,graphic:a,relatedInfo:t,fieldInfoMap:n,fieldInfos:r,layer:i,timeZone:o}))),t.relatedStatsFeatures?.forEach((a=>me({attributes:e,graphic:a,relatedInfo:t,fieldInfoMap:n,fieldInfos:r,layer:i,timeZone:o}))))}const ge=e=>{if(!e)return!1;const t=e.toUpperCase();return t.includes("CURRENT_TIMESTAMP")||t.includes("CURRENT_DATE")||t.includes("CURRENT_TIME")},Ie=({layer:e,method:t,query:n,definitionExpression:r})=>{if(!e.capabilities?.query?.supportsCacheHint||"attachments"===t)return;const i=null!=n.where?n.where:null,o=null!=n.geometry?n.geometry:null;ge(r)||ge(i)||"extent"===o?.type||"tile"===n.resultType||(n.cacheHint=!0)},he=({query:e,layer:t,method:n})=>{Ie({layer:t,method:n,query:e,definitionExpression:`${t.definitionExpression} ${t.serviceDefinitionExpression}`})},be=({queryPayload:e,layer:t,method:n})=>{Ie({layer:t,method:n,query:e,definitionExpression:`${t.definitionExpression} ${t.serviceDefinitionExpression}`})};function Te(e,t,n){return e&&t&&n?we(e.allLayers,t,n)||we(e.allTables,t,n):null}function we(e,t,n){const r="scene"===t.type&&t.associatedLayer?t.associatedLayer.url:t.url;return e.filter(J).find((e=>e!==t&&e.url===r&&e.layerId===n.relatedTableId))}function Fe(e){const t=e.getObjectId();return null!=t?`oid:${t}`:`uid:${e.uid}`}export{ae as applyTextFormattingHTML,re as createfieldInfoMap,Te as findRelatedLayer,P as fixTokens,ue as formatAttributes,ne as formatEditInfo,V as formatValueToFieldInfo,ie as getAllFieldInfos,Y as getFieldInfo,q as getFieldInfoLabel,v as getFixedFieldName,R as getFixedFieldNames,Fe as getHighlightKeyForFeature,E as getSourceLayer,x as graphicCallback,oe as htmlEntities,M as isExpressionField,H as isFeatureSupportedLayer,K as isGraphicForRelatableFeatureSupportedLayer,J as isRelatableFeatureSupportedLayer,B as isRelatableLayer,de as isRelatedField,he as preLayerQueryCallback,be as preRequestCallback,se as querySourceLayer,ce as queryUpdatedFeature,C as shouldOpenInNewTab,z as substituteAttributes,D as substituteFieldsInLinksAndAttributes};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import{CodedValue as l}from"../../layers/support/CodedValue.js";import n from"../../layers/support/CodedValueDomain.js";import"../../layers/support/Domain.js";import"../../layers/support/InheritedDomain.js";import"../../layers/support/RangeDomain.js";import{getDomainRange as s,validateDomainValue as r}from"../../layers/support/domainUtils.js";import{isFieldVisibleByDefault as u,getLowerCaseEditTrackingFields as o,isNumericField as a,isStringField as p,isDateField as d,isTimeOnlyField as m,getFieldRange as h,TypeValidationError as y,NumericRangeValidationError as c,validateFieldValue as f}from"../../layers/support/fieldUtils.js";import{isRelatableFeatureSupportedLayer as g}from"../Feature/support/featureUtils.js";import v from"./EditableInput.js";import{getNormalizedFeatureTypeInfo as b,isFieldElementWithInputType as E,valueIsInvalidSwitchValue as x,isFieldElementWithTextInput as _,isFieldElementWithShowNoValueOptionInput as V,LengthValidationError as T}from"./featureFormUtils.js";import{timeResolutionToStepMap as F,valueIsInRange as D}from"../support/dateUtils.js";var O;!function(e){e.Text="text",e.Number="number",e.Date="date",e.Unsupported="unsupported"}(O||(O={}));const I="__internal-type-based-coded-value-domain__";let N=class extends v{constructor(e){super(e),this._storedValue=null,this._valueOriginIsExpression=!1,this.error=null,this.preservesValueWhenHidden=!0,this.field=null,this.group=null,this.requiredExpressionExecutor=null,this.type="field",this._fieldInputWasVisibleDuringLifetime=!1,this.valueExpressionExecutor=null}get _dateRange(){const{element:e}=this;if("datetime-picker"===e?.input?.type){const{max:t,min:i}=e.input;return{max:t,min:i}}return{min:null,max:null}}get _configAllowsEdits(){const{element:e,layer:t,name:i}=this;if(null!=e)return e.editableExpression?!!this.evaluatedEditableExpression:!1!==e.editable;if(t?.userHasUpdateItemPrivileges)return!0;const l=t&&"popupTemplate"in t?t?.popupTemplate?.fieldInfos?.find((({fieldName:e})=>e===i)):null;return l?.isEditable??!0}get _layerAndFieldAllowEdits(){return this.layerAllowsEdits&&this.field?.editable}get _isVisibleByDefault(){const{field:e,layer:t}=this;return!!e?.visible&&u(e,t)}get _isEditTrackingField(){return o(this.layer).includes(this.name?.toLowerCase())}get _shouldUseValueExpression(){return this._layerAndFieldAllowEdits&&!this._configAllowsEdits&&null!=this.valueExpressionExecutor}get _isSubtypeField(){const{layer:e}=this;if(e&&"subtypeField"in e){const{subtypeField:t,fieldsIndex:i}=e;return(i.get(t)?.name??t)===this.name}return!1}get test(){return{_isSubtypeField:this._isSubtypeField}}get dataType(){const{field:e}=this;return a(e)?O.Number:p(e)?O.Text:d(e)||m(e)?O.Date:O.Unsupported}get dateDataType(){if(this.dataType===O.Date)return"date"!==this.field.type?"string":"number"}get domain(){const{layer:e}=this,{typeFieldName:t,types:i}=b(e);if(this._isSubtypeField&&"subtypes"in e&&e.subtypes)return new n({name:I,codedValues:e.subtypes.map((({code:e,name:t})=>new l({code:e,name:t})))});if(t===this.name&&null==this.field.domain)return new n({name:I,codedValues:i.map((({code:e,name:t})=>new l({code:e,name:t})))});const{feature:s}=this,r=e?.getFieldDomain(this.name,{feature:s}),u=this.element?.domain;return null!=u&&this._isDomainCompatible(u)?u:r}get editable(){return!!this._layerAndFieldAllowEdits&&(this.evaluatedEditableExpression??this._configAllowsEdits)}get evaluatedRequiredExpression(){const{requiredExpressionExecutor:e}=this;return null!=e?!!e.lastEvaluatedValue:null}get evaluatedValueExpression(){const{valueExpressionExecutor:e}=this;return null!=e?e.lastEvaluatedValue:null}get hint(){return this.element?.hint}get includeDate(){return!(this.dataType!==O.Date||"time-only"===this.field.type)}get includeTime(){const{element:e,field:t}=this;if(this.dataType!==O.Date)return!1;if("time-only"===t.type)return!0;if("date-only"===t.type)return!1;const i="datetime-picker"===e?.input?.type?e.input.includeTime:void 0;return void 0===i||i}get includeTimeOffset(){if("timestamp-offset"!==this.field.type)return!1;const e=this.element?.input;return!e||"datetimeoffset-picker"===e.type&&e.includeTimeOffset}set initialFeature(e){this._set("initialFeature",e),this.notifyChange("valid")}get inputType(){return this.element?.input?.type}get hasInvalidSwitchValue(){const{element:e}=this,t=E(e,"switch")?e.input:null;return!t||x(this.value,t)}get isRelationshipKeyField(){const{field:e,layer:t}=this;return g(t)&&!!t.relationships?.some((t=>t.keyField===e.name))}get label(){return this.element?.label||this.field.alias||this.field.name}get maxLength(){const e=-1;if(this.dataType===O.Date)return e;const{field:t,element:i}=this,l=t?.length,n=_(i)?i.input.maxLength:NaN;return null!=n&&!isNaN(n)&&n>=e&&(l===e||n<=l)?n:l}get minLength(){const e=-1;if(this.dataType===O.Date)return e;const{field:t,element:i}=this,l=t?.length,n=_(i)?i.input.minLength:NaN;return null!=n&&!isNaN(n)&&n>=e&&(l===e||n<=l)?n:e}get name(){return this.field?.name}get range(){const{_dateRange:e,domain:t,field:i}=this,{max:l,min:n}=e,r=null!=l&&w(l)?l.getTime():null,u=null!=n&&w(n)?n.getTime():null,o=s(t)||h(i);if(!o)return{max:r,min:u};const a=o.max===Number.MAX_VALUE?null:o.max,p=o.min===Number.MIN_VALUE?null:o.min;return{max:null!=r&&(null===a||null!=a&&r<a)?r:a,min:null!=u&&(null===p||null!=p&&u>p)?u:p}}get required(){const{editable:e,evaluatedRequiredExpression:t,field:i,visible:l,_isSubtypeField:n}=this;return!!e&&(!1===i?.nullable||(!!n||!(!l||null==t)&&t))}set required(e){this._overrideIfSome("required",e)}get showNoValueOptionEnabled(){const{element:e}=this;return!this.required&&(!V(e)||e.input.showNoValueOption)}get showNoValueLabel(){const{element:e}=this;return V(e)?e.input.noValueOptionLabel:null}get submittable(){const{field:e,required:t,valid:i,value:l}=this;return(!t||null!=l)&&(!!i||this.initialFeature.getAttribute(e.name)===l)}get timeResolution(){const e=this.element?.input;if(e&&("datetimeoffset-picker"===e.type||"time-picker"===e.type))return e.timeResolution??"minutes"}get timeStep(){return null!=this.timeResolution?F.get(this.timeResolution):void 0}get updating(){const{editableExpressionExecutor:e,valueExpressionExecutor:t,visibilityExpressionExecutor:i,preservesValueWhenHidden:l}=this;return null!=t&&t.updating||null!=e&&e.updating||!1===l&&null!=i&&i.updating}get valid(){const e=this.editable?this._validate():null;return this._set("error",e),null===e}get value(){if(this._fieldInputWasVisibleDuringLifetime=this._fieldInputWasVisibleDuringLifetime||this.visible&&!1!==this.group?.visible,!1===this.preservesValueWhenHidden&&this._fieldInputWasVisibleDuringLifetime&&(!1===this.evaluatedVisibilityExpression||!1===this.group?.evaluatedVisibilityExpression))return this._valueOriginIsExpression=!0,null!==this._storedValue&&this.set("_storedValue",null),null;if(this._shouldUseValueExpression){this._valueOriginIsExpression=!0;const e=this.evaluatedValueExpression;if(this.dataType===O.Date){if(e instanceof Date)return e.getTime();if("number"!=typeof e)return parseInt(e,10)}return null!=e&&"object"==typeof e?e.toString():e}return this._valueOriginIsExpression=!1,this._storedValue}set value(e){this.notifyChange("evaluatedVisibilityExpression"),this.set("_storedValue",e)}get valueOriginIsExpression(){return this._valueOriginIsExpression}get visible(){return!this._isEditTrackingField&&(null!=this.evaluatedVisibilityExpression?this.evaluatedVisibilityExpression:null!=this.element||this._isVisibleByDefault)}_isDomainCompatible(e){const{field:t}=this;if("coded-value"===e?.type){const i=typeof e.codedValues[0].code;if("string"===i&&p(t)||"number"===i&&a(t))return!0}return!!("range"===e?.type&&a(t)||d(t)||m(t))}_validate(){const{dataType:e,domain:t,field:i,initialFeature:l,minLength:n,range:s,required:u,valid:o,value:a}=this,p=u&&null==a,d=void 0!==o;return!p&&l.getAttribute(i.name)===a&&d?null:p?y.INVALID_TYPE:"text"===e&&n>-1&&"string"==typeof a&&a.length<n?T.TOO_SHORT:"date"===i.type&&null!=a&&s&&!D({value:a,max:s.max,min:s.min})?c.OUT_OF_RANGE:t?null!==a||u?r(t,a):null:f(i,a)}};e([t()],N.prototype,"_storedValue",void 0),e([t()],N.prototype,"_configAllowsEdits",null),e([t()],N.prototype,"_layerAndFieldAllowEdits",null),e([t()],N.prototype,"_isVisibleByDefault",null),e([t()],N.prototype,"_isEditTrackingField",null),e([t()],N.prototype,"_shouldUseValueExpression",null),e([t()],N.prototype,"_valueOriginIsExpression",void 0),e([t()],N.prototype,"_isSubtypeField",null),e([t()],N.prototype,"dataType",null),e([t()],N.prototype,"dateDataType",null),e([t()],N.prototype,"domain",null),e([t()],N.prototype,"editable",null),e([t({readOnly:!0})],N.prototype,"error",void 0),e([t({constructOnly:!0})],N.prototype,"preservesValueWhenHidden",void 0),e([t()],N.prototype,"evaluatedRequiredExpression",null),e([t()],N.prototype,"evaluatedValueExpression",null),e([t()],N.prototype,"field",void 0),e([t()],N.prototype,"group",void 0),e([t({readOnly:!0})],N.prototype,"hint",null),e([t()],N.prototype,"includeDate",null),e([t()],N.prototype,"includeTime",null),e([t()],N.prototype,"includeTimeOffset",null),e([t()],N.prototype,"initialFeature",null),e([t({readOnly:!0})],N.prototype,"inputType",null),e([t()],N.prototype,"hasInvalidSwitchValue",null),e([t()],N.prototype,"isRelationshipKeyField",null),e([t()],N.prototype,"label",null),e([t()],N.prototype,"maxLength",null),e([t()],N.prototype,"minLength",null),e([t({readOnly:!0})],N.prototype,"name",null),e([t()],N.prototype,"range",null),e([t()],N.prototype,"required",null),e([t()],N.prototype,"requiredExpressionExecutor",void 0),e([t()],N.prototype,"showNoValueOptionEnabled",null),e([t()],N.prototype,"submittable",null),e([t()],N.prototype,"timeResolution",null),e([t()],N.prototype,"timeStep",null),e([t({readOnly:!0})],N.prototype,"type",void 0),e([t()],N.prototype,"updating",null),e([t()],N.prototype,"valid",null),e([t({value:null})],N.prototype,"value",null),e([t()],N.prototype,"valueExpressionExecutor",void 0),e([t()],N.prototype,"valueOriginIsExpression",null),e([t()],N.prototype,"visible",null),N=e([i("esri.widgets.FeatureForm.FieldInput")],N);const w=e=>e&&!Number.isNaN(e.valueOf()),A=N;export{A as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import{CodedValue as l}from"../../layers/support/CodedValue.js";import n from"../../layers/support/CodedValueDomain.js";import"../../layers/support/Domain.js";import"../../layers/support/InheritedDomain.js";import"../../layers/support/RangeDomain.js";import{getDomainRange as s,validateDomainValue as r}from"../../layers/support/domainUtils.js";import{isFieldVisibleByDefault as u,getLowerCaseEditTrackingFields as o,isNumericField as a,isStringField as p,isTimeOnlyField as d,getFieldRange as m,TypeValidationError as h,NumericRangeValidationError as y,validateFieldValue as f}from"../../layers/support/fieldUtils.js";import{isAnyDateField as c}from"../../smartMapping/support/utils.js";import{isRelatableFeatureSupportedLayer as g}from"../Feature/support/featureUtils.js";import b from"./EditableInput.js";import{parseFormTemplateString as v,getNormalizedFeatureTypeInfo as x,isFieldElementWithInputType as E,valueIsInvalidSwitchValue as _,isFieldElementWithTextInput as V,isFieldElementWithShowNoValueOptionInput as T,LengthValidationError as F}from"./featureFormUtils.js";import{timeResolutionToStepMap as I,valueIsInRange as D}from"../support/dateUtils.js";var O;!function(e){e.Text="text",e.Number="number",e.Date="date",e.Unsupported="unsupported"}(O||(O={}));const N="__internal-type-based-coded-value-domain__";let w=class extends b{constructor(e){super(e),this._storedValue=null,this._valueOriginIsExpression=!1,this.error=null,this.preservesValueWhenHidden=!0,this.field=null,this.group=null,this.requiredExpressionExecutor=null,this.type="field",this._fieldInputWasVisibleDuringLifetime=!1,this.valueExpressionExecutor=null}get _dateRange(){const{element:e}=this;if("datetime-picker"===e?.input?.type){const{max:t,min:i}=e.input;return{max:t,min:i}}return{min:null,max:null}}get _configAllowsEdits(){const{element:e,layer:t,name:i}=this;if(null!=e)return e.editableExpression?!!this.evaluatedEditableExpression:!1!==e.editable;if(t?.userHasUpdateItemPrivileges)return!0;const l=t&&"popupTemplate"in t?t?.popupTemplate?.fieldInfos?.find((({fieldName:e})=>e===i)):null;return l?.isEditable??!0}get _layerAndFieldAllowEdits(){return this.layerAllowsEdits&&this.field?.editable}get _isVisibleByDefault(){const{field:e,layer:t}=this;return!!e?.visible&&u(e,t)}get _isEditTrackingField(){return o(this.layer).includes(this.name?.toLowerCase())}get _shouldUseValueExpression(){return this._layerAndFieldAllowEdits&&!this._configAllowsEdits&&null!=this.valueExpressionExecutor}get _isSubtypeField(){const{layer:e}=this;if(e&&"subtypeField"in e){const{subtypeField:t,fieldsIndex:i}=e;return(i.get(t)?.name??t)===this.name}return!1}get test(){return{_isSubtypeField:this._isSubtypeField}}get dataType(){const{field:e}=this;return a(e)?O.Number:p(e)?O.Text:c(e)||d(e)?O.Date:O.Unsupported}get dateDataType(){if(this.dataType===O.Date)return"date"!==this.field.type?"string":"number"}get description(){const{element:e,feature:t,layer:i,timeZone:l}=this,n=e?.description;return null!=i&&null!=n?v({label:n,attributes:t.attributes,fieldsIndex:i.fieldsIndex,timeZone:l}):n}get domain(){const{layer:e}=this,{typeFieldName:t,types:i}=x(e);if(this._isSubtypeField&&"subtypes"in e&&e.subtypes)return new n({name:N,codedValues:e.subtypes.map((({code:e,name:t})=>new l({code:e,name:t})))});if(t===this.name&&null==this.field.domain)return new n({name:N,codedValues:i.map((({code:e,name:t})=>new l({code:e,name:t})))});const{feature:s}=this,r=e?.getFieldDomain(this.name,{feature:s}),u=this.element?.domain;return null!=u&&this._isDomainCompatible(u)?u:r}get editable(){return!!this._layerAndFieldAllowEdits&&(this.evaluatedEditableExpression??this._configAllowsEdits)}get evaluatedRequiredExpression(){const{requiredExpressionExecutor:e}=this;return null!=e?!!e.lastEvaluatedValue:null}get evaluatedValueExpression(){const{valueExpressionExecutor:e}=this;return null!=e?e.lastEvaluatedValue:null}get hint(){return this.element?.hint}get includeDate(){return!(this.dataType!==O.Date||"time-only"===this.field.type)}get includeTime(){const{element:e,field:t}=this;if(this.dataType!==O.Date)return!1;if("time-only"===t.type)return!0;if("date-only"===t.type)return!1;const i="datetime-picker"===e?.input?.type?e.input.includeTime:void 0;return void 0===i||i}get includeTimeOffset(){if("timestamp-offset"!==this.field.type)return!1;const e=this.element?.input;return!e||"datetimeoffset-picker"===e.type&&e.includeTimeOffset}set initialFeature(e){this._set("initialFeature",e),this.notifyChange("valid")}get inputType(){return this.element?.input?.type}get hasInvalidSwitchValue(){const{element:e}=this,t=E(e,"switch")?e.input:null;return!t||_(this.value,t)}get isRelationshipKeyField(){const{field:e,layer:t}=this;return g(t)&&!!t.relationships?.some((t=>t.keyField===e.name))}get label(){const{element:e,feature:t,field:i,layer:l,timeZone:n}=this;return null!=l&&null!=e?.label?v({label:e.label,attributes:t.attributes,fieldsIndex:l.fieldsIndex,timeZone:n}):e?.label||i.alias||i.name}get maxLength(){const e=-1;if(this.dataType===O.Date)return e;const{field:t,element:i}=this,l=t?.length??-1,n=V(i)?i.input.maxLength:NaN;return null!=n&&!isNaN(n)&&n>=e&&(l===e||n<=l)?n:l}get minLength(){const e=-1;if(this.dataType===O.Date)return e;const{field:t,element:i}=this,l=t?.length??-1,n=V(i)?i.input.minLength:NaN;return null!=n&&!isNaN(n)&&n>=e&&(l===e||n<=l)?n:e}get name(){return this.field?.name}get range(){const{_dateRange:e,domain:t,field:i}=this,{max:l,min:n}=e,r=null!=l&&A(l)?l.getTime():null,u=null!=n&&A(n)?n.getTime():null,o=s(t)||m(i);if(!o)return{max:r,min:u};const a=o.max===Number.MAX_VALUE?null:o.max,p=o.min===Number.MIN_VALUE?null:o.min;return{max:null!=r&&(null===a||null!=a&&r<a)?r:a,min:null!=u&&(null===p||null!=p&&u>p)?u:p}}get required(){const{editable:e,evaluatedRequiredExpression:t,field:i,visible:l,_isSubtypeField:n}=this;return!!e&&(!1===i?.nullable||(!!n||!(!l||null==t)&&t))}set required(e){this._overrideIfSome("required",e)}get showNoValueOptionEnabled(){const{element:e}=this;return!this.required&&(!T(e)||e.input.showNoValueOption)}get showNoValueLabel(){const{element:e}=this;return T(e)?e.input.noValueOptionLabel:null}get submittable(){const{field:e,required:t,valid:i,value:l}=this;return(!t||null!=l)&&(!!i||this.initialFeature.getAttribute(e.name)===l)}get timeResolution(){const e=this.element?.input;if(e&&("datetimeoffset-picker"===e.type||"time-picker"===e.type))return e.timeResolution??"minutes"}get timeStep(){return null!=this.timeResolution?I.get(this.timeResolution):void 0}get updating(){const{editableExpressionExecutor:e,valueExpressionExecutor:t,visibilityExpressionExecutor:i,preservesValueWhenHidden:l}=this;return null!=t&&t.updating||null!=e&&e.updating||!1===l&&null!=i&&i.updating}get valid(){const e=this.editable?this._validate():null;return this._set("error",e),null===e}get value(){if(this._fieldInputWasVisibleDuringLifetime=this._fieldInputWasVisibleDuringLifetime||this.visible&&!1!==this.group?.visible,!1===this.preservesValueWhenHidden&&this._fieldInputWasVisibleDuringLifetime&&(!1===this.evaluatedVisibilityExpression||!1===this.group?.evaluatedVisibilityExpression))return this._valueOriginIsExpression=!0,null!==this._storedValue&&this.set("_storedValue",null),null;if(this._shouldUseValueExpression){this._valueOriginIsExpression=!0;const e=this.evaluatedValueExpression;if(this.dataType===O.Date){if(e instanceof Date)return e.getTime();if("number"!=typeof e)return parseInt(e,10)}return null!=e&&"object"==typeof e?e.toString():e}return this._valueOriginIsExpression=!1,this._storedValue}set value(e){this.notifyChange("evaluatedVisibilityExpression"),this.set("_storedValue",e)}get valueOriginIsExpression(){return this._valueOriginIsExpression}get visible(){return!this._isEditTrackingField&&(null!=this.evaluatedVisibilityExpression?this.evaluatedVisibilityExpression:null!=this.element||this._isVisibleByDefault)}_isDomainCompatible(e){const{field:t}=this;if("coded-value"===e?.type){const i=typeof e.codedValues[0].code;if("string"===i&&p(t)||"number"===i&&a(t))return!0}return!!("range"===e?.type&&a(t)||c(t)||d(t))}_validate(){const{dataType:e,domain:t,field:i,initialFeature:l,minLength:n,range:s,required:u,valid:o,value:a}=this,p=u&&null==a,d=void 0!==o;return!p&&l.getAttribute(i.name)===a&&d?null:p?h.INVALID_TYPE:"text"===e&&n>-1&&"string"==typeof a&&a.length<n?F.TOO_SHORT:"date"===i.type&&null!=a&&s&&!D({value:a,max:s.max,min:s.min})?y.OUT_OF_RANGE:t?null!==a||u?r(t,a):null:f(i,a)}};e([t()],w.prototype,"_storedValue",void 0),e([t()],w.prototype,"_configAllowsEdits",null),e([t()],w.prototype,"_layerAndFieldAllowEdits",null),e([t()],w.prototype,"_isVisibleByDefault",null),e([t()],w.prototype,"_isEditTrackingField",null),e([t()],w.prototype,"_shouldUseValueExpression",null),e([t()],w.prototype,"_valueOriginIsExpression",void 0),e([t()],w.prototype,"_isSubtypeField",null),e([t()],w.prototype,"dataType",null),e([t()],w.prototype,"dateDataType",null),e([t()],w.prototype,"description",null),e([t()],w.prototype,"domain",null),e([t()],w.prototype,"editable",null),e([t({readOnly:!0})],w.prototype,"error",void 0),e([t({constructOnly:!0})],w.prototype,"preservesValueWhenHidden",void 0),e([t()],w.prototype,"evaluatedRequiredExpression",null),e([t()],w.prototype,"evaluatedValueExpression",null),e([t()],w.prototype,"field",void 0),e([t()],w.prototype,"group",void 0),e([t({readOnly:!0})],w.prototype,"hint",null),e([t()],w.prototype,"includeDate",null),e([t()],w.prototype,"includeTime",null),e([t()],w.prototype,"includeTimeOffset",null),e([t()],w.prototype,"initialFeature",null),e([t({readOnly:!0})],w.prototype,"inputType",null),e([t()],w.prototype,"hasInvalidSwitchValue",null),e([t()],w.prototype,"isRelationshipKeyField",null),e([t()],w.prototype,"label",null),e([t()],w.prototype,"maxLength",null),e([t()],w.prototype,"minLength",null),e([t({readOnly:!0})],w.prototype,"name",null),e([t()],w.prototype,"range",null),e([t()],w.prototype,"required",null),e([t()],w.prototype,"requiredExpressionExecutor",void 0),e([t()],w.prototype,"showNoValueOptionEnabled",null),e([t()],w.prototype,"submittable",null),e([t()],w.prototype,"timeResolution",null),e([t()],w.prototype,"timeStep",null),e([t({readOnly:!0})],w.prototype,"type",void 0),e([t()],w.prototype,"updating",null),e([t()],w.prototype,"valid",null),e([t({value:null})],w.prototype,"value",null),e([t()],w.prototype,"valueExpressionExecutor",void 0),e([t()],w.prototype,"valueOriginIsExpression",null),e([t()],w.prototype,"visible",null),w=e([i("esri.widgets.FeatureForm.FieldInput")],w);const A=e=>e&&!Number.isNaN(e.valueOf()),j=w;export{j as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import{watch as t,initial as r}from"../../core/reactiveUtils.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import{getEffectiveLayerCapabilities as l}from"../../layers/support/layerUtils.js";import o from"../Feature/FeatureRelationship/FeatureRelationshipViewModel.js";import{isRelatableFeatureSupportedLayer as a}from"../Feature/support/featureUtils.js";import n from"./EditableInput.js";const p=3;let d=class extends n{constructor(e){super(e),this._relationshipVM=null,this.group=null,this.type="relationship",this.addHandles([t((()=>({feature:this.feature,element:this.element,layer:this.layer})),(e=>this._createRelationshipVM(e)),r)])}destroy(){this._relationshipVM?.destroy()}get canAddRelatedFeature(){const{editable:e,featureCount:t,relationship:r}=this;if(!r||!this.loaded||!this.relatedLayerAllowsAdds)return!1;const{cardinality:s,role:i}=r;return!("one-to-one"===s&&t>0)&&("many-to-many"!==s&&(!("one-to-many"===s&&"destination"===i&&t>0)&&e))}get displayCount(){return this.element.displayCount??p}get displayType(){return this.element.displayType}get editable(){return!!this.relatedLayerAllowsEdits&&(this.evaluatedEditableExpression??!0)}get featureCount(){return this._relationshipVM?.featureCount??0}get loaded(){return"loading"!==this._relationshipVM?.state}get map(){return this._get("map")}set map(e){e&&this._relationshipVM?.set("map",e),this._set("map",e)}get orderByFields(){return this.element.orderByFields}get originHasValidKey(){return!(!this.relationship||!this.feature.getAttribute(this.relationship.keyField))}get relationship(){return this._relationshipVM?.relationship}get relationshipId(){return this.element.relationshipId}get relatedFeatureInfos(){return this._relationshipVM?.relatedFeatureInfos??[]}get relatedLayer(){return this._relationshipVM?.relatedLayer}get relatedLayerIsTable(){return!!this.relatedLayer?.isTable}get relatedLayerAllowsAdds(){const{relatedLayer:e}=this;if(!e||!this.relatedLayerAllowsEdits)return!1;const t=l(e);return!!t?.operations?.supportsAdd}get relatedLayerAllowsEdits(){const{relatedLayer:e}=this;if(!e)return!1;const t=l(e);return!!t?.operations?.supportsEditing}get showAllEnabled(){return this._get("showAllEnabled")}set showAllEnabled(e){this._relationshipVM?.set("showAllEnabled",e),this._set("showAllEnabled",e)}get showAllActionVisible(){return!this.showAllEnabled&&this.featureCount>0&&this.featureCount>this.displayCount}get visible(){const{relationship:e}=this;if(!e)return!1;const{cardinality:t}=e;return"many-to-many"!==t&&(null!=this.evaluatedVisibilityExpression?this.evaluatedVisibilityExpression:null!=this.element)}get updating(){return"loading"===this._relationshipVM?.state||"querying"===this._relationshipVM?.state}incrementPage(){this._relationshipVM&&this._relationshipVM.featurePage++}getRelatedFeatureByObjectId(e){return this._relationshipVM?.getRelatedFeatureByObjectId(e)}_createRelationshipVM(e){const{feature:t,element:r,layer:s}=e;if(this._relationshipVM?.destroy(),!t||!r||!s)return;const{displayCount:i,map:l,orderByFields:n,relationshipId:p,showAllEnabled:d}=this;a(s)&&(this._relationshipVM=new o({graphic:t,displayCount:i,layer:s,map:l,orderByFields:n,relationshipId:p,showAllEnabled:d}))}};e([s()],d.prototype,"_relationshipVM",void 0),e([s()],d.prototype,"canAddRelatedFeature",null),e([s()],d.prototype,"displayCount",null),e([s()],d.prototype,"displayType",null),e([s()],d.prototype,"editable",null),e([s()],d.prototype,"featureCount",null),e([s()],d.prototype,"group",void 0),e([s()],d.prototype,"loaded",null),e([s()],d.prototype,"map",null),e([s()],d.prototype,"orderByFields",null),e([s()],d.prototype,"originHasValidKey",null),e([s()],d.prototype,"relationship",null),e([s()],d.prototype,"relationshipId",null),e([s()],d.prototype,"relatedFeatureInfos",null),e([s()],d.prototype,"relatedLayer",null),e([s()],d.prototype,"relatedLayerIsTable",null),e([s()],d.prototype,"relatedLayerAllowsAdds",null),e([s()],d.prototype,"relatedLayerAllowsEdits",null),e([s()],d.prototype,"showAllEnabled",null),e([s()],d.prototype,"showAllActionVisible",null),e([s({readOnly:!0})],d.prototype,"type",void 0),e([s()],d.prototype,"visible",null),e([s()],d.prototype,"updating",null),d=e([i("esri.widgets.FeatureForm.RelationshipInput")],d);const u=d;export{u as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import{watch as t,initial as r}from"../../core/reactiveUtils.js";import{property as i}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import{getEffectiveLayerCapabilities as s}from"../../layers/support/layerUtils.js";import o from"../Feature/FeatureRelationship/FeatureRelationshipViewModel.js";import{isRelatableFeatureSupportedLayer as a}from"../Feature/support/featureUtils.js";import n from"./EditableInput.js";import{getComputedAttributes as p,parseFormTemplateString as d}from"./featureFormUtils.js";const u=3;let h=class extends n{constructor(e){super(e),this._relationshipVM=null,this.group=null,this.type="relationship",this.addHandles([t((()=>({feature:this.feature,element:this.element,layer:this.layer})),(e=>this._createRelationshipVM(e)),r)])}destroy(){this._relationshipVM?.destroy()}get canAddRelatedFeature(){const{editable:e,featureCount:t,relationship:r}=this;if(!r||!this.loaded||!this.relatedLayerAllowsAdds)return!1;const{cardinality:i,role:l}=r;return!("one-to-one"===i&&t>0)&&("many-to-many"!==i&&(!("one-to-many"===i&&"destination"===l&&t>0)&&e))}get displayCount(){return this.element.displayCount??u}get displayType(){return this.element.displayType}get editable(){return!!this.relatedLayerAllowsEdits&&(this.evaluatedEditableExpression??!0)}get featureCount(){return this._relationshipVM?.featureCount??0}get loaded(){return"loading"!==this._relationshipVM?.state}get map(){return this._get("map")}set map(e){e&&this._relationshipVM?.set("map",e),this._set("map",e)}get orderByFields(){return this.element.orderByFields}get originHasValidKey(){return!(!this.relationship||!this.feature.getAttribute(this.relationship.keyField))}get relationship(){return this._relationshipVM?.relationship}get relationshipId(){return this.element.relationshipId}get relatedFeatureInfos(){const{_relationshipVM:e,timeZone:t}=this;if(!e?.relatedFeatures?.length||!e?.relatedLayer)return[];const{itemDescriptionFieldName:r,relatedFeatures:i,relatedLayer:l}=e,s=l&&"formTemplate"in l&&l.formTemplate?l.formTemplate.title:void 0;return i.map((e=>{let i;if(r){const s=e.getAttribute(r),o=l.fieldsIndex.get(r);if(o){const e=p({values:[s],fields:[o],timeZone:t??void 0})[r];null!=e&&(i=e.toString())}}return{feature:e,description:i,title:s?d({label:s,attributes:e.attributes,fieldsIndex:l.fieldsIndex,timeZone:t}):void 0}})).toArray()}get relatedLayer(){return this._relationshipVM?.relatedLayer}get relatedLayerIsTable(){return!!this.relatedLayer?.isTable}get relatedLayerAllowsAdds(){const{relatedLayer:e}=this;if(!e||!this.relatedLayerAllowsEdits)return!1;const t=s(e);return!!t?.operations?.supportsAdd}get relatedLayerAllowsEdits(){const{relatedLayer:e}=this;if(!e)return!1;const t=s(e);return!!t?.operations?.supportsEditing}get showAllEnabled(){return this._get("showAllEnabled")}set showAllEnabled(e){this._relationshipVM?.set("showAllEnabled",e),this._set("showAllEnabled",e)}get showAllActionVisible(){return!this.showAllEnabled&&this.featureCount>0&&this.featureCount>this.displayCount}get visible(){const{relationship:e}=this;if(!e)return!1;const{cardinality:t}=e;return"many-to-many"!==t&&(null!=this.evaluatedVisibilityExpression?this.evaluatedVisibilityExpression:null!=this.element)}get updating(){return"loading"===this._relationshipVM?.state||"querying"===this._relationshipVM?.state}incrementPage(){this._relationshipVM&&this._relationshipVM.featurePage++}getRelatedFeatureByObjectId(e){return this._relationshipVM?.getRelatedFeatureByObjectId(e)}_createRelationshipVM(e){const{feature:t,element:r,layer:i}=e;if(this._relationshipVM?.destroy(),!t||!r||!i)return;const{displayCount:l,map:s,orderByFields:n,relationshipId:p,showAllEnabled:d}=this;a(i)&&(this._relationshipVM=new o({graphic:t,displayCount:l,layer:i,map:s,orderByFields:n,relationshipId:p,showAllEnabled:d}))}};e([i()],h.prototype,"_relationshipVM",void 0),e([i()],h.prototype,"canAddRelatedFeature",null),e([i()],h.prototype,"displayCount",null),e([i()],h.prototype,"displayType",null),e([i()],h.prototype,"editable",null),e([i()],h.prototype,"featureCount",null),e([i()],h.prototype,"group",void 0),e([i()],h.prototype,"loaded",null),e([i()],h.prototype,"map",null),e([i()],h.prototype,"orderByFields",null),e([i()],h.prototype,"originHasValidKey",null),e([i()],h.prototype,"relationship",null),e([i()],h.prototype,"relationshipId",null),e([i()],h.prototype,"relatedFeatureInfos",null),e([i()],h.prototype,"relatedLayer",null),e([i()],h.prototype,"relatedLayerIsTable",null),e([i()],h.prototype,"relatedLayerAllowsAdds",null),e([i()],h.prototype,"relatedLayerAllowsEdits",null),e([i()],h.prototype,"showAllEnabled",null),e([i()],h.prototype,"showAllActionVisible",null),e([i({readOnly:!0})],h.prototype,"type",void 0),e([i()],h.prototype,"visible",null),e([i()],h.prototype,"updating",null),h=e([l("esri.widgets.FeatureForm.RelationshipInput")],h);const y=h;export{y as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import"../../intl.js";import{isSome as e}from"../../core/arrayUtils.js";import{neverReached as t}from"../../core/compilerUtils.js";import{templateHasKey as n,replace as r}from"../../core/string.js";import{DomainValidationError as o}from"../../layers/support/domainUtils.js";import{isDateField as i,NumericRangeValidationError as a,TypeValidationError as l}from"../../layers/support/fieldUtils.js";import{getLabelForDateFieldValue as s}from"../support/dateUtils.js";import{substitute as u}from"../../intl/substitute.js";const m=e=>"field"===e?.type,p=e=>"group"===e?.type,d=e=>"relationship"===e?.type,c=e=>!p(e)&&null!=e.group,f=e=>"field"===e.type,y=e=>"group"===e.type,b=e=>"relationship"===e.type,T=e=>e.reduce(((e,t)=>p(t)?[...e,...t.inputs]:[...e,t]),[]),E=e=>T(e).filter(m),v=e=>T(e).filter(d),O=e=>null!=e&&(g(e,"combo-box")||g(e,"radio-buttons")),g=(e,t)=>null!=e&&e.input?.type===t,x=e=>null!=e&&(g(e,"text-box")||g(e,"text-area")),j=({domain:e,inputType:t="text-box",dataType:n})=>"number"===n&&"text-box"===t&&(!e||"coded-value"!==e.type),V=e=>"items"in e,h={typeFieldName:null,types:[]};function U(t){const{attributes:r,fieldsIndex:o,label:i,timeZone:a}=t,l=Object.keys(r).filter((e=>n(i,e))),s=l.map((e=>r[e])),u=l.map((e=>o.get(e))).filter(e);return _(i,N({values:s,fields:u,timeZone:a}))}function N(e){const{fields:t,values:n,timeZone:r}=e,o=t.map(((e,t)=>{let o=n[t];if(e.domain&&"coded-value"===e.domain.type){const t=e.domain.codedValues.find((e=>e.code===o));t?.name&&(o=t.name)}return i(e)&&(o=s(e,o,{timeZone:"date"===e.type?r:void 0})),[e.name,o]}));return Object.fromEntries(o)}function _(e,t){return r(r(e,(e=>`{${e.toLowerCase()}}`)),Object.fromEntries(Object.entries(t).map((([e,t])=>[e.toLowerCase(),t]))))}const A=e=>e?"subtype-sublayer"===e.type?{typeFieldName:e.parent?.subtypeField,types:e.parent?.subtypes??[]}:"types"in e&&e.types?{typeFieldName:e.typeIdField,types:e.types.map((({id:e,name:t,domains:n})=>({code:e,name:t,domains:n})))}:h:h,I=(e,t)=>{if(!e)return!0;const{operations:n}=e;switch(t){case"INSERT":return n.supportsAdd;case"UPDATE":case"DELETE":return n.supportsUpdate;default:return!0}};var L;!function(e){e.TOO_SHORT="length-validation-error::too-short"}(L||(L={}));const F={type:"number"},D={type:"number",intlOptions:{notation:"scientific"}},R={day:"2-digit",month:"2-digit",year:"numeric",hour:"numeric",minute:"numeric",second:"numeric"};function Z(e){return e>=1e7||e<=-1e7}const w=(e,t,n)=>{const{dataType:r,error:i,minLength:s,value:m,required:p}=e;if(!t||!i)return null;if(p&&null===m)return t.validationErrors.cannotBeNull;if(i===o.VALUE_OUT_OF_RANGE||i===a.OUT_OF_RANGE){const o=e.range,i={type:"date",intlOptions:{...R,timeZone:n??void 0}};return u(t.validationErrors.outsideRange,o,{format:{max:"date"===r?i:Z(o.max)?D:F,min:"date"===r?i:Z(o.min)?D:F}})}return i===o.INVALID_CODED_VALUE?t.validationErrors.invalidCodedValue:i===l.INVALID_TYPE?t.validationErrors.invalidType:i===L.TOO_SHORT?u(t.validationErrors.tooShort,{min:s}):null},C=e=>{if(!e)return;const t=e.layer,n=t&&"geometryType"in t?t.geometryType:void 0,r=e.geometry?.type;return"polyline"===r||"polyline"===n?"line":r||n||"table"},S=e=>{const t=[];if(e.formTemplate){const{description:r,title:o}=e.formTemplate;e.fields?.forEach((e=>{const i=o&&n(o,e.name),a=r&&n(r,e.name);(i||a)&&t.push(e.name)}))}return t};function G(e){if("formTemplate"in e&&e.formTemplate){return(e.formTemplate.elements?.filter(f)??[]).some((({fieldName:t})=>!e.fieldsIndex.get(t)))}return!1}function H(e,t){return null==e||t.onValue!==e&&t.offValue!==e}function P(e,n){switch(n.objectType){case"any":return!0;case"null":return null==e;case"code":return e===n.codedValue?.code;case"range":return null!=e&&null!=n.minValue&&null!=n.maxValue&&+e>=n.minValue&&+e<=n.maxValue;default:return t(n.objectType),!1}}export{L as LengthValidationError,I as capabilitiesAllowEditType,E as flattenFieldInputs,T as flattenInputs,v as flattenRelationshipInputs,G as formTemplateHasInvalidFields,N as getComputedAttributes,w as getErrorMessageForFieldInput,S as getFieldsInTitleAndDesc,C as getIconForFeature,A as getNormalizedFeatureTypeInfo,f as isFieldElement,g as isFieldElementWithInputType,O as isFieldElementWithShowNoValueOptionInput,x as isFieldElementWithTextInput,m as isFieldInput,y as isGroupElement,p as isGroupInput,c as isInputInGroupInput,j as isNumberFieldInput,b as isRelationshipElement,d as isRelationshipInput,V as isTemplateItemGroup,U as parseFormTemplateString,_ as substituteFieldTemplatesInString,H as valueIsInvalidSwitchValue,P as valueIsValidContingentValue};
5
+ import"../../intl.js";import{isSome as e}from"../../core/arrayUtils.js";import{neverReached as t}from"../../core/compilerUtils.js";import{templateHasKey as n,replace as r}from"../../core/string.js";import{DomainValidationError as o}from"../../layers/support/domainUtils.js";import{isTimeOnlyField as i,NumericRangeValidationError as a,TypeValidationError as l}from"../../layers/support/fieldUtils.js";import{isAnyDateField as s}from"../../smartMapping/support/utils.js";import{getLabelForDateFieldValue as u}from"../support/dateUtils.js";import{substitute as p}from"../../intl/substitute.js";const m=e=>"field"===e?.type,d=e=>"group"===e?.type,c=e=>"relationship"===e?.type,f=e=>!d(e)&&null!=e.group,y=e=>"field"===e.type,b=e=>"group"===e.type,T=e=>"relationship"===e.type,E=e=>e.reduce(((e,t)=>d(t)?[...e,...t.inputs]:[...e,t]),[]),g=e=>E(e).filter(m),v=e=>E(e).filter(c),O=e=>null!=e&&(j(e,"combo-box")||j(e,"radio-buttons")),j=(e,t)=>null!=e&&e.input?.type===t,x=e=>null!=e&&(j(e,"text-box")||j(e,"text-area")),V=({domain:e,inputType:t="text-box",dataType:n})=>"number"===n&&"text-box"===t&&(!e||"coded-value"!==e.type),h=e=>"items"in e,U={typeFieldName:null,types:[]};function N(t){const{attributes:r,fieldsIndex:o,label:i,timeZone:a}=t,l=Object.keys(r).filter((e=>n(i,e))),s=l.map((e=>r[e])),u=l.map((e=>o.get(e))).filter(e);return A(i,_({values:s,fields:u,timeZone:a}))}function _(e){const{fields:t,values:n,timeZone:r}=e,o=t.map(((e,t)=>{let o=n[t];if(e.domain&&"coded-value"===e.domain.type){const t=e.domain.codedValues.find((e=>e.code===o));t?.name&&(o=t.name)}return(s(e)||i(e))&&(o=u(e,o,{timeZone:"date"===e.type&&null!=r?r:void 0})),[e.name,o]}));return Object.fromEntries(o)}function A(e,t){return r(r(e,(e=>`{${e.toLowerCase()}}`)),Object.fromEntries(Object.entries(t).map((([e,t])=>[e.toLowerCase(),t]))))}const I=e=>e?"subtype-sublayer"===e.type?{typeFieldName:e.parent?.subtypeField,types:e.parent?.subtypes??[]}:"types"in e&&e.types?{typeFieldName:e.typeIdField,types:e.types.map((({id:e,name:t,domains:n})=>({code:e,name:t,domains:n})))}:U:U,L=(e,t)=>{if(!e)return!0;const{operations:n}=e;switch(t){case"INSERT":return n.supportsAdd;case"UPDATE":case"DELETE":return n.supportsUpdate;default:return!0}};var F;!function(e){e.TOO_SHORT="length-validation-error::too-short"}(F||(F={}));const D={type:"number"},R={type:"number",intlOptions:{notation:"scientific"}},Z={day:"2-digit",month:"2-digit",year:"numeric",hour:"numeric",minute:"numeric",second:"numeric"};function w(e){return e>=1e7||e<=-1e7}const C=(e,t,n)=>{const{dataType:r,error:i,minLength:s,value:u,required:m}=e;if(!t||!i)return null;if(m&&null===u)return t.validationErrors.cannotBeNull;if(i===o.VALUE_OUT_OF_RANGE||i===a.OUT_OF_RANGE){const o=e.range,i={type:"date",intlOptions:{...Z,timeZone:n??void 0}};return p(t.validationErrors.outsideRange,o,{format:{max:"date"===r?i:w(o.max)?R:D,min:"date"===r?i:w(o.min)?R:D}})}return i===o.INVALID_CODED_VALUE?t.validationErrors.invalidCodedValue:i===l.INVALID_TYPE?t.validationErrors.invalidType:i===F.TOO_SHORT?p(t.validationErrors.tooShort,{min:s}):null},S=e=>{if(!e)return;const t=e.layer,n=t&&"geometryType"in t?t.geometryType:void 0,r=e.geometry?.type;return"polyline"===r||"polyline"===n?"line":r||n||"table"},G=e=>{const t=[];if(e.formTemplate){const{description:r,title:o}=e.formTemplate;e.fields?.forEach((e=>{const i=o&&n(o,e.name),a=r&&n(r,e.name);(i||a)&&t.push(e.name)}))}return t};function H(e){if("formTemplate"in e&&e.formTemplate){return(e.formTemplate.elements?.filter(y)??[]).some((({fieldName:t})=>!e.fieldsIndex.get(t)))}return!1}function P(e,t){return null==e||t.onValue!==e&&t.offValue!==e}function k(e,n){switch(n.objectType){case"any":return!0;case"null":return null==e;case"code":return e===n.codedValue?.code;case"range":return null!=e&&null!=n.minValue&&null!=n.maxValue&&+e>=n.minValue&&+e<=n.maxValue;default:return t(n.objectType),!1}}export{F as LengthValidationError,L as capabilitiesAllowEditType,g as flattenFieldInputs,E as flattenInputs,v as flattenRelationshipInputs,H as formTemplateHasInvalidFields,_ as getComputedAttributes,C as getErrorMessageForFieldInput,G as getFieldsInTitleAndDesc,S as getIconForFeature,I as getNormalizedFeatureTypeInfo,y as isFieldElement,j as isFieldElementWithInputType,O as isFieldElementWithShowNoValueOptionInput,x as isFieldElementWithTextInput,m as isFieldInput,b as isGroupElement,d as isGroupInput,f as isInputInGroupInput,V as isNumberFieldInput,T as isRelationshipElement,c as isRelationshipInput,h as isTemplateItemGroup,N as parseFormTemplateString,A as substituteFieldTemplatesInString,P as valueIsInvalidSwitchValue,k as valueIsValidContingentValue};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../Graphic.js";import"../../intl.js";import i from"../../core/Collection.js";import s from"../../core/Handles.js";import{debounce as r,ignoreAbortErrors as o}from"../../core/promiseUtils.js";import{on as l,watch as n}from"../../core/reactiveUtils.js";import{property as h}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as a}from"../../core/accessorSupport/decorators/subclass.js";import{getLowerCaseDefaultHiddenFields as d}from"../../layers/support/fieldUtils.js";import{getTimeZoneFormattingOptions as m,system as g}from"../../time/timeZoneUtils.js";import{highlightsSupported as c}from"../../views/support/layerViewUtils.js";import p from"./AttachmentsColumn.js";import u from"./FieldColumn.js";import y from"./Grid/Column.js";import f from"./Grid/Grid.js";import b from"./Grid/GridViewModel.js";import _ from"./Grid/GroupColumn.js";import w from"./support/FeatureStore.js";import"../support/widgetUtils.js";import{messageBundle as I}from"../support/decorators/messageBundle.js";import{onLocaleChange as v}from"../../intl/locale.js";import{convertDateFormatToIntlOptions as E}from"../../intl/date.js";import{fetchMessageBundle as F}from"../../intl/messages.js";let C=class extends b{constructor(e){super(e),this._debounceRefresh=r((()=>this._refresh())),this._highlights=new s,this.activeFilters=new i,this.autoRefreshEnabled=!0,this.cellClassNameGenerator=(e,t)=>e.path||null,this.columns=new i,this.dataProvider=async(e,t)=>{const{store:i}=this,{page:s,pageSize:r,sortOrders:o}=e,l=this._sortOrdersToLayerOrderByFields(o);t&&(i?(i.set({orderByFields:l}),"loaded"!==i.state&&"loading"!==i.state&&await i.load(),t&&t(await i.fetchItems({page:s,pageSize:r}))):t&&t([]))},this.editingEnabled=!1,this.grid=null,this.highlightEnabled=!0,this.itemIdPath="objectId",this.messagesCommon=null,this.messagesURIUtils=null,this.relatedRecordsEnabled=!1,this.returnGeometryEnabled=!1,this.store=null,this.tableTemplate=null,this.timeZone=null,this.view=null,this._onLayerRefresh=this._onLayerRefresh.bind(this),this._set("store",new w),this._set("grid",new f({itemIdPath:this.itemIdPath,viewModel:this}))}initialize(){const e=async()=>{this.messages=await F("esri/widgets/FeatureTable/t9n/FeatureTable"),this.messagesCommon=await F("esri/t9n/common"),this.messagesURIUtils=await F("esri/widgets/support/t9n/uriUtils")};e(),this.addHandles([v((()=>{e(),this._generateColumns()})),l((()=>this.highlightIds),"change",(e=>this._onHighlightIdsChange(e)),{onListenerAdd:()=>{this.highlightIds.forEach((e=>this._highlight(e)))},onListenerRemove:()=>{this.highlightIds.forEach((e=>this._unhighlight(e)))}}),n((()=>this.layerView),(()=>{this._highlights.removeAll(),this.layerView&&this.highlightEnabled&&this.highlightIds?.forEach((e=>this._highlight(e)))})),n((()=>this.highlightEnabled),(()=>{this._highlights.removeAll(),this.highlightEnabled&&this.highlightIds?.forEach((e=>this._highlight(e)))})),n((()=>this.relatedRecordsEnabled),(e=>this.store.relatedRecordsEnabled=e)),n((()=>this.returnGeometryEnabled),(e=>this.store.returnGeometry=e)),n((()=>this.layer?.loaded),(e=>e&&this._onLayerLoad())),n((()=>this.store.state),(e=>{"loaded"===e&&this.grid?.scrollToTop()})),n((()=>[this.messages,this.tableTemplate]),(()=>this.layer?.loaded&&this._generateColumns())),n((()=>[this.timeZone,this.view?.timeZone]),(()=>{this.columns.forEach((e=>{if("field"in e&&e.field){const{timeZone:t,timeZoneName:i}=this._getTimeZoneInfoForFieldColumn(e.field);e.set({timeZone:t,timeZoneName:i})}})),this.grid?.onColumnChange()})),n((()=>this.editingEnabled),(e=>{this.columns.forEach((t=>{"editingEnabled"in t&&(t.editingEnabled=e)})),this.grid?.onColumnChange()})),n((()=>this.layer?.definitionExpression),((e,t)=>(e||t)&&"loaded"===this.store.state&&this.reset())),n((()=>this.layer&&"timeExtent"in this.layer&&this.layer.timeExtent),((e,t)=>(e||t)&&!this.timeExtent&&"loaded"===this.store.state&&this.reset())),l((()=>this.layer),"refresh",(e=>this._onLayerRefresh(e)))])}destroy(){this._resetColumns(),this._highlights.removeAll(),this._highlights.destroy(),this.grid?.destroy(),this.columns?.destroy(),this.layer=null,this.view=null}get _defaultHiddenFields(){return d(this.layer)}get activeSortOrders(){return this.grid?.sortOrders?this.grid.sortOrders.map((({path:e,direction:t})=>({fieldName:e,direction:t}))):[]}set attachmentsEnabled(e){this.attachmentsEnabled!==e&&(this._set("attachmentsEnabled",e),this._generateColumns(),this.store.attachmentsEnabled=e)}set filterGeometry(e){if(!this.filterGeometry&&!e)return;const t=this.activeFilters.find((e=>"geometry"===e.type));t&&this.activeFilters.remove(t),this._set("filterGeometry",e),this.store.filterGeometry=e,e&&this.activeFilters.add({type:"geometry",geometry:e})}get hiddenFields(){return this._get("hiddenFields")??new i}set hiddenFields(e){Array.isArray(e)?this._set("hiddenFields",new i(e)):this._set("hiddenFields",e)}get highlightOnRowSelectEnabled(){return this.highlightEnabled}set highlightOnRowSelectEnabled(e){this.highlightEnabled=e}set layer(e){this._set("layer",e),this.grid?.clearSort(),this._resetColumns(),this.store.layer=e,e&&(e.loaded?this._onLayerLoad():e.load()),this.notifyChange("state")}get layerView(){return this.view?.allLayerViews.find((e=>e.layer===this.layer))||null}set messages(e){this.grid?.set("messages",e),this._set("messages",e)}get state(){const{store:e}=this;return e&&"disabled"!==e.state?"loading"===e.state?"loading":"loaded"===e.state?"loaded":"ready":"disabled"}set timeExtent(e){this._set("timeExtent",e),this.store.timeExtent=e}clearHighlights(){this._highlights.removeAll()}clearSelection(){this.grid?.clearSelection()}async deleteSelection(){const e=this.highlightIds.toArray();if(!e?.length)return;const{deleteFeatureResults:t}=await this.store.deleteRowsByObjectId(e),i=t.filter((e=>!e.error)).map((e=>e.objectId));i.length&&(this.deselectRows(i),await this.refresh())}deselectRows(e){const t=this._getStoreItemsFromSelectionParams(e);this.grid?.deselectRows(t)}filterBySelection(){const e=this.highlightIds.toArray();e.length&&(this.clearSelectionFilter(),this.store.objectIds=e,this.activeFilters.add({type:"selection",objectIds:e}))}getObjectIdIndex(e){return this.store?.getObjectIdIndex(e)}getValue(e,t){const i=this.store.getItemByObjectId(e);return i?.feature?.attributes[t]}get highlightIds(){return this._get("highlightIds")||new i}set highlightIds(e){Array.isArray(e)?this._set("highlightIds",new i(e)):this._set("highlightIds",e)}async refresh(){return o(this._debounceRefresh())}reset(){this.grid?.reset()}selectRows(e){const t=this._getStoreItemsFromSelectionParams(e);return this.grid?.selectRows(t)}scrollToIndex(e){this.grid?.scrollToIndex(e)}clearSelectionFilter(){this.store.objectIds=null;const e=this.activeFilters.find((e=>"selection"===e.type));e&&this.activeFilters.remove(e)}async zoomToSelection(){const{layer:e,view:t}=this,i=this.highlightIds.toArray();if(!e||!t||!i.length)return;const s=e.createQuery();s.objectIds=i,s.returnGeometry=!0;const r=await e.queryFeatures(s);try{await t.goTo(r.features)}catch(o){"AbortError"!==o.name&&console.error(o)}}async _refresh(){await this.store.refreshLayerInfo();const e=this.highlightIds.toArray();if(e.length){(await this.store.verifyFeaturesByObjectId(e)).forEach(((t,i)=>{t||this.deselectRows(e[i])}))}this.grid?.refreshPageCache()}_onLayerLoad(){const e=this.layer.capabilities?.query.maxRecordCount;e&&e<this.pageSize&&this.grid&&(this.grid.pageSize=e),this._generateColumns()}_onLayerRefresh(e){this.autoRefreshEnabled&&e.dataChanged&&this.refresh()}_generateColumns(){this._resetColumns();const e=[],t=this.tableTemplate?.columnTemplates?this._generateColumnsFromTemplates(this.tableTemplate.columnTemplates):this._generateDefaultFieldColumns();e.push(...t),e.length&&this.attachmentsEnabled&&e.push(this._generateDefaultAttachmentColumn()),this.columns.addMany([...e])}_generateColumnsFromTemplates(e){const{editingEnabled:t,grid:i,layer:s,messages:r,messagesCommon:o,messagesURIUtils:l,store:n,tableTemplate:h}=this,a=s?.fields??[],d=e=>{const t="fieldName"in e&&e.fieldName?.toLowerCase();return a.find((e=>t===e.name?.toLowerCase()))};return e.map((e=>({template:e,field:d(e)}))).filter((({template:e,field:t})=>null!=t||"group"===e.type&&"columnTemplates"in e||"column"===e.type)).map((({template:e,field:a})=>{if("fieldName"in e){const d=!1===e.visible||!0!==e.visible&&this._isFieldHidden(a?.name),{direction:m,formatFunction:g,initialSortPriority:c,menuConfig:p,textAlign:y}=e,f=h?.expressionInfos||null,{timeZone:b,timeZoneName:_}=this._getTimeZoneInfoForFieldColumn(a);return new u({direction:m,editingEnabled:t,expressionInfos:f,field:a,formatFunction:g,grid:i,hidden:d,initialSortPriority:c,layer:s,messages:r,messagesCommon:o,messagesURIUtils:l,menuConfig:p,store:n,template:e,textAlign:y,timeZone:b,timeZoneName:_})}if("group"===e.type&&"columnTemplates"in e){const t=this._generateColumnsFromTemplates(e.columnTemplates),i=!1===e.visible||!0!==e.visible&&this._isFieldHidden(e.label),{label:s}=e;return new _({header:s,columns:t,hidden:i})}return new y({...e,timeZone:this.timeZone})}))}_generateDefaultFieldColumns(){const{editingEnabled:e,grid:t,layer:i,messages:s,messagesCommon:r,messagesURIUtils:o,store:l}=this;return(this.layer?.fields??[]).map((n=>{const{timeZone:h,timeZoneName:a}=this._getTimeZoneInfoForFieldColumn(n);return new u({editingEnabled:e,field:n,grid:t,hidden:this._isFieldHidden(n.name),layer:i,store:l,messages:s,messagesCommon:r,messagesURIUtils:o,timeZone:h,timeZoneName:a})}))}_getTimeZoneInfoForFieldColumn(e){const{timeZone:t,view:i}=this;return!e||"date"!==e?.type&&"timestamp-offset"!==e?.type?{timeZone:void 0,timeZoneName:void 0}:m(this.layer,t??i?.timeZone??g,E("short-time"),e.type)}_generateDefaultAttachmentColumn(){return new p({header:this.messages?.attachments})}_sortOrdersToLayerOrderByFields(e){return e?.length?e.filter(((e,t,i)=>i.map((e=>e.path)).indexOf(e.path)===t)).filter((({direction:e})=>!!e)).map((({direction:e,path:t})=>t+" "+e?.toUpperCase())):[]}_isFieldHidden(e){const t=e?.toLowerCase();return(this.hiddenFields??this._defaultHiddenFields).some((e=>e.toLowerCase()===t))}_highlight(e){this.layerView&&c(this.layerView)&&this._highlights.add(this.layerView.highlight(e),e)}_unhighlight(e){this._highlights.remove(e)}_getStoreItemsFromSelectionParams(e){const i=[];return(e=e instanceof Array?e:[e]).forEach((e=>{let s=e instanceof t?e:null;const r=s?s.getObjectId():e;if("number"==typeof r||"string"==typeof r){if(!s){const e=this.store.getItemByObjectId(r);e&&(s=e.feature)}i.push({objectId:r,feature:s})}})),i}_onHighlightIdsChange(e){const{highlightEnabled:t}=this,{added:i,removed:s}=e;t&&(i.forEach((e=>this._highlight(e))),s.forEach((e=>this._unhighlight(e))))}_resetColumns(){this.columns.items.forEach((e=>e.destroy())),this.columns.removeAll()}};e([h()],C.prototype,"_defaultHiddenFields",null),e([h({readOnly:!0})],C.prototype,"activeFilters",void 0),e([h({readOnly:!0})],C.prototype,"activeSortOrders",null),e([h()],C.prototype,"attachmentsEnabled",null),e([h()],C.prototype,"autoRefreshEnabled",void 0),e([h()],C.prototype,"cellClassNameGenerator",void 0),e([h({readOnly:!0})],C.prototype,"columns",void 0),e([h()],C.prototype,"dataProvider",void 0),e([h()],C.prototype,"editingEnabled",void 0),e([h()],C.prototype,"filterGeometry",null),e([h({readOnly:!0})],C.prototype,"grid",void 0),e([h()],C.prototype,"hiddenFields",null),e([h()],C.prototype,"highlightEnabled",void 0),e([h()],C.prototype,"highlightOnRowSelectEnabled",null),e([h({readOnly:!0})],C.prototype,"itemIdPath",void 0),e([h()],C.prototype,"layer",null),e([h()],C.prototype,"layerView",null),e([h()],C.prototype,"messages",null),e([h(),I("esri/t9n/common")],C.prototype,"messagesCommon",void 0),e([h(),I("esri/widgets/support/t9n/uriUtils")],C.prototype,"messagesURIUtils",void 0),e([h()],C.prototype,"relatedRecordsEnabled",void 0),e([h()],C.prototype,"returnGeometryEnabled",void 0),e([h({readOnly:!0})],C.prototype,"state",null),e([h({readOnly:!0,type:w})],C.prototype,"store",void 0),e([h()],C.prototype,"tableTemplate",void 0),e([h()],C.prototype,"timeExtent",null),e([h()],C.prototype,"timeZone",void 0),e([h()],C.prototype,"view",void 0),e([h()],C.prototype,"highlightIds",null),C=e([a("esri.widgets.FeatureTable.FeatureTableViewModel")],C);const j=C;export{j as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../Graphic.js";import"../../intl.js";import i from"../../core/Collection.js";import s from"../../core/Handles.js";import{debounce as r,ignoreAbortErrors as o}from"../../core/promiseUtils.js";import{on as l,watch as n}from"../../core/reactiveUtils.js";import{property as h}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as a}from"../../core/accessorSupport/decorators/subclass.js";import{getLowerCaseDefaultHiddenFields as d}from"../../layers/support/fieldUtils.js";import{getTimeZoneFormattingOptions as m,system as g}from"../../time/timeZoneUtils.js";import{highlightsSupported as c}from"../../views/support/layerViewUtils.js";import p from"./AttachmentsColumn.js";import u from"./FieldColumn.js";import y from"./Grid/Column.js";import f from"./Grid/Grid.js";import b from"./Grid/GridViewModel.js";import _ from"./Grid/GroupColumn.js";import w from"./support/FeatureStore.js";import"../support/widgetUtils.js";import{messageBundle as I}from"../support/decorators/messageBundle.js";import{onLocaleChange as v}from"../../intl/locale.js";import{convertDateFormatToIntlOptions as E}from"../../intl/date.js";import{fetchMessageBundle as F}from"../../intl/messages.js";let C=class extends b{constructor(e){super(e),this._debounceRefresh=r((()=>this._refresh())),this._highlights=new s,this.activeFilters=new i,this.autoRefreshEnabled=!0,this.cellClassNameGenerator=(e,t)=>e.path||null,this.columns=new i,this.dataProvider=async(e,t)=>{const{store:i}=this,{page:s,pageSize:r,sortOrders:o}=e,l=this._sortOrdersToLayerOrderByFields(o);t&&(i?(i.set({orderByFields:l}),"loaded"!==i.state&&"loading"!==i.state&&await i.load(),t&&t(await i.fetchItems({page:s,pageSize:r}))):t&&t([]))},this.editingEnabled=!1,this.grid=null,this.highlightEnabled=!0,this.itemIdPath="objectId",this.messagesCommon=null,this.messagesURIUtils=null,this.relatedRecordsEnabled=!1,this.returnGeometryEnabled=!1,this.store=null,this.tableTemplate=null,this.timeZone=null,this.view=null,this._onLayerRefresh=this._onLayerRefresh.bind(this),this._set("store",new w),this._set("grid",new f({itemIdPath:this.itemIdPath,viewModel:this}))}initialize(){const e=async()=>{this.messages=await F("esri/widgets/FeatureTable/t9n/FeatureTable"),this.messagesCommon=await F("esri/t9n/common"),this.messagesURIUtils=await F("esri/widgets/support/t9n/uriUtils")};e(),this.addHandles([v((()=>{e(),this._generateColumns()})),l((()=>this.highlightIds),"change",(e=>this._onHighlightIdsChange(e)),{onListenerAdd:()=>{this.highlightIds.forEach((e=>this._highlight(e)))},onListenerRemove:()=>{this.highlightIds.forEach((e=>this._unhighlight(e)))}}),n((()=>this.layerView),(()=>{this._highlights.removeAll(),this.layerView&&this.highlightEnabled&&this.highlightIds?.forEach((e=>this._highlight(e)))})),n((()=>this.highlightEnabled),(()=>{this._highlights.removeAll(),this.highlightEnabled&&this.highlightIds?.forEach((e=>this._highlight(e)))})),n((()=>this.relatedRecordsEnabled),(e=>this.store.relatedRecordsEnabled=e)),n((()=>this.returnGeometryEnabled),(e=>this.store.returnGeometry=e)),n((()=>this.layer?.loaded),(e=>e&&this._onLayerLoad())),n((()=>this.store.state),(e=>{"loaded"===e&&this.grid?.scrollToTop()})),n((()=>[this.messages,this.tableTemplate]),(()=>this.layer?.loaded&&this._generateColumns())),n((()=>[this.timeZone,this.view?.timeZone]),(()=>{this.columns.forEach((e=>{if("field"in e&&e.field){const{timeZone:t,timeZoneName:i}=this._getTimeZoneInfoForFieldColumn(e.field);e.set({timeZone:t,timeZoneName:i})}})),this.grid?.onColumnChange()})),n((()=>this.editingEnabled),(e=>{this.columns.forEach((t=>{"editingEnabled"in t&&(t.editingEnabled=e)})),this.grid?.onColumnChange()})),n((()=>this.layer?.definitionExpression),((e,t)=>(e||t)&&"loaded"===this.store.state&&this.reset())),n((()=>this.layer&&"timeExtent"in this.layer&&this.layer.timeExtent),((e,t)=>(e||t)&&!this.timeExtent&&"loaded"===this.store.state&&this.reset())),l((()=>this.layer),"refresh",(e=>this._onLayerRefresh(e)))])}destroy(){this._resetColumns(),this._highlights.removeAll(),this._highlights.destroy(),this.grid?.destroy(),this.columns?.destroy(),this.layer=null,this.view=null}get _defaultHiddenFields(){return d(this.layer)}get activeSortOrders(){return this.grid?.sortOrders?this.grid.sortOrders.map((({path:e,direction:t})=>({fieldName:e,direction:t}))):[]}set attachmentsEnabled(e){this.attachmentsEnabled!==e&&(this._set("attachmentsEnabled",e),this._generateColumns(),this.store.attachmentsEnabled=e)}set filterGeometry(e){if(!this.filterGeometry&&!e)return;const t=this.activeFilters.find((e=>"geometry"===e.type));t&&this.activeFilters.remove(t),this._set("filterGeometry",e),this.store.filterGeometry=e,e&&this.activeFilters.add({type:"geometry",geometry:e})}get hiddenFields(){return this._get("hiddenFields")??new i}set hiddenFields(e){Array.isArray(e)?this._set("hiddenFields",new i(e)):this._set("hiddenFields",e)}get highlightOnRowSelectEnabled(){return this.highlightEnabled}set highlightOnRowSelectEnabled(e){this.highlightEnabled=e}set layer(e){this._set("layer",e),this.grid?.clearSort(),this._resetColumns(),this.store.layer=e,e&&(e.loaded?this._onLayerLoad():e.load()),this.notifyChange("state")}get layerView(){return this.view?.allLayerViews.find((e=>e.layer===this.layer))||null}set messages(e){this.grid?.set("messages",e),this._set("messages",e)}get state(){const{store:e}=this;return e&&"disabled"!==e.state?"loading"===e.state?"loading":"loaded"===e.state?"loaded":"ready":"disabled"}set timeExtent(e){this._set("timeExtent",e),this.store.timeExtent=e}clearHighlights(){this._highlights.removeAll()}clearSelection(){this.grid?.clearSelection()}async deleteSelection(){const e=this.highlightIds.toArray();if(!e?.length)return;const{deleteFeatureResults:t}=await this.store.deleteRowsByObjectId(e),i=t.filter((e=>!e.error)).map((e=>e.objectId));i.length&&(this.deselectRows(i),await this.refresh())}deselectRows(e){const t=this._getStoreItemsFromSelectionParams(e);this.grid?.deselectRows(t)}filterBySelection(){const e=this.highlightIds.toArray();e.length&&(this.clearSelectionFilter(),this.store.objectIds=e,this.activeFilters.add({type:"selection",objectIds:e}))}getObjectIdIndex(e){return this.store?.getObjectIdIndex(e)}getValue(e,t){const i=this.store.getItemByObjectId(e);return i?.feature?.attributes[t]}get highlightIds(){return this._get("highlightIds")||new i}set highlightIds(e){Array.isArray(e)?this._set("highlightIds",new i(e)):this._set("highlightIds",e)}async refresh(){return o(this._debounceRefresh())}reset(){this.grid?.reset()}selectRows(e){const t=this._getStoreItemsFromSelectionParams(e);return this.grid?.selectRows(t)}scrollToIndex(e){this.grid?.scrollToIndex(e)}clearSelectionFilter(){this.store.objectIds=null;const e=this.activeFilters.find((e=>"selection"===e.type));e&&this.activeFilters.remove(e)}async zoomToSelection(){const{layer:e,view:t}=this,i=this.highlightIds.toArray();if(!e||!t||!i.length)return;const s=e.createQuery();s.objectIds=i,s.returnGeometry=!0;const r=await e.queryFeatures(s);try{await t.goTo(r.features)}catch(o){"AbortError"!==o.name&&console.error(o)}}async _refresh(){await this.store.refreshLayerInfo();const e=this.highlightIds.toArray();if(e.length){(await this.store.verifyFeaturesByObjectId(e)).forEach(((t,i)=>{t||this.deselectRows(e[i])}))}this.grid?.refreshPageCache()}_onLayerLoad(){const e=this.layer.capabilities?.query.maxRecordCount;e&&e<this.pageSize&&this.grid&&(this.grid.pageSize=e),this._generateColumns()}_onLayerRefresh(e){this.autoRefreshEnabled&&e.dataChanged&&this.refresh()}_generateColumns(){this._resetColumns();const e=[],t=this.tableTemplate?.columnTemplates?this._generateColumnsFromTemplates(this.tableTemplate.columnTemplates):this._generateDefaultFieldColumns();e.push(...t),e.length&&this.attachmentsEnabled&&e.push(this._generateDefaultAttachmentColumn()),this.columns.addMany([...e])}_generateColumnsFromTemplates(e){const{editingEnabled:t,grid:i,layer:s,messages:r,messagesCommon:o,messagesURIUtils:l,store:n,tableTemplate:h}=this,a=s?.fields??[],d=e=>{const t="fieldName"in e&&e.fieldName?.toLowerCase();return a.find((e=>t===e.name?.toLowerCase()))};return e.map((e=>({template:e,field:d(e)}))).filter((({template:e,field:t})=>null!=t||"group"===e.type&&"columnTemplates"in e||"column"===e.type)).map((({template:e,field:a})=>{if("fieldName"in e){const d=!1===e.visible||!0!==e.visible&&this._isFieldHidden(a?.name),{direction:m,formatFunction:g,initialSortPriority:c,menuConfig:p,textAlign:y}=e,f=h?.expressionInfos||null,{timeZone:b,timeZoneName:_}=this._getTimeZoneInfoForFieldColumn(a);return new u({direction:m,editingEnabled:t,expressionInfos:f,field:a,formatFunction:g,grid:i,hidden:d,initialSortPriority:c,layer:s,messages:r,messagesCommon:o,messagesURIUtils:l,menuConfig:p,store:n,template:e,textAlign:y,timeZone:b,timeZoneName:_})}if("group"===e.type&&"columnTemplates"in e){const t=this._generateColumnsFromTemplates(e.columnTemplates),i=!1===e.visible||!0!==e.visible&&this._isFieldHidden(e.label),{label:s}=e;return new _({header:s,columns:t,hidden:i})}return new y({...e,timeZone:this.timeZone})}))}_generateDefaultFieldColumns(){const{editingEnabled:e,grid:t,layer:i,messages:s,messagesCommon:r,messagesURIUtils:o,store:l}=this;return(this.layer?.fields??[]).map((n=>{const{timeZone:h,timeZoneName:a}=this._getTimeZoneInfoForFieldColumn(n);return new u({editingEnabled:e,field:n,grid:t,hidden:this._isFieldHidden(n.name),layer:i,store:l,messages:s,messagesCommon:r,messagesURIUtils:o,timeZone:h,timeZoneName:a})}))}_getTimeZoneInfoForFieldColumn(e){const{timeZone:t,view:i}=this;return!e||"date"!==e?.type&&"timestamp-offset"!==e?.type?{timeZone:void 0,timeZoneName:void 0}:m("preferredTimeZone"in this.layer?this.layer.preferredTimeZone:null,"datesInUnknownTimezone"in this.layer&&this.layer.datesInUnknownTimezone,t??i?.timeZone??g,E("short-time"),e.type)}_generateDefaultAttachmentColumn(){return new p({header:this.messages?.attachments})}_sortOrdersToLayerOrderByFields(e){return e?.length?e.filter(((e,t,i)=>i.map((e=>e.path)).indexOf(e.path)===t)).filter((({direction:e})=>!!e)).map((({direction:e,path:t})=>t+" "+e?.toUpperCase())):[]}_isFieldHidden(e){const t=e?.toLowerCase();return(this.hiddenFields??this._defaultHiddenFields).some((e=>e.toLowerCase()===t))}_highlight(e){this.layerView&&c(this.layerView)&&this._highlights.add(this.layerView.highlight(e),e)}_unhighlight(e){this._highlights.remove(e)}_getStoreItemsFromSelectionParams(e){const i=[];return(e=e instanceof Array?e:[e]).forEach((e=>{let s=e instanceof t?e:null;const r=s?s.getObjectId():e;if("number"==typeof r||"string"==typeof r){if(!s){const e=this.store.getItemByObjectId(r);e&&(s=e.feature)}i.push({objectId:r,feature:s})}})),i}_onHighlightIdsChange(e){const{highlightEnabled:t}=this,{added:i,removed:s}=e;t&&(i.forEach((e=>this._highlight(e))),s.forEach((e=>this._unhighlight(e))))}_resetColumns(){this.columns.items.forEach((e=>e.destroy())),this.columns.removeAll()}};e([h()],C.prototype,"_defaultHiddenFields",null),e([h({readOnly:!0})],C.prototype,"activeFilters",void 0),e([h({readOnly:!0})],C.prototype,"activeSortOrders",null),e([h()],C.prototype,"attachmentsEnabled",null),e([h()],C.prototype,"autoRefreshEnabled",void 0),e([h()],C.prototype,"cellClassNameGenerator",void 0),e([h({readOnly:!0})],C.prototype,"columns",void 0),e([h()],C.prototype,"dataProvider",void 0),e([h()],C.prototype,"editingEnabled",void 0),e([h()],C.prototype,"filterGeometry",null),e([h({readOnly:!0})],C.prototype,"grid",void 0),e([h()],C.prototype,"hiddenFields",null),e([h()],C.prototype,"highlightEnabled",void 0),e([h()],C.prototype,"highlightOnRowSelectEnabled",null),e([h({readOnly:!0})],C.prototype,"itemIdPath",void 0),e([h()],C.prototype,"layer",null),e([h()],C.prototype,"layerView",null),e([h()],C.prototype,"messages",null),e([h(),I("esri/t9n/common")],C.prototype,"messagesCommon",void 0),e([h(),I("esri/widgets/support/t9n/uriUtils")],C.prototype,"messagesURIUtils",void 0),e([h()],C.prototype,"relatedRecordsEnabled",void 0),e([h()],C.prototype,"returnGeometryEnabled",void 0),e([h({readOnly:!0})],C.prototype,"state",null),e([h({readOnly:!0,type:w})],C.prototype,"store",void 0),e([h()],C.prototype,"tableTemplate",void 0),e([h()],C.prototype,"timeExtent",null),e([h()],C.prototype,"timeZone",void 0),e([h()],C.prototype,"view",void 0),e([h()],C.prototype,"highlightIds",null),C=e([a("esri.widgets.FeatureTable.FeatureTableViewModel")],C);const j=C;export{j as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../core/Logger.js";import{watch as n}from"../../core/reactiveUtils.js";import{property as i}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as r}from"../../core/accessorSupport/decorators/subclass.js";import{convertDateFormatToIntlOptions as a}from"../../intl/date.js";import{convertNumberFormatToIntlOptions as o,formatNumber as l}from"../../intl/number.js";import s from"../../layers/support/CodedValueDomain.js";import{isEditableLayer as u}from"../../layers/support/editableLayers.js";import{isNumericField as d,validateFieldValue as p,isStringField as c}from"../../layers/support/fieldUtils.js";import{getEffectiveLayerCapabilities as m}from"../../layers/support/layerUtils.js";import h from"../FeatureForm/FieldInput.js";import f from"./Grid/EditorColumn.js";import g from"../support/DatePicker.js";import{dateFieldsWithStringFieldValue as y,getLabelForDateFieldValue as v}from"../support/dateUtils.js";import{legacyIcon as b}from"../support/legacyIcon.js";import F from"../support/TimePicker.js";import{renderingSanitizer as _}from"../support/widgetUtils.js";const C={cancelEdit:"Escape"},E="esri-field-column",D={headerContent:`${E}__header-content`,headerLabel:`${E}__header-label`,input:`${E}__cell-input`,inputContainer:`${E}__cell__input-container`,dateInputContainer:`${E}__cell__date-input-container`,dateInputWrapper:`${E}__cell__date-input-wrapper`,button:`${E}__button`},L=a("short-date-short-time"),w=a("short-date"),I={useGrouping:!0,maximumFractionDigits:20};let j=class extends f{constructor(e){super(e),this._inputField=null,this.cellValueFormatFunction=({rowData:e,value:t})=>{if(this.formatFunction){const{template:e,field:n}=this;return this.formatFunction({template:e,field:n,value:_.sanitize(t)})}if(null===t)return"&nbsp;";const{field:n}=this,i=e?.item?.feature,r=this._getDomainForFeature(i);if(r){const e=this._getComputedDomain(t,r);if("date"===n.type&&"range"===r.type)return this._formatDateValueForDisplay(n,e);if(d(n)&&"range"===r.type){const e=this.template?.format,n=e?o(e):I;return l(parseFloat(t),n)}return y.has(n.type)?"range"===r.type?_.sanitize(v(n,e)):_.sanitize(e):e}if("date"===n.type||y.has(n.type))return this._formatDateValueForDisplay(n,t);if(d(n)){const e=this.template?.format,n=e?o(e):I;return l(parseFloat(t),n)}return _.sanitize(t)},this.cellValueValidatorFunction=({oldValue:e,value:n})=>{const{_inputField:i,field:r}=this;return!(i&&!i.valid)&&((!this.required||null!=n&&""!==n)&&(d(r)&&p(r,n)?(t.getLogger(this).warn("value-exceeds-valid-range","Field value exceeds valid range. Attempted edit was rejected."),!1):e!==n))},this.editingEnabled=!1,this.expressionInfos=null,this.field=null,this.formatFunction=null,this.headerRenderFunction=e=>{const{root:t}=e,{editable:n,editingEnabled:i,headerMenuEnabled:r,sortable:a}=this;if(this.removeCellContent(t),t.classList.add(D.headerContent),i&&!n&&t.appendChild(this.createLockedElement()),a)this.headerSorterRenderFunction(e);else{const e=document.createElement("div");e.classList.add(D.headerLabel),e.textContent=this.label,t.appendChild(e)}r&&this.headerMenuRenderFunction(e)},this.inputRenderFunction=({root:e,column:n,rowData:i})=>{if(this.activeEditInfo?.updating||!this.editable)return;const r=this.getCellValue(n,i),{field:a}=this;if(d(a)&&p(a,r))return void t.getLogger(this).warn("value-exceeds-valid-range","Field value is beyond supported limit. Editing is disabled for this field value.");const o=this.createInputElement({root:e,column:n,rowData:i,value:r});if(this._set("activeEditInfo",{column:n,input:o,root:e,rowData:i,updating:!0,oldValue:r}),"date"===this.field.type)return void this._renderDateEditors(r,e,o);const l=this.createInputContainer();l.appendChild(o),this.removeCellContent(e),e.appendChild(l),o.focus(),o instanceof HTMLInputElement&&o.select(),this.grid?.notifyResize()},this.layer=null,this.parseInputValueFunction=({input:e})=>{const t=this._inputField;if(!t)return null;const n=e.value,{dataType:i,required:r}=t;return r||""!==n?"number"===i||"date"===i?parseFloat(n):"text"===i?n.trim():n:null},this.store=null,this.template=null,this.updateRowItemFunction=({rowData:e,column:t,value:n})=>{e&&(e.item.feature.attributes[t.path]=n)},this.updateStoreItemFunction=async({rowData:e,column:t,value:n})=>{if(!e||!this.store)return;const i=e.item.objectId,r=this.store.getObjectIdIndex(i)??e.index;await this.store.updateItem({index:r,name:t.path,value:n})}}get alias(){return this.field?.alias}get defaultValue(){return this.field?.defaultValue}get description(){return this.template?.description??this.field?.description??null}get editable(){const{editingEnabled:e,field:t,layer:n,template:i}=this;if(null==t||null==n)return!1;const r=u(n),a=m(n),o=a?.operations.supportsUpdate;return!!(t.editable&&r&&o)&&(!y.has(t.type)&&(e?!(!1===i?.editable):!!i?.editable))}get header(){return this.template?.label||this.alias||this.path||null}get hidden(){const{template:e}=this;return!1===e?.visible||this._get("hidden")||!1}set hidden(e){this._set("hidden",e)}get loadingMessage(){return this.messages?.loading||"..."}get maxLength(){const{field:e,template:t}=this,n=e?.length,i=t?.input&&"maxLength"in t.input?t.input.maxLength:null;return null!=i&&!isNaN(i)&&i>=-1&&(-1===n||i<=n)?i:n}get minLength(){const{template:e,maxLength:t}=this,n=e?.input&&"minLength"in e.input?e.input.minLength:null;return t&&n<=t?n:null}get name(){return this.field?.name}get nullable(){return this.field?.nullable??!1}get path(){return this.field?.name}get required(){const{field:e,template:t}=this,n=e?.nullable,i=t?.required;return this.editable&&(!n||!0===i)}get sortable(){return!(!1===this.template?.sortable)}createInputElement({rowData:e,value:t}){const n=e?.item;if(!n?.feature)return null;this._inputField=this._setUpInputField(n.feature,t);const{field:i,maxLength:r,minLength:a,required:o}=this,{domain:l}=this._inputField;let s;"coded-value"===l?.type?(s=this._createSelectElement(t,l.codedValues.map((({code:e,name:t})=>({value:e,name:t}))),this._inputField),s.onchange=()=>{s.onblur=null,p()}):(s=document.createElement("input"),s.type=d(i)?"number":"text",r>-1&&(s.maxLength=r),a>0&&(s.minLength=a)),s.classList.add(D.input),s.value=t,s.required=o;let u=!1;s.onkeydown=e=>{u=e.key===C.cancelEdit},s.onblur=()=>{s.onblur=null,p()};const p=()=>{u?this.cancel():this.submit(),this._inputField=null};return s}createInputContainer(){const e=document.createElement("div");return e.classList.add(D.inputContainer),e}createLockedElement(){const e=document.createElement("div");return e.classList.add(b.locked),e}getCellValue({path:e},t){return t?.item?.feature?.attributes?.[e]??null}_formatDateValueForDisplay(e,t){const{timeZone:n,timeZoneName:i}=this;return null!=t?v(e,t,{...this._getDateFormatOptions(),timeZone:n??void 0,timeZoneName:i??void 0}):null}_renderDateEditors(e,t,i){const{messagesCommon:r,template:a,timeZone:o}=this,l=e?new Date(e):new Date(Date.now()),s=new g({dateInputEnabled:!0,timeZone:o,value:l}),u=new F({timeZone:o,value:l});i.value=l.getTime().toString();let d=!e;const p=()=>{d=!0;const e=this._getCombinedDateTime(s.value,u.value);i.value=e.getTime().toString()},c=()=>{d?this.submit():this.cancel()},m=()=>{i.value=null,this.submit()};n((()=>[s.value,u.value]),(()=>p()));const h=document.createElement("div"),f=document.createElement("div");s.container=h,u.container=f;const y=document.createElement("button");y.classList.add(D.button,b.save),y.onclick=()=>c(),y.title=r?.save;const v=document.createElement("button");v.classList.add(D.button,b.trash),v.onclick=()=>m(),v.title=r?.clear;const _=document.createElement("div");_.classList.add(D.dateInputWrapper),_.appendChild(h),(!a||a?.input&&"datetime-picker"===a.input.type&&!1!==a.input.includeTime)&&_.appendChild(f);const C=document.createElement("div");C.classList.add(D.dateInputContainer),C.appendChild(_),C.appendChild(y),C.appendChild(v),s.when((()=>{const e=s._inputOrButtonNode;e&&(e.onblur=e=>{const t=e.relatedTarget;t&&t.className.includes("esri-date-picker")||s.close(!1)}),this.grid?.notifyResize()})),u.when((()=>this.grid?.notifyResize())),this.removeCellContent(t),t.appendChild(C),this.grid?.notifyResize()}_createSelectElement(e,t,n){let i=!1;const r=t.map((t=>{t.value===e&&(i=!0);const n=document.createElement("option");return n.text=t.name,n.value=t.value,n}));if(null!=e&&""!==e&&!i){const t=document.createElement("option");t.text=e,t.value=e,r.unshift(t)}if(!n.required&&null==n.value){const e=document.createElement("option");e.value="",r.unshift(e)}const a=document.createElement("select");return r.forEach((e=>a.add(e))),a.value=e,a}_setUpInputField(e,t){const{field:n,layer:i}=this,r=new h({feature:e,initialFeature:e.clone(),field:n,layer:i});return r.set("value",t),r}_isDomainCompatible(e){const{field:t}=this;if(e&&"coded-value"===e.type){const n=typeof e.codedValues[0].code;if("string"===n&&c(t)||"number"===n&&d(t))return!0}return!(!e||"range"!==e.type||!d(t))}_getDomainForFeature(e){const{layer:t,name:n,template:i}=this;if(!t)return null;if("wfs"===t.type||"geojson"===t.type||"csv"===t.type)return null;if(i?.domain&&this._isDomainCompatible(i.domain))return i.domain;const{typeIdField:r}=t,a=r===n,o=this.field.domain;if(a&&!o)return new s({name:"__internal-type-based-coded-value-domain__",codedValues:t.types?.map((({id:e,name:t})=>({code:e,name:t})))});return r&&null!=n&&t.getFieldDomain(n,{feature:e})||o}_getComputedDomain(e,t){if(!t)return null;if("range"===t.type)return e;if("coded-value"===t.type){const n=t.codedValues.filter((t=>t.hasOwnProperty("code")&&t.code===e));return n&&n.length?n[0].name:e}return null}_getCombinedDateTime(e,t){return new Date(e.getFullYear(),e.getMonth(),e.getDate(),t.getHours(),t.getMinutes(),t.getSeconds())}_getDateFormatOptions(){const{template:e}=this,t=e?.format?.dateFormat;return t?a(t):e?.input&&"includeTime"in e.input&&!1===e.input.includeTime?w:L}};e([i({readOnly:!0})],j.prototype,"alias",null),e([i()],j.prototype,"cellValueFormatFunction",void 0),e([i()],j.prototype,"cellValueValidatorFunction",void 0),e([i({readOnly:!0})],j.prototype,"defaultValue",null),e([i({readOnly:!0})],j.prototype,"description",null),e([i({readOnly:!0})],j.prototype,"editable",null),e([i()],j.prototype,"editingEnabled",void 0),e([i()],j.prototype,"expressionInfos",void 0),e([i()],j.prototype,"field",void 0),e([i()],j.prototype,"formatFunction",void 0),e([i({readOnly:!0})],j.prototype,"header",null),e([i()],j.prototype,"hidden",null),e([i()],j.prototype,"headerRenderFunction",void 0),e([i()],j.prototype,"inputRenderFunction",void 0),e([i()],j.prototype,"layer",void 0),e([i({readOnly:!0})],j.prototype,"loadingMessage",null),e([i()],j.prototype,"maxLength",null),e([i()],j.prototype,"minLength",null),e([i({readOnly:!0})],j.prototype,"name",null),e([i({readOnly:!0})],j.prototype,"nullable",null),e([i()],j.prototype,"parseInputValueFunction",void 0),e([i({readOnly:!0})],j.prototype,"path",null),e([i({readOnly:!0})],j.prototype,"required",null),e([i()],j.prototype,"sortable",null),e([i()],j.prototype,"store",void 0),e([i()],j.prototype,"template",void 0),e([i()],j.prototype,"updateRowItemFunction",void 0),e([i()],j.prototype,"updateStoreItemFunction",void 0),j=e([r("esri.widgets.FeatureTable.FieldColumn")],j);const x=j;export{x as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../core/Logger.js";import{watch as n}from"../../core/reactiveUtils.js";import{property as i}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as r}from"../../core/accessorSupport/decorators/subclass.js";import{convertDateFormatToIntlOptions as a}from"../../intl/date.js";import{convertNumberFormatToIntlOptions as o,formatNumber as l}from"../../intl/number.js";import s from"../../layers/support/CodedValueDomain.js";import{isEditableLayer as u}from"../../layers/support/editableLayers.js";import{isNumericField as d,validateFieldValue as p,isStringField as c}from"../../layers/support/fieldUtils.js";import{getEffectiveLayerCapabilities as m}from"../../layers/support/layerUtils.js";import h from"../FeatureForm/FieldInput.js";import f from"./Grid/EditorColumn.js";import g from"../support/DatePicker.js";import{dateFieldsWithStringFieldValue as y,getLabelForDateFieldValue as v}from"../support/dateUtils.js";import{legacyIcon as b}from"../support/legacyIcon.js";import F from"../support/TimePicker.js";import{renderingSanitizer as _}from"../support/widgetUtils.js";const C={cancelEdit:"Escape"},E="esri-field-column",D={headerContent:`${E}__header-content`,headerLabel:`${E}__header-label`,input:`${E}__cell-input`,inputContainer:`${E}__cell__input-container`,dateInputContainer:`${E}__cell__date-input-container`,dateInputWrapper:`${E}__cell__date-input-wrapper`,button:`${E}__button`},L=a("short-date-short-time"),w=a("short-date"),I={useGrouping:!0,maximumFractionDigits:20};let j=class extends f{constructor(e){super(e),this._inputField=null,this.cellValueFormatFunction=({rowData:e,value:t})=>{if(this.formatFunction){const{template:e,field:n}=this;return this.formatFunction({template:e,field:n,value:_.sanitize(t)})}if(null===t)return"&nbsp;";const{field:n}=this,i=e?.item?.feature,r=this._getDomainForFeature(i);if(r){const e=this._getComputedDomain(t,r);if("date"===n.type&&"range"===r.type)return this._formatDateValueForDisplay(n,e);if(d(n)&&"range"===r.type){const e=this.template?.format,n=e?o(e):I;return l(parseFloat(t),n)}return y.has(n.type)?"range"===r.type?_.sanitize(v(n,e)):_.sanitize(e):e}if("date"===n.type||y.has(n.type))return this._formatDateValueForDisplay(n,t);if(d(n)){const e=this.template?.format,n=e?o(e):I;return l(parseFloat(t),n)}return _.sanitize(t)},this.cellValueValidatorFunction=({oldValue:e,value:n})=>{const{_inputField:i,field:r}=this;return!(i&&!i.valid)&&((!this.required||null!=n&&""!==n)&&(d(r)&&p(r,n)?(t.getLogger(this).warn("value-exceeds-valid-range","Field value exceeds valid range. Attempted edit was rejected."),!1):e!==n))},this.editingEnabled=!1,this.expressionInfos=null,this.field=null,this.formatFunction=null,this.headerRenderFunction=e=>{const{root:t}=e,{editable:n,editingEnabled:i,headerMenuEnabled:r,sortable:a}=this;if(this.removeCellContent(t),t.classList.add(D.headerContent),i&&!n&&t.appendChild(this.createLockedElement()),a)this.headerSorterRenderFunction(e);else{const e=document.createElement("div");e.classList.add(D.headerLabel),e.textContent=this.label,t.appendChild(e)}r&&this.headerMenuRenderFunction(e)},this.inputRenderFunction=({root:e,column:n,rowData:i})=>{if(this.activeEditInfo?.updating||!this.editable)return;const r=this.getCellValue(n,i),{field:a}=this;if(d(a)&&p(a,r))return void t.getLogger(this).warn("value-exceeds-valid-range","Field value is beyond supported limit. Editing is disabled for this field value.");const o=this.createInputElement({root:e,column:n,rowData:i,value:r});if(this._set("activeEditInfo",{column:n,input:o,root:e,rowData:i,updating:!0,oldValue:r}),"date"===this.field.type)return void this._renderDateEditors(r,e,o);const l=this.createInputContainer();l.appendChild(o),this.removeCellContent(e),e.appendChild(l),o.focus(),o instanceof HTMLInputElement&&o.select(),this.grid?.notifyResize()},this.layer=null,this.parseInputValueFunction=({input:e})=>{const t=this._inputField;if(!t)return null;const n=e.value,{dataType:i,required:r}=t;return r||""!==n?"number"===i||"date"===i?parseFloat(n):"text"===i?n.trim():n:null},this.store=null,this.template=null,this.updateRowItemFunction=({rowData:e,column:t,value:n})=>{e&&(e.item.feature.attributes[t.path]=n)},this.updateStoreItemFunction=async({rowData:e,column:t,value:n})=>{if(!e||!this.store)return;const i=e.item.objectId,r=this.store.getObjectIdIndex(i)??e.index;await this.store.updateItem({index:r,name:t.path,value:n})}}get alias(){return this.field?.alias}get defaultValue(){return this.field?.defaultValue}get description(){return this.template?.description??this.field?.description??null}get editable(){const{editingEnabled:e,field:t,layer:n,template:i}=this;if(null==t||null==n)return!1;const r=u(n),a=m(n),o=a?.operations.supportsUpdate;return!!(t.editable&&r&&o)&&(!y.has(t.type)&&(e?!(!1===i?.editable):!!i?.editable))}get header(){return this.template?.label||this.alias||this.path||null}get hidden(){const{template:e}=this;return!1===e?.visible||this._get("hidden")||!1}set hidden(e){this._set("hidden",e)}get loadingMessage(){return this.messages?.loading||"..."}get maxLength(){const{field:e,template:t}=this,n=e?.length??-1,i=t?.input&&"maxLength"in t.input?t.input.maxLength:null;return null!=i&&!isNaN(i)&&i>=-1&&(-1===n||i<=n)?i:n}get minLength(){const{template:e,maxLength:t}=this,n=e?.input&&"minLength"in e.input?e.input.minLength:null;return t&&n<=t?n:null}get name(){return this.field?.name}get nullable(){return this.field?.nullable??!1}get path(){return this.field?.name}get required(){const{field:e,template:t}=this,n=e?.nullable,i=t?.required;return this.editable&&(!n||!0===i)}get sortable(){return!(!1===this.template?.sortable)}createInputElement({rowData:e,value:t}){const n=e?.item;if(!n?.feature)return null;this._inputField=this._setUpInputField(n.feature,t);const{field:i,maxLength:r,minLength:a,required:o}=this,{domain:l}=this._inputField;let s;"coded-value"===l?.type?(s=this._createSelectElement(t,l.codedValues.map((({code:e,name:t})=>({value:e,name:t}))),this._inputField),s.onchange=()=>{s.onblur=null,p()}):(s=document.createElement("input"),s.type=d(i)?"number":"text",r>-1&&(s.maxLength=r),a>0&&(s.minLength=a)),s.classList.add(D.input),s.value=t,s.required=o;let u=!1;s.onkeydown=e=>{u=e.key===C.cancelEdit},s.onblur=()=>{s.onblur=null,p()};const p=()=>{u?this.cancel():this.submit(),this._inputField=null};return s}createInputContainer(){const e=document.createElement("div");return e.classList.add(D.inputContainer),e}createLockedElement(){const e=document.createElement("div");return e.classList.add(b.locked),e}getCellValue({path:e},t){return t?.item?.feature?.attributes?.[e]??null}_formatDateValueForDisplay(e,t){const{timeZone:n,timeZoneName:i}=this;return null!=t?v(e,t,{...this._getDateFormatOptions(),timeZone:n??void 0,timeZoneName:i??void 0}):null}_renderDateEditors(e,t,i){const{messagesCommon:r,template:a,timeZone:o}=this,l=e?new Date(e):new Date(Date.now()),s=new g({dateInputEnabled:!0,timeZone:o,value:l}),u=new F({timeZone:o,value:l});i.value=l.getTime().toString();let d=!e;const p=()=>{d=!0;const e=this._getCombinedDateTime(s.value,u.value);i.value=e.getTime().toString()},c=()=>{d?this.submit():this.cancel()},m=()=>{i.value=null,this.submit()};n((()=>[s.value,u.value]),(()=>p()));const h=document.createElement("div"),f=document.createElement("div");s.container=h,u.container=f;const y=document.createElement("button");y.classList.add(D.button,b.save),y.onclick=()=>c(),y.title=r?.save;const v=document.createElement("button");v.classList.add(D.button,b.trash),v.onclick=()=>m(),v.title=r?.clear;const _=document.createElement("div");_.classList.add(D.dateInputWrapper),_.appendChild(h),(!a||a?.input&&"datetime-picker"===a.input.type&&!1!==a.input.includeTime)&&_.appendChild(f);const C=document.createElement("div");C.classList.add(D.dateInputContainer),C.appendChild(_),C.appendChild(y),C.appendChild(v),s.when((()=>{const e=s._inputOrButtonNode;e&&(e.onblur=e=>{const t=e.relatedTarget;t&&t.className.includes("esri-date-picker")||s.close(!1)}),this.grid?.notifyResize()})),u.when((()=>this.grid?.notifyResize())),this.removeCellContent(t),t.appendChild(C),this.grid?.notifyResize()}_createSelectElement(e,t,n){let i=!1;const r=t.map((t=>{t.value===e&&(i=!0);const n=document.createElement("option");return n.text=t.name,n.value=t.value,n}));if(null!=e&&""!==e&&!i){const t=document.createElement("option");t.text=e,t.value=e,r.unshift(t)}if(!n.required&&null==n.value){const e=document.createElement("option");e.value="",r.unshift(e)}const a=document.createElement("select");return r.forEach((e=>a.add(e))),a.value=e,a}_setUpInputField(e,t){const{field:n,layer:i}=this,r=new h({feature:e,initialFeature:e.clone(),field:n,layer:i});return r.set("value",t),r}_isDomainCompatible(e){const{field:t}=this;if(e&&"coded-value"===e.type){const n=typeof e.codedValues[0].code;if("string"===n&&c(t)||"number"===n&&d(t))return!0}return!(!e||"range"!==e.type||!d(t))}_getDomainForFeature(e){const{layer:t,name:n,template:i}=this;if(!t)return null;if("wfs"===t.type||"geojson"===t.type||"csv"===t.type)return null;if(i?.domain&&this._isDomainCompatible(i.domain))return i.domain;const{typeIdField:r}=t,a=r===n,o=this.field.domain;if(a&&!o)return new s({name:"__internal-type-based-coded-value-domain__",codedValues:t.types?.map((({id:e,name:t})=>({code:e,name:t})))});return r&&null!=n&&t.getFieldDomain(n,{feature:e})||o}_getComputedDomain(e,t){if(!t)return null;if("range"===t.type)return e;if("coded-value"===t.type){const n=t.codedValues.filter((t=>t.hasOwnProperty("code")&&t.code===e));return n&&n.length?n[0].name:e}return null}_getCombinedDateTime(e,t){return new Date(e.getFullYear(),e.getMonth(),e.getDate(),t.getHours(),t.getMinutes(),t.getSeconds())}_getDateFormatOptions(){const{template:e}=this,t=e?.format?.dateFormat;return t?a(t):e?.input&&"includeTime"in e.input&&!1===e.input.includeTime?w:L}};e([i({readOnly:!0})],j.prototype,"alias",null),e([i()],j.prototype,"cellValueFormatFunction",void 0),e([i()],j.prototype,"cellValueValidatorFunction",void 0),e([i({readOnly:!0})],j.prototype,"defaultValue",null),e([i({readOnly:!0})],j.prototype,"description",null),e([i({readOnly:!0})],j.prototype,"editable",null),e([i()],j.prototype,"editingEnabled",void 0),e([i()],j.prototype,"expressionInfos",void 0),e([i()],j.prototype,"field",void 0),e([i()],j.prototype,"formatFunction",void 0),e([i({readOnly:!0})],j.prototype,"header",null),e([i()],j.prototype,"hidden",null),e([i()],j.prototype,"headerRenderFunction",void 0),e([i()],j.prototype,"inputRenderFunction",void 0),e([i()],j.prototype,"layer",void 0),e([i({readOnly:!0})],j.prototype,"loadingMessage",null),e([i()],j.prototype,"maxLength",null),e([i()],j.prototype,"minLength",null),e([i({readOnly:!0})],j.prototype,"name",null),e([i({readOnly:!0})],j.prototype,"nullable",null),e([i()],j.prototype,"parseInputValueFunction",void 0),e([i({readOnly:!0})],j.prototype,"path",null),e([i({readOnly:!0})],j.prototype,"required",null),e([i()],j.prototype,"sortable",null),e([i()],j.prototype,"store",void 0),e([i()],j.prototype,"template",void 0),e([i()],j.prototype,"updateRowItemFunction",void 0),e([i()],j.prototype,"updateStoreItemFunction",void 0),j=e([r("esri.widgets.FeatureTable.FieldColumn")],j);const x=j;export{x as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import"../../geometry.js";import t from"../../Graphic.js";import"../../symbols.js";import{isSome as i}from"../../core/arrayUtils.js";import s from"../../core/Error.js";import r from"../../core/Logger.js";import o from"../../core/ReactiveSet.js";import{watch as a,when as n,sync as l}from"../../core/reactiveUtils.js";import{property as u}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/has.js";import{subclass as h}from"../../core/accessorSupport/decorators/subclass.js";import{geographicToWebMercator as c}from"../../geometry/support/webMercatorUtils.js";import d from"../../layers/Layer.js";import{fallbackObjectIDAttribute as p}from"../../layers/LayerConstants.js";import{getDisplayedSymbol as g}from"../../symbols/support/symbolUtils.js";import{highlightsSupported as f}from"../../views/support/layerViewUtils.js";import m from"../Feature/FeatureViewModel.js";import{ActionsCollection as y,zoomToFeature as w,zoomToClusteredFeatures as F,browseClusteredFeatures as v}from"../Popup/actions.js";import{triggerAction as _,isClusterFeature as b,getSelectedTarget as C,removeClusteredFeaturesForBrowsing as P,displayClusterExtent as E,browseAggregateFeatures as M,getPointFromGeometry as V}from"../Popup/actionUtils.js";import A from"../support/AnchorElementViewModel.js";import{GoToMixin as L}from"../support/GoTo.js";import j from"../../symbols/SimpleFillSymbol.js";import O from"../../geometry/Point.js";const I=()=>[w.clone()],S=()=>[F.clone(),v.clone()];let T=class extends(L(A)){constructor(e){super(e),this._pendingPromises=new o,this._fetchFeaturesController=null,this._highlightSelectedFeaturePromise=null,this._highlightActiveFeaturePromise=null,this._selectedClusterFeature=null,this.actions=new y,this.activeFeature=null,this.autoCloseEnabled=!1,this.autoOpenEnabled=!0,this.browseClusterEnabled=!1,this.content=null,this.defaultPopupTemplateEnabled=!1,this.featurePage=null,this.featuresPerPage=20,this.featureMenuOpen=!1,this.featureViewModelAbilities=null,this.featureViewModels=[],this.highlightEnabled=!0,this.includeDefaultActions=!0,this.selectedClusterBoundaryFeature=new t({symbol:new j({outline:{width:1.5,color:"cyan"},style:"none"})}),this.title=null,this.updateLocationEnabled=!1,this.view=null,this.visible=!1,this.zoomFactor=4,this.zoomToLocation=null}initialize(){this.addHandles([this.on("view-change",(()=>this._autoClose())),a((()=>[this.highlightEnabled,this.selectedFeature,this.visible,this.view]),(()=>this._highlightSelectedFeature())),a((()=>[this.highlightEnabled,this.activeFeature,this.visible,this.view]),(()=>this._highlightActiveFeature())),a((()=>this.view?.animation?.state),(e=>this._animationStateChange(e))),a((()=>this.location),(e=>this._locationChange(e))),a((()=>this.selectedFeature),(e=>this._selectedFeatureChange(e))),a((()=>[this.selectedFeatureIndex,this.featureCount,this.featuresPerPage]),(()=>this._selectedFeatureIndexChange())),a((()=>[this.featurePage,this.selectedFeatureIndex,this.featureCount,this.featuresPerPage,this.featureViewModels]),(()=>this._setGraphicOnFeatureViewModels())),a((()=>this.featureViewModels),(()=>this._featureViewModelsChange())),this.on("trigger-action",(e=>_({event:e,viewModel:this,view:this.view}))),n((()=>!this.waitingForResult),(()=>this._waitingForResultChange()),l),a((()=>[this.features,this.view?.map,this.view?.spatialReference]),(()=>this._updateFeatureVMs())),a((()=>this.view?.scale),(()=>this._viewScaleChange())),n((()=>!this.visible),(()=>this.browseClusterEnabled=!1)),a((()=>this.browseClusterEnabled),(e=>e?this.enableClusterBrowsing():this.disableClusterBrowsing()))])}destroy(){this._cancelFetchingFeatures(),this._pendingPromises.clear(),this.browseClusterEnabled=!1,this.view=null}get active(){return!(!this.visible||this.waitingForResult)}get allActions(){const e=this._get("allActions")||new y;e.removeAll();const{actions:t,defaultActions:i,defaultPopupTemplateEnabled:s,includeDefaultActions:r,selectedFeature:o}=this,a=r?i.concat(t):t,n=o&&("function"==typeof o.getEffectivePopupTemplate&&o.getEffectivePopupTemplate(s)||o.popupTemplate),l=n?.actions,u=n?.overwriteActions?l:l?.concat(a)??a;return u?.filter(Boolean).forEach((t=>e.add(t))),e}get defaultActions(){const e=this._get("defaultActions")||new y;return e.removeAll(),e.addMany(b(this.selectedFeature)?S():I()),e}get featureCount(){return this.features.length}set features(e){const t=e||[];this._set("features",t);const{pendingPromisesCount:i,promiseCount:s,selectedFeatureIndex:r}=this,o=s&&t.length;o&&i&&-1===r?this.selectedFeatureIndex=0:o&&-1!==r||(this.selectedFeatureIndex=t.length?0:-1)}set location(e){let t=e;const i=this.view?.spatialReference?.isWebMercator,s=e?.spatialReference?.isWGS84;s&&i&&(t=c(e)),this._set("location",t)}get pendingPromisesCount(){return this._pendingPromises.size}get promiseCount(){return this.promises.length}get promises(){return this._get("promises")||[]}set promises(e){this._pendingPromises.clear(),this.features=[],Array.isArray(e)&&e.length?(this._set("promises",e),(e=e.slice(0)).forEach((e=>{this._pendingPromises.add(e);const t=t=>{this._pendingPromises.has(e)&&this._updateFeatures(t),this._updatePendingPromises(e)},i=()=>this._updatePendingPromises(e);e.then(t,i)}))):this._set("promises",[])}get selectedFeature(){const{features:e,selectedFeatureIndex:t}=this;if(-1===t)return null;return e[t]||null}get selectedFeatureIndex(){const e=this._get("selectedFeatureIndex");return"number"==typeof e?e:-1}set selectedFeatureIndex(e){const{featureCount:t}=this;e=isNaN(e)||e<-1||!t?-1:(e+t)%t,this.activeFeature=null,this._set("selectedFeatureIndex",e)}get selectedFeatureViewModel(){return this.featureViewModels[this.selectedFeatureIndex]||null}get state(){return this.view?.ready?"ready":"disabled"}get waitingForContents(){return this.featureViewModels.some((e=>e.waitingForContent))}get waitingForResult(){return!(!(!!this._fetchFeaturesController||this.pendingPromisesCount>0)||0!==this.featureCount)}centerAtLocation(){const{view:e}=this,t=C(this);return t&&e?this.callGoTo({target:{target:t,scale:e.scale}}):Promise.reject(new s("center-at-location:invalid-target-or-view","Cannot center at a location without a target and view.",{target:t,view:e}))}zoomTo(e){return this.callGoTo(e)}clear(){this.set({promises:[],features:[],content:null,title:null,location:null,activeFeature:null})}fetchFeatures(e,t){const{view:i}=this;if(!i||!e)throw new s("fetch-features:invalid-screenpoint-or-view","Cannot fetch features without a screenPoint and view.",{screenPoint:e,view:i});return i.fetchPopupFeatures(e,{event:t?.event,defaultPopupTemplateEnabled:this.defaultPopupTemplateEnabled,signal:t?.signal})}open(e){const t={updateLocationEnabled:!1,promises:[],fetchFeatures:!1,...e,visible:!0},{fetchFeatures:i}=t;delete t.fetchFeatures,i&&this._setFetchFeaturesPromises(t.location);const s=["actionsMenuOpen","collapsed"];for(const r of s)delete t[r];this.set(t)}triggerAction(e){const t=this.allActions.at(e);t&&!t.disabled&&this.emit("trigger-action",{action:t})}next(){return this.selectedFeatureIndex++,this}previous(){return this.selectedFeatureIndex--,this}disableClusterBrowsing(){P(this),this._clearBrowsedClusterGraphics()}async enableClusterBrowsing(){const{view:e,selectedFeature:t}=this;"2d"===e?.type?b(t)?(await E(this),await M(this)):r.getLogger(this).warn("enableClusterBrowsing:invalid-selectedFeature: Selected feature must represent an aggregate/cluster graphic.",t):r.getLogger(this).warn("enableClusterBrowsing:invalid-view: View must be 2d MapView.",t)}handleViewClick(e){this.autoOpenEnabled&&this._fetchFeaturesAndOpen(e)}_animationStateChange(e){this.zoomToLocation||(w.disabled="waiting-for-target"===e)}_clearBrowsedClusterGraphics(){const e=[this.selectedClusterBoundaryFeature,this._selectedClusterFeature].filter(i);this.view?.graphics?.removeMany(e),this._selectedClusterFeature=null,this.selectedClusterBoundaryFeature.geometry=null}_viewScaleChange(){if(b(this.selectedFeature))return this.browseClusterEnabled=!1,this.visible=!1,void this.clear();this.browseClusterEnabled&&(this.features=this.selectedFeature?[this.selectedFeature]:[])}_locationChange(e){const{selectedFeature:t,updateLocationEnabled:i}=this;i&&e&&(!t||t.geometry)&&this.centerAtLocation()}_selectedFeatureIndexChange(){this.featurePage=this.featureCount>1?Math.floor(this.selectedFeatureIndex/this.featuresPerPage)+1:null}_featureViewModelsChange(){this.featurePage=this.featureCount>1?1:null}_setGraphicOnFeatureViewModels(){const{features:e,featureCount:t,featurePage:i,featuresPerPage:s,featureViewModels:r}=this;if(null===i)return;const o=((i-1)*s+t)%t,a=o+s;r.slice(o,a).forEach(((t,i)=>{t&&(t.graphic??=e[o+i])}))}async _selectedFeatureChange(e){const{location:t,updateLocationEnabled:i,view:s}=this;if(e&&s){if(this.browseClusterEnabled){if(this._selectedClusterFeature&&(s.graphics.remove(this._selectedClusterFeature),this._selectedClusterFeature=null),b(e))return;return e.symbol=await g(e),this._selectedClusterFeature=e,void s.graphics.add(this._selectedClusterFeature)}if(!i&&t||!e.geometry){if(i&&!e.geometry){await this.centerAtLocation();const e=s.center?.clone();e&&(this.location=e)}}else this.location=V(e.geometry)}}_waitingForResultChange(){!this.featureCount&&this.promises&&(this.visible=!1)}async _setFetchFeaturesPromises(e){const{clientOnlyGraphics:t,promisesPerLayerView:i}=await this._fetchFeaturesWithController(this._getScreenPoint(e||this.location)),s=Promise.resolve(t),r=i.map((e=>e.promise));this.promises=[s,...r]}_destroyFeatureVMs(){this.featureViewModels.forEach((e=>e&&!e.destroyed&&e.destroy())),this._set("featureViewModels",[])}_updateFeatureVMs(){const{selectedFeature:e,features:t,featureViewModels:i,view:s}=this;if(b(e)||(this.browseClusterEnabled=!1),this._destroyFeatureVMs(),!t?.length)return;const r=i.slice(0),o=[];t.forEach(((t,i)=>{if(!t)return;let a=null;if(r.some(((e,i)=>(e&&e.graphic===t&&(a=e,r.splice(i,1)),!!a))),a)o[i]=a;else{const r=new m({abilities:this.featureViewModelAbilities,defaultPopupTemplateEnabled:this.defaultPopupTemplateEnabled,spatialReference:s?.spatialReference,graphic:t===e?t:null,map:s?.map,view:s});o[i]=r}})),r.forEach((e=>e&&!e.destroyed&&e.destroy())),this._set("featureViewModels",o)}_getScreenPoint(e){const{view:t}=this;return t&&e&&"function"==typeof t.toScreen?t.toScreen(e):null}_cancelFetchingFeatures(){const e=this._fetchFeaturesController;e&&e.abort(),this._fetchFeaturesController=null}_fetchFeaturesWithController(e,t){this._cancelFetchingFeatures();const i=new AbortController,{signal:s}=i;this._fetchFeaturesController=i;const r=this.fetchFeatures(e,{signal:s,event:t});return r.catch((()=>{})).then((()=>{this._fetchFeaturesController=null})),r}async _fetchFeaturesAndOpen(e){const{screenPoint:t,mapPoint:i}=e,{view:s}=this,{clientOnlyGraphics:r,promisesPerLayerView:o,location:a}=await this._fetchFeaturesWithController(t,e),n=[Promise.resolve(r),...o.map((e=>e.promise))];s?.popup&&"open"in s.popup&&s.popup.open({location:a||i,promises:n})}_updatePendingPromises(e){e&&this._pendingPromises.has(e)&&this._pendingPromises.delete(e)}_autoClose(){this.autoCloseEnabled&&(this.visible=!1)}async _getLayerView(e,t){return await e.when(),e.whenLayerView(t)}_getHighlightLayer(e){const{layer:t,sourceLayer:i}=e;return i&&"layer"in i&&i.layer?i.layer:"map-notes"===i?.type||"subtype-group"===i?.type?i:t}_getHighlightTarget(e,t){const i="imagery"===t.type?void 0:"objectIdField"in t?t.objectIdField||p:null,s=e.attributes;return s&&i&&s[i]||e}_mapIncludesLayer(e){return!!this.view?.map?.allLayers?.includes(e)}async _highlightActiveFeature(){const e="highlight-active-feature";this.removeHandles(e);const{highlightEnabled:t,view:i,activeFeature:s,visible:r}=this;if(!(s&&i&&t&&r))return;const o=this._getHighlightLayer(s);if(!(o&&o instanceof d&&this._mapIncludesLayer(o)))return;const a=this._getLayerView(i,o);this._highlightActiveFeaturePromise=a;const n=await a;if(!(n&&f(n)&&this._highlightActiveFeaturePromise===a&&this.activeFeature&&this.highlightEnabled))return;const l=n.highlight(this._getHighlightTarget(s,o));this.addHandles(l,e)}async _highlightSelectedFeature(){const e="highlight-selected-feature";this.removeHandles(e);const{selectedFeature:t,highlightEnabled:i,view:s,visible:r}=this;if(!(t&&s&&i&&r))return;const o=this._getHighlightLayer(t);if(!(o&&o instanceof d&&this._mapIncludesLayer(o)))return;const a=this._getLayerView(s,o);this._highlightSelectedFeaturePromise=a;const n=await a;if(!(n&&f(n)&&this._highlightSelectedFeaturePromise===a&&this.selectedFeature&&this.highlightEnabled&&this.visible))return;const l=n.highlight(this._getHighlightTarget(t,o));this.addHandles(l,e)}_updateFeatures(e){const{features:t}=this;if(!e?.length)return;if(!t.length)return void(this.features=e);const i=e.filter((e=>!t.includes(e)));this.features=t.concat(i)}};e([u()],T.prototype,"_fetchFeaturesController",void 0),e([u({type:y})],T.prototype,"actions",void 0),e([u({readOnly:!0})],T.prototype,"active",null),e([u()],T.prototype,"activeFeature",void 0),e([u({readOnly:!0})],T.prototype,"allActions",null),e([u()],T.prototype,"autoCloseEnabled",void 0),e([u()],T.prototype,"autoOpenEnabled",void 0),e([u()],T.prototype,"browseClusterEnabled",void 0),e([u()],T.prototype,"content",void 0),e([u({type:y,readOnly:!0})],T.prototype,"defaultActions",null),e([u({type:Boolean})],T.prototype,"defaultPopupTemplateEnabled",void 0),e([u({readOnly:!0})],T.prototype,"featureCount",null),e([u()],T.prototype,"featurePage",void 0),e([u({value:[]})],T.prototype,"features",null),e([u()],T.prototype,"featuresPerPage",void 0),e([u()],T.prototype,"featureMenuOpen",void 0),e([u()],T.prototype,"featureViewModelAbilities",void 0),e([u({readOnly:!0})],T.prototype,"featureViewModels",void 0),e([u()],T.prototype,"highlightEnabled",void 0),e([u()],T.prototype,"includeDefaultActions",void 0),e([u({type:O})],T.prototype,"location",null),e([u({readOnly:!0})],T.prototype,"pendingPromisesCount",null),e([u({readOnly:!0})],T.prototype,"promiseCount",null),e([u()],T.prototype,"promises",null),e([u({readOnly:!0})],T.prototype,"selectedClusterBoundaryFeature",void 0),e([u({value:null,readOnly:!0})],T.prototype,"selectedFeature",null),e([u({value:-1})],T.prototype,"selectedFeatureIndex",null),e([u({readOnly:!0})],T.prototype,"selectedFeatureViewModel",null),e([u({readOnly:!0})],T.prototype,"state",null),e([u()],T.prototype,"title",void 0),e([u()],T.prototype,"updateLocationEnabled",void 0),e([u()],T.prototype,"view",void 0),e([u()],T.prototype,"visible",void 0),e([u({readOnly:!0})],T.prototype,"waitingForContents",null),e([u({readOnly:!0})],T.prototype,"waitingForResult",null),e([u()],T.prototype,"zoomFactor",void 0),e([u()],T.prototype,"zoomToLocation",void 0),e([u()],T.prototype,"centerAtLocation",null),T=e([h("esri.widgets.Features.FeaturesViewModel")],T);const x=T;export{x as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import"../../geometry.js";import t from"../../Graphic.js";import"../../symbols.js";import{isSome as i}from"../../core/arrayUtils.js";import s from"../../core/Error.js";import r from"../../core/Logger.js";import o from"../../core/ReactiveSet.js";import{watch as a,when as n,sync as l}from"../../core/reactiveUtils.js";import{property as u}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/has.js";import{subclass as h}from"../../core/accessorSupport/decorators/subclass.js";import{geographicToWebMercator as c}from"../../geometry/support/webMercatorUtils.js";import d from"../../layers/Layer.js";import{fallbackObjectIDAttribute as p}from"../../layers/LayerConstants.js";import{getDisplayedSymbol as g}from"../../symbols/support/symbolUtils.js";import{highlightsSupported as f}from"../../views/support/layerViewUtils.js";import m from"../Feature/FeatureViewModel.js";import{ActionsCollection as y,zoomToFeature as w,zoomToClusteredFeatures as F,browseClusteredFeatures as v}from"../Popup/actions.js";import{triggerAction as _,isClusterFeature as b,removeClusteredFeaturesForBrowsing as C,displayClusterExtent as P,browseAggregateFeatures as E,getPointFromGeometry as M,getSelectedTarget as V}from"../Popup/actionUtils.js";import A from"../support/AnchorElementViewModel.js";import{GoToMixin as L}from"../support/GoTo.js";import j from"../../symbols/SimpleFillSymbol.js";import O from"../../geometry/Point.js";const I=()=>[w.clone()],S=()=>[F.clone(),v.clone()];let T=class extends(L(A)){constructor(e){super(e),this._pendingPromises=new o,this._fetchFeaturesController=null,this._highlightSelectedFeaturePromise=null,this._highlightActiveFeaturePromise=null,this._selectedClusterFeature=null,this.actions=new y,this.activeFeature=null,this.autoCloseEnabled=!1,this.autoOpenEnabled=!0,this.browseClusterEnabled=!1,this.content=null,this.defaultPopupTemplateEnabled=!1,this.featurePage=null,this.featuresPerPage=20,this.featureMenuOpen=!1,this.featureViewModelAbilities=null,this.featureViewModels=[],this.highlightEnabled=!0,this.includeDefaultActions=!0,this.selectedClusterBoundaryFeature=new t({symbol:new j({outline:{width:1.5,color:"cyan"},style:"none"})}),this.title=null,this.updateLocationEnabled=!1,this.view=null,this.visible=!1,this.zoomFactor=4,this.zoomToLocation=null}initialize(){this.addHandles([this.on("view-change",(()=>this._autoClose())),a((()=>[this.highlightEnabled,this.selectedFeature,this.visible,this.view]),(()=>this._highlightSelectedFeature())),a((()=>[this.highlightEnabled,this.activeFeature,this.visible,this.view]),(()=>this._highlightActiveFeature())),a((()=>this.view?.animation?.state),(e=>this._animationStateChange(e))),a((()=>this.location),(e=>this._locationChange(e))),a((()=>this.selectedFeature),(e=>this._selectedFeatureChange(e))),a((()=>[this.selectedFeatureIndex,this.featureCount,this.featuresPerPage]),(()=>this._selectedFeatureIndexChange())),a((()=>[this.featurePage,this.selectedFeatureIndex,this.featureCount,this.featuresPerPage,this.featureViewModels]),(()=>this._setGraphicOnFeatureViewModels())),a((()=>this.featureViewModels),(()=>this._featureViewModelsChange())),this.on("trigger-action",(e=>_({event:e,viewModel:this,view:this.view}))),n((()=>!this.waitingForResult),(()=>this._waitingForResultChange()),l),a((()=>[this.features,this.view?.map,this.view?.spatialReference]),(()=>this._updateFeatureVMs())),a((()=>this.view?.scale),(()=>this._viewScaleChange())),n((()=>!this.visible),(()=>this.browseClusterEnabled=!1)),a((()=>this.browseClusterEnabled),(e=>e?this.enableClusterBrowsing():this.disableClusterBrowsing()))])}destroy(){this._cancelFetchingFeatures(),this._pendingPromises.clear(),this.browseClusterEnabled=!1,this.view=null}get active(){return!(!this.visible||this.waitingForResult)}get allActions(){const e=this._get("allActions")||new y;e.removeAll();const{actions:t,defaultActions:i,defaultPopupTemplateEnabled:s,includeDefaultActions:r,selectedFeature:o}=this,a=r?i.concat(t):t,n=o&&("function"==typeof o.getEffectivePopupTemplate&&o.getEffectivePopupTemplate(s)||o.popupTemplate),l=n?.actions,u=n?.overwriteActions?l:l?.concat(a)??a;return u?.filter(Boolean).forEach((t=>e.add(t))),e}get defaultActions(){const e=this._get("defaultActions")||new y;return e.removeAll(),e.addMany(b(this.selectedFeature)?S():I()),e}get featureCount(){return this.features.length}set features(e){const t=e||[];this._set("features",t);const{pendingPromisesCount:i,promiseCount:s,selectedFeatureIndex:r}=this,o=s&&t.length;o&&i&&-1===r?this.selectedFeatureIndex=0:o&&-1!==r||(this.selectedFeatureIndex=t.length?0:-1)}set location(e){let t=e;const i=this.view?.spatialReference?.isWebMercator,s=e?.spatialReference?.isWGS84;s&&i&&(t=c(e)),this._set("location",t)}get pendingPromisesCount(){return this._pendingPromises.size}get promiseCount(){return this.promises.length}get promises(){return this._get("promises")||[]}set promises(e){this._pendingPromises.clear(),this.features=[],Array.isArray(e)&&e.length?(this._set("promises",e),(e=e.slice(0)).forEach((e=>{this._pendingPromises.add(e);const t=t=>{this._pendingPromises.has(e)&&this._updateFeatures(t),this._updatePendingPromises(e)},i=()=>this._updatePendingPromises(e);e.then(t,i)}))):this._set("promises",[])}get selectedFeature(){const{features:e,selectedFeatureIndex:t}=this;if(-1===t)return null;return e[t]||null}get selectedFeatureIndex(){const e=this._get("selectedFeatureIndex");return"number"==typeof e?e:-1}set selectedFeatureIndex(e){const{featureCount:t}=this;e=isNaN(e)||e<-1||!t?-1:(e+t)%t,this.activeFeature=null,this._set("selectedFeatureIndex",e)}get selectedFeatureViewModel(){return this.featureViewModels[this.selectedFeatureIndex]||null}get state(){return this.view?.ready?"ready":"disabled"}get waitingForContents(){return this.featureViewModels.some((e=>e.waitingForContent))}get waitingForResult(){return!(!(!!this._fetchFeaturesController||this.pendingPromisesCount>0)||0!==this.featureCount)}centerAtLocation(){const{view:e}=this,t=V(this);return t&&e?this.callGoTo({target:{target:t,scale:e.scale}}):Promise.reject(new s("center-at-location:invalid-target-or-view","Cannot center at a location without a target and view.",{target:t,view:e}))}zoomTo(e){return this.callGoTo(e)}clear(){this.set({promises:[],features:[],content:null,title:null,location:null,activeFeature:null})}fetchFeatures(e,t){const{view:i}=this;if(!i||!e)throw new s("fetch-features:invalid-screenpoint-or-view","Cannot fetch features without a screenPoint and view.",{screenPoint:e,view:i});return i.fetchPopupFeatures(e,{event:t?.event,defaultPopupTemplateEnabled:this.defaultPopupTemplateEnabled,signal:t?.signal})}open(e){const t={updateLocationEnabled:!1,promises:[],fetchFeatures:!1,...e,visible:!0},{fetchFeatures:i}=t;delete t.fetchFeatures,i&&this._setFetchFeaturesPromises(t.location);const s=["actionsMenuOpen","collapsed"];for(const r of s)delete t[r];this.set(t)}triggerAction(e){const t=this.allActions.at(e);t&&!t.disabled&&this.emit("trigger-action",{action:t})}next(){return this.selectedFeatureIndex++,this}previous(){return this.selectedFeatureIndex--,this}disableClusterBrowsing(){C(this),this._clearBrowsedClusterGraphics()}async enableClusterBrowsing(){const{view:e,selectedFeature:t}=this;"2d"===e?.type?b(t)?(await P(this),await E(this)):r.getLogger(this).warn("enableClusterBrowsing:invalid-selectedFeature: Selected feature must represent an aggregate/cluster graphic.",t):r.getLogger(this).warn("enableClusterBrowsing:invalid-view: View must be 2d MapView.",t)}handleViewClick(e){this.autoOpenEnabled&&this._fetchFeaturesAndOpen(e)}_animationStateChange(e){this.zoomToLocation||(w.disabled="waiting-for-target"===e)}_clearBrowsedClusterGraphics(){const e=[this.selectedClusterBoundaryFeature,this._selectedClusterFeature].filter(i);this.view?.graphics?.removeMany(e),this._selectedClusterFeature=null,this.selectedClusterBoundaryFeature.geometry=null}_viewScaleChange(){if(b(this.selectedFeature))return this.browseClusterEnabled=!1,this.visible=!1,void this.clear();this.browseClusterEnabled&&(this.features=this.selectedFeature?[this.selectedFeature]:[])}_locationChange(e){const{selectedFeature:t,updateLocationEnabled:i}=this;i&&e&&(!t||t.geometry)&&this.centerAtLocation()}_selectedFeatureIndexChange(){this.featurePage=this.featureCount>1?Math.floor(this.selectedFeatureIndex/this.featuresPerPage)+1:null}_featureViewModelsChange(){this.featurePage=this.featureCount>1?1:null}_setGraphicOnFeatureViewModels(){const{features:e,featureCount:t,featurePage:i,featuresPerPage:s,featureViewModels:r}=this;if(null===i)return;const o=((i-1)*s+t)%t,a=o+s;r.slice(o,a).forEach(((t,i)=>{t&&(t.graphic??=e[o+i])}))}async _selectedFeatureChange(e){const{location:t,updateLocationEnabled:i,view:s}=this;if(e&&s){if(this.browseClusterEnabled){if(this._selectedClusterFeature&&(s.graphics.remove(this._selectedClusterFeature),this._selectedClusterFeature=null),b(e))return;return e.symbol=await g(e),this._selectedClusterFeature=e,void s.graphics.add(this._selectedClusterFeature)}if(!i&&t||!e.geometry){if(i&&!e.geometry){await this.centerAtLocation();const e=s.center?.clone();e&&(this.location=e)}}else this.location=M(e.geometry)}}_waitingForResultChange(){!this.featureCount&&this.promises&&(this.visible=!1)}async _setFetchFeaturesPromises(e){const{clientOnlyGraphics:t,promisesPerLayerView:i}=await this._fetchFeaturesWithController(this._getScreenPoint(e||this.location)),s=Promise.resolve(t),r=i.map((e=>e.promise));this.promises=[s,...r]}_destroyFeatureVMs(){this.featureViewModels.forEach((e=>e&&!e.destroyed&&e.destroy())),this._set("featureViewModels",[])}_updateFeatureVMs(){const{selectedFeature:e,features:t,featureViewModels:i,view:s}=this;if(b(e)||(this.browseClusterEnabled=!1),this._destroyFeatureVMs(),!t?.length)return;const r=i.slice(0),o=[];t.forEach(((t,i)=>{if(!t)return;let a=null;if(r.some(((e,i)=>(e&&e.graphic===t&&(a=e,r.splice(i,1)),!!a))),a)o[i]=a;else{const r=new m({abilities:this.featureViewModelAbilities,defaultPopupTemplateEnabled:this.defaultPopupTemplateEnabled,spatialReference:s?.spatialReference,graphic:t===e?t:null,map:s?.map,view:s});o[i]=r}})),r.forEach((e=>e&&!e.destroyed&&e.destroy())),this._set("featureViewModels",o)}_getScreenPoint(e){const{view:t}=this;return t&&e&&"function"==typeof t.toScreen?t.toScreen(e):null}_cancelFetchingFeatures(){const e=this._fetchFeaturesController;e&&e.abort(),this._fetchFeaturesController=null}_fetchFeaturesWithController(e,t){this._cancelFetchingFeatures();const i=new AbortController,{signal:s}=i;this._fetchFeaturesController=i;const r=this.fetchFeatures(e,{signal:s,event:t});return r.catch((()=>{})).then((()=>{this._fetchFeaturesController=null})),r}async _fetchFeaturesAndOpen(e){const{screenPoint:t,mapPoint:i}=e,{view:s}=this,{clientOnlyGraphics:r,promisesPerLayerView:o,location:a}=await this._fetchFeaturesWithController(t,e),n=[Promise.resolve(r),...o.map((e=>e.promise))];s?.popup&&"open"in s.popup&&s.popup.open({location:a||i,promises:n})}_updatePendingPromises(e){e&&this._pendingPromises.has(e)&&this._pendingPromises.delete(e)}_autoClose(){this.autoCloseEnabled&&(this.visible=!1)}async _getLayerView(e,t){return await e.when(),e.whenLayerView(t)}_getHighlightLayer(e){const{layer:t,sourceLayer:i}=e;return i&&"layer"in i&&i.layer?i.layer:"map-notes"===i?.type||"subtype-group"===i?.type?i:t}_getHighlightTarget(e,t){const i="imagery"===t.type?void 0:"objectIdField"in t?t.objectIdField||p:null,s=e.attributes;return s&&i&&s[i]||e}_mapIncludesLayer(e){return!!this.view?.map?.allLayers?.includes(e)}async _highlightActiveFeature(){const e="highlight-active-feature";this.removeHandles(e);const{highlightEnabled:t,view:i,activeFeature:s,visible:r}=this;if(!(s&&i&&t&&r))return;const o=this._getHighlightLayer(s);if(!(o&&o instanceof d&&this._mapIncludesLayer(o)))return;const a=this._getLayerView(i,o);this._highlightActiveFeaturePromise=a;const n=await a;if(!(n&&f(n)&&this._highlightActiveFeaturePromise===a&&this.activeFeature&&this.highlightEnabled))return;const l=n.highlight(this._getHighlightTarget(s,o));this.addHandles(l,e)}async _highlightSelectedFeature(){const e="highlight-selected-feature";this.removeHandles(e);const{selectedFeature:t,highlightEnabled:i,view:s,visible:r}=this;if(!(t&&s&&i&&r))return;const o=this._getHighlightLayer(t);if(!(o&&o instanceof d&&this._mapIncludesLayer(o)))return;const a=this._getLayerView(s,o);this._highlightSelectedFeaturePromise=a;const n=await a;if(!(n&&f(n)&&this._highlightSelectedFeaturePromise===a&&this.selectedFeature&&this.highlightEnabled&&this.visible))return;const l=n.highlight(this._getHighlightTarget(t,o));this.addHandles(l,e)}_updateFeatures(e){const{features:t}=this;if(!e?.length)return;if(!t.length)return void(this.features=e);const i=e.filter((e=>!t.includes(e)));this.features=t.concat(i)}};e([u()],T.prototype,"_fetchFeaturesController",void 0),e([u({type:y})],T.prototype,"actions",void 0),e([u({readOnly:!0})],T.prototype,"active",null),e([u()],T.prototype,"activeFeature",void 0),e([u({readOnly:!0})],T.prototype,"allActions",null),e([u()],T.prototype,"autoCloseEnabled",void 0),e([u()],T.prototype,"autoOpenEnabled",void 0),e([u()],T.prototype,"browseClusterEnabled",void 0),e([u()],T.prototype,"content",void 0),e([u({type:y,readOnly:!0})],T.prototype,"defaultActions",null),e([u({type:Boolean})],T.prototype,"defaultPopupTemplateEnabled",void 0),e([u({readOnly:!0})],T.prototype,"featureCount",null),e([u()],T.prototype,"featurePage",void 0),e([u({value:[]})],T.prototype,"features",null),e([u()],T.prototype,"featuresPerPage",void 0),e([u()],T.prototype,"featureMenuOpen",void 0),e([u()],T.prototype,"featureViewModelAbilities",void 0),e([u({readOnly:!0})],T.prototype,"featureViewModels",void 0),e([u()],T.prototype,"highlightEnabled",void 0),e([u()],T.prototype,"includeDefaultActions",void 0),e([u({type:O})],T.prototype,"location",null),e([u({readOnly:!0})],T.prototype,"pendingPromisesCount",null),e([u({readOnly:!0})],T.prototype,"promiseCount",null),e([u()],T.prototype,"promises",null),e([u({readOnly:!0})],T.prototype,"selectedClusterBoundaryFeature",void 0),e([u({value:null,readOnly:!0})],T.prototype,"selectedFeature",null),e([u({value:-1})],T.prototype,"selectedFeatureIndex",null),e([u({readOnly:!0})],T.prototype,"selectedFeatureViewModel",null),e([u({readOnly:!0})],T.prototype,"state",null),e([u()],T.prototype,"title",void 0),e([u()],T.prototype,"updateLocationEnabled",void 0),e([u()],T.prototype,"view",void 0),e([u()],T.prototype,"visible",void 0),e([u({readOnly:!0})],T.prototype,"waitingForContents",null),e([u({readOnly:!0})],T.prototype,"waitingForResult",null),e([u()],T.prototype,"zoomFactor",void 0),e([u()],T.prototype,"zoomToLocation",void 0),e([u()],T.prototype,"centerAtLocation",null),T=e([h("esri.widgets.Features.FeaturesViewModel")],T);const x=T;export{x as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- const e="esri-features",a={icon:`${e}__icon`,actionImage:`${e}__action-image`,actionCollapse:`${e}__action-collapse`,base:e,container:`${e}__container`,contentContainer:`${e}__content-container`,contentFeature:`${e}__content-feature`,flowItemCollapsed:`${e}__flow-item--collapsed`,header:`${e}__header`,footer:`${e}__footer`,featureMenuObserver:`${e}__feature-menu-observer`,actionExit:`${e}__action--exit`,loader:`${e}__loader`,featuresHeading:`${e}__heading`,paginationActionBar:`${e}__pagination-action-bar`,paginationPrevious:`${e}__pagination-previous`,paginationNext:`${e}__pagination-next`};export{a as css};
5
+ const e="esri-features",n={icon:`${e}__icon`,actionImage:`${e}__action-image`,base:e,container:`${e}__container`,contentContainer:`${e}__content-container`,contentFeature:`${e}__content-feature`,flowItemCollapsed:`${e}__flow-item--collapsed`,header:`${e}__header`,footer:`${e}__footer`,featureMenuObserver:`${e}__feature-menu-observer`,actionExit:`${e}__action--exit`,loader:`${e}__loader`,featuresHeading:`${e}__heading`,paginationActionBar:`${e}__pagination-action-bar`,paginationPrevious:`${e}__pagination-previous`,paginationNext:`${e}__pagination-next`};export{n as css};