@arcgis/core 4.34.0-next.36 → 4.34.0-next.37

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 (613) hide show
  1. package/AttributeBinsGraphic.js +1 -1
  2. package/Basemap.js +1 -1
  3. package/Camera.js +1 -1
  4. package/CameraLayout.js +1 -1
  5. package/Graphic.js +1 -1
  6. package/Ground.js +1 -1
  7. package/Map.js +1 -1
  8. package/PopupTemplate.js +1 -1
  9. package/WebDocument2D.js +1 -1
  10. package/WebScene.js +1 -1
  11. package/analysis/Analysis.js +1 -1
  12. package/analysis/DimensionSimpleStyle.js +1 -1
  13. package/analysis/ElevationProfileLine.js +1 -1
  14. package/analysis/ElevationProfileLineChartOptions.js +1 -1
  15. package/analysis/ElevationProfileLineViewOptions.js +1 -1
  16. package/analysis/ElevationProfileUnits.js +1 -1
  17. package/analysis/LengthDimension.js +1 -1
  18. package/analysis/LineOfSightAnalysisObserver.js +1 -1
  19. package/analysis/LineOfSightAnalysisTarget.js +1 -1
  20. package/analysis/SlicePlane.js +1 -1
  21. package/analysis/Viewshed.js +1 -1
  22. package/analysis/VolumeMeasurement/CutFillOptions.js +1 -1
  23. package/analysis/support/AnalysisOriginWebScene.js +1 -1
  24. package/arcade/featureSetUtils.js +1 -1
  25. package/assets/esri/core/workers/RemoteClient.js +1 -1
  26. package/assets/esri/core/workers/chunks/02435c653064f879f547.js +1 -0
  27. package/assets/esri/core/workers/chunks/040a233ce6fbcc061cdb.js +1 -0
  28. package/assets/esri/core/workers/chunks/{4930bf8f57f481f3a4a3.js → 053086e0a043b00f1cca.js} +1 -1
  29. package/assets/esri/core/workers/chunks/05d6ccca0cf38c012873.js +1 -0
  30. package/assets/esri/core/workers/chunks/06bd2f5358c6b85d5420.js +1 -0
  31. package/assets/esri/core/workers/chunks/0801f9dde41ec5f36cca.js +1 -0
  32. package/assets/esri/core/workers/chunks/08b4a4c9f3d6478df40a.js +1 -0
  33. package/assets/esri/core/workers/chunks/0906f977d50b1c5d6ed5.js +1 -0
  34. package/assets/esri/core/workers/chunks/170fa807b71babedd185.js +1 -0
  35. package/assets/esri/core/workers/chunks/183130521210c855c565.js +1 -0
  36. package/assets/esri/core/workers/chunks/{ce8f0ed9179c0d314df8.js → 1a5ddb6d36249fe09cc8.js} +1 -1
  37. package/assets/esri/core/workers/chunks/1c87ed3a5960f8f06fc8.js +1 -0
  38. package/assets/esri/core/workers/chunks/1c8dbdb833a66f7183fc.js +1 -0
  39. package/assets/esri/core/workers/chunks/2177c0ef06c8e7e3e28e.js +1 -0
  40. package/assets/esri/core/workers/chunks/{a82d7e2eecfe654a65de.js → 21ea48186d01bf459ef6.js} +1 -1
  41. package/assets/esri/core/workers/chunks/23e0fd2d921f74834b12.js +1 -0
  42. package/assets/esri/core/workers/chunks/2b9c403f4b20b8f62804.js +1 -0
  43. package/assets/esri/core/workers/chunks/2d7bbd001b64138db3c1.js +1 -0
  44. package/assets/esri/core/workers/chunks/2f52a57e8c05a3ca1de8.js +1 -0
  45. package/assets/esri/core/workers/chunks/307df66d00ba5f88780d.js +1 -0
  46. package/assets/esri/core/workers/chunks/33aafaabea07b4f80209.js +1 -0
  47. package/assets/esri/core/workers/chunks/{209c70ba2925171ef742.js → 36d15d1dd19417b37d2f.js} +1 -1
  48. package/assets/esri/core/workers/chunks/{d6b2ab614f308db50c4a.js → 47cdd5a6351e0db3b2e9.js} +10 -10
  49. package/assets/esri/core/workers/chunks/4c7162883b228db563c6.js +1 -0
  50. package/assets/esri/core/workers/chunks/{236fc659747e812f6424.js → 4c77102f083198ae2a6a.js} +1 -1
  51. package/assets/esri/core/workers/chunks/4d2dcd667b30a98dd341.js +1 -0
  52. package/assets/esri/core/workers/chunks/4ff7c8420c77256f595a.js +1 -0
  53. package/assets/esri/core/workers/chunks/{82c10f2418e2f754388c.js → 50f56b417992eb30243e.js} +1 -1
  54. package/assets/esri/core/workers/chunks/5228f535719f5fc38b28.js +1 -0
  55. package/assets/esri/core/workers/chunks/{bd6c6acf23db2a2e8ef8.js → 53e166944a42af027345.js} +1 -1
  56. package/assets/esri/core/workers/chunks/54a686643e1ec1ea00ac.js +1 -0
  57. package/assets/esri/core/workers/chunks/568f49f9e50c505b2736.js +1 -0
  58. package/assets/esri/core/workers/chunks/56aafa6f8862629070d8.js +1 -0
  59. package/assets/esri/core/workers/chunks/5c5509147bda78ce338a.js +1 -0
  60. package/assets/esri/core/workers/chunks/{9742804f8ee350bf8052.js → 5c5678b15b59f9964bf0.js} +1 -1
  61. package/assets/esri/core/workers/chunks/5cdeb6dc72f452d6d1bc.js +1 -0
  62. package/assets/esri/core/workers/chunks/5d4e74eb4c659e8f42d6.js +1 -0
  63. package/assets/esri/core/workers/chunks/5fac0b2a5aa33e8a3a84.js +1 -0
  64. package/assets/esri/core/workers/chunks/64553b5eae4edc7f46dc.js +1 -0
  65. package/assets/esri/core/workers/chunks/67627b1965b27b2f1857.js +1 -0
  66. package/assets/esri/core/workers/chunks/{0e7e4426daba4a008849.js → 68edbc3b124eb8e28dd6.js} +1 -1
  67. package/assets/esri/core/workers/chunks/69dc5a7abc1fda2474ad.js +1 -0
  68. package/assets/esri/core/workers/chunks/{d6eff6cc30acdca04835.js → 6c167daf115cd6abb3e5.js} +1 -1
  69. package/assets/esri/core/workers/chunks/6f122e4a2a1f913523b4.js +1 -0
  70. package/assets/esri/core/workers/chunks/{1dc410bc070cabb7198d.js → 72e0fda211d980572292.js} +1 -1
  71. package/assets/esri/core/workers/chunks/761dab8780495286ec4e.js +1 -0
  72. package/assets/esri/core/workers/chunks/7641e24ffa0215d51c34.js +1 -0
  73. package/assets/esri/core/workers/chunks/7e9d5beca1991c961ed8.js +1 -0
  74. package/assets/esri/core/workers/chunks/826e4bf6374f324d7f19.js +1 -0
  75. package/assets/esri/core/workers/chunks/{69d44e08861fb8cdd954.js → 82de1b50ae286f1e6c44.js} +1 -1
  76. package/assets/esri/core/workers/chunks/860bd6d6f0c74ca301a4.js +1 -0
  77. package/assets/esri/core/workers/chunks/8e7dced4a8d089185c3a.js +1 -0
  78. package/assets/esri/core/workers/chunks/{7d25f57299c642e727a6.js → 938baf4f99332dfdf29d.js} +1 -1
  79. package/assets/esri/core/workers/chunks/9a4d0006c118ae5b45c0.js +1 -0
  80. package/assets/esri/core/workers/chunks/a1591d7f82e06cab5de4.js +1 -0
  81. package/assets/esri/core/workers/chunks/a76792c4edd1d688fba2.js +1 -0
  82. package/assets/esri/core/workers/chunks/ada46055fafb8ae21dbe.js +1 -0
  83. package/assets/esri/core/workers/chunks/{9f43736d6d80c8e858b2.js → ae667084cb6a08b97c37.js} +1 -1
  84. package/assets/esri/core/workers/chunks/{0550e775677597f3752c.js → afb51b8562f8cb29b97e.js} +1 -1
  85. package/assets/esri/core/workers/chunks/{b00ad853fa4826d0ceb3.js → b12c44faa1efa60067b0.js} +1 -1
  86. package/assets/esri/core/workers/chunks/{c9fe9792312f0161ef5a.js → b1b6300451cc4ccefd46.js} +1 -1
  87. package/assets/esri/core/workers/chunks/b2f2c1108fb7cbdd1a68.js +1 -0
  88. package/assets/esri/core/workers/chunks/{37bfc1a771792b6697fd.js → b3466edccd553ae0a5d0.js} +2 -2
  89. package/assets/esri/core/workers/chunks/b45dbbeae54cea2bbc10.js +1 -0
  90. package/assets/esri/core/workers/chunks/b49b73e2d0d643dfa351.js +1 -0
  91. package/assets/esri/core/workers/chunks/b810e2f87c9c59ae04b1.js +1 -0
  92. package/assets/esri/core/workers/chunks/{20a96c17d1a117dfdf77.js → b8c1a08020d44ee03a17.js} +1 -1
  93. package/assets/esri/core/workers/chunks/bb0c5275e51d170ac795.js +1 -0
  94. package/assets/esri/core/workers/chunks/{7a4730c1e6a5355b7a05.js → bb1213adeb05d89fbfdb.js} +1 -1
  95. package/assets/esri/core/workers/chunks/bd1ba44362b967977003.js +1 -0
  96. package/assets/esri/core/workers/chunks/c18ac2018aea6ba97eec.js +1 -0
  97. package/assets/esri/core/workers/chunks/c3d3e55abf01dae271fb.js +1 -0
  98. package/assets/esri/core/workers/chunks/c5c9f0c8da5f7bf41728.js +1 -0
  99. package/assets/esri/core/workers/chunks/c78d98ab82f31ddda362.js +1 -0
  100. package/assets/esri/core/workers/chunks/ca5f63c0297612059486.js +1 -0
  101. package/assets/esri/core/workers/chunks/cab294fd04f2a5eda81d.js +1 -0
  102. package/assets/esri/core/workers/chunks/cca36750c86352c6d1f9.js +1 -0
  103. package/assets/esri/core/workers/chunks/ccf3f29d0b1bde90c3cf.js +1 -0
  104. package/assets/esri/core/workers/chunks/cd9e6b86ab0103044370.js +1 -0
  105. package/assets/esri/core/workers/chunks/ce211163d078d3d742ce.js +1 -0
  106. package/assets/esri/core/workers/chunks/{0ca8d6516323fc28dd58.js → cf1f8fd1d62be0e02e10.js} +1 -1
  107. package/assets/esri/core/workers/chunks/d16484b389d56a43d204.js +1 -0
  108. package/assets/esri/core/workers/chunks/d54e18e0f30734610f35.js +1 -0
  109. package/assets/esri/core/workers/chunks/d7ec905d87a19a1061e7.js +1 -0
  110. package/assets/esri/core/workers/chunks/{e9a366c225b0687293e3.js → d80e26a1f4a61b1c4cf9.js} +1 -1
  111. package/assets/esri/core/workers/chunks/{eec36628e638e244f452.js → ddeaf688d72b2873c4ac.js} +1 -1
  112. package/assets/esri/core/workers/chunks/debd832b6c2c0b2ea362.js +1 -0
  113. package/assets/esri/core/workers/chunks/dfa3ad5d750d7b143a06.js +1 -0
  114. package/assets/esri/core/workers/chunks/dfc5936fbbd26f27a92a.js +1 -0
  115. package/assets/esri/core/workers/chunks/e01fa6389bd0b1ae51a5.js +1 -0
  116. package/assets/esri/core/workers/chunks/e4d08a85d158c705aa3d.js +1 -0
  117. package/assets/esri/core/workers/chunks/e59fdb8f625e9080f097.js +1 -0
  118. package/assets/esri/core/workers/chunks/ed1cd90e899dc9c15ee3.js +1 -0
  119. package/assets/esri/core/workers/chunks/ee28cd411a93245fb90c.js +1 -0
  120. package/assets/esri/core/workers/chunks/f5bb7c90f48cae594bc3.js +1 -0
  121. package/assets/esri/core/workers/chunks/f79c9b37f2842ed88a9b.js +1 -0
  122. package/assets/esri/core/workers/chunks/f88fe2e8fbc763bdc940.js +1 -0
  123. package/assets/esri/core/workers/chunks/faa0cfee8c1de9b5b78c.js +1 -0
  124. package/assets/esri/core/workers/chunks/fae53d825dd9fef0426c.js +1 -0
  125. package/chunks/TimeInterval.js +1 -1
  126. package/chunks/languageUtils.js +1 -1
  127. package/config.js +1 -1
  128. package/core/Clonable.d.ts +1 -1
  129. package/core/Clonable.js +1 -1
  130. package/core/Collection.js +1 -1
  131. package/core/Evented.d.ts +1 -1
  132. package/core/Evented.js +1 -1
  133. package/core/Identifiable.d.ts +1 -1
  134. package/core/Identifiable.js +1 -1
  135. package/core/Loadable.d.ts +1 -1
  136. package/core/Loadable.js +1 -1
  137. package/core/loadAll.js +1 -1
  138. package/editing/sharedTemplates/SharedTemplate.js +1 -1
  139. package/editing/sharedTemplates/SharedTemplateProvider.js +1 -1
  140. package/editing/sharedTemplates/templateDefinitions/TemplateDefinitionBase.js +1 -1
  141. package/effects/FocusArea.js +1 -1
  142. package/effects/FocusAreaOutline.js +1 -1
  143. package/effects/FocusAreas.js +1 -1
  144. package/form/elements/UtilityNetworkAssociationsElement.js +1 -1
  145. package/form/elements/inputs/attachments/Input.js +1 -1
  146. package/geometry/Mesh.js +1 -1
  147. package/geometry/support/MeshComponent.js +1 -1
  148. package/geometry/support/MeshGeoreferencedVertexSpace.js +1 -1
  149. package/geometry/support/MeshLocalVertexSpace.js +1 -1
  150. package/geometry/support/MeshMaterial.js +1 -1
  151. package/geometry/support/MeshTexture.js +1 -1
  152. package/geometry/support/MeshTextureTransform.js +1 -1
  153. package/geometry/support/MeshTransform.js +1 -1
  154. package/geometry/support/MeshVertexAttributes.js +1 -1
  155. package/geometry/support/meshUtils/Metadata.js +1 -1
  156. package/graphic/GeoRSSGraphicOrigin.d.ts +4 -0
  157. package/graphic/GeoRSSGraphicOrigin.js +5 -0
  158. package/graphic/GraphicOrigin.js +1 -1
  159. package/graphic/KnowledgeGraphGraphicOrigin.d.ts +4 -0
  160. package/graphic/KnowledgeGraphGraphicOrigin.js +5 -0
  161. package/graphic/MapImageGraphicOrigin.d.ts +4 -0
  162. package/graphic/MapImageGraphicOrigin.js +5 -0
  163. package/graphic/MapNotesGraphicOrigin.d.ts +4 -0
  164. package/graphic/MapNotesGraphicOrigin.js +5 -0
  165. package/graphic/OrientedImageryGraphicOrigin.d.ts +4 -0
  166. package/graphic/OrientedImageryGraphicOrigin.js +5 -0
  167. package/graphic/ParquetGraphicOrigin.d.ts +4 -0
  168. package/graphic/ParquetGraphicOrigin.js +5 -0
  169. package/graphic/SubtypeGroupGraphicOrigin.d.ts +4 -0
  170. package/graphic/SubtypeGroupGraphicOrigin.js +5 -0
  171. package/graphic/TileGraphicOrigin.d.ts +4 -0
  172. package/graphic/TileGraphicOrigin.js +5 -0
  173. package/graphic/graphicOrigins.d.ts +8 -0
  174. package/graphic/graphicOrigins.js +1 -1
  175. package/{views/3d/terrain/RenderOrder.js → graphic/isGeoRSSGraphicOrigin.js} +1 -0
  176. package/graphic/isKnowledgeGraphGraphicOrigin.js +5 -0
  177. package/graphic/isMapImageGraphicOrigin.js +5 -0
  178. package/graphic/isMapNotesGraphicOrigin.js +5 -0
  179. package/graphic/isOrientedImageryGraphicOrigin.js +5 -0
  180. package/graphic/isParquetGraphicOrigin.js +5 -0
  181. package/graphic/isSubtypeGroupGraphicOrigin.js +5 -0
  182. package/graphic/isTileGraphicOrigin.js +5 -0
  183. package/identity/IdentityManagerBase.js +1 -1
  184. package/interfaces.d.ts +228 -0
  185. package/kernel.js +1 -1
  186. package/layers/CSVLayer.js +1 -1
  187. package/layers/FeatureLayer.js +1 -1
  188. package/layers/GeoJSONLayer.js +1 -1
  189. package/layers/ImageryLayer.js +1 -1
  190. package/layers/ImageryTileLayer.js +1 -1
  191. package/layers/Layer.js +1 -1
  192. package/layers/MapNotesLayer.js +1 -1
  193. package/layers/OGCFeatureLayer.js +1 -1
  194. package/layers/OrientedImageryLayer.js +1 -1
  195. package/layers/ParquetLayer.js +1 -1
  196. package/layers/SceneLayer.js +1 -1
  197. package/layers/StreamLayer.js +1 -1
  198. package/layers/SubtypeGroupLayer.js +1 -1
  199. package/layers/WCSLayer.js +1 -1
  200. package/layers/WFSLayer.js +1 -1
  201. package/layers/buildingSublayers/BuildingComponentSublayer.js +1 -1
  202. package/layers/buildingSublayers/BuildingSublayer.js +1 -1
  203. package/layers/graphics/data/FeatureStore.js +1 -1
  204. package/layers/graphics/sources/CSVSource.js +1 -1
  205. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  206. package/layers/graphics/sources/GeoJSONSource.js +1 -1
  207. package/layers/graphics/sources/MemorySource.js +1 -1
  208. package/layers/graphics/sources/OGCFeatureSource.js +1 -1
  209. package/layers/graphics/sources/ParquetSource.js +1 -1
  210. package/layers/graphics/sources/WFSSource.js +1 -1
  211. package/layers/knowledgeGraph/KnowledgeGraphSublayer.js +1 -1
  212. package/layers/mixins/EditBusLayer.js +1 -1
  213. package/layers/orientedImagery/core/CameraOrientationHPR.js +1 -1
  214. package/layers/orientedImagery/core/CameraOrientationLTP.js +1 -1
  215. package/layers/orientedImagery/core/CameraOrientationOPK.js +1 -1
  216. package/layers/orientedImagery/core/CameraOrientationYPR.js +1 -1
  217. package/layers/orientedImagery/core/ElevationSourceDefinitions.js +1 -1
  218. package/layers/orientedImagery/core/ExposurePoint.js +1 -1
  219. package/layers/support/BuildingSummaryStatistics.js +1 -1
  220. package/layers/support/ControlPointsGeoreference.js +1 -1
  221. package/layers/support/DisplayFilter.js +1 -1
  222. package/layers/support/DisplayFilterInfo.js +1 -1
  223. package/layers/support/EditFieldsInfo.js +1 -1
  224. package/layers/support/ExpressionInfo.js +1 -1
  225. package/layers/support/FeatureIndex.js +1 -1
  226. package/layers/support/FeatureTemplate.js +1 -1
  227. package/layers/support/FeatureType.js +1 -1
  228. package/layers/support/GeometryFieldsInfo.js +1 -1
  229. package/layers/support/GeoreferenceBase.js +1 -1
  230. package/layers/support/KMLSublayer.js +1 -1
  231. package/layers/support/LayerContingentValuesCache.js +1 -1
  232. package/layers/support/LocalMediaElementSource.js +1 -1
  233. package/layers/support/MediaElementBase.js +1 -1
  234. package/layers/support/PlaybackInfo.js +1 -1
  235. package/layers/support/Relationship.js +1 -1
  236. package/layers/support/StreamConnection.js +1 -1
  237. package/layers/support/Sublayer.js +1 -1
  238. package/layers/support/Subtype.js +1 -1
  239. package/layers/support/SubtypeSublayer.js +1 -1
  240. package/layers/support/TelemetryData.js +1 -1
  241. package/layers/support/TelemetryDisplay.js +1 -1
  242. package/layers/support/TimeInfo.js +1 -1
  243. package/layers/support/TrackInfo.js +1 -1
  244. package/layers/support/TrackPartInfo.js +1 -1
  245. package/layers/support/VideoFrame.js +1 -1
  246. package/layers/support/VideoTimeExtent.js +1 -1
  247. package/layers/support/WMSSublayer.js +1 -1
  248. package/layers/voxel/VoxelColorStop.js +1 -1
  249. package/layers/voxel/VoxelDynamicSection.js +1 -1
  250. package/layers/voxel/VoxelIsosurface.js +1 -1
  251. package/layers/voxel/VoxelOpacityStop.js +1 -1
  252. package/layers/voxel/VoxelRangeFilter.js +1 -1
  253. package/layers/voxel/VoxelSection.js +1 -1
  254. package/layers/voxel/VoxelSlice.js +1 -1
  255. package/layers/voxel/VoxelTransferFunctionStyle.js +1 -1
  256. package/layers/voxel/VoxelUniqueValue.js +1 -1
  257. package/linkChart/ChronologicalLayoutSettings.js +1 -1
  258. package/linkChart/LayoutSettings.js +1 -1
  259. package/linkChart/LinkChartProperties.js +1 -1
  260. package/linkChart/NonspatialDataDisplay.js +1 -1
  261. package/linkChart/OrganicLayoutSettings.js +1 -1
  262. package/networks/Network.js +1 -1
  263. package/networks/RulesTable.js +1 -1
  264. package/networks/UtilityNetwork.js +1 -1
  265. package/networks/support/NetworkSystemLayers.js +1 -1
  266. package/networks/support/UtilityNetworkLookupHelper.js +1 -1
  267. package/package.json +1 -1
  268. package/popup/content/AttachmentsContent.js +1 -1
  269. package/popup/content/RelationshipContent.js +1 -1
  270. package/popup/content/UtilityNetworkAssociationsContent.js +1 -1
  271. package/popup/support/AttachmentsOrderByInfo.js +1 -1
  272. package/popup/support/FieldInfoFormat.js +1 -1
  273. package/popup/support/UtilityNetworkAssociationType.js +1 -1
  274. package/portal/Portal.js +1 -1
  275. package/portal/PortalItem.js +1 -1
  276. package/renderers/PieChartRenderer.js +1 -1
  277. package/renderers/support/HeatmapLegendOptions.js +1 -1
  278. package/renderers/support/OthersCategory.js +1 -1
  279. package/renderers/support/RasterPresetRenderer.js +1 -1
  280. package/renderers/support/RendererLegendOptions.js +1 -1
  281. package/renderers/support/UniqueValue.js +1 -1
  282. package/renderers/support/UniqueValueClass.js +1 -1
  283. package/renderers/support/UniqueValueGroup.js +1 -1
  284. package/renderers/visualVariables/support/VisualVariableLegendOptions.js +1 -1
  285. package/rest/featureService/FeatureService.js +1 -1
  286. package/rest/support/AttributeBinsFeatureSet.js +1 -1
  287. package/rest/support/AttributeBinsGrouping.js +1 -1
  288. package/rest/support/AttributeBinsQuery.js +1 -1
  289. package/rest/support/BinParametersBase.js +1 -1
  290. package/rest/support/ClosestFacilityParameters.js +1 -1
  291. package/rest/support/DataLayer.js +1 -1
  292. package/rest/support/DateBinTimeInterval.js +1 -1
  293. package/rest/support/DirectionLine.js +1 -1
  294. package/rest/support/DirectionPoint.js +1 -1
  295. package/rest/support/FindImagesParameters.js +1 -1
  296. package/rest/support/FullTextSearch.js +1 -1
  297. package/rest/support/ImageBoundaryParameters.js +1 -1
  298. package/rest/support/ImageGPSInfoParameters.js +1 -1
  299. package/rest/support/ImageToMapMultirayParameters.js +1 -1
  300. package/rest/support/ImageToMapParameters.js +1 -1
  301. package/rest/support/ImageUrlParameters.js +1 -1
  302. package/rest/support/ImageVolumeParameters.js +1 -1
  303. package/rest/support/MapToImageParameters.js +1 -1
  304. package/rest/support/NetworkUrl.js +1 -1
  305. package/rest/support/PointBarrier.js +1 -1
  306. package/rest/support/PolygonBarrier.js +1 -1
  307. package/rest/support/PolylineBarrier.js +1 -1
  308. package/rest/support/RouteInfo.js +1 -1
  309. package/rest/support/RouteParameters.js +1 -1
  310. package/rest/support/ServiceAreaParameters.js +1 -1
  311. package/rest/support/Stop.js +1 -1
  312. package/rest/support/TravelMode.js +1 -1
  313. package/smartMapping/raster/support/adapters/RasterLayerAdapter.js +1 -1
  314. package/smartMapping/support/adapters/LayerAdapter.js +1 -1
  315. package/support/actions/ActionBase.js +1 -1
  316. package/support/revision.js +1 -1
  317. package/symbols/LineStyleMarker3D.js +1 -1
  318. package/symbols/PathSymbol3DLayer.js +1 -1
  319. package/symbols/support/ElevationInfo.js +1 -1
  320. package/symbols/support/Symbol3DTextBackground.js +1 -1
  321. package/symbols/support/previewSymbol3D.js +1 -1
  322. package/tables/elements/AttributeTableAttachmentElement.js +1 -1
  323. package/tables/elements/AttributeTableFieldElement.js +1 -1
  324. package/tables/elements/AttributeTableGroupElement.js +1 -1
  325. package/tables/elements/AttributeTableRelationshipElement.js +1 -1
  326. package/tables/support/FieldOrder.js +1 -1
  327. package/undoredo/support/Services.js +1 -1
  328. package/versionManagement/VersionManagementService.js +1 -1
  329. package/versionManagement/VersioningState.js +1 -1
  330. package/views/2d/constraints/GeometryConstraint.js +1 -1
  331. package/views/2d/constraints/RotationConstraint.js +1 -1
  332. package/views/2d/constraints/ZoomConstraint.js +1 -1
  333. package/views/2d/engine/DisplayObject.js +1 -1
  334. package/views/2d/engine/ManagedCanvas.js +1 -1
  335. package/views/2d/engine/vectorTiles/decluttering/CollisionJob.js +1 -1
  336. package/views/2d/engine/vectorTiles/shaders/VTLBackgroundMaterial.js +1 -1
  337. package/views/2d/engine/vectorTiles/shaders/VTLCircleMaterial.js +1 -1
  338. package/views/2d/engine/vectorTiles/shaders/VTLFillMaterial.js +1 -1
  339. package/views/2d/engine/vectorTiles/shaders/VTLLineMaterial.js +1 -1
  340. package/views/2d/engine/vectorTiles/shaders/VTLMaterial.js +1 -1
  341. package/views/2d/engine/vectorTiles/shaders/VTLSymbolMaterial.js +1 -1
  342. package/views/2d/engine/webgl/Profiler.js +1 -1
  343. package/views/2d/engine/webgl/TextureManager.js +1 -1
  344. package/views/2d/engine/webgl/collisions/LabelMetric.js +1 -1
  345. package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelMeshWriter.js +1 -1
  346. package/views/2d/interactive/editingTools/ControlPointsTransformTool.js +1 -1
  347. package/views/2d/interactive/editingTools/TransformTool.js +1 -1
  348. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  349. package/views/2d/layers/GeoRSSLayerView2D.js +1 -1
  350. package/views/2d/layers/StreamLayerView2D.js +1 -1
  351. package/views/2d/layers/features/FeatureSourceEventLog.js +1 -1
  352. package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
  353. package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
  354. package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
  355. package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
  356. package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
  357. package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
  358. package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
  359. package/views/2d/layers/features/layerAdapters/StreamLayerAdapter.js +1 -1
  360. package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
  361. package/views/2d/layers/features/processor/AAggregateStrategy.js +1 -1
  362. package/views/2d/layers/features/schema/processor/LabelMatcherSchema.js +1 -1
  363. package/views/2d/layers/features/schema/processor/SimpleProcessorSchema.js +1 -1
  364. package/views/2d/layers/features/schema/processor/SubtypeProcessorSchema.js +1 -1
  365. package/views/2d/layers/features/sources/strategies/StreamLoadStrategy.js +1 -1
  366. package/views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js +1 -1
  367. package/views/2d/layers/features/support/TileStore.js +1 -1
  368. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  369. package/views/2d/layers/support/RouteLayerInteraction.js +1 -1
  370. package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementPathHelper.js +1 -1
  371. package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
  372. package/views/3d/analysis/LineOfSightAnalysisView3D.js +1 -1
  373. package/views/3d/constraints/AltitudeConstraint.js +1 -1
  374. package/views/3d/constraints/ClipDistanceConstraint.js +1 -1
  375. package/views/3d/constraints/Constraints.js +1 -1
  376. package/views/3d/constraints/TiltConstraint.js +1 -1
  377. package/views/3d/environment/EnvironmentManager.js +1 -1
  378. package/views/3d/environment/SunLighting.js +1 -1
  379. package/views/3d/environment/VirtualLighting.js +1 -1
  380. package/views/3d/interactive/Manipulator3D.js +1 -1
  381. package/views/3d/interactive/editingTools/ManipulatedObject3DGraphic.js +1 -1
  382. package/views/3d/interactive/editingTools/ManipulatedObject3DMediaElement.js +1 -1
  383. package/views/3d/interactive/editingTools/manipulations/MoveXYAxisManipulation.js +1 -1
  384. package/views/3d/interactive/editingTools/manipulations/MoveZManipulation.js +1 -1
  385. package/views/3d/interactive/editingTools/media/MediaElementManipulator3D.js +1 -1
  386. package/views/3d/interactive/editingTools/move/MoveTool3D.js +1 -1
  387. package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
  388. package/views/3d/interactive/editingTools/reshape/ReshapeTool3D.js +1 -1
  389. package/views/3d/interactive/editingTools/transform/ExtentTransformTool.js +1 -1
  390. package/views/3d/interactive/editingTools/transform/ScaleRotateTransform.js +1 -1
  391. package/views/3d/interactive/editingTools/transform/TransformTool3D.js +1 -1
  392. package/views/3d/interactive/visualElements/DrapedVisualElementResources.js +1 -1
  393. package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
  394. package/views/3d/layers/BuildingSublayerView3D.js +1 -1
  395. package/views/3d/layers/FlowSubView3D.js +1 -1
  396. package/views/3d/layers/GraphicsView3D.js +1 -1
  397. package/views/3d/layers/GraphicsView3DDummyLayer.js +1 -1
  398. package/views/3d/layers/TiledLayerView3D.js +1 -1
  399. package/views/3d/layers/graphics/GraphicState.js +1 -1
  400. package/views/3d/layers/graphics/Graphics3DElevationAlignment.js +1 -1
  401. package/views/3d/layers/graphics/Graphics3DFeatureStore.js +1 -1
  402. package/views/3d/layers/graphics/pipeline/Feature3DPipelineWorker.js +1 -1
  403. package/views/3d/layers/graphics/pipeline/featureSet/TiledFeatureStore.js +1 -1
  404. package/views/3d/layers/i3s/I3SGraphicsMap.js +1 -1
  405. package/views/3d/layers/i3s/I3SQueryFeatureStore.js +1 -1
  406. package/views/3d/layers/i3s/LayerElevationProvider.js +1 -1
  407. package/views/3d/layers/support/StageLayerElevationProvider.js +1 -1
  408. package/views/3d/state/ViewState.js +1 -1
  409. package/views/3d/support/CombinedElevationProvider.js +1 -1
  410. package/views/3d/support/EventedSet.js +1 -1
  411. package/views/3d/support/GraphicsMap.js +1 -1
  412. package/views/3d/support/LimitGraphicsMap.js +1 -1
  413. package/views/3d/support/flow/geometryUtils.js +1 -1
  414. package/views/3d/support/pointsOfInterest/ContentGeometryUpdates.js +1 -1
  415. package/views/3d/support/pointsOfInterest/SurfaceGeometryUpdates.js +1 -1
  416. package/views/3d/terrain/OverlayRenderer.js +1 -1
  417. package/views/3d/terrain/TerrainRenderer.js +1 -1
  418. package/views/3d/terrain/TerrainSurface.js +1 -1
  419. package/views/3d/terrain/tileUtils.js +1 -1
  420. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  421. package/views/3d/webgl-engine/lib/Texture.js +1 -1
  422. package/views/3d/webgl-engine/lib/TextureRepository.js +1 -1
  423. package/views/3d/webgl-engine/lib/WebGLLayer.js +1 -1
  424. package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
  425. package/views/SelectionManager.js +1 -1
  426. package/views/Theme.js +1 -1
  427. package/views/VideoView.js +1 -1
  428. package/views/View.js +1 -1
  429. package/views/analysis/ElevationProfileResult.js +1 -1
  430. package/views/draw/DrawAction.js +1 -1
  431. package/views/draw/DrawGraphicTool.js +1 -1
  432. package/views/draw/DrawManipulator.js +1 -1
  433. package/views/draw/DrawOperation.js +1 -1
  434. package/views/draw/support/Box.js +1 -1
  435. package/views/draw/support/GraphicMover.js +1 -1
  436. package/views/draw/support/Reshape.js +1 -1
  437. package/views/interactive/GraphicManipulator.js +1 -1
  438. package/views/interactive/InteractiveToolBase.js +1 -1
  439. package/views/interactive/Tooltip.js +1 -1
  440. package/views/interactive/editGeometry/EditGeometry.js +1 -1
  441. package/views/interactive/editGeometry/EditGeometryOperations.js +1 -1
  442. package/views/interactive/snapping/SnappingManager.js +1 -1
  443. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js +1 -1
  444. package/views/layers/LayerView.js +1 -1
  445. package/views/support/GroundViewElevationSampler.js +1 -1
  446. package/views/ui/UI.js +1 -1
  447. package/webdoc/GeotriggersInfo.js +1 -1
  448. package/webdoc/IPSInfo.js +1 -1
  449. package/webdoc/geotriggersInfo/DeviceLocationFeed.js +1 -1
  450. package/webdoc/geotriggersInfo/ExpressionInfo.js +1 -1
  451. package/webdoc/geotriggersInfo/FeatureFenceParameters.js +1 -1
  452. package/webdoc/geotriggersInfo/FeatureFilter.js +1 -1
  453. package/webdoc/geotriggersInfo/FeatureLayerSource.js +1 -1
  454. package/webdoc/geotriggersInfo/Geotrigger.js +1 -1
  455. package/webdoc/geotriggersInfo/GeotriggerNotificationOptions.js +1 -1
  456. package/webdoc/ips/AppleIPSProperties.js +1 -1
  457. package/webdoc/ips/Configuration.js +1 -1
  458. package/webdoc/ips/GNSSProperties.js +1 -1
  459. package/webdoc/ips/PathSnappingProperties.js +1 -1
  460. package/webdoc/ips/PositioningService.js +1 -1
  461. package/webdoc/ips/SmoothingProperties.js +1 -1
  462. package/webmap/Bookmark.js +1 -1
  463. package/webmap/InitialViewProperties.js +1 -1
  464. package/webscene/InitialViewProperties.js +1 -1
  465. package/webscene/Presentation.js +1 -1
  466. package/webscene/Slide.js +1 -1
  467. package/webscene/SlideLegendInfo.js +1 -1
  468. package/webscene/support/Description.js +1 -1
  469. package/webscene/support/FeatureReference.js +1 -1
  470. package/webscene/support/FeatureReferenceId.js +1 -1
  471. package/webscene/support/LayerReference.js +1 -1
  472. package/webscene/support/SlideElements.js +1 -1
  473. package/webscene/support/SlideEnvironment.js +1 -1
  474. package/webscene/support/SlideGround.js +1 -1
  475. package/webscene/support/SlidePopupInfo.js +1 -1
  476. package/webscene/support/SlideVisibleLayer.js +1 -1
  477. package/webscene/support/Title.js +1 -1
  478. package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
  479. package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
  480. package/widgets/BasemapGallery/support/BasemapGalleryItem.js +1 -1
  481. package/widgets/BasemapGallery/support/PortalBasemapsSource.js +1 -1
  482. package/widgets/BasemapLayerList/BasemapLayerListViewModel.js +1 -1
  483. package/widgets/BasemapLayerList.js +1 -1
  484. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  485. package/widgets/BatchAttributeForm/templates/ElementTemplateBase.js +1 -1
  486. package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
  487. package/widgets/Bookmarks.js +1 -1
  488. package/widgets/CatalogLayerList/CatalogLayerListViewModel.js +1 -1
  489. package/widgets/CatalogLayerList.js +1 -1
  490. package/widgets/CoordinateConversion/CoordinateConversionViewModel.js +1 -1
  491. package/widgets/Daylight/DaylightViewModel.js +1 -1
  492. package/widgets/DirectionalPad/DirectionalPadViewModel.js +1 -1
  493. package/widgets/Directions/DirectionsViewModel.js +1 -1
  494. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
  495. package/widgets/Editor/EditorViewModel.js +1 -1
  496. package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
  497. package/widgets/Editor/Workflow.js +1 -1
  498. package/widgets/Editor/support/SketchController.js +1 -1
  499. package/widgets/ElevationProfile/ElevationProfileInteraction.js +1 -1
  500. package/widgets/ElevationProfile/ElevationProfileLine.js +1 -1
  501. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  502. package/widgets/Feature/FeatureViewModel.js +1 -1
  503. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  504. package/widgets/FeatureForm/UtilityNetworkAssociationInput.js +1 -1
  505. package/widgets/FeatureTable/Grid/GridViewModel.js +1 -1
  506. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
  507. package/widgets/FeatureTemplates/TemplateItemGroup.js +1 -1
  508. package/widgets/Home/HomeViewModel.js +1 -1
  509. package/widgets/LayerList/LayerListViewModel.js +1 -1
  510. package/widgets/LayerList/ListItem.js +1 -1
  511. package/widgets/LayerList/ListItemPanel.js +1 -1
  512. package/widgets/LayerList.js +1 -1
  513. package/widgets/LinkChartLayoutSwitcher/LinkChartLayoutSwitcherViewModel.js +1 -1
  514. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  515. package/widgets/OrientedImageryViewer/components/ImageOverlays.js +1 -1
  516. package/widgets/OrientedImageryViewer/components/ImageViewerViewModel.js +1 -1
  517. package/widgets/OrientedImageryViewer/components/NavigationAction.js +1 -1
  518. package/widgets/PanoramicViewer/PanoramicViewerViewModel.js +1 -1
  519. package/widgets/PanoramicViewer/PanoramicZoomConditions.js +1 -1
  520. package/widgets/Print/PrintViewModel.js +1 -1
  521. package/widgets/Search/SearchSource.js +1 -1
  522. package/widgets/Search/SearchViewModel.js +1 -1
  523. package/widgets/Sketch/SketchViewModel.js +1 -1
  524. package/widgets/Sketch/support/OperationHandle.js +1 -1
  525. package/widgets/TableList/ListItem.js +1 -1
  526. package/widgets/TableList/ListItemPanel.js +1 -1
  527. package/widgets/TableList/TableListViewModel.js +1 -1
  528. package/widgets/TableList.js +1 -1
  529. package/widgets/TimeSlider/TimeSliderViewModel.js +1 -1
  530. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  531. package/widgets/ValuePicker/ValuePickerViewModel.js +1 -1
  532. package/widgets/Widget.js +1 -1
  533. package/widgets/support/AnchorElementViewModel.js +1 -1
  534. package/widgets/support/GeolocationPositioning.js +1 -1
  535. package/widgets/support/GridControls/GridControlsViewModel.js +1 -1
  536. package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.js +1 -1
  537. package/widgets/support/Selector2D/SelectionOperation.js +1 -1
  538. package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +1 -1
  539. package/assets/esri/core/workers/chunks/038bd2fec9a91b5a949d.js +0 -1
  540. package/assets/esri/core/workers/chunks/093de3942e1ead231990.js +0 -1
  541. package/assets/esri/core/workers/chunks/0997e09fe5b0aba1f804.js +0 -1
  542. package/assets/esri/core/workers/chunks/0c0080b652cf8afc4e6b.js +0 -1
  543. package/assets/esri/core/workers/chunks/0f6207d84d15484a3181.js +0 -1
  544. package/assets/esri/core/workers/chunks/125fdea50620d4db2678.js +0 -1
  545. package/assets/esri/core/workers/chunks/152128775b4740e779ab.js +0 -1
  546. package/assets/esri/core/workers/chunks/173c5b8fa1ac7aa6e072.js +0 -1
  547. package/assets/esri/core/workers/chunks/1e58b1e191498417c21d.js +0 -1
  548. package/assets/esri/core/workers/chunks/2032b649350a75ba294f.js +0 -1
  549. package/assets/esri/core/workers/chunks/2105d2cc75e75bf8f1c0.js +0 -1
  550. package/assets/esri/core/workers/chunks/21246dfe99a4c5906f71.js +0 -1
  551. package/assets/esri/core/workers/chunks/221748295a5ec633177e.js +0 -1
  552. package/assets/esri/core/workers/chunks/2a695b50a384c45ace9a.js +0 -1
  553. package/assets/esri/core/workers/chunks/2ad63b8d6986ac21c398.js +0 -1
  554. package/assets/esri/core/workers/chunks/2c29f8a708a03cb703ab.js +0 -1
  555. package/assets/esri/core/workers/chunks/2df9bfddc737d89c94b8.js +0 -1
  556. package/assets/esri/core/workers/chunks/34ddb8da5c5c8533bd71.js +0 -1
  557. package/assets/esri/core/workers/chunks/40b0c5368b8322498189.js +0 -1
  558. package/assets/esri/core/workers/chunks/427deb82fae9c500b375.js +0 -1
  559. package/assets/esri/core/workers/chunks/4433c195c62a59739c06.js +0 -1
  560. package/assets/esri/core/workers/chunks/4ac6bf9ff1cfbde87c7b.js +0 -1
  561. package/assets/esri/core/workers/chunks/4b9003ddfe61dc3729f4.js +0 -1
  562. package/assets/esri/core/workers/chunks/4bb6148df66e62a5fcf0.js +0 -1
  563. package/assets/esri/core/workers/chunks/4fb13252a985131d3dae.js +0 -1
  564. package/assets/esri/core/workers/chunks/528212fb0474bdb2ec92.js +0 -1
  565. package/assets/esri/core/workers/chunks/5dba8c0c957becedf7f7.js +0 -1
  566. package/assets/esri/core/workers/chunks/5f995450f720483fcffa.js +0 -1
  567. package/assets/esri/core/workers/chunks/61aed9a292c981921869.js +0 -1
  568. package/assets/esri/core/workers/chunks/6aeff5908c41600a5dfc.js +0 -1
  569. package/assets/esri/core/workers/chunks/6c72e2c09ed62cb2fd79.js +0 -1
  570. package/assets/esri/core/workers/chunks/7099ff8dc699fedea931.js +0 -1
  571. package/assets/esri/core/workers/chunks/752eabfbed7b8b65cf3f.js +0 -1
  572. package/assets/esri/core/workers/chunks/7848ea5ca13ec350779a.js +0 -1
  573. package/assets/esri/core/workers/chunks/7a4ec66a577f7f7996c5.js +0 -1
  574. package/assets/esri/core/workers/chunks/81be8d23b8dfa4937eaf.js +0 -1
  575. package/assets/esri/core/workers/chunks/831d58235b8b9eb4cdc8.js +0 -1
  576. package/assets/esri/core/workers/chunks/90a0c1c5c851cc9b6d6d.js +0 -1
  577. package/assets/esri/core/workers/chunks/969a9edba4be8dcbcedd.js +0 -1
  578. package/assets/esri/core/workers/chunks/9a54c96b48e94d816881.js +0 -1
  579. package/assets/esri/core/workers/chunks/a53f2529b7067c28f320.js +0 -1
  580. package/assets/esri/core/workers/chunks/a6b6915b7321f77f765f.js +0 -1
  581. package/assets/esri/core/workers/chunks/aa12ba96fb8c91105473.js +0 -1
  582. package/assets/esri/core/workers/chunks/ab73df4f809430db6249.js +0 -1
  583. package/assets/esri/core/workers/chunks/acb95ae6203f708d71b4.js +0 -1
  584. package/assets/esri/core/workers/chunks/ae7f1499912c86973921.js +0 -1
  585. package/assets/esri/core/workers/chunks/b28855db6a30d4d4f348.js +0 -1
  586. package/assets/esri/core/workers/chunks/b4bbd38df56e57783cc0.js +0 -1
  587. package/assets/esri/core/workers/chunks/b98a049561b12a0555b7.js +0 -1
  588. package/assets/esri/core/workers/chunks/c0718a0461839be41a2a.js +0 -1
  589. package/assets/esri/core/workers/chunks/c0aee315b6218d6456cd.js +0 -1
  590. package/assets/esri/core/workers/chunks/c0ec1600a86bb9a848d4.js +0 -1
  591. package/assets/esri/core/workers/chunks/c9b11c7170c99f9e0e93.js +0 -1
  592. package/assets/esri/core/workers/chunks/ca88859fc69fcb4568c0.js +0 -1
  593. package/assets/esri/core/workers/chunks/cc3ca1729af33688c1e3.js +0 -1
  594. package/assets/esri/core/workers/chunks/cd150c7e1516134c7437.js +0 -1
  595. package/assets/esri/core/workers/chunks/cde79c3644166d4798a8.js +0 -1
  596. package/assets/esri/core/workers/chunks/d092a4b8fe3d37a6333d.js +0 -1
  597. package/assets/esri/core/workers/chunks/d4cadde4a9cbfe2c51d8.js +0 -1
  598. package/assets/esri/core/workers/chunks/d6a188a7d55db69ba30b.js +0 -1
  599. package/assets/esri/core/workers/chunks/d7172dc531b4548a8c60.js +0 -1
  600. package/assets/esri/core/workers/chunks/d88935ae5669d14c5b29.js +0 -1
  601. package/assets/esri/core/workers/chunks/dab82564928265b9f22d.js +0 -1
  602. package/assets/esri/core/workers/chunks/e82b1f91465d569012c4.js +0 -1
  603. package/assets/esri/core/workers/chunks/e892ed8b0b990d7eba28.js +0 -1
  604. package/assets/esri/core/workers/chunks/e897c5ce83db8a71b0a2.js +0 -1
  605. package/assets/esri/core/workers/chunks/efec0f496491a0647051.js +0 -1
  606. package/assets/esri/core/workers/chunks/f01a939af200616eb169.js +0 -1
  607. package/assets/esri/core/workers/chunks/f19426eb53d8430ded51.js +0 -1
  608. package/assets/esri/core/workers/chunks/f255b2232f6f049d462d.js +0 -1
  609. package/assets/esri/core/workers/chunks/f3358b19af0f03f16543.js +0 -1
  610. package/assets/esri/core/workers/chunks/f4c38a9c01c29b5a6244.js +0 -1
  611. package/assets/esri/core/workers/chunks/f6c1854f36b029fa6c37.js +0 -1
  612. package/assets/esri/core/workers/chunks/fa01d418237d7fa67efc.js +0 -1
  613. package/assets/esri/core/workers/chunks/ff736cb5a9fd18368244.js +0 -1
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import t from"../../../Graphic.js";import{createTask as i}from"../../../core/asyncUtils.js";import s from"../../../core/Collection.js";import o from"../../../core/Error.js";import r from"../../../core/Evented.js";import n from"../../../core/Logger.js";import{destroyMaybe as h,assertIsSome as a,abortMaybe as p}from"../../../core/maybe.js";import{pausable as c,when as l,watch as d,initial as m,sync as v}from"../../../core/reactiveUtils.js";import{property as y}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/has.js";import"../../../core/RandomLCG.js";import{subclass as _}from"../../../core/accessorSupport/decorators/subclass.js";import g from"../../../geometry/Point.js";import u from"../../../geometry/Polyline.js";import{closeRingsAndFixWinding as f,getMidpoint as x,geometryToCoordinates as G}from"../../../geometry/support/coordsUtils.js";import M from"../../../layers/GraphicsLayer.js";import b from"../../../symbols/SimpleMarkerSymbol.js";import{SnappingVisualizer2D as V}from"../../2d/interactive/SnappingVisualizer2D.js";import{ConnectedReshapeManager as S}from"./ConnectedReshapeManager.js";import{cloneMove as w}from"./drawUtils.js";import E from"./GraphicMover.js";import I from"./HighlightHelper.js";import{addUniqueLayer as O,isConnectedReshapeSupportedLayer as C}from"./layerUtils.js";import{createTooltipInfos as k,connectTooltip as T,updateTranslateTooltipInfo as H,updateTranslateVertexTooltipInfo as R}from"./reshapeTooltipUtils.js";import{settings as j}from"./settings.js";import{ViewEventPriorities as A}from"../../input/InputManager.js";import{createCoordinateHelper as U}from"../../interactive/coordinateHelper.js";import{sketchKeys as L}from"../../interactive/keybindings.js";import{EditGeometryOperations as P}from"../../interactive/editGeometry/EditGeometryOperations.js";import z from"../../interactive/sketch/SketchOptions.js";import{SnappingContext as D}from"../../interactive/snapping/SnappingContext.js";import{makeTooltip as F,enterInputModeIfAvailable as N}from"../../interactive/tooltip/tooltipCommonUtils.js";class Z{constructor(e,t,i){this.graphic=e,this.mover=t,this.selected=i,this.type="reshape-start"}}class X{constructor(e,t,i){this.graphic=e,this.mover=t,this.selected=i,this.type="reshape"}}class Y{constructor(e,t,i){this.graphic=e,this.mover=t,this.selected=i,this.type="reshape-stop"}}class q{constructor(e,t,i){this.mover=e,this.dx=t,this.dy=i,this.type="move-start"}}class K{constructor(e,t,i){this.mover=e,this.dx=t,this.dy=i,this.type="move"}}class B{constructor(e,t,i){this.mover=e,this.dx=t,this.dy=i,this.type="move-stop"}}class J{constructor(e){this.added=e,this.type="vertex-select"}}class Q{constructor(e){this.removed=e,this.type="vertex-deselect"}}class W{constructor(e,t,i,s){this.added=e,this.graphic=t,this.oldGraphic=i,this.vertices=s,this.type="vertex-add"}}class ${constructor(e,t,i,s){this.removed=e,this.graphic=t,this.oldGraphic=i,this.vertices=s,this.type="vertex-remove"}}const ee=j.reshapeGraphics,te={vertices:{default:new b({style:"circle",size:ee.vertex.size,color:ee.vertex.color,outline:{color:ee.vertex.outlineColor,width:1}}),hover:new b({style:"circle",size:ee.vertex.hoverSize,color:ee.vertex.hoverColor,outline:{color:ee.vertex.hoverOutlineColor,width:1}}),selected:new b({style:"circle",size:ee.selected.size,color:ee.selected.color,outline:{color:ee.selected.outlineColor,width:1}})},midpoints:{default:new b({style:"circle",size:ee.midpoint.size,color:ee.midpoint.color,outline:{color:ee.midpoint.outlineColor,width:1}}),hover:new b({style:"circle",size:ee.midpoint.size,color:ee.midpoint.color,outline:{color:ee.midpoint.outlineColor,width:1}})}},ie=Symbol();let se=class extends r.EventedAccessor{constructor(e){super(e),this._updateHandlesOnExternalGeometryChange=null,this._activeOperationInfo=null,this._connectedReshapeManager=null,this._editGeometryOperations=null,this._graphicAttributes={esriSketchTool:"box"},this._mover=null,this._snappingContext=null,this._snappingGraphicsLayer=null,this._hoverGraphic=null,this._snappingTask=null,this._stagedVertex=null,this.tooltip=null,this.activeTooltipInfo=null,this.callbacks={onReshapeStart(){},onReshape(){},onReshapeStop(){},onMoveStart(){},onMove(){},onMoveStop(){},onGraphicClick(){}},this.connectedReshapeProviders=[],this.enableMidpoints=!0,this.enableMovement=!0,this.enableVertices=!0,this.graphic=null,this.highlightName=null,this.highlightsEnabled=!0,this.layer=null,this.midpointGraphics=new s,this.midpointSymbol=new b({style:"circle",size:6,color:[200,200,200],outline:{color:[100,100,100],width:1}}),this.selectedVertices=new s,this.snappingManager=null,this.symbols=te,this.sketchOptions=new z,this.type="reshape",this.vertexGraphics=new s,this.view=null}initialize(){const e=this.view;this._highlightHelper=new I({view:e}),this._setup(),this._updateHandlesOnExternalGeometryChange=c(()=>this.graphic?.geometry,e=>{if(!e)return;const t=new Set(this.selectedVertices.map(e=>e.attributes?.pointIndex));this._highlightHelper.removeAll(),this._setUpHighlights(),this._setupGraphics(),this._clearSelection(),this.vertexGraphics.filter(e=>t.has(e.attributes.pointIndex)).forEach(e=>this._addToSelection(e));const{enableMovement:i,_mover:s,graphic:o,midpointGraphics:r,vertexGraphics:n}=this,h=n.concat(r).items;i&&h.push(o),s?.set("graphics",h)},v),this.tooltip=F(()=>({view:e,options:this.sketchOptions.tooltips})),this.tooltipInfos=k(this.sketchOptions),this.addHandles([l(()=>e?.ready,()=>{const{layer:e,view:t}=this;O(t,e),this.addHandles(t.on("key-down",e=>this._keyDownHandler(e),A.TOOL))},{once:!0,initial:!0}),d(()=>this.graphic,()=>this.refresh()),d(()=>this.layer,(e,t)=>{t&&(this._clearSelection(),this._resetGraphics(t)),this.refresh()}),d(()=>[this.highlightsEnabled,this.highlightName],()=>{this._highlightHelper?.removeAll(),this._setUpHighlights()}),d(()=>this.enableMidpoints,()=>this.refresh()),T(this.tooltip,()=>this._tooltipsContext),d(()=>this.view.effectiveTheme.accentColor,()=>this._updateSymbolsForTheme(),m),this._updateHandlesOnExternalGeometryChange]),this._updateTooltip()}destroy(){this._reset(),this._mover?.destroy(),this._mover=null,this._connectedReshapeManager=h(this._connectedReshapeManager),this.tooltip=h(this.tooltip)}get _coordinateHelper(){return this._editGeometryOperations?.data.coordinateHelper??U(!!this.graphic.geometry?.hasZ,!!this.graphic.geometry?.hasM,this.view.spatialReference)}get _selectedVertex(){return 1===this.selectedVertices.length?this.selectedVertices.at(0):void 0}get _tooltipsContext(){const{automaticAreaMeasurementUtils:e,automaticLengthMeasurementUtils:t,sketchOptions:i,activeTooltipInfo:s,graphic:o}=this;return{sketchOptions:i,activeTooltipInfo:s,graphic:o,selectedVertex:this._selectedVertex,automaticAreaMeasurementUtils:e,automaticLengthMeasurementUtils:t,updateGeometry:(e,t,i,s,o)=>{this._setUpGeometryHelper();const r=e===this.graphic;r?this._emitMoveStartEvent(0,0):this._emitReshapeStartEvent(e);const n=!0;if(this._syncGeometryAfterVertexMove(e,t,s,o,n),r){const{view:e}=this,s=e.toScreen(i),o=e.toScreen(t),r=(o?.x??0)-(s?.x??0),n=(o?.y??0)-(s?.y??0);this._emitMoveEvent(r,n),this._emitMoveStopEvent(r,n)}else this._emitReshapeEvent(e),this._emitReshapeStopEvent(e);this._editGeometryOperations=h(this._editGeometryOperations)}}}get state(){const e=this.view.ready,t=!(!this.graphic||!this.layer);return e&&t?"active":e?"ready":"disabled"}isUIGraphic(e){const t=[];return this.graphic&&t.push(this.graphic),t.concat(this.vertexGraphics.items,this.midpointGraphics.items),t.length>0&&t.includes(e)}refresh(){this._reset(),this._setup()}reset(){this.graphic=null}clearSelection(){this._clearSelection()}removeSelectedVertices(){const{selectedVertices:e}=this;e.length&&this._removeVertices(e)}_setup(){const{graphic:e,layer:t}=this;if(!t||null==e?.geometry)return;const i=e.geometry;"mesh"!==i.type&&"extent"!==i.type?("polygon"===i.type&&f(i),this._setUpHighlights(),this._setupGraphics(),this._setupMover(),this._setupConnectedReshapeManager()):this._logGeometryTypeError()}_setUpHighlights(){this.highlightsEnabled&&this.graphic&&this._highlightHelper?.add(this.graphic,this.highlightName)}_setUpGeometryHelper(){const e=this.graphic.geometry;if(null==e||"mesh"===e.type||"extent"===e.type)return void this._logGeometryTypeError();const t="multipoint"===e.type?new u({paths:[e.points],spatialReference:e.spatialReference}):e;this._editGeometryOperations=P.fromGeometry(t,2)}_saveSnappingContextForHandle(e,t){this._snappingGraphicsLayer=new M({listMode:"hide",internal:!0,title:"Reshape snapping layer"}),this.view.map.layers.add(this._snappingGraphicsLayer);const i=this._editGeometryOperations;a(i),this._snappingContext=new D({editGeometryOperations:i,elevationInfo:{mode:"on-the-ground",offset:0},pointer:t.viewEvent?.pointerType||"mouse",excludeFeature:this.graphic,feature:this.graphic,visualizer:new V(this._snappingGraphicsLayer),vertexHandle:this._getVertexFromEditGeometry(e)})}_reset(){this._clearSelection(),this._highlightHelper?.removeAll(),this._updateTooltip(),this._resetGraphics(),this._resetSnappingStateVars(),this._activeOperationInfo=null,this._mover&&this._mover.destroy(),this._mover=null,this.removeHandles(ie)}_resetSnappingStateVars(){null!=this.snappingManager&&this.snappingManager.doneSnapping(),null!=this._snappingGraphicsLayer&&(this.view?.map&&this.view.map.layers.remove(this._snappingGraphicsLayer),this._snappingGraphicsLayer.destroy()),this._editGeometryOperations=h(this._editGeometryOperations),this._snappingTask=p(this._snappingTask),this._snappingTask=null,this._snappingContext=null,this._stagedVertex=null}_resetGraphics(e){this._removeMidpointGraphics(e),this._removeVertexGraphics(e),this.selectedVertices.removeAll(),this._updateTooltip()}_removeMidpointGraphics(e){const t=e||this.layer;t&&t.removeMany(this.midpointGraphics.items),this.midpointGraphics.items.forEach(e=>e.destroy()),this.midpointGraphics.removeAll()}_removeVertexGraphics(e){const t=e||this.layer;t&&t.removeMany(this.vertexGraphics.items),this.vertexGraphics.items.forEach(e=>e.destroy()),this.vertexGraphics.removeAll()}_setupGraphics(){const e=this.graphic.geometry;if(null!=e&&("polyline"===e.type||"polygon"===e.type)){const t=oe(e);this.enableMidpoints&&this._setUpMidpointGraphics(t),this.enableVertices&&this._setUpVertexGraphics(t)}}_setUpMidpointGraphics(e){this._removeMidpointGraphics();const t=this._createMidpointGraphics(e);this.midpointGraphics.addMany(t),this.layer.addMany(t)}_setUpVertexGraphics(e){this._removeVertexGraphics();const t=this._createVertexGraphics(e);this.vertexGraphics.addMany(t),this._storeRelatedVertexIndices(),this.layer.addMany(t)}_createVertexGraphics(e){const{_graphicAttributes:i,symbols:s}=this,o=[];return e?.forEach((e,r)=>{e.forEach((e,n)=>{o.push(new t({geometry:this._coordinateHelper.arrayToPoint(e),symbol:s?.vertices?.default,attributes:{...i,pathIndex:r,pointIndex:n}}))})}),o}_createMidpointGraphics(e){const{_graphicAttributes:i,symbols:s}=this,o=[];for(let r=0;r<e.length;r++){const n=e[r];for(let e=0;e<n.length;e++){const h=(e+1)%n.length;if("polyline"===this.graphic.geometry?.type&&0===h)continue;const a=n[e],p=n[h],c=this._getMidpoint(a,p);o.push(new t({geometry:c,symbol:s.midpoints.default,attributes:{...i,pathIndex:r,pointIndexStart:e,pointIndexEnd:h}}))}}return o}_updateSymbolsForTheme(){const 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)},midpoints:{...this.symbols.midpoints}};for(const t of this.vertexGraphics)this._isSelected(t)?t.symbol=this.symbols.vertices.selected:this._hoverGraphic===t?t.symbol=this.symbols.vertices.hover:t.symbol=this.symbols.vertices.default}_storeRelatedVertexIndices(){const e=this.vertexGraphics.items;if(!e)return;const t=e.map(({geometry:e})=>({x:e.x,y:e.y}));for(let i=0;i<t.length;i++){const s=[];for(let e=0;e<t.length;e++){if(i===e)continue;const o=t[i],r=t[e];o.x===r.x&&o.y===r.y&&s.push(e)}e[i].attributes.relatedGraphicIndices=s}}_setupMover(){const{enableMovement:e,graphic:t,midpointGraphics:i,vertexGraphics:s,view:o}=this,r=s.concat(i).items;e&&r.push(t),this._mover=new E({enableMoveAllGraphics:!1,highlightsEnabled:!1,indicatorsEnabled:!1,graphics:r,view:o,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(){const{connectedReshapeProviders:e}=this;0!==e.length&&(this._connectedReshapeManager=new S({providerFactories:e,view:this.view}))}_onGraphicClickCallback(e){e.viewEvent.stopPropagation();const t=e.graphic;if(t===this.graphic)this.clearSelection(),this.emit("graphic-click",e),this.callbacks.onGraphicClick?.(e);else if(this._isMidpoint(t)){if(2===e.viewEvent.button)return;const i=this.graphic.clone(),s=this._createVertexFromMidpoint(t);this.refresh(),this._emitVertexAddEvent([t],i,s)}else if(this._isVertex(t))if(e.viewEvent.stopPropagation(),2===e.viewEvent.button)this._removeVertices(t);else{e.viewEvent.native.shiftKey||this._clearSelection(),this.selectedVertices.includes(t)?this._removeFromSelection(t,!0):this._addToSelection(t)}}_setUpOperation(e){const{graphic:t,dx:i,dy:s}=e,o=t===this.graphic;this._resetSnappingStateVars(),this._setUpGeometryHelper(),this._saveSnappingContextForHandle(t,e),this._activeOperationInfo={target:this.graphic,mover:t,operationType:o?"move":"reshape",totalDx:i,totalDy:s}}_onGraphicMoveStartCallback(e){const{dx:t,dy:i,graphic:s}=e,o=this._connectedReshapeManager,r=o?he(this.graphic):null;if(s===this.graphic){const{geometry:n}=s;return this._setUpOperation(e),this._emitMoveStartEvent(t,i),r&&o?.startFeatureMove([r]),void(null!=n&&"point"===n.type&&this._onHandleMove(s,t,i,e,()=>{this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(t,i)}))}const{selectedVertices:n}=this;if(!n.includes(s)){if(this._clearSelection(),this._isMidpoint(s)){const e=this.graphic.clone(),t=this._createVertexFromMidpoint(s);this._emitVertexAddEvent([s],e,t)}this._addToSelection(s)}this._setUpOperation(e),r&&o?.startVertexMove(r,ae(n)),this._emitReshapeStartEvent(s),this._onHandleMove(s,t,i,e,()=>{this._updateTooltip(s,e.viewEvent),this._emitReshapeEvent(s)})}_onGraphicMoveCallback(e){const t=this._activeOperationInfo;if(!t)return;const{dx:i,dy:s,graphic:o}=e;t.totalDx+=i,t.totalDy+=s;const{operationType:r}=t,{geometry:n}=o;if(null!=n)if("move"!==r)this._onHandleMove(o,i,s,e,()=>{this._updateTooltip(o,e.viewEvent),this._emitReshapeEvent(o)});else if("point"===n.type)this._onHandleMove(o,i,s,e,()=>{this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(i,s)});else if("polyline"===n.type||"polygon"===n.type){const t=oe(n);this._updateVertexGraphicLocations(t);const{dxMap:o,dyMap:r}=pe(i,s,this.view);this._connectedReshapeManager?.translate(o,r,0),this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(i,s)}}_onGraphicMoveStopCallback(e){const t=this._activeOperationInfo;if(!t)return;const{dx:i,dy:s,graphic:o}=e,{operationType:r}=t;t.totalDx+=i,t.totalDy+=s,this._onHandleMove(o,i,s,e,()=>"move"===r?this._emitMoveStopEvent():this._emitReshapeStopEvent(o)),this._isMidpoint(o)?this.refresh():(this._updateTooltip(this._isVertex(o)?o:null),this._resetSnappingStateVars(),this._connectedReshapeManager?.finish(),this._activeOperationInfo=null)}_updateVertexGraphicLocations(e){const{_coordinateHelper:t}=this;for(const i of this.vertexGraphics){const{pathIndex:s,pointIndex:o}=i.attributes;i.geometry=t.arrayToPoint(e[s][o])}this._updateMidpointGraphicLocations(e)}_updateMidpointGraphicLocations(e){for(const t of this.midpointGraphics){const{pathIndex:i,pointIndexStart:s,pointIndexEnd:o}=t.attributes,r=e[i];t.geometry=this._getMidpoint(r[s],r[o])}}_getMidpoint(e,t){const{_coordinateHelper:i}=this,s=i.arrayToVector(e),o=i.arrayToVector(t),r=i.toXYZ(s),n=i.toXYZ(o),[h,a,p]=x(r,n),c=i.hasM()?0:void 0;return new g({x:h,y:a,z:p,m:c,spatialReference:i.spatialReference})}_getVertexFromEditGeometry(e){const[t,i]=re(e);return a(this._editGeometryOperations),this._editGeometryOperations.data.components[t].vertices[i]}_onHandleMove(e,t,s,o,r){p(this._snappingTask);const n=this._snappingContext;if(!n)return;const h=e.geometry,a="graphic-move-stop"===o.type;if(null!=this.snappingManager&&this.selectedVertices.length<2&&!a){const o=this.snappingManager;this._stagedVertex=o.update({point:h,context:n}),this._syncGeometryAfterVertexMove(e,new g(this._stagedVertex),t,s,a),r(),this._snappingTask=i(async i=>{const p=await o.snap({point:h,context:n,signal:i});p.valid&&(this._stagedVertex=p.apply(),this._syncGeometryAfterVertexMove(e,new g(this._stagedVertex),t,s,a),r())})}else{const i=null!=this._stagedVertex?new g(this._stagedVertex):h;this._syncGeometryAfterVertexMove(e,i,t,s,a),r()}}_syncGeometryAfterVertexMove(e,t,i,s,o=!1){const r=this._editGeometryOperations?.data.geometry;if(r)if("point"===r.type)e.geometry=t;else if("mesh"===r.type)e.geometry=r.centerAt(t);else{const{_coordinateHelper:n}=this,[h,a]=re(e);let p=G(r);const c=p[h].length-1,l=n.pointToArray(t);p[h][a]=l,"polygon"===r.type&&(0===a?p[h][c]=l:a===c&&(p[h][0]=l)),this._isVertex(e)&&(p=this._moveRelatedCoordinates(p,e,l),p=this._moveSelectedHandleCoordinates(p,e,i,s,"polygon"===r.type),this._updateMidpointGraphicLocations(p)),this._updateGraphicGeometry(r.clone());const d=n.pointToVector(t),m=this._getVertexFromEditGeometry(e),v=n.getZ(d),y=d[0]-m.pos[0],_=d[1]-m.pos[1],g=null!=v?v-m.pos[2]:0;this._editGeometryOperations?.moveVertices([m],y,_,g),this._connectedReshapeManager?.translate(y,_,g),o&&(this._mover?this._mover.updateGeometry(this._mover.graphics.indexOf(e),t):e.geometry=t)}}_moveRelatedCoordinates(e,t,i){const{relatedGraphicIndices:s}=t.attributes;for(const o of s){const s=this.vertexGraphics.at(o),{pathIndex:r,pointIndex:n}=s.attributes;e[r][n]=i,s.geometry=t.geometry}return e}_moveSelectedHandleCoordinates(e,t,i,s,o){for(const r of this.selectedVertices)if(r!==t){const{pathIndex:t,pointIndex:n,relatedGraphicIndices:h}=r.attributes,a=w(r.geometry,i,s,this.view),p=G(a),c=e[t].length-1;e[t][n]=p,r.geometry=a,o&&(0===n?e[t][c]=p:n===c&&(e[t][0]=p));for(const i of h){const t=this.vertexGraphics.at(i),{pathIndex:s,pointIndex:o}=t.attributes;e[s][o]=p,t.geometry=a}}return e}_onGraphicPointerOverCallback(e){const t=e.graphic;this._hoverGraphic=t;const i=this._isVertex(t);i&&!this._isSelected(t)&&(t.symbol=this.symbols.vertices.hover),this._updateTooltip(i?t:null),this._updateHoverCursor(t)}_onGraphicPointerOutCallback(e){const t=e.graphic;this._hoverGraphic=null,this._isVertex(t)&&!this._isSelected(t)&&(t.symbol=this.symbols.vertices.default),this.removeHandles(ie),this._updateTooltip()}_createVertexFromMidpoint(e){const{_graphicAttributes:t,graphic:i}=this,s=i.geometry;if(null==s||"polygon"!==s.type&&"polyline"!==s.type)return[];const o=s.clone(),r=[],{pathIndex:n,pointIndexStart:h,pointIndexEnd:a}=e.attributes,p=G(e.geometry),c=0===a?h+1:a,l=G(o);return l[n].splice(c,0,p),e.attributes={...t,pathIndex:n,pointIndex:c,relatedGraphicIndices:[]},r.push({coordinates:l[n][c],componentIndex:n,vertexIndex:c}),this._updateGraphicGeometry(o),r}_addToSelection(e){const t=ne(e);for(const i of t)i.symbol=this.symbols.vertices.selected,this.selectedVertices.add(i),this._updateTooltip(i);this._emitSelectEvent(t)}_removeFromSelection(e,t){const{vertices:i}=this.symbols,s=t?i.hover:i.default;this.selectedVertices.remove(e),e.symbol=s,this._emitDeselectEvent([e]),this._updateTooltip()}_clearSelection(){const e=this.selectedVertices.toArray();if(e.length>0){for(const t of e)t.set("symbol",this.symbols.vertices.default);this.selectedVertices.removeAll(),this._emitDeselectEvent(e),this._updateTooltip()}}_keyDownHandler(e){null==this._activeOperationInfo&&N(e,this.tooltip)||L.delete.includes(e.key)&&!e.repeat&&this.selectedVertices.length&&this._removeVertices(this.selectedVertices)}_removeVertices(e){const t=this.graphic.geometry;if(null==t||"polygon"!==t.type&&"polyline"!==t.type)return;if("polygon"===t.type&&this.vertexGraphics.length<4||this.vertexGraphics.length<3)return;const i=this.graphic.clone(),s=t.clone();let o=G(s);const r=[],n=ne(e);for(const h of n){const{x:e,y:t}=h.geometry;for(let i=0;i<o.length;i++){const s=o[i];for(let n=0;n<s.length;n++){const[h,a]=s[n];e===h&&t===a&&(r.push({coordinates:o[i][n],componentIndex:i,vertexIndex:n}),o[i].splice(Number(n),1))}}}if("polygon"===s.type)o=o.filter(e=>{if(e.length<2)return!1;const[t,i]=e[0],[s,o]=e[e.length-1];return(2!==e.length||t!==s||i!==o)&&(t===s&&i===o||e.push(e[0]),!0)}),s.rings=o;else{for(const e of o)1===e.length&&o.splice(o.indexOf(e),1);s.paths=o}this._updateGraphicGeometry(s),this.refresh(),this._emitVertexRemoveEvent(n,i,r)}_isVertex(e){return this.vertexGraphics.includes(e)}_isSelected(e){return this._isVertex(e)&&this.selectedVertices.includes(e)}_isMidpoint(e){return this.midpointGraphics.includes(e)}_updateHoverCursor(e){const t=this._isMidpoint(e)?"copy":"move";this.addHandles(this.view.acquireCursor(t,"high"),ie)}_updateTooltip(e,t){let i=null;const{graphic:s,view:o,tooltipInfos:r}=this,n=s?.geometry;"point"===n?.type?i=r.movePoint:this._selectedVertex?i=r.selectedVertex:e===this.graphic?(i=r.translateGraphic,H(i,o,this._tooltipsContext,t)):e&&this.selectedVertices.length>1&&(i=r.translateVertices,R(i,o,n,this._tooltipsContext,t)),this.activeTooltipInfo=i}_updateGraphicGeometry(e){this._updateHandlesOnExternalGeometryChange?.pause(),this.graphic.geometry=e,this._updateHandlesOnExternalGeometryChange?.resume()}_emitMoveStartEvent(e,t){const i=new q(this.graphic,e,t);this.emit("move-start",i),this.callbacks.onMoveStart?.(i)}_emitMoveEvent(e,t){const i=new K(this.graphic,e,t);this.emit("move",i),this.callbacks.onMove?.(i)}_emitMoveStopEvent(e,t){if(null==e||null==t){const i=this._activeOperationInfo;if(!i)return;e=i.totalDx,t=i.totalDy}const i=new B(this.graphic,e,t);this.emit("move-stop",i),this.callbacks.onMoveStop?.(i)}_emitReshapeStartEvent(e){const t=new Z(this.graphic,e,this.selectedVertices.toArray());this.emit("reshape-start",t),this.callbacks.onReshapeStart?.(t)}_emitReshapeEvent(e){const t=new X(this.graphic,e,this.selectedVertices.toArray());this.emit("reshape",t),this.callbacks.onReshape?.(t)}_emitReshapeStopEvent(e){const t=new Y(this.graphic,e,this.selectedVertices.toArray());this.emit("reshape-stop",t),this.callbacks.onReshapeStop?.(t)}_emitSelectEvent(e){const t=new J(e);this.emit("select",t),this.callbacks.onVertexSelect?.(t)}_emitDeselectEvent(e){const t=new Q(e);this.emit("deselect",t),this.callbacks.onVertexDeselect?.(t)}_emitVertexAddEvent(e,t,i){const s=new W(e,this.graphic,t,i);this.emit("vertex-add",s),this.callbacks.onVertexAdd?.(s)}_emitVertexRemoveEvent(e,t,i){const s=new $(e,this.graphic,t,i);this.emit("vertex-remove",s),this.callbacks.onVertexRemove?.(s)}_logGeometryTypeError(){n.getLogger(this).error(new o("reshape:invalid-geometry","Reshape operation not supported for the provided graphic. The geometry type is not supported."))}};function oe(e){const t=G(e.clone());if("polygon"===e.type)for(const i of t){const e=i[i.length-1];i[0][0]===e[0]&&i[0][1]===e[1]&&i.length>2&&i.pop()}return t}function re({attributes:e}){return[e?.pathIndex||0,e?.pointIndex||0]}function ne(e){return e instanceof t?[e]:[...e]}function he(e){const t=e.sourceLayer??e.layer;return C(t)?{graphic:e,layer:t}:null}function ae(e){return e.toArray().map(e=>({pathIndex:e.attributes.pathIndex,vertexIndex:e.attributes.pointIndex}))}function pe(e,t,i){const s=i.state.inverseTransform;return{dxMap:s[0]*e+s[2]*t,dyMap:s[1]*e+s[3]*t}}e([y()],se.prototype,"_activeOperationInfo",void 0),e([y()],se.prototype,"_connectedReshapeManager",void 0),e([y()],se.prototype,"_coordinateHelper",null),e([y()],se.prototype,"_editGeometryOperations",void 0),e([y()],se.prototype,"tooltip",void 0),e([y()],se.prototype,"tooltipInfos",void 0),e([y()],se.prototype,"activeTooltipInfo",void 0),e([y({constructOnly:!0})],se.prototype,"automaticAreaMeasurementUtils",void 0),e([y({constructOnly:!0})],se.prototype,"automaticLengthMeasurementUtils",void 0),e([y()],se.prototype,"_selectedVertex",null),e([y()],se.prototype,"_tooltipsContext",null),e([y()],se.prototype,"callbacks",void 0),e([y()],se.prototype,"connectedReshapeProviders",void 0),e([y()],se.prototype,"enableMidpoints",void 0),e([y()],se.prototype,"enableMovement",void 0),e([y()],se.prototype,"enableVertices",void 0),e([y()],se.prototype,"graphic",void 0),e([y()],se.prototype,"highlightName",void 0),e([y()],se.prototype,"highlightsEnabled",void 0),e([y()],se.prototype,"layer",void 0),e([y({readOnly:!0})],se.prototype,"midpointGraphics",void 0),e([y()],se.prototype,"midpointSymbol",void 0),e([y({readOnly:!0})],se.prototype,"selectedVertices",void 0),e([y()],se.prototype,"snappingManager",void 0),e([y({readOnly:!0})],se.prototype,"state",null),e([y()],se.prototype,"symbols",void 0),e([y({type:z})],se.prototype,"sketchOptions",void 0),e([y({readOnly:!0})],se.prototype,"type",void 0),e([y({readOnly:!0})],se.prototype,"vertexGraphics",void 0),e([y()],se.prototype,"view",void 0),se=e([_("esri.views.draw.support.Reshape")],se);const ce=se;export{ce as default};
5
+ import{__decorate as e}from"tslib";import t from"../../../Graphic.js";import{createTask as i}from"../../../core/asyncUtils.js";import s from"../../../core/Collection.js";import o from"../../../core/Error.js";import{EventedAccessor as r}from"../../../core/Evented.js";import n from"../../../core/Logger.js";import{destroyMaybe as h,assertIsSome as a,abortMaybe as p}from"../../../core/maybe.js";import{pausable as c,when as l,watch as d,initial as m,sync as v}from"../../../core/reactiveUtils.js";import{property as y}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/has.js";import"../../../core/RandomLCG.js";import{subclass as _}from"../../../core/accessorSupport/decorators/subclass.js";import g from"../../../geometry/Point.js";import u from"../../../geometry/Polyline.js";import{closeRingsAndFixWinding as f,getMidpoint as x,geometryToCoordinates as G}from"../../../geometry/support/coordsUtils.js";import M from"../../../layers/GraphicsLayer.js";import b from"../../../symbols/SimpleMarkerSymbol.js";import{SnappingVisualizer2D as V}from"../../2d/interactive/SnappingVisualizer2D.js";import{ConnectedReshapeManager as S}from"./ConnectedReshapeManager.js";import{cloneMove as w}from"./drawUtils.js";import E from"./GraphicMover.js";import I from"./HighlightHelper.js";import{addUniqueLayer as O,isConnectedReshapeSupportedLayer as C}from"./layerUtils.js";import{createTooltipInfos as k,connectTooltip as T,updateTranslateTooltipInfo as H,updateTranslateVertexTooltipInfo as R}from"./reshapeTooltipUtils.js";import{settings as j}from"./settings.js";import{ViewEventPriorities as A}from"../../input/InputManager.js";import{createCoordinateHelper as U}from"../../interactive/coordinateHelper.js";import{sketchKeys as L}from"../../interactive/keybindings.js";import{EditGeometryOperations as P}from"../../interactive/editGeometry/EditGeometryOperations.js";import z from"../../interactive/sketch/SketchOptions.js";import{SnappingContext as D}from"../../interactive/snapping/SnappingContext.js";import{makeTooltip as F,enterInputModeIfAvailable as N}from"../../interactive/tooltip/tooltipCommonUtils.js";class Z{constructor(e,t,i){this.graphic=e,this.mover=t,this.selected=i,this.type="reshape-start"}}class X{constructor(e,t,i){this.graphic=e,this.mover=t,this.selected=i,this.type="reshape"}}class Y{constructor(e,t,i){this.graphic=e,this.mover=t,this.selected=i,this.type="reshape-stop"}}class q{constructor(e,t,i){this.mover=e,this.dx=t,this.dy=i,this.type="move-start"}}class K{constructor(e,t,i){this.mover=e,this.dx=t,this.dy=i,this.type="move"}}class B{constructor(e,t,i){this.mover=e,this.dx=t,this.dy=i,this.type="move-stop"}}class J{constructor(e){this.added=e,this.type="vertex-select"}}class Q{constructor(e){this.removed=e,this.type="vertex-deselect"}}class W{constructor(e,t,i,s){this.added=e,this.graphic=t,this.oldGraphic=i,this.vertices=s,this.type="vertex-add"}}class ${constructor(e,t,i,s){this.removed=e,this.graphic=t,this.oldGraphic=i,this.vertices=s,this.type="vertex-remove"}}const ee=j.reshapeGraphics,te={vertices:{default:new b({style:"circle",size:ee.vertex.size,color:ee.vertex.color,outline:{color:ee.vertex.outlineColor,width:1}}),hover:new b({style:"circle",size:ee.vertex.hoverSize,color:ee.vertex.hoverColor,outline:{color:ee.vertex.hoverOutlineColor,width:1}}),selected:new b({style:"circle",size:ee.selected.size,color:ee.selected.color,outline:{color:ee.selected.outlineColor,width:1}})},midpoints:{default:new b({style:"circle",size:ee.midpoint.size,color:ee.midpoint.color,outline:{color:ee.midpoint.outlineColor,width:1}}),hover:new b({style:"circle",size:ee.midpoint.size,color:ee.midpoint.color,outline:{color:ee.midpoint.outlineColor,width:1}})}},ie=Symbol();let se=class extends r{constructor(e){super(e),this._updateHandlesOnExternalGeometryChange=null,this._activeOperationInfo=null,this._connectedReshapeManager=null,this._editGeometryOperations=null,this._graphicAttributes={esriSketchTool:"box"},this._mover=null,this._snappingContext=null,this._snappingGraphicsLayer=null,this._hoverGraphic=null,this._snappingTask=null,this._stagedVertex=null,this.tooltip=null,this.activeTooltipInfo=null,this.callbacks={onReshapeStart(){},onReshape(){},onReshapeStop(){},onMoveStart(){},onMove(){},onMoveStop(){},onGraphicClick(){}},this.connectedReshapeProviders=[],this.enableMidpoints=!0,this.enableMovement=!0,this.enableVertices=!0,this.graphic=null,this.highlightName=null,this.highlightsEnabled=!0,this.layer=null,this.midpointGraphics=new s,this.midpointSymbol=new b({style:"circle",size:6,color:[200,200,200],outline:{color:[100,100,100],width:1}}),this.selectedVertices=new s,this.snappingManager=null,this.symbols=te,this.sketchOptions=new z,this.type="reshape",this.vertexGraphics=new s,this.view=null}initialize(){const e=this.view;this._highlightHelper=new I({view:e}),this._setup(),this._updateHandlesOnExternalGeometryChange=c(()=>this.graphic?.geometry,e=>{if(!e)return;const t=new Set(this.selectedVertices.map(e=>e.attributes?.pointIndex));this._highlightHelper.removeAll(),this._setUpHighlights(),this._setupGraphics(),this._clearSelection(),this.vertexGraphics.filter(e=>t.has(e.attributes.pointIndex)).forEach(e=>this._addToSelection(e));const{enableMovement:i,_mover:s,graphic:o,midpointGraphics:r,vertexGraphics:n}=this,h=n.concat(r).items;i&&h.push(o),s?.set("graphics",h)},v),this.tooltip=F(()=>({view:e,options:this.sketchOptions.tooltips})),this.tooltipInfos=k(this.sketchOptions),this.addHandles([l(()=>e?.ready,()=>{const{layer:e,view:t}=this;O(t,e),this.addHandles(t.on("key-down",e=>this._keyDownHandler(e),A.TOOL))},{once:!0,initial:!0}),d(()=>this.graphic,()=>this.refresh()),d(()=>this.layer,(e,t)=>{t&&(this._clearSelection(),this._resetGraphics(t)),this.refresh()}),d(()=>[this.highlightsEnabled,this.highlightName],()=>{this._highlightHelper?.removeAll(),this._setUpHighlights()}),d(()=>this.enableMidpoints,()=>this.refresh()),T(this.tooltip,()=>this._tooltipsContext),d(()=>this.view.effectiveTheme.accentColor,()=>this._updateSymbolsForTheme(),m),this._updateHandlesOnExternalGeometryChange]),this._updateTooltip()}destroy(){this._reset(),this._mover?.destroy(),this._mover=null,this._connectedReshapeManager=h(this._connectedReshapeManager),this.tooltip=h(this.tooltip)}get _coordinateHelper(){return this._editGeometryOperations?.data.coordinateHelper??U(!!this.graphic.geometry?.hasZ,!!this.graphic.geometry?.hasM,this.view.spatialReference)}get _selectedVertex(){return 1===this.selectedVertices.length?this.selectedVertices.at(0):void 0}get _tooltipsContext(){const{automaticAreaMeasurementUtils:e,automaticLengthMeasurementUtils:t,sketchOptions:i,activeTooltipInfo:s,graphic:o}=this;return{sketchOptions:i,activeTooltipInfo:s,graphic:o,selectedVertex:this._selectedVertex,automaticAreaMeasurementUtils:e,automaticLengthMeasurementUtils:t,updateGeometry:(e,t,i,s,o)=>{this._setUpGeometryHelper();const r=e===this.graphic;r?this._emitMoveStartEvent(0,0):this._emitReshapeStartEvent(e);const n=!0;if(this._syncGeometryAfterVertexMove(e,t,s,o,n),r){const{view:e}=this,s=e.toScreen(i),o=e.toScreen(t),r=(o?.x??0)-(s?.x??0),n=(o?.y??0)-(s?.y??0);this._emitMoveEvent(r,n),this._emitMoveStopEvent(r,n)}else this._emitReshapeEvent(e),this._emitReshapeStopEvent(e);this._editGeometryOperations=h(this._editGeometryOperations)}}}get state(){const e=this.view.ready,t=!(!this.graphic||!this.layer);return e&&t?"active":e?"ready":"disabled"}isUIGraphic(e){const t=[];return this.graphic&&t.push(this.graphic),t.concat(this.vertexGraphics.items,this.midpointGraphics.items),t.length>0&&t.includes(e)}refresh(){this._reset(),this._setup()}reset(){this.graphic=null}clearSelection(){this._clearSelection()}removeSelectedVertices(){const{selectedVertices:e}=this;e.length&&this._removeVertices(e)}_setup(){const{graphic:e,layer:t}=this;if(!t||null==e?.geometry)return;const i=e.geometry;"mesh"!==i.type&&"extent"!==i.type?("polygon"===i.type&&f(i),this._setUpHighlights(),this._setupGraphics(),this._setupMover(),this._setupConnectedReshapeManager()):this._logGeometryTypeError()}_setUpHighlights(){this.highlightsEnabled&&this.graphic&&this._highlightHelper?.add(this.graphic,this.highlightName)}_setUpGeometryHelper(){const e=this.graphic.geometry;if(null==e||"mesh"===e.type||"extent"===e.type)return void this._logGeometryTypeError();const t="multipoint"===e.type?new u({paths:[e.points],spatialReference:e.spatialReference}):e;this._editGeometryOperations=P.fromGeometry(t,2)}_saveSnappingContextForHandle(e,t){this._snappingGraphicsLayer=new M({listMode:"hide",internal:!0,title:"Reshape snapping layer"}),this.view.map.layers.add(this._snappingGraphicsLayer);const i=this._editGeometryOperations;a(i),this._snappingContext=new D({editGeometryOperations:i,elevationInfo:{mode:"on-the-ground",offset:0},pointer:t.viewEvent?.pointerType||"mouse",excludeFeature:this.graphic,feature:this.graphic,visualizer:new V(this._snappingGraphicsLayer),vertexHandle:this._getVertexFromEditGeometry(e)})}_reset(){this._clearSelection(),this._highlightHelper?.removeAll(),this._updateTooltip(),this._resetGraphics(),this._resetSnappingStateVars(),this._activeOperationInfo=null,this._mover&&this._mover.destroy(),this._mover=null,this.removeHandles(ie)}_resetSnappingStateVars(){null!=this.snappingManager&&this.snappingManager.doneSnapping(),null!=this._snappingGraphicsLayer&&(this.view?.map&&this.view.map.layers.remove(this._snappingGraphicsLayer),this._snappingGraphicsLayer.destroy()),this._editGeometryOperations=h(this._editGeometryOperations),this._snappingTask=p(this._snappingTask),this._snappingTask=null,this._snappingContext=null,this._stagedVertex=null}_resetGraphics(e){this._removeMidpointGraphics(e),this._removeVertexGraphics(e),this.selectedVertices.removeAll(),this._updateTooltip()}_removeMidpointGraphics(e){const t=e||this.layer;t&&t.removeMany(this.midpointGraphics.items),this.midpointGraphics.items.forEach(e=>e.destroy()),this.midpointGraphics.removeAll()}_removeVertexGraphics(e){const t=e||this.layer;t&&t.removeMany(this.vertexGraphics.items),this.vertexGraphics.items.forEach(e=>e.destroy()),this.vertexGraphics.removeAll()}_setupGraphics(){const e=this.graphic.geometry;if(null!=e&&("polyline"===e.type||"polygon"===e.type)){const t=oe(e);this.enableMidpoints&&this._setUpMidpointGraphics(t),this.enableVertices&&this._setUpVertexGraphics(t)}}_setUpMidpointGraphics(e){this._removeMidpointGraphics();const t=this._createMidpointGraphics(e);this.midpointGraphics.addMany(t),this.layer.addMany(t)}_setUpVertexGraphics(e){this._removeVertexGraphics();const t=this._createVertexGraphics(e);this.vertexGraphics.addMany(t),this._storeRelatedVertexIndices(),this.layer.addMany(t)}_createVertexGraphics(e){const{_graphicAttributes:i,symbols:s}=this,o=[];return e?.forEach((e,r)=>{e.forEach((e,n)=>{o.push(new t({geometry:this._coordinateHelper.arrayToPoint(e),symbol:s?.vertices?.default,attributes:{...i,pathIndex:r,pointIndex:n}}))})}),o}_createMidpointGraphics(e){const{_graphicAttributes:i,symbols:s}=this,o=[];for(let r=0;r<e.length;r++){const n=e[r];for(let e=0;e<n.length;e++){const h=(e+1)%n.length;if("polyline"===this.graphic.geometry?.type&&0===h)continue;const a=n[e],p=n[h],c=this._getMidpoint(a,p);o.push(new t({geometry:c,symbol:s.midpoints.default,attributes:{...i,pathIndex:r,pointIndexStart:e,pointIndexEnd:h}}))}}return o}_updateSymbolsForTheme(){const 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)},midpoints:{...this.symbols.midpoints}};for(const t of this.vertexGraphics)this._isSelected(t)?t.symbol=this.symbols.vertices.selected:this._hoverGraphic===t?t.symbol=this.symbols.vertices.hover:t.symbol=this.symbols.vertices.default}_storeRelatedVertexIndices(){const e=this.vertexGraphics.items;if(!e)return;const t=e.map(({geometry:e})=>({x:e.x,y:e.y}));for(let i=0;i<t.length;i++){const s=[];for(let e=0;e<t.length;e++){if(i===e)continue;const o=t[i],r=t[e];o.x===r.x&&o.y===r.y&&s.push(e)}e[i].attributes.relatedGraphicIndices=s}}_setupMover(){const{enableMovement:e,graphic:t,midpointGraphics:i,vertexGraphics:s,view:o}=this,r=s.concat(i).items;e&&r.push(t),this._mover=new E({enableMoveAllGraphics:!1,highlightsEnabled:!1,indicatorsEnabled:!1,graphics:r,view:o,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(){const{connectedReshapeProviders:e}=this;0!==e.length&&(this._connectedReshapeManager=new S({providerFactories:e,view:this.view}))}_onGraphicClickCallback(e){e.viewEvent.stopPropagation();const t=e.graphic;if(t===this.graphic)this.clearSelection(),this.emit("graphic-click",e),this.callbacks.onGraphicClick?.(e);else if(this._isMidpoint(t)){if(2===e.viewEvent.button)return;const i=this.graphic.clone(),s=this._createVertexFromMidpoint(t);this.refresh(),this._emitVertexAddEvent([t],i,s)}else if(this._isVertex(t))if(e.viewEvent.stopPropagation(),2===e.viewEvent.button)this._removeVertices(t);else{e.viewEvent.native.shiftKey||this._clearSelection(),this.selectedVertices.includes(t)?this._removeFromSelection(t,!0):this._addToSelection(t)}}_setUpOperation(e){const{graphic:t,dx:i,dy:s}=e,o=t===this.graphic;this._resetSnappingStateVars(),this._setUpGeometryHelper(),this._saveSnappingContextForHandle(t,e),this._activeOperationInfo={target:this.graphic,mover:t,operationType:o?"move":"reshape",totalDx:i,totalDy:s}}_onGraphicMoveStartCallback(e){const{dx:t,dy:i,graphic:s}=e,o=this._connectedReshapeManager,r=o?he(this.graphic):null;if(s===this.graphic){const{geometry:n}=s;return this._setUpOperation(e),this._emitMoveStartEvent(t,i),r&&o?.startFeatureMove([r]),void(null!=n&&"point"===n.type&&this._onHandleMove(s,t,i,e,()=>{this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(t,i)}))}const{selectedVertices:n}=this;if(!n.includes(s)){if(this._clearSelection(),this._isMidpoint(s)){const e=this.graphic.clone(),t=this._createVertexFromMidpoint(s);this._emitVertexAddEvent([s],e,t)}this._addToSelection(s)}this._setUpOperation(e),r&&o?.startVertexMove(r,ae(n)),this._emitReshapeStartEvent(s),this._onHandleMove(s,t,i,e,()=>{this._updateTooltip(s,e.viewEvent),this._emitReshapeEvent(s)})}_onGraphicMoveCallback(e){const t=this._activeOperationInfo;if(!t)return;const{dx:i,dy:s,graphic:o}=e;t.totalDx+=i,t.totalDy+=s;const{operationType:r}=t,{geometry:n}=o;if(null!=n)if("move"!==r)this._onHandleMove(o,i,s,e,()=>{this._updateTooltip(o,e.viewEvent),this._emitReshapeEvent(o)});else if("point"===n.type)this._onHandleMove(o,i,s,e,()=>{this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(i,s)});else if("polyline"===n.type||"polygon"===n.type){const t=oe(n);this._updateVertexGraphicLocations(t);const{dxMap:o,dyMap:r}=pe(i,s,this.view);this._connectedReshapeManager?.translate(o,r,0),this._updateTooltip(this.graphic,e.viewEvent),this._emitMoveEvent(i,s)}}_onGraphicMoveStopCallback(e){const t=this._activeOperationInfo;if(!t)return;const{dx:i,dy:s,graphic:o}=e,{operationType:r}=t;t.totalDx+=i,t.totalDy+=s,this._onHandleMove(o,i,s,e,()=>"move"===r?this._emitMoveStopEvent():this._emitReshapeStopEvent(o)),this._isMidpoint(o)?this.refresh():(this._updateTooltip(this._isVertex(o)?o:null),this._resetSnappingStateVars(),this._connectedReshapeManager?.finish(),this._activeOperationInfo=null)}_updateVertexGraphicLocations(e){const{_coordinateHelper:t}=this;for(const i of this.vertexGraphics){const{pathIndex:s,pointIndex:o}=i.attributes;i.geometry=t.arrayToPoint(e[s][o])}this._updateMidpointGraphicLocations(e)}_updateMidpointGraphicLocations(e){for(const t of this.midpointGraphics){const{pathIndex:i,pointIndexStart:s,pointIndexEnd:o}=t.attributes,r=e[i];t.geometry=this._getMidpoint(r[s],r[o])}}_getMidpoint(e,t){const{_coordinateHelper:i}=this,s=i.arrayToVector(e),o=i.arrayToVector(t),r=i.toXYZ(s),n=i.toXYZ(o),[h,a,p]=x(r,n),c=i.hasM()?0:void 0;return new g({x:h,y:a,z:p,m:c,spatialReference:i.spatialReference})}_getVertexFromEditGeometry(e){const[t,i]=re(e);return a(this._editGeometryOperations),this._editGeometryOperations.data.components[t].vertices[i]}_onHandleMove(e,t,s,o,r){p(this._snappingTask);const n=this._snappingContext;if(!n)return;const h=e.geometry,a="graphic-move-stop"===o.type;if(null!=this.snappingManager&&this.selectedVertices.length<2&&!a){const o=this.snappingManager;this._stagedVertex=o.update({point:h,context:n}),this._syncGeometryAfterVertexMove(e,new g(this._stagedVertex),t,s,a),r(),this._snappingTask=i(async i=>{const p=await o.snap({point:h,context:n,signal:i});p.valid&&(this._stagedVertex=p.apply(),this._syncGeometryAfterVertexMove(e,new g(this._stagedVertex),t,s,a),r())})}else{const i=null!=this._stagedVertex?new g(this._stagedVertex):h;this._syncGeometryAfterVertexMove(e,i,t,s,a),r()}}_syncGeometryAfterVertexMove(e,t,i,s,o=!1){const r=this._editGeometryOperations?.data.geometry;if(r)if("point"===r.type)e.geometry=t;else if("mesh"===r.type)e.geometry=r.centerAt(t);else{const{_coordinateHelper:n}=this,[h,a]=re(e);let p=G(r);const c=p[h].length-1,l=n.pointToArray(t);p[h][a]=l,"polygon"===r.type&&(0===a?p[h][c]=l:a===c&&(p[h][0]=l)),this._isVertex(e)&&(p=this._moveRelatedCoordinates(p,e,l),p=this._moveSelectedHandleCoordinates(p,e,i,s,"polygon"===r.type),this._updateMidpointGraphicLocations(p)),this._updateGraphicGeometry(r.clone());const d=n.pointToVector(t),m=this._getVertexFromEditGeometry(e),v=n.getZ(d),y=d[0]-m.pos[0],_=d[1]-m.pos[1],g=null!=v?v-m.pos[2]:0;this._editGeometryOperations?.moveVertices([m],y,_,g),this._connectedReshapeManager?.translate(y,_,g),o&&(this._mover?this._mover.updateGeometry(this._mover.graphics.indexOf(e),t):e.geometry=t)}}_moveRelatedCoordinates(e,t,i){const{relatedGraphicIndices:s}=t.attributes;for(const o of s){const s=this.vertexGraphics.at(o),{pathIndex:r,pointIndex:n}=s.attributes;e[r][n]=i,s.geometry=t.geometry}return e}_moveSelectedHandleCoordinates(e,t,i,s,o){for(const r of this.selectedVertices)if(r!==t){const{pathIndex:t,pointIndex:n,relatedGraphicIndices:h}=r.attributes,a=w(r.geometry,i,s,this.view),p=G(a),c=e[t].length-1;e[t][n]=p,r.geometry=a,o&&(0===n?e[t][c]=p:n===c&&(e[t][0]=p));for(const i of h){const t=this.vertexGraphics.at(i),{pathIndex:s,pointIndex:o}=t.attributes;e[s][o]=p,t.geometry=a}}return e}_onGraphicPointerOverCallback(e){const t=e.graphic;this._hoverGraphic=t;const i=this._isVertex(t);i&&!this._isSelected(t)&&(t.symbol=this.symbols.vertices.hover),this._updateTooltip(i?t:null),this._updateHoverCursor(t)}_onGraphicPointerOutCallback(e){const t=e.graphic;this._hoverGraphic=null,this._isVertex(t)&&!this._isSelected(t)&&(t.symbol=this.symbols.vertices.default),this.removeHandles(ie),this._updateTooltip()}_createVertexFromMidpoint(e){const{_graphicAttributes:t,graphic:i}=this,s=i.geometry;if(null==s||"polygon"!==s.type&&"polyline"!==s.type)return[];const o=s.clone(),r=[],{pathIndex:n,pointIndexStart:h,pointIndexEnd:a}=e.attributes,p=G(e.geometry),c=0===a?h+1:a,l=G(o);return l[n].splice(c,0,p),e.attributes={...t,pathIndex:n,pointIndex:c,relatedGraphicIndices:[]},r.push({coordinates:l[n][c],componentIndex:n,vertexIndex:c}),this._updateGraphicGeometry(o),r}_addToSelection(e){const t=ne(e);for(const i of t)i.symbol=this.symbols.vertices.selected,this.selectedVertices.add(i),this._updateTooltip(i);this._emitSelectEvent(t)}_removeFromSelection(e,t){const{vertices:i}=this.symbols,s=t?i.hover:i.default;this.selectedVertices.remove(e),e.symbol=s,this._emitDeselectEvent([e]),this._updateTooltip()}_clearSelection(){const e=this.selectedVertices.toArray();if(e.length>0){for(const t of e)t.set("symbol",this.symbols.vertices.default);this.selectedVertices.removeAll(),this._emitDeselectEvent(e),this._updateTooltip()}}_keyDownHandler(e){null==this._activeOperationInfo&&N(e,this.tooltip)||L.delete.includes(e.key)&&!e.repeat&&this.selectedVertices.length&&this._removeVertices(this.selectedVertices)}_removeVertices(e){const t=this.graphic.geometry;if(null==t||"polygon"!==t.type&&"polyline"!==t.type)return;if("polygon"===t.type&&this.vertexGraphics.length<4||this.vertexGraphics.length<3)return;const i=this.graphic.clone(),s=t.clone();let o=G(s);const r=[],n=ne(e);for(const h of n){const{x:e,y:t}=h.geometry;for(let i=0;i<o.length;i++){const s=o[i];for(let n=0;n<s.length;n++){const[h,a]=s[n];e===h&&t===a&&(r.push({coordinates:o[i][n],componentIndex:i,vertexIndex:n}),o[i].splice(Number(n),1))}}}if("polygon"===s.type)o=o.filter(e=>{if(e.length<2)return!1;const[t,i]=e[0],[s,o]=e[e.length-1];return(2!==e.length||t!==s||i!==o)&&(t===s&&i===o||e.push(e[0]),!0)}),s.rings=o;else{for(const e of o)1===e.length&&o.splice(o.indexOf(e),1);s.paths=o}this._updateGraphicGeometry(s),this.refresh(),this._emitVertexRemoveEvent(n,i,r)}_isVertex(e){return this.vertexGraphics.includes(e)}_isSelected(e){return this._isVertex(e)&&this.selectedVertices.includes(e)}_isMidpoint(e){return this.midpointGraphics.includes(e)}_updateHoverCursor(e){const t=this._isMidpoint(e)?"copy":"move";this.addHandles(this.view.acquireCursor(t,"high"),ie)}_updateTooltip(e,t){let i=null;const{graphic:s,view:o,tooltipInfos:r}=this,n=s?.geometry;"point"===n?.type?i=r.movePoint:this._selectedVertex?i=r.selectedVertex:e===this.graphic?(i=r.translateGraphic,H(i,o,this._tooltipsContext,t)):e&&this.selectedVertices.length>1&&(i=r.translateVertices,R(i,o,n,this._tooltipsContext,t)),this.activeTooltipInfo=i}_updateGraphicGeometry(e){this._updateHandlesOnExternalGeometryChange?.pause(),this.graphic.geometry=e,this._updateHandlesOnExternalGeometryChange?.resume()}_emitMoveStartEvent(e,t){const i=new q(this.graphic,e,t);this.emit("move-start",i),this.callbacks.onMoveStart?.(i)}_emitMoveEvent(e,t){const i=new K(this.graphic,e,t);this.emit("move",i),this.callbacks.onMove?.(i)}_emitMoveStopEvent(e,t){if(null==e||null==t){const i=this._activeOperationInfo;if(!i)return;e=i.totalDx,t=i.totalDy}const i=new B(this.graphic,e,t);this.emit("move-stop",i),this.callbacks.onMoveStop?.(i)}_emitReshapeStartEvent(e){const t=new Z(this.graphic,e,this.selectedVertices.toArray());this.emit("reshape-start",t),this.callbacks.onReshapeStart?.(t)}_emitReshapeEvent(e){const t=new X(this.graphic,e,this.selectedVertices.toArray());this.emit("reshape",t),this.callbacks.onReshape?.(t)}_emitReshapeStopEvent(e){const t=new Y(this.graphic,e,this.selectedVertices.toArray());this.emit("reshape-stop",t),this.callbacks.onReshapeStop?.(t)}_emitSelectEvent(e){const t=new J(e);this.emit("select",t),this.callbacks.onVertexSelect?.(t)}_emitDeselectEvent(e){const t=new Q(e);this.emit("deselect",t),this.callbacks.onVertexDeselect?.(t)}_emitVertexAddEvent(e,t,i){const s=new W(e,this.graphic,t,i);this.emit("vertex-add",s),this.callbacks.onVertexAdd?.(s)}_emitVertexRemoveEvent(e,t,i){const s=new $(e,this.graphic,t,i);this.emit("vertex-remove",s),this.callbacks.onVertexRemove?.(s)}_logGeometryTypeError(){n.getLogger(this).error(new o("reshape:invalid-geometry","Reshape operation not supported for the provided graphic. The geometry type is not supported."))}};function oe(e){const t=G(e.clone());if("polygon"===e.type)for(const i of t){const e=i[i.length-1];i[0][0]===e[0]&&i[0][1]===e[1]&&i.length>2&&i.pop()}return t}function re({attributes:e}){return[e?.pathIndex||0,e?.pointIndex||0]}function ne(e){return e instanceof t?[e]:[...e]}function he(e){const t=e.sourceLayer??e.layer;return C(t)?{graphic:e,layer:t}:null}function ae(e){return e.toArray().map(e=>({pathIndex:e.attributes.pathIndex,vertexIndex:e.attributes.pointIndex}))}function pe(e,t,i){const s=i.state.inverseTransform;return{dxMap:s[0]*e+s[2]*t,dyMap:s[1]*e+s[3]*t}}e([y()],se.prototype,"_activeOperationInfo",void 0),e([y()],se.prototype,"_connectedReshapeManager",void 0),e([y()],se.prototype,"_coordinateHelper",null),e([y()],se.prototype,"_editGeometryOperations",void 0),e([y()],se.prototype,"tooltip",void 0),e([y()],se.prototype,"tooltipInfos",void 0),e([y()],se.prototype,"activeTooltipInfo",void 0),e([y({constructOnly:!0})],se.prototype,"automaticAreaMeasurementUtils",void 0),e([y({constructOnly:!0})],se.prototype,"automaticLengthMeasurementUtils",void 0),e([y()],se.prototype,"_selectedVertex",null),e([y()],se.prototype,"_tooltipsContext",null),e([y()],se.prototype,"callbacks",void 0),e([y()],se.prototype,"connectedReshapeProviders",void 0),e([y()],se.prototype,"enableMidpoints",void 0),e([y()],se.prototype,"enableMovement",void 0),e([y()],se.prototype,"enableVertices",void 0),e([y()],se.prototype,"graphic",void 0),e([y()],se.prototype,"highlightName",void 0),e([y()],se.prototype,"highlightsEnabled",void 0),e([y()],se.prototype,"layer",void 0),e([y({readOnly:!0})],se.prototype,"midpointGraphics",void 0),e([y()],se.prototype,"midpointSymbol",void 0),e([y({readOnly:!0})],se.prototype,"selectedVertices",void 0),e([y()],se.prototype,"snappingManager",void 0),e([y({readOnly:!0})],se.prototype,"state",null),e([y()],se.prototype,"symbols",void 0),e([y({type:z})],se.prototype,"sketchOptions",void 0),e([y({readOnly:!0})],se.prototype,"type",void 0),e([y({readOnly:!0})],se.prototype,"vertexGraphics",void 0),e([y()],se.prototype,"view",void 0),se=e([_("esri.views.draw.support.Reshape")],se);const ce=se;export{ce as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as t}from"tslib";import e from"../../core/Accessor.js";import o from"../../core/Evented.js";import{watch as i,sync as s}from"../../core/reactiveUtils.js";import{screenPointObjectToArray as r,pt2px as l,createScreenPointArray as n}from"../../core/screenUtils.js";import{property as a}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as c}from"../../core/accessorSupport/decorators/subclass.js";import{squaredDistance as h}from"../../core/libs/gl-matrix-2/math/vec2.js";import{j as p}from"../../chunks/vec32.js";import{create as m}from"../../core/libs/gl-matrix-2/factories/vec3f64.js";import{canProjectWithoutEngine as u,project as y}from"../../geometry/projectionUtils.js";import{projectPointToVector as g}from"../../geometry/projection/projectPointToVector.js";import{getGraphicEffectiveElevationMode as b}from"../../support/elevationInfoUtils.js";import{getDefaultSymbol2D as d}from"../../symbols/support/defaults.js";import f from"../../symbols/support/ElevationInfo.js";import{getSymbolInfo as _}from"./support/utils.js";import{intersectsDrapedGeometry as v}from"../support/drapedUtils.js";let S=class extends e{set graphic(t){this._circleCollisionCache=null,this._originalSymbol=t.symbol,this._set("graphic",t),this.attachSymbolChanged()}get elevationInfo(){const{layer:t}=this.graphic,e=t&&"elevationInfo"in t?t.elevationInfo:null,o=b(this.graphic),i=e?e.offset:0;return new f({mode:o,offset:i})}set focusedSymbol(t){t!==this._get("focusedSymbol")&&(this._set("focusedSymbol",t),this._updateGraphicSymbol(),this._circleCollisionCache=null)}grabbableForEvent(){return!0}set grabbing(t){t!==this._get("grabbing")&&(this._set("grabbing",t),this._updateGraphicSymbol())}set hovering(t){t!==this._get("hovering")&&(this._set("hovering",t),this._updateGraphicSymbol())}set selected(t){t!==this._get("selected")&&(this._set("selected",t),this._updateGraphicSymbol(),this.events.emit("select-changed",{action:t?"select":"deselect"}))}get _focused(){return this._get("hovering")||this._get("grabbing")}constructor(t){super(t),this.layer=null,this.interactive=!0,this.selectable=!1,this.grabbable=!0,this.dragging=!1,this.cursor=null,this.consumesClicks=!0,this.events=new o.EventEmitter,this._circleCollisionCache=null,this._graphicSymbolChangedHandle=null,this._originalSymbol=null}destroy(){this.detachSymbolChanged(),this._resetGraphicSymbol(),this._set("view",null)}intersectionDistance(t){const e=this.graphic;if(!1===e.visible)return null;const o=e.geometry;if(null==o)return null;const i=this._get("focusedSymbol"),s=null!=i?i:e.symbol;return"2d"===this.view.type?this._intersectDistance2D(this.view,t,o,s):this._intersectDistance3D(this.view,t,e)}attach(){this.attachSymbolChanged(),null!=this.layer&&this.layer.add(this.graphic)}detach(){this.detachSymbolChanged(),this._resetGraphicSymbol(),null!=this.layer&&this.layer.remove(this.graphic)}attachSymbolChanged(){this.detachSymbolChanged(),this._graphicSymbolChangedHandle=i(()=>this.graphic?.symbol,t=>{null!=t&&t!==this.focusedSymbol&&t!==this._originalSymbol&&(this._originalSymbol=t,this._focused&&null!=this.focusedSymbol&&(this.graphic.symbol=this.focusedSymbol))},s)}detachSymbolChanged(){null!=this._graphicSymbolChangedHandle&&(this._graphicSymbolChangedHandle.remove(),this._graphicSymbolChangedHandle=null)}onElevationChange(){}onViewChange(){}_updateGraphicSymbol(){this.graphic.symbol=this._focused&&null!=this.focusedSymbol?this.focusedSymbol:this._originalSymbol}_resetGraphicSymbol(){this.graphic.symbol=this._originalSymbol}_intersectDistance2D(t,e,o,i){if(null==(i=i||d(o)))return null;const s=1;let n=this._circleCollisionCache;if("point"===o.type&&"cim"===i.type&&"CIMPointSymbol"===i.data.symbol?.type&&i.data.symbol.symbolLayers){const{offsetX:l,offsetY:n,size:a}=_(i),c=r(e,j),p=a/2,m=t.toScreen(o),u=m.x+l,y=m.y+n;return h(c,[u,y])<p*p?s:null}if("point"!==o.type||"simple-marker"!==i.type)return v(e,o,t)?s:null;if(null==n||!n.originalPoint.equals(o)){const e=o,s=t.spatialReference;if(u(e.spatialReference,s)){const t=y(e,s);n={originalPoint:e.clone(),mapPoint:t,radiusPx:l(i.size)},this._circleCollisionCache=n}}if(null!=n){const o=r(e,j),a=t.toScreen?.(n.mapPoint);if(!a)return null;const c=n.radiusPx,p=a.x+l(i.xoffset),m=a.y-l(i.yoffset);return h(o,[p,m])<c*c?s:null}return null}_intersectDistance3D(t,e,o){const i=t.toMap(e,{include:[o]});return i&&g(i,C,t.renderSpatialReference)?p(C,t.state.camera.eye):null}};t([a({constructOnly:!0,nonNullable:!0})],S.prototype,"graphic",null),t([a()],S.prototype,"elevationInfo",null),t([a({constructOnly:!0,nonNullable:!0})],S.prototype,"view",void 0),t([a({value:null})],S.prototype,"focusedSymbol",null),t([a({constructOnly:!0})],S.prototype,"layer",void 0),t([a()],S.prototype,"interactive",void 0),t([a()],S.prototype,"selectable",void 0),t([a()],S.prototype,"grabbable",void 0),t([a({value:!1})],S.prototype,"grabbing",null),t([a()],S.prototype,"dragging",void 0),t([a()],S.prototype,"hovering",null),t([a({value:!1})],S.prototype,"selected",null),t([a()],S.prototype,"cursor",void 0),S=t([c("esri.views.interactive.GraphicManipulator")],S);const C=m(),j=n();export{S as GraphicManipulator};
5
+ import{__decorate as t}from"tslib";import e from"../../core/Accessor.js";import{EventEmitter as o}from"../../core/Evented.js";import{watch as i,sync as s}from"../../core/reactiveUtils.js";import{screenPointObjectToArray as r,pt2px as l,createScreenPointArray as n}from"../../core/screenUtils.js";import{property as a}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as c}from"../../core/accessorSupport/decorators/subclass.js";import{squaredDistance as h}from"../../core/libs/gl-matrix-2/math/vec2.js";import{j as p}from"../../chunks/vec32.js";import{create as m}from"../../core/libs/gl-matrix-2/factories/vec3f64.js";import{canProjectWithoutEngine as u,project as y}from"../../geometry/projectionUtils.js";import{projectPointToVector as g}from"../../geometry/projection/projectPointToVector.js";import{getGraphicEffectiveElevationMode as b}from"../../support/elevationInfoUtils.js";import{getDefaultSymbol2D as d}from"../../symbols/support/defaults.js";import f from"../../symbols/support/ElevationInfo.js";import{getSymbolInfo as _}from"./support/utils.js";import{intersectsDrapedGeometry as v}from"../support/drapedUtils.js";let S=class extends e{set graphic(t){this._circleCollisionCache=null,this._originalSymbol=t.symbol,this._set("graphic",t),this.attachSymbolChanged()}get elevationInfo(){const{layer:t}=this.graphic,e=t&&"elevationInfo"in t?t.elevationInfo:null,o=b(this.graphic),i=e?e.offset:0;return new f({mode:o,offset:i})}set focusedSymbol(t){t!==this._get("focusedSymbol")&&(this._set("focusedSymbol",t),this._updateGraphicSymbol(),this._circleCollisionCache=null)}grabbableForEvent(){return!0}set grabbing(t){t!==this._get("grabbing")&&(this._set("grabbing",t),this._updateGraphicSymbol())}set hovering(t){t!==this._get("hovering")&&(this._set("hovering",t),this._updateGraphicSymbol())}set selected(t){t!==this._get("selected")&&(this._set("selected",t),this._updateGraphicSymbol(),this.events.emit("select-changed",{action:t?"select":"deselect"}))}get _focused(){return this._get("hovering")||this._get("grabbing")}constructor(t){super(t),this.layer=null,this.interactive=!0,this.selectable=!1,this.grabbable=!0,this.dragging=!1,this.cursor=null,this.consumesClicks=!0,this.events=new o,this._circleCollisionCache=null,this._graphicSymbolChangedHandle=null,this._originalSymbol=null}destroy(){this.detachSymbolChanged(),this._resetGraphicSymbol(),this._set("view",null)}intersectionDistance(t){const e=this.graphic;if(!1===e.visible)return null;const o=e.geometry;if(null==o)return null;const i=this._get("focusedSymbol"),s=null!=i?i:e.symbol;return"2d"===this.view.type?this._intersectDistance2D(this.view,t,o,s):this._intersectDistance3D(this.view,t,e)}attach(){this.attachSymbolChanged(),null!=this.layer&&this.layer.add(this.graphic)}detach(){this.detachSymbolChanged(),this._resetGraphicSymbol(),null!=this.layer&&this.layer.remove(this.graphic)}attachSymbolChanged(){this.detachSymbolChanged(),this._graphicSymbolChangedHandle=i(()=>this.graphic?.symbol,t=>{null!=t&&t!==this.focusedSymbol&&t!==this._originalSymbol&&(this._originalSymbol=t,this._focused&&null!=this.focusedSymbol&&(this.graphic.symbol=this.focusedSymbol))},s)}detachSymbolChanged(){null!=this._graphicSymbolChangedHandle&&(this._graphicSymbolChangedHandle.remove(),this._graphicSymbolChangedHandle=null)}onElevationChange(){}onViewChange(){}_updateGraphicSymbol(){this.graphic.symbol=this._focused&&null!=this.focusedSymbol?this.focusedSymbol:this._originalSymbol}_resetGraphicSymbol(){this.graphic.symbol=this._originalSymbol}_intersectDistance2D(t,e,o,i){if(null==(i=i||d(o)))return null;const s=1;let n=this._circleCollisionCache;if("point"===o.type&&"cim"===i.type&&"CIMPointSymbol"===i.data.symbol?.type&&i.data.symbol.symbolLayers){const{offsetX:l,offsetY:n,size:a}=_(i),c=r(e,j),p=a/2,m=t.toScreen(o),u=m.x+l,y=m.y+n;return h(c,[u,y])<p*p?s:null}if("point"!==o.type||"simple-marker"!==i.type)return v(e,o,t)?s:null;if(null==n||!n.originalPoint.equals(o)){const e=o,s=t.spatialReference;if(u(e.spatialReference,s)){const t=y(e,s);n={originalPoint:e.clone(),mapPoint:t,radiusPx:l(i.size)},this._circleCollisionCache=n}}if(null!=n){const o=r(e,j),a=t.toScreen?.(n.mapPoint);if(!a)return null;const c=n.radiusPx,p=a.x+l(i.xoffset),m=a.y-l(i.yoffset);return h(o,[p,m])<c*c?s:null}return null}_intersectDistance3D(t,e,o){const i=t.toMap(e,{include:[o]});return i&&g(i,C,t.renderSpatialReference)?p(C,t.state.camera.eye):null}};t([a({constructOnly:!0,nonNullable:!0})],S.prototype,"graphic",null),t([a()],S.prototype,"elevationInfo",null),t([a({constructOnly:!0,nonNullable:!0})],S.prototype,"view",void 0),t([a({value:null})],S.prototype,"focusedSymbol",null),t([a({constructOnly:!0})],S.prototype,"layer",void 0),t([a()],S.prototype,"interactive",void 0),t([a()],S.prototype,"selectable",void 0),t([a()],S.prototype,"grabbable",void 0),t([a({value:!1})],S.prototype,"grabbing",null),t([a()],S.prototype,"dragging",void 0),t([a()],S.prototype,"hovering",null),t([a({value:!1})],S.prototype,"selected",null),t([a()],S.prototype,"cursor",void 0),S=t([c("esri.views.interactive.GraphicManipulator")],S);const C=m(),j=n();export{S as GraphicManipulator};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as t}from"tslib";import e from"../../core/Evented.js";import"../../core/has.js";import"../../core/Logger.js";import{createResolver as i}from"../../core/promiseUtils.js";import{property as a}from"../../core/accessorSupport/decorators/property.js";import"../../core/RandomLCG.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import{ManipulatorCollection as s}from"./ManipulatorCollection.js";let r=class extends e.EventedAccessor{constructor(t){super(t),this.manipulators=new s,this.automaticManipulatorSelection=!0,this.hasGrabbedManipulators=!1,this.hasHoveredManipulators=!1,this.firstGrabbedManipulator=null,this.created=!1,this.removeIncompleteOnCancel=!0,this._editableFlags=new Map([[1,!0],[0,!0]]),this._creationFinishedResolver=i()}get active(){return null!=this.view&&this.view.activeTool===this}set visible(t){this._get("visible")!==t&&(this._set("visible",t),this._syncVisible())}get editable(){return this.getEditableFlag(0)}set editable(t){this.setEditableFlag(0,t)}get updating(){return!1}get cursor(){return null}get hasFocusedManipulators(){return this.hasGrabbedManipulators||this.hasHoveredManipulators}destroy(){this.manipulators.destroy(),this._set("view",null)}onAdd(){this._syncVisible()}activate(){null!=this.view&&(this.view.focus(),this.onActivate())}deactivate(){this.onDeactivate()}cancel(){this.emit("cancel")}handleInputEvent(t){this.onInputEvent(t)}handleInputEventAfter(t){this.onInputEventAfter(t)}setEditableFlag(t,e){this._editableFlags.set(t,e),this.manipulators.isToolEditable=this.internallyEditable,this._updateManipulatorAttachment(),0===t&&this.notifyChange("editable"),this.onEditableChange(),this.onManipulatorSelectionChanged()}getEditableFlag(t){return this._editableFlags.get(t)??!1}endDrag(){const t=this.view.inputManager.latestPointerLocation;if(!t)return;let e=!1;this.manipulators.forEach(({manipulator:i})=>{i.dragging&&(e=!0,i.events.emit("drag",{action:"end",start:t,screenPoint:t}))}),e&&(this.view.toolViewManager.activeTool=null)}whenCreated(){return this._creationFinishedResolver.promise}onManipulatorSelectionChanged(){}onActivate(){}onDeactivate(){}onShow(){}onHide(){}onEditableChange(){}onInputEvent(t){}onInputEventAfter(t){}get internallyEditable(){return this.getEditableFlag(0)&&this.getEditableFlag(1)}finishToolCreation(){this.created||this._creationFinishedResolver.resolve(this),this._set("created",!0)}_syncVisible(){if(this.initialized)if(this.visible)this._show();else if(this._hide(),this.active)return void(this.view.activeTool=null)}_show(){this._updateManipulatorAttachment(),this.onShow()}_hide(){this._updateManipulatorAttachment(),this.onHide()}_updateManipulatorAttachment(){this.visible?this.manipulators.attach():this.manipulators.detach()}};t([a({constructOnly:!0})],r.prototype,"view",void 0),t([a({readOnly:!0})],r.prototype,"active",null),t([a({value:!0})],r.prototype,"visible",null),t([a({value:!0})],r.prototype,"editable",null),t([a({readOnly:!0})],r.prototype,"manipulators",void 0),t([a({readOnly:!0})],r.prototype,"updating",null),t([a()],r.prototype,"cursor",null),t([a({readOnly:!0})],r.prototype,"automaticManipulatorSelection",void 0),t([a()],r.prototype,"hasFocusedManipulators",null),t([a()],r.prototype,"hasGrabbedManipulators",void 0),t([a()],r.prototype,"hasHoveredManipulators",void 0),t([a()],r.prototype,"firstGrabbedManipulator",void 0),t([a({readOnly:!0})],r.prototype,"created",void 0),t([a({readOnly:!0})],r.prototype,"removeIncompleteOnCancel",void 0),r=t([o("esri.views.interactive.InteractiveToolBase")],r);export{r as InteractiveToolBase};
5
+ import{__decorate as t}from"tslib";import{EventedAccessor as e}from"../../core/Evented.js";import"../../core/has.js";import"../../core/Logger.js";import{createResolver as i}from"../../core/promiseUtils.js";import{property as a}from"../../core/accessorSupport/decorators/property.js";import"../../core/RandomLCG.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import{ManipulatorCollection as s}from"./ManipulatorCollection.js";let r=class extends e{constructor(t){super(t),this.manipulators=new s,this.automaticManipulatorSelection=!0,this.hasGrabbedManipulators=!1,this.hasHoveredManipulators=!1,this.firstGrabbedManipulator=null,this.created=!1,this.removeIncompleteOnCancel=!0,this._editableFlags=new Map([[1,!0],[0,!0]]),this._creationFinishedResolver=i()}get active(){return null!=this.view&&this.view.activeTool===this}set visible(t){this._get("visible")!==t&&(this._set("visible",t),this._syncVisible())}get editable(){return this.getEditableFlag(0)}set editable(t){this.setEditableFlag(0,t)}get updating(){return!1}get cursor(){return null}get hasFocusedManipulators(){return this.hasGrabbedManipulators||this.hasHoveredManipulators}destroy(){this.manipulators.destroy(),this._set("view",null)}onAdd(){this._syncVisible()}activate(){null!=this.view&&(this.view.focus(),this.onActivate())}deactivate(){this.onDeactivate()}cancel(){this.emit("cancel")}handleInputEvent(t){this.onInputEvent(t)}handleInputEventAfter(t){this.onInputEventAfter(t)}setEditableFlag(t,e){this._editableFlags.set(t,e),this.manipulators.isToolEditable=this.internallyEditable,this._updateManipulatorAttachment(),0===t&&this.notifyChange("editable"),this.onEditableChange(),this.onManipulatorSelectionChanged()}getEditableFlag(t){return this._editableFlags.get(t)??!1}endDrag(){const t=this.view.inputManager.latestPointerLocation;if(!t)return;let e=!1;this.manipulators.forEach(({manipulator:i})=>{i.dragging&&(e=!0,i.events.emit("drag",{action:"end",start:t,screenPoint:t}))}),e&&(this.view.toolViewManager.activeTool=null)}whenCreated(){return this._creationFinishedResolver.promise}onManipulatorSelectionChanged(){}onActivate(){}onDeactivate(){}onShow(){}onHide(){}onEditableChange(){}onInputEvent(t){}onInputEventAfter(t){}get internallyEditable(){return this.getEditableFlag(0)&&this.getEditableFlag(1)}finishToolCreation(){this.created||this._creationFinishedResolver.resolve(this),this._set("created",!0)}_syncVisible(){if(this.initialized)if(this.visible)this._show();else if(this._hide(),this.active)return void(this.view.activeTool=null)}_show(){this._updateManipulatorAttachment(),this.onShow()}_hide(){this._updateManipulatorAttachment(),this.onHide()}_updateManipulatorAttachment(){this.visible?this.manipulators.attach():this.manipulators.detach()}};t([a({constructOnly:!0})],r.prototype,"view",void 0),t([a({readOnly:!0})],r.prototype,"active",null),t([a({value:!0})],r.prototype,"visible",null),t([a({value:!0})],r.prototype,"editable",null),t([a({readOnly:!0})],r.prototype,"manipulators",void 0),t([a({readOnly:!0})],r.prototype,"updating",null),t([a()],r.prototype,"cursor",null),t([a({readOnly:!0})],r.prototype,"automaticManipulatorSelection",void 0),t([a()],r.prototype,"hasFocusedManipulators",null),t([a()],r.prototype,"hasGrabbedManipulators",void 0),t([a()],r.prototype,"hasHoveredManipulators",void 0),t([a()],r.prototype,"firstGrabbedManipulator",void 0),t([a({readOnly:!0})],r.prototype,"created",void 0),t([a({readOnly:!0})],r.prototype,"removeIncompleteOnCancel",void 0),r=t([o("esri.views.interactive.InteractiveToolBase")],r);export{r as InteractiveToolBase};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as t}from"tslib";import e from"../../core/Evented.js";import{on as o}from"../../core/events.js";import{destroyMaybe as n}from"../../core/maybe.js";import{watch as i,when as s,syncAndInitial as r,initial as l,sync as c}from"../../core/reactiveUtils.js";import{cloneScreenPoint as a,createScreenPoint as p}from"../../core/screenUtils.js";import{property as u}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as d}from"../../core/accessorSupport/decorators/subclass.js";import{UpdatingHandles as h}from"../../core/support/UpdatingHandles.js";import{setCalciteModeClass as f}from"../../support/modeUtils.js";import{base as m}from"./tooltip/css.js";import{tooltipContentFactory as g}from"./tooltip/content/tooltipContentFactory.js";import{isRTL as v}from"../../widgets/support/widgetUtils.js";const y={base:`${m}`,ltr:`${m}--ltr`,rtl:`${m}--rtl`,debug:`${m}--debug`},_=20,C=16,b="bottom-end";let P=class extends e.EventedAccessor{constructor(t){super(t),this.info=null,this.options=null,this.position=null,this.content=null,this._focused=!1,this.outerContainer=document.createElement("div"),this.debug=!1,this._updatingHandles=new h,this._lastPosition=null,this._rtl=!1,this._prevXY=[0,0]}initialize(){const{outerContainer:t}=this;this.addHandles([i(()=>this.view.overlay?.surface,e=>{t.remove(),e?.appendChild(t),this._rtl=v(e)},r),i(()=>this.info,(e,o)=>{if(null!=this.content&&null!=e&&null!=o&&e.type===o.type)this.content.info=e;else{n(this.content);const o=g(this,e);o?(this.content=o,o.container&&t.appendChild(o.container),this.exitInputMode()):this.content=null}},r),i(()=>({container:this.outerContainer,style:this._outerContainerStyle}),({container:t,style:e})=>{Object.assign(t.style,e)},l),i(()=>({outerContainer:this.outerContainer,placement:this.effectivePlacement,effectiveOffset:this._effectiveOffset,rtl:this._rtl,debug:this.debug}),({outerContainer:t,placement:e,effectiveOffset:o,rtl:n,debug:i})=>{const{classList:s}=t;s.add(y.base),s.toggle(y.rtl,n),s.toggle(y.ltr,!n),s.toggle(y.debug,i),this.outerContainer.style.setProperty("--offset",`${o}px`),f(t),x(t,e)},l),s(()=>"feedback"===this.mode,()=>{this.position=null,this._clearOverride("effectivePlacement")},c),o(this.outerContainer,"paste",t=>{this.emit("paste",t)}),o(this.outerContainer,["focusin","focusout"],()=>{this._focused=this.content?.container?.contains(document.activeElement)??!1})])}destroy(){this.info=null,this.content=n(this.content),this.outerContainer.remove()}get mode(){return this.content?.mode??"feedback"}get focused(){return this._focused}get visible(){return"none"!==this._outerContainerStyle.display}get contentContainer(){return this.content?.container}get effectivePlacement(){const t=this.options?.placement;return"auto"===t?"bottom-end":t??b}get updating(){return this._updatingHandles.updating}get _screenPoint(){const{inputManager:t}=this.view;return t?.multiTouchActive?null:t?.latestPointerLocation}get _effectiveOffset(){return this.options?.offset??_}get _outerContainerStyle(){const t=this.position??this._screenPoint;if(this._lastPosition=a(t),null!=t&&null!=this.content){return{display:"block",transform:`translate(${Math.round(t.x)}px, ${Math.round(t.y)}px)`}}return{display:"none",transform:"none"}}clear(){this.info=null}async enterInputMode(t){const e=this.position??this._lastPosition??this._screenPoint,o=this.position=a(e),{effectivePlacement:n}=this;this._override("effectivePlacement",n);const i=()=>{o&&(this.position=j(this.contentContainer,o,this._effectiveOffset,this.view),Object.assign(this.outerContainer.style,this._outerContainerStyle))};await this._updatingHandles.addPromise(this.content?.enterInputMode(t,i))}async exitInputMode(t){await this._updatingHandles.addPromise(this.content?.exitInputMode(t))}onDragStart(t,e){this._prevXY=[t,e]}onDrag(t,e){const o=t-this._prevXY[0],n=e-this._prevXY[1];this._prevXY=[t,e];const{position:i}=this;if(i){const{view:s}=this,r=t-s.position[0],l=e-s.position[1];if(r<0||r>s.width||l<0||l>s.height-C)return;this.position=p(i.x+o,i.y+n)}}onDragEnd(){this._prevXY=[0,0]}};function j(t,e,o,n){if(!t||!n.container)return e;const i=t.getBoundingClientRect(),{left:s,top:r}=n.container.getBoundingClientRect();let{x:l,y:c}=e;const a=i.left-s-o;a<0&&(l-=a);const u=i.right-s+o-n.width;u>0&&(l-=u);const d=i.top-r-o;d<0&&(c-=d);const h=i.bottom-r+o-n.height;return h>0&&(c-=h),p(l,c)}t([u({nonNullable:!0})],P.prototype,"view",void 0),t([u()],P.prototype,"info",void 0),t([u()],P.prototype,"options",void 0),t([u()],P.prototype,"position",void 0),t([u()],P.prototype,"content",void 0),t([u({readOnly:!0})],P.prototype,"mode",null),t([u()],P.prototype,"_focused",void 0),t([u({readOnly:!0})],P.prototype,"focused",null),t([u({readOnly:!0})],P.prototype,"outerContainer",void 0),t([u({readOnly:!0})],P.prototype,"contentContainer",null),t([u({readOnly:!0})],P.prototype,"effectivePlacement",null),t([u()],P.prototype,"debug",void 0),t([u()],P.prototype,"updating",null),t([u()],P.prototype,"_lastPosition",void 0),t([u()],P.prototype,"_screenPoint",null),t([u()],P.prototype,"_rtl",void 0),t([u()],P.prototype,"_effectiveOffset",null),t([u()],P.prototype,"_outerContainerStyle",null),P=t([d("esri.views.interactive.Tooltip")],P);const O=["top","bottom","leading","trailing"].flatMap(t=>[w(`${t}-start`),w(t),w(`${t}-end`)]);function w(t){return`${y.base}--${t}`}function x({classList:t},e){O.forEach(e=>t.remove(e)),t.add(w(e))}export{P as default};
5
+ import{__decorate as t}from"tslib";import{EventedAccessor as e}from"../../core/Evented.js";import{on as o}from"../../core/events.js";import{destroyMaybe as n}from"../../core/maybe.js";import{watch as i,when as s,syncAndInitial as r,initial as l,sync as a}from"../../core/reactiveUtils.js";import{cloneScreenPoint as c,createScreenPoint as p}from"../../core/screenUtils.js";import{property as u}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as d}from"../../core/accessorSupport/decorators/subclass.js";import{UpdatingHandles as h}from"../../core/support/UpdatingHandles.js";import{setCalciteModeClass as f}from"../../support/modeUtils.js";import{base as m}from"./tooltip/css.js";import{tooltipContentFactory as g}from"./tooltip/content/tooltipContentFactory.js";import{isRTL as y}from"../../widgets/support/widgetUtils.js";const v={base:`${m}`,ltr:`${m}--ltr`,rtl:`${m}--rtl`,debug:`${m}--debug`},_=20,C=16,b="bottom-end";let P=class extends e{constructor(t){super(t),this.info=null,this.options=null,this.position=null,this.content=null,this._focused=!1,this.outerContainer=document.createElement("div"),this.debug=!1,this._updatingHandles=new h,this._lastPosition=null,this._rtl=!1,this._prevXY=[0,0]}initialize(){const{outerContainer:t}=this;this.addHandles([i(()=>this.view.overlay?.surface,e=>{t.remove(),e?.appendChild(t),this._rtl=y(e)},r),i(()=>this.info,(e,o)=>{if(null!=this.content&&null!=e&&null!=o&&e.type===o.type)this.content.info=e;else{n(this.content);const o=g(this,e);o?(this.content=o,o.container&&t.appendChild(o.container),this.exitInputMode()):this.content=null}},r),i(()=>({container:this.outerContainer,style:this._outerContainerStyle}),({container:t,style:e})=>{Object.assign(t.style,e)},l),i(()=>({outerContainer:this.outerContainer,placement:this.effectivePlacement,effectiveOffset:this._effectiveOffset,rtl:this._rtl,debug:this.debug}),({outerContainer:t,placement:e,effectiveOffset:o,rtl:n,debug:i})=>{const{classList:s}=t;s.add(v.base),s.toggle(v.rtl,n),s.toggle(v.ltr,!n),s.toggle(v.debug,i),this.outerContainer.style.setProperty("--offset",`${o}px`),f(t),x(t,e)},l),s(()=>"feedback"===this.mode,()=>{this.position=null,this._clearOverride("effectivePlacement")},a),o(this.outerContainer,"paste",t=>{this.emit("paste",t)}),o(this.outerContainer,["focusin","focusout"],()=>{this._focused=this.content?.container?.contains(document.activeElement)??!1})])}destroy(){this.info=null,this.content=n(this.content),this.outerContainer.remove()}get mode(){return this.content?.mode??"feedback"}get focused(){return this._focused}get visible(){return"none"!==this._outerContainerStyle.display}get contentContainer(){return this.content?.container}get effectivePlacement(){const t=this.options?.placement;return"auto"===t?"bottom-end":t??b}get updating(){return this._updatingHandles.updating}get _screenPoint(){const{inputManager:t}=this.view;return t?.multiTouchActive?null:t?.latestPointerLocation}get _effectiveOffset(){return this.options?.offset??_}get _outerContainerStyle(){const t=this.position??this._screenPoint;if(this._lastPosition=c(t),null!=t&&null!=this.content){return{display:"block",transform:`translate(${Math.round(t.x)}px, ${Math.round(t.y)}px)`}}return{display:"none",transform:"none"}}clear(){this.info=null}async enterInputMode(t){const e=this.position??this._lastPosition??this._screenPoint,o=this.position=c(e),{effectivePlacement:n}=this;this._override("effectivePlacement",n);const i=()=>{o&&(this.position=j(this.contentContainer,o,this._effectiveOffset,this.view),Object.assign(this.outerContainer.style,this._outerContainerStyle))};await this._updatingHandles.addPromise(this.content?.enterInputMode(t,i))}async exitInputMode(t){await this._updatingHandles.addPromise(this.content?.exitInputMode(t))}onDragStart(t,e){this._prevXY=[t,e]}onDrag(t,e){const o=t-this._prevXY[0],n=e-this._prevXY[1];this._prevXY=[t,e];const{position:i}=this;if(i){const{view:s}=this,r=t-s.position[0],l=e-s.position[1];if(r<0||r>s.width||l<0||l>s.height-C)return;this.position=p(i.x+o,i.y+n)}}onDragEnd(){this._prevXY=[0,0]}};function j(t,e,o,n){if(!t||!n.container)return e;const i=t.getBoundingClientRect(),{left:s,top:r}=n.container.getBoundingClientRect();let{x:l,y:a}=e;const c=i.left-s-o;c<0&&(l-=c);const u=i.right-s+o-n.width;u>0&&(l-=u);const d=i.top-r-o;d<0&&(a-=d);const h=i.bottom-r+o-n.height;return h>0&&(a-=h),p(l,a)}t([u({nonNullable:!0})],P.prototype,"view",void 0),t([u()],P.prototype,"info",void 0),t([u()],P.prototype,"options",void 0),t([u()],P.prototype,"position",void 0),t([u()],P.prototype,"content",void 0),t([u({readOnly:!0})],P.prototype,"mode",null),t([u()],P.prototype,"_focused",void 0),t([u({readOnly:!0})],P.prototype,"focused",null),t([u({readOnly:!0})],P.prototype,"outerContainer",void 0),t([u({readOnly:!0})],P.prototype,"contentContainer",null),t([u({readOnly:!0})],P.prototype,"effectivePlacement",null),t([u()],P.prototype,"debug",void 0),t([u()],P.prototype,"updating",null),t([u()],P.prototype,"_lastPosition",void 0),t([u()],P.prototype,"_screenPoint",null),t([u()],P.prototype,"_rtl",void 0),t([u()],P.prototype,"_effectiveOffset",null),t([u()],P.prototype,"_outerContainerStyle",null),P=t([d("esri.views.interactive.Tooltip")],P);const O=["top","bottom","leading","trailing"].flatMap(t=>[w(`${t}-start`),w(t),w(`${t}-end`)]);function w(t){return`${v.base}--${t}`}function x({classList:t},e){O.forEach(e=>t.remove(e)),t.add(w(e))}export{P as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{equals as e}from"../../../core/arrayUtils.js";import{neverReached as t}from"../../../core/compilerUtils.js";import s from"../../../core/Evented.js";import i from"../../../geometry/Polygon.js";import r from"../../../geometry/Polyline.js";import{createCoordinateHelper as o}from"../coordinateHelper.js";import{unnormalize as n,getUnnormalizationInfo as c}from"./unnormalizationHelper.js";class h{constructor(e){this.component=e,this.leftEdge=null,this.rightEdge=null,this.type="vertex",this.index=null}get pos(){return this._pos}set pos(e){this._pos=e,this.component.unnormalizeVertexPositions()}}class l{constructor(e,t,s){this.component=e,this.leftVertex=t,this.rightVertex=s,this.type="edge",t.rightEdge=this,s.leftEdge=this}}class a{constructor(e,t){this._spatialReference=e,this._viewingMode=t,this.vertices=[],this.edges=[],this.index=null}unnormalizeVertexPositions(){this.vertices.length<=1||n(this.vertices,c(this._spatialReference,this._viewingMode))}updateVertexIndex(e,t){if(0===this.vertices.length)return;const s=this.vertices[0];let i=null,r=e,o=t;do{i=r,i.index=o++,r=i.rightEdge?i.rightEdge.rightVertex:null}while(null!=r&&r!==s);i.leftEdge&&i!==this.vertices[this.vertices.length-1]&&this.swapVertices(this.vertices.indexOf(i),this.vertices.length-1)}getFirstVertex(){return this.vertices.at(0)}getLastVertex(){return this.vertices.at(-1)}isClosed(){return this.vertices.length>2&&null!==this.vertices[0].leftEdge}swapVertices(e,t){const s=this.vertices[e];this.vertices[e]=this.vertices[t],this.vertices[t]=s}*iterateVertices(){const e=this.getFirstVertex();let t=e;if(t)do{yield t,t=t.rightEdge?.rightVertex}while(t!==e&&null!=t)}}class p extends s{constructor(e,t){super(),this.type=e,this.coordinateHelper=t,this._geometry=null,this._dirty=!0,this.components=[]}get geometry(){if(this._dirty){switch(this.type){case"point":this._geometry=this._toPoint();break;case"polyline":this._geometry=this._toPolyline();break;case"polygon":this._geometry=this._toPolygon();break;case"mesh":break;default:t(this.type)}this._dirty=!1}return this._geometry}get spatialReference(){return this.coordinateHelper.spatialReference}get allVerticesUnordered(){return Array.from(this.iterateVerticesUnordered())}*iterateVerticesUnordered(){for(const e of this.components)for(const t of e.vertices)yield t}get allVertices(){return Array.from(this.iterateVertices())}*iterateVertices(){for(const e of this.components)yield*e.iterateVertices()}notifyChanges(e){this._dirty=!0,this.emit("change",e)}_toPoint(){return 0===this.components.length||0===this.components[0].vertices.length?null:this.coordinateHelper.vectorToPoint(this.components[0].vertices[0].pos)}_toPolyline(){const e=[],t=this.coordinateHelper.vectorToArray;for(const s of this.components){if(s.vertices.length<1)continue;const i=[];let r=s.vertices.find(e=>null==e.leftEdge);const o=r;do{i.push(t(r.pos)),r=r.rightEdge?r.rightEdge.rightVertex:null}while(r&&r!==o);e.push(i)}return new r({paths:e,spatialReference:this.spatialReference,hasZ:this.coordinateHelper.hasZ(),hasM:this.coordinateHelper.hasM()})}_toPolygon(){const e=[],t=this.coordinateHelper.vectorToArray;for(const s of this.components){if(s.vertices.length<1)continue;const i=[],r=s.vertices[0];let o=r;const n=o;do{i.push(t(o.pos)),o=null!=o.rightEdge?o.rightEdge.rightVertex:null}while(o&&o!==n);s.isClosed()&&i.push(t(r.pos)),e.push(i)}return new i({rings:e,spatialReference:this.spatialReference,hasZ:this.coordinateHelper.hasZ(),hasM:this.coordinateHelper.hasM()})}static fromGeometry(e,t){const s=e.spatialReference,i=o(e.hasZ,e.hasM,s),r=new p(e.type,i);switch(e.type){case"polygon":g(r,e,t);break;case"polyline":d(r,e,t);break;case"point":u(r,e,t);break;case"mesh":u(r,e.origin,t),r._geometry=e,r._dirty=!1}return r}}function g(t,s,i){const r=s.spatialReference,o=t.coordinateHelper,n=s.rings;for(let c=0;c<n.length;++c){const s=n[c],p=new a(r,i);p.index=c;const g=s.length>2&&e(s[0],s[s.length-1]),d=g?s.length-1:s.length;for(let e=0;e<d;++e){const t=o.arrayToVector(s[e]),i=new h(p);p.vertices.push(i),i.pos=t,i.index=e}const u=p.vertices.length-1;for(let e=0;e<u;++e){const t=p.vertices[e],s=p.vertices[e+1],i=new l(p,t,s);p.edges.push(i)}if(g){const e=new l(p,p.vertices[p.vertices.length-1],p.vertices[0]);p.edges.push(e)}t.components.push(p)}}function d(e,t,s){const i=t.spatialReference,r=e.coordinateHelper,o=t.paths;for(let n=0;n<o.length;++n){const t=o[n],c=new a(i,s);c.index=n;const p=t.length;for(let e=0;e<p;++e){const s=r.arrayToVector(t[e]),i=new h(c);c.vertices.push(i),i.pos=s,i.index=e}const g=c.vertices.length-1;for(let e=0;e<g;++e){const t=c.vertices[e],s=c.vertices[e+1],i=new l(c,t,s);c.edges.push(i)}e.components.push(c)}}function u(e,t,s){const i=t.spatialReference,r=e.coordinateHelper,o=new a(i,s);o.index=0;const n=new h(o);n.index=0,n.pos=r.pointToVector(t),o.vertices.push(n),e.components.push(o)}function f(e){return"mesh"===e.type}export{a as Component,l as Edge,p as EditGeometry,h as Vertex,f as isMeshEditGeometry};
5
+ import{equals as e}from"../../../core/arrayUtils.js";import{neverReached as t}from"../../../core/compilerUtils.js";import{Evented as s}from"../../../core/Evented.js";import i from"../../../geometry/Polygon.js";import r from"../../../geometry/Polyline.js";import{createCoordinateHelper as o}from"../coordinateHelper.js";import{unnormalize as n,getUnnormalizationInfo as c}from"./unnormalizationHelper.js";class h{constructor(e){this.component=e,this.leftEdge=null,this.rightEdge=null,this.type="vertex",this.index=null}get pos(){return this._pos}set pos(e){this._pos=e,this.component.unnormalizeVertexPositions()}}class l{constructor(e,t,s){this.component=e,this.leftVertex=t,this.rightVertex=s,this.type="edge",t.rightEdge=this,s.leftEdge=this}}class a{constructor(e,t){this._spatialReference=e,this._viewingMode=t,this.vertices=[],this.edges=[],this.index=null}unnormalizeVertexPositions(){this.vertices.length<=1||n(this.vertices,c(this._spatialReference,this._viewingMode))}updateVertexIndex(e,t){if(0===this.vertices.length)return;const s=this.vertices[0];let i=null,r=e,o=t;do{i=r,i.index=o++,r=i.rightEdge?i.rightEdge.rightVertex:null}while(null!=r&&r!==s);i.leftEdge&&i!==this.vertices[this.vertices.length-1]&&this.swapVertices(this.vertices.indexOf(i),this.vertices.length-1)}getFirstVertex(){return this.vertices.at(0)}getLastVertex(){return this.vertices.at(-1)}isClosed(){return this.vertices.length>2&&null!==this.vertices[0].leftEdge}swapVertices(e,t){const s=this.vertices[e];this.vertices[e]=this.vertices[t],this.vertices[t]=s}*iterateVertices(){const e=this.getFirstVertex();let t=e;if(t)do{yield t,t=t.rightEdge?.rightVertex}while(t!==e&&null!=t)}}class p extends s{constructor(e,t){super(),this.type=e,this.coordinateHelper=t,this._geometry=null,this._dirty=!0,this.components=[]}get geometry(){if(this._dirty){switch(this.type){case"point":this._geometry=this._toPoint();break;case"polyline":this._geometry=this._toPolyline();break;case"polygon":this._geometry=this._toPolygon();break;case"mesh":break;default:t(this.type)}this._dirty=!1}return this._geometry}get spatialReference(){return this.coordinateHelper.spatialReference}get allVerticesUnordered(){return Array.from(this.iterateVerticesUnordered())}*iterateVerticesUnordered(){for(const e of this.components)for(const t of e.vertices)yield t}get allVertices(){return Array.from(this.iterateVertices())}*iterateVertices(){for(const e of this.components)yield*e.iterateVertices()}notifyChanges(e){this._dirty=!0,this.emit("change",e)}_toPoint(){return 0===this.components.length||0===this.components[0].vertices.length?null:this.coordinateHelper.vectorToPoint(this.components[0].vertices[0].pos)}_toPolyline(){const e=[],t=this.coordinateHelper.vectorToArray;for(const s of this.components){if(s.vertices.length<1)continue;const i=[];let r=s.vertices.find(e=>null==e.leftEdge);const o=r;do{i.push(t(r.pos)),r=r.rightEdge?r.rightEdge.rightVertex:null}while(r&&r!==o);e.push(i)}return new r({paths:e,spatialReference:this.spatialReference,hasZ:this.coordinateHelper.hasZ(),hasM:this.coordinateHelper.hasM()})}_toPolygon(){const e=[],t=this.coordinateHelper.vectorToArray;for(const s of this.components){if(s.vertices.length<1)continue;const i=[],r=s.vertices[0];let o=r;const n=o;do{i.push(t(o.pos)),o=null!=o.rightEdge?o.rightEdge.rightVertex:null}while(o&&o!==n);s.isClosed()&&i.push(t(r.pos)),e.push(i)}return new i({rings:e,spatialReference:this.spatialReference,hasZ:this.coordinateHelper.hasZ(),hasM:this.coordinateHelper.hasM()})}static fromGeometry(e,t){const s=e.spatialReference,i=o(e.hasZ,e.hasM,s),r=new p(e.type,i);switch(e.type){case"polygon":g(r,e,t);break;case"polyline":d(r,e,t);break;case"point":u(r,e,t);break;case"mesh":u(r,e.origin,t),r._geometry=e,r._dirty=!1}return r}}function g(t,s,i){const r=s.spatialReference,o=t.coordinateHelper,n=s.rings;for(let c=0;c<n.length;++c){const s=n[c],p=new a(r,i);p.index=c;const g=s.length>2&&e(s[0],s[s.length-1]),d=g?s.length-1:s.length;for(let e=0;e<d;++e){const t=o.arrayToVector(s[e]),i=new h(p);p.vertices.push(i),i.pos=t,i.index=e}const u=p.vertices.length-1;for(let e=0;e<u;++e){const t=p.vertices[e],s=p.vertices[e+1],i=new l(p,t,s);p.edges.push(i)}if(g){const e=new l(p,p.vertices[p.vertices.length-1],p.vertices[0]);p.edges.push(e)}t.components.push(p)}}function d(e,t,s){const i=t.spatialReference,r=e.coordinateHelper,o=t.paths;for(let n=0;n<o.length;++n){const t=o[n],c=new a(i,s);c.index=n;const p=t.length;for(let e=0;e<p;++e){const s=r.arrayToVector(t[e]),i=new h(c);c.vertices.push(i),i.pos=s,i.index=e}const g=c.vertices.length-1;for(let e=0;e<g;++e){const t=c.vertices[e],s=c.vertices[e+1],i=new l(c,t,s);c.edges.push(i)}e.components.push(c)}}function u(e,t,s){const i=t.spatialReference,r=e.coordinateHelper,o=new a(i,s);o.index=0;const n=new h(o);n.index=0,n.pos=r.pointToVector(t),o.vertices.push(n),e.components.push(o)}function f(e){return"mesh"===e.type}export{a as Component,l as Edge,p as EditGeometry,h as Vertex,f as isMeshEditGeometry};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../../core/Evented.js";import{makeHandle as t}from"../../../core/handleUtils.js";import{clone as r}from"../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{hasCompatibleTopology as s}from"../../../geometry/support/coordsUtils.js";import{isMeshEditGeometry as i,EditGeometry as o}from"./EditGeometry.js";import{AppendVertex as a}from"./operations/AppendVertex.js";import{UpdateVertices as n}from"./operations/UpdateVertices.js";import{RemoveVertices as p}from"./operations/RemoveVertices.js";import{SplitEdge as d}from"./operations/SplitEdge.js";import{SetVertexPosition as c}from"./operations/SetVertexPosition.js";import{CloseComponent as h}from"./operations/CloseComponent.js";import{MoveMesh as u}from"./operations/MoveMesh.js";import{MoveVertex as l}from"./operations/MoveVertex.js";import{OffsetEdgeVertex as m}from"./operations/OffsetEdgeVertex.js";import{RotateVertex as V}from"./operations/RotateVertex.js";import{ScaleVertex as f}from"./operations/ScaleVertex.js";import{SetAllVertexPositions as y}from"./operations/SetAllVertexPositions.js";import{UndoGroup as _}from"./operations/UndoGroup.js";class v extends e{constructor(e,t){super(),this.data=e,this.viewingMode=t,this._undoStack=[],this._redoStack=[],this._listener=this.data.on("change",e=>{e.addedVertices&&this.emit("vertex-add",{type:"vertex-add",vertices:e.addedVertices,operation:e.operation}),e.removedVertices&&this.emit("vertex-remove",{type:"vertex-remove",vertices:e.removedVertices,operation:e.operation}),e.updatedVertices&&this.emit("vertex-update",{type:"vertex-update",vertices:e.updatedVertices,operation:e.operation})})}destroy(){this._listener.remove()}splitEdge(e,t){return this._apply(new d(this.data,e,t))}updateVertices(e,t,r=1){return this._apply(new n(this.data,e,t),r)}move(e,t,r,s=1){return i(this.data)?this._apply(new u(this.data,e,t,r),s):this.moveVertices(this.data.allVerticesUnordered,e,t,r,s)}moveVertices(e,t,r,s,o=1){return i(this.data)?this._apply(new u(this.data,t,r,s),o):this.updateVertices(e,new l(this.data.coordinateHelper,t,r,s),o)}scale(e,t,r,s,i=1,o=0){return this.scaleVertices(this.data.allVerticesUnordered,e,t,r,s,i,o)}scaleVertices(e,t,r,s,i,o=1,a=0){return this.updateVertices(e,new f(t,r,s,i,a),o)}rotate(e,t,r=1,s=0){return this.rotateVertices(this.data.allVerticesUnordered,e,t,r,s)}rotateVertices(e,t,r,s=1,i=0){return this.updateVertices(e,new V(t,r,i),s)}removeVertices(e){return this._apply(new p(this.data,e,this._minNumVerticesPerType))}appendVertex(e){return 0===this.data.components.length?null:this._apply(new a(this.data,this.data.components[0],e))}setVertexPosition(e,t){return this._apply(new c(this.data,e,t))}offsetEdge(e,t,r,s=1){return this.updateVertices([t.leftVertex,t.rightVertex],new m(this.data.coordinateHelper,e,t,r),s)}trySetGeometry(e,t=1){const{data:r}=this,{coordinateHelper:a}=r;if(r.type!==e.type||!r.spatialReference.equals(e.spatialReference)||a.hasZ()!==e.hasZ||a.hasM()!==e.hasM||!s(r.geometry,e)||i(r))return;const n=Array.from(o.fromGeometry(e,this.viewingMode).iterateVerticesUnordered(),e=>e.pos);return this.setVertexPositions(n,t)}setVertexPositions(e,t=1){return this._apply(new y(this.data,e),t)}createResetState(){if(i(this.data))return this._createResetStateMesh();const e=this.data.geometry.clone();return t(()=>this.trySetGeometry(e))}closeComponent(e){return this.data.components.includes(e)?this._apply(new h(this.data,e)):null}canRemoveVertex(e){return e.vertices.length>this._minNumVerticesPerType}createUndoGroup(){const e=new _;return this._apply(e),t(()=>e.close())}undo(){if(this._undoStack.length>0){const e=this._undoStack.pop();return e.undo(),this._redoStack.push(e),e}return null}redo(){if(this._redoStack.length>0){const e=this._redoStack.pop();return e.apply(),this._undoStack.push(e),e}return null}get canUndo(){return this._undoStack.length>0}get canRedo(){return this._redoStack.length>0}get lastOperation(){return this._undoStack.length>0?this._undoStack[this._undoStack.length-1]:null}get _minNumVerticesPerType(){switch(this.data.type){case"point":return 1;case"polyline":return 2;case"polygon":return 3;default:return 0}}_apply(e,t=1){return 0!==t&&null!=this.lastOperation&&this.lastOperation.accumulate(e)||(e.apply(),this._undoStack.push(e),this._redoStack=[]),e}_createResetStateMesh(){if(!i(this.data))return t();const e=this.data.geometry,{vertexSpace:s}=e;if(s.origin){const i=r(s.origin);return t(()=>{e.vertexSpace.origin=i})}const o=e.vertexAttributes.clonePositional();return t(()=>{e.vertexAttributes=o,e.vertexAttributesChanged()})}static fromGeometry(e,t){return new v(o.fromGeometry(e,t),t)}}export{v as EditGeometryOperations};
5
+ import{Evented as e}from"../../../core/Evented.js";import{makeHandle as t}from"../../../core/handleUtils.js";import{clone as r}from"../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{hasCompatibleTopology as s}from"../../../geometry/support/coordsUtils.js";import{isMeshEditGeometry as i,EditGeometry as o}from"./EditGeometry.js";import{AppendVertex as a}from"./operations/AppendVertex.js";import{UpdateVertices as n}from"./operations/UpdateVertices.js";import{RemoveVertices as p}from"./operations/RemoveVertices.js";import{SplitEdge as d}from"./operations/SplitEdge.js";import{SetVertexPosition as c}from"./operations/SetVertexPosition.js";import{CloseComponent as h}from"./operations/CloseComponent.js";import{MoveMesh as u}from"./operations/MoveMesh.js";import{MoveVertex as l}from"./operations/MoveVertex.js";import{OffsetEdgeVertex as m}from"./operations/OffsetEdgeVertex.js";import{RotateVertex as V}from"./operations/RotateVertex.js";import{ScaleVertex as f}from"./operations/ScaleVertex.js";import{SetAllVertexPositions as y}from"./operations/SetAllVertexPositions.js";import{UndoGroup as _}from"./operations/UndoGroup.js";class v extends e{constructor(e,t){super(),this.data=e,this.viewingMode=t,this._undoStack=[],this._redoStack=[],this._listener=this.data.on("change",e=>{e.addedVertices&&this.emit("vertex-add",{type:"vertex-add",vertices:e.addedVertices,operation:e.operation}),e.removedVertices&&this.emit("vertex-remove",{type:"vertex-remove",vertices:e.removedVertices,operation:e.operation}),e.updatedVertices&&this.emit("vertex-update",{type:"vertex-update",vertices:e.updatedVertices,operation:e.operation})})}destroy(){this._listener.remove()}splitEdge(e,t){return this._apply(new d(this.data,e,t))}updateVertices(e,t,r=1){return this._apply(new n(this.data,e,t),r)}move(e,t,r,s=1){return i(this.data)?this._apply(new u(this.data,e,t,r),s):this.moveVertices(this.data.allVerticesUnordered,e,t,r,s)}moveVertices(e,t,r,s,o=1){return i(this.data)?this._apply(new u(this.data,t,r,s),o):this.updateVertices(e,new l(this.data.coordinateHelper,t,r,s),o)}scale(e,t,r,s,i=1,o=0){return this.scaleVertices(this.data.allVerticesUnordered,e,t,r,s,i,o)}scaleVertices(e,t,r,s,i,o=1,a=0){return this.updateVertices(e,new f(t,r,s,i,a),o)}rotate(e,t,r=1,s=0){return this.rotateVertices(this.data.allVerticesUnordered,e,t,r,s)}rotateVertices(e,t,r,s=1,i=0){return this.updateVertices(e,new V(t,r,i),s)}removeVertices(e){return this._apply(new p(this.data,e,this._minNumVerticesPerType))}appendVertex(e){return 0===this.data.components.length?null:this._apply(new a(this.data,this.data.components[0],e))}setVertexPosition(e,t){return this._apply(new c(this.data,e,t))}offsetEdge(e,t,r,s=1){return this.updateVertices([t.leftVertex,t.rightVertex],new m(this.data.coordinateHelper,e,t,r),s)}trySetGeometry(e,t=1){const{data:r}=this,{coordinateHelper:a}=r;if(r.type!==e.type||!r.spatialReference.equals(e.spatialReference)||a.hasZ()!==e.hasZ||a.hasM()!==e.hasM||!s(r.geometry,e)||i(r))return;const n=Array.from(o.fromGeometry(e,this.viewingMode).iterateVerticesUnordered(),e=>e.pos);return this.setVertexPositions(n,t)}setVertexPositions(e,t=1){return this._apply(new y(this.data,e),t)}createResetState(){if(i(this.data))return this._createResetStateMesh();const e=this.data.geometry.clone();return t(()=>this.trySetGeometry(e))}closeComponent(e){return this.data.components.includes(e)?this._apply(new h(this.data,e)):null}canRemoveVertex(e){return e.vertices.length>this._minNumVerticesPerType}createUndoGroup(){const e=new _;return this._apply(e),t(()=>e.close())}undo(){if(this._undoStack.length>0){const e=this._undoStack.pop();return e.undo(),this._redoStack.push(e),e}return null}redo(){if(this._redoStack.length>0){const e=this._redoStack.pop();return e.apply(),this._undoStack.push(e),e}return null}get canUndo(){return this._undoStack.length>0}get canRedo(){return this._redoStack.length>0}get lastOperation(){return this._undoStack.length>0?this._undoStack[this._undoStack.length-1]:null}get _minNumVerticesPerType(){switch(this.data.type){case"point":return 1;case"polyline":return 2;case"polygon":return 3;default:return 0}}_apply(e,t=1){return 0!==t&&null!=this.lastOperation&&this.lastOperation.accumulate(e)||(e.apply(),this._undoStack.push(e),this._redoStack=[]),e}_createResetStateMesh(){if(!i(this.data))return t();const e=this.data.geometry,{vertexSpace:s}=e;if(s.origin){const i=r(s.origin);return t(()=>{e.vertexSpace.origin=i})}const o=e.vertexAttributes.clonePositional();return t(()=>{e.vertexAttributes=o,e.vertexAttributesChanged()})}static fromGeometry(e,t){return new v(o.fromGeometry(e,t),t)}}export{v as EditGeometryOperations};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import{createTask as t}from"../../../core/asyncUtils.js";import n from"../../../core/Evented.js";import"../../../core/has.js";import{throwIfAborted as i,isAborted as s}from"../../../core/promiseUtils.js";import{watch as a,syncAndInitial as r,sync as o}from"../../../core/reactiveUtils.js";import{property as p}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/Logger.js";import"../../../core/RandomLCG.js";import{subclass as d}from"../../../core/accessorSupport/decorators/subclass.js";import{project as c,initializeProjection as l}from"../../../geometry/projectionUtils.js";import{absoluteHeightElevationInfo as h}from"../../../support/elevationInfoUtils.js";import{fromPoint as u,markAsTarget as f,toElevationAlignedDehydratedPoint as g}from"../sketch/normalizedPoint.js";import{defaults as _}from"./Settings.js";import S from"./SnappingOptions.js";import{sortCandidatesInPlace as m,squaredScreenDistance as v}from"./snappingUtils.js";import{DrapedEdgeSnappingCandidate as y}from"./candidates/DrapedEdgeSnappingCandidate.js";import{EdgeSnappingCandidate as w}from"./candidates/EdgeSnappingCandidate.js";import{IntersectionSnappingCandidate as C}from"./candidates/IntersectionSnappingCandidate.js";import{LineSnappingCandidate as P}from"./candidates/LineSnappingCandidate.js";import{ParallelLineSnappingCandidate as E}from"./candidates/ParallelLineSnappingCandidate.js";import{RightAngleSnappingCandidate as T}from"./candidates/RightAngleSnappingCandidate.js";import{RightAngleTriangleSnappingCandidate as j}from"./candidates/RightAngleTriangleSnappingCandidate.js";import{vectorToScreenPoint as R}from"../support/viewUtils.js";import{loadGeodesicLengthMeasurementUtils as M}from"../../support/geodesicLengthMeasurementUtils.js";let q=class extends n.EventedAccessor{constructor(e){super(e),this.options=new S,this._engineCache=new Map,this._loadTask=null,this._engines=[],this._currentMainCandidate=null,this._currentOtherActiveCandidates=[],this._currentSnappedType=0}initialize(){this.addHandles([a(()=>{const{distance:e,touchSensitivityMultiplier:t,effectiveSelfEnabled:n,effectiveFeatureEnabled:i,effectiveGridEnabled:s}=this.options;return{selfEnabled:n,featureEnabled:i,gridEnabled:"2d"===this.view.type&&s,viewReady:this.view.ready,viewSpatialReference:this.view.spatialReference,distance:e,touchSensitivityMultiplier:t}},(e,n)=>{n&&(this.doneSnapping(),this.emit("changed")),this._loadTask?.abort(),this._loadTask=t(t=>this._updateEngines(e,n,t))},r),a(()=>this.options,e=>{for(const t of this._engines)t.options=e},o)])}destroy(){this._loadTask?.abort(),this._destroyEngines()}get updating(){return this._engines.some(e=>e.updating)||!this._loadTask?.finished}_destroyEngines(){this._engineCache.forEach(e=>e.destroy()),this._engineCache.clear(),this._engines=[]}async _updateEngines(e,t,n){if(!e.viewReady)return void this._destroyEngines();t?.viewSpatialReference!==e.viewSpatialReference&&this._destroyEngines();const i=this._engineCache,s=await Promise.allSettled([e.featureEnabled&&!i.has("feature")?this._createFeatureSnappingEngine(n):void 0,e.selfEnabled&&!i.has("self")?this._createSelfSnappingEngine(n):void 0,e.gridEnabled&&!i.has("grid")?this._createGridSnappingEngine(n):void 0]);if(n.aborted)for(const a of s)"fulfilled"===a.status&&a.value?.engine.destroy();else{for(const e of s)"fulfilled"===e.status&&e.value&&i.set(e.value.type,e.value.engine);this._engines=Array.from(i.values())}}async _createSelfSnappingEngine(e){const[{SelfSnappingEngine:t},n]=await Promise.all([import("./SelfSnappingEngine.js"),M()]);return i(e),{type:"self",engine:new t({view:this.view,options:this.options,geodesicLengthMeasurementUtils:n})}}async _createGridSnappingEngine(e){const{view:t}=this;if("2d"!==t.type)return;const{GridSnappingEngine:n}=await import("./GridSnappingEngine.js");return i(e),{type:"grid",engine:new n({view:t,options:this.options})}}async _createFeatureSnappingEngine(e){const{FeatureSnappingEngine:t}=await import("./FeatureSnappingEngine.js");i(e);const{view:n,options:s}=this,{spatialReference:a}=n;return{type:"feature",engine:new t({view:n,options:s,spatialReference:a})}}get _squaredMouseProximityThreshold(){return this.options.distance*this.options.distance}get _squaredTouchProximityThreshold(){const{distance:e,touchSensitivityMultiplier:t}=this.options,n=e*t;return n*n}snap(e){return O(e)?this._snapMultiPoint(e):this._snapSinglePoint(e)}update(e){const{point:t,context:n}=e;this._removeVisualization();const i=this._currentMainCandidate;if(null==i)return t;const s=this._selectUpdateInput(e);if(null==s)return t;const{spatialReference:a}=n,r=c(s,a);if(null==r)return t;const{view:o}=this,{elevationInfo:p,visualizer:d}=n,l=[],h=u(r,o,p),_=i.constraint.closestTo(h);if(!this._arePointsWithinScreenThreshold(h,_,n)||!z(i,n.drawConstraints))return this._resetSnappingState(),t;i.targetPoint=f(_),l.push(...i.hints);for(const c of this._currentOtherActiveCandidates)z(c,n.drawConstraints)&&(c.targetPoint=f(_),l.push(...c.hints));return null!=d&&this.addHandles(d.draw(l,{spatialReference:a,elevationInfo:H(n),view:o,selfSnappingZ:n.selfSnappingZ}),b),g(_,o,t,n)}doneSnapping(){this._removeVisualization(),this._resetSnappingState()}_selectUpdateInput({point:e,scenePoint:t}){switch(this._currentSnappedType){case 0:return e;case 1:return t}}_resetSnappingState(){this._currentMainCandidate=null,this._currentOtherActiveCandidates=[],this._currentSnappedType=0}_removeVisualization(){this.removeHandles(b)}async _snapSinglePoint({point:e,context:t,signal:n}){const{view:i}=this,{elevationInfo:s}=t,a=u(e,i,s),r=await this._fetchCandidates(a,3,t,n);return this._createSnapResult(a,0,r,i,e,t,n)}async _snapMultiPoint({point:e,scenePoint:t,context:n,signal:i}){const{view:s}=this,{coordinateHelper:a,elevationInfo:r,spatialReference:o}=n;await l(t.spatialReference,o);const p=c(t,o),d=u(p,s,r),h=await this._fetchCandidates(d,1,n,i);if(h.length>0){const e=await this._fetchCandidates(d,2,n,i);return this._createSnapResult(d,1,[...h,...e],s,p,n,i)}const f=u(e,s,r),g=await this._fetchCandidates(f,2,n,i);return this._createSnapResult(f,0,g,s,{z:a.hasZ()&&e.hasZ?e.z??0:void 0,m:a.hasM()&&e.hasM?e.m??0:void 0},n,i)}async _fetchCandidates(e,t,n,i){return(await Promise.all(this._engines.map(s=>s.fetchCandidates(e,t,n,i)))).flat()}_createSnapResult(e,t,n,i,a,r,o){return{get valid(){return!s(o)},apply:()=>{const{spatialReference:s}=r,{snappedPoint:o,hints:p}=this._processCandidates(e,t,n,r);return this._removeVisualization(),null!=r.visualizer&&this.addHandles(r.visualizer.draw(p,{spatialReference:s,elevationInfo:h,view:i,selfSnappingZ:r.selfSnappingZ}),b),g(o,i,a,r)}}}_processCandidates(e,t,n,i){if(n.length<1)return this.doneSnapping(),{snappedPoint:e,hints:[]};this._currentSnappedType!==t&&this._resetSnappingState(),m(e,n);const s=this._currentMainCandidate;if(null!=s){const a=U(s,n);if(a>=0){if(!(n[a]instanceof C))return this._intersectWithOtherCandidates(a,n,e,t,i);if(this._arePointsWithinScreenThreshold(e,s.targetPoint,i))return this._updateSnappingCandidate(s,t,n,i)}}return this._intersectWithOtherCandidates(0,n,e,t,i)}_intersectWithOtherCandidates(e,t,n,i,s){const{coordinateHelper:a}=s,r=t[e],o=[];for(let p=0;p<t.length;++p){if(p===e)continue;const i=t[p],s=r.constraint.intersect(i.constraint);if(s)for(const e of s.closestPoints(r.targetPoint))o.push([new C(f(e),r,i,i.isDraped),this._squaredScreenDistance(n,e,a)])}return o.length>0&&(o.sort((e,t)=>e[1]-t[1]),o[0][1]<this._squaredPointProximityThreshold(s.pointer))?this._updateSnappingCandidate(o[0][0],i,t,s):z(r,s.drawConstraints)?this._updateSnappingCandidate(r,i,t,s):{snappedPoint:n,hints:[]}}_updateSnappingCandidate(e,t,n,i){this.doneSnapping(),this._currentMainCandidate=e,this._currentSnappedType=t;const s=this._currentMainCandidate.targetPoint,a=[];a.push(...e.hints);for(const r of n){if(e instanceof C){if(r.constraint.equals(e.first.constraint)||r.constraint.equals(e.second.constraint))continue}else if(r.constraint.equals(e.constraint))continue;const t=r.constraint.closestTo(s);this._squaredScreenDistance(t,s,i.coordinateHelper)<x()&&(r.targetPoint=s,this._currentOtherActiveCandidates.push(r),a.push(...r.hints))}return{snappedPoint:s,hints:a}}_squaredPointProximityThreshold(e){return"touch"===e?this._squaredTouchProximityThreshold:this._squaredMouseProximityThreshold}_arePointsWithinScreenThreshold(e,t,n){return this._squaredScreenDistance(e,t,n.coordinateHelper)<this._squaredPointProximityThreshold(n.pointer)}_squaredScreenDistance(e,t,n){return v(this._toScreen(e,n),this._toScreen(t,n))}_toScreen(e,t){return R(e,t.spatialReference,h,this.view)}get test(){}};e([p({constructOnly:!0})],q.prototype,"view",void 0),e([p()],q.prototype,"options",void 0),e([p({readOnly:!0})],q.prototype,"updating",null),e([p()],q.prototype,"_loadTask",void 0),e([p()],q.prototype,"_engines",void 0),e([p()],q.prototype,"_squaredMouseProximityThreshold",null),e([p()],q.prototype,"_squaredTouchProximityThreshold",null),q=e([d("esri.views.interactive.snapping.SnappingManager")],q);const b="visualization-handle";function x(){return _.satisfiesConstraintScreenThreshold*_.satisfiesConstraintScreenThreshold}function z(e,t){return!t||null==t.direction&&null==t.distance||!(e instanceof y||e instanceof w||e instanceof P||e instanceof E||e instanceof j)&&(!(e instanceof T)||null==t.direction&&1===e.selfSnappingType)}function U(e,t){return e instanceof C?I(t,e.first)>=0&&I(t,e.second)>=0?0:-1:I(t,e)}function I(e,t){let n=-1;for(let i=0;i<e.length;++i)if(t.constraint.equals(e[i].constraint)){n=i;break}return n}function O(e){return null!=e.scenePoint}function H({coordinateHelper:e,elevationInfo:t}){return e.hasZ()?h:t}export{q as SnappingManager};
5
+ import{__decorate as e}from"tslib";import{createTask as t}from"../../../core/asyncUtils.js";import{EventedAccessor as n}from"../../../core/Evented.js";import"../../../core/has.js";import{throwIfAborted as i,isAborted as s}from"../../../core/promiseUtils.js";import{watch as a,syncAndInitial as r,sync as o}from"../../../core/reactiveUtils.js";import{property as p}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/Logger.js";import"../../../core/RandomLCG.js";import{subclass as d}from"../../../core/accessorSupport/decorators/subclass.js";import{project as c,initializeProjection as l}from"../../../geometry/projectionUtils.js";import{absoluteHeightElevationInfo as h}from"../../../support/elevationInfoUtils.js";import{fromPoint as u,markAsTarget as f,toElevationAlignedDehydratedPoint as g}from"../sketch/normalizedPoint.js";import{defaults as _}from"./Settings.js";import S from"./SnappingOptions.js";import{sortCandidatesInPlace as m,squaredScreenDistance as v}from"./snappingUtils.js";import{DrapedEdgeSnappingCandidate as y}from"./candidates/DrapedEdgeSnappingCandidate.js";import{EdgeSnappingCandidate as w}from"./candidates/EdgeSnappingCandidate.js";import{IntersectionSnappingCandidate as C}from"./candidates/IntersectionSnappingCandidate.js";import{LineSnappingCandidate as P}from"./candidates/LineSnappingCandidate.js";import{ParallelLineSnappingCandidate as T}from"./candidates/ParallelLineSnappingCandidate.js";import{RightAngleSnappingCandidate as E}from"./candidates/RightAngleSnappingCandidate.js";import{RightAngleTriangleSnappingCandidate as j}from"./candidates/RightAngleTriangleSnappingCandidate.js";import{vectorToScreenPoint as R}from"../support/viewUtils.js";import{loadGeodesicLengthMeasurementUtils as M}from"../../support/geodesicLengthMeasurementUtils.js";let q=class extends n{constructor(e){super(e),this.options=new S,this._engineCache=new Map,this._loadTask=null,this._engines=[],this._currentMainCandidate=null,this._currentOtherActiveCandidates=[],this._currentSnappedType=0}initialize(){this.addHandles([a(()=>{const{distance:e,touchSensitivityMultiplier:t,effectiveSelfEnabled:n,effectiveFeatureEnabled:i,effectiveGridEnabled:s}=this.options;return{selfEnabled:n,featureEnabled:i,gridEnabled:"2d"===this.view.type&&s,viewReady:this.view.ready,viewSpatialReference:this.view.spatialReference,distance:e,touchSensitivityMultiplier:t}},(e,n)=>{n&&(this.doneSnapping(),this.emit("changed")),this._loadTask?.abort(),this._loadTask=t(t=>this._updateEngines(e,n,t))},r),a(()=>this.options,e=>{for(const t of this._engines)t.options=e},o)])}destroy(){this._loadTask?.abort(),this._destroyEngines()}get updating(){return this._engines.some(e=>e.updating)||!this._loadTask?.finished}_destroyEngines(){this._engineCache.forEach(e=>e.destroy()),this._engineCache.clear(),this._engines=[]}async _updateEngines(e,t,n){if(!e.viewReady)return void this._destroyEngines();t?.viewSpatialReference!==e.viewSpatialReference&&this._destroyEngines();const i=this._engineCache,s=await Promise.allSettled([e.featureEnabled&&!i.has("feature")?this._createFeatureSnappingEngine(n):void 0,e.selfEnabled&&!i.has("self")?this._createSelfSnappingEngine(n):void 0,e.gridEnabled&&!i.has("grid")?this._createGridSnappingEngine(n):void 0]);if(n.aborted)for(const a of s)"fulfilled"===a.status&&a.value?.engine.destroy();else{for(const e of s)"fulfilled"===e.status&&e.value&&i.set(e.value.type,e.value.engine);this._engines=Array.from(i.values())}}async _createSelfSnappingEngine(e){const[{SelfSnappingEngine:t},n]=await Promise.all([import("./SelfSnappingEngine.js"),M()]);return i(e),{type:"self",engine:new t({view:this.view,options:this.options,geodesicLengthMeasurementUtils:n})}}async _createGridSnappingEngine(e){const{view:t}=this;if("2d"!==t.type)return;const{GridSnappingEngine:n}=await import("./GridSnappingEngine.js");return i(e),{type:"grid",engine:new n({view:t,options:this.options})}}async _createFeatureSnappingEngine(e){const{FeatureSnappingEngine:t}=await import("./FeatureSnappingEngine.js");i(e);const{view:n,options:s}=this,{spatialReference:a}=n;return{type:"feature",engine:new t({view:n,options:s,spatialReference:a})}}get _squaredMouseProximityThreshold(){return this.options.distance*this.options.distance}get _squaredTouchProximityThreshold(){const{distance:e,touchSensitivityMultiplier:t}=this.options,n=e*t;return n*n}snap(e){return O(e)?this._snapMultiPoint(e):this._snapSinglePoint(e)}update(e){const{point:t,context:n}=e;this._removeVisualization();const i=this._currentMainCandidate;if(null==i)return t;const s=this._selectUpdateInput(e);if(null==s)return t;const{spatialReference:a}=n,r=c(s,a);if(null==r)return t;const{view:o}=this,{elevationInfo:p,visualizer:d}=n,l=[],h=u(r,o,p),_=i.constraint.closestTo(h);if(!this._arePointsWithinScreenThreshold(h,_,n)||!z(i,n.drawConstraints))return this._resetSnappingState(),t;i.targetPoint=f(_),l.push(...i.hints);for(const c of this._currentOtherActiveCandidates)z(c,n.drawConstraints)&&(c.targetPoint=f(_),l.push(...c.hints));return null!=d&&this.addHandles(d.draw(l,{spatialReference:a,elevationInfo:H(n),view:o,selfSnappingZ:n.selfSnappingZ}),b),g(_,o,t,n)}doneSnapping(){this._removeVisualization(),this._resetSnappingState()}_selectUpdateInput({point:e,scenePoint:t}){switch(this._currentSnappedType){case 0:return e;case 1:return t}}_resetSnappingState(){this._currentMainCandidate=null,this._currentOtherActiveCandidates=[],this._currentSnappedType=0}_removeVisualization(){this.removeHandles(b)}async _snapSinglePoint({point:e,context:t,signal:n}){const{view:i}=this,{elevationInfo:s}=t,a=u(e,i,s),r=await this._fetchCandidates(a,3,t,n);return this._createSnapResult(a,0,r,i,e,t,n)}async _snapMultiPoint({point:e,scenePoint:t,context:n,signal:i}){const{view:s}=this,{coordinateHelper:a,elevationInfo:r,spatialReference:o}=n;await l(t.spatialReference,o);const p=c(t,o),d=u(p,s,r),h=await this._fetchCandidates(d,1,n,i);if(h.length>0){const e=await this._fetchCandidates(d,2,n,i);return this._createSnapResult(d,1,[...h,...e],s,p,n,i)}const f=u(e,s,r),g=await this._fetchCandidates(f,2,n,i);return this._createSnapResult(f,0,g,s,{z:a.hasZ()&&e.hasZ?e.z??0:void 0,m:a.hasM()&&e.hasM?e.m??0:void 0},n,i)}async _fetchCandidates(e,t,n,i){return(await Promise.all(this._engines.map(s=>s.fetchCandidates(e,t,n,i)))).flat()}_createSnapResult(e,t,n,i,a,r,o){return{get valid(){return!s(o)},apply:()=>{const{spatialReference:s}=r,{snappedPoint:o,hints:p}=this._processCandidates(e,t,n,r);return this._removeVisualization(),null!=r.visualizer&&this.addHandles(r.visualizer.draw(p,{spatialReference:s,elevationInfo:h,view:i,selfSnappingZ:r.selfSnappingZ}),b),g(o,i,a,r)}}}_processCandidates(e,t,n,i){if(n.length<1)return this.doneSnapping(),{snappedPoint:e,hints:[]};this._currentSnappedType!==t&&this._resetSnappingState(),m(e,n);const s=this._currentMainCandidate;if(null!=s){const a=U(s,n);if(a>=0){if(!(n[a]instanceof C))return this._intersectWithOtherCandidates(a,n,e,t,i);if(this._arePointsWithinScreenThreshold(e,s.targetPoint,i))return this._updateSnappingCandidate(s,t,n,i)}}return this._intersectWithOtherCandidates(0,n,e,t,i)}_intersectWithOtherCandidates(e,t,n,i,s){const{coordinateHelper:a}=s,r=t[e],o=[];for(let p=0;p<t.length;++p){if(p===e)continue;const i=t[p],s=r.constraint.intersect(i.constraint);if(s)for(const e of s.closestPoints(r.targetPoint))o.push([new C(f(e),r,i,i.isDraped),this._squaredScreenDistance(n,e,a)])}return o.length>0&&(o.sort((e,t)=>e[1]-t[1]),o[0][1]<this._squaredPointProximityThreshold(s.pointer))?this._updateSnappingCandidate(o[0][0],i,t,s):z(r,s.drawConstraints)?this._updateSnappingCandidate(r,i,t,s):{snappedPoint:n,hints:[]}}_updateSnappingCandidate(e,t,n,i){this.doneSnapping(),this._currentMainCandidate=e,this._currentSnappedType=t;const s=this._currentMainCandidate.targetPoint,a=[];a.push(...e.hints);for(const r of n){if(e instanceof C){if(r.constraint.equals(e.first.constraint)||r.constraint.equals(e.second.constraint))continue}else if(r.constraint.equals(e.constraint))continue;const t=r.constraint.closestTo(s);this._squaredScreenDistance(t,s,i.coordinateHelper)<x()&&(r.targetPoint=s,this._currentOtherActiveCandidates.push(r),a.push(...r.hints))}return{snappedPoint:s,hints:a}}_squaredPointProximityThreshold(e){return"touch"===e?this._squaredTouchProximityThreshold:this._squaredMouseProximityThreshold}_arePointsWithinScreenThreshold(e,t,n){return this._squaredScreenDistance(e,t,n.coordinateHelper)<this._squaredPointProximityThreshold(n.pointer)}_squaredScreenDistance(e,t,n){return v(this._toScreen(e,n),this._toScreen(t,n))}_toScreen(e,t){return R(e,t.spatialReference,h,this.view)}get test(){}};e([p({constructOnly:!0})],q.prototype,"view",void 0),e([p()],q.prototype,"options",void 0),e([p({readOnly:!0})],q.prototype,"updating",null),e([p()],q.prototype,"_loadTask",void 0),e([p()],q.prototype,"_engines",void 0),e([p()],q.prototype,"_squaredMouseProximityThreshold",null),e([p()],q.prototype,"_squaredTouchProximityThreshold",null),q=e([d("esri.views.interactive.snapping.SnappingManager")],q);const b="visualization-handle";function x(){return _.satisfiesConstraintScreenThreshold*_.satisfiesConstraintScreenThreshold}function z(e,t){return!t||null==t.direction&&null==t.distance||!(e instanceof y||e instanceof w||e instanceof P||e instanceof T||e instanceof j)&&(!(e instanceof E)||null==t.direction&&1===e.selfSnappingType)}function U(e,t){return e instanceof C?I(t,e.first)>=0&&I(t,e.second)>=0?0:-1:I(t,e)}function I(e,t){let n=-1;for(let i=0;i<e.length;++i)if(t.constraint.equals(e[i].constraint)){n=i;break}return n}function O(e){return null!=e.scenePoint}function H({coordinateHelper:e,elevationInfo:t}){return e.hasZ()?h:t}export{q as SnappingManager};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import t from"../../../../../core/Evented.js";import{createResolver as i,throwIfAborted as r}from"../../../../../core/promiseUtils.js";import{watch as s,sync as a,whenOnce as n}from"../../../../../core/reactiveUtils.js";import{property as o}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/has.js";import"../../../../../core/Logger.js";import"../../../../../core/RandomLCG.js";import{subclass as l}from"../../../../../core/accessorSupport/decorators/subclass.js";import{UpdatingHandles as u}from"../../../../../core/support/UpdatingHandles.js";import d from"../../../../../geometry/SpatialReference.js";import{fromJSON as c}from"../../../../../geometry/support/jsonUtils.js";import{executeQueryForSnapping as h}from"../../../../../layers/graphics/data/executeQueryForSnapping.js";import p from"../../../../../layers/graphics/data/FeatureStore.js";import{QueryEngine as f}from"../../../../../layers/graphics/data/QueryEngine.js";import m from"../../../../../layers/support/TileInfo.js";import g from"../../../../../rest/support/Query.js";import y from"../../../../../symbols/support/ElevationInfo.js";import{getSnappingCandidateElevationAligner as _}from"../snappingCandidateElevationAlignment.js";import{getSnappingCandidateElevationFilter as S}from"../snappingCandidateElevationFilter.js";import{getSymbologySnappingCandidatesFetcher as F}from"../symbologySnappingCandidates.js";import{FeatureServiceTiledFetcher as v}from"./FeatureServiceTiledFetcher.js";import{FeatureServiceTileStore as I}from"./FeatureServiceTileStore.js";let w=class extends t.EventedAccessor{constructor(){super(...arguments),this._isInitializing=!0,this.remoteClient=null,this._whenSetup=i(),this._elevationAligner=_(),this._elevationFilter=S(),this._symbologyCandidatesFetcher=F(),this._updatingHandles=new u,this._alignPointsInFeatures=async(e,t)=>{const i={query:e},s=await this.remoteClient.invoke("alignElevation",i,{signal:t});return r(t),s},this._getSymbologyCandidates=async(e,t)=>{const i={candidates:e,spatialReference:this._spatialReference.toJSON()},s=await this.remoteClient.invoke("getSymbologyCandidates",i,{signal:t});return r(t),s}}get updating(){return this._isInitializing||this._updatingHandles.updating||this._featureFetcher.updating}destroy(){this._featureFetcher?.destroy(),this._queryEngine?.destroy(),this._featureStore?.clear()}async setup(e){if(this.destroyed)return{result:{}};const{geometryType:t,objectIdField:i,timeInfo:r,fieldsIndex:n}=e.serviceInfo,{hasZ:o}=e,l=d.fromJSON(e.spatialReference);this._spatialReference=l,this._featureStore=new p({...e.serviceInfo,hasZ:o,hasM:!1}),this._featureStore.estimateFeatureUsedMemory=e=>e.usedMemory,this._queryEngine=new f({spatialReference:e.spatialReference,featureStore:this._featureStore,geometryType:t,fieldsIndex:n,hasZ:o,hasM:!1,featureIdInfo:{type:"object-id",fieldName:i},timeInfo:r}),this._featureFetcher=new v({store:new I({featureStore:this._featureStore}),url:e.serviceInfo.url,objectIdField:e.serviceInfo.objectIdField,globalIdField:e.serviceInfo.globalIdField,capabilities:e.serviceInfo.capabilities,spatialReference:l,sourceSpatialReference:d.fromJSON(e.serviceInfo.spatialReference),customParameters:e.configuration.customParameters});const u="3d"===e.configuration.viewType;return this._elevationAligner=_(u,{elevationInfo:null!=e.elevationInfo?y.fromJSON(e.elevationInfo):null,alignPointsInFeatures:this._alignPointsInFeatures}),this._elevationFilter=S(u),this.addHandles([s(()=>this._featureFetcher.availability,e=>this.emit("notify-availability",{availability:e}),a),s(()=>this.updating,()=>this._notifyUpdating())]),this._whenSetup.resolve(),this._isInitializing=!1,this.configure(e.configuration)}async configure(e){return await this._updatingHandles.addPromise(this._whenSetup.promise),this._updateFeatureFetcherConfiguration(e),C}async setSuspended(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),this._featureFetcher.suspended=e,C}async updateOutFields(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),this._featureFetcher.outFields=new Set(e??[]),C}async fetchCandidates(e,t){await this._whenSetup.promise,r(t);const i=j(e,this._featureStore.hasZ),s=t?.signal,a=await h(this._queryEngine,i,s);r(s);const n=await this._elevationAligner.alignCandidates(a.candidates,d.fromJSON(e.point.spatialReference)??d.WGS84,s);r(s);const o=await this._symbologyCandidatesFetcher.fetch(n,s);r(s);const l=0===o.length?n:n.concat(o);return{result:{candidates:this._elevationFilter.filter(i,l)}}}async updateTiles(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),this._featureFetcher.tileSize=e.tileSize,this._featureFetcher.tilesOfInterest=e.tiles,this._featureFetcher.tileInfo=null!=e.tileInfo?m.fromJSON(e.tileInfo):null,C}async refresh(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),this._featureFetcher.refresh(),C}async whenNotUpdating(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),await n(()=>!this.updating,t),r(t),C}async getDebugInfo(e,t){return r(t),{result:this._featureFetcher.debugInfo}}async handleEdits(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),await this._updatingHandles.addPromise(this._featureFetcher.handleEdits(e)),r(t),C}async setHistoricMoment(e,t){return this._featureFetcher.setHistoricMoment(e.moment),C}async notifyElevationSourceChange(e,t){return this._elevationAligner.notifyElevationSourceChange(),C}async notifySymbologyChange(e,t){return this._symbologyCandidatesFetcher.notifySymbologyChange(),C}async setSymbologySnappingSupported(e){return this._symbologyCandidatesFetcher=F(e,this._getSymbologyCandidates),C}_updateFeatureFetcherConfiguration(e){this._featureFetcher.filter=null!=e.filter?g.fromJSON(e.filter):null,this._featureFetcher.customParameters=e.customParameters}_notifyUpdating(){this.emit("notify-updating",{updating:this.updating})}};e([o({readOnly:!0})],w.prototype,"updating",null),e([o()],w.prototype,"_isInitializing",void 0),w=e([l("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceSnappingSourceWorker")],w);const b=w;function j(e,t){const i=!!t||void 0;if(!e.filter)return{...e,query:{where:"1=1",returnZ:i}};const{distance:r,units:s,spatialRel:a,where:n,timeExtent:o,objectIds:l}=e.filter,u={geometry:e.filter.geometry?c(e.filter.geometry):void 0,distance:r,units:s,spatialRel:a,timeExtent:o,objectIds:l,returnZ:i,where:n??"1=1"};return{...e,query:u}}const C={result:{}};export{b as default};
5
+ import{__decorate as e}from"tslib";import{EventedAccessor as t}from"../../../../../core/Evented.js";import{createResolver as i,throwIfAborted as r}from"../../../../../core/promiseUtils.js";import{watch as s,sync as a,whenOnce as n}from"../../../../../core/reactiveUtils.js";import{property as o}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/has.js";import"../../../../../core/Logger.js";import"../../../../../core/RandomLCG.js";import{subclass as l}from"../../../../../core/accessorSupport/decorators/subclass.js";import{UpdatingHandles as u}from"../../../../../core/support/UpdatingHandles.js";import d from"../../../../../geometry/SpatialReference.js";import{fromJSON as h}from"../../../../../geometry/support/jsonUtils.js";import{executeQueryForSnapping as c}from"../../../../../layers/graphics/data/executeQueryForSnapping.js";import p from"../../../../../layers/graphics/data/FeatureStore.js";import{QueryEngine as f}from"../../../../../layers/graphics/data/QueryEngine.js";import m from"../../../../../layers/support/TileInfo.js";import g from"../../../../../rest/support/Query.js";import y from"../../../../../symbols/support/ElevationInfo.js";import{getSnappingCandidateElevationAligner as _}from"../snappingCandidateElevationAlignment.js";import{getSnappingCandidateElevationFilter as S}from"../snappingCandidateElevationFilter.js";import{getSymbologySnappingCandidatesFetcher as F}from"../symbologySnappingCandidates.js";import{FeatureServiceTiledFetcher as v}from"./FeatureServiceTiledFetcher.js";import{FeatureServiceTileStore as I}from"./FeatureServiceTileStore.js";let w=class extends t{constructor(){super(...arguments),this._isInitializing=!0,this.remoteClient=null,this._whenSetup=i(),this._elevationAligner=_(),this._elevationFilter=S(),this._symbologyCandidatesFetcher=F(),this._updatingHandles=new u,this._alignPointsInFeatures=async(e,t)=>{const i={query:e},s=await this.remoteClient.invoke("alignElevation",i,{signal:t});return r(t),s},this._getSymbologyCandidates=async(e,t)=>{const i={candidates:e,spatialReference:this._spatialReference.toJSON()},s=await this.remoteClient.invoke("getSymbologyCandidates",i,{signal:t});return r(t),s}}get updating(){return this._isInitializing||this._updatingHandles.updating||this._featureFetcher.updating}destroy(){this._featureFetcher?.destroy(),this._queryEngine?.destroy(),this._featureStore?.clear()}async setup(e){if(this.destroyed)return{result:{}};const{geometryType:t,objectIdField:i,timeInfo:r,fieldsIndex:n}=e.serviceInfo,{hasZ:o}=e,l=d.fromJSON(e.spatialReference);this._spatialReference=l,this._featureStore=new p({...e.serviceInfo,hasZ:o,hasM:!1}),this._featureStore.estimateFeatureUsedMemory=e=>e.usedMemory,this._queryEngine=new f({spatialReference:e.spatialReference,featureStore:this._featureStore,geometryType:t,fieldsIndex:n,hasZ:o,hasM:!1,featureIdInfo:{type:"object-id",fieldName:i},timeInfo:r}),this._featureFetcher=new v({store:new I({featureStore:this._featureStore}),url:e.serviceInfo.url,objectIdField:e.serviceInfo.objectIdField,globalIdField:e.serviceInfo.globalIdField,capabilities:e.serviceInfo.capabilities,spatialReference:l,sourceSpatialReference:d.fromJSON(e.serviceInfo.spatialReference),customParameters:e.configuration.customParameters});const u="3d"===e.configuration.viewType;return this._elevationAligner=_(u,{elevationInfo:null!=e.elevationInfo?y.fromJSON(e.elevationInfo):null,alignPointsInFeatures:this._alignPointsInFeatures}),this._elevationFilter=S(u),this.addHandles([s(()=>this._featureFetcher.availability,e=>this.emit("notify-availability",{availability:e}),a),s(()=>this.updating,()=>this._notifyUpdating())]),this._whenSetup.resolve(),this._isInitializing=!1,this.configure(e.configuration)}async configure(e){return await this._updatingHandles.addPromise(this._whenSetup.promise),this._updateFeatureFetcherConfiguration(e),C}async setSuspended(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),this._featureFetcher.suspended=e,C}async updateOutFields(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),this._featureFetcher.outFields=new Set(e??[]),C}async fetchCandidates(e,t){await this._whenSetup.promise,r(t);const i=j(e,this._featureStore.hasZ),s=t?.signal,a=await c(this._queryEngine,i,s);r(s);const n=await this._elevationAligner.alignCandidates(a.candidates,d.fromJSON(e.point.spatialReference)??d.WGS84,s);r(s);const o=await this._symbologyCandidatesFetcher.fetch(n,s);r(s);const l=0===o.length?n:n.concat(o);return{result:{candidates:this._elevationFilter.filter(i,l)}}}async updateTiles(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),this._featureFetcher.tileSize=e.tileSize,this._featureFetcher.tilesOfInterest=e.tiles,this._featureFetcher.tileInfo=null!=e.tileInfo?m.fromJSON(e.tileInfo):null,C}async refresh(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),this._featureFetcher.refresh(),C}async whenNotUpdating(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),await n(()=>!this.updating,t),r(t),C}async getDebugInfo(e,t){return r(t),{result:this._featureFetcher.debugInfo}}async handleEdits(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),r(t),await this._updatingHandles.addPromise(this._featureFetcher.handleEdits(e)),r(t),C}async setHistoricMoment(e,t){return this._featureFetcher.setHistoricMoment(e.moment),C}async notifyElevationSourceChange(e,t){return this._elevationAligner.notifyElevationSourceChange(),C}async notifySymbologyChange(e,t){return this._symbologyCandidatesFetcher.notifySymbologyChange(),C}async setSymbologySnappingSupported(e){return this._symbologyCandidatesFetcher=F(e,this._getSymbologyCandidates),C}_updateFeatureFetcherConfiguration(e){this._featureFetcher.filter=null!=e.filter?g.fromJSON(e.filter):null,this._featureFetcher.customParameters=e.customParameters}_notifyUpdating(){this.emit("notify-updating",{updating:this.updating})}};e([o({readOnly:!0})],w.prototype,"updating",null),e([o()],w.prototype,"_isInitializing",void 0),w=e([l("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceSnappingSourceWorker")],w);const b=w;function j(e,t){const i=!!t||void 0;if(!e.filter)return{...e,query:{where:"1=1",returnZ:i}};const{distance:r,units:s,spatialRel:a,where:n,timeExtent:o,objectIds:l}=e.filter,u={geometry:e.filter.geometry?h(e.filter.geometry):void 0,distance:r,units:s,spatialRel:a,timeExtent:o,objectIds:l,returnZ:i,where:n??"1=1"};return{...e,query:u}}const C={result:{}};export{b as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import t from"../../core/Accessor.js";import r from"../../core/Evented.js";import i from"../../core/Identifiable.js";import s from"../../core/Logger.js";import{destroyMaybe as n}from"../../core/maybe.js";import l from"../../core/Promise.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as a}from"../../core/accessorSupport/decorators/subclass.js";import{UpdatingHandles as p}from"../../core/support/UpdatingHandles.js";import{validateScaleRange as d}from"../support/layerViewUtils.js";let u=class extends(i.IdentifiableMixin(l.EsriPromiseMixin(r.EventedMixin(t)))){get spatialReferenceSupported(){return!0}constructor(e){super(e),this._updatingHandles=new p,this.layer=null,this.parent=null}initialize(){this.when().catch(e=>{if("layerview:create-error"!==e.name){const t=this.layer&&this.layer.id||"no id",r=this.layer?.title||"no title";s.getLogger(this).error("#resolve()",`Failed to resolve layer view (layer title: '${r}', id: '${t}')`,e)}})}destroy(){this._updatingHandles=n(this._updatingHandles),this._set("parent",null)}get fullOpacity(){return(this.layer?.opacity??1)*(this.parent?.fullOpacity??1)}get suspended(){return this.destroyed||!this.canResume()}get suspendInfo(){return this.getSuspendInfo()}get legendEnabled(){return!this.suspended&&!0===this.layer?.legendEnabled}get updating(){return!(!this._updatingHandles?.updating&&!this.isUpdating())}get updatingProgress(){return this.updating?0:1}get updateSuspended(){return this.suspended}get visible(){return!0===this.layer?.visible}set visible(e){this._overrideIfSome("visible",e)}get visibleAtCurrentScale(){return!0}get visibleAtCurrentTimeExtent(){const e=this.view.timeExtent,t=this.layer?.visibilityTimeExtent;return!e||!t||!e.intersection(t).isEmpty}canResume(){const e=this.layer&&"effectiveScaleRange"in this.layer?this.layer.effectiveScaleRange:null;return this.visible&&this.layer?.loaded&&this.parent&&!this.parent.suspended&&this.view?.ready&&d(e)&&this.visibleAtCurrentScale&&this.visibleAtCurrentTimeExtent||!1}getSuspendInfo(){const e=this.parent?.suspended?this.parent.suspendInfo:{},t=this;t.view?.ready||(e.viewNotReady=!0),this.layer&&this.layer.loaded||(e.layerNotLoaded=!0);const r=this.layer&&"effectiveScaleRange"in this.layer?this.layer.effectiveScaleRange:null;return d(r)&&this.visibleAtCurrentScale||(e.outsideScaleRange=!0),this.visibleAtCurrentTimeExtent||(e.outsideVisibilityTimeExtent=!0),this.visible||(e.layerInvisible=!0),e}isUpdating(){return!1}};e([o({readOnly:!0})],u.prototype,"spatialReferenceSupported",null),e([o()],u.prototype,"view",void 0),e([o()],u.prototype,"fullOpacity",null),e([o()],u.prototype,"layer",void 0),e([o()],u.prototype,"parent",void 0),e([o({readOnly:!0})],u.prototype,"suspended",null),e([o({readOnly:!0})],u.prototype,"suspendInfo",null),e([o({readOnly:!0})],u.prototype,"legendEnabled",null),e([o({type:Boolean,readOnly:!0})],u.prototype,"updating",null),e([o({readOnly:!0})],u.prototype,"updatingProgress",null),e([o()],u.prototype,"updateSuspended",null),e([o()],u.prototype,"visible",null),e([o({readOnly:!0})],u.prototype,"visibleAtCurrentScale",null),e([o({readOnly:!0})],u.prototype,"visibleAtCurrentTimeExtent",null),u=e([a("esri.views.layers.LayerView")],u);export{u as default};
5
+ import{__decorate as e}from"tslib";import t from"../../core/Accessor.js";import{EventedMixin as r}from"../../core/Evented.js";import{IdentifiableMixin as i}from"../../core/Identifiable.js";import s from"../../core/Logger.js";import{destroyMaybe as n}from"../../core/maybe.js";import l from"../../core/Promise.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as a}from"../../core/accessorSupport/decorators/subclass.js";import{UpdatingHandles as p}from"../../core/support/UpdatingHandles.js";import{validateScaleRange as d}from"../support/layerViewUtils.js";let u=class extends(i(l.EsriPromiseMixin(r(t)))){get spatialReferenceSupported(){return!0}constructor(e){super(e),this._updatingHandles=new p,this.layer=null,this.parent=null}initialize(){this.when().catch(e=>{if("layerview:create-error"!==e.name){const t=this.layer&&this.layer.id||"no id",r=this.layer?.title||"no title";s.getLogger(this).error("#resolve()",`Failed to resolve layer view (layer title: '${r}', id: '${t}')`,e)}})}destroy(){this._updatingHandles=n(this._updatingHandles),this._set("parent",null)}get fullOpacity(){return(this.layer?.opacity??1)*(this.parent?.fullOpacity??1)}get suspended(){return this.destroyed||!this.canResume()}get suspendInfo(){return this.getSuspendInfo()}get legendEnabled(){return!this.suspended&&!0===this.layer?.legendEnabled}get updating(){return!(!this._updatingHandles?.updating&&!this.isUpdating())}get updatingProgress(){return this.updating?0:1}get updateSuspended(){return this.suspended}get visible(){return!0===this.layer?.visible}set visible(e){this._overrideIfSome("visible",e)}get visibleAtCurrentScale(){return!0}get visibleAtCurrentTimeExtent(){const e=this.view.timeExtent,t=this.layer?.visibilityTimeExtent;return!e||!t||!e.intersection(t).isEmpty}canResume(){const e=this.layer&&"effectiveScaleRange"in this.layer?this.layer.effectiveScaleRange:null;return this.visible&&this.layer?.loaded&&this.parent&&!this.parent.suspended&&this.view?.ready&&d(e)&&this.visibleAtCurrentScale&&this.visibleAtCurrentTimeExtent||!1}getSuspendInfo(){const e=this.parent?.suspended?this.parent.suspendInfo:{},t=this;t.view?.ready||(e.viewNotReady=!0),this.layer&&this.layer.loaded||(e.layerNotLoaded=!0);const r=this.layer&&"effectiveScaleRange"in this.layer?this.layer.effectiveScaleRange:null;return d(r)&&this.visibleAtCurrentScale||(e.outsideScaleRange=!0),this.visibleAtCurrentTimeExtent||(e.outsideVisibilityTimeExtent=!0),this.visible||(e.layerInvisible=!0),e}isUpdating(){return!1}};e([o({readOnly:!0})],u.prototype,"spatialReferenceSupported",null),e([o()],u.prototype,"view",void 0),e([o()],u.prototype,"fullOpacity",null),e([o()],u.prototype,"layer",void 0),e([o()],u.prototype,"parent",void 0),e([o({readOnly:!0})],u.prototype,"suspended",null),e([o({readOnly:!0})],u.prototype,"suspendInfo",null),e([o({readOnly:!0})],u.prototype,"legendEnabled",null),e([o({type:Boolean,readOnly:!0})],u.prototype,"updating",null),e([o({readOnly:!0})],u.prototype,"updatingProgress",null),e([o()],u.prototype,"updateSuspended",null),e([o()],u.prototype,"visible",null),e([o({readOnly:!0})],u.prototype,"visibleAtCurrentScale",null),e([o({readOnly:!0})],u.prototype,"visibleAtCurrentTimeExtent",null),u=e([a("esri.views.layers.LayerView")],u);export{u as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import t from"../../core/Evented.js";import r from"../../core/Logger.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as n}from"../../core/accessorSupport/decorators/subclass.js";import i from"../../geometry/SpatialReference.js";import{toExtent as s}from"../../geometry/support/aaBoundingRect.js";import{extentContainsXYZ as a}from"../../geometry/support/contains.js";import{updateGeometryElevation as l}from"../../layers/support/ElevationSampler.js";import{elevationNoDataValue as p}from"../3d/terrain/TerrainConst.js";let m=class extends t.EventedAccessor{constructor(e){super(e),this.noDataValue=p}initialize(){this.view.basemapTerrain.on("elevation-change",()=>this.emit("changed",{}))}get demResolution(){return this.view.basemapTerrain.demResolution}get extent(){const e=this.view.basemapTerrain;if(null==e?.extent||null==e.spatialReference)return null;const t=s(e.extent,e.spatialReference);return t.zmin=e.visibleElevationBounds.min,t.zmax=e.visibleElevationBounds.max,t}get spatialReference(){return this.view.basemapTerrain?.spatialReference??i.WGS84}elevationAt(e,t){if(null==this.extent||!a(this.extent,e,t)){const o=null!=this.extent?`${this.extent.xmin}, ${this.extent.ymin}, ${this.extent.xmax}, ${this.extent.ymax}`:null;return r.getLogger(this).warn("#elevationAt()",`Point used to sample elevation (${e}, ${t}) is outside of the sampler extent (${o})`),this.noDataValue}return this.view.elevationProvider?.getElevation(e,t,0,this.spatialReference,"ground")??this.noDataValue}queryElevation(e){return l(e.clone(),this)}};e([o({readOnly:!0})],m.prototype,"demResolution",null),e([o({readOnly:!0})],m.prototype,"extent",null),e([o({readOnly:!0})],m.prototype,"noDataValue",void 0),e([o()],m.prototype,"spatialReference",null),e([o({constructOnly:!0})],m.prototype,"view",void 0),m=e([n("esri.views.support.GroundViewElevationSampler")],m);const u=m;export{u as default};
5
+ import{__decorate as e}from"tslib";import{EventedAccessor as t}from"../../core/Evented.js";import r from"../../core/Logger.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as n}from"../../core/accessorSupport/decorators/subclass.js";import i from"../../geometry/SpatialReference.js";import{toExtent as s}from"../../geometry/support/aaBoundingRect.js";import{extentContainsXYZ as a}from"../../geometry/support/contains.js";import{updateGeometryElevation as l}from"../../layers/support/ElevationSampler.js";import{elevationNoDataValue as p}from"../3d/terrain/TerrainConst.js";let m=class extends t{constructor(e){super(e),this.noDataValue=p}initialize(){this.view.basemapTerrain.on("elevation-change",()=>this.emit("changed",{}))}get demResolution(){return this.view.basemapTerrain.demResolution}get extent(){const e=this.view.basemapTerrain;if(null==e?.extent||null==e.spatialReference)return null;const t=s(e.extent,e.spatialReference);return t.zmin=e.visibleElevationBounds.min,t.zmax=e.visibleElevationBounds.max,t}get spatialReference(){return this.view.basemapTerrain?.spatialReference??i.WGS84}elevationAt(e,t){if(null==this.extent||!a(this.extent,e,t)){const o=null!=this.extent?`${this.extent.xmin}, ${this.extent.ymin}, ${this.extent.xmax}, ${this.extent.ymax}`:null;return r.getLogger(this).warn("#elevationAt()",`Point used to sample elevation (${e}, ${t}) is outside of the sampler extent (${o})`),this.noDataValue}return this.view.elevationProvider?.getElevation(e,t,0,this.spatialReference,"ground")??this.noDataValue}queryElevation(e){return l(e.clone(),this)}};e([o({readOnly:!0})],m.prototype,"demResolution",null),e([o({readOnly:!0})],m.prototype,"extent",null),e([o({readOnly:!0})],m.prototype,"noDataValue",void 0),e([o()],m.prototype,"spatialReference",null),e([o({constructOnly:!0})],m.prototype,"view",void 0),m=e([n("esri.views.support.GroundViewElevationSampler")],m);const u=m;export{u as default};
package/views/ui/UI.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as t}from"tslib";import"../../intl.js";import o from"../../core/Accessor.js";import{isSome as n}from"../../core/arrayUtils.js";import e from"../../core/Evented.js";import{makeHandle as i}from"../../core/handleUtils.js";import{watch as r,initial as s}from"../../core/reactiveUtils.js";import{property as a}from"../../core/accessorSupport/decorators/property.js";import{cast as p}from"../../core/accessorSupport/decorators/cast.js";import"../../core/has.js";import{subclass as d}from"../../core/accessorSupport/decorators/subclass.js";import{setCalciteModeClass as c}from"../../support/modeUtils.js";import l from"./Component.js";import{isRTL as h}from"../../widgets/support/widgetUtils.js";import{getLocale as m,onLocaleChange as u}from"../../intl/locale.js";const f={left:0,top:0,bottom:0,right:0},_={bottom:30,top:15,right:15,left:15},g="esri-ui",y={ui:g,corner:`${g}-corner`,innerContainer:`${g}-inner-container`,manualContainer:`${g}-manual-container`,cornerContainer:`${g}-corner-container`,topLeft:`${g}-top-left`,topRight:`${g}-top-right`,bottomLeft:`${g}-bottom-left`,bottomRight:`${g}-bottom-right`};function C(t){return t&&!t._started&&"function"==typeof t.postMixInProperties&&"function"==typeof t.buildRendering&&"function"==typeof t.postCreate&&"function"==typeof t.startup}function v(t){return 0===t?"0":`${t}px`}function b(t){const o="object"==typeof t&&null!==t&&Object.getPrototypeOf(t);return(null===o||o===Object.prototype)&&("component"in t||"index"in t||"position"in t)?t:null}function w(t,{top:o,bottom:n,left:e,right:i}){t.style.top=o,t.style.bottom=n,t.style.left=e,t.style.right=i}let P=class extends e.EventedAccessor{constructor(t){super(t),this._cornerNameToContainerLookup={},this._positionNameToContainerLookup={},this._components=new Array,this._componentMap=new Map,this._removeWidgetHandleKey=Symbol("componentOnRemoveSymbol"),this._locale=m(),this.view=null,this._applyViewPadding=()=>{const t=this.container;t&&w(t,this._toPixelPosition(this._getViewPadding()))},this._applyUIPadding=()=>{const t=this._innerContainer;t&&w(t,this._toPixelPosition(this.padding))},this._initContainers()}initialize(){this.addHandles([r(()=>[this.view?.padding,this.container],this._applyViewPadding,s),r(()=>this.padding,this._applyUIPadding,s),r(()=>[this.container,this._locale],([t,o])=>{t&&t.setAttribute("lang",o)},s),u(t=>{this._locale=t})])}destroy(){this.removeAllHandles(),this.container=null;for(const t of this._components)t.destroy();this._components.length=0,this._componentMap.clear(),this.view=null,this._set("view",null)}set container(t){const o=this._get("container");t!==o&&(t&&(t.classList.add(y.ui),c(t),this._attachContainers(t)),o&&(o.classList.remove(y.ui),w(o,{top:"",bottom:"",left:"",right:""}),o.textContent=""),this._set("container",t))}get height(){const t=this.view?.height??0;if(0===t)return t;const o=this._getViewPadding(),{top:n,bottom:e}=o;return Math.max(t-n-e,0)}get padding(){return this._get("padding")}set padding(t){this._overrideIfSome("padding",t)}castPadding(t){return"number"==typeof t?{bottom:t,top:t,right:t,left:t}:{..._,...t}}get width(){const t=this.view?.width??0;if(0===t)return t;const o=this._getViewPadding(),{left:n,right:e}=o;return Math.max(t-n-e,0)}add(t,o){let n,e,i;if(Array.isArray(t))return void t.forEach(t=>this.add(t,o));const r=b(t);r&&({index:n,position:o,component:t,key:e}=r),o&&"object"==typeof o&&({index:n,key:e,position:o,internal:i}=o),!t||o&&!this._isValidPosition(o)||this._add(t,o,n??this._getNumComponentsAtPosition(o),e,i)}remove(t,o){if(!t)return;if(Array.isArray(t))return t.map(t=>this.remove(t,o));const n=this._find(t);if(n){const t=this._componentMap.get(n);if(!t||t.key!==o)return;const e=this._components.indexOf(n),i=n.node.parentNode;return i?.removeChild(n.node),this._componentMap.delete(n),n.widget?.removeHandlesReference(this._removeWidgetHandleKey),this._components.forEach(o=>{const n=this._componentMap.get(o);n&&n.position===t.position&&n.index>t.index&&n.index--}),this._components.splice(e,1)[0]}}empty(t,o={removeInternal:!1}){if(Array.isArray(t)){for(const n of t)this.empty(n,o);return}const n=this._positionNameToContainerLookup[t??"manual"],e=Array.prototype.slice.call(n.children).map(t=>this._findByNode(t)).filter(t=>{if(null==t)return!1;return!(this._componentMap.get(t)?.internal??!1)||o.removeInternal});for(const i of e)this.remove(i)}move(t,o){if(Array.isArray(t)&&t.forEach(t=>this.move(t,o)),!t)return;let n;const e=b(t)||b(o);if(e&&(n=e.index,o=e.position,t=e.component||t),o&&!this._isValidPosition(o))return;const i=this.remove(t);i&&this.add(i,{position:o,index:n})}find(t){if(!t)return null;const o=this._findById(t);return o&&(o.widget||o.node)}getComponents(t,o={includeInternal:!1}){return t?Array.isArray(t)?t.flatMap(t=>this._getComponentsAtPosition(t,o)):this._getComponentsAtPosition(t,o):this._components.filter(t=>o.includeInternal||!this._componentMap.get(t)?.internal).map(({widget:t,node:o})=>t??o)}getPosition(t){for(const o in this._positionNameToContainerLookup){if(this._positionNameToContainerLookup[o].contains(t))return o}return null}_add(t,n,e,r,s){t instanceof l||(t=new l({node:t}));const{widget:a}=t;null!=a&&a instanceof o&&a.addHandles(i(()=>{queueMicrotask(()=>this.remove(t))}),this._removeWidgetHandleKey);this._components.some(t=>this._componentMap.get(t)?.position===n&&this._componentMap.get(t)?.index===e)&&this._components.forEach(t=>{const o=this._componentMap.get(t);o&&o.position===n&&o.index>=e&&o.index++}),this._place({component:t,position:n,index:e}),this._components.push(t),this._componentMap.set(t,{key:r,position:n,internal:s,index:e})}_find(t){return t?t instanceof l?this._findByComponent(t):"string"==typeof t?this._findById(t):"domNode"in t?this._findByNode(t.domNode):this._findByNode(t):null}_getViewPadding(){return this.view?.padding??f}_attachContainers(t){t.appendChild(this._innerContainer),t.appendChild(this._manualContainer)}_initContainers(){const t=document.createElement("div");t.classList.add(y.innerContainer,y.cornerContainer);const o=document.createElement("div");o.classList.add(y.innerContainer,y.manualContainer);const n=document.createElement("div");n.classList.add(y.topLeft,y.corner),t.appendChild(n);const e=document.createElement("div");e.classList.add(y.topRight,y.corner),t.appendChild(e);const i=document.createElement("div");i.classList.add(y.bottomLeft,y.corner),t.appendChild(i);const r=document.createElement("div");r.classList.add(y.bottomRight,y.corner),t.appendChild(r),this._innerContainer=t,this._manualContainer=o;const s=h();this._cornerNameToContainerLookup={"top-left":n,"top-right":e,"bottom-left":i,"bottom-right":r,"top-leading":s?e:n,"top-trailing":s?n:e,"bottom-leading":s?r:i,"bottom-trailing":s?i:r},this._positionNameToContainerLookup={manual:o,...this._cornerNameToContainerLookup}}_isValidPosition(t){return!!this._positionNameToContainerLookup[t]}_place(t){const o=t.position??"manual",{component:n,index:e}=t,i=this._positionNameToContainerLookup[o],r=null!=e&&e>-1;if(C(n.widget)&&n.widget.startup(),!r)return void i.appendChild(n.node);const s=Array.from(i.children);if(0!==s.length){for(const t of s){const o=this._findByNode(t);if(o&&e<(this._componentMap.get(o)?.index??0))return void t.parentNode?.insertBefore(n.node,t)}i.appendChild(n.node)}else i.appendChild(n.node)}_toPixelPosition(t){return{top:v(t.top),left:v(t.left),right:v(t.right),bottom:v(t.bottom)}}_findByComponent(t){return this._components.find(o=>o===t)??null}_findById(t){return this._components.find(({id:o})=>o===t)??null}_findByNode(t){return t?this._components.find(({node:o})=>o===t):null}_getComponentsAtPosition(t,o){const e=this._positionNameToContainerLookup[t];return Array.prototype.slice.call(e.children).map(t=>this._findByNode(t)).filter(n).filter(t=>o.includeInternal||!this._componentMap.get(t)?.internal).map(({widget:t,node:o})=>t??o)}_getNumComponentsAtPosition(t){const o=this._positionNameToContainerLookup[t];return o?.children.length??0}};t([a()],P.prototype,"_locale",void 0),t([a()],P.prototype,"container",null),t([a()],P.prototype,"height",null),t([a({value:_})],P.prototype,"padding",null),t([p("padding")],P.prototype,"castPadding",null),t([a()],P.prototype,"view",void 0),t([a()],P.prototype,"width",null),P=t([d("esri.views.ui.UI")],P);const x=P;export{x as default};
5
+ import{__decorate as t}from"tslib";import"../../intl.js";import o from"../../core/Accessor.js";import{isSome as n}from"../../core/arrayUtils.js";import{EventedAccessor as e}from"../../core/Evented.js";import{makeHandle as i}from"../../core/handleUtils.js";import{watch as r,initial as s}from"../../core/reactiveUtils.js";import{property as a}from"../../core/accessorSupport/decorators/property.js";import{cast as p}from"../../core/accessorSupport/decorators/cast.js";import"../../core/has.js";import{subclass as d}from"../../core/accessorSupport/decorators/subclass.js";import{setCalciteModeClass as c}from"../../support/modeUtils.js";import l from"./Component.js";import{isRTL as h}from"../../widgets/support/widgetUtils.js";import{getLocale as m,onLocaleChange as u}from"../../intl/locale.js";const f={left:0,top:0,bottom:0,right:0},_={bottom:30,top:15,right:15,left:15},g="esri-ui",y={ui:g,corner:`${g}-corner`,innerContainer:`${g}-inner-container`,manualContainer:`${g}-manual-container`,cornerContainer:`${g}-corner-container`,topLeft:`${g}-top-left`,topRight:`${g}-top-right`,bottomLeft:`${g}-bottom-left`,bottomRight:`${g}-bottom-right`};function C(t){return t&&!t._started&&"function"==typeof t.postMixInProperties&&"function"==typeof t.buildRendering&&"function"==typeof t.postCreate&&"function"==typeof t.startup}function v(t){return 0===t?"0":`${t}px`}function b(t){const o="object"==typeof t&&null!==t&&Object.getPrototypeOf(t);return(null===o||o===Object.prototype)&&("component"in t||"index"in t||"position"in t)?t:null}function w(t,{top:o,bottom:n,left:e,right:i}){t.style.top=o,t.style.bottom=n,t.style.left=e,t.style.right=i}let P=class extends e{constructor(t){super(t),this._cornerNameToContainerLookup={},this._positionNameToContainerLookup={},this._components=new Array,this._componentMap=new Map,this._removeWidgetHandleKey=Symbol("componentOnRemoveSymbol"),this._locale=m(),this.view=null,this._applyViewPadding=()=>{const t=this.container;t&&w(t,this._toPixelPosition(this._getViewPadding()))},this._applyUIPadding=()=>{const t=this._innerContainer;t&&w(t,this._toPixelPosition(this.padding))},this._initContainers()}initialize(){this.addHandles([r(()=>[this.view?.padding,this.container],this._applyViewPadding,s),r(()=>this.padding,this._applyUIPadding,s),r(()=>[this.container,this._locale],([t,o])=>{t&&t.setAttribute("lang",o)},s),u(t=>{this._locale=t})])}destroy(){this.removeAllHandles(),this.container=null;for(const t of this._components)t.destroy();this._components.length=0,this._componentMap.clear(),this.view=null,this._set("view",null)}set container(t){const o=this._get("container");t!==o&&(t&&(t.classList.add(y.ui),c(t),this._attachContainers(t)),o&&(o.classList.remove(y.ui),w(o,{top:"",bottom:"",left:"",right:""}),o.textContent=""),this._set("container",t))}get height(){const t=this.view?.height??0;if(0===t)return t;const o=this._getViewPadding(),{top:n,bottom:e}=o;return Math.max(t-n-e,0)}get padding(){return this._get("padding")}set padding(t){this._overrideIfSome("padding",t)}castPadding(t){return"number"==typeof t?{bottom:t,top:t,right:t,left:t}:{..._,...t}}get width(){const t=this.view?.width??0;if(0===t)return t;const o=this._getViewPadding(),{left:n,right:e}=o;return Math.max(t-n-e,0)}add(t,o){let n,e,i;if(Array.isArray(t))return void t.forEach(t=>this.add(t,o));const r=b(t);r&&({index:n,position:o,component:t,key:e}=r),o&&"object"==typeof o&&({index:n,key:e,position:o,internal:i}=o),!t||o&&!this._isValidPosition(o)||this._add(t,o,n??this._getNumComponentsAtPosition(o),e,i)}remove(t,o){if(!t)return;if(Array.isArray(t))return t.map(t=>this.remove(t,o));const n=this._find(t);if(n){const t=this._componentMap.get(n);if(!t||t.key!==o)return;const e=this._components.indexOf(n),i=n.node.parentNode;return i?.removeChild(n.node),this._componentMap.delete(n),n.widget?.removeHandlesReference(this._removeWidgetHandleKey),this._components.forEach(o=>{const n=this._componentMap.get(o);n&&n.position===t.position&&n.index>t.index&&n.index--}),this._components.splice(e,1)[0]}}empty(t,o={removeInternal:!1}){if(Array.isArray(t)){for(const n of t)this.empty(n,o);return}const n=this._positionNameToContainerLookup[t??"manual"],e=Array.prototype.slice.call(n.children).map(t=>this._findByNode(t)).filter(t=>{if(null==t)return!1;return!(this._componentMap.get(t)?.internal??!1)||o.removeInternal});for(const i of e)this.remove(i)}move(t,o){if(Array.isArray(t)&&t.forEach(t=>this.move(t,o)),!t)return;let n;const e=b(t)||b(o);if(e&&(n=e.index,o=e.position,t=e.component||t),o&&!this._isValidPosition(o))return;const i=this.remove(t);i&&this.add(i,{position:o,index:n})}find(t){if(!t)return null;const o=this._findById(t);return o&&(o.widget||o.node)}getComponents(t,o={includeInternal:!1}){return t?Array.isArray(t)?t.flatMap(t=>this._getComponentsAtPosition(t,o)):this._getComponentsAtPosition(t,o):this._components.filter(t=>o.includeInternal||!this._componentMap.get(t)?.internal).map(({widget:t,node:o})=>t??o)}getPosition(t){for(const o in this._positionNameToContainerLookup){if(this._positionNameToContainerLookup[o].contains(t))return o}return null}_add(t,n,e,r,s){t instanceof l||(t=new l({node:t}));const{widget:a}=t;null!=a&&a instanceof o&&a.addHandles(i(()=>{queueMicrotask(()=>this.remove(t))}),this._removeWidgetHandleKey);this._components.some(t=>this._componentMap.get(t)?.position===n&&this._componentMap.get(t)?.index===e)&&this._components.forEach(t=>{const o=this._componentMap.get(t);o&&o.position===n&&o.index>=e&&o.index++}),this._place({component:t,position:n,index:e}),this._components.push(t),this._componentMap.set(t,{key:r,position:n,internal:s,index:e})}_find(t){return t?t instanceof l?this._findByComponent(t):"string"==typeof t?this._findById(t):"domNode"in t?this._findByNode(t.domNode):this._findByNode(t):null}_getViewPadding(){return this.view?.padding??f}_attachContainers(t){t.appendChild(this._innerContainer),t.appendChild(this._manualContainer)}_initContainers(){const t=document.createElement("div");t.classList.add(y.innerContainer,y.cornerContainer);const o=document.createElement("div");o.classList.add(y.innerContainer,y.manualContainer);const n=document.createElement("div");n.classList.add(y.topLeft,y.corner),t.appendChild(n);const e=document.createElement("div");e.classList.add(y.topRight,y.corner),t.appendChild(e);const i=document.createElement("div");i.classList.add(y.bottomLeft,y.corner),t.appendChild(i);const r=document.createElement("div");r.classList.add(y.bottomRight,y.corner),t.appendChild(r),this._innerContainer=t,this._manualContainer=o;const s=h();this._cornerNameToContainerLookup={"top-left":n,"top-right":e,"bottom-left":i,"bottom-right":r,"top-leading":s?e:n,"top-trailing":s?n:e,"bottom-leading":s?r:i,"bottom-trailing":s?i:r},this._positionNameToContainerLookup={manual:o,...this._cornerNameToContainerLookup}}_isValidPosition(t){return!!this._positionNameToContainerLookup[t]}_place(t){const o=t.position??"manual",{component:n,index:e}=t,i=this._positionNameToContainerLookup[o],r=null!=e&&e>-1;if(C(n.widget)&&n.widget.startup(),!r)return void i.appendChild(n.node);const s=Array.from(i.children);if(0!==s.length){for(const t of s){const o=this._findByNode(t);if(o&&e<(this._componentMap.get(o)?.index??0))return void t.parentNode?.insertBefore(n.node,t)}i.appendChild(n.node)}else i.appendChild(n.node)}_toPixelPosition(t){return{top:v(t.top),left:v(t.left),right:v(t.right),bottom:v(t.bottom)}}_findByComponent(t){return this._components.find(o=>o===t)??null}_findById(t){return this._components.find(({id:o})=>o===t)??null}_findByNode(t){return t?this._components.find(({node:o})=>o===t):null}_getComponentsAtPosition(t,o){const e=this._positionNameToContainerLookup[t];return Array.prototype.slice.call(e.children).map(t=>this._findByNode(t)).filter(n).filter(t=>o.includeInternal||!this._componentMap.get(t)?.internal).map(({widget:t,node:o})=>t??o)}_getNumComponentsAtPosition(t){const o=this._positionNameToContainerLookup[t];return o?.children.length??0}};t([a()],P.prototype,"_locale",void 0),t([a()],P.prototype,"container",null),t([a()],P.prototype,"height",null),t([a({value:_})],P.prototype,"padding",null),t([p("padding")],P.prototype,"castPadding",null),t([a()],P.prototype,"view",void 0),t([a()],P.prototype,"width",null),P=t([d("esri.views.ui.UI")],P);const x=P;export{x as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as o}from"tslib";import r from"../core/Clonable.js";import e from"../core/JSONSupport.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as t}from"../core/accessorSupport/decorators/subclass.js";import{types as p}from"./geotriggersInfo/support/geotriggerTypes.js";let i=class extends(r.ClonableMixin(e)){constructor(o){super(o),this.geotriggers=null}};o([s({types:[p],json:{write:{isRequired:!0}}})],i.prototype,"geotriggers",void 0),i=o([t("esri.webdoc.GeotriggersInfo")],i);const c=i;export{c as default};
5
+ import{__decorate as r}from"tslib";import{ClonableMixin as o}from"../core/Clonable.js";import e from"../core/JSONSupport.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as t}from"../core/accessorSupport/decorators/subclass.js";import{types as p}from"./geotriggersInfo/support/geotriggerTypes.js";let i=class extends(o(e)){constructor(r){super(r),this.geotriggers=null}};r([s({types:[p],json:{write:{isRequired:!0}}})],i.prototype,"geotriggers",void 0),i=r([t("esri.webdoc.GeotriggersInfo")],i);const c=i;export{c as default};
package/webdoc/IPSInfo.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as o}from"tslib";import r from"../core/Clonable.js";import i from"../core/JSONSupport.js";import{property as t}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as s}from"../core/accessorSupport/decorators/subclass.js";import e from"./ips/Configuration.js";import p from"./ips/PositioningService.js";let c=class extends(r.ClonableMixin(i)){constructor(o){super(o),this.positioningService=null,this.configuration=null}};o([t({type:p,json:{write:{isRequired:!0}}})],c.prototype,"positioningService",void 0),o([t({type:e,json:{write:!0}})],c.prototype,"configuration",void 0),c=o([s("esri.webdoc.IPSInfo")],c);const n=c;export{n as default};
5
+ import{__decorate as o}from"tslib";import{ClonableMixin as r}from"../core/Clonable.js";import i from"../core/JSONSupport.js";import{property as t}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as s}from"../core/accessorSupport/decorators/subclass.js";import e from"./ips/Configuration.js";import p from"./ips/PositioningService.js";let c=class extends(r(i)){constructor(o){super(o),this.positioningService=null,this.configuration=null}};o([t({type:p,json:{write:{isRequired:!0}}})],c.prototype,"positioningService",void 0),o([t({type:e,json:{write:!0}})],c.prototype,"configuration",void 0),c=o([s("esri.webdoc.IPSInfo")],c);const n=c;export{n as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as o}from"tslib";import e from"../../core/Clonable.js";import{JSONMap as r}from"../../core/jsonMap.js";import t from"../../core/JSONSupport.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import p from"./ExpressionInfo.js";const c=new r({deviceLocation:"device-location"});let n=class extends(e.ClonableMixin(t)){constructor(o){super(o),this.filterExpression=null,this.type="device-location"}};o([s({type:p,json:{write:!0}})],n.prototype,"filterExpression",void 0),o([s({type:c.apiValues,readOnly:!0,json:{type:c.jsonValues,read:c.read,write:c.write}})],n.prototype,"type",void 0),n=o([i("esri.webdoc.geotriggersInfo.DeviceLocationFeed")],n);const a=n;export{a as default};
5
+ import{__decorate as o}from"tslib";import{ClonableMixin as r}from"../../core/Clonable.js";import{JSONMap as e}from"../../core/jsonMap.js";import t from"../../core/JSONSupport.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import p from"./ExpressionInfo.js";const c=new e({deviceLocation:"device-location"});let a=class extends(r(t)){constructor(o){super(o),this.filterExpression=null,this.type="device-location"}};o([s({type:p,json:{write:!0}})],a.prototype,"filterExpression",void 0),o([s({type:c.apiValues,readOnly:!0,json:{type:c.jsonValues,read:c.read,write:c.write}})],a.prototype,"type",void 0),a=o([i("esri.webdoc.geotriggersInfo.DeviceLocationFeed")],a);const n=a;export{n as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as r}from"tslib";import o from"../../core/Clonable.js";import e from"../../core/JSONSupport.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";let i=class extends(o.ClonableMixin(e)){constructor(r){super(r),this.expression=null,this.returnType="string",this.title=null}};r([t({type:String,json:{write:{isRequired:!0}}})],i.prototype,"expression",void 0),r([t({type:["number","string"],json:{write:!0}})],i.prototype,"returnType",void 0),r([t({type:String,json:{write:!0}})],i.prototype,"title",void 0),i=r([s("esri.webdoc.geotriggersInfo.ExpressionInfo")],i);const p=i;export{p as default};
5
+ import{__decorate as r}from"tslib";import{ClonableMixin as o}from"../../core/Clonable.js";import t from"../../core/JSONSupport.js";import{property as e}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";let p=class extends(o(t)){constructor(r){super(r),this.expression=null,this.returnType="string",this.title=null}};r([e({type:String,json:{write:{isRequired:!0}}})],p.prototype,"expression",void 0),r([e({type:["number","string"],json:{write:!0}})],p.prototype,"returnType",void 0),r([e({type:String,json:{write:!0}})],p.prototype,"title",void 0),p=r([s("esri.webdoc.geotriggersInfo.ExpressionInfo")],p);const i=p;export{i as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as r}from"tslib";import e from"../../core/Clonable.js";import o from"../../core/JSONSupport.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{enumeration as s}from"../../core/accessorSupport/decorators/enumeration.js";import{subclass as p}from"../../core/accessorSupport/decorators/subclass.js";import i from"./FeatureFilter.js";import c from"./FeatureLayerSource.js";let a=class extends(e.ClonableMixin(o)){constructor(r){super(r),this.fenceSource=null,this.filter=null,this.bufferDistance=null,this.type="features"}};r([t({type:c,json:{write:{isRequired:!0}}})],a.prototype,"fenceSource",void 0),r([t({type:i,json:{write:!0}})],a.prototype,"filter",void 0),r([t({type:Number,json:{write:!0}})],a.prototype,"bufferDistance",void 0),r([s({features:"features"},{readOnly:!0})],a.prototype,"type",void 0),a=r([p("esri.webdoc.geotriggersInfo.FeatureFenceParameters")],a);const u=a;export{u as default};
5
+ import{__decorate as r}from"tslib";import{ClonableMixin as e}from"../../core/Clonable.js";import o from"../../core/JSONSupport.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{enumeration as s}from"../../core/accessorSupport/decorators/enumeration.js";import{subclass as p}from"../../core/accessorSupport/decorators/subclass.js";import i from"./FeatureFilter.js";import c from"./FeatureLayerSource.js";let a=class extends(e(o)){constructor(r){super(r),this.fenceSource=null,this.filter=null,this.bufferDistance=null,this.type="features"}};r([t({type:c,json:{write:{isRequired:!0}}})],a.prototype,"fenceSource",void 0),r([t({type:i,json:{write:!0}})],a.prototype,"filter",void 0),r([t({type:Number,json:{write:!0}})],a.prototype,"bufferDistance",void 0),r([s({features:"features"},{readOnly:!0})],a.prototype,"type",void 0),a=r([p("esri.webdoc.geotriggersInfo.FeatureFenceParameters")],a);const u=a;export{u as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as o}from"tslib";import r from"../../core/Clonable.js";import e from"../../core/JSONSupport.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import{fromJSON as p}from"../../geometry/support/jsonUtils.js";import{geometryTypes as i}from"../../geometry/support/typeUtils.js";let m=class extends(r.ClonableMixin(e)){constructor(o){super(o),this.geometry=null,this.where=null}};o([t({types:i,json:{read:p,write:!0}})],m.prototype,"geometry",void 0),o([t({type:String,json:{write:!0}})],m.prototype,"where",void 0),m=o([s("esri.webdoc.geotriggersInfo.FeatureFilter")],m);const c=m;export{c as default};
5
+ import{__decorate as o}from"tslib";import{ClonableMixin as r}from"../../core/Clonable.js";import e from"../../core/JSONSupport.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import{fromJSON as p}from"../../geometry/support/jsonUtils.js";import{geometryTypes as i}from"../../geometry/support/typeUtils.js";let m=class extends(r(e)){constructor(o){super(o),this.geometry=null,this.where=null}};o([t({types:i,json:{read:p,write:!0}})],m.prototype,"geometry",void 0),o([t({type:String,json:{write:!0}})],m.prototype,"where",void 0),m=o([s("esri.webdoc.geotriggersInfo.FeatureFilter")],m);const c=m;export{c as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as r}from"tslib";import e from"../../core/Clonable.js";import o from"../../core/JSONSupport.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{enumeration as s}from"../../core/accessorSupport/decorators/enumeration.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";let l=class extends(e.ClonableMixin(o)){constructor(r){super(r),this.layerId=null,this.layerUrl=null,this.type="feature-layer"}};r([t({type:String,json:{write:{overridePolicy(){return{isRequired:null===this.layerUrl}}}}})],l.prototype,"layerId",void 0),r([t({type:String,json:{write:{overridePolicy(){return{isRequired:null===this.layerId}}}}})],l.prototype,"layerUrl",void 0),r([s({featureLayer:"feature-layer"},{readOnly:!0})],l.prototype,"type",void 0),l=r([i("esri.webdoc.geotriggersInfo.FeatureLayerSource")],l);const p=l;export{p as default};
5
+ import{__decorate as r}from"tslib";import{ClonableMixin as e}from"../../core/Clonable.js";import o from"../../core/JSONSupport.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{enumeration as s}from"../../core/accessorSupport/decorators/enumeration.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";let p=class extends(e(o)){constructor(r){super(r),this.layerId=null,this.layerUrl=null,this.type="feature-layer"}};r([t({type:String,json:{write:{overridePolicy(){return{isRequired:null===this.layerUrl}}}}})],p.prototype,"layerId",void 0),r([t({type:String,json:{write:{overridePolicy(){return{isRequired:null===this.layerId}}}}})],p.prototype,"layerUrl",void 0),r([s({featureLayer:"feature-layer"},{readOnly:!0})],p.prototype,"type",void 0),p=r([i("esri.webdoc.geotriggersInfo.FeatureLayerSource")],p);const a=p;export{a as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as o}from"tslib";import r from"../../core/Clonable.js";import e from"../../core/JSONSupport.js";import"../../core/Logger.js";import"../../core/has.js";import"../../core/RandomLCG.js";import"../../core/Error.js";import{enumeration as t}from"../../core/accessorSupport/decorators/enumeration.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";let c=class extends(r.ClonableMixin(e)){constructor(o){super(o),this.type="fence"}};o([t({fence:"fence"},{readOnly:!0})],c.prototype,"type",void 0),c=o([s("esri.webdoc.geotriggersInfo.Geotrigger")],c);const p=c;export{p as default};
5
+ import{__decorate as o}from"tslib";import{ClonableMixin as r}from"../../core/Clonable.js";import e from"../../core/JSONSupport.js";import"../../core/Logger.js";import"../../core/has.js";import"../../core/RandomLCG.js";import"../../core/Error.js";import{enumeration as t}from"../../core/accessorSupport/decorators/enumeration.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";let c=class extends(r(e)){constructor(o){super(o),this.type="fence"}};o([t({fence:"fence"},{readOnly:!0})],c.prototype,"type",void 0),c=o([s("esri.webdoc.geotriggersInfo.Geotrigger")],c);const p=c;export{p as default};