@arcgis/core 4.28.0-next.20230921 → 4.28.0-next.20230922

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 (313) hide show
  1. package/Graphic.js +1 -1
  2. package/arcade/ArcadeDate.js +1 -1
  3. package/arcade/Feature.js +1 -1
  4. package/arcade/featureSetUtils.js +1 -1
  5. package/arcade/featureset/actions/Adapted.js +1 -1
  6. package/arcade/featureset/actions/GroupBy.js +1 -1
  7. package/arcade/featureset/support/FeatureSet.js +1 -1
  8. package/arcade/featureset/support/FeatureSetIterator.js +1 -1
  9. package/arcade/featureset/support/StatsField.js +1 -1
  10. package/arcade/featureset/support/sqlUtils.js +1 -1
  11. package/arcade/functions/date.js +1 -1
  12. package/arcade/functions/featuresetbase.js +1 -1
  13. package/arcade/functions/featuresetstats.js +1 -1
  14. package/arcade.js +1 -1
  15. package/assets/esri/core/workers/RemoteClient.js +1 -1
  16. package/assets/esri/core/workers/chunks/{2cb36f9686693234991a.js → 07a2dab2f645dcd7d8d6.js} +1 -1
  17. package/assets/esri/core/workers/chunks/07f6175b52366b2c28bd.js +1 -0
  18. package/assets/esri/core/workers/chunks/098073c3b2849f56dad8.js +1 -0
  19. package/assets/esri/core/workers/chunks/{580039dd491854ca325c.js → 21fc02f0d5716c4a7acd.js} +1 -1
  20. package/assets/esri/core/workers/chunks/{072b4e041b8630c513a0.js → 243b1f9b2fba02946481.js} +1 -1
  21. package/assets/esri/core/workers/chunks/{dff1c3c38dda2bd1a9d6.js → 246a954347fe9318190e.js} +1 -1
  22. package/assets/esri/core/workers/chunks/{314c307e30f308a40a28.js → 25b09e9c0511c8e1cf8a.js} +1 -1
  23. package/assets/esri/core/workers/chunks/28a5ef2e2daa4207dd8b.js +1 -0
  24. package/assets/esri/core/workers/chunks/2b017e1aa1be71974c2e.js +1 -0
  25. package/assets/esri/core/workers/chunks/425b5733bb88e6efe242.js +1 -0
  26. package/assets/esri/core/workers/chunks/{c9dfb145f0c1d93e0fbd.js → 4bcca5fffb1fcc2d4353.js} +1 -1
  27. package/assets/esri/core/workers/chunks/4bf1a7e82a68ccee0ee1.js +1 -0
  28. package/assets/esri/core/workers/chunks/4c110c7f4f940ec58010.js +1 -0
  29. package/assets/esri/core/workers/chunks/{bde89b2684b6185992ef.js → 4ed77097e69fa3096ce4.js} +1 -1
  30. package/assets/esri/core/workers/chunks/{1cbaba30f55f00f7498b.js → 51324d042f469f3b8914.js} +1 -1
  31. package/assets/esri/core/workers/chunks/{3f4e9b1663ec521bfe00.js → 542ce10e1872399790b4.js} +1 -1
  32. package/assets/esri/core/workers/chunks/54d2b7e2ac4ba883bee8.js +1 -0
  33. package/assets/esri/core/workers/chunks/54ecb6cae310818d1aa2.js +1 -0
  34. package/assets/esri/core/workers/chunks/57c932e289d89d97da4b.js +1 -0
  35. package/assets/esri/core/workers/chunks/{6403de6fc067cf8f7436.js → 592c1fb531f2be928e8a.js} +1 -1
  36. package/assets/esri/core/workers/chunks/609a475ab395f2ce63e2.js +1 -0
  37. package/assets/esri/core/workers/chunks/{332689bf60d246485993.js → 65186e168dd112ac6221.js} +1 -1
  38. package/assets/esri/core/workers/chunks/6b9248fb2d6aadbce7bb.js +1 -0
  39. package/assets/esri/core/workers/chunks/709465832d306e02df52.js +1 -0
  40. package/assets/esri/core/workers/chunks/{bbc0dcd316c5598bc9ad.js → 74368a5213def6c200a2.js} +1 -1
  41. package/assets/esri/core/workers/chunks/78e7af899d9d50aa7e74.js +1 -0
  42. package/assets/esri/core/workers/chunks/7fe641cf1467496e670a.js +1 -0
  43. package/assets/esri/core/workers/chunks/{df8f62beb36fb9d2ac81.js → 810c8d6ff19976fd1366.js} +1 -1
  44. package/assets/esri/core/workers/chunks/83a15aa4b1c5252c651b.js +1 -0
  45. package/assets/esri/core/workers/chunks/85e436decdd693f240ee.js +1 -0
  46. package/assets/esri/core/workers/chunks/{243a4eed107d363dfad8.js → 887652bbdb3b71d0a089.js} +1 -1
  47. package/assets/esri/core/workers/chunks/896bfda379cf620b63ec.js +1 -0
  48. package/assets/esri/core/workers/chunks/{1f7e041140088f8ac489.js → 97073a60f0ea2a397165.js} +1 -1
  49. package/assets/esri/core/workers/chunks/{101f776316a85b708927.js → a99070ec4c06c435b744.js} +1 -1
  50. package/assets/esri/core/workers/chunks/{21a9c8aa2a9e9990df41.js → b499b4fa771e8c422b43.js} +1 -1
  51. package/assets/esri/core/workers/chunks/bffad8aec92f982cc75a.js +1 -0
  52. package/assets/esri/core/workers/chunks/d414dba3179bcf75bc6b.js +1 -0
  53. package/assets/esri/core/workers/chunks/{b449d6bd5851187d419f.js → d6e5408f9fa6b4bcd118.js} +1 -1
  54. package/assets/esri/core/workers/chunks/{3ca759f72d3bb29e9ea9.js → e14da83329f7771135bc.js} +2 -2
  55. package/assets/esri/core/workers/chunks/{f508ccfde6425dabe9ac.js → ee0bf611d191103a7046.js} +1 -1
  56. package/assets/esri/core/workers/chunks/{ed1fbc1bc8d50453e2f5.js → f793cd41fcd022baeea2.js} +1 -1
  57. package/assets/esri/core/workers/chunks/fb87fd64411b78afea23.js +1 -0
  58. package/assets/esri/themes/base/widgets/_OrientedImageryViewer.scss +2 -0
  59. package/assets/esri/themes/dark/main.css +1 -1
  60. package/assets/esri/themes/light/main.css +1 -1
  61. package/assets/esri/themes/light/view.css +1 -1
  62. package/config.js +1 -1
  63. package/core/Accessor.js +1 -1
  64. package/core/has.js +1 -1
  65. package/core/sql/DateOnly.js +1 -1
  66. package/core/sql/WhereClause.js +1 -1
  67. package/core/sql.js +1 -1
  68. package/identity/IdentityForm.js +1 -1
  69. package/identity/IdentityModal.js +1 -1
  70. package/interfaces.d.ts +28 -199
  71. package/layers/OrientedImageryLayer.js +1 -1
  72. package/layers/graphics/applyEditsUtils.js +5 -0
  73. package/layers/graphics/editingSupport.js +1 -1
  74. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  75. package/layers/mixins/EditBusLayer.js +1 -1
  76. package/layers/orientedImagery/core/CameraOrientationLTP.js +1 -1
  77. package/layers/orientedImagery/core/ElevationSourceDefinitions.js +5 -0
  78. package/layers/orientedImagery/core/ExposurePoint.js +1 -1
  79. package/layers/orientedImagery/core/cameraOrientationFactory.js +1 -1
  80. package/layers/orientedImagery/core/utils.js +5 -0
  81. package/layers/orientedImagery/transformations/groundToImageUtils.js +1 -1
  82. package/layers/support/fieldProperties.js +1 -1
  83. package/networks/Network.js +1 -1
  84. package/package.json +1 -1
  85. package/rest/featureService/FeatureService.js +1 -1
  86. package/support/arcadeUtils.js +1 -1
  87. package/support/revision.js +1 -1
  88. package/symbols/support/svgUtils.js +1 -1
  89. package/versionManagement/VersionManagementService.js +1 -1
  90. package/versionManagement/support/EditMomentStack.js +5 -0
  91. package/versionManagement/support/versionManagementUtils.js +1 -1
  92. package/views/2d/engine/Container.js +1 -1
  93. package/views/2d/engine/DisplayObject.js +1 -1
  94. package/views/2d/engine/ManagedCanvas.js +5 -0
  95. package/views/2d/engine/Stage.js +1 -1
  96. package/views/2d/engine/webgl/GroupContainer.js +1 -1
  97. package/views/2d/engine/webgl/Painter.js +1 -1
  98. package/views/2d/engine/webgl/WGLContainer.js +1 -1
  99. package/views/2d/engine/webgl/WorldExtentClipRenderer.js +1 -1
  100. package/views/2d/engine/webgl/effects/FeatureEffect.js +1 -1
  101. package/views/2d/engine/webgl/effects/HighlightEffect.js +1 -1
  102. package/views/2d/engine/webgl/effects/HittestEffectVTL.js +1 -1
  103. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  104. package/views/2d/layers/MediaLayerView2D.js +1 -1
  105. package/views/2d/layers/TileLayerView2D.js +1 -1
  106. package/views/2d/layers/features/tileRenderers/support/WGLFeatureView.js +1 -1
  107. package/views/2d/layers/graphics/BaseGraphicContainer.js +1 -1
  108. package/views/2d/layers/graphics/GraphicContainer.js +1 -1
  109. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  110. package/views/2d/layers/graphics/HighlightGraphicContainer.js +1 -1
  111. package/views/2d/layers/support/DisplayGL.js +1 -1
  112. package/views/2d/webglDeps.js +1 -1
  113. package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
  114. package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
  115. package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
  116. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  117. package/views/3d/layers/SceneLayerView3D.js +1 -1
  118. package/views/3d/layers/graphics/ElevationAligners.js +1 -1
  119. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  120. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  121. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  122. package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
  123. package/views/3d/layers/graphics/Labeler.js +1 -1
  124. package/views/3d/layers/graphics/graphicUtils.js +1 -1
  125. package/views/3d/layers/i3s/featureEditing.js +1 -1
  126. package/views/3d/layers/support/StageLayerElevationProvider.js +1 -1
  127. package/views/3d/support/buffer/glUtil.js +1 -1
  128. package/views/3d/support/engineContent/line.js +1 -1
  129. package/views/3d/support/viewpointUtils.js +1 -1
  130. package/views/3d/webgl-engine/Stage.js +1 -1
  131. package/views/3d/webgl-engine/effects/RenderPluginInput.js +1 -1
  132. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  133. package/views/3d/webgl-engine/effects/highlight/ShadowHighlight.js +1 -1
  134. package/views/3d/webgl-engine/effects/smaa/SMAA.js +1 -1
  135. package/views/3d/webgl-engine/effects/ssao/SSAO.js +1 -1
  136. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  137. package/views/3d/webgl-engine/lib/ModelDirtySet.js +1 -1
  138. package/views/3d/webgl-engine/lib/Object3D.js +1 -1
  139. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  140. package/views/3d/webgl-engine/lib/TextRenderer.js +1 -1
  141. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  142. package/views/3d/webgl-engine/lib/TextTextureFactory.js +1 -1
  143. package/views/3d/webgl-engine/lib/VertexAttribute.js +1 -1
  144. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  145. package/views/3d/webgl-engine/lib/edgeRendering/bufferLayouts.js +1 -1
  146. package/views/3d/webgl-engine/lib/edgeRendering/edgeProcessing.js +1 -1
  147. package/views/View.js +1 -1
  148. package/views/interactive/tooltip/TooltipContentWithHelpMessage.js +1 -1
  149. package/views/interactive/tooltip/TooltipEditableField.js +1 -1
  150. package/views/interactive/tooltip/constraintUtils.js +1 -1
  151. package/views/interactive/tooltip/content/Fields.js +1 -1
  152. package/views/interactive/tooltip/content/TooltipContentDrawCircle.js +1 -1
  153. package/views/interactive/tooltip/content/TooltipContentDrawMesh.js +1 -1
  154. package/views/interactive/tooltip/content/TooltipContentDrawPoint.js +1 -1
  155. package/views/interactive/tooltip/content/TooltipContentDrawPolygon.js +1 -1
  156. package/views/interactive/tooltip/content/TooltipContentDrawPolyline.js +1 -1
  157. package/views/interactive/tooltip/content/TooltipContentDrawRectangle.js +1 -1
  158. package/views/interactive/tooltip/content/TooltipContentExtentRotate.js +1 -1
  159. package/views/interactive/tooltip/content/TooltipContentExtentScale.js +1 -1
  160. package/views/interactive/tooltip/content/TooltipContentReshapeEdgeOffset.js +1 -1
  161. package/views/interactive/tooltip/content/TooltipContentTransformAbsolute.js +1 -1
  162. package/views/interactive/tooltip/content/TooltipContentTransformRotate.js +1 -1
  163. package/views/interactive/tooltip/content/TooltipContentTransformScale.js +1 -1
  164. package/views/interactive/tooltip/content/TooltipContentTranslateGraphic.js +1 -1
  165. package/views/interactive/tooltip/content/TooltipContentTranslateGraphicXY.js +1 -1
  166. package/views/interactive/tooltip/content/TooltipContentTranslateGraphicZ.js +1 -1
  167. package/views/interactive/tooltip/content/TooltipContentTranslateVertex.js +1 -1
  168. package/views/interactive/tooltip/content/TooltipContentTranslateVertexXY.js +1 -1
  169. package/views/interactive/tooltip/content/TooltipContentTranslateVertexZ.js +1 -1
  170. package/views/support/angularMeasurementUtils.js +1 -1
  171. package/views/webgl/Texture.js +1 -1
  172. package/views/webgl/contextUtils.js +1 -1
  173. package/widgets/AreaMeasurement2D.js +1 -1
  174. package/widgets/AreaMeasurement3D.js +1 -1
  175. package/widgets/Attachments.js +1 -1
  176. package/widgets/Attribution.js +1 -1
  177. package/widgets/BasemapGallery.js +1 -1
  178. package/widgets/BasemapLayerList.js +1 -1
  179. package/widgets/BasemapToggle.js +1 -1
  180. package/widgets/Bookmarks.js +1 -1
  181. package/widgets/BuildingExplorer/BuildingDisciplinesTree/BuildingDisciplinesNode.js +1 -1
  182. package/widgets/BuildingExplorer/BuildingDisciplinesTree/BuildingDisciplinesTree.js +1 -1
  183. package/widgets/BuildingExplorer/BuildingLevelPicker/BuildingLevelPicker.js +1 -1
  184. package/widgets/BuildingExplorer/BuildingLevelPicker/Label.js +1 -1
  185. package/widgets/BuildingExplorer/BuildingLevelPicker/LevelItem.js +1 -1
  186. package/widgets/BuildingExplorer/BuildingPhasePicker/BuildingPhasePicker.js +1 -1
  187. package/widgets/BuildingExplorer.js +1 -1
  188. package/widgets/Compass.js +1 -1
  189. package/widgets/CoordinateConversion.js +1 -1
  190. package/widgets/Daylight/support/SliderWithDropdown.js +1 -1
  191. package/widgets/Daylight.js +1 -1
  192. package/widgets/DirectLineMeasurement3D.js +1 -1
  193. package/widgets/DirectionalPad.js +1 -1
  194. package/widgets/Directions/components/SaveLayer.js +1 -1
  195. package/widgets/Directions.js +1 -1
  196. package/widgets/DistanceMeasurement2D.js +1 -1
  197. package/widgets/Editor/components/FooterActions.js +1 -1
  198. package/widgets/Editor/components/Notices.js +1 -1
  199. package/widgets/Editor/components/PanelContent.js +1 -1
  200. package/widgets/Editor/components/PanelToolbar.js +1 -1
  201. package/widgets/Editor/components/Prompt.js +1 -1
  202. package/widgets/Editor/components/Settings.js +1 -1
  203. package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
  204. package/widgets/Editor/components/UploadDetails.js +1 -1
  205. package/widgets/Editor.js +1 -1
  206. package/widgets/ElevationProfile/components/LegendItem.js +1 -1
  207. package/widgets/ElevationProfile/components/SettingsButton.js +1 -1
  208. package/widgets/ElevationProfile/components/Statistics.js +1 -1
  209. package/widgets/ElevationProfile.js +1 -1
  210. package/widgets/Expand.js +1 -1
  211. package/widgets/Feature/FeatureContent.js +1 -1
  212. package/widgets/Feature/FeatureExpression.js +1 -1
  213. package/widgets/Feature/FeatureFields.js +1 -1
  214. package/widgets/Feature/FeatureMedia.js +1 -1
  215. package/widgets/Feature/FeatureRelationship.js +1 -1
  216. package/widgets/Feature/support/FeatureContentMixin.js +1 -1
  217. package/widgets/Feature/support/FeatureElementInfo.js +1 -1
  218. package/widgets/Feature.js +1 -1
  219. package/widgets/FeatureForm.js +1 -1
  220. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  221. package/widgets/FeatureTable/Grid/Grid.js +1 -1
  222. package/widgets/FeatureTable/Grid/support/ButtonMenu.js +1 -1
  223. package/widgets/FeatureTable.js +1 -1
  224. package/widgets/FeatureTemplates/ItemList.js +1 -1
  225. package/widgets/FeatureTemplates.js +1 -1
  226. package/widgets/Features/FeaturesRelatedRecords.js +1 -1
  227. package/widgets/Features.js +1 -1
  228. package/widgets/FloorFilter.js +1 -1
  229. package/widgets/Fullscreen.js +1 -1
  230. package/widgets/Histogram.js +1 -1
  231. package/widgets/HistogramRangeSlider.js +1 -1
  232. package/widgets/Home.js +1 -1
  233. package/widgets/LayerList/ListItemPanel.js +1 -1
  234. package/widgets/LayerList.js +1 -1
  235. package/widgets/Legend/styles/Card.js +1 -1
  236. package/widgets/Legend/styles/Classic.js +1 -1
  237. package/widgets/Legend/styles/support/relationshipUtils.js +1 -1
  238. package/widgets/Legend/styles/support/univariateUtils.js +1 -1
  239. package/widgets/LineOfSight.js +1 -1
  240. package/widgets/Locate.js +1 -1
  241. package/widgets/NavigationToggle.js +1 -1
  242. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  243. package/widgets/OrientedImageryViewer.js +1 -1
  244. package/widgets/Popup.js +1 -1
  245. package/widgets/Print.js +1 -1
  246. package/widgets/ScaleRangeSlider.js +1 -1
  247. package/widgets/Search/SearchResultRenderer.js +1 -1
  248. package/widgets/Search.js +1 -1
  249. package/widgets/ShadowCast/components/DiscreteConfigurator.js +1 -1
  250. package/widgets/ShadowCast/components/DurationConfigurator.js +1 -1
  251. package/widgets/ShadowCast/components/ShadowTooltipContent.js +1 -1
  252. package/widgets/ShadowCast/components/ThresholdConfigurator.js +1 -1
  253. package/widgets/ShadowCast.js +1 -1
  254. package/widgets/Sketch.js +1 -1
  255. package/widgets/Slice.js +1 -1
  256. package/widgets/Slider.js +1 -1
  257. package/widgets/Swipe.js +1 -1
  258. package/widgets/TableList.js +1 -1
  259. package/widgets/TimeSlider.js +1 -1
  260. package/widgets/Track.js +1 -1
  261. package/widgets/UtilityNetworkAssociations/UtilityNetworkAssociationsLineSymbolPicker.js +1 -1
  262. package/widgets/UtilityNetworkAssociations.js +1 -1
  263. package/widgets/UtilityNetworkTrace.js +1 -1
  264. package/widgets/UtilityNetworkValidateTopology.js +1 -1
  265. package/widgets/ValuePicker.js +1 -1
  266. package/widgets/VideoPlayer/components/PlayerControlsGroup.js +1 -1
  267. package/widgets/VideoPlayer/components/SettingsButton.js +1 -1
  268. package/widgets/VideoPlayer.js +1 -1
  269. package/widgets/Weather/LabeledSlider.js +1 -1
  270. package/widgets/Weather.js +1 -1
  271. package/widgets/Zoom/IconButton.js +1 -1
  272. package/widgets/smartMapping/BinaryColorSizeSlider.js +1 -1
  273. package/widgets/smartMapping/ClassedColorSlider.js +1 -1
  274. package/widgets/smartMapping/ClassedSizeSlider.js +1 -1
  275. package/widgets/smartMapping/ColorSizeSlider.js +1 -1
  276. package/widgets/smartMapping/ColorSlider.js +1 -1
  277. package/widgets/smartMapping/HeatmapSlider.js +1 -1
  278. package/widgets/smartMapping/OpacitySlider.js +1 -1
  279. package/widgets/smartMapping/SizeSlider.js +1 -1
  280. package/widgets/smartMapping/SmartMappingSliderBase.js +1 -1
  281. package/widgets/support/ColorPicker.js +1 -1
  282. package/widgets/support/DatePicker.js +1 -1
  283. package/widgets/support/Heading.js +1 -1
  284. package/widgets/support/LabeledSwitch.js +1 -1
  285. package/widgets/support/MeasurementWidgetContent.js +1 -1
  286. package/widgets/support/Popover.js +1 -1
  287. package/widgets/support/SelectionToolbar.js +1 -1
  288. package/widgets/support/SketchTooltipControls.js +1 -1
  289. package/widgets/support/SnappingControls.js +1 -1
  290. package/widgets/support/TimePicker.js +1 -1
  291. package/widgets/support/TimezonePicker.js +1 -1
  292. package/widgets/support/UnitSelect.js +1 -1
  293. package/assets/esri/core/workers/chunks/092920c25cac89c038ee.js +0 -1
  294. package/assets/esri/core/workers/chunks/1b3655f5bf5d90fa8730.js +0 -1
  295. package/assets/esri/core/workers/chunks/1cf7bb514e7eefc3e9c6.js +0 -1
  296. package/assets/esri/core/workers/chunks/24629402c647ef6b5f6b.js +0 -1
  297. package/assets/esri/core/workers/chunks/2d0d03cbea83c868edba.js +0 -1
  298. package/assets/esri/core/workers/chunks/2e130cb2f1038055c07b.js +0 -1
  299. package/assets/esri/core/workers/chunks/4369a6c1e0a82ab4db6a.js +0 -1
  300. package/assets/esri/core/workers/chunks/4f4a424d1747d04501df.js +0 -1
  301. package/assets/esri/core/workers/chunks/59c00d6fba0fd1c03d01.js +0 -1
  302. package/assets/esri/core/workers/chunks/650a317b6dc245a7060f.js +0 -1
  303. package/assets/esri/core/workers/chunks/7a358b1fd0c0cce59e9b.js +0 -1
  304. package/assets/esri/core/workers/chunks/83d1a1b3d371c991cc4c.js +0 -1
  305. package/assets/esri/core/workers/chunks/c4bb67150ccd01ea6014.js +0 -1
  306. package/assets/esri/core/workers/chunks/c60cf62f374e71e562fc.js +0 -1
  307. package/assets/esri/core/workers/chunks/c8f239c25fe864f0e47a.js +0 -1
  308. package/assets/esri/core/workers/chunks/cad260881653567bc8f9.js +0 -1
  309. package/assets/esri/core/workers/chunks/e55f7fc7eff0074ce0fc.js +0 -1
  310. package/assets/esri/core/workers/chunks/eef27d305023034084a4.js +0 -1
  311. package/assets/esri/core/workers/chunks/f38c54ada9e7012a2960.js +0 -1
  312. package/core/watchUtils.d.ts +0 -4
  313. package/core/watchUtils.js +0 -5
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import{property as r}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as t}from"../../core/accessorSupport/decorators/subclass.js";import{SmartMappingSliderBase as s}from"./SmartMappingSliderBase.js";import i from"./ColorSlider/ColorSliderViewModel.js";import{globalCss as a}from"../support/globalCss.js";import{legacyIcon as o}from"../support/legacyIcon.js";import"../support/widgetUtils.js";import{messageBundle as l}from"../support/decorators/messageBundle.js";import{tsx as n}from"../support/jsxFactory.js";var d;const p="esri-color-slider",m={base:p,widgetIcon:o.edit,rampElement:`${p}__ramp`,sliderContainer:`${p}__slider-container`,histogramContainer:`${p}__histogram-container`,primaryHandle:`${p}--primary-handle`,track:`${p}--interactive-track`};let c=d=class extends s{constructor(e,r){super(e,r),this.messages=null,this.viewModel=new i,this._bgFillId=`${this.id}-bg-fill`,this._rampFillId=`${this.id}-linear-gradient`}get handlesSyncedToPrimary(){return this.viewModel.handlesSyncedToPrimary}set handlesSyncedToPrimary(e){this.viewModel.handlesSyncedToPrimary=e}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get primaryHandleEnabled(){return this.viewModel.primaryHandleEnabled}set primaryHandleEnabled(e){this.viewModel.primaryHandleEnabled=e}get stops(){return this.viewModel.stops}set stops(e){this.viewModel.stops=e}static fromRendererResult(e,r){const{visualVariable:{stops:t},statistics:s}=e,{avg:i,stddev:a}=s,o=e.renderer.authoringInfo.visualVariables.find((e=>"color"===e.type)),l=o.minSliderValue,n=o.maxSliderValue;return new d({max:n,min:l,stops:t,histogramConfig:{average:i,standardDeviation:a,bins:r?r.bins:[]},primaryHandleEnabled:"high-to-low"!==o.theme})}updateFromRendererResult(e,r){const{visualVariable:{stops:t},statistics:s}=e,{avg:i,stddev:a}=s,o=e.renderer.authoringInfo.visualVariables.find((e=>"color"===e.type)),l=o.minSliderValue,n=o.maxSliderValue;this.set({max:n,min:l,stops:t,histogramConfig:{average:i,standardDeviation:a,bins:r?r.bins:[]},primaryHandleEnabled:"high-to-low"!==o.theme})}render(){const{label:e,primaryHandleEnabled:r,state:t,visibleElements:s}=this,i="disabled"===t,o=this.classes(m.base,a.widget,a.panel,{[a.disabled]:i,[m.primaryHandle]:r,[m.track]:!!s.interactiveTrack});return n("div",{"aria-label":e,class:o},i?null:this.renderContent(this._renderRamp(),m.sliderContainer,m.histogramContainer))}_renderRamp(){const{_bgFillId:e,_rampFillId:r,viewModel:t,zoomOptions:s}=this,i=t.getStopInfo();return n("div",{class:m.rampElement},n("svg",{xmlns:"http://www.w3.org/2000/svg"},n("defs",null,this.renderRampFillDefinition(r,i),this.renderBackgroundFillDefinition(e)),n("rect",{x:"0",y:"0",fill:`url(#${e})`,height:"100%",width:"100%"}),n("rect",{x:"0",y:"0",fill:`url(#${r})`,height:"100%",width:"100%"})),s?this.renderZoomCaps():null)}};e([r()],c.prototype,"handlesSyncedToPrimary",null),e([r()],c.prototype,"label",null),e([r(),l("esri/widgets/smartMapping/ColorSlider/t9n/ColorSlider")],c.prototype,"messages",void 0),e([r()],c.prototype,"primaryHandleEnabled",null),e([r()],c.prototype,"stops",null),e([r()],c.prototype,"viewModel",void 0),c=d=e([t("esri.widgets.smartMapping.ColorSlider")],c);const h=c;export{h as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import{property as r}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as t}from"../../core/accessorSupport/decorators/subclass.js";import{SmartMappingSliderBase as s}from"./SmartMappingSliderBase.js";import i from"./ColorSlider/ColorSliderViewModel.js";import{globalCss as a}from"../support/globalCss.js";import{legacyIcon as o}from"../support/legacyIcon.js";import"../support/widgetUtils.js";import{messageBundle as l}from"../support/decorators/messageBundle.js";import{tsx as n}from"../support/jsxFactory.js";var d;const p="esri-color-slider",m={base:p,widgetIcon:o.edit,rampElement:`${p}__ramp`,sliderContainer:`${p}__slider-container`,histogramContainer:`${p}__histogram-container`,primaryHandle:`${p}--primary-handle`,track:`${p}--interactive-track`};let c=d=class extends s{constructor(e,r){super(e,r),this.messages=null,this.viewModel=new i,this._bgFillId=`${this.id}-bg-fill`,this._rampFillId=`${this.id}-linear-gradient`}get handlesSyncedToPrimary(){return this.viewModel.handlesSyncedToPrimary}set handlesSyncedToPrimary(e){this.viewModel.handlesSyncedToPrimary=e}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get primaryHandleEnabled(){return this.viewModel.primaryHandleEnabled}set primaryHandleEnabled(e){this.viewModel.primaryHandleEnabled=e}get stops(){return this.viewModel.stops}set stops(e){this.viewModel.stops=e}static fromRendererResult(e,r){const{visualVariable:{stops:t},statistics:s}=e,{avg:i,stddev:a}=s,o=e.renderer.authoringInfo.visualVariables.find((e=>"color"===e.type)),l=o.minSliderValue,n=o.maxSliderValue;return new d({max:n,min:l,stops:t,histogramConfig:{average:i,standardDeviation:a,bins:r?r.bins:[]},primaryHandleEnabled:"high-to-low"!==o.theme})}updateFromRendererResult(e,r){const{visualVariable:{stops:t},statistics:s}=e,{avg:i,stddev:a}=s,o=e.renderer.authoringInfo.visualVariables.find((e=>"color"===e.type)),l=o.minSliderValue,n=o.maxSliderValue;this.set({max:n,min:l,stops:t,histogramConfig:{average:i,standardDeviation:a,bins:r?r.bins:[]},primaryHandleEnabled:"high-to-low"!==o.theme})}render(){const{label:e,primaryHandleEnabled:r,state:t,visibleElements:s}=this,i="disabled"===t,o=this.classes(m.base,a.widget,a.panel,{[a.disabled]:i,[m.primaryHandle]:r,[m.track]:!!s.interactiveTrack});return n("div",{"aria-label":e,class:o},i?null:this.renderContent(this._renderRamp(),m.sliderContainer,m.histogramContainer))}_renderRamp(){const{_bgFillId:e,_rampFillId:r,viewModel:t,zoomOptions:s}=this,i=t.getStopInfo();return n("div",{class:m.rampElement},n("svg",{xmlns:"http://www.w3.org/2000/svg"},n("defs",null,this.renderRampFillDefinition(r,i),this.renderBackgroundFillDefinition(e)),n("rect",{fill:`url(#${e})`,height:"100%",width:"100%",x:"0",y:"0"}),n("rect",{fill:`url(#${r})`,height:"100%",width:"100%",x:"0",y:"0"})),s?this.renderZoomCaps():null)}};e([r()],c.prototype,"handlesSyncedToPrimary",null),e([r()],c.prototype,"label",null),e([r(),l("esri/widgets/smartMapping/ColorSlider/t9n/ColorSlider")],c.prototype,"messages",void 0),e([r()],c.prototype,"primaryHandleEnabled",null),e([r()],c.prototype,"stops",null),e([r()],c.prototype,"viewModel",void 0),c=d=e([t("esri.widgets.smartMapping.ColorSlider")],c);const h=c;export{h as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as t}from"../../core/accessorSupport/decorators/subclass.js";import{SmartMappingSliderBase as r}from"./SmartMappingSliderBase.js";import i from"./HeatmapSlider/HeatmapSliderViewModel.js";import{globalCss as o}from"../support/globalCss.js";import{legacyIcon as a}from"../support/legacyIcon.js";import"../support/widgetUtils.js";import{messageBundle as l}from"../support/decorators/messageBundle.js";import{tsx as p}from"../support/jsxFactory.js";var n;const d="esri-heatmap-slider",m={base:d,widgetIcon:a.edit,rampElement:`${d}__ramp`,sliderContainer:`${d}__slider-container`,track:`${d}--interactive-track`};let c=n=class extends r{constructor(e,s){super(e,s),this.messages=null,this.viewModel=new i,this.slider.set({visibleElements:{labels:!1,rangeLabels:!0},labelInputsEnabled:!1,rangeLabelInputsEnabled:!1}),this._rampFillId=`${this.id}-ramp-fill`}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get stops(){return this.viewModel.stops}set stops(e){this.viewModel.stops=e}static fromHeatmapRendererResult(e){return new n({stops:e.renderer.colorStops})}render(){const{state:e,label:s,visibleElements:t}=this,r="disabled"===e,i=this.classes(m.base,o.widget,o.panel,{[o.disabled]:r,[m.track]:!!t.interactiveTrack});return p("div",{"aria-label":s,class:i},r?null:this.renderContent(this._renderRamp(),m.sliderContainer))}_renderRamp(){const{_rampFillId:e,viewModel:s}=this,t=s.getStopInfo();return p("div",{class:m.rampElement},p("svg",{xmlns:"http://www.w3.org/2000/svg"},p("defs",null,this.renderRampFillDefinition(e,t)),p("rect",{x:"0",y:"0",fill:`url(#${e})`,height:"100%",width:"100%"})))}};e([s()],c.prototype,"label",null),e([s(),l("esri/widgets/smartMapping/HeatmapSlider/t9n/HeatmapSlider")],c.prototype,"messages",void 0),e([s()],c.prototype,"stops",null),e([s()],c.prototype,"viewModel",void 0),c=n=e([t("esri.widgets.smartMapping.HeatmapSlider")],c);const u=c;export{u as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as t}from"../../core/accessorSupport/decorators/subclass.js";import{SmartMappingSliderBase as r}from"./SmartMappingSliderBase.js";import i from"./HeatmapSlider/HeatmapSliderViewModel.js";import{globalCss as o}from"../support/globalCss.js";import{legacyIcon as a}from"../support/legacyIcon.js";import"../support/widgetUtils.js";import{messageBundle as l}from"../support/decorators/messageBundle.js";import{tsx as p}from"../support/jsxFactory.js";var n;const d="esri-heatmap-slider",m={base:d,widgetIcon:a.edit,rampElement:`${d}__ramp`,sliderContainer:`${d}__slider-container`,track:`${d}--interactive-track`};let c=n=class extends r{constructor(e,s){super(e,s),this.messages=null,this.viewModel=new i,this.slider.set({visibleElements:{labels:!1,rangeLabels:!0},labelInputsEnabled:!1,rangeLabelInputsEnabled:!1}),this._rampFillId=`${this.id}-ramp-fill`}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get stops(){return this.viewModel.stops}set stops(e){this.viewModel.stops=e}static fromHeatmapRendererResult(e){return new n({stops:e.renderer.colorStops})}render(){const{state:e,label:s,visibleElements:t}=this,r="disabled"===e,i=this.classes(m.base,o.widget,o.panel,{[o.disabled]:r,[m.track]:!!t.interactiveTrack});return p("div",{"aria-label":s,class:i},r?null:this.renderContent(this._renderRamp(),m.sliderContainer))}_renderRamp(){const{_rampFillId:e,viewModel:s}=this,t=s.getStopInfo();return p("div",{class:m.rampElement},p("svg",{xmlns:"http://www.w3.org/2000/svg"},p("defs",null,this.renderRampFillDefinition(e,t)),p("rect",{fill:`url(#${e})`,height:"100%",width:"100%",x:"0",y:"0"})))}};e([s()],c.prototype,"label",null),e([s(),l("esri/widgets/smartMapping/HeatmapSlider/t9n/HeatmapSlider")],c.prototype,"messages",void 0),e([s()],c.prototype,"stops",null),e([s()],c.prototype,"viewModel",void 0),c=n=e([t("esri.widgets.smartMapping.HeatmapSlider")],c);const u=c;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.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../../chunks/tslib.es6.js";import s from"../../Color.js";import{property as e}from"../../core/accessorSupport/decorators/property.js";import{cast as r}from"../../core/accessorSupport/decorators/cast.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import{SmartMappingSliderBase as o}from"./SmartMappingSliderBase.js";import a from"./OpacitySlider/OpacitySliderViewModel.js";import{globalCss as l}from"../support/globalCss.js";import{legacyIcon as p}from"../support/legacyIcon.js";import"../support/widgetUtils.js";import{messageBundle as n}from"../support/decorators/messageBundle.js";import{tsx as d}from"../support/jsxFactory.js";var m;const c="esri-opacity-slider",g={base:c,widgetIcon:p.edit,rampElement:`${c}__ramp`,sliderContainer:`${c}__slider-container`,histogramContainer:`${c}__histogram-container`,track:`${c}--interactive-track`},u={trackFillColor:new s([0,121,193])};let h=m=class extends o{constructor(t,s){super(t,s),this.messages=null,this.style={...u},this.viewModel=new a,this._rampFillId=`${this.id}-ramp-fill`,this._bgFillId=`${this.id}-bg-fill`}get label(){return this.messages?.widgetLabel??""}set label(t){this._overrideIfSome("label",t)}get stops(){return this.viewModel.stops}set stops(t){this.viewModel.stops=t}castStyle(t){return{...u,...t}}static fromVisualVariableResult(t,s){const{visualVariable:{stops:e},statistics:r}=t,{avg:i,max:o,min:a,stddev:l}=r;return new m({max:o,min:a,stops:e,histogramConfig:{average:i,standardDeviation:l,bins:s?s.bins:[]}})}updateFromVisualVariableResult(t,s){const{visualVariable:{stops:e},statistics:r}=t,{avg:i,max:o,min:a,stddev:l}=r;this.set({max:o,min:a,stops:e,histogramConfig:{average:i,standardDeviation:l,bins:s?s.bins:[]}})}render(){const{state:t,label:s,visibleElements:e}=this,r="disabled"===t,i=this.classes(g.base,l.widget,l.panel,{[l.disabled]:r,[g.track]:!!e.interactiveTrack});return d("div",{"aria-label":s,class:i},r?null:this.renderContent(this._renderRamp(),g.sliderContainer,g.histogramContainer))}_renderRamp(){const{_bgFillId:t,_rampFillId:s,style:{trackFillColor:e},viewModel:r,zoomOptions:i}=this,o=r.getStopInfo(e);return d("div",{class:g.rampElement},d("svg",{xmlns:"http://www.w3.org/2000/svg"},d("defs",null,this.renderRampFillDefinition(s,o),this.renderBackgroundFillDefinition(t)),d("rect",{x:"0",y:"0",fill:`url(#${t})`,height:"100%",width:"100%"}),d("rect",{x:"0",y:"0",fill:`url(#${s})`,height:"100%",width:"100%"})),i?this.renderZoomCaps():null)}};t([e()],h.prototype,"label",null),t([e(),n("esri/widgets/smartMapping/OpacitySlider/t9n/OpacitySlider")],h.prototype,"messages",void 0),t([e()],h.prototype,"stops",null),t([e()],h.prototype,"style",void 0),t([r("style")],h.prototype,"castStyle",null),t([e()],h.prototype,"viewModel",void 0),h=m=t([i("esri.widgets.smartMapping.OpacitySlider")],h);const v=h;export{v as default};
5
+ import{_ as t}from"../../chunks/tslib.es6.js";import s from"../../Color.js";import{property as e}from"../../core/accessorSupport/decorators/property.js";import{cast as r}from"../../core/accessorSupport/decorators/cast.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import{SmartMappingSliderBase as o}from"./SmartMappingSliderBase.js";import a from"./OpacitySlider/OpacitySliderViewModel.js";import{globalCss as l}from"../support/globalCss.js";import{legacyIcon as p}from"../support/legacyIcon.js";import"../support/widgetUtils.js";import{messageBundle as n}from"../support/decorators/messageBundle.js";import{tsx as d}from"../support/jsxFactory.js";var m;const c="esri-opacity-slider",g={base:c,widgetIcon:p.edit,rampElement:`${c}__ramp`,sliderContainer:`${c}__slider-container`,histogramContainer:`${c}__histogram-container`,track:`${c}--interactive-track`},u={trackFillColor:new s([0,121,193])};let h=m=class extends o{constructor(t,s){super(t,s),this.messages=null,this.style={...u},this.viewModel=new a,this._rampFillId=`${this.id}-ramp-fill`,this._bgFillId=`${this.id}-bg-fill`}get label(){return this.messages?.widgetLabel??""}set label(t){this._overrideIfSome("label",t)}get stops(){return this.viewModel.stops}set stops(t){this.viewModel.stops=t}castStyle(t){return{...u,...t}}static fromVisualVariableResult(t,s){const{visualVariable:{stops:e},statistics:r}=t,{avg:i,max:o,min:a,stddev:l}=r;return new m({max:o,min:a,stops:e,histogramConfig:{average:i,standardDeviation:l,bins:s?s.bins:[]}})}updateFromVisualVariableResult(t,s){const{visualVariable:{stops:e},statistics:r}=t,{avg:i,max:o,min:a,stddev:l}=r;this.set({max:o,min:a,stops:e,histogramConfig:{average:i,standardDeviation:l,bins:s?s.bins:[]}})}render(){const{state:t,label:s,visibleElements:e}=this,r="disabled"===t,i=this.classes(g.base,l.widget,l.panel,{[l.disabled]:r,[g.track]:!!e.interactiveTrack});return d("div",{"aria-label":s,class:i},r?null:this.renderContent(this._renderRamp(),g.sliderContainer,g.histogramContainer))}_renderRamp(){const{_bgFillId:t,_rampFillId:s,style:{trackFillColor:e},viewModel:r,zoomOptions:i}=this,o=r.getStopInfo(e);return d("div",{class:g.rampElement},d("svg",{xmlns:"http://www.w3.org/2000/svg"},d("defs",null,this.renderRampFillDefinition(s,o),this.renderBackgroundFillDefinition(t)),d("rect",{fill:`url(#${t})`,height:"100%",width:"100%",x:"0",y:"0"}),d("rect",{fill:`url(#${s})`,height:"100%",width:"100%",x:"0",y:"0"})),i?this.renderZoomCaps():null)}};t([e()],h.prototype,"label",null),t([e(),n("esri/widgets/smartMapping/OpacitySlider/t9n/OpacitySlider")],h.prototype,"messages",void 0),t([e()],h.prototype,"stops",null),t([e()],h.prototype,"style",void 0),t([r("style")],h.prototype,"castStyle",null),t([e()],h.prototype,"viewModel",void 0),h=m=t([i("esri.widgets.smartMapping.OpacitySlider")],h);const v=h;export{v as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../Color.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import{cast as a}from"../../core/accessorSupport/decorators/cast.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as r}from"../../core/accessorSupport/decorators/subclass.js";import i from"../../renderers/visualVariables/SizeVariable.js";import o from"../../renderers/visualVariables/support/SizeStop.js";import{SmartMappingSliderBase as l}from"./SmartMappingSliderBase.js";import n from"./SizeSlider/SizeSliderViewModel.js";import{getSizesFromVariable as p,getFillFromColor as d,getDynamicPathForSizeStops as m,getPathForSizeStops as u}from"./support/utils.js";import{globalCss as c}from"../support/globalCss.js";import{legacyIcon as h}from"../support/legacyIcon.js";import{storeNode as g}from"../support/widgetUtils.js";import{messageBundle as v}from"../support/decorators/messageBundle.js";import{tsx as b}from"../support/jsxFactory.js";var z;const y="esri-size-slider",f={base:y,widgetIcon:h.edit,rampElement:`${y}__ramp`,sliderContainer:`${y}__slider-container`,histogramContainer:`${y}__histogram-container`,zoomCapTop:`${y}__zoom-cap-top`,zoomCapBottom:`${y}__zoom-cap-bottom`,zoomCapLine:`${y}__zoom-cap-line`,zoomCapMask:`${y}__zoom-cap-mask`,zoomCapUnderline:`${y}__zoom-cap-underline`,primaryHandle:`${y}--primary-handle`,track:`${y}--interactive-track`},S={trackFillColor:new t([149,149,149]),trackBackgroundColor:new t([224,224,224])};let _=z=class extends l{constructor(e,t){super(e,t),this._maxRampFillWidth=1,this._minRampFillWidth=.2,this._rampNode=null,this.messages=null,this.style={...S},this.viewModel=new n}get handlesSyncedToPrimary(){return this.viewModel.handlesSyncedToPrimary}set handlesSyncedToPrimary(e){this.viewModel.handlesSyncedToPrimary=e}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get persistSizeRangeEnabled(){return this.viewModel.persistSizeRangeEnabled}set persistSizeRangeEnabled(e){this.viewModel.persistSizeRangeEnabled=e}get primaryHandleEnabled(){return this.viewModel.primaryHandleEnabled}set primaryHandleEnabled(e){this.viewModel.primaryHandleEnabled=e}get stops(){return this.viewModel.stops}set stops(e){this.viewModel.stops=e}castStyle(e){return{...S,...e}}static fromRendererResult(e,t){const{visualVariables:s,statistics:a}=e,{avg:r,stddev:i}=a,o=s[0],[l,n]=p(o),d=e.renderer.authoringInfo.visualVariables[0],m=d.minSliderValue,u=d.maxSliderValue;return new z({max:u,min:m,stops:[{value:o.minDataValue,size:n},{value:o.maxDataValue,size:l}],histogramConfig:{average:r,standardDeviation:i,bins:t?t.bins:[]}})}updateFromRendererResult(e,t){const{visualVariables:s,statistics:a}=e,{avg:r,stddev:i}=a,o=s[0],[l,n]=p(o),d=e.renderer.authoringInfo.visualVariables[0],m=d.minSliderValue,u=d.maxSliderValue;this.set({max:u,min:m,stops:[{value:o.minDataValue,size:n},{value:o.maxDataValue,size:l}],histogramConfig:{average:r,standardDeviation:i,bins:t?t.bins:[]}})}updateVisualVariable(e){const t=e.clone(),{stops:s}=this;if(!e||!s)return null;if(t.stops)return t.stops=s,t;const a=s[0],r=s[s.length-1];let o=t.maxSize,l=t.minSize;if(o instanceof i){const e=o.stops,t=r.size/e[0].size,s=e.map((e=>(e.size*=t,e)));o.stops=s}else o=r.size;if(l instanceof i){const e=l.stops,t=a.size/e[0].size,s=e.map((e=>(e.size*=t,e)));l.stops=s}else l=a.size;return t.set({maxDataValue:r.value,minDataValue:a.value,maxSize:o,minSize:l}),t}updateFromVisualVariable(e){if(!e)return;const{maxDataValue:t,minDataValue:s,stops:a}=e;if(a)this.stops=a;else{const[a,r]=p(e);this.stops=[new o({value:s,size:r}),new o({value:t,size:a})]}}render(){const{label:e,primaryHandleEnabled:t,state:s,visibleElements:a}=this,r="disabled"===s,i=this.classes(f.base,c.widget,c.panel,{[c.disabled]:r,[f.primaryHandle]:t,[f.track]:!!a.interactiveTrack});return b("div",{"aria-label":e,class:i},r?null:this.renderContent(this._renderRamp(),f.sliderContainer,f.histogramContainer))}_renderRamp(){const{style:{trackBackgroundColor:e},zoomOptions:t}=this;return b("div",{afterCreate:g,bind:this,class:f.rampElement,"data-node-ref":"_rampNode"},b("svg",{key:"ramp-svg",xmlns:"http://www.w3.org/2000/svg"},b("rect",{x:"0",y:"0",fill:d(e),height:"100%",width:"100%"}),this._renderPath()),t?this.renderZoomCaps():null)}_renderPath(){if(!this._rampNode)return;const{offsetHeight:e=0,offsetWidth:t=0}=this._rampNode;if(null==e||null==t)return;const{primaryHandleEnabled:s,stops:a,style:{trackFillColor:r},values:i,viewModel:{max:o,min:l},_maxRampFillWidth:n,_minRampFillWidth:p}=this,c=[n,p];a[0].size<a[a.length-1].size&&c.reverse();const h=i.slice().sort(((e,t)=>e>t?1:-1)),[g,v]=c,[z,y]=h,f=s?m({max:o,min:l,pathHeight:e,pathWidth:t,stops:a,padding:v}):u({bottomValue:z,bottomWidth:g,max:o,min:l,pathHeight:e,pathWidth:t,topValue:y,topWidth:v});return b("path",{d:f,fill:d(r)})}};e([s()],_.prototype,"handlesSyncedToPrimary",null),e([s()],_.prototype,"label",null),e([s(),v("esri/widgets/smartMapping/SizeSlider/t9n/SizeSlider")],_.prototype,"messages",void 0),e([s()],_.prototype,"persistSizeRangeEnabled",null),e([s()],_.prototype,"primaryHandleEnabled",null),e([s()],_.prototype,"stops",null),e([s()],_.prototype,"style",void 0),e([a("style")],_.prototype,"castStyle",null),e([s()],_.prototype,"viewModel",void 0),_=z=e([r("esri.widgets.smartMapping.SizeSlider")],_);const w=_;export{w as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../Color.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import{cast as a}from"../../core/accessorSupport/decorators/cast.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as r}from"../../core/accessorSupport/decorators/subclass.js";import i from"../../renderers/visualVariables/SizeVariable.js";import o from"../../renderers/visualVariables/support/SizeStop.js";import{SmartMappingSliderBase as l}from"./SmartMappingSliderBase.js";import n from"./SizeSlider/SizeSliderViewModel.js";import{getSizesFromVariable as p,getFillFromColor as d,getDynamicPathForSizeStops as m,getPathForSizeStops as u}from"./support/utils.js";import{globalCss as c}from"../support/globalCss.js";import{legacyIcon as h}from"../support/legacyIcon.js";import{storeNode as g}from"../support/widgetUtils.js";import{messageBundle as v}from"../support/decorators/messageBundle.js";import{tsx as b}from"../support/jsxFactory.js";var z;const y="esri-size-slider",f={base:y,widgetIcon:h.edit,rampElement:`${y}__ramp`,sliderContainer:`${y}__slider-container`,histogramContainer:`${y}__histogram-container`,zoomCapTop:`${y}__zoom-cap-top`,zoomCapBottom:`${y}__zoom-cap-bottom`,zoomCapLine:`${y}__zoom-cap-line`,zoomCapMask:`${y}__zoom-cap-mask`,zoomCapUnderline:`${y}__zoom-cap-underline`,primaryHandle:`${y}--primary-handle`,track:`${y}--interactive-track`},S={trackFillColor:new t([149,149,149]),trackBackgroundColor:new t([224,224,224])};let _=z=class extends l{constructor(e,t){super(e,t),this._maxRampFillWidth=1,this._minRampFillWidth=.2,this._rampNode=null,this.messages=null,this.style={...S},this.viewModel=new n}get handlesSyncedToPrimary(){return this.viewModel.handlesSyncedToPrimary}set handlesSyncedToPrimary(e){this.viewModel.handlesSyncedToPrimary=e}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get persistSizeRangeEnabled(){return this.viewModel.persistSizeRangeEnabled}set persistSizeRangeEnabled(e){this.viewModel.persistSizeRangeEnabled=e}get primaryHandleEnabled(){return this.viewModel.primaryHandleEnabled}set primaryHandleEnabled(e){this.viewModel.primaryHandleEnabled=e}get stops(){return this.viewModel.stops}set stops(e){this.viewModel.stops=e}castStyle(e){return{...S,...e}}static fromRendererResult(e,t){const{visualVariables:s,statistics:a}=e,{avg:r,stddev:i}=a,o=s[0],[l,n]=p(o),d=e.renderer.authoringInfo.visualVariables[0],m=d.minSliderValue,u=d.maxSliderValue;return new z({max:u,min:m,stops:[{value:o.minDataValue,size:n},{value:o.maxDataValue,size:l}],histogramConfig:{average:r,standardDeviation:i,bins:t?t.bins:[]}})}updateFromRendererResult(e,t){const{visualVariables:s,statistics:a}=e,{avg:r,stddev:i}=a,o=s[0],[l,n]=p(o),d=e.renderer.authoringInfo.visualVariables[0],m=d.minSliderValue,u=d.maxSliderValue;this.set({max:u,min:m,stops:[{value:o.minDataValue,size:n},{value:o.maxDataValue,size:l}],histogramConfig:{average:r,standardDeviation:i,bins:t?t.bins:[]}})}updateVisualVariable(e){const t=e.clone(),{stops:s}=this;if(!e||!s)return null;if(t.stops)return t.stops=s,t;const a=s[0],r=s[s.length-1];let o=t.maxSize,l=t.minSize;if(o instanceof i){const e=o.stops,t=r.size/e[0].size,s=e.map((e=>(e.size*=t,e)));o.stops=s}else o=r.size;if(l instanceof i){const e=l.stops,t=a.size/e[0].size,s=e.map((e=>(e.size*=t,e)));l.stops=s}else l=a.size;return t.set({maxDataValue:r.value,minDataValue:a.value,maxSize:o,minSize:l}),t}updateFromVisualVariable(e){if(!e)return;const{maxDataValue:t,minDataValue:s,stops:a}=e;if(a)this.stops=a;else{const[a,r]=p(e);this.stops=[new o({value:s,size:r}),new o({value:t,size:a})]}}render(){const{label:e,primaryHandleEnabled:t,state:s,visibleElements:a}=this,r="disabled"===s,i=this.classes(f.base,c.widget,c.panel,{[c.disabled]:r,[f.primaryHandle]:t,[f.track]:!!a.interactiveTrack});return b("div",{"aria-label":e,class:i},r?null:this.renderContent(this._renderRamp(),f.sliderContainer,f.histogramContainer))}_renderRamp(){const{style:{trackBackgroundColor:e},zoomOptions:t}=this;return b("div",{afterCreate:g,bind:this,class:f.rampElement,"data-node-ref":"_rampNode"},b("svg",{key:"ramp-svg",xmlns:"http://www.w3.org/2000/svg"},b("rect",{fill:d(e),height:"100%",width:"100%",x:"0",y:"0"}),this._renderPath()),t?this.renderZoomCaps():null)}_renderPath(){if(!this._rampNode)return;const{offsetHeight:e=0,offsetWidth:t=0}=this._rampNode;if(null==e||null==t)return;const{primaryHandleEnabled:s,stops:a,style:{trackFillColor:r},values:i,viewModel:{max:o,min:l},_maxRampFillWidth:n,_minRampFillWidth:p}=this,c=[n,p];a[0].size<a[a.length-1].size&&c.reverse();const h=i.slice().sort(((e,t)=>e>t?1:-1)),[g,v]=c,[z,y]=h,f=s?m({max:o,min:l,pathHeight:e,pathWidth:t,stops:a,padding:v}):u({bottomValue:z,bottomWidth:g,max:o,min:l,pathHeight:e,pathWidth:t,topValue:y,topWidth:v});return b("path",{d:f,fill:d(r)})}};e([s()],_.prototype,"handlesSyncedToPrimary",null),e([s()],_.prototype,"label",null),e([s(),v("esri/widgets/smartMapping/SizeSlider/t9n/SizeSlider")],_.prototype,"messages",void 0),e([s()],_.prototype,"persistSizeRangeEnabled",null),e([s()],_.prototype,"primaryHandleEnabled",null),e([s()],_.prototype,"stops",null),e([s()],_.prototype,"style",void 0),e([a("style")],_.prototype,"castStyle",null),e([s()],_.prototype,"viewModel",void 0),_=z=e([r("esri.widgets.smartMapping.SizeSlider")],_);const w=_;export{w as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../../chunks/tslib.es6.js";import e from"../../Color.js";import{watch as i}from"../../core/reactiveUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import{cast as n}from"../../core/accessorSupport/decorators/cast.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import a from"../Histogram.js";import r from"../Slider.js";import l from"../Widget.js";import{getDeviationValues as m}from"./support/utils.js";import"../support/widgetUtils.js";import{tsx as p}from"../support/jsxFactory.js";const d="zoom-cap",c={zoomCap:d,maxZoomCap:`${d}--max`,minZoomCap:`${d}--min`,zoomCapLine:`${d}--line`,zoomCapMask:`${d}--mask`,zoomCapUnderline:`${d}--underline`},h={interactiveTrack:!1};let u=class extends l{constructor(t,e){super(t,e),this.histogram=new a({layout:"vertical"}),this.histogramConfig=null,this.slider=new r({syncedSegmentsEnabled:!0,thumbsConstrained:!1,layout:"vertical",visibleElements:{labels:!0,rangeLabels:!0},labelInputsEnabled:!0,rangeLabelInputsEnabled:!0}),this.viewModel=null,this.visibleElements={...h};const o=this.slider;!t?.hasTimeData||t?.inputParseFunction||t?.inputFormatFunction||o.set({labelInputsEnabled:!1,rangeLabelInputsEnabled:!1}),o.draggableSegmentsEnabled=!!t?.visibleElements?.interactiveTrack,this.addHandles([o.on("max-change",(t=>this.emit("max-change",t))),o.on("max-click",(t=>this.emit("max-click",t))),o.on("min-change",(t=>this.emit("min-change",t))),o.on("min-click",(t=>this.emit("min-click",t))),o.on("segment-click",(t=>this.emit("segment-click",t))),o.on("segment-drag",(t=>this.emit("segment-drag",t))),o.on("thumb-change",(t=>this.emit("thumb-change",t))),o.on("thumb-click",(t=>this.emit("thumb-click",t))),o.on("thumb-drag",(t=>this.emit("thumb-drag",t))),o.on("track-click",(t=>this.emit("track-click",t))),i((()=>[this.histogramConfig,this.max,this.min,this.zoomOptions]),(()=>{const{histogram:t,histogramConfig:e,viewModel:{max:i,min:o}}=this,n=this.getParamsFromHistogramConfig(e);t.set({...n,max:i,min:o})})),i((()=>this.labelFormatFunction),(()=>{const{histogram:t,labelFormatFunction:e}=this;t.set({labelFormatFunction:e})})),i((()=>this.hasTimeData),(t=>{const{labelInputsEnabled:e,rangeLabelInputsEnabled:i}=this.slider,n=!t||this.inputFormatFunction&&this.inputParseFunction;o.set({labelInputsEnabled:e&&n,rangeLabelInputsEnabled:i&&n})})),i((()=>this.visibleElements?.interactiveTrack),(t=>{o.draggableSegmentsEnabled=!!t}))]),this._onMaxZoomCapPointerDown=this._onMaxZoomCapPointerDown.bind(this),this._onMinZoomCapPointerDown=this._onMinZoomCapPointerDown.bind(this)}initialize(){const{histogramConfig:t={},viewModel:e}=this,{labelFormatFunction:i,max:o,min:n}=e,s=this.getParamsFromHistogramConfig(t);this.histogram.set({labelFormatFunction:i,...s,max:o,min:n}),this.slider.set({viewModel:e})}get hasTimeData(){return this.viewModel?.hasTimeData??!1}set hasTimeData(t){this.viewModel&&(this.viewModel.hasTimeData=t)}get inputFormatFunction(){return this.viewModel?.inputFormatFunction}set inputFormatFunction(t){this.viewModel&&(this.viewModel.inputFormatFunction=t)}get inputParseFunction(){return this.viewModel?.inputParseFunction}set inputParseFunction(t){this.viewModel&&(this.viewModel.inputParseFunction=t)}get labelFormatFunction(){return this.viewModel?.labelFormatFunction}set labelFormatFunction(t){this.viewModel&&(this.viewModel.labelFormatFunction=t)}get max(){return this.viewModel?.getUnzoomedMax()??this._get("max")??null}set max(t){this.viewModel?this.viewModel.max=t:this._set("max",t)}get min(){return this.viewModel?.getUnzoomedMin()??this._get("min")??null}set min(t){this.viewModel?this.viewModel.min=t:this._set("min",t)}get precision(){return this.viewModel?.precision??4}set precision(t){this.viewModel&&(this.viewModel.precision=t)}get state(){return this.viewModel?.state??"disabled"}get syncedSegmentsEnabled(){return this.slider?.syncedSegmentsEnabled}set syncedSegmentsEnabled(t){this.slider&&(this.slider.syncedSegmentsEnabled=t)}get values(){return this.viewModel?.values??[]}castVisibleElements(t){return{...h,...t}}get zoomOptions(){return this.viewModel?.zoomOptions}set zoomOptions(t){this.viewModel&&(this.viewModel.zoomOptions=t)}renderContent(t,e,i){return this.slider.extraNodes=[t,this.renderHistogram(i)],p("div",{class:e},this.slider.render())}renderHistogram(t){return this.histogramConfig?p("div",{key:"histogram",class:t??void 0},this.histogram.render()):null}renderBackgroundFillDefinition(t){return p("pattern",{id:t,patternUnits:"userSpaceOnUse",x:"0",y:"0",width:"15",height:"15"},p("image",{x:"0",y:"0",width:"15",height:"15",href:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2Ij48cGF0aCBkPSJNMCAwIEw4IDAgTDggOCBMMCA4IFoiIGZpbGw9IiNjY2MiIC8+PHBhdGggZD0iTTAgMCBMOCAwIEw4IDggTDAgOCBaIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLDgpIiAvPjxwYXRoIGQ9Ik0wIDAgTDggMCBMOCA4IEwwIDggWiIgZmlsbD0iI2NjYyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOCw4KSIgLz48cGF0aCBkPSJNMCAwIEw4IDAgTDggOCBMMCA4IFoiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDgsMCkiIC8+PC9zdmc+"}))}renderRampFillDefinition(t,e){return p("linearGradient",{id:t,x1:"0",x2:"0",y1:"0",y2:"1"},this.renderRampFillStops(e))}renderRampFillStops(t){return t.reverse().map(((t,e)=>this.renderStop(t,e)))}renderStop(t,e){const{color:i,offset:o,opacity:n}=this.getPropsForStop(t);return p("stop",{key:`${e}-stop`,offset:o,"stop-color":i,"stop-opacity":n})}renderZoomCaps(){return[this.renderMaxZoomCap(),this.renderMinZoomCap()]}renderMinZoomCap(){if(this.zoomOptions&&null!=this.zoomOptions.min)return p("svg",{key:"bottom",class:this.classes(c.zoomCap,c.minZoomCap),viewBox:"0 0 30 11",xmlns:"http://www.w3.org/2000/svg",onpointerdown:this._onMinZoomCapPointerDown},p("polygon",{class:c.zoomCapMask,key:"mask",fill:"#1B8617",points:"0 11.3846154 30 11.3846154 30 1 25 5.38461538 20 1 15 5.38461538 10 1 5 5.38461538 0 1"}),p("polygon",{class:c.zoomCapUnderline,key:"underline",fill:"#69DCFF",points:"0 0 5 4.38461538 10 0 15 4.38461538 20 0 25 4.38461538 30 0 30 4.61538462 25 9 20 4.61538462 15 9 10 4.61538462 5 9 0 4.61538462"}),p("polygon",{class:c.zoomCapLine,key:"line",fill:"#DA5656",points:"0 1 5 5.38461538 10 1 15 5.38461538 20 1 25 5.38461538 30 1 30 5.61538462 25 10 20 5.61538462 15 10 10 5.61538462 5 10 0 5.61538462"}))}renderMaxZoomCap(){if(this.zoomOptions&&null!=this.zoomOptions.max)return p("svg",{key:"top",class:this.classes(c.zoomCap,c.maxZoomCap),viewBox:"0 0 30 11",xmlns:"http://www.w3.org/2000/svg",onpointerdown:this._onMaxZoomCapPointerDown},p("polygon",{class:c.zoomCapMask,key:"mask",points:"0 -1.81994377e-12 30 -1.81994377e-12 30 8.23076923 25 3.61538462 20 8.23076923 15 3.61538462 10 8.23076923 5 3.61538462 0 8.23076923"}),p("polygon",{class:c.zoomCapUnderline,key:"underline",points:"0 5.61538462 5 1 10 5.61538462 15 1 20 5.61538462 25 1 30 5.61538462 30 10.2307692 25 5.61538462 20 10.2307692 15 5.61538462 10 10.2307692 5 5.61538462 0 10.2307692"}),p("polygon",{class:c.zoomCapLine,key:"line",points:"0 4.61538462 5 -1.87329639e-12 10 4.61538462 15 -1.87329639e-12 20 4.61538462 25 -1.87329639e-12 30 4.61538462 30 9.23076923 25 4.61538462 20 9.23076923 15 4.61538462 10 9.23076923 5 4.61538462 0 9.23076923"}))}getPropsForStop(t){const{color:i,offset:o}=t;return{color:i instanceof e?i.toCss(!0):e.fromString(i).toCss(!0),offset:(100*o).toFixed(2)+"%",opacity:i instanceof e?i.toRgba()[3]:null}}getParamsFromHistogramConfig(t){if(!t)return null;const{average:e,barCreatedFunction:i,bins:o,dataLineCreatedFunction:n,dataLineUpdatedFunction:s}=t;return{average:e,barCreatedFunction:i,bins:o,dataLineCreatedFunction:n,dataLineUpdatedFunction:s,dataLines:this._getDataLines(t)}}_onMaxZoomCapPointerDown(){const{zoomOptions:t}=this;if(t&&null!=t.max){const{min:e}=t;this.zoomOptions=null!=e?{min:e}:null}}_onMinZoomCapPointerDown(){const{zoomOptions:t}=this;if(t&&null!=t.min){const{max:e}=t;this.zoomOptions=null!=e?{max:e}:null}}_getDataLines(t){const{average:e,standardDeviation:i,standardDeviationCount:o}=t,{max:n,min:s}=this.viewModel.getBounds();return[...this._getStandardDeviationDataLines(i,e,o||1),...t.dataLines||[]].filter((({value:t})=>t<=n&&t>=s))}_getStandardDeviationDataLines(t,e,i){const{max:o,min:n}=this.viewModel,s=.06*(o-n);return m(t,e,i).filter((t=>Math.abs(e-t)>s)).map(((t,i,o)=>{const n=this.labelFormatFunction?this.labelFormatFunction(t):t,s=o.length/2,a=i>=s?i-s+1:s-i;return{value:t,label:`${t>e?"+":"-"}${1===a?"":a}σ ${n}`}}))}};t([o()],u.prototype,"hasTimeData",null),t([o()],u.prototype,"histogram",void 0),t([o()],u.prototype,"histogramConfig",void 0),t([o()],u.prototype,"inputFormatFunction",null),t([o()],u.prototype,"inputParseFunction",null),t([o()],u.prototype,"labelFormatFunction",null),t([o()],u.prototype,"max",null),t([o()],u.prototype,"min",null),t([o()],u.prototype,"precision",null),t([o()],u.prototype,"slider",void 0),t([o({readOnly:!0})],u.prototype,"state",null),t([o()],u.prototype,"syncedSegmentsEnabled",null),t([o({readOnly:!0})],u.prototype,"values",null),t([o()],u.prototype,"viewModel",void 0),t([o()],u.prototype,"visibleElements",void 0),t([n("visibleElements")],u.prototype,"castVisibleElements",null),t([o()],u.prototype,"zoomOptions",null),u=t([s("esri.widgets.smartMapping.SmartMappingSliderBase")],u);export{u as SmartMappingSliderBase};
5
+ import{_ as t}from"../../chunks/tslib.es6.js";import e from"../../Color.js";import{watch as i}from"../../core/reactiveUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import{cast as n}from"../../core/accessorSupport/decorators/cast.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import a from"../Histogram.js";import r from"../Slider.js";import l from"../Widget.js";import{getDeviationValues as m}from"./support/utils.js";import"../support/widgetUtils.js";import{tsx as p}from"../support/jsxFactory.js";const d="zoom-cap",c={zoomCap:d,maxZoomCap:`${d}--max`,minZoomCap:`${d}--min`,zoomCapLine:`${d}--line`,zoomCapMask:`${d}--mask`,zoomCapUnderline:`${d}--underline`},h={interactiveTrack:!1};let u=class extends l{constructor(t,e){super(t,e),this.histogram=new a({layout:"vertical"}),this.histogramConfig=null,this.slider=new r({syncedSegmentsEnabled:!0,thumbsConstrained:!1,layout:"vertical",visibleElements:{labels:!0,rangeLabels:!0},labelInputsEnabled:!0,rangeLabelInputsEnabled:!0}),this.viewModel=null,this.visibleElements={...h};const o=this.slider;!t?.hasTimeData||t?.inputParseFunction||t?.inputFormatFunction||o.set({labelInputsEnabled:!1,rangeLabelInputsEnabled:!1}),o.draggableSegmentsEnabled=!!t?.visibleElements?.interactiveTrack,this.addHandles([o.on("max-change",(t=>this.emit("max-change",t))),o.on("max-click",(t=>this.emit("max-click",t))),o.on("min-change",(t=>this.emit("min-change",t))),o.on("min-click",(t=>this.emit("min-click",t))),o.on("segment-click",(t=>this.emit("segment-click",t))),o.on("segment-drag",(t=>this.emit("segment-drag",t))),o.on("thumb-change",(t=>this.emit("thumb-change",t))),o.on("thumb-click",(t=>this.emit("thumb-click",t))),o.on("thumb-drag",(t=>this.emit("thumb-drag",t))),o.on("track-click",(t=>this.emit("track-click",t))),i((()=>[this.histogramConfig,this.max,this.min,this.zoomOptions]),(()=>{const{histogram:t,histogramConfig:e,viewModel:{max:i,min:o}}=this,n=this.getParamsFromHistogramConfig(e);t.set({...n,max:i,min:o})})),i((()=>this.labelFormatFunction),(()=>{const{histogram:t,labelFormatFunction:e}=this;t.set({labelFormatFunction:e})})),i((()=>this.hasTimeData),(t=>{const{labelInputsEnabled:e,rangeLabelInputsEnabled:i}=this.slider,n=!t||this.inputFormatFunction&&this.inputParseFunction;o.set({labelInputsEnabled:e&&n,rangeLabelInputsEnabled:i&&n})})),i((()=>this.visibleElements?.interactiveTrack),(t=>{o.draggableSegmentsEnabled=!!t}))]),this._onMaxZoomCapPointerDown=this._onMaxZoomCapPointerDown.bind(this),this._onMinZoomCapPointerDown=this._onMinZoomCapPointerDown.bind(this)}initialize(){const{histogramConfig:t={},viewModel:e}=this,{labelFormatFunction:i,max:o,min:n}=e,s=this.getParamsFromHistogramConfig(t);this.histogram.set({labelFormatFunction:i,...s,max:o,min:n}),this.slider.set({viewModel:e})}get hasTimeData(){return this.viewModel?.hasTimeData??!1}set hasTimeData(t){this.viewModel&&(this.viewModel.hasTimeData=t)}get inputFormatFunction(){return this.viewModel?.inputFormatFunction}set inputFormatFunction(t){this.viewModel&&(this.viewModel.inputFormatFunction=t)}get inputParseFunction(){return this.viewModel?.inputParseFunction}set inputParseFunction(t){this.viewModel&&(this.viewModel.inputParseFunction=t)}get labelFormatFunction(){return this.viewModel?.labelFormatFunction}set labelFormatFunction(t){this.viewModel&&(this.viewModel.labelFormatFunction=t)}get max(){return this.viewModel?.getUnzoomedMax()??this._get("max")??null}set max(t){this.viewModel?this.viewModel.max=t:this._set("max",t)}get min(){return this.viewModel?.getUnzoomedMin()??this._get("min")??null}set min(t){this.viewModel?this.viewModel.min=t:this._set("min",t)}get precision(){return this.viewModel?.precision??4}set precision(t){this.viewModel&&(this.viewModel.precision=t)}get state(){return this.viewModel?.state??"disabled"}get syncedSegmentsEnabled(){return this.slider?.syncedSegmentsEnabled}set syncedSegmentsEnabled(t){this.slider&&(this.slider.syncedSegmentsEnabled=t)}get values(){return this.viewModel?.values??[]}castVisibleElements(t){return{...h,...t}}get zoomOptions(){return this.viewModel?.zoomOptions}set zoomOptions(t){this.viewModel&&(this.viewModel.zoomOptions=t)}renderContent(t,e,i){return this.slider.extraNodes=[t,this.renderHistogram(i)],p("div",{class:e},this.slider.render())}renderHistogram(t){return this.histogramConfig?p("div",{class:t??void 0,key:"histogram"},this.histogram.render()):null}renderBackgroundFillDefinition(t){return p("pattern",{height:"15",id:t,patternUnits:"userSpaceOnUse",width:"15",x:"0",y:"0"},p("image",{height:"15",href:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2Ij48cGF0aCBkPSJNMCAwIEw4IDAgTDggOCBMMCA4IFoiIGZpbGw9IiNjY2MiIC8+PHBhdGggZD0iTTAgMCBMOCAwIEw4IDggTDAgOCBaIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLDgpIiAvPjxwYXRoIGQ9Ik0wIDAgTDggMCBMOCA4IEwwIDggWiIgZmlsbD0iI2NjYyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOCw4KSIgLz48cGF0aCBkPSJNMCAwIEw4IDAgTDggOCBMMCA4IFoiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDgsMCkiIC8+PC9zdmc+",width:"15",x:"0",y:"0"}))}renderRampFillDefinition(t,e){return p("linearGradient",{id:t,x1:"0",x2:"0",y1:"0",y2:"1"},this.renderRampFillStops(e))}renderRampFillStops(t){return t.reverse().map(((t,e)=>this.renderStop(t,e)))}renderStop(t,e){const{color:i,offset:o,opacity:n}=this.getPropsForStop(t);return p("stop",{key:`${e}-stop`,offset:o,"stop-color":i,"stop-opacity":n})}renderZoomCaps(){return[this.renderMaxZoomCap(),this.renderMinZoomCap()]}renderMinZoomCap(){if(this.zoomOptions&&null!=this.zoomOptions.min)return p("svg",{class:this.classes(c.zoomCap,c.minZoomCap),key:"bottom",onpointerdown:this._onMinZoomCapPointerDown,viewBox:"0 0 30 11",xmlns:"http://www.w3.org/2000/svg"},p("polygon",{class:c.zoomCapMask,fill:"#1B8617",key:"mask",points:"0 11.3846154 30 11.3846154 30 1 25 5.38461538 20 1 15 5.38461538 10 1 5 5.38461538 0 1"}),p("polygon",{class:c.zoomCapUnderline,fill:"#69DCFF",key:"underline",points:"0 0 5 4.38461538 10 0 15 4.38461538 20 0 25 4.38461538 30 0 30 4.61538462 25 9 20 4.61538462 15 9 10 4.61538462 5 9 0 4.61538462"}),p("polygon",{class:c.zoomCapLine,fill:"#DA5656",key:"line",points:"0 1 5 5.38461538 10 1 15 5.38461538 20 1 25 5.38461538 30 1 30 5.61538462 25 10 20 5.61538462 15 10 10 5.61538462 5 10 0 5.61538462"}))}renderMaxZoomCap(){if(this.zoomOptions&&null!=this.zoomOptions.max)return p("svg",{class:this.classes(c.zoomCap,c.maxZoomCap),key:"top",onpointerdown:this._onMaxZoomCapPointerDown,viewBox:"0 0 30 11",xmlns:"http://www.w3.org/2000/svg"},p("polygon",{class:c.zoomCapMask,key:"mask",points:"0 -1.81994377e-12 30 -1.81994377e-12 30 8.23076923 25 3.61538462 20 8.23076923 15 3.61538462 10 8.23076923 5 3.61538462 0 8.23076923"}),p("polygon",{class:c.zoomCapUnderline,key:"underline",points:"0 5.61538462 5 1 10 5.61538462 15 1 20 5.61538462 25 1 30 5.61538462 30 10.2307692 25 5.61538462 20 10.2307692 15 5.61538462 10 10.2307692 5 5.61538462 0 10.2307692"}),p("polygon",{class:c.zoomCapLine,key:"line",points:"0 4.61538462 5 -1.87329639e-12 10 4.61538462 15 -1.87329639e-12 20 4.61538462 25 -1.87329639e-12 30 4.61538462 30 9.23076923 25 4.61538462 20 9.23076923 15 4.61538462 10 9.23076923 5 4.61538462 0 9.23076923"}))}getPropsForStop(t){const{color:i,offset:o}=t;return{color:i instanceof e?i.toCss(!0):e.fromString(i).toCss(!0),offset:(100*o).toFixed(2)+"%",opacity:i instanceof e?i.toRgba()[3]:null}}getParamsFromHistogramConfig(t){if(!t)return null;const{average:e,barCreatedFunction:i,bins:o,dataLineCreatedFunction:n,dataLineUpdatedFunction:s}=t;return{average:e,barCreatedFunction:i,bins:o,dataLineCreatedFunction:n,dataLineUpdatedFunction:s,dataLines:this._getDataLines(t)}}_onMaxZoomCapPointerDown(){const{zoomOptions:t}=this;if(t&&null!=t.max){const{min:e}=t;this.zoomOptions=null!=e?{min:e}:null}}_onMinZoomCapPointerDown(){const{zoomOptions:t}=this;if(t&&null!=t.min){const{max:e}=t;this.zoomOptions=null!=e?{max:e}:null}}_getDataLines(t){const{average:e,standardDeviation:i,standardDeviationCount:o}=t,{max:n,min:s}=this.viewModel.getBounds();return[...this._getStandardDeviationDataLines(i,e,o||1),...t.dataLines||[]].filter((({value:t})=>t<=n&&t>=s))}_getStandardDeviationDataLines(t,e,i){const{max:o,min:n}=this.viewModel,s=.06*(o-n);return m(t,e,i).filter((t=>Math.abs(e-t)>s)).map(((t,i,o)=>{const n=this.labelFormatFunction?this.labelFormatFunction(t):t,s=o.length/2,a=i>=s?i-s+1:s-i;return{value:t,label:`${t>e?"+":"-"}${1===a?"":a}σ ${n}`}}))}};t([o()],u.prototype,"hasTimeData",null),t([o()],u.prototype,"histogram",void 0),t([o()],u.prototype,"histogramConfig",void 0),t([o()],u.prototype,"inputFormatFunction",null),t([o()],u.prototype,"inputParseFunction",null),t([o()],u.prototype,"labelFormatFunction",null),t([o()],u.prototype,"max",null),t([o()],u.prototype,"min",null),t([o()],u.prototype,"precision",null),t([o()],u.prototype,"slider",void 0),t([o({readOnly:!0})],u.prototype,"state",null),t([o()],u.prototype,"syncedSegmentsEnabled",null),t([o({readOnly:!0})],u.prototype,"values",null),t([o()],u.prototype,"viewModel",void 0),t([o()],u.prototype,"visibleElements",void 0),t([n("visibleElements")],u.prototype,"castVisibleElements",null),t([o()],u.prototype,"zoomOptions",null),u=t([s("esri.widgets.smartMapping.SmartMappingSliderBase")],u);export{u as SmartMappingSliderBase};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import o from"../../Color.js";import{createTask as t}from"../../core/asyncUtils.js";import{makeHandle as r}from"../../core/handleUtils.js";import{destroyMaybe as s}from"../../core/maybe.js";import{throwIfAborted as i}from"../../core/promiseUtils.js";import{watch as n,syncAndInitial as a}from"../../core/reactiveUtils.js";import{property as c}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import p from"../Widget.js";import{loadCalciteComponents as u}from"./componentsUtils.js";import h from"./Popover.js";import"./widgetUtils.js";import{messageBundle as d}from"./decorators/messageBundle.js";import{tsx as m}from"./jsxFactory.js";const _="esri-color-picker",v={base:_,backgroundPattern:`${_}__bg-pattern`,toggleButton:`${_}__toggle-button`,popover:`${_}__popover`,opacitySliderContainer:`${_}__opacity-slider-container`,opacitySlider:`${_}__opacity-slider`,calciteColorPicker:`${_}__calcite-color-picker`};var C;!function(e){e.ColorPickerFocus="hex-input-poll-timeout",e.ButtonFocusTimeout="button-focus-timeout"}(C||(C={}));let P=class extends p{constructor(e,t){super(e,t),this.value=new o,this.alphaEnabled=!0,this._containerElement=null,this._popover=null,this._popoverElement=null,this._buttonElement=null,this._colorPickerCreated=!1}initialize(){this.addHandles(n((()=>({container:this._containerElement,value:this.value})),(({container:e,value:o})=>{e?.style.setProperty("--esri-color-picker-value",o.toCss(!0))}),a))}loadDependencies(){return u({button:()=>import("@esri/calcite-components/dist/components/calcite-button.js"),"color-picker":()=>import("@esri/calcite-components/dist/components/calcite-color-picker.js"),label:()=>import("@esri/calcite-components/dist/components/calcite-label.js"),slider:()=>import("@esri/calcite-components/dist/components/calcite-slider.js")})}destroy(){this._destroyPopover(),this._buttonElement=null}render(){const e=this._messages,o=null!=this._popover&&this._popover.open?e.close:e.open;return m("div",{class:this.classes(v.base,this.class),bind:this,afterCreate:this._onContainerAfterCreate},m("div",{class:v.backgroundPattern}),m("calcite-button",{appearance:"transparent",label:o,class:v.toggleButton,kind:"neutral",id:this.id,scale:"s",tabIndex:-1,title:o,bind:this,onclick:this._togglePopover,afterCreate:this._onButtonAfterCreate}))}_onContainerAfterCreate(e){this._containerElement=e}_onButtonAfterCreate(e){this._destroyPopover(),this._buttonElement=e,this._popover=new h({owner:this,anchorElement:e,placement:"bottom-start",renderContentFunction:this._renderPopoverContent})}_destroyPopover(){this.removeHandles(C.ColorPickerFocus),this._popover=s(this._popover),this._popoverElement=null}_renderPopoverContent(){const e=this.value,o=this._messages;return m("div",{class:v.popover,tabIndex:-1,bind:this,afterCreate:this._onPopoverAfterCreate,onfocusout:this._onPopoverFocusOut,onkeydown:this._onPopoverKeyDown},m("calcite-color-picker",{class:v.calciteColorPicker,hideSaved:!0,hideChannels:!0,scale:"m",value:this._colorPickerCreated?e.toCss():null,bind:this,onCalciteColorPickerInput:this._onColorInput,afterCreate:this._onColorPickerAfterCreate,afterRemoved:()=>this._colorPickerCreated=!1}),this.alphaEnabled&&m("section",{class:v.opacitySliderContainer},m("calcite-label",{scale:"s"},o.opacity,m("calcite-slider",{class:v.opacitySlider,labelHandles:!0,min:0,max:1,step:.01,value:e.a,bind:this,onCalciteSliderInput:this._onOpacityChange}))))}_onColorInput(e){const t=e.target.value,r="string"==typeof t?new o(t):new o;r.a=this.value.a,this._onChange(r)}_onOpacityChange(e){const o=this.value.clone();o.a=e.target.value,this._onChange(o)}_onChange(e){this.value=e,null!=this.onChange&&this.onChange(e)}_onColorPickerAfterCreate(e){this.removeHandles(C.ColorPickerFocus);const o=t((async o=>{e.componentOnReady&&await e.componentOnReady(),i(o),this._colorPickerCreated=!0,await new Promise((e=>requestAnimationFrame(e))),i(o),e.setFocus()}));this.addHandles(r((()=>{o.abort(),this._colorPickerCreated=!1})),C.ColorPickerFocus)}_togglePopover(e){null!=this._popover&&this._popover.open?this._closePopover():this._openPopover()}_openPopover(){const e=this._popover;e&&(e.open=!0)}_closePopover(){this.removeHandles(C.ColorPickerFocus);const e=this._popover;e&&(e.open=!1),this._setFocusOnButton()}_setFocusOnButton(){this.removeHandles(C.ButtonFocusTimeout),this.addHandles(b((()=>this._buttonElement?.setFocus())),C.ButtonFocusTimeout)}_onPopoverAfterCreate(e){this._popoverElement=e}_onPopoverFocusOut(e){const o=this._popoverElement;if(null==o)return;const t=e.relatedTarget;if(t&&t instanceof Node){if(o.contains(t))return;if(t===this._buttonElement||this._isAssociatedLabel(t))return}this._closePopover()}_isAssociatedLabel(e){const o=this.id,t=e.tagName?.toLowerCase();return"calcite-label"===t&&e.for===o||"label"===t&&e.htmlFor===o}_onPopoverKeyDown(e){"Escape"!==e.key&&"Enter"!==e.key||(e.stopPropagation(),this._closePopover())}};function b(e,o){const t=setTimeout(e,o);return r((()=>clearTimeout(t)))}e([c()],P.prototype,"class",void 0),e([c()],P.prototype,"value",void 0),e([c()],P.prototype,"alphaEnabled",void 0),e([c()],P.prototype,"onChange",void 0),e([c()],P.prototype,"_containerElement",void 0),e([c()],P.prototype,"_popover",void 0),e([c()],P.prototype,"_popoverElement",void 0),e([c()],P.prototype,"_buttonElement",void 0),e([c(),d("esri/widgets/support/t9n/ColorPicker")],P.prototype,"_messages",void 0),e([c()],P.prototype,"_colorPickerCreated",void 0),P=e([l("esri.widgets.support.ColorPicker")],P);export{P as ColorPicker};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import o from"../../Color.js";import{createTask as t}from"../../core/asyncUtils.js";import{makeHandle as r}from"../../core/handleUtils.js";import{destroyMaybe as s}from"../../core/maybe.js";import{throwIfAborted as i}from"../../core/promiseUtils.js";import{watch as n,syncAndInitial as a}from"../../core/reactiveUtils.js";import{property as c}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import p from"../Widget.js";import{loadCalciteComponents as u}from"./componentsUtils.js";import h from"./Popover.js";import"./widgetUtils.js";import{messageBundle as d}from"./decorators/messageBundle.js";import{tsx as m}from"./jsxFactory.js";const _="esri-color-picker",v={base:_,backgroundPattern:`${_}__bg-pattern`,toggleButton:`${_}__toggle-button`,popover:`${_}__popover`,opacitySliderContainer:`${_}__opacity-slider-container`,opacitySlider:`${_}__opacity-slider`,calciteColorPicker:`${_}__calcite-color-picker`};var C;!function(e){e.ColorPickerFocus="hex-input-poll-timeout",e.ButtonFocusTimeout="button-focus-timeout"}(C||(C={}));let P=class extends p{constructor(e,t){super(e,t),this.value=new o,this.alphaEnabled=!0,this._containerElement=null,this._popover=null,this._popoverElement=null,this._buttonElement=null,this._colorPickerCreated=!1}initialize(){this.addHandles(n((()=>({container:this._containerElement,value:this.value})),(({container:e,value:o})=>{e?.style.setProperty("--esri-color-picker-value",o.toCss(!0))}),a))}loadDependencies(){return u({button:()=>import("@esri/calcite-components/dist/components/calcite-button.js"),"color-picker":()=>import("@esri/calcite-components/dist/components/calcite-color-picker.js"),label:()=>import("@esri/calcite-components/dist/components/calcite-label.js"),slider:()=>import("@esri/calcite-components/dist/components/calcite-slider.js")})}destroy(){this._destroyPopover(),this._buttonElement=null}render(){const e=this._messages,o=null!=this._popover&&this._popover.open?e.close:e.open;return m("div",{afterCreate:this._onContainerAfterCreate,bind:this,class:this.classes(v.base,this.class)},m("div",{class:v.backgroundPattern}),m("calcite-button",{afterCreate:this._onButtonAfterCreate,appearance:"transparent",bind:this,class:v.toggleButton,id:this.id,kind:"neutral",label:o,onclick:this._togglePopover,scale:"s",tabIndex:-1,title:o}))}_onContainerAfterCreate(e){this._containerElement=e}_onButtonAfterCreate(e){this._destroyPopover(),this._buttonElement=e,this._popover=new h({owner:this,anchorElement:e,placement:"bottom-start",renderContentFunction:this._renderPopoverContent})}_destroyPopover(){this.removeHandles(C.ColorPickerFocus),this._popover=s(this._popover),this._popoverElement=null}_renderPopoverContent(){const e=this.value,o=this._messages;return m("div",{afterCreate:this._onPopoverAfterCreate,bind:this,class:v.popover,onfocusout:this._onPopoverFocusOut,onkeydown:this._onPopoverKeyDown,tabIndex:-1},m("calcite-color-picker",{afterCreate:this._onColorPickerAfterCreate,afterRemoved:()=>this._colorPickerCreated=!1,bind:this,class:v.calciteColorPicker,hideChannels:!0,hideSaved:!0,scale:"m",value:this._colorPickerCreated?e.toCss():null,onCalciteColorPickerInput:this._onColorInput}),this.alphaEnabled?m("section",{class:v.opacitySliderContainer},m("calcite-label",{scale:"s"},o.opacity,m("calcite-slider",{bind:this,class:v.opacitySlider,labelHandles:!0,max:1,min:0,step:.01,value:e.a,onCalciteSliderInput:this._onOpacityChange}))):null)}_onColorInput(e){const t=e.target.value,r="string"==typeof t?new o(t):new o;r.a=this.value.a,this._onChange(r)}_onOpacityChange(e){const o=this.value.clone();o.a=e.target.value,this._onChange(o)}_onChange(e){this.value=e,null!=this.onChange&&this.onChange(e)}_onColorPickerAfterCreate(e){this.removeHandles(C.ColorPickerFocus);const o=t((async o=>{e.componentOnReady&&await e.componentOnReady(),i(o),this._colorPickerCreated=!0,await new Promise((e=>requestAnimationFrame(e))),i(o),e.setFocus()}));this.addHandles(r((()=>{o.abort(),this._colorPickerCreated=!1})),C.ColorPickerFocus)}_togglePopover(e){null!=this._popover&&this._popover.open?this._closePopover():this._openPopover()}_openPopover(){const e=this._popover;e&&(e.open=!0)}_closePopover(){this.removeHandles(C.ColorPickerFocus);const e=this._popover;e&&(e.open=!1),this._setFocusOnButton()}_setFocusOnButton(){this.removeHandles(C.ButtonFocusTimeout),this.addHandles(b((()=>this._buttonElement?.setFocus())),C.ButtonFocusTimeout)}_onPopoverAfterCreate(e){this._popoverElement=e}_onPopoverFocusOut(e){const o=this._popoverElement;if(null==o)return;const t=e.relatedTarget;if(t&&t instanceof Node){if(o.contains(t))return;if(t===this._buttonElement||this._isAssociatedLabel(t))return}this._closePopover()}_isAssociatedLabel(e){const o=this.id,t=e.tagName?.toLowerCase();return"calcite-label"===t&&e.for===o||"label"===t&&e.htmlFor===o}_onPopoverKeyDown(e){"Escape"!==e.key&&"Enter"!==e.key||(e.stopPropagation(),this._closePopover())}};function b(e,o){const t=setTimeout(e,o);return r((()=>clearTimeout(t)))}e([c()],P.prototype,"class",void 0),e([c()],P.prototype,"value",void 0),e([c()],P.prototype,"alphaEnabled",void 0),e([c()],P.prototype,"onChange",void 0),e([c()],P.prototype,"_containerElement",void 0),e([c()],P.prototype,"_popover",void 0),e([c()],P.prototype,"_popoverElement",void 0),e([c()],P.prototype,"_buttonElement",void 0),e([c(),d("esri/widgets/support/t9n/ColorPicker")],P.prototype,"_messages",void 0),e([c()],P.prototype,"_colorPickerCreated",void 0),P=e([l("esri.widgets.support.ColorPicker")],P);export{P as ColorPicker};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import"../../intl.js";import{eventKey as t}from"../../core/events.js";import a from"../../core/Logger.js";import{watch as i,sync as s}from"../../core/reactiveUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as r}from"../../core/accessorSupport/decorators/subclass.js";import n from"../Widget.js";import{parseDateIntoParts as d,getFirstDayOfWeek as l,getLocaleDayOfWeek as h}from"./datePickerUtils.js";import c from"./DatePickerViewModel.js";import{globalCss as u}from"./globalCss.js";import{legacyIcon as _}from"./legacyIcon.js";import p from"./Popover.js";import{accessibleHandler as y}from"./decorators/accessibleHandler.js";import{messageBundle as v}from"./decorators/messageBundle.js";import{tsx as m}from"./jsxFactory.js";import{storeNode as g,isActivationKey as D,isRTL as k}from"./widgetUtils.js";import{DateTime as w,Info as f,Interval as b}from"luxon";import{formatDate as P}from"../../intl/date.js";import{getLocale as M}from"../../intl/locale.js";const O="esri-date-picker",x={base:O,datePicker:`${O}__calendar`,monthPicker:`${O}__month-picker`,dayPicker:`${O}__day-picker`,week:`${O}__week-item`,nearbyMonth:`${O}__day-item--nearby-month`,activeDay:`${O}__day-item--active`,today:`${O}__day-item--today`,selectedDay:`${O}__day-item--selected`,day:`${O}__day-item`,dayHeader:`${O}__day-item--header`,yearPicker:`${O}__year-picker`,selectedYear:`${O}__year-picker-item--selected`,year:`${O}__year-picker-item`,monthDropdown:`${O}__month-dropdown`,date:`${O}__date`,datePickerToggle:`${O}__calendar-toggle`,dateInput:`${O}__input`,dateTextInput:`${O}__text-input`,leadingIcon:`${O}__icon--leading`},I={year:"numeric",month:"2-digit",day:"2-digit"},$=[" ","ArrowDown","ArrowLeft","ArrowRight","ArrowUp","End","Enter","Home","PageDown","PageUp"];let C=class extends n{constructor(e,t){super(e,t),this._calendarNode=null,this._inputOrButtonNode=null,this._rootNode=null,this._requestDayPickerFocusOnCreate=!1,this._activeDate=null,this._calendarPopover=new p({owner:this,placement:"bottom-start",anchorElement:()=>this._rootNode,renderContentFunction:this._renderCalendar}),this._isOpen=!1,this.dateInputEnabled=!1,this.messages=null,this.commitOnMonthChange=!1,this.viewModel=new c,this.disabled=!1,this.toggle=this.toggle.bind(this)}initialize(){this.addHandles(i((()=>({viewModel:this.viewModel,value:this.viewModel?.value})),(({viewModel:e,value:t})=>{!this.destroyed&&e&&null!=this.onChange&&this.onChange(t)}),s))}destroy(){this._calendarPopover.destroy()}get value(){return this.viewModel.value}set value(e){this.viewModel.value=e}get isOpen(){return this._isOpen}render(){return m("div",{afterCreate:g,bind:this,class:this.classes(x.base,u.widget),"data-node-ref":"_rootNode"},this.dateInputEnabled?this._renderInputAndButtonMode():this._renderButtonOnlyMode())}toggle(){this._isOpen?this.close():this.open()}open(e=!0){this._activeDate=w.fromJSDate(this.viewModel.value),this._isOpen=!0,this._calendarPopover.open=!0,this._requestDayPickerFocusOnCreate=e}close(e=!0){this._activeDate=null,this._isOpen=!1,this._calendarPopover.open=!1,e&&this._inputOrButtonNode?.focus()}_renderButtonOnlyMode(){const e=P(this.viewModel.value,I),{disabled:t,_isOpen:a,messages:i}=this;return m("div",{key:`date-button-${t}`,afterCreate:g,"aria-controls":a?this._getCalendarId():null,"aria-expanded":a.toString(),"aria-haspopup":"true","aria-label":i.setDate,"aria-pressed":a.toString(),bind:this,class:this.classes(u.widgetButton,u.select,x.datePickerToggle),"data-node-ref":"_inputOrButtonNode",onclick:this.toggle,onkeydown:this._handleDateButtonKeyDown,role:"button",tabIndex:t?void 0:0},m("span",{class:x.date},e))}_renderInputAndButtonMode(){const e=P(this.viewModel.value,I),{_isOpen:t,messages:a}=this;return m("div",{class:this.classes(x.dateInput)},m("input",{afterCreate:g,"data-node-ref":"_inputOrButtonNode","aria-controls":t?this._getCalendarId():null,"aria-haspopup":"true","aria-label":a.setDate,bind:this,class:this.classes(x.dateTextInput,u.input),key:"date-input",onblur:this._handleDateInputBlur,onclick:this._handleDateInputClick,onkeydown:this._handleDateInputKeyDown,type:"text",value:e}),m("span",{"aria-hidden":"true",class:this.classes(x.leadingIcon,_.calendar)}))}_handleDateInputClick(){this.open(!1)}_handleDateInputKeyDown(e){const{key:t}=e;this._isOpen?"Enter"===t?this._handleDateText(e):"Escape"===t&&this.close():"ArrowDown"===t&&(this.open(),e.preventDefault())}_handleDateButtonKeyDown(e){const{key:t,shiftKey:a}=e;this._isOpen&&"Tab"===t&&a?this.close():D(t)&&this.toggle()}_handleDateInputBlur(e){this._isOpen||this._handleDateText(e)}_handleDateText(e){const t=e.currentTarget;let i;try{i=d(t.value,I)}catch(o){return a.getLogger(this).warn(o),void(t.value=P(this.viewModel.value,I))}const s=w.fromObject(i);s.isValid?(this.viewModel.value=s.toJSDate(),this._activeDate=s):t.value=P(this.viewModel.value,I)}_handleDatePickerKeydown(e){"Escape"===t(e)&&(this.close(),e.preventDefault(),e.stopPropagation())}_renderCalendar(){const e=this._activeDate;if(!e)return null;const t=w.fromJSDate(this.viewModel.value);return m("div",{afterCreate:g,bind:this,class:this.classes(x.datePicker,u.widget),"data-node-ref":"_calendarNode",id:this._getCalendarId(),key:"esri-date-picker__calendar",tabIndex:-1,onfocusout:this._onCalendarFocusOut,onkeydown:this._handleDatePickerKeydown},this._renderMonthPicker(e),this._renderDayPicker(e,t),this._renderYearPicker(e))}_getCalendarId(){return`date-picker__calendar--${this.id}`}_onCalendarFocusOut(e){const t=e.relatedTarget;t&&t instanceof Node&&(this._calendarNode?.contains(t)||this._rootNode?.contains(t))||this.close(!1)}_renderMonthPicker(e){const t=k(this.container),a=t?_.right:_.left,i=t?_.left:_.right,s=f.months("long",{locale:M()}).map(((t,a)=>{const i=e.month-1===a;return m("option",{selected:i,value:a.toString()},t)})),{disabled:o,messages:r}=this;return m("div",{class:x.monthPicker},m("div",{key:`previous-month-${o}`,"aria-label":r.goToPreviousMonth,bind:this,class:u.button,onclick:this._setPreviousMonth,onkeydown:this._handlePreviousMonthKeyDown,role:"button",tabIndex:o?void 0:0,title:r.goToPreviousMonth},m("span",{"aria-hidden":"true",class:a})),m("select",{"aria-live":"assertive","aria-label":r.selectMonth,bind:this,class:this.classes(x.monthDropdown,u.select),disabled:o,id:`${this.id}__month-picker`,onchange:this._setMonth,onkeydown:this._setMonth,title:r.selectMonth},s),m("div",{key:`next-month-${o}`,"aria-label":r.goToNextMonth,bind:this,class:u.button,onclick:this._setNextMonth,onkeydown:this._setNextMonth,role:"button",tabIndex:o?void 0:0,title:r.goToNextMonth},m("span",{"aria-hidden":"true",class:i})))}_renderDayPicker(e,t){const a=this._getWeekLabels(),i=this._getDayId(e),s=this._renderMonth(e,t),{id:o,disabled:r}=this;return m("div",{key:`day-picker-${r}`,afterCreate:this._handleDayPickerCreate,"aria-activedescendant":i,"aria-labelledby":`${o}__month-picker ${o}__selected-year`,bind:this,class:x.dayPicker,id:`${o}__day-picker`,onkeydown:this._handleDayPickerKeydown,role:"grid",tabIndex:r?void 0:0},m("div",{class:x.week,role:"row"},a.map((e=>m("div",{"aria-label":e.name,class:this.classes(x.day,x.dayHeader),role:"columnheader",title:e.name},e.abbr)))),s)}_getDayId(e){return`${this.id}__${P(e.valueOf(),I)}`}_handleDayPickerCreate(e){this._requestDayPickerFocusOnCreate&&(this._requestDayPickerFocusOnCreate=!1,e.focus())}_getWeekLabels(){const e=[],t={weekday:"long"},a={weekday:"narrow"};let i=w.now().set({weekday:l(M())});for(let s=0;s<7;s++)e.push({name:P(i.valueOf(),t),abbr:P(i.valueOf(),a)}),i=i.plus({day:1});return e}_handleDayPickerKeydown(e){const{ctrlKey:a,shiftKey:i}=e,s=t(e);if(!$.includes(s))return;let o=this._activeDate;if(o){if("ArrowLeft"===s)o=o.minus({day:1});else if("ArrowRight"===s)o=o.plus({day:1});else if("ArrowUp"===s)o=o.minus({week:1});else if("ArrowDown"===s)o=o.plus({week:1});else if("PageUp"===s){const e=i?"year":"month";o=o.minus({[e]:1})}else if("PageDown"===s){const e=i?"year":"month";o=o.plus({[e]:1})}else if("Home"===s){const e=a?"year":"month";o=o.startOf(e)}else if("End"===s){const e=a?"year":"month";o=o.endOf(e)}else D(s)&&(this.viewModel.value=o.toJSDate(),this.close());this._activeDate=o,e.preventDefault(),e.stopPropagation()}}_renderMonth(e,t){const a=w.now(),i=e.startOf("month"),s=e.endOf("month"),o=6,r=7;let n=i.minus({day:h(M(),i.weekday)});const d=[];for(let l=0;l<o;l++){const o=[];for(let d=0;d<r;d++){const r=n.day,d=n.hasSame(e,"day"),l=n.hasSame(t,"day"),h=this._getDayId(n),c=b.fromDateTimes(i,s),u={[x.nearbyMonth]:!c.contains(n),[x.today]:n.hasSame(a,"day"),[x.activeDay]:d,[x.selectedDay]:l};o.push(m("div",{"aria-label":r.toString(),"aria-selected":d.toString(),bind:this,class:this.classes(x.day,u),"data-iso-date":n.toISO(),id:h,onclick:this._handleSelectedDate,onkeydown:this._handleSelectedDate,role:"gridcell"},r)),n=n.plus({day:1})}d.push(m("div",{class:x.week,role:"row"},o))}return d}_renderYearPicker(e){const t={year:"numeric"},a=e,i=P(a.valueOf(),t),s=P(a.plus({year:1}).valueOf(),t),o=P(a.minus({year:1}).valueOf(),t),{disabled:r,messages:n}=this;return m("div",{class:x.yearPicker},m("div",{key:`previous-year-${r}`,"aria-label":n.goToPreviousYear,bind:this,class:x.year,onclick:this._setPreviousYear,onkeydown:this._setPreviousYear,tabIndex:r?void 0:0,title:n.goToPreviousYear},o),m("div",{class:this.classes(x.year,x.selectedYear),id:`${this.id}__selected-year`},i),m("div",{key:`next-year-${r}`,"aria-label":n.goToNextYear,bind:this,class:x.year,onclick:this._setNextYear,onkeydown:this._handleNextYearKeyDown,tabIndex:r?void 0:0,title:n.goToNextYear},s))}_setMonth(e){const t=e.target,a=Number(t.value)+1;this._activeDate&&(this._activeDate=this._activeDate.set({month:a}),this.commitOnMonthChange&&(this.viewModel.value=this._activeDate.toJSDate()))}_setPreviousMonth(){this._activeDate&&(this._activeDate=this._activeDate.minus({month:1}),this.commitOnMonthChange&&(this.viewModel.value=this._activeDate.toJSDate()))}_handlePreviousMonthKeyDown(e){if("Tab"===e.key&&e.shiftKey)return e.preventDefault(),void this.close();D(e.key)&&this._setPreviousMonth()}_setNextMonth(){this._activeDate&&(this._activeDate=this._activeDate.plus({month:1}),this.commitOnMonthChange&&(this.viewModel.value=this._activeDate.toJSDate()))}_setPreviousYear(){this._activeDate=this._activeDate?.minus({year:1})??null}_setNextYear(){this._activeDate=this._activeDate?.plus({year:1})??null}_handleNextYearKeyDown(e){if("Tab"===e.key&&!e.shiftKey)return e.preventDefault(),void this.close();D(e.key)&&this._setNextYear()}_handleSelectedDate(e){const t=e.target;this.viewModel.value=w.fromISO(t.getAttribute("data-iso-date")).toJSDate(),this.close()}};e([o()],C.prototype,"_activeDate",void 0),e([o()],C.prototype,"_calendarPopover",void 0),e([o()],C.prototype,"_isOpen",void 0),e([o()],C.prototype,"dateInputEnabled",void 0),e([o(),v("esri/widgets/support/t9n/DatePicker")],C.prototype,"messages",void 0),e([o()],C.prototype,"value",null),e([o()],C.prototype,"commitOnMonthChange",void 0),e([o({type:c})],C.prototype,"viewModel",void 0),e([o()],C.prototype,"onChange",void 0),e([o()],C.prototype,"disabled",void 0),e([o()],C.prototype,"isOpen",null),e([y()],C.prototype,"_setNextMonth",null),e([y()],C.prototype,"_setPreviousYear",null),e([y()],C.prototype,"_handleSelectedDate",null),C=e([r("esri.widgets.support.DatePicker")],C);const N=C;export{N as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import"../../intl.js";import{eventKey as t}from"../../core/events.js";import a from"../../core/Logger.js";import{watch as i,sync as s}from"../../core/reactiveUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as r}from"../../core/accessorSupport/decorators/subclass.js";import n from"../Widget.js";import{parseDateIntoParts as d,getFirstDayOfWeek as l,getLocaleDayOfWeek as h}from"./datePickerUtils.js";import c from"./DatePickerViewModel.js";import{globalCss as u}from"./globalCss.js";import{legacyIcon as _}from"./legacyIcon.js";import p from"./Popover.js";import{accessibleHandler as y}from"./decorators/accessibleHandler.js";import{messageBundle as v}from"./decorators/messageBundle.js";import{tsx as m}from"./jsxFactory.js";import{storeNode as g,isActivationKey as D,isRTL as k}from"./widgetUtils.js";import{DateTime as w,Info as f,Interval as b}from"luxon";import{formatDate as P}from"../../intl/date.js";import{getLocale as M}from"../../intl/locale.js";const O="esri-date-picker",x={base:O,datePicker:`${O}__calendar`,monthPicker:`${O}__month-picker`,dayPicker:`${O}__day-picker`,week:`${O}__week-item`,nearbyMonth:`${O}__day-item--nearby-month`,activeDay:`${O}__day-item--active`,today:`${O}__day-item--today`,selectedDay:`${O}__day-item--selected`,day:`${O}__day-item`,dayHeader:`${O}__day-item--header`,yearPicker:`${O}__year-picker`,selectedYear:`${O}__year-picker-item--selected`,year:`${O}__year-picker-item`,monthDropdown:`${O}__month-dropdown`,date:`${O}__date`,datePickerToggle:`${O}__calendar-toggle`,dateInput:`${O}__input`,dateTextInput:`${O}__text-input`,leadingIcon:`${O}__icon--leading`},I={year:"numeric",month:"2-digit",day:"2-digit"},$=[" ","ArrowDown","ArrowLeft","ArrowRight","ArrowUp","End","Enter","Home","PageDown","PageUp"];let C=class extends n{constructor(e,t){super(e,t),this._calendarNode=null,this._inputOrButtonNode=null,this._rootNode=null,this._requestDayPickerFocusOnCreate=!1,this._activeDate=null,this._calendarPopover=new p({owner:this,placement:"bottom-start",anchorElement:()=>this._rootNode,renderContentFunction:this._renderCalendar}),this._isOpen=!1,this.dateInputEnabled=!1,this.messages=null,this.commitOnMonthChange=!1,this.viewModel=new c,this.disabled=!1,this.toggle=this.toggle.bind(this)}initialize(){this.addHandles(i((()=>({viewModel:this.viewModel,value:this.viewModel?.value})),(({viewModel:e,value:t})=>{!this.destroyed&&e&&null!=this.onChange&&this.onChange(t)}),s))}destroy(){this._calendarPopover.destroy()}get value(){return this.viewModel.value}set value(e){this.viewModel.value=e}get isOpen(){return this._isOpen}render(){return m("div",{afterCreate:g,bind:this,class:this.classes(x.base,u.widget),"data-node-ref":"_rootNode"},this.dateInputEnabled?this._renderInputAndButtonMode():this._renderButtonOnlyMode())}toggle(){this._isOpen?this.close():this.open()}open(e=!0){this._activeDate=w.fromJSDate(this.viewModel.value),this._isOpen=!0,this._calendarPopover.open=!0,this._requestDayPickerFocusOnCreate=e}close(e=!0){this._activeDate=null,this._isOpen=!1,this._calendarPopover.open=!1,e&&this._inputOrButtonNode?.focus()}_renderButtonOnlyMode(){const e=P(this.viewModel.value,I),{disabled:t,_isOpen:a,messages:i}=this;return m("div",{afterCreate:g,"aria-controls":a?this._getCalendarId():null,"aria-expanded":a.toString(),"aria-haspopup":"true","aria-label":i.setDate,"aria-pressed":a.toString(),bind:this,class:this.classes(u.widgetButton,u.select,x.datePickerToggle),"data-node-ref":"_inputOrButtonNode",key:`date-button-${t}`,onclick:this.toggle,onkeydown:this._handleDateButtonKeyDown,role:"button",tabIndex:t?void 0:0},m("span",{class:x.date},e))}_renderInputAndButtonMode(){const e=P(this.viewModel.value,I),{_isOpen:t,messages:a}=this;return m("div",{class:this.classes(x.dateInput)},m("input",{afterCreate:g,"aria-controls":t?this._getCalendarId():null,"aria-haspopup":"true","aria-label":a.setDate,bind:this,class:this.classes(x.dateTextInput,u.input),"data-node-ref":"_inputOrButtonNode",key:"date-input",onblur:this._handleDateInputBlur,onclick:this._handleDateInputClick,onkeydown:this._handleDateInputKeyDown,type:"text",value:e}),m("span",{"aria-hidden":"true",class:this.classes(x.leadingIcon,_.calendar)}))}_handleDateInputClick(){this.open(!1)}_handleDateInputKeyDown(e){const{key:t}=e;this._isOpen?"Enter"===t?this._handleDateText(e):"Escape"===t&&this.close():"ArrowDown"===t&&(this.open(),e.preventDefault())}_handleDateButtonKeyDown(e){const{key:t,shiftKey:a}=e;this._isOpen&&"Tab"===t&&a?this.close():D(t)&&this.toggle()}_handleDateInputBlur(e){this._isOpen||this._handleDateText(e)}_handleDateText(e){const t=e.currentTarget;let i;try{i=d(t.value,I)}catch(o){return a.getLogger(this).warn(o),void(t.value=P(this.viewModel.value,I))}const s=w.fromObject(i);s.isValid?(this.viewModel.value=s.toJSDate(),this._activeDate=s):t.value=P(this.viewModel.value,I)}_handleDatePickerKeydown(e){"Escape"===t(e)&&(this.close(),e.preventDefault(),e.stopPropagation())}_renderCalendar(){const e=this._activeDate;if(!e)return null;const t=w.fromJSDate(this.viewModel.value);return m("div",{afterCreate:g,bind:this,class:this.classes(x.datePicker,u.widget),"data-node-ref":"_calendarNode",id:this._getCalendarId(),key:"esri-date-picker__calendar",onfocusout:this._onCalendarFocusOut,onkeydown:this._handleDatePickerKeydown,tabIndex:-1},this._renderMonthPicker(e),this._renderDayPicker(e,t),this._renderYearPicker(e))}_getCalendarId(){return`date-picker__calendar--${this.id}`}_onCalendarFocusOut(e){const t=e.relatedTarget;t&&t instanceof Node&&(this._calendarNode?.contains(t)||this._rootNode?.contains(t))||this.close(!1)}_renderMonthPicker(e){const t=k(this.container),a=t?_.right:_.left,i=t?_.left:_.right,s=f.months("long",{locale:M()}).map(((t,a)=>{const i=e.month-1===a;return m("option",{selected:i,value:a.toString()},t)})),{disabled:o,messages:r}=this;return m("div",{class:x.monthPicker},m("div",{"aria-label":r.goToPreviousMonth,bind:this,class:u.button,key:`previous-month-${o}`,onclick:this._setPreviousMonth,onkeydown:this._handlePreviousMonthKeyDown,role:"button",tabIndex:o?void 0:0,title:r.goToPreviousMonth},m("span",{"aria-hidden":"true",class:a})),m("select",{"aria-label":r.selectMonth,"aria-live":"assertive",bind:this,class:this.classes(x.monthDropdown,u.select),disabled:o,id:`${this.id}__month-picker`,onchange:this._setMonth,onkeydown:this._setMonth,title:r.selectMonth},s),m("div",{"aria-label":r.goToNextMonth,bind:this,class:u.button,key:`next-month-${o}`,onclick:this._setNextMonth,onkeydown:this._setNextMonth,role:"button",tabIndex:o?void 0:0,title:r.goToNextMonth},m("span",{"aria-hidden":"true",class:i})))}_renderDayPicker(e,t){const a=this._getWeekLabels(),i=this._getDayId(e),s=this._renderMonth(e,t),{id:o,disabled:r}=this;return m("div",{afterCreate:this._handleDayPickerCreate,"aria-activedescendant":i,"aria-labelledby":`${o}__month-picker ${o}__selected-year`,bind:this,class:x.dayPicker,id:`${o}__day-picker`,key:`day-picker-${r}`,onkeydown:this._handleDayPickerKeydown,role:"grid",tabIndex:r?void 0:0},m("div",{class:x.week,role:"row"},a.map((e=>m("div",{"aria-label":e.name,class:this.classes(x.day,x.dayHeader),role:"columnheader",title:e.name},e.abbr)))),s)}_getDayId(e){return`${this.id}__${P(e.valueOf(),I)}`}_handleDayPickerCreate(e){this._requestDayPickerFocusOnCreate&&(this._requestDayPickerFocusOnCreate=!1,e.focus())}_getWeekLabels(){const e=[],t={weekday:"long"},a={weekday:"narrow"};let i=w.now().set({weekday:l(M())});for(let s=0;s<7;s++)e.push({name:P(i.valueOf(),t),abbr:P(i.valueOf(),a)}),i=i.plus({day:1});return e}_handleDayPickerKeydown(e){const{ctrlKey:a,shiftKey:i}=e,s=t(e);if(!$.includes(s))return;let o=this._activeDate;if(o){if("ArrowLeft"===s)o=o.minus({day:1});else if("ArrowRight"===s)o=o.plus({day:1});else if("ArrowUp"===s)o=o.minus({week:1});else if("ArrowDown"===s)o=o.plus({week:1});else if("PageUp"===s){const e=i?"year":"month";o=o.minus({[e]:1})}else if("PageDown"===s){const e=i?"year":"month";o=o.plus({[e]:1})}else if("Home"===s){const e=a?"year":"month";o=o.startOf(e)}else if("End"===s){const e=a?"year":"month";o=o.endOf(e)}else D(s)&&(this.viewModel.value=o.toJSDate(),this.close());this._activeDate=o,e.preventDefault(),e.stopPropagation()}}_renderMonth(e,t){const a=w.now(),i=e.startOf("month"),s=e.endOf("month"),o=6,r=7;let n=i.minus({day:h(M(),i.weekday)});const d=[];for(let l=0;l<o;l++){const o=[];for(let d=0;d<r;d++){const r=n.day,d=n.hasSame(e,"day"),l=n.hasSame(t,"day"),h=this._getDayId(n),c=b.fromDateTimes(i,s),u={[x.nearbyMonth]:!c.contains(n),[x.today]:n.hasSame(a,"day"),[x.activeDay]:d,[x.selectedDay]:l};o.push(m("div",{"aria-label":r.toString(),"aria-selected":d.toString(),bind:this,class:this.classes(x.day,u),"data-iso-date":n.toISO(),id:h,onclick:this._handleSelectedDate,onkeydown:this._handleSelectedDate,role:"gridcell"},r)),n=n.plus({day:1})}d.push(m("div",{class:x.week,role:"row"},o))}return d}_renderYearPicker(e){const t={year:"numeric"},a=e,i=P(a.valueOf(),t),s=P(a.plus({year:1}).valueOf(),t),o=P(a.minus({year:1}).valueOf(),t),{disabled:r,messages:n}=this;return m("div",{class:x.yearPicker},m("div",{"aria-label":n.goToPreviousYear,bind:this,class:x.year,key:`previous-year-${r}`,onclick:this._setPreviousYear,onkeydown:this._setPreviousYear,tabIndex:r?void 0:0,title:n.goToPreviousYear},o),m("div",{class:this.classes(x.year,x.selectedYear),id:`${this.id}__selected-year`},i),m("div",{"aria-label":n.goToNextYear,bind:this,class:x.year,key:`next-year-${r}`,onclick:this._setNextYear,onkeydown:this._handleNextYearKeyDown,tabIndex:r?void 0:0,title:n.goToNextYear},s))}_setMonth(e){const t=e.target,a=Number(t.value)+1;this._activeDate&&(this._activeDate=this._activeDate.set({month:a}),this.commitOnMonthChange&&(this.viewModel.value=this._activeDate.toJSDate()))}_setPreviousMonth(){this._activeDate&&(this._activeDate=this._activeDate.minus({month:1}),this.commitOnMonthChange&&(this.viewModel.value=this._activeDate.toJSDate()))}_handlePreviousMonthKeyDown(e){if("Tab"===e.key&&e.shiftKey)return e.preventDefault(),void this.close();D(e.key)&&this._setPreviousMonth()}_setNextMonth(){this._activeDate&&(this._activeDate=this._activeDate.plus({month:1}),this.commitOnMonthChange&&(this.viewModel.value=this._activeDate.toJSDate()))}_setPreviousYear(){this._activeDate=this._activeDate?.minus({year:1})??null}_setNextYear(){this._activeDate=this._activeDate?.plus({year:1})??null}_handleNextYearKeyDown(e){if("Tab"===e.key&&!e.shiftKey)return e.preventDefault(),void this.close();D(e.key)&&this._setNextYear()}_handleSelectedDate(e){const t=e.target;this.viewModel.value=w.fromISO(t.getAttribute("data-iso-date")).toJSDate(),this.close()}};e([o()],C.prototype,"_activeDate",void 0),e([o()],C.prototype,"_calendarPopover",void 0),e([o()],C.prototype,"_isOpen",void 0),e([o()],C.prototype,"dateInputEnabled",void 0),e([o(),v("esri/widgets/support/t9n/DatePicker")],C.prototype,"messages",void 0),e([o()],C.prototype,"value",null),e([o()],C.prototype,"commitOnMonthChange",void 0),e([o({type:c})],C.prototype,"viewModel",void 0),e([o()],C.prototype,"onChange",void 0),e([o()],C.prototype,"disabled",void 0),e([o()],C.prototype,"isOpen",null),e([y()],C.prototype,"_setNextMonth",null),e([y()],C.prototype,"_setPreviousYear",null),e([y()],C.prototype,"_handleSelectedDate",null),C=e([r("esri.widgets.support.DatePicker")],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.28/esri/copyright.txt for details.
4
4
  */
5
- import{clamp as r}from"../../core/mathUtils.js";import{globalCss as t}from"./globalCss.js";import{classes as o}from"./widgetUtils.js";import{tsx as i}from"./jsxFactory.js";function e({level:r,class:e,...n},l){const a=s(r);return i(`h${a}`,{...n,class:o(t.heading,e),role:"heading","aria-level":String(a)},l)}function s(t){return r(Math.ceil(t),1,6)}function n(r,t=1){return s(r+t)}export{e as Heading,n as incrementHeadingLevel};
5
+ import{clamp as r}from"../../core/mathUtils.js";import{globalCss as t}from"./globalCss.js";import{classes as o}from"./widgetUtils.js";import{tsx as i}from"./jsxFactory.js";function e({level:r,class:e,...n},l){const a=s(r);return i(`h${a}`,{...n,"aria-level":String(a),class:o(t.heading,e),role:"heading"},l)}function s(t){return r(Math.ceil(t),1,6)}function n(r,t=1){return s(r+t)}export{e as Heading,n as incrementHeadingLevel};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{loadCalciteComponents as e}from"./componentsUtils.js";import"./widgetUtils.js";import{tsx as t}from"./jsxFactory.js";const c=()=>Promise.all([e({icon:()=>import("@esri/calcite-components/dist/components/calcite-icon.js"),label:()=>import("@esri/calcite-components/dist/components/calcite-label.js"),switch:()=>import("@esri/calcite-components/dist/components/calcite-switch.js"),tooltip:()=>import("@esri/calcite-components/dist/components/calcite-tooltip.js")})]),i="esri-labeled-switch",l={label:`${i}__label`,labelContent:`${i}__label-content`,icon:`${i}__icon`};function o({checked:e,disabled:c,hint:i,key:o,label:s,onChange:n}){return t("calcite-label",{class:l.label,disabled:c,key:o,layout:"inline-space-between",scale:"s"},t("span",{class:l.labelContent,key:"label-content"},s,i?t("calcite-icon",{class:l.icon,icon:"information",id:o,scale:"s"}):void 0),i?t("calcite-tooltip",{referenceElement:o},i):void 0,t("calcite-switch",{checked:e,disabled:c,onCalciteSwitchChange:e=>n(e.target.checked),scale:"s"}))}export{o as LabeledSwitch,c as loadLabeledSwitchComponents};
5
+ import{loadCalciteComponents as e}from"./componentsUtils.js";import"./widgetUtils.js";import{tsx as t}from"./jsxFactory.js";const c=()=>Promise.all([e({icon:()=>import("@esri/calcite-components/dist/components/calcite-icon.js"),label:()=>import("@esri/calcite-components/dist/components/calcite-label.js"),switch:()=>import("@esri/calcite-components/dist/components/calcite-switch.js"),tooltip:()=>import("@esri/calcite-components/dist/components/calcite-tooltip.js")})]),i="esri-labeled-switch",l={label:`${i}__label`,labelContent:`${i}__label-content`,icon:`${i}__icon`};function o({checked:e,disabled:c,hint:i,key:o,label:s,onChange:n}){return t("calcite-label",{class:l.label,disabled:c,key:o,layout:"inline-space-between",scale:"s"},t("span",{class:l.labelContent,key:"label-content"},s,i?t("calcite-icon",{class:l.icon,icon:"information",id:o,scale:"s"}):void 0),i?t("calcite-tooltip",{referenceElement:o},i):void 0,t("calcite-switch",{checked:e,disabled:c,scale:"s",onCalciteSwitchChange:e=>n(e.target.checked)}))}export{o as LabeledSwitch,c as loadLabeledSwitchComponents};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as n}from"./componentsUtils.js";import{UnitSelect as i}from"./UnitSelect.js";import"./widgetUtils.js";import{tsx as o}from"./jsxFactory.js";const a="esri-measurement-widget-content",m={base:a,actions:`${a}__actions`,error:`${a}__error`,hint:`${a}__hint`,hintText:`${a}__hint-text`,panelError:`${a}__panel--error`,settings:`${a}__settings`,measurement:`${a}__measurement`,measurementItem:`${a}__measurement-item`,measurementItemDisabled:`${a}__measurement-item--disabled`,measurementItemTitle:`${a}__measurement-item__title`,measurementItemValue:`${a}__measurement-item__value`};let u=class extends r{constructor(e,t){super(e,t)}loadDependencies(){return n({button:()=>import("@esri/calcite-components/dist/components/calcite-button.js")})}render(){return o("div",{class:m.base},this._renderContent())}_renderContent(){const{supported:e,active:t,state:s}=this;switch(s){case"disabled":case"ready":return e?t?this._renderHint():this._renderActions():this._renderUnsupportedMessage();case"measuring":case"measured":return[this._renderSettings(),this._renderMeasurement(),this._renderActions()]}}_renderUnsupportedMessage(){return o("section",{key:"unsupported",class:m.error},o("p",null,this.messages.unsupported))}_renderHint(){const{messages:e}=this;return o("section",{key:"hint",class:m.hint},o("p",{class:m.hintText},e.hint))}_renderSettings(){return o("div",{key:"settings",class:m.settings},o(i,{options:this.unitOptions,onChange:this.onUnitChange,selectLabel:this.messages.unit,value:this.unit}))}_renderMeasurement(){return o("section",{key:"measurement",class:m.measurement},this.measurementItems.map((e=>this._renderMeasurementItem(e))))}_renderMeasurementItem({key:e,title:t,value:s}){return o("div",{key:e,class:this.classes(m.measurementItem,null==s&&m.measurementItemDisabled)},o("span",{class:m.measurementItemTitle},t),o("span",{"aria-live":"polite",class:m.measurementItemValue},s??this.messages.notApplicable))}_renderActions(){const{messages:e}=this;return o("div",{class:m.actions},o("calcite-button",{class:this.newMeasurementButtonClass,disabled:"disabled"===this.state,onclick:this.onNewMeasurementClick},e.newMeasurement))}};e([t()],u.prototype,"active",void 0),e([t()],u.prototype,"measurementItems",void 0),e([t()],u.prototype,"messages",void 0),e([t()],u.prototype,"newMeasurementButtonClass",void 0),e([t()],u.prototype,"onNewMeasurementClick",void 0),e([t()],u.prototype,"onUnitChange",void 0),e([t()],u.prototype,"state",void 0),e([t()],u.prototype,"supported",void 0),e([t()],u.prototype,"unit",void 0),e([t()],u.prototype,"unitOptions",void 0),u=e([s("esri.widgets.support.MeasurementWidgetContent")],u);export{u as MeasurementWidgetContent};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as n}from"./componentsUtils.js";import{UnitSelect as i}from"./UnitSelect.js";import"./widgetUtils.js";import{tsx as o}from"./jsxFactory.js";const a="esri-measurement-widget-content",m={base:a,actions:`${a}__actions`,error:`${a}__error`,hint:`${a}__hint`,hintText:`${a}__hint-text`,panelError:`${a}__panel--error`,settings:`${a}__settings`,measurement:`${a}__measurement`,measurementItem:`${a}__measurement-item`,measurementItemDisabled:`${a}__measurement-item--disabled`,measurementItemTitle:`${a}__measurement-item__title`,measurementItemValue:`${a}__measurement-item__value`};let u=class extends r{constructor(e,t){super(e,t)}loadDependencies(){return n({button:()=>import("@esri/calcite-components/dist/components/calcite-button.js")})}render(){return o("div",{class:m.base},this._renderContent())}_renderContent(){const{supported:e,active:t,state:s}=this;switch(s){case"disabled":case"ready":return e?t?this._renderHint():this._renderActions():this._renderUnsupportedMessage();case"measuring":case"measured":return[this._renderSettings(),this._renderMeasurement(),this._renderActions()]}}_renderUnsupportedMessage(){return o("section",{class:m.error,key:"unsupported"},o("p",null,this.messages.unsupported))}_renderHint(){const{messages:e}=this;return o("section",{class:m.hint,key:"hint"},o("p",{class:m.hintText},e.hint))}_renderSettings(){return o("div",{class:m.settings,key:"settings"},o(i,{options:this.unitOptions,selectLabel:this.messages.unit,value:this.unit,onChange:this.onUnitChange}))}_renderMeasurement(){return o("section",{class:m.measurement,key:"measurement"},this.measurementItems.map((e=>this._renderMeasurementItem(e))))}_renderMeasurementItem({key:e,title:t,value:s}){return o("div",{class:this.classes(m.measurementItem,null==s&&m.measurementItemDisabled),key:e},o("span",{class:m.measurementItemTitle},t),o("span",{"aria-live":"polite",class:m.measurementItemValue},s??this.messages.notApplicable))}_renderActions(){const{messages:e}=this;return o("div",{class:m.actions},o("calcite-button",{class:this.newMeasurementButtonClass,disabled:"disabled"===this.state,onclick:this.onNewMeasurementClick},e.newMeasurement))}};e([t()],u.prototype,"active",void 0),e([t()],u.prototype,"measurementItems",void 0),e([t()],u.prototype,"messages",void 0),e([t()],u.prototype,"newMeasurementButtonClass",void 0),e([t()],u.prototype,"onNewMeasurementClick",void 0),e([t()],u.prototype,"onUnitChange",void 0),e([t()],u.prototype,"state",void 0),e([t()],u.prototype,"supported",void 0),e([t()],u.prototype,"unit",void 0),e([t()],u.prototype,"unitOptions",void 0),u=e([s("esri.widgets.support.MeasurementWidgetContent")],u);export{u as MeasurementWidgetContent};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../../chunks/tslib.es6.js";import{createPopper as e}from"@popperjs/core";import"../../intl.js";import{remove as o,byId as r}from"../../core/domUtils.js";import{watch as s,initial as n}from"../../core/reactiveUtils.js";import{property as i}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as p}from"../../core/accessorSupport/decorators/subclass.js";import l from"../Widget.js";import{getDir as h}from"./widgetUtils.js";import{tsx as c}from"./jsxFactory.js";import{getLocale as a}from"../../intl/locale.js";const d=["bottom","bottom-start","bottom-end","left","left-start","left-end","right","right-start","right-end","top","top-start","top-end"],u="esri-popover",m={base:u,open:`${u}--open`},_={position:"fixed","z-index":"1000"};let f=class extends l{constructor(t,e){super(t,e),this._popper=null,this._contentNode=null,this._renderAttached=!1,this._rootNode=null,this.anchorElement=null,this.offset=[0,0],this.open=!1,this.renderContentFunction=null,this._afterRootCreate=t=>{this._rootNode=t},this._afterContentCreate=t=>{this._contentNode=t},this._updatePosition=()=>{null!=this._popper&&this._popper.update()}}initialize(){this.when((()=>{this.destroyed||(this._projector.append(document.body,this.render),this._renderAttached=!0)})),this.addHandles([s((()=>[this.open,this.anchorElement]),(()=>this._buildPopper()),n),s((()=>[this.placement,this.offset]),(()=>this._setPopperOptions()),n)])}destroy(){this.owner=null,this.anchorElement=null,this.renderContentFunction=null,this._renderAttached&&(this._projector.detach(this.render),this._renderAttached=!1),null!=this._rootNode&&(o(this._rootNode),this._rootNode=null),this._contentNode=null,null!=this._popper&&(this._popper.destroy(),this._popper=null)}set container(t){}set owner(t){this._set("owner",t)}get placement(){return"top"}set placement(t){d.includes(t)?this._override("placement",t):this._clearOverride("placement")}get test(){return{rootNode:this._rootNode}}render(){const{open:t,owner:e,renderContentFunction:o}=this;return c("div",{afterCreate:this._afterRootCreate,class:this.classes(m.base,t?m.open:null),styles:_,lang:a()},c("div",{dir:h(this.owner?.container),afterCreate:this._afterContentCreate,afterUpdate:this._updatePosition},t&&o?.call(e)))}_buildPopper(){null!=this._popper&&(this._popper.destroy(),this._popper=null);const t=this._contentNode;if(null==t)return;if(!this.open||!this.renderContentFunction)return;const o=this._getAnchor();o&&(this._popper=e(o,t),this._setPopperOptions())}_setPopperOptions(){const{placement:t,offset:e,_popper:o}=this;null!=o&&(o.setOptions({placement:t,modifiers:[{name:"offset",options:{offset:e}}]}),o.forceUpdate())}_getAnchor(){const{anchorElement:t}=this;return r("function"==typeof t?t():t)}};t([i()],f.prototype,"anchorElement",void 0),t([i()],f.prototype,"container",null),t([i()],f.prototype,"offset",void 0),t([i()],f.prototype,"open",void 0),t([i()],f.prototype,"owner",null),t([i()],f.prototype,"placement",null),t([i()],f.prototype,"renderContentFunction",void 0),f=t([p("esri.widgets.support.Popover")],f);const y=f;export{y as default};
5
+ import{_ as t}from"../../chunks/tslib.es6.js";import{createPopper as e}from"@popperjs/core";import"../../intl.js";import{remove as o,byId as r}from"../../core/domUtils.js";import{watch as s,initial as n}from"../../core/reactiveUtils.js";import{property as i}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as p}from"../../core/accessorSupport/decorators/subclass.js";import l from"../Widget.js";import{getDir as h}from"./widgetUtils.js";import{tsx as c}from"./jsxFactory.js";import{getLocale as a}from"../../intl/locale.js";const d=["bottom","bottom-start","bottom-end","left","left-start","left-end","right","right-start","right-end","top","top-start","top-end"],u="esri-popover",m={base:u,open:`${u}--open`},_={position:"fixed","z-index":"1000"};let f=class extends l{constructor(t,e){super(t,e),this._popper=null,this._contentNode=null,this._renderAttached=!1,this._rootNode=null,this.anchorElement=null,this.offset=[0,0],this.open=!1,this.renderContentFunction=null,this._afterRootCreate=t=>{this._rootNode=t},this._afterContentCreate=t=>{this._contentNode=t},this._updatePosition=()=>{null!=this._popper&&this._popper.update()}}initialize(){this.when((()=>{this.destroyed||(this._projector.append(document.body,this.render),this._renderAttached=!0)})),this.addHandles([s((()=>[this.open,this.anchorElement]),(()=>this._buildPopper()),n),s((()=>[this.placement,this.offset]),(()=>this._setPopperOptions()),n)])}destroy(){this.owner=null,this.anchorElement=null,this.renderContentFunction=null,this._renderAttached&&(this._projector.detach(this.render),this._renderAttached=!1),null!=this._rootNode&&(o(this._rootNode),this._rootNode=null),this._contentNode=null,null!=this._popper&&(this._popper.destroy(),this._popper=null)}set container(t){}set owner(t){this._set("owner",t)}get placement(){return"top"}set placement(t){d.includes(t)?this._override("placement",t):this._clearOverride("placement")}get test(){return{rootNode:this._rootNode}}render(){const{open:t,owner:e,renderContentFunction:o}=this;return c("div",{afterCreate:this._afterRootCreate,class:this.classes(m.base,t?m.open:null),lang:a(),styles:_},c("div",{afterCreate:this._afterContentCreate,afterUpdate:this._updatePosition,dir:h(this.owner?.container)},t?o?.call(e):null))}_buildPopper(){null!=this._popper&&(this._popper.destroy(),this._popper=null);const t=this._contentNode;if(null==t)return;if(!this.open||!this.renderContentFunction)return;const o=this._getAnchor();o&&(this._popper=e(o,t),this._setPopperOptions())}_setPopperOptions(){const{placement:t,offset:e,_popper:o}=this;null!=o&&(o.setOptions({placement:t,modifiers:[{name:"offset",options:{offset:e}}]}),o.forceUpdate())}_getAnchor(){const{anchorElement:t}=this;return r("function"==typeof t?t():t)}};t([i()],f.prototype,"anchorElement",void 0),t([i()],f.prototype,"container",null),t([i()],f.prototype,"offset",void 0),t([i()],f.prototype,"open",void 0),t([i()],f.prototype,"owner",null),t([i()],f.prototype,"placement",null),t([i()],f.prototype,"renderContentFunction",void 0),f=t([p("esri.widgets.support.Popover")],f);const y=f;export{y as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import{deprecatedProperty as o}from"../../core/deprecate.js";import{handlesGroup as t}from"../../core/handleUtils.js";import s from"../../core/Logger.js";import{removeMaybe as l}from"../../core/maybe.js";import{property as i}from"../../core/accessorSupport/decorators/property.js";import{cast as r}from"../../core/accessorSupport/decorators/cast.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as c}from"../../core/accessorSupport/decorators/subclass.js";import n from"../Widget.js";import{loadCalciteComponents as a}from"./componentsUtils.js";import{globalCss as p}from"./globalCss.js";import{legacyIcon as m}from"./legacyIcon.js";import"./widgetUtils.js";import{messageBundle as d}from"./decorators/messageBundle.js";import{tsx as h}from"./jsxFactory.js";import u from"./SelectionToolbar/SelectionToolbarViewModel.js";const g={lassoTool:!0,rectangleTool:!0},v={createTool:"polygon",createOptions:{mode:"freehand"}},T={createTool:"rectangle"},f="esri-selection-toolbar",b={base:f,widgetIcon:m.vertexGps,container:`${f}__container`,toolButton:`${f}__tool-button`};let _=class extends n{constructor(e,o){super(e,o),this._viewModelHandlesGroup=null,this.activeToolInfo=null,this.messages=null,this.toolConfigs=[],this.viewModel=new u,this.visibleElements={...g},this._viewModelHandlesGroup=t([this.viewModel.on("selection-change",(e=>this.emit("selection-change",e))),this.viewModel.on("complete",(e=>{this._set("activeToolInfo",null),this.emit("complete",e)}))])}destroy(){this._viewModelHandlesGroup=l(this._viewModelHandlesGroup)}loadDependencies(){return a({action:()=>import("@esri/calcite-components/dist/components/calcite-action.js"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon.js")})}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get layers(){return o(s.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources}set layers(e){o(s.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources=e}get sources(){return this.viewModel.sources}set sources(e){this.viewModel.sources=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}castVisibleElements(e){return{...g,...e}}get visibleToolCount(){const{view:e,toolConfigs:o,visibleElements:t}=this;return(o?.length??0)+("2d"===e?.type?(t.lassoTool?1:0)+(t.rectangleTool?1:0):0)}activate(e){switch(this.cancel(),e){case"lasso":this._activateTool("lasso");break;case"rectangle":this._activateTool("rectangle");break;default:this._activateTool(e)}}cancel(){this.viewModel.cancel(),this._set("activeToolInfo",null)}render(){return h("div",{"aria-label":this.label,class:this.classes(b.base,p.widget)},h("div",{class:b.container},this._renderDefaultTools(),this._renderCustomTools()))}_renderDefaultTools(){if("2d"===this.view?.type)return[this._renderRectangleTool(),this._renderLassoTool()]}_renderCustomTools(){if(this.toolConfigs&&this.toolConfigs.length)return this.toolConfigs.map((e=>h("calcite-action",{active:this.activeToolInfo?.toolName===e.toolName,bind:this,class:b.toolButton,label:e.toolName,onclick:()=>this._onCustomToolClick(e.toolName),scale:"s",text:e.toolName,title:e.toolName},h("calcite-icon",{scale:"s",icon:e.icon||"selection"}))))}_renderLassoTool(){const{activeToolInfo:e,messages:o,visibleElements:t}=this;if(t.lassoTool)return h("calcite-action",{active:"lasso"===e?.toolName,bind:this,label:o.selectByLasso,onclick:this._onLassoToolClick,scale:"s",text:o.selectByLasso,title:o.selectByLasso},h("calcite-icon",{scale:"s",icon:"lasso-select"}))}_renderRectangleTool(){const{activeToolInfo:e,messages:o,visibleElements:t}=this;if(t.rectangleTool)return h("calcite-action",{active:"rectangle"===e?.toolName,bind:this,label:o.selectByRectangle,onclick:this._onRectangleToolClick,scale:"s",text:o.selectByRectangle,title:o.selectByRectangle},h("calcite-icon",{scale:"s",icon:"cursor-marquee"}))}_onCustomToolClick(e){this._toggleTool(e)}_onLassoToolClick(){this._toggleTool("lasso")}_onRectangleToolClick(){this._toggleTool("rectangle")}_activateTool(e){const o=this._getToolOptions(e);if(!o)return;const t=this.viewModel.activate(o);t&&this._set("activeToolInfo",{toolName:e,operation:t})}_toggleTool(e){if(this.activeToolInfo){const o=this.activeToolInfo.toolName;if(this.cancel(),o===e)return}this._activateTool(e)}_getToolOptions(e){if("lasso"===e)return v;if("rectangle"===e)return T;const o=this.toolConfigs.find((o=>o.toolName===e));if(!o)return;const{createTool:t,createOptions:s,selectionOptions:l}=o;return{createTool:t,createOptions:s,selectionOptions:l}}};e([i({readOnly:!0})],_.prototype,"activeToolInfo",void 0),e([i()],_.prototype,"label",null),e([i()],_.prototype,"layers",null),e([i(),d("esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar")],_.prototype,"messages",void 0),e([i()],_.prototype,"sources",null),e([i()],_.prototype,"toolConfigs",void 0),e([i()],_.prototype,"view",null),e([i()],_.prototype,"viewModel",void 0),e([i()],_.prototype,"visibleElements",void 0),e([r("visibleElements")],_.prototype,"castVisibleElements",null),e([i()],_.prototype,"visibleToolCount",null),_=e([c("esri.widgets.support.SelectionToolbar")],_);const w=_;export{w as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import{deprecatedProperty as o}from"../../core/deprecate.js";import{handlesGroup as t}from"../../core/handleUtils.js";import s from"../../core/Logger.js";import{removeMaybe as l}from"../../core/maybe.js";import{property as i}from"../../core/accessorSupport/decorators/property.js";import{cast as r}from"../../core/accessorSupport/decorators/cast.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as c}from"../../core/accessorSupport/decorators/subclass.js";import n from"../Widget.js";import{loadCalciteComponents as a}from"./componentsUtils.js";import{globalCss as p}from"./globalCss.js";import{legacyIcon as m}from"./legacyIcon.js";import"./widgetUtils.js";import{messageBundle as d}from"./decorators/messageBundle.js";import{tsx as h}from"./jsxFactory.js";import u from"./SelectionToolbar/SelectionToolbarViewModel.js";const g={lassoTool:!0,rectangleTool:!0},v={createTool:"polygon",createOptions:{mode:"freehand"}},T={createTool:"rectangle"},f="esri-selection-toolbar",b={base:f,widgetIcon:m.vertexGps,container:`${f}__container`,toolButton:`${f}__tool-button`};let _=class extends n{constructor(e,o){super(e,o),this._viewModelHandlesGroup=null,this.activeToolInfo=null,this.messages=null,this.toolConfigs=[],this.viewModel=new u,this.visibleElements={...g},this._viewModelHandlesGroup=t([this.viewModel.on("selection-change",(e=>this.emit("selection-change",e))),this.viewModel.on("complete",(e=>{this._set("activeToolInfo",null),this.emit("complete",e)}))])}destroy(){this._viewModelHandlesGroup=l(this._viewModelHandlesGroup)}loadDependencies(){return a({action:()=>import("@esri/calcite-components/dist/components/calcite-action.js"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon.js")})}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get layers(){return o(s.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources}set layers(e){o(s.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources=e}get sources(){return this.viewModel.sources}set sources(e){this.viewModel.sources=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}castVisibleElements(e){return{...g,...e}}get visibleToolCount(){const{view:e,toolConfigs:o,visibleElements:t}=this;return(o?.length??0)+("2d"===e?.type?(t.lassoTool?1:0)+(t.rectangleTool?1:0):0)}activate(e){switch(this.cancel(),e){case"lasso":this._activateTool("lasso");break;case"rectangle":this._activateTool("rectangle");break;default:this._activateTool(e)}}cancel(){this.viewModel.cancel(),this._set("activeToolInfo",null)}render(){return h("div",{"aria-label":this.label,class:this.classes(b.base,p.widget)},h("div",{class:b.container},this._renderDefaultTools(),this._renderCustomTools()))}_renderDefaultTools(){if("2d"===this.view?.type)return[this._renderRectangleTool(),this._renderLassoTool()]}_renderCustomTools(){if(this.toolConfigs&&this.toolConfigs.length)return this.toolConfigs.map((e=>h("calcite-action",{active:this.activeToolInfo?.toolName===e.toolName,bind:this,class:b.toolButton,label:e.toolName,onclick:()=>this._onCustomToolClick(e.toolName),scale:"s",text:e.toolName,title:e.toolName},h("calcite-icon",{icon:e.icon||"selection",scale:"s"}))))}_renderLassoTool(){const{activeToolInfo:e,messages:o,visibleElements:t}=this;if(t.lassoTool)return h("calcite-action",{active:"lasso"===e?.toolName,bind:this,label:o.selectByLasso,onclick:this._onLassoToolClick,scale:"s",text:o.selectByLasso,title:o.selectByLasso},h("calcite-icon",{icon:"lasso-select",scale:"s"}))}_renderRectangleTool(){const{activeToolInfo:e,messages:o,visibleElements:t}=this;if(t.rectangleTool)return h("calcite-action",{active:"rectangle"===e?.toolName,bind:this,label:o.selectByRectangle,onclick:this._onRectangleToolClick,scale:"s",text:o.selectByRectangle,title:o.selectByRectangle},h("calcite-icon",{icon:"cursor-marquee",scale:"s"}))}_onCustomToolClick(e){this._toggleTool(e)}_onLassoToolClick(){this._toggleTool("lasso")}_onRectangleToolClick(){this._toggleTool("rectangle")}_activateTool(e){const o=this._getToolOptions(e);if(!o)return;const t=this.viewModel.activate(o);t&&this._set("activeToolInfo",{toolName:e,operation:t})}_toggleTool(e){if(this.activeToolInfo){const o=this.activeToolInfo.toolName;if(this.cancel(),o===e)return}this._activateTool(e)}_getToolOptions(e){if("lasso"===e)return v;if("rectangle"===e)return T;const o=this.toolConfigs.find((o=>o.toolName===e));if(!o)return;const{createTool:t,createOptions:s,selectionOptions:l}=o;return{createTool:t,createOptions:s,selectionOptions:l}}};e([i({readOnly:!0})],_.prototype,"activeToolInfo",void 0),e([i()],_.prototype,"label",null),e([i()],_.prototype,"layers",null),e([i(),d("esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar")],_.prototype,"messages",void 0),e([i()],_.prototype,"sources",null),e([i()],_.prototype,"toolConfigs",void 0),e([i()],_.prototype,"view",null),e([i()],_.prototype,"viewModel",void 0),e([i()],_.prototype,"visibleElements",void 0),e([r("visibleElements")],_.prototype,"castVisibleElements",null),e([i()],_.prototype,"visibleToolCount",null),_=e([c("esri.widgets.support.SelectionToolbar")],_);const w=_;export{w as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import{isSome as o}from"../../core/arrayUtils.js";import{destroyMaybe as t}from"../../core/maybe.js";import{property as l}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/has.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import i from"../Widget.js";import{loadCalciteComponents as n}from"./componentsUtils.js";import{globalCss as r}from"./globalCss.js";import{loadLabeledSwitchComponents as p,LabeledSwitch as a}from"./LabeledSwitch.js";import{legacyIcon as c}from"./legacyIcon.js";import"./widgetUtils.js";import{messageBundle as d}from"./decorators/messageBundle.js";import{tsx as h}from"./jsxFactory.js";import b from"./SketchTooltipControls/SketchTooltipControlsViewModel.js";import g from"./SketchTooltipControls/VisibleElements.js";const m="esri-sketch-tooltip-controls",u={base:m,widgetIcon:c.gear,block:`${m}__block`,blockContent:`${m}__block-content`,hintIcon:`${m}__hint-icon`};let w=class extends i{constructor(e,o){super(e,o),this._defaultViewModel=null,this.icon=null,this.iconClass=u.widgetIcon,this.visibleElements=new g,this.viewType=void 0,this._onTooltipsEnabledChange=e=>{this.tooltipOptions.enabled=e},this._onLabelsEnabledChange=e=>{this.labelOptions.enabled=e};const{tooltipOptions:t,labelOptions:l,viewModel:s}=e;this.viewModel=s??(this._defaultViewModel=new b({tooltipOptions:t,labelOptions:l}))}loadDependencies(){return Promise.all([n({block:()=>import("@esri/calcite-components/dist/components/calcite-block.js")}),p()])}render(){const{label:e,visibleElements:o}=this,t=this._renderContent();return h("div",{"aria-label":e,class:this.classes(u.base,r.widget)},t?h("calcite-block",{class:u.block,heading:o.header?this.label:"",key:"content-block",open:!0},h("div",{key:"content",class:u.blockContent},t)):void 0)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get labelOptions(){return this.viewModel.labelOptions}set labelOptions(e){this.viewModel.labelOptions=e}get tooltipOptions(){return this.viewModel.tooltipOptions}set tooltipOptions(e){this.viewModel.tooltipOptions=e}set viewModel(e){e!==this._get("viewModel")&&(null!=this._defaultViewModel&&this._defaultViewModel===e||(this._defaultViewModel=t(this._defaultViewModel)),this._set("viewModel",e))}_renderContent(){const{visibleElements:e,viewType:t}=this,l=[e.tooltipsToggle?this._renderTooltipsToggle():null,e.labelsToggle&&"2d"!==t?this._renderLabelsToggle():null].filter(o);return 0===l.length?null:l}_renderTooltipsToggle(){const{messages:e,tooltipOptions:o}=this;return h(a,{checked:o.enabled,hint:e.tooltipsToggleHint,key:`${this.id}__tooltips`,label:e.tooltipsToggle,onChange:this._onTooltipsEnabledChange})}_renderLabelsToggle(){const{messages:e,labelOptions:o}=this;return h(a,{checked:o.enabled,hint:e.labelsToggleHint,key:`${this.id}__labels`,label:e.labelsToggle,onChange:this._onLabelsEnabledChange})}};e([l()],w.prototype,"icon",void 0),e([l()],w.prototype,"iconClass",void 0),e([l()],w.prototype,"label",null),e([l()],w.prototype,"labelOptions",null),e([l()],w.prototype,"tooltipOptions",null),e([l()],w.prototype,"viewModel",null),e([l({type:g,nonNullable:!0})],w.prototype,"visibleElements",void 0),e([l(),d("esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls")],w.prototype,"messages",void 0),e([l({type:String})],w.prototype,"viewType",void 0),w=e([s("esri.widgets.support.SketchTooltipControls")],w);const _=w;export{_ as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import{isSome as o}from"../../core/arrayUtils.js";import{destroyMaybe as t}from"../../core/maybe.js";import{property as l}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/has.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import i from"../Widget.js";import{loadCalciteComponents as n}from"./componentsUtils.js";import{globalCss as r}from"./globalCss.js";import{loadLabeledSwitchComponents as p,LabeledSwitch as a}from"./LabeledSwitch.js";import{legacyIcon as c}from"./legacyIcon.js";import"./widgetUtils.js";import{messageBundle as d}from"./decorators/messageBundle.js";import{tsx as h}from"./jsxFactory.js";import b from"./SketchTooltipControls/SketchTooltipControlsViewModel.js";import g from"./SketchTooltipControls/VisibleElements.js";const m="esri-sketch-tooltip-controls",u={base:m,widgetIcon:c.gear,block:`${m}__block`,blockContent:`${m}__block-content`,hintIcon:`${m}__hint-icon`};let w=class extends i{constructor(e,o){super(e,o),this._defaultViewModel=null,this.icon=null,this.iconClass=u.widgetIcon,this.visibleElements=new g,this.viewType=void 0,this._onTooltipsEnabledChange=e=>{this.tooltipOptions.enabled=e},this._onLabelsEnabledChange=e=>{this.labelOptions.enabled=e};const{tooltipOptions:t,labelOptions:l,viewModel:s}=e;this.viewModel=s??(this._defaultViewModel=new b({tooltipOptions:t,labelOptions:l}))}loadDependencies(){return Promise.all([n({block:()=>import("@esri/calcite-components/dist/components/calcite-block.js")}),p()])}render(){const{label:e,visibleElements:o}=this,t=this._renderContent();return h("div",{"aria-label":e,class:this.classes(u.base,r.widget)},t?h("calcite-block",{class:u.block,heading:o.header?this.label:"",key:"content-block",open:!0},h("div",{class:u.blockContent,key:"content"},t)):void 0)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get labelOptions(){return this.viewModel.labelOptions}set labelOptions(e){this.viewModel.labelOptions=e}get tooltipOptions(){return this.viewModel.tooltipOptions}set tooltipOptions(e){this.viewModel.tooltipOptions=e}set viewModel(e){e!==this._get("viewModel")&&(null!=this._defaultViewModel&&this._defaultViewModel===e||(this._defaultViewModel=t(this._defaultViewModel)),this._set("viewModel",e))}_renderContent(){const{visibleElements:e,viewType:t}=this,l=[e.tooltipsToggle?this._renderTooltipsToggle():null,e.labelsToggle&&"2d"!==t?this._renderLabelsToggle():null].filter(o);return 0===l.length?null:l}_renderTooltipsToggle(){const{messages:e,tooltipOptions:o}=this;return h(a,{checked:o.enabled,hint:e.tooltipsToggleHint,key:`${this.id}__tooltips`,label:e.tooltipsToggle,onChange:this._onTooltipsEnabledChange})}_renderLabelsToggle(){const{messages:e,labelOptions:o}=this;return h(a,{checked:o.enabled,hint:e.labelsToggleHint,key:`${this.id}__labels`,label:e.labelsToggle,onChange:this._onLabelsEnabledChange})}};e([l()],w.prototype,"icon",void 0),e([l()],w.prototype,"iconClass",void 0),e([l()],w.prototype,"label",null),e([l()],w.prototype,"labelOptions",null),e([l()],w.prototype,"tooltipOptions",null),e([l()],w.prototype,"viewModel",null),e([l({type:g,nonNullable:!0})],w.prototype,"visibleElements",void 0),e([l(),d("esri/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls")],w.prototype,"messages",void 0),e([l({type:String})],w.prototype,"viewType",void 0),w=e([s("esri.widgets.support.SketchTooltipControls")],w);const _=w;export{_ as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import{isSome as t}from"../../core/arrayUtils.js";import{destroyMaybe as i}from"../../core/maybe.js";import{generateUID as l}from"../../core/uid.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/has.js";import{subclass as n}from"../../core/accessorSupport/decorators/subclass.js";import o from"../Widget.js";import{loadCalciteComponents as a}from"./componentsUtils.js";import{globalCss as r}from"./globalCss.js";import{loadLabeledSwitchComponents as c,LabeledSwitch as d}from"./LabeledSwitch.js";import{legacyIcon as p}from"./legacyIcon.js";import"./widgetUtils.js";import{messageBundle as g}from"./decorators/messageBundle.js";import{tsx as h}from"./jsxFactory.js";import m from"./SnappingControls/SnappingControlsViewModel.js";import u from"./SnappingControls/VisibleElements.js";const y="esri-snapping-controls",b={base:y,widgetIcon:p.vertexGps,container:`${y}__container`,item:`${y}__item`,toggleBlock:`${y}__toggle-block`,layerListBlock:`${y}__layer-list-block`,layerList:`${y}__layer-list`,layerListFilter:`${y}__layer-list__filter`,layerListButton:`${y}__layer-list__button`,layerListItem:`${y}__layer-list__item`,layerListGroup:`${y}__layer-list__group`,nestedContainer:`${y}__nested-container`},_={checked:"check-square-f",unchecked:"square",indeterminate:"minus-square"};let L=class extends o{constructor(e,t){super(e,t),this._defaultViewModel=null,this._layerListFilter=null,this.iconClass=b.widgetIcon,this.icon=null,this.layerListOpen=!0,this.messages=null,this.visibleElements=new u,this._enableSnappingSwitchChange=e=>{this.snappingOptions.enabled=e},this._featureEnabledSwitchChange=e=>{this.snappingOptions.featureEnabled=e},this._selfEnabledSwitchChange=e=>{this.snappingOptions.selfEnabled=e},this._onToggleLayersButtonClick=e=>{this.viewModel.toggleSnappingForAllLayers(!this.viewModel.allLayersEnabled),requestAnimationFrame((()=>e.target.setFocus()))};const{snappingOptions:i,view:l,viewModel:s}=e;this.viewModel=s??(this._defaultViewModel=new m({snappingOptions:i,view:l}))}normalizeCtorArgs(e){const{snappingOptions:t,view:i,viewModel:l,...s}=e;return s}destroy(){this.viewModel!==this._defaultViewModel&&(this._defaultViewModel=i(this._defaultViewModel))}loadDependencies(){return Promise.all([a({accordion:()=>import("@esri/calcite-components/dist/components/calcite-accordion.js"),"accordion-item":()=>import("@esri/calcite-components/dist/components/calcite-accordion-item.js"),action:()=>import("@esri/calcite-components/dist/components/calcite-action.js"),block:()=>import("@esri/calcite-components/dist/components/calcite-block.js"),button:()=>import("@esri/calcite-components/dist/components/calcite-button.js"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon.js"),input:()=>import("@esri/calcite-components/dist/components/calcite-input.js"),list:()=>import("@esri/calcite-components/dist/components/calcite-list.js"),"list-item":()=>import("@esri/calcite-components/dist/components/calcite-list-item.js")}),c()])}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}set viewModel(e){e!==this._get("viewModel")&&(null!=this._defaultViewModel&&this._defaultViewModel===e||(this._defaultViewModel=i(this._defaultViewModel)),this._set("viewModel",e))}render(){const{label:e}=this;return h("div",{"aria-label":e,class:this.classes(b.base,r.widget)},h("div",{class:b.container},this._renderContent()))}_renderContent(){return[this._renderToggles(),this._renderLayerList()]}_renderToggles(){const{visibleElements:e}=this,i=[e.selfEnabledToggle?this._renderSelfEnabledToggle():null,e.featureEnabledToggle?this._renderFeatureEnabledToggle():null].filter(t),l=[e.enabledToggle?this._renderEnabledToggle():null,i.length>0?h("div",{class:b.nestedContainer},i):null].filter(t);return 0===l.length?null:h("calcite-block",{class:b.toggleBlock,heading:e.header?this.label:"",key:"toggle-block",open:!0},l)}_renderEnabledToggle(){const{messages:e,viewModel:t}=this,{snappingOptions:i}=t;return h(d,{checked:i.enabled,disabled:i.enabledToggled,key:`${this.id}__enabled-toggle`,label:e.enableSnapping,onChange:this._enableSnappingSwitchChange})}_renderSelfEnabledToggle(){const{messages:e,viewModel:t}=this,{snappingOptions:i}=t;return h(d,{checked:i.enabled&&i.selfEnabled,disabled:i.enabledToggled||!i.enabled,key:`${this.id}__self-enabled-toggle`,label:e.geometryGuides,onChange:this._selfEnabledSwitchChange})}_renderFeatureEnabledToggle(){const{messages:e,viewModel:t}=this,{snappingOptions:i}=t;return h(d,{checked:i.enabled&&i.featureEnabled,disabled:i.enabledToggled||!i.enabled,key:`${this.id}__feature-enabled-toggle`,label:e.featureToFeature,onChange:this._featureEnabledSwitchChange})}_renderLayerList(){if(!this.visibleElements.layerList)return null;const{messages:e,viewModel:t}=this,{snappingOptions:{enabled:i,enabledToggled:l}}=t,s=({target:{value:e}})=>{this._layerListFilter=""===e?null:new RegExp(e,"i")},n=t.layerListViewModel.operationalItems.length>9?h("calcite-input",{class:b.layerListFilter,clearable:!0,placeholder:e?.searchLayers,onCalciteInputInput:s}):null,o=l||!i,a=this.layerListOpen&&!o;return h("calcite-block",{key:"list-block",heading:e.snappingLayers,disabled:o,class:b.layerListBlock,collapsible:!0,open:a,onCalciteBlockToggle:e=>this.layerListOpen=e.target.open},n,this._renderToggleLayersButton(),h("calcite-list",{class:b.layerList},this._renderLayerListItemCollection(t.layerListViewModel.operationalItems,this._layerListFilter)))}_renderLayerListItemCollection(e,i){return e.map((e=>{if(!i||this._itemTitleMatchesFilter(e,i))return e.children.length>0?this._renderLayerListItemGroup(e):this._renderLayerListItem(e);const t=e.children.filter((e=>this._itemTitleMatchesFilter(e,i)));return t.length>0?this._renderLayerListItemGroup(e,t):null})).toArray().filter(t)}_renderToggleLayersButton(){if(!this.visibleElements.layerListToggleLayersButton)return null;const{viewModel:{allLayersEnabled:e},messages:t}=this,i=e?t.disableAllLayers:t.enableAllLayers;return h("calcite-button",{appearance:"transparent",class:b.layerListButton,label:i,name:"layer-toggle",scale:"m",onclick:this._onToggleLayersButtonClick},i)}_renderLayerListItem(e){const{messages:{untitledLayer:t}}=this,i=e.title||t,l=e.enabled,s=()=>{this._handleLayerListItemChange({checked:!l,value:e.layer.id})};return h("calcite-list-item",{class:b.layerListItem,label:i,key:`${this.id}-list-item-${e.uid}`,onCalciteListItemSelect:s},h("calcite-icon",{icon:l?_.checked:_.unchecked,slot:"content-start",scale:"s"}))}_renderLayerListItemGroup(e,t){const{allChildrenEnabled:i,children:s,hasChildrenEnabled:n,title:o}=e,a=this.messages,r=o||a.untitledLayer,c=o&&""!==o?o:l(),d=!!t,p=t??s,g=i?_.checked:n?_.indeterminate:_.unchecked,m=i?a.disableAllLayers:a.enableAllLayers,u=()=>{this.viewModel.toggleSnappingForLayers(e.childLayerIds,!i)};return h("calcite-list-item",{class:b.layerListItem,key:c},h("calcite-accordion",{class:b.layerListGroup,appearance:"transparent"},h("calcite-accordion-item",{expanded:d,heading:r,key:e.uid},h("calcite-action",{scale:"m",slot:"actions-start",text:m,textEnabled:!1,onclick:u},h("calcite-icon",{icon:g,scale:"s"})),h("calcite-list",null,this._renderLayerListItemCollection(p)))))}_itemTitleMatchesFilter(e,t){return null!=t&&t.test(e.title)}async _handleLayerListItemChange(e){e.checked?this.viewModel.enableSnappingForLayer(e.value):this.viewModel.disableSnappingForLayer(e.value)}};e([s()],L.prototype,"_defaultViewModel",void 0),e([s()],L.prototype,"_layerListFilter",void 0),e([s()],L.prototype,"iconClass",void 0),e([s()],L.prototype,"icon",void 0),e([s()],L.prototype,"label",null),e([s({type:Boolean,nonNullable:!0})],L.prototype,"layerListOpen",void 0),e([s(),g("esri/widgets/support/SnappingControls/t9n/SnappingControls")],L.prototype,"messages",void 0),e([s()],L.prototype,"snappingOptions",null),e([s()],L.prototype,"view",null),e([s()],L.prototype,"viewModel",null),e([s({type:u,nonNullable:!0})],L.prototype,"visibleElements",void 0),L=e([n("esri.widgets.support.SnappingControls")],L);const w=L;export{w as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import{isSome as t}from"../../core/arrayUtils.js";import{destroyMaybe as i}from"../../core/maybe.js";import{generateUID as l}from"../../core/uid.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/has.js";import{subclass as n}from"../../core/accessorSupport/decorators/subclass.js";import o from"../Widget.js";import{loadCalciteComponents as a}from"./componentsUtils.js";import{globalCss as r}from"./globalCss.js";import{loadLabeledSwitchComponents as c,LabeledSwitch as d}from"./LabeledSwitch.js";import{legacyIcon as p}from"./legacyIcon.js";import"./widgetUtils.js";import{messageBundle as g}from"./decorators/messageBundle.js";import{tsx as h}from"./jsxFactory.js";import m from"./SnappingControls/SnappingControlsViewModel.js";import u from"./SnappingControls/VisibleElements.js";const y="esri-snapping-controls",b={base:y,widgetIcon:p.vertexGps,container:`${y}__container`,item:`${y}__item`,toggleBlock:`${y}__toggle-block`,layerListBlock:`${y}__layer-list-block`,layerList:`${y}__layer-list`,layerListFilter:`${y}__layer-list__filter`,layerListButton:`${y}__layer-list__button`,layerListItem:`${y}__layer-list__item`,layerListGroup:`${y}__layer-list__group`,nestedContainer:`${y}__nested-container`},_={checked:"check-square-f",unchecked:"square",indeterminate:"minus-square"};let L=class extends o{constructor(e,t){super(e,t),this._defaultViewModel=null,this._layerListFilter=null,this.iconClass=b.widgetIcon,this.icon=null,this.layerListOpen=!0,this.messages=null,this.visibleElements=new u,this._enableSnappingSwitchChange=e=>{this.snappingOptions.enabled=e},this._featureEnabledSwitchChange=e=>{this.snappingOptions.featureEnabled=e},this._selfEnabledSwitchChange=e=>{this.snappingOptions.selfEnabled=e},this._onToggleLayersButtonClick=e=>{this.viewModel.toggleSnappingForAllLayers(!this.viewModel.allLayersEnabled),requestAnimationFrame((()=>e.target.setFocus()))};const{snappingOptions:i,view:l,viewModel:s}=e;this.viewModel=s??(this._defaultViewModel=new m({snappingOptions:i,view:l}))}normalizeCtorArgs(e){const{snappingOptions:t,view:i,viewModel:l,...s}=e;return s}destroy(){this.viewModel!==this._defaultViewModel&&(this._defaultViewModel=i(this._defaultViewModel))}loadDependencies(){return Promise.all([a({accordion:()=>import("@esri/calcite-components/dist/components/calcite-accordion.js"),"accordion-item":()=>import("@esri/calcite-components/dist/components/calcite-accordion-item.js"),action:()=>import("@esri/calcite-components/dist/components/calcite-action.js"),block:()=>import("@esri/calcite-components/dist/components/calcite-block.js"),button:()=>import("@esri/calcite-components/dist/components/calcite-button.js"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon.js"),input:()=>import("@esri/calcite-components/dist/components/calcite-input.js"),list:()=>import("@esri/calcite-components/dist/components/calcite-list.js"),"list-item":()=>import("@esri/calcite-components/dist/components/calcite-list-item.js")}),c()])}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}set viewModel(e){e!==this._get("viewModel")&&(null!=this._defaultViewModel&&this._defaultViewModel===e||(this._defaultViewModel=i(this._defaultViewModel)),this._set("viewModel",e))}render(){const{label:e}=this;return h("div",{"aria-label":e,class:this.classes(b.base,r.widget)},h("div",{class:b.container},this._renderContent()))}_renderContent(){return[this._renderToggles(),this._renderLayerList()]}_renderToggles(){const{visibleElements:e}=this,i=[e.selfEnabledToggle?this._renderSelfEnabledToggle():null,e.featureEnabledToggle?this._renderFeatureEnabledToggle():null].filter(t),l=[e.enabledToggle?this._renderEnabledToggle():null,i.length>0?h("div",{class:b.nestedContainer},i):null].filter(t);return 0===l.length?null:h("calcite-block",{class:b.toggleBlock,heading:e.header?this.label:"",key:"toggle-block",open:!0},l)}_renderEnabledToggle(){const{messages:e,viewModel:t}=this,{snappingOptions:i}=t;return h(d,{checked:i.enabled,disabled:i.enabledToggled,key:`${this.id}__enabled-toggle`,label:e.enableSnapping,onChange:this._enableSnappingSwitchChange})}_renderSelfEnabledToggle(){const{messages:e,viewModel:t}=this,{snappingOptions:i}=t,l=i.enabled&&i.selfEnabled,s=i.enabledToggled||!i.enabled;return h(d,{checked:l,disabled:s,key:`${this.id}__self-enabled-toggle`,label:e.geometryGuides,onChange:this._selfEnabledSwitchChange})}_renderFeatureEnabledToggle(){const{messages:e,viewModel:t}=this,{snappingOptions:i}=t,l=i.enabled&&i.featureEnabled,s=i.enabledToggled||!i.enabled;return h(d,{checked:l,disabled:s,key:`${this.id}__feature-enabled-toggle`,label:e.featureToFeature,onChange:this._featureEnabledSwitchChange})}_renderLayerList(){if(!this.visibleElements.layerList)return null;const{messages:e,viewModel:t}=this,{snappingOptions:{enabled:i,enabledToggled:l}}=t,s=({target:{value:e}})=>{this._layerListFilter=""===e?null:new RegExp(e,"i")},n=t.layerListViewModel.operationalItems.length>9?h("calcite-input",{class:b.layerListFilter,clearable:!0,placeholder:e?.searchLayers,onCalciteInputInput:s}):null,o=l||!i,a=this.layerListOpen&&!o;return h("calcite-block",{class:b.layerListBlock,collapsible:!0,disabled:o,heading:e.snappingLayers,key:"list-block",open:a,onCalciteBlockToggle:e=>this.layerListOpen=e.target.open},n,this._renderToggleLayersButton(),h("calcite-list",{class:b.layerList},this._renderLayerListItemCollection(t.layerListViewModel.operationalItems,this._layerListFilter)))}_renderLayerListItemCollection(e,i){return e.map((e=>{if(!i||this._itemTitleMatchesFilter(e,i))return e.children.length>0?this._renderLayerListItemGroup(e):this._renderLayerListItem(e);const t=e.children.filter((e=>this._itemTitleMatchesFilter(e,i)));return t.length>0?this._renderLayerListItemGroup(e,t):null})).toArray().filter(t)}_renderToggleLayersButton(){if(!this.visibleElements.layerListToggleLayersButton)return null;const{viewModel:{allLayersEnabled:e},messages:t}=this,i=e?t.disableAllLayers:t.enableAllLayers;return h("calcite-button",{appearance:"transparent",class:b.layerListButton,label:i,name:"layer-toggle",onclick:this._onToggleLayersButtonClick,scale:"m"},i)}_renderLayerListItem(e){const{messages:{untitledLayer:t}}=this,i=e.title||t,l=e.enabled,s=()=>{this._handleLayerListItemChange({checked:!l,value:e.layer.id})};return h("calcite-list-item",{class:b.layerListItem,key:`${this.id}-list-item-${e.uid}`,label:i,onCalciteListItemSelect:s},h("calcite-icon",{icon:l?_.checked:_.unchecked,scale:"s",slot:"content-start"}))}_renderLayerListItemGroup(e,t){const{allChildrenEnabled:i,children:s,hasChildrenEnabled:n,title:o}=e,a=this.messages,r=o||a.untitledLayer,c=o&&""!==o?o:l(),d=!!t,p=t??s,g=i?_.checked:n?_.indeterminate:_.unchecked,m=i?a.disableAllLayers:a.enableAllLayers,u=()=>{this.viewModel.toggleSnappingForLayers(e.childLayerIds,!i)};return h("calcite-list-item",{class:b.layerListItem,key:c},h("calcite-accordion",{appearance:"transparent",class:b.layerListGroup},h("calcite-accordion-item",{expanded:d,heading:r,key:e.uid},h("calcite-action",{onclick:u,scale:"m",slot:"actions-start",text:m,textEnabled:!1},h("calcite-icon",{icon:g,scale:"s"})),h("calcite-list",null,this._renderLayerListItemCollection(p)))))}_itemTitleMatchesFilter(e,t){return null!=t&&t.test(e.title)}async _handleLayerListItemChange(e){e.checked?this.viewModel.enableSnappingForLayer(e.value):this.viewModel.disableSnappingForLayer(e.value)}};e([s()],L.prototype,"_defaultViewModel",void 0),e([s()],L.prototype,"_layerListFilter",void 0),e([s()],L.prototype,"iconClass",void 0),e([s()],L.prototype,"icon",void 0),e([s()],L.prototype,"label",null),e([s({type:Boolean,nonNullable:!0})],L.prototype,"layerListOpen",void 0),e([s(),g("esri/widgets/support/SnappingControls/t9n/SnappingControls")],L.prototype,"messages",void 0),e([s()],L.prototype,"snappingOptions",null),e([s()],L.prototype,"view",null),e([s()],L.prototype,"viewModel",null),e([s({type:u,nonNullable:!0})],L.prototype,"visibleElements",void 0),L=e([n("esri.widgets.support.SnappingControls")],L);const w=L;export{w as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../../chunks/tslib.es6.js";import"../../intl.js";import{eventKey as e}from"../../core/events.js";import{property as i}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{globalCss as a}from"./globalCss.js";import n from"./TimePickerViewModel.js";import"./widgetUtils.js";import{messageBundle as o}from"./decorators/messageBundle.js";import{tsx as l}from"./jsxFactory.js";import{DateTime as u}from"luxon";import{formatDate as h}from"../../intl/date.js";import{getLocale as c}from"../../intl/locale.js";const m="esri-time-picker",p={base:m,timePicker:`${m}__date-picker`,timePickerInput:`${m}__input`},d={hour:"numeric",minute:"numeric"},_="t",v=["ArrowDown","ArrowLeft","ArrowRight","ArrowUp","Tab"];function f(t){return null!=t&&h(t.valueOf(),d).includes(" ")}let P=class extends r{constructor(t,e){super(t,e),this._activePart=null,this._activeTime=null,this.messages=null,this.viewModel=new n}get value(){return this.viewModel.value}set value(t){this.viewModel.value=t}render(){const t=this._activeTime||this.viewModel.value;return l("div",{class:this.classes(p.base,a.widget)},l("input",{afterUpdate:this._handleInputUpdate,"aria-label":this.messages.inputTitle,bind:this,class:this.classes(p.timePickerInput,a.input),onblur:this._handleInputBlur,onfocus:this._handleInputFocus,onkeydown:this._handleInputKeydown,oninput:this._handleInputKeydown,onclick:this._handleInputClick,onpaste:this._handleInputPaste,onwheel:this._handleInputWheel,value:h(t.valueOf(),d)}))}_handleInputBlur(){this._activeTime?.isValid&&(this.viewModel.value=this._activeTime.toJSDate()),this._activeTime=null,this._activePart=null}_handleInputUpdate(t){this._selectPart(t,this._activePart)}_selectPart(t,e){const i=this._activeTime;if(!i||!t)return;const s=h(i.valueOf(),d),r=0,a=s.indexOf(":");if("hours"===e)return void t.setSelectionRange(r,a);const n=a+1,o=n+2;if("minutes"===e)return void t.setSelectionRange(n,o);const l=o+1,u=s.length;"meridiem"!==e||t.setSelectionRange(l,u)}_handleInputFocus(t){this._activePart="hours",this._activeTime=u.fromJSDate(this.viewModel.value).startOf("minute"),this._selectPart(t.target,"hours")}_caretIndexToPartName(t){const e=this._activeTime?.toFormat(_,{locale:c(),numberingSystem:"latn"});if(!e)return null;const i=e.indexOf(":"),s=e.indexOf(" ");return t<=i?"hours":t>i&&t<=s?"minutes":"meridiem"}_handleInputKeydown(t){const{ctrlKey:i,metaKey:s,shiftKey:r}=t,a=e(t),n=this._activeTime,o=this._activePart,l=/\d/.test(a),u=/^a|p$/i.test(a),h=s||i;if((v.includes(a)||l||"meridiem"===o&&u&&!h)&&null!=n){if("ArrowLeft"===a)this._activePart=this._prevPart();else if("ArrowRight"===a)this._activePart=this._nextPart();else if("Tab"===a){const t=r?this._prevPart():this._nextPart();if(t===this._activePart)return;this._activePart=t}else if("ArrowUp"===a)this._shift("up",o);else if("ArrowDown"===a)this._shift("down",o);else if(l)this._setTime(n,o,Number(a));else if(u){const t=a.toLowerCase(),e=n.hour;("a"===t&&e>=12||"p"===t&&e<12)&&this._shift("up",o)}t.preventDefault(),t.stopImmediatePropagation()}else h||(t.preventDefault(),t.stopImmediatePropagation())}_handleInputClick(t){const e=t.target;this._activePart=null,this.renderNow(),this._activePart=this._caretIndexToPartName(e.selectionStart??0)}_getOrderedParts(){return f(this._activeTime)?["hours","minutes","meridiem"]:["hours","minutes"]}_prevPart(){const t=this._getOrderedParts(),e=this._activePart?t.indexOf(this._activePart)-1:0;return t[Math.max(e,0)]}_nextPart(){const t=this._getOrderedParts(),e=this._activePart?t.indexOf(this._activePart)+1:0;return t[Math.min(e,t.length-1)]}_setTime(t,e,i){if("hours"===e){const e=f(t)?12:24,s=""+t.hour%e,r=i,a=Number(`${s}${i}`);2===s.length||a>e?this._activeTime=t.set({hour:r}):a<=e&&(this._activeTime=t.set({hour:a}))}else if("minutes"===e){const e=59,s=`${t.minute}`,r=i,a=Number(`${s}${i}`);2===s.length||a>e?this._activeTime=t.set({minute:r}):a<e&&(this._activeTime=t.set({minute:a}))}}_parseTime(t){if(!t)return null;const e={locale:c(),numberingSystem:"latn"};let i=u.fromFormat(t,_,e);return i.isValid?i:(i=u.fromISO(t,e),i.isValid?i:(i=u.fromRFC2822(t,e),i.isValid?i:(i=u.fromJSDate(new Date(t)),i.isValid?i:null)))}_handleInputPaste(t){const e=t.clipboardData?.getData("text/plain"),i=this._parseTime(e);i&&(this._activeTime=i),t.preventDefault(),t.stopImmediatePropagation()}_handleInputWheel(t){const e=t.deltaY<0?"up":"down";this._shift(e,this._activePart)}_shift(t,e){if(!e)return;const i="up"===t?"plus":"minus",s="meridiem"===e?12:1,r="hours"===e?"hour":"minutes"===e?"minute":"hours";this._activeTime=this._activeTime?.[i]({[r]:s})??null}};t([i(),o("esri/widgets/support/t9n/TimePicker")],P.prototype,"messages",void 0),t([i()],P.prototype,"value",null),t([i({type:n})],P.prototype,"viewModel",void 0),P=t([s("esri.widgets.support.TimePicker")],P);const w=P;export{w as default};
5
+ import{_ as t}from"../../chunks/tslib.es6.js";import"../../intl.js";import{eventKey as e}from"../../core/events.js";import{property as i}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{globalCss as a}from"./globalCss.js";import n from"./TimePickerViewModel.js";import"./widgetUtils.js";import{messageBundle as o}from"./decorators/messageBundle.js";import{tsx as l}from"./jsxFactory.js";import{DateTime as u}from"luxon";import{formatDate as h}from"../../intl/date.js";import{getLocale as c}from"../../intl/locale.js";const m="esri-time-picker",p={base:m,timePicker:`${m}__date-picker`,timePickerInput:`${m}__input`},d={hour:"numeric",minute:"numeric"},_="t",v=["ArrowDown","ArrowLeft","ArrowRight","ArrowUp","Tab"];function f(t){return null!=t&&h(t.valueOf(),d).includes(" ")}let P=class extends r{constructor(t,e){super(t,e),this._activePart=null,this._activeTime=null,this.messages=null,this.viewModel=new n}get value(){return this.viewModel.value}set value(t){this.viewModel.value=t}render(){const t=this._activeTime||this.viewModel.value;return l("div",{class:this.classes(p.base,a.widget)},l("input",{afterUpdate:this._handleInputUpdate,"aria-label":this.messages.inputTitle,bind:this,class:this.classes(p.timePickerInput,a.input),onblur:this._handleInputBlur,onclick:this._handleInputClick,onfocus:this._handleInputFocus,oninput:this._handleInputKeydown,onkeydown:this._handleInputKeydown,onpaste:this._handleInputPaste,onwheel:this._handleInputWheel,value:h(t.valueOf(),d)}))}_handleInputBlur(){this._activeTime?.isValid&&(this.viewModel.value=this._activeTime.toJSDate()),this._activeTime=null,this._activePart=null}_handleInputUpdate(t){this._selectPart(t,this._activePart)}_selectPart(t,e){const i=this._activeTime;if(!i||!t)return;const s=h(i.valueOf(),d),r=0,a=s.indexOf(":");if("hours"===e)return void t.setSelectionRange(r,a);const n=a+1,o=n+2;if("minutes"===e)return void t.setSelectionRange(n,o);const l=o+1,u=s.length;"meridiem"!==e||t.setSelectionRange(l,u)}_handleInputFocus(t){this._activePart="hours",this._activeTime=u.fromJSDate(this.viewModel.value).startOf("minute"),this._selectPart(t.target,"hours")}_caretIndexToPartName(t){const e=this._activeTime?.toFormat(_,{locale:c(),numberingSystem:"latn"});if(!e)return null;const i=e.indexOf(":"),s=e.indexOf(" ");return t<=i?"hours":t>i&&t<=s?"minutes":"meridiem"}_handleInputKeydown(t){const{ctrlKey:i,metaKey:s,shiftKey:r}=t,a=e(t),n=this._activeTime,o=this._activePart,l=/\d/.test(a),u=/^a|p$/i.test(a),h=s||i;if((v.includes(a)||l||"meridiem"===o&&u&&!h)&&null!=n){if("ArrowLeft"===a)this._activePart=this._prevPart();else if("ArrowRight"===a)this._activePart=this._nextPart();else if("Tab"===a){const t=r?this._prevPart():this._nextPart();if(t===this._activePart)return;this._activePart=t}else if("ArrowUp"===a)this._shift("up",o);else if("ArrowDown"===a)this._shift("down",o);else if(l)this._setTime(n,o,Number(a));else if(u){const t=a.toLowerCase(),e=n.hour;("a"===t&&e>=12||"p"===t&&e<12)&&this._shift("up",o)}t.preventDefault(),t.stopImmediatePropagation()}else h||(t.preventDefault(),t.stopImmediatePropagation())}_handleInputClick(t){const e=t.target;this._activePart=null,this.renderNow(),this._activePart=this._caretIndexToPartName(e.selectionStart??0)}_getOrderedParts(){return f(this._activeTime)?["hours","minutes","meridiem"]:["hours","minutes"]}_prevPart(){const t=this._getOrderedParts(),e=this._activePart?t.indexOf(this._activePart)-1:0;return t[Math.max(e,0)]}_nextPart(){const t=this._getOrderedParts(),e=this._activePart?t.indexOf(this._activePart)+1:0;return t[Math.min(e,t.length-1)]}_setTime(t,e,i){if("hours"===e){const e=f(t)?12:24,s=""+t.hour%e,r=i,a=Number(`${s}${i}`);2===s.length||a>e?this._activeTime=t.set({hour:r}):a<=e&&(this._activeTime=t.set({hour:a}))}else if("minutes"===e){const e=59,s=`${t.minute}`,r=i,a=Number(`${s}${i}`);2===s.length||a>e?this._activeTime=t.set({minute:r}):a<e&&(this._activeTime=t.set({minute:a}))}}_parseTime(t){if(!t)return null;const e={locale:c(),numberingSystem:"latn"};let i=u.fromFormat(t,_,e);return i.isValid?i:(i=u.fromISO(t,e),i.isValid?i:(i=u.fromRFC2822(t,e),i.isValid?i:(i=u.fromJSDate(new Date(t)),i.isValid?i:null)))}_handleInputPaste(t){const e=t.clipboardData?.getData("text/plain"),i=this._parseTime(e);i&&(this._activeTime=i),t.preventDefault(),t.stopImmediatePropagation()}_handleInputWheel(t){const e=t.deltaY<0?"up":"down";this._shift(e,this._activePart)}_shift(t,e){if(!e)return;const i="up"===t?"plus":"minus",s="meridiem"===e?12:1,r="hours"===e?"hour":"minutes"===e?"minute":"hours";this._activeTime=this._activeTime?.[i]({[r]:s})??null}};t([i(),o("esri/widgets/support/t9n/TimePicker")],P.prototype,"messages",void 0),t([i()],P.prototype,"value",null),t([i({type:n})],P.prototype,"viewModel",void 0),P=t([s("esri.widgets.support.TimePicker")],P);const w=P;export{w as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../../chunks/tslib.es6.js";import{property as e}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import s from"../Widget.js";import{loadCalciteComponents as i}from"./componentsUtils.js";import{getTimezoneInfos as n}from"./timeWidgetUtils.js";import"./widgetUtils.js";import{messageBundle as r}from"./decorators/messageBundle.js";import{tsx as p}from"./jsxFactory.js";const c="esri-timezone-picker",l={base:c,trigger:`${c}__trigger`,itemTitle:`${c}__item-title`,itemDescription:`${c}__item_description`};let d=class extends s{constructor(t,e){super(t,e),this.value=null,this.onChange=null,this.open=!1,this.onOpen=null,this.onClose=null,this._selectedId=null,this._onOpen=()=>{this.open=!0,this.onOpen?.()},this._onClose=()=>{this.open=!1,this.onClose?.()},this._killEvent=t=>(t.stopPropagation(),!0),this._onChange=t=>{const e=t.target,o=e.selectedItems?.[0].getAttribute("data-id"),s=a(this._gmtOffsets,o)?.utcOffset;s&&(this._selectedId=o,this.onChange?.(s))}}loadDependencies(){return i({button:()=>import("@esri/calcite-components/dist/components/calcite-button.js"),dropdown:()=>import("@esri/calcite-components/dist/components/calcite-dropdown.js"),"dropdown-group":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-group.js"),"dropdown-item":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-item.js")})}render(){const t=this._messages;if(!t)return p("div",{key:"empty",class:l.base});const e=this._selectedItem,o=u(e);return p("div",{key:"container",class:l.base,onpointerdown:this._killEvent},p("calcite-dropdown",{overlayPositioning:"fixed",open:this.open,placement:"bottom-end",scale:"s",onCalciteDropdownSelect:this._onChange,onCalciteDropdownOpen:this._onOpen,onCalciteDropdownClose:this._onClose},p("calcite-button",{appearance:"transparent",class:l.trigger,key:"trigger",kind:"neutral",scale:"s",slot:"trigger",tabIndex:0,title:t.chooseTimezone},e?.short??""),p("calcite-dropdown-group",{selectionMode:"single"},this._gmtOffsets.map((t=>{const e=u(t);return p("calcite-dropdown-item",{key:e,"data-id":e,selected:o===e},p("div",{key:"title",class:l.itemTitle},t.shortWithUTC),p("div",{key:"description",class:l.itemDescription},t.long))})))))}get _gmtOffsets(){const t=this._messages;return t?n(t):[]}get _selectedItem(){const t=this._gmtOffsets,e=this.value,o=a(t,this._selectedId);return o?.utcOffset===e?o:m(t,e)}};function a(t,e){return t.find((t=>u(t)===e))}function m(t,e){return t.find((t=>t.utcOffset===e))}function u(t){return t?`${t.utcOffset}-${t.long}`:void 0}t([e()],d.prototype,"value",void 0),t([e()],d.prototype,"onChange",void 0),t([e()],d.prototype,"open",void 0),t([e()],d.prototype,"onOpen",void 0),t([e()],d.prototype,"onClose",void 0),t([e(),r("esri/widgets/support/t9n/timezone")],d.prototype,"_messages",void 0),t([e()],d.prototype,"_gmtOffsets",null),t([e()],d.prototype,"_selectedItem",null),t([e()],d.prototype,"_selectedId",void 0),d=t([o("esri.widgets.support.TimezonePicker")],d);export{d as TimezonePicker,l as css};
5
+ import{_ as t}from"../../chunks/tslib.es6.js";import{property as e}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import s from"../Widget.js";import{loadCalciteComponents as i}from"./componentsUtils.js";import{getTimezoneInfos as n}from"./timeWidgetUtils.js";import"./widgetUtils.js";import{messageBundle as r}from"./decorators/messageBundle.js";import{tsx as p}from"./jsxFactory.js";const c="esri-timezone-picker",l={base:c,trigger:`${c}__trigger`,itemTitle:`${c}__item-title`,itemDescription:`${c}__item_description`};let d=class extends s{constructor(t,e){super(t,e),this.value=null,this.onChange=null,this.open=!1,this.onOpen=null,this.onClose=null,this._selectedId=null,this._onOpen=()=>{this.open=!0,this.onOpen?.()},this._onClose=()=>{this.open=!1,this.onClose?.()},this._killEvent=t=>(t.stopPropagation(),!0),this._onChange=t=>{const e=t.target,o=e.selectedItems?.[0].getAttribute("data-id"),s=a(this._gmtOffsets,o)?.utcOffset;s&&(this._selectedId=o,this.onChange?.(s))}}loadDependencies(){return i({button:()=>import("@esri/calcite-components/dist/components/calcite-button.js"),dropdown:()=>import("@esri/calcite-components/dist/components/calcite-dropdown.js"),"dropdown-group":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-group.js"),"dropdown-item":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-item.js")})}render(){const t=this._messages;if(!t)return p("div",{class:l.base,key:"empty"});const e=this._selectedItem,o=u(e);return p("div",{class:l.base,key:"container",onpointerdown:this._killEvent},p("calcite-dropdown",{open:this.open,overlayPositioning:"fixed",placement:"bottom-end",scale:"s",onCalciteDropdownClose:this._onClose,onCalciteDropdownOpen:this._onOpen,onCalciteDropdownSelect:this._onChange},p("calcite-button",{appearance:"transparent",class:l.trigger,key:"trigger",kind:"neutral",scale:"s",slot:"trigger",tabIndex:0,title:t.chooseTimezone},e?.short??""),p("calcite-dropdown-group",{selectionMode:"single"},this._gmtOffsets.map((t=>{const e=u(t);return p("calcite-dropdown-item",{"data-id":e,key:e,selected:o===e},p("div",{class:l.itemTitle,key:"title"},t.shortWithUTC),p("div",{class:l.itemDescription,key:"description"},t.long))})))))}get _gmtOffsets(){const t=this._messages;return t?n(t):[]}get _selectedItem(){const t=this._gmtOffsets,e=this.value,o=a(t,this._selectedId);return o?.utcOffset===e?o:m(t,e)}};function a(t,e){return t.find((t=>u(t)===e))}function m(t,e){return t.find((t=>t.utcOffset===e))}function u(t){return t?`${t.utcOffset}-${t.long}`:void 0}t([e()],d.prototype,"value",void 0),t([e()],d.prototype,"onChange",void 0),t([e()],d.prototype,"open",void 0),t([e()],d.prototype,"onOpen",void 0),t([e()],d.prototype,"onClose",void 0),t([e(),r("esri/widgets/support/t9n/timezone")],d.prototype,"_messages",void 0),t([e()],d.prototype,"_gmtOffsets",null),t([e()],d.prototype,"_selectedItem",null),t([e()],d.prototype,"_selectedId",void 0),d=t([o("esri.widgets.support.TimezonePicker")],d);export{d as TimezonePicker,l as css};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import{isMeasurementSystem as t}from"../../core/unitUtils.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as c}from"./componentsUtils.js";import"./widgetUtils.js";import{messageBundle as i}from"./decorators/messageBundle.js";import{tsx as l}from"./jsxFactory.js";const a="esri-unit-select",p={base:a,label:`${a}__label`,select:`${a}__select`};let n=class extends r{constructor(e,t){super(e,t),this._onSelectChange=e=>{this.onChange(e.target.value)}}loadDependencies(){return c({label:()=>import("@esri/calcite-components/dist/components/calcite-label.js"),option:()=>import("@esri/calcite-components/dist/components/calcite-option.js"),select:()=>import("@esri/calcite-components/dist/components/calcite-select.js")})}render(){const{messages:e,options:s,selectLabel:o,value:r,_onSelectChange:c}=this;return l("div",{key:"units",class:p.base},l("calcite-label",{class:p.label},o,l("calcite-select",{class:p.select,label:o,onCalciteSelectChange:c},s.map((s=>l("calcite-option",{key:s,value:s,selected:s===r},t(s)?e.systems[s]:e.units[s]?.pluralCapitalized))))))}};e([s()],n.prototype,"options",void 0),e([s()],n.prototype,"onChange",void 0),e([s()],n.prototype,"selectLabel",void 0),e([s()],n.prototype,"value",void 0),e([s(),i("esri/core/t9n/Units")],n.prototype,"messages",void 0),n=e([o("esri.widgets.support.UnitSelect")],n);export{n as UnitSelect};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import{isMeasurementSystem as t}from"../../core/unitUtils.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as c}from"./componentsUtils.js";import"./widgetUtils.js";import{messageBundle as i}from"./decorators/messageBundle.js";import{tsx as l}from"./jsxFactory.js";const a="esri-unit-select",p={base:a,label:`${a}__label`,select:`${a}__select`};let n=class extends r{constructor(e,t){super(e,t),this._onSelectChange=e=>{this.onChange(e.target.value)}}loadDependencies(){return c({label:()=>import("@esri/calcite-components/dist/components/calcite-label.js"),option:()=>import("@esri/calcite-components/dist/components/calcite-option.js"),select:()=>import("@esri/calcite-components/dist/components/calcite-select.js")})}render(){const{messages:e,options:s,selectLabel:o,value:r,_onSelectChange:c}=this;return l("div",{class:p.base,key:"units"},l("calcite-label",{class:p.label},o,l("calcite-select",{class:p.select,label:o,onCalciteSelectChange:c},s.map((s=>l("calcite-option",{key:s,selected:s===r,value:s},t(s)?e.systems[s]:e.units[s]?.pluralCapitalized))))))}};e([s()],n.prototype,"options",void 0),e([s()],n.prototype,"onChange",void 0),e([s()],n.prototype,"selectLabel",void 0),e([s()],n.prototype,"value",void 0),e([s(),i("esri/core/t9n/Units")],n.prototype,"messages",void 0),n=e([o("esri.widgets.support.UnitSelect")],n);export{n as UnitSelect};