@dynatrace/strato-components 3.5.2 → 3.6.0

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 (2331) hide show
  1. package/buttons/button/Button.css +15 -15
  2. package/buttons/button/Button.sty.js +4 -4
  3. package/buttons/intent-button/IntentButton.css +1 -1
  4. package/buttons/intent-button/IntentButton.sty.js +1 -1
  5. package/buttons/notify-button/NotifyButton.css +2 -2
  6. package/buttons/notify-button/NotifyButton.sty.js +2 -2
  7. package/charts/annotations-chart/AnnotationsChart.js +9 -1
  8. package/charts/annotations-chart/components/AnnotationsDisplay.d.ts +1 -0
  9. package/charts/annotations-chart/constants.js +2 -1
  10. package/charts/annotations-chart/types/annotations-chart-config-props.d.ts +9 -0
  11. package/charts/annotations-chart/types/annotations-chart-props.d.ts +8 -0
  12. package/charts/annotations-chart/utils/annotations-chart-config.js +1 -0
  13. package/charts/annotations-chart/utils/populate-missing-tooltip-props.d.ts +5 -5
  14. package/charts/annotations-chart/utils/populate-missing-tooltip-props.js +8 -3
  15. package/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.css +2 -2
  16. package/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.sty.js +2 -2
  17. package/charts/core/components/annotations/AnnotationsAtom.css +1 -1
  18. package/charts/core/components/annotations/AnnotationsAtom.sty.js +1 -1
  19. package/charts/core/components/annotations/components/AnnotationsRenderer.d.ts +0 -2
  20. package/charts/core/components/annotations/components/AnnotationsRenderer.js +4 -3
  21. package/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.css +1 -1
  22. package/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.sty.js +1 -1
  23. package/charts/core/components/annotations/components/displays/AnnotationsContainer.d.ts +14 -0
  24. package/charts/core/components/annotations/components/displays/AnnotationsContainer.js +30 -0
  25. package/charts/core/components/annotations/components/displays/AnnotationsNumericalDisplay.d.ts +1 -0
  26. package/charts/core/components/annotations/components/displays/AnnotationsNumericalDisplay.js +13 -18
  27. package/charts/core/components/annotations/components/displays/AnnotationsTimeDisplay.d.ts +1 -0
  28. package/charts/core/components/annotations/components/displays/AnnotationsTimeDisplay.js +13 -18
  29. package/charts/core/components/annotations/components/overlays/AnnotationsOverlays.css +1 -1
  30. package/charts/core/components/annotations/components/overlays/AnnotationsOverlays.sty.js +1 -1
  31. package/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.css +1 -1
  32. package/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.sty.js +1 -1
  33. package/charts/core/components/annotations/components/tooltip/AnnotationsCustomizedTooltip.js +2 -1
  34. package/charts/core/components/annotations/components/tooltip/AnnotationsDefaultTooltipContent.d.ts +20 -0
  35. package/charts/core/components/annotations/components/tooltip/AnnotationsDefaultTooltipContent.js +145 -0
  36. package/charts/core/components/annotations/components/tooltip/AnnotationsOverlayTooltip.d.ts +24 -0
  37. package/charts/core/components/annotations/components/tooltip/AnnotationsOverlayTooltip.js +136 -0
  38. package/charts/core/components/annotations/components/tooltip/types/annotations-tooltip-props.d.ts +1 -1
  39. package/charts/core/components/annotations/components/tooltip/utils/prepare-custom-tooltip-data.js +8 -11
  40. package/charts/core/components/annotations/constants.d.ts +1 -0
  41. package/charts/core/components/annotations/constants.js +2 -0
  42. package/charts/core/components/annotations/hooks/useOverlayEvents.js +15 -0
  43. package/charts/core/components/axes/Axis.css +1 -1
  44. package/charts/core/components/axes/Axis.sty.js +1 -1
  45. package/charts/core/components/axes/components/PanningControls/PanningControls.css +16 -16
  46. package/charts/core/components/axes/components/PanningControls/PanningControls.sty.js +2 -2
  47. package/charts/core/components/axes/utils/calculate-axis-size.d.ts +1 -1
  48. package/charts/core/components/axes/utils/calculate-axis-size.js +3 -1
  49. package/charts/core/components/axes/utils/get-tick-label-props.d.ts +34 -0
  50. package/charts/core/components/axes/utils/get-tick-label-props.js +47 -1
  51. package/charts/core/components/axes/utils/tick-formatters.js +9 -1
  52. package/charts/core/components/chart-grid/ChartGrid.css +3 -3
  53. package/charts/core/components/chart-grid/ChartGrid.sty.js +3 -3
  54. package/charts/core/components/chart-layout/components/styles.css +15 -15
  55. package/charts/core/components/chart-layout/components/styles.sty.js +4 -4
  56. package/charts/core/components/chart-states/ChartState.css +4 -4
  57. package/charts/core/components/chart-states/ChartState.sty.js +4 -4
  58. package/charts/core/components/crosshair/components/Magnifier.css +7 -7
  59. package/charts/core/components/crosshair/components/Magnifier.sty.js +7 -7
  60. package/charts/core/components/interactions-overlay/InteractionsOverlay.css +5 -5
  61. package/charts/core/components/interactions-overlay/InteractionsOverlay.sty.js +2 -2
  62. package/charts/core/components/legend/categorical/ChartLegend.css +1 -1
  63. package/charts/core/components/legend/categorical/ChartLegend.sty.js +1 -1
  64. package/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.css +3 -3
  65. package/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.sty.js +3 -3
  66. package/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.css +17 -17
  67. package/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.sty.js +6 -6
  68. package/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.css +3 -3
  69. package/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.sty.js +1 -1
  70. package/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.css +8 -8
  71. package/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.sty.js +4 -4
  72. package/charts/core/components/legend/range/RangeLegend.css +3 -3
  73. package/charts/core/components/legend/range/RangeLegend.sty.js +1 -1
  74. package/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.css +2 -2
  75. package/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.sty.js +1 -1
  76. package/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.css +1 -1
  77. package/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.sty.js +1 -1
  78. package/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.css +3 -3
  79. package/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.sty.js +1 -1
  80. package/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.css +3 -3
  81. package/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.sty.js +1 -1
  82. package/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.css +5 -5
  83. package/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.sty.js +1 -1
  84. package/charts/core/components/loader-overlay/LoaderOverlay.css +2 -2
  85. package/charts/core/components/loader-overlay/LoaderOverlay.sty.js +2 -2
  86. package/charts/core/components/overlay-tooltip/OverlayTooltip.d.ts +3 -0
  87. package/charts/core/components/overlay-tooltip/OverlayTooltip.js +4 -0
  88. package/charts/core/components/overlay-tooltip/_to-be-removed/DummyInteractionsOverlay.js +8 -5
  89. package/charts/core/components/overlay-tooltip/_to-be-removed/_OverlayTooltipWIPStory.js +2 -2
  90. package/charts/core/components/overlay-tooltip/components/DynamicTooltipRenderer.js +7 -6
  91. package/charts/core/components/overlay-tooltip/components/Footer.d.ts +13 -0
  92. package/charts/core/components/overlay-tooltip/components/{TooltipFooter.js → Footer.js} +5 -8
  93. package/charts/core/components/overlay-tooltip/components/global-actions/Action.js +6 -0
  94. package/charts/core/components/overlay-tooltip/components/global-actions/GlobalActions.d.ts +2 -2
  95. package/charts/core/components/overlay-tooltip/components/global-actions/GlobalActions.js +4 -14
  96. package/charts/core/components/overlay-tooltip/components/global-actions/actions.css +4 -4
  97. package/charts/core/components/overlay-tooltip/components/global-actions/actions.sty.js +2 -2
  98. package/charts/core/components/overlay-tooltip/components/header/Header.css +6 -6
  99. package/charts/core/components/overlay-tooltip/components/header/Header.d.ts +1 -0
  100. package/charts/core/components/overlay-tooltip/components/header/Header.sty.js +6 -6
  101. package/charts/core/components/overlay-tooltip/components/header/types/header.d.ts +3 -3
  102. package/charts/core/components/overlay-tooltip/components/series/SeriesItem.js +31 -8
  103. package/charts/core/components/overlay-tooltip/components/series/SeriesItemContent.d.ts +5 -0
  104. package/charts/core/components/overlay-tooltip/components/series/SeriesItemContent.js +35 -3
  105. package/charts/core/components/overlay-tooltip/components/series/SeriesSymbol.js +1 -1
  106. package/charts/core/components/overlay-tooltip/components/series/hooks/use-series-item-display-state.d.ts +5 -0
  107. package/charts/core/components/overlay-tooltip/components/series/hooks/use-series-item-display-state.js +58 -6
  108. package/charts/core/components/overlay-tooltip/components/series/seriesSymbol.css +2 -2
  109. package/charts/core/components/overlay-tooltip/components/series/seriesSymbol.sty.js +2 -2
  110. package/charts/core/components/overlay-tooltip/components/series/utils/get-name-text-style.d.ts +1 -1
  111. package/charts/core/components/overlay-tooltip/components/series/utils/get-name-text-style.js +4 -3
  112. package/charts/core/components/overlay-tooltip/hooks/useTooltipImperativeHandle.js +3 -11
  113. package/charts/core/components/overlay-tooltip/overlay.js +8 -8
  114. package/charts/core/components/overlay-tooltip/tooltip.css +92 -44
  115. package/charts/core/components/overlay-tooltip/tooltip.sty.d.ts +22 -0
  116. package/charts/core/components/overlay-tooltip/tooltip.sty.js +46 -34
  117. package/charts/core/components/overlay-tooltip/types/series.d.ts +2 -0
  118. package/charts/core/components/overlay-tooltip/types.d.ts +11 -32
  119. package/charts/core/components/overlay-tooltip/useTooltipActions.d.ts +21 -0
  120. package/charts/core/components/overlay-tooltip/useTooltipActions.js +85 -0
  121. package/charts/core/components/overlay-tooltip/useTooltipReducer.d.ts +1 -4
  122. package/charts/core/components/overlay-tooltip/useTooltipReducer.js +9 -11
  123. package/charts/core/components/overlay-tooltip/utils/build-content.d.ts +1 -0
  124. package/charts/core/components/overlay-tooltip/utils/build-content.js +41 -36
  125. package/charts/core/components/overlay-tooltip/utils/estimate-series-item-size.js +19 -3
  126. package/charts/core/components/overlays/ChartOverlaysBorder.css +5 -5
  127. package/charts/core/components/overlays/ChartOverlaysBorder.sty.js +5 -5
  128. package/charts/core/components/selection-area/SelectionArea.css +9 -9
  129. package/charts/core/components/selection-area/SelectionArea.sty.js +4 -4
  130. package/charts/core/components/shape/BubbleShape/BubbleShape.css +5 -5
  131. package/charts/core/components/shape/BubbleShape/BubbleShape.sty.js +3 -3
  132. package/charts/core/components/shape/EmojiShape/EmojiShape.css +3 -3
  133. package/charts/core/components/shape/EmojiShape/EmojiShape.sty.js +1 -1
  134. package/charts/core/components/shape/IconShape/IconShape.css +3 -3
  135. package/charts/core/components/shape/IconShape/IconShape.sty.js +1 -1
  136. package/charts/core/components/shape/styles/DataPointShape.css +8 -8
  137. package/charts/core/components/shape/styles/DataPointShape.sty.js +4 -4
  138. package/charts/core/components/shared-chart-interactions/SharedChartInteractions.css +1 -1
  139. package/charts/core/components/shared-chart-interactions/SharedChartInteractions.sty.js +1 -1
  140. package/charts/core/components/single-value-renderer/SingleValueRenderer.css +5 -5
  141. package/charts/core/components/single-value-renderer/SingleValueRenderer.sty.js +5 -5
  142. package/charts/core/components/single-value-renderer/components/ContentGrid.css +1 -1
  143. package/charts/core/components/single-value-renderer/components/ContentGrid.sty.js +1 -1
  144. package/charts/core/components/single-value-renderer/components/Icon.css +3 -3
  145. package/charts/core/components/single-value-renderer/components/Icon.sty.js +2 -2
  146. package/charts/core/components/single-value-renderer/components/Label.css +1 -1
  147. package/charts/core/components/single-value-renderer/components/Label.sty.js +1 -1
  148. package/charts/core/components/single-value-renderer/components/SingleValueToolbar.css +1 -1
  149. package/charts/core/components/single-value-renderer/components/SingleValueToolbar.sty.js +1 -1
  150. package/charts/core/components/single-value-renderer/components/Value.css +5 -5
  151. package/charts/core/components/single-value-renderer/components/Value.sty.js +3 -3
  152. package/charts/core/components/single-value-renderer/components/trend/Trend.css +3 -3
  153. package/charts/core/components/single-value-renderer/components/trend/Trend.sty.js +3 -3
  154. package/charts/core/components/single-value-renderer/components/trend/components/Icon.css +2 -2
  155. package/charts/core/components/single-value-renderer/components/trend/components/Icon.sty.js +1 -1
  156. package/charts/core/components/single-value-renderer/types/single-value-base-props.d.ts +4 -0
  157. package/charts/core/components/sparkline-display/Sparkline.css +6 -6
  158. package/charts/core/components/sparkline-display/Sparkline.sty.js +2 -2
  159. package/charts/core/components/text-ellipsis/ChartTextEllipsis.css +7 -7
  160. package/charts/core/components/text-ellipsis/ChartTextEllipsis.sty.js +3 -3
  161. package/charts/core/components/threshold-bar/styles.css +9 -9
  162. package/charts/core/components/threshold-bar/styles.sty.js +2 -2
  163. package/charts/core/components/toolbar/ChartToolbarRenderer.css +16 -16
  164. package/charts/core/components/toolbar/ChartToolbarRenderer.sty.js +8 -8
  165. package/charts/core/components/toolbar/components/ChartDataMenu.css +2 -2
  166. package/charts/core/components/toolbar/components/ChartDataMenu.sty.js +1 -1
  167. package/charts/core/components/toolbar/components/Control.css +17 -17
  168. package/charts/core/components/toolbar/components/Control.sty.js +5 -5
  169. package/charts/core/components/toolbar/components/ToolbarMenu.css +4 -4
  170. package/charts/core/components/toolbar/components/ToolbarMenu.sty.js +2 -2
  171. package/charts/core/components/tooltip/ChartTooltip/ChartTooltip.css +6 -6
  172. package/charts/core/components/tooltip/ChartTooltip/ChartTooltip.sty.js +2 -2
  173. package/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.css +8 -8
  174. package/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.sty.js +3 -3
  175. package/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.css +2 -2
  176. package/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.sty.js +1 -1
  177. package/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.css +1 -1
  178. package/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.sty.js +1 -1
  179. package/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.css +6 -6
  180. package/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.sty.js +2 -2
  181. package/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.css +7 -7
  182. package/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.sty.js +6 -6
  183. package/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.css +1 -1
  184. package/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.sty.js +1 -1
  185. package/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.css +1 -1
  186. package/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.sty.js +1 -1
  187. package/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.css +2 -2
  188. package/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.sty.js +1 -1
  189. package/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.css +1 -1
  190. package/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.sty.js +1 -1
  191. package/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.css +3 -3
  192. package/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.sty.js +2 -2
  193. package/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.css +1 -1
  194. package/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.sty.js +1 -1
  195. package/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.css +2 -2
  196. package/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.sty.js +2 -2
  197. package/charts/core/components/tooltip/section-components/atoms/styles.css +3 -3
  198. package/charts/core/components/tooltip/section-components/atoms/styles.sty.js +3 -3
  199. package/charts/core/components/tooltip/shared/styles/SeriesBasedContent.css +12 -12
  200. package/charts/core/components/tooltip/shared/styles/SeriesBasedContent.sty.js +7 -7
  201. package/charts/core/components/tooltip/shared/styles/TooltipBody.css +1 -1
  202. package/charts/core/components/tooltip/shared/styles/TooltipBody.sty.js +1 -1
  203. package/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.css +1 -1
  204. package/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.sty.js +1 -1
  205. package/charts/core/components/tooltip-atoms/components/styles.css +4 -4
  206. package/charts/core/components/tooltip-atoms/components/styles.sty.js +4 -4
  207. package/charts/core/components/zoom/ZoomCursors.css +2 -2
  208. package/charts/core/components/zoom/ZoomCursors.sty.js +3 -3
  209. package/charts/core/hooks/useOverlayEventHandlers.js +8 -25
  210. package/charts/core/typographyStyles.css +1 -1
  211. package/charts/core/typographyStyles.sty.js +1 -1
  212. package/charts/core/utils/adaptively-reduce-horizontal-ticks.d.ts +32 -0
  213. package/charts/core/utils/adaptively-reduce-horizontal-ticks.js +61 -0
  214. package/charts/core/utils/has-horizontal-label-collision.d.ts +29 -0
  215. package/charts/core/utils/has-horizontal-label-collision.js +75 -0
  216. package/charts/core/utils/is-feature-enabled.d.ts +1 -0
  217. package/charts/core/utils/is-feature-enabled.js +2 -1
  218. package/charts/gantt-chart/GanttChartLine.css +1 -1
  219. package/charts/gantt-chart/GanttChartLine.sty.js +1 -1
  220. package/charts/gantt-chart/components/GanttChartLineRenderer.css +1 -1
  221. package/charts/gantt-chart/components/GanttChartLineRenderer.sty.js +1 -1
  222. package/charts/gantt-chart/components/tooltip/GanttChartTooltip.css +1 -1
  223. package/charts/gantt-chart/components/tooltip/GanttChartTooltip.sty.js +1 -1
  224. package/charts/gauge/GaugeChart.d.ts +1 -1
  225. package/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.css +1 -1
  226. package/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.sty.js +1 -1
  227. package/charts/gauge/components/GaugeChartTooltip/GaugeOverlayTooltip.js +12 -2
  228. package/charts/gauge/components/GaugeLabel/GaugeLabel.css +6 -6
  229. package/charts/gauge/components/GaugeLabel/GaugeLabel.sty.js +3 -3
  230. package/charts/gauge/components/GaugeLabels.js +3 -4
  231. package/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.css +3 -3
  232. package/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.sty.js +1 -1
  233. package/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.css +4 -4
  234. package/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.js +12 -11
  235. package/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.sty.js +3 -3
  236. package/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.css +2 -2
  237. package/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.sty.js +2 -2
  238. package/charts/gauge/constants.d.ts +1 -0
  239. package/charts/gauge/constants.js +2 -0
  240. package/charts/gauge/contexts/GaugeChartTooltipContext.d.ts +9 -0
  241. package/charts/gauge/contexts/GaugeChartTooltipContext.js +27 -0
  242. package/charts/gauge/hooks/useGaugeChartMinMaxLabelsPosition.d.ts +1 -0
  243. package/charts/gauge/hooks/useGaugeChartMinMaxLabelsPosition.js +12 -1
  244. package/charts/gauge/providers/GaugeChartProviders.js +11 -3
  245. package/charts/gauge/slots/Tooltip.d.ts +58 -1
  246. package/charts/gauge/slots/Tooltip.js +1 -1
  247. package/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.css +1 -1
  248. package/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.sty.js +1 -1
  249. package/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.css +1 -1
  250. package/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.sty.js +1 -1
  251. package/charts/histogram/components/overlays/HistogramOverlays.css +2 -2
  252. package/charts/histogram/components/overlays/HistogramOverlays.sty.js +2 -2
  253. package/charts/histogram/types/histogram-props.d.ts +5 -4
  254. package/charts/honeycomb/HoneycombChart.css +1 -1
  255. package/charts/honeycomb/HoneycombChart.d.ts +4 -0
  256. package/charts/honeycomb/HoneycombChart.js +3 -1
  257. package/charts/honeycomb/HoneycombChart.sty.js +1 -1
  258. package/charts/honeycomb/components/HiveOverlay.css +1 -1
  259. package/charts/honeycomb/components/HiveOverlay.sty.js +1 -1
  260. package/charts/honeycomb/components/canvas/HiveCanvasLayout.css +1 -1
  261. package/charts/honeycomb/components/canvas/HiveCanvasLayout.sty.js +1 -1
  262. package/charts/honeycomb/components/tooltip/HoneycombOverlayTooltip.js +16 -1
  263. package/charts/honeycomb/context/honeycomb-custom-tooltip.context.d.ts +2 -0
  264. package/charts/honeycomb/context/honeycomb-custom-tooltip.context.js +24 -0
  265. package/charts/honeycomb/hooks/use-honeycomb-custom-tooltip.d.ts +1 -0
  266. package/charts/{gauge/contexts/GaugeChartTooltipNameContext.js → honeycomb/hooks/use-honeycomb-custom-tooltip.js} +6 -9
  267. package/charts/honeycomb/providers/honeycomb-configuration.provider.js +2 -1
  268. package/charts/honeycomb/slots/Tooltip.d.ts +5 -0
  269. package/charts/{core/components/annotations/components/tooltip/AnnotationsTooltip.sty.js → honeycomb/slots/Tooltip.js} +6 -6
  270. package/charts/honeycomb/types/honeycomb-config-properties.d.ts +4 -1
  271. package/charts/honeycomb/types/honeycomb-internal.d.ts +36 -0
  272. package/charts/honeycomb/utils/build-honeycomb-config.js +2 -1
  273. package/charts/honeycomb/utils/build-overlay-tooltip-data.js +5 -1
  274. package/charts/honeycomb/utils/iterate-honeycomb-slots.js +11 -1
  275. package/charts/index.d.ts +10 -7
  276. package/charts/index.js +5 -3
  277. package/charts/meter-bar/multi-meter-bar/MultiMeterBarChart.js +1 -1
  278. package/charts/meter-bar/multi-meter-bar/components/MultiMeterBarChartOverlay/MultiMeterBarChartOverlay.js +1 -1
  279. package/charts/meter-bar/multi-meter-bar/components/MultiMeterBarChartOverlay/MultiMeterBarChartOverlayWithTooltip.js +34 -8
  280. package/charts/meter-bar/multi-meter-bar/default.d.ts +1 -1
  281. package/charts/meter-bar/multi-meter-bar/default.js +1 -1
  282. package/charts/meter-bar/multi-meter-bar/hooks/useMultiMeterBarChartTooltipHandlers.js +10 -37
  283. package/charts/meter-bar/multi-meter-bar/types/multi-meter-bar-chart-config.d.ts +2 -2
  284. package/charts/meter-bar/multi-meter-bar/types/multi-meter-bar-chart-internal.d.ts +5 -3
  285. package/charts/meter-bar/multi-meter-bar/types/multi-meter-bar-chart.d.ts +39 -0
  286. package/charts/meter-bar/multi-meter-bar/utils/build-multi-meter-bar-chart-config.js +10 -7
  287. package/charts/meter-bar/multi-meter-bar/utils/iterate-slots.js +5 -1
  288. package/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.css +15 -15
  289. package/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js +10 -10
  290. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.css +2 -2
  291. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.sty.js +1 -1
  292. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.css +1 -1
  293. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.sty.js +1 -1
  294. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.css +1 -1
  295. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.sty.js +1 -1
  296. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.css +1 -1
  297. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.sty.js +1 -1
  298. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.css +1 -1
  299. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.sty.js +1 -1
  300. package/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.css +1 -1
  301. package/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.sty.js +1 -1
  302. package/charts/meter-bar/shared/components/meter-bar-toolbar/MeterBarToolbar.js +3 -3
  303. package/charts/meter-bar/shared/components/meter-bar-tooltip/MeterBarTooltipItem/MeterBarTooltipItem.css +1 -1
  304. package/charts/meter-bar/shared/components/meter-bar-tooltip/MeterBarTooltipItem/MeterBarTooltipItem.sty.js +1 -1
  305. package/charts/meter-bar/shared/styles/element-size.css +4 -4
  306. package/charts/meter-bar/shared/styles/element-size.sty.js +1 -1
  307. package/charts/meter-bar/shared/styles.css +1 -1
  308. package/charts/meter-bar/shared/styles.sty.js +1 -1
  309. package/charts/meter-bar/shared/utils/slot-handlers.d.ts +0 -2
  310. package/charts/meter-bar/shared/utils/slot-handlers.js +0 -10
  311. package/charts/meter-bar/single-meter-bar/MeterBarChart.js +1 -1
  312. package/charts/meter-bar/single-meter-bar/components/MeterBarChartOverlay/MeterBarChartOverlay.js +1 -1
  313. package/charts/meter-bar/single-meter-bar/components/MeterBarChartOverlay/MeterBarChartOverlayWithTooltip.js +61 -16
  314. package/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholds/MeterBarChartThresholds.css +1 -1
  315. package/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholds/MeterBarChartThresholds.sty.js +1 -1
  316. package/charts/meter-bar/single-meter-bar/context/MeterBarChartInternalConfigContext.d.ts +1 -1
  317. package/charts/meter-bar/single-meter-bar/types/default.d.ts +3 -0
  318. package/charts/meter-bar/single-meter-bar/types/default.js +2 -1
  319. package/charts/meter-bar/single-meter-bar/types/meter-bar-chart-internal.d.ts +4 -2
  320. package/charts/meter-bar/single-meter-bar/types/meter-bar-chart.d.ts +37 -0
  321. package/charts/meter-bar/single-meter-bar/utils/build-meter-bar-chart-config.js +5 -1
  322. package/charts/meter-bar/single-meter-bar/utils/iterate-slots.js +5 -1
  323. package/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.css +1 -1
  324. package/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.sty.js +1 -1
  325. package/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.css +1 -1
  326. package/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.sty.js +1 -1
  327. package/charts/pie/components/PieChartOverlays/PieChartOverlays.css +1 -1
  328. package/charts/pie/components/PieChartOverlays/PieChartOverlays.sty.js +1 -1
  329. package/charts/pie/components/PieChartPlot/PieChartPlot.css +1 -1
  330. package/charts/pie/components/PieChartPlot/PieChartPlot.sty.js +1 -1
  331. package/charts/pie/hooks/usePieHandlers.js +3 -3
  332. package/charts/pie/hooks/useSliceHandlers.js +7 -41
  333. package/charts/single-value/SingleValue.css +1 -1
  334. package/charts/single-value/SingleValue.js +4 -1
  335. package/charts/single-value/SingleValue.sty.js +1 -1
  336. package/charts/single-value-grid/SingleValueGrid.css +2 -2
  337. package/charts/single-value-grid/SingleValueGrid.js +4 -1
  338. package/charts/single-value-grid/SingleValueGrid.sty.js +1 -1
  339. package/charts/single-value-grid/components/GlobalFontSizeVariables.css +1 -1
  340. package/charts/single-value-grid/components/GlobalFontSizeVariables.sty.js +1 -1
  341. package/charts/single-value-grid/types/single-value-grid.d.ts +5 -1
  342. package/charts/timeseries/TimeseriesChart.d.ts +99 -5
  343. package/charts/timeseries/TimeseriesChart.js +63 -126
  344. package/charts/timeseries/TimeseriesChartInternal.d.ts +8 -0
  345. package/charts/timeseries/TimeseriesChartInternal.js +151 -0
  346. package/charts/timeseries/TimeseriesChartRoot.d.ts +3 -92
  347. package/charts/timeseries/TimeseriesChartRoot.js +3 -55
  348. package/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.css +2 -2
  349. package/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.js +4 -2
  350. package/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.sty.js +1 -1
  351. package/charts/timeseries/components/overlays/TimeseriesOverlays.css +4 -4
  352. package/charts/timeseries/components/overlays/TimeseriesOverlays.sty.js +4 -4
  353. package/charts/timeseries/components/thresholds/ThresholdIndicators.css +2 -2
  354. package/charts/timeseries/components/thresholds/ThresholdIndicators.sty.js +2 -2
  355. package/charts/tree-map/TreeMap.d.ts +1 -1
  356. package/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.css +1 -1
  357. package/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.sty.js +1 -1
  358. package/charts/tree-map/components/TreeMapTooltip/TreeMapOverlayTooltip.js +12 -1
  359. package/charts/tree-map/components/canvas/TreeMapSquareRenderer.js +3 -2
  360. package/charts/tree-map/components/canvas/utils/canvas-label-utils.d.ts +3 -1
  361. package/charts/tree-map/components/canvas/utils/canvas-label-utils.js +7 -7
  362. package/charts/tree-map/constants.js +1 -0
  363. package/charts/tree-map/contexts/TreeMapCustomTooltipContext.d.ts +3 -0
  364. package/charts/tree-map/contexts/TreeMapCustomTooltipContext.js +28 -0
  365. package/charts/tree-map/hooks/useTreeMapCustomTooltip.d.ts +1 -0
  366. package/charts/tree-map/hooks/useTreeMapCustomTooltip.js +25 -0
  367. package/charts/tree-map/providers/TreeMapChartProviders.d.ts +2 -0
  368. package/charts/tree-map/providers/TreeMapChartProviders.js +10 -2
  369. package/charts/tree-map/slots/Tooltip.d.ts +2 -1
  370. package/charts/tree-map/slots/Tooltip.js +1 -1
  371. package/charts/tree-map/types/canvas.d.ts +1 -1
  372. package/charts/tree-map/types/treemap-chart.config.d.ts +34 -2
  373. package/charts/tree-map/utils/build-overlay-tooltip-data.js +3 -1
  374. package/charts/tree-map/utils/build-tree-map-chart-config.js +2 -1
  375. package/charts/tree-map/utils/iterate-slots.js +8 -2
  376. package/charts/xy-chart/XYChart.js +2 -0
  377. package/charts/xy-chart/XYChartRoot.d.ts +1 -4
  378. package/charts/xy-chart/XYChartRoot.js +55 -39
  379. package/charts/xy-chart/components/axes/AxisArea.css +1 -1
  380. package/charts/xy-chart/components/axes/AxisArea.sty.js +1 -1
  381. package/charts/xy-chart/components/axes/AxisTickWithTruncation.css +3 -3
  382. package/charts/xy-chart/components/axes/AxisTickWithTruncation.sty.js +3 -3
  383. package/charts/xy-chart/components/axes/XYChartBottomAxisArea.js +77 -59
  384. package/charts/xy-chart/components/axes/XYChartTopAxisArea.js +77 -59
  385. package/charts/xy-chart/components/axes/utils/compute-collision-aware-max-space.d.ts +14 -0
  386. package/charts/xy-chart/components/axes/utils/compute-collision-aware-max-space.js +50 -0
  387. package/charts/xy-chart/components/displays/{BarDisplay.d.ts → BarDisplay/BarDisplay.d.ts} +3 -3
  388. package/charts/xy-chart/components/displays/{BarDisplay.js → BarDisplay/BarDisplay.js} +10 -10
  389. package/charts/xy-chart/components/displays/BarDisplay/BarLabelLayout.d.ts +10 -0
  390. package/charts/xy-chart/components/displays/BarDisplay/BarLabelLayout.js +64 -0
  391. package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.css +19 -0
  392. package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.d.ts +24 -0
  393. package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.js +170 -0
  394. package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.d.ts +3 -0
  395. package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js +28 -0
  396. package/charts/xy-chart/components/displays/BarDisplay/HorizontalBarLabel.d.ts +34 -0
  397. package/charts/xy-chart/components/displays/BarDisplay/HorizontalBarLabel.js +81 -0
  398. package/charts/xy-chart/components/displays/BarDisplay/VerticalBarLabel.d.ts +34 -0
  399. package/charts/xy-chart/components/displays/BarDisplay/VerticalBarLabel.js +82 -0
  400. package/charts/xy-chart/components/displays/BarDisplay/label-utils.d.ts +8 -0
  401. package/charts/xy-chart/components/displays/BarDisplay/label-utils.js +25 -0
  402. package/charts/xy-chart/components/displays/bar-accessors.js +7 -6
  403. package/charts/xy-chart/components/legend/XYLegend/xy-legend.css +1 -1
  404. package/charts/xy-chart/components/legend/XYLegend/xy-legend.sty.js +1 -1
  405. package/charts/xy-chart/components/overlay/explore/XYChartCrosshair.css +1 -1
  406. package/charts/xy-chart/components/overlay/explore/XYChartCrosshair.sty.js +1 -1
  407. package/charts/xy-chart/components/overlay/explore/XYChartExplore.css +2 -2
  408. package/charts/xy-chart/components/overlay/explore/XYChartExplore.sty.js +2 -2
  409. package/charts/xy-chart/components/overlay/hooks/useApplyPanDelta.js +3 -3
  410. package/charts/xy-chart/components/overlay/hooks/useApplyZoomDelta.js +3 -3
  411. package/charts/xy-chart/components/overlay/hooks/useOverlayEvents.d.ts +1 -1
  412. package/charts/xy-chart/components/overlay/hooks/useOverlayEvents.js +27 -39
  413. package/charts/xy-chart/components/overlay/hooks/useResetInteractions.js +3 -3
  414. package/charts/xy-chart/components/overlay/utils/get-selected-datapoints.js +1 -1
  415. package/charts/xy-chart/components/overlay/utils/serialize-rectangle-series-values.js +1 -1
  416. package/charts/xy-chart/components/selection/TooltipHeader.css +2 -2
  417. package/charts/xy-chart/components/selection/TooltipHeader.sty.js +2 -2
  418. package/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.css +1 -1
  419. package/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.sty.js +1 -1
  420. package/charts/xy-chart/components/tooltip/BarSeriesTooltip.js +11 -0
  421. package/charts/xy-chart/components/tooltip/TopListTooltip.d.ts +7 -0
  422. package/charts/xy-chart/components/tooltip/TopListTooltip.js +84 -0
  423. package/charts/xy-chart/components/tooltip/XYChartTooltipTemplate/XYChartTooltipTemplate.css +1 -1
  424. package/charts/xy-chart/components/tooltip/XYChartTooltipTemplate/XYChartTooltipTemplate.sty.js +1 -1
  425. package/charts/xy-chart/components/tooltip/utils/tooltip-styles.css +5 -5
  426. package/charts/xy-chart/components/tooltip/utils/tooltip-styles.sty.js +4 -4
  427. package/charts/xy-chart/context/XYChartLegendHidden.context.d.ts +2 -0
  428. package/charts/xy-chart/context/XYChartLegendHidden.context.js +27 -0
  429. package/charts/xy-chart/layout/XYChartLayout.css +2 -2
  430. package/charts/xy-chart/layout/XYChartLayout.sty.js +2 -2
  431. package/charts/xy-chart/layout/XYChartShiftedDisplay.js +1 -1
  432. package/charts/xy-chart/processing-strategies/strategies/area-series.js +2 -1
  433. package/charts/xy-chart/processing-strategies/strategies/bar-series.d.ts +2 -0
  434. package/charts/xy-chart/processing-strategies/strategies/bar-series.js +9 -3
  435. package/charts/xy-chart/processing-strategies/strategies/groupable-series.d.ts +13 -3
  436. package/charts/xy-chart/processing-strategies/strategies/groupable-series.js +38 -4
  437. package/charts/xy-chart/processing-strategies/strategies/stackable-series.d.ts +14 -4
  438. package/charts/xy-chart/processing-strategies/strategies/stackable-series.js +38 -4
  439. package/charts/xy-chart/processing-strategies/utils/access-datapoint/get-bar-datapoints.d.ts +1 -0
  440. package/charts/xy-chart/processing-strategies/utils/access-datapoint/get-bar-datapoints.js +13 -1
  441. package/charts/xy-chart/providers/XYChartAxesTicksProvider.js +9 -2
  442. package/charts/xy-chart/slots/Tooltip.d.ts +2 -6
  443. package/charts/xy-chart/types/xy-chart-internals.d.ts +2 -0
  444. package/charts/xy-chart/types/xy-chart-props.d.ts +14 -0
  445. package/charts/xy-chart/types/xy-chart.d.ts +4 -0
  446. package/charts/xy-chart/utils/generate-nice-unit-ticks.d.ts +13 -1
  447. package/charts/xy-chart/utils/generate-nice-unit-ticks.js +39 -8
  448. package/charts/xy-chart/utils/get-ticks-formatted-by-config.d.ts +21 -1
  449. package/charts/xy-chart/utils/get-ticks-formatted-by-config.js +93 -11
  450. package/charts/xy-chart/utils/query-hovered.d.ts +1 -1
  451. package/charts/xy-chart-adoption/timeseries/TimeseriesToXY.d.ts +6 -0
  452. package/charts/xy-chart-adoption/timeseries/TimeseriesToXY.js +79 -0
  453. package/charts/xy-chart-adoption/timeseries/iterate-slots.d.ts +11 -0
  454. package/charts/xy-chart-adoption/timeseries/iterate-slots.js +78 -0
  455. package/charts/xy-chart-adoption/timeseries/transformer-data-to-xy.d.ts +16 -6
  456. package/charts/xy-chart-adoption/timeseries/transformer-data-to-xy.js +54 -18
  457. package/charts/xy-chart-adoption/timeseries/types/timeseries.d.ts +41 -0
  458. package/charts/xy-chart-adoption/timeseries/types/timeseries.js +25 -0
  459. package/charts/xy-chart-adoption/timeseries/utils/render-series.d.ts +8 -0
  460. package/charts/xy-chart-adoption/timeseries/utils/render-series.js +60 -0
  461. package/content/accordion/Accordion.css +14 -14
  462. package/content/accordion/Accordion.sty.js +8 -8
  463. package/content/ai-loading-indicator/AiLoadingIndicator.css +12 -12
  464. package/content/ai-loading-indicator/AiLoadingIndicator.sty.js +4 -4
  465. package/content/ai-response/AiResponse.css +5 -5
  466. package/content/ai-response/AiResponse.sty.js +2 -2
  467. package/content/avatar/Avatar.css +13 -13
  468. package/content/avatar/Avatar.sty.js +4 -4
  469. package/content/avatar-group/AvatarGroup.css +3 -3
  470. package/content/avatar-group/AvatarGroup.sty.js +2 -2
  471. package/content/chip/BaseChip.css +40 -40
  472. package/content/chip/BaseChip.sty.js +5 -5
  473. package/content/chip/ChipContent.css +11 -11
  474. package/content/chip/ChipContent.sty.js +2 -2
  475. package/content/chip/ChipDeleteButton.css +19 -19
  476. package/content/chip/ChipDeleteButton.sty.js +4 -4
  477. package/content/chip/ChipKey.css +6 -6
  478. package/content/chip/ChipKey.sty.js +1 -1
  479. package/content/chip/GroupedChip.css +3 -3
  480. package/content/chip/GroupedChip.sty.js +3 -3
  481. package/content/chip-group/ChipGroup.css +4 -4
  482. package/content/chip-group/ChipGroup.sty.js +1 -1
  483. package/content/chip-group/Control.css +4 -4
  484. package/content/chip-group/Control.sty.js +1 -1
  485. package/content/code-snippet/CodeHighlight.css +25 -25
  486. package/content/code-snippet/CodeHighlight.sty.js +5 -5
  487. package/content/code-snippet/CodeSnippet.css +5 -5
  488. package/content/code-snippet/CodeSnippet.sty.js +2 -2
  489. package/content/code-snippet/prism-dql-language.d.ts +4 -0
  490. package/content/code-snippet/prism-dql-language.js +8 -5
  491. package/content/empty-state/EmptyState.css +28 -28
  492. package/content/empty-state/EmptyState.sty.js +7 -7
  493. package/content/empty-state/slot-components/Footer.css +1 -1
  494. package/content/empty-state/slot-components/Footer.sty.js +1 -1
  495. package/content/empty-state/slot-components/Visual.css +3 -3
  496. package/content/empty-state/slot-components/Visual.sty.js +1 -1
  497. package/content/expandable-text/ExpandableText.css +7 -7
  498. package/content/expandable-text/ExpandableText.sty.js +2 -2
  499. package/content/feature-highlight/FeatureHighlight.css +12 -12
  500. package/content/feature-highlight/FeatureHighlight.sty.js +3 -3
  501. package/content/health-indicator/styles.css +23 -23
  502. package/content/health-indicator/styles.sty.js +1 -1
  503. package/content/information-overlay/InformationOverlay.css +25 -25
  504. package/content/information-overlay/InformationOverlay.sty.js +5 -5
  505. package/content/information-overlay/Trigger.d.ts +2 -3
  506. package/content/keyboard-shortcut/KeyboardShortcut.css +14 -14
  507. package/content/keyboard-shortcut/KeyboardShortcut.sty.js +2 -2
  508. package/content/markdown/Markdown.css +3 -3
  509. package/content/markdown/Markdown.sty.js +1 -1
  510. package/content/markdown/transformers/typography-mapping.css +9 -9
  511. package/content/markdown/transformers/typography-mapping.sty.js +6 -6
  512. package/content/microguide/Microguide.css +11 -11
  513. package/content/microguide/Microguide.sty.js +7 -7
  514. package/content/progress/ProgressBar.css +71 -71
  515. package/content/progress/ProgressBar.sty.js +5 -5
  516. package/content/progress/ProgressBarIcon.css +2 -2
  517. package/content/progress/ProgressBarIcon.sty.js +1 -1
  518. package/content/progress/ProgressBarLabel.css +3 -3
  519. package/content/progress/ProgressBarLabel.sty.js +1 -1
  520. package/content/progress/ProgressBarValue.css +5 -5
  521. package/content/progress/ProgressBarValue.sty.js +1 -1
  522. package/content/progress/ProgressCircle.css +40 -40
  523. package/content/progress/ProgressCircle.sty.js +5 -5
  524. package/content/shared-components/Visual.css +3 -3
  525. package/content/shared-components/Visual.sty.js +1 -1
  526. package/content/skeleton/Skeleton.css +7 -7
  527. package/content/skeleton/Skeleton.sty.js +5 -5
  528. package/content/terminology-overlay/TerminologyOverlay.css +4 -4
  529. package/content/terminology-overlay/TerminologyOverlay.js +16 -4
  530. package/content/terminology-overlay/TerminologyOverlay.sty.js +1 -1
  531. package/content/terminology-overlay/Trigger.d.ts +2 -1
  532. package/content/terminology-overlay/Trigger.js +5 -1
  533. package/core/components/app-root/AppRoot.css +2 -2
  534. package/core/components/app-root/AppRoot.sty.js +1 -1
  535. package/core/components/visually-hidden/VisuallyHidden.css +1 -1
  536. package/core/components/visually-hidden/VisuallyHidden.sty.js +1 -1
  537. package/core/contexts/PermissionsContext.d.ts +15 -0
  538. package/core/contexts/PermissionsContext.js +35 -0
  539. package/core/dql/dql-common.d.ts +6 -0
  540. package/core/dql/dql-common.js +2 -0
  541. package/core/external-links.d.ts +15 -0
  542. package/core/external-links.js +29 -0
  543. package/core/hooks/usePermissions.d.ts +24 -0
  544. package/core/hooks/usePermissions.js +55 -0
  545. package/core/index.d.ts +1 -0
  546. package/core/index.js +2 -0
  547. package/core/sdk/sdk-logger.js +2 -2
  548. package/core/styles/defaultChartValues.css +1 -1
  549. package/core/styles/defaultChartValues.sty.js +1 -1
  550. package/core/styles/focusRing.css +66 -66
  551. package/core/styles/focusRing.sty.js +2 -2
  552. package/core/styles/focusRingStatic.css +34 -34
  553. package/core/styles/focusRingStatic.sty.js +1 -1
  554. package/core/styles/virtualFocus.css +2 -2
  555. package/core/styles/virtualFocus.sty.js +1 -1
  556. package/core/time/timeframeStore/actions/dateTimePicker.js +4 -5
  557. package/core/time/timeframeStore/actions/dateTimeRangePicker.js +4 -6
  558. package/core/time/timeframeStore/actions/timeframeSelector.js +9 -9
  559. package/core/time/timeframeStore/timeframeSelector.types.d.ts +5 -1
  560. package/core/time/useDateTimeMessages.js +1 -1
  561. package/core/time/validation.js +2 -2
  562. package/core/utils/colorUtils.css +60 -60
  563. package/core/utils/colorUtils.sty.js +2 -2
  564. package/core/utils/permissionsQueryClient.d.ts +7 -0
  565. package/core/utils/permissionsQueryClient.js +33 -0
  566. package/editors/base-code-editor/BaseCodeEditor.css +133 -133
  567. package/editors/base-code-editor/BaseCodeEditor.sty.js +2 -2
  568. package/editors/dql-editor/DQLEditor.d.ts +55 -22
  569. package/editors/dql-editor/DQLEditor.js +122 -73
  570. package/editors/dql-editor/actions-menu/ActionsMenu.css +28 -0
  571. package/editors/dql-editor/actions-menu/ActionsMenu.d.ts +27 -0
  572. package/editors/dql-editor/actions-menu/ActionsMenu.js +100 -0
  573. package/editors/dql-editor/actions-menu/ActionsMenu.sty.d.ts +28 -0
  574. package/editors/dql-editor/actions-menu/ActionsMenu.sty.js +29 -0
  575. package/editors/dql-editor/actions-menu/actions-menu-messages.d.ts +17 -0
  576. package/editors/dql-editor/actions-menu/actions-menu-messages.js +40 -0
  577. package/editors/dql-editor/dql/DocumentationLink.d.ts +0 -1
  578. package/editors/dql-editor/dql/DocumentationLink.js +2 -3
  579. package/editors/dql-editor/dql/SuggestionPart.css +1 -1
  580. package/editors/dql-editor/dql/SuggestionPart.sty.js +1 -1
  581. package/editors/dql-editor/dql/dql-language.js +23 -5
  582. package/editors/dql-editor/dql/dql.js +7 -2
  583. package/esm/buttons/button/Button.css +15 -15
  584. package/esm/buttons/button/Button.sty.js +4 -4
  585. package/esm/buttons/button/Button.sty.js.map +1 -1
  586. package/esm/buttons/intent-button/IntentButton.css +1 -1
  587. package/esm/buttons/intent-button/IntentButton.sty.js +1 -1
  588. package/esm/buttons/intent-button/IntentButton.sty.js.map +1 -1
  589. package/esm/buttons/notify-button/NotifyButton.css +2 -2
  590. package/esm/buttons/notify-button/NotifyButton.sty.js +2 -2
  591. package/esm/buttons/notify-button/NotifyButton.sty.js.map +1 -1
  592. package/esm/charts/annotations-chart/AnnotationsChart.js +9 -1
  593. package/esm/charts/annotations-chart/AnnotationsChart.js.map +2 -2
  594. package/esm/charts/annotations-chart/components/AnnotationsDisplay.js.map +2 -2
  595. package/esm/charts/annotations-chart/constants.js +3 -1
  596. package/esm/charts/annotations-chart/constants.js.map +2 -2
  597. package/esm/charts/annotations-chart/utils/annotations-chart-config.js +2 -0
  598. package/esm/charts/annotations-chart/utils/annotations-chart-config.js.map +2 -2
  599. package/esm/charts/annotations-chart/utils/populate-missing-tooltip-props.js +8 -3
  600. package/esm/charts/annotations-chart/utils/populate-missing-tooltip-props.js.map +2 -2
  601. package/esm/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.css +2 -2
  602. package/esm/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.sty.js +2 -2
  603. package/esm/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.sty.js.map +1 -1
  604. package/esm/charts/core/components/annotations/AnnotationsAtom.css +1 -1
  605. package/esm/charts/core/components/annotations/AnnotationsAtom.sty.js +1 -1
  606. package/esm/charts/core/components/annotations/AnnotationsAtom.sty.js.map +1 -1
  607. package/esm/charts/core/components/annotations/components/AnnotationsRenderer.js +4 -3
  608. package/esm/charts/core/components/annotations/components/AnnotationsRenderer.js.map +2 -2
  609. package/esm/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.css +1 -1
  610. package/esm/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.sty.js +1 -1
  611. package/esm/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.sty.js.map +1 -1
  612. package/esm/charts/core/components/annotations/components/displays/AnnotationsContainer.js +12 -0
  613. package/esm/charts/core/components/annotations/components/displays/AnnotationsContainer.js.map +7 -0
  614. package/esm/charts/core/components/annotations/components/displays/AnnotationsNumericalDisplay.js +13 -18
  615. package/esm/charts/core/components/annotations/components/displays/AnnotationsNumericalDisplay.js.map +2 -2
  616. package/esm/charts/core/components/annotations/components/displays/AnnotationsTimeDisplay.js +13 -18
  617. package/esm/charts/core/components/annotations/components/displays/AnnotationsTimeDisplay.js.map +2 -2
  618. package/esm/charts/core/components/annotations/components/overlays/AnnotationsOverlays.css +1 -1
  619. package/esm/charts/core/components/annotations/components/overlays/AnnotationsOverlays.sty.js +1 -1
  620. package/esm/charts/core/components/annotations/components/overlays/AnnotationsOverlays.sty.js.map +1 -1
  621. package/esm/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.css +1 -1
  622. package/esm/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.sty.js +1 -1
  623. package/esm/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.sty.js.map +1 -1
  624. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsCustomizedTooltip.js +3 -2
  625. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsCustomizedTooltip.js.map +2 -2
  626. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsDefaultTooltipContent.js +131 -0
  627. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsDefaultTooltipContent.js.map +7 -0
  628. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsOverlayTooltip.js +121 -0
  629. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsOverlayTooltip.js.map +7 -0
  630. package/esm/charts/core/components/annotations/components/tooltip/utils/prepare-custom-tooltip-data.js +8 -11
  631. package/esm/charts/core/components/annotations/components/tooltip/utils/prepare-custom-tooltip-data.js.map +2 -2
  632. package/esm/charts/core/components/annotations/constants.js +2 -0
  633. package/esm/charts/core/components/annotations/constants.js.map +2 -2
  634. package/esm/charts/core/components/annotations/hooks/useOverlayEvents.js +18 -0
  635. package/esm/charts/core/components/annotations/hooks/useOverlayEvents.js.map +2 -2
  636. package/esm/charts/core/components/axes/Axis.css +1 -1
  637. package/esm/charts/core/components/axes/Axis.sty.js +1 -1
  638. package/esm/charts/core/components/axes/Axis.sty.js.map +1 -1
  639. package/esm/charts/core/components/axes/components/PanningControls/PanningControls.css +16 -16
  640. package/esm/charts/core/components/axes/components/PanningControls/PanningControls.sty.js +2 -2
  641. package/esm/charts/core/components/axes/components/PanningControls/PanningControls.sty.js.map +1 -1
  642. package/esm/charts/core/components/axes/utils/calculate-axis-size.js +4 -2
  643. package/esm/charts/core/components/axes/utils/calculate-axis-size.js.map +2 -2
  644. package/esm/charts/core/components/axes/utils/get-tick-label-props.js +47 -1
  645. package/esm/charts/core/components/axes/utils/get-tick-label-props.js.map +2 -2
  646. package/esm/charts/core/components/axes/utils/tick-formatters.js +9 -1
  647. package/esm/charts/core/components/axes/utils/tick-formatters.js.map +2 -2
  648. package/esm/charts/core/components/chart-grid/ChartGrid.css +3 -3
  649. package/esm/charts/core/components/chart-grid/ChartGrid.sty.js +3 -3
  650. package/esm/charts/core/components/chart-grid/ChartGrid.sty.js.map +1 -1
  651. package/esm/charts/core/components/chart-layout/components/styles.css +15 -15
  652. package/esm/charts/core/components/chart-layout/components/styles.sty.js +4 -4
  653. package/esm/charts/core/components/chart-layout/components/styles.sty.js.map +1 -1
  654. package/esm/charts/core/components/chart-states/ChartState.css +4 -4
  655. package/esm/charts/core/components/chart-states/ChartState.sty.js +4 -4
  656. package/esm/charts/core/components/chart-states/ChartState.sty.js.map +1 -1
  657. package/esm/charts/core/components/crosshair/components/Magnifier.css +7 -7
  658. package/esm/charts/core/components/crosshair/components/Magnifier.sty.js +7 -7
  659. package/esm/charts/core/components/crosshair/components/Magnifier.sty.js.map +1 -1
  660. package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.css +5 -5
  661. package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.sty.js +2 -2
  662. package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.sty.js.map +1 -1
  663. package/esm/charts/core/components/legend/categorical/ChartLegend.css +1 -1
  664. package/esm/charts/core/components/legend/categorical/ChartLegend.sty.js +1 -1
  665. package/esm/charts/core/components/legend/categorical/ChartLegend.sty.js.map +1 -1
  666. package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.css +3 -3
  667. package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.sty.js +3 -3
  668. package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.sty.js.map +1 -1
  669. package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.css +17 -17
  670. package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.sty.js +6 -6
  671. package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.sty.js.map +1 -1
  672. package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.css +3 -3
  673. package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.sty.js +1 -1
  674. package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.sty.js.map +1 -1
  675. package/esm/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.css +8 -8
  676. package/esm/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.sty.js +4 -4
  677. package/esm/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.sty.js.map +1 -1
  678. package/esm/charts/core/components/legend/range/RangeLegend.css +3 -3
  679. package/esm/charts/core/components/legend/range/RangeLegend.sty.js +1 -1
  680. package/esm/charts/core/components/legend/range/RangeLegend.sty.js.map +1 -1
  681. package/esm/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.css +2 -2
  682. package/esm/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.sty.js +1 -1
  683. package/esm/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.sty.js.map +1 -1
  684. package/esm/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.css +1 -1
  685. package/esm/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.sty.js +1 -1
  686. package/esm/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.sty.js.map +1 -1
  687. package/esm/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.css +3 -3
  688. package/esm/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.sty.js +1 -1
  689. package/esm/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.sty.js.map +1 -1
  690. package/esm/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.css +3 -3
  691. package/esm/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.sty.js +1 -1
  692. package/esm/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.sty.js.map +1 -1
  693. package/esm/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.css +5 -5
  694. package/esm/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.sty.js +1 -1
  695. package/esm/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.sty.js.map +1 -1
  696. package/esm/charts/core/components/loader-overlay/LoaderOverlay.css +2 -2
  697. package/esm/charts/core/components/loader-overlay/LoaderOverlay.sty.js +2 -2
  698. package/esm/charts/core/components/loader-overlay/LoaderOverlay.sty.js.map +1 -1
  699. package/esm/charts/core/components/overlay-tooltip/OverlayTooltip.js +4 -0
  700. package/esm/charts/core/components/overlay-tooltip/OverlayTooltip.js.map +2 -2
  701. package/esm/charts/core/components/overlay-tooltip/_to-be-removed/DummyInteractionsOverlay.js +8 -5
  702. package/esm/charts/core/components/overlay-tooltip/_to-be-removed/DummyInteractionsOverlay.js.map +2 -2
  703. package/esm/charts/core/components/overlay-tooltip/_to-be-removed/_OverlayTooltipWIPStory.js +2 -2
  704. package/esm/charts/core/components/overlay-tooltip/_to-be-removed/_OverlayTooltipWIPStory.js.map +1 -1
  705. package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltipRenderer.js +7 -6
  706. package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltipRenderer.js.map +2 -2
  707. package/esm/charts/core/components/overlay-tooltip/components/{TooltipFooter.js → Footer.js} +3 -6
  708. package/esm/charts/core/components/overlay-tooltip/components/Footer.js.map +7 -0
  709. package/esm/charts/core/components/overlay-tooltip/components/global-actions/Action.js +6 -0
  710. package/esm/charts/core/components/overlay-tooltip/components/global-actions/Action.js.map +2 -2
  711. package/esm/charts/core/components/overlay-tooltip/components/global-actions/GlobalActions.js +4 -14
  712. package/esm/charts/core/components/overlay-tooltip/components/global-actions/GlobalActions.js.map +2 -2
  713. package/esm/charts/core/components/overlay-tooltip/components/global-actions/actions.css +4 -4
  714. package/esm/charts/core/components/overlay-tooltip/components/global-actions/actions.sty.js +2 -2
  715. package/esm/charts/core/components/overlay-tooltip/components/global-actions/actions.sty.js.map +1 -1
  716. package/esm/charts/core/components/overlay-tooltip/components/header/Header.css +6 -6
  717. package/esm/charts/core/components/overlay-tooltip/components/header/Header.js.map +2 -2
  718. package/esm/charts/core/components/overlay-tooltip/components/header/Header.sty.js +6 -6
  719. package/esm/charts/core/components/overlay-tooltip/components/header/Header.sty.js.map +1 -1
  720. package/esm/charts/core/components/overlay-tooltip/components/series/SeriesItem.js +31 -8
  721. package/esm/charts/core/components/overlay-tooltip/components/series/SeriesItem.js.map +2 -2
  722. package/esm/charts/core/components/overlay-tooltip/components/series/SeriesItemContent.js +38 -3
  723. package/esm/charts/core/components/overlay-tooltip/components/series/SeriesItemContent.js.map +2 -2
  724. package/esm/charts/core/components/overlay-tooltip/components/series/SeriesSymbol.js +1 -1
  725. package/esm/charts/core/components/overlay-tooltip/components/series/SeriesSymbol.js.map +1 -1
  726. package/esm/charts/core/components/overlay-tooltip/components/series/hooks/use-series-item-display-state.js +58 -6
  727. package/esm/charts/core/components/overlay-tooltip/components/series/hooks/use-series-item-display-state.js.map +2 -2
  728. package/esm/charts/core/components/overlay-tooltip/components/series/seriesSymbol.css +2 -2
  729. package/esm/charts/core/components/overlay-tooltip/components/series/seriesSymbol.sty.js +2 -2
  730. package/esm/charts/core/components/overlay-tooltip/components/series/seriesSymbol.sty.js.map +1 -1
  731. package/esm/charts/core/components/overlay-tooltip/components/series/utils/get-name-text-style.js +6 -4
  732. package/esm/charts/core/components/overlay-tooltip/components/series/utils/get-name-text-style.js.map +2 -2
  733. package/esm/charts/core/components/overlay-tooltip/hooks/useTooltipImperativeHandle.js +3 -11
  734. package/esm/charts/core/components/overlay-tooltip/hooks/useTooltipImperativeHandle.js.map +2 -2
  735. package/esm/charts/core/components/overlay-tooltip/overlay.js +8 -8
  736. package/esm/charts/core/components/overlay-tooltip/overlay.js.map +2 -2
  737. package/esm/charts/core/components/overlay-tooltip/tooltip.css +92 -44
  738. package/esm/charts/core/components/overlay-tooltip/tooltip.sty.js +46 -34
  739. package/esm/charts/core/components/overlay-tooltip/tooltip.sty.js.map +2 -2
  740. package/esm/charts/core/components/overlay-tooltip/types.js.map +2 -2
  741. package/esm/charts/core/components/overlay-tooltip/useTooltipActions.js +67 -0
  742. package/esm/charts/core/components/overlay-tooltip/useTooltipActions.js.map +7 -0
  743. package/esm/charts/core/components/overlay-tooltip/useTooltipReducer.js +9 -11
  744. package/esm/charts/core/components/overlay-tooltip/useTooltipReducer.js.map +2 -2
  745. package/esm/charts/core/components/overlay-tooltip/utils/build-content.js +41 -36
  746. package/esm/charts/core/components/overlay-tooltip/utils/build-content.js.map +2 -2
  747. package/esm/charts/core/components/overlay-tooltip/utils/estimate-series-item-size.js +19 -3
  748. package/esm/charts/core/components/overlay-tooltip/utils/estimate-series-item-size.js.map +2 -2
  749. package/esm/charts/core/components/overlays/ChartOverlaysBorder.css +5 -5
  750. package/esm/charts/core/components/overlays/ChartOverlaysBorder.sty.js +5 -5
  751. package/esm/charts/core/components/overlays/ChartOverlaysBorder.sty.js.map +1 -1
  752. package/esm/charts/core/components/selection-area/SelectionArea.css +9 -9
  753. package/esm/charts/core/components/selection-area/SelectionArea.sty.js +4 -4
  754. package/esm/charts/core/components/selection-area/SelectionArea.sty.js.map +1 -1
  755. package/esm/charts/core/components/shape/BubbleShape/BubbleShape.css +5 -5
  756. package/esm/charts/core/components/shape/BubbleShape/BubbleShape.sty.js +3 -3
  757. package/esm/charts/core/components/shape/BubbleShape/BubbleShape.sty.js.map +1 -1
  758. package/esm/charts/core/components/shape/EmojiShape/EmojiShape.css +3 -3
  759. package/esm/charts/core/components/shape/EmojiShape/EmojiShape.sty.js +1 -1
  760. package/esm/charts/core/components/shape/EmojiShape/EmojiShape.sty.js.map +1 -1
  761. package/esm/charts/core/components/shape/IconShape/IconShape.css +3 -3
  762. package/esm/charts/core/components/shape/IconShape/IconShape.sty.js +1 -1
  763. package/esm/charts/core/components/shape/IconShape/IconShape.sty.js.map +1 -1
  764. package/esm/charts/core/components/shape/styles/DataPointShape.css +8 -8
  765. package/esm/charts/core/components/shape/styles/DataPointShape.sty.js +4 -4
  766. package/esm/charts/core/components/shape/styles/DataPointShape.sty.js.map +1 -1
  767. package/esm/charts/core/components/shared-chart-interactions/SharedChartInteractions.css +1 -1
  768. package/esm/charts/core/components/shared-chart-interactions/SharedChartInteractions.sty.js +1 -1
  769. package/esm/charts/core/components/shared-chart-interactions/SharedChartInteractions.sty.js.map +1 -1
  770. package/esm/charts/core/components/single-value-renderer/SingleValueRenderer.css +5 -5
  771. package/esm/charts/core/components/single-value-renderer/SingleValueRenderer.sty.js +5 -5
  772. package/esm/charts/core/components/single-value-renderer/SingleValueRenderer.sty.js.map +1 -1
  773. package/esm/charts/core/components/single-value-renderer/components/ContentGrid.css +1 -1
  774. package/esm/charts/core/components/single-value-renderer/components/ContentGrid.sty.js +1 -1
  775. package/esm/charts/core/components/single-value-renderer/components/ContentGrid.sty.js.map +1 -1
  776. package/esm/charts/core/components/single-value-renderer/components/Icon.css +3 -3
  777. package/esm/charts/core/components/single-value-renderer/components/Icon.sty.js +2 -2
  778. package/esm/charts/core/components/single-value-renderer/components/Icon.sty.js.map +1 -1
  779. package/esm/charts/core/components/single-value-renderer/components/Label.css +1 -1
  780. package/esm/charts/core/components/single-value-renderer/components/Label.sty.js +1 -1
  781. package/esm/charts/core/components/single-value-renderer/components/Label.sty.js.map +1 -1
  782. package/esm/charts/core/components/single-value-renderer/components/SingleValueToolbar.css +1 -1
  783. package/esm/charts/core/components/single-value-renderer/components/SingleValueToolbar.sty.js +1 -1
  784. package/esm/charts/core/components/single-value-renderer/components/SingleValueToolbar.sty.js.map +1 -1
  785. package/esm/charts/core/components/single-value-renderer/components/Value.css +5 -5
  786. package/esm/charts/core/components/single-value-renderer/components/Value.sty.js +3 -3
  787. package/esm/charts/core/components/single-value-renderer/components/Value.sty.js.map +1 -1
  788. package/esm/charts/core/components/single-value-renderer/components/trend/Trend.css +3 -3
  789. package/esm/charts/core/components/single-value-renderer/components/trend/Trend.sty.js +3 -3
  790. package/esm/charts/core/components/single-value-renderer/components/trend/Trend.sty.js.map +1 -1
  791. package/esm/charts/core/components/single-value-renderer/components/trend/components/Icon.css +2 -2
  792. package/esm/charts/core/components/single-value-renderer/components/trend/components/Icon.sty.js +1 -1
  793. package/esm/charts/core/components/single-value-renderer/components/trend/components/Icon.sty.js.map +1 -1
  794. package/esm/charts/core/components/sparkline-display/Sparkline.css +6 -6
  795. package/esm/charts/core/components/sparkline-display/Sparkline.sty.js +2 -2
  796. package/esm/charts/core/components/sparkline-display/Sparkline.sty.js.map +1 -1
  797. package/esm/charts/core/components/text-ellipsis/ChartTextEllipsis.css +7 -7
  798. package/esm/charts/core/components/text-ellipsis/ChartTextEllipsis.sty.js +3 -3
  799. package/esm/charts/core/components/text-ellipsis/ChartTextEllipsis.sty.js.map +1 -1
  800. package/esm/charts/core/components/threshold-bar/styles.css +9 -9
  801. package/esm/charts/core/components/threshold-bar/styles.sty.js +2 -2
  802. package/esm/charts/core/components/threshold-bar/styles.sty.js.map +1 -1
  803. package/esm/charts/core/components/toolbar/ChartToolbarRenderer.css +16 -16
  804. package/esm/charts/core/components/toolbar/ChartToolbarRenderer.sty.js +8 -8
  805. package/esm/charts/core/components/toolbar/ChartToolbarRenderer.sty.js.map +1 -1
  806. package/esm/charts/core/components/toolbar/components/ChartDataMenu.css +2 -2
  807. package/esm/charts/core/components/toolbar/components/ChartDataMenu.sty.js +1 -1
  808. package/esm/charts/core/components/toolbar/components/ChartDataMenu.sty.js.map +1 -1
  809. package/esm/charts/core/components/toolbar/components/Control.css +17 -17
  810. package/esm/charts/core/components/toolbar/components/Control.sty.js +5 -5
  811. package/esm/charts/core/components/toolbar/components/Control.sty.js.map +1 -1
  812. package/esm/charts/core/components/toolbar/components/ToolbarMenu.css +4 -4
  813. package/esm/charts/core/components/toolbar/components/ToolbarMenu.sty.js +2 -2
  814. package/esm/charts/core/components/toolbar/components/ToolbarMenu.sty.js.map +1 -1
  815. package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.css +6 -6
  816. package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.sty.js +2 -2
  817. package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.sty.js.map +1 -1
  818. package/esm/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.css +8 -8
  819. package/esm/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.sty.js +3 -3
  820. package/esm/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.sty.js.map +1 -1
  821. package/esm/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.css +2 -2
  822. package/esm/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.sty.js +1 -1
  823. package/esm/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.sty.js.map +1 -1
  824. package/esm/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.css +1 -1
  825. package/esm/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.sty.js +1 -1
  826. package/esm/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.sty.js.map +1 -1
  827. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.css +6 -6
  828. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.sty.js +2 -2
  829. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.sty.js.map +1 -1
  830. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.css +7 -7
  831. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.sty.js +6 -6
  832. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.sty.js.map +1 -1
  833. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.css +1 -1
  834. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.sty.js +1 -1
  835. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.sty.js.map +1 -1
  836. package/esm/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.css +1 -1
  837. package/esm/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.sty.js +1 -1
  838. package/esm/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.sty.js.map +1 -1
  839. package/esm/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.css +2 -2
  840. package/esm/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.sty.js +1 -1
  841. package/esm/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.sty.js.map +1 -1
  842. package/esm/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.css +1 -1
  843. package/esm/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.sty.js +1 -1
  844. package/esm/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.sty.js.map +1 -1
  845. package/esm/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.css +3 -3
  846. package/esm/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.sty.js +2 -2
  847. package/esm/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.sty.js.map +1 -1
  848. package/esm/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.css +1 -1
  849. package/esm/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.sty.js +1 -1
  850. package/esm/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.sty.js.map +1 -1
  851. package/esm/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.css +2 -2
  852. package/esm/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.sty.js +2 -2
  853. package/esm/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.sty.js.map +1 -1
  854. package/esm/charts/core/components/tooltip/section-components/atoms/styles.css +3 -3
  855. package/esm/charts/core/components/tooltip/section-components/atoms/styles.sty.js +3 -3
  856. package/esm/charts/core/components/tooltip/section-components/atoms/styles.sty.js.map +1 -1
  857. package/esm/charts/core/components/tooltip/shared/styles/SeriesBasedContent.css +12 -12
  858. package/esm/charts/core/components/tooltip/shared/styles/SeriesBasedContent.sty.js +7 -7
  859. package/esm/charts/core/components/tooltip/shared/styles/SeriesBasedContent.sty.js.map +1 -1
  860. package/esm/charts/core/components/tooltip/shared/styles/TooltipBody.css +1 -1
  861. package/esm/charts/core/components/tooltip/shared/styles/TooltipBody.sty.js +1 -1
  862. package/esm/charts/core/components/tooltip/shared/styles/TooltipBody.sty.js.map +1 -1
  863. package/esm/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.css +1 -1
  864. package/esm/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.sty.js +1 -1
  865. package/esm/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.sty.js.map +1 -1
  866. package/esm/charts/core/components/tooltip-atoms/components/styles.css +4 -4
  867. package/esm/charts/core/components/tooltip-atoms/components/styles.sty.js +4 -4
  868. package/esm/charts/core/components/tooltip-atoms/components/styles.sty.js.map +1 -1
  869. package/esm/charts/core/components/zoom/ZoomCursors.css +2 -2
  870. package/esm/charts/core/components/zoom/ZoomCursors.sty.js +3 -3
  871. package/esm/charts/core/components/zoom/ZoomCursors.sty.js.map +1 -1
  872. package/esm/charts/core/hooks/useOverlayEventHandlers.js +8 -25
  873. package/esm/charts/core/hooks/useOverlayEventHandlers.js.map +2 -2
  874. package/esm/charts/core/typographyStyles.css +1 -1
  875. package/esm/charts/core/typographyStyles.sty.js +1 -1
  876. package/esm/charts/core/typographyStyles.sty.js.map +1 -1
  877. package/esm/charts/core/utils/adaptively-reduce-horizontal-ticks.js +45 -0
  878. package/esm/charts/core/utils/adaptively-reduce-horizontal-ticks.js.map +7 -0
  879. package/esm/charts/core/utils/has-horizontal-label-collision.js +57 -0
  880. package/esm/charts/core/utils/has-horizontal-label-collision.js.map +7 -0
  881. package/esm/charts/core/utils/is-feature-enabled.js +2 -1
  882. package/esm/charts/core/utils/is-feature-enabled.js.map +2 -2
  883. package/esm/charts/gantt-chart/GanttChartLine.css +1 -1
  884. package/esm/charts/gantt-chart/GanttChartLine.sty.js +1 -1
  885. package/esm/charts/gantt-chart/GanttChartLine.sty.js.map +1 -1
  886. package/esm/charts/gantt-chart/components/GanttChartLineRenderer.css +1 -1
  887. package/esm/charts/gantt-chart/components/GanttChartLineRenderer.sty.js +1 -1
  888. package/esm/charts/gantt-chart/components/GanttChartLineRenderer.sty.js.map +1 -1
  889. package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.css +1 -1
  890. package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.sty.js +1 -1
  891. package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.sty.js.map +1 -1
  892. package/esm/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.css +1 -1
  893. package/esm/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.sty.js +1 -1
  894. package/esm/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.sty.js.map +1 -1
  895. package/esm/charts/gauge/components/GaugeChartTooltip/GaugeOverlayTooltip.js +12 -2
  896. package/esm/charts/gauge/components/GaugeChartTooltip/GaugeOverlayTooltip.js.map +2 -2
  897. package/esm/charts/gauge/components/GaugeLabel/GaugeLabel.css +6 -6
  898. package/esm/charts/gauge/components/GaugeLabel/GaugeLabel.sty.js +3 -3
  899. package/esm/charts/gauge/components/GaugeLabel/GaugeLabel.sty.js.map +1 -1
  900. package/esm/charts/gauge/components/GaugeLabels.js +3 -4
  901. package/esm/charts/gauge/components/GaugeLabels.js.map +2 -2
  902. package/esm/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.css +3 -3
  903. package/esm/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.sty.js +1 -1
  904. package/esm/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.sty.js.map +1 -1
  905. package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.css +4 -4
  906. package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.js +12 -11
  907. package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.js.map +2 -2
  908. package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.sty.js +3 -3
  909. package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.sty.js.map +1 -1
  910. package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.css +2 -2
  911. package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.sty.js +2 -2
  912. package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.sty.js.map +1 -1
  913. package/esm/charts/gauge/constants.js +2 -0
  914. package/esm/charts/gauge/constants.js.map +2 -2
  915. package/esm/charts/gauge/contexts/GaugeChartTooltipContext.js +9 -0
  916. package/esm/charts/gauge/contexts/GaugeChartTooltipContext.js.map +7 -0
  917. package/esm/charts/gauge/hooks/useGaugeChartMinMaxLabelsPosition.js +20 -2
  918. package/esm/charts/gauge/hooks/useGaugeChartMinMaxLabelsPosition.js.map +2 -2
  919. package/esm/charts/gauge/providers/GaugeChartProviders.js +11 -3
  920. package/esm/charts/gauge/providers/GaugeChartProviders.js.map +2 -2
  921. package/esm/charts/gauge/slots/Tooltip.js +1 -1
  922. package/esm/charts/gauge/slots/Tooltip.js.map +2 -2
  923. package/esm/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.css +1 -1
  924. package/esm/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.sty.js +1 -1
  925. package/esm/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.sty.js.map +1 -1
  926. package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.css +1 -1
  927. package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.sty.js +1 -1
  928. package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.sty.js.map +1 -1
  929. package/esm/charts/histogram/components/overlays/HistogramOverlays.css +2 -2
  930. package/esm/charts/histogram/components/overlays/HistogramOverlays.sty.js +2 -2
  931. package/esm/charts/histogram/components/overlays/HistogramOverlays.sty.js.map +1 -1
  932. package/esm/charts/honeycomb/HoneycombChart.css +1 -1
  933. package/esm/charts/honeycomb/HoneycombChart.js +3 -1
  934. package/esm/charts/honeycomb/HoneycombChart.js.map +2 -2
  935. package/esm/charts/honeycomb/HoneycombChart.sty.js +1 -1
  936. package/esm/charts/honeycomb/HoneycombChart.sty.js.map +1 -1
  937. package/esm/charts/honeycomb/components/HiveOverlay.css +1 -1
  938. package/esm/charts/honeycomb/components/HiveOverlay.sty.js +1 -1
  939. package/esm/charts/honeycomb/components/HiveOverlay.sty.js.map +1 -1
  940. package/esm/charts/honeycomb/components/canvas/HiveCanvasLayout.css +1 -1
  941. package/esm/charts/honeycomb/components/canvas/HiveCanvasLayout.sty.js +1 -1
  942. package/esm/charts/honeycomb/components/canvas/HiveCanvasLayout.sty.js.map +1 -1
  943. package/esm/charts/honeycomb/components/tooltip/HoneycombOverlayTooltip.js +16 -1
  944. package/esm/charts/honeycomb/components/tooltip/HoneycombOverlayTooltip.js.map +2 -2
  945. package/esm/charts/honeycomb/context/honeycomb-custom-tooltip.context.js +6 -0
  946. package/esm/charts/honeycomb/context/honeycomb-custom-tooltip.context.js.map +7 -0
  947. package/esm/charts/honeycomb/hooks/use-honeycomb-custom-tooltip.js +7 -0
  948. package/esm/charts/honeycomb/hooks/use-honeycomb-custom-tooltip.js.map +7 -0
  949. package/esm/charts/honeycomb/providers/honeycomb-configuration.provider.js +2 -1
  950. package/esm/charts/honeycomb/providers/honeycomb-configuration.provider.js.map +2 -2
  951. package/esm/charts/honeycomb/slots/Tooltip.js +6 -0
  952. package/esm/charts/honeycomb/slots/Tooltip.js.map +7 -0
  953. package/esm/charts/honeycomb/utils/build-honeycomb-config.js +2 -1
  954. package/esm/charts/honeycomb/utils/build-honeycomb-config.js.map +2 -2
  955. package/esm/charts/honeycomb/utils/build-overlay-tooltip-data.js +5 -1
  956. package/esm/charts/honeycomb/utils/build-overlay-tooltip-data.js.map +2 -2
  957. package/esm/charts/honeycomb/utils/iterate-honeycomb-slots.js +11 -1
  958. package/esm/charts/honeycomb/utils/iterate-honeycomb-slots.js.map +2 -2
  959. package/esm/charts/index.js +5 -1
  960. package/esm/charts/index.js.map +2 -2
  961. package/esm/charts/meter-bar/multi-meter-bar/MultiMeterBarChart.js +1 -1
  962. package/esm/charts/meter-bar/multi-meter-bar/MultiMeterBarChart.js.map +2 -2
  963. package/esm/charts/meter-bar/multi-meter-bar/components/MultiMeterBarChartOverlay/MultiMeterBarChartOverlay.js +1 -1
  964. package/esm/charts/meter-bar/multi-meter-bar/components/MultiMeterBarChartOverlay/MultiMeterBarChartOverlay.js.map +2 -2
  965. package/esm/charts/meter-bar/multi-meter-bar/components/MultiMeterBarChartOverlay/MultiMeterBarChartOverlayWithTooltip.js +34 -8
  966. package/esm/charts/meter-bar/multi-meter-bar/components/MultiMeterBarChartOverlay/MultiMeterBarChartOverlayWithTooltip.js.map +2 -2
  967. package/esm/charts/meter-bar/multi-meter-bar/default.js +1 -1
  968. package/esm/charts/meter-bar/multi-meter-bar/default.js.map +2 -2
  969. package/esm/charts/meter-bar/multi-meter-bar/hooks/useMultiMeterBarChartTooltipHandlers.js +10 -37
  970. package/esm/charts/meter-bar/multi-meter-bar/hooks/useMultiMeterBarChartTooltipHandlers.js.map +2 -2
  971. package/esm/charts/meter-bar/multi-meter-bar/types/multi-meter-bar-chart.js.map +1 -1
  972. package/esm/charts/meter-bar/multi-meter-bar/utils/build-multi-meter-bar-chart-config.js +10 -7
  973. package/esm/charts/meter-bar/multi-meter-bar/utils/build-multi-meter-bar-chart-config.js.map +2 -2
  974. package/esm/charts/meter-bar/multi-meter-bar/utils/iterate-slots.js +4 -1
  975. package/esm/charts/meter-bar/multi-meter-bar/utils/iterate-slots.js.map +2 -2
  976. package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.css +15 -15
  977. package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js +10 -10
  978. package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js.map +1 -1
  979. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.css +2 -2
  980. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.sty.js +1 -1
  981. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.sty.js.map +1 -1
  982. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.css +1 -1
  983. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.sty.js +1 -1
  984. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.sty.js.map +1 -1
  985. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.css +1 -1
  986. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.sty.js +1 -1
  987. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.sty.js.map +1 -1
  988. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.css +1 -1
  989. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.sty.js +1 -1
  990. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.sty.js.map +1 -1
  991. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.css +1 -1
  992. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.sty.js +1 -1
  993. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.sty.js.map +1 -1
  994. package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.css +1 -1
  995. package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.sty.js +1 -1
  996. package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.sty.js.map +1 -1
  997. package/esm/charts/meter-bar/shared/components/meter-bar-toolbar/MeterBarToolbar.js +3 -3
  998. package/esm/charts/meter-bar/shared/components/meter-bar-toolbar/MeterBarToolbar.js.map +2 -2
  999. package/esm/charts/meter-bar/shared/components/meter-bar-tooltip/MeterBarTooltipItem/MeterBarTooltipItem.css +1 -1
  1000. package/esm/charts/meter-bar/shared/components/meter-bar-tooltip/MeterBarTooltipItem/MeterBarTooltipItem.sty.js +1 -1
  1001. package/esm/charts/meter-bar/shared/components/meter-bar-tooltip/MeterBarTooltipItem/MeterBarTooltipItem.sty.js.map +1 -1
  1002. package/esm/charts/meter-bar/shared/styles/element-size.css +4 -4
  1003. package/esm/charts/meter-bar/shared/styles/element-size.sty.js +1 -1
  1004. package/esm/charts/meter-bar/shared/styles/element-size.sty.js.map +1 -1
  1005. package/esm/charts/meter-bar/shared/styles.css +1 -1
  1006. package/esm/charts/meter-bar/shared/styles.sty.js +1 -1
  1007. package/esm/charts/meter-bar/shared/styles.sty.js.map +1 -1
  1008. package/esm/charts/meter-bar/shared/utils/slot-handlers.js +0 -10
  1009. package/esm/charts/meter-bar/shared/utils/slot-handlers.js.map +2 -2
  1010. package/esm/charts/meter-bar/single-meter-bar/MeterBarChart.js +1 -1
  1011. package/esm/charts/meter-bar/single-meter-bar/MeterBarChart.js.map +2 -2
  1012. package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartOverlay/MeterBarChartOverlay.js +1 -1
  1013. package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartOverlay/MeterBarChartOverlay.js.map +2 -2
  1014. package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartOverlay/MeterBarChartOverlayWithTooltip.js +61 -16
  1015. package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartOverlay/MeterBarChartOverlayWithTooltip.js.map +2 -2
  1016. package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholds/MeterBarChartThresholds.css +1 -1
  1017. package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholds/MeterBarChartThresholds.sty.js +1 -1
  1018. package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholds/MeterBarChartThresholds.sty.js.map +1 -1
  1019. package/esm/charts/meter-bar/single-meter-bar/context/MeterBarChartInternalConfigContext.js.map +1 -1
  1020. package/esm/charts/meter-bar/single-meter-bar/types/default.js +2 -1
  1021. package/esm/charts/meter-bar/single-meter-bar/types/default.js.map +2 -2
  1022. package/esm/charts/meter-bar/single-meter-bar/utils/build-meter-bar-chart-config.js +5 -1
  1023. package/esm/charts/meter-bar/single-meter-bar/utils/build-meter-bar-chart-config.js.map +2 -2
  1024. package/esm/charts/meter-bar/single-meter-bar/utils/iterate-slots.js +4 -1
  1025. package/esm/charts/meter-bar/single-meter-bar/utils/iterate-slots.js.map +2 -2
  1026. package/esm/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.css +1 -1
  1027. package/esm/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.sty.js +1 -1
  1028. package/esm/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.sty.js.map +1 -1
  1029. package/esm/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.css +1 -1
  1030. package/esm/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.sty.js +1 -1
  1031. package/esm/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.sty.js.map +1 -1
  1032. package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.css +1 -1
  1033. package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.sty.js +1 -1
  1034. package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.sty.js.map +1 -1
  1035. package/esm/charts/pie/components/PieChartPlot/PieChartPlot.css +1 -1
  1036. package/esm/charts/pie/components/PieChartPlot/PieChartPlot.sty.js +1 -1
  1037. package/esm/charts/pie/components/PieChartPlot/PieChartPlot.sty.js.map +1 -1
  1038. package/esm/charts/pie/hooks/usePieHandlers.js +3 -3
  1039. package/esm/charts/pie/hooks/usePieHandlers.js.map +2 -2
  1040. package/esm/charts/pie/hooks/useSliceHandlers.js +7 -41
  1041. package/esm/charts/pie/hooks/useSliceHandlers.js.map +2 -2
  1042. package/esm/charts/single-value/SingleValue.css +1 -1
  1043. package/esm/charts/single-value/SingleValue.js +4 -1
  1044. package/esm/charts/single-value/SingleValue.js.map +2 -2
  1045. package/esm/charts/single-value/SingleValue.sty.js +1 -1
  1046. package/esm/charts/single-value/SingleValue.sty.js.map +1 -1
  1047. package/esm/charts/single-value-grid/SingleValueGrid.css +2 -2
  1048. package/esm/charts/single-value-grid/SingleValueGrid.js +4 -1
  1049. package/esm/charts/single-value-grid/SingleValueGrid.js.map +2 -2
  1050. package/esm/charts/single-value-grid/SingleValueGrid.sty.js +1 -1
  1051. package/esm/charts/single-value-grid/SingleValueGrid.sty.js.map +1 -1
  1052. package/esm/charts/single-value-grid/components/GlobalFontSizeVariables.css +1 -1
  1053. package/esm/charts/single-value-grid/components/GlobalFontSizeVariables.sty.js +1 -1
  1054. package/esm/charts/single-value-grid/components/GlobalFontSizeVariables.sty.js.map +1 -1
  1055. package/esm/charts/timeseries/TimeseriesChart.js +65 -131
  1056. package/esm/charts/timeseries/TimeseriesChart.js.map +2 -2
  1057. package/esm/charts/timeseries/TimeseriesChartInternal.js +136 -0
  1058. package/esm/charts/timeseries/TimeseriesChartInternal.js.map +7 -0
  1059. package/esm/charts/timeseries/TimeseriesChartRoot.js +2 -54
  1060. package/esm/charts/timeseries/TimeseriesChartRoot.js.map +2 -2
  1061. package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.css +2 -2
  1062. package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.js +4 -2
  1063. package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.js.map +2 -2
  1064. package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.sty.js +1 -1
  1065. package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.sty.js.map +1 -1
  1066. package/esm/charts/timeseries/components/overlays/TimeseriesOverlays.css +4 -4
  1067. package/esm/charts/timeseries/components/overlays/TimeseriesOverlays.sty.js +4 -4
  1068. package/esm/charts/timeseries/components/overlays/TimeseriesOverlays.sty.js.map +1 -1
  1069. package/esm/charts/timeseries/components/thresholds/ThresholdIndicators.css +2 -2
  1070. package/esm/charts/timeseries/components/thresholds/ThresholdIndicators.sty.js +2 -2
  1071. package/esm/charts/timeseries/components/thresholds/ThresholdIndicators.sty.js.map +1 -1
  1072. package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.css +1 -1
  1073. package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.sty.js +1 -1
  1074. package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.sty.js.map +1 -1
  1075. package/esm/charts/tree-map/components/TreeMapTooltip/TreeMapOverlayTooltip.js +12 -1
  1076. package/esm/charts/tree-map/components/TreeMapTooltip/TreeMapOverlayTooltip.js.map +2 -2
  1077. package/esm/charts/tree-map/components/canvas/TreeMapSquareRenderer.js +3 -2
  1078. package/esm/charts/tree-map/components/canvas/TreeMapSquareRenderer.js.map +2 -2
  1079. package/esm/charts/tree-map/components/canvas/utils/canvas-label-utils.js +7 -7
  1080. package/esm/charts/tree-map/components/canvas/utils/canvas-label-utils.js.map +2 -2
  1081. package/esm/charts/tree-map/constants.js +1 -0
  1082. package/esm/charts/tree-map/constants.js.map +2 -2
  1083. package/esm/charts/tree-map/contexts/TreeMapCustomTooltipContext.js +10 -0
  1084. package/esm/charts/tree-map/contexts/TreeMapCustomTooltipContext.js.map +7 -0
  1085. package/esm/charts/tree-map/hooks/useTreeMapCustomTooltip.js +7 -0
  1086. package/esm/charts/tree-map/hooks/useTreeMapCustomTooltip.js.map +7 -0
  1087. package/esm/charts/tree-map/providers/TreeMapChartProviders.js +13 -2
  1088. package/esm/charts/tree-map/providers/TreeMapChartProviders.js.map +2 -2
  1089. package/esm/charts/tree-map/slots/Tooltip.js +1 -1
  1090. package/esm/charts/tree-map/slots/Tooltip.js.map +2 -2
  1091. package/esm/charts/tree-map/utils/build-overlay-tooltip-data.js +3 -1
  1092. package/esm/charts/tree-map/utils/build-overlay-tooltip-data.js.map +2 -2
  1093. package/esm/charts/tree-map/utils/build-tree-map-chart-config.js +2 -1
  1094. package/esm/charts/tree-map/utils/build-tree-map-chart-config.js.map +2 -2
  1095. package/esm/charts/tree-map/utils/iterate-slots.js +8 -2
  1096. package/esm/charts/tree-map/utils/iterate-slots.js.map +2 -2
  1097. package/esm/charts/xy-chart/XYChart.js +2 -0
  1098. package/esm/charts/xy-chart/XYChart.js.map +2 -2
  1099. package/esm/charts/xy-chart/XYChartRoot.js +55 -39
  1100. package/esm/charts/xy-chart/XYChartRoot.js.map +2 -2
  1101. package/esm/charts/xy-chart/components/axes/AxisArea.css +1 -1
  1102. package/esm/charts/xy-chart/components/axes/AxisArea.sty.js +1 -1
  1103. package/esm/charts/xy-chart/components/axes/AxisArea.sty.js.map +1 -1
  1104. package/esm/charts/xy-chart/components/axes/AxisTickWithTruncation.css +3 -3
  1105. package/esm/charts/xy-chart/components/axes/AxisTickWithTruncation.sty.js +3 -3
  1106. package/esm/charts/xy-chart/components/axes/AxisTickWithTruncation.sty.js.map +1 -1
  1107. package/esm/charts/xy-chart/components/axes/XYChartBottomAxisArea.js +78 -63
  1108. package/esm/charts/xy-chart/components/axes/XYChartBottomAxisArea.js.map +2 -2
  1109. package/esm/charts/xy-chart/components/axes/XYChartTopAxisArea.js +78 -63
  1110. package/esm/charts/xy-chart/components/axes/XYChartTopAxisArea.js.map +2 -2
  1111. package/esm/charts/xy-chart/components/axes/utils/compute-collision-aware-max-space.js +35 -0
  1112. package/esm/charts/xy-chart/components/axes/utils/compute-collision-aware-max-space.js.map +7 -0
  1113. package/esm/charts/xy-chart/components/displays/{BarDisplay.js → BarDisplay/BarDisplay.js} +13 -10
  1114. package/esm/charts/xy-chart/components/displays/BarDisplay/BarDisplay.js.map +7 -0
  1115. package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelLayout.js +46 -0
  1116. package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelLayout.js.map +7 -0
  1117. package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.css +19 -0
  1118. package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.js +150 -0
  1119. package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.js.map +7 -0
  1120. package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js +10 -0
  1121. package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js.map +7 -0
  1122. package/esm/charts/xy-chart/components/displays/BarDisplay/HorizontalBarLabel.js +63 -0
  1123. package/esm/charts/xy-chart/components/displays/BarDisplay/HorizontalBarLabel.js.map +7 -0
  1124. package/esm/charts/xy-chart/components/displays/BarDisplay/VerticalBarLabel.js +64 -0
  1125. package/esm/charts/xy-chart/components/displays/BarDisplay/VerticalBarLabel.js.map +7 -0
  1126. package/esm/charts/xy-chart/components/displays/BarDisplay/label-utils.js +7 -0
  1127. package/esm/charts/xy-chart/components/displays/BarDisplay/label-utils.js.map +7 -0
  1128. package/esm/charts/xy-chart/components/displays/bar-accessors.js +7 -6
  1129. package/esm/charts/xy-chart/components/displays/bar-accessors.js.map +2 -2
  1130. package/esm/charts/xy-chart/components/legend/XYLegend/xy-legend.css +1 -1
  1131. package/esm/charts/xy-chart/components/legend/XYLegend/xy-legend.sty.js +1 -1
  1132. package/esm/charts/xy-chart/components/legend/XYLegend/xy-legend.sty.js.map +1 -1
  1133. package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.css +1 -1
  1134. package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.sty.js +1 -1
  1135. package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.sty.js.map +1 -1
  1136. package/esm/charts/xy-chart/components/overlay/explore/XYChartExplore.css +2 -2
  1137. package/esm/charts/xy-chart/components/overlay/explore/XYChartExplore.sty.js +2 -2
  1138. package/esm/charts/xy-chart/components/overlay/explore/XYChartExplore.sty.js.map +1 -1
  1139. package/esm/charts/xy-chart/components/overlay/hooks/useApplyPanDelta.js +3 -3
  1140. package/esm/charts/xy-chart/components/overlay/hooks/useApplyPanDelta.js.map +2 -2
  1141. package/esm/charts/xy-chart/components/overlay/hooks/useApplyZoomDelta.js +3 -3
  1142. package/esm/charts/xy-chart/components/overlay/hooks/useApplyZoomDelta.js.map +2 -2
  1143. package/esm/charts/xy-chart/components/overlay/hooks/useOverlayEvents.js +27 -39
  1144. package/esm/charts/xy-chart/components/overlay/hooks/useOverlayEvents.js.map +2 -2
  1145. package/esm/charts/xy-chart/components/overlay/hooks/useResetInteractions.js +3 -3
  1146. package/esm/charts/xy-chart/components/overlay/hooks/useResetInteractions.js.map +2 -2
  1147. package/esm/charts/xy-chart/components/overlay/utils/get-selected-datapoints.js +1 -1
  1148. package/esm/charts/xy-chart/components/overlay/utils/get-selected-datapoints.js.map +1 -1
  1149. package/esm/charts/xy-chart/components/overlay/utils/serialize-rectangle-series-values.js +1 -1
  1150. package/esm/charts/xy-chart/components/overlay/utils/serialize-rectangle-series-values.js.map +1 -1
  1151. package/esm/charts/xy-chart/components/selection/TooltipHeader.css +2 -2
  1152. package/esm/charts/xy-chart/components/selection/TooltipHeader.sty.js +2 -2
  1153. package/esm/charts/xy-chart/components/selection/TooltipHeader.sty.js.map +1 -1
  1154. package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.css +1 -1
  1155. package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.sty.js +1 -1
  1156. package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.sty.js.map +1 -1
  1157. package/esm/charts/xy-chart/components/tooltip/BarSeriesTooltip.js +11 -0
  1158. package/esm/charts/xy-chart/components/tooltip/BarSeriesTooltip.js.map +2 -2
  1159. package/esm/charts/xy-chart/components/tooltip/TopListTooltip.js +66 -0
  1160. package/esm/charts/xy-chart/components/tooltip/TopListTooltip.js.map +7 -0
  1161. package/esm/charts/xy-chart/components/tooltip/XYChartTooltipTemplate/XYChartTooltipTemplate.css +1 -1
  1162. package/esm/charts/xy-chart/components/tooltip/XYChartTooltipTemplate/XYChartTooltipTemplate.sty.js +1 -1
  1163. package/esm/charts/xy-chart/components/tooltip/XYChartTooltipTemplate/XYChartTooltipTemplate.sty.js.map +1 -1
  1164. package/esm/charts/xy-chart/components/tooltip/utils/tooltip-styles.css +5 -5
  1165. package/esm/charts/xy-chart/components/tooltip/utils/tooltip-styles.sty.js +4 -4
  1166. package/esm/charts/xy-chart/components/tooltip/utils/tooltip-styles.sty.js.map +1 -1
  1167. package/esm/charts/xy-chart/context/XYChartLegendHidden.context.js +9 -0
  1168. package/esm/charts/xy-chart/context/XYChartLegendHidden.context.js.map +7 -0
  1169. package/esm/charts/xy-chart/layout/XYChartLayout.css +2 -2
  1170. package/esm/charts/xy-chart/layout/XYChartLayout.sty.js +2 -2
  1171. package/esm/charts/xy-chart/layout/XYChartLayout.sty.js.map +1 -1
  1172. package/esm/charts/xy-chart/layout/XYChartShiftedDisplay.js +1 -1
  1173. package/esm/charts/xy-chart/layout/XYChartShiftedDisplay.js.map +1 -1
  1174. package/esm/charts/xy-chart/processing-strategies/strategies/area-series.js +2 -1
  1175. package/esm/charts/xy-chart/processing-strategies/strategies/area-series.js.map +2 -2
  1176. package/esm/charts/xy-chart/processing-strategies/strategies/bar-series.js +9 -3
  1177. package/esm/charts/xy-chart/processing-strategies/strategies/bar-series.js.map +2 -2
  1178. package/esm/charts/xy-chart/processing-strategies/strategies/groupable-series.js +42 -5
  1179. package/esm/charts/xy-chart/processing-strategies/strategies/groupable-series.js.map +2 -2
  1180. package/esm/charts/xy-chart/processing-strategies/strategies/stackable-series.js +39 -4
  1181. package/esm/charts/xy-chart/processing-strategies/strategies/stackable-series.js.map +2 -2
  1182. package/esm/charts/xy-chart/processing-strategies/utils/access-datapoint/get-bar-datapoints.js +14 -2
  1183. package/esm/charts/xy-chart/processing-strategies/utils/access-datapoint/get-bar-datapoints.js.map +2 -2
  1184. package/esm/charts/xy-chart/providers/XYChartAxesTicksProvider.js +9 -2
  1185. package/esm/charts/xy-chart/providers/XYChartAxesTicksProvider.js.map +2 -2
  1186. package/esm/charts/xy-chart/slots/Tooltip.js.map +2 -2
  1187. package/esm/charts/xy-chart/types/xy-chart-internals.js.map +2 -2
  1188. package/esm/charts/xy-chart/types/xy-chart.js.map +1 -1
  1189. package/esm/charts/xy-chart/utils/generate-nice-unit-ticks.js +39 -8
  1190. package/esm/charts/xy-chart/utils/generate-nice-unit-ticks.js.map +2 -2
  1191. package/esm/charts/xy-chart/utils/get-ticks-formatted-by-config.js +93 -11
  1192. package/esm/charts/xy-chart/utils/get-ticks-formatted-by-config.js.map +2 -2
  1193. package/esm/charts/xy-chart-adoption/timeseries/TimeseriesToXY.js +70 -0
  1194. package/esm/charts/xy-chart-adoption/timeseries/TimeseriesToXY.js.map +7 -0
  1195. package/esm/charts/xy-chart-adoption/timeseries/iterate-slots.js +60 -0
  1196. package/esm/charts/xy-chart-adoption/timeseries/iterate-slots.js.map +7 -0
  1197. package/esm/charts/xy-chart-adoption/timeseries/transformer-data-to-xy.js +54 -18
  1198. package/esm/charts/xy-chart-adoption/timeseries/transformer-data-to-xy.js.map +2 -2
  1199. package/esm/charts/xy-chart-adoption/timeseries/types/timeseries.js +7 -0
  1200. package/esm/charts/xy-chart-adoption/timeseries/types/timeseries.js.map +7 -0
  1201. package/esm/charts/xy-chart-adoption/timeseries/utils/render-series.js +42 -0
  1202. package/esm/charts/xy-chart-adoption/timeseries/utils/render-series.js.map +7 -0
  1203. package/esm/content/accordion/Accordion.css +14 -14
  1204. package/esm/content/accordion/Accordion.sty.js +8 -8
  1205. package/esm/content/accordion/Accordion.sty.js.map +1 -1
  1206. package/esm/content/ai-loading-indicator/AiLoadingIndicator.css +12 -12
  1207. package/esm/content/ai-loading-indicator/AiLoadingIndicator.sty.js +4 -4
  1208. package/esm/content/ai-loading-indicator/AiLoadingIndicator.sty.js.map +1 -1
  1209. package/esm/content/ai-response/AiResponse.css +5 -5
  1210. package/esm/content/ai-response/AiResponse.sty.js +2 -2
  1211. package/esm/content/ai-response/AiResponse.sty.js.map +1 -1
  1212. package/esm/content/avatar/Avatar.css +13 -13
  1213. package/esm/content/avatar/Avatar.sty.js +4 -4
  1214. package/esm/content/avatar/Avatar.sty.js.map +1 -1
  1215. package/esm/content/avatar-group/AvatarGroup.css +3 -3
  1216. package/esm/content/avatar-group/AvatarGroup.sty.js +2 -2
  1217. package/esm/content/avatar-group/AvatarGroup.sty.js.map +1 -1
  1218. package/esm/content/chip/BaseChip.css +40 -40
  1219. package/esm/content/chip/BaseChip.sty.js +5 -5
  1220. package/esm/content/chip/BaseChip.sty.js.map +1 -1
  1221. package/esm/content/chip/ChipContent.css +11 -11
  1222. package/esm/content/chip/ChipContent.sty.js +2 -2
  1223. package/esm/content/chip/ChipContent.sty.js.map +1 -1
  1224. package/esm/content/chip/ChipDeleteButton.css +19 -19
  1225. package/esm/content/chip/ChipDeleteButton.sty.js +4 -4
  1226. package/esm/content/chip/ChipDeleteButton.sty.js.map +1 -1
  1227. package/esm/content/chip/ChipKey.css +6 -6
  1228. package/esm/content/chip/ChipKey.sty.js +1 -1
  1229. package/esm/content/chip/ChipKey.sty.js.map +1 -1
  1230. package/esm/content/chip/GroupedChip.css +3 -3
  1231. package/esm/content/chip/GroupedChip.sty.js +3 -3
  1232. package/esm/content/chip/GroupedChip.sty.js.map +1 -1
  1233. package/esm/content/chip-group/ChipGroup.css +4 -4
  1234. package/esm/content/chip-group/ChipGroup.sty.js +1 -1
  1235. package/esm/content/chip-group/ChipGroup.sty.js.map +1 -1
  1236. package/esm/content/chip-group/Control.css +4 -4
  1237. package/esm/content/chip-group/Control.sty.js +1 -1
  1238. package/esm/content/chip-group/Control.sty.js.map +1 -1
  1239. package/esm/content/code-snippet/CodeHighlight.css +25 -25
  1240. package/esm/content/code-snippet/CodeHighlight.sty.js +5 -5
  1241. package/esm/content/code-snippet/CodeHighlight.sty.js.map +1 -1
  1242. package/esm/content/code-snippet/CodeSnippet.css +5 -5
  1243. package/esm/content/code-snippet/CodeSnippet.sty.js +2 -2
  1244. package/esm/content/code-snippet/CodeSnippet.sty.js.map +1 -1
  1245. package/esm/content/code-snippet/prism-dql-language.js +9 -5
  1246. package/esm/content/code-snippet/prism-dql-language.js.map +2 -2
  1247. package/esm/content/empty-state/EmptyState.css +28 -28
  1248. package/esm/content/empty-state/EmptyState.sty.js +7 -7
  1249. package/esm/content/empty-state/EmptyState.sty.js.map +1 -1
  1250. package/esm/content/empty-state/slot-components/Footer.css +1 -1
  1251. package/esm/content/empty-state/slot-components/Footer.sty.js +1 -1
  1252. package/esm/content/empty-state/slot-components/Footer.sty.js.map +1 -1
  1253. package/esm/content/empty-state/slot-components/Visual.css +3 -3
  1254. package/esm/content/empty-state/slot-components/Visual.sty.js +1 -1
  1255. package/esm/content/empty-state/slot-components/Visual.sty.js.map +1 -1
  1256. package/esm/content/expandable-text/ExpandableText.css +7 -7
  1257. package/esm/content/expandable-text/ExpandableText.sty.js +2 -2
  1258. package/esm/content/expandable-text/ExpandableText.sty.js.map +1 -1
  1259. package/esm/content/feature-highlight/FeatureHighlight.css +12 -12
  1260. package/esm/content/feature-highlight/FeatureHighlight.sty.js +3 -3
  1261. package/esm/content/feature-highlight/FeatureHighlight.sty.js.map +1 -1
  1262. package/esm/content/health-indicator/styles.css +23 -23
  1263. package/esm/content/health-indicator/styles.sty.js +1 -1
  1264. package/esm/content/health-indicator/styles.sty.js.map +1 -1
  1265. package/esm/content/information-overlay/InformationOverlay.css +25 -25
  1266. package/esm/content/information-overlay/InformationOverlay.sty.js +5 -5
  1267. package/esm/content/information-overlay/InformationOverlay.sty.js.map +1 -1
  1268. package/esm/content/information-overlay/Trigger.js +2 -2
  1269. package/esm/content/information-overlay/Trigger.js.map +2 -2
  1270. package/esm/content/keyboard-shortcut/KeyboardShortcut.css +14 -14
  1271. package/esm/content/keyboard-shortcut/KeyboardShortcut.sty.js +2 -2
  1272. package/esm/content/keyboard-shortcut/KeyboardShortcut.sty.js.map +1 -1
  1273. package/esm/content/markdown/Markdown.css +3 -3
  1274. package/esm/content/markdown/Markdown.sty.js +1 -1
  1275. package/esm/content/markdown/Markdown.sty.js.map +1 -1
  1276. package/esm/content/markdown/transformers/typography-mapping.css +9 -9
  1277. package/esm/content/markdown/transformers/typography-mapping.sty.js +6 -6
  1278. package/esm/content/markdown/transformers/typography-mapping.sty.js.map +1 -1
  1279. package/esm/content/microguide/Microguide.css +11 -11
  1280. package/esm/content/microguide/Microguide.sty.js +7 -7
  1281. package/esm/content/microguide/Microguide.sty.js.map +1 -1
  1282. package/esm/content/progress/ProgressBar.css +71 -71
  1283. package/esm/content/progress/ProgressBar.sty.js +5 -5
  1284. package/esm/content/progress/ProgressBar.sty.js.map +1 -1
  1285. package/esm/content/progress/ProgressBarIcon.css +2 -2
  1286. package/esm/content/progress/ProgressBarIcon.sty.js +1 -1
  1287. package/esm/content/progress/ProgressBarIcon.sty.js.map +1 -1
  1288. package/esm/content/progress/ProgressBarLabel.css +3 -3
  1289. package/esm/content/progress/ProgressBarLabel.sty.js +1 -1
  1290. package/esm/content/progress/ProgressBarLabel.sty.js.map +1 -1
  1291. package/esm/content/progress/ProgressBarValue.css +5 -5
  1292. package/esm/content/progress/ProgressBarValue.sty.js +1 -1
  1293. package/esm/content/progress/ProgressBarValue.sty.js.map +1 -1
  1294. package/esm/content/progress/ProgressCircle.css +40 -40
  1295. package/esm/content/progress/ProgressCircle.sty.js +5 -5
  1296. package/esm/content/progress/ProgressCircle.sty.js.map +1 -1
  1297. package/esm/content/shared-components/Visual.css +3 -3
  1298. package/esm/content/shared-components/Visual.sty.js +1 -1
  1299. package/esm/content/shared-components/Visual.sty.js.map +1 -1
  1300. package/esm/content/skeleton/Skeleton.css +7 -7
  1301. package/esm/content/skeleton/Skeleton.sty.js +5 -5
  1302. package/esm/content/skeleton/Skeleton.sty.js.map +1 -1
  1303. package/esm/content/terminology-overlay/TerminologyOverlay.css +4 -4
  1304. package/esm/content/terminology-overlay/TerminologyOverlay.js +16 -4
  1305. package/esm/content/terminology-overlay/TerminologyOverlay.js.map +2 -2
  1306. package/esm/content/terminology-overlay/TerminologyOverlay.sty.js +1 -1
  1307. package/esm/content/terminology-overlay/TerminologyOverlay.sty.js.map +1 -1
  1308. package/esm/content/terminology-overlay/Trigger.js +5 -1
  1309. package/esm/content/terminology-overlay/Trigger.js.map +2 -2
  1310. package/esm/core/components/app-root/AppRoot.css +2 -2
  1311. package/esm/core/components/app-root/AppRoot.sty.js +1 -1
  1312. package/esm/core/components/app-root/AppRoot.sty.js.map +1 -1
  1313. package/esm/core/components/visually-hidden/VisuallyHidden.css +1 -1
  1314. package/esm/core/components/visually-hidden/VisuallyHidden.sty.js +1 -1
  1315. package/esm/core/components/visually-hidden/VisuallyHidden.sty.js.map +1 -1
  1316. package/esm/core/contexts/PermissionsContext.js +17 -0
  1317. package/esm/core/contexts/PermissionsContext.js.map +7 -0
  1318. package/esm/core/dql/dql-common.js +2 -0
  1319. package/esm/core/dql/dql-common.js.map +2 -2
  1320. package/esm/core/external-links.js +11 -0
  1321. package/esm/core/external-links.js.map +7 -0
  1322. package/esm/core/hooks/usePermissions.js +37 -0
  1323. package/esm/core/hooks/usePermissions.js.map +7 -0
  1324. package/esm/core/index.js +4 -0
  1325. package/esm/core/index.js.map +2 -2
  1326. package/esm/core/sdk/sdk-logger.js +2 -2
  1327. package/esm/core/styles/defaultChartValues.css +1 -1
  1328. package/esm/core/styles/defaultChartValues.sty.js +1 -1
  1329. package/esm/core/styles/defaultChartValues.sty.js.map +1 -1
  1330. package/esm/core/styles/focusRing.css +66 -66
  1331. package/esm/core/styles/focusRing.sty.js +2 -2
  1332. package/esm/core/styles/focusRing.sty.js.map +1 -1
  1333. package/esm/core/styles/focusRingStatic.css +34 -34
  1334. package/esm/core/styles/focusRingStatic.sty.js +1 -1
  1335. package/esm/core/styles/focusRingStatic.sty.js.map +1 -1
  1336. package/esm/core/styles/virtualFocus.css +2 -2
  1337. package/esm/core/styles/virtualFocus.sty.js +1 -1
  1338. package/esm/core/styles/virtualFocus.sty.js.map +1 -1
  1339. package/esm/core/time/timeframeStore/actions/dateTimePicker.js +5 -6
  1340. package/esm/core/time/timeframeStore/actions/dateTimePicker.js.map +2 -2
  1341. package/esm/core/time/timeframeStore/actions/dateTimeRangePicker.js +5 -7
  1342. package/esm/core/time/timeframeStore/actions/dateTimeRangePicker.js.map +2 -2
  1343. package/esm/core/time/timeframeStore/actions/timeframeSelector.js +10 -10
  1344. package/esm/core/time/timeframeStore/actions/timeframeSelector.js.map +2 -2
  1345. package/esm/core/time/useDateTimeMessages.js +6 -6
  1346. package/esm/core/time/useDateTimeMessages.js.map +2 -2
  1347. package/esm/core/time/validation.js +2 -2
  1348. package/esm/core/time/validation.js.map +2 -2
  1349. package/esm/core/utils/colorUtils.css +60 -60
  1350. package/esm/core/utils/colorUtils.sty.js +2 -2
  1351. package/esm/core/utils/colorUtils.sty.js.map +1 -1
  1352. package/esm/core/utils/permissionsQueryClient.js +15 -0
  1353. package/esm/core/utils/permissionsQueryClient.js.map +7 -0
  1354. package/esm/editors/base-code-editor/BaseCodeEditor.css +133 -133
  1355. package/esm/editors/base-code-editor/BaseCodeEditor.sty.js +2 -2
  1356. package/esm/editors/base-code-editor/BaseCodeEditor.sty.js.map +1 -1
  1357. package/esm/editors/dql-editor/DQLEditor.js +124 -75
  1358. package/esm/editors/dql-editor/DQLEditor.js.map +2 -2
  1359. package/esm/editors/dql-editor/actions-menu/ActionsMenu.css +28 -0
  1360. package/esm/editors/dql-editor/actions-menu/ActionsMenu.js +76 -0
  1361. package/esm/editors/dql-editor/actions-menu/ActionsMenu.js.map +7 -0
  1362. package/esm/editors/dql-editor/actions-menu/ActionsMenu.sty.js +11 -0
  1363. package/esm/editors/dql-editor/actions-menu/ActionsMenu.sty.js.map +7 -0
  1364. package/esm/editors/dql-editor/actions-menu/actions-menu-messages.js +22 -0
  1365. package/esm/editors/dql-editor/actions-menu/actions-menu-messages.js.map +7 -0
  1366. package/esm/editors/dql-editor/dql/DocumentationLink.js +2 -3
  1367. package/esm/editors/dql-editor/dql/DocumentationLink.js.map +2 -2
  1368. package/esm/editors/dql-editor/dql/SuggestionPart.css +1 -1
  1369. package/esm/editors/dql-editor/dql/SuggestionPart.sty.js +1 -1
  1370. package/esm/editors/dql-editor/dql/SuggestionPart.sty.js.map +1 -1
  1371. package/esm/editors/dql-editor/dql/dql-language.js +25 -7
  1372. package/esm/editors/dql-editor/dql/dql-language.js.map +2 -2
  1373. package/esm/editors/dql-editor/dql/dql.js +8 -2
  1374. package/esm/editors/dql-editor/dql/dql.js.map +2 -2
  1375. package/esm/filters/filter-field/FilterField.css +117 -117
  1376. package/esm/filters/filter-field/FilterField.js +89 -68
  1377. package/esm/filters/filter-field/FilterField.js.map +2 -2
  1378. package/esm/filters/filter-field/FilterField.sty.js +28 -28
  1379. package/esm/filters/filter-field/FilterField.sty.js.map +1 -1
  1380. package/esm/filters/filter-field/components/FilterFieldSuffixButtons.css +3 -3
  1381. package/esm/filters/filter-field/components/FilterFieldSuffixButtons.js +1 -0
  1382. package/esm/filters/filter-field/components/FilterFieldSuffixButtons.js.map +2 -2
  1383. package/esm/filters/filter-field/components/FilterFieldSuffixButtons.sty.js +3 -3
  1384. package/esm/filters/filter-field/components/FilterFieldSuffixButtons.sty.js.map +1 -1
  1385. package/esm/filters/filter-field/components/FilterStatement.css +13 -13
  1386. package/esm/filters/filter-field/components/FilterStatement.sty.js +6 -6
  1387. package/esm/filters/filter-field/components/FilterStatement.sty.js.map +1 -1
  1388. package/esm/filters/filter-field/hooks/useSuggestions.js +7 -1
  1389. package/esm/filters/filter-field/hooks/useSuggestions.js.map +2 -2
  1390. package/esm/filters/filter-field/suggestions/RecentPinnedSuggestionItem.css +9 -9
  1391. package/esm/filters/filter-field/suggestions/RecentPinnedSuggestionItem.sty.js +2 -2
  1392. package/esm/filters/filter-field/suggestions/RecentPinnedSuggestionItem.sty.js.map +1 -1
  1393. package/esm/filters/filter-field/suggestions/Suggestion.css +24 -24
  1394. package/esm/filters/filter-field/suggestions/Suggestion.js +10 -1
  1395. package/esm/filters/filter-field/suggestions/Suggestion.js.map +2 -2
  1396. package/esm/filters/filter-field/suggestions/Suggestion.sty.js +17 -15
  1397. package/esm/filters/filter-field/suggestions/Suggestion.sty.js.map +2 -2
  1398. package/esm/filters/filter-field/suggestions/SuggestionDetails.css +2 -2
  1399. package/esm/filters/filter-field/suggestions/SuggestionDetails.sty.js +2 -2
  1400. package/esm/filters/filter-field/suggestions/SuggestionDetails.sty.js.map +1 -1
  1401. package/esm/filters/filter-field/suggestions/SuggestionGroup.css +6 -6
  1402. package/esm/filters/filter-field/suggestions/SuggestionGroup.sty.js +3 -3
  1403. package/esm/filters/filter-field/suggestions/SuggestionGroup.sty.js.map +1 -1
  1404. package/esm/filters/filter-field/suggestions/SuggestionGroupLabel.css +1 -1
  1405. package/esm/filters/filter-field/suggestions/SuggestionGroupLabel.sty.js +1 -1
  1406. package/esm/filters/filter-field/suggestions/SuggestionGroupLabel.sty.js.map +1 -1
  1407. package/esm/filters/filter-field/suggestions/SuggestionTips.css +7 -7
  1408. package/esm/filters/filter-field/suggestions/SuggestionTips.sty.js +5 -5
  1409. package/esm/filters/filter-field/suggestions/SuggestionTips.sty.js.map +1 -1
  1410. package/esm/filters/filter-field/suggestions/Suggestions.js +1 -1
  1411. package/esm/filters/filter-field/suggestions/Suggestions.js.map +2 -2
  1412. package/esm/filters/filter-field/suggestions/SuggestionsOverlay.css +7 -7
  1413. package/esm/filters/filter-field/suggestions/SuggestionsOverlay.sty.js +5 -5
  1414. package/esm/filters/filter-field/suggestions/SuggestionsOverlay.sty.js.map +1 -1
  1415. package/esm/filters/filter-field/utils/get-suggestion-transaction.js +1 -1
  1416. package/esm/filters/filter-field/utils/get-suggestion-transaction.js.map +2 -2
  1417. package/esm/filters/filter-field/utils/suggestions-utils/get-suggestions.js +15 -18
  1418. package/esm/filters/filter-field/utils/suggestions-utils/get-suggestions.js.map +2 -2
  1419. package/esm/filters/filter-field/utils/suggestions-utils/operator-suggestions.js +4 -2
  1420. package/esm/filters/filter-field/utils/suggestions-utils/operator-suggestions.js.map +2 -2
  1421. package/esm/filters/filter-field/utils/suggestions-utils/suggestion-matching.js +46 -0
  1422. package/esm/filters/filter-field/utils/suggestions-utils/suggestion-matching.js.map +7 -0
  1423. package/esm/filters/segment-selector/SegmentSelector.css +4 -4
  1424. package/esm/filters/segment-selector/SegmentSelector.js +4 -4
  1425. package/esm/filters/segment-selector/SegmentSelector.js.map +2 -2
  1426. package/esm/filters/segment-selector/SegmentSelector.sty.js +4 -4
  1427. package/esm/filters/segment-selector/SegmentSelector.sty.js.map +1 -1
  1428. package/esm/filters/segment-selector/parts/EmptySegments.css +1 -1
  1429. package/esm/filters/segment-selector/parts/EmptySegments.js +7 -3
  1430. package/esm/filters/segment-selector/parts/EmptySegments.js.map +2 -2
  1431. package/esm/filters/segment-selector/parts/EmptySegments.sty.js +1 -1
  1432. package/esm/filters/segment-selector/parts/EmptySegments.sty.js.map +1 -1
  1433. package/esm/filters/segment-selector/parts/Overlay.css +8 -8
  1434. package/esm/filters/segment-selector/parts/Overlay.js +8 -4
  1435. package/esm/filters/segment-selector/parts/Overlay.js.map +2 -2
  1436. package/esm/filters/segment-selector/parts/Overlay.sty.js +8 -8
  1437. package/esm/filters/segment-selector/parts/Overlay.sty.js.map +1 -1
  1438. package/esm/filters/segment-selector/parts/SegmentFooter.js +7 -3
  1439. package/esm/filters/segment-selector/parts/SegmentFooter.js.map +2 -2
  1440. package/esm/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.css +4 -4
  1441. package/esm/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.sty.js +4 -4
  1442. package/esm/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.sty.js.map +1 -1
  1443. package/esm/filters/segment-selector/parts/noAccessRights/CopyPermissionsButton.js +3 -5
  1444. package/esm/filters/segment-selector/parts/noAccessRights/CopyPermissionsButton.js.map +2 -2
  1445. package/esm/filters/segment-selector/parts/noAccessRights/NoAccessWithoutSelection.js +2 -1
  1446. package/esm/filters/segment-selector/parts/noAccessRights/NoAccessWithoutSelection.js.map +2 -2
  1447. package/esm/filters/segment-selector/parts/segmentManagementHref.js +8 -0
  1448. package/esm/filters/segment-selector/parts/segmentManagementHref.js.map +7 -0
  1449. package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.css +32 -32
  1450. package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.sty.js +10 -10
  1451. package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.sty.js.map +1 -1
  1452. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.css +22 -22
  1453. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.js +8 -4
  1454. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.js.map +2 -2
  1455. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.sty.js +7 -7
  1456. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.sty.js.map +1 -1
  1457. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.css +1 -1
  1458. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.sty.js +1 -1
  1459. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.sty.js.map +1 -1
  1460. package/esm/filters/segment-selector/parts/selectionBar/ValueSelect.js +39 -14
  1461. package/esm/filters/segment-selector/parts/selectionBar/ValueSelect.js.map +2 -2
  1462. package/esm/filters/timeframe-selector/TimeframeSelector.css +5 -1
  1463. package/esm/filters/timeframe-selector/TimeframeSelector.js +3 -10
  1464. package/esm/filters/timeframe-selector/TimeframeSelector.js.map +2 -2
  1465. package/esm/filters/timeframe-selector/TimeframeSelector.sty.js +4 -2
  1466. package/esm/filters/timeframe-selector/TimeframeSelector.sty.js.map +2 -2
  1467. package/esm/filters/timeframe-selector/TimeframeSelectorRoot.js +5 -3
  1468. package/esm/filters/timeframe-selector/TimeframeSelectorRoot.js.map +2 -2
  1469. package/esm/filters/timeframe-selector/components/TimeframeSelectorTooltip.js +1 -1
  1470. package/esm/filters/timeframe-selector/components/TimeframeSelectorTooltip.js.map +2 -2
  1471. package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.css +4 -4
  1472. package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.js +4 -0
  1473. package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.js.map +2 -2
  1474. package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.sty.js +3 -3
  1475. package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.sty.js.map +1 -1
  1476. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.css +4 -4
  1477. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.sty.js +4 -4
  1478. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.sty.js.map +1 -1
  1479. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlayFooter.js +6 -7
  1480. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlayFooter.js.map +2 -2
  1481. package/esm/filters/timeframe-selector/components/presets/Presets.css +27 -27
  1482. package/esm/filters/timeframe-selector/components/presets/Presets.sty.js +11 -11
  1483. package/esm/filters/timeframe-selector/components/presets/Presets.sty.js.map +1 -1
  1484. package/esm/filters/timeframe-selector/components/stepper/StepperButton.js +1 -1
  1485. package/esm/filters/timeframe-selector/components/stepper/StepperButton.js.map +2 -2
  1486. package/esm/filters/timeframe-selector/components/trigger/Trigger.css +11 -11
  1487. package/esm/filters/timeframe-selector/components/trigger/Trigger.js +1 -0
  1488. package/esm/filters/timeframe-selector/components/trigger/Trigger.js.map +2 -2
  1489. package/esm/filters/timeframe-selector/components/trigger/Trigger.sty.js +4 -4
  1490. package/esm/filters/timeframe-selector/components/trigger/Trigger.sty.js.map +1 -1
  1491. package/esm/filters/timeframe-selector/utils/getTimeframeDisplayValueProps.js.map +2 -2
  1492. package/esm/forms/_base-input/BaseInput.css +99 -99
  1493. package/esm/forms/_base-input/BaseInput.js +35 -20
  1494. package/esm/forms/_base-input/BaseInput.js.map +2 -2
  1495. package/esm/forms/_base-input/BaseInput.sty.js +12 -12
  1496. package/esm/forms/_base-input/BaseInput.sty.js.map +2 -2
  1497. package/esm/forms/_base-input/BaseInputContent.css +7 -7
  1498. package/esm/forms/_base-input/BaseInputContent.js +2 -0
  1499. package/esm/forms/_base-input/BaseInputContent.js.map +2 -2
  1500. package/esm/forms/_base-input/BaseInputContent.sty.js +1 -1
  1501. package/esm/forms/_base-input/BaseInputContent.sty.js.map +1 -1
  1502. package/esm/forms/_base-input/ClearButton.js +25 -0
  1503. package/esm/forms/_base-input/ClearButton.js.map +7 -0
  1504. package/esm/forms/calendar/Calendar.css +47 -47
  1505. package/esm/forms/calendar/Calendar.sty.js +11 -11
  1506. package/esm/forms/calendar/Calendar.sty.js.map +1 -1
  1507. package/esm/forms/calendar/components/CalendarItem.css +7 -7
  1508. package/esm/forms/calendar/components/CalendarItem.sty.js +4 -4
  1509. package/esm/forms/calendar/components/CalendarItem.sty.js.map +1 -1
  1510. package/esm/forms/calendar/components/CalendarOutlineIcon.css +8 -8
  1511. package/esm/forms/calendar/components/CalendarOutlineIcon.sty.js +5 -5
  1512. package/esm/forms/calendar/components/CalendarOutlineIcon.sty.js.map +1 -1
  1513. package/esm/forms/calendar/variables.sty.js +2 -2
  1514. package/esm/forms/calendar/variables.sty.js.map +1 -1
  1515. package/esm/forms/checkbox/Checkbox.css +20 -20
  1516. package/esm/forms/checkbox/Checkbox.sty.js +3 -3
  1517. package/esm/forms/checkbox/Checkbox.sty.js.map +1 -1
  1518. package/esm/forms/date-time-picker/DateTimePicker.css +75 -75
  1519. package/esm/forms/date-time-picker/DateTimePicker.sty.js +6 -6
  1520. package/esm/forms/date-time-picker/DateTimePicker.sty.js.map +1 -1
  1521. package/esm/forms/date-time-picker/DateTimePickerRoot.js +4 -0
  1522. package/esm/forms/date-time-picker/DateTimePickerRoot.js.map +2 -2
  1523. package/esm/forms/date-time-picker/hooks/useDateTimePicker.js +4 -5
  1524. package/esm/forms/date-time-picker/hooks/useDateTimePicker.js.map +2 -2
  1525. package/esm/forms/date-time-picker/utils/focusDateTimeInput.js +23 -0
  1526. package/esm/forms/date-time-picker/utils/focusDateTimeInput.js.map +2 -2
  1527. package/esm/forms/date-time-range-picker/DateRangeSelector.css +1 -1
  1528. package/esm/forms/date-time-range-picker/DateRangeSelector.sty.js +1 -1
  1529. package/esm/forms/date-time-range-picker/DateRangeSelector.sty.js.map +1 -1
  1530. package/esm/forms/date-time-range-picker/DateTimeInput.css +11 -11
  1531. package/esm/forms/date-time-range-picker/DateTimeInput.js +4 -0
  1532. package/esm/forms/date-time-range-picker/DateTimeInput.js.map +2 -2
  1533. package/esm/forms/date-time-range-picker/DateTimeInput.sty.js +3 -3
  1534. package/esm/forms/date-time-range-picker/DateTimeInput.sty.js.map +1 -1
  1535. package/esm/forms/date-time-range-picker/DateTimeRangePicker.css +27 -27
  1536. package/esm/forms/date-time-range-picker/DateTimeRangePicker.js +3 -7
  1537. package/esm/forms/date-time-range-picker/DateTimeRangePicker.js.map +2 -2
  1538. package/esm/forms/date-time-range-picker/DateTimeRangePicker.sty.js +4 -4
  1539. package/esm/forms/date-time-range-picker/DateTimeRangePicker.sty.js.map +1 -1
  1540. package/esm/forms/date-time-range-picker/DateTimeRangePickerRoot.js +24 -8
  1541. package/esm/forms/date-time-range-picker/DateTimeRangePickerRoot.js.map +2 -2
  1542. package/esm/forms/date-time-range-picker/helpers.js +56 -17
  1543. package/esm/forms/date-time-range-picker/helpers.js.map +2 -2
  1544. package/esm/forms/date-time-range-picker/hooks/useDateTimeInput.js +95 -58
  1545. package/esm/forms/date-time-range-picker/hooks/useDateTimeInput.js.map +3 -3
  1546. package/esm/forms/date-time-range-picker/hooks/useDateTimeRangePicker.js +60 -19
  1547. package/esm/forms/date-time-range-picker/hooks/useDateTimeRangePicker.js.map +2 -2
  1548. package/esm/forms/date-time-range-picker/selection-copy-helpers.js +53 -24
  1549. package/esm/forms/date-time-range-picker/selection-copy-helpers.js.map +2 -2
  1550. package/esm/forms/date-time-range-picker/selection-helpers.js +146 -48
  1551. package/esm/forms/date-time-range-picker/selection-helpers.js.map +2 -2
  1552. package/esm/forms/date-time-range-picker/useSelectionInteractionHandlers.js +5 -47
  1553. package/esm/forms/date-time-range-picker/useSelectionInteractionHandlers.js.map +2 -2
  1554. package/esm/forms/forms-core/components/field-set/FieldSet.css +2 -2
  1555. package/esm/forms/forms-core/components/field-set/FieldSet.sty.js +2 -2
  1556. package/esm/forms/forms-core/components/field-set/FieldSet.sty.js.map +1 -1
  1557. package/esm/forms/forms-core/components/form-field/FormField.sty.js +1 -1
  1558. package/esm/forms/forms-core/components/form-field/FormField.sty.js.map +1 -1
  1559. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.css +5 -5
  1560. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.sty.js +2 -2
  1561. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.sty.js.map +1 -1
  1562. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.sty.js +1 -1
  1563. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.sty.js.map +1 -1
  1564. package/esm/forms/forms-core/components/label/Label.css +5 -5
  1565. package/esm/forms/forms-core/components/label/Label.sty.js +2 -2
  1566. package/esm/forms/forms-core/components/label/Label.sty.js.map +1 -1
  1567. package/esm/forms/forms-core/time/helpers.js +1 -1
  1568. package/esm/forms/forms-core/time/helpers.js.map +2 -2
  1569. package/esm/forms/hooks/useAutofillEvent.css +8 -8
  1570. package/esm/forms/hooks/useAutofillEvent.sty.js +4 -4
  1571. package/esm/forms/hooks/useAutofillEvent.sty.js.map +1 -1
  1572. package/esm/forms/index.js.map +2 -2
  1573. package/esm/forms/number-input/NumberInputBase.js +2 -2
  1574. package/esm/forms/number-input/NumberInputBase.js.map +2 -2
  1575. package/esm/forms/number-input-v2/NumberInput.js +3 -3
  1576. package/esm/forms/number-input-v2/NumberInput.js.map +2 -2
  1577. package/esm/forms/radio/styles.css +18 -18
  1578. package/esm/forms/radio/styles.sty.js +8 -8
  1579. package/esm/forms/radio/styles.sty.js.map +1 -1
  1580. package/esm/forms/search-input/SearchInput.css +4 -1
  1581. package/esm/forms/search-input/SearchInput.js +35 -3
  1582. package/esm/forms/search-input/SearchInput.js.map +2 -2
  1583. package/esm/forms/search-input/SearchInput.sty.js +2 -1
  1584. package/esm/forms/search-input/SearchInput.sty.js.map +2 -2
  1585. package/esm/forms/search-input/Stepper.css +21 -0
  1586. package/esm/forms/search-input/Stepper.js +92 -0
  1587. package/esm/forms/search-input/Stepper.js.map +7 -0
  1588. package/esm/forms/search-input/Stepper.sty.js +16 -0
  1589. package/esm/forms/search-input/Stepper.sty.js.map +7 -0
  1590. package/esm/forms/select/Select.js +6 -2
  1591. package/esm/forms/select/Select.js.map +2 -2
  1592. package/esm/forms/select/components/Control.js +1 -0
  1593. package/esm/forms/select/components/Control.js.map +2 -2
  1594. package/esm/forms/select/components/MenuList.js +1 -0
  1595. package/esm/forms/select/components/MenuList.js.map +2 -2
  1596. package/esm/forms/select/components/Option.js +2 -0
  1597. package/esm/forms/select/components/Option.js.map +2 -2
  1598. package/esm/forms/select/hooks/use-select-options.js +0 -3
  1599. package/esm/forms/select/hooks/use-select-options.js.map +2 -2
  1600. package/esm/forms/select/styles/Select.css +47 -47
  1601. package/esm/forms/select/styles/Select.sty.js +24 -24
  1602. package/esm/forms/select/styles/Select.sty.js.map +1 -1
  1603. package/esm/forms/spin-buttons/SpinButton.css +8 -8
  1604. package/esm/forms/spin-buttons/SpinButton.sty.js +2 -2
  1605. package/esm/forms/spin-buttons/SpinButton.sty.js.map +1 -1
  1606. package/esm/forms/spin-buttons/spin-button-group/hooks/useNavigateSpinButton.js +1 -1
  1607. package/esm/forms/spin-buttons/spin-button-group/hooks/useNavigateSpinButton.js.map +2 -2
  1608. package/esm/forms/switch/Switch.css +36 -36
  1609. package/esm/forms/switch/Switch.sty.js +5 -5
  1610. package/esm/forms/switch/Switch.sty.js.map +1 -1
  1611. package/esm/forms/text-area/TextArea.css +59 -59
  1612. package/esm/forms/text-area/TextArea.sty.js +3 -3
  1613. package/esm/forms/text-area/TextArea.sty.js.map +1 -1
  1614. package/esm/forms/toggle-button-group/styles.css +58 -58
  1615. package/esm/forms/toggle-button-group/styles.sty.js +15 -15
  1616. package/esm/forms/toggle-button-group/styles.sty.js.map +1 -1
  1617. package/esm/layouts/app-header/AppHeader.css +1 -1
  1618. package/esm/layouts/app-header/AppHeader.sty.js +1 -1
  1619. package/esm/layouts/app-header/AppHeader.sty.js.map +1 -1
  1620. package/esm/layouts/app-header/Navigation.css +9 -9
  1621. package/esm/layouts/app-header/Navigation.sty.js +5 -5
  1622. package/esm/layouts/app-header/Navigation.sty.js.map +1 -1
  1623. package/esm/layouts/app-header/action-group/ActionButton.css +17 -17
  1624. package/esm/layouts/app-header/action-group/ActionButton.sty.js +3 -3
  1625. package/esm/layouts/app-header/action-group/ActionButton.sty.js.map +1 -1
  1626. package/esm/layouts/app-header/action-group/ActionGroup.css +1 -1
  1627. package/esm/layouts/app-header/action-group/ActionGroup.sty.js +1 -1
  1628. package/esm/layouts/app-header/action-group/ActionGroup.sty.js.map +1 -1
  1629. package/esm/layouts/app-header/action-group/NavItem.css +4 -4
  1630. package/esm/layouts/app-header/action-group/NavItem.sty.js +3 -3
  1631. package/esm/layouts/app-header/action-group/NavItem.sty.js.map +1 -1
  1632. package/esm/layouts/app-header/app-icon/AppIcon.css +4 -4
  1633. package/esm/layouts/app-header/app-icon/AppIcon.sty.js +1 -1
  1634. package/esm/layouts/app-header/app-icon/AppIcon.sty.js.map +1 -1
  1635. package/esm/layouts/container/Container.css +5 -5
  1636. package/esm/layouts/container/Container.sty.js +1 -1
  1637. package/esm/layouts/container/Container.sty.js.map +1 -1
  1638. package/esm/layouts/divider/Divider.css +6 -6
  1639. package/esm/layouts/divider/Divider.sty.js +1 -1
  1640. package/esm/layouts/divider/Divider.sty.js.map +1 -1
  1641. package/esm/layouts/input-group/InputGroup.css +23 -23
  1642. package/esm/layouts/input-group/InputGroup.sty.js +1 -1
  1643. package/esm/layouts/input-group/InputGroup.sty.js.map +1 -1
  1644. package/esm/layouts/page/DetailView.css +3 -3
  1645. package/esm/layouts/page/DetailView.sty.js +2 -2
  1646. package/esm/layouts/page/DetailView.sty.js.map +1 -1
  1647. package/esm/layouts/page/Header.css +2 -2
  1648. package/esm/layouts/page/Header.sty.js +1 -1
  1649. package/esm/layouts/page/Header.sty.js.map +1 -1
  1650. package/esm/layouts/page/Main.css +6 -6
  1651. package/esm/layouts/page/Main.sty.js +4 -4
  1652. package/esm/layouts/page/Main.sty.js.map +1 -1
  1653. package/esm/layouts/page/Page.css +2 -2
  1654. package/esm/layouts/page/Page.sty.js +1 -1
  1655. package/esm/layouts/page/Page.sty.js.map +1 -1
  1656. package/esm/layouts/page/Sidebar.css +22 -22
  1657. package/esm/layouts/page/Sidebar.sty.js +8 -8
  1658. package/esm/layouts/page/Sidebar.sty.js.map +1 -1
  1659. package/esm/layouts/page/panel.css +18 -18
  1660. package/esm/layouts/page/panel.sty.js +10 -10
  1661. package/esm/layouts/page/panel.sty.js.map +1 -1
  1662. package/esm/layouts/page-layout/PageLayout.css +10 -10
  1663. package/esm/layouts/page-layout/PageLayout.sty.js +6 -6
  1664. package/esm/layouts/page-layout/PageLayout.sty.js.map +1 -1
  1665. package/esm/layouts/page-layout/details-layout/DetailsControlBar.css +3 -3
  1666. package/esm/layouts/page-layout/details-layout/DetailsControlBar.sty.js +3 -3
  1667. package/esm/layouts/page-layout/details-layout/DetailsControlBar.sty.js.map +1 -1
  1668. package/esm/layouts/page-layout/details-layout/DetailsLayout.css +6 -6
  1669. package/esm/layouts/page-layout/details-layout/DetailsLayout.sty.js +5 -5
  1670. package/esm/layouts/page-layout/details-layout/DetailsLayout.sty.js.map +1 -1
  1671. package/esm/layouts/page-layout/details-layout/Overlay.css +21 -21
  1672. package/esm/layouts/page-layout/details-layout/Overlay.sty.js +4 -4
  1673. package/esm/layouts/page-layout/details-layout/Overlay.sty.js.map +1 -1
  1674. package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.css +38 -38
  1675. package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js +15 -15
  1676. package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js.map +1 -1
  1677. package/esm/layouts/split-layout/SplitLayout.css +17 -17
  1678. package/esm/layouts/split-layout/SplitLayout.sty.js +7 -7
  1679. package/esm/layouts/split-layout/SplitLayout.sty.js.map +1 -1
  1680. package/esm/layouts/surface/Surface.css +39 -39
  1681. package/esm/layouts/surface/Surface.sty.js +2 -2
  1682. package/esm/layouts/surface/Surface.sty.js.map +1 -1
  1683. package/esm/layouts/surface/variables.sty.js +1 -1
  1684. package/esm/layouts/surface/variables.sty.js.map +1 -1
  1685. package/esm/layouts/title-bar/TitleBar.css +5 -5
  1686. package/esm/layouts/title-bar/TitleBar.sty.js +4 -4
  1687. package/esm/layouts/title-bar/TitleBar.sty.js.map +1 -1
  1688. package/esm/navigation/breadcrumbs/Breadcrumbs.css +9 -9
  1689. package/esm/navigation/breadcrumbs/Breadcrumbs.sty.js +5 -5
  1690. package/esm/navigation/breadcrumbs/Breadcrumbs.sty.js.map +1 -1
  1691. package/esm/navigation/menu/Content.js +0 -2
  1692. package/esm/navigation/menu/Content.js.map +2 -2
  1693. package/esm/navigation/menu/ItemTooltip.js.map +2 -2
  1694. package/esm/navigation/menu/Menu.css +15 -15
  1695. package/esm/navigation/menu/Menu.js +2 -15
  1696. package/esm/navigation/menu/Menu.js.map +2 -2
  1697. package/esm/navigation/menu/Menu.sty.js +8 -8
  1698. package/esm/navigation/menu/Menu.sty.js.map +1 -1
  1699. package/esm/navigation/menu/Sub.js +2 -15
  1700. package/esm/navigation/menu/Sub.js.map +2 -2
  1701. package/esm/navigation/menu/hooks/useMenuAutoClose.js +33 -0
  1702. package/esm/navigation/menu/hooks/useMenuAutoClose.js.map +7 -0
  1703. package/esm/navigation/tabs/RenderTab.css +14 -14
  1704. package/esm/navigation/tabs/RenderTab.sty.js +3 -3
  1705. package/esm/navigation/tabs/RenderTab.sty.js.map +1 -1
  1706. package/esm/navigation/tabs/TabPanel.css +3 -3
  1707. package/esm/navigation/tabs/TabPanel.sty.js +2 -2
  1708. package/esm/navigation/tabs/TabPanel.sty.js.map +1 -1
  1709. package/esm/navigation/tabs/Tabs.css +9 -9
  1710. package/esm/navigation/tabs/Tabs.sty.js +5 -5
  1711. package/esm/navigation/tabs/Tabs.sty.js.map +1 -1
  1712. package/esm/notifications/notification-settings/NotificationSettings.css +1 -1
  1713. package/esm/notifications/notification-settings/NotificationSettings.sty.js +1 -1
  1714. package/esm/notifications/notification-settings/NotificationSettings.sty.js.map +1 -1
  1715. package/esm/notifications/toast/Toast.css +5 -5
  1716. package/esm/notifications/toast/Toast.sty.js +4 -4
  1717. package/esm/notifications/toast/Toast.sty.js.map +1 -1
  1718. package/esm/notifications/toast/ToastContainer.css +17 -17
  1719. package/esm/notifications/toast/ToastContainer.sty.js +1 -1
  1720. package/esm/notifications/toast/ToastContainer.sty.js.map +1 -1
  1721. package/esm/overlays/drawer/Drawer.css +9 -9
  1722. package/esm/overlays/drawer/Drawer.sty.js +5 -5
  1723. package/esm/overlays/drawer/Drawer.sty.js.map +1 -1
  1724. package/esm/overlays/hooks/useOverlay.js +21 -0
  1725. package/esm/overlays/hooks/useOverlay.js.map +2 -2
  1726. package/esm/overlays/modal/Modal.css +7 -7
  1727. package/esm/overlays/modal/Modal.sty.js +4 -4
  1728. package/esm/overlays/modal/Modal.sty.js.map +1 -1
  1729. package/esm/overlays/overlay/Overlay.css +1 -1
  1730. package/esm/overlays/overlay/Overlay.sty.js +1 -1
  1731. package/esm/overlays/overlay/Overlay.sty.js.map +1 -1
  1732. package/esm/overlays/sheet/Sheet.css +6 -6
  1733. package/esm/overlays/sheet/Sheet.sty.js +5 -5
  1734. package/esm/overlays/sheet/Sheet.sty.js.map +1 -1
  1735. package/esm/overlays/tooltip/tooltip.css +18 -18
  1736. package/esm/overlays/tooltip/tooltip.sty.js +3 -3
  1737. package/esm/overlays/tooltip/tooltip.sty.js.map +1 -1
  1738. package/esm/styles/colorUtils.css +60 -60
  1739. package/esm/styles/colorUtils.sty.js +2 -2
  1740. package/esm/styles/colorUtils.sty.js.map +1 -1
  1741. package/esm/styles/container.css +47 -47
  1742. package/esm/styles/container.sty.js +2 -2
  1743. package/esm/styles/container.sty.js.map +1 -1
  1744. package/esm/styles/ellipsis.css +1 -1
  1745. package/esm/styles/ellipsis.sty.js +1 -1
  1746. package/esm/styles/ellipsis.sty.js.map +1 -1
  1747. package/esm/styles/field.css +290 -290
  1748. package/esm/styles/field.sty.js +2 -2
  1749. package/esm/styles/field.sty.js.map +1 -1
  1750. package/esm/styles/screen-reader-only.css +1 -1
  1751. package/esm/styles/screen-reader-only.sty.js +1 -1
  1752. package/esm/styles/screen-reader-only.sty.js.map +1 -1
  1753. package/esm/styles/sprinkles.css +262 -262
  1754. package/esm/styles/sprinkles.sty.js +1 -1
  1755. package/esm/styles/sprinkles.sty.js.map +1 -1
  1756. package/esm/styles/textStyle.css +8 -8
  1757. package/esm/styles/textStyle.sty.js +1 -1
  1758. package/esm/styles/textStyle.sty.js.map +1 -1
  1759. package/esm/tables/DataTable/DataTable.css +2 -2
  1760. package/esm/tables/DataTable/DataTable.sty.js +7 -7
  1761. package/esm/tables/DataTable/DataTable.sty.js.map +1 -1
  1762. package/esm/tables/DataTable/components/Alignment.css +6 -6
  1763. package/esm/tables/DataTable/components/Alignment.sty.js +2 -2
  1764. package/esm/tables/DataTable/components/Alignment.sty.js.map +1 -1
  1765. package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.css +6 -6
  1766. package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.sty.js +3 -3
  1767. package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.sty.js.map +1 -1
  1768. package/esm/tables/DataTable/components/DataTableBody.css +2 -2
  1769. package/esm/tables/DataTable/components/DataTableBody.sty.js +2 -2
  1770. package/esm/tables/DataTable/components/DataTableBody.sty.js.map +1 -1
  1771. package/esm/tables/DataTable/components/DataTableCell.css +99 -99
  1772. package/esm/tables/DataTable/components/DataTableCell.sty.js +5 -5
  1773. package/esm/tables/DataTable/components/DataTableCell.sty.js.map +1 -1
  1774. package/esm/tables/DataTable/components/DataTableDefaultCell.css +21 -21
  1775. package/esm/tables/DataTable/components/DataTableDefaultCell.sty.js +1 -1
  1776. package/esm/tables/DataTable/components/DataTableDefaultCell.sty.js.map +1 -1
  1777. package/esm/tables/DataTable/components/DataTableEmptyState.css +2 -2
  1778. package/esm/tables/DataTable/components/DataTableEmptyState.sty.js +1 -1
  1779. package/esm/tables/DataTable/components/DataTableEmptyState.sty.js.map +1 -1
  1780. package/esm/tables/DataTable/components/DataTableHeader.css +2 -2
  1781. package/esm/tables/DataTable/components/DataTableHeader.sty.js +2 -2
  1782. package/esm/tables/DataTable/components/DataTableHeader.sty.js.map +1 -1
  1783. package/esm/tables/DataTable/components/DataTableHeaderCell.css +64 -64
  1784. package/esm/tables/DataTable/components/DataTableHeaderCell.js +4 -3
  1785. package/esm/tables/DataTable/components/DataTableHeaderCell.js.map +2 -2
  1786. package/esm/tables/DataTable/components/DataTableHeaderCell.sty.js +23 -23
  1787. package/esm/tables/DataTable/components/DataTableHeaderCell.sty.js.map +1 -1
  1788. package/esm/tables/DataTable/components/DataTableRow.css +13 -13
  1789. package/esm/tables/DataTable/components/DataTableRow.sty.js +1 -1
  1790. package/esm/tables/DataTable/components/DataTableRow.sty.js.map +1 -1
  1791. package/esm/tables/DataTable/components/DataTableScrollShadow.css +10 -10
  1792. package/esm/tables/DataTable/components/DataTableScrollShadow.sty.js +2 -2
  1793. package/esm/tables/DataTable/components/DataTableScrollShadow.sty.js.map +1 -1
  1794. package/esm/tables/DataTable/components/DataTableVirtualizationContainer.css +20 -20
  1795. package/esm/tables/DataTable/components/DataTableVirtualizationContainer.sty.js +1 -1
  1796. package/esm/tables/DataTable/components/DataTableVirtualizationContainer.sty.js.map +1 -1
  1797. package/esm/tables/DataTable/components/TableActions/DataTableSelectionChip.css +5 -5
  1798. package/esm/tables/DataTable/components/TableActions/DataTableSelectionChip.sty.js +2 -2
  1799. package/esm/tables/DataTable/components/TableActions/DataTableSelectionChip.sty.js.map +1 -1
  1800. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.css +7 -7
  1801. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.sty.js +3 -3
  1802. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.sty.js.map +1 -1
  1803. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnOrderSettings.js.map +2 -2
  1804. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettingsModal.js +21 -7
  1805. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettingsModal.js.map +2 -2
  1806. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.css +5 -5
  1807. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js +3 -3
  1808. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js.map +1 -1
  1809. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.css +7 -7
  1810. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js +3 -3
  1811. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js.map +1 -1
  1812. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.css +5 -5
  1813. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.sty.js +3 -3
  1814. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.sty.js.map +1 -1
  1815. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.js +8 -0
  1816. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.js.map +2 -2
  1817. package/esm/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.css +3 -3
  1818. package/esm/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.sty.js +2 -2
  1819. package/esm/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.sty.js.map +1 -1
  1820. package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.css +8 -8
  1821. package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.sty.js +4 -4
  1822. package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.sty.js.map +1 -1
  1823. package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.css +3 -3
  1824. package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.sty.js +1 -1
  1825. package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.sty.js.map +1 -1
  1826. package/esm/tables/DataTable/features/ColumnTypes/ColumnTypes.css +1 -1
  1827. package/esm/tables/DataTable/features/ColumnTypes/ColumnTypes.sty.js +1 -1
  1828. package/esm/tables/DataTable/features/ColumnTypes/ColumnTypes.sty.js.map +1 -1
  1829. package/esm/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.css +1 -1
  1830. package/esm/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.sty.js +1 -1
  1831. package/esm/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.sty.js.map +1 -1
  1832. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartCell.css +3 -3
  1833. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartCell.sty.js +2 -2
  1834. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartCell.sty.js.map +1 -1
  1835. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.css +1 -1
  1836. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.sty.js +1 -1
  1837. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.sty.js.map +1 -1
  1838. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.css +4 -4
  1839. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.sty.js +1 -1
  1840. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.sty.js.map +1 -1
  1841. package/esm/tables/DataTable/features/LoadingState/LoadingState.css +2 -2
  1842. package/esm/tables/DataTable/features/LoadingState/LoadingState.sty.js +2 -2
  1843. package/esm/tables/DataTable/features/LoadingState/LoadingState.sty.js.map +1 -1
  1844. package/esm/tables/DataTable/features/MeterBarChart/MeterBarChart.js +8 -2
  1845. package/esm/tables/DataTable/features/MeterBarChart/MeterBarChart.js.map +2 -2
  1846. package/esm/tables/DataTable/features/RowDetails/RowDetails.css +13 -13
  1847. package/esm/tables/DataTable/features/RowDetails/RowDetails.sty.js +3 -3
  1848. package/esm/tables/DataTable/features/RowDetails/RowDetails.sty.js.map +1 -1
  1849. package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.css +14 -14
  1850. package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.sty.js +1 -1
  1851. package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.sty.js.map +1 -1
  1852. package/esm/tables/DataTable/features/RowOrder/RowOrder.css +8 -8
  1853. package/esm/tables/DataTable/features/RowOrder/RowOrder.sty.js +3 -3
  1854. package/esm/tables/DataTable/features/RowOrder/RowOrder.sty.js.map +1 -1
  1855. package/esm/tables/DataTable/features/Sorting/Sorting.css +34 -34
  1856. package/esm/tables/DataTable/features/Sorting/Sorting.sty.js +3 -3
  1857. package/esm/tables/DataTable/features/Sorting/Sorting.sty.js.map +1 -1
  1858. package/esm/tables/DataTable/features/SubRows/SubRows.css +19 -19
  1859. package/esm/tables/DataTable/features/SubRows/SubRows.sty.js +5 -5
  1860. package/esm/tables/DataTable/features/SubRows/SubRows.sty.js.map +1 -1
  1861. package/esm/tables/DataTable/features/Thresholds/Thresholds.css +2 -2
  1862. package/esm/tables/DataTable/features/Thresholds/Thresholds.sty.js +3 -3
  1863. package/esm/tables/DataTable/features/Thresholds/Thresholds.sty.js.map +1 -1
  1864. package/esm/tables/DataTable/features/UserActions/RowActions.css +4 -4
  1865. package/esm/tables/DataTable/features/UserActions/RowActions.sty.js +1 -1
  1866. package/esm/tables/DataTable/features/UserActions/RowActions.sty.js.map +1 -1
  1867. package/esm/tables/DataTable/features/UserActions/UserActions.css +18 -18
  1868. package/esm/tables/DataTable/features/UserActions/UserActions.sty.js +2 -2
  1869. package/esm/tables/DataTable/features/UserActions/UserActions.sty.js.map +1 -1
  1870. package/esm/tables/DataTable/hooks/useHeaderCellInteractions.js +38 -15
  1871. package/esm/tables/DataTable/hooks/useHeaderCellInteractions.js.map +2 -2
  1872. package/esm/tables/SimpleTable/SimpleTable.css +27 -27
  1873. package/esm/tables/SimpleTable/SimpleTable.sty.js +1 -1
  1874. package/esm/tables/SimpleTable/SimpleTable.sty.js.map +1 -1
  1875. package/esm/tables/index.js.map +2 -2
  1876. package/esm/typography/block-quote/Blockquote.css +2 -2
  1877. package/esm/typography/block-quote/Blockquote.sty.js +1 -1
  1878. package/esm/typography/block-quote/Blockquote.sty.js.map +1 -1
  1879. package/esm/typography/code/Code.css +1 -1
  1880. package/esm/typography/code/Code.sty.js +1 -1
  1881. package/esm/typography/code/Code.sty.js.map +1 -1
  1882. package/esm/typography/emphasis/Emphasis.css +1 -1
  1883. package/esm/typography/emphasis/Emphasis.sty.js +1 -1
  1884. package/esm/typography/emphasis/Emphasis.sty.js.map +1 -1
  1885. package/esm/typography/external-link/ExternalLink.css +6 -6
  1886. package/esm/typography/external-link/ExternalLink.sty.js +1 -1
  1887. package/esm/typography/external-link/ExternalLink.sty.js.map +1 -1
  1888. package/esm/typography/heading/Heading.css +7 -7
  1889. package/esm/typography/heading/Heading.sty.js +1 -1
  1890. package/esm/typography/heading/Heading.sty.js.map +1 -1
  1891. package/esm/typography/highlight/Highlight.css +2 -2
  1892. package/esm/typography/highlight/Highlight.sty.js +1 -1
  1893. package/esm/typography/highlight/Highlight.sty.js.map +1 -1
  1894. package/esm/typography/link/Link.css +4 -4
  1895. package/esm/typography/link/Link.sty.js +1 -1
  1896. package/esm/typography/link/Link.sty.js.map +1 -1
  1897. package/esm/typography/list/List.css +4 -4
  1898. package/esm/typography/list/List.sty.js +2 -2
  1899. package/esm/typography/list/List.sty.js.map +1 -1
  1900. package/esm/typography/paragraph/Paragraph.css +3 -3
  1901. package/esm/typography/paragraph/Paragraph.sty.js +1 -1
  1902. package/esm/typography/paragraph/Paragraph.sty.js.map +1 -1
  1903. package/esm/typography/strikethrough/Strikethrough.css +1 -1
  1904. package/esm/typography/strikethrough/Strikethrough.sty.js +1 -1
  1905. package/esm/typography/strikethrough/Strikethrough.sty.js.map +1 -1
  1906. package/esm/typography/strong/Strong.css +1 -1
  1907. package/esm/typography/strong/Strong.sty.js +1 -1
  1908. package/esm/typography/strong/Strong.sty.js.map +1 -1
  1909. package/esm/typography/text/Text.css +3 -3
  1910. package/esm/typography/text/Text.sty.js +1 -1
  1911. package/esm/typography/text/Text.sty.js.map +1 -1
  1912. package/esm/typography/text-ellipsis/TextEllipsis.css +6 -6
  1913. package/esm/typography/text-ellipsis/TextEllipsis.js +2 -6
  1914. package/esm/typography/text-ellipsis/TextEllipsis.js.map +2 -2
  1915. package/esm/typography/text-ellipsis/TextEllipsis.sty.js +2 -2
  1916. package/esm/typography/text-ellipsis/TextEllipsis.sty.js.map +1 -1
  1917. package/filters/filter-field/FilterField.css +117 -117
  1918. package/filters/filter-field/FilterField.js +89 -68
  1919. package/filters/filter-field/FilterField.sty.js +28 -28
  1920. package/filters/filter-field/components/FilterFieldSuffixButtons.css +3 -3
  1921. package/filters/filter-field/components/FilterFieldSuffixButtons.js +1 -0
  1922. package/filters/filter-field/components/FilterFieldSuffixButtons.sty.js +3 -3
  1923. package/filters/filter-field/components/FilterStatement.css +13 -13
  1924. package/filters/filter-field/components/FilterStatement.sty.js +6 -6
  1925. package/filters/filter-field/hooks/useSuggestions.js +7 -1
  1926. package/filters/filter-field/suggestions/RecentPinnedSuggestionItem.css +9 -9
  1927. package/filters/filter-field/suggestions/RecentPinnedSuggestionItem.sty.js +2 -2
  1928. package/filters/filter-field/suggestions/Suggestion.css +24 -24
  1929. package/filters/filter-field/suggestions/Suggestion.js +9 -1
  1930. package/filters/filter-field/suggestions/Suggestion.sty.d.ts +7 -0
  1931. package/filters/filter-field/suggestions/Suggestion.sty.js +17 -15
  1932. package/filters/filter-field/suggestions/SuggestionDetails.css +2 -2
  1933. package/filters/filter-field/suggestions/SuggestionDetails.sty.js +2 -2
  1934. package/filters/filter-field/suggestions/SuggestionGroup.css +6 -6
  1935. package/filters/filter-field/suggestions/SuggestionGroup.sty.js +3 -3
  1936. package/filters/filter-field/suggestions/SuggestionGroupLabel.css +1 -1
  1937. package/filters/filter-field/suggestions/SuggestionGroupLabel.sty.js +1 -1
  1938. package/filters/filter-field/suggestions/SuggestionTips.css +7 -7
  1939. package/filters/filter-field/suggestions/SuggestionTips.sty.js +5 -5
  1940. package/filters/filter-field/suggestions/Suggestions.js +1 -1
  1941. package/filters/filter-field/suggestions/SuggestionsOverlay.css +7 -7
  1942. package/filters/filter-field/suggestions/SuggestionsOverlay.sty.js +5 -5
  1943. package/filters/filter-field/utils/get-suggestion-transaction.js +1 -1
  1944. package/filters/filter-field/utils/suggestions-utils/get-suggestions.d.ts +8 -1
  1945. package/filters/filter-field/utils/suggestions-utils/get-suggestions.js +11 -18
  1946. package/filters/filter-field/utils/suggestions-utils/operator-suggestions.js +4 -2
  1947. package/filters/filter-field/utils/suggestions-utils/suggestion-matching.d.ts +43 -0
  1948. package/filters/filter-field/utils/suggestions-utils/suggestion-matching.js +64 -0
  1949. package/filters/segment-selector/SegmentSelector.css +4 -4
  1950. package/filters/segment-selector/SegmentSelector.js +4 -4
  1951. package/filters/segment-selector/SegmentSelector.sty.js +4 -4
  1952. package/filters/segment-selector/parts/EmptySegments.css +1 -1
  1953. package/filters/segment-selector/parts/EmptySegments.js +7 -3
  1954. package/filters/segment-selector/parts/EmptySegments.sty.js +1 -1
  1955. package/filters/segment-selector/parts/Overlay.css +8 -8
  1956. package/filters/segment-selector/parts/Overlay.js +8 -4
  1957. package/filters/segment-selector/parts/Overlay.sty.js +8 -8
  1958. package/filters/segment-selector/parts/SegmentFooter.js +7 -3
  1959. package/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.css +4 -4
  1960. package/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.sty.js +4 -4
  1961. package/filters/segment-selector/parts/noAccessRights/CopyPermissionsButton.js +3 -5
  1962. package/filters/segment-selector/parts/noAccessRights/NoAccessWithoutSelection.js +2 -1
  1963. package/filters/segment-selector/parts/segmentManagementHref.d.ts +2 -0
  1964. package/filters/segment-selector/parts/segmentManagementHref.js +26 -0
  1965. package/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.css +32 -32
  1966. package/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.sty.js +10 -10
  1967. package/filters/segment-selector/parts/selectionBar/SegmentSelect.css +22 -22
  1968. package/filters/segment-selector/parts/selectionBar/SegmentSelect.js +8 -4
  1969. package/filters/segment-selector/parts/selectionBar/SegmentSelect.sty.js +7 -7
  1970. package/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.css +1 -1
  1971. package/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.sty.js +1 -1
  1972. package/filters/segment-selector/parts/selectionBar/ValueSelect.js +39 -14
  1973. package/filters/timeframe-selector/TimeframeSelector.css +5 -1
  1974. package/filters/timeframe-selector/TimeframeSelector.js +6 -13
  1975. package/filters/timeframe-selector/TimeframeSelector.sty.d.ts +1 -0
  1976. package/filters/timeframe-selector/TimeframeSelector.sty.js +4 -2
  1977. package/filters/timeframe-selector/TimeframeSelectorRoot.js +15 -3
  1978. package/filters/timeframe-selector/components/TimeframeSelectorTooltip.d.ts +2 -2
  1979. package/filters/timeframe-selector/components/TimeframeSelectorTooltip.js +1 -1
  1980. package/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.css +4 -4
  1981. package/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.js +4 -0
  1982. package/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.sty.js +3 -3
  1983. package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.css +4 -4
  1984. package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.sty.js +4 -4
  1985. package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlayFooter.js +5 -3
  1986. package/filters/timeframe-selector/components/presets/Presets.css +27 -27
  1987. package/filters/timeframe-selector/components/presets/Presets.sty.js +11 -11
  1988. package/filters/timeframe-selector/components/stepper/StepperButton.js +1 -1
  1989. package/filters/timeframe-selector/components/trigger/Trigger.css +11 -11
  1990. package/filters/timeframe-selector/components/trigger/Trigger.js +1 -0
  1991. package/filters/timeframe-selector/components/trigger/Trigger.sty.js +4 -4
  1992. package/filters/timeframe-selector/utils/getTimeframeDisplayValueProps.d.ts +2 -2
  1993. package/forms/_base-input/BaseInput.css +99 -99
  1994. package/forms/_base-input/BaseInput.d.ts +1 -0
  1995. package/forms/_base-input/BaseInput.js +30 -19
  1996. package/forms/_base-input/BaseInput.sty.d.ts +1 -1
  1997. package/forms/_base-input/BaseInput.sty.js +12 -12
  1998. package/forms/_base-input/BaseInputContent.css +7 -7
  1999. package/forms/_base-input/BaseInputContent.d.ts +5 -0
  2000. package/forms/_base-input/BaseInputContent.js +2 -0
  2001. package/forms/_base-input/BaseInputContent.sty.js +1 -1
  2002. package/forms/_base-input/ClearButton.d.ts +3 -0
  2003. package/forms/_base-input/ClearButton.js +53 -0
  2004. package/forms/_base-input/base-input.types.d.ts +1 -0
  2005. package/forms/calendar/Calendar.css +47 -47
  2006. package/forms/calendar/Calendar.sty.js +11 -11
  2007. package/forms/calendar/components/CalendarItem.css +7 -7
  2008. package/forms/calendar/components/CalendarItem.sty.js +4 -4
  2009. package/forms/calendar/components/CalendarOutlineIcon.css +8 -8
  2010. package/forms/calendar/components/CalendarOutlineIcon.sty.js +5 -5
  2011. package/forms/calendar/variables.sty.js +2 -2
  2012. package/forms/checkbox/Checkbox.css +20 -20
  2013. package/forms/checkbox/Checkbox.sty.js +3 -3
  2014. package/forms/date-time-picker/DateTimePicker.css +75 -75
  2015. package/forms/date-time-picker/DateTimePicker.sty.js +6 -6
  2016. package/forms/date-time-picker/DateTimePickerRoot.js +4 -0
  2017. package/forms/date-time-picker/hooks/useDateTimePicker.d.ts +1 -1
  2018. package/forms/date-time-picker/hooks/useDateTimePicker.js +4 -5
  2019. package/forms/date-time-picker/utils/focusDateTimeInput.d.ts +9 -0
  2020. package/forms/date-time-picker/utils/focusDateTimeInput.js +23 -0
  2021. package/forms/date-time-range-picker/DateRangeSelector.css +1 -1
  2022. package/forms/date-time-range-picker/DateRangeSelector.sty.js +1 -1
  2023. package/forms/date-time-range-picker/DateTimeInput.css +11 -11
  2024. package/forms/date-time-range-picker/DateTimeInput.js +4 -0
  2025. package/forms/date-time-range-picker/DateTimeInput.sty.js +3 -3
  2026. package/forms/date-time-range-picker/DateTimeRangePicker.css +27 -27
  2027. package/forms/date-time-range-picker/DateTimeRangePicker.js +6 -10
  2028. package/forms/date-time-range-picker/DateTimeRangePicker.sty.js +4 -4
  2029. package/forms/date-time-range-picker/DateTimeRangePickerRoot.js +22 -8
  2030. package/forms/date-time-range-picker/helpers.d.ts +22 -4
  2031. package/forms/date-time-range-picker/helpers.js +52 -13
  2032. package/forms/date-time-range-picker/hooks/useDateTimeInput.d.ts +2 -0
  2033. package/forms/date-time-range-picker/hooks/useDateTimeInput.js +91 -58
  2034. package/forms/date-time-range-picker/hooks/useDateTimeRangePicker.js +56 -19
  2035. package/forms/date-time-range-picker/selection-copy-helpers.js +53 -24
  2036. package/forms/date-time-range-picker/selection-helpers.d.ts +19 -4
  2037. package/forms/date-time-range-picker/selection-helpers.js +146 -48
  2038. package/forms/date-time-range-picker/types.d.ts +17 -0
  2039. package/forms/date-time-range-picker/useSelectionInteractionHandlers.js +4 -44
  2040. package/forms/forms-core/components/field-set/FieldSet.css +2 -2
  2041. package/forms/forms-core/components/field-set/FieldSet.sty.js +2 -2
  2042. package/forms/forms-core/components/form-field/FormField.sty.js +1 -1
  2043. package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.css +5 -5
  2044. package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.sty.js +2 -2
  2045. package/forms/forms-core/components/form-field-messages/FormFieldMessages.sty.js +1 -1
  2046. package/forms/forms-core/components/label/Label.css +5 -5
  2047. package/forms/forms-core/components/label/Label.sty.js +2 -2
  2048. package/forms/forms-core/time/helpers.js +1 -1
  2049. package/forms/hooks/useAutofillEvent.css +8 -8
  2050. package/forms/hooks/useAutofillEvent.sty.js +4 -4
  2051. package/forms/index.d.ts +1 -0
  2052. package/forms/number-input/NumberInputBase.js +2 -2
  2053. package/forms/number-input-v2/NumberInput.js +3 -3
  2054. package/forms/radio/styles.css +18 -18
  2055. package/forms/radio/styles.sty.js +8 -8
  2056. package/forms/search-input/SearchInput.css +4 -1
  2057. package/forms/search-input/SearchInput.d.ts +1 -0
  2058. package/forms/search-input/SearchInput.js +35 -3
  2059. package/forms/search-input/SearchInput.sty.d.ts +7 -1
  2060. package/forms/search-input/SearchInput.sty.js +2 -1
  2061. package/forms/search-input/Stepper.css +21 -0
  2062. package/forms/search-input/Stepper.d.ts +13 -0
  2063. package/forms/search-input/Stepper.js +120 -0
  2064. package/forms/search-input/Stepper.sty.d.ts +3 -0
  2065. package/forms/search-input/Stepper.sty.js +34 -0
  2066. package/forms/select/Select.js +6 -2
  2067. package/forms/select/components/Control.js +1 -0
  2068. package/forms/select/components/MenuList.js +1 -0
  2069. package/forms/select/components/Option.js +2 -0
  2070. package/forms/select/hooks/use-select-options.js +0 -3
  2071. package/forms/select/styles/Select.css +47 -47
  2072. package/forms/select/styles/Select.sty.js +24 -24
  2073. package/forms/spin-buttons/SpinButton.css +8 -8
  2074. package/forms/spin-buttons/SpinButton.sty.js +2 -2
  2075. package/forms/spin-buttons/spin-button-group/hooks/useNavigateSpinButton.js +1 -1
  2076. package/forms/switch/Switch.css +36 -36
  2077. package/forms/switch/Switch.sty.js +5 -5
  2078. package/forms/text-area/TextArea.css +59 -59
  2079. package/forms/text-area/TextArea.sty.js +3 -3
  2080. package/forms/toggle-button-group/styles.css +58 -58
  2081. package/forms/toggle-button-group/styles.sty.js +15 -15
  2082. package/lang/en.json +507 -485
  2083. package/lang/ja.json +542 -560
  2084. package/lang/uncompiled/en.json +24 -4
  2085. package/lang/uncompiled/ja.json +68 -71
  2086. package/layouts/app-header/AppHeader.css +1 -1
  2087. package/layouts/app-header/AppHeader.sty.js +1 -1
  2088. package/layouts/app-header/Navigation.css +9 -9
  2089. package/layouts/app-header/Navigation.sty.js +5 -5
  2090. package/layouts/app-header/action-group/ActionButton.css +17 -17
  2091. package/layouts/app-header/action-group/ActionButton.sty.js +3 -3
  2092. package/layouts/app-header/action-group/ActionGroup.css +1 -1
  2093. package/layouts/app-header/action-group/ActionGroup.sty.js +1 -1
  2094. package/layouts/app-header/action-group/NavItem.css +4 -4
  2095. package/layouts/app-header/action-group/NavItem.sty.js +3 -3
  2096. package/layouts/app-header/app-icon/AppIcon.css +4 -4
  2097. package/layouts/app-header/app-icon/AppIcon.sty.js +1 -1
  2098. package/layouts/container/Container.css +5 -5
  2099. package/layouts/container/Container.sty.js +1 -1
  2100. package/layouts/divider/Divider.css +6 -6
  2101. package/layouts/divider/Divider.sty.js +1 -1
  2102. package/layouts/input-group/InputGroup.css +23 -23
  2103. package/layouts/input-group/InputGroup.sty.js +1 -1
  2104. package/layouts/page/DetailView.css +3 -3
  2105. package/layouts/page/DetailView.sty.js +2 -2
  2106. package/layouts/page/Header.css +2 -2
  2107. package/layouts/page/Header.sty.js +1 -1
  2108. package/layouts/page/Main.css +6 -6
  2109. package/layouts/page/Main.sty.js +4 -4
  2110. package/layouts/page/Page.css +2 -2
  2111. package/layouts/page/Page.sty.js +1 -1
  2112. package/layouts/page/Sidebar.css +22 -22
  2113. package/layouts/page/Sidebar.sty.js +8 -8
  2114. package/layouts/page/panel.css +18 -18
  2115. package/layouts/page/panel.sty.js +10 -10
  2116. package/layouts/page-layout/PageLayout.css +10 -10
  2117. package/layouts/page-layout/PageLayout.sty.js +6 -6
  2118. package/layouts/page-layout/details-layout/DetailsControlBar.css +3 -3
  2119. package/layouts/page-layout/details-layout/DetailsControlBar.sty.js +3 -3
  2120. package/layouts/page-layout/details-layout/DetailsLayout.css +6 -6
  2121. package/layouts/page-layout/details-layout/DetailsLayout.sty.js +5 -5
  2122. package/layouts/page-layout/details-layout/Overlay.css +21 -21
  2123. package/layouts/page-layout/details-layout/Overlay.sty.js +4 -4
  2124. package/layouts/page-layout/sidebar-layout/SidebarLayout.css +38 -38
  2125. package/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js +15 -15
  2126. package/layouts/split-layout/SplitLayout.css +17 -17
  2127. package/layouts/split-layout/SplitLayout.sty.js +7 -7
  2128. package/layouts/surface/Surface.css +39 -39
  2129. package/layouts/surface/Surface.sty.js +2 -2
  2130. package/layouts/surface/variables.sty.js +1 -1
  2131. package/layouts/title-bar/TitleBar.css +5 -5
  2132. package/layouts/title-bar/TitleBar.sty.js +4 -4
  2133. package/navigation/breadcrumbs/Breadcrumbs.css +9 -9
  2134. package/navigation/breadcrumbs/Breadcrumbs.sty.js +5 -5
  2135. package/navigation/menu/Content.js +0 -2
  2136. package/navigation/menu/Menu.css +15 -15
  2137. package/navigation/menu/Menu.js +2 -13
  2138. package/navigation/menu/Menu.sty.js +8 -8
  2139. package/navigation/menu/Sub.js +2 -13
  2140. package/navigation/menu/hooks/useMenuAutoClose.d.ts +16 -0
  2141. package/navigation/menu/hooks/useMenuAutoClose.js +48 -0
  2142. package/navigation/tabs/RenderTab.css +14 -14
  2143. package/navigation/tabs/RenderTab.sty.js +3 -3
  2144. package/navigation/tabs/TabPanel.css +3 -3
  2145. package/navigation/tabs/TabPanel.sty.js +2 -2
  2146. package/navigation/tabs/Tabs.css +9 -9
  2147. package/navigation/tabs/Tabs.sty.js +5 -5
  2148. package/notifications/notification-settings/NotificationSettings.css +1 -1
  2149. package/notifications/notification-settings/NotificationSettings.sty.js +1 -1
  2150. package/notifications/toast/Toast.css +5 -5
  2151. package/notifications/toast/Toast.sty.js +4 -4
  2152. package/notifications/toast/ToastContainer.css +17 -17
  2153. package/notifications/toast/ToastContainer.sty.js +1 -1
  2154. package/overlays/drawer/Drawer.css +9 -9
  2155. package/overlays/drawer/Drawer.sty.js +5 -5
  2156. package/overlays/hooks/useOverlay.d.ts +18 -0
  2157. package/overlays/hooks/useOverlay.js +21 -0
  2158. package/overlays/modal/Modal.css +7 -7
  2159. package/overlays/modal/Modal.sty.js +4 -4
  2160. package/overlays/overlay/Overlay.css +1 -1
  2161. package/overlays/overlay/Overlay.sty.js +1 -1
  2162. package/overlays/sheet/Sheet.css +6 -6
  2163. package/overlays/sheet/Sheet.sty.js +5 -5
  2164. package/overlays/tooltip/tooltip.css +18 -18
  2165. package/overlays/tooltip/tooltip.sty.js +3 -3
  2166. package/package.json +1 -1
  2167. package/styles/colorUtils.css +60 -60
  2168. package/styles/colorUtils.sty.js +2 -2
  2169. package/styles/container.css +47 -47
  2170. package/styles/container.sty.js +2 -2
  2171. package/styles/ellipsis.css +1 -1
  2172. package/styles/ellipsis.sty.js +1 -1
  2173. package/styles/field.css +290 -290
  2174. package/styles/field.sty.js +2 -2
  2175. package/styles/screen-reader-only.css +1 -1
  2176. package/styles/screen-reader-only.sty.js +1 -1
  2177. package/styles/sprinkles.css +262 -262
  2178. package/styles/sprinkles.sty.js +1 -1
  2179. package/styles/textStyle.css +8 -8
  2180. package/styles/textStyle.sty.js +1 -1
  2181. package/tables/DataTable/DataTable.css +2 -2
  2182. package/tables/DataTable/DataTable.sty.js +7 -7
  2183. package/tables/DataTable/components/Alignment.css +6 -6
  2184. package/tables/DataTable/components/Alignment.sty.js +2 -2
  2185. package/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.css +6 -6
  2186. package/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.sty.js +3 -3
  2187. package/tables/DataTable/components/DataTableBody.css +2 -2
  2188. package/tables/DataTable/components/DataTableBody.sty.js +2 -2
  2189. package/tables/DataTable/components/DataTableCell.css +99 -99
  2190. package/tables/DataTable/components/DataTableCell.sty.js +5 -5
  2191. package/tables/DataTable/components/DataTableDefaultCell.css +21 -21
  2192. package/tables/DataTable/components/DataTableDefaultCell.sty.js +1 -1
  2193. package/tables/DataTable/components/DataTableEmptyState.css +2 -2
  2194. package/tables/DataTable/components/DataTableEmptyState.sty.js +1 -1
  2195. package/tables/DataTable/components/DataTableHeader.css +2 -2
  2196. package/tables/DataTable/components/DataTableHeader.sty.js +2 -2
  2197. package/tables/DataTable/components/DataTableHeaderCell.css +64 -64
  2198. package/tables/DataTable/components/DataTableHeaderCell.js +4 -3
  2199. package/tables/DataTable/components/DataTableHeaderCell.sty.js +23 -23
  2200. package/tables/DataTable/components/DataTableRow.css +13 -13
  2201. package/tables/DataTable/components/DataTableRow.sty.js +1 -1
  2202. package/tables/DataTable/components/DataTableScrollShadow.css +10 -10
  2203. package/tables/DataTable/components/DataTableScrollShadow.sty.js +2 -2
  2204. package/tables/DataTable/components/DataTableVirtualizationContainer.css +20 -20
  2205. package/tables/DataTable/components/DataTableVirtualizationContainer.sty.js +1 -1
  2206. package/tables/DataTable/components/TableActions/DataTableSelectionChip.css +5 -5
  2207. package/tables/DataTable/components/TableActions/DataTableSelectionChip.sty.js +2 -2
  2208. package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.css +7 -7
  2209. package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.sty.js +3 -3
  2210. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnOrderSettings.d.ts +1 -11
  2211. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettingsModal.js +18 -6
  2212. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.css +5 -5
  2213. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js +3 -3
  2214. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.css +7 -7
  2215. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js +3 -3
  2216. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.css +5 -5
  2217. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.sty.js +3 -3
  2218. package/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-types.d.ts +24 -13
  2219. package/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.d.ts +21 -0
  2220. package/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.js +8 -0
  2221. package/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.css +3 -3
  2222. package/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.sty.js +2 -2
  2223. package/tables/DataTable/features/ColumnOrder/ColumnOrder.css +8 -8
  2224. package/tables/DataTable/features/ColumnOrder/ColumnOrder.sty.js +4 -4
  2225. package/tables/DataTable/features/ColumnSizing/ColumnSizing.css +3 -3
  2226. package/tables/DataTable/features/ColumnSizing/ColumnSizing.sty.js +1 -1
  2227. package/tables/DataTable/features/ColumnTypes/ColumnTypes.css +1 -1
  2228. package/tables/DataTable/features/ColumnTypes/ColumnTypes.sty.js +1 -1
  2229. package/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.css +1 -1
  2230. package/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.sty.js +1 -1
  2231. package/tables/DataTable/features/GanttChart/DataTableGanttChartCell.css +3 -3
  2232. package/tables/DataTable/features/GanttChart/DataTableGanttChartCell.sty.js +2 -2
  2233. package/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.css +1 -1
  2234. package/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.sty.js +1 -1
  2235. package/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.css +4 -4
  2236. package/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.sty.js +1 -1
  2237. package/tables/DataTable/features/LoadingState/LoadingState.css +2 -2
  2238. package/tables/DataTable/features/LoadingState/LoadingState.sty.js +2 -2
  2239. package/tables/DataTable/features/MeterBarChart/MeterBarChart.js +8 -2
  2240. package/tables/DataTable/features/RowDetails/RowDetails.css +13 -13
  2241. package/tables/DataTable/features/RowDetails/RowDetails.sty.js +3 -3
  2242. package/tables/DataTable/features/RowInteractivity/RowInteractivity.css +14 -14
  2243. package/tables/DataTable/features/RowInteractivity/RowInteractivity.sty.js +1 -1
  2244. package/tables/DataTable/features/RowOrder/RowOrder.css +8 -8
  2245. package/tables/DataTable/features/RowOrder/RowOrder.sty.js +3 -3
  2246. package/tables/DataTable/features/Sorting/Sorting.css +34 -34
  2247. package/tables/DataTable/features/Sorting/Sorting.sty.js +3 -3
  2248. package/tables/DataTable/features/SubRows/SubRows.css +19 -19
  2249. package/tables/DataTable/features/SubRows/SubRows.sty.js +5 -5
  2250. package/tables/DataTable/features/Thresholds/Thresholds.css +2 -2
  2251. package/tables/DataTable/features/Thresholds/Thresholds.sty.js +3 -3
  2252. package/tables/DataTable/features/UserActions/RowActions.css +4 -4
  2253. package/tables/DataTable/features/UserActions/RowActions.sty.js +1 -1
  2254. package/tables/DataTable/features/UserActions/UserActions.css +18 -18
  2255. package/tables/DataTable/features/UserActions/UserActions.sty.js +2 -2
  2256. package/tables/DataTable/hooks/useHeaderCellInteractions.d.ts +3 -2
  2257. package/tables/DataTable/hooks/useHeaderCellInteractions.js +33 -14
  2258. package/tables/DataTable/public.api.d.ts +20 -5
  2259. package/tables/SimpleTable/SimpleTable.css +27 -27
  2260. package/tables/SimpleTable/SimpleTable.sty.js +1 -1
  2261. package/tables/index.d.ts +2 -3
  2262. package/typography/block-quote/Blockquote.css +2 -2
  2263. package/typography/block-quote/Blockquote.sty.js +1 -1
  2264. package/typography/code/Code.css +1 -1
  2265. package/typography/code/Code.sty.js +1 -1
  2266. package/typography/emphasis/Emphasis.css +1 -1
  2267. package/typography/emphasis/Emphasis.sty.js +1 -1
  2268. package/typography/external-link/ExternalLink.css +6 -6
  2269. package/typography/external-link/ExternalLink.sty.js +1 -1
  2270. package/typography/heading/Heading.css +7 -7
  2271. package/typography/heading/Heading.sty.js +1 -1
  2272. package/typography/highlight/Highlight.css +2 -2
  2273. package/typography/highlight/Highlight.sty.js +1 -1
  2274. package/typography/link/Link.css +4 -4
  2275. package/typography/link/Link.sty.js +1 -1
  2276. package/typography/list/List.css +4 -4
  2277. package/typography/list/List.sty.js +2 -2
  2278. package/typography/paragraph/Paragraph.css +3 -3
  2279. package/typography/paragraph/Paragraph.sty.js +1 -1
  2280. package/typography/strikethrough/Strikethrough.css +1 -1
  2281. package/typography/strikethrough/Strikethrough.sty.js +1 -1
  2282. package/typography/strong/Strong.css +1 -1
  2283. package/typography/strong/Strong.sty.js +1 -1
  2284. package/typography/text/Text.css +3 -3
  2285. package/typography/text/Text.sty.js +1 -1
  2286. package/typography/text-ellipsis/TextEllipsis.css +6 -6
  2287. package/typography/text-ellipsis/TextEllipsis.js +2 -6
  2288. package/typography/text-ellipsis/TextEllipsis.sty.js +2 -2
  2289. package/charts/core/components/annotations/components/tooltip/AnnotationsDefaultTooltip.d.ts +0 -7
  2290. package/charts/core/components/annotations/components/tooltip/AnnotationsDefaultTooltip.js +0 -61
  2291. package/charts/core/components/annotations/components/tooltip/AnnotationsTooltip.css +0 -4
  2292. package/charts/core/components/annotations/components/tooltip/AnnotationsTooltip.d.ts +0 -13
  2293. package/charts/core/components/annotations/components/tooltip/AnnotationsTooltip.js +0 -113
  2294. package/charts/core/components/annotations/components/tooltip/AnnotationsTooltip.sty.d.ts +0 -1
  2295. package/charts/core/components/annotations/components/tooltip/AnnotationsTooltipHeaders.d.ts +0 -7
  2296. package/charts/core/components/annotations/components/tooltip/AnnotationsTooltipHeaders.js +0 -43
  2297. package/charts/core/components/annotations/components/tooltip/AnnotationsTooltipItem.d.ts +0 -9
  2298. package/charts/core/components/annotations/components/tooltip/AnnotationsTooltipItem.js +0 -95
  2299. package/charts/core/components/annotations/components/tooltip/hooks/useRegisterTooltipHandlerCallbacks.d.ts +0 -10
  2300. package/charts/core/components/annotations/components/tooltip/hooks/useRegisterTooltipHandlerCallbacks.js +0 -49
  2301. package/charts/core/components/overlay-tooltip/components/TooltipFooter.d.ts +0 -7
  2302. package/charts/gauge/contexts/GaugeChartTooltipNameContext.d.ts +0 -8
  2303. package/charts/gauge/hooks/useGaugeChartOverlayEvents.d.ts +0 -12
  2304. package/charts/gauge/hooks/useGaugeChartOverlayEvents.js +0 -66
  2305. package/charts/meter-bar/single-meter-bar/hooks/useMeterBarChartTooltipHandlers.d.ts +0 -7
  2306. package/charts/meter-bar/single-meter-bar/hooks/useMeterBarChartTooltipHandlers.js +0 -61
  2307. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsDefaultTooltip.js +0 -46
  2308. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsDefaultTooltip.js.map +0 -7
  2309. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsTooltip.css +0 -4
  2310. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsTooltip.js +0 -100
  2311. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsTooltip.js.map +0 -7
  2312. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsTooltip.sty.js +0 -6
  2313. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsTooltip.sty.js.map +0 -7
  2314. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsTooltipHeaders.js +0 -25
  2315. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsTooltipHeaders.js.map +0 -7
  2316. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsTooltipItem.js +0 -67
  2317. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsTooltipItem.js.map +0 -7
  2318. package/esm/charts/core/components/annotations/components/tooltip/hooks/useRegisterTooltipHandlerCallbacks.js +0 -31
  2319. package/esm/charts/core/components/annotations/components/tooltip/hooks/useRegisterTooltipHandlerCallbacks.js.map +0 -7
  2320. package/esm/charts/core/components/overlay-tooltip/components/TooltipFooter.js.map +0 -7
  2321. package/esm/charts/gauge/contexts/GaugeChartTooltipNameContext.js +0 -10
  2322. package/esm/charts/gauge/contexts/GaugeChartTooltipNameContext.js.map +0 -7
  2323. package/esm/charts/gauge/hooks/useGaugeChartOverlayEvents.js +0 -48
  2324. package/esm/charts/gauge/hooks/useGaugeChartOverlayEvents.js.map +0 -7
  2325. package/esm/charts/meter-bar/single-meter-bar/hooks/useMeterBarChartTooltipHandlers.js +0 -43
  2326. package/esm/charts/meter-bar/single-meter-bar/hooks/useMeterBarChartTooltipHandlers.js.map +0 -7
  2327. package/esm/charts/xy-chart/components/displays/BarDisplay.js.map +0 -7
  2328. package/esm/filters/segment-selector/parts/sendSegmentManagementAddOnIntent.js +0 -27
  2329. package/esm/filters/segment-selector/parts/sendSegmentManagementAddOnIntent.js.map +0 -7
  2330. package/filters/segment-selector/parts/sendSegmentManagementAddOnIntent.d.ts +0 -2
  2331. package/filters/segment-selector/parts/sendSegmentManagementAddOnIntent.js +0 -43
@@ -16,6 +16,9 @@ import * as styles from "./DateTimeRangePicker.sty.js";
16
16
  import { isExpressionTriggerKey } from "./expression-trigger-helpers.js";
17
17
  import { useDateTimeRangePicker } from "./hooks/useDateTimeRangePicker.js";
18
18
  import { onTimeframeCopyCapture } from "./selection-copy-helpers.js";
19
+ import {
20
+ peekPreRestoreEndpoints
21
+ } from "./selection-helpers.js";
19
22
  import { useSelectionInteractionHandlers } from "./useSelectionInteractionHandlers.js";
20
23
  import { Button } from "../../buttons/button/Button.js";
21
24
  import { useAriaLabelingProps } from "../../core/hooks/useAriaLabelingProps.js";
@@ -37,7 +40,7 @@ import { FormFieldMessageContext } from "../forms-core/contexts/FormFieldMessage
37
40
  import { useFormFieldMessagesContext } from "../forms-core/hooks/useFormFieldMessagesContext.js";
38
41
  import { useSyncedFormControlProps } from "../forms-core/hooks/useSyncedFormControlProps.js";
39
42
  import { FormFieldMessagesAction } from "../forms-core/state/formfield-messages-state-reducer.js";
40
- function isInputInSelectionOrFocused(ref) {
43
+ function isInputInSelectionOrFocused(ref, preRestoreEndpoints) {
41
44
  const element = ref.current?.element;
42
45
  if (!element) {
43
46
  return false;
@@ -46,11 +49,12 @@ function isInputInSelectionOrFocused(ref) {
46
49
  return true;
47
50
  }
48
51
  const selection = window.getSelection();
49
- if (!selection || selection.rangeCount === 0 || selection.isCollapsed) {
50
- return false;
52
+ if (selection && selection.rangeCount > 0 && !selection.isCollapsed) {
53
+ if (selection.getRangeAt(0).intersectsNode(element)) {
54
+ return true;
55
+ }
51
56
  }
52
- const range = selection.getRangeAt(0);
53
- return range.intersectsNode(element);
57
+ return !!preRestoreEndpoints && (element.contains(preRestoreEndpoints.anchorNode) || element.contains(preRestoreEndpoints.focusNode));
54
58
  }
55
59
  function focusExpressionInputAtEnd(ref) {
56
60
  const expressionElement = ref.current?.expressionInputRef;
@@ -223,10 +227,20 @@ const DateTimeRangePickerRoot = forwardRef((props, forwardedRef) => {
223
227
  handleSelectionKeyDown(event);
224
228
  return;
225
229
  }
230
+ const preRestoreEndpoints = peekPreRestoreEndpoints(
231
+ event.currentTarget
232
+ );
226
233
  const fromInputIsIso = dateTimeFromRef.current?.element?.getAttribute("data-valuetype") === "iso8601";
227
234
  const toInputIsIso = dateTimeToRef.current?.element?.getAttribute("data-valuetype") === "iso8601";
228
- const switchFromToExpression = isInputInSelectionOrFocused(dateTimeFromRef) && fromInputIsIso;
229
- const switchToToExpression = isInputInSelectionOrFocused(dateTimeToRef) && toInputIsIso;
235
+ const bothInSelection = isInputInSelectionOrFocused(dateTimeFromRef, preRestoreEndpoints) && isInputInSelectionOrFocused(dateTimeToRef, preRestoreEndpoints);
236
+ if (bothInSelection && isExpressionTriggerKey(event)) {
237
+ setValue(null);
238
+ if (dateTimeToRef.current?.expressionInputRef) {
239
+ dateTimeToRef.current.expressionInputRef.textContent = "";
240
+ }
241
+ }
242
+ const switchFromToExpression = isInputInSelectionOrFocused(dateTimeFromRef, preRestoreEndpoints) && fromInputIsIso;
243
+ const switchToToExpression = isInputInSelectionOrFocused(dateTimeToRef, preRestoreEndpoints) && toInputIsIso;
230
244
  if (isExpressionTriggerKey(event) && (switchFromToExpression || switchToToExpression)) {
231
245
  const char = event.key;
232
246
  const primaryRef = switchFromToExpression ? dateTimeFromRef : dateTimeToRef;
@@ -238,7 +252,7 @@ const DateTimeRangePickerRoot = forwardRef((props, forwardedRef) => {
238
252
  event.stopPropagation();
239
253
  return;
240
254
  }
241
- if (isInputInSelectionOrFocused(dateTimeFromRef) && isInputInSelectionOrFocused(dateTimeToRef) && !fromInputIsIso && !toInputIsIso && event.key.length === 1 && !event.ctrlKey && !event.metaKey && !event.altKey) {
255
+ if (isInputInSelectionOrFocused(dateTimeFromRef, preRestoreEndpoints) && isInputInSelectionOrFocused(dateTimeToRef, preRestoreEndpoints) && !fromInputIsIso && !toInputIsIso && event.key.length === 1 && !event.ctrlKey && !event.metaKey && !event.altKey) {
242
256
  const char = event.key;
243
257
  const fromExpressionElement = dateTimeFromRef.current?.expressionInputRef;
244
258
  const toExpressionElement = dateTimeToRef.current?.expressionInputRef;
@@ -411,6 +425,7 @@ const DateTimeRangePickerRoot = forwardRef((props, forwardedRef) => {
411
425
  controlId: id,
412
426
  onTrailingEdge: handleFromTrailingEdge,
413
427
  onTrailingOverflow: handleFromTrailingOverflow,
428
+ partialTimeAnchorDate: value?.to?.absoluteDate || void 0,
414
429
  onPasteComplete: () => {
415
430
  dateTimeToRef.current?.focus?.();
416
431
  }
@@ -437,6 +452,7 @@ const DateTimeRangePickerRoot = forwardRef((props, forwardedRef) => {
437
452
  required,
438
453
  onLeadingEdge: handleToLeadingEdge,
439
454
  dateOnlyPasteAnchor: "endOfDay",
455
+ partialTimeAnchorDate: value?.from?.absoluteDate || void 0,
440
456
  onPasteComplete: () => {
441
457
  requestAnimationFrame(() => {
442
458
  dateTimeToRef.current?.focusLast();
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/forms/date-time-range-picker/DateTimeRangePickerRoot.tsx"],
4
- "sourcesContent": ["import clsx from 'clsx';\nimport {\n type FocusEvent,\n forwardRef,\n type KeyboardEvent as ReactKeyboardEvent,\n type RefObject,\n useCallback,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useIntl } from 'react-intl';\n\nimport { XmarkIcon } from '@dynatrace/strato-icons';\n\nimport { DateRangeSelector } from './DateRangeSelector.js';\nimport { DateTimeInput } from './DateTimeInput.js';\nimport * as styles from './DateTimeRangePicker.sty.js';\nimport { isExpressionTriggerKey } from './expression-trigger-helpers.js';\nimport { useDateTimeRangePicker } from './hooks/useDateTimeRangePicker.js';\nimport { onTimeframeCopyCapture } from './selection-copy-helpers.js';\nimport type {\n DateTimeRangePickerProps,\n DateTimeRangePickerRef,\n} from './types.js';\nimport { DateRangeSelectorRef, DateTimeInputRef } from './types.js';\nimport { useSelectionInteractionHandlers } from './useSelectionInteractionHandlers.js';\nimport { Button } from '../../buttons/button/Button.js';\nimport { useAriaLabelingProps } from '../../core/hooks/useAriaLabelingProps.js';\nimport { useBehavioralTrackingProps } from '../../core/hooks/useBehavioralTrackingProps.js';\nimport { useFocusRing } from '../../core/styles/useFocusRing.js';\nimport { TimeErrorKey } from '../../core/time/shared.types.js';\nimport { useDateTimeRangePickerStore } from '../../core/time/timeframeStore/useTimeframeStore.js';\nimport { validate } from '../../core/time/validation.js';\nimport { Flex } from '../../layouts/flex/Flex.js';\nimport { inputGroupClassName } from '../../layouts/input-group/InputGroup.sty.js';\nimport { InputGroup } from '../../layouts/input-group/InputGroup.js';\nimport { fieldTokens } from '../../styles/field.sty.js';\nimport { textStyle } from '../../styles/textStyle.sty.js';\nimport {\n clearIconButton,\n dateTimePicker,\n} from '../date-time-picker/DateTimePicker.sty.js';\nimport { focusDateTimeInput } from '../date-time-picker/utils/focusDateTimeInput.js';\nimport { FormFieldMessageContext } from '../forms-core/contexts/FormFieldMessageContext.js';\nimport { useFormFieldMessagesContext } from '../forms-core/hooks/useFormFieldMessagesContext.js';\nimport { useSyncedFormControlProps } from '../forms-core/hooks/useSyncedFormControlProps.js';\nimport { FormFieldMessagesAction } from '../forms-core/state/formfield-messages-state-reducer.js';\nimport { SpinButtonHandler } from '../spin-buttons/spin-button-group/types.js';\n\n/**\n * Returns true if a given DateTimeInput element contains the active (focused)\n * element *or* the window selection intersects it.\n *\n * The focus-based check covers the common case where a single spin button is\n * focused \u2013 including empty (placeholder) spin buttons whose `selectAll()` is\n * a no-op and therefore leave the window selection collapsed.\n *\n * The selection-based check covers cross-input scenarios such as Ctrl+A or\n * drag-select spanning both \"from\" and \"to\" inputs.\n */\nfunction isInputInSelectionOrFocused(\n ref: RefObject<DateTimeInputRef | null>,\n): boolean {\n const element = ref.current?.element;\n if (!element) {\n return false;\n }\n\n if (element.contains(document.activeElement)) {\n return true;\n }\n\n const selection = window.getSelection();\n if (!selection || selection.rangeCount === 0 || selection.isCollapsed) {\n return false;\n }\n const range = selection.getRangeAt(0);\n return range.intersectsNode(element);\n}\n\nfunction focusExpressionInputAtEnd(\n ref: RefObject<DateTimeInputRef | null>,\n): void {\n const expressionElement = ref.current?.expressionInputRef;\n if (!expressionElement) {\n return;\n }\n\n expressionElement.focus();\n\n const selection = window.getSelection();\n if (!selection) {\n return;\n }\n\n const range = document.createRange();\n range.selectNodeContents(expressionElement);\n range.collapse(false);\n selection.removeAllRanges();\n selection.addRange(range);\n}\n\nfunction getOffsetWithinElement(\n element: HTMLElement,\n container: Node,\n offset: number,\n): number {\n const range = document.createRange();\n range.selectNodeContents(element);\n range.setEnd(container, offset);\n return range.toString().length;\n}\n\n/**@internal */\nexport const DateTimeRangePickerRoot = forwardRef<\n DateTimeRangePickerRef,\n Omit<DateTimeRangePickerProps, 'value' | 'defaultValue' | 'onChange'>\n>((props, forwardedRef) => {\n const {\n id: propId,\n disabled: propDisabled,\n readOnly = false,\n name,\n style: consumerStyle,\n className: consumerClassName,\n required: propRequired,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n 'aria-disabled': ariaDisabledProp,\n placeholder: placeholderProp,\n onBlur,\n ...remainingProps\n }: Omit<\n DateTimeRangePickerProps,\n 'value' | 'defaultValue' | 'onChange'\n > = props;\n const [behavioralTrackingProps] = useBehavioralTrackingProps(remainingProps);\n const ariaProps = useAriaLabelingProps(props);\n const COMPONENT_NAME = 'DateTimeRangePicker';\n\n const rootRef = useRef<HTMLDivElement>(null);\n const touchedContainerRef = useRef<HTMLDivElement>(null);\n const dateTimeToRef = useRef<DateTimeInputRef>(null);\n const dateRangeSelectorRef = useRef<DateRangeSelectorRef>(null);\n\n const [hasInputContent, setHasInputContent] = useState(false);\n\n const setValue = useDateTimeRangePickerStore(\n (state) => state.setDateTimeRangePickerTimeframe,\n );\n const value = useDateTimeRangePickerStore(\n (state) => state.dateTimeRangePickerTimeframe,\n );\n const dateTimeFromRef = useDateTimeRangePickerStore(\n (state) => state.dateTimeFromRef,\n );\n const precision = useDateTimeRangePickerStore((state) => state.precision);\n const min = useDateTimeRangePickerStore((state) => state.min);\n const max = useDateTimeRangePickerStore((state) => state.max);\n const formatString = useDateTimeRangePickerStore(\n (state) => state.formatString,\n );\n\n const { disabled, required, id, ariaDisabled } = useSyncedFormControlProps({\n propDisabled,\n propRequired,\n propId,\n propAriaDisabled: ariaDisabledProp,\n });\n const disabledOrAriaDisabled = disabled || ariaDisabled || false;\n\n const { placeholder, onPasteCapture, onUndoPasteKeyDown } =\n useDateTimeRangePicker({\n placeholder: placeholderProp,\n readOnly,\n dateTimeFromRef,\n dateTimeToRef,\n });\n\n const intl = useIntl();\n\n const {\n state: { showError },\n dispatch: formMessageDispatch,\n } = useFormFieldMessagesContext();\n\n // Track the last error key returned by the imperative validate() so we can\n // pass it as `formerError` on the next call and clean up stale messages.\n const lastValidationErrorRef = useRef<TimeErrorKey | undefined>();\n\n // Provide root and input element reference and functions to interact with the calendar overlay\n useImperativeHandle(\n forwardedRef,\n (): DateTimeRangePickerRef => ({\n element: rootRef.current,\n inputRef: {\n from: dateTimeFromRef.current?.inputRef,\n to: dateTimeToRef.current?.inputRef,\n },\n open: () => dateRangeSelectorRef.current?.open(),\n close: () => dateRangeSelectorRef.current?.close(),\n focus: () => dateTimeFromRef.current?.focus?.(),\n getCurrentValue: () => ({\n from: value?.from ?? null,\n to: value?.to ?? null,\n }),\n validate() {\n lastValidationErrorRef.current = validate(value, min, max, {\n formMessageDispatch,\n formerError: lastValidationErrorRef.current,\n precision,\n showError: true,\n checkOrder: true,\n ref: rootRef,\n expectedFormat: formatString,\n valueMode: 'dateTimePicker',\n required,\n });\n formMessageDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n },\n }),\n [\n value,\n min,\n max,\n formMessageDispatch,\n precision,\n formatString,\n required,\n dateTimeFromRef,\n ],\n );\n\n const { focusClassName } = useFocusRing({\n focusWithin: true,\n ignoreModality: true,\n isMinimal: false,\n disabled,\n color: showError ? 'critical' : 'neutral',\n });\n\n const dateTimeFromLabel = intl.formatMessage({\n defaultMessage: 'DateTime from',\n id: 'fMy6q/KKOqbvCA3H',\n description:\n 'Textbox to enter a relative or absolute timeframe from value.',\n });\n\n const dateTimeToLabel = intl.formatMessage({\n defaultMessage: 'DateTime to',\n id: 'uuhhc3nEZptwtV2E',\n description: 'Textbox to enter a relative or absolute timeframe to value.',\n });\n const clearButtonLabel = intl.formatMessage({\n defaultMessage: 'Clear date and time range',\n id: 'zX4r/Y8gJL1C8+5e',\n description: 'Aria label for the DateTimeRangePicker clear button.',\n });\n const formFieldMessageContextValue = useMemo(\n () => ({\n state: {\n customMessages: [],\n formControlMessages: [],\n showError,\n },\n }),\n [showError],\n );\n\n const { onMouseDown, onKeyDown: handleSelectionKeyDown } =\n useSelectionInteractionHandlers(\n touchedContainerRef,\n useCallback(() => {\n focusDateTimeInput(null, dateTimeFromRef, dateTimeToRef);\n }, [dateTimeFromRef]),\n dateTimeFromRef,\n dateTimeToRef,\n );\n\n const onKeyDown = useCallback(\n (event: ReactKeyboardEvent<HTMLDivElement>) => {\n if (disabled || readOnly) {\n handleSelectionKeyDown(event);\n return;\n }\n\n const fromInputIsIso =\n dateTimeFromRef.current?.element?.getAttribute('data-valuetype') ===\n 'iso8601';\n const toInputIsIso =\n dateTimeToRef.current?.element?.getAttribute('data-valuetype') ===\n 'iso8601';\n\n const switchFromToExpression =\n isInputInSelectionOrFocused(dateTimeFromRef) && fromInputIsIso;\n const switchToToExpression =\n isInputInSelectionOrFocused(dateTimeToRef) && toInputIsIso;\n if (\n isExpressionTriggerKey(event) &&\n (switchFromToExpression || switchToToExpression)\n ) {\n const char = event.key;\n\n // The primary input receives the character and focus.\n // When both are selected, 'from' receives the character and focus.\n const primaryRef = switchFromToExpression\n ? dateTimeFromRef\n : dateTimeToRef;\n\n primaryRef.current?.setExpressionValue(char);\n\n requestAnimationFrame(() => {\n focusExpressionInputAtEnd(primaryRef);\n });\n\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n // Handle regular character input when both inputs are selected\n if (\n isInputInSelectionOrFocused(dateTimeFromRef) &&\n isInputInSelectionOrFocused(dateTimeToRef) &&\n !fromInputIsIso &&\n !toInputIsIso &&\n event.key.length === 1 &&\n !event.ctrlKey &&\n !event.metaKey &&\n !event.altKey\n ) {\n const char = event.key;\n const fromExpressionElement =\n dateTimeFromRef.current?.expressionInputRef;\n const toExpressionElement = dateTimeToRef.current?.expressionInputRef;\n const selection = window.getSelection();\n\n if (\n fromExpressionElement &&\n toExpressionElement &&\n selection &&\n selection.rangeCount > 0 &&\n !selection.isCollapsed\n ) {\n const range = selection.getRangeAt(0);\n const fromValue = fromExpressionElement.textContent ?? '';\n const toValue = toExpressionElement.textContent ?? '';\n\n const fromStart = fromExpressionElement.contains(range.startContainer)\n ? getOffsetWithinElement(\n fromExpressionElement,\n range.startContainer,\n range.startOffset,\n )\n : 0;\n const toEnd = toExpressionElement.contains(range.endContainer)\n ? getOffsetWithinElement(\n toExpressionElement,\n range.endContainer,\n range.endOffset,\n )\n : toValue.length;\n\n dateTimeFromRef.current?.setExpressionValue(\n `${fromValue.slice(0, fromStart)}${char}`,\n );\n dateTimeToRef.current?.setExpressionValue(toValue.slice(toEnd));\n\n requestAnimationFrame(() => {\n focusExpressionInputAtEnd(dateTimeFromRef);\n });\n\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n // Replace the selected expression in \"from\" and keep \"to\" unchanged.\n dateTimeFromRef.current?.setExpressionValue(char);\n\n requestAnimationFrame(() => {\n focusExpressionInputAtEnd(dateTimeFromRef);\n });\n\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n handleSelectionKeyDown(event);\n },\n [\n disabled,\n readOnly,\n handleSelectionKeyDown,\n dateTimeFromRef,\n dateTimeToRef,\n setValue,\n ],\n );\n\n // Move from the last \"from\" segment to the first \"to\" segment.\n const handleFromTrailingEdge = useCallback(() => {\n dateTimeToRef.current?.focus?.();\n }, []);\n\n // Move from the first \"to\" segment to the last \"from\" segment.\n const handleToLeadingEdge = useCallback(() => {\n dateTimeFromRef.current?.focusLast();\n }, [dateTimeFromRef]);\n\n // Carry trailing overflow from \"from\" into the first \"to\" segment.\n const handleFromTrailingOverflow = useCallback(\n (overflowChar: string) => {\n const handlers = Array.from(\n dateTimeToRef.current?.spinButtonHandlers?.values() ?? [],\n ).filter((h): h is SpinButtonHandler => h !== null && h !== undefined);\n\n const firstHandler = handlers[0];\n if (!firstHandler) {\n return;\n }\n\n if (value?.to?.type === 'expression' || value?.to === null) {\n dateTimeToRef.current?.setExpressionValue(overflowChar);\n requestAnimationFrame(() => {\n const exprEl = dateTimeToRef.current?.expressionInputRef;\n if (exprEl) {\n // Focus first so that expressionOnFocusHandler fires and selects all,\n // then immediately collapse the selection to the end so the cursor\n // lands after the overflow character instead of selecting everything.\n exprEl.focus();\n const sel = window.getSelection();\n if (sel) {\n const range = document.createRange();\n range.selectNodeContents(exprEl);\n range.collapse(false);\n sel.removeAllRanges();\n sel.addRange(range);\n }\n }\n });\n return;\n }\n\n if (firstHandler.type === 'number') {\n firstHandler.applyText(overflowChar, true);\n firstHandler.element.current?.focus();\n firstHandler.setSelection({ start: 0, end: 0, rtl: true });\n }\n },\n [value?.to],\n );\n\n return (\n <Flex\n ref={rootRef}\n flexDirection=\"column\"\n data-testid={dataTestId}\n style={consumerStyle}\n className={consumerClassName}\n {...ariaProps}\n {...behavioralTrackingProps}\n data-dt-component={COMPONENT_NAME}\n >\n <FormFieldMessageContext.Provider value={formFieldMessageContextValue}>\n <InputGroup style={{ gridTemplateColumns: '1fr auto' }}>\n <Flex\n ref={touchedContainerRef}\n className={clsx(\n inputGroupClassName,\n dateTimePicker({\n readOnly,\n showError,\n disabled,\n type: 'datetime',\n }),\n textStyle({ textStyle: 'base' }),\n fieldTokens({\n color: showError ? 'critical' : 'neutral',\n disabled: disabledOrAriaDisabled,\n variant: 'emphasized',\n }),\n focusClassName,\n styles.dateTimeRange({\n showError,\n disabled: disabledOrAriaDisabled,\n readOnly: readOnly,\n }),\n )}\n onCopyCapture={onTimeframeCopyCapture}\n onPasteCapture={onPasteCapture}\n onBlur={(event) => {\n // onFocus synchronously redirects focus from the container to a spin button,\n // causing a spurious onBlur; rAF defers the call until focus has settled.\n requestAnimationFrame(() => {\n onBlur?.(event);\n });\n }}\n onInput={() => {\n setHasInputContent(\n !!dateTimeFromRef.current?.expressionInputRef?.textContent ||\n !!dateTimeToRef.current?.expressionInputRef?.textContent,\n );\n }}\n tabIndex={disabled ? undefined : 0}\n onMouseDown={onMouseDown}\n onKeyDownCapture={(e) => {\n // Handles undo for from and to inputs with Ctrl+Z.\n // Uses capture phase so it fires before the input-level undo handler.\n onUndoPasteKeyDown(e);\n }}\n onKeyDown={onKeyDown}\n onFocus={(e: FocusEvent) => {\n // Forward the focus only if it is coming from outside this component.\n // Focus the first spin button with textContent; otherwise, focus the input.\n\n if (!rootRef.current?.contains(e.relatedTarget)) {\n focusDateTimeInput(e, dateTimeFromRef, dateTimeToRef);\n }\n }}\n >\n <span className={styles.scrollContainer}>\n <DateTimeInput\n ref={dateTimeFromRef}\n className={styles.dateTimeInput}\n disabled={disabled}\n readOnly={readOnly}\n placeholder={placeholder.from}\n name={name === undefined ? undefined : `${name}-from`}\n // Maintains its own state to separate single and range value manipulations\n value={value === null ? null : value.from}\n onChange={(newValue) => {\n if (typeof newValue !== 'string') {\n setValue({ from: newValue ?? null });\n }\n }}\n aria-label={dateTimeFromLabel}\n aria-disabled={ariaDisabled}\n required={required}\n controlId={id}\n onTrailingEdge={handleFromTrailingEdge}\n onTrailingOverflow={handleFromTrailingOverflow}\n onPasteComplete={() => {\n dateTimeToRef.current?.focus?.();\n }}\n />\n\n <span className={styles.timeframeSeparator}>\u2192</span>\n <DateTimeInput\n ref={dateTimeToRef}\n className={styles.dateTimeInput}\n disabled={disabled}\n readOnly={readOnly}\n placeholder={placeholder.to}\n name={name === undefined ? undefined : `${name}-to`}\n // Maintains its own state to separate single and range value manipulations\n value={value === null ? null : value.to}\n onChange={(newValue) => {\n if (typeof newValue !== 'string') {\n setValue({ to: newValue ?? null });\n }\n }}\n aria-label={dateTimeToLabel}\n aria-disabled={ariaDisabled}\n required={required}\n onLeadingEdge={handleToLeadingEdge}\n dateOnlyPasteAnchor=\"endOfDay\"\n onPasteComplete={() => {\n requestAnimationFrame(() => {\n dateTimeToRef.current?.focusLast();\n });\n }}\n />\n </span>\n {!readOnly &&\n !disabledOrAriaDisabled &&\n ((value &&\n (value.from?.value !== '' || value.to?.value !== '')) ||\n hasInputContent) && (\n <Button\n onFocus={() => {\n formMessageDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n }}\n onClick={() => {\n setValue(null);\n if (dateTimeFromRef.current?.expressionInputRef) {\n dateTimeFromRef.current.expressionInputRef.textContent =\n '';\n }\n if (dateTimeToRef.current?.expressionInputRef) {\n dateTimeToRef.current.expressionInputRef.textContent = '';\n }\n setHasInputContent(false);\n requestAnimationFrame(() => {\n dateTimeFromRef.current?.expressionInputRef?.focus();\n });\n }}\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n e.stopPropagation();\n }\n }}\n className={clearIconButton}\n color={showError ? 'critical' : 'neutral'}\n size=\"condensed\"\n aria-label={clearButtonLabel}\n >\n <XmarkIcon />\n </Button>\n )}\n </Flex>\n <DateRangeSelector\n ref={dateRangeSelectorRef}\n disabled={disabled}\n aria-disabled={ariaDisabled}\n readOnly={readOnly}\n error={showError}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n />\n </InputGroup>\n </FormFieldMessageContext.Provider>\n </Flex>\n );\n});\n"],
5
- "mappings": "AA+gBY,SACE,KADF;AA/gBZ,OAAO,UAAU;AACjB;AAAA,EAEE;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,eAAe;AAExB,SAAS,iBAAiB;AAE1B,SAAS,yBAAyB;AAClC,SAAS,qBAAqB;AAC9B,YAAY,YAAY;AACxB,SAAS,8BAA8B;AACvC,SAAS,8BAA8B;AACvC,SAAS,8BAA8B;AAMvC,SAAS,uCAAuC;AAChD,SAAS,cAAc;AACvB,SAAS,4BAA4B;AACrC,SAAS,kCAAkC;AAC3C,SAAS,oBAAoB;AAE7B,SAAS,mCAAmC;AAC5C,SAAS,gBAAgB;AACzB,SAAS,YAAY;AACrB,SAAS,2BAA2B;AACpC,SAAS,kBAAkB;AAC3B,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,0BAA0B;AACnC,SAAS,+BAA+B;AACxC,SAAS,mCAAmC;AAC5C,SAAS,iCAAiC;AAC1C,SAAS,+BAA+B;AAcxC,SAAS,4BACP,KACS;AACT,QAAM,UAAU,IAAI,SAAS;AAC7B,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAEA,MAAI,QAAQ,SAAS,SAAS,aAAa,GAAG;AAC5C,WAAO;AAAA,EACT;AAEA,QAAM,YAAY,OAAO,aAAa;AACtC,MAAI,CAAC,aAAa,UAAU,eAAe,KAAK,UAAU,aAAa;AACrE,WAAO;AAAA,EACT;AACA,QAAM,QAAQ,UAAU,WAAW,CAAC;AACpC,SAAO,MAAM,eAAe,OAAO;AACrC;AAEA,SAAS,0BACP,KACM;AACN,QAAM,oBAAoB,IAAI,SAAS;AACvC,MAAI,CAAC,mBAAmB;AACtB;AAAA,EACF;AAEA,oBAAkB,MAAM;AAExB,QAAM,YAAY,OAAO,aAAa;AACtC,MAAI,CAAC,WAAW;AACd;AAAA,EACF;AAEA,QAAM,QAAQ,SAAS,YAAY;AACnC,QAAM,mBAAmB,iBAAiB;AAC1C,QAAM,SAAS,KAAK;AACpB,YAAU,gBAAgB;AAC1B,YAAU,SAAS,KAAK;AAC1B;AAEA,SAAS,uBACP,SACA,WACA,QACQ;AACR,QAAM,QAAQ,SAAS,YAAY;AACnC,QAAM,mBAAmB,OAAO;AAChC,QAAM,OAAO,WAAW,MAAM;AAC9B,SAAO,MAAM,SAAS,EAAE;AAC1B;AAGO,MAAM,0BAA0B,WAGrC,CAAC,OAAO,iBAAiB;AACzB,QAAM;AAAA,IACJ,IAAI;AAAA,IACJ,UAAU;AAAA,IACV,WAAW;AAAA,IACX;AAAA,IACA,OAAO;AAAA,IACP,WAAW;AAAA,IACX,UAAU;AAAA,IACV,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,iBAAiB;AAAA,IACjB,aAAa;AAAA,IACb;AAAA,IACA,GAAG;AAAA,EACL,IAGI;AACJ,QAAM,CAAC,uBAAuB,IAAI,2BAA2B,cAAc;AAC3E,QAAM,YAAY,qBAAqB,KAAK;AAC5C,QAAM,iBAAiB;AAEvB,QAAM,UAAU,OAAuB,IAAI;AAC3C,QAAM,sBAAsB,OAAuB,IAAI;AACvD,QAAM,gBAAgB,OAAyB,IAAI;AACnD,QAAM,uBAAuB,OAA6B,IAAI;AAE9D,QAAM,CAAC,iBAAiB,kBAAkB,IAAI,SAAS,KAAK;AAE5D,QAAM,WAAW;AAAA,IACf,CAAC,UAAU,MAAM;AAAA,EACnB;AACA,QAAM,QAAQ;AAAA,IACZ,CAAC,UAAU,MAAM;AAAA,EACnB;AACA,QAAM,kBAAkB;AAAA,IACtB,CAAC,UAAU,MAAM;AAAA,EACnB;AACA,QAAM,YAAY,4BAA4B,CAAC,UAAU,MAAM,SAAS;AACxE,QAAM,MAAM,4BAA4B,CAAC,UAAU,MAAM,GAAG;AAC5D,QAAM,MAAM,4BAA4B,CAAC,UAAU,MAAM,GAAG;AAC5D,QAAM,eAAe;AAAA,IACnB,CAAC,UAAU,MAAM;AAAA,EACnB;AAEA,QAAM,EAAE,UAAU,UAAU,IAAI,aAAa,IAAI,0BAA0B;AAAA,IACzE;AAAA,IACA;AAAA,IACA;AAAA,IACA,kBAAkB;AAAA,EACpB,CAAC;AACD,QAAM,yBAAyB,YAAY,gBAAgB;AAE3D,QAAM,EAAE,aAAa,gBAAgB,mBAAmB,IACtD,uBAAuB;AAAA,IACrB,aAAa;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAEH,QAAM,OAAO,QAAQ;AAErB,QAAM;AAAA,IACJ,OAAO,EAAE,UAAU;AAAA,IACnB,UAAU;AAAA,EACZ,IAAI,4BAA4B;AAIhC,QAAM,yBAAyB,OAAiC;AAGhE;AAAA,IACE;AAAA,IACA,OAA+B;AAAA,MAC7B,SAAS,QAAQ;AAAA,MACjB,UAAU;AAAA,QACR,MAAM,gBAAgB,SAAS;AAAA,QAC/B,IAAI,cAAc,SAAS;AAAA,MAC7B;AAAA,MACA,MAAM,MAAM,qBAAqB,SAAS,KAAK;AAAA,MAC/C,OAAO,MAAM,qBAAqB,SAAS,MAAM;AAAA,MACjD,OAAO,MAAM,gBAAgB,SAAS,QAAQ;AAAA,MAC9C,iBAAiB,OAAO;AAAA,QACtB,MAAM,OAAO,QAAQ;AAAA,QACrB,IAAI,OAAO,MAAM;AAAA,MACnB;AAAA,MACA,WAAW;AACT,+BAAuB,UAAU,SAAS,OAAO,KAAK,KAAK;AAAA,UACzD;AAAA,UACA,aAAa,uBAAuB;AAAA,UACpC;AAAA,UACA,WAAW;AAAA,UACX,YAAY;AAAA,UACZ,KAAK;AAAA,UACL,gBAAgB;AAAA,UAChB,WAAW;AAAA,UACX;AAAA,QACF,CAAC;AACD,8BAAsB;AAAA,UACpB,MAAM,wBAAwB;AAAA,UAC9B,SAAS,EAAE,WAAW,KAAK;AAAA,QAC7B,CAAC;AAAA,MACH;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,QAAM,EAAE,eAAe,IAAI,aAAa;AAAA,IACtC,aAAa;AAAA,IACb,gBAAgB;AAAA,IAChB,WAAW;AAAA,IACX;AAAA,IACA,OAAO,YAAY,aAAa;AAAA,EAClC,CAAC;AAED,QAAM,oBAAoB,KAAK,cAAc;AAAA,IAC3C,gBAAgB;AAAA,IAChB,IAAI;AAAA,IACJ,aACE;AAAA,EACJ,CAAC;AAED,QAAM,kBAAkB,KAAK,cAAc;AAAA,IACzC,gBAAgB;AAAA,IAChB,IAAI;AAAA,IACJ,aAAa;AAAA,EACf,CAAC;AACD,QAAM,mBAAmB,KAAK,cAAc;AAAA,IAC1C,gBAAgB;AAAA,IAChB,IAAI;AAAA,IACJ,aAAa;AAAA,EACf,CAAC;AACD,QAAM,+BAA+B;AAAA,IACnC,OAAO;AAAA,MACL,OAAO;AAAA,QACL,gBAAgB,CAAC;AAAA,QACjB,qBAAqB,CAAC;AAAA,QACtB;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,SAAS;AAAA,EACZ;AAEA,QAAM,EAAE,aAAa,WAAW,uBAAuB,IACrD;AAAA,IACE;AAAA,IACA,YAAY,MAAM;AAChB,yBAAmB,MAAM,iBAAiB,aAAa;AAAA,IACzD,GAAG,CAAC,eAAe,CAAC;AAAA,IACpB;AAAA,IACA;AAAA,EACF;AAEF,QAAM,YAAY;AAAA,IAChB,CAAC,UAA8C;AAC7C,UAAI,YAAY,UAAU;AACxB,+BAAuB,KAAK;AAC5B;AAAA,MACF;AAEA,YAAM,iBACJ,gBAAgB,SAAS,SAAS,aAAa,gBAAgB,MAC/D;AACF,YAAM,eACJ,cAAc,SAAS,SAAS,aAAa,gBAAgB,MAC7D;AAEF,YAAM,yBACJ,4BAA4B,eAAe,KAAK;AAClD,YAAM,uBACJ,4BAA4B,aAAa,KAAK;AAChD,UACE,uBAAuB,KAAK,MAC3B,0BAA0B,uBAC3B;AACA,cAAM,OAAO,MAAM;AAInB,cAAM,aAAa,yBACf,kBACA;AAEJ,mBAAW,SAAS,mBAAmB,IAAI;AAE3C,8BAAsB,MAAM;AAC1B,oCAA0B,UAAU;AAAA,QACtC,CAAC;AAED,cAAM,eAAe;AACrB,cAAM,gBAAgB;AACtB;AAAA,MACF;AAEA,UACE,4BAA4B,eAAe,KAC3C,4BAA4B,aAAa,KACzC,CAAC,kBACD,CAAC,gBACD,MAAM,IAAI,WAAW,KACrB,CAAC,MAAM,WACP,CAAC,MAAM,WACP,CAAC,MAAM,QACP;AACA,cAAM,OAAO,MAAM;AACnB,cAAM,wBACJ,gBAAgB,SAAS;AAC3B,cAAM,sBAAsB,cAAc,SAAS;AACnD,cAAM,YAAY,OAAO,aAAa;AAEtC,YACE,yBACA,uBACA,aACA,UAAU,aAAa,KACvB,CAAC,UAAU,aACX;AACA,gBAAM,QAAQ,UAAU,WAAW,CAAC;AACpC,gBAAM,YAAY,sBAAsB,eAAe;AACvD,gBAAM,UAAU,oBAAoB,eAAe;AAEnD,gBAAM,YAAY,sBAAsB,SAAS,MAAM,cAAc,IACjE;AAAA,YACE;AAAA,YACA,MAAM;AAAA,YACN,MAAM;AAAA,UACR,IACA;AACJ,gBAAM,QAAQ,oBAAoB,SAAS,MAAM,YAAY,IACzD;AAAA,YACE;AAAA,YACA,MAAM;AAAA,YACN,MAAM;AAAA,UACR,IACA,QAAQ;AAEZ,0BAAgB,SAAS;AAAA,YACvB,GAAG,UAAU,MAAM,GAAG,SAAS,CAAC,GAAG,IAAI;AAAA,UACzC;AACA,wBAAc,SAAS,mBAAmB,QAAQ,MAAM,KAAK,CAAC;AAE9D,gCAAsB,MAAM;AAC1B,sCAA0B,eAAe;AAAA,UAC3C,CAAC;AAED,gBAAM,eAAe;AACrB,gBAAM,gBAAgB;AACtB;AAAA,QACF;AAGA,wBAAgB,SAAS,mBAAmB,IAAI;AAEhD,8BAAsB,MAAM;AAC1B,oCAA0B,eAAe;AAAA,QAC3C,CAAC;AAED,cAAM,eAAe;AACrB,cAAM,gBAAgB;AACtB;AAAA,MACF;AAEA,6BAAuB,KAAK;AAAA,IAC9B;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAGA,QAAM,yBAAyB,YAAY,MAAM;AAC/C,kBAAc,SAAS,QAAQ;AAAA,EACjC,GAAG,CAAC,CAAC;AAGL,QAAM,sBAAsB,YAAY,MAAM;AAC5C,oBAAgB,SAAS,UAAU;AAAA,EACrC,GAAG,CAAC,eAAe,CAAC;AAGpB,QAAM,6BAA6B;AAAA,IACjC,CAAC,iBAAyB;AACxB,YAAM,WAAW,MAAM;AAAA,QACrB,cAAc,SAAS,oBAAoB,OAAO,KAAK,CAAC;AAAA,MAC1D,EAAE,OAAO,CAAC,MAA8B,MAAM,QAAQ,MAAM,MAAS;AAErE,YAAM,eAAe,SAAS,CAAC;AAC/B,UAAI,CAAC,cAAc;AACjB;AAAA,MACF;AAEA,UAAI,OAAO,IAAI,SAAS,gBAAgB,OAAO,OAAO,MAAM;AAC1D,sBAAc,SAAS,mBAAmB,YAAY;AACtD,8BAAsB,MAAM;AAC1B,gBAAM,SAAS,cAAc,SAAS;AACtC,cAAI,QAAQ;AAIV,mBAAO,MAAM;AACb,kBAAM,MAAM,OAAO,aAAa;AAChC,gBAAI,KAAK;AACP,oBAAM,QAAQ,SAAS,YAAY;AACnC,oBAAM,mBAAmB,MAAM;AAC/B,oBAAM,SAAS,KAAK;AACpB,kBAAI,gBAAgB;AACpB,kBAAI,SAAS,KAAK;AAAA,YACpB;AAAA,UACF;AAAA,QACF,CAAC;AACD;AAAA,MACF;AAEA,UAAI,aAAa,SAAS,UAAU;AAClC,qBAAa,UAAU,cAAc,IAAI;AACzC,qBAAa,QAAQ,SAAS,MAAM;AACpC,qBAAa,aAAa,EAAE,OAAO,GAAG,KAAK,GAAG,KAAK,KAAK,CAAC;AAAA,MAC3D;AAAA,IACF;AAAA,IACA,CAAC,OAAO,EAAE;AAAA,EACZ;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL,eAAc;AAAA,MACd,eAAa;AAAA,MACb,OAAO;AAAA,MACP,WAAW;AAAA,MACV,GAAG;AAAA,MACH,GAAG;AAAA,MACJ,qBAAmB;AAAA,MAEnB,8BAAC,wBAAwB,UAAxB,EAAiC,OAAO,8BACvC,+BAAC,cAAW,OAAO,EAAE,qBAAqB,WAAW,GACnD;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,KAAK;AAAA,YACL,WAAW;AAAA,cACT;AAAA,cACA,eAAe;AAAA,gBACb;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA,MAAM;AAAA,cACR,CAAC;AAAA,cACD,UAAU,EAAE,WAAW,OAAO,CAAC;AAAA,cAC/B,YAAY;AAAA,gBACV,OAAO,YAAY,aAAa;AAAA,gBAChC,UAAU;AAAA,gBACV,SAAS;AAAA,cACX,CAAC;AAAA,cACD;AAAA,cACA,OAAO,cAAc;AAAA,gBACnB;AAAA,gBACA,UAAU;AAAA,gBACV;AAAA,cACF,CAAC;AAAA,YACH;AAAA,YACA,eAAe;AAAA,YACf;AAAA,YACA,QAAQ,CAAC,UAAU;AAGjB,oCAAsB,MAAM;AAC1B,yBAAS,KAAK;AAAA,cAChB,CAAC;AAAA,YACH;AAAA,YACA,SAAS,MAAM;AACb;AAAA,gBACE,CAAC,CAAC,gBAAgB,SAAS,oBAAoB,eAC7C,CAAC,CAAC,cAAc,SAAS,oBAAoB;AAAA,cACjD;AAAA,YACF;AAAA,YACA,UAAU,WAAW,SAAY;AAAA,YACjC;AAAA,YACA,kBAAkB,CAAC,MAAM;AAGvB,iCAAmB,CAAC;AAAA,YACtB;AAAA,YACA;AAAA,YACA,SAAS,CAAC,MAAkB;AAI1B,kBAAI,CAAC,QAAQ,SAAS,SAAS,EAAE,aAAa,GAAG;AAC/C,mCAAmB,GAAG,iBAAiB,aAAa;AAAA,cACtD;AAAA,YACF;AAAA,YAEA;AAAA,mCAAC,UAAK,WAAW,OAAO,iBACtB;AAAA;AAAA,kBAAC;AAAA;AAAA,oBACC,KAAK;AAAA,oBACL,WAAW,OAAO;AAAA,oBAClB;AAAA,oBACA;AAAA,oBACA,aAAa,YAAY;AAAA,oBACzB,MAAM,SAAS,SAAY,SAAY,GAAG,IAAI;AAAA,oBAE9C,OAAO,UAAU,OAAO,OAAO,MAAM;AAAA,oBACrC,UAAU,CAAC,aAAa;AACtB,0BAAI,OAAO,aAAa,UAAU;AAChC,iCAAS,EAAE,MAAM,YAAY,KAAK,CAAC;AAAA,sBACrC;AAAA,oBACF;AAAA,oBACA,cAAY;AAAA,oBACZ,iBAAe;AAAA,oBACf;AAAA,oBACA,WAAW;AAAA,oBACX,gBAAgB;AAAA,oBAChB,oBAAoB;AAAA,oBACpB,iBAAiB,MAAM;AACrB,oCAAc,SAAS,QAAQ;AAAA,oBACjC;AAAA;AAAA,gBACF;AAAA,gBAEA,oBAAC,UAAK,WAAW,OAAO,oBAAoB,oBAAC;AAAA,gBAC7C;AAAA,kBAAC;AAAA;AAAA,oBACC,KAAK;AAAA,oBACL,WAAW,OAAO;AAAA,oBAClB;AAAA,oBACA;AAAA,oBACA,aAAa,YAAY;AAAA,oBACzB,MAAM,SAAS,SAAY,SAAY,GAAG,IAAI;AAAA,oBAE9C,OAAO,UAAU,OAAO,OAAO,MAAM;AAAA,oBACrC,UAAU,CAAC,aAAa;AACtB,0BAAI,OAAO,aAAa,UAAU;AAChC,iCAAS,EAAE,IAAI,YAAY,KAAK,CAAC;AAAA,sBACnC;AAAA,oBACF;AAAA,oBACA,cAAY;AAAA,oBACZ,iBAAe;AAAA,oBACf;AAAA,oBACA,eAAe;AAAA,oBACf,qBAAoB;AAAA,oBACpB,iBAAiB,MAAM;AACrB,4CAAsB,MAAM;AAC1B,sCAAc,SAAS,UAAU;AAAA,sBACnC,CAAC;AAAA,oBACH;AAAA;AAAA,gBACF;AAAA,iBACF;AAAA,cACC,CAAC,YACA,CAAC,2BACC,UACC,MAAM,MAAM,UAAU,MAAM,MAAM,IAAI,UAAU,OACjD,oBACA;AAAA,gBAAC;AAAA;AAAA,kBACC,SAAS,MAAM;AACb,0CAAsB;AAAA,sBACpB,MAAM,wBAAwB;AAAA,sBAC9B,SAAS,EAAE,WAAW,KAAK;AAAA,oBAC7B,CAAC;AAAA,kBACH;AAAA,kBACA,SAAS,MAAM;AACb,6BAAS,IAAI;AACb,wBAAI,gBAAgB,SAAS,oBAAoB;AAC/C,sCAAgB,QAAQ,mBAAmB,cACzC;AAAA,oBACJ;AACA,wBAAI,cAAc,SAAS,oBAAoB;AAC7C,oCAAc,QAAQ,mBAAmB,cAAc;AAAA,oBACzD;AACA,uCAAmB,KAAK;AACxB,0CAAsB,MAAM;AAC1B,sCAAgB,SAAS,oBAAoB,MAAM;AAAA,oBACrD,CAAC;AAAA,kBACH;AAAA,kBACA,WAAW,CAAC,MAAM;AAChB,wBAAI,EAAE,QAAQ,SAAS;AACrB,wBAAE,gBAAgB;AAAA,oBACpB;AAAA,kBACF;AAAA,kBACA,WAAW;AAAA,kBACX,OAAO,YAAY,aAAa;AAAA,kBAChC,MAAK;AAAA,kBACL,cAAY;AAAA,kBAEZ,8BAAC,aAAU;AAAA;AAAA,cACb;AAAA;AAAA;AAAA,QAEN;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,KAAK;AAAA,YACL;AAAA,YACA,iBAAe;AAAA,YACf;AAAA,YACA,OAAO;AAAA,YACP,mBAAiB;AAAA,YACjB,oBAAkB;AAAA;AAAA,QACpB;AAAA,SACF,GACF;AAAA;AAAA,EACF;AAEJ,CAAC;",
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport {\n type FocusEvent,\n forwardRef,\n type KeyboardEvent as ReactKeyboardEvent,\n type RefObject,\n useCallback,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useIntl } from 'react-intl';\n\nimport { XmarkIcon } from '@dynatrace/strato-icons';\n\nimport { DateRangeSelector } from './DateRangeSelector.js';\nimport { DateTimeInput } from './DateTimeInput.js';\nimport * as styles from './DateTimeRangePicker.sty.js';\nimport { isExpressionTriggerKey } from './expression-trigger-helpers.js';\nimport { useDateTimeRangePicker } from './hooks/useDateTimeRangePicker.js';\nimport { onTimeframeCopyCapture } from './selection-copy-helpers.js';\nimport {\n peekPreRestoreEndpoints,\n type SelectionEndpoints,\n} from './selection-helpers.js';\nimport type {\n DateTimeRangePickerProps,\n DateTimeRangePickerRef,\n} from './types.js';\nimport { DateRangeSelectorRef, DateTimeInputRef } from './types.js';\nimport { useSelectionInteractionHandlers } from './useSelectionInteractionHandlers.js';\nimport { Button } from '../../buttons/button/Button.js';\nimport { useAriaLabelingProps } from '../../core/hooks/useAriaLabelingProps.js';\nimport { useBehavioralTrackingProps } from '../../core/hooks/useBehavioralTrackingProps.js';\nimport { useFocusRing } from '../../core/styles/useFocusRing.js';\nimport { TimeErrorKey } from '../../core/time/shared.types.js';\nimport { useDateTimeRangePickerStore } from '../../core/time/timeframeStore/useTimeframeStore.js';\nimport { validate } from '../../core/time/validation.js';\nimport { Flex } from '../../layouts/flex/Flex.js';\nimport { inputGroupClassName } from '../../layouts/input-group/InputGroup.sty.js';\nimport { InputGroup } from '../../layouts/input-group/InputGroup.js';\nimport { fieldTokens } from '../../styles/field.sty.js';\nimport { textStyle } from '../../styles/textStyle.sty.js';\nimport {\n clearIconButton,\n dateTimePicker,\n} from '../date-time-picker/DateTimePicker.sty.js';\nimport { focusDateTimeInput } from '../date-time-picker/utils/focusDateTimeInput.js';\nimport { FormFieldMessageContext } from '../forms-core/contexts/FormFieldMessageContext.js';\nimport { useFormFieldMessagesContext } from '../forms-core/hooks/useFormFieldMessagesContext.js';\nimport { useSyncedFormControlProps } from '../forms-core/hooks/useSyncedFormControlProps.js';\nimport { FormFieldMessagesAction } from '../forms-core/state/formfield-messages-state-reducer.js';\nimport { SpinButtonHandler } from '../spin-buttons/spin-button-group/types.js';\n\n/**\n * Returns true if a given DateTimeInput element contains the active (focused)\n * element *or* the window selection intersects it.\n *\n * The focus-based check covers the common case where a single spin button is\n * focused \u2013 including empty (placeholder) spin buttons whose `selectAll()` is\n * a no-op and therefore leave the window selection collapsed.\n *\n * The selection-based check covers cross-input scenarios such as Ctrl+A or\n * drag-select spanning both \"from\" and \"to\" inputs.\n */\nfunction isInputInSelectionOrFocused(\n ref: RefObject<DateTimeInputRef | null>,\n preRestoreEndpoints?: SelectionEndpoints,\n): boolean {\n const element = ref.current?.element;\n if (!element) {\n return false;\n }\n\n if (element.contains(document.activeElement)) {\n return true;\n }\n\n const selection = window.getSelection();\n if (selection && selection.rangeCount > 0 && !selection.isCollapsed) {\n if (selection.getRangeAt(0).intersectsNode(element)) {\n return true;\n }\n }\n\n // Safari clips the live selection to the active CE host after contenteditable\n // is re-attached in the keydown capture phase. Fall back to the pre-restore\n // endpoints stashed by deferContentEditableRestore, which still span both inputs.\n return (\n !!preRestoreEndpoints &&\n (element.contains(preRestoreEndpoints.anchorNode) ||\n element.contains(preRestoreEndpoints.focusNode))\n );\n}\n\nfunction focusExpressionInputAtEnd(\n ref: RefObject<DateTimeInputRef | null>,\n): void {\n const expressionElement = ref.current?.expressionInputRef;\n if (!expressionElement) {\n return;\n }\n\n expressionElement.focus();\n\n const selection = window.getSelection();\n if (!selection) {\n return;\n }\n\n const range = document.createRange();\n range.selectNodeContents(expressionElement);\n range.collapse(false);\n selection.removeAllRanges();\n selection.addRange(range);\n}\n\nfunction getOffsetWithinElement(\n element: HTMLElement,\n container: Node,\n offset: number,\n): number {\n const range = document.createRange();\n range.selectNodeContents(element);\n range.setEnd(container, offset);\n return range.toString().length;\n}\n\n/**@internal */\nexport const DateTimeRangePickerRoot = forwardRef<\n DateTimeRangePickerRef,\n Omit<DateTimeRangePickerProps, 'value' | 'defaultValue' | 'onChange'>\n>((props, forwardedRef) => {\n const {\n id: propId,\n disabled: propDisabled,\n readOnly = false,\n name,\n style: consumerStyle,\n className: consumerClassName,\n required: propRequired,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n 'aria-disabled': ariaDisabledProp,\n placeholder: placeholderProp,\n onBlur,\n ...remainingProps\n }: Omit<\n DateTimeRangePickerProps,\n 'value' | 'defaultValue' | 'onChange'\n > = props;\n const [behavioralTrackingProps] = useBehavioralTrackingProps(remainingProps);\n const ariaProps = useAriaLabelingProps(props);\n const COMPONENT_NAME = 'DateTimeRangePicker';\n\n const rootRef = useRef<HTMLDivElement>(null);\n const touchedContainerRef = useRef<HTMLDivElement>(null);\n const dateTimeToRef = useRef<DateTimeInputRef>(null);\n const dateRangeSelectorRef = useRef<DateRangeSelectorRef>(null);\n\n const [hasInputContent, setHasInputContent] = useState(false);\n\n const setValue = useDateTimeRangePickerStore(\n (state) => state.setDateTimeRangePickerTimeframe,\n );\n const value = useDateTimeRangePickerStore(\n (state) => state.dateTimeRangePickerTimeframe,\n );\n const dateTimeFromRef = useDateTimeRangePickerStore(\n (state) => state.dateTimeFromRef,\n );\n const precision = useDateTimeRangePickerStore((state) => state.precision);\n const min = useDateTimeRangePickerStore((state) => state.min);\n const max = useDateTimeRangePickerStore((state) => state.max);\n const formatString = useDateTimeRangePickerStore(\n (state) => state.formatString,\n );\n\n const { disabled, required, id, ariaDisabled } = useSyncedFormControlProps({\n propDisabled,\n propRequired,\n propId,\n propAriaDisabled: ariaDisabledProp,\n });\n const disabledOrAriaDisabled = disabled || ariaDisabled || false;\n\n const { placeholder, onPasteCapture, onUndoPasteKeyDown } =\n useDateTimeRangePicker({\n placeholder: placeholderProp,\n readOnly,\n dateTimeFromRef,\n dateTimeToRef,\n });\n\n const intl = useIntl();\n\n const {\n state: { showError },\n dispatch: formMessageDispatch,\n } = useFormFieldMessagesContext();\n\n // Track the last error key returned by the imperative validate() so we can\n // pass it as `formerError` on the next call and clean up stale messages.\n const lastValidationErrorRef = useRef<TimeErrorKey | undefined>();\n\n // Provide root and input element reference and functions to interact with the calendar overlay\n useImperativeHandle(\n forwardedRef,\n (): DateTimeRangePickerRef => ({\n element: rootRef.current,\n inputRef: {\n from: dateTimeFromRef.current?.inputRef,\n to: dateTimeToRef.current?.inputRef,\n },\n open: () => dateRangeSelectorRef.current?.open(),\n close: () => dateRangeSelectorRef.current?.close(),\n focus: () => dateTimeFromRef.current?.focus?.(),\n getCurrentValue: () => ({\n from: value?.from ?? null,\n to: value?.to ?? null,\n }),\n validate() {\n lastValidationErrorRef.current = validate(value, min, max, {\n formMessageDispatch,\n formerError: lastValidationErrorRef.current,\n precision,\n showError: true,\n checkOrder: true,\n ref: rootRef,\n expectedFormat: formatString,\n valueMode: 'dateTimePicker',\n required,\n });\n formMessageDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n },\n }),\n [\n value,\n min,\n max,\n formMessageDispatch,\n precision,\n formatString,\n required,\n dateTimeFromRef,\n ],\n );\n\n const { focusClassName } = useFocusRing({\n focusWithin: true,\n ignoreModality: true,\n isMinimal: false,\n disabled,\n color: showError ? 'critical' : 'neutral',\n });\n\n const dateTimeFromLabel = intl.formatMessage({\n defaultMessage: 'DateTime from',\n id: 'fMy6q/KKOqbvCA3H',\n description:\n 'Textbox to enter a relative or absolute timeframe from value.',\n });\n\n const dateTimeToLabel = intl.formatMessage({\n defaultMessage: 'DateTime to',\n id: 'uuhhc3nEZptwtV2E',\n description: 'Textbox to enter a relative or absolute timeframe to value.',\n });\n const clearButtonLabel = intl.formatMessage({\n defaultMessage: 'Clear date and time range',\n id: 'zX4r/Y8gJL1C8+5e',\n description: 'Aria label for the DateTimeRangePicker clear button.',\n });\n const formFieldMessageContextValue = useMemo(\n () => ({\n state: {\n customMessages: [],\n formControlMessages: [],\n showError,\n },\n }),\n [showError],\n );\n\n const { onMouseDown, onKeyDown: handleSelectionKeyDown } =\n useSelectionInteractionHandlers(\n touchedContainerRef,\n useCallback(() => {\n focusDateTimeInput(null, dateTimeFromRef, dateTimeToRef);\n }, [dateTimeFromRef]),\n dateTimeFromRef,\n dateTimeToRef,\n );\n\n const onKeyDown = useCallback(\n (event: ReactKeyboardEvent<HTMLDivElement>) => {\n if (disabled || readOnly) {\n handleSelectionKeyDown(event);\n return;\n }\n\n // Safari: Reads the stash set by deferContentEditableRestore\n const preRestoreEndpoints = peekPreRestoreEndpoints(\n event.currentTarget as HTMLElement,\n );\n\n const fromInputIsIso =\n dateTimeFromRef.current?.element?.getAttribute('data-valuetype') ===\n 'iso8601';\n const toInputIsIso =\n dateTimeToRef.current?.element?.getAttribute('data-valuetype') ===\n 'iso8601';\n\n const bothInSelection =\n isInputInSelectionOrFocused(dateTimeFromRef, preRestoreEndpoints) &&\n isInputInSelectionOrFocused(dateTimeToRef, preRestoreEndpoints);\n\n // When both inputs are selected, allow expression trigger keys to switch the entire range to expression mode.\n if (bothInSelection && isExpressionTriggerKey(event)) {\n setValue(null);\n if (dateTimeToRef.current?.expressionInputRef) {\n dateTimeToRef.current.expressionInputRef.textContent = '';\n }\n }\n\n const switchFromToExpression =\n isInputInSelectionOrFocused(dateTimeFromRef, preRestoreEndpoints) &&\n fromInputIsIso;\n const switchToToExpression =\n isInputInSelectionOrFocused(dateTimeToRef, preRestoreEndpoints) &&\n toInputIsIso;\n if (\n isExpressionTriggerKey(event) &&\n (switchFromToExpression || switchToToExpression)\n ) {\n const char = event.key;\n\n // The primary input receives the character and focus.\n // When both are selected, 'from' receives the character and focus.\n const primaryRef = switchFromToExpression\n ? dateTimeFromRef\n : dateTimeToRef;\n\n primaryRef.current?.setExpressionValue(char);\n\n requestAnimationFrame(() => {\n focusExpressionInputAtEnd(primaryRef);\n });\n\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n // Handle regular character input when both inputs are selected\n if (\n isInputInSelectionOrFocused(dateTimeFromRef, preRestoreEndpoints) &&\n isInputInSelectionOrFocused(dateTimeToRef, preRestoreEndpoints) &&\n !fromInputIsIso &&\n !toInputIsIso &&\n event.key.length === 1 &&\n !event.ctrlKey &&\n !event.metaKey &&\n !event.altKey\n ) {\n const char = event.key;\n const fromExpressionElement =\n dateTimeFromRef.current?.expressionInputRef;\n const toExpressionElement = dateTimeToRef.current?.expressionInputRef;\n const selection = window.getSelection();\n\n if (\n fromExpressionElement &&\n toExpressionElement &&\n selection &&\n selection.rangeCount > 0 &&\n !selection.isCollapsed\n ) {\n const range = selection.getRangeAt(0);\n const fromValue = fromExpressionElement.textContent ?? '';\n const toValue = toExpressionElement.textContent ?? '';\n\n const fromStart = fromExpressionElement.contains(range.startContainer)\n ? getOffsetWithinElement(\n fromExpressionElement,\n range.startContainer,\n range.startOffset,\n )\n : 0;\n const toEnd = toExpressionElement.contains(range.endContainer)\n ? getOffsetWithinElement(\n toExpressionElement,\n range.endContainer,\n range.endOffset,\n )\n : toValue.length;\n\n dateTimeFromRef.current?.setExpressionValue(\n `${fromValue.slice(0, fromStart)}${char}`,\n );\n dateTimeToRef.current?.setExpressionValue(toValue.slice(toEnd));\n\n requestAnimationFrame(() => {\n focusExpressionInputAtEnd(dateTimeFromRef);\n });\n\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n // Replace the selected expression in \"from\" and keep \"to\" unchanged.\n dateTimeFromRef.current?.setExpressionValue(char);\n\n requestAnimationFrame(() => {\n focusExpressionInputAtEnd(dateTimeFromRef);\n });\n\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n handleSelectionKeyDown(event);\n },\n [\n disabled,\n readOnly,\n handleSelectionKeyDown,\n dateTimeFromRef,\n dateTimeToRef,\n setValue,\n ],\n );\n\n // Move from the last \"from\" segment to the first \"to\" segment.\n const handleFromTrailingEdge = useCallback(() => {\n dateTimeToRef.current?.focus?.();\n }, []);\n\n // Move from the first \"to\" segment to the last \"from\" segment.\n const handleToLeadingEdge = useCallback(() => {\n dateTimeFromRef.current?.focusLast();\n }, [dateTimeFromRef]);\n\n // Carry trailing overflow from \"from\" into the first \"to\" segment.\n const handleFromTrailingOverflow = useCallback(\n (overflowChar: string) => {\n const handlers = Array.from(\n dateTimeToRef.current?.spinButtonHandlers?.values() ?? [],\n ).filter((h): h is SpinButtonHandler => h !== null && h !== undefined);\n\n const firstHandler = handlers[0];\n if (!firstHandler) {\n return;\n }\n\n if (value?.to?.type === 'expression' || value?.to === null) {\n dateTimeToRef.current?.setExpressionValue(overflowChar);\n requestAnimationFrame(() => {\n const exprEl = dateTimeToRef.current?.expressionInputRef;\n if (exprEl) {\n // Focus first so that expressionOnFocusHandler fires and selects all,\n // then immediately collapse the selection to the end so the cursor\n // lands after the overflow character instead of selecting everything.\n exprEl.focus();\n const sel = window.getSelection();\n if (sel) {\n const range = document.createRange();\n range.selectNodeContents(exprEl);\n range.collapse(false);\n sel.removeAllRanges();\n sel.addRange(range);\n }\n }\n });\n return;\n }\n\n if (firstHandler.type === 'number') {\n firstHandler.applyText(overflowChar, true);\n firstHandler.element.current?.focus();\n firstHandler.setSelection({ start: 0, end: 0, rtl: true });\n }\n },\n [value?.to],\n );\n\n return (\n <Flex\n ref={rootRef}\n flexDirection=\"column\"\n data-testid={dataTestId}\n style={consumerStyle}\n className={consumerClassName}\n {...ariaProps}\n {...behavioralTrackingProps}\n data-dt-component={COMPONENT_NAME}\n >\n <FormFieldMessageContext.Provider value={formFieldMessageContextValue}>\n <InputGroup style={{ gridTemplateColumns: '1fr auto' }}>\n <Flex\n ref={touchedContainerRef}\n className={clsx(\n inputGroupClassName,\n dateTimePicker({\n readOnly,\n showError,\n disabled,\n type: 'datetime',\n }),\n textStyle({ textStyle: 'base' }),\n fieldTokens({\n color: showError ? 'critical' : 'neutral',\n disabled: disabledOrAriaDisabled,\n variant: 'emphasized',\n }),\n focusClassName,\n styles.dateTimeRange({\n showError,\n disabled: disabledOrAriaDisabled,\n readOnly: readOnly,\n }),\n )}\n onCopyCapture={onTimeframeCopyCapture}\n onPasteCapture={onPasteCapture}\n onBlur={(event) => {\n // onFocus synchronously redirects focus from the container to a spin button,\n // causing a spurious onBlur; rAF defers the call until focus has settled.\n requestAnimationFrame(() => {\n onBlur?.(event);\n });\n }}\n onInput={() => {\n setHasInputContent(\n !!dateTimeFromRef.current?.expressionInputRef?.textContent ||\n !!dateTimeToRef.current?.expressionInputRef?.textContent,\n );\n }}\n tabIndex={disabled ? undefined : 0}\n onMouseDown={onMouseDown}\n onKeyDownCapture={(e) => {\n // Handles undo for from and to inputs with Ctrl+Z.\n // Uses capture phase so it fires before the input-level undo handler.\n onUndoPasteKeyDown(e);\n }}\n onKeyDown={onKeyDown}\n onFocus={(e: FocusEvent) => {\n // Forward the focus only if it is coming from outside this component.\n // Focus the first spin button with textContent; otherwise, focus the input.\n\n if (!rootRef.current?.contains(e.relatedTarget)) {\n focusDateTimeInput(e, dateTimeFromRef, dateTimeToRef);\n }\n }}\n >\n <span className={styles.scrollContainer}>\n <DateTimeInput\n ref={dateTimeFromRef}\n className={styles.dateTimeInput}\n disabled={disabled}\n readOnly={readOnly}\n placeholder={placeholder.from}\n name={name === undefined ? undefined : `${name}-from`}\n // Maintains its own state to separate single and range value manipulations\n value={value === null ? null : value.from}\n onChange={(newValue) => {\n if (typeof newValue !== 'string') {\n setValue({ from: newValue ?? null });\n }\n }}\n aria-label={dateTimeFromLabel}\n aria-disabled={ariaDisabled}\n required={required}\n controlId={id}\n onTrailingEdge={handleFromTrailingEdge}\n onTrailingOverflow={handleFromTrailingOverflow}\n partialTimeAnchorDate={value?.to?.absoluteDate || undefined}\n onPasteComplete={() => {\n dateTimeToRef.current?.focus?.();\n }}\n />\n\n <span className={styles.timeframeSeparator}>\u2192</span>\n <DateTimeInput\n ref={dateTimeToRef}\n className={styles.dateTimeInput}\n disabled={disabled}\n readOnly={readOnly}\n placeholder={placeholder.to}\n name={name === undefined ? undefined : `${name}-to`}\n // Maintains its own state to separate single and range value manipulations\n value={value === null ? null : value.to}\n onChange={(newValue) => {\n if (typeof newValue !== 'string') {\n setValue({ to: newValue ?? null });\n }\n }}\n aria-label={dateTimeToLabel}\n aria-disabled={ariaDisabled}\n required={required}\n onLeadingEdge={handleToLeadingEdge}\n dateOnlyPasteAnchor=\"endOfDay\"\n partialTimeAnchorDate={value?.from?.absoluteDate || undefined}\n onPasteComplete={() => {\n requestAnimationFrame(() => {\n dateTimeToRef.current?.focusLast();\n });\n }}\n />\n </span>\n {!readOnly &&\n !disabledOrAriaDisabled &&\n ((value &&\n (value.from?.value !== '' || value.to?.value !== '')) ||\n hasInputContent) && (\n <Button\n onFocus={() => {\n formMessageDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n }}\n onClick={() => {\n setValue(null);\n if (dateTimeFromRef.current?.expressionInputRef) {\n dateTimeFromRef.current.expressionInputRef.textContent =\n '';\n }\n if (dateTimeToRef.current?.expressionInputRef) {\n dateTimeToRef.current.expressionInputRef.textContent = '';\n }\n setHasInputContent(false);\n requestAnimationFrame(() => {\n dateTimeFromRef.current?.expressionInputRef?.focus();\n });\n }}\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n e.stopPropagation();\n }\n }}\n className={clearIconButton}\n color={showError ? 'critical' : 'neutral'}\n size=\"condensed\"\n aria-label={clearButtonLabel}\n >\n <XmarkIcon />\n </Button>\n )}\n </Flex>\n <DateRangeSelector\n ref={dateRangeSelectorRef}\n disabled={disabled}\n aria-disabled={ariaDisabled}\n readOnly={readOnly}\n error={showError}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n />\n </InputGroup>\n </FormFieldMessageContext.Provider>\n </Flex>\n );\n});\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,10 +1,10 @@
1
1
  import { TZDateMini } from "@date-fns/tz";
2
2
  import { endOfDay, startOfDay } from "date-fns";
3
+ import { getTimezone } from "@dynatrace-sdk/user-preferences";
3
4
  import {
4
- getRegionalFormat,
5
- getTimezone
6
- } from "@dynatrace-sdk/user-preferences";
7
- import { getDayPeriodValues } from "../forms-core/time/helpers.js";
5
+ getDayPeriodValues,
6
+ getSafeRegionalFormat
7
+ } from "../forms-core/time/helpers.js";
8
8
  const DATE_ONLY_REGEX = /^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])[Zz]?$/;
9
9
  const TIME_ONLY_REGEX = /^([01]\d|2[0-3]):([0-5]\d)(?::([0-5]\d)(?:\.(\d{1,3}))?)?([Zz]|[+-](?:[01]\d|2[0-3]):[0-5]\d)?$/;
10
10
  const FULL_ISO_DATETIME_REGEX = /^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])[Tt]([01]\d|2[0-3])(?::([0-5]\d)(?::([0-5]\d)(?:\.(\d{1,3}))?)?)?([Zz]|[+-]\d{2}:?\d{2})?$/;
@@ -115,11 +115,23 @@ const captureUndoSnapshot = (spinButtonHandlers, expressionRef, value, valueType
115
115
  expressionText: expressionRef?.textContent ?? ""
116
116
  };
117
117
  };
118
+ function isContentModifyingKey(event) {
119
+ if (event.ctrlKey || event.metaKey) {
120
+ return false;
121
+ }
122
+ if (event.key === "ArrowUp" || event.key === "ArrowDown" || event.key === "Backspace" || event.key === "Delete") {
123
+ return true;
124
+ }
125
+ if (event.key.length === 1) {
126
+ return true;
127
+ }
128
+ return false;
129
+ }
118
130
  function isDateFieldPart(part) {
119
131
  return part.type === "day" || part.type === "month" || part.type === "year";
120
132
  }
121
133
  function getRegionalDateFormat() {
122
- const parts = new Intl.DateTimeFormat(getRegionalFormat(), {
134
+ const parts = new Intl.DateTimeFormat(getSafeRegionalFormat(), {
123
135
  year: "numeric",
124
136
  month: "2-digit",
125
137
  day: "2-digit"
@@ -128,11 +140,22 @@ function getRegionalDateFormat() {
128
140
  const fieldOrder = parts.filter(isDateFieldPart).map((p) => p.type);
129
141
  return { delimiter, fieldOrder };
130
142
  }
143
+ const PLACEHOLDER_TOKEN_PATTERN = "[A-Za-z]{1,4}";
144
+ function orPlaceholder(numericPattern) {
145
+ return `${numericPattern}|${PLACEHOLDER_TOKEN_PATTERN}`;
146
+ }
147
+ function isPlaceholderToken(value) {
148
+ return /^[A-Za-z]+$/.test(value);
149
+ }
131
150
  function tryParsePartialDate(input) {
132
151
  const { delimiter, fieldOrder } = getRegionalDateFormat();
133
152
  const escapedDelimiter = delimiter.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
134
153
  const regex = new RegExp(
135
- `(?<=^|[\\s,])(\\d{1,4})${escapedDelimiter}(\\d{1,4})${escapedDelimiter}?(\\d{1,4})?(?=[\\s,]|$)`
154
+ `(?<=^|[\\s,])(${orPlaceholder(
155
+ "\\d{1,4}"
156
+ )})${escapedDelimiter}(${orPlaceholder(
157
+ "\\d{1,4}"
158
+ )})${escapedDelimiter}?(${orPlaceholder("\\d{1,4}")})?(?=[\\s,]|$)`
136
159
  );
137
160
  const match = regex.exec(input);
138
161
  if (!match) {
@@ -141,11 +164,12 @@ function tryParsePartialDate(input) {
141
164
  const rawValues = [match[1], match[2], match[3]].filter(
142
165
  (value) => value !== void 0
143
166
  );
167
+ const looksLikeYear = (value) => value.length === 4;
144
168
  const hasDisplacedYear = rawValues.some(
145
- (value, index) => value.length === 4 && fieldOrder[index] !== "year"
169
+ (value, index) => looksLikeYear(value) && fieldOrder[index] !== "year"
146
170
  );
147
171
  const isYearFirstLocale = fieldOrder[0] === "year";
148
- const hasNoExplicitYear = !rawValues.some((value) => value.length === 4);
172
+ const hasNoExplicitYear = !rawValues.some(looksLikeYear);
149
173
  const fields = hasDisplacedYear || isYearFirstLocale && hasNoExplicitYear ? fieldOrder.slice(fieldOrder.length - rawValues.length) : fieldOrder.slice(0, rawValues.length);
150
174
  const maxDigits = {
151
175
  year: 4,
@@ -156,6 +180,9 @@ function tryParsePartialDate(input) {
156
180
  for (let i = 0; i < fields.length; i++) {
157
181
  const raw = rawValues[i];
158
182
  const field = fields[i];
183
+ if (isPlaceholderToken(raw)) {
184
+ continue;
185
+ }
159
186
  if (raw.length > maxDigits[field]) {
160
187
  return null;
161
188
  }
@@ -171,7 +198,7 @@ function tryParsePartialDate(input) {
171
198
  return result;
172
199
  }
173
200
  function getRegionalTimeFormat() {
174
- const parts = new Intl.DateTimeFormat(getRegionalFormat(), {
201
+ const parts = new Intl.DateTimeFormat(getSafeRegionalFormat(), {
175
202
  hour: "numeric",
176
203
  minute: "2-digit"
177
204
  }).formatToParts(/* @__PURE__ */ new Date());
@@ -179,23 +206,32 @@ function getRegionalTimeFormat() {
179
206
  const dayPeriodValues = getDayPeriodValues();
180
207
  return { is12Hour: hasDayPeriod, dayPeriodValues };
181
208
  }
209
+ function parseTimeField(raw) {
210
+ if (raw === void 0 || isPlaceholderToken(raw)) {
211
+ return void 0;
212
+ }
213
+ return parseInt(raw);
214
+ }
182
215
  function tryParsePartialTime(input) {
183
216
  const { is12Hour, dayPeriodValues } = getRegionalTimeFormat();
184
217
  const escapedPeriods = dayPeriodValues.map(
185
218
  (value) => value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")
186
219
  );
187
- const dayPeriodPattern = is12Hour ? `(?:\\s*(${escapedPeriods.join("|")}))?` : "";
220
+ const dayPeriodPattern = is12Hour ? `(?:\\s*(${escapedPeriods.join("|")}|[A-Za-z]+))?` : "";
221
+ const hourPattern = orPlaceholder("[01]?\\d|2[0-3]");
222
+ const minuteOrSecondPattern = orPlaceholder("[0-5]\\d");
223
+ const millisecondPattern = orPlaceholder("\\d{1,3}");
188
224
  const regex = new RegExp(
189
- `(?<=^|[\\s,])((?:[01]?\\d|2[0-3])):([0-5]\\d)(?::([0-5]\\d)(?:[.](\\d{1,3}))?)?${dayPeriodPattern}(?=[\\s,]|$)`,
225
+ `(?<=^|[\\s,])(${hourPattern}):(${minuteOrSecondPattern})(?::(${minuteOrSecondPattern})(?:[.](${millisecondPattern}))?)?${dayPeriodPattern}(?=[\\s,]|$)`,
190
226
  "i"
191
227
  );
192
228
  const match = regex.exec(input);
193
229
  if (match) {
194
230
  const result = {};
195
- result.hour = parseInt(match[1]);
196
- result.minute = parseInt(match[2]);
197
- result.second = match[3] !== void 0 ? parseInt(match[3]) : void 0;
198
- result.millisecond = match[4] !== void 0 ? parseInt(match[4]) : void 0;
231
+ result.hour = parseTimeField(match[1]);
232
+ result.minute = parseTimeField(match[2]);
233
+ result.second = parseTimeField(match[3]);
234
+ result.millisecond = parseTimeField(match[4]);
199
235
  if (is12Hour && match[5] !== void 0) {
200
236
  const matched = match[5].toLowerCase();
201
237
  result.dayPeriod = dayPeriodValues.find(
@@ -309,9 +345,11 @@ function partialDateTimeToISO(date, time) {
309
345
  millisecond
310
346
  );
311
347
  }
312
- return buildDateOnlyISO(year, month, day);
348
+ if (time === null) {
349
+ return buildDateOnlyISO(year, month, day);
350
+ }
313
351
  }
314
- if (!date && hour24 !== void 0 && minute !== void 0) {
352
+ if (date === null && hour24 !== void 0 && minute !== void 0) {
315
353
  return buildTimeOnlyISO(hour24, minute, second, millisecond);
316
354
  }
317
355
  const now = TZDateMini.tz(getTimezone());
@@ -336,6 +374,7 @@ function partialDateTimeToISO(date, time) {
336
374
  }
337
375
  export {
338
376
  captureUndoSnapshot,
377
+ isContentModifyingKey,
339
378
  normalizeISOInput,
340
379
  parseDateOnlyToISO,
341
380
  parseTimeOnlyToISO,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/forms/date-time-range-picker/helpers.ts"],
4
- "sourcesContent": ["import { TZDateMini } from '@date-fns/tz';\nimport { endOfDay, startOfDay } from 'date-fns';\n\nimport {\n getRegionalFormat,\n getTimezone,\n} from '@dynatrace-sdk/user-preferences';\n\nimport type { UndoSnapshot } from './types.js';\nimport type { TimeValue } from '../../core/types/time.js';\nimport { getDayPeriodValues } from '../forms-core/time/helpers.js';\nimport type { SpinButtonHandler } from '../spin-buttons/spin-button-group/types.js';\n\n// Matches strict ISO 8601 date-only: YYYY-MM-DD or YYYY-MM-DDZ (with optional trailing Z/z)\n// Examples https://regex101.com/r/Jz81ww/1\nconst DATE_ONLY_REGEX = /^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])[Zz]?$/;\n// Matches common time-only strings: HH:MM, HH:MM:SS, HH:MM:SS.mmm \u2014 all with optional Z or \u00B1hh:mm offset\n// Examples: https://regex101.com/r/bSW29n/1\nconst TIME_ONLY_REGEX =\n /^([01]\\d|2[0-3]):([0-5]\\d)(?::([0-5]\\d)(?:\\.(\\d{1,3}))?)?([Zz]|[+-](?:[01]\\d|2[0-3]):[0-5]\\d)?$/;\n\n// Matches a full ISO 8601 datetime: YYYY-MM-DDT\u2026 with optional timezone.\n// Used to detect ISO strings that need case normalisation or a missing TZ suffix.\n// Validates value ranges: month 01\u201312, day 01\u201331, hour 00\u201323, minute/second 00\u201359.\n// Examples: https://regex101.com/r/OI3HwW/1\nconst FULL_ISO_DATETIME_REGEX =\n /^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])[Tt]([01]\\d|2[0-3])(?::([0-5]\\d)(?::([0-5]\\d)(?:\\.(\\d{1,3}))?)?)?([Zz]|[+-]\\d{2}:?\\d{2})?$/;\n\n/**\n * Normalises a pasted ISO-like string so that downstream parsers can handle it:\n * - Uppercases the `T` separator and any trailing `z` / `Z` in the timezone.\n * - When a full ISO datetime has no timezone suffix, interprets it as local time\n * in the user's configured timezone (per ISO 8601) and converts to UTC.\n * Non-ISO input is returned unchanged.\n * @internal\n */\nexport function normalizeISOInput(input: string): string {\n const match = FULL_ISO_DATETIME_REGEX.exec(input);\n if (!match) {\n return input;\n }\n\n // Uppercase the T separator and any trailing z\n // The regex finds ISO timestamps with lowercase t and uppercase T\n // Examples: https://regex101.com/r/HMInC0/1\n let normalized = input.replace(/^(\\d{4}-\\d{2}-\\d{2})[Tt]/, '$1T');\n\n const tzSuffix = match[8];\n if (tzSuffix) {\n // Uppercase a lowercase 'z' at the end\n if (tzSuffix === 'z') {\n normalized = normalized.slice(0, -1) + 'Z';\n }\n } else {\n // No timezone suffix \u2014 per ISO 8601 this means local time.\n // Interpret in the user's configured timezone and convert to UTC.\n const year = Number(match[1]);\n const month = Number(match[2]) - 1; // 0-indexed\n const day = Number(match[3]);\n const hours = Number(match[4]);\n const minutes = match[5] !== undefined ? Number(match[5]) : 0;\n const seconds = match[6] !== undefined ? Number(match[6]) : 0;\n const milliseconds =\n match[7] !== undefined ? Number(match[7].padEnd(3, '0')) : 0;\n\n const local = TZDateMini.tz(\n getTimezone(),\n year,\n month,\n day,\n hours,\n minutes,\n seconds,\n milliseconds,\n );\n\n if (!isNaN(local.getTime())) {\n // Guard against impossible dates like Feb 31 \u2014 TZDateMini rolls them\n // over to the next month, so if the resulting date doesn't match the\n // input, return the input unchanged (not a valid ISO datetime).\n if (local.getMonth() !== month || local.getDate() !== day) {\n return input;\n }\n return local.toISOString();\n }\n\n // Fallback: append Z if the date is somehow invalid for the timezone\n normalized += 'Z';\n }\n\n return normalized;\n}\n\n/**\n * Parses a time-only string to a full ISO UTC datetime string anchored at `2000-01-01`.\n * Accepts: `HH:MM`, `HH:MMZ`, `HH:MM:SS`, `HH:MM:SS.mmm`, with optional `Z` / `\u00B1hh:mm` offset.\n * Returns `null` if the input does not represent a valid time.\n * @internal\n */\nexport function parseTimeOnlyToISO(input: string): string | null {\n const match = TIME_ONLY_REGEX.exec(input);\n if (!match) {\n return null;\n }\n\n const hours = Number(match[1]);\n const minutes = Number(match[2]);\n const seconds = match[3] !== undefined ? Number(match[3]) : 0;\n const milliseconds =\n match[4] !== undefined ? Number(match[4].padEnd(3, '0')) : 0;\n const timezoneSuffix = match[5];\n\n const now = TZDateMini.tz(getTimezone());\n const year = now.getFullYear();\n const month = now.getMonth(); // 0-indexed\n const day = now.getDate();\n\n if (timezoneSuffix) {\n // Explicit offset (Z, +02:00, \u2026): build the full ISO string with that offset\n // and let the Date parser convert it to UTC correctly.\n\n const ISOdate = `${year}-${String(month + 1).padStart(2, '0')}-${String(\n day,\n ).padStart(2, '0')}`;\n const ISOtime = `T${match[1]}:${match[2]}:${String(seconds).padStart(\n 2,\n '0',\n )}.${String(milliseconds).padStart(3, '0')}${timezoneSuffix.toUpperCase()}`;\n const fullISO = ISOdate + ISOtime;\n const parsedDate = new Date(fullISO);\n\n return isNaN(parsedDate.getTime()) ? null : parsedDate.toISOString();\n }\n\n // No TZ suffix: the user means local time \u2014 interpret it in the user's timezone\n // and convert to UTC via .toISOString().\n const local = TZDateMini.tz(\n getTimezone(),\n year,\n month,\n day,\n hours,\n minutes,\n seconds,\n milliseconds,\n );\n return isNaN(local.getTime()) ? null : local.toISOString();\n}\n\n/**\n * Parses a date-only string matched against the strict ISO 8601 date format (`YYYY-MM-DD`).\n * Returns a full ISO UTC midnight datetime string, or `null` if the input is not a valid date.\n * @internal\n */\nexport function parseDateOnlyToISO(\n input: string,\n anchor: 'startOfDay' | 'endOfDay' = 'startOfDay',\n): string | null {\n const match = DATE_ONLY_REGEX.exec(input);\n if (!match) {\n return null;\n }\n\n const date = TZDateMini.tz(\n getTimezone(),\n Number(match[1]),\n Number(match[2]) - 1, // 0-indexed month\n Number(match[3]),\n );\n\n // Guard against impossible dates like Feb 31 \u2014 TZDateMini rolls them over to\n // the next month, so if the resulting month doesn't match the input, reject it.\n if (date.getMonth() !== Number(match[2]) - 1) {\n return null;\n }\n\n const anchored = anchor === 'endOfDay' ? endOfDay(date) : startOfDay(date);\n return anchored.toISOString();\n}\n\n/**\n * Captures the current state of a DateTimeInput's spinbuttons and expression input.\n * @internal\n */\nexport const captureUndoSnapshot = (\n spinButtonHandlers: Map<\n keyof Intl.DateTimeFormatPartTypesRegistry,\n SpinButtonHandler | null | undefined\n >,\n expressionRef: HTMLSpanElement | null | undefined,\n value: TimeValue | null,\n valueType: 'expression' | 'iso8601',\n): UndoSnapshot => {\n const spinButtonTexts = new Map<Intl.DateTimeFormatPart['type'], string>();\n spinButtonHandlers.forEach((handler, type) => {\n spinButtonTexts.set(type, handler?.element.current?.textContent ?? '');\n });\n return {\n value,\n valueType,\n spinButtonTexts,\n expressionText: expressionRef?.textContent ?? '',\n };\n};\n\ntype DateFieldType = 'day' | 'month' | 'year';\n\nfunction isDateFieldPart(\n part: Intl.DateTimeFormatPart,\n): part is Intl.DateTimeFormatPart & { type: DateFieldType } {\n return part.type === 'day' || part.type === 'month' || part.type === 'year';\n}\n\n/**\n * Returns the locale-specific date delimiter and field order (e.g. DMY, MDY, YMD)\n * by inspecting `Intl.DateTimeFormat.formatToParts`.\n */\nfunction getRegionalDateFormat(): {\n delimiter: string;\n fieldOrder: [DateFieldType, DateFieldType, DateFieldType];\n} {\n const parts = new Intl.DateTimeFormat(getRegionalFormat(), {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n }).formatToParts(new Date());\n\n const delimiter = parts.find((p) => p.type === 'literal')?.value ?? '/';\n const fieldOrder = parts.filter(isDateFieldPart).map((p) => p.type) as [\n DateFieldType,\n DateFieldType,\n DateFieldType,\n ];\n\n return { delimiter, fieldOrder };\n}\n\nexport type PartialDate = Partial<Record<DateFieldType, number>>;\n\n/**\n * Extracts a partial date from an input string using the user's regional date format.\n * Returns a `PartialDate` with `day`, `month`, and/or `year` fields mapped according\n * to the locale's field order. Handles incomplete inputs like `\"12/\"` or `\"12.2024\"`.\n * Returns `null` if no date pattern is found.\n * @internal\n */\nexport function tryParsePartialDate(input: string): PartialDate | null {\n const { delimiter, fieldOrder } = getRegionalDateFormat();\n // Escape the delimiter for use in the regex pattern\n // Examples: https://regex101.com/r/KjhFqd/1\n const escapedDelimiter = delimiter.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\n // Match two or three groups of digits separated by the locale's date delimiter.\n // The middle group allows 1-4 digits because with only 2 groups it may be a year\n // (e.g. \"12.2024\"). When all 3 groups are present the field-level validation\n // below rejects a middle value that is too long for its assigned field.\n // Examples: https://regex101.com/r/h0AFRV/1\n const regex = new RegExp(\n `(?<=^|[\\\\s,])(\\\\d{1,4})${escapedDelimiter}(\\\\d{1,4})${escapedDelimiter}?(\\\\d{1,4})?(?=[\\\\s,]|$)`,\n );\n\n const match = regex.exec(input);\n if (!match) {\n return null;\n }\n\n const rawValues = [match[1], match[2], match[3]].filter(\n (value): value is string => value !== undefined,\n );\n\n // If a 4-digit number appears in a position that the locale doesn't assign to\n // 'year', the user likely omitted leading fields (e.g. \"12.2024\" in DMY means\n // month.year, not day.month). Right-align the values to the field order so the\n // 4-digit value lands on the year slot.\n const hasDisplacedYear = rawValues.some(\n (value, index) => value.length === 4 && fieldOrder[index] !== 'year',\n );\n const isYearFirstLocale = fieldOrder[0] === 'year';\n const hasNoExplicitYear = !rawValues.some((value) => value.length === 4);\n // In these cases, we assume the user omitted leading fields and right-align the values.\n const fields =\n hasDisplacedYear || (isYearFirstLocale && hasNoExplicitYear)\n ? fieldOrder.slice(fieldOrder.length - rawValues.length)\n : fieldOrder.slice(0, rawValues.length);\n\n const maxDigits: Record<DateFieldType, number> = {\n year: 4,\n day: 2,\n month: 2,\n };\n const result: PartialDate = {};\n\n for (let i = 0; i < fields.length; i++) {\n const raw = rawValues[i];\n const field = fields[i];\n\n // Day and month must be at most 2 digits; year must be exactly 4 digits.\n if (raw.length > maxDigits[field]) {\n return null;\n }\n\n const value = parseInt(raw);\n\n // Reject values outside valid ranges so that downstream code never sees\n // e.g. month 20 and wraps it into a different month via Date rollover.\n if (field === 'month' && (value < 1 || value > 12)) {\n return null;\n }\n if (field === 'day' && (value < 1 || value > 31)) {\n return null;\n }\n\n result[field] = value;\n }\n\n return result;\n}\n\ntype TimeFieldType = 'hour' | 'minute' | 'second' | 'millisecond';\n\nexport type PartialTime = Partial<Record<TimeFieldType, number>> & {\n dayPeriod?: string;\n};\n\n/**\n * Returns whether the user's locale uses a 12-hour clock and the locale-specific\n * day period labels (e.g. AM/PM, a.m./p.m.).\n */\nfunction getRegionalTimeFormat(): {\n is12Hour: boolean;\n dayPeriodValues: [string, string];\n} {\n const parts = new Intl.DateTimeFormat(getRegionalFormat(), {\n hour: 'numeric',\n minute: '2-digit',\n }).formatToParts(new Date());\n\n const hasDayPeriod = parts.some((p) => p.type === 'dayPeriod');\n const dayPeriodValues = getDayPeriodValues() as [string, string];\n\n return { is12Hour: hasDayPeriod, dayPeriodValues };\n}\n\n/**\n * Extracts a partial time from an input string using the user's regional time format.\n * Returns a `PartialTime` with `hour`, `minute`, `second`, `millisecond`, and/or\n * `dayPeriod` fields. Requires two-digit hours, minutes, and seconds.\n * For 12-hour locales, optionally matches the locale-specific AM/PM label.\n * Returns `null` if no time pattern is found.\n * @internal\n */\nexport function tryParsePartialTime(input: string): PartialTime | null {\n const { is12Hour, dayPeriodValues } = getRegionalTimeFormat();\n\n // Build day period matching: escape for regex and match case-insensitively.\n // Examples: https://regex101.com/r/KjhFqd/1\n const escapedPeriods = dayPeriodValues.map((value) =>\n value.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&'),\n );\n const dayPeriodPattern = is12Hour\n ? `(?:\\\\s*(${escapedPeriods.join('|')}))?`\n : '';\n\n // Match: hours : minutes : seconds? . milliseconds? dayPeriod? with appropriate\n // lookarounds to ensure we capture standalone time patterns in the input.\n // Minutes are required to avoid matching bare two-digit numbers as times.\n // Examples: https://regex101.com/r/MTnOAG/2\n const regex = new RegExp(\n `(?<=^|[\\\\s,])((?:[01]?\\\\d|2[0-3])):([0-5]\\\\d)(?::([0-5]\\\\d)(?:[.](\\\\d{1,3}))?)?${dayPeriodPattern}(?=[\\\\s,]|$)`,\n 'i',\n );\n\n const match = regex.exec(input);\n if (match) {\n const result: PartialTime = {};\n\n result.hour = parseInt(match[1]);\n result.minute = parseInt(match[2]);\n result.second = match[3] !== undefined ? parseInt(match[3]) : undefined;\n result.millisecond =\n match[4] !== undefined ? parseInt(match[4]) : undefined;\n\n if (is12Hour && match[5] !== undefined) {\n // Normalize to the canonical day period value (preserve locale casing)\n const matched = match[5].toLowerCase();\n result.dayPeriod = dayPeriodValues.find(\n (p) => p.toLowerCase() === matched,\n );\n }\n\n return result;\n }\n\n // Secondary: mm:ss.f{1,3} \u2014 fractional part is required to disambiguate from hh:mm.\n // Examples: https://regex101.com/r/hoRKbs/1\n const millisecondsRegex =\n /(?<=^|[\\s,])([0-5]\\d):([0-5]\\d)\\.(\\d{1,3})(?=[\\s,]|$)/;\n const millisecondsMatch = millisecondsRegex.exec(input);\n if (millisecondsMatch) {\n return {\n minute: parseInt(millisecondsMatch[1]),\n second: parseInt(millisecondsMatch[2]),\n millisecond: parseInt(millisecondsMatch[3]),\n };\n }\n\n return null;\n}\n\nexport type PartialDateTimeResult = {\n /** Normalized ISO string that can be applied to spin buttons. */\n iso: string;\n /**\n * If set, only these spin button parts should be updated (partial result).\n * When absent the result is complete and can be fed through the existing\n * paste pipeline (date-only / time-only / full ISO).\n */\n partsToUpdate?: Set<keyof Intl.DateTimeFormatPartTypesRegistry>;\n};\n\n/** Converts a 12-hour clock value to 24-hour using the locale's day-period labels. */\nfunction convertTo24Hour(hour: number, dayPeriod: string): number {\n const { dayPeriodValues } = getRegionalTimeFormat();\n const isPM = dayPeriod.toLowerCase() === dayPeriodValues[1].toLowerCase();\n const isAM = dayPeriod.toLowerCase() === dayPeriodValues[0].toLowerCase();\n if (isPM && hour < 12) {\n return hour + 12;\n }\n if (isAM && hour === 12) {\n return 0;\n }\n return hour;\n}\n\n/** Builds a complete ISO datetime from fully-specified date and time fields. */\nfunction buildFullDateTimeISO(\n year: number,\n month: number,\n day: number,\n hour: number,\n minute: number,\n second: number | undefined,\n millisecond: number | undefined,\n): PartialDateTimeResult | null {\n const d = TZDateMini.tz(\n getTimezone(),\n year,\n month - 1,\n day,\n hour,\n minute,\n second ?? 0,\n millisecond ?? 0,\n );\n return isNaN(d.getTime()) ? null : { iso: d.toISOString() };\n}\n\n/** Builds a date-only ISO string (YYYY-MM-DD) after validating the date. */\nfunction buildDateOnlyISO(\n year: number,\n month: number,\n day: number,\n): PartialDateTimeResult | null {\n const validationDate = TZDateMini.tz(getTimezone(), year, month - 1, day);\n if (\n isNaN(validationDate.getTime()) ||\n validationDate.getFullYear() !== year ||\n validationDate.getMonth() !== month - 1 ||\n validationDate.getDate() !== day\n ) {\n return null;\n }\n const yearString = String(year).padStart(4, '0');\n const monthString = String(month).padStart(2, '0');\n const dayString = String(day).padStart(2, '0');\n return { iso: `${yearString}-${monthString}-${dayString}` };\n}\n\n/** Builds a time-only ISO string (HH:MM[:SS[.mmm]]). */\nfunction buildTimeOnlyISO(\n hour: number,\n minute: number,\n second: number | undefined,\n millisecond: number | undefined,\n): PartialDateTimeResult {\n const hourString = String(hour).padStart(2, '0');\n const minuteString = String(minute).padStart(2, '0');\n let isoTime = `${hourString}:${minuteString}`;\n if (second !== undefined) {\n const secondString = String(second).padStart(2, '0');\n isoTime += `:${secondString}`;\n if (millisecond !== undefined) {\n const millisecondString = String(millisecond).padStart(3, '0');\n isoTime += `.${millisecondString}`;\n }\n }\n return { iso: isoTime };\n}\n\n/** Collects the set of spin-button part types that have defined values. */\nfunction collectPartsToUpdate(\n date: PartialDate | null,\n time: PartialTime | null,\n): Set<keyof Intl.DateTimeFormatPartTypesRegistry> {\n const partsToUpdate = new Set<keyof Intl.DateTimeFormatPartTypesRegistry>();\n\n const fieldMapping: Array<\n [unknown, keyof Intl.DateTimeFormatPartTypesRegistry]\n > = [\n [date?.day, 'day'],\n [date?.month, 'month'],\n [date?.year, 'year'],\n [time?.hour, 'hour'],\n [time?.minute, 'minute'],\n [time?.second, 'second'],\n [time?.millisecond, 'fractionalSecond'],\n [time?.dayPeriod, 'dayPeriod'],\n ];\n\n for (const [value, part] of fieldMapping) {\n if (value !== undefined) {\n partsToUpdate.add(part);\n }\n }\n\n return partsToUpdate;\n}\n\n/**\n * Converts partial date and/or time objects into an ISO-compatible string.\n *\n * - Complete date + complete time \u2192 full ISO datetime (no `partsToUpdate`).\n * - Complete date only \u2192 `\"YYYY-MM-DD\"` (no `partsToUpdate`).\n * - Complete time only \u2192 `\"HH:MM[:SS[.mmm]]\"` (no `partsToUpdate`).\n * - Partial fields \u2192 ISO string with defaults filled in, plus a `partsToUpdate`\n * set that lists only the spin button parts that should actually be applied.\n * - No fields at all \u2192 `null`.\n *\n * A date is \"complete\" when it has `day`, `month`, and `year`.\n * A time is \"complete\" when it has `hour` and `minute`.\n * @internal\n */\nexport function partialDateTimeToISO(\n date: PartialDate | null,\n time: PartialTime | null,\n): PartialDateTimeResult | null {\n if (!date && !time) {\n return null;\n }\n\n const year = date?.year;\n const month = date?.month;\n const day = date?.day;\n const minute = time?.minute;\n const second = time?.second;\n const millisecond = time?.millisecond;\n\n let hour24 = time?.hour;\n if (hour24 !== undefined && time?.dayPeriod) {\n hour24 = convertTo24Hour(hour24, time.dayPeriod);\n }\n\n if (year !== undefined && month !== undefined && day !== undefined) {\n if (hour24 !== undefined && minute !== undefined) {\n return buildFullDateTimeISO(\n year,\n month,\n day,\n hour24,\n minute,\n second,\n millisecond,\n );\n }\n return buildDateOnlyISO(year, month, day);\n }\n\n if (!date && hour24 !== undefined && minute !== undefined) {\n return buildTimeOnlyISO(hour24, minute, second, millisecond);\n }\n\n // Partial result: fill defaults from \"now\" for missing fields.\n const now = TZDateMini.tz(getTimezone());\n const fallback = TZDateMini.tz(\n getTimezone(),\n year ?? now.getFullYear(),\n (month ?? now.getMonth() + 1) - 1,\n day ?? now.getDate(),\n hour24 ?? now.getHours(),\n minute ?? now.getMinutes(),\n second ?? 0,\n millisecond ?? 0,\n );\n if (isNaN(fallback.getTime())) {\n return null;\n }\n\n const partsToUpdate = collectPartsToUpdate(date, time);\n if (partsToUpdate.size === 0) {\n return null;\n }\n\n return { iso: fallback.toISOString(), partsToUpdate };\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { TZDateMini } from '@date-fns/tz';\nimport { endOfDay, startOfDay } from 'date-fns';\n\nimport { getTimezone } from '@dynatrace-sdk/user-preferences';\n\nimport type { UndoSnapshot } from './types.js';\nimport type { TimeValue } from '../../core/types/time.js';\nimport {\n getDayPeriodValues,\n getSafeRegionalFormat,\n} from '../forms-core/time/helpers.js';\nimport type { SpinButtonHandler } from '../spin-buttons/spin-button-group/types.js';\n\n// Matches strict ISO 8601 date-only: YYYY-MM-DD or YYYY-MM-DDZ (with optional trailing Z/z)\n// Examples https://regex101.com/r/Jz81ww/1\nconst DATE_ONLY_REGEX = /^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])[Zz]?$/;\n// Matches common time-only strings: HH:MM, HH:MM:SS, HH:MM:SS.mmm \u2014 all with optional Z or \u00B1hh:mm offset\n// Examples: https://regex101.com/r/bSW29n/1\nconst TIME_ONLY_REGEX =\n /^([01]\\d|2[0-3]):([0-5]\\d)(?::([0-5]\\d)(?:\\.(\\d{1,3}))?)?([Zz]|[+-](?:[01]\\d|2[0-3]):[0-5]\\d)?$/;\n\n// Matches a full ISO 8601 datetime: YYYY-MM-DDT\u2026 with optional timezone.\n// Used to detect ISO strings that need case normalisation or a missing TZ suffix.\n// Validates value ranges: month 01\u201312, day 01\u201331, hour 00\u201323, minute/second 00\u201359.\n// Examples: https://regex101.com/r/OI3HwW/1\nconst FULL_ISO_DATETIME_REGEX =\n /^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])[Tt]([01]\\d|2[0-3])(?::([0-5]\\d)(?::([0-5]\\d)(?:\\.(\\d{1,3}))?)?)?([Zz]|[+-]\\d{2}:?\\d{2})?$/;\n\n/**\n * Normalises a pasted ISO-like string so that downstream parsers can handle it:\n * - Uppercases the `T` separator and any trailing `z` / `Z` in the timezone.\n * - When a full ISO datetime has no timezone suffix, interprets it as local time\n * in the user's configured timezone (per ISO 8601) and converts to UTC.\n * Non-ISO input is returned unchanged.\n * @internal\n */\nexport function normalizeISOInput(input: string): string {\n const match = FULL_ISO_DATETIME_REGEX.exec(input);\n if (!match) {\n return input;\n }\n\n // Uppercase the T separator and any trailing z\n // The regex finds ISO timestamps with lowercase t and uppercase T\n // Examples: https://regex101.com/r/HMInC0/1\n let normalized = input.replace(/^(\\d{4}-\\d{2}-\\d{2})[Tt]/, '$1T');\n\n const tzSuffix = match[8];\n if (tzSuffix) {\n // Uppercase a lowercase 'z' at the end\n if (tzSuffix === 'z') {\n normalized = normalized.slice(0, -1) + 'Z';\n }\n } else {\n // No timezone suffix \u2014 per ISO 8601 this means local time.\n // Interpret in the user's configured timezone and convert to UTC.\n const year = Number(match[1]);\n const month = Number(match[2]) - 1; // 0-indexed\n const day = Number(match[3]);\n const hours = Number(match[4]);\n const minutes = match[5] !== undefined ? Number(match[5]) : 0;\n const seconds = match[6] !== undefined ? Number(match[6]) : 0;\n const milliseconds =\n match[7] !== undefined ? Number(match[7].padEnd(3, '0')) : 0;\n\n const local = TZDateMini.tz(\n getTimezone(),\n year,\n month,\n day,\n hours,\n minutes,\n seconds,\n milliseconds,\n );\n\n if (!isNaN(local.getTime())) {\n // Guard against impossible dates like Feb 31 \u2014 TZDateMini rolls them\n // over to the next month, so if the resulting date doesn't match the\n // input, return the input unchanged (not a valid ISO datetime).\n if (local.getMonth() !== month || local.getDate() !== day) {\n return input;\n }\n return local.toISOString();\n }\n\n // Fallback: append Z if the date is somehow invalid for the timezone\n normalized += 'Z';\n }\n\n return normalized;\n}\n\n/**\n * Parses a time-only string to a full ISO UTC datetime string anchored at `2000-01-01`.\n * Accepts: `HH:MM`, `HH:MMZ`, `HH:MM:SS`, `HH:MM:SS.mmm`, with optional `Z` / `\u00B1hh:mm` offset.\n * Returns `null` if the input does not represent a valid time.\n * @internal\n */\nexport function parseTimeOnlyToISO(input: string): string | null {\n const match = TIME_ONLY_REGEX.exec(input);\n if (!match) {\n return null;\n }\n\n const hours = Number(match[1]);\n const minutes = Number(match[2]);\n const seconds = match[3] !== undefined ? Number(match[3]) : 0;\n const milliseconds =\n match[4] !== undefined ? Number(match[4].padEnd(3, '0')) : 0;\n const timezoneSuffix = match[5];\n\n const now = TZDateMini.tz(getTimezone());\n const year = now.getFullYear();\n const month = now.getMonth(); // 0-indexed\n const day = now.getDate();\n\n if (timezoneSuffix) {\n // Explicit offset (Z, +02:00, \u2026): build the full ISO string with that offset\n // and let the Date parser convert it to UTC correctly.\n\n const ISOdate = `${year}-${String(month + 1).padStart(2, '0')}-${String(\n day,\n ).padStart(2, '0')}`;\n const ISOtime = `T${match[1]}:${match[2]}:${String(seconds).padStart(\n 2,\n '0',\n )}.${String(milliseconds).padStart(3, '0')}${timezoneSuffix.toUpperCase()}`;\n const fullISO = ISOdate + ISOtime;\n const parsedDate = new Date(fullISO);\n\n return isNaN(parsedDate.getTime()) ? null : parsedDate.toISOString();\n }\n\n // No TZ suffix: the user means local time \u2014 interpret it in the user's timezone\n // and convert to UTC via .toISOString().\n const local = TZDateMini.tz(\n getTimezone(),\n year,\n month,\n day,\n hours,\n minutes,\n seconds,\n milliseconds,\n );\n return isNaN(local.getTime()) ? null : local.toISOString();\n}\n\n/**\n * Parses a date-only string matched against the strict ISO 8601 date format (`YYYY-MM-DD`).\n * Returns a full ISO UTC midnight datetime string, or `null` if the input is not a valid date.\n * @internal\n */\nexport function parseDateOnlyToISO(\n input: string,\n anchor: 'startOfDay' | 'endOfDay' = 'startOfDay',\n): string | null {\n const match = DATE_ONLY_REGEX.exec(input);\n if (!match) {\n return null;\n }\n\n const date = TZDateMini.tz(\n getTimezone(),\n Number(match[1]),\n Number(match[2]) - 1, // 0-indexed month\n Number(match[3]),\n );\n\n // Guard against impossible dates like Feb 31 \u2014 TZDateMini rolls them over to\n // the next month, so if the resulting month doesn't match the input, reject it.\n if (date.getMonth() !== Number(match[2]) - 1) {\n return null;\n }\n\n const anchored = anchor === 'endOfDay' ? endOfDay(date) : startOfDay(date);\n return anchored.toISOString();\n}\n\n/**\n * Captures the current state of a DateTimeInput's spinbuttons and expression input.\n * @internal\n */\nexport const captureUndoSnapshot = (\n spinButtonHandlers: Map<\n keyof Intl.DateTimeFormatPartTypesRegistry,\n SpinButtonHandler | null | undefined\n >,\n expressionRef: HTMLSpanElement | null | undefined,\n value: TimeValue | null,\n valueType: 'expression' | 'iso8601',\n): UndoSnapshot => {\n const spinButtonTexts = new Map<Intl.DateTimeFormatPart['type'], string>();\n spinButtonHandlers.forEach((handler, type) => {\n spinButtonTexts.set(type, handler?.element.current?.textContent ?? '');\n });\n return {\n value,\n valueType,\n spinButtonTexts,\n expressionText: expressionRef?.textContent ?? '',\n };\n};\n\n/**\n * Returns true if the keyboard event represents a key that could modify input\n * content (printable characters, arrows that change spinbutton values,\n * deletion keys).\n * @internal\n */\nexport function isContentModifyingKey(event: {\n key: string;\n ctrlKey: boolean;\n metaKey: boolean;\n}): boolean {\n if (event.ctrlKey || event.metaKey) {\n return false;\n }\n if (\n event.key === 'ArrowUp' ||\n event.key === 'ArrowDown' ||\n event.key === 'Backspace' ||\n event.key === 'Delete'\n ) {\n return true;\n }\n // Printable characters have a key value of length 1\n if (event.key.length === 1) {\n return true;\n }\n return false;\n}\n\ntype DateFieldType = 'day' | 'month' | 'year';\n\nfunction isDateFieldPart(\n part: Intl.DateTimeFormatPart,\n): part is Intl.DateTimeFormatPart & { type: DateFieldType } {\n return part.type === 'day' || part.type === 'month' || part.type === 'year';\n}\n\n/**\n * Returns the locale-specific date delimiter and field order (e.g. DMY, MDY, YMD)\n * by inspecting `Intl.DateTimeFormat.formatToParts`.\n */\nfunction getRegionalDateFormat(): {\n delimiter: string;\n fieldOrder: [DateFieldType, DateFieldType, DateFieldType];\n} {\n const parts = new Intl.DateTimeFormat(getSafeRegionalFormat(), {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n }).formatToParts(new Date());\n\n const delimiter = parts.find((p) => p.type === 'literal')?.value ?? '/';\n const fieldOrder = parts.filter(isDateFieldPart).map((p) => p.type) as [\n DateFieldType,\n DateFieldType,\n DateFieldType,\n ];\n\n return { delimiter, fieldOrder };\n}\n\nexport type PartialDate = Partial<Record<DateFieldType, number>>;\n\n/**\n * Short alphabetic tokens (e.g. `dd`, `MM`, `yyyy`, `HH`, `mm`, `ss`) \u2014 the same\n * text that empty spin buttons render via their `:empty::before` pseudo-element\n * and emit when copied. Accepting them in our parsers means a copied\n * `\"25/mm/2024\"` round-trips back to a partial date with the month intentionally\n * left empty.\n */\nconst PLACEHOLDER_TOKEN_PATTERN = '[A-Za-z]{1,4}';\n\n/** Wraps a numeric field pattern with a placeholder-token alternative. */\nfunction orPlaceholder(numericPattern: string): string {\n return `${numericPattern}|${PLACEHOLDER_TOKEN_PATTERN}`;\n}\n\n/** Whether `value` is a placeholder token rather than digits. */\nfunction isPlaceholderToken(value: string): boolean {\n return /^[A-Za-z]+$/.test(value);\n}\n\n/**\n * Extracts a partial date from an input string using the user's regional date format.\n * Returns a `PartialDate` with `day`, `month`, and/or `year` fields mapped according\n * to the locale's field order. Handles incomplete inputs like `\"12/\"` or `\"12.2024\"`,\n * and treats placeholder tokens (e.g. the `MM` in `\"25/MM/2024\"`) as intentionally\n * empty fields so the corresponding spin buttons are left untouched.\n * Returns `null` if no date pattern is found.\n * @internal\n */\nexport function tryParsePartialDate(input: string): PartialDate | null {\n const { delimiter, fieldOrder } = getRegionalDateFormat();\n // Escape the delimiter for use in the regex pattern\n // Examples: https://regex101.com/r/KjhFqd/1\n const escapedDelimiter = delimiter.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\n // Match two or three field tokens separated by the locale's date delimiter.\n // Each field is digits (1-4) or a placeholder token (1-4 letters). The middle\n // group allows 1-4 digits because with only 2 groups it may be a year\n // (e.g. \"12.2024\"). When all 3 groups are present the field-level validation\n // below rejects a middle value that is too long for its assigned field.\n // Examples: https://regex101.com/r/h0AFRV/1\n const regex = new RegExp(\n `(?<=^|[\\\\s,])(${orPlaceholder(\n '\\\\d{1,4}',\n )})${escapedDelimiter}(${orPlaceholder(\n '\\\\d{1,4}',\n )})${escapedDelimiter}?(${orPlaceholder('\\\\d{1,4}')})?(?=[\\\\s,]|$)`,\n );\n\n const match = regex.exec(input);\n if (!match) {\n return null;\n }\n\n const rawValues = [match[1], match[2], match[3]].filter(\n (value): value is string => value !== undefined,\n );\n\n // Treat 4-character placeholder tokens (e.g. `yyyy`) the same as 4-digit\n // years for field alignment purposes \u2014 both signal that the slot represents\n // the year, so right-alignment shouldn't be triggered when one is present.\n const looksLikeYear = (value: string): boolean => value.length === 4;\n\n // If a 4-character value appears in a position that the locale doesn't assign\n // to 'year', the user likely omitted leading fields (e.g. \"12.2024\" in DMY\n // means month.year, not day.month). Right-align the values to the field order\n // so the 4-character value lands on the year slot.\n const hasDisplacedYear = rawValues.some(\n (value, index) => looksLikeYear(value) && fieldOrder[index] !== 'year',\n );\n const isYearFirstLocale = fieldOrder[0] === 'year';\n const hasNoExplicitYear = !rawValues.some(looksLikeYear);\n // In these cases, we assume the user omitted leading fields and right-align the values.\n const fields =\n hasDisplacedYear || (isYearFirstLocale && hasNoExplicitYear)\n ? fieldOrder.slice(fieldOrder.length - rawValues.length)\n : fieldOrder.slice(0, rawValues.length);\n\n const maxDigits: Record<DateFieldType, number> = {\n year: 4,\n day: 2,\n month: 2,\n };\n const result: PartialDate = {};\n\n for (let i = 0; i < fields.length; i++) {\n const raw = rawValues[i];\n const field = fields[i];\n\n // A placeholder token means the user copied an empty spin button; leave the\n // field undefined so downstream code keeps that spin button as-is.\n if (isPlaceholderToken(raw)) {\n continue;\n }\n\n // Day and month must be at most 2 digits; year must be exactly 4 digits.\n if (raw.length > maxDigits[field]) {\n return null;\n }\n\n const value = parseInt(raw);\n\n // Reject values outside valid ranges so that downstream code never sees\n // e.g. month 20 and wraps it into a different month via Date rollover.\n if (field === 'month' && (value < 1 || value > 12)) {\n return null;\n }\n if (field === 'day' && (value < 1 || value > 31)) {\n return null;\n }\n\n result[field] = value;\n }\n\n return result;\n}\n\ntype TimeFieldType = 'hour' | 'minute' | 'second' | 'millisecond';\n\nexport type PartialTime = Partial<Record<TimeFieldType, number>> & {\n dayPeriod?: string;\n};\n\n/**\n * Returns whether the user's locale uses a 12-hour clock and the locale-specific\n * day period labels (e.g. AM/PM, a.m./p.m.).\n */\nfunction getRegionalTimeFormat(): {\n is12Hour: boolean;\n dayPeriodValues: [string, string];\n} {\n const parts = new Intl.DateTimeFormat(getSafeRegionalFormat(), {\n hour: 'numeric',\n minute: '2-digit',\n }).formatToParts(new Date());\n\n const hasDayPeriod = parts.some((p) => p.type === 'dayPeriod');\n const dayPeriodValues = getDayPeriodValues() as [string, string];\n\n return { is12Hour: hasDayPeriod, dayPeriodValues };\n}\n\n/**\n * Parses a single field as a digit value, returning `undefined` for placeholder\n * tokens (e.g. `HH`, `mm`) so the caller leaves the corresponding spin button\n * untouched.\n */\nfunction parseTimeField(raw: string | undefined): number | undefined {\n if (raw === undefined || isPlaceholderToken(raw)) {\n return undefined;\n }\n return parseInt(raw);\n}\n\n/**\n * Extracts a partial time from an input string using the user's regional time format.\n * Returns a `PartialTime` with `hour`, `minute`, `second`, `millisecond`, and/or\n * `dayPeriod` fields. Requires two-digit hours, minutes, and seconds for digit\n * inputs, and accepts placeholder tokens (e.g. the `mm` in `\"14:mm\"`) for fields\n * the user intentionally left empty.\n * For 12-hour locales, optionally matches the locale-specific AM/PM label.\n * Returns `null` if no time pattern is found.\n * @internal\n */\nexport function tryParsePartialTime(input: string): PartialTime | null {\n const { is12Hour, dayPeriodValues } = getRegionalTimeFormat();\n\n // Build day period matching: escape for regex and match case-insensitively.\n // The trailing `[A-Za-z]+` allows placeholder tokens (e.g. `aa`) to be consumed\n // so the time portion still matches; unrecognised tokens fall through to an\n // undefined `dayPeriod` below.\n // Examples: https://regex101.com/r/KjhFqd/1\n const escapedPeriods = dayPeriodValues.map((value) =>\n value.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&'),\n );\n const dayPeriodPattern = is12Hour\n ? `(?:\\\\s*(${escapedPeriods.join('|')}|[A-Za-z]+))?`\n : '';\n\n // Each field below accepts either its numeric range or a placeholder token\n // (1-4 letters). Minutes are required to avoid matching bare two-digit numbers\n // as times.\n const hourPattern = orPlaceholder('[01]?\\\\d|2[0-3]');\n const minuteOrSecondPattern = orPlaceholder('[0-5]\\\\d');\n const millisecondPattern = orPlaceholder('\\\\d{1,3}');\n // Examples: https://regex101.com/r/pQ8liS/1\n const regex = new RegExp(\n `(?<=^|[\\\\s,])(${hourPattern}):(${minuteOrSecondPattern})(?::(${minuteOrSecondPattern})(?:[.](${millisecondPattern}))?)?${dayPeriodPattern}(?=[\\\\s,]|$)`,\n 'i',\n );\n\n const match = regex.exec(input);\n if (match) {\n const result: PartialTime = {};\n\n result.hour = parseTimeField(match[1]);\n result.minute = parseTimeField(match[2]);\n result.second = parseTimeField(match[3]);\n result.millisecond = parseTimeField(match[4]);\n\n if (is12Hour && match[5] !== undefined) {\n // Normalize to the canonical day period value (preserve locale casing).\n // Placeholder tokens that don't match a known period leave dayPeriod unset.\n const matched = match[5].toLowerCase();\n result.dayPeriod = dayPeriodValues.find(\n (p) => p.toLowerCase() === matched,\n );\n }\n\n return result;\n }\n\n // Secondary: mm:ss.f{1,3} \u2014 fractional part is required to disambiguate from hh:mm.\n // Examples: https://regex101.com/r/hoRKbs/1\n const millisecondsRegex =\n /(?<=^|[\\s,])([0-5]\\d):([0-5]\\d)\\.(\\d{1,3})(?=[\\s,]|$)/;\n const millisecondsMatch = millisecondsRegex.exec(input);\n if (millisecondsMatch) {\n return {\n minute: parseInt(millisecondsMatch[1]),\n second: parseInt(millisecondsMatch[2]),\n millisecond: parseInt(millisecondsMatch[3]),\n };\n }\n\n return null;\n}\n\nexport type PartialDateTimeResult = {\n /** Normalized ISO string that can be applied to spin buttons. */\n iso: string;\n /**\n * If set, only these spin button parts should be updated (partial result).\n * When absent the result is complete and can be fed through the existing\n * paste pipeline (date-only / time-only / full ISO).\n */\n partsToUpdate?: Set<keyof Intl.DateTimeFormatPartTypesRegistry>;\n};\n\n/** Converts a 12-hour clock value to 24-hour using the locale's day-period labels. */\nfunction convertTo24Hour(hour: number, dayPeriod: string): number {\n const { dayPeriodValues } = getRegionalTimeFormat();\n const isPM = dayPeriod.toLowerCase() === dayPeriodValues[1].toLowerCase();\n const isAM = dayPeriod.toLowerCase() === dayPeriodValues[0].toLowerCase();\n if (isPM && hour < 12) {\n return hour + 12;\n }\n if (isAM && hour === 12) {\n return 0;\n }\n return hour;\n}\n\n/** Builds a complete ISO datetime from fully-specified date and time fields. */\nfunction buildFullDateTimeISO(\n year: number,\n month: number,\n day: number,\n hour: number,\n minute: number,\n second: number | undefined,\n millisecond: number | undefined,\n): PartialDateTimeResult | null {\n const d = TZDateMini.tz(\n getTimezone(),\n year,\n month - 1,\n day,\n hour,\n minute,\n second ?? 0,\n millisecond ?? 0,\n );\n return isNaN(d.getTime()) ? null : { iso: d.toISOString() };\n}\n\n/** Builds a date-only ISO string (YYYY-MM-DD) after validating the date. */\nfunction buildDateOnlyISO(\n year: number,\n month: number,\n day: number,\n): PartialDateTimeResult | null {\n const validationDate = TZDateMini.tz(getTimezone(), year, month - 1, day);\n if (\n isNaN(validationDate.getTime()) ||\n validationDate.getFullYear() !== year ||\n validationDate.getMonth() !== month - 1 ||\n validationDate.getDate() !== day\n ) {\n return null;\n }\n const yearString = String(year).padStart(4, '0');\n const monthString = String(month).padStart(2, '0');\n const dayString = String(day).padStart(2, '0');\n return { iso: `${yearString}-${monthString}-${dayString}` };\n}\n\n/** Builds a time-only ISO string (HH:MM[:SS[.mmm]]). */\nfunction buildTimeOnlyISO(\n hour: number,\n minute: number,\n second: number | undefined,\n millisecond: number | undefined,\n): PartialDateTimeResult {\n const hourString = String(hour).padStart(2, '0');\n const minuteString = String(minute).padStart(2, '0');\n let isoTime = `${hourString}:${minuteString}`;\n if (second !== undefined) {\n const secondString = String(second).padStart(2, '0');\n isoTime += `:${secondString}`;\n if (millisecond !== undefined) {\n const millisecondString = String(millisecond).padStart(3, '0');\n isoTime += `.${millisecondString}`;\n }\n }\n return { iso: isoTime };\n}\n\n/** Collects the set of spin-button part types that have defined values. */\nfunction collectPartsToUpdate(\n date: PartialDate | null,\n time: PartialTime | null,\n): Set<keyof Intl.DateTimeFormatPartTypesRegistry> {\n const partsToUpdate = new Set<keyof Intl.DateTimeFormatPartTypesRegistry>();\n\n const fieldMapping: Array<\n [unknown, keyof Intl.DateTimeFormatPartTypesRegistry]\n > = [\n [date?.day, 'day'],\n [date?.month, 'month'],\n [date?.year, 'year'],\n [time?.hour, 'hour'],\n [time?.minute, 'minute'],\n [time?.second, 'second'],\n [time?.millisecond, 'fractionalSecond'],\n [time?.dayPeriod, 'dayPeriod'],\n ];\n\n for (const [value, part] of fieldMapping) {\n if (value !== undefined) {\n partsToUpdate.add(part);\n }\n }\n\n return partsToUpdate;\n}\n\n/**\n * Converts partial date and/or time objects into an ISO-compatible string.\n *\n * - Complete date + complete time \u2192 full ISO datetime (no `partsToUpdate`).\n * - Complete date only (time absent) \u2192 `\"YYYY-MM-DD\"` (no `partsToUpdate`).\n * - Complete time only (date absent) \u2192 `\"HH:MM[:SS[.mmm]]\"` (no `partsToUpdate`).\n * - Partial fields \u2192 ISO string with defaults filled in, plus a `partsToUpdate`\n * set that lists only the spin button parts that should actually be applied.\n * Inputs with placeholder tokens for the missing side (e.g. `\"25/12/2024 HH:mm\"`)\n * take this path so the corresponding spin buttons are left untouched rather\n * than auto-filled with `00:00` or \"now\".\n * - No fields at all \u2192 `null`.\n *\n * A date is \"complete\" when it has `day`, `month`, and `year`.\n * A time is \"complete\" when it has `hour` and `minute`.\n * @internal\n */\nexport function partialDateTimeToISO(\n date: PartialDate | null,\n time: PartialTime | null,\n): PartialDateTimeResult | null {\n if (!date && !time) {\n return null;\n }\n\n const year = date?.year;\n const month = date?.month;\n const day = date?.day;\n const minute = time?.minute;\n const second = time?.second;\n const millisecond = time?.millisecond;\n\n let hour24 = time?.hour;\n if (hour24 !== undefined && time?.dayPeriod) {\n hour24 = convertTo24Hour(hour24, time.dayPeriod);\n }\n\n // Only short-circuit to a \"{date,time}-only\" ISO when the other side is\n // genuinely absent. If `time` (or `date`) is provided as a placeholder-only\n // object, fall through to the partial path so the placeholder fields stay\n // empty in the spin buttons.\n if (year !== undefined && month !== undefined && day !== undefined) {\n if (hour24 !== undefined && minute !== undefined) {\n return buildFullDateTimeISO(\n year,\n month,\n day,\n hour24,\n minute,\n second,\n millisecond,\n );\n }\n if (time === null) {\n return buildDateOnlyISO(year, month, day);\n }\n }\n\n if (date === null && hour24 !== undefined && minute !== undefined) {\n return buildTimeOnlyISO(hour24, minute, second, millisecond);\n }\n\n // Partial result: fill defaults from \"now\" for missing fields.\n const now = TZDateMini.tz(getTimezone());\n const fallback = TZDateMini.tz(\n getTimezone(),\n year ?? now.getFullYear(),\n (month ?? now.getMonth() + 1) - 1,\n day ?? now.getDate(),\n hour24 ?? now.getHours(),\n minute ?? now.getMinutes(),\n second ?? 0,\n millisecond ?? 0,\n );\n if (isNaN(fallback.getTime())) {\n return null;\n }\n\n const partsToUpdate = collectPartsToUpdate(date, time);\n if (partsToUpdate.size === 0) {\n return null;\n }\n\n return { iso: fallback.toISOString(), partsToUpdate };\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }