@arcgis/core 4.28.0-rc.0 → 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 (1068) 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/components/assets/icon/addConstant16.json +1 -0
  8. package/assets/components/assets/icon/addConstant24.json +1 -0
  9. package/assets/components/assets/icon/addConstant32.json +1 -0
  10. package/assets/components/assets/icon/addRasterVariable16.json +1 -0
  11. package/assets/components/assets/icon/addRasterVariable24.json +1 -0
  12. package/assets/components/assets/icon/addRasterVariable32.json +1 -0
  13. package/assets/components/assets/icon/addRasters16.json +1 -0
  14. package/assets/components/assets/icon/addRasters24.json +1 -0
  15. package/assets/components/assets/icon/addRasters32.json +1 -0
  16. package/assets/components/assets/icon/alertOffCircle16F.json +1 -0
  17. package/assets/components/assets/icon/alertOffCircle24F.json +1 -0
  18. package/assets/components/assets/icon/alertOffCircle32F.json +1 -0
  19. package/assets/components/assets/icon/boxChartSeries16.json +1 -0
  20. package/assets/components/assets/icon/boxChartSeries24.json +1 -0
  21. package/assets/components/assets/icon/boxChartSeries32.json +1 -0
  22. package/assets/components/assets/icon/breakRecurrence16.json +1 -0
  23. package/assets/components/assets/icon/breakRecurrence24.json +1 -0
  24. package/assets/components/assets/icon/breakRecurrence32.json +1 -0
  25. package/assets/components/assets/icon/bulletPoint16.json +1 -1
  26. package/assets/components/assets/icon/bulletPoint24.json +1 -1
  27. package/assets/components/assets/icon/bulletPoint32.json +1 -1
  28. package/assets/components/assets/icon/bulletPointLarge16.json +1 -0
  29. package/assets/components/assets/icon/bulletPointLarge24.json +1 -0
  30. package/assets/components/assets/icon/bulletPointLarge32.json +1 -0
  31. package/assets/components/assets/icon/chevronEnd16.json +1 -0
  32. package/assets/components/assets/icon/chevronEnd24.json +1 -0
  33. package/assets/components/assets/icon/chevronEnd32.json +1 -0
  34. package/assets/components/assets/icon/chevronStart16.json +1 -0
  35. package/assets/components/assets/icon/chevronStart24.json +1 -0
  36. package/assets/components/assets/icon/chevronStart32.json +1 -0
  37. package/assets/components/assets/icon/configureGridUnit16.json +1 -0
  38. package/assets/components/assets/icon/configureGridUnit24.json +1 -0
  39. package/assets/components/assets/icon/configureGridUnit32.json +1 -0
  40. package/assets/components/assets/icon/dimensionsUnit16.json +1 -0
  41. package/assets/components/assets/icon/dimensionsUnit24.json +1 -0
  42. package/assets/components/assets/icon/dimensionsUnit32.json +1 -0
  43. package/assets/components/assets/icon/dimensionsWall16.json +1 -0
  44. package/assets/components/assets/icon/dimensionsWall24.json +1 -0
  45. package/assets/components/assets/icon/dimensionsWall32.json +1 -0
  46. package/assets/components/assets/icon/flipVertical16.json +1 -0
  47. package/assets/components/assets/icon/flipVertical24.json +1 -0
  48. package/assets/components/assets/icon/flipVertical32.json +1 -0
  49. package/assets/components/assets/icon/imageCollectionExplorer16.json +1 -0
  50. package/assets/components/assets/icon/imageCollectionExplorer24.json +1 -0
  51. package/assets/components/assets/icon/imageCollectionExplorer32.json +1 -0
  52. package/assets/components/assets/icon/imageMagnifyingGlass16.json +1 -0
  53. package/assets/components/assets/icon/imageMagnifyingGlass24.json +1 -0
  54. package/assets/components/assets/icon/imageMagnifyingGlass32.json +1 -0
  55. package/assets/components/assets/icon/launch216.json +1 -0
  56. package/assets/components/assets/icon/launch224.json +1 -0
  57. package/assets/components/assets/icon/launch232.json +1 -0
  58. package/assets/components/assets/icon/mergeDetails16.json +1 -0
  59. package/assets/components/assets/icon/mergeDetails24.json +1 -0
  60. package/assets/components/assets/icon/mergeDetails32.json +1 -0
  61. package/assets/components/assets/icon/mergeUnits16.json +1 -0
  62. package/assets/components/assets/icon/mergeUnits24.json +1 -0
  63. package/assets/components/assets/icon/mergeUnits32.json +1 -0
  64. package/assets/components/assets/icon/minusCircle16F.json +1 -0
  65. package/assets/components/assets/icon/minusCircle24F.json +1 -0
  66. package/assets/components/assets/icon/minusCircle32F.json +1 -0
  67. package/assets/components/assets/icon/polygonSelect16.json +1 -0
  68. package/assets/components/assets/icon/polygonSelect24.json +1 -0
  69. package/assets/components/assets/icon/polygonSelect32.json +1 -0
  70. package/assets/components/assets/icon/projectMission16.json +1 -0
  71. package/assets/components/assets/icon/projectMission24.json +1 -0
  72. package/assets/components/assets/icon/projectMission32.json +1 -0
  73. package/assets/components/assets/icon/projectTemplate16.json +1 -0
  74. package/assets/components/assets/icon/projectTemplate24.json +1 -0
  75. package/assets/components/assets/icon/projectTemplate32.json +1 -0
  76. package/assets/components/assets/icon/properties16.json +1 -0
  77. package/assets/components/assets/icon/properties24.json +1 -0
  78. package/assets/components/assets/icon/properties32.json +1 -0
  79. package/assets/components/assets/icon/saveAs16.json +1 -0
  80. package/assets/components/assets/icon/saveAs24.json +1 -0
  81. package/assets/components/assets/icon/saveAs32.json +1 -0
  82. package/assets/components/assets/icon/splitUnits16.json +1 -0
  83. package/assets/components/assets/icon/splitUnits24.json +1 -0
  84. package/assets/components/assets/icon/splitUnits32.json +1 -0
  85. package/assets/components/assets/icon/storage16.json +1 -0
  86. package/assets/components/assets/icon/storage24.json +1 -0
  87. package/assets/components/assets/icon/storage32.json +1 -0
  88. package/assets/components/assets/panel/t9n/messages.json +3 -1
  89. package/assets/components/assets/panel/t9n/messages_ar.json +3 -1
  90. package/assets/components/assets/panel/t9n/messages_bg.json +3 -1
  91. package/assets/components/assets/panel/t9n/messages_bs.json +3 -1
  92. package/assets/components/assets/panel/t9n/messages_ca.json +3 -1
  93. package/assets/components/assets/panel/t9n/messages_cs.json +3 -1
  94. package/assets/components/assets/panel/t9n/messages_da.json +3 -1
  95. package/assets/components/assets/panel/t9n/messages_de.json +3 -1
  96. package/assets/components/assets/panel/t9n/messages_el.json +3 -1
  97. package/assets/components/assets/panel/t9n/messages_en.json +3 -1
  98. package/assets/components/assets/panel/t9n/messages_es.json +3 -1
  99. package/assets/components/assets/panel/t9n/messages_et.json +3 -1
  100. package/assets/components/assets/panel/t9n/messages_fi.json +3 -1
  101. package/assets/components/assets/panel/t9n/messages_fr.json +3 -1
  102. package/assets/components/assets/panel/t9n/messages_he.json +3 -1
  103. package/assets/components/assets/panel/t9n/messages_hr.json +3 -1
  104. package/assets/components/assets/panel/t9n/messages_hu.json +3 -1
  105. package/assets/components/assets/panel/t9n/messages_id.json +3 -1
  106. package/assets/components/assets/panel/t9n/messages_it.json +3 -1
  107. package/assets/components/assets/panel/t9n/messages_ja.json +3 -1
  108. package/assets/components/assets/panel/t9n/messages_ko.json +3 -1
  109. package/assets/components/assets/panel/t9n/messages_lt.json +3 -1
  110. package/assets/components/assets/panel/t9n/messages_lv.json +3 -1
  111. package/assets/components/assets/panel/t9n/messages_nl.json +3 -1
  112. package/assets/components/assets/panel/t9n/messages_no.json +3 -1
  113. package/assets/components/assets/panel/t9n/messages_pl.json +3 -1
  114. package/assets/components/assets/panel/t9n/messages_pt-BR.json +3 -1
  115. package/assets/components/assets/panel/t9n/messages_pt-PT.json +3 -1
  116. package/assets/components/assets/panel/t9n/messages_ro.json +3 -1
  117. package/assets/components/assets/panel/t9n/messages_ru.json +3 -1
  118. package/assets/components/assets/panel/t9n/messages_sk.json +3 -1
  119. package/assets/components/assets/panel/t9n/messages_sl.json +3 -1
  120. package/assets/components/assets/panel/t9n/messages_sr.json +3 -1
  121. package/assets/components/assets/panel/t9n/messages_sv.json +3 -1
  122. package/assets/components/assets/panel/t9n/messages_th.json +3 -1
  123. package/assets/components/assets/panel/t9n/messages_tr.json +3 -1
  124. package/assets/components/assets/panel/t9n/messages_uk.json +3 -1
  125. package/assets/components/assets/panel/t9n/messages_vi.json +3 -1
  126. package/assets/components/assets/panel/t9n/messages_zh-CN.json +3 -1
  127. package/assets/components/assets/panel/t9n/messages_zh-HK.json +3 -1
  128. package/assets/components/assets/panel/t9n/messages_zh-TW.json +3 -1
  129. package/assets/components/assets/table/t9n/messages_ar.json +5 -5
  130. package/assets/components/assets/table/t9n/messages_bg.json +5 -5
  131. package/assets/components/assets/table/t9n/messages_bs.json +5 -5
  132. package/assets/components/assets/table/t9n/messages_ca.json +5 -5
  133. package/assets/components/assets/table/t9n/messages_cs.json +5 -5
  134. package/assets/components/assets/table/t9n/messages_da.json +5 -5
  135. package/assets/components/assets/table/t9n/messages_de.json +5 -5
  136. package/assets/components/assets/table/t9n/messages_el.json +5 -5
  137. package/assets/components/assets/table/t9n/messages_es.json +5 -5
  138. package/assets/components/assets/table/t9n/messages_et.json +5 -5
  139. package/assets/components/assets/table/t9n/messages_fi.json +5 -5
  140. package/assets/components/assets/table/t9n/messages_fr.json +4 -4
  141. package/assets/components/assets/table/t9n/messages_he.json +5 -5
  142. package/assets/components/assets/table/t9n/messages_hr.json +5 -5
  143. package/assets/components/assets/table/t9n/messages_hu.json +5 -5
  144. package/assets/components/assets/table/t9n/messages_id.json +5 -5
  145. package/assets/components/assets/table/t9n/messages_it.json +5 -5
  146. package/assets/components/assets/table/t9n/messages_ja.json +5 -5
  147. package/assets/components/assets/table/t9n/messages_ko.json +5 -5
  148. package/assets/components/assets/table/t9n/messages_lt.json +5 -5
  149. package/assets/components/assets/table/t9n/messages_lv.json +5 -5
  150. package/assets/components/assets/table/t9n/messages_nl.json +5 -5
  151. package/assets/components/assets/table/t9n/messages_no.json +5 -5
  152. package/assets/components/assets/table/t9n/messages_pl.json +5 -5
  153. package/assets/components/assets/table/t9n/messages_pt-BR.json +5 -5
  154. package/assets/components/assets/table/t9n/messages_pt-PT.json +5 -5
  155. package/assets/components/assets/table/t9n/messages_ro.json +5 -5
  156. package/assets/components/assets/table/t9n/messages_ru.json +5 -5
  157. package/assets/components/assets/table/t9n/messages_sk.json +5 -5
  158. package/assets/components/assets/table/t9n/messages_sl.json +5 -5
  159. package/assets/components/assets/table/t9n/messages_sr.json +5 -5
  160. package/assets/components/assets/table/t9n/messages_sv.json +5 -5
  161. package/assets/components/assets/table/t9n/messages_th.json +5 -5
  162. package/assets/components/assets/table/t9n/messages_tr.json +5 -5
  163. package/assets/components/assets/table/t9n/messages_uk.json +5 -5
  164. package/assets/components/assets/table/t9n/messages_vi.json +5 -5
  165. package/assets/components/assets/table/t9n/messages_zh-CN.json +5 -5
  166. package/assets/components/assets/table/t9n/messages_zh-HK.json +5 -5
  167. package/assets/components/assets/table/t9n/messages_zh-TW.json +5 -5
  168. package/assets/components/assets/table-cell/t9n/messages_ar.json +5 -5
  169. package/assets/components/assets/table-cell/t9n/messages_bg.json +5 -5
  170. package/assets/components/assets/table-cell/t9n/messages_bs.json +5 -5
  171. package/assets/components/assets/table-cell/t9n/messages_ca.json +5 -5
  172. package/assets/components/assets/table-cell/t9n/messages_cs.json +5 -5
  173. package/assets/components/assets/table-cell/t9n/messages_da.json +5 -5
  174. package/assets/components/assets/table-cell/t9n/messages_de.json +5 -5
  175. package/assets/components/assets/table-cell/t9n/messages_el.json +5 -5
  176. package/assets/components/assets/table-cell/t9n/messages_es.json +5 -5
  177. package/assets/components/assets/table-cell/t9n/messages_et.json +5 -5
  178. package/assets/components/assets/table-cell/t9n/messages_fi.json +5 -5
  179. package/assets/components/assets/table-cell/t9n/messages_fr.json +5 -5
  180. package/assets/components/assets/table-cell/t9n/messages_he.json +5 -5
  181. package/assets/components/assets/table-cell/t9n/messages_hr.json +5 -5
  182. package/assets/components/assets/table-cell/t9n/messages_hu.json +5 -5
  183. package/assets/components/assets/table-cell/t9n/messages_id.json +5 -5
  184. package/assets/components/assets/table-cell/t9n/messages_it.json +5 -5
  185. package/assets/components/assets/table-cell/t9n/messages_ja.json +5 -5
  186. package/assets/components/assets/table-cell/t9n/messages_ko.json +5 -5
  187. package/assets/components/assets/table-cell/t9n/messages_lt.json +5 -5
  188. package/assets/components/assets/table-cell/t9n/messages_lv.json +5 -5
  189. package/assets/components/assets/table-cell/t9n/messages_nl.json +5 -5
  190. package/assets/components/assets/table-cell/t9n/messages_no.json +5 -5
  191. package/assets/components/assets/table-cell/t9n/messages_pl.json +5 -5
  192. package/assets/components/assets/table-cell/t9n/messages_pt-BR.json +5 -5
  193. package/assets/components/assets/table-cell/t9n/messages_pt-PT.json +5 -5
  194. package/assets/components/assets/table-cell/t9n/messages_ro.json +5 -5
  195. package/assets/components/assets/table-cell/t9n/messages_ru.json +5 -5
  196. package/assets/components/assets/table-cell/t9n/messages_sk.json +5 -5
  197. package/assets/components/assets/table-cell/t9n/messages_sl.json +5 -5
  198. package/assets/components/assets/table-cell/t9n/messages_sr.json +5 -5
  199. package/assets/components/assets/table-cell/t9n/messages_sv.json +5 -5
  200. package/assets/components/assets/table-cell/t9n/messages_th.json +5 -5
  201. package/assets/components/assets/table-cell/t9n/messages_tr.json +5 -5
  202. package/assets/components/assets/table-cell/t9n/messages_uk.json +5 -5
  203. package/assets/components/assets/table-cell/t9n/messages_vi.json +5 -5
  204. package/assets/components/assets/table-cell/t9n/messages_zh-CN.json +5 -5
  205. package/assets/components/assets/table-cell/t9n/messages_zh-HK.json +5 -5
  206. package/assets/components/assets/table-cell/t9n/messages_zh-TW.json +5 -5
  207. package/assets/components/assets/table-header/t9n/messages_ar.json +6 -6
  208. package/assets/components/assets/table-header/t9n/messages_bg.json +6 -6
  209. package/assets/components/assets/table-header/t9n/messages_bs.json +6 -6
  210. package/assets/components/assets/table-header/t9n/messages_ca.json +6 -6
  211. package/assets/components/assets/table-header/t9n/messages_cs.json +6 -6
  212. package/assets/components/assets/table-header/t9n/messages_da.json +6 -6
  213. package/assets/components/assets/table-header/t9n/messages_de.json +6 -6
  214. package/assets/components/assets/table-header/t9n/messages_el.json +6 -6
  215. package/assets/components/assets/table-header/t9n/messages_es.json +6 -6
  216. package/assets/components/assets/table-header/t9n/messages_et.json +6 -6
  217. package/assets/components/assets/table-header/t9n/messages_fi.json +6 -6
  218. package/assets/components/assets/table-header/t9n/messages_fr.json +6 -6
  219. package/assets/components/assets/table-header/t9n/messages_he.json +6 -6
  220. package/assets/components/assets/table-header/t9n/messages_hr.json +6 -6
  221. package/assets/components/assets/table-header/t9n/messages_hu.json +6 -6
  222. package/assets/components/assets/table-header/t9n/messages_id.json +6 -6
  223. package/assets/components/assets/table-header/t9n/messages_it.json +6 -6
  224. package/assets/components/assets/table-header/t9n/messages_ja.json +6 -6
  225. package/assets/components/assets/table-header/t9n/messages_ko.json +6 -6
  226. package/assets/components/assets/table-header/t9n/messages_lt.json +6 -6
  227. package/assets/components/assets/table-header/t9n/messages_lv.json +6 -6
  228. package/assets/components/assets/table-header/t9n/messages_nl.json +6 -6
  229. package/assets/components/assets/table-header/t9n/messages_no.json +6 -6
  230. package/assets/components/assets/table-header/t9n/messages_pl.json +6 -6
  231. package/assets/components/assets/table-header/t9n/messages_pt-BR.json +6 -6
  232. package/assets/components/assets/table-header/t9n/messages_pt-PT.json +6 -6
  233. package/assets/components/assets/table-header/t9n/messages_ro.json +6 -6
  234. package/assets/components/assets/table-header/t9n/messages_ru.json +6 -6
  235. package/assets/components/assets/table-header/t9n/messages_sk.json +6 -6
  236. package/assets/components/assets/table-header/t9n/messages_sl.json +6 -6
  237. package/assets/components/assets/table-header/t9n/messages_sr.json +6 -6
  238. package/assets/components/assets/table-header/t9n/messages_sv.json +6 -6
  239. package/assets/components/assets/table-header/t9n/messages_th.json +6 -6
  240. package/assets/components/assets/table-header/t9n/messages_tr.json +6 -6
  241. package/assets/components/assets/table-header/t9n/messages_uk.json +6 -6
  242. package/assets/components/assets/table-header/t9n/messages_vi.json +6 -6
  243. package/assets/components/assets/table-header/t9n/messages_zh-CN.json +6 -6
  244. package/assets/components/assets/table-header/t9n/messages_zh-HK.json +6 -6
  245. package/assets/components/assets/table-header/t9n/messages_zh-TW.json +6 -6
  246. package/assets/components/assets/time-picker/t9n/messages_ar.json +3 -0
  247. package/assets/components/assets/time-picker/t9n/messages_bg.json +3 -0
  248. package/assets/components/assets/time-picker/t9n/messages_bs.json +3 -0
  249. package/assets/components/assets/time-picker/t9n/messages_ca.json +3 -0
  250. package/assets/components/assets/time-picker/t9n/messages_cs.json +3 -0
  251. package/assets/components/assets/time-picker/t9n/messages_da.json +3 -0
  252. package/assets/components/assets/time-picker/t9n/messages_de.json +3 -0
  253. package/assets/components/assets/time-picker/t9n/messages_el.json +3 -0
  254. package/assets/components/assets/time-picker/t9n/messages_es.json +3 -0
  255. package/assets/components/assets/time-picker/t9n/messages_et.json +3 -0
  256. package/assets/components/assets/time-picker/t9n/messages_fi.json +3 -0
  257. package/assets/components/assets/time-picker/t9n/messages_fr.json +3 -0
  258. package/assets/components/assets/time-picker/t9n/messages_he.json +3 -0
  259. package/assets/components/assets/time-picker/t9n/messages_hr.json +3 -0
  260. package/assets/components/assets/time-picker/t9n/messages_hu.json +3 -0
  261. package/assets/components/assets/time-picker/t9n/messages_id.json +3 -0
  262. package/assets/components/assets/time-picker/t9n/messages_it.json +3 -0
  263. package/assets/components/assets/time-picker/t9n/messages_ja.json +3 -0
  264. package/assets/components/assets/time-picker/t9n/messages_ko.json +3 -0
  265. package/assets/components/assets/time-picker/t9n/messages_lt.json +3 -0
  266. package/assets/components/assets/time-picker/t9n/messages_lv.json +3 -0
  267. package/assets/components/assets/time-picker/t9n/messages_nl.json +3 -0
  268. package/assets/components/assets/time-picker/t9n/messages_no.json +3 -0
  269. package/assets/components/assets/time-picker/t9n/messages_pl.json +3 -0
  270. package/assets/components/assets/time-picker/t9n/messages_pt-BR.json +3 -0
  271. package/assets/components/assets/time-picker/t9n/messages_pt-PT.json +3 -0
  272. package/assets/components/assets/time-picker/t9n/messages_ro.json +3 -0
  273. package/assets/components/assets/time-picker/t9n/messages_ru.json +3 -0
  274. package/assets/components/assets/time-picker/t9n/messages_sk.json +3 -0
  275. package/assets/components/assets/time-picker/t9n/messages_sl.json +3 -0
  276. package/assets/components/assets/time-picker/t9n/messages_sr.json +3 -0
  277. package/assets/components/assets/time-picker/t9n/messages_sv.json +3 -0
  278. package/assets/components/assets/time-picker/t9n/messages_th.json +3 -0
  279. package/assets/components/assets/time-picker/t9n/messages_tr.json +3 -0
  280. package/assets/components/assets/time-picker/t9n/messages_uk.json +3 -0
  281. package/assets/components/assets/time-picker/t9n/messages_vi.json +3 -0
  282. package/assets/components/assets/time-picker/t9n/messages_zh-CN.json +3 -0
  283. package/assets/components/assets/time-picker/t9n/messages_zh-HK.json +3 -0
  284. package/assets/components/assets/time-picker/t9n/messages_zh-TW.json +3 -0
  285. package/assets/esri/core/workers/RemoteClient.js +1 -1
  286. package/assets/esri/core/workers/chunks/00da3c16741a9bc47f3a.js +1 -0
  287. package/assets/esri/core/workers/chunks/020825b9c12f2b6386a7.js +1 -0
  288. package/assets/esri/core/workers/chunks/07adca463da5554e514d.js +1 -0
  289. package/assets/esri/core/workers/chunks/07c1783baf9b19b4876a.js +1 -0
  290. package/assets/esri/core/workers/chunks/08a98e85e86ce560d005.js +1 -0
  291. package/assets/esri/core/workers/chunks/0e354096ad8817971eed.js +1 -0
  292. package/assets/esri/core/workers/chunks/0e4646d14fa0775bf463.js +1 -0
  293. package/assets/esri/core/workers/chunks/0ea41f142793edb99d3a.js +1 -0
  294. package/assets/esri/core/workers/chunks/10dc578a90e1194c8720.js +1 -0
  295. package/assets/esri/core/workers/chunks/18e0c5bfeb1aa7213dfa.js +1 -0
  296. package/assets/esri/core/workers/chunks/19c9966f74d287750aaa.js +1 -0
  297. package/assets/esri/core/workers/chunks/1a65d9b9f823d1e8b315.js +1 -0
  298. package/assets/esri/core/workers/chunks/1eb5468c7cf653338d53.js +1 -0
  299. package/assets/esri/core/workers/chunks/1f30ea1a598ddd2e5df3.js +1 -0
  300. package/assets/esri/core/workers/chunks/{40c00b352618c7839f7e.js → 1f87f22e00e3218661c6.js} +1 -1
  301. package/assets/esri/core/workers/chunks/1fc3b526e881ada30420.js +1 -0
  302. package/assets/esri/core/workers/chunks/2304b7456ced997904f6.js +1 -0
  303. package/assets/esri/core/workers/chunks/2d92df1e3ba4f05e0510.js +1 -0
  304. package/assets/esri/core/workers/chunks/31cb4c73764555b40328.js +1 -0
  305. package/assets/esri/core/workers/chunks/32bd6a343ea49c331e1f.js +1 -0
  306. package/assets/esri/core/workers/chunks/3491f1945d9c06d8b2c7.js +1 -0
  307. package/assets/esri/core/workers/chunks/366cf9bba6989342e447.js +1 -0
  308. package/assets/esri/core/workers/chunks/37edbd9b05bfdb2e645d.js +1 -0
  309. package/assets/esri/core/workers/chunks/3c5a112a9b58770a5242.js +1 -0
  310. package/assets/esri/core/workers/chunks/41778f8c49febe1f9404.js +1 -0
  311. package/assets/esri/core/workers/chunks/430ec9f5949b31959893.js +1 -0
  312. package/assets/esri/core/workers/chunks/43575b9acf9819f195f9.js +1 -0
  313. package/assets/esri/core/workers/chunks/43f7d9366d06d69e7c50.js +1 -0
  314. package/assets/esri/core/workers/chunks/{e8c7cc974420c0b92d0e.js → 4672504d6fe649da19f2.js} +1 -1
  315. package/assets/esri/core/workers/chunks/4e813f112a428b4acf0e.js +1 -0
  316. package/assets/esri/core/workers/chunks/{e93442c6d92229f3a4b0.js → 51b8913dff24e693bd25.js} +1 -1
  317. package/assets/esri/core/workers/chunks/5386b166f2e5dc0d9143.js +1 -0
  318. package/assets/esri/core/workers/chunks/562eafa5090827ebb7ec.js +1 -0
  319. package/assets/esri/core/workers/chunks/56a61a8bff08ae273de4.js +1 -0
  320. package/assets/esri/core/workers/chunks/580e7d3cbf6797a50ded.js +1 -0
  321. package/assets/esri/core/workers/chunks/5e8f02da4eae41f57383.js +1 -0
  322. package/assets/esri/core/workers/chunks/6046be598e8c673eeb1f.js +1 -0
  323. package/assets/esri/core/workers/chunks/61dec8399919b278b636.js +1 -0
  324. package/assets/esri/core/workers/chunks/6334a8a7b671d4042108.js +1 -0
  325. package/assets/esri/core/workers/chunks/6747503826bfc94bc6c0.js +1 -0
  326. package/assets/esri/core/workers/chunks/6867ed1860afb7aac536.js +1 -0
  327. package/assets/esri/core/workers/chunks/69c1c850af7ee33258e0.js +1 -0
  328. package/assets/esri/core/workers/chunks/70aa04b09143b7dd2ecb.js +1 -0
  329. package/assets/esri/core/workers/chunks/7388fd97e7b1a2142744.js +1 -0
  330. package/assets/esri/core/workers/chunks/7648f3341b7dff2825c3.js +1 -0
  331. package/assets/esri/core/workers/chunks/768271a12dc7e1781447.js +1 -0
  332. package/assets/esri/core/workers/chunks/{efb17a298363beca5209.js → 7756ed853b4ba54cd081.js} +1 -1
  333. package/assets/esri/core/workers/chunks/7f3bc7a2de59e485f22f.js +1 -0
  334. package/assets/esri/core/workers/chunks/7f433e25f3892475d5dc.js +1 -0
  335. package/assets/esri/core/workers/chunks/80bf6cf1bef17215bca4.js +1 -0
  336. package/assets/esri/core/workers/chunks/83d063b7ce768e9ab3de.js +1 -0
  337. package/assets/esri/core/workers/chunks/83f7e22a12d90ef93e62.js +1 -0
  338. package/assets/esri/core/workers/chunks/{4cc680fe4c9c39d2f853.js → 8a7fa4e8b0d14da7c9eb.js} +1 -1
  339. package/assets/esri/core/workers/chunks/92d8f75e616afa5c761e.js +1 -0
  340. package/assets/esri/core/workers/chunks/99fd09dd42b75a932e84.js +1 -0
  341. package/assets/esri/core/workers/chunks/{f0664a24f2c3705747a5.js → 9c77d69a13ec22cdd760.js} +1 -1
  342. package/assets/esri/core/workers/chunks/a360534e89a337871921.js +1 -0
  343. package/assets/esri/core/workers/chunks/a4341ec0fe89b865d849.js +1 -0
  344. package/assets/esri/core/workers/chunks/a821fa1870b83fed5d31.js +1 -0
  345. package/assets/esri/core/workers/chunks/a8e4726c1db23324eb54.js +1 -0
  346. package/assets/esri/core/workers/chunks/abcfe3bda6f40318b092.js +1 -0
  347. package/assets/esri/core/workers/chunks/ac3e429d43f80c596ec8.js +1 -0
  348. package/assets/esri/core/workers/chunks/ac53b5479dd229fa4f7d.js +1 -0
  349. package/assets/esri/core/workers/chunks/adf6bcf2447c95aeb440.js +1 -0
  350. package/assets/esri/core/workers/chunks/aeb3efa91165dd3d2493.js.LICENSE.txt +1 -1
  351. package/assets/esri/core/workers/chunks/b03eaba5fa75d6ef834a.js +1 -0
  352. package/assets/esri/core/workers/chunks/b251d8a856dc8b9406e0.js +1 -0
  353. package/assets/esri/core/workers/chunks/b3f5e97b47e896c6008a.js +1 -0
  354. package/assets/esri/core/workers/chunks/b6cc8d7dcc710231fe72.js +1 -0
  355. package/assets/esri/core/workers/chunks/b7c81a5bbcdd94b8a7f6.js +1 -0
  356. package/assets/esri/core/workers/chunks/b9a726f3bbad6fd4d65a.js +1 -0
  357. package/assets/esri/core/workers/chunks/c416df0668f6c596095f.js +1 -0
  358. package/assets/esri/core/workers/chunks/c447f4bf0e5f012f8f9b.js +1 -0
  359. package/assets/esri/core/workers/chunks/c7bd63103f101c09b1ea.js +1 -0
  360. package/assets/esri/core/workers/chunks/ca3d5803cdf035d7389d.js +1 -0
  361. package/assets/esri/core/workers/chunks/cb4b17f5cf96a9e36781.js +1 -0
  362. package/assets/esri/core/workers/chunks/cbddfcf57f72428a6992.js +1 -0
  363. package/assets/esri/core/workers/chunks/cc86c8c88124d916e1b3.js +1 -0
  364. package/assets/esri/core/workers/chunks/d0119dff8771e749436a.js +1 -0
  365. package/assets/esri/core/workers/chunks/d07235ce2765a25b9be4.js +1 -0
  366. package/assets/esri/core/workers/chunks/d0f903f2257eb96f7789.js +1 -0
  367. package/assets/esri/core/workers/chunks/d153a8b71111165fc891.js +1 -0
  368. package/assets/esri/core/workers/chunks/d213024012b1a019bfde.js +1 -0
  369. package/assets/esri/core/workers/chunks/d5fec54e98c8622349a4.js +1 -0
  370. package/assets/esri/core/workers/chunks/d878bb6409df183ea0ce.js +1 -0
  371. package/assets/esri/core/workers/chunks/da124ccd18d2745195fe.js +1 -0
  372. package/assets/esri/core/workers/chunks/dd55151bfac60b0deaac.js +1 -0
  373. package/assets/esri/core/workers/chunks/e06cd10b6f8f363b5131.js +1 -0
  374. package/assets/esri/core/workers/chunks/e5352dc8983d06d4ee0f.js +1 -0
  375. package/assets/esri/core/workers/chunks/e67c4b7ad06d8404895a.js +1 -0
  376. package/assets/esri/core/workers/chunks/e810336a4292ea6076a6.js +1 -0
  377. package/assets/esri/core/workers/chunks/{18ab9cc85a1a7988fdfd.js → ea9ae9d2aef01af90896.js} +1 -1
  378. package/assets/esri/core/workers/chunks/ef757269fb3fe0e74ef8.js +1 -0
  379. package/assets/esri/core/workers/chunks/f0d342303fc20e266d27.js +1 -0
  380. package/assets/esri/core/workers/chunks/f73563b23fd8dc6cf2fe.js +1 -0
  381. package/assets/esri/core/workers/chunks/f85107720159b855a469.js +1 -0
  382. package/assets/esri/core/workers/chunks/fbc57985d55b5fbe1e8a.js +1 -0
  383. package/assets/esri/core/workers/chunks/fc95b1a36ed68b851400.js +1 -0
  384. package/assets/esri/core/workers/chunks/{7cf7f2b991a7cbdad2ce.js → fd28400141a6751327ae.js} +1 -1
  385. package/assets/esri/t9n/common.json +1 -1
  386. package/assets/esri/t9n/common_ar.json +1 -1
  387. package/assets/esri/t9n/common_bg.json +1 -1
  388. package/assets/esri/t9n/common_bs.json +1 -1
  389. package/assets/esri/t9n/common_ca.json +1 -1
  390. package/assets/esri/t9n/common_cs.json +1 -1
  391. package/assets/esri/t9n/common_da.json +1 -1
  392. package/assets/esri/t9n/common_de.json +1 -1
  393. package/assets/esri/t9n/common_el.json +1 -1
  394. package/assets/esri/t9n/common_en.json +1 -1
  395. package/assets/esri/t9n/common_es.json +1 -1
  396. package/assets/esri/t9n/common_et.json +1 -1
  397. package/assets/esri/t9n/common_fi.json +1 -1
  398. package/assets/esri/t9n/common_fr.json +1 -1
  399. package/assets/esri/t9n/common_he.json +1 -1
  400. package/assets/esri/t9n/common_hr.json +1 -1
  401. package/assets/esri/t9n/common_hu.json +1 -1
  402. package/assets/esri/t9n/common_id.json +1 -1
  403. package/assets/esri/t9n/common_it.json +1 -1
  404. package/assets/esri/t9n/common_ja.json +1 -1
  405. package/assets/esri/t9n/common_ko.json +1 -1
  406. package/assets/esri/t9n/common_lt.json +1 -1
  407. package/assets/esri/t9n/common_lv.json +1 -1
  408. package/assets/esri/t9n/common_nb.json +1 -1
  409. package/assets/esri/t9n/common_nl.json +1 -1
  410. package/assets/esri/t9n/common_pl.json +1 -1
  411. package/assets/esri/t9n/common_pt-BR.json +1 -1
  412. package/assets/esri/t9n/common_pt-PT.json +1 -1
  413. package/assets/esri/t9n/common_ro.json +1 -1
  414. package/assets/esri/t9n/common_ru.json +1 -1
  415. package/assets/esri/t9n/common_sk.json +1 -1
  416. package/assets/esri/t9n/common_sl.json +1 -1
  417. package/assets/esri/t9n/common_sr.json +1 -1
  418. package/assets/esri/t9n/common_sv.json +1 -1
  419. package/assets/esri/t9n/common_th.json +1 -1
  420. package/assets/esri/t9n/common_tr.json +1 -1
  421. package/assets/esri/t9n/common_uk.json +1 -1
  422. package/assets/esri/t9n/common_vi.json +1 -1
  423. package/assets/esri/t9n/common_zh-CN.json +1 -1
  424. package/assets/esri/t9n/common_zh-HK.json +1 -1
  425. package/assets/esri/t9n/common_zh-TW.json +1 -1
  426. package/assets/esri/themes/base/_core.scss +2 -0
  427. package/assets/esri/themes/base/widgets/_DatePicker.scss +4 -0
  428. package/assets/esri/themes/base/widgets/_FeatureForm.scss +10 -14
  429. package/assets/esri/themes/base/widgets/_Features.scss +1 -1
  430. package/assets/esri/themes/base/widgets/_ScaleRangeSlider.scss +1 -1
  431. package/assets/esri/themes/base/widgets/_TimeZoneLabel.scss +46 -0
  432. package/assets/esri/themes/base/widgets/_Tooltip.scss +1 -1
  433. package/assets/esri/themes/base/widgets/_UtilityNetworkTrace.scss +4 -0
  434. package/assets/esri/themes/dark/main.css +1 -1
  435. package/assets/esri/themes/light/main.css +1 -1
  436. package/assets/esri/themes/light/view.css +1 -1
  437. package/assets/esri/widgets/Editor/t9n/Editor_ar.json +1 -1
  438. package/assets/esri/widgets/Editor/t9n/Editor_bg.json +1 -1
  439. package/assets/esri/widgets/Editor/t9n/Editor_bs.json +1 -1
  440. package/assets/esri/widgets/Editor/t9n/Editor_ca.json +1 -1
  441. package/assets/esri/widgets/Editor/t9n/Editor_cs.json +1 -1
  442. package/assets/esri/widgets/Editor/t9n/Editor_da.json +1 -1
  443. package/assets/esri/widgets/Editor/t9n/Editor_de.json +1 -1
  444. package/assets/esri/widgets/Editor/t9n/Editor_el.json +1 -1
  445. package/assets/esri/widgets/Editor/t9n/Editor_es.json +1 -1
  446. package/assets/esri/widgets/Editor/t9n/Editor_et.json +1 -1
  447. package/assets/esri/widgets/Editor/t9n/Editor_fi.json +1 -1
  448. package/assets/esri/widgets/Editor/t9n/Editor_fr.json +1 -1
  449. package/assets/esri/widgets/Editor/t9n/Editor_he.json +1 -1
  450. package/assets/esri/widgets/Editor/t9n/Editor_hr.json +1 -1
  451. package/assets/esri/widgets/Editor/t9n/Editor_hu.json +1 -1
  452. package/assets/esri/widgets/Editor/t9n/Editor_id.json +1 -1
  453. package/assets/esri/widgets/Editor/t9n/Editor_it.json +1 -1
  454. package/assets/esri/widgets/Editor/t9n/Editor_ja.json +1 -1
  455. package/assets/esri/widgets/Editor/t9n/Editor_ko.json +1 -1
  456. package/assets/esri/widgets/Editor/t9n/Editor_lt.json +1 -1
  457. package/assets/esri/widgets/Editor/t9n/Editor_lv.json +1 -1
  458. package/assets/esri/widgets/Editor/t9n/Editor_nb.json +1 -1
  459. package/assets/esri/widgets/Editor/t9n/Editor_nl.json +1 -1
  460. package/assets/esri/widgets/Editor/t9n/Editor_pl.json +1 -1
  461. package/assets/esri/widgets/Editor/t9n/Editor_pt-BR.json +1 -1
  462. package/assets/esri/widgets/Editor/t9n/Editor_pt-PT.json +1 -1
  463. package/assets/esri/widgets/Editor/t9n/Editor_ro.json +1 -1
  464. package/assets/esri/widgets/Editor/t9n/Editor_ru.json +1 -1
  465. package/assets/esri/widgets/Editor/t9n/Editor_sk.json +1 -1
  466. package/assets/esri/widgets/Editor/t9n/Editor_sl.json +1 -1
  467. package/assets/esri/widgets/Editor/t9n/Editor_sr.json +1 -1
  468. package/assets/esri/widgets/Editor/t9n/Editor_sv.json +1 -1
  469. package/assets/esri/widgets/Editor/t9n/Editor_th.json +1 -1
  470. package/assets/esri/widgets/Editor/t9n/Editor_tr.json +1 -1
  471. package/assets/esri/widgets/Editor/t9n/Editor_uk.json +1 -1
  472. package/assets/esri/widgets/Editor/t9n/Editor_vi.json +1 -1
  473. package/assets/esri/widgets/Editor/t9n/Editor_zh-CN.json +1 -1
  474. package/assets/esri/widgets/Editor/t9n/Editor_zh-HK.json +1 -1
  475. package/assets/esri/widgets/Editor/t9n/Editor_zh-TW.json +1 -1
  476. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ar.json +1 -1
  477. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_bg.json +1 -1
  478. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_bs.json +1 -1
  479. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ca.json +1 -1
  480. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_cs.json +1 -1
  481. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_da.json +1 -1
  482. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_de.json +1 -1
  483. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_el.json +1 -1
  484. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_es.json +1 -1
  485. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_et.json +1 -1
  486. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_fi.json +1 -1
  487. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_fr.json +1 -1
  488. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_he.json +1 -1
  489. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_hr.json +1 -1
  490. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_hu.json +1 -1
  491. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_id.json +1 -1
  492. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_it.json +1 -1
  493. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ja.json +1 -1
  494. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ko.json +1 -1
  495. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_lt.json +1 -1
  496. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_lv.json +1 -1
  497. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_nb.json +1 -1
  498. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_nl.json +1 -1
  499. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pl.json +1 -1
  500. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pt-BR.json +1 -1
  501. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pt-PT.json +1 -1
  502. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ro.json +1 -1
  503. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ru.json +1 -1
  504. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sk.json +1 -1
  505. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sl.json +1 -1
  506. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sr.json +1 -1
  507. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sv.json +1 -1
  508. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_th.json +1 -1
  509. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_tr.json +1 -1
  510. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_uk.json +1 -1
  511. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_vi.json +1 -1
  512. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-CN.json +1 -1
  513. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-HK.json +1 -1
  514. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-TW.json +1 -1
  515. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ar.json +1 -1
  516. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bg.json +1 -1
  517. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bs.json +1 -1
  518. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ca.json +1 -1
  519. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_cs.json +1 -1
  520. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_da.json +1 -1
  521. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_de.json +1 -1
  522. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_el.json +1 -1
  523. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_es.json +1 -1
  524. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_et.json +1 -1
  525. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fi.json +1 -1
  526. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fr.json +1 -1
  527. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_he.json +1 -1
  528. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hr.json +1 -1
  529. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hu.json +1 -1
  530. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_id.json +1 -1
  531. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_it.json +1 -1
  532. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ja.json +1 -1
  533. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ko.json +1 -1
  534. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lt.json +1 -1
  535. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lv.json +1 -1
  536. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nb.json +1 -1
  537. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nl.json +1 -1
  538. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pl.json +1 -1
  539. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-BR.json +1 -1
  540. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-PT.json +1 -1
  541. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ro.json +1 -1
  542. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ru.json +1 -1
  543. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sk.json +1 -1
  544. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sl.json +1 -1
  545. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sr.json +1 -1
  546. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sv.json +1 -1
  547. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_th.json +1 -1
  548. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_tr.json +1 -1
  549. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_uk.json +1 -1
  550. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_vi.json +1 -1
  551. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-CN.json +1 -1
  552. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-HK.json +1 -1
  553. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-TW.json +1 -1
  554. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ar.json +1 -1
  555. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_bg.json +1 -1
  556. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_bs.json +1 -1
  557. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ca.json +1 -1
  558. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_cs.json +1 -1
  559. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_da.json +1 -1
  560. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_de.json +1 -1
  561. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_el.json +1 -1
  562. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_es.json +1 -1
  563. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_et.json +1 -1
  564. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_fi.json +1 -1
  565. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_fr.json +1 -1
  566. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_he.json +1 -1
  567. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_hr.json +1 -1
  568. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_hu.json +1 -1
  569. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_id.json +1 -1
  570. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_it.json +1 -1
  571. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ja.json +1 -1
  572. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ko.json +1 -1
  573. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_lt.json +1 -1
  574. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_lv.json +1 -1
  575. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_nb.json +1 -1
  576. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_nl.json +1 -1
  577. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_pl.json +1 -1
  578. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_pt-BR.json +1 -1
  579. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_pt-PT.json +1 -1
  580. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ro.json +1 -1
  581. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ru.json +1 -1
  582. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sk.json +1 -1
  583. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sl.json +1 -1
  584. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sr.json +1 -1
  585. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sv.json +1 -1
  586. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_th.json +1 -1
  587. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_tr.json +1 -1
  588. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_uk.json +1 -1
  589. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_vi.json +1 -1
  590. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_zh-CN.json +1 -1
  591. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_zh-HK.json +1 -1
  592. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_zh-TW.json +1 -1
  593. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ar.json +1 -1
  594. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_bg.json +1 -1
  595. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_bs.json +1 -1
  596. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ca.json +1 -1
  597. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_cs.json +1 -1
  598. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_da.json +1 -1
  599. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_de.json +1 -1
  600. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_el.json +1 -1
  601. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_es.json +1 -1
  602. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_et.json +1 -1
  603. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_fi.json +1 -1
  604. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_fr.json +1 -1
  605. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_he.json +1 -1
  606. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_hr.json +1 -1
  607. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_hu.json +1 -1
  608. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_id.json +1 -1
  609. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_it.json +1 -1
  610. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ja.json +1 -1
  611. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ko.json +1 -1
  612. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_lt.json +1 -1
  613. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_lv.json +1 -1
  614. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_nb.json +1 -1
  615. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_nl.json +1 -1
  616. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_pl.json +1 -1
  617. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_pt-BR.json +1 -1
  618. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_pt-PT.json +1 -1
  619. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ro.json +1 -1
  620. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ru.json +1 -1
  621. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sk.json +1 -1
  622. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sl.json +1 -1
  623. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sr.json +1 -1
  624. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sv.json +1 -1
  625. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_th.json +1 -1
  626. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_tr.json +1 -1
  627. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_uk.json +1 -1
  628. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_vi.json +1 -1
  629. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_zh-CN.json +1 -1
  630. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_zh-HK.json +1 -1
  631. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_zh-TW.json +1 -1
  632. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ar.json +1 -1
  633. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_bg.json +1 -1
  634. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_bs.json +1 -1
  635. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ca.json +1 -1
  636. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_cs.json +1 -1
  637. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_da.json +1 -1
  638. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_de.json +1 -1
  639. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_el.json +1 -1
  640. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_es.json +1 -1
  641. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_et.json +1 -1
  642. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_fi.json +1 -1
  643. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_fr.json +1 -1
  644. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_he.json +1 -1
  645. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_hr.json +1 -1
  646. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_hu.json +1 -1
  647. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_id.json +1 -1
  648. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_it.json +1 -1
  649. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ja.json +1 -1
  650. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ko.json +1 -1
  651. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_lt.json +1 -1
  652. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_lv.json +1 -1
  653. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_nb.json +1 -1
  654. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_nl.json +1 -1
  655. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pl.json +1 -1
  656. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pt-BR.json +1 -1
  657. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pt-PT.json +1 -1
  658. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ro.json +1 -1
  659. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ru.json +1 -1
  660. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sk.json +1 -1
  661. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sl.json +1 -1
  662. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sr.json +1 -1
  663. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sv.json +1 -1
  664. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_th.json +1 -1
  665. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_tr.json +1 -1
  666. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_uk.json +1 -1
  667. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_vi.json +1 -1
  668. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-CN.json +1 -1
  669. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-HK.json +1 -1
  670. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-TW.json +1 -1
  671. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ar.json +1 -1
  672. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_bg.json +1 -1
  673. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_bs.json +1 -1
  674. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ca.json +1 -1
  675. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_cs.json +1 -1
  676. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_da.json +1 -1
  677. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_de.json +1 -1
  678. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_el.json +1 -1
  679. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_es.json +1 -1
  680. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_et.json +1 -1
  681. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fi.json +1 -1
  682. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fr.json +1 -1
  683. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_he.json +1 -1
  684. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_hr.json +1 -1
  685. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_hu.json +1 -1
  686. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_id.json +1 -1
  687. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_it.json +1 -1
  688. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ja.json +1 -1
  689. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ko.json +1 -1
  690. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lt.json +1 -1
  691. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lv.json +1 -1
  692. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_nb.json +1 -1
  693. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_nl.json +1 -1
  694. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pl.json +1 -1
  695. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pt-BR.json +1 -1
  696. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pt-PT.json +1 -1
  697. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ro.json +1 -1
  698. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ru.json +1 -1
  699. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sk.json +1 -1
  700. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sl.json +1 -1
  701. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sr.json +1 -1
  702. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sv.json +1 -1
  703. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_th.json +1 -1
  704. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_tr.json +1 -1
  705. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_uk.json +1 -1
  706. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_vi.json +1 -1
  707. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-CN.json +1 -1
  708. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-HK.json +1 -1
  709. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-TW.json +1 -1
  710. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ar.json +1 -1
  711. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_bg.json +1 -1
  712. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_bs.json +1 -1
  713. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ca.json +1 -1
  714. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_cs.json +1 -1
  715. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_da.json +1 -1
  716. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_de.json +1 -1
  717. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_el.json +1 -1
  718. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_es.json +1 -1
  719. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_et.json +1 -1
  720. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_fi.json +1 -1
  721. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_fr.json +1 -1
  722. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_he.json +1 -1
  723. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_hr.json +1 -1
  724. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_hu.json +1 -1
  725. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_id.json +1 -1
  726. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_it.json +1 -1
  727. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ja.json +1 -1
  728. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ko.json +1 -1
  729. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_lt.json +1 -1
  730. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_lv.json +1 -1
  731. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_nb.json +1 -1
  732. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_nl.json +1 -1
  733. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pl.json +1 -1
  734. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pt-BR.json +1 -1
  735. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pt-PT.json +1 -1
  736. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ro.json +1 -1
  737. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ru.json +1 -1
  738. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sk.json +1 -1
  739. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sl.json +1 -1
  740. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sr.json +1 -1
  741. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sv.json +1 -1
  742. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_th.json +1 -1
  743. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_tr.json +1 -1
  744. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_uk.json +1 -1
  745. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_vi.json +1 -1
  746. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-CN.json +1 -1
  747. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-HK.json +1 -1
  748. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-TW.json +1 -1
  749. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ar.json +1 -1
  750. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_bg.json +1 -1
  751. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_bs.json +1 -1
  752. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ca.json +1 -1
  753. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_cs.json +1 -1
  754. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_da.json +1 -1
  755. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_de.json +1 -1
  756. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_el.json +1 -1
  757. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_es.json +1 -1
  758. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_et.json +1 -1
  759. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_fi.json +1 -1
  760. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_fr.json +1 -1
  761. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_he.json +1 -1
  762. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_hr.json +1 -1
  763. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_hu.json +1 -1
  764. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_id.json +1 -1
  765. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_it.json +1 -1
  766. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ja.json +1 -1
  767. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ko.json +1 -1
  768. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_lt.json +1 -1
  769. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_lv.json +1 -1
  770. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_nb.json +1 -1
  771. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_nl.json +1 -1
  772. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_pl.json +1 -1
  773. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_pt-BR.json +1 -1
  774. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_pt-PT.json +1 -1
  775. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ro.json +1 -1
  776. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ru.json +1 -1
  777. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sk.json +1 -1
  778. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sl.json +1 -1
  779. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sr.json +1 -1
  780. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sv.json +1 -1
  781. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_th.json +1 -1
  782. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_tr.json +1 -1
  783. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_uk.json +1 -1
  784. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_vi.json +1 -1
  785. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_zh-CN.json +1 -1
  786. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_zh-HK.json +1 -1
  787. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_zh-TW.json +1 -1
  788. package/chunks/ComponentShader.glsl.js +27 -27
  789. package/chunks/HighlightApply.glsl.js +6 -7
  790. package/chunks/HighlightBlur.glsl.js +5 -6
  791. package/chunks/HighlightDownsample.glsl.js +8 -8
  792. package/chunks/languageUtils.js +1 -1
  793. package/core/MemCache.js +1 -1
  794. package/core/MemCachePool.js +1 -1
  795. package/core/colorUtils.js +1 -1
  796. package/core/sql/WhereClauseCache.js +1 -1
  797. package/geometry/GeometryCursor.js +1 -1
  798. package/geometry/support/meshUtils/loadExternal.js +1 -1
  799. package/interfaces.d.ts +320 -46
  800. package/intl/date.js +1 -1
  801. package/kernel.js +1 -1
  802. package/layers/GroupLayer.js +1 -1
  803. package/layers/MapNotesLayer.js +1 -1
  804. package/layers/SceneLayer.js +1 -1
  805. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  806. package/layers/graphics/data/AttributesBuilder.js +1 -1
  807. package/layers/graphics/data/FeatureStore.js +1 -1
  808. package/layers/graphics/data/QueryEngine.js +1 -1
  809. package/layers/graphics/data/QueryEngineResult.js +1 -1
  810. package/layers/graphics/data/attributeSupport.js +1 -1
  811. package/layers/graphics/data/geometryUtils.js +5 -0
  812. package/layers/graphics/data/queryUtils.js +5 -0
  813. package/layers/graphics/data/queryValidationUtils.js +5 -0
  814. package/layers/graphics/data/spatialQuerySupport.js +1 -1
  815. package/layers/graphics/editingSupport.js +1 -1
  816. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  817. package/layers/graphics/sources/csv/csv.js +1 -1
  818. package/layers/graphics/sources/geojson/GeoJSONSourceWorker.js +1 -1
  819. package/layers/graphics/sources/support/MemorySourceWorker.js +1 -1
  820. package/layers/graphics/sources/support/sourceUtils.js +1 -1
  821. package/layers/ogc/wfsUtils.js +1 -1
  822. package/layers/support/Field.js +1 -1
  823. package/layers/support/FieldsIndex.js +1 -1
  824. package/layers/support/LayerContingentValuesCache.js +1 -1
  825. package/layers/support/fieldProperties.js +1 -1
  826. package/layers/support/fieldUtils.js +1 -1
  827. package/layers/support/imageryRendererUtils.js +1 -1
  828. package/layers/support/labelFormatUtils.js +1 -1
  829. package/layers/support/rasterFormats/Lerc.js +1 -1
  830. package/layers/support/rasterFormats/RasterCodec.js +1 -1
  831. package/layers/support/rasterFormats/pixelRangeUtils.js +1 -1
  832. package/package.json +2 -2
  833. package/renderers/UniqueValueRenderer.js +1 -1
  834. package/renderers/support/utils.js +1 -1
  835. package/rest/featureService/FeatureService.js +1 -1
  836. package/rest/query/operations/query.js +1 -1
  837. package/smartMapping/labels/clusters.js +1 -1
  838. package/smartMapping/popup/support/clusterUtils.js +1 -1
  839. package/smartMapping/renderers/color.js +1 -1
  840. package/smartMapping/renderers/opacity.js +1 -1
  841. package/smartMapping/renderers/size.js +1 -1
  842. package/smartMapping/renderers/support/utils.js +1 -1
  843. package/smartMapping/renderers/type.js +1 -1
  844. package/smartMapping/renderers/univariateColorSize.js +1 -1
  845. package/smartMapping/statistics/histogram.js +1 -1
  846. package/smartMapping/statistics/summaryStatistics.js +1 -1
  847. package/smartMapping/statistics/support/statsWorker.js +1 -1
  848. package/smartMapping/statistics/support/utils.js +1 -1
  849. package/smartMapping/support/adapters/FeatureLayerAdapter.js +1 -1
  850. package/smartMapping/support/adapters/FeatureLayerBinningAdapter.js +1 -1
  851. package/smartMapping/support/adapters/InMemoryLayerAdapter.js +1 -1
  852. package/smartMapping/support/adapters/OGCFeatureLayerAdapter.js +1 -1
  853. package/smartMapping/support/adapters/SceneLayerAdapter.js +1 -1
  854. package/smartMapping/support/adapters/StreamLayerAdapter.js +1 -1
  855. package/smartMapping/support/adapters/support/utils.js +1 -1
  856. package/smartMapping/support/clusterUtils.js +1 -1
  857. package/smartMapping/support/utils.js +1 -1
  858. package/support/revision.js +1 -1
  859. package/symbols/cim/CIMSymbolHelper.js +1 -1
  860. package/symbols/cim/effects/EffectDashes.js +1 -1
  861. package/symbols/support/previewCIMSymbol.js +1 -1
  862. package/time/timeZoneUtils.js +1 -1
  863. package/versionManagement/VersionManagementService.js +1 -1
  864. package/views/2d/engine/BitmapContainer.js +1 -1
  865. package/views/2d/engine/BitmapTile.js +1 -1
  866. package/views/2d/engine/Container.js +1 -1
  867. package/views/2d/engine/DisplayObject.js +1 -1
  868. package/views/2d/engine/FeatureContainer.js +1 -1
  869. package/views/2d/engine/Stage.js +1 -1
  870. package/views/2d/engine/flow/FlowContainer.js +1 -1
  871. package/views/2d/engine/imagery/RasterVFContainer.js +1 -1
  872. package/views/2d/engine/vectorTiles/RenderBucket.js +1 -1
  873. package/views/2d/engine/webgl/OverlayContainer.js +1 -1
  874. package/views/2d/engine/webgl/Painter.js +1 -1
  875. package/views/2d/engine/webgl/TileContainer.js +1 -1
  876. package/views/2d/engine/webgl/WGLContainer.js +1 -1
  877. package/views/2d/input/handlers/KeyPan.js +1 -1
  878. package/views/2d/layers/GroupLayerView2D.js +1 -1
  879. package/views/2d/layers/ImageryLayerView2D.js +1 -1
  880. package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
  881. package/views/2d/layers/MapNotesLayerView2D.js +1 -1
  882. package/views/2d/layers/features/controllers/FeatureController2D.js +1 -1
  883. package/views/2d/layers/features/support/FeatureFilter.js +1 -1
  884. package/views/2d/viewpointUtils.js +1 -1
  885. package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementVisualization.js +1 -1
  886. package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementVisualization.js +1 -1
  887. package/views/3d/glTF/internal/Resource.js +1 -1
  888. package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
  889. package/views/3d/layers/I3SMeshView3D.js +1 -1
  890. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  891. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
  892. package/views/3d/layers/i3s/I3SOverrides.js +1 -1
  893. package/views/3d/layers/i3s/I3SQueryEngine.js +1 -1
  894. package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
  895. package/views/3d/support/buffer/InterleavedLayout.js +1 -1
  896. package/views/3d/terrain/PlanarPatch.js +1 -1
  897. package/views/3d/terrain/SphericalPatch.js +1 -1
  898. package/views/3d/terrain/TerrainSurface.js +1 -1
  899. package/views/3d/terrain/Tile.js +1 -1
  900. package/views/3d/terrain/TileRenderer.js +1 -1
  901. package/views/3d/terrain/TileTexture.js +1 -1
  902. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  903. package/views/3d/webgl-engine/collections/Component/Material/shader/VertexDiscardByOpacity.glsl.js +1 -1
  904. package/views/3d/webgl-engine/core/FBOCache.js +1 -1
  905. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +54 -33
  906. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUDOcclusionPass.glsl.js +1 -2
  907. package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js +1 -1
  908. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  909. package/views/3d/webgl-engine/effects/highlight/HighlightPassParameters.js +1 -1
  910. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  911. package/views/3d/webgl-engine/lib/TextRenderer.js +1 -1
  912. package/views/3d/webgl-engine/lib/edgeRendering/EdgeRenderer.js +1 -1
  913. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  914. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  915. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  916. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  917. package/views/3d/webgl-engine/shaders/HUDMaterialTechniqueConfiguration.js +1 -1
  918. package/views/3d/webgl-engine/shaders/HighlightApply.glsl.js +1 -1
  919. package/views/3d/webgl-engine/shaders/HighlightBlur.glsl.js +1 -1
  920. package/views/3d/webgl-engine/shaders/HighlightDownsample.glsl.js +1 -1
  921. package/views/3d/webgl-engine/shaders/LineCalloutTechniqueConfiguration.js +1 -1
  922. package/views/DOMContainer.js +1 -1
  923. package/views/interactive/SegmentLabels.js +1 -1
  924. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiledFetcher.js +1 -1
  925. package/views/overlay/TextOverlayItem.js +1 -1
  926. package/views/webgl/VertexArrayObject.js +1 -1
  927. package/webdoc/webdocLoadUtils.js +1 -1
  928. package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
  929. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
  930. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  931. package/widgets/Editor/CreateFeaturesWorkflowData.js +1 -1
  932. package/widgets/Editor/EditorViewModel.js +1 -1
  933. package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
  934. package/widgets/Editor/UpdateRecordWorkflow.js +1 -1
  935. package/widgets/Editor/UpdateWorkflow.js +1 -1
  936. package/widgets/Editor/workflowUtils.js +1 -1
  937. package/widgets/Editor.js +1 -1
  938. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  939. package/widgets/Feature/FeatureViewModel.js +1 -1
  940. package/widgets/Feature/support/featureUtils.js +1 -1
  941. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  942. package/widgets/FeatureForm/FieldInput.js +1 -1
  943. package/widgets/FeatureForm/InputBase.js +1 -1
  944. package/widgets/FeatureForm/RelationshipInput.js +1 -1
  945. package/widgets/FeatureForm/css.js +1 -1
  946. package/widgets/FeatureForm/featureFormUtils.js +1 -1
  947. package/widgets/FeatureForm.js +1 -1
  948. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  949. package/widgets/FeatureTable/FieldColumn.js +1 -1
  950. package/widgets/Features/FeaturesViewModel.js +1 -1
  951. package/widgets/Features/css.js +1 -1
  952. package/widgets/Features.js +1 -1
  953. package/widgets/Legend/LegendViewModel.js +1 -1
  954. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  955. package/widgets/Legend/support/utils.js +1 -1
  956. package/widgets/LineOfSight.js +1 -1
  957. package/widgets/OrientedImageryViewer.d.ts +4 -0
  958. package/widgets/Popup/actionUtils.js +1 -1
  959. package/widgets/ScaleRangeSlider.js +1 -1
  960. package/widgets/TimeZoneLabel/TimeZoneLabelViewModel.js +5 -0
  961. package/widgets/TimeZoneLabel/css.js +5 -0
  962. package/widgets/TimeZoneLabel.d.ts +4 -0
  963. package/widgets/TimeZoneLabel.js +5 -0
  964. package/widgets/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.js +1 -1
  965. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  966. package/widgets/UtilityNetworkTrace/support/GeometryHandler.js +1 -1
  967. package/widgets/UtilityNetworkTrace/support/ResultAreaHandler.js +1 -1
  968. package/widgets/UtilityNetworkTrace.js +1 -1
  969. package/widgets/UtilityNetworkValidateTopology/UtilityNetworkValidateTopologyViewModel.js +1 -1
  970. package/widgets/support/SnappingControls/SnappingControlsViewModel.js +1 -1
  971. package/assets/esri/core/workers/chunks/02120d192eafd7612475.js +0 -1
  972. package/assets/esri/core/workers/chunks/089e59445bd0b1131ffb.js +0 -1
  973. package/assets/esri/core/workers/chunks/0b539dacc5c72399ab32.js +0 -1
  974. package/assets/esri/core/workers/chunks/0bb57b54897fb4381b46.js +0 -1
  975. package/assets/esri/core/workers/chunks/0beebbb0c6dad0e742d7.js +0 -1
  976. package/assets/esri/core/workers/chunks/0d77c9c97301a4ee4167.js +0 -1
  977. package/assets/esri/core/workers/chunks/0d8ca51043c7784aed96.js +0 -1
  978. package/assets/esri/core/workers/chunks/112e89da628bdea5355c.js +0 -1
  979. package/assets/esri/core/workers/chunks/121a9e148509f2fe2210.js +0 -1
  980. package/assets/esri/core/workers/chunks/1586929658af88f6f961.js +0 -1
  981. package/assets/esri/core/workers/chunks/1856d16d738f44f58084.js +0 -1
  982. package/assets/esri/core/workers/chunks/1a36703ebe934749646e.js +0 -1
  983. package/assets/esri/core/workers/chunks/24a0cf405195421c0d06.js +0 -1
  984. package/assets/esri/core/workers/chunks/24c504585da8e44f956f.js +0 -1
  985. package/assets/esri/core/workers/chunks/24ff267cf253feac22de.js +0 -1
  986. package/assets/esri/core/workers/chunks/2561c2bd5a0826dedcb1.js +0 -1
  987. package/assets/esri/core/workers/chunks/2832161454babb40614b.js +0 -1
  988. package/assets/esri/core/workers/chunks/29cab345819ec02ed60a.js +0 -1
  989. package/assets/esri/core/workers/chunks/2f8e71dac98135bbc3e6.js +0 -1
  990. package/assets/esri/core/workers/chunks/36ab90fb34b9716a9983.js +0 -1
  991. package/assets/esri/core/workers/chunks/3e40c8402ff7a8fe48b9.js +0 -1
  992. package/assets/esri/core/workers/chunks/3ea0b872436fce84b927.js +0 -1
  993. package/assets/esri/core/workers/chunks/40633064c290dc2af9ea.js +0 -1
  994. package/assets/esri/core/workers/chunks/4108445c4a653772c5ee.js +0 -1
  995. package/assets/esri/core/workers/chunks/42ec4c80b0c2944cd65c.js +0 -1
  996. package/assets/esri/core/workers/chunks/432a009e756643f59cb4.js +0 -1
  997. package/assets/esri/core/workers/chunks/44a3d01b7daa46584ed9.js +0 -1
  998. package/assets/esri/core/workers/chunks/44b870cb53ba68b17c32.js +0 -1
  999. package/assets/esri/core/workers/chunks/4736188659a62488c777.js +0 -1
  1000. package/assets/esri/core/workers/chunks/4763831c8815fed636f7.js +0 -1
  1001. package/assets/esri/core/workers/chunks/4d81aa50d90f5701a343.js +0 -1
  1002. package/assets/esri/core/workers/chunks/4e6bf1efe3b0b474cbb4.js +0 -1
  1003. package/assets/esri/core/workers/chunks/526ae87737777154c3f3.js +0 -1
  1004. package/assets/esri/core/workers/chunks/52cef7cd3aaaa4f45c94.js +0 -1
  1005. package/assets/esri/core/workers/chunks/53859d0bd8bb14af2d4d.js +0 -1
  1006. package/assets/esri/core/workers/chunks/593d7f17090b74945345.js +0 -1
  1007. package/assets/esri/core/workers/chunks/5a3ccc0a19ac8fa9e524.js +0 -1
  1008. package/assets/esri/core/workers/chunks/5baae5acd184e87d5dc4.js +0 -1
  1009. package/assets/esri/core/workers/chunks/5bdd2a3422fe52aa2c65.js +0 -1
  1010. package/assets/esri/core/workers/chunks/66ba749ab0a631bbfdec.js +0 -1
  1011. package/assets/esri/core/workers/chunks/69da907a92901f0fb391.js +0 -1
  1012. package/assets/esri/core/workers/chunks/6b14d89d689a21014aec.js +0 -1
  1013. package/assets/esri/core/workers/chunks/6b1856303d1562f05100.js +0 -1
  1014. package/assets/esri/core/workers/chunks/6b7b5544ed1f9a84623f.js +0 -1
  1015. package/assets/esri/core/workers/chunks/6ce986f4213df8a2d934.js +0 -1
  1016. package/assets/esri/core/workers/chunks/784ffd52315a4d55d683.js +0 -1
  1017. package/assets/esri/core/workers/chunks/785d9a9a933314551b10.js +0 -1
  1018. package/assets/esri/core/workers/chunks/84870178173951ad6c2b.js +0 -1
  1019. package/assets/esri/core/workers/chunks/88d43db03cc11cbffa68.js +0 -1
  1020. package/assets/esri/core/workers/chunks/8e4c4ba900a90373217f.js +0 -1
  1021. package/assets/esri/core/workers/chunks/8f3680fee85a05839489.js +0 -1
  1022. package/assets/esri/core/workers/chunks/902b672a3475ec83b58b.js +0 -1
  1023. package/assets/esri/core/workers/chunks/943ea851c1b07af91172.js +0 -1
  1024. package/assets/esri/core/workers/chunks/97aecf210938015cc7a3.js +0 -1
  1025. package/assets/esri/core/workers/chunks/9a5e3b0cc8536f79c377.js +0 -1
  1026. package/assets/esri/core/workers/chunks/9f8207c82a17508a87a8.js +0 -1
  1027. package/assets/esri/core/workers/chunks/a01ffe03b1465c21b9e6.js +0 -1
  1028. package/assets/esri/core/workers/chunks/a298c9031962951e55a9.js +0 -1
  1029. package/assets/esri/core/workers/chunks/a5a7bbdd8298016535bc.js +0 -1
  1030. package/assets/esri/core/workers/chunks/aa453ae526a233cedf0c.js +0 -1
  1031. package/assets/esri/core/workers/chunks/ab5ffcf0db724d40f714.js +0 -1
  1032. package/assets/esri/core/workers/chunks/ad38e456a7cee940a165.js +0 -1
  1033. package/assets/esri/core/workers/chunks/adfbc168be8c49b51e1b.js +0 -1
  1034. package/assets/esri/core/workers/chunks/ae3ea5fa813aec0db5e1.js +0 -1
  1035. package/assets/esri/core/workers/chunks/ae59e10b225f08f38487.js +0 -1
  1036. package/assets/esri/core/workers/chunks/b030cf4b00e42337dc89.js +0 -1
  1037. package/assets/esri/core/workers/chunks/b0526633a93ef69ec47b.js +0 -1
  1038. package/assets/esri/core/workers/chunks/b0d6e6e489aaa331861c.js +0 -1
  1039. package/assets/esri/core/workers/chunks/b0ddb503463328531d8f.js +0 -1
  1040. package/assets/esri/core/workers/chunks/b1a8024bf8cdd0cd3884.js +0 -1
  1041. package/assets/esri/core/workers/chunks/b4f31d291c05b5f8ddac.js +0 -1
  1042. package/assets/esri/core/workers/chunks/b99bc08a01e9250b0a31.js +0 -1
  1043. package/assets/esri/core/workers/chunks/be57692d4b9ff6cd4c02.js +0 -1
  1044. package/assets/esri/core/workers/chunks/c260ad3434bb00ba64a7.js +0 -1
  1045. package/assets/esri/core/workers/chunks/c459c8d8630eb4b955b1.js +0 -1
  1046. package/assets/esri/core/workers/chunks/c5acddea13fd01912e79.js +0 -1
  1047. package/assets/esri/core/workers/chunks/c92e75b79aff7b505b31.js +0 -1
  1048. package/assets/esri/core/workers/chunks/ca85e88dad30b5f2956b.js +0 -1
  1049. package/assets/esri/core/workers/chunks/ce3bb546a729f0ccf696.js +0 -1
  1050. package/assets/esri/core/workers/chunks/cfd63bd57eea2caa4bcb.js +0 -1
  1051. package/assets/esri/core/workers/chunks/d60d5f006375f7fcc88c.js +0 -1
  1052. package/assets/esri/core/workers/chunks/d6ded127949160103f69.js +0 -1
  1053. package/assets/esri/core/workers/chunks/d95eed98316e59f8f35d.js +0 -1
  1054. package/assets/esri/core/workers/chunks/dca925a0d73f967f6897.js +0 -1
  1055. package/assets/esri/core/workers/chunks/e0b49c5eb5427656e835.js +0 -1
  1056. package/assets/esri/core/workers/chunks/e52d5a48e83d8df36f92.js +0 -1
  1057. package/assets/esri/core/workers/chunks/e8688b6cc3b3c1010b43.js +0 -1
  1058. package/assets/esri/core/workers/chunks/eb4bfafe821daeb4bb6e.js +0 -1
  1059. package/assets/esri/core/workers/chunks/eda86faa708cfe4c9f9a.js +0 -1
  1060. package/assets/esri/core/workers/chunks/f2718e260f594537f7fd.js +0 -1
  1061. package/assets/esri/core/workers/chunks/f57100e3dfc7f087c3ad.js +0 -1
  1062. package/assets/esri/core/workers/chunks/f5fd2ee5878c63777c51.js +0 -1
  1063. package/assets/esri/core/workers/chunks/f6b7036114b1d754fdd9.js +0 -1
  1064. package/assets/esri/core/workers/chunks/f6c0680c535c5a3c73ee.js +0 -1
  1065. package/layers/graphics/data/utils.js +0 -5
  1066. package/layers/graphics/sources/support/QueryEngineBuildLayer.js +0 -5
  1067. package/views/2d/engine/webgl/GroupContainer.js +0 -5
  1068. package/views/3d/analysis/DimensionAnalysisView3D.d.ts +0 -4
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import"../../../geometry.js";import e from"../../../core/Error.js";import{pt2px as t}from"../../../core/screenUtils.js";import n from"../../../geometry/SpatialReference.js";import{quantizePoint as r}from"../../../geometry/support/quantizationUtils.js";import{isWrappable as i,getInfo as o}from"../../../geometry/support/spatialReferenceUtils.js";import{isDateField as s,isNumericField as l,numericTypes as a}from"../../../layers/support/fieldUtils.js";import{evaluateDensityKernel as u,createValueFunction as f}from"../../../renderers/support/heatmapUtils.js";import{processNullValue as c,getNormalizedValue as m}from"../../../statistics/utils.js";import{loadArcade as d}from"../../../support/arcadeOnDemand.js";import p from"../../../geometry/Point.js";let h=null;function y(e,t,n){return e.x<0?e.x+=t:e.x>n&&(e.x-=t),e}function $(e,t,n,s){const l=i(n)?o(n):null,a=l?Math.round((l.valid[1]-l.valid[0])/t.scale[0]):null;return e.map((e=>{const n=new p(e.geometry);return r(t,n,n,n.hasZ,n.hasM),e.geometry=l?y(n,a??0,s[0]):n,e}))}function g(e,n=18,r,i,o,s){const l=new Float64Array(o*s);n=Math.round(t(n));let a=Number.POSITIVE_INFINITY,c=Number.NEGATIVE_INFINITY,m=0,d=0,p=0,h=0;const y=f(i,r);for(const{geometry:t,attributes:f}of e){const{x:e,y:r}=t,i=Math.max(0,e-n),$=Math.max(0,r-n),g=Math.min(s,r+n),I=Math.min(o,e+n),j=+y(f);for(let t=$;t<g;t++)for(let s=i;s<I;s++){const i=t*o+s,f=u(s-e,t-r,n),y=l[i];m=l[i]+=f*j;const $=m-y;d+=$,p+=$*$,m<a&&(a=m),m>c&&(c=m),h++}}if(!h)return{mean:0,stddev:0,min:0,max:0,mid:0,count:0};const $=(c-a)/2;return{mean:d/h,stdDev:Math.sqrt((p-d*d/h)/h),min:a,max:c,mid:$,count:h}}async function I(e,t){if(!t)return[];const{field:r,field2:i,field3:o,fieldDelimiter:l,fieldInfos:a,timeZone:u}=e,f=r&&a?.find((e=>e.name.toLowerCase()===r.toLowerCase())),p=!!f&&s(f),y=e.valueExpression,$=e.normalizationType,g=e.normalizationField,I=e.normalizationTotal,j=[],w=e.viewInfoParams;let x=null,F=null;if(y){if(!h){const{arcadeUtils:e}=await d();h=e}h.hasGeometryOperations(y)&&await h.enableGeometryOperations(),x=h.createFunction(y),F=w?h.getViewInfo({viewingMode:w.viewingMode,scale:w.scale,spatialReference:new n(w.spatialReference)}):null}const b=e.fieldInfos,v=!(t[0]&&"declaredClass"in t[0]&&"esri.Graphic"===t[0].declaredClass)&&b?{fields:b}:null;return t.forEach((e=>{const t=e.attributes;let n;if(y){const t=v?{...e,layer:v}:e,r=h.createExecContext(t,F,u);n=h.executeFunction(x,r)}else t&&(n=t[r],i?(n=`${c(n)}${l}${c(t[i])}`,o&&(n=`${n}${l}${c(t[o])}`)):p&&"string"==typeof n&&(n=n?new Date(n).getTime():null));if($&&"number"==typeof n&&isFinite(n)){const e=t&&parseFloat(t[g]);n=m(n,$,e,I)}j.push(n)})),j}function j(e){const t=e.field,n=e.normalizationType,r=e.normalizationField;let i;return"field"===n?i="(NOT "+r+" = 0)":"log"!==n&&"natural-log"!==n&&"square-root"!==n||(i=`(${t} > 0)`),i}function w(e,t,n){const r=null!=t?e+" >= "+t:"",i=null!=n?e+" <= "+n:"";let o="";return o=r&&i?b(r,i):r||i,o?"("+o+")":""}function x(t,n,r,i){let o;return n?n.name!==t.objectIdField&&i.includes(n.type)||(o=new e(r,"'field' should be one of these types: "+i.join(","))):o=new e(r,"'field' is not defined in the layer schema"),o}function F(t,n,r){let i;return n?n.name!==t.objectIdField&&l(n)||(i=new e(r,"'field' should be one of these numeric types: "+a.join(","))):i=new e(r,"'field' is not defined in the layer schema"),i}function b(e,t){let n=null!=e?e:"";return null!=t&&t&&(n=n?"("+n+") AND ("+t+")":t),n}function v(t,n){if(t&&"intersects"!==t.spatialRelationship)return new e(n,"Only 'intersects' spatialRelationship is supported for featureFilter")}function E(t,n,r){const i=N({layer:t,fields:n});if(i.length)return new e(r,"Unknown fields: "+i.join(", ")+". You can only use fields defined in the layer schema");const o=M({layer:t,fields:n});return o.length?new e(r,"Unsupported fields: "+o.join(", ")+". You can only use fields that can be fetched i.e. AdapterFieldUsageInfo.supportsStatistics must be true"):void 0}function N(e){const t=e.layer;return e.fields.filter((e=>!t.getField(e)))}function M(e){const t=e.layer;return e.fields.filter((e=>{const n=t.getFieldUsageInfo(e);return!n||!n.supportsStatistics}))}function U(e,t,n){const r=[],i=[],o=[],s=[],l=[];e.forEach(((e,t)=>{const a=e.field?"field":"expression",u=e.field||e.valueExpression;e.field?(l.push(u),i.push(`var ${a}${t} = Number($feature["${u}"]);`)):(r.push(`function getValueForExpr${t}() {\n ${u} \n}`),i.push(`var ${a}${t} = Number(getValueForExpr${t}());`)),n||o.push(`${a}${t} = IIf(${a}${t} < 0, 0, ${a}${t});`),s.push(`${a}${t}`)}));let a="return sum;";const u=r.length?null:l.reduce(((e,t)=>`${e} + ${t}`));let f=null;t||n?t?n||(a="return IIf(sum >= 0, sum, null);",u&&(f=`(( ${u} ) >= 0)`)):(a="return IIf(sum != 0, sum, null);",u&&(f=`(( ${u} ) <> 0)`)):(a="return IIf(sum > 0, sum, null);",u&&(f=`(( ${u} ) > 0)`));return{valueExpression:[r.length?r.join("\n"):"",i.join("\n"),o.join("\n"),`var sum = ${s.join(" + ")};`,a].filter(Boolean).join("\n\n"),sqlExpression:u,sqlWhere:f}}export{g as calculateHeatmapStats,I as getDataValues,w as getRangeExpr,j as getSQLFilterForNormalization,U as getSumOfAttributesExpr,b as mergeWhereClauses,$ as quantizeFeatures,E as verifyBasicFieldValidity,x as verifyFieldType,v as verifyFilterValidty,F as verifyNumericField};
5
+ import"../../../geometry.js";import e from"../../../core/Error.js";import{pt2px as t}from"../../../core/screenUtils.js";import{millisecondsPerTimeUnit as n}from"../../../core/timeUtils.js";import r from"../../../geometry/SpatialReference.js";import{quantizePoint as o}from"../../../geometry/support/quantizationUtils.js";import{isWrappable as i,getInfo as s}from"../../../geometry/support/spatialReferenceUtils.js";import{isTimeOnlyField as l,isNumericField as u,numericTypes as a}from"../../../layers/support/fieldUtils.js";import{evaluateDensityKernel as f,createValueFunction as m}from"../../../renderers/support/heatmapUtils.js";import{isAnyDateField as c}from"../../support/utils.js";import{processNullValue as d,getNormalizedValue as p}from"../../../statistics/utils.js";import{loadArcade as h}from"../../../support/arcadeOnDemand.js";import y from"../../../geometry/Point.js";let $=null;const g=/^(?<hh>([0-1][0-9])|([2][0-3])):(?<mm>[0-5][0-9])(:(?<ss>[0-5][0-9]))?([.](?<ms>\d+))?$/;function I(e,t,n){return e.x<0?e.x+=t:e.x>n&&(e.x-=t),e}function j(e,t,n,r){const l=i(n)?s(n):null,u=l?Math.round((l.valid[1]-l.valid[0])/t.scale[0]):null;return e.map((e=>{const n=new y(e.geometry);return o(t,n,n,n.hasZ,n.hasM),e.geometry=l?I(n,u??0,r[0]):n,e}))}function x(e,n=18,r,o,i,s){const l=new Float64Array(i*s);n=Math.round(t(n));let u=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY,c=0,d=0,p=0,h=0;const y=m(o,r);for(const{geometry:t,attributes:m}of e){const{x:e,y:r}=t,o=Math.max(0,e-n),$=Math.max(0,r-n),g=Math.min(s,r+n),I=Math.min(i,e+n),j=+y(m);for(let t=$;t<g;t++)for(let s=o;s<I;s++){const o=t*i+s,m=f(s-e,t-r,n),y=l[o];c=l[o]+=m*j;const $=c-y;d+=$,p+=$*$,c<u&&(u=c),c>a&&(a=c),h++}}if(!h)return{mean:0,stddev:0,min:0,max:0,mid:0,count:0};const $=(a-u)/2;return{mean:d/h,stdDev:Math.sqrt((p-d*d/h)/h),min:u,max:a,mid:$,count:h}}function w(e){const t=g.exec(e);if(!t)return null;const{hh:r,mm:o,ss:i,ms:s}=t.groups;return Number(r)*n.hours+Number(o)*n.minutes+Number(i)*n.seconds+Number(s||0)}async function b(e,t,n=!0){if(!t)return[];const{field:o,field2:i,field3:s,fieldDelimiter:u,fieldInfos:a,timeZone:f}=e,m=o&&a?.find((e=>e.name.toLowerCase()===o.toLowerCase())),y=!!m&&l(m),g=!!m&&c(m),I=e.valueExpression,j=e.normalizationType,x=e.normalizationField,b=e.normalizationTotal,F=[],N=e.viewInfoParams;let v=null,E=null;if(I){if(!$){const{arcadeUtils:e}=await h();$=e}$.hasGeometryOperations(I)&&await $.enableGeometryOperations(),v=$.createFunction(I),E=N?$.getViewInfo({viewingMode:N.viewingMode,scale:N.scale,spatialReference:new r(N.spatialReference)}):null}const U=e.fieldInfos,M=!(t[0]&&"declaredClass"in t[0]&&"esri.Graphic"===t[0].declaredClass)&&U?{fields:U}:null;return t.forEach((e=>{const t=e.attributes;let r;if(I){const t=M?{...e,layer:M}:e,n=$.createExecContext(t,E,f);r=$.executeFunction(v,n)}else t&&(r=t[o],i?(r=`${d(r)}${u}${d(t[i])}`,s&&(r=`${r}${u}${d(t[s])}`)):"string"==typeof r&&n&&(g?r=r?new Date(r).getTime():null:y&&(r=r?w(r):null)));if(j&&"number"==typeof r&&isFinite(r)){const e=t&&parseFloat(t[x]);r=p(r,j,e,b)}F.push(r)})),F}function F(e){const t=e.field,n=e.normalizationType,r=e.normalizationField;let o;return"field"===n?o="(NOT "+r+" = 0)":"log"!==n&&"natural-log"!==n&&"square-root"!==n||(o=`(${t} > 0)`),o}function N(e,t,n){const r=null!=t?e+" >= "+t:"",o=null!=n?e+" <= "+n:"";let i="";return i=r&&o?U(r,o):r||o,i?"("+i+")":""}function v(t,n,r,o){let i;return n?n.name!==t.objectIdField&&o.includes(n.type)||(i=new e(r,"'field' should be one of these types: "+o.join(","))):i=new e(r,"'field' is not defined in the layer schema"),i}function E(t,n,r){let o;return n?n.name!==t.objectIdField&&u(n)||(o=new e(r,"'field' should be one of these numeric types: "+a.join(","))):o=new e(r,"'field' is not defined in the layer schema"),o}function U(e,t){let n=null!=e?e:"";return null!=t&&t&&(n=n?"("+n+") AND ("+t+")":t),n}function M(t,n){if(t&&"intersects"!==t.spatialRelationship)return new e(n,"Only 'intersects' spatialRelationship is supported for featureFilter")}function T(t,n,r){const o=z({layer:t,fields:n});if(o.length)return new e(r,"Unknown fields: "+o.join(", ")+". You can only use fields defined in the layer schema");const i=O({layer:t,fields:n});return i.length?new e(r,"Unsupported fields: "+i.join(", ")+". You can only use fields that can be fetched i.e. AdapterFieldUsageInfo.supportsStatistics must be true"):void 0}function z(e){const t=e.layer;return e.fields.filter((e=>!t.getField(e)))}function O(e){const t=e.layer;return e.fields.filter((e=>{const n=t.getFieldUsageInfo(e);return!n||!n.supportsStatistics}))}function R(e,t,n){const r=[],o=[],i=[],s=[],l=[];e.forEach(((e,t)=>{const u=e.field?"field":"expression",a=e.field||e.valueExpression;e.field?(l.push(a),o.push(`var ${u}${t} = Number($feature["${a}"]);`)):(r.push(`function getValueForExpr${t}() {\n ${a} \n}`),o.push(`var ${u}${t} = Number(getValueForExpr${t}());`)),n||i.push(`${u}${t} = IIf(${u}${t} < 0, 0, ${u}${t});`),s.push(`${u}${t}`)}));let u="return sum;";const a=r.length?null:l.reduce(((e,t)=>`${e} + ${t}`));let f=null;t||n?t?n||(u="return IIf(sum >= 0, sum, null);",a&&(f=`(( ${a} ) >= 0)`)):(u="return IIf(sum != 0, sum, null);",a&&(f=`(( ${a} ) <> 0)`)):(u="return IIf(sum > 0, sum, null);",a&&(f=`(( ${a} ) > 0)`));return{valueExpression:[r.length?r.join("\n"):"",o.join("\n"),i.join("\n"),`var sum = ${s.join(" + ")};`,u].filter(Boolean).join("\n\n"),sqlExpression:a,sqlWhere:f}}export{x as calculateHeatmapStats,b as getDataValues,N as getRangeExpr,F as getSQLFilterForNormalization,R as getSumOfAttributesExpr,U as mergeWhereClauses,j as quantizeFeatures,w as timeOnlyToMilliseconds,T as verifyBasicFieldValidity,v as verifyFieldType,M as verifyFilterValidty,E as verifyNumericField};
@@ -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{pickRandom as t}from"../../../core/arrayUtils.js";import r from"../../../core/Error.js";import{assertIsSome as i}from"../../../core/maybe.js";import{throwIfAborted as s}from"../../../core/promiseUtils.js";import{property as a}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as n}from"../../../core/accessorSupport/decorators/subclass.js";import{isHostedAgolService as o}from"../../../layers/support/arcgisLayerUrl.js";import{isNumericField as l,isDateField as u}from"../../../layers/support/fieldUtils.js";import{generateRenderer as m}from"../../../rest/generateRenderer.js";import c from"../../../rest/support/GenerateRendererParameters.js";import h from"../../../rest/support/StatisticDefinition.js";import p from"../../../rest/support/UniqueValueDefinition.js";import{getArcadeForPredominantCategory as d,getSQLForPredominantCategoryName as f}from"../../statistics/support/predominanceUtils.js";import{mergeWhereClauses as y,getSQLFilterForNormalization as F,getRangeExpr as S}from"../../statistics/support/utils.js";import{WorkerClient as g}from"../../statistics/support/WorkerClient.js";import{fieldDelimiter as v}from"../utils.js";import w from"./InMemoryLayerAdapter.js";import{ensureFeaturesJSON as x,getSummaryStatsQuery as _,getSummaryStatisticsFromFeatureSet as z,getUVQuery as E,getUniqueValuesFromFeatureSet as q,msSinceUnixEpochSQL as T,getFieldExpr as L,defaultNumBins as V,updateQueryWithFeatureFilter as j,getHistogramFromFeatureSet as Q,generateBinParams as b,getDomainsForFields as R,getBins as N,getPredominantCategoriesFromUVInfos as C,getMissingFields as M}from"./support/utils.js";import{processSummaryStatisticsResult as I,createUVResult as B,getEqualIntervalBins as $,createClassBreaksDefinition as k,resolveCBResult as D}from"../../../statistics/utils.js";const O=5,G=2e4,P=4e5;let A=class extends w{constructor(){super(...arguments),this.adapterName="feature-layer-adapter"}_isStatsSupportedOnService(){const e=this.layer;if(!e.capabilities?.query?.supportsStatistics||"multipatch"===this.geometryType&&!o(e.url)&&e.version<10.5)throw new r(`${this.adapterName}:not-supported`,"Layer does not support statistics query");return Promise.resolve()}_fetchFeaturesFromService(e,t){return this.layer.queryFeatures(e,{signal:t}).then((e=>e.features))}_fetchFeaturesJSONFromService(e,t){return this._fetchFeaturesFromService(e,t).then(x)}_summaryStatsFromGenRend(e){const t=e.normalizationType,r=e.normalizationField;return this.classBreaks({field:e.field,numClasses:O,classificationMethod:"standard-deviation",standardDeviationInterval:.25,normalizationType:t,normalizationField:"field"===t?r:void 0,minValue:e.minValue,maxValue:e.maxValue,filter:e.filter,signal:e.signal}).then((e=>{let t,r,i;if(e.classBreakInfos?.some((e=>(e.hasAvg&&(t=e),!!t))),t){const e=t.maxValue-t.minValue;r=t.minValue+e/2,i=4*e}const s={min:e.minValue,max:e.maxValue,avg:r,stddev:i};return I(s)}))}async _summaryStatsFromServiceQuery(e,t){await this._isStatsSupportedOnService(),"percent-of-total"===e.normalizationType&&(e.normalizationTotal=await this._getNormalizationTotal(e.field,e.normalizationType,e.filter));const r=_(this,e,t),i=await this.layer.queryFeatures(r,{signal:e.signal}),s=z(i,t);return I(s)}_uvFromGenRenderer(e,t){const r=e.field??void 0,i=new p;i.attributeField=r;const s=new c;return s.classificationDefinition=i,this.generateRenderer(s,e.signal).then((e=>{const t={},i=this.getField(r);return e.uniqueValues.forEach((e=>{let r=e.value;null!=r&&""!==r&&("string"!=typeof r||""!==r.trim()&&"<null>"!==r.toLowerCase())||(r=null),null==t[r]?t[r]={count:e.count,data:l(i)&&r?Number(r):r}:t[r].count=t[r].count+e.count})),{count:t}})).then((r=>B(r,[t],e.returnAllCodedValues)))}async _uvFromServiceQuery(e,t){return this._isStatsSupportedOnService().then((()=>this.layer.queryFeatures(E(this,e),{signal:e.signal}))).then((t=>q(t,{layer:this,field:e.field,field2:e.field2,field3:e.field3,fieldDelimiter:v,view:e.view,signal:e.signal}))).then((r=>B(r,t,e.returnAllCodedValues,v)))}_calcBinsSQL(e,t,r){const i=[],s=t.length;return t.forEach(((t,a)=>{const[n,o]=t;let l=null;l=0!==a||r?a!==s-1||r?y(`${e} >= ${n}`,`${e} ${a===s-1?" <= ":" < "} ${o}`):`${e} >= ${n}`:`${e} < ${o}`,i.push("WHEN ("+l+") THEN "+(a+1))})),["CASE",i.join(" "),"ELSE 0","END"].join(" ")}_getNormalizationTotal(e,t,r,i){return e&&"percent-of-total"===t?this.summaryStatistics({field:e,filter:r,signal:i}).then((e=>e.sum)):Promise.resolve(null)}_getQueryParamsForExpr(e,t){const r=e.valueExpression||e.sqlExpression,i=e.signal;if(!r){const{field:r,normalizationType:s,normalizationField:a}=e,n=r?this.getField(r):null,o=u(n),l={field:r,normalizationType:s,normalizationField:a,normalizationTotal:t,layer:this};return{sqlExpression:o?T(this,r):L(l),sqlWhere:o?null:e.sqlWhere||F({field:r,normalizationType:s,normalizationField:a}),filter:e.filter,signal:i}}return{valueExpression:e.valueExpression,sqlExpression:e.sqlExpression,sqlWhere:e.sqlWhere,filter:e.filter,signal:i}}_getDataRange(e,t,r){return null!=t&&null!=r?Promise.resolve({min:t,max:r}):this.summaryStatistics(e).then((e=>({min:e.min,max:e.max})))}_histogramForExpr(e){return this._getNormalizationTotal(e.field,e.normalizationType,e.filter,e.signal).then((t=>{const r=this._getQueryParamsForExpr(e,t);return this._getDataRange(r,e.minValue,e.maxValue).then((i=>{const s=i.min,a=i.max;if(null==s||null==a)return{bins:[],minValue:s,maxValue:a,normalizationTotal:t};const n=e.numBins||V,o=$(s,a,n),l=this._calcBinsSQL(r.sqlExpression,o,null!=e.minValue&&null!=e.maxValue),u=new h({statisticType:"count",outStatisticFieldName:"countOFExpr",onStatisticField:"1"}),m=this.layer.createQuery();return m.where=y(m.where,r.sqlWhere),m.sqlFormat="standard",m.outStatistics=[u],m.groupByFieldsForStatistics=[l],m.orderByFields=[l],j(m,e.filter),this._isStatsSupportedOnService().then((()=>this.layer.queryFeatures(m,{signal:r.signal}))).then((e=>Q(e,s,a,n,t)))}))}))}_binParamsFromGenRend(e,t){const{field:r,normalizationType:i,normalizationField:s,signal:a}=e,n=F({field:r,normalizationType:i,normalizationField:s}),o=new c({classificationDefinition:k({field:r,normalizationType:i,normalizationField:s,classificationMethod:e.classificationMethod,standardDeviationInterval:e.standardDeviationInterval,breakCount:e.numBins||V}),where:y(n,t)});return this.generateRenderer(o,a).then((e=>{const{normalizationTotal:t,classBreaks:a}=e;return b({field:r,normalizationType:i,normalizationField:s,normalizationTotal:t,classBreaks:a,where:n,layer:this})}))}_classBreaksFromGenRend(e){const{field:t,normalizationType:r,normalizationField:i,normalizationTotal:s,signal:a}=e,n=F({field:t,normalizationType:r,normalizationField:i}),o=L({field:t,normalizationType:r,normalizationField:i,normalizationTotal:s,layer:this}),l=S(o,e.minValue,e.maxValue),u=k({field:t,normalizationType:r,normalizationField:i,classificationMethod:e.classificationMethod,standardDeviationInterval:e.standardDeviationInterval,breakCount:e.numClasses||O}),m=new c;return m.classificationDefinition=u,m.where=y(n,l),this.generateRenderer(m,a).then((t=>D(t,e.classificationMethod)))}async summaryStatistics(e){const{field:t,normalizationType:i,sqlExpression:a,view:n,features:o,useFeaturesInView:l}=e,m=t?this.getField(t):null,c=u(m),h=e.valueExpression||a,p=h&&!a,d=this._hasLocalSource||o||l,f=n&&"3d"===n.type;if(d||p)return p||o||l||f?this._summaryStatsFromMemory(e,m):this._summaryStatsFromClientQuery(e,c);if(!this.supportsSQLExpression&&(c||h||"natural-log"===i||"square-root"===i))throw new r(`${this.adapterName}:not-supported`,"Layer does not support standardized SQL expression for queries");return(i&&!this.supportsSQLExpression?this._summaryStatsFromGenRend(e):this._summaryStatsFromServiceQuery(e,c)).catch((()=>(s(e.signal),this._summaryStatsFromMemory(e,m))))}async uniqueValues(e){const{valueExpression:t,sqlExpression:r,features:i,useFeaturesInView:a,signal:n}=e,o=t&&(!r||!this.supportsSQLExpression),l=this._hasLocalSource||i||a||o,u=e.view,m=u&&"3d"===u.type,c=await R(e,this);return l?o||i||a||m?this._uvFromMemory(e,c):this._uvFromClientQuery(e,c):this._uvFromServiceQuery(e,c).catch((t=>(s(n),!e.field||e.field2||e.field3||e.filter?t:this._uvFromGenRenderer(e,c[0])))).catch((()=>(s(n),m?this._uvFromMemory(e,c):this._uvFromClientQuery(e,c))))}async histogram(e){const{field:t,normalizationType:i,normalizationField:s,classificationMethod:a,view:n,filter:o,signal:l}=e,m=t?this.getField(t):null,c=u(m),h=e.valueExpression||e.sqlExpression,p=h&&!e.sqlExpression,d=this._hasLocalSource||e.features||e.useFeaturesInView||p,f=this.supportsSQLExpression,y=!a||"equal-interval"===a,F=e.minValue,g=e.maxValue,v=null!=F&&null!=g,w=e.numBins||V;if(d)return this._histogramFromMemory(e);if((h||f)&&y){if(!f&&(h||"natural-log"===i||"square-root"===i))throw new r(`${this.adapterName}:not-supported`,"Layer does not support standardized SQL expression for queries");return this._histogramForExpr(e)}if(c&&y)throw new r(`${this.adapterName}:not-supported`,"Normalization and date field are not allowed when layer does not support standardized SQL expression for queries");return i||!y?this._binParamsFromGenRend(e).then((a=>{if(!v)return N(this,a,t,w,n,o,l);if(F>a.max||g<a.min)throw new r(`${this.adapterName}:insufficient-data`,"Range defined by 'minValue' and 'maxValue' does not intersect available data range of the field");if(y)return N(this,{min:F,max:g,sqlExpr:a.sqlExpr,excludeZerosExpr:a.excludeZerosExpr},t,w,n,o,l);{const r={field:t,normalizationType:i,normalizationField:s,normalizationTotal:a.normTotal,layer:this},u=L(r),m=S(u,F,g);return this._binParamsFromGenRend(e,m).then((e=>N(this,e,t,w,n,o,l)))}})):this._histogramForField(e)}async classBreaks(e){const t=!1!==e.analyzeData,r=this._hasLocalSource||e.features||e.useFeaturesInView||e.valueExpression||e.filter;if(t&&r)return this._classBreaksFromMemory(e);return(t?this._classBreaksFromGenRend(e):this._classBreaksFromInterpolation(e)).catch((()=>(s(e.signal),this._classBreaksFromMemory(e))))}async queryFeatureCount(e){if(this._hasLocalSource)throw new r(`${this.adapterName}:not-supported`,"Layer does not support count query");const t=this.layer,i=t.createQuery();return i.where=y(i.where,e.whereClause),j(i,e.filter),t.queryFeatureCount(i,{signal:e.signal})}async generateRenderer(e,t){const i=this.layer;if(this._hasLocalSource||i.version<10.1)throw new r(`${this.adapterName}:not-supported`,"Layer does not support generateRenderer operation (requires ArcGIS Server version 10.1+)");const s=i.createQuery();return e.where=y(e.where,s.where),m(i.parsedUrl.path,{source:i.dynamicDataSource??void 0,gdbVersion:i.gdbVersion??void 0},e,{signal:t})}async heatmapStatistics(e){const{field:t,fieldOffset:r,view:i,signal:s}=e;return(t&&null==r?this.summaryStatistics({field:t,view:i,signal:s}):Promise.resolve(null)).then((t=>{let i=r||0;if(t){const{count:e,min:r,max:s}=t;e?r===s&&0===r?i=1:s<=0?i="abs":r<0&&(i=-1.01*r):i=1}return this._heatmapStatsFromMemory(e,i).then((e=>({...e,summaryStatistics:t,fieldOffset:i})))}))}async predominantCategories(e){if(!this._hasLocalSource&&!this.supportsSQLExpression)throw new r(`${this.adapterName}:not-supported`,"Layer does not support advanced SQL expressions and standardized queries");const{fields:t,view:i,signal:s}=e,a=d(t),n=f(t),o=i&&this._hasLocalSource?await this._uvFromMemory({valueExpression:a,view:i,signal:s}):await this._uvFromServiceQuery({sqlExpression:n.expression,valueExpression:a,signal:s});return C(o.uniqueValueInfos,t)}async getSampleFeatures(e,r){const{view:a,sampleSize:n,requiredFields:o,returnGeometry:l,filter:u,signal:m}=e,c=this.layer.createQuery(),h=1,p="json"===r;c.outSpatialReference=e.spatialReference||a?.spatialReference,c.returnGeometry=!!l,c.outFields=o,j(c,u);let d=[],f=!1;if(a)try{const e=await a.whenLayerView(this.layer);if(f=!M(this,o,e).length,f&&(d=await this._fetchFeaturesFromMemory(e,c,m,r),d.length&&null!=n&&n>0&&n<=d.length))return t(d,n,h)}catch(y){s(m)}try{if(this._hasLocalSource)return f?d:p?this._fetchFeaturesJSONFromService(c,m):this._fetchFeaturesFromService(c,m);const r=await this.queryFeatureCount({view:a,filter:u,signal:m}),s=this.layer.capabilities.query.maxRecordCount;let o=-1===n?r:n;if(o=s&&o>s?s:o,r<=d.length||d.length>=s)return d;i(a,"FeatureLayerAdapter: must have a view");const l=a.extent.width/a.width/a.scale*P;if(c.maxAllowableOffset=e.resolution||l,r<=o)return p?this._fetchFeaturesJSONFromService(c,m):this._fetchFeaturesFromService(c,m);if(r<=G){const e=this.layer.createQuery();j(e,u);const r=await this.layer.queryObjectIds();return c.objectIds=t(r,o,h),p?this._fetchFeaturesJSONFromService(c,m):this._fetchFeaturesFromService(c,m)}return this.layer.capabilities?.query?.supportsPagination&&(c.num=Math.min(o,G)),p?this._fetchFeaturesJSONFromService(c,m):this._fetchFeaturesFromService(c,m)}catch(y){return s(m),d}}load(e){const t=this.layer.load(e).then((async t=>{this.geometryType=t.geometryType,this.objectIdField=t.objectIdField,this.supportsSQLExpression=t.capabilities?.query?.supportsSqlExpression,this._hasLocalSource=!t.url&&!!t.source,this.hasQueryEngine=this._hasLocalSource,this.minScale=t.minScale,this.maxScale=t.maxScale,this.fullExtent=t.fullExtent,this.workerClient=g.getInstance(),await this.workerClient.open(e.signal)}));return this.addResolvingPromise(t),Promise.resolve(this)}};e([a({constructOnly:!0})],A.prototype,"layer",void 0),A=e([n("esri.smartMapping.support.adapters.FeatureLayerAdapter")],A);const U=A;export{U as default};
5
+ import{_ as e}from"../../../chunks/tslib.es6.js";import{pickRandom as t}from"../../../core/arrayUtils.js";import r from"../../../core/Error.js";import{assertIsSome as i}from"../../../core/maybe.js";import{throwIfAborted as s}from"../../../core/promiseUtils.js";import{property as a}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as n}from"../../../core/accessorSupport/decorators/subclass.js";import{isHostedAgolService as o}from"../../../layers/support/arcgisLayerUrl.js";import{isTimeOnlyField as l,isNumericField as u}from"../../../layers/support/fieldUtils.js";import{generateRenderer as m}from"../../../rest/generateRenderer.js";import c from"../../../rest/support/GenerateRendererParameters.js";import h from"../../../rest/support/StatisticDefinition.js";import p from"../../../rest/support/UniqueValueDefinition.js";import{getArcadeForPredominantCategory as d,getSQLForPredominantCategoryName as f}from"../../statistics/support/predominanceUtils.js";import{mergeWhereClauses as y,getSQLFilterForNormalization as F,getRangeExpr as S}from"../../statistics/support/utils.js";import{WorkerClient as g}from"../../statistics/support/WorkerClient.js";import{isAnyDateField as v,fieldDelimiter as w}from"../utils.js";import x from"./InMemoryLayerAdapter.js";import{ensureFeaturesJSON as _,getSummaryStatsQuery as z,getSummaryStatisticsFromFeatureSet as E,getUVQuery as q,getUniqueValuesFromFeatureSet as T,getSQLExpressionForDateOrTimeField as L,getFieldExpr as V,defaultNumBins as j,updateQueryWithFeatureFilter as Q,getHistogramFromFeatureSet as b,generateBinParams as R,getDomainsForFields as N,getBins as C,getPredominantCategoriesFromUVInfos as M,getMissingFields as I}from"./support/utils.js";import{processSummaryStatisticsResult as B,createUVResult as $,getEqualIntervalBins as k,createClassBreaksDefinition as D,resolveCBResult as O}from"../../../statistics/utils.js";const G=5,P=2e4,A=4e5;let U=class extends x{constructor(){super(...arguments),this.adapterName="feature-layer-adapter"}_isStatsSupportedOnService(){const e=this.layer;if(!e.capabilities?.query?.supportsStatistics||"multipatch"===this.geometryType&&!o(e.url)&&e.version<10.5)throw new r(`${this.adapterName}:not-supported`,"Layer does not support statistics query");return Promise.resolve()}_fetchFeaturesFromService(e,t){return this.layer.queryFeatures(e,{signal:t}).then((e=>e.features))}_fetchFeaturesJSONFromService(e,t){return this._fetchFeaturesFromService(e,t).then(_)}_summaryStatsFromGenRend(e){const t=e.normalizationType,r=e.normalizationField;return this.classBreaks({field:e.field,numClasses:G,classificationMethod:"standard-deviation",standardDeviationInterval:.25,normalizationType:t,normalizationField:"field"===t?r:void 0,minValue:e.minValue,maxValue:e.maxValue,filter:e.filter,signal:e.signal}).then((e=>{let t,r,i;if(e.classBreakInfos?.some((e=>(e.hasAvg&&(t=e),!!t))),t){const e=t.maxValue-t.minValue;r=t.minValue+e/2,i=4*e}const s={min:e.minValue,max:e.maxValue,avg:r,stddev:i};return B(s)}))}async _summaryStatsFromServiceQuery(e,t){await this._isStatsSupportedOnService(),"percent-of-total"===e.normalizationType&&(e.normalizationTotal=await this._getNormalizationTotal(e.field,e.normalizationType,e.filter));const r=v(t)||l(t),i=z(this,e,t),s=await this.layer.queryFeatures(i,{signal:e.signal}),a=E(s,r);return B(a)}_uvFromGenRenderer(e,t){const r=e.field??void 0,i=new p;i.attributeField=r;const s=new c;return s.classificationDefinition=i,this.generateRenderer(s,e.signal).then((e=>{const t={},i=this.getField(r);return e.uniqueValues.forEach((e=>{let r=e.value;null!=r&&""!==r&&("string"!=typeof r||""!==r.trim()&&"<null>"!==r.toLowerCase())||(r=null),null==t[r]?t[r]={count:e.count,data:u(i)&&r?Number(r):r}:t[r].count=t[r].count+e.count})),{count:t}})).then((r=>$(r,[t],e.returnAllCodedValues)))}async _uvFromServiceQuery(e,t){return this._isStatsSupportedOnService().then((()=>this.layer.queryFeatures(q(this,e),{signal:e.signal}))).then((t=>T(t,{layer:this,field:e.field,field2:e.field2,field3:e.field3,fieldDelimiter:w,view:e.view,signal:e.signal}))).then((r=>$(r,t,e.returnAllCodedValues,w)))}_calcBinsSQL(e,t,r){const i=[],s=t.length;return t.forEach(((t,a)=>{const[n,o]=t;let l=null;l=0!==a||r?a!==s-1||r?y(`${e} >= ${n}`,`${e} ${a===s-1?" <= ":" < "} ${o}`):`${e} >= ${n}`:`${e} < ${o}`,i.push("WHEN ("+l+") THEN "+(a+1))})),["CASE",i.join(" "),"ELSE 0","END"].join(" ")}_getNormalizationTotal(e,t,r,i){return e&&"percent-of-total"===t?this.summaryStatistics({field:e,filter:r,signal:i}).then((e=>e.sum)):Promise.resolve(null)}_getQueryParamsForExpr(e,t){const r=e.valueExpression||e.sqlExpression,i=e.signal;if(!r){const{field:r,normalizationType:s,normalizationField:a}=e,n=r?this.getField(r):null,o=v(n)||l(n),u={field:r,normalizationType:s,normalizationField:a,normalizationTotal:t,layer:this};return{sqlExpression:o?L(this,n):V(u),sqlWhere:o?null:e.sqlWhere||F({field:r,normalizationType:s,normalizationField:a}),filter:e.filter,signal:i}}return{valueExpression:e.valueExpression,sqlExpression:e.sqlExpression,sqlWhere:e.sqlWhere,filter:e.filter,signal:i}}_getDataRange(e,t,r){return null!=t&&null!=r?Promise.resolve({min:t,max:r}):this.summaryStatistics(e).then((e=>({min:e.min,max:e.max})))}_histogramForExpr(e){return this._getNormalizationTotal(e.field,e.normalizationType,e.filter,e.signal).then((t=>{const r=this._getQueryParamsForExpr(e,t);return this._getDataRange(r,e.minValue,e.maxValue).then((i=>{const s=i.min,a=i.max;if(null==s||null==a)return{bins:[],minValue:s,maxValue:a,normalizationTotal:t};const n=e.numBins||j,o=k(s,a,n),l=this._calcBinsSQL(r.sqlExpression,o,null!=e.minValue&&null!=e.maxValue),u=new h({statisticType:"count",outStatisticFieldName:"countOFExpr",onStatisticField:"1"}),m=this.layer.createQuery();return m.where=y(m.where,r.sqlWhere),m.sqlFormat="standard",m.outStatistics=[u],m.groupByFieldsForStatistics=[l],m.orderByFields=[l],Q(m,e.filter),this._isStatsSupportedOnService().then((()=>this.layer.queryFeatures(m,{signal:r.signal}))).then((e=>b(e,s,a,n,t)))}))}))}_binParamsFromGenRend(e,t){const{field:r,normalizationType:i,normalizationField:s,signal:a}=e,n=F({field:r,normalizationType:i,normalizationField:s}),o=new c({classificationDefinition:D({field:r,normalizationType:i,normalizationField:s,classificationMethod:e.classificationMethod,standardDeviationInterval:e.standardDeviationInterval,breakCount:e.numBins||j}),where:y(n,t)});return this.generateRenderer(o,a).then((e=>{const{normalizationTotal:t,classBreaks:a}=e;return R({field:r,normalizationType:i,normalizationField:s,normalizationTotal:t,classBreaks:a,where:n,layer:this})}))}_classBreaksFromGenRend(e){const{field:t,normalizationType:r,normalizationField:i,normalizationTotal:s,signal:a}=e,n=F({field:t,normalizationType:r,normalizationField:i}),o=V({field:t,normalizationType:r,normalizationField:i,normalizationTotal:s,layer:this}),l=S(o,e.minValue,e.maxValue),u=D({field:t,normalizationType:r,normalizationField:i,classificationMethod:e.classificationMethod,standardDeviationInterval:e.standardDeviationInterval,breakCount:e.numClasses||G}),m=new c;return m.classificationDefinition=u,m.where=y(n,l),this.generateRenderer(m,a).then((t=>O(t,e.classificationMethod)))}async summaryStatistics(e){const{field:t,normalizationType:i,sqlExpression:a,view:n,features:o,useFeaturesInView:u}=e,m=t?this.getField(t):null,c=v(m)||l(m),h=e.valueExpression||a,p=h&&!a,d=this._hasLocalSource||o||u,f=n&&"3d"===n.type;if(d||p)return p||o||u||f?this._summaryStatsFromMemory(e,m):this._summaryStatsFromClientQuery(e,m);if(!this.supportsSQLExpression&&(c||h||"natural-log"===i||"square-root"===i))throw new r(`${this.adapterName}:not-supported`,"Layer does not support standardized SQL expression for queries");return(i&&!this.supportsSQLExpression?this._summaryStatsFromGenRend(e):this._summaryStatsFromServiceQuery(e,m)).catch((()=>(s(e.signal),this._summaryStatsFromMemory(e,m))))}async uniqueValues(e){const{valueExpression:t,sqlExpression:r,features:i,useFeaturesInView:a,signal:n}=e,o=t&&(!r||!this.supportsSQLExpression),l=this._hasLocalSource||i||a||o,u=e.view,m=u&&"3d"===u.type,c=await N(e,this);return l?o||i||a||m?this._uvFromMemory(e,c):this._uvFromClientQuery(e,c):this._uvFromServiceQuery(e,c).catch((t=>(s(n),!e.field||e.field2||e.field3||e.filter?t:this._uvFromGenRenderer(e,c[0])))).catch((()=>(s(n),m?this._uvFromMemory(e,c):this._uvFromClientQuery(e,c))))}async histogram(e){const{field:t,normalizationType:i,normalizationField:s,classificationMethod:a,view:n,filter:o,signal:u}=e,m=t?this.getField(t):null,c=v(m)||l(m),h=e.valueExpression||e.sqlExpression,p=h&&!e.sqlExpression,d=this._hasLocalSource||e.features||e.useFeaturesInView||p,f=this.supportsSQLExpression,y=!a||"equal-interval"===a,F=e.minValue,g=e.maxValue,w=null!=F&&null!=g,x=e.numBins||j;if(d)return this._histogramFromMemory(e);if((h||f)&&y){if(!f&&(h||"natural-log"===i||"square-root"===i))throw new r(`${this.adapterName}:not-supported`,"Layer does not support standardized SQL expression for queries");return this._histogramForExpr(e)}if(c&&y)throw new r(`${this.adapterName}:not-supported`,"Normalization and date field are not allowed when layer does not support standardized SQL expression for queries");return i||!y?this._binParamsFromGenRend(e).then((a=>{if(!w)return C(this,a,t,x,n,o,u);if(F>a.max||g<a.min)throw new r(`${this.adapterName}:insufficient-data`,"Range defined by 'minValue' and 'maxValue' does not intersect available data range of the field");if(y)return C(this,{min:F,max:g,sqlExpr:a.sqlExpr,excludeZerosExpr:a.excludeZerosExpr},t,x,n,o,u);{const r={field:t,normalizationType:i,normalizationField:s,normalizationTotal:a.normTotal,layer:this},l=V(r),m=S(l,F,g);return this._binParamsFromGenRend(e,m).then((e=>C(this,e,t,x,n,o,u)))}})):this._histogramForField(e)}async classBreaks(e){const t=!1!==e.analyzeData,r=this._hasLocalSource||e.features||e.useFeaturesInView||e.valueExpression||e.filter;if(t&&r)return this._classBreaksFromMemory(e);return(t?this._classBreaksFromGenRend(e):this._classBreaksFromInterpolation(e)).catch((()=>(s(e.signal),this._classBreaksFromMemory(e))))}async queryFeatureCount(e){if(this._hasLocalSource)throw new r(`${this.adapterName}:not-supported`,"Layer does not support count query");const t=this.layer,i=t.createQuery();return i.where=y(i.where,e.whereClause),Q(i,e.filter),t.queryFeatureCount(i,{signal:e.signal})}async generateRenderer(e,t){const i=this.layer;if(this._hasLocalSource||i.version<10.1)throw new r(`${this.adapterName}:not-supported`,"Layer does not support generateRenderer operation (requires ArcGIS Server version 10.1+)");const s=i.createQuery();return e.where=y(e.where,s.where),m(i.parsedUrl.path,{source:i.dynamicDataSource??void 0,gdbVersion:i.gdbVersion??void 0},e,{signal:t})}async heatmapStatistics(e){const{field:t,fieldOffset:r,view:i,signal:s}=e;return(t&&null==r?this.summaryStatistics({field:t,view:i,signal:s}):Promise.resolve(null)).then((t=>{let i=r||0;if(t){const{count:e,min:r,max:s}=t;e?r===s&&0===r?i=1:s<=0?i="abs":r<0&&(i=-1.01*r):i=1}return this._heatmapStatsFromMemory(e,i).then((e=>({...e,summaryStatistics:t,fieldOffset:i})))}))}async predominantCategories(e){if(!this._hasLocalSource&&!this.supportsSQLExpression)throw new r(`${this.adapterName}:not-supported`,"Layer does not support advanced SQL expressions and standardized queries");const{fields:t,view:i,signal:s}=e,a=d(t),n=f(t),o=i&&this._hasLocalSource?await this._uvFromMemory({valueExpression:a,view:i,signal:s}):await this._uvFromServiceQuery({sqlExpression:n.expression,valueExpression:a,signal:s});return M(o.uniqueValueInfos,t)}async getSampleFeatures(e,r){const{view:a,sampleSize:n,requiredFields:o,returnGeometry:l,filter:u,signal:m}=e,c=this.layer.createQuery(),h=1,p="json"===r;c.outSpatialReference=e.spatialReference||a?.spatialReference,c.returnGeometry=!!l,c.outFields=o,Q(c,u);let d=[],f=!1;if(a)try{const e=await a.whenLayerView(this.layer);if(f=!I(this,o,e).length,f&&(d=await this._fetchFeaturesFromMemory(e,c,m,r),d.length&&null!=n&&n>0&&n<=d.length))return t(d,n,h)}catch(y){s(m)}try{if(this._hasLocalSource)return f?d:p?this._fetchFeaturesJSONFromService(c,m):this._fetchFeaturesFromService(c,m);const r=await this.queryFeatureCount({view:a,filter:u,signal:m}),s=this.layer.capabilities.query.maxRecordCount;let o=-1===n?r:n;if(o=s&&o>s?s:o,r<=d.length||d.length>=s)return d;i(a,"FeatureLayerAdapter: must have a view");const l=a.extent.width/a.width/a.scale*A;if(c.maxAllowableOffset=e.resolution||l,r<=o)return p?this._fetchFeaturesJSONFromService(c,m):this._fetchFeaturesFromService(c,m);if(r<=P){const e=this.layer.createQuery();Q(e,u);const r=await this.layer.queryObjectIds();return c.objectIds=t(r,o,h),p?this._fetchFeaturesJSONFromService(c,m):this._fetchFeaturesFromService(c,m)}return this.layer.capabilities?.query?.supportsPagination&&(c.num=Math.min(o,P)),p?this._fetchFeaturesJSONFromService(c,m):this._fetchFeaturesFromService(c,m)}catch(y){return s(m),d}}load(e){const t=this.layer.load(e).then((async t=>{this.geometryType=t.geometryType,this.objectIdField=t.objectIdField,this.supportsSQLExpression=t.capabilities?.query?.supportsSqlExpression,this._hasLocalSource=!t.url&&!!t.source,this.hasQueryEngine=this._hasLocalSource,this.minScale=t.minScale,this.maxScale=t.maxScale,this.fullExtent=t.fullExtent,this.workerClient=g.getInstance(),await this.workerClient.open(e.signal)}));return this.addResolvingPromise(t),Promise.resolve(this)}};e([a({constructOnly:!0})],U.prototype,"layer",void 0),U=e([n("esri.smartMapping.support.adapters.FeatureLayerAdapter")],U);const W=U;export{W 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{pickRandom as t}from"../../../core/arrayUtils.js";import a from"../../../core/Error.js";import{throwIfAborted as r}from"../../../core/promiseUtils.js";import"../../../core/Logger.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as i}from"../../../core/accessorSupport/decorators/subclass.js";import{kebabDict as s}from"../../../layers/support/fieldType.js";import{isDateField as o}from"../../../layers/support/fieldUtils.js";import{getArcadeForPredominantCategory as n}from"../../statistics/support/predominanceUtils.js";import{summaryStatistics as l,uniqueValues as u,histogram as m,classBreaks as p}from"../../statistics/support/statsWorker.js";import{mergeWhereClauses as g}from"../../statistics/support/utils.js";import{WorkerClient as y}from"../../statistics/support/WorkerClient.js";import{getFieldsList as d,fieldDelimiter as f}from"../utils.js";import c from"./FeatureLayerAdapter.js";import{getMissingFieldsForBinning as h,updateQueryWithFeatureFilter as w,getFeatureReductionFields as F,getViewInfoParams as v,getDomainsForFields as S,getPredominantCategoriesFromUVInfos as q}from"./support/utils.js";let V=class extends c{constructor(){super(...arguments),this.adapterName="feature-layer-binning-adapter"}async _getNormalizationTotalFromMemory(e,t,r){const{featuresJSON:i,graphics:s,layerView:o,query:n}=t,u=(!i&&!s&&o&&"queryAggregateSummaryStatistics"in o?await o.queryAggregateSummaryStatistics(n,{field:e},{signal:r}):i?await this.workerClient.summaryStatistics({field:e},i):await l({attribute:{field:e},features:s})).sum;if(null==u)throw new a(`${this.adapterName}:invalid`,"invalid normalizationTotal");return u}async _processStatsFromMemoryParams(e){const{features:t,filter:r}=e;if(t?.length)return this._getFilteredFeatures(t,r);const{view:i,field:s,field2:o,field3:n,normalizationField:l,valueExpression:u,returnGeometry:m,layerViewFunc:p,signal:g}=e;let y=null,f=null,c=null,v=null,S=null;if(i)try{if(y=await i.whenLayerView(this.layer),f=null!=p&&p in y&&"function"==typeof y[p],f){await this._waitForLayerViewUpdate(y);const e=await d({field:s,field2:o,field3:n,normalizationField:l,valueExpression:u});h(this,e).length?f=!1:(c="createAggregateQuery"in y?y.createAggregateQuery():null,c?(c.outFields=e,c.returnGeometry=!1,w(c,r)):f=!1),y.suspended&&(f=!1)}}catch{f=!1}if(!f&&(S=F(this.layer).map((e=>e.toJSON())),v=await this._fetchFeaturesForStats({field:s,field2:o,field3:n,valueExpression:u,normalizationField:l,returnGeometry:m,filter:r,view:i,signal:g},"json"),!v?.length))throw new a(`${this.adapterName}:insufficient-data`,"No features are available to calculate statistics");return{layerView:y,query:c,featuresJSON:v,fieldInfos:S}}async _summaryStatsFromMemory(e,t){const{view:a,field:r,valueExpression:i,normalizationType:o,signal:n}=e,u={field:r,valueExpression:i,normalizationType:o,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue},{featuresJSON:m,graphics:p,layerView:g,query:y,fieldInfos:d}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryAggregateSummaryStatistics"});return i&&a&&(m||p)&&(u.fieldType=t?.type?s.toJSON(t.type):null,u.viewInfoParams=v(a),u.timeZone=a.timeZone,u.fieldInfos=d),"percent-of-total"===o&&null==e.normalizationTotal&&(u.normalizationTotal=await this._getNormalizationTotalFromMemory(r,{featuresJSON:m,graphics:p,layerView:g,query:y},n)),!m&&!p&&g&&"queryAggregateSummaryStatistics"in g?g.queryAggregateSummaryStatistics(y,u,{signal:n}):m?this.workerClient.summaryStatistics(u,m):l({attribute:u,features:p})}async _uvFromMemory(e,t){const{view:a,field:r,valueExpression:i,returnAllCodedValues:s,signal:o}=e,{featuresJSON:n,graphics:l,layerView:m,query:p,fieldInfos:g}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryAggregateUniqueValues"}),y={field:r,field2:e.field2,field3:e.field3,fieldDelimiter:f,valueExpression:i,domains:t,returnAllCodedValues:s};return i&&a&&(n||l)&&(y.viewInfoParams=v(a),y.timeZone=a.timeZone,y.fieldInfos=g),!n&&!l&&m&&"queryAggregateUniqueValues"in m?m.queryAggregateUniqueValues(p,y,{signal:o}):n?this.workerClient.uniqueValues(y,n):u({attribute:y,features:l})}async _histogramFromMemory(e){const{view:t,field:a,valueExpression:r,signal:i}=e,{featuresJSON:s,graphics:o,layerView:n,query:l,fieldInfos:u}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryAggregateHistogram"}),p={field:a,valueExpression:r,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numBins:e.numBins};return r&&t&&(s||o)&&(p.viewInfoParams=v(t),p.timeZone=t.timeZone,p.fieldInfos=u),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(p.normalizationTotal=await this._getNormalizationTotalFromMemory(a,{featuresJSON:s,graphics:o,layerView:n,query:l},i)),!s&&!o&&n&&"queryAggregateHistogram"in n?n.queryAggregateHistogram(l,p,{signal:i}):s?this.workerClient.histogram(p,s):m({attribute:p,features:o})}async _classBreaksFromMemory(e){const{view:t,field:a,valueExpression:r,signal:i}=e,{featuresJSON:s,graphics:o,layerView:n,query:l,fieldInfos:u}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryAggregateClassBreaks"}),m={field:a,valueExpression:r,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numClasses:e.numClasses};return r&&t&&(s||o)&&(m.viewInfoParams=v(t),m.timeZone=t.timeZone,m.fieldInfos=u),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(m.normalizationTotal=await this._getNormalizationTotalFromMemory(a,{featuresJSON:s,graphics:o,layerView:n,query:l},i)),!s&&!o&&n&&"queryAggregateClassBreaks"in n?n.queryAggregateClassBreaks(l,m,{signal:i}):s?this.workerClient.classBreaks(m,s):p({attribute:m,features:o})}getField(e=""){const t=F(this.layer);return t?.find((t=>t.name.toLowerCase()===e?.toLowerCase()))}getFieldUsageInfo(e){return this.getField(e)?{supportsLabelingInfo:!0,supportsRenderer:!0,supportsPopupTemplate:!0,supportsLayerQuery:!1,supportsStatistics:!0}:null}getFieldDomain(e,t){return null}async summaryStatistics(e){const{field:t}=e,r=t?this.getField(t):null,i=o(r),s=e.sqlExpression&&!e.valueExpression&&!t;if(i||s)throw new a(`${this.adapterName}:not-supported`,"Date field and sqlExpression are not supported");return this._summaryStatsFromMemory(e,r)}async uniqueValues(e){const t=await S(e,this);return this._uvFromMemory(e,t)}async histogram(e){const{field:t}=e,r=t?this.getField(t):null,i=o(r),s=e.sqlExpression&&!e.valueExpression&&!t;if(i||s)throw new a(`${this.adapterName}:not-supported`,"Date field and sqlExpression are not supported");return this._histogramFromMemory(e)}async classBreaks(e){return(!1!==e.analyzeData?this._classBreaksFromMemory(e):this._classBreaksFromInterpolation(e)).catch((()=>(r(e.signal),this._classBreaksFromMemory(e))))}async queryFeatureCount(e){const t=await(e.view?.whenLayerView(this.layer));if(!t||!("queryAggregateCount"in t)||!t.queryAggregateCount)throw new a(`${this.adapterName}:not-supported`,"LayerView is not supported.");await this._waitForLayerViewUpdate(t);const r=t.createAggregateQuery();return r.where=g(r.where,e.whereClause),w(r,e.filter),t.queryAggregateCount(r,{signal:e.signal})}generateRenderer(e,t){throw new a(`${this.adapterName}:not-supported`,"'generateRenderer' is not supported.")}heatmapStatistics(e){throw new a(`${this.adapterName}:not-supported`,"'heatmapStatistics' is not supported.")}async predominantCategories(e){const{fields:t,view:a,signal:r}=e,i=n(t),s=await this._uvFromMemory({valueExpression:i,view:a,signal:r});return q(s.uniqueValueInfos,t)}async getSampleFeatures(e,r){const{view:i,sampleSize:s,requiredFields:o,returnGeometry:n,filter:l,signal:u}=e;if(!i)throw new a(`${this.adapterName}:not-supported`,"'view' is required to get sample features for binning.");if("3d"===i.type)throw new a(`${this.adapterName}:not-supported`,"3d 'view' is not supported to get sample features for binning.");const m=await i.whenLayerView(this.layer);if(!("queryAggregateJSON"in m&&m.queryAggregateJSON&&"queryAggregates"in m&&m.queryAggregates))throw new a(`${this.adapterName}:not-supported`,"LayerView is not supported.");await this._waitForLayerViewUpdate(m);if(h(this,o).length)throw new a(`${this.adapterName}:insufficient-data`,"Layer does not have required fields");const p=1,g="json"===r,y=m.createAggregateQuery();y.outSpatialReference=e.spatialReference||i&&i.spatialReference,y.returnGeometry=!!n,y.outFields=o,w(y,l);const{features:d}=g?await m.queryAggregateJSON(y,{signal:u}):await m.queryAggregates(y,{signal:u});return d.length&&null!=s&&s>0&&s<=d.length?t(d,s,p):d}load(e){const t=this.layer.load(e).then((async t=>{if(this.geometryType="polygon",this.objectIdField=null,this.supportsSQLExpression=!1,this._hasLocalSource=!1,this.hasQueryEngine=!0,this.minScale=t.minScale,this.maxScale=t.maxScale,this.fullExtent=t.fullExtent,"geometryType"in t&&"point"!==t.geometryType)throw new a(`${this.adapterName}:invalid-parameters`,"Only 'point' geometry type is supported");const r="featureReduction"in t?t.featureReduction:null;if("binning"!==r?.type&&"cluster"!==r?.type)throw new a(`${this.adapterName}:invalid-parameters`,`Feature reduction type ${r?.type} is not supported`);this.workerClient=y.getInstance(),await this.workerClient.open(e.signal)}));return this.addResolvingPromise(t),Promise.resolve(this)}};V=e([i("esri.smartMapping.support.adapters.FeatureLayerBinningAdapter")],V);const z=V;export{z as default};
5
+ import{_ as e}from"../../../chunks/tslib.es6.js";import{pickRandom as t}from"../../../core/arrayUtils.js";import a from"../../../core/Error.js";import{throwIfAborted as r}from"../../../core/promiseUtils.js";import"../../../core/Logger.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as i}from"../../../core/accessorSupport/decorators/subclass.js";import{kebabDict as s}from"../../../layers/support/fieldType.js";import{isTimeOnlyField as o}from"../../../layers/support/fieldUtils.js";import{getArcadeForPredominantCategory as n}from"../../statistics/support/predominanceUtils.js";import{summaryStatistics as l,uniqueValues as u,histogram as m,classBreaks as p}from"../../statistics/support/statsWorker.js";import{mergeWhereClauses as g}from"../../statistics/support/utils.js";import{WorkerClient as y}from"../../statistics/support/WorkerClient.js";import{getFieldsList as d,fieldDelimiter as f,isAnyDateField as c}from"../utils.js";import h from"./FeatureLayerAdapter.js";import{getMissingFieldsForBinning as w,updateQueryWithFeatureFilter as F,getFeatureReductionFields as v,getViewInfoParams as S,getDomainsForFields as q,getPredominantCategoriesFromUVInfos as V}from"./support/utils.js";let z=class extends h{constructor(){super(...arguments),this.adapterName="feature-layer-binning-adapter"}async _getNormalizationTotalFromMemory(e,t,r){const{featuresJSON:i,graphics:s,layerView:o,query:n}=t,u=(!i&&!s&&o&&"queryAggregateSummaryStatistics"in o?await o.queryAggregateSummaryStatistics(n,{field:e},{signal:r}):i?await this.workerClient.summaryStatistics({field:e},i):await l({attribute:{field:e},features:s})).sum;if(null==u)throw new a(`${this.adapterName}:invalid`,"invalid normalizationTotal");return u}async _processStatsFromMemoryParams(e){const{features:t,filter:r}=e;if(t?.length)return this._getFilteredFeatures(t,r);const{view:i,field:s,field2:o,field3:n,normalizationField:l,valueExpression:u,returnGeometry:m,layerViewFunc:p,signal:g}=e;let y=null,f=null,c=null,h=null,S=null;if(i)try{if(y=await i.whenLayerView(this.layer),f=null!=p&&p in y&&"function"==typeof y[p],f){await this._waitForLayerViewUpdate(y);const e=await d({field:s,field2:o,field3:n,normalizationField:l,valueExpression:u});w(this,e).length?f=!1:(c="createAggregateQuery"in y?y.createAggregateQuery():null,c?(c.outFields=e,c.returnGeometry=!1,F(c,r)):f=!1),y.suspended&&(f=!1)}}catch{f=!1}if(!f&&(S=v(this.layer).map((e=>e.toJSON())),h=await this._fetchFeaturesForStats({field:s,field2:o,field3:n,valueExpression:u,normalizationField:l,returnGeometry:m,filter:r,view:i,signal:g},"json"),!h?.length))throw new a(`${this.adapterName}:insufficient-data`,"No features are available to calculate statistics");return{layerView:y,query:c,featuresJSON:h,fieldInfos:S}}async _summaryStatsFromMemory(e,t){const{view:a,field:r,valueExpression:i,normalizationType:o,signal:n}=e,u={field:r,valueExpression:i,normalizationType:o,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue},{featuresJSON:m,graphics:p,layerView:g,query:y,fieldInfos:d}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryAggregateSummaryStatistics"});return i&&a&&(m||p)&&(u.fieldType=t?.type?s.toJSON(t.type):null,u.viewInfoParams=S(a),u.timeZone=a.timeZone,u.fieldInfos=d),"percent-of-total"===o&&null==e.normalizationTotal&&(u.normalizationTotal=await this._getNormalizationTotalFromMemory(r,{featuresJSON:m,graphics:p,layerView:g,query:y},n)),!m&&!p&&g&&"queryAggregateSummaryStatistics"in g?g.queryAggregateSummaryStatistics(y,u,{signal:n}):m?this.workerClient.summaryStatistics(u,m):l({attribute:u,features:p})}async _uvFromMemory(e,t){const{view:a,field:r,valueExpression:i,returnAllCodedValues:s,signal:o}=e,{featuresJSON:n,graphics:l,layerView:m,query:p,fieldInfos:g}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryAggregateUniqueValues"}),y={field:r,field2:e.field2,field3:e.field3,fieldDelimiter:f,valueExpression:i,domains:t,returnAllCodedValues:s};return i&&a&&(n||l)&&(y.viewInfoParams=S(a),y.timeZone=a.timeZone,y.fieldInfos=g),!n&&!l&&m&&"queryAggregateUniqueValues"in m?m.queryAggregateUniqueValues(p,y,{signal:o}):n?this.workerClient.uniqueValues(y,n):u({attribute:y,features:l})}async _histogramFromMemory(e){const{view:t,field:a,valueExpression:r,signal:i}=e,{featuresJSON:s,graphics:o,layerView:n,query:l,fieldInfos:u}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryAggregateHistogram"}),p={field:a,valueExpression:r,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numBins:e.numBins};return r&&t&&(s||o)&&(p.viewInfoParams=S(t),p.timeZone=t.timeZone,p.fieldInfos=u),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(p.normalizationTotal=await this._getNormalizationTotalFromMemory(a,{featuresJSON:s,graphics:o,layerView:n,query:l},i)),!s&&!o&&n&&"queryAggregateHistogram"in n?n.queryAggregateHistogram(l,p,{signal:i}):s?this.workerClient.histogram(p,s):m({attribute:p,features:o})}async _classBreaksFromMemory(e){const{view:t,field:a,valueExpression:r,signal:i}=e,{featuresJSON:s,graphics:o,layerView:n,query:l,fieldInfos:u}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryAggregateClassBreaks"}),m={field:a,valueExpression:r,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numClasses:e.numClasses};return r&&t&&(s||o)&&(m.viewInfoParams=S(t),m.timeZone=t.timeZone,m.fieldInfos=u),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(m.normalizationTotal=await this._getNormalizationTotalFromMemory(a,{featuresJSON:s,graphics:o,layerView:n,query:l},i)),!s&&!o&&n&&"queryAggregateClassBreaks"in n?n.queryAggregateClassBreaks(l,m,{signal:i}):s?this.workerClient.classBreaks(m,s):p({attribute:m,features:o})}getField(e=""){const t=v(this.layer);return t?.find((t=>t.name.toLowerCase()===e?.toLowerCase()))}getFieldUsageInfo(e){return this.getField(e)?{supportsLabelingInfo:!0,supportsRenderer:!0,supportsPopupTemplate:!0,supportsLayerQuery:!1,supportsStatistics:!0}:null}getFieldDomain(e,t){return null}async summaryStatistics(e){const{field:t}=e,r=t?this.getField(t):null,i=c(r)||o(r),s=e.sqlExpression&&!e.valueExpression&&!t;if(i||s)throw new a(`${this.adapterName}:not-supported`,"Date field and sqlExpression are not supported");return this._summaryStatsFromMemory(e,r)}async uniqueValues(e){const t=await q(e,this);return this._uvFromMemory(e,t)}async histogram(e){const{field:t}=e,r=t?this.getField(t):null,i=c(r)||o(r),s=e.sqlExpression&&!e.valueExpression&&!t;if(i||s)throw new a(`${this.adapterName}:not-supported`,"Date field and sqlExpression are not supported");return this._histogramFromMemory(e)}async classBreaks(e){return(!1!==e.analyzeData?this._classBreaksFromMemory(e):this._classBreaksFromInterpolation(e)).catch((()=>(r(e.signal),this._classBreaksFromMemory(e))))}async queryFeatureCount(e){const t=await(e.view?.whenLayerView(this.layer));if(!t||!("queryAggregateCount"in t)||!t.queryAggregateCount)throw new a(`${this.adapterName}:not-supported`,"LayerView is not supported.");await this._waitForLayerViewUpdate(t);const r=t.createAggregateQuery();return r.where=g(r.where,e.whereClause),F(r,e.filter),t.queryAggregateCount(r,{signal:e.signal})}generateRenderer(e,t){throw new a(`${this.adapterName}:not-supported`,"'generateRenderer' is not supported.")}heatmapStatistics(e){throw new a(`${this.adapterName}:not-supported`,"'heatmapStatistics' is not supported.")}async predominantCategories(e){const{fields:t,view:a,signal:r}=e,i=n(t),s=await this._uvFromMemory({valueExpression:i,view:a,signal:r});return V(s.uniqueValueInfos,t)}async getSampleFeatures(e,r){const{view:i,sampleSize:s,requiredFields:o,returnGeometry:n,filter:l,signal:u}=e;if(!i)throw new a(`${this.adapterName}:not-supported`,"'view' is required to get sample features for binning.");if("3d"===i.type)throw new a(`${this.adapterName}:not-supported`,"3d 'view' is not supported to get sample features for binning.");const m=await i.whenLayerView(this.layer);if(!("queryAggregateJSON"in m&&m.queryAggregateJSON&&"queryAggregates"in m&&m.queryAggregates))throw new a(`${this.adapterName}:not-supported`,"LayerView is not supported.");await this._waitForLayerViewUpdate(m);if(w(this,o).length)throw new a(`${this.adapterName}:insufficient-data`,"Layer does not have required fields");const p=1,g="json"===r,y=m.createAggregateQuery();y.outSpatialReference=e.spatialReference||i&&i.spatialReference,y.returnGeometry=!!n,y.outFields=o,F(y,l);const{features:d}=g?await m.queryAggregateJSON(y,{signal:u}):await m.queryAggregates(y,{signal:u});return d.length&&null!=s&&s>0&&s<=d.length?t(d,s,p):d}load(e){const t=this.layer.load(e).then((async t=>{if(this.geometryType="polygon",this.objectIdField=null,this.supportsSQLExpression=!1,this._hasLocalSource=!1,this.hasQueryEngine=!0,this.minScale=t.minScale,this.maxScale=t.maxScale,this.fullExtent=t.fullExtent,"geometryType"in t&&"point"!==t.geometryType)throw new a(`${this.adapterName}:invalid-parameters`,"Only 'point' geometry type is supported");const r="featureReduction"in t?t.featureReduction:null;if("binning"!==r?.type&&"cluster"!==r?.type)throw new a(`${this.adapterName}:invalid-parameters`,`Feature reduction type ${r?.type} is not supported`);this.workerClient=y.getInstance(),await this.workerClient.open(e.signal)}));return this.addResolvingPromise(t),Promise.resolve(this)}};z=e([i("esri.smartMapping.support.adapters.FeatureLayerBinningAdapter")],z);const N=z;export{N 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{pickRandom as t}from"../../../core/arrayUtils.js";import r from"../../../core/Error.js";import a from"../../../core/Logger.js";import{assertIsSome as i}from"../../../core/maybe.js";import{timeout as s}from"../../../core/promiseUtils.js";import{whenOnce as o}from"../../../core/reactiveUtils.js";import{property as n}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as l}from"../../../core/accessorSupport/decorators/subclass.js";import{toQuantizationTransform as u}from"../../../geometry/support/quantizationUtils.js";import{kebabDict as m}from"../../../layers/support/fieldType.js";import{isDateField as p}from"../../../layers/support/fieldUtils.js";import y from"../../../rest/support/QuantizationParameters.js";import{getArcadeForPredominantCategory as f}from"../../statistics/support/predominanceUtils.js";import{summaryStatistics as c,uniqueValues as d,histogram as h,classBreaks as w,heatmapStatistics as g}from"../../statistics/support/statsWorker.js";import{mergeWhereClauses as F}from"../../statistics/support/utils.js";import{WorkerClient as S}from"../../statistics/support/WorkerClient.js";import{getFieldsList as v,fieldDelimiter as V}from"../utils.js";import q from"./LayerAdapter.js";import{ensureFeaturesJSON as x,getSummaryStatsQuery as z,getSummaryStatisticsFromFeatureSet as _,getViewInfoParams as M,getMissingFields as N,updateQueryWithFeatureFilter as T,getUVQuery as L,getUniqueValuesFromFeatureSet as E,getBins as C,getDomainsForFields as j,getPredominantCategoriesFromUVInfos as I}from"./support/utils.js";import{processSummaryStatisticsResult as O,createUVResult as k,resolveCBResult as Q}from"../../../statistics/utils.js";import{loadArcade as b}from"../../../support/arcadeOnDemand.js";const J=5;let P=null,U=class extends q{constructor(){super(...arguments),this._hasLocalSource=!1,this.adapterName="in-memory-layer-adapter"}destroy(){this.workerClient?.destroy()}async _waitForLayerViewUpdate(e){if(!e)throw new r(`${this.adapterName}:insufficient-data", "layerView is required to fetch the features`);const t=new AbortController,i=o((()=>!e.updating),t.signal);await s(i,5e3,t).catch((e=>{throw a.getLogger(this).warn("LayerView is taking too long to update. Aborting fetch from layerView."),e}))}async _fetchFeatureSetFromMemory(e,t,a){const i=this.layer;if(this._hasLocalSource)return i.queryFeatures(e);if(!t)throw new r(`${this.adapterName}:insufficient-data`,"view is required to fetch the features from layerView");const s=await t.whenLayerView(this.layer);return await this._waitForLayerViewUpdate(s),s.queryFeatures(e,{signal:a})}async _fetchFeaturesFromMemory(e,t,a,i){const s=this.layer,o="json"===i;if(this._hasLocalSource){const e=await s.queryFeatures(t);return o?x(e.features):e.features}if(await this._waitForLayerViewUpdate(e),o&&"queryFeaturesJSON"in e&&e.queryFeaturesJSON){const{features:r}=await e.queryFeaturesJSON(t,{signal:a});return r}if(!("queryFeatures"in e))throw new r(`${this.adapterName}:not-supported`,"'queryFeatures' is not supported on the layerView");const n=await e.queryFeatures(t,{signal:a});return o?x(n.features):n.features}_fetchFeaturesForStats(e,t){return v({field:e.field,field2:e.field2,field3:e.field3,normalizationField:e.normalizationField,valueExpression:e.valueExpression}).then((r=>this.getSampleFeatures({sampleSize:-1,view:e.view,returnGeometry:e.returnGeometry,filter:e.filter,requiredFields:r,signal:e.signal},t)))}async _summaryStatsFromClientQuery(e,t){const{view:r,signal:a}=e,i=z(this,e,t),s=await this._fetchFeatureSetFromMemory(i,r,a),o=_(s,t);return O(o)}async _getNormalizationTotalFromMemory(e,t,a){const{featuresJSON:i,graphics:s,layerView:o,query:n}=t,l=(!i&&!s&&o&&"querySummaryStatistics"in o?await o.querySummaryStatistics(n,{field:e},{signal:a}):i?await this.workerClient.summaryStatistics({field:e},i):await c({attribute:{field:e},features:s??[]})).sum;if(null==l)throw new r(`${this.adapterName}:invalid`,"invalid normalizationTotal");return l}async _summaryStatsFromMemory(e,t){const{view:r,field:a,valueExpression:i,normalizationType:s,signal:o}=e,n={field:a,valueExpression:i,normalizationType:s,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue},{featuresJSON:l,graphics:u,layerView:p,query:y,fieldInfos:f}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"querySummaryStatistics"});return i&&r&&(l||u)&&(n.fieldType=t?.type?m.toJSON(t.type):null,n.viewInfoParams=M(r),n.timeZone=r.timeZone,n.fieldInfos=f),"percent-of-total"===s&&null==e.normalizationTotal&&(n.normalizationTotal=await this._getNormalizationTotalFromMemory(a,{featuresJSON:l,graphics:u,layerView:p,query:y},o)),!l&&!u&&p&&"querySummaryStatistics"in p?p.querySummaryStatistics(y,n,{signal:o}):l?this.workerClient.summaryStatistics(n,l):c({attribute:n,features:u})}async _getFilteredFeatures(e,t){let r=[];if("intersects"===t?.spatialRelationship){const{intersect:a}=await import("../../../geometry/geometryEngineAsync.js"),i=null!=t.geometry?t.geometry:null;for(const t of e){const e=null!=t.geometry?t.geometry:null;if(e&&i){await a(e,i)&&r.push(t)}}}else r=e;return e.length&&"declaredClass"in e[0]&&"esri.Graphic"===e[0].declaredClass?{graphics:r}:{featuresJSON:r}}async _processStatsFromMemoryParams(e){const{features:t,filter:r}=e;if(t?.length)return this._getFilteredFeatures(t,r);const{view:a,field:i,field2:s,field3:o,normalizationField:n,valueExpression:l,layerViewFunc:u,signal:m}=e;let p=e.returnGeometry;if(null==p&&l){if(!P){const{arcadeUtils:e}=await b();P=e}const e=P.hasGeometryOperations(l);e&&await P.enableGeometryOperations(),p=e}let y=null,f=null,c=null,d=null,h=null;if(a)try{y=await a.whenLayerView(this.layer),f=null!=u&&u in y&&"function"==typeof y[u]}catch{f=!1}if(f)try{await this._waitForLayerViewUpdate(y);const e=await v({field:i,field2:s,field3:o,normalizationField:n,valueExpression:l});N(this,e,y).length?f=!1:(c=this.layer.createQuery(),c.outFields=e,c.returnGeometry=!1,T(c,r)),y.suspended&&(f=!1)}catch{f=!1}return f||(d=await this._fetchFeaturesForStats({field:i,field2:s,field3:o,valueExpression:l,normalizationField:n,returnGeometry:p,filter:r,view:a,signal:m},"json"),h=(await v({valueExpression:l})).map((e=>this.getField(e)?.toJSON())).filter(Boolean)),{layerView:y,query:c,featuresJSON:d,fieldInfos:h}}async _uvFromClientQuery(e,t){const{view:r,signal:a}=e,i=L(this,e),s=await this._fetchFeatureSetFromMemory(i,r,a),o=await E(s,{layer:this,field:e.field,field2:e.field2,field3:e.field3,fieldDelimiter:V,view:e.view,signal:e.signal});return k(o,t,e.returnAllCodedValues,V)}async _uvFromMemory(e,t){const{view:r,field:a,valueExpression:i,returnAllCodedValues:s,signal:o}=e,{featuresJSON:n,graphics:l,layerView:u,query:m,fieldInfos:p}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryUniqueValues"}),y={field:a,field2:e.field2,field3:e.field3,fieldDelimiter:V,valueExpression:i,domains:t,returnAllCodedValues:s};return i&&r&&(n||l)&&(y.viewInfoParams=M(r),y.timeZone=r.timeZone,y.fieldInfos=p),!n&&!l&&u&&"queryUniqueValues"in u?u.queryUniqueValues(m,y,{signal:o}):n?this.workerClient.uniqueValues(y,n):d({attribute:y,features:l})}_histogramForField(e){let t=null;return t=null!=e.minValue&&null!=e.maxValue?Promise.resolve({min:e.minValue,max:e.maxValue}):this.summaryStatistics(e).then((e=>{if(!e.count)throw new r(`${this.adapterName}:insufficient-data`,"Either the layer has no features or none of the features have data for the field");return{min:e.min,max:e.max}})),t.then((t=>C(this,{min:t.min,max:t.max},e.field,e.numBins??void 0,e.view,e.filter,e.signal)))}async _histogramFromMemory(e){const{view:t,field:r,valueExpression:a,signal:i}=e,{featuresJSON:s,graphics:o,layerView:n,query:l,fieldInfos:u}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryHistogram"}),m={field:r,valueExpression:a,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numBins:e.numBins};return a&&t&&(s||o)&&(m.viewInfoParams=M(t),m.timeZone=t.timeZone,m.fieldInfos=u),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(m.normalizationTotal=await this._getNormalizationTotalFromMemory(r,{featuresJSON:s,graphics:o,layerView:n,query:l},i)),!s&&!o&&n&&"queryHistogram"in n?n.queryHistogram(l,m,{signal:i}):s?this.workerClient.histogram(m,s):h({attribute:m,features:o})}_classBreaksFromInterpolation(e){const{minValue:t,maxValue:r}=e,a=e.numClasses||J,i=[],s=(r-t)/a;for(let l=0;l<a;l++){const e=t+l*s;i.push({minValue:e,maxValue:e+s})}i[a-1].maxValue=r;const o={classBreaks:i,normalizationTotal:e.normalizationTotal},n=Q(o,e.classificationMethod);return Promise.resolve(n)}async _classBreaksFromMemory(e){const{view:t,field:r,valueExpression:a,signal:i}=e,{featuresJSON:s,graphics:o,layerView:n,query:l,fieldInfos:u}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryClassBreaks"}),m={field:r,valueExpression:a,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numClasses:e.numClasses};return a&&t&&(s||o)&&(m.viewInfoParams=M(t),m.timeZone=t.timeZone,m.fieldInfos=u),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(m.normalizationTotal=await this._getNormalizationTotalFromMemory(r,{featuresJSON:s,graphics:o,layerView:n,query:l},i)),!s&&!o&&n&&"queryClassBreaks"in n?n.queryClassBreaks(l,m,{signal:i}):s?this.workerClient.classBreaks(m,s):w({attribute:m,features:o})}async _heatmapStatsFromMemory(e,t){const{view:r,field:a,radius:s}=e,{featuresJSON:o,graphics:n}=await this._processStatsFromMemoryParams({...e,returnGeometry:!0});i(r,"InMemoryLayerAdapter: must have a view");const l=new y({extent:r.extent,tolerance:"2d"===r.type?r.state.resolution:r.pixelSizeAt?.(r.center)}),m={field:a,fieldOffset:t,radius:s,transform:u(l),spatialReference:r.spatialReference?.toJSON(),size:r.size};return o?.length||n?.length?o?this.workerClient.heatmapStatistics(m,o):g({attribute:m,features:n}):{count:0,min:null,max:null,avg:null,stddev:null}}getField(e=""){return this.layer.getField(e)}getFieldUsageInfo(e){return this.getField(e)?{supportsLabelingInfo:!0,supportsRenderer:!0,supportsPopupTemplate:!0,supportsLayerQuery:!0,supportsStatistics:!0}:null}getFieldDomain(e,t){return this.layer.getFieldDomain(e,t)}createQuery(){return this.layer.createQuery()}async summaryStatistics(e){const{field:t,valueExpression:a,sqlExpression:i,features:s,view:o}=e,n=t?this.getField(t):null,l=p(n),u=!!a,m="3d"===o?.type;if(!a&&i&&!this.supportsSQLExpression)throw new r(`${this.adapterName}:not-supported`,"Layer does not support standardized SQL expression for queries");return u||s||m?this._summaryStatsFromMemory(e,n):this._summaryStatsFromClientQuery(e,l)}async uniqueValues(e){const{valueExpression:t,sqlExpression:a,features:i,view:s}=e,o=await j(e,this),n=!!t,l="3d"===s?.type;if(!t&&a&&!this.supportsSQLExpression)throw new r(`${this.adapterName}:not-supported`,"Layer does not support standardized SQL expression for queries");return n||i||l?this._uvFromMemory(e,o):this._uvFromClientQuery(e,o)}async histogram(e){const{features:t,valueExpression:a,normalizationType:i,sqlExpression:s}=e,o=t||!!a;if(!a&&s&&!this.supportsSQLExpression)throw new r(`${this.adapterName}:not-supported`,"Layer does not support standardized SQL expression for queries");return o||i?this._histogramFromMemory(e):this._histogramForField(e)}async classBreaks(e){return!1!==e.analyzeData?this._classBreaksFromMemory(e):this._classBreaksFromInterpolation(e)}async queryFeatureCount(e){const{whereClause:t,view:a,signal:i}=e;if(!a)throw new r(`${this.adapterName}:insufficient-data`,"view is required to fetch the features from layerView");const s=this.layer.createQuery();s.where=F(s.where,t);const n=await a.whenLayerView(this.layer);return await o((()=>!n.updating),i),n.queryFeatureCount(s,{signal:i})}async generateRenderer(e,t){throw new r(`${this.adapterName}:not-supported`,"Layer does not support generateRenderer operation")}async predominantCategories(e){const{fields:t,view:r,signal:a}=e,i=f(t),s=await this._uvFromMemory({valueExpression:i,view:r,signal:a});return I(s.uniqueValueInfos,t)}async heatmapStatistics(e){const{field:t,fieldOffset:r,view:a,signal:i}=e;return(t&&null==r?this.summaryStatistics({field:t,view:a,signal:i}):Promise.resolve(null)).then((t=>{let a=r||0;if(t){const{count:e,min:r,max:i}=t;e?r===i&&0===r?a=1:i<=0?a="abs":r<0&&(a=-1.01*r):a=1}return this._heatmapStatsFromMemory(e,a).then((e=>({...e,summaryStatistics:t,fieldOffset:a})))}))}async getSampleFeatures(e,a){const{view:i,sampleSize:s,requiredFields:o,returnGeometry:n,filter:l,signal:u}=e,m=this.layer.createQuery(),p=1;if(m.outSpatialReference=e.spatialReference||i?.spatialReference,m.returnGeometry=!!n,m.outFields=o,T(m,l),!i)throw new r(`${this.adapterName}:not-supported`,"view is required to get sample features for Layer");const y=await i.whenLayerView(this.layer);if(N(this,o,y).length)throw new r(`${this.adapterName}:not-supported`,"Required fields need to be passed in the outFields for Layer");const f=await this._fetchFeaturesFromMemory(y,m,u,a),c=null!=s&&s>0&&s<=f.length?s:f.length;return t(f,c,p)}load(e){const t=this.layer.load(e).then((async t=>{this.geometryType=t.geometryType,this.objectIdField=t.objectIdField,this.supportsSQLExpression=t.capabilities?.query?.supportsSqlExpression,this.minScale=t.minScale,this.maxScale=t.maxScale,this.fullExtent=t.fullExtent,this._hasLocalSource=!1,this.hasQueryEngine=!0,this.workerClient=S.getInstance(),await this.workerClient.open(e.signal)}));return this.addResolvingPromise(t),Promise.resolve(this)}};e([n({constructOnly:!0})],U.prototype,"layer",void 0),U=e([l("esri.smartMapping.support.adapters.InMemoryLayerAdapter")],U);const B=U;export{B as default};
5
+ import{_ as e}from"../../../chunks/tslib.es6.js";import{pickRandom as t}from"../../../core/arrayUtils.js";import r from"../../../core/Error.js";import a from"../../../core/Logger.js";import{assertIsSome as i}from"../../../core/maybe.js";import{timeout as s}from"../../../core/promiseUtils.js";import{whenOnce as o}from"../../../core/reactiveUtils.js";import{property as n}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as l}from"../../../core/accessorSupport/decorators/subclass.js";import{toQuantizationTransform as u}from"../../../geometry/support/quantizationUtils.js";import{kebabDict as m}from"../../../layers/support/fieldType.js";import{isTimeOnlyField as p}from"../../../layers/support/fieldUtils.js";import y from"../../../rest/support/QuantizationParameters.js";import{getArcadeForPredominantCategory as f}from"../../statistics/support/predominanceUtils.js";import{summaryStatistics as c,uniqueValues as d,histogram as h,classBreaks as w,heatmapStatistics as g}from"../../statistics/support/statsWorker.js";import{mergeWhereClauses as F}from"../../statistics/support/utils.js";import{WorkerClient as S}from"../../statistics/support/WorkerClient.js";import{getFieldsList as v,isAnyDateField as V,fieldDelimiter as q}from"../utils.js";import x from"./LayerAdapter.js";import{ensureFeaturesJSON as z,getSummaryStatsQuery as _,getSummaryStatisticsFromFeatureSet as M,getViewInfoParams as N,getMissingFields as T,updateQueryWithFeatureFilter as L,getUVQuery as E,getUniqueValuesFromFeatureSet as C,getBins as j,getDomainsForFields as I,getPredominantCategoriesFromUVInfos as O}from"./support/utils.js";import{processSummaryStatisticsResult as k,createUVResult as Q,resolveCBResult as b}from"../../../statistics/utils.js";import{loadArcade as J}from"../../../support/arcadeOnDemand.js";const P=5;let U=null,B=class extends x{constructor(){super(...arguments),this._hasLocalSource=!1,this.adapterName="in-memory-layer-adapter"}destroy(){this.workerClient?.destroy()}async _waitForLayerViewUpdate(e){if(!e)throw new r(`${this.adapterName}:insufficient-data", "layerView is required to fetch the features`);const t=new AbortController,i=o((()=>!e.updating),t.signal);await s(i,5e3,t).catch((e=>{throw a.getLogger(this).warn("LayerView is taking too long to update. Aborting fetch from layerView."),e}))}async _fetchFeatureSetFromMemory(e,t,a){const i=this.layer;if(this._hasLocalSource)return i.queryFeatures(e);if(!t)throw new r(`${this.adapterName}:insufficient-data`,"view is required to fetch the features from layerView");const s=await t.whenLayerView(this.layer);return await this._waitForLayerViewUpdate(s),s.queryFeatures(e,{signal:a})}async _fetchFeaturesFromMemory(e,t,a,i){const s=this.layer,o="json"===i;if(this._hasLocalSource){const e=await s.queryFeatures(t);return o?z(e.features):e.features}if(await this._waitForLayerViewUpdate(e),o&&"queryFeaturesJSON"in e&&e.queryFeaturesJSON){const{features:r}=await e.queryFeaturesJSON(t,{signal:a});return r}if(!("queryFeatures"in e))throw new r(`${this.adapterName}:not-supported`,"'queryFeatures' is not supported on the layerView");const n=await e.queryFeatures(t,{signal:a});return o?z(n.features):n.features}_fetchFeaturesForStats(e,t){return v({field:e.field,field2:e.field2,field3:e.field3,normalizationField:e.normalizationField,valueExpression:e.valueExpression}).then((r=>this.getSampleFeatures({sampleSize:-1,view:e.view,returnGeometry:e.returnGeometry,filter:e.filter,requiredFields:r,signal:e.signal},t)))}async _summaryStatsFromClientQuery(e,t){const{view:r,signal:a}=e,i=_(this,e,t),s=await this._fetchFeatureSetFromMemory(i,r,a),o=M(s,V(t)||p(t));return k(o)}async _getNormalizationTotalFromMemory(e,t,a){const{featuresJSON:i,graphics:s,layerView:o,query:n}=t,l=(!i&&!s&&o&&"querySummaryStatistics"in o?await o.querySummaryStatistics(n,{field:e},{signal:a}):i?await this.workerClient.summaryStatistics({field:e},i):await c({attribute:{field:e},features:s??[]})).sum;if(null==l)throw new r(`${this.adapterName}:invalid`,"invalid normalizationTotal");return l}async _summaryStatsFromMemory(e,t){const{view:r,field:a,valueExpression:i,normalizationType:s,signal:o}=e,n={field:a,valueExpression:i,normalizationType:s,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue},{featuresJSON:l,graphics:u,layerView:p,query:y,fieldInfos:f}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"querySummaryStatistics"});return i&&r&&(l||u)&&(n.fieldType=t?.type?m.toJSON(t.type):null,n.viewInfoParams=N(r),n.timeZone=r.timeZone,n.fieldInfos=f),"percent-of-total"===s&&null==e.normalizationTotal&&(n.normalizationTotal=await this._getNormalizationTotalFromMemory(a,{featuresJSON:l,graphics:u,layerView:p,query:y},o)),!l&&!u&&p&&"querySummaryStatistics"in p?p.querySummaryStatistics(y,n,{signal:o}):l?this.workerClient.summaryStatistics(n,l):c({attribute:n,features:u})}async _getFilteredFeatures(e,t){let r=[];if("intersects"===t?.spatialRelationship){const{intersect:a}=await import("../../../geometry/geometryEngineAsync.js"),i=null!=t.geometry?t.geometry:null;for(const t of e){const e=null!=t.geometry?t.geometry:null;if(e&&i){await a(e,i)&&r.push(t)}}}else r=e;return e.length&&"declaredClass"in e[0]&&"esri.Graphic"===e[0].declaredClass?{graphics:r}:{featuresJSON:r}}async _processStatsFromMemoryParams(e){const{features:t,filter:r}=e;if(t?.length)return this._getFilteredFeatures(t,r);const{view:a,field:i,field2:s,field3:o,normalizationField:n,valueExpression:l,layerViewFunc:u,signal:m}=e;let p=e.returnGeometry;if(null==p&&l){if(!U){const{arcadeUtils:e}=await J();U=e}const e=U.hasGeometryOperations(l);e&&await U.enableGeometryOperations(),p=e}let y=null,f=null,c=null,d=null,h=null;if(a)try{y=await a.whenLayerView(this.layer),f=null!=u&&u in y&&"function"==typeof y[u]}catch{f=!1}if(f)try{await this._waitForLayerViewUpdate(y);const e=await v({field:i,field2:s,field3:o,normalizationField:n,valueExpression:l});T(this,e,y).length?f=!1:(c=this.layer.createQuery(),c.outFields=e,c.returnGeometry=!1,L(c,r)),y.suspended&&(f=!1)}catch{f=!1}return f||(d=await this._fetchFeaturesForStats({field:i,field2:s,field3:o,valueExpression:l,normalizationField:n,returnGeometry:p,filter:r,view:a,signal:m},"json"),h=(await v({valueExpression:l})).map((e=>this.getField(e)?.toJSON())).filter(Boolean)),{layerView:y,query:c,featuresJSON:d,fieldInfos:h}}async _uvFromClientQuery(e,t){const{view:r,signal:a}=e,i=E(this,e),s=await this._fetchFeatureSetFromMemory(i,r,a),o=await C(s,{layer:this,field:e.field,field2:e.field2,field3:e.field3,fieldDelimiter:q,view:e.view,signal:e.signal});return Q(o,t,e.returnAllCodedValues,q)}async _uvFromMemory(e,t){const{view:r,field:a,valueExpression:i,returnAllCodedValues:s,signal:o}=e,{featuresJSON:n,graphics:l,layerView:u,query:m,fieldInfos:p}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryUniqueValues"}),y={field:a,field2:e.field2,field3:e.field3,fieldDelimiter:q,valueExpression:i,domains:t,returnAllCodedValues:s};return i&&r&&(n||l)&&(y.viewInfoParams=N(r),y.timeZone=r.timeZone,y.fieldInfos=p),!n&&!l&&u&&"queryUniqueValues"in u?u.queryUniqueValues(m,y,{signal:o}):n?this.workerClient.uniqueValues(y,n):d({attribute:y,features:l})}_histogramForField(e){let t=null;return t=null!=e.minValue&&null!=e.maxValue?Promise.resolve({min:e.minValue,max:e.maxValue}):this.summaryStatistics(e).then((e=>{if(!e.count)throw new r(`${this.adapterName}:insufficient-data`,"Either the layer has no features or none of the features have data for the field");return{min:e.min,max:e.max}})),t.then((t=>j(this,{min:t.min,max:t.max},e.field,e.numBins??void 0,e.view,e.filter,e.signal)))}async _histogramFromMemory(e){const{view:t,field:r,valueExpression:a,signal:i}=e,{featuresJSON:s,graphics:o,layerView:n,query:l,fieldInfos:u}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryHistogram"}),m={field:r,valueExpression:a,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numBins:e.numBins};return a&&t&&(s||o)&&(m.viewInfoParams=N(t),m.timeZone=t.timeZone,m.fieldInfos=u),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(m.normalizationTotal=await this._getNormalizationTotalFromMemory(r,{featuresJSON:s,graphics:o,layerView:n,query:l},i)),!s&&!o&&n&&"queryHistogram"in n?n.queryHistogram(l,m,{signal:i}):s?this.workerClient.histogram(m,s):h({attribute:m,features:o})}_classBreaksFromInterpolation(e){const{minValue:t,maxValue:r}=e,a=e.numClasses||P,i=[],s=(r-t)/a;for(let l=0;l<a;l++){const e=t+l*s;i.push({minValue:e,maxValue:e+s})}i[a-1].maxValue=r;const o={classBreaks:i,normalizationTotal:e.normalizationTotal},n=b(o,e.classificationMethod);return Promise.resolve(n)}async _classBreaksFromMemory(e){const{view:t,field:r,valueExpression:a,signal:i}=e,{featuresJSON:s,graphics:o,layerView:n,query:l,fieldInfos:u}=await this._processStatsFromMemoryParams({...e,layerViewFunc:"queryClassBreaks"}),m={field:r,valueExpression:a,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numClasses:e.numClasses};return a&&t&&(s||o)&&(m.viewInfoParams=N(t),m.timeZone=t.timeZone,m.fieldInfos=u),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(m.normalizationTotal=await this._getNormalizationTotalFromMemory(r,{featuresJSON:s,graphics:o,layerView:n,query:l},i)),!s&&!o&&n&&"queryClassBreaks"in n?n.queryClassBreaks(l,m,{signal:i}):s?this.workerClient.classBreaks(m,s):w({attribute:m,features:o})}async _heatmapStatsFromMemory(e,t){const{view:r,field:a,radius:s}=e,{featuresJSON:o,graphics:n}=await this._processStatsFromMemoryParams({...e,returnGeometry:!0});i(r,"InMemoryLayerAdapter: must have a view");const l=new y({extent:r.extent,tolerance:"2d"===r.type?r.state.resolution:r.pixelSizeAt?.(r.center)}),m={field:a,fieldOffset:t,radius:s,transform:u(l),spatialReference:r.spatialReference?.toJSON(),size:r.size};return o?.length||n?.length?o?this.workerClient.heatmapStatistics(m,o):g({attribute:m,features:n}):{count:0,min:null,max:null,avg:null,stddev:null}}getField(e=""){return this.layer.getField(e)}getFieldUsageInfo(e){return this.getField(e)?{supportsLabelingInfo:!0,supportsRenderer:!0,supportsPopupTemplate:!0,supportsLayerQuery:!0,supportsStatistics:!0}:null}getFieldDomain(e,t){return this.layer.getFieldDomain(e,t)}createQuery(){return this.layer.createQuery()}async summaryStatistics(e){const{field:t,valueExpression:a,sqlExpression:i,features:s,view:o}=e,n=t?this.getField(t):null,l=!!a,u="3d"===o?.type;if(!a&&i&&!this.supportsSQLExpression)throw new r(`${this.adapterName}:not-supported`,"Layer does not support standardized SQL expression for queries");return l||s||u?this._summaryStatsFromMemory(e,n):this._summaryStatsFromClientQuery(e,n)}async uniqueValues(e){const{valueExpression:t,sqlExpression:a,features:i,view:s}=e,o=await I(e,this),n=!!t,l="3d"===s?.type;if(!t&&a&&!this.supportsSQLExpression)throw new r(`${this.adapterName}:not-supported`,"Layer does not support standardized SQL expression for queries");return n||i||l?this._uvFromMemory(e,o):this._uvFromClientQuery(e,o)}async histogram(e){const{features:t,valueExpression:a,normalizationType:i,sqlExpression:s}=e,o=t||!!a;if(!a&&s&&!this.supportsSQLExpression)throw new r(`${this.adapterName}:not-supported`,"Layer does not support standardized SQL expression for queries");return o||i?this._histogramFromMemory(e):this._histogramForField(e)}async classBreaks(e){return!1!==e.analyzeData?this._classBreaksFromMemory(e):this._classBreaksFromInterpolation(e)}async queryFeatureCount(e){const{whereClause:t,view:a,signal:i}=e;if(!a)throw new r(`${this.adapterName}:insufficient-data`,"view is required to fetch the features from layerView");const s=this.layer.createQuery();s.where=F(s.where,t);const n=await a.whenLayerView(this.layer);return await o((()=>!n.updating),i),n.queryFeatureCount(s,{signal:i})}async generateRenderer(e,t){throw new r(`${this.adapterName}:not-supported`,"Layer does not support generateRenderer operation")}async predominantCategories(e){const{fields:t,view:r,signal:a}=e,i=f(t),s=await this._uvFromMemory({valueExpression:i,view:r,signal:a});return O(s.uniqueValueInfos,t)}async heatmapStatistics(e){const{field:t,fieldOffset:r,view:a,signal:i}=e;return(t&&null==r?this.summaryStatistics({field:t,view:a,signal:i}):Promise.resolve(null)).then((t=>{let a=r||0;if(t){const{count:e,min:r,max:i}=t;e?r===i&&0===r?a=1:i<=0?a="abs":r<0&&(a=-1.01*r):a=1}return this._heatmapStatsFromMemory(e,a).then((e=>({...e,summaryStatistics:t,fieldOffset:a})))}))}async getSampleFeatures(e,a){const{view:i,sampleSize:s,requiredFields:o,returnGeometry:n,filter:l,signal:u}=e,m=this.layer.createQuery(),p=1;if(m.outSpatialReference=e.spatialReference||i?.spatialReference,m.returnGeometry=!!n,m.outFields=o,L(m,l),!i)throw new r(`${this.adapterName}:not-supported`,"view is required to get sample features for Layer");const y=await i.whenLayerView(this.layer);if(T(this,o,y).length)throw new r(`${this.adapterName}:not-supported`,"Required fields need to be passed in the outFields for Layer");const f=await this._fetchFeaturesFromMemory(y,m,u,a),c=null!=s&&s>0&&s<=f.length?s:f.length;return t(f,c,p)}load(e){const t=this.layer.load(e).then((async t=>{this.geometryType=t.geometryType,this.objectIdField=t.objectIdField,this.supportsSQLExpression=t.capabilities?.query?.supportsSqlExpression,this.minScale=t.minScale,this.maxScale=t.maxScale,this.fullExtent=t.fullExtent,this._hasLocalSource=!1,this.hasQueryEngine=!0,this.workerClient=S.getInstance(),await this.workerClient.open(e.signal)}));return this.addResolvingPromise(t),Promise.resolve(this)}};e([n({constructOnly:!0})],B.prototype,"layer",void 0),B=e([l("esri.smartMapping.support.adapters.InMemoryLayerAdapter")],B);const $=B;export{$ 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{pickRandom as r}from"../../../core/arrayUtils.js";import t from"../../../core/Error.js";import{whenOnce as s}from"../../../core/reactiveUtils.js";import"../../../core/Logger.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as a}from"../../../core/accessorSupport/decorators/subclass.js";import{isDateField as i}from"../../../layers/support/fieldUtils.js";import{getArcadeForPredominantCategory as o}from"../../statistics/support/predominanceUtils.js";import{mergeWhereClauses as n}from"../../statistics/support/utils.js";import{WorkerClient as u}from"../../statistics/support/WorkerClient.js";import{fieldDelimiter as l}from"../utils.js";import p from"./FeatureLayerAdapter.js";import{getSummaryStatsQuery as c,getSummaryStatisticsFromFeatureSet as d,getUVQuery as f,getUniqueValuesFromFeatureSet as m,getDomainsForFields as y,getPredominantCategoriesFromUVInfos as h,getMissingFields as w}from"./support/utils.js";import{processSummaryStatisticsResult as g,createUVResult as F}from"../../../statistics/utils.js";let v=class extends p{constructor(e){super(e)}async _waitForLayerViewUpdate(e){if(!e)throw new t("ogc-feature-layer-adapter:insufficient-data","layerView is required to fetch the features");await s((()=>!e.updating))}async _summaryStatsFromClientQuery(e,r){const{signal:a,view:i}=e;if(!i)throw new t("ogc-feature-layer-adapter:insufficient-data","view is required to fetch the features from layerView");const o=c(this,e,r),n=await i.whenLayerView(this.layer);await s((()=>!n.updating),a);const u=await n.queryFeatures(o,{signal:a}),l=d(u,r);return g(l)}async _uvFromClientQuery(e,r){const{signal:a,view:i}=e;if(!i)throw new t("ogc-feature-layer-adapter:insufficient-data","view is required to fetch the features from layerView");const o=f(this,e),n=await i.whenLayerView(this.layer);await s((()=>!n.updating),a);const u=await n.queryFeatures(o,{signal:a}),p=await m(u,{layer:this,field:e.field,field2:e.field2,field3:e.field3,fieldDelimiter:l,view:e.view,signal:e.signal});return F(p,r,e.returnAllCodedValues,l)}summaryStatistics(e){const{field:r,valueExpression:s,sqlExpression:a,features:o,view:n}=e,u=r?this.getField(r):null,l=i(u),p=!!s,c="3d"===n?.type;if(!s&&a&&!this.supportsSQLExpression)throw new t("ogc-feature-layer-adapter:not-supported","Layer does not support standardized SQL expression for queries");return p||o||c?this._summaryStatsFromMemory(e,u):this._summaryStatsFromClientQuery(e,l)}async uniqueValues(e){const{valueExpression:r,sqlExpression:s,features:a,view:i}=e,o=await y(e,this),n=!!r,u="3d"===i?.type;if(!r&&s&&!this.supportsSQLExpression)throw new t("ogc-feature-layer-adapter:not-supported","Layer does not support standardized SQL expression for queries");return n||a||u?this._uvFromMemory(e,o):this._uvFromClientQuery(e,o)}histogram(e){const{features:r,valueExpression:s,normalizationType:a,sqlExpression:i}=e,o=r||!!s;if(!s&&i&&!this.supportsSQLExpression)throw new t("ogc-feature-layer-adapter:not-supported","Layer does not support standardized SQL expression for queries");return o||a?this._histogramFromMemory(e):this._histogramForField(e)}classBreaks(e){return!1!==e.analyzeData?this._classBreaksFromMemory(e):this._classBreaksFromInterpolation(e)}async queryFeatureCount(e){const{whereClause:r,view:a,signal:i}=e;if(!a)throw new t("ogc-feature-layer-adapter:insufficient-data","view is required to fetch the features from layerView");const o=this.layer.createQuery();o.where=n(o.where,r);const u=await a.whenLayerView(this.layer);return await s((()=>!u.updating),i),u.queryFeatureCount(o,{signal:i})}generateRenderer(e,r){throw new t("ogc-feature-layer-adapter:not-supported","OGCFeatureLayer does not support generateRenderer operation")}async predominantCategories(e){const{fields:r,view:t,signal:s}=e,a=o(r),i=await this._uvFromMemory({valueExpression:a,view:t,signal:s});return h(i.uniqueValueInfos,r)}async getSampleFeatures(e,s){const{view:a,sampleSize:i,requiredFields:o,returnGeometry:n,signal:u}=e,l=this.layer.createQuery(),p=1;if(l.outSpatialReference=e.spatialReference||a?.spatialReference,l.returnGeometry=!!n,l.outFields=o,!a)throw new t("ogc-feature-layer-adapter:not-supported","view is required to get sample features for OGCFeatureLayer");const c=await a.whenLayerView(this.layer);if(w(this,o,c).length)throw new t("ogc-feature-layer-adapter:not-supported","Required fields need to be passed in the outFields for OGCFeatureLayer");const d=await this._fetchFeaturesFromMemory(c,l,u,s),f=null!=i&&i>0&&i<=d.length?i:d.length;return r(d,f,p)}load(e){const r=this.layer.load(e).then((async r=>{this.geometryType=r.geometryType,this.objectIdField=r.objectIdField,this.supportsSQLExpression=r.capabilities?.query?.supportsSqlExpression,this.minScale=r.minScale,this.maxScale=r.maxScale,this.fullExtent=r.fullExtent,this.workerClient=u.getInstance(),await this.workerClient.open(e.signal)}));return this.addResolvingPromise(r),Promise.resolve(this)}};v=e([a("esri.smartMapping.support.adapters.OGCFeatureLayerAdapter")],v);const q=v;export{q as default};
5
+ import{_ as e}from"../../../chunks/tslib.es6.js";import{pickRandom as r}from"../../../core/arrayUtils.js";import t from"../../../core/Error.js";import{whenOnce as s}from"../../../core/reactiveUtils.js";import"../../../core/Logger.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as a}from"../../../core/accessorSupport/decorators/subclass.js";import{isTimeOnlyField as i}from"../../../layers/support/fieldUtils.js";import{getArcadeForPredominantCategory as o}from"../../statistics/support/predominanceUtils.js";import{mergeWhereClauses as n}from"../../statistics/support/utils.js";import{WorkerClient as u}from"../../statistics/support/WorkerClient.js";import{isAnyDateField as l,fieldDelimiter as p}from"../utils.js";import c from"./FeatureLayerAdapter.js";import{getSummaryStatsQuery as d,getSummaryStatisticsFromFeatureSet as f,getUVQuery as m,getUniqueValuesFromFeatureSet as y,getDomainsForFields as h,getPredominantCategoriesFromUVInfos as w,getMissingFields as g}from"./support/utils.js";import{processSummaryStatisticsResult as F,createUVResult as v}from"../../../statistics/utils.js";let q=class extends c{constructor(e){super(e)}async _waitForLayerViewUpdate(e){if(!e)throw new t("ogc-feature-layer-adapter:insufficient-data","layerView is required to fetch the features");await s((()=>!e.updating))}async _summaryStatsFromClientQuery(e,r){const{signal:a,view:o}=e;if(!o)throw new t("ogc-feature-layer-adapter:insufficient-data","view is required to fetch the features from layerView");const n=d(this,e,r),u=await o.whenLayerView(this.layer);await s((()=>!u.updating),a);const p=await u.queryFeatures(n,{signal:a}),c=f(p,l(r)||i(r));return F(c)}async _uvFromClientQuery(e,r){const{signal:a,view:i}=e;if(!i)throw new t("ogc-feature-layer-adapter:insufficient-data","view is required to fetch the features from layerView");const o=m(this,e),n=await i.whenLayerView(this.layer);await s((()=>!n.updating),a);const u=await n.queryFeatures(o,{signal:a}),l=await y(u,{layer:this,field:e.field,field2:e.field2,field3:e.field3,fieldDelimiter:p,view:e.view,signal:e.signal});return v(l,r,e.returnAllCodedValues,p)}summaryStatistics(e){const{field:r,valueExpression:s,sqlExpression:a,features:i,view:o}=e,n=r?this.getField(r):null,u=!!s,l="3d"===o?.type;if(!s&&a&&!this.supportsSQLExpression)throw new t("ogc-feature-layer-adapter:not-supported","Layer does not support standardized SQL expression for queries");return u||i||l?this._summaryStatsFromMemory(e,n):this._summaryStatsFromClientQuery(e,n)}async uniqueValues(e){const{valueExpression:r,sqlExpression:s,features:a,view:i}=e,o=await h(e,this),n=!!r,u="3d"===i?.type;if(!r&&s&&!this.supportsSQLExpression)throw new t("ogc-feature-layer-adapter:not-supported","Layer does not support standardized SQL expression for queries");return n||a||u?this._uvFromMemory(e,o):this._uvFromClientQuery(e,o)}histogram(e){const{features:r,valueExpression:s,normalizationType:a,sqlExpression:i}=e,o=r||!!s;if(!s&&i&&!this.supportsSQLExpression)throw new t("ogc-feature-layer-adapter:not-supported","Layer does not support standardized SQL expression for queries");return o||a?this._histogramFromMemory(e):this._histogramForField(e)}classBreaks(e){return!1!==e.analyzeData?this._classBreaksFromMemory(e):this._classBreaksFromInterpolation(e)}async queryFeatureCount(e){const{whereClause:r,view:a,signal:i}=e;if(!a)throw new t("ogc-feature-layer-adapter:insufficient-data","view is required to fetch the features from layerView");const o=this.layer.createQuery();o.where=n(o.where,r);const u=await a.whenLayerView(this.layer);return await s((()=>!u.updating),i),u.queryFeatureCount(o,{signal:i})}generateRenderer(e,r){throw new t("ogc-feature-layer-adapter:not-supported","OGCFeatureLayer does not support generateRenderer operation")}async predominantCategories(e){const{fields:r,view:t,signal:s}=e,a=o(r),i=await this._uvFromMemory({valueExpression:a,view:t,signal:s});return w(i.uniqueValueInfos,r)}async getSampleFeatures(e,s){const{view:a,sampleSize:i,requiredFields:o,returnGeometry:n,signal:u}=e,l=this.layer.createQuery(),p=1;if(l.outSpatialReference=e.spatialReference||a?.spatialReference,l.returnGeometry=!!n,l.outFields=o,!a)throw new t("ogc-feature-layer-adapter:not-supported","view is required to get sample features for OGCFeatureLayer");const c=await a.whenLayerView(this.layer);if(g(this,o,c).length)throw new t("ogc-feature-layer-adapter:not-supported","Required fields need to be passed in the outFields for OGCFeatureLayer");const d=await this._fetchFeaturesFromMemory(c,l,u,s),f=null!=i&&i>0&&i<=d.length?i:d.length;return r(d,f,p)}load(e){const r=this.layer.load(e).then((async r=>{this.geometryType=r.geometryType,this.objectIdField=r.objectIdField,this.supportsSQLExpression=r.capabilities?.query?.supportsSqlExpression,this.minScale=r.minScale,this.maxScale=r.maxScale,this.fullExtent=r.fullExtent,this.workerClient=u.getInstance(),await this.workerClient.open(e.signal)}));return this.addResolvingPromise(r),Promise.resolve(this)}};q=e([a("esri.smartMapping.support.adapters.OGCFeatureLayerAdapter")],q);const x=q;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 t from"../../../Graphic.js";import{pickRandom as r}from"../../../core/arrayUtils.js";import a from"../../../core/Error.js";import{timeout as s,throwIfAborted as i}from"../../../core/promiseUtils.js";import{whenOnce as o}from"../../../core/reactiveUtils.js";import{property as n}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as l}from"../../../core/accessorSupport/decorators/subclass.js";import{kebabDict as u}from"../../../layers/support/fieldType.js";import{isNumericField as p,isDateField as m}from"../../../layers/support/fieldUtils.js";import c from"../../../rest/support/FeatureSet.js";import{summaryStatistics as d,uniqueValues as h,classBreaks as f,histogram as y}from"../../statistics/support/statsWorker.js";import{WorkerClient as g}from"../../statistics/support/WorkerClient.js";import{getFieldsList as w,fieldDelimiter as F}from"../utils.js";import _ from"./FeatureLayerAdapter.js";import S from"./LayerAdapter.js";import{getMissingFields as v,ensureFeaturesJSON as x,getViewInfoParams as L,getUniqueValuesFromFeatureSet as C,getHistogramFromFeatureSet as E,getDomainsForFields as z}from"./support/utils.js";import{createUVResult as T}from"../../../statistics/utils.js";let A=class extends S{constructor(e){super(e),this._featureLayerAdapter=null,this.workerClient=null}destroy(){this.workerClient?.destroy()}_hasCachedStatistics(e){return this.layer.hasCachedStatistics(e)}_updateQuery(e,t=[],r=[]){if(!e||!r.length)return e;const a=this.layer.objectIdField,s=e.clone(),i=t.filter((e=>{const t=this.layer.getField(e);return!r.includes(t.name)})),o=i.some((e=>this.layer.getField(e).name===a));return s.outFields=o?i:[...i,a],s}async _fetchFeaturesFromMemory(e,t,r){if(!e)throw new a("scene-layer-adapter:insufficient-data","view is required to fetch the features from layerView");const n=await e.whenLayerView(this.layer),l=new AbortController,u=l.signal,p=o((()=>!n.updating),u);await s(p,5e3,l);const m=v(this,r,n);i(u);const c=this._updateQuery(t,r??[],m),d=await n.queryFeatures(c,{signal:u});i(u);const h=d.features;return m.length?n.whenGraphicAttributes(h,m):h}async _fetchFeaturesJSONFromMemory(e,t,r){return this._fetchFeaturesFromMemory(e,t,r).then(x)}_fetchFeaturesForStats(e,t){return w({field:e.field,normalizationField:e.normalizationField,valueExpression:e.valueExpression}).then((r=>this.getSampleFeatures({sampleSize:-1,view:e.view,returnGeometry:e.returnGeometry,requiredFields:r,signal:e.signal},t)))}async _processStatsFromMemoryParams(e){const t=e.features;if(t?.length){return t.length&&"declaredClass"in t[0]&&"esri.Graphic"===t[0].declaredClass?{graphics:t}:{featuresJSON:t}}const{view:r,field:s,normalizationField:i,valueExpression:o,signal:n}=e,l=await this._fetchFeaturesForStats({field:s,valueExpression:o,normalizationField:i,view:r,signal:n});if(!l?.length)throw new a("scene-layer-adapter:insufficient-data","No features are available to calculate statistics");return{graphics:l}}_generateFeatureSetForCachedHistogram(e,r=e.minimum,a=e.maximum,s){const i=[];for(let t=0;t<s;t++)i[t]=0;const o=e.counts.length,n=e.minimum,l=e.maximum;for(let t=0;t<o;t++){const u=(t+.5)/o,p=((1-u)*n+u*l-r)/(a-r)*s;p>=0&&p<=s&&(i[p===s?s-1:Math.floor(p)]+=e.counts[t])}const u=[];i.forEach(((e,r)=>{const a=new t({attributes:{}});a.attributes.EXPR_1=r+1,a.attributes.countOFExpr=e,u.push(a)}));const p=new c;return p.features=u,p}_getCachedStatistics(e,t){const r=this.layer;return e.valueExpression||e.sqlExpression||e.sqlWhere||e.minValue||e.maxValue?Promise.reject(new a("scene-layer-adapter:not-supported","This Layer does not support calculating statistics when 'valueExpression', 'sqlExpression', 'sqlWhere', 'minValue' or 'maxValue' is specified")):r.queryCachedStatistics(t?.name,{signal:e.signal}).then((e=>{const t=e.stats,{min:r,max:a,totalValuesCount:s}=t;let{avg:i,stddev:o,sum:n,variance:l,count:u}=t;return 0===r&&0===a||(i=0===i?null:i,n=0===n?null:n,o=0===o?null:o,l=0===l?null:l,u=0===u?null:u),null==u&&(null!=n&&null!=i?u=Math.round(n/i):null!=s&&(u=s)),{avg:i,count:u,max:a,min:r,stddev:o,sum:n,variance:l}}))}async _getNormalizationTotal(e,t,r){const s=(t?await this.workerClient.summaryStatistics({field:e},t):await d({attribute:{field:e},features:r})).sum;if(null==s)throw new a("scene-layer-adapter:invalid","invalid normalizationTotal");return s}async _getSummaryStatisticsFromMemory(e,t){const{view:r,field:a,normalizationField:s,valueExpression:i}=e,{featuresJSON:o,graphics:n}=await this._processStatsFromMemoryParams(e),l={field:a,valueExpression:i,normalizationType:e.normalizationType,normalizationField:s,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue};return e.valueExpression&&r&&o&&(l.fieldType=t?.type?u.toJSON(t.type):null,l.viewInfoParams=L(r),l.timeZone=r.timeZone),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(l.normalizationTotal=await this._getNormalizationTotal(a,o,n)),o?this.workerClient.summaryStatistics(l,o):d({attribute:l,features:n})}_getCachedStatisticsForUniqueValues(e,r){const s=this.layer,i=r?.name,o=r&&e.field?this.getFieldDomain(e.field):null;return e.valueExpression||e.sqlExpression||e.sqlWhere?Promise.reject(new a("scene-layer-adapter:not-supported","This Layer does not support calculating statistics when 'valueExpression', 'sqlExpression' or 'sqlWhere' is specified")):s.queryCachedStatistics(i,{signal:e.signal}).then((a=>{const o=a.stats;if(!o.mostFrequentValues)throw new Error;const n=a.labels?.labels,l={},u=[],d="countOF"+i;o.mostFrequentValues.forEach((e=>{const a=new t({attributes:{}});a.attributes[i]=r&&r.name!==s.objectIdField&&(p(r)||m(r))?Number(e.value):e.value,a.attributes[d]=e.count,u.push(a)})),n&&n.forEach((e=>{l[e.value]=e.label}));const h=new c;return h.features=u,C(h,{layer:this,field:e.field,labels:l,view:e.view,signal:e.signal})})).then((t=>T(t,[o],e.returnAllCodedValues)))}async _getUniqueValuesFromMemory(e,t){const{view:r,field:a,field2:s,field3:i,valueExpression:o,returnAllCodedValues:n}=e,l={field:a,field2:s,field3:i,fieldDelimiter:F,valueExpression:o,domains:t,returnAllCodedValues:n},{featuresJSON:u,graphics:p}=await this._processStatsFromMemoryParams(e);return e.valueExpression&&r&&u&&(l.viewInfoParams=L(r),l.timeZone=r.timeZone),u?this.workerClient.uniqueValues(l,u):h({attribute:l,features:p})}_getCachedStatisticsForHistogram(e,t){const r=this.layer;return e.valueExpression||e.sqlExpression||e.sqlWhere||e.normalizationType?Promise.reject(new a("scene-layer-adapter:not-supported","This Layer does not support calculating statistics when 'valueExpression' or 'sqlExpression' or 'sqlWhere' or 'normalizationType' is specified")):r.queryCachedStatistics(t&&t.name,{signal:e.signal}).then((t=>{const r=t.stats,{minValue:a,maxValue:s}=e,i=null!=a?a:r.min,o=null!=s?s:r.max,n=e.numBins||10,l=this._generateFeatureSetForCachedHistogram(r.histogram,i,o,n);return E(l,i,o,n)}))}async _getClassBreaksFromMemory(e){const{view:t,field:r,normalizationField:a,valueExpression:s}=e,{featuresJSON:i,graphics:o}=await this._processStatsFromMemoryParams(e),n={field:r,valueExpression:s,normalizationType:e.normalizationType,normalizationField:a,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numClasses:e.numClasses};return e.valueExpression&&t&&i&&(n.viewInfoParams=L(t),n.timeZone=t.timeZone),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(n.normalizationTotal=await this._getNormalizationTotal(r,i,o)),i?this.workerClient.classBreaks(n,i):f({attribute:n,features:o})}async _getHistogramFromMemory(e){const{view:t,field:r}=e,{featuresJSON:a,graphics:s}=await this._processStatsFromMemoryParams(e),i={field:r,valueExpression:e.valueExpression,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numBins:e.numBins};return e.valueExpression&&t&&a&&(i.viewInfoParams=L(t),i.timeZone=t.timeZone),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(i.normalizationTotal=await this._getNormalizationTotal(r,a,s)),a?this.workerClient.histogram(i,a):y({attribute:i,features:s})}getField(e){return this.layer.getField(e??"")}getFieldUsageInfo(e){const t=this.getField(e);if(!t)return null;const r=this.layer.getFieldUsageInfo(t.name);return{supportsLabelingInfo:r.supportsLabelingInfo,supportsPopupTemplate:r.supportsPopupTemplate,supportsRenderer:r.supportsRenderer,supportsLayerQuery:r.supportsLayerQuery,supportsStatistics:!0}}getFieldDomain(e,t){return this._featureLayerAdapter?this._featureLayerAdapter.getFieldDomain(e,t):null}createQuery(){return this.layer.createQuery()}summaryStatistics(e){const t=this.getField(e.field);if(this._featureLayerAdapter)return this._featureLayerAdapter.summaryStatistics(e);if(e.filter)throw new a("scene-layer-adapter:not-supported","filter is not supported");return this._hasCachedStatistics(t?.name)?this._getCachedStatistics(e,t).catch((()=>(i(e.signal),this._getSummaryStatisticsFromMemory(e,t)))):this._getSummaryStatisticsFromMemory(e,t)}async uniqueValues(e){if(this._featureLayerAdapter)return this._featureLayerAdapter.uniqueValues(e);if(e.filter)throw new a("scene-layer-adapter:not-supported","filter is not supported");const t=await z(e,this),{field:r,field2:s}=e,o=r&&s,n=this.getField(r);return!o&&n&&this._hasCachedStatistics(n.name)?this._getCachedStatisticsForUniqueValues(e,n).catch((()=>(i(e.signal),this._getUniqueValuesFromMemory(e,t)))):this._getUniqueValuesFromMemory(e,t)}histogram(e){const t=this.getField(e.field);if(this._featureLayerAdapter)return this._featureLayerAdapter.histogram(e);if(e.filter)throw new a("scene-layer-adapter:not-supported","filter is not supported");return t&&this._hasCachedStatistics(t.name)?this._getCachedStatisticsForHistogram(e,t).catch((()=>(i(e.signal),this._getHistogramFromMemory(e)))):this._getHistogramFromMemory(e)}classBreaks(e){const t=this.getField(e.field);if(this._featureLayerAdapter)return this._featureLayerAdapter.classBreaks(e);if(e.filter)throw new a("scene-layer-adapter:not-supported","filter is not supported");return this._hasCachedStatistics(t?.name)?Promise.reject(new a("scene-layer-adapter:not-supported","Cached stats not supported")):this._getClassBreaksFromMemory(e)}queryFeatureCount(e){return this._featureLayerAdapter?this._featureLayerAdapter.queryFeatureCount(e):Promise.reject(new a("scene-layer-adapter:not-supported","SceneLayer without associated FeatureLayer does not support count query"))}generateRenderer(e,t){return this._featureLayerAdapter?this._featureLayerAdapter.generateRenderer(e,t):Promise.reject(new a("scene-layer-adapter:not-supported","SceneLayer without associated FeatureLayer does not support generateRenderer operation"))}heatmapStatistics(e){return this._featureLayerAdapter?this._featureLayerAdapter.heatmapStatistics(e):Promise.reject(new a("scene-layer-adapter:not-supported","SceneLayer without associated FeatureLayer does not support heatmapStatistics operation"))}async predominantCategories(e){if(this._featureLayerAdapter)return this._featureLayerAdapter.predominantCategories(e);throw new a("scene-layer-adapter:not-supported","SceneLayer without associated FeatureLayer does not support predominantCategories")}async getSampleFeatures(e,t){if(e.filter)throw new a("scene-layer-adapter:not-supported","filter is not supported");const{view:s,sampleSize:o,requiredFields:n,returnGeometry:l,signal:u}=e,p=1,m="json"===t,c=this.createQuery();c.outFields=n,c.returnGeometry=!!l,c.where=null,c.num=o;let d=[];try{if(d=m?await this._fetchFeaturesJSONFromMemory(s,c,n):await this._fetchFeaturesFromMemory(s,c,n),d.length&&null!=o&&o>0&&o<=d.length)return r(d,o,p)}catch(f){i(u)}let h=null;if(this._featureLayerAdapter){const r={...e};delete r.view,h=await this._featureLayerAdapter.getSampleFeatures(r,t)}return h&&h.length?h:r(d,d.length,p)}load(e){const t=this.layer.load(e).then((async t=>{this.workerClient=g.getInstance(),await this.workerClient.open(e.signal);const r=t.associatedLayer;if(this.geometryType=t.geometryType,null!=r){this._featureLayerAdapter=new _({layer:r});return this._featureLayerAdapter.load(e).then((()=>{this.objectIdField=this._featureLayerAdapter.objectIdField,this.supportsSQLExpression=this._featureLayerAdapter.supportsSQLExpression,this.minScale=this._featureLayerAdapter.minScale,this.maxScale=this._featureLayerAdapter.maxScale,this.fullExtent=this._featureLayerAdapter.fullExtent}))}this.objectIdField=t.objectIdField,this.supportsSQLExpression=!1,this.hasQueryEngine=!1,this.fullExtent=t.fullExtent}));return this.addResolvingPromise(t),Promise.resolve(this)}};e([n({constructOnly:!0})],A.prototype,"layer",void 0),A=e([l("esri.smartMapping.support.adapters.SceneLayerAdapter")],A);const j=A;export{j as default};
5
+ import{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../Graphic.js";import{pickRandom as r}from"../../../core/arrayUtils.js";import a from"../../../core/Error.js";import{timeout as s,throwIfAborted as i}from"../../../core/promiseUtils.js";import{whenOnce as o}from"../../../core/reactiveUtils.js";import{property as n}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/has.js";import{subclass as l}from"../../../core/accessorSupport/decorators/subclass.js";import{kebabDict as u}from"../../../layers/support/fieldType.js";import{isNumericField as p}from"../../../layers/support/fieldUtils.js";import m from"../../../rest/support/FeatureSet.js";import{summaryStatistics as c,uniqueValues as d,classBreaks as h,histogram as f}from"../../statistics/support/statsWorker.js";import{WorkerClient as y}from"../../statistics/support/WorkerClient.js";import{getFieldsList as g,isAnyDateField as w,fieldDelimiter as F}from"../utils.js";import _ from"./FeatureLayerAdapter.js";import S from"./LayerAdapter.js";import{getMissingFields as v,ensureFeaturesJSON as x,getViewInfoParams as L,getUniqueValuesFromFeatureSet as C,getHistogramFromFeatureSet as E,getDomainsForFields as z}from"./support/utils.js";import{createUVResult as T}from"../../../statistics/utils.js";let A=class extends S{constructor(e){super(e),this._featureLayerAdapter=null,this.workerClient=null}destroy(){this.workerClient?.destroy()}_hasCachedStatistics(e){return this.layer.hasCachedStatistics(e)}_updateQuery(e,t=[],r=[]){if(!e||!r.length)return e;const a=this.layer.objectIdField,s=e.clone(),i=t.filter((e=>{const t=this.layer.getField(e);return!r.includes(t.name)})),o=i.some((e=>this.layer.getField(e).name===a));return s.outFields=o?i:[...i,a],s}async _fetchFeaturesFromMemory(e,t,r){if(!e)throw new a("scene-layer-adapter:insufficient-data","view is required to fetch the features from layerView");const n=await e.whenLayerView(this.layer),l=new AbortController,u=l.signal,p=o((()=>!n.updating),u);await s(p,5e3,l);const m=v(this,r,n);i(u);const c=this._updateQuery(t,r??[],m),d=await n.queryFeatures(c,{signal:u});i(u);const h=d.features;return m.length?n.whenGraphicAttributes(h,m):h}async _fetchFeaturesJSONFromMemory(e,t,r){return this._fetchFeaturesFromMemory(e,t,r).then(x)}_fetchFeaturesForStats(e,t){return g({field:e.field,normalizationField:e.normalizationField,valueExpression:e.valueExpression}).then((r=>this.getSampleFeatures({sampleSize:-1,view:e.view,returnGeometry:e.returnGeometry,requiredFields:r,signal:e.signal},t)))}async _processStatsFromMemoryParams(e){const t=e.features;if(t?.length){return t.length&&"declaredClass"in t[0]&&"esri.Graphic"===t[0].declaredClass?{graphics:t}:{featuresJSON:t}}const{view:r,field:s,normalizationField:i,valueExpression:o,signal:n}=e,l=await this._fetchFeaturesForStats({field:s,valueExpression:o,normalizationField:i,view:r,signal:n});if(!l?.length)throw new a("scene-layer-adapter:insufficient-data","No features are available to calculate statistics");return{graphics:l}}_generateFeatureSetForCachedHistogram(e,r=e.minimum,a=e.maximum,s){const i=[];for(let t=0;t<s;t++)i[t]=0;const o=e.counts.length,n=e.minimum,l=e.maximum;for(let t=0;t<o;t++){const u=(t+.5)/o,p=((1-u)*n+u*l-r)/(a-r)*s;p>=0&&p<=s&&(i[p===s?s-1:Math.floor(p)]+=e.counts[t])}const u=[];i.forEach(((e,r)=>{const a=new t({attributes:{}});a.attributes.EXPR_1=r+1,a.attributes.countOFExpr=e,u.push(a)}));const p=new m;return p.features=u,p}_getCachedStatistics(e,t){const r=this.layer;return e.valueExpression||e.sqlExpression||e.sqlWhere||e.minValue||e.maxValue?Promise.reject(new a("scene-layer-adapter:not-supported","This Layer does not support calculating statistics when 'valueExpression', 'sqlExpression', 'sqlWhere', 'minValue' or 'maxValue' is specified")):r.queryCachedStatistics(t?.name,{signal:e.signal}).then((e=>{const t=e.stats,{min:r,max:a,totalValuesCount:s}=t;let{avg:i,stddev:o,sum:n,variance:l,count:u}=t;return 0===r&&0===a||(i=0===i?null:i,n=0===n?null:n,o=0===o?null:o,l=0===l?null:l,u=0===u?null:u),null==u&&(null!=n&&null!=i?u=Math.round(n/i):null!=s&&(u=s)),{avg:i,count:u,max:a,min:r,stddev:o,sum:n,variance:l}}))}async _getNormalizationTotal(e,t,r){const s=(t?await this.workerClient.summaryStatistics({field:e},t):await c({attribute:{field:e},features:r})).sum;if(null==s)throw new a("scene-layer-adapter:invalid","invalid normalizationTotal");return s}async _getSummaryStatisticsFromMemory(e,t){const{view:r,field:a,normalizationField:s,valueExpression:i}=e,{featuresJSON:o,graphics:n}=await this._processStatsFromMemoryParams(e),l={field:a,valueExpression:i,normalizationType:e.normalizationType,normalizationField:s,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue};return e.valueExpression&&r&&o&&(l.fieldType=t?.type?u.toJSON(t.type):null,l.viewInfoParams=L(r),l.timeZone=r.timeZone),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(l.normalizationTotal=await this._getNormalizationTotal(a,o,n)),o?this.workerClient.summaryStatistics(l,o):c({attribute:l,features:n})}_getCachedStatisticsForUniqueValues(e,r){const s=this.layer,i=r?.name,o=r&&e.field?this.getFieldDomain(e.field):null;return e.valueExpression||e.sqlExpression||e.sqlWhere?Promise.reject(new a("scene-layer-adapter:not-supported","This Layer does not support calculating statistics when 'valueExpression', 'sqlExpression' or 'sqlWhere' is specified")):s.queryCachedStatistics(i,{signal:e.signal}).then((a=>{const o=a.stats;if(!o.mostFrequentValues)throw new Error;const n=a.labels?.labels,l={},u=[],c="countOF"+i;o.mostFrequentValues.forEach((e=>{const a=new t({attributes:{}});a.attributes[i]=r&&r.name!==s.objectIdField&&(p(r)||w(r))?Number(e.value):e.value,a.attributes[c]=e.count,u.push(a)})),n&&n.forEach((e=>{l[e.value]=e.label}));const d=new m;return d.features=u,C(d,{layer:this,field:e.field,labels:l,view:e.view,signal:e.signal})})).then((t=>T(t,[o],e.returnAllCodedValues)))}async _getUniqueValuesFromMemory(e,t){const{view:r,field:a,field2:s,field3:i,valueExpression:o,returnAllCodedValues:n}=e,l={field:a,field2:s,field3:i,fieldDelimiter:F,valueExpression:o,domains:t,returnAllCodedValues:n},{featuresJSON:u,graphics:p}=await this._processStatsFromMemoryParams(e);return e.valueExpression&&r&&u&&(l.viewInfoParams=L(r),l.timeZone=r.timeZone),u?this.workerClient.uniqueValues(l,u):d({attribute:l,features:p})}_getCachedStatisticsForHistogram(e,t){const r=this.layer;return e.valueExpression||e.sqlExpression||e.sqlWhere||e.normalizationType?Promise.reject(new a("scene-layer-adapter:not-supported","This Layer does not support calculating statistics when 'valueExpression' or 'sqlExpression' or 'sqlWhere' or 'normalizationType' is specified")):r.queryCachedStatistics(t&&t.name,{signal:e.signal}).then((t=>{const r=t.stats,{minValue:a,maxValue:s}=e,i=null!=a?a:r.min,o=null!=s?s:r.max,n=e.numBins||10,l=this._generateFeatureSetForCachedHistogram(r.histogram,i,o,n);return E(l,i,o,n)}))}async _getClassBreaksFromMemory(e){const{view:t,field:r,normalizationField:a,valueExpression:s}=e,{featuresJSON:i,graphics:o}=await this._processStatsFromMemoryParams(e),n={field:r,valueExpression:s,normalizationType:e.normalizationType,normalizationField:a,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numClasses:e.numClasses};return e.valueExpression&&t&&i&&(n.viewInfoParams=L(t),n.timeZone=t.timeZone),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(n.normalizationTotal=await this._getNormalizationTotal(r,i,o)),i?this.workerClient.classBreaks(n,i):h({attribute:n,features:o})}async _getHistogramFromMemory(e){const{view:t,field:r}=e,{featuresJSON:a,graphics:s}=await this._processStatsFromMemoryParams(e),i={field:r,valueExpression:e.valueExpression,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,minValue:e.minValue,maxValue:e.maxValue,standardDeviationInterval:e.standardDeviationInterval,classificationMethod:e.classificationMethod,numBins:e.numBins};return e.valueExpression&&t&&a&&(i.viewInfoParams=L(t),i.timeZone=t.timeZone),"percent-of-total"===e.normalizationType&&null==e.normalizationTotal&&(i.normalizationTotal=await this._getNormalizationTotal(r,a,s)),a?this.workerClient.histogram(i,a):f({attribute:i,features:s})}getField(e){return this.layer.getField(e??"")}getFieldUsageInfo(e){const t=this.getField(e);if(!t)return null;const r=this.layer.getFieldUsageInfo(t.name);return{supportsLabelingInfo:r.supportsLabelingInfo,supportsPopupTemplate:r.supportsPopupTemplate,supportsRenderer:r.supportsRenderer,supportsLayerQuery:r.supportsLayerQuery,supportsStatistics:!0}}getFieldDomain(e,t){return this._featureLayerAdapter?this._featureLayerAdapter.getFieldDomain(e,t):null}createQuery(){return this.layer.createQuery()}summaryStatistics(e){const t=this.getField(e.field);if(this._featureLayerAdapter)return this._featureLayerAdapter.summaryStatistics(e);if(e.filter)throw new a("scene-layer-adapter:not-supported","filter is not supported");return this._hasCachedStatistics(t?.name)?this._getCachedStatistics(e,t).catch((()=>(i(e.signal),this._getSummaryStatisticsFromMemory(e,t)))):this._getSummaryStatisticsFromMemory(e,t)}async uniqueValues(e){if(this._featureLayerAdapter)return this._featureLayerAdapter.uniqueValues(e);if(e.filter)throw new a("scene-layer-adapter:not-supported","filter is not supported");const t=await z(e,this),{field:r,field2:s}=e,o=r&&s,n=this.getField(r);return!o&&n&&this._hasCachedStatistics(n.name)?this._getCachedStatisticsForUniqueValues(e,n).catch((()=>(i(e.signal),this._getUniqueValuesFromMemory(e,t)))):this._getUniqueValuesFromMemory(e,t)}histogram(e){const t=this.getField(e.field);if(this._featureLayerAdapter)return this._featureLayerAdapter.histogram(e);if(e.filter)throw new a("scene-layer-adapter:not-supported","filter is not supported");return t&&this._hasCachedStatistics(t.name)?this._getCachedStatisticsForHistogram(e,t).catch((()=>(i(e.signal),this._getHistogramFromMemory(e)))):this._getHistogramFromMemory(e)}classBreaks(e){const t=this.getField(e.field);if(this._featureLayerAdapter)return this._featureLayerAdapter.classBreaks(e);if(e.filter)throw new a("scene-layer-adapter:not-supported","filter is not supported");return this._hasCachedStatistics(t?.name)?Promise.reject(new a("scene-layer-adapter:not-supported","Cached stats not supported")):this._getClassBreaksFromMemory(e)}queryFeatureCount(e){return this._featureLayerAdapter?this._featureLayerAdapter.queryFeatureCount(e):Promise.reject(new a("scene-layer-adapter:not-supported","SceneLayer without associated FeatureLayer does not support count query"))}generateRenderer(e,t){return this._featureLayerAdapter?this._featureLayerAdapter.generateRenderer(e,t):Promise.reject(new a("scene-layer-adapter:not-supported","SceneLayer without associated FeatureLayer does not support generateRenderer operation"))}heatmapStatistics(e){return this._featureLayerAdapter?this._featureLayerAdapter.heatmapStatistics(e):Promise.reject(new a("scene-layer-adapter:not-supported","SceneLayer without associated FeatureLayer does not support heatmapStatistics operation"))}async predominantCategories(e){if(this._featureLayerAdapter)return this._featureLayerAdapter.predominantCategories(e);throw new a("scene-layer-adapter:not-supported","SceneLayer without associated FeatureLayer does not support predominantCategories")}async getSampleFeatures(e,t){if(e.filter)throw new a("scene-layer-adapter:not-supported","filter is not supported");const{view:s,sampleSize:o,requiredFields:n,returnGeometry:l,signal:u}=e,p=1,m="json"===t,c=this.createQuery();c.outFields=n,c.returnGeometry=!!l,c.where=null,c.num=o;let d=[];try{if(d=m?await this._fetchFeaturesJSONFromMemory(s,c,n):await this._fetchFeaturesFromMemory(s,c,n),d.length&&null!=o&&o>0&&o<=d.length)return r(d,o,p)}catch(f){i(u)}let h=null;if(this._featureLayerAdapter){const r={...e};delete r.view,h=await this._featureLayerAdapter.getSampleFeatures(r,t)}return h&&h.length?h:r(d,d.length,p)}load(e){const t=this.layer.load(e).then((async t=>{this.workerClient=y.getInstance(),await this.workerClient.open(e.signal);const r=t.associatedLayer;if(this.geometryType=t.geometryType,null!=r){this._featureLayerAdapter=new _({layer:r});return this._featureLayerAdapter.load(e).then((()=>{this.objectIdField=this._featureLayerAdapter.objectIdField,this.supportsSQLExpression=this._featureLayerAdapter.supportsSQLExpression,this.minScale=this._featureLayerAdapter.minScale,this.maxScale=this._featureLayerAdapter.maxScale,this.fullExtent=this._featureLayerAdapter.fullExtent}))}this.objectIdField=t.objectIdField,this.supportsSQLExpression=!1,this.hasQueryEngine=!1,this.fullExtent=t.fullExtent}));return this.addResolvingPromise(t),Promise.resolve(this)}};e([n({constructOnly:!0})],A.prototype,"layer",void 0),A=e([l("esri.smartMapping.support.adapters.SceneLayerAdapter")],A);const j=A;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 t}from"../../../chunks/tslib.es6.js";import"../../../core/Logger.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/arrayUtils.js";import"../../../core/has.js";import"../../../core/Error.js";import{subclass as r}from"../../../core/accessorSupport/decorators/subclass.js";import s from"./InMemoryLayerAdapter.js";import{getSummaryStatsQuery as o,getSummaryStatisticsFromFeatureSet as e}from"./support/utils.js";import{processSummaryStatisticsResult as a}from"../../../statistics/utils.js";let i=class extends s{async _summaryStatsFromClientQuery(t,r){const{signal:s,view:i}=t,p=o(this,t,r);p.outStatistics=p.outStatistics?.filter((t=>"totalcount_value"!==t.outStatisticFieldName));const c=await this._fetchFeatureSetFromMemory(p,i,s),m=e(c,r);return a(m)}};i=t([r("esri.smartMapping.support.adapters.StreamLayerAdapter")],i);const p=i;export{p as default};
5
+ import{_ as t}from"../../../chunks/tslib.es6.js";import"../../../core/Logger.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/arrayUtils.js";import"../../../core/has.js";import"../../../core/Error.js";import{subclass as r}from"../../../core/accessorSupport/decorators/subclass.js";import{isTimeOnlyField as s}from"../../../layers/support/fieldUtils.js";import{isAnyDateField as o}from"../utils.js";import e from"./InMemoryLayerAdapter.js";import{getSummaryStatsQuery as i,getSummaryStatisticsFromFeatureSet as a}from"./support/utils.js";import{processSummaryStatisticsResult as p}from"../../../statistics/utils.js";let m=class extends e{async _summaryStatsFromClientQuery(t,r){const{signal:e,view:m}=t,c=i(this,t,r);c.outStatistics=c.outStatistics?.filter((t=>"totalcount_value"!==t.outStatisticFieldName));const u=await this._fetchFeatureSetFromMemory(c,m,e),l=a(u,o(r)||s(r));return p(l)}};m=t([r("esri.smartMapping.support.adapters.StreamLayerAdapter")],m);const c=m;export{c 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{isSome as e}from"../../../../core/arrayUtils.js";import{throwIfAborted as t}from"../../../../core/promiseUtils.js";import"../../../../core/has.js";import n from"../../../../layers/support/CodedValueDomain.js";import"../../../../layers/support/Domain.js";import"../../../../layers/support/InheritedDomain.js";import"../../../../layers/support/RangeDomain.js";import l from"../../../../layers/support/Field.js";import{isStringField as i}from"../../../../layers/support/fieldUtils.js";import o from"../../../../rest/support/StatisticDefinition.js";import{noDominantCategoryField as a}from"../../../statistics/support/predominanceUtils.js";import{getRangeExpr as r,getSQLFilterForNormalization as s,mergeWhereClauses as u}from"../../../statistics/support/utils.js";import{isIntegerField as c,getDateDiffSQL as m,castIntegerFieldToFloat as f}from"../../utils.js";import{getEqualIntervalBins as p,isNullCountSupported as d,statisticTypes as y,processNullValue as g}from"../../../../statistics/utils.js";const v=/_value$/i,h=Math.LOG10E,x=10;function F(e){return e.map((e=>e.toJSON()))}function w(e,t){const n=[],l=e.layer,i="featureReduction"in l?l.featureReduction:null,o="binning"===i?.type,a=null!=i&&"fields"in i?i.fields?.map((e=>e.name?.toLowerCase())).filter(Boolean):[];if(!o||!t)return n;for(const r of t)a.includes(r.toLowerCase())||n.push(r);return n}function E(e,t,n){const l=[];if(t)for(const i of t){const t=e.getField(i);t&&n&&"availableFields"in n&&!n.availableFields?.includes(t.name)&&l.push(t.name)}return l}function S(e,t){const n=e&&e.features;if(0===n?.length)return{avg:null,count:0,max:null,median:null,min:null,nullcount:0,stddev:null,sum:null,variance:null};const l=n?.[0]?.attributes,i={};for(const o in l)i[o.replace(v,"").toLowerCase()]=l[o];return null!=i.totalcount&&i.totalcount>=i.count&&(i.nullcount=i.totalcount-i.count),delete i.totalcount,i.min===i.max&&null!=i.min&&null==i.stddev&&(i.stddev=i.variance=0),t&&(["min","max","avg","stddev","sum","variance"].forEach((e=>{null!=i[e]&&(i[e]=Math.ceil(i[e]))})),i.min===i.max&&null!=i.min&&(i.avg=i.min,i.stddev=i.variance=0)),i}function V(e){const t=[],n=e.classBreaks,l=n[0].minValue,i=n[n.length-1].maxValue;n.forEach((e=>{t.push([e.minValue,e.maxValue])}));const o={field:e.field,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,layer:e.layer};return{min:l,max:i,intervals:t,sqlExpr:z(o),excludeZerosExpr:e.where,normTotal:e.normalizationTotal}}function z(e){const{field:t,normalizationType:n,normalizationField:l,normalizationTotal:i,layer:o}=e,a=c(o,t);let r=t;return"percent-of-total"===n?r=`((${a?f(t):t} / ${i}) * 100)`:"log"===n?r=`(log(${t}) * ${h})`:"field"===n?r=`(${a?f(t):t} / ${l})`:"natural-log"===n?r=`(log(${a?f(t):t}))`:"square-root"===n&&(r=`(power(${a?f(t):t}, 0.5))`),r}function T(e,t){let n;if(t=t.toLowerCase(),e)for(const l in e)if(l.toLowerCase()!==t){n=e[l];break}return n}function q(e,t){let n;if(t=t.toLowerCase(),e)for(const l in e)if(l.toLowerCase()===t){n=e[l];break}return n}function $(e,t,n,l,i){const o={},a="countOFExpr";e&&e.features&&e.features.forEach((e=>{const t=e.attributes,n=T(t,a),l=q(t,a);null!=n&&null!=l&&0!==n&&(o[n]=l)}));const r=[];return p(t,n,l).forEach(((e,t)=>{const n=(t+1).toString();r.push({minValue:e[0],maxValue:e[1],count:o.hasOwnProperty(n)?o[n]:0})})),{bins:r,minValue:t,maxValue:n,normalizationTotal:i}}function b(e,n){const l=e&&e.features,{field:i,field2:o,field3:a,fieldDelimiter:r,layer:s,view:u,signal:c,labels:m}=n,f=`countOF${!(!i||!o)?"Expr":i||"Expr"}`,p={};let d=!1;if(l.forEach((e=>{const t=e.attributes,n=q(t,f);let l=i?q(t,i):T(t,f),s=o?q(t,o):null,u=a?q(t,a):null;null===l&&0===n&&(d=!0),(null==l||"string"==typeof l&&""===l.trim())&&(l=null),o&&(null==s||"string"==typeof s&&""===s.trim())&&(s=null),a&&(null==u||"string"==typeof u&&""===u.trim())&&(u=null);let c=l;o&&(c=`${g(c)}${r}${g(s)}`,a&&(c=`${c}${r}${g(u)}`)),null==p[c]?p[c]={count:n,data:c}:p[c].count=p[c].count+n})),i&&d){const e=i+" is NULL";return s.queryFeatureCount({whereClause:e,view:u,signal:c}).then((e=>(e=e||0,p.null.count=p.null.count+e,j(p,m)))).catch((()=>(t(c),j(p,m))))}return Promise.resolve(j(p,m))}function j(e,t){if(t)for(const n in e)e[n].label=t[n];return{count:e}}async function C(e,t,l){const i=e?l.getField(e):null,o=i?l.getFieldDomain(i.name):null;if(o)return o;const{uniqueValueInfos:a}=await l.uniqueValues({field:e,sqlWhere:t.sqlWhere,features:t.features,useFeaturesInView:t.useFeaturesInView,view:t.view,signal:t.signal}),r=a.map((e=>({code:e.value})));return new n({codedValues:r})}async function L(e,t){if(!e.returnAllCodedValues)return[];const{field:n,field2:l,field3:i}=e;if(n&&!l){const e=n?t.getField(n):null,l=e?t.getFieldDomain(e.name):null;return l?[l]:[]}const o=[];return n&&(o.push(C(n,e,t)),l&&(o.push(C(l,e,t)),i&&o.push(C(i,e,t)))),Promise.all(o)}function D(e,t){return m(e,new Date(0),t,"milliseconds").sqlExpression}function O(e){return{viewingMode:"2d"===e.type?"map":e.viewingMode,scale:e.scale,spatialReference:e.spatialReference?.toJSON()}}function R(e,t){const n=new Set(e.map((e=>e.value))),l=t.filter((e=>!n.has(e)));for(const i of l)e.push({value:i,count:0});e.sort(((e,n)=>t.indexOf(e.value)-t.indexOf(n.value)));for(const i of e)i.value===a&&(i.value=null);return{predominantCategoryInfos:e}}function I(t){const n="featureReduction"in t?t.featureReduction:null;return((null!=n&&"fields"in n?n.fields:null)??[]).map((e=>{const n=B(e,t.fieldsIndex);return n?new l({type:n,name:e.name,alias:e.alias}):null})).filter(e)}function B(e,t){switch(e.statisticType){case"avg":case"avg_angle":return"double";case"count":return"integer";case"min":case"max":case"sum":return e.onStatisticField?t.get(e.onStatisticField)?.type??null:e.onStatisticExpression?"string"===e.onStatisticExpression.returnType?null:"double":null;case"mode":return e.onStatisticField?t.get(e.onStatisticField)?.type??null:e.onStatisticExpression?"string"===e.onStatisticExpression.returnType?"string":"double":null;default:return null}}function N(e,t,n){const{field:l,normalizationType:a,normalizationField:c,normalizationTotal:m,minValue:f,maxValue:p,filter:g}=t,v=e.supportsSQLExpression&&n?D(e,l):t.sqlExpression,h=z({field:l,normalizationType:a,normalizationField:c,normalizationTotal:m,layer:e}),x=v||h,F=x?r(x,f,p):null,w=s({field:l,normalizationField:c,normalizationType:a}),E=u(t.sqlWhere,w),S=u(E,F),V=d({normalizationField:c,normalizationType:a,sqlExpression:v,supportsSQLExpression:e.supportsSQLExpression,minValue:f,maxValue:p}),T=i(e.getField(l??void 0)),q=y.filter((e=>"nullcount"===e?V:!T||"count"===e)),$=e.createQuery();return $.where=u($.where,S),$.sqlFormat=v?"standard":null,$.outStatistics=q.map((t=>{const n=new o;let l=null,i=null,a=`${t}_value`;return"variance"===t?(l="var",i=x):"nullcount"===t?(l="count",i=e.objectIdField,a="totalcount_value"):"median"===t?(l="percentile-continuous",i=x,n.statisticParameters={value:.5}):(l=t,i=x),n.statisticType=l,n.onStatisticField=i,n.outStatisticFieldName=a,n})),P($,g),$}function P(e,t){t&&(e.geometry=t.geometry,e.spatialRelationship=t.spatialRelationship)}function Q(e,t){const{field:n,field2:l,field3:i,sqlExpression:o}=t,a=!(!n||!l),r=e.createQuery();return r.where=u(r.where,t.sqlWhere),r.sqlFormat=o?"standard":null,r.outStatistics=[U(a?null:n,a?"1":o)].filter(Boolean),r.groupByFieldsForStatistics=[n||o,l,i].filter(Boolean),P(r,t.filter),r}function U(e,t){const n="countOF"+(e||"Expr"),l=new o;return l.statisticType="count",l.onStatisticField=t?"1":e,l.outStatisticFieldName=n,l}function M(e,t,n,l=x,i,o,a){const{min:r,max:s,normTotal:u,excludeZerosExpr:c}=t,m=t.intervals||p(r,s,l),f=t.sqlExpr||n;return W(e,m,f,c,i,o,a).then((e=>({bins:e.map(((e,t)=>({minValue:m[t][0],maxValue:m[t][1],count:"fulfilled"===e.status?e.value:0}))),minValue:r,maxValue:s,normalizationTotal:u})))}function W(e,t,n,l,i,o,a){const r=[],s=t.length;for(let c=0;c<s;c++){const e=u(l,u(n+" >= "+t[c][0],null!==t[c][1]?n+(c===s-1?" <= ":" < ")+t[c][1]:""));r.push(e)}return Promise.allSettled(r.map((t=>e.queryFeatureCount({whereClause:t,view:i,filter:o,signal:a}))))}export{x as defaultNumBins,F as ensureFeaturesJSON,V as generateBinParams,B as getAggregateFieldType,M as getBins,L as getDomainsForFields,I as getFeatureReductionFields,z as getFieldExpr,$ as getHistogramFromFeatureSet,E as getMissingFields,w as getMissingFieldsForBinning,R as getPredominantCategoriesFromUVInfos,S as getSummaryStatisticsFromFeatureSet,N as getSummaryStatsQuery,Q as getUVQuery,b as getUniqueValuesFromFeatureSet,O as getViewInfoParams,D as msSinceUnixEpochSQL,P as updateQueryWithFeatureFilter};
5
+ import{isSome as e}from"../../../../core/arrayUtils.js";import{throwIfAborted as t}from"../../../../core/promiseUtils.js";import"../../../../core/has.js";import n from"../../../../layers/support/CodedValueDomain.js";import"../../../../layers/support/Domain.js";import"../../../../layers/support/InheritedDomain.js";import"../../../../layers/support/RangeDomain.js";import l from"../../../../layers/support/Field.js";import{isTimeOnlyField as i,isStringField as o}from"../../../../layers/support/fieldUtils.js";import a from"../../../../rest/support/StatisticDefinition.js";import{noDominantCategoryField as r}from"../../../statistics/support/predominanceUtils.js";import{getRangeExpr as u,getSQLFilterForNormalization as s,mergeWhereClauses as c}from"../../../statistics/support/utils.js";import{isIntegerField as m,getDateDiffSQL as f,castIntegerFieldToFloat as p,isAnyDateField as d}from"../../utils.js";import{getEqualIntervalBins as y,isNullCountSupported as g,statisticTypes as v,processNullValue as h}from"../../../../statistics/utils.js";const x=/_value$/i,F=Math.LOG10E,w={SECOND:1e3,MINUTE:6e4,HOUR:36e5},E=10;function S(e){return e.map((e=>e.toJSON()))}function T(e,t){const n=[],l=e.layer,i="featureReduction"in l?l.featureReduction:null,o="binning"===i?.type,a=null!=i&&"fields"in i?i.fields?.map((e=>e.name?.toLowerCase())).filter(Boolean):[];if(!o||!t)return n;for(const r of t)a.includes(r.toLowerCase())||n.push(r);return n}function V(e,t,n){const l=[];if(t)for(const i of t){const t=e.getField(i);t&&n&&"availableFields"in n&&!n.availableFields?.includes(t.name)&&l.push(t.name)}return l}function z(e,t){const n=e&&e.features;if(0===n?.length)return{avg:null,count:0,max:null,median:null,min:null,nullcount:0,stddev:null,sum:null,variance:null};const l=n?.[0]?.attributes,i={};for(const o in l)i[o.replace(x,"").toLowerCase()]=l[o];return null!=i.totalcount&&i.totalcount>=i.count&&(i.nullcount=i.totalcount-i.count),delete i.totalcount,i.min===i.max&&null!=i.min&&null==i.stddev&&(i.stddev=i.variance=0),t&&(["min","max","avg","stddev","sum","variance"].forEach((e=>{null!=i[e]&&(i[e]=Math.ceil(i[e]))})),i.min===i.max&&null!=i.min&&(i.avg=i.min,i.stddev=i.variance=0)),i}function $(e){const t=[],n=e.classBreaks,l=n[0].minValue,i=n[n.length-1].maxValue;n.forEach((e=>{t.push([e.minValue,e.maxValue])}));const o={field:e.field,normalizationType:e.normalizationType,normalizationField:e.normalizationField,normalizationTotal:e.normalizationTotal,layer:e.layer};return{min:l,max:i,intervals:t,sqlExpr:q(o),excludeZerosExpr:e.where,normTotal:e.normalizationTotal}}function q(e){const{field:t,normalizationType:n,normalizationField:l,normalizationTotal:i,layer:o}=e,a=m(o,t);let r=t;return"percent-of-total"===n?r=`((${a?p(t):t} / ${i}) * 100)`:"log"===n?r=`(log(${t}) * ${F})`:"field"===n?r=`(${a?p(t):t} / ${l})`:"natural-log"===n?r=`(log(${a?p(t):t}))`:"square-root"===n&&(r=`(power(${a?p(t):t}, 0.5))`),r}function C(e,t){let n;if(t=t.toLowerCase(),e)for(const l in e)if(l.toLowerCase()!==t){n=e[l];break}return n}function b(e,t){let n;if(t=t.toLowerCase(),e)for(const l in e)if(l.toLowerCase()===t){n=e[l];break}return n}function j(e,t,n,l,i){const o={},a="countOFExpr";e&&e.features&&e.features.forEach((e=>{const t=e.attributes,n=C(t,a),l=b(t,a);null!=n&&null!=l&&0!==n&&(o[n]=l)}));const r=[];return y(t,n,l).forEach(((e,t)=>{const n=(t+1).toString();r.push({minValue:e[0],maxValue:e[1],count:o.hasOwnProperty(n)?o[n]:0})})),{bins:r,minValue:t,maxValue:n,normalizationTotal:i}}function O(e,n){const l=e&&e.features,{field:i,field2:o,field3:a,fieldDelimiter:r,layer:u,view:s,signal:c,labels:m}=n,f=`countOF${!(!i||!o)?"Expr":i||"Expr"}`,p={};let d=!1;if(l.forEach((e=>{const t=e.attributes,n=b(t,f);let l=i?b(t,i):C(t,f),u=o?b(t,o):null,s=a?b(t,a):null;null===l&&0===n&&(d=!0),(null==l||"string"==typeof l&&""===l.trim())&&(l=null),o&&(null==u||"string"==typeof u&&""===u.trim())&&(u=null),a&&(null==s||"string"==typeof s&&""===s.trim())&&(s=null);let c=l;o&&(c=`${h(c)}${r}${h(u)}`,a&&(c=`${c}${r}${h(s)}`)),null==p[c]?p[c]={count:n,data:c}:p[c].count=p[c].count+n})),i&&d){const e=i+" is NULL";return u.queryFeatureCount({whereClause:e,view:s,signal:c}).then((e=>(e=e||0,p.null.count=p.null.count+e,L(p,m)))).catch((()=>(t(c),L(p,m))))}return Promise.resolve(L(p,m))}function L(e,t){if(t)for(const n in e)e[n].label=t[n];return{count:e}}async function R(e,t,l){const i=e?l.getField(e):null,o=i?l.getFieldDomain(i.name):null;if(o)return o;const{uniqueValueInfos:a}=await l.uniqueValues({field:e,sqlWhere:t.sqlWhere,features:t.features,useFeaturesInView:t.useFeaturesInView,view:t.view,signal:t.signal}),r=a.map((e=>({code:e.value})));return new n({codedValues:r})}async function D(e,t){if(!e.returnAllCodedValues)return[];const{field:n,field2:l,field3:i}=e;if(n&&!l){const e=n?t.getField(n):null,l=e?t.getFieldDomain(e.name):null;return l?[l]:[]}const o=[];return n&&(o.push(R(n,e,t)),l&&(o.push(R(l,e,t)),i&&o.push(R(i,e,t)))),Promise.all(o)}function I(e,t){return f(e,new Date(0),t,"milliseconds").sqlExpression}function N(e,t){return`EXTRACT(${t} FROM ${e}) * ${w[t]}`}function U(e){if(!e)return null;return p(["HOUR","MINUTE","SECOND"].map((t=>`(${N(e,t)})`)).join(" + "))}function M(e){return{viewingMode:"2d"===e.type?"map":e.viewingMode,scale:e.scale,spatialReference:e.spatialReference?.toJSON()}}function B(e,t){const n=new Set(e.map((e=>e.value))),l=t.filter((e=>!n.has(e)));for(const i of l)e.push({value:i,count:0});e.sort(((e,n)=>t.indexOf(e.value)-t.indexOf(n.value)));for(const i of e)i.value===r&&(i.value=null);return{predominantCategoryInfos:e}}function P(t){const n="featureReduction"in t?t.featureReduction:null;return((null!=n&&"fields"in n?n.fields:null)??[]).map((e=>{const n=Q(e,t.fieldsIndex);return n?new l({type:n,name:e.name,alias:e.alias}):null})).filter(e)}function Q(e,t){switch(e.statisticType){case"avg":case"avg_angle":return"double";case"count":return"integer";case"min":case"max":case"sum":return e.onStatisticField?t.get(e.onStatisticField)?.type??null:e.onStatisticExpression?"string"===e.onStatisticExpression.returnType?null:"double":null;case"mode":return e.onStatisticField?t.get(e.onStatisticField)?.type??null:e.onStatisticExpression?"string"===e.onStatisticExpression.returnType?"string":"double":null;default:return null}}function W(e,t){return d(t)?I(e,t?.name):i(t)?U(t?.name):null}function _(e,t,n){const{field:l,normalizationType:i,normalizationField:r,normalizationTotal:m,minValue:f,maxValue:p,filter:d}=t,y=e.supportsSQLExpression?W(e,n)||t.sqlExpression:null,h=q({field:l,normalizationType:i,normalizationField:r,normalizationTotal:m,layer:e}),x=y||h,F=x?u(x,f,p):null,w=s({field:l,normalizationField:r,normalizationType:i}),E=c(t.sqlWhere,w),S=c(E,F),T=g({normalizationField:r,normalizationType:i,sqlExpression:y,supportsSQLExpression:e.supportsSQLExpression,minValue:f,maxValue:p}),V=o(e.getField(l??void 0)),z=v.filter((e=>"nullcount"===e?T:!V||"count"===e)),$=e.createQuery();return $.where=c($.where,S),$.sqlFormat=y?"standard":null,$.outStatistics=z.map((t=>{const n=new a;let l=null,i=null,o=`${t}_value`;return"variance"===t?(l="var",i=x):"nullcount"===t?(l="count",i=e.objectIdField,o="totalcount_value"):"median"===t?(l="percentile-continuous",i=x,n.statisticParameters={value:.5}):(l=t,i=x),n.statisticType=l,n.onStatisticField=i,n.outStatisticFieldName=o,n})),k($,d),$}function k(e,t){t&&(e.geometry=t.geometry,e.spatialRelationship=t.spatialRelationship)}function A(e,t){const{field:n,field2:l,field3:i,sqlExpression:o}=t,a=!(!n||!l),r=e.createQuery();return r.where=c(r.where,t.sqlWhere),r.sqlFormat=o?"standard":null,r.outStatistics=[H(a?null:n,a?"1":o)].filter(Boolean),r.groupByFieldsForStatistics=[n||o,l,i].filter(Boolean),k(r,t.filter),r}function H(e,t){const n="countOF"+(e||"Expr"),l=new a;return l.statisticType="count",l.onStatisticField=t?"1":e,l.outStatisticFieldName=n,l}function J(e,t,n,l=E,i,o,a){const{min:r,max:u,normTotal:s,excludeZerosExpr:c}=t,m=t.intervals||y(r,u,l),f=t.sqlExpr||n;return Z(e,m,f,c,i,o,a).then((e=>({bins:e.map(((e,t)=>({minValue:m[t][0],maxValue:m[t][1],count:"fulfilled"===e.status?e.value:0}))),minValue:r,maxValue:u,normalizationTotal:s})))}function Z(e,t,n,l,i,o,a){const r=[],u=t.length;for(let s=0;s<u;s++){const e=c(l,c(n+" >= "+t[s][0],null!==t[s][1]?n+(s===u-1?" <= ":" < ")+t[s][1]:""));r.push(e)}return Promise.allSettled(r.map((t=>e.queryFeatureCount({whereClause:t,view:i,filter:o,signal:a}))))}export{E as defaultNumBins,S as ensureFeaturesJSON,$ as generateBinParams,Q as getAggregateFieldType,J as getBins,D as getDomainsForFields,P as getFeatureReductionFields,q as getFieldExpr,j as getHistogramFromFeatureSet,V as getMissingFields,T as getMissingFieldsForBinning,B as getPredominantCategoriesFromUVInfos,W as getSQLExpressionForDateOrTimeField,z as getSummaryStatisticsFromFeatureSet,_ as getSummaryStatsQuery,A as getUVQuery,O as getUniqueValuesFromFeatureSet,M as getViewInfoParams,U as msForTimeOnlyFieldSQL,I as msSinceUnixEpochSQL,k as updateQueryWithFeatureFilter};
@@ -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{unique as n}from"../../core/arrayUtils.js";import{createMD5Hash as e}from"../../core/MD5.js";import{isValidNumber as i}from"../../renderers/visualVariables/support/sizeVariableUtils.js";import{getPrimaryVisualVariables as t}from"../popup/support/utils.js";import{getNormalizationType as o}from"./utils.js";const l="cluster_count";function r(n,e){return n.split(`cluster_${e}_`).pop()}function a(n){if(!n)return null;const{field:e,valueExpression:t,normalizationField:l,normalizationType:r,normalizationTotal:a}=n;let u=null;if(t)u=t;else if(e){const n=o({normalizationType:r,normalizationField:l,normalizationTotal:a});if(n){const t=n.toLowerCase();if(u=e.toLowerCase()+",norm:"+t,l)u+=","+l.toLowerCase();else if("percent-of-total"===t){let n=a;i(n)&&0!==n||(n=null),u+=","+n}}}return u}function u(n){return e(n)}function s(n,e){const i=a(n);return`${e}_${null!=i?u(i):n.field}`}function p(n,e){return`cluster_${s(n,e)}`}function f(n,e){const i=e.getField(n);return i?.type}function c(n,e){const i="field"in e?e.field:null,t=i?f(i,n):null;return{field:i,fieldType:null!=t?t:null,valueExpression:"valueExpression"in e?e.valueExpression:null,valueExpressionTitle:"valueExpressionTitle"in e?e.valueExpressionTitle:null,normalizationField:"normalizationField"in e?e.normalizationField:null,normalizationType:"normalizationType"in e?e.normalizationType:null,normalizationTotal:"normalizationTotal"in e?e.normalizationTotal:null}}function m(n,e){const i="rotation"===e.type?e.rotationType:null,t=e.legendOptions?.title,o=e.field,l=o?f(o,n):null;return{field:o,fieldType:null!=l?l:null,rotationType:i,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle||e.valueExpression&&t,normalizationField:"normalizationField"in e?e.normalizationField:null,vvType:e.type}}function v(n){return n.map((n=>`{\n "value": "${String(n.value)}",\n "label": "${T(String(n.label))}"\n }`))}function T(n){return n?n.replaceAll('"','\\"'):""}function d(n,e,i){return`\n var uvInfos = [${v(n).join(", ")}];\n var predominantType = Text($feature["${e}"]);\n var label = "${T(i)}";\n\n for (var i = 0; i < Count(uvInfos); i++) {\n if (uvInfos[i].value == predominantType) {\n label = uvInfos[i].label;\n break;\n }\n }\n\n return label;\n `}function y(n,e){const i=[s(n,e)];return"date"===n.fieldType&&i.push(n.fieldType.toLowerCase()),n.rotationType&&i.push(n.rotationType.toLowerCase()),i.join("_")}function z(n,e){return{statisticHash:y(n,e),attributeInfo:n,statisticType:e}}function x(e,i,o=!0){const l=[],r=c(e,i);"class-breaks"===i.type?l.push(z(r,"avg")):"unique-value"===i.type&&l.push(z(r,"mode"));const a=t(i);for(const n of a){const i=m(e,n);l.push(z(i,"avg"))}return o?n(l,((n,e)=>n.statisticHash===e.statisticHash)):l}export{l as clusterCountField,p as getClusterField,r as getClusterFieldHash,d as getPredominantTypeExpression,c as getRendererAttributeInfo,s as getStatisticId,z as getStatisticInfo,x as getStatisticInfos,m as getVariableAttributeInfo};
5
+ import{unique as n}from"../../core/arrayUtils.js";import{createMD5Hash as e}from"../../core/MD5.js";import{isValidNumber as i}from"../../renderers/visualVariables/support/sizeVariableUtils.js";import{getPrimaryVisualVariables as t}from"../popup/support/utils.js";import{getNormalizationType as o}from"./utils.js";const l="cluster_count";function r(n,e){return n.split(`cluster_${e}_`).pop()}function a(n){if(!n)return null;const{field:e,valueExpression:t,normalizationField:l,normalizationType:r,normalizationTotal:a}=n;let u=null;if(t)u=t;else if(e){const n=o({normalizationType:r,normalizationField:l,normalizationTotal:a});if(n){const t=n.toLowerCase();if(u=e.toLowerCase()+",norm:"+t,l)u+=","+l.toLowerCase();else if("percent-of-total"===t){let n=a;i(n)&&0!==n||(n=null),u+=","+n}}}return u}function u(n){return e(n)}function s(n,e){const i=a(n);return`${e}_${null!=i?u(i):n.field}`}function p(n,e){return`cluster_${s(n,e)}`}function f(n,e){const i=e.getField(n);return i?.type}function c(n,e){const i="field"in e?e.field:null,t=i?f(i,n):null;return{field:i,fieldType:null!=t?t:null,valueExpression:"valueExpression"in e?e.valueExpression:null,valueExpressionTitle:"valueExpressionTitle"in e?e.valueExpressionTitle:null,normalizationField:"normalizationField"in e?e.normalizationField:null,normalizationType:"normalizationType"in e?e.normalizationType:null,normalizationTotal:"normalizationTotal"in e?e.normalizationTotal:null}}function m(n,e){const i="rotation"===e.type?e.rotationType:null,t=e.legendOptions?.title,o=e.field,l=o?f(o,n):null;return{field:o,fieldType:null!=l?l:null,rotationType:i,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle||e.valueExpression&&t,normalizationField:"normalizationField"in e?e.normalizationField:null,vvType:e.type}}function v(n){return n.map((n=>`{\n "value": "${String(n.value)}",\n "label": "${T(String(n.label))}"\n }`))}function T(n){return n?n.replaceAll('"','\\"'):""}function d(n,e,i){return`\n var uvInfos = [${v(n).join(", ")}];\n var predominantType = Text($feature["${e}"]);\n var label = "${T(i)}";\n\n for (var i = 0; i < Count(uvInfos); i++) {\n if (uvInfos[i].value == predominantType) {\n label = uvInfos[i].label;\n break;\n }\n }\n\n return label;\n `}function y(n,e){const i=[s(n,e)];return"date"===n.fieldType&&i.push(n.fieldType.toLowerCase()),n.rotationType&&i.push(n.rotationType.toLowerCase()),i.join("_")}function z(n,e){return{statisticHash:y(n,e),attributeInfo:n,statisticType:e}}function x(e,i,o=!0){const l=[],r=c(e,i);"class-breaks"===i.type?l.push(z(r,"avg")):"unique-value"===i.type&&l.push(z(r,"type"));const a=t(i);for(const n of a){const i=m(e,n);l.push(z(i,"avg"))}return o?n(l,((n,e)=>n.statisticHash===e.statisticHash)):l}export{l as clusterCountField,p as getClusterField,r as getClusterFieldHash,d as getPredominantTypeExpression,c as getRendererAttributeInfo,s as getStatisticId,z as getStatisticInfo,x as getStatisticInfos,m as getVariableAttributeInfo};
@@ -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{loadArcade as e}from"../../support/arcadeOnDemand.js";import{getWellKnownBasemapId as t}from"../../support/basemapUtils.js";const r=",",i={light:["streets","gray","topo","terrain","oceans","osm","gray-vector","streets-vector","topo-vector","streets-relief-vector","streets-navigation-vector","topo-3d","navigation-3d","arcgis-light-gray","arcgis-navigation","arcgis-streets","arcgis-streets-relief","arcgis-topographic","arcgis-oceans","osm-standard","osm-standard-relief","osm-streets","osm-streets-relief","osm-light-gray","arcgis-terrain","arcgis-charted-territory","arcgis-community","arcgis-colored-pencil","arcgis-modern-antique","arcgis-midcentury","arcgis-newspaper","arcgis-hillshade-light"],dark:["satellite","hybrid","dark-gray","dark-gray-vector","streets-night-vector","navigation-dark-3d","arcgis-imagery","arcgis-imagery-standard","arcgis-dark-gray","arcgis-navigation-night","arcgis-streets-night","osm-dark-gray","arcgis-nova","arcgis-hillshade-dark"]},n="percent-of-total",a="field",s={years:365,months:30,days:1,hours:1/24,minutes:1/1440,seconds:1/86400,milliseconds:1/864e5},o=new Set(["integer","small-integer"]);let c=null;async function g(t){const{field:r,field2:i,field3:n,normalizationField:a,valueExpression:s}=t;let o=[];if(s){if(!c){const{arcadeUtils:t}=await e();c=t}o=c.extractFieldNames(s)}return r&&o.push(r),i&&o.push(i),n&&o.push(n),a&&o.push(a),o}function l(e){let t=e.normalizationType;return t||(e.normalizationField?t=a:null!=e.normalizationTotal&&(t=n)),t??void 0}function u(e){return String(e).padStart(2,"0")}function d(e,t,r){let i;if("date"===t||"number"===t){"number"===t&&(e=new Date(e));i=`TIMESTAMP'${r?e.getFullYear():e.getUTCFullYear()}-${u((r?e.getMonth():e.getUTCMonth())+1)}-${u(r?e.getDate():e.getUTCDate())} ${u(r?e.getHours():e.getUTCHours())}:${u(r?e.getMinutes():e.getUTCMinutes())}:${u(r?e.getSeconds():e.getUTCSeconds())}'`}else i=e;return i}function f(e,t,r,i){const{hasQueryEngine:n}=e,a=`(${d(r,m(e,r),n)} - ${d(t,m(e,t),n)})`;let o=s[i],c="/";o<1&&(o=1/o,c="*");return{sqlExpression:1===o?a:`(${a} ${c} ${o})`,sqlWhere:null}}function m(e,t){if(t instanceof Date)return"date";if("number"==typeof t)return"number";if("string"==typeof t){const r=e.getField(t);if("<now>"===t.toLowerCase())return;if(r&&"date"===r.type)return"field"}}function p(e,t=i){for(const r in t)if(t[r].includes(e))return r}function h(e,r,i=!0){let n=null;return e&&("string"==typeof e?r.includes(e)&&(n=e):n=t(e)),i?n||"gray":n}function y(e,t){const r=t&&e.getField(t);return!!r&&o.has(r.type)}function v(e){return`cast(${e} as float)`}export{v as castIntegerFieldToFloat,i as defaultBasemapGroups,r as fieldDelimiter,p as getBasemapGroup,h as getBasemapId,f as getDateDiffSQL,m as getDateType,g as getFieldsList,l as getNormalizationType,y as isIntegerField,s as unitValueInDays};
5
+ import{convertDateFormatToIntlOptions as t,formatDate as e,formatTimestamp as r,formatTimeOnly as i,formatDateOnly as n}from"../../intl/date.js";import{isDateField as s,isDateOnlyField as o,isTimestampOffsetField as a}from"../../layers/support/fieldUtils.js";import{loadArcade as c}from"../../support/arcadeOnDemand.js";import{getWellKnownBasemapId as l}from"../../support/basemapUtils.js";import{getTimeZoneFormattingOptions as g,utc as m}from"../../time/timeZoneUtils.js";const d=",",u={light:["streets","gray","topo","terrain","oceans","osm","gray-vector","streets-vector","topo-vector","streets-relief-vector","streets-navigation-vector","topo-3d","navigation-3d","arcgis-light-gray","arcgis-navigation","arcgis-streets","arcgis-streets-relief","arcgis-topographic","arcgis-oceans","osm-standard","osm-standard-relief","osm-streets","osm-streets-relief","osm-light-gray","arcgis-terrain","arcgis-charted-territory","arcgis-community","arcgis-colored-pencil","arcgis-modern-antique","arcgis-midcentury","arcgis-newspaper","arcgis-hillshade-light"],dark:["satellite","hybrid","dark-gray","dark-gray-vector","streets-night-vector","navigation-dark-3d","arcgis-imagery","arcgis-imagery-standard","arcgis-dark-gray","arcgis-navigation-night","arcgis-streets-night","osm-dark-gray","arcgis-nova","arcgis-hillshade-dark"]},f="percent-of-total",p="field",h={years:365,months:30,days:1,hours:1/24,minutes:1/1440,seconds:1/86400,milliseconds:1/864e5},y=new Set(["integer","small-integer"]);let v=null;const T=["date","date-only","timestamp-offset"];function Z(t){return s(t)||o(t)||a(t)}async function $(t){const{field:e,field2:r,field3:i,normalizationField:n,valueExpression:s}=t;let o=[];if(s){if(!v){const{arcadeUtils:t}=await c();v=t}o=v.extractFieldNames(s)}return e&&o.push(e),r&&o.push(r),i&&o.push(i),n&&o.push(n),o}function U(t){let e=t.normalizationType;return e||(t.normalizationField?e=p:null!=t.normalizationTotal&&(e=f)),e??void 0}function w(t){return String(t).padStart(2,"0")}function k(t,e,r){let i;if("date"===e||"number"===e){"number"===e&&(t=new Date(t));i=`TIMESTAMP'${r?t.getFullYear():t.getUTCFullYear()}-${w((r?t.getMonth():t.getUTCMonth())+1)}-${w(r?t.getDate():t.getUTCDate())} ${w(r?t.getHours():t.getUTCHours())}:${w(r?t.getMinutes():t.getUTCMinutes())}:${w(r?t.getSeconds():t.getUTCSeconds())}'`}else i=t;return i}function C(t,e,r,i){const{hasQueryEngine:n}=t,s=`(${k(r,F(t,r),n)} - ${k(e,F(t,e),n)})`;let o=h[i],a="/";o<1&&(o=1/o,a="*");return{sqlExpression:1===o?s:`(${s} ${a} ${o})`,sqlWhere:null}}function F(t,e){if(e instanceof Date)return"date";if("number"==typeof e)return"number";if("string"==typeof e){const r=t.getField(e);if("<now>"===e.toLowerCase())return;if(s(r))return"field"}}function b(t,e=u){for(const r in e)if(e[r].includes(t))return r}function D(t,e,r=!0){let i=null;return t&&("string"==typeof t?e.includes(t)&&(i=t):i=l(t)),r?i||"gray":i}function M(t,e){const r=e&&t.getField(e);return!!r&&y.has(r.type)}function S(t){return`cast(${t} as float)`}function j(s,o){const{format:a,timeZoneOptions:c,fieldType:l}=o??{};let d,u;switch(c&&({timeZone:d,timeZoneName:u}=g(c.layerTimeZone,c.datesInUnknownTimezone,c.viewTimeZone,t(a||"short-date-short-time"),l)),l){case"date-only":{const r=t(a||"short-date");return"string"==typeof s?n(s,{...r}):e(s,{...r,timeZone:m})}case"time-only":{const r=t(a||"short-time");return"string"==typeof s?i(s,r):e(s,{...r,timeZone:m})}case"timestamp-offset":{const i=a||c?t(a||"short-date-short-time"):void 0,n=i?{...i,timeZone:d,timeZoneName:u}:void 0;return"string"==typeof s?r(s,n):e(s,n)}default:{const r=a||c?t(a||"short-date-short-time"):void 0;return e("string"==typeof s?new Date(s):s,r?{...r,timeZone:d,timeZoneName:u}:void 0)}}}export{S as castIntegerFieldToFloat,T as dateTypes,u as defaultBasemapGroups,d as fieldDelimiter,j as formatAnyDate,b as getBasemapGroup,D as getBasemapId,C as getDateDiffSQL,F as getDateType,$ as getFieldsList,U as getNormalizationType,Z as isAnyDateField,M as isIntegerField,h as unitValueInDays};
@@ -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 a="20231004",e="7ca212dca3952bea39657e4b12d4e9f5da74aed5";export{a as buildDate,e as commitHash};
5
+ const a="20231012",c="d1de50796612a27d9365af45a54fccfbbe422688";export{a as buildDate,c as commitHash};