@dynatrace/strato-components 3.12.2 → 3.13.2
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.
- package/CHANGELOG.md +197 -0
- package/buttons/button/Button.css +15 -15
- package/buttons/button/Button.sty.js +4 -4
- package/buttons/index.d.ts +4 -0
- package/buttons/index.js +2 -0
- package/buttons/inline-button/InlineButton.css +145 -0
- package/buttons/inline-button/InlineButton.css.d.ts +107 -0
- package/buttons/inline-button/InlineButton.d.ts +62 -0
- package/buttons/inline-button/InlineButton.js +213 -0
- package/buttons/inline-button/InlineButton.sty.js +40 -0
- package/buttons/inline-button/Prefix.d.ts +13 -0
- package/buttons/inline-button/Prefix.js +61 -0
- package/buttons/inline-button/Suffix.d.ts +13 -0
- package/buttons/inline-button/Suffix.js +61 -0
- package/buttons/intent-button/IntentButton.css +1 -1
- package/buttons/intent-button/IntentButton.sty.js +1 -1
- package/buttons/notify-button/NotifyButton.css +2 -2
- package/buttons/notify-button/NotifyButton.sty.js +2 -2
- package/charts/categorical-bar/CategoricalBarChartLayout.js +1 -1
- package/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.css +2 -2
- package/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.sty.js +2 -2
- package/charts/categorical-bar/providers/StoreProvider.js +1 -1
- package/charts/core/components/annotations/AnnotationsAtom.css +1 -1
- package/charts/core/components/annotations/AnnotationsAtom.sty.js +1 -1
- package/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.css +1 -1
- package/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.sty.js +1 -1
- package/charts/core/components/annotations/components/overlays/AnnotationsOverlays.css +1 -1
- package/charts/core/components/annotations/components/overlays/AnnotationsOverlays.sty.js +1 -1
- package/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.css +1 -1
- package/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.sty.js +1 -1
- package/charts/core/components/axes/Axis.css +1 -1
- package/charts/core/components/axes/Axis.sty.js +1 -1
- package/charts/core/components/axes/components/PanningControls/PanningControls.css +16 -16
- package/charts/core/components/axes/components/PanningControls/PanningControls.sty.js +2 -2
- package/charts/core/components/chart-grid/ChartGrid.css +3 -3
- package/charts/core/components/chart-grid/ChartGrid.sty.js +3 -3
- package/charts/core/components/chart-layout/components/styles.css +15 -15
- package/charts/core/components/chart-layout/components/styles.sty.js +4 -4
- package/charts/core/components/chart-layout/slots/Graph.js +1 -1
- package/charts/core/components/chart-layout/slots/Legend.js +1 -1
- package/charts/core/components/chart-layout/utils/get-chart-layout-settings.js +1 -1
- package/charts/core/components/chart-states/ChartState.css +4 -4
- package/charts/core/components/chart-states/ChartState.sty.js +4 -4
- package/charts/core/components/crosshair/VerticalCrosshair.d.ts +3 -1
- package/charts/core/components/crosshair/VerticalCrosshair.js +2 -1
- package/charts/core/components/crosshair/components/Magnifier.css +7 -7
- package/charts/core/components/crosshair/components/Magnifier.sty.js +7 -7
- package/charts/core/components/crosshair/components/TopMagnifier.js +2 -2
- package/charts/core/components/interactions-overlay/InteractionsOverlay.css +5 -5
- package/charts/core/components/interactions-overlay/InteractionsOverlay.js +2 -0
- package/charts/core/components/interactions-overlay/InteractionsOverlay.sty.js +2 -2
- package/charts/core/components/interactions-overlay/interactions/explore/keyboardInteractions.d.ts +2 -1
- package/charts/core/components/interactions-overlay/interactions/explore/keyboardInteractions.js +4 -1
- package/charts/core/components/interactions-overlay/interactions/pan/keyboardInteractions.d.ts +2 -1
- package/charts/core/components/interactions-overlay/interactions/pan/keyboardInteractions.js +4 -1
- package/charts/core/components/interactions-overlay/interactions/zoom/keyboardInteractions.d.ts +2 -1
- package/charts/core/components/interactions-overlay/interactions/zoom/keyboardInteractions.js +4 -1
- package/charts/core/components/interactions-overlay/types.d.ts +1 -0
- package/charts/core/components/interactions-overlay/utils/get-explore-interations.d.ts +1 -1
- package/charts/core/components/interactions-overlay/utils/get-explore-interations.js +2 -0
- package/charts/core/components/interactions-overlay/utils/get-pan-interactions.d.ts +1 -1
- package/charts/core/components/interactions-overlay/utils/get-pan-interactions.js +2 -0
- package/charts/core/components/interactions-overlay/utils/get-zoom-interactions.d.ts +1 -1
- package/charts/core/components/interactions-overlay/utils/get-zoom-interactions.js +2 -0
- package/charts/core/components/interactions-overlay/utils/handle-keydown.d.ts +2 -1
- package/charts/core/components/interactions-overlay/utils/handle-keydown.js +7 -2
- package/charts/core/components/legend/categorical/ChartLegend.css +1 -1
- package/charts/core/components/legend/categorical/ChartLegend.sty.js +1 -1
- package/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.css +5 -4
- package/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.js +1 -0
- package/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.sty.js +3 -3
- package/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.css +20 -18
- package/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.sty.js +6 -6
- package/charts/core/components/legend/categorical/components/ChartLegendItemLabel/ChartLegendItemLabel.js +1 -1
- package/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.css +3 -3
- package/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.sty.js +1 -1
- package/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.css +8 -8
- package/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.sty.js +4 -4
- package/charts/core/components/legend/categorical/constants.js +1 -1
- package/charts/core/components/legend/categorical/hooks/useLegendInteractions.js +5 -1
- package/charts/core/components/legend/range/RangeLegend.css +3 -3
- package/charts/core/components/legend/range/RangeLegend.sty.js +1 -1
- package/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.css +2 -2
- package/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.sty.js +1 -1
- package/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.css +1 -1
- package/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.sty.js +1 -1
- package/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.css +3 -3
- package/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.sty.js +1 -1
- package/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.css +3 -3
- package/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.sty.js +1 -1
- package/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.css +5 -5
- package/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.sty.js +1 -1
- package/charts/core/components/legend/range/utils/get-min-max-values.js +2 -2
- package/charts/core/components/loader-overlay/LoaderOverlay.css +2 -2
- package/charts/core/components/loader-overlay/LoaderOverlay.sty.js +2 -2
- package/charts/core/components/overlay-tooltip/OverlayTooltip.js +5 -2
- package/charts/core/components/overlay-tooltip/components/DynamicTooltip.js +6 -5
- package/charts/core/components/overlay-tooltip/components/DynamicTooltipRenderer.js +4 -1
- package/charts/core/components/overlay-tooltip/components/SeriesActionsMenuContent.d.ts +14 -0
- package/charts/core/components/overlay-tooltip/components/SeriesActionsMenuContent.js +93 -0
- package/charts/core/components/overlay-tooltip/components/TooltipPortal.d.ts +1 -0
- package/charts/core/components/overlay-tooltip/components/TooltipPortal.js +89 -18
- package/charts/core/components/overlay-tooltip/components/global-actions/actions.css +4 -4
- package/charts/core/components/overlay-tooltip/components/global-actions/actions.sty.js +2 -2
- package/charts/core/components/overlay-tooltip/components/header/Header.css +14 -6
- package/charts/core/components/overlay-tooltip/components/header/Header.css.d.ts +1 -1
- package/charts/core/components/overlay-tooltip/components/header/Header.js +13 -9
- package/charts/core/components/overlay-tooltip/components/header/Header.sty.js +7 -7
- package/charts/core/components/overlay-tooltip/components/header/utils/get-shown-header-text.js +9 -5
- package/charts/core/components/overlay-tooltip/components/series/SeriesItem.js +27 -22
- package/charts/core/components/overlay-tooltip/components/series/seriesSymbol.css +2 -2
- package/charts/core/components/overlay-tooltip/components/series/seriesSymbol.sty.js +2 -2
- package/charts/core/components/overlay-tooltip/contexts/ActiveSeriesMenuContext.d.ts +21 -0
- package/charts/core/components/overlay-tooltip/contexts/ActiveSeriesMenuContext.js +42 -0
- package/charts/core/components/overlay-tooltip/hooks/useSvgAriaDescribedBy.d.ts +4 -0
- package/charts/core/components/overlay-tooltip/hooks/useSvgAriaDescribedBy.js +54 -0
- package/charts/core/components/overlay-tooltip/tooltip.css +52 -52
- package/charts/core/components/overlay-tooltip/tooltip.sty.js +39 -39
- package/charts/core/components/overlay-tooltip/utils/text-truncation-header.d.ts +10 -0
- package/charts/core/components/overlay-tooltip/utils/text-truncation-header.js +99 -1
- package/charts/core/components/overlays/ChartOverlaysBorder.css +6 -6
- package/charts/core/components/overlays/ChartOverlaysBorder.sty.js +6 -6
- package/charts/core/components/selection-area/SelectionArea.css +9 -9
- package/charts/core/components/selection-area/SelectionArea.sty.js +4 -4
- package/charts/core/components/selection-area/tooltip/CustomActions.d.ts +2 -2
- package/charts/core/components/selection-area/tooltip/CustomActions.js +4 -4
- package/charts/core/components/series-action/ChartSeriesAction.js +1 -1
- package/charts/core/components/shape/BubbleShape/BubbleShape.css +5 -5
- package/charts/core/components/shape/BubbleShape/BubbleShape.sty.js +3 -3
- package/charts/core/components/shape/EmojiShape/EmojiShape.css +3 -3
- package/charts/core/components/shape/EmojiShape/EmojiShape.sty.js +1 -1
- package/charts/core/components/shape/IconShape/IconShape.css +3 -3
- package/charts/core/components/shape/IconShape/IconShape.sty.js +1 -1
- package/charts/core/components/shape/styles/DataPointShape.css +8 -8
- package/charts/core/components/shape/styles/DataPointShape.sty.js +4 -4
- package/charts/core/components/shared-chart-interactions/SharedChartInteractions.css +1 -1
- package/charts/core/components/shared-chart-interactions/SharedChartInteractions.sty.js +1 -1
- package/charts/core/components/single-value-renderer/SingleValueRenderer.css +5 -5
- package/charts/core/components/single-value-renderer/SingleValueRenderer.sty.js +5 -5
- package/charts/core/components/single-value-renderer/components/ContentGrid.css +1 -1
- package/charts/core/components/single-value-renderer/components/ContentGrid.sty.js +1 -1
- package/charts/core/components/single-value-renderer/components/Icon.css +3 -3
- package/charts/core/components/single-value-renderer/components/Icon.sty.js +2 -2
- package/charts/core/components/single-value-renderer/components/Label.css +1 -1
- package/charts/core/components/single-value-renderer/components/Label.sty.js +1 -1
- package/charts/core/components/single-value-renderer/components/SingleValueToolbar.css +1 -1
- package/charts/core/components/single-value-renderer/components/SingleValueToolbar.sty.js +1 -1
- package/charts/core/components/single-value-renderer/components/Value.css +5 -5
- package/charts/core/components/single-value-renderer/components/Value.sty.js +3 -3
- package/charts/core/components/single-value-renderer/components/trend/Trend.css +3 -3
- package/charts/core/components/single-value-renderer/components/trend/Trend.sty.js +3 -3
- package/charts/core/components/single-value-renderer/components/trend/components/Icon.css +2 -2
- package/charts/core/components/single-value-renderer/components/trend/components/Icon.sty.js +1 -1
- package/charts/core/components/single-value-renderer/components/trend/utils/define-trend-colors.js +2 -2
- package/charts/core/components/sparkline-display/Sparkline.css +6 -6
- package/charts/core/components/sparkline-display/Sparkline.sty.js +2 -2
- package/charts/core/components/sparkline-display/SparklineRenderer.js +40 -32
- package/charts/core/components/text-ellipsis/ChartTextEllipsis.css +7 -7
- package/charts/core/components/text-ellipsis/ChartTextEllipsis.sty.js +3 -3
- package/charts/core/components/text-ellipsis/truncate-string.d.ts +19 -0
- package/charts/core/components/text-ellipsis/truncate-string.js +105 -9
- package/charts/core/components/threshold-bar/styles.css +11 -11
- package/charts/core/components/threshold-bar/styles.sty.js +2 -2
- package/charts/core/components/toolbar/ChartToolbarRenderer.css +16 -16
- package/charts/core/components/toolbar/ChartToolbarRenderer.js +2 -2
- package/charts/core/components/toolbar/ChartToolbarRenderer.sty.js +8 -8
- package/charts/core/components/toolbar/components/ChartDataMenu.css +2 -2
- package/charts/core/components/toolbar/components/ChartDataMenu.sty.js +1 -1
- package/charts/core/components/toolbar/components/Control.css +17 -17
- package/charts/core/components/toolbar/components/Control.sty.js +5 -5
- package/charts/core/components/toolbar/components/ToolbarMenu.css +4 -4
- package/charts/core/components/toolbar/components/ToolbarMenu.sty.js +2 -2
- package/charts/core/components/toolbar/styles.css +1 -1
- package/charts/core/components/toolbar/styles.sty.js +1 -1
- package/charts/core/components/tooltip/ChartTooltip/ChartTooltip.css +6 -6
- package/charts/core/components/tooltip/ChartTooltip/ChartTooltip.sty.js +2 -2
- package/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.css +8 -8
- package/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.sty.js +3 -3
- package/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.css +2 -2
- package/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.sty.js +1 -1
- package/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.css +1 -1
- package/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.sty.js +1 -1
- package/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.css +6 -6
- package/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.sty.js +2 -2
- package/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.css +7 -7
- package/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.sty.js +6 -6
- package/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.css +1 -1
- package/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.sty.js +1 -1
- package/charts/core/components/tooltip/InteractiveChartTooltip/slots/Actions.js +1 -1
- package/charts/core/components/tooltip/InteractiveChartTooltip/slots/Body.js +1 -1
- package/charts/core/components/tooltip/InteractiveChartTooltip/slots/Header.js +1 -1
- package/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.css +1 -1
- package/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.sty.js +1 -1
- package/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.css +2 -2
- package/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.sty.js +1 -1
- package/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.css +1 -1
- package/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.sty.js +1 -1
- package/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.css +3 -3
- package/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.sty.js +2 -2
- package/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.css +1 -1
- package/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.sty.js +1 -1
- package/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.css +2 -2
- package/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.sty.js +2 -2
- package/charts/core/components/tooltip/shared/styles/SeriesBasedContent.css +12 -12
- package/charts/core/components/tooltip/shared/styles/SeriesBasedContent.sty.js +7 -7
- package/charts/core/components/tooltip/shared/styles/TooltipBody.css +1 -1
- package/charts/core/components/tooltip/shared/styles/TooltipBody.sty.js +1 -1
- package/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.css +1 -1
- package/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.sty.js +1 -1
- package/charts/core/components/tooltip-atoms/components/styles.css +4 -4
- package/charts/core/components/tooltip-atoms/components/styles.sty.js +4 -4
- package/charts/core/components/zoom/ZoomCursors.css +2 -2
- package/charts/core/components/zoom/ZoomCursors.sty.js +3 -3
- package/charts/core/hooks/usePointerAndScrollResponsiveChartBounds.js +2 -2
- package/charts/core/hooks/useScrollResponsiveChartBounds.js +1 -1
- package/charts/core/hooks/useThrottledCallbackOnScroll.js +1 -1
- package/charts/core/slots/chart-states/EmptyStateSlot.js +4 -1
- package/charts/core/slots/chart-states/ErrorStateSlot.js +4 -1
- package/charts/core/slots/toolbar/ChartToolbar.js +2 -2
- package/charts/core/typographyStyles.css +1 -1
- package/charts/core/typographyStyles.sty.js +1 -1
- package/charts/core/utils/build-rgba-color-with-opacity.js +1 -1
- package/charts/flame/flame-chart/FlameChart.d.ts +7 -3
- package/charts/flame/flame-chart/FlameChart.js +24 -31
- package/charts/flame/flame-chart/components/tooltip/DefaultTooltip.d.ts +17 -0
- package/charts/flame/flame-chart/components/tooltip/DefaultTooltip.js +65 -0
- package/charts/flame/flame-chart/components/tooltip/messages.d.ts +8 -0
- package/charts/flame/flame-chart/components/tooltip/messages.js +30 -0
- package/charts/flame/flame-chart/utils/iterate-slots.d.ts +1 -4
- package/charts/flame/flame-chart/utils/iterate-slots.js +2 -14
- package/charts/flame/flame-graph/FlameGraph.d.ts +7 -3
- package/charts/flame/flame-graph/FlameGraph.js +34 -43
- package/charts/flame/flame-graph/components/tooltip/DefaultTooltip.d.ts +19 -0
- package/charts/flame/flame-graph/components/tooltip/DefaultTooltip.js +78 -0
- package/charts/flame/flame-graph/components/tooltip/messages.d.ts +8 -0
- package/charts/flame/flame-graph/components/tooltip/messages.js +30 -0
- package/charts/flame/flame-graph/utils/iterate-slots.d.ts +1 -4
- package/charts/flame/flame-graph/utils/iterate-slots.js +2 -17
- package/charts/flame/shared/components/tooltip/FlameTooltip.d.ts +11 -13
- package/charts/flame/shared/components/tooltip/FlameTooltip.js +72 -29
- package/charts/flame/shared/components/tooltip/messages.d.ts +28 -0
- package/charts/flame/shared/components/tooltip/messages.js +50 -0
- package/charts/flame/shared/slots/Tooltip.d.ts +11 -3
- package/charts/flame/shared/types/flame-chart.d.ts +14 -0
- package/charts/flame/shared/types/flame-internal.d.ts +16 -1
- package/charts/flame/shared/utils/build-tooltip-base-data.d.ts +25 -0
- package/charts/flame/shared/utils/build-tooltip-base-data.js +55 -0
- package/charts/flame/shared/utils/make-iterate-slots.d.ts +8 -0
- package/charts/flame/shared/utils/make-iterate-slots.js +39 -0
- package/charts/flame/shared/utils/order-spans-hierarchically.js +6 -1
- package/charts/flame/shared/utils/resolve-flame-tooltip-content.d.ts +6 -0
- package/charts/flame/shared/utils/resolve-flame-tooltip-content.js +44 -0
- package/charts/gantt-chart/GanttChartLine.css +1 -1
- package/charts/gantt-chart/GanttChartLine.sty.js +1 -1
- package/charts/gantt-chart/components/GanttChartLineRenderer.css +1 -1
- package/charts/gantt-chart/components/GanttChartLineRenderer.sty.js +1 -1
- package/charts/gantt-chart/components/tooltip/GanttChartTooltip.css +1 -1
- package/charts/gantt-chart/components/tooltip/GanttChartTooltip.sty.js +1 -1
- package/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.css +1 -1
- package/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.sty.js +1 -1
- package/charts/gauge/components/GaugeLabel/GaugeLabel.css +6 -6
- package/charts/gauge/components/GaugeLabel/GaugeLabel.sty.js +3 -3
- package/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.css +3 -3
- package/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.sty.js +1 -1
- package/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.css +4 -4
- package/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.sty.js +3 -3
- package/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.css +2 -2
- package/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.js +1 -1
- package/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.sty.js +2 -2
- package/charts/gauge/components/GaugeRootSVG.js +1 -0
- package/charts/gauge/utils/apply-threshold-default.js +1 -1
- package/charts/histogram/HistogramChartRoot.js +1 -1
- package/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.css +1 -1
- package/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.sty.js +1 -1
- package/charts/histogram/components/overlays/HistogramExplore/HistogramCrosshair.js +1 -1
- package/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.css +1 -1
- package/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.js +2 -2
- package/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.sty.js +1 -1
- package/charts/histogram/components/overlays/HistogramOverlays.css +2 -2
- package/charts/histogram/components/overlays/HistogramOverlays.sty.js +2 -2
- package/charts/histogram/hooks/useSetClosestBins.js +1 -1
- package/charts/histogram/providers/HistogramDataProvider.js +1 -1
- package/charts/histogram/providers/HistogramStateSyncProvider.d.ts +2 -2
- package/charts/histogram/providers/HistogramStateSyncProvider.js +1 -2
- package/charts/histogram/providers/StoreProvider.js +2 -2
- package/charts/histogram/utils/iterate-slots.js +1 -2
- package/charts/honeycomb/HoneycombChart.css +1 -1
- package/charts/honeycomb/HoneycombChart.sty.js +1 -1
- package/charts/honeycomb/components/HiveOverlay.css +1 -1
- package/charts/honeycomb/components/HiveOverlay.sty.js +1 -1
- package/charts/honeycomb/components/canvas/HiveCanvasLayout.css +1 -1
- package/charts/honeycomb/components/canvas/HiveCanvasLayout.sty.js +1 -1
- package/charts/honeycomb/utils/build-honeycomb-config.js +2 -2
- package/charts/index.d.ts +1 -1
- package/charts/meter-bar/multi-meter-bar/hooks/useMultiMeterBarChartTooltipHandlers.js +5 -0
- package/charts/meter-bar/multi-meter-bar/providers/StoreProvider.js +10 -1
- package/charts/meter-bar/multi-meter-bar/slots/Label.js +1 -1
- package/charts/meter-bar/multi-meter-bar/slots/Max.js +1 -1
- package/charts/meter-bar/multi-meter-bar/slots/Min.js +1 -1
- package/charts/meter-bar/multi-meter-bar/slots/Value.js +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.css +16 -16
- package/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js +11 -11
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Chart.js +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.css +2 -2
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.sty.js +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.css +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.sty.js +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Legend.js +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.css +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.sty.js +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.css +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.sty.js +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Thresholds.js +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.css +1 -1
- package/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.sty.js +1 -1
- package/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.css +1 -1
- package/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.js +1 -0
- package/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.sty.js +1 -1
- package/charts/meter-bar/shared/styles/element-size.css +4 -4
- package/charts/meter-bar/shared/styles/element-size.sty.js +1 -1
- package/charts/meter-bar/shared/styles.css +1 -1
- package/charts/meter-bar/shared/styles.sty.js +1 -1
- package/charts/meter-bar/single-meter-bar/MeterBarChart.js +1 -1
- package/charts/meter-bar/single-meter-bar/components/MeterBarChartOverlay/MeterBarChartOverlayWithTooltip.js +5 -1
- package/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholdIntervals/MeterBarChartThresholdIntervals.css +1 -1
- package/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholdIntervals/MeterBarChartThresholdIntervals.sty.js +1 -1
- package/charts/meter-bar/single-meter-bar/slots/Label.js +1 -1
- package/charts/meter-bar/single-meter-bar/slots/Max.js +1 -1
- package/charts/meter-bar/single-meter-bar/slots/Min.js +1 -1
- package/charts/meter-bar/single-meter-bar/slots/Value.js +1 -1
- package/charts/meter-bar/single-meter-bar/utils/apply-threshold-defaults.js +1 -1
- package/charts/meter-bar/single-meter-bar/utils/resolve-show-threshold-indicators.js +1 -1
- package/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.css +1 -1
- package/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.sty.js +1 -1
- package/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.css +1 -1
- package/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.sty.js +1 -1
- package/charts/pie/components/PieChartInternal.js +1 -1
- package/charts/pie/components/PieChartOverlays/PieChartOverlays.css +1 -1
- package/charts/pie/components/PieChartOverlays/PieChartOverlays.sty.js +1 -1
- package/charts/pie/components/PieChartPlot/PieChartPlot.css +1 -1
- package/charts/pie/components/PieChartPlot/PieChartPlot.js +49 -40
- package/charts/pie/components/PieChartPlot/PieChartPlot.sty.js +1 -1
- package/charts/pie/providers/PieChartSlicesDataProvider.js +5 -1
- package/charts/pie/providers/StoreProvider.js +1 -1
- package/charts/sankey-chart/SankeyChart.css +3 -3
- package/charts/sankey-chart/SankeyChart.sty.js +3 -3
- package/charts/sankey-chart/SankeyChartRoot.js +5 -2
- package/charts/sankey-chart/components/SankeyCanvas.css +7 -1
- package/charts/sankey-chart/components/SankeyCanvas.css.d.ts +1 -0
- package/charts/sankey-chart/components/SankeyCanvas.js +46 -3
- package/charts/sankey-chart/components/SankeyCanvas.sty.js +4 -2
- package/charts/sankey-chart/components/SankeyGraphArea.js +4 -49
- package/charts/sankey-chart/components/SankeyGraphAreaContent.d.ts +15 -0
- package/charts/sankey-chart/components/SankeyGraphAreaContent.js +80 -0
- package/charts/sankey-chart/components/SankeyLabelOverlay.css +13 -9
- package/charts/sankey-chart/components/SankeyLabelOverlay.css.d.ts +1 -0
- package/charts/sankey-chart/components/SankeyLabelOverlay.js +38 -59
- package/charts/sankey-chart/components/SankeyLabelOverlay.sty.js +10 -8
- package/charts/sankey-chart/components/SankeyNodeLabel.d.ts +17 -0
- package/charts/sankey-chart/components/SankeyNodeLabel.js +65 -0
- package/charts/sankey-chart/components/SankeyOverlay.css +1 -1
- package/charts/sankey-chart/components/SankeyOverlay.js +1 -3
- package/charts/sankey-chart/components/SankeyOverlay.sty.js +1 -1
- package/charts/sankey-chart/constants.d.ts +6 -5
- package/charts/sankey-chart/constants.js +12 -7
- package/charts/sankey-chart/context/SankeyFormatter.context.d.ts +2 -0
- package/charts/sankey-chart/context/SankeyFormatter.context.js +26 -0
- package/charts/sankey-chart/context/SankeyHighlight.context.d.ts +13 -0
- package/charts/sankey-chart/context/SankeyHighlight.context.js +25 -0
- package/charts/sankey-chart/context/SankeyStore.context.d.ts +4 -0
- package/charts/sankey-chart/context/{SankeyHoverStore.context.js → SankeyStore.context.js} +7 -7
- package/charts/sankey-chart/hooks/use-draw-sankey.d.ts +2 -1
- package/charts/sankey-chart/hooks/use-draw-sankey.js +31 -6
- package/charts/sankey-chart/hooks/use-sankey-formatter.d.ts +5 -0
- package/charts/sankey-chart/hooks/use-sankey-formatter.js +27 -0
- package/charts/sankey-chart/hooks/use-sankey-overlay-events.d.ts +4 -3
- package/charts/sankey-chart/hooks/use-sankey-overlay-events.js +28 -14
- package/charts/sankey-chart/providers/SankeyFormatterProvider.d.ts +17 -0
- package/charts/sankey-chart/providers/SankeyFormatterProvider.js +34 -0
- package/charts/sankey-chart/providers/{SankeyHoverStoreProvider.d.ts → SankeyStoreProvider.d.ts} +2 -2
- package/charts/sankey-chart/providers/{SankeyHoverStoreProvider.js → SankeyStoreProvider.js} +9 -9
- package/charts/sankey-chart/store/selectors.d.ts +14 -7
- package/charts/sankey-chart/store/selectors.js +11 -5
- package/charts/sankey-chart/store/store.d.ts +5 -2
- package/charts/sankey-chart/store/store.js +29 -7
- package/charts/sankey-chart/types/sankey-props.d.ts +11 -0
- package/charts/sankey-chart/types/sankey-shape.d.ts +22 -0
- package/charts/sankey-chart/types/{sankey-hover.js → sankey-shape.js} +2 -2
- package/charts/sankey-chart/types/sankey-state.d.ts +12 -0
- package/charts/sankey-chart/types/sankey-state.js +15 -0
- package/charts/sankey-chart/utils/find-connected-shapes.d.ts +35 -0
- package/charts/sankey-chart/utils/find-connected-shapes.js +44 -0
- package/charts/sankey-chart/utils/find-hovered-shape.d.ts +2 -2
- package/charts/sankey-chart/utils/find-hovered-shape.js +4 -11
- package/charts/sankey-chart/utils/generate-sankey-layout.js +10 -1
- package/charts/sankey-chart/utils/get-active-connected-set.d.ts +27 -0
- package/charts/sankey-chart/utils/get-active-connected-set.js +77 -0
- package/charts/sankey-chart/utils/is-same-sankey-shape.d.ts +3 -0
- package/charts/sankey-chart/utils/is-same-sankey-shape.js +37 -0
- package/charts/sankey-chart/utils/layout-index.d.ts +38 -0
- package/charts/sankey-chart/utils/layout-index.js +84 -0
- package/charts/sankey-chart/vendor/d3-sankey/sankey.js +20 -2
- package/charts/single-value/SingleValue.css +1 -1
- package/charts/single-value/SingleValue.sty.js +1 -1
- package/charts/single-value-grid/SingleValueGrid.css +2 -2
- package/charts/single-value-grid/SingleValueGrid.sty.js +1 -1
- package/charts/single-value-grid/components/GlobalFontSizeVariables.css +1 -1
- package/charts/single-value-grid/components/GlobalFontSizeVariables.sty.js +1 -1
- package/charts/single-value-grid/utils/build-props-from-grid.js +17 -14
- package/charts/timeseries/TimeseriesChart.d.ts +1 -0
- package/charts/timeseries/TimeseriesChart.js +2 -0
- package/charts/timeseries/TimeseriesChartInternal.js +0 -3
- package/charts/timeseries/TimeseriesChartRoot.js +2 -1
- package/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.css +2 -2
- package/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.sty.js +1 -1
- package/charts/timeseries/components/overlays/TimeseriesOverlays.css +4 -4
- package/charts/timeseries/components/overlays/TimeseriesOverlays.sty.js +4 -4
- package/charts/timeseries/components/overlays/TimeseriesSelection/utils/get-selected-datapoints.js +2 -2
- package/charts/timeseries/components/overlays/utils/tooltip/timeseries-tooltip.js +2 -2
- package/charts/timeseries/components/thresholds/ThresholdIndicators.css +2 -2
- package/charts/timeseries/components/thresholds/ThresholdIndicators.sty.js +2 -2
- package/charts/timeseries/providers/StoreProvider.js +2 -3
- package/charts/timeseries/providers/TimeseriesDataProvider.js +1 -1
- package/charts/timeseries/slots/shapes/Area.d.ts +4 -1
- package/charts/timeseries/slots/shapes/Line.d.ts +4 -1
- package/charts/timeseries/types/timeseries-band.d.ts +8 -1
- package/charts/timeseries/types/timeseries-props.d.ts +4 -1
- package/charts/timeseries/types/timeseries.d.ts +4 -1
- package/charts/top-list/TopList.css +1 -1
- package/charts/top-list/TopList.sty.js +1 -1
- package/charts/tree-map/components/TreeMapChartLayout.js +1 -1
- package/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.css +1 -1
- package/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.sty.js +1 -1
- package/charts/tree-map/providers/StoreProvider.js +1 -1
- package/charts/tree-map/providers/TreeMapChartProviders.js +1 -2
- package/charts/xy-chart/XYChartRoot.js +2 -2
- package/charts/xy-chart/components/axes/AxisArea.css +1 -1
- package/charts/xy-chart/components/axes/AxisArea.sty.js +1 -1
- package/charts/xy-chart/components/axes/AxisTickWithTruncation.css +3 -3
- package/charts/xy-chart/components/axes/AxisTickWithTruncation.sty.js +3 -3
- package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.css +2 -2
- package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js +2 -2
- package/charts/xy-chart/components/displays/RectLabelOverlay.css +3 -3
- package/charts/xy-chart/components/displays/RectLabelOverlay.sty.js +3 -3
- package/charts/xy-chart/components/displays/rect-accessors.js +1 -1
- package/charts/xy-chart/components/legend/XYLegend/XYLegend.js +1 -1
- package/charts/xy-chart/components/legend/XYLegend/xy-legend.css +1 -1
- package/charts/xy-chart/components/legend/XYLegend/xy-legend.sty.js +1 -1
- package/charts/xy-chart/components/overlay/XYChartOverlay.js +1 -3
- package/charts/xy-chart/components/overlay/explore/XYChartCrosshair.css +1 -1
- package/charts/xy-chart/components/overlay/explore/XYChartCrosshair.js +31 -11
- package/charts/xy-chart/components/overlay/explore/XYChartCrosshair.sty.js +1 -1
- package/charts/xy-chart/components/overlay/explore/XYChartExplore.css +2 -2
- package/charts/xy-chart/components/overlay/explore/XYChartExplore.sty.js +2 -2
- package/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.css +1 -1
- package/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.sty.js +1 -1
- package/charts/xy-chart/components/tooltip/XYChartTooltipContent.js +9 -1
- package/charts/xy-chart/components/tooltip/utils/tooltip-styles.css +5 -5
- package/charts/xy-chart/components/tooltip/utils/tooltip-styles.sty.js +4 -4
- package/charts/xy-chart/layout/XYChartLayout.css +2 -2
- package/charts/xy-chart/layout/XYChartLayout.sty.js +2 -2
- package/charts/xy-chart/processing-strategies/strategies/dot-series.js +1 -1
- package/charts/xy-chart/providers/XYChartOverlayPerformanceProvider.js +5 -2
- package/charts/xy-chart/providers/XYChartStoreProvider.js +2 -2
- package/charts/xy-chart/utils/query-closest-quadtree.js +3 -0
- package/charts/xy-chart/utils/query-hovered-grid.d.ts +2 -2
- package/charts/xy-chart/utils/query-hovered-grid.js +8 -2
- package/charts/xy-chart/utils/query-shared.js +9 -0
- package/charts/xy-chart-adoption/categorical-bar/CategoricalBarToXY.js +19 -6
- package/charts/xy-chart-adoption/categorical-bar/constants.d.ts +1 -0
- package/charts/xy-chart-adoption/categorical-bar/constants.js +3 -1
- package/charts/xy-chart-adoption/categorical-bar/iterate-slots.d.ts +2 -0
- package/charts/xy-chart-adoption/categorical-bar/iterate-slots.js +6 -1
- package/charts/xy-chart-adoption/categorical-bar/utils/map-threshold-to-xy.d.ts +4 -0
- package/charts/xy-chart-adoption/categorical-bar/utils/map-threshold-to-xy.js +54 -0
- package/content/accordion/Accordion.css +14 -14
- package/content/accordion/Accordion.sty.js +8 -8
- package/content/ai-loading-indicator/AiLoadingIndicator.css +12 -12
- package/content/ai-loading-indicator/AiLoadingIndicator.sty.js +4 -4
- package/content/ai-response/AiResponse.css +5 -5
- package/content/ai-response/AiResponse.sty.js +2 -2
- package/content/avatar/Avatar.css +13 -13
- package/content/avatar/Avatar.sty.js +4 -4
- package/content/avatar-group/AvatarGroup.css +3 -3
- package/content/avatar-group/AvatarGroup.sty.js +2 -2
- package/content/chip/BaseChip.css +82 -41
- package/content/chip/BaseChip.css.d.ts +59 -3
- package/content/chip/BaseChip.js +1 -2
- package/content/chip/BaseChip.sty.js +6 -6
- package/content/chip/ChipContent.css +11 -11
- package/content/chip/ChipContent.sty.js +2 -2
- package/content/chip/ChipDeleteButton.css +33 -19
- package/content/chip/ChipDeleteButton.css.d.ts +5 -0
- package/content/chip/ChipDeleteButton.js +3 -5
- package/content/chip/ChipDeleteButton.sty.js +7 -4
- package/content/chip/ChipKey.css +6 -6
- package/content/chip/ChipKey.sty.js +1 -1
- package/content/chip/GroupedChip.css +71 -3
- package/content/chip/GroupedChip.css.d.ts +1 -0
- package/content/chip/GroupedChip.js +26 -5
- package/content/chip/GroupedChip.sty.js +7 -4
- package/content/chip/hooks/usePendingFocusAnnouncement.d.ts +15 -0
- package/content/chip/hooks/usePendingFocusAnnouncement.js +70 -0
- package/content/chip/messages.d.ts +8 -0
- package/content/chip/messages.js +30 -0
- package/content/chip-group/ChipGroup.css +4 -4
- package/content/chip-group/ChipGroup.js +4 -1
- package/content/chip-group/ChipGroup.sty.js +1 -1
- package/content/chip-group/Control.css +4 -4
- package/content/chip-group/Control.js +15 -1
- package/content/chip-group/Control.sty.js +1 -1
- package/content/chip-group/contexts/InternalChipGroupContext.d.ts +12 -0
- package/content/code-snippet/CodeHighlight.css +25 -25
- package/content/code-snippet/CodeHighlight.sty.js +6 -6
- package/content/code-snippet/CodeSnippet.css +18 -18
- package/content/code-snippet/CodeSnippet.js +1 -1
- package/content/code-snippet/CodeSnippet.sty.js +4 -4
- package/content/code-snippet/HighlightExtended.js +3 -6
- package/content/empty-state/EmptyState.css +28 -28
- package/content/empty-state/EmptyState.sty.js +7 -7
- package/content/empty-state/slot-components/Footer.css +1 -1
- package/content/empty-state/slot-components/Footer.sty.js +1 -1
- package/content/empty-state/slot-components/Visual.css +3 -3
- package/content/empty-state/slot-components/Visual.sty.js +1 -1
- package/content/expandable-text/ExpandableText.css +7 -7
- package/content/expandable-text/ExpandableText.sty.js +2 -2
- package/content/feature-highlight/FeatureHighlight.css +12 -12
- package/content/feature-highlight/FeatureHighlight.sty.js +3 -3
- package/content/health-indicator/styles.css +23 -23
- package/content/health-indicator/styles.sty.js +1 -1
- package/content/information-overlay/InformationOverlay.css +25 -25
- package/content/information-overlay/InformationOverlay.sty.js +5 -5
- package/content/keyboard-shortcut/KeyboardShortcut.css +14 -14
- package/content/keyboard-shortcut/KeyboardShortcut.sty.js +2 -2
- package/content/markdown/Markdown.css +6 -3
- package/content/markdown/Markdown.css.d.ts +2 -1
- package/content/markdown/Markdown.js +11 -7
- package/content/markdown/Markdown.sty.js +4 -2
- package/content/markdown/remark-frontmatter-to-table.d.ts +14 -0
- package/content/markdown/remark-frontmatter-to-table.js +80 -0
- package/content/markdown/transformers/table-mapping.js +1 -1
- package/content/markdown/transformers/typography-mapping.css +9 -9
- package/content/markdown/transformers/typography-mapping.sty.js +6 -6
- package/content/microguide/Microguide.css +11 -11
- package/content/microguide/Microguide.sty.js +7 -7
- package/content/progress/ProgressBar.css +71 -71
- package/content/progress/ProgressBar.sty.js +5 -5
- package/content/progress/ProgressBarIcon.css +2 -2
- package/content/progress/ProgressBarIcon.sty.js +1 -1
- package/content/progress/ProgressBarLabel.css +3 -3
- package/content/progress/ProgressBarLabel.sty.js +1 -1
- package/content/progress/ProgressBarValue.css +5 -5
- package/content/progress/ProgressBarValue.sty.js +1 -1
- package/content/progress/ProgressCircle.css +48 -40
- package/content/progress/ProgressCircle.css.d.ts +25 -5
- package/content/progress/ProgressCircle.js +9 -11
- package/content/progress/ProgressCircle.sty.js +12 -10
- package/content/shared-components/Visual.css +3 -3
- package/content/shared-components/Visual.sty.js +1 -1
- package/content/skeleton/Skeleton.css +7 -7
- package/content/skeleton/Skeleton.sty.js +5 -5
- package/content/terminology-overlay/TerminologyOverlay.css +4 -4
- package/content/terminology-overlay/TerminologyOverlay.sty.js +1 -1
- package/core/components/app-root/AppRoot.css +1031 -924
- package/core/components/app-root/AppRoot.sty.js +1 -1
- package/core/components/app-root/visual-refresh-overrides.d.ts +0 -10
- package/core/components/app-root/visual-refresh-overrides.js +2 -12
- package/core/components/focus-scope/FocusScope.js +38 -15
- package/core/components/time-indicator/TimeIndicator.js +4 -4
- package/core/components/visually-hidden/VisuallyHidden.css +1 -1
- package/core/components/visually-hidden/VisuallyHidden.sty.js +1 -1
- package/core/hooks/useFocusRing.js +1 -1
- package/core/hooks/useRovingFocus.js +1 -1
- package/core/hooks/useSlots.js +7 -4
- package/core/hooks/useVisualRefreshEnabled.js +1 -1
- package/core/sdk/app-state/AppStateProvider.js +1 -1
- package/core/sdk/app-state/useAppState.d.ts +5 -1
- package/core/sdk/app-state/useAppState.js +3 -2
- package/core/sdk/app-state/useAppStateInternal.d.ts +1 -1
- package/core/sdk/app-state/useAppStateInternal.js +2 -2
- package/core/sdk/sdk-logger.js +2 -2
- package/core/styles/defaultChartValues.css +1 -1
- package/core/styles/defaultChartValues.sty.js +1 -1
- package/core/styles/focusRing.css +66 -66
- package/core/styles/focusRing.sty.js +2 -2
- package/core/styles/focusRingStatic.css +34 -34
- package/core/styles/focusRingStatic.css.d.ts +22 -0
- package/core/styles/focusRingStatic.sty.js +3 -1
- package/core/styles/virtualFocus.css +2 -2
- package/core/styles/virtualFocus.sty.js +1 -1
- package/core/types/a11y-props.d.ts +5 -0
- package/core/utils/colorUtils.css +60 -60
- package/core/utils/colorUtils.sty.js +2 -2
- package/core/utils/focus-management/get-first-tabbable-child.d.ts +10 -0
- package/core/utils/focus-management/get-first-tabbable-child.js +32 -0
- package/core/utils/focus-management/get-last-tabbable-child.d.ts +10 -0
- package/core/utils/focus-management/get-last-tabbable-child.js +35 -0
- package/core/utils/focus-management/is-tabbable.d.ts +18 -0
- package/core/utils/focus-management/is-tabbable.js +61 -0
- package/core/utils/isBrowser.js +1 -1
- package/editors/base-code-editor/BaseCodeEditor.css +137 -136
- package/editors/base-code-editor/BaseCodeEditor.d.ts +6 -0
- package/editors/base-code-editor/BaseCodeEditor.js +113 -8
- package/editors/base-code-editor/BaseCodeEditor.sty.js +2 -2
- package/editors/base-code-editor/baseCodeEditorMessages.d.ts +20 -0
- package/editors/base-code-editor/baseCodeEditorMessages.js +20 -0
- package/editors/base-code-editor/configuration/getDefaultConfigurations.js +1 -1
- package/editors/base-code-editor/off-screen-diagnostic-indicators/OffScreenDiagnosticIndicators.css +40 -0
- package/editors/base-code-editor/off-screen-diagnostic-indicators/OffScreenDiagnosticIndicators.css.d.ts +25 -0
- package/editors/base-code-editor/off-screen-diagnostic-indicators/OffScreenDiagnosticIndicators.d.ts +20 -0
- package/editors/base-code-editor/off-screen-diagnostic-indicators/OffScreenDiagnosticIndicators.js +131 -0
- package/editors/base-code-editor/off-screen-diagnostic-indicators/OffScreenDiagnosticIndicators.sty.js +25 -0
- package/editors/base-code-editor/off-screen-diagnostic-indicators/off-screen-diagnostic-indicators.utils.d.ts +101 -0
- package/editors/base-code-editor/off-screen-diagnostic-indicators/off-screen-diagnostic-indicators.utils.js +122 -0
- package/editors/code-editor/CodeEditor.d.ts +10 -0
- package/editors/code-editor/CodeEditor.js +5 -3
- package/editors/dql-editor/DQLEditor.js +2 -2
- package/editors/dql-editor/actions-menu/ActionsMenu.css +10 -10
- package/editors/dql-editor/actions-menu/ActionsMenu.sty.js +5 -5
- package/editors/dql-editor/autocomplete/SuggestionsInfoSection.css +7 -7
- package/editors/dql-editor/autocomplete/SuggestionsInfoSection.sty.js +3 -3
- package/esm/buttons/button/Button.css +15 -15
- package/esm/buttons/button/Button.sty.js +4 -4
- package/esm/buttons/button/Button.sty.js.map +1 -1
- package/esm/buttons/button/utils/is-virtual-event.js.map +1 -1
- package/esm/buttons/index.js +2 -0
- package/esm/buttons/index.js.map +2 -2
- package/esm/buttons/inline-button/InlineButton.css +145 -0
- package/esm/buttons/inline-button/InlineButton.js +188 -0
- package/esm/buttons/inline-button/InlineButton.js.map +7 -0
- package/esm/buttons/inline-button/InlineButton.sty.js +22 -0
- package/esm/buttons/inline-button/InlineButton.sty.js.map +7 -0
- package/esm/buttons/inline-button/Prefix.js +33 -0
- package/esm/buttons/inline-button/Prefix.js.map +7 -0
- package/esm/buttons/inline-button/Suffix.js +33 -0
- package/esm/buttons/inline-button/Suffix.js.map +7 -0
- package/esm/buttons/intent-button/IntentButton.css +1 -1
- package/esm/buttons/intent-button/IntentButton.sty.js +1 -1
- package/esm/buttons/intent-button/IntentButton.sty.js.map +1 -1
- package/esm/buttons/notify-button/NotifyButton.css +2 -2
- package/esm/buttons/notify-button/NotifyButton.sty.js +2 -2
- package/esm/buttons/notify-button/NotifyButton.sty.js.map +1 -1
- package/esm/charts/categorical-bar/CategoricalBarChartLayout.js +1 -1
- package/esm/charts/categorical-bar/CategoricalBarChartLayout.js.map +1 -1
- package/esm/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.css +2 -2
- package/esm/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.sty.js +2 -2
- package/esm/charts/categorical-bar/components/interactions/overlays/CategoricalBarChartInspectOverlay.sty.js.map +1 -1
- package/esm/charts/categorical-bar/components/interactions/tooltip/CategoricalBarChartTooltip.js.map +1 -1
- package/esm/charts/categorical-bar/components/interactions/tooltip/CategoricalBarChartTooltipWrapper.js.map +1 -1
- package/esm/charts/categorical-bar/providers/StoreProvider.js +1 -1
- package/esm/charts/categorical-bar/providers/StoreProvider.js.map +2 -2
- package/esm/charts/categorical-bar/types/categorical-bar-chart.js.map +1 -1
- package/esm/charts/categorical-bar/utils/iterate-slots.js.map +1 -1
- package/esm/charts/core/components/annotations/AnnotationsAtom.css +1 -1
- package/esm/charts/core/components/annotations/AnnotationsAtom.sty.js +1 -1
- package/esm/charts/core/components/annotations/AnnotationsAtom.sty.js.map +1 -1
- package/esm/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.css +1 -1
- package/esm/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.sty.js +1 -1
- package/esm/charts/core/components/annotations/components/canvas/AnnotationsCanvasLayout.sty.js.map +1 -1
- package/esm/charts/core/components/annotations/components/indicators/utils/extract-unique-indicators-by-priority.js.map +1 -1
- package/esm/charts/core/components/annotations/components/overlays/AnnotationsOverlays.css +1 -1
- package/esm/charts/core/components/annotations/components/overlays/AnnotationsOverlays.sty.js +1 -1
- package/esm/charts/core/components/annotations/components/overlays/AnnotationsOverlays.sty.js.map +1 -1
- package/esm/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.css +1 -1
- package/esm/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.sty.js +1 -1
- package/esm/charts/core/components/annotations/components/overlays/AnnotationsScrollWrapper.sty.js.map +1 -1
- package/esm/charts/core/components/annotations/components/tooltip/AnnotationsOverlayTooltip.js.map +1 -1
- package/esm/charts/core/components/axes/Axis.css +1 -1
- package/esm/charts/core/components/axes/Axis.js.map +2 -2
- package/esm/charts/core/components/axes/Axis.sty.js +1 -1
- package/esm/charts/core/components/axes/Axis.sty.js.map +1 -1
- package/esm/charts/core/components/axes/AxisBottom.js.map +1 -1
- package/esm/charts/core/components/axes/AxisLeft.js.map +1 -1
- package/esm/charts/core/components/axes/AxisPrimitive.js.map +1 -1
- package/esm/charts/core/components/axes/AxisRight.js.map +1 -1
- package/esm/charts/core/components/axes/AxisTop.js.map +1 -1
- package/esm/charts/core/components/axes/components/PanningControls/PanningControls.css +16 -16
- package/esm/charts/core/components/axes/components/PanningControls/PanningControls.sty.js +2 -2
- package/esm/charts/core/components/axes/components/PanningControls/PanningControls.sty.js.map +1 -1
- package/esm/charts/core/components/axes/types.js.map +2 -2
- package/esm/charts/core/components/chart-grid/ChartGrid.css +3 -3
- package/esm/charts/core/components/chart-grid/ChartGrid.sty.js +3 -3
- package/esm/charts/core/components/chart-grid/ChartGrid.sty.js.map +1 -1
- package/esm/charts/core/components/chart-layout/components/styles.css +15 -15
- package/esm/charts/core/components/chart-layout/components/styles.sty.js +4 -4
- package/esm/charts/core/components/chart-layout/components/styles.sty.js.map +1 -1
- package/esm/charts/core/components/chart-layout/slots/Graph.js +1 -1
- package/esm/charts/core/components/chart-layout/slots/Graph.js.map +2 -2
- package/esm/charts/core/components/chart-layout/slots/Legend.js +1 -1
- package/esm/charts/core/components/chart-layout/slots/Legend.js.map +2 -2
- package/esm/charts/core/components/chart-layout/utils/extract-layout-slots.js.map +1 -1
- package/esm/charts/core/components/chart-layout/utils/get-chart-layout-settings.js +1 -1
- package/esm/charts/core/components/chart-layout/utils/get-chart-layout-settings.js.map +1 -1
- package/esm/charts/core/components/chart-states/ChartState.css +4 -4
- package/esm/charts/core/components/chart-states/ChartState.sty.js +4 -4
- package/esm/charts/core/components/chart-states/ChartState.sty.js.map +1 -1
- package/esm/charts/core/components/crosshair/VerticalCrosshair.js +2 -1
- package/esm/charts/core/components/crosshair/VerticalCrosshair.js.map +2 -2
- package/esm/charts/core/components/crosshair/components/Magnifier.css +7 -7
- package/esm/charts/core/components/crosshair/components/Magnifier.sty.js +7 -7
- package/esm/charts/core/components/crosshair/components/Magnifier.sty.js.map +1 -1
- package/esm/charts/core/components/crosshair/components/TopMagnifier.js +2 -2
- package/esm/charts/core/components/crosshair/components/TopMagnifier.js.map +2 -2
- package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.css +5 -5
- package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.js +2 -0
- package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.js.map +2 -2
- package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.sty.js +2 -2
- package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.sty.js.map +1 -1
- package/esm/charts/core/components/interactions-overlay/interactions/explore/keyboardInteractions.js +4 -1
- package/esm/charts/core/components/interactions-overlay/interactions/explore/keyboardInteractions.js.map +2 -2
- package/esm/charts/core/components/interactions-overlay/interactions/pan/keyboardInteractions.js +4 -1
- package/esm/charts/core/components/interactions-overlay/interactions/pan/keyboardInteractions.js.map +2 -2
- package/esm/charts/core/components/interactions-overlay/interactions/zoom/keyboardInteractions.js +4 -1
- package/esm/charts/core/components/interactions-overlay/interactions/zoom/keyboardInteractions.js.map +2 -2
- package/esm/charts/core/components/interactions-overlay/types.js.map +1 -1
- package/esm/charts/core/components/interactions-overlay/utils/get-explore-interations.js +2 -0
- package/esm/charts/core/components/interactions-overlay/utils/get-explore-interations.js.map +2 -2
- package/esm/charts/core/components/interactions-overlay/utils/get-pan-interactions.js +2 -0
- package/esm/charts/core/components/interactions-overlay/utils/get-pan-interactions.js.map +2 -2
- package/esm/charts/core/components/interactions-overlay/utils/get-zoom-interactions.js +2 -0
- package/esm/charts/core/components/interactions-overlay/utils/get-zoom-interactions.js.map +2 -2
- package/esm/charts/core/components/interactions-overlay/utils/handle-keydown.js +7 -2
- package/esm/charts/core/components/interactions-overlay/utils/handle-keydown.js.map +2 -2
- package/esm/charts/core/components/legend/categorical/ChartLegend.css +1 -1
- package/esm/charts/core/components/legend/categorical/ChartLegend.sty.js +1 -1
- package/esm/charts/core/components/legend/categorical/ChartLegend.sty.js.map +1 -1
- package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.css +5 -4
- package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.js +1 -0
- package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.js.map +2 -2
- package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.sty.js +3 -3
- package/esm/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.sty.js.map +1 -1
- package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.css +20 -18
- package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.sty.js +6 -6
- package/esm/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.sty.js.map +1 -1
- package/esm/charts/core/components/legend/categorical/components/ChartLegendItemLabel/ChartLegendItemLabel.js +1 -1
- package/esm/charts/core/components/legend/categorical/components/ChartLegendItemLabel/ChartLegendItemLabel.js.map +2 -2
- package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.css +3 -3
- package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.sty.js +1 -1
- package/esm/charts/core/components/legend/categorical/components/ChartLegendSeriesActions/ChartLegendSeriesActions.sty.js.map +1 -1
- package/esm/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.css +8 -8
- package/esm/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.sty.js +4 -4
- package/esm/charts/core/components/legend/categorical/components/ChartVirtualizedLegendGrid.sty.js.map +1 -1
- package/esm/charts/core/components/legend/categorical/constants.js +1 -1
- package/esm/charts/core/components/legend/categorical/constants.js.map +1 -1
- package/esm/charts/core/components/legend/categorical/hooks/useLegendInteractions.js +6 -2
- package/esm/charts/core/components/legend/categorical/hooks/useLegendInteractions.js.map +2 -2
- package/esm/charts/core/components/legend/range/RangeLegend.css +3 -3
- package/esm/charts/core/components/legend/range/RangeLegend.sty.js +1 -1
- package/esm/charts/core/components/legend/range/RangeLegend.sty.js.map +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.css +2 -2
- package/esm/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.sty.js +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendBoundaryLabel/RangeLegendBoundaryLabel.sty.js.map +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.css +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.sty.js +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendItemLabel/RangeLegendItemLabel.sty.js.map +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.css +3 -3
- package/esm/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.sty.js +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendItemMarker/RangeLegendItemMarker.sty.js.map +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.css +3 -3
- package/esm/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.sty.js +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendMarkers/RangeLegendMarkers.sty.js.map +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.css +5 -5
- package/esm/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.sty.js +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendSegments/RangeLegendSegments.sty.js.map +1 -1
- package/esm/charts/core/components/legend/range/components/RangeLegendSegmentsOverlay.js.map +1 -1
- package/esm/charts/core/components/legend/range/utils/get-min-max-values.js +2 -2
- package/esm/charts/core/components/legend/range/utils/get-min-max-values.js.map +1 -1
- package/esm/charts/core/components/legend/range/utils/labels-collision.js.map +1 -1
- package/esm/charts/core/components/loader-overlay/LoaderOverlay.css +2 -2
- package/esm/charts/core/components/loader-overlay/LoaderOverlay.sty.js +2 -2
- package/esm/charts/core/components/loader-overlay/LoaderOverlay.sty.js.map +1 -1
- package/esm/charts/core/components/overlay-tooltip/OverlayTooltip.js +5 -2
- package/esm/charts/core/components/overlay-tooltip/OverlayTooltip.js.map +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltip.js +6 -5
- package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltip.js.map +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltipRenderer.js +4 -1
- package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltipRenderer.js.map +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/SeriesActionsMenuContent.js +80 -0
- package/esm/charts/core/components/overlay-tooltip/components/SeriesActionsMenuContent.js.map +7 -0
- package/esm/charts/core/components/overlay-tooltip/components/TooltipPortal.js +95 -20
- package/esm/charts/core/components/overlay-tooltip/components/TooltipPortal.js.map +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/global-actions/actions.css +4 -4
- package/esm/charts/core/components/overlay-tooltip/components/global-actions/actions.sty.js +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/global-actions/actions.sty.js.map +1 -1
- package/esm/charts/core/components/overlay-tooltip/components/header/Header.css +14 -6
- package/esm/charts/core/components/overlay-tooltip/components/header/Header.js +15 -11
- package/esm/charts/core/components/overlay-tooltip/components/header/Header.js.map +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/header/Header.sty.js +7 -7
- package/esm/charts/core/components/overlay-tooltip/components/header/Header.sty.js.map +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/header/utils/get-shown-header-text.js +13 -6
- package/esm/charts/core/components/overlay-tooltip/components/header/utils/get-shown-header-text.js.map +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/series/SeriesItem.js +28 -23
- package/esm/charts/core/components/overlay-tooltip/components/series/SeriesItem.js.map +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/series/seriesSymbol.css +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/series/seriesSymbol.sty.js +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/series/seriesSymbol.sty.js.map +1 -1
- package/esm/charts/core/components/overlay-tooltip/contexts/ActiveSeriesMenuContext.js +29 -0
- package/esm/charts/core/components/overlay-tooltip/contexts/ActiveSeriesMenuContext.js.map +7 -0
- package/esm/charts/core/components/overlay-tooltip/hooks/useSvgAriaDescribedBy.js +36 -0
- package/esm/charts/core/components/overlay-tooltip/hooks/useSvgAriaDescribedBy.js.map +7 -0
- package/esm/charts/core/components/overlay-tooltip/tooltip.css +52 -52
- package/esm/charts/core/components/overlay-tooltip/tooltip.sty.js +39 -39
- package/esm/charts/core/components/overlay-tooltip/tooltip.sty.js.map +1 -1
- package/esm/charts/core/components/overlay-tooltip/utils/text-truncation-header.js +104 -2
- package/esm/charts/core/components/overlay-tooltip/utils/text-truncation-header.js.map +2 -2
- package/esm/charts/core/components/overlays/ChartOverlaysBorder.css +6 -6
- package/esm/charts/core/components/overlays/ChartOverlaysBorder.sty.js +6 -6
- package/esm/charts/core/components/overlays/ChartOverlaysBorder.sty.js.map +1 -1
- package/esm/charts/core/components/selection-area/SelectionArea.css +9 -9
- package/esm/charts/core/components/selection-area/SelectionArea.sty.js +4 -4
- package/esm/charts/core/components/selection-area/SelectionArea.sty.js.map +1 -1
- package/esm/charts/core/components/selection-area/SelectionTooltipWithAsyncActions.js.map +1 -1
- package/esm/charts/core/components/selection-area/tooltip/CustomActions.js +5 -5
- package/esm/charts/core/components/selection-area/tooltip/CustomActions.js.map +2 -2
- package/esm/charts/core/components/series-action/ChartSeriesAction.js +1 -1
- package/esm/charts/core/components/series-action/ChartSeriesAction.js.map +2 -2
- package/esm/charts/core/components/shape/BubbleShape/BubbleShape.css +5 -5
- package/esm/charts/core/components/shape/BubbleShape/BubbleShape.sty.js +3 -3
- package/esm/charts/core/components/shape/BubbleShape/BubbleShape.sty.js.map +1 -1
- package/esm/charts/core/components/shape/EmojiShape/EmojiShape.css +3 -3
- package/esm/charts/core/components/shape/EmojiShape/EmojiShape.sty.js +1 -1
- package/esm/charts/core/components/shape/EmojiShape/EmojiShape.sty.js.map +1 -1
- package/esm/charts/core/components/shape/IconShape/IconShape.css +3 -3
- package/esm/charts/core/components/shape/IconShape/IconShape.sty.js +1 -1
- package/esm/charts/core/components/shape/IconShape/IconShape.sty.js.map +1 -1
- package/esm/charts/core/components/shape/styles/DataPointShape.css +8 -8
- package/esm/charts/core/components/shape/styles/DataPointShape.sty.js +4 -4
- package/esm/charts/core/components/shape/styles/DataPointShape.sty.js.map +1 -1
- package/esm/charts/core/components/shared-chart-interactions/SharedChartInteractions.css +1 -1
- package/esm/charts/core/components/shared-chart-interactions/SharedChartInteractions.sty.js +1 -1
- package/esm/charts/core/components/shared-chart-interactions/SharedChartInteractions.sty.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/SingleValueRenderer.css +5 -5
- package/esm/charts/core/components/single-value-renderer/SingleValueRenderer.sty.js +5 -5
- package/esm/charts/core/components/single-value-renderer/SingleValueRenderer.sty.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/components/ContentGrid.css +1 -1
- package/esm/charts/core/components/single-value-renderer/components/ContentGrid.sty.js +1 -1
- package/esm/charts/core/components/single-value-renderer/components/ContentGrid.sty.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/components/Icon.css +3 -3
- package/esm/charts/core/components/single-value-renderer/components/Icon.sty.js +2 -2
- package/esm/charts/core/components/single-value-renderer/components/Icon.sty.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/components/Label.css +1 -1
- package/esm/charts/core/components/single-value-renderer/components/Label.sty.js +1 -1
- package/esm/charts/core/components/single-value-renderer/components/Label.sty.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/components/SingleValueToolbar.css +1 -1
- package/esm/charts/core/components/single-value-renderer/components/SingleValueToolbar.sty.js +1 -1
- package/esm/charts/core/components/single-value-renderer/components/SingleValueToolbar.sty.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/components/Value.css +5 -5
- package/esm/charts/core/components/single-value-renderer/components/Value.sty.js +3 -3
- package/esm/charts/core/components/single-value-renderer/components/Value.sty.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/components/trend/Trend.css +3 -3
- package/esm/charts/core/components/single-value-renderer/components/trend/Trend.sty.js +3 -3
- package/esm/charts/core/components/single-value-renderer/components/trend/Trend.sty.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/components/trend/components/Icon.css +2 -2
- package/esm/charts/core/components/single-value-renderer/components/trend/components/Icon.sty.js +1 -1
- package/esm/charts/core/components/single-value-renderer/components/trend/components/Icon.sty.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/components/trend/utils/define-trend-colors.js +2 -2
- package/esm/charts/core/components/single-value-renderer/components/trend/utils/define-trend-colors.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/utils/format-value.js.map +1 -1
- package/esm/charts/core/components/single-value-renderer/utils/get-content-and-background-color.js.map +1 -1
- package/esm/charts/core/components/sparkline-display/Sparkline.css +6 -6
- package/esm/charts/core/components/sparkline-display/Sparkline.sty.js +2 -2
- package/esm/charts/core/components/sparkline-display/Sparkline.sty.js.map +1 -1
- package/esm/charts/core/components/sparkline-display/SparklineRenderer.js +40 -32
- package/esm/charts/core/components/sparkline-display/SparklineRenderer.js.map +2 -2
- package/esm/charts/core/components/text-ellipsis/ChartTextEllipsis.css +7 -7
- package/esm/charts/core/components/text-ellipsis/ChartTextEllipsis.sty.js +3 -3
- package/esm/charts/core/components/text-ellipsis/ChartTextEllipsis.sty.js.map +1 -1
- package/esm/charts/core/components/text-ellipsis/truncate-string.js +105 -9
- package/esm/charts/core/components/text-ellipsis/truncate-string.js.map +2 -2
- package/esm/charts/core/components/threshold-bar/styles.css +11 -11
- package/esm/charts/core/components/threshold-bar/styles.sty.js +2 -2
- package/esm/charts/core/components/threshold-bar/styles.sty.js.map +1 -1
- package/esm/charts/core/components/toolbar/ChartToolbarRenderer.css +16 -16
- package/esm/charts/core/components/toolbar/ChartToolbarRenderer.js +2 -2
- package/esm/charts/core/components/toolbar/ChartToolbarRenderer.js.map +1 -1
- package/esm/charts/core/components/toolbar/ChartToolbarRenderer.sty.js +8 -8
- package/esm/charts/core/components/toolbar/ChartToolbarRenderer.sty.js.map +1 -1
- package/esm/charts/core/components/toolbar/ChartToolbarVisibilityOverlay.js.map +1 -1
- package/esm/charts/core/components/toolbar/components/ChartDataMenu.css +2 -2
- package/esm/charts/core/components/toolbar/components/ChartDataMenu.sty.js +1 -1
- package/esm/charts/core/components/toolbar/components/ChartDataMenu.sty.js.map +1 -1
- package/esm/charts/core/components/toolbar/components/Control.css +17 -17
- package/esm/charts/core/components/toolbar/components/Control.sty.js +5 -5
- package/esm/charts/core/components/toolbar/components/Control.sty.js.map +1 -1
- package/esm/charts/core/components/toolbar/components/ToolbarMenu.css +4 -4
- package/esm/charts/core/components/toolbar/components/ToolbarMenu.sty.js +2 -2
- package/esm/charts/core/components/toolbar/components/ToolbarMenu.sty.js.map +1 -1
- package/esm/charts/core/components/toolbar/styles.css +1 -1
- package/esm/charts/core/components/toolbar/styles.sty.js +1 -1
- package/esm/charts/core/components/toolbar/styles.sty.js.map +1 -1
- package/esm/charts/core/components/toolbar/types.js.map +1 -1
- package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.css +6 -6
- package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.js.map +1 -1
- package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.sty.js +2 -2
- package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.css +8 -8
- package/esm/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.sty.js +3 -3
- package/esm/charts/core/components/tooltip/ChartTooltip/components/ActionItem/ActionItem.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.css +2 -2
- package/esm/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.sty.js +1 -1
- package/esm/charts/core/components/tooltip/ChartTooltip/components/SeriesItem/SeriesItem.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.css +1 -1
- package/esm/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.sty.js +1 -1
- package/esm/charts/core/components/tooltip/ChartTooltip/components/TimeFrameHeader/TimeFrameHeader.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.css +6 -6
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.sty.js +2 -2
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/BasicChartTooltip/BasicChartTooltip.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.css +7 -7
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.js.map +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.sty.js +6 -6
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltip.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/components/InteractiveChartTooltipVirtualizedSeries.js.map +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/contents/SeriesBasedContent.js.map +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.css +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.sty.js +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/headers/HeaderTooltip.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/slots/Actions.js +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/slots/Actions.js.map +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/slots/Body.js +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/slots/Body.js.map +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/slots/Header.js +1 -1
- package/esm/charts/core/components/tooltip/InteractiveChartTooltip/slots/Header.js.map +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.css +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.sty.js +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipFooter/TooltipFooter.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.css +2 -2
- package/esm/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.sty.js +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipHeader/TooltipHeader.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.css +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.sty.js +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipInfoContent/TooltipInfoContent.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.css +3 -3
- package/esm/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.sty.js +2 -2
- package/esm/charts/core/components/tooltip/section-components/TooltipItem/TooltipItem.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.css +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.sty.js +1 -1
- package/esm/charts/core/components/tooltip/section-components/TooltipSymbolContent/TooltipSymbolContent.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.css +2 -2
- package/esm/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.sty.js +2 -2
- package/esm/charts/core/components/tooltip/section-components/VirtualizedTooltipBody/VirtualizedTooltipBody.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/shared/styles/SeriesBasedContent.css +12 -12
- package/esm/charts/core/components/tooltip/shared/styles/SeriesBasedContent.sty.js +7 -7
- package/esm/charts/core/components/tooltip/shared/styles/SeriesBasedContent.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip/shared/styles/TooltipBody.css +1 -1
- package/esm/charts/core/components/tooltip/shared/styles/TooltipBody.sty.js +1 -1
- package/esm/charts/core/components/tooltip/shared/styles/TooltipBody.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.css +1 -1
- package/esm/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.sty.js +1 -1
- package/esm/charts/core/components/tooltip-atoms/components/HeaderChipAtom/HeaderChipAtom.sty.js.map +1 -1
- package/esm/charts/core/components/tooltip-atoms/components/styles.css +4 -4
- package/esm/charts/core/components/tooltip-atoms/components/styles.sty.js +4 -4
- package/esm/charts/core/components/tooltip-atoms/components/styles.sty.js.map +1 -1
- package/esm/charts/core/components/zoom/ZoomCursors.css +2 -2
- package/esm/charts/core/components/zoom/ZoomCursors.sty.js +3 -3
- package/esm/charts/core/components/zoom/ZoomCursors.sty.js.map +1 -1
- package/esm/charts/core/hooks/useDragElement.js.map +1 -1
- package/esm/charts/core/hooks/usePointerAndScrollResponsiveChartBounds.js +2 -2
- package/esm/charts/core/hooks/usePointerAndScrollResponsiveChartBounds.js.map +1 -1
- package/esm/charts/core/hooks/useResolveAsyncComponent.js.map +1 -1
- package/esm/charts/core/hooks/useScrollResponsiveChartBounds.js +1 -1
- package/esm/charts/core/hooks/useScrollResponsiveChartBounds.js.map +1 -1
- package/esm/charts/core/hooks/useThrottledCallbackOnScroll.js +1 -1
- package/esm/charts/core/hooks/useThrottledCallbackOnScroll.js.map +1 -1
- package/esm/charts/core/slots/chart-interactions/Pan.js.map +1 -1
- package/esm/charts/core/slots/chart-interactions/Zoom.js.map +1 -1
- package/esm/charts/core/slots/chart-interactions/ZoomX.js.map +1 -1
- package/esm/charts/core/slots/chart-states/EmptyStateSlot.js +4 -1
- package/esm/charts/core/slots/chart-states/EmptyStateSlot.js.map +2 -2
- package/esm/charts/core/slots/chart-states/ErrorStateSlot.js +4 -1
- package/esm/charts/core/slots/chart-states/ErrorStateSlot.js.map +2 -2
- package/esm/charts/core/slots/toolbar/ChartToolbar.js +2 -2
- package/esm/charts/core/slots/toolbar/ChartToolbar.js.map +2 -2
- package/esm/charts/core/slots/toolbar/DownloadData.js.map +1 -1
- package/esm/charts/core/types/tooltip.js.map +1 -1
- package/esm/charts/core/typographyStyles.css +1 -1
- package/esm/charts/core/typographyStyles.sty.js +1 -1
- package/esm/charts/core/typographyStyles.sty.js.map +1 -1
- package/esm/charts/core/utils/build-rgba-color-with-opacity.js +1 -1
- package/esm/charts/core/utils/build-rgba-color-with-opacity.js.map +1 -1
- package/esm/charts/core/utils/iterate-chart-interactions-slots.js.map +1 -1
- package/esm/charts/core/utils/prepare-inverted-color-palette.js.map +1 -1
- package/esm/charts/core/utils/text-truncation.js.map +1 -1
- package/esm/charts/flame/flame-chart/FlameChart.js +25 -32
- package/esm/charts/flame/flame-chart/FlameChart.js.map +2 -2
- package/esm/charts/flame/flame-chart/components/tooltip/DefaultTooltip.js +51 -0
- package/esm/charts/flame/flame-chart/components/tooltip/DefaultTooltip.js.map +7 -0
- package/esm/charts/flame/flame-chart/components/tooltip/messages.js +12 -0
- package/esm/charts/flame/flame-chart/components/tooltip/messages.js.map +7 -0
- package/esm/charts/flame/flame-chart/utils/iterate-slots.js +2 -14
- package/esm/charts/flame/flame-chart/utils/iterate-slots.js.map +2 -2
- package/esm/charts/flame/flame-graph/FlameGraph.js +35 -45
- package/esm/charts/flame/flame-graph/FlameGraph.js.map +2 -2
- package/esm/charts/flame/flame-graph/components/tooltip/DefaultTooltip.js +60 -0
- package/esm/charts/flame/flame-graph/components/tooltip/DefaultTooltip.js.map +7 -0
- package/esm/charts/flame/flame-graph/components/tooltip/messages.js +12 -0
- package/esm/charts/flame/flame-graph/components/tooltip/messages.js.map +7 -0
- package/esm/charts/flame/flame-graph/utils/iterate-slots.js +2 -17
- package/esm/charts/flame/flame-graph/utils/iterate-slots.js.map +2 -2
- package/esm/charts/flame/shared/components/tooltip/FlameTooltip.js +76 -30
- package/esm/charts/flame/shared/components/tooltip/FlameTooltip.js.map +2 -2
- package/esm/charts/flame/shared/components/tooltip/messages.js +32 -0
- package/esm/charts/flame/shared/components/tooltip/messages.js.map +7 -0
- package/esm/charts/flame/shared/slots/Tooltip.js.map +2 -2
- package/esm/charts/flame/shared/utils/build-tooltip-base-data.js +37 -0
- package/esm/charts/flame/shared/utils/build-tooltip-base-data.js.map +7 -0
- package/esm/charts/flame/shared/utils/make-iterate-slots.js +21 -0
- package/esm/charts/flame/shared/utils/make-iterate-slots.js.map +7 -0
- package/esm/charts/flame/shared/utils/order-spans-hierarchically.js +7 -2
- package/esm/charts/flame/shared/utils/order-spans-hierarchically.js.map +2 -2
- package/esm/charts/flame/shared/utils/resolve-flame-tooltip-content.js +26 -0
- package/esm/charts/flame/shared/utils/resolve-flame-tooltip-content.js.map +7 -0
- package/esm/charts/gantt-chart/GanttChartLine.css +1 -1
- package/esm/charts/gantt-chart/GanttChartLine.sty.js +1 -1
- package/esm/charts/gantt-chart/GanttChartLine.sty.js.map +1 -1
- package/esm/charts/gantt-chart/components/GanttChartLineRenderer.css +1 -1
- package/esm/charts/gantt-chart/components/GanttChartLineRenderer.sty.js +1 -1
- package/esm/charts/gantt-chart/components/GanttChartLineRenderer.sty.js.map +1 -1
- package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.css +1 -1
- package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.js.map +1 -1
- package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.sty.js +1 -1
- package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.sty.js.map +1 -1
- package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltipBody.js.map +1 -1
- package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltipContent.js.map +1 -1
- package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltipHeader.js.map +1 -1
- package/esm/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.css +1 -1
- package/esm/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.sty.js +1 -1
- package/esm/charts/gauge/components/GaugeChartLayout/GaugeChartLayout.sty.js.map +1 -1
- package/esm/charts/gauge/components/GaugeLabel/GaugeLabel.css +6 -6
- package/esm/charts/gauge/components/GaugeLabel/GaugeLabel.sty.js +3 -3
- package/esm/charts/gauge/components/GaugeLabel/GaugeLabel.sty.js.map +1 -1
- package/esm/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.css +3 -3
- package/esm/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.sty.js +1 -1
- package/esm/charts/gauge/components/GaugeLabelsWrapper/GaugeLabelsWrapper.sty.js.map +1 -1
- package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.css +4 -4
- package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.sty.js +3 -3
- package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.sty.js.map +1 -1
- package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.css +2 -2
- package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.js +1 -1
- package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.js.map +2 -2
- package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.sty.js +2 -2
- package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.sty.js.map +1 -1
- package/esm/charts/gauge/components/GaugeRootSVG.js +1 -0
- package/esm/charts/gauge/components/GaugeRootSVG.js.map +2 -2
- package/esm/charts/gauge/hooks/useGaugeChartAspectRatio.js.map +1 -1
- package/esm/charts/gauge/utils/apply-threshold-default.js +1 -1
- package/esm/charts/gauge/utils/apply-threshold-default.js.map +1 -1
- package/esm/charts/histogram/HistogramChartRoot.js +1 -1
- package/esm/charts/histogram/HistogramChartRoot.js.map +1 -1
- package/esm/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.css +1 -1
- package/esm/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.sty.js +1 -1
- package/esm/charts/histogram/components/axes/HistogramValueBottomAxisArea/HistogramValueBottomAxisArea.sty.js.map +1 -1
- package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramCrosshair.js +1 -1
- package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramCrosshair.js.map +2 -2
- package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.css +1 -1
- package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.js +2 -2
- package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.js.map +1 -1
- package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.sty.js +1 -1
- package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltip.sty.js.map +1 -1
- package/esm/charts/histogram/components/overlays/HistogramExplore/HistogramTooltipWrapper.js.map +1 -1
- package/esm/charts/histogram/components/overlays/HistogramOverlays.css +2 -2
- package/esm/charts/histogram/components/overlays/HistogramOverlays.js.map +1 -1
- package/esm/charts/histogram/components/overlays/HistogramOverlays.sty.js +2 -2
- package/esm/charts/histogram/components/overlays/HistogramOverlays.sty.js.map +1 -1
- package/esm/charts/histogram/components/overlays/HistogramSelectionArea/HistogramSelectionArea.js.map +1 -1
- package/esm/charts/histogram/components/overlays/HistogramSelectionArea/HistogramSelectionAreaTooltip.js.map +1 -1
- package/esm/charts/histogram/components/toolbar/HistogramToolbar.js.map +1 -1
- package/esm/charts/histogram/components/toolbar/ResetButton.js.map +1 -1
- package/esm/charts/histogram/hooks/useSetClosestBins.js +1 -1
- package/esm/charts/histogram/hooks/useSetClosestBins.js.map +1 -1
- package/esm/charts/histogram/providers/HistogramDataProvider.js +1 -1
- package/esm/charts/histogram/providers/HistogramDataProvider.js.map +2 -2
- package/esm/charts/histogram/providers/HistogramStateSyncProvider.js +1 -2
- package/esm/charts/histogram/providers/HistogramStateSyncProvider.js.map +2 -2
- package/esm/charts/histogram/providers/StoreProvider.js +2 -2
- package/esm/charts/histogram/providers/StoreProvider.js.map +2 -2
- package/esm/charts/histogram/utils/iterate-slots.js +1 -2
- package/esm/charts/histogram/utils/iterate-slots.js.map +2 -2
- package/esm/charts/honeycomb/HoneycombChart.css +1 -1
- package/esm/charts/honeycomb/HoneycombChart.sty.js +1 -1
- package/esm/charts/honeycomb/HoneycombChart.sty.js.map +1 -1
- package/esm/charts/honeycomb/components/HiveOverlay.css +1 -1
- package/esm/charts/honeycomb/components/HiveOverlay.sty.js +1 -1
- package/esm/charts/honeycomb/components/HiveOverlay.sty.js.map +1 -1
- package/esm/charts/honeycomb/components/HoneycombChartLayout.js.map +1 -1
- package/esm/charts/honeycomb/components/canvas/HiveCanvasLayout.css +1 -1
- package/esm/charts/honeycomb/components/canvas/HiveCanvasLayout.sty.js +1 -1
- package/esm/charts/honeycomb/components/canvas/HiveCanvasLayout.sty.js.map +1 -1
- package/esm/charts/honeycomb/providers/honeycomb-base-scale.provider.js.map +1 -1
- package/esm/charts/honeycomb/utils/build-honeycomb-config.js +2 -2
- package/esm/charts/honeycomb/utils/build-honeycomb-config.js.map +1 -1
- package/esm/charts/honeycomb/utils/iterate-honeycomb-slots.js.map +1 -1
- package/esm/charts/index.js.map +1 -1
- package/esm/charts/meter-bar/multi-meter-bar/components/MultiMeterBarChartSegments.js.map +1 -1
- package/esm/charts/meter-bar/multi-meter-bar/hooks/useMultiMeterBarChartTooltipHandlers.js +5 -0
- package/esm/charts/meter-bar/multi-meter-bar/hooks/useMultiMeterBarChartTooltipHandlers.js.map +2 -2
- package/esm/charts/meter-bar/multi-meter-bar/providers/StoreProvider.js +10 -1
- package/esm/charts/meter-bar/multi-meter-bar/providers/StoreProvider.js.map +2 -2
- package/esm/charts/meter-bar/multi-meter-bar/slots/Label.js +1 -1
- package/esm/charts/meter-bar/multi-meter-bar/slots/Label.js.map +2 -2
- package/esm/charts/meter-bar/multi-meter-bar/slots/Max.js +1 -1
- package/esm/charts/meter-bar/multi-meter-bar/slots/Max.js.map +2 -2
- package/esm/charts/meter-bar/multi-meter-bar/slots/Min.js +1 -1
- package/esm/charts/meter-bar/multi-meter-bar/slots/Min.js.map +2 -2
- package/esm/charts/meter-bar/multi-meter-bar/slots/Value.js +1 -1
- package/esm/charts/meter-bar/multi-meter-bar/slots/Value.js.map +2 -2
- package/esm/charts/meter-bar/multi-meter-bar/utils/build-multi-meter-bar-chart-config.js.map +2 -2
- package/esm/charts/meter-bar/shared/components/formatted-value/MeterBarChartFormattedValue.js.map +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.css +16 -16
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js +11 -11
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js.map +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Chart.js +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Chart.js.map +2 -2
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.css +2 -2
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.sty.js +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Icon/Icon.sty.js.map +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.css +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.sty.js +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Label/Label.sty.js.map +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Legend.js +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Legend.js.map +2 -2
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.css +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.sty.js +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Max/Max.sty.js.map +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.css +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.sty.js +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Min/Min.sty.js.map +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Thresholds.js +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Thresholds.js.map +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.css +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.sty.js +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/slots/Value/Value.sty.js.map +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.css +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.js +1 -0
- package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.js.map +2 -2
- package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.sty.js +1 -1
- package/esm/charts/meter-bar/shared/components/meter-bar-plot/MeterBarPlot.sty.js.map +1 -1
- package/esm/charts/meter-bar/shared/styles/element-size.css +4 -4
- package/esm/charts/meter-bar/shared/styles/element-size.sty.js +1 -1
- package/esm/charts/meter-bar/shared/styles/element-size.sty.js.map +1 -1
- package/esm/charts/meter-bar/shared/styles.css +1 -1
- package/esm/charts/meter-bar/shared/styles.sty.js +1 -1
- package/esm/charts/meter-bar/shared/styles.sty.js.map +1 -1
- package/esm/charts/meter-bar/single-meter-bar/MeterBarChart.js +1 -1
- package/esm/charts/meter-bar/single-meter-bar/MeterBarChart.js.map +1 -1
- package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartOverlay/MeterBarChartOverlayWithTooltip.js +5 -1
- package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartOverlay/MeterBarChartOverlayWithTooltip.js.map +2 -2
- package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholdIntervals/MeterBarChartThresholdIntervals.css +1 -1
- package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholdIntervals/MeterBarChartThresholdIntervals.sty.js +1 -1
- package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholdIntervals/MeterBarChartThresholdIntervals.sty.js.map +1 -1
- package/esm/charts/meter-bar/single-meter-bar/slots/Label.js +1 -1
- package/esm/charts/meter-bar/single-meter-bar/slots/Label.js.map +2 -2
- package/esm/charts/meter-bar/single-meter-bar/slots/Max.js +1 -1
- package/esm/charts/meter-bar/single-meter-bar/slots/Max.js.map +2 -2
- package/esm/charts/meter-bar/single-meter-bar/slots/Min.js +1 -1
- package/esm/charts/meter-bar/single-meter-bar/slots/Min.js.map +2 -2
- package/esm/charts/meter-bar/single-meter-bar/slots/ThresholdLegend.js.map +1 -1
- package/esm/charts/meter-bar/single-meter-bar/slots/Value.js +1 -1
- package/esm/charts/meter-bar/single-meter-bar/slots/Value.js.map +2 -2
- package/esm/charts/meter-bar/single-meter-bar/utils/apply-threshold-defaults.js +1 -1
- package/esm/charts/meter-bar/single-meter-bar/utils/apply-threshold-defaults.js.map +1 -1
- package/esm/charts/meter-bar/single-meter-bar/utils/iterate-slots.js.map +1 -1
- package/esm/charts/meter-bar/single-meter-bar/utils/resolve-show-threshold-indicators.js +1 -1
- package/esm/charts/meter-bar/single-meter-bar/utils/resolve-show-threshold-indicators.js.map +1 -1
- package/esm/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.css +1 -1
- package/esm/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.sty.js +1 -1
- package/esm/charts/pie/components/InnerWrapper/components/InnerContainer/InnerContainer.sty.js.map +1 -1
- package/esm/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.css +1 -1
- package/esm/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.sty.js +1 -1
- package/esm/charts/pie/components/InnerWrapper/components/InnerDonut/InnerDonut.sty.js.map +1 -1
- package/esm/charts/pie/components/PieChartInternal.js +1 -1
- package/esm/charts/pie/components/PieChartInternal.js.map +2 -2
- package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.css +1 -1
- package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.sty.js +1 -1
- package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.sty.js.map +1 -1
- package/esm/charts/pie/components/PieChartPlot/PieChartPlot.css +1 -1
- package/esm/charts/pie/components/PieChartPlot/PieChartPlot.js +49 -40
- package/esm/charts/pie/components/PieChartPlot/PieChartPlot.js.map +2 -2
- package/esm/charts/pie/components/PieChartPlot/PieChartPlot.sty.js +1 -1
- package/esm/charts/pie/components/PieChartPlot/PieChartPlot.sty.js.map +1 -1
- package/esm/charts/pie/context/PieChartRawDataContext.js.map +1 -1
- package/esm/charts/pie/providers/ChartProviders.js.map +1 -1
- package/esm/charts/pie/providers/PieChartSlicesDataProvider.js +5 -1
- package/esm/charts/pie/providers/PieChartSlicesDataProvider.js.map +2 -2
- package/esm/charts/pie/providers/StoreProvider.js +1 -1
- package/esm/charts/pie/providers/StoreProvider.js.map +2 -2
- package/esm/charts/pie/slots/DonutChartInner.js.map +2 -2
- package/esm/charts/pie/types/pie-chart.config.js.map +2 -2
- package/esm/charts/pie/utils/build-and-download-csv.js.map +1 -1
- package/esm/charts/pie/utils/build-group-threshold.js.map +1 -1
- package/esm/charts/pie/utils/build-slices.js.map +1 -1
- package/esm/charts/pie/utils/format-csv.js.map +1 -1
- package/esm/charts/pie/utils/iterate-slots.js.map +1 -1
- package/esm/charts/pie/utils/normalize-pie-data.js.map +1 -1
- package/esm/charts/pie/utils/pie-config.js.map +1 -1
- package/esm/charts/sankey-chart/SankeyChart.css +3 -3
- package/esm/charts/sankey-chart/SankeyChart.sty.js +3 -3
- package/esm/charts/sankey-chart/SankeyChart.sty.js.map +1 -1
- package/esm/charts/sankey-chart/SankeyChartRoot.js +5 -2
- package/esm/charts/sankey-chart/SankeyChartRoot.js.map +2 -2
- package/esm/charts/sankey-chart/components/SankeyCanvas.css +7 -1
- package/esm/charts/sankey-chart/components/SankeyCanvas.js +49 -6
- package/esm/charts/sankey-chart/components/SankeyCanvas.js.map +2 -2
- package/esm/charts/sankey-chart/components/SankeyCanvas.sty.js +4 -2
- package/esm/charts/sankey-chart/components/SankeyCanvas.sty.js.map +2 -2
- package/esm/charts/sankey-chart/components/SankeyGraphArea.js +5 -54
- package/esm/charts/sankey-chart/components/SankeyGraphArea.js.map +2 -2
- package/esm/charts/sankey-chart/components/SankeyGraphAreaContent.js +65 -0
- package/esm/charts/sankey-chart/components/SankeyGraphAreaContent.js.map +7 -0
- package/esm/charts/sankey-chart/components/SankeyLabelOverlay.css +13 -9
- package/esm/charts/sankey-chart/components/SankeyLabelOverlay.js +40 -55
- package/esm/charts/sankey-chart/components/SankeyLabelOverlay.js.map +2 -2
- package/esm/charts/sankey-chart/components/SankeyLabelOverlay.sty.js +10 -8
- package/esm/charts/sankey-chart/components/SankeyLabelOverlay.sty.js.map +2 -2
- package/esm/charts/sankey-chart/components/SankeyNodeLabel.js +37 -0
- package/esm/charts/sankey-chart/components/SankeyNodeLabel.js.map +7 -0
- package/esm/charts/sankey-chart/components/SankeyOverlay.css +1 -1
- package/esm/charts/sankey-chart/components/SankeyOverlay.js +1 -3
- package/esm/charts/sankey-chart/components/SankeyOverlay.js.map +2 -2
- package/esm/charts/sankey-chart/components/SankeyOverlay.sty.js +1 -1
- package/esm/charts/sankey-chart/components/SankeyOverlay.sty.js.map +1 -1
- package/esm/charts/sankey-chart/constants.js +12 -7
- package/esm/charts/sankey-chart/constants.js.map +2 -2
- package/esm/charts/sankey-chart/context/SankeyFormatter.context.js +8 -0
- package/esm/charts/sankey-chart/context/SankeyFormatter.context.js.map +7 -0
- package/esm/charts/sankey-chart/context/SankeyHighlight.context.js +7 -0
- package/esm/charts/sankey-chart/context/SankeyHighlight.context.js.map +7 -0
- package/esm/charts/sankey-chart/context/SankeyStore.context.js +11 -0
- package/esm/charts/sankey-chart/context/SankeyStore.context.js.map +7 -0
- package/esm/charts/sankey-chart/hooks/use-draw-sankey.js +32 -7
- package/esm/charts/sankey-chart/hooks/use-draw-sankey.js.map +2 -2
- package/esm/charts/sankey-chart/hooks/use-sankey-formatter.js +9 -0
- package/esm/charts/sankey-chart/hooks/use-sankey-formatter.js.map +7 -0
- package/esm/charts/sankey-chart/hooks/use-sankey-overlay-events.js +34 -15
- package/esm/charts/sankey-chart/hooks/use-sankey-overlay-events.js.map +2 -2
- package/esm/charts/sankey-chart/providers/SankeyFormatterProvider.js +16 -0
- package/esm/charts/sankey-chart/providers/SankeyFormatterProvider.js.map +7 -0
- package/esm/charts/sankey-chart/providers/SankeyStoreProvider.js +15 -0
- package/esm/charts/sankey-chart/providers/SankeyStoreProvider.js.map +7 -0
- package/esm/charts/sankey-chart/store/selectors.js +11 -5
- package/esm/charts/sankey-chart/store/selectors.js.map +2 -2
- package/esm/charts/sankey-chart/store/store.js +29 -7
- package/esm/charts/sankey-chart/store/store.js.map +2 -2
- package/esm/charts/sankey-chart/types/sankey-shape.js +1 -0
- package/esm/charts/sankey-chart/types/sankey-state.js +1 -0
- package/esm/charts/sankey-chart/types/sankey-state.js.map +7 -0
- package/esm/charts/sankey-chart/utils/find-connected-shapes.js +26 -0
- package/esm/charts/sankey-chart/utils/find-connected-shapes.js.map +7 -0
- package/esm/charts/sankey-chart/utils/find-hovered-shape.js +4 -11
- package/esm/charts/sankey-chart/utils/find-hovered-shape.js.map +2 -2
- package/esm/charts/sankey-chart/utils/generate-sankey-layout.js +10 -1
- package/esm/charts/sankey-chart/utils/generate-sankey-layout.js.map +2 -2
- package/esm/charts/sankey-chart/utils/get-active-connected-set.js +59 -0
- package/esm/charts/sankey-chart/utils/get-active-connected-set.js.map +7 -0
- package/esm/charts/sankey-chart/utils/is-same-sankey-shape.js +19 -0
- package/esm/charts/sankey-chart/utils/is-same-sankey-shape.js.map +7 -0
- package/esm/charts/sankey-chart/utils/layout-index.js +66 -0
- package/esm/charts/sankey-chart/utils/layout-index.js.map +7 -0
- package/esm/charts/sankey-chart/vendor/d3-sankey/sankey.js +20 -2
- package/esm/charts/sankey-chart/vendor/d3-sankey/sankey.js.map +2 -2
- package/esm/charts/single-value/SingleValue.css +1 -1
- package/esm/charts/single-value/SingleValue.sty.js +1 -1
- package/esm/charts/single-value/SingleValue.sty.js.map +1 -1
- package/esm/charts/single-value-grid/SingleValueGrid.css +2 -2
- package/esm/charts/single-value-grid/SingleValueGrid.sty.js +1 -1
- package/esm/charts/single-value-grid/SingleValueGrid.sty.js.map +1 -1
- package/esm/charts/single-value-grid/components/GlobalFontSizeVariables.css +1 -1
- package/esm/charts/single-value-grid/components/GlobalFontSizeVariables.sty.js +1 -1
- package/esm/charts/single-value-grid/components/GlobalFontSizeVariables.sty.js.map +1 -1
- package/esm/charts/single-value-grid/components/SingleValueDisplay.js.map +1 -1
- package/esm/charts/single-value-grid/slots/Value.js.map +1 -1
- package/esm/charts/single-value-grid/utils/build-props-from-grid.js +17 -14
- package/esm/charts/single-value-grid/utils/build-props-from-grid.js.map +2 -2
- package/esm/charts/single-value-grid/utils/get-config-from-accessors.js.map +1 -1
- package/esm/charts/timeseries/TimeseriesChart.js +2 -0
- package/esm/charts/timeseries/TimeseriesChart.js.map +2 -2
- package/esm/charts/timeseries/TimeseriesChartInternal.js +0 -3
- package/esm/charts/timeseries/TimeseriesChartInternal.js.map +2 -2
- package/esm/charts/timeseries/TimeseriesChartRoot.js +2 -1
- package/esm/charts/timeseries/TimeseriesChartRoot.js.map +2 -2
- package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.css +2 -2
- package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.sty.js +1 -1
- package/esm/charts/timeseries/components/axes/TimeseriesTimeBottomAxisArea/TimeseriesTimeBottomAxisArea.sty.js.map +1 -1
- package/esm/charts/timeseries/components/overlays/TimeseriesChartOverlays.js.map +1 -1
- package/esm/charts/timeseries/components/overlays/TimeseriesExplore/TimeseriesChartTooltip.js.map +1 -1
- package/esm/charts/timeseries/components/overlays/TimeseriesOverlays.css +4 -4
- package/esm/charts/timeseries/components/overlays/TimeseriesOverlays.sty.js +4 -4
- package/esm/charts/timeseries/components/overlays/TimeseriesOverlays.sty.js.map +1 -1
- package/esm/charts/timeseries/components/overlays/TimeseriesSelection/TimeseriesSelectionArea.js.map +1 -1
- package/esm/charts/timeseries/components/overlays/TimeseriesSelection/TimeseriesSelectionAreaTooltip.js.map +1 -1
- package/esm/charts/timeseries/components/overlays/TimeseriesSelection/utils/get-selected-datapoints.js +2 -2
- package/esm/charts/timeseries/components/overlays/TimeseriesSelection/utils/get-selected-datapoints.js.map +1 -1
- package/esm/charts/timeseries/components/overlays/utils/tooltip/timeseries-tooltip.js +2 -2
- package/esm/charts/timeseries/components/overlays/utils/tooltip/timeseries-tooltip.js.map +1 -1
- package/esm/charts/timeseries/components/thresholds/ThresholdIndicators.css +2 -2
- package/esm/charts/timeseries/components/thresholds/ThresholdIndicators.sty.js +2 -2
- package/esm/charts/timeseries/components/thresholds/ThresholdIndicators.sty.js.map +1 -1
- package/esm/charts/timeseries/components/toolbar/ResetButton.js.map +1 -1
- package/esm/charts/timeseries/components/toolbar/TimeseriesChartToolbar.js.map +1 -1
- package/esm/charts/timeseries/providers/StoreProvider.js +2 -3
- package/esm/charts/timeseries/providers/StoreProvider.js.map +2 -2
- package/esm/charts/timeseries/providers/TimeseriesDataProvider.js +1 -1
- package/esm/charts/timeseries/providers/TimeseriesDataProvider.js.map +2 -2
- package/esm/charts/timeseries/slots/shapes/Area.js.map +2 -2
- package/esm/charts/timeseries/slots/shapes/Line.js.map +2 -2
- package/esm/charts/timeseries/types/timeseries.js.map +1 -1
- package/esm/charts/timeseries/utils/convert-to-timeseries/convert-to-timeseries.js.map +2 -2
- package/esm/charts/timeseries/utils/convert-to-timeseries/utils/unit-mapping.js.map +1 -1
- package/esm/charts/timeseries/utils/get-datapoint-value.js.map +1 -1
- package/esm/charts/timeseries/utils/iterate-config-slots.js.map +2 -2
- package/esm/charts/top-list/TopList.css +1 -1
- package/esm/charts/top-list/TopList.sty.js +1 -1
- package/esm/charts/top-list/TopList.sty.js.map +1 -1
- package/esm/charts/tree-map/TreeMap.js.map +1 -1
- package/esm/charts/tree-map/components/TreeMapCanvas.js.map +1 -1
- package/esm/charts/tree-map/components/TreeMapChartLayout.js +1 -1
- package/esm/charts/tree-map/components/TreeMapChartLayout.js.map +2 -2
- package/esm/charts/tree-map/components/TreeMapInternal.js.map +2 -2
- package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.css +1 -1
- package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.sty.js +1 -1
- package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.sty.js.map +1 -1
- package/esm/charts/tree-map/hooks/useTreeMapChartConfig.js.map +1 -1
- package/esm/charts/tree-map/providers/StoreProvider.js +1 -1
- package/esm/charts/tree-map/providers/StoreProvider.js.map +2 -2
- package/esm/charts/tree-map/providers/TreeMapChartProviders.js +1 -2
- package/esm/charts/tree-map/providers/TreeMapChartProviders.js.map +2 -2
- package/esm/charts/tree-map/utils/build-tree-map-chart-config.js.map +1 -1
- package/esm/charts/tree-map/utils/get-colored-internal-range-data.js.map +1 -1
- package/esm/charts/tree-map/utils/iterate-slots.js.map +1 -1
- package/esm/charts/tree-map/utils/to-hierarchical-props.js.map +1 -1
- package/esm/charts/xy-chart/XYChartRoot.js +2 -2
- package/esm/charts/xy-chart/XYChartRoot.js.map +1 -1
- package/esm/charts/xy-chart/components/axes/AxisArea.css +1 -1
- package/esm/charts/xy-chart/components/axes/AxisArea.sty.js +1 -1
- package/esm/charts/xy-chart/components/axes/AxisArea.sty.js.map +1 -1
- package/esm/charts/xy-chart/components/axes/AxisTickWithTruncation.css +3 -3
- package/esm/charts/xy-chart/components/axes/AxisTickWithTruncation.sty.js +3 -3
- package/esm/charts/xy-chart/components/axes/AxisTickWithTruncation.sty.js.map +1 -1
- package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.css +2 -2
- package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js +2 -2
- package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js.map +1 -1
- package/esm/charts/xy-chart/components/displays/RectLabelOverlay.css +3 -3
- package/esm/charts/xy-chart/components/displays/RectLabelOverlay.sty.js +3 -3
- package/esm/charts/xy-chart/components/displays/RectLabelOverlay.sty.js.map +1 -1
- package/esm/charts/xy-chart/components/displays/rect-accessors.js +1 -1
- package/esm/charts/xy-chart/components/displays/rect-accessors.js.map +1 -1
- package/esm/charts/xy-chart/components/legend/XYChartLegend.js.map +1 -1
- package/esm/charts/xy-chart/components/legend/XYLegend/XYLegend.js +1 -1
- package/esm/charts/xy-chart/components/legend/XYLegend/XYLegend.js.map +1 -1
- package/esm/charts/xy-chart/components/legend/XYLegend/xy-legend.css +1 -1
- package/esm/charts/xy-chart/components/legend/XYLegend/xy-legend.sty.js +1 -1
- package/esm/charts/xy-chart/components/legend/XYLegend/xy-legend.sty.js.map +1 -1
- package/esm/charts/xy-chart/components/overlay/XYChartOverlay.js +2 -4
- package/esm/charts/xy-chart/components/overlay/XYChartOverlay.js.map +2 -2
- package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.css +1 -1
- package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.js +32 -12
- package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.js.map +2 -2
- package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.sty.js +1 -1
- package/esm/charts/xy-chart/components/overlay/explore/XYChartCrosshair.sty.js.map +1 -1
- package/esm/charts/xy-chart/components/overlay/explore/XYChartExplore.css +2 -2
- package/esm/charts/xy-chart/components/overlay/explore/XYChartExplore.sty.js +2 -2
- package/esm/charts/xy-chart/components/overlay/explore/XYChartExplore.sty.js.map +1 -1
- package/esm/charts/xy-chart/components/overlay/hooks/useOverlayEvents.js.map +1 -1
- package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.css +1 -1
- package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.sty.js +1 -1
- package/esm/charts/xy-chart/components/thresholds/XYChartThresholdIndicators.sty.js.map +1 -1
- package/esm/charts/xy-chart/components/tooltip/XYChartTooltipContent.js +9 -1
- package/esm/charts/xy-chart/components/tooltip/XYChartTooltipContent.js.map +2 -2
- package/esm/charts/xy-chart/components/tooltip/utils/tooltip-styles.css +5 -5
- package/esm/charts/xy-chart/components/tooltip/utils/tooltip-styles.sty.js +4 -4
- package/esm/charts/xy-chart/components/tooltip/utils/tooltip-styles.sty.js.map +1 -1
- package/esm/charts/xy-chart/layout/XYChartLayout.css +2 -2
- package/esm/charts/xy-chart/layout/XYChartLayout.sty.js +2 -2
- package/esm/charts/xy-chart/layout/XYChartLayout.sty.js.map +1 -1
- package/esm/charts/xy-chart/processing-strategies/strategies/base-series.js.map +2 -2
- package/esm/charts/xy-chart/processing-strategies/strategies/dot-series.js +1 -1
- package/esm/charts/xy-chart/processing-strategies/strategies/dot-series.js.map +1 -1
- package/esm/charts/xy-chart/providers/XYChartOverlayPerformanceProvider.js +5 -2
- package/esm/charts/xy-chart/providers/XYChartOverlayPerformanceProvider.js.map +2 -2
- package/esm/charts/xy-chart/providers/XYChartStoreProvider.js +2 -2
- package/esm/charts/xy-chart/providers/XYChartStoreProvider.js.map +2 -2
- package/esm/charts/xy-chart/slots/CustomTooltip.js.map +1 -1
- package/esm/charts/xy-chart/types/xy-chart-internals.js.map +2 -2
- package/esm/charts/xy-chart/utils/iterate-slots.js.map +1 -1
- package/esm/charts/xy-chart/utils/query-closest-quadtree.js +3 -0
- package/esm/charts/xy-chart/utils/query-closest-quadtree.js.map +2 -2
- package/esm/charts/xy-chart/utils/query-hovered-grid.js +8 -2
- package/esm/charts/xy-chart/utils/query-hovered-grid.js.map +2 -2
- package/esm/charts/xy-chart/utils/query-shared.js +9 -0
- package/esm/charts/xy-chart/utils/query-shared.js.map +2 -2
- package/esm/charts/xy-chart-adoption/categorical-bar/CategoricalBarToXY.js +20 -4
- package/esm/charts/xy-chart-adoption/categorical-bar/CategoricalBarToXY.js.map +2 -2
- package/esm/charts/xy-chart-adoption/categorical-bar/constants.js +3 -1
- package/esm/charts/xy-chart-adoption/categorical-bar/constants.js.map +2 -2
- package/esm/charts/xy-chart-adoption/categorical-bar/iterate-slots.js +8 -1
- package/esm/charts/xy-chart-adoption/categorical-bar/iterate-slots.js.map +2 -2
- package/esm/charts/xy-chart-adoption/categorical-bar/utils/map-threshold-to-xy.js +36 -0
- package/esm/charts/xy-chart-adoption/categorical-bar/utils/map-threshold-to-xy.js.map +7 -0
- package/esm/charts/xy-chart-adoption/timeseries/iterate-slots.js.map +1 -1
- package/esm/charts/xy-chart-adoption/timeseries/types/timeseries.js.map +1 -1
- package/esm/charts/xy-chart-adoption/timeseries/utils/iterate-config-slots.js.map +1 -1
- package/esm/content/accordion/Accordion.css +14 -14
- package/esm/content/accordion/Accordion.sty.js +8 -8
- package/esm/content/accordion/Accordion.sty.js.map +1 -1
- package/esm/content/ai-loading-indicator/AiLoadingIndicator.css +12 -12
- package/esm/content/ai-loading-indicator/AiLoadingIndicator.sty.js +4 -4
- package/esm/content/ai-loading-indicator/AiLoadingIndicator.sty.js.map +1 -1
- package/esm/content/ai-response/AiResponse.css +5 -5
- package/esm/content/ai-response/AiResponse.sty.js +2 -2
- package/esm/content/ai-response/AiResponse.sty.js.map +1 -1
- package/esm/content/avatar/Avatar.css +13 -13
- package/esm/content/avatar/Avatar.sty.js +4 -4
- package/esm/content/avatar/Avatar.sty.js.map +1 -1
- package/esm/content/avatar-group/AvatarGroup.css +3 -3
- package/esm/content/avatar-group/AvatarGroup.sty.js +2 -2
- package/esm/content/avatar-group/AvatarGroup.sty.js.map +1 -1
- package/esm/content/chip/BaseChip.css +82 -41
- package/esm/content/chip/BaseChip.js +1 -2
- package/esm/content/chip/BaseChip.js.map +2 -2
- package/esm/content/chip/BaseChip.sty.js +6 -6
- package/esm/content/chip/BaseChip.sty.js.map +2 -2
- package/esm/content/chip/ChipContent.css +11 -11
- package/esm/content/chip/ChipContent.sty.js +2 -2
- package/esm/content/chip/ChipContent.sty.js.map +1 -1
- package/esm/content/chip/ChipDeleteButton.css +33 -19
- package/esm/content/chip/ChipDeleteButton.js +3 -5
- package/esm/content/chip/ChipDeleteButton.js.map +2 -2
- package/esm/content/chip/ChipDeleteButton.sty.js +7 -4
- package/esm/content/chip/ChipDeleteButton.sty.js.map +2 -2
- package/esm/content/chip/ChipKey.css +6 -6
- package/esm/content/chip/ChipKey.sty.js +1 -1
- package/esm/content/chip/ChipKey.sty.js.map +1 -1
- package/esm/content/chip/GroupedChip.css +71 -3
- package/esm/content/chip/GroupedChip.js +26 -5
- package/esm/content/chip/GroupedChip.js.map +2 -2
- package/esm/content/chip/GroupedChip.sty.js +7 -4
- package/esm/content/chip/GroupedChip.sty.js.map +2 -2
- package/esm/content/chip/hooks/usePendingFocusAnnouncement.js +54 -0
- package/esm/content/chip/hooks/usePendingFocusAnnouncement.js.map +7 -0
- package/esm/content/chip/messages.js +12 -0
- package/esm/content/chip/messages.js.map +7 -0
- package/esm/content/chip-group/ChipGroup.css +4 -4
- package/esm/content/chip-group/ChipGroup.js +7 -2
- package/esm/content/chip-group/ChipGroup.js.map +2 -2
- package/esm/content/chip-group/ChipGroup.sty.js +1 -1
- package/esm/content/chip-group/ChipGroup.sty.js.map +1 -1
- package/esm/content/chip-group/Control.css +4 -4
- package/esm/content/chip-group/Control.js +15 -1
- package/esm/content/chip-group/Control.js.map +2 -2
- package/esm/content/chip-group/Control.sty.js +1 -1
- package/esm/content/chip-group/Control.sty.js.map +1 -1
- package/esm/content/chip-group/HiddenCount.js.map +1 -1
- package/esm/content/chip-group/contexts/InternalChipGroupContext.js.map +2 -2
- package/esm/content/code-snippet/CodeHighlight.css +25 -25
- package/esm/content/code-snippet/CodeHighlight.sty.js +6 -6
- package/esm/content/code-snippet/CodeHighlight.sty.js.map +1 -1
- package/esm/content/code-snippet/CodeSnippet.css +18 -18
- package/esm/content/code-snippet/CodeSnippet.js +1 -1
- package/esm/content/code-snippet/CodeSnippet.js.map +1 -1
- package/esm/content/code-snippet/CodeSnippet.sty.js +4 -4
- package/esm/content/code-snippet/CodeSnippet.sty.js.map +1 -1
- package/esm/content/code-snippet/HighlightExtended.js +3 -6
- package/esm/content/code-snippet/HighlightExtended.js.map +2 -2
- package/esm/content/empty-state/EmptyState.css +28 -28
- package/esm/content/empty-state/EmptyState.sty.js +7 -7
- package/esm/content/empty-state/EmptyState.sty.js.map +1 -1
- package/esm/content/empty-state/slot-components/Footer.css +1 -1
- package/esm/content/empty-state/slot-components/Footer.sty.js +1 -1
- package/esm/content/empty-state/slot-components/Footer.sty.js.map +1 -1
- package/esm/content/empty-state/slot-components/Visual.css +3 -3
- package/esm/content/empty-state/slot-components/Visual.sty.js +1 -1
- package/esm/content/empty-state/slot-components/Visual.sty.js.map +1 -1
- package/esm/content/expandable-text/ExpandableText.css +7 -7
- package/esm/content/expandable-text/ExpandableText.sty.js +2 -2
- package/esm/content/expandable-text/ExpandableText.sty.js.map +1 -1
- package/esm/content/feature-highlight/FeatureHighlight.css +12 -12
- package/esm/content/feature-highlight/FeatureHighlight.sty.js +3 -3
- package/esm/content/feature-highlight/FeatureHighlight.sty.js.map +1 -1
- package/esm/content/health-indicator/styles.css +23 -23
- package/esm/content/health-indicator/styles.sty.js +1 -1
- package/esm/content/health-indicator/styles.sty.js.map +1 -1
- package/esm/content/information-overlay/InformationOverlay.css +25 -25
- package/esm/content/information-overlay/InformationOverlay.sty.js +5 -5
- package/esm/content/information-overlay/InformationOverlay.sty.js.map +1 -1
- package/esm/content/keyboard-shortcut/KeyboardShortcut.css +14 -14
- package/esm/content/keyboard-shortcut/KeyboardShortcut.sty.js +2 -2
- package/esm/content/keyboard-shortcut/KeyboardShortcut.sty.js.map +1 -1
- package/esm/content/markdown/Markdown.css +6 -3
- package/esm/content/markdown/Markdown.js +11 -7
- package/esm/content/markdown/Markdown.js.map +2 -2
- package/esm/content/markdown/Markdown.sty.js +4 -2
- package/esm/content/markdown/Markdown.sty.js.map +2 -2
- package/esm/content/markdown/remark-frontmatter-to-table.js +62 -0
- package/esm/content/markdown/remark-frontmatter-to-table.js.map +7 -0
- package/esm/content/markdown/transformers/table-mapping.js +1 -1
- package/esm/content/markdown/transformers/table-mapping.js.map +1 -1
- package/esm/content/markdown/transformers/typography-mapping.css +9 -9
- package/esm/content/markdown/transformers/typography-mapping.sty.js +6 -6
- package/esm/content/markdown/transformers/typography-mapping.sty.js.map +1 -1
- package/esm/content/microguide/Microguide.css +11 -11
- package/esm/content/microguide/Microguide.sty.js +7 -7
- package/esm/content/microguide/Microguide.sty.js.map +1 -1
- package/esm/content/progress/ProgressBar.css +71 -71
- package/esm/content/progress/ProgressBar.sty.js +5 -5
- package/esm/content/progress/ProgressBar.sty.js.map +1 -1
- package/esm/content/progress/ProgressBarIcon.css +2 -2
- package/esm/content/progress/ProgressBarIcon.sty.js +1 -1
- package/esm/content/progress/ProgressBarIcon.sty.js.map +1 -1
- package/esm/content/progress/ProgressBarLabel.css +3 -3
- package/esm/content/progress/ProgressBarLabel.sty.js +1 -1
- package/esm/content/progress/ProgressBarLabel.sty.js.map +1 -1
- package/esm/content/progress/ProgressBarValue.css +5 -5
- package/esm/content/progress/ProgressBarValue.sty.js +1 -1
- package/esm/content/progress/ProgressBarValue.sty.js.map +1 -1
- package/esm/content/progress/ProgressCircle.css +48 -40
- package/esm/content/progress/ProgressCircle.js +9 -17
- package/esm/content/progress/ProgressCircle.js.map +2 -2
- package/esm/content/progress/ProgressCircle.sty.js +12 -10
- package/esm/content/progress/ProgressCircle.sty.js.map +2 -2
- package/esm/content/shared-components/Visual.css +3 -3
- package/esm/content/shared-components/Visual.sty.js +1 -1
- package/esm/content/shared-components/Visual.sty.js.map +1 -1
- package/esm/content/skeleton/Skeleton.css +7 -7
- package/esm/content/skeleton/Skeleton.sty.js +5 -5
- package/esm/content/skeleton/Skeleton.sty.js.map +1 -1
- package/esm/content/terminology-overlay/TerminologyOverlay.css +4 -4
- package/esm/content/terminology-overlay/TerminologyOverlay.sty.js +1 -1
- package/esm/content/terminology-overlay/TerminologyOverlay.sty.js.map +1 -1
- package/esm/core/components/app-root/AppRoot.css +1031 -924
- package/esm/core/components/app-root/AppRoot.sty.js +1 -1
- package/esm/core/components/app-root/AppRoot.sty.js.map +1 -1
- package/esm/core/components/app-root/visual-refresh-overrides.js +2 -12
- package/esm/core/components/app-root/visual-refresh-overrides.js.map +2 -2
- package/esm/core/components/focus-scope/FocusScope.js +37 -14
- package/esm/core/components/focus-scope/FocusScope.js.map +2 -2
- package/esm/core/components/time-indicator/TimeIndicator.js +4 -4
- package/esm/core/components/time-indicator/TimeIndicator.js.map +2 -2
- package/esm/core/components/visually-hidden/VisuallyHidden.css +1 -1
- package/esm/core/components/visually-hidden/VisuallyHidden.sty.js +1 -1
- package/esm/core/components/visually-hidden/VisuallyHidden.sty.js.map +1 -1
- package/esm/core/hooks/useCallbackRef.js.map +1 -1
- package/esm/core/hooks/useCurrentTheme.js.map +1 -1
- package/esm/core/hooks/useFocusRing.js +1 -1
- package/esm/core/hooks/useFocusRing.js.map +1 -1
- package/esm/core/hooks/useFormControlState.js.map +1 -1
- package/esm/core/hooks/useId.js.map +1 -1
- package/esm/core/hooks/useMeasureChildren.js.map +1 -1
- package/esm/core/hooks/useMergeRefs.js.map +2 -2
- package/esm/core/hooks/usePrevious.js.map +1 -1
- package/esm/core/hooks/useRovingFocus.js +1 -1
- package/esm/core/hooks/useRovingFocus.js.map +2 -2
- package/esm/core/hooks/useSlots.js +7 -4
- package/esm/core/hooks/useSlots.js.map +2 -2
- package/esm/core/hooks/useVisualRefreshEnabled.js +1 -1
- package/esm/core/hooks/useVisualRefreshEnabled.js.map +1 -1
- package/esm/core/index.js.map +1 -1
- package/esm/core/providers/ScrollProvider.js.map +2 -2
- package/esm/core/sdk/app-state/AppStateProvider.js +1 -1
- package/esm/core/sdk/app-state/AppStateProvider.js.map +1 -1
- package/esm/core/sdk/app-state/useAppState.js +3 -2
- package/esm/core/sdk/app-state/useAppState.js.map +2 -2
- package/esm/core/sdk/app-state/useAppStateInternal.js +2 -2
- package/esm/core/sdk/app-state/useAppStateInternal.js.map +2 -2
- package/esm/core/sdk/sdk-logger.js +2 -2
- package/esm/core/sdk/sdk-logger.js.map +1 -1
- package/esm/core/styles/defaultChartValues.css +1 -1
- package/esm/core/styles/defaultChartValues.sty.js +1 -1
- package/esm/core/styles/defaultChartValues.sty.js.map +1 -1
- package/esm/core/styles/focusRing.css +66 -66
- package/esm/core/styles/focusRing.sty.js +2 -2
- package/esm/core/styles/focusRing.sty.js.map +1 -1
- package/esm/core/styles/focusRingStatic.css +34 -34
- package/esm/core/styles/focusRingStatic.sty.js +3 -1
- package/esm/core/styles/focusRingStatic.sty.js.map +2 -2
- package/esm/core/styles/virtualFocus.css +2 -2
- package/esm/core/styles/virtualFocus.sty.js +1 -1
- package/esm/core/styles/virtualFocus.sty.js.map +1 -1
- package/esm/core/time/useIntervalCallback.js.map +1 -1
- package/esm/core/utils/can-receive-default-text-format.js.map +1 -1
- package/esm/core/utils/colorUtils.css +60 -60
- package/esm/core/utils/colorUtils.sty.js +2 -2
- package/esm/core/utils/colorUtils.sty.js.map +1 -1
- package/esm/core/utils/focus-management/get-first-tabbable-child.js +14 -0
- package/esm/core/utils/focus-management/get-first-tabbable-child.js.map +7 -0
- package/esm/core/utils/focus-management/get-last-tabbable-child.js +17 -0
- package/esm/core/utils/focus-management/get-last-tabbable-child.js.map +7 -0
- package/esm/core/utils/focus-management/is-focusable.js.map +1 -1
- package/esm/core/utils/focus-management/is-tabbable.js +43 -0
- package/esm/core/utils/focus-management/is-tabbable.js.map +7 -0
- package/esm/core/utils/get-inert-value.js.map +2 -2
- package/esm/core/utils/is-visual-refresh-enabled.js.map +1 -1
- package/esm/core/utils/isBrowser.js +1 -1
- package/esm/core/utils/isBrowser.js.map +1 -1
- package/esm/core/utils/logging.js.map +1 -1
- package/esm/core/utils/merge-props.js.map +1 -1
- package/esm/core/utils/threshold-utils.js.map +2 -2
- package/esm/core/utils/timeParser.js.map +1 -1
- package/esm/editors/base-code-editor/BaseCodeEditor.css +137 -136
- package/esm/editors/base-code-editor/BaseCodeEditor.js +119 -8
- package/esm/editors/base-code-editor/BaseCodeEditor.js.map +3 -3
- package/esm/editors/base-code-editor/BaseCodeEditor.sty.js +2 -2
- package/esm/editors/base-code-editor/BaseCodeEditor.sty.js.map +1 -1
- package/esm/editors/base-code-editor/baseCodeEditorMessages.js +20 -0
- package/esm/editors/base-code-editor/baseCodeEditorMessages.js.map +2 -2
- package/esm/editors/base-code-editor/configuration/getDefaultConfigurations.js +1 -1
- package/esm/editors/base-code-editor/configuration/getDefaultConfigurations.js.map +1 -1
- package/esm/editors/base-code-editor/off-screen-diagnostic-indicators/OffScreenDiagnosticIndicators.css +40 -0
- package/esm/editors/base-code-editor/off-screen-diagnostic-indicators/OffScreenDiagnosticIndicators.js +107 -0
- package/esm/editors/base-code-editor/off-screen-diagnostic-indicators/OffScreenDiagnosticIndicators.js.map +7 -0
- package/esm/editors/base-code-editor/off-screen-diagnostic-indicators/OffScreenDiagnosticIndicators.sty.js +7 -0
- package/esm/editors/base-code-editor/off-screen-diagnostic-indicators/OffScreenDiagnosticIndicators.sty.js.map +7 -0
- package/esm/editors/base-code-editor/off-screen-diagnostic-indicators/off-screen-diagnostic-indicators.utils.js +104 -0
- package/esm/editors/base-code-editor/off-screen-diagnostic-indicators/off-screen-diagnostic-indicators.utils.js.map +7 -0
- package/esm/editors/code-editor/CodeEditor.js +5 -3
- package/esm/editors/code-editor/CodeEditor.js.map +2 -2
- package/esm/editors/dql-editor/DQLEditor.js +2 -2
- package/esm/editors/dql-editor/DQLEditor.js.map +2 -2
- package/esm/editors/dql-editor/actions-menu/ActionsMenu.css +10 -10
- package/esm/editors/dql-editor/actions-menu/ActionsMenu.sty.js +5 -5
- package/esm/editors/dql-editor/actions-menu/ActionsMenu.sty.js.map +1 -1
- package/esm/editors/dql-editor/autocomplete/SuggestionsInfoSection.css +7 -7
- package/esm/editors/dql-editor/autocomplete/SuggestionsInfoSection.sty.js +3 -3
- package/esm/editors/dql-editor/autocomplete/SuggestionsInfoSection.sty.js.map +1 -1
- package/esm/filters/filter/FilterBar.js +3 -4
- package/esm/filters/filter/FilterBar.js.map +2 -2
- package/esm/filters/filter/Item.js.map +2 -2
- package/esm/filters/filter/utils/getTextFromNode.js.map +1 -1
- package/esm/filters/filter-field/FilterField.css +166 -143
- package/esm/filters/filter-field/FilterField.js +39 -17
- package/esm/filters/filter-field/FilterField.js.map +2 -2
- package/esm/filters/filter-field/FilterField.sty.js +29 -29
- package/esm/filters/filter-field/FilterField.sty.js.map +2 -2
- package/esm/filters/filter-field/components/FilterFieldSuffixButtons.css +3 -3
- package/esm/filters/filter-field/components/FilterFieldSuffixButtons.sty.js +3 -3
- package/esm/filters/filter-field/components/FilterFieldSuffixButtons.sty.js.map +1 -1
- package/esm/filters/filter-field/components/FilterStatement.css +25 -14
- package/esm/filters/filter-field/components/FilterStatement.js +53 -24
- package/esm/filters/filter-field/components/FilterStatement.js.map +2 -2
- package/esm/filters/filter-field/components/FilterStatement.sty.js +9 -9
- package/esm/filters/filter-field/components/FilterStatement.sty.js.map +2 -2
- package/esm/filters/filter-field/contexts/FilterFieldContext.js +2 -0
- package/esm/filters/filter-field/contexts/FilterFieldContext.js.map +2 -2
- package/esm/filters/filter-field/decorations/decoration-marks.js +7 -1
- package/esm/filters/filter-field/decorations/decoration-marks.js.map +2 -2
- package/esm/filters/filter-field/decorations/filter-statements.js +1 -0
- package/esm/filters/filter-field/decorations/filter-statements.js.map +2 -2
- package/esm/filters/filter-field/decorations/wildcards-in-value.js +98 -0
- package/esm/filters/filter-field/decorations/wildcards-in-value.js.map +7 -0
- package/esm/filters/filter-field/editor-state-configs/pasting-update-listener.js.map +1 -1
- package/esm/filters/filter-field/extensions/interactions-extensions.js.map +1 -1
- package/esm/filters/filter-field/extensions/syntax-highlighting-extension.js +23 -19
- package/esm/filters/filter-field/extensions/syntax-highlighting-extension.js.map +2 -2
- package/esm/filters/filter-field/hooks/recent-and-pinned/usePinnedFilterSuggestions.js.map +1 -1
- package/esm/filters/filter-field/hooks/recent-and-pinned/usePinnedFilters.js +4 -2
- package/esm/filters/filter-field/hooks/recent-and-pinned/usePinnedFilters.js.map +2 -2
- package/esm/filters/filter-field/hooks/recent-and-pinned/useRecentFilterSuggestions.js.map +1 -1
- package/esm/filters/filter-field/hooks/recent-and-pinned/useRecentFilters.js +4 -2
- package/esm/filters/filter-field/hooks/recent-and-pinned/useRecentFilters.js.map +2 -2
- package/esm/filters/filter-field/hooks/useShowMore.js +1 -1
- package/esm/filters/filter-field/hooks/useShowMore.js.map +1 -1
- package/esm/filters/filter-field/hooks/useSuggestions.js +3 -7
- package/esm/filters/filter-field/hooks/useSuggestions.js.map +2 -2
- package/esm/filters/filter-field/hooks/useUpdatableCallback.js.map +1 -1
- package/esm/filters/filter-field/messages.js +19 -34
- package/esm/filters/filter-field/messages.js.map +2 -2
- package/esm/filters/filter-field/parser/parser.js.map +2 -2
- package/esm/filters/filter-field/suggestions/AriaLiveInfo.js +65 -161
- package/esm/filters/filter-field/suggestions/AriaLiveInfo.js.map +2 -2
- package/esm/filters/filter-field/suggestions/RecentPinnedSuggestionItem.css +9 -9
- package/esm/filters/filter-field/suggestions/RecentPinnedSuggestionItem.sty.js +2 -2
- package/esm/filters/filter-field/suggestions/RecentPinnedSuggestionItem.sty.js.map +1 -1
- package/esm/filters/filter-field/suggestions/Suggestion.css +24 -24
- package/esm/filters/filter-field/suggestions/Suggestion.js +11 -4
- package/esm/filters/filter-field/suggestions/Suggestion.js.map +2 -2
- package/esm/filters/filter-field/suggestions/Suggestion.sty.js +16 -16
- package/esm/filters/filter-field/suggestions/Suggestion.sty.js.map +1 -1
- package/esm/filters/filter-field/suggestions/SuggestionDetails.css +2 -2
- package/esm/filters/filter-field/suggestions/SuggestionDetails.sty.js +2 -2
- package/esm/filters/filter-field/suggestions/SuggestionDetails.sty.js.map +1 -1
- package/esm/filters/filter-field/suggestions/SuggestionGroup.css +6 -6
- package/esm/filters/filter-field/suggestions/SuggestionGroup.sty.js +3 -3
- package/esm/filters/filter-field/suggestions/SuggestionGroup.sty.js.map +1 -1
- package/esm/filters/filter-field/suggestions/SuggestionGroupLabel.css +1 -1
- package/esm/filters/filter-field/suggestions/SuggestionGroupLabel.sty.js +1 -1
- package/esm/filters/filter-field/suggestions/SuggestionGroupLabel.sty.js.map +1 -1
- package/esm/filters/filter-field/suggestions/SuggestionTips.css +8 -8
- package/esm/filters/filter-field/suggestions/SuggestionTips.js +1 -0
- package/esm/filters/filter-field/suggestions/SuggestionTips.js.map +2 -2
- package/esm/filters/filter-field/suggestions/SuggestionTips.sty.js +6 -6
- package/esm/filters/filter-field/suggestions/SuggestionTips.sty.js.map +1 -1
- package/esm/filters/filter-field/suggestions/Suggestions.js +9 -22
- package/esm/filters/filter-field/suggestions/Suggestions.js.map +2 -2
- package/esm/filters/filter-field/suggestions/SuggestionsOverlay.css +7 -7
- package/esm/filters/filter-field/suggestions/SuggestionsOverlay.js +36 -32
- package/esm/filters/filter-field/suggestions/SuggestionsOverlay.js.map +2 -2
- package/esm/filters/filter-field/suggestions/SuggestionsOverlay.sty.js +5 -5
- package/esm/filters/filter-field/suggestions/SuggestionsOverlay.sty.js.map +1 -1
- package/esm/filters/filter-field/utils/conversion/dql-conversion/statement-to-dql-fragments.js +61 -9
- package/esm/filters/filter-field/utils/conversion/dql-conversion/statement-to-dql-fragments.js.map +2 -2
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/comparator/search.js.map +1 -1
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/key/json-path.js.map +1 -1
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/key/key.js.map +1 -1
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/parent-node/group.js.map +1 -1
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/parent-node/inclusion.js +7 -3
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/parent-node/inclusion.js.map +2 -2
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/parent-node/statement.js +49 -6
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/parent-node/statement.js.map +2 -2
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/value/free-text.js.map +1 -1
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/value/identifier.js +13 -1
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/value/identifier.js.map +2 -2
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/value/simple-value.js +92 -7
- package/esm/filters/filter-field/utils/conversion/lezer-tree-conversion/value/simple-value.js.map +2 -2
- package/esm/filters/filter-field/utils/conversion/tree-conversion.js.map +1 -1
- package/esm/filters/filter-field/utils/conversion/tree-precedence.js.map +1 -1
- package/esm/filters/filter-field/utils/conversion/tree-string-conversion.js +15 -4
- package/esm/filters/filter-field/utils/conversion/tree-string-conversion.js.map +2 -2
- package/esm/filters/filter-field/utils/escape-suggestion.js +6 -2
- package/esm/filters/filter-field/utils/escape-suggestion.js.map +2 -2
- package/esm/filters/filter-field/utils/generate-errors-or-diagnostics.js.map +1 -1
- package/esm/filters/filter-field/utils/get-suggestion-transaction.js +44 -3
- package/esm/filters/filter-field/utils/get-suggestion-transaction.js.map +2 -2
- package/esm/filters/filter-field/utils/suggestions-utils/operator-suggestions.js +1 -1
- package/esm/filters/filter-field/utils/suggestions-utils/operator-suggestions.js.map +2 -2
- package/esm/filters/filter-field/utils/suggestions-utils/shared-suggestions.js +4 -3
- package/esm/filters/filter-field/utils/suggestions-utils/shared-suggestions.js.map +2 -2
- package/esm/filters/filter-field/utils/suggestions-utils/value-suggestions.js +42 -0
- package/esm/filters/filter-field/utils/suggestions-utils/value-suggestions.js.map +2 -2
- package/esm/filters/filter-field/utils/validation-utils/operator-specification.js +8 -2
- package/esm/filters/filter-field/utils/validation-utils/operator-specification.js.map +2 -2
- package/esm/filters/filter-field/utils/validation-utils/type-guards.js.map +1 -1
- package/esm/filters/filter-field/utils/validation-utils/validation-helper-functions.js +33 -4
- package/esm/filters/filter-field/utils/validation-utils/validation-helper-functions.js.map +2 -2
- package/esm/filters/filter-field/utils/value-operations/add-filter.js.map +1 -1
- package/esm/filters/filter-field/utils/value-operations/remove-filter.js +4 -1
- package/esm/filters/filter-field/utils/value-operations/remove-filter.js.map +2 -2
- package/esm/filters/helper/queryHelper.js.map +1 -1
- package/esm/filters/index.js.map +1 -1
- package/esm/filters/segment-selector/CustomTrigger.js.map +1 -1
- package/esm/filters/segment-selector/SegmentSelector.css +4 -4
- package/esm/filters/segment-selector/SegmentSelector.js.map +2 -2
- package/esm/filters/segment-selector/SegmentSelector.sty.js +4 -4
- package/esm/filters/segment-selector/SegmentSelector.sty.js.map +1 -1
- package/esm/filters/segment-selector/hooks/useSegments.js.map +1 -1
- package/esm/filters/segment-selector/parts/EmptySegments.css +1 -1
- package/esm/filters/segment-selector/parts/EmptySegments.sty.js +1 -1
- package/esm/filters/segment-selector/parts/EmptySegments.sty.js.map +1 -1
- package/esm/filters/segment-selector/parts/Overlay.css +8 -8
- package/esm/filters/segment-selector/parts/Overlay.sty.js +8 -8
- package/esm/filters/segment-selector/parts/Overlay.sty.js.map +1 -1
- package/esm/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.css +4 -4
- package/esm/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.sty.js +4 -4
- package/esm/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.sty.js.map +1 -1
- package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.css +34 -34
- package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.sty.js +10 -10
- package/esm/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.sty.js.map +1 -1
- package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.css +22 -22
- package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.js.map +1 -1
- package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.sty.js +7 -7
- package/esm/filters/segment-selector/parts/selectionBar/SegmentSelect.sty.js.map +1 -1
- package/esm/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.css +1 -1
- package/esm/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.sty.js +1 -1
- package/esm/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.sty.js.map +1 -1
- package/esm/filters/segment-selector/parts/selectionBar/ValueSelect.js +1 -1
- package/esm/filters/segment-selector/parts/selectionBar/ValueSelect.js.map +1 -1
- package/esm/filters/timeframe-selector/TimeframeSelector.css +2 -2
- package/esm/filters/timeframe-selector/TimeframeSelector.js +4 -4
- package/esm/filters/timeframe-selector/TimeframeSelector.js.map +1 -1
- package/esm/filters/timeframe-selector/TimeframeSelector.sty.js +2 -2
- package/esm/filters/timeframe-selector/TimeframeSelector.sty.js.map +1 -1
- package/esm/filters/timeframe-selector/TimeframeSelectorRoot.js +1 -1
- package/esm/filters/timeframe-selector/TimeframeSelectorRoot.js.map +1 -1
- package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.css +4 -4
- package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.sty.js +3 -3
- package/esm/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.sty.js.map +1 -1
- package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.css +4 -4
- package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.js +1 -1
- package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.js.map +2 -2
- package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.sty.js +4 -4
- package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.sty.js.map +1 -1
- package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlayFooter.js +3 -0
- package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlayFooter.js.map +2 -2
- package/esm/filters/timeframe-selector/components/presets/PresetItem.js.map +2 -2
- package/esm/filters/timeframe-selector/components/presets/Presets.css +27 -27
- package/esm/filters/timeframe-selector/components/presets/Presets.sty.js +11 -11
- package/esm/filters/timeframe-selector/components/presets/Presets.sty.js.map +1 -1
- package/esm/filters/timeframe-selector/components/trigger/Trigger.css +11 -11
- package/esm/filters/timeframe-selector/components/trigger/Trigger.sty.js +4 -4
- package/esm/filters/timeframe-selector/components/trigger/Trigger.sty.js.map +1 -1
- package/esm/filters/timeframe-selector/constants/timeframeSelectorMessages.js +5 -0
- package/esm/filters/timeframe-selector/constants/timeframeSelectorMessages.js.map +2 -2
- package/esm/filters/timeframe-selector/utils/presets-helpers.js.map +1 -1
- package/esm/forms/_base-input/BaseInput.css +87 -87
- package/esm/forms/_base-input/BaseInput.js +4 -4
- package/esm/forms/_base-input/BaseInput.js.map +2 -2
- package/esm/forms/_base-input/BaseInput.sty.js +11 -11
- package/esm/forms/_base-input/BaseInput.sty.js.map +1 -1
- package/esm/forms/_base-input/BaseInputContent.css +7 -7
- package/esm/forms/_base-input/BaseInputContent.sty.js +1 -1
- package/esm/forms/_base-input/BaseInputContent.sty.js.map +1 -1
- package/esm/forms/calendar/Calendar.css +48 -48
- package/esm/forms/calendar/Calendar.js +3 -3
- package/esm/forms/calendar/Calendar.js.map +1 -1
- package/esm/forms/calendar/Calendar.sty.js +12 -12
- package/esm/forms/calendar/Calendar.sty.js.map +1 -1
- package/esm/forms/calendar/CalendarRoot.js +36 -42
- package/esm/forms/calendar/CalendarRoot.js.map +2 -2
- package/esm/forms/calendar/components/CalendarItem.css +7 -7
- package/esm/forms/calendar/components/CalendarItem.sty.js +4 -4
- package/esm/forms/calendar/components/CalendarItem.sty.js.map +1 -1
- package/esm/forms/calendar/components/CalendarOutlineIcon.css +8 -8
- package/esm/forms/calendar/components/CalendarOutlineIcon.sty.js +5 -5
- package/esm/forms/calendar/components/CalendarOutlineIcon.sty.js.map +1 -1
- package/esm/forms/calendar/hooks/useCalendar.js +1 -2
- package/esm/forms/calendar/hooks/useCalendar.js.map +2 -2
- package/esm/forms/calendar/state/calendar-state-reducer.js.map +1 -1
- package/esm/forms/calendar/variables.sty.js +2 -2
- package/esm/forms/calendar/variables.sty.js.map +1 -1
- package/esm/forms/checkbox/Checkbox.css +20 -20
- package/esm/forms/checkbox/Checkbox.js +1 -1
- package/esm/forms/checkbox/Checkbox.js.map +1 -1
- package/esm/forms/checkbox/Checkbox.sty.js +3 -3
- package/esm/forms/checkbox/Checkbox.sty.js.map +1 -1
- package/esm/forms/date-time-picker/DateTimePicker.css +42 -42
- package/esm/forms/date-time-picker/DateTimePicker.js +2 -2
- package/esm/forms/date-time-picker/DateTimePicker.js.map +1 -1
- package/esm/forms/date-time-picker/DateTimePicker.sty.js +6 -6
- package/esm/forms/date-time-picker/DateTimePicker.sty.js.map +1 -1
- package/esm/forms/date-time-picker/hooks/useDateTimePicker.js.map +1 -1
- package/esm/forms/date-time-picker/hooks/useSpinButtons.js.map +1 -1
- package/esm/forms/date-time-range-picker/DateRangeSelector.css +1 -1
- package/esm/forms/date-time-range-picker/DateRangeSelector.sty.js +1 -1
- package/esm/forms/date-time-range-picker/DateRangeSelector.sty.js.map +1 -1
- package/esm/forms/date-time-range-picker/DateTimeInput.css +11 -11
- package/esm/forms/date-time-range-picker/DateTimeInput.js.map +1 -1
- package/esm/forms/date-time-range-picker/DateTimeInput.sty.js +3 -3
- package/esm/forms/date-time-range-picker/DateTimeInput.sty.js.map +1 -1
- package/esm/forms/date-time-range-picker/DateTimeRangePicker.css +27 -27
- package/esm/forms/date-time-range-picker/DateTimeRangePicker.js +2 -2
- package/esm/forms/date-time-range-picker/DateTimeRangePicker.js.map +1 -1
- package/esm/forms/date-time-range-picker/DateTimeRangePicker.sty.js +4 -4
- package/esm/forms/date-time-range-picker/DateTimeRangePicker.sty.js.map +1 -1
- package/esm/forms/date-time-range-picker/hooks/useDateTimeInput.js +1 -1
- package/esm/forms/date-time-range-picker/hooks/useDateTimeInput.js.map +1 -1
- package/esm/forms/form/hooks/useInternalFormRegistration.js +1 -1
- package/esm/forms/form/hooks/useInternalFormRegistration.js.map +1 -1
- package/esm/forms/form/runtime/createFormRuntime.js +20 -6
- package/esm/forms/form/runtime/createFormRuntime.js.map +2 -2
- package/esm/forms/forms-core/components/field-set/FieldSet.css +2 -2
- package/esm/forms/forms-core/components/field-set/FieldSet.sty.js +2 -2
- package/esm/forms/forms-core/components/field-set/FieldSet.sty.js.map +1 -1
- package/esm/forms/forms-core/components/form-field/FormField.js +1 -1
- package/esm/forms/forms-core/components/form-field/FormField.js.map +2 -2
- package/esm/forms/forms-core/components/form-field/FormField.sty.js +1 -1
- package/esm/forms/forms-core/components/form-field/FormField.sty.js.map +1 -1
- package/esm/forms/forms-core/components/form-field/FormFieldMessageContextProvider.js +1 -1
- package/esm/forms/forms-core/components/form-field/FormFieldMessageContextProvider.js.map +1 -1
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.css +5 -5
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.js +4 -2
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.js.map +2 -2
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.sty.js +2 -2
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.sty.js.map +1 -1
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.css +3 -3
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.js +12 -10
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.js.map +2 -2
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.sty.js +1 -1
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessages.sty.js.map +1 -1
- package/esm/forms/forms-core/components/hint/Hint.js.map +1 -1
- package/esm/forms/forms-core/components/label/Label.css +5 -5
- package/esm/forms/forms-core/components/label/Label.js +1 -1
- package/esm/forms/forms-core/components/label/Label.js.map +2 -2
- package/esm/forms/forms-core/components/label/Label.sty.js +2 -2
- package/esm/forms/forms-core/components/label/Label.sty.js.map +1 -1
- package/esm/forms/forms-core/contexts/FormFieldContext.js.map +1 -1
- package/esm/forms/forms-core/hooks/useFormControl.js +2 -2
- package/esm/forms/forms-core/hooks/useFormControl.js.map +2 -2
- package/esm/forms/forms-core/state/formfield-state-reducer.js +5 -5
- package/esm/forms/forms-core/state/formfield-state-reducer.js.map +1 -1
- package/esm/forms/forms-core/time/helpers.js.map +1 -1
- package/esm/forms/forms-core/time/timeParser.js.map +1 -1
- package/esm/forms/forms-core/time/useIntervalCallback.js.map +1 -1
- package/esm/forms/hooks/useAutofillEvent.css +8 -8
- package/esm/forms/hooks/useAutofillEvent.sty.js +4 -4
- package/esm/forms/hooks/useAutofillEvent.sty.js.map +1 -1
- package/esm/forms/hooks/useContainerFocus.css +1 -1
- package/esm/forms/hooks/useContainerFocus.sty.js +1 -1
- package/esm/forms/hooks/useContainerFocus.sty.js.map +1 -1
- package/esm/forms/index.js.map +2 -2
- package/esm/forms/number-input/NumberInput.js.map +1 -1
- package/esm/forms/number-input/NumberInputBase.js +0 -2
- package/esm/forms/number-input/NumberInputBase.js.map +2 -2
- package/esm/forms/number-input-v2/NumberInput.js +101 -166
- package/esm/forms/number-input-v2/NumberInput.js.map +2 -2
- package/esm/forms/password-input/PasswordInput.js +1 -1
- package/esm/forms/password-input/PasswordInput.js.map +1 -1
- package/esm/forms/radio/Radio.js.map +1 -1
- package/esm/forms/radio/RadioGroup.js +1 -1
- package/esm/forms/radio/RadioGroup.js.map +2 -2
- package/esm/forms/radio/RadioGroupContext.js.map +1 -1
- package/esm/forms/radio/styles.css +18 -18
- package/esm/forms/radio/styles.sty.js +8 -8
- package/esm/forms/radio/styles.sty.js.map +1 -1
- package/esm/forms/search-input/SearchInput.css +2 -2
- package/esm/forms/search-input/SearchInput.js.map +1 -1
- package/esm/forms/search-input/SearchInput.sty.js +1 -1
- package/esm/forms/search-input/SearchInput.sty.js.map +1 -1
- package/esm/forms/search-input/Stepper.css +5 -5
- package/esm/forms/search-input/Stepper.sty.js +3 -3
- package/esm/forms/search-input/Stepper.sty.js.map +1 -1
- package/esm/forms/select/Select.js +1 -1
- package/esm/forms/select/Select.js.map +1 -1
- package/esm/forms/select/components/HiddenSelect.js +0 -2
- package/esm/forms/select/components/HiddenSelect.js.map +2 -2
- package/esm/forms/select/components/MenuList.js.map +1 -1
- package/esm/forms/select/components/ValueContainer.js.map +2 -2
- package/esm/forms/select/components/sort-selected-options-first.js +1 -1
- package/esm/forms/select/components/sort-selected-options-first.js.map +1 -1
- package/esm/forms/select/hooks/use-select-options.js.map +1 -1
- package/esm/forms/select/hooks/use-select-slots.js.map +1 -1
- package/esm/forms/select/styles/Select.css +46 -46
- package/esm/forms/select/styles/Select.sty.js +24 -24
- package/esm/forms/select/styles/Select.sty.js.map +1 -1
- package/esm/forms/shared-types.js.map +2 -2
- package/esm/forms/spin-buttons/SpinButton.css +8 -8
- package/esm/forms/spin-buttons/SpinButton.sty.js +2 -2
- package/esm/forms/spin-buttons/SpinButton.sty.js.map +1 -1
- package/esm/forms/spin-buttons/hooks/useSelection.js.map +1 -1
- package/esm/forms/spin-buttons/number-spin-button/NumberSpinButton.js.map +1 -1
- package/esm/forms/spin-buttons/text-spin-button/TextSpinButton.js.map +1 -1
- package/esm/forms/switch/Switch.css +36 -36
- package/esm/forms/switch/Switch.js +1 -1
- package/esm/forms/switch/Switch.js.map +2 -2
- package/esm/forms/switch/Switch.sty.js +5 -5
- package/esm/forms/switch/Switch.sty.js.map +1 -1
- package/esm/forms/text-area/TextArea.css +59 -59
- package/esm/forms/text-area/TextArea.js +1 -1
- package/esm/forms/text-area/TextArea.js.map +1 -1
- package/esm/forms/text-area/TextArea.sty.js +3 -3
- package/esm/forms/text-area/TextArea.sty.js.map +1 -1
- package/esm/forms/toggle-button-group/Item.js.map +1 -1
- package/esm/forms/toggle-button-group/ToggleButtonGroup.js.map +2 -2
- package/esm/forms/toggle-button-group/styles.css +58 -58
- package/esm/forms/toggle-button-group/styles.sty.js +15 -15
- package/esm/forms/toggle-button-group/styles.sty.js.map +1 -1
- package/esm/forms/validation/useCustomMessageEmitter.js +3 -1
- package/esm/forms/validation/useCustomMessageEmitter.js.map +2 -2
- package/esm/layouts/app-header/AppHeader.css +1 -1
- package/esm/layouts/app-header/AppHeader.js.map +2 -2
- package/esm/layouts/app-header/AppHeader.sty.js +1 -1
- package/esm/layouts/app-header/AppHeader.sty.js.map +1 -1
- package/esm/layouts/app-header/Navigation.css +9 -9
- package/esm/layouts/app-header/Navigation.sty.js +5 -5
- package/esm/layouts/app-header/Navigation.sty.js.map +1 -1
- package/esm/layouts/app-header/action-group/ActionButton.css +17 -17
- package/esm/layouts/app-header/action-group/ActionButton.js.map +1 -1
- package/esm/layouts/app-header/action-group/ActionButton.sty.js +3 -3
- package/esm/layouts/app-header/action-group/ActionButton.sty.js.map +1 -1
- package/esm/layouts/app-header/action-group/ActionGroup.css +1 -1
- package/esm/layouts/app-header/action-group/ActionGroup.js.map +1 -1
- package/esm/layouts/app-header/action-group/ActionGroup.sty.js +1 -1
- package/esm/layouts/app-header/action-group/ActionGroup.sty.js.map +1 -1
- package/esm/layouts/app-header/action-group/NavItem.css +4 -4
- package/esm/layouts/app-header/action-group/NavItem.sty.js +3 -3
- package/esm/layouts/app-header/action-group/NavItem.sty.js.map +1 -1
- package/esm/layouts/app-header/app-icon/AppIcon.css +4 -4
- package/esm/layouts/app-header/app-icon/AppIcon.sty.js +1 -1
- package/esm/layouts/app-header/app-icon/AppIcon.sty.js.map +1 -1
- package/esm/layouts/container/Container.css +5 -5
- package/esm/layouts/container/Container.sty.js +1 -1
- package/esm/layouts/container/Container.sty.js.map +1 -1
- package/esm/layouts/divider/Divider.css +6 -6
- package/esm/layouts/divider/Divider.sty.js +1 -1
- package/esm/layouts/divider/Divider.sty.js.map +1 -1
- package/esm/layouts/help-menu/HelpMenu.css +20 -0
- package/esm/layouts/help-menu/HelpMenu.js +17 -18
- package/esm/layouts/help-menu/HelpMenu.js.map +2 -2
- package/esm/layouts/help-menu/HelpMenu.sty.js +9 -0
- package/esm/layouts/help-menu/HelpMenu.sty.js.map +7 -0
- package/esm/layouts/hooks/useLayoutStyles.js.map +1 -1
- package/esm/layouts/index.js.map +1 -1
- package/esm/layouts/input-group/InputGroup.css +62 -62
- package/esm/layouts/input-group/InputGroup.sty.js +1 -1
- package/esm/layouts/input-group/InputGroup.sty.js.map +1 -1
- package/esm/layouts/page/DetailView.css +3 -3
- package/esm/layouts/page/DetailView.js.map +2 -2
- package/esm/layouts/page/DetailView.sty.js +2 -2
- package/esm/layouts/page/DetailView.sty.js.map +1 -1
- package/esm/layouts/page/Header.css +2 -2
- package/esm/layouts/page/Header.js.map +2 -2
- package/esm/layouts/page/Header.sty.js +1 -1
- package/esm/layouts/page/Header.sty.js.map +1 -1
- package/esm/layouts/page/Main.css +6 -6
- package/esm/layouts/page/Main.js.map +2 -2
- package/esm/layouts/page/Main.sty.js +4 -4
- package/esm/layouts/page/Main.sty.js.map +1 -1
- package/esm/layouts/page/Page.css +2 -2
- package/esm/layouts/page/Page.js.map +2 -2
- package/esm/layouts/page/Page.sty.js +1 -1
- package/esm/layouts/page/Page.sty.js.map +1 -1
- package/esm/layouts/page/Panel.js.map +2 -2
- package/esm/layouts/page/PanelControlButton.js.map +2 -2
- package/esm/layouts/page/Sidebar.css +35 -35
- package/esm/layouts/page/Sidebar.js.map +2 -2
- package/esm/layouts/page/Sidebar.sty.js +8 -8
- package/esm/layouts/page/Sidebar.sty.js.map +1 -1
- package/esm/layouts/page/page-context.js.map +1 -1
- package/esm/layouts/page/page-types.js.map +1 -1
- package/esm/layouts/page/panel-context.js.map +1 -1
- package/esm/layouts/page/panel-types.js.map +1 -1
- package/esm/layouts/page/panel.css +19 -19
- package/esm/layouts/page/panel.sty.js +10 -10
- package/esm/layouts/page/panel.sty.js.map +1 -1
- package/esm/layouts/page-layout/PageLayout.css +10 -10
- package/esm/layouts/page-layout/PageLayout.js +1 -1
- package/esm/layouts/page-layout/PageLayout.js.map +2 -2
- package/esm/layouts/page-layout/PageLayout.sty.js +6 -6
- package/esm/layouts/page-layout/PageLayout.sty.js.map +1 -1
- package/esm/layouts/page-layout/details-layout/DetailsControlBar.css +3 -3
- package/esm/layouts/page-layout/details-layout/DetailsControlBar.sty.js +3 -3
- package/esm/layouts/page-layout/details-layout/DetailsControlBar.sty.js.map +1 -1
- package/esm/layouts/page-layout/details-layout/DetailsLayout.css +6 -6
- package/esm/layouts/page-layout/details-layout/DetailsLayout.sty.js +5 -5
- package/esm/layouts/page-layout/details-layout/DetailsLayout.sty.js.map +1 -1
- package/esm/layouts/page-layout/details-layout/Overlay.css +18 -18
- package/esm/layouts/page-layout/details-layout/Overlay.sty.js +4 -4
- package/esm/layouts/page-layout/details-layout/Overlay.sty.js.map +1 -1
- package/esm/layouts/page-layout/shared/TeleportTarget.js.map +1 -1
- package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.css +37 -37
- package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js +14 -14
- package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js.map +1 -1
- package/esm/layouts/split-layout/SplitLayout.css +19 -19
- package/esm/layouts/split-layout/SplitLayout.sty.js +7 -7
- package/esm/layouts/split-layout/SplitLayout.sty.js.map +1 -1
- package/esm/layouts/surface/Surface.css +39 -39
- package/esm/layouts/surface/Surface.sty.js +2 -2
- package/esm/layouts/surface/Surface.sty.js.map +1 -1
- package/esm/layouts/surface/variables.sty.js +1 -1
- package/esm/layouts/surface/variables.sty.js.map +1 -1
- package/esm/layouts/title-bar/TitleBar.css +5 -5
- package/esm/layouts/title-bar/TitleBar.sty.js +4 -4
- package/esm/layouts/title-bar/TitleBar.sty.js.map +1 -1
- package/esm/navigation/breadcrumbs/Breadcrumbs.css +9 -9
- package/esm/navigation/breadcrumbs/Breadcrumbs.sty.js +5 -5
- package/esm/navigation/breadcrumbs/Breadcrumbs.sty.js.map +1 -1
- package/esm/navigation/menu/Content.js +2 -0
- package/esm/navigation/menu/Content.js.map +2 -2
- package/esm/navigation/menu/Group.js +42 -16
- package/esm/navigation/menu/Group.js.map +2 -2
- package/esm/navigation/menu/Item.js +10 -5
- package/esm/navigation/menu/Item.js.map +2 -2
- package/esm/navigation/menu/Label.js +28 -14
- package/esm/navigation/menu/Label.js.map +2 -2
- package/esm/navigation/menu/Menu.css +17 -17
- package/esm/navigation/menu/Menu.js +2 -1
- package/esm/navigation/menu/Menu.js.map +2 -2
- package/esm/navigation/menu/Menu.sty.js +8 -8
- package/esm/navigation/menu/Menu.sty.js.map +1 -1
- package/esm/navigation/menu/MobileContent.js +4 -1
- package/esm/navigation/menu/MobileContent.js.map +2 -2
- package/esm/navigation/menu/MobileMenu.css +14 -14
- package/esm/navigation/menu/MobileMenu.sty.js +8 -8
- package/esm/navigation/menu/MobileMenu.sty.js.map +1 -1
- package/esm/navigation/menu/MobileSubTrigger.js +1 -0
- package/esm/navigation/menu/MobileSubTrigger.js.map +2 -2
- package/esm/navigation/menu/contexts/MenuGroupContext.js +6 -0
- package/esm/navigation/menu/contexts/MenuGroupContext.js.map +7 -0
- package/esm/navigation/tabs/RenderTab.css +14 -14
- package/esm/navigation/tabs/RenderTab.sty.js +3 -3
- package/esm/navigation/tabs/RenderTab.sty.js.map +1 -1
- package/esm/navigation/tabs/TabPanel.css +3 -3
- package/esm/navigation/tabs/TabPanel.sty.js +2 -2
- package/esm/navigation/tabs/TabPanel.sty.js.map +1 -1
- package/esm/navigation/tabs/Tabs.css +9 -9
- package/esm/navigation/tabs/Tabs.js.map +1 -1
- package/esm/navigation/tabs/Tabs.sty.js +5 -5
- package/esm/navigation/tabs/Tabs.sty.js.map +1 -1
- package/esm/notifications/notification-settings/NotificationSettings.css +1 -1
- package/esm/notifications/notification-settings/NotificationSettings.sty.js +1 -1
- package/esm/notifications/notification-settings/NotificationSettings.sty.js.map +1 -1
- package/esm/notifications/toast/Toast.css +6 -6
- package/esm/notifications/toast/Toast.sty.js +4 -4
- package/esm/notifications/toast/Toast.sty.js.map +1 -1
- package/esm/notifications/toast/ToastContainer.css +17 -17
- package/esm/notifications/toast/ToastContainer.js.map +1 -1
- package/esm/notifications/toast/ToastContainer.sty.js +1 -1
- package/esm/notifications/toast/ToastContainer.sty.js.map +1 -1
- package/esm/overlays/drawer/Drawer.css +9 -9
- package/esm/overlays/drawer/Drawer.sty.js +5 -5
- package/esm/overlays/drawer/Drawer.sty.js.map +1 -1
- package/esm/overlays/hooks/useOverlay.js.map +1 -1
- package/esm/overlays/hooks/useOverlayWithTrigger.js.map +1 -1
- package/esm/overlays/hooks/usePress.js +4 -4
- package/esm/overlays/hooks/usePress.js.map +1 -1
- package/esm/overlays/index.js.map +1 -1
- package/esm/overlays/modal/Modal.css +16 -16
- package/esm/overlays/modal/Modal.sty.js +7 -7
- package/esm/overlays/modal/Modal.sty.js.map +1 -1
- package/esm/overlays/overlay/Overlay.css +1 -1
- package/esm/overlays/overlay/Overlay.sty.js +1 -1
- package/esm/overlays/overlay/Overlay.sty.js.map +1 -1
- package/esm/overlays/sheet/Sheet.css +8 -7
- package/esm/overlays/sheet/Sheet.js +5 -4
- package/esm/overlays/sheet/Sheet.js.map +2 -2
- package/esm/overlays/sheet/Sheet.sty.js +5 -5
- package/esm/overlays/sheet/Sheet.sty.js.map +1 -1
- package/esm/overlays/tooltip/Tooltip.js +1 -1
- package/esm/overlays/tooltip/Tooltip.js.map +1 -1
- package/esm/overlays/tooltip/tooltip.css +18 -18
- package/esm/overlays/tooltip/tooltip.sty.js +3 -3
- package/esm/overlays/tooltip/tooltip.sty.js.map +1 -1
- package/esm/overlays/utils/popper-modifiers.js.map +1 -1
- package/esm/styles/colorUtils.css +60 -60
- package/esm/styles/colorUtils.sty.js +2 -2
- package/esm/styles/colorUtils.sty.js.map +1 -1
- package/esm/styles/container.css +47 -47
- package/esm/styles/container.sty.js +2 -2
- package/esm/styles/container.sty.js.map +1 -1
- package/esm/styles/ellipsis.css +1 -1
- package/esm/styles/ellipsis.sty.js +1 -1
- package/esm/styles/ellipsis.sty.js.map +1 -1
- package/esm/styles/field.css +256 -256
- package/esm/styles/field.sty.js +2 -2
- package/esm/styles/field.sty.js.map +1 -1
- package/esm/styles/safe-sprinkles.js.map +1 -1
- package/esm/styles/screen-reader-only.css +1 -1
- package/esm/styles/screen-reader-only.sty.js +1 -1
- package/esm/styles/screen-reader-only.sty.js.map +1 -1
- package/esm/styles/sprinkles.css +262 -262
- package/esm/styles/sprinkles.sty.js +1 -1
- package/esm/styles/sprinkles.sty.js.map +1 -1
- package/esm/styles/textStyle.css +8 -8
- package/esm/styles/textStyle.sty.js +1 -1
- package/esm/styles/textStyle.sty.js.map +1 -1
- package/esm/tables/DataTable/DataTable.css +2 -2
- package/esm/tables/DataTable/DataTable.js +25 -23
- package/esm/tables/DataTable/DataTable.js.map +2 -2
- package/esm/tables/DataTable/DataTable.sty.js +7 -7
- package/esm/tables/DataTable/DataTable.sty.js.map +1 -1
- package/esm/tables/DataTable/components/Alignment.css +6 -6
- package/esm/tables/DataTable/components/Alignment.sty.js +2 -2
- package/esm/tables/DataTable/components/Alignment.sty.js.map +1 -1
- package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.css +6 -6
- package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.js.map +2 -2
- package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.sty.js +3 -3
- package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.sty.js.map +1 -1
- package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowHeaderCells.js +2 -2
- package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowHeaderCells.js.map +2 -2
- package/esm/tables/DataTable/components/DataTableBody.css +2 -2
- package/esm/tables/DataTable/components/DataTableBody.js +1 -1
- package/esm/tables/DataTable/components/DataTableBody.js.map +1 -1
- package/esm/tables/DataTable/components/DataTableBody.sty.js +2 -2
- package/esm/tables/DataTable/components/DataTableBody.sty.js.map +1 -1
- package/esm/tables/DataTable/components/DataTableCell.css +83 -83
- package/esm/tables/DataTable/components/DataTableCell.js +16 -6
- package/esm/tables/DataTable/components/DataTableCell.js.map +2 -2
- package/esm/tables/DataTable/components/DataTableCell.sty.js +5 -5
- package/esm/tables/DataTable/components/DataTableCell.sty.js.map +2 -2
- package/esm/tables/DataTable/components/DataTableContent.js +3 -10
- package/esm/tables/DataTable/components/DataTableContent.js.map +2 -2
- package/esm/tables/DataTable/components/DataTableDefaultCell.css +23 -23
- package/esm/tables/DataTable/components/DataTableDefaultCell.sty.js +1 -1
- package/esm/tables/DataTable/components/DataTableDefaultCell.sty.js.map +1 -1
- package/esm/tables/DataTable/components/DataTableDragScrollLock.js.map +1 -1
- package/esm/tables/DataTable/components/DataTableEmptyState.css +6 -6
- package/esm/tables/DataTable/components/DataTableEmptyState.sty.js +2 -2
- package/esm/tables/DataTable/components/DataTableEmptyState.sty.js.map +1 -1
- package/esm/tables/DataTable/components/DataTableHeader.css +2 -2
- package/esm/tables/DataTable/components/DataTableHeader.js +2 -2
- package/esm/tables/DataTable/components/DataTableHeader.js.map +2 -2
- package/esm/tables/DataTable/components/DataTableHeader.sty.js +2 -2
- package/esm/tables/DataTable/components/DataTableHeader.sty.js.map +1 -1
- package/esm/tables/DataTable/components/DataTableHeaderCell.css +64 -64
- package/esm/tables/DataTable/components/DataTableHeaderCell.js +7 -6
- package/esm/tables/DataTable/components/DataTableHeaderCell.js.map +2 -2
- package/esm/tables/DataTable/components/DataTableHeaderCell.sty.js +23 -23
- package/esm/tables/DataTable/components/DataTableHeaderCell.sty.js.map +1 -1
- package/esm/tables/DataTable/components/DataTableRow.css +13 -13
- package/esm/tables/DataTable/components/DataTableRow.js +3 -3
- package/esm/tables/DataTable/components/DataTableRow.js.map +2 -2
- package/esm/tables/DataTable/components/DataTableRow.sty.js +1 -1
- package/esm/tables/DataTable/components/DataTableRow.sty.js.map +1 -1
- package/esm/tables/DataTable/components/DataTableScrollShadow.css +10 -10
- package/esm/tables/DataTable/components/DataTableScrollShadow.js +2 -2
- package/esm/tables/DataTable/components/DataTableScrollShadow.js.map +2 -2
- package/esm/tables/DataTable/components/DataTableScrollShadow.sty.js +2 -2
- package/esm/tables/DataTable/components/DataTableScrollShadow.sty.js.map +1 -1
- package/esm/tables/DataTable/components/DataTableVirtualizationContainer.css +21 -21
- package/esm/tables/DataTable/components/DataTableVirtualizationContainer.js +2 -2
- package/esm/tables/DataTable/components/DataTableVirtualizationContainer.js.map +2 -2
- package/esm/tables/DataTable/components/DataTableVirtualizationContainer.sty.js +1 -1
- package/esm/tables/DataTable/components/DataTableVirtualizationContainer.sty.js.map +1 -1
- package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.css +3 -3
- package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.sty.js +2 -2
- package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.sty.js.map +1 -1
- package/esm/tables/DataTable/components/TableActions/DataTableSelectionChip.css +5 -5
- package/esm/tables/DataTable/components/TableActions/DataTableSelectionChip.sty.js +2 -2
- package/esm/tables/DataTable/components/TableActions/DataTableSelectionChip.sty.js.map +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.css +7 -7
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.sty.js +3 -3
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.sty.js.map +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/column-order-settings-dnd-utils.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnPinningMenu.js +9 -6
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnPinningMenu.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/ColumnVisibilityToggle.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableAllColumnsHiddenEmptyState.css +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableAllColumnsHiddenEmptyState.sty.js +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableAllColumnsHiddenEmptyState.sty.js.map +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettings.js +11 -14
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettings.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettingsModal.js +5 -5
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettingsModal.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.css +19 -19
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.js +14 -20
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js.map +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.css +11 -11
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.js +4 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js +8 -8
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js.map +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.css +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.js +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.sty.js +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.sty.js.map +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableNoFilterResultsEmptyState.css +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableNoFilterResultsEmptyState.sty.js +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableNoFilterResultsEmptyState.sty.js.map +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.css +4 -4
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.js +2 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.sty.js +3 -3
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.sty.js.map +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.js +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.css +3 -3
- package/esm/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.sty.js +2 -2
- package/esm/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.sty.js.map +1 -1
- package/esm/tables/DataTable/contexts/DataTableContext.js +9 -6
- package/esm/tables/DataTable/contexts/DataTableContext.js.map +2 -2
- package/esm/tables/DataTable/features/CellFormatter/CellFormatter.js +26 -14
- package/esm/tables/DataTable/features/CellFormatter/CellFormatter.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnFontStyle/ColumnFontStyle.js +31 -18
- package/esm/tables/DataTable/features/ColumnFontStyle/ColumnFontStyle.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.css +8 -8
- package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.js +54 -45
- package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.sty.js +4 -4
- package/esm/tables/DataTable/features/ColumnOrder/ColumnOrder.sty.js.map +1 -1
- package/esm/tables/DataTable/features/ColumnOrder/ColumnOrderDragAndDropContext.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnOrder/column-order-dnd-utils.js +6 -6
- package/esm/tables/DataTable/features/ColumnOrder/column-order-dnd-utils.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnOrder/column-order-utils.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnOrder/useColumnOrder.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnPinning/ColumnPinning.js +190 -173
- package/esm/tables/DataTable/features/ColumnPinning/ColumnPinning.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnPinning/column-pinning-utils.js +24 -14
- package/esm/tables/DataTable/features/ColumnPinning/column-pinning-utils.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnPinning/useColumnPinning.js +23 -17
- package/esm/tables/DataTable/features/ColumnPinning/useColumnPinning.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.css +3 -3
- package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.js +40 -40
- package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.sty.js +1 -1
- package/esm/tables/DataTable/features/ColumnSizing/ColumnSizing.sty.js.map +1 -1
- package/esm/tables/DataTable/features/ColumnSizing/useColumnSizing.js +1 -3
- package/esm/tables/DataTable/features/ColumnSizing/useColumnSizing.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnTypes/ColumnTypes.css +1 -1
- package/esm/tables/DataTable/features/ColumnTypes/ColumnTypes.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnTypes/ColumnTypes.sty.js +1 -1
- package/esm/tables/DataTable/features/ColumnTypes/ColumnTypes.sty.js.map +1 -1
- package/esm/tables/DataTable/features/ColumnVisibility/ColumnVisibility.js +102 -94
- package/esm/tables/DataTable/features/ColumnVisibility/ColumnVisibility.js.map +2 -2
- package/esm/tables/DataTable/features/ColumnVisibility/useColumnVisibility.js.map +2 -2
- package/esm/tables/DataTable/features/Config.js +18 -13
- package/esm/tables/DataTable/features/Config.js.map +2 -2
- package/esm/tables/DataTable/features/Download/Download.js +56 -52
- package/esm/tables/DataTable/features/Download/Download.js.map +2 -2
- package/esm/tables/DataTable/features/Download/useDownload.js.map +2 -2
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.css +1 -1
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.sty.js +1 -1
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.sty.js.map +1 -1
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartCell.css +3 -3
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartCell.js.map +1 -1
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartCell.sty.js +2 -2
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartCell.sty.js.map +1 -1
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.css +1 -1
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.sty.js +1 -1
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.sty.js.map +1 -1
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.css +4 -4
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.sty.js +1 -1
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.sty.js.map +1 -1
- package/esm/tables/DataTable/features/GanttChart/GanttChart.js +10 -7
- package/esm/tables/DataTable/features/GanttChart/GanttChart.js.map +2 -2
- package/esm/tables/DataTable/features/GanttChart/useGanttChart.js.map +2 -2
- package/esm/tables/DataTable/features/Layout/Layout.js +117 -101
- package/esm/tables/DataTable/features/Layout/Layout.js.map +2 -2
- package/esm/tables/DataTable/features/Layout/layout-utils.js +5 -3
- package/esm/tables/DataTable/features/Layout/layout-utils.js.map +2 -2
- package/esm/tables/DataTable/features/Layout/useLayout.js.map +2 -2
- package/esm/tables/DataTable/features/LineWrap/LineWrap.js +33 -20
- package/esm/tables/DataTable/features/LineWrap/LineWrap.js.map +2 -2
- package/esm/tables/DataTable/features/LineWrap/useLineWrap.js.map +1 -1
- package/esm/tables/DataTable/features/LoadingState/LoadingState.css +3 -3
- package/esm/tables/DataTable/features/LoadingState/LoadingState.js.map +2 -2
- package/esm/tables/DataTable/features/LoadingState/LoadingState.sty.js +3 -3
- package/esm/tables/DataTable/features/LoadingState/LoadingState.sty.js.map +1 -1
- package/esm/tables/DataTable/features/LoadingState/useLoadingState.js.map +2 -2
- package/esm/tables/DataTable/features/MeterBarChart/MeterBarChart.css +5 -5
- package/esm/tables/DataTable/features/MeterBarChart/MeterBarChart.js +1 -1
- package/esm/tables/DataTable/features/MeterBarChart/MeterBarChart.js.map +2 -2
- package/esm/tables/DataTable/features/MeterBarChart/MeterBarChart.sty.js +2 -2
- package/esm/tables/DataTable/features/MeterBarChart/MeterBarChart.sty.js.map +1 -1
- package/esm/tables/DataTable/features/Pagination/Pagination.js +28 -25
- package/esm/tables/DataTable/features/Pagination/Pagination.js.map +2 -2
- package/esm/tables/DataTable/features/Pagination/pagination-row-model.js +1 -2
- package/esm/tables/DataTable/features/Pagination/pagination-row-model.js.map +2 -2
- package/esm/tables/DataTable/features/Pagination/usePagination.js +1 -3
- package/esm/tables/DataTable/features/Pagination/usePagination.js.map +2 -2
- package/esm/tables/DataTable/features/RowDetails/RowDetails.css +13 -13
- package/esm/tables/DataTable/features/RowDetails/RowDetails.js +38 -30
- package/esm/tables/DataTable/features/RowDetails/RowDetails.js.map +2 -2
- package/esm/tables/DataTable/features/RowDetails/RowDetails.sty.js +3 -3
- package/esm/tables/DataTable/features/RowDetails/RowDetails.sty.js.map +1 -1
- package/esm/tables/DataTable/features/RowDetails/RowDetailsColumnDef.js.map +2 -2
- package/esm/tables/DataTable/features/RowDetails/components/RowDetailsElement.js.map +2 -2
- package/esm/tables/DataTable/features/RowDetails/details-row-model.js +17 -14
- package/esm/tables/DataTable/features/RowDetails/details-row-model.js.map +2 -2
- package/esm/tables/DataTable/features/RowIdentification/RowIdentification.js.map +2 -2
- package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.css +17 -17
- package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.js +48 -40
- package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.js.map +2 -2
- package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.sty.js +1 -1
- package/esm/tables/DataTable/features/RowInteractivity/RowInteractivity.sty.js.map +1 -1
- package/esm/tables/DataTable/features/RowInteractivity/hooks/useRowInteractivityProps.js +1 -1
- package/esm/tables/DataTable/features/RowInteractivity/hooks/useRowInteractivityProps.js.map +2 -2
- package/esm/tables/DataTable/features/RowInteractivity/useRowInteractivity.js +2 -2
- package/esm/tables/DataTable/features/RowInteractivity/useRowInteractivity.js.map +2 -2
- package/esm/tables/DataTable/features/RowOrder/RowOrder.css +8 -8
- package/esm/tables/DataTable/features/RowOrder/RowOrder.js +34 -26
- package/esm/tables/DataTable/features/RowOrder/RowOrder.js.map +2 -2
- package/esm/tables/DataTable/features/RowOrder/RowOrder.sty.js +3 -3
- package/esm/tables/DataTable/features/RowOrder/RowOrder.sty.js.map +1 -1
- package/esm/tables/DataTable/features/RowOrder/components/RowOrderingDragAndDropContext.js +1 -1
- package/esm/tables/DataTable/features/RowOrder/components/RowOrderingDragAndDropContext.js.map +2 -2
- package/esm/tables/DataTable/features/RowOrder/row-order-column-utils.js.map +2 -2
- package/esm/tables/DataTable/features/RowOrder/row-order-model.js +8 -6
- package/esm/tables/DataTable/features/RowOrder/row-order-model.js.map +2 -2
- package/esm/tables/DataTable/features/RowOrder/row-order-utils.js.map +2 -2
- package/esm/tables/DataTable/features/RowOrder/useRowOrder.js.map +2 -2
- package/esm/tables/DataTable/features/RowSelection/RowSelection.js +78 -70
- package/esm/tables/DataTable/features/RowSelection/RowSelection.js.map +2 -2
- package/esm/tables/DataTable/features/RowSelection/RowSelectionCells.js +1 -1
- package/esm/tables/DataTable/features/RowSelection/RowSelectionCells.js.map +2 -2
- package/esm/tables/DataTable/features/RowSelection/useRowSelection.js +12 -7
- package/esm/tables/DataTable/features/RowSelection/useRowSelection.js.map +2 -2
- package/esm/tables/DataTable/features/Sorting/Sorting.css +34 -34
- package/esm/tables/DataTable/features/Sorting/Sorting.js +48 -45
- package/esm/tables/DataTable/features/Sorting/Sorting.js.map +2 -2
- package/esm/tables/DataTable/features/Sorting/Sorting.sty.js +3 -3
- package/esm/tables/DataTable/features/Sorting/Sorting.sty.js.map +1 -1
- package/esm/tables/DataTable/features/Sorting/compare-functions.js.map +1 -1
- package/esm/tables/DataTable/features/Sorting/sorted-row-model.js +1 -2
- package/esm/tables/DataTable/features/Sorting/sorted-row-model.js.map +2 -2
- package/esm/tables/DataTable/features/Sorting/useSorting.js.map +2 -2
- package/esm/tables/DataTable/features/SubRows/SubRows.css +19 -19
- package/esm/tables/DataTable/features/SubRows/SubRows.js +95 -84
- package/esm/tables/DataTable/features/SubRows/SubRows.js.map +2 -2
- package/esm/tables/DataTable/features/SubRows/SubRows.sty.js +5 -5
- package/esm/tables/DataTable/features/SubRows/SubRows.sty.js.map +1 -1
- package/esm/tables/DataTable/features/SubRows/components/SubRowCellContext.js.map +2 -2
- package/esm/tables/DataTable/features/SubRows/components/SubRowExpanders.js.map +2 -2
- package/esm/tables/DataTable/features/SubRows/sub-rows-utils.js.map +2 -2
- package/esm/tables/DataTable/features/SubRows/subrows-row-model.js +1 -2
- package/esm/tables/DataTable/features/SubRows/subrows-row-model.js.map +2 -2
- package/esm/tables/DataTable/features/SubRows/useSubRows.js +1 -1
- package/esm/tables/DataTable/features/SubRows/useSubRows.js.map +2 -2
- package/esm/tables/DataTable/features/Thresholds/Thresholds.css +2 -2
- package/esm/tables/DataTable/features/Thresholds/Thresholds.js +34 -27
- package/esm/tables/DataTable/features/Thresholds/Thresholds.js.map +2 -2
- package/esm/tables/DataTable/features/Thresholds/Thresholds.sty.js +3 -3
- package/esm/tables/DataTable/features/Thresholds/Thresholds.sty.js.map +1 -1
- package/esm/tables/DataTable/features/Thresholds/normalize-rules.js.map +1 -1
- package/esm/tables/DataTable/features/Thresholds/useThresholds.js.map +2 -2
- package/esm/tables/DataTable/features/UserActions/FloatingMenu.js.map +1 -1
- package/esm/tables/DataTable/features/UserActions/RowActions.css +4 -4
- package/esm/tables/DataTable/features/UserActions/RowActions.sty.js +1 -1
- package/esm/tables/DataTable/features/UserActions/RowActions.sty.js.map +1 -1
- package/esm/tables/DataTable/features/UserActions/UserActions.css +20 -20
- package/esm/tables/DataTable/features/UserActions/UserActions.js +85 -69
- package/esm/tables/DataTable/features/UserActions/UserActions.js.map +2 -2
- package/esm/tables/DataTable/features/UserActions/UserActions.sty.js +2 -2
- package/esm/tables/DataTable/features/UserActions/UserActions.sty.js.map +1 -1
- package/esm/tables/DataTable/features/UserActions/UserActionsMenu.js +5 -5
- package/esm/tables/DataTable/features/UserActions/UserActionsMenu.js.map +2 -2
- package/esm/tables/DataTable/features/UserActions/useCloseMenuOnScroll.js +2 -2
- package/esm/tables/DataTable/features/UserActions/useCloseMenuOnScroll.js.map +2 -2
- package/esm/tables/DataTable/features/UserActions/useUserActions.js.map +1 -1
- package/esm/tables/DataTable/features/VirtualScrolling/VirtualScrolling.js +82 -77
- package/esm/tables/DataTable/features/VirtualScrolling/VirtualScrolling.js.map +2 -2
- package/esm/tables/DataTable/features/VisualVariants/VisualVariants.js +22 -17
- package/esm/tables/DataTable/features/VisualVariants/VisualVariants.js.map +2 -2
- package/esm/tables/DataTable/features/VisualVariants/useVisualVariants.js.map +2 -2
- package/esm/tables/DataTable/features/createCoreRowModel.js +1 -2
- package/esm/tables/DataTable/features/createCoreRowModel.js.map +2 -2
- package/esm/tables/DataTable/features/features.js +9 -1
- package/esm/tables/DataTable/features/features.js.map +2 -2
- package/esm/tables/DataTable/features/types/table.types.js +18 -0
- package/esm/tables/DataTable/features/types/table.types.js.map +7 -0
- package/esm/tables/DataTable/hooks/makeAccessorFunction.js.map +1 -1
- package/esm/tables/DataTable/hooks/useBuiltInColumns.js.map +2 -2
- package/esm/tables/DataTable/hooks/useColumnRemeasure.js +1 -1
- package/esm/tables/DataTable/hooks/useColumnRemeasure.js.map +2 -2
- package/esm/tables/DataTable/hooks/useHeaderCellInteractions.js +5 -3
- package/esm/tables/DataTable/hooks/useHeaderCellInteractions.js.map +2 -2
- package/esm/tables/DataTable/hooks/useHeaderDragAndDrop.js.map +2 -2
- package/esm/tables/DataTable/hooks/useTable/datatable-typeguards.js +4 -4
- package/esm/tables/DataTable/hooks/useTable/datatable-typeguards.js.map +2 -2
- package/esm/tables/DataTable/messages.js +2 -2
- package/esm/tables/DataTable/messages.js.map +2 -2
- package/esm/tables/SimpleTable/SimpleTable.css +27 -27
- package/esm/tables/SimpleTable/SimpleTable.js +9 -6
- package/esm/tables/SimpleTable/SimpleTable.js.map +2 -2
- package/esm/tables/SimpleTable/SimpleTable.sty.js +1 -1
- package/esm/tables/SimpleTable/SimpleTable.sty.js.map +1 -1
- package/esm/tables/hooks/useFilteredData.js +1 -4
- package/esm/tables/hooks/useFilteredData.js.map +2 -2
- package/esm/tables/hooks/useLockedRowOrder.js +1 -1
- package/esm/tables/hooks/useLockedRowOrder.js.map +1 -1
- package/esm/tables/index.js.map +1 -1
- package/esm/tables/utils/datatable-config-utils.js.map +1 -1
- package/esm/tables/utils/get-column-label.js.map +2 -2
- package/esm/tables/utils/is-target-interactive.js +4 -2
- package/esm/tables/utils/is-target-interactive.js.map +2 -2
- package/esm/typography/block-quote/Blockquote.css +2 -2
- package/esm/typography/block-quote/Blockquote.sty.js +1 -1
- package/esm/typography/block-quote/Blockquote.sty.js.map +1 -1
- package/esm/typography/code/Code.css +9 -2
- package/esm/typography/code/Code.sty.js +1 -1
- package/esm/typography/code/Code.sty.js.map +1 -1
- package/esm/typography/emphasis/Emphasis.css +1 -1
- package/esm/typography/emphasis/Emphasis.sty.js +1 -1
- package/esm/typography/emphasis/Emphasis.sty.js.map +1 -1
- package/esm/typography/external-link/ExternalLink.css +6 -6
- package/esm/typography/external-link/ExternalLink.sty.js +1 -1
- package/esm/typography/external-link/ExternalLink.sty.js.map +1 -1
- package/esm/typography/heading/Heading.css +7 -7
- package/esm/typography/heading/Heading.sty.js +1 -1
- package/esm/typography/heading/Heading.sty.js.map +1 -1
- package/esm/typography/highlight/Highlight.css +2 -2
- package/esm/typography/highlight/Highlight.sty.js +1 -1
- package/esm/typography/highlight/Highlight.sty.js.map +1 -1
- package/esm/typography/link/Link.css +4 -4
- package/esm/typography/link/Link.sty.js +1 -1
- package/esm/typography/link/Link.sty.js.map +1 -1
- package/esm/typography/list/List.css +4 -4
- package/esm/typography/list/List.sty.js +2 -2
- package/esm/typography/list/List.sty.js.map +1 -1
- package/esm/typography/paragraph/Paragraph.css +3 -3
- package/esm/typography/paragraph/Paragraph.sty.js +1 -1
- package/esm/typography/paragraph/Paragraph.sty.js.map +1 -1
- package/esm/typography/strikethrough/Strikethrough.css +1 -1
- package/esm/typography/strikethrough/Strikethrough.sty.js +1 -1
- package/esm/typography/strikethrough/Strikethrough.sty.js.map +1 -1
- package/esm/typography/strong/Strong.css +1 -1
- package/esm/typography/strong/Strong.sty.js +1 -1
- package/esm/typography/strong/Strong.sty.js.map +1 -1
- package/esm/typography/text/Text.css +3 -3
- package/esm/typography/text/Text.sty.js +1 -1
- package/esm/typography/text/Text.sty.js.map +1 -1
- package/esm/typography/text-ellipsis/TextEllipsis.css +6 -6
- package/esm/typography/text-ellipsis/TextEllipsis.sty.js +2 -2
- package/esm/typography/text-ellipsis/TextEllipsis.sty.js.map +1 -1
- package/filters/filter/FilterBar.js +3 -4
- package/filters/filter-field/FilterField.css +166 -143
- package/filters/filter-field/FilterField.css.d.ts +3 -3
- package/filters/filter-field/FilterField.d.ts +2 -1
- package/filters/filter-field/FilterField.js +37 -16
- package/filters/filter-field/FilterField.sty.js +29 -29
- package/filters/filter-field/FilterField.types.d.ts +9 -0
- package/filters/filter-field/components/FilterFieldSuffixButtons.css +3 -3
- package/filters/filter-field/components/FilterFieldSuffixButtons.sty.js +3 -3
- package/filters/filter-field/components/FilterStatement.css +25 -14
- package/filters/filter-field/components/FilterStatement.css.d.ts +1 -1
- package/filters/filter-field/components/FilterStatement.js +53 -24
- package/filters/filter-field/components/FilterStatement.sty.js +9 -9
- package/filters/filter-field/contexts/FilterFieldContext.js +2 -0
- package/filters/filter-field/contexts/FilterFieldContext.types.d.ts +8 -1
- package/filters/filter-field/decorations/decoration-marks.d.ts +2 -0
- package/filters/filter-field/decorations/decoration-marks.js +7 -1
- package/filters/filter-field/decorations/filter-statements.js +1 -0
- package/filters/filter-field/decorations/wildcards-in-value.d.ts +23 -0
- package/filters/filter-field/decorations/wildcards-in-value.js +116 -0
- package/filters/filter-field/extensions/syntax-highlighting-extension.d.ts +1 -1
- package/filters/filter-field/extensions/syntax-highlighting-extension.js +23 -19
- package/filters/filter-field/hooks/recent-and-pinned/usePinnedFilters.js +4 -2
- package/filters/filter-field/hooks/recent-and-pinned/useRecentFilters.js +4 -2
- package/filters/filter-field/hooks/useShowMore.js +1 -1
- package/filters/filter-field/hooks/useSuggestions.d.ts +0 -1
- package/filters/filter-field/hooks/useSuggestions.js +3 -7
- package/filters/filter-field/messages.d.ts +12 -27
- package/filters/filter-field/messages.js +19 -34
- package/filters/filter-field/suggestions/AriaLiveInfo.d.ts +7 -7
- package/filters/filter-field/suggestions/AriaLiveInfo.js +62 -158
- package/filters/filter-field/suggestions/RecentPinnedSuggestionItem.css +9 -9
- package/filters/filter-field/suggestions/RecentPinnedSuggestionItem.sty.js +2 -2
- package/filters/filter-field/suggestions/Suggestion.css +24 -24
- package/filters/filter-field/suggestions/Suggestion.d.ts +10 -0
- package/filters/filter-field/suggestions/Suggestion.js +11 -4
- package/filters/filter-field/suggestions/Suggestion.sty.js +16 -16
- package/filters/filter-field/suggestions/SuggestionDetails.css +2 -2
- package/filters/filter-field/suggestions/SuggestionDetails.sty.js +2 -2
- package/filters/filter-field/suggestions/SuggestionGroup.css +6 -6
- package/filters/filter-field/suggestions/SuggestionGroup.sty.js +3 -3
- package/filters/filter-field/suggestions/SuggestionGroupLabel.css +1 -1
- package/filters/filter-field/suggestions/SuggestionGroupLabel.sty.js +1 -1
- package/filters/filter-field/suggestions/SuggestionTips.css +8 -8
- package/filters/filter-field/suggestions/SuggestionTips.js +1 -0
- package/filters/filter-field/suggestions/SuggestionTips.sty.js +6 -6
- package/filters/filter-field/suggestions/Suggestions.js +8 -15
- package/filters/filter-field/suggestions/SuggestionsOverlay.css +7 -7
- package/filters/filter-field/suggestions/SuggestionsOverlay.js +36 -32
- package/filters/filter-field/suggestions/SuggestionsOverlay.sty.js +5 -5
- package/filters/filter-field/types/conversion-tree-nodes.d.ts +1 -1
- package/filters/filter-field/types/tree-nodes.d.ts +1 -1
- package/filters/filter-field/types/validation.d.ts +1 -1
- package/filters/filter-field/utils/conversion/dql-conversion/statement-to-dql-fragments.js +61 -9
- package/filters/filter-field/utils/conversion/lezer-tree-conversion/parent-node/inclusion.js +7 -3
- package/filters/filter-field/utils/conversion/lezer-tree-conversion/parent-node/statement.js +49 -6
- package/filters/filter-field/utils/conversion/lezer-tree-conversion/value/identifier.js +13 -1
- package/filters/filter-field/utils/conversion/lezer-tree-conversion/value/simple-value.d.ts +1 -0
- package/filters/filter-field/utils/conversion/lezer-tree-conversion/value/simple-value.js +92 -7
- package/filters/filter-field/utils/conversion/tree-string-conversion.js +15 -4
- package/filters/filter-field/utils/escape-suggestion.js +6 -2
- package/filters/filter-field/utils/get-suggestion-transaction.js +44 -3
- package/filters/filter-field/utils/suggestions-utils/operator-suggestions.js +1 -1
- package/filters/filter-field/utils/suggestions-utils/shared-suggestions.js +4 -3
- package/filters/filter-field/utils/suggestions-utils/value-suggestions.js +42 -0
- package/filters/filter-field/utils/validation-utils/operator-specification.js +8 -2
- package/filters/filter-field/utils/validation-utils/validation-helper-functions.js +33 -4
- package/filters/filter-field/utils/value-operations/remove-filter.js +4 -1
- package/filters/segment-selector/SegmentSelector.css +4 -4
- package/filters/segment-selector/SegmentSelector.sty.js +4 -4
- package/filters/segment-selector/parts/EmptySegments.css +1 -1
- package/filters/segment-selector/parts/EmptySegments.sty.js +1 -1
- package/filters/segment-selector/parts/Overlay.css +8 -8
- package/filters/segment-selector/parts/Overlay.sty.js +8 -8
- package/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.css +4 -4
- package/filters/segment-selector/parts/ShowMorePanel/ShowMorePanel.sty.js +4 -4
- package/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.css +34 -34
- package/filters/segment-selector/parts/segmentsPresets/SegmentsPresets.sty.js +10 -10
- package/filters/segment-selector/parts/selectionBar/SegmentSelect.css +22 -22
- package/filters/segment-selector/parts/selectionBar/SegmentSelect.sty.js +7 -7
- package/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.css +1 -1
- package/filters/segment-selector/parts/selectionBar/SegmentSelectorTrigger.sty.js +1 -1
- package/filters/segment-selector/parts/selectionBar/ValueSelect.js +1 -1
- package/filters/timeframe-selector/TimeframeSelector.css +2 -2
- package/filters/timeframe-selector/TimeframeSelector.js +4 -4
- package/filters/timeframe-selector/TimeframeSelector.sty.js +2 -2
- package/filters/timeframe-selector/TimeframeSelectorRoot.js +1 -1
- package/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.css +4 -4
- package/filters/timeframe-selector/components/custom-timeframe-selector/CustomTimeframeSelector.sty.js +3 -3
- package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.css +4 -4
- package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.js +1 -1
- package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.sty.js +4 -4
- package/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlayFooter.js +3 -0
- package/filters/timeframe-selector/components/presets/Presets.css +27 -27
- package/filters/timeframe-selector/components/presets/Presets.sty.js +11 -11
- package/filters/timeframe-selector/components/trigger/Trigger.css +11 -11
- package/filters/timeframe-selector/components/trigger/Trigger.sty.js +4 -4
- package/filters/timeframe-selector/constants/timeframeSelectorMessages.d.ts +5 -0
- package/filters/timeframe-selector/constants/timeframeSelectorMessages.js +5 -0
- package/forms/_base-input/BaseInput.css +87 -87
- package/forms/_base-input/BaseInput.js +4 -4
- package/forms/_base-input/BaseInput.sty.js +11 -11
- package/forms/_base-input/BaseInputContent.css +7 -7
- package/forms/_base-input/BaseInputContent.sty.js +1 -1
- package/forms/calendar/Calendar.css +48 -48
- package/forms/calendar/Calendar.js +3 -3
- package/forms/calendar/Calendar.sty.js +12 -12
- package/forms/calendar/CalendarRoot.js +36 -42
- package/forms/calendar/components/CalendarItem.css +7 -7
- package/forms/calendar/components/CalendarItem.sty.js +4 -4
- package/forms/calendar/components/CalendarOutlineIcon.css +8 -8
- package/forms/calendar/components/CalendarOutlineIcon.sty.js +5 -5
- package/forms/calendar/hooks/useCalendar.js +1 -2
- package/forms/calendar/variables.sty.js +2 -2
- package/forms/checkbox/Checkbox.css +20 -20
- package/forms/checkbox/Checkbox.js +1 -1
- package/forms/checkbox/Checkbox.sty.js +3 -3
- package/forms/date-time-picker/DateTimePicker.css +42 -42
- package/forms/date-time-picker/DateTimePicker.js +2 -2
- package/forms/date-time-picker/DateTimePicker.sty.js +6 -6
- package/forms/date-time-range-picker/DateRangeSelector.css +1 -1
- package/forms/date-time-range-picker/DateRangeSelector.sty.js +1 -1
- package/forms/date-time-range-picker/DateTimeInput.css +11 -11
- package/forms/date-time-range-picker/DateTimeInput.sty.js +3 -3
- package/forms/date-time-range-picker/DateTimeRangePicker.css +27 -27
- package/forms/date-time-range-picker/DateTimeRangePicker.js +2 -2
- package/forms/date-time-range-picker/DateTimeRangePicker.sty.js +4 -4
- package/forms/date-time-range-picker/hooks/useDateTimeInput.js +1 -1
- package/forms/form/hooks/useInternalFormRegistration.js +1 -1
- package/forms/form/runtime/createFormRuntime.js +20 -6
- package/forms/forms-core/components/field-set/FieldSet.css +2 -2
- package/forms/forms-core/components/field-set/FieldSet.sty.js +2 -2
- package/forms/forms-core/components/form-field/FormField.js +1 -1
- package/forms/forms-core/components/form-field/FormField.sty.js +1 -1
- package/forms/forms-core/components/form-field/FormFieldMessageContextProvider.js +1 -1
- package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.css +5 -5
- package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.d.ts +8 -0
- package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.js +4 -2
- package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.sty.js +2 -2
- package/forms/forms-core/components/form-field-messages/FormFieldMessages.css +3 -3
- package/forms/forms-core/components/form-field-messages/FormFieldMessages.d.ts +19 -2
- package/forms/forms-core/components/form-field-messages/FormFieldMessages.js +11 -10
- package/forms/forms-core/components/form-field-messages/FormFieldMessages.sty.js +1 -1
- package/forms/forms-core/components/label/Label.css +5 -5
- package/forms/forms-core/components/label/Label.js +1 -1
- package/forms/forms-core/components/label/Label.sty.js +2 -2
- package/forms/forms-core/hooks/useFormControl.js +2 -2
- package/forms/forms-core/state/formfield-state-reducer.js +5 -5
- package/forms/hooks/useAutofillEvent.css +8 -8
- package/forms/hooks/useAutofillEvent.sty.js +4 -4
- package/forms/hooks/useContainerFocus.css +1 -1
- package/forms/hooks/useContainerFocus.sty.js +1 -1
- package/forms/index.d.ts +1 -1
- package/forms/number-input/NumberInputBase.js +0 -2
- package/forms/number-input-v2/NumberInput.js +101 -166
- package/forms/password-input/PasswordInput.js +1 -1
- package/forms/radio/RadioGroup.js +1 -1
- package/forms/radio/styles.css +18 -18
- package/forms/radio/styles.sty.js +8 -8
- package/forms/search-input/SearchInput.css +2 -2
- package/forms/search-input/SearchInput.sty.js +1 -1
- package/forms/search-input/Stepper.css +5 -5
- package/forms/search-input/Stepper.sty.js +3 -3
- package/forms/select/Select.js +1 -1
- package/forms/select/components/HiddenSelect.js +0 -2
- package/forms/select/components/sort-selected-options-first.js +1 -1
- package/forms/select/styles/Select.css +46 -46
- package/forms/select/styles/Select.sty.js +24 -24
- package/forms/spin-buttons/SpinButton.css +8 -8
- package/forms/spin-buttons/SpinButton.sty.js +2 -2
- package/forms/switch/Switch.css +36 -36
- package/forms/switch/Switch.js +1 -1
- package/forms/switch/Switch.sty.js +5 -5
- package/forms/text-area/TextArea.css +59 -59
- package/forms/text-area/TextArea.js +1 -1
- package/forms/text-area/TextArea.sty.js +3 -3
- package/forms/toggle-button-group/styles.css +58 -58
- package/forms/toggle-button-group/styles.sty.js +15 -15
- package/forms/validation/useCustomMessageEmitter.js +3 -1
- package/lang/en.json +286 -48
- package/lang/ja.json +80 -12
- package/lang/uncompiled/en.json +67 -31
- package/lang/uncompiled/ja.json +30 -6
- package/layouts/app-header/AppHeader.css +1 -1
- package/layouts/app-header/AppHeader.sty.js +1 -1
- package/layouts/app-header/Navigation.css +9 -9
- package/layouts/app-header/Navigation.sty.js +5 -5
- package/layouts/app-header/action-group/ActionButton.css +17 -17
- package/layouts/app-header/action-group/ActionButton.sty.js +3 -3
- package/layouts/app-header/action-group/ActionGroup.css +1 -1
- package/layouts/app-header/action-group/ActionGroup.sty.js +1 -1
- package/layouts/app-header/action-group/NavItem.css +4 -4
- package/layouts/app-header/action-group/NavItem.sty.js +3 -3
- package/layouts/app-header/app-icon/AppIcon.css +4 -4
- package/layouts/app-header/app-icon/AppIcon.sty.js +1 -1
- package/layouts/container/Container.css +5 -5
- package/layouts/container/Container.sty.js +1 -1
- package/layouts/divider/Divider.css +6 -6
- package/layouts/divider/Divider.sty.js +1 -1
- package/layouts/help-menu/HelpMenu.css +20 -0
- package/layouts/help-menu/HelpMenu.css.d.ts +9 -0
- package/layouts/help-menu/HelpMenu.js +17 -18
- package/layouts/help-menu/HelpMenu.sty.js +27 -0
- package/layouts/input-group/InputGroup.css +62 -62
- package/layouts/input-group/InputGroup.sty.js +1 -1
- package/layouts/page/DetailView.css +3 -3
- package/layouts/page/DetailView.sty.js +2 -2
- package/layouts/page/Header.css +2 -2
- package/layouts/page/Header.sty.js +1 -1
- package/layouts/page/Main.css +6 -6
- package/layouts/page/Main.sty.js +4 -4
- package/layouts/page/Page.css +2 -2
- package/layouts/page/Page.sty.js +1 -1
- package/layouts/page/Sidebar.css +35 -35
- package/layouts/page/Sidebar.sty.js +8 -8
- package/layouts/page/panel.css +19 -19
- package/layouts/page/panel.sty.js +10 -10
- package/layouts/page-layout/PageLayout.css +10 -10
- package/layouts/page-layout/PageLayout.js +1 -1
- package/layouts/page-layout/PageLayout.sty.js +6 -6
- package/layouts/page-layout/details-layout/DetailsControlBar.css +3 -3
- package/layouts/page-layout/details-layout/DetailsControlBar.sty.js +3 -3
- package/layouts/page-layout/details-layout/DetailsLayout.css +6 -6
- package/layouts/page-layout/details-layout/DetailsLayout.sty.js +5 -5
- package/layouts/page-layout/details-layout/Overlay.css +18 -18
- package/layouts/page-layout/details-layout/Overlay.sty.js +4 -4
- package/layouts/page-layout/sidebar-layout/SidebarLayout.css +37 -37
- package/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js +14 -14
- package/layouts/split-layout/SplitLayout.css +19 -19
- package/layouts/split-layout/SplitLayout.sty.js +7 -7
- package/layouts/surface/Surface.css +39 -39
- package/layouts/surface/Surface.sty.js +2 -2
- package/layouts/surface/variables.sty.js +1 -1
- package/layouts/title-bar/TitleBar.css +5 -5
- package/layouts/title-bar/TitleBar.sty.js +4 -4
- package/navigation/breadcrumbs/Breadcrumbs.css +9 -9
- package/navigation/breadcrumbs/Breadcrumbs.sty.js +5 -5
- package/navigation/menu/Content.js +2 -0
- package/navigation/menu/Group.d.ts +6 -0
- package/navigation/menu/Group.js +34 -14
- package/navigation/menu/Item.d.ts +9 -4
- package/navigation/menu/Item.js +10 -5
- package/navigation/menu/Label.d.ts +3 -0
- package/navigation/menu/Label.js +27 -13
- package/navigation/menu/Menu.css +17 -17
- package/navigation/menu/Menu.js +12 -1
- package/navigation/menu/Menu.sty.js +8 -8
- package/navigation/menu/MobileContent.d.ts +1 -0
- package/navigation/menu/MobileContent.js +4 -1
- package/navigation/menu/MobileMenu.css +14 -14
- package/navigation/menu/MobileMenu.sty.js +8 -8
- package/navigation/menu/MobileSubTrigger.js +1 -0
- package/navigation/menu/contexts/MenuGroupContext.d.ts +12 -0
- package/{charts/core/context/ChartVariantContext.js → navigation/menu/contexts/MenuGroupContext.js} +5 -5
- package/navigation/tabs/RenderTab.css +14 -14
- package/navigation/tabs/RenderTab.sty.js +3 -3
- package/navigation/tabs/TabPanel.css +3 -3
- package/navigation/tabs/TabPanel.sty.js +2 -2
- package/navigation/tabs/Tabs.css +9 -9
- package/navigation/tabs/Tabs.sty.js +5 -5
- package/notifications/notification-settings/NotificationSettings.css +1 -1
- package/notifications/notification-settings/NotificationSettings.sty.js +1 -1
- package/notifications/toast/Toast.css +6 -6
- package/notifications/toast/Toast.sty.js +4 -4
- package/notifications/toast/ToastContainer.css +17 -17
- package/notifications/toast/ToastContainer.sty.js +1 -1
- package/overlays/drawer/Drawer.css +9 -9
- package/overlays/drawer/Drawer.sty.js +5 -5
- package/overlays/hooks/usePress.js +4 -4
- package/overlays/modal/Modal.css +16 -16
- package/overlays/modal/Modal.sty.js +7 -7
- package/overlays/overlay/Overlay.css +1 -1
- package/overlays/overlay/Overlay.sty.js +1 -1
- package/overlays/sheet/Sheet.css +8 -7
- package/overlays/sheet/Sheet.js +5 -4
- package/overlays/sheet/Sheet.sty.js +5 -5
- package/overlays/tooltip/Tooltip.js +1 -1
- package/overlays/tooltip/tooltip.css +18 -18
- package/overlays/tooltip/tooltip.sty.js +3 -3
- package/package.json +8 -6
- package/styles/colorUtils.css +60 -60
- package/styles/colorUtils.sty.js +2 -2
- package/styles/container.css +47 -47
- package/styles/container.sty.js +2 -2
- package/styles/ellipsis.css +1 -1
- package/styles/ellipsis.sty.js +1 -1
- package/styles/field.css +256 -256
- package/styles/field.sty.js +2 -2
- package/styles/screen-reader-only.css +1 -1
- package/styles/screen-reader-only.sty.js +1 -1
- package/styles/sprinkles.css +262 -262
- package/styles/sprinkles.sty.js +1 -1
- package/styles/textStyle.css +8 -8
- package/styles/textStyle.sty.js +1 -1
- package/tables/DataTable/DataTable.css +2 -2
- package/tables/DataTable/DataTable.d.ts +1 -1
- package/tables/DataTable/DataTable.js +25 -23
- package/tables/DataTable/DataTable.sty.js +7 -7
- package/tables/DataTable/components/Alignment.css +6 -6
- package/tables/DataTable/components/Alignment.sty.js +2 -2
- package/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.css +6 -6
- package/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.d.ts +6 -5
- package/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.sty.js +3 -3
- package/tables/DataTable/components/ColumnPinning/DataTablePinningShadowHeaderCells.js +2 -2
- package/tables/DataTable/components/DataTableBody.css +2 -2
- package/tables/DataTable/components/DataTableBody.js +1 -1
- package/tables/DataTable/components/DataTableBody.sty.js +2 -2
- package/tables/DataTable/components/DataTableCell.css +83 -83
- package/tables/DataTable/components/DataTableCell.js +15 -4
- package/tables/DataTable/components/DataTableCell.sty.js +5 -5
- package/tables/DataTable/components/DataTableContent.js +3 -10
- package/tables/DataTable/components/DataTableDefaultCell.css +23 -23
- package/tables/DataTable/components/DataTableDefaultCell.sty.js +1 -1
- package/tables/DataTable/components/DataTableDragScrollLock.d.ts +3 -3
- package/tables/DataTable/components/DataTableEmptyState.css +6 -6
- package/tables/DataTable/components/DataTableEmptyState.sty.js +2 -2
- package/tables/DataTable/components/DataTableHeader.css +2 -2
- package/tables/DataTable/components/DataTableHeader.js +2 -2
- package/tables/DataTable/components/DataTableHeader.sty.js +2 -2
- package/tables/DataTable/components/DataTableHeaderCell.css +64 -64
- package/tables/DataTable/components/DataTableHeaderCell.js +7 -6
- package/tables/DataTable/components/DataTableHeaderCell.sty.js +23 -23
- package/tables/DataTable/components/DataTableRow.css +13 -13
- package/tables/DataTable/components/DataTableRow.d.ts +3 -2
- package/tables/DataTable/components/DataTableRow.js +3 -3
- package/tables/DataTable/components/DataTableRow.sty.js +1 -1
- package/tables/DataTable/components/DataTableScrollShadow.css +10 -10
- package/tables/DataTable/components/DataTableScrollShadow.js +2 -2
- package/tables/DataTable/components/DataTableScrollShadow.sty.js +2 -2
- package/tables/DataTable/components/DataTableVirtualizationContainer.css +21 -21
- package/tables/DataTable/components/DataTableVirtualizationContainer.d.ts +3 -3
- package/tables/DataTable/components/DataTableVirtualizationContainer.js +2 -2
- package/tables/DataTable/components/DataTableVirtualizationContainer.sty.js +1 -1
- package/tables/DataTable/components/SettingsModal/DataTableSettingsModal.css +3 -3
- package/tables/DataTable/components/SettingsModal/DataTableSettingsModal.sty.js +2 -2
- package/tables/DataTable/components/TableActions/DataTableSelectionChip.css +5 -5
- package/tables/DataTable/components/TableActions/DataTableSelectionChip.sty.js +2 -2
- package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.css +7 -7
- package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.d.ts +2 -2
- package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/ColumnOrderSettingsDragAndDrop.sty.js +3 -3
- package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnOrderSettings/column-order-settings-dnd-utils.d.ts +7 -6
- package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnPinningMenu.d.ts +8 -7
- package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnPinningMenu.js +5 -5
- package/tables/DataTable/components/Toolbar/ColumnSettings/ColumnVisibilityToggle.d.ts +6 -5
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableAllColumnsHiddenEmptyState.css +1 -1
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableAllColumnsHiddenEmptyState.sty.js +1 -1
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettings.js +11 -14
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettingsModal.js +5 -5
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.css +19 -19
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.d.ts +4 -4
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.js +14 -20
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js +2 -2
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.css +11 -11
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.d.ts +9 -8
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.js +4 -1
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js +8 -8
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.css +2 -2
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.js +2 -2
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsSectionHeader.sty.js +2 -2
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableNoFilterResultsEmptyState.css +1 -1
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableNoFilterResultsEmptyState.sty.js +1 -1
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.css +4 -4
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.d.ts +5 -0
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.js +2 -1
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.sty.js +3 -3
- package/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-types.d.ts +2 -2
- package/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.d.ts +10 -9
- package/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.js +1 -1
- package/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.css +3 -3
- package/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.sty.js +2 -2
- package/tables/DataTable/contexts/DataTableContext.d.ts +6 -6
- package/tables/DataTable/contexts/DataTableContext.js +9 -6
- package/tables/DataTable/features/CellFormatter/CellFormatter.d.ts +4 -3
- package/tables/DataTable/features/CellFormatter/CellFormatter.js +26 -14
- package/tables/DataTable/features/ColumnFontStyle/ColumnFontStyle.d.ts +6 -6
- package/tables/DataTable/features/ColumnFontStyle/ColumnFontStyle.js +28 -18
- package/tables/DataTable/features/ColumnFontStyle/column-font-style-types.d.ts +0 -9
- package/tables/DataTable/features/ColumnOrder/ColumnOrder.css +8 -8
- package/tables/DataTable/features/ColumnOrder/ColumnOrder.d.ts +13 -13
- package/tables/DataTable/features/ColumnOrder/ColumnOrder.js +51 -45
- package/tables/DataTable/features/ColumnOrder/ColumnOrder.sty.js +4 -4
- package/tables/DataTable/features/ColumnOrder/ColumnOrderDragAndDropContext.d.ts +1 -2
- package/tables/DataTable/features/ColumnOrder/column-order-dnd-utils.d.ts +5 -5
- package/tables/DataTable/features/ColumnOrder/column-order-dnd-utils.js +6 -6
- package/tables/DataTable/features/ColumnOrder/column-order-types.d.ts +5 -16
- package/tables/DataTable/features/ColumnOrder/column-order-utils.d.ts +7 -6
- package/tables/DataTable/features/ColumnOrder/useColumnOrder.d.ts +2 -3
- package/tables/DataTable/features/ColumnPinning/ColumnPinning.d.ts +22 -19
- package/tables/DataTable/features/ColumnPinning/ColumnPinning.js +181 -167
- package/tables/DataTable/features/ColumnPinning/column-pinning-types.d.ts +4 -15
- package/tables/DataTable/features/ColumnPinning/column-pinning-utils.d.ts +12 -2
- package/tables/DataTable/features/ColumnPinning/column-pinning-utils.js +24 -14
- package/tables/DataTable/features/ColumnPinning/useColumnPinning.d.ts +3 -3
- package/tables/DataTable/features/ColumnPinning/useColumnPinning.js +23 -17
- package/tables/DataTable/features/ColumnSizing/ColumnSizing.css +3 -3
- package/tables/DataTable/features/ColumnSizing/ColumnSizing.d.ts +6 -7
- package/tables/DataTable/features/ColumnSizing/ColumnSizing.js +40 -40
- package/tables/DataTable/features/ColumnSizing/ColumnSizing.sty.js +1 -1
- package/tables/DataTable/features/ColumnSizing/useColumnSizing.d.ts +2 -3
- package/tables/DataTable/features/ColumnTypes/ColumnTypes.css +1 -1
- package/tables/DataTable/features/ColumnTypes/ColumnTypes.d.ts +5 -4
- package/tables/DataTable/features/ColumnTypes/ColumnTypes.sty.js +1 -1
- package/tables/DataTable/features/ColumnVisibility/ColumnVisibility.d.ts +16 -16
- package/tables/DataTable/features/ColumnVisibility/ColumnVisibility.js +97 -92
- package/tables/DataTable/features/ColumnVisibility/column-visibility-types.d.ts +10 -20
- package/tables/DataTable/features/ColumnVisibility/useColumnVisibility.d.ts +2 -3
- package/tables/DataTable/features/Config.d.ts +2 -3
- package/tables/DataTable/features/Config.js +18 -13
- package/tables/DataTable/features/Download/Download.d.ts +12 -11
- package/tables/DataTable/features/Download/Download.js +53 -52
- package/tables/DataTable/features/Download/download-types.d.ts +0 -10
- package/tables/DataTable/features/Download/useDownload.d.ts +4 -4
- package/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.css +1 -1
- package/tables/DataTable/features/GanttChart/DataTableGanttAnnotationsIndicators.sty.js +1 -1
- package/tables/DataTable/features/GanttChart/DataTableGanttChartCell.css +3 -3
- package/tables/DataTable/features/GanttChart/DataTableGanttChartCell.sty.js +2 -2
- package/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.css +1 -1
- package/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.sty.js +1 -1
- package/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.css +4 -4
- package/tables/DataTable/features/GanttChart/DataTableGanttChartHeader.sty.js +1 -1
- package/tables/DataTable/features/GanttChart/GanttChart.d.ts +6 -6
- package/tables/DataTable/features/GanttChart/GanttChart.js +10 -7
- package/tables/DataTable/features/GanttChart/useGanttChart.d.ts +2 -3
- package/tables/DataTable/features/Layout/Layout.d.ts +17 -17
- package/tables/DataTable/features/Layout/Layout.js +114 -101
- package/tables/DataTable/features/Layout/layout-types.d.ts +0 -11
- package/tables/DataTable/features/Layout/layout-utils.d.ts +6 -5
- package/tables/DataTable/features/Layout/layout-utils.js +5 -3
- package/tables/DataTable/features/Layout/useLayout.d.ts +4 -4
- package/tables/DataTable/features/LineWrap/LineWrap.d.ts +9 -8
- package/tables/DataTable/features/LineWrap/LineWrap.js +30 -20
- package/tables/DataTable/features/LineWrap/useLineWrap.d.ts +3 -3
- package/tables/DataTable/features/LoadingState/LoadingState.css +3 -3
- package/tables/DataTable/features/LoadingState/LoadingState.d.ts +2 -3
- package/tables/DataTable/features/LoadingState/LoadingState.sty.js +3 -3
- package/tables/DataTable/features/LoadingState/useLoadingState.d.ts +2 -3
- package/tables/DataTable/features/MeterBarChart/MeterBarChart.css +5 -5
- package/tables/DataTable/features/MeterBarChart/MeterBarChart.d.ts +5 -5
- package/tables/DataTable/features/MeterBarChart/MeterBarChart.js +1 -1
- package/tables/DataTable/features/MeterBarChart/MeterBarChart.sty.js +2 -2
- package/tables/DataTable/features/Pagination/Pagination.d.ts +12 -11
- package/tables/DataTable/features/Pagination/Pagination.js +28 -25
- package/tables/DataTable/features/Pagination/pagination-row-model.d.ts +3 -2
- package/tables/DataTable/features/Pagination/pagination-row-model.js +1 -2
- package/tables/DataTable/features/Pagination/pagination-types.d.ts +2 -2
- package/tables/DataTable/features/Pagination/usePagination.d.ts +2 -3
- package/tables/DataTable/features/RowDetails/RowDetails.css +13 -13
- package/tables/DataTable/features/RowDetails/RowDetails.d.ts +15 -14
- package/tables/DataTable/features/RowDetails/RowDetails.js +35 -30
- package/tables/DataTable/features/RowDetails/RowDetails.sty.js +3 -3
- package/tables/DataTable/features/RowDetails/components/RowDetailsElement.d.ts +4 -3
- package/tables/DataTable/features/RowDetails/details-row-model.d.ts +3 -2
- package/tables/DataTable/features/RowDetails/details-row-model.js +17 -14
- package/tables/DataTable/features/RowDetails/row-details-types.d.ts +1 -11
- package/tables/DataTable/features/RowIdentification/RowIdentification.d.ts +2 -2
- package/tables/DataTable/features/RowInteractivity/RowInteractivity.css +17 -17
- package/tables/DataTable/features/RowInteractivity/RowInteractivity.d.ts +14 -13
- package/tables/DataTable/features/RowInteractivity/RowInteractivity.js +45 -40
- package/tables/DataTable/features/RowInteractivity/RowInteractivity.sty.js +1 -1
- package/tables/DataTable/features/RowInteractivity/hooks/useRowInteractivityProps.d.ts +3 -2
- package/tables/DataTable/features/RowInteractivity/hooks/useRowInteractivityProps.js +1 -1
- package/tables/DataTable/features/RowInteractivity/row-interactivity-types.d.ts +0 -10
- package/tables/DataTable/features/RowInteractivity/useRowInteractivity.d.ts +2 -3
- package/tables/DataTable/features/RowInteractivity/useRowInteractivity.js +2 -2
- package/tables/DataTable/features/RowOrder/RowOrder.css +8 -8
- package/tables/DataTable/features/RowOrder/RowOrder.d.ts +10 -10
- package/tables/DataTable/features/RowOrder/RowOrder.js +31 -26
- package/tables/DataTable/features/RowOrder/RowOrder.sty.js +3 -3
- package/tables/DataTable/features/RowOrder/components/RowOrderingDragAndDropContext.d.ts +4 -3
- package/tables/DataTable/features/RowOrder/components/RowOrderingDragAndDropContext.js +1 -1
- package/tables/DataTable/features/RowOrder/row-order-column-utils.d.ts +3 -2
- package/tables/DataTable/features/RowOrder/row-order-model.d.ts +3 -2
- package/tables/DataTable/features/RowOrder/row-order-model.js +8 -6
- package/tables/DataTable/features/RowOrder/row-order-utils.d.ts +5 -4
- package/tables/DataTable/features/RowOrder/useRowOrder.d.ts +2 -3
- package/tables/DataTable/features/RowSelection/RowSelection.d.ts +26 -26
- package/tables/DataTable/features/RowSelection/RowSelection.js +75 -70
- package/tables/DataTable/features/RowSelection/RowSelectionCells.d.ts +6 -5
- package/tables/DataTable/features/RowSelection/RowSelectionCells.js +1 -1
- package/tables/DataTable/features/RowSelection/row-selection-types.d.ts +0 -9
- package/tables/DataTable/features/RowSelection/useRowSelection.d.ts +2 -3
- package/tables/DataTable/features/RowSelection/useRowSelection.js +12 -7
- package/tables/DataTable/features/Sorting/Sorting.css +34 -34
- package/tables/DataTable/features/Sorting/Sorting.d.ts +15 -14
- package/tables/DataTable/features/Sorting/Sorting.js +48 -45
- package/tables/DataTable/features/Sorting/Sorting.sty.js +3 -3
- package/tables/DataTable/features/Sorting/sorted-row-model.d.ts +3 -2
- package/tables/DataTable/features/Sorting/sorted-row-model.js +1 -2
- package/tables/DataTable/features/Sorting/useSorting.d.ts +2 -3
- package/tables/DataTable/features/SubRows/SubRows.css +19 -19
- package/tables/DataTable/features/SubRows/SubRows.d.ts +18 -17
- package/tables/DataTable/features/SubRows/SubRows.js +92 -84
- package/tables/DataTable/features/SubRows/SubRows.sty.js +5 -5
- package/tables/DataTable/features/SubRows/components/SubRowCellContext.d.ts +3 -2
- package/tables/DataTable/features/SubRows/sub-rows-types.d.ts +0 -9
- package/tables/DataTable/features/SubRows/sub-rows-utils.d.ts +3 -2
- package/tables/DataTable/features/SubRows/subrows-row-model.d.ts +4 -3
- package/tables/DataTable/features/SubRows/subrows-row-model.js +1 -2
- package/tables/DataTable/features/SubRows/useSubRows.d.ts +2 -3
- package/tables/DataTable/features/SubRows/useSubRows.js +1 -1
- package/tables/DataTable/features/Thresholds/Thresholds.css +2 -2
- package/tables/DataTable/features/Thresholds/Thresholds.d.ts +9 -8
- package/tables/DataTable/features/Thresholds/Thresholds.js +34 -27
- package/tables/DataTable/features/Thresholds/Thresholds.sty.js +3 -3
- package/tables/DataTable/features/Thresholds/useThresholds.d.ts +2 -3
- package/tables/DataTable/features/UserActions/RowActions.css +4 -4
- package/tables/DataTable/features/UserActions/RowActions.sty.js +1 -1
- package/tables/DataTable/features/UserActions/UserActions.css +20 -20
- package/tables/DataTable/features/UserActions/UserActions.d.ts +16 -16
- package/tables/DataTable/features/UserActions/UserActions.js +82 -69
- package/tables/DataTable/features/UserActions/UserActions.sty.js +2 -2
- package/tables/DataTable/features/UserActions/UserActionsMenu.js +5 -5
- package/tables/DataTable/features/UserActions/useCloseMenuOnScroll.js +2 -2
- package/tables/DataTable/features/UserActions/useUserActions.d.ts +3 -3
- package/tables/DataTable/features/UserActions/user-actions-types.d.ts +0 -12
- package/tables/DataTable/features/VirtualScrolling/VirtualScrolling.d.ts +21 -21
- package/tables/DataTable/features/VirtualScrolling/VirtualScrolling.js +82 -77
- package/tables/DataTable/features/VisualVariants/VisualVariants.d.ts +2 -3
- package/tables/DataTable/features/VisualVariants/VisualVariants.js +19 -16
- package/tables/DataTable/features/VisualVariants/useVisualVariants.d.ts +2 -3
- package/tables/DataTable/features/createCoreRowModel.d.ts +3 -2
- package/tables/DataTable/features/createCoreRowModel.js +1 -2
- package/tables/DataTable/features/features.d.ts +105 -23
- package/tables/DataTable/features/features.js +9 -1
- package/tables/DataTable/features/types/features.types.d.ts +28 -45
- package/tables/DataTable/features/types/table.types.d.ts +47 -0
- package/tables/DataTable/features/types/table.types.js +36 -0
- package/tables/DataTable/hooks/useBuiltInColumns.d.ts +4 -2
- package/tables/DataTable/hooks/useColumnRemeasure.d.ts +3 -2
- package/tables/DataTable/hooks/useColumnRemeasure.js +1 -1
- package/tables/DataTable/hooks/useHeaderCellInteractions.d.ts +1 -2
- package/tables/DataTable/hooks/useHeaderCellInteractions.js +5 -3
- package/tables/DataTable/hooks/useHeaderDragAndDrop.d.ts +5 -4
- package/tables/DataTable/hooks/useTable/datatable-typeguards.d.ts +4 -3
- package/tables/DataTable/hooks/useTable/datatable-typeguards.js +4 -4
- package/tables/DataTable/messages.js +2 -2
- package/tables/SimpleTable/SimpleTable.css +27 -27
- package/tables/SimpleTable/SimpleTable.d.ts +1 -1
- package/tables/SimpleTable/SimpleTable.js +9 -6
- package/tables/SimpleTable/SimpleTable.sty.js +1 -1
- package/tables/hooks/useFilteredData.js +1 -4
- package/tables/hooks/useLockedRowOrder.js +1 -1
- package/tables/utils/get-column-label.d.ts +3 -2
- package/tables/utils/is-target-interactive.d.ts +8 -4
- package/tables/utils/is-target-interactive.js +4 -2
- package/typography/block-quote/Blockquote.css +2 -2
- package/typography/block-quote/Blockquote.sty.js +1 -1
- package/typography/code/Code.css +9 -2
- package/typography/code/Code.sty.js +1 -1
- package/typography/emphasis/Emphasis.css +1 -1
- package/typography/emphasis/Emphasis.sty.js +1 -1
- package/typography/external-link/ExternalLink.css +6 -6
- package/typography/external-link/ExternalLink.sty.js +1 -1
- package/typography/heading/Heading.css +7 -7
- package/typography/heading/Heading.sty.js +1 -1
- package/typography/highlight/Highlight.css +2 -2
- package/typography/highlight/Highlight.sty.js +1 -1
- package/typography/link/Link.css +4 -4
- package/typography/link/Link.sty.js +1 -1
- package/typography/list/List.css +4 -4
- package/typography/list/List.sty.js +2 -2
- package/typography/paragraph/Paragraph.css +3 -3
- package/typography/paragraph/Paragraph.sty.js +1 -1
- package/typography/strikethrough/Strikethrough.css +1 -1
- package/typography/strikethrough/Strikethrough.sty.js +1 -1
- package/typography/strong/Strong.css +1 -1
- package/typography/strong/Strong.sty.js +1 -1
- package/typography/text/Text.css +3 -3
- package/typography/text/Text.sty.js +1 -1
- package/typography/text-ellipsis/TextEllipsis.css +6 -6
- package/typography/text-ellipsis/TextEllipsis.sty.js +2 -2
- package/charts/core/components/series-action/ChartActionsMenuAsync.d.ts +0 -15
- package/charts/core/components/series-action/ChartActionsMenuAsync.js +0 -94
- package/charts/core/context/ChartVariantContext.d.ts +0 -11
- package/charts/sankey-chart/context/SankeyHoverStore.context.d.ts +0 -4
- package/charts/sankey-chart/types/sankey-hover.d.ts +0 -28
- package/esm/charts/core/components/series-action/ChartActionsMenuAsync.js +0 -81
- package/esm/charts/core/components/series-action/ChartActionsMenuAsync.js.map +0 -7
- package/esm/charts/core/context/ChartVariantContext.js +0 -6
- package/esm/charts/core/context/ChartVariantContext.js.map +0 -7
- package/esm/charts/sankey-chart/context/SankeyHoverStore.context.js +0 -11
- package/esm/charts/sankey-chart/context/SankeyHoverStore.context.js.map +0 -7
- package/esm/charts/sankey-chart/providers/SankeyHoverStoreProvider.js +0 -15
- package/esm/charts/sankey-chart/providers/SankeyHoverStoreProvider.js.map +0 -7
- package/esm/charts/sankey-chart/types/sankey-hover.js +0 -1
- /package/esm/charts/sankey-chart/types/{sankey-hover.js.map → sankey-shape.js.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/forms/date-time-range-picker/DateTimeInput.tsx"],
|
|
4
|
-
"sourcesContent": ["import clsx from 'clsx';\nimport {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n type DragEvent,\n type ClipboardEvent,\n type CSSProperties,\n type FocusEvent as ReactFocusEvent,\n} from 'react';\nimport { useIntl } from 'react-intl';\n\nimport { dateTimeInputRoot, expression } from './DateTimeInput.sty.js';\nimport * as styles from './DateTimeInput.sty.js';\nimport { useDateTimeInput } from './hooks/useDateTimeInput.js';\nimport type { DateTimeInputProps, DateTimeInputRef } from './types.js';\nimport * as visuallyHiddenStyles from '../../core/components/visually-hidden/VisuallyHidden.sty.js';\nimport { VisuallyHidden } from '../../core/components/visually-hidden/VisuallyHidden.js';\nimport { useAriaLabelingProps } from '../../core/hooks/useAriaLabelingProps.js';\nimport { useDateTimePickerStore } from '../../core/time/timeframeStore/useTimeframeStore.js';\nimport { validate } from '../../core/time/validation.js';\nimport { mergeProps as _mergeProps } from '../../core/utils/merge-props.js';\nimport { Flex } from '../../layouts/flex/Flex.js';\nimport * as dataTimePickerStyles from '../date-time-picker/DateTimePicker.sty.js';\nimport { useFormFieldMessagesContext } from '../forms-core/hooks/useFormFieldMessagesContext.js';\nimport { useFormFieldValidation } from '../forms-core/hooks/useFormFieldValidation.js';\nimport { FormFieldMessagesAction } from '../forms-core/state/formfield-messages-state-reducer.js';\nimport { SpinButtonGroup } from '../spin-buttons/spin-button-group/SpinButtonGroup.js';\nimport { getValidationState } from '../validation/validation-builders.js';\n\nfunction preventDefault(e: DragEvent | ClipboardEvent) {\n e.preventDefault();\n}\n\n/** Date & Time Input used in DateTimeRangePicker and DateTimePicker components\n * @internal\n */\nexport const DateTimeInput = forwardRef<DateTimeInputRef, DateTimeInputProps>(\n (props, forwardedRef) => {\n const rootRef = useRef<HTMLSpanElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n const expressionInputRef = useRef<HTMLSpanElement>(null);\n\n const min = useDateTimePickerStore((state) => state.min);\n const max = useDateTimePickerStore((state) => state.max);\n const precision = useDateTimePickerStore((state) => state.precision);\n const formatString = useDateTimePickerStore((state) => state.formatString);\n\n const intl = useIntl();\n const {\n ariaProps: ariaFormProps,\n onChange: validationOnChange,\n onBlur,\n onInvalid,\n } = useFormFieldValidation(inputRef);\n\n const {\n disabled,\n readOnly,\n placeholder: propPlaceholder,\n className: consumerClassName,\n style: consumerStyle,\n name,\n 'data-testid': dataTestId,\n 'aria-disabled': ariaDisabledProp,\n controlId,\n form,\n required,\n type = 'datetime',\n inputProps: formControlInputProps,\n validationValueMode,\n onLeadingEdge,\n onTrailingEdge,\n onTrailingOverflow,\n }: DateTimeInputProps = props;\n\n const dateTimePlaceholder = intl.formatMessage({\n defaultMessage: 'Add date and time',\n id: 'X9SZ3eLw4rz/ODZQ',\n description: 'Default placeholder for the date time input.',\n });\n const datePlaceholder = intl.formatMessage({\n defaultMessage: 'Add date',\n id: 'XC7nO0JIPg0R0kBw',\n description: 'Default placeholder for the date input.',\n });\n const timePlaceholder = intl.formatMessage({\n defaultMessage: 'Add time',\n id: 'MlwM+/jonCtjJ+L7',\n description: 'Default placeholder for the time input.',\n });\n\n let placeholder = propPlaceholder;\n if (!propPlaceholder) {\n switch (type) {\n case 'datetime':\n placeholder = dateTimePlaceholder;\n break;\n case 'date':\n placeholder = datePlaceholder;\n break;\n case 'time':\n placeholder = timePlaceholder;\n break;\n }\n }\n\n const ariaLabelingProps = useAriaLabelingProps(props);\n\n const {\n expressionInputHandler,\n expressionOnFocusHandler,\n expressionOnBlurHandler,\n expressionOnKeyDownHandler,\n onPaste,\n pasteText,\n onPasteUndoKeyDown,\n clearPasteUndo,\n value,\n valueType,\n spinButtons,\n spinButtonHandlers,\n inputValue,\n focus,\n switchToExpressionMode,\n setInputValue,\n } = useDateTimeInput(props, expressionInputRef);\n\n const isExpressionInput = valueType === 'expression';\n\n const { dispatch: formMessageDispatch } = useFormFieldMessagesContext();\n\n useImperativeHandle(\n forwardedRef,\n (): DateTimeInputRef => ({\n element: rootRef.current,\n inputRef: inputRef.current,\n expressionInputRef: expressionInputRef.current,\n spinButtonHandlers,\n focus,\n setExpressionValue: switchToExpressionMode,\n clearPasteUndo,\n pasteText,\n focusLast() {\n if (valueType === 'expression') {\n expressionInputRef.current?.focus();\n } else {\n const handlers = Array.from(spinButtonHandlers.values()).filter(\n (h) => h !== null,\n );\n const lastHandler = handlers[handlers.length - 1];\n lastHandler.element.current?.focus();\n lastHandler.selectAll();\n }\n },\n validate() {\n const textContent = expressionInputRef.current?.textContent;\n // Reset stale inputValue when expression span is empty so the hidden\n // input correctly reports valueMissing for required-field validation.\n if (valueType === 'expression' && !textContent) {\n setInputValue('');\n }\n validate(value ?? null, min, max, {\n formMessageDispatch,\n precision,\n showError: true,\n checkOrder: true,\n ref: rootRef,\n expectedFormat: formatString,\n valueMode: validationValueMode,\n // In single mode, required validation is handled by core time validation\n // (emits native valueMissing). Keeping native `required` here would add a\n // second browser `valueMissing` message with identical text.\n required: validationValueMode === 'single' ? false : required,\n });\n formMessageDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n },\n validateAsync: async () => {\n const textContent = expressionInputRef.current?.textContent;\n if (valueType === 'expression' && !textContent) {\n setInputValue('');\n }\n validate(value ?? null, min, max, {\n formMessageDispatch,\n precision,\n showError: true,\n checkOrder: true,\n ref: rootRef,\n expectedFormat: formatString,\n valueMode: validationValueMode,\n required: validationValueMode === 'single' ? false : required,\n });\n formMessageDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n return getValidationState(inputRef.current, 'manual');\n },\n }),\n [\n spinButtonHandlers,\n focus,\n switchToExpressionMode,\n setInputValue,\n value,\n valueType,\n min,\n max,\n formMessageDispatch,\n precision,\n formatString,\n validationValueMode,\n required,\n ],\n );\n\n const expressionLabel = intl.formatMessage(\n {\n defaultMessage: '{ariaLabelPrefix} expression',\n id: 'M6eNgatb2wf4fQ3I',\n description: 'Textbox to enter a dql timeframe expression.',\n },\n {\n ariaLabelPrefix: ariaLabelingProps['aria-label'],\n },\n );\n\n useEffect(() => {\n validationOnChange(); // needs to be in an effect here because the value update should happen before the validation, which validates the input ref value\n // validationOnChange doesn't change and can be excluded\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [inputValue]);\n\n return (\n <Flex\n ref={rootRef}\n as=\"span\"\n className={clsx(\n dateTimeInputRoot,\n styles.dateTimeInput,\n consumerClassName,\n )}\n style={consumerStyle}\n data-testid={dataTestId}\n onPaste={onPaste}\n onKeyDown={onPasteUndoKeyDown}\n gap={0}\n data-valuetype={valueType}\n >\n <VisuallyHidden>\n <input\n id={controlId}\n ref={inputRef}\n name={name}\n value={inputValue ?? ''}\n onChange={() => {\n /** noop */\n }}\n onFocus={focus}\n onBlur={onBlur}\n onInvalid={onInvalid}\n disabled={disabled}\n tabIndex={-1}\n required={required}\n readOnly={readOnly}\n aria-disabled={ariaDisabledProp}\n {..._mergeProps(\n formControlInputProps ?? ariaFormProps,\n ariaLabelingProps,\n )}\n form={form}\n />\n </VisuallyHidden>\n\n <span\n className={clsx(expression, {\n [visuallyHiddenStyles.visuallyHidden]: !isExpressionInput,\n })}\n role=\"textbox\"\n spellCheck={false}\n tabIndex={disabled || !isExpressionInput ? -1 : 0}\n style={\n {\n '--data-placeholder': `\"${placeholder}\"`,\n } as CSSProperties\n }\n data-valuetype=\"expression\"\n ref={expressionInputRef}\n contentEditable={!disabled && !readOnly ? true : undefined}\n onInput={expressionInputHandler}\n onFocus={(e: ReactFocusEvent<HTMLSpanElement>) => {\n if (e.target.hasAttribute('contenteditable') === false) {\n return;\n }\n expressionOnFocusHandler(e);\n }}\n onBlur={(e: ReactFocusEvent<HTMLSpanElement>) => {\n if (e.target.hasAttribute('contenteditable') === false) {\n return;\n }\n expressionOnBlurHandler(e);\n }}\n onKeyDown={expressionOnKeyDownHandler}\n onPaste={preventDefault}\n onDragOver={preventDefault}\n onDrop={preventDefault}\n aria-label={expressionLabel}\n />\n <SpinButtonGroup\n className={clsx(dataTimePickerStyles.spinButtonGroup, {\n [visuallyHiddenStyles.visuallyHidden]: isExpressionInput,\n })}\n valueOverflow\n onLeadingEdge={onLeadingEdge}\n onTrailingEdge={onTrailingEdge}\n onTrailingOverflow={onTrailingOverflow}\n >\n {spinButtons}\n </SpinButtonGroup>\n </Flex>\n );\n },\n);\n"],
|
|
4
|
+
"sourcesContent": ["import clsx from 'clsx';\nimport {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n type DragEvent,\n type ClipboardEvent,\n type CSSProperties,\n type FocusEvent as ReactFocusEvent,\n} from 'react';\nimport { useIntl } from 'react-intl';\n\nimport { dateTimeInputRoot, expression } from './DateTimeInput.sty.js';\nimport * as styles from './DateTimeInput.sty.js';\nimport { useDateTimeInput } from './hooks/useDateTimeInput.js';\nimport type { DateTimeInputProps, DateTimeInputRef } from './types.js';\nimport * as visuallyHiddenStyles from '../../core/components/visually-hidden/VisuallyHidden.sty.js';\nimport { VisuallyHidden } from '../../core/components/visually-hidden/VisuallyHidden.js';\nimport { useAriaLabelingProps } from '../../core/hooks/useAriaLabelingProps.js';\nimport { useDateTimePickerStore } from '../../core/time/timeframeStore/useTimeframeStore.js';\nimport { validate } from '../../core/time/validation.js';\nimport { mergeProps as _mergeProps } from '../../core/utils/merge-props.js';\nimport { Flex } from '../../layouts/flex/Flex.js';\nimport * as dataTimePickerStyles from '../date-time-picker/DateTimePicker.sty.js';\nimport { useFormFieldMessagesContext } from '../forms-core/hooks/useFormFieldMessagesContext.js';\nimport { useFormFieldValidation } from '../forms-core/hooks/useFormFieldValidation.js';\nimport { FormFieldMessagesAction } from '../forms-core/state/formfield-messages-state-reducer.js';\nimport { SpinButtonGroup } from '../spin-buttons/spin-button-group/SpinButtonGroup.js';\nimport { getValidationState } from '../validation/validation-builders.js';\n\nfunction preventDefault(e: DragEvent | ClipboardEvent) {\n e.preventDefault();\n}\n\n/** Date & Time Input used in DateTimeRangePicker and DateTimePicker components\n * @internal\n */\nexport const DateTimeInput = forwardRef<DateTimeInputRef, DateTimeInputProps>(\n (props, forwardedRef) => {\n const rootRef = useRef<HTMLSpanElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n const expressionInputRef = useRef<HTMLSpanElement>(null);\n\n const min = useDateTimePickerStore((state) => state.min);\n const max = useDateTimePickerStore((state) => state.max);\n const precision = useDateTimePickerStore((state) => state.precision);\n const formatString = useDateTimePickerStore((state) => state.formatString);\n\n const intl = useIntl();\n const {\n ariaProps: ariaFormProps,\n onChange: validationOnChange,\n onBlur,\n onInvalid,\n } = useFormFieldValidation(inputRef);\n\n const {\n disabled,\n readOnly,\n placeholder: propPlaceholder,\n className: consumerClassName,\n style: consumerStyle,\n name,\n 'data-testid': dataTestId,\n 'aria-disabled': ariaDisabledProp,\n controlId,\n form,\n required,\n type = 'datetime',\n inputProps: formControlInputProps,\n validationValueMode,\n onLeadingEdge,\n onTrailingEdge,\n onTrailingOverflow,\n }: DateTimeInputProps = props;\n\n const dateTimePlaceholder = intl.formatMessage({\n defaultMessage: 'Add date and time',\n id: 'X9SZ3eLw4rz/ODZQ',\n description: 'Default placeholder for the date time input.',\n });\n const datePlaceholder = intl.formatMessage({\n defaultMessage: 'Add date',\n id: 'XC7nO0JIPg0R0kBw',\n description: 'Default placeholder for the date input.',\n });\n const timePlaceholder = intl.formatMessage({\n defaultMessage: 'Add time',\n id: 'MlwM+/jonCtjJ+L7',\n description: 'Default placeholder for the time input.',\n });\n\n let placeholder = propPlaceholder;\n if (!propPlaceholder) {\n switch (type) {\n case 'datetime':\n placeholder = dateTimePlaceholder;\n break;\n case 'date':\n placeholder = datePlaceholder;\n break;\n case 'time':\n placeholder = timePlaceholder;\n break;\n }\n }\n\n const ariaLabelingProps = useAriaLabelingProps(props);\n\n const {\n expressionInputHandler,\n expressionOnFocusHandler,\n expressionOnBlurHandler,\n expressionOnKeyDownHandler,\n onPaste,\n pasteText,\n onPasteUndoKeyDown,\n clearPasteUndo,\n value,\n valueType,\n spinButtons,\n spinButtonHandlers,\n inputValue,\n focus,\n switchToExpressionMode,\n setInputValue,\n } = useDateTimeInput(props, expressionInputRef);\n\n const isExpressionInput = valueType === 'expression';\n\n const { dispatch: formMessageDispatch } = useFormFieldMessagesContext();\n\n useImperativeHandle(\n forwardedRef,\n (): DateTimeInputRef => ({\n element: rootRef.current,\n inputRef: inputRef.current,\n expressionInputRef: expressionInputRef.current,\n spinButtonHandlers,\n focus,\n setExpressionValue: switchToExpressionMode,\n clearPasteUndo,\n pasteText,\n focusLast() {\n if (valueType === 'expression') {\n expressionInputRef.current?.focus();\n } else {\n const handlers = Array.from(spinButtonHandlers.values()).filter(\n (h) => h !== null,\n );\n const lastHandler = handlers[handlers.length - 1];\n lastHandler.element.current?.focus();\n lastHandler.selectAll();\n }\n },\n validate() {\n const textContent = expressionInputRef.current?.textContent;\n // Reset stale inputValue when expression span is empty so the hidden\n // input correctly reports valueMissing for required-field validation.\n if (valueType === 'expression' && !textContent) {\n setInputValue('');\n }\n validate(value ?? null, min, max, {\n formMessageDispatch,\n precision,\n showError: true,\n checkOrder: true,\n ref: rootRef,\n expectedFormat: formatString,\n valueMode: validationValueMode,\n // In single mode, required validation is handled by core time validation\n // (emits native valueMissing). Keeping native `required` here would add a\n // second browser `valueMissing` message with identical text.\n required: validationValueMode === 'single' ? false : required,\n });\n formMessageDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n },\n validateAsync: async () => {\n const textContent = expressionInputRef.current?.textContent;\n if (valueType === 'expression' && !textContent) {\n setInputValue('');\n }\n validate(value ?? null, min, max, {\n formMessageDispatch,\n precision,\n showError: true,\n checkOrder: true,\n ref: rootRef,\n expectedFormat: formatString,\n valueMode: validationValueMode,\n required: validationValueMode === 'single' ? false : required,\n });\n formMessageDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n return getValidationState(inputRef.current, 'manual');\n },\n }),\n [\n spinButtonHandlers,\n focus,\n switchToExpressionMode,\n setInputValue,\n value,\n valueType,\n min,\n max,\n formMessageDispatch,\n precision,\n formatString,\n validationValueMode,\n required,\n ],\n );\n\n const expressionLabel = intl.formatMessage(\n {\n defaultMessage: '{ariaLabelPrefix} expression',\n id: 'M6eNgatb2wf4fQ3I',\n description: 'Textbox to enter a dql timeframe expression.',\n },\n {\n ariaLabelPrefix: ariaLabelingProps['aria-label'],\n },\n );\n\n useEffect(() => {\n validationOnChange(); // needs to be in an effect here because the value update should happen before the validation, which validates the input ref value\n // validationOnChange doesn't change and can be excluded\n // oxlint-disable-next-line react-hooks/exhaustive-deps\n }, [inputValue]);\n\n return (\n <Flex\n ref={rootRef}\n as=\"span\"\n className={clsx(\n dateTimeInputRoot,\n styles.dateTimeInput,\n consumerClassName,\n )}\n style={consumerStyle}\n data-testid={dataTestId}\n onPaste={onPaste}\n onKeyDown={onPasteUndoKeyDown}\n gap={0}\n data-valuetype={valueType}\n >\n <VisuallyHidden>\n <input\n id={controlId}\n ref={inputRef}\n name={name}\n value={inputValue ?? ''}\n onChange={() => {\n /** noop */\n }}\n onFocus={focus}\n onBlur={onBlur}\n onInvalid={onInvalid}\n disabled={disabled}\n tabIndex={-1}\n required={required}\n readOnly={readOnly}\n aria-disabled={ariaDisabledProp}\n {..._mergeProps(\n formControlInputProps ?? ariaFormProps,\n ariaLabelingProps,\n )}\n form={form}\n />\n </VisuallyHidden>\n\n <span\n className={clsx(expression, {\n [visuallyHiddenStyles.visuallyHidden]: !isExpressionInput,\n })}\n role=\"textbox\"\n spellCheck={false}\n tabIndex={disabled || !isExpressionInput ? -1 : 0}\n style={\n {\n '--data-placeholder': `\"${placeholder}\"`,\n } as CSSProperties\n }\n data-valuetype=\"expression\"\n ref={expressionInputRef}\n contentEditable={!disabled && !readOnly ? true : undefined}\n onInput={expressionInputHandler}\n onFocus={(e: ReactFocusEvent<HTMLSpanElement>) => {\n if (e.target.hasAttribute('contenteditable') === false) {\n return;\n }\n expressionOnFocusHandler(e);\n }}\n onBlur={(e: ReactFocusEvent<HTMLSpanElement>) => {\n if (e.target.hasAttribute('contenteditable') === false) {\n return;\n }\n expressionOnBlurHandler(e);\n }}\n onKeyDown={expressionOnKeyDownHandler}\n onPaste={preventDefault}\n onDragOver={preventDefault}\n onDrop={preventDefault}\n aria-label={expressionLabel}\n />\n <SpinButtonGroup\n className={clsx(dataTimePickerStyles.spinButtonGroup, {\n [visuallyHiddenStyles.visuallyHidden]: isExpressionInput,\n })}\n valueOverflow\n onLeadingEdge={onLeadingEdge}\n onTrailingEdge={onTrailingEdge}\n onTrailingOverflow={onTrailingOverflow}\n >\n {spinButtons}\n </SpinButtonGroup>\n </Flex>\n );\n },\n);\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -5,9 +5,9 @@ import "../spin-buttons/SpinButton.css";
|
|
|
5
5
|
import "../date-time-picker/DateTimePicker.css";
|
|
6
6
|
import "./DateTimeRangePicker.css";
|
|
7
7
|
import "./DateTimeInput.css";
|
|
8
|
-
var dateTimeInput = "_5u9o251-3-
|
|
9
|
-
var dateTimeInputRoot = "_5u9o250-3-
|
|
10
|
-
var expression = "_5u9o252-3-
|
|
8
|
+
var dateTimeInput = "_5u9o251-3-13-2";
|
|
9
|
+
var dateTimeInputRoot = "_5u9o250-3-13-2";
|
|
10
|
+
var expression = "_5u9o252-3-13-2";
|
|
11
11
|
export {
|
|
12
12
|
dateTimeInput,
|
|
13
13
|
dateTimeInputRoot,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/forms/date-time-range-picker/DateTimeInput.css.ts"],
|
|
4
|
-
"sourcesContent": ["import '../../core/components/app-root/AppRoot.css';\nimport '../../styles/field.css';\nimport '../../styles/textStyle.css';\nimport '../spin-buttons/SpinButton.css';\nimport '../date-time-picker/DateTimePicker.css';\nimport './DateTimeRangePicker.css';\nimport './DateTimeInput.css';\nexport var dateTimeInput = '_5u9o251-3-
|
|
4
|
+
"sourcesContent": ["import '../../core/components/app-root/AppRoot.css';\nimport '../../styles/field.css';\nimport '../../styles/textStyle.css';\nimport '../spin-buttons/SpinButton.css';\nimport '../date-time-picker/DateTimePicker.css';\nimport './DateTimeRangePicker.css';\nimport './DateTimeInput.css';\nexport var dateTimeInput = '_5u9o251-3-13-2';\nexport var dateTimeInputRoot = '_5u9o250-3-13-2';\nexport var expression = '_5u9o252-3-13-2';"],
|
|
5
5
|
"mappings": "AAAA,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACA,IAAI,gBAAgB;AACpB,IAAI,oBAAoB;AACxB,IAAI,aAAa;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
._1vlwkc20-3-
|
|
1
|
+
._1vlwkc20-3-13-2 {
|
|
2
2
|
transition-timing-function: var(--dt-animations-fade-out-easing, cubic-bezier(0, 0, 0.2, 1));
|
|
3
3
|
transition-duration: var(--dt-animations-fade-out-duration-base, 250ms);
|
|
4
4
|
transition-property: color, background-color, transform;
|
|
5
5
|
padding-inline: var(--dt-spacings-size-12, 12px);
|
|
6
6
|
padding-block: var(--dt-spacings-size-6, 6px);
|
|
7
7
|
border-radius: var(--dt-borders-radius-field-default, 6px);
|
|
8
|
-
box-shadow: var(--_bx32h4-3-
|
|
8
|
+
box-shadow: var(--_bx32h4-3-13-2);
|
|
9
9
|
white-space: nowrap;
|
|
10
10
|
overflow: hidden;
|
|
11
|
-
color: var(--_bx32h0-3-
|
|
12
|
-
background: var(--_bx32h3-3-
|
|
11
|
+
color: var(--_bx32h0-3-13-2);
|
|
12
|
+
background: var(--_bx32h3-3-13-2);
|
|
13
13
|
flex: 1 1 auto;
|
|
14
14
|
position: relative;
|
|
15
15
|
}
|
|
16
|
-
._1vlwkc20-3-
|
|
16
|
+
._1vlwkc20-3-13-2._1vlwkc20-3-13-2 {
|
|
17
17
|
gap: var(--dt-spacings-size-4, 4px);
|
|
18
18
|
}
|
|
19
|
-
._1vlwkc20-3-
|
|
19
|
+
._1vlwkc20-3-13-2:has(._1i883gjd-3-13-2) {
|
|
20
20
|
padding-inline-end: var(--dt-spacings-size-32, 32px);
|
|
21
21
|
}
|
|
22
|
-
._1vlwkc20-3-
|
|
23
|
-
--_bx32h3-3-
|
|
22
|
+
._1vlwkc20-3-13-2:has(._1i883gjd-3-13-2:hover) {
|
|
23
|
+
--_bx32h3-3-13-2: var(--_bx32h2-3-13-2);
|
|
24
24
|
}
|
|
25
|
-
._1vlwkc20-3-
|
|
26
|
-
box-shadow: var(--_bx32h4-3-
|
|
25
|
+
._1vlwkc20-3-13-2:has(._1i883gjd-3-13-2:focus-visible) {
|
|
26
|
+
box-shadow: var(--_bx32h4-3-13-2, none);
|
|
27
27
|
}
|
|
28
|
-
._1jgl8s50-3-
|
|
29
|
-
--_bx32h3-3-
|
|
28
|
+
._1jgl8s50-3-13-2 ._1vlwkc20-3-13-2, ._1jgl8s50-3-13-2 ._1vlwkc20-3-13-2:hover, ._1jgl8s50-3-13-2 ._1vlwkc20-3-13-2:active {
|
|
29
|
+
--_bx32h3-3-13-2: var(--dt-colors-background-surface-default, #fff);
|
|
30
30
|
}
|
|
31
|
-
._1vlwkc22-3-
|
|
31
|
+
._1vlwkc22-3-13-2 {
|
|
32
32
|
cursor: not-allowed;
|
|
33
33
|
}
|
|
34
|
-
._1vlwkc23-3-
|
|
35
|
-
--_bx32h3-3-
|
|
34
|
+
._1vlwkc23-3-13-2 {
|
|
35
|
+
--_bx32h3-3-13-2: var(--dt-colors-background-field-neutral-disabled, #e4e5eb80);
|
|
36
36
|
}
|
|
37
|
-
._1jgl8s50-3-
|
|
38
|
-
--_bx32h4-3-
|
|
37
|
+
._1jgl8s50-3-13-2 ._1vlwkc23-3-13-2, ._1jgl8s50-3-13-2 ._1vlwkc23-3-13-2:hover, ._1jgl8s50-3-13-2 ._1vlwkc23-3-13-2:active {
|
|
38
|
+
--_bx32h4-3-13-2: var(--dt-box-shadows-field-neutral-disabled, inset 0px 0px 0px 1px #2f2f4f0f, inset 0px -1px 0px #2f2f4f0a, 0px 1px 1px -1px #2d2e4e1f);
|
|
39
39
|
}
|
|
40
|
-
._1vlwkc24-3-
|
|
41
|
-
--_bx32h3-3-
|
|
40
|
+
._1vlwkc24-3-13-2 {
|
|
41
|
+
--_bx32h3-3-13-2: var(--dt-colors-background-field-critical-emphasized, #f8e1e1);
|
|
42
42
|
}
|
|
43
|
-
._1jgl8s50-3-
|
|
44
|
-
--_bx32h4-3-
|
|
43
|
+
._1jgl8s50-3-13-2 ._1vlwkc24-3-13-2, ._1jgl8s50-3-13-2 ._1vlwkc24-3-13-2:hover, ._1jgl8s50-3-13-2 ._1vlwkc24-3-13-2:active {
|
|
44
|
+
--_bx32h4-3-13-2: var(--dt-box-shadows-field-critical-disabled, inset 0px 0px 0px 1px #2f2f4f0f, inset 0px -1px 0px #2f2f4f0a, 0px 1px 1px -1px #2d2e4e1f);
|
|
45
45
|
}
|
|
46
|
-
._1vlwkc25-3-
|
|
46
|
+
._1vlwkc25-3-13-2 {
|
|
47
47
|
display: flex;
|
|
48
48
|
flex: 1 1 auto;
|
|
49
49
|
min-width: 0;
|
|
@@ -51,19 +51,19 @@
|
|
|
51
51
|
overflow-y: hidden;
|
|
52
52
|
scrollbar-width: none;
|
|
53
53
|
}
|
|
54
|
-
._1vlwkc25-3-
|
|
54
|
+
._1vlwkc25-3-13-2._1vlwkc25-3-13-2 {
|
|
55
55
|
gap: var(--dt-spacings-size-4, 4px);
|
|
56
56
|
}
|
|
57
|
-
._1vlwkc25-3-
|
|
57
|
+
._1vlwkc25-3-13-2::-webkit-scrollbar {
|
|
58
58
|
display: none;
|
|
59
59
|
}
|
|
60
|
-
._1vlwkc26-3-
|
|
60
|
+
._1vlwkc26-3-13-2._1vlwkc26-3-13-2 {
|
|
61
61
|
flex-shrink: 0;
|
|
62
62
|
overflow-x: visible;
|
|
63
63
|
}
|
|
64
|
-
._1vlwkc27-3-
|
|
64
|
+
._1vlwkc27-3-13-2 {
|
|
65
65
|
flex-shrink: 0;
|
|
66
66
|
}
|
|
67
|
-
._1vlwkc27-3-
|
|
67
|
+
._1vlwkc27-3-13-2::selection {
|
|
68
68
|
background: transparent;
|
|
69
69
|
}
|
|
@@ -102,7 +102,7 @@ const DateTimeRangePicker = forwardRef(
|
|
|
102
102
|
readOnly: propReadOnly,
|
|
103
103
|
id: propId,
|
|
104
104
|
"aria-disabled": propAriaDisabled,
|
|
105
|
-
//
|
|
105
|
+
// oxlint-disable-next-line typescript/no-deprecated -- APPDEV-18321
|
|
106
106
|
controlState,
|
|
107
107
|
onBlur,
|
|
108
108
|
...remainingProps
|
|
@@ -116,7 +116,7 @@ const DateTimeRangePicker = forwardRef(
|
|
|
116
116
|
const memoedDefaultValue = useMemo(
|
|
117
117
|
() => mapToPartialTimeframe(propDefaultValue, precision),
|
|
118
118
|
/** We're ignoring updates to defaultValue as it only considers the initial state. */
|
|
119
|
-
//
|
|
119
|
+
// oxlint-disable-next-line react-hooks/exhaustive-deps
|
|
120
120
|
[]
|
|
121
121
|
);
|
|
122
122
|
const { min, max } = useMinMax(propMin, propMax);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/forms/date-time-range-picker/DateTimeRangePicker.tsx"],
|
|
4
|
-
"sourcesContent": ["import {\n type Dispatch,\n type RefObject,\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport type { StoreApi } from 'zustand';\n\nimport { DateTimeRangePickerRoot } from './DateTimeRangePickerRoot.js';\nimport type {\n DateTimeInputRef,\n DateTimeRangePickerProps,\n DateTimeRangePickerRef,\n} from './types.js';\nimport { useCallbackRef } from '../../core/hooks/useCallbackRef.js';\nimport { useMergeRefs } from '../../core/hooks/useMergeRefs.js';\nimport type { Precision } from '../../core/time/shared.types.js';\nimport { getDateTimeRangePickerActions } from '../../core/time/timeframeStore/actions/dateTimeRangePicker.js';\nimport { createTimeframeStore } from '../../core/time/timeframeStore/createTimeframeStore.js';\nimport type {\n DateTimeRangePickerTimeframeStates,\n DateTimeRangePickerTimeframeStoreActions,\n} from '../../core/time/timeframeStore/dateTimeRangePicker.types.js';\nimport { DateTimeRangePickerStoreProvider } from '../../core/time/timeframeStore/timeframeStoreProvider.js';\nimport { useDateTimeMessages } from '../../core/time/useDateTimeMessages.js';\nimport { useMinMax, useMinMaxStoreSync } from '../../core/time/useMinMax.js';\nimport { validate } from '../../core/time/validation.js';\nimport { type TimeValue } from '../../core/types/time.js';\nimport { getTimeOffsetFromInitialValue } from '../calendar/utils/helpers.js';\nimport { useFormControl } from '../forms-core/hooks/useFormControl.js';\nimport { useMinMaxLogger } from '../forms-core/hooks/useMinMaxLogger.js';\nimport {\n FormFieldMessagesAction,\n type FormFieldMessagesReducerAction,\n} from '../forms-core/state/formfield-messages-state-reducer.js';\nimport {\n GRAIL_MAX_DATE,\n GRAIL_MIN_DATE,\n} from '../forms-core/time/date-time.js';\nimport {\n removePrecisionFromTimeFrame,\n mapToPartialTimeframe,\n} from '../forms-core/time/timeParser.js';\nimport type { FormControlRef, TimeRangePickerRef } from '../shared-types.js';\n\ntype DateTimeRangePickerStore = StoreApi<\n DateTimeRangePickerTimeframeStates & DateTimeRangePickerTimeframeStoreActions\n>;\n\n/**\n * Extracts the prop-to-store syncing effects into a dedicated hook so the\n * component body stays focused on wiring rather than implementation details.\n *\n * According to the zustand maintainer, the recommended way to keep a zustand\n * store in sync with React props is via useEffect.\n * see https://github.com/pmndrs/zustand/discussions/1390#discussion-4505803\n */\nfunction useSyncPropsAndState(\n store: DateTimeRangePickerStore,\n memoedValue: {\n from: TimeValue | null;\n to: TimeValue | null;\n } | null,\n isControlled: boolean,\n precision: Exclude<Precision, 'day'>,\n formatString: string | undefined,\n required: boolean | undefined,\n formFieldMessagesDispatch:\n | Dispatch<FormFieldMessagesReducerAction>\n | undefined,\n dateTimeRangePickerRef: RefObject<DateTimeRangePickerRef | null>,\n) {\n // Sync the controlled value into the store whenever it changes.\n useEffect(() => {\n isControlled &&\n store.setState((state) => {\n const error = validate(memoedValue ?? null, state.min, state.max, {\n formMessageDispatch: formFieldMessagesDispatch,\n precision: state.precision,\n showError: false,\n checkOrder: true,\n formerError: state.calendarError,\n ref: dateTimeRangePickerRef,\n expectedFormat: state.formatString,\n valueMode: 'dateTimePicker',\n required: state.required,\n });\n\n const value = removePrecisionFromTimeFrame(\n memoedValue,\n state.precision,\n );\n const timeOffset = getTimeOffsetFromInitialValue(\n value,\n 'range',\n state.min,\n state.max,\n precision,\n );\n\n return {\n ...state,\n dateTimeRangePickerTimeframe: value,\n calendarValue: value,\n calendarError: error,\n dateTimeRangePickerError: error,\n timeOffset,\n };\n });\n }, [\n formFieldMessagesDispatch,\n isControlled,\n memoedValue,\n store,\n precision,\n dateTimeRangePickerRef,\n ]);\n\n // Sync precision and formatString into the store whenever they change.\n useEffect(() => {\n store.setState((state) => {\n const value = removePrecisionFromTimeFrame(\n state.dateTimeRangePickerTimeframe,\n precision,\n );\n\n return {\n ...state,\n precision,\n formatString,\n dateTimeRangePickerTimeframe: value,\n calendarValue: value,\n required,\n };\n });\n }, [precision, formatString, store, required]);\n}\n\n/**\n * Component to comfortably enter a timeframe in localized format for expressions.\n * @internal\n */\nexport const DateTimeRangePicker = forwardRef<\n DateTimeRangePickerRef,\n DateTimeRangePickerProps\n>(\n (\n {\n value: propValue,\n defaultValue: propDefaultValue,\n onChange,\n min: propMin = GRAIL_MIN_DATE,\n max: propMax = GRAIL_MAX_DATE,\n precision = 'minutes',\n disabled: propDisabled,\n required: propRequired,\n readOnly: propReadOnly,\n id: propId,\n 'aria-disabled': propAriaDisabled,\n // eslint-disable-next-line @typescript-eslint/no-deprecated -- APPDEV-18321\n controlState,\n onBlur,\n ...remainingProps\n },\n forwardedRef,\n ) => {\n const [isControlled] = useState(propValue !== undefined);\n const onChangeProp = useCallbackRef(onChange);\n\n const memoedValue = useMemo(\n () => mapToPartialTimeframe(propValue, precision),\n [precision, propValue],\n );\n const memoedDefaultValue = useMemo(\n () => mapToPartialTimeframe(propDefaultValue, precision),\n /** We're ignoring updates to defaultValue as it only considers the initial state. */\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n\n // Keep min and max updated at midnight\n const { min, max } = useMinMax(propMin, propMax);\n useMinMaxLogger(min, max, 'DateTimeRangePicker');\n\n const calendarRef = useRef<\n | FormControlRef<HTMLDivElement>\n | (Omit<FormControlRef<HTMLDivElement>, 'inputRef'> &\n Pick<TimeRangePickerRef<HTMLDivElement>, 'inputRef'>)\n >(null);\n const dateTimeFromRef = useRef<DateTimeInputRef>(null);\n const dateTimeRangePickerRef = useRef<DateTimeRangePickerRef>(null);\n\n const formControl = useFormControl({\n propDisabled,\n propRequired,\n propId,\n propAriaDisabled,\n propReadOnly,\n controlState,\n });\n const { required, messageDispatch: formFieldMessagesDispatch } =\n formControl;\n\n const { formatString } = useDateTimeMessages({ precision });\n\n const [initialState] = useState<DateTimeRangePickerTimeframeStates>(() => {\n const value = isControlled ? memoedValue : memoedDefaultValue;\n const timeOffset = getTimeOffsetFromInitialValue(\n value,\n 'range',\n min,\n max,\n precision,\n );\n\n const error = validate(value, min, max, {\n formMessageDispatch: formFieldMessagesDispatch,\n precision,\n showError: false,\n checkOrder: true,\n ref: dateTimeRangePickerRef,\n expectedFormat: formatString,\n valueMode: 'dateTimePicker',\n required,\n });\n\n return {\n calendarValue: value,\n dateTimeRangePickerTimeframe: value,\n min,\n max,\n precision,\n calendarRef,\n dateTimeFromRef,\n dateTimeRangePickerRef,\n calendarError: error,\n dateTimeRangePickerError: error,\n timeOffset,\n formatString,\n required,\n };\n });\n\n const [store] = useState(() =>\n createTimeframeStore<\n DateTimeRangePickerTimeframeStates,\n DateTimeRangePickerTimeframeStoreActions\n >(\n initialState,\n getDateTimeRangePickerActions(\n isControlled,\n formFieldMessagesDispatch,\n onChangeProp,\n ),\n ),\n );\n\n useSyncPropsAndState(\n store,\n memoedValue,\n isControlled,\n precision,\n formatString,\n required,\n formFieldMessagesDispatch,\n dateTimeRangePickerRef,\n );\n\n // Keep min and max updated at midnight\n useMinMaxStoreSync(\n store,\n min,\n max,\n useCallback(\n (\n state: DateTimeRangePickerTimeframeStates,\n min: TimeValue | null,\n max: TimeValue | null,\n ) => {\n const error = validate(state.dateTimeRangePickerTimeframe, min, max, {\n formMessageDispatch: formFieldMessagesDispatch,\n formerError: state.calendarError,\n precision: state.precision,\n showError: false,\n checkOrder: true,\n ref: dateTimeRangePickerRef,\n expectedFormat: state.formatString,\n valueMode: 'dateTimePicker',\n required: state.required,\n });\n return { calendarError: error, dateTimeRangePickerError: error };\n },\n [formFieldMessagesDispatch],\n ),\n );\n\n const mergedRef = useMergeRefs<DateTimeRangePickerRef>([\n dateTimeRangePickerRef,\n forwardedRef,\n ]);\n\n return (\n <DateTimeRangePickerStoreProvider store={store}>\n <DateTimeRangePickerRoot\n {...remainingProps}\n ref={mergedRef}\n formControl={formControl}\n onBlur={(event) => {\n onBlur?.(event);\n\n if (!event.target.contains(document.activeElement)) {\n formFieldMessagesDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n }\n }}\n />\n </DateTimeRangePickerStoreProvider>\n );\n },\n);\n"],
|
|
4
|
+
"sourcesContent": ["import {\n type Dispatch,\n type RefObject,\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport type { StoreApi } from 'zustand';\n\nimport { DateTimeRangePickerRoot } from './DateTimeRangePickerRoot.js';\nimport type {\n DateTimeInputRef,\n DateTimeRangePickerProps,\n DateTimeRangePickerRef,\n} from './types.js';\nimport { useCallbackRef } from '../../core/hooks/useCallbackRef.js';\nimport { useMergeRefs } from '../../core/hooks/useMergeRefs.js';\nimport type { Precision } from '../../core/time/shared.types.js';\nimport { getDateTimeRangePickerActions } from '../../core/time/timeframeStore/actions/dateTimeRangePicker.js';\nimport { createTimeframeStore } from '../../core/time/timeframeStore/createTimeframeStore.js';\nimport type {\n DateTimeRangePickerTimeframeStates,\n DateTimeRangePickerTimeframeStoreActions,\n} from '../../core/time/timeframeStore/dateTimeRangePicker.types.js';\nimport { DateTimeRangePickerStoreProvider } from '../../core/time/timeframeStore/timeframeStoreProvider.js';\nimport { useDateTimeMessages } from '../../core/time/useDateTimeMessages.js';\nimport { useMinMax, useMinMaxStoreSync } from '../../core/time/useMinMax.js';\nimport { validate } from '../../core/time/validation.js';\nimport { type TimeValue } from '../../core/types/time.js';\nimport { getTimeOffsetFromInitialValue } from '../calendar/utils/helpers.js';\nimport { useFormControl } from '../forms-core/hooks/useFormControl.js';\nimport { useMinMaxLogger } from '../forms-core/hooks/useMinMaxLogger.js';\nimport {\n FormFieldMessagesAction,\n type FormFieldMessagesReducerAction,\n} from '../forms-core/state/formfield-messages-state-reducer.js';\nimport {\n GRAIL_MAX_DATE,\n GRAIL_MIN_DATE,\n} from '../forms-core/time/date-time.js';\nimport {\n removePrecisionFromTimeFrame,\n mapToPartialTimeframe,\n} from '../forms-core/time/timeParser.js';\nimport type { FormControlRef, TimeRangePickerRef } from '../shared-types.js';\n\ntype DateTimeRangePickerStore = StoreApi<\n DateTimeRangePickerTimeframeStates & DateTimeRangePickerTimeframeStoreActions\n>;\n\n/**\n * Extracts the prop-to-store syncing effects into a dedicated hook so the\n * component body stays focused on wiring rather than implementation details.\n *\n * According to the zustand maintainer, the recommended way to keep a zustand\n * store in sync with React props is via useEffect.\n * see https://github.com/pmndrs/zustand/discussions/1390#discussion-4505803\n */\nfunction useSyncPropsAndState(\n store: DateTimeRangePickerStore,\n memoedValue: {\n from: TimeValue | null;\n to: TimeValue | null;\n } | null,\n isControlled: boolean,\n precision: Exclude<Precision, 'day'>,\n formatString: string | undefined,\n required: boolean | undefined,\n formFieldMessagesDispatch:\n | Dispatch<FormFieldMessagesReducerAction>\n | undefined,\n dateTimeRangePickerRef: RefObject<DateTimeRangePickerRef | null>,\n) {\n // Sync the controlled value into the store whenever it changes.\n useEffect(() => {\n isControlled &&\n store.setState((state) => {\n const error = validate(memoedValue ?? null, state.min, state.max, {\n formMessageDispatch: formFieldMessagesDispatch,\n precision: state.precision,\n showError: false,\n checkOrder: true,\n formerError: state.calendarError,\n ref: dateTimeRangePickerRef,\n expectedFormat: state.formatString,\n valueMode: 'dateTimePicker',\n required: state.required,\n });\n\n const value = removePrecisionFromTimeFrame(\n memoedValue,\n state.precision,\n );\n const timeOffset = getTimeOffsetFromInitialValue(\n value,\n 'range',\n state.min,\n state.max,\n precision,\n );\n\n return {\n ...state,\n dateTimeRangePickerTimeframe: value,\n calendarValue: value,\n calendarError: error,\n dateTimeRangePickerError: error,\n timeOffset,\n };\n });\n }, [\n formFieldMessagesDispatch,\n isControlled,\n memoedValue,\n store,\n precision,\n dateTimeRangePickerRef,\n ]);\n\n // Sync precision and formatString into the store whenever they change.\n useEffect(() => {\n store.setState((state) => {\n const value = removePrecisionFromTimeFrame(\n state.dateTimeRangePickerTimeframe,\n precision,\n );\n\n return {\n ...state,\n precision,\n formatString,\n dateTimeRangePickerTimeframe: value,\n calendarValue: value,\n required,\n };\n });\n }, [precision, formatString, store, required]);\n}\n\n/**\n * Component to comfortably enter a timeframe in localized format for expressions.\n * @internal\n */\nexport const DateTimeRangePicker = forwardRef<\n DateTimeRangePickerRef,\n DateTimeRangePickerProps\n>(\n (\n {\n value: propValue,\n defaultValue: propDefaultValue,\n onChange,\n min: propMin = GRAIL_MIN_DATE,\n max: propMax = GRAIL_MAX_DATE,\n precision = 'minutes',\n disabled: propDisabled,\n required: propRequired,\n readOnly: propReadOnly,\n id: propId,\n 'aria-disabled': propAriaDisabled,\n // oxlint-disable-next-line typescript/no-deprecated -- APPDEV-18321\n controlState,\n onBlur,\n ...remainingProps\n },\n forwardedRef,\n ) => {\n const [isControlled] = useState(propValue !== undefined);\n const onChangeProp = useCallbackRef(onChange);\n\n const memoedValue = useMemo(\n () => mapToPartialTimeframe(propValue, precision),\n [precision, propValue],\n );\n const memoedDefaultValue = useMemo(\n () => mapToPartialTimeframe(propDefaultValue, precision),\n /** We're ignoring updates to defaultValue as it only considers the initial state. */\n // oxlint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n\n // Keep min and max updated at midnight\n const { min, max } = useMinMax(propMin, propMax);\n useMinMaxLogger(min, max, 'DateTimeRangePicker');\n\n const calendarRef = useRef<\n | FormControlRef<HTMLDivElement>\n | (Omit<FormControlRef<HTMLDivElement>, 'inputRef'> &\n Pick<TimeRangePickerRef<HTMLDivElement>, 'inputRef'>)\n >(null);\n const dateTimeFromRef = useRef<DateTimeInputRef>(null);\n const dateTimeRangePickerRef = useRef<DateTimeRangePickerRef>(null);\n\n const formControl = useFormControl({\n propDisabled,\n propRequired,\n propId,\n propAriaDisabled,\n propReadOnly,\n controlState,\n });\n const { required, messageDispatch: formFieldMessagesDispatch } =\n formControl;\n\n const { formatString } = useDateTimeMessages({ precision });\n\n const [initialState] = useState<DateTimeRangePickerTimeframeStates>(() => {\n const value = isControlled ? memoedValue : memoedDefaultValue;\n const timeOffset = getTimeOffsetFromInitialValue(\n value,\n 'range',\n min,\n max,\n precision,\n );\n\n const error = validate(value, min, max, {\n formMessageDispatch: formFieldMessagesDispatch,\n precision,\n showError: false,\n checkOrder: true,\n ref: dateTimeRangePickerRef,\n expectedFormat: formatString,\n valueMode: 'dateTimePicker',\n required,\n });\n\n return {\n calendarValue: value,\n dateTimeRangePickerTimeframe: value,\n min,\n max,\n precision,\n calendarRef,\n dateTimeFromRef,\n dateTimeRangePickerRef,\n calendarError: error,\n dateTimeRangePickerError: error,\n timeOffset,\n formatString,\n required,\n };\n });\n\n const [store] = useState(() =>\n createTimeframeStore<\n DateTimeRangePickerTimeframeStates,\n DateTimeRangePickerTimeframeStoreActions\n >(\n initialState,\n getDateTimeRangePickerActions(\n isControlled,\n formFieldMessagesDispatch,\n onChangeProp,\n ),\n ),\n );\n\n useSyncPropsAndState(\n store,\n memoedValue,\n isControlled,\n precision,\n formatString,\n required,\n formFieldMessagesDispatch,\n dateTimeRangePickerRef,\n );\n\n // Keep min and max updated at midnight\n useMinMaxStoreSync(\n store,\n min,\n max,\n useCallback(\n (\n state: DateTimeRangePickerTimeframeStates,\n min: TimeValue | null,\n max: TimeValue | null,\n ) => {\n const error = validate(state.dateTimeRangePickerTimeframe, min, max, {\n formMessageDispatch: formFieldMessagesDispatch,\n formerError: state.calendarError,\n precision: state.precision,\n showError: false,\n checkOrder: true,\n ref: dateTimeRangePickerRef,\n expectedFormat: state.formatString,\n valueMode: 'dateTimePicker',\n required: state.required,\n });\n return { calendarError: error, dateTimeRangePickerError: error };\n },\n [formFieldMessagesDispatch],\n ),\n );\n\n const mergedRef = useMergeRefs<DateTimeRangePickerRef>([\n dateTimeRangePickerRef,\n forwardedRef,\n ]);\n\n return (\n <DateTimeRangePickerStoreProvider store={store}>\n <DateTimeRangePickerRoot\n {...remainingProps}\n ref={mergedRef}\n formControl={formControl}\n onBlur={(event) => {\n onBlur?.(event);\n\n if (!event.target.contains(document.activeElement)) {\n formFieldMessagesDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n }\n }}\n />\n </DateTimeRangePickerStoreProvider>\n );\n },\n);\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["min", "max"]
|
|
7
7
|
}
|
|
@@ -5,10 +5,10 @@ import "../spin-buttons/SpinButton.css";
|
|
|
5
5
|
import "../date-time-picker/DateTimePicker.css";
|
|
6
6
|
import "./DateTimeRangePicker.css";
|
|
7
7
|
import { createRuntimeFn as _7a468 } from "@vanilla-extract/recipes/createRuntimeFn";
|
|
8
|
-
var dateTimeInput = "_1vlwkc26-3-
|
|
9
|
-
var dateTimeRange = _7a468({ defaultClassName: "_1vlwkc20-3-
|
|
10
|
-
var scrollContainer = "_1vlwkc25-3-
|
|
11
|
-
var timeframeSeparator = "_1vlwkc27-3-
|
|
8
|
+
var dateTimeInput = "_1vlwkc26-3-13-2";
|
|
9
|
+
var dateTimeRange = _7a468({ defaultClassName: "_1vlwkc20-3-13-2", variantClassNames: { showError: { true: "_1vlwkc21-3-13-2" }, disabled: { true: "_1vlwkc22-3-13-2" }, readOnly: { true: "_1vlwkc23-3-13-2" } }, defaultVariants: {}, compoundVariants: [[{ showError: true, readOnly: true }, "_1vlwkc24-3-13-2"]] });
|
|
10
|
+
var scrollContainer = "_1vlwkc25-3-13-2";
|
|
11
|
+
var timeframeSeparator = "_1vlwkc27-3-13-2";
|
|
12
12
|
export {
|
|
13
13
|
dateTimeInput,
|
|
14
14
|
dateTimeRange,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/forms/date-time-range-picker/DateTimeRangePicker.css.ts"],
|
|
4
|
-
"sourcesContent": ["import '../../core/components/app-root/AppRoot.css';\nimport '../../styles/field.css';\nimport '../../styles/textStyle.css';\nimport '../spin-buttons/SpinButton.css';\nimport '../date-time-picker/DateTimePicker.css';\nimport './DateTimeRangePicker.css';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var dateTimeInput = '_1vlwkc26-3-
|
|
4
|
+
"sourcesContent": ["import '../../core/components/app-root/AppRoot.css';\nimport '../../styles/field.css';\nimport '../../styles/textStyle.css';\nimport '../spin-buttons/SpinButton.css';\nimport '../date-time-picker/DateTimePicker.css';\nimport './DateTimeRangePicker.css';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var dateTimeInput = '_1vlwkc26-3-13-2';\nexport var dateTimeRange = _7a468({defaultClassName:'_1vlwkc20-3-13-2',variantClassNames:{showError:{true:'_1vlwkc21-3-13-2'},disabled:{true:'_1vlwkc22-3-13-2'},readOnly:{true:'_1vlwkc23-3-13-2'}},defaultVariants:{},compoundVariants:[[{showError:true,readOnly:true},'_1vlwkc24-3-13-2']]});\nexport var scrollContainer = '_1vlwkc25-3-13-2';\nexport var timeframeSeparator = '_1vlwkc27-3-13-2';"],
|
|
5
5
|
"mappings": "AAAA,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,SAAS,mBAAmB,cAAc;AACnC,IAAI,gBAAgB;AACpB,IAAI,gBAAgB,OAAO,EAAC,kBAAiB,oBAAmB,mBAAkB,EAAC,WAAU,EAAC,MAAK,mBAAkB,GAAE,UAAS,EAAC,MAAK,mBAAkB,GAAE,UAAS,EAAC,MAAK,mBAAkB,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,CAAC,EAAC,WAAU,MAAK,UAAS,KAAI,GAAE,kBAAkB,CAAC,EAAC,CAAC;AACxR,IAAI,kBAAkB;AACtB,IAAI,qBAAqB;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -203,7 +203,7 @@ const useDateTimeInput = (props, expressionInputRef) => {
|
|
|
203
203
|
}
|
|
204
204
|
},
|
|
205
205
|
// no use in adding the expressionInputRef to the dep. array
|
|
206
|
-
//
|
|
206
|
+
// oxlint-disable-next-line react-hooks/exhaustive-deps
|
|
207
207
|
[]
|
|
208
208
|
);
|
|
209
209
|
const spinButtonHandlersRef = useRef(spinButtonHandlers);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/forms/date-time-range-picker/hooks/useDateTimeInput.ts"],
|
|
4
|
-
"sourcesContent": ["import { TZDateMini } from '@date-fns/tz';\nimport {\n ClipboardEventHandler,\n FocusEventHandler,\n FocusEvent as ReactFocusEvent,\n ReactEventHandler,\n KeyboardEventHandler as ReactKeyboardEventHandler,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n type RefObject,\n} from 'react';\n\nimport {\n _parseTimeExpression,\n parseTimeAsTimeValue,\n} from '@dynatrace-sdk/units';\nimport { getTimezone } from '@dynatrace-sdk/user-preferences';\n\nimport { useDateTimeParser } from './useDateTimeParser.js';\nimport { spinExpressionValue } from './useExpressionSpin.js';\nimport { useAriaLabelingProps } from '../../../core/hooks/useAriaLabelingProps.js';\nimport { useControllableState } from '../../../core/hooks/useControllableState.js';\nimport { isEqualTimeValue } from '../../../core/time/helpers.js';\nimport { useDateTimePickerStore } from '../../../core/time/timeframeStore/useTimeframeStore.js';\nimport type { TimeValue } from '../../../core/types/time.js';\nimport { useDateTimePicker } from '../../date-time-picker/hooks/useDateTimePicker.js';\nimport {\n formatTimeValue,\n getTimeValue,\n} from '../../forms-core/time/timeParser.js';\nimport { useSelection } from '../../spin-buttons/hooks/useSelection.js';\nimport type { NumberSpinButtonRef } from '../../spin-buttons/number-spin-button/types.js';\nimport type { SpinButtonHandler } from '../../spin-buttons/spin-button-group/types.js';\nimport {\n captureUndoSnapshot,\n isContentModifyingKey,\n normalizeISOInput,\n parseDateOnlyToISO,\n parseTimeOnlyToISO,\n partialDateTimeToISO,\n tryParsePartialDate,\n tryParsePartialTime,\n} from '../helpers.js';\nimport {\n getExpressionCursorOffset,\n restoreExpressionCursorOffset,\n} from '../selection-helpers.js';\nimport type { DateTimeInputProps, UndoSnapshot } from '../types.js';\n\nfunction isNumberSpinButton(\n handler: SpinButtonHandler | undefined,\n): handler is NumberSpinButtonRef {\n return handler?.type === 'number';\n}\n\nconst DATE_PART_TYPES: Set<Intl.DateTimeFormatPart['type']> = new Set([\n 'day',\n 'month',\n 'year',\n]);\nconst TIME_PART_TYPES: Set<Intl.DateTimeFormatPart['type']> = new Set([\n 'hour',\n 'minute',\n 'second',\n 'fractionalSecond',\n 'dayPeriod',\n]);\n\n/**\n * Inserts plain text at the current cursor position, replacing any active selection.\n */\nconst insertTextAtCursor = (text: string) => {\n const selection = window.getSelection();\n if (selection?.rangeCount) {\n const range = selection.getRangeAt(0);\n range.deleteContents();\n const textNode = document.createTextNode(text);\n range.insertNode(textNode);\n range.setStartAfter(textNode);\n range.collapse(true);\n selection.removeAllRanges();\n selection.addRange(range);\n }\n};\n\n/**\n * Returns true when at least one non-literal spin button is empty.\n */\nconst hasAnyEmptySpinButton = (\n handlersRef: RefObject<\n Map<\n keyof Intl.DateTimeFormatPartTypesRegistry,\n SpinButtonHandler | null | undefined\n >\n >,\n): boolean =>\n Array.from(handlersRef.current?.entries() ?? []).some(\n ([type, handler]) =>\n handler &&\n type !== 'literal' &&\n handler.element.current?.textContent === '',\n );\n\n/**\n * Pastes text into the expression contenteditable span, either at the cursor\n * position (when the selection is inside the span) or by replacing its content.\n */\nconst pasteIntoExpressionInput = (\n element: RefObject<HTMLSpanElement | null>,\n text: string,\n): void => {\n if (element.current) {\n const selection = window.getSelection();\n const range = selection?.rangeCount ? selection.getRangeAt(0) : null;\n\n if (\n range &&\n element.current.contains(range.startContainer) &&\n element.current.contains(range.endContainer)\n ) {\n insertTextAtCursor(text);\n } else {\n element.current.textContent = text;\n moveCursorToEnd(element.current);\n }\n\n element.current.dispatchEvent(new InputEvent('input', { bubbles: true }));\n }\n};\n\n/**\n * Moves the cursor (selection) to the end of the given element's content.\n */\nconst moveCursorToEnd = (element: HTMLSpanElement | null | undefined) => {\n if (element) {\n const range = document.createRange();\n const selection = window.getSelection();\n range.selectNodeContents(element);\n range.collapse(false);\n selection?.removeAllRanges();\n selection?.addRange(range);\n }\n};\n\n/*\n * A hook that provides the default functionality for the DateTimeInput picker\n */\nexport const useDateTimeInput = (\n props: DateTimeInputProps,\n expressionInputRef: RefObject<HTMLSpanElement | null>,\n) => {\n const {\n disabled,\n readOnly,\n type,\n onChange,\n onLeadingEdge,\n onTrailingEdge,\n dateOnlyPasteAnchor = 'startOfDay',\n onPasteComplete,\n partialTimeAnchorDate,\n }: DateTimeInputProps = props;\n const precision = useDateTimePickerStore((state) =>\n state.precision !== 'day' ? state.precision : 'milliseconds',\n );\n\n const ariaProps = useAriaLabelingProps(props);\n const { regexDateTimeStart, maxValue, types } = useDateTimeParser({\n type,\n });\n // ? INVESTIGATE: without the generic, building the visreg story viewer and unit-test typechecking fails,\n // ? but the components:build target still succeeds without any issues -> why?\n const [value, setValue] = useControllableState<TimeValue | null>(props);\n const isControlled = props.value !== undefined;\n const [valueType, setValueType] = useState(value?.type ?? 'expression');\n const firstRun = useRef(true);\n // Tracks the previous value content so that a parent re-render that passes a\n // new object reference with the same content does not trigger formatExpressionValue\n // and reset DOM edits that haven't propagated through React state yet.\n const prevValueRef = useRef<TimeValue | null | undefined>(undefined);\n const [expressionEmpty, setExpressionEmpty] = useState(\n !expressionInputRef.current?.textContent,\n );\n const [inputValue, setInputValue] = useState('');\n // Skips no-op setInputValue calls in the [value] effect. Passive-effect\n // writes that React can't bail out on schedule SyncLane commits that\n // accumulate on rapid keypresses.\n const lastInputValueRef = useRef(inputValue);\n lastInputValueRef.current = inputValue;\n const pasteUndoRef = useRef<{\n snapshot: UndoSnapshot;\n focusTarget: Element | null;\n expressionCursorOffset?: number;\n } | null>(null);\n\n useEffect(() => {\n return () => {\n pasteUndoRef.current = null;\n };\n }, []);\n\n // Tracks the last valid absoluteDate to pass a stable, parseable ISO string\n // to useDateTimePicker while props.value temporarily has absoluteDate:'' during\n // partial spinbutton editing. Keeps useDateTimePicker.value prop unchanged so\n // its internal useEffect doesn't re-run and clear the spinbuttons.\n const lastValidAbsoluteDateRef = useRef<string | null>(\n value?.type === 'iso8601' && value.absoluteDate ? value.absoluteDate : null,\n );\n // True only during the requestAnimationFrame window opened by switchToExpressionMode.\n // Used to suppress stale spinbutton onChange callbacks that fire while the mode\n // transition is in flight, without blocking legitimate restore/undo calls.\n const isSwitchingToExpressionRef = useRef(false);\n\n // Use valueType (local state) not value.type (controlled prop) as the gate \u2014\n // the controlled prop can temporarily become type:'expression' when the store\n // echoes back a partial invalid value for validation while we're still in\n // spinbutton mode.\n if (\n valueType === 'iso8601' &&\n value?.type === 'iso8601' &&\n value.absoluteDate\n ) {\n lastValidAbsoluteDateRef.current = value.absoluteDate;\n }\n const spinButtonValue =\n valueType === 'iso8601' ? lastValidAbsoluteDateRef.current : null;\n\n // Stores the date parts filled in by a partial paste so the focus can target\n // the first spin button that was not filled.\n const pendingFocusPartsRef = useRef<Set<\n keyof Intl.DateTimeFormatPartTypesRegistry\n > | null>(null);\n\n const {\n spinButtons,\n handlers: spinButtonHandlers,\n empty: spinButtonsEmpty,\n applyDateTime,\n firstSpinButtonHandler,\n } = useDateTimePicker({\n type,\n precision,\n disabled,\n readOnly,\n valueType,\n value: spinButtonValue,\n onChange: (newIsoDateTime) => {\n const newValue = getTimeValue(newIsoDateTime ?? undefined, precision);\n\n if (newValue === null || newValue === undefined) {\n return;\n }\n\n // Suppress stale spinbutton callbacks that fire while switchToExpressionMode\n // is transitioning. Any other caller (e.g. undo restore) is allowed through.\n if (isSwitchingToExpressionRef.current) {\n return;\n }\n\n if (expressionInputRef.current) {\n expressionInputRef.current.textContent = '';\n }\n\n // If undo (or another caller) pushes a value while we're in expression mode,\n // switch back to spinbutton mode now.\n if (valueType !== 'iso8601') {\n setValueType('iso8601');\n }\n\n // Forward invalid values (empty string or unparseable partial locale string)\n // to onChange so the store validates and shows errors, but skip setValue so\n // props.value stays stable and spinbuttons are not cleared.\n if (newIsoDateTime === '' || newValue?.absoluteDate === '') {\n onChange?.(newValue);\n return;\n }\n\n setInputValue(newValue.value);\n // only update the value if the newTimeValue differs from the prev. one\n setValue((prevValue) =>\n isEqualTimeValue(prevValue, newValue) ? prevValue : newValue,\n );\n },\n ...ariaProps,\n });\n\n const empty = useMemo(\n () => (valueType === 'expression' ? expressionEmpty : spinButtonsEmpty),\n [valueType, expressionEmpty, spinButtonsEmpty],\n );\n\n // Shared state reset when switching (back) to expression mode.\n const resetToExpressionMode = useCallback(\n (expressionEmpty = true) => {\n setValueType('expression');\n setValue(null);\n setInputValue('');\n setExpressionEmpty(expressionEmpty);\n lastValidAbsoluteDateRef.current = null;\n },\n [setValue],\n );\n\n // Tracks the last absoluteDate seen by the controlled-value effect.\n // Used to distinguish a genuine value re-application (absoluteDate changed,\n // e.g. from '' back to a valid ISO string) from an outdated reference change\n // (the store re-parsed a sibling field and created a new object with the\n // same absoluteDate).\n const prevAbsoluteDateRef = useRef<string | null>(null);\n\n // Called on onBlur to sanitize the current expression. Declared here (before\n // the [value] useEffect below) so that React Compiler's immutability analysis\n // can confirm the reference is available at the time the effect is registered.\n const formatExpressionValue = useCallback(\n (value: TimeValue | null) => {\n if (!expressionInputRef.current) {\n return;\n }\n const formattedValue = value ? formatTimeValue(value) : '';\n const currentValue = formatTimeValue(\n expressionInputRef.current?.textContent ?? '',\n );\n\n // only update if the current value differs from the new value\n // don't update the textnode while typing but allow e.g. pasting a new expression\n if (currentValue !== formattedValue) {\n expressionInputRef.current.textContent = formattedValue;\n }\n },\n // no use in adding the expressionInputRef to the dep. array\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n\n // Keep a ref to the latest spinButtonHandlers so that focus helpers\n // inside requestAnimationFrame always use the current map.\n const spinButtonHandlersRef = useRef(spinButtonHandlers);\n spinButtonHandlersRef.current = spinButtonHandlers;\n\n // switch input mode based on controlled value change\n useEffect(() => {\n const prevValue = prevValueRef.current;\n prevValueRef.current = value;\n\n const applyInputValue = (next: string) => {\n if (lastInputValueRef.current === next) {\n return;\n }\n lastInputValueRef.current = next;\n // eslint-disable-next-line react-hooks/set-state-in-effect\n setInputValue(next);\n };\n\n if (value?.type === 'iso8601' && !spinButtonsEmpty) {\n applyInputValue(value.value);\n }\n\n // ignore if in uncontrolled mode\n if (!isControlled || typeof value === 'string') {\n return;\n }\n\n const prevAbsoluteDate = prevAbsoluteDateRef.current;\n prevAbsoluteDateRef.current = value?.absoluteDate ?? null;\n\n // reset input if value is null\n if (!value) {\n setValueType('expression');\n formatExpressionValue(null);\n const input = expressionInputRef.current?.textContent;\n setExpressionEmpty(input === '');\n applyDateTime(null);\n lastValidAbsoluteDateRef.current = null;\n return;\n }\n\n // Skip values with empty absoluteDate: partial/invalid intermediate states\n // forwarded to the store for validation only. The spinbuttons manage their\n // own display; reacting here would switch to 'expression' mode and call\n // formatExpressionValue, clearing the display.\n if (value.absoluteDate === '') {\n return;\n }\n\n // apply value to expression\n // the spinbutton update is handled within the useSpinButton hook internally\n if (valueType !== value.type) {\n setValueType(value.type);\n }\n applyInputValue(value.value);\n if (value.type === 'expression') {\n // Only reformat the DOM when the expression content has actually changed.\n // A parent re-render that produces a new object reference with the same\n // value (e.g. due to a sibling input's state update) must not overwrite\n // DOM edits (e.g. partial cross-expression deletion) that haven't yet\n // propagated back through React state.\n if (!isEqualTimeValue(prevValue ?? null, value)) {\n formatExpressionValue(value);\n }\n setExpressionEmpty(value.value === '');\n } else if (\n value.type === 'iso8601' &&\n hasAnyEmptySpinButton(spinButtonHandlersRef) &&\n prevAbsoluteDate !== value.absoluteDate\n ) {\n applyDateTime(value.absoluteDate);\n }\n // only react to outside value changes\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n // Focuses the first spin button that is still empty, or the last spin button when\n // everything is filled in.\n const focusFirstUnfilledSpinButton = useCallback(\n (filledParts: Set<keyof Intl.DateTimeFormatPartTypesRegistry>) => {\n const handlers = spinButtonHandlersRef.current;\n for (const [type, handler] of handlers) {\n if (\n handler &&\n type !== 'literal' &&\n !filledParts.has(\n type as keyof Intl.DateTimeFormatPartTypesRegistry,\n ) &&\n handler.element.current?.textContent === ''\n ) {\n handler.element.current?.focus();\n return;\n }\n }\n // Fallback: focus the last spin button when everything is filled.\n let lastHandler: SpinButtonHandler | null = null;\n for (const [, handler] of handlers) {\n if (handler) {\n lastHandler = handler;\n }\n }\n lastHandler?.element?.current?.focus();\n },\n [],\n );\n\n // Focus the first unfilled spin button after a partial paste triggers a mode switch.\n useEffect(() => {\n const filledParts = pendingFocusPartsRef.current;\n if (!filledParts || valueType !== 'iso8601') {\n return;\n }\n pendingFocusPartsRef.current = null;\n\n requestAnimationFrame(() => {\n focusFirstUnfilledSpinButton(filledParts);\n });\n }, [valueType, focusFirstUnfilledSpinButton]);\n\n const { selectAll: expressionInputSelectAll } =\n useSelection(expressionInputRef);\n\n // handles input events on the expression contenteditable span\n const expressionInputHandler: ReactEventHandler<HTMLSpanElement> =\n useCallback(() => {\n if (!expressionInputRef.current) {\n return;\n }\n\n const input = expressionInputRef.current.textContent ?? '';\n\n // Remove <br> added by browser in contenteditable to ensure placeholder works\n if (expressionInputRef.current.innerHTML === '<br>') {\n expressionInputRef.current.innerHTML = '';\n }\n\n // fallback to expression if text content is removed\n if (input === '') {\n setValueType('expression');\n setValue(null);\n setExpressionEmpty(true);\n return;\n }\n\n setExpressionEmpty(false);\n\n // if the input starts like a valid datetime for the current locale, switch to the datetime picker\n const [, carryOver] = regexDateTimeStart.exec(input) ?? [];\n if (Number.parseInt(carryOver) <= maxValue) {\n setValueType('iso8601');\n\n // clear all spinbuttons\n applyDateTime(null);\n lastValidAbsoluteDateRef.current = null;\n\n // get a cleaned and sorted list of spinbutton handlers\n const sortedHandlers = types\n .filter((type) => type !== 'literal')\n .map((type) => spinButtonHandlers.get(type))\n .filter(Boolean) as SpinButtonHandler[];\n const [carryOverSB, focusSB] = sortedHandlers;\n\n // carry over entered value to the next number spinbutton\n isNumberSpinButton(carryOverSB) &&\n carryOverSB.applyText(carryOver, true);\n\n // clear expression input content\n expressionInputRef.current.textContent = '';\n\n // set focus after switch to expression mode happened\n requestAnimationFrame(() => {\n // set focus to second spinbutton\n focusSB?.element.current?.focus();\n });\n return;\n }\n\n // If the user types a number followed by \":\", switch to the datetime picker\n // with the anchor date pre-filled and the typed hour applied, then focus the\n // minute spin button so the user can continue typing the time.\n // The anchor date defaults to today but can be overridden via `partialTimeAnchorDate`\n if (type !== 'date') {\n const colonMatch = /^(\\d{1,2}):$/.exec(input);\n if (colonMatch) {\n const hour = Number.parseInt(colonMatch[1]);\n if (hour <= 23) {\n const base = partialTimeAnchorDate\n ? new TZDateMini(partialTimeAnchorDate, getTimezone())\n : TZDateMini.tz(getTimezone());\n const iso = TZDateMini.tz(\n getTimezone(),\n base.getFullYear(),\n base.getMonth(),\n base.getDate(),\n hour,\n 0,\n 0,\n 0,\n ).toISOString();\n\n const partsToUpdate = new Set<\n keyof Intl.DateTimeFormatPartTypesRegistry\n >(['day', 'month', 'year', 'hour']);\n\n setValueType('iso8601');\n expressionInputRef.current.textContent = '';\n applyDateTime(iso, partsToUpdate);\n\n requestAnimationFrame(() => {\n focusFirstUnfilledSpinButton(partsToUpdate);\n });\n return;\n }\n }\n }\n\n // If the copied text contains the formatted date in the user's locale (e.g.,\n // \"12/24/2024\" or \"25.12.2024\"), switch to iso8601 mode and apply the parsed date\n // fields to the spin buttons.\n const typedPartialDate = tryParsePartialDate(input);\n if (typedPartialDate) {\n const dateResult = partialDateTimeToISO(typedPartialDate, null);\n if (dateResult) {\n setValueType('iso8601');\n expressionInputRef.current.textContent = '';\n applyDateTime(dateResult.iso, dateResult.partsToUpdate);\n\n requestAnimationFrame(() =>\n focusFirstUnfilledSpinButton(dateResult.partsToUpdate ?? new Set()),\n );\n return;\n }\n }\n\n // if input is a valid expression, update the internal value state\n const newValue = getTimeValue(input, precision) ?? null;\n\n if (newValue?.absoluteDate === '') {\n onChange?.(newValue);\n }\n // only update the value if the newTimeValue differs from the prev. one\n setValue((prevValue) =>\n isEqualTimeValue(prevValue, newValue) ? prevValue : newValue,\n );\n\n setInputValue(input);\n }, [\n expressionInputRef,\n regexDateTimeStart,\n maxValue,\n partialTimeAnchorDate,\n precision,\n type,\n setValue,\n applyDateTime,\n focusFirstUnfilledSpinButton,\n types,\n spinButtonHandlers,\n onChange,\n ]);\n\n // select expression text content on focus\n const expressionOnFocusHandler: FocusEventHandler<HTMLSpanElement> =\n useCallback(\n (event: ReactFocusEvent<HTMLSpanElement>) => {\n // If the current selection spans multiple nodes (e.g. a drag-select or\n // Cmd+A across multiple spin buttons / expression inputs), don't collapse\n // it to just this expression input.\n const selection = window.getSelection();\n const selectionSpansMultipleNodes =\n selection !== null &&\n selection.anchorNode !== selection.focusNode &&\n selection.toString().length > 0;\n\n // Also skip if we are in the middle of a programmatic focus + setBaseAndExtent\n // (guarded by data-restoring-selection on the .strato-inputgroup root).\n const isRestoringSelection =\n (event.target as HTMLElement)\n .closest('.strato-inputgroup')\n ?.hasAttribute('data-restoring-selection') ?? false;\n\n // Skip if the user already has a non-collapsed selection inside this\n // expression input (e.g. drag-select or Shift+arrow within one field).\n // Calling selectAll() here would override that intended partial selection.\n const expressionInputEl = event.target as HTMLElement;\n const hasPartialSelectionWithin =\n selection !== null &&\n !selection.isCollapsed &&\n expressionInputEl.contains(selection.anchorNode) &&\n expressionInputEl.contains(selection.focusNode);\n\n if (\n selectionSpansMultipleNodes ||\n isRestoringSelection ||\n hasPartialSelectionWithin\n ) {\n return;\n }\n\n expressionInputSelectAll();\n },\n [expressionInputSelectAll],\n );\n\n // sanitize textnode if content is an expression\n const expressionOnBlurHandler: FocusEventHandler<HTMLSpanElement> =\n useCallback(() => {\n if (expressionInputRef.current && value?.type === 'expression') {\n const currentExpressionInput =\n expressionInputRef.current.textContent ?? '';\n const isValidExpression = _parseTimeExpression(\n currentExpressionInput.trim(),\n );\n\n if (isValidExpression) {\n expressionInputRef.current.textContent = formatTimeValue(value);\n }\n }\n\n // eslint annoyingly wants to add the ref to the dependency list\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n // Shared paste logic used by both the DOM paste event handler and the\n // imperative pasteText method on DateTimeInputRef. Returns true when the\n // paste was handled (caller should preventDefault), false to let native\n // paste proceed (step 4: digits in iso8601 mode).\n const pasteText = useCallback(\n (text: string, skipUndoCapture = false): boolean => {\n if (readOnly) {\n return false;\n }\n\n let trimmedData = normalizeISOInput(text.trim());\n if (!trimmedData) {\n return true;\n }\n\n // Pre-parse locale-specific partial date/time for normalization and step 5.\n const partialDate = tryParsePartialDate(trimmedData);\n const partialTime = tryParsePartialTime(trimmedData);\n const partialResult =\n partialDate || partialTime\n ? partialDateTimeToISO(partialDate, partialTime)\n : null;\n\n // When the result is complete (no partsToUpdate), normalize to ISO so\n // the existing ISO checks (steps 1\u20133) can handle it.\n if (partialResult && !partialResult.partsToUpdate) {\n trimmedData = partialResult.iso;\n }\n\n // Capture undo snapshot before any state mutations unless the caller\n // already owns the snapshot (e.g. range-level paste handler).\n if (!skipUndoCapture) {\n const snapshot = captureUndoSnapshot(\n spinButtonHandlers,\n expressionInputRef.current,\n value,\n valueType,\n );\n\n pasteUndoRef.current = {\n snapshot,\n focusTarget: document.activeElement,\n expressionCursorOffset: expressionInputRef.current\n ? getExpressionCursorOffset(expressionInputRef.current)\n : undefined,\n };\n }\n\n // 1. Date-only paste (e.g. \"2025-01-01\")\n // 2. Time-only paste (e.g. \"02:00Z\", \"14:30:00\")\n const dateOnly = parseDateOnlyToISO(trimmedData, dateOnlyPasteAnchor);\n const timeOnly = parseTimeOnlyToISO(trimmedData);\n const date = dateOnly ?? timeOnly;\n\n if (date) {\n setValueType('iso8601');\n // When spinbuttons are empty (expression mode), apply all parts so the\n // full date is filled in. When parts are already populated, only\n // overwrite the date or time group that matches the pasted value.\n let partsFilter: Set<Intl.DateTimeFormatPart['type']> | undefined;\n if (!spinButtonsEmpty) {\n partsFilter = dateOnly ? DATE_PART_TYPES : TIME_PART_TYPES;\n }\n applyDateTime(date, partsFilter);\n\n // When only a subset of parts was applied, focus the first empty spin\n // button instead of advancing. When all parts were applied skip the check.\n if (partsFilter && hasAnyEmptySpinButton(spinButtonHandlersRef)) {\n focusFirstUnfilledSpinButton(partsFilter);\n } else {\n onPasteComplete?.();\n }\n\n return true;\n }\n\n // 3. Full ISO datetime or expression (e.g. \"2025-01-01T02:00Z\", \"now()-1h\")\n const nextValue = parseTimeAsTimeValue(\n trimmedData,\n TZDateMini.tz(getTimezone()).getTime(),\n precision,\n );\n\n if (nextValue) {\n setValueType(nextValue.type);\n if (nextValue.type === 'expression') {\n formatExpressionValue(nextValue);\n moveCursorToEnd(expressionInputRef.current);\n setValue(nextValue);\n } else {\n applyDateTime(nextValue.absoluteDate);\n }\n onPasteComplete?.();\n return true;\n }\n\n // 4. Allow numbers to be pasted into the spin buttons\n if (valueType === 'iso8601' && /^\\d+$/.test(trimmedData)) {\n return false;\n }\n\n // 5. Partial date/time paste (e.g. \"25.12\", \"14:30\", \"25.12.2024 14:30\")\n // partialResult was pre-computed above the ISO checks.\n if (partialResult?.partsToUpdate) {\n const { iso, partsToUpdate } = partialResult;\n setValueType('iso8601');\n applyDateTime(iso, partsToUpdate);\n\n // Clear any spin button that was not explicitly present in the pasted\n // text (i.e. was a placeholder token or simply absent). This ensures\n // paste always overwrites: fields not carried by the pasted value are\n // emptied rather than left at their previous content.\n for (const [key, handler] of spinButtonHandlersRef.current) {\n if (handler && !partsToUpdate.has(key)) {\n handler.clearValue(true);\n }\n }\n\n if (hasAnyEmptySpinButton(spinButtonHandlersRef)) {\n requestAnimationFrame(() => {\n focusFirstUnfilledSpinButton(partsToUpdate);\n });\n } else {\n onPasteComplete?.();\n }\n\n return true;\n }\n\n // 6. Fallback: switch to expression mode and paste the raw string.\n if (valueType === 'expression') {\n if (expressionInputRef.current) {\n pasteIntoExpressionInput(expressionInputRef, trimmedData);\n }\n } else {\n setValueType('expression');\n if (expressionInputRef.current) {\n expressionInputRef.current.textContent = trimmedData;\n expressionInputRef.current.focus();\n moveCursorToEnd(expressionInputRef.current);\n expressionInputRef.current.dispatchEvent(\n new InputEvent('input', { bubbles: true }),\n );\n }\n }\n\n return true;\n },\n [\n readOnly,\n spinButtonHandlers,\n expressionInputRef,\n value,\n dateOnlyPasteAnchor,\n precision,\n valueType,\n setValue,\n onPasteComplete,\n formatExpressionValue,\n applyDateTime,\n spinButtonsEmpty,\n focusFirstUnfilledSpinButton,\n ],\n );\n\n // clipboard paste handler. apply clipboard content if formatted correctly\n const onPaste: ClipboardEventHandler<HTMLSpanElement> = useCallback(\n (event) => {\n const data = event.clipboardData?.getData('text/plain');\n if (!data) {\n event.preventDefault();\n return;\n }\n if (pasteText(data)) {\n event.preventDefault();\n }\n },\n [pasteText],\n );\n\n // Ctrl+Z / Cmd+Z handler to undo a paste operation.\n const onPasteUndoKeyDown: ReactKeyboardEventHandler<HTMLSpanElement> =\n useCallback(\n (event) => {\n const isCtrlZ = (event.ctrlKey || event.metaKey) && event.key === 'z';\n\n if (!isCtrlZ) {\n // Invalidates the paste snapshot for any other input.\n if (pasteUndoRef.current && isContentModifyingKey(event)) {\n pasteUndoRef.current = null;\n }\n return;\n }\n\n if (!pasteUndoRef.current) {\n // No paste to undo \u2014 block native browser contenteditable undo.\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n const { snapshot, focusTarget, expressionCursorOffset } =\n pasteUndoRef.current;\n pasteUndoRef.current = null;\n\n event.preventDefault();\n event.stopPropagation();\n\n // Restore value type first so the correct UI mode is rendered.\n setValueType(snapshot.valueType);\n\n if (snapshot.valueType === 'iso8601') {\n // Restore spin button values from the snapshot.\n snapshot.spinButtonTexts.forEach((text, type) => {\n const handler = spinButtonHandlers.get(type) ?? null;\n if (!handler) {\n return;\n }\n if (text === '') {\n handler.clearValue(true);\n } else if (handler.type === 'number') {\n handler.applyText(text, true);\n } else {\n handler.searchValue(text[0] ?? '', true);\n }\n });\n } else {\n // Restore expression text content.\n if (expressionInputRef.current) {\n expressionInputRef.current.textContent = snapshot.expressionText;\n }\n setExpressionEmpty(snapshot.expressionText === '');\n }\n\n setValue(snapshot.value);\n setInputValue(snapshot.value?.value ?? '');\n\n requestAnimationFrame(() => {\n // Restore focus after the mode-switch re-render.\n if (\n focusTarget instanceof HTMLElement &&\n focusTarget !== document.activeElement\n ) {\n focusTarget.focus();\n }\n\n // Restore cursor position in the expression input\n if (\n snapshot.valueType === 'expression' &&\n expressionCursorOffset !== undefined &&\n expressionInputRef.current\n ) {\n restoreExpressionCursorOffset(\n expressionInputRef.current,\n expressionCursorOffset,\n );\n }\n });\n },\n [\n spinButtonHandlers,\n expressionInputRef,\n setValue,\n setValueType,\n setExpressionEmpty,\n setInputValue,\n ],\n );\n\n // Handle keyboard events on the expression input: prevent Enter and spin on ArrowUp/ArrowDown\n const expressionOnKeyDownHandler: ReactKeyboardEventHandler<HTMLSpanElement> =\n useCallback(\n (event) => {\n if (event.key === 'Enter') {\n event.preventDefault();\n return;\n }\n\n if (\n onLeadingEdge &&\n event.key === 'Backspace' &&\n (expressionInputRef.current?.textContent ?? '') === ''\n ) {\n event.preventDefault();\n requestAnimationFrame(() => onLeadingEdge?.());\n return;\n }\n\n if (\n onTrailingEdge &&\n event.key === 'Delete' &&\n (expressionInputRef.current?.textContent ?? '') === ''\n ) {\n event.preventDefault();\n requestAnimationFrame(() => onTrailingEdge?.());\n return;\n }\n\n if (event.key === 'ArrowLeft' && onLeadingEdge) {\n const selection = window.getSelection();\n // If cursor is at the start (offset 0), navigate to the previous input\n if (selection?.anchorOffset === 0 && selection?.focusOffset === 0) {\n onLeadingEdge();\n event.preventDefault();\n return;\n }\n }\n\n if (event.key === 'ArrowRight') {\n const selection = window.getSelection();\n const textContent = expressionInputRef.current?.textContent ?? '';\n // If cursor is at the end, navigate to the next input\n if (selection?.anchorOffset === textContent.length) {\n onTrailingEdge?.();\n event.preventDefault();\n return;\n }\n }\n\n if (\n (event.key === 'ArrowUp' || event.key === 'ArrowDown') &&\n !disabled &&\n !readOnly\n ) {\n const element = expressionInputRef.current;\n if (!element) {\n return;\n }\n\n const currentText = element.textContent ?? '';\n if (!currentText.trim()) {\n return;\n }\n\n const direction: 1 | -1 = event.key === 'ArrowUp' ? 1 : -1;\n const newText = spinExpressionValue(currentText, direction);\n\n if (newText === null) {\n return;\n }\n\n event.preventDefault();\n\n // Preserve cursor position\n const selection = window.getSelection();\n const cursorOffset = selection?.focusOffset ?? 0;\n\n // Update the text content and fire the input handler\n element.textContent = newText;\n\n // Restore cursor position (clamped to new text length)\n requestAnimationFrame(() => {\n const textNode = element.firstChild;\n if (textNode && selection) {\n const newOffset = Math.min(cursorOffset, newText.length);\n const range = document.createRange();\n range.setStart(textNode, newOffset);\n range.collapse(true);\n selection.removeAllRanges();\n selection.addRange(range);\n }\n });\n\n // Trigger the input handler to propagate the value change\n element.dispatchEvent(new Event('input', { bubbles: true }));\n }\n },\n [onLeadingEdge, expressionInputRef, disabled, readOnly, onTrailingEdge],\n );\n\n // focus the first spinbutton or the expression input based on the current input mode\n const focus = useCallback(() => {\n switch (valueType) {\n case 'expression':\n expressionInputRef.current?.focus();\n break;\n case 'iso8601':\n firstSpinButtonHandler?.element?.current?.focus();\n break;\n }\n // no need to pass the refs as dependency\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [valueType, firstSpinButtonHandler]);\n\n /**\n * Clears all spin buttons, switches to expression mode, and seeds the\n * expression input with the provided text. Used when a bulk-delete leaves\n * exactly one spin button filled \u2014 that remaining value is carried over as\n * the expression seed rather than leaving a partial date.\n */\n const switchToExpressionMode = useCallback(\n (text: string) => {\n // setExpressionValue is an imperative expression-mode transition. Do not\n // parse the text through getTimeValue here: numeric fallback text such as\n // \"01\" can otherwise be treated as an ISO value and switch the input back\n // to spin-button mode while a bulk clear is still settling.\n const parsedValue = parseTimeAsTimeValue(\n text,\n TZDateMini.tz(getTimezone()).getTime(),\n precision,\n );\n const newValue: TimeValue | null =\n text !== ''\n ? {\n absoluteDate: parsedValue?.absoluteDate ?? '',\n value: text,\n type: 'expression',\n }\n : null;\n\n for (const handler of spinButtonHandlers.values()) {\n handler?.clearValue(false);\n if (handler?.element.current) {\n handler.element.current.textContent = '';\n }\n }\n\n setInputValue(text);\n\n if (valueType === 'expression') {\n // Already in expression mode \u2014 apply synchronously so the next\n // keypress is not dropped by a deferred rAF write.\n setValue(newValue);\n setExpressionEmpty(text === '');\n if (expressionInputRef.current) {\n expressionInputRef.current.textContent = text;\n }\n return;\n }\n\n // Suppress stale spinbutton callbacks during the transition;\n // cleared after the rAF so undo calls are not blocked.\n isSwitchingToExpressionRef.current = true;\n // Update the backing value synchronously. If this waits for rAF, React 19\n // can flush the previous ISO value first and rehydrate the cleared spin\n // buttons before the expression input receives its fallback text.\n setValue(newValue);\n setExpressionEmpty(text === '');\n setValueType('expression');\n requestAnimationFrame(() => {\n if (expressionInputRef.current) {\n expressionInputRef.current.textContent = text;\n }\n isSwitchingToExpressionRef.current = false;\n });\n },\n [expressionInputRef, precision, setValue, spinButtonHandlers, valueType],\n );\n\n // first initialization of the uncontrolled expression value on component mount\n useEffect(() => {\n if (isControlled || value?.type !== 'expression') {\n return;\n }\n formatExpressionValue(value);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // if the spinbuttons are empty ...\n useEffect(() => {\n // Don't run the empty spinbutton check on component mount.\n if (firstRun.current) {\n firstRun.current = false;\n return;\n }\n\n // ... switch to expression input\n if (valueType === 'iso8601' && spinButtonsEmpty) {\n // eslint-disable-next-line react-hooks/set-state-in-effect\n resetToExpressionMode();\n\n // wait until the expression input is visible to set the focus\n setTimeout(() => {\n expressionInputRef?.current?.focus();\n });\n }\n // only react on empty state changes\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [spinButtonsEmpty]);\n\n useEffect(() => {\n if (valueType !== 'expression') {\n return;\n }\n\n if (empty) {\n // eslint-disable-next-line react-hooks/set-state-in-effect\n setInputValue('');\n return;\n }\n\n if (expressionInputRef.current?.textContent) {\n setInputValue(expressionInputRef.current?.textContent); // fixes validating initial expression value in the DateTimeRangePicker\n }\n // valueType can be excluded because empty already depends on it\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [empty]);\n\n return {\n empty,\n spinButtons,\n spinButtonHandlers,\n value,\n valueType,\n inputValue,\n expressionInputHandler,\n expressionOnFocusHandler,\n expressionOnBlurHandler,\n expressionOnKeyDownHandler,\n onPaste,\n pasteText,\n onPasteUndoKeyDown,\n clearPasteUndo: () => {\n pasteUndoRef.current = null;\n },\n focus,\n switchToExpressionMode,\n setInputValue,\n };\n};\n"],
|
|
4
|
+
"sourcesContent": ["import { TZDateMini } from '@date-fns/tz';\nimport {\n ClipboardEventHandler,\n FocusEventHandler,\n FocusEvent as ReactFocusEvent,\n ReactEventHandler,\n KeyboardEventHandler as ReactKeyboardEventHandler,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n type RefObject,\n} from 'react';\n\nimport {\n _parseTimeExpression,\n parseTimeAsTimeValue,\n} from '@dynatrace-sdk/units';\nimport { getTimezone } from '@dynatrace-sdk/user-preferences';\n\nimport { useDateTimeParser } from './useDateTimeParser.js';\nimport { spinExpressionValue } from './useExpressionSpin.js';\nimport { useAriaLabelingProps } from '../../../core/hooks/useAriaLabelingProps.js';\nimport { useControllableState } from '../../../core/hooks/useControllableState.js';\nimport { isEqualTimeValue } from '../../../core/time/helpers.js';\nimport { useDateTimePickerStore } from '../../../core/time/timeframeStore/useTimeframeStore.js';\nimport type { TimeValue } from '../../../core/types/time.js';\nimport { useDateTimePicker } from '../../date-time-picker/hooks/useDateTimePicker.js';\nimport {\n formatTimeValue,\n getTimeValue,\n} from '../../forms-core/time/timeParser.js';\nimport { useSelection } from '../../spin-buttons/hooks/useSelection.js';\nimport type { NumberSpinButtonRef } from '../../spin-buttons/number-spin-button/types.js';\nimport type { SpinButtonHandler } from '../../spin-buttons/spin-button-group/types.js';\nimport {\n captureUndoSnapshot,\n isContentModifyingKey,\n normalizeISOInput,\n parseDateOnlyToISO,\n parseTimeOnlyToISO,\n partialDateTimeToISO,\n tryParsePartialDate,\n tryParsePartialTime,\n} from '../helpers.js';\nimport {\n getExpressionCursorOffset,\n restoreExpressionCursorOffset,\n} from '../selection-helpers.js';\nimport type { DateTimeInputProps, UndoSnapshot } from '../types.js';\n\nfunction isNumberSpinButton(\n handler: SpinButtonHandler | undefined,\n): handler is NumberSpinButtonRef {\n return handler?.type === 'number';\n}\n\nconst DATE_PART_TYPES: Set<Intl.DateTimeFormatPart['type']> = new Set([\n 'day',\n 'month',\n 'year',\n]);\nconst TIME_PART_TYPES: Set<Intl.DateTimeFormatPart['type']> = new Set([\n 'hour',\n 'minute',\n 'second',\n 'fractionalSecond',\n 'dayPeriod',\n]);\n\n/**\n * Inserts plain text at the current cursor position, replacing any active selection.\n */\nconst insertTextAtCursor = (text: string) => {\n const selection = window.getSelection();\n if (selection?.rangeCount) {\n const range = selection.getRangeAt(0);\n range.deleteContents();\n const textNode = document.createTextNode(text);\n range.insertNode(textNode);\n range.setStartAfter(textNode);\n range.collapse(true);\n selection.removeAllRanges();\n selection.addRange(range);\n }\n};\n\n/**\n * Returns true when at least one non-literal spin button is empty.\n */\nconst hasAnyEmptySpinButton = (\n handlersRef: RefObject<\n Map<\n keyof Intl.DateTimeFormatPartTypesRegistry,\n SpinButtonHandler | null | undefined\n >\n >,\n): boolean =>\n Array.from(handlersRef.current?.entries() ?? []).some(\n ([type, handler]) =>\n handler &&\n type !== 'literal' &&\n handler.element.current?.textContent === '',\n );\n\n/**\n * Pastes text into the expression contenteditable span, either at the cursor\n * position (when the selection is inside the span) or by replacing its content.\n */\nconst pasteIntoExpressionInput = (\n element: RefObject<HTMLSpanElement | null>,\n text: string,\n): void => {\n if (element.current) {\n const selection = window.getSelection();\n const range = selection?.rangeCount ? selection.getRangeAt(0) : null;\n\n if (\n range &&\n element.current.contains(range.startContainer) &&\n element.current.contains(range.endContainer)\n ) {\n insertTextAtCursor(text);\n } else {\n element.current.textContent = text;\n moveCursorToEnd(element.current);\n }\n\n element.current.dispatchEvent(new InputEvent('input', { bubbles: true }));\n }\n};\n\n/**\n * Moves the cursor (selection) to the end of the given element's content.\n */\nconst moveCursorToEnd = (element: HTMLSpanElement | null | undefined) => {\n if (element) {\n const range = document.createRange();\n const selection = window.getSelection();\n range.selectNodeContents(element);\n range.collapse(false);\n selection?.removeAllRanges();\n selection?.addRange(range);\n }\n};\n\n/*\n * A hook that provides the default functionality for the DateTimeInput picker\n */\nexport const useDateTimeInput = (\n props: DateTimeInputProps,\n expressionInputRef: RefObject<HTMLSpanElement | null>,\n) => {\n const {\n disabled,\n readOnly,\n type,\n onChange,\n onLeadingEdge,\n onTrailingEdge,\n dateOnlyPasteAnchor = 'startOfDay',\n onPasteComplete,\n partialTimeAnchorDate,\n }: DateTimeInputProps = props;\n const precision = useDateTimePickerStore((state) =>\n state.precision !== 'day' ? state.precision : 'milliseconds',\n );\n\n const ariaProps = useAriaLabelingProps(props);\n const { regexDateTimeStart, maxValue, types } = useDateTimeParser({\n type,\n });\n // ? INVESTIGATE: without the generic, building the visreg story viewer and unit-test typechecking fails,\n // ? but the components:build target still succeeds without any issues -> why?\n const [value, setValue] = useControllableState<TimeValue | null>(props);\n const isControlled = props.value !== undefined;\n const [valueType, setValueType] = useState(value?.type ?? 'expression');\n const firstRun = useRef(true);\n // Tracks the previous value content so that a parent re-render that passes a\n // new object reference with the same content does not trigger formatExpressionValue\n // and reset DOM edits that haven't propagated through React state yet.\n const prevValueRef = useRef<TimeValue | null | undefined>(undefined);\n const [expressionEmpty, setExpressionEmpty] = useState(\n !expressionInputRef.current?.textContent,\n );\n const [inputValue, setInputValue] = useState('');\n // Skips no-op setInputValue calls in the [value] effect. Passive-effect\n // writes that React can't bail out on schedule SyncLane commits that\n // accumulate on rapid keypresses.\n const lastInputValueRef = useRef(inputValue);\n lastInputValueRef.current = inputValue;\n const pasteUndoRef = useRef<{\n snapshot: UndoSnapshot;\n focusTarget: Element | null;\n expressionCursorOffset?: number;\n } | null>(null);\n\n useEffect(() => {\n return () => {\n pasteUndoRef.current = null;\n };\n }, []);\n\n // Tracks the last valid absoluteDate to pass a stable, parseable ISO string\n // to useDateTimePicker while props.value temporarily has absoluteDate:'' during\n // partial spinbutton editing. Keeps useDateTimePicker.value prop unchanged so\n // its internal useEffect doesn't re-run and clear the spinbuttons.\n const lastValidAbsoluteDateRef = useRef<string | null>(\n value?.type === 'iso8601' && value.absoluteDate ? value.absoluteDate : null,\n );\n // True only during the requestAnimationFrame window opened by switchToExpressionMode.\n // Used to suppress stale spinbutton onChange callbacks that fire while the mode\n // transition is in flight, without blocking legitimate restore/undo calls.\n const isSwitchingToExpressionRef = useRef(false);\n\n // Use valueType (local state) not value.type (controlled prop) as the gate \u2014\n // the controlled prop can temporarily become type:'expression' when the store\n // echoes back a partial invalid value for validation while we're still in\n // spinbutton mode.\n if (\n valueType === 'iso8601' &&\n value?.type === 'iso8601' &&\n value.absoluteDate\n ) {\n lastValidAbsoluteDateRef.current = value.absoluteDate;\n }\n const spinButtonValue =\n valueType === 'iso8601' ? lastValidAbsoluteDateRef.current : null;\n\n // Stores the date parts filled in by a partial paste so the focus can target\n // the first spin button that was not filled.\n const pendingFocusPartsRef = useRef<Set<\n keyof Intl.DateTimeFormatPartTypesRegistry\n > | null>(null);\n\n const {\n spinButtons,\n handlers: spinButtonHandlers,\n empty: spinButtonsEmpty,\n applyDateTime,\n firstSpinButtonHandler,\n } = useDateTimePicker({\n type,\n precision,\n disabled,\n readOnly,\n valueType,\n value: spinButtonValue,\n onChange: (newIsoDateTime) => {\n const newValue = getTimeValue(newIsoDateTime ?? undefined, precision);\n\n if (newValue === null || newValue === undefined) {\n return;\n }\n\n // Suppress stale spinbutton callbacks that fire while switchToExpressionMode\n // is transitioning. Any other caller (e.g. undo restore) is allowed through.\n if (isSwitchingToExpressionRef.current) {\n return;\n }\n\n if (expressionInputRef.current) {\n expressionInputRef.current.textContent = '';\n }\n\n // If undo (or another caller) pushes a value while we're in expression mode,\n // switch back to spinbutton mode now.\n if (valueType !== 'iso8601') {\n setValueType('iso8601');\n }\n\n // Forward invalid values (empty string or unparseable partial locale string)\n // to onChange so the store validates and shows errors, but skip setValue so\n // props.value stays stable and spinbuttons are not cleared.\n if (newIsoDateTime === '' || newValue?.absoluteDate === '') {\n onChange?.(newValue);\n return;\n }\n\n setInputValue(newValue.value);\n // only update the value if the newTimeValue differs from the prev. one\n setValue((prevValue) =>\n isEqualTimeValue(prevValue, newValue) ? prevValue : newValue,\n );\n },\n ...ariaProps,\n });\n\n const empty = useMemo(\n () => (valueType === 'expression' ? expressionEmpty : spinButtonsEmpty),\n [valueType, expressionEmpty, spinButtonsEmpty],\n );\n\n // Shared state reset when switching (back) to expression mode.\n const resetToExpressionMode = useCallback(\n (expressionEmpty = true) => {\n setValueType('expression');\n setValue(null);\n setInputValue('');\n setExpressionEmpty(expressionEmpty);\n lastValidAbsoluteDateRef.current = null;\n },\n [setValue],\n );\n\n // Tracks the last absoluteDate seen by the controlled-value effect.\n // Used to distinguish a genuine value re-application (absoluteDate changed,\n // e.g. from '' back to a valid ISO string) from an outdated reference change\n // (the store re-parsed a sibling field and created a new object with the\n // same absoluteDate).\n const prevAbsoluteDateRef = useRef<string | null>(null);\n\n // Called on onBlur to sanitize the current expression. Declared here (before\n // the [value] useEffect below) so that React Compiler's immutability analysis\n // can confirm the reference is available at the time the effect is registered.\n const formatExpressionValue = useCallback(\n (value: TimeValue | null) => {\n if (!expressionInputRef.current) {\n return;\n }\n const formattedValue = value ? formatTimeValue(value) : '';\n const currentValue = formatTimeValue(\n expressionInputRef.current?.textContent ?? '',\n );\n\n // only update if the current value differs from the new value\n // don't update the textnode while typing but allow e.g. pasting a new expression\n if (currentValue !== formattedValue) {\n expressionInputRef.current.textContent = formattedValue;\n }\n },\n // no use in adding the expressionInputRef to the dep. array\n // oxlint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n\n // Keep a ref to the latest spinButtonHandlers so that focus helpers\n // inside requestAnimationFrame always use the current map.\n const spinButtonHandlersRef = useRef(spinButtonHandlers);\n spinButtonHandlersRef.current = spinButtonHandlers;\n\n // switch input mode based on controlled value change\n useEffect(() => {\n const prevValue = prevValueRef.current;\n prevValueRef.current = value;\n\n const applyInputValue = (next: string) => {\n if (lastInputValueRef.current === next) {\n return;\n }\n lastInputValueRef.current = next;\n // oxlint-disable-next-line react-hooks/set-state-in-effect\n setInputValue(next);\n };\n\n if (value?.type === 'iso8601' && !spinButtonsEmpty) {\n applyInputValue(value.value);\n }\n\n // ignore if in uncontrolled mode\n if (!isControlled || typeof value === 'string') {\n return;\n }\n\n const prevAbsoluteDate = prevAbsoluteDateRef.current;\n prevAbsoluteDateRef.current = value?.absoluteDate ?? null;\n\n // reset input if value is null\n if (!value) {\n setValueType('expression');\n formatExpressionValue(null);\n const input = expressionInputRef.current?.textContent;\n setExpressionEmpty(input === '');\n applyDateTime(null);\n lastValidAbsoluteDateRef.current = null;\n return;\n }\n\n // Skip values with empty absoluteDate: partial/invalid intermediate states\n // forwarded to the store for validation only. The spinbuttons manage their\n // own display; reacting here would switch to 'expression' mode and call\n // formatExpressionValue, clearing the display.\n if (value.absoluteDate === '') {\n return;\n }\n\n // apply value to expression\n // the spinbutton update is handled within the useSpinButton hook internally\n if (valueType !== value.type) {\n setValueType(value.type);\n }\n applyInputValue(value.value);\n if (value.type === 'expression') {\n // Only reformat the DOM when the expression content has actually changed.\n // A parent re-render that produces a new object reference with the same\n // value (e.g. due to a sibling input's state update) must not overwrite\n // DOM edits (e.g. partial cross-expression deletion) that haven't yet\n // propagated back through React state.\n if (!isEqualTimeValue(prevValue ?? null, value)) {\n formatExpressionValue(value);\n }\n setExpressionEmpty(value.value === '');\n } else if (\n value.type === 'iso8601' &&\n hasAnyEmptySpinButton(spinButtonHandlersRef) &&\n prevAbsoluteDate !== value.absoluteDate\n ) {\n applyDateTime(value.absoluteDate);\n }\n // only react to outside value changes\n // oxlint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n // Focuses the first spin button that is still empty, or the last spin button when\n // everything is filled in.\n const focusFirstUnfilledSpinButton = useCallback(\n (filledParts: Set<keyof Intl.DateTimeFormatPartTypesRegistry>) => {\n const handlers = spinButtonHandlersRef.current;\n for (const [type, handler] of handlers) {\n if (\n handler &&\n type !== 'literal' &&\n !filledParts.has(\n type as keyof Intl.DateTimeFormatPartTypesRegistry,\n ) &&\n handler.element.current?.textContent === ''\n ) {\n handler.element.current?.focus();\n return;\n }\n }\n // Fallback: focus the last spin button when everything is filled.\n let lastHandler: SpinButtonHandler | null = null;\n for (const [, handler] of handlers) {\n if (handler) {\n lastHandler = handler;\n }\n }\n lastHandler?.element?.current?.focus();\n },\n [],\n );\n\n // Focus the first unfilled spin button after a partial paste triggers a mode switch.\n useEffect(() => {\n const filledParts = pendingFocusPartsRef.current;\n if (!filledParts || valueType !== 'iso8601') {\n return;\n }\n pendingFocusPartsRef.current = null;\n\n requestAnimationFrame(() => {\n focusFirstUnfilledSpinButton(filledParts);\n });\n }, [valueType, focusFirstUnfilledSpinButton]);\n\n const { selectAll: expressionInputSelectAll } =\n useSelection(expressionInputRef);\n\n // handles input events on the expression contenteditable span\n const expressionInputHandler: ReactEventHandler<HTMLSpanElement> =\n useCallback(() => {\n if (!expressionInputRef.current) {\n return;\n }\n\n const input = expressionInputRef.current.textContent ?? '';\n\n // Remove <br> added by browser in contenteditable to ensure placeholder works\n if (expressionInputRef.current.innerHTML === '<br>') {\n expressionInputRef.current.innerHTML = '';\n }\n\n // fallback to expression if text content is removed\n if (input === '') {\n setValueType('expression');\n setValue(null);\n setExpressionEmpty(true);\n return;\n }\n\n setExpressionEmpty(false);\n\n // if the input starts like a valid datetime for the current locale, switch to the datetime picker\n const [, carryOver] = regexDateTimeStart.exec(input) ?? [];\n if (Number.parseInt(carryOver) <= maxValue) {\n setValueType('iso8601');\n\n // clear all spinbuttons\n applyDateTime(null);\n lastValidAbsoluteDateRef.current = null;\n\n // get a cleaned and sorted list of spinbutton handlers\n const sortedHandlers = types\n .filter((type) => type !== 'literal')\n .map((type) => spinButtonHandlers.get(type))\n .filter(Boolean) as SpinButtonHandler[];\n const [carryOverSB, focusSB] = sortedHandlers;\n\n // carry over entered value to the next number spinbutton\n isNumberSpinButton(carryOverSB) &&\n carryOverSB.applyText(carryOver, true);\n\n // clear expression input content\n expressionInputRef.current.textContent = '';\n\n // set focus after switch to expression mode happened\n requestAnimationFrame(() => {\n // set focus to second spinbutton\n focusSB?.element.current?.focus();\n });\n return;\n }\n\n // If the user types a number followed by \":\", switch to the datetime picker\n // with the anchor date pre-filled and the typed hour applied, then focus the\n // minute spin button so the user can continue typing the time.\n // The anchor date defaults to today but can be overridden via `partialTimeAnchorDate`\n if (type !== 'date') {\n const colonMatch = /^(\\d{1,2}):$/.exec(input);\n if (colonMatch) {\n const hour = Number.parseInt(colonMatch[1]);\n if (hour <= 23) {\n const base = partialTimeAnchorDate\n ? new TZDateMini(partialTimeAnchorDate, getTimezone())\n : TZDateMini.tz(getTimezone());\n const iso = TZDateMini.tz(\n getTimezone(),\n base.getFullYear(),\n base.getMonth(),\n base.getDate(),\n hour,\n 0,\n 0,\n 0,\n ).toISOString();\n\n const partsToUpdate = new Set<\n keyof Intl.DateTimeFormatPartTypesRegistry\n >(['day', 'month', 'year', 'hour']);\n\n setValueType('iso8601');\n expressionInputRef.current.textContent = '';\n applyDateTime(iso, partsToUpdate);\n\n requestAnimationFrame(() => {\n focusFirstUnfilledSpinButton(partsToUpdate);\n });\n return;\n }\n }\n }\n\n // If the copied text contains the formatted date in the user's locale (e.g.,\n // \"12/24/2024\" or \"25.12.2024\"), switch to iso8601 mode and apply the parsed date\n // fields to the spin buttons.\n const typedPartialDate = tryParsePartialDate(input);\n if (typedPartialDate) {\n const dateResult = partialDateTimeToISO(typedPartialDate, null);\n if (dateResult) {\n setValueType('iso8601');\n expressionInputRef.current.textContent = '';\n applyDateTime(dateResult.iso, dateResult.partsToUpdate);\n\n requestAnimationFrame(() =>\n focusFirstUnfilledSpinButton(dateResult.partsToUpdate ?? new Set()),\n );\n return;\n }\n }\n\n // if input is a valid expression, update the internal value state\n const newValue = getTimeValue(input, precision) ?? null;\n\n if (newValue?.absoluteDate === '') {\n onChange?.(newValue);\n }\n // only update the value if the newTimeValue differs from the prev. one\n setValue((prevValue) =>\n isEqualTimeValue(prevValue, newValue) ? prevValue : newValue,\n );\n\n setInputValue(input);\n }, [\n expressionInputRef,\n regexDateTimeStart,\n maxValue,\n partialTimeAnchorDate,\n precision,\n type,\n setValue,\n applyDateTime,\n focusFirstUnfilledSpinButton,\n types,\n spinButtonHandlers,\n onChange,\n ]);\n\n // select expression text content on focus\n const expressionOnFocusHandler: FocusEventHandler<HTMLSpanElement> =\n useCallback(\n (event: ReactFocusEvent<HTMLSpanElement>) => {\n // If the current selection spans multiple nodes (e.g. a drag-select or\n // Cmd+A across multiple spin buttons / expression inputs), don't collapse\n // it to just this expression input.\n const selection = window.getSelection();\n const selectionSpansMultipleNodes =\n selection !== null &&\n selection.anchorNode !== selection.focusNode &&\n selection.toString().length > 0;\n\n // Also skip if we are in the middle of a programmatic focus + setBaseAndExtent\n // (guarded by data-restoring-selection on the .strato-inputgroup root).\n const isRestoringSelection =\n (event.target as HTMLElement)\n .closest('.strato-inputgroup')\n ?.hasAttribute('data-restoring-selection') ?? false;\n\n // Skip if the user already has a non-collapsed selection inside this\n // expression input (e.g. drag-select or Shift+arrow within one field).\n // Calling selectAll() here would override that intended partial selection.\n const expressionInputEl = event.target as HTMLElement;\n const hasPartialSelectionWithin =\n selection !== null &&\n !selection.isCollapsed &&\n expressionInputEl.contains(selection.anchorNode) &&\n expressionInputEl.contains(selection.focusNode);\n\n if (\n selectionSpansMultipleNodes ||\n isRestoringSelection ||\n hasPartialSelectionWithin\n ) {\n return;\n }\n\n expressionInputSelectAll();\n },\n [expressionInputSelectAll],\n );\n\n // sanitize textnode if content is an expression\n const expressionOnBlurHandler: FocusEventHandler<HTMLSpanElement> =\n useCallback(() => {\n if (expressionInputRef.current && value?.type === 'expression') {\n const currentExpressionInput =\n expressionInputRef.current.textContent ?? '';\n const isValidExpression = _parseTimeExpression(\n currentExpressionInput.trim(),\n );\n\n if (isValidExpression) {\n expressionInputRef.current.textContent = formatTimeValue(value);\n }\n }\n\n // eslint annoyingly wants to add the ref to the dependency list\n // oxlint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n // Shared paste logic used by both the DOM paste event handler and the\n // imperative pasteText method on DateTimeInputRef. Returns true when the\n // paste was handled (caller should preventDefault), false to let native\n // paste proceed (step 4: digits in iso8601 mode).\n const pasteText = useCallback(\n (text: string, skipUndoCapture = false): boolean => {\n if (readOnly) {\n return false;\n }\n\n let trimmedData = normalizeISOInput(text.trim());\n if (!trimmedData) {\n return true;\n }\n\n // Pre-parse locale-specific partial date/time for normalization and step 5.\n const partialDate = tryParsePartialDate(trimmedData);\n const partialTime = tryParsePartialTime(trimmedData);\n const partialResult =\n partialDate || partialTime\n ? partialDateTimeToISO(partialDate, partialTime)\n : null;\n\n // When the result is complete (no partsToUpdate), normalize to ISO so\n // the existing ISO checks (steps 1\u20133) can handle it.\n if (partialResult && !partialResult.partsToUpdate) {\n trimmedData = partialResult.iso;\n }\n\n // Capture undo snapshot before any state mutations unless the caller\n // already owns the snapshot (e.g. range-level paste handler).\n if (!skipUndoCapture) {\n const snapshot = captureUndoSnapshot(\n spinButtonHandlers,\n expressionInputRef.current,\n value,\n valueType,\n );\n\n pasteUndoRef.current = {\n snapshot,\n focusTarget: document.activeElement,\n expressionCursorOffset: expressionInputRef.current\n ? getExpressionCursorOffset(expressionInputRef.current)\n : undefined,\n };\n }\n\n // 1. Date-only paste (e.g. \"2025-01-01\")\n // 2. Time-only paste (e.g. \"02:00Z\", \"14:30:00\")\n const dateOnly = parseDateOnlyToISO(trimmedData, dateOnlyPasteAnchor);\n const timeOnly = parseTimeOnlyToISO(trimmedData);\n const date = dateOnly ?? timeOnly;\n\n if (date) {\n setValueType('iso8601');\n // When spinbuttons are empty (expression mode), apply all parts so the\n // full date is filled in. When parts are already populated, only\n // overwrite the date or time group that matches the pasted value.\n let partsFilter: Set<Intl.DateTimeFormatPart['type']> | undefined;\n if (!spinButtonsEmpty) {\n partsFilter = dateOnly ? DATE_PART_TYPES : TIME_PART_TYPES;\n }\n applyDateTime(date, partsFilter);\n\n // When only a subset of parts was applied, focus the first empty spin\n // button instead of advancing. When all parts were applied skip the check.\n if (partsFilter && hasAnyEmptySpinButton(spinButtonHandlersRef)) {\n focusFirstUnfilledSpinButton(partsFilter);\n } else {\n onPasteComplete?.();\n }\n\n return true;\n }\n\n // 3. Full ISO datetime or expression (e.g. \"2025-01-01T02:00Z\", \"now()-1h\")\n const nextValue = parseTimeAsTimeValue(\n trimmedData,\n TZDateMini.tz(getTimezone()).getTime(),\n precision,\n );\n\n if (nextValue) {\n setValueType(nextValue.type);\n if (nextValue.type === 'expression') {\n formatExpressionValue(nextValue);\n moveCursorToEnd(expressionInputRef.current);\n setValue(nextValue);\n } else {\n applyDateTime(nextValue.absoluteDate);\n }\n onPasteComplete?.();\n return true;\n }\n\n // 4. Allow numbers to be pasted into the spin buttons\n if (valueType === 'iso8601' && /^\\d+$/.test(trimmedData)) {\n return false;\n }\n\n // 5. Partial date/time paste (e.g. \"25.12\", \"14:30\", \"25.12.2024 14:30\")\n // partialResult was pre-computed above the ISO checks.\n if (partialResult?.partsToUpdate) {\n const { iso, partsToUpdate } = partialResult;\n setValueType('iso8601');\n applyDateTime(iso, partsToUpdate);\n\n // Clear any spin button that was not explicitly present in the pasted\n // text (i.e. was a placeholder token or simply absent). This ensures\n // paste always overwrites: fields not carried by the pasted value are\n // emptied rather than left at their previous content.\n for (const [key, handler] of spinButtonHandlersRef.current) {\n if (handler && !partsToUpdate.has(key)) {\n handler.clearValue(true);\n }\n }\n\n if (hasAnyEmptySpinButton(spinButtonHandlersRef)) {\n requestAnimationFrame(() => {\n focusFirstUnfilledSpinButton(partsToUpdate);\n });\n } else {\n onPasteComplete?.();\n }\n\n return true;\n }\n\n // 6. Fallback: switch to expression mode and paste the raw string.\n if (valueType === 'expression') {\n if (expressionInputRef.current) {\n pasteIntoExpressionInput(expressionInputRef, trimmedData);\n }\n } else {\n setValueType('expression');\n if (expressionInputRef.current) {\n expressionInputRef.current.textContent = trimmedData;\n expressionInputRef.current.focus();\n moveCursorToEnd(expressionInputRef.current);\n expressionInputRef.current.dispatchEvent(\n new InputEvent('input', { bubbles: true }),\n );\n }\n }\n\n return true;\n },\n [\n readOnly,\n spinButtonHandlers,\n expressionInputRef,\n value,\n dateOnlyPasteAnchor,\n precision,\n valueType,\n setValue,\n onPasteComplete,\n formatExpressionValue,\n applyDateTime,\n spinButtonsEmpty,\n focusFirstUnfilledSpinButton,\n ],\n );\n\n // clipboard paste handler. apply clipboard content if formatted correctly\n const onPaste: ClipboardEventHandler<HTMLSpanElement> = useCallback(\n (event) => {\n const data = event.clipboardData?.getData('text/plain');\n if (!data) {\n event.preventDefault();\n return;\n }\n if (pasteText(data)) {\n event.preventDefault();\n }\n },\n [pasteText],\n );\n\n // Ctrl+Z / Cmd+Z handler to undo a paste operation.\n const onPasteUndoKeyDown: ReactKeyboardEventHandler<HTMLSpanElement> =\n useCallback(\n (event) => {\n const isCtrlZ = (event.ctrlKey || event.metaKey) && event.key === 'z';\n\n if (!isCtrlZ) {\n // Invalidates the paste snapshot for any other input.\n if (pasteUndoRef.current && isContentModifyingKey(event)) {\n pasteUndoRef.current = null;\n }\n return;\n }\n\n if (!pasteUndoRef.current) {\n // No paste to undo \u2014 block native browser contenteditable undo.\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n const { snapshot, focusTarget, expressionCursorOffset } =\n pasteUndoRef.current;\n pasteUndoRef.current = null;\n\n event.preventDefault();\n event.stopPropagation();\n\n // Restore value type first so the correct UI mode is rendered.\n setValueType(snapshot.valueType);\n\n if (snapshot.valueType === 'iso8601') {\n // Restore spin button values from the snapshot.\n snapshot.spinButtonTexts.forEach((text, type) => {\n const handler = spinButtonHandlers.get(type) ?? null;\n if (!handler) {\n return;\n }\n if (text === '') {\n handler.clearValue(true);\n } else if (handler.type === 'number') {\n handler.applyText(text, true);\n } else {\n handler.searchValue(text[0] ?? '', true);\n }\n });\n } else {\n // Restore expression text content.\n if (expressionInputRef.current) {\n expressionInputRef.current.textContent = snapshot.expressionText;\n }\n setExpressionEmpty(snapshot.expressionText === '');\n }\n\n setValue(snapshot.value);\n setInputValue(snapshot.value?.value ?? '');\n\n requestAnimationFrame(() => {\n // Restore focus after the mode-switch re-render.\n if (\n focusTarget instanceof HTMLElement &&\n focusTarget !== document.activeElement\n ) {\n focusTarget.focus();\n }\n\n // Restore cursor position in the expression input\n if (\n snapshot.valueType === 'expression' &&\n expressionCursorOffset !== undefined &&\n expressionInputRef.current\n ) {\n restoreExpressionCursorOffset(\n expressionInputRef.current,\n expressionCursorOffset,\n );\n }\n });\n },\n [\n spinButtonHandlers,\n expressionInputRef,\n setValue,\n setValueType,\n setExpressionEmpty,\n setInputValue,\n ],\n );\n\n // Handle keyboard events on the expression input: prevent Enter and spin on ArrowUp/ArrowDown\n const expressionOnKeyDownHandler: ReactKeyboardEventHandler<HTMLSpanElement> =\n useCallback(\n (event) => {\n if (event.key === 'Enter') {\n event.preventDefault();\n return;\n }\n\n if (\n onLeadingEdge &&\n event.key === 'Backspace' &&\n (expressionInputRef.current?.textContent ?? '') === ''\n ) {\n event.preventDefault();\n requestAnimationFrame(() => onLeadingEdge?.());\n return;\n }\n\n if (\n onTrailingEdge &&\n event.key === 'Delete' &&\n (expressionInputRef.current?.textContent ?? '') === ''\n ) {\n event.preventDefault();\n requestAnimationFrame(() => onTrailingEdge?.());\n return;\n }\n\n if (event.key === 'ArrowLeft' && onLeadingEdge) {\n const selection = window.getSelection();\n // If cursor is at the start (offset 0), navigate to the previous input\n if (selection?.anchorOffset === 0 && selection?.focusOffset === 0) {\n onLeadingEdge();\n event.preventDefault();\n return;\n }\n }\n\n if (event.key === 'ArrowRight') {\n const selection = window.getSelection();\n const textContent = expressionInputRef.current?.textContent ?? '';\n // If cursor is at the end, navigate to the next input\n if (selection?.anchorOffset === textContent.length) {\n onTrailingEdge?.();\n event.preventDefault();\n return;\n }\n }\n\n if (\n (event.key === 'ArrowUp' || event.key === 'ArrowDown') &&\n !disabled &&\n !readOnly\n ) {\n const element = expressionInputRef.current;\n if (!element) {\n return;\n }\n\n const currentText = element.textContent ?? '';\n if (!currentText.trim()) {\n return;\n }\n\n const direction: 1 | -1 = event.key === 'ArrowUp' ? 1 : -1;\n const newText = spinExpressionValue(currentText, direction);\n\n if (newText === null) {\n return;\n }\n\n event.preventDefault();\n\n // Preserve cursor position\n const selection = window.getSelection();\n const cursorOffset = selection?.focusOffset ?? 0;\n\n // Update the text content and fire the input handler\n element.textContent = newText;\n\n // Restore cursor position (clamped to new text length)\n requestAnimationFrame(() => {\n const textNode = element.firstChild;\n if (textNode && selection) {\n const newOffset = Math.min(cursorOffset, newText.length);\n const range = document.createRange();\n range.setStart(textNode, newOffset);\n range.collapse(true);\n selection.removeAllRanges();\n selection.addRange(range);\n }\n });\n\n // Trigger the input handler to propagate the value change\n element.dispatchEvent(new Event('input', { bubbles: true }));\n }\n },\n [onLeadingEdge, expressionInputRef, disabled, readOnly, onTrailingEdge],\n );\n\n // focus the first spinbutton or the expression input based on the current input mode\n const focus = useCallback(() => {\n switch (valueType) {\n case 'expression':\n expressionInputRef.current?.focus();\n break;\n case 'iso8601':\n firstSpinButtonHandler?.element?.current?.focus();\n break;\n }\n // no need to pass the refs as dependency\n // oxlint-disable-next-line react-hooks/exhaustive-deps\n }, [valueType, firstSpinButtonHandler]);\n\n /**\n * Clears all spin buttons, switches to expression mode, and seeds the\n * expression input with the provided text. Used when a bulk-delete leaves\n * exactly one spin button filled \u2014 that remaining value is carried over as\n * the expression seed rather than leaving a partial date.\n */\n const switchToExpressionMode = useCallback(\n (text: string) => {\n // setExpressionValue is an imperative expression-mode transition. Do not\n // parse the text through getTimeValue here: numeric fallback text such as\n // \"01\" can otherwise be treated as an ISO value and switch the input back\n // to spin-button mode while a bulk clear is still settling.\n const parsedValue = parseTimeAsTimeValue(\n text,\n TZDateMini.tz(getTimezone()).getTime(),\n precision,\n );\n const newValue: TimeValue | null =\n text !== ''\n ? {\n absoluteDate: parsedValue?.absoluteDate ?? '',\n value: text,\n type: 'expression',\n }\n : null;\n\n for (const handler of spinButtonHandlers.values()) {\n handler?.clearValue(false);\n if (handler?.element.current) {\n handler.element.current.textContent = '';\n }\n }\n\n setInputValue(text);\n\n if (valueType === 'expression') {\n // Already in expression mode \u2014 apply synchronously so the next\n // keypress is not dropped by a deferred rAF write.\n setValue(newValue);\n setExpressionEmpty(text === '');\n if (expressionInputRef.current) {\n expressionInputRef.current.textContent = text;\n }\n return;\n }\n\n // Suppress stale spinbutton callbacks during the transition;\n // cleared after the rAF so undo calls are not blocked.\n isSwitchingToExpressionRef.current = true;\n // Update the backing value synchronously. If this waits for rAF, React 19\n // can flush the previous ISO value first and rehydrate the cleared spin\n // buttons before the expression input receives its fallback text.\n setValue(newValue);\n setExpressionEmpty(text === '');\n setValueType('expression');\n requestAnimationFrame(() => {\n if (expressionInputRef.current) {\n expressionInputRef.current.textContent = text;\n }\n isSwitchingToExpressionRef.current = false;\n });\n },\n [expressionInputRef, precision, setValue, spinButtonHandlers, valueType],\n );\n\n // first initialization of the uncontrolled expression value on component mount\n useEffect(() => {\n if (isControlled || value?.type !== 'expression') {\n return;\n }\n formatExpressionValue(value);\n // oxlint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // if the spinbuttons are empty ...\n useEffect(() => {\n // Don't run the empty spinbutton check on component mount.\n if (firstRun.current) {\n firstRun.current = false;\n return;\n }\n\n // ... switch to expression input\n if (valueType === 'iso8601' && spinButtonsEmpty) {\n // eslint-disable-next-line react-hooks/set-state-in-effect\n resetToExpressionMode();\n\n // wait until the expression input is visible to set the focus\n setTimeout(() => {\n expressionInputRef?.current?.focus();\n });\n }\n // only react on empty state changes\n // oxlint-disable-next-line react-hooks/exhaustive-deps\n }, [spinButtonsEmpty]);\n\n useEffect(() => {\n if (valueType !== 'expression') {\n return;\n }\n\n if (empty) {\n // eslint-disable-next-line react-hooks/set-state-in-effect\n setInputValue('');\n return;\n }\n\n if (expressionInputRef.current?.textContent) {\n setInputValue(expressionInputRef.current?.textContent); // fixes validating initial expression value in the DateTimeRangePicker\n }\n // valueType can be excluded because empty already depends on it\n // oxlint-disable-next-line react-hooks/exhaustive-deps\n }, [empty]);\n\n return {\n empty,\n spinButtons,\n spinButtonHandlers,\n value,\n valueType,\n inputValue,\n expressionInputHandler,\n expressionOnFocusHandler,\n expressionOnBlurHandler,\n expressionOnKeyDownHandler,\n onPaste,\n pasteText,\n onPasteUndoKeyDown,\n clearPasteUndo: () => {\n pasteUndoRef.current = null;\n },\n focus,\n switchToExpressionMode,\n setInputValue,\n };\n};\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["expressionEmpty", "value", "type"]
|
|
7
7
|
}
|
|
@@ -68,7 +68,7 @@ function useInternalFormRegistration(options) {
|
|
|
68
68
|
);
|
|
69
69
|
};
|
|
70
70
|
const resolvedId = id ?? formFieldContext.formFieldId ?? // DEPRECATION: APPDEV-18319 - Remove deprecated `controlId`.
|
|
71
|
-
//
|
|
71
|
+
// oxlint-disable-next-line typescript/no-deprecated
|
|
72
72
|
formFieldContext.controlId ?? generatedId;
|
|
73
73
|
const wrappedValidateField = useCallback(
|
|
74
74
|
async (validateOptions) => {
|