@arcgis/core 5.2.0-next.136 → 5.2.0-next.138

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 (507) hide show
  1. package/analysis/LineOfSightAnalysisObserver.d.ts +12 -0
  2. package/analysis/LineOfSightAnalysisObserver.js +1 -1
  3. package/analysis/LineOfSightAnalysisTarget.d.ts +12 -0
  4. package/analysis/LineOfSightAnalysisTarget.js +1 -1
  5. package/arcade/featureset/sources/FeatureLayerParquet.js +1 -1
  6. package/arcgisGlobal.d.ts +4 -0
  7. package/assets/components/assets/icon/blockHeightMedium16.json +1 -0
  8. package/assets/components/assets/icon/blockHeightMedium24.json +1 -0
  9. package/assets/components/assets/icon/blockHeightMedium32.json +1 -0
  10. package/assets/components/assets/icon/blockHeightShort16.json +1 -0
  11. package/assets/components/assets/icon/blockHeightShort24.json +1 -0
  12. package/assets/components/assets/icon/blockHeightShort32.json +1 -0
  13. package/assets/components/assets/icon/blockHeightTall16.json +1 -0
  14. package/assets/components/assets/icon/blockHeightTall24.json +1 -0
  15. package/assets/components/assets/icon/blockHeightTall32.json +1 -0
  16. package/assets/components/assets/icon/cursorCircle16.json +1 -0
  17. package/assets/components/assets/icon/cursorCircle24.json +1 -0
  18. package/assets/components/assets/icon/cursorCircle32.json +1 -0
  19. package/assets/components/assets/icon/dictionary16.json +1 -0
  20. package/assets/components/assets/icon/dictionary24.json +1 -0
  21. package/assets/components/assets/icon/dictionary32.json +1 -0
  22. package/assets/components/assets/icon/jobDependency16.json +1 -0
  23. package/assets/components/assets/icon/jobDependency24.json +1 -0
  24. package/assets/components/assets/icon/jobDependency32.json +1 -0
  25. package/assets/components/assets/icon/referenceChip16.json +1 -0
  26. package/assets/components/assets/icon/referenceChip24.json +1 -0
  27. package/assets/components/assets/icon/referenceChip32.json +1 -0
  28. package/assets/esri/core/workers/RemoteClient.js +1 -1
  29. package/assets/esri/core/workers/chunks/{4e6f95d8c624d513849a.js → 05963f57cbe5a5249496.js} +1 -1
  30. package/assets/esri/core/workers/chunks/{0b8681ca4a83e97f1f71.js → 067de1910190da228291.js} +1 -1
  31. package/assets/esri/core/workers/chunks/{3c0fd1c6cda44e9f40ab.js → 070684943698fa43c2b4.js} +1 -1
  32. package/assets/esri/core/workers/chunks/{bc1cb4b9a02e6c78deb7.js → 076e8d2e08ff2a013736.js} +1 -1
  33. package/assets/esri/core/workers/chunks/{c10e040368065411506a.js → 10445313d0d57b34511b.js} +1 -1
  34. package/assets/esri/core/workers/chunks/{d537c59b46cdaaf66034.js → 1188d0a136fffc009643.js} +1 -1
  35. package/assets/esri/core/workers/chunks/{20af3f085f60c32c6c53.js → 178083d8ed7707b45ca2.js} +1 -1
  36. package/assets/esri/core/workers/chunks/{f5efe3e800c6e23efcf3.js → 1819c45655c836b9a8d7.js} +1 -1
  37. package/assets/esri/core/workers/chunks/1b946714ca4a1a7359d4.js +2 -0
  38. package/assets/esri/core/workers/chunks/{d8d8b38ac8a91d9e45fc.js → 1cc744ab5eee5ee3bed8.js} +1 -1
  39. package/assets/esri/core/workers/chunks/{05e39b4de7f62c5b22cc.js → 20f75cc777af13fa249b.js} +1 -1
  40. package/assets/esri/core/workers/chunks/2a1ec30f9ad305763f81.js +2 -0
  41. package/assets/esri/core/workers/chunks/34570e6bbf559f18c1a5.js +1 -0
  42. package/assets/esri/core/workers/chunks/{60f6d5da9480dd36e877.js → 3dddae78286d05eb10fc.js} +1 -1
  43. package/assets/esri/core/workers/chunks/{9efd30bbd02ec0d1031b.js → 3ec3589f6e74d7cb87cf.js} +1 -1
  44. package/assets/esri/core/workers/chunks/{0bec054fca104f3bf141.js → 3f776d9fd2ab68b21fca.js} +1 -1
  45. package/assets/esri/core/workers/chunks/402a82c77420254831bc.js +1 -0
  46. package/assets/esri/core/workers/chunks/{e2ebf0ea3af2e6907987.js → 406f24ec13eb30d43405.js} +1 -1
  47. package/assets/esri/core/workers/chunks/43fc42405167a5537039.js +1 -0
  48. package/assets/esri/core/workers/chunks/{ddedc414bb478b376221.js → 46b2d4addfc73f9183a4.js} +1 -1
  49. package/assets/esri/core/workers/chunks/498d6dfd3bb0d3490548.js +1 -0
  50. package/assets/esri/core/workers/chunks/{36ef86701883a20dd6f6.js → 4a640548032355e57acd.js} +1 -1
  51. package/assets/esri/core/workers/chunks/5566f14afb63065e438f.js +1 -0
  52. package/assets/esri/core/workers/chunks/{c3b96d1d43afccd23e45.js → 590e6c70206122e4cc3c.js} +2 -2
  53. package/assets/esri/core/workers/chunks/{54860dd53a46cf4c47f3.js → 59295b99bdff4045a0e7.js} +1 -1
  54. package/assets/esri/core/workers/chunks/5aeb5e18514644fe2cf9.js +1 -0
  55. package/assets/esri/core/workers/chunks/{5da86409d70098fc6a10.js → 5b3cfe95314a75a735c1.js} +1 -1
  56. package/assets/esri/core/workers/chunks/{a54678bfa0f1807b61cd.js → 5c855af73ee3c3e764fb.js} +1 -1
  57. package/assets/esri/core/workers/chunks/{06da3409992bb1fa85b0.js → 5e90c1b49f2b7e21d05a.js} +39 -31
  58. package/assets/esri/core/workers/chunks/5fd099ca1024707387b2.js +1 -0
  59. package/assets/esri/core/workers/chunks/{30f808cac8a34f95ea6e.js → 6079d27f4ab319fb8f0c.js} +1 -1
  60. package/assets/esri/core/workers/chunks/66c2a28a851130b87c04.js +1 -0
  61. package/assets/esri/core/workers/chunks/{dac90b3631f7f7158f68.js → 67f15538c51838201fc7.js} +1 -1
  62. package/assets/esri/core/workers/chunks/{cfaba0470619786e1ef8.js → 68d8ae42ab71d01a70a5.js} +2 -2
  63. package/assets/esri/core/workers/chunks/6aebf7cfd294e88bf926.js +1 -0
  64. package/assets/esri/core/workers/chunks/{864e7030c4ddbfcf0114.js → 6ccf9535013fe672c93b.js} +1 -1
  65. package/assets/esri/core/workers/chunks/{ba7f0cf7e495d3ec2d55.js → 6e62581d933e7298d1f6.js} +1 -1
  66. package/assets/esri/core/workers/chunks/{83b5dd4029e00abd80bf.js → 700b1d5bc67b7e1b3ff3.js} +1 -1
  67. package/assets/esri/core/workers/chunks/{f9fea72cc222a30ef2f9.js → 72399062767abdfb0bee.js} +1 -1
  68. package/assets/esri/core/workers/chunks/{2a7fbfd77002a24bf737.js → 747461bb6a1bc2f0a64d.js} +1 -1
  69. package/assets/esri/core/workers/chunks/{c333f6ed42985bb2b11f.js → 7851aef196eea5d6c94e.js} +1 -1
  70. package/assets/esri/core/workers/chunks/{f0b6bd6fab5320c3082f.js → 7a05b18f655c1167ce0a.js} +1 -1
  71. package/assets/esri/core/workers/chunks/{04296b75d0f81fbd1bb5.js → 864194927d05ebc4cc31.js} +1 -1
  72. package/assets/esri/core/workers/chunks/{3c4a13a9f0b305394a26.js → 876f7633c15f1e31078d.js} +1 -1
  73. package/assets/esri/core/workers/chunks/{62298dba3f6cbdc3f4ae.js → 879b2f0ff1977bca9376.js} +1 -1
  74. package/assets/esri/core/workers/chunks/{b547b3bce729c9dac90d.js → 898359be6996fd9763b8.js} +1 -1
  75. package/assets/esri/core/workers/chunks/8cb716f110d164030309.js +1 -0
  76. package/assets/esri/core/workers/chunks/8dc1c3042267618fd710.js +2 -0
  77. package/assets/esri/core/workers/chunks/{625f02db93d7fbf175ca.js → 9001e9a1e81bce175ddd.js} +1 -1
  78. package/assets/esri/core/workers/chunks/{9ffa6c8d93d3443834c6.js → 912080c90b5cc2e817cf.js} +1 -1
  79. package/assets/esri/core/workers/chunks/96c50a0dda0f1503ef92.js +2 -0
  80. package/assets/esri/core/workers/chunks/{13e4379441499599c3b5.js → 9cbde13e536676767900.js} +1 -1
  81. package/assets/esri/core/workers/chunks/{408db4f32850b77264ae.js → 9cd3fcb5fca6f9dbbcd8.js} +1 -1
  82. package/assets/esri/core/workers/chunks/a054da6cbd8ee4774a57.js +1 -0
  83. package/assets/esri/core/workers/chunks/a05790444115e4cf1bcc.js +1 -0
  84. package/assets/esri/core/workers/chunks/{d1f2685782b423ef87a6.js → a556dd4e9e6d35e33a2c.js} +1 -1
  85. package/assets/esri/core/workers/chunks/{00d576d355599c88931e.js → bc38def1983089514e4b.js} +1 -1
  86. package/assets/esri/core/workers/chunks/{0725e515f3004bdd5c56.js → ca2adcbcf44454484fd5.js} +1 -1
  87. package/assets/esri/core/workers/chunks/{f3507b9e831ffd7a6bf8.js → cca8bd07bcd1d267a2e8.js} +1 -1
  88. package/assets/esri/core/workers/chunks/cfae60b9d2f2939e9c16.js +1 -0
  89. package/assets/esri/core/workers/chunks/{1d6b2a64f4e40e5cc13d.js → d201fbf3ceff946d2bd6.js} +1 -1
  90. package/assets/esri/core/workers/chunks/{4439078780d9ba49fd26.js → d51bb11baadc741c46bc.js} +1 -1
  91. package/assets/esri/core/workers/chunks/db1ab9b9c8bf5c7635d3.js +1 -0
  92. package/assets/esri/core/workers/chunks/de02a6a1f4810f99e9bb.js +1 -0
  93. package/assets/esri/core/workers/chunks/e630f3c56c077cb2bd8e.js +1 -0
  94. package/assets/esri/core/workers/chunks/e81173724e8de8c1e65b.js +1 -0
  95. package/assets/esri/core/workers/chunks/{2025288bed125594ceda.js → f6e62d2d279a328cbed7.js} +1 -1
  96. package/assets/esri/core/workers/chunks/{47c19778fcee7154ca38.js → f8bc474434fd365ab174.js} +1 -1
  97. package/assets/esri/core/workers/chunks/{9a20dc26cb9c7b2087cf.js → f95a1f878c9c1146180e.js} +1 -1
  98. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ar.json +1 -1
  99. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.bg.json +1 -1
  100. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.bs.json +1 -1
  101. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ca.json +1 -1
  102. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.cs.json +1 -1
  103. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.da.json +1 -1
  104. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.de.json +1 -1
  105. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.el.json +1 -1
  106. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.en.json +1 -1
  107. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.es.json +1 -1
  108. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.et.json +1 -1
  109. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.fi.json +1 -1
  110. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.fr.json +1 -1
  111. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.he.json +1 -1
  112. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.hr.json +1 -1
  113. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.hu.json +1 -1
  114. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.id.json +1 -1
  115. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.it.json +1 -1
  116. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ja.json +1 -1
  117. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ko.json +1 -1
  118. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.lt.json +1 -1
  119. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.lv.json +1 -1
  120. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.nl.json +1 -1
  121. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.no.json +1 -1
  122. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.pl.json +1 -1
  123. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.pt-BR.json +1 -1
  124. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.pt-PT.json +1 -1
  125. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ro.json +1 -1
  126. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ru.json +1 -1
  127. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sk.json +1 -1
  128. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sl.json +1 -1
  129. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sr.json +1 -1
  130. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sv.json +1 -1
  131. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.th.json +1 -1
  132. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.tr.json +1 -1
  133. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.uk.json +1 -1
  134. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.vi.json +1 -1
  135. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.zh-CN.json +1 -1
  136. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.zh-HK.json +1 -1
  137. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.zh-TW.json +1 -1
  138. package/assets/esri/widgets/FeatureForm/t9n/messages.ar.json +1 -1
  139. package/assets/esri/widgets/FeatureForm/t9n/messages.bg.json +1 -1
  140. package/assets/esri/widgets/FeatureForm/t9n/messages.bs.json +1 -1
  141. package/assets/esri/widgets/FeatureForm/t9n/messages.ca.json +1 -1
  142. package/assets/esri/widgets/FeatureForm/t9n/messages.cs.json +1 -1
  143. package/assets/esri/widgets/FeatureForm/t9n/messages.da.json +1 -1
  144. package/assets/esri/widgets/FeatureForm/t9n/messages.de.json +1 -1
  145. package/assets/esri/widgets/FeatureForm/t9n/messages.el.json +1 -1
  146. package/assets/esri/widgets/FeatureForm/t9n/messages.es.json +1 -1
  147. package/assets/esri/widgets/FeatureForm/t9n/messages.et.json +1 -1
  148. package/assets/esri/widgets/FeatureForm/t9n/messages.fi.json +1 -1
  149. package/assets/esri/widgets/FeatureForm/t9n/messages.fr.json +1 -1
  150. package/assets/esri/widgets/FeatureForm/t9n/messages.he.json +1 -1
  151. package/assets/esri/widgets/FeatureForm/t9n/messages.hr.json +1 -1
  152. package/assets/esri/widgets/FeatureForm/t9n/messages.hu.json +1 -1
  153. package/assets/esri/widgets/FeatureForm/t9n/messages.id.json +1 -1
  154. package/assets/esri/widgets/FeatureForm/t9n/messages.it.json +1 -1
  155. package/assets/esri/widgets/FeatureForm/t9n/messages.ja.json +1 -1
  156. package/assets/esri/widgets/FeatureForm/t9n/messages.ko.json +1 -1
  157. package/assets/esri/widgets/FeatureForm/t9n/messages.lt.json +1 -1
  158. package/assets/esri/widgets/FeatureForm/t9n/messages.lv.json +1 -1
  159. package/assets/esri/widgets/FeatureForm/t9n/messages.nl.json +1 -1
  160. package/assets/esri/widgets/FeatureForm/t9n/messages.no.json +1 -1
  161. package/assets/esri/widgets/FeatureForm/t9n/messages.pl.json +1 -1
  162. package/assets/esri/widgets/FeatureForm/t9n/messages.pt-BR.json +1 -1
  163. package/assets/esri/widgets/FeatureForm/t9n/messages.pt-PT.json +1 -1
  164. package/assets/esri/widgets/FeatureForm/t9n/messages.ro.json +1 -1
  165. package/assets/esri/widgets/FeatureForm/t9n/messages.ru.json +1 -1
  166. package/assets/esri/widgets/FeatureForm/t9n/messages.sk.json +1 -1
  167. package/assets/esri/widgets/FeatureForm/t9n/messages.sl.json +1 -1
  168. package/assets/esri/widgets/FeatureForm/t9n/messages.sr.json +1 -1
  169. package/assets/esri/widgets/FeatureForm/t9n/messages.sv.json +1 -1
  170. package/assets/esri/widgets/FeatureForm/t9n/messages.th.json +1 -1
  171. package/assets/esri/widgets/FeatureForm/t9n/messages.tr.json +1 -1
  172. package/assets/esri/widgets/FeatureForm/t9n/messages.uk.json +1 -1
  173. package/assets/esri/widgets/FeatureForm/t9n/messages.vi.json +1 -1
  174. package/assets/esri/widgets/FeatureForm/t9n/messages.zh-CN.json +1 -1
  175. package/assets/esri/widgets/FeatureForm/t9n/messages.zh-HK.json +1 -1
  176. package/assets/esri/widgets/FeatureForm/t9n/messages.zh-TW.json +1 -1
  177. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ar.json +1 -1
  178. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.bg.json +1 -1
  179. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.bs.json +1 -1
  180. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ca.json +1 -1
  181. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.cs.json +1 -1
  182. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.da.json +1 -1
  183. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.de.json +1 -1
  184. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.el.json +1 -1
  185. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.en.json +1 -1
  186. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.es.json +1 -1
  187. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.et.json +1 -1
  188. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.fi.json +1 -1
  189. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.fr.json +1 -1
  190. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.he.json +1 -1
  191. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.hr.json +1 -1
  192. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.hu.json +1 -1
  193. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.id.json +1 -1
  194. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.it.json +1 -1
  195. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ja.json +1 -1
  196. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ko.json +1 -1
  197. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.lt.json +1 -1
  198. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.lv.json +1 -1
  199. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.nl.json +1 -1
  200. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.no.json +1 -1
  201. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.pl.json +1 -1
  202. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.pt-BR.json +1 -1
  203. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.pt-PT.json +1 -1
  204. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ro.json +1 -1
  205. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ru.json +1 -1
  206. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.sk.json +1 -1
  207. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.sl.json +1 -1
  208. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.sr.json +1 -1
  209. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.sv.json +1 -1
  210. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.th.json +1 -1
  211. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.tr.json +1 -1
  212. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.uk.json +1 -1
  213. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.vi.json +1 -1
  214. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.zh-CN.json +1 -1
  215. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.zh-HK.json +1 -1
  216. package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.zh-TW.json +1 -1
  217. package/chunks/Bufferer-CclWhXVb.js +1 -1
  218. package/chunks/Component.glsl.js +3 -3
  219. package/chunks/DefaultMaterial.glsl.js +2 -2
  220. package/chunks/Distance2DCalculator-DjIp2uQi.js +1 -1
  221. package/chunks/Envelope.js +1 -1
  222. package/chunks/Envelope2D.js +1 -1
  223. package/chunks/FocusArea.glsl.js +8 -10
  224. package/chunks/GaussianSplat.glsl.js +2 -2
  225. package/chunks/GeodeticDistanceCalculator-zRp89-dW.js +1 -1
  226. package/chunks/GeodeticUtils.js +1 -1
  227. package/chunks/Geometry.js +1 -1
  228. package/chunks/GeometryCleaner-CIE8Wfmb.js +1 -1
  229. package/chunks/GlobalIllumination.glsl.js +3 -3
  230. package/chunks/LineMarker.glsl.js +35 -42
  231. package/chunks/MultiPathImpl.js +1 -1
  232. package/chunks/OperatorAffineTransform.js +1 -1
  233. package/chunks/OperatorClip.js +1 -1
  234. package/chunks/OperatorDensify.js +1 -1
  235. package/chunks/OperatorDistance.js +1 -1
  236. package/chunks/OperatorGeneralize.js +1 -1
  237. package/chunks/OperatorGeodesicBuffer.js +1 -1
  238. package/chunks/OperatorGeodeticArea.js +1 -1
  239. package/chunks/OperatorGeodeticDensifyByLength.js +1 -1
  240. package/chunks/OperatorGeodeticDistance.js +1 -1
  241. package/chunks/OperatorGeodeticLength.js +1 -1
  242. package/chunks/OperatorGraphicBuffer.js +1 -1
  243. package/chunks/OperatorIntegrate.js +1 -1
  244. package/chunks/OperatorMultiPartToSinglePart.js +1 -1
  245. package/chunks/OperatorProximity.js +1 -1
  246. package/chunks/OperatorProximityGeodesic.js +1 -1
  247. package/chunks/OperatorShapePreservingLength.js +1 -1
  248. package/chunks/OperatorShapePreservingProject.js +1 -1
  249. package/chunks/OperatorSimplifyOGC.js +1 -1
  250. package/chunks/Path.glsl.js +2 -2
  251. package/chunks/Point2D.js +1 -1
  252. package/chunks/RealisticTree.glsl.js +2 -2
  253. package/chunks/RibbonLine.glsl.js +51 -57
  254. package/chunks/SideCalculator2D-DX0718xq.js +1 -1
  255. package/chunks/Terrain.glsl.js +2 -2
  256. package/chunks/Transformation2D.js +1 -1
  257. package/chunks/UnitFactory.js +1 -1
  258. package/config.js +1 -1
  259. package/core/workers/RemoteClient.js +1 -1
  260. package/core/workers/workerFactory.js +1 -1
  261. package/editing/fieldUtils.d.ts +12 -0
  262. package/editing/sharedTemplates/templateDefinitions/TemplateDefinitionBase.js +1 -1
  263. package/geometry/operators/extendOperator.js +1 -1
  264. package/geometry/operators/gx/operatorAlphaShape.js +1 -1
  265. package/geometry/operators/gx/operatorBoundary.js +1 -1
  266. package/geometry/operators/gx/operatorBuffer.js +1 -1
  267. package/geometry/operators/gx/operatorConvexHull.js +1 -1
  268. package/geometry/operators/gx/operatorLabelPoint.js +1 -1
  269. package/geometry/operators/gx/operatorLinesToPolygons.js +1 -1
  270. package/geometry/operators/gx/operatorLocateBetween.js +1 -1
  271. package/geometry/operators/gx/operatorMinimumBoundingCircle.js +1 -1
  272. package/geometry/operators/gx/operatorOffset.js +1 -1
  273. package/geometry/operators/gx/operatorPolygonOverlay.js +1 -1
  274. package/geometry/operators/gx/operatorPolygonSlicer.js +1 -1
  275. package/geometry/operators/gx/operatorSymmetricDifference.js +1 -1
  276. package/geometry/operators/isNearOperator.js +1 -1
  277. package/geometry/operators/reshapeOperator.js +1 -1
  278. package/geometry/operators/support/jsonConverter.js +1 -1
  279. package/geometry/support/curves/ellipticArc7Utils.js +1 -1
  280. package/geometry/support/ellipseUtils.js +2 -0
  281. package/interfaces.d.ts +15 -18
  282. package/kernel.js +1 -1
  283. package/layers/LinkChartLayer.js +1 -1
  284. package/layers/ParquetLayer.js +1 -1
  285. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  286. package/layers/list/LayerItemCollection.d.ts +1 -0
  287. package/layers/list/types.d.ts +5 -1
  288. package/layers/orientedImagery/core/coverageUtils.js +1 -1
  289. package/layers/orientedImagery/queries.js +1 -1
  290. package/layers/support/TimeSeriesCalculation.d.ts +1 -1
  291. package/layers/support/TimeSeriesCalculation.js +1 -1
  292. package/layers/support/dataSeriesUtils.d.ts +10 -0
  293. package/layers/support/timeSeriesUtils.js +17 -6
  294. package/libs/lyr3d/Lyr3DModule.js +1 -1
  295. package/networks/UtilityNetwork.d.ts +15 -0
  296. package/networks/UtilityNetwork.js +1 -1
  297. package/package.json +4 -4
  298. package/popup/FeatureContent.d.ts +14 -1
  299. package/popup/FeatureContent.js +1 -1
  300. package/popup/FeatureContentCollection.d.ts +4 -10
  301. package/popup/FeatureContentCollection.js +1 -1
  302. package/popup/actions.js +1 -1
  303. package/popup/support/featureUtils.js +1 -1
  304. package/renderers/support/RenderingInfo.js +1 -1
  305. package/renderers/support/renderingInfoUtils.js +1 -1
  306. package/renderers/visualVariables/SizeVariable.d.ts +16 -20
  307. package/renderers/visualVariables/support/SizeStop.d.ts +6 -2
  308. package/rest/networks/support/TraceLocation.js +1 -1
  309. package/rest/networks/support/TraceResult.d.ts +7 -0
  310. package/rest/networks/support/TraceResult.js +1 -1
  311. package/smartMapping/renderers/color.js +1 -1
  312. package/smartMapping/renderers/opacity.js +1 -1
  313. package/smartMapping/renderers/size.js +1 -1
  314. package/smartMapping/renderers/support/timeSeriesUtils.js +1 -1
  315. package/smartMapping/statistics/histogramForTimeSeries.d.ts +11 -0
  316. package/smartMapping/statistics/histogramForTimeSeries.js +2 -0
  317. package/smartMapping/statistics/summaryStatisticsForTimeSeries.d.ts +11 -0
  318. package/smartMapping/statistics/summaryStatisticsForTimeSeries.js +2 -0
  319. package/smartMapping/statistics/support/timeSeriesUtils.js +24 -0
  320. package/smartMapping/statistics/types.d.ts +50 -0
  321. package/support/tests/serviceMockDependencies.js +1 -1
  322. package/support/tests/setupServiceMocksMesh.js +1 -1
  323. package/symbols/cim/CIMPlacements.js +1 -1
  324. package/symbols/cim/callouts/calloutAnalysisUtils.js +1 -1
  325. package/symbols/cim/callouts/effects/BackgroundCallout.js +1 -1
  326. package/symbols/cim/callouts/effects/BalloonCallout.js +1 -1
  327. package/symbols/cim/callouts/effects/PointSymbolCallout.js +1 -1
  328. package/symbols/cim/callouts/effects/calloutUtils.js +1 -1
  329. package/symbols/cim/cimAnalyzer.js +1 -1
  330. package/views/2d/analysis/AreaMeasurement/AreaMeasurementTool.js +1 -1
  331. package/views/2d/analysis/DistanceMeasurement/DistanceMeasurementTool.js +1 -1
  332. package/views/2d/engine/vectorTiles/decluttering/CollisionJob.js +1 -1
  333. package/views/2d/engine/vectorTiles/decluttering/SymbolFader.js +1 -1
  334. package/views/2d/engine/vectorTiles/decluttering/jobsUtil.js +1 -1
  335. package/views/2d/engine/webgl/collisions/LabelMetric.js +1 -1
  336. package/views/2d/engine/webgl/definitions.js +1 -1
  337. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AAnimatedShader.js +1 -1
  338. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedPolyMeshWriters.js +1 -1
  339. package/views/2d/engine/webgl/shaderGraph/techniques/animated/ComputedAnimatedParams.js +1 -1
  340. package/views/2d/engine/webgl/shaderGraph/techniques/markers/ComputedMarkerParams.js +1 -1
  341. package/views/2d/engine/webgl/shaderGraph/techniques/mesh/CalloutMeshWriterPolicy.js +1 -1
  342. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/AFeatureShader.js +1 -1
  343. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextParams.js +1 -1
  344. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
  345. package/views/2d/layers/SketchLayerView2D.js +1 -1
  346. package/views/2d/layers/features/layerAdapters/AnnotationLayerAdapter.js +1 -1
  347. package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
  348. package/views/2d/layers/features/layerAdapters/DimensionLayerAdapter.js +1 -1
  349. package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
  350. package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
  351. package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
  352. package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
  353. package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
  354. package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
  355. package/views/2d/layers/features/layerAdapters/StreamLayerAdapter.js +1 -1
  356. package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
  357. package/views/2d/layers/features/layerAdapters/labelingUtils.js +1 -1
  358. package/views/2d/layers/features/schema/ExceedsLimitCache.js +1 -1
  359. package/views/2d/layers/features/schema/TimeSchema.js +2 -0
  360. package/views/2d/layers/features/schema/processor/LabelMatcherSchema.js +1 -1
  361. package/views/2d/layers/features/schema/processor/MatcherSchema.js +1 -1
  362. package/views/2d/layers/features/schema/processor/symbols/SymbolSchema.js +1 -1
  363. package/views/2d/layers/features/sources/FeatureSourceQueryInfo.js +1 -1
  364. package/views/2d/layers/features/sources/strategies/ParquetTileLoadStrategy.js +1 -1
  365. package/views/2d/layers/support/annodime/cimAnnotations.js +1 -1
  366. package/views/2d/layers/support/vectorTileDebugUtils.js +1 -1
  367. package/views/2d/layers/support/visualVariableSimpleUtils.js +1 -1
  368. package/views/2d/types.d.ts +2 -1
  369. package/views/3d/analysis/LineOfSight/LineOfSightEditTool.js +1 -1
  370. package/views/3d/analysis/LineOfSight/LineOfSightItemManipulatedObject3D.js +1 -1
  371. package/views/3d/analysis/LineOfSight/LineOfSightItemTool.js +1 -1
  372. package/views/3d/analysis/LineOfSightAnalysisView3D.d.ts +24 -0
  373. package/views/3d/analysis/Viewshed/ViewshedEditTool.js +1 -1
  374. package/views/3d/analysis/Viewshed/ViewshedObserverManipulatedObject3D.js +1 -1
  375. package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +1 -1
  376. package/views/3d/analysis/Viewshed/ViewshedSubTool.js +1 -1
  377. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementShiftTool.js +1 -1
  378. package/views/3d/camera/constraintUtils.js +1 -1
  379. package/views/3d/input/handlers/ground/GroundDoubleClickMove.js +1 -1
  380. package/views/3d/input/handlers/ground/GroundNavigation.js +1 -1
  381. package/views/3d/interactive/editingTools/tooltipUtils3D.js +1 -1
  382. package/views/3d/interactive/placementTools/GroundNavigationPlacementTool3D.js +1 -1
  383. package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
  384. package/views/3d/layers/i3s/I3SOverrides.js +1 -1
  385. package/views/3d/layers/support/FastSymbolUpdates.js +1 -1
  386. package/views/3d/state/controllers/GroundNavigationController.js +1 -1
  387. package/views/3d/state/controllers/momentum/GroundNavigationMomentumController.js +1 -1
  388. package/views/3d/state/utils/OffsetCorrectionController.js +1 -1
  389. package/views/3d/state/utils/groundNavigationUtils.js +1 -1
  390. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  391. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
  392. package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js +16 -8
  393. package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +5 -1
  394. package/views/3d/webgl-engine/core/shaderLibrary/shading/evaluateSceneLightingFragment.glsl.js +12 -0
  395. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +2 -2
  396. package/views/3d/webgl-engine/effects/focusArea/FocusArea.glsl.js +1 -1
  397. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.glsl.js +1 -1
  398. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +1 -1
  399. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  400. package/views/3d/webgl-engine/shaders/LineMarker.glsl.js +1 -1
  401. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  402. package/views/SelectionManager.d.ts +3 -3
  403. package/views/draw/support/Reshape.js +1 -1
  404. package/views/interactive/options/bindViewToolOptions.js +1 -1
  405. package/views/interactive/sketch/SketchLabelOptions.d.ts +3 -0
  406. package/views/interactive/sketch/SketchLabelOptions.js +1 -1
  407. package/views/interactive/sketch/SketchTooltipOptions.d.ts +3 -0
  408. package/views/interactive/sketch/SketchTooltipOptions.js +1 -1
  409. package/views/interactive/sketch/SketchValueOptions.d.ts +3 -0
  410. package/views/interactive/sketch/SketchValueOptions.js +1 -1
  411. package/views/interactive/snapping/SnappingOptions.d.ts +3 -0
  412. package/views/interactive/snapping/SnappingOptions.js +1 -1
  413. package/views/interactive/snapping/snappingUtils.js +1 -1
  414. package/views/interactive/tooltip/fields/parsingAndFormattingUtils.js +1 -1
  415. package/views/layers/SketchLayerView.d.ts +34 -0
  416. package/views/layers/SketchLayerView.js +2 -0
  417. package/views/layers/types.d.ts +3 -2
  418. package/views/selection/types.d.ts +15 -4
  419. package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
  420. package/widgets/BasemapGallery.js +1 -1
  421. package/widgets/Bookmarks/BookmarksViewModel.d.ts +4 -0
  422. package/widgets/Bookmarks/BookmarksVisibleElements.d.ts +5 -1
  423. package/widgets/Bookmarks/types.d.ts +2 -0
  424. package/widgets/Editor/EditorViewModel.d.ts +31 -30
  425. package/widgets/Editor/EditorViewModel.js +1 -1
  426. package/widgets/Editor/components/Settings.js +1 -1
  427. package/widgets/Editor/types.d.ts +44 -0
  428. package/widgets/Editor.d.ts +30 -27
  429. package/widgets/Editor.js +1 -1
  430. package/widgets/FeatureTable/FeatureTableViewModel.d.ts +1 -1
  431. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  432. package/widgets/FeatureTable/support/FeatureStore.d.ts +1 -1
  433. package/widgets/FeatureTable/support/FeatureStore.js +1 -1
  434. package/widgets/FeatureTable.d.ts +6 -0
  435. package/widgets/FeatureTable.js +1 -1
  436. package/widgets/Histogram/types.d.ts +10 -2
  437. package/widgets/HistogramRangeSlider/types.d.ts +4 -1
  438. package/widgets/LayerList/LayerListViewModel.d.ts +2 -1
  439. package/widgets/Legend/LegendViewModel.d.ts +2 -0
  440. package/widgets/Legend/styles/card/CardView.d.ts +2 -0
  441. package/widgets/Legend/styles/classic/ClassicView.d.ts +4 -1
  442. package/widgets/Legend.d.ts +3 -0
  443. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.d.ts +7 -0
  444. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  445. package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
  446. package/widgets/OrientedImageryViewer/support/VideoFeatureCache.js +2 -0
  447. package/widgets/OrientedImageryViewer/types.d.ts +9 -0
  448. package/widgets/OrientedImageryViewer.d.ts +7 -0
  449. package/widgets/OrientedImageryViewer.js +2 -2
  450. package/widgets/PanoramicVideoViewer.js +1 -1
  451. package/widgets/PanoramicViewer/PanoramicVideoViewerViewModel.js +1 -1
  452. package/widgets/ScaleRangeSlider/types.d.ts +9 -2
  453. package/widgets/Sketch/SketchViewModel.d.ts +32 -1
  454. package/widgets/Sketch/SketchViewModel.js +1 -1
  455. package/widgets/Sketch.d.ts +27 -1
  456. package/widgets/Sketch.js +1 -1
  457. package/widgets/Slider/types.d.ts +58 -13
  458. package/widgets/Slider.d.ts +6 -0
  459. package/widgets/smartMapping/BinaryColorSizeSlider/BinaryColorSizeSliderViewModel.d.ts +2 -0
  460. package/widgets/smartMapping/ClassedColorSlider/ClassedColorSliderViewModel.d.ts +2 -0
  461. package/widgets/smartMapping/ClassedSizeSlider/ClassedSizeSliderViewModel.d.ts +2 -0
  462. package/widgets/smartMapping/ColorSizeSlider/ColorSizeSliderViewModel.d.ts +2 -0
  463. package/widgets/smartMapping/ColorSlider/ColorSliderViewModel.d.ts +2 -0
  464. package/widgets/smartMapping/HeatmapSlider/HeatmapSliderViewModel.d.ts +2 -0
  465. package/widgets/smartMapping/OpacitySlider/OpacitySliderViewModel.d.ts +2 -0
  466. package/widgets/smartMapping/SizeSlider/SizeSliderViewModel.d.ts +3 -0
  467. package/widgets/smartMapping/SmartMappingPrimaryHandleSliderViewModel.d.ts +2 -0
  468. package/widgets/smartMapping/SmartMappingSliderViewModel.d.ts +2 -0
  469. package/widgets/smartMapping/types.d.ts +30 -7
  470. package/widgets/support/FilterBuilder/FilterBuilderViewModel.d.ts +21 -11
  471. package/widgets/support/FilterBuilder/FilterBuilderViewModel.js +1 -1
  472. package/widgets/support/FilterBuilder/types.d.ts +28 -0
  473. package/widgets/support/FilterBuilder.js +1 -1
  474. package/widgets/support/FilterCondition/FilterConditionViewModel.d.ts +24 -0
  475. package/widgets/support/FilterCondition/FilterConditionViewModel.js +1 -1
  476. package/widgets/support/FilterCondition/types.d.ts +16 -1
  477. package/widgets/support/FilterCondition.js +1 -1
  478. package/widgets/support/SnappingControls/snappingLayerListUtils.js +1 -1
  479. package/widgets/support/iconUtils.js +1 -1
  480. package/assets/esri/core/workers/chunks/0606ab6fdfc1dfea3856.js +0 -1
  481. package/assets/esri/core/workers/chunks/078dcd17f46403d44b24.js +0 -1
  482. package/assets/esri/core/workers/chunks/1289204f8ca96032c17a.js +0 -1
  483. package/assets/esri/core/workers/chunks/12b5a645c0987a0efe54.js +0 -2
  484. package/assets/esri/core/workers/chunks/152fe3d6ad7aebbd23d1.js +0 -1
  485. package/assets/esri/core/workers/chunks/17b938ba49fb1e7ab8c4.js +0 -1
  486. package/assets/esri/core/workers/chunks/1dbb3e25e005a8220779.js +0 -2
  487. package/assets/esri/core/workers/chunks/3d6fef25af7e1a51e1bd.js +0 -1
  488. package/assets/esri/core/workers/chunks/3ef367c9b7bf1588307d.js +0 -1
  489. package/assets/esri/core/workers/chunks/5f4feca26102088ea565.js +0 -1
  490. package/assets/esri/core/workers/chunks/74211d096cc3296e0968.js +0 -1
  491. package/assets/esri/core/workers/chunks/7926faab76a721a2e1c4.js +0 -1
  492. package/assets/esri/core/workers/chunks/ad28486bc6afaa346de5.js +0 -1
  493. package/assets/esri/core/workers/chunks/ad29c729e90b5866713c.js +0 -1
  494. package/assets/esri/core/workers/chunks/b72a2514aa4cc4ae7d1b.js +0 -1
  495. package/assets/esri/core/workers/chunks/bb51cf52b8ea8283f4f8.js +0 -1
  496. package/assets/esri/core/workers/chunks/be761749f8d77fbd9df5.js +0 -1
  497. package/assets/esri/core/workers/chunks/dbfd25aa0d19aed5890c.js +0 -1
  498. package/assets/esri/core/workers/chunks/de28a86775235bd5d3c4.js +0 -2
  499. package/assets/esri/core/workers/chunks/f6cfc901267a229de7a1.js +0 -2
  500. package/assets/esri/core/workers/chunks/fb147097149a89e671ff.js +0 -1
  501. package/support/revision.js +0 -2
  502. /package/assets/esri/core/workers/chunks/{1dbb3e25e005a8220779.js.LICENSE.txt → 1b946714ca4a1a7359d4.js.LICENSE.txt} +0 -0
  503. /package/assets/esri/core/workers/chunks/{f6cfc901267a229de7a1.js.LICENSE.txt → 2a1ec30f9ad305763f81.js.LICENSE.txt} +0 -0
  504. /package/assets/esri/core/workers/chunks/{c3b96d1d43afccd23e45.js.LICENSE.txt → 590e6c70206122e4cc3c.js.LICENSE.txt} +0 -0
  505. /package/assets/esri/core/workers/chunks/{cfaba0470619786e1ef8.js.LICENSE.txt → 68d8ae42ab71d01a70a5.js.LICENSE.txt} +0 -0
  506. /package/assets/esri/core/workers/chunks/{de28a86775235bd5d3c4.js.LICENSE.txt → 8dc1c3042267618fd710.js.LICENSE.txt} +0 -0
  507. /package/assets/esri/core/workers/chunks/{12b5a645c0987a0efe54.js.LICENSE.txt → 96c50a0dda0f1503ef92.js.LICENSE.txt} +0 -0
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import"../../support/engineContent/marker.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import"../core/shaderLibrary/output/OutputHighlight.glsl.js";import"../core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import"../core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import"../core/shaderLibrary/shading/MainLighting.glsl.js";import"../core/shaderLibrary/shading/MarkerSizing.glsl.js";import"../core/shaderLibrary/shading/NormalUtils.glsl.js";import"../core/shaderLibrary/shading/PositionOutsideClipSpace.js";import"../core/shaderLibrary/shading/readFragmentShadow.glsl.js";import"../core/shaderLibrary/util/cameraUniforms.js";import"../core/shaderLibrary/util/ColorConversion.glsl.js";import"../core/shaderLibrary/util/NoPerspective.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/glsl.js";import"../core/shaderModules/Texture2DPassUniform.js";import"./alphaCutoff.glsl.js";import"./OutputColorHighlightOLID.glsl.js";import"../../../webgl/ShaderBuilder.js";export{b as build}from"../../../../chunks/LineMarker.glsl.js";
2
+ import"../../support/engineContent/marker.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import"../core/shaderLibrary/output/OutputHighlight.glsl.js";import"../core/shaderLibrary/shading/evaluateSceneLightingFragment.glsl.js";import"../core/shaderLibrary/shading/MarkerSizing.glsl.js";import"../core/shaderLibrary/shading/NormalUtils.glsl.js";import"../core/shaderLibrary/shading/PositionOutsideClipSpace.js";import"../core/shaderLibrary/util/cameraUniforms.js";import"../core/shaderLibrary/util/ColorConversion.glsl.js";import"../core/shaderLibrary/util/NoPerspective.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/glsl.js";import"../core/shaderModules/Texture2DPassUniform.js";import"./alphaCutoff.glsl.js";import"./OutputColorHighlightOLID.glsl.js";import"../../../webgl/ShaderBuilder.js";export{b as build}from"../../../../chunks/LineMarker.glsl.js";
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import"../core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import"../core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import"../core/shaderLibrary/shading/LineStipple.glsl.js";import"../core/shaderLibrary/shading/MainLighting.glsl.js";import"../core/shaderLibrary/shading/MarkerSizing.glsl.js";import"../core/shaderLibrary/shading/NormalUtils.glsl.js";import"../core/shaderLibrary/shading/PiUtils.glsl.js";import"../core/shaderLibrary/shading/PositionOutsideClipSpace.js";import"../core/shaderLibrary/shading/readFragmentShadow.glsl.js";import"../core/shaderLibrary/util/cameraUniforms.js";import"../core/shaderLibrary/util/ColorConversion.glsl.js";import"../core/shaderLibrary/util/NoPerspective.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/FloatBindUniform.js";import"../core/shaderModules/FloatPassUniform.js";import"../core/shaderModules/glsl.js";import"./alphaCutoff.glsl.js";import"./animatedAlpha.glsl.js";import"./OutputColorHighlightOLID.glsl.js";import"./RibbonLineTextureBuffer.glsl.js";import"../../../webgl/ShaderBuilder.js";export{b as build,n as numRoundJoinSubdivisions}from"../../../../chunks/RibbonLine.glsl.js";
2
+ import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import"../core/shaderLibrary/shading/evaluateSceneLightingFragment.glsl.js";import"../core/shaderLibrary/shading/LineStipple.glsl.js";import"../core/shaderLibrary/shading/MarkerSizing.glsl.js";import"../core/shaderLibrary/shading/NormalUtils.glsl.js";import"../core/shaderLibrary/shading/PiUtils.glsl.js";import"../core/shaderLibrary/shading/PositionOutsideClipSpace.js";import"../core/shaderLibrary/util/cameraUniforms.js";import"../core/shaderLibrary/util/ColorConversion.glsl.js";import"../core/shaderLibrary/util/NoPerspective.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/FloatBindUniform.js";import"../core/shaderModules/FloatPassUniform.js";import"../core/shaderModules/glsl.js";import"./alphaCutoff.glsl.js";import"./animatedAlpha.glsl.js";import"./OutputColorHighlightOLID.glsl.js";import"./RibbonLineTextureBuffer.glsl.js";import"../../../webgl/ShaderBuilder.js";export{b as build,n as numRoundJoinSubdivisions}from"../../../../chunks/RibbonLine.glsl.js";
@@ -6,7 +6,7 @@ import type View from "./View.js";
6
6
  import type { EventedAccessor } from "../core/Evented.js";
7
7
  import type { QueryProperties } from "../rest/support/Query.js";
8
8
  import type { ObjectId } from "./types.js";
9
- import type { LayerFeatureSet, LayerSelectionChange, SelectableLayer, SelectableLayerWithObjectIds, SelectionIdentifier, LayerSelection } from "./selection/types.js";
9
+ import type { LayerFeatureSet, LayerSelectionChange, SelectableLayer, SelectableLayerWithObjectIds, SelectionIdentifier, LayerSelection, SelectableLayerWithGraphics } from "./selection/types.js";
10
10
 
11
11
  export interface SelectionManagerProperties extends Partial<Pick<SelectionManager, "highlightEnabled" | "highlightName" | "view">> {
12
12
  /**
@@ -186,7 +186,7 @@ export default class SelectionManager extends EventedAccessor {
186
186
  * @param layer - The selectable layer from which to remove the selection. This must be a layer with graphics in the [sources](https://developers.arcgis.com/javascript/latest/references/core/views/SelectionManager/#sources).
187
187
  * @param selection - An array of features, ie. [Graphic[]](https://developers.arcgis.com/javascript/latest/references/core/Graphic/) to remove from the current selection.
188
188
  */
189
- remove(layer: GraphicsLayer | SketchLayer, selection: Graphic[]): void;
189
+ remove(layer: SelectableLayerWithGraphics, selection: Graphic[]): void;
190
190
  /**
191
191
  * @param layer - The selectable layer from which to remove the selection. This must be a layer with object IDs in the [sources](https://developers.arcgis.com/javascript/latest/references/core/views/SelectionManager/#sources).
192
192
  * @param selection - An array of features, ie. [ObjectId](https://developers.arcgis.com/javascript/latest/references/core/views/types/#ObjectId)[] to remove from the current selection.
@@ -203,7 +203,7 @@ export default class SelectionManager extends EventedAccessor {
203
203
  * @param layer - The selectable layer for which to replace the selection. This must be a layer with graphics in the [sources](https://developers.arcgis.com/javascript/latest/references/core/views/SelectionManager/#sources).
204
204
  * @param selection - An array of features, ie. [Graphic[]](https://developers.arcgis.com/javascript/latest/references/core/Graphic/) to set as the current selection.
205
205
  */
206
- replace(layer: GraphicsLayer | SketchLayer, selection: Graphic[]): void;
206
+ replace(layer: SelectableLayerWithGraphics, selection: Graphic[]): void;
207
207
  /**
208
208
  * @param layer - The selectable layer for which to replace the selection. This must be a layer with object IDs in the [sources](https://developers.arcgis.com/javascript/latest/references/core/views/SelectionManager/#sources).
209
209
  * @param selection - An array of features, ie. [ObjectId](https://developers.arcgis.com/javascript/latest/references/core/views/types/#ObjectId)[] to set as the current selection.
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../../../Graphic.js";import{createTask as n}from"../../../core/asyncUtils.js";import r from"../../../core/Collection.js";import i from"../../../core/Error.js";import{EventedAccessor as a}from"../../../core/Evented.js";import o from"../../../core/Logger.js";import{getOrCreateMapValue as s}from"../../../core/MapUtils.js";import{destroyMaybe as c,abortMaybe as l,assertIsSome as u}from"../../../core/maybe.js";import{throwIfAborted as d}from"../../../core/promiseUtils.js";import{pausable as f,when as p,watch as m,initial as h,sync as g}from"../../../core/reactiveUtils.js";import{property as _,subclass as v}from"../../../core/accessorSupport/decorators.js";import{UpdatingHandles as y}from"../../../core/support/UpdatingHandles.js";import b from"../../../geometry/Point.js";import x from"../../../geometry/Polyline.js";import{fromPolylineUsingImportOperator as S,toGeometry as C}from"../../../geometry/operators/support/apiConverter.js";import{closeRingsAndFixWinding as w,geometryToCoordinates as T}from"../../../geometry/support/coordsUtils.js";import{fromJSON as E}from"../../../geometry/support/jsonUtils.js";import{isPoint as D}from"../../../geometry/support/typeUtils.js";import{interpolateCircle as O}from"../../../geometry/support/curves/circleUtils.js";import{deriveCircleFromCircularArc as k,toEllipticArc7 as ee}from"../../../geometry/support/curves/circularArcUtils.js";import{getPaths as te,getEndpoint as A,isCircularArc as j,isEllipticArc4 as M,isBezierCurve as N,isCoordinate as P,cloneCurve as ne,isEllipticArc7 as F}from"../../../geometry/support/curves/curveUtils.js";import{deriveCircleFromEllipticArc4 as I}from"../../../geometry/support/curves/ellipticArc4Utils.js";import{wrapAtan2 as re}from"../../../geometry/support/curves/mathUtils.js";import ie from"../../../layers/GraphicsLayer.js";import{SnappingVisualizer2D as ae}from"../../2d/interactive/SnappingVisualizer2D.js";import{ConnectedReshapeManager as oe}from"./ConnectedReshapeManager.js";import{screenDeltaToMapDelta as se,getZFromVertexSnappingCandidates as ce,cloneMove as le}from"./drawUtils.js";import ue from"./GraphicMover.js";import de from"./HighlightHelper.js";import{addUniqueLayer as fe,isConnectedReshapeSupportedLayer as pe}from"./layerUtils.js";import{createTooltipInfos as me,connectTooltip as he,updateTranslateTooltipInfo as ge,updateTranslateVertexTooltipInfo as _e}from"./reshapeTooltipUtils.js";import{defaultSymbols as ve,createMidpointGraphics as ye,createVertexGraphics as L,createCurveControlPointGraphics as be,createCurveConstructionLineGraphics as xe,attributeKeys as R,getMidpoint as z,controlPointKinds as B,fastCloneGeometry as V,saveUpdatedCurveOrCoordinate as H,toolIdAttribute as Se,splitCurve as Ce,isSingleSegmentCircle as we,isSingleSegmentEllipse as Te}from"./reshapeUtils.js";import{ViewEventPriorities as Ee}from"../../input/InputManager.js";import{createCoordinateHelper as De}from"../../interactive/coordinateHelper.js";import{sketchKeys as Oe}from"../../interactive/keybindings.js";import{EditGeometryOperations as ke}from"../../interactive/editGeometry/EditGeometryOperations.js";import Ae from"../../interactive/options/InteractiveToolOptions.js";import{SnappingContext as je}from"../../interactive/snapping/SnappingContext.js";import{makeTooltip as Me,enterInputModeIfAvailable as Ne}from"../../interactive/tooltip/tooltipCommonUtils.js";import{GeometryWorkerHandle as Pe}from"../../support/GeometryWorkerHandle.js";const U=Symbol(),W={mode:`on-the-ground`,offset:0};let G=class extends a{constructor(e){super(e),this._updateHandlesOnExternalGeometryChange=null,this._activeOperationInfo=null,this._connectedReshapeManager=null,this._editGeometryOperations=null,this._primaryGraphicMoving=!1,this._segmentLabels=null,this._segmentLabelsImportTask=null,this._mover=null,this._snappingContext=null,this._snappingGraphicsLayer=null,this._hoverGraphic=null,this._snappingTask=null,this._stagedVertex=null,this._relatedGraphicIndex=null,this._updatingHandles=new y,this._measurementWorker=new Pe({preloadGeodetic:!0}),this.callbacks={onReshapeStart(){},onReshape(){},onReshapeStop(){},onMoveStart(){},onMove(){},onMoveStop(){},onGraphicClick(){}},this.connectedReshapeProviders=null,this.enableMidpoints=!0,this.enableCurveOnMidpoint=!1,this.enableMovement=!0,this.enableVertices=!0,this.filterVerticesEnabled=!0,this.graphic=null,this.highlightName=null,this.highlightsEnabled=!0,this.layer=null,this.snappingManager=null,this.symbols=ve,this.tooltip=null,this.activeTooltipInfo=null,this.toolOptions=new Ae,this.type=`reshape`,this.vertexGraphics=new r,this.curveControlPointGraphics=new r,this.constructionLineGraphics=new r,this.midpointGraphics=new r,this.selectedManipulators=new r,this.view=null}initialize(){let e=this.view;this._highlightHelper=new de({view:e}),this._setup(),this._updateHandlesOnExternalGeometryChange=f(()=>this.graphic?.geometry,e=>{if(!e||this._primaryGraphicMoving===!0)return;let t=new Set(this.selectedManipulators.map($));this._highlightHelper.removeAll(),this._setUpHighlights(),this._setupGraphics(),this._clearSelection(),this.vertexGraphics.filter(e=>t.has($(e))).forEach(e=>this._addToSelection(e)),this.curveControlPointGraphics.filter(e=>t.has($(e))).forEach(e=>this._addToSelection(e));let{enableMovement:n,_mover:r,graphic:i,midpointGraphics:a,vertexGraphics:o,curveControlPointGraphics:s}=this,c=o.concat(a,s).toArray();n&&c.push(i),r?.set(`graphics`,c)},g),this.tooltip=Me(()=>({view:e,options:this.toolOptions.tooltips})),this.tooltipInfos=me(this.toolOptions),this.addHandles([p(()=>e?.ready,()=>{let{layer:e,view:t}=this;fe(t,e),this.addHandles(t.on(`key-down`,e=>this._keyDownHandler(e),Ee.TOOL))},{once:!0,initial:!0}),m(()=>this.graphic,()=>this.refresh()),...this._effectiveFilterVerticesEnabled?[m(()=>[this.view.viewpoint,this.view.stationary],()=>{this.view.stationary&&this.refresh()})]:[],m(()=>this.layer,(e,t)=>{t&&(this._clearSelection(),this._resetGraphics(t)),this.refresh()}),m(()=>[this.highlightsEnabled,this.highlightName],()=>{this._highlightHelper?.removeAll(),this._setUpHighlights()}),m(()=>this.enableMidpoints,()=>this.refresh()),he(this.tooltip,()=>this._tooltipsContext,this._updatingHandles),m(()=>this.toolOptions.labels.enabled,e=>{this._segmentLabels?this._segmentLabels.visible=e:this._setUpGeometryHelper()}),m(()=>this.view.effectiveTheme.accentColor,()=>this._updateSymbolsForTheme(),h),this._updateHandlesOnExternalGeometryChange]),this._updateTooltip()}destroy(){this._reset(),this._mover=c(this._mover),this._connectedReshapeManager=c(this._connectedReshapeManager),this.tooltip=c(this.tooltip),this._segmentLabelsImportTask=l(this._segmentLabelsImportTask),this._segmentLabels=c(this._segmentLabels),this._updatingHandles=c(this._updatingHandles),this._measurementWorker.destroy()}get _coordinateHelper(){return this._editGeometryOperations?.data.coordinateHelper??De(!!this.graphic.geometry?.hasZ,!!this.graphic.geometry?.hasM,this.view.spatialReference)}get _effectiveFilterVerticesEnabled(){return this.view?.type===`2d`&&this.filterVerticesEnabled}get test(){return{segmentLabels:this._segmentLabels}}get _selectedManipulator(){return this.selectedManipulators.length===1?this.selectedManipulators.at(0):void 0}get _tooltipsContext(){let{toolOptions:e,activeTooltipInfo:t,graphic:n}=this;return{toolOptions:e,activeTooltipInfo:t,graphic:n,selectedVertex:this._selectedManipulator,measurementWorker:this._measurementWorker,updateGeometry:(e,t,n,r,i)=>{this._setUpGeometryHelper();let a=e===this.graphic;if(a?this._emitMoveStartEvent(0,0):this._emitReshapeStartEvent(e),this._syncGeometryAfterVertexMove(e,t,r,i,!0),a){let{view:e}=this,r=e.toScreen(n),i=e.toScreen(t),a=(i?.x??0)-(r?.x??0),o=(i?.y??0)-(r?.y??0);this._emitMoveEvent(a,o),this._emitMoveStopEvent(a,o)}else this._emitReshapeEvent(e),this._emitReshapeStopEvent(e)}}}get state(){let e=this.view.ready,t=!!(this.graphic&&this.layer);return e&&t?`active`:e?`ready`:`disabled`}get updating(){return!!this._updatingHandles?.updating||!!this._connectedReshapeManager?.updating||!!this._segmentLabels?.updating||!!this.snappingManager?.updating}isUIGraphic(e){return e===this.graphic||this._isMidpoint(e)||this._isCurveControlPoint(e)||this._isVertex(e)||this._isConstructionLine(e)}refresh(e){if(this._reset(),this._setup(),e){for(let t of this.vertexGraphics)e.has($(t))&&this._addToSelection(t);for(let t of this.curveControlPointGraphics)e.has($(t))&&this._addToSelection(t)}}reset(){this.graphic=null}clearSelection(){this._clearSelection()}removeSelectedVertices(){let{selectedManipulators:e}=this;e.length&&this._removeVertices(e)}_setup(){let{graphic:e,layer:t}=this;if(!t||e?.geometry==null)return;let n=e.geometry;if(n.type===`mesh`||n.type===`extent`){this._logGeometryTypeError();return}n.type===`polygon`&&w(n),this._setUpHighlights(),this._setupGraphics(),this._setupMover(),this._setupConnectedReshapeManager(),this._setUpGeometryHelper()}_setUpHighlights(){this.highlightsEnabled&&this.graphic&&this._highlightHelper?.add(this.graphic,this.highlightName)}_setUpGeometryHelper(){let e=this.graphic.geometry;if(e==null||e.type===`mesh`||e.type===`extent`){this._segmentLabels=c(this._segmentLabels),this._logGeometryTypeError();return}this._editGeometryOperations?this._syncEditGeometryOperations(e):this._editGeometryOperations=ke.fromGeometry(e,2,{allowCurves:!0}),this._updatingHandles.consumePromise(this._setupSegmentLabels())}_saveSnappingContextForHandle(e,t){this._snappingGraphicsLayer=new ie({listMode:`hide`,internal:!0,title:`Reshape snapping layer`}),this.view.map.layers.add(this._snappingGraphicsLayer);let n=this._editGeometryOperations;u(n),this._snappingContext=new je({editGeometryOperations:n,elevationInfo:W,pointer:t.viewEvent?.pointerType||`mouse`,excludeFeature:this.graphic,feature:this.graphic,visualizer:new ae(this._snappingGraphicsLayer),vertexHandle:this._getVertexFromEditGeometry(e)})}_reset(){this._clearSelection(),this._highlightHelper?.removeAll(),this._updateTooltip(),this._resetGraphics(),this._resetSnappingStateVars(),this._segmentLabelsImportTask=l(this._segmentLabelsImportTask),this._segmentLabels=c(this._segmentLabels),this._activeOperationInfo=null,this._mover=c(this._mover),this.removeHandles(U),this._connectedReshapeManager?.finish()}_resetSnappingStateVars(){this.snappingManager!=null&&this.snappingManager.doneSnapping(),this._snappingGraphicsLayer!=null&&(this.view.map?.layers.remove(this._snappingGraphicsLayer),c(this._snappingGraphicsLayer)),this._snappingTask=l(this._snappingTask),this._snappingTask=null,this._snappingContext=null,this._stagedVertex=null}_resetGraphics(e){this._removeMidpointGraphics(e),this._removeVertexGraphics(e),this._removeCurveGraphics(e),this._updateTooltip()}_removeMidpointGraphics(e=this.layer){let{midpointGraphics:t}=this;e?.removeMany(t.items),t.drain(c)}_removeVertexGraphics(e=this.layer){let{vertexGraphics:t}=this;this._relatedGraphicIndex=null,e?.removeMany(t.items),t.drain(c)}_removeCurveGraphics(e=this.layer){let{curveControlPointGraphics:t,constructionLineGraphics:n}=this;e?.removeMany(t.items),e?.removeMany(n.items),t.drain(c),n.drain(c)}_setupGraphics(){let e=this.graphic.geometry;if(e!=null&&(e.type===`polyline`||e.type===`polygon`||e.type===`multipoint`)){let t=K(e);this.enableMidpoints&&e.type!==`multipoint`&&this._setUpMidpointGraphics(t),this.enableVertices&&(this._setUpVertexGraphics(t),this._setupCurveGraphics(t))}}_setUpMidpointGraphics(e){this._removeMidpointGraphics();let t=ye(e,this.symbols,this._coordinateHelper,this.graphic.geometry?.type===`polygon`,this.filterVerticesEnabled?this.view.extent:null,this.filterVerticesEnabled?this.view.resolution:-1);this.midpointGraphics.addMany(t),this.layer.addMany(t)}_setUpVertexGraphics(e){if(this._removeVertexGraphics(),this._effectiveFilterVerticesEnabled){let t=L(e,this.symbols,this._coordinateHelper,this.view.extent,this.view.resolution);this._relatedGraphicIndex=t.graphicIndex,this.vertexGraphics.addMany(t.graphics),this.layer.addMany(t.graphics)}else{let t=L(e,this.symbols,this._coordinateHelper,null,-1).graphics;this.vertexGraphics.addMany(t),this._storeRelatedVertexIndices(),this.layer.addMany(t)}}_setupCurveGraphics(e){this._removeCurveGraphics();let t=be(e,this.symbols,this._coordinateHelper),n=xe(e,this.symbols,this._coordinateHelper);this.curveControlPointGraphics.addMany(t),this.constructionLineGraphics.addMany(n),this.layer.addMany(n),this.layer.addMany(t)}async _setupSegmentLabels(){let e=this._editGeometryOperations,t=this.toolOptions.labels.enabled;if((!e||this._segmentLabels?.context?.editGeometryOperations!==e||!t)&&(this._segmentLabels=c(this._segmentLabels)),!this._segmentLabels&&e&&t){let t=this._segmentLabelsImportTask??=n(async e=>{let t=import(`../../2d/interactive/SegmentLabels2D.js`),{SegmentLabels2D:n}=await this._updatingHandles.addPromise(t);return e.aborted?null:n}),r=await this._updatingHandles.addPromise(t.promise);if(!r)return;this._segmentLabels=c(this._segmentLabels),this._segmentLabels=new r({context:{view:this.view,editGeometryOperations:e,elevationInfo:W,labelOptions:this.toolOptions.labels},visible:!0})}}_updateSymbolsForTheme(){let e=this.view.effectiveTheme.accentColor;this.symbols={vertices:{...this.symbols.vertices,default:this.symbols.vertices.default.clone().set(`color`,e),hover:this.symbols.vertices.hover?.clone().set(`color`,e)},controlPoints:{...this.symbols.controlPoints,default:this.symbols.controlPoints.default.clone().set(`color`,e),hover:this.symbols.controlPoints.hover?.clone().set(`color`,e)},midpoints:{...this.symbols.midpoints},constructionLines:this.symbols.constructionLines.clone().set(`color`,e)};for(let e of this.vertexGraphics)e.symbol=this._isSelected(e)?this.symbols.vertices.selected:this._hoverGraphic===e?this.symbols.vertices.hover:this.symbols.vertices.default;for(let e of this.curveControlPointGraphics)e.symbol=this._isSelected(e)?this.symbols.controlPoints.selected:this._hoverGraphic===e?this.symbols.controlPoints.hover:this.symbols.controlPoints.default;for(let e of this.constructionLineGraphics)e.symbol=this.symbols.constructionLines}_storeRelatedVertexIndices(){let e=this.vertexGraphics.items;if(!e)return;let t=e.map(({geometry:e})=>({x:e.x,y:e.y}));for(let n=0;n<t.length;n++){let r=[];for(let e=0;e<t.length;e++){if(n===e)continue;let i=t[n],a=t[e];i.x===a.x&&i.y===a.y&&r.push(e)}e[n].attributes[R.relatedGraphicIndices]=r}}_setupMover(){let{enableMovement:e,graphic:t,midpointGraphics:n,vertexGraphics:r,view:i}=this,a=r.concat(n,this.curveControlPointGraphics).toArray();e&&t.geometry?.type!==`multipoint`&&a.push(t),this._mover=new ue({enableMoveAllGraphics:!1,highlightsEnabled:!1,indicatorsEnabled:!1,graphics:a,view:i,callbacks:{onGraphicClick:e=>this._onGraphicClickCallback(e),onGraphicMoveStart:e=>this._onGraphicMoveStartCallback(e),onGraphicMove:e=>this._onGraphicMoveCallback(e),onGraphicMoveStop:e=>this._onGraphicMoveStopCallback(e),onGraphicPointerOver:e=>this._onGraphicPointerOverCallback(e),onGraphicPointerOut:e=>this._onGraphicPointerOutCallback(e)}})}_setupConnectedReshapeManager(){let{connectedReshapeProviders:e}=this;e!=null&&e.length!==0&&(this._connectedReshapeManager??=new oe({providerFactories:e,view:this.view}))}_onGraphicClickCallback(e){e.viewEvent.stopPropagation();let t=e.graphic,n=this._isCurveControlPoint(t);if(t===this.graphic)this.clearSelection(),this.emit(`graphic-click`,e),this.callbacks.onGraphicClick?.(e);else if(this._isMidpoint(t)){if(e.viewEvent.button===2)return;let n=this.graphic.clone(),r=this._handleMidpointClickOrStartMove(e);this.refresh(),r.length&&this._emitVertexAddEvent([t],n,r)}else if(this._isVertex(t)||n){if(e.viewEvent.stopPropagation(),e.viewEvent.button===2){n||this._removeVertices(t);return}e.viewEvent.native.shiftKey||this._clearSelection(),this.selectedManipulators.includes(t)?this._removeFromSelection(t,!0):this._addToSelection(t)}}_setUpOperation(e){let{graphic:t,dx:n,dy:r}=e,i=t===this.graphic;this._resetSnappingStateVars(),this._setUpGeometryHelper(),this._saveSnappingContextForHandle(t,e),this._activeOperationInfo={target:this.graphic,mover:t,operationType:i?`move`:`reshape`,totalDx:n,totalDy:r}}_onGraphicMoveStartCallback(e){let{dx:t,dy:n,graphic:r}=e,i=this._connectedReshapeManager,a=i?Re(this.graphic):null;if(r===this.graphic){let{geometry:o}=r;this._primaryGraphicMoving=!0,this._setUpOperation(e),this._emitMoveStartEvent(t,n),a&&i?.startFeatureMove([a]),this._effectiveFilterVerticesEnabled&&this._resetGraphics(this.layer),o!=null&&o.type===`point`&&this._onHandleMove(r,t,n,e,()=>{this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(t,n)});return}let{selectedManipulators:o}=this;if(!o.includes(r)){if(this._clearSelection(),this._isMidpoint(r)){let t=this.graphic.clone(),n=this._handleMidpointClickOrStartMove(e);n.length&&(this._emitVertexAddEvent([r],t,n),this._refreshGraphicIndicesAttributes(n[0]))}this._addToSelection(r)}if(this._setUpOperation(e),a){let e=o.filter(e=>this._isVertex(e));i?.startVertexMove(a,ze(e))}this._emitReshapeStartEvent(r),this._onHandleMove(r,t,n,e,()=>{this._updateTooltip(r,e.viewEvent),this._emitReshapeEvent(r)})}_onGraphicMoveCallback(e){let t=this._activeOperationInfo;if(!t)return;let{dx:n,dy:r,graphic:i}=e;t.totalDx+=n,t.totalDy+=r;let{operationType:a}=t,{geometry:o}=i;if(o!=null){if(a===`move`){if(o.type===`point`)this._onHandleMove(i,n,r,e,()=>{this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(n,r)});else if(o.type===`polyline`||o.type===`polygon`){let{dxMap:t,dyMap:i}=se(n,r,this.view);if(!this._effectiveFilterVerticesEnabled){let e=K(o);this._updateVertexGraphicLocations(e)}else if(this.selectedManipulators.length>0){let e=this.selectedManipulators.toArray();this.selectedManipulators.removeAll();for(let t of e){if(t.geometry?.type===`point`){let{pathIndex:e,pointIndex:n}=t.attributes,r=te(o)[e][n];if(r){let e=A(r);t.geometry=this._coordinateHelper.arrayToPoint(e)}}this._addToSelection(t.clone())}}this._connectedReshapeManager?.translate(t,i,0),this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(n,r)}this._syncEditGeometryOperations(o);return}this._onHandleMove(i,n,r,e,()=>{this._updateTooltip(i,e.viewEvent),this._emitReshapeEvent(i)})}}_onGraphicMoveStopCallback(e){let t=this._activeOperationInfo;if(this._primaryGraphicMoving=!1,!t)return;let{dx:n,dy:r,graphic:i,x:a,y:o}=e,{operationType:s}=t;t.totalDx+=n,t.totalDy+=r,this._onHandleMove(i,n,r,e,()=>this._handleVertexSnap(i,{x:a,y:o},s))}_afterMoveStop(e,t){if(this._effectiveFilterVerticesEnabled&&t===`move`){let e=new Set;for(let t of this.selectedManipulators)e.add($(t));this.refresh(e),this._updateTooltip();return}if(this._isMidpoint(e)||e.getAttribute(R.curveFromStraightEdgeFlag)){this.refresh();return}this._updateTooltip(this._isVertex(e)?e:null),this._resetSnappingStateVars(),this._connectedReshapeManager?.finish(),this._activeOperationInfo=null}_handleVertexSnap(e,t,r){let i=e.geometry,a=this.snappingManager?.getVertexCandidates(),o=this.callbacks.onVertexSnap,s=()=>r===`move`?this._emitMoveStopEvent():this._emitReshapeStopEvent(e);if(!o||!i||!D(i)||!a||a.length===0){s(),this._afterMoveStop(e,r);return}l(this._snappingTask),this._snappingTask=n(async n=>{try{let r=await o(i,t,a);d(n);let s=E(r);this._coordinateHelper.hasZ()||(s.z=void 0),this._syncGeometryAfterVertexMove(e,s,0,0),e.geometry=s}finally{s(),this._afterMoveStop(e,r)}})}_updateVertexGraphicLocations(e){let{_coordinateHelper:t}=this;for(let n of this.vertexGraphics){let{pathIndex:r,pointIndex:i}=n.attributes;n.geometry=t.arrayToPoint(A(e[r][i]))}this._updateMidpointGraphicLocations(e),this._updateCurveGraphicLocations(e)}_updateMidpointGraphicLocations(e,t){let{_coordinateHelper:n}=this;if(t)for(let r of this.midpointGraphics){let{pathIndex:i,pointIndexStart:a,pointIndexEnd:o}=r.attributes;if(!t.has(i))continue;let s=t.get(i);if(!s.has(a)&&!s.has(o))continue;let c=e[i];r.geometry=new b(z(c[a],c[o],n))}else for(let t of this.midpointGraphics){let{pathIndex:r,pointIndexStart:i,pointIndexEnd:a}=t.attributes,o=e[r];t.geometry=new b(z(o[i],o[a],n))}}_updateCurveGraphicLocations(e){let{spatialReference:t}=this._coordinateHelper,n=new Map;for(let e of this.selectedManipulators){let[t,r]=Q(e);t!=null&&r!=null&&e.getAttribute(R.controlPointKind)&&s(n,t,()=>new Set)?.add(r)}for(let t of this.curveControlPointGraphics){let[r,i]=Q(t);if(n.get(r)?.has(i))continue;let a=e[r][i];if(j(a)||M(a)){let n=A(e[r][i-1]),o=j(a)?k(n,a):I(n,a),[s,c]=O(o,.25);t.geometry=new b({x:s,y:c,spatialReference:this._coordinateHelper.spatialReference})}else if(N(a)){let[e,n]=t.getAttribute(R.controlPointKind)===B.bezier.cp1?a.b[1]:a.b[2];t.geometry=new b({x:e,y:n,spatialReference:this._coordinateHelper.spatialReference})}}for(let n of this.constructionLineGraphics){let r=n.getAttribute(R.controlPointKind),[i,a]=Q(n),o=e[i],s=A(o[a-1]),c=A(o[a]),l=e[i][a];n.geometry=r===B.bezier.line1?new x({paths:[[[s[0],s[1]],[...l.b[1]]]],spatialReference:t}):new x({paths:[[[c[0],c[1]],[...l.b[2]]]],spatialReference:t})}}_refreshGraphicIndicesAttributes(e){let{componentIndex:t,vertexIndex:n}=e,r=e=>{let[r,i]=Q(e);r===t&&i>=n&&e.setAttribute(R.pointIndex,i+1)};this.vertexGraphics.forEach(r),this.curveControlPointGraphics.forEach(r),this.constructionLineGraphics.forEach(r);for(let e of this.midpointGraphics){if(e.getAttribute(R.pathIndex)!==t)continue;let r=e.getAttribute(R.pointIndexStart);r>=n&&(e.setAttribute(R.pointIndexStart,r+1),e.setAttribute(R.pointIndexEnd,e.getAttribute(R.pointIndexEnd)+1))}}_getVertexFromEditGeometry(e){let[t,n]=Q(e);return u(this._editGeometryOperations),this._editGeometryOperations.data.parts[t].vertices[n]}_onHandleMove(e,t,r,i,a){l(this._snappingTask);let o=this._snappingContext;if(!o)return;let s=e.geometry,c=i.type===`graphic-move-stop`;if(!s||!D(s)){a();return}if(this.snappingManager!=null&&this.selectedManipulators.length<2&&!c){let i=this.snappingManager;this._stagedVertex=i.update({point:s,context:o}),this._syncGeometryAfterVertexMove(e,new b(this._stagedVertex),t,r,c),a(),this._snappingTask=n(async n=>{let l=await i.snap({point:s,context:o,signal:n});if(l.valid){let n=l.apply();n.z=this._coordinateHelper.hasZ()?ce(this.snappingManager)??n.z:void 0,this._stagedVertex=n,this._syncGeometryAfterVertexMove(e,new b(this._stagedVertex),t,r,c),a()}}),this._updatingHandles.consumePromise(this._snappingTask.promise)}else{let n=this._stagedVertex==null?s:new b(this._stagedVertex);this._syncGeometryAfterVertexMove(e,n,t,r,c),a()}}_syncGeometryAfterVertexMove(e,t,n,r,i=!1){let a=V(this._editGeometryOperations?.data.geometry);if(!a)return;let{_coordinateHelper:o}=this,s=o.pointToVector(t),c=this._getVertexFromEditGeometry(e),l=null;if(c){let e=o.getZ(s);l=[c.pos[0],c.pos[1]];let t=s[0]-c.pos[0],n=s[1]-c.pos[1],r=e==null?0:e-c.pos[2];(a.type===`point`||a.type===`mesh`)&&this._editGeometryOperations?.moveVertices([c],t,n,r),this._connectedReshapeManager?.translate(t,n,r)}if(a.type===`point`)e.geometry=t;else if(a.type===`mesh`)e.geometry=a.centerAt(t);else{if(e!==this.graphic){l&&!this._isVertex(e)&&(l=null);let i=o.spatialReference,[s,c]=Q(e),u=q(a),d=o.pointToArray(t);if(this._updateGeometryFromGraphic(e,u,s,c,d,i,a.type===`polygon`),this._isVertex(e)||this._isCurveControlPoint(e)){let t=new Map;t.set(s,new Set([c])),u=this._moveRelatedCoordinates(u,e,d,t,l),u=this._moveSelectedHandleCoordinates(u,e,n,r,a.type===`polygon`),this._updateMidpointGraphicLocations(u,t),this._updateCurveGraphicLocations(u)}else this._isMidpoint(e)&&this._updateCurveGraphicLocations(u);H(a,u)}this._updateGraphicGeometry(a),this._syncEditGeometryOperations(a),i&&(this._mover?this._mover.updateGeometry(this._mover.graphics.indexOf(e),t):e.geometry=t)}}_syncEditGeometryOperations(e){this._editGeometryOperations?.trySetGeometry(e)||(this._editGeometryOperations=null,this._setUpGeometryHelper())}_moveRelatedCoordinates(e,t,n,r,i){if(this._effectiveFilterVerticesEnabled&&this._relatedGraphicIndex&&i){let a=this._relatedGraphicIndex.search({minX:i[0],maxX:i[0],minY:i[1],maxY:i[1]});for(let o of a)o.coordinate[0]===i[0]&&o.coordinate[1]===i[1]&&o.graphic&&(r&&s(r,o.pathIndex,()=>new Set).add(o.pointIndex),Z(e,o.pathIndex,o.pointIndex,n,this._coordinateHelper.spatialReference),this._relatedGraphicIndex.remove(o),o.coordinate[0]=t.geometry.x,o.coordinate[1]=t.geometry.y,o.graphic.geometry=t.geometry,this._relatedGraphicIndex.insert(o));return e}let{relatedGraphicIndices:a}=t.attributes,o=this._coordinateHelper.spatialReference;if(!a?.length)return e;for(let i of a){let a=this.vertexGraphics.at(i),[c,l]=Q(a);r&&s(r,c,()=>new Set).add(l),Z(e,c,l,n,o),a.geometry=t.geometry}return e}_moveSelectedHandleCoordinates(e,t,n,r,i){let a=this._coordinateHelper.spatialReference;for(let o of this.selectedManipulators)if(o!==t){let[t,s]=Q(o),c=o.getAttribute(R.relatedGraphicIndices),l=le(o.geometry,n,r,this.view),u=T(l);if(o.geometry=l,this._updateGeometryFromGraphic(o,e,t,s,u,a,i),c?.length)for(let t of c){let n=this.vertexGraphics.at(t),[r,i]=Q(n);Z(e,r,i,u,a),n.geometry=l}}return e}_updateGeometryFromGraphic(e,t,n,r,i,a,o){let s=t[n].length-1;this._isCurveControlPoint(e)?Ie(t,n,r,[i[0],i[1]],e.getAttribute(R.controlPointKind)):(Z(t,n,r,i,a),o&&(r===0?Z(t,n,s,i,a):r===s&&(t[n][0]=i)))}_onGraphicPointerOverCallback(e){let t=e.graphic;this._hoverGraphic=t;let n=this._isVertex(t);n&&!this._isSelected(t)?t.symbol=this.symbols.vertices.hover:this._isCurveControlPoint(t)&&!this._isSelected(t)&&(t.symbol=this.symbols.controlPoints.hover),this._updateTooltip(n?t:null),this._updateHoverCursor(t)}_onGraphicPointerOutCallback(e){let t=e.graphic;this._hoverGraphic=null,this._isVertex(t)&&!this._isSelected(t)&&(t.symbol=this.symbols.vertices.default),this._isCurveControlPoint(t)&&!this._isSelected(t)&&(t.symbol=this.symbols.controlPoints.default),this.removeHandles(U),this._updateTooltip()}_handleMidpointClickOrStartMove(e){let{graphic:t}=e,n=this.graphic.geometry;if(n==null||n.type!==`polygon`&&n.type!==`polyline`)return[];let r=V(n),i=[],{[R.pathIndex]:a,[R.pointIndexStart]:o,[R.pointIndexEnd]:s}=t.attributes,c=T(t.geometry),l=s===0?o+1:s;t.attributes={[R.tool]:Se,[R.pathIndex]:a,[R.pointIndex]:l,[R.relatedGraphicIndices]:[]};let u=q(r),d=u[a][s];if(P(d)){if(this.enableCurveOnMidpoint&&e.viewEvent.native.shiftKey){let e=A(u[a][l]);u[a].splice(l,1,{c:[e,[c[0],c[1]]]}),t.setAttribute(R.controlPointKind,B.circle.interior),t.setAttribute(R.curveFromStraightEdgeFlag,!0),this.midpointGraphics.remove(t),this.curveControlPointGraphics.push(t),H(r,u)}else u[a].splice(l,0,c),i.push({coordinates:u[a][l],componentIndex:a,vertexIndex:l})}else{let e=A(u[a][o]),t=Ce(e,d,.5,this._coordinateHelper);u[a].splice(s,1,...t),i.push({coordinates:A(u[a][l]),componentIndex:a,vertexIndex:l})}return this._updateGraphicGeometry(r),this._syncEditGeometryOperations(r),i}_addToSelection(e){let t=Le(e);for(let e of t)e.symbol=this._isCurveControlPoint(e)?this.symbols.controlPoints.selected:this.symbols.vertices.selected,this.selectedManipulators.add(e),this._updateTooltip(e);this._emitSelectEvent(t)}_removeFromSelection(e,t){if(this._isVertex(e)){let{vertices:n}=this.symbols;e.symbol=t?n.hover:n.default}else if(this._isCurveControlPoint(e)){let{controlPoints:n}=this.symbols;e.symbol=t?n.hover:n.default}this.selectedManipulators.remove(e),this._emitDeselectEvent([e]),this._updateTooltip()}_clearSelection(){let e=this.selectedManipulators.toArray(),{controlPoints:t,vertices:n}=this.symbols;if(e.length>0){for(let r of e)this._isVertex(r)?r.symbol=n.default:this._isCurveControlPoint(r)&&(r.symbol=t.default);this.selectedManipulators.removeAll(),this._emitDeselectEvent(e),this._updateTooltip()}}_keyDownHandler(e){this._activeOperationInfo==null&&Ne(e,this.tooltip)||Oe.delete.includes(e.key)&&!e.repeat&&this.selectedManipulators.length&&(this._removeVertices(this.selectedManipulators),e.stopPropagation())}_removeVertices(e){let t=this.graphic.geometry,n=this.vertexGraphics.length;if(t==null||t.type!==`polygon`&&t.type!==`polyline`&&t.type!==`multipoint`||t.type===`polygon`&&n<4||t.type===`multipoint`&&n<2||t.type===`polyline`&&n<3)return;let r=this.graphic.clone(),i=V(t),a=q(i),o=[],s=Le(e);for(let e of s){if(this._isCurveControlPoint(e))continue;let{x:t,y:n}=e.geometry;for(let e=0;e<a.length;e++){let r=a[e];for(let i=0;i<r.length;i++){let[s,c]=A(r[i]);if(t===s&&n===c){o.push({coordinates:A(a[e][i]),componentIndex:e,vertexIndex:i}),a[e].splice(Number(i),1);let t=a[e][i];t&&!P(t)&&(a[e][i]=A(t))}}}}if(i.type===`polygon`)a=a.filter(e=>{if(e.length<2)return!1;let[t,n]=A(e[0]),[r,i]=A(e[e.length-1]);return e.length===2&&t===r&&n===i?!1:((t!==r||n!==i)&&e.push(e[0]),!0)});else if(i.type===`polyline`)for(let e of a)e.length===1&&a.splice(a.indexOf(e),1);H(i,a),this._updateGraphicGeometry(i),this.refresh(),this._emitVertexRemoveEvent(s,r,o)}_isVertex(e){return this.vertexGraphics.includes(e)}_isCurveControlPoint(e){return this.curveControlPointGraphics.includes(e)}_isConstructionLine(e){return this.constructionLineGraphics.includes(e)}_isSelected(e){return(this._isVertex(e)||this.curveControlPointGraphics.includes(e))&&this.selectedManipulators.includes(e)}_isMidpoint(e){return this.midpointGraphics.includes(e)}_updateHoverCursor(e){let t=this._isMidpoint(e)?`copy`:`move`;this.addHandles(this.view.acquireCursor(t,`high`),U)}_updateTooltip(e,t){let n=null,{graphic:r,view:i,tooltipInfos:a}=this,o=r?.geometry;o?.type===`point`?n=a.movePoint:this._selectedManipulator?n=a.selectedVertex:e===this.graphic?(n=a.translateGraphic,ge(n,i,this._tooltipsContext,this._updatingHandles,t)):e&&this.selectedManipulators.length>1&&(n=a.translateVertices,_e(n,i,o,this._tooltipsContext,this._updatingHandles,t)),this.activeTooltipInfo=n}_updateGraphicGeometry(e){this._updateHandlesOnExternalGeometryChange?.pause(),this.graphic.geometry=e,this._updateHandlesOnExternalGeometryChange?.resume()}_emitMoveStartEvent(e,t){let n={type:`move-start`,mover:this.graphic,dx:e,dy:t};this.emit(`move-start`,n),this.callbacks.onMoveStart?.(n)}_emitMoveEvent(e,t){let n={type:`move`,mover:this.graphic,dx:e,dy:t};this.emit(`move`,n),this.callbacks.onMove?.(n)}_emitMoveStopEvent(e,t){if(e==null||t==null){let n=this._activeOperationInfo;if(!n)return;e=n.totalDx,t=n.totalDy}let n={type:`move-stop`,mover:this.graphic,dx:e,dy:t};this.emit(`move-stop`,n),this.callbacks.onMoveStop?.(n)}_emitReshapeStartEvent(e){let t={type:`reshape-start`,graphic:this.graphic,mover:e,selected:this.selectedManipulators.toArray()};this.emit(`reshape-start`,t),this.callbacks.onReshapeStart?.(t)}_emitReshapeEvent(e){let t={type:`reshape`,graphic:this.graphic,mover:e,selected:this.selectedManipulators.toArray()};this.emit(`reshape`,t),this.callbacks.onReshape?.(t)}_emitReshapeStopEvent(e){let t={type:`reshape-stop`,graphic:this.graphic,mover:e,selected:this.selectedManipulators.toArray()};this.emit(`reshape-stop`,t),this.callbacks.onReshapeStop?.(t)}_emitSelectEvent(e){let t={type:`vertex-select`,added:e};this.emit(`select`,t),this.callbacks.onVertexSelect?.(t)}_emitDeselectEvent(e){let t={type:`vertex-deselect`,removed:e};this.emit(`deselect`,t),this.callbacks.onVertexDeselect?.(t)}_emitVertexAddEvent(e,t,n){let r={type:`vertex-add`,added:e,graphic:this.graphic,oldGraphic:t,vertices:n};this.emit(`vertex-add`,r),this.callbacks.onVertexAdd?.(r)}_emitVertexRemoveEvent(e,t,n){let r={type:`vertex-remove`,removed:e,graphic:this.graphic,oldGraphic:t,vertices:n};this.emit(`vertex-remove`,r),this.callbacks.onVertexRemove?.(r)}_logGeometryTypeError(){o.getLogger(this).error(new i(`reshape:invalid-geometry`,`Reshape operation not supported for the provided graphic. The geometry type is not supported.`))}};e([_()],G.prototype,`_activeOperationInfo`,void 0),e([_()],G.prototype,`_connectedReshapeManager`,void 0),e([_()],G.prototype,`_coordinateHelper`,null),e([_()],G.prototype,`_editGeometryOperations`,void 0),e([_()],G.prototype,`_effectiveFilterVerticesEnabled`,null),e([_()],G.prototype,`_primaryGraphicMoving`,void 0),e([_()],G.prototype,`_segmentLabels`,void 0),e([_()],G.prototype,`test`,null),e([_()],G.prototype,`_segmentLabelsImportTask`,void 0),e([_()],G.prototype,`_updatingHandles`,void 0),e([_()],G.prototype,`_selectedManipulator`,null),e([_()],G.prototype,`_tooltipsContext`,null),e([_()],G.prototype,`callbacks`,void 0),e([_()],G.prototype,`connectedReshapeProviders`,void 0),e([_()],G.prototype,`enableMidpoints`,void 0),e([_()],G.prototype,`enableCurveOnMidpoint`,void 0),e([_()],G.prototype,`enableMovement`,void 0),e([_()],G.prototype,`enableVertices`,void 0),e([_()],G.prototype,`filterVerticesEnabled`,void 0),e([_()],G.prototype,`graphic`,void 0),e([_()],G.prototype,`highlightName`,void 0),e([_()],G.prototype,`highlightsEnabled`,void 0),e([_()],G.prototype,`layer`,void 0),e([_()],G.prototype,`snappingManager`,void 0),e([_({readOnly:!0})],G.prototype,`state`,null),e([_()],G.prototype,`symbols`,void 0),e([_()],G.prototype,`tooltip`,void 0),e([_()],G.prototype,`tooltipInfos`,void 0),e([_()],G.prototype,`activeTooltipInfo`,void 0),e([_()],G.prototype,`updating`,null),e([_()],G.prototype,`toolOptions`,void 0),e([_({readOnly:!0})],G.prototype,`type`,void 0),e([_({readOnly:!0})],G.prototype,`vertexGraphics`,void 0),e([_({readOnly:!0})],G.prototype,`curveControlPointGraphics`,void 0),e([_({readOnly:!0})],G.prototype,`constructionLineGraphics`,void 0),e([_({readOnly:!0})],G.prototype,`midpointGraphics`,void 0),e([_({readOnly:!0})],G.prototype,`selectedManipulators`,void 0),e([_()],G.prototype,`view`,void 0),G=e([v(`esri.views.draw.support.Reshape`)],G);function K(e){let t=q(e);t=t.map(e=>e.slice());for(let e of t)for(let t=0;t<e.length;t++)e[t]=ne(e[t]);if(e.type===`polygon`)for(let e of t){let t=e[e.length-1];if(!P(t))continue;let n=e[0];n[0]===t[0]&&n[1]===t[1]&&e.length>2&&e.pop()}return t}function q(e){return e.type===`polygon`?e.curveRings?.slice()??e.rings.slice():e.type===`polyline`?e.curvePaths?.slice()??e.paths.slice():e.points.map(e=>[e])}function Fe(e,t,n,r){let i=e[t][n];if(j(i))i.c[1]=r;else if(M(i)){let i=A(e[t][n]);e[t][n]={c:[i,r]}}}function Ie(e,t,n,r,i){switch(i){case B.circle.interior:Fe(e,t,n,r);break;case B.bezier.cp1:e[t][n].b[1]=r;break;case B.bezier.cp2:e[t][n].b[2]=r}}function J(e,t){return e<t*1e-8}function Y(e,{cx:t,cy:n,isInvalid:r,thetaStart:i,thetaEnd:a},o,s){let[c,l]=e,[u,d]=o,f=u-c,p=d-l;t-=c,n-=l;let m=s?i>a:i<a,[h,g]=r?[t,n]:m?[-n,t]:[n,-t],[_,v]=[f,p],[y,b]=[h,g],x=_*b-v*y,S=(f**2+p**2)/2;if(J(Math.abs(x),S))return[(c+u)/2,(l+d)/2];let[C,w]=[b/x*S,-y/x*S],T=C**2+w**2,[E,D]=[f/2-C,p/2-w];if(J(E**2+D**2,T)){let[e,t]=m?[-w,C]:[w,-C];return[e+C+c,t+w+l]}let O=Math.sqrt((C**2+w**2)/(E**2+D**2))*Math.sign(f*h+p*g);return[E*O+C+c,D*O+w+l]}function X(e,t,n){let r=S(new x({curvePaths:[[e,t]],spatialReference:n})),{curvePaths:i}=C(r,n),a=i[0][1];return F(a)?a:ee(e,a)}function Z(e,t,n,r,i){let a=e[t][n],o=e[t].at(n+1);if(we(e,t)){let n=e[t][1];e[t][0]=[...r],e[t][1]={a:[[...r],[...n.a[1]],0,0]};return}if(Te(e,t)){let n=e[t][1],[i,a]=n.a[1],[o,s]=r,c=Math.hypot(o-i,s-a),[l,u]=[o-i,s-a],d=re(u,l);e[t][0]=[...r],e[t][1]={a:[[...r],[...n.a[1]],0,0,d,c,n.a[6]]};return}let s=A(a);if(P(a))a.splice(0,a.length,...r);else if(N(a))a.b[0].splice(0,a.b[0].length,...r);else if(j(a)||M(a)){let i=A(e[t][n-1]),o=j(a)?k(i,a):I(i,a);e[t].splice(n,1,{c:[[...r],Y(i,o,r,!0)]})}else F(a)&&(a.a[0].splice(0,a.a[0].length,...r),a.a=X(A(e[t][n-1]),a,i).a);if(o&&!P(o)&&!N(a)){if(j(o)||M(o)){let i=A(o),a=j(o)?k(s,o):I(s,o);e[t].splice(n+1,1,{c:[i,Y(i,a,r,!1)]})}else F(o)&&(o.a=X(A(a),o,i).a)}}function Q({attributes:e}){return[e?.[R.pathIndex]||0,e?.[R.pointIndex]||0]}function $({attributes:e}){return`${e?.[R.pathIndex]}-${e?.[R.pointIndex]}-${e?.[R.controlPointKind]??`vertex`}`}function Le(e){return e instanceof t?[e]:[...e]}function Re(e){let t=e.sourceLayer??e.layer;return pe(t)?{graphic:e,layer:t}:null}function ze(e){return e.toArray().map(({attributes:e})=>({pathIndex:e[R.pathIndex],vertexIndex:e[R.pointIndex]}))}const Be=G;export{Be as default};
2
+ import{__decorate as e}from"tslib";import t from"../../../Graphic.js";import{createTask as n}from"../../../core/asyncUtils.js";import r from"../../../core/Collection.js";import i from"../../../core/Error.js";import{EventedAccessor as a}from"../../../core/Evented.js";import o from"../../../core/Logger.js";import{getOrCreateMapValue as s}from"../../../core/MapUtils.js";import{destroyMaybe as c,abortMaybe as l,assertIsSome as u}from"../../../core/maybe.js";import{throwIfAborted as d}from"../../../core/promiseUtils.js";import{pausable as f,when as p,watch as m,initial as h,sync as g}from"../../../core/reactiveUtils.js";import{property as _,subclass as v}from"../../../core/accessorSupport/decorators.js";import{UpdatingHandles as y}from"../../../core/support/UpdatingHandles.js";import b from"../../../geometry/Point.js";import x from"../../../geometry/Polyline.js";import{closeRingsAndFixWinding as S,geometryToCoordinates as C}from"../../../geometry/support/coordsUtils.js";import{fromJSON as w}from"../../../geometry/support/jsonUtils.js";import{isPoint as T}from"../../../geometry/support/typeUtils.js";import{interpolateCircle as E}from"../../../geometry/support/curves/circleUtils.js";import{deriveCircleFromCircularArc as D}from"../../../geometry/support/curves/circularArcUtils.js";import{getPaths as O,getEndpoint as k,isCircularArc as A,isEllipticArc4 as j,isBezierCurve as M,isCoordinate as N,cloneCurve as ee,isEllipticArc7 as P}from"../../../geometry/support/curves/curveUtils.js";import{deriveCircleFromEllipticArc4 as F}from"../../../geometry/support/curves/ellipticArc4Utils.js";import{normalizeEllipticArcAfterEndpointChange as I}from"../../../geometry/support/curves/ellipticArc7Utils.js";import{wrapAtan2 as te}from"../../../geometry/support/curves/mathUtils.js";import ne from"../../../layers/GraphicsLayer.js";import{SnappingVisualizer2D as re}from"../../2d/interactive/SnappingVisualizer2D.js";import{ConnectedReshapeManager as ie}from"./ConnectedReshapeManager.js";import{screenDeltaToMapDelta as ae,getZFromVertexSnappingCandidates as oe,cloneMove as se}from"./drawUtils.js";import ce from"./GraphicMover.js";import le from"./HighlightHelper.js";import{addUniqueLayer as ue,isConnectedReshapeSupportedLayer as de}from"./layerUtils.js";import{createTooltipInfos as fe,connectTooltip as pe,updateTranslateTooltipInfo as me,updateTranslateVertexTooltipInfo as he}from"./reshapeTooltipUtils.js";import{defaultSymbols as ge,createMidpointGraphics as _e,createVertexGraphics as L,createCurveControlPointGraphics as ve,createCurveConstructionLineGraphics as ye,attributeKeys as R,getMidpoint as z,controlPointKinds as B,fastCloneGeometry as V,saveUpdatedCurveOrCoordinate as H,toolIdAttribute as be,splitCurve as xe,isSingleSegmentCircle as Se,isSingleSegmentEllipse as Ce}from"./reshapeUtils.js";import{ViewEventPriorities as we}from"../../input/InputManager.js";import{createCoordinateHelper as Te}from"../../interactive/coordinateHelper.js";import{sketchKeys as Ee}from"../../interactive/keybindings.js";import{EditGeometryOperations as De}from"../../interactive/editGeometry/EditGeometryOperations.js";import Oe from"../../interactive/options/InteractiveToolOptions.js";import{SnappingContext as ke}from"../../interactive/snapping/SnappingContext.js";import{makeTooltip as Ae,enterInputModeIfAvailable as je}from"../../interactive/tooltip/tooltipCommonUtils.js";import{GeometryWorkerHandle as Me}from"../../support/GeometryWorkerHandle.js";const U=Symbol(),W={mode:`on-the-ground`,offset:0};let G=class extends a{constructor(e){super(e),this._updateHandlesOnExternalGeometryChange=null,this._activeOperationInfo=null,this._connectedReshapeManager=null,this._editGeometryOperations=null,this._primaryGraphicMoving=!1,this._segmentLabels=null,this._segmentLabelsImportTask=null,this._mover=null,this._snappingContext=null,this._snappingGraphicsLayer=null,this._hoverGraphic=null,this._snappingTask=null,this._stagedVertex=null,this._relatedGraphicIndex=null,this._updatingHandles=new y,this._measurementWorker=new Me({preloadGeodetic:!0}),this.callbacks={onReshapeStart(){},onReshape(){},onReshapeStop(){},onMoveStart(){},onMove(){},onMoveStop(){},onGraphicClick(){}},this.connectedReshapeProviders=null,this.enableMidpoints=!0,this.enableCurveOnMidpoint=!1,this.enableMovement=!0,this.enableVertices=!0,this.filterVerticesEnabled=!0,this.graphic=null,this.highlightName=null,this.highlightsEnabled=!0,this.layer=null,this.snappingManager=null,this.symbols=ge,this.tooltip=null,this.activeTooltipInfo=null,this.toolOptions=new Oe,this.type=`reshape`,this.vertexGraphics=new r,this.curveControlPointGraphics=new r,this.constructionLineGraphics=new r,this.midpointGraphics=new r,this.selectedManipulators=new r,this.view=null}initialize(){let e=this.view;this._highlightHelper=new le({view:e}),this._setup(),this._updateHandlesOnExternalGeometryChange=f(()=>this.graphic?.geometry,e=>{if(!e||this._primaryGraphicMoving===!0)return;let t=new Set(this.selectedManipulators.map(Q));this._highlightHelper.removeAll(),this._setUpHighlights(),this._setupGraphics(),this._clearSelection(),this.vertexGraphics.filter(e=>t.has(Q(e))).forEach(e=>this._addToSelection(e)),this.curveControlPointGraphics.filter(e=>t.has(Q(e))).forEach(e=>this._addToSelection(e));let{enableMovement:n,_mover:r,graphic:i,midpointGraphics:a,vertexGraphics:o,curveControlPointGraphics:s}=this,c=o.concat(a,s).toArray();n&&c.push(i),r?.set(`graphics`,c)},g),this.tooltip=Ae(()=>({view:e,options:this.toolOptions.tooltips})),this.tooltipInfos=fe(this.toolOptions),this.addHandles([p(()=>e?.ready,()=>{let{layer:e,view:t}=this;ue(t,e),this.addHandles(t.on(`key-down`,e=>this._keyDownHandler(e),we.TOOL))},{once:!0,initial:!0}),m(()=>this.graphic,()=>this.refresh()),...this._effectiveFilterVerticesEnabled?[m(()=>[this.view.viewpoint,this.view.stationary],()=>{this.view.stationary&&this.refresh()})]:[],m(()=>this.layer,(e,t)=>{t&&(this._clearSelection(),this._resetGraphics(t)),this.refresh()}),m(()=>[this.highlightsEnabled,this.highlightName],()=>{this._highlightHelper?.removeAll(),this._setUpHighlights()}),m(()=>this.enableMidpoints,()=>this.refresh()),pe(this.tooltip,()=>this._tooltipsContext,this._updatingHandles),m(()=>this.toolOptions.labels.enabled,e=>{this._segmentLabels?this._segmentLabels.visible=e:this._setUpGeometryHelper()}),m(()=>this.view.effectiveTheme.accentColor,()=>this._updateSymbolsForTheme(),h),this._updateHandlesOnExternalGeometryChange]),this._updateTooltip()}destroy(){this._reset(),this._mover=c(this._mover),this._connectedReshapeManager=c(this._connectedReshapeManager),this.tooltip=c(this.tooltip),this._segmentLabelsImportTask=l(this._segmentLabelsImportTask),this._segmentLabels=c(this._segmentLabels),this._updatingHandles=c(this._updatingHandles),this._measurementWorker.destroy()}get _coordinateHelper(){return this._editGeometryOperations?.data.coordinateHelper??Te(!!this.graphic.geometry?.hasZ,!!this.graphic.geometry?.hasM,this.view.spatialReference)}get _effectiveFilterVerticesEnabled(){return this.view?.type===`2d`&&this.filterVerticesEnabled}get test(){return{segmentLabels:this._segmentLabels}}get _selectedManipulator(){return this.selectedManipulators.length===1?this.selectedManipulators.at(0):void 0}get _tooltipsContext(){let{toolOptions:e,activeTooltipInfo:t,graphic:n}=this;return{toolOptions:e,activeTooltipInfo:t,graphic:n,selectedVertex:this._selectedManipulator,measurementWorker:this._measurementWorker,updateGeometry:(e,t,n,r,i)=>{this._setUpGeometryHelper();let a=e===this.graphic;if(a?this._emitMoveStartEvent(0,0):this._emitReshapeStartEvent(e),this._syncGeometryAfterVertexMove(e,t,r,i,!0),a){let{view:e}=this,r=e.toScreen(n),i=e.toScreen(t),a=(i?.x??0)-(r?.x??0),o=(i?.y??0)-(r?.y??0);this._emitMoveEvent(a,o),this._emitMoveStopEvent(a,o)}else this._emitReshapeEvent(e),this._emitReshapeStopEvent(e)}}}get state(){let e=this.view.ready,t=!!(this.graphic&&this.layer);return e&&t?`active`:e?`ready`:`disabled`}get updating(){return!!this._updatingHandles?.updating||!!this._connectedReshapeManager?.updating||!!this._segmentLabels?.updating||!!this.snappingManager?.updating}isUIGraphic(e){return e===this.graphic||this._isMidpoint(e)||this._isCurveControlPoint(e)||this._isVertex(e)||this._isConstructionLine(e)}refresh(e){if(this._reset(),this._setup(),e){for(let t of this.vertexGraphics)e.has(Q(t))&&this._addToSelection(t);for(let t of this.curveControlPointGraphics)e.has(Q(t))&&this._addToSelection(t)}}reset(){this.graphic=null}clearSelection(){this._clearSelection()}removeSelectedVertices(){let{selectedManipulators:e}=this;e.length&&this._removeVertices(e)}_setup(){let{graphic:e,layer:t}=this;if(!t||e?.geometry==null)return;let n=e.geometry;if(n.type===`mesh`||n.type===`extent`){this._logGeometryTypeError();return}n.type===`polygon`&&S(n),this._setUpHighlights(),this._setupGraphics(),this._setupMover(),this._setupConnectedReshapeManager(),this._setUpGeometryHelper()}_setUpHighlights(){this.highlightsEnabled&&this.graphic&&this._highlightHelper?.add(this.graphic,this.highlightName)}_setUpGeometryHelper(){let e=this.graphic.geometry;if(e==null||e.type===`mesh`||e.type===`extent`){this._segmentLabels=c(this._segmentLabels),this._logGeometryTypeError();return}this._editGeometryOperations?this._syncEditGeometryOperations(e):this._editGeometryOperations=De.fromGeometry(e,2,{allowCurves:!0}),this._updatingHandles.consumePromise(this._setupSegmentLabels())}_saveSnappingContextForHandle(e,t){this._snappingGraphicsLayer=new ne({listMode:`hide`,internal:!0,title:`Reshape snapping layer`}),this.view.map.layers.add(this._snappingGraphicsLayer);let n=this._editGeometryOperations;u(n),this._snappingContext=new ke({editGeometryOperations:n,elevationInfo:W,pointer:t.viewEvent?.pointerType||`mouse`,excludeFeature:this.graphic,feature:this.graphic,visualizer:new re(this._snappingGraphicsLayer),vertexHandle:this._getVertexFromEditGeometry(e)})}_reset(){this._clearSelection(),this._highlightHelper?.removeAll(),this._updateTooltip(),this._resetGraphics(),this._resetSnappingStateVars(),this._segmentLabelsImportTask=l(this._segmentLabelsImportTask),this._segmentLabels=c(this._segmentLabels),this._activeOperationInfo=null,this._mover=c(this._mover),this.removeHandles(U),this._connectedReshapeManager?.finish()}_resetSnappingStateVars(){this.snappingManager!=null&&this.snappingManager.doneSnapping(),this._snappingGraphicsLayer!=null&&(this.view.map?.layers.remove(this._snappingGraphicsLayer),c(this._snappingGraphicsLayer)),this._snappingTask=l(this._snappingTask),this._snappingTask=null,this._snappingContext=null,this._stagedVertex=null}_resetGraphics(e){this._removeMidpointGraphics(e),this._removeVertexGraphics(e),this._removeCurveGraphics(e),this._updateTooltip()}_removeMidpointGraphics(e=this.layer){let{midpointGraphics:t}=this;e?.removeMany(t.items),t.drain(c)}_removeVertexGraphics(e=this.layer){let{vertexGraphics:t}=this;this._relatedGraphicIndex=null,e?.removeMany(t.items),t.drain(c)}_removeCurveGraphics(e=this.layer){let{curveControlPointGraphics:t,constructionLineGraphics:n}=this;e?.removeMany(t.items),e?.removeMany(n.items),t.drain(c),n.drain(c)}_setupGraphics(){let e=this.graphic.geometry;if(e!=null&&(e.type===`polyline`||e.type===`polygon`||e.type===`multipoint`)){let t=K(e);this.enableMidpoints&&e.type!==`multipoint`&&this._setUpMidpointGraphics(t),this.enableVertices&&(this._setUpVertexGraphics(t),this._setupCurveGraphics(t))}}_setUpMidpointGraphics(e){this._removeMidpointGraphics();let t=_e(e,this.symbols,this._coordinateHelper,this.graphic.geometry?.type===`polygon`,this.filterVerticesEnabled?this.view.extent:null,this.filterVerticesEnabled?this.view.resolution:-1);this.midpointGraphics.addMany(t),this.layer.addMany(t)}_setUpVertexGraphics(e){if(this._removeVertexGraphics(),this._effectiveFilterVerticesEnabled){let t=L(e,this.symbols,this._coordinateHelper,this.view.extent,this.view.resolution);this._relatedGraphicIndex=t.graphicIndex,this.vertexGraphics.addMany(t.graphics),this.layer.addMany(t.graphics)}else{let t=L(e,this.symbols,this._coordinateHelper,null,-1).graphics;this.vertexGraphics.addMany(t),this._storeRelatedVertexIndices(),this.layer.addMany(t)}}_setupCurveGraphics(e){this._removeCurveGraphics();let t=ve(e,this.symbols,this._coordinateHelper),n=ye(e,this.symbols,this._coordinateHelper);this.curveControlPointGraphics.addMany(t),this.constructionLineGraphics.addMany(n),this.layer.addMany(n),this.layer.addMany(t)}async _setupSegmentLabels(){let e=this._editGeometryOperations,t=this.toolOptions.labels.enabled;if((!e||this._segmentLabels?.context?.editGeometryOperations!==e||!t)&&(this._segmentLabels=c(this._segmentLabels)),!this._segmentLabels&&e&&t){let t=this._segmentLabelsImportTask??=n(async e=>{let t=import(`../../2d/interactive/SegmentLabels2D.js`),{SegmentLabels2D:n}=await this._updatingHandles.addPromise(t);return e.aborted?null:n}),r=await this._updatingHandles.addPromise(t.promise);if(!r)return;this._segmentLabels=c(this._segmentLabels),this._segmentLabels=new r({context:{view:this.view,editGeometryOperations:e,elevationInfo:W,labelOptions:this.toolOptions.labels},visible:!0})}}_updateSymbolsForTheme(){let e=this.view.effectiveTheme.accentColor;this.symbols={vertices:{...this.symbols.vertices,default:this.symbols.vertices.default.clone().set(`color`,e),hover:this.symbols.vertices.hover?.clone().set(`color`,e)},controlPoints:{...this.symbols.controlPoints,default:this.symbols.controlPoints.default.clone().set(`color`,e),hover:this.symbols.controlPoints.hover?.clone().set(`color`,e)},midpoints:{...this.symbols.midpoints},constructionLines:this.symbols.constructionLines.clone().set(`color`,e)};for(let e of this.vertexGraphics)e.symbol=this._isSelected(e)?this.symbols.vertices.selected:this._hoverGraphic===e?this.symbols.vertices.hover:this.symbols.vertices.default;for(let e of this.curveControlPointGraphics)e.symbol=this._isSelected(e)?this.symbols.controlPoints.selected:this._hoverGraphic===e?this.symbols.controlPoints.hover:this.symbols.controlPoints.default;for(let e of this.constructionLineGraphics)e.symbol=this.symbols.constructionLines}_storeRelatedVertexIndices(){let e=this.vertexGraphics.items;if(!e)return;let t=e.map(({geometry:e})=>({x:e.x,y:e.y}));for(let n=0;n<t.length;n++){let r=[];for(let e=0;e<t.length;e++){if(n===e)continue;let i=t[n],a=t[e];i.x===a.x&&i.y===a.y&&r.push(e)}e[n].attributes[R.relatedGraphicIndices]=r}}_setupMover(){let{enableMovement:e,graphic:t,midpointGraphics:n,vertexGraphics:r,view:i}=this,a=r.concat(n,this.curveControlPointGraphics).toArray();e&&t.geometry?.type!==`multipoint`&&a.push(t),this._mover=new ce({enableMoveAllGraphics:!1,highlightsEnabled:!1,indicatorsEnabled:!1,graphics:a,view:i,callbacks:{onGraphicClick:e=>this._onGraphicClickCallback(e),onGraphicMoveStart:e=>this._onGraphicMoveStartCallback(e),onGraphicMove:e=>this._onGraphicMoveCallback(e),onGraphicMoveStop:e=>this._onGraphicMoveStopCallback(e),onGraphicPointerOver:e=>this._onGraphicPointerOverCallback(e),onGraphicPointerOut:e=>this._onGraphicPointerOutCallback(e)}})}_setupConnectedReshapeManager(){let{connectedReshapeProviders:e}=this;e!=null&&e.length!==0&&(this._connectedReshapeManager??=new ie({providerFactories:e,view:this.view}))}_onGraphicClickCallback(e){e.viewEvent.stopPropagation();let t=e.graphic,n=this._isCurveControlPoint(t);if(t===this.graphic)this.clearSelection(),this.emit(`graphic-click`,e),this.callbacks.onGraphicClick?.(e);else if(this._isMidpoint(t)){if(e.viewEvent.button===2)return;let n=this.graphic.clone(),r=this._handleMidpointClickOrStartMove(e);this.refresh(),r.length&&this._emitVertexAddEvent([t],n,r)}else if(this._isVertex(t)||n){if(e.viewEvent.stopPropagation(),e.viewEvent.button===2){n||this._removeVertices(t);return}e.viewEvent.native.shiftKey||this._clearSelection(),this.selectedManipulators.includes(t)?this._removeFromSelection(t,!0):this._addToSelection(t)}}_setUpOperation(e){let{graphic:t,dx:n,dy:r}=e,i=t===this.graphic;this._resetSnappingStateVars(),this._setUpGeometryHelper(),this._saveSnappingContextForHandle(t,e),this._activeOperationInfo={target:this.graphic,mover:t,operationType:i?`move`:`reshape`,totalDx:n,totalDy:r}}_onGraphicMoveStartCallback(e){let{dx:t,dy:n,graphic:r}=e,i=this._connectedReshapeManager,a=i?Fe(this.graphic):null;if(r===this.graphic){let{geometry:o}=r;this._primaryGraphicMoving=!0,this._setUpOperation(e),this._emitMoveStartEvent(t,n),a&&i?.startFeatureMove([a]),this._effectiveFilterVerticesEnabled&&this._resetGraphics(this.layer),o!=null&&o.type===`point`&&this._onHandleMove(r,t,n,e,()=>{this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(t,n)});return}let{selectedManipulators:o}=this;if(!o.includes(r)){if(this._clearSelection(),this._isMidpoint(r)){let t=this.graphic.clone(),n=this._handleMidpointClickOrStartMove(e);n.length&&(this._emitVertexAddEvent([r],t,n),this._refreshGraphicIndicesAttributes(n[0]))}this._addToSelection(r)}if(this._setUpOperation(e),a){let e=o.filter(e=>this._isVertex(e));i?.startVertexMove(a,Ie(e))}this._emitReshapeStartEvent(r),this._onHandleMove(r,t,n,e,()=>{this._updateTooltip(r,e.viewEvent),this._emitReshapeEvent(r)})}_onGraphicMoveCallback(e){let t=this._activeOperationInfo;if(!t)return;let{dx:n,dy:r,graphic:i}=e;t.totalDx+=n,t.totalDy+=r;let{operationType:a}=t,{geometry:o}=i;if(o!=null){if(a===`move`){if(o.type===`point`)this._onHandleMove(i,n,r,e,()=>{this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(n,r)});else if(o.type===`polyline`||o.type===`polygon`){let{dxMap:t,dyMap:i}=ae(n,r,this.view);if(!this._effectiveFilterVerticesEnabled){let e=K(o);this._updateVertexGraphicLocations(e)}else if(this.selectedManipulators.length>0){let e=this.selectedManipulators.toArray();this.selectedManipulators.removeAll();for(let t of e){if(t.geometry?.type===`point`){let{pathIndex:e,pointIndex:n}=t.attributes,r=O(o)[e][n];if(r){let e=k(r);t.geometry=this._coordinateHelper.arrayToPoint(e)}}this._addToSelection(t.clone())}}this._connectedReshapeManager?.translate(t,i,0),this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(n,r)}this._syncEditGeometryOperations(o);return}this._onHandleMove(i,n,r,e,()=>{this._updateTooltip(i,e.viewEvent),this._emitReshapeEvent(i)})}}_onGraphicMoveStopCallback(e){let t=this._activeOperationInfo;if(this._primaryGraphicMoving=!1,!t)return;let{dx:n,dy:r,graphic:i,x:a,y:o}=e,{operationType:s}=t;t.totalDx+=n,t.totalDy+=r,this._onHandleMove(i,n,r,e,()=>this._handleVertexSnap(i,{x:a,y:o},s))}_afterMoveStop(e,t){if(this._effectiveFilterVerticesEnabled&&t===`move`){let e=new Set;for(let t of this.selectedManipulators)e.add(Q(t));this.refresh(e),this._updateTooltip();return}if(this._isMidpoint(e)||e.getAttribute(R.curveFromStraightEdgeFlag)){this.refresh();return}this._updateTooltip(this._isVertex(e)?e:null),this._resetSnappingStateVars(),this._connectedReshapeManager?.finish(),this._activeOperationInfo=null}_handleVertexSnap(e,t,r){let i=e.geometry,a=this.snappingManager?.getVertexCandidates(),o=this.callbacks.onVertexSnap,s=()=>r===`move`?this._emitMoveStopEvent():this._emitReshapeStopEvent(e);if(!o||!i||!T(i)||!a||a.length===0){s(),this._afterMoveStop(e,r);return}l(this._snappingTask),this._snappingTask=n(async n=>{try{let r=await o(i,t,a);d(n);let s=w(r);this._coordinateHelper.hasZ()||(s.z=void 0),this._syncGeometryAfterVertexMove(e,s,0,0),e.geometry=s}finally{s(),this._afterMoveStop(e,r)}})}_updateVertexGraphicLocations(e){let{_coordinateHelper:t}=this;for(let n of this.vertexGraphics){let{pathIndex:r,pointIndex:i}=n.attributes;n.geometry=t.arrayToPoint(k(e[r][i]))}this._updateMidpointGraphicLocations(e),this._updateCurveGraphicLocations(e)}_updateMidpointGraphicLocations(e,t){let{_coordinateHelper:n}=this;if(t)for(let r of this.midpointGraphics){let{pathIndex:i,pointIndexStart:a,pointIndexEnd:o}=r.attributes;if(!t.has(i))continue;let s=t.get(i);if(!s.has(a)&&!s.has(o))continue;let c=e[i];r.geometry=new b(z(c[a],c[o],n))}else for(let t of this.midpointGraphics){let{pathIndex:r,pointIndexStart:i,pointIndexEnd:a}=t.attributes,o=e[r];t.geometry=new b(z(o[i],o[a],n))}}_updateCurveGraphicLocations(e){let{spatialReference:t}=this._coordinateHelper,n=new Map;for(let e of this.selectedManipulators){let[t,r]=Z(e);t!=null&&r!=null&&e.getAttribute(R.controlPointKind)&&s(n,t,()=>new Set)?.add(r)}for(let t of this.curveControlPointGraphics){let[r,i]=Z(t);if(n.get(r)?.has(i))continue;let a=e[r][i];if(A(a)||j(a)){let n=k(e[r][i-1]),o=A(a)?D(n,a):F(n,a),[s,c]=E(o,.25);t.geometry=new b({x:s,y:c,spatialReference:this._coordinateHelper.spatialReference})}else if(M(a)){let[e,n]=t.getAttribute(R.controlPointKind)===B.bezier.cp1?a.b[1]:a.b[2];t.geometry=new b({x:e,y:n,spatialReference:this._coordinateHelper.spatialReference})}}for(let n of this.constructionLineGraphics){let r=n.getAttribute(R.controlPointKind),[i,a]=Z(n),o=e[i],s=k(o[a-1]),c=k(o[a]),l=e[i][a];n.geometry=r===B.bezier.line1?new x({paths:[[[s[0],s[1]],[...l.b[1]]]],spatialReference:t}):new x({paths:[[[c[0],c[1]],[...l.b[2]]]],spatialReference:t})}}_refreshGraphicIndicesAttributes(e){let{componentIndex:t,vertexIndex:n}=e,r=e=>{let[r,i]=Z(e);r===t&&i>=n&&e.setAttribute(R.pointIndex,i+1)};this.vertexGraphics.forEach(r),this.curveControlPointGraphics.forEach(r),this.constructionLineGraphics.forEach(r);for(let e of this.midpointGraphics){if(e.getAttribute(R.pathIndex)!==t)continue;let r=e.getAttribute(R.pointIndexStart);r>=n&&(e.setAttribute(R.pointIndexStart,r+1),e.setAttribute(R.pointIndexEnd,e.getAttribute(R.pointIndexEnd)+1))}}_getVertexFromEditGeometry(e){let[t,n]=Z(e);return u(this._editGeometryOperations),this._editGeometryOperations.data.parts[t].vertices[n]}_onHandleMove(e,t,r,i,a){l(this._snappingTask);let o=this._snappingContext;if(!o)return;let s=e.geometry,c=i.type===`graphic-move-stop`;if(!s||!T(s)){a();return}if(this.snappingManager!=null&&this.selectedManipulators.length<2&&!c){let i=this.snappingManager;this._stagedVertex=i.update({point:s,context:o}),this._syncGeometryAfterVertexMove(e,new b(this._stagedVertex),t,r,c),a(),this._snappingTask=n(async n=>{let l=await i.snap({point:s,context:o,signal:n});if(l.valid){let n=l.apply();n.z=this._coordinateHelper.hasZ()?oe(this.snappingManager)??n.z:void 0,this._stagedVertex=n,this._syncGeometryAfterVertexMove(e,new b(this._stagedVertex),t,r,c),a()}}),this._updatingHandles.consumePromise(this._snappingTask.promise)}else{let n=this._stagedVertex==null?s:new b(this._stagedVertex);this._syncGeometryAfterVertexMove(e,n,t,r,c),a()}}_syncGeometryAfterVertexMove(e,t,n,r,i=!1){let a=V(this._editGeometryOperations?.data.geometry);if(!a)return;let{_coordinateHelper:o}=this,s=o.pointToVector(t),c=this._getVertexFromEditGeometry(e),l=null;if(c){let e=o.getZ(s);l=[c.pos[0],c.pos[1]];let t=s[0]-c.pos[0],n=s[1]-c.pos[1],r=e==null?0:e-c.pos[2];(a.type===`point`||a.type===`mesh`)&&this._editGeometryOperations?.moveVertices([c],t,n,r),this._connectedReshapeManager?.translate(t,n,r)}if(a.type===`point`)e.geometry=t;else if(a.type===`mesh`)e.geometry=a.centerAt(t);else{if(e!==this.graphic){l&&!this._isVertex(e)&&(l=null);let[i,s]=Z(e),c=q(a),u=o.pointToArray(t);if(this._updateGeometryFromGraphic(e,c,i,s,u,a.type===`polygon`),this._isVertex(e)||this._isCurveControlPoint(e)){let t=new Map;t.set(i,new Set([s])),c=this._moveRelatedCoordinates(c,e,u,t,l),c=this._moveSelectedHandleCoordinates(c,e,n,r,a.type===`polygon`),this._updateMidpointGraphicLocations(c,t),this._updateCurveGraphicLocations(c)}else this._isMidpoint(e)&&this._updateCurveGraphicLocations(c);H(a,c)}this._updateGraphicGeometry(a),this._syncEditGeometryOperations(a),i&&(this._mover?this._mover.updateGeometry(this._mover.graphics.indexOf(e),t):e.geometry=t)}}_syncEditGeometryOperations(e){this._editGeometryOperations?.trySetGeometry(e)||(this._editGeometryOperations=null,this._setUpGeometryHelper())}_moveRelatedCoordinates(e,t,n,r,i){if(this._effectiveFilterVerticesEnabled&&this._relatedGraphicIndex&&i){let a=this._relatedGraphicIndex.search({minX:i[0],maxX:i[0],minY:i[1],maxY:i[1]});for(let o of a)o.coordinate[0]===i[0]&&o.coordinate[1]===i[1]&&o.graphic&&(r&&s(r,o.pathIndex,()=>new Set).add(o.pointIndex),X(e,o.pathIndex,o.pointIndex,n),this._relatedGraphicIndex.remove(o),o.coordinate[0]=t.geometry.x,o.coordinate[1]=t.geometry.y,o.graphic.geometry=t.geometry,this._relatedGraphicIndex.insert(o));return e}let{relatedGraphicIndices:a}=t.attributes;if(!a?.length)return e;for(let i of a){let a=this.vertexGraphics.at(i),[o,c]=Z(a);r&&s(r,o,()=>new Set).add(c),X(e,o,c,n),a.geometry=t.geometry}return e}_moveSelectedHandleCoordinates(e,t,n,r,i){for(let a of this.selectedManipulators)if(a!==t){let[t,o]=Z(a),s=a.getAttribute(R.relatedGraphicIndices),c=se(a.geometry,n,r,this.view),l=C(c);if(a.geometry=c,this._updateGeometryFromGraphic(a,e,t,o,l,i),s?.length)for(let t of s){let n=this.vertexGraphics.at(t),[r,i]=Z(n);X(e,r,i,l),n.geometry=c}}return e}_updateGeometryFromGraphic(e,t,n,r,i,a){let o=t[n].length-1;this._isCurveControlPoint(e)?Pe(t,n,r,[i[0],i[1]],e.getAttribute(R.controlPointKind)):(X(t,n,r,i),a&&(r===0?X(t,n,o,i):r===o&&(t[n][0]=i)))}_onGraphicPointerOverCallback(e){let t=e.graphic;this._hoverGraphic=t;let n=this._isVertex(t);n&&!this._isSelected(t)?t.symbol=this.symbols.vertices.hover:this._isCurveControlPoint(t)&&!this._isSelected(t)&&(t.symbol=this.symbols.controlPoints.hover),this._updateTooltip(n?t:null),this._updateHoverCursor(t)}_onGraphicPointerOutCallback(e){let t=e.graphic;this._hoverGraphic=null,this._isVertex(t)&&!this._isSelected(t)&&(t.symbol=this.symbols.vertices.default),this._isCurveControlPoint(t)&&!this._isSelected(t)&&(t.symbol=this.symbols.controlPoints.default),this.removeHandles(U),this._updateTooltip()}_handleMidpointClickOrStartMove(e){let{graphic:t}=e,n=this.graphic.geometry;if(n==null||n.type!==`polygon`&&n.type!==`polyline`)return[];let r=V(n),i=[],{[R.pathIndex]:a,[R.pointIndexStart]:o,[R.pointIndexEnd]:s}=t.attributes,c=C(t.geometry),l=s===0?o+1:s;t.attributes={[R.tool]:be,[R.pathIndex]:a,[R.pointIndex]:l,[R.relatedGraphicIndices]:[]};let u=q(r),d=u[a][s];if(N(d)){if(this.enableCurveOnMidpoint&&e.viewEvent.native.shiftKey){let e=k(u[a][l]);u[a].splice(l,1,{c:[e,[c[0],c[1]]]}),t.setAttribute(R.controlPointKind,B.circle.interior),t.setAttribute(R.curveFromStraightEdgeFlag,!0),this.midpointGraphics.remove(t),this.curveControlPointGraphics.push(t),H(r,u)}else u[a].splice(l,0,c),i.push({coordinates:u[a][l],componentIndex:a,vertexIndex:l})}else{let e=k(u[a][o]),t=xe(e,d,.5,this._coordinateHelper);u[a].splice(s,1,...t),i.push({coordinates:k(u[a][l]),componentIndex:a,vertexIndex:l})}return this._updateGraphicGeometry(r),this._syncEditGeometryOperations(r),i}_addToSelection(e){let t=$(e);for(let e of t)e.symbol=this._isCurveControlPoint(e)?this.symbols.controlPoints.selected:this.symbols.vertices.selected,this.selectedManipulators.add(e),this._updateTooltip(e);this._emitSelectEvent(t)}_removeFromSelection(e,t){if(this._isVertex(e)){let{vertices:n}=this.symbols;e.symbol=t?n.hover:n.default}else if(this._isCurveControlPoint(e)){let{controlPoints:n}=this.symbols;e.symbol=t?n.hover:n.default}this.selectedManipulators.remove(e),this._emitDeselectEvent([e]),this._updateTooltip()}_clearSelection(){let e=this.selectedManipulators.toArray(),{controlPoints:t,vertices:n}=this.symbols;if(e.length>0){for(let r of e)this._isVertex(r)?r.symbol=n.default:this._isCurveControlPoint(r)&&(r.symbol=t.default);this.selectedManipulators.removeAll(),this._emitDeselectEvent(e),this._updateTooltip()}}_keyDownHandler(e){this._activeOperationInfo==null&&je(e,this.tooltip)||Ee.delete.includes(e.key)&&!e.repeat&&this.selectedManipulators.length&&(this._removeVertices(this.selectedManipulators),e.stopPropagation())}_removeVertices(e){let t=this.graphic.geometry,n=this.vertexGraphics.length;if(t==null||t.type!==`polygon`&&t.type!==`polyline`&&t.type!==`multipoint`||t.type===`polygon`&&n<4||t.type===`multipoint`&&n<2||t.type===`polyline`&&n<3)return;let r=this.graphic.clone(),i=V(t),a=q(i),o=[],s=$(e);for(let e of s){if(this._isCurveControlPoint(e))continue;let{x:t,y:n}=e.geometry;for(let e=0;e<a.length;e++){let r=a[e];for(let i=0;i<r.length;i++){let[s,c]=k(r[i]);if(t===s&&n===c){o.push({coordinates:k(a[e][i]),componentIndex:e,vertexIndex:i}),a[e].splice(Number(i),1);let t=a[e][i];t&&!N(t)&&(a[e][i]=k(t))}}}}if(i.type===`polygon`)a=a.filter(e=>{if(e.length<2)return!1;let[t,n]=k(e[0]),[r,i]=k(e[e.length-1]);return e.length===2&&t===r&&n===i?!1:((t!==r||n!==i)&&e.push(e[0]),!0)});else if(i.type===`polyline`)for(let e of a)e.length===1&&a.splice(a.indexOf(e),1);H(i,a),this._updateGraphicGeometry(i),this.refresh(),this._emitVertexRemoveEvent(s,r,o)}_isVertex(e){return this.vertexGraphics.includes(e)}_isCurveControlPoint(e){return this.curveControlPointGraphics.includes(e)}_isConstructionLine(e){return this.constructionLineGraphics.includes(e)}_isSelected(e){return(this._isVertex(e)||this.curveControlPointGraphics.includes(e))&&this.selectedManipulators.includes(e)}_isMidpoint(e){return this.midpointGraphics.includes(e)}_updateHoverCursor(e){let t=this._isMidpoint(e)?`copy`:`move`;this.addHandles(this.view.acquireCursor(t,`high`),U)}_updateTooltip(e,t){let n=null,{graphic:r,view:i,tooltipInfos:a}=this,o=r?.geometry;o?.type===`point`?n=a.movePoint:this._selectedManipulator?n=a.selectedVertex:e===this.graphic?(n=a.translateGraphic,me(n,i,this._tooltipsContext,this._updatingHandles,t)):e&&this.selectedManipulators.length>1&&(n=a.translateVertices,he(n,i,o,this._tooltipsContext,this._updatingHandles,t)),this.activeTooltipInfo=n}_updateGraphicGeometry(e){this._updateHandlesOnExternalGeometryChange?.pause(),this.graphic.geometry=e,this._updateHandlesOnExternalGeometryChange?.resume()}_emitMoveStartEvent(e,t){let n={type:`move-start`,mover:this.graphic,dx:e,dy:t};this.emit(`move-start`,n),this.callbacks.onMoveStart?.(n)}_emitMoveEvent(e,t){let n={type:`move`,mover:this.graphic,dx:e,dy:t};this.emit(`move`,n),this.callbacks.onMove?.(n)}_emitMoveStopEvent(e,t){if(e==null||t==null){let n=this._activeOperationInfo;if(!n)return;e=n.totalDx,t=n.totalDy}let n={type:`move-stop`,mover:this.graphic,dx:e,dy:t};this.emit(`move-stop`,n),this.callbacks.onMoveStop?.(n)}_emitReshapeStartEvent(e){let t={type:`reshape-start`,graphic:this.graphic,mover:e,selected:this.selectedManipulators.toArray()};this.emit(`reshape-start`,t),this.callbacks.onReshapeStart?.(t)}_emitReshapeEvent(e){let t={type:`reshape`,graphic:this.graphic,mover:e,selected:this.selectedManipulators.toArray()};this.emit(`reshape`,t),this.callbacks.onReshape?.(t)}_emitReshapeStopEvent(e){let t={type:`reshape-stop`,graphic:this.graphic,mover:e,selected:this.selectedManipulators.toArray()};this.emit(`reshape-stop`,t),this.callbacks.onReshapeStop?.(t)}_emitSelectEvent(e){let t={type:`vertex-select`,added:e};this.emit(`select`,t),this.callbacks.onVertexSelect?.(t)}_emitDeselectEvent(e){let t={type:`vertex-deselect`,removed:e};this.emit(`deselect`,t),this.callbacks.onVertexDeselect?.(t)}_emitVertexAddEvent(e,t,n){let r={type:`vertex-add`,added:e,graphic:this.graphic,oldGraphic:t,vertices:n};this.emit(`vertex-add`,r),this.callbacks.onVertexAdd?.(r)}_emitVertexRemoveEvent(e,t,n){let r={type:`vertex-remove`,removed:e,graphic:this.graphic,oldGraphic:t,vertices:n};this.emit(`vertex-remove`,r),this.callbacks.onVertexRemove?.(r)}_logGeometryTypeError(){o.getLogger(this).error(new i(`reshape:invalid-geometry`,`Reshape operation not supported for the provided graphic. The geometry type is not supported.`))}};e([_()],G.prototype,`_activeOperationInfo`,void 0),e([_()],G.prototype,`_connectedReshapeManager`,void 0),e([_()],G.prototype,`_coordinateHelper`,null),e([_()],G.prototype,`_editGeometryOperations`,void 0),e([_()],G.prototype,`_effectiveFilterVerticesEnabled`,null),e([_()],G.prototype,`_primaryGraphicMoving`,void 0),e([_()],G.prototype,`_segmentLabels`,void 0),e([_()],G.prototype,`test`,null),e([_()],G.prototype,`_segmentLabelsImportTask`,void 0),e([_()],G.prototype,`_updatingHandles`,void 0),e([_()],G.prototype,`_selectedManipulator`,null),e([_()],G.prototype,`_tooltipsContext`,null),e([_()],G.prototype,`callbacks`,void 0),e([_()],G.prototype,`connectedReshapeProviders`,void 0),e([_()],G.prototype,`enableMidpoints`,void 0),e([_()],G.prototype,`enableCurveOnMidpoint`,void 0),e([_()],G.prototype,`enableMovement`,void 0),e([_()],G.prototype,`enableVertices`,void 0),e([_()],G.prototype,`filterVerticesEnabled`,void 0),e([_()],G.prototype,`graphic`,void 0),e([_()],G.prototype,`highlightName`,void 0),e([_()],G.prototype,`highlightsEnabled`,void 0),e([_()],G.prototype,`layer`,void 0),e([_()],G.prototype,`snappingManager`,void 0),e([_({readOnly:!0})],G.prototype,`state`,null),e([_()],G.prototype,`symbols`,void 0),e([_()],G.prototype,`tooltip`,void 0),e([_()],G.prototype,`tooltipInfos`,void 0),e([_()],G.prototype,`activeTooltipInfo`,void 0),e([_()],G.prototype,`updating`,null),e([_()],G.prototype,`toolOptions`,void 0),e([_({readOnly:!0})],G.prototype,`type`,void 0),e([_({readOnly:!0})],G.prototype,`vertexGraphics`,void 0),e([_({readOnly:!0})],G.prototype,`curveControlPointGraphics`,void 0),e([_({readOnly:!0})],G.prototype,`constructionLineGraphics`,void 0),e([_({readOnly:!0})],G.prototype,`midpointGraphics`,void 0),e([_({readOnly:!0})],G.prototype,`selectedManipulators`,void 0),e([_()],G.prototype,`view`,void 0),G=e([v(`esri.views.draw.support.Reshape`)],G);function K(e){let t=q(e);t=t.map(e=>e.slice());for(let e of t)for(let t=0;t<e.length;t++)e[t]=ee(e[t]);if(e.type===`polygon`)for(let e of t){let t=e[e.length-1];if(!N(t))continue;let n=e[0];n[0]===t[0]&&n[1]===t[1]&&e.length>2&&e.pop()}return t}function q(e){return e.type===`polygon`?e.curveRings?.slice()??e.rings.slice():e.type===`polyline`?e.curvePaths?.slice()??e.paths.slice():e.points.map(e=>[e])}function Ne(e,t,n,r){let i=e[t][n];if(A(i))i.c[1]=r;else if(j(i)){let i=k(e[t][n]);e[t][n]={c:[i,r]}}}function Pe(e,t,n,r,i){switch(i){case B.circle.interior:Ne(e,t,n,r);break;case B.bezier.cp1:e[t][n].b[1]=r;break;case B.bezier.cp2:e[t][n].b[2]=r}}function J(e,t){return e<t*1e-8}function Y(e,{cx:t,cy:n,isInvalid:r,thetaStart:i,thetaEnd:a},o,s){let[c,l]=e,[u,d]=o,f=u-c,p=d-l;t-=c,n-=l;let m=s?i>a:i<a,[h,g]=r?[t,n]:m?[-n,t]:[n,-t],[_,v]=[f,p],[y,b]=[h,g],x=_*b-v*y,S=(f**2+p**2)/2;if(J(Math.abs(x),S))return[(c+u)/2,(l+d)/2];let[C,w]=[b/x*S,-y/x*S],T=C**2+w**2,[E,D]=[f/2-C,p/2-w];if(J(E**2+D**2,T)){let[e,t]=m?[-w,C]:[w,-C];return[e+C+c,t+w+l]}let O=Math.sqrt((C**2+w**2)/(E**2+D**2))*Math.sign(f*h+p*g);return[E*O+C+c,D*O+w+l]}function X(e,t,n,r){let i=e[t][n],a=e[t].at(n+1);if(Se(e,t)){let n=e[t][1];e[t][0]=[...r],e[t][1]={a:[[...r],[...n.a[1]],0,0]};return}if(Ce(e,t)){let n=e[t][1],[i,a]=n.a[1],[o,s]=r,c=Math.hypot(o-i,s-a),[l,u]=[o-i,s-a],d=te(u,l);e[t][0]=[...r],e[t][1]={a:[[...r],[...n.a[1]],0,0,d,c,n.a[6]]};return}let o=k(i);if(N(i))i.splice(0,i.length,...r);else if(M(i))i.b[0].splice(0,i.b[0].length,...r);else if(A(i)||j(i)){let a=k(e[t][n-1]),o=A(i)?D(a,i):F(a,i);e[t].splice(n,1,{c:[[...r],Y(a,o,r,!0)]})}else if(P(i)){i.a[0].splice(0,i.a[0].length,...r);let a=k(e[t][n-1]);I(a,i)}if(a&&!N(a)&&!M(i)){if(A(a)||j(a)){let i=k(a),s=A(a)?D(o,a):F(o,a);e[t].splice(n+1,1,{c:[i,Y(i,s,r,!1)]})}else if(P(a)){let e=k(i);I(e,a)}}}function Z({attributes:e}){return[e?.[R.pathIndex]||0,e?.[R.pointIndex]||0]}function Q({attributes:e}){return`${e?.[R.pathIndex]}-${e?.[R.pointIndex]}-${e?.[R.controlPointKind]??`vertex`}`}function $(e){return e instanceof t?[e]:[...e]}function Fe(e){let t=e.sourceLayer??e.layer;return de(t)?{graphic:e,layer:t}:null}function Ie(e){return e.toArray().map(({attributes:e})=>({pathIndex:e[R.pathIndex],vertexIndex:e[R.pointIndex]}))}const Le=G;export{Le as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{watch as e,syncAndInitial as t}from"../../../core/reactiveUtils.js";function n(n,r){return e(()=>{let{tooltips:e,displayUnits:t,inputUnits:n}=r();return{tooltips:e,displayUnits:t,inputUnits:n}},({tooltips:e,displayUnits:t,inputUnits:r})=>{n.tooltips=e,n.values.displayUnits=t,n.values.inputUnits=r},t)}export{n as bindViewToolOptions};
2
+ import{handlesGroup as e}from"../../../core/handleUtils.js";import{watch as t,syncAndInitial as n}from"../../../core/reactiveUtils.js";import{ensureClass as r}from"../../../core/accessorSupport/ensureType.js";import i from"./LabelOptions.js";function a(a,s,c){let{values:l}=a;return e([t(()=>s().tooltips,e=>{a.tooltips=e},n),t(()=>{let e=c?.();return{labels:e?.labels,directionMode:e?.values?.directionMode,relativeDirectionIsBilateral:e?.values?.relativeDirectionIsBilateral}},({labels:e,directionMode:t,relativeDirectionIsBilateral:n})=>{e&&(a.labels=r(i,e)),t!==void 0&&(l.directionMode=t),n!==void 0&&(l.relativeDirectionIsBilateral=n)},n),o(l,s,()=>c?.()?.values)])}function o(t,n,r){return e([s(t.displayUnits,()=>n().displayUnits,()=>r?.()?.displayUnits),s(t.inputUnits,()=>n().inputUnits,()=>r?.()?.inputUnits)])}function s(e,r,i){return t(()=>{let e=i(),t=r();return{length:e?.length??t.length,verticalLength:e?.verticalLength??t.verticalLength,area:e?.area??t.area,volume:e?.volume??t.volume}},t=>e.set(t),n)}export{o as bindToolUnits,a as bindViewToolOptions};
@@ -9,6 +9,9 @@ export interface SketchLabelOptionsProperties extends LabelOptionsProperties {}
9
9
  * segment of a graphic while sketching and editing. The labels display each segment's
10
10
  * horizontal length and are not shown for non-planar polygons and polylines.
11
11
  *
12
+ * Properties that autocast to this class also accept instances of [LabelOptions](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/options/LabelOptions/).
13
+ * Autocasting plain objects still creates instances of `SketchLabelOptions`.
14
+ *
12
15
  * [![sketch-3d](https://developers.arcgis.com/javascript/latest/assets/references/core/views/interactive/sketch/sketchlabels.avif)](https://developers.arcgis.com/javascript/latest/sample-code/sketch-3d/)
13
16
  *
14
17
  * How the segment lengths are computed depends on the view's spatial reference. In geographic coordinate systems (GCS)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{subclass as t}from"../../../core/accessorSupport/decorators.js";import n from"../options/LabelOptions.js";let r=class extends n{constructor(e){super(e)}};r=e([t(`esri.views.interactive.sketch.SketchLabelOptions`)],r);export{r as default};
2
+ import{__decorate as e}from"tslib";import{subclass as t}from"../../../core/accessorSupport/decorators.js";import{ensureClass as n,requiresType as r}from"../../../core/accessorSupport/ensureType.js";import i from"../options/LabelOptions.js";var a;let o=a=class extends i{constructor(e){super(e)}static from(e){return n(r(i,e)?a:i,e)}};o=a=e([t(`esri.views.interactive.sketch.SketchLabelOptions`)],o);export{o as default};
@@ -7,6 +7,9 @@ export interface SketchTooltipOptionsProperties extends TooltipOptionsProperties
7
7
  /**
8
8
  * The `SketchTooltipOptions` allows users to configure the tooltips which are shown while sketching and editing.
9
9
  *
10
+ * Properties that autocast to this class also accept instances of [TooltipOptions](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/options/TooltipOptions/).
11
+ * Autocasting plain objects still creates instances of `SketchTooltipOptions`.
12
+ *
10
13
  * To enter the tooltip UI's [input mode](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/sketch/SketchTooltipOptions/#inputEnabled),
11
14
  * press the `Tab` key while drawing a new feature, or when editing a point, mesh, or a selected vertex.
12
15
  *
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{subclass as t}from"../../../core/accessorSupport/decorators.js";import n from"../options/TooltipOptions.js";let r=class extends n{constructor(e){super(e)}};r=e([t(`esri.views.interactive.sketch.SketchTooltipOptions`)],r);const i=r;export{i as default};
2
+ import{__decorate as e}from"tslib";import{subclass as t}from"../../../core/accessorSupport/decorators.js";import{ensureClass as n,requiresType as r}from"../../../core/accessorSupport/ensureType.js";import i from"../options/TooltipOptions.js";var a;let o=a=class extends i{constructor(e){super(e)}static from(e){return n(r(i,e)?a:i,e)}};o=a=e([t(`esri.views.interactive.sketch.SketchTooltipOptions`)],o);const s=o;export{s as default};
@@ -8,6 +8,9 @@ export interface SketchValueOptionsProperties extends ValueOptionsProperties {}
8
8
  * The `SketchValueOptions` allows users to configure how numerical values and
9
9
  * constraints behave while sketching and editing.
10
10
  *
11
+ * Properties that autocast to this class also accept instances of [ValueOptions](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/options/ValueOptions/).
12
+ * Autocasting plain objects still creates instances of `SketchValueOptions`.
13
+ *
11
14
  * @deprecated since 5.2. Use [ValueOptions](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/options/ValueOptions/) instead.
12
15
  * @since 4.29
13
16
  * @see [Sketch](https://developers.arcgis.com/javascript/latest/references/core/widgets/Sketch/)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{subclass as t}from"../../../core/accessorSupport/decorators.js";import n from"../options/ValueOptions.js";let r=class extends n{constructor(e){super(e)}};r=e([t(`esri.views.interactive.sketch.SketchValueOptions`)],r);const i=r;export{i as default};
2
+ import{__decorate as e}from"tslib";import{subclass as t}from"../../../core/accessorSupport/decorators.js";import{ensureClass as n,requiresType as r}from"../../../core/accessorSupport/ensureType.js";import i from"../options/ValueOptions.js";var a;let o=a=class extends i{constructor(e){super(e)}static from(e){return n(r(i,e)?a:i,e)}};o=a=e([t(`esri.views.interactive.sketch.SketchValueOptions`)],o);const s=o;export{s as default};
@@ -7,6 +7,9 @@ export interface SnappingOptionsProperties extends BaseSnappingOptionsProperties
7
7
  /**
8
8
  * The `SnappingOptions` allows users to configure snapping for their editing or drawing experience in both the [Sketch.snappingOptions](https://developers.arcgis.com/javascript/latest/references/core/widgets/Sketch/#snappingOptions) and [Editor.snappingOptions](https://developers.arcgis.com/javascript/latest/references/core/widgets/Editor/#snappingOptions) widgets.
9
9
  *
10
+ * Properties that autocast to this class also accept instances of [SnappingOptions](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/options/SnappingOptions/).
11
+ * Autocasting plain objects still creates instances of this deprecated `SnappingOptions` class.
12
+ *
10
13
  * Snapping options provide the ability to specify whether an application will utilize self snapping, feature snapping, or both. Both are described below.
11
14
  *
12
15
  * It is also possible to toggle snapping by pressing and holding down the `CTRL` key. This toggles the snapping on/off.
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{subclass as t}from"../../../core/accessorSupport/decorators.js";import n from"../options/SnappingOptions.js";let r=class extends n{constructor(e){super(e)}};r=e([t(`esri.views.interactive.snapping.SnappingOptions`)],r);export{r as default};
2
+ import{__decorate as e}from"tslib";import{subclass as t}from"../../../core/accessorSupport/decorators.js";import{ensureClass as n,requiresType as r}from"../../../core/accessorSupport/ensureType.js";import i from"../options/SnappingOptions.js";var a;let o=a=class extends i{constructor(e){super(e)}static from(e){return n(r(i,e)?a:i,e)}};o=a=e([t(`esri.views.interactive.snapping.SnappingOptions`)],o);export{o as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{watch as e,syncAndInitial as t}from"../../../core/reactiveUtils.js";import{intersection as n}from"../../../core/SetUtils.js";import{sqlAnd as r}from"../../../core/sql.js";import{mergeTimeExtents as i}from"../../../core/timeUtils.js";import{squaredDistance as a}from"../../../core/libs/gl-matrix-2/math/vec3.js";import{makeDehydratedPoint as o}from"../../../layers/graphics/dehydratedPoint.js";import s from"../../../rest/support/Query.js";import{ViewEventPriorities as c}from"../../input/InputManager.js";import{snappingKeys as l}from"../keybindings.js";import{fromAnyMapPoint as u}from"../sketch/normalizedPoint.js";import{isWebMap as d}from"../../../webmap/utils.js";export{screenDistance,squaredScreenDistance}from"../../../core/screenUtils.js";const f=Symbol(`grid-placement-graphic`);function p(e,t){t.sort((t,n)=>a(t.targetPoint,e)-a(n.targetPoint,e))}function m({parameters:{point:e,distance:t,returnEdge:n,vertexMode:a,coordinateHelper:{spatialReference:c},filter:l},returnZ:u,filter:d}){let f=d?.clone()??new s({where:`1=1`});return f.returnZ=u,l&&(f.geometry=l.geometry,f.distance=l.distance,f.spatialRelationship=l.spatialRelationship,f.where=r(f.where,l.where),f.timeExtent=i(f.timeExtent,l.timeExtent),f.objectIds=h(f.objectIds,l.objectIds)),{point:o(e[0],e[1],e[2],c.toJSON()),distance:t,returnEdge:n,vertexMode:a,query:f.toJSON()}}function h(e,t){return!e&&!t?null:t?e?Array.from(n(new Set(e),new Set(t))):t:e}function g(e,t,n){return{left:u(e.leftVertex.pos,t,n),right:u(e.rightVertex.pos,t,n)}}const _=Symbol(`snapping-toggle`);function v(n,r=()=>{}){let i=e(()=>({view:n.view,snappingOptions:n.snappingOptions}),({view:e,snappingOptions:t})=>{if(n.removeHandles(_),!e||!t)return;let i=c.TOOL,a=[e.on(`key-down`,e=>{e.key===l.toggle&&!e.repeat&&(t.enabledToggled=!0,r())},i),e.on(`key-up`,e=>{e.key===l.toggle&&(t.enabledToggled=!1,r())},i),e.on(`pointer-move`,e=>{let n=e.native.ctrlKey;t.enabledToggled!==n&&(t.enabledToggled=n,r())},i)];n.addHandles(a,_)},t);n.addHandles(i)}function y(e){return d(e)&&`utilityNetworks`in e&&!!e.utilityNetworks?.length}function b(e){return e?.type===`line`}export{g as editEdgeToSnappingEdge,f as gridPlacementGraphicSymbol,b as isLine,y as isUtilityNetworkWebMap,m as makeSnappingQuery,v as setupSnappingToggleHandles,p as sortCandidatesInPlace};
2
+ import{watch as e,syncAndInitial as t}from"../../../core/reactiveUtils.js";import{intersection as n}from"../../../core/SetUtils.js";import{sqlAnd as r}from"../../../core/sql.js";import{mergeTimeExtents as i}from"../../../core/timeUtils.js";import{squaredDistance as a}from"../../../core/libs/gl-matrix-2/math/vec3.js";import{makeDehydratedPoint as o}from"../../../layers/graphics/dehydratedPoint.js";import s from"../../../rest/support/Query.js";import{ViewEventPriorities as c}from"../../input/InputManager.js";import{snappingKeys as l}from"../keybindings.js";import{fromAnyMapPoint as u}from"../sketch/normalizedPoint.js";import{isWebMap as d}from"../../../webmap/utils.js";export{screenDistance,squaredScreenDistance}from"../../../core/screenUtils.js";const f=Symbol(`grid-placement-graphic`);function p(e,t){t.sort((t,n)=>a(t.targetPoint,e)-a(n.targetPoint,e))}function m({parameters:{point:e,distance:t,returnEdge:n,vertexMode:a,coordinateHelper:{spatialReference:c},filter:l},returnZ:u,filter:d}){let f=d?.clone()??new s({where:`1=1`});return f.returnZ=u,l&&(f.geometry=l.geometry,f.distance=l.distance,f.spatialRelationship=l.spatialRelationship,f.where=r(f.where,l.where),f.timeExtent=i(f.timeExtent,l.timeExtent),f.objectIds=h(f.objectIds,l.objectIds)),{point:o(e[0],e[1],e[2],c.toJSON()),distance:t,returnEdge:n,vertexMode:a,query:f.toJSON()}}function h(e,t){return!e&&!t?null:t?e?Array.from(n(new Set(e),new Set(t))):t:e}function g(e,t,n){return{left:u(e.leftVertex.pos,t,n),right:u(e.rightVertex.pos,t,n)}}const _=Symbol(`snapping-toggle`);function v(n,r=()=>{},i=()=>n.snappingOptions){let a=e(()=>({view:n.view,snappingOptions:i()}),({view:e,snappingOptions:t})=>{if(n.removeHandles(_),!e||!t)return;let i=c.TOOL,a=[e.on(`key-down`,e=>{e.key===l.toggle&&!e.repeat&&(t.enabledToggled=!0,r())},i),e.on(`key-up`,e=>{e.key===l.toggle&&(t.enabledToggled=!1,r())},i),e.on(`pointer-move`,e=>{let n=e.native.ctrlKey;t.enabledToggled!==n&&(t.enabledToggled=n,r())},i)];n.addHandles(a,_)},t);n.addHandles(a)}function y(e){return d(e)&&`utilityNetworks`in e&&!!e.utilityNetworks?.length}function b(e){return e?.type===`line`}export{g as editEdgeToSnappingEdge,f as gridPlacementGraphicSymbol,b as isLine,y as isUtilityNetworkWebMap,m as makeSnappingQuery,v as setupSnappingToggleHandles,p as sortCandidatesInPlace};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{Cyclical as e}from"../../../../core/Cyclical.js";import{createAngle as t,createScalar as n,toUnit as r}from"../../../../core/quantity.js";import{formatRelativeVerticalLength as i,formatVerticalLength as a,formatLength as o,formatRelativeLength as s,formatArea as c,formatAngle as l}from"../../../../core/quantityFormatUtils.js";import{isLoaded as u,fromLatitudeLongitude as d,fromLongitude as f,fromLatitude as p}from"../../../../geometry/coordinateFormatter.js";import{parseNumber as m,formatNumber as h}from"../../../../intl/number.js";import{getDegreesGeographic as g}from"../../../support/angularMeasurementUtils.js";const _=/^\s*(.+?)\s*([+\-*/])\s*(.+)\s*$/;function v(e,t){return{angleRelative:y,direction:b,directionRelative:x,directionRelativeBilateral:S,latitudeDecimalDegrees:w,longitudeDecimalDegrees:C,area:(n,r)=>c(e,n,r??t.area),length:(n,r,i)=>o(e,n,r??t.length,i),lengthRelative:(n,r)=>s(e,n,r??t.length),totalLength:(n,r)=>o(e,n,r??t.length),verticalLength:(n,r)=>a(e,n,r??t.verticalLength),verticalLengthRelative:(n,r)=>i(e,n,r??t.verticalLength),percentage:k,scalar:j,scale:A}}function y(e){return h(e,{signDisplay:`exceptZero`,...M(1)})}function b(e){return l(e,e.rotationType,1)}function x(e){let t=g(e);return h(t,{style:`unit`,unitDisplay:`narrow`,unit:`degree`,signDisplay:t>0?`never`:`exceptZero`,...M(1)})}function S(e){return l(e,e.rotationType,1)}function C(e){return D(e,K)}function w(e){return D(e,q)}function T(e){return O(e,K)}function E(e){return O(e,q)}function D(e,t){return l(r(e,`degrees`),`geographic`,6,t,!1)}function O(e,t){let i=t.normalize(r(e,`degrees`).value,void 0,!1);return j(n(i),6)}function k(e){return h(e.value,{style:`percent`})}function A(e){return h(e,{style:`percent`,maximumFractionDigits:0})}function j(e,t){return h(e.value,M(t))}function M(e){return{minimumFractionDigits:e,maximumFractionDigits:e}}function N(e,{parseOperand:t=m,sanitizeOperand:n}={}){let r=e.match(_);if(!r)return null;let[,i,a,o]=r;n&&(i=n(i),o=n(o));let s=t(i),c=t(o);if(s==null||c==null)return null;let l;switch(a){case`+`:l=s+c;break;case`-`:l=s-c;break;case`*`:l=s*c;break;case`/`:l=s/c}return Number.isFinite(l)?l:null}function P({createQuantity:e,parsePlainValue:t,sanitizeOperand:n}){return(r,i)=>{if(r==null)return null;let a=N(r,{sanitizeOperand:n});return a==null?t(r,i):e(a,i)}}function F({createQuantity:e,sanitize:t}){return P({createQuantity:e,parsePlainValue:(n,r)=>{t&&(n=t(n));let i=m(n);return i==null?null:e(i,r)},sanitizeOperand:t})}function I(e){return P({createQuantity:e=>G(e),parsePlainValue:t=>e(t),sanitizeOperand:L})}function L(e){return e.replaceAll(/[*^~°º]/g,``)}const R=e=>{let t=`[-+]?[0-9${e.thousands}]+`;return e.decimal!==``&&(t+=`${e.decimal}[0-9]+`),RegExp(`^(${t}\\s*)${e.separator}(\\s*${t})$`,`i`)},z=[];for(let e of[`,`,`\\|`,`\\s+`])for(let t of[`\\.`,`,`,``])for(let n of[``,`,`,`\\.`,` `,`\\s+`])e!==t&&e!==n&&t!==n&&z.push({separator:e,decimal:t,thousands:n,pattern:R({decimal:t,thousands:n,separator:e})});function B(e){for(let{decimal:t,thousands:r,pattern:i}of z){i.lastIndex=0;let a=e.match(i);if(!a)continue;let o=m(V(a[1],t,r)),s=m(V(a[2],t,r));if(o!=null&&s!=null)return{x:n(o),y:n(s)}}return null}function V(e,t,n){let r=e.replaceAll(/[\s+]/g,``);return n!==``&&(r=r.replaceAll(n,``)),t!==``&&(r=r.replaceAll(t,`.`)),r}function H(e){if(!e||m(e)!=null||!u())return null;let t=d(e),n=G(t?.latitude),r=G(t?.longitude);return r!=null&&n!=null?{latitude:n,longitude:r}:null}function U(e){return G(f(e))}function W(e){return G(p(e))}function G(e){return e==null?null:t(e,`degrees`,`geographic`)}const K=new e(-180,180),q=new e(-90,90);export{V as cleanNumber,G as createGeographicCoordinate,E as formatLatitudeDecimalDegreesForInputMode,T as formatLongitudeDecimalDegreesForInputMode,v as getFormatters,I as makeCoordinateExpressionParser,F as makeQuantityParser,W as parseLatitude,H as parseLatitudeLongitude,U as parseLongitude,N as parseSimpleNumericExpression,B as parseXY,L as sanitizeAngle};
2
+ import{Cyclical as e}from"../../../../core/Cyclical.js";import{createAngle as t,createScalar as n,toUnit as r}from"../../../../core/quantity.js";import{formatRelativeVerticalLength as i,formatVerticalLength as a,formatLength as o,formatRelativeLength as s,formatArea as c,formatAngle as l}from"../../../../core/quantityFormatUtils.js";import{isLoaded as u,fromLatitudeLongitude as d,fromLongitude as f,fromLatitude as p}from"../../../../geometry/coordinateFormatter.js";import{parseNumber as m,formatNumber as h}from"../../../../intl/number.js";import{getDegreesGeographic as g}from"../../../support/angularMeasurementUtils.js";const _=/^\s*(.+?)\s*([+\-*/])\s*(.+)\s*$/;function v(e,t){return{angleRelative:y,direction:b,directionRelative:x,directionRelativeBilateral:S,latitudeDecimalDegrees:w,longitudeDecimalDegrees:C,area:(n,r)=>c(e,n,r??t.area),length:(n,r,i)=>o(e,n,r??t.length,i),lengthRelative:(n,r)=>s(e,n,r??t.length),totalLength:(n,r)=>o(e,n,r??t.length),verticalLength:(n,r)=>a(e,n,r??t.verticalLength),verticalLengthRelative:(n,r)=>i(e,n,r??t.verticalLength),percentage:k,scalar:j,scale:A}}function y(e){return h(e,{signDisplay:`exceptZero`,...M(1)})}function b(e){return l(e,e.rotationType,1)}function x(e){let t=g(e);return h(t,{style:`unit`,unitDisplay:`narrow`,unit:`degree`,signDisplay:t>0?`never`:`exceptZero`,...M(1)})}function S(e){return l(e,e.rotationType,1)}function C(e){return D(e,K)}function w(e){return D(e,q)}function T(e){return O(e,K)}function E(e){return O(e,q)}function D(e,t){return l(r(e,`degrees`),`geographic`,6,t,!1)}function O(e,t){let i=t.normalize(r(e,`degrees`).value,void 0,!1);return j(n(i),6)}function k(e){return h(e.value,{style:`percent`})}function A(e){return h(e,{style:`percent`,maximumFractionDigits:0})}function j(e,t){return h(e.value,{signDisplay:e.value>0?`never`:`exceptZero`,...M(t)})}function M(e){return{minimumFractionDigits:e,maximumFractionDigits:e}}function N(e,{parseOperand:t=m,sanitizeOperand:n}={}){let r=e.match(_);if(!r)return null;let[,i,a,o]=r;n&&(i=n(i),o=n(o));let s=t(i),c=t(o);if(s==null||c==null)return null;let l;switch(a){case`+`:l=s+c;break;case`-`:l=s-c;break;case`*`:l=s*c;break;case`/`:l=s/c}return Number.isFinite(l)?l:null}function P({createQuantity:e,parsePlainValue:t,sanitizeOperand:n}){return(r,i)=>{if(r==null)return null;let a=N(r,{sanitizeOperand:n});return a==null?t(r,i):e(a,i)}}function F({createQuantity:e,sanitize:t}){return P({createQuantity:e,parsePlainValue:(n,r)=>{t&&(n=t(n));let i=m(n);return i==null?null:e(i,r)},sanitizeOperand:t})}function I(e){return P({createQuantity:e=>G(e),parsePlainValue:t=>e(t),sanitizeOperand:L})}function L(e){return e.replaceAll(/[*^~°º]/g,``)}const R=e=>{let t=`[-+]?[0-9${e.thousands}]+`;return e.decimal!==``&&(t+=`${e.decimal}[0-9]+`),RegExp(`^(${t}\\s*)${e.separator}(\\s*${t})$`,`i`)},z=[];for(let e of[`,`,`\\|`,`\\s+`])for(let t of[`\\.`,`,`,``])for(let n of[``,`,`,`\\.`,` `,`\\s+`])e!==t&&e!==n&&t!==n&&z.push({separator:e,decimal:t,thousands:n,pattern:R({decimal:t,thousands:n,separator:e})});function B(e){for(let{decimal:t,thousands:r,pattern:i}of z){i.lastIndex=0;let a=e.match(i);if(!a)continue;let o=m(V(a[1],t,r)),s=m(V(a[2],t,r));if(o!=null&&s!=null)return{x:n(o),y:n(s)}}return null}function V(e,t,n){let r=e.replaceAll(/[\s+]/g,``);return n!==``&&(r=r.replaceAll(n,``)),t!==``&&(r=r.replaceAll(t,`.`)),r}function H(e){if(!e||m(e)!=null||!u())return null;let t=d(e),n=G(t?.latitude),r=G(t?.longitude);return r!=null&&n!=null?{latitude:n,longitude:r}:null}function U(e){return G(f(e))}function W(e){return G(p(e))}function G(e){return e==null?null:t(e,`degrees`,`geographic`)}const K=new e(-180,180),q=new e(-90,90);export{V as cleanNumber,G as createGeographicCoordinate,E as formatLatitudeDecimalDegreesForInputMode,T as formatLongitudeDecimalDegreesForInputMode,v as getFormatters,I as makeCoordinateExpressionParser,F as makeQuantityParser,W as parseLatitude,H as parseLatitudeLongitude,U as parseLongitude,N as parseSimpleNumericExpression,B as parseXY,L as sanitizeAngle};
@@ -0,0 +1,34 @@
1
+ import type Graphic from "../../Graphic.js";
2
+ import type Collection from "../../core/Collection.js";
3
+ import type SketchLayer from "../../layers/SketchLayer.js";
4
+ import type LayerView from "./LayerView.js";
5
+ import type { ResourceHandle } from "../../core/Handles.js";
6
+ import type { ObjectId } from "../types.js";
7
+ import type { LayerViewHighlightOptions } from "./types.js";
8
+
9
+ /**
10
+ * Represents the view of a [SketchLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/SketchLayer/) in a [MapView](https://developers.arcgis.com/javascript/latest/references/core/views/MapView/).
11
+ *
12
+ * @since 5.2
13
+ * @see [SketchLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/SketchLayer/)
14
+ */
15
+ export default abstract class SketchLayerView extends LayerView {
16
+ /** The layer being viewed. */
17
+ get layer(): SketchLayer;
18
+ /**
19
+ * Highlights graphics in the layer view.
20
+ *
21
+ * @param target - The graphics or object IDs to highlight.
22
+ * @param options - Options for the highlight.
23
+ * @returns A handle to remove the highlight.
24
+ * @since 5.2
25
+ */
26
+ abstract highlight(target: Graphic | Graphic[] | ObjectId | ObjectId[], options?: LayerViewHighlightOptions): ResourceHandle;
27
+ /**
28
+ * Returns the [graphics](https://developers.arcgis.com/javascript/latest/references/core/Graphic/) available for drawing in the layer view.
29
+ *
30
+ * @returns A [Collection](https://developers.arcgis.com/javascript/latest/references/core/core/Collection/) of graphics available in the layer view.
31
+ * @since 5.2
32
+ */
33
+ abstract queryGraphics(): Promise<Collection<Graphic>>;
34
+ }
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import e from"./LayerView.js";class t extends e{constructor(){super(...arguments),this.layer=null}}export{t as default};
@@ -8,8 +8,9 @@
8
8
  */
9
9
  export interface LayerViewHighlightOptions {
10
10
  /**
11
- * The [HighlightOptions.name](https://developers.arcgis.com/javascript/latest/references/core/views/support/HighlightOptions/#name) of the highlight options from the view's [View.highlights](https://developers.arcgis.com/javascript/latest/references/core/views/View/#highlights) collection.
12
- * If a `name` is provided, the corresponding highlight options will be applied to the feature(s). Otherwise, the `default` highlight options will be used.
11
+ * The [HighlightOptions.name](https://developers.arcgis.com/javascript/latest/references/core/views/support/HighlightOptions/#name) of the highlight options from the view's
12
+ * [View.highlights](https://developers.arcgis.com/javascript/latest/references/core/views/View/#highlights) collection. If a `name` is provided, the corresponding highlight options will be
13
+ * applied to the feature(s). Otherwise, the `default` highlight options will be used.
13
14
  *
14
15
  * @since 5.0
15
16
  */
@@ -54,7 +54,7 @@ export type SelectableLayerSourceUnion = SelectableLayer | SubtypeSublayer | Sel
54
54
  *
55
55
  * @since 5.1
56
56
  */
57
- export type SelectionSource = SelectableLayerSourceUnion | SelectableLayerView | FeatureLikeLayerView | GraphicsLayer;
57
+ export type SelectionSource = SelectableLayerSourceUnion | SelectableLayerView | FeatureLikeLayerView;
58
58
 
59
59
  /**
60
60
  * Types of views supported by a selection operation.
@@ -207,12 +207,23 @@ export interface SelectableLayerWithObjectIds extends SelectableLayerBase {
207
207
  queryFeatures(query?: Query, requestOptions?: RequestOptions): Promise<FeatureSet>;
208
208
  }
209
209
 
210
+ /**
211
+ * Layer type narrowed to those that contain graphics.
212
+ * Includes GraphicsLayer and SketchLayer.
213
+ *
214
+ * @since 5.0
215
+ */
216
+ export interface SelectableLayerWithGraphics extends SelectableLayerBase {
217
+ /** A collection of graphics in the layer. */
218
+ graphics: Collection<Graphic>;
219
+ }
220
+
210
221
  /**
211
222
  * A selectable layer which can either be layers containing object IDs or layers with graphics.
212
223
  *
213
224
  * @since 5.0
214
225
  */
215
- export type SelectableLayer = SelectableLayerWithObjectIds | GraphicsLayer | SketchLayer;
226
+ export type SelectableLayer = SelectableLayerWithObjectIds | SelectableLayerWithGraphics;
216
227
 
217
228
  /**
218
229
  * The underlying base type for selectable layer views which contains common properties and methods for both layer views with graphics and layer views with object IDs.
@@ -259,11 +270,11 @@ export interface SelectableLayerViewWithGraphics extends SelectableLayerViewBase
259
270
  */
260
271
  layer: GraphicsLayer | SketchLayer;
261
272
  /**
262
- * Queries for [graphics](https://developers.arcgis.com/javascript/latest/references/core/Graphic/) from the layer view when supported.
273
+ * Queries for [graphics](https://developers.arcgis.com/javascript/latest/references/core/Graphic/) from the layer view.
263
274
  *
264
275
  * @since 5.1
265
276
  */
266
- queryGraphics?: () => Promise<Collection<Graphic>>;
277
+ queryGraphics: () => Promise<Collection<Graphic>>;
267
278
  }
268
279
 
269
280
  /**
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../../core/Collection.js";import{Loadable as n,isLoadable as r}from"../../core/Loadable.js";import{watch as i,on as a,when as o}from"../../core/reactiveUtils.js";import{property as s,subclass as c}from"../../core/accessorSupport/decorators.js";import{canProjectWithoutEngine as l,isLoaded as u,load as d}from"../../geometry/projectionUtils.js";import{equals as f}from"../../geometry/support/spatialReferenceUtils.js";import{isLinkChartView as p}from"../../linkChart/guards.js";import{basemapEnsureType as m}from"../../support/basemapEnsureType.js";import{contentEquals as h}from"../../support/basemapUtils.js";import{default3DCompatibility as g,default2DCompatibility as _}from"./support/basemapCompatibilityUtils.js";import v from"./support/BasemapGalleryItem.js";import y from"./support/LocalBasemapsSource.js";import b from"./support/PortalBasemapsSource.js";const x=t.ofType(v);function S(e){return e&&e.declaredClass===`esri.portal.Portal`}function C(e){return e&&!(e instanceof b)&&(!!e.portal||!!e.query)}function w(e){return e&&`basemaps`in e&&`state`in e&&`refresh`in e}let T=class extends n{constructor(e){super(e),this._loadingProjectionEngine=!1,this.items=new x,this.view=null,this.source=new b}initialize(){let e=()=>this._recreateItems();this.addHandles([i(()=>this.state===`ready`?this.compatibilityFunction:null,()=>this._updateItems()),a(()=>this.source?.basemaps,`change`,e,{onListenerAdd:e}),o(()=>this.view,()=>{this.source instanceof b&&(this.source.viewType=this.view?.type)},{once:!0})])}destroy(){let e=this.source.basemaps.find(e=>e===this.activeBasemap);e&&this.source.basemaps.remove(e),this.source?.destroy()}get activeBasemap(){return this.view?.map?.basemap??null}set activeBasemap(e){let t=this.view;if(!t?.map)return;if(e=m(e),!e||!t.ready){t.map.basemap=e,this._clearOverride(`activeBasemap`);return}let n=e.spatialReference||this.items?.find(t=>this.basemapEquals(e,t.basemap))?.spatialReference;if(n&&`spatialReferenceLocked`in t&&!t.spatialReferenceLocked){let r=t.spatialReference;if(n!=null&&!f(r,n)&&!l(t.spatialReference,n)&&!u()){this._override(`activeBasemap`,e),this._loadingProjectionEngine=!0,d().then(()=>{this._get(`activeBasemap`)===e&&(t.map.basemap=e,t.spatialReference=n,this._clearOverride(`activeBasemap`))},()=>{}).then(()=>{this._loadingProjectionEngine=!1});return}t.map.basemap=e,this._clearOverride(`activeBasemap`),n!=null&&!f(t.spatialReference,n)&&(t.spatialReference=n)}else t.map.basemap=e,this._clearOverride(`activeBasemap`)}get activeBasemapIndex(){let{state:e,activeBasemap:t}=this;return e===`ready`?this._findBasemapIndex(t):-1}get compatibilityFunction(){return this.view?.type===`3d`?g:_}set compatibilityFunction(e){this._overrideIfSome(`compatibilityFunction`,e)}get source(){return this._get(`source`)}set source(e){(Array.isArray(e)||t.isCollection(e))&&(e=new y({basemaps:Array.isArray(e)?new t(e):e})),S(e)&&(e=new b({portal:e})),C(e)&&(e=new b(e)),w(e)||(e=null),this._set(`source`,e)}get state(){return!this.view?.ready||!this.source?`disabled`:p(this.view)&&!this.view.inGeographicLayout?`unsupported`:this._loadingProjectionEngine?`loading`:`ready`}basemapEquals(e,t){return h(e,t)}refresh(){this._recreateItems()}load(){return this.loadSource()}loadSource(e){return this.addResolvingPromise(r(this.source)?this.source.load(e):null),Promise.resolve(this)}_findBasemapIndex(e){let{items:t}=this,n=t.findIndex(t=>t.basemap===e);return n===-1?t.findIndex(t=>this.basemapEquals(t.basemap,e)):n}_recreateItems(){let e=this.source?.basemaps??[],{view:t,compatibilityFunction:n}=this,r=new Map(this.items.map(e=>[e.basemap,e])),i=e.map(e=>{let i=r.get(e);return i?(r.delete(e),i):new v({basemap:e,compatibilityFunction:n,view:t})});this.items.removeAll(),this.items.addMany(i),r.forEach(e=>e.destroy())}_updateItems(){for(let e of this.items)e.compatibilityFunction=this.compatibilityFunction,e.view=this.view}};e([s()],T.prototype,`_loadingProjectionEngine`,void 0),e([s()],T.prototype,`activeBasemap`,null),e([s({readOnly:!0})],T.prototype,`activeBasemapIndex`,null),e([s()],T.prototype,`compatibilityFunction`,null),e([s({readOnly:!0,type:x})],T.prototype,`items`,void 0),e([s()],T.prototype,`source`,null),e([s({readOnly:!0})],T.prototype,`state`,null),e([s()],T.prototype,`view`,void 0),T=e([c(`esri.widgets.BasemapGallery.BasemapGalleryViewModel`)],T);const E=T;export{E as default};
2
+ import{__decorate as e}from"tslib";import t from"../../core/Collection.js";import{deprecatedModule as n}from"../../core/deprecate.js";import{Loadable as r,isLoadable as i}from"../../core/Loadable.js";import a from"../../core/Logger.js";import{watch as o,on as s,when as c}from"../../core/reactiveUtils.js";import{property as l,subclass as u}from"../../core/accessorSupport/decorators.js";import{canProjectWithoutEngine as d,isLoaded as f,load as p}from"../../geometry/projectionUtils.js";import{equals as m}from"../../geometry/support/spatialReferenceUtils.js";import{isLinkChartView as h}from"../../linkChart/guards.js";import{basemapEnsureType as g}from"../../support/basemapEnsureType.js";import{contentEquals as _}from"../../support/basemapUtils.js";import{default3DCompatibility as v,default2DCompatibility as y}from"./support/basemapCompatibilityUtils.js";import b from"./support/BasemapGalleryItem.js";import x from"./support/LocalBasemapsSource.js";import S from"./support/PortalBasemapsSource.js";const C=t.ofType(b);function w(e){return e&&e.declaredClass===`esri.portal.Portal`}function T(e){return e&&!(e instanceof S)&&(!!e.portal||!!e.query)}function E(e){return e&&`basemaps`in e&&`state`in e&&`refresh`in e}let D=class extends r{constructor(e){super(e),this._loadingProjectionEngine=!1,this.items=new C,this.view=null,e?.suppressDeprecationWarning||n(a.getLogger(this),`esri.widgets.BasemapGallery.BasemapGalleryViewModel`,{version:`5.2`,replacement:`Use the @arcgis/core/basemaps/BasemapCollection class instead.`,warnOnce:!0}),this.source=new S}normalizeCtorArgs(e={}){let{suppressDeprecationWarning:t,...n}=e;return n}initialize(){let e=()=>this._recreateItems();this.addHandles([o(()=>this.state===`ready`?this.compatibilityFunction:null,()=>this._updateItems()),s(()=>this.source?.basemaps,`change`,e,{onListenerAdd:e}),c(()=>this.view,()=>{this.source instanceof S&&(this.source.viewType=this.view?.type)},{once:!0})])}destroy(){let e=this.source.basemaps.find(e=>e===this.activeBasemap);e&&this.source.basemaps.remove(e),this.source?.destroy()}get activeBasemap(){return this.view?.map?.basemap??null}set activeBasemap(e){let t=this.view;if(!t?.map)return;if(e=g(e),!e||!t.ready){t.map.basemap=e,this._clearOverride(`activeBasemap`);return}let n=e.spatialReference||this.items?.find(t=>this.basemapEquals(e,t.basemap))?.spatialReference;if(n&&`spatialReferenceLocked`in t&&!t.spatialReferenceLocked){let r=t.spatialReference;if(n!=null&&!m(r,n)&&!d(t.spatialReference,n)&&!f()){this._override(`activeBasemap`,e),this._loadingProjectionEngine=!0,p().then(()=>{this._get(`activeBasemap`)===e&&(t.map.basemap=e,t.spatialReference=n,this._clearOverride(`activeBasemap`))},()=>{}).then(()=>{this._loadingProjectionEngine=!1});return}t.map.basemap=e,this._clearOverride(`activeBasemap`),n!=null&&!m(t.spatialReference,n)&&(t.spatialReference=n)}else t.map.basemap=e,this._clearOverride(`activeBasemap`)}get activeBasemapIndex(){let{state:e,activeBasemap:t}=this;return e===`ready`?this._findBasemapIndex(t):-1}get compatibilityFunction(){return this.view?.type===`3d`?v:y}set compatibilityFunction(e){this._overrideIfSome(`compatibilityFunction`,e)}get source(){return this._get(`source`)}set source(e){(Array.isArray(e)||t.isCollection(e))&&(e=new x({basemaps:Array.isArray(e)?new t(e):e})),w(e)&&(e=new S({portal:e})),T(e)&&(e=new S(e)),E(e)||(e=null),this._set(`source`,e)}get state(){return!this.view?.ready||!this.source?`disabled`:h(this.view)&&!this.view.inGeographicLayout?`unsupported`:this._loadingProjectionEngine?`loading`:`ready`}basemapEquals(e,t){return _(e,t)}refresh(){this._recreateItems()}load(){return this.loadSource()}loadSource(e){return this.addResolvingPromise(i(this.source)?this.source.load(e):null),Promise.resolve(this)}_findBasemapIndex(e){let{items:t}=this,n=t.findIndex(t=>t.basemap===e);return n===-1?t.findIndex(t=>this.basemapEquals(t.basemap,e)):n}_recreateItems(){let e=this.source?.basemaps??[],{view:t,compatibilityFunction:n}=this,r=new Map(this.items.map(e=>[e.basemap,e])),i=e.map(e=>{let i=r.get(e);return i?(r.delete(e),i):new b({basemap:e,compatibilityFunction:n,view:t})});this.items.removeAll(),this.items.addMany(i),r.forEach(e=>e.destroy())}_updateItems(){for(let e of this.items)e.compatibilityFunction=this.compatibilityFunction,e.view=this.view}};e([l()],D.prototype,`_loadingProjectionEngine`,void 0),e([l()],D.prototype,`activeBasemap`,null),e([l({readOnly:!0})],D.prototype,`activeBasemapIndex`,null),e([l()],D.prototype,`compatibilityFunction`,null),e([l({readOnly:!0,type:C})],D.prototype,`items`,void 0),e([l()],D.prototype,`source`,null),e([l({readOnly:!0})],D.prototype,`state`,null),e([l()],D.prototype,`view`,void 0),D=e([u(`esri.widgets.BasemapGallery.BasemapGalleryViewModel`)],D);const O=D;export{O as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{getAssetUrl as t}from"../assets.js";import{deprecateWidget as n}from"../core/deprecate.js";import r from"../core/Logger.js";import{when as i}from"../core/reactiveUtils.js";import{property as a,subclass as o}from"../core/accessorSupport/decorators.js";import{getBasemapThumbnailUrl as s,isBasemap3D as c,isBasemapInPreview as l,isBasemapInBeta as u}from"../support/basemapUtils.js";import d from"./Widget.js";import f from"./BasemapGallery/BasemapGalleryViewModel.js";import{css as p}from"./BasemapGallery/css.js";import{loadCalciteComponents as m}from"./support/componentsUtils.js";import{globalCss as h}from"./support/globalCss.js";import{Heading as g}from"./support/Heading.js";import{messageBundle as _,accessibleHandler as v,tsx as y}from"./support/widget.js";let b=class extends d{constructor(e,t){super(e,t),this.disabled=!1,this.headingLevel=2,this.messages=null,this.viewModel=new f,this._focusBasemapItemEnabled=!1,n(r.getLogger(this),`Basemap Gallery`,`arcgis-basemap-gallery`,{version:`4.32`})}initialize(){this.addHandles(i(()=>this.source,()=>this.viewModel.loadSource(),{sync:!0,initial:!0}))}loadDependencies(){return m({scrim:()=>import(`@esri/calcite-components/dist/components/calcite-scrim`),chip:()=>import(`@esri/calcite-components/dist/components/calcite-chip`)})}get activeBasemap(){return this.viewModel.activeBasemap}set activeBasemap(e){this.viewModel.activeBasemap=e}get icon(){return`basemap`}set icon(e){this._overrideIfSome(`icon`,e)}get label(){return this.messages?.widgetLabel??``}set label(e){this._overrideIfSome(`label`,e)}get source(){return this.viewModel.source}set source(e){this.viewModel.source=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}render(){let e=this.source.state===`loading`,t=this.disabled||this.viewModel.state===`disabled`,n={[p.sourceLoading]:e,[h.disabled]:t};return y(`div`,{class:this.classes(p.base,h.widget,h.panel,n),key:`container`},this._getContext())}_getContext(){if(this.viewModel.state===`unsupported`)return y(`div`,{class:h.empty,key:`empty-message`},y(g,{level:this.headingLevel},this.messages.unsupported));if(this.source.state===`loading`)return y(`div`,{class:p.loader,key:`loader`});let e=this.viewModel.items;return e.length>0?y(`ul`,{"aria-disabled":this.disabled,"aria-label":this.label,bind:this,class:p.itemContainer,key:`item-container`,role:`radiogroup`,onkeydown:this._handleKeyDown},e.map((e,t)=>this._renderBasemapGalleryItem(e,t)).toArray()):y(`div`,{class:h.empty,key:`empty-message`},y(g,{level:this.headingLevel},this.messages.noBasemaps))}_getRoundRobinIndex(e,t){return(e+t)%t}_handleKeyDown(e){let{key:t}=e;if(![`ArrowUp`,`ArrowDown`,`ArrowRight`,`ArrowLeft`].includes(t))return;e.preventDefault();let{items:n,activeBasemapIndex:r}=this.viewModel,i=t===`ArrowUp`||t===`ArrowLeft`?this._getRoundRobinIndex(Math.max(r-1,-1),n.length):this._getRoundRobinIndex(r+1,n.length),a=n.at(i);a?.state===`ready`&&(this.viewModel.activeBasemap=a.basemap),this._focusBasemapItemEnabled=!0}_focusBasemapItem(e){this._focusBasemapItemEnabled&&e.tabIndex===0&&(e.focus(),this._focusBasemapItemEnabled=!1)}_handleClick(e){let t=e.currentTarget[`data-item`];t.state===`ready`&&(this.viewModel.activeBasemap=t.basemap)}_renderBasemapGalleryItem(e,n){let r=s(e.basemap)||t(`esri/themes/base/images/basemap-toggle-64.svg`),i=e.basemap.title,a=e.basemap.portalItem?.snippet,o=e.error?.message||a||i,{viewModel:{state:l,activeBasemapIndex:u}}=this,d=this.disabled||l===`disabled`,f=u===n,m=f||u===-1&&n===0?0:-1,g=l===`loading`,_={[p.selectedItem]:f,[p.itemError]:e.state===`error`},v=`basemapgallery-item-${e.uid}`;return y(`li`,{afterUpdate:this._focusBasemapItem,"aria-checked":f.toString(),"aria-disabled":d.toString(),"aria-labelledby":v,bind:this,class:this.classes(p.item,_),"data-item":e,key:e.uid,role:`radio`,tabIndex:m,title:o,onclick:this._handleClick,onkeydown:this._handleClick},y(`img`,{alt:``,class:p.itemThumbnail,src:r}),y(`div`,{class:p.itemContent,key:`content`},y(`div`,{class:p.itemTitle,key:`title`},y(`span`,{id:v},i)),c(e.basemap)?this._renderTags(e.basemap):null),e.state===`loading`||f&&g?y(`calcite-scrim`,null,y(`span`,{"aria-hidden":`true`,class:h.loaderAnimation,key:`loader`,role:`presentation`})):null)}_renderTags(e){return y(`div`,{class:p.itemTagsContainer,key:`tag`},this._render3DTag(),u(e)?this._renderBetaTag():null,l(e)?this._renderPreviewTag():null)}_render3DTag(){let{messages:e}=this;return y(`calcite-chip`,{key:`tag-3d`,label:e.tag3D,scale:`s`},this.messages.tag3D)}_renderBetaTag(){let{messages:e}=this;return y(`calcite-chip`,{appearance:`outline-fill`,key:`tag-beta`,label:e.tagBeta,scale:`s`},this.messages.tagBeta)}_renderPreviewTag(){let{messages:e}=this;return y(`calcite-chip`,{appearance:`outline-fill`,key:`tag-preview`,label:e.tagPreview,scale:`s`},this.messages.tagPreview)}};e([a()],b.prototype,`activeBasemap`,null),e([a()],b.prototype,`disabled`,void 0),e([a()],b.prototype,`headingLevel`,void 0),e([a()],b.prototype,`icon`,null),e([a()],b.prototype,`label`,null),e([a(),_(`esri/widgets/BasemapGallery/t9n/BasemapGallery`)],b.prototype,`messages`,void 0),e([a()],b.prototype,`source`,null),e([a()],b.prototype,`view`,null),e([a({type:f})],b.prototype,`viewModel`,void 0),e([a()],b.prototype,`_focusBasemapItemEnabled`,void 0),e([v()],b.prototype,`_handleClick`,null),b=e([o(`esri.widgets.BasemapGallery`)],b);const x=b;export{x as default};
2
+ import{__decorate as e}from"tslib";import{getAssetUrl as t}from"../assets.js";import{deprecateWidget as n}from"../core/deprecate.js";import r from"../core/Logger.js";import{when as i}from"../core/reactiveUtils.js";import{property as a,subclass as o}from"../core/accessorSupport/decorators.js";import{getBasemapThumbnailUrl as s,isBasemap3D as c,isBasemapInPreview as l,isBasemapInBeta as u}from"../support/basemapUtils.js";import d from"./Widget.js";import f from"./BasemapGallery/BasemapGalleryViewModel.js";import{css as p}from"./BasemapGallery/css.js";import{loadCalciteComponents as m}from"./support/componentsUtils.js";import{globalCss as h}from"./support/globalCss.js";import{Heading as g}from"./support/Heading.js";import{messageBundle as _,accessibleHandler as v,tsx as y}from"./support/widget.js";let b=class extends d{constructor(e,t){super(e,t),this.disabled=!1,this.headingLevel=2,this.messages=null,this.viewModel=new f({suppressDeprecationWarning:!0}),this._focusBasemapItemEnabled=!1,n(r.getLogger(this),`Basemap Gallery`,`arcgis-basemap-gallery`,{version:`4.32`})}initialize(){this.addHandles(i(()=>this.source,()=>this.viewModel.loadSource(),{sync:!0,initial:!0}))}loadDependencies(){return m({scrim:()=>import(`@esri/calcite-components/dist/components/calcite-scrim`),chip:()=>import(`@esri/calcite-components/dist/components/calcite-chip`)})}get activeBasemap(){return this.viewModel.activeBasemap}set activeBasemap(e){this.viewModel.activeBasemap=e}get icon(){return`basemap`}set icon(e){this._overrideIfSome(`icon`,e)}get label(){return this.messages?.widgetLabel??``}set label(e){this._overrideIfSome(`label`,e)}get source(){return this.viewModel.source}set source(e){this.viewModel.source=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}render(){let e=this.source.state===`loading`,t=this.disabled||this.viewModel.state===`disabled`,n={[p.sourceLoading]:e,[h.disabled]:t};return y(`div`,{class:this.classes(p.base,h.widget,h.panel,n),key:`container`},this._getContext())}_getContext(){if(this.viewModel.state===`unsupported`)return y(`div`,{class:h.empty,key:`empty-message`},y(g,{level:this.headingLevel},this.messages.unsupported));if(this.source.state===`loading`)return y(`div`,{class:p.loader,key:`loader`});let e=this.viewModel.items;return e.length>0?y(`ul`,{"aria-disabled":this.disabled,"aria-label":this.label,bind:this,class:p.itemContainer,key:`item-container`,role:`radiogroup`,onkeydown:this._handleKeyDown},e.map((e,t)=>this._renderBasemapGalleryItem(e,t)).toArray()):y(`div`,{class:h.empty,key:`empty-message`},y(g,{level:this.headingLevel},this.messages.noBasemaps))}_getRoundRobinIndex(e,t){return(e+t)%t}_handleKeyDown(e){let{key:t}=e;if(![`ArrowUp`,`ArrowDown`,`ArrowRight`,`ArrowLeft`].includes(t))return;e.preventDefault();let{items:n,activeBasemapIndex:r}=this.viewModel,i=t===`ArrowUp`||t===`ArrowLeft`?this._getRoundRobinIndex(Math.max(r-1,-1),n.length):this._getRoundRobinIndex(r+1,n.length),a=n.at(i);a?.state===`ready`&&(this.viewModel.activeBasemap=a.basemap),this._focusBasemapItemEnabled=!0}_focusBasemapItem(e){this._focusBasemapItemEnabled&&e.tabIndex===0&&(e.focus(),this._focusBasemapItemEnabled=!1)}_handleClick(e){let t=e.currentTarget[`data-item`];t.state===`ready`&&(this.viewModel.activeBasemap=t.basemap)}_renderBasemapGalleryItem(e,n){let r=s(e.basemap)||t(`esri/themes/base/images/basemap-toggle-64.svg`),i=e.basemap.title,a=e.basemap.portalItem?.snippet,o=e.error?.message||a||i,{viewModel:{state:l,activeBasemapIndex:u}}=this,d=this.disabled||l===`disabled`,f=u===n,m=f||u===-1&&n===0?0:-1,g=l===`loading`,_={[p.selectedItem]:f,[p.itemError]:e.state===`error`},v=`basemapgallery-item-${e.uid}`;return y(`li`,{afterUpdate:this._focusBasemapItem,"aria-checked":f.toString(),"aria-disabled":d.toString(),"aria-labelledby":v,bind:this,class:this.classes(p.item,_),"data-item":e,key:e.uid,role:`radio`,tabIndex:m,title:o,onclick:this._handleClick,onkeydown:this._handleClick},y(`img`,{alt:``,class:p.itemThumbnail,src:r}),y(`div`,{class:p.itemContent,key:`content`},y(`div`,{class:p.itemTitle,key:`title`},y(`span`,{id:v},i)),c(e.basemap)?this._renderTags(e.basemap):null),e.state===`loading`||f&&g?y(`calcite-scrim`,null,y(`span`,{"aria-hidden":`true`,class:h.loaderAnimation,key:`loader`,role:`presentation`})):null)}_renderTags(e){return y(`div`,{class:p.itemTagsContainer,key:`tag`},this._render3DTag(),u(e)?this._renderBetaTag():null,l(e)?this._renderPreviewTag():null)}_render3DTag(){let{messages:e}=this;return y(`calcite-chip`,{key:`tag-3d`,label:e.tag3D,scale:`s`},this.messages.tag3D)}_renderBetaTag(){let{messages:e}=this;return y(`calcite-chip`,{appearance:`outline-fill`,key:`tag-beta`,label:e.tagBeta,scale:`s`},this.messages.tagBeta)}_renderPreviewTag(){let{messages:e}=this;return y(`calcite-chip`,{appearance:`outline-fill`,key:`tag-preview`,label:e.tagPreview,scale:`s`},this.messages.tagPreview)}};e([a()],b.prototype,`activeBasemap`,null),e([a()],b.prototype,`disabled`,void 0),e([a()],b.prototype,`headingLevel`,void 0),e([a()],b.prototype,`icon`,null),e([a()],b.prototype,`label`,null),e([a(),_(`esri/widgets/BasemapGallery/t9n/BasemapGallery`)],b.prototype,`messages`,void 0),e([a()],b.prototype,`source`,null),e([a()],b.prototype,`view`,null),e([a({type:f})],b.prototype,`viewModel`,void 0),e([a()],b.prototype,`_focusBasemapItemEnabled`,void 0),e([v()],b.prototype,`_handleClick`,null),b=e([o(`esri.widgets.BasemapGallery`)],b);const x=b;export{x as default};
@@ -7,6 +7,7 @@ import type { BookmarkProperties } from "../../webmap/Bookmark.js";
7
7
  import type { BookmarkOptions, BookmarksCapabilities } from "./types.js";
8
8
  import type { GoTo, GoToProperties } from "../support/GoTo.js";
9
9
 
10
+ /** @deprecated since version 5.2. Use the [Bookmarks component](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-bookmarks/) directly instead. */
10
11
  export interface BookmarksViewModelProperties extends GoToProperties, Partial<Pick<BookmarksViewModel, "capabilities" | "view">> {
11
12
  /** A collection of [Bookmark](https://developers.arcgis.com/javascript/latest/references/core/webmap/Bookmark/)s. */
12
13
  bookmarks?: ReadonlyArrayOrCollection<BookmarkProperties> | null;
@@ -29,6 +30,7 @@ export interface BookmarksViewModelProperties extends GoToProperties, Partial<Pi
29
30
  defaultEditOptions?: Partial<BookmarkOptions>;
30
31
  }
31
32
 
33
+ /** @deprecated since version 5.2. Use the [BookmarksState](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-bookmarks/types/#BookmarksState) instead. */
32
34
  export type BookmarksViewModelState = "ready" | "loading";
33
35
 
34
36
  /** @deprecated since version 5.0. Use the [Bookmarks component](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-bookmarks/) directly instead. */
@@ -69,11 +71,13 @@ export interface BookmarksViewModelEvents {
69
71
  "bookmark-select": BookmarksViewModelBookmarkSelectEvent;
70
72
  }
71
73
 
74
+ /** @deprecated since version 5.2. Use [BookmarkEditEvent](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-bookmarks/types/#BookmarkEditEvent) instead. */
72
75
  export interface BookmarksViewModelBookmarkEditEvent {
73
76
  /** The edited bookmark. */
74
77
  bookmark: Bookmark;
75
78
  }
76
79
 
80
+ /** @deprecated since version 5.2. Use [BookmarkSelectEvent](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-bookmarks/types/#BookmarkSelectEvent) instead. */
77
81
  export interface BookmarksViewModelBookmarkSelectEvent {
78
82
  /** The bookmark selected by the user. */
79
83
  bookmark: Bookmark;
@@ -1,6 +1,9 @@
1
1
  import type Accessor from "../../core/Accessor.js";
2
2
 
3
- /** @since 5.0 */
3
+ /**
4
+ * @deprecated since version 5.2. Use the [Bookmarks component](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-bookmarks/) directly instead.
5
+ * @since 5.0
6
+ */
4
7
  export interface BookmarksVisibleElementsProperties extends Partial<Pick<BookmarksVisibleElements, "addBookmarkButton" | "closeButton" | "collapseButton" | "editBookmarkButton" | "filter" | "flow" | "heading" | "thumbnail" | "time">> {}
5
8
 
6
9
  /**
@@ -9,6 +12,7 @@ export interface BookmarksVisibleElementsProperties extends Partial<Pick<Bookmar
9
12
  *
10
13
  * ![bookmarks-visibleElements](https://developers.arcgis.com/javascript/latest/assets/references/core/widgets/bookmarks-visibleElements.avif)
11
14
  *
15
+ * @deprecated since version 5.2. Use the `show` and `hide` properties on the [Bookmarks component](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-bookmarks/) directly instead.
12
16
  * @since 5.0
13
17
  */
14
18
  export default class BookmarksVisibleElements extends Accessor {
@@ -3,6 +3,7 @@ import type { UserSettings } from "../../views/types.js";
3
3
  /**
4
4
  * Specifies how bookmarks will be created or modified.
5
5
  *
6
+ * @deprecated since 5.2. Use the [Bookmarks component's BookmarkOptions type](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-bookmarks/types/#BookmarkOptions) instead.
6
7
  * @since 5.0
7
8
  */
8
9
  export interface BookmarkOptions {
@@ -50,6 +51,7 @@ export interface BookmarkOptions {
50
51
  /**
51
52
  * Specifies the abilities for the Bookmarks widget.
52
53
  *
54
+ * @deprecated since 5.2. Use the [Bookmarks component's timeDisabled property](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-bookmarks/#timeDisabled) instead.
53
55
  * @since 5.0
54
56
  */
55
57
  export interface BookmarksCapabilities {