@dynatrace/strato-components 3.12.1 → 3.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +185 -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/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/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/AppStateContext.d.ts +12 -0
- package/core/sdk/app-state/AppStateContext.js +14 -1
- package/core/sdk/app-state/AppStateProvider.js +9 -2
- package/core/sdk/app-state/app-state-store.d.ts +3 -0
- package/core/sdk/app-state/app-state-store.js +4 -1
- package/core/sdk/app-state/useAppStateInternal.js +80 -12
- 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/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/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/AppStateContext.js +14 -1
- package/esm/core/sdk/app-state/AppStateContext.js.map +2 -2
- package/esm/core/sdk/app-state/AppStateProvider.js +9 -2
- package/esm/core/sdk/app-state/AppStateProvider.js.map +2 -2
- package/esm/core/sdk/app-state/app-state-store.js +4 -1
- package/esm/core/sdk/app-state/app-state-store.js.map +2 -2
- package/esm/core/sdk/app-state/useAppStateInternal.js +86 -13
- package/esm/core/sdk/app-state/useAppStateInternal.js.map +3 -3
- 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/useRecentFilterSuggestions.js.map +1 -1
- 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/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/filters/filter-field/utils/validation-utils/validation-helper-functions.tsx"],
|
|
4
|
-
"sourcesContent": ["import Colors from '@dynatrace/strato-design-tokens/colors';\n\nimport type { InternalValidatorMap } from './normalize-validator-map.js';\nimport {\n FILTERFIELD_DEFAULT_OPERATORS,\n getAllowedOperatorsForType,\n getOperatorName,\n} from './operator-specification.js';\nimport {\n isFilterFieldRichValuePredicate,\n isFilterFieldValidatorMapDurationSpecification,\n isFilterFieldValidatorMapTypeSpecification,\n isFilterFieldValueSuggestionGroupConfig,\n} from './type-guards.js';\nimport {\n isValidIPAddress,\n isValidSmartscapeId,\n isValidTimestamp,\n isValidUID,\n} from './type-validators.js';\nimport { isDev } from '../../../../core/utils/is-node-environment.js';\nimport type { FilterFieldProps } from '../../FilterField.types.js';\nimport type { FilterFieldStatementNode } from '../../types/tree-nodes.js';\nimport type {\n FilterFieldComparisonOperators,\n FilterFieldCustomTypes,\n FilterFieldPrimitive,\n FilterFieldValuePredicateItem,\n} from '../../types/validation.js';\nimport { getValidValueTypes } from '../suggestions-utils/suggestion-type.js';\n\n/**\n * Checks whether the current operator is a wildcard operator.\n * @internal\n */\nexport function isWildCardOperator(\n currentStatement: FilterFieldStatementNode | undefined,\n): boolean {\n const wildCardOperators = [\n 'starts-with',\n 'ends-with',\n 'contains',\n 'not-starts-with',\n 'not-ends-with',\n 'not-contains',\n ];\n return (\n typeof currentStatement?.comparisonOperator?.value === 'string' &&\n wildCardOperators.includes(currentStatement?.comparisonOperator?.value)\n );\n}\n\n/**\n * Checks whether the value is a valid ipv4 or ipv6 ipaddress.\n */\nfunction isValidIPAddressType(\n valueType: string,\n textValue: string,\n validTypes: (FilterFieldPrimitive | string)[],\n parserConfig?: FilterFieldProps['parserConfig'],\n): boolean {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n if (!parserConfig?.ipAddressConversion && validTypes.includes('IPAddress')) {\n if (isDev()) {\n // eslint-disable-next-line no-console\n console.warn(\n 'IPAddress is configured as a type in the validatorMap of the FilterField. To get full support for IPAddress types please also enable IPAddress conversion in the parserConfig.',\n );\n }\n return valueType === 'Identifier' && isValidIPAddress(textValue);\n } else if (validTypes.includes('IPAddress')) {\n return valueType === 'IPAddress';\n }\n\n return false;\n}\n\n/**\n * Checks whether the value is a valid timestamp type.\n */\nfunction isValidTimestampType(\n valueType: string,\n textValue: string,\n validTypes: (FilterFieldPrimitive | (string & {}))[],\n parserConfig?: FilterFieldProps['parserConfig'],\n): boolean {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n if (!parserConfig?.timestampConversion && validTypes.includes('Timestamp')) {\n if (isDev()) {\n // eslint-disable-next-line no-console\n console.warn(\n 'Timestamp is configured as a type in the validatorMap of the FilterField. To get full support for Timestamp types please also enable Timestamp conversion in the parserConfig.',\n );\n }\n // TODO: check if textValue works for string\n return (\n (valueType === 'Identifier' || valueType === 'String') &&\n isValidTimestamp(textValue)\n );\n } else if (validTypes.includes('Timestamp')) {\n return valueType === 'Timestamp';\n }\n\n return false;\n}\n\n/**\n * Checks whether the value is a valid UID.\n */\nfunction isValidUIDType(\n valueType: string,\n textValue: string,\n validTypes: (FilterFieldPrimitive | (string & {}))[],\n parserConfig?: FilterFieldProps['parserConfig'],\n): boolean {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n if (!parserConfig?.uidConversion && validTypes.includes('UID')) {\n if (isDev()) {\n // eslint-disable-next-line no-console\n console.warn(\n 'UID is configured as a type in the validatorMap of the FilterField. To get full support for UID types please also enable UID conversion in the parserConfig.',\n );\n }\n return valueType === 'Identifier' && isValidUID(textValue);\n } else if (validTypes.includes('UID')) {\n return valueType === 'UID';\n }\n\n return false;\n}\n\n/**\n * Checks whether the value is a valid SmartscapeId.\n */\nfunction isValidSmartscapeIdType(\n valueType: string,\n textValue: string,\n validTypes: (FilterFieldPrimitive | (string & {}))[],\n parserConfig?: FilterFieldProps['parserConfig'],\n): boolean {\n if (\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n !parserConfig?.smartscapeIdConversion &&\n validTypes.includes('SmartscapeId')\n ) {\n if (isDev()) {\n // eslint-disable-next-line no-console\n console.warn(\n 'SmartscapeId is configured as a type in the validatorMap of the FilterField. To get full support for SmartscapeId types please also enable SmartscapeId conversion in the parserConfig.',\n );\n }\n return valueType === 'Identifier' && isValidSmartscapeId(textValue);\n } else if (validTypes.includes('SmartscapeId')) {\n return valueType === 'SmartscapeId';\n }\n\n return false;\n}\n\nfunction checkIsValidType(\n valueType: string,\n valueTextValue: string,\n validTypes: (FilterFieldPrimitive | string)[],\n parserConfig?: FilterFieldProps['parserConfig'],\n customTypes?: FilterFieldCustomTypes,\n): boolean {\n return (\n validTypes.includes('Any') ||\n validTypes.includes(valueType as FilterFieldPrimitive) ||\n (validTypes.includes('String') && valueType === 'Identifier') ||\n (validTypes.includes('Number') && valueType === 'BigInt') ||\n isValidIPAddressType(valueType, valueTextValue, validTypes, parserConfig) ||\n isValidUIDType(valueType, valueTextValue, validTypes, parserConfig) ||\n isValidSmartscapeIdType(\n valueType,\n valueTextValue,\n validTypes,\n parserConfig,\n ) ||\n isValidTimestampType(valueType, valueTextValue, validTypes, parserConfig) ||\n !!isValidCustomType(valueTextValue, customTypes)\n );\n}\n\nfunction hasValuePredicate(\n entry: FilterFieldCustomTypes[string],\n): entry is { valuePredicate: (value: string) => boolean } {\n return (\n !!entry &&\n typeof entry === 'object' &&\n typeof entry.valuePredicate === 'function'\n );\n}\n\n/**\n * Returns the type name when the value is of a custom type.\n */\nexport function isValidCustomType(\n textValue: string,\n customTypes?: FilterFieldCustomTypes,\n): string | boolean {\n if (!customTypes) {\n return false;\n }\n\n for (const [typeName, validatorFn] of Object.entries(customTypes)) {\n if (typeof validatorFn === 'function') {\n if (validatorFn(textValue)) {\n return typeName;\n }\n continue;\n }\n\n if (\n hasValuePredicate(validatorFn) &&\n validatorFn.valuePredicate(textValue)\n ) {\n return typeName;\n }\n }\n\n return false;\n}\n\n/**\n * checks whether an operator is valid based on the FilterField validatormap\n * @internal\n */\nexport function isValidOperator(\n textValue: string,\n key: string | undefined,\n internalValidatorMap: InternalValidatorMap | undefined,\n parserConfig?: FilterFieldProps['parserConfig'],\n): boolean {\n const operatorName = getOperatorName(textValue);\n\n if (operatorName === '') {\n return false;\n }\n\n // If search is not enabled in the filter field, search operators are already\n // marked as errors with a more general error message. To not add an additional\n // error message, search operators are always considered valid here.\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n if (operatorName === 'search' && !parserConfig?.searchConversion) {\n return true;\n }\n\n return getValidOperators(key, internalValidatorMap, parserConfig).includes(\n operatorName,\n );\n}\n\n/**\n * checks whether a value is valid based on the FilterField validatormap\n * @internal\n */\nexport function isValidValue(\n key: string | undefined,\n valueTextValue: string,\n valueType: string,\n internalValidatorMap: InternalValidatorMap | undefined,\n currentStatement: FilterFieldStatementNode,\n filterFieldValue: string,\n customTypes?: FilterFieldCustomTypes,\n parserConfig?: FilterFieldProps['parserConfig'],\n): {\n isValid: boolean;\n message?: string;\n validTypes?: (FilterFieldPrimitive | string)[];\n} {\n if (!key || !internalValidatorMap) {\n return { isValid: true };\n }\n\n const predicate = internalValidatorMap.normalizedKeys.byKey.get(key);\n\n // No key predicate for the given key - assume value is valid.\n if (!predicate) {\n return { isValid: true };\n }\n\n const validValues = predicate.valuePredicate;\n\n if (typeof validValues === 'function') {\n const result = validValues({\n currentStatement,\n filterFieldValue,\n });\n\n if (typeof result === 'boolean') {\n return { isValid: result };\n }\n\n return { isValid: false, message: result };\n }\n\n // If the value is a variable we don't have any further information on what\n // the actual type is, so we skip the type-based validation below.\n // Function predicates above are still called as users can do their own checks.\n if (valueType === 'Variable') {\n return { isValid: true };\n }\n\n // Determine valid types \u2014 predicate.valueType takes precedence over inference from valuePredicate.\n // DEPRECATION: [APPDEV-16872] BREAKING-CHANGE\n // TODO: The valueType inference fallback can be removed once the deprecated FilterFieldValidatorMapTypePredicate format is removed.\n let validTypes: (FilterFieldPrimitive | string)[];\n let hasLiteralValues: boolean;\n\n if (predicate.valueType) {\n validTypes = Array.isArray(predicate.valueType)\n ? predicate.valueType\n : [predicate.valueType];\n hasLiteralValues = Array.isArray(validValues);\n } else if (validValues !== undefined) {\n // Infer valid types from valuePredicate if valueType is not explicitly configured.\n ({ types: validTypes, hasLiteralValues } = getValidValueTypes(validValues));\n } else {\n // Neither valuePredicate nor valueType configured \u2014 any value is valid.\n return { isValid: true };\n }\n\n const isValidType = checkIsValidType(\n valueType,\n valueTextValue,\n validTypes,\n parserConfig,\n customTypes,\n );\n\n if (Array.isArray(validValues)) {\n let textMatches = false;\n\n for (const validValue of validValues) {\n if (isFilterFieldValidatorMapTypeSpecification(validValue)) {\n if ((!isValidType && !hasLiteralValues) || isValidType) {\n return { isValid: isValidType, validTypes };\n }\n } else if (isFilterFieldValueSuggestionGroupConfig(validValue)) {\n if (\n validValue.suggestions.some((suggestion) => {\n if (isFilterFieldValidatorMapTypeSpecification(suggestion)) {\n return false;\n }\n\n return literalMatchesTextValue(valueTextValue, suggestion);\n })\n ) {\n textMatches = true;\n }\n\n continue;\n } else if (literalMatchesTextValue(valueTextValue, validValue)) {\n textMatches = true;\n }\n }\n\n return {\n isValid: textMatches || isWildCardOperator(currentStatement),\n validTypes,\n };\n }\n\n if (isFilterFieldValidatorMapTypeSpecification(validValues)) {\n return { isValid: isValidType, validTypes };\n }\n\n if (isFilterFieldValueSuggestionGroupConfig(validValues)) {\n const groupSuggestionMatches = validValues.suggestions.some(\n (suggestion) => {\n if (isFilterFieldValidatorMapTypeSpecification(suggestion)) {\n return false;\n }\n\n return literalMatchesTextValue(valueTextValue, suggestion);\n },\n );\n return {\n isValid: groupSuggestionMatches || isWildCardOperator(currentStatement),\n };\n }\n\n // validValues may be undefined when only config.valueType is set.\n if (validValues === undefined) {\n return { isValid: isValidType };\n }\n\n return {\n isValid: literalMatchesTextValue(valueTextValue, validValues),\n validTypes,\n };\n}\n\n/**\n * Checks whether a literal predicate value (string, number, boolean, or duration)\n * matches the given filter field text value after stripping escape backslashes.\n */\nfunction literalMatchesTextValue(\n textValue: string,\n predicate: FilterFieldValuePredicateItem,\n): boolean {\n if (isFilterFieldValidatorMapDurationSpecification(predicate)) {\n return textValue === `${predicate.value}${predicate.unit}`;\n }\n if (isFilterFieldRichValuePredicate(predicate)) {\n const cleaned = `${predicate.value}`\n .replaceAll(/(?<!\\\\)(?:\\\\\\\\)*(\\\\)(?!\\\\)/g, '')\n .replaceAll(/(\\\\\\\\)/g, '\\\\');\n\n return textValue === cleaned;\n }\n // The predicate string includes backslashes as provided in the validator map.\n // Single backslashes are removed and double backslashes are converted to single\n // backslashes to match the parsed text value.\n const cleaned = `${predicate}`\n .replaceAll(/(?<!\\\\)(?:\\\\\\\\)*(\\\\)(?!\\\\)/g, '')\n .replaceAll(/(\\\\\\\\)/g, '\\\\');\n return textValue === cleaned;\n}\n\n/**\n * Returns the textvalue of a filterfield value predicate that is neither a function nor an array.\n * @internal\n */\nexport function getValuePredicateTextValue(\n predicate: FilterFieldValuePredicateItem,\n) {\n if (isFilterFieldValidatorMapDurationSpecification(predicate)) {\n return `${predicate.value}${predicate.unit}`;\n } else if (isFilterFieldRichValuePredicate(predicate)) {\n return `${predicate.value}`;\n } else {\n return `${predicate}`;\n }\n}\n\n/**\n * Returns valid operators for the given key.\n * @internal\n */\nexport function getValidOperators(\n key: string | undefined,\n internalValidatorMap: InternalValidatorMap | undefined,\n parserConfig?: FilterFieldProps['parserConfig'],\n): FilterFieldComparisonOperators[] {\n key =\n typeof key === 'string'\n ? key.replace(/^\"(.*?(?<!\\\\)(?:\\\\\\\\)*)\"$/, '$1')\n : key;\n\n const defaultOperators: FilterFieldComparisonOperators[] = [\n ...FILTERFIELD_DEFAULT_OPERATORS,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n ...(parserConfig?.searchConversion\n ? (['search'] as FilterFieldComparisonOperators[])\n : []),\n ];\n\n if (!internalValidatorMap) {\n return defaultOperators;\n }\n\n const globalOperators =\n internalValidatorMap.comparisonOperators || defaultOperators;\n\n const predicate = key\n ? internalValidatorMap.normalizedKeys.byKey.get(key)\n : undefined;\n\n // Incomplete search operator, we don\u00B4t want to show operator suggestions.\n if (!predicate && key === '*') {\n return [];\n }\n\n if (!predicate) {\n return globalOperators;\n }\n\n // Early exit if explicit operators are defined for the key.\n if (predicate.comparisonOperators) {\n return predicate.comparisonOperators;\n }\n\n // Determine allowed types. Explicit valueType takes precedence over valuePredicate inference.\n let allowedTypes: (FilterFieldPrimitive | string)[] | 'Any';\n if (predicate.valueType) {\n allowedTypes = Array.isArray(predicate.valueType)\n ? predicate.valueType\n : [predicate.valueType];\n } else if (\n !predicate.valuePredicate ||\n typeof predicate.valuePredicate === 'function'\n ) {\n allowedTypes = 'Any';\n } else {\n allowedTypes = getValidValueTypes(predicate.valuePredicate).types;\n }\n\n if (allowedTypes !== 'Any') {\n return intersectOperators(\n globalOperators,\n allowedTypes.reduce((acc: FilterFieldComparisonOperators[], type) => {\n acc.push(...getAllowedOperatorsForType(type));\n return acc;\n }, []),\n );\n }\n\n return globalOperators;\n}\n\n/**\n * Maps operator names to their short names.\n */\nconst OPERATOR_SHORT_NAME_MAP: Record<string, string> = {\n equals: '=',\n 'not-equals': '!=',\n 'less-than': '<',\n 'less-or-equal': '<=',\n 'greater-than': '>',\n 'greater-or-equal': '>=',\n 'matches-phrase': '~',\n 'not-matches-phrase': '!~',\n in: 'in',\n 'not in': 'not in',\n contains: 'contains',\n 'starts-with': 'starts-with',\n 'ends-with': 'ends-with',\n 'not-starts-with': 'not-starts-with',\n 'not-contains': 'not-contains',\n 'not-ends-with': 'not-ends-with',\n exists: '= *',\n 'not-exists': '!= *',\n};\n\n/**\n * Returns valid operator short names\n * @internal\n */\nexport function getValidOperatorsShort(\n key: string | undefined,\n internalValidatorMap: InternalValidatorMap | undefined,\n parserConfig: FilterFieldProps['parserConfig'],\n) {\n const operators = getValidOperators(key, internalValidatorMap, parserConfig);\n const result: string[] = [];\n\n for (const [key, value] of Object.entries(OPERATOR_SHORT_NAME_MAP)) {\n if (operators.includes(key as FilterFieldComparisonOperators)) {\n result.push(value);\n }\n }\n\n return result;\n}\n\n/**\n * Lists valid operator short names (syntax colored, comma separated)\n * @internal\n */\nexport function getValidOperatorsColored(\n key: string | undefined,\n internalValidatorMap: InternalValidatorMap | undefined,\n parserConfig: FilterFieldProps['parserConfig'],\n) {\n return getValidOperatorsShort(key, internalValidatorMap, parserConfig)\n .map(\n (operator) =>\n `<span style=\"color: ${Colors.Syntax.Operators}\">${operator}</span>`,\n )\n .join(', ');\n}\n\n/**\n * Get colored search operator\n * @internal\n */\nexport function getColoredSearchOperator() {\n return `<span style=\"color: ${Colors.Syntax.Variable}\">*</span> <span style=\"color: ${Colors.Syntax.Operators}\">~</span>`;\n}\n\nfunction intersectOperators(\n globalOperators: FilterFieldComparisonOperators[],\n operators: FilterFieldComparisonOperators[],\n) {\n return globalOperators.filter((op) => operators.includes(op));\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["import Colors from '@dynatrace/strato-design-tokens/colors';\n\nimport type { InternalValidatorMap } from './normalize-validator-map.js';\nimport {\n FILTERFIELD_DEFAULT_OPERATORS,\n getAllowedOperatorsForType,\n getOperatorName,\n} from './operator-specification.js';\nimport {\n isFilterFieldRichValuePredicate,\n isFilterFieldValidatorMapDurationSpecification,\n isFilterFieldValidatorMapTypeSpecification,\n isFilterFieldValueSuggestionGroupConfig,\n} from './type-guards.js';\nimport {\n isValidIPAddress,\n isValidSmartscapeId,\n isValidTimestamp,\n isValidUID,\n} from './type-validators.js';\nimport { isDev } from '../../../../core/utils/is-node-environment.js';\nimport type { FilterFieldProps } from '../../FilterField.types.js';\nimport type { FilterFieldStatementNode } from '../../types/tree-nodes.js';\nimport type {\n FilterFieldComparisonOperators,\n FilterFieldCustomTypes,\n FilterFieldPrimitive,\n FilterFieldValuePredicateItem,\n} from '../../types/validation.js';\nimport { getValidValueTypes } from '../suggestions-utils/suggestion-type.js';\n\n/**\n * Checks whether the current operator is a wildcard operator.\n * @internal\n */\nexport function isWildCardOperator(\n currentStatement: FilterFieldStatementNode | undefined,\n): boolean {\n const wildCardOperators = [\n 'starts-with',\n 'ends-with',\n 'contains',\n 'not-starts-with',\n 'not-ends-with',\n 'not-contains',\n 'matches-wildcard',\n 'not-matches-wildcard',\n ];\n return (\n typeof currentStatement?.comparisonOperator?.value === 'string' &&\n wildCardOperators.includes(currentStatement?.comparisonOperator?.value)\n );\n}\n\n/**\n * Checks whether the value is a valid ipv4 or ipv6 ipaddress.\n */\nfunction isValidIPAddressType(\n valueType: string,\n textValue: string,\n validTypes: (FilterFieldPrimitive | string)[],\n parserConfig?: FilterFieldProps['parserConfig'],\n): boolean {\n // oxlint-disable-next-line typescript/no-deprecated\n if (!parserConfig?.ipAddressConversion && validTypes.includes('IPAddress')) {\n if (isDev()) {\n // oxlint-disable-next-line no-console\n console.warn(\n 'IPAddress is configured as a type in the validatorMap of the FilterField. To get full support for IPAddress types please also enable IPAddress conversion in the parserConfig.',\n );\n }\n return valueType === 'Identifier' && isValidIPAddress(textValue);\n } else if (validTypes.includes('IPAddress')) {\n return valueType === 'IPAddress';\n }\n\n return false;\n}\n\n/**\n * Checks whether the value is a valid timestamp type.\n */\nfunction isValidTimestampType(\n valueType: string,\n textValue: string,\n validTypes: (FilterFieldPrimitive | (string & {}))[],\n parserConfig?: FilterFieldProps['parserConfig'],\n): boolean {\n // oxlint-disable-next-line typescript/no-deprecated\n if (!parserConfig?.timestampConversion && validTypes.includes('Timestamp')) {\n if (isDev()) {\n // oxlint-disable-next-line no-console\n console.warn(\n 'Timestamp is configured as a type in the validatorMap of the FilterField. To get full support for Timestamp types please also enable Timestamp conversion in the parserConfig.',\n );\n }\n // TODO: check if textValue works for string\n return (\n (valueType === 'Identifier' || valueType === 'String') &&\n isValidTimestamp(textValue)\n );\n } else if (validTypes.includes('Timestamp')) {\n return valueType === 'Timestamp';\n }\n\n return false;\n}\n\n/**\n * Checks whether the value is a valid UID.\n */\nfunction isValidUIDType(\n valueType: string,\n textValue: string,\n validTypes: (FilterFieldPrimitive | (string & {}))[],\n parserConfig?: FilterFieldProps['parserConfig'],\n): boolean {\n // oxlint-disable-next-line typescript/no-deprecated\n if (!parserConfig?.uidConversion && validTypes.includes('UID')) {\n if (isDev()) {\n // oxlint-disable-next-line no-console\n console.warn(\n 'UID is configured as a type in the validatorMap of the FilterField. To get full support for UID types please also enable UID conversion in the parserConfig.',\n );\n }\n return valueType === 'Identifier' && isValidUID(textValue);\n } else if (validTypes.includes('UID')) {\n return valueType === 'UID';\n }\n\n return false;\n}\n\n/**\n * Checks whether the value is a valid SmartscapeId.\n */\nfunction isValidSmartscapeIdType(\n valueType: string,\n textValue: string,\n validTypes: (FilterFieldPrimitive | (string & {}))[],\n parserConfig?: FilterFieldProps['parserConfig'],\n): boolean {\n if (\n // oxlint-disable-next-line typescript/no-deprecated\n !parserConfig?.smartscapeIdConversion &&\n validTypes.includes('SmartscapeId')\n ) {\n if (isDev()) {\n // oxlint-disable-next-line no-console\n console.warn(\n 'SmartscapeId is configured as a type in the validatorMap of the FilterField. To get full support for SmartscapeId types please also enable SmartscapeId conversion in the parserConfig.',\n );\n }\n return valueType === 'Identifier' && isValidSmartscapeId(textValue);\n } else if (validTypes.includes('SmartscapeId')) {\n return valueType === 'SmartscapeId';\n }\n\n return false;\n}\n\nfunction checkIsValidType(\n valueType: string,\n valueTextValue: string,\n validTypes: (FilterFieldPrimitive | string)[],\n parserConfig?: FilterFieldProps['parserConfig'],\n customTypes?: FilterFieldCustomTypes,\n): boolean {\n return (\n validTypes.includes('Any') ||\n validTypes.includes(valueType as FilterFieldPrimitive) ||\n (validTypes.includes('String') && valueType === 'Identifier') ||\n (validTypes.includes('Number') && valueType === 'BigInt') ||\n isValidIPAddressType(valueType, valueTextValue, validTypes, parserConfig) ||\n isValidUIDType(valueType, valueTextValue, validTypes, parserConfig) ||\n isValidSmartscapeIdType(\n valueType,\n valueTextValue,\n validTypes,\n parserConfig,\n ) ||\n isValidTimestampType(valueType, valueTextValue, validTypes, parserConfig) ||\n !!isValidCustomType(valueTextValue, customTypes)\n );\n}\n\nfunction hasValuePredicate(\n entry: FilterFieldCustomTypes[string],\n): entry is { valuePredicate: (value: string) => boolean } {\n return (\n !!entry &&\n typeof entry === 'object' &&\n typeof entry.valuePredicate === 'function'\n );\n}\n\n/**\n * Returns the type name when the value is of a custom type.\n */\nexport function isValidCustomType(\n textValue: string,\n customTypes?: FilterFieldCustomTypes,\n): string | boolean {\n if (!customTypes) {\n return false;\n }\n\n for (const [typeName, validatorFn] of Object.entries(customTypes)) {\n if (typeof validatorFn === 'function') {\n if (validatorFn(textValue)) {\n return typeName;\n }\n continue;\n }\n\n if (\n hasValuePredicate(validatorFn) &&\n validatorFn.valuePredicate(textValue)\n ) {\n return typeName;\n }\n }\n\n return false;\n}\n\n/**\n * checks whether an operator is valid based on the FilterField validatormap\n * @internal\n */\nexport function isValidOperator(\n textValue: string,\n key: string | undefined,\n internalValidatorMap: InternalValidatorMap | undefined,\n parserConfig?: FilterFieldProps['parserConfig'],\n): boolean {\n const operatorName = getOperatorName(textValue);\n\n if (operatorName === '') {\n return false;\n }\n\n // If search is not enabled in the filter field, search operators are already\n // marked as errors with a more general error message. To not add an additional\n // error message, search operators are always considered valid here.\n // oxlint-disable-next-line typescript/no-deprecated\n if (operatorName === 'search' && !parserConfig?.searchConversion) {\n return true;\n }\n\n return getValidOperators(key, internalValidatorMap, parserConfig).includes(\n operatorName,\n );\n}\n\n/**\n * checks whether a value is valid based on the FilterField validatormap\n * @internal\n */\nexport function isValidValue(\n key: string | undefined,\n valueTextValue: string,\n valueType: string,\n internalValidatorMap: InternalValidatorMap | undefined,\n currentStatement: FilterFieldStatementNode,\n filterFieldValue: string,\n customTypes?: FilterFieldCustomTypes,\n parserConfig?: FilterFieldProps['parserConfig'],\n): {\n isValid: boolean;\n message?: string;\n validTypes?: (FilterFieldPrimitive | string)[];\n} {\n if (!key || !internalValidatorMap) {\n return { isValid: true };\n }\n\n const predicate = internalValidatorMap.normalizedKeys.byKey.get(key);\n\n // No key predicate for the given key - assume value is valid.\n if (!predicate) {\n return { isValid: true };\n }\n\n const validValues = predicate.valuePredicate;\n\n if (typeof validValues === 'function') {\n const result = validValues({\n currentStatement,\n filterFieldValue,\n });\n\n if (typeof result === 'boolean') {\n return { isValid: result };\n }\n\n return { isValid: false, message: result };\n }\n\n // If the value is a variable we don't have any further information on what\n // the actual type is, so we skip the type-based validation below.\n // Function predicates above are still called as users can do their own checks.\n if (valueType === 'Variable') {\n return { isValid: true };\n }\n\n // Determine valid types \u2014 predicate.valueType takes precedence over inference from valuePredicate.\n // DEPRECATION: [APPDEV-16872] BREAKING-CHANGE\n // TODO: The valueType inference fallback can be removed once the deprecated FilterFieldValidatorMapTypePredicate format is removed.\n let validTypes: (FilterFieldPrimitive | string)[];\n let hasLiteralValues: boolean;\n\n if (predicate.valueType) {\n validTypes = Array.isArray(predicate.valueType)\n ? predicate.valueType\n : [predicate.valueType];\n hasLiteralValues = Array.isArray(validValues);\n } else if (validValues !== undefined) {\n // Infer valid types from valuePredicate if valueType is not explicitly configured.\n ({ types: validTypes, hasLiteralValues } = getValidValueTypes(validValues));\n } else {\n // Neither valuePredicate nor valueType configured \u2014 any value is valid.\n return { isValid: true };\n }\n\n const isValidType = checkIsValidType(\n valueType,\n valueTextValue,\n validTypes,\n parserConfig,\n customTypes,\n );\n\n if (Array.isArray(validValues)) {\n let textMatches = false;\n\n for (const validValue of validValues) {\n if (isFilterFieldValidatorMapTypeSpecification(validValue)) {\n if ((!isValidType && !hasLiteralValues) || isValidType) {\n return { isValid: isValidType, validTypes };\n }\n } else if (isFilterFieldValueSuggestionGroupConfig(validValue)) {\n if (\n validValue.suggestions.some((suggestion) => {\n if (isFilterFieldValidatorMapTypeSpecification(suggestion)) {\n return false;\n }\n\n return literalMatchesTextValue(valueTextValue, suggestion);\n })\n ) {\n textMatches = true;\n }\n\n continue;\n } else if (literalMatchesTextValue(valueTextValue, validValue)) {\n textMatches = true;\n }\n }\n\n return {\n isValid: textMatches || isWildCardOperator(currentStatement),\n validTypes,\n };\n }\n\n if (isFilterFieldValidatorMapTypeSpecification(validValues)) {\n return { isValid: isValidType, validTypes };\n }\n\n if (isFilterFieldValueSuggestionGroupConfig(validValues)) {\n const groupSuggestionMatches = validValues.suggestions.some(\n (suggestion) => {\n if (isFilterFieldValidatorMapTypeSpecification(suggestion)) {\n return false;\n }\n\n return literalMatchesTextValue(valueTextValue, suggestion);\n },\n );\n return {\n isValid: groupSuggestionMatches || isWildCardOperator(currentStatement),\n };\n }\n\n // validValues may be undefined when only config.valueType is set.\n if (validValues === undefined) {\n return { isValid: isValidType };\n }\n\n return {\n isValid: literalMatchesTextValue(valueTextValue, validValues),\n validTypes,\n };\n}\n\n/**\n * Checks whether a literal predicate value (string, number, boolean, or duration)\n * matches the given filter field text value after stripping escape backslashes.\n */\nfunction literalMatchesTextValue(\n textValue: string,\n predicate: FilterFieldValuePredicateItem,\n): boolean {\n if (isFilterFieldValidatorMapDurationSpecification(predicate)) {\n return textValue === `${predicate.value}${predicate.unit}`;\n }\n if (isFilterFieldRichValuePredicate(predicate)) {\n const cleaned = `${predicate.value}`\n .replaceAll(/(?<!\\\\)(?:\\\\\\\\)*(\\\\)(?!\\\\)/g, '')\n .replaceAll(/(\\\\\\\\)/g, '\\\\');\n\n return textValue === cleaned;\n }\n // The predicate string includes backslashes as provided in the validator map.\n // Single backslashes are removed and double backslashes are converted to single\n // backslashes to match the parsed text value.\n const cleaned = `${predicate}`\n .replaceAll(/(?<!\\\\)(?:\\\\\\\\)*(\\\\)(?!\\\\)/g, '')\n .replaceAll(/(\\\\\\\\)/g, '\\\\');\n return textValue === cleaned;\n}\n\n/**\n * Returns the textvalue of a filterfield value predicate that is neither a function nor an array.\n * @internal\n */\nexport function getValuePredicateTextValue(\n predicate: FilterFieldValuePredicateItem,\n) {\n if (isFilterFieldValidatorMapDurationSpecification(predicate)) {\n return `${predicate.value}${predicate.unit}`;\n } else if (isFilterFieldRichValuePredicate(predicate)) {\n return `${predicate.value}`;\n } else {\n return `${predicate}`;\n }\n}\n\n/**\n * Returns valid operators for the given key.\n * @internal\n */\nexport function getValidOperators(\n key: string | undefined,\n internalValidatorMap: InternalValidatorMap | undefined,\n parserConfig?: FilterFieldProps['parserConfig'],\n): FilterFieldComparisonOperators[] {\n key =\n typeof key === 'string'\n ? key.replace(/^\"(.*?(?<!\\\\)(?:\\\\\\\\)*)\"$/, '$1')\n : key;\n\n const defaultOperators: FilterFieldComparisonOperators[] = [\n ...FILTERFIELD_DEFAULT_OPERATORS,\n // oxlint-disable-next-line typescript/no-deprecated\n ...(parserConfig?.searchConversion\n ? (['search'] as FilterFieldComparisonOperators[])\n : []),\n // oxlint-disable-next-line typescript/no-deprecated\n ...(parserConfig?.matchesWildcardConversion\n ? ([\n 'matches-wildcard',\n 'not-matches-wildcard',\n ] as FilterFieldComparisonOperators[])\n : []),\n ];\n\n if (!internalValidatorMap) {\n return defaultOperators;\n }\n\n const globalOperators =\n internalValidatorMap.comparisonOperators || defaultOperators;\n\n // oxlint-disable-next-line typescript/no-deprecated\n if (isDev() && !parserConfig?.matchesWildcardConversion) {\n const hasWildcardOperators = globalOperators.some(\n (op) => op === 'matches-wildcard' || op === 'not-matches-wildcard',\n );\n if (hasWildcardOperators) {\n // oxlint-disable-next-line no-console\n console.warn(\n 'matches-wildcard or not-matches-wildcard are configured in the validatorMap but parserConfig.matchesWildcardConversion is not enabled. To get full support for wildcard-in-middle operators please also enable matchesWildcardConversion in the parserConfig.',\n );\n }\n }\n\n const predicate = key\n ? internalValidatorMap.normalizedKeys.byKey.get(key)\n : undefined;\n\n // Incomplete search operator, we don\u00B4t want to show operator suggestions.\n if (!predicate && key === '*') {\n return [];\n }\n\n if (!predicate) {\n return globalOperators;\n }\n\n // Early exit if explicit operators are defined for the key.\n if (predicate.comparisonOperators) {\n // oxlint-disable-next-line typescript/no-deprecated\n if (isDev() && !parserConfig?.matchesWildcardConversion) {\n const hasWildcardOperators = predicate.comparisonOperators.some(\n (op) => op === 'matches-wildcard' || op === 'not-matches-wildcard',\n );\n if (hasWildcardOperators) {\n // oxlint-disable-next-line no-console\n console.warn(\n 'matches-wildcard or not-matches-wildcard are configured in a validatorMap entry but parserConfig.matchesWildcardConversion is not enabled. To get full support for wildcard-in-middle operators please also enable matchesWildcardConversion in the parserConfig.',\n );\n }\n }\n return predicate.comparisonOperators;\n }\n\n // Determine allowed types. Explicit valueType takes precedence over valuePredicate inference.\n let allowedTypes: (FilterFieldPrimitive | string)[] | 'Any';\n if (predicate.valueType) {\n allowedTypes = Array.isArray(predicate.valueType)\n ? predicate.valueType\n : [predicate.valueType];\n } else if (\n !predicate.valuePredicate ||\n typeof predicate.valuePredicate === 'function'\n ) {\n allowedTypes = 'Any';\n } else {\n allowedTypes = getValidValueTypes(predicate.valuePredicate).types;\n }\n\n if (allowedTypes !== 'Any') {\n return intersectOperators(\n globalOperators,\n allowedTypes.reduce((acc: FilterFieldComparisonOperators[], type) => {\n acc.push(...getAllowedOperatorsForType(type));\n return acc;\n }, []),\n );\n }\n\n return globalOperators;\n}\n\n/**\n * Maps operator names to their short names.\n */\nconst OPERATOR_SHORT_NAME_MAP: Record<string, string> = {\n equals: '=',\n 'not-equals': '!=',\n 'less-than': '<',\n 'less-or-equal': '<=',\n 'greater-than': '>',\n 'greater-or-equal': '>=',\n 'matches-phrase': '~',\n 'not-matches-phrase': '!~',\n in: 'in',\n 'not in': 'not in',\n contains: 'contains',\n 'starts-with': 'starts-with',\n 'ends-with': 'ends-with',\n 'not-starts-with': 'not-starts-with',\n 'not-contains': 'not-contains',\n 'not-ends-with': 'not-ends-with',\n 'matches-wildcard': 'matches-wildcard',\n 'not-matches-wildcard': 'not-matches-wildcard',\n exists: '= *',\n 'not-exists': '!= *',\n};\n\n/**\n * Returns valid operator short names\n * @internal\n */\nexport function getValidOperatorsShort(\n key: string | undefined,\n internalValidatorMap: InternalValidatorMap | undefined,\n parserConfig: FilterFieldProps['parserConfig'],\n) {\n const operators = getValidOperators(key, internalValidatorMap, parserConfig);\n const result: string[] = [];\n\n for (const [key, value] of Object.entries(OPERATOR_SHORT_NAME_MAP)) {\n if (operators.includes(key as FilterFieldComparisonOperators)) {\n result.push(value);\n }\n }\n\n return result;\n}\n\n/**\n * Lists valid operator short names (syntax colored, comma separated)\n * @internal\n */\nexport function getValidOperatorsColored(\n key: string | undefined,\n internalValidatorMap: InternalValidatorMap | undefined,\n parserConfig: FilterFieldProps['parserConfig'],\n) {\n return getValidOperatorsShort(key, internalValidatorMap, parserConfig)\n .map(\n (operator) =>\n `<span style=\"color: ${Colors.Syntax.Operators}\">${operator}</span>`,\n )\n .join(', ');\n}\n\n/**\n * Get colored search operator\n * @internal\n */\nexport function getColoredSearchOperator() {\n return `<span style=\"color: ${Colors.Syntax.Variable}\">*</span> <span style=\"color: ${Colors.Syntax.Operators}\">~</span>`;\n}\n\nfunction intersectOperators(\n globalOperators: FilterFieldComparisonOperators[],\n operators: FilterFieldComparisonOperators[],\n) {\n return globalOperators.filter((op) => operators.includes(op));\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["cleaned", "key"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../src/filters/filter-field/utils/value-operations/add-filter.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n DURATION_REGEX,\n VARIABLE_REGEX,\n findIdenticalStatement,\n findSearchStatement,\n leafEquals,\n mapInputOperator,\n statementPolarity,\n type OperatorDescriptor,\n} from './value-operation-utils.js';\nimport type { FilterFieldProps } from '../../FilterField.types.js';\nimport { getNumberParser } from '../../parser/getNumberParser.js';\nimport type {\n SimpleFilterFieldBooleanNode,\n SimpleFilterFieldDurationNode,\n SimpleFilterFieldGroupNode,\n SimpleFilterFieldIPAddressNode,\n SimpleFilterFieldInclusionOperatorNode,\n SimpleFilterFieldJSONPathNode,\n SimpleFilterFieldKeyNode,\n SimpleFilterFieldLeafNode,\n SimpleFilterFieldListNode,\n SimpleFilterFieldNode,\n SimpleFilterFieldNumberNode,\n SimpleFilterFieldSmartscapeIdNode,\n SimpleFilterFieldStatementNode,\n SimpleFilterFieldStringNode,\n SimpleFilterFieldTimestampNode,\n SimpleFilterFieldTree,\n SimpleFilterFieldUIDNode,\n SimpleFilterFieldVariableNode,\n} from '../../types/conversion-tree-nodes.js';\nimport type {\n FilterFieldValueOperationResult,\n FilterFieldValueOperationStatement,\n} from '../../types/value-operations.js';\nimport { convertStringToFilterFieldTree } from '../conversion/string-tree-conversion.js';\nimport { convertFilterFieldTreeToString } from '../conversion/tree-string-conversion.js';\nimport {\n isFilterFieldGroupNode,\n isFilterFieldListNode,\n isFilterFieldStatementNode,\n} from '../tree-node-guards.js';\nimport { FILTERFIELD_ALL_OPERATORS } from '../validation-utils/operator-specification.js';\nimport {\n isValidIPAddress,\n isValidSmartscapeId,\n isValidTimestamp,\n isValidUID,\n} from '../validation-utils/type-validators.js';\n\n/**\n * Adds a filter statement or value to an existing FilterField value string.\n *\n * - If no statement with the given key exists, a new one is appended at the end.\n * - If a matching `key = value` statement exists, it is converted to `key in (existingValue, newValue)`.\n * - If a matching `key in (...)` statement exists, the new value is appended to the list.\n * - The same merge logic applies to `!=` / `not in`.\n * - When multiple statements with the same key exist, the rightmost one (in document order) wins.\n *\n * @public\n * @param currentValue - The current FilterField value string.\n * @param filter - The filter statement or value to add.\n * @param options - Optional configuration. `parserConfig` controls how `currentValue` is parsed\n * and which leaf types are constructed for new keys / values.\n * @returns The new FilterField value string and whether the operation produced a change.\n */\nexport function addFilter(\n currentValue: string,\n filter: FilterFieldValueOperationStatement,\n options?: {\n /** Parser config to apply when interpreting the existing value and constructing new nodes. */\n parserConfig?: FilterFieldProps['parserConfig'];\n },\n): FilterFieldValueOperationResult {\n const parserConfig: FilterFieldProps['parserConfig'] = {\n searchConversion: true,\n ...options?.parserConfig,\n };\n const { tree } = convertStringToFilterFieldTree(currentValue, {\n validatorMap: { comparisonOperators: FILTERFIELD_ALL_OPERATORS },\n // Always recognize search statements when scanning the existing value, regardless\n // of the caller's parserConfig. The caller's config only affects new node construction.\n parserConfig: { ...parserConfig, searchConversion: true },\n });\n const rootGroup = prepareRoot(tree);\n\n const operator = mapInputOperator(filter.comparisonOperator);\n\n if (\n operator.node.type === 'SearchOperator' &&\n filter.value !== undefined &&\n findSearchStatement(rootGroup, filter.value) !== undefined\n ) {\n return { updatedStatement: false, value: currentValue };\n }\n\n const match =\n operator.polarity === 'none' || filter.key === undefined\n ? undefined\n : findRightmostMatchingStatement(\n rootGroup,\n filter.key,\n operator.polarity,\n );\n\n if (match) {\n const inputValue = filter.value;\n const existingValue = match.value;\n\n // Case 1: existing statement is already a list \u2014 `key in (...)` or `key not in (...)`.\n // Append the new value, or deduplicate if it's already present.\n if (isFilterFieldListNode(existingValue) && inputValue !== undefined) {\n const list = existingValue as SimpleFilterFieldListNode;\n if (list.value.some((leaf) => leafEquals(leaf, inputValue))) {\n return { updatedStatement: false, value: currentValue };\n }\n list.value.push(makeLeaf(inputValue, parserConfig));\n return {\n updatedStatement: true,\n value: convertFilterFieldTreeToString(rootGroup),\n };\n }\n\n // Case 2: existing statement has a single leaf \u2014 `key = X` or `key != X`.\n // Promote to a list, or deduplicate if the value is already present and the\n // caller did not explicitly request the list form via `in` / `not in`.\n if (\n existingValue &&\n !isFilterFieldListNode(existingValue) &&\n existingValue.type !== 'Error' &&\n inputValue !== undefined\n ) {\n const existingLeaf = existingValue as SimpleFilterFieldLeafNode;\n const valuesEqual = leafEquals(existingLeaf, inputValue);\n const inputIsInclusion = operator.node.type === 'InclusionOperator';\n\n // Skip when the input operator matches the existing one and the value\n // is already present. When the input operator is `in` / `not in` the\n // caller has explicitly asked for the list form, so promote even if the\n // value would be a duplicate \u2014 the resulting list keeps just that value.\n if (valuesEqual && !inputIsInclusion) {\n return { updatedStatement: false, value: currentValue };\n }\n\n // Promote `key = X` \u2192 `key in (X, new)` (or `key in (X)` when deduplicating with inclusion).\n const promotionList: SimpleFilterFieldListNode = {\n type: 'List',\n value: valuesEqual\n ? [existingLeaf]\n : [existingLeaf, makeLeaf(inputValue, parserConfig)],\n };\n match.comparisonOperator = {\n type: 'InclusionOperator',\n value: operator.polarity === 'positive' ? 'in' : 'not in',\n } as SimpleFilterFieldInclusionOperatorNode;\n match.value = promotionList;\n return {\n updatedStatement: true,\n value: convertFilterFieldTreeToString(rootGroup),\n };\n }\n }\n\n // For non-merging operators (polarity 'none'), still deduplicate exact-match statements.\n // Search deduplicate is handled above; merging-polarity deduplicate is handled via `match`.\n if (\n operator.polarity === 'none' &&\n filter.key !== undefined &&\n findIdenticalStatement(\n rootGroup,\n filter.key,\n operator.node,\n filter.value,\n ) !== undefined\n ) {\n return { updatedStatement: false, value: currentValue };\n }\n\n appendStatement(rootGroup, createStatement(filter, operator, parserConfig));\n return {\n updatedStatement: true,\n value: convertFilterFieldTreeToString(rootGroup),\n };\n}\n\nfunction prepareRoot(tree: SimpleFilterFieldTree): SimpleFilterFieldGroupNode {\n if (!tree) {\n return {\n type: 'Group',\n logicalOperator: 'AND',\n explicit: false,\n explicitLogicalOperator: false,\n children: [],\n };\n }\n if (tree.explicit || tree.logicalOperator === 'OR') {\n return {\n type: 'Group',\n logicalOperator: 'AND',\n explicit: false,\n explicitLogicalOperator: false,\n children: [{ ...tree, explicit: true }],\n };\n }\n return tree;\n}\n\nfunction appendStatement(\n group: SimpleFilterFieldGroupNode,\n statement: SimpleFilterFieldStatementNode,\n): void {\n const previousSibling = group.children.at(-1);\n group.children.push(statement);\n // Only make the logical operator explicit when the previous sibling is a group\n // AND the group had exactly one child before this push (length is now 2).\n // Setting explicitLogicalOperator on the root affects the separator between ALL\n // children, so we must not set it retroactively when the root already had multiple\n // children with their own implicit separators.\n if (\n previousSibling &&\n isFilterFieldGroupNode(previousSibling) &&\n group.children.length === 2\n ) {\n group.explicitLogicalOperator = true;\n }\n}\n\nfunction createStatement(\n filter: FilterFieldValueOperationStatement,\n operator: OperatorDescriptor,\n parserConfig: FilterFieldProps['parserConfig'],\n): SimpleFilterFieldStatementNode {\n const statement: SimpleFilterFieldStatementNode = {\n type: 'Statement',\n comparisonOperator: operator.node,\n };\n if (filter.key !== undefined) {\n statement.key = createKey(filter.key, parserConfig);\n }\n if (filter.value !== undefined) {\n const leaf = makeLeaf(filter.value, parserConfig);\n statement.value =\n operator.node.type === 'InclusionOperator'\n ? { type: 'List', value: [leaf] }\n : leaf;\n }\n return statement;\n}\n\nfunction findRightmostMatchingStatement(\n group: SimpleFilterFieldGroupNode,\n key: string,\n polarity: 'positive' | 'negative',\n): SimpleFilterFieldStatementNode | undefined {\n for (let i = group.children.length - 1; i >= 0; i--) {\n const child: SimpleFilterFieldNode = group.children[i];\n if (isFilterFieldGroupNode(child)) {\n const nested = findRightmostMatchingStatement(child, key, polarity);\n if (nested) {\n return nested;\n }\n } else if (isFilterFieldStatementNode(child)) {\n const childKey = child.key;\n if (\n childKey &&\n (childKey.type === 'Key' || childKey.type === 'JSONPath') &&\n childKey.value === key &&\n statementPolarity(child) === polarity\n ) {\n return child;\n }\n }\n }\n return undefined;\n}\n\nfunction makeLeaf(\n value: string | number | boolean,\n parserConfig: FilterFieldProps['parserConfig'],\n):\n | SimpleFilterFieldStringNode\n | SimpleFilterFieldNumberNode\n | SimpleFilterFieldBooleanNode\n | SimpleFilterFieldDurationNode\n | SimpleFilterFieldVariableNode\n | SimpleFilterFieldIPAddressNode\n | SimpleFilterFieldTimestampNode\n | SimpleFilterFieldUIDNode\n | SimpleFilterFieldSmartscapeIdNode {\n if (typeof value === 'number') {\n return { type: 'Number', value };\n }\n if (typeof value === 'boolean') {\n return { type: 'Boolean', value };\n }\n\n const durationMatch = DURATION_REGEX.exec(value);\n if (durationMatch) {\n return {\n type: 'Duration',\n value: parseInt(durationMatch[1], 10),\n unit: durationMatch[2].toLowerCase() as SimpleFilterFieldDurationNode['unit'],\n };\n }\n if (value === 'true' || value === 'false') {\n return { type: 'Boolean', value: value === 'true' };\n }\n const parsedNumber = getNumberParser().parse(value);\n if (!isNaN(parsedNumber)) {\n return { type: 'Number', value: parsedNumber };\n }\n if (VARIABLE_REGEX.test(value)) {\n return { type: 'Variable', value, variableType: 'Any' };\n }\n\n // Opt-in detections gated on parserConfig flags.\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n if (parserConfig?.ipAddressConversion && isValidIPAddress(value)) {\n return { type: 'IPAddress', value, textValue: value };\n }\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n if (parserConfig?.timestampConversion && isValidTimestamp(value)) {\n return { type: 'Timestamp', value, textValue: value };\n }\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n if (parserConfig?.uidConversion && isValidUID(value)) {\n return { type: 'UID', value, textValue: value };\n }\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n if (parserConfig?.smartscapeIdConversion && isValidSmartscapeId(value)) {\n return { type: 'SmartscapeId', value, textValue: value };\n }\n return { type: 'String', value };\n}\n\nfunction createKey(\n keyString: string,\n parserConfig: FilterFieldProps['parserConfig'],\n): SimpleFilterFieldKeyNode | SimpleFilterFieldJSONPathNode {\n // When the caller opts in via `jsonPathConversion`, run a synthetic parse so\n // the lezer grammar decides whether the key is a JSONPath. Falls back to a\n // plain `Key` when the synthetic statement doesn't produce a JSONPath.\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n if (parserConfig?.jsonPathConversion && keyString.includes('$')) {\n const { tree } = convertStringToFilterFieldTree(`${keyString} = x`, {\n parserConfig,\n });\n const statement = tree?.children.find(isFilterFieldStatementNode);\n if (statement?.key?.type === 'JSONPath') {\n return statement.key;\n }\n }\n return { type: 'Key', value: keyString };\n}\n"],
|
|
4
|
+
"sourcesContent": ["import {\n DURATION_REGEX,\n VARIABLE_REGEX,\n findIdenticalStatement,\n findSearchStatement,\n leafEquals,\n mapInputOperator,\n statementPolarity,\n type OperatorDescriptor,\n} from './value-operation-utils.js';\nimport type { FilterFieldProps } from '../../FilterField.types.js';\nimport { getNumberParser } from '../../parser/getNumberParser.js';\nimport type {\n SimpleFilterFieldBooleanNode,\n SimpleFilterFieldDurationNode,\n SimpleFilterFieldGroupNode,\n SimpleFilterFieldIPAddressNode,\n SimpleFilterFieldInclusionOperatorNode,\n SimpleFilterFieldJSONPathNode,\n SimpleFilterFieldKeyNode,\n SimpleFilterFieldLeafNode,\n SimpleFilterFieldListNode,\n SimpleFilterFieldNode,\n SimpleFilterFieldNumberNode,\n SimpleFilterFieldSmartscapeIdNode,\n SimpleFilterFieldStatementNode,\n SimpleFilterFieldStringNode,\n SimpleFilterFieldTimestampNode,\n SimpleFilterFieldTree,\n SimpleFilterFieldUIDNode,\n SimpleFilterFieldVariableNode,\n} from '../../types/conversion-tree-nodes.js';\nimport type {\n FilterFieldValueOperationResult,\n FilterFieldValueOperationStatement,\n} from '../../types/value-operations.js';\nimport { convertStringToFilterFieldTree } from '../conversion/string-tree-conversion.js';\nimport { convertFilterFieldTreeToString } from '../conversion/tree-string-conversion.js';\nimport {\n isFilterFieldGroupNode,\n isFilterFieldListNode,\n isFilterFieldStatementNode,\n} from '../tree-node-guards.js';\nimport { FILTERFIELD_ALL_OPERATORS } from '../validation-utils/operator-specification.js';\nimport {\n isValidIPAddress,\n isValidSmartscapeId,\n isValidTimestamp,\n isValidUID,\n} from '../validation-utils/type-validators.js';\n\n/**\n * Adds a filter statement or value to an existing FilterField value string.\n *\n * - If no statement with the given key exists, a new one is appended at the end.\n * - If a matching `key = value` statement exists, it is converted to `key in (existingValue, newValue)`.\n * - If a matching `key in (...)` statement exists, the new value is appended to the list.\n * - The same merge logic applies to `!=` / `not in`.\n * - When multiple statements with the same key exist, the rightmost one (in document order) wins.\n *\n * @public\n * @param currentValue - The current FilterField value string.\n * @param filter - The filter statement or value to add.\n * @param options - Optional configuration. `parserConfig` controls how `currentValue` is parsed\n * and which leaf types are constructed for new keys / values.\n * @returns The new FilterField value string and whether the operation produced a change.\n */\nexport function addFilter(\n currentValue: string,\n filter: FilterFieldValueOperationStatement,\n options?: {\n /** Parser config to apply when interpreting the existing value and constructing new nodes. */\n parserConfig?: FilterFieldProps['parserConfig'];\n },\n): FilterFieldValueOperationResult {\n const parserConfig: FilterFieldProps['parserConfig'] = {\n searchConversion: true,\n ...options?.parserConfig,\n };\n const { tree } = convertStringToFilterFieldTree(currentValue, {\n validatorMap: { comparisonOperators: FILTERFIELD_ALL_OPERATORS },\n // Always recognize search statements when scanning the existing value, regardless\n // of the caller's parserConfig. The caller's config only affects new node construction.\n parserConfig: { ...parserConfig, searchConversion: true },\n });\n const rootGroup = prepareRoot(tree);\n\n const operator = mapInputOperator(filter.comparisonOperator);\n\n if (\n operator.node.type === 'SearchOperator' &&\n filter.value !== undefined &&\n findSearchStatement(rootGroup, filter.value) !== undefined\n ) {\n return { updatedStatement: false, value: currentValue };\n }\n\n const match =\n operator.polarity === 'none' || filter.key === undefined\n ? undefined\n : findRightmostMatchingStatement(\n rootGroup,\n filter.key,\n operator.polarity,\n );\n\n if (match) {\n const inputValue = filter.value;\n const existingValue = match.value;\n\n // Case 1: existing statement is already a list \u2014 `key in (...)` or `key not in (...)`.\n // Append the new value, or deduplicate if it's already present.\n if (isFilterFieldListNode(existingValue) && inputValue !== undefined) {\n const list = existingValue as SimpleFilterFieldListNode;\n if (list.value.some((leaf) => leafEquals(leaf, inputValue))) {\n return { updatedStatement: false, value: currentValue };\n }\n list.value.push(makeLeaf(inputValue, parserConfig));\n return {\n updatedStatement: true,\n value: convertFilterFieldTreeToString(rootGroup),\n };\n }\n\n // Case 2: existing statement has a single leaf \u2014 `key = X` or `key != X`.\n // Promote to a list, or deduplicate if the value is already present and the\n // caller did not explicitly request the list form via `in` / `not in`.\n if (\n existingValue &&\n !isFilterFieldListNode(existingValue) &&\n existingValue.type !== 'Error' &&\n inputValue !== undefined\n ) {\n const existingLeaf = existingValue as SimpleFilterFieldLeafNode;\n const valuesEqual = leafEquals(existingLeaf, inputValue);\n const inputIsInclusion = operator.node.type === 'InclusionOperator';\n\n // Skip when the input operator matches the existing one and the value\n // is already present. When the input operator is `in` / `not in` the\n // caller has explicitly asked for the list form, so promote even if the\n // value would be a duplicate \u2014 the resulting list keeps just that value.\n if (valuesEqual && !inputIsInclusion) {\n return { updatedStatement: false, value: currentValue };\n }\n\n // Promote `key = X` \u2192 `key in (X, new)` (or `key in (X)` when deduplicating with inclusion).\n const promotionList: SimpleFilterFieldListNode = {\n type: 'List',\n value: valuesEqual\n ? [existingLeaf]\n : [existingLeaf, makeLeaf(inputValue, parserConfig)],\n };\n match.comparisonOperator = {\n type: 'InclusionOperator',\n value: operator.polarity === 'positive' ? 'in' : 'not in',\n } as SimpleFilterFieldInclusionOperatorNode;\n match.value = promotionList;\n return {\n updatedStatement: true,\n value: convertFilterFieldTreeToString(rootGroup),\n };\n }\n }\n\n // For non-merging operators (polarity 'none'), still deduplicate exact-match statements.\n // Search deduplicate is handled above; merging-polarity deduplicate is handled via `match`.\n if (\n operator.polarity === 'none' &&\n filter.key !== undefined &&\n findIdenticalStatement(\n rootGroup,\n filter.key,\n operator.node,\n filter.value,\n ) !== undefined\n ) {\n return { updatedStatement: false, value: currentValue };\n }\n\n appendStatement(rootGroup, createStatement(filter, operator, parserConfig));\n return {\n updatedStatement: true,\n value: convertFilterFieldTreeToString(rootGroup),\n };\n}\n\nfunction prepareRoot(tree: SimpleFilterFieldTree): SimpleFilterFieldGroupNode {\n if (!tree) {\n return {\n type: 'Group',\n logicalOperator: 'AND',\n explicit: false,\n explicitLogicalOperator: false,\n children: [],\n };\n }\n if (tree.explicit || tree.logicalOperator === 'OR') {\n return {\n type: 'Group',\n logicalOperator: 'AND',\n explicit: false,\n explicitLogicalOperator: false,\n children: [{ ...tree, explicit: true }],\n };\n }\n return tree;\n}\n\nfunction appendStatement(\n group: SimpleFilterFieldGroupNode,\n statement: SimpleFilterFieldStatementNode,\n): void {\n const previousSibling = group.children.at(-1);\n group.children.push(statement);\n // Only make the logical operator explicit when the previous sibling is a group\n // AND the group had exactly one child before this push (length is now 2).\n // Setting explicitLogicalOperator on the root affects the separator between ALL\n // children, so we must not set it retroactively when the root already had multiple\n // children with their own implicit separators.\n if (\n previousSibling &&\n isFilterFieldGroupNode(previousSibling) &&\n group.children.length === 2\n ) {\n group.explicitLogicalOperator = true;\n }\n}\n\nfunction createStatement(\n filter: FilterFieldValueOperationStatement,\n operator: OperatorDescriptor,\n parserConfig: FilterFieldProps['parserConfig'],\n): SimpleFilterFieldStatementNode {\n const statement: SimpleFilterFieldStatementNode = {\n type: 'Statement',\n comparisonOperator: operator.node,\n };\n if (filter.key !== undefined) {\n statement.key = createKey(filter.key, parserConfig);\n }\n if (filter.value !== undefined) {\n const leaf = makeLeaf(filter.value, parserConfig);\n statement.value =\n operator.node.type === 'InclusionOperator'\n ? { type: 'List', value: [leaf] }\n : leaf;\n }\n return statement;\n}\n\nfunction findRightmostMatchingStatement(\n group: SimpleFilterFieldGroupNode,\n key: string,\n polarity: 'positive' | 'negative',\n): SimpleFilterFieldStatementNode | undefined {\n for (let i = group.children.length - 1; i >= 0; i--) {\n const child: SimpleFilterFieldNode = group.children[i];\n if (isFilterFieldGroupNode(child)) {\n const nested = findRightmostMatchingStatement(child, key, polarity);\n if (nested) {\n return nested;\n }\n } else if (isFilterFieldStatementNode(child)) {\n const childKey = child.key;\n if (\n childKey &&\n (childKey.type === 'Key' || childKey.type === 'JSONPath') &&\n childKey.value === key &&\n statementPolarity(child) === polarity\n ) {\n return child;\n }\n }\n }\n return undefined;\n}\n\nfunction makeLeaf(\n value: string | number | boolean,\n parserConfig: FilterFieldProps['parserConfig'],\n):\n | SimpleFilterFieldStringNode\n | SimpleFilterFieldNumberNode\n | SimpleFilterFieldBooleanNode\n | SimpleFilterFieldDurationNode\n | SimpleFilterFieldVariableNode\n | SimpleFilterFieldIPAddressNode\n | SimpleFilterFieldTimestampNode\n | SimpleFilterFieldUIDNode\n | SimpleFilterFieldSmartscapeIdNode {\n if (typeof value === 'number') {\n return { type: 'Number', value };\n }\n if (typeof value === 'boolean') {\n return { type: 'Boolean', value };\n }\n\n const durationMatch = DURATION_REGEX.exec(value);\n if (durationMatch) {\n return {\n type: 'Duration',\n value: parseInt(durationMatch[1], 10),\n unit: durationMatch[2].toLowerCase() as SimpleFilterFieldDurationNode['unit'],\n };\n }\n if (value === 'true' || value === 'false') {\n return { type: 'Boolean', value: value === 'true' };\n }\n const parsedNumber = getNumberParser().parse(value);\n if (!isNaN(parsedNumber)) {\n return { type: 'Number', value: parsedNumber };\n }\n if (VARIABLE_REGEX.test(value)) {\n return { type: 'Variable', value, variableType: 'Any' };\n }\n\n // Opt-in detections gated on parserConfig flags.\n // oxlint-disable-next-line typescript/no-deprecated\n if (parserConfig?.ipAddressConversion && isValidIPAddress(value)) {\n return { type: 'IPAddress', value, textValue: value };\n }\n // oxlint-disable-next-line typescript/no-deprecated\n if (parserConfig?.timestampConversion && isValidTimestamp(value)) {\n return { type: 'Timestamp', value, textValue: value };\n }\n // oxlint-disable-next-line typescript/no-deprecated\n if (parserConfig?.uidConversion && isValidUID(value)) {\n return { type: 'UID', value, textValue: value };\n }\n // oxlint-disable-next-line typescript/no-deprecated\n if (parserConfig?.smartscapeIdConversion && isValidSmartscapeId(value)) {\n return { type: 'SmartscapeId', value, textValue: value };\n }\n return { type: 'String', value };\n}\n\nfunction createKey(\n keyString: string,\n parserConfig: FilterFieldProps['parserConfig'],\n): SimpleFilterFieldKeyNode | SimpleFilterFieldJSONPathNode {\n // When the caller opts in via `jsonPathConversion`, run a synthetic parse so\n // the lezer grammar decides whether the key is a JSONPath. Falls back to a\n // plain `Key` when the synthetic statement doesn't produce a JSONPath.\n // oxlint-disable-next-line typescript/no-deprecated\n if (parserConfig?.jsonPathConversion && keyString.includes('$')) {\n const { tree } = convertStringToFilterFieldTree(`${keyString} = x`, {\n parserConfig,\n });\n const statement = tree?.children.find(isFilterFieldStatementNode);\n if (statement?.key?.type === 'JSONPath') {\n return statement.key;\n }\n }\n return { type: 'Key', value: keyString };\n}\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -16,7 +16,10 @@ function removeFilter(currentValue, filter, options) {
|
|
|
16
16
|
validatorMap: {
|
|
17
17
|
comparisonOperators: [...FILTERFIELD_ALL_OPERATORS]
|
|
18
18
|
},
|
|
19
|
-
parserConfig: {
|
|
19
|
+
parserConfig: {
|
|
20
|
+
searchConversion: true,
|
|
21
|
+
matchesWildcardConversion: true
|
|
22
|
+
}
|
|
20
23
|
});
|
|
21
24
|
if (!tree) {
|
|
22
25
|
return { updatedStatement: false, value: currentValue };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../src/filters/filter-field/utils/value-operations/remove-filter.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n leafEquals,\n mapInputOperator,\n statementPolarity,\n} from './value-operation-utils.js';\nimport type {\n SimpleFilterFieldComparisonOperatorNode,\n SimpleFilterFieldGroupNode,\n SimpleFilterFieldLeafNode,\n SimpleFilterFieldListNode,\n SimpleFilterFieldNode,\n SimpleFilterFieldStatementNode,\n} from '../../types/conversion-tree-nodes.js';\nimport type {\n FilterFieldValueOperationResult,\n FilterFieldValueOperationStatement,\n} from '../../types/value-operations.js';\nimport { convertStringToFilterFieldTree } from '../conversion/string-tree-conversion.js';\nimport { convertFilterFieldTreeToString } from '../conversion/tree-string-conversion.js';\nimport {\n isFilterFieldGroupNode,\n isFilterFieldListNode,\n isFilterFieldStatementNode,\n} from '../tree-node-guards.js';\nimport { FILTERFIELD_ALL_OPERATORS } from '../validation-utils/operator-specification.js';\n\n/**\n * Removes a filter statement or value from an existing FilterField value string.\n *\n * - If the value is not present for the specified key, the statement is not changed.\n * - If removing a value from `key in (v1, v2)` leaves one value, the statement collapses to `key = v1`.\n * - When multiple statements with the same key, operator and value exist, the rightmost one (in document order) is removed.\n * - When `options.removeAll` is `true`, all matching occurrences are removed instead of only the rightmost one.\n *\n * @public\n * @param currentValue - The current FilterField value string.\n * @param filter - The filter statement or value to remove.\n * @param options - Optional configuration for the remove operation.\n * @returns The new FilterField value string and whether the operation produced a change.\n */\nexport function removeFilter(\n currentValue: string,\n filter: FilterFieldValueOperationStatement,\n options?: { removeAll?: boolean },\n): FilterFieldValueOperationResult {\n // Parse with a permissive validatorMap so all operators (including !~ / ~,\n // which are absent from the default set) are preserved as valid nodes rather\n // than being down-converted to Error nodes by the parser.\n const { tree } = convertStringToFilterFieldTree(currentValue, {\n validatorMap: {\n comparisonOperators: [...FILTERFIELD_ALL_OPERATORS],\n },\n parserConfig: { searchConversion: true },\n });\n\n if (!tree) {\n return { updatedStatement: false, value: currentValue };\n }\n\n const operator = mapInputOperator(filter.comparisonOperator);\n let updatedStatement = false;\n\n // Search operator: find and remove a matching `* ~ value` statement.\n if (operator.node.type === 'SearchOperator') {\n if (filter.value === undefined) {\n return { updatedStatement: false, value: currentValue };\n }\n do {\n const found = removeRightmostMatch(tree, (statement) => {\n const statementOperator = statement.comparisonOperator;\n const statementValue = statement.value;\n return (\n statementOperator?.type === 'SearchOperator' &&\n statementValue !== undefined &&\n !isFilterFieldListNode(statementValue) &&\n leafEquals(\n statementValue as SimpleFilterFieldLeafNode,\n filter.value as string | number | boolean,\n )\n );\n });\n if (!found) {\n break;\n }\n updatedStatement = true;\n } while (options?.removeAll);\n return updatedStatement\n ? { updatedStatement: true, value: convertFilterFieldTreeToString(tree) }\n : { updatedStatement: false, value: currentValue };\n }\n\n if (filter.key === undefined) {\n return { updatedStatement: false, value: currentValue };\n }\n\n // Polarity 'none' operators (exists, not-exists, comparison operators like <, >, \u2026):\n // require an exact key+operator(+value) match and remove the whole statement.\n if (operator.polarity === 'none') {\n do {\n const found = removeRightmostMatch(tree, (statement) => {\n const statementKey = statement.key;\n if (\n !statementKey ||\n (statementKey.type !== 'Key' && statementKey.type !== 'JSONPath') ||\n statementKey.value !== filter.key\n ) {\n return false;\n }\n const statementOperator = statement.comparisonOperator;\n if (\n !statementOperator ||\n statementOperator.type !== operator.node.type ||\n statementOperator.value !== operator.node.value\n ) {\n return false;\n }\n if (\n operator.node.type === 'ExistsOperator' ||\n filter.value === undefined\n ) {\n return true;\n }\n const statementValue = statement.value;\n return (\n statementValue !== undefined &&\n !isFilterFieldListNode(statementValue) &&\n statementValue.type !== 'Error' &&\n leafEquals(statementValue as SimpleFilterFieldLeafNode, filter.value)\n );\n });\n if (!found) {\n break;\n }\n updatedStatement = true;\n } while (options?.removeAll);\n return updatedStatement\n ? { updatedStatement: true, value: convertFilterFieldTreeToString(tree) }\n : { updatedStatement: false, value: currentValue };\n }\n\n // Polarity-based operators (equals/in or not-equals/not-in): target the\n // rightmost statement with matching key, polarity, and containing the target value.\n do {\n const found = removeOrMutateRightmostPolarityMatch(\n tree,\n filter.key,\n operator.polarity,\n filter.value as string | number | boolean,\n );\n if (!found) {\n break;\n }\n updatedStatement = true;\n } while (options?.removeAll);\n\n return updatedStatement\n ? { updatedStatement: true, value: convertFilterFieldTreeToString(tree) }\n : { updatedStatement: false, value: currentValue };\n}\n\n// Traverses the tree in reverse and removes the rightmost statement for which\n// `predicate` returns `true`. Propagates empty-group cleanup as it unwinds.\nfunction removeRightmostMatch(\n group: SimpleFilterFieldGroupNode,\n predicate: (statement: SimpleFilterFieldStatementNode) => boolean,\n): boolean {\n for (let i = group.children.length - 1; i >= 0; i--) {\n const child: SimpleFilterFieldNode = group.children[i];\n if (isFilterFieldGroupNode(child)) {\n if (removeRightmostMatch(child, predicate)) {\n if (child.children.length === 0) {\n group.children.splice(i, 1);\n }\n if (group.children.length === 1) {\n recursiveClearExplicitGroup(group);\n }\n return true;\n }\n } else if (isFilterFieldStatementNode(child) && predicate(child)) {\n group.children.splice(i, 1);\n if (group.children.length === 1) {\n recursiveClearExplicitGroup(group);\n }\n return true;\n }\n }\n return false;\n}\n\n// Traverses the tree in reverse and, at the rightmost statement matching the\n// given key + polarity + value, either:\n// - splices a value from the list (\u2265 3 elements),\n// - downgrades a 2-element list to a single-leaf statement, or\n// - removes the statement entirely (1-element list or plain leaf).\n// Returns true if a match was found and acted on.\nfunction removeOrMutateRightmostPolarityMatch(\n group: SimpleFilterFieldGroupNode,\n key: string,\n polarity: 'positive' | 'negative',\n value: string | number | boolean,\n): boolean {\n for (let i = group.children.length - 1; i >= 0; i--) {\n const child: SimpleFilterFieldNode = group.children[i];\n if (isFilterFieldGroupNode(child)) {\n if (removeOrMutateRightmostPolarityMatch(child, key, polarity, value)) {\n if (child.children.length === 0) {\n group.children.splice(i, 1);\n }\n if (group.children.length === 1) {\n recursiveClearExplicitGroup(group);\n }\n return true;\n }\n } else if (isFilterFieldStatementNode(child)) {\n const statementKey = child.key;\n if (\n !statementKey ||\n (statementKey.type !== 'Key' && statementKey.type !== 'JSONPath') ||\n statementKey.value !== key ||\n statementPolarity(child) !== polarity\n ) {\n continue;\n }\n const statementValue = child.value;\n if (!statementValue) {\n continue;\n }\n if (isFilterFieldListNode(statementValue)) {\n const list = statementValue as SimpleFilterFieldListNode;\n const valueIndex = list.value.findIndex((leaf) =>\n leafEquals(leaf, value),\n );\n if (valueIndex === -1) {\n continue;\n }\n if (list.value.length === 1) {\n // Only one value left \u2014 remove the whole statement.\n group.children.splice(i, 1);\n if (group.children.length === 1) {\n recursiveClearExplicitGroup(group);\n }\n } else if (list.value.length === 2) {\n // Downgrade `key in (a, b)` \u2192 `key = a` (the remaining value).\n const remaining = list.value[valueIndex === 0 ? 1 : 0];\n const statement = child as SimpleFilterFieldStatementNode;\n statement.comparisonOperator = {\n type: 'ComparisonOperator',\n value: polarity === 'positive' ? '=' : '!=',\n } as SimpleFilterFieldComparisonOperatorNode;\n statement.value = remaining;\n } else {\n list.value.splice(valueIndex, 1);\n }\n return true;\n } else if (\n statementValue.type !== 'Error' &&\n leafEquals(statementValue as SimpleFilterFieldLeafNode, value)\n ) {\n // Single-leaf statement \u2014 remove it.\n group.children.splice(i, 1);\n if (group.children.length === 1) {\n recursiveClearExplicitGroup(group);\n }\n return true;\n }\n }\n }\n return false;\n}\n\nfunction recursiveClearExplicitGroup(group: SimpleFilterFieldGroupNode): void {\n group.explicit = false;\n if (group.children.length <= 1) {\n group.explicitLogicalOperator = false;\n }\n if (\n group.children.length === 1 &&\n isFilterFieldGroupNode(group.children[0])\n ) {\n recursiveClearExplicitGroup(group.children[0]);\n }\n}\n"],
|
|
5
|
-
"mappings": "AAAA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAaP,SAAS,sCAAsC;AAC/C,SAAS,sCAAsC;AAC/C;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,iCAAiC;AAgBnC,SAAS,aACd,cACA,QACA,SACiC;AAIjC,QAAM,EAAE,KAAK,IAAI,+BAA+B,cAAc;AAAA,IAC5D,cAAc;AAAA,MACZ,qBAAqB,CAAC,GAAG,yBAAyB;AAAA,IACpD;AAAA,IACA,cAAc,
|
|
4
|
+
"sourcesContent": ["import {\n leafEquals,\n mapInputOperator,\n statementPolarity,\n} from './value-operation-utils.js';\nimport type {\n SimpleFilterFieldComparisonOperatorNode,\n SimpleFilterFieldGroupNode,\n SimpleFilterFieldLeafNode,\n SimpleFilterFieldListNode,\n SimpleFilterFieldNode,\n SimpleFilterFieldStatementNode,\n} from '../../types/conversion-tree-nodes.js';\nimport type {\n FilterFieldValueOperationResult,\n FilterFieldValueOperationStatement,\n} from '../../types/value-operations.js';\nimport { convertStringToFilterFieldTree } from '../conversion/string-tree-conversion.js';\nimport { convertFilterFieldTreeToString } from '../conversion/tree-string-conversion.js';\nimport {\n isFilterFieldGroupNode,\n isFilterFieldListNode,\n isFilterFieldStatementNode,\n} from '../tree-node-guards.js';\nimport { FILTERFIELD_ALL_OPERATORS } from '../validation-utils/operator-specification.js';\n\n/**\n * Removes a filter statement or value from an existing FilterField value string.\n *\n * - If the value is not present for the specified key, the statement is not changed.\n * - If removing a value from `key in (v1, v2)` leaves one value, the statement collapses to `key = v1`.\n * - When multiple statements with the same key, operator and value exist, the rightmost one (in document order) is removed.\n * - When `options.removeAll` is `true`, all matching occurrences are removed instead of only the rightmost one.\n *\n * @public\n * @param currentValue - The current FilterField value string.\n * @param filter - The filter statement or value to remove.\n * @param options - Optional configuration for the remove operation.\n * @returns The new FilterField value string and whether the operation produced a change.\n */\nexport function removeFilter(\n currentValue: string,\n filter: FilterFieldValueOperationStatement,\n options?: { removeAll?: boolean },\n): FilterFieldValueOperationResult {\n // Parse with a permissive validatorMap so all operators (including !~ / ~,\n // which are absent from the default set) are preserved as valid nodes rather\n // than being down-converted to Error nodes by the parser.\n const { tree } = convertStringToFilterFieldTree(currentValue, {\n validatorMap: {\n comparisonOperators: [...FILTERFIELD_ALL_OPERATORS],\n },\n parserConfig: {\n searchConversion: true,\n matchesWildcardConversion: true,\n },\n });\n\n if (!tree) {\n return { updatedStatement: false, value: currentValue };\n }\n\n const operator = mapInputOperator(filter.comparisonOperator);\n let updatedStatement = false;\n\n // Search operator: find and remove a matching `* ~ value` statement.\n if (operator.node.type === 'SearchOperator') {\n if (filter.value === undefined) {\n return { updatedStatement: false, value: currentValue };\n }\n do {\n const found = removeRightmostMatch(tree, (statement) => {\n const statementOperator = statement.comparisonOperator;\n const statementValue = statement.value;\n return (\n statementOperator?.type === 'SearchOperator' &&\n statementValue !== undefined &&\n !isFilterFieldListNode(statementValue) &&\n leafEquals(\n statementValue as SimpleFilterFieldLeafNode,\n filter.value as string | number | boolean,\n )\n );\n });\n if (!found) {\n break;\n }\n updatedStatement = true;\n } while (options?.removeAll);\n return updatedStatement\n ? { updatedStatement: true, value: convertFilterFieldTreeToString(tree) }\n : { updatedStatement: false, value: currentValue };\n }\n\n if (filter.key === undefined) {\n return { updatedStatement: false, value: currentValue };\n }\n\n // Polarity 'none' operators (exists, not-exists, comparison operators like <, >, \u2026):\n // require an exact key+operator(+value) match and remove the whole statement.\n if (operator.polarity === 'none') {\n do {\n const found = removeRightmostMatch(tree, (statement) => {\n const statementKey = statement.key;\n if (\n !statementKey ||\n (statementKey.type !== 'Key' && statementKey.type !== 'JSONPath') ||\n statementKey.value !== filter.key\n ) {\n return false;\n }\n const statementOperator = statement.comparisonOperator;\n if (\n !statementOperator ||\n statementOperator.type !== operator.node.type ||\n statementOperator.value !== operator.node.value\n ) {\n return false;\n }\n if (\n operator.node.type === 'ExistsOperator' ||\n filter.value === undefined\n ) {\n return true;\n }\n const statementValue = statement.value;\n return (\n statementValue !== undefined &&\n !isFilterFieldListNode(statementValue) &&\n statementValue.type !== 'Error' &&\n leafEquals(statementValue as SimpleFilterFieldLeafNode, filter.value)\n );\n });\n if (!found) {\n break;\n }\n updatedStatement = true;\n } while (options?.removeAll);\n return updatedStatement\n ? { updatedStatement: true, value: convertFilterFieldTreeToString(tree) }\n : { updatedStatement: false, value: currentValue };\n }\n\n // Polarity-based operators (equals/in or not-equals/not-in): target the\n // rightmost statement with matching key, polarity, and containing the target value.\n do {\n const found = removeOrMutateRightmostPolarityMatch(\n tree,\n filter.key,\n operator.polarity,\n filter.value as string | number | boolean,\n );\n if (!found) {\n break;\n }\n updatedStatement = true;\n } while (options?.removeAll);\n\n return updatedStatement\n ? { updatedStatement: true, value: convertFilterFieldTreeToString(tree) }\n : { updatedStatement: false, value: currentValue };\n}\n\n// Traverses the tree in reverse and removes the rightmost statement for which\n// `predicate` returns `true`. Propagates empty-group cleanup as it unwinds.\nfunction removeRightmostMatch(\n group: SimpleFilterFieldGroupNode,\n predicate: (statement: SimpleFilterFieldStatementNode) => boolean,\n): boolean {\n for (let i = group.children.length - 1; i >= 0; i--) {\n const child: SimpleFilterFieldNode = group.children[i];\n if (isFilterFieldGroupNode(child)) {\n if (removeRightmostMatch(child, predicate)) {\n if (child.children.length === 0) {\n group.children.splice(i, 1);\n }\n if (group.children.length === 1) {\n recursiveClearExplicitGroup(group);\n }\n return true;\n }\n } else if (isFilterFieldStatementNode(child) && predicate(child)) {\n group.children.splice(i, 1);\n if (group.children.length === 1) {\n recursiveClearExplicitGroup(group);\n }\n return true;\n }\n }\n return false;\n}\n\n// Traverses the tree in reverse and, at the rightmost statement matching the\n// given key + polarity + value, either:\n// - splices a value from the list (\u2265 3 elements),\n// - downgrades a 2-element list to a single-leaf statement, or\n// - removes the statement entirely (1-element list or plain leaf).\n// Returns true if a match was found and acted on.\nfunction removeOrMutateRightmostPolarityMatch(\n group: SimpleFilterFieldGroupNode,\n key: string,\n polarity: 'positive' | 'negative',\n value: string | number | boolean,\n): boolean {\n for (let i = group.children.length - 1; i >= 0; i--) {\n const child: SimpleFilterFieldNode = group.children[i];\n if (isFilterFieldGroupNode(child)) {\n if (removeOrMutateRightmostPolarityMatch(child, key, polarity, value)) {\n if (child.children.length === 0) {\n group.children.splice(i, 1);\n }\n if (group.children.length === 1) {\n recursiveClearExplicitGroup(group);\n }\n return true;\n }\n } else if (isFilterFieldStatementNode(child)) {\n const statementKey = child.key;\n if (\n !statementKey ||\n (statementKey.type !== 'Key' && statementKey.type !== 'JSONPath') ||\n statementKey.value !== key ||\n statementPolarity(child) !== polarity\n ) {\n continue;\n }\n const statementValue = child.value;\n if (!statementValue) {\n continue;\n }\n if (isFilterFieldListNode(statementValue)) {\n const list = statementValue as SimpleFilterFieldListNode;\n const valueIndex = list.value.findIndex((leaf) =>\n leafEquals(leaf, value),\n );\n if (valueIndex === -1) {\n continue;\n }\n if (list.value.length === 1) {\n // Only one value left \u2014 remove the whole statement.\n group.children.splice(i, 1);\n if (group.children.length === 1) {\n recursiveClearExplicitGroup(group);\n }\n } else if (list.value.length === 2) {\n // Downgrade `key in (a, b)` \u2192 `key = a` (the remaining value).\n const remaining = list.value[valueIndex === 0 ? 1 : 0];\n const statement = child as SimpleFilterFieldStatementNode;\n statement.comparisonOperator = {\n type: 'ComparisonOperator',\n value: polarity === 'positive' ? '=' : '!=',\n } as SimpleFilterFieldComparisonOperatorNode;\n statement.value = remaining;\n } else {\n list.value.splice(valueIndex, 1);\n }\n return true;\n } else if (\n statementValue.type !== 'Error' &&\n leafEquals(statementValue as SimpleFilterFieldLeafNode, value)\n ) {\n // Single-leaf statement \u2014 remove it.\n group.children.splice(i, 1);\n if (group.children.length === 1) {\n recursiveClearExplicitGroup(group);\n }\n return true;\n }\n }\n }\n return false;\n}\n\nfunction recursiveClearExplicitGroup(group: SimpleFilterFieldGroupNode): void {\n group.explicit = false;\n if (group.children.length <= 1) {\n group.explicitLogicalOperator = false;\n }\n if (\n group.children.length === 1 &&\n isFilterFieldGroupNode(group.children[0])\n ) {\n recursiveClearExplicitGroup(group.children[0]);\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/filters/helper/queryHelper.ts"],
|
|
4
|
-
"sourcesContent": ["import { isDev } from '../../core/utils/is-node-environment.js';\nimport { segmentsClient } from '../segment-selector/contexts/SegmentsCache/SegmentsCache.js';\n\n/**\n * Helper function to update useQueries cache optimistically.\n * In the current implementation it only resets the state for one specified query.\n * @internal\n *\n * @param queryKey - affected query.\n * @param updateCacheFn - function that updates the cache to the expected outcome.\n * @returns previous state, in case the mutation needs to be rolled back.\n */\nexport async function runOptimisticMutation<T>(\n queryKey: string,\n updateCacheFn: (prevState: T) => T,\n cancelKeys?: string[],\n): Promise<{ previousState?: T }> {\n // Cancel any outgoing refetches\n // (so they don't overwrite our optimistic update)\n await segmentsClient.queryClient.cancelQueries({\n queryKey: cancelKeys ?? [queryKey],\n });\n\n // Snapshot the previous value\n const previousState = segmentsClient.queryClient.getQueryData<T>([queryKey]);\n\n // Optimistically update to the new value\n segmentsClient.queryClient.setQueryData([queryKey], updateCacheFn);\n\n // Return a context object with the snapshotted value\n return { previousState };\n}\n\n/**\n * Helper function to react to errors of an optimistically run mutation.\n * @internal\n *\n * @param queryKey - affected query.\n * @param error - API response error.\n * @param context - object containing the previousState. It is usually derived from the return type of `runOptimisticMutation`.\n */\nexport async function handleFailedOptimisticMutation<T>(\n queryKey: string,\n error: Error,\n context?: { previousState?: T },\n) {\n if (isDev()) {\n //
|
|
4
|
+
"sourcesContent": ["import { isDev } from '../../core/utils/is-node-environment.js';\nimport { segmentsClient } from '../segment-selector/contexts/SegmentsCache/SegmentsCache.js';\n\n/**\n * Helper function to update useQueries cache optimistically.\n * In the current implementation it only resets the state for one specified query.\n * @internal\n *\n * @param queryKey - affected query.\n * @param updateCacheFn - function that updates the cache to the expected outcome.\n * @returns previous state, in case the mutation needs to be rolled back.\n */\nexport async function runOptimisticMutation<T>(\n queryKey: string,\n updateCacheFn: (prevState: T) => T,\n cancelKeys?: string[],\n): Promise<{ previousState?: T }> {\n // Cancel any outgoing refetches\n // (so they don't overwrite our optimistic update)\n await segmentsClient.queryClient.cancelQueries({\n queryKey: cancelKeys ?? [queryKey],\n });\n\n // Snapshot the previous value\n const previousState = segmentsClient.queryClient.getQueryData<T>([queryKey]);\n\n // Optimistically update to the new value\n segmentsClient.queryClient.setQueryData([queryKey], updateCacheFn);\n\n // Return a context object with the snapshotted value\n return { previousState };\n}\n\n/**\n * Helper function to react to errors of an optimistically run mutation.\n * @internal\n *\n * @param queryKey - affected query.\n * @param error - API response error.\n * @param context - object containing the previousState. It is usually derived from the return type of `runOptimisticMutation`.\n */\nexport async function handleFailedOptimisticMutation<T>(\n queryKey: string,\n error: Error,\n context?: { previousState?: T },\n) {\n if (isDev()) {\n // oxlint-disable-next-line no-console\n console.warn(\n `Couldn't run a mutation that manipulates the ${queryKey}-query.`,\n error,\n );\n }\n\n // use the context returned from onMutate to roll back\n segmentsClient.queryClient.setQueryData([queryKey], context?.previousState);\n}\n\n/**\n * Helper function to react to a successful optimistical mutation.\n * @internal\n *\n * @param invalidQueryKeys - queries that have been optimistically updated and can now be refetched.\n * @param mutationKeys - mutation keys modifiying the same data, to prevent overwrites.\n */\nexport async function handleSettledOptimisticMutation(\n invalidQueryKeys: string[],\n mutationKeys: string[],\n) {\n if (\n // We only want to invalidate the query if there is no ongoing mutation other then the current one.\n segmentsClient.queryClient.isMutating({\n mutationKey: mutationKeys,\n }) === 1\n ) {\n await segmentsClient.queryClient.invalidateQueries({\n queryKey: invalidQueryKeys,\n });\n }\n}\n"],
|
|
5
5
|
"mappings": "AAAA,SAAS,aAAa;AACtB,SAAS,sBAAsB;AAW/B,eAAsB,sBACpB,UACA,eACA,YACgC;AAGhC,QAAM,eAAe,YAAY,cAAc;AAAA,IAC7C,UAAU,cAAc,CAAC,QAAQ;AAAA,EACnC,CAAC;AAGD,QAAM,gBAAgB,eAAe,YAAY,aAAgB,CAAC,QAAQ,CAAC;AAG3E,iBAAe,YAAY,aAAa,CAAC,QAAQ,GAAG,aAAa;AAGjE,SAAO,EAAE,cAAc;AACzB;AAUA,eAAsB,+BACpB,UACA,OACA,SACA;AACA,MAAI,MAAM,GAAG;AAEX,YAAQ;AAAA,MACN,gDAAgD,QAAQ;AAAA,MACxD;AAAA,IACF;AAAA,EACF;AAGA,iBAAe,YAAY,aAAa,CAAC,QAAQ,GAAG,SAAS,aAAa;AAC5E;AASA,eAAsB,gCACpB,kBACA,cACA;AACA;AAAA;AAAA,IAEE,eAAe,YAAY,WAAW;AAAA,MACpC,aAAa;AAAA,IACf,CAAC,MAAM;AAAA,IACP;AACA,UAAM,eAAe,YAAY,kBAAkB;AAAA,MACjD,UAAU;AAAA,IACZ,CAAC;AAAA,EACH;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/esm/filters/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/filters/index.ts"],
|
|
4
|
-
"sourcesContent": ["export { FilterBar } from './filter/FilterBar.js';\nexport type {\n FilterBarProps,\n ControlledFilterBarProps,\n UncontrolledFilterBarProps,\n BaseFilterBarProps,\n} from './filter/FilterBar.js';\nexport type { FilterBarItemProps } from './filter/Item.js';\nexport type { ResetButtonProps } from './filter/ResetButton.js';\nexport type { FilterItemValues } from './filter/types/shared-filter-types.js';\nexport type {\n PinnedState,\n PinnedStateValues,\n} from './filter/types/filter-state.types.js';\n\nexport { FilterField } from './filter-field/FilterField.js';\nexport {\n FilterStatement as _FilterStatement,\n type FilterStatementProps as _FilterStatementProps,\n} from './filter-field/components/FilterStatement.js';\nexport type { FilterFieldRef } from './filter-field/FilterField.js';\nexport type { FilterFieldProps } from './filter-field/FilterField.types.js';\nexport type {\n FilterFieldGroupedSuggestions,\n FilterFieldSuggestionsCallback,\n} from './filter-field/types/suggestions.js';\nexport type {\n FilterFieldCustomTypes,\n FilterFieldValidatorMap,\n //
|
|
4
|
+
"sourcesContent": ["export { FilterBar } from './filter/FilterBar.js';\nexport type {\n FilterBarProps,\n ControlledFilterBarProps,\n UncontrolledFilterBarProps,\n BaseFilterBarProps,\n} from './filter/FilterBar.js';\nexport type { FilterBarItemProps } from './filter/Item.js';\nexport type { ResetButtonProps } from './filter/ResetButton.js';\nexport type { FilterItemValues } from './filter/types/shared-filter-types.js';\nexport type {\n PinnedState,\n PinnedStateValues,\n} from './filter/types/filter-state.types.js';\n\nexport { FilterField } from './filter-field/FilterField.js';\nexport {\n FilterStatement as _FilterStatement,\n type FilterStatementProps as _FilterStatementProps,\n} from './filter-field/components/FilterStatement.js';\nexport type { FilterFieldRef } from './filter-field/FilterField.js';\nexport type { FilterFieldProps } from './filter-field/FilterField.types.js';\nexport type {\n FilterFieldGroupedSuggestions,\n FilterFieldSuggestionsCallback,\n} from './filter-field/types/suggestions.js';\nexport type {\n FilterFieldCustomTypes,\n FilterFieldValidatorMap,\n // oxlint-disable-next-line typescript/no-deprecated\n FilterFieldValidatorMapTypePredicate,\n FilterFieldComparisonOperators,\n FilterFieldValuePredicate,\n FilterFieldValuePredicateItem,\n FilterFieldValueSuggestionGroupConfig,\n FilterFieldPrimitive,\n // oxlint-disable-next-line typescript/no-deprecated\n FilterFieldDuration,\n FilterFieldRichValuePredicate,\n FilterFieldValuePredicateFn,\n FilterFieldValueMatchFn,\n FilterFieldKeySuggestionConfig,\n FilterFieldKeySuggestionGroupConfig,\n} from './filter-field/types/validation.js';\nexport type {\n FilterFieldSuggestion,\n FilterFieldSuggestionProps,\n} from './filter-field/suggestions/Suggestion.types.js';\nexport type { FilterFieldSuggestionsProps } from './filter-field/suggestions/Suggestions.js';\nexport type {\n FilterFieldSuggestionGroup,\n FilterFieldSuggestionGroupProps,\n} from './filter-field/suggestions/SuggestionGroup.types.js';\nexport type { FilterFieldSuggestionGroupLabelProps } from './filter-field/suggestions/SuggestionGroupLabel.js';\nexport type { FilterFieldSuggestionDetailsProps } from './filter-field/suggestions/SuggestionDetails.js';\nexport type {\n FilterFieldGroupNode,\n FilterFieldRootNode,\n FilterFieldBooleanNode,\n FilterFieldComparisonOperatorNode,\n FilterFieldDurationNode,\n FilterFieldExistsOperatorNode,\n FilterFieldErrorNode,\n FilterFieldInclusionOperatorNode,\n FilterFieldKeyNode,\n FilterFieldLeafNode,\n FilterFieldListNode,\n FilterFieldNode,\n FilterFieldNodeBase,\n FilterFieldNumberNode,\n FilterFieldBigIntNode,\n FilterFieldSearchOperatorNode,\n FilterFieldStatementNode,\n FilterFieldStringNode,\n FilterFieldVariableNode,\n FilterFieldTree,\n FilterFieldValueNode,\n FilterFieldJSONPathNode,\n FilterFieldIPAddressNode,\n FilterFieldUIDNode,\n FilterFieldSmartscapeIdNode,\n FilterFieldTimestampNode,\n} from './filter-field/types/tree-nodes.js';\nexport type {\n SimpleFilterFieldGroupNode,\n SimpleFilterFieldRootNode,\n SimpleFilterFieldBooleanNode,\n SimpleFilterFieldComparisonOperatorNode,\n SimpleFilterFieldDurationNode,\n SimpleFilterFieldExistsOperatorNode,\n SimpleFilterFieldErrorNode,\n SimpleFilterFieldInclusionOperatorNode,\n SimpleFilterFieldKeyNode,\n SimpleFilterFieldLeafNode,\n SimpleFilterFieldListNode,\n SimpleFilterFieldNode,\n SimpleFilterFieldNodeBase,\n SimpleFilterFieldNumberNode,\n SimpleFilterFieldBigIntNode,\n SimpleFilterFieldSearchOperatorNode,\n SimpleFilterFieldStatementNode,\n SimpleFilterFieldStringNode,\n SimpleFilterFieldVariableNode,\n SimpleFilterFieldTree,\n SimpleFilterFieldValueNode,\n SimpleFilterFieldJSONPathNode,\n SimpleFilterFieldIPAddressNode,\n SimpleFilterFieldUIDNode,\n SimpleFilterFieldSmartscapeIdNode,\n SimpleFilterFieldTimestampNode,\n} from './filter-field/types/conversion-tree-nodes.js';\nexport type {\n FilterFieldDqlStatementNode,\n FilterFieldDqlGroupNode,\n FilterFieldDqlNode,\n FilterFieldDqlRootNode,\n FilterFieldDqlTree,\n FilterFieldDqlOptions,\n} from './filter-field/types/dql-conversion-nodes.js';\nexport {\n isFilterFieldLeafNode,\n isFilterFieldListNode,\n} from './filter-field/utils/tree-node-guards.js';\nexport { escapeSuggestion as escapeFilterFieldSuggestion } from './filter-field/utils/escape-suggestion.js';\n// oxlint-disable-next-line typescript/no-deprecated\nexport { convertStringToFilterFieldTree } from './filter-field/utils/conversion/string-tree-conversion.js';\nexport { convertFilterFieldTreeToString } from './filter-field/utils/conversion/tree-string-conversion.js';\nexport {\n convertFilterFieldTreeToDql,\n enrichFilterFieldTreeWithDql,\n} from './filter-field/utils/conversion/dql-conversion/tree-dql-conversion.js';\nexport {\n escapeDqlIdentifier,\n escapeDqlStringLiteral,\n} from './filter-field/utils/conversion/dql-conversion/escape-dql.js';\nexport { addFilter } from './filter-field/utils/value-operations/add-filter.js';\nexport { removeFilter } from './filter-field/utils/value-operations/remove-filter.js';\nexport type {\n FilterFieldValueOperationStatement,\n FilterFieldValueOperationResult,\n} from './filter-field/types/value-operations.js';\nexport { FILTERFIELD_DEFAULT_OPERATORS } from './filter-field/utils/validation-utils/operator-specification.js';\nexport { migrateFilterFieldKeyPredicatesToArray } from './filter-field/utils/migrate-validator-map.js';\n\nexport { SegmentSelector } from './segment-selector/SegmentSelector.js';\nexport type {\n SegmentSelectorProps,\n SegmentSelectorRef,\n} from './segment-selector/SegmentSelector.types.js';\nexport type { SegmentSelectorCustomTriggerProps } from './segment-selector/CustomTrigger.js';\n\n/** remove export when segments store and context moves to react-hooks pkg */\nexport { useSegments } from './segment-selector/hooks/useSegments.js';\nexport { SegmentsProvider } from './segment-selector/contexts/SegmentsStore/SegmentsContext.js';\n/** ******************************************************************** **/\n\nexport { TimeframeSelector } from './timeframe-selector/TimeframeSelector.js';\nexport { TIMEFRAME_SELECTOR_PRESETS } from './timeframe-selector/constants/timeframe-presets.js';\nexport type {\n // DEPRECATION: [APPDEV-16487] BREAKING-CHANGE: Forms - Remove deprecated parseTime.\n // oxlint-disable-next-line typescript/no-deprecated\n TimeframeDetails,\n TimeframeSelectorProps,\n} from './timeframe-selector/TimeframeSelector.types.js';\nexport type { TimeframeSelectorPresetItemProps } from './timeframe-selector/components/presets/PresetItem.js';\nexport type { TimeframeSelectorPresetsProps } from './timeframe-selector/components/presets/Presets.js';\nexport type { TimeframeSelectorTriggerProps } from './timeframe-selector/components/trigger/Trigger.js';\nexport type { TimeframeSelectorCustomTriggerProps } from './timeframe-selector/components/trigger/CustomTrigger.js';\nexport type { TimeframeSelectorDisplayValueProps } from './timeframe-selector/components/trigger/DisplayValue.js';\n"],
|
|
5
5
|
"mappings": "AAAA,SAAS,iBAAiB;AAe1B,SAAS,mBAAmB;AAC5B;AAAA,EACqB;AAAA,OAEd;AAoGP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAA6B,wBAAmC;AAEhE,SAAS,sCAAsC;AAC/C,SAAS,sCAAsC;AAC/C;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,iBAAiB;AAC1B,SAAS,oBAAoB;AAK7B,SAAS,qCAAqC;AAC9C,SAAS,8CAA8C;AAEvD,SAAS,uBAAuB;AAQhC,SAAS,mBAAmB;AAC5B,SAAS,wBAAwB;AAGjC,SAAS,yBAAyB;AAClC,SAAS,kCAAkC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/filters/segment-selector/CustomTrigger.tsx"],
|
|
4
|
-
"sourcesContent": ["import {\n type AnchorHTMLAttributes,\n type PropsWithChildren,\n type ReactElement,\n type ReactNode,\n cloneElement,\n isValidElement,\n} from 'react';\n\nimport { useSegmentsTriggerContext } from './hooks/useTriggerContext.js';\nimport type {\n AriaButtonProps,\n ButtonAria,\n} from '../../buttons/button/types/button-aria.js';\nimport type { BehaviorTrackingProps } from '../../core/types/behavior-tracking-props.js';\nimport { DataTestId } from '../../core/types/data-props.js';\nimport { StylingProps } from '../../core/types/styling-props.js';\nimport { isDev } from '../../core/utils/is-node-environment.js';\nimport { mergeProps as _mergeProps } from '../../core/utils/merge-props.js';\n\n/**\n * Accepted properties for SegmentSelector customized trigger.\n * @public\n */\nexport type SegmentSelectorCustomTriggerProps = StylingProps &\n DataTestId &\n BehaviorTrackingProps & {\n /** Elements to be displayed in the CustomTrigger. */\n children:\n | ReactNode\n | ((\n customTriggerProps: {\n displayValue: ReactNode;\n isLoading: boolean;\n },\n props:\n | (StylingProps &\n DataTestId &\n (Partial<ButtonAria<AnchorHTMLAttributes<HTMLButtonElement>>> &\n AriaButtonProps))\n | null,\n ) => ReactElement);\n };\n\n/**\n * A trigger component to customize the SegmentSelector trigger.\n * It applies all necessary props on the first and closest child,\n * which, therefore, should be an interactive element.\n * @experimental\n */\nexport const CustomTrigger = (props: SegmentSelectorCustomTriggerProps) => {\n const { children, ...remainingProps } = props;\n const {\n triggerProps,\n displayValue,\n isLoading,\n buttonRef,\n showError,\n ...ariaProps\n } = useSegmentsTriggerContext();\n\n const dtComponentName = triggerProps?.['data-dt-component'];\n\n if (isValidElement<PropsWithChildren>(children)) {\n return cloneElement(children, {\n ..._mergeProps(\n { ref: buttonRef },\n triggerProps,\n remainingProps,\n ariaProps,\n children.props,\n { 'data-dt-component': dtComponentName },\n ),\n });\n }\n\n if (typeof children === 'function') {\n return children(\n { displayValue, isLoading },\n _mergeProps({ ref: buttonRef }, ariaProps, triggerProps, remainingProps),\n );\n }\n\n if (isDev()) {\n //
|
|
4
|
+
"sourcesContent": ["import {\n type AnchorHTMLAttributes,\n type PropsWithChildren,\n type ReactElement,\n type ReactNode,\n cloneElement,\n isValidElement,\n} from 'react';\n\nimport { useSegmentsTriggerContext } from './hooks/useTriggerContext.js';\nimport type {\n AriaButtonProps,\n ButtonAria,\n} from '../../buttons/button/types/button-aria.js';\nimport type { BehaviorTrackingProps } from '../../core/types/behavior-tracking-props.js';\nimport { DataTestId } from '../../core/types/data-props.js';\nimport { StylingProps } from '../../core/types/styling-props.js';\nimport { isDev } from '../../core/utils/is-node-environment.js';\nimport { mergeProps as _mergeProps } from '../../core/utils/merge-props.js';\n\n/**\n * Accepted properties for SegmentSelector customized trigger.\n * @public\n */\nexport type SegmentSelectorCustomTriggerProps = StylingProps &\n DataTestId &\n BehaviorTrackingProps & {\n /** Elements to be displayed in the CustomTrigger. */\n children:\n | ReactNode\n | ((\n customTriggerProps: {\n displayValue: ReactNode;\n isLoading: boolean;\n },\n props:\n | (StylingProps &\n DataTestId &\n (Partial<ButtonAria<AnchorHTMLAttributes<HTMLButtonElement>>> &\n AriaButtonProps))\n | null,\n ) => ReactElement);\n };\n\n/**\n * A trigger component to customize the SegmentSelector trigger.\n * It applies all necessary props on the first and closest child,\n * which, therefore, should be an interactive element.\n * @experimental\n */\nexport const CustomTrigger = (props: SegmentSelectorCustomTriggerProps) => {\n const { children, ...remainingProps } = props;\n const {\n triggerProps,\n displayValue,\n isLoading,\n buttonRef,\n showError,\n ...ariaProps\n } = useSegmentsTriggerContext();\n\n const dtComponentName = triggerProps?.['data-dt-component'];\n\n if (isValidElement<PropsWithChildren>(children)) {\n return cloneElement(children, {\n ..._mergeProps(\n { ref: buttonRef },\n triggerProps,\n remainingProps,\n ariaProps,\n children.props,\n { 'data-dt-component': dtComponentName },\n ),\n });\n }\n\n if (typeof children === 'function') {\n return children(\n { displayValue, isLoading },\n _mergeProps({ ref: buttonRef }, ariaProps, triggerProps, remainingProps),\n );\n }\n\n if (isDev()) {\n // oxlint-disable-next-line no-console\n console.warn(\n 'When using the CustomTrigger component, you need to render valid children inside it.',\n );\n }\n\n return null;\n};\n\nCustomTrigger['displayName'] = 'SegmentSelector.CustomTrigger';\n"],
|
|
5
5
|
"mappings": "AAAA;AAAA,EAKE;AAAA,EACA;AAAA,OACK;AAEP,SAAS,iCAAiC;AAQ1C,SAAS,aAAa;AACtB,SAAS,cAAc,mBAAmB;AAgCnC,MAAM,gBAAgB,CAAC,UAA6C;AACzE,QAAM,EAAE,UAAU,GAAG,eAAe,IAAI;AACxC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL,IAAI,0BAA0B;AAE9B,QAAM,kBAAkB,eAAe,mBAAmB;AAE1D,MAAI,eAAkC,QAAQ,GAAG;AAC/C,WAAO,aAAa,UAAU;AAAA,MAC5B,GAAG;AAAA,QACD,EAAE,KAAK,UAAU;AAAA,QACjB;AAAA,QACA;AAAA,QACA;AAAA,QACA,SAAS;AAAA,QACT,EAAE,qBAAqB,gBAAgB;AAAA,MACzC;AAAA,IACF,CAAC;AAAA,EACH;AAEA,MAAI,OAAO,aAAa,YAAY;AAClC,WAAO;AAAA,MACL,EAAE,cAAc,UAAU;AAAA,MAC1B,YAAY,EAAE,KAAK,UAAU,GAAG,WAAW,cAAc,cAAc;AAAA,IACzE;AAAA,EACF;AAEA,MAAI,MAAM,GAAG;AAEX,YAAQ;AAAA,MACN;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;AAEA,cAAc,aAAa,IAAI;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
._11m6jkl0-3-
|
|
1
|
+
._11m6jkl0-3-13-0 {
|
|
2
2
|
all: unset;
|
|
3
3
|
display: flex;
|
|
4
4
|
flex-direction: column;
|
|
5
5
|
gap: var(--dt-spacings-size-8, 8px);
|
|
6
6
|
}
|
|
7
|
-
._11m6jkl1-3-
|
|
7
|
+
._11m6jkl1-3-13-0 {
|
|
8
8
|
all: unset;
|
|
9
9
|
width: 100%;
|
|
10
10
|
display: flex;
|
|
11
11
|
flex-direction: column;
|
|
12
12
|
gap: var(--dt-spacings-size-4, 4px);
|
|
13
13
|
}
|
|
14
|
-
._11m6jkl2-3-
|
|
14
|
+
._11m6jkl2-3-13-0 {
|
|
15
15
|
max-height: 100px;
|
|
16
16
|
overflow-y: auto;
|
|
17
17
|
overflow-x: hidden;
|
|
18
18
|
padding-right: var(--dt-spacings-size-12, 12px);
|
|
19
19
|
}
|
|
20
|
-
._11m6jkl3-3-
|
|
20
|
+
._11m6jkl3-3-13-0 > div {
|
|
21
21
|
padding-right: var(--dt-spacings-size-0, 0);
|
|
22
22
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/filters/segment-selector/SegmentSelector.tsx"],
|
|
4
|
-
"sourcesContent": ["\uFEFFimport {\n Children,\n forwardRef,\n isValidElement,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n type ReactElement,\n type ReactNode,\n} from 'react';\nimport { useIntl } from 'react-intl';\n\nimport { useInternalFormRegistration } from '../../forms/form/hooks/useInternalFormRegistration.js';\nimport { useFormControl } from '../../forms/forms-core/hooks/useFormControl.js';\nimport { FormFieldMessagesAction } from '../../forms/forms-core/state/formfield-messages-state-reducer.js';\nimport type { FormControlWithOverlayRef } from '../../forms/shared-types.js';\nimport { segmentsClient } from './contexts/SegmentsCache/SegmentsCache.js';\nimport { SegmentsTriggerContext } from './contexts/SegmentsUI/SegmentsTriggerContext.js';\nimport { UISegmentsProvider } from './contexts/SegmentsUI/SegmentsUIContext.js';\nimport {\n getErrorKey,\n validateSegments,\n} from './contexts/SegmentsUI/segmentValidationHelper.js';\nimport { CustomTrigger } from './CustomTrigger.js';\nimport { useSegments } from './hooks/useSegments.js';\nimport { useTooltipHandler } from './hooks/useTooltipHandler.js';\nimport { useTriggerProps } from './hooks/useTriggerProps.js';\nimport { SegmentsOverlay } from './parts/Overlay.js';\nimport { SegmentSelectorTrigger } from './parts/selectionBar/SegmentSelectorTrigger.js';\nimport { TooltipMessages } from './parts/TooltipMessages.js';\nimport { SEGMENTSELECTOR_MESSAGES } from './segmentMessages.js';\nimport * as styles from './SegmentSelector.sty.js';\nimport type {\n SegmentSelectorProps,\n SegmentSelectorRef,\n} from './SegmentSelector.types.js';\nimport { FocusScope } from '../../core/components/focus-scope/FocusScope.js';\nimport { OverlayContainer } from '../../core/components/OverlayContainer.js';\nimport { VisuallyHidden } from '../../core/components/visually-hidden/VisuallyHidden.js';\nimport { useBehavioralTrackingProps } from '../../core/hooks/useBehavioralTrackingProps.js';\nimport { useId } from '../../core/hooks/useId.js';\nimport { useMergeRefs } from '../../core/hooks/useMergeRefs.js';\nimport { createStratoLogger } from '../../core/sdk/sdk-logger.js';\nimport { StratoLoggerContext } from '../../core/sdk/StratoLoggerContext.js';\nimport { isSlot } from '../../core/utils/is-slot.js';\nimport { devLog } from '../../core/utils/logging.js';\nimport { mergeProps } from '../../core/utils/merge-props.js';\nimport { withFormFieldMessageContextProvider } from '../../forms/forms-core/components/form-field/FormFieldMessageContextProvider.js';\nimport {\n getI18nValidationState,\n useFormFieldValidation,\n} from '../../forms/forms-core/hooks/useFormFieldValidation.js';\nimport { useContainerFocus } from '../../forms/hooks/useContainerFocus.js';\nimport type {\n ValidationState,\n ValidationTrigger,\n} from '../../forms/validation/types.js';\nimport { useCustomMessageEmitter } from '../../forms/validation/useCustomMessageEmitter.js';\nimport { useValidationStateEmitter } from '../../forms/validation/useValidationStateEmitter.js';\nimport { getValidationState } from '../../forms/validation/validation-builders.js';\nimport { useOverlayWithTrigger } from '../../overlays/hooks/useOverlayWithTrigger.js';\nimport { overlayCSS } from '../../overlays/overlay/Overlay.sty.js';\nimport { Tooltip } from '../../overlays/tooltip/Tooltip.js';\n\nconst COMPONENT_NAME = 'SegmentSelector';\n\n/** Iterates over child nodes to extract the content component slot. */\nfunction getCustomTriggerSlot(children: ReactNode) {\n let customTrigger: ReactElement | undefined;\n\n Children.forEach(children, (child) => {\n if (isValidElement(child)) {\n if (isSlot(child, CustomTrigger)) {\n customTrigger = child;\n } else if (child) {\n devLog('Only CustomTrigger is a valid child of the SegmentSelector.');\n }\n } else {\n devLog('The used child is not supported by the SegmentSelector.');\n }\n });\n\n return customTrigger;\n}\n\nconst SegmentSelectorFwd = forwardRef<\n SegmentSelectorRef<HTMLButtonElement>,\n SegmentSelectorProps\n>((props, forwardedRef) => {\n const {\n className: consumerClassName,\n style: consumerStyle,\n id: propId,\n 'data-testid': dataTestId,\n 'data-dtrum-allow': dataDtrumAllow,\n 'data-dtrum-mask': dataDtrumMask,\n variant = 'default',\n onOpenChange,\n onValidityChange,\n onFocus,\n onBlur,\n readOnly: propReadOnly,\n disabled: propDisabled,\n required: propRequired,\n name,\n _form,\n _messageTarget,\n ...remainingProps\n }: SegmentSelectorProps = props;\n\n const intl = useIntl();\n const inputRef = useRef<HTMLInputElement>(null);\n const internalButtonRef = useRef<HTMLButtonElement>(null);\n const formValidityChangeRef = useRef<\n ((state: ValidationState) => void) | undefined\n >(undefined);\n const _emitValidationState = useValidationStateEmitter((state) =>\n formValidityChangeRef.current?.(state),\n );\n\n const {\n disabled,\n required,\n id,\n ariaDisabled,\n readOnly,\n showError,\n messageState: formFieldMessagesState,\n messageDispatch: formFieldMessagesDispatch,\n } = useFormControl({\n propDisabled,\n propRequired,\n propId,\n propAriaDisabled: remainingProps['aria-disabled'],\n propReadOnly,\n });\n\n const {\n isLoading,\n text,\n ariaProps: triggerAriaProps,\n } = useTriggerProps(variant, remainingProps);\n\n const [behavioralTrackingProps] = useBehavioralTrackingProps(remainingProps);\n\n const { onChange, onInvalid, ariaProps } = useFormFieldValidation(\n inputRef,\n { required },\n triggerAriaProps,\n id,\n );\n\n const errorId = useId();\n const overlayOwnerId = useId();\n\n const { segments } = useSegments();\n const stringifiedValue = JSON.stringify(segments);\n\n const getSegmentValidationState = useCallback(\n async (trigger: ValidationTrigger): Promise<ValidationState> => {\n if (inputRef.current && !inputRef.current.validity.valid) {\n return getI18nValidationState(intl, inputRef.current, trigger);\n }\n\n const errorKeys = await Promise.all(segments.map(getErrorKey));\n return getValidationState(\n errorKeys.find((key) => key !== null) ?? undefined,\n trigger,\n undefined,\n id,\n );\n },\n [id, intl, segments],\n );\n\n const emitValidationState = useCustomMessageEmitter(\n _emitValidationState,\n () => getSegmentValidationState('manual'),\n );\n\n const runValidation = useCallback(async () => {\n formFieldMessagesDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n if (segmentsClient.hasAccessRights === false) {\n formFieldMessagesDispatch?.({\n type: FormFieldMessagesAction.ADDMESSAGE,\n payload: {\n id: errorId,\n variant: 'error',\n validityStateKey: 'customError',\n messageType: 'formcontrol',\n showError: true,\n message: intl.formatMessage(\n SEGMENTSELECTOR_MESSAGES.noReadAndWriteAccess,\n ),\n },\n });\n }\n await validateSegments(\n segments,\n onChange,\n formFieldMessagesDispatch,\n formFieldMessagesState.formControlMessages,\n errorId,\n true,\n ).catch(() => undefined);\n }, [\n errorId,\n formFieldMessagesDispatch,\n formFieldMessagesState.formControlMessages,\n intl,\n onChange,\n segments,\n ]);\n\n const formControl = useInternalFormRegistration({\n id,\n name,\n form: _form,\n messageTarget: _messageTarget,\n value: segments.length > 0 ? stringifiedValue : '',\n onValidityChange,\n focus: () => internalButtonRef.current?.focus(),\n validateField: async ({ reveal, trigger }) => {\n inputRef.current?.checkValidity();\n if (reveal) {\n await runValidation();\n }\n const validationState = await getSegmentValidationState(trigger);\n return emitValidationState(validationState);\n },\n resetValidation: () => {\n inputRef.current?.setCustomValidity('');\n formFieldMessagesDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: false, resetShowError: true },\n });\n },\n });\n formValidityChangeRef.current = formControl.onValidityChange;\n\n const segmentSelectorProps = {\n 'data-dtrum-allow': dataDtrumAllow,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-testid': dataTestId,\n style: consumerStyle,\n className: consumerClassName,\n ...mergeProps(behavioralTrackingProps, ariaProps),\n };\n\n const customTrigger = useMemo(\n () => getCustomTriggerSlot(remainingProps.children),\n [remainingProps.children],\n );\n\n const {\n targetRef,\n triggerRef,\n overlayRef,\n overlayState,\n overlayProps: _overlayProps,\n overlayTriggerProps,\n overlayContainerProps,\n } = useOverlayWithTrigger({\n placement: 'bottom-start',\n placementFallbacks: ['bottom-end', 'top-start', 'top-end'],\n offset: 4,\n shouldCloseOnBlur: false,\n onOpenChange: (isOpen) => {\n if (\n !isOpen &&\n !formFieldMessagesState.isTouched &&\n segmentsClient.hasAccessRights !== false\n ) {\n formFieldMessagesDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n\n inputRef.current?.checkValidity();\n void getSegmentValidationState('blur').then(emitValidationState);\n }\n\n if (!isOpen) {\n validateSegments(\n segments,\n onChange,\n formFieldMessagesDispatch,\n formFieldMessagesState.formControlMessages,\n errorId,\n true,\n ).catch(() => undefined);\n }\n\n if (isOpen) {\n void segmentsClient.queryClient.invalidateQueries({\n queryKey: ['getAllSegments'],\n });\n void segmentsClient.queryClient.invalidateQueries({\n queryKey: ['getSegment'],\n });\n void segmentsClient.queryClient.invalidateQueries({\n queryKey: ['errorKey'],\n });\n void segmentsClient.queryClient.invalidateQueries({\n queryKey: ['getSegmentVariables'],\n });\n }\n\n onOpenChange?.(isOpen);\n },\n additionalElevation: 'overlay',\n disabled,\n });\n const { trapFocus, ...overlayProps } = _overlayProps;\n\n const { onFocus: handleFocus, onBlur: handleBlur } = useContainerFocus({\n onFocus,\n onBlur: (e) => {\n if (!formFieldMessagesState.isTouched) {\n inputRef.current?.checkValidity();\n void getSegmentValidationState('blur').then(emitValidationState);\n }\n onBlur?.(e);\n },\n disabled,\n overlayOwnerId,\n });\n\n const { onOpenTooltip, isOpen, textEllipsisRef } = useTooltipHandler(\n !customTrigger && variant === 'default',\n );\n const overlayAriaLabelledById = useId();\n\n useImperativeHandle(\n forwardedRef,\n (): SegmentSelectorRef<HTMLButtonElement> => ({\n element: internalButtonRef.current,\n triggerRef: internalButtonRef.current,\n inputRef: inputRef.current,\n focus: () => internalButtonRef.current?.focus(),\n open: overlayState.open,\n close: overlayState.close,\n validate: async () => {\n inputRef.current?.checkValidity();\n await runValidation();\n\n emitValidationState(await getSegmentValidationState('manual'));\n },\n // DEPRECATION: [APPDEV-18178] BREAKING-CHANGE: Remove validateAsync() and change validate() to return Promise<ValidationState>.\n validateAsync: async () => {\n inputRef.current?.checkValidity();\n await runValidation();\n\n const state = await getSegmentValidationState('manual');\n return emitValidationState(state);\n },\n }),\n [\n runValidation,\n emitValidationState,\n overlayState.close,\n overlayState.open,\n getSegmentValidationState,\n ],\n );\n\n const buttonRef = useMergeRefs([triggerRef, targetRef, internalButtonRef]);\n\n // Since the value update is delayed by the async fetching of the data\n // we need to check the validity as soon as the value is up to date.\n useEffect(() => {\n validateSegments(\n segments,\n onChange,\n formFieldMessagesDispatch,\n formFieldMessagesState.formControlMessages,\n errorId,\n ).catch(() => undefined);\n }, [\n errorId,\n formFieldMessagesDispatch,\n formFieldMessagesState.formControlMessages,\n onChange,\n segments,\n stringifiedValue,\n ]);\n\n // Surface validation state whenever the selected segments change (`change`\n // trigger), keeping `onValidityChange` in sync as the selection is edited.\n useEffect(() => {\n void getSegmentValidationState('change').then(emitValidationState);\n // Fire only on actual segment changes.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [stringifiedValue]);\n\n const providerValue = useMemo(\n () => ({\n isLoading,\n displayValue: text,\n triggerProps: {\n ...overlayTriggerProps,\n 'data-dt-component': COMPONENT_NAME,\n onFocus: handleFocus,\n onBlur: handleBlur,\n },\n buttonRef,\n showError,\n ...ariaProps,\n }),\n [\n isLoading,\n text,\n overlayTriggerProps,\n handleFocus,\n handleBlur,\n buttonRef,\n showError,\n ariaProps,\n ],\n );\n\n const stratoLogger = useMemo(() => {\n return createStratoLogger.bind({\n name,\n id: propId,\n ariaLabel: triggerAriaProps['aria-label'],\n })(COMPONENT_NAME);\n }, [name, propId, triggerAriaProps]);\n\n return (\n <>\n <SegmentsTriggerContext.Provider value={providerValue}>\n <Tooltip\n text={<TooltipMessages ariaLabel={triggerAriaProps['aria-label']} />}\n className={styles.overwriteTooltipElementPadding}\n onOpenChange={onOpenTooltip}\n open={isOpen}\n >\n {customTrigger ?? (\n <SegmentSelectorTrigger\n textEllipsisRef={textEllipsisRef}\n {...segmentSelectorProps}\n />\n )}\n </Tooltip>\n <VisuallyHidden>\n <input\n ref={inputRef}\n id={id}\n value={segments.length > 0 ? stringifiedValue : ''}\n onChange={() => undefined}\n aria-hidden={true}\n readOnly={readOnly}\n disabled={disabled}\n name={name}\n form={_form}\n required={required}\n tabIndex={-1}\n aria-disabled={ariaDisabled}\n onInvalid={onInvalid}\n />\n </VisuallyHidden>\n </SegmentsTriggerContext.Provider>\n\n {overlayState.isOpen && (\n <StratoLoggerContext.Provider value={stratoLogger}>\n <OverlayContainer\n data-testid={dataTestId}\n {...overlayContainerProps}\n data-dt-owner={overlayOwnerId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n >\n <FocusScope autoFocus contain={trapFocus}>\n <div\n ref={overlayRef}\n className={overlayCSS}\n {...overlayProps}\n aria-labelledby={overlayAriaLabelledById}\n >\n <UISegmentsProvider\n readOnly={readOnly}\n overlayState={overlayState}\n >\n <SegmentsOverlay labelId={overlayAriaLabelledById} />\n </UISegmentsProvider>\n </div>\n </FocusScope>\n </OverlayContainer>\n </StratoLoggerContext.Provider>\n )}\n </>\n );\n});\n\n/**\n * SegmentSelector component that uses a fallback formFieldMessages-context if it wasn't wrapped in a FormField.\n */\nconst SegmentSelectorRoot = withFormFieldMessageContextProvider<\n SegmentSelectorProps,\n FormControlWithOverlayRef<HTMLButtonElement>,\n HTMLButtonElement\n>(SegmentSelectorFwd);\n\n/**\n * Use the `SegmentSelector` as a top-level filter to narrow data by segment, setting the scope for any additional filters applied alongside it.\n * @public\n */\nexport const SegmentSelector = Object.assign(SegmentSelectorRoot, {\n CustomTrigger,\n});\n\n(\n SegmentSelector as typeof SegmentSelector & { displayName: string }\n).displayName = COMPONENT_NAME;\n"],
|
|
5
|
-
"mappings": "AAmbI,mBAGY,KAFV,YADF;
|
|
4
|
+
"sourcesContent": ["import {\n Children,\n forwardRef,\n isValidElement,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n type ReactElement,\n type ReactNode,\n} from 'react';\nimport { useIntl } from 'react-intl';\n\nimport { useInternalFormRegistration } from '../../forms/form/hooks/useInternalFormRegistration.js';\nimport { useFormControl } from '../../forms/forms-core/hooks/useFormControl.js';\nimport { FormFieldMessagesAction } from '../../forms/forms-core/state/formfield-messages-state-reducer.js';\nimport type { FormControlWithOverlayRef } from '../../forms/shared-types.js';\nimport { segmentsClient } from './contexts/SegmentsCache/SegmentsCache.js';\nimport { SegmentsTriggerContext } from './contexts/SegmentsUI/SegmentsTriggerContext.js';\nimport { UISegmentsProvider } from './contexts/SegmentsUI/SegmentsUIContext.js';\nimport {\n getErrorKey,\n validateSegments,\n} from './contexts/SegmentsUI/segmentValidationHelper.js';\nimport { CustomTrigger } from './CustomTrigger.js';\nimport { useSegments } from './hooks/useSegments.js';\nimport { useTooltipHandler } from './hooks/useTooltipHandler.js';\nimport { useTriggerProps } from './hooks/useTriggerProps.js';\nimport { SegmentsOverlay } from './parts/Overlay.js';\nimport { SegmentSelectorTrigger } from './parts/selectionBar/SegmentSelectorTrigger.js';\nimport { TooltipMessages } from './parts/TooltipMessages.js';\nimport { SEGMENTSELECTOR_MESSAGES } from './segmentMessages.js';\nimport * as styles from './SegmentSelector.sty.js';\nimport type {\n SegmentSelectorProps,\n SegmentSelectorRef,\n} from './SegmentSelector.types.js';\nimport { FocusScope } from '../../core/components/focus-scope/FocusScope.js';\nimport { OverlayContainer } from '../../core/components/OverlayContainer.js';\nimport { VisuallyHidden } from '../../core/components/visually-hidden/VisuallyHidden.js';\nimport { useBehavioralTrackingProps } from '../../core/hooks/useBehavioralTrackingProps.js';\nimport { useId } from '../../core/hooks/useId.js';\nimport { useMergeRefs } from '../../core/hooks/useMergeRefs.js';\nimport { createStratoLogger } from '../../core/sdk/sdk-logger.js';\nimport { StratoLoggerContext } from '../../core/sdk/StratoLoggerContext.js';\nimport { isSlot } from '../../core/utils/is-slot.js';\nimport { devLog } from '../../core/utils/logging.js';\nimport { mergeProps } from '../../core/utils/merge-props.js';\nimport { withFormFieldMessageContextProvider } from '../../forms/forms-core/components/form-field/FormFieldMessageContextProvider.js';\nimport {\n getI18nValidationState,\n useFormFieldValidation,\n} from '../../forms/forms-core/hooks/useFormFieldValidation.js';\nimport { useContainerFocus } from '../../forms/hooks/useContainerFocus.js';\nimport type {\n ValidationState,\n ValidationTrigger,\n} from '../../forms/validation/types.js';\nimport { useCustomMessageEmitter } from '../../forms/validation/useCustomMessageEmitter.js';\nimport { useValidationStateEmitter } from '../../forms/validation/useValidationStateEmitter.js';\nimport { getValidationState } from '../../forms/validation/validation-builders.js';\nimport { useOverlayWithTrigger } from '../../overlays/hooks/useOverlayWithTrigger.js';\nimport { overlayCSS } from '../../overlays/overlay/Overlay.sty.js';\nimport { Tooltip } from '../../overlays/tooltip/Tooltip.js';\n\nconst COMPONENT_NAME = 'SegmentSelector';\n\n/** Iterates over child nodes to extract the content component slot. */\nfunction getCustomTriggerSlot(children: ReactNode) {\n let customTrigger: ReactElement | undefined;\n\n Children.forEach(children, (child) => {\n if (isValidElement(child)) {\n if (isSlot(child, CustomTrigger)) {\n customTrigger = child;\n } else if (child) {\n devLog('Only CustomTrigger is a valid child of the SegmentSelector.');\n }\n } else {\n devLog('The used child is not supported by the SegmentSelector.');\n }\n });\n\n return customTrigger;\n}\n\nconst SegmentSelectorFwd = forwardRef<\n SegmentSelectorRef<HTMLButtonElement>,\n SegmentSelectorProps\n>((props, forwardedRef) => {\n const {\n className: consumerClassName,\n style: consumerStyle,\n id: propId,\n 'data-testid': dataTestId,\n 'data-dtrum-allow': dataDtrumAllow,\n 'data-dtrum-mask': dataDtrumMask,\n variant = 'default',\n onOpenChange,\n onValidityChange,\n onFocus,\n onBlur,\n readOnly: propReadOnly,\n disabled: propDisabled,\n required: propRequired,\n name,\n _form,\n _messageTarget,\n ...remainingProps\n }: SegmentSelectorProps = props;\n\n const intl = useIntl();\n const inputRef = useRef<HTMLInputElement>(null);\n const internalButtonRef = useRef<HTMLButtonElement>(null);\n const formValidityChangeRef = useRef<\n ((state: ValidationState) => void) | undefined\n >(undefined);\n const _emitValidationState = useValidationStateEmitter((state) =>\n formValidityChangeRef.current?.(state),\n );\n\n const {\n disabled,\n required,\n id,\n ariaDisabled,\n readOnly,\n showError,\n messageState: formFieldMessagesState,\n messageDispatch: formFieldMessagesDispatch,\n } = useFormControl({\n propDisabled,\n propRequired,\n propId,\n propAriaDisabled: remainingProps['aria-disabled'],\n propReadOnly,\n });\n\n const {\n isLoading,\n text,\n ariaProps: triggerAriaProps,\n } = useTriggerProps(variant, remainingProps);\n\n const [behavioralTrackingProps] = useBehavioralTrackingProps(remainingProps);\n\n const { onChange, onInvalid, ariaProps } = useFormFieldValidation(\n inputRef,\n { required },\n triggerAriaProps,\n id,\n );\n\n const errorId = useId();\n const overlayOwnerId = useId();\n\n const { segments } = useSegments();\n const stringifiedValue = JSON.stringify(segments);\n\n const getSegmentValidationState = useCallback(\n async (trigger: ValidationTrigger): Promise<ValidationState> => {\n if (inputRef.current && !inputRef.current.validity.valid) {\n return getI18nValidationState(intl, inputRef.current, trigger);\n }\n\n const errorKeys = await Promise.all(segments.map(getErrorKey));\n return getValidationState(\n errorKeys.find((key) => key !== null) ?? undefined,\n trigger,\n undefined,\n id,\n );\n },\n [id, intl, segments],\n );\n\n const emitValidationState = useCustomMessageEmitter(\n _emitValidationState,\n () => getSegmentValidationState('manual'),\n );\n\n const runValidation = useCallback(async () => {\n formFieldMessagesDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n if (segmentsClient.hasAccessRights === false) {\n formFieldMessagesDispatch?.({\n type: FormFieldMessagesAction.ADDMESSAGE,\n payload: {\n id: errorId,\n variant: 'error',\n validityStateKey: 'customError',\n messageType: 'formcontrol',\n showError: true,\n message: intl.formatMessage(\n SEGMENTSELECTOR_MESSAGES.noReadAndWriteAccess,\n ),\n },\n });\n }\n await validateSegments(\n segments,\n onChange,\n formFieldMessagesDispatch,\n formFieldMessagesState.formControlMessages,\n errorId,\n true,\n ).catch(() => undefined);\n }, [\n errorId,\n formFieldMessagesDispatch,\n formFieldMessagesState.formControlMessages,\n intl,\n onChange,\n segments,\n ]);\n\n const formControl = useInternalFormRegistration({\n id,\n name,\n form: _form,\n messageTarget: _messageTarget,\n value: segments.length > 0 ? stringifiedValue : '',\n onValidityChange,\n focus: () => internalButtonRef.current?.focus(),\n validateField: async ({ reveal, trigger }) => {\n inputRef.current?.checkValidity();\n if (reveal) {\n await runValidation();\n }\n const validationState = await getSegmentValidationState(trigger);\n return emitValidationState(validationState);\n },\n resetValidation: () => {\n inputRef.current?.setCustomValidity('');\n formFieldMessagesDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: false, resetShowError: true },\n });\n },\n });\n formValidityChangeRef.current = formControl.onValidityChange;\n\n const segmentSelectorProps = {\n 'data-dtrum-allow': dataDtrumAllow,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-testid': dataTestId,\n style: consumerStyle,\n className: consumerClassName,\n ...mergeProps(behavioralTrackingProps, ariaProps),\n };\n\n const customTrigger = useMemo(\n () => getCustomTriggerSlot(remainingProps.children),\n [remainingProps.children],\n );\n\n const {\n targetRef,\n triggerRef,\n overlayRef,\n overlayState,\n overlayProps: _overlayProps,\n overlayTriggerProps,\n overlayContainerProps,\n } = useOverlayWithTrigger({\n placement: 'bottom-start',\n placementFallbacks: ['bottom-end', 'top-start', 'top-end'],\n offset: 4,\n shouldCloseOnBlur: false,\n onOpenChange: (isOpen) => {\n if (\n !isOpen &&\n !formFieldMessagesState.isTouched &&\n segmentsClient.hasAccessRights !== false\n ) {\n formFieldMessagesDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n\n inputRef.current?.checkValidity();\n void getSegmentValidationState('blur').then(emitValidationState);\n }\n\n if (!isOpen) {\n validateSegments(\n segments,\n onChange,\n formFieldMessagesDispatch,\n formFieldMessagesState.formControlMessages,\n errorId,\n true,\n ).catch(() => undefined);\n }\n\n if (isOpen) {\n void segmentsClient.queryClient.invalidateQueries({\n queryKey: ['getAllSegments'],\n });\n void segmentsClient.queryClient.invalidateQueries({\n queryKey: ['getSegment'],\n });\n void segmentsClient.queryClient.invalidateQueries({\n queryKey: ['errorKey'],\n });\n void segmentsClient.queryClient.invalidateQueries({\n queryKey: ['getSegmentVariables'],\n });\n }\n\n onOpenChange?.(isOpen);\n },\n additionalElevation: 'overlay',\n disabled,\n });\n const { trapFocus, ...overlayProps } = _overlayProps;\n\n const { onFocus: handleFocus, onBlur: handleBlur } = useContainerFocus({\n onFocus,\n onBlur: (e) => {\n if (!formFieldMessagesState.isTouched) {\n inputRef.current?.checkValidity();\n void getSegmentValidationState('blur').then(emitValidationState);\n }\n onBlur?.(e);\n },\n disabled,\n overlayOwnerId,\n });\n\n const { onOpenTooltip, isOpen, textEllipsisRef } = useTooltipHandler(\n !customTrigger && variant === 'default',\n );\n const overlayAriaLabelledById = useId();\n\n useImperativeHandle(\n forwardedRef,\n (): SegmentSelectorRef<HTMLButtonElement> => ({\n element: internalButtonRef.current,\n triggerRef: internalButtonRef.current,\n inputRef: inputRef.current,\n focus: () => internalButtonRef.current?.focus(),\n open: overlayState.open,\n close: overlayState.close,\n validate: async () => {\n inputRef.current?.checkValidity();\n await runValidation();\n\n emitValidationState(await getSegmentValidationState('manual'));\n },\n // DEPRECATION: [APPDEV-18178] BREAKING-CHANGE: Remove validateAsync() and change validate() to return Promise<ValidationState>.\n validateAsync: async () => {\n inputRef.current?.checkValidity();\n await runValidation();\n\n const state = await getSegmentValidationState('manual');\n return emitValidationState(state);\n },\n }),\n [\n runValidation,\n emitValidationState,\n overlayState.close,\n overlayState.open,\n getSegmentValidationState,\n ],\n );\n\n const buttonRef = useMergeRefs([triggerRef, targetRef, internalButtonRef]);\n\n // Since the value update is delayed by the async fetching of the data\n // we need to check the validity as soon as the value is up to date.\n useEffect(() => {\n validateSegments(\n segments,\n onChange,\n formFieldMessagesDispatch,\n formFieldMessagesState.formControlMessages,\n errorId,\n ).catch(() => undefined);\n }, [\n errorId,\n formFieldMessagesDispatch,\n formFieldMessagesState.formControlMessages,\n onChange,\n segments,\n stringifiedValue,\n ]);\n\n // Surface validation state whenever the selected segments change (`change`\n // trigger), keeping `onValidityChange` in sync as the selection is edited.\n useEffect(() => {\n void getSegmentValidationState('change').then(emitValidationState);\n // Fire only on actual segment changes.\n // oxlint-disable-next-line react-hooks/exhaustive-deps\n }, [stringifiedValue]);\n\n const providerValue = useMemo(\n () => ({\n isLoading,\n displayValue: text,\n triggerProps: {\n ...overlayTriggerProps,\n 'data-dt-component': COMPONENT_NAME,\n onFocus: handleFocus,\n onBlur: handleBlur,\n },\n buttonRef,\n showError,\n ...ariaProps,\n }),\n [\n isLoading,\n text,\n overlayTriggerProps,\n handleFocus,\n handleBlur,\n buttonRef,\n showError,\n ariaProps,\n ],\n );\n\n const stratoLogger = useMemo(() => {\n return createStratoLogger.bind({\n name,\n id: propId,\n ariaLabel: triggerAriaProps['aria-label'],\n })(COMPONENT_NAME);\n }, [name, propId, triggerAriaProps]);\n\n return (\n <>\n <SegmentsTriggerContext.Provider value={providerValue}>\n <Tooltip\n text={<TooltipMessages ariaLabel={triggerAriaProps['aria-label']} />}\n className={styles.overwriteTooltipElementPadding}\n onOpenChange={onOpenTooltip}\n open={isOpen}\n >\n {customTrigger ?? (\n <SegmentSelectorTrigger\n textEllipsisRef={textEllipsisRef}\n {...segmentSelectorProps}\n />\n )}\n </Tooltip>\n <VisuallyHidden>\n <input\n ref={inputRef}\n id={id}\n value={segments.length > 0 ? stringifiedValue : ''}\n onChange={() => undefined}\n aria-hidden={true}\n readOnly={readOnly}\n disabled={disabled}\n name={name}\n form={_form}\n required={required}\n tabIndex={-1}\n aria-disabled={ariaDisabled}\n onInvalid={onInvalid}\n />\n </VisuallyHidden>\n </SegmentsTriggerContext.Provider>\n\n {overlayState.isOpen && (\n <StratoLoggerContext.Provider value={stratoLogger}>\n <OverlayContainer\n data-testid={dataTestId}\n {...overlayContainerProps}\n data-dt-owner={overlayOwnerId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n >\n <FocusScope autoFocus contain={trapFocus}>\n <div\n ref={overlayRef}\n className={overlayCSS}\n {...overlayProps}\n aria-labelledby={overlayAriaLabelledById}\n >\n <UISegmentsProvider\n readOnly={readOnly}\n overlayState={overlayState}\n >\n <SegmentsOverlay labelId={overlayAriaLabelledById} />\n </UISegmentsProvider>\n </div>\n </FocusScope>\n </OverlayContainer>\n </StratoLoggerContext.Provider>\n )}\n </>\n );\n});\n\n/**\n * SegmentSelector component that uses a fallback formFieldMessages-context if it wasn't wrapped in a FormField.\n */\nconst SegmentSelectorRoot = withFormFieldMessageContextProvider<\n SegmentSelectorProps,\n FormControlWithOverlayRef<HTMLButtonElement>,\n HTMLButtonElement\n>(SegmentSelectorFwd);\n\n/**\n * Use the `SegmentSelector` as a top-level filter to narrow data by segment, setting the scope for any additional filters applied alongside it.\n * @public\n */\nexport const SegmentSelector = Object.assign(SegmentSelectorRoot, {\n CustomTrigger,\n});\n\n(\n SegmentSelector as typeof SegmentSelector & { displayName: string }\n).displayName = COMPONENT_NAME;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["isOpen"]
|
|
7
7
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import "./SegmentSelector.css";
|
|
2
|
-
var overwriteTooltipElementPadding = "_11m6jkl3-3-
|
|
3
|
-
var segmentSelectorList = "_11m6jkl0-3-
|
|
4
|
-
var segmentSelectorListItem = "_11m6jkl1-3-
|
|
5
|
-
var tooltipMaxHeight = "_11m6jkl2-3-
|
|
2
|
+
var overwriteTooltipElementPadding = "_11m6jkl3-3-13-0";
|
|
3
|
+
var segmentSelectorList = "_11m6jkl0-3-13-0";
|
|
4
|
+
var segmentSelectorListItem = "_11m6jkl1-3-13-0";
|
|
5
|
+
var tooltipMaxHeight = "_11m6jkl2-3-13-0";
|
|
6
6
|
export {
|
|
7
7
|
overwriteTooltipElementPadding,
|
|
8
8
|
segmentSelectorList,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/filters/segment-selector/SegmentSelector.css.ts"],
|
|
4
|
-
"sourcesContent": ["import './SegmentSelector.css';\nexport var overwriteTooltipElementPadding = '_11m6jkl3-3-
|
|
4
|
+
"sourcesContent": ["import './SegmentSelector.css';\nexport var overwriteTooltipElementPadding = '_11m6jkl3-3-13-0';\nexport var segmentSelectorList = '_11m6jkl0-3-13-0';\nexport var segmentSelectorListItem = '_11m6jkl1-3-13-0';\nexport var tooltipMaxHeight = '_11m6jkl2-3-13-0';"],
|
|
5
5
|
"mappings": "AAAA,OAAO;AACA,IAAI,iCAAiC;AACrC,IAAI,sBAAsB;AAC1B,IAAI,0BAA0B;AAC9B,IAAI,mBAAmB;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|