@dynatrace/strato-components 3.11.3 → 3.12.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 (2354) hide show
  1. package/CHANGELOG.md +171 -1
  2. package/buttons/button/Button.css +15 -15
  3. package/buttons/button/Button.sty.js +4 -4
  4. package/buttons/intent-button/IntentButton.css +1 -1
  5. package/buttons/intent-button/IntentButton.js +11 -1
  6. package/buttons/intent-button/IntentButton.sty.js +1 -1
  7. package/buttons/notify-button/NotifyButton.css +2 -2
  8. package/buttons/notify-button/NotifyButton.sty.js +2 -2
  9. package/charts/annotations-chart/AnnotationsChart.js +34 -20
  10. package/charts/annotations-chart/types/annotations-chart-props.d.ts +2 -1
  11. package/charts/categorical-bar/CategoricalBarChartInternal.js +11 -1
  12. package/charts/categorical-bar/CategoricalBarChartRoot.js +17 -3
  13. package/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.css +2 -2
  14. package/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.sty.js +2 -2
  15. package/charts/categorical-bar/types/categorical-bar-chart.d.ts +2 -1
  16. package/charts/core/components/annotations/AnnotationsAtom.css +1 -1
  17. package/charts/core/components/annotations/AnnotationsAtom.sty.js +1 -1
  18. package/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.css +1 -1
  19. package/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.sty.js +1 -1
  20. package/charts/core/components/annotations/components/overlays/AnnotationsOverlays.css +1 -1
  21. package/charts/core/components/annotations/components/overlays/AnnotationsOverlays.sty.js +1 -1
  22. package/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.css +1 -1
  23. package/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.sty.js +1 -1
  24. package/charts/core/components/annotations/components/tooltip/AnnotationsOverlayTooltip.js +15 -0
  25. package/charts/core/components/annotations/hooks/useMarkerEventHandlers.js +5 -3
  26. package/charts/core/components/annotations/hooks/useOverlayEvents.js +14 -0
  27. package/charts/core/components/axes/Axis.css +1 -1
  28. package/charts/core/components/axes/Axis.sty.js +1 -1
  29. package/charts/core/components/axes/components/PanningControls/PanningControls.css +16 -16
  30. package/charts/core/components/axes/components/PanningControls/PanningControls.sty.js +2 -2
  31. package/charts/core/components/chart-grid/ChartGrid.css +3 -3
  32. package/charts/core/components/chart-grid/ChartGrid.sty.js +3 -3
  33. package/charts/core/components/chart-layout/ChartLayout.js +8 -1
  34. package/charts/core/components/chart-layout/components/styles.css +15 -15
  35. package/charts/core/components/chart-layout/components/styles.sty.js +4 -4
  36. package/charts/core/components/chart-layout/utils/calculate-graph-size.js +1 -1
  37. package/charts/core/components/chart-states/ChartState.css +4 -4
  38. package/charts/core/components/chart-states/ChartState.sty.js +4 -4
  39. package/charts/core/components/crosshair/components/Magnifier.css +7 -7
  40. package/charts/core/components/crosshair/components/Magnifier.sty.js +7 -7
  41. package/charts/core/components/interactions-overlay/InteractionsOverlay.css +5 -5
  42. package/charts/core/components/interactions-overlay/InteractionsOverlay.js +43 -4
  43. package/charts/core/components/interactions-overlay/InteractionsOverlay.sty.js +2 -2
  44. package/charts/core/components/interactions-overlay/types.d.ts +4 -0
  45. package/charts/core/components/legend/categorical/ChartLegend.css +1 -1
  46. package/charts/core/components/legend/categorical/ChartLegend.js +49 -22
  47. package/charts/core/components/legend/categorical/ChartLegend.sty.js +1 -1
  48. package/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.css +3 -3
  49. package/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.d.ts +1 -0
  50. package/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.js +2 -1
  51. package/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.sty.js +3 -3
  52. package/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.css +17 -17
  53. package/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.js +30 -3
  54. package/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.sty.js +6 -6
  55. package/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.css +3 -3
  56. package/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.d.ts +2 -0
  57. package/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.js +2 -0
  58. package/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.sty.js +1 -1
  59. package/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.css +8 -8
  60. package/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.sty.js +4 -4
  61. package/charts/core/components/legend/categorical/hooks/useLegendItemActions.d.ts +1 -1
  62. package/charts/core/components/legend/categorical/hooks/useLegendItemActions.js +10 -2
  63. package/charts/core/components/legend/categorical/messages.d.ts +25 -0
  64. package/charts/core/components/legend/categorical/messages.js +25 -0
  65. package/charts/core/components/legend/categorical/types/legend-internal.d.ts +1 -0
  66. package/charts/core/components/legend/range/RangeLegend.css +3 -3
  67. package/charts/core/components/legend/range/RangeLegend.sty.js +1 -1
  68. package/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.css +2 -2
  69. package/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.sty.js +1 -1
  70. package/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.css +1 -1
  71. package/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.sty.js +1 -1
  72. package/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.css +3 -3
  73. package/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.sty.js +1 -1
  74. package/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.css +3 -3
  75. package/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.sty.js +1 -1
  76. package/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.css +5 -5
  77. package/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.sty.js +1 -1
  78. package/charts/core/components/legend/shared/context/Legend.context.js +2 -1
  79. package/charts/core/components/loader-overlay/LoaderOverlay.css +2 -2
  80. package/charts/core/components/loader-overlay/LoaderOverlay.sty.js +2 -2
  81. package/charts/core/components/overlay-tooltip/OverlayTooltip.d.ts +1 -1
  82. package/charts/core/components/overlay-tooltip/OverlayTooltip.js +9 -1
  83. package/charts/core/components/overlay-tooltip/components/DynamicTooltip.d.ts +1 -0
  84. package/charts/core/components/overlay-tooltip/components/DynamicTooltip.js +2 -1
  85. package/charts/core/components/overlay-tooltip/components/DynamicTooltipRenderer.js +17 -1
  86. package/charts/core/components/overlay-tooltip/components/LegacyTemplateTooltip.d.ts +1 -0
  87. package/charts/core/components/overlay-tooltip/components/LegacyTemplateTooltip.js +2 -1
  88. package/charts/core/components/overlay-tooltip/components/TooltipPortal.d.ts +1 -0
  89. package/charts/core/components/overlay-tooltip/components/TooltipPortal.js +9 -1
  90. package/charts/core/components/overlay-tooltip/components/global-actions/actions.css +4 -4
  91. package/charts/core/components/overlay-tooltip/components/global-actions/actions.sty.js +2 -2
  92. package/charts/core/components/overlay-tooltip/components/header/Header.css +6 -6
  93. package/charts/core/components/overlay-tooltip/components/header/Header.sty.js +6 -6
  94. package/charts/core/components/overlay-tooltip/components/series/seriesSymbol.css +2 -2
  95. package/charts/core/components/overlay-tooltip/components/series/seriesSymbol.sty.js +2 -2
  96. package/charts/core/components/overlay-tooltip/contexts/PinCoordinationContext.d.ts +29 -0
  97. package/charts/core/components/overlay-tooltip/contexts/PinCoordinationContext.js +38 -0
  98. package/charts/core/components/overlay-tooltip/hooks/useCanvasAriaDescribedBy.d.ts +4 -0
  99. package/charts/core/components/overlay-tooltip/hooks/useCanvasAriaDescribedBy.js +54 -0
  100. package/charts/core/components/overlay-tooltip/pinCoordinationSelectors.d.ts +5 -0
  101. package/charts/core/components/overlay-tooltip/pinCoordinationSelectors.js +30 -0
  102. package/charts/core/components/overlay-tooltip/tooltip.css +52 -59
  103. package/charts/core/components/overlay-tooltip/tooltip.css.d.ts +0 -9
  104. package/charts/core/components/overlay-tooltip/tooltip.sty.js +39 -39
  105. package/charts/core/components/overlay-tooltip/usePinCoordinationActions.d.ts +13 -0
  106. package/charts/core/components/overlay-tooltip/usePinCoordinationActions.js +40 -0
  107. package/charts/core/components/overlays/ChartOverlaysBorder.css +6 -6
  108. package/charts/core/components/overlays/ChartOverlaysBorder.sty.js +6 -6
  109. package/charts/core/components/selection-area/SelectionArea.css +9 -9
  110. package/charts/core/components/selection-area/SelectionArea.sty.js +4 -4
  111. package/charts/core/components/shape/BubbleShape/BubbleShape.css +5 -5
  112. package/charts/core/components/shape/BubbleShape/BubbleShape.sty.js +3 -3
  113. package/charts/core/components/shape/EmojiShape/EmojiShape.css +3 -3
  114. package/charts/core/components/shape/EmojiShape/EmojiShape.sty.js +1 -1
  115. package/charts/core/components/shape/IconShape/IconShape.css +3 -3
  116. package/charts/core/components/shape/IconShape/IconShape.sty.js +1 -1
  117. package/charts/core/components/shape/styles/DataPointShape.css +8 -8
  118. package/charts/core/components/shape/styles/DataPointShape.sty.js +4 -4
  119. package/charts/core/components/shared-chart-interactions/SharedChartInteractions.css +1 -1
  120. package/charts/core/components/shared-chart-interactions/SharedChartInteractions.sty.js +1 -1
  121. package/charts/core/components/single-value-renderer/SingleValueRenderer.css +5 -5
  122. package/charts/core/components/single-value-renderer/SingleValueRenderer.sty.js +5 -5
  123. package/charts/core/components/single-value-renderer/components/ContentGrid.css +1 -1
  124. package/charts/core/components/single-value-renderer/components/ContentGrid.sty.js +1 -1
  125. package/charts/core/components/single-value-renderer/components/Icon.css +3 -3
  126. package/charts/core/components/single-value-renderer/components/Icon.sty.js +2 -2
  127. package/charts/core/components/single-value-renderer/components/Label.css +1 -1
  128. package/charts/core/components/single-value-renderer/components/Label.sty.js +1 -1
  129. package/charts/core/components/single-value-renderer/components/SingleValueToolbar.css +1 -1
  130. package/charts/core/components/single-value-renderer/components/SingleValueToolbar.sty.js +1 -1
  131. package/charts/core/components/single-value-renderer/components/Value.css +5 -5
  132. package/charts/core/components/single-value-renderer/components/Value.sty.js +3 -3
  133. package/charts/core/components/single-value-renderer/components/trend/Trend.css +3 -3
  134. package/charts/core/components/single-value-renderer/components/trend/Trend.sty.js +3 -3
  135. package/charts/core/components/single-value-renderer/components/trend/components/Icon.css +2 -2
  136. package/charts/core/components/single-value-renderer/components/trend/components/Icon.sty.js +1 -1
  137. package/charts/core/components/single-value-renderer/types/single-value-base-props.d.ts +2 -5
  138. package/charts/core/components/sparkline-display/Sparkline.css +6 -6
  139. package/charts/core/components/sparkline-display/Sparkline.sty.js +2 -2
  140. package/charts/core/components/sparkline-display/SparklineContainer.js +9 -2
  141. package/charts/core/components/sparkline-display/types/sparkline-props.d.ts +2 -1
  142. package/charts/core/components/text-ellipsis/ChartTextEllipsis.css +7 -7
  143. package/charts/core/components/text-ellipsis/ChartTextEllipsis.sty.js +3 -3
  144. package/charts/core/components/text-ellipsis/chars-font-width-map.d.ts +6 -0
  145. package/charts/core/components/text-ellipsis/chars-font-width-map.js +159 -0
  146. package/charts/core/components/threshold-bar/styles.css +17 -9
  147. package/charts/core/components/threshold-bar/styles.css.d.ts +8 -0
  148. package/charts/core/components/threshold-bar/styles.sty.js +2 -2
  149. package/charts/core/components/threshold-bar/types.d.ts +17 -1
  150. package/charts/core/components/threshold-bar/types.js +5 -1
  151. package/charts/core/components/toolbar/ChartToolbarRenderer.css +16 -16
  152. package/charts/core/components/toolbar/ChartToolbarRenderer.js +29 -2
  153. package/charts/core/components/toolbar/ChartToolbarRenderer.sty.js +8 -8
  154. package/charts/core/components/toolbar/components/ChartDataMenu.css +2 -2
  155. package/charts/core/components/toolbar/components/ChartDataMenu.sty.js +1 -1
  156. package/charts/core/components/toolbar/components/Control.css +17 -17
  157. package/charts/core/components/toolbar/components/Control.sty.js +5 -5
  158. package/charts/core/components/toolbar/components/ToolbarMenu.css +4 -4
  159. package/charts/core/components/toolbar/components/ToolbarMenu.d.ts +1 -0
  160. package/charts/core/components/toolbar/components/ToolbarMenu.js +4 -1
  161. package/charts/core/components/toolbar/components/ToolbarMenu.sty.js +2 -2
  162. package/charts/core/components/toolbar/styles.css +1 -1
  163. package/charts/core/components/toolbar/styles.sty.js +1 -1
  164. package/charts/core/components/tooltip/ChartTooltip/ChartTooltip.css +6 -6
  165. package/charts/core/components/tooltip/ChartTooltip/ChartTooltip.sty.js +2 -2
  166. package/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.css +8 -8
  167. package/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.sty.js +3 -3
  168. package/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.css +2 -2
  169. package/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.sty.js +1 -1
  170. package/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.css +1 -1
  171. package/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.sty.js +1 -1
  172. package/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.css +6 -6
  173. package/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.sty.js +2 -2
  174. package/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.css +7 -7
  175. package/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.sty.js +6 -6
  176. package/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.css +1 -1
  177. package/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.sty.js +1 -1
  178. package/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.css +1 -1
  179. package/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.sty.js +1 -1
  180. package/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.css +2 -2
  181. package/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.sty.js +1 -1
  182. package/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.css +1 -1
  183. package/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.sty.js +1 -1
  184. package/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.css +3 -3
  185. package/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.sty.js +2 -2
  186. package/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.css +1 -1
  187. package/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.sty.js +1 -1
  188. package/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.css +2 -2
  189. package/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.sty.js +2 -2
  190. package/charts/core/components/tooltip/shared/styles/SeriesBasedContent.css +12 -12
  191. package/charts/core/components/tooltip/shared/styles/SeriesBasedContent.sty.js +7 -7
  192. package/charts/core/components/tooltip/shared/styles/TooltipBody.css +1 -1
  193. package/charts/core/components/tooltip/shared/styles/TooltipBody.sty.js +1 -1
  194. package/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.css +1 -1
  195. package/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.sty.js +1 -1
  196. package/charts/core/components/tooltip-atoms/components/styles.css +4 -4
  197. package/charts/core/components/tooltip-atoms/components/styles.sty.js +4 -4
  198. package/charts/core/components/zoom/ZoomCursors.css +2 -2
  199. package/charts/core/components/zoom/ZoomCursors.sty.js +3 -3
  200. package/charts/core/context/AriaLabelingContext.d.ts +14 -0
  201. package/charts/core/context/AriaLabelingContext.js +26 -0
  202. package/charts/core/slots/Tooltip.d.ts +7 -3
  203. package/charts/core/typographyStyles.css +1 -1
  204. package/charts/core/typographyStyles.sty.js +1 -1
  205. package/charts/flame/flame-chart/FlameChart.d.ts +15 -1
  206. package/charts/flame/flame-chart/FlameChart.js +43 -38
  207. package/charts/flame/flame-chart/utils/iterate-slots.d.ts +5 -0
  208. package/charts/flame/flame-chart/utils/iterate-slots.js +37 -0
  209. package/charts/flame/flame-graph/FlameGraph.d.ts +15 -1
  210. package/charts/flame/flame-graph/FlameGraph.js +45 -39
  211. package/charts/flame/flame-graph/utils/iterate-slots.d.ts +5 -0
  212. package/charts/flame/flame-graph/utils/iterate-slots.js +40 -0
  213. package/charts/flame/shared/components/tooltip/FlameTooltip.d.ts +19 -0
  214. package/charts/flame/shared/components/tooltip/FlameTooltip.js +64 -0
  215. package/charts/flame/shared/constants.d.ts +2 -0
  216. package/charts/flame/shared/constants.js +4 -0
  217. package/charts/flame/shared/slots/Tooltip.d.ts +17 -0
  218. package/charts/flame/shared/slots/Tooltip.js +31 -0
  219. package/charts/flame/shared/types/flame-internal.d.ts +15 -0
  220. package/charts/flame/shared/types/flame-internal.js +15 -0
  221. package/charts/gantt-chart/GanttChartLine.css +1 -1
  222. package/charts/gantt-chart/GanttChartLine.sty.js +1 -1
  223. package/charts/gantt-chart/components/GanttChartLineRenderer.css +1 -1
  224. package/charts/gantt-chart/components/GanttChartLineRenderer.sty.js +1 -1
  225. package/charts/gantt-chart/components/tooltip/GanttChartTooltip.css +1 -1
  226. package/charts/gantt-chart/components/tooltip/GanttChartTooltip.sty.js +1 -1
  227. package/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.css +1 -1
  228. package/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.sty.js +1 -1
  229. package/charts/gauge/components/GaugeLabel/GaugeLabel.css +6 -6
  230. package/charts/gauge/components/GaugeLabel/GaugeLabel.sty.js +3 -3
  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.sty.js +3 -3
  235. package/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.css +2 -2
  236. package/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.sty.js +2 -2
  237. package/charts/histogram/HistogramChartInternal.js +11 -1
  238. package/charts/histogram/HistogramChartRoot.js +17 -3
  239. package/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.css +1 -1
  240. package/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.sty.js +1 -1
  241. package/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.css +1 -1
  242. package/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.sty.js +1 -1
  243. package/charts/histogram/components/overlays/HistogramOverlays.css +2 -2
  244. package/charts/histogram/components/overlays/HistogramOverlays.sty.js +2 -2
  245. package/charts/histogram/types/histogram-props.d.ts +2 -1
  246. package/charts/honeycomb/HoneycombChart.css +1 -1
  247. package/charts/honeycomb/HoneycombChart.js +9 -2
  248. package/charts/honeycomb/HoneycombChart.sty.js +1 -1
  249. package/charts/honeycomb/components/HiveOverlay.css +1 -1
  250. package/charts/honeycomb/components/HiveOverlay.sty.js +1 -1
  251. package/charts/honeycomb/components/canvas/HiveCanvasLayout.css +1 -1
  252. package/charts/honeycomb/components/canvas/HiveCanvasLayout.sty.js +1 -1
  253. package/charts/honeycomb/types/honeycomb.d.ts +2 -1
  254. package/charts/index.d.ts +6 -5
  255. package/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.css +16 -16
  256. package/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js +11 -11
  257. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.css +2 -2
  258. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.sty.js +1 -1
  259. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.css +1 -1
  260. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.sty.js +1 -1
  261. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.css +1 -1
  262. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.sty.js +1 -1
  263. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.css +1 -1
  264. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.sty.js +1 -1
  265. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.css +1 -1
  266. package/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.sty.js +1 -1
  267. package/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.css +1 -1
  268. package/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.sty.js +1 -1
  269. package/charts/meter-bar/shared/styles/element-size.css +4 -4
  270. package/charts/meter-bar/shared/styles/element-size.sty.js +1 -1
  271. package/charts/meter-bar/shared/styles.css +1 -1
  272. package/charts/meter-bar/shared/styles.sty.js +1 -1
  273. package/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholdIntervals/MeterBarChartThresholdIntervals.css +1 -1
  274. package/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholdIntervals/MeterBarChartThresholdIntervals.sty.js +1 -1
  275. package/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.css +1 -1
  276. package/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.sty.js +1 -1
  277. package/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.css +1 -1
  278. package/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.sty.js +1 -1
  279. package/charts/pie/components/PieChartOverlays/PieChartOverlays.css +1 -1
  280. package/charts/pie/components/PieChartOverlays/PieChartOverlays.sty.js +1 -1
  281. package/charts/pie/components/PieChartPlot/PieChartPlot.css +1 -1
  282. package/charts/pie/components/PieChartPlot/PieChartPlot.sty.js +1 -1
  283. package/charts/sankey-chart/SankeyChart.css +11 -1
  284. package/charts/sankey-chart/SankeyChart.css.d.ts +2 -0
  285. package/charts/sankey-chart/SankeyChart.sty.js +6 -2
  286. package/charts/sankey-chart/SankeyChartRoot.js +2 -0
  287. package/charts/sankey-chart/components/SankeyCanvas.css +2 -3
  288. package/charts/sankey-chart/components/SankeyCanvas.d.ts +9 -1
  289. package/charts/sankey-chart/components/SankeyCanvas.js +9 -8
  290. package/charts/sankey-chart/components/SankeyCanvas.sty.js +1 -1
  291. package/charts/sankey-chart/components/SankeyGraphArea.js +69 -1
  292. package/charts/sankey-chart/components/SankeyLabelOverlay.css +74 -0
  293. package/charts/sankey-chart/components/SankeyLabelOverlay.css.d.ts +9 -0
  294. package/charts/sankey-chart/components/SankeyLabelOverlay.d.ts +13 -0
  295. package/charts/sankey-chart/components/SankeyLabelOverlay.js +180 -0
  296. package/charts/sankey-chart/components/SankeyLabelOverlay.sty.js +38 -0
  297. package/charts/sankey-chart/components/SankeyOverlay.css +4 -0
  298. package/charts/sankey-chart/components/SankeyOverlay.css.d.ts +2 -0
  299. package/charts/sankey-chart/components/SankeyOverlay.d.ts +6 -0
  300. package/charts/sankey-chart/components/SankeyOverlay.js +58 -0
  301. package/{editors/dql-editor/dql/SuggestionPart.sty.js → charts/sankey-chart/components/SankeyOverlay.sty.js} +6 -6
  302. package/charts/sankey-chart/constants.d.ts +10 -8
  303. package/charts/sankey-chart/constants.js +18 -6
  304. package/charts/sankey-chart/context/SankeyColorPalette.context.d.ts +3 -0
  305. package/charts/sankey-chart/context/SankeyColorPalette.context.js +25 -0
  306. package/charts/sankey-chart/context/SankeyHoverStore.context.d.ts +4 -0
  307. package/charts/sankey-chart/context/SankeyHoverStore.context.js +29 -0
  308. package/charts/sankey-chart/context/SankeyLayout.context.d.ts +3 -0
  309. package/charts/sankey-chart/context/SankeyLayout.context.js +28 -0
  310. package/charts/sankey-chart/hooks/draw-links.d.ts +3 -0
  311. package/charts/sankey-chart/hooks/draw-links.js +68 -0
  312. package/charts/sankey-chart/hooks/draw-nodes.d.ts +3 -0
  313. package/charts/sankey-chart/hooks/draw-nodes.js +40 -0
  314. package/charts/sankey-chart/hooks/use-draw-sankey.d.ts +1 -1
  315. package/charts/sankey-chart/hooks/use-draw-sankey.js +10 -22
  316. package/charts/sankey-chart/hooks/use-generate-sankey-layout.d.ts +10 -0
  317. package/charts/sankey-chart/hooks/use-generate-sankey-layout.js +40 -0
  318. package/charts/sankey-chart/hooks/use-node-colors.d.ts +10 -0
  319. package/charts/sankey-chart/hooks/use-node-colors.js +59 -0
  320. package/charts/sankey-chart/hooks/use-sankey-layout.d.ts +1 -1
  321. package/charts/sankey-chart/hooks/use-sankey-layout.js +2 -19
  322. package/charts/sankey-chart/hooks/use-sankey-overlay-events.d.ts +9 -0
  323. package/charts/sankey-chart/hooks/use-sankey-overlay-events.js +94 -0
  324. package/charts/sankey-chart/providers/SankeyConfigProvider.d.ts +3 -1
  325. package/charts/sankey-chart/providers/SankeyConfigProvider.js +3 -1
  326. package/charts/sankey-chart/providers/SankeyHoverStoreProvider.d.ts +6 -0
  327. package/charts/sankey-chart/providers/SankeyHoverStoreProvider.js +33 -0
  328. package/charts/sankey-chart/providers/SankeyLayoutProvider.d.ts +11 -0
  329. package/charts/sankey-chart/providers/SankeyLayoutProvider.js +34 -0
  330. package/charts/sankey-chart/store/selectors.d.ts +10 -0
  331. package/charts/sankey-chart/store/selectors.js +27 -0
  332. package/charts/sankey-chart/store/store.d.ts +4 -0
  333. package/charts/sankey-chart/store/store.js +44 -0
  334. package/charts/sankey-chart/types/sankey-hover.d.ts +28 -0
  335. package/charts/sankey-chart/types/sankey-hover.js +15 -0
  336. package/charts/sankey-chart/types/sankey-props.d.ts +6 -0
  337. package/charts/sankey-chart/utils/build-link-gradient.d.ts +7 -0
  338. package/charts/sankey-chart/utils/build-link-gradient.js +34 -0
  339. package/charts/sankey-chart/utils/find-hovered-shape.d.ts +14 -0
  340. package/charts/sankey-chart/utils/find-hovered-shape.js +93 -0
  341. package/charts/sankey-chart/utils/get-related-sankey-flow.d.ts +20 -0
  342. package/charts/sankey-chart/utils/get-related-sankey-flow.js +52 -0
  343. package/charts/sankey-chart/utils/is-resolved-sankey-node.d.ts +9 -0
  344. package/charts/sankey-chart/utils/is-resolved-sankey-node.js +23 -0
  345. package/charts/single-value/SingleValue.css +1 -1
  346. package/charts/single-value/SingleValue.js +4 -0
  347. package/charts/single-value/SingleValue.sty.js +1 -1
  348. package/charts/single-value-grid/SingleValueGrid.css +2 -2
  349. package/charts/single-value-grid/SingleValueGrid.js +4 -0
  350. package/charts/single-value-grid/SingleValueGrid.sty.js +1 -1
  351. package/charts/single-value-grid/components/GlobalFontSizeVariables.css +1 -1
  352. package/charts/single-value-grid/components/GlobalFontSizeVariables.sty.js +1 -1
  353. package/charts/single-value-grid/types/single-value-grid.d.ts +4 -7
  354. package/charts/timeseries/TimeseriesChartInternal.js +11 -1
  355. package/charts/timeseries/TimeseriesChartRoot.js +17 -3
  356. package/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.css +2 -2
  357. package/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.sty.js +1 -1
  358. package/charts/timeseries/components/overlays/TimeseriesOverlays.css +4 -4
  359. package/charts/timeseries/components/overlays/TimeseriesOverlays.sty.js +4 -4
  360. package/charts/timeseries/components/thresholds/ThresholdIndicators.css +2 -2
  361. package/charts/timeseries/components/thresholds/ThresholdIndicators.sty.js +2 -2
  362. package/charts/timeseries/types/timeseries-props.d.ts +2 -1
  363. package/charts/top-list/TopList.css +1 -1
  364. package/charts/top-list/TopList.js +28 -3
  365. package/charts/top-list/TopList.sty.js +1 -1
  366. package/charts/top-list/constants.d.ts +2 -0
  367. package/charts/top-list/constants.js +2 -0
  368. package/charts/top-list/types/top-list.d.ts +2 -1
  369. package/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.css +1 -1
  370. package/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.sty.js +1 -1
  371. package/charts/tree-map/providers/TreeMapInternalDataProvider.js +2 -3
  372. package/charts/xy-chart/XYChart.js +12 -2
  373. package/charts/xy-chart/XYChartRoot.js +20 -5
  374. package/charts/xy-chart/components/axes/AxisArea.css +1 -1
  375. package/charts/xy-chart/components/axes/AxisArea.sty.js +1 -1
  376. package/charts/xy-chart/components/axes/AxisTickWithTruncation.css +3 -3
  377. package/charts/xy-chart/components/axes/AxisTickWithTruncation.sty.js +3 -3
  378. package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.css +2 -7
  379. package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.css.d.ts +0 -1
  380. package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js +2 -4
  381. package/charts/xy-chart/components/displays/BarDisplay/HorizontalBarLabel.d.ts +5 -12
  382. package/charts/xy-chart/components/displays/BarDisplay/HorizontalBarLabel.js +16 -22
  383. package/charts/xy-chart/components/displays/BarDisplay/VerticalBarLabel.d.ts +2 -6
  384. package/charts/xy-chart/components/displays/BarDisplay/VerticalBarLabel.js +17 -20
  385. package/charts/xy-chart/components/displays/RectLabelOverlay.css +3 -3
  386. package/charts/xy-chart/components/displays/RectLabelOverlay.sty.js +3 -3
  387. package/charts/xy-chart/components/displays/area-accessors.js +6 -4
  388. package/charts/xy-chart/components/legend/XYLegend/XYLegend.js +7 -4
  389. package/charts/xy-chart/components/legend/XYLegend/xy-legend.css +1 -1
  390. package/charts/xy-chart/components/legend/XYLegend/xy-legend.sty.js +1 -1
  391. package/charts/xy-chart/components/overlay/XYChartOverlay.js +9 -1
  392. package/charts/xy-chart/components/overlay/explore/HighlightedRectangleCanvas.js +8 -2
  393. package/charts/xy-chart/components/overlay/explore/XYChartCrosshair.css +1 -1
  394. package/charts/xy-chart/components/overlay/explore/XYChartCrosshair.js +10 -4
  395. package/charts/xy-chart/components/overlay/explore/XYChartCrosshair.sty.js +1 -1
  396. package/charts/xy-chart/components/overlay/explore/XYChartExplore.css +2 -2
  397. package/charts/xy-chart/components/overlay/explore/XYChartExplore.sty.js +2 -2
  398. package/charts/xy-chart/components/overlay/hooks/useOverlayEvents.d.ts +1 -1
  399. package/charts/xy-chart/components/overlay/hooks/useOverlayEvents.js +15 -0
  400. package/charts/xy-chart/components/thresholds/XYChartThresholdArea.js +67 -5
  401. package/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.css +1 -1
  402. package/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.js +6 -3
  403. package/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.sty.js +1 -1
  404. package/charts/xy-chart/components/thresholds/builder.js +50 -3
  405. package/charts/xy-chart/components/thresholds/get-border-threshold.d.ts +3 -1
  406. package/charts/xy-chart/components/thresholds/get-border-threshold.js +6 -4
  407. package/charts/xy-chart/components/thresholds/get-x-value.d.ts +12 -0
  408. package/charts/xy-chart/components/thresholds/get-x-value.js +30 -0
  409. package/charts/xy-chart/components/thresholds/type-guards.d.ts +25 -1
  410. package/charts/xy-chart/components/thresholds/type-guards.js +13 -1
  411. package/charts/xy-chart/components/thresholds/utils.d.ts +18 -5
  412. package/charts/xy-chart/components/thresholds/utils.js +73 -9
  413. package/charts/xy-chart/components/toolbar/ExploreButton.js +5 -1
  414. package/charts/xy-chart/components/tooltip/SharedXYChartTooltip/SharedXYChartTooltip.js +6 -1
  415. package/charts/xy-chart/components/tooltip/utils/tooltip-styles.css +5 -5
  416. package/charts/xy-chart/components/tooltip/utils/tooltip-styles.sty.js +4 -4
  417. package/charts/xy-chart/context/XYChartThresholds.context.js +7 -1
  418. package/charts/xy-chart/context/XYChartToolbar.context.d.ts +1 -1
  419. package/charts/xy-chart/hooks/useToolbar.d.ts +1 -1
  420. package/charts/xy-chart/hooks/useXYChartCrosshairHidden.d.ts +5 -0
  421. package/charts/xy-chart/hooks/useXYChartCrosshairHidden.js +34 -0
  422. package/charts/xy-chart/layout/XYChartLayout.css +2 -2
  423. package/charts/xy-chart/layout/XYChartLayout.sty.js +2 -2
  424. package/charts/xy-chart/processing-strategies/strategies/area-series.js +1 -1
  425. package/charts/xy-chart/processing-strategies/strategies/stackable-series.js +2 -2
  426. package/charts/xy-chart/processing-strategies/utils/cast-data/cast-data-types.d.ts +2 -0
  427. package/charts/xy-chart/processing-strategies/utils/cast-data/cast-data-types.js +16 -1
  428. package/charts/xy-chart/slots/Select.d.ts +6 -0
  429. package/charts/xy-chart/types/xy-chart-internals.d.ts +33 -4
  430. package/charts/xy-chart/types/xy-chart-props.d.ts +34 -10
  431. package/charts/xy-chart/utils/grid-templates.d.ts +2 -0
  432. package/charts/xy-chart/utils/grid-templates.js +6 -2
  433. package/charts/xy-chart/utils/query-get-closest-point.d.ts +1 -1
  434. package/charts/xy-chart/utils/query-get-closest-point.js +30 -8
  435. package/charts/xy-chart/utils/query-shared.js +59 -24
  436. package/charts/xy-chart/utils/query-single.js +5 -1
  437. package/charts/xy-chart/utils/xy-chart-configuration.d.ts +2 -1
  438. package/charts/xy-chart/utils/xy-chart-configuration.js +1 -1
  439. package/charts/xy-chart-adoption/categorical-bar/CategoricalBarToXY.js +19 -4
  440. package/charts/xy-chart-adoption/categorical-bar/constants.d.ts +2 -0
  441. package/charts/xy-chart-adoption/categorical-bar/constants.js +23 -0
  442. package/charts/xy-chart-adoption/categorical-bar/utils/map-axes-to-xy.d.ts +3 -1
  443. package/charts/xy-chart-adoption/categorical-bar/utils/map-axes-to-xy.js +3 -2
  444. package/charts/xy-chart-adoption/histogram/HistogramToXY.js +12 -3
  445. package/charts/xy-chart-adoption/histogram/constants.d.ts +2 -0
  446. package/charts/xy-chart-adoption/histogram/constants.js +23 -0
  447. package/charts/xy-chart-adoption/histogram/transformer-thresholds-to-xy.d.ts +2 -2
  448. package/charts/xy-chart-adoption/timeseries/TimeseriesToXY.d.ts +1 -1
  449. package/charts/xy-chart-adoption/timeseries/TimeseriesToXY.js +12 -3
  450. package/charts/xy-chart-adoption/timeseries/constants.d.ts +1 -0
  451. package/charts/xy-chart-adoption/timeseries/constants.js +2 -0
  452. package/charts/xy-chart-adoption/timeseries/types/timeseries.d.ts +2 -1
  453. package/content/accordion/Accordion.css +14 -14
  454. package/content/accordion/Accordion.d.ts +3 -1
  455. package/content/accordion/Accordion.js +8 -1
  456. package/content/accordion/Accordion.sty.js +8 -8
  457. package/content/accordion/AccordionSection.js +7 -4
  458. package/content/accordion/AccordionSectionContent.js +2 -2
  459. package/content/accordion/AccordionSectionLabel.d.ts +12 -2
  460. package/content/accordion/AccordionSectionLabel.js +3 -0
  461. package/content/accordion/contexts/AccordionSectionContext.d.ts +1 -0
  462. package/content/accordion/contexts/AccordionSectionContext.js +1 -0
  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 +6 -6
  487. package/content/code-snippet/CodeSnippet.css +18 -18
  488. package/content/code-snippet/CodeSnippet.js +17 -3
  489. package/content/code-snippet/CodeSnippet.sty.js +4 -4
  490. package/content/code-snippet/prism-dql-language.js +1 -1
  491. package/content/empty-state/EmptyState.css +28 -28
  492. package/content/empty-state/EmptyState.js +1 -1
  493. package/content/empty-state/EmptyState.sty.js +7 -7
  494. package/content/empty-state/slot-components/Footer.css +1 -1
  495. package/content/empty-state/slot-components/Footer.sty.js +1 -1
  496. package/content/empty-state/slot-components/Visual.css +3 -3
  497. package/content/empty-state/slot-components/Visual.sty.js +1 -1
  498. package/content/expandable-text/ExpandableText.css +7 -7
  499. package/content/expandable-text/ExpandableText.sty.js +2 -2
  500. package/content/feature-highlight/FeatureHighlight.css +12 -12
  501. package/content/feature-highlight/FeatureHighlight.sty.js +3 -3
  502. package/content/health-indicator/styles.css +23 -23
  503. package/content/health-indicator/styles.sty.js +1 -1
  504. package/content/information-overlay/InformationOverlay.css +25 -25
  505. package/content/information-overlay/InformationOverlay.sty.js +5 -5
  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/message-container/MessageContainer.js +1 -0
  513. package/content/microguide/Microguide.css +11 -11
  514. package/content/microguide/Microguide.sty.js +7 -7
  515. package/content/progress/ProgressBar.css +71 -71
  516. package/content/progress/ProgressBar.sty.js +5 -5
  517. package/content/progress/ProgressBarIcon.css +2 -2
  518. package/content/progress/ProgressBarIcon.sty.js +1 -1
  519. package/content/progress/ProgressBarLabel.css +3 -3
  520. package/content/progress/ProgressBarLabel.sty.js +1 -1
  521. package/content/progress/ProgressBarValue.css +5 -5
  522. package/content/progress/ProgressBarValue.sty.js +1 -1
  523. package/content/progress/ProgressCircle.css +40 -40
  524. package/content/progress/ProgressCircle.sty.js +5 -5
  525. package/content/shared-components/Visual.css +3 -3
  526. package/content/shared-components/Visual.sty.js +1 -1
  527. package/content/skeleton/Skeleton.css +7 -7
  528. package/content/skeleton/Skeleton.sty.js +5 -5
  529. package/content/terminology-overlay/TerminologyOverlay.css +4 -4
  530. package/content/terminology-overlay/TerminologyOverlay.sty.js +1 -1
  531. package/core/components/app-root/AppRoot.css +2 -2
  532. package/core/components/app-root/AppRoot.sty.js +1 -1
  533. package/core/components/focus-scope/FocusScope.js +46 -0
  534. package/core/components/visually-hidden/VisuallyHidden.css +1 -1
  535. package/core/components/visually-hidden/VisuallyHidden.sty.js +1 -1
  536. package/core/sdk/sdk-logger.js +2 -2
  537. package/core/styles/defaultChartValues.css +1 -1
  538. package/core/styles/defaultChartValues.sty.js +1 -1
  539. package/core/styles/focusRing.css +66 -66
  540. package/core/styles/focusRing.sty.js +2 -2
  541. package/core/styles/focusRingStatic.css +34 -34
  542. package/core/styles/focusRingStatic.sty.js +1 -1
  543. package/core/styles/virtualFocus.css +2 -2
  544. package/core/styles/virtualFocus.sty.js +1 -1
  545. package/core/time/validation.js +11 -1
  546. package/core/utils/colorUtils.css +60 -60
  547. package/core/utils/colorUtils.sty.js +2 -2
  548. package/editors/base-code-editor/BaseCodeEditor.css +140 -142
  549. package/editors/base-code-editor/BaseCodeEditor.css.d.ts +2 -6
  550. package/editors/base-code-editor/BaseCodeEditor.js +3 -2
  551. package/editors/base-code-editor/BaseCodeEditor.sty.js +2 -2
  552. package/editors/base-code-editor/configuration/configure-active-line.d.ts +21 -0
  553. package/editors/base-code-editor/configuration/configure-active-line.js +76 -0
  554. package/editors/base-code-editor/configuration/configure-critical-gutter-lines.d.ts +26 -0
  555. package/editors/base-code-editor/configuration/configure-critical-gutter-lines.js +64 -0
  556. package/editors/base-code-editor/configuration/configure-lint-gutter.d.ts +4 -2
  557. package/editors/base-code-editor/configuration/configure-lint-gutter.js +6 -3
  558. package/editors/base-code-editor/configuration/getDefaultConfigurations.js +6 -6
  559. package/editors/base-code-editor/utils/format-diagnostics-summary.js +1 -1
  560. package/editors/dql-editor/DQLEditor.d.ts +6 -0
  561. package/editors/dql-editor/DQLEditor.js +2 -0
  562. package/editors/dql-editor/actions-menu/ActionsMenu.css +10 -10
  563. package/editors/dql-editor/actions-menu/ActionsMenu.sty.js +5 -5
  564. package/{esm/editors/dql-editor/dql → editors/dql-editor/autocomplete}/SuggestionsInfoSection.css +7 -7
  565. package/editors/dql-editor/autocomplete/SuggestionsInfoSection.d.ts +5 -0
  566. package/editors/dql-editor/{dql → autocomplete}/SuggestionsInfoSection.sty.js +3 -3
  567. package/editors/dql-editor/{dql → autocomplete}/messages.d.ts +10 -0
  568. package/editors/dql-editor/{dql → autocomplete}/messages.js +10 -0
  569. package/editors/dql-editor/{dql → autocomplete}/open-autocomplete.js +1 -1
  570. package/editors/dql-editor/autocomplete/suggestion-autocompletions.d.ts +24 -0
  571. package/editors/dql-editor/{dql → autocomplete}/suggestion-autocompletions.js +32 -4
  572. package/editors/dql-editor/autocomplete/suggestion-popup/DocumentationLink.d.ts +15 -0
  573. package/editors/dql-editor/{dql → autocomplete/suggestion-popup}/DocumentationLink.js +15 -11
  574. package/editors/dql-editor/autocomplete/suggestion-popup/SuggestionPart.d.ts +17 -0
  575. package/editors/dql-editor/autocomplete/suggestion-popup/SuggestionPart.js +55 -0
  576. package/editors/dql-editor/{dql → autocomplete}/suggestions-info-section-extension.js +14 -1
  577. package/editors/dql-editor/dql/dql-language.js +3 -3
  578. package/esm/buttons/button/Button.css +15 -15
  579. package/esm/buttons/button/Button.sty.js +4 -4
  580. package/esm/buttons/button/Button.sty.js.map +1 -1
  581. package/esm/buttons/intent-button/IntentButton.css +1 -1
  582. package/esm/buttons/intent-button/IntentButton.js +11 -1
  583. package/esm/buttons/intent-button/IntentButton.js.map +2 -2
  584. package/esm/buttons/intent-button/IntentButton.sty.js +1 -1
  585. package/esm/buttons/intent-button/IntentButton.sty.js.map +1 -1
  586. package/esm/buttons/notify-button/NotifyButton.css +2 -2
  587. package/esm/buttons/notify-button/NotifyButton.sty.js +2 -2
  588. package/esm/buttons/notify-button/NotifyButton.sty.js.map +1 -1
  589. package/esm/charts/annotations-chart/AnnotationsChart.js +34 -20
  590. package/esm/charts/annotations-chart/AnnotationsChart.js.map +2 -2
  591. package/esm/charts/categorical-bar/CategoricalBarChartInternal.js +11 -1
  592. package/esm/charts/categorical-bar/CategoricalBarChartInternal.js.map +2 -2
  593. package/esm/charts/categorical-bar/CategoricalBarChartRoot.js +18 -3
  594. package/esm/charts/categorical-bar/CategoricalBarChartRoot.js.map +2 -2
  595. package/esm/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.css +2 -2
  596. package/esm/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.sty.js +2 -2
  597. package/esm/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.sty.js.map +1 -1
  598. package/esm/charts/categorical-bar/types/categorical-bar-chart.js.map +2 -2
  599. package/esm/charts/core/components/annotations/AnnotationsAtom.css +1 -1
  600. package/esm/charts/core/components/annotations/AnnotationsAtom.sty.js +1 -1
  601. package/esm/charts/core/components/annotations/AnnotationsAtom.sty.js.map +1 -1
  602. package/esm/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.css +1 -1
  603. package/esm/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.sty.js +1 -1
  604. package/esm/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.sty.js.map +1 -1
  605. package/esm/charts/core/components/annotations/components/overlays/AnnotationsOverlays.css +1 -1
  606. package/esm/charts/core/components/annotations/components/overlays/AnnotationsOverlays.sty.js +1 -1
  607. package/esm/charts/core/components/annotations/components/overlays/AnnotationsOverlays.sty.js.map +1 -1
  608. package/esm/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.css +1 -1
  609. package/esm/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.sty.js +1 -1
  610. package/esm/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.sty.js.map +1 -1
  611. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsOverlayTooltip.js +15 -0
  612. package/esm/charts/core/components/annotations/components/tooltip/AnnotationsOverlayTooltip.js.map +2 -2
  613. package/esm/charts/core/components/annotations/hooks/useMarkerEventHandlers.js +5 -3
  614. package/esm/charts/core/components/annotations/hooks/useMarkerEventHandlers.js.map +2 -2
  615. package/esm/charts/core/components/annotations/hooks/useOverlayEvents.js +18 -1
  616. package/esm/charts/core/components/annotations/hooks/useOverlayEvents.js.map +2 -2
  617. package/esm/charts/core/components/axes/Axis.css +1 -1
  618. package/esm/charts/core/components/axes/Axis.sty.js +1 -1
  619. package/esm/charts/core/components/axes/Axis.sty.js.map +1 -1
  620. package/esm/charts/core/components/axes/components/PanningControls/PanningControls.css +16 -16
  621. package/esm/charts/core/components/axes/components/PanningControls/PanningControls.sty.js +2 -2
  622. package/esm/charts/core/components/axes/components/PanningControls/PanningControls.sty.js.map +1 -1
  623. package/esm/charts/core/components/chart-grid/ChartGrid.css +3 -3
  624. package/esm/charts/core/components/chart-grid/ChartGrid.sty.js +3 -3
  625. package/esm/charts/core/components/chart-grid/ChartGrid.sty.js.map +1 -1
  626. package/esm/charts/core/components/chart-layout/ChartLayout.js +9 -1
  627. package/esm/charts/core/components/chart-layout/ChartLayout.js.map +2 -2
  628. package/esm/charts/core/components/chart-layout/components/styles.css +15 -15
  629. package/esm/charts/core/components/chart-layout/components/styles.sty.js +4 -4
  630. package/esm/charts/core/components/chart-layout/components/styles.sty.js.map +1 -1
  631. package/esm/charts/core/components/chart-layout/utils/calculate-graph-size.js +1 -1
  632. package/esm/charts/core/components/chart-layout/utils/calculate-graph-size.js.map +2 -2
  633. package/esm/charts/core/components/chart-states/ChartState.css +4 -4
  634. package/esm/charts/core/components/chart-states/ChartState.sty.js +4 -4
  635. package/esm/charts/core/components/chart-states/ChartState.sty.js.map +1 -1
  636. package/esm/charts/core/components/crosshair/components/Magnifier.css +7 -7
  637. package/esm/charts/core/components/crosshair/components/Magnifier.sty.js +7 -7
  638. package/esm/charts/core/components/crosshair/components/Magnifier.sty.js.map +1 -1
  639. package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.css +5 -5
  640. package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.js +43 -5
  641. package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.js.map +2 -2
  642. package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.sty.js +2 -2
  643. package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.sty.js.map +1 -1
  644. package/esm/charts/core/components/interactions-overlay/types.js.map +2 -2
  645. package/esm/charts/core/components/legend/categorical/ChartLegend.css +1 -1
  646. package/esm/charts/core/components/legend/categorical/ChartLegend.js +51 -24
  647. package/esm/charts/core/components/legend/categorical/ChartLegend.js.map +2 -2
  648. package/esm/charts/core/components/legend/categorical/ChartLegend.sty.js +1 -1
  649. package/esm/charts/core/components/legend/categorical/ChartLegend.sty.js.map +1 -1
  650. package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.css +3 -3
  651. package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.js +2 -1
  652. package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.js.map +2 -2
  653. package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.sty.js +3 -3
  654. package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.sty.js.map +1 -1
  655. package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.css +17 -17
  656. package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.js +30 -3
  657. package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.js.map +2 -2
  658. package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.sty.js +6 -6
  659. package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.sty.js.map +1 -1
  660. package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.css +3 -3
  661. package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.js +2 -0
  662. package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.js.map +2 -2
  663. package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.sty.js +1 -1
  664. package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.sty.js.map +1 -1
  665. package/esm/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.css +8 -8
  666. package/esm/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.sty.js +4 -4
  667. package/esm/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.sty.js.map +1 -1
  668. package/esm/charts/core/components/legend/categorical/hooks/useLegendItemActions.js +14 -3
  669. package/esm/charts/core/components/legend/categorical/hooks/useLegendItemActions.js.map +2 -2
  670. package/esm/charts/core/components/legend/categorical/messages.js +25 -0
  671. package/esm/charts/core/components/legend/categorical/messages.js.map +2 -2
  672. package/esm/charts/core/components/legend/range/RangeLegend.css +3 -3
  673. package/esm/charts/core/components/legend/range/RangeLegend.sty.js +1 -1
  674. package/esm/charts/core/components/legend/range/RangeLegend.sty.js.map +1 -1
  675. package/esm/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.css +2 -2
  676. package/esm/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.sty.js +1 -1
  677. package/esm/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.sty.js.map +1 -1
  678. package/esm/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.css +1 -1
  679. package/esm/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.sty.js +1 -1
  680. package/esm/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.sty.js.map +1 -1
  681. package/esm/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.css +3 -3
  682. package/esm/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.sty.js +1 -1
  683. package/esm/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.sty.js.map +1 -1
  684. package/esm/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.css +3 -3
  685. package/esm/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.sty.js +1 -1
  686. package/esm/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.sty.js.map +1 -1
  687. package/esm/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.css +5 -5
  688. package/esm/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.sty.js +1 -1
  689. package/esm/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.sty.js.map +1 -1
  690. package/esm/charts/core/components/legend/shared/context/Legend.context.js +2 -1
  691. package/esm/charts/core/components/legend/shared/context/Legend.context.js.map +2 -2
  692. package/esm/charts/core/components/loader-overlay/LoaderOverlay.css +2 -2
  693. package/esm/charts/core/components/loader-overlay/LoaderOverlay.sty.js +2 -2
  694. package/esm/charts/core/components/loader-overlay/LoaderOverlay.sty.js.map +1 -1
  695. package/esm/charts/core/components/overlay-tooltip/OverlayTooltip.js +9 -1
  696. package/esm/charts/core/components/overlay-tooltip/OverlayTooltip.js.map +2 -2
  697. package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltip.js +2 -1
  698. package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltip.js.map +2 -2
  699. package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltipRenderer.js +17 -1
  700. package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltipRenderer.js.map +2 -2
  701. package/esm/charts/core/components/overlay-tooltip/components/LegacyTemplateTooltip.js +2 -1
  702. package/esm/charts/core/components/overlay-tooltip/components/LegacyTemplateTooltip.js.map +2 -2
  703. package/esm/charts/core/components/overlay-tooltip/components/TooltipPortal.js +9 -1
  704. package/esm/charts/core/components/overlay-tooltip/components/TooltipPortal.js.map +2 -2
  705. package/esm/charts/core/components/overlay-tooltip/components/global-actions/actions.css +4 -4
  706. package/esm/charts/core/components/overlay-tooltip/components/global-actions/actions.sty.js +2 -2
  707. package/esm/charts/core/components/overlay-tooltip/components/global-actions/actions.sty.js.map +1 -1
  708. package/esm/charts/core/components/overlay-tooltip/components/header/Header.css +6 -6
  709. package/esm/charts/core/components/overlay-tooltip/components/header/Header.sty.js +6 -6
  710. package/esm/charts/core/components/overlay-tooltip/components/header/Header.sty.js.map +1 -1
  711. package/esm/charts/core/components/overlay-tooltip/components/series/seriesSymbol.css +2 -2
  712. package/esm/charts/core/components/overlay-tooltip/components/series/seriesSymbol.sty.js +2 -2
  713. package/esm/charts/core/components/overlay-tooltip/components/series/seriesSymbol.sty.js.map +1 -1
  714. package/esm/charts/core/components/overlay-tooltip/contexts/PinCoordinationContext.js +24 -0
  715. package/esm/charts/core/components/overlay-tooltip/contexts/PinCoordinationContext.js.map +7 -0
  716. package/esm/charts/core/components/overlay-tooltip/hooks/useCanvasAriaDescribedBy.js +36 -0
  717. package/esm/charts/core/components/overlay-tooltip/hooks/useCanvasAriaDescribedBy.js.map +7 -0
  718. package/esm/charts/core/components/overlay-tooltip/pinCoordinationSelectors.js +12 -0
  719. package/esm/charts/core/components/overlay-tooltip/pinCoordinationSelectors.js.map +7 -0
  720. package/esm/charts/core/components/overlay-tooltip/tooltip.css +52 -59
  721. package/esm/charts/core/components/overlay-tooltip/tooltip.sty.js +39 -39
  722. package/esm/charts/core/components/overlay-tooltip/tooltip.sty.js.map +1 -1
  723. package/esm/charts/core/components/overlay-tooltip/usePinCoordinationActions.js +22 -0
  724. package/esm/charts/core/components/overlay-tooltip/usePinCoordinationActions.js.map +7 -0
  725. package/esm/charts/core/components/overlays/ChartOverlaysBorder.css +6 -6
  726. package/esm/charts/core/components/overlays/ChartOverlaysBorder.sty.js +6 -6
  727. package/esm/charts/core/components/overlays/ChartOverlaysBorder.sty.js.map +1 -1
  728. package/esm/charts/core/components/selection-area/SelectionArea.css +9 -9
  729. package/esm/charts/core/components/selection-area/SelectionArea.sty.js +4 -4
  730. package/esm/charts/core/components/selection-area/SelectionArea.sty.js.map +1 -1
  731. package/esm/charts/core/components/shape/BubbleShape/BubbleShape.css +5 -5
  732. package/esm/charts/core/components/shape/BubbleShape/BubbleShape.sty.js +3 -3
  733. package/esm/charts/core/components/shape/BubbleShape/BubbleShape.sty.js.map +1 -1
  734. package/esm/charts/core/components/shape/EmojiShape/EmojiShape.css +3 -3
  735. package/esm/charts/core/components/shape/EmojiShape/EmojiShape.sty.js +1 -1
  736. package/esm/charts/core/components/shape/EmojiShape/EmojiShape.sty.js.map +1 -1
  737. package/esm/charts/core/components/shape/IconShape/IconShape.css +3 -3
  738. package/esm/charts/core/components/shape/IconShape/IconShape.sty.js +1 -1
  739. package/esm/charts/core/components/shape/IconShape/IconShape.sty.js.map +1 -1
  740. package/esm/charts/core/components/shape/styles/DataPointShape.css +8 -8
  741. package/esm/charts/core/components/shape/styles/DataPointShape.sty.js +4 -4
  742. package/esm/charts/core/components/shape/styles/DataPointShape.sty.js.map +1 -1
  743. package/esm/charts/core/components/shared-chart-interactions/SharedChartInteractions.css +1 -1
  744. package/esm/charts/core/components/shared-chart-interactions/SharedChartInteractions.sty.js +1 -1
  745. package/esm/charts/core/components/shared-chart-interactions/SharedChartInteractions.sty.js.map +1 -1
  746. package/esm/charts/core/components/single-value-renderer/SingleValueRenderer.css +5 -5
  747. package/esm/charts/core/components/single-value-renderer/SingleValueRenderer.sty.js +5 -5
  748. package/esm/charts/core/components/single-value-renderer/SingleValueRenderer.sty.js.map +1 -1
  749. package/esm/charts/core/components/single-value-renderer/components/ContentGrid.css +1 -1
  750. package/esm/charts/core/components/single-value-renderer/components/ContentGrid.sty.js +1 -1
  751. package/esm/charts/core/components/single-value-renderer/components/ContentGrid.sty.js.map +1 -1
  752. package/esm/charts/core/components/single-value-renderer/components/Icon.css +3 -3
  753. package/esm/charts/core/components/single-value-renderer/components/Icon.sty.js +2 -2
  754. package/esm/charts/core/components/single-value-renderer/components/Icon.sty.js.map +1 -1
  755. package/esm/charts/core/components/single-value-renderer/components/Label.css +1 -1
  756. package/esm/charts/core/components/single-value-renderer/components/Label.sty.js +1 -1
  757. package/esm/charts/core/components/single-value-renderer/components/Label.sty.js.map +1 -1
  758. package/esm/charts/core/components/single-value-renderer/components/SingleValueToolbar.css +1 -1
  759. package/esm/charts/core/components/single-value-renderer/components/SingleValueToolbar.sty.js +1 -1
  760. package/esm/charts/core/components/single-value-renderer/components/SingleValueToolbar.sty.js.map +1 -1
  761. package/esm/charts/core/components/single-value-renderer/components/Value.css +5 -5
  762. package/esm/charts/core/components/single-value-renderer/components/Value.sty.js +3 -3
  763. package/esm/charts/core/components/single-value-renderer/components/Value.sty.js.map +1 -1
  764. package/esm/charts/core/components/single-value-renderer/components/trend/Trend.css +3 -3
  765. package/esm/charts/core/components/single-value-renderer/components/trend/Trend.sty.js +3 -3
  766. package/esm/charts/core/components/single-value-renderer/components/trend/Trend.sty.js.map +1 -1
  767. package/esm/charts/core/components/single-value-renderer/components/trend/components/Icon.css +2 -2
  768. package/esm/charts/core/components/single-value-renderer/components/trend/components/Icon.sty.js +1 -1
  769. package/esm/charts/core/components/single-value-renderer/components/trend/components/Icon.sty.js.map +1 -1
  770. package/esm/charts/core/components/sparkline-display/Sparkline.css +6 -6
  771. package/esm/charts/core/components/sparkline-display/Sparkline.sty.js +2 -2
  772. package/esm/charts/core/components/sparkline-display/Sparkline.sty.js.map +1 -1
  773. package/esm/charts/core/components/sparkline-display/SparklineContainer.js +9 -2
  774. package/esm/charts/core/components/sparkline-display/SparklineContainer.js.map +2 -2
  775. package/esm/charts/core/components/text-ellipsis/ChartTextEllipsis.css +7 -7
  776. package/esm/charts/core/components/text-ellipsis/ChartTextEllipsis.sty.js +3 -3
  777. package/esm/charts/core/components/text-ellipsis/ChartTextEllipsis.sty.js.map +1 -1
  778. package/esm/charts/core/components/text-ellipsis/chars-font-width-map.js +159 -0
  779. package/esm/charts/core/components/text-ellipsis/chars-font-width-map.js.map +2 -2
  780. package/esm/charts/core/components/threshold-bar/styles.css +17 -9
  781. package/esm/charts/core/components/threshold-bar/styles.sty.js +2 -2
  782. package/esm/charts/core/components/threshold-bar/styles.sty.js.map +2 -2
  783. package/esm/charts/core/components/threshold-bar/types.js +5 -1
  784. package/esm/charts/core/components/threshold-bar/types.js.map +2 -2
  785. package/esm/charts/core/components/toolbar/ChartToolbarRenderer.css +16 -16
  786. package/esm/charts/core/components/toolbar/ChartToolbarRenderer.js +29 -2
  787. package/esm/charts/core/components/toolbar/ChartToolbarRenderer.js.map +2 -2
  788. package/esm/charts/core/components/toolbar/ChartToolbarRenderer.sty.js +8 -8
  789. package/esm/charts/core/components/toolbar/ChartToolbarRenderer.sty.js.map +1 -1
  790. package/esm/charts/core/components/toolbar/components/ChartDataMenu.css +2 -2
  791. package/esm/charts/core/components/toolbar/components/ChartDataMenu.sty.js +1 -1
  792. package/esm/charts/core/components/toolbar/components/ChartDataMenu.sty.js.map +1 -1
  793. package/esm/charts/core/components/toolbar/components/Control.css +17 -17
  794. package/esm/charts/core/components/toolbar/components/Control.sty.js +5 -5
  795. package/esm/charts/core/components/toolbar/components/Control.sty.js.map +1 -1
  796. package/esm/charts/core/components/toolbar/components/ToolbarMenu.css +4 -4
  797. package/esm/charts/core/components/toolbar/components/ToolbarMenu.js +4 -1
  798. package/esm/charts/core/components/toolbar/components/ToolbarMenu.js.map +2 -2
  799. package/esm/charts/core/components/toolbar/components/ToolbarMenu.sty.js +2 -2
  800. package/esm/charts/core/components/toolbar/components/ToolbarMenu.sty.js.map +1 -1
  801. package/esm/charts/core/components/toolbar/styles.css +1 -1
  802. package/esm/charts/core/components/toolbar/styles.sty.js +1 -1
  803. package/esm/charts/core/components/toolbar/styles.sty.js.map +1 -1
  804. package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.css +6 -6
  805. package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.sty.js +2 -2
  806. package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.sty.js.map +1 -1
  807. package/esm/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.css +8 -8
  808. package/esm/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.sty.js +3 -3
  809. package/esm/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.sty.js.map +1 -1
  810. package/esm/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.css +2 -2
  811. package/esm/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.sty.js +1 -1
  812. package/esm/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.sty.js.map +1 -1
  813. package/esm/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.css +1 -1
  814. package/esm/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.sty.js +1 -1
  815. package/esm/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.sty.js.map +1 -1
  816. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.css +6 -6
  817. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.sty.js +2 -2
  818. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.sty.js.map +1 -1
  819. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.css +7 -7
  820. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.sty.js +6 -6
  821. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.sty.js.map +1 -1
  822. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.css +1 -1
  823. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.sty.js +1 -1
  824. package/esm/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.sty.js.map +1 -1
  825. package/esm/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.css +1 -1
  826. package/esm/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.sty.js +1 -1
  827. package/esm/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.sty.js.map +1 -1
  828. package/esm/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.css +2 -2
  829. package/esm/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.sty.js +1 -1
  830. package/esm/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.sty.js.map +1 -1
  831. package/esm/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.css +1 -1
  832. package/esm/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.sty.js +1 -1
  833. package/esm/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.sty.js.map +1 -1
  834. package/esm/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.css +3 -3
  835. package/esm/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.sty.js +2 -2
  836. package/esm/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.sty.js.map +1 -1
  837. package/esm/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.css +1 -1
  838. package/esm/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.sty.js +1 -1
  839. package/esm/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.sty.js.map +1 -1
  840. package/esm/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.css +2 -2
  841. package/esm/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.sty.js +2 -2
  842. package/esm/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.sty.js.map +1 -1
  843. package/esm/charts/core/components/tooltip/shared/styles/SeriesBasedContent.css +12 -12
  844. package/esm/charts/core/components/tooltip/shared/styles/SeriesBasedContent.sty.js +7 -7
  845. package/esm/charts/core/components/tooltip/shared/styles/SeriesBasedContent.sty.js.map +1 -1
  846. package/esm/charts/core/components/tooltip/shared/styles/TooltipBody.css +1 -1
  847. package/esm/charts/core/components/tooltip/shared/styles/TooltipBody.sty.js +1 -1
  848. package/esm/charts/core/components/tooltip/shared/styles/TooltipBody.sty.js.map +1 -1
  849. package/esm/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.css +1 -1
  850. package/esm/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.sty.js +1 -1
  851. package/esm/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.sty.js.map +1 -1
  852. package/esm/charts/core/components/tooltip-atoms/components/styles.css +4 -4
  853. package/esm/charts/core/components/tooltip-atoms/components/styles.sty.js +4 -4
  854. package/esm/charts/core/components/tooltip-atoms/components/styles.sty.js.map +1 -1
  855. package/esm/charts/core/components/zoom/ZoomCursors.css +2 -2
  856. package/esm/charts/core/components/zoom/ZoomCursors.sty.js +3 -3
  857. package/esm/charts/core/components/zoom/ZoomCursors.sty.js.map +1 -1
  858. package/esm/charts/core/context/AriaLabelingContext.js +8 -0
  859. package/esm/charts/core/context/AriaLabelingContext.js.map +7 -0
  860. package/esm/charts/core/slots/Tooltip.js.map +2 -2
  861. package/esm/charts/core/typographyStyles.css +1 -1
  862. package/esm/charts/core/typographyStyles.sty.js +1 -1
  863. package/esm/charts/core/typographyStyles.sty.js.map +1 -1
  864. package/esm/charts/flame/flame-chart/FlameChart.js +45 -39
  865. package/esm/charts/flame/flame-chart/FlameChart.js.map +2 -2
  866. package/esm/charts/flame/flame-chart/utils/iterate-slots.js +19 -0
  867. package/esm/charts/flame/flame-chart/utils/iterate-slots.js.map +7 -0
  868. package/esm/charts/flame/flame-graph/FlameGraph.js +47 -40
  869. package/esm/charts/flame/flame-graph/FlameGraph.js.map +2 -2
  870. package/esm/charts/flame/flame-graph/utils/iterate-slots.js +22 -0
  871. package/esm/charts/flame/flame-graph/utils/iterate-slots.js.map +7 -0
  872. package/esm/charts/flame/shared/components/tooltip/FlameTooltip.js +46 -0
  873. package/esm/charts/flame/shared/components/tooltip/FlameTooltip.js.map +7 -0
  874. package/esm/charts/flame/shared/constants.js +4 -0
  875. package/esm/charts/flame/shared/constants.js.map +2 -2
  876. package/esm/charts/flame/shared/slots/Tooltip.js +13 -0
  877. package/esm/charts/flame/shared/slots/Tooltip.js.map +7 -0
  878. package/esm/charts/flame/shared/types/flame-internal.js +1 -0
  879. package/esm/charts/flame/shared/types/flame-internal.js.map +7 -0
  880. package/esm/charts/gantt-chart/GanttChartLine.css +1 -1
  881. package/esm/charts/gantt-chart/GanttChartLine.sty.js +1 -1
  882. package/esm/charts/gantt-chart/GanttChartLine.sty.js.map +1 -1
  883. package/esm/charts/gantt-chart/components/GanttChartLineRenderer.css +1 -1
  884. package/esm/charts/gantt-chart/components/GanttChartLineRenderer.sty.js +1 -1
  885. package/esm/charts/gantt-chart/components/GanttChartLineRenderer.sty.js.map +1 -1
  886. package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.css +1 -1
  887. package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.sty.js +1 -1
  888. package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.sty.js.map +1 -1
  889. package/esm/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.css +1 -1
  890. package/esm/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.sty.js +1 -1
  891. package/esm/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.sty.js.map +1 -1
  892. package/esm/charts/gauge/components/GaugeLabel/GaugeLabel.css +6 -6
  893. package/esm/charts/gauge/components/GaugeLabel/GaugeLabel.sty.js +3 -3
  894. package/esm/charts/gauge/components/GaugeLabel/GaugeLabel.sty.js.map +1 -1
  895. package/esm/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.css +3 -3
  896. package/esm/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.sty.js +1 -1
  897. package/esm/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.sty.js.map +1 -1
  898. package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.css +4 -4
  899. package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.sty.js +3 -3
  900. package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.sty.js.map +1 -1
  901. package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.css +2 -2
  902. package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.sty.js +2 -2
  903. package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.sty.js.map +1 -1
  904. package/esm/charts/histogram/HistogramChartInternal.js +11 -1
  905. package/esm/charts/histogram/HistogramChartInternal.js.map +2 -2
  906. package/esm/charts/histogram/HistogramChartRoot.js +21 -4
  907. package/esm/charts/histogram/HistogramChartRoot.js.map +2 -2
  908. package/esm/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.css +1 -1
  909. package/esm/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.sty.js +1 -1
  910. package/esm/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.sty.js.map +1 -1
  911. package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.css +1 -1
  912. package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.sty.js +1 -1
  913. package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.sty.js.map +1 -1
  914. package/esm/charts/histogram/components/overlays/HistogramOverlays.css +2 -2
  915. package/esm/charts/histogram/components/overlays/HistogramOverlays.sty.js +2 -2
  916. package/esm/charts/histogram/components/overlays/HistogramOverlays.sty.js.map +1 -1
  917. package/esm/charts/honeycomb/HoneycombChart.css +1 -1
  918. package/esm/charts/honeycomb/HoneycombChart.js +9 -2
  919. package/esm/charts/honeycomb/HoneycombChart.js.map +2 -2
  920. package/esm/charts/honeycomb/HoneycombChart.sty.js +1 -1
  921. package/esm/charts/honeycomb/HoneycombChart.sty.js.map +1 -1
  922. package/esm/charts/honeycomb/components/HiveOverlay.css +1 -1
  923. package/esm/charts/honeycomb/components/HiveOverlay.sty.js +1 -1
  924. package/esm/charts/honeycomb/components/HiveOverlay.sty.js.map +1 -1
  925. package/esm/charts/honeycomb/components/canvas/HiveCanvasLayout.css +1 -1
  926. package/esm/charts/honeycomb/components/canvas/HiveCanvasLayout.sty.js +1 -1
  927. package/esm/charts/honeycomb/components/canvas/HiveCanvasLayout.sty.js.map +1 -1
  928. package/esm/charts/index.js.map +2 -2
  929. package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.css +16 -16
  930. package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js +11 -11
  931. package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js.map +1 -1
  932. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.css +2 -2
  933. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.sty.js +1 -1
  934. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.sty.js.map +1 -1
  935. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.css +1 -1
  936. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.sty.js +1 -1
  937. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.sty.js.map +1 -1
  938. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.css +1 -1
  939. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.sty.js +1 -1
  940. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.sty.js.map +1 -1
  941. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.css +1 -1
  942. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.sty.js +1 -1
  943. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.sty.js.map +1 -1
  944. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.css +1 -1
  945. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.sty.js +1 -1
  946. package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.sty.js.map +1 -1
  947. package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.css +1 -1
  948. package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.sty.js +1 -1
  949. package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.sty.js.map +1 -1
  950. package/esm/charts/meter-bar/shared/styles/element-size.css +4 -4
  951. package/esm/charts/meter-bar/shared/styles/element-size.sty.js +1 -1
  952. package/esm/charts/meter-bar/shared/styles/element-size.sty.js.map +1 -1
  953. package/esm/charts/meter-bar/shared/styles.css +1 -1
  954. package/esm/charts/meter-bar/shared/styles.sty.js +1 -1
  955. package/esm/charts/meter-bar/shared/styles.sty.js.map +1 -1
  956. package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholdIntervals/MeterBarChartThresholdIntervals.css +1 -1
  957. package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholdIntervals/MeterBarChartThresholdIntervals.sty.js +1 -1
  958. package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholdIntervals/MeterBarChartThresholdIntervals.sty.js.map +1 -1
  959. package/esm/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.css +1 -1
  960. package/esm/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.sty.js +1 -1
  961. package/esm/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.sty.js.map +1 -1
  962. package/esm/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.css +1 -1
  963. package/esm/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.sty.js +1 -1
  964. package/esm/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.sty.js.map +1 -1
  965. package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.css +1 -1
  966. package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.sty.js +1 -1
  967. package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.sty.js.map +1 -1
  968. package/esm/charts/pie/components/PieChartPlot/PieChartPlot.css +1 -1
  969. package/esm/charts/pie/components/PieChartPlot/PieChartPlot.sty.js +1 -1
  970. package/esm/charts/pie/components/PieChartPlot/PieChartPlot.sty.js.map +1 -1
  971. package/esm/charts/sankey-chart/SankeyChart.css +11 -1
  972. package/esm/charts/sankey-chart/SankeyChart.sty.js +6 -2
  973. package/esm/charts/sankey-chart/SankeyChart.sty.js.map +2 -2
  974. package/esm/charts/sankey-chart/SankeyChartRoot.js +2 -0
  975. package/esm/charts/sankey-chart/SankeyChartRoot.js.map +2 -2
  976. package/esm/charts/sankey-chart/components/SankeyCanvas.css +2 -3
  977. package/esm/charts/sankey-chart/components/SankeyCanvas.js +9 -8
  978. package/esm/charts/sankey-chart/components/SankeyCanvas.js.map +2 -2
  979. package/esm/charts/sankey-chart/components/SankeyCanvas.sty.js +1 -1
  980. package/esm/charts/sankey-chart/components/SankeyCanvas.sty.js.map +1 -1
  981. package/esm/charts/sankey-chart/components/SankeyGraphArea.js +75 -3
  982. package/esm/charts/sankey-chart/components/SankeyGraphArea.js.map +2 -2
  983. package/esm/charts/sankey-chart/components/SankeyLabelOverlay.css +74 -0
  984. package/esm/charts/sankey-chart/components/SankeyLabelOverlay.js +167 -0
  985. package/esm/charts/sankey-chart/components/SankeyLabelOverlay.js.map +7 -0
  986. package/esm/charts/sankey-chart/components/SankeyLabelOverlay.sty.js +20 -0
  987. package/esm/charts/sankey-chart/components/SankeyLabelOverlay.sty.js.map +7 -0
  988. package/esm/charts/sankey-chart/components/SankeyOverlay.css +4 -0
  989. package/esm/charts/sankey-chart/components/SankeyOverlay.js +40 -0
  990. package/esm/charts/sankey-chart/components/SankeyOverlay.js.map +7 -0
  991. package/esm/charts/sankey-chart/components/SankeyOverlay.sty.js +6 -0
  992. package/esm/charts/sankey-chart/components/SankeyOverlay.sty.js.map +7 -0
  993. package/esm/charts/sankey-chart/constants.js +18 -6
  994. package/esm/charts/sankey-chart/constants.js.map +2 -2
  995. package/esm/charts/sankey-chart/context/SankeyColorPalette.context.js +7 -0
  996. package/esm/charts/sankey-chart/context/SankeyColorPalette.context.js.map +7 -0
  997. package/esm/charts/sankey-chart/context/SankeyHoverStore.context.js +11 -0
  998. package/esm/charts/sankey-chart/context/SankeyHoverStore.context.js.map +7 -0
  999. package/esm/charts/sankey-chart/context/SankeyLayout.context.js +10 -0
  1000. package/esm/charts/sankey-chart/context/SankeyLayout.context.js.map +7 -0
  1001. package/esm/charts/sankey-chart/hooks/draw-links.js +50 -0
  1002. package/esm/charts/sankey-chart/hooks/draw-links.js.map +7 -0
  1003. package/esm/charts/sankey-chart/hooks/draw-nodes.js +22 -0
  1004. package/esm/charts/sankey-chart/hooks/draw-nodes.js.map +7 -0
  1005. package/esm/charts/sankey-chart/hooks/use-draw-sankey.js +10 -22
  1006. package/esm/charts/sankey-chart/hooks/use-draw-sankey.js.map +2 -2
  1007. package/esm/charts/sankey-chart/hooks/use-generate-sankey-layout.js +22 -0
  1008. package/esm/charts/sankey-chart/hooks/use-generate-sankey-layout.js.map +7 -0
  1009. package/esm/charts/sankey-chart/hooks/use-node-colors.js +41 -0
  1010. package/esm/charts/sankey-chart/hooks/use-node-colors.js.map +7 -0
  1011. package/esm/charts/sankey-chart/hooks/use-sankey-layout.js +3 -20
  1012. package/esm/charts/sankey-chart/hooks/use-sankey-layout.js.map +2 -2
  1013. package/esm/charts/sankey-chart/hooks/use-sankey-overlay-events.js +81 -0
  1014. package/esm/charts/sankey-chart/hooks/use-sankey-overlay-events.js.map +7 -0
  1015. package/esm/charts/sankey-chart/providers/SankeyConfigProvider.js +3 -1
  1016. package/esm/charts/sankey-chart/providers/SankeyConfigProvider.js.map +2 -2
  1017. package/esm/charts/sankey-chart/providers/SankeyHoverStoreProvider.js +15 -0
  1018. package/esm/charts/sankey-chart/providers/SankeyHoverStoreProvider.js.map +7 -0
  1019. package/esm/charts/sankey-chart/providers/SankeyLayoutProvider.js +16 -0
  1020. package/esm/charts/sankey-chart/providers/SankeyLayoutProvider.js.map +7 -0
  1021. package/esm/charts/sankey-chart/store/selectors.js +9 -0
  1022. package/esm/charts/sankey-chart/store/selectors.js.map +7 -0
  1023. package/esm/charts/sankey-chart/store/store.js +26 -0
  1024. package/esm/charts/sankey-chart/store/store.js.map +7 -0
  1025. package/esm/charts/sankey-chart/types/sankey-hover.js +1 -0
  1026. package/esm/charts/sankey-chart/types/sankey-hover.js.map +7 -0
  1027. package/esm/charts/sankey-chart/utils/build-link-gradient.js +16 -0
  1028. package/esm/charts/sankey-chart/utils/build-link-gradient.js.map +7 -0
  1029. package/esm/charts/sankey-chart/utils/find-hovered-shape.js +75 -0
  1030. package/esm/charts/sankey-chart/utils/find-hovered-shape.js.map +7 -0
  1031. package/esm/charts/sankey-chart/utils/get-related-sankey-flow.js +34 -0
  1032. package/esm/charts/sankey-chart/utils/get-related-sankey-flow.js.map +7 -0
  1033. package/esm/charts/sankey-chart/utils/is-resolved-sankey-node.js +5 -0
  1034. package/esm/charts/sankey-chart/utils/is-resolved-sankey-node.js.map +7 -0
  1035. package/esm/charts/single-value/SingleValue.css +1 -1
  1036. package/esm/charts/single-value/SingleValue.js +4 -0
  1037. package/esm/charts/single-value/SingleValue.js.map +2 -2
  1038. package/esm/charts/single-value/SingleValue.sty.js +1 -1
  1039. package/esm/charts/single-value/SingleValue.sty.js.map +1 -1
  1040. package/esm/charts/single-value-grid/SingleValueGrid.css +2 -2
  1041. package/esm/charts/single-value-grid/SingleValueGrid.js +4 -0
  1042. package/esm/charts/single-value-grid/SingleValueGrid.js.map +2 -2
  1043. package/esm/charts/single-value-grid/SingleValueGrid.sty.js +1 -1
  1044. package/esm/charts/single-value-grid/SingleValueGrid.sty.js.map +1 -1
  1045. package/esm/charts/single-value-grid/components/GlobalFontSizeVariables.css +1 -1
  1046. package/esm/charts/single-value-grid/components/GlobalFontSizeVariables.sty.js +1 -1
  1047. package/esm/charts/single-value-grid/components/GlobalFontSizeVariables.sty.js.map +1 -1
  1048. package/esm/charts/timeseries/TimeseriesChartInternal.js +11 -1
  1049. package/esm/charts/timeseries/TimeseriesChartInternal.js.map +2 -2
  1050. package/esm/charts/timeseries/TimeseriesChartRoot.js +21 -4
  1051. package/esm/charts/timeseries/TimeseriesChartRoot.js.map +2 -2
  1052. package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.css +2 -2
  1053. package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.sty.js +1 -1
  1054. package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.sty.js.map +1 -1
  1055. package/esm/charts/timeseries/components/overlays/TimeseriesOverlays.css +4 -4
  1056. package/esm/charts/timeseries/components/overlays/TimeseriesOverlays.sty.js +4 -4
  1057. package/esm/charts/timeseries/components/overlays/TimeseriesOverlays.sty.js.map +1 -1
  1058. package/esm/charts/timeseries/components/thresholds/ThresholdIndicators.css +2 -2
  1059. package/esm/charts/timeseries/components/thresholds/ThresholdIndicators.sty.js +2 -2
  1060. package/esm/charts/timeseries/components/thresholds/ThresholdIndicators.sty.js.map +1 -1
  1061. package/esm/charts/top-list/TopList.css +1 -1
  1062. package/esm/charts/top-list/TopList.js +29 -3
  1063. package/esm/charts/top-list/TopList.js.map +2 -2
  1064. package/esm/charts/top-list/TopList.sty.js +1 -1
  1065. package/esm/charts/top-list/TopList.sty.js.map +1 -1
  1066. package/esm/charts/top-list/constants.js +2 -0
  1067. package/esm/charts/top-list/constants.js.map +2 -2
  1068. package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.css +1 -1
  1069. package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.sty.js +1 -1
  1070. package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.sty.js.map +1 -1
  1071. package/esm/charts/tree-map/providers/TreeMapInternalDataProvider.js +1 -2
  1072. package/esm/charts/tree-map/providers/TreeMapInternalDataProvider.js.map +2 -2
  1073. package/esm/charts/xy-chart/XYChart.js +12 -2
  1074. package/esm/charts/xy-chart/XYChart.js.map +2 -2
  1075. package/esm/charts/xy-chart/XYChartRoot.js +21 -6
  1076. package/esm/charts/xy-chart/XYChartRoot.js.map +2 -2
  1077. package/esm/charts/xy-chart/components/axes/AxisArea.css +1 -1
  1078. package/esm/charts/xy-chart/components/axes/AxisArea.sty.js +1 -1
  1079. package/esm/charts/xy-chart/components/axes/AxisArea.sty.js.map +1 -1
  1080. package/esm/charts/xy-chart/components/axes/AxisTickWithTruncation.css +3 -3
  1081. package/esm/charts/xy-chart/components/axes/AxisTickWithTruncation.sty.js +3 -3
  1082. package/esm/charts/xy-chart/components/axes/AxisTickWithTruncation.sty.js.map +1 -1
  1083. package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.css +2 -7
  1084. package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js +2 -4
  1085. package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js.map +2 -2
  1086. package/esm/charts/xy-chart/components/displays/BarDisplay/HorizontalBarLabel.js +18 -24
  1087. package/esm/charts/xy-chart/components/displays/BarDisplay/HorizontalBarLabel.js.map +2 -2
  1088. package/esm/charts/xy-chart/components/displays/BarDisplay/VerticalBarLabel.js +19 -22
  1089. package/esm/charts/xy-chart/components/displays/BarDisplay/VerticalBarLabel.js.map +2 -2
  1090. package/esm/charts/xy-chart/components/displays/RectLabelOverlay.css +3 -3
  1091. package/esm/charts/xy-chart/components/displays/RectLabelOverlay.sty.js +3 -3
  1092. package/esm/charts/xy-chart/components/displays/RectLabelOverlay.sty.js.map +1 -1
  1093. package/esm/charts/xy-chart/components/displays/area-accessors.js +6 -4
  1094. package/esm/charts/xy-chart/components/displays/area-accessors.js.map +2 -2
  1095. package/esm/charts/xy-chart/components/legend/XYLegend/XYLegend.js +7 -4
  1096. package/esm/charts/xy-chart/components/legend/XYLegend/XYLegend.js.map +2 -2
  1097. package/esm/charts/xy-chart/components/legend/XYLegend/xy-legend.css +1 -1
  1098. package/esm/charts/xy-chart/components/legend/XYLegend/xy-legend.sty.js +1 -1
  1099. package/esm/charts/xy-chart/components/legend/XYLegend/xy-legend.sty.js.map +1 -1
  1100. package/esm/charts/xy-chart/components/overlay/XYChartOverlay.js +10 -2
  1101. package/esm/charts/xy-chart/components/overlay/XYChartOverlay.js.map +2 -2
  1102. package/esm/charts/xy-chart/components/overlay/explore/HighlightedRectangleCanvas.js +8 -2
  1103. package/esm/charts/xy-chart/components/overlay/explore/HighlightedRectangleCanvas.js.map +2 -2
  1104. package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.css +1 -1
  1105. package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.js +10 -4
  1106. package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.js.map +2 -2
  1107. package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.sty.js +1 -1
  1108. package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.sty.js.map +1 -1
  1109. package/esm/charts/xy-chart/components/overlay/explore/XYChartExplore.css +2 -2
  1110. package/esm/charts/xy-chart/components/overlay/explore/XYChartExplore.sty.js +2 -2
  1111. package/esm/charts/xy-chart/components/overlay/explore/XYChartExplore.sty.js.map +1 -1
  1112. package/esm/charts/xy-chart/components/overlay/hooks/useOverlayEvents.js +15 -0
  1113. package/esm/charts/xy-chart/components/overlay/hooks/useOverlayEvents.js.map +2 -2
  1114. package/esm/charts/xy-chart/components/thresholds/XYChartThresholdArea.js +69 -7
  1115. package/esm/charts/xy-chart/components/thresholds/XYChartThresholdArea.js.map +2 -2
  1116. package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.css +1 -1
  1117. package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.js +6 -3
  1118. package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.js.map +2 -2
  1119. package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.sty.js +1 -1
  1120. package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.sty.js.map +1 -1
  1121. package/esm/charts/xy-chart/components/thresholds/builder.js +54 -6
  1122. package/esm/charts/xy-chart/components/thresholds/builder.js.map +2 -2
  1123. package/esm/charts/xy-chart/components/thresholds/get-border-threshold.js +9 -5
  1124. package/esm/charts/xy-chart/components/thresholds/get-border-threshold.js.map +2 -2
  1125. package/esm/charts/xy-chart/components/thresholds/get-x-value.js +12 -0
  1126. package/esm/charts/xy-chart/components/thresholds/get-x-value.js.map +7 -0
  1127. package/esm/charts/xy-chart/components/thresholds/type-guards.js +13 -1
  1128. package/esm/charts/xy-chart/components/thresholds/type-guards.js.map +2 -2
  1129. package/esm/charts/xy-chart/components/thresholds/utils.js +77 -10
  1130. package/esm/charts/xy-chart/components/thresholds/utils.js.map +2 -2
  1131. package/esm/charts/xy-chart/components/toolbar/ExploreButton.js +5 -1
  1132. package/esm/charts/xy-chart/components/toolbar/ExploreButton.js.map +2 -2
  1133. package/esm/charts/xy-chart/components/tooltip/SharedXYChartTooltip/SharedXYChartTooltip.js +6 -1
  1134. package/esm/charts/xy-chart/components/tooltip/SharedXYChartTooltip/SharedXYChartTooltip.js.map +2 -2
  1135. package/esm/charts/xy-chart/components/tooltip/utils/tooltip-styles.css +5 -5
  1136. package/esm/charts/xy-chart/components/tooltip/utils/tooltip-styles.sty.js +4 -4
  1137. package/esm/charts/xy-chart/components/tooltip/utils/tooltip-styles.sty.js.map +1 -1
  1138. package/esm/charts/xy-chart/context/XYChartThresholds.context.js +7 -1
  1139. package/esm/charts/xy-chart/context/XYChartThresholds.context.js.map +2 -2
  1140. package/esm/charts/xy-chart/context/XYChartToolbar.context.js.map +1 -1
  1141. package/esm/charts/xy-chart/hooks/useXYChartCrosshairHidden.js +16 -0
  1142. package/esm/charts/xy-chart/hooks/useXYChartCrosshairHidden.js.map +7 -0
  1143. package/esm/charts/xy-chart/layout/XYChartLayout.css +2 -2
  1144. package/esm/charts/xy-chart/layout/XYChartLayout.sty.js +2 -2
  1145. package/esm/charts/xy-chart/layout/XYChartLayout.sty.js.map +1 -1
  1146. package/esm/charts/xy-chart/processing-strategies/strategies/area-series.js +1 -1
  1147. package/esm/charts/xy-chart/processing-strategies/strategies/area-series.js.map +2 -2
  1148. package/esm/charts/xy-chart/processing-strategies/strategies/stackable-series.js +2 -2
  1149. package/esm/charts/xy-chart/processing-strategies/strategies/stackable-series.js.map +2 -2
  1150. package/esm/charts/xy-chart/processing-strategies/utils/cast-data/cast-data-types.js +16 -1
  1151. package/esm/charts/xy-chart/processing-strategies/utils/cast-data/cast-data-types.js.map +2 -2
  1152. package/esm/charts/xy-chart/slots/Select.js.map +2 -2
  1153. package/esm/charts/xy-chart/types/xy-chart-internals.js.map +2 -2
  1154. package/esm/charts/xy-chart/utils/grid-templates.js +6 -2
  1155. package/esm/charts/xy-chart/utils/grid-templates.js.map +2 -2
  1156. package/esm/charts/xy-chart/utils/query-get-closest-point.js +30 -8
  1157. package/esm/charts/xy-chart/utils/query-get-closest-point.js.map +2 -2
  1158. package/esm/charts/xy-chart/utils/query-shared.js +59 -24
  1159. package/esm/charts/xy-chart/utils/query-shared.js.map +2 -2
  1160. package/esm/charts/xy-chart/utils/query-single.js +5 -1
  1161. package/esm/charts/xy-chart/utils/query-single.js.map +2 -2
  1162. package/esm/charts/xy-chart/utils/xy-chart-configuration.js +1 -1
  1163. package/esm/charts/xy-chart/utils/xy-chart-configuration.js.map +2 -2
  1164. package/esm/charts/xy-chart-adoption/categorical-bar/CategoricalBarToXY.js +17 -2
  1165. package/esm/charts/xy-chart-adoption/categorical-bar/CategoricalBarToXY.js.map +2 -2
  1166. package/esm/charts/xy-chart-adoption/categorical-bar/constants.js +5 -0
  1167. package/esm/charts/xy-chart-adoption/categorical-bar/constants.js.map +7 -0
  1168. package/esm/charts/xy-chart-adoption/categorical-bar/utils/map-axes-to-xy.js +3 -2
  1169. package/esm/charts/xy-chart-adoption/categorical-bar/utils/map-axes-to-xy.js.map +2 -2
  1170. package/esm/charts/xy-chart-adoption/histogram/HistogramToXY.js +10 -1
  1171. package/esm/charts/xy-chart-adoption/histogram/HistogramToXY.js.map +2 -2
  1172. package/esm/charts/xy-chart-adoption/histogram/constants.js +5 -0
  1173. package/esm/charts/xy-chart-adoption/histogram/constants.js.map +7 -0
  1174. package/esm/charts/xy-chart-adoption/histogram/transformer-thresholds-to-xy.js.map +2 -2
  1175. package/esm/charts/xy-chart-adoption/timeseries/TimeseriesToXY.js +10 -1
  1176. package/esm/charts/xy-chart-adoption/timeseries/TimeseriesToXY.js.map +2 -2
  1177. package/esm/charts/xy-chart-adoption/timeseries/constants.js +2 -0
  1178. package/esm/charts/xy-chart-adoption/timeseries/constants.js.map +2 -2
  1179. package/esm/charts/xy-chart-adoption/timeseries/types/timeseries.js.map +2 -2
  1180. package/esm/content/accordion/Accordion.css +14 -14
  1181. package/esm/content/accordion/Accordion.js +8 -1
  1182. package/esm/content/accordion/Accordion.js.map +2 -2
  1183. package/esm/content/accordion/Accordion.sty.js +8 -8
  1184. package/esm/content/accordion/Accordion.sty.js.map +1 -1
  1185. package/esm/content/accordion/AccordionSection.js +7 -4
  1186. package/esm/content/accordion/AccordionSection.js.map +2 -2
  1187. package/esm/content/accordion/AccordionSectionContent.js +2 -2
  1188. package/esm/content/accordion/AccordionSectionContent.js.map +2 -2
  1189. package/esm/content/accordion/AccordionSectionLabel.js +4 -1
  1190. package/esm/content/accordion/AccordionSectionLabel.js.map +2 -2
  1191. package/esm/content/accordion/contexts/AccordionSectionContext.js +1 -0
  1192. package/esm/content/accordion/contexts/AccordionSectionContext.js.map +2 -2
  1193. package/esm/content/ai-loading-indicator/AiLoadingIndicator.css +12 -12
  1194. package/esm/content/ai-loading-indicator/AiLoadingIndicator.sty.js +4 -4
  1195. package/esm/content/ai-loading-indicator/AiLoadingIndicator.sty.js.map +1 -1
  1196. package/esm/content/ai-response/AiResponse.css +5 -5
  1197. package/esm/content/ai-response/AiResponse.sty.js +2 -2
  1198. package/esm/content/ai-response/AiResponse.sty.js.map +1 -1
  1199. package/esm/content/avatar/Avatar.css +13 -13
  1200. package/esm/content/avatar/Avatar.sty.js +4 -4
  1201. package/esm/content/avatar/Avatar.sty.js.map +1 -1
  1202. package/esm/content/avatar-group/AvatarGroup.css +3 -3
  1203. package/esm/content/avatar-group/AvatarGroup.sty.js +2 -2
  1204. package/esm/content/avatar-group/AvatarGroup.sty.js.map +1 -1
  1205. package/esm/content/chip/BaseChip.css +40 -40
  1206. package/esm/content/chip/BaseChip.sty.js +5 -5
  1207. package/esm/content/chip/BaseChip.sty.js.map +1 -1
  1208. package/esm/content/chip/ChipContent.css +11 -11
  1209. package/esm/content/chip/ChipContent.sty.js +2 -2
  1210. package/esm/content/chip/ChipContent.sty.js.map +1 -1
  1211. package/esm/content/chip/ChipDeleteButton.css +19 -19
  1212. package/esm/content/chip/ChipDeleteButton.sty.js +4 -4
  1213. package/esm/content/chip/ChipDeleteButton.sty.js.map +1 -1
  1214. package/esm/content/chip/ChipKey.css +6 -6
  1215. package/esm/content/chip/ChipKey.sty.js +1 -1
  1216. package/esm/content/chip/ChipKey.sty.js.map +1 -1
  1217. package/esm/content/chip/GroupedChip.css +3 -3
  1218. package/esm/content/chip/GroupedChip.sty.js +3 -3
  1219. package/esm/content/chip/GroupedChip.sty.js.map +1 -1
  1220. package/esm/content/chip-group/ChipGroup.css +4 -4
  1221. package/esm/content/chip-group/ChipGroup.sty.js +1 -1
  1222. package/esm/content/chip-group/ChipGroup.sty.js.map +1 -1
  1223. package/esm/content/chip-group/Control.css +4 -4
  1224. package/esm/content/chip-group/Control.sty.js +1 -1
  1225. package/esm/content/chip-group/Control.sty.js.map +1 -1
  1226. package/esm/content/code-snippet/CodeHighlight.css +25 -25
  1227. package/esm/content/code-snippet/CodeHighlight.sty.js +6 -6
  1228. package/esm/content/code-snippet/CodeHighlight.sty.js.map +1 -1
  1229. package/esm/content/code-snippet/CodeSnippet.css +18 -18
  1230. package/esm/content/code-snippet/CodeSnippet.js +17 -3
  1231. package/esm/content/code-snippet/CodeSnippet.js.map +2 -2
  1232. package/esm/content/code-snippet/CodeSnippet.sty.js +4 -4
  1233. package/esm/content/code-snippet/CodeSnippet.sty.js.map +1 -1
  1234. package/esm/content/code-snippet/prism-dql-language.js +1 -1
  1235. package/esm/content/code-snippet/prism-dql-language.js.map +2 -2
  1236. package/esm/content/empty-state/EmptyState.css +28 -28
  1237. package/esm/content/empty-state/EmptyState.js +1 -1
  1238. package/esm/content/empty-state/EmptyState.js.map +2 -2
  1239. package/esm/content/empty-state/EmptyState.sty.js +7 -7
  1240. package/esm/content/empty-state/EmptyState.sty.js.map +1 -1
  1241. package/esm/content/empty-state/slot-components/Footer.css +1 -1
  1242. package/esm/content/empty-state/slot-components/Footer.sty.js +1 -1
  1243. package/esm/content/empty-state/slot-components/Footer.sty.js.map +1 -1
  1244. package/esm/content/empty-state/slot-components/Visual.css +3 -3
  1245. package/esm/content/empty-state/slot-components/Visual.sty.js +1 -1
  1246. package/esm/content/empty-state/slot-components/Visual.sty.js.map +1 -1
  1247. package/esm/content/expandable-text/ExpandableText.css +7 -7
  1248. package/esm/content/expandable-text/ExpandableText.sty.js +2 -2
  1249. package/esm/content/expandable-text/ExpandableText.sty.js.map +1 -1
  1250. package/esm/content/feature-highlight/FeatureHighlight.css +12 -12
  1251. package/esm/content/feature-highlight/FeatureHighlight.sty.js +3 -3
  1252. package/esm/content/feature-highlight/FeatureHighlight.sty.js.map +1 -1
  1253. package/esm/content/health-indicator/styles.css +23 -23
  1254. package/esm/content/health-indicator/styles.sty.js +1 -1
  1255. package/esm/content/health-indicator/styles.sty.js.map +1 -1
  1256. package/esm/content/information-overlay/InformationOverlay.css +25 -25
  1257. package/esm/content/information-overlay/InformationOverlay.sty.js +5 -5
  1258. package/esm/content/information-overlay/InformationOverlay.sty.js.map +1 -1
  1259. package/esm/content/keyboard-shortcut/KeyboardShortcut.css +14 -14
  1260. package/esm/content/keyboard-shortcut/KeyboardShortcut.sty.js +2 -2
  1261. package/esm/content/keyboard-shortcut/KeyboardShortcut.sty.js.map +1 -1
  1262. package/esm/content/markdown/Markdown.css +3 -3
  1263. package/esm/content/markdown/Markdown.sty.js +1 -1
  1264. package/esm/content/markdown/Markdown.sty.js.map +1 -1
  1265. package/esm/content/markdown/transformers/typography-mapping.css +9 -9
  1266. package/esm/content/markdown/transformers/typography-mapping.sty.js +6 -6
  1267. package/esm/content/markdown/transformers/typography-mapping.sty.js.map +1 -1
  1268. package/esm/content/message-container/MessageContainer.js +1 -0
  1269. package/esm/content/message-container/MessageContainer.js.map +2 -2
  1270. package/esm/content/microguide/Microguide.css +11 -11
  1271. package/esm/content/microguide/Microguide.sty.js +7 -7
  1272. package/esm/content/microguide/Microguide.sty.js.map +1 -1
  1273. package/esm/content/progress/ProgressBar.css +71 -71
  1274. package/esm/content/progress/ProgressBar.sty.js +5 -5
  1275. package/esm/content/progress/ProgressBar.sty.js.map +1 -1
  1276. package/esm/content/progress/ProgressBarIcon.css +2 -2
  1277. package/esm/content/progress/ProgressBarIcon.sty.js +1 -1
  1278. package/esm/content/progress/ProgressBarIcon.sty.js.map +1 -1
  1279. package/esm/content/progress/ProgressBarLabel.css +3 -3
  1280. package/esm/content/progress/ProgressBarLabel.sty.js +1 -1
  1281. package/esm/content/progress/ProgressBarLabel.sty.js.map +1 -1
  1282. package/esm/content/progress/ProgressBarValue.css +5 -5
  1283. package/esm/content/progress/ProgressBarValue.sty.js +1 -1
  1284. package/esm/content/progress/ProgressBarValue.sty.js.map +1 -1
  1285. package/esm/content/progress/ProgressCircle.css +40 -40
  1286. package/esm/content/progress/ProgressCircle.sty.js +5 -5
  1287. package/esm/content/progress/ProgressCircle.sty.js.map +1 -1
  1288. package/esm/content/shared-components/Visual.css +3 -3
  1289. package/esm/content/shared-components/Visual.sty.js +1 -1
  1290. package/esm/content/shared-components/Visual.sty.js.map +1 -1
  1291. package/esm/content/skeleton/Skeleton.css +7 -7
  1292. package/esm/content/skeleton/Skeleton.sty.js +5 -5
  1293. package/esm/content/skeleton/Skeleton.sty.js.map +1 -1
  1294. package/esm/content/terminology-overlay/TerminologyOverlay.css +4 -4
  1295. package/esm/content/terminology-overlay/TerminologyOverlay.sty.js +1 -1
  1296. package/esm/content/terminology-overlay/TerminologyOverlay.sty.js.map +1 -1
  1297. package/esm/core/components/app-root/AppRoot.css +2 -2
  1298. package/esm/core/components/app-root/AppRoot.sty.js +1 -1
  1299. package/esm/core/components/app-root/AppRoot.sty.js.map +1 -1
  1300. package/esm/core/components/focus-scope/FocusScope.js +46 -0
  1301. package/esm/core/components/focus-scope/FocusScope.js.map +2 -2
  1302. package/esm/core/components/visually-hidden/VisuallyHidden.css +1 -1
  1303. package/esm/core/components/visually-hidden/VisuallyHidden.sty.js +1 -1
  1304. package/esm/core/components/visually-hidden/VisuallyHidden.sty.js.map +1 -1
  1305. package/esm/core/sdk/sdk-logger.js +2 -2
  1306. package/esm/core/styles/defaultChartValues.css +1 -1
  1307. package/esm/core/styles/defaultChartValues.sty.js +1 -1
  1308. package/esm/core/styles/defaultChartValues.sty.js.map +1 -1
  1309. package/esm/core/styles/focusRing.css +66 -66
  1310. package/esm/core/styles/focusRing.sty.js +2 -2
  1311. package/esm/core/styles/focusRing.sty.js.map +1 -1
  1312. package/esm/core/styles/focusRingStatic.css +34 -34
  1313. package/esm/core/styles/focusRingStatic.sty.js +1 -1
  1314. package/esm/core/styles/focusRingStatic.sty.js.map +1 -1
  1315. package/esm/core/styles/virtualFocus.css +2 -2
  1316. package/esm/core/styles/virtualFocus.sty.js +1 -1
  1317. package/esm/core/styles/virtualFocus.sty.js.map +1 -1
  1318. package/esm/core/time/validation.js +11 -1
  1319. package/esm/core/time/validation.js.map +2 -2
  1320. package/esm/core/utils/colorUtils.css +60 -60
  1321. package/esm/core/utils/colorUtils.sty.js +2 -2
  1322. package/esm/core/utils/colorUtils.sty.js.map +1 -1
  1323. package/esm/editors/base-code-editor/BaseCodeEditor.css +140 -142
  1324. package/esm/editors/base-code-editor/BaseCodeEditor.js +3 -2
  1325. package/esm/editors/base-code-editor/BaseCodeEditor.js.map +2 -2
  1326. package/esm/editors/base-code-editor/BaseCodeEditor.sty.js +2 -2
  1327. package/esm/editors/base-code-editor/BaseCodeEditor.sty.js.map +1 -1
  1328. package/esm/editors/base-code-editor/configuration/configure-active-line.js +63 -0
  1329. package/esm/editors/base-code-editor/configuration/configure-active-line.js.map +7 -0
  1330. package/esm/editors/base-code-editor/configuration/configure-critical-gutter-lines.js +46 -0
  1331. package/esm/editors/base-code-editor/configuration/configure-critical-gutter-lines.js.map +7 -0
  1332. package/esm/editors/base-code-editor/configuration/configure-lint-gutter.js +6 -3
  1333. package/esm/editors/base-code-editor/configuration/configure-lint-gutter.js.map +2 -2
  1334. package/esm/editors/base-code-editor/configuration/getDefaultConfigurations.js +6 -8
  1335. package/esm/editors/base-code-editor/configuration/getDefaultConfigurations.js.map +2 -2
  1336. package/esm/editors/base-code-editor/utils/format-diagnostics-summary.js +1 -1
  1337. package/esm/editors/base-code-editor/utils/format-diagnostics-summary.js.map +2 -2
  1338. package/esm/editors/dql-editor/DQLEditor.js +2 -0
  1339. package/esm/editors/dql-editor/DQLEditor.js.map +2 -2
  1340. package/esm/editors/dql-editor/actions-menu/ActionsMenu.css +10 -10
  1341. package/esm/editors/dql-editor/actions-menu/ActionsMenu.sty.js +5 -5
  1342. package/esm/editors/dql-editor/actions-menu/ActionsMenu.sty.js.map +1 -1
  1343. package/{editors/dql-editor/dql → esm/editors/dql-editor/autocomplete}/SuggestionsInfoSection.css +7 -7
  1344. package/esm/editors/dql-editor/autocomplete/SuggestionsInfoSection.js.map +7 -0
  1345. package/esm/editors/dql-editor/{dql → autocomplete}/SuggestionsInfoSection.sty.js +3 -3
  1346. package/esm/editors/dql-editor/autocomplete/SuggestionsInfoSection.sty.js.map +7 -0
  1347. package/esm/editors/dql-editor/{dql → autocomplete}/fuzzy-match.js.map +1 -1
  1348. package/esm/editors/dql-editor/{dql → autocomplete}/get-suggestions.js.map +1 -1
  1349. package/esm/editors/dql-editor/{dql → autocomplete}/messages.js +10 -0
  1350. package/esm/editors/dql-editor/{dql → autocomplete}/messages.js.map +3 -3
  1351. package/esm/editors/dql-editor/{dql → autocomplete}/open-autocomplete.js +1 -1
  1352. package/esm/editors/dql-editor/autocomplete/open-autocomplete.js.map +7 -0
  1353. package/esm/editors/dql-editor/{dql → autocomplete}/suggestion-autocompletions.js +32 -4
  1354. package/esm/editors/dql-editor/autocomplete/suggestion-autocompletions.js.map +7 -0
  1355. package/esm/editors/dql-editor/autocomplete/suggestion-popup/DocumentationLink.js +31 -0
  1356. package/esm/editors/dql-editor/autocomplete/suggestion-popup/DocumentationLink.js.map +7 -0
  1357. package/esm/editors/dql-editor/autocomplete/suggestion-popup/SuggestionPart.js +37 -0
  1358. package/esm/editors/dql-editor/autocomplete/suggestion-popup/SuggestionPart.js.map +7 -0
  1359. package/esm/editors/dql-editor/{dql → autocomplete}/suggestions-info-section-extension.js +14 -1
  1360. package/esm/editors/dql-editor/autocomplete/suggestions-info-section-extension.js.map +7 -0
  1361. package/esm/editors/dql-editor/{dql → autocomplete}/token-type-label.js.map +1 -1
  1362. package/esm/editors/dql-editor/dql/dql-language.js +3 -3
  1363. package/esm/editors/dql-editor/dql/dql-language.js.map +1 -1
  1364. package/esm/filters/filter-field/FilterField.css +130 -130
  1365. package/esm/filters/filter-field/FilterField.js +12 -6
  1366. package/esm/filters/filter-field/FilterField.js.map +2 -2
  1367. package/esm/filters/filter-field/FilterField.sty.js +28 -28
  1368. package/esm/filters/filter-field/FilterField.sty.js.map +1 -1
  1369. package/esm/filters/filter-field/components/FilterFieldSuffixButtons.css +3 -3
  1370. package/esm/filters/filter-field/components/FilterFieldSuffixButtons.js +2 -1
  1371. package/esm/filters/filter-field/components/FilterFieldSuffixButtons.js.map +2 -2
  1372. package/esm/filters/filter-field/components/FilterFieldSuffixButtons.sty.js +3 -3
  1373. package/esm/filters/filter-field/components/FilterFieldSuffixButtons.sty.js.map +1 -1
  1374. package/esm/filters/filter-field/components/FilterStatement.css +14 -14
  1375. package/esm/filters/filter-field/components/FilterStatement.sty.js +7 -7
  1376. package/esm/filters/filter-field/components/FilterStatement.sty.js.map +1 -1
  1377. package/esm/filters/filter-field/messages.js +9 -4
  1378. package/esm/filters/filter-field/messages.js.map +2 -2
  1379. package/esm/filters/filter-field/suggestions/RecentPinnedSuggestionItem.css +9 -9
  1380. package/esm/filters/filter-field/suggestions/RecentPinnedSuggestionItem.sty.js +2 -2
  1381. package/esm/filters/filter-field/suggestions/RecentPinnedSuggestionItem.sty.js.map +1 -1
  1382. package/esm/filters/filter-field/suggestions/Suggestion.css +24 -24
  1383. package/esm/filters/filter-field/suggestions/Suggestion.js +3 -1
  1384. package/esm/filters/filter-field/suggestions/Suggestion.js.map +2 -2
  1385. package/esm/filters/filter-field/suggestions/Suggestion.sty.js +16 -16
  1386. package/esm/filters/filter-field/suggestions/Suggestion.sty.js.map +1 -1
  1387. package/esm/filters/filter-field/suggestions/SuggestionDetails.css +2 -2
  1388. package/esm/filters/filter-field/suggestions/SuggestionDetails.sty.js +2 -2
  1389. package/esm/filters/filter-field/suggestions/SuggestionDetails.sty.js.map +1 -1
  1390. package/esm/filters/filter-field/suggestions/SuggestionGroup.css +6 -6
  1391. package/esm/filters/filter-field/suggestions/SuggestionGroup.sty.js +3 -3
  1392. package/esm/filters/filter-field/suggestions/SuggestionGroup.sty.js.map +1 -1
  1393. package/esm/filters/filter-field/suggestions/SuggestionGroupLabel.css +1 -1
  1394. package/esm/filters/filter-field/suggestions/SuggestionGroupLabel.sty.js +1 -1
  1395. package/esm/filters/filter-field/suggestions/SuggestionGroupLabel.sty.js.map +1 -1
  1396. package/esm/filters/filter-field/suggestions/SuggestionTips.css +10 -7
  1397. package/esm/filters/filter-field/suggestions/SuggestionTips.js +13 -2
  1398. package/esm/filters/filter-field/suggestions/SuggestionTips.js.map +2 -2
  1399. package/esm/filters/filter-field/suggestions/SuggestionTips.sty.js +10 -7
  1400. package/esm/filters/filter-field/suggestions/SuggestionTips.sty.js.map +2 -2
  1401. package/esm/filters/filter-field/suggestions/Suggestions.js +33 -46
  1402. package/esm/filters/filter-field/suggestions/Suggestions.js.map +2 -2
  1403. package/esm/filters/filter-field/suggestions/SuggestionsOverlay.css +7 -7
  1404. package/esm/filters/filter-field/suggestions/SuggestionsOverlay.js +11 -0
  1405. package/esm/filters/filter-field/suggestions/SuggestionsOverlay.js.map +2 -2
  1406. package/esm/filters/filter-field/suggestions/SuggestionsOverlay.sty.js +5 -5
  1407. package/esm/filters/filter-field/suggestions/SuggestionsOverlay.sty.js.map +1 -1
  1408. package/esm/filters/filter-field/utils/get-suggestion-transaction.js +4 -0
  1409. package/esm/filters/filter-field/utils/get-suggestion-transaction.js.map +2 -2
  1410. package/esm/filters/filter-field/utils/suggestions-utils/get-suggestions.js +10 -2
  1411. package/esm/filters/filter-field/utils/suggestions-utils/get-suggestions.js.map +2 -2
  1412. package/esm/filters/segment-selector/SegmentSelector.css +4 -4
  1413. package/esm/filters/segment-selector/SegmentSelector.js +22 -21
  1414. package/esm/filters/segment-selector/SegmentSelector.js.map +2 -2
  1415. package/esm/filters/segment-selector/SegmentSelector.sty.js +4 -4
  1416. package/esm/filters/segment-selector/SegmentSelector.sty.js.map +1 -1
  1417. package/esm/filters/segment-selector/parts/EmptySegments.css +1 -1
  1418. package/esm/filters/segment-selector/parts/EmptySegments.sty.js +1 -1
  1419. package/esm/filters/segment-selector/parts/EmptySegments.sty.js.map +1 -1
  1420. package/esm/filters/segment-selector/parts/Overlay.css +8 -8
  1421. package/esm/filters/segment-selector/parts/Overlay.js +1 -1
  1422. package/esm/filters/segment-selector/parts/Overlay.js.map +2 -2
  1423. package/esm/filters/segment-selector/parts/Overlay.sty.js +8 -8
  1424. package/esm/filters/segment-selector/parts/Overlay.sty.js.map +1 -1
  1425. package/esm/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.css +4 -4
  1426. package/esm/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.sty.js +4 -4
  1427. package/esm/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.sty.js.map +1 -1
  1428. package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPreset.js +6 -3
  1429. package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPreset.js.map +2 -2
  1430. package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.css +34 -34
  1431. package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.sty.js +10 -10
  1432. package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.sty.js.map +1 -1
  1433. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.css +22 -22
  1434. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.js +3 -1
  1435. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.js.map +2 -2
  1436. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.sty.js +7 -7
  1437. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.sty.js.map +1 -1
  1438. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.css +1 -1
  1439. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.sty.js +1 -1
  1440. package/esm/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.sty.js.map +1 -1
  1441. package/esm/filters/segment-selector/parts/selectionBar/SelectionBar.js +12 -5
  1442. package/esm/filters/segment-selector/parts/selectionBar/SelectionBar.js.map +2 -2
  1443. package/esm/filters/segment-selector/parts/selectionBar/ValueSelect.js +4 -1
  1444. package/esm/filters/segment-selector/parts/selectionBar/ValueSelect.js.map +2 -2
  1445. package/esm/filters/timeframe-selector/TimeframeSelector.css +2 -2
  1446. package/esm/filters/timeframe-selector/TimeframeSelector.sty.js +2 -2
  1447. package/esm/filters/timeframe-selector/TimeframeSelector.sty.js.map +1 -1
  1448. package/esm/filters/timeframe-selector/TimeframeSelectorRoot.js +28 -3
  1449. package/esm/filters/timeframe-selector/TimeframeSelectorRoot.js.map +2 -2
  1450. package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.css +4 -4
  1451. package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.sty.js +3 -3
  1452. package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.sty.js.map +1 -1
  1453. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.css +4 -4
  1454. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.js +2 -0
  1455. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.js.map +2 -2
  1456. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.sty.js +4 -4
  1457. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.sty.js.map +1 -1
  1458. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlayFooter.js +1 -1
  1459. package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlayFooter.js.map +2 -2
  1460. package/esm/filters/timeframe-selector/components/presets/Presets.css +27 -27
  1461. package/esm/filters/timeframe-selector/components/presets/Presets.sty.js +11 -11
  1462. package/esm/filters/timeframe-selector/components/presets/Presets.sty.js.map +1 -1
  1463. package/esm/filters/timeframe-selector/components/trigger/Trigger.css +11 -11
  1464. package/esm/filters/timeframe-selector/components/trigger/Trigger.sty.js +4 -4
  1465. package/esm/filters/timeframe-selector/components/trigger/Trigger.sty.js.map +1 -1
  1466. package/esm/filters/timeframe-selector/constants/timeframeSelectorMessages.js +2 -2
  1467. package/esm/filters/timeframe-selector/constants/timeframeSelectorMessages.js.map +2 -2
  1468. package/esm/forms/_base-input/BaseInput.css +89 -85
  1469. package/esm/forms/_base-input/BaseInput.js +4 -2
  1470. package/esm/forms/_base-input/BaseInput.js.map +2 -2
  1471. package/esm/forms/_base-input/BaseInput.sty.js +11 -11
  1472. package/esm/forms/_base-input/BaseInput.sty.js.map +1 -1
  1473. package/esm/forms/_base-input/BaseInputContent.css +7 -7
  1474. package/esm/forms/_base-input/BaseInputContent.sty.js +1 -1
  1475. package/esm/forms/_base-input/BaseInputContent.sty.js.map +1 -1
  1476. package/esm/forms/calendar/Calendar.css +48 -48
  1477. package/esm/forms/calendar/Calendar.sty.js +12 -12
  1478. package/esm/forms/calendar/Calendar.sty.js.map +1 -1
  1479. package/esm/forms/calendar/CalendarRoot.js +89 -8
  1480. package/esm/forms/calendar/CalendarRoot.js.map +2 -2
  1481. package/esm/forms/calendar/components/CalendarItem.css +7 -7
  1482. package/esm/forms/calendar/components/CalendarItem.sty.js +4 -4
  1483. package/esm/forms/calendar/components/CalendarItem.sty.js.map +1 -1
  1484. package/esm/forms/calendar/components/CalendarOutlineIcon.css +8 -8
  1485. package/esm/forms/calendar/components/CalendarOutlineIcon.sty.js +5 -5
  1486. package/esm/forms/calendar/components/CalendarOutlineIcon.sty.js.map +1 -1
  1487. package/esm/forms/calendar/variables.sty.js +2 -2
  1488. package/esm/forms/calendar/variables.sty.js.map +1 -1
  1489. package/esm/forms/checkbox/Checkbox.css +20 -20
  1490. package/esm/forms/checkbox/Checkbox.js +2 -3
  1491. package/esm/forms/checkbox/Checkbox.js.map +2 -2
  1492. package/esm/forms/checkbox/Checkbox.sty.js +3 -3
  1493. package/esm/forms/checkbox/Checkbox.sty.js.map +1 -1
  1494. package/esm/forms/date-time-picker/DateTimePicker.css +42 -42
  1495. package/esm/forms/date-time-picker/DateTimePicker.sty.js +6 -6
  1496. package/esm/forms/date-time-picker/DateTimePicker.sty.js.map +1 -1
  1497. package/esm/forms/date-time-picker/DateTimePickerRoot.js +65 -2
  1498. package/esm/forms/date-time-picker/DateTimePickerRoot.js.map +2 -2
  1499. package/esm/forms/date-time-range-picker/DateRangeSelector.css +1 -1
  1500. package/esm/forms/date-time-range-picker/DateRangeSelector.sty.js +1 -1
  1501. package/esm/forms/date-time-range-picker/DateRangeSelector.sty.js.map +1 -1
  1502. package/esm/forms/date-time-range-picker/DateTimeInput.css +11 -11
  1503. package/esm/forms/date-time-range-picker/DateTimeInput.js +4 -2
  1504. package/esm/forms/date-time-range-picker/DateTimeInput.js.map +2 -2
  1505. package/esm/forms/date-time-range-picker/DateTimeInput.sty.js +3 -3
  1506. package/esm/forms/date-time-range-picker/DateTimeInput.sty.js.map +1 -1
  1507. package/esm/forms/date-time-range-picker/DateTimeRangePicker.css +27 -27
  1508. package/esm/forms/date-time-range-picker/DateTimeRangePicker.sty.js +4 -4
  1509. package/esm/forms/date-time-range-picker/DateTimeRangePicker.sty.js.map +1 -1
  1510. package/esm/forms/date-time-range-picker/DateTimeRangePickerRoot.js +57 -1
  1511. package/esm/forms/date-time-range-picker/DateTimeRangePickerRoot.js.map +2 -2
  1512. package/esm/forms/form/Form.js +4 -2
  1513. package/esm/forms/form/Form.js.map +2 -2
  1514. package/esm/forms/form/FormMessages.js +2 -0
  1515. package/esm/forms/form/FormMessages.js.map +2 -2
  1516. package/esm/forms/form/context/FormContext.js.map +2 -2
  1517. package/esm/forms/forms-core/components/field-set/FieldSet.css +2 -2
  1518. package/esm/forms/forms-core/components/field-set/FieldSet.sty.js +2 -2
  1519. package/esm/forms/forms-core/components/field-set/FieldSet.sty.js.map +1 -1
  1520. package/esm/forms/forms-core/components/form-field/FormField.sty.js +1 -1
  1521. package/esm/forms/forms-core/components/form-field/FormField.sty.js.map +1 -1
  1522. package/esm/forms/forms-core/components/form-field/FormFieldMessageContextProvider.js +17 -2
  1523. package/esm/forms/forms-core/components/form-field/FormFieldMessageContextProvider.js.map +2 -2
  1524. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.css +5 -5
  1525. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.sty.js +2 -2
  1526. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.sty.js.map +1 -1
  1527. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.css +3 -3
  1528. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.js +3 -2
  1529. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.js.map +2 -2
  1530. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.sty.js +1 -1
  1531. package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.sty.js.map +1 -1
  1532. package/esm/forms/forms-core/components/hint/Hint.js.map +2 -2
  1533. package/esm/forms/forms-core/components/label/Label.css +5 -5
  1534. package/esm/forms/forms-core/components/label/Label.sty.js +2 -2
  1535. package/esm/forms/forms-core/components/label/Label.sty.js.map +1 -1
  1536. package/esm/forms/forms-core/contexts/FormFieldMessageContext.js.map +2 -2
  1537. package/esm/forms/forms-core/hooks/useFormFieldValidation.js +38 -11
  1538. package/esm/forms/forms-core/hooks/useFormFieldValidation.js.map +2 -2
  1539. package/esm/forms/forms-core/state/formfield-messages-state-reducer.js +1 -1
  1540. package/esm/forms/forms-core/state/formfield-messages-state-reducer.js.map +2 -2
  1541. package/esm/forms/hooks/useAutofillEvent.css +8 -8
  1542. package/esm/forms/hooks/useAutofillEvent.sty.js +4 -4
  1543. package/esm/forms/hooks/useAutofillEvent.sty.js.map +1 -1
  1544. package/esm/forms/hooks/useContainerFocus.css +1 -1
  1545. package/esm/forms/hooks/useContainerFocus.sty.js +1 -1
  1546. package/esm/forms/hooks/useContainerFocus.sty.js.map +1 -1
  1547. package/esm/forms/index.js.map +2 -2
  1548. package/esm/forms/radio/styles.css +18 -18
  1549. package/esm/forms/radio/styles.sty.js +8 -8
  1550. package/esm/forms/radio/styles.sty.js.map +1 -1
  1551. package/esm/forms/search-input/SearchInput.css +2 -2
  1552. package/esm/forms/search-input/SearchInput.sty.js +1 -1
  1553. package/esm/forms/search-input/SearchInput.sty.js.map +1 -1
  1554. package/esm/forms/search-input/Stepper.css +5 -5
  1555. package/esm/forms/search-input/Stepper.js +8 -1
  1556. package/esm/forms/search-input/Stepper.js.map +2 -2
  1557. package/esm/forms/search-input/Stepper.sty.js +3 -3
  1558. package/esm/forms/search-input/Stepper.sty.js.map +1 -1
  1559. package/esm/forms/select/Select.js +176 -31
  1560. package/esm/forms/select/Select.js.map +2 -2
  1561. package/esm/forms/select/components/Control.js +10 -1
  1562. package/esm/forms/select/components/Control.js.map +2 -2
  1563. package/esm/forms/select/components/HiddenSelect.js +2 -0
  1564. package/esm/forms/select/components/HiddenSelect.js.map +2 -2
  1565. package/esm/forms/select/components/Menu.js +35 -14
  1566. package/esm/forms/select/components/Menu.js.map +2 -2
  1567. package/esm/forms/select/components/MenuList.js +119 -50
  1568. package/esm/forms/select/components/MenuList.js.map +2 -2
  1569. package/esm/forms/select/components/NoOptionsMessage.js +8 -6
  1570. package/esm/forms/select/components/NoOptionsMessage.js.map +2 -2
  1571. package/esm/forms/select/styles/Select.css +46 -46
  1572. package/esm/forms/select/styles/Select.sty.js +24 -24
  1573. package/esm/forms/select/styles/Select.sty.js.map +1 -1
  1574. package/esm/forms/spin-buttons/SpinButton.css +8 -8
  1575. package/esm/forms/spin-buttons/SpinButton.sty.js +2 -2
  1576. package/esm/forms/spin-buttons/SpinButton.sty.js.map +1 -1
  1577. package/esm/forms/switch/Switch.css +36 -36
  1578. package/esm/forms/switch/Switch.sty.js +5 -5
  1579. package/esm/forms/switch/Switch.sty.js.map +1 -1
  1580. package/esm/forms/text-area/TextArea.css +59 -59
  1581. package/esm/forms/text-area/TextArea.sty.js +3 -3
  1582. package/esm/forms/text-area/TextArea.sty.js.map +1 -1
  1583. package/esm/forms/toggle-button-group/ToggleButtonGroup.js +2 -1
  1584. package/esm/forms/toggle-button-group/ToggleButtonGroup.js.map +2 -2
  1585. package/esm/forms/toggle-button-group/styles.css +58 -58
  1586. package/esm/forms/toggle-button-group/styles.sty.js +15 -15
  1587. package/esm/forms/toggle-button-group/styles.sty.js.map +1 -1
  1588. package/esm/forms/validation/validation-builders.js +2 -1
  1589. package/esm/forms/validation/validation-builders.js.map +2 -2
  1590. package/esm/layouts/app-header/ActionItems.js +4 -2
  1591. package/esm/layouts/app-header/ActionItems.js.map +2 -2
  1592. package/esm/layouts/app-header/AppHeader.css +1 -1
  1593. package/esm/layouts/app-header/AppHeader.js +2 -1
  1594. package/esm/layouts/app-header/AppHeader.js.map +2 -2
  1595. package/esm/layouts/app-header/AppHeader.sty.js +1 -1
  1596. package/esm/layouts/app-header/AppHeader.sty.js.map +1 -1
  1597. package/esm/layouts/app-header/Navigation.css +9 -9
  1598. package/esm/layouts/app-header/Navigation.sty.js +5 -5
  1599. package/esm/layouts/app-header/Navigation.sty.js.map +1 -1
  1600. package/esm/layouts/app-header/action-group/ActionButton.css +17 -17
  1601. package/esm/layouts/app-header/action-group/ActionButton.sty.js +3 -3
  1602. package/esm/layouts/app-header/action-group/ActionButton.sty.js.map +1 -1
  1603. package/esm/layouts/app-header/action-group/ActionGroup.css +1 -1
  1604. package/esm/layouts/app-header/action-group/ActionGroup.js +1 -0
  1605. package/esm/layouts/app-header/action-group/ActionGroup.js.map +2 -2
  1606. package/esm/layouts/app-header/action-group/ActionGroup.sty.js +1 -1
  1607. package/esm/layouts/app-header/action-group/ActionGroup.sty.js.map +1 -1
  1608. package/esm/layouts/app-header/action-group/NavItem.css +4 -4
  1609. package/esm/layouts/app-header/action-group/NavItem.sty.js +3 -3
  1610. package/esm/layouts/app-header/action-group/NavItem.sty.js.map +1 -1
  1611. package/esm/layouts/app-header/app-icon/AppIcon.css +4 -4
  1612. package/esm/layouts/app-header/app-icon/AppIcon.sty.js +1 -1
  1613. package/esm/layouts/app-header/app-icon/AppIcon.sty.js.map +1 -1
  1614. package/esm/layouts/container/Container.css +5 -5
  1615. package/esm/layouts/container/Container.sty.js +1 -1
  1616. package/esm/layouts/container/Container.sty.js.map +1 -1
  1617. package/esm/layouts/divider/Divider.css +6 -6
  1618. package/esm/layouts/divider/Divider.js.map +2 -2
  1619. package/esm/layouts/divider/Divider.sty.js +1 -1
  1620. package/esm/layouts/divider/Divider.sty.js.map +1 -1
  1621. package/esm/layouts/input-group/InputGroup.css +62 -62
  1622. package/esm/layouts/input-group/InputGroup.sty.js +1 -1
  1623. package/esm/layouts/input-group/InputGroup.sty.js.map +1 -1
  1624. package/esm/layouts/page/DetailView.css +3 -3
  1625. package/esm/layouts/page/DetailView.sty.js +2 -2
  1626. package/esm/layouts/page/DetailView.sty.js.map +1 -1
  1627. package/esm/layouts/page/Header.css +2 -2
  1628. package/esm/layouts/page/Header.sty.js +1 -1
  1629. package/esm/layouts/page/Header.sty.js.map +1 -1
  1630. package/esm/layouts/page/Main.css +6 -6
  1631. package/esm/layouts/page/Main.sty.js +4 -4
  1632. package/esm/layouts/page/Main.sty.js.map +1 -1
  1633. package/esm/layouts/page/Page.css +2 -2
  1634. package/esm/layouts/page/Page.sty.js +1 -1
  1635. package/esm/layouts/page/Page.sty.js.map +1 -1
  1636. package/esm/layouts/page/Sidebar.css +35 -35
  1637. package/esm/layouts/page/Sidebar.sty.js +8 -8
  1638. package/esm/layouts/page/Sidebar.sty.js.map +1 -1
  1639. package/esm/layouts/page/panel.css +19 -19
  1640. package/esm/layouts/page/panel.sty.js +10 -10
  1641. package/esm/layouts/page/panel.sty.js.map +1 -1
  1642. package/esm/layouts/page-layout/PageLayout.css +10 -10
  1643. package/esm/layouts/page-layout/PageLayout.sty.js +6 -6
  1644. package/esm/layouts/page-layout/PageLayout.sty.js.map +1 -1
  1645. package/esm/layouts/page-layout/details-layout/DetailsControlBar.css +3 -3
  1646. package/esm/layouts/page-layout/details-layout/DetailsControlBar.js +1 -1
  1647. package/esm/layouts/page-layout/details-layout/DetailsControlBar.js.map +2 -2
  1648. package/esm/layouts/page-layout/details-layout/DetailsControlBar.sty.js +3 -3
  1649. package/esm/layouts/page-layout/details-layout/DetailsControlBar.sty.js.map +1 -1
  1650. package/esm/layouts/page-layout/details-layout/DetailsLayout.css +6 -6
  1651. package/esm/layouts/page-layout/details-layout/DetailsLayout.sty.js +5 -5
  1652. package/esm/layouts/page-layout/details-layout/DetailsLayout.sty.js.map +1 -1
  1653. package/esm/layouts/page-layout/details-layout/Overlay.css +18 -18
  1654. package/esm/layouts/page-layout/details-layout/Overlay.sty.js +4 -4
  1655. package/esm/layouts/page-layout/details-layout/Overlay.sty.js.map +1 -1
  1656. package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.css +37 -37
  1657. package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js +14 -14
  1658. package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js.map +1 -1
  1659. package/esm/layouts/split-layout/SplitLayout.css +19 -19
  1660. package/esm/layouts/split-layout/SplitLayout.sty.js +7 -7
  1661. package/esm/layouts/split-layout/SplitLayout.sty.js.map +1 -1
  1662. package/esm/layouts/surface/Surface.css +39 -39
  1663. package/esm/layouts/surface/Surface.sty.js +2 -2
  1664. package/esm/layouts/surface/Surface.sty.js.map +1 -1
  1665. package/esm/layouts/surface/variables.sty.js +1 -1
  1666. package/esm/layouts/surface/variables.sty.js.map +1 -1
  1667. package/esm/layouts/title-bar/TitleBar.css +5 -5
  1668. package/esm/layouts/title-bar/TitleBar.js +1 -1
  1669. package/esm/layouts/title-bar/TitleBar.js.map +2 -2
  1670. package/esm/layouts/title-bar/TitleBar.sty.js +4 -4
  1671. package/esm/layouts/title-bar/TitleBar.sty.js.map +1 -1
  1672. package/esm/navigation/breadcrumbs/Breadcrumbs.css +9 -9
  1673. package/esm/navigation/breadcrumbs/Breadcrumbs.sty.js +5 -5
  1674. package/esm/navigation/breadcrumbs/Breadcrumbs.sty.js.map +1 -1
  1675. package/esm/navigation/menu/Content.js +3 -2
  1676. package/esm/navigation/menu/Content.js.map +2 -2
  1677. package/esm/navigation/menu/Item.js +1 -0
  1678. package/esm/navigation/menu/Item.js.map +2 -2
  1679. package/esm/navigation/menu/Menu.css +17 -17
  1680. package/esm/navigation/menu/Menu.js +5 -2
  1681. package/esm/navigation/menu/Menu.js.map +2 -2
  1682. package/esm/navigation/menu/Menu.sty.js +8 -8
  1683. package/esm/navigation/menu/Menu.sty.js.map +1 -1
  1684. package/esm/navigation/menu/MobileContent.js +2 -0
  1685. package/esm/navigation/menu/MobileContent.js.map +2 -2
  1686. package/esm/navigation/menu/MobileMenu.css +14 -14
  1687. package/esm/navigation/menu/MobileMenu.sty.js +8 -8
  1688. package/esm/navigation/menu/MobileMenu.sty.js.map +1 -1
  1689. package/esm/navigation/menu/Trigger.js +2 -1
  1690. package/esm/navigation/menu/Trigger.js.map +2 -2
  1691. package/esm/navigation/menu/contexts/MenuContext.js +2 -1
  1692. package/esm/navigation/menu/contexts/MenuContext.js.map +2 -2
  1693. package/esm/navigation/tabs/RenderTab.css +14 -14
  1694. package/esm/navigation/tabs/RenderTab.sty.js +3 -3
  1695. package/esm/navigation/tabs/RenderTab.sty.js.map +1 -1
  1696. package/esm/navigation/tabs/TabPanel.css +3 -3
  1697. package/esm/navigation/tabs/TabPanel.sty.js +2 -2
  1698. package/esm/navigation/tabs/TabPanel.sty.js.map +1 -1
  1699. package/esm/navigation/tabs/Tabs.css +9 -9
  1700. package/esm/navigation/tabs/Tabs.sty.js +5 -5
  1701. package/esm/navigation/tabs/Tabs.sty.js.map +1 -1
  1702. package/esm/notifications/notification-settings/NotificationSettings.css +1 -1
  1703. package/esm/notifications/notification-settings/NotificationSettings.sty.js +1 -1
  1704. package/esm/notifications/notification-settings/NotificationSettings.sty.js.map +1 -1
  1705. package/esm/notifications/toast/Toast.css +6 -6
  1706. package/esm/notifications/toast/Toast.sty.js +4 -4
  1707. package/esm/notifications/toast/Toast.sty.js.map +1 -1
  1708. package/esm/notifications/toast/ToastContainer.css +17 -17
  1709. package/esm/notifications/toast/ToastContainer.sty.js +1 -1
  1710. package/esm/notifications/toast/ToastContainer.sty.js.map +1 -1
  1711. package/esm/overlays/drawer/Drawer.css +9 -9
  1712. package/esm/overlays/drawer/Drawer.js.map +2 -2
  1713. package/esm/overlays/drawer/Drawer.sty.js +5 -5
  1714. package/esm/overlays/drawer/Drawer.sty.js.map +1 -1
  1715. package/esm/overlays/hooks/useOverlayWithTrigger.js +10 -4
  1716. package/esm/overlays/hooks/useOverlayWithTrigger.js.map +2 -2
  1717. package/esm/overlays/modal/BaseModal.js +2 -5
  1718. package/esm/overlays/modal/BaseModal.js.map +2 -2
  1719. package/esm/overlays/modal/Modal.css +17 -16
  1720. package/esm/overlays/modal/Modal.sty.js +9 -7
  1721. package/esm/overlays/modal/Modal.sty.js.map +2 -2
  1722. package/esm/overlays/overlay/Overlay.css +1 -1
  1723. package/esm/overlays/overlay/Overlay.sty.js +1 -1
  1724. package/esm/overlays/overlay/Overlay.sty.js.map +1 -1
  1725. package/esm/overlays/sheet/Sheet.css +7 -7
  1726. package/esm/overlays/sheet/Sheet.sty.js +5 -5
  1727. package/esm/overlays/sheet/Sheet.sty.js.map +1 -1
  1728. package/esm/overlays/tooltip/tooltip.css +18 -18
  1729. package/esm/overlays/tooltip/tooltip.sty.js +3 -3
  1730. package/esm/overlays/tooltip/tooltip.sty.js.map +1 -1
  1731. package/esm/styles/colorUtils.css +60 -60
  1732. package/esm/styles/colorUtils.sty.js +2 -2
  1733. package/esm/styles/colorUtils.sty.js.map +1 -1
  1734. package/esm/styles/container.css +47 -47
  1735. package/esm/styles/container.sty.js +2 -2
  1736. package/esm/styles/container.sty.js.map +1 -1
  1737. package/esm/styles/ellipsis.css +1 -1
  1738. package/esm/styles/ellipsis.sty.js +1 -1
  1739. package/esm/styles/ellipsis.sty.js.map +1 -1
  1740. package/esm/styles/field.css +256 -256
  1741. package/esm/styles/field.sty.js +2 -2
  1742. package/esm/styles/field.sty.js.map +1 -1
  1743. package/esm/styles/screen-reader-only.css +1 -1
  1744. package/esm/styles/screen-reader-only.sty.js +1 -1
  1745. package/esm/styles/screen-reader-only.sty.js.map +1 -1
  1746. package/esm/styles/sprinkles.css +262 -262
  1747. package/esm/styles/sprinkles.sty.js +1 -1
  1748. package/esm/styles/sprinkles.sty.js.map +1 -1
  1749. package/esm/styles/textStyle.css +8 -8
  1750. package/esm/styles/textStyle.sty.js +1 -1
  1751. package/esm/styles/textStyle.sty.js.map +1 -1
  1752. package/esm/tables/DataTable/DataTable.css +2 -2
  1753. package/esm/tables/DataTable/DataTable.js +2 -0
  1754. package/esm/tables/DataTable/DataTable.js.map +2 -2
  1755. package/esm/tables/DataTable/DataTable.sty.js +7 -7
  1756. package/esm/tables/DataTable/DataTable.sty.js.map +1 -1
  1757. package/esm/tables/DataTable/components/Alignment.css +6 -6
  1758. package/esm/tables/DataTable/components/Alignment.sty.js +2 -2
  1759. package/esm/tables/DataTable/components/Alignment.sty.js.map +1 -1
  1760. package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.css +6 -6
  1761. package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.sty.js +3 -3
  1762. package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.sty.js.map +1 -1
  1763. package/esm/tables/DataTable/components/DataTableBody.css +2 -2
  1764. package/esm/tables/DataTable/components/DataTableBody.sty.js +2 -2
  1765. package/esm/tables/DataTable/components/DataTableBody.sty.js.map +1 -1
  1766. package/esm/tables/DataTable/components/DataTableCell.css +83 -83
  1767. package/esm/tables/DataTable/components/DataTableCell.sty.js +5 -5
  1768. package/esm/tables/DataTable/components/DataTableCell.sty.js.map +1 -1
  1769. package/esm/tables/DataTable/components/DataTableDefaultCell.css +23 -23
  1770. package/esm/tables/DataTable/components/DataTableDefaultCell.sty.js +1 -1
  1771. package/esm/tables/DataTable/components/DataTableDefaultCell.sty.js.map +1 -1
  1772. package/esm/tables/DataTable/components/DataTableEmptyState.css +6 -6
  1773. package/esm/tables/DataTable/components/DataTableEmptyState.sty.js +2 -2
  1774. package/esm/tables/DataTable/components/DataTableEmptyState.sty.js.map +1 -1
  1775. package/esm/tables/DataTable/components/DataTableHeader.css +2 -2
  1776. package/esm/tables/DataTable/components/DataTableHeader.js +1 -1
  1777. package/esm/tables/DataTable/components/DataTableHeader.js.map +2 -2
  1778. package/esm/tables/DataTable/components/DataTableHeader.sty.js +2 -2
  1779. package/esm/tables/DataTable/components/DataTableHeader.sty.js.map +1 -1
  1780. package/esm/tables/DataTable/components/DataTableHeaderCell.css +64 -64
  1781. package/esm/tables/DataTable/components/DataTableHeaderCell.sty.js +23 -23
  1782. package/esm/tables/DataTable/components/DataTableHeaderCell.sty.js.map +1 -1
  1783. package/esm/tables/DataTable/components/DataTableRow.css +13 -13
  1784. package/esm/tables/DataTable/components/DataTableRow.sty.js +1 -1
  1785. package/esm/tables/DataTable/components/DataTableRow.sty.js.map +1 -1
  1786. package/esm/tables/DataTable/components/DataTableScrollShadow.css +10 -10
  1787. package/esm/tables/DataTable/components/DataTableScrollShadow.sty.js +2 -2
  1788. package/esm/tables/DataTable/components/DataTableScrollShadow.sty.js.map +1 -1
  1789. package/esm/tables/DataTable/components/DataTableVirtualizationContainer.css +21 -21
  1790. package/esm/tables/DataTable/components/DataTableVirtualizationContainer.sty.js +1 -1
  1791. package/esm/tables/DataTable/components/DataTableVirtualizationContainer.sty.js.map +1 -1
  1792. package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.css +3 -3
  1793. package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.sty.js +2 -2
  1794. package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.sty.js.map +1 -1
  1795. package/esm/tables/DataTable/components/TableActions/DataTableSelectionChip.css +5 -5
  1796. package/esm/tables/DataTable/components/TableActions/DataTableSelectionChip.sty.js +2 -2
  1797. package/esm/tables/DataTable/components/TableActions/DataTableSelectionChip.sty.js.map +1 -1
  1798. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.css +7 -7
  1799. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.sty.js +3 -3
  1800. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.sty.js.map +1 -1
  1801. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableAllColumnsHiddenEmptyState.css +1 -1
  1802. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableAllColumnsHiddenEmptyState.sty.js +1 -1
  1803. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableAllColumnsHiddenEmptyState.sty.js.map +1 -1
  1804. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettings.js +1 -3
  1805. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettings.js.map +2 -2
  1806. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.css +19 -19
  1807. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.js +6 -2
  1808. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.js.map +2 -2
  1809. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js +2 -2
  1810. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js.map +1 -1
  1811. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.css +11 -11
  1812. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js +8 -8
  1813. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js.map +1 -1
  1814. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.css +2 -2
  1815. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.sty.js +2 -2
  1816. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.sty.js.map +1 -1
  1817. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableNoFilterResultsEmptyState.css +1 -1
  1818. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableNoFilterResultsEmptyState.sty.js +1 -1
  1819. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableNoFilterResultsEmptyState.sty.js.map +1 -1
  1820. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.css +4 -4
  1821. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.sty.js +3 -3
  1822. package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.sty.js.map +1 -1
  1823. package/esm/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.css +3 -3
  1824. package/esm/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.sty.js +2 -2
  1825. package/esm/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.sty.js.map +1 -1
  1826. package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.css +8 -8
  1827. package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.sty.js +4 -4
  1828. package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.sty.js.map +1 -1
  1829. package/esm/tables/DataTable/features/ColumnOrder/ColumnOrderDragAndDropContext.js +5 -1
  1830. package/esm/tables/DataTable/features/ColumnOrder/ColumnOrderDragAndDropContext.js.map +2 -2
  1831. package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.css +3 -3
  1832. package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.sty.js +1 -1
  1833. package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.sty.js.map +1 -1
  1834. package/esm/tables/DataTable/features/ColumnTypes/ColumnTypes.css +1 -1
  1835. package/esm/tables/DataTable/features/ColumnTypes/ColumnTypes.sty.js +1 -1
  1836. package/esm/tables/DataTable/features/ColumnTypes/ColumnTypes.sty.js.map +1 -1
  1837. package/esm/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.css +1 -1
  1838. package/esm/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.sty.js +1 -1
  1839. package/esm/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.sty.js.map +1 -1
  1840. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartCell.css +3 -3
  1841. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartCell.sty.js +2 -2
  1842. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartCell.sty.js.map +1 -1
  1843. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.css +1 -1
  1844. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.sty.js +1 -1
  1845. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.sty.js.map +1 -1
  1846. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.css +4 -4
  1847. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.sty.js +1 -1
  1848. package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.sty.js.map +1 -1
  1849. package/esm/tables/DataTable/features/LoadingState/LoadingState.css +3 -3
  1850. package/esm/tables/DataTable/features/LoadingState/LoadingState.sty.js +3 -3
  1851. package/esm/tables/DataTable/features/LoadingState/LoadingState.sty.js.map +1 -1
  1852. package/esm/tables/DataTable/features/MeterBarChart/MeterBarChart.css +5 -5
  1853. package/esm/tables/DataTable/features/MeterBarChart/MeterBarChart.sty.js +2 -2
  1854. package/esm/tables/DataTable/features/MeterBarChart/MeterBarChart.sty.js.map +1 -1
  1855. package/esm/tables/DataTable/features/RowDetails/RowDetails.css +13 -13
  1856. package/esm/tables/DataTable/features/RowDetails/RowDetails.sty.js +3 -3
  1857. package/esm/tables/DataTable/features/RowDetails/RowDetails.sty.js.map +1 -1
  1858. package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.css +17 -17
  1859. package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.sty.js +1 -1
  1860. package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.sty.js.map +1 -1
  1861. package/esm/tables/DataTable/features/RowInteractivity/hooks/useRowInteractivityProps.js +4 -0
  1862. package/esm/tables/DataTable/features/RowInteractivity/hooks/useRowInteractivityProps.js.map +2 -2
  1863. package/esm/tables/DataTable/features/RowOrder/RowOrder.css +8 -8
  1864. package/esm/tables/DataTable/features/RowOrder/RowOrder.sty.js +3 -3
  1865. package/esm/tables/DataTable/features/RowOrder/RowOrder.sty.js.map +1 -1
  1866. package/esm/tables/DataTable/features/RowSelection/RowSelectionAnnouncement.js +26 -0
  1867. package/esm/tables/DataTable/features/RowSelection/RowSelectionAnnouncement.js.map +7 -0
  1868. package/esm/tables/DataTable/features/Sorting/Sorting.css +34 -34
  1869. package/esm/tables/DataTable/features/Sorting/Sorting.sty.js +3 -3
  1870. package/esm/tables/DataTable/features/Sorting/Sorting.sty.js.map +1 -1
  1871. package/esm/tables/DataTable/features/SubRows/SubRows.css +19 -19
  1872. package/esm/tables/DataTable/features/SubRows/SubRows.sty.js +5 -5
  1873. package/esm/tables/DataTable/features/SubRows/SubRows.sty.js.map +1 -1
  1874. package/esm/tables/DataTable/features/Thresholds/Thresholds.css +2 -2
  1875. package/esm/tables/DataTable/features/Thresholds/Thresholds.sty.js +3 -3
  1876. package/esm/tables/DataTable/features/Thresholds/Thresholds.sty.js.map +1 -1
  1877. package/esm/tables/DataTable/features/UserActions/InlineUserActionsMenu.js +45 -1
  1878. package/esm/tables/DataTable/features/UserActions/InlineUserActionsMenu.js.map +2 -2
  1879. package/esm/tables/DataTable/features/UserActions/RowActions.css +4 -4
  1880. package/esm/tables/DataTable/features/UserActions/RowActions.sty.js +1 -1
  1881. package/esm/tables/DataTable/features/UserActions/RowActions.sty.js.map +1 -1
  1882. package/esm/tables/DataTable/features/UserActions/RowActionsColumnDef.js +10 -1
  1883. package/esm/tables/DataTable/features/UserActions/RowActionsColumnDef.js.map +2 -2
  1884. package/esm/tables/DataTable/features/UserActions/UserActions.css +32 -22
  1885. package/esm/tables/DataTable/features/UserActions/UserActions.sty.js +3 -2
  1886. package/esm/tables/DataTable/features/UserActions/UserActions.sty.js.map +2 -2
  1887. package/esm/tables/DataTable/hooks/useHeaderDragAndDrop.js +3 -0
  1888. package/esm/tables/DataTable/hooks/useHeaderDragAndDrop.js.map +2 -2
  1889. package/esm/tables/DataTable/messages.js +29 -14
  1890. package/esm/tables/DataTable/messages.js.map +2 -2
  1891. package/esm/tables/SimpleTable/SimpleTable.css +27 -27
  1892. package/esm/tables/SimpleTable/SimpleTable.sty.js +1 -1
  1893. package/esm/tables/SimpleTable/SimpleTable.sty.js.map +1 -1
  1894. package/esm/typography/block-quote/Blockquote.css +2 -2
  1895. package/esm/typography/block-quote/Blockquote.sty.js +1 -1
  1896. package/esm/typography/block-quote/Blockquote.sty.js.map +1 -1
  1897. package/esm/typography/code/Code.css +1 -1
  1898. package/esm/typography/code/Code.sty.js +1 -1
  1899. package/esm/typography/code/Code.sty.js.map +1 -1
  1900. package/esm/typography/emphasis/Emphasis.css +1 -1
  1901. package/esm/typography/emphasis/Emphasis.sty.js +1 -1
  1902. package/esm/typography/emphasis/Emphasis.sty.js.map +1 -1
  1903. package/esm/typography/external-link/ExternalLink.css +6 -6
  1904. package/esm/typography/external-link/ExternalLink.js.map +2 -2
  1905. package/esm/typography/external-link/ExternalLink.sty.js +1 -1
  1906. package/esm/typography/external-link/ExternalLink.sty.js.map +1 -1
  1907. package/esm/typography/heading/Heading.css +7 -7
  1908. package/esm/typography/heading/Heading.sty.js +1 -1
  1909. package/esm/typography/heading/Heading.sty.js.map +1 -1
  1910. package/esm/typography/highlight/Highlight.css +2 -2
  1911. package/esm/typography/highlight/Highlight.sty.js +1 -1
  1912. package/esm/typography/highlight/Highlight.sty.js.map +1 -1
  1913. package/esm/typography/link/Link.css +4 -4
  1914. package/esm/typography/link/Link.sty.js +1 -1
  1915. package/esm/typography/link/Link.sty.js.map +1 -1
  1916. package/esm/typography/list/List.css +4 -4
  1917. package/esm/typography/list/List.sty.js +2 -2
  1918. package/esm/typography/list/List.sty.js.map +1 -1
  1919. package/esm/typography/paragraph/Paragraph.css +3 -3
  1920. package/esm/typography/paragraph/Paragraph.sty.js +1 -1
  1921. package/esm/typography/paragraph/Paragraph.sty.js.map +1 -1
  1922. package/esm/typography/strikethrough/Strikethrough.css +1 -1
  1923. package/esm/typography/strikethrough/Strikethrough.sty.js +1 -1
  1924. package/esm/typography/strikethrough/Strikethrough.sty.js.map +1 -1
  1925. package/esm/typography/strong/Strong.css +1 -1
  1926. package/esm/typography/strong/Strong.sty.js +1 -1
  1927. package/esm/typography/strong/Strong.sty.js.map +1 -1
  1928. package/esm/typography/text/Text.css +3 -3
  1929. package/esm/typography/text/Text.sty.js +1 -1
  1930. package/esm/typography/text/Text.sty.js.map +1 -1
  1931. package/esm/typography/text-ellipsis/TextEllipsis.css +6 -6
  1932. package/esm/typography/text-ellipsis/TextEllipsis.sty.js +2 -2
  1933. package/esm/typography/text-ellipsis/TextEllipsis.sty.js.map +1 -1
  1934. package/filters/filter-field/FilterField.css +130 -130
  1935. package/filters/filter-field/FilterField.js +12 -6
  1936. package/filters/filter-field/FilterField.sty.js +28 -28
  1937. package/filters/filter-field/components/FilterFieldSuffixButtons.css +3 -3
  1938. package/filters/filter-field/components/FilterFieldSuffixButtons.js +2 -1
  1939. package/filters/filter-field/components/FilterFieldSuffixButtons.sty.js +3 -3
  1940. package/filters/filter-field/components/FilterStatement.css +14 -14
  1941. package/filters/filter-field/components/FilterStatement.sty.js +7 -7
  1942. package/filters/filter-field/messages.d.ts +5 -0
  1943. package/filters/filter-field/messages.js +9 -4
  1944. package/filters/filter-field/suggestions/RecentPinnedSuggestionItem.css +9 -9
  1945. package/filters/filter-field/suggestions/RecentPinnedSuggestionItem.sty.js +2 -2
  1946. package/filters/filter-field/suggestions/Suggestion.css +24 -24
  1947. package/filters/filter-field/suggestions/Suggestion.js +3 -1
  1948. package/filters/filter-field/suggestions/Suggestion.sty.js +16 -16
  1949. package/filters/filter-field/suggestions/SuggestionDetails.css +2 -2
  1950. package/filters/filter-field/suggestions/SuggestionDetails.sty.js +2 -2
  1951. package/filters/filter-field/suggestions/SuggestionGroup.css +6 -6
  1952. package/filters/filter-field/suggestions/SuggestionGroup.sty.js +3 -3
  1953. package/filters/filter-field/suggestions/SuggestionGroupLabel.css +1 -1
  1954. package/filters/filter-field/suggestions/SuggestionGroupLabel.sty.js +1 -1
  1955. package/filters/filter-field/suggestions/SuggestionTips.css +10 -7
  1956. package/filters/filter-field/suggestions/SuggestionTips.css.d.ts +2 -1
  1957. package/filters/filter-field/suggestions/SuggestionTips.js +13 -2
  1958. package/filters/filter-field/suggestions/SuggestionTips.sty.js +10 -7
  1959. package/filters/filter-field/suggestions/Suggestions.js +33 -46
  1960. package/filters/filter-field/suggestions/SuggestionsOverlay.css +7 -7
  1961. package/filters/filter-field/suggestions/SuggestionsOverlay.js +11 -0
  1962. package/filters/filter-field/suggestions/SuggestionsOverlay.sty.js +5 -5
  1963. package/filters/filter-field/utils/get-suggestion-transaction.js +4 -0
  1964. package/filters/filter-field/utils/suggestions-utils/get-suggestions.d.ts +8 -0
  1965. package/filters/filter-field/utils/suggestions-utils/get-suggestions.js +10 -2
  1966. package/filters/segment-selector/SegmentSelector.css +4 -4
  1967. package/filters/segment-selector/SegmentSelector.d.ts +1 -1
  1968. package/filters/segment-selector/SegmentSelector.js +22 -21
  1969. package/filters/segment-selector/SegmentSelector.sty.js +4 -4
  1970. package/filters/segment-selector/SegmentSelector.types.d.ts +1 -1
  1971. package/filters/segment-selector/parts/EmptySegments.css +1 -1
  1972. package/filters/segment-selector/parts/EmptySegments.sty.js +1 -1
  1973. package/filters/segment-selector/parts/Overlay.css +8 -8
  1974. package/filters/segment-selector/parts/Overlay.js +1 -1
  1975. package/filters/segment-selector/parts/Overlay.sty.js +8 -8
  1976. package/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.css +4 -4
  1977. package/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.sty.js +4 -4
  1978. package/filters/segment-selector/parts/segmentsPresets/SegmentsPreset.js +6 -3
  1979. package/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.css +34 -34
  1980. package/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.sty.js +10 -10
  1981. package/filters/segment-selector/parts/selectionBar/SegmentSelect.css +22 -22
  1982. package/filters/segment-selector/parts/selectionBar/SegmentSelect.d.ts +1 -0
  1983. package/filters/segment-selector/parts/selectionBar/SegmentSelect.js +3 -1
  1984. package/filters/segment-selector/parts/selectionBar/SegmentSelect.sty.js +7 -7
  1985. package/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.css +1 -1
  1986. package/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.sty.js +1 -1
  1987. package/filters/segment-selector/parts/selectionBar/SelectionBar.d.ts +2 -1
  1988. package/filters/segment-selector/parts/selectionBar/SelectionBar.js +12 -5
  1989. package/filters/segment-selector/parts/selectionBar/ValueSelect.d.ts +1 -0
  1990. package/filters/segment-selector/parts/selectionBar/ValueSelect.js +4 -1
  1991. package/filters/timeframe-selector/TimeframeSelector.css +2 -2
  1992. package/filters/timeframe-selector/TimeframeSelector.sty.js +2 -2
  1993. package/filters/timeframe-selector/TimeframeSelector.types.d.ts +1 -1
  1994. package/filters/timeframe-selector/TimeframeSelectorRoot.js +24 -2
  1995. package/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.css +4 -4
  1996. package/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.sty.js +3 -3
  1997. package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.css +4 -4
  1998. package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.d.ts +2 -0
  1999. package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.js +2 -0
  2000. package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.sty.js +4 -4
  2001. package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlayFooter.js +1 -1
  2002. package/filters/timeframe-selector/components/presets/Presets.css +27 -27
  2003. package/filters/timeframe-selector/components/presets/Presets.sty.js +11 -11
  2004. package/filters/timeframe-selector/components/trigger/Trigger.css +11 -11
  2005. package/filters/timeframe-selector/components/trigger/Trigger.sty.js +4 -4
  2006. package/filters/timeframe-selector/constants/timeframeSelectorMessages.js +2 -2
  2007. package/forms/_base-input/BaseInput.css +89 -85
  2008. package/forms/_base-input/BaseInput.js +4 -2
  2009. package/forms/_base-input/BaseInput.sty.js +11 -11
  2010. package/forms/_base-input/BaseInputContent.css +7 -7
  2011. package/forms/_base-input/BaseInputContent.sty.js +1 -1
  2012. package/forms/calendar/Calendar.css +48 -48
  2013. package/forms/calendar/Calendar.sty.js +12 -12
  2014. package/forms/calendar/Calendar.types.d.ts +13 -0
  2015. package/forms/calendar/CalendarRoot.d.ts +15 -2
  2016. package/forms/calendar/CalendarRoot.js +86 -5
  2017. package/forms/calendar/components/CalendarItem.css +7 -7
  2018. package/forms/calendar/components/CalendarItem.sty.js +4 -4
  2019. package/forms/calendar/components/CalendarOutlineIcon.css +8 -8
  2020. package/forms/calendar/components/CalendarOutlineIcon.sty.js +5 -5
  2021. package/forms/calendar/variables.sty.js +2 -2
  2022. package/forms/checkbox/Checkbox.css +20 -20
  2023. package/forms/checkbox/Checkbox.js +2 -3
  2024. package/forms/checkbox/Checkbox.sty.js +3 -3
  2025. package/forms/date-time-picker/DateTimePicker.css +42 -42
  2026. package/forms/date-time-picker/DateTimePicker.sty.js +6 -6
  2027. package/forms/date-time-picker/DateTimePickerRoot.js +65 -2
  2028. package/forms/date-time-picker/types.d.ts +13 -0
  2029. package/forms/date-time-range-picker/DateRangeSelector.css +1 -1
  2030. package/forms/date-time-range-picker/DateRangeSelector.sty.js +1 -1
  2031. package/forms/date-time-range-picker/DateTimeInput.css +11 -11
  2032. package/forms/date-time-range-picker/DateTimeInput.js +4 -2
  2033. package/forms/date-time-range-picker/DateTimeInput.sty.js +3 -3
  2034. package/forms/date-time-range-picker/DateTimeRangePicker.css +27 -27
  2035. package/forms/date-time-range-picker/DateTimeRangePicker.sty.js +4 -4
  2036. package/forms/date-time-range-picker/DateTimeRangePickerRoot.js +57 -1
  2037. package/forms/date-time-range-picker/types.d.ts +20 -0
  2038. package/forms/form/Form.js +4 -2
  2039. package/forms/form/FormMessages.js +2 -0
  2040. package/forms/form/context/FormContext.d.ts +2 -0
  2041. package/forms/forms-core/components/field-set/FieldSet.css +2 -2
  2042. package/forms/forms-core/components/field-set/FieldSet.sty.js +2 -2
  2043. package/forms/forms-core/components/form-field/FormField.sty.js +1 -1
  2044. package/forms/forms-core/components/form-field/FormFieldMessageContextProvider.js +16 -2
  2045. package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.css +5 -5
  2046. package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.sty.js +2 -2
  2047. package/forms/forms-core/components/form-field-messages/FormFieldMessages.css +3 -3
  2048. package/forms/forms-core/components/form-field-messages/FormFieldMessages.d.ts +3 -2
  2049. package/forms/forms-core/components/form-field-messages/FormFieldMessages.js +3 -2
  2050. package/forms/forms-core/components/form-field-messages/FormFieldMessages.sty.js +1 -1
  2051. package/forms/forms-core/components/hint/Hint.d.ts +2 -0
  2052. package/forms/forms-core/components/label/Label.css +5 -5
  2053. package/forms/forms-core/components/label/Label.sty.js +2 -2
  2054. package/forms/forms-core/contexts/FormFieldMessageContext.d.ts +3 -0
  2055. package/forms/forms-core/hooks/useFormFieldValidation.js +38 -11
  2056. package/forms/forms-core/state/formfield-messages-state-reducer.js +1 -1
  2057. package/forms/hooks/useAutofillEvent.css +8 -8
  2058. package/forms/hooks/useAutofillEvent.sty.js +4 -4
  2059. package/forms/hooks/useContainerFocus.css +1 -1
  2060. package/forms/hooks/useContainerFocus.sty.js +1 -1
  2061. package/forms/radio/styles.css +18 -18
  2062. package/forms/radio/styles.sty.js +8 -8
  2063. package/forms/search-input/SearchInput.css +2 -2
  2064. package/forms/search-input/SearchInput.sty.js +1 -1
  2065. package/forms/search-input/Stepper.css +5 -5
  2066. package/forms/search-input/Stepper.js +8 -1
  2067. package/forms/search-input/Stepper.sty.js +3 -3
  2068. package/forms/select/Select.d.ts +12 -6
  2069. package/forms/select/Select.js +176 -31
  2070. package/forms/select/components/Control.js +10 -1
  2071. package/forms/select/components/HiddenSelect.d.ts +1 -0
  2072. package/forms/select/components/HiddenSelect.js +2 -0
  2073. package/forms/select/components/Menu.js +35 -14
  2074. package/forms/select/components/MenuList.js +117 -48
  2075. package/forms/select/components/NoOptionsMessage.d.ts +2 -0
  2076. package/forms/select/components/NoOptionsMessage.js +8 -6
  2077. package/forms/select/styles/Select.css +46 -46
  2078. package/forms/select/styles/Select.sty.js +24 -24
  2079. package/forms/spin-buttons/SpinButton.css +8 -8
  2080. package/forms/spin-buttons/SpinButton.sty.js +2 -2
  2081. package/forms/switch/Switch.css +36 -36
  2082. package/forms/switch/Switch.sty.js +5 -5
  2083. package/forms/text-area/TextArea.css +59 -59
  2084. package/forms/text-area/TextArea.sty.js +3 -3
  2085. package/forms/toggle-button-group/ToggleButtonGroup.js +2 -1
  2086. package/forms/toggle-button-group/styles.css +58 -58
  2087. package/forms/toggle-button-group/styles.sty.js +15 -15
  2088. package/forms/validation/validation-builders.js +2 -1
  2089. package/lang/en.json +508 -274
  2090. package/lang/ja.json +473 -249
  2091. package/lang/uncompiled/en.json +146 -74
  2092. package/lang/uncompiled/ja.json +100 -55
  2093. package/layouts/app-header/ActionItems.js +4 -2
  2094. package/layouts/app-header/AppHeader.css +1 -1
  2095. package/layouts/app-header/AppHeader.js +2 -1
  2096. package/layouts/app-header/AppHeader.sty.js +1 -1
  2097. package/layouts/app-header/Navigation.css +9 -9
  2098. package/layouts/app-header/Navigation.sty.js +5 -5
  2099. package/layouts/app-header/action-group/ActionButton.css +17 -17
  2100. package/layouts/app-header/action-group/ActionButton.sty.js +3 -3
  2101. package/layouts/app-header/action-group/ActionGroup.css +1 -1
  2102. package/layouts/app-header/action-group/ActionGroup.js +1 -0
  2103. package/layouts/app-header/action-group/ActionGroup.sty.js +1 -1
  2104. package/layouts/app-header/action-group/NavItem.css +4 -4
  2105. package/layouts/app-header/action-group/NavItem.sty.js +3 -3
  2106. package/layouts/app-header/app-icon/AppIcon.css +4 -4
  2107. package/layouts/app-header/app-icon/AppIcon.sty.js +1 -1
  2108. package/layouts/container/Container.css +5 -5
  2109. package/layouts/container/Container.sty.js +1 -1
  2110. package/layouts/divider/Divider.css +6 -6
  2111. package/layouts/divider/Divider.d.ts +7 -0
  2112. package/layouts/divider/Divider.sty.js +1 -1
  2113. package/layouts/input-group/InputGroup.css +62 -62
  2114. package/layouts/input-group/InputGroup.sty.js +1 -1
  2115. package/layouts/page/DetailView.css +3 -3
  2116. package/layouts/page/DetailView.sty.js +2 -2
  2117. package/layouts/page/Header.css +2 -2
  2118. package/layouts/page/Header.sty.js +1 -1
  2119. package/layouts/page/Main.css +6 -6
  2120. package/layouts/page/Main.sty.js +4 -4
  2121. package/layouts/page/Page.css +2 -2
  2122. package/layouts/page/Page.sty.js +1 -1
  2123. package/layouts/page/Sidebar.css +35 -35
  2124. package/layouts/page/Sidebar.sty.js +8 -8
  2125. package/layouts/page/panel.css +19 -19
  2126. package/layouts/page/panel.sty.js +10 -10
  2127. package/layouts/page-layout/PageLayout.css +10 -10
  2128. package/layouts/page-layout/PageLayout.sty.js +6 -6
  2129. package/layouts/page-layout/details-layout/DetailsControlBar.css +3 -3
  2130. package/layouts/page-layout/details-layout/DetailsControlBar.js +1 -1
  2131. package/layouts/page-layout/details-layout/DetailsControlBar.sty.js +3 -3
  2132. package/layouts/page-layout/details-layout/DetailsLayout.css +6 -6
  2133. package/layouts/page-layout/details-layout/DetailsLayout.sty.js +5 -5
  2134. package/layouts/page-layout/details-layout/Overlay.css +18 -18
  2135. package/layouts/page-layout/details-layout/Overlay.sty.js +4 -4
  2136. package/layouts/page-layout/sidebar-layout/SidebarLayout.css +37 -37
  2137. package/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js +14 -14
  2138. package/layouts/split-layout/SplitLayout.css +19 -19
  2139. package/layouts/split-layout/SplitLayout.sty.js +7 -7
  2140. package/layouts/surface/Surface.css +39 -39
  2141. package/layouts/surface/Surface.sty.js +2 -2
  2142. package/layouts/surface/variables.sty.js +1 -1
  2143. package/layouts/title-bar/TitleBar.css +5 -5
  2144. package/layouts/title-bar/TitleBar.js +1 -1
  2145. package/layouts/title-bar/TitleBar.sty.js +4 -4
  2146. package/navigation/breadcrumbs/Breadcrumbs.css +9 -9
  2147. package/navigation/breadcrumbs/Breadcrumbs.sty.js +5 -5
  2148. package/navigation/menu/Content.js +3 -2
  2149. package/navigation/menu/Item.js +1 -0
  2150. package/navigation/menu/Menu.css +17 -17
  2151. package/navigation/menu/Menu.js +5 -2
  2152. package/navigation/menu/Menu.sty.js +8 -8
  2153. package/navigation/menu/MobileContent.d.ts +6 -1
  2154. package/navigation/menu/MobileContent.js +2 -0
  2155. package/navigation/menu/MobileMenu.css +14 -14
  2156. package/navigation/menu/MobileMenu.sty.js +8 -8
  2157. package/navigation/menu/Trigger.js +2 -1
  2158. package/navigation/menu/contexts/MenuContext.d.ts +1 -0
  2159. package/navigation/menu/contexts/MenuContext.js +2 -1
  2160. package/navigation/tabs/RenderTab.css +14 -14
  2161. package/navigation/tabs/RenderTab.sty.js +3 -3
  2162. package/navigation/tabs/TabPanel.css +3 -3
  2163. package/navigation/tabs/TabPanel.sty.js +2 -2
  2164. package/navigation/tabs/Tabs.css +9 -9
  2165. package/navigation/tabs/Tabs.sty.js +5 -5
  2166. package/notifications/notification-settings/NotificationSettings.css +1 -1
  2167. package/notifications/notification-settings/NotificationSettings.sty.js +1 -1
  2168. package/notifications/toast/Toast.css +6 -6
  2169. package/notifications/toast/Toast.sty.js +4 -4
  2170. package/notifications/toast/ToastContainer.css +17 -17
  2171. package/notifications/toast/ToastContainer.sty.js +1 -1
  2172. package/overlays/drawer/Drawer.css +9 -9
  2173. package/overlays/drawer/Drawer.d.ts +3 -2
  2174. package/overlays/drawer/Drawer.sty.js +5 -5
  2175. package/overlays/hooks/useOverlayWithTrigger.js +10 -4
  2176. package/overlays/modal/BaseModal.js +2 -5
  2177. package/overlays/modal/Modal.css +17 -16
  2178. package/overlays/modal/Modal.css.d.ts +7 -0
  2179. package/overlays/modal/Modal.sty.js +9 -7
  2180. package/overlays/overlay/Overlay.css +1 -1
  2181. package/overlays/overlay/Overlay.sty.js +1 -1
  2182. package/overlays/sheet/Sheet.css +7 -7
  2183. package/overlays/sheet/Sheet.sty.js +5 -5
  2184. package/overlays/tooltip/tooltip.css +18 -18
  2185. package/overlays/tooltip/tooltip.sty.js +3 -3
  2186. package/package.json +2 -3
  2187. package/styles/colorUtils.css +60 -60
  2188. package/styles/colorUtils.sty.js +2 -2
  2189. package/styles/container.css +47 -47
  2190. package/styles/container.sty.js +2 -2
  2191. package/styles/ellipsis.css +1 -1
  2192. package/styles/ellipsis.sty.js +1 -1
  2193. package/styles/field.css +256 -256
  2194. package/styles/field.sty.js +2 -2
  2195. package/styles/screen-reader-only.css +1 -1
  2196. package/styles/screen-reader-only.sty.js +1 -1
  2197. package/styles/sprinkles.css +262 -262
  2198. package/styles/sprinkles.sty.js +1 -1
  2199. package/styles/textStyle.css +8 -8
  2200. package/styles/textStyle.sty.js +1 -1
  2201. package/tables/DataTable/DataTable.css +2 -2
  2202. package/tables/DataTable/DataTable.js +2 -0
  2203. package/tables/DataTable/DataTable.sty.js +7 -7
  2204. package/tables/DataTable/components/Alignment.css +6 -6
  2205. package/tables/DataTable/components/Alignment.sty.js +2 -2
  2206. package/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.css +6 -6
  2207. package/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.sty.js +3 -3
  2208. package/tables/DataTable/components/DataTableBody.css +2 -2
  2209. package/tables/DataTable/components/DataTableBody.sty.js +2 -2
  2210. package/tables/DataTable/components/DataTableCell.css +83 -83
  2211. package/tables/DataTable/components/DataTableCell.sty.js +5 -5
  2212. package/tables/DataTable/components/DataTableDefaultCell.css +23 -23
  2213. package/tables/DataTable/components/DataTableDefaultCell.sty.js +1 -1
  2214. package/tables/DataTable/components/DataTableEmptyState.css +6 -6
  2215. package/tables/DataTable/components/DataTableEmptyState.sty.js +2 -2
  2216. package/tables/DataTable/components/DataTableHeader.css +2 -2
  2217. package/tables/DataTable/components/DataTableHeader.js +1 -1
  2218. package/tables/DataTable/components/DataTableHeader.sty.js +2 -2
  2219. package/tables/DataTable/components/DataTableHeaderCell.css +64 -64
  2220. package/tables/DataTable/components/DataTableHeaderCell.sty.js +23 -23
  2221. package/tables/DataTable/components/DataTableRow.css +13 -13
  2222. package/tables/DataTable/components/DataTableRow.sty.js +1 -1
  2223. package/tables/DataTable/components/DataTableScrollShadow.css +10 -10
  2224. package/tables/DataTable/components/DataTableScrollShadow.sty.js +2 -2
  2225. package/tables/DataTable/components/DataTableVirtualizationContainer.css +21 -21
  2226. package/tables/DataTable/components/DataTableVirtualizationContainer.sty.js +1 -1
  2227. package/tables/DataTable/components/SettingsModal/DataTableSettingsModal.css +3 -3
  2228. package/tables/DataTable/components/SettingsModal/DataTableSettingsModal.sty.js +2 -2
  2229. package/tables/DataTable/components/TableActions/DataTableSelectionChip.css +5 -5
  2230. package/tables/DataTable/components/TableActions/DataTableSelectionChip.sty.js +2 -2
  2231. package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.css +7 -7
  2232. package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.sty.js +3 -3
  2233. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableAllColumnsHiddenEmptyState.css +1 -1
  2234. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableAllColumnsHiddenEmptyState.sty.js +1 -1
  2235. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettings.js +1 -3
  2236. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.css +19 -19
  2237. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.js +6 -2
  2238. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js +2 -2
  2239. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.css +11 -11
  2240. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js +8 -8
  2241. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.css +2 -2
  2242. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.sty.js +2 -2
  2243. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableNoFilterResultsEmptyState.css +1 -1
  2244. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableNoFilterResultsEmptyState.sty.js +1 -1
  2245. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.css +4 -4
  2246. package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.sty.js +3 -3
  2247. package/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.css +3 -3
  2248. package/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.sty.js +2 -2
  2249. package/tables/DataTable/features/ColumnOrder/ColumnOrder.css +8 -8
  2250. package/tables/DataTable/features/ColumnOrder/ColumnOrder.sty.js +4 -4
  2251. package/tables/DataTable/features/ColumnOrder/ColumnOrderDragAndDropContext.js +5 -1
  2252. package/tables/DataTable/features/ColumnSizing/ColumnSizing.css +3 -3
  2253. package/tables/DataTable/features/ColumnSizing/ColumnSizing.sty.js +1 -1
  2254. package/tables/DataTable/features/ColumnTypes/ColumnTypes.css +1 -1
  2255. package/tables/DataTable/features/ColumnTypes/ColumnTypes.sty.js +1 -1
  2256. package/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.css +1 -1
  2257. package/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.sty.js +1 -1
  2258. package/tables/DataTable/features/GanttChart/DataTableGanttChartCell.css +3 -3
  2259. package/tables/DataTable/features/GanttChart/DataTableGanttChartCell.sty.js +2 -2
  2260. package/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.css +1 -1
  2261. package/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.sty.js +1 -1
  2262. package/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.css +4 -4
  2263. package/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.sty.js +1 -1
  2264. package/tables/DataTable/features/LoadingState/LoadingState.css +3 -3
  2265. package/tables/DataTable/features/LoadingState/LoadingState.sty.js +3 -3
  2266. package/tables/DataTable/features/MeterBarChart/MeterBarChart.css +5 -5
  2267. package/tables/DataTable/features/MeterBarChart/MeterBarChart.sty.js +2 -2
  2268. package/tables/DataTable/features/RowDetails/RowDetails.css +13 -13
  2269. package/tables/DataTable/features/RowDetails/RowDetails.sty.js +3 -3
  2270. package/tables/DataTable/features/RowInteractivity/RowInteractivity.css +17 -17
  2271. package/tables/DataTable/features/RowInteractivity/RowInteractivity.sty.js +1 -1
  2272. package/tables/DataTable/features/RowInteractivity/hooks/useRowInteractivityProps.js +4 -0
  2273. package/tables/DataTable/features/RowOrder/RowOrder.css +8 -8
  2274. package/tables/DataTable/features/RowOrder/RowOrder.sty.js +3 -3
  2275. package/tables/DataTable/features/RowSelection/RowSelectionAnnouncement.d.ts +8 -0
  2276. package/tables/DataTable/features/RowSelection/RowSelectionAnnouncement.js +44 -0
  2277. package/tables/DataTable/features/Sorting/Sorting.css +34 -34
  2278. package/tables/DataTable/features/Sorting/Sorting.sty.js +3 -3
  2279. package/tables/DataTable/features/SubRows/SubRows.css +19 -19
  2280. package/tables/DataTable/features/SubRows/SubRows.sty.js +5 -5
  2281. package/tables/DataTable/features/Thresholds/Thresholds.css +2 -2
  2282. package/tables/DataTable/features/Thresholds/Thresholds.sty.js +3 -3
  2283. package/tables/DataTable/features/UserActions/InlineUserActionsMenu.js +43 -1
  2284. package/tables/DataTable/features/UserActions/RowActions.css +4 -4
  2285. package/tables/DataTable/features/UserActions/RowActions.sty.js +1 -1
  2286. package/tables/DataTable/features/UserActions/RowActionsColumnDef.js +10 -1
  2287. package/tables/DataTable/features/UserActions/UserActions.css +32 -22
  2288. package/tables/DataTable/features/UserActions/UserActions.sty.js +3 -2
  2289. package/tables/DataTable/hooks/useHeaderDragAndDrop.d.ts +2 -2
  2290. package/tables/DataTable/hooks/useHeaderDragAndDrop.js +3 -0
  2291. package/tables/DataTable/messages.d.ts +15 -0
  2292. package/tables/DataTable/messages.js +29 -14
  2293. package/tables/SimpleTable/SimpleTable.css +27 -27
  2294. package/tables/SimpleTable/SimpleTable.sty.js +1 -1
  2295. package/typography/block-quote/Blockquote.css +2 -2
  2296. package/typography/block-quote/Blockquote.sty.js +1 -1
  2297. package/typography/code/Code.css +1 -1
  2298. package/typography/code/Code.sty.js +1 -1
  2299. package/typography/emphasis/Emphasis.css +1 -1
  2300. package/typography/emphasis/Emphasis.sty.js +1 -1
  2301. package/typography/external-link/ExternalLink.css +6 -6
  2302. package/typography/external-link/ExternalLink.d.ts +3 -1
  2303. package/typography/external-link/ExternalLink.sty.js +1 -1
  2304. package/typography/heading/Heading.css +7 -7
  2305. package/typography/heading/Heading.sty.js +1 -1
  2306. package/typography/highlight/Highlight.css +2 -2
  2307. package/typography/highlight/Highlight.sty.js +1 -1
  2308. package/typography/link/Link.css +4 -4
  2309. package/typography/link/Link.sty.js +1 -1
  2310. package/typography/list/List.css +4 -4
  2311. package/typography/list/List.sty.js +2 -2
  2312. package/typography/paragraph/Paragraph.css +3 -3
  2313. package/typography/paragraph/Paragraph.sty.js +1 -1
  2314. package/typography/strikethrough/Strikethrough.css +1 -1
  2315. package/typography/strikethrough/Strikethrough.sty.js +1 -1
  2316. package/typography/strong/Strong.css +1 -1
  2317. package/typography/strong/Strong.sty.js +1 -1
  2318. package/typography/text/Text.css +3 -3
  2319. package/typography/text/Text.sty.js +1 -1
  2320. package/typography/text-ellipsis/TextEllipsis.css +6 -6
  2321. package/typography/text-ellipsis/TextEllipsis.sty.js +2 -2
  2322. package/editors/dql-editor/dql/DocumentationLink.d.ts +0 -13
  2323. package/editors/dql-editor/dql/SuggestionPart.css +0 -4
  2324. package/editors/dql-editor/dql/SuggestionPart.css.d.ts +0 -2
  2325. package/editors/dql-editor/dql/SuggestionPart.d.ts +0 -7
  2326. package/editors/dql-editor/dql/SuggestionPart.js +0 -50
  2327. package/editors/dql-editor/dql/SuggestionsInfoSection.d.ts +0 -2
  2328. package/editors/dql-editor/dql/suggestion-autocompletions.d.ts +0 -10
  2329. package/esm/editors/dql-editor/dql/DocumentationLink.js +0 -27
  2330. package/esm/editors/dql-editor/dql/DocumentationLink.js.map +0 -7
  2331. package/esm/editors/dql-editor/dql/SuggestionPart.css +0 -4
  2332. package/esm/editors/dql-editor/dql/SuggestionPart.js +0 -32
  2333. package/esm/editors/dql-editor/dql/SuggestionPart.js.map +0 -7
  2334. package/esm/editors/dql-editor/dql/SuggestionPart.sty.js +0 -6
  2335. package/esm/editors/dql-editor/dql/SuggestionPart.sty.js.map +0 -7
  2336. package/esm/editors/dql-editor/dql/SuggestionsInfoSection.js.map +0 -7
  2337. package/esm/editors/dql-editor/dql/SuggestionsInfoSection.sty.js.map +0 -7
  2338. package/esm/editors/dql-editor/dql/open-autocomplete.js.map +0 -7
  2339. package/esm/editors/dql-editor/dql/suggestion-autocompletions.js.map +0 -7
  2340. package/esm/editors/dql-editor/dql/suggestions-info-section-extension.js.map +0 -7
  2341. /package/editors/dql-editor/{dql → autocomplete}/SuggestionsInfoSection.css.d.ts +0 -0
  2342. /package/editors/dql-editor/{dql → autocomplete}/SuggestionsInfoSection.js +0 -0
  2343. /package/editors/dql-editor/{dql → autocomplete}/fuzzy-match.d.ts +0 -0
  2344. /package/editors/dql-editor/{dql → autocomplete}/fuzzy-match.js +0 -0
  2345. /package/editors/dql-editor/{dql → autocomplete}/get-suggestions.d.ts +0 -0
  2346. /package/editors/dql-editor/{dql → autocomplete}/get-suggestions.js +0 -0
  2347. /package/editors/dql-editor/{dql → autocomplete}/open-autocomplete.d.ts +0 -0
  2348. /package/editors/dql-editor/{dql → autocomplete}/suggestions-info-section-extension.d.ts +0 -0
  2349. /package/editors/dql-editor/{dql → autocomplete}/token-type-label.d.ts +0 -0
  2350. /package/editors/dql-editor/{dql → autocomplete}/token-type-label.js +0 -0
  2351. /package/esm/editors/dql-editor/{dql → autocomplete}/SuggestionsInfoSection.js +0 -0
  2352. /package/esm/editors/dql-editor/{dql → autocomplete}/fuzzy-match.js +0 -0
  2353. /package/esm/editors/dql-editor/{dql → autocomplete}/get-suggestions.js +0 -0
  2354. /package/esm/editors/dql-editor/{dql → autocomplete}/token-type-label.js +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/filters/filter-field/suggestions/Suggestions.tsx"],
4
- "sourcesContent": ["import type { Modifier, ModifierArguments } from '@popperjs/core';\nimport { useVirtualizer, type Virtualizer } from '@tanstack/react-virtual';\nimport clsx from 'clsx';\nimport { motion, type Variants } from 'framer-motion';\nimport {\n Children,\n cloneElement,\n isValidElement,\n type ReactNode,\n useMemo,\n useRef,\n} from 'react';\nimport { FormattedMessage, useIntl } from 'react-intl';\n\nimport { usePopper } from '../../../overlays/utils/use-popper-compat.js';\nimport useOverlayTransition from '../hooks/useOverlayTransition.js';\nimport {\n sliceFlattenedSuggestions,\n useShowMore,\n} from '../hooks/useShowMore.js';\nimport { filterFieldMessages } from '../messages.js';\nimport { AriaLiveInfo } from './AriaLiveInfo.js';\nimport { FallbackKeySuggestionGroup } from './FallbackKeySuggestions.js';\nimport { LogicalOperatorSuggestionsGroup } from './LogicalOperatorSuggestions.js';\nimport { PastedContentSuggestionGroup } from './PastedContentSuggestions.js';\nimport {\n PinnedSuggestionGroup,\n RecentSuggestionGroup,\n} from './RecentPinnedSuggestionItem.js';\nimport { SearchSuggestionGroup } from './SearchSuggestions.js';\nimport * as suggestionStyles from './Suggestion.sty.js';\nimport { Suggestion } from './Suggestion.js';\nimport type { FlattenedSuggestionItem } from './Suggestion.types.js';\nimport * as suggestionGroupStyles from './SuggestionGroup.sty.js';\nimport { SuggestionGroupLabel } from './SuggestionGroupLabel.js';\nimport * as styles from './SuggestionsOverlay.sty.js';\nimport { Button, ButtonProps } from '../../../buttons/button/Button.js';\nimport { ProgressCircle } from '../../../content/progress/ProgressCircle.js';\nimport { VisuallyHidden } from '../../../core/components/visually-hidden/VisuallyHidden.js';\nimport { useBehavioralTrackingProps } from '../../../core/hooks/useBehavioralTrackingProps.js';\nimport type { BehaviorTrackingProps } from '../../../core/types/behavior-tracking-props.js';\nimport type { DataTestId } from '../../../core/types/data-props.js';\nimport type { StylingProps } from '../../../core/types/styling-props.js';\nimport type { WithChildren } from '../../../core/types/with-children.js';\nimport { Flex } from '../../../layouts/flex/Flex.js';\nimport { Surface } from '../../../layouts/surface/Surface.js';\nimport { CSSHighlight } from '../components/CSSHighlight.js';\nimport { useFilterFieldContext } from '../hooks/useFilterFieldContext.js';\nimport { flattenSuggestions } from '../utils/suggestions-utils/flatten-suggestions.js';\n\n/**\n * Converts a groupId to a valid HTML id attribute value safe for use in aria-describedby.\n * HTML ids must not contain spaces (space is the delimiter in aria-describedby token lists).\n */\nfunction toGroupLabelId(groupId: string): string {\n return `group-label-${groupId.replace(/\\s+/g, '-')}`;\n}\n\nfunction renderFlattenedSuggestionItem(\n flatItem: FlattenedSuggestionItem,\n trailing: string | undefined,\n): { child: ReactNode; key: string } {\n switch (flatItem.kind) {\n case 'group-header': {\n let child: ReactNode;\n\n if (isValidElement(flatItem.label)) {\n child = flatItem.label;\n } else if (flatItem.label) {\n child = <SuggestionGroupLabel>{flatItem.label}</SuggestionGroupLabel>;\n } else {\n child = null;\n }\n\n return {\n child: (\n <div\n className={suggestionGroupStyles.groupHeaderSeparator}\n role=\"presentation\"\n >\n {child}\n </div>\n ),\n key: `group-header-${flatItem.groupId}`,\n };\n }\n case 'suggestion': {\n const ariaDescribedBy = flatItem.groupId\n ? toGroupLabelId(flatItem.groupId)\n : undefined;\n\n return {\n child: (\n <Suggestion\n {...flatItem.data}\n trailing={flatItem.data.trailing ?? trailing}\n aria-describedby={ariaDescribedBy}\n />\n ),\n key: `${flatItem.data.value ?? flatItem.data.displayValue ?? ''}`,\n };\n }\n case 'react-node': {\n const groupLabelId = flatItem.groupId\n ? toGroupLabelId(flatItem.groupId)\n : undefined;\n let child = flatItem.node;\n let key = '';\n\n if (\n isValidElement<{\n 'aria-describedby'?: string;\n }>(flatItem.node) &&\n groupLabelId\n ) {\n // Merge with any existing aria-describedby from the consumer element.\n const existing =\n (flatItem.node.props as Record<string, unknown>)[\n 'aria-describedby'\n ] ?? '';\n const merged = existing ? `${existing} ${groupLabelId}` : groupLabelId;\n\n child = cloneElement(flatItem.node, {\n 'aria-describedby': merged,\n });\n key = `react-node-${flatItem.node.key}`;\n }\n\n return { child, key };\n }\n }\n}\n\nfunction SuggestionContent(\n props: Readonly<{\n optionVirtualizer: Virtualizer<HTMLDivElement, Element>;\n flattenedSuggestions: FlattenedSuggestionItem[];\n isSliced: boolean;\n controlProps: ButtonProps<'button'>;\n }>,\n) {\n const { optionVirtualizer, flattenedSuggestions, isSliced, controlProps } =\n props;\n\n const intl = useIntl();\n const {\n term,\n editorView,\n autoSuggestions,\n recentSuggestionValues,\n pinnedSuggestionValues,\n logicalOperatorSuggestionValues,\n pastedContentSuggestionValues,\n searchSuggestionValues,\n fallbackKeySuggestionValues,\n statementSuggestionValues,\n filterFieldId,\n parserConfig,\n isValidSearch,\n } = useFilterFieldContext();\n\n const { trailing } = autoSuggestions;\n\n const showLogicalOperators = logicalOperatorSuggestionValues.length > 0;\n const showRecents = recentSuggestionValues.length > 0;\n const showPinned = pinnedSuggestionValues.length > 0;\n const showFallbackKeySuggestions = fallbackKeySuggestionValues.length > 0;\n const showStatementSuggestions = statementSuggestionValues.length > 0;\n const showSearchSuggestions =\n isValidSearch?.current &&\n searchSuggestionValues.length > 0 &&\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n (parserConfig?.searchConversion ?? false);\n const showPastedContentSuggestions = pastedContentSuggestionValues.length > 0;\n\n const showBuiltInSuggestions =\n showRecents ||\n showPinned ||\n showLogicalOperators ||\n showPastedContentSuggestions ||\n showSearchSuggestions ||\n showFallbackKeySuggestions ||\n showStatementSuggestions;\n\n const isEmpty = editorView?.state.doc.toString() === '';\n const childrenCount = flattenedSuggestions.length;\n\n if (childrenCount === 0 && !showBuiltInSuggestions) {\n return (\n <Suggestion\n trailing=\"\"\n displayValue={intl.formatMessage(\n filterFieldMessages.suggestions.noSuggestions,\n )}\n />\n );\n }\n return (\n <div id={`suggestions-${filterFieldId}`}>\n {childrenCount > 0 ? (\n <CSSHighlight\n term={term ?? ''}\n // Two highlight targets: the primary value text and any details\n // element flagged matchable (see `matchableSuggestionDetails` in\n // Suggestion.css.ts). `:not(:has(mark))` keeps the highlight off\n // elements that already contain a hand-rendered <mark>.\n selector={`.${suggestionStyles.value}:not(:has(mark)), .${suggestionStyles.matchableSuggestionDetails}:not(:has(mark))`}\n highlightName=\"filterfield-suggestions-highlight\"\n >\n <div\n style={{\n width: '100%',\n position: 'relative',\n height: optionVirtualizer.getTotalSize(),\n display: 'grid',\n // Array.from is used instead of .map() because measurementsCache can be sparse, causing gaps between options.\n gridTemplateRows: Array.from(\n optionVirtualizer.measurementsCache,\n (el) => `${el?.size ?? 32}px`,\n ).join(' '),\n }}\n key={`wrapper-${childrenCount}`}\n >\n {optionVirtualizer.getVirtualItems().map((virtualRow) => {\n const flatItem = flattenedSuggestions[virtualRow.index];\n const { child, key: suggestionKey } =\n renderFlattenedSuggestionItem(flatItem, trailing);\n\n return (\n <div\n key={`${virtualRow.key}-${suggestionKey}`}\n className={clsx(\n 'strato-filter-field-suggestion',\n suggestionStyles.virtualizedSuggestion,\n )}\n // data-index is required for the virtualizer to map the measure\n // element correctly to the measured index.\n data-index={virtualRow.index}\n style={{\n gridRow: virtualRow.index + 1,\n minWidth: 0,\n height: 'fit-content',\n }}\n ref={(el) => {\n optionVirtualizer.measureElement(el);\n }}\n >\n {child}\n </div>\n );\n })}\n </div>\n </CSSHighlight>\n ) : null}\n {isSliced && (\n <div role=\"presentation\">\n <Button {...controlProps} />\n </div>\n )}\n {showBuiltInSuggestions && (\n <>\n <PastedContentSuggestionGroup />\n <FallbackKeySuggestionGroup />\n <LogicalOperatorSuggestionsGroup />\n {showSearchSuggestions && !isEmpty && <SearchSuggestionGroup />}\n <CSSHighlight\n className={suggestionGroupStyles.builtInSuggestionsContainer}\n term={editorView?.state.doc.toString() ?? ''}\n selector={`.${suggestionStyles.value}`}\n highlightName=\"filterfield-suggestions-highlight\"\n >\n <RecentSuggestionGroup />\n <PinnedSuggestionGroup />\n </CSSHighlight>\n {showSearchSuggestions && isEmpty && <SearchSuggestionGroup />}\n </>\n )}\n </div>\n );\n}\n\n// Popper modifier to sync the max-height of the suggestions overlay\nconst heightModifier: Modifier<'filterfield-height-handler', object> = {\n name: 'filterfield-height-handler',\n enabled: true,\n fn: ({ state }: ModifierArguments<object>): void => {\n const viewportHeight = Math.max(\n document.documentElement.clientHeight || 0,\n window.innerHeight || 0,\n );\n\n const maxHeightBase = Math.max(viewportHeight / 2, 320);\n state.styles.popper.maxHeight = `${\n maxHeightBase - state.rects.reference.height - 20\n }px`;\n },\n phase: 'beforeWrite',\n requires: ['computeStyles'],\n};\n\n/**\n * Accepted properties for FilterFieldSuggestions.\n * @public\n */\nexport type FilterFieldSuggestionsProps = WithChildren &\n StylingProps &\n DataTestId &\n BehaviorTrackingProps & {\n /** Whether the suggestions are loading. If true, a loading indicator is shown and otherwise the suggestions are shown. */\n loading?: boolean;\n };\n\n// Animation variants for the Suggestions component\nconst suggestionsAnimationVariants: Variants = {\n inital: {\n translateY: '-10px',\n // Compensate the parent scaling the content to 0.8. Due to round errors when the height gets taller\n // the content sometimes got larger than the intended which lead to a \"vertigo\" effect. By adding\n // 0.05 we can counteract that effect somewhat.\n scaleY: 1 / 0.85,\n opacity: 0,\n },\n default: {\n translateY: 0,\n scaleY: 1,\n opacity: 1,\n },\n exit: {\n translateY: '-5px',\n opacity: 0,\n },\n};\n\nfunction getSuggestionsCount(\n defaultSuggestionsCount: number | { empty: number; filled: number },\n isEmpty: boolean,\n): number {\n if (typeof defaultSuggestionsCount === 'number') {\n return defaultSuggestionsCount;\n }\n return defaultSuggestionsCount[isEmpty ? 'empty' : 'filled'];\n}\n\n/**\n * Compound component of the FilterField to apply suggestions.\n * @public\n */\nexport const Suggestions = (props: FilterFieldSuggestionsProps) => {\n const {\n loading,\n children,\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n ...remainingProps\n }: FilterFieldSuggestionsProps = props;\n const [behavioralTrackingProps] = useBehavioralTrackingProps(remainingProps);\n\n const { autoSuggestions, defaultSuggestionsCount, triggerRef, editorView } =\n useFilterFieldContext();\n\n const intl = useIntl();\n\n const transition = useOverlayTransition(true);\n\n const parentRef = useRef<HTMLDivElement | null>(null);\n\n const childrenArray = useMemo(() => Children.toArray(children), [children]);\n\n const { flattenedSuggestionItems, groupMetadata } = useMemo(\n () =>\n flattenSuggestions([\n ...Object.values(autoSuggestions.groupedSuggestions ?? {}).filter(\n (group) => group && (group.suggestions?.length ?? 0) > 0,\n ),\n ...childrenArray,\n ]),\n [autoSuggestions.groupedSuggestions, childrenArray],\n );\n\n const isEmpty = editorView?.state.doc.toString() === '';\n\n const suggestionsCount = getSuggestionsCount(\n defaultSuggestionsCount,\n isEmpty,\n );\n\n const {\n items: slicedSuggestions,\n isSliced,\n controlProps,\n } = useShowMore({\n items: flattenedSuggestionItems,\n primaryCount: suggestionsCount,\n sliceFn: sliceFlattenedSuggestions,\n });\n\n const optionVirtualizer = useVirtualizer({\n count: slicedSuggestions.length,\n getScrollElement: () => parentRef.current,\n overscan: 5,\n estimateSize: () => 32,\n });\n\n const suggestionsRef = useRef<HTMLDivElement | null>(null);\n\n const { styles: positioningStyles } = usePopper(\n triggerRef,\n suggestionsRef.current,\n {\n placement: 'bottom-start',\n modifiers: [heightModifier],\n },\n );\n\n return (\n <Surface\n className={clsx(consumerClassName, styles.suggestionsOverlay)}\n style={consumerStyle}\n elevation=\"floating\"\n ref={suggestionsRef}\n data-testid={dataTestId}\n {...behavioralTrackingProps}\n >\n <AriaLiveInfo flattenedSuggestionItems={flattenedSuggestionItems} />\n {groupMetadata.length > 0 && (\n <VisuallyHidden>\n {groupMetadata.map(({ groupId, label }) => (\n <span key={groupId} id={toGroupLabelId(groupId)}>\n {label}\n </span>\n ))}\n </VisuallyHidden>\n )}\n <div\n className={styles.suggestionsScrollContainerWrapper}\n role=\"listbox\"\n aria-expanded=\"true\"\n aria-label={intl.formatMessage(\n filterFieldMessages.suggestions.a11y.ariaLabel,\n )}\n >\n <motion.div\n className={clsx(\n styles.suggestionsScrollContainer,\n 'strato-filter-field-suggestions',\n )}\n ref={parentRef}\n style={{ maxHeight: positioningStyles.popper.maxHeight }}\n variants={suggestionsAnimationVariants}\n initial=\"inital\"\n animate=\"default\"\n exit=\"exit\"\n transition={transition}\n >\n {loading ? (\n <Flex\n role=\"presentation\"\n justifyContent=\"start\"\n px={8}\n py={6}\n className={suggestionStyles.suggestionsLoading}\n >\n <ProgressCircle size=\"small\" aria-label=\"Loading suggestions\" />\n <FormattedMessage {...filterFieldMessages.suggestions.loading} />\n </Flex>\n ) : (\n <SuggestionContent\n optionVirtualizer={optionVirtualizer}\n flattenedSuggestions={slicedSuggestions}\n isSliced={isSliced}\n controlProps={controlProps}\n />\n )}\n </motion.div>\n </div>\n </Surface>\n );\n};\n\nSuggestions.displayValue = 'FilterField.Suggestions';\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import type { Modifier, ModifierArguments } from '@popperjs/core';\nimport { useVirtualizer, type Virtualizer } from '@tanstack/react-virtual';\nimport clsx from 'clsx';\nimport { motion, type Variants } from 'framer-motion';\nimport {\n Children,\n cloneElement,\n isValidElement,\n type ReactNode,\n useMemo,\n useRef,\n} from 'react';\nimport { FormattedMessage, useIntl } from 'react-intl';\n\nimport { usePopper } from '../../../overlays/utils/use-popper-compat.js';\nimport useOverlayTransition from '../hooks/useOverlayTransition.js';\nimport {\n sliceFlattenedSuggestions,\n useShowMore,\n} from '../hooks/useShowMore.js';\nimport { filterFieldMessages } from '../messages.js';\nimport { AriaLiveInfo } from './AriaLiveInfo.js';\nimport { FallbackKeySuggestionGroup } from './FallbackKeySuggestions.js';\nimport { LogicalOperatorSuggestionsGroup } from './LogicalOperatorSuggestions.js';\nimport { PastedContentSuggestionGroup } from './PastedContentSuggestions.js';\nimport {\n PinnedSuggestionGroup,\n RecentSuggestionGroup,\n} from './RecentPinnedSuggestionItem.js';\nimport { SearchSuggestionGroup } from './SearchSuggestions.js';\nimport * as suggestionStyles from './Suggestion.sty.js';\nimport { Suggestion } from './Suggestion.js';\nimport type { FlattenedSuggestionItem } from './Suggestion.types.js';\nimport * as suggestionGroupStyles from './SuggestionGroup.sty.js';\nimport { SuggestionGroupLabel } from './SuggestionGroupLabel.js';\nimport * as styles from './SuggestionsOverlay.sty.js';\nimport { Button, ButtonProps } from '../../../buttons/button/Button.js';\nimport { ProgressCircle } from '../../../content/progress/ProgressCircle.js';\nimport { VisuallyHidden } from '../../../core/components/visually-hidden/VisuallyHidden.js';\nimport { useBehavioralTrackingProps } from '../../../core/hooks/useBehavioralTrackingProps.js';\nimport type { BehaviorTrackingProps } from '../../../core/types/behavior-tracking-props.js';\nimport type { DataTestId } from '../../../core/types/data-props.js';\nimport type { StylingProps } from '../../../core/types/styling-props.js';\nimport type { WithChildren } from '../../../core/types/with-children.js';\nimport { Flex } from '../../../layouts/flex/Flex.js';\nimport { Surface } from '../../../layouts/surface/Surface.js';\nimport { CSSHighlight } from '../components/CSSHighlight.js';\nimport { useFilterFieldContext } from '../hooks/useFilterFieldContext.js';\nimport { flattenSuggestions } from '../utils/suggestions-utils/flatten-suggestions.js';\n\n/**\n * Converts a groupId to a valid HTML id attribute value safe for use in aria-describedby.\n * HTML ids must not contain spaces (space is the delimiter in aria-describedby token lists).\n */\nfunction toGroupLabelId(groupId: string): string {\n return `group-label-${groupId.replace(/\\s+/g, '-')}`;\n}\n\nfunction renderFlattenedSuggestionItem(\n flatItem: FlattenedSuggestionItem,\n trailing: string | undefined,\n): { child: ReactNode; key: string } {\n switch (flatItem.kind) {\n case 'group-header': {\n let child: ReactNode;\n\n if (isValidElement(flatItem.label)) {\n child = flatItem.label;\n } else if (flatItem.label) {\n child = <SuggestionGroupLabel>{flatItem.label}</SuggestionGroupLabel>;\n } else {\n child = null;\n }\n\n return {\n child: (\n <div\n className={suggestionGroupStyles.groupHeaderSeparator}\n role=\"presentation\"\n >\n {child}\n </div>\n ),\n key: `group-header-${flatItem.groupId}`,\n };\n }\n case 'suggestion': {\n const ariaDescribedBy = flatItem.groupId\n ? toGroupLabelId(flatItem.groupId)\n : undefined;\n\n return {\n child: (\n <Suggestion\n {...flatItem.data}\n trailing={flatItem.data.trailing ?? trailing}\n aria-describedby={ariaDescribedBy}\n />\n ),\n key: `${flatItem.data.value ?? flatItem.data.displayValue ?? ''}`,\n };\n }\n case 'react-node': {\n const groupLabelId = flatItem.groupId\n ? toGroupLabelId(flatItem.groupId)\n : undefined;\n let child = flatItem.node;\n let key = '';\n\n if (\n isValidElement<{\n 'aria-describedby'?: string;\n }>(flatItem.node) &&\n groupLabelId\n ) {\n // Merge with any existing aria-describedby from the consumer element.\n const existing =\n (flatItem.node.props as Record<string, unknown>)[\n 'aria-describedby'\n ] ?? '';\n const merged = existing ? `${existing} ${groupLabelId}` : groupLabelId;\n\n child = cloneElement(flatItem.node, {\n 'aria-describedby': merged,\n });\n key = `react-node-${flatItem.node.key}`;\n }\n\n return { child, key };\n }\n }\n}\n\nfunction SuggestionContent(\n props: Readonly<{\n optionVirtualizer: Virtualizer<HTMLDivElement, Element>;\n flattenedSuggestions: FlattenedSuggestionItem[];\n isSliced: boolean;\n controlProps: ButtonProps<'button'>;\n }>,\n) {\n const { optionVirtualizer, flattenedSuggestions, isSliced, controlProps } =\n props;\n\n const intl = useIntl();\n const {\n term,\n editorView,\n autoSuggestions,\n recentSuggestionValues,\n pinnedSuggestionValues,\n logicalOperatorSuggestionValues,\n pastedContentSuggestionValues,\n searchSuggestionValues,\n fallbackKeySuggestionValues,\n statementSuggestionValues,\n parserConfig,\n isValidSearch,\n } = useFilterFieldContext();\n\n const { trailing } = autoSuggestions;\n\n const showLogicalOperators = logicalOperatorSuggestionValues.length > 0;\n const showRecents = recentSuggestionValues.length > 0;\n const showPinned = pinnedSuggestionValues.length > 0;\n const showFallbackKeySuggestions = fallbackKeySuggestionValues.length > 0;\n const showStatementSuggestions = statementSuggestionValues.length > 0;\n const showSearchSuggestions =\n isValidSearch?.current &&\n searchSuggestionValues.length > 0 &&\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n (parserConfig?.searchConversion ?? false);\n const showPastedContentSuggestions = pastedContentSuggestionValues.length > 0;\n\n const showBuiltInSuggestions =\n showRecents ||\n showPinned ||\n showLogicalOperators ||\n showPastedContentSuggestions ||\n showSearchSuggestions ||\n showFallbackKeySuggestions ||\n showStatementSuggestions;\n\n const isEmpty = editorView?.state.doc.toString() === '';\n const childrenCount = flattenedSuggestions.length;\n\n if (childrenCount === 0 && !showBuiltInSuggestions) {\n return (\n <Suggestion\n trailing=\"\"\n displayValue={intl.formatMessage(\n filterFieldMessages.suggestions.noSuggestions,\n )}\n />\n );\n }\n return (\n <div>\n {childrenCount > 0 ? (\n <CSSHighlight\n term={term ?? ''}\n // Two highlight targets: the primary value text and any details\n // element flagged matchable (see `matchableSuggestionDetails` in\n // Suggestion.css.ts). `:not(:has(mark))` keeps the highlight off\n // elements that already contain a hand-rendered <mark>.\n selector={`.${suggestionStyles.value}:not(:has(mark)), .${suggestionStyles.matchableSuggestionDetails}:not(:has(mark))`}\n highlightName=\"filterfield-suggestions-highlight\"\n >\n <div\n style={{\n width: '100%',\n position: 'relative',\n height: optionVirtualizer.getTotalSize(),\n display: 'grid',\n // Array.from is used instead of .map() because measurementsCache can be sparse, causing gaps between options.\n gridTemplateRows: Array.from(\n optionVirtualizer.measurementsCache,\n (el) => `${el?.size ?? 32}px`,\n ).join(' '),\n }}\n key={`wrapper-${childrenCount}`}\n >\n {optionVirtualizer.getVirtualItems().map((virtualRow) => {\n const flatItem = flattenedSuggestions[virtualRow.index];\n const { child, key: suggestionKey } =\n renderFlattenedSuggestionItem(flatItem, trailing);\n\n return (\n <div\n key={`${virtualRow.key}-${suggestionKey}`}\n className={clsx(\n 'strato-filter-field-suggestion',\n suggestionStyles.virtualizedSuggestion,\n )}\n // data-index is required for the virtualizer to map the measure\n // element correctly to the measured index.\n data-index={virtualRow.index}\n style={{\n gridRow: virtualRow.index + 1,\n minWidth: 0,\n height: 'fit-content',\n }}\n ref={(el) => {\n optionVirtualizer.measureElement(el);\n }}\n >\n {child}\n </div>\n );\n })}\n </div>\n </CSSHighlight>\n ) : null}\n {isSliced && (\n <div role=\"presentation\">\n <Button {...controlProps} />\n </div>\n )}\n {showBuiltInSuggestions && (\n <>\n <PastedContentSuggestionGroup />\n <FallbackKeySuggestionGroup />\n <LogicalOperatorSuggestionsGroup />\n {showSearchSuggestions && !isEmpty && <SearchSuggestionGroup />}\n <CSSHighlight\n className={suggestionGroupStyles.builtInSuggestionsContainer}\n term={editorView?.state.doc.toString() ?? ''}\n selector={`.${suggestionStyles.value}`}\n highlightName=\"filterfield-suggestions-highlight\"\n >\n <RecentSuggestionGroup />\n <PinnedSuggestionGroup />\n </CSSHighlight>\n {showSearchSuggestions && isEmpty && <SearchSuggestionGroup />}\n </>\n )}\n </div>\n );\n}\n\n// Popper modifier to sync the max-height of the suggestions overlay\nconst heightModifier: Modifier<'filterfield-height-handler', object> = {\n name: 'filterfield-height-handler',\n enabled: true,\n fn: ({ state }: ModifierArguments<object>): void => {\n const viewportHeight = Math.max(\n document.documentElement.clientHeight || 0,\n window.innerHeight || 0,\n );\n\n const maxHeightBase = Math.max(viewportHeight / 2, 320);\n state.styles.popper.maxHeight = `${\n maxHeightBase - state.rects.reference.height - 20\n }px`;\n },\n phase: 'beforeWrite',\n requires: ['computeStyles'],\n};\n\n/**\n * Accepted properties for FilterFieldSuggestions.\n * @public\n */\nexport type FilterFieldSuggestionsProps = WithChildren &\n StylingProps &\n DataTestId &\n BehaviorTrackingProps & {\n /** Whether the suggestions are loading. If true, a loading indicator is shown and otherwise the suggestions are shown. */\n loading?: boolean;\n };\n\n// Animation variants for the Suggestions component\nconst suggestionsAnimationVariants: Variants = {\n inital: {\n translateY: '-10px',\n // Compensate the parent scaling the content to 0.8. Due to round errors when the height gets taller\n // the content sometimes got larger than the intended which lead to a \"vertigo\" effect. By adding\n // 0.05 we can counteract that effect somewhat.\n scaleY: 1 / 0.85,\n opacity: 0,\n },\n default: {\n translateY: 0,\n scaleY: 1,\n opacity: 1,\n },\n exit: {\n translateY: '-5px',\n opacity: 0,\n },\n};\n\nfunction getSuggestionsCount(\n defaultSuggestionsCount: number | { empty: number; filled: number },\n isEmpty: boolean,\n): number {\n if (typeof defaultSuggestionsCount === 'number') {\n return defaultSuggestionsCount;\n }\n return defaultSuggestionsCount[isEmpty ? 'empty' : 'filled'];\n}\n\n/**\n * Compound component of the FilterField to apply suggestions.\n * @public\n */\nexport const Suggestions = (props: FilterFieldSuggestionsProps) => {\n const {\n loading,\n children,\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n ...remainingProps\n }: FilterFieldSuggestionsProps = props;\n const [behavioralTrackingProps] = useBehavioralTrackingProps(remainingProps);\n\n const { autoSuggestions, defaultSuggestionsCount, triggerRef, editorView } =\n useFilterFieldContext();\n\n const transition = useOverlayTransition(true);\n\n const parentRef = useRef<HTMLDivElement | null>(null);\n\n const childrenArray = useMemo(() => Children.toArray(children), [children]);\n\n const { flattenedSuggestionItems, groupMetadata } = useMemo(\n () =>\n flattenSuggestions([\n ...Object.values(autoSuggestions.groupedSuggestions ?? {}).filter(\n (group) => group && (group.suggestions?.length ?? 0) > 0,\n ),\n ...childrenArray,\n ]),\n [autoSuggestions.groupedSuggestions, childrenArray],\n );\n\n const isEmpty = editorView?.state.doc.toString() === '';\n\n const suggestionsCount = getSuggestionsCount(\n defaultSuggestionsCount,\n isEmpty,\n );\n\n const {\n items: slicedSuggestions,\n isSliced,\n controlProps,\n } = useShowMore({\n items: flattenedSuggestionItems,\n primaryCount: suggestionsCount,\n sliceFn: sliceFlattenedSuggestions,\n });\n\n const optionVirtualizer = useVirtualizer({\n count: slicedSuggestions.length,\n getScrollElement: () => parentRef.current,\n overscan: 5,\n estimateSize: () => 32,\n });\n\n const suggestionsRef = useRef<HTMLDivElement | null>(null);\n\n const { styles: positioningStyles } = usePopper(\n triggerRef,\n suggestionsRef.current,\n {\n placement: 'bottom-start',\n modifiers: [heightModifier],\n },\n );\n\n return (\n <Surface\n className={clsx(consumerClassName, styles.suggestionsOverlay)}\n style={consumerStyle}\n elevation=\"floating\"\n ref={suggestionsRef}\n data-testid={dataTestId}\n {...behavioralTrackingProps}\n >\n <AriaLiveInfo flattenedSuggestionItems={flattenedSuggestionItems} />\n {groupMetadata.length > 0 && (\n <VisuallyHidden>\n {groupMetadata.map(({ groupId, label }) => (\n <span key={groupId} id={toGroupLabelId(groupId)}>\n {label}\n </span>\n ))}\n </VisuallyHidden>\n )}\n <div className={styles.suggestionsScrollContainerWrapper}>\n <motion.div\n className={clsx(\n styles.suggestionsScrollContainer,\n 'strato-filter-field-suggestions',\n )}\n ref={parentRef}\n style={{ maxHeight: positioningStyles.popper.maxHeight }}\n variants={suggestionsAnimationVariants}\n initial=\"inital\"\n animate=\"default\"\n exit=\"exit\"\n transition={transition}\n >\n {loading ? (\n <Flex\n role=\"presentation\"\n justifyContent=\"start\"\n px={8}\n py={6}\n className={suggestionStyles.suggestionsLoading}\n >\n <ProgressCircle size=\"small\" aria-label=\"Loading suggestions\" />\n <FormattedMessage {...filterFieldMessages.suggestions.loading} />\n </Flex>\n ) : (\n <SuggestionContent\n optionVirtualizer={optionVirtualizer}\n flattenedSuggestions={slicedSuggestions}\n isSliced={isSliced}\n controlProps={controlProps}\n />\n )}\n </motion.div>\n </div>\n </Surface>\n );\n};\n\nSuggestions.displayValue = 'FilterField.Suggestions';\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,23 +1,23 @@
1
- ._ssu5rt1-3-11-3 {
1
+ ._ssu5rt1-3-12-0 {
2
2
  display: flex;
3
3
  flex-direction: column;
4
4
  gap: var(--dt-spacings-size-4, 4px);
5
5
  container-type: inline-size;
6
- container-name: _ssu5rt0-3-11-3;
6
+ container-name: _ssu5rt0-3-12-0;
7
7
  transform-origin: top;
8
8
  }
9
- ._ssu5rt2-3-11-3 {
9
+ ._ssu5rt2-3-12-0 {
10
10
  box-sizing: border-box;
11
11
  padding: 0;
12
12
  }
13
- ._ssu5rt2-3-11-3._ssu5rt2-3-11-3 {
14
- --_1igzksy0-3-11-3: var(--dt-borders-radius-surface-subdued, 9px);
13
+ ._ssu5rt2-3-12-0._ssu5rt2-3-12-0 {
14
+ --_1igzksy0-3-12-0: var(--dt-borders-radius-surface-subdued, 9px);
15
15
  }
16
- ._ssu5rt3-3-11-3 {
16
+ ._ssu5rt3-3-12-0 {
17
17
  overflow: hidden;
18
18
  height: 100%;
19
19
  }
20
- ._ssu5rt4-3-11-3 {
20
+ ._ssu5rt4-3-12-0 {
21
21
  padding: var(--dt-spacings-size-4, 4px);
22
22
  height: 100%;
23
23
  max-height: 101vh;
@@ -1,12 +1,15 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { motion } from "framer-motion";
3
3
  import { forwardRef } from "react";
4
+ import { useIntl } from "react-intl";
4
5
  import * as styles from "./SuggestionsOverlay.sty.js";
5
6
  import { SuggestionTips } from "./SuggestionTips.js";
6
7
  import { OverlayContainer } from "../../../core/components/OverlayContainer.js";
7
8
  import { useOverlayStacking } from "../../../core/hooks/useOverlayStacking.js";
8
9
  import { OverlayStackingProvider } from "../../../core/providers/OverlayStackingProvider.js";
10
+ import { useFilterFieldContext } from "../hooks/useFilterFieldContext.js";
9
11
  import useOverlayTransition from "../hooks/useOverlayTransition.js";
12
+ import { filterFieldMessages } from "../messages.js";
10
13
  const suggestionsOverlayAnimationVariants = {
11
14
  inital: {
12
15
  opacity: 0.4,
@@ -31,6 +34,8 @@ const SuggestionsOverlay = forwardRef((props, forwardedRef) => {
31
34
  } = props;
32
35
  const overlayContainerProps = useOverlayStacking(void 0, "dropdown");
33
36
  const transition = useOverlayTransition(false);
37
+ const { filterFieldId } = useFilterFieldContext();
38
+ const intl = useIntl();
34
39
  return /* @__PURE__ */ jsx(
35
40
  OverlayContainer,
36
41
  {
@@ -42,6 +47,12 @@ const SuggestionsOverlay = forwardRef((props, forwardedRef) => {
42
47
  "div",
43
48
  {
44
49
  ref: forwardedRef,
50
+ id: `suggestions-${filterFieldId}`,
51
+ role: "listbox",
52
+ "aria-expanded": "true",
53
+ "aria-label": intl.formatMessage(
54
+ filterFieldMessages.suggestions.a11y.ariaLabel
55
+ ),
45
56
  "data-testid": dataTestId,
46
57
  onPointerDown: (event) => {
47
58
  event.preventDefault();
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/filters/filter-field/suggestions/SuggestionsOverlay.tsx"],
4
- "sourcesContent": ["import { motion, type Variants } from 'framer-motion';\nimport { forwardRef } from 'react';\n\n\nimport * as styles from './SuggestionsOverlay.sty.js';\nimport { SuggestionTips } from './SuggestionTips.js';\nimport { OverlayContainer } from '../../../core/components/OverlayContainer.js';\nimport { useOverlayStacking } from '../../../core/hooks/useOverlayStacking.js';\nimport { OverlayStackingProvider } from '../../../core/providers/OverlayStackingProvider.js';\nimport type { AriaLabelingProps } from '../../../core/types/a11y-props.js';\nimport type { DataTestId } from '../../../core/types/data-props.js';\nimport type { MaskingProps } from '../../../core/types/masking-props.js';\nimport type { WithChildren } from '../../../core/types/with-children.js';\nimport type { ModalAriaProps } from '../../../overlays/hooks/useOverlayWithTrigger.js';\nimport useOverlayTransition from '../hooks/useOverlayTransition.js';\n\n/**\n * Accepted properties for FilterField suggestion overlay.\n * @public\n */\nexport interface SuggestionsOverlayProps\n extends AriaLabelingProps,\n WithChildren,\n DataTestId,\n MaskingProps {\n /**\n * Properties for connecting the overlay to the overlay trigger.\n * Includes styles and accessibility attributes.\n */\n overlayProps?: ModalAriaProps;\n}\n\n// Animation variants for the SuggestionsOverlay component\nconst suggestionsOverlayAnimationVariants: Variants = {\n inital: {\n opacity: 0.4,\n scaleY: 0.8,\n },\n default: {\n opacity: 1,\n scaleY: 1,\n },\n exit: {\n opacity: 0,\n scaleY: 0.8,\n },\n};\n\n/**\n * @public\n */\nexport const SuggestionsOverlay = forwardRef<\n HTMLDivElement,\n SuggestionsOverlayProps\n>((props, forwardedRef) => {\n const {\n children,\n overlayProps,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n } = props;\n\n const overlayContainerProps = useOverlayStacking(undefined, 'dropdown');\n const transition = useOverlayTransition(false);\n\n return (\n <OverlayContainer\n className=\"suggestions-overlay\"\n {...overlayContainerProps}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n >\n <OverlayStackingProvider>\n <div\n ref={forwardedRef}\n data-testid={dataTestId}\n onPointerDown={(event) => {\n // Prevent default on the suggestions overlay to avoid filter field\n // losing focus when clicking on an entry in the overlay.\n event.preventDefault();\n }}\n {...overlayProps}\n >\n <motion.div\n className={styles.suggestionsOverlayWrapper}\n variants={suggestionsOverlayAnimationVariants}\n initial=\"inital\"\n animate=\"default\"\n exit=\"exit\"\n transition={transition}\n >\n {children}\n <SuggestionTips />\n </motion.div>\n </div>\n </OverlayStackingProvider>\n </OverlayContainer>\n );\n});\n"],
5
- "mappings": "AAoFU,SASE,KATF;AApFV,SAAS,cAA6B;AACtC,SAAS,kBAAkB;AAG3B,YAAY,YAAY;AACxB,SAAS,sBAAsB;AAC/B,SAAS,wBAAwB;AACjC,SAAS,0BAA0B;AACnC,SAAS,+BAA+B;AAMxC,OAAO,0BAA0B;AAmBjC,MAAM,sCAAgD;AAAA,EACpD,QAAQ;AAAA,IACN,SAAS;AAAA,IACT,QAAQ;AAAA,EACV;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,IACT,QAAQ;AAAA,EACV;AAAA,EACA,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,QAAQ;AAAA,EACV;AACF;AAKO,MAAM,qBAAqB,WAGhC,CAAC,OAAO,iBAAiB;AACzB,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,EACtB,IAAI;AAEJ,QAAM,wBAAwB,mBAAmB,QAAW,UAAU;AACtE,QAAM,aAAa,qBAAqB,KAAK;AAE7C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACT,GAAG;AAAA,MACJ,mBAAiB;AAAA,MACjB,oBAAkB;AAAA,MAElB,8BAAC,2BACC;AAAA,QAAC;AAAA;AAAA,UACC,KAAK;AAAA,UACL,eAAa;AAAA,UACb,eAAe,CAAC,UAAU;AAGxB,kBAAM,eAAe;AAAA,UACvB;AAAA,UACC,GAAG;AAAA,UAEJ;AAAA,YAAC,OAAO;AAAA,YAAP;AAAA,cACC,WAAW,OAAO;AAAA,cAClB,UAAU;AAAA,cACV,SAAQ;AAAA,cACR,SAAQ;AAAA,cACR,MAAK;AAAA,cACL;AAAA,cAEC;AAAA;AAAA,gBACD,oBAAC,kBAAe;AAAA;AAAA;AAAA,UAClB;AAAA;AAAA,MACF,GACF;AAAA;AAAA,EACF;AAEJ,CAAC;",
4
+ "sourcesContent": ["import { motion, type Variants } from 'framer-motion';\nimport { forwardRef } from 'react';\nimport { useIntl } from 'react-intl';\n\nimport * as styles from './SuggestionsOverlay.sty.js';\nimport { SuggestionTips } from './SuggestionTips.js';\nimport { OverlayContainer } from '../../../core/components/OverlayContainer.js';\nimport { useOverlayStacking } from '../../../core/hooks/useOverlayStacking.js';\nimport { OverlayStackingProvider } from '../../../core/providers/OverlayStackingProvider.js';\nimport type { AriaLabelingProps } from '../../../core/types/a11y-props.js';\nimport type { DataTestId } from '../../../core/types/data-props.js';\nimport type { MaskingProps } from '../../../core/types/masking-props.js';\nimport type { WithChildren } from '../../../core/types/with-children.js';\nimport type { ModalAriaProps } from '../../../overlays/hooks/useOverlayWithTrigger.js';\nimport { useFilterFieldContext } from '../hooks/useFilterFieldContext.js';\nimport useOverlayTransition from '../hooks/useOverlayTransition.js';\nimport { filterFieldMessages } from '../messages.js';\n\n/**\n * Accepted properties for FilterField suggestion overlay.\n * @public\n */\nexport interface SuggestionsOverlayProps\n extends AriaLabelingProps,\n WithChildren,\n DataTestId,\n MaskingProps {\n /**\n * Properties for connecting the overlay to the overlay trigger.\n * Includes styles and accessibility attributes.\n */\n overlayProps?: ModalAriaProps;\n}\n\n// Animation variants for the SuggestionsOverlay component\nconst suggestionsOverlayAnimationVariants: Variants = {\n inital: {\n opacity: 0.4,\n scaleY: 0.8,\n },\n default: {\n opacity: 1,\n scaleY: 1,\n },\n exit: {\n opacity: 0,\n scaleY: 0.8,\n },\n};\n\n/**\n * @public\n */\nexport const SuggestionsOverlay = forwardRef<\n HTMLDivElement,\n SuggestionsOverlayProps\n>((props, forwardedRef) => {\n const {\n children,\n overlayProps,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n } = props;\n\n const overlayContainerProps = useOverlayStacking(undefined, 'dropdown');\n const transition = useOverlayTransition(false);\n const { filterFieldId } = useFilterFieldContext();\n const intl = useIntl();\n\n return (\n <OverlayContainer\n className=\"suggestions-overlay\"\n {...overlayContainerProps}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n >\n <OverlayStackingProvider>\n <div\n ref={forwardedRef}\n id={`suggestions-${filterFieldId}`}\n role=\"listbox\"\n aria-expanded=\"true\"\n aria-label={intl.formatMessage(\n filterFieldMessages.suggestions.a11y.ariaLabel,\n )}\n data-testid={dataTestId}\n onPointerDown={(event) => {\n // Prevent default on the suggestions overlay to avoid filter field\n // losing focus when clicking on an entry in the overlay.\n event.preventDefault();\n }}\n {...overlayProps}\n >\n <motion.div\n className={styles.suggestionsOverlayWrapper}\n variants={suggestionsOverlayAnimationVariants}\n initial=\"inital\"\n animate=\"default\"\n exit=\"exit\"\n transition={transition}\n >\n {children}\n <SuggestionTips />\n </motion.div>\n </div>\n </OverlayStackingProvider>\n </OverlayContainer>\n );\n});\n"],
5
+ "mappings": "AA8FU,SASE,KATF;AA9FV,SAAS,cAA6B;AACtC,SAAS,kBAAkB;AAC3B,SAAS,eAAe;AAExB,YAAY,YAAY;AACxB,SAAS,sBAAsB;AAC/B,SAAS,wBAAwB;AACjC,SAAS,0BAA0B;AACnC,SAAS,+BAA+B;AAMxC,SAAS,6BAA6B;AACtC,OAAO,0BAA0B;AACjC,SAAS,2BAA2B;AAmBpC,MAAM,sCAAgD;AAAA,EACpD,QAAQ;AAAA,IACN,SAAS;AAAA,IACT,QAAQ;AAAA,EACV;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,IACT,QAAQ;AAAA,EACV;AAAA,EACA,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,QAAQ;AAAA,EACV;AACF;AAKO,MAAM,qBAAqB,WAGhC,CAAC,OAAO,iBAAiB;AACzB,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,EACtB,IAAI;AAEJ,QAAM,wBAAwB,mBAAmB,QAAW,UAAU;AACtE,QAAM,aAAa,qBAAqB,KAAK;AAC7C,QAAM,EAAE,cAAc,IAAI,sBAAsB;AAChD,QAAM,OAAO,QAAQ;AAErB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACT,GAAG;AAAA,MACJ,mBAAiB;AAAA,MACjB,oBAAkB;AAAA,MAElB,8BAAC,2BACC;AAAA,QAAC;AAAA;AAAA,UACC,KAAK;AAAA,UACL,IAAI,eAAe,aAAa;AAAA,UAChC,MAAK;AAAA,UACL,iBAAc;AAAA,UACd,cAAY,KAAK;AAAA,YACf,oBAAoB,YAAY,KAAK;AAAA,UACvC;AAAA,UACA,eAAa;AAAA,UACb,eAAe,CAAC,UAAU;AAGxB,kBAAM,eAAe;AAAA,UACvB;AAAA,UACC,GAAG;AAAA,UAEJ;AAAA,YAAC,OAAO;AAAA,YAAP;AAAA,cACC,WAAW,OAAO;AAAA,cAClB,UAAU;AAAA,cACV,SAAQ;AAAA,cACR,SAAQ;AAAA,cACR,MAAK;AAAA,cACL;AAAA,cAEC;AAAA;AAAA,gBACD,oBAAC,kBAAe;AAAA;AAAA;AAAA,UAClB;AAAA;AAAA,MACF,GACF;AAAA;AAAA,EACF;AAEJ,CAAC;",
6
6
  "names": []
7
7
  }
@@ -1,9 +1,9 @@
1
1
  import "./SuggestionsOverlay.css";
2
- var suggestionsOverlay = "_ssu5rt2-3-11-3";
3
- var suggestionsOverlayWrapper = "_ssu5rt1-3-11-3";
4
- var suggestionsOverlayWrapperContainer = "_ssu5rt0-3-11-3";
5
- var suggestionsScrollContainer = "_ssu5rt4-3-11-3";
6
- var suggestionsScrollContainerWrapper = "_ssu5rt3-3-11-3";
2
+ var suggestionsOverlay = "_ssu5rt2-3-12-0";
3
+ var suggestionsOverlayWrapper = "_ssu5rt1-3-12-0";
4
+ var suggestionsOverlayWrapperContainer = "_ssu5rt0-3-12-0";
5
+ var suggestionsScrollContainer = "_ssu5rt4-3-12-0";
6
+ var suggestionsScrollContainerWrapper = "_ssu5rt3-3-12-0";
7
7
  export {
8
8
  suggestionsOverlay,
9
9
  suggestionsOverlayWrapper,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/filters/filter-field/suggestions/SuggestionsOverlay.css.ts"],
4
- "sourcesContent": ["import './SuggestionsOverlay.css';\nexport var suggestionsOverlay = '_ssu5rt2-3-11-3';\nexport var suggestionsOverlayWrapper = '_ssu5rt1-3-11-3';\nexport var suggestionsOverlayWrapperContainer = '_ssu5rt0-3-11-3';\nexport var suggestionsScrollContainer = '_ssu5rt4-3-11-3';\nexport var suggestionsScrollContainerWrapper = '_ssu5rt3-3-11-3';"],
4
+ "sourcesContent": ["import './SuggestionsOverlay.css';\nexport var suggestionsOverlay = '_ssu5rt2-3-12-0';\nexport var suggestionsOverlayWrapper = '_ssu5rt1-3-12-0';\nexport var suggestionsOverlayWrapperContainer = '_ssu5rt0-3-12-0';\nexport var suggestionsScrollContainer = '_ssu5rt4-3-12-0';\nexport var suggestionsScrollContainerWrapper = '_ssu5rt3-3-12-0';"],
5
5
  "mappings": "AAAA,OAAO;AACA,IAAI,qBAAqB;AACzB,IAAI,4BAA4B;AAChC,IAAI,qCAAqC;AACzC,IAAI,6BAA6B;AACjC,IAAI,oCAAoC;",
6
6
  "names": []
7
7
  }
@@ -3,6 +3,7 @@ import { EditorState } from "@codemirror/state";
3
3
  import { escapeSuggestion } from "./escape-suggestion.js";
4
4
  import { getStatementStatus } from "./get-statement-status.js";
5
5
  import { getTextFromRange } from "./get-text.js";
6
+ import { overlappingSuggestionRangeBrand } from "./suggestions-utils/get-suggestions.js";
6
7
  import {
7
8
  getStatementCursorAtPosition,
8
9
  hasNextSibling,
@@ -179,6 +180,9 @@ function getSuggestionTransaction(suggestionValue, range, shouldEscapeSuggestion
179
180
  }
180
181
  } else if (range) {
181
182
  ({ from: replaceFrom, to: replaceUntil } = range);
183
+ if (replaceFrom === replaceUntil && token.range.from === replaceFrom && range[overlappingSuggestionRangeBrand] === true) {
184
+ replaceUntil = token.range.to;
185
+ }
182
186
  }
183
187
  insertionRange = {
184
188
  from: Math.min(currentDocumentLength, replaceFrom),
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/filters/filter-field/utils/get-suggestion-transaction.ts"],
4
- "sourcesContent": ["import { syntaxTree } from '@codemirror/language';\nimport { EditorState } from '@codemirror/state';\n\nimport { escapeSuggestion } from './escape-suggestion.js';\nimport { getStatementStatus } from './get-statement-status.js';\nimport { getTextFromRange } from './get-text.js';\nimport {\n getStatementCursorAtPosition,\n hasNextSibling,\n hasNextStatement,\n} from './tree-navigation.js';\nimport { isLogicalOperator } from './tree-node-guards.js';\nimport { filterFieldLanguageExtension } from '../parser/filterfield-language.js';\nimport type { FilterFieldSuggestionProps } from '../suggestions/Suggestion.types.js';\nimport type { FilterFieldSuggestionsContext } from '../suggestions/suggestions-extension.js';\nimport type {\n FilterFieldNodeBase,\n FilterFieldStatementNode,\n FilterFieldValueNode,\n} from '../types/tree-nodes.js';\n\n/** @internal */\nexport function getSuggestionTransaction(\n suggestionValue: string,\n range: FilterFieldNodeBase['range'] | undefined,\n shouldEscapeSuggestion: boolean | undefined,\n trailing: string | undefined,\n insertionStrategy: FilterFieldSuggestionProps['insertionStrategy'],\n cursorBeforeTrailing: boolean | undefined,\n suggestionsContext: FilterFieldSuggestionsContext,\n editorState: EditorState,\n) {\n const { token, currentStatement: _currentStatement } = suggestionsContext;\n const currentSelection = editorState.selection;\n const { head } = currentSelection.main;\n\n let currentStatement = _currentStatement;\n if (!currentStatement) {\n currentStatement = {\n type: 'Statement',\n range: { from: token.range.from, to: token.range.to },\n };\n }\n\n const autoEscapeSuggestion =\n (insertionStrategy === 'replace-token' &&\n shouldEscapeSuggestion === undefined) ||\n shouldEscapeSuggestion;\n\n const currentDocumentLength = editorState.doc.toString().length;\n\n const isWildcardSuggestionWithValuePlaceholder = trailing?.includes('value');\n const isInclusionOperatorSuggestion = ['in (', 'not in ('].includes(\n suggestionValue,\n ); // these values come from our defined defaultComparisonOperatorSuggestions values when we have autosuggestions\n const isSuggestionWithWildcard = ['= *', '!= *'].includes(suggestionValue);\n\n const nextStatement = hasNextStatement(head, editorState);\n\n // Handle insertion of the inclusion operator suggestion separately,\n // as we have to take care of potential existing values and brackets and\n // always want to place the cursor right before the closing bracket so users\n // can start/continue typing values.\n if (isInclusionOperatorSuggestion && range === undefined) {\n return getSuggestionTransactionForInclusionOperatorSuggestion(\n suggestionValue,\n currentStatement,\n token,\n trailing,\n head,\n currentDocumentLength,\n editorState,\n nextStatement,\n );\n }\n\n const appliedSuggestionValue = `${\n autoEscapeSuggestion && !isWildcardSuggestionWithValuePlaceholder\n ? escapeSuggestion(suggestionValue)\n : suggestionValue\n }${trailing ?? ''}`;\n\n const trimmedValue = appliedSuggestionValue.trimEnd();\n const isExistsOperator = trimmedValue.match(/^(= \\*)$|^(!= \\*)$/);\n const addSpace = appliedSuggestionValue.slice(-1) === ' ';\n\n let insertedValue = appliedSuggestionValue;\n let replaceFrom = token.range.from;\n let replaceUntil = token.range.to;\n let nextSibling = false;\n let isLastListValue = false;\n let startsWithOperator = false;\n let endsWithOperator = false;\n let hasSpaceAfterQuotes = false;\n\n const followedByOpeningParenthesis = _isFollowedByOpeningBracket(\n editorState,\n head,\n );\n\n // If the token at the cursor position is a list, only replace single list values if the cursor\n // is positioned inside the list's brackets.\n if (\n token.type === 'List' &&\n head > token.range.from &&\n head < token.range.to &&\n insertionStrategy === 'replace-token'\n ) {\n replaceFrom = head;\n replaceUntil = head;\n }\n\n const { value } = currentStatement ?? {};\n const isValueToken =\n token.range.from === value?.range.from &&\n token.range.to === value?.range.to;\n\n // If the current statement is undefined, it is definitely not followed by any\n // other node and we want to automatically add the default trailing space\n // (unless overridden) when applying a suggestion.\n // If there is a statement, we want to override the added space in certain cases.\n if (currentStatement) {\n nextSibling = !nextStatement\n ? hasNextSibling(head, editorState, { ignorePositionOperators: true })\n : nextStatement;\n startsWithOperator =\n isValueToken &&\n currentStatement.comparisonOperator?.type === 'ComparisonOperator' &&\n (currentStatement.comparisonOperator.value === 'starts-with' ||\n currentStatement.comparisonOperator.value === 'contains');\n endsWithOperator =\n isValueToken &&\n currentStatement.comparisonOperator?.type === 'ComparisonOperator' &&\n (currentStatement.comparisonOperator.value === 'ends-with' ||\n currentStatement.comparisonOperator.value === 'contains');\n\n if (nextSibling && insertionIsLastListValue(head, editorState)) {\n // We need this flag to not move the cursor outside of the brackets when\n // adding a value as the last value in a list. (e.g. a in (a|))\n isLastListValue = true;\n }\n\n // If the applied suggestion is an exists operator (= * | != *), we want to also\n // replace the value of the current filter statement.\n // e.g.:\n // foo =| bar\n // insert \"= *\"\n // foo = *\n if (\n insertionStrategy === 'replace-statement' ||\n (isExistsOperator &&\n currentStatement.value &&\n !followedByOpeningParenthesis) ||\n startsWithOperator\n ) {\n nextSibling = nextStatement;\n replaceUntil = currentStatement.range.to;\n }\n\n insertedValue =\n nextSibling || insertionStrategy === 'insert'\n ? trimmedValue\n : appliedSuggestionValue;\n const containsOperator = startsWithOperator && endsWithOperator;\n\n // When replacing a value that has a starts-with operator, we want to replace\n // the value while keeping the operator. If a space is supposed to be added, we\n // have to add it after the position operator.\n if (\n (startsWithOperator || endsWithOperator) &&\n insertionStrategy === 'replace-token'\n ) {\n let { from, to } = {\n from: currentStatement.range.to,\n to: currentStatement.range.to,\n };\n\n if (currentStatement.value) {\n ({ from, to } = currentStatement.value.range);\n }\n\n if (\n startsWithOperator &&\n ((head > from && head < to) || (!containsOperator && head === from))\n ) {\n startsWithOperator = false;\n if (shouldAppendTrailingWildcard(trimmedValue)) {\n insertedValue =\n containsOperator && !trimmedValue.startsWith('*')\n ? `*${trimmedValue}*`\n : `${trimmedValue}*`;\n\n insertedValue = `${insertedValue}${\n !nextSibling && addSpace ? ' ' : ''\n }`;\n }\n } else {\n if (head === from || (startsWithOperator && head === to)) {\n replaceFrom = from;\n insertedValue = appliedSuggestionValue;\n }\n\n replaceUntil = to;\n startsWithOperator = false;\n nextSibling = nextStatement;\n }\n }\n } else {\n insertedValue = nextSibling ? trimmedValue : appliedSuggestionValue;\n }\n\n let insertionRange: { from: number; to: number };\n\n switch (insertionStrategy) {\n case 'insert':\n insertionRange = {\n from: head,\n to: head,\n };\n break;\n case 'replace-statement': {\n const editorState = EditorState.create({\n doc: appliedSuggestionValue,\n extensions: [filterFieldLanguageExtension],\n });\n const suggestionCursor = getStatementCursorAtPosition(\n appliedSuggestionValue.length,\n editorState,\n );\n\n if (getStatementStatus(suggestionCursor) !== 'complete') {\n insertedValue = appliedSuggestionValue;\n nextSibling = false;\n }\n\n insertionRange = {\n from: Math.min(\n currentDocumentLength,\n currentStatement?.range.from ?? head,\n ),\n to: Math.min(currentDocumentLength, currentStatement?.range.to ?? head),\n };\n\n if (isLogicalOperator(token)) {\n nextSibling = nextStatement;\n if (nextSibling) {\n insertedValue = trimmedValue;\n }\n\n insertionRange = {\n from: Math.min(currentDocumentLength, token.range.from),\n to: Math.min(currentDocumentLength, token.range.to),\n };\n }\n break;\n }\n case 'replace-all':\n // Reset inserted value to the initial suggestion value, including all trailing characters.\n insertedValue = appliedSuggestionValue;\n nextSibling = false;\n insertionRange = {\n from: 0,\n to: editorState.doc.toString().length,\n };\n break;\n default: {\n if (\n (token.type === 'String' ||\n token.type === 'Key' ||\n token.type === 'Error') &&\n range === undefined\n ) {\n // The current token may end before the enclosing statement, e.g. '\"foo\"| ' -> current token '\"foo\"' doesn't\n // include the space, which is included in the statement's range.\n // We need to check whether there's a space after the current token to properly insert the suggestion.\n if (token.range.to < (currentStatement?.range.to ?? 0)) {\n const characterAfterToken = getTextFromRange(\n {\n from: token.range.to,\n to: token.range.to + 1,\n },\n editorState.doc.toString(),\n );\n\n // If there's already a space after the current token, handle insertion as if there was a next sibling.\n if (characterAfterToken === ' ') {\n nextSibling = true;\n insertedValue = trimmedValue;\n }\n }\n\n if (head > token.range.from && head < token.range.to) {\n const isTokenEscaped = token.textValue.match(/^\"[^\"]*\"$/);\n const isAppliedSuggestionValueEscaped =\n appliedSuggestionValue.match(/^\"[^\"]*\"$/) ??\n appliedSuggestionValue.match(/^\"[^\"]*\" $/);\n\n if (isTokenEscaped && !isAppliedSuggestionValueEscaped) {\n replaceFrom = token.range.from + 1;\n replaceUntil = token.range.to;\n\n const addSpace = insertedValue.slice(-1) !== ' ';\n\n insertedValue = addSpace ? `${trimmedValue}\" ` : `${trimmedValue}\"`;\n hasSpaceAfterQuotes = addSpace;\n }\n }\n } else if (range) {\n ({ from: replaceFrom, to: replaceUntil } = range);\n }\n\n insertionRange = {\n from: Math.min(currentDocumentLength, replaceFrom),\n to: Math.min(currentDocumentLength, replaceUntil),\n };\n }\n }\n\n // Public insertion ranges can be provided in reverse order. Normalize before\n // calculating selection bounds so CodeMirror does not reject the transaction.\n insertionRange = getSortedRange(insertionRange);\n\n let anchor =\n insertionStrategy === 'insert'\n ? head + insertedValue.length\n : Math.min(currentDocumentLength, insertionRange.from) +\n (nextSibling && !isLastListValue\n ? appliedSuggestionValue.length\n : insertedValue.length) +\n (insertionStrategy === 'replace-token' ? +startsWithOperator : 0) +\n +hasSpaceAfterQuotes;\n\n // When a custom suggestion with trailing `value` is provided, we automatically adjust the selection\n // so the placeholder is selected to have the same behaviour as for ootb wildcard suggestions.\n if (cursorBeforeTrailing || isWildcardSuggestionWithValuePlaceholder) {\n const trailingLength = trailing ? trailing.length : 0;\n anchor -=\n trailingLength +\n (autoEscapeSuggestion &&\n !(isSuggestionWithWildcard || isWildcardSuggestionWithValuePlaceholder)\n ? 1\n : 0);\n }\n\n // Additional safeguard:\n // Clamp anchor to be within the new document length to prevent\n // \"Selection points outside of document\" errors.\n const newDocLength =\n currentDocumentLength -\n (insertionRange.to - insertionRange.from) +\n insertedValue.length;\n anchor = Math.max(0, Math.min(anchor, newDocLength));\n\n return {\n changes: {\n ...insertionRange,\n insert: insertedValue,\n },\n selection: {\n anchor,\n // Select the value placeholder if inserting a wildcard suggestion with a placeholder\n ...(isWildcardSuggestionWithValuePlaceholder ? { head: anchor + 5 } : {}), // 5 = 'value'.length;\n },\n };\n}\n\n/**\n * Handles the insertion and cursor position of the inclusion operator\n * suggestions (\"in ()\" and \"not in ()\")\n */\nfunction getSuggestionTransactionForInclusionOperatorSuggestion(\n suggestionValue: string,\n currentStatement: FilterFieldStatementNode | undefined,\n token: FilterFieldValueNode,\n trailing: string | undefined,\n head: number,\n currentDocumentLength: number,\n editorState: EditorState,\n nextStatement: boolean | undefined,\n) {\n let insertedValue = suggestionValue;\n\n // If a value already exists we have to take care of potential brackets\n if (currentStatement?.value) {\n let stringifiedValue = currentStatement.value.textValue;\n\n // we remove potential brackets from the value so that they are not\n // added twice (e.g. \"a in (b\" should be \"a in (b)\" not \"a in ((b)\")\n // (For type List we know that the brackets are present, but the value could be an\n // error node with incomplete / no brackets)\n stringifiedValue = stringifiedValue\n .replace(/^\\(/, '') // remove starting opening bracket if present\n .replace(/(?<!\\\\)\\)$/, ''); // only remove a closing bracket if it's not escaped\n\n if (currentStatement.value.type !== 'List') {\n // if the value is not a list, we also want to clean up any extra\n // spaces that might be present e.g. \"a in (b \" -> \"a in (b)\"\n insertedValue = `${insertedValue}${stringifiedValue.trimEnd()}`;\n } else {\n insertedValue = `${insertedValue}${stringifiedValue}`;\n }\n }\n\n // We want to insert / reinsert both operator and value\n // as we have to place the brackets before and after the value\n let insertionRange = {\n from: Math.min(\n currentDocumentLength,\n currentStatement?.comparisonOperator?.range.from ?? token.range.from,\n ),\n to: Math.min(\n currentDocumentLength,\n currentStatement?.value?.range.to ?? token.range.to,\n ),\n };\n\n insertionRange = getSortedRange(insertionRange);\n let anchor = insertionRange.from + insertedValue.length;\n\n // Add the trailing closing bracket\n insertedValue = `${insertedValue}${trailing}`;\n\n // Only add a space at the end if there is not yet a space or another statement\n // after the current statement\n const nextSibling = !nextStatement\n ? hasNextSibling(head, editorState, { ignorePositionOperators: true })\n : nextStatement;\n insertedValue = `${insertedValue.trimEnd()}${!nextSibling ? ' ' : ''}`;\n\n // Additional safeguard:\n // Clamp anchor to be within the new document length to prevent\n // \"Selection points outside of document\" errors.\n const newDocLength =\n currentDocumentLength -\n (insertionRange.to - insertionRange.from) +\n insertedValue.length;\n anchor = Math.max(0, Math.min(anchor, newDocLength));\n\n return {\n changes: {\n ...insertionRange,\n insert: insertedValue,\n },\n selection: {\n anchor: anchor,\n },\n };\n}\n\n/**\n * Returns the given range with the from and to values sorted so that from is always smaller than to.\n * This is only needed in some edge cases (e.g. when choosing the in operator suggestions here \"foo | b\"),\n * but to be safe we want sort the range.\n * @internal\n */\nfunction getSortedRange(range: { from: number; to: number }) {\n if (range.to < range.from) {\n return { from: range.to, to: range.from };\n }\n\n return range;\n}\n\nfunction shouldAppendTrailingWildcard(value: string) {\n return !value.endsWith('*') && !value.endsWith('*\"');\n}\n\n/**\n * Check if the next node after cursor position contains an opening bracket.\n * @internal\n */\nexport function _isFollowedByOpeningBracket(\n editorState: EditorState,\n head: number,\n) {\n const tree = syntaxTree(editorState);\n\n let cursor = tree.cursorAt(head, 1);\n\n if (cursor.name === 'OpeningBracket') {\n return true;\n }\n\n if (cursor.node.name === 'Filter' || cursor.node.name === 'FilterStatement') {\n cursor = tree.cursorAt(head, -1);\n }\n\n if (!cursor.next()) {\n return false;\n }\n\n if (cursor.name === 'OpeningBracket' && cursor.node.from >= head) {\n return true;\n }\n\n if (cursor.name === '\u26A0') {\n if (cursor.next() && cursor.node.from >= head) {\n // the first check handles cases like `foo = (bar` and the FilterGroup check handles cases like `foo = (bar, baz)`, that already includes an opening bracket\n // @ts-expect-error the cursor name type changed by calling next, but typescript doesn't recognize it\n if (cursor.name === 'OpeningBracket' || cursor.name === 'FilterGroup') {\n return true;\n }\n }\n }\n\n if (cursor.name === 'FilterIncludesValue') {\n if (cursor.next() && cursor.node.from >= head) {\n // if the node is a list node, we know it already includes an opening bracket and otherwise we check if it's just an opening bracket node\n // @ts-expect-error the cursor name type changed by calling next, but typescript doesn't recognize it\n if (cursor.name === 'OpeningBracket' || cursor.name === 'List') {\n return true;\n }\n }\n }\n\n // keep track of the cursor at the next position for cases like (a = 1) (a = b) at index 6 or foo = bar (test, bla) at index 8\n const cursorAtExactPosition = tree.cursorAt(head + 1, 1);\n\n if (cursorAtExactPosition.node.name === 'OpeningBracket') {\n return true;\n }\n\n cursorAtExactPosition.parent();\n\n if (\n cursorAtExactPosition.node.name !== 'Filter' &&\n cursor.node.name === 'FilterGroup'\n ) {\n return true;\n }\n\n return false;\n}\n\n/**\n * Check whether the node that is be entered at the given position is the last value in a list.\n * @internal\n */\nexport function insertionIsLastListValue(\n cursorPosition: number,\n editorState: EditorState,\n): boolean {\n const tree = syntaxTree(editorState);\n const cursor = tree.cursorAt(cursorPosition, 1);\n\n // If the cursor is right before a closing bracket, we definitely have a next sibling.\n if (\n cursor.node.name === 'ClosingBracket' &&\n cursorPosition === cursor.node.from\n ) {\n if (cursor.parent() && cursor.name === 'List') {\n return true;\n }\n }\n\n return false;\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { syntaxTree } from '@codemirror/language';\nimport { EditorState } from '@codemirror/state';\n\nimport { escapeSuggestion } from './escape-suggestion.js';\nimport { getStatementStatus } from './get-statement-status.js';\nimport { getTextFromRange } from './get-text.js';\nimport { overlappingSuggestionRangeBrand } from './suggestions-utils/get-suggestions.js';\nimport {\n getStatementCursorAtPosition,\n hasNextSibling,\n hasNextStatement,\n} from './tree-navigation.js';\nimport { isLogicalOperator } from './tree-node-guards.js';\nimport { filterFieldLanguageExtension } from '../parser/filterfield-language.js';\nimport type { FilterFieldSuggestionProps } from '../suggestions/Suggestion.types.js';\nimport type { FilterFieldSuggestionsContext } from '../suggestions/suggestions-extension.js';\nimport type {\n FilterFieldNodeBase,\n FilterFieldStatementNode,\n FilterFieldValueNode,\n} from '../types/tree-nodes.js';\n\n/** @internal */\nexport function getSuggestionTransaction(\n suggestionValue: string,\n range: FilterFieldNodeBase['range'] | undefined,\n shouldEscapeSuggestion: boolean | undefined,\n trailing: string | undefined,\n insertionStrategy: FilterFieldSuggestionProps['insertionStrategy'],\n cursorBeforeTrailing: boolean | undefined,\n suggestionsContext: FilterFieldSuggestionsContext,\n editorState: EditorState,\n) {\n const { token, currentStatement: _currentStatement } = suggestionsContext;\n const currentSelection = editorState.selection;\n const { head } = currentSelection.main;\n\n let currentStatement = _currentStatement;\n if (!currentStatement) {\n currentStatement = {\n type: 'Statement',\n range: { from: token.range.from, to: token.range.to },\n };\n }\n\n const autoEscapeSuggestion =\n (insertionStrategy === 'replace-token' &&\n shouldEscapeSuggestion === undefined) ||\n shouldEscapeSuggestion;\n\n const currentDocumentLength = editorState.doc.toString().length;\n\n const isWildcardSuggestionWithValuePlaceholder = trailing?.includes('value');\n const isInclusionOperatorSuggestion = ['in (', 'not in ('].includes(\n suggestionValue,\n ); // these values come from our defined defaultComparisonOperatorSuggestions values when we have autosuggestions\n const isSuggestionWithWildcard = ['= *', '!= *'].includes(suggestionValue);\n\n const nextStatement = hasNextStatement(head, editorState);\n\n // Handle insertion of the inclusion operator suggestion separately,\n // as we have to take care of potential existing values and brackets and\n // always want to place the cursor right before the closing bracket so users\n // can start/continue typing values.\n if (isInclusionOperatorSuggestion && range === undefined) {\n return getSuggestionTransactionForInclusionOperatorSuggestion(\n suggestionValue,\n currentStatement,\n token,\n trailing,\n head,\n currentDocumentLength,\n editorState,\n nextStatement,\n );\n }\n\n const appliedSuggestionValue = `${\n autoEscapeSuggestion && !isWildcardSuggestionWithValuePlaceholder\n ? escapeSuggestion(suggestionValue)\n : suggestionValue\n }${trailing ?? ''}`;\n\n const trimmedValue = appliedSuggestionValue.trimEnd();\n const isExistsOperator = trimmedValue.match(/^(= \\*)$|^(!= \\*)$/);\n const addSpace = appliedSuggestionValue.slice(-1) === ' ';\n\n let insertedValue = appliedSuggestionValue;\n let replaceFrom = token.range.from;\n let replaceUntil = token.range.to;\n let nextSibling = false;\n let isLastListValue = false;\n let startsWithOperator = false;\n let endsWithOperator = false;\n let hasSpaceAfterQuotes = false;\n\n const followedByOpeningParenthesis = _isFollowedByOpeningBracket(\n editorState,\n head,\n );\n\n // If the token at the cursor position is a list, only replace single list values if the cursor\n // is positioned inside the list's brackets.\n if (\n token.type === 'List' &&\n head > token.range.from &&\n head < token.range.to &&\n insertionStrategy === 'replace-token'\n ) {\n replaceFrom = head;\n replaceUntil = head;\n }\n\n const { value } = currentStatement ?? {};\n const isValueToken =\n token.range.from === value?.range.from &&\n token.range.to === value?.range.to;\n\n // If the current statement is undefined, it is definitely not followed by any\n // other node and we want to automatically add the default trailing space\n // (unless overridden) when applying a suggestion.\n // If there is a statement, we want to override the added space in certain cases.\n if (currentStatement) {\n nextSibling = !nextStatement\n ? hasNextSibling(head, editorState, { ignorePositionOperators: true })\n : nextStatement;\n startsWithOperator =\n isValueToken &&\n currentStatement.comparisonOperator?.type === 'ComparisonOperator' &&\n (currentStatement.comparisonOperator.value === 'starts-with' ||\n currentStatement.comparisonOperator.value === 'contains');\n endsWithOperator =\n isValueToken &&\n currentStatement.comparisonOperator?.type === 'ComparisonOperator' &&\n (currentStatement.comparisonOperator.value === 'ends-with' ||\n currentStatement.comparisonOperator.value === 'contains');\n\n if (nextSibling && insertionIsLastListValue(head, editorState)) {\n // We need this flag to not move the cursor outside of the brackets when\n // adding a value as the last value in a list. (e.g. a in (a|))\n isLastListValue = true;\n }\n\n // If the applied suggestion is an exists operator (= * | != *), we want to also\n // replace the value of the current filter statement.\n // e.g.:\n // foo =| bar\n // insert \"= *\"\n // foo = *\n if (\n insertionStrategy === 'replace-statement' ||\n (isExistsOperator &&\n currentStatement.value &&\n !followedByOpeningParenthesis) ||\n startsWithOperator\n ) {\n nextSibling = nextStatement;\n replaceUntil = currentStatement.range.to;\n }\n\n insertedValue =\n nextSibling || insertionStrategy === 'insert'\n ? trimmedValue\n : appliedSuggestionValue;\n const containsOperator = startsWithOperator && endsWithOperator;\n\n // When replacing a value that has a starts-with operator, we want to replace\n // the value while keeping the operator. If a space is supposed to be added, we\n // have to add it after the position operator.\n if (\n (startsWithOperator || endsWithOperator) &&\n insertionStrategy === 'replace-token'\n ) {\n let { from, to } = {\n from: currentStatement.range.to,\n to: currentStatement.range.to,\n };\n\n if (currentStatement.value) {\n ({ from, to } = currentStatement.value.range);\n }\n\n if (\n startsWithOperator &&\n ((head > from && head < to) || (!containsOperator && head === from))\n ) {\n startsWithOperator = false;\n if (shouldAppendTrailingWildcard(trimmedValue)) {\n insertedValue =\n containsOperator && !trimmedValue.startsWith('*')\n ? `*${trimmedValue}*`\n : `${trimmedValue}*`;\n\n insertedValue = `${insertedValue}${\n !nextSibling && addSpace ? ' ' : ''\n }`;\n }\n } else {\n if (head === from || (startsWithOperator && head === to)) {\n replaceFrom = from;\n insertedValue = appliedSuggestionValue;\n }\n\n replaceUntil = to;\n startsWithOperator = false;\n nextSibling = nextStatement;\n }\n }\n } else {\n insertedValue = nextSibling ? trimmedValue : appliedSuggestionValue;\n }\n\n let insertionRange: { from: number; to: number };\n\n switch (insertionStrategy) {\n case 'insert':\n insertionRange = {\n from: head,\n to: head,\n };\n break;\n case 'replace-statement': {\n const editorState = EditorState.create({\n doc: appliedSuggestionValue,\n extensions: [filterFieldLanguageExtension],\n });\n const suggestionCursor = getStatementCursorAtPosition(\n appliedSuggestionValue.length,\n editorState,\n );\n\n if (getStatementStatus(suggestionCursor) !== 'complete') {\n insertedValue = appliedSuggestionValue;\n nextSibling = false;\n }\n\n insertionRange = {\n from: Math.min(\n currentDocumentLength,\n currentStatement?.range.from ?? head,\n ),\n to: Math.min(currentDocumentLength, currentStatement?.range.to ?? head),\n };\n\n if (isLogicalOperator(token)) {\n nextSibling = nextStatement;\n if (nextSibling) {\n insertedValue = trimmedValue;\n }\n\n insertionRange = {\n from: Math.min(currentDocumentLength, token.range.from),\n to: Math.min(currentDocumentLength, token.range.to),\n };\n }\n break;\n }\n case 'replace-all':\n // Reset inserted value to the initial suggestion value, including all trailing characters.\n insertedValue = appliedSuggestionValue;\n nextSibling = false;\n insertionRange = {\n from: 0,\n to: editorState.doc.toString().length,\n };\n break;\n default: {\n if (\n (token.type === 'String' ||\n token.type === 'Key' ||\n token.type === 'Error') &&\n range === undefined\n ) {\n // The current token may end before the enclosing statement, e.g. '\"foo\"| ' -> current token '\"foo\"' doesn't\n // include the space, which is included in the statement's range.\n // We need to check whether there's a space after the current token to properly insert the suggestion.\n if (token.range.to < (currentStatement?.range.to ?? 0)) {\n const characterAfterToken = getTextFromRange(\n {\n from: token.range.to,\n to: token.range.to + 1,\n },\n editorState.doc.toString(),\n );\n\n // If there's already a space after the current token, handle insertion as if there was a next sibling.\n if (characterAfterToken === ' ') {\n nextSibling = true;\n insertedValue = trimmedValue;\n }\n }\n\n if (head > token.range.from && head < token.range.to) {\n const isTokenEscaped = token.textValue.match(/^\"[^\"]*\"$/);\n const isAppliedSuggestionValueEscaped =\n appliedSuggestionValue.match(/^\"[^\"]*\"$/) ??\n appliedSuggestionValue.match(/^\"[^\"]*\" $/);\n\n if (isTokenEscaped && !isAppliedSuggestionValueEscaped) {\n replaceFrom = token.range.from + 1;\n replaceUntil = token.range.to;\n\n const addSpace = insertedValue.slice(-1) !== ' ';\n\n insertedValue = addSpace ? `${trimmedValue}\" ` : `${trimmedValue}\"`;\n hasSpaceAfterQuotes = addSpace;\n }\n }\n } else if (range) {\n ({ from: replaceFrom, to: replaceUntil } = range);\n // A branded zero-width range means the range came from the overlapping-suggestions\n // path (e.g. \"a \" \u2192 subToken {from:2,to:2}) and the component hasn't re-rendered\n // yet after the user typed a character (e.g. \"=\") that became a live token at that\n // position. Extend replaceUntil to cover the live token so the suggestion replaces\n // what was typed rather than inserting alongside it.\n // The brand check (`overlappingSuggestionRangeBrand`) is essential: it prevents\n // extending a consumer-supplied insertionRange={{ from: N, to: N }}, which is an\n // intentional insertion point that must never be widened into a replacement.\n if (\n replaceFrom === replaceUntil &&\n token.range.from === replaceFrom &&\n (range as Record<symbol, unknown>)[\n overlappingSuggestionRangeBrand\n ] === true\n ) {\n replaceUntil = token.range.to;\n }\n }\n\n insertionRange = {\n from: Math.min(currentDocumentLength, replaceFrom),\n to: Math.min(currentDocumentLength, replaceUntil),\n };\n }\n }\n\n // Public insertion ranges can be provided in reverse order. Normalize before\n // calculating selection bounds so CodeMirror does not reject the transaction.\n insertionRange = getSortedRange(insertionRange);\n\n let anchor =\n insertionStrategy === 'insert'\n ? head + insertedValue.length\n : Math.min(currentDocumentLength, insertionRange.from) +\n (nextSibling && !isLastListValue\n ? appliedSuggestionValue.length\n : insertedValue.length) +\n (insertionStrategy === 'replace-token' ? +startsWithOperator : 0) +\n +hasSpaceAfterQuotes;\n\n // When a custom suggestion with trailing `value` is provided, we automatically adjust the selection\n // so the placeholder is selected to have the same behaviour as for ootb wildcard suggestions.\n if (cursorBeforeTrailing || isWildcardSuggestionWithValuePlaceholder) {\n const trailingLength = trailing ? trailing.length : 0;\n anchor -=\n trailingLength +\n (autoEscapeSuggestion &&\n !(isSuggestionWithWildcard || isWildcardSuggestionWithValuePlaceholder)\n ? 1\n : 0);\n }\n\n // Additional safeguard:\n // Clamp anchor to be within the new document length to prevent\n // \"Selection points outside of document\" errors.\n const newDocLength =\n currentDocumentLength -\n (insertionRange.to - insertionRange.from) +\n insertedValue.length;\n anchor = Math.max(0, Math.min(anchor, newDocLength));\n\n return {\n changes: {\n ...insertionRange,\n insert: insertedValue,\n },\n selection: {\n anchor,\n // Select the value placeholder if inserting a wildcard suggestion with a placeholder\n ...(isWildcardSuggestionWithValuePlaceholder ? { head: anchor + 5 } : {}), // 5 = 'value'.length;\n },\n };\n}\n\n/**\n * Handles the insertion and cursor position of the inclusion operator\n * suggestions (\"in ()\" and \"not in ()\")\n */\nfunction getSuggestionTransactionForInclusionOperatorSuggestion(\n suggestionValue: string,\n currentStatement: FilterFieldStatementNode | undefined,\n token: FilterFieldValueNode,\n trailing: string | undefined,\n head: number,\n currentDocumentLength: number,\n editorState: EditorState,\n nextStatement: boolean | undefined,\n) {\n let insertedValue = suggestionValue;\n\n // If a value already exists we have to take care of potential brackets\n if (currentStatement?.value) {\n let stringifiedValue = currentStatement.value.textValue;\n\n // we remove potential brackets from the value so that they are not\n // added twice (e.g. \"a in (b\" should be \"a in (b)\" not \"a in ((b)\")\n // (For type List we know that the brackets are present, but the value could be an\n // error node with incomplete / no brackets)\n stringifiedValue = stringifiedValue\n .replace(/^\\(/, '') // remove starting opening bracket if present\n .replace(/(?<!\\\\)\\)$/, ''); // only remove a closing bracket if it's not escaped\n\n if (currentStatement.value.type !== 'List') {\n // if the value is not a list, we also want to clean up any extra\n // spaces that might be present e.g. \"a in (b \" -> \"a in (b)\"\n insertedValue = `${insertedValue}${stringifiedValue.trimEnd()}`;\n } else {\n insertedValue = `${insertedValue}${stringifiedValue}`;\n }\n }\n\n // We want to insert / reinsert both operator and value\n // as we have to place the brackets before and after the value\n let insertionRange = {\n from: Math.min(\n currentDocumentLength,\n currentStatement?.comparisonOperator?.range.from ?? token.range.from,\n ),\n to: Math.min(\n currentDocumentLength,\n currentStatement?.value?.range.to ?? token.range.to,\n ),\n };\n\n insertionRange = getSortedRange(insertionRange);\n let anchor = insertionRange.from + insertedValue.length;\n\n // Add the trailing closing bracket\n insertedValue = `${insertedValue}${trailing}`;\n\n // Only add a space at the end if there is not yet a space or another statement\n // after the current statement\n const nextSibling = !nextStatement\n ? hasNextSibling(head, editorState, { ignorePositionOperators: true })\n : nextStatement;\n insertedValue = `${insertedValue.trimEnd()}${!nextSibling ? ' ' : ''}`;\n\n // Additional safeguard:\n // Clamp anchor to be within the new document length to prevent\n // \"Selection points outside of document\" errors.\n const newDocLength =\n currentDocumentLength -\n (insertionRange.to - insertionRange.from) +\n insertedValue.length;\n anchor = Math.max(0, Math.min(anchor, newDocLength));\n\n return {\n changes: {\n ...insertionRange,\n insert: insertedValue,\n },\n selection: {\n anchor: anchor,\n },\n };\n}\n\n/**\n * Returns the given range with the from and to values sorted so that from is always smaller than to.\n * This is only needed in some edge cases (e.g. when choosing the in operator suggestions here \"foo | b\"),\n * but to be safe we want sort the range.\n * @internal\n */\nfunction getSortedRange(range: { from: number; to: number }) {\n if (range.to < range.from) {\n return { from: range.to, to: range.from };\n }\n\n return range;\n}\n\nfunction shouldAppendTrailingWildcard(value: string) {\n return !value.endsWith('*') && !value.endsWith('*\"');\n}\n\n/**\n * Check if the next node after cursor position contains an opening bracket.\n * @internal\n */\nexport function _isFollowedByOpeningBracket(\n editorState: EditorState,\n head: number,\n) {\n const tree = syntaxTree(editorState);\n\n let cursor = tree.cursorAt(head, 1);\n\n if (cursor.name === 'OpeningBracket') {\n return true;\n }\n\n if (cursor.node.name === 'Filter' || cursor.node.name === 'FilterStatement') {\n cursor = tree.cursorAt(head, -1);\n }\n\n if (!cursor.next()) {\n return false;\n }\n\n if (cursor.name === 'OpeningBracket' && cursor.node.from >= head) {\n return true;\n }\n\n if (cursor.name === '\u26A0') {\n if (cursor.next() && cursor.node.from >= head) {\n // the first check handles cases like `foo = (bar` and the FilterGroup check handles cases like `foo = (bar, baz)`, that already includes an opening bracket\n // @ts-expect-error the cursor name type changed by calling next, but typescript doesn't recognize it\n if (cursor.name === 'OpeningBracket' || cursor.name === 'FilterGroup') {\n return true;\n }\n }\n }\n\n if (cursor.name === 'FilterIncludesValue') {\n if (cursor.next() && cursor.node.from >= head) {\n // if the node is a list node, we know it already includes an opening bracket and otherwise we check if it's just an opening bracket node\n // @ts-expect-error the cursor name type changed by calling next, but typescript doesn't recognize it\n if (cursor.name === 'OpeningBracket' || cursor.name === 'List') {\n return true;\n }\n }\n }\n\n // keep track of the cursor at the next position for cases like (a = 1) (a = b) at index 6 or foo = bar (test, bla) at index 8\n const cursorAtExactPosition = tree.cursorAt(head + 1, 1);\n\n if (cursorAtExactPosition.node.name === 'OpeningBracket') {\n return true;\n }\n\n cursorAtExactPosition.parent();\n\n if (\n cursorAtExactPosition.node.name !== 'Filter' &&\n cursor.node.name === 'FilterGroup'\n ) {\n return true;\n }\n\n return false;\n}\n\n/**\n * Check whether the node that is be entered at the given position is the last value in a list.\n * @internal\n */\nexport function insertionIsLastListValue(\n cursorPosition: number,\n editorState: EditorState,\n): boolean {\n const tree = syntaxTree(editorState);\n const cursor = tree.cursorAt(cursorPosition, 1);\n\n // If the cursor is right before a closing bracket, we definitely have a next sibling.\n if (\n cursor.node.name === 'ClosingBracket' &&\n cursorPosition === cursor.node.from\n ) {\n if (cursor.parent() && cursor.name === 'List') {\n return true;\n }\n }\n\n return false;\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["editorState", "addSpace"]
7
7
  }
@@ -44,6 +44,9 @@ function getTypedOperatorFromCurrentStatement(currentStatement) {
44
44
  const needle = currentStatement?.comparisonOperator ? currentStatement.comparisonOperator.textValue : "";
45
45
  return comparisonOperatorAlias[needle] ?? needle;
46
46
  }
47
+ const overlappingSuggestionRangeBrand = /* @__PURE__ */ Symbol(
48
+ "overlappingSuggestionRange"
49
+ );
47
50
  function getSuggestions({
48
51
  suggestionTypes,
49
52
  overlappingSuggestions,
@@ -132,10 +135,14 @@ function getSuggestions({
132
135
  { includeDetails: false }
133
136
  );
134
137
  if (overlappingSuggestions) {
138
+ const brandedRange = {
139
+ ...overlappingSuggestions.subToken.range
140
+ };
141
+ brandedRange[overlappingSuggestionRangeBrand] = true;
135
142
  comparisonOperatorSuggestions = comparisonOperatorSuggestions.map(
136
143
  (suggestion) => ({
137
144
  ...suggestion,
138
- insertionRange: overlappingSuggestions.subToken.range,
145
+ insertionRange: brandedRange,
139
146
  escapeSuggestion: false
140
147
  })
141
148
  );
@@ -380,6 +387,7 @@ function assignGroupsToSlots({
380
387
  }
381
388
  export {
382
389
  filterSuggestions,
383
- getSuggestions
390
+ getSuggestions,
391
+ overlappingSuggestionRangeBrand
384
392
  };
385
393
  //# sourceMappingURL=get-suggestions.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/filters/filter-field/utils/suggestions-utils/get-suggestions.ts"],
4
- "sourcesContent": ["import type { FilterFieldOverlappingSuggestions } from './get-suggestion-category.js';\nimport {\n getKeySuggestions,\n JSONPATH_PATTERN_PARTIAL,\n} from './key-suggestions.js';\nimport {\n defaultLogicalOperatorSuggestions,\n getComparisonOperatorSuggestions,\n} from './operator-suggestions.js';\nimport { getJSONPathHint, getPastingSuggestion } from './shared-suggestions.js';\nimport type { SuggestionGroup } from './suggestion-group-utils.js';\nimport {\n getSuggestionMatchPriority,\n normalizeSuggestionMatchText,\n suggestionMatchesTerm,\n type SuggestionMatchingOptions,\n} from './suggestion-matching.js';\nimport { getValidValueTypes } from './suggestion-type.js';\nimport {\n getValueSuggestionGroups,\n VALUE_GROUP_ID,\n} from './value-suggestions.js';\nimport type { FilterFieldProps } from '../../FilterField.types.js';\nimport type {\n FilterFieldSuggestion,\n FilterFieldSuggestionProps,\n} from '../../suggestions/Suggestion.types.js';\nimport type {\n FilterFieldGroupedSuggestions,\n FilterFieldSuggestionsCallback,\n} from '../../types/suggestions.js';\nimport type {\n FilterFieldLezerNodeType,\n FilterFieldStatementNode,\n FilterFieldStatementTokenType,\n FilterFieldValueNode,\n} from '../../types/tree-nodes.js';\nimport type {\n FilterFieldComparisonOperators,\n FilterFieldCustomTypes,\n} from '../../types/validation.js';\nimport { NEEDS_ESCAPING_REGEX } from '../escape-suggestion.js';\nimport { KEY_GROUP_ID } from '../validation-utils/normalize-validator-map.js';\nimport type {\n InternalValidatorMap,\n NormalizedKeyConfig,\n} from '../validation-utils/normalize-validator-map.js';\nimport { isWildCardOperator } from '../validation-utils/validation-helper-functions.js';\n\nconst comparisonOperatorAlias: Record<string, string> = {\n '=*': '= *',\n '!=*': '!= *',\n};\n\nfunction getCurrentValueFromToken(token: FilterFieldValueNode): string {\n return token.type === 'String' || token.type === 'Key'\n ? token.value\n : token.textValue;\n}\n\nfunction getValueSuggestionsTypesFromKeyPredicate(\n internalValidatorMap: InternalValidatorMap | undefined,\n currentStatement: FilterFieldStatementNode | undefined,\n): string[] {\n if (!internalValidatorMap || !currentStatement?.key?.value) {\n return [];\n }\n\n const keyConfig: NormalizedKeyConfig | undefined =\n internalValidatorMap.normalizedKeys.byKey.get(currentStatement.key.value);\n\n if (!keyConfig) {\n return [];\n }\n\n // Prefer the explicit valueType from the new array format; fall back to\n // inferring types from the legacy valuePredicate.\n // DEPRECATION: [APPDEV-16872] BREAKING-CHANGE: Remove support for inferring value types from the legacy valuePredicate.\n // The new array format with explicit valueType should be used exclusively.\n if (keyConfig.valueType) {\n return getValidValueTypes({ type: keyConfig.valueType }).types;\n }\n\n return getValidValueTypes(keyConfig.valuePredicate).types;\n}\n\nfunction getTypedOperatorFromCurrentStatement(\n currentStatement: FilterFieldStatementNode | undefined,\n): string {\n const needle = currentStatement?.comparisonOperator\n ? currentStatement.comparisonOperator.textValue\n : '';\n return comparisonOperatorAlias[needle] ?? needle;\n}\n\n/** @internal */\nexport function getSuggestions({\n suggestionTypes,\n overlappingSuggestions,\n currentStatement,\n currentToken,\n currentTokenType,\n prevNode,\n internalValidatorMap,\n customTypes,\n parserConfig,\n showLogicalOperators,\n showInclusionOperators,\n doc,\n suggestionTypeForToken,\n}: {\n suggestionTypes: NonNullable<\n Parameters<FilterFieldSuggestionsCallback>[0]\n >['suggestionTypes'];\n overlappingSuggestions?: FilterFieldOverlappingSuggestions;\n currentStatement: FilterFieldStatementNode | undefined;\n currentToken: FilterFieldValueNode;\n currentTokenType?: FilterFieldStatementTokenType;\n prevNode: FilterFieldLezerNodeType | 'FilterValue';\n internalValidatorMap?: InternalValidatorMap;\n customTypes?: FilterFieldCustomTypes;\n parserConfig?: FilterFieldProps['parserConfig'];\n showLogicalOperators: boolean;\n showInclusionOperators: boolean;\n doc: string;\n suggestionTypeForToken?: {\n type: NonNullable<\n Parameters<FilterFieldSuggestionsCallback>[0]\n >['suggestionTypes'][number];\n token: FilterFieldValueNode;\n }[];\n}): {\n groupedSuggestions: FilterFieldGroupedSuggestions;\n logicalOperatorSuggestions: FilterFieldSuggestion[];\n pastedContentSuggestions: FilterFieldSuggestion[];\n} {\n const groupedSuggestions: FilterFieldGroupedSuggestions = {};\n\n const currentValue = getCurrentValueFromToken(currentToken);\n\n let pastedContentSuggestions: FilterFieldSuggestion[] = [];\n const shouldSortAlphabetically =\n internalValidatorMap?.sortSuggestions ?? true;\n\n for (const { type: suggestionType, token } of suggestionTypeForToken ?? []) {\n if (suggestionType === 'key') {\n const currentValue = getCurrentValueFromToken(token);\n\n const keySuggestionGroups = getKeySuggestions(\n internalValidatorMap,\n suggestionTypes,\n customTypes,\n doc,\n token,\n );\n\n assignGroupsToSlots({\n groups: keySuggestionGroups,\n groupedSuggestions,\n slotName: 'key',\n implicitIdPrefix: KEY_GROUP_ID,\n token,\n currentValue,\n shouldSortAlphabetically,\n });\n } else if (suggestionType === 'value') {\n // These are the suggestions shown when no specific value is entered yet, inserting the \"value\" placeholder when applied.\n const showDefaultValueOrWildcardSuggestions =\n typeof currentStatement?.comparisonOperator?.value === 'string' &&\n currentStatement?.comparisonOperator?.type !== 'Error' &&\n isWildCardOperator(currentStatement);\n\n // These are the suggestion to apply a specific value in combination with a wildcard operator.\n // E.g. Contains \"foo\" or Ends with \"foo\"\n const showWildcardValueSuggestions =\n (prevNode === 'ExistsOperator' &&\n currentTokenType === 'comparisonOperator') ||\n isWildCardOperator(currentStatement);\n\n const valueSuggestionGroups = getValueSuggestionGroups(\n currentStatement?.key?.value,\n currentStatement?.comparisonOperator?.value?.toString() as FilterFieldComparisonOperators,\n internalValidatorMap,\n token,\n showDefaultValueOrWildcardSuggestions,\n showWildcardValueSuggestions,\n suggestionTypes.includes('pastedContent'),\n );\n\n const valueSuggestionsTypes = getValueSuggestionsTypesFromKeyPredicate(\n internalValidatorMap,\n currentStatement,\n );\n\n assignGroupsToSlots({\n groups: valueSuggestionGroups,\n groupedSuggestions,\n slotName: 'value',\n implicitIdPrefix: VALUE_GROUP_ID,\n token,\n currentValue,\n shouldSortAlphabetically,\n suggestionsTypeOrder: valueSuggestionsTypes,\n });\n } else if (\n suggestionType === 'pastedContent' &&\n token.textValue?.match(NEEDS_ESCAPING_REGEX)\n ) {\n pastedContentSuggestions = [getPastingSuggestion()];\n }\n }\n\n if (\n suggestionTypes.includes('comparisonOperator') ||\n showInclusionOperators\n ) {\n let key = currentStatement?.key?.textValue ?? '';\n\n // If we have overlapping suggestions (free text node), we need to exclude the part of the key\n // that may already start a comparison operator to get the correct comparators from the validator\n // map, if present.\n // E.g.: \u203Ahealth !\u2039 (only one token) -> get comparators for \"health\"\n if (overlappingSuggestions) {\n const normalizedKeyEnd =\n overlappingSuggestions.subToken.range.from -\n (currentStatement?.range.from ?? 0);\n key = key.slice(0, normalizedKeyEnd).trim();\n }\n\n let comparisonOperatorSuggestions = getComparisonOperatorSuggestions(\n key,\n internalValidatorMap,\n parserConfig,\n );\n\n comparisonOperatorSuggestions = filterSuggestions(\n comparisonOperatorSuggestions,\n currentToken,\n overlappingSuggestions\n ? overlappingSuggestions.subToken.textValue.trim()\n : getTypedOperatorFromCurrentStatement(currentStatement),\n // Operator details (e.g. \"equals\", \"not equals\") are display-only\n // localized labels \u2014 never a match target.\n { includeDetails: false },\n );\n\n // If we have overlapping suggestions, we store the range that should be replaced in a data-attribute\n // that we can read when applying the suggestion to only replace parts of a free text token.\n // E.g.:\n // cluster not in\n // stored overlapping range: 8 - 14\n if (overlappingSuggestions) {\n comparisonOperatorSuggestions = comparisonOperatorSuggestions.map(\n (suggestion): FilterFieldSuggestion => ({\n ...suggestion,\n insertionRange: overlappingSuggestions.subToken.range,\n escapeSuggestion: false,\n }),\n );\n // If there are no overlapping suggestions, we reset the data-attributes to take whatever range we get from\n // the actual tokens.\n // E.g.:\n /*\n Initial input: \u203Acluster not in\u2039\n -> one free text token with overlapping suggestions.\n -> data-attributes are written to the dom.\n Typing '(' -> \u203Acluster not in (\u2039\n -> the suggestion is still the same, so react doesn't re-create the node. we have the same data attributes.\n -> applying the suggestion would only replace from 8 to 14, so we would end up with \u203Acluster not in ()(\u2039\n Resetting the data-attributes, we use the appropriate range again.\n */\n } else {\n comparisonOperatorSuggestions = comparisonOperatorSuggestions.map(\n (suggestion): FilterFieldSuggestion => ({\n ...suggestion,\n insertionRange: undefined,\n escapeSuggestion: false,\n }),\n );\n }\n\n if (\n comparisonOperatorSuggestions.length > 0 &&\n !suggestionTypes.includes('pastedContent')\n ) {\n groupedSuggestions.comparisonOperator = {\n id: 'strato-filter-field-comparator-suggestions',\n suggestions: comparisonOperatorSuggestions,\n };\n }\n }\n\n let logicalOperatorSuggestions: FilterFieldSuggestion[] = [];\n if (showLogicalOperators) {\n // Logical operators (`OR`) match by value only \u2014 any future details on\n // these would be display-only, same as comparison operators above.\n logicalOperatorSuggestions = filterSuggestions(\n defaultLogicalOperatorSuggestions,\n currentToken,\n currentValue,\n { includeDetails: false },\n );\n }\n\n if (\n suggestionTypes.find((value) => value === 'key') &&\n (currentToken.type === 'JSONPath' ||\n (currentToken.type === 'Error' &&\n currentToken.textValue.match(JSONPATH_PATTERN_PARTIAL)))\n ) {\n groupedSuggestions.key = {\n id: 'strato-filter-field-key-suggestions',\n suggestions: [getJSONPathHint()],\n };\n }\n\n return {\n groupedSuggestions,\n logicalOperatorSuggestions,\n pastedContentSuggestions,\n };\n}\n\n// Local alias kept for readability at call sites \u2014 the normalization rule\n// (strip quotes/backslashes + lowercase) is owned by suggestion-matching.ts\n// so filtering, sorting, and this trim all stay in sync.\nfunction trimEscapedCharacters(value: string) {\n return normalizeSuggestionMatchText(value);\n}\n\n/**\n * Filters validatorMap-derived suggestions against the user's typed value.\n *\n * Matching delegates to `suggestionMatchesTerm` so the rules (which fields\n * count, normalization, displayValue/value mutual exclusion) live in one\n * place. Pass `{ includeDetails: false }` for suggestion sets whose details\n * are display-only (operators).\n * @internal\n */\nexport function filterSuggestions(\n providedSuggestions: FilterFieldSuggestion[],\n currentToken: FilterFieldValueNode,\n currentValue: string,\n options?: SuggestionMatchingOptions,\n) {\n const textValue = trimEscapedCharacters(currentValue);\n return providedSuggestions.filter((suggestion) => {\n if (Array.isArray(currentToken.value)) {\n return true;\n }\n\n if (!suggestion.value) {\n return true;\n }\n\n // This check is needed to correctly filter the OR suggestion if there\n // are quotes or escaped characters\n if (\n suggestion.value === 'OR' &&\n currentToken.value !== currentToken.textValue\n ) {\n return false;\n }\n\n return suggestionMatchesTerm(suggestion, textValue, options);\n });\n}\n\n/**\n * Check whether a suggestion is of type number\n */\nfunction isSuggestionTypeNumber(\n suggestion: FilterFieldSuggestionProps,\n): boolean {\n if (suggestion.valueType) {\n return suggestion.valueType === 'Number';\n }\n\n const value = trimEscapedCharacters(suggestion.value ?? '');\n return value ? value.trim() !== '' && !isNaN(Number(value)) : false;\n}\n\n/**\n * Check wheter a suggestion if of type duration\n */\nfunction isSuggestionTypeDuration(\n suggestion: FilterFieldSuggestionProps,\n): boolean {\n if (suggestion.valueType) {\n return suggestion.valueType === 'Duration';\n }\n\n const value = trimEscapedCharacters(suggestion.value ?? '');\n return /^\\d+(ns|ms|s|m|h|d)$/.test(value ?? '');\n}\n\n/**\n * Extract the numeric part from a duration string (e.g. \"200ms\" -\\> 200).\n */\nfunction getDurationNumericValue(value: string): number {\n const match = /^(\\d+)(ns|ms|s|m|h|d)$/.exec(value);\n return match ? Number(match[1]) : 0;\n}\n\n/**\n * Extract the unit part from a duration string (e.g. \"200ms\" -\\> \"ms\").\n */\nfunction getDurationUnit(value: string): string {\n const match = /^\\d+(ns|ms|s|m|h|d)$/.exec(value);\n return match ? match[1] : '';\n}\n\nconst DURATION_UNIT_ORDER: Record<string, number> = {\n ns: 0,\n ms: 1,\n s: 2,\n m: 3,\n h: 4,\n d: 5,\n};\n\n/**\n * Compare two duration strings by unit order first, then by numeric value.\n */\nfunction compareDurations(a: string, b: string): number {\n const unitA = getDurationUnit(a);\n const unitB = getDurationUnit(b);\n const unitDiff =\n (DURATION_UNIT_ORDER[unitA] ?? 0) - (DURATION_UNIT_ORDER[unitB] ?? 0);\n if (unitDiff !== 0) {\n return unitDiff;\n }\n return getDurationNumericValue(a) - getDurationNumericValue(b);\n}\n\n/**\n * Sort key/value suggestions alphabetically, or by match position when the user has typed something.\n * When currentValue is non-empty, suggestions are ordered: exact \u2192 starts-with \u2192 contains-middle/ends-with.\n * Within each tier suggestions are ordered alphabetically.\n * Numeric string values (e.g. \"1\", \"10\", \"20\") are sorted numerically and placed before non-numeric strings.\n * For value suggestions with mixed types, suggestions are first grouped by their valueType in the order defined in the valuePredicate,\n * and each group is sorted independently.\n *\n * Default sorting can be disabled by the isSortingEnabled param.\n */\nfunction sortSuggestions(\n suggestions: FilterFieldSuggestionProps[],\n isSortingEnabled: boolean,\n currentValue: string,\n suggestionsTypeOrder?: string[],\n) {\n const { validatorMapSuggestions, otherSuggestions } = suggestions.reduce<{\n validatorMapSuggestions: FilterFieldSuggestionProps[];\n otherSuggestions: FilterFieldSuggestionProps[];\n }>(\n (acc, currentSuggestion) => {\n if (currentSuggestion.suggestionType === 'validatorMap') {\n acc.validatorMapSuggestions.push(currentSuggestion);\n } else {\n acc.otherSuggestions.push(currentSuggestion);\n }\n\n return acc;\n },\n { validatorMapSuggestions: [], otherSuggestions: [] },\n );\n\n currentValue = currentValue ? trimEscapedCharacters(currentValue) : '';\n const shouldSortMixedSuggestionsTypes =\n isSortingEnabled && suggestionsTypeOrder && suggestionsTypeOrder.length > 1;\n\n // sort mixed type value suggestions by types order\n if (shouldSortMixedSuggestionsTypes) {\n return [\n ...sortMixedSuggestionTypes(\n validatorMapSuggestions,\n suggestionsTypeOrder,\n currentValue,\n ),\n ...otherSuggestions,\n ];\n }\n\n if (currentValue || isSortingEnabled) {\n return [\n ...sortSuggestionsGroup(validatorMapSuggestions, currentValue),\n ...otherSuggestions,\n ];\n }\n\n return [...validatorMapSuggestions, ...otherSuggestions];\n}\n\n/**\n * Sort mixed types value suggestions.\n */\nfunction sortMixedSuggestionTypes(\n validatorMapSuggestions: FilterFieldSuggestionProps[],\n suggestionsTypeOrder: string[],\n currentValue: string,\n) {\n const suggestionsGroups = new Map<string, FilterFieldSuggestionProps[]>();\n const ungroupedSuggestions: FilterFieldSuggestionProps[] = [];\n\n for (const suggestion of validatorMapSuggestions) {\n const { valueType } = suggestion;\n if (valueType !== undefined && suggestionsTypeOrder.includes(valueType)) {\n let suggestionGroup = suggestionsGroups.get(valueType);\n if (!suggestionGroup) {\n suggestionGroup = [];\n suggestionsGroups.set(valueType, suggestionGroup);\n }\n suggestionGroup.push(suggestion);\n } else {\n ungroupedSuggestions.push(suggestion);\n }\n }\n\n const sortedResult: FilterFieldSuggestionProps[] = [];\n\n for (const suggestionType of suggestionsTypeOrder) {\n sortedResult.push(\n ...sortSuggestionsGroup(\n suggestionsGroups.get(suggestionType) ?? [],\n currentValue,\n ),\n );\n }\n sortedResult.push(\n ...sortSuggestionsGroup(ungroupedSuggestions, currentValue),\n );\n\n return sortedResult;\n}\n\n/**\n * Sort a single group of suggestions by match position when currentValue is set,\n * or alphabetically (numbers first, then durations, then strings) otherwise.\n */\nfunction sortSuggestionsGroup(\n suggestionsGroup: FilterFieldSuggestionProps[],\n currentValue: string,\n): FilterFieldSuggestionProps[] {\n if (currentValue) {\n return suggestionsGroup.sort((a, b) => {\n const aNorm = trimEscapedCharacters(a.value ?? '');\n const bNorm = trimEscapedCharacters(b.value ?? '');\n // Priority is the best of all match targets (value/displayValue/details).\n // Exact match (0) wins over prefix (1), prefix wins over contains (2).\n const priorityDiff =\n getSuggestionMatchPriority(a, currentValue) -\n getSuggestionMatchPriority(b, currentValue);\n if (priorityDiff !== 0) {\n return priorityDiff;\n }\n if (isSuggestionTypeNumber(a) && isSuggestionTypeNumber(b)) {\n return Number(aNorm) - Number(bNorm);\n }\n if (isSuggestionTypeDuration(a) && isSuggestionTypeDuration(b)) {\n return compareDurations(aNorm, bNorm);\n }\n return (a.value ?? '').localeCompare(b.value ?? '');\n });\n }\n\n const { numericSuggestions, durationSuggestions, nonNumericSuggestions } =\n suggestionsGroup.reduce<{\n numericSuggestions: FilterFieldSuggestionProps[];\n durationSuggestions: FilterFieldSuggestionProps[];\n nonNumericSuggestions: FilterFieldSuggestionProps[];\n }>(\n (acc, currentSuggestion) => {\n if (isSuggestionTypeNumber(currentSuggestion)) {\n acc.numericSuggestions.push(currentSuggestion);\n } else if (isSuggestionTypeDuration(currentSuggestion)) {\n acc.durationSuggestions.push(currentSuggestion);\n } else {\n acc.nonNumericSuggestions.push(currentSuggestion);\n }\n\n return acc;\n },\n {\n numericSuggestions: [],\n durationSuggestions: [],\n nonNumericSuggestions: [],\n },\n );\n\n numericSuggestions.sort(\n (a, b) => Number(a.value ?? 0) - Number(b.value ?? 0),\n );\n durationSuggestions.sort((a, b) =>\n compareDurations(a.value ?? '', b.value ?? ''),\n );\n nonNumericSuggestions.sort((a, b) =>\n (a.value ?? '').localeCompare(b.value ?? ''),\n );\n\n return [\n ...numericSuggestions,\n ...durationSuggestions,\n ...nonNumericSuggestions,\n ];\n}\n\n/**\n * Iterates over suggestion groups, filters each, and assigns non-empty groups\n * to the appropriate slot in `groupedSuggestions`. The first implicit group\n * (matching `implicitIdPrefix`) is assigned to the well-known slot (`slotName`);\n * subsequent groups are assigned to dynamic slots.\n */\nfunction assignGroupsToSlots({\n groups,\n groupedSuggestions,\n slotName,\n implicitIdPrefix,\n token,\n currentValue,\n shouldSortAlphabetically,\n suggestionsTypeOrder,\n}: {\n groups: SuggestionGroup<FilterFieldSuggestion>[];\n groupedSuggestions: FilterFieldGroupedSuggestions;\n slotName: 'key' | 'value';\n implicitIdPrefix: string;\n token: FilterFieldValueNode;\n currentValue: string;\n shouldSortAlphabetically: boolean;\n suggestionsTypeOrder?: string[];\n}): void {\n for (const group of groups) {\n const filtered = filterSuggestions(group.suggestions, token, currentValue);\n\n if (filtered.length === 0) {\n continue;\n }\n\n const sorted = sortSuggestions(\n filtered,\n shouldSortAlphabetically,\n currentValue,\n suggestionsTypeOrder,\n );\n\n if (\n !groupedSuggestions[slotName] &&\n (group.id === implicitIdPrefix ||\n group.id.startsWith(`${implicitIdPrefix}-implicit`))\n ) {\n groupedSuggestions[slotName] = { id: group.id, suggestions: sorted };\n } else {\n groupedSuggestions[group.id] = {\n id: group.id,\n label: group.label,\n 'aria-label': group['aria-label'],\n suggestions: sorted,\n };\n }\n }\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import type { FilterFieldOverlappingSuggestions } from './get-suggestion-category.js';\nimport {\n getKeySuggestions,\n JSONPATH_PATTERN_PARTIAL,\n} from './key-suggestions.js';\nimport {\n defaultLogicalOperatorSuggestions,\n getComparisonOperatorSuggestions,\n} from './operator-suggestions.js';\nimport { getJSONPathHint, getPastingSuggestion } from './shared-suggestions.js';\nimport type { SuggestionGroup } from './suggestion-group-utils.js';\nimport {\n getSuggestionMatchPriority,\n normalizeSuggestionMatchText,\n suggestionMatchesTerm,\n type SuggestionMatchingOptions,\n} from './suggestion-matching.js';\nimport { getValidValueTypes } from './suggestion-type.js';\nimport {\n getValueSuggestionGroups,\n VALUE_GROUP_ID,\n} from './value-suggestions.js';\nimport type { FilterFieldProps } from '../../FilterField.types.js';\nimport type {\n FilterFieldSuggestion,\n FilterFieldSuggestionProps,\n} from '../../suggestions/Suggestion.types.js';\nimport type {\n FilterFieldGroupedSuggestions,\n FilterFieldSuggestionsCallback,\n} from '../../types/suggestions.js';\nimport type {\n FilterFieldLezerNodeType,\n FilterFieldNodeBase,\n FilterFieldStatementNode,\n FilterFieldStatementTokenType,\n FilterFieldValueNode,\n} from '../../types/tree-nodes.js';\nimport type {\n FilterFieldComparisonOperators,\n FilterFieldCustomTypes,\n} from '../../types/validation.js';\nimport { NEEDS_ESCAPING_REGEX } from '../escape-suggestion.js';\nimport { KEY_GROUP_ID } from '../validation-utils/normalize-validator-map.js';\nimport type {\n InternalValidatorMap,\n NormalizedKeyConfig,\n} from '../validation-utils/normalize-validator-map.js';\nimport { isWildCardOperator } from '../validation-utils/validation-helper-functions.js';\n\nconst comparisonOperatorAlias: Record<string, string> = {\n '=*': '= *',\n '!=*': '!= *',\n};\n\nfunction getCurrentValueFromToken(token: FilterFieldValueNode): string {\n return token.type === 'String' || token.type === 'Key'\n ? token.value\n : token.textValue;\n}\n\nfunction getValueSuggestionsTypesFromKeyPredicate(\n internalValidatorMap: InternalValidatorMap | undefined,\n currentStatement: FilterFieldStatementNode | undefined,\n): string[] {\n if (!internalValidatorMap || !currentStatement?.key?.value) {\n return [];\n }\n\n const keyConfig: NormalizedKeyConfig | undefined =\n internalValidatorMap.normalizedKeys.byKey.get(currentStatement.key.value);\n\n if (!keyConfig) {\n return [];\n }\n\n // Prefer the explicit valueType from the new array format; fall back to\n // inferring types from the legacy valuePredicate.\n // DEPRECATION: [APPDEV-16872] BREAKING-CHANGE: Remove support for inferring value types from the legacy valuePredicate.\n // The new array format with explicit valueType should be used exclusively.\n if (keyConfig.valueType) {\n return getValidValueTypes({ type: keyConfig.valueType }).types;\n }\n\n return getValidValueTypes(keyConfig.valuePredicate).types;\n}\n\nfunction getTypedOperatorFromCurrentStatement(\n currentStatement: FilterFieldStatementNode | undefined,\n): string {\n const needle = currentStatement?.comparisonOperator\n ? currentStatement.comparisonOperator.textValue\n : '';\n return comparisonOperatorAlias[needle] ?? needle;\n}\n\n/**\n * @internal\n * Brand for ranges produced by the overlapping-suggestions path.\n * Not exported from the package entry point \u2014 consumers cannot set this, so its\n * presence in getSuggestionTransaction unambiguously identifies a stale internal\n * range rather than an intentionally supplied consumer range.\n */\nexport const overlappingSuggestionRangeBrand = Symbol(\n 'overlappingSuggestionRange',\n);\n\n/** @internal */\nexport function getSuggestions({\n suggestionTypes,\n overlappingSuggestions,\n currentStatement,\n currentToken,\n currentTokenType,\n prevNode,\n internalValidatorMap,\n customTypes,\n parserConfig,\n showLogicalOperators,\n showInclusionOperators,\n doc,\n suggestionTypeForToken,\n}: {\n suggestionTypes: NonNullable<\n Parameters<FilterFieldSuggestionsCallback>[0]\n >['suggestionTypes'];\n overlappingSuggestions?: FilterFieldOverlappingSuggestions;\n currentStatement: FilterFieldStatementNode | undefined;\n currentToken: FilterFieldValueNode;\n currentTokenType?: FilterFieldStatementTokenType;\n prevNode: FilterFieldLezerNodeType | 'FilterValue';\n internalValidatorMap?: InternalValidatorMap;\n customTypes?: FilterFieldCustomTypes;\n parserConfig?: FilterFieldProps['parserConfig'];\n showLogicalOperators: boolean;\n showInclusionOperators: boolean;\n doc: string;\n suggestionTypeForToken?: {\n type: NonNullable<\n Parameters<FilterFieldSuggestionsCallback>[0]\n >['suggestionTypes'][number];\n token: FilterFieldValueNode;\n }[];\n}): {\n groupedSuggestions: FilterFieldGroupedSuggestions;\n logicalOperatorSuggestions: FilterFieldSuggestion[];\n pastedContentSuggestions: FilterFieldSuggestion[];\n} {\n const groupedSuggestions: FilterFieldGroupedSuggestions = {};\n\n const currentValue = getCurrentValueFromToken(currentToken);\n\n let pastedContentSuggestions: FilterFieldSuggestion[] = [];\n const shouldSortAlphabetically =\n internalValidatorMap?.sortSuggestions ?? true;\n\n for (const { type: suggestionType, token } of suggestionTypeForToken ?? []) {\n if (suggestionType === 'key') {\n const currentValue = getCurrentValueFromToken(token);\n\n const keySuggestionGroups = getKeySuggestions(\n internalValidatorMap,\n suggestionTypes,\n customTypes,\n doc,\n token,\n );\n\n assignGroupsToSlots({\n groups: keySuggestionGroups,\n groupedSuggestions,\n slotName: 'key',\n implicitIdPrefix: KEY_GROUP_ID,\n token,\n currentValue,\n shouldSortAlphabetically,\n });\n } else if (suggestionType === 'value') {\n // These are the suggestions shown when no specific value is entered yet, inserting the \"value\" placeholder when applied.\n const showDefaultValueOrWildcardSuggestions =\n typeof currentStatement?.comparisonOperator?.value === 'string' &&\n currentStatement?.comparisonOperator?.type !== 'Error' &&\n isWildCardOperator(currentStatement);\n\n // These are the suggestion to apply a specific value in combination with a wildcard operator.\n // E.g. Contains \"foo\" or Ends with \"foo\"\n const showWildcardValueSuggestions =\n (prevNode === 'ExistsOperator' &&\n currentTokenType === 'comparisonOperator') ||\n isWildCardOperator(currentStatement);\n\n const valueSuggestionGroups = getValueSuggestionGroups(\n currentStatement?.key?.value,\n currentStatement?.comparisonOperator?.value?.toString() as FilterFieldComparisonOperators,\n internalValidatorMap,\n token,\n showDefaultValueOrWildcardSuggestions,\n showWildcardValueSuggestions,\n suggestionTypes.includes('pastedContent'),\n );\n\n const valueSuggestionsTypes = getValueSuggestionsTypesFromKeyPredicate(\n internalValidatorMap,\n currentStatement,\n );\n\n assignGroupsToSlots({\n groups: valueSuggestionGroups,\n groupedSuggestions,\n slotName: 'value',\n implicitIdPrefix: VALUE_GROUP_ID,\n token,\n currentValue,\n shouldSortAlphabetically,\n suggestionsTypeOrder: valueSuggestionsTypes,\n });\n } else if (\n suggestionType === 'pastedContent' &&\n token.textValue?.match(NEEDS_ESCAPING_REGEX)\n ) {\n pastedContentSuggestions = [getPastingSuggestion()];\n }\n }\n\n if (\n suggestionTypes.includes('comparisonOperator') ||\n showInclusionOperators\n ) {\n let key = currentStatement?.key?.textValue ?? '';\n\n // If we have overlapping suggestions (free text node), we need to exclude the part of the key\n // that may already start a comparison operator to get the correct comparators from the validator\n // map, if present.\n // E.g.: \u203Ahealth !\u2039 (only one token) -> get comparators for \"health\"\n if (overlappingSuggestions) {\n const normalizedKeyEnd =\n overlappingSuggestions.subToken.range.from -\n (currentStatement?.range.from ?? 0);\n key = key.slice(0, normalizedKeyEnd).trim();\n }\n\n let comparisonOperatorSuggestions = getComparisonOperatorSuggestions(\n key,\n internalValidatorMap,\n parserConfig,\n );\n\n comparisonOperatorSuggestions = filterSuggestions(\n comparisonOperatorSuggestions,\n currentToken,\n overlappingSuggestions\n ? overlappingSuggestions.subToken.textValue.trim()\n : getTypedOperatorFromCurrentStatement(currentStatement),\n // Operator details (e.g. \"equals\", \"not equals\") are display-only\n // localized labels \u2014 never a match target.\n { includeDetails: false },\n );\n\n // If we have overlapping suggestions, we store the range that should be replaced in a data-attribute\n // that we can read when applying the suggestion to only replace parts of a free text token.\n // E.g.:\n // cluster not in\n // stored overlapping range: 8 - 14\n if (overlappingSuggestions) {\n const brandedRange = {\n ...overlappingSuggestions.subToken.range,\n } as FilterFieldNodeBase['range'] & Record<symbol, unknown>;\n brandedRange[overlappingSuggestionRangeBrand] = true;\n\n comparisonOperatorSuggestions = comparisonOperatorSuggestions.map(\n (suggestion): FilterFieldSuggestion => ({\n ...suggestion,\n insertionRange: brandedRange,\n escapeSuggestion: false,\n }),\n );\n // If there are no overlapping suggestions, we reset the data-attributes to take whatever range we get from\n // the actual tokens.\n // E.g.:\n /*\n Initial input: \u203Acluster not in\u2039\n -> one free text token with overlapping suggestions.\n -> data-attributes are written to the dom.\n Typing '(' -> \u203Acluster not in (\u2039\n -> the suggestion is still the same, so react doesn't re-create the node. we have the same data attributes.\n -> applying the suggestion would only replace from 8 to 14, so we would end up with \u203Acluster not in ()(\u2039\n Resetting the data-attributes, we use the appropriate range again.\n */\n } else {\n comparisonOperatorSuggestions = comparisonOperatorSuggestions.map(\n (suggestion): FilterFieldSuggestion => ({\n ...suggestion,\n insertionRange: undefined,\n escapeSuggestion: false,\n }),\n );\n }\n\n if (\n comparisonOperatorSuggestions.length > 0 &&\n !suggestionTypes.includes('pastedContent')\n ) {\n groupedSuggestions.comparisonOperator = {\n id: 'strato-filter-field-comparator-suggestions',\n suggestions: comparisonOperatorSuggestions,\n };\n }\n }\n\n let logicalOperatorSuggestions: FilterFieldSuggestion[] = [];\n if (showLogicalOperators) {\n // Logical operators (`OR`) match by value only \u2014 any future details on\n // these would be display-only, same as comparison operators above.\n logicalOperatorSuggestions = filterSuggestions(\n defaultLogicalOperatorSuggestions,\n currentToken,\n currentValue,\n { includeDetails: false },\n );\n }\n\n if (\n suggestionTypes.find((value) => value === 'key') &&\n (currentToken.type === 'JSONPath' ||\n (currentToken.type === 'Error' &&\n currentToken.textValue.match(JSONPATH_PATTERN_PARTIAL)))\n ) {\n groupedSuggestions.key = {\n id: 'strato-filter-field-key-suggestions',\n suggestions: [getJSONPathHint()],\n };\n }\n\n return {\n groupedSuggestions,\n logicalOperatorSuggestions,\n pastedContentSuggestions,\n };\n}\n\n// Local alias kept for readability at call sites \u2014 the normalization rule\n// (strip quotes/backslashes + lowercase) is owned by suggestion-matching.ts\n// so filtering, sorting, and this trim all stay in sync.\nfunction trimEscapedCharacters(value: string) {\n return normalizeSuggestionMatchText(value);\n}\n\n/**\n * Filters validatorMap-derived suggestions against the user's typed value.\n *\n * Matching delegates to `suggestionMatchesTerm` so the rules (which fields\n * count, normalization, displayValue/value mutual exclusion) live in one\n * place. Pass `{ includeDetails: false }` for suggestion sets whose details\n * are display-only (operators).\n * @internal\n */\nexport function filterSuggestions(\n providedSuggestions: FilterFieldSuggestion[],\n currentToken: FilterFieldValueNode,\n currentValue: string,\n options?: SuggestionMatchingOptions,\n) {\n const textValue = trimEscapedCharacters(currentValue);\n return providedSuggestions.filter((suggestion) => {\n if (Array.isArray(currentToken.value)) {\n return true;\n }\n\n if (!suggestion.value) {\n return true;\n }\n\n // This check is needed to correctly filter the OR suggestion if there\n // are quotes or escaped characters\n if (\n suggestion.value === 'OR' &&\n currentToken.value !== currentToken.textValue\n ) {\n return false;\n }\n\n return suggestionMatchesTerm(suggestion, textValue, options);\n });\n}\n\n/**\n * Check whether a suggestion is of type number\n */\nfunction isSuggestionTypeNumber(\n suggestion: FilterFieldSuggestionProps,\n): boolean {\n if (suggestion.valueType) {\n return suggestion.valueType === 'Number';\n }\n\n const value = trimEscapedCharacters(suggestion.value ?? '');\n return value ? value.trim() !== '' && !isNaN(Number(value)) : false;\n}\n\n/**\n * Check wheter a suggestion if of type duration\n */\nfunction isSuggestionTypeDuration(\n suggestion: FilterFieldSuggestionProps,\n): boolean {\n if (suggestion.valueType) {\n return suggestion.valueType === 'Duration';\n }\n\n const value = trimEscapedCharacters(suggestion.value ?? '');\n return /^\\d+(ns|ms|s|m|h|d)$/.test(value ?? '');\n}\n\n/**\n * Extract the numeric part from a duration string (e.g. \"200ms\" -\\> 200).\n */\nfunction getDurationNumericValue(value: string): number {\n const match = /^(\\d+)(ns|ms|s|m|h|d)$/.exec(value);\n return match ? Number(match[1]) : 0;\n}\n\n/**\n * Extract the unit part from a duration string (e.g. \"200ms\" -\\> \"ms\").\n */\nfunction getDurationUnit(value: string): string {\n const match = /^\\d+(ns|ms|s|m|h|d)$/.exec(value);\n return match ? match[1] : '';\n}\n\nconst DURATION_UNIT_ORDER: Record<string, number> = {\n ns: 0,\n ms: 1,\n s: 2,\n m: 3,\n h: 4,\n d: 5,\n};\n\n/**\n * Compare two duration strings by unit order first, then by numeric value.\n */\nfunction compareDurations(a: string, b: string): number {\n const unitA = getDurationUnit(a);\n const unitB = getDurationUnit(b);\n const unitDiff =\n (DURATION_UNIT_ORDER[unitA] ?? 0) - (DURATION_UNIT_ORDER[unitB] ?? 0);\n if (unitDiff !== 0) {\n return unitDiff;\n }\n return getDurationNumericValue(a) - getDurationNumericValue(b);\n}\n\n/**\n * Sort key/value suggestions alphabetically, or by match position when the user has typed something.\n * When currentValue is non-empty, suggestions are ordered: exact \u2192 starts-with \u2192 contains-middle/ends-with.\n * Within each tier suggestions are ordered alphabetically.\n * Numeric string values (e.g. \"1\", \"10\", \"20\") are sorted numerically and placed before non-numeric strings.\n * For value suggestions with mixed types, suggestions are first grouped by their valueType in the order defined in the valuePredicate,\n * and each group is sorted independently.\n *\n * Default sorting can be disabled by the isSortingEnabled param.\n */\nfunction sortSuggestions(\n suggestions: FilterFieldSuggestionProps[],\n isSortingEnabled: boolean,\n currentValue: string,\n suggestionsTypeOrder?: string[],\n) {\n const { validatorMapSuggestions, otherSuggestions } = suggestions.reduce<{\n validatorMapSuggestions: FilterFieldSuggestionProps[];\n otherSuggestions: FilterFieldSuggestionProps[];\n }>(\n (acc, currentSuggestion) => {\n if (currentSuggestion.suggestionType === 'validatorMap') {\n acc.validatorMapSuggestions.push(currentSuggestion);\n } else {\n acc.otherSuggestions.push(currentSuggestion);\n }\n\n return acc;\n },\n { validatorMapSuggestions: [], otherSuggestions: [] },\n );\n\n currentValue = currentValue ? trimEscapedCharacters(currentValue) : '';\n const shouldSortMixedSuggestionsTypes =\n isSortingEnabled && suggestionsTypeOrder && suggestionsTypeOrder.length > 1;\n\n // sort mixed type value suggestions by types order\n if (shouldSortMixedSuggestionsTypes) {\n return [\n ...sortMixedSuggestionTypes(\n validatorMapSuggestions,\n suggestionsTypeOrder,\n currentValue,\n ),\n ...otherSuggestions,\n ];\n }\n\n if (currentValue || isSortingEnabled) {\n return [\n ...sortSuggestionsGroup(validatorMapSuggestions, currentValue),\n ...otherSuggestions,\n ];\n }\n\n return [...validatorMapSuggestions, ...otherSuggestions];\n}\n\n/**\n * Sort mixed types value suggestions.\n */\nfunction sortMixedSuggestionTypes(\n validatorMapSuggestions: FilterFieldSuggestionProps[],\n suggestionsTypeOrder: string[],\n currentValue: string,\n) {\n const suggestionsGroups = new Map<string, FilterFieldSuggestionProps[]>();\n const ungroupedSuggestions: FilterFieldSuggestionProps[] = [];\n\n for (const suggestion of validatorMapSuggestions) {\n const { valueType } = suggestion;\n if (valueType !== undefined && suggestionsTypeOrder.includes(valueType)) {\n let suggestionGroup = suggestionsGroups.get(valueType);\n if (!suggestionGroup) {\n suggestionGroup = [];\n suggestionsGroups.set(valueType, suggestionGroup);\n }\n suggestionGroup.push(suggestion);\n } else {\n ungroupedSuggestions.push(suggestion);\n }\n }\n\n const sortedResult: FilterFieldSuggestionProps[] = [];\n\n for (const suggestionType of suggestionsTypeOrder) {\n sortedResult.push(\n ...sortSuggestionsGroup(\n suggestionsGroups.get(suggestionType) ?? [],\n currentValue,\n ),\n );\n }\n sortedResult.push(\n ...sortSuggestionsGroup(ungroupedSuggestions, currentValue),\n );\n\n return sortedResult;\n}\n\n/**\n * Sort a single group of suggestions by match position when currentValue is set,\n * or alphabetically (numbers first, then durations, then strings) otherwise.\n */\nfunction sortSuggestionsGroup(\n suggestionsGroup: FilterFieldSuggestionProps[],\n currentValue: string,\n): FilterFieldSuggestionProps[] {\n if (currentValue) {\n return suggestionsGroup.sort((a, b) => {\n const aNorm = trimEscapedCharacters(a.value ?? '');\n const bNorm = trimEscapedCharacters(b.value ?? '');\n // Priority is the best of all match targets (value/displayValue/details).\n // Exact match (0) wins over prefix (1), prefix wins over contains (2).\n const priorityDiff =\n getSuggestionMatchPriority(a, currentValue) -\n getSuggestionMatchPriority(b, currentValue);\n if (priorityDiff !== 0) {\n return priorityDiff;\n }\n if (isSuggestionTypeNumber(a) && isSuggestionTypeNumber(b)) {\n return Number(aNorm) - Number(bNorm);\n }\n if (isSuggestionTypeDuration(a) && isSuggestionTypeDuration(b)) {\n return compareDurations(aNorm, bNorm);\n }\n return (a.value ?? '').localeCompare(b.value ?? '');\n });\n }\n\n const { numericSuggestions, durationSuggestions, nonNumericSuggestions } =\n suggestionsGroup.reduce<{\n numericSuggestions: FilterFieldSuggestionProps[];\n durationSuggestions: FilterFieldSuggestionProps[];\n nonNumericSuggestions: FilterFieldSuggestionProps[];\n }>(\n (acc, currentSuggestion) => {\n if (isSuggestionTypeNumber(currentSuggestion)) {\n acc.numericSuggestions.push(currentSuggestion);\n } else if (isSuggestionTypeDuration(currentSuggestion)) {\n acc.durationSuggestions.push(currentSuggestion);\n } else {\n acc.nonNumericSuggestions.push(currentSuggestion);\n }\n\n return acc;\n },\n {\n numericSuggestions: [],\n durationSuggestions: [],\n nonNumericSuggestions: [],\n },\n );\n\n numericSuggestions.sort(\n (a, b) => Number(a.value ?? 0) - Number(b.value ?? 0),\n );\n durationSuggestions.sort((a, b) =>\n compareDurations(a.value ?? '', b.value ?? ''),\n );\n nonNumericSuggestions.sort((a, b) =>\n (a.value ?? '').localeCompare(b.value ?? ''),\n );\n\n return [\n ...numericSuggestions,\n ...durationSuggestions,\n ...nonNumericSuggestions,\n ];\n}\n\n/**\n * Iterates over suggestion groups, filters each, and assigns non-empty groups\n * to the appropriate slot in `groupedSuggestions`. The first implicit group\n * (matching `implicitIdPrefix`) is assigned to the well-known slot (`slotName`);\n * subsequent groups are assigned to dynamic slots.\n */\nfunction assignGroupsToSlots({\n groups,\n groupedSuggestions,\n slotName,\n implicitIdPrefix,\n token,\n currentValue,\n shouldSortAlphabetically,\n suggestionsTypeOrder,\n}: {\n groups: SuggestionGroup<FilterFieldSuggestion>[];\n groupedSuggestions: FilterFieldGroupedSuggestions;\n slotName: 'key' | 'value';\n implicitIdPrefix: string;\n token: FilterFieldValueNode;\n currentValue: string;\n shouldSortAlphabetically: boolean;\n suggestionsTypeOrder?: string[];\n}): void {\n for (const group of groups) {\n const filtered = filterSuggestions(group.suggestions, token, currentValue);\n\n if (filtered.length === 0) {\n continue;\n }\n\n const sorted = sortSuggestions(\n filtered,\n shouldSortAlphabetically,\n currentValue,\n suggestionsTypeOrder,\n );\n\n if (\n !groupedSuggestions[slotName] &&\n (group.id === implicitIdPrefix ||\n group.id.startsWith(`${implicitIdPrefix}-implicit`))\n ) {\n groupedSuggestions[slotName] = { id: group.id, suggestions: sorted };\n } else {\n groupedSuggestions[group.id] = {\n id: group.id,\n label: group.label,\n 'aria-label': group['aria-label'],\n suggestions: sorted,\n };\n }\n }\n}\n"],
5
+ "mappings": "AACA;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,iBAAiB,4BAA4B;AAEtD;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AACP,SAAS,0BAA0B;AACnC;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAqBP,SAAS,4BAA4B;AACrC,SAAS,oBAAoB;AAK7B,SAAS,0BAA0B;AAEnC,MAAM,0BAAkD;AAAA,EACtD,MAAM;AAAA,EACN,OAAO;AACT;AAEA,SAAS,yBAAyB,OAAqC;AACrE,SAAO,MAAM,SAAS,YAAY,MAAM,SAAS,QAC7C,MAAM,QACN,MAAM;AACZ;AAEA,SAAS,yCACP,sBACA,kBACU;AACV,MAAI,CAAC,wBAAwB,CAAC,kBAAkB,KAAK,OAAO;AAC1D,WAAO,CAAC;AAAA,EACV;AAEA,QAAM,YACJ,qBAAqB,eAAe,MAAM,IAAI,iBAAiB,IAAI,KAAK;AAE1E,MAAI,CAAC,WAAW;AACd,WAAO,CAAC;AAAA,EACV;AAMA,MAAI,UAAU,WAAW;AACvB,WAAO,mBAAmB,EAAE,MAAM,UAAU,UAAU,CAAC,EAAE;AAAA,EAC3D;AAEA,SAAO,mBAAmB,UAAU,cAAc,EAAE;AACtD;AAEA,SAAS,qCACP,kBACQ;AACR,QAAM,SAAS,kBAAkB,qBAC7B,iBAAiB,mBAAmB,YACpC;AACJ,SAAO,wBAAwB,MAAM,KAAK;AAC5C;AASO,MAAM,kCAAkC;AAAA,EAC7C;AACF;AAGO,SAAS,eAAe;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAyBE;AACA,QAAM,qBAAoD,CAAC;AAE3D,QAAM,eAAe,yBAAyB,YAAY;AAE1D,MAAI,2BAAoD,CAAC;AACzD,QAAM,2BACJ,sBAAsB,mBAAmB;AAE3C,aAAW,EAAE,MAAM,gBAAgB,MAAM,KAAK,0BAA0B,CAAC,GAAG;AAC1E,QAAI,mBAAmB,OAAO;AAC5B,YAAMA,gBAAe,yBAAyB,KAAK;AAEnD,YAAM,sBAAsB;AAAA,QAC1B;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAEA,0BAAoB;AAAA,QAClB,QAAQ;AAAA,QACR;AAAA,QACA,UAAU;AAAA,QACV,kBAAkB;AAAA,QAClB;AAAA,QACA,cAAAA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH,WAAW,mBAAmB,SAAS;AAErC,YAAM,wCACJ,OAAO,kBAAkB,oBAAoB,UAAU,YACvD,kBAAkB,oBAAoB,SAAS,WAC/C,mBAAmB,gBAAgB;AAIrC,YAAM,+BACH,aAAa,oBACZ,qBAAqB,wBACvB,mBAAmB,gBAAgB;AAErC,YAAM,wBAAwB;AAAA,QAC5B,kBAAkB,KAAK;AAAA,QACvB,kBAAkB,oBAAoB,OAAO,SAAS;AAAA,QACtD;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,gBAAgB,SAAS,eAAe;AAAA,MAC1C;AAEA,YAAM,wBAAwB;AAAA,QAC5B;AAAA,QACA;AAAA,MACF;AAEA,0BAAoB;AAAA,QAClB,QAAQ;AAAA,QACR;AAAA,QACA,UAAU;AAAA,QACV,kBAAkB;AAAA,QAClB;AAAA,QACA;AAAA,QACA;AAAA,QACA,sBAAsB;AAAA,MACxB,CAAC;AAAA,IACH,WACE,mBAAmB,mBACnB,MAAM,WAAW,MAAM,oBAAoB,GAC3C;AACA,iCAA2B,CAAC,qBAAqB,CAAC;AAAA,IACpD;AAAA,EACF;AAEA,MACE,gBAAgB,SAAS,oBAAoB,KAC7C,wBACA;AACA,QAAI,MAAM,kBAAkB,KAAK,aAAa;AAM9C,QAAI,wBAAwB;AAC1B,YAAM,mBACJ,uBAAuB,SAAS,MAAM,QACrC,kBAAkB,MAAM,QAAQ;AACnC,YAAM,IAAI,MAAM,GAAG,gBAAgB,EAAE,KAAK;AAAA,IAC5C;AAEA,QAAI,gCAAgC;AAAA,MAClC;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,oCAAgC;AAAA,MAC9B;AAAA,MACA;AAAA,MACA,yBACI,uBAAuB,SAAS,UAAU,KAAK,IAC/C,qCAAqC,gBAAgB;AAAA;AAAA;AAAA,MAGzD,EAAE,gBAAgB,MAAM;AAAA,IAC1B;AAOA,QAAI,wBAAwB;AAC1B,YAAM,eAAe;AAAA,QACnB,GAAG,uBAAuB,SAAS;AAAA,MACrC;AACA,mBAAa,+BAA+B,IAAI;AAEhD,sCAAgC,8BAA8B;AAAA,QAC5D,CAAC,gBAAuC;AAAA,UACtC,GAAG;AAAA,UACH,gBAAgB;AAAA,UAChB,kBAAkB;AAAA,QACpB;AAAA,MACF;AAAA,IAaF,OAAO;AACL,sCAAgC,8BAA8B;AAAA,QAC5D,CAAC,gBAAuC;AAAA,UACtC,GAAG;AAAA,UACH,gBAAgB;AAAA,UAChB,kBAAkB;AAAA,QACpB;AAAA,MACF;AAAA,IACF;AAEA,QACE,8BAA8B,SAAS,KACvC,CAAC,gBAAgB,SAAS,eAAe,GACzC;AACA,yBAAmB,qBAAqB;AAAA,QACtC,IAAI;AAAA,QACJ,aAAa;AAAA,MACf;AAAA,IACF;AAAA,EACF;AAEA,MAAI,6BAAsD,CAAC;AAC3D,MAAI,sBAAsB;AAGxB,iCAA6B;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA,EAAE,gBAAgB,MAAM;AAAA,IAC1B;AAAA,EACF;AAEA,MACE,gBAAgB,KAAK,CAAC,UAAU,UAAU,KAAK,MAC9C,aAAa,SAAS,cACpB,aAAa,SAAS,WACrB,aAAa,UAAU,MAAM,wBAAwB,IACzD;AACA,uBAAmB,MAAM;AAAA,MACvB,IAAI;AAAA,MACJ,aAAa,CAAC,gBAAgB,CAAC;AAAA,IACjC;AAAA,EACF;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAKA,SAAS,sBAAsB,OAAe;AAC5C,SAAO,6BAA6B,KAAK;AAC3C;AAWO,SAAS,kBACd,qBACA,cACA,cACA,SACA;AACA,QAAM,YAAY,sBAAsB,YAAY;AACpD,SAAO,oBAAoB,OAAO,CAAC,eAAe;AAChD,QAAI,MAAM,QAAQ,aAAa,KAAK,GAAG;AACrC,aAAO;AAAA,IACT;AAEA,QAAI,CAAC,WAAW,OAAO;AACrB,aAAO;AAAA,IACT;AAIA,QACE,WAAW,UAAU,QACrB,aAAa,UAAU,aAAa,WACpC;AACA,aAAO;AAAA,IACT;AAEA,WAAO,sBAAsB,YAAY,WAAW,OAAO;AAAA,EAC7D,CAAC;AACH;AAKA,SAAS,uBACP,YACS;AACT,MAAI,WAAW,WAAW;AACxB,WAAO,WAAW,cAAc;AAAA,EAClC;AAEA,QAAM,QAAQ,sBAAsB,WAAW,SAAS,EAAE;AAC1D,SAAO,QAAQ,MAAM,KAAK,MAAM,MAAM,CAAC,MAAM,OAAO,KAAK,CAAC,IAAI;AAChE;AAKA,SAAS,yBACP,YACS;AACT,MAAI,WAAW,WAAW;AACxB,WAAO,WAAW,cAAc;AAAA,EAClC;AAEA,QAAM,QAAQ,sBAAsB,WAAW,SAAS,EAAE;AAC1D,SAAO,uBAAuB,KAAK,SAAS,EAAE;AAChD;AAKA,SAAS,wBAAwB,OAAuB;AACtD,QAAM,QAAQ,yBAAyB,KAAK,KAAK;AACjD,SAAO,QAAQ,OAAO,MAAM,CAAC,CAAC,IAAI;AACpC;AAKA,SAAS,gBAAgB,OAAuB;AAC9C,QAAM,QAAQ,uBAAuB,KAAK,KAAK;AAC/C,SAAO,QAAQ,MAAM,CAAC,IAAI;AAC5B;AAEA,MAAM,sBAA8C;AAAA,EAClD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAKA,SAAS,iBAAiB,GAAW,GAAmB;AACtD,QAAM,QAAQ,gBAAgB,CAAC;AAC/B,QAAM,QAAQ,gBAAgB,CAAC;AAC/B,QAAM,YACH,oBAAoB,KAAK,KAAK,MAAM,oBAAoB,KAAK,KAAK;AACrE,MAAI,aAAa,GAAG;AAClB,WAAO;AAAA,EACT;AACA,SAAO,wBAAwB,CAAC,IAAI,wBAAwB,CAAC;AAC/D;AAYA,SAAS,gBACP,aACA,kBACA,cACA,sBACA;AACA,QAAM,EAAE,yBAAyB,iBAAiB,IAAI,YAAY;AAAA,IAIhE,CAAC,KAAK,sBAAsB;AAC1B,UAAI,kBAAkB,mBAAmB,gBAAgB;AACvD,YAAI,wBAAwB,KAAK,iBAAiB;AAAA,MACpD,OAAO;AACL,YAAI,iBAAiB,KAAK,iBAAiB;AAAA,MAC7C;AAEA,aAAO;AAAA,IACT;AAAA,IACA,EAAE,yBAAyB,CAAC,GAAG,kBAAkB,CAAC,EAAE;AAAA,EACtD;AAEA,iBAAe,eAAe,sBAAsB,YAAY,IAAI;AACpE,QAAM,kCACJ,oBAAoB,wBAAwB,qBAAqB,SAAS;AAG5E,MAAI,iCAAiC;AACnC,WAAO;AAAA,MACL,GAAG;AAAA,QACD;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACA,GAAG;AAAA,IACL;AAAA,EACF;AAEA,MAAI,gBAAgB,kBAAkB;AACpC,WAAO;AAAA,MACL,GAAG,qBAAqB,yBAAyB,YAAY;AAAA,MAC7D,GAAG;AAAA,IACL;AAAA,EACF;AAEA,SAAO,CAAC,GAAG,yBAAyB,GAAG,gBAAgB;AACzD;AAKA,SAAS,yBACP,yBACA,sBACA,cACA;AACA,QAAM,oBAAoB,oBAAI,IAA0C;AACxE,QAAM,uBAAqD,CAAC;AAE5D,aAAW,cAAc,yBAAyB;AAChD,UAAM,EAAE,UAAU,IAAI;AACtB,QAAI,cAAc,UAAa,qBAAqB,SAAS,SAAS,GAAG;AACvE,UAAI,kBAAkB,kBAAkB,IAAI,SAAS;AACrD,UAAI,CAAC,iBAAiB;AACpB,0BAAkB,CAAC;AACnB,0BAAkB,IAAI,WAAW,eAAe;AAAA,MAClD;AACA,sBAAgB,KAAK,UAAU;AAAA,IACjC,OAAO;AACL,2BAAqB,KAAK,UAAU;AAAA,IACtC;AAAA,EACF;AAEA,QAAM,eAA6C,CAAC;AAEpD,aAAW,kBAAkB,sBAAsB;AACjD,iBAAa;AAAA,MACX,GAAG;AAAA,QACD,kBAAkB,IAAI,cAAc,KAAK,CAAC;AAAA,QAC1C;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACA,eAAa;AAAA,IACX,GAAG,qBAAqB,sBAAsB,YAAY;AAAA,EAC5D;AAEA,SAAO;AACT;AAMA,SAAS,qBACP,kBACA,cAC8B;AAC9B,MAAI,cAAc;AAChB,WAAO,iBAAiB,KAAK,CAAC,GAAG,MAAM;AACrC,YAAM,QAAQ,sBAAsB,EAAE,SAAS,EAAE;AACjD,YAAM,QAAQ,sBAAsB,EAAE,SAAS,EAAE;AAGjD,YAAM,eACJ,2BAA2B,GAAG,YAAY,IAC1C,2BAA2B,GAAG,YAAY;AAC5C,UAAI,iBAAiB,GAAG;AACtB,eAAO;AAAA,MACT;AACA,UAAI,uBAAuB,CAAC,KAAK,uBAAuB,CAAC,GAAG;AAC1D,eAAO,OAAO,KAAK,IAAI,OAAO,KAAK;AAAA,MACrC;AACA,UAAI,yBAAyB,CAAC,KAAK,yBAAyB,CAAC,GAAG;AAC9D,eAAO,iBAAiB,OAAO,KAAK;AAAA,MACtC;AACA,cAAQ,EAAE,SAAS,IAAI,cAAc,EAAE,SAAS,EAAE;AAAA,IACpD,CAAC;AAAA,EACH;AAEA,QAAM,EAAE,oBAAoB,qBAAqB,sBAAsB,IACrE,iBAAiB;AAAA,IAKf,CAAC,KAAK,sBAAsB;AAC1B,UAAI,uBAAuB,iBAAiB,GAAG;AAC7C,YAAI,mBAAmB,KAAK,iBAAiB;AAAA,MAC/C,WAAW,yBAAyB,iBAAiB,GAAG;AACtD,YAAI,oBAAoB,KAAK,iBAAiB;AAAA,MAChD,OAAO;AACL,YAAI,sBAAsB,KAAK,iBAAiB;AAAA,MAClD;AAEA,aAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,oBAAoB,CAAC;AAAA,MACrB,qBAAqB,CAAC;AAAA,MACtB,uBAAuB,CAAC;AAAA,IAC1B;AAAA,EACF;AAEF,qBAAmB;AAAA,IACjB,CAAC,GAAG,MAAM,OAAO,EAAE,SAAS,CAAC,IAAI,OAAO,EAAE,SAAS,CAAC;AAAA,EACtD;AACA,sBAAoB;AAAA,IAAK,CAAC,GAAG,MAC3B,iBAAiB,EAAE,SAAS,IAAI,EAAE,SAAS,EAAE;AAAA,EAC/C;AACA,wBAAsB;AAAA,IAAK,CAAC,GAAG,OAC5B,EAAE,SAAS,IAAI,cAAc,EAAE,SAAS,EAAE;AAAA,EAC7C;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF;AAQA,SAAS,oBAAoB;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GASS;AACP,aAAW,SAAS,QAAQ;AAC1B,UAAM,WAAW,kBAAkB,MAAM,aAAa,OAAO,YAAY;AAEzE,QAAI,SAAS,WAAW,GAAG;AACzB;AAAA,IACF;AAEA,UAAM,SAAS;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,QACE,CAAC,mBAAmB,QAAQ,MAC3B,MAAM,OAAO,oBACZ,MAAM,GAAG,WAAW,GAAG,gBAAgB,WAAW,IACpD;AACA,yBAAmB,QAAQ,IAAI,EAAE,IAAI,MAAM,IAAI,aAAa,OAAO;AAAA,IACrE,OAAO;AACL,yBAAmB,MAAM,EAAE,IAAI;AAAA,QAC7B,IAAI,MAAM;AAAA,QACV,OAAO,MAAM;AAAA,QACb,cAAc,MAAM,YAAY;AAAA,QAChC,aAAa;AAAA,MACf;AAAA,IACF;AAAA,EACF;AACF;",
6
6
  "names": ["currentValue"]
7
7
  }