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

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 (764) hide show
  1. package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
  2. package/arcade/featureset/sources/FeatureLayerMemory.js +1 -1
  3. package/arcade/featureset/sources/FeatureLayerRelated.js +1 -1
  4. package/arcade/featureset/support/FeatureSet.js +1 -1
  5. package/arcade/functions/featuresetbase.js +1 -1
  6. package/arcade/treeAnalysis.js +1 -1
  7. package/assets/esri/core/workers/RemoteClient.js +1 -1
  8. package/assets/esri/core/workers/chunks/020825b9c12f2b6386a7.js +1 -0
  9. package/assets/esri/core/workers/chunks/02d235849ba93541d7ad.js +1 -0
  10. package/assets/esri/core/workers/chunks/0422c5160491fbcf01dc.js +1 -0
  11. package/assets/esri/core/workers/chunks/07adca463da5554e514d.js +1 -0
  12. package/assets/esri/core/workers/chunks/07c1783baf9b19b4876a.js +1 -0
  13. package/assets/esri/core/workers/chunks/08a98e85e86ce560d005.js +1 -0
  14. package/assets/esri/core/workers/chunks/0ea41f142793edb99d3a.js +1 -0
  15. package/assets/esri/core/workers/chunks/10dc578a90e1194c8720.js +1 -0
  16. package/assets/esri/core/workers/chunks/18e0c5bfeb1aa7213dfa.js +1 -0
  17. package/assets/esri/core/workers/chunks/19c9966f74d287750aaa.js +1 -0
  18. package/assets/esri/core/workers/chunks/1a65d9b9f823d1e8b315.js +1 -0
  19. package/assets/esri/core/workers/chunks/1eb5468c7cf653338d53.js +1 -0
  20. package/assets/esri/core/workers/chunks/1f30ea1a598ddd2e5df3.js +1 -0
  21. package/assets/esri/core/workers/chunks/{40c00b352618c7839f7e.js → 1f87f22e00e3218661c6.js} +1 -1
  22. package/assets/esri/core/workers/chunks/1fc3b526e881ada30420.js +1 -0
  23. package/assets/esri/core/workers/chunks/224e79f6c172da444e0a.js +1 -0
  24. package/assets/esri/core/workers/chunks/2304b7456ced997904f6.js +1 -0
  25. package/assets/esri/core/workers/chunks/2d92df1e3ba4f05e0510.js +1 -0
  26. package/assets/esri/core/workers/chunks/30776102fbab294bfe7b.js +1 -0
  27. package/assets/esri/core/workers/chunks/32bd6a343ea49c331e1f.js +1 -0
  28. package/assets/esri/core/workers/chunks/3491f1945d9c06d8b2c7.js +1 -0
  29. package/assets/esri/core/workers/chunks/366cf9bba6989342e447.js +1 -0
  30. package/assets/esri/core/workers/chunks/37edbd9b05bfdb2e645d.js +1 -0
  31. package/assets/esri/core/workers/chunks/3ac9001b19a90faf5573.js +1 -0
  32. package/assets/esri/core/workers/chunks/3c5a112a9b58770a5242.js +1 -0
  33. package/assets/esri/core/workers/chunks/41081c921037e543a22f.js +1 -0
  34. package/assets/esri/core/workers/chunks/41778f8c49febe1f9404.js +1 -0
  35. package/assets/esri/core/workers/chunks/430ec9f5949b31959893.js +1 -0
  36. package/assets/esri/core/workers/chunks/43575b9acf9819f195f9.js +1 -0
  37. package/assets/esri/core/workers/chunks/43f7d9366d06d69e7c50.js +1 -0
  38. package/assets/esri/core/workers/chunks/4564a7885d045a850887.js +1 -0
  39. package/assets/esri/core/workers/chunks/{b98a2191cb997d632438.js → 4672504d6fe649da19f2.js} +1 -1
  40. package/assets/esri/core/workers/chunks/4adf3a8c6b49c381a633.js +1 -0
  41. package/assets/esri/core/workers/chunks/4e813f112a428b4acf0e.js +1 -0
  42. package/assets/esri/core/workers/chunks/5386b166f2e5dc0d9143.js +1 -0
  43. package/assets/esri/core/workers/chunks/562eafa5090827ebb7ec.js +1 -0
  44. package/assets/esri/core/workers/chunks/56a61a8bff08ae273de4.js +1 -0
  45. package/assets/esri/core/workers/chunks/580e7d3cbf6797a50ded.js +1 -0
  46. package/assets/esri/core/workers/chunks/5e8f02da4eae41f57383.js +1 -0
  47. package/assets/esri/core/workers/chunks/6046be598e8c673eeb1f.js +1 -0
  48. package/assets/esri/core/workers/chunks/6334a8a7b671d4042108.js +1 -0
  49. package/assets/esri/core/workers/chunks/{2721aa6b6941b28b9758.js → 63c8bf00120a4e67f5b0.js} +1 -1
  50. package/assets/esri/core/workers/chunks/6747503826bfc94bc6c0.js +1 -0
  51. package/assets/esri/core/workers/chunks/6867ed1860afb7aac536.js +1 -0
  52. package/assets/esri/core/workers/chunks/69c1c850af7ee33258e0.js +1 -0
  53. package/assets/esri/core/workers/chunks/70aa04b09143b7dd2ecb.js +1 -0
  54. package/assets/esri/core/workers/chunks/74951370a341f02d3714.js +1 -0
  55. package/assets/esri/core/workers/chunks/7648f3341b7dff2825c3.js +1 -0
  56. package/assets/esri/core/workers/chunks/768271a12dc7e1781447.js +1 -0
  57. package/assets/esri/core/workers/chunks/{efb17a298363beca5209.js → 7756ed853b4ba54cd081.js} +1 -1
  58. package/assets/esri/core/workers/chunks/{fa6103e3d4e857b0035b.js → 78e2fa121760383b08ec.js} +9 -6
  59. package/assets/esri/core/workers/chunks/7b8377b3a9f78f9d3613.js +1 -0
  60. package/assets/esri/core/workers/chunks/7f3bc7a2de59e485f22f.js +1 -0
  61. package/assets/esri/core/workers/chunks/7f433e25f3892475d5dc.js +1 -0
  62. package/assets/esri/core/workers/chunks/80bf6cf1bef17215bca4.js +1 -0
  63. package/assets/esri/core/workers/chunks/{1a723bb4a341f645e5fe.js → 83b8141f0c80e3448012.js} +1 -1
  64. package/assets/esri/core/workers/chunks/83d063b7ce768e9ab3de.js +1 -0
  65. package/assets/esri/core/workers/chunks/83f7e22a12d90ef93e62.js +1 -0
  66. package/assets/esri/core/workers/chunks/{4cc680fe4c9c39d2f853.js → 8a7fa4e8b0d14da7c9eb.js} +1 -1
  67. package/assets/esri/core/workers/chunks/934c32c49bb9e21482fd.js +1 -0
  68. package/assets/esri/core/workers/chunks/969a82b674eda9f8720f.js +1 -0
  69. package/assets/esri/core/workers/chunks/99fd09dd42b75a932e84.js +1 -0
  70. package/assets/esri/core/workers/chunks/{f0664a24f2c3705747a5.js → 9c77d69a13ec22cdd760.js} +1 -1
  71. package/assets/esri/core/workers/chunks/a1e16c33f1843dbdce26.js +1 -0
  72. package/assets/esri/core/workers/chunks/a360534e89a337871921.js +1 -0
  73. package/assets/esri/core/workers/chunks/a4341ec0fe89b865d849.js +1 -0
  74. package/assets/esri/core/workers/chunks/a50ec5b647a160199cb2.js +1 -0
  75. package/assets/esri/core/workers/chunks/a821fa1870b83fed5d31.js +1 -0
  76. package/assets/esri/core/workers/chunks/a8e4726c1db23324eb54.js +1 -0
  77. package/assets/esri/core/workers/chunks/abcfe3bda6f40318b092.js +1 -0
  78. package/assets/esri/core/workers/chunks/ac3e429d43f80c596ec8.js +1 -0
  79. package/assets/esri/core/workers/chunks/ac53b5479dd229fa4f7d.js +1 -0
  80. package/assets/esri/core/workers/chunks/aeb3efa91165dd3d2493.js.LICENSE.txt +1 -1
  81. package/assets/esri/core/workers/chunks/b03eaba5fa75d6ef834a.js +1 -0
  82. package/assets/esri/core/workers/chunks/b3f5e97b47e896c6008a.js +1 -0
  83. package/assets/esri/core/workers/chunks/b6cc8d7dcc710231fe72.js +1 -0
  84. package/assets/esri/core/workers/chunks/{77923afde29ae1ff10ca.js → b6e86e179f99b5cf8dff.js} +1 -1
  85. package/assets/esri/core/workers/chunks/b7c81a5bbcdd94b8a7f6.js +1 -0
  86. package/assets/esri/core/workers/chunks/b9a726f3bbad6fd4d65a.js +1 -0
  87. package/assets/esri/core/workers/chunks/c3ddf5dbc34f118002df.js +1 -0
  88. package/assets/esri/core/workers/chunks/c416df0668f6c596095f.js +1 -0
  89. package/assets/esri/core/workers/chunks/c447f4bf0e5f012f8f9b.js +1 -0
  90. package/assets/esri/core/workers/chunks/c7bd63103f101c09b1ea.js +1 -0
  91. package/assets/esri/core/workers/chunks/cb4b17f5cf96a9e36781.js +1 -0
  92. package/assets/esri/core/workers/chunks/cbddfcf57f72428a6992.js +1 -0
  93. package/assets/esri/core/workers/chunks/cc86c8c88124d916e1b3.js +1 -0
  94. package/assets/esri/core/workers/chunks/d0119dff8771e749436a.js +1 -0
  95. package/assets/esri/core/workers/chunks/d0f903f2257eb96f7789.js +1 -0
  96. package/assets/esri/core/workers/chunks/d153a8b71111165fc891.js +1 -0
  97. package/assets/esri/core/workers/chunks/{7b3d5f044c96e2c2af11.js → d191267d91a53db42956.js} +1 -1
  98. package/assets/esri/core/workers/chunks/d213024012b1a019bfde.js +1 -0
  99. package/assets/esri/core/workers/chunks/d5fec54e98c8622349a4.js +1 -0
  100. package/assets/esri/core/workers/chunks/d878bb6409df183ea0ce.js +1 -0
  101. package/assets/esri/core/workers/chunks/da124ccd18d2745195fe.js +1 -0
  102. package/assets/esri/core/workers/chunks/dd55151bfac60b0deaac.js +1 -0
  103. package/assets/esri/core/workers/chunks/e06cd10b6f8f363b5131.js +1 -0
  104. package/assets/esri/core/workers/chunks/e5352dc8983d06d4ee0f.js +1 -0
  105. package/assets/esri/core/workers/chunks/e67c4b7ad06d8404895a.js +1 -0
  106. package/assets/esri/core/workers/chunks/e810336a4292ea6076a6.js +1 -0
  107. package/assets/esri/core/workers/chunks/{4c3345ffbe79ee0167fb.js → ea9ae9d2aef01af90896.js} +1 -1
  108. package/assets/esri/core/workers/chunks/ef757269fb3fe0e74ef8.js +1 -0
  109. package/assets/esri/core/workers/chunks/f0d342303fc20e266d27.js +1 -0
  110. package/assets/esri/core/workers/chunks/f73563b23fd8dc6cf2fe.js +1 -0
  111. package/assets/esri/core/workers/chunks/f85107720159b855a469.js +1 -0
  112. package/assets/esri/core/workers/chunks/fbc57985d55b5fbe1e8a.js +1 -0
  113. package/assets/esri/core/workers/chunks/ffa330a19a09679212fb.js +1 -0
  114. package/assets/esri/themes/base/_core.scss +2 -0
  115. package/assets/esri/themes/base/widgets/_BasemapGallery.scss +3 -9
  116. package/assets/esri/themes/base/widgets/_DatePicker.scss +4 -0
  117. package/assets/esri/themes/base/widgets/_Features.scss +1 -1
  118. package/assets/esri/themes/base/widgets/_Legend.scss +1 -1
  119. package/assets/esri/themes/base/widgets/_ScaleRangeSlider.scss +1 -1
  120. package/assets/esri/themes/base/widgets/_TimeZoneLabel.scss +46 -0
  121. package/assets/esri/themes/base/widgets/_Tooltip.scss +1 -1
  122. package/assets/esri/themes/base/widgets/_UtilityNetworkTrace.scss +4 -0
  123. package/assets/esri/themes/dark/main.css +1 -1
  124. package/assets/esri/themes/light/main.css +1 -1
  125. package/assets/esri/themes/light/view.css +1 -1
  126. package/assets/esri/widgets/Editor/t9n/Editor_ar.json +1 -1
  127. package/assets/esri/widgets/Editor/t9n/Editor_bg.json +1 -1
  128. package/assets/esri/widgets/Editor/t9n/Editor_bs.json +1 -1
  129. package/assets/esri/widgets/Editor/t9n/Editor_ca.json +1 -1
  130. package/assets/esri/widgets/Editor/t9n/Editor_cs.json +1 -1
  131. package/assets/esri/widgets/Editor/t9n/Editor_da.json +1 -1
  132. package/assets/esri/widgets/Editor/t9n/Editor_de.json +1 -1
  133. package/assets/esri/widgets/Editor/t9n/Editor_el.json +1 -1
  134. package/assets/esri/widgets/Editor/t9n/Editor_es.json +1 -1
  135. package/assets/esri/widgets/Editor/t9n/Editor_et.json +1 -1
  136. package/assets/esri/widgets/Editor/t9n/Editor_fi.json +1 -1
  137. package/assets/esri/widgets/Editor/t9n/Editor_fr.json +1 -1
  138. package/assets/esri/widgets/Editor/t9n/Editor_he.json +1 -1
  139. package/assets/esri/widgets/Editor/t9n/Editor_hr.json +1 -1
  140. package/assets/esri/widgets/Editor/t9n/Editor_hu.json +1 -1
  141. package/assets/esri/widgets/Editor/t9n/Editor_id.json +1 -1
  142. package/assets/esri/widgets/Editor/t9n/Editor_it.json +1 -1
  143. package/assets/esri/widgets/Editor/t9n/Editor_ja.json +1 -1
  144. package/assets/esri/widgets/Editor/t9n/Editor_ko.json +1 -1
  145. package/assets/esri/widgets/Editor/t9n/Editor_lt.json +1 -1
  146. package/assets/esri/widgets/Editor/t9n/Editor_lv.json +1 -1
  147. package/assets/esri/widgets/Editor/t9n/Editor_nb.json +1 -1
  148. package/assets/esri/widgets/Editor/t9n/Editor_nl.json +1 -1
  149. package/assets/esri/widgets/Editor/t9n/Editor_pl.json +1 -1
  150. package/assets/esri/widgets/Editor/t9n/Editor_pt-BR.json +1 -1
  151. package/assets/esri/widgets/Editor/t9n/Editor_pt-PT.json +1 -1
  152. package/assets/esri/widgets/Editor/t9n/Editor_ro.json +1 -1
  153. package/assets/esri/widgets/Editor/t9n/Editor_ru.json +1 -1
  154. package/assets/esri/widgets/Editor/t9n/Editor_sk.json +1 -1
  155. package/assets/esri/widgets/Editor/t9n/Editor_sl.json +1 -1
  156. package/assets/esri/widgets/Editor/t9n/Editor_sr.json +1 -1
  157. package/assets/esri/widgets/Editor/t9n/Editor_sv.json +1 -1
  158. package/assets/esri/widgets/Editor/t9n/Editor_th.json +1 -1
  159. package/assets/esri/widgets/Editor/t9n/Editor_tr.json +1 -1
  160. package/assets/esri/widgets/Editor/t9n/Editor_uk.json +1 -1
  161. package/assets/esri/widgets/Editor/t9n/Editor_vi.json +1 -1
  162. package/assets/esri/widgets/Editor/t9n/Editor_zh-CN.json +1 -1
  163. package/assets/esri/widgets/Editor/t9n/Editor_zh-HK.json +1 -1
  164. package/assets/esri/widgets/Editor/t9n/Editor_zh-TW.json +1 -1
  165. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ar.json +1 -1
  166. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_bg.json +1 -1
  167. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_bs.json +1 -1
  168. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ca.json +1 -1
  169. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_cs.json +1 -1
  170. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_da.json +1 -1
  171. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_de.json +1 -1
  172. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_el.json +1 -1
  173. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_es.json +1 -1
  174. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_et.json +1 -1
  175. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_fi.json +1 -1
  176. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_fr.json +1 -1
  177. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_he.json +1 -1
  178. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_hr.json +1 -1
  179. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_hu.json +1 -1
  180. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_id.json +1 -1
  181. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_it.json +1 -1
  182. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ja.json +1 -1
  183. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ko.json +1 -1
  184. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_lt.json +1 -1
  185. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_lv.json +1 -1
  186. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_nb.json +1 -1
  187. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_nl.json +1 -1
  188. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pl.json +1 -1
  189. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pt-BR.json +1 -1
  190. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_pt-PT.json +1 -1
  191. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ro.json +1 -1
  192. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_ru.json +1 -1
  193. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sk.json +1 -1
  194. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sl.json +1 -1
  195. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sr.json +1 -1
  196. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_sv.json +1 -1
  197. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_th.json +1 -1
  198. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_tr.json +1 -1
  199. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_uk.json +1 -1
  200. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_vi.json +1 -1
  201. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-CN.json +1 -1
  202. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-HK.json +1 -1
  203. package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_zh-TW.json +1 -1
  204. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ar.json +1 -1
  205. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bg.json +1 -1
  206. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bs.json +1 -1
  207. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ca.json +1 -1
  208. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_cs.json +1 -1
  209. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_da.json +1 -1
  210. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_de.json +1 -1
  211. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_el.json +1 -1
  212. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_es.json +1 -1
  213. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_et.json +1 -1
  214. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fi.json +1 -1
  215. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fr.json +1 -1
  216. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_he.json +1 -1
  217. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hr.json +1 -1
  218. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hu.json +1 -1
  219. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_id.json +1 -1
  220. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_it.json +1 -1
  221. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ja.json +1 -1
  222. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ko.json +1 -1
  223. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lt.json +1 -1
  224. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lv.json +1 -1
  225. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nb.json +1 -1
  226. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nl.json +1 -1
  227. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pl.json +1 -1
  228. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-BR.json +1 -1
  229. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-PT.json +1 -1
  230. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ro.json +1 -1
  231. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ru.json +1 -1
  232. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sk.json +1 -1
  233. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sl.json +1 -1
  234. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sr.json +1 -1
  235. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sv.json +1 -1
  236. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_th.json +1 -1
  237. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_tr.json +1 -1
  238. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_uk.json +1 -1
  239. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_vi.json +1 -1
  240. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-CN.json +1 -1
  241. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-HK.json +1 -1
  242. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-TW.json +1 -1
  243. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ar.json +1 -1
  244. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_bg.json +1 -1
  245. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_bs.json +1 -1
  246. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ca.json +1 -1
  247. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_cs.json +1 -1
  248. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_da.json +1 -1
  249. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_de.json +1 -1
  250. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_el.json +1 -1
  251. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_es.json +1 -1
  252. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_et.json +1 -1
  253. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_fi.json +1 -1
  254. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_fr.json +1 -1
  255. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_he.json +1 -1
  256. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_hr.json +1 -1
  257. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_hu.json +1 -1
  258. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_id.json +1 -1
  259. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_it.json +1 -1
  260. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ja.json +1 -1
  261. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ko.json +1 -1
  262. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_lt.json +1 -1
  263. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_lv.json +1 -1
  264. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_nb.json +1 -1
  265. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_nl.json +1 -1
  266. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_pl.json +1 -1
  267. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_pt-BR.json +1 -1
  268. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_pt-PT.json +1 -1
  269. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ro.json +1 -1
  270. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_ru.json +1 -1
  271. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sk.json +1 -1
  272. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sl.json +1 -1
  273. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sr.json +1 -1
  274. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_sv.json +1 -1
  275. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_th.json +1 -1
  276. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_tr.json +1 -1
  277. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_uk.json +1 -1
  278. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_vi.json +1 -1
  279. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_zh-CN.json +1 -1
  280. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_zh-HK.json +1 -1
  281. package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_zh-TW.json +1 -1
  282. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ar.json +1 -1
  283. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_bg.json +1 -1
  284. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_bs.json +1 -1
  285. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ca.json +1 -1
  286. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_cs.json +1 -1
  287. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_da.json +1 -1
  288. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_de.json +1 -1
  289. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_el.json +1 -1
  290. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_es.json +1 -1
  291. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_et.json +1 -1
  292. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_fi.json +1 -1
  293. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_fr.json +1 -1
  294. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_he.json +1 -1
  295. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_hr.json +1 -1
  296. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_hu.json +1 -1
  297. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_id.json +1 -1
  298. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_it.json +1 -1
  299. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ja.json +1 -1
  300. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ko.json +1 -1
  301. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_lt.json +1 -1
  302. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_lv.json +1 -1
  303. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_nb.json +1 -1
  304. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_nl.json +1 -1
  305. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_pl.json +1 -1
  306. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_pt-BR.json +1 -1
  307. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_pt-PT.json +1 -1
  308. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ro.json +1 -1
  309. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_ru.json +1 -1
  310. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sk.json +1 -1
  311. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sl.json +1 -1
  312. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sr.json +1 -1
  313. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_sv.json +1 -1
  314. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_th.json +1 -1
  315. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_tr.json +1 -1
  316. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_uk.json +1 -1
  317. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_vi.json +1 -1
  318. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_zh-CN.json +1 -1
  319. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_zh-HK.json +1 -1
  320. package/assets/esri/widgets/TimeZoneLabel/t9n/TimeZoneLabel_zh-TW.json +1 -1
  321. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ar.json +1 -1
  322. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_bg.json +1 -1
  323. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_bs.json +1 -1
  324. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ca.json +1 -1
  325. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_cs.json +1 -1
  326. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_da.json +1 -1
  327. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_de.json +1 -1
  328. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_el.json +1 -1
  329. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_es.json +1 -1
  330. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_et.json +1 -1
  331. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_fi.json +1 -1
  332. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_fr.json +1 -1
  333. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_he.json +1 -1
  334. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_hr.json +1 -1
  335. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_hu.json +1 -1
  336. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_id.json +1 -1
  337. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_it.json +1 -1
  338. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ja.json +1 -1
  339. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ko.json +1 -1
  340. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_lt.json +1 -1
  341. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_lv.json +1 -1
  342. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_nb.json +1 -1
  343. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_nl.json +1 -1
  344. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pl.json +1 -1
  345. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pt-BR.json +1 -1
  346. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pt-PT.json +1 -1
  347. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ro.json +1 -1
  348. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ru.json +1 -1
  349. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sk.json +1 -1
  350. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sl.json +1 -1
  351. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sr.json +1 -1
  352. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sv.json +1 -1
  353. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_th.json +1 -1
  354. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_tr.json +1 -1
  355. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_uk.json +1 -1
  356. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_vi.json +1 -1
  357. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-CN.json +1 -1
  358. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-HK.json +1 -1
  359. package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-TW.json +1 -1
  360. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ar.json +1 -1
  361. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_bg.json +1 -1
  362. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_bs.json +1 -1
  363. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ca.json +1 -1
  364. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_cs.json +1 -1
  365. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_da.json +1 -1
  366. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_de.json +1 -1
  367. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_el.json +1 -1
  368. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_es.json +1 -1
  369. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_et.json +1 -1
  370. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fi.json +1 -1
  371. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fr.json +1 -1
  372. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_he.json +1 -1
  373. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_hr.json +1 -1
  374. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_hu.json +1 -1
  375. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_id.json +1 -1
  376. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_it.json +1 -1
  377. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ja.json +1 -1
  378. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ko.json +1 -1
  379. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lt.json +1 -1
  380. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lv.json +1 -1
  381. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_nb.json +1 -1
  382. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_nl.json +1 -1
  383. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pl.json +1 -1
  384. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pt-BR.json +1 -1
  385. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pt-PT.json +1 -1
  386. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ro.json +1 -1
  387. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ru.json +1 -1
  388. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sk.json +1 -1
  389. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sl.json +1 -1
  390. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sr.json +1 -1
  391. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sv.json +1 -1
  392. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_th.json +1 -1
  393. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_tr.json +1 -1
  394. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_uk.json +1 -1
  395. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_vi.json +1 -1
  396. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-CN.json +1 -1
  397. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-HK.json +1 -1
  398. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-TW.json +1 -1
  399. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ar.json +1 -1
  400. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_bg.json +1 -1
  401. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_bs.json +1 -1
  402. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ca.json +1 -1
  403. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_cs.json +1 -1
  404. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_da.json +1 -1
  405. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_de.json +1 -1
  406. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_el.json +1 -1
  407. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_es.json +1 -1
  408. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_et.json +1 -1
  409. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_fi.json +1 -1
  410. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_fr.json +1 -1
  411. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_he.json +1 -1
  412. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_hr.json +1 -1
  413. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_hu.json +1 -1
  414. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_id.json +1 -1
  415. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_it.json +1 -1
  416. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ja.json +1 -1
  417. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ko.json +1 -1
  418. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_lt.json +1 -1
  419. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_lv.json +1 -1
  420. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_nb.json +1 -1
  421. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_nl.json +1 -1
  422. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pl.json +1 -1
  423. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pt-BR.json +1 -1
  424. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_pt-PT.json +1 -1
  425. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ro.json +1 -1
  426. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_ru.json +1 -1
  427. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sk.json +1 -1
  428. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sl.json +1 -1
  429. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sr.json +1 -1
  430. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_sv.json +1 -1
  431. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_th.json +1 -1
  432. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_tr.json +1 -1
  433. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_uk.json +1 -1
  434. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_vi.json +1 -1
  435. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-CN.json +1 -1
  436. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-HK.json +1 -1
  437. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_zh-TW.json +1 -1
  438. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ar.json +1 -1
  439. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_bg.json +1 -1
  440. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_bs.json +1 -1
  441. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ca.json +1 -1
  442. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_cs.json +1 -1
  443. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_da.json +1 -1
  444. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_de.json +1 -1
  445. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_el.json +1 -1
  446. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_es.json +1 -1
  447. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_et.json +1 -1
  448. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_fi.json +1 -1
  449. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_fr.json +1 -1
  450. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_he.json +1 -1
  451. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_hr.json +1 -1
  452. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_hu.json +1 -1
  453. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_id.json +1 -1
  454. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_it.json +1 -1
  455. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ja.json +1 -1
  456. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ko.json +1 -1
  457. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_lt.json +1 -1
  458. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_lv.json +1 -1
  459. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_nb.json +1 -1
  460. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_nl.json +1 -1
  461. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_pl.json +1 -1
  462. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_pt-BR.json +1 -1
  463. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_pt-PT.json +1 -1
  464. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ro.json +1 -1
  465. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_ru.json +1 -1
  466. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sk.json +1 -1
  467. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sl.json +1 -1
  468. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sr.json +1 -1
  469. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_sv.json +1 -1
  470. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_th.json +1 -1
  471. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_tr.json +1 -1
  472. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_uk.json +1 -1
  473. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_vi.json +1 -1
  474. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_zh-CN.json +1 -1
  475. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_zh-HK.json +1 -1
  476. package/assets/esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls_zh-TW.json +1 -1
  477. package/chunks/HighlightApply.glsl.js +6 -7
  478. package/chunks/HighlightBlur.glsl.js +5 -6
  479. package/chunks/HighlightDownsample.glsl.js +8 -8
  480. package/chunks/languageUtils.js +1 -1
  481. package/core/MemCache.js +1 -1
  482. package/core/MemCachePool.js +1 -1
  483. package/core/colorUtils.js +1 -1
  484. package/geometry/GeometryCursor.js +1 -1
  485. package/geometry/support/meshUtils/georeference.js +1 -1
  486. package/interfaces.d.ts +1546 -264
  487. package/intl/date.js +1 -1
  488. package/kernel.js +1 -1
  489. package/layers/GroupLayer.js +1 -1
  490. package/layers/MapNotesLayer.js +1 -1
  491. package/layers/SceneLayer.js +1 -1
  492. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  493. package/layers/graphics/data/AttributesBuilder.js +1 -1
  494. package/layers/graphics/data/QueryEngineResult.js +1 -1
  495. package/layers/graphics/data/queryValidationUtils.js +1 -1
  496. package/layers/graphics/editingSupport.js +1 -1
  497. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  498. package/layers/graphics/sources/csv/csv.js +1 -1
  499. package/layers/graphics/sources/geojson/GeoJSONSourceWorker.js +1 -1
  500. package/layers/graphics/sources/support/MemorySourceWorker.js +1 -1
  501. package/layers/graphics/sources/support/sourceUtils.js +1 -1
  502. package/layers/mixins/ArcGISMapService.js +1 -1
  503. package/layers/ogc/wfsUtils.js +1 -1
  504. package/layers/save/groupLayerUtils.js +1 -1
  505. package/layers/save/utils.js +1 -1
  506. package/layers/support/Field.js +1 -1
  507. package/layers/support/FieldsIndex.js +1 -1
  508. package/layers/support/ImageElement.js +1 -1
  509. package/layers/support/LayerContingentValuesCache.js +1 -1
  510. package/layers/support/Sublayer.js +1 -1
  511. package/layers/support/Subtype.d.ts +4 -0
  512. package/layers/support/Subtype.js +1 -1
  513. package/layers/support/fieldProperties.js +1 -1
  514. package/layers/support/fieldUtils.js +1 -1
  515. package/layers/support/imageryRendererUtils.js +1 -1
  516. package/layers/support/labelFormatUtils.js +1 -1
  517. package/networks/Network.js +1 -1
  518. package/package.json +2 -2
  519. package/portal/support/jsonContext.js +1 -1
  520. package/portal/support/layersLoader.js +1 -1
  521. package/renderers/UniqueValueRenderer.js +1 -1
  522. package/renderers/support/utils.js +1 -1
  523. package/rest/featureService/FeatureService.d.ts +4 -0
  524. package/rest/featureService/FeatureService.js +1 -1
  525. package/rest/featureService/utils.d.ts +4 -0
  526. package/smartMapping/labels/clusters.js +1 -1
  527. package/smartMapping/popup/support/clusterUtils.js +1 -1
  528. package/smartMapping/renderers/color.js +1 -1
  529. package/smartMapping/renderers/opacity.js +1 -1
  530. package/smartMapping/renderers/size.js +1 -1
  531. package/smartMapping/renderers/support/utils.js +1 -1
  532. package/smartMapping/renderers/type.js +1 -1
  533. package/smartMapping/renderers/univariateColorSize.js +1 -1
  534. package/smartMapping/statistics/histogram.js +1 -1
  535. package/smartMapping/statistics/summaryStatistics.js +1 -1
  536. package/smartMapping/statistics/support/statsWorker.js +1 -1
  537. package/smartMapping/statistics/support/utils.js +1 -1
  538. package/smartMapping/support/adapters/FeatureLayerAdapter.js +1 -1
  539. package/smartMapping/support/adapters/FeatureLayerBinningAdapter.js +1 -1
  540. package/smartMapping/support/adapters/InMemoryLayerAdapter.js +1 -1
  541. package/smartMapping/support/adapters/OGCFeatureLayerAdapter.js +1 -1
  542. package/smartMapping/support/adapters/SceneLayerAdapter.js +1 -1
  543. package/smartMapping/support/adapters/StreamLayerAdapter.js +1 -1
  544. package/smartMapping/support/adapters/support/utils.js +1 -1
  545. package/smartMapping/support/clusterUtils.js +1 -1
  546. package/smartMapping/support/utils.js +1 -1
  547. package/support/basemapUtils.js +1 -1
  548. package/support/revision.js +1 -1
  549. package/symbols/cim/CIMSymbolHelper.js +1 -1
  550. package/symbols/cim/effects/EffectDashes.js +1 -1
  551. package/symbols/support/previewCIMSymbol.js +1 -1
  552. package/time/timeZoneUtils.js +1 -1
  553. package/versionManagement/VersionManagementService.d.ts +4 -0
  554. package/versionManagement/VersionManagementService.js +1 -1
  555. package/views/2d/engine/vectorTiles/RenderBucket.js +1 -1
  556. package/views/2d/engine/vectorTiles/VTLPainter3D.js +1 -1
  557. package/views/2d/engine/webgl/Overlay.js +1 -1
  558. package/views/2d/input/handlers/KeyPan.js +1 -1
  559. package/views/2d/interactive/editingTools/manipulations/DragManipulation.js +1 -1
  560. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  561. package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
  562. package/views/2d/viewpointUtils.js +1 -1
  563. package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementVisualization.js +1 -1
  564. package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementVisualization.js +1 -1
  565. package/views/3d/interactive/editingTools/transformGraphic/ExtentTransformTool.js +1 -1
  566. package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
  567. package/views/3d/interactive/visualElements/LineVisualElement.js +1 -1
  568. package/views/3d/layers/I3SMeshView3D.js +1 -1
  569. package/views/3d/layers/MediaLayerView3D.js +1 -1
  570. package/views/3d/layers/SceneLayerWorker.js +1 -1
  571. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  572. package/views/3d/layers/graphics/defaultSymbolComplexity.js +1 -1
  573. package/views/3d/layers/graphics/elevationAlignPointsInFeatures.js +1 -1
  574. package/views/3d/layers/i3s/I3SClientNodeLoader.js +1 -1
  575. package/views/3d/layers/i3s/I3SOverrides.js +1 -1
  576. package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
  577. package/views/3d/support/MemoryController.js +1 -1
  578. package/views/3d/support/PBFDecoder.js +1 -1
  579. package/views/3d/support/ResourceController.js +1 -1
  580. package/views/3d/support/buffer/InterleavedLayout.js +1 -1
  581. package/views/3d/terrain/OverlayFramebufferObject.js +1 -1
  582. package/views/3d/terrain/PlanarPatch.js +1 -1
  583. package/views/3d/terrain/SphericalPatch.js +1 -1
  584. package/views/3d/terrain/TerrainSurface.js +1 -1
  585. package/views/3d/terrain/Tile.js +1 -1
  586. package/views/3d/terrain/TileRenderer.js +1 -1
  587. package/views/3d/terrain/TileTexture.js +1 -1
  588. package/views/3d/webgl-engine/core/FBOCache.js +1 -1
  589. package/views/3d/webgl-engine/core/FBOPool.js +5 -0
  590. package/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js +9 -6
  591. package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js +1 -1
  592. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  593. package/views/3d/webgl-engine/effects/highlight/HighlightPassParameters.js +1 -1
  594. package/views/3d/webgl-engine/effects/ssao/SSAO.js +1 -1
  595. package/views/3d/webgl-engine/lib/Camera.js +1 -1
  596. package/views/3d/webgl-engine/lib/OffscreenRendering.js +1 -1
  597. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  598. package/views/3d/webgl-engine/lib/TextRenderer.js +1 -1
  599. package/views/3d/webgl-engine/lib/Texture.js +1 -1
  600. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  601. package/views/3d/webgl-engine/lib/textureUtils.js +1 -1
  602. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  603. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  604. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  605. package/views/3d/webgl-engine/parts/ScreenshotManager.js +1 -1
  606. package/views/3d/webgl-engine/shaders/HighlightApply.glsl.js +1 -1
  607. package/views/3d/webgl-engine/shaders/HighlightBlur.glsl.js +1 -1
  608. package/views/3d/webgl-engine/shaders/HighlightDownsample.glsl.js +1 -1
  609. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +1 -1
  610. package/views/draw/DrawOperation.js +1 -1
  611. package/views/draw/support/Reshape.js +1 -1
  612. package/views/interactive/SegmentLabels.js +1 -1
  613. package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
  614. package/views/interactive/snapping/featureSources/FeatureCollectionSnappingSource.js +1 -1
  615. package/views/interactive/snapping/featureSources/GraphicsSnappingSource.js +1 -1
  616. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js +1 -1
  617. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorkerHandle.js +1 -1
  618. package/views/interactive/snapping/featureSources/snappingCandidateElevationAlignment.js +1 -1
  619. package/views/overlay/TextOverlayItem.js +1 -1
  620. package/views/webgl/VertexArrayObject.js +1 -1
  621. package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
  622. package/widgets/BasemapGallery.js +1 -1
  623. package/widgets/DirectionalPad.js +1 -1
  624. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
  625. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  626. package/widgets/Editor/CreateFeaturesWorkflowData.js +1 -1
  627. package/widgets/Editor/EditorViewModel.js +1 -1
  628. package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
  629. package/widgets/Editor/UpdateRecordWorkflow.js +1 -1
  630. package/widgets/Editor/UpdateWorkflow.js +1 -1
  631. package/widgets/Editor/workflowUtils.js +1 -1
  632. package/widgets/Editor.js +1 -1
  633. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  634. package/widgets/Feature/FeatureViewModel.js +1 -1
  635. package/widgets/Feature/support/featureUtils.js +1 -1
  636. package/widgets/FeatureForm/FieldInput.js +1 -1
  637. package/widgets/FeatureForm/RelationshipInput.js +1 -1
  638. package/widgets/FeatureForm/featureFormUtils.js +1 -1
  639. package/widgets/FeatureForm.js +1 -1
  640. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  641. package/widgets/FeatureTable/FieldColumn.js +1 -1
  642. package/widgets/Features/FeaturesViewModel.js +1 -1
  643. package/widgets/Features/css.js +1 -1
  644. package/widgets/Features.js +1 -1
  645. package/widgets/Legend/LegendViewModel.js +1 -1
  646. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  647. package/widgets/Legend/support/utils.js +1 -1
  648. package/widgets/LineOfSight.js +1 -1
  649. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  650. package/widgets/OrientedImageryViewer.d.ts +4 -0
  651. package/widgets/OrientedImageryViewer.js +1 -1
  652. package/widgets/Popup/actionUtils.js +1 -1
  653. package/widgets/ScaleRangeSlider.js +1 -1
  654. package/widgets/TimeSlider.js +1 -1
  655. package/widgets/TimeZoneLabel/TimeZoneLabelViewModel.js +5 -0
  656. package/widgets/TimeZoneLabel/css.js +5 -0
  657. package/widgets/TimeZoneLabel.d.ts +4 -0
  658. package/widgets/TimeZoneLabel.js +5 -0
  659. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  660. package/widgets/UtilityNetworkTrace/support/ResultAreaHandler.js +1 -1
  661. package/widgets/UtilityNetworkTrace.js +1 -1
  662. package/widgets/UtilityNetworkValidateTopology/UtilityNetworkValidateTopologyViewModel.js +1 -1
  663. package/widgets/support/SnappingControls/SnappingControlsViewModel.js +1 -1
  664. package/assets/esri/core/workers/chunks/0036b6df93a17e57e3b9.js +0 -1
  665. package/assets/esri/core/workers/chunks/089e59445bd0b1131ffb.js +0 -1
  666. package/assets/esri/core/workers/chunks/09886c56427c4b3f18b5.js +0 -1
  667. package/assets/esri/core/workers/chunks/0b539dacc5c72399ab32.js +0 -1
  668. package/assets/esri/core/workers/chunks/0bb57b54897fb4381b46.js +0 -1
  669. package/assets/esri/core/workers/chunks/0d77c9c97301a4ee4167.js +0 -1
  670. package/assets/esri/core/workers/chunks/0d8ca51043c7784aed96.js +0 -1
  671. package/assets/esri/core/workers/chunks/121a9e148509f2fe2210.js +0 -1
  672. package/assets/esri/core/workers/chunks/1461910bd37aea28948b.js +0 -1
  673. package/assets/esri/core/workers/chunks/1586929658af88f6f961.js +0 -1
  674. package/assets/esri/core/workers/chunks/16d45f439b89da3ec835.js +0 -1
  675. package/assets/esri/core/workers/chunks/1ef3533abdd937ae2794.js +0 -1
  676. package/assets/esri/core/workers/chunks/24c504585da8e44f956f.js +0 -1
  677. package/assets/esri/core/workers/chunks/24ff267cf253feac22de.js +0 -1
  678. package/assets/esri/core/workers/chunks/2561c2bd5a0826dedcb1.js +0 -1
  679. package/assets/esri/core/workers/chunks/2832161454babb40614b.js +0 -1
  680. package/assets/esri/core/workers/chunks/29cab345819ec02ed60a.js +0 -1
  681. package/assets/esri/core/workers/chunks/2f8e71dac98135bbc3e6.js +0 -1
  682. package/assets/esri/core/workers/chunks/369f2ef414498c17a05a.js +0 -1
  683. package/assets/esri/core/workers/chunks/4108445c4a653772c5ee.js +0 -1
  684. package/assets/esri/core/workers/chunks/432a009e756643f59cb4.js +0 -1
  685. package/assets/esri/core/workers/chunks/435f04e3964b1c6d4880.js +0 -1
  686. package/assets/esri/core/workers/chunks/44a3d01b7daa46584ed9.js +0 -1
  687. package/assets/esri/core/workers/chunks/44b870cb53ba68b17c32.js +0 -1
  688. package/assets/esri/core/workers/chunks/4736188659a62488c777.js +0 -1
  689. package/assets/esri/core/workers/chunks/4763831c8815fed636f7.js +0 -1
  690. package/assets/esri/core/workers/chunks/4781e2011a32d7724889.js +0 -1
  691. package/assets/esri/core/workers/chunks/4d81aa50d90f5701a343.js +0 -1
  692. package/assets/esri/core/workers/chunks/4e0bf30da4281070e453.js +0 -1
  693. package/assets/esri/core/workers/chunks/4e60ac00b15b34a3b5f5.js +0 -1
  694. package/assets/esri/core/workers/chunks/4e6bf1efe3b0b474cbb4.js +0 -1
  695. package/assets/esri/core/workers/chunks/505132c47dbdf5fdeacc.js +0 -1
  696. package/assets/esri/core/workers/chunks/526ae87737777154c3f3.js +0 -1
  697. package/assets/esri/core/workers/chunks/53859d0bd8bb14af2d4d.js +0 -1
  698. package/assets/esri/core/workers/chunks/593d7f17090b74945345.js +0 -1
  699. package/assets/esri/core/workers/chunks/5a3ccc0a19ac8fa9e524.js +0 -1
  700. package/assets/esri/core/workers/chunks/5baae5acd184e87d5dc4.js +0 -1
  701. package/assets/esri/core/workers/chunks/5bdd2a3422fe52aa2c65.js +0 -1
  702. package/assets/esri/core/workers/chunks/5e907ec0ee1565b5fbbc.js +0 -1
  703. package/assets/esri/core/workers/chunks/66ba749ab0a631bbfdec.js +0 -1
  704. package/assets/esri/core/workers/chunks/69da907a92901f0fb391.js +0 -1
  705. package/assets/esri/core/workers/chunks/6b14d89d689a21014aec.js +0 -1
  706. package/assets/esri/core/workers/chunks/6b7b5544ed1f9a84623f.js +0 -1
  707. package/assets/esri/core/workers/chunks/6ce986f4213df8a2d934.js +0 -1
  708. package/assets/esri/core/workers/chunks/785d9a9a933314551b10.js +0 -1
  709. package/assets/esri/core/workers/chunks/7f6840c53a456524b74c.js +0 -1
  710. package/assets/esri/core/workers/chunks/84870178173951ad6c2b.js +0 -1
  711. package/assets/esri/core/workers/chunks/8634d6a62f4de973e39b.js +0 -1
  712. package/assets/esri/core/workers/chunks/88d43db03cc11cbffa68.js +0 -1
  713. package/assets/esri/core/workers/chunks/902b672a3475ec83b58b.js +0 -1
  714. package/assets/esri/core/workers/chunks/943ea851c1b07af91172.js +0 -1
  715. package/assets/esri/core/workers/chunks/9a5e3b0cc8536f79c377.js +0 -1
  716. package/assets/esri/core/workers/chunks/9f8207c82a17508a87a8.js +0 -1
  717. package/assets/esri/core/workers/chunks/a01ffe03b1465c21b9e6.js +0 -1
  718. package/assets/esri/core/workers/chunks/a298c9031962951e55a9.js +0 -1
  719. package/assets/esri/core/workers/chunks/a877a4826cd6a46ec99b.js +0 -1
  720. package/assets/esri/core/workers/chunks/a9a0194120ec65a00f6d.js +0 -1
  721. package/assets/esri/core/workers/chunks/aa453ae526a233cedf0c.js +0 -1
  722. package/assets/esri/core/workers/chunks/ab5ffcf0db724d40f714.js +0 -1
  723. package/assets/esri/core/workers/chunks/ad38e456a7cee940a165.js +0 -1
  724. package/assets/esri/core/workers/chunks/ae3ea5fa813aec0db5e1.js +0 -1
  725. package/assets/esri/core/workers/chunks/ae59e10b225f08f38487.js +0 -1
  726. package/assets/esri/core/workers/chunks/b030cf4b00e42337dc89.js +0 -1
  727. package/assets/esri/core/workers/chunks/b0526633a93ef69ec47b.js +0 -1
  728. package/assets/esri/core/workers/chunks/b0d6e6e489aaa331861c.js +0 -1
  729. package/assets/esri/core/workers/chunks/b0ddb503463328531d8f.js +0 -1
  730. package/assets/esri/core/workers/chunks/b1a8024bf8cdd0cd3884.js +0 -1
  731. package/assets/esri/core/workers/chunks/b3243695e0edfcbca276.js +0 -1
  732. package/assets/esri/core/workers/chunks/be57692d4b9ff6cd4c02.js +0 -1
  733. package/assets/esri/core/workers/chunks/c0061d993e1ede22b1dc.js +0 -1
  734. package/assets/esri/core/workers/chunks/c260ad3434bb00ba64a7.js +0 -1
  735. package/assets/esri/core/workers/chunks/c2be3b9aa28e454cf931.js +0 -1
  736. package/assets/esri/core/workers/chunks/c459c8d8630eb4b955b1.js +0 -1
  737. package/assets/esri/core/workers/chunks/c4df42fe859a9115a6e4.js +0 -1
  738. package/assets/esri/core/workers/chunks/c5acddea13fd01912e79.js +0 -1
  739. package/assets/esri/core/workers/chunks/c607fe4df3ca054f9aa8.js +0 -1
  740. package/assets/esri/core/workers/chunks/ca023e409bb7de9a69ab.js +0 -1
  741. package/assets/esri/core/workers/chunks/ca85e88dad30b5f2956b.js +0 -1
  742. package/assets/esri/core/workers/chunks/ce3bb546a729f0ccf696.js +0 -1
  743. package/assets/esri/core/workers/chunks/cfd63bd57eea2caa4bcb.js +0 -1
  744. package/assets/esri/core/workers/chunks/d6ded127949160103f69.js +0 -1
  745. package/assets/esri/core/workers/chunks/d8c696da42f8f8919b83.js +0 -1
  746. package/assets/esri/core/workers/chunks/d95eed98316e59f8f35d.js +0 -1
  747. package/assets/esri/core/workers/chunks/e0b49c5eb5427656e835.js +0 -1
  748. package/assets/esri/core/workers/chunks/e52b9e423c0ba4134309.js +0 -1
  749. package/assets/esri/core/workers/chunks/e52d5a48e83d8df36f92.js +0 -1
  750. package/assets/esri/core/workers/chunks/e53df0f018a82e3a35bd.js +0 -1
  751. package/assets/esri/core/workers/chunks/ea953f5a0a975f7bd7b9.js +0 -1
  752. package/assets/esri/core/workers/chunks/eb4bfafe821daeb4bb6e.js +0 -1
  753. package/assets/esri/core/workers/chunks/f183a4b52095e4c498b4.js +0 -1
  754. package/assets/esri/core/workers/chunks/f221b9c6ae6c7eb4ca01.js +0 -1
  755. package/assets/esri/core/workers/chunks/f57100e3dfc7f087c3ad.js +0 -1
  756. package/assets/esri/core/workers/chunks/f5fd2ee5878c63777c51.js +0 -1
  757. package/assets/esri/core/workers/chunks/f6b7036114b1d754fdd9.js +0 -1
  758. package/assets/esri/core/workers/chunks/f6c0680c535c5a3c73ee.js +0 -1
  759. package/assets/esri/core/workers/chunks/f72a5af2a7ca1536f10a.js +0 -1
  760. package/assets/esri/core/workers/chunks/f99deed4120f605b6cd6.js +0 -1
  761. package/assets/esri/core/workers/chunks/fac3e57784d7f37053af.js +0 -1
  762. package/layers/graphics/sources/support/QueryEngineBuildLayer.js +0 -5
  763. package/widgets/DirectionalPad/DirectionalPadViewModel.d.ts +0 -4
  764. package/widgets/DirectionalPad.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{unique as e,isSome as l}from"../../core/arrayUtils.js";import t from"../../core/Logger.js";import{getOrCreateMapValue as i}from"../../core/MapUtils.js";import{convertDateFormatToIntlOptions as o,formatDate as a}from"../../intl/date.js";import{format as n,round as s}from"./numberUtils.js";import r from"../visualVariables/support/ColorStop.js";import{getColorFromSymbol as u}from"../../symbols/support/utils.js";import{getRampStops as f}from"../../widgets/Legend/support/colorRampUtils.js";import{getHeatmapRampStops as d}from"../../widgets/Legend/support/heatmapRampUtils.js";const p=t.getLogger("esri.renderers.support.utils"),c={lte:"<=",gte:">=",lt:"<",gt:">",pct:"%",ld:"–"},m={millisecond:0,second:1,minute:2,hour:3,day:4,month:5,year:6},y={millisecond:"long-month-day-year-long-time",second:"long-month-day-year-long-time",minute:"long-month-day-year-short-time",hour:"long-month-day-year-short-time",day:"long-month-day-year",month:"long-month-day-year",year:"year"},g=o("short-date");async function h(e,l,t){i(e,l,(()=>[])).push(...t)}async function b(l){const t=new Map;if(!l)return t;if("visualVariables"in l&&l.visualVariables){const e=l.visualVariables.filter((e=>"color"===e.type));for(const l of e){const e=(await f(l)??[]).map((e=>e.color));await h(t,l.field||l.valueExpression,e)}}if("heatmap"===l.type){const e=d(l).map((e=>e.color));await h(t,l.field||l.valueExpression,e)}else if("pie-chart"===l.type){for(const e of l.attributes)await h(t,e.field||e.valueExpression,[e.color]);await h(t,"default",[l?.othersCategory?.color,u(l.backgroundFillSymbol,null)])}else if("dot-density"===l.type){for(const e of l.attributes)await h(t,e.field||e.valueExpression,[e.color]);await h(t,"default",[l.backgroundColor])}else if("unique-value"===l.type)if("predominance"===l.authoringInfo?.type)for(const e of l.uniqueValueInfos??[])await h(t,e.value.toString(),[u(e.symbol,null)]);else{const e=(l.uniqueValueInfos??[]).map((e=>u(e.symbol,null))),{field:i,field2:o,field3:a,valueExpression:n}=l;(i||n)&&await h(t,i||n,e),o&&await h(t,o,e),a&&await h(t,a,e)}else if("class-breaks"===l.type){const e=l.classBreakInfos.map((e=>u(e.symbol,null))),{field:i,valueExpression:o}=l;await h(t,i??o,e)}else"simple"===l.type&&await h(t,"default",[u(l.symbol,null)]);return"defaultSymbol"in l&&l.defaultSymbol&&await h(t,"default",[u(l.defaultSymbol,null)]),t.forEach(((l,i)=>{const o=e(l.filter(Boolean),((e,l)=>JSON.stringify(e)===JSON.stringify(l)));t.set(i,o)})),t}async function v(e,l,t){const o=i(e,l,(()=>new Map));for(const i of t)o.set(i.value,i.color)}async function w(e){const l=new Map;if(!e)return l;if("unique-value"!==e.type||e.authoringInfo?.type)if("class-breaks"===e.type){const t=e.classBreakInfos.map((e=>({value:e.minValue,color:u(e.symbol,null)}))).reverse(),{field:i,valueExpression:o}=e;await v(l,i??o,t)}else"simple"===e.type&&await v(l,"default",[{value:"default",color:u(e.symbol,null)}]);else{const t=(e.uniqueValueInfos??[]).map((e=>({value:e.value,color:u(e.symbol,null)}))),{field:i,field2:o,field3:a,valueExpression:n,fieldDelimiter:s}=e,r=[i,o,a].filter(Boolean).join(s||"");(r||n)&&await v(l,r||n,t)}if("defaultSymbol"in e&&e.defaultSymbol&&await v(l,"default",[{value:"default",color:u(e.defaultSymbol,null)}]),"visualVariables"in e&&e.visualVariables){const t=e.visualVariables.filter((e=>"color"===e.type));for(const e of t){const t=await f(e)??[];await v(l,e.field||e.valueExpression,t)}}return l}function x(e,l,t){let i="";return 0===l?i=c.lt+" ":l===t&&(i=c.gt+" "),i+e}function V(e){const{values:l,colors:t,labelIndexes:i,isDate:o}=e;return l.map(((e,s)=>{let u=null;if(!i||i.includes(s)){const t=o?a(e):n(e);t&&(u=x(t,s,l.length-1))}return new r({value:e,color:t[s],label:u})}))}function E(e){let l=e.minValue,t=e.maxValue;const i=e.isFirstBreak?"":c.gt+" ",o="percent-of-total"===e.normalizationType?c.pct:"";return l=null==l?"":n(l),t=null==t?"":n(t),i+l+o+" "+c.ld+" "+t+o}function F(e){const l=e.classBreakInfos,t=e.normalizationType;let i=[];if(l?.length)if("standard-deviation"!==e.classificationMethod)if(e.round){i.push(l[0].minValue);for(const e of l)i.push(e.maxValue);i=s(i),l.forEach(((e,l)=>{e.label=E({minValue:0===l?i[0]:i[l],maxValue:i[l+1],isFirstBreak:0===l,normalizationType:t})}))}else l.forEach(((e,l)=>{e.label=E({minValue:e.minValue,maxValue:e.maxValue,isFirstBreak:0===l,normalizationType:t})}));else p.warn("setLabelsForClassBreaks","cannot set labels for class breaks generated using 'standard-deviation' method.")}function z(e){const l=e.map((e=>new Date(e))),t=l.length;let i=1/0,o=null;for(let a=0;a<t-1;a++){const e=l[a];let n=1/0,s=null;for(let i=a+1;i<t;i++){const t=l[i],o=(e.getFullYear()!==t.getFullYear()?"year":e.getMonth()!==t.getMonth()&&"month")||e.getDate()!==t.getDate()&&"day"||e.getHours()!==t.getHours()&&"hour"||e.getMinutes()!==t.getMinutes()&&"minute"||e.getSeconds()!==t.getSeconds()&&"second"||"millisecond",a=m[o];a<n&&(n=a,s=o)}n<i&&(i=n,o=s)}return o}function S(e){const{value:l,domain:t,fieldInfo:i,dateFormatInterval:s}=e;let r=String(l);const u=t&&"codedValues"in t&&t.codedValues?t.getName(l):null;return u?r=u:"number"==typeof l&&(r="date"===i?.type?a(l,(s&&o(y[s]))??void 0):n(l)),r}function k(e,l){return"normalizationField"in e&&e.normalizationField?j(e.field,e.normalizationField):"field"in e&&e.field?I(e.field):"valueExpression"in e&&e.valueExpression?B(e.valueExpression,e.valueExpressionTitle,l):null}function I(e){return{type:"field",field:e}}function j(e,l){return{type:"normalized-field",field:e,normalizationField:l}}function B(e,l,t){return{type:"expression",expression:e,title:l,returnType:t}}function M(t,i){const o=[];if("class-breaks"===t.type||"heatmap"===t.type)o.push(k(t,"number"));else if("unique-value"===t.type){const e=t.authoringInfo;if(e&&"relationship"===e.type){if(e.field1&&e.field2){const l=e.field1.field,t=e.field2.field,i=e.field1.normalizationField,a=e.field2.normalizationField;o.push(k({field:l,normalizationField:i})),o.push(k({field:t,normalizationField:a}))}}else{const e=t.uniqueValueInfos?.[0];let l=null;if(e?.value){const t=typeof e.value;"string"!==t&&"number"!==t||(l=t)}o.push(k(t,l)),[t.field2,t.field3].forEach((e=>e&&o.push(I(e))))}}else"attributes"in t&&t.attributes?.forEach((e=>o.push(k(e,"number"))));const a=i?i(t):"visualVariables"in t?t.visualVariables:null;return a&&a.forEach((e=>o.push(k(e,"number")))),e(o.filter(l),((e,l)=>"field"===e.type&&"field"===l.type?e.field===l.field:"normalized-field"===e.type&&"normalized-field"===l.type?e.field===l.field&&e.normalizationField===l.normalizationField:"expression"===e.type&&"expression"===l.type&&e.expression===l.expression))}export{z as calculateDateFormatInterval,E as createClassBreakLabel,V as createColorStops,S as createUniqueValueLabel,k as getAttribute,M as getAttributes,w as getColorsForRendererValues,b as getColorsFromRenderer,F as setLabelsForClassBreaks,g as timelineDateFormatOptions};
5
+ import{unique as e,isSome as l}from"../../core/arrayUtils.js";import t from"../../core/Logger.js";import{getOrCreateMapValue as i}from"../../core/MapUtils.js";import{convertDateFormatToIntlOptions as o,formatDate as a}from"../../intl/date.js";import{isTimeOnlyField as n}from"../../layers/support/fieldUtils.js";import{format as s,round as r}from"./numberUtils.js";import u from"../visualVariables/support/ColorStop.js";import{isAnyDateField as f,formatAnyDate as d}from"../../smartMapping/support/utils.js";import{getColorFromSymbol as p}from"../../symbols/support/utils.js";import{getRampStops as m}from"../../widgets/Legend/support/colorRampUtils.js";import{getHeatmapRampStops as c}from"../../widgets/Legend/support/heatmapRampUtils.js";const y=t.getLogger("esri.renderers.support.utils"),g={lte:"<=",gte:">=",lt:"<",gt:">",pct:"%",ld:"–"},h={millisecond:0,second:1,minute:2,hour:3,day:4,month:5,year:6},b={millisecond:"long-month-day-year-long-time",second:"long-month-day-year-long-time",minute:"long-month-day-year-short-time",hour:"long-month-day-year-short-time",day:"long-month-day-year",month:"long-month-day-year",year:"year"},v=o("short-date");async function w(e,l,t){i(e,l,(()=>[])).push(...t)}async function x(l){const t=new Map;if(!l)return t;if("visualVariables"in l&&l.visualVariables){const e=l.visualVariables.filter((e=>"color"===e.type));for(const l of e){const e=(await m(l)??[]).map((e=>e.color));await w(t,l.field||l.valueExpression,e)}}if("heatmap"===l.type){const e=c(l).map((e=>e.color));await w(t,l.field||l.valueExpression,e)}else if("pie-chart"===l.type){for(const e of l.attributes)await w(t,e.field||e.valueExpression,[e.color]);await w(t,"default",[l?.othersCategory?.color,p(l.backgroundFillSymbol,null)])}else if("dot-density"===l.type){for(const e of l.attributes)await w(t,e.field||e.valueExpression,[e.color]);await w(t,"default",[l.backgroundColor])}else if("unique-value"===l.type)if("predominance"===l.authoringInfo?.type)for(const e of l.uniqueValueInfos??[])await w(t,e.value.toString(),[p(e.symbol,null)]);else{const e=(l.uniqueValueInfos??[]).map((e=>p(e.symbol,null))),{field:i,field2:o,field3:a,valueExpression:n}=l;(i||n)&&await w(t,i||n,e),o&&await w(t,o,e),a&&await w(t,a,e)}else if("class-breaks"===l.type){const e=l.classBreakInfos.map((e=>p(e.symbol,null))),{field:i,valueExpression:o}=l;await w(t,i??o,e)}else"simple"===l.type&&await w(t,"default",[p(l.symbol,null)]);return"defaultSymbol"in l&&l.defaultSymbol&&await w(t,"default",[p(l.defaultSymbol,null)]),t.forEach(((l,i)=>{const o=e(l.filter(Boolean),((e,l)=>JSON.stringify(e)===JSON.stringify(l)));t.set(i,o)})),t}async function V(e,l,t){const o=i(e,l,(()=>new Map));for(const i of t)o.set(i.value,i.color)}async function E(e){const l=new Map;if(!e)return l;if("unique-value"!==e.type||e.authoringInfo?.type)if("class-breaks"===e.type){const t=e.classBreakInfos.map((e=>({value:e.minValue,color:p(e.symbol,null)}))).reverse(),{field:i,valueExpression:o}=e;await V(l,i??o,t)}else"simple"===e.type&&await V(l,"default",[{value:"default",color:p(e.symbol,null)}]);else{const t=(e.uniqueValueInfos??[]).map((e=>({value:e.value,color:p(e.symbol,null)}))),{field:i,field2:o,field3:a,valueExpression:n,fieldDelimiter:s}=e,r=[i,o,a].filter(Boolean).join(s||"");(r||n)&&await V(l,r||n,t)}if("defaultSymbol"in e&&e.defaultSymbol&&await V(l,"default",[{value:"default",color:p(e.defaultSymbol,null)}]),"visualVariables"in e&&e.visualVariables){const t=e.visualVariables.filter((e=>"color"===e.type));for(const e of t){const t=await m(e)??[];await V(l,e.field||e.valueExpression,t)}}return l}function F(e,l,t){let i="";return 0===l?i=g.lt+" ":l===t&&(i=g.gt+" "),i+e}function z(e){const{values:l,colors:t,labelIndexes:i,isDate:o}=e;return l.map(((e,n)=>{let r=null;if(!i||i.includes(n)){const t=o?a(e):s(e);t&&(r=F(t,n,l.length-1))}return new u({value:e,color:t[n],label:r})}))}function S(e){let l=e.minValue,t=e.maxValue;const i=e.isFirstBreak?"":g.gt+" ",o="percent-of-total"===e.normalizationType?g.pct:"";return l=null==l?"":s(l),t=null==t?"":s(t),i+l+o+" "+g.ld+" "+t+o}function k(e){const l=e.classBreakInfos,t=e.normalizationType;let i=[];if(l?.length)if("standard-deviation"!==e.classificationMethod)if(e.round){i.push(l[0].minValue);for(const e of l)i.push(e.maxValue);i=r(i),l.forEach(((e,l)=>{e.label=S({minValue:0===l?i[0]:i[l],maxValue:i[l+1],isFirstBreak:0===l,normalizationType:t})}))}else l.forEach(((e,l)=>{e.label=S({minValue:e.minValue,maxValue:e.maxValue,isFirstBreak:0===l,normalizationType:t})}));else y.warn("setLabelsForClassBreaks","cannot set labels for class breaks generated using 'standard-deviation' method.")}function j(e){const l=e.map((e=>new Date(e))),t=l.length;let i=1/0,o=null;for(let a=0;a<t-1;a++){const e=l[a];let n=1/0,s=null;for(let i=a+1;i<t;i++){const t=l[i],o=(e.getFullYear()!==t.getFullYear()?"year":e.getMonth()!==t.getMonth()&&"month")||e.getDate()!==t.getDate()&&"day"||e.getHours()!==t.getHours()&&"hour"||e.getMinutes()!==t.getMinutes()&&"minute"||e.getSeconds()!==t.getSeconds()&&"second"||"millisecond",a=h[o];a<n&&(n=a,s=o)}n<i&&(i=n,o=s)}return o}function I(e){const{value:l,domain:t,fieldInfo:i,dateFormatOptions:o}=e;let a=String(l);const r=t&&"codedValues"in t&&t.codedValues?t.getName(l):null;return r?a=r:null!=l&&i&&(f(i)||n(i))?a=d(l,o??{fieldType:i.type}):"number"==typeof l&&(a=s(l)),a}function M(e,l){return"normalizationField"in e&&e.normalizationField?q(e.field,e.normalizationField):"field"in e&&e.field?B(e.field):"valueExpression"in e&&e.valueExpression?T(e.valueExpression,e.valueExpressionTitle,l):null}function B(e){return{type:"field",field:e}}function q(e,l){return{type:"normalized-field",field:e,normalizationField:l}}function T(e,l,t){return{type:"expression",expression:e,title:l,returnType:t}}function U(t,i){const o=[];if("class-breaks"===t.type||"heatmap"===t.type)o.push(M(t,"number"));else if("unique-value"===t.type){const e=t.authoringInfo;if(e&&"relationship"===e.type){if(e.field1&&e.field2){const l=e.field1.field,t=e.field2.field,i=e.field1.normalizationField,a=e.field2.normalizationField;o.push(M({field:l,normalizationField:i})),o.push(M({field:t,normalizationField:a}))}}else{const e=t.uniqueValueInfos?.[0];let l=null;if(e?.value){const t=typeof e.value;"string"!==t&&"number"!==t||(l=t)}o.push(M(t,l)),[t.field2,t.field3].forEach((e=>e&&o.push(B(e))))}}else"attributes"in t&&t.attributes?.forEach((e=>o.push(M(e,"number"))));const a=i?i(t):"visualVariables"in t?t.visualVariables:null;return a&&a.forEach((e=>o.push(M(e,"number")))),e(o.filter(l),((e,l)=>"field"===e.type&&"field"===l.type?e.field===l.field:"normalized-field"===e.type&&"normalized-field"===l.type?e.field===l.field&&e.normalizationField===l.normalizationField:"expression"===e.type&&"expression"===l.type&&e.expression===l.expression))}export{j as calculateDateFormatInterval,S as createClassBreakLabel,z as createColorStops,I as createUniqueValueLabel,b as dateFormatIntervalOptions,M as getAttribute,U as getAttributes,E as getColorsForRendererValues,x as getColorsFromRenderer,k as setLabelsForClassBreaks,v as timelineDateFormatOptions};
@@ -0,0 +1,4 @@
1
+ import "../../interfaces";
2
+
3
+ import FeatureService = __esri.FeatureService;
4
+ export default FeatureService;
@@ -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"../../request.js";import{isSome as s}from"../../core/arrayUtils.js";import r from"../../core/Error.js";import{IdentifiableMixin as i}from"../../core/Identifiable.js";import{JSONSupportMixin as a}from"../../core/JSONSupport.js";import{clone as o}from"../../core/lang.js";import n from"../../core/Loadable.js";import{property as u}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import{reader as d}from"../../core/accessorSupport/decorators/reader.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import p from"../../geometry/SpatialReference.js";import{getFeatureJSON as c,getFeatureIds as m,getAttachmentEditsJSON as y,isProtectedOrPrivateVersionError as h,unpackEditResultData as f,createEditedFeatures as S}from"../../layers/graphics/applyEditsUtils.js";import{checkEditingCapabilities as v,normalizeEdits as g,normalizeGeometries as R}from"../../layers/graphics/editingSupport.js";import{emitApplyEditsEvent as b}from"../../layers/mixins/EditBusLayer.js";import{parseUrl as E,asValidOptions as w,encode as F}from"../utils.js";import{unapplyEditsZUnitScaling as j}from"../query/operations/editsZScale.js";import{readBoolean as A,readNumber as k}from"../support/jsonUtils.js";import{isSafeToEditVersion as O,isVersionInEditSession as V,currentSessionId as C}from"../../versionManagement/support/versionManagementUtils.js";function I(e){return{data:M(e),sync:x(e),operations:D(e.capabilities,e),query:N(e),editing:U(e)}}function M(e){return{isDataVersioned:A(e,"hasVersionedData",!1)}}function D(e,t){const s=e?e.toLowerCase().split(",").map((e=>e.trim())):[],r=s.includes("query"),i=s.includes("editing")&&!t.datesInUnknownTimezone;let a=i&&s.includes("create"),o=i&&s.includes("delete"),n=i&&s.includes("update");return i&&!(a||o||n)&&(a=o=n=!0),{supportsAdd:a,supportsDelete:o,supportsEditing:i,supportsChangeTracking:s.includes("changetracking"),supportsQuery:r,supportsQueryDataElements:A(t,"supportsQueryDataElements",!1),supportsQueryDomains:A(t,"supportsQueryDomains",!1),supportsQueryContingentValues:A(t,"supportsQueryContingentValues",!1),supportsSync:s.includes("sync"),supportsUpdate:n}}function N(e){return{maxRecordCountFactor:k(e,"maxRecordCountFactor",void 0),maxRecordCount:k(e,"maxRecordCount",void 0)}}function U(e){const t=e?.advancedEditingCapabilities;return{supportsGlobalId:A(e,"supportsApplyEditsWithGlobalIds",!1),supportsReturnServiceEditsInSourceSpatialReference:A(t,"supportsReturnServiceEditsInSourceSR",!1),supportsSplit:A(t,"supportsSplit",!1),supportsAsyncApplyEdits:A(t,"supportsAsyncApplyEdits",!1)}}function x(e){const t=e?.syncCapabilities,s=t?.supportedSyncDataOptions;return{supportsAsync:A(t,"supportsAsync",!1),supportedSyncDataOptions:{annotations:1==(1&s),dimensions:2==(2&s),contingentValues:4==(4&s),attributeRules:8==(8&s),utilityNetworkSystem:16==(16&s),annotationFullModel:32==(32&s),include3DObjects:64==(64&s),utilityNetworkMissingLayers:128==(128&s),preserveTrueCurves:256==(256&s)}}}let J=class extends(a(i(n))){constructor(e){super(e),this.sourceJSON=null,this.userTypeExtensions=[],this.layerInfos=[],this.tableInfos=[],this.capabilities=null}read(e,t){this.sourceJSON=e,super.read(e,t)}get utilityNetworkUrl(){for(const e of this.sourceJSON.layers)if("Utility Network Layer"===e.type)return`${this.url}/${e.id}`;return null}get versionManagementServiceUrl(){return this.sourceJSON.hasBranchVersionedData?this.url.replace(/\/FeatureServer/i,"/VersionManagementServer"):null}readCapabilities(e,t){return I(t)}load(e){return this.addResolvingPromise(this._fetchService(this.url,e)),Promise.resolve(this)}async applyEdits(e,t){let s=null;try{const{results:r,edits:i,editedFeatures:a}=await this._internalApplyEdits(e,t),n=e=>e.filter((e=>!e.error)).map(o);let u=0;return r.map((e=>{s=b(this.url,null,t?.gdbVersion,!0);const r={edits:i[u],addedFeatures:n(e.addFeatureResults),updatedFeatures:n(e.updateFeatureResults),deletedFeatures:n(e.deleteFeatureResults),addedAttachments:n(e.addAttachmentResults),updatedAttachments:n(e.updateAttachmentResults),deletedAttachments:n(e.deleteAttachmentResults),exceededTransferLimit:!1,historicMoment:e.editMoment?new Date(e.editMoment):null};u+=1,a.length>0&&(r.editedFeatures=a),s.resolve(r),s=null})),r}catch(r){throw s&&s.reject(r),r}}async _internalApplyEdits(e,r){const i=r?.globalIdUsed??!1,a=p.fromJSON(this.sourceJSON.spatialReference),{edits:o,options:n}=await this._processApplyEditsParams(e,r),u=await Promise.all(o.map((async e=>{const t=e.addFeatures?.map((e=>c({spatialReference:a},e,null)))??[],r=(await Promise.all(t)).filter(s),o=e.updateFeatures?.map((e=>c({spatialReference:a},e,null)))??[],n=(await Promise.all(o)).filter(s),u=m(e.identifierFields,e.deleteFeatures,i);j(r,n,a);const d=await y(e.identifierFields,e);return{id:e.id,adds:r,updates:n,deletes:u,attachments:d}}))),d={gdbVersion:n?.gdbVersion,rollbackOnFailure:!0,useGlobalIds:i,returnEditMoment:!0,honorSequenceOfEdits:n?.honorSequenceOfEdits,usePreviousEditMoment:n?.usePreviousEditMoment,returnServiceEditsInSourceSR:n?.returnServiceEditsInSourceSR,returnServiceEditOption:"originalAndCurrentFeatures",async:!1};await O(this.url,r?.gdbVersion,!0);const l=V(this.url,r?.gdbVersion||null);d.edits=JSON.stringify(u);const f=E(this.url),S=w(f.query,{query:F({...d,f:"json"}),method:"post"});let v;l&&(S.authMode="immediate",S.query.sessionId=C);try{v=await t(this.url+"/applyEdits",S)}catch(g){throw h(g)&&(S.authMode="immediate",v=await t(this.url+"/applyEdits",S)),g}return{...this._createServiceEditsResult(v),edits:o}}_createServiceEditsResult(e){const t=e.data,s=[];return{results:t.map((e=>{const t={addResults:e.addResults??[],updateResults:e.updateResults??[],deleteResults:e.deleteResults??[],attachments:e.attachments,editMoment:e.editMoment},r=f(t),i=e.editedFeatures,a=i?.spatialReference?new p({wkid:i?.spatialReference.wkid,wkt:i?.spatialReference.wkt,latestWkid:i?.spatialReference.latestWkid,latestVcsWkid:i?.spatialReference.latestVcsWkid,vcsWkid:i?.spatialReference.vcsWkid}):null,o=S(i,a);return s.push({layerId:e.id,editedFeatures:o}),{id:e.id,editedFeatures:o,...r}})),editedFeatures:s}}async _processApplyEditsParams(e,t){const s={...t};return{edits:await Promise.all(e.map((async e=>{const s=this.capabilities,i=e&&(e.addFeatures||e.updateFeatures||e.deleteFeatures),a=e&&(e.addAttachments||e.updateAttachments||e.deleteAttachments);if(v(e,s,t,!!i,!!a,"feature-service"),!s.data.isDataVersioned&&t?.gdbVersion)throw new r("feature-service:invalid-parameter","'gdbVersion' is applicable only if the layer supports versioned data. See: 'capabilities.data.isVersioned'");const o=g(e,s,"feature-service");return{...await R(o),id:e.id,identifierFields:e.identifierFields}}))),options:s}}async _fetchService(e,s){if(this.sourceJSON)return void this.read(this.sourceJSON,{origin:"service",url:E(e)});const r=await t(e,{responseType:"json",query:{f:"json"},...s});this.read(r.data)}};e([u()],J.prototype,"url",void 0),e([u()],J.prototype,"sourceJSON",void 0),e([u({readOnly:!0})],J.prototype,"utilityNetworkUrl",null),e([u({readOnly:!0})],J.prototype,"versionManagementServiceUrl",null),e([u()],J.prototype,"userTypeExtensions",void 0),e([u({json:{read:{source:"layers"}}})],J.prototype,"layerInfos",void 0),e([u({json:{read:{source:"tables"}}})],J.prototype,"tableInfos",void 0),e([u({readOnly:!0,json:{read:{source:["hasVersionedData","capabilities","supportsQueryDataElements","supportsQueryDomains","supportsQueryContingentValues","maxRecordCountFactor","maxRecordCount","advancedEditingCapabilities","supportsApplyEditsWithGlobalIds","syncCapabilities","datesInUnknownTimezone"]}}})],J.prototype,"capabilities",void 0),e([d("service","capabilities")],J.prototype,"readCapabilities",null),J=e([l("esri.services.FeatureService")],J);const q=J;export{q as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../request.js";import{isSome as s}from"../../core/arrayUtils.js";import r from"../../core/Error.js";import{IdentifiableMixin as i}from"../../core/Identifiable.js";import{JSONSupportMixin as a}from"../../core/JSONSupport.js";import{clone as o}from"../../core/lang.js";import n from"../../core/Loadable.js";import{property as u}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import{reader as d}from"../../core/accessorSupport/decorators/reader.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import p from"../../geometry/SpatialReference.js";import{getFeatureJSON as c,getFeatureIds as m,getAttachmentEditsJSON as y,isProtectedOrPrivateVersionError as h,unpackEditResultData as f,createEditedFeatures as S}from"../../layers/graphics/applyEditsUtils.js";import{checkEditingCapabilities as v,normalizeEdits as g,normalizeGeometries as R}from"../../layers/graphics/editingSupport.js";import{emitApplyEditsEvent as b}from"../../layers/mixins/EditBusLayer.js";import{parseUrl as E,asValidOptions as w,encode as F}from"../utils.js";import{unapplyEditsZUnitScaling as j}from"../query/operations/editsZScale.js";import{readBoolean as A,readNumber as k}from"../support/jsonUtils.js";import{isSafeToEditVersion as O,isVersionInEditSession as V,currentSessionId as C}from"../../versionManagement/support/versionManagementUtils.js";function I(e){return{data:M(e),sync:x(e),operations:D(e.capabilities,e),query:N(e),editing:U(e)}}function M(e){return{isDataVersioned:A(e,"hasVersionedData",!1)}}function D(e,t){const s=e?e.toLowerCase().split(",").map((e=>e.trim())):[],r=s.includes("query"),i=s.includes("editing")&&!t.datesInUnknownTimezone;let a=i&&s.includes("create"),o=i&&s.includes("delete"),n=i&&s.includes("update");return i&&!(a||o||n)&&(a=o=n=!0),{supportsAdd:a,supportsDelete:o,supportsEditing:i,supportsChangeTracking:s.includes("changetracking"),supportsQuery:r,supportsQueryDataElements:A(t,"supportsQueryDataElements",!1),supportsQueryDomains:A(t,"supportsQueryDomains",!1),supportsQueryContingentValues:A(t,"supportsQueryContingentValues",!1),supportsSync:s.includes("sync"),supportsUpdate:n}}function N(e){return{maxRecordCountFactor:k(e,"maxRecordCountFactor",void 0),maxRecordCount:k(e,"maxRecordCount",void 0)}}function U(e){const t=e?.advancedEditingCapabilities;return{supportsGlobalId:A(e,"supportsApplyEditsWithGlobalIds",!1),supportsReturnServiceEditsInSourceSpatialReference:A(t,"supportsReturnServiceEditsInSourceSR",!1),supportsSplit:A(t,"supportsSplit",!1),supportsAsyncApplyEdits:A(t,"supportsAsyncApplyEdits",!1)}}function x(e){const t=e?.syncCapabilities,s=t?.supportedSyncDataOptions;return{supportsAsync:A(t,"supportsAsync",!1),supportedSyncDataOptions:{annotations:1==(1&s),dimensions:2==(2&s),contingentValues:4==(4&s),attributeRules:8==(8&s),utilityNetworkSystem:16==(16&s),annotationFullModel:32==(32&s),include3DObjects:64==(64&s),utilityNetworkMissingLayers:128==(128&s),preserveTrueCurves:256==(256&s)}}}let J=class extends(a(i(n))){constructor(e){super(e),this.url=null,this.sourceJSON=null,this.userTypeExtensions=[],this.layerInfos=[],this.tableInfos=[],this.capabilities=null}read(e,t){this.sourceJSON=e,super.read(e,t)}get utilityNetworkUrl(){for(const e of this.sourceJSON.layers)if("Utility Network Layer"===e.type)return`${this.url}/${e.id}`;return null}get versionManagementServiceUrl(){return this.sourceJSON.hasBranchVersionedData?this.url.replace(/\/FeatureServer/i,"/VersionManagementServer"):null}readCapabilities(e,t){return I(t)}load(e){return this.addResolvingPromise(this._fetchService(this.url,e)),Promise.resolve(this)}async applyEdits(e,t){let s=null;try{const{results:r,edits:i,editedFeatures:a}=await this._internalApplyEdits(e,t),n=e=>e.filter((e=>!e.error)).map(o);let u=0;return r.map((e=>{s=b(this.url,e.id,t?.gdbVersion,!0);const r={edits:i[u],addedFeatures:n(e.addFeatureResults),updatedFeatures:n(e.updateFeatureResults),deletedFeatures:n(e.deleteFeatureResults),addedAttachments:n(e.addAttachmentResults),updatedAttachments:n(e.updateAttachmentResults),deletedAttachments:n(e.deleteAttachmentResults),exceededTransferLimit:!1,historicMoment:e.editMoment?new Date(e.editMoment):null};u+=1,a.length>0&&(r.editedFeatures=a),s.resolve(r),s=null})),r}catch(r){throw s&&s.reject(r),r}}async _internalApplyEdits(e,r){const i=r?.globalIdUsed??!1,a=p.fromJSON(this.sourceJSON.spatialReference),{edits:o,options:n}=await this._processApplyEditsParams(e,r),u=await Promise.all(o.map((async e=>{const t=e.addFeatures?.map((e=>c({spatialReference:a},e,null)))??[],r=(await Promise.all(t)).filter(s),o=e.updateFeatures?.map((e=>c({spatialReference:a},e,null)))??[],n=(await Promise.all(o)).filter(s),u=m(e.identifierFields,e.deleteFeatures,i);j(r,n,a);const d=await y(e.identifierFields,e);return{id:e.id,adds:r,updates:n,deletes:u,attachments:d}}))),d={gdbVersion:n?.gdbVersion,rollbackOnFailure:!0,useGlobalIds:i,returnEditMoment:!0,honorSequenceOfEdits:n?.honorSequenceOfEdits,usePreviousEditMoment:n?.usePreviousEditMoment,returnServiceEditsInSourceSR:n?.returnServiceEditsInSourceSR,returnServiceEditsOption:"originalAndCurrentFeatures",async:!1};await O(this.url,r?.gdbVersion,!0);const l=V(this.url,r?.gdbVersion||null);d.edits=JSON.stringify(u);const f=E(this.url),S=w(f.query,{query:F({...d,f:"json"}),method:"post"});let v;l&&(S.authMode="immediate",S.query.sessionId=C);try{v=await t(this.url+"/applyEdits",S)}catch(g){if(!h(g))throw g;S.authMode="immediate",v=await t(this.url+"/applyEdits",S)}return{...this._createServiceEditsResult(v),edits:o}}_createServiceEditsResult(e){const t=e.data,s=[];return{results:t.map((e=>{const t={addResults:e.addResults??[],updateResults:e.updateResults??[],deleteResults:e.deleteResults??[],attachments:e.attachments,editMoment:e.editMoment},r=f(t),i=e.editedFeatures,a=i?.spatialReference?new p({wkid:i?.spatialReference.wkid,wkt:i?.spatialReference.wkt,latestWkid:i?.spatialReference.latestWkid,latestVcsWkid:i?.spatialReference.latestVcsWkid,vcsWkid:i?.spatialReference.vcsWkid}):null,o=i?S(i,a):null;return o&&s.push({layerId:e.id,editedFeatures:o}),{id:e.id,editedFeatures:o,...r}})),editedFeatures:s}}async _processApplyEditsParams(e,t){const s={...t};return{edits:await Promise.all(e.map((async e=>{const s=this.capabilities,i=e&&(e.addFeatures||e.updateFeatures||e.deleteFeatures),a=e&&(e.addAttachments||e.updateAttachments||e.deleteAttachments);if(v(e,s,t,!!i,!!a,"feature-service"),!s.data.isDataVersioned&&t?.gdbVersion)throw new r("feature-service:invalid-parameter","'gdbVersion' is applicable only if the layer supports versioned data. See: 'capabilities.data.isVersioned'");const o=g(e,s,"feature-service");return{...await R(o),id:e.id,identifierFields:e.identifierFields}}))),options:s}}async _fetchService(e,s){if(this.sourceJSON)return void this.read(this.sourceJSON,{origin:"service",url:E(e)});const r=await t(e,{responseType:"json",query:{f:"json"},...s});this.read(r.data)}};e([u()],J.prototype,"url",void 0),e([u()],J.prototype,"sourceJSON",void 0),e([u({readOnly:!0})],J.prototype,"utilityNetworkUrl",null),e([u({readOnly:!0})],J.prototype,"versionManagementServiceUrl",null),e([u()],J.prototype,"userTypeExtensions",void 0),e([u({json:{read:{source:"layers"}}})],J.prototype,"layerInfos",void 0),e([u({json:{read:{source:"tables"}}})],J.prototype,"tableInfos",void 0),e([u({readOnly:!0,json:{read:{source:["hasVersionedData","capabilities","supportsQueryDataElements","supportsQueryDomains","supportsQueryContingentValues","maxRecordCountFactor","maxRecordCount","advancedEditingCapabilities","supportsApplyEditsWithGlobalIds","syncCapabilities","datesInUnknownTimezone"]}}})],J.prototype,"capabilities",void 0),e([d("service","capabilities")],J.prototype,"readCapabilities",null),J=e([l("esri.services.FeatureService")],J);const q=J;export{q as default};
@@ -0,0 +1,4 @@
1
+ import "../../interfaces";
2
+
3
+ import featureServiceUtils = __esri.featureServiceUtils;
4
+ export = featureServiceUtils;
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../core/Error.js";import{fetchMessageBundle as t}from"../../intl/messages.js";import r from"../heuristics/clusterMinSize.js";import{getAggregateFieldInfo as s,createLabelExpressionForAggregateField as n,createLabelClass as i,createNumericLabelExpression as a}from"./support/utils.js";import{getStatisticInfos as o,getClusterField as l,clusterCountField as c,getClusterFieldHash as u,getPredominantTypeExpression as m}from"../support/clusterUtils.js";import{isClusterCompatibleRenderer as f}from"../../views/2d/layers/support/clusterUtils.js";async function p(t){const{layer:r,renderer:s,view:n}=t;await Promise.all([r.load(),n.when()]);const i=s||r.renderer;if(!f(i))throw new e("clusters-label-schemes:invalid-parameters","'renderer' is not valid");return{layer:r,renderer:i,view:n}}function d(e,t,r){const s="unique-value"===e.type?e.uniqueValueInfos??[]:[];return m(s,t,r)}async function w(e){const{renderer:t,view:s,statInfo:n}=e,o=n?.statisticType,m=n?l(n.attributeInfo,o):c,f="mode"===o?d(t,m,e.noneValueLabel):a(m),p=i(f);return{name:n?`clusters-${o}-${u(m,o)}`:"clusters-count",labelingInfo:[p],clusterMinSize:await r(p.symbol,s),fieldName:m}}function v(e){const t=new Map;for(const r of e)"size"===r.attributeInfo.vvType?t.set(r.statisticHash,r):t.has(r.statisticHash)||t.set(r.statisticHash,r);return[...t.values()]}async function y(a){const[{renderer:l,layer:c,view:u},m]=await Promise.all([p(a),t("esri/smartMapping/t9n/smartMapping")]),f=m.clusters.predominantNoneValue;if(!l)return null;let d=null;const y=[];if(a.field){const t=s(a.field,c);if(!t)throw new e("clusters-label-schemes:invalid-parameters","'field' is not a valid aggregate field");const{name:o}=t,m=n(c,l,t,f),p=i(m);return d={name:`clusters-${o}`,labelingInfo:[p],clusterMinSize:await r(p.symbol,u),fieldName:o},{primaryScheme:d,secondarySchemes:y}}const h=v(o(c,l,!1));for(const e of h){const t=await w({renderer:l,view:u,statInfo:e,noneValueLabel:f});"size"===e.attributeInfo.vvType?d=t:y.push(t)}const b=await w({renderer:l,view:u});return d?y.unshift(b):d=b,{primaryScheme:d,secondarySchemes:y}}export{y as getLabelSchemes};
5
+ import e from"../../core/Error.js";import{fetchMessageBundle as t}from"../../intl/messages.js";import r from"../heuristics/clusterMinSize.js";import{getAggregateFieldInfo as s,createLabelExpressionForAggregateField as n,createLabelClass as i,createNumericLabelExpression as a}from"./support/utils.js";import{getStatisticInfos as o,getClusterField as l,clusterCountField as c,getClusterFieldHash as u,getPredominantTypeExpression as m}from"../support/clusterUtils.js";import{isClusterCompatibleRenderer as f}from"../../views/2d/layers/support/clusterUtils.js";async function p(t){const{layer:r,renderer:s,view:n}=t;await Promise.all([r.load(),n.when()]);const i=s||r.renderer;if(!f(i))throw new e("clusters-label-schemes:invalid-parameters","'renderer' is not valid");return{layer:r,renderer:i,view:n}}function d(e,t,r){const s="unique-value"===e.type?e.uniqueValueInfos??[]:[];return m(s,t,r)}async function w(e){const{renderer:t,view:s,statInfo:n}=e,o=n?.statisticType,m=n?l(n.attributeInfo,o):c,f="type"===o?d(t,m,e.noneValueLabel):a(m),p=i(f);return{name:n?`clusters-${o}-${u(m,o)}`:"clusters-count",labelingInfo:[p],clusterMinSize:await r(p.symbol,s),fieldName:m}}function y(e){const t=new Map;for(const r of e)"size"===r.attributeInfo.vvType?t.set(r.statisticHash,r):t.has(r.statisticHash)||t.set(r.statisticHash,r);return[...t.values()]}async function v(a){const[{renderer:l,layer:c,view:u},m]=await Promise.all([p(a),t("esri/smartMapping/t9n/smartMapping")]),f=m.clusters.predominantNoneValue;if(!l)return null;let d=null;const v=[];if(a.field){const t=s(a.field,c);if(!t)throw new e("clusters-label-schemes:invalid-parameters","'field' is not a valid aggregate field");const{name:o}=t,m=n(c,l,t,f),p=i(m);return d={name:`clusters-${o}`,labelingInfo:[p],clusterMinSize:await r(p.symbol,u),fieldName:o},{primaryScheme:d,secondarySchemes:v}}const h=y(o(c,l,!1));for(const e of h){const t=await w({renderer:l,view:u,statInfo:e,noneValueLabel:f});"size"===e.attributeInfo.vvType?d=t:v.push(t)}const b=await w({renderer:l,view:u});return d?v.unshift(b):d=b,{primaryScheme:d,secondarySchemes:v}}export{v as getLabelSchemes};
@@ -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{substitute as e}from"../../../intl/substitute.js";import{numericTypes as t}from"../../../layers/support/fieldUtils.js";import"../../../popup/content/AttachmentsContent.js";import"../../../popup/content/Content.js";import"../../../popup/content/CustomContent.js";import"../../../popup/content/ExpressionContent.js";import"../../../popup/content/FieldsContent.js";import"../../../popup/content/MediaContent.js";import"../../../popup/content/RelationshipContent.js";import n from"../../../popup/content/TextContent.js";import o from"../../../popup/ExpressionInfo.js";import s from"../../../popup/FieldInfo.js";import i from"../../../popup/support/FieldInfoFormat.js";import{getFieldAndExpressionInfos as r,getContentFromFieldInfos as l}from"./utils.js";import{getStatisticInfos as p,getClusterField as u,getPredominantTypeExpression as a,clusterCountField as m}from"../../support/clusterUtils.js";import{isClusterCompatibleRenderer as f}from"../../../views/2d/layers/support/clusterUtils.js";function d(e){const{fieldName:n,label:o,type:r}=e,l=null!=r&&t.includes(r),p=new s({fieldName:n,label:o,visible:!0,format:l?{places:"integer"===r||"small-integer"===r?0:2,digitSeparator:!0}:null});return"date"===r&&(p.format=new i({dateFormat:"short-date-short-time"})),p}function c(e,t){const n=e?t.getField(e):null;return null!=n?n.alias||n.name:void 0}function y(t,n,o){const{attributeInfo:s,statisticType:i}=n,{field:r,normalizationField:l}=s;let p,u="";if("avg"===i?p=l?o.clusters.avgNormFieldLabel:o.clusters.avgFieldLabel:"mode"===i&&(p=o.clusters.predominantFieldLabel),p){const n=s.valueExpression?s.valueExpressionTitle:c(r,t),o=l&&c(l,t);u=e(p,{fieldLabel:n||"",normFieldLabel:o||""})}return u}function F(t,n,o,s){const{attributeInfo:i,statisticType:r}=n,{field:l,normalizationField:p}=i;let u,a="";if("avg"===r?u=p?s.clusters.avgNormFieldSummary:s.clusters.avgFieldSummary:"mode"===r&&(u=s.clusters.predominantFieldSummary),u){const n=i.valueExpression?i.valueExpressionTitle:c(l,t),s=p&&c(p,t);a=e(u,{fieldLabel:n||"",normFieldLabel:s||"",fieldValue:"{"+o+"}"})}return a}function I(t){return{fieldInfo:d({fieldName:m,label:t.clusters.numFeatures,type:"integer"}),fieldSummary:new n({text:e(t.clusters.countSummary,{count:`{${m}}`})})}}async function b(e,t,s){if(!f(t))return null;const i=p(e,t),r=s.clusters.predominantNoneValue,l="unique-value"===t.type?t.uniqueValueInfos??[]:[],{fieldInfo:m,fieldSummary:c}=I(s),b=[c],x=[m],j=[];for(const p of i){const{statisticType:t,attributeInfo:i}=p,m=u(i,t),f=y(e,p,s);if("avg"===t)b.push(new n({text:F(e,p,m,s)})),x.push(d({fieldName:m,label:f,type:"double"}));else if("mode"===t){const t=`expression/${m}`;b.push(new n({text:F(e,p,t,s)})),j.push(new o({name:m,title:f,returnType:"string",expression:a(l,m,r)})),x.push(d({fieldName:t}))}}return{fieldInfos:x,expressionInfos:j,content:b}}async function x(e,t,n){if(!f(t))return null;const{fieldInfo:o,fieldSummary:s}=I(n),i=[s],p=[o],u=[],{fieldInfos:a,expressionInfos:m}=await r({renderer:t,layer:e,isFeatureReduction:!0}),d=await l(e,{fieldInfos:a,expressionInfos:m},!0);return i.push(...d),p.push(...a),u.push(...m),{fieldInfos:p,expressionInfos:u,content:i}}export{b as getContentAndInfos,x as getContentAndInfosForPieChart};
5
+ import{substitute as e}from"../../../intl/substitute.js";import{numericTypes as t}from"../../../layers/support/fieldUtils.js";import"../../../popup/content/AttachmentsContent.js";import"../../../popup/content/Content.js";import"../../../popup/content/CustomContent.js";import"../../../popup/content/ExpressionContent.js";import"../../../popup/content/FieldsContent.js";import"../../../popup/content/MediaContent.js";import"../../../popup/content/RelationshipContent.js";import n from"../../../popup/content/TextContent.js";import o from"../../../popup/ExpressionInfo.js";import s from"../../../popup/FieldInfo.js";import i from"../../../popup/support/FieldInfoFormat.js";import{getFieldAndExpressionInfos as r,getContentFromFieldInfos as l}from"./utils.js";import{getStatisticInfos as p,getClusterField as u,getPredominantTypeExpression as a,clusterCountField as f}from"../../support/clusterUtils.js";import{isClusterCompatibleRenderer as m}from"../../../views/2d/layers/support/clusterUtils.js";function c(e){const{fieldName:n,label:o,type:r}=e,l=null!=r&&t.includes(r),p=new s({fieldName:n,label:o,visible:!0,format:l?{places:"integer"===r||"small-integer"===r?0:2,digitSeparator:!0}:null});return"date"===r&&(p.format=new i({dateFormat:"short-date-short-time"})),p}function d(e,t){const n=e?t.getField(e):null;return null!=n?n.alias||n.name:void 0}function y(t,n,o){const{attributeInfo:s,statisticType:i}=n,{field:r,normalizationField:l}=s;let p,u="";if("avg"===i?p=l?o.clusters.avgNormFieldLabel:o.clusters.avgFieldLabel:"type"===i&&(p=o.clusters.predominantFieldLabel),p){const n=s.valueExpression?s.valueExpressionTitle:d(r,t),o=l&&d(l,t);u=e(p,{fieldLabel:n||"",normFieldLabel:o||""})}return u}function F(t,n,o,s){const{attributeInfo:i,statisticType:r}=n,{field:l,normalizationField:p}=i;let u,a="";if("avg"===r?u=p?s.clusters.avgNormFieldSummary:s.clusters.avgFieldSummary:"type"===r&&(u=s.clusters.predominantFieldSummary),u){const n=i.valueExpression?i.valueExpressionTitle:d(l,t),s=p&&d(p,t);a=e(u,{fieldLabel:n||"",normFieldLabel:s||"",fieldValue:"{"+o+"}"})}return a}function I(t){return{fieldInfo:c({fieldName:f,label:t.clusters.numFeatures,type:"integer"}),fieldSummary:new n({text:e(t.clusters.countSummary,{count:`{${f}}`})})}}async function b(e,t,s){if(!m(t))return null;const i=p(e,t),r=s.clusters.predominantNoneValue,l="unique-value"===t.type?t.uniqueValueInfos??[]:[],{fieldInfo:f,fieldSummary:d}=I(s),b=[d],x=[f],j=[];for(const p of i){const{statisticType:t,attributeInfo:i}=p,f=u(i,t),m=y(e,p,s);if("avg"===t)b.push(new n({text:F(e,p,f,s)})),x.push(c({fieldName:f,label:m,type:"double"}));else if("type"===t){const t=`expression/${f}`;b.push(new n({text:F(e,p,t,s)})),j.push(new o({name:f,title:m,returnType:"string",expression:a(l,f,r)})),x.push(c({fieldName:t}))}}return{fieldInfos:x,expressionInfos:j,content:b}}async function x(e,t,n){if(!m(t))return null;const{fieldInfo:o,fieldSummary:s}=I(n),i=[s],p=[o],u=[],{fieldInfos:a,expressionInfos:f}=await r({renderer:t,layer:e,isFeatureReduction:!0}),c=await l(e,{fieldInfos:a,expressionInfos:f},!0);return i.push(...c),p.push(...a),u.push(...f),{fieldInfos:p,expressionInfos:u,content:i}}export{b as getContentAndInfos,x as getContentAndInfosForPieChart};
@@ -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"../../renderers/PointCloudClassBreaksRenderer.js";import"../../renderers/PointCloudRenderer.js";import e from"../../renderers/PointCloudRGBRenderer.js";import o from"../../renderers/PointCloudStretchRenderer.js";import"../../renderers/PointCloudUniqueValueRenderer.js";import i from"../../renderers/ClassBreaksRenderer.js";import"../../renderers/DictionaryRenderer.js";import"../../renderers/DotDensityRenderer.js";import"../../renderers/HeatmapRenderer.js";import"../../renderers/PieChartRenderer.js";import"../../renderers/Renderer.js";import"../../renderers/SimpleRenderer.js";import"../../renderers/UniqueValueRenderer.js";import"../../renderers/support/jsonUtils.js";import"../../core/Logger.js";import r from"../../core/Error.js";import{fetchMessageBundle as a}from"../../intl/messages.js";import{substitute as n}from"../../intl/substitute.js";import{isDateField as l}from"../../layers/support/fieldUtils.js";import s from"../../renderers/support/AuthoringInfo.js";import t from"../../renderers/support/AuthoringInfoVisualVariable.js";import{createColorStops as m,setLabelsForClassBreaks as d}from"../../renderers/support/utils.js";import u from"../../renderers/visualVariables/ColorVariable.js";import p from"../heuristics/ageUnit.js";import c from"../heuristics/outline.js";import y from"../heuristics/sizeRange.js";import{getSummaryStatistics as f,getClassBreaks as h,errorCallback as b,getPointSizeAlgorithm as w,formatDate as v,updateAgeRendererAuthoringInfoVV as g,verifyBasicFieldValidity as T,isValidPointSize as x,createColors as E,getDefaultDataRange as V,createDefaultStopValues as z,createStopValues as S,getDataRange as M,createDataValues as I,createSymbol as j,getSymbolSizeFromScheme as q,getSymbolOutlineFromScheme as C,getBasemapInfo as O}from"./support/utils.js";import{getAgeExpressions as B,verifyDates as U,supportedAgeUnits as k}from"../statistics/support/ageUtils.js";import{verifyBinningParams as R}from"../support/binningUtils.js";import{getFieldsList as F,getNormalizationType as P}from"../support/utils.js";import{binningCapableLayerTypes as D,featureCapableLayerTypes as L,createLayerAdapter as A,getLayerTypeLabels as G,LayerType as W}from"../support/adapters/support/layerUtils.js";import{cloneScheme as $,getSchemes as H,getSchemeById as _}from"../symbology/color.js";const J="high-to-low",K=2**53-1,N=5;async function Q(e){if(!(e&&e.layer&&(e.field||e.valueExpression||e.sqlExpression)))throw new r("color-visual-variable:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(e.valueExpression&&!e.sqlExpression&&!e.view)throw new r("color-visual-variable:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&R(e,"color-visual-variable");const o={...e};if("90-10"===o.theme)throw new r("color-visual-variable:not-supported","Only 'high-to-low', 'above-and-below', 'centered-on', 'extremes', 'above', 'below' themes are supported.");const i=e.forBinning?D:L,a=A(o.layer,i,e.forBinning);if(!a)throw new r("color-visual-variable:invalid-parameters","'layer' must be one of these types: "+G(i).join(", "));o.layer=a;const n=null!=o.signal?{signal:o.signal}:null;await a.load(n);if("mesh"!==a.geometryType&&o.worldScale&&(!o.view||"3d"!==o.view.type))throw new r("color-visual-variable:invalid-parameters","'view' parameter should be an instance of SceneView when 'worldScale' parameter is true");const l=await F({field:o.field,normalizationField:o.normalizationField,valueExpression:o.valueExpression}),s=T(a,l,"color-visual-variable:invalid-parameters");if(s)throw s;return o}async function X(e){if(!(e&&e.layer&&(e.field||e.valueExpression||e.sqlExpression)))throw new r("color-continuous-renderer:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(e.valueExpression&&!e.sqlExpression&&!e.view)throw new r("color-continuous-renderer:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&R(e,"color-continuous-renderer");const o={...e};o.symbolType=o.symbolType||"2d",o.defaultSymbolEnabled??=!0;const i=e.forBinning?D:L,a=A(o.layer,i,e.forBinning);if(!a)throw new r("color-continuous-renderer:invalid-parameters","'layer' must be one of these types: "+G(i).join(", "));o.layer=a;const n=null!=o.signal?{signal:o.signal}:null;await a.load(n);const l=a.geometryType;if(o.outlineOptimizationEnabled="polygon"===l&&o.outlineOptimizationEnabled,o.sizeOptimizationEnabled=("point"===l||"multipoint"===l||"polyline"===l)&&o.sizeOptimizationEnabled,"mesh"===l)o.symbolType="3d-volumetric",o.colorMixMode=o.colorMixMode||"replace",o.edgesType=o.edgesType||"none";else{if("3d-volumetric-uniform"===o.symbolType&&"point"!==l)throw new r("color-continuous-renderer:not-supported","3d-volumetric-uniform symbols are supported for point layers only");if(o.symbolType.includes("3d-volumetric")&&(!o.view||"3d"!==o.view.type))throw new r("color-continuous-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'")}const s=await F({field:o.field,normalizationField:o.normalizationField,valueExpression:o.valueExpression}),t=T(a,s,"color-continuous-renderer:invalid-parameters");if(t)throw t;return o}async function Y(e){if(!e||!e.layer||!e.field&&!e.valueExpression)throw new r("color-class-breaks-renderer:missing-parameters","'layer' and 'field' or 'valueExpression' parameters are required");if(e.valueExpression&&!e.view)throw new r("color-class-breaks-renderer:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&R(e,"color-class-breaks-renderer");const o={...e};o.symbolType=o.symbolType||"2d",o.defaultSymbolEnabled??=!0,o.classificationMethod??="equal-interval",o.normalizationType=P(o);const i=e.forBinning?D:L,a=A(o.layer,i,e.forBinning);if(!a)throw new r("color-class-breaks-renderer:invalid-parameters","'layer' must be one of these types: "+G(i).join(", "));o.layer=a;if(!(null!=o.minValue&&null!=o.maxValue)&&(null!=o.minValue||null!=o.maxValue))throw new r("color-class-breaks-renderer:missing-parameters","Both 'minValue' and 'maxValue' are required when specifying custom data range");const n=null!=o.signal?{signal:o.signal}:null;await a.load(n);const l=a.geometryType;if(o.outlineOptimizationEnabled="polygon"===l&&o.outlineOptimizationEnabled,"mesh"===l)o.symbolType="3d-volumetric",o.colorMixMode=o.colorMixMode||"replace",o.edgesType=o.edgesType||"none";else{if("3d-volumetric-uniform"===o.symbolType&&"point"!==l)throw new r("color-continuous-renderer:not-supported","3d-volumetric-uniform symbols are supported for point layers only");if(o.symbolType.includes("3d-volumetric")&&(!o.view||"3d"!==o.view.type))throw new r("color-class-breaks-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'")}const s=await F({field:o.field,normalizationField:o.normalizationField}),t=T(a,s,"color-class-breaks-renderer:invalid-parameters");if(t)throw t;return o}function Z(e){const o={...e};delete o.basemap,delete o.colorScheme,delete o.legendOptions,delete o.symbolType,delete o.defaultSymbolEnabled,delete o.colorMixMode,delete o.edgesType;const i=o;return i.analyzeData=!(null!=o.minValue&&null!=o.maxValue),i}async function ee(e){if(!e?.layer)throw new r("color-point-cloud-true-color-renderer:missing-parameters","'layer' parameter is required");const o={...e,layer:e.layer},i=[W.PointCloudLayer],a=A(o.layer,i);if(!a)throw new r("color-point-cloud-true-color-renderer:invalid-parameters","'layer' must be one of these types: "+G(i).join(", "));if(o.layer=a,o.density=o.density||25,o.size=o.size||"100%",!x(o.size))throw new r("color-point-cloud-true-color-renderer:invalid-parameters","Invalid 'size' parameter. It should be a string of the form '100%'");const n=null!=o.signal?{signal:o.signal}:null;return await a.load(n),o}async function oe(e){if(!e?.layer||!e.field)throw new r("color-point-cloud-continuous-renderer:missing-parameters","'layer' and 'field' parameters are required");const o=e.field.toLowerCase();if("intensity"!==o&&"elevation"!==o)throw new r("color-point-cloud-continuous-renderer:invalid-parameters","'field' should be either 'intensity' or 'elevation'");const i={...e,layer:e.layer,field:e.field},a=[W.PointCloudLayer],n=A(i.layer,a);if(!n)throw new r("color-point-cloud-continuous-renderer:invalid-parameters","'layer' must be one of these types: "+G(a).join(", "));if(i.layer=n,i.density=i.density||25,i.size=i.size||"100%",!x(i.size))throw new r("color-point-cloud-continuous-renderer:invalid-parameters","Invalid 'size' parameter. It should be a string of the form '100%'");const l=null!=i.signal?{signal:i.signal}:null;return await n.load(l),i}function ie(e){const o={...e},i=!!o.symbolType?.includes("3d-volumetric");delete o.symbolType,delete o.defaultSymbolEnabled,delete o.colorMixMode,delete o.edgesType;const r=o;return r.worldScale=i,r}async function re(e){if(!(e&&e.layer&&e.view&&e.startTime&&e.endTime))throw new r("color-age-renderer:missing-parameters","'layer', 'view', startTime', 'endTime' parameters are required");const o={...e};o.symbolType=o.symbolType||"2d",o.defaultSymbolEnabled??=!0;const i=A(o.layer,L);if(!i)throw new r("color-age-renderer:invalid-parameters","'layer' must be one of these types: "+G(L).join(", "));o.layer=i;const a=null!=o.signal?{signal:o.signal}:null;await i.load(a);const n=i.geometryType;if(o.outlineOptimizationEnabled="polygon"===n&&o.outlineOptimizationEnabled,o.sizeOptimizationEnabled=("point"===n||"multipoint"===n||"polyline"===n)&&o.sizeOptimizationEnabled,"mesh"===n)o.symbolType="3d-volumetric",o.colorMixMode=o.colorMixMode||"replace",o.edgesType=o.edgesType||"none";else if("3d-volumetric-uniform"===o.symbolType&&"point"!==n)throw new r("color-continuous-renderer:not-supported","3d-volumetric-uniform symbols are supported for point layers only");if(o.symbolType.includes("3d-volumetric")&&(!o.view||"3d"!==o.view.type))throw new r("color-age-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'");const l=U(i,o.startTime,o.endTime,"color-age-renderer:invalid-parameters");if(l)throw l;if(o.unit&&!k.includes(o.unit))throw new r("color-age-renderer:invalid-unit",`Supported units are: ${k.join(", ")}`);return o}async function ae(e,o){let i=e.colorScheme,r=null,a=null;const{view:n}=e,l=await O(e.basemap,n);if(r=null!=l.basemapId?l.basemapId:null,a=null!=l.basemapTheme?l.basemapTheme:null,i)return{scheme:$(i),basemapId:r,basemapTheme:a};const s=o||e.theme||J,t=H({theme:s,basemapTheme:a,geometryType:e.geometryType,worldScale:e.worldScale,view:n});if(t)if(r=t.basemapId,a=t.basemapTheme,e.schemeId){const o=s+"/"+r+"/"+e.schemeId;i=_({id:o,geometryType:e.geometryType})}else i=t.primaryScheme;return{scheme:i,basemapId:r,basemapTheme:a}}async function ne(e,o){const i=o.layer,a=await ae({basemap:o.basemap,colorScheme:o.colorScheme,geometryType:i.geometryType,schemeId:"elevation"===o.field.toLowerCase()?"point-cloud-elevation-scheme":"point-cloud-intensity-scheme"}),n=a.scheme;if(!n)throw new r("color-point-cloud-continuous-renderer:insufficient-info","Unable to find color scheme");const l=E(n.colors,N);if(l.length<N)throw new r("color-point-cloud-continuous-renderer:insufficient-info","Color scheme does not have enough colors");const s=V(e,!1,!0),t=s?z(s[0],s[1],5):S(e);return{stops:m({values:t,isDate:!1,colors:l,labelIndexes:[0,2,4]}),basemapId:a.basemapId,basemapTheme:a.basemapTheme,statistics:e,defaultValuesUsed:!!s,colorScheme:$(n)}}async function le(e,o,i,a,n){const{field:l,theme:m}=e,d=await ae({basemap:e.basemap,theme:e.theme,geometryType:a,colorScheme:e.colorScheme,worldScale:e.worldScale,view:e.view}),p=d.scheme;if(!p)throw new r("color-visual-variable:insufficient-info","Unable to find color scheme");const c=E(p.colors,N);if(c.length<N)throw new r("color-visual-variable:insufficient-info","Color scheme does not have enough colors");const y=p.id.includes("seq-"),f=M(o,i,m,n,"90-10"!==m),h=I(f,o,m,y),b=E(c,N),w=new u({field:l,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle,normalizationField:e.normalizationField,stops:h.map(((e,o)=>({value:e,color:b[o]}))),legendOptions:e.legendOptions}),v=new t({type:"color",minSliderValue:null!=e.minValue?e.minValue:o.min,maxSliderValue:null!=e.maxValue?e.maxValue:o.max,theme:p.theme}),g=new s({visualVariables:[v]});return{basemapId:d.basemapId,basemapTheme:d.basemapTheme,visualVariable:w,statistics:o,defaultValuesUsed:f.defaultValuesUsed,colorScheme:$(p),authoringInfo:g}}async function se(e,o,r,n,l,s,t){const m=await a("esri/smartMapping/t9n/smartMapping"),{field:d,defaultSymbolEnabled:u}=t,p=$(e.colorScheme),c=o?.opacity,y=[e.visualVariable.clone()];o?.visualVariables?.length&&y.push(...o.visualVariables.map((e=>e.clone()))),r?.minSize&&y.push(r.minSize);return{renderer:new i({classBreakInfos:[{minValue:-K,maxValue:K,symbol:j(s,{type:t.symbolType,color:p.noDataColor,size:q(p,s),outline:C(p,s,c),meshInfo:{colorMixMode:t.colorMixMode,edgesType:t.edgesType}})}],defaultLabel:u?m.other:null,defaultSymbol:u?j(s,{type:t.symbolType,color:p.noDataColor,size:q(p,s),outline:C(p,s,c),meshInfo:{colorMixMode:t.colorMixMode,edgesType:t.edgesType}}):null,field:d,normalizationType:n,normalizationField:l,valueExpression:t.valueExpression,valueExpressionTitle:t.valueExpressionTitle,visualVariables:y,authoringInfo:e.authoringInfo&&e.authoringInfo.clone()}),visualVariable:e.visualVariable.clone(),statistics:e.statistics,defaultValuesUsed:e.defaultValuesUsed,colorScheme:$(e.colorScheme),basemapId:e.basemapId,basemapTheme:e.basemapTheme}}async function te(e){const o=await Q(e),{view:i,field:r,valueExpression:a,minValue:n,maxValue:s,layer:t,normalizationField:m,signal:d,statistics:u}=o,p=m?"field":void 0,[c,y]=await Promise.all([u??f({layer:t,field:r,valueExpression:a,sqlExpression:o.sqlExpression,sqlWhere:o.sqlWhere,normalizationType:p,normalizationField:m,minValue:n,maxValue:s,view:i,signal:d}),"90-10"===o.theme?h({layer:t,field:r,normalizationField:m,valueExpression:a,classificationMethod:"quantile",minValue:n,maxValue:s,view:i,numClasses:10,signal:d}):null]),b=t,w=r&&"function"!=typeof r?b.getField(r):null;return le(o,c,y?.result,b.geometryType,l(w))}function me(e,o){const i=e.colorsForClassBreaks;let r;if(i&&i.length>0&&(i.some((e=>(e.numClasses===o&&(r=e.colors),!!r))),!r)){const e=i[i.length-1],a=o-e.numClasses;if(a>0){const o=e.colors[e.numClasses-1];r=e.colors.splice(0);for(let e=1;e<=a;e++)r.push(o)}}return r&&(r=E(r,r.length)),r}async function de(e,o){const n=await a("esri/smartMapping/t9n/smartMapping"),l=e.layer,t=e.defaultSymbolEnabled,m=l.geometryType,u=e.classificationMethod,p="standard-deviation"===u,c=await ae({basemap:e.basemap,geometryType:m,theme:p?"above-and-below":null,colorScheme:e.colorScheme,worldScale:!!e.symbolType?.includes("3d-volumetric"),view:e.view}),y=c.scheme,{result:f,outlineResult:h}=o,b=f.classBreakInfos,w=e.normalizationType;if(!y)throw new r("color-class-breaks-renderer:insufficient-info","Unable to find color scheme");const v=me(y,b.length);if(!v||v.length!==b.length)throw new r("color-class-breaks-renderer:insufficient-info","Color scheme does not have enough colors");const g=h?.opacity,T=new i({classBreakInfos:b.map(((o,i)=>({minValue:o.minValue,maxValue:o.maxValue,symbol:j(m,{type:e.symbolType,color:v[i],size:q(y,m),outline:C(y,m,g),meshInfo:{colorMixMode:e.colorMixMode,edgesType:e.edgesType}}),label:o.label}))),defaultLabel:t?n.other:null,defaultSymbol:t?j(m,{type:e.symbolType,color:y.noDataColor,size:q(y,m),outline:C(y,m,g),meshInfo:{colorMixMode:e.colorMixMode,edgesType:e.edgesType}}):null,field:e.field,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle,normalizationType:w,normalizationField:e.normalizationField,normalizationTotal:"percent-of-total"===w?f.normalizationTotal:void 0,legendOptions:e.legendOptions,authoringInfo:new s({type:"class-breaks-color",classificationMethod:u,standardDeviationInterval:e.standardDeviationInterval})});return p||d({classBreakInfos:T.classBreakInfos,classificationMethod:u,normalizationType:w,round:!0}),h?.visualVariables?.length&&(T.visualVariables=h.visualVariables.map((e=>e.clone()))),{renderer:T,colorScheme:$(y),classBreaksResult:f,defaultValuesUsed:o.defaultValuesUsed,basemapId:c.basemapId,basemapTheme:c.basemapTheme}}async function ue(e){const o=await X(e),{layer:i,view:r,signal:a}=o,[n,l,s]=await Promise.all([te(ie(o)),o.outlineOptimizationEnabled?c({layer:i,view:r,signal:a}).catch(b):null,o.sizeOptimizationEnabled?y({layer:i,view:r,signal:a}).catch(b):null]),t=o.normalizationField;return se(n,l,s,t?"field":void 0,t,i.geometryType,o)}async function pe(e){const o=await Y(e);return de(o,await h(Z(o),o.outlineOptimizationEnabled))}function ce(o){return ee(o).then((o=>({renderer:new e({field:"RGB",pointsPerInch:o.density,pointSizeAlgorithm:w(o.size)})})))}async function ye(e){const i=await oe(e),r=i.statistics??await f({layer:i.layer,field:i.field,signal:i.signal}),a=await ne(r,i);return{renderer:new o({field:i.field,pointsPerInch:i.density,pointSizeAlgorithm:w(i.size),stops:a.stops}),basemapId:a.basemapId,basemapTheme:a.basemapTheme,statistics:a.statistics,defaultValuesUsed:a.defaultValuesUsed,colorScheme:a.colorScheme}}async function fe(e){const o=await a("esri/smartMapping/t9n/smartMapping"),i=await re(e),{defaultSymbolEnabled:r,view:l,startTime:s,endTime:t,symbolType:m,colorMixMode:d,edgesType:u,minValue:f,maxValue:h,signal:w}=i,T=i.layer,[x,E,V]=await Promise.all([i.unit?{unit:i.unit,statistics:null}:p({view:l,layer:T,startTime:s,endTime:t,minValue:f,maxValue:h,signal:w}),i.outlineOptimizationEnabled?c({layer:T,view:l,signal:w}).catch(b):null,i.sizeOptimizationEnabled?y({layer:T,view:l,signal:w}).catch(b):null]),{unit:z,statistics:S}=x,M=B({layer:T,startTime:s,endTime:t,unit:z}).valueExpression,I=n(o[`ageInfo_${z}`],{unit:z,startTime:v(s,z,T,l),endTime:v(t,z,T,l)}),j=await te(ie({layer:T,basemap:i.basemap,valueExpression:M,symbolType:m,statistics:S,legendOptions:{title:I},colorScheme:i.colorScheme,theme:i.theme,view:l,minValue:i.minValue,maxValue:i.maxValue,signal:w})),q={layer:T,valueExpression:M,defaultSymbolEnabled:r,symbolType:m,colorMixMode:d,edgesType:u},C=await se(j,E,V,null,null,T.geometryType,q),O=C.renderer.authoringInfo?.visualVariables;return O?.forEach((e=>g(e,s,t,z))),{...C,unit:z}}export{fe as createAgeRenderer,pe as createClassBreaksRenderer,ue as createContinuousRenderer,ye as createPCContinuousRenderer,ce as createPCTrueColorRenderer,te as createVisualVariable};
5
+ import"../../renderers/PointCloudClassBreaksRenderer.js";import"../../renderers/PointCloudRenderer.js";import e from"../../renderers/PointCloudRGBRenderer.js";import o from"../../renderers/PointCloudStretchRenderer.js";import"../../renderers/PointCloudUniqueValueRenderer.js";import i from"../../renderers/ClassBreaksRenderer.js";import"../../renderers/DictionaryRenderer.js";import"../../renderers/DotDensityRenderer.js";import"../../renderers/HeatmapRenderer.js";import"../../renderers/PieChartRenderer.js";import"../../renderers/Renderer.js";import"../../renderers/SimpleRenderer.js";import"../../renderers/UniqueValueRenderer.js";import"../../renderers/support/jsonUtils.js";import"../../core/Logger.js";import r from"../../core/Error.js";import{fetchMessageBundle as a}from"../../intl/messages.js";import{substitute as n}from"../../intl/substitute.js";import l from"../../renderers/support/AuthoringInfo.js";import s from"../../renderers/support/AuthoringInfoVisualVariable.js";import{createColorStops as t,setLabelsForClassBreaks as m}from"../../renderers/support/utils.js";import d from"../../renderers/visualVariables/ColorVariable.js";import u from"../heuristics/ageUnit.js";import c from"../heuristics/outline.js";import p from"../heuristics/sizeRange.js";import{getSummaryStatistics as y,getClassBreaks as f,errorCallback as h,getPointSizeAlgorithm as b,formatDate as w,updateAgeRendererAuthoringInfoVV as v,verifyBasicFieldValidity as g,isValidPointSize as T,createColors as x,getDefaultDataRange as E,createDefaultStopValues as V,createStopValues as z,getDataRange as S,createDataValues as M,createSymbol as I,getSymbolSizeFromScheme as j,getSymbolOutlineFromScheme as q,getBasemapInfo as C}from"./support/utils.js";import{getAgeExpressions as O,verifyDates as B,supportedAgeUnits as k}from"../statistics/support/ageUtils.js";import{verifyBinningParams as U}from"../support/binningUtils.js";import{isAnyDateField as R,getFieldsList as F,getNormalizationType as P}from"../support/utils.js";import{binningCapableLayerTypes as D,featureCapableLayerTypes as L,createLayerAdapter as A,getLayerTypeLabels as G,LayerType as W}from"../support/adapters/support/layerUtils.js";import{cloneScheme as $,getSchemes as H,getSchemeById as _}from"../symbology/color.js";const J="high-to-low",K=2**53-1,N=5;async function Q(e){if(!(e&&e.layer&&(e.field||e.valueExpression||e.sqlExpression)))throw new r("color-visual-variable:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(e.valueExpression&&!e.sqlExpression&&!e.view)throw new r("color-visual-variable:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&U(e,"color-visual-variable");const o={...e};if("90-10"===o.theme)throw new r("color-visual-variable:not-supported","Only 'high-to-low', 'above-and-below', 'centered-on', 'extremes', 'above', 'below' themes are supported.");const i=e.forBinning?D:L,a=A(o.layer,i,e.forBinning);if(!a)throw new r("color-visual-variable:invalid-parameters","'layer' must be one of these types: "+G(i).join(", "));o.layer=a;const n=null!=o.signal?{signal:o.signal}:null;await a.load(n);if("mesh"!==a.geometryType&&o.worldScale&&(!o.view||"3d"!==o.view.type))throw new r("color-visual-variable:invalid-parameters","'view' parameter should be an instance of SceneView when 'worldScale' parameter is true");const l=await F({field:o.field,normalizationField:o.normalizationField,valueExpression:o.valueExpression}),s=g(a,l,"color-visual-variable:invalid-parameters");if(s)throw s;return o}async function X(e){if(!(e&&e.layer&&(e.field||e.valueExpression||e.sqlExpression)))throw new r("color-continuous-renderer:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(e.valueExpression&&!e.sqlExpression&&!e.view)throw new r("color-continuous-renderer:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&U(e,"color-continuous-renderer");const o={...e};o.symbolType=o.symbolType||"2d",o.defaultSymbolEnabled??=!0;const i=e.forBinning?D:L,a=A(o.layer,i,e.forBinning);if(!a)throw new r("color-continuous-renderer:invalid-parameters","'layer' must be one of these types: "+G(i).join(", "));o.layer=a;const n=null!=o.signal?{signal:o.signal}:null;await a.load(n);const l=a.geometryType;if(o.outlineOptimizationEnabled="polygon"===l&&o.outlineOptimizationEnabled,o.sizeOptimizationEnabled=("point"===l||"multipoint"===l||"polyline"===l)&&o.sizeOptimizationEnabled,"mesh"===l)o.symbolType="3d-volumetric",o.colorMixMode=o.colorMixMode||"replace",o.edgesType=o.edgesType||"none";else{if("3d-volumetric-uniform"===o.symbolType&&"point"!==l)throw new r("color-continuous-renderer:not-supported","3d-volumetric-uniform symbols are supported for point layers only");if(o.symbolType.includes("3d-volumetric")&&(!o.view||"3d"!==o.view.type))throw new r("color-continuous-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'")}const s=await F({field:o.field,normalizationField:o.normalizationField,valueExpression:o.valueExpression}),t=g(a,s,"color-continuous-renderer:invalid-parameters");if(t)throw t;return o}async function Y(e){if(!e||!e.layer||!e.field&&!e.valueExpression)throw new r("color-class-breaks-renderer:missing-parameters","'layer' and 'field' or 'valueExpression' parameters are required");if(e.valueExpression&&!e.view)throw new r("color-class-breaks-renderer:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&U(e,"color-class-breaks-renderer");const o={...e};o.symbolType=o.symbolType||"2d",o.defaultSymbolEnabled??=!0,o.classificationMethod??="equal-interval",o.normalizationType=P(o);const i=e.forBinning?D:L,a=A(o.layer,i,e.forBinning);if(!a)throw new r("color-class-breaks-renderer:invalid-parameters","'layer' must be one of these types: "+G(i).join(", "));o.layer=a;if(!(null!=o.minValue&&null!=o.maxValue)&&(null!=o.minValue||null!=o.maxValue))throw new r("color-class-breaks-renderer:missing-parameters","Both 'minValue' and 'maxValue' are required when specifying custom data range");const n=null!=o.signal?{signal:o.signal}:null;await a.load(n);const l=a.geometryType;if(o.outlineOptimizationEnabled="polygon"===l&&o.outlineOptimizationEnabled,"mesh"===l)o.symbolType="3d-volumetric",o.colorMixMode=o.colorMixMode||"replace",o.edgesType=o.edgesType||"none";else{if("3d-volumetric-uniform"===o.symbolType&&"point"!==l)throw new r("color-continuous-renderer:not-supported","3d-volumetric-uniform symbols are supported for point layers only");if(o.symbolType.includes("3d-volumetric")&&(!o.view||"3d"!==o.view.type))throw new r("color-class-breaks-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'")}const s=await F({field:o.field,normalizationField:o.normalizationField}),t=g(a,s,"color-class-breaks-renderer:invalid-parameters");if(t)throw t;return o}function Z(e){const o={...e};delete o.basemap,delete o.colorScheme,delete o.legendOptions,delete o.symbolType,delete o.defaultSymbolEnabled,delete o.colorMixMode,delete o.edgesType;const i=o;return i.analyzeData=!(null!=o.minValue&&null!=o.maxValue),i}async function ee(e){if(!e?.layer)throw new r("color-point-cloud-true-color-renderer:missing-parameters","'layer' parameter is required");const o={...e,layer:e.layer},i=[W.PointCloudLayer],a=A(o.layer,i);if(!a)throw new r("color-point-cloud-true-color-renderer:invalid-parameters","'layer' must be one of these types: "+G(i).join(", "));if(o.layer=a,o.density=o.density||25,o.size=o.size||"100%",!T(o.size))throw new r("color-point-cloud-true-color-renderer:invalid-parameters","Invalid 'size' parameter. It should be a string of the form '100%'");const n=null!=o.signal?{signal:o.signal}:null;return await a.load(n),o}async function oe(e){if(!e?.layer||!e.field)throw new r("color-point-cloud-continuous-renderer:missing-parameters","'layer' and 'field' parameters are required");const o=e.field.toLowerCase();if("intensity"!==o&&"elevation"!==o)throw new r("color-point-cloud-continuous-renderer:invalid-parameters","'field' should be either 'intensity' or 'elevation'");const i={...e,layer:e.layer,field:e.field},a=[W.PointCloudLayer],n=A(i.layer,a);if(!n)throw new r("color-point-cloud-continuous-renderer:invalid-parameters","'layer' must be one of these types: "+G(a).join(", "));if(i.layer=n,i.density=i.density||25,i.size=i.size||"100%",!T(i.size))throw new r("color-point-cloud-continuous-renderer:invalid-parameters","Invalid 'size' parameter. It should be a string of the form '100%'");const l=null!=i.signal?{signal:i.signal}:null;return await n.load(l),i}function ie(e){const o={...e},i=!!o.symbolType?.includes("3d-volumetric");delete o.symbolType,delete o.defaultSymbolEnabled,delete o.colorMixMode,delete o.edgesType;const r=o;return r.worldScale=i,r}async function re(e){if(!(e&&e.layer&&e.view&&e.startTime&&e.endTime))throw new r("color-age-renderer:missing-parameters","'layer', 'view', startTime', 'endTime' parameters are required");const o={...e};o.symbolType=o.symbolType||"2d",o.defaultSymbolEnabled??=!0;const i=A(o.layer,L);if(!i)throw new r("color-age-renderer:invalid-parameters","'layer' must be one of these types: "+G(L).join(", "));o.layer=i;const a=null!=o.signal?{signal:o.signal}:null;await i.load(a);const n=i.geometryType;if(o.outlineOptimizationEnabled="polygon"===n&&o.outlineOptimizationEnabled,o.sizeOptimizationEnabled=("point"===n||"multipoint"===n||"polyline"===n)&&o.sizeOptimizationEnabled,"mesh"===n)o.symbolType="3d-volumetric",o.colorMixMode=o.colorMixMode||"replace",o.edgesType=o.edgesType||"none";else if("3d-volumetric-uniform"===o.symbolType&&"point"!==n)throw new r("color-continuous-renderer:not-supported","3d-volumetric-uniform symbols are supported for point layers only");if(o.symbolType.includes("3d-volumetric")&&(!o.view||"3d"!==o.view.type))throw new r("color-age-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'");const l=B(i,o.startTime,o.endTime,"color-age-renderer:invalid-parameters");if(l)throw l;if(o.unit&&!k.includes(o.unit))throw new r("color-age-renderer:invalid-unit",`Supported units are: ${k.join(", ")}`);return o}async function ae(e,o){let i=e.colorScheme,r=null,a=null;const{view:n}=e,l=await C(e.basemap,n);if(r=null!=l.basemapId?l.basemapId:null,a=null!=l.basemapTheme?l.basemapTheme:null,i)return{scheme:$(i),basemapId:r,basemapTheme:a};const s=o||e.theme||J,t=H({theme:s,basemapTheme:a,geometryType:e.geometryType,worldScale:e.worldScale,view:n});if(t)if(r=t.basemapId,a=t.basemapTheme,e.schemeId){const o=s+"/"+r+"/"+e.schemeId;i=_({id:o,geometryType:e.geometryType})}else i=t.primaryScheme;return{scheme:i,basemapId:r,basemapTheme:a}}async function ne(e,o){const i=o.layer,a=await ae({basemap:o.basemap,colorScheme:o.colorScheme,geometryType:i.geometryType,schemeId:"elevation"===o.field.toLowerCase()?"point-cloud-elevation-scheme":"point-cloud-intensity-scheme"}),n=a.scheme;if(!n)throw new r("color-point-cloud-continuous-renderer:insufficient-info","Unable to find color scheme");const l=x(n.colors,N);if(l.length<N)throw new r("color-point-cloud-continuous-renderer:insufficient-info","Color scheme does not have enough colors");const s=E(e,!1,!0),m=s?V(s[0],s[1],5):z(e);return{stops:t({values:m,isDate:!1,colors:l,labelIndexes:[0,2,4]}),basemapId:a.basemapId,basemapTheme:a.basemapTheme,statistics:e,defaultValuesUsed:!!s,colorScheme:$(n)}}async function le(e,o,i,a,n){const{field:t,theme:m}=e,u=await ae({basemap:e.basemap,theme:e.theme,geometryType:a,colorScheme:e.colorScheme,worldScale:e.worldScale,view:e.view}),c=u.scheme;if(!c)throw new r("color-visual-variable:insufficient-info","Unable to find color scheme");const p=x(c.colors,N);if(p.length<N)throw new r("color-visual-variable:insufficient-info","Color scheme does not have enough colors");const y=c.id.includes("seq-"),f=S(o,i,m,n,"90-10"!==m),h=M(f,o,m,y),b=x(p,N),w=new d({field:t,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle,normalizationField:e.normalizationField,stops:h.map(((e,o)=>({value:e,color:b[o]}))),legendOptions:e.legendOptions}),v=new s({type:"color",minSliderValue:null!=e.minValue?e.minValue:o.min,maxSliderValue:null!=e.maxValue?e.maxValue:o.max,theme:c.theme}),g=new l({visualVariables:[v]});return{basemapId:u.basemapId,basemapTheme:u.basemapTheme,visualVariable:w,statistics:o,defaultValuesUsed:f.defaultValuesUsed,colorScheme:$(c),authoringInfo:g}}async function se(e,o,r,n,l,s,t){const m=await a("esri/smartMapping/t9n/smartMapping"),{field:d,defaultSymbolEnabled:u}=t,c=$(e.colorScheme),p=o?.opacity,y=[e.visualVariable.clone()];o?.visualVariables?.length&&y.push(...o.visualVariables.map((e=>e.clone()))),r?.minSize&&y.push(r.minSize);return{renderer:new i({classBreakInfos:[{minValue:-K,maxValue:K,symbol:I(s,{type:t.symbolType,color:c.noDataColor,size:j(c,s),outline:q(c,s,p),meshInfo:{colorMixMode:t.colorMixMode,edgesType:t.edgesType}})}],defaultLabel:u?m.other:null,defaultSymbol:u?I(s,{type:t.symbolType,color:c.noDataColor,size:j(c,s),outline:q(c,s,p),meshInfo:{colorMixMode:t.colorMixMode,edgesType:t.edgesType}}):null,field:d,normalizationType:n,normalizationField:l,valueExpression:t.valueExpression,valueExpressionTitle:t.valueExpressionTitle,visualVariables:y,authoringInfo:e.authoringInfo&&e.authoringInfo.clone()}),visualVariable:e.visualVariable.clone(),statistics:e.statistics,defaultValuesUsed:e.defaultValuesUsed,colorScheme:$(e.colorScheme),basemapId:e.basemapId,basemapTheme:e.basemapTheme}}async function te(e){const o=await Q(e),{view:i,field:r,valueExpression:a,minValue:n,maxValue:l,layer:s,normalizationField:t,signal:m,statistics:d}=o,u=t?"field":void 0,[c,p]=await Promise.all([d??y({layer:s,field:r,valueExpression:a,sqlExpression:o.sqlExpression,sqlWhere:o.sqlWhere,normalizationType:u,normalizationField:t,minValue:n,maxValue:l,view:i,signal:m}),"90-10"===o.theme?f({layer:s,field:r,normalizationField:t,valueExpression:a,classificationMethod:"quantile",minValue:n,maxValue:l,view:i,numClasses:10,signal:m}):null]),h=s,b=r&&"function"!=typeof r?h.getField(r):null;return le(o,c,p?.result,h.geometryType,R(b))}function me(e,o){const i=e.colorsForClassBreaks;let r;if(i&&i.length>0&&(i.some((e=>(e.numClasses===o&&(r=e.colors),!!r))),!r)){const e=i[i.length-1],a=o-e.numClasses;if(a>0){const o=e.colors[e.numClasses-1];r=e.colors.splice(0);for(let e=1;e<=a;e++)r.push(o)}}return r&&(r=x(r,r.length)),r}async function de(e,o){const n=await a("esri/smartMapping/t9n/smartMapping"),s=e.layer,t=e.defaultSymbolEnabled,d=s.geometryType,u=e.classificationMethod,c="standard-deviation"===u,p=await ae({basemap:e.basemap,geometryType:d,theme:c?"above-and-below":null,colorScheme:e.colorScheme,worldScale:!!e.symbolType?.includes("3d-volumetric"),view:e.view}),y=p.scheme,{result:f,outlineResult:h}=o,b=f.classBreakInfos,w=e.normalizationType;if(!y)throw new r("color-class-breaks-renderer:insufficient-info","Unable to find color scheme");const v=me(y,b.length);if(!v||v.length!==b.length)throw new r("color-class-breaks-renderer:insufficient-info","Color scheme does not have enough colors");const g=h?.opacity,T=new i({classBreakInfos:b.map(((o,i)=>({minValue:o.minValue,maxValue:o.maxValue,symbol:I(d,{type:e.symbolType,color:v[i],size:j(y,d),outline:q(y,d,g),meshInfo:{colorMixMode:e.colorMixMode,edgesType:e.edgesType}}),label:o.label}))),defaultLabel:t?n.other:null,defaultSymbol:t?I(d,{type:e.symbolType,color:y.noDataColor,size:j(y,d),outline:q(y,d,g),meshInfo:{colorMixMode:e.colorMixMode,edgesType:e.edgesType}}):null,field:e.field,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle,normalizationType:w,normalizationField:e.normalizationField,normalizationTotal:"percent-of-total"===w?f.normalizationTotal:void 0,legendOptions:e.legendOptions,authoringInfo:new l({type:"class-breaks-color",classificationMethod:u,standardDeviationInterval:e.standardDeviationInterval})});return c||m({classBreakInfos:T.classBreakInfos,classificationMethod:u,normalizationType:w,round:!0}),h?.visualVariables?.length&&(T.visualVariables=h.visualVariables.map((e=>e.clone()))),{renderer:T,colorScheme:$(y),classBreaksResult:f,defaultValuesUsed:o.defaultValuesUsed,basemapId:p.basemapId,basemapTheme:p.basemapTheme}}async function ue(e){const o=await X(e),{layer:i,view:r,signal:a}=o,[n,l,s]=await Promise.all([te(ie(o)),o.outlineOptimizationEnabled?c({layer:i,view:r,signal:a}).catch(h):null,o.sizeOptimizationEnabled?p({layer:i,view:r,signal:a}).catch(h):null]),t=o.normalizationField;return se(n,l,s,t?"field":void 0,t,i.geometryType,o)}async function ce(e){const o=await Y(e);return de(o,await f(Z(o),o.outlineOptimizationEnabled))}function pe(o){return ee(o).then((o=>({renderer:new e({field:"RGB",pointsPerInch:o.density,pointSizeAlgorithm:b(o.size)})})))}async function ye(e){const i=await oe(e),r=i.statistics??await y({layer:i.layer,field:i.field,signal:i.signal}),a=await ne(r,i);return{renderer:new o({field:i.field,pointsPerInch:i.density,pointSizeAlgorithm:b(i.size),stops:a.stops}),basemapId:a.basemapId,basemapTheme:a.basemapTheme,statistics:a.statistics,defaultValuesUsed:a.defaultValuesUsed,colorScheme:a.colorScheme}}async function fe(e){const o=await a("esri/smartMapping/t9n/smartMapping"),i=await re(e),{defaultSymbolEnabled:r,view:l,startTime:s,endTime:t,symbolType:m,colorMixMode:d,edgesType:y,minValue:f,maxValue:b,signal:g}=i,T=i.layer,[x,E,V]=await Promise.all([i.unit?{unit:i.unit,statistics:null}:u({view:l,layer:T,startTime:s,endTime:t,minValue:f,maxValue:b,signal:g}),i.outlineOptimizationEnabled?c({layer:T,view:l,signal:g}).catch(h):null,i.sizeOptimizationEnabled?p({layer:T,view:l,signal:g}).catch(h):null]),{unit:z,statistics:S}=x,M=O({layer:T,startTime:s,endTime:t,unit:z}).valueExpression,I=n(o[`ageInfo_${z}`],{unit:z,startTime:w(s,z,T,l),endTime:w(t,z,T,l)}),j=await te(ie({layer:T,basemap:i.basemap,valueExpression:M,symbolType:m,statistics:S,legendOptions:{title:I},colorScheme:i.colorScheme,theme:i.theme,view:l,minValue:i.minValue,maxValue:i.maxValue,signal:g})),q={layer:T,valueExpression:M,defaultSymbolEnabled:r,symbolType:m,colorMixMode:d,edgesType:y},C=await se(j,E,V,null,null,T.geometryType,q),B=C.renderer.authoringInfo?.visualVariables;return B?.forEach((e=>v(e,s,t,z))),{...C,unit:z}}export{fe as createAgeRenderer,ce as createClassBreaksRenderer,ue as createContinuousRenderer,ye as createPCContinuousRenderer,pe as createPCTrueColorRenderer,te as createVisualVariable};
@@ -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 i from"../../core/Error.js";import{isDateField as e}from"../../layers/support/fieldUtils.js";import a from"../../renderers/support/AuthoringInfo.js";import r from"../../renderers/support/AuthoringInfoVisualVariable.js";import s from"../../renderers/visualVariables/OpacityVariable.js";import{verifyBasicFieldValidity as l,createStopValues as n,getDefaultDataRange as o}from"./support/utils.js";import t from"../statistics/summaryStatistics.js";import{verifyBinningParams as p}from"../support/binningUtils.js";import{getFieldsList as u}from"../support/utils.js";import{binningCapableLayerTypes as m,featureCapableLayerTypes as f,createLayerAdapter as d,getLayerTypeLabels as v}from"../support/adapters/support/layerUtils.js";async function y(e){if(!e?.layer||!(e.field||e.valueExpression||e.sqlExpression))throw new i("opacity-visual-variable:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(e.valueExpression&&!e.view)throw new i("opacity-visual-variable:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&p(e,"opacity-visual-variable");const a={...e,layer:e.layer},r=e.forBinning?m:f,s=d(a.layer,r,e.forBinning);if(!s)throw new i("opacity-visual-variable:invalid-parameters","'layer' must be one of these types: "+v(r).join(", "));a.layer=s;const n=null!=a.signal?{signal:a.signal}:null;await s.load(n);const o=await u({field:a.field,normalizationField:a.normalizationField,valueExpression:a.valueExpression}),t=l(s,o,"opacity-visual-variable:invalid-parameters");if(t)throw t;return a}function c(i,l){const t=l.layer,p=l.field,u=p&&!("function"==typeof p)?t.getField(p):null,m=e(u),f=n(i),d=o(i,m,!0),v=d||[f[0],f[4]],y=new s({field:p,valueExpression:l.valueExpression,valueExpressionTitle:l.valueExpressionTitle,normalizationField:l.normalizationField,stops:[{value:v[0],opacity:.3},{value:v[1],opacity:1}],legendOptions:l.legendOptions}),c=new r({type:"opacity",minSliderValue:null!=l.minValue?l.minValue:i.min,maxSliderValue:null!=l.maxValue?l.maxValue:i.max}),x=new a({visualVariables:[c]});return Promise.resolve({visualVariable:y,statistics:i,defaultValuesUsed:!!d,authoringInfo:x})}async function x(i){const e=await y(i);let a=null;return a=e.statistics?e.statistics:await t({layer:e.layer,field:e.field,valueExpression:e.valueExpression,sqlExpression:e.sqlExpression,sqlWhere:e.sqlWhere,normalizationType:e.normalizationField?"field":void 0,normalizationField:e.normalizationField,minValue:e.minValue,maxValue:e.maxValue,view:e.view,signal:e.signal}),c(a,e)}export{x as createVisualVariable};
5
+ import i from"../../core/Error.js";import e from"../../renderers/support/AuthoringInfo.js";import a from"../../renderers/support/AuthoringInfoVisualVariable.js";import r from"../../renderers/visualVariables/OpacityVariable.js";import{verifyBasicFieldValidity as s,createStopValues as l,getDefaultDataRange as n}from"./support/utils.js";import o from"../statistics/summaryStatistics.js";import{verifyBinningParams as t}from"../support/binningUtils.js";import{getFieldsList as u,isAnyDateField as p}from"../support/utils.js";import{binningCapableLayerTypes as m,featureCapableLayerTypes as f,createLayerAdapter as d,getLayerTypeLabels as v}from"../support/adapters/support/layerUtils.js";async function c(e){if(!e?.layer||!(e.field||e.valueExpression||e.sqlExpression))throw new i("opacity-visual-variable:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(e.valueExpression&&!e.view)throw new i("opacity-visual-variable:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&t(e,"opacity-visual-variable");const a={...e,layer:e.layer},r=e.forBinning?m:f,l=d(a.layer,r,e.forBinning);if(!l)throw new i("opacity-visual-variable:invalid-parameters","'layer' must be one of these types: "+v(r).join(", "));a.layer=l;const n=null!=a.signal?{signal:a.signal}:null;await l.load(n);const o=await u({field:a.field,normalizationField:a.normalizationField,valueExpression:a.valueExpression}),p=s(l,o,"opacity-visual-variable:invalid-parameters");if(p)throw p;return a}function y(i,s){const o=s.layer,t=s.field,u=t&&!("function"==typeof t)?o.getField(t):null,m=p(u),f=l(i),d=n(i,m,!0),v=d||[f[0],f[4]],c=new r({field:t,valueExpression:s.valueExpression,valueExpressionTitle:s.valueExpressionTitle,normalizationField:s.normalizationField,stops:[{value:v[0],opacity:.3},{value:v[1],opacity:1}],legendOptions:s.legendOptions}),y=new a({type:"opacity",minSliderValue:null!=s.minValue?s.minValue:i.min,maxSliderValue:null!=s.maxValue?s.maxValue:i.max}),x=new e({visualVariables:[y]});return Promise.resolve({visualVariable:c,statistics:i,defaultValuesUsed:!!d,authoringInfo:x})}async function x(i){const e=await c(i);let a=null;return a=e.statistics?e.statistics:await o({layer:e.layer,field:e.field,valueExpression:e.valueExpression,sqlExpression:e.sqlExpression,sqlWhere:e.sqlWhere,normalizationType:e.normalizationField?"field":void 0,normalizationField:e.normalizationField,minValue:e.minValue,maxValue:e.maxValue,view:e.view,signal:e.signal}),y(a,e)}export{x as createVisualVariable};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../renderers/ClassBreaksRenderer.js";import"../../renderers/DictionaryRenderer.js";import"../../renderers/DotDensityRenderer.js";import"../../renderers/HeatmapRenderer.js";import"../../renderers/PieChartRenderer.js";import"../../renderers/Renderer.js";import"../../renderers/SimpleRenderer.js";import"../../renderers/UniqueValueRenderer.js";import"../../renderers/support/jsonUtils.js";import"../../core/Logger.js";import i from"../../core/Error.js";import{toPt as a}from"../../core/screenUtils.js";import{fetchMessageBundle as n}from"../../intl/messages.js";import{substitute as s}from"../../intl/substitute.js";import{isDateField as r}from"../../layers/support/fieldUtils.js";import l from"../../renderers/support/AuthoringInfo.js";import o from"../../renderers/support/AuthoringInfoVisualVariable.js";import{setLabelsForClassBreaks as t}from"../../renderers/support/utils.js";import m from"../../renderers/visualVariables/SizeVariable.js";import{TransformationType as u}from"../../renderers/visualVariables/support/sizeVariableUtils.js";import p from"../heuristics/ageUnit.js";import d from"../heuristics/outline.js";import c from"../heuristics/sizeRange.js";import{getSummaryStatistics as y,getClassBreaks as f,errorCallback as b,formatDate as w,updateAgeRendererAuthoringInfoVV as v,verifyBasicFieldValidity as h,getDataRange as z,getSizeRangeForAxis as g,createSymbol as T,getSymbolOutlineFromScheme as x,getSymbolSizeFromScheme as S,getBasemapInfo as E}from"./support/utils.js";import{getAgeExpressions as V,verifyDates as j,supportedAgeUnits as k}from"../statistics/support/ageUtils.js";import{verifyBinningParams as I}from"../support/binningUtils.js";import{getFieldsList as q,getNormalizationType as O}from"../support/utils.js";import{binningCapableLayerTypes as F,featureCapableLayerTypes as B,createLayerAdapter as U,getLayerTypeLabels as D}from"../support/adapters/support/layerUtils.js";import{cloneScheme as M,getSchemes as R}from"../symbology/size.js";const C=2**53-1;async function A(e){if(!(e&&e.layer&&(e.field||e.valueExpression||e.sqlExpression)))throw new i("size-visual-variable:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(e.valueExpression&&!e.sqlExpression&&!e.view)throw new i("size-visual-variable:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&I(e,"size-visual-variable");const a={...e};if("90-10"===a.theme)throw new i("size-visual-variable:not-supported","Only 'high-to-low', 'above', 'below' themes are supported.");const n=e.forBinning?F:B,s=U(a.layer,n,e.forBinning);if(!s)throw new i("size-visual-variable:invalid-parameters","'layer' must be one of these types: "+D(n).join(", "));a.layer=s,"height"===a.axis&&(a.sizeOptimizationEnabled=!1);const r=null!=a.signal?{signal:a.signal}:null;await s.load(r);const l=s.geometryType;if("mesh"===l)throw new i("size-visual-variable:invalid-parameters","Size visualization is not applicable to layers with 'mesh' geometry type");if(a.worldScale){if("polyline"===l||"polygon"===l)throw new i("size-visual-variable:not-supported","'worldScale' sizing is not supported for polyline and polygon layers");if(!a.view||"3d"!==a.view.type)throw new i("size-visual-variable:invalid-parameters","'view' parameter should be an instance of SceneView when 'worldScale' parameter is true")}const o=await q({field:a.field,normalizationField:a.normalizationField,valueExpression:a.valueExpression}),t=h(s,o,"size-visual-variable:invalid-parameters");if(t)throw t;return a}async function L(e){if(!(e&&e.layer&&(e.field||e.valueExpression||e.sqlExpression)))throw new i("size-continuous-renderer:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(e.valueExpression&&!e.sqlExpression&&!e.view)throw new i("size-continuous-renderer:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&I(e,"size-continuous-renderer");const a={...e};a.symbolType=a.symbolType||"2d",a.defaultSymbolEnabled??=!0;const n=e.forBinning?F:B,s=U(a.layer,n,e.forBinning);if(!s)throw new i("size-continuous-renderer:invalid-parameters","'layer' must be one of these types: "+D(n).join(", "));a.layer=s;const r=null!=a.signal?{signal:a.signal}:null;await s.load(r);const l=s.geometryType,o=a.symbolType.includes("3d");if(a.outlineOptimizationEnabled="polygon"===l&&a.outlineOptimizationEnabled,"mesh"===l)throw new i("size-continuous-renderer:invalid-parameters","Size visualization is not applicable to layers with 'mesh' geometry type");if(o&&("polyline"===l||"polygon"===l))throw new i("size-continuous-renderer:not-supported","3d symbols are not supported for polyline and polygon layers");if(a.symbolType.includes("3d-volumetric")&&(!a.view||"3d"!==a.view.type))throw new i("size-continuous-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform");const t=await q({field:a.field,normalizationField:a.normalizationField,valueExpression:a.valueExpression}),m=h(s,t,"size-continuous-renderer:invalid-parameters");if(m)throw m;return a}async function P(e){if(!e||!e.layer||!e.field&&!e.valueExpression)throw new i("size-class-breaks-renderer:missing-parameters","'layer' and 'field' or 'valueExpression' parameters are required");if(e.valueExpression&&!e.view)throw new i("size-class-breaks-renderer:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&I(e,"size-class-breaks-renderer");const a={...e};a.symbolType=a.symbolType||"2d",a.defaultSymbolEnabled??=!0,a.classificationMethod??="equal-interval",a.normalizationType=O(a);const n=e.forBinning?F:B,s=U(a.layer,n,e.forBinning);if(!s)throw new i("size-class-breaks-renderer:invalid-parameters","'layer' must be one of these types: "+D(n).join(", "));a.layer=s;if(!(null!=a.minValue&&null!=a.maxValue)&&(null!=a.minValue||null!=a.maxValue))throw new i("size-class-breaks-renderer:missing-parameters","Both 'minValue' and 'maxValue' are required when specifying custom data range");const r=null!=a.signal?{signal:a.signal}:null;await s.load(r);const l=s.geometryType,o=a.symbolType.includes("3d");if(a.outlineOptimizationEnabled="polygon"===l&&a.outlineOptimizationEnabled,"mesh"===l)throw new i("size-class-breaks-renderer:invalid-parameters","Size visualization is not applicable to layers with 'mesh' geometry type");if(o&&("polyline"===l||"polygon"===l))throw new i("size-class-breaks-renderer:not-supported","3d symbols are not supported for polyline and polygon layers");if(a.symbolType.includes("3d-volumetric")&&(!a.view||"3d"!==a.view.type))throw new i("size-class-breaks-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform");const t=await q({field:a.field,normalizationField:a.normalizationField}),m=h(s,t,"size-class-breaks-renderer:invalid-parameters");if(m)throw m;return a}function W(e){const i={...e};delete i.basemap,delete i.sizeScheme,delete i.legendOptions,delete i.symbolType,delete i.defaultSymbolEnabled;const a=i;return a.analyzeData=!(null!=i.minValue&&null!=i.maxValue),a}function $(e){const i={...e},a=!!i.symbolType?.includes("3d-volumetric"),n=i;return n.worldScale=a,a&&(n.axis="3d-volumetric-uniform"===i.symbolType?"all":"height"),delete i.symbolType,delete i.defaultSymbolEnabled,n}async function H(e){if(!(e&&e.layer&&e.view&&e.startTime&&e.endTime))throw new i("size-age-renderer:missing-parameters","'layer', 'view', 'startTime', 'endTime' parameters are required");const a={...e};a.symbolType??="2d",a.defaultSymbolEnabled??=!0;const n=U(a.layer,B);if(!n)throw new i("size-age-renderer:invalid-parameters","'layer' must be one of these types: "+D(B).join(", "));a.layer=n;const s=null!=a.signal?{signal:a.signal}:null;await n.load(s);const r=n.geometryType,l=a.symbolType.includes("3d");if(a.outlineOptimizationEnabled="polygon"===r&&a.outlineOptimizationEnabled,"mesh"===r)throw new i("size-age-renderer:invalid-parameters","Size visualization is not applicable to layers with 'mesh' geometry type");if(l&&("polyline"===r||"polygon"===r))throw new i("size-age-renderer:not-supported","3d symbols are not supported for polyline and polygon layers");if(a.symbolType.includes("3d-volumetric")&&(!a.view||"3d"!==a.view.type))throw new i("size-age-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform");const o=j(n,a.startTime,a.endTime,"size-age-renderer:invalid-parameters");if(o)throw o;if(a.unit&&!k.includes(a.unit))throw new i("size-age-renderer:invalid-unit",`Supported units are: ${k.join(", ")}`);return a}async function _(e){let i=e.sizeScheme,a=null,n=null;const s=await E(e.basemap,e.view);if(a=null!=s.basemapId?s.basemapId:null,n=null!=s.basemapTheme?s.basemapTheme:null,i)return{scheme:M(i),basemapId:a,basemapTheme:n};const r=R({basemapTheme:n,geometryType:e.geometryType,worldScale:e.worldScale,view:e.view});return r&&(i=r.primaryScheme,a=r.basemapId,n=r.basemapTheme),{scheme:i,basemapId:a,basemapTheme:n}}function G(e,i){let a;switch(i){case"point":case"multipoint":{const i=e;a=[i.minSize,i.maxSize];break}case"polyline":{const i=e;a=[i.minWidth,i.maxWidth];break}case"polygon":{const i=e;a=[i.marker.minSize,i.marker.maxSize];break}}return a}function J(e,i){e.transformationType===u.ClampedLinear&&"below"===i&&e.flipSizes()}async function K(e,a,n,s){const{theme:t,field:u,normalizationField:p,minValue:d,maxValue:c,axis:y}=e,f=e.layer,b=u&&!("function"==typeof u)?f.getField(u):null,w=r(b),v=f.geometryType,h=await _({basemap:e.basemap,geometryType:v,sizeScheme:e.sizeScheme,worldScale:e.worldScale,view:e.view}),T=h.scheme;if(!T)throw new i("size-visual-variable:insufficient-info","Unable to find size scheme");const x=s&&[s.minSize,s.maxSize]||G(T,v),{minDataValue:S,maxDataValue:E,defaultValuesUsed:V}=z(a,n,t,w,"above"===t||"below"===t),j=[],k="height"===y,I=k?y:void 0,q=x[0];let O=x[1];if(k&&"number"==typeof q&&"number"==typeof O){const e=g({minSize:q,maxSize:O},I);j.push(new m({axis:"width-and-depth",minSize:e.minSize})),O=e.maxSize}const F=new m({field:u,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle,valueUnit:"unknown",normalizationField:p,axis:I,minSize:q,maxSize:O,minDataValue:S,maxDataValue:E,legendOptions:e.legendOptions});J(F,t),j.unshift(F);const B=new o({type:"size",theme:t,minSliderValue:null!=d?d:a.min,maxSliderValue:null!=c?c:a.max}),U=new l({visualVariables:[B]});return{basemapId:h.basemapId,basemapTheme:h.basemapTheme,visualVariables:j,statistics:a,defaultValuesUsed:V,sizeScheme:M(T),authoringInfo:U}}async function N(i,a,s,r,l){const o=await n("esri/smartMapping/t9n/smartMapping"),t=l.layer,m=l.field,u=t.geometryType,p=l.defaultSymbolEnabled,d=M(i.sizeScheme),c="polygon"===u,y=c?d.marker:d,f=c?d.background:null,b=c?"point":u,w=a?.opacity,v=i.visualVariables.map((e=>e.clone()));a?.visualVariables?.length&&v.push(...a.visualVariables.map((e=>e.clone())));return{renderer:new e({backgroundFillSymbol:f&&T(u,{type:l.symbolType,color:f.color,outline:x(f,u,w)}),classBreakInfos:[{minValue:-C,maxValue:C,symbol:T(b,{type:l.symbolType,color:y.color,size:S(y,b),outline:x(y,b,w)})}],defaultLabel:p?o.other:null,defaultSymbol:p?T(b,{type:l.symbolType,color:y.noDataColor,size:S(y,b,!0),outline:x(y,b,w)}):null,field:m,normalizationField:r,normalizationType:s,valueExpression:l.valueExpression,valueExpressionTitle:l.valueExpressionTitle,visualVariables:v,authoringInfo:i.authoringInfo&&i.authoringInfo.clone()}),visualVariables:i.visualVariables.map((e=>e.clone())),statistics:i.statistics,defaultValuesUsed:i.defaultValuesUsed,sizeScheme:M(i.sizeScheme),basemapId:i.basemapId,basemapTheme:i.basemapTheme}}function Q(e,i){const n=a(e.minSize),s=(a(e.maxSize)-n)/(i>=4?i-1:i),r=[];for(let a=0;a<i;a++)r.push(n+s*a);return r}async function X(i,a){const s=await n("esri/smartMapping/t9n/smartMapping"),r=i.layer,o=i.defaultSymbolEnabled,m=r.geometryType,u="polygon"===m,p=i.symbolType?.includes("3d-volumetric"),d=await _({basemap:i.basemap,geometryType:m,sizeScheme:i.sizeScheme,worldScale:p,view:i.view}),c=d.scheme,{result:y,outlineResult:f}=a,b=y?.classBreakInfos??[],w=i.classificationMethod,v=i.normalizationType,h=u?c.marker:c,z=u?c.background:null,E=u?"point":m,V=G(h,E),j=p?g({minSize:V[0],maxSize:V[1]},"height"):null,k=Q({minSize:V[0],maxSize:j?j.maxSize:V[1]},b.length),I=f?.opacity,q=new e({backgroundFillSymbol:z&&T(m,{type:i.symbolType,color:z.color,outline:x(z,m,I)}),classBreakInfos:b.map(((e,a)=>({minValue:e.minValue,maxValue:e.maxValue,symbol:T(E,{type:i.symbolType,color:h.color,size:k[a],widthAndDepth:j&&j.minSize,outline:x(h,E,I)}),label:e.label}))),defaultLabel:o?s.other:null,defaultSymbol:o?T(E,{type:i.symbolType,color:h.noDataColor,size:S(h,E,!0),widthAndDepth:j&&j.minSize,outline:x(h,E,I)}):null,field:i.field,valueExpression:i.valueExpression,valueExpressionTitle:i.valueExpressionTitle,normalizationType:v,normalizationField:i.normalizationField,normalizationTotal:"percent-of-total"===v?y?.normalizationTotal:void 0,legendOptions:i.legendOptions,authoringInfo:new l({type:"class-breaks-size",classificationMethod:w,standardDeviationInterval:i.standardDeviationInterval})});return"standard-deviation"!==w&&t({classBreakInfos:q.classBreakInfos,classificationMethod:w,normalizationType:v,round:!0}),f?.visualVariables?.length&&(q.visualVariables=f.visualVariables.map((e=>e.clone()))),{renderer:q,sizeScheme:M(c),classBreaksResult:y,defaultValuesUsed:!!a.defaultValuesUsed,basemapId:d.basemapId,basemapTheme:d.basemapTheme}}async function Y(e){const i=await A(e),{view:a,field:n,valueExpression:s,minValue:r,maxValue:l,layer:o,normalizationField:t,signal:m,statistics:u}=i,p=t?"field":void 0,[d,w,v]=await Promise.all([u??y({layer:o,field:n,valueExpression:s,sqlExpression:i.sqlExpression,sqlWhere:i.sqlWhere,normalizationType:p,normalizationField:t,minValue:r,maxValue:l,view:a,signal:m}),"90-10"===i.theme?f({layer:o,field:n,normalizationField:t,valueExpression:s,classificationMethod:"quantile",minValue:r,maxValue:l,view:a,numClasses:10,signal:m}):null,i.sizeOptimizationEnabled?c({view:a,layer:o,signal:m}).catch(b):null]);return K(i,d,w?.result,v)}async function Z(e){const i=await L(e),a={layer:i.layer,view:i.view,signal:i.signal},[n,s]=await Promise.all([Y($(i)),i.outlineOptimizationEnabled?d(a).catch(b):null]),r=i.normalizationField;return N(n,s,r?"field":void 0,r,i)}async function ee(e){const i=await P(e);return X(i,await f(W(i),i.outlineOptimizationEnabled))}async function ie(e){const i=await H(e),{defaultSymbolEnabled:a,view:r,startTime:l,endTime:o,symbolType:t,minValue:m,maxValue:u,signal:c}=i,y=i.layer,f={layer:i.layer,view:i.view,signal:c},[h,z]=await Promise.all([i.unit?{unit:i.unit,statistics:null,valueExpression:null}:await p({view:r,layer:y,startTime:l,endTime:o,minValue:m,maxValue:u,signal:c}),i.outlineOptimizationEnabled?d(f).catch(b):null]),{unit:g,statistics:T}=h,x=V({layer:y,startTime:l,endTime:o,unit:g}).valueExpression,S=await n("esri/smartMapping/t9n/smartMapping"),E=s(S[`ageInfo_${g}`],{unit:g,startTime:w(l,g,y,r),endTime:w(o,g,y,r)}),j=await Y($({layer:y,basemap:i.basemap,valueExpression:x,symbolType:t,statistics:T,legendOptions:{title:E},theme:i.theme,sizeScheme:i.sizeScheme,sizeOptimizationEnabled:i.sizeOptimizationEnabled,view:i.view,minValue:m,maxValue:u,signal:c})),k={layer:y,valueExpression:x,defaultSymbolEnabled:a,symbolType:t},I=await N(j,z,null,null,k),q=I.renderer.authoringInfo?.visualVariables;return q?.forEach((e=>v(e,l,o,g))),{...I,unit:g}}export{ie as createAgeRenderer,ee as createClassBreaksRenderer,Z as createContinuousRenderer,Y as createVisualVariables};
5
+ import e from"../../renderers/ClassBreaksRenderer.js";import"../../renderers/DictionaryRenderer.js";import"../../renderers/DotDensityRenderer.js";import"../../renderers/HeatmapRenderer.js";import"../../renderers/PieChartRenderer.js";import"../../renderers/Renderer.js";import"../../renderers/SimpleRenderer.js";import"../../renderers/UniqueValueRenderer.js";import"../../renderers/support/jsonUtils.js";import"../../core/Logger.js";import i from"../../core/Error.js";import{toPt as a}from"../../core/screenUtils.js";import{fetchMessageBundle as n}from"../../intl/messages.js";import{substitute as s}from"../../intl/substitute.js";import r from"../../renderers/support/AuthoringInfo.js";import l from"../../renderers/support/AuthoringInfoVisualVariable.js";import{setLabelsForClassBreaks as o}from"../../renderers/support/utils.js";import t from"../../renderers/visualVariables/SizeVariable.js";import{TransformationType as m}from"../../renderers/visualVariables/support/sizeVariableUtils.js";import u from"../heuristics/ageUnit.js";import p from"../heuristics/outline.js";import d from"../heuristics/sizeRange.js";import{getSummaryStatistics as c,getClassBreaks as y,errorCallback as f,formatDate as b,updateAgeRendererAuthoringInfoVV as w,verifyBasicFieldValidity as v,getDataRange as h,getSizeRangeForAxis as z,createSymbol as g,getSymbolOutlineFromScheme as T,getSymbolSizeFromScheme as x,getBasemapInfo as S}from"./support/utils.js";import{getAgeExpressions as E,verifyDates as V,supportedAgeUnits as j}from"../statistics/support/ageUtils.js";import{verifyBinningParams as k}from"../support/binningUtils.js";import{getFieldsList as I,getNormalizationType as q,isAnyDateField as O}from"../support/utils.js";import{binningCapableLayerTypes as F,featureCapableLayerTypes as B,createLayerAdapter as U,getLayerTypeLabels as D}from"../support/adapters/support/layerUtils.js";import{cloneScheme as M,getSchemes as R}from"../symbology/size.js";const C=2**53-1;async function A(e){if(!(e&&e.layer&&(e.field||e.valueExpression||e.sqlExpression)))throw new i("size-visual-variable:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(e.valueExpression&&!e.sqlExpression&&!e.view)throw new i("size-visual-variable:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&k(e,"size-visual-variable");const a={...e};if("90-10"===a.theme)throw new i("size-visual-variable:not-supported","Only 'high-to-low', 'above', 'below' themes are supported.");const n=e.forBinning?F:B,s=U(a.layer,n,e.forBinning);if(!s)throw new i("size-visual-variable:invalid-parameters","'layer' must be one of these types: "+D(n).join(", "));a.layer=s,"height"===a.axis&&(a.sizeOptimizationEnabled=!1);const r=null!=a.signal?{signal:a.signal}:null;await s.load(r);const l=s.geometryType;if("mesh"===l)throw new i("size-visual-variable:invalid-parameters","Size visualization is not applicable to layers with 'mesh' geometry type");if(a.worldScale){if("polyline"===l||"polygon"===l)throw new i("size-visual-variable:not-supported","'worldScale' sizing is not supported for polyline and polygon layers");if(!a.view||"3d"!==a.view.type)throw new i("size-visual-variable:invalid-parameters","'view' parameter should be an instance of SceneView when 'worldScale' parameter is true")}const o=await I({field:a.field,normalizationField:a.normalizationField,valueExpression:a.valueExpression}),t=v(s,o,"size-visual-variable:invalid-parameters");if(t)throw t;return a}async function L(e){if(!(e&&e.layer&&(e.field||e.valueExpression||e.sqlExpression)))throw new i("size-continuous-renderer:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(e.valueExpression&&!e.sqlExpression&&!e.view)throw new i("size-continuous-renderer:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&k(e,"size-continuous-renderer");const a={...e};a.symbolType=a.symbolType||"2d",a.defaultSymbolEnabled??=!0;const n=e.forBinning?F:B,s=U(a.layer,n,e.forBinning);if(!s)throw new i("size-continuous-renderer:invalid-parameters","'layer' must be one of these types: "+D(n).join(", "));a.layer=s;const r=null!=a.signal?{signal:a.signal}:null;await s.load(r);const l=s.geometryType,o=a.symbolType.includes("3d");if(a.outlineOptimizationEnabled="polygon"===l&&a.outlineOptimizationEnabled,"mesh"===l)throw new i("size-continuous-renderer:invalid-parameters","Size visualization is not applicable to layers with 'mesh' geometry type");if(o&&("polyline"===l||"polygon"===l))throw new i("size-continuous-renderer:not-supported","3d symbols are not supported for polyline and polygon layers");if(a.symbolType.includes("3d-volumetric")&&(!a.view||"3d"!==a.view.type))throw new i("size-continuous-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform");const t=await I({field:a.field,normalizationField:a.normalizationField,valueExpression:a.valueExpression}),m=v(s,t,"size-continuous-renderer:invalid-parameters");if(m)throw m;return a}async function P(e){if(!e||!e.layer||!e.field&&!e.valueExpression)throw new i("size-class-breaks-renderer:missing-parameters","'layer' and 'field' or 'valueExpression' parameters are required");if(e.valueExpression&&!e.view)throw new i("size-class-breaks-renderer:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&k(e,"size-class-breaks-renderer");const a={...e};a.symbolType=a.symbolType||"2d",a.defaultSymbolEnabled??=!0,a.classificationMethod??="equal-interval",a.normalizationType=q(a);const n=e.forBinning?F:B,s=U(a.layer,n,e.forBinning);if(!s)throw new i("size-class-breaks-renderer:invalid-parameters","'layer' must be one of these types: "+D(n).join(", "));a.layer=s;if(!(null!=a.minValue&&null!=a.maxValue)&&(null!=a.minValue||null!=a.maxValue))throw new i("size-class-breaks-renderer:missing-parameters","Both 'minValue' and 'maxValue' are required when specifying custom data range");const r=null!=a.signal?{signal:a.signal}:null;await s.load(r);const l=s.geometryType,o=a.symbolType.includes("3d");if(a.outlineOptimizationEnabled="polygon"===l&&a.outlineOptimizationEnabled,"mesh"===l)throw new i("size-class-breaks-renderer:invalid-parameters","Size visualization is not applicable to layers with 'mesh' geometry type");if(o&&("polyline"===l||"polygon"===l))throw new i("size-class-breaks-renderer:not-supported","3d symbols are not supported for polyline and polygon layers");if(a.symbolType.includes("3d-volumetric")&&(!a.view||"3d"!==a.view.type))throw new i("size-class-breaks-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform");const t=await I({field:a.field,normalizationField:a.normalizationField}),m=v(s,t,"size-class-breaks-renderer:invalid-parameters");if(m)throw m;return a}function W(e){const i={...e};delete i.basemap,delete i.sizeScheme,delete i.legendOptions,delete i.symbolType,delete i.defaultSymbolEnabled;const a=i;return a.analyzeData=!(null!=i.minValue&&null!=i.maxValue),a}function $(e){const i={...e},a=!!i.symbolType?.includes("3d-volumetric"),n=i;return n.worldScale=a,a&&(n.axis="3d-volumetric-uniform"===i.symbolType?"all":"height"),delete i.symbolType,delete i.defaultSymbolEnabled,n}async function H(e){if(!(e&&e.layer&&e.view&&e.startTime&&e.endTime))throw new i("size-age-renderer:missing-parameters","'layer', 'view', 'startTime', 'endTime' parameters are required");const a={...e};a.symbolType??="2d",a.defaultSymbolEnabled??=!0;const n=U(a.layer,B);if(!n)throw new i("size-age-renderer:invalid-parameters","'layer' must be one of these types: "+D(B).join(", "));a.layer=n;const s=null!=a.signal?{signal:a.signal}:null;await n.load(s);const r=n.geometryType,l=a.symbolType.includes("3d");if(a.outlineOptimizationEnabled="polygon"===r&&a.outlineOptimizationEnabled,"mesh"===r)throw new i("size-age-renderer:invalid-parameters","Size visualization is not applicable to layers with 'mesh' geometry type");if(l&&("polyline"===r||"polygon"===r))throw new i("size-age-renderer:not-supported","3d symbols are not supported for polyline and polygon layers");if(a.symbolType.includes("3d-volumetric")&&(!a.view||"3d"!==a.view.type))throw new i("size-age-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform");const o=V(n,a.startTime,a.endTime,"size-age-renderer:invalid-parameters");if(o)throw o;if(a.unit&&!j.includes(a.unit))throw new i("size-age-renderer:invalid-unit",`Supported units are: ${j.join(", ")}`);return a}async function _(e){let i=e.sizeScheme,a=null,n=null;const s=await S(e.basemap,e.view);if(a=null!=s.basemapId?s.basemapId:null,n=null!=s.basemapTheme?s.basemapTheme:null,i)return{scheme:M(i),basemapId:a,basemapTheme:n};const r=R({basemapTheme:n,geometryType:e.geometryType,worldScale:e.worldScale,view:e.view});return r&&(i=r.primaryScheme,a=r.basemapId,n=r.basemapTheme),{scheme:i,basemapId:a,basemapTheme:n}}function G(e,i){let a;switch(i){case"point":case"multipoint":{const i=e;a=[i.minSize,i.maxSize];break}case"polyline":{const i=e;a=[i.minWidth,i.maxWidth];break}case"polygon":{const i=e;a=[i.marker.minSize,i.marker.maxSize];break}}return a}function J(e,i){e.transformationType===m.ClampedLinear&&"below"===i&&e.flipSizes()}async function K(e,a,n,s){const{theme:o,field:m,normalizationField:u,minValue:p,maxValue:d,axis:c}=e,y=e.layer,f=m&&!("function"==typeof m)?y.getField(m):null,b=O(f),w=y.geometryType,v=await _({basemap:e.basemap,geometryType:w,sizeScheme:e.sizeScheme,worldScale:e.worldScale,view:e.view}),g=v.scheme;if(!g)throw new i("size-visual-variable:insufficient-info","Unable to find size scheme");const T=s&&[s.minSize,s.maxSize]||G(g,w),{minDataValue:x,maxDataValue:S,defaultValuesUsed:E}=h(a,n,o,b,"above"===o||"below"===o),V=[],j="height"===c,k=j?c:void 0,I=T[0];let q=T[1];if(j&&"number"==typeof I&&"number"==typeof q){const e=z({minSize:I,maxSize:q},k);V.push(new t({axis:"width-and-depth",minSize:e.minSize})),q=e.maxSize}const F=new t({field:m,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle,valueUnit:"unknown",normalizationField:u,axis:k,minSize:I,maxSize:q,minDataValue:x,maxDataValue:S,legendOptions:e.legendOptions});J(F,o),V.unshift(F);const B=new l({type:"size",theme:o,minSliderValue:null!=p?p:a.min,maxSliderValue:null!=d?d:a.max}),U=new r({visualVariables:[B]});return{basemapId:v.basemapId,basemapTheme:v.basemapTheme,visualVariables:V,statistics:a,defaultValuesUsed:E,sizeScheme:M(g),authoringInfo:U}}async function N(i,a,s,r,l){const o=await n("esri/smartMapping/t9n/smartMapping"),t=l.layer,m=l.field,u=t.geometryType,p=l.defaultSymbolEnabled,d=M(i.sizeScheme),c="polygon"===u,y=c?d.marker:d,f=c?d.background:null,b=c?"point":u,w=a?.opacity,v=i.visualVariables.map((e=>e.clone()));a?.visualVariables?.length&&v.push(...a.visualVariables.map((e=>e.clone())));return{renderer:new e({backgroundFillSymbol:f&&g(u,{type:l.symbolType,color:f.color,outline:T(f,u,w)}),classBreakInfos:[{minValue:-C,maxValue:C,symbol:g(b,{type:l.symbolType,color:y.color,size:x(y,b),outline:T(y,b,w)})}],defaultLabel:p?o.other:null,defaultSymbol:p?g(b,{type:l.symbolType,color:y.noDataColor,size:x(y,b,!0),outline:T(y,b,w)}):null,field:m,normalizationField:r,normalizationType:s,valueExpression:l.valueExpression,valueExpressionTitle:l.valueExpressionTitle,visualVariables:v,authoringInfo:i.authoringInfo&&i.authoringInfo.clone()}),visualVariables:i.visualVariables.map((e=>e.clone())),statistics:i.statistics,defaultValuesUsed:i.defaultValuesUsed,sizeScheme:M(i.sizeScheme),basemapId:i.basemapId,basemapTheme:i.basemapTheme}}function Q(e,i){const n=a(e.minSize),s=(a(e.maxSize)-n)/(i>=4?i-1:i),r=[];for(let a=0;a<i;a++)r.push(n+s*a);return r}async function X(i,a){const s=await n("esri/smartMapping/t9n/smartMapping"),l=i.layer,t=i.defaultSymbolEnabled,m=l.geometryType,u="polygon"===m,p=i.symbolType?.includes("3d-volumetric"),d=await _({basemap:i.basemap,geometryType:m,sizeScheme:i.sizeScheme,worldScale:p,view:i.view}),c=d.scheme,{result:y,outlineResult:f}=a,b=y?.classBreakInfos??[],w=i.classificationMethod,v=i.normalizationType,h=u?c.marker:c,S=u?c.background:null,E=u?"point":m,V=G(h,E),j=p?z({minSize:V[0],maxSize:V[1]},"height"):null,k=Q({minSize:V[0],maxSize:j?j.maxSize:V[1]},b.length),I=f?.opacity,q=new e({backgroundFillSymbol:S&&g(m,{type:i.symbolType,color:S.color,outline:T(S,m,I)}),classBreakInfos:b.map(((e,a)=>({minValue:e.minValue,maxValue:e.maxValue,symbol:g(E,{type:i.symbolType,color:h.color,size:k[a],widthAndDepth:j&&j.minSize,outline:T(h,E,I)}),label:e.label}))),defaultLabel:t?s.other:null,defaultSymbol:t?g(E,{type:i.symbolType,color:h.noDataColor,size:x(h,E,!0),widthAndDepth:j&&j.minSize,outline:T(h,E,I)}):null,field:i.field,valueExpression:i.valueExpression,valueExpressionTitle:i.valueExpressionTitle,normalizationType:v,normalizationField:i.normalizationField,normalizationTotal:"percent-of-total"===v?y?.normalizationTotal:void 0,legendOptions:i.legendOptions,authoringInfo:new r({type:"class-breaks-size",classificationMethod:w,standardDeviationInterval:i.standardDeviationInterval})});return"standard-deviation"!==w&&o({classBreakInfos:q.classBreakInfos,classificationMethod:w,normalizationType:v,round:!0}),f?.visualVariables?.length&&(q.visualVariables=f.visualVariables.map((e=>e.clone()))),{renderer:q,sizeScheme:M(c),classBreaksResult:y,defaultValuesUsed:!!a.defaultValuesUsed,basemapId:d.basemapId,basemapTheme:d.basemapTheme}}async function Y(e){const i=await A(e),{view:a,field:n,valueExpression:s,minValue:r,maxValue:l,layer:o,normalizationField:t,signal:m,statistics:u}=i,p=t?"field":void 0,[b,w,v]=await Promise.all([u??c({layer:o,field:n,valueExpression:s,sqlExpression:i.sqlExpression,sqlWhere:i.sqlWhere,normalizationType:p,normalizationField:t,minValue:r,maxValue:l,view:a,signal:m}),"90-10"===i.theme?y({layer:o,field:n,normalizationField:t,valueExpression:s,classificationMethod:"quantile",minValue:r,maxValue:l,view:a,numClasses:10,signal:m}):null,i.sizeOptimizationEnabled?d({view:a,layer:o,signal:m}).catch(f):null]);return K(i,b,w?.result,v)}async function Z(e){const i=await L(e),a={layer:i.layer,view:i.view,signal:i.signal},[n,s]=await Promise.all([Y($(i)),i.outlineOptimizationEnabled?p(a).catch(f):null]),r=i.normalizationField;return N(n,s,r?"field":void 0,r,i)}async function ee(e){const i=await P(e);return X(i,await y(W(i),i.outlineOptimizationEnabled))}async function ie(e){const i=await H(e),{defaultSymbolEnabled:a,view:r,startTime:l,endTime:o,symbolType:t,minValue:m,maxValue:d,signal:c}=i,y=i.layer,v={layer:i.layer,view:i.view,signal:c},[h,z]=await Promise.all([i.unit?{unit:i.unit,statistics:null,valueExpression:null}:await u({view:r,layer:y,startTime:l,endTime:o,minValue:m,maxValue:d,signal:c}),i.outlineOptimizationEnabled?p(v).catch(f):null]),{unit:g,statistics:T}=h,x=E({layer:y,startTime:l,endTime:o,unit:g}).valueExpression,S=await n("esri/smartMapping/t9n/smartMapping"),V=s(S[`ageInfo_${g}`],{unit:g,startTime:b(l,g,y,r),endTime:b(o,g,y,r)}),j=await Y($({layer:y,basemap:i.basemap,valueExpression:x,symbolType:t,statistics:T,legendOptions:{title:V},theme:i.theme,sizeScheme:i.sizeScheme,sizeOptimizationEnabled:i.sizeOptimizationEnabled,view:i.view,minValue:m,maxValue:d,signal:c})),k={layer:y,valueExpression:x,defaultSymbolEnabled:a,symbolType:t},I=await N(j,z,null,null,k),q=I.renderer.authoringInfo?.visualVariables;return q?.forEach((e=>w(e,l,o,g))),{...I,unit:g}}export{ie as createAgeRenderer,ee as createClassBreaksRenderer,Z as createContinuousRenderer,Y as createVisualVariables};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../../Color.js";import"../../../symbols.js";import t from"../../../core/Collection.js";import"../../../core/has.js";import n from"../../../core/Error.js";import{formatDate as o,convertDateFormatToIntlOptions as l}from"../../../intl/date.js";import{isDateField as i}from"../../../layers/support/fieldUtils.js";import{round as s}from"../../../renderers/support/numberUtils.js";import r from"../../../renderers/support/pointCloud/PointSizeSplatAlgorithm.js";import a from"../../heuristics/outline.js";import m from"../../statistics/classBreaks.js";import u from"../../statistics/summaryStatistics.js";import{defaultBasemapGroups as c,getBasemapId as f,getBasemapGroup as d}from"../../support/utils.js";import p from"../../../symbols/edges/SketchEdges3D.js";import y from"../../../symbols/edges/SolidEdges3D.js";import{getTimeZoneFormattingOptions as h,shortTimeZoneName as w}from"../../../time/timeZoneUtils.js";import{getBackgroundColorTheme as b}from"../../../views/support/colorUtils.js";import g from"../../../symbols/MeshSymbol3D.js";import D from"../../../symbols/FillSymbol3DLayer.js";import j from"../../../symbols/SimpleFillSymbol.js";import S from"../../../symbols/PolygonSymbol3D.js";import v from"../../../symbols/ExtrudeSymbol3DLayer.js";import x from"../../../symbols/SimpleLineSymbol.js";import z from"../../../symbols/LineSymbol3D.js";import V from"../../../symbols/LineSymbol3DLayer.js";import L from"../../../symbols/PathSymbol3DLayer.js";import U from"../../../symbols/SimpleMarkerSymbol.js";import k from"../../../symbols/PointSymbol3D.js";import T from"../../../symbols/IconSymbol3DLayer.js";import F from"../../../symbols/ObjectSymbol3DLayer.js";const I=/^(\d+(\.\d+)?)\s*(%)$/i,B=[0,0,0,.4],C=new Set(["hours","minutes","seconds"]),M=[...c.light,...c.dark];function P(e,t,n,s){if("string"==typeof e){const t=n.getField(e);if(t&&i(t))return t.alias||t.name}else if("number"==typeof e||e instanceof Date){const i=null!=t&&C.has(t),r=l(i?"short-date-short-time":"short-date");if(s&&i){const{timeZone:t}=h(n.layer,s.timeZone,r,"date");return o(e,{...r,timeZone:t,timeZoneName:w})}return o(e,r)}return e}function Z(e,t,n){return e+t>0&&0>e-t&&n<0?0:e}function E(e,t,n,o,l){const i="90-10"===n&&t?{min:t.classBreakInfos[0].maxValue,max:t.classBreakInfos[t.classBreakInfos.length-1].minValue,avg:null,stddev:null}:e,{avg:s,stddev:r,min:a,max:m}=i,u=A(i,!!o,l??!0);let c=u?u[0]:a,f=u?u[1]:m;return u?{minDataValue:c,maxDataValue:f,defaultValuesUsed:!0}:("above"===n?c=Z(s,r,a):"below"===n&&(f=Z(s,r,a)),{minDataValue:c,maxDataValue:f,defaultValuesUsed:!1})}function A(e,t,n){let o,l;const i=R({statistics:e,isDate:t});return i.defaultValuesUsed?(o=i.min,l=i.max):!n||null!=e.avg&&e.stddev||(o=e.min,l=e.max),null!=o&&null!=l?[o,l]:null}function R(e){let t,n,o=e&&e.statistics;if(o||(o={}),null==o.min)if(e.isDate){const e=Y();t=e[0],n=e[1]}else t=0,n=100;else if(o.min===o.max)if(e.isDate){const e=Y(o.min);t=e[0],n=e[1]}else o.min<0?(t=2*o.min,n=0):o.min>0?(t=0,n=2*o.min):(t=0,n=100);return{min:null!=t?t:o.min,max:null!=n?n:o.max,defaultValuesUsed:null!=t||null!=n}}function Y(e){const t=("number"==typeof e?new Date(e):new Date).getUTCFullYear();let n=Date.UTC(t,0,1,12,0,0,0),o=Date.UTC(t,11,31,12,0,0,0);return"number"==typeof e&&(e<n&&(n=e),e>o&&(o=e)),[n,o]}function N(t,n){const o=[],l=t.length;for(let i=0;i<n;i++)o.push(new e(t[i%l]));return o}function W({minDataValue:e,maxDataValue:t,defaultValuesUsed:n},o,l,i=!0){return n||"above"===l||"below"===l||"90-10"===l?$(e,t,5):G(o,i)}function q(e,t){const{avg:n,stddev:o}=e,l=e.min,i=e.max;if(null==n||null==o){const[n,o]=A(e,t,!0);return $(n,o,5)}const r=Z(n,o,l),a=i-r,m=r-l,u=Math.max(a,m);return s([r-u,r-u/2,r,u/2+r,r+u],{strictBounds:!0})}function O(e,t){const{min:n,max:o}=t,[l,i,r,a,m]=e,u=null!=n&&l<n,c=null!=o&&m>o;if(null==n||null==o||!u&&!c)return e;const f=u?n:l,d=c?o:m;return s([f,u?f+(r-f)/2:i,r,c?r+(d-r)/2:a,d],{strictBounds:!0})}function $(e,t,n){const o=(t-e)/(n-1),l=[e];for(let i=1;i<=n-2;i++)l.push(e+i*o);return l.push(t),s(l,{strictBounds:!0})}function G({min:e,max:t,avg:n,stddev:o},l=!0){if(null==e||null==t||null==n||null==o)return[];let i=n-o,r=n+o;i<e&&(i=e),r>t&&(r=t),l&&(n=i+(r-i)/2);let a=s([i,r],{strictBounds:!0});return i=a[0],r=a[1],a=[i,i+(n-i)/2,n,n+(r-n)/2,r],s(a,{strictBounds:!0})}function H(e,t,n){switch(t){case"point":case"multipoint":return n?"noDataSize"in e?e.noDataSize:null:"size"in e?e.size:null;case"polyline":return n?"noDataWidth"in e?e.noDataWidth:null:"width"in e?e.width:null;case"polygon":return"size"in e?e.size:null;default:return}}function J(e,t,n){switch(t){case"point":case"multipoint":case"polygon":{if(!("outline"in e))return null;const t={color:e.outline.color,width:e.outline.width};if(null!=n&&t.color){const e=t.color.clone();e.a=n,t.color=e}return t}default:return}}function K(e,n){const{type:o,size:l,color:i,outline:s}=n;let r;switch(e){case"point":case"multipoint":if("2d"===o)r=new U({color:i,size:l,outline:{color:s.color,width:s.width}});else if("3d-flat"===o)r=new k({symbolLayers:new t([new T({size:l,resource:{primitive:"circle"},material:{color:i},outline:{color:s.color,size:s.width}})])});else if(o?.includes("3d-volumetric")){const e="3d-volumetric-uniform"===o,s=new F({height:l,resource:{primitive:e?"sphere":"cylinder"},material:{color:i}});e||(s.width=n.widthAndDepth,s.depth=n.widthAndDepth),r=new k({symbolLayers:new t([s])})}break;case"polyline":"2d"===o?r=new x({color:i,width:l}):"3d-flat"===o?r=new z({symbolLayers:new t([new V({size:l,material:{color:i}})])}):"3d-volumetric"===o&&(r=new z({symbolLayers:new t([new L({width:"number"==typeof l?l:parseFloat(l),height:"number"==typeof l?l:parseFloat(l),material:{color:i}})])}));break;case"polygon":"2d"===o?r=new j({color:i,outline:{color:s.color,width:s.width}}):"3d-flat"===o?r=new S({symbolLayers:new t([new D({material:{color:i},outline:{color:s.color,size:s.width}})])}):"3d-volumetric"===o&&(r=new S({symbolLayers:new t([new v({size:l,material:{color:i}})])}));break;case"mesh":{const e=n.meshInfo?.colorMixMode,o=n.meshInfo?.edgesType;r=new g({symbolLayers:new t([new D({material:{color:i,colorMixMode:e||null},edges:"solid"===o?new y({color:B}):"sketch"===o?new p({color:B}):null})])});break}}return r}function Q(e,t,o){const l=X({layer:e,fields:t});if(l.length)return new n(o,"Unknown fields: "+l.join(", ")+". You can only use fields defined in the layer schema");const i=_({layer:e,fields:t});return i.length?new n(o,"Unsupported fields: "+i.join(", ")+". You can only use fields that are accessible to the renderer i.e. FieldUsageInfo.supportsRenderer must be true"):void 0}function X(e){const t=e.layer;return e.fields.filter((e=>!t.getField(e)))}function _(e){const t=e.layer;return e.fields.filter((e=>{const n=t.getFieldUsageInfo(e);return!n||!n.supportsRenderer}))}async function ee(e,t){const n={layer:e.layer,view:e.view,signal:e.signal},[o,l]=await Promise.all([m(e).catch(re),t?a(n).catch(re):null]),i=A({min:o?.minValue,max:o?.maxValue,avg:null,stddev:null},!1,!1);return{result:i?await m({...e,classificationMethod:"equal-interval",numClasses:1,analyzeData:!1,minValue:i[0],maxValue:i[1],normalizationTotal:i[0]+i[1]}):o,defaultValuesUsed:!!i,outlineResult:l}}function te(e){return u(e)}function ne(e,t){let{minSize:n,maxSize:o}=e;if("height"===t){n=((o-n)/2+n)/(2*2.3),o*=2}return{minSize:n,maxSize:o}}function oe(e){return I.test(e)}function le(e){if(null==e)return;const t=e.match(I),n=Number(t[1]);return"%"===t[3]?new r({scaleFactor:n/100}):void 0}function ie(e,t,n,o){e.startTime=t instanceof Date?t.getTime():t,e.endTime=n instanceof Date?n.getTime():n,e.units=o,e.field="string"==typeof t?t:"string"==typeof n?n:null}async function se(e,t){let n=null,o=null;if(!e&&!t)return{basemapId:n,basemapTheme:o};if(t&&(o=await b(t),e||(e=t.map?.basemap)),e&&(n=f(e,M,!1),n&&!o)){const e=d(n);null!=e&&(o=e)}return!n&&o&&(n="dark"===o?"dark-gray":"gray"),{basemapId:n,basemapTheme:o}}function re(e){const t=e.name?.toLowerCase();if(!t||t?.includes(":insufficient-info")||t?.includes(":insufficient-data"))return null;throw e}export{O as clampAboveAndBelowStopValues,N as createColors,W as createDataValues,$ as createDefaultStopValues,G as createStopValues,q as createStopValuesForAboveBelow,K as createSymbol,re as errorCallback,P as formatDate,Z as getBaseValueForAboveBelow,se as getBasemapInfo,ee as getClassBreaks,E as getDataRange,A as getDefaultDataRange,le as getPointSizeAlgorithm,ne as getSizeRangeForAxis,te as getSummaryStatistics,J as getSymbolOutlineFromScheme,H as getSymbolSizeFromScheme,oe as isValidPointSize,ie as updateAgeRendererAuthoringInfoVV,Q as verifyBasicFieldValidity};
5
+ import e from"../../../Color.js";import"../../../symbols.js";import t from"../../../core/Collection.js";import"../../../core/has.js";import n from"../../../core/Error.js";import{formatDate as o,convertDateFormatToIntlOptions as i}from"../../../intl/date.js";import{round as l}from"../../../renderers/support/numberUtils.js";import r from"../../../renderers/support/pointCloud/PointSizeSplatAlgorithm.js";import s from"../../heuristics/outline.js";import a from"../../statistics/classBreaks.js";import m from"../../statistics/summaryStatistics.js";import{defaultBasemapGroups as u,isAnyDateField as c,getBasemapId as f,getBasemapGroup as d}from"../../support/utils.js";import p from"../../../symbols/edges/SketchEdges3D.js";import y from"../../../symbols/edges/SolidEdges3D.js";import{getTimeZoneFormattingOptions as h,shortTimeZoneName as w}from"../../../time/timeZoneUtils.js";import{getBackgroundColorTheme as b}from"../../../views/support/colorUtils.js";import g from"../../../symbols/MeshSymbol3D.js";import D from"../../../symbols/FillSymbol3DLayer.js";import j from"../../../symbols/SimpleFillSymbol.js";import S from"../../../symbols/PolygonSymbol3D.js";import v from"../../../symbols/ExtrudeSymbol3DLayer.js";import x from"../../../symbols/SimpleLineSymbol.js";import z from"../../../symbols/LineSymbol3D.js";import U from"../../../symbols/LineSymbol3DLayer.js";import V from"../../../symbols/PathSymbol3DLayer.js";import k from"../../../symbols/SimpleMarkerSymbol.js";import L from"../../../symbols/PointSymbol3D.js";import T from"../../../symbols/IconSymbol3DLayer.js";import I from"../../../symbols/ObjectSymbol3DLayer.js";const F=/^(\d+(\.\d+)?)\s*(%)$/i,B=[0,0,0,.4],C=new Set(["hours","minutes","seconds"]),M=[...u.light,...u.dark];function Z(e,t,n,l){if("string"==typeof e){const t=n.getField(e);if(t&&c(t))return t.alias||t.name}else if("number"==typeof e||e instanceof Date){const r=null!=t&&C.has(t),s=i(r?"short-date-short-time":"short-date");if(l&&r){const t=n.layer,{timeZone:i}=h("preferredTimeZone"in t?t.preferredTimeZone:null,"datesInUnknownTimezone"in t&&t.datesInUnknownTimezone,l.timeZone,s,"date");return o(e,{...s,timeZone:i,timeZoneName:w})}return o(e,s)}return e}function P(e,t,n){return e+t>0&&0>e-t&&n<0?0:e}function E(e,t,n,o,i){const l="90-10"===n&&t?{min:t.classBreakInfos[0].maxValue,max:t.classBreakInfos[t.classBreakInfos.length-1].minValue,avg:null,stddev:null}:e,{avg:r,stddev:s,min:a,max:m}=l,u=A(l,!!o,i??!0);let c=u?u[0]:a,f=u?u[1]:m;return u?{minDataValue:c,maxDataValue:f,defaultValuesUsed:!0}:("above"===n?c=P(r,s,a):"below"===n&&(f=P(r,s,a)),{minDataValue:c,maxDataValue:f,defaultValuesUsed:!1})}function A(e,t,n){let o,i;const l=R({statistics:e,isDate:t});return l.defaultValuesUsed?(o=l.min,i=l.max):!n||null!=e.avg&&e.stddev||(o=e.min,i=e.max),null!=o&&null!=i?[o,i]:null}function R(e){let t,n,o=e&&e.statistics;if(o||(o={}),null==o.min)if(e.isDate){const e=Y();t=e[0],n=e[1]}else t=0,n=100;else if(o.min===o.max)if(e.isDate){const e=Y(o.min);t=e[0],n=e[1]}else o.min<0?(t=2*o.min,n=0):o.min>0?(t=0,n=2*o.min):(t=0,n=100);return{min:null!=t?t:o.min,max:null!=n?n:o.max,defaultValuesUsed:null!=t||null!=n}}function Y(e){const t=("number"==typeof e?new Date(e):new Date).getUTCFullYear();let n=Date.UTC(t,0,1,12,0,0,0),o=Date.UTC(t,11,31,12,0,0,0);return"number"==typeof e&&(e<n&&(n=e),e>o&&(o=e)),[n,o]}function N(t,n){const o=[],i=t.length;for(let l=0;l<n;l++)o.push(new e(t[l%i]));return o}function W({minDataValue:e,maxDataValue:t,defaultValuesUsed:n},o,i,l=!0){return n||"above"===i||"below"===i||"90-10"===i?$(e,t,5):G(o,l)}function q(e,t){const{avg:n,stddev:o}=e,i=e.min,r=e.max;if(null==n||null==o){const[n,o]=A(e,t,!0);return $(n,o,5)}const s=P(n,o,i),a=r-s,m=s-i,u=Math.max(a,m);return l([s-u,s-u/2,s,u/2+s,s+u],{strictBounds:!0})}function O(e,t){const{min:n,max:o}=t,[i,r,s,a,m]=e,u=null!=n&&i<n,c=null!=o&&m>o;if(null==n||null==o||!u&&!c)return e;const f=u?n:i,d=c?o:m;return l([f,u?f+(s-f)/2:r,s,c?s+(d-s)/2:a,d],{strictBounds:!0})}function $(e,t,n){const o=(t-e)/(n-1),i=[e];for(let l=1;l<=n-2;l++)i.push(e+l*o);return i.push(t),l(i,{strictBounds:!0})}function G({min:e,max:t,avg:n,stddev:o},i=!0){if(null==e||null==t||null==n||null==o)return[];let r=n-o,s=n+o;r<e&&(r=e),s>t&&(s=t),i&&(n=r+(s-r)/2);let a=l([r,s],{strictBounds:!0});return r=a[0],s=a[1],a=[r,r+(n-r)/2,n,n+(s-n)/2,s],l(a,{strictBounds:!0})}function H(e,t,n){switch(t){case"point":case"multipoint":return n?"noDataSize"in e?e.noDataSize:null:"size"in e?e.size:null;case"polyline":return n?"noDataWidth"in e?e.noDataWidth:null:"width"in e?e.width:null;case"polygon":return"size"in e?e.size:null;default:return}}function J(e,t,n){switch(t){case"point":case"multipoint":case"polygon":{if(!("outline"in e))return null;const t={color:e.outline.color,width:e.outline.width};if(null!=n&&t.color){const e=t.color.clone();e.a=n,t.color=e}return t}default:return}}function K(e,n){const{type:o,size:i,color:l,outline:r}=n;let s;switch(e){case"point":case"multipoint":if("2d"===o)s=new k({color:l,size:i,outline:{color:r.color,width:r.width}});else if("3d-flat"===o)s=new L({symbolLayers:new t([new T({size:i,resource:{primitive:"circle"},material:{color:l},outline:{color:r.color,size:r.width}})])});else if(o?.includes("3d-volumetric")){const e="3d-volumetric-uniform"===o,r=new I({height:i,resource:{primitive:e?"sphere":"cylinder"},material:{color:l}});e||(r.width=n.widthAndDepth,r.depth=n.widthAndDepth),s=new L({symbolLayers:new t([r])})}break;case"polyline":"2d"===o?s=new x({color:l,width:i}):"3d-flat"===o?s=new z({symbolLayers:new t([new U({size:i,material:{color:l}})])}):"3d-volumetric"===o&&(s=new z({symbolLayers:new t([new V({width:"number"==typeof i?i:parseFloat(i),height:"number"==typeof i?i:parseFloat(i),material:{color:l}})])}));break;case"polygon":"2d"===o?s=new j({color:l,outline:{color:r.color,width:r.width}}):"3d-flat"===o?s=new S({symbolLayers:new t([new D({material:{color:l},outline:{color:r.color,size:r.width}})])}):"3d-volumetric"===o&&(s=new S({symbolLayers:new t([new v({size:i,material:{color:l}})])}));break;case"mesh":{const e=n.meshInfo?.colorMixMode,o=n.meshInfo?.edgesType;s=new g({symbolLayers:new t([new D({material:{color:l,colorMixMode:e||null},edges:"solid"===o?new y({color:B}):"sketch"===o?new p({color:B}):null})])});break}}return s}function Q(e,t,o){const i=X({layer:e,fields:t});if(i.length)return new n(o,"Unknown fields: "+i.join(", ")+". You can only use fields defined in the layer schema");const l=_({layer:e,fields:t});return l.length?new n(o,"Unsupported fields: "+l.join(", ")+". You can only use fields that are accessible to the renderer i.e. FieldUsageInfo.supportsRenderer must be true"):void 0}function X(e){const t=e.layer;return e.fields.filter((e=>!t.getField(e)))}function _(e){const t=e.layer;return e.fields.filter((e=>{const n=t.getFieldUsageInfo(e);return!n||!n.supportsRenderer}))}async function ee(e,t){const n={layer:e.layer,view:e.view,signal:e.signal},[o,i]=await Promise.all([a(e).catch(se),t?s(n).catch(se):null]),l=A({min:o?.minValue,max:o?.maxValue,avg:null,stddev:null},!1,!1);return{result:l?await a({...e,classificationMethod:"equal-interval",numClasses:1,analyzeData:!1,minValue:l[0],maxValue:l[1],normalizationTotal:l[0]+l[1]}):o,defaultValuesUsed:!!l,outlineResult:i}}function te(e){return m(e)}function ne(e,t){let{minSize:n,maxSize:o}=e;if("height"===t){n=((o-n)/2+n)/(2*2.3),o*=2}return{minSize:n,maxSize:o}}function oe(e){return F.test(e)}function ie(e){if(null==e)return;const t=e.match(F),n=Number(t[1]);return"%"===t[3]?new r({scaleFactor:n/100}):void 0}function le(e,t,n,o){e.startTime=t instanceof Date?t.getTime():t,e.endTime=n instanceof Date?n.getTime():n,e.units=o,e.field="string"==typeof t?t:"string"==typeof n?n:null}async function re(e,t){let n=null,o=null;if(!e&&!t)return{basemapId:n,basemapTheme:o};if(t&&(o=await b(t),e||(e=t.map?.basemap)),e&&(n=f(e,M,!1),n&&!o)){const e=d(n);null!=e&&(o=e)}return!n&&o&&(n="dark"===o?"dark-gray":"gray"),{basemapId:n,basemapTheme:o}}function se(e){const t=e.name?.toLowerCase();if(!t||t?.includes(":insufficient-info")||t?.includes(":insufficient-data"))return null;throw e}export{O as clampAboveAndBelowStopValues,N as createColors,W as createDataValues,$ as createDefaultStopValues,G as createStopValues,q as createStopValuesForAboveBelow,K as createSymbol,se as errorCallback,Z as formatDate,P as getBaseValueForAboveBelow,re as getBasemapInfo,ee as getClassBreaks,E as getDataRange,A as getDefaultDataRange,ie as getPointSizeAlgorithm,ne as getSizeRangeForAxis,te as getSummaryStatistics,J as getSymbolOutlineFromScheme,H as getSymbolSizeFromScheme,oe as isValidPointSize,le as updateAgeRendererAuthoringInfoVV,Q as verifyBasicFieldValidity};
@@ -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"../../renderers/PointCloudClassBreaksRenderer.js";import"../../renderers/PointCloudRenderer.js";import"../../renderers/PointCloudRGBRenderer.js";import"../../renderers/PointCloudStretchRenderer.js";import e from"../../renderers/PointCloudUniqueValueRenderer.js";import"../../renderers/ClassBreaksRenderer.js";import"../../renderers/DictionaryRenderer.js";import"../../renderers/DotDensityRenderer.js";import"../../renderers/HeatmapRenderer.js";import"../../renderers/PieChartRenderer.js";import"../../renderers/Renderer.js";import"../../renderers/SimpleRenderer.js";import r from"../../renderers/UniqueValueRenderer.js";import"../../renderers/support/jsonUtils.js";import"../../core/Logger.js";import l from"../../core/Error.js";import{clone as i}from"../../core/lang.js";import{fetchMessageBundle as s}from"../../intl/messages.js";import{isDateField as o}from"../../layers/support/fieldUtils.js";import{LegendOptions as n}from"../../renderers/support/LegendOptions.js";import{createUniqueValueLabel as t,calculateDateFormatInterval as a}from"../../renderers/support/utils.js";import p from"../heuristics/outline.js";import u from"../heuristics/sizeRange.js";import{errorCallback as d,getPointSizeAlgorithm as m,verifyBasicFieldValidity as c,isValidPointSize as y,createColors as f,getSymbolSizeFromScheme as b,getSymbolOutlineFromScheme as h,createSymbol as v,getBasemapInfo as g}from"./support/utils.js";import w from"../statistics/uniqueValues.js";import{verifyBinningParams as T}from"../support/binningUtils.js";import{getFieldsList as j,fieldDelimiter as E}from"../support/utils.js";import{binningCapableLayerTypes as x,featureCapableLayerTypes as V,createLayerAdapter as z,getLayerTypeLabels as I,LayerType as M}from"../support/adapters/support/layerUtils.js";import{cloneScheme as S,getSchemes as R}from"../symbology/type.js";async function C(e){if(!e?.layer||!e.field&&!e.valueExpression)throw new l("type-renderer:missing-parameters","'layer' and 'field' or 'valueExpression' parameters are required");if(e.valueExpression&&!e.view)throw new l("type-renderer:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&T(e,"type-renderer");const r={...e,layer:e.layer};r.symbolType=r.symbolType||"2d",r.numTypes=null==r.numTypes?10:r.numTypes,r.defaultSymbolEnabled??=!0,r.sortBy??="count",r.sortEnabled??=!0,r.statistics=i(r.statistics);const s=e.forBinning?x:V,o=z(r.layer,s,e.forBinning);if(!o)throw new l("type-renderer:invalid-parameters","'layer' must be one of these types: "+I(s).join(", "));r.layer=o;const n=null!=r.signal?{signal:r.signal}:null;await o.load(n);const t=o.geometryType;if(r.outlineOptimizationEnabled="polygon"===t&&r.outlineOptimizationEnabled,r.sizeOptimizationEnabled=("point"===t||"multipoint"===t||"polyline"===t)&&r.sizeOptimizationEnabled,"mesh"===t)r.symbolType="3d-volumetric",r.colorMixMode=r.colorMixMode||"replace",r.edgesType=r.edgesType||"none";else{if("3d-volumetric-uniform"===r.symbolType&&"point"!==t)throw new l("type-renderer:not-supported","3d-volumetric-uniform symbols are supported for point layers only");if(r.symbolType.includes("3d-volumetric")&&(!r.view||"3d"!==r.view.type))throw new l("type-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'")}const a=await j({field:r.field,field2:r.field2,field3:r.field3,valueExpression:r.valueExpression}),p=c(o,a,"type-renderer:invalid-parameters");if(p)throw p;return r}async function q(e){if(!e?.layer||!e.field)throw new l("type-point-cloud-class-renderer:missing-parameters","'layer' and 'field' parameters are required");const r={...e,layer:e.layer};r.statistics=i(r.statistics);const s=[M.PointCloudLayer],o=z(r.layer,s);if(!o)throw new l("type-point-cloud-class-renderer:invalid-parameters","'layer' must be one of these types: "+I(s).join(", "));if(r.layer=o,r.density=r.density||25,r.size=r.size||"100%",!y(r.size))throw new l("type-point-cloud-class-renderer:invalid-parameters","Invalid 'size' parameter. It should be a string of the form '100%'");const n=null!=r.signal?{signal:r.signal}:null;await o.load(n);const t=await j({field:r.field}),a=c(o,t,"type-point-cloud-class-renderer:invalid-parameters");if(a)throw a;return r}async function O(e){let r=e.typeScheme,l=null,i=null;const s=await g(e.basemap,e.view);if(l=null!=s.basemapId?s.basemapId:null,i=null!=s.basemapTheme?s.basemapTheme:null,r)return{scheme:S(r),basemapId:l,basemapTheme:i};const o=R({basemapTheme:i,geometryType:e.geometryType,theme:e.theme,worldScale:e.worldScale,view:e.view});return o&&(r=o.primaryScheme,l=o.basemapId,i=o.basemapTheme),{scheme:r,basemapId:l,basemapTheme:i}}function P(e,r){let l;return l=e.label<r.label?-1:e.label>r.label?1:0,l}function U(e,r){let l;return l=e.value<r.value?-1:e.value>r.value?1:0,l}function B(e,r){let l=r.count-e.count;return 0===l&&(l=P(e,r)),l}function D(e,r){let l=r.count-e.count;return 0===l&&(l=U(e,r)),l}function L(e,r,l){let i;"count"===r?(i=D,l&&"codedValues"in l&&l.codedValues&&(i=B)):"value"===r&&(i=U,l&&"codedValues"in l&&l.codedValues&&(i=P)),i&&e.sort(i)}async function A(e,l,i,p){const u=await s("esri/smartMapping/t9n/smartMapping"),{field:d,field2:m,field3:c}=l,y=e.uniqueValueInfos,g=l.layer,w=d?g.getField(d):null,T=w?g.getFieldDomain(w.name):null,j=-1===l.numTypes?y.length:l.numTypes,x=g.geometryType,V=await O({basemap:l.basemap,geometryType:x,typeScheme:l.typeScheme,worldScale:!!l.symbolType?.includes("3d-volumetric"),view:l.view}),z=V.scheme,I=new r({field:d,field2:m,field3:c,fieldDelimiter:d&&m?E:null}),M=[],R=[],C={value:null,domain:T,fieldInfo:w};y.forEach(((e,r)=>{C.value=e.value,e.label=t(C);const l=e.value;(null===l||"string"==typeof l&&l.toLowerCase().includes("<null>"))&&M.unshift(r)}));for(const r of M)R.unshift(y.splice(r,1)[0]);if(!1!==l.sortEnabled&&L(y,l.sortBy,T),o(w)){const e=y.filter(((e,r)=>r<j)).map((e=>e.value));C.dateFormatInterval=a(e)}const q=i?.opacity;let P=f(z.colors,y.length);const U=b(z,x),B=h(z,x,q);y.forEach(((e,r)=>{C.value=e.value,e.label=t(C),e.symbol=v(x,{type:l.symbolType,color:P[r],size:U,outline:B,meshInfo:{colorMixMode:l.colorMixMode,edgesType:l.edgesType}})})),l.valueExpression&&(I.valueExpression=l.valueExpression,I.valueExpressionTitle=l.valueExpressionTitle),l.legendOptions&&(I.legendOptions=new n(l.legendOptions)),P=f(z.colors,j);for(let r=0;r<j;r++){const e=y[r];e&&I.addUniqueValueInfo({value:e.value,label:e.label,symbol:v(x,{type:l.symbolType,color:P[r],size:U,outline:B,meshInfo:{colorMixMode:l.colorMixMode,edgesType:l.edgesType}})})}l.defaultSymbolEnabled&&(I.defaultSymbol=v(x,{type:l.symbolType,color:z.noDataColor,size:U,outline:B,meshInfo:{colorMixMode:l.colorMixMode,edgesType:l.edgesType}}),I.defaultLabel=u.other);for(const r of R)r.symbol=v(x,{type:l.symbolType,color:z.noDataColor,size:U,outline:B,meshInfo:{colorMixMode:l.colorMixMode,edgesType:l.edgesType}}),y.push(r);const D=[],A=I.uniqueValueInfos?.length??0,F=A===y.length?-1:A;if(F>-1)for(let r=F;r<y.length;r++)D.push({...y[r]});return i?.visualVariables?.length&&(I.visualVariables=i.visualVariables.map((e=>e.clone()))),p?.minSize&&(I.visualVariables?I.visualVariables.push(p.minSize):I.visualVariables=[p.minSize]),{renderer:I,uniqueValueInfos:y,excludedUniqueValueInfos:D,typeScheme:S(z),basemapId:V.basemapId,basemapTheme:V.basemapTheme}}async function F(e,r){const l=e.uniqueValueInfos,i=await O({basemap:"gray",theme:"point-cloud-class",geometryType:"point",typeScheme:r}),s=i?.scheme,o="point-cloud-class"===s?.theme,n=o?s.colors:f(s?.colors??[],l.length);return L(l,"value"),l.map(((e,r)=>{const l=e.value;let i=null;return o?(i=n[l],i||(i=n[n.length-1])):i=n[r],{values:[l],color:i,label:e.label}}))}async function k(e){const r=await C(e),{layer:l,view:i,signal:s}=r,o={layer:l,field:r.field,field2:r.field2,field3:r.field3,valueExpression:r.valueExpression,returnAllCodedValues:r.returnAllCodedValues,view:i,signal:s},[n,t,a]=await Promise.all([null!=r.statistics?r.statistics:w(o),r.outlineOptimizationEnabled?p({layer:l,view:i,signal:s}).catch(d):null,r.sizeOptimizationEnabled?u({layer:l,view:i,signal:s}).catch(d):null]);return A(n,r,t,a)}async function G(r){const l=await q(r),i=null!=l.statistics?l.statistics:await w({layer:l.layer,field:l.field,signal:l.signal});return{renderer:new e({field:l.field,pointsPerInch:l.density,pointSizeAlgorithm:m(l.size),colorUniqueValueInfos:await F(i,l.typeScheme)})}}export{G as createPCClassRenderer,k as createRenderer};
5
+ import"../../renderers/PointCloudClassBreaksRenderer.js";import"../../renderers/PointCloudRenderer.js";import"../../renderers/PointCloudRGBRenderer.js";import"../../renderers/PointCloudStretchRenderer.js";import e from"../../renderers/PointCloudUniqueValueRenderer.js";import"../../renderers/ClassBreaksRenderer.js";import"../../renderers/DictionaryRenderer.js";import"../../renderers/DotDensityRenderer.js";import"../../renderers/HeatmapRenderer.js";import"../../renderers/PieChartRenderer.js";import"../../renderers/Renderer.js";import"../../renderers/SimpleRenderer.js";import r from"../../renderers/UniqueValueRenderer.js";import"../../renderers/support/jsonUtils.js";import"../../core/Logger.js";import i from"../../core/Error.js";import{clone as n}from"../../core/lang.js";import{fetchMessageBundle as l}from"../../intl/messages.js";import{isTimeOnlyField as o}from"../../layers/support/fieldUtils.js";import{LegendOptions as s}from"../../renderers/support/LegendOptions.js";import{createUniqueValueLabel as t,calculateDateFormatInterval as a,dateFormatIntervalOptions as p}from"../../renderers/support/utils.js";import d from"../heuristics/outline.js";import u from"../heuristics/sizeRange.js";import{errorCallback as m,getPointSizeAlgorithm as c,verifyBasicFieldValidity as y,isValidPointSize as f,createColors as b,getSymbolSizeFromScheme as h,getSymbolOutlineFromScheme as v,createSymbol as g,getBasemapInfo as w}from"./support/utils.js";import T from"../statistics/uniqueValues.js";import{verifyBinningParams as j}from"../support/binningUtils.js";import{getFieldsList as z,fieldDelimiter as E,isAnyDateField as x}from"../support/utils.js";import{binningCapableLayerTypes as I,featureCapableLayerTypes as V,createLayerAdapter as M,getLayerTypeLabels as S,LayerType as R}from"../support/adapters/support/layerUtils.js";import{cloneScheme as C,getSchemes as q}from"../symbology/type.js";async function O(e){if(!e?.layer||!e.field&&!e.valueExpression)throw new i("type-renderer:missing-parameters","'layer' and 'field' or 'valueExpression' parameters are required");if(e.valueExpression&&!e.view)throw new i("type-renderer:missing-parameters","View is required when 'valueExpression' is specified");e.forBinning&&j(e,"type-renderer");const r={...e,layer:e.layer};r.symbolType=r.symbolType||"2d",r.numTypes=null==r.numTypes?10:r.numTypes,r.defaultSymbolEnabled??=!0,r.sortBy??="count",r.sortEnabled??=!0,r.statistics=n(r.statistics);const l=e.forBinning?I:V,o=M(r.layer,l,e.forBinning);if(!o)throw new i("type-renderer:invalid-parameters","'layer' must be one of these types: "+S(l).join(", "));r.layer=o;const s=null!=r.signal?{signal:r.signal}:null;await o.load(s);const t=o.geometryType;if(r.outlineOptimizationEnabled="polygon"===t&&r.outlineOptimizationEnabled,r.sizeOptimizationEnabled=("point"===t||"multipoint"===t||"polyline"===t)&&r.sizeOptimizationEnabled,"mesh"===t)r.symbolType="3d-volumetric",r.colorMixMode=r.colorMixMode||"replace",r.edgesType=r.edgesType||"none";else{if("3d-volumetric-uniform"===r.symbolType&&"point"!==t)throw new i("type-renderer:not-supported","3d-volumetric-uniform symbols are supported for point layers only");if(r.symbolType.includes("3d-volumetric")&&(!r.view||"3d"!==r.view.type))throw new i("type-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'")}const a=await z({field:r.field,field2:r.field2,field3:r.field3,valueExpression:r.valueExpression}),p=y(o,a,"type-renderer:invalid-parameters");if(p)throw p;return r}async function U(e){if(!e?.layer||!e.field)throw new i("type-point-cloud-class-renderer:missing-parameters","'layer' and 'field' parameters are required");const r={...e,layer:e.layer};r.statistics=n(r.statistics);const l=[R.PointCloudLayer],o=M(r.layer,l);if(!o)throw new i("type-point-cloud-class-renderer:invalid-parameters","'layer' must be one of these types: "+S(l).join(", "));if(r.layer=o,r.density=r.density||25,r.size=r.size||"100%",!f(r.size))throw new i("type-point-cloud-class-renderer:invalid-parameters","Invalid 'size' parameter. It should be a string of the form '100%'");const s=null!=r.signal?{signal:r.signal}:null;await o.load(s);const t=await z({field:r.field}),a=y(o,t,"type-point-cloud-class-renderer:invalid-parameters");if(a)throw a;return r}async function P(e){let r=e.typeScheme,i=null,n=null;const l=await w(e.basemap,e.view);if(i=null!=l.basemapId?l.basemapId:null,n=null!=l.basemapTheme?l.basemapTheme:null,r)return{scheme:C(r),basemapId:i,basemapTheme:n};const o=q({basemapTheme:n,geometryType:e.geometryType,theme:e.theme,worldScale:e.worldScale,view:e.view});return o&&(r=o.primaryScheme,i=o.basemapId,n=o.basemapTheme),{scheme:r,basemapId:i,basemapTheme:n}}function B(e,r){let i;return i=e.label<r.label?-1:e.label>r.label?1:0,i}function D(e,r){let i;return i=e.value<r.value?-1:e.value>r.value?1:0,i}function Z(e,r){let i=r.count-e.count;return 0===i&&(i=B(e,r)),i}function k(e,r){let i=r.count-e.count;return 0===i&&(i=D(e,r)),i}function L(e,r,i){let n;"count"===r?(n=k,i&&"codedValues"in i&&i.codedValues&&(n=Z)):"value"===r&&(n=D,i&&"codedValues"in i&&i.codedValues&&(n=B)),n&&e.sort(n)}async function F(e,i,n,d){const u=await l("esri/smartMapping/t9n/smartMapping"),{field:m,field2:c,field3:y}=i,f=e.uniqueValueInfos,w=i.layer,T=m?w.getField(m):null,j=T?w.getFieldDomain(T.name):null,z=-1===i.numTypes?f.length:i.numTypes,I=w.geometryType,V=await P({basemap:i.basemap,geometryType:I,typeScheme:i.typeScheme,worldScale:!!i.symbolType?.includes("3d-volumetric"),view:i.view}),M=V.scheme,S=new r({field:m,field2:c,field3:y,fieldDelimiter:m&&c?E:null}),R=[],q=[],O={value:null,domain:j,fieldInfo:T};f.forEach(((e,r)=>{O.value=e.value,e.label=t(O);const i=e.value;(null===i||"string"==typeof i&&i.toLowerCase().includes("<null>"))&&R.unshift(r)}));for(const r of R)q.unshift(f.splice(r,1)[0]);if(!1!==i.sortEnabled&&L(f,i.sortBy,j),T&&(x(T)||o(T))){const e=f.filter(((e,r)=>r<z)).map((e=>e.value)),r=o(T)?null:a(e),n=r?p[r]:void 0;if(O.dateFormatOptions={fieldType:T.type,format:n},i.view){const e=w.layer;O.dateFormatOptions.timeZoneOptions={layerTimeZone:"preferredTimeZone"in e?e.preferredTimeZone:null,viewTimeZone:i.view.timeZone,datesInUnknownTimezone:"datesInUnknownTimezone"in e&&e.datesInUnknownTimezone}}}const U=n?.opacity;let B=b(M.colors,f.length);const D=h(M,I),Z=v(M,I,U);f.forEach(((e,r)=>{O.value=e.value,e.label=t(O),e.symbol=g(I,{type:i.symbolType,color:B[r],size:D,outline:Z,meshInfo:{colorMixMode:i.colorMixMode,edgesType:i.edgesType}})})),i.valueExpression&&(S.valueExpression=i.valueExpression,S.valueExpressionTitle=i.valueExpressionTitle),i.legendOptions&&(S.legendOptions=new s(i.legendOptions)),B=b(M.colors,z);for(let r=0;r<z;r++){const e=f[r];e&&S.addUniqueValueInfo({value:e.value,label:e.label,symbol:g(I,{type:i.symbolType,color:B[r],size:D,outline:Z,meshInfo:{colorMixMode:i.colorMixMode,edgesType:i.edgesType}})})}i.defaultSymbolEnabled&&(S.defaultSymbol=g(I,{type:i.symbolType,color:M.noDataColor,size:D,outline:Z,meshInfo:{colorMixMode:i.colorMixMode,edgesType:i.edgesType}}),S.defaultLabel=u.other);for(const r of q)r.symbol=g(I,{type:i.symbolType,color:M.noDataColor,size:D,outline:Z,meshInfo:{colorMixMode:i.colorMixMode,edgesType:i.edgesType}}),f.push(r);const k=[],F=S.uniqueValueInfos?.length??0,A=F===f.length?-1:F;if(A>-1)for(let r=A;r<f.length;r++)k.push({...f[r]});return n?.visualVariables?.length&&(S.visualVariables=n.visualVariables.map((e=>e.clone()))),d?.minSize&&(S.visualVariables?S.visualVariables.push(d.minSize):S.visualVariables=[d.minSize]),{renderer:S,uniqueValueInfos:f,excludedUniqueValueInfos:k,typeScheme:C(M),basemapId:V.basemapId,basemapTheme:V.basemapTheme}}async function A(e,r){const i=e.uniqueValueInfos,n=await P({basemap:"gray",theme:"point-cloud-class",geometryType:"point",typeScheme:r}),l=n?.scheme,o="point-cloud-class"===l?.theme,s=o?l.colors:b(l?.colors??[],i.length);return L(i,"value"),i.map(((e,r)=>{const i=e.value;let n=null;return o?(n=s[i],n||(n=s[s.length-1])):n=s[r],{values:[i],color:n,label:e.label}}))}async function G(e){const r=await O(e),{layer:i,view:n,signal:l}=r,o={layer:i,field:r.field,field2:r.field2,field3:r.field3,valueExpression:r.valueExpression,returnAllCodedValues:r.returnAllCodedValues,view:n,signal:l},[s,t,a]=await Promise.all([null!=r.statistics?r.statistics:T(o),r.outlineOptimizationEnabled?d({layer:i,view:n,signal:l}).catch(m):null,r.sizeOptimizationEnabled?u({layer:i,view:n,signal:l}).catch(m):null]);return F(s,r,t,a)}async function H(r){const i=await U(r),n=null!=i.statistics?i.statistics:await T({layer:i.layer,field:i.field,signal:i.signal});return{renderer:new e({field:i.field,pointsPerInch:i.density,pointSizeAlgorithm:c(i.size),colorUniqueValueInfos:await A(n,i.typeScheme)})}}export{H as createPCClassRenderer,G as createRenderer};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../core/Error.js";import{isDateField as i}from"../../layers/support/fieldUtils.js";import o from"../../renderers/support/AuthoringInfo.js";import s from"../../renderers/support/ClassBreakInfo.js";import a from"../../renderers/visualVariables/support/SizeStop.js";import{getSize as n}from"../../renderers/visualVariables/support/visualVariableUtils.js";import{createVisualVariable as l}from"./color.js";import{createVisualVariables as t,createContinuousRenderer as r}from"./size.js";import{verifyBasicFieldValidity as u,createStopValuesForAboveBelow as p,clampAboveAndBelowStopValues as m,createDefaultStopValues as c}from"./support/utils.js";import{verifyBinningParams as d}from"../support/binningUtils.js";import{getFieldsList as v}from"../support/utils.js";import{binningCapableLayerTypes as f,featureCapableLayerTypes as b,createLayerAdapter as y,getLayerTypeLabels as w}from"../support/adapters/support/layerUtils.js";import{getAboveAndBelowSymbols as h}from"../symbology/support/aboveAndBelowUtils.js";import{applyCIMSymbolColor as z}from"../../symbols/support/cimSymbolUtils.js";import{Symbol3DMaterial as g}from"../../symbols/support/Symbol3DMaterial.js";const V=2**53-1;async function O(i){if(!i?.layer||!(i.field||i.valueExpression||i.sqlExpression))throw new e("univariate-colorsize-visual-variables:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(i.valueExpression&&!i.sqlExpression&&!i.view)throw new e("univariate-colorsize-visual-variables:missing-parameters","View is required when 'valueExpression' is specified");if("above-and-below"===i.theme&&i.sizeOptions?.sizeOptimizationEnabled)throw new e("univariate-colorsize-visual-variables:invalid-parameters","sizeOptimizationEnabled cannot be true for 'above-and-below' theme");i.forBinning&&d(i,"univariate-colorsize-visual-variables");const o={...i,layer:i.layer},s=i.forBinning?f:b,a=y(o.layer,s,i.forBinning);if(!a)throw new e("univariate-colorsize-visual-variables:invalid-parameters","'layer' must be one of these types: "+w(s).join(", "));if(o.layer=a,o.theme=o.theme||o.colorOptions?.theme?o.theme:"high-to-low","90-10"===o.theme)throw new e("univariate-colorsize-visual-variables:not-supported","Only 'high-to-low', 'above-and-below', 'above', 'below' themes are supported.");const n=null!=o.signal?{signal:o.signal}:null;await a.load(n);const l=await v({field:o.field,normalizationField:o.normalizationField,valueExpression:o.valueExpression}),t=u(a,l,"univariate-colorsize-visual-variables:invalid-parameters");if(t)throw t;return o}function x(e,i){const o={...e},{sizeOptions:s,theme:a}=o,n=o.legendOptions||o.sizeOptions?.legendOptions;return delete o.sizeOptions,delete o.colorOptions,{...o,...s,statistics:i||o.statistics,theme:"above-and-below"===a?null:a,legendOptions:n}}function E(e,i){const o={...e},s=o.colorOptions,a=o.theme||s?.theme,n=o.legendOptions||o.colorOptions?.legendOptions;return delete o.sizeOptions,delete o.colorOptions,{...o,...s,statistics:i||o.statistics,theme:a,legendOptions:n}}async function S(i){if(!i?.layer||!(i.field||i.valueExpression||i.sqlExpression))throw new e("univariate-colorsize-continuous-renderer:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(i.valueExpression&&!i.sqlExpression&&!i.view)throw new e("univariate-colorsize-continuous-renderer:missing-parameters","View is required when 'valueExpression' is specified");i.forBinning&&d(i,"univariate-colorsize-continuous-renderer");const o={...i,layer:i.layer};o.symbolType=o.symbolType||"2d",o.colorOptions||(o.colorOptions={}),o.colorOptions.isContinuous=o.colorOptions.isContinuous??!1;const s=i.forBinning?f:b,a=y(o.layer,s,i.forBinning);if(!a)throw new e("univariate-colorsize-continuous-renderer:invalid-parameters","'layer' must be one of these types: "+w(s).join(", "));o.layer=a;const n=null!=o.signal?{signal:o.signal}:null;if(await a.load(n),"above-and-below"===o.theme&&o.symbolOptions){if(o.symbolType.includes("3d-volumetric"))throw new e("univariate-colorsize-continuous-renderer:invalid-parameters","'symbolOptions' is applicable for '2d' and '3d-flat' 'symbolType' only");if("point"!==a.geometryType&&"polygon"!==a.geometryType)throw new e("univariate-colorsize-continuous-renderer:invalid-parameters","'symbolOptions' only apply to layers with 'point' or 'polygon' geometryType")}const l=await v({field:o.field,normalizationField:o.normalizationField,valueExpression:o.valueExpression}),t=u(a,l,"univariate-colorsize-continuous-renderer:invalid-parameters");if(t)throw t;return o}function j(e){const i={...e},o={...i.sizeOptions};return delete i.sizeOptions,delete i.colorOptions,delete o.sizeOptimizationEnabled,{...i,...o}}function I(e,i){if("type"in e&&"cim"===e.type)z(e,i);else if("type"in e&&e.type.includes("3d")){e.symbolLayers.forEach((e=>{"material"in e&&null!=e.material&&"color"in e.material&&(e.material?e.material.color=i:e.material=new g({color:i}))}))}else"color"in e&&(e.color=i)}function T(e,i,o){if((i?.symbolStyle||i?.symbols)&&("point"===o||"polygon"===o))return i.symbols||h(i.symbolStyle);const s=e.classBreakInfos[0].symbol;return{above:s.clone(),below:s.clone()}}function q(e,i,o){const a=o.symbolOptions,n=o.layer,l=a?.symbols?"custom":a?.symbolStyle,t=o.colorOptions?.isContinuous;if(B(e,i,t),l||!t){const o=i.size.visualVariables[0].stops,{above:r,below:u}=T(e,a,n.geometryType);if(!t){const e=i.color.colorScheme.colors,o=e[0];I(r,e[e.length-1]),I(u,o)}e.classBreakInfos=[new s({minValue:-V,maxValue:o[2].value,symbol:u}),new s({minValue:o[2].value,maxValue:V,symbol:r})],l&&e.authoringInfo&&(e.authoringInfo.univariateSymbolStyle=l)}}function B(e,i,o=!0){const s=i?.authoringInfo?.clone(),a=i.size.visualVariables.map((e=>e.clone()));o?a.push(i.color.visualVariable.clone()):s.visualVariables=s.visualVariables?.filter((e=>"size"===e.type)),a.push(...e.visualVariables.filter((e=>"target"in e&&"outline"===e.target)).map((e=>e.clone()))),e.authoringInfo=s,e.visualVariables=a}function D(e){const i={...e},o=i.symbolType,s=!!o?.includes("3d-volumetric");delete i.symbolType,delete i.defaultSymbolEnabled;const a=i;return a.worldScale=s,s&&(a.sizeOptions={...a.sizeOptions},a.sizeOptions.axis="3d-volumetric-uniform"===o?"all":"height"),a}async function U(e,i,o,s){const l=i[0],t=i[1],r=Math.round((t-l)/2)+l,u=e.clone();u.stops=[new a({value:o[0],size:t}),new a({value:o[1],size:r}),new a({value:o[2],size:l}),new a({value:o[3],size:r}),new a({value:o[4],size:t})],e.stops=[new a({value:s[0],size:n(u,s[0])}),new a({value:s[1],size:n(u,s[1])}),new a({value:s[2],size:n(u,s[2])}),new a({value:s[3],size:n(u,s[3])}),new a({value:s[4],size:n(u,s[4])})]}async function C(e,i,o,s,a){const n=e.find((e=>"width-and-depth"!==e.axis&&!e.target)),l="number"==typeof n?.minSize?n?.minSize:null,t="number"==typeof n?.maxSize?n?.maxSize:null;if(null!=n?.minDataValue&&null!=l&&null!=t)if(s)if("above-and-below"===s){n.minDataValue=null,n.maxDataValue=null,n.minSize=null,n.maxSize=null;const e=p(o,a),s=m(e,o);await U(n,[l,t],e,s),i.stops.forEach(((e,i)=>e.value=s[i]))}else{const{minDataValue:e,maxDataValue:o}=n,s=c(e,o,5);i.stops.forEach(((e,i)=>e.value=s[i])),n.minDataValue=s[0],n.maxDataValue=s[s.length-1]}else n.minDataValue=i.stops[0].value,n.maxDataValue=i.stops[i.stops.length-1].value}function F(e,i,s){const{theme:a,minValue:n,maxValue:l}=e,t=i.authoringInfo.visualVariables[0].clone(),r=s.authoringInfo.visualVariables[0].clone();if("above-and-below"===a){const e=i.visualVariable.stops;t.minSliderValue=r.minSliderValue=n??e[0].value,t.maxSliderValue=r.maxSliderValue=l??e[e.length-1].value,r.theme="above-and-below"}return new o({type:"univariate-color-size",univariateTheme:a,visualVariables:[t,r]})}async function k(e){const o=await O(e),s=await l(E(o)),{visualVariable:a,statistics:n}=s,r=await t(x(o,n)),u=r.visualVariables,p=e.layer,m=e.field?p.getField(e.field):null;return await C(u,a,n,o.theme,i(m)),{basemapId:r.basemapId,basemapTheme:r.basemapTheme,statistics:n,defaultValuesUsed:s.defaultValuesUsed,color:{visualVariable:a,colorScheme:s.colorScheme},size:{visualVariables:u,sizeScheme:r.sizeScheme},authoringInfo:F(o,s,r)}}async function A(e){return M(e)}async function M(e){const i=await S(e),{renderer:o,statistics:s,defaultValuesUsed:a}=await r(j(i)),n=D(i);n.statistics=s;const l=await k(n);return"above-and-below"===i.theme?q(o,l,i):B(o,l),{renderer:o,statistics:s,defaultValuesUsed:a,color:i.colorOptions?.isContinuous||"above-and-below"!==i.theme?l.color:null,size:l.size,basemapId:l.basemapId,basemapTheme:l.basemapTheme}}export{A as createContinuousRenderer,M as createRenderer,k as createVisualVariables};
5
+ import e from"../../core/Error.js";import i from"../../renderers/support/AuthoringInfo.js";import o from"../../renderers/support/ClassBreakInfo.js";import a from"../../renderers/visualVariables/support/SizeStop.js";import{getSize as s}from"../../renderers/visualVariables/support/visualVariableUtils.js";import{createVisualVariable as n}from"./color.js";import{createVisualVariables as l,createContinuousRenderer as t}from"./size.js";import{verifyBasicFieldValidity as r,createStopValuesForAboveBelow as u,clampAboveAndBelowStopValues as p,createDefaultStopValues as m}from"./support/utils.js";import{verifyBinningParams as c}from"../support/binningUtils.js";import{isAnyDateField as d,getFieldsList as v}from"../support/utils.js";import{binningCapableLayerTypes as f,featureCapableLayerTypes as b,createLayerAdapter as y,getLayerTypeLabels as w}from"../support/adapters/support/layerUtils.js";import{getAboveAndBelowSymbols as h}from"../symbology/support/aboveAndBelowUtils.js";import{applyCIMSymbolColor as z}from"../../symbols/support/cimSymbolUtils.js";import{Symbol3DMaterial as g}from"../../symbols/support/Symbol3DMaterial.js";const V=2**53-1;async function O(i){if(!i?.layer||!(i.field||i.valueExpression||i.sqlExpression))throw new e("univariate-colorsize-visual-variables:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(i.valueExpression&&!i.sqlExpression&&!i.view)throw new e("univariate-colorsize-visual-variables:missing-parameters","View is required when 'valueExpression' is specified");if("above-and-below"===i.theme&&i.sizeOptions?.sizeOptimizationEnabled)throw new e("univariate-colorsize-visual-variables:invalid-parameters","sizeOptimizationEnabled cannot be true for 'above-and-below' theme");i.forBinning&&c(i,"univariate-colorsize-visual-variables");const o={...i,layer:i.layer},a=i.forBinning?f:b,s=y(o.layer,a,i.forBinning);if(!s)throw new e("univariate-colorsize-visual-variables:invalid-parameters","'layer' must be one of these types: "+w(a).join(", "));if(o.layer=s,o.theme=o.theme||o.colorOptions?.theme?o.theme:"high-to-low","90-10"===o.theme)throw new e("univariate-colorsize-visual-variables:not-supported","Only 'high-to-low', 'above-and-below', 'above', 'below' themes are supported.");const n=null!=o.signal?{signal:o.signal}:null;await s.load(n);const l=await v({field:o.field,normalizationField:o.normalizationField,valueExpression:o.valueExpression}),t=r(s,l,"univariate-colorsize-visual-variables:invalid-parameters");if(t)throw t;return o}function x(e,i){const o={...e},{sizeOptions:a,theme:s}=o,n=o.legendOptions||o.sizeOptions?.legendOptions;return delete o.sizeOptions,delete o.colorOptions,{...o,...a,statistics:i||o.statistics,theme:"above-and-below"===s?null:s,legendOptions:n}}function E(e,i){const o={...e},a=o.colorOptions,s=o.theme||a?.theme,n=o.legendOptions||o.colorOptions?.legendOptions;return delete o.sizeOptions,delete o.colorOptions,{...o,...a,statistics:i||o.statistics,theme:s,legendOptions:n}}async function S(i){if(!i?.layer||!(i.field||i.valueExpression||i.sqlExpression))throw new e("univariate-colorsize-continuous-renderer:missing-parameters","'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required");if(i.valueExpression&&!i.sqlExpression&&!i.view)throw new e("univariate-colorsize-continuous-renderer:missing-parameters","View is required when 'valueExpression' is specified");i.forBinning&&c(i,"univariate-colorsize-continuous-renderer");const o={...i,layer:i.layer};o.symbolType=o.symbolType||"2d",o.colorOptions||(o.colorOptions={}),o.colorOptions.isContinuous=o.colorOptions.isContinuous??!1;const a=i.forBinning?f:b,s=y(o.layer,a,i.forBinning);if(!s)throw new e("univariate-colorsize-continuous-renderer:invalid-parameters","'layer' must be one of these types: "+w(a).join(", "));o.layer=s;const n=null!=o.signal?{signal:o.signal}:null;if(await s.load(n),"above-and-below"===o.theme&&o.symbolOptions){if(o.symbolType.includes("3d-volumetric"))throw new e("univariate-colorsize-continuous-renderer:invalid-parameters","'symbolOptions' is applicable for '2d' and '3d-flat' 'symbolType' only");if("point"!==s.geometryType&&"polygon"!==s.geometryType)throw new e("univariate-colorsize-continuous-renderer:invalid-parameters","'symbolOptions' only apply to layers with 'point' or 'polygon' geometryType")}const l=await v({field:o.field,normalizationField:o.normalizationField,valueExpression:o.valueExpression}),t=r(s,l,"univariate-colorsize-continuous-renderer:invalid-parameters");if(t)throw t;return o}function j(e){const i={...e},o={...i.sizeOptions};return delete i.sizeOptions,delete i.colorOptions,delete o.sizeOptimizationEnabled,{...i,...o}}function I(e,i){if("type"in e&&"cim"===e.type)z(e,i);else if("type"in e&&e.type.includes("3d")){e.symbolLayers.forEach((e=>{"material"in e&&null!=e.material&&"color"in e.material&&(e.material?e.material.color=i:e.material=new g({color:i}))}))}else"color"in e&&(e.color=i)}function T(e,i,o){if((i?.symbolStyle||i?.symbols)&&("point"===o||"polygon"===o))return i.symbols||h(i.symbolStyle);const a=e.classBreakInfos[0].symbol;return{above:a.clone(),below:a.clone()}}function q(e,i,a){const s=a.symbolOptions,n=a.layer,l=s?.symbols?"custom":s?.symbolStyle,t=a.colorOptions?.isContinuous;if(B(e,i,t),l||!t){const a=i.size.visualVariables[0].stops,{above:r,below:u}=T(e,s,n.geometryType);if(!t){const e=i.color.colorScheme.colors,o=e[0];I(r,e[e.length-1]),I(u,o)}e.classBreakInfos=[new o({minValue:-V,maxValue:a[2].value,symbol:u}),new o({minValue:a[2].value,maxValue:V,symbol:r})],l&&e.authoringInfo&&(e.authoringInfo.univariateSymbolStyle=l)}}function B(e,i,o=!0){const a=i?.authoringInfo?.clone(),s=i.size.visualVariables.map((e=>e.clone()));o?s.push(i.color.visualVariable.clone()):a.visualVariables=a.visualVariables?.filter((e=>"size"===e.type)),s.push(...e.visualVariables.filter((e=>"target"in e&&"outline"===e.target)).map((e=>e.clone()))),e.authoringInfo=a,e.visualVariables=s}function D(e){const i={...e},o=i.symbolType,a=!!o?.includes("3d-volumetric");delete i.symbolType,delete i.defaultSymbolEnabled;const s=i;return s.worldScale=a,a&&(s.sizeOptions={...s.sizeOptions},s.sizeOptions.axis="3d-volumetric-uniform"===o?"all":"height"),s}async function U(e,i,o,n){const l=i[0],t=i[1],r=Math.round((t-l)/2)+l,u=e.clone();u.stops=[new a({value:o[0],size:t}),new a({value:o[1],size:r}),new a({value:o[2],size:l}),new a({value:o[3],size:r}),new a({value:o[4],size:t})],e.stops=[new a({value:n[0],size:s(u,n[0])}),new a({value:n[1],size:s(u,n[1])}),new a({value:n[2],size:s(u,n[2])}),new a({value:n[3],size:s(u,n[3])}),new a({value:n[4],size:s(u,n[4])})]}async function C(e,i,o,a,s){const n=e.find((e=>"width-and-depth"!==e.axis&&!e.target)),l="number"==typeof n?.minSize?n?.minSize:null,t="number"==typeof n?.maxSize?n?.maxSize:null;if(null!=n?.minDataValue&&null!=l&&null!=t)if(a)if("above-and-below"===a){n.minDataValue=null,n.maxDataValue=null,n.minSize=null,n.maxSize=null;const e=u(o,s),a=p(e,o);await U(n,[l,t],e,a),i.stops.forEach(((e,i)=>e.value=a[i]))}else{const{minDataValue:e,maxDataValue:o}=n,a=m(e,o,5);i.stops.forEach(((e,i)=>e.value=a[i])),n.minDataValue=a[0],n.maxDataValue=a[a.length-1]}else n.minDataValue=i.stops[0].value,n.maxDataValue=i.stops[i.stops.length-1].value}function F(e,o,a){const{theme:s,minValue:n,maxValue:l}=e,t=o.authoringInfo.visualVariables[0].clone(),r=a.authoringInfo.visualVariables[0].clone();if("above-and-below"===s){const e=o.visualVariable.stops;t.minSliderValue=r.minSliderValue=n??e[0].value,t.maxSliderValue=r.maxSliderValue=l??e[e.length-1].value,r.theme="above-and-below"}return new i({type:"univariate-color-size",univariateTheme:s,visualVariables:[t,r]})}async function k(e){const i=await O(e),o=await n(E(i)),{visualVariable:a,statistics:s}=o,t=await l(x(i,s)),r=t.visualVariables,u=e.layer,p=e.field?u.getField(e.field):null;return await C(r,a,s,i.theme,d(p)),{basemapId:t.basemapId,basemapTheme:t.basemapTheme,statistics:s,defaultValuesUsed:o.defaultValuesUsed,color:{visualVariable:a,colorScheme:o.colorScheme},size:{visualVariables:r,sizeScheme:t.sizeScheme},authoringInfo:F(i,o,t)}}async function A(e){return M(e)}async function M(e){const i=await S(e),{renderer:o,statistics:a,defaultValuesUsed:s}=await t(j(i)),n=D(i);n.statistics=a;const l=await k(n);return"above-and-below"===i.theme?q(o,l,i):B(o,l),{renderer:o,statistics:a,defaultValuesUsed:s,color:i.colorOptions?.isContinuous||"above-and-below"!==i.theme?l.color:null,size:l.size,basemapId:l.basemapId,basemapTheme:l.basemapTheme}}export{A as createContinuousRenderer,M as createRenderer,k as createVisualVariables};