@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{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../Graphic.js";import i from"../../../core/Logger.js";import{isAbortError as s}from"../../../core/promiseUtils.js";import{watch as r,syncAndInitial as o,sync as a,initial as n}from"../../../core/reactiveUtils.js";import{property as u}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/arrayUtils.js";import"../../../core/has.js";import{subclass as h}from"../../../core/accessorSupport/decorators/subclass.js";import{hasExcludedVariableOrDimension as l}from"../../../layers/support/rasterDatasets/multidimensionalUtils.js";import c from"../engine/flow/FlowView2D.js";import{LayerView2DMixin as p}from"./LayerView2D.js";import d from"./imagery/ImageryTileView2D.js";import m from"./imagery/VectorFieldTileView2D.js";import{canUseMajorityInterpolationOnDataSource as b}from"./support/util.js";import v from"../../layers/ImageryTileLayerView.js";import w from"../../layers/LayerView.js";import y from"../../layers/RefreshableLayerView.js";let g=class extends(v(y(p(w)))){constructor(){super(...arguments),this._useWebGLForProcessing=!0,this._useProgressiveUpdate=!0,this.subview=null}get useWebGLForProcessing(){return this._useWebGLForProcessing}set useWebGLForProcessing(e){this._useWebGLForProcessing=e,this.subview&&"useWebGLForProcessing"in this.subview&&(this.subview.useWebGLForProcessing=e)}get useProgressiveUpdate(){return this._useWebGLForProcessing}set useProgressiveUpdate(e){this._useProgressiveUpdate=e,this.subview&&"useProgressiveUpdate"in this.subview&&(this.subview.useProgressiveUpdate=e)}get displayParameters(){const{layer:e}=this,t=this._get("displayParameters");return e.renderer?{bandIds:e.bandIds,renderer:e.renderer,interpolation:e.interpolation,multidimensionalDefinition:e.multidimensionalDefinition,rasterFunction:"imagery-tile"===e.type?e.rasterFunction:null}:t}update(e){this.subview?.update(e),this.notifyChange("updating")}isUpdating(){return!this.subview||this.subview.updating}attach(){this.layer.increaseRasterJobHandlerUsage(),this._updateSubview(),this.addAttachHandles([r((()=>this.displayParameters),((e,t)=>{const r=e.interpolation!==t?.interpolation&&("majority"===e.interpolation||"majority"===t?.interpolation)&&b(this.layer),o=e.renderer!==t?.renderer&&this._getSubviewType(t?.renderer)!==this._getSubviewType(e.renderer);o&&this._updateSubview();const a=e.multidimensionalDefinition!==t?.multidimensionalDefinition,n=e.rasterFunction!==t?.rasterFunction,u=n&&!this._useWebGLForProcessing,h=a||r||o||u;this.subview.redrawOrRefetch({refetch:h,reprocess:n}).catch((e=>{s(e)||i.getLogger(this).error(e)})),this.notifyChange("updating")})),r((()=>this.layer.blendMode??"normal"),(e=>{this.subview.container.blendMode=e}),o),r((()=>this.layer.effect??null),(e=>{this.subview.container.effect=e}),o),r((()=>this.layer.multidimensionalSubset??null),((e,t)=>{const{multidimensionalDefinition:r}=this.layer;null!=r&&l(r,e)!==l(r,t)&&(this.subview.redrawOrRefetch({refetch:!0}).catch((e=>{s(e)||i.getLogger(this).error(e)})),this.notifyChange("updating"))}),a),r((()=>this.timeExtent),(()=>{this.subview.timeExtent=this.timeExtent,this.subview.redrawOrRefetch({refetch:!0}).catch((e=>{s(e)||i.getLogger(this).error(e)}))}),n)])}detach(){this.layer.decreaseRasterJobHandlerUsage(),this._detachSubview(this.subview),this.subview?.destroy(),this.subview=null}moveStart(){this.requestUpdate()}viewChange(){this.requestUpdate()}moveEnd(){this.subview.moveEnd()}async hitTest(e,i){return[{type:"graphic",layer:this.layer,mapPoint:e,graphic:new t({attributes:{},geometry:e.clone()})}]}doRefresh(){return this.subview?this.subview.doRefresh():Promise.resolve()}_updateSubview(){const{renderer:e}=this.layer;if(!e)return;const t=this._getSubviewType(e);if(this.subview){if(this.subview.type===t)return void this._attachSubview(this.subview);this._detachSubview(this.subview),this.subview?.destroy(),this.subview=null}const{layer:i}=this;let s;if(s="rasterVF"===t?new m({layer:i,layerView:this}):"flow"===t?new c({layer:i,layerView:this}):new d({layer:i,layerView:this}),"useWebGLForProcessing"in s&&(s.useWebGLForProcessing=this._useWebGLForProcessing),"useProgressiveUpdate"in s&&(s.useProgressiveUpdate=this._useProgressiveUpdate),"previousLOD"in s){const{subview:e}=this;s.previousLOD=e&&"previousLOD"in e?e.previousLOD:null}this._attachSubview(s),this.subview=s,this.requestUpdate()}_attachSubview(e){e&&!e.attached&&(e.attach(),e.attached=!0,this.container.addChildAt(e.container,0),e.container.blendMode=this.layer.blendMode,e.container.effect=this.layer.effect)}_detachSubview(e){e?.attached&&(this.container.removeChild(e.container),e.detach(),e.attached=!1)}_getSubviewType(e){const t=e?.type;return"vector-field"===t?"rasterVF":"flow"===t?"flow":"raster"}};e([u()],g.prototype,"subview",void 0),e([u()],g.prototype,"useWebGLForProcessing",null),e([u()],g.prototype,"useProgressiveUpdate",null),e([u({readOnly:!0})],g.prototype,"displayParameters",null),g=e([h("esri.views.2d.layers.ImageryTileLayerView2D")],g);const f=g;export{f as default};
5
+ import{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../Graphic.js";import s from"../../../core/Logger.js";import{isAbortError as i}from"../../../core/promiseUtils.js";import{watch as r,sync as o,initial as a}from"../../../core/reactiveUtils.js";import{property as n}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/arrayUtils.js";import"../../../core/has.js";import{subclass as u}from"../../../core/accessorSupport/decorators/subclass.js";import{hasExcludedVariableOrDimension as h}from"../../../layers/support/rasterDatasets/multidimensionalUtils.js";import l from"../engine/flow/FlowView2D.js";import{LayerView2DMixin as p}from"./LayerView2D.js";import c from"./imagery/ImageryTileView2D.js";import d from"./imagery/VectorFieldTileView2D.js";import{canUseMajorityInterpolationOnDataSource as m}from"./support/util.js";import v from"../../layers/ImageryTileLayerView.js";import w from"../../layers/LayerView.js";import b from"../../layers/RefreshableLayerView.js";let g=class extends(v(b(p(w)))){constructor(){super(...arguments),this._useWebGLForProcessing=!0,this._useProgressiveUpdate=!0,this.subview=null}get useWebGLForProcessing(){return this._useWebGLForProcessing}set useWebGLForProcessing(e){this._useWebGLForProcessing=e,this.subview&&"useWebGLForProcessing"in this.subview&&(this.subview.useWebGLForProcessing=e)}get useProgressiveUpdate(){return this._useWebGLForProcessing}set useProgressiveUpdate(e){this._useProgressiveUpdate=e,this.subview&&"useProgressiveUpdate"in this.subview&&(this.subview.useProgressiveUpdate=e)}get displayParameters(){const{layer:e}=this,t=this._get("displayParameters");return e.renderer?{bandIds:e.bandIds,renderer:e.renderer,interpolation:e.interpolation,multidimensionalDefinition:e.multidimensionalDefinition,rasterFunction:"imagery-tile"===e.type?e.rasterFunction:null}:t}update(e){this.subview?.update(e),this.notifyChange("updating")}isUpdating(){return!this.subview||this.subview.updating}attach(){this.layer.increaseRasterJobHandlerUsage(),this._updateSubview(),this.addAttachHandles([r((()=>this.displayParameters),((e,t)=>{const r=e.interpolation!==t?.interpolation&&("majority"===e.interpolation||"majority"===t?.interpolation)&&m(this.layer),o=e.renderer!==t?.renderer&&this._getSubviewType(t?.renderer)!==this._getSubviewType(e.renderer);o&&this._updateSubview();const a=e.multidimensionalDefinition!==t?.multidimensionalDefinition,n=e.rasterFunction!==t?.rasterFunction,u=n&&!this._useWebGLForProcessing,h=a||r||o||u;this.subview.redrawOrRefetch({refetch:h,reprocess:n}).catch((e=>{i(e)||s.getLogger(this).error(e)})),this.notifyChange("updating")})),r((()=>this.layer.multidimensionalSubset??null),((e,t)=>{const{multidimensionalDefinition:r}=this.layer;null!=r&&h(r,e)!==h(r,t)&&(this.subview.redrawOrRefetch({refetch:!0}).catch((e=>{i(e)||s.getLogger(this).error(e)})),this.notifyChange("updating"))}),o),r((()=>this.timeExtent),(()=>{this.subview.timeExtent=this.timeExtent,this.subview.redrawOrRefetch({refetch:!0}).catch((e=>{i(e)||s.getLogger(this).error(e)}))}),a)])}detach(){this.layer.decreaseRasterJobHandlerUsage(),this._detachSubview(this.subview),this.subview?.destroy(),this.subview=null}moveStart(){this.requestUpdate()}viewChange(){this.requestUpdate()}moveEnd(){this.subview.moveEnd()}async hitTest(e,s){return[{type:"graphic",layer:this.layer,mapPoint:e,graphic:new t({attributes:{},geometry:e.clone()})}]}doRefresh(){return this.subview?this.subview.doRefresh():Promise.resolve()}_updateSubview(){const{renderer:e}=this.layer;if(!e)return;const t=this._getSubviewType(e);if(this.subview){if(this.subview.type===t)return void this._attachSubview(this.subview);this._detachSubview(this.subview),this.subview?.destroy(),this.subview=null}const{layer:s}=this;let i;if(i="rasterVF"===t?new d({layer:s,layerView:this}):"flow"===t?new l({layer:s,layerView:this}):new c({layer:s,layerView:this}),"useWebGLForProcessing"in i&&(i.useWebGLForProcessing=this._useWebGLForProcessing),"useProgressiveUpdate"in i&&(i.useProgressiveUpdate=this._useProgressiveUpdate),"previousLOD"in i){const{subview:e}=this;i.previousLOD=e&&"previousLOD"in e?e.previousLOD:null}this._attachSubview(i),this.subview=i,this.requestUpdate()}_attachSubview(e){e&&!e.attached&&(e.attach(),e.attached=!0,this.container.addChildAt(e.container,0))}_detachSubview(e){e?.attached&&(this.container.removeChild(e.container),e.detach(),e.attached=!1)}_getSubviewType(e){const t=e?.type;return"vector-field"===t?"rasterVF":"flow"===t?"flow":"raster"}};e([n()],g.prototype,"subview",void 0),e([n()],g.prototype,"useWebGLForProcessing",null),e([n()],g.prototype,"useProgressiveUpdate",null),e([n({readOnly:!0})],g.prototype,"displayParameters",null),g=e([u("esri.views.2d.layers.ImageryTileLayerView2D")],g);const y=g;export{y as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import t from"../../Viewpoint.js";import e from"../../core/Collection.js";import{getMetersPerUnitForSR as n}from"../../core/unitUtils.js";import{t as r}from"../../chunks/common.js";import{f as o,r as a,t as i,a as c,s,b as u,i as f}from"../../chunks/mat2d.js";import{c as l}from"../../chunks/mat2df64.js";import{a as m,s as y,b as p,n as g,c as x,e as h,f as b,g as w,h as d,i as j,t as G,j as R}from"../../chunks/vec2.js";import{f as k,a as A}from"../../chunks/vec2f64.js";import S from"../../geometry/Extent.js";import v from"../../geometry/Geometry.js";import M from"../../geometry/Point.js";import{isLoaded as z,canProjectWithoutEngine as F,load as N,project as I}from"../../geometry/projection.js";import V from"../../geometry/SpatialReference.js";import{getClosestDenormalizedXToReference as q,getDenormalizedExtent as C}from"../../geometry/support/normalizeUtils.js";import{equals as L,isValid as P,getInfo as E}from"../../geometry/support/spatialReferenceUtils.js";const U=96,O=39.37,Q=180/Math.PI;function T(t){return t.wkid?t:t.spatialReference||V.WGS84}function B(t,e){return e.type?y(t,e.x,e.y):R(t,e)}function D(t){return n(t)}function W(t,e){const n=Math.max(1,e[0]),r=Math.max(1,e[1]);return Math.max(t.width/n,t.height/r)*it(t.spatialReference)}async function H(t,n,r,o){let a,i;if(!t)return null;if(Array.isArray(t)&&!t.length)return null;if(e.isCollection(t)&&(t=t.toArray()),Array.isArray(t)&&t.length&&"object"==typeof t[0]){const e=t.every((t=>"attributes"in t)),a=t.some((t=>!t.geometry));let i=t;if(e&&a&&n&&n.allLayerViews){const e=new Map;for(const n of t){const t=n.layer,r=e.get(t)||[],o=n.attributes[t.objectIdField];null!=o&&r.push(o),e.set(t,r)}const r=[];e.forEach(((t,e)=>{const o=n.allLayerViews.find((t=>t.layer.id===e.id));if(o&&"queryFeatures"in o){const n=e.createQuery();n.objectIds=t,n.returnGeometry=!0,r.push(o.queryFeatures(n))}}));const o=await Promise.all(r),a=[];for(const t of o)if(t&&t.features&&t.features.length)for(const e of t.features)null!=e.geometry&&a.push(e.geometry);i=a}for(const t of i)o=await H(t,n,r,o);return o}if(Array.isArray(t)&&2===t.length&&"number"==typeof t[0]&&"number"==typeof t[1])a=new M(t);else if(t instanceof v)a=t;else if("geometry"in t)if(t.geometry)a=t.geometry;else if(t.layer){const e=t.layer,r=n.allLayerViews.find((t=>t.layer.id===e.id));if(r&&"queryFeatures"in r){const n=e.createQuery();n.objectIds=[t.attributes[e.objectIdField]],n.returnGeometry=!0;const o=await r.queryFeatures(n);a=o?.features?.[0]?.geometry}}if(null==a)return null;switch(a.type){case"point":i=new S({xmin:a.x,ymin:a.y,xmax:a.x,ymax:a.y,spatialReference:a.spatialReference});break;case"extent":case"multipoint":case"polygon":case"polyline":i=C(a);break;default:i=a.extent}if(!i)return null;z()||F(i.spatialReference,r)||await N();const c=I(i,r);return c?o=o?o.union(c):c:null}function J(t){if(t&&(!Array.isArray(t)||"number"!=typeof t[0])&&("object"==typeof t||Array.isArray(t)&&"object"==typeof t[0])){if("layer"in t&&t.layer?.minScale&&t.layer.maxScale){const e=t.layer;return{min:e.minScale,max:e.maxScale}}if(Array.isArray(t)&&t.length&&t.every((t=>"layer"in t))){let e=0,n=0;for(const r of t){const t=r.layer;t?.minScale&&t.maxScale&&(e=t.minScale<e?t.minScale:e,n=t.maxScale>n?t.maxScale:n)}return e&&n?{min:e,max:n}:null}}}function K(t,e){return L(T(t),e)?t:I(t,e)}async function X(e,n){if(!e||!n)return new t({targetGeometry:new M,scale:0,rotation:0});let r=n.spatialReference;const{constraints:o,padding:a,viewpoint:i,size:c}=n,s=[a?c[0]-a.left-a.right:c[0],a?c[1]-a.top-a.bottom:c[1]];let u=null;e instanceof t?u=e:e.viewpoint?u=e.viewpoint:e.target&&"esri.Viewpoint"===e.target.declaredClass&&(u=e.target);let f=null;u?.targetGeometry?f=u.targetGeometry:e instanceof S?f=e:(e||e&&("center"in e||"extent"in e||"target"in e))&&(f=await H(e.center,n,r)||await H(e.extent,n,r)||await H(e.target,n,r)||await H(e,n,r)),!f&&i?.targetGeometry?f=i.targetGeometry:!f&&n.extent&&(f=n.extent),r||(r=T(n.spatialReference||n.extent||f)),z()||L(f.spatialReference,r)||F(f.spatialReference,r)||await N();const l=K("center"in f?f.center:f,r);!1!==n.pickClosestTarget&&"point"===l.type&&"point"===i.targetGeometry?.type&&(l.x=q(l.x,i.targetGeometry.x,l.spatialReference));let m=0;if(null!=u?.targetGeometry&&"point"===u.targetGeometry.type)m=u.scale;else if("scale"in e&&e.scale)m=e.scale;else if("zoom"in e&&-1!==e.zoom&&o&&o.effectiveLODs)m=o.zoomToScale(e.zoom);else if(Array.isArray(f)||"point"===f.type||"extent"===f.type&&0===f.width&&0===f.height){const t=K(n.extent,r);m=null!=t?W(t,s):n.extent?W(n.extent,s):i.scale}else m=W(K(f.extent,r),s);const y=J(e);y&&(y.min&&y.min>m?m=y.min:y.max&&y.max<m&&(m=y.max));let p=0;u?p=u.rotation:e.hasOwnProperty("rotation")?p=e.rotation:i&&(p=i.rotation);let g=new t({targetGeometry:l,scale:m,rotation:p});return o&&(g=o.fit(g),o.constrainByGeometry(g),o.rotationEnabled||(g.rotation=i.rotation)),g}function Y(t,e){const n=t.targetGeometry,r=e.targetGeometry;return n.x=r.x,n.y=r.y,n.spatialReference=r.spatialReference,t.scale=e.scale,t.rotation=e.rotation,t}function Z(t,e,n){return n?y(t,.5*(e[0]-n.right+n.left),.5*(e[1]-n.bottom+n.top)):m(t,e,.5)}const $=function(){const t=A();return function(e,n,r){const o=n.targetGeometry;B(t,o);const a=.5*rt(n);return e.xmin=t[0]-a*r[0],e.ymin=t[1]-a*r[1],e.xmax=t[0]+a*r[0],e.ymax=t[1]+a*r[1],e.spatialReference=o.spatialReference,e}}();function _(t,e,n,r,o){return gt(t,e,n.center),t.scale=W(n,r),o?.constraints?.constrain(t),t}function tt(t,e,n,r){return ut(t,e,n,r),f(t,t)}const et=function(){const t=A();return function(e,n,r){return p(e,ct(e,n),Z(t,n,r))}}(),nt=function(){const t=l(),e=A();return function(n,r,c,s){const u=rt(r),f=at(r);return y(e,u,u),o(t,e),a(t,t,f),i(t,t,et(e,c,s)),i(t,t,[0,s.top-s.bottom]),y(n,t[4],t[5])}}();function rt(t){return t.scale*ot(t.targetGeometry)}function ot(t){return null!=t&&P(t.spatialReference)?1/(D(t.spatialReference)*O*U):1}function at(t){return r(t.rotation)||0}function it(t){return P(t)?D(t)*O*U:1}function ct(t,e){return m(t,e,.5)}const st=function(){const t=A(),e=A(),n=A();return function(r,o,u,f,l,p){return g(t,o),m(e,u,.5*p),y(n,1/f*p,-1/f*p),c(r,e),l&&a(r,r,l),s(r,r,n),i(r,r,t),r}}(),ut=function(){const t=A();return function(e,n,r,o){const a=rt(n),i=at(n);return B(t,n.targetGeometry),st(e,t,r,a,i,o)}}(),ft=function(){const t=A();return function(e,n,r,o){const a=rt(n);return B(t,n.targetGeometry),st(e,t,r,a,0,o)}}();function lt(t){const e=E(t);return e?e.valid[1]-e.valid[0]:0}function mt(t,e){return Math.round(lt(t)/e)}const yt=function(){const t=A(),e=A(),n=[0,0,0];return function(r,o,a){x(t,r,o),h(t,t),x(e,r,a),h(e,e),b(n,t,e);let i=Math.acos(w(t,e)/(d(t)*d(e)))*Q;return n[2]<0&&(i=-i),isNaN(i)&&(i=0),i}}(),pt=function(){const t=A();return function(e,n,r,o){const a=e.targetGeometry;return Y(e,n),nt(t,n,r,o),a.x+=t[0],a.y+=t[1],e}}(),gt=function(t,e,n){Y(t,e);const r=t.targetGeometry;return r.x=n.x,r.y=n.y,r.spatialReference=n.spatialReference,t},xt=function(){const t=A();return function(e,n,r,o,a){a||(a="center"),p(t,r,o),m(t,t,.5);const i=t[0],c=t[1];switch(a){case"center":y(t,0,0);break;case"left":y(t,-i,0);break;case"top":y(t,0,c);break;case"right":y(t,i,0);break;case"bottom":y(t,0,-c);break;case"top-left":y(t,-i,c);break;case"bottom-left":y(t,-i,-c);break;case"top-right":y(t,i,c);break;case"bottom-right":y(t,i,-c)}return At(e,n,t),e}}();function ht(t,e,n){return Y(t,e),t.rotation+=n,t}function bt(t,e,n){return Y(t,e),t.rotation=n,t}const wt=function(){const t=A();return function(e,n,r,o,a){return Y(e,n),isNaN(r)||0===r||(Rt(t,o,n,a),e.scale=n.scale*r,kt(t,t,e,a),At(e,e,y(t,t[0]-o[0],o[1]-t[1]))),e}}();function dt(t,e,n){return Y(t,e),t.scale=n,t}const jt=function(){const t=A();return function(e,n,r,o,a,i){return Y(e,n),isNaN(r)||0===r||(Rt(t,a,n,i),e.scale=n.scale*r,e.rotation+=o,kt(t,t,e,i),At(e,e,y(t,t[0]-a[0],a[1]-t[1]))),e}}(),Gt=function(){const t=A(),e=A();return function(n,r,o,a,i,c,s){return et(e,c,s),j(t,i,e),a?jt(n,r,o,a,t,c):wt(n,r,o,t,c)}}(),Rt=function(){const t=l();return function(e,n,r,o){return G(e,n,tt(t,r,o,1))}}(),kt=function(){const t=l();return function(e,n,r,o){return G(e,n,ut(t,r,o,1))}}(),At=function(){const t=A(),e=l();return function(n,r,o){Y(n,r);const a=rt(r),i=n.targetGeometry;return u(e,at(r)),s(e,e,k(a,a)),G(t,o,e),i.x+=t[0],i.y+=t[1],n}}();export{pt as addPadding,yt as angleBetween,gt as centerAt,Y as copy,X as create,W as extentToScale,Z as getAnchor,$ as getExtent,st as getMatrix,nt as getPaddingMapTranslation,et as getPaddingScreenTranslation,rt as getResolution,it as getResolutionToScaleFactor,ut as getTransform,ft as getTransformNoRotation,mt as getWorldScreenWidth,lt as getWorldWidth,Gt as padAndScaleAndRotateBy,xt as resize,ht as rotateBy,bt as rotateTo,jt as scaleAndRotateBy,dt as scaleTo,_ as setExtent,Rt as toMap,kt as toScreen,At as translateBy};
5
+ import t from"../../Viewpoint.js";import e from"../../core/Collection.js";import{getMetersPerUnitForSR as n}from"../../core/unitUtils.js";import{t as r}from"../../chunks/common.js";import{f as o,r as a,t as i,a as c,s,b as u,i as f}from"../../chunks/mat2d.js";import{c as l}from"../../chunks/mat2df64.js";import{a as m,s as y,b as p,n as g,c as x,e as h,f as b,g as w,h as d,i as j,t as G,j as R}from"../../chunks/vec2.js";import{f as k,a as A}from"../../chunks/vec2f64.js";import S from"../../geometry/Extent.js";import v from"../../geometry/Geometry.js";import M from"../../geometry/Point.js";import{isLoaded as z,canProjectWithoutEngine as F,load as N,project as I}from"../../geometry/projection.js";import V from"../../geometry/SpatialReference.js";import{getClosestDenormalizedXToReference as q,getDenormalizedExtent as C}from"../../geometry/support/normalizeUtils.js";import{equals as L,isValid as P,getInfo as E}from"../../geometry/support/spatialReferenceUtils.js";const U=96,O=39.37,Q=180/Math.PI;function T(t){return t.wkid?t:t.spatialReference||V.WGS84}function B(t,e){return e.type?y(t,e.x,e.y):R(t,e)}function D(t){return n(t)}function W(t,e){const n=Math.max(1,e[0]),r=Math.max(1,e[1]);return Math.max(t.width/n,t.height/r)*it(t.spatialReference)}async function H(t,n,r,o){let a,i;if(!t)return null;if(Array.isArray(t)&&!t.length)return null;if(e.isCollection(t)&&(t=t.toArray()),Array.isArray(t)&&t.length&&"object"==typeof t[0]){const e=t.every((t=>"attributes"in t)),a=t.some((t=>!t.geometry));let i=t;if(e&&a&&n&&n.allLayerViews){const e=new Map;for(const n of t){const t=n.layer,r=e.get(t)||[],o=n.attributes[t.objectIdField];null!=o&&r.push(o),e.set(t,r)}const r=[];e.forEach(((t,e)=>{const o=n.allLayerViews.find((t=>t.layer.id===e.id));if(o&&"queryFeatures"in o){const n=e.createQuery();n.objectIds=t,n.returnGeometry=!0,r.push(o.queryFeatures(n))}}));const o=await Promise.all(r),a=[];for(const t of o)if(t&&t.features&&t.features.length)for(const e of t.features)null!=e.geometry&&a.push(e.geometry);i=a}for(const t of i)o=await H(t,n,r,o);return o}if(Array.isArray(t)&&2===t.length&&"number"==typeof t[0]&&"number"==typeof t[1])a=new M(t);else if(t instanceof v)a=t;else if("geometry"in t)if(t.geometry)a=t.geometry;else if(t.layer){const e=t.layer,r=n.allLayerViews.find((t=>t.layer.id===e.id));if(r&&"queryFeatures"in r){const n=e.createQuery();n.objectIds=[t.attributes[e.objectIdField]],n.returnGeometry=!0;const o=await r.queryFeatures(n);a=o?.features?.[0]?.geometry}}if(null==a)return null;switch(a.type){case"point":i=new S({xmin:a.x,ymin:a.y,xmax:a.x,ymax:a.y,spatialReference:a.spatialReference});break;case"extent":case"multipoint":case"polygon":case"polyline":i=C(a);break;default:i=a.extent}if(!i)return null;z()||F(i.spatialReference,r)||await N();const c=I(i,r);return c?o=o?o.union(c):c:null}function J(t){if(t&&(!Array.isArray(t)||"number"!=typeof t[0])&&("object"==typeof t||Array.isArray(t)&&"object"==typeof t[0])){if("layer"in t&&null!=t.layer?.minScale&&null!=t.layer.maxScale){const e=t.layer;return{min:e.minScale,max:e.maxScale}}if(Array.isArray(t)&&t.length&&t.every((t=>"layer"in t))){let e=0,n=0;for(const r of t){const t=r.layer;t?.minScale&&t.maxScale&&(e=t.minScale<e?t.minScale:e,n=t.maxScale>n?t.maxScale:n)}return e&&n?{min:e,max:n}:null}}}function K(t,e){return L(T(t),e)?t:I(t,e)}async function X(e,n){if(!e||!n)return new t({targetGeometry:new M,scale:0,rotation:0});let r=n.spatialReference;const{constraints:o,padding:a,viewpoint:i,size:c}=n,s=[a?c[0]-a.left-a.right:c[0],a?c[1]-a.top-a.bottom:c[1]];let u=null;e instanceof t?u=e:e.viewpoint?u=e.viewpoint:e.target&&"esri.Viewpoint"===e.target.declaredClass&&(u=e.target);let f=null;u?.targetGeometry?f=u.targetGeometry:e instanceof S?f=e:(e||e&&("center"in e||"extent"in e||"target"in e))&&(f=await H(e.center,n,r)||await H(e.extent,n,r)||await H(e.target,n,r)||await H(e,n,r)),!f&&i?.targetGeometry?f=i.targetGeometry:!f&&n.extent&&(f=n.extent),r||(r=T(n.spatialReference||n.extent||f)),z()||L(f.spatialReference,r)||F(f.spatialReference,r)||await N();const l=K("center"in f?f.center:f,r);!1!==n.pickClosestTarget&&"point"===l.type&&"point"===i.targetGeometry?.type&&(l.x=q(l.x,i.targetGeometry.x,l.spatialReference));let m=0;if(null!=u?.targetGeometry&&"point"===u.targetGeometry.type)m=u.scale;else if("scale"in e&&e.scale)m=e.scale;else if("zoom"in e&&-1!==e.zoom&&o&&o.effectiveLODs)m=o.zoomToScale(e.zoom);else if(Array.isArray(f)||"point"===f.type||"extent"===f.type&&0===f.width&&0===f.height){const t=K(n.extent,r);m=null!=t?W(t,s):n.extent?W(n.extent,s):i.scale}else m=W(K(f.extent,r),s);const y=J(e.target??e);y&&(y.min&&y.min<m?m=y.min:y.max&&y.max>m&&(m=y.max));let p=0;u?p=u.rotation:e.hasOwnProperty("rotation")?p=e.rotation:i&&(p=i.rotation);let g=new t({targetGeometry:l,scale:m,rotation:p});return o&&(g=o.fit(g),o.constrainByGeometry(g),o.rotationEnabled||(g.rotation=i.rotation)),g}function Y(t,e){const n=t.targetGeometry,r=e.targetGeometry;return n.x=r.x,n.y=r.y,n.spatialReference=r.spatialReference,t.scale=e.scale,t.rotation=e.rotation,t}function Z(t,e,n){return n?y(t,.5*(e[0]-n.right+n.left),.5*(e[1]-n.bottom+n.top)):m(t,e,.5)}const $=function(){const t=A();return function(e,n,r){const o=n.targetGeometry;B(t,o);const a=.5*rt(n);return e.xmin=t[0]-a*r[0],e.ymin=t[1]-a*r[1],e.xmax=t[0]+a*r[0],e.ymax=t[1]+a*r[1],e.spatialReference=o.spatialReference,e}}();function _(t,e,n,r,o){return gt(t,e,n.center),t.scale=W(n,r),o?.constraints?.constrain(t),t}function tt(t,e,n,r){return ut(t,e,n,r),f(t,t)}const et=function(){const t=A();return function(e,n,r){return p(e,ct(e,n),Z(t,n,r))}}(),nt=function(){const t=l(),e=A();return function(n,r,c,s){const u=rt(r),f=at(r);return y(e,u,u),o(t,e),a(t,t,f),i(t,t,et(e,c,s)),i(t,t,[0,s.top-s.bottom]),y(n,t[4],t[5])}}();function rt(t){return t.scale*ot(t.targetGeometry)}function ot(t){return null!=t&&P(t.spatialReference)?1/(D(t.spatialReference)*O*U):1}function at(t){return r(t.rotation)||0}function it(t){return P(t)?D(t)*O*U:1}function ct(t,e){return m(t,e,.5)}const st=function(){const t=A(),e=A(),n=A();return function(r,o,u,f,l,p){return g(t,o),m(e,u,.5*p),y(n,1/f*p,-1/f*p),c(r,e),l&&a(r,r,l),s(r,r,n),i(r,r,t),r}}(),ut=function(){const t=A();return function(e,n,r,o){const a=rt(n),i=at(n);return B(t,n.targetGeometry),st(e,t,r,a,i,o)}}(),ft=function(){const t=A();return function(e,n,r,o){const a=rt(n);return B(t,n.targetGeometry),st(e,t,r,a,0,o)}}();function lt(t){const e=E(t);return e?e.valid[1]-e.valid[0]:0}function mt(t,e){return Math.round(lt(t)/e)}const yt=function(){const t=A(),e=A(),n=[0,0,0];return function(r,o,a){x(t,r,o),h(t,t),x(e,r,a),h(e,e),b(n,t,e);let i=Math.acos(w(t,e)/(d(t)*d(e)))*Q;return n[2]<0&&(i=-i),isNaN(i)&&(i=0),i}}(),pt=function(){const t=A();return function(e,n,r,o){const a=e.targetGeometry;return Y(e,n),nt(t,n,r,o),a.x+=t[0],a.y+=t[1],e}}(),gt=function(t,e,n){Y(t,e);const r=t.targetGeometry;return r.x=n.x,r.y=n.y,r.spatialReference=n.spatialReference,t},xt=function(){const t=A();return function(e,n,r,o,a){a||(a="center"),p(t,r,o),m(t,t,.5);const i=t[0],c=t[1];switch(a){case"center":y(t,0,0);break;case"left":y(t,-i,0);break;case"top":y(t,0,c);break;case"right":y(t,i,0);break;case"bottom":y(t,0,-c);break;case"top-left":y(t,-i,c);break;case"bottom-left":y(t,-i,-c);break;case"top-right":y(t,i,c);break;case"bottom-right":y(t,i,-c)}return At(e,n,t),e}}();function ht(t,e,n){return Y(t,e),t.rotation+=n,t}function bt(t,e,n){return Y(t,e),t.rotation=n,t}const wt=function(){const t=A();return function(e,n,r,o,a){return Y(e,n),isNaN(r)||0===r||(Rt(t,o,n,a),e.scale=n.scale*r,kt(t,t,e,a),At(e,e,y(t,t[0]-o[0],o[1]-t[1]))),e}}();function dt(t,e,n){return Y(t,e),t.scale=n,t}const jt=function(){const t=A();return function(e,n,r,o,a,i){return Y(e,n),isNaN(r)||0===r||(Rt(t,a,n,i),e.scale=n.scale*r,e.rotation+=o,kt(t,t,e,i),At(e,e,y(t,t[0]-a[0],a[1]-t[1]))),e}}(),Gt=function(){const t=A(),e=A();return function(n,r,o,a,i,c,s){return et(e,c,s),j(t,i,e),a?jt(n,r,o,a,t,c):wt(n,r,o,t,c)}}(),Rt=function(){const t=l();return function(e,n,r,o){return G(e,n,tt(t,r,o,1))}}(),kt=function(){const t=l();return function(e,n,r,o){return G(e,n,ut(t,r,o,1))}}(),At=function(){const t=A(),e=l();return function(n,r,o){Y(n,r);const a=rt(r),i=n.targetGeometry;return u(e,at(r)),s(e,e,k(a,a)),G(t,o,e),i.x+=t[0],i.y+=t[1],n}}();export{pt as addPadding,yt as angleBetween,gt as centerAt,Y as copy,X as create,W as extentToScale,Z as getAnchor,$ as getExtent,st as getMatrix,nt as getPaddingMapTranslation,et as getPaddingScreenTranslation,rt as getResolution,it as getResolutionToScaleFactor,ut as getTransform,ft as getTransformNoRotation,mt as getWorldScreenWidth,lt as getWorldWidth,Gt as padAndScaleAndRotateBy,xt as resize,ht as rotateBy,bt as rotateTo,jt as scaleAndRotateBy,dt as scaleTo,_ as setExtent,Rt as toMap,kt as toScreen,At as translateBy};
@@ -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"../../../../../intl.js";import t from"../../../../../core/Accessor.js";import{unitRGBAFromColor as i,multiplyOpacityToUnitRGBA as r,getContrast as s,multiplyOpacity as a}from"../../../../../core/colorUtils.js";import"../../../../../core/has.js";import{nextHighestPowerOfTen as n}from"../../../../../core/mathUtils.js";import{destroyMaybe as o}from"../../../../../core/maybe.js";import{formatDecimal as l}from"../../../../../core/quantityFormatUtils.js";import{toUnit as h}from"../../../../../core/quantityUtils.js";import{watch as c,syncAndInitial as m,initial as d}from"../../../../../core/reactiveUtils.js";import{convertUnit as p,adaptiveImperialAreaUnit as u,adaptiveMetricAreaUnit as g,adaptiveImperialLengthUnit as _,adaptiveMetricLengthUnit as L}from"../../../../../core/unitUtils.js";import{property as v}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/accessorSupport/ensureType.js";import"../../../../../core/arrayUtils.js";import{subclass as b}from"../../../../../core/accessorSupport/decorators/subclass.js";import{d as f}from"../../../../../chunks/mat4.js";import{a as w}from"../../../../../chunks/mat4f64.js";import{f as S}from"../../../../../chunks/vec3.js";import{c as y}from"../../../../../chunks/vec3f64.js";import{midpoint as j}from"../../support/viewUtils.js";import{LabelVisualElement as C}from"../../../interactive/visualElements/LabelVisualElement.js";import{LineVisualElement as A}from"../../../interactive/visualElements/LineVisualElement.js";import{MeasurementAreaVisualElement as D}from"../../../interactive/visualElements/MeasurementAreaVisualElement.js";import{GeodesicSegment as M,EuclideanSegment as P}from"../../../interactive/visualElements/support/Segment.js";import{RenderOccludedFlag as V}from"../../../webgl-engine/lib/Material.js";import{createStipplePatternSimple as x}from"../../../webgl-engine/materials/lineStippleUtils.js";import{onLocaleChange as U}from"../../../../../intl/locale.js";import{fetchMessageBundle as O}from"../../../../../intl/messages.js";let k=class extends t{get _parameters(){const{accentColor:e,textColor:t}=this.view.effectiveTheme,n=i(e),o=r(e,.5),l=r(s(e),.5),h=s(t);return{accentColor:n,transparentAccentColor:o,transparentContrastColor:l,intersectingLineColor:[1,.2,0,1],textColor:t,textBackgroundColor:a(h,.6),textCalloutColor:a(h,.5),pathLineWidth:3,perimeterLineWidth:2,projectionLineWidth:2,projectionLineStippleSize:5,labelDistance:25}}get visible(){return this.analysisViewData.visible}get testData(){return{labels:{area:this._areaLabel,perimeterLength:this._perimeterLengthLabel}}}constructor(e){super(e),this._path=null,this._intersectedPath=null,this._perimeter=null,this._intersectedPerimeter=null,this._projectionLines=null,this._measurementArea=null,this._areaLabel=null,this._perimeterLengthLabel=null,this._pathSegments=[],this._perimeterSegments=[],this._origin=y(),this._originTransform=w(),this.messages=null,this.viewData=z,this.areaLabel=null,this.perimeterLengthLabel=null,this.loadingMessages=!0}initialize(){const{analysisViewData:e,_parameters:t,view:i}=this;this._path=new A({view:i,attached:!0,width:t.pathLineWidth,polygonOffset:!0,renderOccluded:V.OccludeAndTransparent,isDecoration:!0}),this._intersectedPath=new A({view:i,attached:!0,width:t.pathLineWidth,polygonOffset:!0,renderOccluded:V.OccludeAndTransparent,isDecoration:!0}),this._perimeter=new A({view:i,attached:!0,width:t.perimeterLineWidth,polygonOffset:!0,renderOccluded:V.OccludeAndTransparent,isDecoration:!0}),this._intersectedPerimeter=new A({view:i,attached:!0,width:t.perimeterLineWidth,color:t.intersectingLineColor,polygonOffset:!0,renderOccluded:V.OccludeAndTransparent,isDecoration:!0}),this._projectionLines=new A({view:i,attached:!0,width:t.projectionLineWidth,stipplePattern:x(t.projectionLineStippleSize),polygonOffset:!0,renderOccluded:V.OccludeAndTransparent,isDecoration:!0}),this._measurementArea=new D({view:i,attached:!0,isDecoration:!0});const r={attached:!0,view:i,isDecoration:!0};this._areaLabel=new C({...r,fontSize:q.Large}),this._perimeterLengthLabel=new C({...r,fontSize:q.Small}),this.addHandles([c((()=>[e.mode,this.visible,e.unit,e.measurementData,e.stagedPoint]),(()=>this._update()),m),c((()=>i.state?.camera),(()=>this._updateLabels()),m),U((()=>this._updateMessageBundle())),c((()=>this._parameters),(({accentColor:e,transparentAccentColor:t,transparentContrastColor:i,textColor:r,textBackgroundColor:s,textCalloutColor:a})=>{const{_path:n,_intersectedPath:o,_perimeter:l,_projectionLines:h,_measurementArea:c,_areaLabel:m,_perimeterLengthLabel:d}=this;n.color=e,o.color=e,l.color=e,h.color=e,c.color1=t,c.color2=i,m.textColor=r,m.backgroundColor=s,m.calloutColor=a,d.textColor=r,d.backgroundColor=s,d.calloutColor=a}),d)]),this._updateMessageBundle()}destroy(){this._measurementArea=o(this._measurementArea),this._path=o(this._path),this._intersectedPath=o(this._intersectedPath),this._perimeter=o(this._perimeter),this._intersectedPerimeter=o(this._intersectedPerimeter),this._areaLabel=o(this._areaLabel),this._perimeterLengthLabel=o(this._perimeterLengthLabel),this._projectionLines=o(this._projectionLines),this.set("view",null)}_update(){if(this.destroyed||!this.view.ready||!this.view.renderCoordsHelper)return;const{analysisViewData:{measurementData:e},analysisViewData:t}=this;null!=e&&(this._updateViewData(e,t.path,t.stagedPoint),this._updateOrigin(),this._updatePathSegments(),this._updatePerimeterSegments(),this._updateArea(),this._updateProjectionLines(),this._updateLabels())}_updateViewData(e,t,i){const r=e.validMeasurement,s="geodesic"===e.actualMeasurementMode,a=s?e.geodesicArea:e.area;let o=1;if(a){const t=this._toPreferredAreaUnit(a,this.analysisViewData.unit);o=n(Math.sqrt(t.value)/Math.sqrt(300)),o*=Math.sqrt(p(1,t.unit,"square-meters")),o/=e.unitNormalizer.normalizeDistance(1)}const l={validMeasurement:r,numVertices:e.numVertices,hasStagedVertex:e.hasStagedVertex,path:t,pathVersion:t.version,stagedPoint:i,measurementData:e,mode:e.actualMeasurementMode,positionsGeographic:e.positionsGeographic,positionsRenderCoords:e.positionsRenderCoords,positionsProjected:e.positionsProjectedWorldCoords,positionsFittedRenderCoords:e.positionsFittedRenderCoords,intersectingSegments:s?e.geodesicIntersectingSegments:e.intersectingSegments,triangleIndices:s?e.geodesicTriangleIndices:e.triangleIndices,fittingMode:e.fittingMode,areaCentroid:s?e.geodesicAreaCentroidRenderCoords:e.areaCentroidRenderCoords,pathLengthLabelSegmentIndex:r?0:t.numVertices-2,perimeterLengthLabelSegmentIndex:0,checkerSize:o};this._set("viewData",l)}_updateOrigin(){const e=this.viewData;j(e.positionsRenderCoords,this._origin),f(this._originTransform,this._origin),this._measurementArea.transform=this._originTransform,this._projectionLines.transform=this._originTransform}_createSegments(e){const t=this.viewData,i=this.view.renderCoordsHelper.spatialReference,r=t.mode,s=[],a=[],n=[],o=t.numVertices,l=t.validMeasurement?o:o-1;for(let c=0;c<l;++c){const l=t[e][c],h=t[e][(c+1)%o];let m=null;switch(r){case"euclidean":m=new P(l,h);break;case"geodesic":m=new M(l,h,i)}t.intersectingSegments.has(c)?n.push(m):a.push(m),s.push(m)}let h=null;return t.validMeasurement&&t.hasStagedVertex&&l>=2?h=s[s.length-2]:t.hasStagedVertex&&l>=1&&(h=s[s.length-1]),{all:s,nonIntersecting:a,intersecting:n,stagedSegment:h}}_updatePathSegments(){const{visible:e}=this,t=this._createSegments("positionsRenderCoords");this._path.setGeometryFromSegments(t.nonIntersecting,this._origin),this._path.visible=e,this._intersectedPath.setGeometryFromSegments(t.intersecting,this._origin),this._intersectedPath.visible=e,this._pathSegments=t.all}_updatePerimeterSegments(){const e=this.visible&&"euclidean"===this.viewData.mode,t=this._createSegments("positionsFittedRenderCoords");this._perimeter.setGeometryFromSegments(t.nonIntersecting,this._origin),this._perimeter.visible=e,this._intersectedPerimeter.setGeometryFromSegments(t.intersecting,this._origin),this._intersectedPerimeter.visible=e,this._perimeterSegments=t.all}_updateArea(){const e=this.viewData;switch(e.mode){case"euclidean":this._updateAreaEuclidean(e);break;case"geodesic":this._updateAreaGeodesic()}}_updateAreaEuclidean(e){const t=this.visible;e.validMeasurement&&0===e.intersectingSegments.size&&e.triangleIndices?(this._measurementArea.geometry={uv:e.positionsProjected,position:e.positionsFittedRenderCoords,triangleIndices:e.triangleIndices},this._measurementArea.size=[e.checkerSize,e.checkerSize],this._measurementArea.visible=t):this._measurementArea.visible=!1}_updateAreaGeodesic(){this._measurementArea.visible=!1}_updateProjectionLines(){const e=this.viewData,t=this.visible,i=e.mode,r=e.numVertices;if(r>0&&e.validMeasurement&&"euclidean"===i){const i=[];for(let t=0;t<r;++t){const r=y();S(r,e.positionsRenderCoords[t],this._origin);const s=y();S(s,e.positionsFittedRenderCoords[t],this._origin),i.push([r,s])}this._projectionLines.geometry=i,this._projectionLines.visible=t}else this._projectionLines.geometry=null,this._projectionLines.visible=!1}_updateLabels(){if(this.destroyed)return;const{viewData:e}=this,{measurementData:t,mode:i,path:r}=e;if(!r)return;const s=this.visible,a=this._formatAreaLabel(this.messages,"geodesic"===i?t.geodesicArea:t.area,this.analysisViewData.unit);if(null!=a?(this._areaLabel.geometry={type:"point",point:e.areaCentroid},this._areaLabel.text=a,this._areaLabel.visible=e.validMeasurement&&0===e.intersectingSegments.size&&s):this._areaLabel.visible=!1,this._set("areaLabel",a),e.validMeasurement&&0===e.intersectingSegments.size){const i="geodesic"===e.mode,r=i?t.geodesicPathLength:t.validMeasurement?t.perimeterLength:t.pathLength,a=this._formatLengthLabel(this.messages,r,this.analysisViewData.unit);this._set("perimeterLengthLabel",a),this._perimeterLengthLabel.distance=this._parameters.labelDistance,this._perimeterLengthLabel.anchor="top",this._perimeterLengthLabel.text=a,this._perimeterLengthLabel.visible=!0;let n=!0;for(let s=0;s<e.numVertices;++s){const r=(e.perimeterLengthLabelSegmentIndex+s)%e.numVertices,a=i||!t.validMeasurement?this._pathSegments[r]:this._perimeterSegments[r];if(n=!0,this._perimeterLengthLabel.geometry={type:"segment",segment:a,sampleLocation:"center"},!this._perimeterLengthLabel.overlaps(this._areaLabel))break;n=!1}this._perimeterLengthLabel.visible=n&&s}else this._perimeterLengthLabel.visible=!1}_toPreferredAreaUnit(e,t){return h(e,this._preferredAreaUnit(e,t))}_preferredAreaUnit(e,t){switch(t){case"metric":return g(e.value,e.unit);case"imperial":return u(e.value,e.unit);default:return t}}_preferredLengthUnit(e,t){const i=this._deriveLengthUnitFromAreaUnit(t);switch(i){case"metric":return L(e.value,e.unit);case"imperial":return _(e.value,e.unit);default:return i}}_deriveLengthUnitFromAreaUnit(e){switch(e){case"metric":case"ares":case"hectares":return"metric";case"imperial":case"acres":return"imperial";case"square-inches":return"inches";case"square-feet":return"feet";case"square-yards":return"yards";case"square-miles":return"miles";case"square-us-feet":return"us-feet";case"square-millimeters":return"millimeters";case"square-centimeters":return"centimeters";case"square-decimeters":return"decimeters";case"square-meters":return"meters";case"square-kilometers":return"kilometers"}throw new Error("unhandled area unit")}_formatAreaLabel(e,t,i){return e&&t&&l(e,t,this._preferredAreaUnit(t,i))}_formatLengthLabel(e,t,i){return e&&t&&l(e,t,this._preferredLengthUnit(t,i))}_updateMessageBundle(){this.loadingMessages=!0,O("esri/core/t9n/Units").then((e=>{this.messages=e,this.view&&this._update()})).finally((()=>{this.loadingMessages=!1}))}};var q;e([v()],k.prototype,"_parameters",null),e([v()],k.prototype,"view",void 0),e([v()],k.prototype,"messages",void 0),e([v()],k.prototype,"analysis",void 0),e([v()],k.prototype,"viewData",void 0),e([v()],k.prototype,"analysisViewData",void 0),e([v({readOnly:!0})],k.prototype,"areaLabel",void 0),e([v({readOnly:!0})],k.prototype,"perimeterLengthLabel",void 0),e([v()],k.prototype,"loadingMessages",void 0),e([v()],k.prototype,"visible",null),k=e([b("esri.views.3d.analysis.AreaMeasurement.support.AreaMeasurementVisualization")],k),function(e){e[e.Small=12]="Small",e[e.Large=16]="Large"}(q||(q={}));const z={validMeasurement:!1,numVertices:0,hasStagedVertex:!1,path:null,pathVersion:-1,stagedPoint:null,measurementData:null,mode:null,positionsGeographic:null,positionsRenderCoords:null,positionsProjected:null,positionsFittedRenderCoords:null,intersectingSegments:null,triangleIndices:null,fittingMode:null,areaCentroid:null,pathLengthLabelSegmentIndex:null,perimeterLengthLabelSegmentIndex:null,checkerSize:null};export{k as AreaMeasurementVisualization};
5
+ import{_ as e}from"../../../../../chunks/tslib.es6.js";import"../../../../../intl.js";import t from"../../../../../core/Accessor.js";import{unitRGBAFromColor as i,multiplyOpacityToUnitRGBA as r,getContrast as s,BrightnessThreshold as a,multiplyOpacity as n}from"../../../../../core/colorUtils.js";import"../../../../../core/has.js";import{nextHighestPowerOfTen as o}from"../../../../../core/mathUtils.js";import{destroyMaybe as l}from"../../../../../core/maybe.js";import{formatDecimal as h}from"../../../../../core/quantityFormatUtils.js";import{toUnit as c}from"../../../../../core/quantityUtils.js";import{watch as m,syncAndInitial as d,initial as p}from"../../../../../core/reactiveUtils.js";import{convertUnit as u,adaptiveImperialAreaUnit as g,adaptiveMetricAreaUnit as _,adaptiveImperialLengthUnit as L,adaptiveMetricLengthUnit as v}from"../../../../../core/unitUtils.js";import{property as b}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/accessorSupport/ensureType.js";import"../../../../../core/arrayUtils.js";import{subclass as f}from"../../../../../core/accessorSupport/decorators/subclass.js";import{d as w}from"../../../../../chunks/mat4.js";import{a as S}from"../../../../../chunks/mat4f64.js";import{f as y}from"../../../../../chunks/vec3.js";import{c as j}from"../../../../../chunks/vec3f64.js";import{midpoint as C}from"../../support/viewUtils.js";import{LabelVisualElement as A}from"../../../interactive/visualElements/LabelVisualElement.js";import{LineVisualElement as D}from"../../../interactive/visualElements/LineVisualElement.js";import{MeasurementAreaVisualElement as M}from"../../../interactive/visualElements/MeasurementAreaVisualElement.js";import{GeodesicSegment as P,EuclideanSegment as V}from"../../../interactive/visualElements/support/Segment.js";import{RenderOccludedFlag as x}from"../../../webgl-engine/lib/Material.js";import{createStipplePatternSimple as U}from"../../../webgl-engine/materials/lineStippleUtils.js";import{onLocaleChange as O}from"../../../../../intl/locale.js";import{fetchMessageBundle as k}from"../../../../../intl/messages.js";let q=class extends t{get _parameters(){const{accentColor:e,textColor:t}=this.view.effectiveTheme,o=i(e),l=r(e,.5),h=r(s(e),.5),c=s(t,a.Low);return{accentColor:o,transparentAccentColor:l,transparentContrastColor:h,intersectingLineColor:[1,.2,0,1],textColor:t,textBackgroundColor:n(c,.6),textCalloutColor:n(c,.5),pathLineWidth:3,perimeterLineWidth:2,projectionLineWidth:2,projectionLineStippleSize:5,labelDistance:25}}get visible(){return this.analysisViewData.visible}get testData(){return{labels:{area:this._areaLabel,perimeterLength:this._perimeterLengthLabel}}}constructor(e){super(e),this._path=null,this._intersectedPath=null,this._perimeter=null,this._intersectedPerimeter=null,this._projectionLines=null,this._measurementArea=null,this._areaLabel=null,this._perimeterLengthLabel=null,this._pathSegments=[],this._perimeterSegments=[],this._origin=j(),this._originTransform=S(),this.messages=null,this.viewData=I,this.areaLabel=null,this.perimeterLengthLabel=null,this.loadingMessages=!0}initialize(){const{analysisViewData:e,_parameters:t,view:i}=this;this._path=new D({view:i,attached:!0,width:t.pathLineWidth,polygonOffset:!0,renderOccluded:x.OccludeAndTransparent,isDecoration:!0}),this._intersectedPath=new D({view:i,attached:!0,width:t.pathLineWidth,polygonOffset:!0,renderOccluded:x.OccludeAndTransparent,isDecoration:!0}),this._perimeter=new D({view:i,attached:!0,width:t.perimeterLineWidth,polygonOffset:!0,renderOccluded:x.OccludeAndTransparent,isDecoration:!0}),this._intersectedPerimeter=new D({view:i,attached:!0,width:t.perimeterLineWidth,color:t.intersectingLineColor,polygonOffset:!0,renderOccluded:x.OccludeAndTransparent,isDecoration:!0}),this._projectionLines=new D({view:i,attached:!0,width:t.projectionLineWidth,stipplePattern:U(t.projectionLineStippleSize),polygonOffset:!0,renderOccluded:x.OccludeAndTransparent,isDecoration:!0}),this._measurementArea=new M({view:i,attached:!0,isDecoration:!0});const r={attached:!0,view:i,isDecoration:!0};this._areaLabel=new A({...r,fontSize:z.Large}),this._perimeterLengthLabel=new A({...r,fontSize:z.Small}),this.addHandles([m((()=>[e.mode,this.visible,e.unit,e.measurementData,e.stagedPoint]),(()=>this._update()),d),m((()=>i.state?.camera),(()=>this._updateLabels()),d),O((()=>this._updateMessageBundle())),m((()=>this._parameters),(({accentColor:e,transparentAccentColor:t,transparentContrastColor:i,textColor:r,textBackgroundColor:s,textCalloutColor:a})=>{const{_path:n,_intersectedPath:o,_perimeter:l,_projectionLines:h,_measurementArea:c,_areaLabel:m,_perimeterLengthLabel:d}=this;n.color=e,o.color=e,l.color=e,h.color=e,c.color1=t,c.color2=i,m.textColor=r,m.backgroundColor=s,m.calloutColor=a,d.textColor=r,d.backgroundColor=s,d.calloutColor=a}),p)]),this._updateMessageBundle()}destroy(){this._measurementArea=l(this._measurementArea),this._path=l(this._path),this._intersectedPath=l(this._intersectedPath),this._perimeter=l(this._perimeter),this._intersectedPerimeter=l(this._intersectedPerimeter),this._areaLabel=l(this._areaLabel),this._perimeterLengthLabel=l(this._perimeterLengthLabel),this._projectionLines=l(this._projectionLines),this.set("view",null)}_update(){if(this.destroyed||!this.view.ready||!this.view.renderCoordsHelper)return;const{analysisViewData:{measurementData:e},analysisViewData:t}=this;null!=e&&(this._updateViewData(e,t.path,t.stagedPoint),this._updateOrigin(),this._updatePathSegments(),this._updatePerimeterSegments(),this._updateArea(),this._updateProjectionLines(),this._updateLabels())}_updateViewData(e,t,i){const r=e.validMeasurement,s="geodesic"===e.actualMeasurementMode,a=s?e.geodesicArea:e.area;let n=1;if(a){const t=this._toPreferredAreaUnit(a,this.analysisViewData.unit);n=o(Math.sqrt(t.value)/Math.sqrt(300)),n*=Math.sqrt(u(1,t.unit,"square-meters")),n/=e.unitNormalizer.normalizeDistance(1)}const l={validMeasurement:r,numVertices:e.numVertices,hasStagedVertex:e.hasStagedVertex,path:t,pathVersion:t.version,stagedPoint:i,measurementData:e,mode:e.actualMeasurementMode,positionsGeographic:e.positionsGeographic,positionsRenderCoords:e.positionsRenderCoords,positionsProjected:e.positionsProjectedWorldCoords,positionsFittedRenderCoords:e.positionsFittedRenderCoords,intersectingSegments:s?e.geodesicIntersectingSegments:e.intersectingSegments,triangleIndices:s?e.geodesicTriangleIndices:e.triangleIndices,fittingMode:e.fittingMode,areaCentroid:s?e.geodesicAreaCentroidRenderCoords:e.areaCentroidRenderCoords,pathLengthLabelSegmentIndex:r?0:t.numVertices-2,perimeterLengthLabelSegmentIndex:0,checkerSize:n};this._set("viewData",l)}_updateOrigin(){const e=this.viewData;C(e.positionsRenderCoords,this._origin),w(this._originTransform,this._origin),this._measurementArea.transform=this._originTransform,this._projectionLines.transform=this._originTransform}_createSegments(e){const t=this.viewData,i=this.view.renderCoordsHelper.spatialReference,r=t.mode,s=[],a=[],n=[],o=t.numVertices,l=t.validMeasurement?o:o-1;for(let c=0;c<l;++c){const l=t[e][c],h=t[e][(c+1)%o];let m=null;switch(r){case"euclidean":m=new V(l,h);break;case"geodesic":m=new P(l,h,i)}t.intersectingSegments.has(c)?n.push(m):a.push(m),s.push(m)}let h=null;return t.validMeasurement&&t.hasStagedVertex&&l>=2?h=s[s.length-2]:t.hasStagedVertex&&l>=1&&(h=s[s.length-1]),{all:s,nonIntersecting:a,intersecting:n,stagedSegment:h}}_updatePathSegments(){const{visible:e}=this,t=this._createSegments("positionsRenderCoords");this._path.setGeometryFromSegments(t.nonIntersecting,this._origin),this._path.visible=e,this._intersectedPath.setGeometryFromSegments(t.intersecting,this._origin),this._intersectedPath.visible=e,this._pathSegments=t.all}_updatePerimeterSegments(){const e=this.visible&&"euclidean"===this.viewData.mode,t=this._createSegments("positionsFittedRenderCoords");this._perimeter.setGeometryFromSegments(t.nonIntersecting,this._origin),this._perimeter.visible=e,this._intersectedPerimeter.setGeometryFromSegments(t.intersecting,this._origin),this._intersectedPerimeter.visible=e,this._perimeterSegments=t.all}_updateArea(){const e=this.viewData;switch(e.mode){case"euclidean":this._updateAreaEuclidean(e);break;case"geodesic":this._updateAreaGeodesic()}}_updateAreaEuclidean(e){const t=this.visible;e.validMeasurement&&0===e.intersectingSegments.size&&e.triangleIndices?(this._measurementArea.geometry={uv:e.positionsProjected,position:e.positionsFittedRenderCoords,triangleIndices:e.triangleIndices},this._measurementArea.size=[e.checkerSize,e.checkerSize],this._measurementArea.visible=t):this._measurementArea.visible=!1}_updateAreaGeodesic(){this._measurementArea.visible=!1}_updateProjectionLines(){const e=this.viewData,t=this.visible,i=e.mode,r=e.numVertices;if(r>0&&e.validMeasurement&&"euclidean"===i){const i=[];for(let t=0;t<r;++t){const r=j();y(r,e.positionsRenderCoords[t],this._origin);const s=j();y(s,e.positionsFittedRenderCoords[t],this._origin),i.push([r,s])}this._projectionLines.geometry=i,this._projectionLines.visible=t}else this._projectionLines.geometry=null,this._projectionLines.visible=!1}_updateLabels(){if(this.destroyed)return;const{viewData:e}=this,{measurementData:t,mode:i,path:r}=e;if(!r)return;const s=this.visible,a=this._formatAreaLabel(this.messages,"geodesic"===i?t.geodesicArea:t.area,this.analysisViewData.unit);if(null!=a?(this._areaLabel.geometry={type:"point",point:e.areaCentroid},this._areaLabel.text=a,this._areaLabel.visible=e.validMeasurement&&0===e.intersectingSegments.size&&s):this._areaLabel.visible=!1,this._set("areaLabel",a),e.validMeasurement&&0===e.intersectingSegments.size){const i="geodesic"===e.mode,r=i?t.geodesicPathLength:t.validMeasurement?t.perimeterLength:t.pathLength,a=this._formatLengthLabel(this.messages,r,this.analysisViewData.unit);this._set("perimeterLengthLabel",a),this._perimeterLengthLabel.distance=this._parameters.labelDistance,this._perimeterLengthLabel.anchor="top",this._perimeterLengthLabel.text=a,this._perimeterLengthLabel.visible=!0;let n=!0;for(let s=0;s<e.numVertices;++s){const r=(e.perimeterLengthLabelSegmentIndex+s)%e.numVertices,a=i||!t.validMeasurement?this._pathSegments[r]:this._perimeterSegments[r];if(n=!0,this._perimeterLengthLabel.geometry={type:"segment",segment:a,sampleLocation:"center"},!this._perimeterLengthLabel.overlaps(this._areaLabel))break;n=!1}this._perimeterLengthLabel.visible=n&&s}else this._perimeterLengthLabel.visible=!1}_toPreferredAreaUnit(e,t){return c(e,this._preferredAreaUnit(e,t))}_preferredAreaUnit(e,t){switch(t){case"metric":return _(e.value,e.unit);case"imperial":return g(e.value,e.unit);default:return t}}_preferredLengthUnit(e,t){const i=this._deriveLengthUnitFromAreaUnit(t);switch(i){case"metric":return v(e.value,e.unit);case"imperial":return L(e.value,e.unit);default:return i}}_deriveLengthUnitFromAreaUnit(e){switch(e){case"metric":case"ares":case"hectares":return"metric";case"imperial":case"acres":return"imperial";case"square-inches":return"inches";case"square-feet":return"feet";case"square-yards":return"yards";case"square-miles":return"miles";case"square-us-feet":return"us-feet";case"square-millimeters":return"millimeters";case"square-centimeters":return"centimeters";case"square-decimeters":return"decimeters";case"square-meters":return"meters";case"square-kilometers":return"kilometers"}throw new Error("unhandled area unit")}_formatAreaLabel(e,t,i){return e&&t&&h(e,t,this._preferredAreaUnit(t,i))}_formatLengthLabel(e,t,i){return e&&t&&h(e,t,this._preferredLengthUnit(t,i))}_updateMessageBundle(){this.loadingMessages=!0,k("esri/core/t9n/Units").then((e=>{this.messages=e,this.view&&this._update()})).finally((()=>{this.loadingMessages=!1}))}};var z;e([b()],q.prototype,"_parameters",null),e([b()],q.prototype,"view",void 0),e([b()],q.prototype,"messages",void 0),e([b()],q.prototype,"analysis",void 0),e([b()],q.prototype,"viewData",void 0),e([b()],q.prototype,"analysisViewData",void 0),e([b({readOnly:!0})],q.prototype,"areaLabel",void 0),e([b({readOnly:!0})],q.prototype,"perimeterLengthLabel",void 0),e([b()],q.prototype,"loadingMessages",void 0),e([b()],q.prototype,"visible",null),q=e([f("esri.views.3d.analysis.AreaMeasurement.support.AreaMeasurementVisualization")],q),function(e){e[e.Small=12]="Small",e[e.Large=16]="Large"}(z||(z={}));const I={validMeasurement:!1,numVertices:0,hasStagedVertex:!1,path:null,pathVersion:-1,stagedPoint:null,measurementData:null,mode:null,positionsGeographic:null,positionsRenderCoords:null,positionsProjected:null,positionsFittedRenderCoords:null,intersectingSegments:null,triangleIndices:null,fittingMode:null,areaCentroid:null,pathLengthLabelSegmentIndex:null,perimeterLengthLabelSegmentIndex:null,checkerSize:null};export{q as AreaMeasurementVisualization};
@@ -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"../../../../intl.js";import t from"../../../../core/Accessor.js";import{unitRGBAFromColor as i,multiplyOpacityToUnitRGBA as s,getContrast as n,multiplyOpacity as o}from"../../../../core/colorUtils.js";import{nextHighestPowerOfTen as l,deg2rad as a}from"../../../../core/mathUtils.js";import{destroyMaybe as r}from"../../../../core/maybe.js";import{formatDecimal as c,formatImperialLength as d,formatImperialVerticalLength as u,formatMetricLength as h,formatMetricVerticalLength as m}from"../../../../core/quantityFormatUtils.js";import{toUnit as g}from"../../../../core/quantityUtils.js";import{watch as p,syncAndInitial as _,initial as v}from"../../../../core/reactiveUtils.js";import{createRenderScreenPointArray3 as b,createRenderScreenPointArray as L}from"../../../../core/screenUtils.js";import{adaptiveImperialLengthUnit as w,convertUnit as S}from"../../../../core/unitUtils.js";import{property as y}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import{subclass as f}from"../../../../core/accessorSupport/decorators/subclass.js";import{g as A}from"../../../../chunks/vec2.js";import{i as E,g as V}from"../../../../chunks/vec3.js";import{c as P}from"../../../../chunks/vec3f64.js";import{MeasurementMode as j}from"../interfaces.js";import{ViewMode as z,VisualElementOrientation as M}from"./interfaces.js";import{screenSpaceTangent as C}from"../support/viewUtils.js";import{LabelVisualElement as D,mirrorPosition as O}from"../../interactive/visualElements/LabelVisualElement.js";import{LineVisualElement as x}from"../../interactive/visualElements/LineVisualElement.js";import{MeasurementArrowVisualElement as G}from"../../interactive/visualElements/MeasurementArrowVisualElement.js";import{RightAngleQuadVisualElement as T}from"../../interactive/visualElements/RightAngleQuadVisualElement.js";import{GeodesicSegment as H,EuclideanSegment as k}from"../../interactive/visualElements/support/Segment.js";import{RenderOccludedFlag as U}from"../../webgl-engine/lib/Material.js";import{createStipplePatternSimple as F}from"../../webgl-engine/materials/lineStippleUtils.js";import{onLocaleChange as R}from"../../../../intl/locale.js";import{fetchMessageBundle as Q}from"../../../../intl/messages.js";let q=class extends t{get _parameters(){const e=this.view.effectiveTheme,{accentColor:t,textColor:l}=e,a=i(t),r=s(t,.75),c=i(n(t)),d=n(l);return{accentColor:a,contrastColor:c,translucentAccentColor:r,triangleLineWidth:3,geodesicProjectionLineWidth:2,guideLineWidth:2,guideStippleLengthPixels:3,directLabelFontSize:16,horizontalLabelFontSize:12,verticalLabelFontSize:12,textColor:l,textBackgroundColor:o(d,.6),textCalloutColor:o(d,.5)}}get visible(){return this.analysisView.visible}get viewMode(){const{elevationAlignedStartPoint:e,elevationAlignedEndPoint:t}=this.analysisView;if(null==e||null==t||e.equals(t))return z.None;const i=this.analysisView.result;if(null==i)return z.Direct;if("geodesic"===i.mode)return this._requiresGeodesicGuideAt(this._startPosition)||this._requiresGeodesicGuideAt(this._endPosition)?z.ProjectedGeodesic:z.Direct;const{verticalDistance:s,horizontalDistance:n}=i,o=s.value,l=n.value;return Math.min(o/l,l/o)<this.triangleCollapseRatioThreshold?z.Direct:z.Triangle}get actualVisualizedMeasurement(){if(null==this.analysisView.result)switch(this.analysisView.measurementMode){case j.Auto:case j.Euclidean:default:return"euclidean";case j.Geodesic:return"geodesic"}return this.analysisView.result.mode}get allowVisualElementsOrientationChange(){return null==this._triangleOrientationOverride}set allowVisualElementsOrientationChange(e){null==this._triangleOrientationOverride!==e&&(null==this._triangleOrientationOverride?this._triangleOrientationOverride=this._actualVisualElementsOrientation:this._triangleOrientationOverride=null)}get labels(){const e="geodesic"===this.actualVisualizedMeasurement;return{direct:this._segmentLabel,horizontal:e?this._segmentLabel:this._horizontalLabel,vertical:this._verticalLabel}}constructor(e){super(e),this._segmentVisualElement=null,this._triangleVisualElement=null,this._rightAngleQuad=null,this._projectedGeodesicLine=null,this._geodesicStartHint=null,this._geodesicEndHint=null,this._segmentLabel=null,this._verticalLabel=null,this._horizontalLabel=null,this._startPosition=P(),this._endPosition=P(),this._cornerPosition=P(),this._startPositionAtSeaLevel=P(),this._endPositionAtSeaLevel=P(),this._triangleOrientationOverride=null,this.messages=null,this.loadingMessages=!0,this.visualElementOrientation=M.Auto,this.triangleCollapseRatioThreshold=.03}initialize(){const e=this._parameters,t={attached:!0,view:this.view,isDecoration:!0},{guideLineWidth:i,guideStippleLengthPixels:s,triangleLineWidth:n,geodesicProjectionLineWidth:o,directLabelFontSize:l,verticalLabelFontSize:a,horizontalLabelFontSize:r}=e;this._segmentVisualElement=new G({...t,geometry:null,renderOccluded:U.OccludeAndTransparent}),this._triangleVisualElement=new x({...t,width:n,renderOccluded:U.OccludeAndTransparent}),this._rightAngleQuad=new T({...t,renderOccluded:U.OccludeAndTransparent});const c={...t,polygonOffset:!0,renderOccluded:U.OccludeAndTransparent};this._projectedGeodesicLine=new x({...c,width:o,stipplePattern:F(s)}),this._geodesicStartHint=new x({...c,width:i,stipplePattern:F(s)}),this._geodesicEndHint=new x({...c,width:i,stipplePattern:F(s)}),this._segmentLabel=new D({...t,fontSize:l}),this._verticalLabel=new D({...t,fontSize:a}),this._horizontalLabel=new D({...t,fontSize:r}),this.addHandles([p((()=>{const{elevationAlignedStartPoint:e,elevationAlignedEndPoint:t}=this.analysisView,i=this.view;return{view:i,camera:i.state.camera,viewMode:this.viewMode,elevationAlignedStartPoint:e,elevationAlignedEndPoint:t,orientation:this._actualVisualElementsOrientation,visualizedMeasurement:this.actualVisualizedMeasurement,stripeLength:this._measurementArrowStripeLength}}),(e=>this._updateGeometryAndViewMode(e)),_),p((()=>({visible:this.visible,viewMode:this.viewMode})),(e=>this._updateVisualElementVisibility(e)),_),p((()=>({text:this._labelsText,visualizedMeasurement:this.actualVisualizedMeasurement})),(e=>this._updateLabelText(e)),_),p((()=>({visible:this.visible,viewMode:this.viewMode})),(e=>this._updateLabelVisibility(e)),_),p((()=>this._measurementArrowStripeLength),(e=>this._updateSegmentStripeLength(e)),_),R((async()=>this._updateMessageBundle())),p((()=>this._parameters),(({textBackgroundColor:e,textCalloutColor:t,textColor:i,translucentAccentColor:s,accentColor:n,contrastColor:o})=>{const{_segmentLabel:l,_verticalLabel:a,_horizontalLabel:r,_triangleVisualElement:c,_rightAngleQuad:d,_projectedGeodesicLine:u,_geodesicStartHint:h,_geodesicEndHint:m,_segmentVisualElement:g}=this;l.backgroundColor=e,l.calloutColor=t,l.textColor=i,a.backgroundColor=e,a.calloutColor=t,a.textColor=i,r.backgroundColor=e,r.calloutColor=t,r.textColor=i,c.color=s,d.color=s,u.color=s,h.color=s,m.color=s,g.color=n,g.contrastColor=o}),v)]),this._updateMessageBundle()}destroy(){this._segmentVisualElement=r(this._segmentVisualElement),this._triangleVisualElement=r(this._triangleVisualElement),this._rightAngleQuad=r(this._rightAngleQuad),this._projectedGeodesicLine=r(this._projectedGeodesicLine),this._geodesicStartHint=r(this._geodesicStartHint),this._geodesicEndHint=r(this._geodesicEndHint),this._segmentLabel=r(this._segmentLabel),this._verticalLabel=r(this._verticalLabel),this._horizontalLabel=r(this._horizontalLabel),this.set("view",null)}_updateVisualElementVisibility({visible:e,viewMode:t}){if(this._segmentVisualElement.visible=!1,this._triangleVisualElement.visible=!1,this._rightAngleQuad.visible=!1,this._projectedGeodesicLine.visible=!1,this._geodesicStartHint.visible=!1,this._geodesicEndHint.visible=!1,e)switch(t){case z.None:break;case z.Direct:this._segmentVisualElement.visible=!0;break;case z.Triangle:this._segmentVisualElement.visible=!0,this._triangleVisualElement.visible=!0,this._rightAngleQuad.visible=!0;break;case z.ProjectedGeodesic:this._segmentVisualElement.visible=!0,this._projectedGeodesicLine.visible=!0,this._geodesicStartHint.visible=!0,this._geodesicEndHint.visible=!0}}_updateGeometryAndViewMode({view:e,camera:t,viewMode:i,elevationAlignedStartPoint:s,elevationAlignedEndPoint:n,orientation:o,visualizedMeasurement:l,stripeLength:a}){const r=e.renderCoordsHelper;if(null==r||null==s||null==n||s.equals(n))return;let c=this._startPosition,d=this._endPosition;r.toRenderCoords(s,c),r.toRenderCoords(n,d);const u=o===M.AboveSegment?1:-1,h=u*(r.getAltitude(d)-r.getAltitude(c));h<0&&(c=this._endPosition,d=this._startPosition);const m="geodesic"===l?new H(this._startPosition,this._endPosition,r.spatialReference):new k(this._startPosition,this._endPosition);switch(this._segmentVisualElement.geometry=m,this._updateSegmentStripeLength(a),i){case z.Direct:this._updateSegment(m,o);break;case z.Triangle:this._updateSegmentAndTriangle({view:e,camera:t,segment:m,orientation:o,startPosition:c,endPosition:d,deltaSign:u,altitudeDelta:h});break;case z.ProjectedGeodesic:this._updateSegmentAndProjection({view:e,orientation:o,startPosition:c,endPosition:d})}}_updateSegment(e,t){this._segmentLabel.anchor=t===M.AboveSegment?"top":"bottom",this._segmentLabel.geometry={type:"segment",segment:e,sampleLocation:"center"}}_updateSegmentAndTriangle({view:{renderCoordsHelper:e},camera:t,segment:i,orientation:s,startPosition:n,endPosition:o,deltaSign:l,altitudeDelta:a}){const r=this._cornerPosition;e.worldUpAtPosition(n,r),E(r,r,l*Math.abs(a)),V(r,r,n),this._triangleVisualElement.geometry=[[[n[0],n[1],n[2]],[r[0],r[1],r[2]],[o[0],o[1],o[2]]]],this._rightAngleQuad.geometry={previous:n,center:r,next:o};const c=new k(n,r),d=new k(r,o),u=B(n,o,r,s,t);this._segmentLabel.anchor=u.segment,this._segmentLabel.geometry={type:"segment",segment:i,sampleLocation:"center"},this._verticalLabel.geometry={type:"segment",segment:c,sampleLocation:"center"},this._verticalLabel.anchor=u.vertical,this._horizontalLabel.geometry={type:"segment",segment:d,sampleLocation:"center"},this._horizontalLabel.anchor=u.horizontal}_updateSegmentAndProjection({view:{renderCoordsHelper:e},orientation:t,startPosition:i,endPosition:s}){e.setAltitude(this._startPositionAtSeaLevel,0,i),e.setAltitude(this._endPositionAtSeaLevel,0,s);const n=new H(this._startPositionAtSeaLevel,this._endPositionAtSeaLevel,e.spatialReference);this._projectedGeodesicLine.setGeometryFromSegment(n),this._geodesicStartHint.setGeometryFromSegment(new k(this._startPositionAtSeaLevel,i)),this._geodesicEndHint.setGeometryFromSegment(new k(this._endPositionAtSeaLevel,s)),this._segmentLabel.geometry={type:"segment",segment:n,sampleLocation:"center"},this._segmentLabel.anchor=t===M.AboveSegment?"top":"bottom"}_updateLabelText({text:e,visualizedMeasurement:t}){null!=e?(this._segmentLabel.text="euclidean"===t?e.euclideanDistance:e.geodesicDistance,this._horizontalLabel.text=e.horizontalDistance,this._verticalLabel.text=e.verticalDistance):(this._segmentLabel.text=null,this._horizontalLabel.text=null,this._verticalLabel.text=null),this.notifyChange("labels")}_updateLabelVisibility({visible:e,viewMode:t}){const i=this._segmentLabel,s=this._horizontalLabel,n=this._verticalLabel;if(i.visible=!1,s.visible=!1,n.visible=!1,e)switch(t){case z.Direct:i.visible=!0;break;case z.Triangle:i.visible=!0,s.visible=!0,n.visible=!0;break;case z.ProjectedGeodesic:i.visible=!0;case z.None:}}get _labelsText(){if(this.destroyed)return null;const e=this.messages,t=this.analysisView.result;if(null==t||null==e)return null;const{directDistance:i,horizontalDistance:s,verticalDistance:n,geodesicDistance:o}=t,l=this.analysisView.unit,a=e=>({euclideanDistance:"",geodesicDistance:"",horizontalDistance:"",verticalDistance:"",...e});switch(l){case"metric":return a({euclideanDistance:i&&h(e,i),geodesicDistance:o&&h(e,o),horizontalDistance:s&&h(e,s),verticalDistance:n&&m(e,n)});case"imperial":return a({euclideanDistance:i&&d(e,i),geodesicDistance:o&&d(e,o),horizontalDistance:s&&d(e,s),verticalDistance:n&&u(e,n)});default:return a({euclideanDistance:i&&c(e,i,l),geodesicDistance:o&&c(e,o,l),horizontalDistance:s&&c(e,s,l),verticalDistance:n&&c(e,n,l)})}}_updateSegmentStripeLength(e){const t=this._segmentVisualElement;null!=e?(t.stripeLength=e,t.stripesEnabled=!0):t.stripesEnabled=!1}get _actualVisualElementsOrientation(){if(null!=this._triangleOrientationOverride)return this._triangleOrientationOverride;const e=this.visualElementOrientation;return e===M.Auto?this.view.state.camera.aboveGround?M.AboveSegment:M.BelowSegment:e}_requiresGeodesicGuideAt(e){const t=this.view;if(!t?.state)return!1;const i=t.state.camera,s=t.renderCoordsHelper;if(!s)return!1;const n=i.computeScreenPixelSizeAt(e);return s.getAltitude(e)/n>=10}get _measurementArrowStripeLength(){const{result:e,unit:t}=this.analysisView;if(null==e)return null;let i=null;const s=e.directDistance;switch(t){case"metric":i=s&&g(s,"meters");break;case"imperial":i=s&&g(s,w(s.value,s.unit));break;default:i=s&&g(s,t)}if(null==i)return null;return l(i.value/30)*S(1,i.unit,"meters")}_updateMessageBundle(){this.loadingMessages=!0,Q("esri/core/t9n/Units").then((e=>{this.messages=e})).finally((()=>{this.loadingMessages=!1}))}get testData(){return{labels:this.labels,stripeLength:this._segmentVisualElement?.stripeLength}}};function B(e,t,i,s,n){const o=N,l=I;n.projectToRenderScreen(i,o),n.projectToRenderScreen(t,l);const a={segment:"bottom",horizontal:"top",vertical:o[0]<l[0]?"left":"right"};{const s=J,o=K;if(C(e,i,s,n),C(e,t,o,n),A(s,o)>=W){const e=Math.sign(s[1])===Math.sign(o[1]);a.segment=e?O(a.vertical):a.vertical}else{const e=X;C(i,t,e,n),A(e,o)>=W&&(a.segment=Math.sign(e[0])===Math.sign(o[0])?O(a.horizontal):a.horizontal)}}if(s===M.BelowSegment){const e=e=>"top"===e?"bottom":"top";a.segment=e(a.segment),a.horizontal=e(a.horizontal),a.vertical=e(a.vertical)}return a}e([y()],q.prototype,"_parameters",null),e([y()],q.prototype,"_triangleOrientationOverride",void 0),e([y()],q.prototype,"messages",void 0),e([y()],q.prototype,"view",void 0),e([y()],q.prototype,"analysis",void 0),e([y()],q.prototype,"analysisView",void 0),e([y()],q.prototype,"loadingMessages",void 0),e([y()],q.prototype,"visible",null),e([y()],q.prototype,"viewMode",null),e([y()],q.prototype,"actualVisualizedMeasurement",null),e([y()],q.prototype,"visualElementOrientation",void 0),e([y()],q.prototype,"triangleCollapseRatioThreshold",void 0),e([y()],q.prototype,"allowVisualElementsOrientationChange",null),e([y()],q.prototype,"labels",null),e([y()],q.prototype,"_labelsText",null),e([y()],q.prototype,"_actualVisualElementsOrientation",null),e([y()],q.prototype,"_measurementArrowStripeLength",null),q=e([f("esri.views.3d.analysis.DirectLineMeasurement.DirectLineMeasurementVisualization")],q);const W=Math.cos(a(12)),N=b(),I=b(),J=L(),K=L(),X=L();export{q as DirectLineMeasurementVisualization};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import"../../../../intl.js";import t from"../../../../core/Accessor.js";import{unitRGBAFromColor as i,multiplyOpacityToUnitRGBA as s,getContrast as n,BrightnessThreshold as o,multiplyOpacity as l}from"../../../../core/colorUtils.js";import{nextHighestPowerOfTen as a,deg2rad as r}from"../../../../core/mathUtils.js";import{destroyMaybe as c}from"../../../../core/maybe.js";import{formatDecimal as d,formatImperialLength as u,formatImperialVerticalLength as h,formatMetricLength as m,formatMetricVerticalLength as g}from"../../../../core/quantityFormatUtils.js";import{toUnit as p}from"../../../../core/quantityUtils.js";import{watch as _,syncAndInitial as v,initial as b}from"../../../../core/reactiveUtils.js";import{createRenderScreenPointArray3 as L,createRenderScreenPointArray as w}from"../../../../core/screenUtils.js";import{adaptiveImperialLengthUnit as S,convertUnit as y}from"../../../../core/unitUtils.js";import{property as f}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import{subclass as A}from"../../../../core/accessorSupport/decorators/subclass.js";import{g as E}from"../../../../chunks/vec2.js";import{i as V,g as P}from"../../../../chunks/vec3.js";import{c as j}from"../../../../chunks/vec3f64.js";import{MeasurementMode as z}from"../interfaces.js";import{ViewMode as M,VisualElementOrientation as C}from"./interfaces.js";import{screenSpaceTangent as D}from"../support/viewUtils.js";import{LabelVisualElement as O,mirrorPosition as x}from"../../interactive/visualElements/LabelVisualElement.js";import{LineVisualElement as G}from"../../interactive/visualElements/LineVisualElement.js";import{MeasurementArrowVisualElement as T}from"../../interactive/visualElements/MeasurementArrowVisualElement.js";import{RightAngleQuadVisualElement as H}from"../../interactive/visualElements/RightAngleQuadVisualElement.js";import{GeodesicSegment as k,EuclideanSegment as U}from"../../interactive/visualElements/support/Segment.js";import{RenderOccludedFlag as F}from"../../webgl-engine/lib/Material.js";import{createStipplePatternSimple as R}from"../../webgl-engine/materials/lineStippleUtils.js";import{onLocaleChange as Q}from"../../../../intl/locale.js";import{fetchMessageBundle as q}from"../../../../intl/messages.js";let B=class extends t{get _parameters(){const e=this.view.effectiveTheme,{accentColor:t,textColor:a}=e,r=i(t),c=s(t,.75),d=i(n(t)),u=n(a,o.Low);return{accentColor:r,contrastColor:d,translucentAccentColor:c,triangleLineWidth:3,geodesicProjectionLineWidth:2,guideLineWidth:2,guideStippleLengthPixels:3,directLabelFontSize:16,horizontalLabelFontSize:12,verticalLabelFontSize:12,textColor:a,textBackgroundColor:l(u,.6),textCalloutColor:l(u,.5)}}get visible(){return this.analysisView.visible}get viewMode(){const{elevationAlignedStartPoint:e,elevationAlignedEndPoint:t}=this.analysisView;if(null==e||null==t||e.equals(t))return M.None;const i=this.analysisView.result;if(null==i)return M.Direct;if("geodesic"===i.mode)return this._requiresGeodesicGuideAt(this._startPosition)||this._requiresGeodesicGuideAt(this._endPosition)?M.ProjectedGeodesic:M.Direct;const{verticalDistance:s,horizontalDistance:n}=i,o=s.value,l=n.value;return Math.min(o/l,l/o)<this.triangleCollapseRatioThreshold?M.Direct:M.Triangle}get actualVisualizedMeasurement(){if(null==this.analysisView.result)switch(this.analysisView.measurementMode){case z.Auto:case z.Euclidean:default:return"euclidean";case z.Geodesic:return"geodesic"}return this.analysisView.result.mode}get allowVisualElementsOrientationChange(){return null==this._triangleOrientationOverride}set allowVisualElementsOrientationChange(e){null==this._triangleOrientationOverride!==e&&(null==this._triangleOrientationOverride?this._triangleOrientationOverride=this._actualVisualElementsOrientation:this._triangleOrientationOverride=null)}get labels(){const e="geodesic"===this.actualVisualizedMeasurement;return{direct:this._segmentLabel,horizontal:e?this._segmentLabel:this._horizontalLabel,vertical:this._verticalLabel}}constructor(e){super(e),this._segmentVisualElement=null,this._triangleVisualElement=null,this._rightAngleQuad=null,this._projectedGeodesicLine=null,this._geodesicStartHint=null,this._geodesicEndHint=null,this._segmentLabel=null,this._verticalLabel=null,this._horizontalLabel=null,this._startPosition=j(),this._endPosition=j(),this._cornerPosition=j(),this._startPositionAtSeaLevel=j(),this._endPositionAtSeaLevel=j(),this._triangleOrientationOverride=null,this.messages=null,this.loadingMessages=!0,this.visualElementOrientation=C.Auto,this.triangleCollapseRatioThreshold=.03}initialize(){const e=this._parameters,t={attached:!0,view:this.view,isDecoration:!0},{guideLineWidth:i,guideStippleLengthPixels:s,triangleLineWidth:n,geodesicProjectionLineWidth:o,directLabelFontSize:l,verticalLabelFontSize:a,horizontalLabelFontSize:r}=e;this._segmentVisualElement=new T({...t,geometry:null,renderOccluded:F.OccludeAndTransparent}),this._triangleVisualElement=new G({...t,width:n,renderOccluded:F.OccludeAndTransparent}),this._rightAngleQuad=new H({...t,renderOccluded:F.OccludeAndTransparent});const c={...t,polygonOffset:!0,renderOccluded:F.OccludeAndTransparent};this._projectedGeodesicLine=new G({...c,width:o,stipplePattern:R(s)}),this._geodesicStartHint=new G({...c,width:i,stipplePattern:R(s)}),this._geodesicEndHint=new G({...c,width:i,stipplePattern:R(s)}),this._segmentLabel=new O({...t,fontSize:l}),this._verticalLabel=new O({...t,fontSize:a}),this._horizontalLabel=new O({...t,fontSize:r}),this.addHandles([_((()=>{const{elevationAlignedStartPoint:e,elevationAlignedEndPoint:t}=this.analysisView,i=this.view;return{view:i,camera:i.state.camera,viewMode:this.viewMode,elevationAlignedStartPoint:e,elevationAlignedEndPoint:t,orientation:this._actualVisualElementsOrientation,visualizedMeasurement:this.actualVisualizedMeasurement,stripeLength:this._measurementArrowStripeLength}}),(e=>this._updateGeometryAndViewMode(e)),v),_((()=>({visible:this.visible,viewMode:this.viewMode})),(e=>this._updateVisualElementVisibility(e)),v),_((()=>({text:this._labelsText,visualizedMeasurement:this.actualVisualizedMeasurement})),(e=>this._updateLabelText(e)),v),_((()=>({visible:this.visible,viewMode:this.viewMode})),(e=>this._updateLabelVisibility(e)),v),_((()=>this._measurementArrowStripeLength),(e=>this._updateSegmentStripeLength(e)),v),Q((async()=>this._updateMessageBundle())),_((()=>this._parameters),(({textBackgroundColor:e,textCalloutColor:t,textColor:i,translucentAccentColor:s,accentColor:n,contrastColor:o})=>{const{_segmentLabel:l,_verticalLabel:a,_horizontalLabel:r,_triangleVisualElement:c,_rightAngleQuad:d,_projectedGeodesicLine:u,_geodesicStartHint:h,_geodesicEndHint:m,_segmentVisualElement:g}=this;l.backgroundColor=e,l.calloutColor=t,l.textColor=i,a.backgroundColor=e,a.calloutColor=t,a.textColor=i,r.backgroundColor=e,r.calloutColor=t,r.textColor=i,c.color=s,d.color=s,u.color=s,h.color=s,m.color=s,g.color=n,g.contrastColor=o}),b)]),this._updateMessageBundle()}destroy(){this._segmentVisualElement=c(this._segmentVisualElement),this._triangleVisualElement=c(this._triangleVisualElement),this._rightAngleQuad=c(this._rightAngleQuad),this._projectedGeodesicLine=c(this._projectedGeodesicLine),this._geodesicStartHint=c(this._geodesicStartHint),this._geodesicEndHint=c(this._geodesicEndHint),this._segmentLabel=c(this._segmentLabel),this._verticalLabel=c(this._verticalLabel),this._horizontalLabel=c(this._horizontalLabel),this.set("view",null)}_updateVisualElementVisibility({visible:e,viewMode:t}){if(this._segmentVisualElement.visible=!1,this._triangleVisualElement.visible=!1,this._rightAngleQuad.visible=!1,this._projectedGeodesicLine.visible=!1,this._geodesicStartHint.visible=!1,this._geodesicEndHint.visible=!1,e)switch(t){case M.None:break;case M.Direct:this._segmentVisualElement.visible=!0;break;case M.Triangle:this._segmentVisualElement.visible=!0,this._triangleVisualElement.visible=!0,this._rightAngleQuad.visible=!0;break;case M.ProjectedGeodesic:this._segmentVisualElement.visible=!0,this._projectedGeodesicLine.visible=!0,this._geodesicStartHint.visible=!0,this._geodesicEndHint.visible=!0}}_updateGeometryAndViewMode({view:e,camera:t,viewMode:i,elevationAlignedStartPoint:s,elevationAlignedEndPoint:n,orientation:o,visualizedMeasurement:l,stripeLength:a}){const r=e.renderCoordsHelper;if(null==r||null==s||null==n||s.equals(n))return;let c=this._startPosition,d=this._endPosition;r.toRenderCoords(s,c),r.toRenderCoords(n,d);const u=o===C.AboveSegment?1:-1,h=u*(r.getAltitude(d)-r.getAltitude(c));h<0&&(c=this._endPosition,d=this._startPosition);const m="geodesic"===l?new k(this._startPosition,this._endPosition,r.spatialReference):new U(this._startPosition,this._endPosition);switch(this._segmentVisualElement.geometry=m,this._updateSegmentStripeLength(a),i){case M.Direct:this._updateSegment(m,o);break;case M.Triangle:this._updateSegmentAndTriangle({view:e,camera:t,segment:m,orientation:o,startPosition:c,endPosition:d,deltaSign:u,altitudeDelta:h});break;case M.ProjectedGeodesic:this._updateSegmentAndProjection({view:e,orientation:o,startPosition:c,endPosition:d})}}_updateSegment(e,t){this._segmentLabel.anchor=t===C.AboveSegment?"top":"bottom",this._segmentLabel.geometry={type:"segment",segment:e,sampleLocation:"center"}}_updateSegmentAndTriangle({view:{renderCoordsHelper:e},camera:t,segment:i,orientation:s,startPosition:n,endPosition:o,deltaSign:l,altitudeDelta:a}){const r=this._cornerPosition;e.worldUpAtPosition(n,r),V(r,r,l*Math.abs(a)),P(r,r,n),this._triangleVisualElement.geometry=[[[n[0],n[1],n[2]],[r[0],r[1],r[2]],[o[0],o[1],o[2]]]],this._rightAngleQuad.geometry={previous:n,center:r,next:o};const c=new U(n,r),d=new U(r,o),u=W(n,o,r,s,t);this._segmentLabel.anchor=u.segment,this._segmentLabel.geometry={type:"segment",segment:i,sampleLocation:"center"},this._verticalLabel.geometry={type:"segment",segment:c,sampleLocation:"center"},this._verticalLabel.anchor=u.vertical,this._horizontalLabel.geometry={type:"segment",segment:d,sampleLocation:"center"},this._horizontalLabel.anchor=u.horizontal}_updateSegmentAndProjection({view:{renderCoordsHelper:e},orientation:t,startPosition:i,endPosition:s}){e.setAltitude(this._startPositionAtSeaLevel,0,i),e.setAltitude(this._endPositionAtSeaLevel,0,s);const n=new k(this._startPositionAtSeaLevel,this._endPositionAtSeaLevel,e.spatialReference);this._projectedGeodesicLine.setGeometryFromSegment(n),this._geodesicStartHint.setGeometryFromSegment(new U(this._startPositionAtSeaLevel,i)),this._geodesicEndHint.setGeometryFromSegment(new U(this._endPositionAtSeaLevel,s)),this._segmentLabel.geometry={type:"segment",segment:n,sampleLocation:"center"},this._segmentLabel.anchor=t===C.AboveSegment?"top":"bottom"}_updateLabelText({text:e,visualizedMeasurement:t}){null!=e?(this._segmentLabel.text="euclidean"===t?e.euclideanDistance:e.geodesicDistance,this._horizontalLabel.text=e.horizontalDistance,this._verticalLabel.text=e.verticalDistance):(this._segmentLabel.text=null,this._horizontalLabel.text=null,this._verticalLabel.text=null),this.notifyChange("labels")}_updateLabelVisibility({visible:e,viewMode:t}){const i=this._segmentLabel,s=this._horizontalLabel,n=this._verticalLabel;if(i.visible=!1,s.visible=!1,n.visible=!1,e)switch(t){case M.Direct:i.visible=!0;break;case M.Triangle:i.visible=!0,s.visible=!0,n.visible=!0;break;case M.ProjectedGeodesic:i.visible=!0;case M.None:}}get _labelsText(){if(this.destroyed)return null;const e=this.messages,t=this.analysisView.result;if(null==t||null==e)return null;const{directDistance:i,horizontalDistance:s,verticalDistance:n,geodesicDistance:o}=t,l=this.analysisView.unit,a=e=>({euclideanDistance:"",geodesicDistance:"",horizontalDistance:"",verticalDistance:"",...e});switch(l){case"metric":return a({euclideanDistance:i&&m(e,i),geodesicDistance:o&&m(e,o),horizontalDistance:s&&m(e,s),verticalDistance:n&&g(e,n)});case"imperial":return a({euclideanDistance:i&&u(e,i),geodesicDistance:o&&u(e,o),horizontalDistance:s&&u(e,s),verticalDistance:n&&h(e,n)});default:return a({euclideanDistance:i&&d(e,i,l),geodesicDistance:o&&d(e,o,l),horizontalDistance:s&&d(e,s,l),verticalDistance:n&&d(e,n,l)})}}_updateSegmentStripeLength(e){const t=this._segmentVisualElement;null!=e?(t.stripeLength=e,t.stripesEnabled=!0):t.stripesEnabled=!1}get _actualVisualElementsOrientation(){if(null!=this._triangleOrientationOverride)return this._triangleOrientationOverride;const e=this.visualElementOrientation;return e===C.Auto?this.view.state.camera.aboveGround?C.AboveSegment:C.BelowSegment:e}_requiresGeodesicGuideAt(e){const t=this.view;if(!t?.state)return!1;const i=t.state.camera,s=t.renderCoordsHelper;if(!s)return!1;const n=i.computeScreenPixelSizeAt(e);return s.getAltitude(e)/n>=10}get _measurementArrowStripeLength(){const{result:e,unit:t}=this.analysisView;if(null==e)return null;let i=null;const s=e.directDistance;switch(t){case"metric":i=s&&p(s,"meters");break;case"imperial":i=s&&p(s,S(s.value,s.unit));break;default:i=s&&p(s,t)}if(null==i)return null;return a(i.value/30)*y(1,i.unit,"meters")}_updateMessageBundle(){this.loadingMessages=!0,q("esri/core/t9n/Units").then((e=>{this.messages=e})).finally((()=>{this.loadingMessages=!1}))}get testData(){return{labels:this.labels,stripeLength:this._segmentVisualElement?.stripeLength}}};function W(e,t,i,s,n){const o=I,l=J;n.projectToRenderScreen(i,o),n.projectToRenderScreen(t,l);const a={segment:"bottom",horizontal:"top",vertical:o[0]<l[0]?"left":"right"};{const s=K,o=X;if(D(e,i,s,n),D(e,t,o,n),E(s,o)>=N){const e=Math.sign(s[1])===Math.sign(o[1]);a.segment=e?x(a.vertical):a.vertical}else{const e=Y;D(i,t,e,n),E(e,o)>=N&&(a.segment=Math.sign(e[0])===Math.sign(o[0])?x(a.horizontal):a.horizontal)}}if(s===C.BelowSegment){const e=e=>"top"===e?"bottom":"top";a.segment=e(a.segment),a.horizontal=e(a.horizontal),a.vertical=e(a.vertical)}return a}e([f()],B.prototype,"_parameters",null),e([f()],B.prototype,"_triangleOrientationOverride",void 0),e([f()],B.prototype,"messages",void 0),e([f()],B.prototype,"view",void 0),e([f()],B.prototype,"analysis",void 0),e([f()],B.prototype,"analysisView",void 0),e([f()],B.prototype,"loadingMessages",void 0),e([f()],B.prototype,"visible",null),e([f()],B.prototype,"viewMode",null),e([f()],B.prototype,"actualVisualizedMeasurement",null),e([f()],B.prototype,"visualElementOrientation",void 0),e([f()],B.prototype,"triangleCollapseRatioThreshold",void 0),e([f()],B.prototype,"allowVisualElementsOrientationChange",null),e([f()],B.prototype,"labels",null),e([f()],B.prototype,"_labelsText",null),e([f()],B.prototype,"_actualVisualElementsOrientation",null),e([f()],B.prototype,"_measurementArrowStripeLength",null),B=e([A("esri.views.3d.analysis.DirectLineMeasurement.DirectLineMeasurementVisualization")],B);const N=Math.cos(r(12)),I=L(),J=L(),K=w(),X=w(),Y=w();export{B as DirectLineMeasurementVisualization};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../../../../../chunks/tslib.es6.js";import e from"../../../../../core/Evented.js";import{makeHandle as i}from"../../../../../core/handleUtils.js";import{watch as a,initial as o}from"../../../../../core/reactiveUtils.js";import{lengthUnitFromSpatialReference as s}from"../../../../../core/unitUtils.js";import{property as n}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/accessorSupport/ensureType.js";import"../../../../../core/arrayUtils.js";import"../../../../../core/has.js";import{subclass as r}from"../../../../../core/accessorSupport/decorators/subclass.js";import{containsXY as l}from"../../../../../geometry/support/aaBoundingRect.js";import{sm4d as p}from"../../../../../geometry/support/vectorStacks.js";import{calculateBoundedPlaneTranslateRotate as h,resizeNormal as c,resizeOutlineOnly as d}from"../../../analysis/Slice/sliceToolUtils.js";import{Manipulator3D as u}from"../../Manipulator3D.js";import{getGraphicAttachmentOrigin as m}from"../../manipulatorUtils.js";import{ManipulatorType as g}from"../ManipulatorType.js";import{canMoveZ as _}from"../manipulatorUtils.js";import{createVisualElements as v}from"../visualElementUtils.js";import{ExtentMove as y}from"./ExtentMove.js";import{ExtentRotate as f}from"./ExtentRotate.js";import{ExtentScale as b}from"./ExtentScale.js";import{TransformBounds as M}from"./extentUtils.js";import{PreserveAspectRatio as S}from"./PreserveAspectRatio.js";import{OutlineVisualElement as E}from"../../visualElements/OutlineVisualElement.js";import{GraphicState as x}from"../../../layers/graphics/GraphicState.js";import{InteractiveToolBase as A}from"../../../../interactive/InteractiveToolBase.js";import{EditGeometryOperations as O}from"../../../../interactive/editGeometry/EditGeometryOperations.js";import{unapply as R,apply as j}from"../../../../interactive/editGeometry/support/editPlaneUtils.js";import T from"../../../../interactive/sketch/SketchTooltipOptions.js";import{Tooltip as w}from"../../../../interactive/tooltip/Tooltip.js";let U=class extends(e.EventedMixin(A)){constructor(t){super(t),this.enableZ=!0,this.enableScaling=!0,this.enableRotation=!0,this.tooltipOptions=new T,this._preserveAspectRatio=new S,this.grabbing=!1,this.inputState=null,this._attachmentOrigin=null,this.type="transform-3d",this._outlineVisualElement=null}initialize(){const{view:t,graphic:e}=this,s=this._graphicState=new x({graphic:e}),n=e.geometry,r=this._editGeometryOperations=O.fromGeometry(n,t.state.viewingMode),l=this._bounds=new M(this,(()=>this._updateManipulators()),r.data);this._extentMove=new y(this,s,r,l),this._extentScale=new b(this,s,r,l,(()=>this._preserveAspectRatio.createDragEventPipelineStep())),this._extentRotate=new f(this,r,l),this.addHandles([a((()=>this.enableZ),(()=>this._updateManipulatorAvailability(this._extentMove.moveZManipulator,g.TRANSLATE_Z))),a((()=>this.enableScaling),(()=>this._extentScale.forEachManipulator((t=>this._updateManipulatorAvailability(t,g.SCALE))))),a((()=>this.enableRotation),(()=>this._updateManipulatorAvailability(this._extentRotate.rotateManipulator,g.ROTATE)))]),this._updateAllManipulatorAvailability();const p=v({view:t,graphic:e,forEachManipulator:t=>this._forEachManipulator(t),onManipulatorsChanged:()=>i()});null!=p&&(this._outlineVisualElement=p.visualElement instanceof E?p.visualElement:null),p&&this.addHandles(p),this.addHandles([s.on("changed",(()=>this._onGeometryChanged())),a((()=>s.displaying),(()=>this._updateAllManipulatorAvailability())),a((()=>s.isDraped),(()=>this._graphicDrapedChanged()),o),a((()=>t.pointsOfInterest?.centerOnSurfaceFrequent.location),(()=>l.updateDisplayBounds())),t.trackGraphicState(s)]);const h=t=>{this.addHandles(t.events.on("grab-changed",(()=>{this.grabbing=t.grabbing,this._updateAllManipulatorAvailability()})))};this._forEachManipulator(h);const c=(t,i)=>{this.addHandles(t.events.on("immediate-click",(t=>{i===g.TRANSLATE_XY&&this.emit("immediate-click",{...t,graphic:e}),t.stopPropagation()})))};this._forEachManipulator(c),this._initializeTooltip(),this.finishToolCreation()}destroy(){this._extentMove.destroy(),this._extentScale.destroy(),this._extentRotate.destroy(),this._editGeometryOperations.destroy(),this._tooltip.destroy(),this._set("view",null),this._set("graphic",null)}_initializeTooltip(){const{view:t}=this,e=this._tooltip=new w({view:t}),i=()=>{e.info=this._getUpdatedTooltipInfo()};this.addHandles([this.on("graphic-translate-start",i),this.on("graphic-translate",i),this.on("graphic-translate-stop",(()=>{this._tooltip.clear()})),this.on("graphic-rotate-start",i),this.on("graphic-rotate",i),this.on("graphic-rotate-stop",i),this.on("graphic-scale-start",i),this.on("graphic-scale",i),this.on("graphic-scale-stop",i)]),this._forEachManipulator((t=>{this.addHandles([t.events.on("focus-changed",i),t.events.on("grab-changed",i),t.events.on("drag",(t=>{"cancel"===t.action?this._tooltip.clear():i()}))])}))}_getUpdatedTooltipInfo(){return this.tooltipOptions.enabled?this._extentMove.getUpdatedTooltipInfo()??this._extentScale.getUpdatedTooltipInfo()??this._extentRotate.getUpdatedTooltipInfo():null}_onGeometryChanged(){this._bounds.updateDisplayBounds()}_graphicDrapedChanged(){this.removeHandles(G),this._bounds.updateDisplayBounds(),this._graphicState.isDraped&&this.addHandles(this.view.elevationProvider.on("elevation-change",(t=>{null!=this._attachmentOrigin&&l(t.extent,this._attachmentOrigin.x,this._attachmentOrigin.y)&&this._bounds.updateDisplayBounds()})),G)}_updateManipulators(){if(!this.visible)return;const t=this._bounds.displayBounds,e=h(t,p.get());this._extentMove.updateManipulators(e,t),this._extentScale.updateManipulators(e,t),this._extentRotate.updateManipulators(e,t)}_updateAllManipulatorAvailability(){this._forEachManipulator(((t,e)=>this._updateManipulatorAvailability(t,e)))}_updateManipulatorAvailability(t,e){const i=this.grabbing&&!t.grabbing;if(t.interactive=!i,t instanceof u){const a=this._graphicState.displaying,o=this.enableZ&&_(this.graphic);switch(e){case g.ROTATE:t.available=a&&this.enableRotation;break;case g.SCALE:t.available=a&&(this.enableScaling||this.enableRotation||o),t.interactive=!i&&this.enableScaling,t.state=this.enableScaling?c:d;break;case g.TRANSLATE_Z:t.available=a&&o;break;default:t.available=a}}}_forEachManipulator(t){this._extentMove.forEachManipulator(t),this._extentScale.forEachManipulator(t),this._extentRotate.forEachManipulator(t)}get preserveAspectRatio(){return this._preserveAspectRatio.enabled}set preserveAspectRatio(t){this._preserveAspectRatio.enabled=t,this._set("preserveAspectRatio",t)}get moveUnit(){return s(this.view.spatialReference)??"meters"}get attachmentOrigin(){const t=this.graphic.geometry,e=this._graphicState.isDraped?null:this._outlineVisualElement?.attachmentOrigin;return this._attachmentOrigin=e??m(this.view,this.graphic)??t?.extent?.center,this._attachmentOrigin}reset(){}cancel(){if(this.canUndo){const t=this._editGeometryOperations.undo();R(t,this._bounds.mapBounds),this.graphic.geometry=this._editGeometryOperations.data.geometry}this.inputState=null}get canUndo(){return this._editGeometryOperations.canUndo}undo(){if(null!=this.inputState)this.view.activeTool=null;else if(this.canUndo){const t=this._editGeometryOperations.undo();R(t,this._bounds.mapBounds),this.graphic.geometry=this._editGeometryOperations.data.geometry}}get canRedo(){return this._editGeometryOperations.canRedo}redo(){if(this.canRedo){const t=this._editGeometryOperations.redo();j(t,this._bounds.mapBounds),this.graphic.geometry=this._editGeometryOperations.data.geometry}}get test(){return{moveZManipulator:this._extentMove.moveZManipulator,resizeManipulators:this._extentScale.resizeManipulators,rotateManipulator:this._extentRotate.rotateManipulator,tooltip:this._tooltip}}};t([n({constructOnly:!0,nonNullable:!0})],U.prototype,"view",void 0),t([n({constructOnly:!0,nonNullable:!0})],U.prototype,"graphic",void 0),t([n()],U.prototype,"enableZ",void 0),t([n()],U.prototype,"enableScaling",void 0),t([n()],U.prototype,"enableRotation",void 0),t([n({constructOnly:!0,type:T})],U.prototype,"tooltipOptions",void 0),t([n()],U.prototype,"preserveAspectRatio",null),t([n()],U.prototype,"moveUnit",null),t([n()],U.prototype,"grabbing",void 0),t([n()],U.prototype,"inputState",void 0),t([n({readOnly:!0})],U.prototype,"type",void 0),U=t([r("esri.views.3d.interactive.editingTools.transformGraphic.ExtentTransformTool")],U);const G="draped-elevation-changes";export{U as ExtentTransformTool};
5
+ import{_ as t}from"../../../../../chunks/tslib.es6.js";import e from"../../../../../core/Evented.js";import{makeHandle as i}from"../../../../../core/handleUtils.js";import{watch as a,initial as o}from"../../../../../core/reactiveUtils.js";import{lengthUnitFromSpatialReference as s}from"../../../../../core/unitUtils.js";import{property as n}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/accessorSupport/ensureType.js";import"../../../../../core/arrayUtils.js";import"../../../../../core/has.js";import{subclass as r}from"../../../../../core/accessorSupport/decorators/subclass.js";import{containsXY as l}from"../../../../../geometry/support/aaBoundingRect.js";import{sm4d as p}from"../../../../../geometry/support/vectorStacks.js";import{calculateBoundedPlaneTranslateRotate as h,resizeNormal as c,resizeOutlineOnly as d}from"../../../analysis/Slice/sliceToolUtils.js";import{Manipulator3D as u}from"../../Manipulator3D.js";import{getGraphicAttachmentOrigin as m}from"../../manipulatorUtils.js";import{ManipulatorType as g}from"../ManipulatorType.js";import{canMoveZ as _}from"../manipulatorUtils.js";import{createVisualElements as v}from"../visualElementUtils.js";import{ExtentMove as y}from"./ExtentMove.js";import{ExtentRotate as f}from"./ExtentRotate.js";import{ExtentScale as b}from"./ExtentScale.js";import{TransformBounds as M}from"./extentUtils.js";import{PreserveAspectRatio as S}from"./PreserveAspectRatio.js";import{OutlineVisualElement as E}from"../../visualElements/OutlineVisualElement.js";import{GraphicState as x}from"../../../layers/graphics/GraphicState.js";import{InteractiveToolBase as A}from"../../../../interactive/InteractiveToolBase.js";import{EditGeometryOperations as O}from"../../../../interactive/editGeometry/EditGeometryOperations.js";import{unapply as R,apply as j}from"../../../../interactive/editGeometry/support/editPlaneUtils.js";import T from"../../../../interactive/sketch/SketchTooltipOptions.js";import{Tooltip as w}from"../../../../interactive/tooltip/Tooltip.js";let U=class extends(e.EventedMixin(A)){constructor(t){super(t),this.enableZ=!0,this.enableScaling=!0,this.enableRotation=!0,this.tooltipOptions=new T,this._preserveAspectRatio=new S,this.grabbing=!1,this.inputState=null,this._attachmentOrigin=null,this.type="transform-3d",this._outlineVisualElement=null}initialize(){const{view:t,graphic:e}=this,s=this._graphicState=new x({graphic:e}),n=e.geometry,r=this._editGeometryOperations=O.fromGeometry(n,t.state.viewingMode),l=this._bounds=new M(this,(()=>this._updateManipulators()),r.data);this._extentMove=new y(this,s,r,l),this._extentScale=new b(this,s,r,l,(()=>this._preserveAspectRatio.createDragEventPipelineStep())),this._extentRotate=new f(this,r,l),this.addHandles([a((()=>this.enableZ),(()=>this._updateManipulatorAvailability(this._extentMove.moveZManipulator,g.TRANSLATE_Z))),a((()=>this.enableScaling),(()=>this._extentScale.forEachManipulator((t=>this._updateManipulatorAvailability(t,g.SCALE))))),a((()=>this.enableRotation),(()=>this._updateManipulatorAvailability(this._extentRotate.rotateManipulator,g.ROTATE)))]),this._updateAllManipulatorAvailability();const p=v({view:t,graphic:e,forEachManipulator:t=>this._forEachManipulator(t),onManipulatorsChanged:()=>i()});if(null!=p){const{visualElement:t}=p;t instanceof E&&(this._outlineVisualElement=t,this.addHandles(t.events.on("attachment-origin-changed",(()=>this._bounds.updateDisplayBounds())))),this.addHandles(p)}this.addHandles([s.on("changed",(()=>this._onGeometryChanged())),a((()=>s.displaying),(()=>this._updateAllManipulatorAvailability())),a((()=>s.isDraped),(()=>this._graphicDrapedChanged()),o),a((()=>t.pointsOfInterest?.centerOnSurfaceFrequent.location),(()=>l.updateDisplayBounds())),t.trackGraphicState(s)]);const h=t=>{this.addHandles(t.events.on("grab-changed",(()=>{this.grabbing=t.grabbing,this._updateAllManipulatorAvailability()})))};this._forEachManipulator(h);const c=(t,i)=>{this.addHandles(t.events.on("immediate-click",(t=>{i===g.TRANSLATE_XY&&this.emit("immediate-click",{...t,graphic:e}),t.stopPropagation()})))};this._forEachManipulator(c),this._initializeTooltip(),this.finishToolCreation()}destroy(){this._extentMove.destroy(),this._extentScale.destroy(),this._extentRotate.destroy(),this._editGeometryOperations.destroy(),this._tooltip.destroy(),this._set("view",null),this._set("graphic",null)}_initializeTooltip(){const{view:t}=this,e=this._tooltip=new w({view:t}),i=()=>{e.info=this._getUpdatedTooltipInfo()};this.addHandles([this.on("graphic-translate-start",i),this.on("graphic-translate",i),this.on("graphic-translate-stop",(()=>{this._tooltip.clear()})),this.on("graphic-rotate-start",i),this.on("graphic-rotate",i),this.on("graphic-rotate-stop",i),this.on("graphic-scale-start",i),this.on("graphic-scale",i),this.on("graphic-scale-stop",i)]),this._forEachManipulator((t=>{this.addHandles([t.events.on("focus-changed",i),t.events.on("grab-changed",i),t.events.on("drag",(t=>{"cancel"===t.action?this._tooltip.clear():i()}))])}))}_getUpdatedTooltipInfo(){return this.tooltipOptions.enabled?this._extentMove.getUpdatedTooltipInfo()??this._extentScale.getUpdatedTooltipInfo()??this._extentRotate.getUpdatedTooltipInfo():null}_onGeometryChanged(){this._bounds.updateDisplayBounds()}_graphicDrapedChanged(){this.removeHandles(G),this._bounds.updateDisplayBounds(),this._graphicState.isDraped&&this.addHandles(this.view.elevationProvider.on("elevation-change",(t=>{null!=this._attachmentOrigin&&l(t.extent,this._attachmentOrigin.x,this._attachmentOrigin.y)&&this._bounds.updateDisplayBounds()})),G)}_updateManipulators(){if(!this.visible)return;const t=this._bounds.displayBounds,e=h(t,p.get());this._extentMove.updateManipulators(e,t),this._extentScale.updateManipulators(e,t),this._extentRotate.updateManipulators(e,t)}_updateAllManipulatorAvailability(){this._forEachManipulator(((t,e)=>this._updateManipulatorAvailability(t,e)))}_updateManipulatorAvailability(t,e){const i=this.grabbing&&!t.grabbing;if(t.interactive=!i,t instanceof u){const a=this._graphicState.displaying,o=this.enableZ&&_(this.graphic);switch(e){case g.ROTATE:t.available=a&&this.enableRotation;break;case g.SCALE:t.available=a&&(this.enableScaling||this.enableRotation||o),t.interactive=!i&&this.enableScaling,t.state=this.enableScaling?c:d;break;case g.TRANSLATE_Z:t.available=a&&o;break;default:t.available=a}}}_forEachManipulator(t){this._extentMove.forEachManipulator(t),this._extentScale.forEachManipulator(t),this._extentRotate.forEachManipulator(t)}get preserveAspectRatio(){return this._preserveAspectRatio.enabled}set preserveAspectRatio(t){this._preserveAspectRatio.enabled=t,this._set("preserveAspectRatio",t)}get moveUnit(){return s(this.view.spatialReference)??"meters"}get attachmentOrigin(){const t=this.graphic.geometry,e=this._graphicState.isDraped?null:this._outlineVisualElement?.attachmentOrigin;return this._attachmentOrigin=e??m(this.view,this.graphic)??t?.extent?.center,this._attachmentOrigin}reset(){}cancel(){if(this.canUndo){const t=this._editGeometryOperations.undo();R(t,this._bounds.mapBounds),this.graphic.geometry=this._editGeometryOperations.data.geometry}this.inputState=null}get canUndo(){return this._editGeometryOperations.canUndo}undo(){if(null!=this.inputState)this.view.activeTool=null;else if(this.canUndo){const t=this._editGeometryOperations.undo();R(t,this._bounds.mapBounds),this.graphic.geometry=this._editGeometryOperations.data.geometry}}get canRedo(){return this._editGeometryOperations.canRedo}redo(){if(this.canRedo){const t=this._editGeometryOperations.redo();j(t,this._bounds.mapBounds),this.graphic.geometry=this._editGeometryOperations.data.geometry}}get test(){return{moveZManipulator:this._extentMove.moveZManipulator,resizeManipulators:this._extentScale.resizeManipulators,rotateManipulator:this._extentRotate.rotateManipulator,tooltip:this._tooltip}}};t([n({constructOnly:!0,nonNullable:!0})],U.prototype,"view",void 0),t([n({constructOnly:!0,nonNullable:!0})],U.prototype,"graphic",void 0),t([n()],U.prototype,"enableZ",void 0),t([n()],U.prototype,"enableScaling",void 0),t([n()],U.prototype,"enableRotation",void 0),t([n({constructOnly:!0,type:T})],U.prototype,"tooltipOptions",void 0),t([n()],U.prototype,"preserveAspectRatio",null),t([n()],U.prototype,"moveUnit",null),t([n()],U.prototype,"grabbing",void 0),t([n()],U.prototype,"inputState",void 0),t([n({readOnly:!0})],U.prototype,"type",void 0),U=t([r("esri.views.3d.interactive.editingTools.transformGraphic.ExtentTransformTool")],U);const G="draped-elevation-changes";export{U as ExtentTransformTool};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../../../../../chunks/tslib.es6.js";import e from"../../../../../core/Accessor.js";import{multiplyOpacityToUnitRGBA as a}from"../../../../../core/colorUtils.js";import{cyclicalPI as i}from"../../../../../core/Cyclical.js";import o from"../../../../../core/Evented.js";import{clamp as r,rad2deg as s}from"../../../../../core/mathUtils.js";import{destroyMaybe as n}from"../../../../../core/maybe.js";import{createAngle as l,createLength as c}from"../../../../../core/quantityUtils.js";import{when as p,initial as h,watch as u}from"../../../../../core/reactiveUtils.js";import{addFrameTask as d}from"../../../../../core/scheduling.js";import{createScreenPointArray as g}from"../../../../../core/screenUtils.js";import{property as m}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/accessorSupport/ensureType.js";import"../../../../../core/arrayUtils.js";import"../../../../../core/has.js";import{subclass as f}from"../../../../../core/accessorSupport/decorators/subclass.js";import{c as _,E as D,m as S,b as v,k as M}from"../../../../../chunks/mat4.js";import{a as y}from"../../../../../chunks/mat4f64.js";import{s as T,f as b,l as w,a as j,b as R,g as I}from"../../../../../chunks/vec3.js";import{g as O,f as A}from"../../../../../chunks/vec3f64.js";import{fromPositionAndNormal as k,create as P,normal as F}from"../../../../../geometry/support/plane.js";import{wrap as C,distance2 as E}from"../../../../../geometry/support/ray.js";import{sv3d as U,sm4d as z}from"../../../../../geometry/support/vectorStacks.js";import{getGraphicEffectiveElevationInfo as L}from"../../../../../support/elevationInfoUtils.js";import{Manipulator3D as x}from"../../Manipulator3D.js";import{calculateInputRotationTransform as N}from"../../manipulatorUtils.js";import{RenderObject as H}from"../../RenderObject.js";import{screenToRenderPlane as G}from"../dragEventPipeline3D.js";import{ManipulatorType as V}from"../ManipulatorType.js";import{ringIndicatorDelayMs as q,rotateIndicatorDirectionBuffer as B,scaleIndicatorDirectionBuffer as J,rotateIndicatorArrowPlacementPercentage as K,ringThickness as Q,dragThresholdPx as W,ringRadius as X,innerIndicatorRadius as Y,outerIndicatorRadius as Z,ringHeight as $,rotateIndicatorArrowTipRadius as tt,rotateIndicatorArrowTipLength as et,scaleIndicatorOffset1 as at,scaleIndicatorOffset2 as it,indicatorThickness as ot,geometrySegments as rt,rotateIndicatorArcLength as st,ringResetAnimationSpeedFactor as nt,scaleIndicatorArcLength as lt}from"../manipulations/config.js";import{CullFaceOptions as ct}from"../../../webgl-engine/lib/basicInterfaces.js";import{createExtrudedTriangle as pt,transformInPlace as ht,createPathExtrusionGeometry as ut}from"../../../webgl-engine/lib/GeometryUtil.js";import{RenderOccludedFlag as dt}from"../../../webgl-engine/lib/Material.js";import{ColorMaterial as gt}from"../../../webgl-engine/materials/ColorMaterial.js";import{createManipulatorDragEventPipeline as mt}from"../../../../interactive/dragEventPipeline.js";import{ManipulatorStateCustomFlags as ft,ManipulatorStateFlags as _t}from"../../../../interactive/interfaces.js";import{Tooltip as Dt}from"../../../../interactive/tooltip/Tooltip.js";import{TransformRotateTooltipInfo as St,TransformScaleTooltipInfo as vt,TransformAbsoluteTooltipInfo as Mt}from"../../../../interactive/tooltip/TransformTooltipInfos.js";var yt;!function(t){t.ScaleIn=ft.Custom2,t.ScaleOut=ft.Custom3,t.RotateLeft=ft.Custom4,t.RotateRight=ft.Custom5,t.Unlocked=ft.Custom7,t.DelayedFocused=ft.Custom8,t.TouchInput=ft.Custom12}(yt||(yt={}));let Tt=class extends e{get angle(){return this.adapter.angle}get scale(){return this.adapter.scale}set location(t){this._ringManipulator.location=t}set elevationAlignedLocation(t){this._ringManipulator.elevationAlignedLocation=t}get grabbing(){return this._ringManipulator.grabbing}set interactive(t){this._ringManipulator.interactive=t}get updating(){return!!this._activeAnimation}constructor(t){super(t),this.mode=null,this._scaleRotateDragData=null,this._activeAnimation=null,this._ringIndicatorDelayMs=q,this._absoluteTooltipInfo=null,this._scaleTooltipInfo=null,this._rotateTooltipInfo=null,this.events=new o,this.getFocused=()=>this._ringManipulator.focused,this.getScale=()=>"scale"===this._scaleRotateDragData?.mode?this.adapter.scale:1}initialize(){this._tooltip=new Dt({view:this.tool.view}),this._createManipulator(),this._updateDragState(),this._updateManipulatorTransform(),this.addHandles(p((()=>!this.tooltipOptions.enabled),(()=>this._tooltip.clear()),h))}destroy(){this._activeAnimation?.frameTask.remove(),this._activeAnimation=null,this.tool.manipulators.remove(this._ringManipulator),this._ringManipulator=null,this._tooltip=n(this._tooltip)}startAnimation(t){this.cancelActiveAnimation(),t.start();const e=d({update:({deltaTime:e})=>{t.update(e)&&this.cancelActiveAnimation()}});this._activeAnimation={...t,frameTask:e}}cancelActiveAnimation(){this._activeAnimation?.frameTask.remove(),this._activeAnimation=n(this._activeAnimation)}forEachManipulator(t){t(this._ringManipulator,V.SCALE_ROTATE)}_createManipulator(){const t=this._createRingManipulator();this._ringManipulator=t,this.tool.manipulators.add(t);const e=this.tool.graphicState.graphic,a=mt(t,((t,a,o)=>{this._scaleRotateDragData=null;const n=this.adapter.startInteraction(),l={mode:"none",origin:O(t.renderLocation),initialAngle:this.adapter.angle,angle:0,angleDir:0,scaleDir:0};this._scaleRotateDragData=l,this._updateDragState();const c=U.get();this.tool.view.renderCoordsHelper.worldUpAtPosition(t.renderLocation,c),a.next(G(this.tool.view,k(t.renderLocation,c,P()))).next((t=>{const a=F(t.plane),o=N(t.renderStart,t.renderEnd,l.origin,a),c=i.shortestSignedDiff(l.angle,o);l.angleDir=r(l.angleDir+c,-B,B),l.angle=o;const p=bt(l,t),h=p-this.adapter.scale;if(l.scaleDir=r(l.scaleDir+h,-J,J),this._onScaleChanged(),"none"===l.mode){const a=this.mode||wt(t,t.plane,l.origin,this.tool.view.state.camera);if(null!=a){switch(a){case"rotate":this.tool.emit("graphic-rotate-start",{graphic:e,angle:0}),this.tool.emit("record-undo",{record:this.adapter.createUndoRecord()});break;case"scale":this.tool.emit("graphic-scale-start",{graphic:e,xScale:1,yScale:1}),this.tool.emit("record-undo",{record:this.adapter.createUndoRecord()})}l.mode=a}}switch(l.mode){case"rotate":n.state.angle=l.initialAngle+o;break;case"scale":n.state.scale=p,this._onScaleChanged()}switch(this._updateDragState(),this._updateManipulatorTransform(),t.action){case"start":case"update":switch(l.mode){case"rotate":this.tool.emit("graphic-rotate",{graphic:e,angle:s(l.angle)});break;case"scale":this.tool.emit("graphic-scale",{graphic:e,xScale:p,yScale:p})}break;case"end":switch(l.mode){case"rotate":this.tool.emit("graphic-rotate-stop",{graphic:e,angle:s(l.angle)});break;case"scale":this.tool.emit("graphic-scale-stop",{graphic:e,xScale:p,yScale:p})}}return"end"===t.action&&(this.startAnimation(It(this,(()=>this._onScaleChanged()))),this._scaleRotateDragData=null,this._updateDragState(),n.done()),t})).next(this._updateTooltipPipelineStep(l)),o.next((()=>{if(n.cancel(),null!=this._scaleRotateDragData){switch(this._scaleRotateDragData.mode){case"none":break;case"rotate":this.tool.emit("graphic-rotate-stop",{graphic:e,angle:0});break;case"scale":this.tool.emit("graphic-scale-stop",{graphic:e,xScale:1,yScale:1})}this.startAnimation(It(this,(()=>this._onScaleChanged()))),this._scaleRotateDragData=null,this._updateDragState()}this._updateFocusTooltip()}))}));this.addHandles([a,t.events.on("focus-changed",(t=>{"focus"===t.action?this.startAnimation(Ot(this,(()=>this._updateDelayedFocusedState()),{delayMs:this._ringIndicatorDelayMs})):this._updateDelayedFocusedState()})),t.events.on("immediate-click",(t=>{t.stopPropagation()})),u((()=>this.tool.graphicState?.displaying),(t=>this._ringManipulator.available=t),h)])}_updateTooltipPipelineStep(t){return e=>{const a=this.tooltipOptions;if(!a.enabled)return e;if("end"===e.action)return this._updateFocusTooltip(),e;const i=this._tooltip,o=this.tooltipOptions.visualVariables;switch(t.mode){case"scale":{i.info=this._scaleTooltipInfo??=new vt({tooltipOptions:a});const{size:t,scale:e}=this.adapter,r=o?.size,s=i.info;s.tooltipOptions=a,s.scale={value:e},s.size=null!=t?c(t,"meters"):void 0,s.sizePrecision=At(r?.valueType),s.sizeUnit=r?.unit;break}case"rotate":{i.info=this._rotateTooltipInfo??=new St({tooltipOptions:a});const{orientationClockwise:t,relativeAngleClockwise:e}=this.adapter,r=o?.rotation,s=At(r?.valueType),n=i.info;n.tooltipOptions=a,n.rotation=null!=e?l(e,"radians","geographic"):void 0,n.rotationPrecision=s,n.rotationType=r?.rotationType??"geographic",n.orientation=null!=t?l(t,"radians","geographic"):void 0,n.orientationPrecision=s;break}}return e}}_updateFocusTooltip(){const{tooltipOptions:t,_tooltip:e}=this;if(!t.enabled)return;if(this.getFocused()){const a=t.visualVariables,i=a?.rotation,o=a?.size,r=this.mode,{size:s,orientationClockwise:n}=this.adapter,p=null!=n&&(null==r||"rotate"===r),h=null!=s&&(null==r||"scale"===r);e.info=this._absoluteTooltipInfo??=new Mt({tooltipOptions:t});const u=e.info;u.tooltipOptions=t,u.orientation=p?l(n,"radians","geographic"):void 0,u.orientationPrecision=At(i?.valueType),u.rotationType=i?.rotationType??"geographic",u.size=h?c(s,"meters"):void 0,u.sizeUnit=o?.unit,u.sizePrecision=At(o?.valueType)}else e.clear()}_onScaleChanged(){this.events.emit("scale-changed"),this._updateManipulatorTransform()}_updateDelayedFocusedState(){this._ringManipulator.updateStateEnabled(yt.DelayedFocused,this.getFocused()),this._updateFocusTooltip()}_updateDragState(){if(this._ringManipulator.updateStateEnabled(yt.Unlocked,!(null!=this._scaleRotateDragData&&"none"!==this._scaleRotateDragData?.mode)),null!=this._scaleRotateDragData)switch(this._scaleRotateDragData.mode){case"rotate":this._ringManipulator.updateStateEnabled(yt.ScaleIn|yt.ScaleOut,!1),this._ringManipulator.updateStateEnabled(yt.RotateLeft,this._scaleRotateDragData.angleDir<0),this._ringManipulator.updateStateEnabled(yt.RotateRight,this._scaleRotateDragData.angleDir>=0);break;case"scale":this._ringManipulator.updateStateEnabled(yt.RotateLeft|yt.RotateRight,!1),this._ringManipulator.updateStateEnabled(yt.ScaleIn,this._scaleRotateDragData.scaleDir<0),this._ringManipulator.updateStateEnabled(yt.ScaleOut,this._scaleRotateDragData.scaleDir>=0)}else this._ringManipulator.updateStateEnabled(yt.ScaleIn|yt.ScaleOut|yt.RotateLeft|yt.RotateRight,!1)}_updateManipulatorTransform(){const t=_(z.get(),this.adapter.angle,A(0,0,1));if(null==t)return;const e=this.getScale(),a=D(z.get(),T(U.get(),e,e,e));this._ringManipulator.modelTransform=S(z.get(),a,t)}_createRingManipulator(){const t=(t,e,a)=>{const i=[],o=Math.ceil(rt*(e-t)/(2*Math.PI));for(let r=0;r<o+1;r++){const s=t+r*(e-t)/o;i.push(A(a*Math.cos(s),a*Math.sin(s),0))}return i},e=e=>t(0,2*Math.PI,e),a=t=>[[-t/2,0],[t/2,0],[t/2,$/2],[-t/2,$/2]],i=this._createMaterial(1),o=(t,e,o=i)=>ut(o,a(e),t,[],[],!1),r=e(X),s=o(r,Q),n={left:new Array,right:new Array},l=[];for(let j=0;j<2;j++){const e=j*Math.PI-Math.PI/4,a=Math.PI/2-st,r=e+a,s=e+Math.PI/2-a,c=t(r,s,Y),p=o(c,ot);l.push(c),l.push(t(r,s,Z-Q/2)),n.left.push(p),n.right.push(p.instantiate());for(let t=0;t<2;t++){const e=0===t,a=y();if(e){v(a,a,[1,-1,1]),M(a,a,-r,[0,0,1]);const t=Math.round(K*(c.length-1));a[12]=c[t][0],a[13]=c[t][1],a[14]=c[t][2]}else{M(a,a,s,[0,0,1]);const t=Math.round((1-K)*(c.length-1));a[12]=c[t][0],a[13]=c[t][1],a[14]=c[t][2]}const o=pt(i,et,0,tt,$);ht(o,a),(e?n.left:n.right).push(o)}}const c=[];for(let v=0;v<2;v++){const e=v*Math.PI-Math.PI/4,a=Math.PI/2-lt,i=e+a,r=e+Math.PI/2-a,s=t(i,r,Z);c.push(o(s,ot))}const p=this._createMaterial(.66),h=this._createMaterial(.5),u=this._createMaterial(.33),d=e(X+at),g=e(X+it),m=o(d,ot,p),f=o(g,ot,u),_=e(X-at),D=e(X-it),S=o(_,ot,p),T=o(D,ot,u);let b=[new H(s,yt.DelayedFocused),new H(s.instantiate({material:h}),_t.None)];this.mode&&"scale"!==this.mode||(b=b.concat([...c.map((t=>new H(t,yt.DelayedFocused|yt.Unlocked))),new H(m,yt.DelayedFocused|yt.ScaleIn),new H(f,yt.DelayedFocused|yt.ScaleIn),new H(S,yt.DelayedFocused|yt.ScaleOut),new H(T,yt.DelayedFocused|yt.ScaleOut)])),this.mode&&"rotate"!==this.mode||(b=b.concat([...n.right.map((t=>new H(t.instantiate(),yt.DelayedFocused|yt.Unlocked))),...n.left.map((t=>new H(t,yt.DelayedFocused|yt.RotateLeft))),...n.right.map((t=>new H(t,yt.DelayedFocused|yt.RotateRight)))]));const w=[r,...l];return new x({view:this.tool.view,renderObjects:b,autoScaleRenderObjects:!1,worldOriented:!0,radius:Q,focusMultiplier:1,touchMultiplier:1.5,elevationInfo:L(this.tool.graphicState.graphic),collisionType:{type:"ribbon",paths:w,direction:A(0,0,1)}})}_createMaterial(t){const e=new gt({cullFace:ct.Back,renderOccluded:dt.Transparent,isDecoration:!0});return this.addHandles(u((()=>({color:a(this.tool.view.effectiveTheme.accentColor,t)})),(t=>e.setParameters(t)),h)),e}get test(){return{ringManipulator:this._ringManipulator,setRingIndicatorDelayMs:t=>this._ringIndicatorDelayMs=t,tooltip:this._tooltip}}};function bt(t,e){const a=b(U.get(),e.renderStart,t.origin),i=b(U.get(),e.renderEnd,t.origin),o=w(a),r=w(i);return 0===o?0:r/o}function wt(t,e,a,i){const{renderStart:o,renderEnd:r}=t,s=jt(o,i,U.get()),n=jt(r,i,U.get());if(j(s,n)<W*W)return null;const l=b(U.get(),o,a),c=R(U.get(),l,F(e)),p=o,h=I(U.get(),p,c),u=jt(a,i,U.get()),d=s,g=jt(h,i,U.get()),m=b(U.get(),g,d),f=b(U.get(),s,u),_=C(d,m),D=C(u,f);return E(_,n)<E(D,n)?"rotate":"scale"}function jt(t,e,a){return e.projectToScreen(t,kt),T(a,kt[0],kt[1],0)}var Rt;function It(t,e){let a=null,i=1;const o=()=>i;return{start:()=>{i=t.getScale(),a=t.getScale,t.getScale=o,e()},update:t=>(i+=((i+1)/2-i)*Math.min(t*nt,1),e(),Math.abs(i-1)<.01?Rt.STOP:Rt.CONTINUE),destroy:()=>{a&&(t.getScale=a),e()}}}function Ot(t,e,a){let i=0,o=null;const r=()=>!1;return{start:()=>{o=t.getFocused,t.getFocused=r,i=0,e()},update:t=>(i+=t,!o?.()||i>=a.delayMs?Rt.STOP:Rt.CONTINUE),destroy:()=>{o&&(t.getFocused=o),e()}}}function At(t){switch(t){case"integer":case"long":return 0;default:return null}}t([m({constructOnly:!0})],Tt.prototype,"tool",void 0),t([m({constructOnly:!0})],Tt.prototype,"adapter",void 0),t([m({constructOnly:!0})],Tt.prototype,"tooltipOptions",void 0),t([m()],Tt.prototype,"mode",void 0),t([m()],Tt.prototype,"_activeAnimation",void 0),t([m()],Tt.prototype,"updating",null),Tt=t([f("esri.views.3d.interactive.editingTools.transformGraphic.GraphicScaleRotateTransform")],Tt),function(t){t[t.CONTINUE=0]="CONTINUE",t[t.STOP=1]="STOP"}(Rt||(Rt={}));const kt=g();export{Tt as GraphicScaleRotateTransform};
5
+ import{_ as t}from"../../../../../chunks/tslib.es6.js";import e from"../../../../../core/Accessor.js";import{multiplyOpacityToUnitRGBA as a}from"../../../../../core/colorUtils.js";import{cyclicalPI as i}from"../../../../../core/Cyclical.js";import o from"../../../../../core/Evented.js";import{clamp as s,rad2deg as r}from"../../../../../core/mathUtils.js";import{destroyMaybe as n}from"../../../../../core/maybe.js";import{createAngle as l,createLength as c}from"../../../../../core/quantityUtils.js";import{when as p,initial as h,watch as u}from"../../../../../core/reactiveUtils.js";import{addFrameTask as d}from"../../../../../core/scheduling.js";import{createScreenPointArray as g}from"../../../../../core/screenUtils.js";import{property as m}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/accessorSupport/ensureType.js";import"../../../../../core/arrayUtils.js";import"../../../../../core/has.js";import{subclass as f}from"../../../../../core/accessorSupport/decorators/subclass.js";import{c as _,E as D,m as S,b as v,k as M}from"../../../../../chunks/mat4.js";import{a as y}from"../../../../../chunks/mat4f64.js";import{s as T,f as b,l as w,a as j,b as R,g as I}from"../../../../../chunks/vec3.js";import{g as O,f as k}from"../../../../../chunks/vec3f64.js";import{fromPositionAndNormal as A,create as F,normal as P}from"../../../../../geometry/support/plane.js";import{wrap as C,distance2 as E}from"../../../../../geometry/support/ray.js";import{sv3d as U,sm4d as z}from"../../../../../geometry/support/vectorStacks.js";import{getGraphicEffectiveElevationInfo as L}from"../../../../../support/elevationInfoUtils.js";import{Manipulator3D as x}from"../../Manipulator3D.js";import{calculateInputRotationTransform as N}from"../../manipulatorUtils.js";import{RenderObject as H}from"../../RenderObject.js";import{screenToRenderPlane as G}from"../dragEventPipeline3D.js";import{ManipulatorType as V}from"../ManipulatorType.js";import{ringIndicatorDelayMs as q,rotateIndicatorDirectionBuffer as B,scaleIndicatorDirectionBuffer as J,rotateIndicatorArrowPlacementPercentage as K,ringThickness as Q,dragThresholdPx as W,ringRadius as X,innerIndicatorRadius as Y,outerIndicatorRadius as Z,ringHeight as $,rotateIndicatorArrowTipRadius as tt,rotateIndicatorArrowTipLength as et,scaleIndicatorOffset1 as at,scaleIndicatorOffset2 as it,indicatorThickness as ot,geometrySegments as st,rotateIndicatorArcLength as rt,ringResetAnimationSpeedFactor as nt,scaleIndicatorArcLength as lt}from"../manipulations/config.js";import{CullFaceOptions as ct}from"../../../webgl-engine/lib/basicInterfaces.js";import{createExtrudedTriangle as pt,transformInPlace as ht,createPathExtrusionGeometry as ut}from"../../../webgl-engine/lib/GeometryUtil.js";import{RenderOccludedFlag as dt}from"../../../webgl-engine/lib/Material.js";import{ColorMaterial as gt}from"../../../webgl-engine/materials/ColorMaterial.js";import{createManipulatorDragEventPipeline as mt}from"../../../../interactive/dragEventPipeline.js";import{ManipulatorStateCustomFlags as ft,ManipulatorStateFlags as _t}from"../../../../interactive/interfaces.js";import{Tooltip as Dt}from"../../../../interactive/tooltip/Tooltip.js";import{TransformRotateTooltipInfo as St,TransformScaleTooltipInfo as vt,TransformAbsoluteTooltipInfo as Mt}from"../../../../interactive/tooltip/TransformTooltipInfos.js";var yt;!function(t){t.ScaleIn=ft.Custom2,t.ScaleOut=ft.Custom3,t.RotateLeft=ft.Custom4,t.RotateRight=ft.Custom5,t.Unlocked=ft.Custom7,t.DelayedFocused=ft.Custom8,t.TouchInput=ft.Custom12}(yt||(yt={}));let Tt=class extends e{get angle(){return this.adapter.angle}get scale(){return this.adapter.scale}set location(t){this._ringManipulator.location=t}set elevationAlignedLocation(t){this._ringManipulator.elevationAlignedLocation=t}get grabbing(){return this._ringManipulator.grabbing}set interactive(t){this._ringManipulator.interactive=t}get updating(){return!!this._activeAnimation}constructor(t){super(t),this.mode=null,this._scaleRotateDragData=null,this._activeAnimation=null,this._ringIndicatorDelayMs=q,this._absoluteTooltipInfo=null,this._scaleTooltipInfo=null,this._rotateTooltipInfo=null,this.events=new o,this.getFocused=()=>this._ringManipulator.focused,this.getScale=()=>"scale"===this._scaleRotateDragData?.mode?this.adapter.scale:1}initialize(){this._tooltip=new Dt({view:this.tool.view}),this._createManipulator(),this._updateDragState(),this._updateManipulatorTransform(),this.addHandles([p((()=>!this.tooltipOptions.enabled),(()=>this._tooltip.clear()),h),u((()=>{const{adapter:t}=this,{info:e}=this._tooltip;return e===this._absoluteTooltipInfo&&this.getFocused()?[e,t.size,t.orientationClockwise]:[null]}),(([t])=>{t&&this._updateFocusTooltip()}))])}destroy(){this._activeAnimation?.frameTask.remove(),this._activeAnimation=null,this.tool.manipulators.remove(this._ringManipulator),this._ringManipulator=null,this._tooltip=n(this._tooltip)}startAnimation(t){this.cancelActiveAnimation(),t.start();const e=d({update:({deltaTime:e})=>{t.update(e)&&this.cancelActiveAnimation()}});this._activeAnimation={...t,frameTask:e}}cancelActiveAnimation(){this._activeAnimation?.frameTask.remove(),this._activeAnimation=n(this._activeAnimation)}forEachManipulator(t){t(this._ringManipulator,V.SCALE_ROTATE)}_createManipulator(){const t=this._createRingManipulator();this._ringManipulator=t,this.tool.manipulators.add(t);const e=this.tool.graphicState.graphic,a=mt(t,((t,a,o)=>{this._scaleRotateDragData=null;const n=this.adapter.startInteraction(),l={mode:"none",origin:O(t.renderLocation),initialAngle:this.adapter.angle,angle:0,angleDir:0,scaleDir:0};this._scaleRotateDragData=l,this._updateDragState();const c=U.get();this.tool.view.renderCoordsHelper.worldUpAtPosition(t.renderLocation,c),a.next(G(this.tool.view,A(t.renderLocation,c,F()))).next((t=>{const a=P(t.plane),o=N(t.renderStart,t.renderEnd,l.origin,a),c=i.shortestSignedDiff(l.angle,o);l.angleDir=s(l.angleDir+c,-B,B),l.angle=o;const p=bt(l,t),h=p-this.adapter.scale;if(l.scaleDir=s(l.scaleDir+h,-J,J),this._onScaleChanged(),"none"===l.mode){const a=this.mode||wt(t,t.plane,l.origin,this.tool.view.state.camera);if(null!=a){switch(a){case"rotate":this.tool.emit("graphic-rotate-start",{graphic:e,angle:0}),this.tool.emit("record-undo",{record:this.adapter.createUndoRecord()});break;case"scale":this.tool.emit("graphic-scale-start",{graphic:e,xScale:1,yScale:1}),this.tool.emit("record-undo",{record:this.adapter.createUndoRecord()})}l.mode=a}}switch(l.mode){case"rotate":n.state.angle=l.initialAngle+o;break;case"scale":n.state.scale=p,this._onScaleChanged()}switch(this._updateDragState(),this._updateManipulatorTransform(),t.action){case"start":case"update":switch(l.mode){case"rotate":this.tool.emit("graphic-rotate",{graphic:e,angle:r(l.angle)});break;case"scale":this.tool.emit("graphic-scale",{graphic:e,xScale:p,yScale:p})}break;case"end":switch(l.mode){case"rotate":this.tool.emit("graphic-rotate-stop",{graphic:e,angle:r(l.angle)});break;case"scale":this.tool.emit("graphic-scale-stop",{graphic:e,xScale:p,yScale:p})}}return"end"===t.action&&(this.startAnimation(It(this,(()=>this._onScaleChanged()))),this._scaleRotateDragData=null,this._updateDragState(),n.done()),t})).next(this._updateTooltipPipelineStep(l)),o.next((()=>{if(n.cancel(),null!=this._scaleRotateDragData){switch(this._scaleRotateDragData.mode){case"none":break;case"rotate":this.tool.emit("graphic-rotate-stop",{graphic:e,angle:0});break;case"scale":this.tool.emit("graphic-scale-stop",{graphic:e,xScale:1,yScale:1})}this.startAnimation(It(this,(()=>this._onScaleChanged()))),this._scaleRotateDragData=null,this._updateDragState()}this._updateFocusTooltip()}))}));this.addHandles([a,t.events.on("focus-changed",(t=>{"focus"===t.action?this.startAnimation(Ot(this,(()=>this._updateDelayedFocusedState()),{delayMs:this._ringIndicatorDelayMs})):this._updateDelayedFocusedState()})),t.events.on("immediate-click",(t=>{t.stopPropagation()})),u((()=>this.tool.graphicState?.displaying),(t=>this._ringManipulator.available=t),h)])}_updateTooltipPipelineStep(t){return e=>{const a=this.tooltipOptions;if(!a.enabled)return e;if("end"===e.action)return this._updateFocusTooltip(),e;const i=this._tooltip,o=this.tooltipOptions.visualVariables;switch(t.mode){case"scale":{i.info=this._scaleTooltipInfo??=new vt({tooltipOptions:a});const{size:t,scale:e}=this.adapter,s=o?.size,r=i.info;r.tooltipOptions=a,r.scale={value:e},r.size=null!=t?c(t,"meters"):void 0,r.sizePrecision=kt(s?.valueType),r.sizeUnit=s?.unit;break}case"rotate":{i.info=this._rotateTooltipInfo??=new St({tooltipOptions:a});const{orientationClockwise:t,relativeAngleClockwise:e}=this.adapter,s=o?.rotation,r=kt(s?.valueType),n=i.info;n.tooltipOptions=a,n.rotation=null!=e?l(e,"radians","geographic"):void 0,n.rotationPrecision=r,n.rotationType=s?.rotationType??"geographic",n.orientation=null!=t?l(t,"radians","geographic"):void 0,n.orientationPrecision=r;break}}return e}}_updateFocusTooltip(){const{tooltipOptions:t,_tooltip:e}=this;if(!t.enabled)return;if(this.getFocused()){const a=t.visualVariables,i=a?.rotation,o=a?.size,s=this.mode,{size:r,orientationClockwise:n}=this.adapter,p=null!=n&&(null==s||"rotate"===s),h=null!=r&&(null==s||"scale"===s);e.info=this._absoluteTooltipInfo??=new Mt({tooltipOptions:t});const u=e.info;u.tooltipOptions=t,u.orientation=p?l(n,"radians","geographic"):void 0,u.orientationPrecision=kt(i?.valueType),u.rotationType=i?.rotationType??"geographic",u.size=h?c(r,"meters"):void 0,u.sizeUnit=o?.unit,u.sizePrecision=kt(o?.valueType)}else e.clear()}_onScaleChanged(){this.events.emit("scale-changed"),this._updateManipulatorTransform()}_updateDelayedFocusedState(){this._ringManipulator.updateStateEnabled(yt.DelayedFocused,this.getFocused()),this._updateFocusTooltip()}_updateDragState(){if(this._ringManipulator.updateStateEnabled(yt.Unlocked,!(null!=this._scaleRotateDragData&&"none"!==this._scaleRotateDragData?.mode)),null!=this._scaleRotateDragData)switch(this._scaleRotateDragData.mode){case"rotate":this._ringManipulator.updateStateEnabled(yt.ScaleIn|yt.ScaleOut,!1),this._ringManipulator.updateStateEnabled(yt.RotateLeft,this._scaleRotateDragData.angleDir<0),this._ringManipulator.updateStateEnabled(yt.RotateRight,this._scaleRotateDragData.angleDir>=0);break;case"scale":this._ringManipulator.updateStateEnabled(yt.RotateLeft|yt.RotateRight,!1),this._ringManipulator.updateStateEnabled(yt.ScaleIn,this._scaleRotateDragData.scaleDir<0),this._ringManipulator.updateStateEnabled(yt.ScaleOut,this._scaleRotateDragData.scaleDir>=0)}else this._ringManipulator.updateStateEnabled(yt.ScaleIn|yt.ScaleOut|yt.RotateLeft|yt.RotateRight,!1)}_updateManipulatorTransform(){const t=_(z.get(),this.adapter.angle,k(0,0,1));if(null==t)return;const e=this.getScale(),a=D(z.get(),T(U.get(),e,e,e));this._ringManipulator.modelTransform=S(z.get(),a,t)}_createRingManipulator(){const t=(t,e,a)=>{const i=[],o=Math.ceil(st*(e-t)/(2*Math.PI));for(let s=0;s<o+1;s++){const r=t+s*(e-t)/o;i.push(k(a*Math.cos(r),a*Math.sin(r),0))}return i},e=e=>t(0,2*Math.PI,e),a=t=>[[-t/2,0],[t/2,0],[t/2,$/2],[-t/2,$/2]],i=this._createMaterial(1),o=(t,e,o=i)=>ut(o,a(e),t,[],[],!1),s=e(X),r=o(s,Q),n={left:new Array,right:new Array},l=[];for(let j=0;j<2;j++){const e=j*Math.PI-Math.PI/4,a=Math.PI/2-rt,s=e+a,r=e+Math.PI/2-a,c=t(s,r,Y),p=o(c,ot);l.push(c),l.push(t(s,r,Z-Q/2)),n.left.push(p),n.right.push(p.instantiate());for(let t=0;t<2;t++){const e=0===t,a=y();if(e){v(a,a,[1,-1,1]),M(a,a,-s,[0,0,1]);const t=Math.round(K*(c.length-1));a[12]=c[t][0],a[13]=c[t][1],a[14]=c[t][2]}else{M(a,a,r,[0,0,1]);const t=Math.round((1-K)*(c.length-1));a[12]=c[t][0],a[13]=c[t][1],a[14]=c[t][2]}const o=pt(i,et,0,tt,$);ht(o,a),(e?n.left:n.right).push(o)}}const c=[];for(let v=0;v<2;v++){const e=v*Math.PI-Math.PI/4,a=Math.PI/2-lt,i=e+a,s=e+Math.PI/2-a,r=t(i,s,Z);c.push(o(r,ot))}const p=this._createMaterial(.66),h=this._createMaterial(.5),u=this._createMaterial(.33),d=e(X+at),g=e(X+it),m=o(d,ot,p),f=o(g,ot,u),_=e(X-at),D=e(X-it),S=o(_,ot,p),T=o(D,ot,u);let b=[new H(r,yt.DelayedFocused),new H(r.instantiate({material:h}),_t.None)];this.mode&&"scale"!==this.mode||(b=b.concat([...c.map((t=>new H(t,yt.DelayedFocused|yt.Unlocked))),new H(m,yt.DelayedFocused|yt.ScaleIn),new H(f,yt.DelayedFocused|yt.ScaleIn),new H(S,yt.DelayedFocused|yt.ScaleOut),new H(T,yt.DelayedFocused|yt.ScaleOut)])),this.mode&&"rotate"!==this.mode||(b=b.concat([...n.right.map((t=>new H(t.instantiate(),yt.DelayedFocused|yt.Unlocked))),...n.left.map((t=>new H(t,yt.DelayedFocused|yt.RotateLeft))),...n.right.map((t=>new H(t,yt.DelayedFocused|yt.RotateRight)))]));const w=[s,...l];return new x({view:this.tool.view,renderObjects:b,autoScaleRenderObjects:!1,worldOriented:!0,radius:Q,focusMultiplier:1,touchMultiplier:1.5,elevationInfo:L(this.tool.graphicState.graphic),collisionType:{type:"ribbon",paths:w,direction:k(0,0,1)}})}_createMaterial(t){const e=new gt({cullFace:ct.Back,renderOccluded:dt.Transparent,isDecoration:!0});return this.addHandles(u((()=>({color:a(this.tool.view.effectiveTheme.accentColor,t)})),(t=>e.setParameters(t)),h)),e}get test(){return{ringManipulator:this._ringManipulator,setRingIndicatorDelayMs:t=>this._ringIndicatorDelayMs=t,tooltip:this._tooltip}}};function bt(t,e){const a=b(U.get(),e.renderStart,t.origin),i=b(U.get(),e.renderEnd,t.origin),o=w(a),s=w(i);return 0===o?0:s/o}function wt(t,e,a,i){const{renderStart:o,renderEnd:s}=t,r=jt(o,i,U.get()),n=jt(s,i,U.get());if(j(r,n)<W*W)return null;const l=b(U.get(),o,a),c=R(U.get(),l,P(e)),p=o,h=I(U.get(),p,c),u=jt(a,i,U.get()),d=r,g=jt(h,i,U.get()),m=b(U.get(),g,d),f=b(U.get(),r,u),_=C(d,m),D=C(u,f);return E(_,n)<E(D,n)?"rotate":"scale"}function jt(t,e,a){return e.projectToScreen(t,At),T(a,At[0],At[1],0)}var Rt;function It(t,e){let a=null,i=1;const o=()=>i;return{start:()=>{i=t.getScale(),a=t.getScale,t.getScale=o,e()},update:t=>(i+=((i+1)/2-i)*Math.min(t*nt,1),e(),Math.abs(i-1)<.01?Rt.STOP:Rt.CONTINUE),destroy:()=>{a&&(t.getScale=a),e()}}}function Ot(t,e,a){let i=0,o=null;const s=()=>!1;return{start:()=>{o=t.getFocused,t.getFocused=s,i=0,e()},update:t=>(i+=t,!o?.()||i>=a.delayMs?Rt.STOP:Rt.CONTINUE),destroy:()=>{o&&(t.getFocused=o),e()}}}function kt(t){switch(t){case"integer":case"long":return 0;default:return null}}t([m({constructOnly:!0})],Tt.prototype,"tool",void 0),t([m({constructOnly:!0})],Tt.prototype,"adapter",void 0),t([m({constructOnly:!0})],Tt.prototype,"tooltipOptions",void 0),t([m()],Tt.prototype,"mode",void 0),t([m()],Tt.prototype,"_activeAnimation",void 0),t([m()],Tt.prototype,"updating",null),Tt=t([f("esri.views.3d.interactive.editingTools.transformGraphic.GraphicScaleRotateTransform")],Tt),function(t){t[t.CONTINUE=0]="CONTINUE",t[t.STOP=1]="STOP"}(Rt||(Rt={}));const At=g();export{Tt as GraphicScaleRotateTransform};
@@ -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{d as e}from"../../../../chunks/mat4.js";import{a as t}from"../../../../chunks/mat4f64.js";import{s as r,e as s}from"../../../../chunks/vec3.js";import{Z as o,c as i}from"../../../../chunks/vec3f64.js";import{f as a,d as n}from"../../../../chunks/vec4f64.js";import{Object3DVisualElement as l}from"./Object3DVisualElement.js";import{lineStripsToParameters as m,createGeometry as p}from"../../support/engineContent/line.js";import{RenderOccludedFlag as h}from"../../webgl-engine/lib/Material.js";import{RibbonLineMaterial as d}from"../../webgl-engine/materials/RibbonLineMaterial.js";class u extends l{constructor(e,t){super(e),this._hasExternalMaterial=!1,this._hasExternalMaterial=null!=t,this._material=null!=t?t:new d({width:1,color:a(1,0,1,1),stippleOffColor:null,stipplePattern:null,stipplePreferContinuous:!0,isClosed:!1,falloff:0,innerColor:null,innerWidth:1,hasPolygonOffset:!1,renderOccluded:h.OccludeAndTransparent,isDecoration:!!e.isDecoration,writeDepth:!0,writeLinearDepth:!1}),this.applyProperties(e)}setGeometryFromRenderSpacePoint(e,t=1e3){this.geometry=[[[e[0]-t,e[1],e[2]],[e[0]+t,e[1],e[2]]],[[e[0],e[1]-t,e[2]],[e[0],e[1]+t,e[2]]],[[e[0],e[1],e[2]-t],[e[0],e[1],e[2]+t]]]}setGeometryFromExtent(e){const t=this.view.spatialReference,s=i(),o=i(),a=100,n=[];r(s,e[0],e[1],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),r(s,e[2],e[1],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),r(s,e[2],e[3],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),r(s,e[0],e[3],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),r(s,e[0],e[1],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),r(s,e[0],e[1],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),this.geometry=[n]}setGeometryFromFrustum(e){const t=[];e.lines.forEach((e=>{t.push([e.origin[0],e.origin[1],e.origin[2]]),t.push([e.endpoint[0],e.endpoint[1],e.endpoint[2]])})),this.geometry=[t]}setGeometryFromBoundedPlane(e){const t=[],r=e.origin,s=e.basis1,o=e.basis2,a=.5,n=i(),l=i(),m=i(),p=i();n[0]=r[0]-s[0]*a-o[0]*a,n[1]=r[1]-s[1]*a-o[1]*a,n[2]=r[2]-s[2]*a-o[2]*a,l[0]=r[0]-s[0]*a+o[0]*a,l[1]=r[1]-s[1]*a+o[1]*a,l[2]=r[2]-s[2]*a+o[2]*a,m[0]=r[0]+s[0]*a+o[0]*a,m[1]=r[1]+s[1]*a+o[1]*a,m[2]=r[2]+s[2]*a+o[2]*a,p[0]=r[0]+s[0]*a-o[0]*a,p[1]=r[1]+s[1]*a-o[1]*a,p[2]=r[2]+s[2]*a-o[2]*a,t.push([n[0],n[1],n[2]]),t.push([l[0],l[1],l[2]]),t.push([m[0],m[1],m[2]]),t.push([p[0],p[1],p[2]]),t.push([n[0],n[1],n[2]]),this.geometry=[t]}setGeometryFromSegment(t){const r=t.endRenderSpace;this.transform=e(f,r);const{points:s}=t.createRenderGeometry(r,this.view.renderCoordsHelper);this.geometry=[s]}setGeometryFromSegments(t,r=o){this.transform=e(f,r),this.geometry=t.map((e=>e.createRenderGeometry(r,this.view.renderCoordsHelper).points))}getTransformedGeometry(){return null==this._geometry?null:this._geometry.map((e=>e.map((e=>s(i(),e,this.transform)))))}get renderOccluded(){return this._material.parameters.renderOccluded}set renderOccluded(e){this._material.setParameters({renderOccluded:e})}get geometry(){return this._geometry}set geometry(e){this._geometry=e,this.recreateGeometry()}get width(){return this._material.parameters.width}set width(e){this._material.setParameters({width:e})}get color(){return this._material.parameters.color}set color(e){const t=1===e[3];this._material.setParameters({color:n(e),writeDepth:t})}get innerWidth(){return this._material.parameters.innerWidth}set innerWidth(e){this._material.setParameters({innerWidth:e})}get innerColor(){return this._material.parameters.innerColor}set innerColor(e){this._material.setParameters({innerColor:null!=e?n(e):null})}get stipplePattern(){return this._material.parameters.stipplePattern}set stipplePattern(e){null!=this._material&&this._material.setParameters({stipplePattern:e})}get stippleOffColor(){return this._material.parameters.stippleOffColor}set stippleOffColor(e){this._material.setParameters({stippleOffColor:null!=e?n(e):null})}get stipplePreferContinuous(){return this._material.parameters.stipplePreferContinuous}set stipplePreferContinuous(e){this._material.setParameters({stipplePreferContinuous:e})}get falloff(){return this._material.parameters.falloff}set falloff(e){this._material.setParameters({falloff:e})}get polygonOffset(){return this._material.parameters.hasPolygonOffset}set polygonOffset(e){this._material.setParameters({hasPolygonOffset:e})}createExternalResources(){}destroyExternalResources(){}createGeometries(e){for(const t of m(this.geometry)){const r=p(this._material,t);e.addGeometry(r)}}forEachExternalMaterial(e){this._hasExternalMaterial||e(this._material)}}const f=t();export{u as LineVisualElement};
5
+ import{d as e}from"../../../../chunks/mat4.js";import{a as t}from"../../../../chunks/mat4f64.js";import{s as r,e as s}from"../../../../chunks/vec3.js";import{Z as o,c as i}from"../../../../chunks/vec3f64.js";import{f as a,d as n}from"../../../../chunks/vec4f64.js";import{Object3DVisualElement as l}from"./Object3DVisualElement.js";import{lineStripsToParameters as m,createGeometry as p}from"../../support/engineContent/line.js";import{RenderOccludedFlag as h}from"../../webgl-engine/lib/Material.js";import{RibbonLineMaterial as d}from"../../webgl-engine/materials/RibbonLineMaterial.js";class u extends l{constructor(e,t){super(e),this._hasExternalMaterial=!1,this._hasExternalMaterial=null!=t,this._material=null!=t?t:new d({width:1,color:a(1,0,1,1),stippleOffColor:null,stipplePattern:null,stipplePreferContinuous:!0,isClosed:!1,falloff:0,innerColor:null,innerWidth:1,hasPolygonOffset:!1,renderOccluded:h.OccludeAndTransparent,isDecoration:!!e.isDecoration,writeDepth:!0}),this.applyProperties(e)}setGeometryFromRenderSpacePoint(e,t=1e3){this.geometry=[[[e[0]-t,e[1],e[2]],[e[0]+t,e[1],e[2]]],[[e[0],e[1]-t,e[2]],[e[0],e[1]+t,e[2]]],[[e[0],e[1],e[2]-t],[e[0],e[1],e[2]+t]]]}setGeometryFromExtent(e){const t=this.view.spatialReference,s=i(),o=i(),a=100,n=[];r(s,e[0],e[1],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),r(s,e[2],e[1],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),r(s,e[2],e[3],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),r(s,e[0],e[3],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),r(s,e[0],e[1],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),r(s,e[0],e[1],a),this.view.renderCoordsHelper.toRenderCoords(s,t,o),n.push([o[0],o[1],o[2]]),this.geometry=[n]}setGeometryFromFrustum(e){const t=[];e.lines.forEach((e=>{t.push([e.origin[0],e.origin[1],e.origin[2]]),t.push([e.endpoint[0],e.endpoint[1],e.endpoint[2]])})),this.geometry=[t]}setGeometryFromBoundedPlane(e){const t=[],r=e.origin,s=e.basis1,o=e.basis2,a=.5,n=i(),l=i(),m=i(),p=i();n[0]=r[0]-s[0]*a-o[0]*a,n[1]=r[1]-s[1]*a-o[1]*a,n[2]=r[2]-s[2]*a-o[2]*a,l[0]=r[0]-s[0]*a+o[0]*a,l[1]=r[1]-s[1]*a+o[1]*a,l[2]=r[2]-s[2]*a+o[2]*a,m[0]=r[0]+s[0]*a+o[0]*a,m[1]=r[1]+s[1]*a+o[1]*a,m[2]=r[2]+s[2]*a+o[2]*a,p[0]=r[0]+s[0]*a-o[0]*a,p[1]=r[1]+s[1]*a-o[1]*a,p[2]=r[2]+s[2]*a-o[2]*a,t.push([n[0],n[1],n[2]]),t.push([l[0],l[1],l[2]]),t.push([m[0],m[1],m[2]]),t.push([p[0],p[1],p[2]]),t.push([n[0],n[1],n[2]]),this.geometry=[t]}setGeometryFromSegment(t){const r=t.endRenderSpace;this.transform=e(f,r);const{points:s}=t.createRenderGeometry(r,this.view.renderCoordsHelper);this.geometry=[s]}setGeometryFromSegments(t,r=o){this.transform=e(f,r),this.geometry=t.map((e=>e.createRenderGeometry(r,this.view.renderCoordsHelper).points))}getTransformedGeometry(){return null==this._geometry?null:this._geometry.map((e=>e.map((e=>s(i(),e,this.transform)))))}get renderOccluded(){return this._material.parameters.renderOccluded}set renderOccluded(e){this._material.setParameters({renderOccluded:e})}get geometry(){return this._geometry}set geometry(e){this._geometry=e,this.recreateGeometry()}get width(){return this._material.parameters.width}set width(e){this._material.setParameters({width:e})}get color(){return this._material.parameters.color}set color(e){const t=1===e[3];this._material.setParameters({color:n(e),writeDepth:t})}get innerWidth(){return this._material.parameters.innerWidth}set innerWidth(e){this._material.setParameters({innerWidth:e})}get innerColor(){return this._material.parameters.innerColor}set innerColor(e){this._material.setParameters({innerColor:null!=e?n(e):null})}get stipplePattern(){return this._material.parameters.stipplePattern}set stipplePattern(e){null!=this._material&&this._material.setParameters({stipplePattern:e})}get stippleOffColor(){return this._material.parameters.stippleOffColor}set stippleOffColor(e){this._material.setParameters({stippleOffColor:null!=e?n(e):null})}get stipplePreferContinuous(){return this._material.parameters.stipplePreferContinuous}set stipplePreferContinuous(e){this._material.setParameters({stipplePreferContinuous:e})}get falloff(){return this._material.parameters.falloff}set falloff(e){this._material.setParameters({falloff:e})}get polygonOffset(){return this._material.parameters.hasPolygonOffset}set polygonOffset(e){this._material.setParameters({hasPolygonOffset:e})}createExternalResources(){}destroyExternalResources(){}createGeometries(e){for(const t of m(this.geometry)){const r=p(this._material,t);e.addGeometry(r)}}forEachExternalMaterial(e){this._hasExternalMaterial||e(this._material)}}const f=t();export{u as LineVisualElement};