@dynatrace/strato-components 3.7.1 → 3.8.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 +2113 -0
- package/buttons/button/Button.css +15 -15
- package/buttons/button/Button.d.ts +2 -1
- package/buttons/button/Button.js +5 -4
- package/buttons/button/Button.sty.js +4 -4
- package/buttons/intent-button/IntentButton.css +1 -1
- package/buttons/intent-button/IntentButton.sty.js +1 -1
- package/buttons/intent-button/IntentButtonWithResponse.js +2 -2
- package/buttons/notify-button/NotifyButton.css +2 -2
- package/buttons/notify-button/NotifyButton.sty.js +2 -2
- package/buttons/run-query-button/RunQueryButton.js +6 -13
- package/charts/categorical-bar/components/interactions/hooks/useSeriesActionClickHandler.js +7 -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/hooks/store/state-setters.d.ts +2 -2
- package/charts/categorical-bar/hooks/store/state-setters.js +3 -1
- package/charts/categorical-bar/layout/CategoricalGridLayout.js +1 -2
- 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/canvas/utils/calculate-marker-width-and-content.js +1 -2
- 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/annotations/utils/aggregate-markers-coords.js +19 -2
- package/charts/core/components/annotations/utils/resolve-value-marker-hit-area.d.ts +3 -0
- package/charts/core/components/annotations/utils/resolve-value-marker-hit-area.js +32 -0
- package/charts/core/components/axes/Axis.css +1 -1
- package/charts/core/components/axes/Axis.js +2 -5
- package/charts/core/components/axes/Axis.sty.js +1 -1
- package/charts/core/components/axes/AxisPrimitive.d.ts +31 -0
- package/charts/core/components/axes/AxisPrimitive.js +221 -0
- package/charts/core/components/axes/components/CategoryBottomAxis.js +3 -3
- package/charts/core/components/axes/components/CategoryLeftAxis.js +2 -2
- 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/axes/components/TickLabel.d.ts +1 -1
- package/charts/core/components/axes/components/TimeTableHeaderAxis.js +2 -2
- package/charts/core/components/axes/components/ValueTableHeaderAxis.js +2 -2
- package/charts/core/components/axes/constants.d.ts +0 -1
- package/charts/core/components/axes/constants.js +0 -2
- package/charts/core/components/axes/types.d.ts +50 -3
- package/charts/core/components/axes/utils/get-tick-label-props.d.ts +1 -23
- package/charts/core/components/axes/utils/get-tick-label-props.js +45 -4
- 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-grid/constants.d.ts +23 -0
- package/charts/core/components/chart-grid/constants.js +33 -0
- 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-states/ChartState.css +4 -4
- package/charts/core/components/chart-states/ChartState.sty.js +4 -4
- package/charts/core/components/crosshair/HorizontalCrosshair.js +6 -4
- package/charts/core/components/crosshair/VerticalCrosshair.js +7 -5
- 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/grid/Grid.d.ts +5 -2
- package/charts/core/components/grid/Grid.js +1 -4
- package/charts/core/components/grid/GridColumns.d.ts +6 -3
- package/charts/core/components/grid/GridColumns.js +9 -7
- package/charts/core/components/grid/GridLine.d.ts +15 -5
- package/charts/core/components/grid/GridLine.js +5 -4
- package/charts/core/components/grid/GridLines.d.ts +2 -2
- package/charts/core/components/grid/GridRows.d.ts +6 -3
- package/charts/core/components/grid/GridRows.js +9 -7
- package/charts/core/components/grid/utils/compute-grid-lines.d.ts +3 -0
- package/charts/core/components/grid/utils/compute-grid-lines.js +35 -0
- package/charts/core/components/grid/utils/should-highlight-zero-line.d.ts +2 -2
- package/charts/core/components/interactions-overlay/InteractionsOverlay.css +5 -5
- package/charts/core/components/interactions-overlay/InteractionsOverlay.sty.js +2 -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 +3 -3
- package/charts/core/components/legend/categorical/components/ChartLegendIcon/ChartLegendIcon.sty.js +3 -3
- package/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.css +17 -17
- package/charts/core/components/legend/categorical/components/ChartLegendItem/ChartLegendItem.sty.js +6 -6
- 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/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/loader-overlay/LoaderOverlay.css +2 -2
- package/charts/core/components/loader-overlay/LoaderOverlay.sty.js +2 -2
- package/charts/core/components/overlay-tooltip/components/DynamicTooltip.js +7 -3
- package/charts/core/components/overlay-tooltip/components/TooltipPortal.js +7 -1
- 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 +6 -6
- package/charts/core/components/overlay-tooltip/components/header/Header.sty.js +6 -6
- 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/tooltip.css +52 -52
- package/charts/core/components/overlay-tooltip/tooltip.sty.js +39 -39
- package/charts/core/components/overlay-tooltip/useTooltipActions.js +8 -0
- package/charts/core/components/overlay-tooltip/utils/is-scroll-ignored.d.ts +2 -0
- package/charts/core/components/overlay-tooltip/utils/is-scroll-ignored.js +28 -0
- package/charts/core/components/overlays/ChartOverlaysBorder.css +5 -5
- package/charts/core/components/overlays/ChartOverlaysBorder.sty.js +5 -5
- 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/series-action/ChartActionsMenuAsync.js +3 -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.js +0 -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/sparkline-display/Sparkline.css +6 -6
- package/charts/core/components/sparkline-display/Sparkline.sty.js +2 -2
- package/charts/core/components/sparkline-display/SparklineContainer.js +6 -4
- 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/threshold-bar/indicators/ThresholdIndicator.js +40 -21
- package/charts/core/components/threshold-bar/markers/CircleMarker.js +1 -2
- package/charts/core/components/threshold-bar/markers/PillMarker.js +1 -2
- package/charts/core/components/threshold-bar/styles.css +9 -9
- 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 +16 -6
- 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/types.d.ts +4 -2
- 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/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/constants.d.ts +7 -0
- package/charts/core/constants.js +2 -0
- package/charts/core/hooks/useOverlayEventHandlers.d.ts +10 -11
- package/charts/core/hooks/useOverlayEventHandlers.js +40 -20
- package/charts/core/hooks/usePointerAndScrollResponsiveChartBounds.js +1 -1
- package/charts/core/hooks/useThrottledCallbackOnScroll.d.ts +1 -1
- package/charts/core/types/chart-data.d.ts +13 -0
- package/charts/core/types/chart-data.js +15 -0
- package/charts/core/types/text-size.d.ts +7 -0
- package/charts/core/types/text-size.js +15 -0
- package/charts/core/typographyStyles.css +1 -1
- package/charts/core/typographyStyles.sty.js +1 -1
- package/charts/core/utils/formatter-by-ticks.d.ts +4 -5
- package/charts/core/utils/formatter-by-ticks.js +4 -4
- package/charts/core/utils/text-measure.d.ts +34 -0
- package/charts/{tree-map → core}/utils/text-measure.js +19 -19
- 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.js +1 -2
- 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/GaugeChartLayout/GaugeChartToolbar.d.ts +2 -0
- package/charts/gauge/components/GaugeChartLayout/GaugeChartToolbar.js +2 -2
- 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.js +27 -2
- 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.sty.js +2 -2
- package/charts/histogram/HistogramChart.d.ts +3 -3
- package/charts/histogram/HistogramChart.js +4 -5
- package/charts/histogram/HistogramChartInternal.js +20 -11
- 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/HistogramTooltip.css +1 -1
- 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/honeycomb/HoneycombChart.css +1 -1
- package/charts/honeycomb/HoneycombChart.js +6 -3
- package/charts/honeycomb/HoneycombChart.sty.js +1 -1
- package/charts/honeycomb/components/HiveOverlay.css +1 -1
- package/charts/honeycomb/components/HiveOverlay.js +2 -10
- 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/components/canvas/renderers/CanvasCircleRenderer.js +7 -2
- package/charts/honeycomb/components/canvas/renderers/CanvasHexagonRenderer.js +9 -5
- package/charts/honeycomb/components/canvas/renderers/CanvasSquareRenderer.js +7 -2
- package/charts/honeycomb/components/canvas/utils/draw-label-and-value.d.ts +2 -1
- package/charts/honeycomb/components/canvas/utils/draw-label-and-value.js +100 -20
- package/charts/honeycomb/components/canvas/utils/get-font-sizes.d.ts +5 -0
- package/charts/honeycomb/components/canvas/utils/get-font-sizes.js +52 -0
- package/charts/honeycomb/components/canvas/utils/get-truncation-method.d.ts +3 -1
- package/charts/honeycomb/components/canvas/utils/get-truncation-method.js +78 -8
- package/charts/honeycomb/components/canvas/utils/measure-node-text-content.d.ts +2 -1
- package/charts/honeycomb/components/canvas/utils/measure-node-text-content.js +13 -16
- package/charts/honeycomb/components/canvas/utils/render-text-to-canvas.d.ts +1 -1
- package/charts/honeycomb/components/canvas/utils/render-text-to-canvas.js +2 -2
- package/charts/honeycomb/components/canvas/utils/set-font-details-to-context.d.ts +1 -1
- package/charts/honeycomb/components/canvas/utils/set-font-details-to-context.js +11 -9
- package/charts/honeycomb/components/toolbar/HoneycombToolbar.js +1 -3
- package/charts/honeycomb/constants.d.ts +8 -4
- package/charts/honeycomb/constants.js +17 -13
- package/charts/honeycomb/context/honeycomb-color-scheme.context.d.ts +1 -1
- package/charts/honeycomb/context/honeycomb-filtered-color-scheme.context.d.ts +1 -1
- package/charts/honeycomb/context/honeycomb-text-size.context.d.ts +2 -0
- package/charts/{core/components/toolbar/utils/estimate-toolbar-width.js → honeycomb/context/honeycomb-text-size.context.js} +8 -15
- package/charts/honeycomb/hooks/use-honeycomb-chart-config.js +6 -1
- package/charts/honeycomb/hooks/use-honeycomb-color-scheme.context.d.ts +1 -1
- package/charts/honeycomb/hooks/use-honeycomb-filtered-color-scheme.d.ts +1 -1
- package/charts/honeycomb/hooks/use-honeycomb-text-size.d.ts +1 -0
- package/charts/honeycomb/hooks/use-honeycomb-text-size.js +25 -0
- package/charts/honeycomb/hooks/use-overlay-events.d.ts +4 -5
- package/charts/honeycomb/hooks/use-overlay-events.js +4 -7
- package/charts/honeycomb/store/selectors.d.ts +0 -1
- package/charts/honeycomb/store/selectors.js +0 -2
- package/charts/honeycomb/store/store.d.ts +1 -2
- package/charts/honeycomb/store/store.js +0 -13
- package/charts/honeycomb/types/honeycomb-config-properties.d.ts +8 -1
- package/charts/honeycomb/types/honeycomb-internal.d.ts +4 -1
- package/charts/honeycomb/types/honeycomb.d.ts +53 -10
- package/charts/honeycomb/types/state.d.ts +0 -4
- package/charts/honeycomb/types/state.js +0 -3
- package/charts/honeycomb/utils/build-honeycomb-config.d.ts +3 -2
- package/charts/honeycomb/utils/build-honeycomb-config.js +17 -4
- package/charts/honeycomb/utils/normalize-honeycomb-chart-data.d.ts +17 -0
- package/charts/honeycomb/utils/normalize-honeycomb-chart-data.js +39 -0
- package/charts/index.d.ts +6 -4
- package/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.css +15 -15
- package/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js +10 -10
- 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/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/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.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/components/MeterBarChartThresholds/MeterBarChartThresholds.css +1 -1
- package/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholds/MeterBarChartThresholds.sty.js +1 -1
- package/charts/pie/DonutChart.d.ts +2 -3
- package/charts/pie/DonutChart.js +6 -13
- package/charts/pie/PieChart.d.ts +2 -3
- package/charts/pie/PieChart.js +8 -15
- 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/PieChartOverlays/PieChartOverlays.css +1 -1
- package/charts/pie/components/PieChartOverlays/PieChartOverlays.js +3 -3
- 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 +59 -54
- package/charts/pie/components/PieChartPlot/PieChartPlot.sty.js +1 -1
- package/charts/pie/components/PieChartSlice.js +15 -11
- package/charts/pie/constants.d.ts +1 -0
- package/charts/pie/constants.js +2 -0
- package/charts/pie/context/ChartConfigContext.d.ts +1 -0
- package/charts/pie/hooks/useNormalizedPieData.d.ts +7 -0
- package/charts/pie/hooks/useNormalizedPieData.js +38 -0
- package/charts/pie/hooks/useOverlayHandlers.d.ts +3 -2
- package/charts/pie/hooks/useOverlayHandlers.js +7 -5
- package/charts/pie/hooks/useSliceHandlers.d.ts +4 -3
- package/charts/pie/hooks/useSliceHandlers.js +29 -3
- package/charts/pie/types/pie-chart.config.d.ts +102 -37
- package/charts/pie/utils/group-slices-thinner-than-pad-angle.js +2 -1
- package/charts/pie/utils/normalize-pie-data.d.ts +29 -0
- package/charts/pie/utils/normalize-pie-data.js +38 -0
- package/charts/pie/utils/pie-config.js +2 -1
- package/charts/pie/utils/sanitize-toolbar-intents.d.ts +2 -0
- package/charts/{tree-map/hooks/useSetOverlayState.js → pie/utils/sanitize-toolbar-intents.js} +9 -18
- 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/timeseries/TimeseriesChart.d.ts +1 -1
- package/charts/timeseries/TimeseriesChartInternal.d.ts +4 -0
- package/charts/timeseries/TimeseriesChartInternal.js +40 -21
- 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/thresholds/ThresholdIndicators.css +2 -2
- package/charts/timeseries/components/thresholds/ThresholdIndicators.sty.js +2 -2
- package/charts/top-list/TopList.css +1 -1
- package/charts/top-list/TopList.js +9 -5
- package/charts/top-list/TopList.sty.js +1 -1
- package/charts/top-list/constants.d.ts +1 -4
- package/charts/top-list/constants.js +2 -1
- package/charts/top-list/types/top-list.d.ts +6 -0
- package/charts/tree-map/TreeMap.d.ts +2 -3
- package/charts/tree-map/TreeMap.js +10 -1
- package/charts/tree-map/components/TreeMapChartLayout.js +4 -4
- package/charts/tree-map/components/TreeMapLegend/TreeMapCategoricalLegend.js +3 -1
- package/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.css +1 -1
- package/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.js +2 -10
- package/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.sty.js +1 -1
- package/charts/tree-map/components/TreeMapToolbar/TreeMapToolbar.js +2 -4
- package/charts/tree-map/components/canvas/TreeMapSquareRenderer.js +4 -2
- package/charts/tree-map/constants.d.ts +4 -2
- package/charts/tree-map/constants.js +1 -2
- package/charts/tree-map/context/TextSizeContext.d.ts +3 -2
- package/charts/tree-map/hooks/useOverlayHandlers.d.ts +4 -5
- package/charts/tree-map/hooks/useOverlayHandlers.js +4 -7
- package/charts/tree-map/hooks/useTreeMapChartConfig.d.ts +2 -2
- package/charts/tree-map/hooks/useTreeMapChartHandlers.js +4 -1
- package/charts/tree-map/providers/TreeMapChartProviders.d.ts +2 -1
- package/charts/tree-map/providers/TreeMapChartProviders.js +1 -1
- package/charts/tree-map/store/selectors.d.ts +0 -1
- package/charts/tree-map/store/selectors.js +1 -3
- package/charts/tree-map/store/store.js +0 -3
- package/charts/tree-map/types/state.d.ts +0 -3
- package/charts/tree-map/types/treemap.d.ts +27 -10
- package/charts/tree-map/utils/build-labels.d.ts +1 -1
- package/charts/tree-map/utils/build-tree-map-chart-config.d.ts +2 -2
- package/charts/tree-map/utils/get-legend-interaction-props.d.ts +1 -1
- package/charts/tree-map/utils/get-legend-interaction-props.js +2 -2
- package/charts/tree-map/utils/to-hierarchical-props.d.ts +2 -0
- package/charts/tree-map/utils/to-hierarchical-props.js +106 -0
- package/charts/xy-chart/XYChart.js +22 -12
- package/charts/xy-chart/XYChartRoot.js +4 -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/axes/XTickWithTruncation.d.ts +1 -1
- package/charts/xy-chart/components/axes/XYChartLeftAxisArea.js +5 -1
- package/charts/xy-chart/components/axes/XYChartRightAxisArea.js +5 -1
- package/charts/xy-chart/components/axes/YTickWithTruncation.d.ts +1 -1
- package/charts/xy-chart/components/axes/hooks/useXTickOffset.d.ts +1 -1
- package/charts/xy-chart/components/axes/hooks/useYTickOffset.d.ts +1 -1
- package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.css +3 -3
- package/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js +3 -3
- 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/explore/HighlightedPointCanvas.d.ts +3 -2
- package/charts/xy-chart/components/overlay/explore/HighlightedPointCanvas.js +27 -5
- package/charts/xy-chart/components/overlay/explore/XYChartCrosshair.css +1 -1
- 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/overlay/explore/XYChartLinearPoint.js +12 -6
- package/charts/xy-chart/components/overlay/hooks/useOverlayEvents.js +4 -0
- package/charts/xy-chart/components/overlay/utils/draw-shape.d.ts +1 -0
- package/charts/xy-chart/components/overlay/utils/draw-shape.js +19 -0
- 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/HoveredPointTooltip/hooks/getHoveredPointTooltipBodyContent.js +2 -2
- package/charts/xy-chart/components/tooltip/SharedXYChartTooltip/SharedXYChartTooltip.js +23 -22
- package/charts/xy-chart/components/tooltip/utils/get-cached-separator.d.ts +12 -0
- package/charts/xy-chart/components/tooltip/utils/get-cached-separator.js +33 -0
- package/charts/xy-chart/components/tooltip/utils/get-tooltip-formatter.js +4 -2
- 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/constants/defaults.d.ts +1 -0
- package/charts/xy-chart/constants/defaults.js +2 -0
- package/charts/xy-chart/context/XYChartOverlayPerformance.context.d.ts +17 -0
- package/charts/xy-chart/hooks/useBuildHoverGrid.d.ts +12 -0
- package/charts/xy-chart/hooks/useBuildHoverGrid.js +56 -0
- package/charts/xy-chart/hooks/useBuildOverlayStrategy.d.ts +16 -0
- package/charts/xy-chart/hooks/useBuildOverlayStrategy.js +102 -0
- package/charts/xy-chart/hooks/useXYChartDataProvider.js +10 -3
- package/charts/xy-chart/layout/XYChartLayout.css +2 -2
- package/charts/xy-chart/layout/XYChartLayout.sty.js +2 -2
- package/charts/xy-chart/providers/XYChartAnnotationsShownIndicatorsProvider.js +7 -9
- package/charts/xy-chart/providers/XYChartAxesTicksProvider.js +41 -24
- package/charts/xy-chart/providers/XYChartOverlayPerformanceProvider.js +11 -53
- package/charts/xy-chart/providers/XYChartScalesProvider.js +9 -2
- package/charts/xy-chart/types/xy-chart-props.d.ts +6 -0
- package/charts/xy-chart/utils/build-axis-id-to-min-bar-size.d.ts +2 -0
- package/charts/xy-chart/utils/build-axis-id-to-min-bar-size.js +46 -0
- package/charts/xy-chart/utils/build-sorted-entries.d.ts +40 -18
- package/charts/xy-chart/utils/build-sorted-entries.js +63 -10
- package/charts/xy-chart/utils/filter-out-of-range-ticks.d.ts +3 -0
- package/charts/xy-chart/utils/filter-out-of-range-ticks.js +46 -0
- package/charts/xy-chart/utils/generate-scales-by-axis-id.d.ts +1 -1
- package/charts/xy-chart/utils/generate-scales-by-axis-id.js +19 -3
- package/charts/xy-chart/utils/get-ticks-formatted-by-config.d.ts +5 -1
- package/charts/xy-chart/utils/get-ticks-formatted-by-config.js +11 -0
- package/charts/xy-chart/utils/query-hovered-grid.d.ts +31 -0
- package/charts/xy-chart/utils/query-hovered-grid.js +191 -0
- package/charts/xy-chart/utils/query-shared.d.ts +2 -2
- package/charts/xy-chart/utils/query-shared.js +53 -23
- package/charts/xy-chart-adoption/histogram/HistogramToXY.d.ts +1 -2
- package/charts/xy-chart-adoption/histogram/HistogramToXY.js +9 -45
- package/charts/xy-chart-adoption/histogram/transformer-annotations-to-xy.d.ts +1 -17
- package/charts/xy-chart-adoption/histogram/transformer-annotations-to-xy.js +18 -33
- package/charts/xy-chart-adoption/shared/types/legacy-props.d.ts +11 -0
- package/charts/xy-chart-adoption/shared/types/legacy-props.js +15 -0
- package/charts/xy-chart-adoption/shared/utils/render-xy-annotations.d.ts +27 -0
- package/charts/xy-chart-adoption/shared/utils/render-xy-annotations.js +88 -0
- package/charts/xy-chart-adoption/timeseries/TimeseriesToXY.d.ts +3 -0
- package/charts/xy-chart-adoption/timeseries/TimeseriesToXY.js +77 -27
- package/charts/xy-chart-adoption/timeseries/iterate-slots.d.ts +10 -0
- package/charts/xy-chart-adoption/timeseries/iterate-slots.js +36 -1
- package/charts/xy-chart-adoption/timeseries/resolve-value-representation.d.ts +6 -0
- package/charts/xy-chart-adoption/timeseries/resolve-value-representation.js +25 -0
- package/charts/xy-chart-adoption/timeseries/transformer-annotations-to-xy.d.ts +4 -0
- package/charts/xy-chart-adoption/timeseries/transformer-annotations-to-xy.js +53 -0
- package/charts/xy-chart-adoption/timeseries/transformer-data-to-xy.d.ts +8 -6
- package/charts/xy-chart-adoption/timeseries/transformer-data-to-xy.js +7 -6
- package/charts/xy-chart-adoption/timeseries/types/timeseries.d.ts +28 -5
- package/charts/xy-chart-adoption/timeseries/utils/build-buckets.d.ts +15 -0
- package/charts/xy-chart-adoption/timeseries/utils/build-buckets.js +78 -0
- package/charts/xy-chart-adoption/timeseries/utils/collect-annotations-slots.d.ts +15 -0
- package/charts/xy-chart-adoption/timeseries/utils/collect-annotations-slots.js +76 -0
- package/charts/xy-chart-adoption/timeseries/utils/map-axis-slots.d.ts +21 -0
- package/charts/xy-chart-adoption/timeseries/utils/map-axis-slots.js +61 -0
- package/charts/xy-chart-adoption/timeseries/utils/render-series.js +6 -0
- package/charts/xy-chart-adoption/timeseries/utils/resolve-gap-policy.d.ts +2 -0
- package/charts/xy-chart-adoption/timeseries/utils/resolve-gap-policy.js +34 -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 +3 -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 +40 -40
- package/content/chip/BaseChip.sty.js +5 -5
- package/content/chip/ChipContent.css +11 -11
- package/content/chip/ChipContent.sty.js +2 -2
- package/content/chip/ChipDeleteButton.css +19 -19
- package/content/chip/ChipDeleteButton.sty.js +4 -4
- package/content/chip/ChipKey.css +6 -6
- package/content/chip/ChipKey.sty.js +1 -1
- package/content/chip/GroupedChip.css +3 -3
- package/content/chip/GroupedChip.sty.js +3 -3
- package/content/chip-group/ChipGroup.css +4 -4
- package/content/chip-group/ChipGroup.d.ts +1 -1
- package/content/chip-group/ChipGroup.js +33 -49
- package/content/chip-group/ChipGroup.sty.js +1 -1
- package/content/chip-group/Control.css +4 -4
- package/content/chip-group/Control.sty.js +1 -1
- package/content/chip-group/chip-group-utils.d.ts +33 -0
- package/content/chip-group/chip-group-utils.js +52 -0
- package/content/chip-group/state/chip-group-state-reducer.d.ts +1 -1
- package/content/code-snippet/CodeHighlight.css +25 -26
- package/content/code-snippet/CodeHighlight.sty.d.ts +7 -2
- package/content/code-snippet/CodeHighlight.sty.js +10 -6
- package/content/code-snippet/CodeSnippet.css +31 -5
- package/content/code-snippet/CodeSnippet.d.ts +23 -8
- package/content/code-snippet/CodeSnippet.js +6 -2
- package/content/code-snippet/CodeSnippet.sty.d.ts +16 -0
- package/content/code-snippet/CodeSnippet.sty.js +8 -3
- package/content/empty-state/EmptyState.css +28 -28
- package/content/empty-state/EmptyState.sty.js +7 -7
- package/content/empty-state/empty-state-utils.js +2 -9
- 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.js +9 -5
- 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/index.d.ts +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 +3 -3
- package/content/markdown/Markdown.sty.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 +40 -40
- package/content/progress/ProgressCircle.sty.js +5 -5
- package/content/release-phase-indicator/ReleasePhaseIndicator.d.ts +2 -2
- package/content/release-phase-indicator/ReleasePhaseIndicator.js +4 -2
- package/content/release-phase-indicator/messages.d.ts +5 -0
- package/content/release-phase-indicator/messages.js +5 -0
- 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 +12 -2
- package/core/components/app-root/AppRoot.js +3 -2
- package/core/components/app-root/AppRoot.sty.js +1 -1
- package/core/components/app-root/visual-refresh-overrides.d.ts +6 -0
- package/core/components/app-root/visual-refresh-overrides.js +6 -0
- package/core/components/error-fallback/ErrorFallback.d.ts +8 -0
- package/{filters/filter-field → core/components}/error-fallback/messages.d.ts +0 -1
- package/{filters/filter-field → core/components}/error-fallback/messages.js +4 -4
- package/core/components/visually-hidden/VisuallyHidden.css +1 -1
- package/core/components/visually-hidden/VisuallyHidden.sty.js +1 -1
- package/core/dql/dql-common.js +6 -2
- package/core/hooks/useVisualRefreshEnabled.d.ts +4 -0
- package/core/hooks/useVisualRefreshEnabled.js +32 -0
- package/core/index.d.ts +3 -0
- package/core/index.js +6 -0
- package/core/sdk/app-state/AppStateContext.d.ts +26 -0
- package/{filters/filter-field/contexts/SavedAndRecentQueryClientContext.js → core/sdk/app-state/AppStateContext.js} +15 -7
- package/core/sdk/app-state/AppStateProvider.d.ts +24 -0
- package/core/sdk/app-state/AppStateProvider.js +97 -0
- package/core/sdk/app-state/app-state-store.d.ts +14 -0
- package/core/sdk/app-state/app-state-store.js +30 -0
- package/core/sdk/app-state/useAppState.d.ts +15 -0
- package/core/sdk/app-state/useAppState.js +40 -0
- package/core/sdk/app-state/useAppStateInternal.d.ts +28 -0
- package/core/sdk/app-state/useAppStateInternal.js +143 -0
- package/core/sdk/app-state/useAppStateValue.d.ts +28 -0
- package/core/sdk/app-state/useAppStateValue.js +32 -0
- 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.sty.js +1 -1
- package/core/styles/virtualFocus.css +2 -2
- package/core/styles/virtualFocus.sty.js +1 -1
- package/core/time/timeframeStore/actions/dateTimePicker.js +5 -4
- package/core/time/validation.d.ts +28 -3
- package/core/time/validation.js +49 -4
- package/core/types/form-control-props.d.ts +6 -0
- package/core/utils/colorUtils.css +60 -60
- package/core/utils/colorUtils.sty.js +2 -2
- package/core/utils/get-ticks.d.ts +29 -0
- package/core/utils/get-ticks.js +30 -0
- package/editors/base-code-editor/BaseCodeEditor.css +147 -135
- package/editors/base-code-editor/BaseCodeEditor.d.ts +51 -21
- package/editors/base-code-editor/BaseCodeEditor.js +149 -4
- package/editors/base-code-editor/BaseCodeEditor.sty.js +2 -2
- package/editors/base-code-editor/configuration/configure-format-keymap.d.ts +12 -0
- package/editors/base-code-editor/configuration/configure-format-keymap.js +40 -0
- package/editors/base-code-editor/configuration/configure-placeholder.d.ts +6 -1
- package/editors/base-code-editor/configuration/configure-placeholder.js +31 -2
- package/editors/base-code-editor/configuration/getDefaultConfigurations.js +103 -6
- package/editors/base-code-editor/configuration/language-extensions.d.ts +1 -1
- package/editors/base-code-editor/utils/key-maps.js +2 -0
- package/editors/code-editor/CodeEditor.d.ts +7 -69
- package/editors/code-editor/CodeEditor.js +23 -1
- package/editors/dql-editor/DQLEditor.d.ts +7 -69
- package/editors/dql-editor/DQLEditor.js +53 -3
- package/editors/dql-editor/actions-menu/ActionsMenu.css +23 -13
- package/editors/dql-editor/actions-menu/ActionsMenu.d.ts +7 -3
- package/editors/dql-editor/actions-menu/ActionsMenu.js +7 -1
- package/editors/dql-editor/actions-menu/ActionsMenu.sty.d.ts +16 -4
- package/editors/dql-editor/actions-menu/ActionsMenu.sty.js +5 -4
- package/editors/dql-editor/actions-menu/actions-menu-messages.d.ts +5 -0
- package/editors/dql-editor/actions-menu/actions-menu-messages.js +5 -0
- package/editors/dql-editor/dql/SuggestionPart.css +1 -1
- package/editors/dql-editor/dql/SuggestionPart.sty.js +1 -1
- package/editors/dql-editor/dql/SuggestionsInfoSection.css +7 -7
- package/editors/dql-editor/dql/SuggestionsInfoSection.js +10 -1
- package/editors/dql-editor/dql/SuggestionsInfoSection.sty.js +3 -3
- package/editors/dql-editor/dql/open-autocomplete.js +21 -3
- package/editors/dql-editor/dql/suggestion-autocompletions.js +3 -0
- package/editors/index.d.ts +1 -1
- package/esm/buttons/button/Button.css +15 -15
- package/esm/buttons/button/Button.js +5 -4
- package/esm/buttons/button/Button.js.map +2 -2
- package/esm/buttons/button/Button.sty.js +4 -4
- package/esm/buttons/button/Button.sty.js.map +1 -1
- 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/intent-button/IntentButtonWithResponse.js +2 -2
- package/esm/buttons/intent-button/IntentButtonWithResponse.js.map +2 -2
- 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/buttons/run-query-button/RunQueryButton.js +7 -14
- package/esm/buttons/run-query-button/RunQueryButton.js.map +2 -2
- package/esm/charts/categorical-bar/components/interactions/hooks/useSeriesActionClickHandler.js +7 -1
- package/esm/charts/categorical-bar/components/interactions/hooks/useSeriesActionClickHandler.js.map +2 -2
- 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/hooks/store/state-setters.js +3 -1
- package/esm/charts/categorical-bar/hooks/store/state-setters.js.map +2 -2
- package/esm/charts/categorical-bar/layout/CategoricalGridLayout.js +1 -2
- package/esm/charts/categorical-bar/layout/CategoricalGridLayout.js.map +2 -2
- 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/canvas/utils/calculate-marker-width-and-content.js +1 -2
- package/esm/charts/core/components/annotations/components/canvas/utils/calculate-marker-width-and-content.js.map +2 -2
- 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/utils/aggregate-markers-coords.js +20 -6
- package/esm/charts/core/components/annotations/utils/aggregate-markers-coords.js.map +2 -2
- package/esm/charts/core/components/annotations/utils/resolve-value-marker-hit-area.js +14 -0
- package/esm/charts/core/components/annotations/utils/resolve-value-marker-hit-area.js.map +7 -0
- package/esm/charts/core/components/axes/Axis.css +1 -1
- package/esm/charts/core/components/axes/Axis.js +2 -6
- 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/AxisPrimitive.js +203 -0
- package/esm/charts/core/components/axes/AxisPrimitive.js.map +7 -0
- package/esm/charts/core/components/axes/components/CategoryBottomAxis.js +2 -2
- package/esm/charts/core/components/axes/components/CategoryBottomAxis.js.map +2 -2
- package/esm/charts/core/components/axes/components/CategoryLeftAxis.js +1 -1
- package/esm/charts/core/components/axes/components/CategoryLeftAxis.js.map +2 -2
- 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/components/TickLabel.js.map +2 -2
- package/esm/charts/core/components/axes/components/TimeTableHeaderAxis.js +1 -1
- package/esm/charts/core/components/axes/components/TimeTableHeaderAxis.js.map +2 -2
- package/esm/charts/core/components/axes/components/ValueTableHeaderAxis.js +1 -1
- package/esm/charts/core/components/axes/components/ValueTableHeaderAxis.js.map +2 -2
- package/esm/charts/core/components/axes/constants.js +0 -2
- package/esm/charts/core/components/axes/constants.js.map +2 -2
- package/esm/charts/core/components/axes/types.js.map +2 -2
- package/esm/charts/core/components/axes/utils/get-tick-label-props.js +45 -4
- package/esm/charts/core/components/axes/utils/get-tick-label-props.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-grid/constants.js +15 -0
- package/esm/charts/core/components/chart-grid/constants.js.map +7 -0
- 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-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/HorizontalCrosshair.js +6 -4
- package/esm/charts/core/components/crosshair/HorizontalCrosshair.js.map +2 -2
- package/esm/charts/core/components/crosshair/VerticalCrosshair.js +7 -5
- 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/grid/Grid.js +1 -4
- package/esm/charts/core/components/grid/Grid.js.map +2 -2
- package/esm/charts/core/components/grid/GridColumns.js +9 -7
- package/esm/charts/core/components/grid/GridColumns.js.map +2 -2
- package/esm/charts/core/components/grid/GridLine.js +5 -4
- package/esm/charts/core/components/grid/GridLine.js.map +2 -2
- package/esm/charts/core/components/grid/GridLines.js.map +2 -2
- package/esm/charts/core/components/grid/GridRows.js +9 -7
- package/esm/charts/core/components/grid/GridRows.js.map +2 -2
- package/esm/charts/core/components/grid/utils/compute-grid-lines.js +17 -0
- package/esm/charts/core/components/grid/utils/compute-grid-lines.js.map +7 -0
- package/esm/charts/core/components/grid/utils/should-highlight-zero-line.js.map +1 -1
- package/esm/charts/core/components/interactions-overlay/InteractionsOverlay.css +5 -5
- 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/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 +3 -3
- 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 +17 -17
- 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/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/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/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/components/DynamicTooltip.js +7 -3
- package/esm/charts/core/components/overlay-tooltip/components/DynamicTooltip.js.map +2 -2
- package/esm/charts/core/components/overlay-tooltip/components/TooltipPortal.js +7 -1
- 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 +6 -6
- package/esm/charts/core/components/overlay-tooltip/components/header/Header.sty.js +6 -6
- package/esm/charts/core/components/overlay-tooltip/components/header/Header.sty.js.map +1 -1
- 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/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/useTooltipActions.js +8 -0
- package/esm/charts/core/components/overlay-tooltip/useTooltipActions.js.map +2 -2
- package/esm/charts/core/components/overlay-tooltip/utils/is-scroll-ignored.js +10 -0
- package/esm/charts/core/components/overlay-tooltip/utils/is-scroll-ignored.js.map +7 -0
- package/esm/charts/core/components/overlays/ChartOverlaysBorder.css +5 -5
- package/esm/charts/core/components/overlays/ChartOverlaysBorder.sty.js +5 -5
- 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/series-action/ChartActionsMenuAsync.js +3 -1
- package/esm/charts/core/components/series-action/ChartActionsMenuAsync.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.js +0 -1
- package/esm/charts/core/components/single-value-renderer/components/SingleValueToolbar.js.map +2 -2
- 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/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/SparklineContainer.js +6 -4
- package/esm/charts/core/components/sparkline-display/SparklineContainer.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/threshold-bar/indicators/ThresholdIndicator.js +40 -21
- package/esm/charts/core/components/threshold-bar/indicators/ThresholdIndicator.js.map +2 -2
- package/esm/charts/core/components/threshold-bar/markers/CircleMarker.js +1 -2
- package/esm/charts/core/components/threshold-bar/markers/CircleMarker.js.map +2 -2
- package/esm/charts/core/components/threshold-bar/markers/PillMarker.js +1 -2
- package/esm/charts/core/components/threshold-bar/markers/PillMarker.js.map +2 -2
- package/esm/charts/core/components/threshold-bar/styles.css +9 -9
- 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 +16 -6
- package/esm/charts/core/components/toolbar/ChartToolbarRenderer.js.map +2 -2
- 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/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/types.js.map +1 -1
- package/esm/charts/core/components/tooltip/ChartTooltip/ChartTooltip.css +6 -6
- 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.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/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/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/constants.js +2 -0
- package/esm/charts/core/constants.js.map +2 -2
- package/esm/charts/core/hooks/useOverlayEventHandlers.js +40 -20
- package/esm/charts/core/hooks/useOverlayEventHandlers.js.map +2 -2
- package/esm/charts/core/hooks/usePointerAndScrollResponsiveChartBounds.js +1 -1
- package/esm/charts/core/hooks/usePointerAndScrollResponsiveChartBounds.js.map +2 -2
- package/esm/charts/core/hooks/useThrottledCallbackOnScroll.js.map +1 -1
- package/esm/charts/core/types/chart-data.js +1 -0
- package/esm/charts/core/types/text-size.js +1 -0
- package/esm/charts/core/types/text-size.js.map +7 -0
- 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/formatter-by-ticks.js +1 -1
- package/esm/charts/core/utils/formatter-by-ticks.js.map +2 -2
- package/esm/charts/core/utils/text-measure.js +38 -0
- package/esm/charts/core/utils/text-measure.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.js +1 -2
- package/esm/charts/gantt-chart/components/GanttChartLineRenderer.js.map +2 -2
- 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.sty.js +1 -1
- package/esm/charts/gantt-chart/components/tooltip/GanttChartTooltip.sty.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/GaugeChartLayout/GaugeChartToolbar.js +2 -2
- package/esm/charts/gauge/components/GaugeChartLayout/GaugeChartToolbar.js.map +2 -2
- 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.js +29 -2
- package/esm/charts/gauge/components/GaugeLayoutOverlay/GaugeLayoutOverlay.js.map +2 -2
- 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.sty.js +2 -2
- package/esm/charts/gauge/components/GaugeResponsiveLabel/GaugeResponsiveLabel.sty.js.map +1 -1
- package/esm/charts/histogram/HistogramChart.js +4 -5
- package/esm/charts/histogram/HistogramChart.js.map +2 -2
- package/esm/charts/histogram/HistogramChartInternal.js +20 -8
- package/esm/charts/histogram/HistogramChartInternal.js.map +2 -2
- 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/HistogramTooltip.css +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/HistogramOverlays.css +2 -2
- 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/honeycomb/HoneycombChart.css +1 -1
- package/esm/charts/honeycomb/HoneycombChart.js +6 -3
- package/esm/charts/honeycomb/HoneycombChart.js.map +2 -2
- 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.js +2 -10
- package/esm/charts/honeycomb/components/HiveOverlay.js.map +2 -2
- 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/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/components/canvas/renderers/CanvasCircleRenderer.js +7 -2
- package/esm/charts/honeycomb/components/canvas/renderers/CanvasCircleRenderer.js.map +2 -2
- package/esm/charts/honeycomb/components/canvas/renderers/CanvasHexagonRenderer.js +9 -5
- package/esm/charts/honeycomb/components/canvas/renderers/CanvasHexagonRenderer.js.map +2 -2
- package/esm/charts/honeycomb/components/canvas/renderers/CanvasSquareRenderer.js +7 -2
- package/esm/charts/honeycomb/components/canvas/renderers/CanvasSquareRenderer.js.map +2 -2
- package/esm/charts/honeycomb/components/canvas/utils/draw-label-and-value.js +108 -21
- package/esm/charts/honeycomb/components/canvas/utils/draw-label-and-value.js.map +2 -2
- package/esm/charts/honeycomb/components/canvas/utils/get-font-sizes.js +39 -0
- package/esm/charts/honeycomb/components/canvas/utils/get-font-sizes.js.map +7 -0
- package/esm/charts/honeycomb/components/canvas/utils/get-truncation-method.js +82 -9
- package/esm/charts/honeycomb/components/canvas/utils/get-truncation-method.js.map +2 -2
- package/esm/charts/honeycomb/components/canvas/utils/measure-node-text-content.js +13 -16
- package/esm/charts/honeycomb/components/canvas/utils/measure-node-text-content.js.map +2 -2
- package/esm/charts/honeycomb/components/canvas/utils/render-text-to-canvas.js +2 -2
- package/esm/charts/honeycomb/components/canvas/utils/render-text-to-canvas.js.map +2 -2
- package/esm/charts/honeycomb/components/canvas/utils/set-font-details-to-context.js +11 -9
- package/esm/charts/honeycomb/components/canvas/utils/set-font-details-to-context.js.map +2 -2
- package/esm/charts/honeycomb/components/toolbar/HoneycombToolbar.js +1 -3
- package/esm/charts/honeycomb/components/toolbar/HoneycombToolbar.js.map +2 -2
- package/esm/charts/honeycomb/constants.js +17 -13
- package/esm/charts/honeycomb/constants.js.map +2 -2
- package/esm/charts/honeycomb/context/honeycomb-color-scheme.context.js.map +1 -1
- package/esm/charts/honeycomb/context/honeycomb-filtered-color-scheme.context.js.map +1 -1
- package/esm/charts/honeycomb/context/honeycomb-text-size.context.js +9 -0
- package/esm/charts/honeycomb/context/honeycomb-text-size.context.js.map +7 -0
- package/esm/charts/honeycomb/hooks/use-honeycomb-chart-config.js +6 -1
- package/esm/charts/honeycomb/hooks/use-honeycomb-chart-config.js.map +2 -2
- package/esm/charts/honeycomb/hooks/use-honeycomb-text-size.js +7 -0
- package/esm/charts/honeycomb/hooks/use-honeycomb-text-size.js.map +7 -0
- package/esm/charts/honeycomb/hooks/use-overlay-events.js +7 -8
- package/esm/charts/honeycomb/hooks/use-overlay-events.js.map +2 -2
- package/esm/charts/honeycomb/providers/honeycomb-base-scale.provider.js.map +2 -2
- package/esm/charts/honeycomb/store/selectors.js +0 -2
- package/esm/charts/honeycomb/store/selectors.js.map +2 -2
- package/esm/charts/honeycomb/store/store.js +0 -13
- package/esm/charts/honeycomb/store/store.js.map +2 -2
- package/esm/charts/honeycomb/types/state.js +0 -3
- package/esm/charts/honeycomb/types/state.js.map +2 -2
- package/esm/charts/honeycomb/utils/build-honeycomb-config.js +19 -5
- package/esm/charts/honeycomb/utils/build-honeycomb-config.js.map +2 -2
- package/esm/charts/honeycomb/utils/normalize-honeycomb-chart-data.js +21 -0
- package/esm/charts/honeycomb/utils/normalize-honeycomb-chart-data.js.map +7 -0
- package/esm/charts/index.js.map +2 -2
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.css +15 -15
- package/esm/charts/meter-bar/shared/components/meter-bar-layout/MeterBarLayout.sty.js +10 -10
- 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/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/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/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.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/components/MeterBarChartThresholds/MeterBarChartThresholds.css +1 -1
- package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholds/MeterBarChartThresholds.sty.js +1 -1
- package/esm/charts/meter-bar/single-meter-bar/components/MeterBarChartThresholds/MeterBarChartThresholds.sty.js.map +1 -1
- package/esm/charts/pie/DonutChart.js +5 -12
- package/esm/charts/pie/DonutChart.js.map +2 -2
- package/esm/charts/pie/PieChart.js +7 -14
- package/esm/charts/pie/PieChart.js.map +2 -2
- 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/PieChartOverlays/PieChartOverlays.css +1 -1
- package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.js +3 -3
- package/esm/charts/pie/components/PieChartOverlays/PieChartOverlays.js.map +2 -2
- 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 +65 -56
- package/esm/charts/pie/components/PieChartPlot/PieChartPlot.js.map +3 -3
- 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/components/PieChartSlice.js +15 -11
- package/esm/charts/pie/components/PieChartSlice.js.map +2 -2
- package/esm/charts/pie/constants.js +2 -0
- package/esm/charts/pie/constants.js.map +2 -2
- package/esm/charts/pie/context/ChartConfigContext.js.map +2 -2
- package/esm/charts/pie/context/PieChartRawDataContext.js.map +2 -2
- package/esm/charts/pie/hooks/useNormalizedPieData.js +20 -0
- package/esm/charts/pie/hooks/useNormalizedPieData.js.map +7 -0
- package/esm/charts/pie/hooks/useOverlayHandlers.js +7 -5
- package/esm/charts/pie/hooks/useOverlayHandlers.js.map +2 -2
- package/esm/charts/pie/hooks/useSliceHandlers.js +29 -3
- package/esm/charts/pie/hooks/useSliceHandlers.js.map +2 -2
- package/esm/charts/pie/providers/ChartProviders.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 +2 -2
- package/esm/charts/pie/utils/build-group-threshold.js.map +2 -2
- package/esm/charts/pie/utils/build-slices.js.map +2 -2
- package/esm/charts/pie/utils/format-csv.js.map +2 -2
- package/esm/charts/pie/utils/group-slices-thinner-than-pad-angle.js +2 -1
- package/esm/charts/pie/utils/group-slices-thinner-than-pad-angle.js.map +2 -2
- package/esm/charts/pie/utils/normalize-pie-data.js +20 -0
- package/esm/charts/pie/utils/normalize-pie-data.js.map +7 -0
- package/esm/charts/pie/utils/pie-config.js +2 -1
- package/esm/charts/pie/utils/pie-config.js.map +2 -2
- package/esm/charts/pie/utils/sanitize-toolbar-intents.js +12 -0
- package/esm/charts/pie/utils/sanitize-toolbar-intents.js.map +7 -0
- 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/timeseries/TimeseriesChart.js.map +2 -2
- package/esm/charts/timeseries/TimeseriesChartInternal.js +39 -17
- package/esm/charts/timeseries/TimeseriesChartInternal.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/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/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/top-list/TopList.css +1 -1
- package/esm/charts/top-list/TopList.js +11 -7
- package/esm/charts/top-list/TopList.js.map +2 -2
- package/esm/charts/top-list/TopList.sty.js +1 -1
- package/esm/charts/top-list/TopList.sty.js.map +1 -1
- package/esm/charts/top-list/constants.js +2 -1
- package/esm/charts/top-list/constants.js.map +2 -2
- package/esm/charts/tree-map/TreeMap.js +10 -1
- package/esm/charts/tree-map/TreeMap.js.map +2 -2
- package/esm/charts/tree-map/components/TreeMapChartLayout.js +4 -4
- package/esm/charts/tree-map/components/TreeMapChartLayout.js.map +2 -2
- package/esm/charts/tree-map/components/TreeMapLegend/TreeMapCategoricalLegend.js +3 -1
- package/esm/charts/tree-map/components/TreeMapLegend/TreeMapCategoricalLegend.js.map +2 -2
- package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.css +1 -1
- package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.js +2 -10
- package/esm/charts/tree-map/components/TreeMapOverlay/TreeMapOverlay.js.map +2 -2
- 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/components/TreeMapToolbar/TreeMapToolbar.js +2 -4
- package/esm/charts/tree-map/components/TreeMapToolbar/TreeMapToolbar.js.map +2 -2
- package/esm/charts/tree-map/components/canvas/TreeMapSquareRenderer.js +5 -2
- package/esm/charts/tree-map/components/canvas/TreeMapSquareRenderer.js.map +2 -2
- package/esm/charts/tree-map/constants.js +1 -2
- package/esm/charts/tree-map/constants.js.map +2 -2
- package/esm/charts/tree-map/context/TextSizeContext.js.map +2 -2
- package/esm/charts/tree-map/hooks/useOverlayHandlers.js +7 -8
- package/esm/charts/tree-map/hooks/useOverlayHandlers.js.map +2 -2
- package/esm/charts/tree-map/hooks/useTreeMapChartConfig.js.map +2 -2
- package/esm/charts/tree-map/hooks/useTreeMapChartHandlers.js +4 -1
- package/esm/charts/tree-map/hooks/useTreeMapChartHandlers.js.map +2 -2
- package/esm/charts/tree-map/providers/TreeMapChartProviders.js +1 -1
- package/esm/charts/tree-map/providers/TreeMapChartProviders.js.map +2 -2
- package/esm/charts/tree-map/store/selectors.js +1 -3
- package/esm/charts/tree-map/store/selectors.js.map +2 -2
- package/esm/charts/tree-map/store/store.js +0 -3
- package/esm/charts/tree-map/store/store.js.map +2 -2
- package/esm/charts/tree-map/utils/build-labels.js.map +2 -2
- package/esm/charts/tree-map/utils/build-tree-map-chart-config.js.map +2 -2
- package/esm/charts/tree-map/utils/get-legend-interaction-props.js +2 -2
- package/esm/charts/tree-map/utils/get-legend-interaction-props.js.map +2 -2
- package/esm/charts/tree-map/utils/to-hierarchical-props.js +88 -0
- package/esm/charts/tree-map/utils/to-hierarchical-props.js.map +7 -0
- package/esm/charts/xy-chart/XYChart.js +25 -12
- package/esm/charts/xy-chart/XYChart.js.map +2 -2
- package/esm/charts/xy-chart/XYChartRoot.js +4 -2
- package/esm/charts/xy-chart/XYChartRoot.js.map +2 -2
- 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/axes/XTickWithTruncation.js.map +2 -2
- package/esm/charts/xy-chart/components/axes/XYChartLeftAxisArea.js +6 -2
- package/esm/charts/xy-chart/components/axes/XYChartLeftAxisArea.js.map +2 -2
- package/esm/charts/xy-chart/components/axes/XYChartRightAxisArea.js +6 -2
- package/esm/charts/xy-chart/components/axes/XYChartRightAxisArea.js.map +2 -2
- package/esm/charts/xy-chart/components/axes/YTickWithTruncation.js.map +2 -2
- package/esm/charts/xy-chart/components/axes/hooks/useXTickOffset.js.map +2 -2
- package/esm/charts/xy-chart/components/axes/hooks/useYTickOffset.js.map +2 -2
- package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.css +3 -3
- package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.js +3 -3
- package/esm/charts/xy-chart/components/displays/BarDisplay/BarLabelOverlay.sty.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/explore/HighlightedPointCanvas.js +32 -6
- package/esm/charts/xy-chart/components/overlay/explore/HighlightedPointCanvas.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.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/explore/XYChartLinearPoint.js +12 -6
- package/esm/charts/xy-chart/components/overlay/explore/XYChartLinearPoint.js.map +2 -2
- package/esm/charts/xy-chart/components/overlay/hooks/useOverlayEvents.js +4 -0
- package/esm/charts/xy-chart/components/overlay/hooks/useOverlayEvents.js.map +2 -2
- package/esm/charts/xy-chart/components/overlay/utils/draw-shape.js +19 -0
- package/esm/charts/xy-chart/components/overlay/utils/draw-shape.js.map +2 -2
- 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/HoveredPointTooltip/hooks/getHoveredPointTooltipBodyContent.js +2 -2
- package/esm/charts/xy-chart/components/tooltip/HoveredPointTooltip/hooks/getHoveredPointTooltipBodyContent.js.map +2 -2
- package/esm/charts/xy-chart/components/tooltip/SharedXYChartTooltip/SharedXYChartTooltip.js +23 -22
- package/esm/charts/xy-chart/components/tooltip/SharedXYChartTooltip/SharedXYChartTooltip.js.map +2 -2
- package/esm/charts/xy-chart/components/tooltip/utils/get-cached-separator.js +15 -0
- package/esm/charts/xy-chart/components/tooltip/utils/get-cached-separator.js.map +7 -0
- package/esm/charts/xy-chart/components/tooltip/utils/get-tooltip-formatter.js +4 -2
- package/esm/charts/xy-chart/components/tooltip/utils/get-tooltip-formatter.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/constants/defaults.js +2 -0
- package/esm/charts/xy-chart/constants/defaults.js.map +2 -2
- package/esm/charts/xy-chart/context/XYChartOverlayPerformance.context.js.map +2 -2
- package/esm/charts/xy-chart/hooks/useBuildHoverGrid.js +38 -0
- package/esm/charts/xy-chart/hooks/useBuildHoverGrid.js.map +7 -0
- package/esm/charts/xy-chart/hooks/useBuildOverlayStrategy.js +88 -0
- package/esm/charts/xy-chart/hooks/useBuildOverlayStrategy.js.map +7 -0
- package/esm/charts/xy-chart/hooks/useXYChartDataProvider.js +10 -3
- package/esm/charts/xy-chart/hooks/useXYChartDataProvider.js.map +3 -3
- 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/providers/XYChartAnnotationsShownIndicatorsProvider.js +7 -9
- package/esm/charts/xy-chart/providers/XYChartAnnotationsShownIndicatorsProvider.js.map +2 -2
- package/esm/charts/xy-chart/providers/XYChartAxesTicksProvider.js +41 -24
- package/esm/charts/xy-chart/providers/XYChartAxesTicksProvider.js.map +2 -2
- package/esm/charts/xy-chart/providers/XYChartOverlayPerformanceProvider.js +16 -61
- package/esm/charts/xy-chart/providers/XYChartOverlayPerformanceProvider.js.map +2 -2
- package/esm/charts/xy-chart/providers/XYChartScalesProvider.js +9 -2
- package/esm/charts/xy-chart/providers/XYChartScalesProvider.js.map +2 -2
- package/esm/charts/xy-chart/utils/build-axis-id-to-min-bar-size.js +28 -0
- package/esm/charts/xy-chart/utils/build-axis-id-to-min-bar-size.js.map +7 -0
- package/esm/charts/xy-chart/utils/build-sorted-entries.js +63 -10
- package/esm/charts/xy-chart/utils/build-sorted-entries.js.map +2 -2
- package/esm/charts/xy-chart/utils/filter-out-of-range-ticks.js +28 -0
- package/esm/charts/xy-chart/utils/filter-out-of-range-ticks.js.map +7 -0
- package/esm/charts/xy-chart/utils/generate-scales-by-axis-id.js +19 -3
- package/esm/charts/xy-chart/utils/generate-scales-by-axis-id.js.map +2 -2
- package/esm/charts/xy-chart/utils/get-ticks-formatted-by-config.js +11 -0
- package/esm/charts/xy-chart/utils/get-ticks-formatted-by-config.js.map +2 -2
- package/esm/charts/xy-chart/utils/query-hovered-grid.js +176 -0
- package/esm/charts/xy-chart/utils/query-hovered-grid.js.map +7 -0
- package/esm/charts/xy-chart/utils/query-shared.js +53 -23
- package/esm/charts/xy-chart/utils/query-shared.js.map +2 -2
- package/esm/charts/xy-chart-adoption/histogram/HistogramToXY.js +11 -50
- package/esm/charts/xy-chart-adoption/histogram/HistogramToXY.js.map +2 -2
- package/esm/charts/xy-chart-adoption/histogram/transformer-annotations-to-xy.js +3 -18
- package/esm/charts/xy-chart-adoption/histogram/transformer-annotations-to-xy.js.map +3 -3
- package/esm/charts/xy-chart-adoption/shared/types/legacy-props.js +1 -0
- package/esm/charts/xy-chart-adoption/shared/types/legacy-props.js.map +7 -0
- package/esm/charts/xy-chart-adoption/shared/types/props.js.map +7 -0
- package/esm/charts/xy-chart-adoption/shared/utils/render-xy-annotations.js +70 -0
- package/esm/charts/xy-chart-adoption/shared/utils/render-xy-annotations.js.map +7 -0
- package/esm/charts/xy-chart-adoption/timeseries/TimeseriesToXY.js +81 -27
- package/esm/charts/xy-chart-adoption/timeseries/TimeseriesToXY.js.map +2 -2
- package/esm/charts/xy-chart-adoption/timeseries/iterate-slots.js +36 -1
- package/esm/charts/xy-chart-adoption/timeseries/iterate-slots.js.map +2 -2
- package/esm/charts/xy-chart-adoption/timeseries/resolve-value-representation.js +7 -0
- package/esm/charts/xy-chart-adoption/timeseries/resolve-value-representation.js.map +7 -0
- package/esm/charts/xy-chart-adoption/timeseries/transformer-annotations-to-xy.js +35 -0
- package/esm/charts/xy-chart-adoption/timeseries/transformer-annotations-to-xy.js.map +7 -0
- package/esm/charts/xy-chart-adoption/timeseries/transformer-data-to-xy.js +7 -6
- package/esm/charts/xy-chart-adoption/timeseries/transformer-data-to-xy.js.map +2 -2
- package/esm/charts/xy-chart-adoption/timeseries/types/timeseries.js.map +2 -2
- package/esm/charts/xy-chart-adoption/timeseries/utils/build-buckets.js +60 -0
- package/esm/charts/xy-chart-adoption/timeseries/utils/build-buckets.js.map +7 -0
- package/esm/charts/xy-chart-adoption/timeseries/utils/collect-annotations-slots.js +58 -0
- package/esm/charts/xy-chart-adoption/timeseries/utils/collect-annotations-slots.js.map +7 -0
- package/esm/charts/xy-chart-adoption/timeseries/utils/map-axis-slots.js +43 -0
- package/esm/charts/xy-chart-adoption/timeseries/utils/map-axis-slots.js.map +7 -0
- package/esm/charts/xy-chart-adoption/timeseries/utils/render-series.js +6 -0
- package/esm/charts/xy-chart-adoption/timeseries/utils/render-series.js.map +2 -2
- package/esm/charts/xy-chart-adoption/timeseries/utils/resolve-gap-policy.js +16 -0
- package/esm/charts/xy-chart-adoption/timeseries/utils/resolve-gap-policy.js.map +7 -0
- 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 +3 -2
- package/esm/content/ai-response/AiResponse.sty.js.map +2 -2
- 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 +40 -40
- package/esm/content/chip/BaseChip.sty.js +5 -5
- package/esm/content/chip/BaseChip.sty.js.map +1 -1
- 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 +19 -19
- package/esm/content/chip/ChipDeleteButton.sty.js +4 -4
- package/esm/content/chip/ChipDeleteButton.sty.js.map +1 -1
- 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 +3 -3
- package/esm/content/chip/GroupedChip.sty.js +3 -3
- package/esm/content/chip/GroupedChip.sty.js.map +1 -1
- package/esm/content/chip-group/ChipGroup.css +4 -4
- package/esm/content/chip-group/ChipGroup.js +36 -49
- 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.sty.js +1 -1
- package/esm/content/chip-group/Control.sty.js.map +1 -1
- package/esm/content/chip-group/chip-group-utils.js +34 -0
- package/esm/content/chip-group/chip-group-utils.js.map +7 -0
- package/esm/content/chip-group/state/chip-group-state-reducer.js.map +1 -1
- package/esm/content/code-snippet/CodeHighlight.css +25 -26
- package/esm/content/code-snippet/CodeHighlight.sty.js +10 -6
- package/esm/content/code-snippet/CodeHighlight.sty.js.map +2 -2
- package/esm/content/code-snippet/CodeSnippet.css +31 -5
- package/esm/content/code-snippet/CodeSnippet.js +6 -2
- package/esm/content/code-snippet/CodeSnippet.js.map +2 -2
- package/esm/content/code-snippet/CodeSnippet.sty.js +8 -3
- package/esm/content/code-snippet/CodeSnippet.sty.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/empty-state-utils.js +2 -9
- package/esm/content/empty-state/empty-state-utils.js.map +2 -2
- 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.js +9 -5
- package/esm/content/feature-highlight/FeatureHighlight.js.map +2 -2
- 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/index.js.map +2 -2
- 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 +3 -3
- package/esm/content/markdown/Markdown.sty.js +1 -1
- package/esm/content/markdown/Markdown.sty.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 +40 -40
- package/esm/content/progress/ProgressCircle.sty.js +5 -5
- package/esm/content/progress/ProgressCircle.sty.js.map +1 -1
- package/esm/content/release-phase-indicator/ReleasePhaseIndicator.js +4 -2
- package/esm/content/release-phase-indicator/ReleasePhaseIndicator.js.map +2 -2
- package/esm/content/release-phase-indicator/messages.js +5 -0
- package/esm/content/release-phase-indicator/messages.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 +12 -2
- package/esm/core/components/app-root/AppRoot.js +3 -2
- package/esm/core/components/app-root/AppRoot.js.map +2 -2
- 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 +6 -0
- package/esm/core/components/app-root/visual-refresh-overrides.js.map +2 -2
- package/esm/core/components/error-fallback/ErrorFallback.js.map +7 -0
- package/esm/{filters/filter-field → core/components}/error-fallback/messages.js +4 -4
- package/esm/core/components/error-fallback/messages.js.map +7 -0
- 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/dql/dql-common.js +6 -2
- package/esm/core/dql/dql-common.js.map +2 -2
- package/esm/core/hooks/useVisualRefreshEnabled.js +14 -0
- package/esm/core/hooks/useVisualRefreshEnabled.js.map +7 -0
- package/esm/core/index.js +12 -0
- package/esm/core/index.js.map +2 -2
- package/esm/core/sdk/app-state/AppStateContext.js +27 -0
- package/esm/core/sdk/app-state/AppStateContext.js.map +7 -0
- package/esm/core/sdk/app-state/AppStateProvider.js +87 -0
- package/esm/core/sdk/app-state/AppStateProvider.js.map +7 -0
- package/esm/core/sdk/app-state/app-state-store.js +12 -0
- package/esm/core/sdk/app-state/app-state-store.js.map +7 -0
- package/esm/core/sdk/app-state/useAppState.js +26 -0
- package/esm/core/sdk/app-state/useAppState.js.map +7 -0
- package/esm/core/sdk/app-state/useAppStateInternal.js +125 -0
- package/esm/core/sdk/app-state/useAppStateInternal.js.map +7 -0
- package/esm/core/sdk/app-state/useAppStateValue.js +14 -0
- package/esm/core/sdk/app-state/useAppStateValue.js.map +7 -0
- package/esm/core/sdk/sdk-logger.js +2 -2
- 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 +1 -1
- package/esm/core/styles/focusRingStatic.sty.js.map +1 -1
- 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/timeframeStore/actions/dateTimePicker.js +5 -4
- package/esm/core/time/timeframeStore/actions/dateTimePicker.js.map +2 -2
- package/esm/core/time/validation.js +49 -4
- package/esm/core/time/validation.js.map +2 -2
- 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/{charts/core → core}/utils/get-tick-value-as-number.js.map +1 -1
- package/esm/core/utils/get-ticks.js +12 -0
- package/esm/core/utils/get-ticks.js.map +7 -0
- package/esm/editors/base-code-editor/BaseCodeEditor.css +147 -135
- package/esm/editors/base-code-editor/BaseCodeEditor.js +151 -5
- package/esm/editors/base-code-editor/BaseCodeEditor.js.map +2 -2
- 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/configuration/configure-format-keymap.js +22 -0
- package/esm/editors/base-code-editor/configuration/configure-format-keymap.js.map +7 -0
- package/esm/editors/base-code-editor/configuration/configure-placeholder.js +34 -3
- package/esm/editors/base-code-editor/configuration/configure-placeholder.js.map +2 -2
- package/esm/editors/base-code-editor/configuration/getDefaultConfigurations.js +105 -7
- package/esm/editors/base-code-editor/configuration/getDefaultConfigurations.js.map +3 -3
- package/esm/editors/base-code-editor/utils/key-maps.js +2 -0
- package/esm/editors/base-code-editor/utils/key-maps.js.map +2 -2
- package/esm/editors/code-editor/CodeEditor.js +26 -2
- package/esm/editors/code-editor/CodeEditor.js.map +2 -2
- package/esm/editors/dql-editor/DQLEditor.js +57 -4
- package/esm/editors/dql-editor/DQLEditor.js.map +2 -2
- package/esm/editors/dql-editor/actions-menu/ActionsMenu.css +23 -13
- package/esm/editors/dql-editor/actions-menu/ActionsMenu.js +8 -1
- package/esm/editors/dql-editor/actions-menu/ActionsMenu.js.map +2 -2
- package/esm/editors/dql-editor/actions-menu/ActionsMenu.sty.js +5 -4
- package/esm/editors/dql-editor/actions-menu/ActionsMenu.sty.js.map +2 -2
- package/esm/editors/dql-editor/actions-menu/actions-menu-messages.js +5 -0
- package/esm/editors/dql-editor/actions-menu/actions-menu-messages.js.map +2 -2
- package/esm/editors/dql-editor/dql/SuggestionPart.css +1 -1
- package/esm/editors/dql-editor/dql/SuggestionPart.sty.js +1 -1
- package/esm/editors/dql-editor/dql/SuggestionPart.sty.js.map +1 -1
- package/esm/editors/dql-editor/dql/SuggestionsInfoSection.css +7 -7
- package/esm/editors/dql-editor/dql/SuggestionsInfoSection.js +10 -1
- package/esm/editors/dql-editor/dql/SuggestionsInfoSection.js.map +2 -2
- package/esm/editors/dql-editor/dql/SuggestionsInfoSection.sty.js +3 -3
- package/esm/editors/dql-editor/dql/SuggestionsInfoSection.sty.js.map +1 -1
- package/esm/editors/dql-editor/dql/open-autocomplete.js +21 -3
- package/esm/editors/dql-editor/dql/open-autocomplete.js.map +2 -2
- package/esm/editors/dql-editor/dql/suggestion-autocompletions.js +3 -0
- package/esm/editors/dql-editor/dql/suggestion-autocompletions.js.map +2 -2
- package/esm/editors/index.js.map +2 -2
- package/esm/filters/filter-field/FilterField.css +151 -119
- package/esm/filters/filter-field/FilterField.js +78 -4
- package/esm/filters/filter-field/FilterField.js.map +2 -2
- package/esm/filters/filter-field/FilterField.sty.js +28 -28
- package/esm/filters/filter-field/FilterField.sty.js.map +1 -1
- 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 +13 -13
- package/esm/filters/filter-field/components/FilterStatement.sty.js +6 -6
- package/esm/filters/filter-field/components/FilterStatement.sty.js.map +1 -1
- package/esm/filters/filter-field/hooks/recent-and-pinned/usePinnedFilterSuggestions.js +1 -1
- package/esm/filters/filter-field/hooks/recent-and-pinned/usePinnedFilterSuggestions.js.map +2 -2
- package/esm/filters/filter-field/hooks/recent-and-pinned/usePinnedFilters.js +35 -28
- package/esm/filters/filter-field/hooks/recent-and-pinned/usePinnedFilters.js.map +2 -2
- package/esm/filters/filter-field/hooks/recent-and-pinned/useRecentFilters.js +24 -22
- package/esm/filters/filter-field/hooks/recent-and-pinned/useRecentFilters.js.map +2 -2
- package/esm/filters/filter-field/hooks/useSuggestions.js +2 -7
- package/esm/filters/filter-field/hooks/useSuggestions.js.map +2 -2
- package/esm/filters/filter-field/state/recent-pinned-store.js +11 -51
- package/esm/filters/filter-field/state/recent-pinned-store.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.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/SuggestionPin.js +5 -9
- package/esm/filters/filter-field/suggestions/SuggestionPin.js.map +2 -2
- package/esm/filters/filter-field/suggestions/SuggestionTips.css +7 -7
- package/esm/filters/filter-field/suggestions/SuggestionTips.sty.js +5 -5
- package/esm/filters/filter-field/suggestions/SuggestionTips.sty.js.map +1 -1
- package/esm/filters/filter-field/suggestions/SuggestionsOverlay.css +7 -7
- 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/segment-selector/SegmentSelector.css +4 -4
- package/esm/filters/segment-selector/SegmentSelector.js +100 -9
- 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/contexts/SegmentsUI/segmentValidationHelper.js +6 -3
- package/esm/filters/segment-selector/contexts/SegmentsUI/segmentValidationHelper.js.map +2 -2
- 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.js +2 -1
- package/esm/filters/segment-selector/parts/Overlay.js.map +2 -2
- 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 +32 -32
- 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.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/SelectionBar.js +13 -10
- package/esm/filters/segment-selector/parts/selectionBar/SelectionBar.js.map +2 -2
- package/esm/filters/segment-selector/parts/selectionBar/ValueSelect.js +68 -27
- package/esm/filters/segment-selector/parts/selectionBar/ValueSelect.js.map +2 -2
- package/esm/filters/timeframe-selector/TimeframeSelector.css +2 -2
- package/esm/filters/timeframe-selector/TimeframeSelector.js +4 -0
- package/esm/filters/timeframe-selector/TimeframeSelector.js.map +2 -2
- 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 +181 -5
- package/esm/filters/timeframe-selector/TimeframeSelectorRoot.js.map +2 -2
- 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.sty.js +4 -4
- package/esm/filters/timeframe-selector/components/overlay/TimeframeSelectorOverlay.sty.js.map +1 -1
- 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.js +2 -2
- package/esm/filters/timeframe-selector/components/trigger/Trigger.js.map +2 -2
- 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/forms/_base-input/BaseInput.css +99 -99
- package/esm/forms/_base-input/BaseInput.js +32 -5
- 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.sty.js +12 -12
- package/esm/forms/calendar/Calendar.sty.js.map +1 -1
- package/esm/forms/calendar/CalendarRoot.js +69 -14
- 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/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 +35 -8
- package/esm/forms/checkbox/Checkbox.js.map +2 -2
- 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/DateSelector.js +2 -2
- package/esm/forms/date-time-picker/DateSelector.js.map +2 -2
- package/esm/forms/date-time-picker/DateTimePicker.css +75 -75
- package/esm/forms/date-time-picker/DateTimePicker.js +9 -4
- package/esm/forms/date-time-picker/DateTimePicker.js.map +2 -2
- 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/DateTimePickerRoot.js +70 -3
- package/esm/forms/date-time-picker/DateTimePickerRoot.js.map +2 -2
- package/esm/forms/date-time-range-picker/DateRangeSelector.css +1 -1
- package/esm/forms/date-time-range-picker/DateRangeSelector.js +3 -3
- package/esm/forms/date-time-range-picker/DateRangeSelector.js.map +2 -2
- 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 +25 -3
- package/esm/forms/date-time-range-picker/DateTimeInput.js.map +2 -2
- 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.sty.js +4 -4
- package/esm/forms/date-time-range-picker/DateTimeRangePicker.sty.js.map +1 -1
- package/esm/forms/date-time-range-picker/DateTimeRangePickerRoot.js +111 -3
- package/esm/forms/date-time-range-picker/DateTimeRangePickerRoot.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.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-messages/FormFieldMessageItem.css +5 -5
- package/esm/forms/forms-core/components/form-field-messages/FormFieldMessageItem.js +9 -5
- 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.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/label/Label.css +5 -5
- 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/hooks/useFormFieldValidation.js +127 -48
- package/esm/forms/forms-core/hooks/useFormFieldValidation.js.map +2 -2
- package/esm/forms/forms-core/state/formfield-messages-state-reducer.js +10 -0
- package/esm/forms/forms-core/state/formfield-messages-state-reducer.js.map +2 -2
- 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/index.js +10 -0
- package/esm/forms/index.js.map +2 -2
- package/esm/forms/number-input-v2/NumberInput.js +163 -18
- package/esm/forms/number-input-v2/NumberInput.js.map +2 -2
- package/esm/forms/number-input-v2/utils/validation.js.map +2 -2
- package/esm/forms/radio/Radio.js +19 -3
- package/esm/forms/radio/Radio.js.map +2 -2
- package/esm/forms/radio/RadioGroup.js +42 -5
- package/esm/forms/radio/RadioGroup.js.map +2 -2
- package/esm/forms/radio/RadioGroupContext.js.map +2 -2
- 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.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 +74 -18
- package/esm/forms/select/Select.js.map +2 -2
- package/esm/forms/select/components/Control.js +3 -3
- package/esm/forms/select/components/Control.js.map +2 -2
- package/esm/forms/select/components/HiddenSelect.js +8 -6
- package/esm/forms/select/components/HiddenSelect.js.map +2 -2
- package/esm/forms/select/components/MenuList.js +6 -1
- package/esm/forms/select/components/MenuList.js.map +2 -2
- package/esm/forms/select/components/Option.js +12 -3
- package/esm/forms/select/components/Option.js.map +2 -2
- 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/switch/Switch.css +36 -36
- package/esm/forms/switch/Switch.js +39 -6
- 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 +33 -2
- package/esm/forms/text-area/TextArea.js.map +2 -2
- package/esm/forms/text-area/TextArea.sty.js +3 -3
- package/esm/forms/text-area/TextArea.sty.js.map +1 -1
- package/esm/forms/text-input/TextInput.js.map +2 -2
- package/esm/forms/toggle-button-group/Item.js +17 -3
- package/esm/forms/toggle-button-group/Item.js.map +2 -2
- package/esm/forms/toggle-button-group/ToggleButtonGroup.js +43 -7
- package/esm/forms/toggle-button-group/ToggleButtonGroup.js.map +2 -2
- package/esm/forms/toggle-button-group/contexts/ToggleButtonGroupContext.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/types.js +63 -0
- package/esm/forms/validation/types.js.map +7 -0
- package/esm/forms/validation/useCustomMessageEmitter.js +83 -0
- package/esm/forms/validation/useCustomMessageEmitter.js.map +7 -0
- package/esm/forms/validation/useValidationStateEmitter.js +31 -0
- package/esm/forms/validation/useValidationStateEmitter.js.map +7 -0
- package/esm/forms/validation/validation-builders.js +56 -0
- package/esm/forms/validation/validation-builders.js.map +7 -0
- package/esm/layouts/app-header/AppHeader.css +1 -1
- 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/Logo.js +3 -1
- package/esm/layouts/app-header/Logo.js.map +2 -2
- 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.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.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/index.js.map +2 -2
- package/esm/layouts/input-group/InputGroup.css +23 -23
- 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/PanelControlButton.js.map +2 -2
- package/esm/layouts/page/Sidebar.css +71 -22
- package/esm/layouts/page/Sidebar.js +2 -0
- 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-types.js.map +2 -2
- package/esm/layouts/page/panel-types.js.map +2 -2
- 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.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.js +7 -15
- package/esm/layouts/page-layout/details-layout/DetailsLayout.js.map +2 -2
- 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/portal-slots.js.map +1 -1
- package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.css +38 -38
- package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js +15 -15
- package/esm/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js.map +1 -1
- package/esm/layouts/split-layout/SplitLayout.css +18 -18
- 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 -1
- package/esm/navigation/menu/Content.js.map +2 -2
- package/esm/navigation/menu/Item.js +8 -0
- package/esm/navigation/menu/Item.js.map +2 -2
- package/esm/navigation/menu/Menu.css +38 -15
- package/esm/navigation/menu/Menu.sty.js +10 -8
- package/esm/navigation/menu/Menu.sty.js.map +2 -2
- package/esm/navigation/menu/Sub.js +19 -0
- package/esm/navigation/menu/Sub.js.map +2 -2
- package/esm/navigation/menu/SubContent.js +8 -1
- package/esm/navigation/menu/SubContent.js.map +2 -2
- package/esm/navigation/menu/SubTrigger.js +22 -7
- package/esm/navigation/menu/SubTrigger.js.map +2 -2
- package/esm/navigation/menu/contexts/MenuSubLevelContext.js +38 -0
- package/esm/navigation/menu/contexts/MenuSubLevelContext.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.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/notification-settings/components/CopyPermissionsButton.js +3 -7
- package/esm/notifications/notification-settings/components/CopyPermissionsButton.js.map +2 -2
- package/esm/notifications/notification-settings/components/ToggleButton.js +3 -1
- package/esm/notifications/notification-settings/components/ToggleButton.js.map +2 -2
- 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.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/modal/Modal.css +7 -7
- package/esm/overlays/modal/Modal.sty.js +4 -4
- 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 +6 -6
- package/esm/overlays/sheet/Sheet.sty.js +5 -5
- package/esm/overlays/sheet/Sheet.sty.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 +7 -3
- package/esm/overlays/utils/popper-modifiers.js.map +2 -2
- 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 +290 -290
- package/esm/styles/field.sty.js +2 -2
- package/esm/styles/field.sty.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 +9 -3
- 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.sty.js +3 -3
- package/esm/tables/DataTable/components/ColumnPinning/DataTablePinningShadowCells.sty.js.map +1 -1
- package/esm/tables/DataTable/components/DataTableBody.css +2 -2
- 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 +103 -117
- package/esm/tables/DataTable/components/DataTableCell.sty.js +5 -5
- package/esm/tables/DataTable/components/DataTableCell.sty.js.map +1 -1
- 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/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.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.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.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.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.sty.js +1 -1
- package/esm/tables/DataTable/components/DataTableVirtualizationContainer.sty.js.map +1 -1
- package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.css +6 -0
- package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.js +51 -37
- package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.js.map +2 -2
- package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.sty.js +7 -0
- package/esm/tables/DataTable/components/SettingsModal/DataTableSettingsModal.sty.js.map +7 -0
- 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.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/DataTableColumnSettingsModal.js +46 -7
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettingsModal.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnVisibilitySettings.js +2 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnVisibilitySettings.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.css +19 -7
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.js +8 -3
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js +3 -3
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js.map +2 -2
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.css +7 -7
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js +3 -3
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js.map +1 -1
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.css +5 -5
- 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 +72 -3
- package/esm/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.js.map +3 -3
- package/esm/tables/DataTable/components/Toolbar/DataTableToolbar.js +1 -0
- package/esm/tables/DataTable/components/Toolbar/DataTableToolbar.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/features/ColumnOrder/ColumnOrder.css +8 -8
- 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/ColumnSizing/ColumnSizing.css +3 -3
- 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/ColumnTypes/ColumnTypes.css +1 -1
- 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/ColumnTypes/column-types-types.js.map +2 -2
- package/esm/tables/DataTable/features/Download/Download.js +1 -1
- package/esm/tables/DataTable/features/Download/Download.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.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.js +2 -2
- package/esm/tables/DataTable/features/GanttChart/DataTableGanttChartGrid.js.map +2 -2
- 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/LoadingState/LoadingState.css +3 -3
- 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/MeterBarChart/MeterBarChart.js.map +2 -2
- package/esm/tables/DataTable/features/RowDetails/RowDetails.css +13 -13
- 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/RowInteractivity/RowInteractivity.css +14 -14
- 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/RowOrder/RowOrder.css +8 -8
- 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 -0
- package/esm/tables/DataTable/features/RowOrder/components/RowOrderingDragAndDropContext.js.map +2 -2
- package/esm/tables/DataTable/features/Sorting/Sorting.css +34 -34
- 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/SubRows/SubRows.css +19 -19
- 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/Thresholds/Thresholds.css +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/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 +18 -18
- 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/messages.js +22 -0
- package/esm/tables/DataTable/messages.js.map +2 -2
- package/esm/tables/SimpleTable/SimpleTable.css +27 -27
- package/esm/tables/SimpleTable/SimpleTable.sty.js +1 -1
- package/esm/tables/SimpleTable/SimpleTable.sty.js.map +1 -1
- package/esm/tables/index.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 +1 -1
- 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-field/FilterField.css +151 -119
- package/filters/filter-field/FilterField.js +75 -4
- package/filters/filter-field/FilterField.sty.js +28 -28
- 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 +13 -13
- package/filters/filter-field/components/FilterStatement.sty.js +6 -6
- package/filters/filter-field/hooks/recent-and-pinned/usePinnedFilterSuggestions.js +1 -1
- package/filters/filter-field/hooks/recent-and-pinned/usePinnedFilters.d.ts +10 -4
- package/filters/filter-field/hooks/recent-and-pinned/usePinnedFilters.js +32 -26
- package/filters/filter-field/hooks/recent-and-pinned/useRecentFilters.d.ts +2 -2
- package/filters/filter-field/hooks/recent-and-pinned/useRecentFilters.js +22 -20
- package/filters/filter-field/hooks/useSuggestions.d.ts +0 -1
- package/filters/filter-field/hooks/useSuggestions.js +1 -6
- package/filters/filter-field/state/recent-pinned-store.d.ts +11 -27
- package/filters/filter-field/state/recent-pinned-store.js +11 -51
- 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.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/SuggestionPin.d.ts +3 -2
- package/filters/filter-field/suggestions/SuggestionPin.js +5 -9
- package/filters/filter-field/suggestions/SuggestionTips.css +7 -7
- package/filters/filter-field/suggestions/SuggestionTips.sty.js +5 -5
- package/filters/filter-field/suggestions/SuggestionsOverlay.css +7 -7
- package/filters/filter-field/suggestions/SuggestionsOverlay.sty.js +5 -5
- package/filters/segment-selector/SegmentSelector.css +4 -4
- package/filters/segment-selector/SegmentSelector.js +91 -7
- package/filters/segment-selector/SegmentSelector.sty.js +4 -4
- package/filters/segment-selector/SegmentSelector.types.d.ts +10 -1
- package/filters/segment-selector/contexts/SegmentsUI/segmentValidationHelper.d.ts +2 -2
- package/filters/segment-selector/contexts/SegmentsUI/segmentValidationHelper.js +4 -3
- 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.js +2 -1
- 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 +32 -32
- 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/SelectionBar.js +11 -10
- package/filters/segment-selector/parts/selectionBar/ValueSelect.js +66 -27
- package/filters/timeframe-selector/TimeframeSelector.css +2 -2
- package/filters/timeframe-selector/TimeframeSelector.js +4 -0
- package/filters/timeframe-selector/TimeframeSelector.sty.js +2 -2
- package/filters/timeframe-selector/TimeframeSelectorRoot.js +177 -4
- 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.sty.js +4 -4
- 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.js +2 -2
- package/filters/timeframe-selector/components/trigger/Trigger.sty.js +4 -4
- package/forms/_base-input/BaseInput.css +99 -99
- package/forms/_base-input/BaseInput.js +28 -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/_base-input/base-input.types.d.ts +6 -0
- package/forms/calendar/Calendar.css +48 -48
- package/forms/calendar/Calendar.sty.js +12 -12
- package/forms/calendar/CalendarRoot.d.ts +2 -2
- package/forms/calendar/CalendarRoot.js +65 -14
- 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/variables.sty.js +2 -2
- package/forms/checkbox/Checkbox.css +20 -20
- package/forms/checkbox/Checkbox.js +31 -7
- package/forms/checkbox/Checkbox.sty.js +3 -3
- package/forms/date-time-picker/DateSelector.js +2 -2
- package/forms/date-time-picker/DateTimePicker.css +75 -75
- package/forms/date-time-picker/DateTimePicker.js +9 -4
- package/forms/date-time-picker/DateTimePicker.sty.js +6 -6
- package/forms/date-time-picker/DateTimePickerRoot.js +67 -3
- package/forms/date-time-range-picker/DateRangeSelector.css +1 -1
- package/forms/date-time-range-picker/DateRangeSelector.js +2 -2
- 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.js +25 -3
- 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.sty.js +4 -4
- package/forms/date-time-range-picker/DateTimeRangePickerRoot.js +105 -2
- 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.sty.js +1 -1
- package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.css +5 -5
- package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.js +9 -5
- package/forms/forms-core/components/form-field-messages/FormFieldMessageItem.sty.js +2 -2
- 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.sty.js +2 -2
- package/forms/forms-core/hooks/useFormFieldValidation.d.ts +24 -6
- package/forms/forms-core/hooks/useFormFieldValidation.js +122 -47
- package/forms/forms-core/state/formfield-messages-state-reducer.d.ts +1 -0
- package/forms/forms-core/state/formfield-messages-state-reducer.js +10 -0
- package/forms/forms-core/types/formfield-messages.types.d.ts +2 -0
- package/forms/hooks/useAutofillEvent.css +8 -8
- package/forms/hooks/useAutofillEvent.sty.js +4 -4
- package/forms/index.d.ts +2 -0
- package/forms/index.js +5 -0
- package/forms/number-input-v2/NumberInput.js +159 -18
- package/forms/number-input-v2/utils/validation.d.ts +2 -1
- package/forms/radio/Radio.js +19 -3
- package/forms/radio/RadioGroup.js +42 -5
- package/forms/radio/RadioGroupContext.d.ts +6 -0
- 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 +69 -17
- package/forms/select/components/Control.d.ts +1 -1
- package/forms/select/components/Control.js +2 -2
- package/forms/select/components/HiddenSelect.js +8 -6
- package/forms/select/components/MenuList.d.ts +2 -0
- package/forms/select/components/MenuList.js +6 -1
- package/forms/select/components/Option.js +12 -3
- package/forms/select/styles/Select.css +46 -46
- package/forms/select/styles/Select.sty.js +24 -24
- package/forms/shared-types.d.ts +8 -0
- 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 +35 -5
- package/forms/switch/Switch.sty.js +5 -5
- package/forms/text-area/TextArea.css +59 -59
- package/forms/text-area/TextArea.js +29 -1
- package/forms/text-area/TextArea.sty.js +3 -3
- package/forms/text-input/TextInput.d.ts +1 -1
- package/forms/toggle-button-group/Item.js +17 -3
- package/forms/toggle-button-group/ToggleButtonGroup.js +43 -7
- package/forms/toggle-button-group/contexts/ToggleButtonGroupContext.d.ts +3 -0
- package/forms/toggle-button-group/styles.css +58 -58
- package/forms/toggle-button-group/styles.sty.js +15 -15
- package/forms/validation/types.d.ts +122 -0
- package/forms/validation/types.js +81 -0
- package/forms/validation/useCustomMessageEmitter.d.ts +9 -0
- package/forms/validation/useCustomMessageEmitter.js +98 -0
- package/forms/validation/useValidationStateEmitter.d.ts +7 -0
- package/forms/validation/useValidationStateEmitter.js +49 -0
- package/forms/validation/validation-builders.d.ts +17 -0
- package/forms/validation/validation-builders.js +69 -0
- package/lang/en.json +168 -12
- package/lang/uncompiled/en.json +1113 -1064
- package/layouts/app-header/AppHeader.css +1 -1
- package/layouts/app-header/AppHeader.sty.js +1 -1
- package/layouts/app-header/Logo.d.ts +4 -4
- 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/input-group/InputGroup.css +23 -23
- package/layouts/input-group/InputGroup.sty.js +1 -1
- package/layouts/page/DetailView.css +3 -3
- package/layouts/page/DetailView.d.ts +17 -4
- package/layouts/page/DetailView.sty.js +2 -2
- package/layouts/page/Header.css +2 -2
- package/layouts/page/Header.d.ts +5 -1
- package/layouts/page/Header.sty.js +1 -1
- package/layouts/page/Main.css +6 -6
- package/layouts/page/Main.d.ts +5 -1
- package/layouts/page/Main.sty.js +4 -4
- package/layouts/page/Page.css +2 -2
- package/layouts/page/Page.d.ts +5 -1
- package/layouts/page/Page.sty.js +1 -1
- package/layouts/page/PanelControlButton.d.ts +5 -1
- package/layouts/page/Sidebar.css +71 -22
- package/layouts/page/Sidebar.d.ts +17 -4
- package/layouts/page/Sidebar.js +2 -0
- package/layouts/page/Sidebar.sty.js +8 -8
- package/layouts/page/page-types.d.ts +14 -3
- package/layouts/page/panel-types.d.ts +3 -0
- 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.d.ts +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.js +7 -15
- 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/details-layout/slots.d.ts +1 -1
- package/layouts/page-layout/shared/portal-slots.d.ts +1 -1
- package/layouts/page-layout/shared/slot-config.d.ts +1 -1
- package/layouts/page-layout/sidebar-layout/SidebarLayout.css +38 -38
- package/layouts/page-layout/sidebar-layout/SidebarLayout.sty.js +15 -15
- package/layouts/split-layout/SplitLayout.css +18 -18
- 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/migrations/3.2.0/codemods/rename-app-header-deprecated-members.js +1 -1
- package/migrations/3.2.0/codeshift-migration.js +1 -1
- package/migrations/3.2.0/dt-app-migration.js +100 -100
- package/navigation/breadcrumbs/Breadcrumbs.css +9 -9
- package/navigation/breadcrumbs/Breadcrumbs.sty.js +5 -5
- package/navigation/menu/Content.js +2 -1
- package/navigation/menu/Item.js +7 -0
- package/navigation/menu/Menu.css +38 -15
- package/navigation/menu/Menu.sty.d.ts +1 -0
- package/navigation/menu/Menu.sty.js +10 -8
- package/navigation/menu/Sub.js +16 -0
- package/navigation/menu/SubContent.js +8 -1
- package/navigation/menu/SubTrigger.js +17 -5
- package/navigation/menu/contexts/MenuSubLevelContext.d.ts +11 -0
- package/navigation/menu/contexts/MenuSubLevelContext.js +51 -0
- 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/notification-settings/components/CopyPermissionsButton.js +3 -7
- package/notifications/notification-settings/components/ToggleButton.js +3 -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/modal/Modal.css +7 -7
- package/overlays/modal/Modal.sty.js +4 -4
- package/overlays/overlay/Overlay.css +1 -1
- package/overlays/overlay/Overlay.sty.js +1 -1
- package/overlays/sheet/Sheet.css +6 -6
- package/overlays/sheet/Sheet.sty.js +5 -5
- package/overlays/tooltip/tooltip.css +18 -18
- package/overlays/tooltip/tooltip.sty.js +3 -3
- package/overlays/utils/popper-modifiers.js +7 -3
- package/package.json +9 -10
- 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 +290 -290
- 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 +9 -3
- 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.sty.js +3 -3
- package/tables/DataTable/components/DataTableBody.css +2 -2
- package/tables/DataTable/components/DataTableBody.sty.js +2 -2
- package/tables/DataTable/components/DataTableCell.css +103 -117
- package/tables/DataTable/components/DataTableCell.sty.js +5 -5
- package/tables/DataTable/components/DataTableDefaultCell.css +23 -23
- package/tables/DataTable/components/DataTableDefaultCell.sty.js +1 -1
- 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.sty.js +2 -2
- package/tables/DataTable/components/DataTableHeaderCell.css +64 -64
- package/tables/DataTable/components/DataTableHeaderCell.sty.js +23 -23
- package/tables/DataTable/components/DataTableRow.css +13 -13
- package/tables/DataTable/components/DataTableRow.sty.js +1 -1
- package/tables/DataTable/components/DataTableScrollShadow.css +10 -10
- package/tables/DataTable/components/DataTableScrollShadow.sty.js +2 -2
- package/tables/DataTable/components/DataTableVirtualizationContainer.css +21 -21
- package/tables/DataTable/components/DataTableVirtualizationContainer.sty.js +1 -1
- package/tables/DataTable/components/SettingsModal/DataTableSettingsModal.css +6 -0
- package/tables/DataTable/components/SettingsModal/DataTableSettingsModal.d.ts +3 -1
- package/tables/DataTable/components/SettingsModal/DataTableSettingsModal.js +61 -37
- package/tables/DataTable/components/SettingsModal/DataTableSettingsModal.sty.d.ts +1 -0
- package/tables/DataTable/components/SettingsModal/DataTableSettingsModal.sty.js +25 -0
- 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.sty.js +3 -3
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettingsModal.d.ts +5 -1
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnSettingsModal.js +42 -5
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnVisibilitySettings.d.ts +1 -1
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnVisibilitySettings.js +2 -1
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.css +19 -7
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.d.ts +4 -0
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.js +8 -3
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.d.ts +6 -6
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsList.sty.js +3 -3
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.css +7 -7
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableColumnsListItem.sty.js +3 -3
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.css +5 -5
- package/tables/DataTable/components/Toolbar/ColumnSettings/DataTableVisibilityFilterControls.sty.js +3 -3
- package/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-types.d.ts +5 -1
- package/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.d.ts +31 -2
- package/tables/DataTable/components/Toolbar/ColumnSettings/column-settings-utils.js +72 -3
- package/tables/DataTable/components/Toolbar/DataTableToolbar.d.ts +5 -1
- package/tables/DataTable/components/Toolbar/DataTableToolbar.js +1 -0
- package/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.css +3 -3
- package/tables/DataTable/components/Toolbar/Download/DataTableDownloadData.sty.js +2 -2
- package/tables/DataTable/features/ColumnOrder/ColumnOrder.css +8 -8
- package/tables/DataTable/features/ColumnOrder/ColumnOrder.sty.js +4 -4
- package/tables/DataTable/features/ColumnSizing/ColumnSizing.css +3 -3
- package/tables/DataTable/features/ColumnSizing/ColumnSizing.sty.js +1 -1
- package/tables/DataTable/features/ColumnTypes/ColumnTypes.css +1 -1
- package/tables/DataTable/features/ColumnTypes/ColumnTypes.sty.js +1 -1
- package/tables/DataTable/features/ColumnTypes/column-types-types.d.ts +2 -1
- package/tables/DataTable/features/ColumnVisibility/column-visibility-types.d.ts +17 -0
- package/tables/DataTable/features/Download/Download.js +1 -1
- 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.js +3 -3
- 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/LoadingState/LoadingState.css +3 -3
- package/tables/DataTable/features/LoadingState/LoadingState.sty.js +3 -3
- package/tables/DataTable/features/RowDetails/RowDetails.css +13 -13
- package/tables/DataTable/features/RowDetails/RowDetails.sty.js +3 -3
- package/tables/DataTable/features/RowInteractivity/RowInteractivity.css +14 -14
- package/tables/DataTable/features/RowInteractivity/RowInteractivity.sty.js +1 -1
- package/tables/DataTable/features/RowOrder/RowOrder.css +8 -8
- package/tables/DataTable/features/RowOrder/RowOrder.sty.js +3 -3
- package/tables/DataTable/features/RowOrder/components/RowOrderingDragAndDropContext.js +1 -0
- package/tables/DataTable/features/Sorting/Sorting.css +34 -34
- package/tables/DataTable/features/Sorting/Sorting.sty.js +3 -3
- package/tables/DataTable/features/SubRows/SubRows.css +19 -19
- package/tables/DataTable/features/SubRows/SubRows.sty.js +5 -5
- package/tables/DataTable/features/Thresholds/Thresholds.css +2 -2
- package/tables/DataTable/features/Thresholds/Thresholds.sty.js +3 -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 +18 -18
- package/tables/DataTable/features/UserActions/UserActions.sty.js +2 -2
- package/tables/DataTable/messages.d.ts +20 -0
- package/tables/DataTable/messages.js +22 -0
- package/tables/DataTable/public.api.d.ts +5 -3
- package/tables/SimpleTable/SimpleTable.css +27 -27
- package/tables/SimpleTable/SimpleTable.sty.js +1 -1
- package/tables/index.d.ts +1 -1
- package/typography/block-quote/Blockquote.css +2 -2
- package/typography/block-quote/Blockquote.sty.js +1 -1
- package/typography/code/Code.css +1 -1
- 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/toolbar/utils/estimate-toolbar-width.d.ts +0 -8
- package/charts/honeycomb/components/canvas/utils/define-text-to-render.d.ts +0 -3
- package/charts/honeycomb/components/canvas/utils/define-text-to-render.js +0 -34
- package/charts/tree-map/hooks/useSetOverlayState.d.ts +0 -3
- package/charts/tree-map/utils/text-measure.d.ts +0 -15
- package/content/ai-response/tests/AiResponse-animation.spec.d.ts +0 -1
- package/content/ai-response/tests/AiResponse-animation.spec.js +0 -281
- package/content/ai-response/tests/AiResponse-reduced-motion.spec.d.ts +0 -1
- package/content/ai-response/tests/AiResponse-reduced-motion.spec.js +0 -253
- package/content/ai-response/tests/vite-helpers.d.ts +0 -8
- package/content/ai-response/tests/vite-helpers.js +0 -66
- package/esm/charts/core/components/toolbar/utils/estimate-toolbar-width.js +0 -16
- package/esm/charts/core/components/toolbar/utils/estimate-toolbar-width.js.map +0 -7
- package/esm/charts/honeycomb/components/canvas/utils/define-text-to-render.js +0 -19
- package/esm/charts/honeycomb/components/canvas/utils/define-text-to-render.js.map +0 -7
- package/esm/charts/tree-map/hooks/useSetOverlayState.js +0 -21
- package/esm/charts/tree-map/hooks/useSetOverlayState.js.map +0 -7
- package/esm/charts/tree-map/utils/text-measure.js +0 -41
- package/esm/charts/tree-map/utils/text-measure.js.map +0 -7
- package/esm/content/ai-response/tests/AiResponse-animation.spec.js +0 -295
- package/esm/content/ai-response/tests/AiResponse-animation.spec.js.map +0 -7
- package/esm/content/ai-response/tests/AiResponse-reduced-motion.spec.js +0 -258
- package/esm/content/ai-response/tests/AiResponse-reduced-motion.spec.js.map +0 -7
- package/esm/content/ai-response/tests/vite-helpers.js +0 -50
- package/esm/content/ai-response/tests/vite-helpers.js.map +0 -7
- package/esm/filters/filter-field/contexts/SavedAndRecentQueryClientContext.js +0 -19
- package/esm/filters/filter-field/contexts/SavedAndRecentQueryClientContext.js.map +0 -7
- package/esm/filters/filter-field/error-fallback/ErrorFallback.js.map +0 -7
- package/esm/filters/filter-field/error-fallback/messages.js.map +0 -7
- package/esm/filters/filter-field/hooks/recent-and-pinned/usePersistedFilter.js +0 -163
- package/esm/filters/filter-field/hooks/recent-and-pinned/usePersistedFilter.js.map +0 -7
- package/esm/filters/filter-field/hooks/recent-and-pinned/useRecentFiltersStore.js +0 -25
- package/esm/filters/filter-field/hooks/recent-and-pinned/useRecentFiltersStore.js.map +0 -7
- package/filters/filter-field/contexts/SavedAndRecentQueryClientContext.d.ts +0 -6
- package/filters/filter-field/error-fallback/ErrorFallback.d.ts +0 -7
- package/filters/filter-field/hooks/recent-and-pinned/usePersistedFilter.d.ts +0 -12
- package/filters/filter-field/hooks/recent-and-pinned/usePersistedFilter.js +0 -176
- package/filters/filter-field/hooks/recent-and-pinned/useRecentFiltersStore.d.ts +0 -6
- package/filters/filter-field/hooks/recent-and-pinned/useRecentFiltersStore.js +0 -39
- /package/charts/xy-chart-adoption/{types → shared/types}/props.d.ts +0 -0
- /package/charts/xy-chart-adoption/{types → shared/types}/props.js +0 -0
- /package/{filters/filter-field → core/components}/error-fallback/ErrorFallback.js +0 -0
- /package/{charts/core → core}/utils/get-tick-value-as-number.d.ts +0 -0
- /package/{charts/core → core}/utils/get-tick-value-as-number.js +0 -0
- /package/esm/charts/{xy-chart-adoption/types/props.js.map → core/types/chart-data.js.map} +0 -0
- /package/esm/charts/xy-chart-adoption/{types → shared/types}/props.js +0 -0
- /package/esm/{filters/filter-field → core/components}/error-fallback/ErrorFallback.js +0 -0
- /package/esm/{charts/core → core}/utils/get-tick-value-as-number.js +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/forms/select/Select.tsx"],
|
|
4
|
-
"sourcesContent": ["import clsx from 'clsx';\nimport {\n type FocusEvent,\n forwardRef,\n type MutableRefObject,\n type PropsWithChildren,\n type Ref,\n type RefObject,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useReducer,\n useRef,\n useState,\n type ReactNode,\n type ReactElement,\n type SetStateAction,\n type Dispatch,\n} from 'react';\nimport ReactSelect, { createFilter, type GroupBase } from 'react-select';\n\nimport { components } from './components/components.js';\nimport type { MenuListFunctionRefObject } from './components/MenuList.js';\nimport { SelectMenuContext } from './contexts/SelectMenuContext.js';\nimport { useSelectOptions, _isOption } from './hooks/use-select-options.js';\nimport { useSelectSlots } from './hooks/use-select-slots.js';\nimport { useSelectValue } from './hooks/use-select-value.js';\nimport { SelectContent } from './SelectContent.js';\nimport { SelectCustomTrigger } from './SelectCustomTrigger.js';\nimport { SelectDisplayValue } from './SelectDisplayValue.js';\nimport {\n SelectEmptyState,\n type SelectEmptyStateProps,\n} from './SelectEmptyState.js';\nimport { SelectFilter, type SelectFilterProps } from './SelectFilter.js';\nimport { SelectGroup, SelectGroupLabel } from './SelectGroup.js';\nimport { SelectOption } from './SelectOption.js';\nimport { SelectPrefix, type SelectPrefixProps } from './SelectPrefix.js';\nimport { SelectSuffix } from './SelectSuffix.js';\nimport { SelectTrigger } from './SelectTrigger.js';\nimport {\n reducer,\n SelectActions,\n type SelectReducerAction,\n} from './state/select-menu-state-reducer.js';\nimport * as styles from './styles/Select.sty.js';\nimport type {\n BaseOption,\n OptionOrGroup,\n SelectContentWidthOptionsType,\n SelectTriggerWidthOptionsType,\n SelectMultiValue,\n SelectSingleValue,\n} from './types.js';\nimport { useBehavioralTrackingProps } from '../../core/hooks/useBehavioralTrackingProps.js';\nimport { useControllableState } from '../../core/hooks/useControllableState.js';\nimport { useFormControlState } from '../../core/hooks/useFormControlState.js';\nimport { createStratoLogger } from '../../core/sdk/sdk-logger.js';\nimport type { BehaviorTrackingProps } from '../../core/types/behavior-tracking-props.js';\nimport { DataTestId } from '../../core/types/data-props.js';\nimport { DOMProps } from '../../core/types/dom.js';\nimport type { FormControlProps } from '../../core/types/form-control-props.js';\nimport type {\n FormControlState,\n FormControlStateProps,\n} from '../../core/types/form-control-state.js';\nimport { MaskingProps } from '../../core/types/masking-props.js';\nimport { StylingProps } from '../../core/types/styling-props.js';\nimport { mergeProps } from '../../core/utils/merge-props.js';\nimport { withFormFieldMessageContextProviderWithGenerics } from '../forms-core/components/form-field/FormFieldMessageContextProvider.js';\nimport { useFormFieldMessagesContext } from '../forms-core/hooks/useFormFieldMessagesContext.js';\nimport { useFormFieldValidation } from '../forms-core/hooks/useFormFieldValidation.js';\nimport { useSyncedFormControlProps } from '../forms-core/hooks/useSyncedFormControlProps.js';\nimport { FormFieldMessagesAction } from '../forms-core/state/formfield-messages-state-reducer.js';\nimport type {\n FormControlRef,\n FormControlWithOverlayRef,\n} from '../shared-types.js';\n\nconst COMPONENT_NAME = 'Select';\n\n// Redeclare react-select module to extend it with additional props for typesafety.\n// https://react-select.com/typescript#custom-select-props\ndeclare module 'react-select/dist/declarations/src/Select' {\n export interface Props<\n Option,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n IsMulti extends boolean,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Group extends GroupBase<Option>,\n > {\n /** Custom placeholder text */\n placeholderText?: ReactNode;\n /** The trigger width set by the dev. */\n triggerWidth?: SelectTriggerWidthOptionsType;\n /** Custom select trigger */\n customTrigger?: ReactElement<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n { [key: string]: any } | null | undefined\n >;\n /** Custom display value. */\n displayValue?: ReactNode[];\n /** Prefix for the select trigger */\n prefix?: ReactElement<SelectPrefixProps>;\n /* TriggerRef that needs to be applied to the trigger in order to setup the menu positioning */\n triggerRef: HTMLElement | null;\n /* setter for the TriggerRef */\n setTriggerRef: Dispatch<SetStateAction<HTMLDivElement | null>>;\n /** Defines if the space for the prefix icons should be reserved in all options rendered */\n optionsHavePrefix: boolean;\n /** Select.Filter component specified by dev */\n customFilter?: ReactElement<SelectFilterProps>;\n /** Custom empty state provided by dev */\n emptyState?: ReactElement<SelectEmptyStateProps>;\n /** Form control state for errors and hints */\n controlState?: FormControlState;\n loading?: boolean;\n clearable?: boolean;\n isRequired?: boolean;\n /** array of all select options (including those in groups) */\n allOptions?: BaseOption<Option>[];\n hiddenSelectRef: Ref<HTMLSelectElement>;\n hiddenSelectName?: string;\n /** whether the focus styles on the options should be visible */\n focusOnOption: boolean;\n /** Ref that needs to be applied to the filter input to manage the focus and keyboard navigation */\n filterRef?: MutableRefObject<FormControlRef<HTMLDivElement> | null>;\n /** Ref that needs to be applied to the clear selection element to manage the focus and keyboard navigation */\n clearSelectionRef?: RefObject<HTMLElement | null>;\n /** Ref that needs to be applied to the select content (menulist) element to manage the focus and keyboard navigation */\n contentRef?: RefObject<HTMLDivElement | null>;\n menuListFunctionRef?: RefObject<MenuListFunctionRefObject | null>;\n /** The content width set by the dev. */\n contentWidth?: SelectContentWidthOptionsType;\n /** Whether the selected options are reordered to the top of the options. */\n showSelectedOptionsFirst?: boolean;\n /** The id used for the hidden input. */\n selectInputId?: string;\n /** Labels the current element. */\n 'aria-label'?: string;\n /** Identifies the element (or elements) that label(s) the current element. */\n 'aria-labelledby'?: string;\n /** Identifies the element (or elements) that describe(s) the object. */\n 'aria-describedby'?: string;\n /** Identifies the element (or elements) that provide(s) a detailed, extended description for the object. */\n 'aria-details'?: string;\n /** className and style prop for each of the components. */\n componentProps: {\n trigger?: StylingProps &\n DataTestId &\n BehaviorTrackingProps & { readOnly: boolean; ariaDisabled?: boolean };\n content?: StylingProps & DataTestId & BehaviorTrackingProps;\n filter?: StylingProps & DataTestId & BehaviorTrackingProps;\n emptyState?: StylingProps & DataTestId & BehaviorTrackingProps;\n };\n }\n}\n\n// Redeclare react forwardRef to allow generic types on react\n// https://fettblog.eu/typescript-react-generic-forward-refs/#option-3%3A-augment-forwardref\ndeclare module 'react' {\n function forwardRef<T, P = unknown>(\n render: (\n props: P,\n ref: import('react').Ref<T>,\n ) => import('react').ReactElement | null,\n ): (\n props: P & import('react').RefAttributes<T>,\n ) => import('react').ReactElement | null;\n}\n\n/**\n * Common select base props.\n * @public\n */\nexport type SelectBaseProps<T, Multiple extends boolean> = PropsWithChildren<{\n /**\n * Used to compare options with objects for values either by a specified property of the object or through a comparator function.\n */\n compareBy?: keyof T | ((valueA: T, valueB: T) => boolean);\n\n /** Name used for the component when submitting it in a form */\n name?: string;\n\n /** Form name used to connect the component to a form */\n form?: string;\n\n /**\n * Boolean to determine whether the component is required\n *\n * @defaultValue false\n */\n required?: boolean;\n\n /**\n * Whether the component is disabled\n *\n * @defaultValue false\n */\n disabled?: boolean;\n\n /**\n * Event handler called when the open state for the select changes\n */\n onOpenChange?: (isOpen: boolean) => void;\n\n /**\n * Whether or not the select allows multiple selection or not\n * @defaultValue false\n */\n multiple?: Multiple;\n\n /**\n * Whether or not the select is clearable.\n * @defaultValue false for single select, true for multi select\n */\n clearable?: boolean;\n\n /** Callback that is called when the select trigger loses focus. */\n onBlur?: (e: FocusEvent<HTMLInputElement, Element>) => void;\n\n /** Callback that is called when the select trigger gets focus. */\n onFocus?: (e: FocusEvent<HTMLInputElement, Element>) => void;\n}> &\n MaskingProps;\n\n/**\n * @public\n */\nexport type SelectOnChangeValue<\n OptionValue,\n Multiple extends boolean,\n> = Multiple extends true\n ? SelectMultiValue<OptionValue>\n : SelectSingleValue<OptionValue>;\n\n/**\n * Accepted properties for Select\n * @public\n */\nexport type SelectFormsProps<\n /*\n * TODO: Figure out how we can properly infer the type of the Select here\n * because that would come from the value of the options (as children)\n * which is not really doable with the given API.\n */\n OptionValue,\n Multiple extends boolean,\n> = SelectBaseProps<OptionValue, Multiple> &\n FormControlProps<\n Multiple extends true\n ? SelectMultiValue<OptionValue>\n : SelectSingleValue<OptionValue>,\n (value: SelectOnChangeValue<OptionValue, Multiple>) => void\n > &\n FormControlStateProps &\n DOMProps &\n StylingProps &\n DataTestId &\n BehaviorTrackingProps;\n\n/**\n * Function to return the item that should be focused after\n * updating all options via onChange in a controlled multi select.\n * @param options - all select options\n * @param focusedOptionValue - the value of the previously focused option\n * @returns option with the same value as the previously focused option or null\n */\nfunction getNewFocusedOption(\n options: OptionOrGroup<BaseOption<unknown>>,\n focusedOptionValue: unknown,\n): BaseOption<unknown> | null {\n for (const optionOrGroup of options) {\n if (_isOption(optionOrGroup)) {\n if (optionOrGroup.value === focusedOptionValue) {\n return optionOrGroup;\n }\n } else {\n for (const option of optionOrGroup.options) {\n if (_isOption(option) && option.value === focusedOptionValue) {\n return option;\n }\n }\n }\n }\n\n return null;\n}\n\n/** Select component */\nfunction SelectFwd<OptionValue, Multiple extends boolean = false>(\n props: SelectFormsProps<OptionValue, Multiple>,\n forwardedRef: Ref<FormControlWithOverlayRef>,\n) {\n const {\n multiple = false,\n disabled: propsDisabled,\n controlState,\n clearable = multiple,\n name,\n id: propId,\n readOnly: propReadOnly,\n children,\n value: propsValue,\n defaultValue: propsDefaultValue,\n onChange: propsOnChange,\n onFocus,\n onBlur,\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n 'aria-details': ariaDetails,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n 'aria-disabled': ariaDisabledProp,\n onOpenChange,\n required: propsRequired,\n ...remainingProps\n } = props;\n\n const [behavioralTrackingProps, restProps] =\n useBehavioralTrackingProps(remainingProps);\n\n const slots = useSelectSlots(children);\n\n const stratoLogger = useMemo(\n () =>\n createStratoLogger.bind({\n name,\n id: propId,\n ariaLabel,\n dataTestId,\n })(COMPONENT_NAME),\n [name, propId, ariaLabel, dataTestId],\n );\n\n const {\n disableFiltering,\n value: filterValueProp,\n defaultValue: filterDefaultValueProp,\n onChange: filterOnChangeProp,\n ...remainingFilterProps\n } = slots.Filter?.props ?? {};\n\n const {\n width: triggerWidthProp,\n placeholder: triggerPlaceholderProp,\n ...remainingTriggerProps\n } = slots.Trigger?.props ?? {};\n\n const {\n width: contentWidthProp,\n loading: contentLoadingProp,\n showSelectedOptionsFirst: contentShowSelectedOptionsFirstProp,\n ...remainingContentProps\n } = slots.Content?.props ?? {};\n\n const {\n optionsOrGroups: options,\n optionsHavePrefix,\n allOptions,\n } = useSelectOptions<OptionValue>(slots.Content, stratoLogger);\n\n const { value, defaultValue } = useSelectValue<OptionValue, Multiple>({\n value: propsValue,\n defaultValue: propsDefaultValue,\n options,\n multiple: (multiple === true) as Multiple,\n });\n\n const hiddenSelectRef = useRef<HTMLSelectElement>(null);\n\n const [triggerRef, setTriggerRef] = useState<HTMLDivElement | null>(null);\n\n const { disabled, required, id, ariaDisabled, readOnly } =\n useSyncedFormControlProps({\n propDisabled: propsDisabled,\n propRequired: propsRequired,\n propId,\n propAriaDisabled: ariaDisabledProp,\n propReadOnly,\n });\n\n const { onBlur: validationOnBlur } = useFormFieldValidation(hiddenSelectRef, {\n required,\n });\n\n const menuOpenReducer = useCallback(\n (state: boolean, action: SelectReducerAction) => {\n if (readOnly) {\n return state;\n }\n\n const newState = reducer(state, action);\n\n if (state !== newState) {\n // Delay the onOpenChange call to not run into a bad setState().\n queueMicrotask(() => {\n newState === false && !controlState && validationOnBlur();\n onOpenChange?.(newState);\n });\n }\n\n return newState;\n },\n [readOnly, controlState, validationOnBlur, onOpenChange],\n );\n\n const [menuOpen, dispatch] = useReducer(menuOpenReducer, false);\n\n const [isFocusWithin, setIsFocusWithin] = useState<boolean>(false);\n\n const [filterValue, setFilterValue] = useControllableState({\n value: filterValueProp,\n defaultValue: filterDefaultValueProp,\n onChange: filterOnChangeProp,\n });\n\n const { state: messagesContextState, dispatch: messagesContextDispatch } =\n useFormFieldMessagesContext();\n\n // any is needed as the needed type coming from the react-select is not exported\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const selectRef = useRef<any>(null);\n\n const hiddenTrigger = useMemo(\n () => triggerRef?.querySelector('input'),\n [triggerRef],\n );\n const [focusOnOption, setFocusOnOption] = useState<boolean>(true);\n\n // If the disableFiltering value changes, the filterValue will need to be\n // reset\n useEffect(() => {\n if (\n disableFiltering === true &&\n (filterValue !== undefined || filterValue !== '')\n ) {\n setFilterValue('');\n }\n // We don't want to include filterValue as dependency because when the user types in the input and\n // disableFiltering is true, we don't want to clear the input\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [disableFiltering]);\n\n const filterConfig = {\n // Filter by both visible label and option value/textValue.\n // This allows searching by value (e.g. \"green\") when the rendered label differs.\n stringify: (option: {\n label: string;\n value: string;\n data: BaseOption<OptionValue>;\n }) => {\n const searchValue = option.data.textValue ?? option.value;\n\n if (searchValue && searchValue !== option.label) {\n return `${option.label} ${searchValue}`;\n }\n\n return `${option.label}`;\n },\n };\n\n const handleChange = (\n option:\n | SelectSingleValue<BaseOption<OptionValue>>\n | SelectMultiValue<BaseOption<OptionValue>>,\n ) => {\n // Send native onChange event for any form control / onChange listeners\n requestAnimationFrame(() => {\n const nativeEvent = new Event('change', {\n bubbles: true,\n cancelable: true,\n });\n hiddenSelectRef?.current?.dispatchEvent(nativeEvent);\n });\n\n if (multiple === false) {\n setFilterValue(''); // clear the filter when an option is selected in single mode\n }\n\n // Early exit if the onChange prop is not defined, there is nothing that needs\n // to be done.\n if (!propsOnChange) {\n return;\n }\n\n // In a single select scenario, it will only emit a single value of the selected option\n if (multiple === false) {\n // If the clicked option is the same as the selected one we can return early.\n if (option === value) {\n return;\n }\n if (option === null) {\n // Ensures that null is returned if no value is selected\n propsOnChange?.(null as SelectOnChangeValue<OptionValue, Multiple>);\n } else {\n propsOnChange?.(\n (option as SelectSingleValue<BaseOption<OptionValue>>)\n ?.value as SelectOnChangeValue<OptionValue, Multiple>,\n );\n }\n }\n\n // In a multi select scenario, it will map the value of all selected options and report them\n // in the on change.\n if (multiple === true) {\n const selectedOptionValues = (\n option as SelectMultiValue<BaseOption<OptionValue>>\n ).map((individualOption) => individualOption.value);\n propsOnChange?.(\n selectedOptionValues as SelectOnChangeValue<OptionValue, Multiple>,\n );\n }\n };\n\n const filterRef = useRef<FormControlRef<HTMLDivElement>>(null);\n const clearSelectionRef = useRef<HTMLElement>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const menuListFunctionRef = useRef<MenuListFunctionRefObject>(null);\n\n const handleArrowKeyOptionFocus = (key: KeyboardEvent['key']) => {\n if (key !== 'ArrowUp' && key !== 'ArrowDown') {\n return;\n }\n\n requestAnimationFrame(() => {\n if (!contentRef.current) {\n return;\n }\n\n const container = contentRef.current;\n const focusedElement = container.querySelector(\n '.strato-select-option--focus',\n );\n\n if (focusedElement) {\n focusedElement.scrollIntoView({\n block: 'nearest',\n });\n } else if (container) {\n if (key === 'ArrowDown') {\n container.scrollTop = 0;\n } else if (menuListFunctionRef.current) {\n menuListFunctionRef.current.scrollToBottom();\n }\n }\n });\n };\n\n useImperativeHandle(\n forwardedRef,\n (): FormControlWithOverlayRef => ({\n element: containerRef.current,\n triggerRef: triggerRef,\n inputRef: hiddenSelectRef.current,\n focus: () => {\n hiddenTrigger?.focus();\n },\n open: () => {\n // When opened programmatically the hidden input needs to be focused for the virtual focus\n hiddenTrigger?.focus();\n dispatch({\n type: SelectActions.OPEN,\n });\n },\n close: () =>\n dispatch({\n type: SelectActions.CLOSE,\n }),\n validate: () => {\n // The initialization of the hiddenSelectRef is delayed, therefore,\n // we want to check the validity at the end of the render cycle.\n queueMicrotask(() => hiddenSelectRef.current?.reportValidity());\n messagesContextDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n },\n }),\n [hiddenTrigger, messagesContextDispatch, triggerRef],\n );\n\n /**\n * Workaround for the focus to stay on the selected option for the controlled multi select\n * See: https://github.com/JedWatson/react-select/issues/5367\n */\n if (multiple && propsOnChange) {\n const select = selectRef.current;\n if (select?.state.focusedOption) {\n const focusedOptionValue = select.state.focusedOption.value;\n const newFocusedOption = getNewFocusedOption(options, focusedOptionValue);\n\n // HACK: manipulating the state without setState is evil (but needed here as we are mid-transition)\n select.state.focusedOption = newFocusedOption;\n }\n }\n\n const [hasFormControlError] = useFormControlState(controlState);\n const showError = controlState\n ? hasFormControlError\n : messagesContextState.showError;\n\n const contextMemo = useMemo(\n () => ({ state: menuOpen, dispatch }),\n [menuOpen, dispatch],\n );\n\n const onBlurHandler = (event: FocusEvent<HTMLInputElement, Element>) => {\n if (\n // The relatedTarget is null when the focus leaves the browser and we want to still trigger the onBlur in this case.\n !event.relatedTarget ||\n (event.relatedTarget !== hiddenTrigger &&\n event.relatedTarget !== clearSelectionRef.current &&\n event.relatedTarget !== filterRef.current?.inputRef)\n ) {\n if (!menuOpen && isFocusWithin) {\n setIsFocusWithin(false);\n onBlur?.(event);\n }\n }\n };\n\n return (\n <SelectMenuContext.Provider value={contextMemo}>\n <div\n ref={containerRef}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(\n styles.selectWrapper({\n fullWidth:\n triggerWidthProp === 'full' || triggerWidthProp === '100%',\n }),\n consumerClassName,\n )}\n style={consumerStyle}\n {...mergeProps(restProps, behavioralTrackingProps)}\n data-dt-component={COMPONENT_NAME}\n >\n <ReactSelect\n instanceId={id}\n selectInputId={id}\n className={clsx(styles.select, styles.clearReactSelectZIndex, {\n [styles.validAndEnabled]: !disabled && !ariaDisabled && !showError,\n })}\n unstyled\n options={options}\n components={components}\n // TODO: React select does an instance equality check on this one, so we need to figure out how\n // to keep that in sync over a controlled state.\n value={value}\n defaultValue={defaultValue}\n onChange={(value) =>\n // Need to cast this here as React.Select handles the value still as unknown.\n // TODO: Maybe we can go to the JSX generic?\n handleChange(\n value as\n | SelectSingleValue<BaseOption<OptionValue>>\n | SelectMultiValue<BaseOption<OptionValue>>,\n )\n }\n onBlur={onBlurHandler}\n hiddenSelectName={name}\n ref={selectRef}\n pageSize={5}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-details={ariaDetails}\n aria-disabled={ariaDisabled}\n hiddenSelectRef={hiddenSelectRef}\n // This has to be set to false as we don't want the input directly in the select trigger\n // but handle this ourselves\n isSearchable={false}\n // Multi selection relevant props\n isMulti={multiple ?? false}\n hideSelectedOptions={false}\n closeMenuOnSelect={multiple === false}\n // This has to be set to false as we don't want the clear button directly in the select trigger\n // but handle this ourselves\n isClearable={false}\n isDisabled={disabled}\n isRequired={required}\n triggerWidth={triggerWidthProp}\n contentWidth={contentWidthProp ?? 'trigger'}\n placeholderText={triggerPlaceholderProp}\n // DISCUSS: Figure out if `undefined` is better here or if we should use `null`\n displayValue={slots.DisplayValue ?? undefined}\n prefix={slots.Prefix ?? undefined}\n customTrigger={slots.CustomTrigger ?? undefined}\n // Trigger and Menu (Popper) ref connections\n triggerRef={triggerRef}\n setTriggerRef={setTriggerRef}\n // Reserving space for prefix icons\n optionsHavePrefix={optionsHavePrefix}\n menuIsOpen={menuOpen}\n // Handles Filtering in the current select\n filterOption={(option, inputValue) => {\n if (disableFiltering === true) {\n return true;\n }\n const filterFunction =\n createFilter<BaseOption<OptionValue>>(filterConfig);\n\n // We need to cast this here, because the filter option prop only infers option as `FilterOptionOption<unknown>`. The `FilterOptionOption` type is not exposed by react-select.\n return filterFunction(\n option as Parameters<typeof filterFunction>[0],\n inputValue,\n );\n }}\n customFilter={slots.Filter ?? undefined}\n inputValue={filterValue}\n onInputChange={(newValue, actionmeta) => {\n if (actionmeta.action === 'input-change') {\n setFilterValue(newValue);\n }\n }}\n emptyState={slots.EmptyState ?? undefined}\n controlState={controlState}\n loading={contentLoadingProp}\n clearable={clearable}\n allOptions={allOptions}\n tabSelectsValue={false}\n focusOnOption={focusOnOption}\n contentRef={contentRef}\n menuListFunctionRef={menuListFunctionRef}\n filterRef={filterRef}\n clearSelectionRef={clearSelectionRef}\n showSelectedOptionsFirst={contentShowSelectedOptionsFirstProp}\n componentProps={{\n trigger: {\n className: slots.Trigger?.props.className,\n style: { ...slots.Trigger?.props.style },\n readOnly: !!readOnly,\n ariaDisabled,\n ...remainingTriggerProps,\n },\n filter: {\n className: slots.Filter?.props.className,\n style: slots.Filter?.props.style,\n ...remainingFilterProps,\n },\n content: {\n className: slots.Content?.props.className,\n style: slots.Content?.props.style,\n ...remainingContentProps,\n },\n emptyState: {\n ...slots.EmptyState?.props,\n },\n }}\n onFocus={(event) => {\n if (!isFocusWithin) {\n onFocus?.(event);\n setIsFocusWithin(true);\n }\n }}\n onKeyDown={(event) => {\n if (!menuOpen) {\n if (event.key === 'Enter' || event.key === ' ') {\n dispatch({\n type: SelectActions.SELECTFOCUS,\n });\n }\n\n return true;\n }\n\n // close the dropdown on Escape and focus the trigger\n if (event.key === 'Escape') {\n dispatch({\n type: SelectActions.SELECTFOCUS,\n });\n\n hiddenTrigger?.focus();\n }\n\n if (filterRef.current || clearSelectionRef.current) {\n // focus is on filter\n if (document.activeElement === filterRef.current?.inputRef) {\n // We only want to remove selected values with Backspace when the focus is not on the filter input\n if (\n event.key === 'Backspace' &&\n filterRef.current.inputRef?.value === ''\n ) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n // focus back on the trigger on tab if there is no clear selection element or shift tab is pressed\n if (event.key === 'Tab') {\n if (!clearSelectionRef.current || event.shiftKey) {\n event.preventDefault();\n event.stopPropagation();\n hiddenTrigger?.focus();\n } else {\n clearSelectionRef.current && setFocusOnOption(false); // prevent setting the focus on the option if there is a clear selection button when tabbing - the clear button should be the only element focused then\n }\n }\n\n // close the overlay when using a single select and selecting an option while searching in the filter\n if (event.key === 'Enter' && !props.multiple) {\n dispatch({\n type: SelectActions.SELECTFOCUS,\n });\n hiddenTrigger?.focus();\n }\n\n // do not select any options if the select is in a loading state\n if (event.key === 'Enter' && contentLoadingProp) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n // do not select any options if typing space as the first character of the filter\n if (event.key === ' ' && !filterValue) {\n setFilterValue(' ');\n event.preventDefault();\n event.stopPropagation();\n }\n\n handleArrowKeyOptionFocus(event.key);\n\n return true;\n }\n\n // focus is on the clear selection element\n if (document.activeElement === clearSelectionRef.current) {\n setFocusOnOption(false);\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n event.preventDefault();\n }\n\n // focus the trigger on tab (if it is not a shift tab press to focus back on the filter)\n if (\n event.key === 'Tab' &&\n !(event.shiftKey && filterRef.current)\n ) {\n event.preventDefault();\n event.stopPropagation();\n hiddenTrigger?.focus();\n setFocusOnOption(true);\n }\n\n // focus moves from the clear selection element back to the input\n if (\n event.key === 'Tab' &&\n event.shiftKey &&\n filterRef.current\n ) {\n setFocusOnOption(true);\n }\n\n return false;\n }\n\n try {\n // focus is on hidden input element\n if (\n document.activeElement &&\n document.getElementById(document.activeElement.id)\n ) {\n if (event.key === 'Tab') {\n event.preventDefault();\n event.stopPropagation();\n\n if (!event.shiftKey) {\n // set focus on filter if available\n if (filterRef.current) {\n filterRef.current.inputRef?.focus();\n return false;\n }\n\n // set focus on clearSelection if available\n if (clearSelectionRef.current) {\n clearSelectionRef.current.focus();\n setFocusOnOption(false);\n return false;\n }\n } else {\n // set focus on clearSelection if available\n if (clearSelectionRef.current) {\n clearSelectionRef.current.focus();\n setFocusOnOption(false);\n return false;\n }\n // set focus on filter if available\n if (filterRef.current) {\n filterRef.current.inputRef?.focus();\n return false;\n }\n }\n }\n\n handleArrowKeyOptionFocus(event.key);\n\n // do not select any options if the select is in a loading state\n if (contentLoadingProp) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.log(\n 'Invalid query selector on the Select trigger',\n error,\n );\n }\n return false;\n }\n\n try {\n // close the dropdown when tab is pressed and no filter or clear selection is available\n if (\n document.activeElement &&\n document.getElementById(document.activeElement.id)\n ) {\n if (event.key === 'Tab') {\n dispatch({\n type: SelectActions.SELECTFOCUS,\n });\n } else {\n handleArrowKeyOptionFocus(event.key);\n }\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.log(\n 'Invalid query selector on the Select trigger',\n error,\n );\n }\n\n setFocusOnOption(true);\n }}\n />\n </div>\n </SelectMenuContext.Provider>\n );\n}\n\nconst SelectForwardRef = forwardRef(SelectFwd);\n\n/**\n * Select component that uses a fallback FormFieldMessages-context if it wasn't wrapped in a FormField.\n */\nconst SelectRoot =\n withFormFieldMessageContextProviderWithGenerics(SelectForwardRef);\n\n/**\n * The `Select` component allows you to choose one or multiple\n * options from a collapsed dropdown with options.\n * @public\n */\nexport const Select = Object.assign(SelectRoot, {\n Content: SelectContent,\n Option: SelectOption,\n Group: SelectGroup,\n GroupLabel: SelectGroupLabel,\n Trigger: SelectTrigger,\n DisplayValue: SelectDisplayValue,\n Prefix: SelectPrefix,\n Suffix: SelectSuffix,\n CustomTrigger: SelectCustomTrigger,\n Filter: SelectFilter,\n EmptyState: SelectEmptyState,\n});\n\n(Select as typeof Select & { displayName: string }).displayName =\n COMPONENT_NAME;\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import clsx from 'clsx';\nimport {\n type FocusEvent,\n forwardRef,\n type MutableRefObject,\n type PropsWithChildren,\n type Ref,\n type RefObject,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useReducer,\n useRef,\n useState,\n type ReactNode,\n type ReactElement,\n type SetStateAction,\n type Dispatch,\n} from 'react';\nimport ReactSelect, { createFilter, type GroupBase } from 'react-select';\n\nimport { components } from './components/components.js';\nimport type { MenuListFunctionRefObject } from './components/MenuList.js';\nimport { SelectMenuContext } from './contexts/SelectMenuContext.js';\nimport {\n useSelectOptions,\n _isOption,\n safeStringify,\n} from './hooks/use-select-options.js';\nimport { useSelectSlots } from './hooks/use-select-slots.js';\nimport { useSelectValue } from './hooks/use-select-value.js';\nimport { SelectContent } from './SelectContent.js';\nimport { SelectCustomTrigger } from './SelectCustomTrigger.js';\nimport { SelectDisplayValue } from './SelectDisplayValue.js';\nimport {\n SelectEmptyState,\n type SelectEmptyStateProps,\n} from './SelectEmptyState.js';\nimport { SelectFilter, type SelectFilterProps } from './SelectFilter.js';\nimport { SelectGroup, SelectGroupLabel } from './SelectGroup.js';\nimport { SelectOption } from './SelectOption.js';\nimport { SelectPrefix, type SelectPrefixProps } from './SelectPrefix.js';\nimport { SelectSuffix } from './SelectSuffix.js';\nimport { SelectTrigger } from './SelectTrigger.js';\nimport {\n reducer,\n SelectActions,\n type SelectReducerAction,\n} from './state/select-menu-state-reducer.js';\nimport * as styles from './styles/Select.sty.js';\nimport type {\n BaseOption,\n OptionOrGroup,\n SelectContentWidthOptionsType,\n SelectTriggerWidthOptionsType,\n SelectMultiValue,\n SelectSingleValue,\n} from './types.js';\nimport { useBehavioralTrackingProps } from '../../core/hooks/useBehavioralTrackingProps.js';\nimport { useControllableState } from '../../core/hooks/useControllableState.js';\nimport { useFormControlState } from '../../core/hooks/useFormControlState.js';\nimport { createStratoLogger } from '../../core/sdk/sdk-logger.js';\nimport type { BehaviorTrackingProps } from '../../core/types/behavior-tracking-props.js';\nimport { DataTestId } from '../../core/types/data-props.js';\nimport { DOMProps } from '../../core/types/dom.js';\nimport type { FormControlProps } from '../../core/types/form-control-props.js';\nimport type {\n FormControlState,\n FormControlStateProps,\n} from '../../core/types/form-control-state.js';\nimport { MaskingProps } from '../../core/types/masking-props.js';\nimport { StylingProps } from '../../core/types/styling-props.js';\nimport { mergeProps } from '../../core/utils/merge-props.js';\nimport { modalityStore } from '../../core/utils/modality.js';\nimport { withFormFieldMessageContextProviderWithGenerics } from '../forms-core/components/form-field/FormFieldMessageContextProvider.js';\nimport { useFormFieldMessagesContext } from '../forms-core/hooks/useFormFieldMessagesContext.js';\nimport { useFormFieldValidation } from '../forms-core/hooks/useFormFieldValidation.js';\nimport { useSyncedFormControlProps } from '../forms-core/hooks/useSyncedFormControlProps.js';\nimport { FormFieldMessagesAction } from '../forms-core/state/formfield-messages-state-reducer.js';\nimport type {\n FormControlRef,\n FormControlWithOverlayRef,\n} from '../shared-types.js';\nimport { useCustomMessageEmitter } from '../validation/useCustomMessageEmitter.js';\nimport { useValidationStateEmitter } from '../validation/useValidationStateEmitter.js';\nimport { getValidationState } from '../validation/validation-builders.js';\n\nconst COMPONENT_NAME = 'Select';\n\n// Redeclare react-select module to extend it with additional props for typesafety.\n// https://react-select.com/typescript#custom-select-props\ndeclare module 'react-select/dist/declarations/src/Select' {\n export interface Props<\n Option,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n IsMulti extends boolean,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Group extends GroupBase<Option>,\n > {\n /** Custom placeholder text */\n placeholderText?: ReactNode;\n /** The trigger width set by the dev. */\n triggerWidth?: SelectTriggerWidthOptionsType;\n /** Custom select trigger */\n customTrigger?: ReactElement<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n { [key: string]: any } | null | undefined\n >;\n /** Custom display value. */\n displayValue?: ReactNode[];\n /** Prefix for the select trigger */\n prefix?: ReactElement<SelectPrefixProps>;\n /* TriggerRef that needs to be applied to the trigger in order to setup the menu positioning */\n triggerRef: HTMLElement | null;\n /* setter for the TriggerRef */\n setTriggerRef: Dispatch<SetStateAction<HTMLDivElement | null>>;\n /** Defines if the space for the prefix icons should be reserved in all options rendered */\n optionsHavePrefix: boolean;\n /** Select.Filter component specified by dev */\n customFilter?: ReactElement<SelectFilterProps>;\n /** Custom empty state provided by dev */\n emptyState?: ReactElement<SelectEmptyStateProps>;\n /** Form control state for errors and hints */\n controlState?: FormControlState;\n loading?: boolean;\n clearable?: boolean;\n isRequired?: boolean;\n /** array of all select options (including those in groups) */\n allOptions?: BaseOption<Option>[];\n hiddenSelectRef: Ref<HTMLSelectElement>;\n hiddenSelectName?: string;\n /** whether the focus styles on the options should be visible */\n focusOnOption: boolean;\n /** Ref that needs to be applied to the filter input to manage the focus and keyboard navigation */\n filterRef?: MutableRefObject<FormControlRef<HTMLDivElement> | null>;\n /** Ref that needs to be applied to the clear selection element to manage the focus and keyboard navigation */\n clearSelectionRef?: RefObject<HTMLElement | null>;\n /** Ref that needs to be applied to the select content (menulist) element to manage the focus and keyboard navigation */\n contentRef?: RefObject<HTMLDivElement | null>;\n menuListFunctionRef?: RefObject<MenuListFunctionRefObject | null>;\n /** The content width set by the dev. */\n contentWidth?: SelectContentWidthOptionsType;\n /** Whether the selected options are reordered to the top of the options. */\n showSelectedOptionsFirst?: boolean;\n /** The id used for the hidden input. */\n selectInputId?: string;\n /** Labels the current element. */\n 'aria-label'?: string;\n /** Identifies the element (or elements) that label(s) the current element. */\n 'aria-labelledby'?: string;\n /** Identifies the element (or elements) that describe(s) the object. */\n 'aria-describedby'?: string;\n /** Identifies the element (or elements) that provide(s) a detailed, extended description for the object. */\n 'aria-details'?: string;\n /** className and style prop for each of the components. */\n componentProps: {\n trigger?: StylingProps &\n DataTestId &\n BehaviorTrackingProps & { readOnly: boolean; ariaDisabled?: boolean };\n content?: StylingProps & DataTestId & BehaviorTrackingProps;\n filter?: StylingProps & DataTestId & BehaviorTrackingProps;\n emptyState?: StylingProps & DataTestId & BehaviorTrackingProps;\n };\n }\n}\n\n// Redeclare react forwardRef to allow generic types on react\n// https://fettblog.eu/typescript-react-generic-forward-refs/#option-3%3A-augment-forwardref\ndeclare module 'react' {\n function forwardRef<T, P = unknown>(\n render: (\n props: P,\n ref: import('react').Ref<T>,\n ) => import('react').ReactElement | null,\n ): (\n props: P & import('react').RefAttributes<T>,\n ) => import('react').ReactElement | null;\n}\n\n/**\n * Common select base props.\n * @public\n */\nexport type SelectBaseProps<T, Multiple extends boolean> = PropsWithChildren<{\n /**\n * Used to compare options with objects for values either by a specified property of the object or through a comparator function.\n */\n compareBy?: keyof T | ((valueA: T, valueB: T) => boolean);\n\n /** Name used for the component when submitting it in a form */\n name?: string;\n\n /** Form name used to connect the component to a form */\n form?: string;\n\n /**\n * Boolean to determine whether the component is required\n *\n * @defaultValue false\n */\n required?: boolean;\n\n /**\n * Whether the component is disabled\n *\n * @defaultValue false\n */\n disabled?: boolean;\n\n /**\n * Event handler called when the open state for the select changes\n */\n onOpenChange?: (isOpen: boolean) => void;\n\n /**\n * Whether or not the select allows multiple selection or not\n * @defaultValue false\n */\n multiple?: Multiple;\n\n /**\n * Whether or not the select is clearable.\n * @defaultValue false for single select, true for multi select\n */\n clearable?: boolean;\n\n /** Callback that is called when the select trigger loses focus. */\n onBlur?: (e: FocusEvent<HTMLInputElement, Element>) => void;\n\n /** Callback that is called when the select trigger gets focus. */\n onFocus?: (e: FocusEvent<HTMLInputElement, Element>) => void;\n}> &\n MaskingProps;\n\n/**\n * @public\n */\nexport type SelectOnChangeValue<\n OptionValue,\n Multiple extends boolean,\n> = Multiple extends true\n ? SelectMultiValue<OptionValue>\n : SelectSingleValue<OptionValue>;\n\n/**\n * Accepted properties for Select\n * @public\n */\nexport type SelectFormsProps<\n /*\n * TODO: Figure out how we can properly infer the type of the Select here\n * because that would come from the value of the options (as children)\n * which is not really doable with the given API.\n */\n OptionValue,\n Multiple extends boolean,\n> = SelectBaseProps<OptionValue, Multiple> &\n FormControlProps<\n Multiple extends true\n ? SelectMultiValue<OptionValue>\n : SelectSingleValue<OptionValue>,\n (value: SelectOnChangeValue<OptionValue, Multiple>) => void\n > &\n FormControlStateProps &\n DOMProps &\n StylingProps &\n DataTestId &\n BehaviorTrackingProps;\n\n/**\n * Function to return the item that should be focused after\n * updating all options via onChange in a controlled multi select.\n * @param options - all select options\n * @param focusedOptionValue - the value of the previously focused option\n * @returns option with the same value as the previously focused option or null\n */\nfunction getNewFocusedOption(\n options: OptionOrGroup<BaseOption<unknown>>,\n focusedOptionValue: unknown,\n): BaseOption<unknown> | null {\n for (const optionOrGroup of options) {\n if (_isOption(optionOrGroup)) {\n if (optionOrGroup.value === focusedOptionValue) {\n return optionOrGroup;\n }\n } else {\n for (const option of optionOrGroup.options) {\n if (_isOption(option) && option.value === focusedOptionValue) {\n return option;\n }\n }\n }\n }\n\n return null;\n}\n\n/** Select component */\nfunction SelectFwd<OptionValue, Multiple extends boolean = false>(\n props: SelectFormsProps<OptionValue, Multiple>,\n forwardedRef: Ref<FormControlWithOverlayRef>,\n) {\n const {\n multiple = false,\n disabled: propsDisabled,\n controlState,\n clearable = multiple,\n name,\n id: propId,\n readOnly: propReadOnly,\n children,\n value: propsValue,\n defaultValue: propsDefaultValue,\n onChange: propsOnChange,\n onFocus,\n onBlur,\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n 'aria-details': ariaDetails,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n 'aria-disabled': ariaDisabledProp,\n onOpenChange,\n onValidityChange,\n required: propsRequired,\n ...remainingProps\n } = props;\n\n const [behavioralTrackingProps, restProps] =\n useBehavioralTrackingProps(remainingProps);\n\n const slots = useSelectSlots(children);\n\n const stratoLogger = useMemo(\n () =>\n createStratoLogger.bind({\n name,\n id: propId,\n ariaLabel,\n dataTestId,\n })(COMPONENT_NAME),\n [name, propId, ariaLabel, dataTestId],\n );\n\n const {\n disableFiltering,\n value: filterValueProp,\n defaultValue: filterDefaultValueProp,\n onChange: filterOnChangeProp,\n ...remainingFilterProps\n } = slots.Filter?.props ?? {};\n\n const {\n width: triggerWidthProp,\n placeholder: triggerPlaceholderProp,\n ...remainingTriggerProps\n } = slots.Trigger?.props ?? {};\n\n const {\n width: contentWidthProp,\n loading: contentLoadingProp,\n showSelectedOptionsFirst: contentShowSelectedOptionsFirstProp,\n ...remainingContentProps\n } = slots.Content?.props ?? {};\n\n const {\n optionsOrGroups: options,\n optionsHavePrefix,\n allOptions,\n } = useSelectOptions<OptionValue>(slots.Content, stratoLogger);\n\n const { value, defaultValue } = useSelectValue<OptionValue, Multiple>({\n value: propsValue,\n defaultValue: propsDefaultValue,\n options,\n multiple: (multiple === true) as Multiple,\n });\n\n const hiddenSelectRef = useRef<HTMLSelectElement>(null);\n const _emitValidationState = useValidationStateEmitter(onValidityChange);\n const emitValidationState = useCustomMessageEmitter(\n _emitValidationState,\n () => getValidationState(hiddenSelectRef.current, 'manual'),\n );\n\n const [triggerRef, setTriggerRef] = useState<HTMLDivElement | null>(null);\n\n const { disabled, required, id, ariaDisabled, readOnly } =\n useSyncedFormControlProps({\n propDisabled: propsDisabled,\n propRequired: propsRequired,\n propId,\n propAriaDisabled: ariaDisabledProp,\n propReadOnly,\n });\n\n const { onBlur: validationOnBlur } = useFormFieldValidation(\n hiddenSelectRef,\n { required, value: safeStringify(propsValue) },\n undefined,\n undefined,\n _emitValidationState,\n );\n\n const { state: messagesContextState, dispatch: messagesContextDispatch } =\n useFormFieldMessagesContext();\n\n const menuOpenReducer = useCallback(\n (state: boolean, action: SelectReducerAction) => {\n if (readOnly) {\n return state;\n }\n\n const newState = reducer(state, action);\n\n if (state !== newState) {\n // Delay the onOpenChange call to not run into a bad setState().\n queueMicrotask(() => {\n onOpenChange?.(newState);\n });\n\n // Surface blur validation when the dropdown closes.\n if (state === true && newState === false) {\n queueMicrotask(() => {\n messagesContextDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n hiddenSelectRef.current?.reportValidity();\n emitValidationState(\n getValidationState(hiddenSelectRef.current, 'blur'),\n );\n });\n }\n }\n\n return newState;\n },\n [\n readOnly,\n controlState,\n onOpenChange,\n messagesContextDispatch,\n hiddenSelectRef,\n emitValidationState,\n ],\n );\n\n const [menuOpen, dispatch] = useReducer(menuOpenReducer, false);\n\n const [isFocusWithin, setIsFocusWithin] = useState<boolean>(false);\n\n const [filterValue, setFilterValue] = useControllableState({\n value: filterValueProp,\n defaultValue: filterDefaultValueProp,\n onChange: filterOnChangeProp,\n });\n\n // any is needed as the needed type coming from the react-select is not exported\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const selectRef = useRef<any>(null);\n\n const hiddenTrigger = useMemo(\n () => triggerRef?.querySelector('input'),\n [triggerRef],\n );\n const [focusOnOption, setFocusOnOption] = useState<boolean>(true);\n\n // If the disableFiltering value changes, the filterValue will need to be\n // reset\n useEffect(() => {\n if (\n disableFiltering === true &&\n (filterValue !== undefined || filterValue !== '')\n ) {\n setFilterValue('');\n }\n // We don't want to include filterValue as dependency because when the user types in the input and\n // disableFiltering is true, we don't want to clear the input\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [disableFiltering]);\n\n const filterConfig = {\n // Filter by both visible label and option value/textValue.\n // This allows searching by value (e.g. \"green\") when the rendered label differs.\n stringify: (option: {\n label: string;\n value: string;\n data: BaseOption<OptionValue>;\n }) => {\n const searchValue = option.data.textValue ?? option.value;\n\n if (searchValue && searchValue !== option.label) {\n return `${option.label} ${searchValue}`;\n }\n\n return `${option.label}`;\n },\n };\n\n const handleChange = (\n option:\n | SelectSingleValue<BaseOption<OptionValue>>\n | SelectMultiValue<BaseOption<OptionValue>>,\n ) => {\n // Send native onChange event for any form control / onChange listeners\n requestAnimationFrame(() => {\n const nativeEvent = new Event('change', {\n bubbles: true,\n cancelable: true,\n });\n hiddenSelectRef?.current?.dispatchEvent(nativeEvent);\n });\n\n if (multiple === false) {\n setFilterValue(''); // clear the filter when an option is selected in single mode\n }\n\n // Early exit if the onChange prop is not defined, there is nothing that needs\n // to be done.\n if (!propsOnChange) {\n return;\n }\n\n // In a single select scenario, it will only emit a single value of the selected option\n if (multiple === false) {\n // If the clicked option is the same as the selected one we can return early.\n if (option === value) {\n return;\n }\n if (option === null) {\n // Ensures that null is returned if no value is selected\n propsOnChange?.(null as SelectOnChangeValue<OptionValue, Multiple>);\n } else {\n propsOnChange?.(\n (option as SelectSingleValue<BaseOption<OptionValue>>)\n ?.value as SelectOnChangeValue<OptionValue, Multiple>,\n );\n }\n }\n\n // In a multi select scenario, it will map the value of all selected options and report them\n // in the on change.\n if (multiple === true) {\n const selectedOptionValues = (\n option as SelectMultiValue<BaseOption<OptionValue>>\n ).map((individualOption) => individualOption.value);\n propsOnChange?.(\n selectedOptionValues as SelectOnChangeValue<OptionValue, Multiple>,\n );\n }\n };\n\n const filterRef = useRef<FormControlRef<HTMLDivElement>>(null);\n const clearSelectionRef = useRef<HTMLElement>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const menuListFunctionRef = useRef<MenuListFunctionRefObject>(null);\n\n useEffect(() => {\n if (menuOpen) {\n modalityStore.setState('keyboard');\n }\n }, [menuOpen]);\n\n const handleArrowKeyOptionFocus = (key: KeyboardEvent['key']) => {\n if (key !== 'ArrowUp' && key !== 'ArrowDown') {\n return;\n }\n\n requestAnimationFrame(() => {\n if (!contentRef.current || !menuListFunctionRef.current) {\n return;\n }\n\n const focusedElement = contentRef.current.querySelector(\n '.strato-select-option--focus',\n );\n\n if (!focusedElement) {\n // No focused element in DOM means react-select wrapped around to the\n // opposite end of the list \u2014 scroll there to reveal it.\n if (key === 'ArrowDown') {\n menuListFunctionRef.current.scrollToIndex(0);\n } else {\n menuListFunctionRef.current.scrollToBottom();\n }\n return;\n }\n\n const index = Number(\n focusedElement.closest('[data-index]')?.getAttribute('data-index'),\n );\n if (!isNaN(index)) {\n menuListFunctionRef.current.scrollToIndex(index);\n }\n });\n };\n\n useImperativeHandle(\n forwardedRef,\n (): FormControlWithOverlayRef => ({\n element: containerRef.current,\n triggerRef: triggerRef,\n inputRef: hiddenSelectRef.current,\n focus: () => {\n hiddenTrigger?.focus();\n },\n open: () => {\n // When opened programmatically the hidden input needs to be focused for the virtual focus\n hiddenTrigger?.focus();\n dispatch({\n type: SelectActions.OPEN,\n });\n },\n close: () =>\n dispatch({\n type: SelectActions.CLOSE,\n }),\n validate: () => {\n // The initialization of the hiddenSelectRef is delayed, therefore,\n // we want to check the validity at the end of the render cycle.\n queueMicrotask(() => hiddenSelectRef.current?.reportValidity());\n messagesContextDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n const state = getValidationState(hiddenSelectRef.current, 'manual');\n emitValidationState(state);\n },\n // DEPRECATION: [APPDEV-18178] BREAKING-CHANGE: Remove validateAsync() and change validate() to return Promise<ValidationState>.\n validateAsync: async () => {\n queueMicrotask(() => hiddenSelectRef.current?.reportValidity());\n messagesContextDispatch?.({\n type: FormFieldMessagesAction.SETISTOUCHED,\n payload: { isTouched: true },\n });\n const state = getValidationState(hiddenSelectRef.current, 'manual');\n return emitValidationState(state);\n },\n }),\n [hiddenTrigger, messagesContextDispatch, emitValidationState, triggerRef],\n );\n\n /**\n * Workaround for the focus to stay on the selected option for the controlled multi select\n * See: https://github.com/JedWatson/react-select/issues/5367\n */\n if (multiple && propsOnChange) {\n const select = selectRef.current;\n if (select?.state.focusedOption) {\n const focusedOptionValue = select.state.focusedOption.value;\n const newFocusedOption = getNewFocusedOption(options, focusedOptionValue);\n\n // HACK: manipulating the state without setState is evil (but needed here as we are mid-transition)\n select.state.focusedOption = newFocusedOption;\n }\n }\n\n const [hasFormControlError] = useFormControlState(controlState);\n const showError = controlState\n ? hasFormControlError\n : messagesContextState.showError;\n\n const contextMemo = useMemo(\n () => ({ state: menuOpen, dispatch }),\n [menuOpen, dispatch],\n );\n\n const onBlurHandler = (event: FocusEvent<HTMLInputElement, Element>) => {\n if (\n // The relatedTarget is null when the focus leaves the browser and we want to still trigger the onBlur in this case.\n !event.relatedTarget ||\n (event.relatedTarget !== hiddenTrigger &&\n event.relatedTarget !== clearSelectionRef.current &&\n event.relatedTarget !== filterRef.current?.inputRef)\n ) {\n if (!menuOpen && isFocusWithin) {\n setIsFocusWithin(false);\n validationOnBlur();\n onBlur?.(event);\n }\n }\n };\n\n return (\n <SelectMenuContext.Provider value={contextMemo}>\n <div\n ref={containerRef}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(\n styles.selectWrapper({\n fullWidth:\n triggerWidthProp === 'full' || triggerWidthProp === '100%',\n }),\n consumerClassName,\n )}\n style={consumerStyle}\n {...mergeProps(restProps, behavioralTrackingProps)}\n data-dt-component={COMPONENT_NAME}\n >\n <ReactSelect\n instanceId={id}\n selectInputId={id}\n className={clsx(styles.select, styles.clearReactSelectZIndex, {\n [styles.validAndEnabled]: !disabled && !ariaDisabled && !showError,\n })}\n unstyled\n options={options}\n components={components}\n // TODO: React select does an instance equality check on this one, so we need to figure out how\n // to keep that in sync over a controlled state.\n value={value}\n defaultValue={defaultValue}\n onChange={(value) =>\n // Need to cast this here as React.Select handles the value still as unknown.\n // TODO: Maybe we can go to the JSX generic?\n handleChange(\n value as\n | SelectSingleValue<BaseOption<OptionValue>>\n | SelectMultiValue<BaseOption<OptionValue>>,\n )\n }\n onBlur={onBlurHandler}\n hiddenSelectName={name}\n ref={selectRef}\n pageSize={5}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-details={ariaDetails}\n aria-disabled={ariaDisabled}\n hiddenSelectRef={hiddenSelectRef}\n // This has to be set to false as we don't want the input directly in the select trigger\n // but handle this ourselves\n isSearchable={false}\n // Multi selection relevant props\n isMulti={multiple ?? false}\n hideSelectedOptions={false}\n closeMenuOnSelect={multiple === false}\n // This has to be set to false as we don't want the clear button directly in the select trigger\n // but handle this ourselves\n isClearable={false}\n isDisabled={disabled}\n isRequired={required}\n triggerWidth={triggerWidthProp}\n contentWidth={contentWidthProp ?? 'trigger'}\n placeholderText={triggerPlaceholderProp}\n // DISCUSS: Figure out if `undefined` is better here or if we should use `null`\n displayValue={slots.DisplayValue ?? undefined}\n prefix={slots.Prefix ?? undefined}\n customTrigger={slots.CustomTrigger ?? undefined}\n // Trigger and Menu (Popper) ref connections\n triggerRef={triggerRef}\n setTriggerRef={setTriggerRef}\n // Reserving space for prefix icons\n optionsHavePrefix={optionsHavePrefix}\n menuIsOpen={menuOpen}\n // Handles Filtering in the current select\n filterOption={(option, inputValue) => {\n if (disableFiltering === true) {\n return true;\n }\n const filterFunction =\n createFilter<BaseOption<OptionValue>>(filterConfig);\n\n // We need to cast this here, because the filter option prop only infers option as `FilterOptionOption<unknown>`. The `FilterOptionOption` type is not exposed by react-select.\n return filterFunction(\n option as Parameters<typeof filterFunction>[0],\n inputValue,\n );\n }}\n customFilter={slots.Filter ?? undefined}\n inputValue={filterValue}\n onInputChange={(newValue, actionmeta) => {\n if (actionmeta.action === 'input-change') {\n setFilterValue(newValue);\n }\n }}\n emptyState={slots.EmptyState ?? undefined}\n controlState={controlState}\n loading={contentLoadingProp}\n clearable={clearable}\n allOptions={allOptions}\n tabSelectsValue={false}\n focusOnOption={focusOnOption}\n contentRef={contentRef}\n menuListFunctionRef={menuListFunctionRef}\n filterRef={filterRef}\n clearSelectionRef={clearSelectionRef}\n showSelectedOptionsFirst={contentShowSelectedOptionsFirstProp}\n componentProps={{\n trigger: {\n className: slots.Trigger?.props.className,\n style: { ...slots.Trigger?.props.style },\n readOnly: !!readOnly,\n ariaDisabled,\n ...remainingTriggerProps,\n },\n filter: {\n className: slots.Filter?.props.className,\n style: slots.Filter?.props.style,\n ...remainingFilterProps,\n },\n content: {\n className: slots.Content?.props.className,\n style: slots.Content?.props.style,\n ...remainingContentProps,\n },\n emptyState: {\n ...slots.EmptyState?.props,\n },\n }}\n onFocus={(event) => {\n if (!isFocusWithin) {\n onFocus?.(event);\n setIsFocusWithin(true);\n }\n }}\n onKeyDown={(event) => {\n if (!menuOpen) {\n if (event.key === 'Enter' || event.key === ' ') {\n dispatch({\n type: SelectActions.SELECTFOCUS,\n });\n }\n\n return true;\n }\n\n // close the dropdown on Escape and focus the trigger\n if (event.key === 'Escape') {\n dispatch({\n type: SelectActions.SELECTFOCUS,\n });\n\n hiddenTrigger?.focus();\n }\n\n if (filterRef.current || clearSelectionRef.current) {\n // focus is on filter\n if (document.activeElement === filterRef.current?.inputRef) {\n // We only want to remove selected values with Backspace when the focus is not on the filter input\n if (\n event.key === 'Backspace' &&\n filterRef.current.inputRef?.value === ''\n ) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n // focus back on the trigger on tab if there is no clear selection element or shift tab is pressed\n if (event.key === 'Tab') {\n if (!clearSelectionRef.current || event.shiftKey) {\n event.preventDefault();\n event.stopPropagation();\n hiddenTrigger?.focus();\n } else {\n clearSelectionRef.current && setFocusOnOption(false); // prevent setting the focus on the option if there is a clear selection button when tabbing - the clear button should be the only element focused then\n }\n }\n\n // close the overlay when using a single select and selecting an option while searching in the filter\n if (event.key === 'Enter' && !props.multiple) {\n dispatch({\n type: SelectActions.SELECTFOCUS,\n });\n hiddenTrigger?.focus();\n }\n\n // do not select any options if the select is in a loading state\n if (event.key === 'Enter' && contentLoadingProp) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n // do not select any options if typing space as the first character of the filter\n if (event.key === ' ' && !filterValue) {\n setFilterValue(' ');\n event.preventDefault();\n event.stopPropagation();\n }\n\n handleArrowKeyOptionFocus(event.key);\n\n return true;\n }\n\n // focus is on the clear selection element\n if (document.activeElement === clearSelectionRef.current) {\n setFocusOnOption(false);\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n event.preventDefault();\n }\n\n // focus the trigger on tab (if it is not a shift tab press to focus back on the filter)\n if (\n event.key === 'Tab' &&\n !(event.shiftKey && filterRef.current)\n ) {\n event.preventDefault();\n event.stopPropagation();\n hiddenTrigger?.focus();\n setFocusOnOption(true);\n }\n\n // focus moves from the clear selection element back to the input\n if (\n event.key === 'Tab' &&\n event.shiftKey &&\n filterRef.current\n ) {\n setFocusOnOption(true);\n }\n\n return false;\n }\n\n try {\n // focus is on hidden input element\n if (\n document.activeElement &&\n document.getElementById(document.activeElement.id)\n ) {\n if (event.key === 'Tab') {\n event.preventDefault();\n event.stopPropagation();\n\n if (!event.shiftKey) {\n // set focus on filter if available\n if (filterRef.current) {\n filterRef.current.inputRef?.focus();\n return false;\n }\n\n // set focus on clearSelection if available\n if (clearSelectionRef.current) {\n clearSelectionRef.current.focus();\n setFocusOnOption(false);\n return false;\n }\n } else {\n // set focus on clearSelection if available\n if (clearSelectionRef.current) {\n clearSelectionRef.current.focus();\n setFocusOnOption(false);\n return false;\n }\n // set focus on filter if available\n if (filterRef.current) {\n filterRef.current.inputRef?.focus();\n return false;\n }\n }\n }\n\n handleArrowKeyOptionFocus(event.key);\n\n // do not select any options if the select is in a loading state\n if (contentLoadingProp) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.log(\n 'Invalid query selector on the Select trigger',\n error,\n );\n }\n return false;\n }\n\n try {\n // close the dropdown when tab is pressed and no filter or clear selection is available\n if (\n document.activeElement &&\n document.getElementById(document.activeElement.id)\n ) {\n if (event.key === 'Tab') {\n dispatch({\n type: SelectActions.SELECTFOCUS,\n });\n } else {\n handleArrowKeyOptionFocus(event.key);\n }\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.log(\n 'Invalid query selector on the Select trigger',\n error,\n );\n }\n\n setFocusOnOption(true);\n }}\n />\n </div>\n </SelectMenuContext.Provider>\n );\n}\n\nconst SelectForwardRef = forwardRef(SelectFwd);\n\n/**\n * Select component that uses a fallback FormFieldMessages-context if it wasn't wrapped in a FormField.\n */\nconst SelectRoot =\n withFormFieldMessageContextProviderWithGenerics(SelectForwardRef);\n\n/**\n * The `Select` component allows you to choose one or multiple\n * options from a collapsed dropdown with options.\n * @public\n */\nexport const Select = Object.assign(SelectRoot, {\n Content: SelectContent,\n Option: SelectOption,\n Group: SelectGroup,\n GroupLabel: SelectGroupLabel,\n Trigger: SelectTrigger,\n DisplayValue: SelectDisplayValue,\n Prefix: SelectPrefix,\n Suffix: SelectSuffix,\n CustomTrigger: SelectCustomTrigger,\n Filter: SelectFilter,\n EmptyState: SelectEmptyState,\n});\n\n(Select as typeof Select & { displayName: string }).displayName =\n COMPONENT_NAME;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["value"]
|
|
7
7
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import clsx from "clsx";
|
|
3
3
|
import {
|
|
4
|
-
useMemo,
|
|
5
4
|
Children,
|
|
6
5
|
cloneElement,
|
|
6
|
+
useMemo,
|
|
7
7
|
useRef
|
|
8
8
|
} from "react";
|
|
9
9
|
import { ChevronDownSmallIcon } from "@dynatrace/strato-icons";
|
|
@@ -14,8 +14,8 @@ import { useFocusRing } from "../../../core/hooks/useFocusRing.js";
|
|
|
14
14
|
import { useFormControlState } from "../../../core/hooks/useFormControlState.js";
|
|
15
15
|
import { useId } from "../../../core/hooks/useId.js";
|
|
16
16
|
import { useMergeRefs } from "../../../core/hooks/useMergeRefs.js";
|
|
17
|
+
import { useVisualRefreshEnabled } from "../../../core/hooks/useVisualRefreshEnabled.js";
|
|
17
18
|
import { OverlayStackingProvider } from "../../../core/providers/OverlayStackingProvider.js";
|
|
18
|
-
import { isVisualRefreshEnabled } from "../../../core/utils/is-visual-refresh-enabled.js";
|
|
19
19
|
import { mergeProps as _mergeProps } from "../../../core/utils/merge-props.js";
|
|
20
20
|
import { Flex } from "../../../layouts/flex/Flex.js";
|
|
21
21
|
import { InternalBaseItem as BaseItem } from "../../forms-core/components/form-field-messages/FormFieldMessageBaseItem.js";
|
|
@@ -56,7 +56,7 @@ function Control(props) {
|
|
|
56
56
|
selectProps.controlState
|
|
57
57
|
);
|
|
58
58
|
const showError = selectProps.controlState ? hasFormControlError : state.showError;
|
|
59
|
-
const isCritical =
|
|
59
|
+
const isCritical = useVisualRefreshEnabled() ? showError && !isDisabled : showError;
|
|
60
60
|
const hiddenReactSelectInput = Array.isArray(valueContainer.props.children) ? valueContainer.props.children[1] : null;
|
|
61
61
|
const id = selectProps["selectInputId"];
|
|
62
62
|
const hiddenInput = useMemo(
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/forms/select/components/Control.tsx"],
|
|
4
|
-
"sourcesContent": ["import clsx from 'clsx';\nimport {\n
|
|
5
|
-
"mappings": "AAkNW,cA4CD,YA5CC;AAlNX,OAAO,UAAU;AACjB;AAAA,EACE;AAAA,
|
|
4
|
+
"sourcesContent": ["import clsx from 'clsx';\nimport {\n Children,\n cloneElement,\n type KeyboardEvent as ReactKeyboardEvent,\n type ReactNode,\n useMemo,\n useRef,\n} from 'react';\nimport type {\n ControlProps as ReactSelectControlProps,\n GroupBase,\n} from 'react-select';\n\nimport { ChevronDownSmallIcon } from '@dynatrace/strato-icons';\n\nimport { HiddenSelect } from './HiddenSelect.js';\nimport { _isValueContainerComponent } from './ValueContainer.js';\nimport { Button } from '../../../buttons/button/Button.js';\nimport { useFocusRing } from '../../../core/hooks/useFocusRing.js';\nimport { useFormControlState } from '../../../core/hooks/useFormControlState.js';\nimport { useId } from '../../../core/hooks/useId.js';\nimport { useMergeRefs } from '../../../core/hooks/useMergeRefs.js';\nimport { useVisualRefreshEnabled } from '../../../core/hooks/useVisualRefreshEnabled.js';\nimport { OverlayStackingProvider } from '../../../core/providers/OverlayStackingProvider.js';\nimport { mergeProps as _mergeProps } from '../../../core/utils/merge-props.js';\nimport { Flex } from '../../../layouts/flex/Flex.js';\nimport { InternalBaseItem as BaseItem } from '../../forms-core/components/form-field-messages/FormFieldMessageBaseItem.js';\nimport { useFormFieldMessagesContext } from '../../forms-core/hooks/useFormFieldMessagesContext.js';\nimport { useSelectMenuContext } from '../hooks/use-select-menu-context.js';\nimport { SelectActions } from '../state/select-menu-state-reducer.js';\nimport * as styles from '../styles/Select.sty.js';\n\n//#region Typings\ntype ControlProps<\n OptionValue,\n isMulti extends boolean,\n Group extends GroupBase<OptionValue>,\n> = ReactSelectControlProps<OptionValue, isMulti, Group>;\n//#endregion Typings\n\n/** Iterates over child nodes to extract the value container. */\nfunction getSelectValueContainer<\n OptionValue,\n isMulti extends boolean,\n Group extends GroupBase<OptionValue>,\n>(children: ReactNode) {\n const childrenArray = Children.toArray(children);\n\n for (const child of childrenArray) {\n if (_isValueContainerComponent<OptionValue, isMulti, Group>(child)) {\n return child;\n }\n }\n\n // Assertion to control the return type, we should always get a valueContainer.\n throw new Error('Assertion to make sure the container exists.');\n}\n\nexport function Control<\n OptionValue,\n isMulti extends boolean,\n Group extends GroupBase<OptionValue>,\n>(props: Readonly<ControlProps<OptionValue, isMulti, Group>>) {\n const { children, isDisabled, innerRef, innerProps, selectProps } = props;\n const ariaLabelledBy = selectProps['aria-labelledby'];\n const {\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n readOnly,\n ariaDisabled,\n ...remainingProps\n } = selectProps.componentProps.trigger ?? {};\n const rootRef = useMergeRefs<HTMLElement | null>([\n innerRef,\n selectProps.setTriggerRef,\n ]);\n\n const valueContainer = getSelectValueContainer(children);\n const baseId = useId();\n const triggerId = `strato-select-trigger${baseId}`;\n const customTriggerId = selectProps.customTrigger?.props?.id;\n\n const { state } = useFormFieldMessagesContext();\n /** Please remove with removal of control state. */\n const [hasFormControlError, hint] = useFormControlState(\n selectProps.controlState,\n );\n\n const showError = selectProps.controlState\n ? hasFormControlError\n : state.showError;\n\n // with the visual refresh enabled, a disabled select should not receive critical coloring on error\n const isCritical = useVisualRefreshEnabled()\n ? showError && !isDisabled\n : showError;\n\n const hiddenReactSelectInput = Array.isArray(valueContainer.props.children)\n ? valueContainer.props.children[1]\n : null;\n const id = selectProps['selectInputId'];\n\n const hiddenInput = useMemo(\n () =>\n cloneElement(hiddenReactSelectInput, {\n ...hiddenReactSelectInput.props,\n key: 'hidden-react-select-input',\n id,\n autoComplete: 'off',\n 'aria-haspopup': 'listbox',\n 'aria-invalid': showError,\n 'aria-labelledby': ariaLabelledBy ?? customTriggerId ?? triggerId,\n 'aria-label': selectProps['aria-label'],\n 'aria-describedby': selectProps['aria-describedby'],\n 'aria-details': selectProps['aria-details'],\n }),\n [\n hiddenReactSelectInput,\n id,\n showError,\n ariaLabelledBy,\n customTriggerId,\n triggerId,\n selectProps,\n ],\n );\n\n const { focusProps, focusClassName } = useFocusRing({\n color: showError ? 'critical' : 'neutral',\n focusWithin: true,\n disabled: isDisabled,\n });\n\n const { dispatch } = useSelectMenuContext();\n const handledByTouchRef = useRef(false);\n\n const interactionProps = useMemo(() => {\n return {\n onTouchEnd: () => {\n // On mobile, touchend fires before the emulated click. We dispatch\n // SELECTFOCUS to toggle the menu, then focus the filter input on the\n // next animation frame.\n handledByTouchRef.current = true;\n dispatch({\n type: SelectActions.SELECTFOCUS,\n });\n requestAnimationFrame(() => {\n selectProps.filterRef?.current?.inputRef?.focus({\n preventScroll: true,\n });\n });\n },\n onClick: () => {\n // Skip the emulated click that follows a touchend on mobile.\n if (handledByTouchRef.current) {\n handledByTouchRef.current = false;\n return;\n }\n dispatch({\n type: SelectActions.SELECTFOCUS,\n });\n },\n\n onKeyDown: (event: ReactKeyboardEvent<HTMLElement>) => {\n if (\n (event.key === 'Enter' || event.key === ' ') &&\n !selectProps.isMulti\n ) {\n dispatch({\n type: SelectActions.CLOSE,\n });\n }\n },\n };\n }, [dispatch, selectProps.isMulti]);\n\n const customTrigger = useMemo(() => {\n if (selectProps.customTrigger) {\n /** React Select dummyInput is applied in the ValueContainers children in order to\n * handle / react to the inputs correctly. This one needs to be passed through in order for the\n * trigger to work correctly.\n */\n\n return cloneElement(\n selectProps.customTrigger,\n {\n key: 'custom-trigger',\n ref: rootRef,\n id: triggerId,\n ..._mergeProps(\n selectProps.customTrigger.props,\n innerProps,\n ...(isDisabled ? [] : [interactionProps]),\n ),\n },\n [selectProps.customTrigger.props?.children, hiddenInput],\n );\n }\n }, [\n hiddenInput,\n innerProps,\n interactionProps,\n rootRef,\n selectProps.customTrigger,\n triggerId,\n ]);\n\n if (customTrigger) {\n return <OverlayStackingProvider>{customTrigger}</OverlayStackingProvider>;\n }\n\n return (\n <Flex padding={0} flexDirection=\"column\" gap={4}>\n <OverlayStackingProvider>\n <Button\n ref={rootRef}\n id={triggerId}\n textAlign=\"start\"\n data-testid={dataTestId}\n disabled={isDisabled}\n aria-disabled={ariaDisabled}\n width={selectProps.triggerWidth}\n {...innerProps}\n variant=\"emphasized\"\n {...(isDisabled ? undefined : interactionProps)}\n color={isCritical ? 'critical' : 'neutral'}\n className={clsx(\n 'strato-components-select-control-trigger',\n styles.selectTrigger({\n fullWidth:\n selectProps.triggerWidth === 'full' ||\n selectProps.triggerWidth === '100%',\n showError,\n readOnly,\n }),\n focusClassName,\n consumerClassName,\n )}\n style={consumerStyle}\n as=\"div\"\n {...focusProps}\n {...remainingProps}\n >\n {selectProps.prefix && (\n <Button.Prefix\n data-testid={selectProps.prefix.props['data-testid']}\n className={selectProps.prefix.props.className}\n style={selectProps.prefix.props.style}\n >\n {selectProps.prefix.props.children}\n </Button.Prefix>\n )}\n <Button.Label>\n {hiddenInput}\n {valueContainer}\n </Button.Label>\n <Button.Suffix>\n <div\n className={clsx(\n styles.selectTriggerIconWrapper({\n isOverlayOpen: selectProps.menuIsOpen,\n readOnly,\n }),\n )}\n >\n <ChevronDownSmallIcon />\n </div>\n </Button.Suffix>\n </Button>\n </OverlayStackingProvider>\n <HiddenSelect<OptionValue>\n ref={selectProps.hiddenSelectRef}\n required={selectProps.isRequired}\n selectedValues={selectProps.value}\n name={selectProps.hiddenSelectName}\n disabled={isDisabled || readOnly}\n controlState={selectProps.controlState}\n />\n {hint && (\n <BaseItem\n variant={showError ? 'error' : 'hint'}\n disabled={isDisabled || ariaDisabled}\n >\n {hint}\n </BaseItem>\n )}\n </Flex>\n );\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -23,12 +23,6 @@ const HiddenSelect = forwardRef(
|
|
|
23
23
|
const multiple = Array.isArray(selectedValues);
|
|
24
24
|
const id = useId();
|
|
25
25
|
const ref = useRef(null);
|
|
26
|
-
const { ariaProps, onBlur, onChange, onInvalid } = useFormFieldValidation(
|
|
27
|
-
ref,
|
|
28
|
-
{},
|
|
29
|
-
{},
|
|
30
|
-
id
|
|
31
|
-
);
|
|
32
26
|
const selectedValuesArray = useMemo(() => {
|
|
33
27
|
const extractValue = (val) => {
|
|
34
28
|
return val?.textValue ?? "";
|
|
@@ -45,6 +39,14 @@ const HiddenSelect = forwardRef(
|
|
|
45
39
|
}
|
|
46
40
|
return [];
|
|
47
41
|
}, [multiple, selectedValues]);
|
|
42
|
+
const { ariaProps, onBlur, onChange, onInvalid } = useFormFieldValidation(
|
|
43
|
+
ref,
|
|
44
|
+
// selectedValuesArray already contains only plain strings, so it is safe
|
|
45
|
+
// to join for a dep key — no risk of BigInt or circular-reference errors.
|
|
46
|
+
{ selectedValues: selectedValuesArray.join(",") },
|
|
47
|
+
{},
|
|
48
|
+
id
|
|
49
|
+
);
|
|
48
50
|
const value = useMemo(() => {
|
|
49
51
|
if (multiple) {
|
|
50
52
|
return selectedValuesArray;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/forms/select/components/HiddenSelect.tsx"],
|
|
4
|
-
"sourcesContent": ["import {\n forwardRef,\n type ReactElement,\n type Ref,\n useMemo,\n useRef,\n} from 'react';\nimport { PropsValue, SingleValue } from 'react-select';\n\nimport { VisuallyHidden } from '../../../core/components/visually-hidden/VisuallyHidden.js';\nimport { useId } from '../../../core/hooks/useId.js';\nimport { useMergeRefs } from '../../../core/hooks/useMergeRefs.js';\nimport type { FormControlState } from '../../../core/types/form-control-state.js';\nimport { useFormFieldValidation } from '../../forms-core/hooks/useFormFieldValidation.js';\nimport type { BaseOption } from '../types.js';\n\n//#region Typings\n/** Accepted properties for the HiddenSelect component */\ninterface HiddenSelectProps<OptionValue> {\n ref: Ref<HTMLSelectElement>;\n name?: string;\n selectedValues?: PropsValue<OptionValue>;\n required?: boolean;\n disabled?: boolean;\n ariaDisabled?: boolean;\n controlState?: FormControlState;\n}\n//#endregion\n\n/**\n * HiddenSelect component\n * @internal\n */\nexport const HiddenSelect: <OptionValue>(\n props: HiddenSelectProps<OptionValue>,\n) => /* @__PURE__ */ ReactElement | null = forwardRef(\n /* eslint-disable @typescript-eslint/no-unnecessary-type-constraint */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n <OptionValue extends any>(\n props: HiddenSelectProps<OptionValue>,\n forwardedRef: HiddenSelectProps<OptionValue>['ref'],\n ) => {\n const {\n name,\n selectedValues,\n required,\n disabled,\n ariaDisabled,\n controlState,\n } = props;\n const multiple = Array.isArray(selectedValues);\n\n const id = useId();\n const ref = useRef<HTMLSelectElement | null>(null);\n
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["import {\n forwardRef,\n type ReactElement,\n type Ref,\n useMemo,\n useRef,\n} from 'react';\nimport { PropsValue, SingleValue } from 'react-select';\n\nimport { VisuallyHidden } from '../../../core/components/visually-hidden/VisuallyHidden.js';\nimport { useId } from '../../../core/hooks/useId.js';\nimport { useMergeRefs } from '../../../core/hooks/useMergeRefs.js';\nimport type { FormControlState } from '../../../core/types/form-control-state.js';\nimport { useFormFieldValidation } from '../../forms-core/hooks/useFormFieldValidation.js';\nimport type { BaseOption } from '../types.js';\n\n//#region Typings\n/** Accepted properties for the HiddenSelect component */\ninterface HiddenSelectProps<OptionValue> {\n ref: Ref<HTMLSelectElement>;\n name?: string;\n selectedValues?: PropsValue<OptionValue>;\n required?: boolean;\n disabled?: boolean;\n ariaDisabled?: boolean;\n controlState?: FormControlState;\n}\n//#endregion\n\n/**\n * HiddenSelect component\n * @internal\n */\nexport const HiddenSelect: <OptionValue>(\n props: HiddenSelectProps<OptionValue>,\n) => /* @__PURE__ */ ReactElement | null = forwardRef(\n /* eslint-disable @typescript-eslint/no-unnecessary-type-constraint */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n <OptionValue extends any>(\n props: HiddenSelectProps<OptionValue>,\n forwardedRef: HiddenSelectProps<OptionValue>['ref'],\n ) => {\n const {\n name,\n selectedValues,\n required,\n disabled,\n ariaDisabled,\n controlState,\n } = props;\n const multiple = Array.isArray(selectedValues);\n\n const id = useId();\n const ref = useRef<HTMLSelectElement | null>(null);\n\n const selectedValuesArray = useMemo(() => {\n // Use textValue if it's defined. If not, use label (only if it's a string). Otherwise, use the value property.\n const extractValue = (\n val: SingleValue<BaseOption<OptionValue>>,\n ): string => {\n return val?.textValue ?? '';\n };\n\n if (multiple) {\n return selectedValues?.length > 0\n ? selectedValues.map(extractValue)\n : [];\n }\n\n if (selectedValues) {\n return [\n extractValue(\n selectedValues as unknown as SingleValue<BaseOption<OptionValue>>,\n ),\n ];\n }\n\n return [];\n }, [multiple, selectedValues]);\n\n const { ariaProps, onBlur, onChange, onInvalid } = useFormFieldValidation(\n ref,\n // selectedValuesArray already contains only plain strings, so it is safe\n // to join for a dep key \u2014 no risk of BigInt or circular-reference errors.\n { selectedValues: selectedValuesArray.join(',') },\n {},\n id,\n );\n\n const value = useMemo(() => {\n if (multiple) {\n return selectedValuesArray;\n }\n // use string value or empty string as array values are not allowed for single select\n return selectedValues\n ? `${\n (selectedValues as unknown as SingleValue<BaseOption<OptionValue>>)\n ?.value\n }`\n : '';\n }, [multiple, selectedValues, selectedValuesArray]);\n\n return (\n <VisuallyHidden>\n <select\n ref={useMergeRefs([forwardedRef, ref])}\n name={name}\n multiple={multiple}\n tabIndex={-1}\n required={required}\n disabled={disabled}\n aria-disabled={ariaDisabled}\n aria-hidden\n value={value && value.length !== 0 ? value : undefined}\n id={id}\n onChange={() => undefined}\n {...(controlState\n ? {}\n : { ...ariaProps, onBlur, onChange, onInvalid })}\n >\n {selectedValuesArray.map((val, key) => {\n return <option value={`${val}`} key={`${key}-${val}`} />;\n })}\n </select>\n </VisuallyHidden>\n );\n },\n);\n\n(HiddenSelect as typeof HiddenSelect & { displayName: string }).displayName =\n 'HiddenSelect';\n"],
|
|
5
|
+
"mappings": "AAyHmB;AAzHnB;AAAA,EACE;AAAA,EAGA;AAAA,EACA;AAAA,OACK;AAGP,SAAS,sBAAsB;AAC/B,SAAS,aAAa;AACtB,SAAS,oBAAoB;AAE7B,SAAS,8BAA8B;AAoBhC,MAAM,eAE8B;AAAA;AAAA;AAAA,EAGzC,CACE,OACA,iBACG;AACH,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,IAAI;AACJ,UAAM,WAAW,MAAM,QAAQ,cAAc;AAE7C,UAAM,KAAK,MAAM;AACjB,UAAM,MAAM,OAAiC,IAAI;AAEjD,UAAM,sBAAsB,QAAQ,MAAM;AAExC,YAAM,eAAe,CACnB,QACW;AACX,eAAO,KAAK,aAAa;AAAA,MAC3B;AAEA,UAAI,UAAU;AACZ,eAAO,gBAAgB,SAAS,IAC5B,eAAe,IAAI,YAAY,IAC/B,CAAC;AAAA,MACP;AAEA,UAAI,gBAAgB;AAClB,eAAO;AAAA,UACL;AAAA,YACE;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAEA,aAAO,CAAC;AAAA,IACV,GAAG,CAAC,UAAU,cAAc,CAAC;AAE7B,UAAM,EAAE,WAAW,QAAQ,UAAU,UAAU,IAAI;AAAA,MACjD;AAAA;AAAA;AAAA,MAGA,EAAE,gBAAgB,oBAAoB,KAAK,GAAG,EAAE;AAAA,MAChD,CAAC;AAAA,MACD;AAAA,IACF;AAEA,UAAM,QAAQ,QAAQ,MAAM;AAC1B,UAAI,UAAU;AACZ,eAAO;AAAA,MACT;AAEA,aAAO,iBACH,GACG,gBACG,KACN,KACA;AAAA,IACN,GAAG,CAAC,UAAU,gBAAgB,mBAAmB,CAAC;AAElD,WACE,oBAAC,kBACC;AAAA,MAAC;AAAA;AAAA,QACC,KAAK,aAAa,CAAC,cAAc,GAAG,CAAC;AAAA,QACrC;AAAA,QACA;AAAA,QACA,UAAU;AAAA,QACV;AAAA,QACA;AAAA,QACA,iBAAe;AAAA,QACf,eAAW;AAAA,QACX,OAAO,SAAS,MAAM,WAAW,IAAI,QAAQ;AAAA,QAC7C;AAAA,QACA,UAAU,MAAM;AAAA,QACf,GAAI,eACD,CAAC,IACD,EAAE,GAAG,WAAW,QAAQ,UAAU,UAAU;AAAA,QAE/C,8BAAoB,IAAI,CAAC,KAAK,QAAQ;AACrC,iBAAO,oBAAC,YAAO,OAAO,GAAG,GAAG,MAAS,GAAG,GAAG,IAAI,GAAG,EAAI;AAAA,QACxD,CAAC;AAAA;AAAA,IACH,GACF;AAAA,EAEJ;AACF;AAEC,aAA+D,cAC9D;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -55,12 +55,17 @@ function MenuList(props) {
|
|
|
55
55
|
() => ({
|
|
56
56
|
scrollToBottom: () => {
|
|
57
57
|
optionVirtualizer.scrollToIndex(childrenArray.length);
|
|
58
|
+
},
|
|
59
|
+
scrollToIndex: (index) => {
|
|
60
|
+
optionVirtualizer.scrollToIndex(index);
|
|
58
61
|
}
|
|
59
62
|
})
|
|
60
63
|
);
|
|
61
64
|
useEffect(() => {
|
|
62
65
|
requestAnimationFrame(() => {
|
|
63
|
-
optionVirtualizer.
|
|
66
|
+
optionVirtualizer.elementsCache.forEach((element) => {
|
|
67
|
+
optionVirtualizer.measureElement(element);
|
|
68
|
+
});
|
|
64
69
|
});
|
|
65
70
|
}, [notifyParentRefChange, childrenArray.length]);
|
|
66
71
|
return /* @__PURE__ */ jsx(
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/forms/select/components/MenuList.tsx"],
|
|
4
|
-
"sourcesContent": ["import { useVirtualizer } from '@tanstack/react-virtual';\nimport clsx from 'clsx';\nimport {\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n type ReactElement,\n Children,\n} from 'react';\nimport type {\n GroupBase,\n MenuListProps as ReactSelectMenuListProps,\n} from 'react-select';\n\nimport { NoOptionsMessage } from './NoOptionsMessage.js';\nimport type { OptionProps } from './Option.js';\nimport {\n applyStoredSelectionSortingOptions,\n sortSelectedOptions,\n} from './sort-selected-options-first.js';\nimport { useMergeRefs } from '../../../core/hooks/useMergeRefs.js';\nimport * as styles from '../styles/Select.sty.js';\nimport type { BaseGroup, BaseOption } from '../types.js';\n\n/**\n * @internal\n */\nexport interface MenuListFunctionRefObject {\n /** Function to scroll to the last option. */\n scrollToBottom: () => void;\n}\n\ntype MenuListProps<\n OptionValue,\n isMulti extends boolean,\n Group extends GroupBase<OptionValue>,\n> = ReactSelectMenuListProps<OptionValue, isMulti, Group>;\n\nexport function MenuList<\n OptionValue,\n isMulti extends boolean,\n Group extends BaseGroup<OptionValue>,\n>(props: Readonly<MenuListProps<BaseOption<OptionValue>, isMulti, Group>>) {\n const { children, selectProps, innerProps } = props;\n\n const parentRef = useRef<HTMLDivElement | null>(null);\n // Get a setter on the parentRef to get notified when the element re-renders.\n const [notifyParentRefChange, setNotifyParentRefChange] =\n useState<HTMLDivElement | null>();\n\n const initialRender = useRef(true);\n const sortingMap = useRef(new WeakMap());\n\n let childrenArray = Children.toArray(children) as Array<\n ReactElement<OptionProps<BaseOption<OptionValue>, isMulti, Group>>\n >;\n\n const currentChildrenLength = useRef(childrenArray.length);\n\n // During the initial rendering, the sorting is created and positions saved in a WeakMap.\n // If only the NoOptionsMessage/empty state is shown we don't need any sorting\n if (\n selectProps.showSelectedOptionsFirst &&\n !(childrenArray.length === 1 && childrenArray[0].type === NoOptionsMessage)\n ) {\n if (initialRender.current === true) {\n [childrenArray, sortingMap.current] = sortSelectedOptions(childrenArray);\n } else if (currentChildrenLength.current !== childrenArray.length) {\n currentChildrenLength.current = childrenArray.length;\n [childrenArray, sortingMap.current] = sortSelectedOptions(childrenArray);\n }\n // Otherwise the data is sorted by the initial sorting parameters.\n else {\n const [newChildrenArray, newSortingMap] =\n applyStoredSelectionSortingOptions(childrenArray, sortingMap.current);\n childrenArray = newChildrenArray;\n if (newSortingMap) {\n sortingMap.current = newSortingMap;\n }\n }\n }\n\n initialRender.current = false;\n\n const optionVirtualizer = useVirtualizer({\n count: childrenArray.length,\n getScrollElement: () => parentRef.current,\n overscan: 5,\n estimateSize: () => 32,\n });\n\n const menulistref = useMergeRefs([\n props.innerRef,\n parentRef,\n setNotifyParentRefChange,\n selectProps.contentRef,\n ]);\n\n useImperativeHandle(\n selectProps.menuListFunctionRef,\n (): MenuListFunctionRefObject => ({\n scrollToBottom: () => {\n optionVirtualizer.scrollToIndex(childrenArray.length);\n },\n }),\n );\n\n // When the parentElement re-renders, we will need to remeasure the virtualizer in order to\n // keep the correct height.\n useEffect(() => {\n requestAnimationFrame(() => {\n optionVirtualizer.
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["import { useVirtualizer } from '@tanstack/react-virtual';\nimport clsx from 'clsx';\nimport {\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n type ReactElement,\n Children,\n} from 'react';\nimport type {\n GroupBase,\n MenuListProps as ReactSelectMenuListProps,\n} from 'react-select';\n\nimport { NoOptionsMessage } from './NoOptionsMessage.js';\nimport type { OptionProps } from './Option.js';\nimport {\n applyStoredSelectionSortingOptions,\n sortSelectedOptions,\n} from './sort-selected-options-first.js';\nimport { useMergeRefs } from '../../../core/hooks/useMergeRefs.js';\nimport * as styles from '../styles/Select.sty.js';\nimport type { BaseGroup, BaseOption } from '../types.js';\n\n/**\n * @internal\n */\nexport interface MenuListFunctionRefObject {\n /** Function to scroll to the last option. */\n scrollToBottom: () => void;\n /** Function to scroll to a specific virtualizer index. */\n scrollToIndex: (index: number) => void;\n}\n\ntype MenuListProps<\n OptionValue,\n isMulti extends boolean,\n Group extends GroupBase<OptionValue>,\n> = ReactSelectMenuListProps<OptionValue, isMulti, Group>;\n\nexport function MenuList<\n OptionValue,\n isMulti extends boolean,\n Group extends BaseGroup<OptionValue>,\n>(props: Readonly<MenuListProps<BaseOption<OptionValue>, isMulti, Group>>) {\n const { children, selectProps, innerProps } = props;\n\n const parentRef = useRef<HTMLDivElement | null>(null);\n // Get a setter on the parentRef to get notified when the element re-renders.\n const [notifyParentRefChange, setNotifyParentRefChange] =\n useState<HTMLDivElement | null>();\n\n const initialRender = useRef(true);\n const sortingMap = useRef(new WeakMap());\n\n let childrenArray = Children.toArray(children) as Array<\n ReactElement<OptionProps<BaseOption<OptionValue>, isMulti, Group>>\n >;\n\n const currentChildrenLength = useRef(childrenArray.length);\n\n // During the initial rendering, the sorting is created and positions saved in a WeakMap.\n // If only the NoOptionsMessage/empty state is shown we don't need any sorting\n if (\n selectProps.showSelectedOptionsFirst &&\n !(childrenArray.length === 1 && childrenArray[0].type === NoOptionsMessage)\n ) {\n if (initialRender.current === true) {\n [childrenArray, sortingMap.current] = sortSelectedOptions(childrenArray);\n } else if (currentChildrenLength.current !== childrenArray.length) {\n currentChildrenLength.current = childrenArray.length;\n [childrenArray, sortingMap.current] = sortSelectedOptions(childrenArray);\n }\n // Otherwise the data is sorted by the initial sorting parameters.\n else {\n const [newChildrenArray, newSortingMap] =\n applyStoredSelectionSortingOptions(childrenArray, sortingMap.current);\n childrenArray = newChildrenArray;\n if (newSortingMap) {\n sortingMap.current = newSortingMap;\n }\n }\n }\n\n initialRender.current = false;\n\n const optionVirtualizer = useVirtualizer({\n count: childrenArray.length,\n getScrollElement: () => parentRef.current,\n overscan: 5,\n estimateSize: () => 32,\n });\n\n const menulistref = useMergeRefs([\n props.innerRef,\n parentRef,\n setNotifyParentRefChange,\n selectProps.contentRef,\n ]);\n\n useImperativeHandle(\n selectProps.menuListFunctionRef,\n (): MenuListFunctionRefObject => ({\n scrollToBottom: () => {\n optionVirtualizer.scrollToIndex(childrenArray.length);\n },\n scrollToIndex: (index: number) => {\n optionVirtualizer.scrollToIndex(index);\n },\n }),\n );\n\n // When the parentElement re-renders, we will need to remeasure the virtualizer in order to\n // keep the correct height.\n useEffect(() => {\n requestAnimationFrame(() => {\n optionVirtualizer.elementsCache.forEach((element) => {\n optionVirtualizer.measureElement(element);\n });\n });\n // Deliberately leave optionVirtualizer out of the update deps to prevent a maximum update depth exceeded issue.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [notifyParentRefChange, childrenArray.length]);\n\n return (\n <div\n {...innerProps}\n ref={menulistref}\n className={clsx(styles.selectMenuListWrapper, 'strato-select-menulist')}\n style={{\n width:\n optionVirtualizer.scrollOffset !== null &&\n optionVirtualizer.scrollOffset > 0 &&\n selectProps.contentWidth === 'max-content'\n ? optionVirtualizer.scrollRect?.width\n : undefined,\n }}\n >\n {/* role=\"presentation\" on a div is intentional \u2014 neutralizes the virtualization wrapper so screen readers count options correctly */}\n <div\n role=\"presentation\"\n style={{\n height: optionVirtualizer.getTotalSize(),\n display: 'grid',\n gridTemplateRows: optionVirtualizer.measurementsCache\n .map((el) => `${el.size}px`)\n .join(' '),\n }}\n key={`wrapper-${selectProps.options.length}`}\n className={styles.selectVirtualizationWrapper}\n >\n {optionVirtualizer.getVirtualItems().map((virtualRow) => {\n const child = childrenArray?.[virtualRow.index];\n return (\n <div\n key={virtualRow.key}\n className=\"strato-select-option\"\n // data-index is required for the virtualizer to map the measure\n // element correctly to the measured index.\n data-index={virtualRow.index}\n style={{\n gridRow: virtualRow.index + 1,\n minWidth: 0,\n height: 'fit-content',\n }}\n ref={(el) => {\n optionVirtualizer.measureElement(el);\n }}\n >\n {child}\n </div>\n );\n })}\n </div>\n </div>\n );\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -3,7 +3,9 @@ import clsx from "clsx";
|
|
|
3
3
|
import { CheckmarkSmallIcon } from "@dynatrace/strato-icons";
|
|
4
4
|
import { TextEllipsisAroundChildren } from "../../../core/components/TextEllipsisAroundChildren.js";
|
|
5
5
|
import { useBehavioralTrackingProps } from "../../../core/hooks/useBehavioralTrackingProps.js";
|
|
6
|
+
import { useModality } from "../../../core/hooks/useModality.js";
|
|
6
7
|
import { getVirtualFocusStyles } from "../../../core/utils/getVirtualFocusStyles.js";
|
|
8
|
+
import { modalityStore } from "../../../core/utils/modality.js";
|
|
7
9
|
import { Flex } from "../../../layouts/flex/Flex.js";
|
|
8
10
|
import { useSelectMenuContext } from "../hooks/use-select-menu-context.js";
|
|
9
11
|
import { SelectActions } from "../state/select-menu-state-reducer.js";
|
|
@@ -12,7 +14,11 @@ function Option(props) {
|
|
|
12
14
|
const {
|
|
13
15
|
children,
|
|
14
16
|
isSelected,
|
|
15
|
-
innerProps
|
|
17
|
+
innerProps: {
|
|
18
|
+
onMouseMove: _onMouseMove,
|
|
19
|
+
onMouseOver: _onMouseOver,
|
|
20
|
+
...innerProps
|
|
21
|
+
},
|
|
16
22
|
isFocused,
|
|
17
23
|
isDisabled,
|
|
18
24
|
isMulti,
|
|
@@ -33,8 +39,9 @@ function Option(props) {
|
|
|
33
39
|
const [suffixTrackingProps] = useBehavioralTrackingProps(
|
|
34
40
|
suffix.componentProps ?? {}
|
|
35
41
|
);
|
|
42
|
+
const modality = useModality();
|
|
36
43
|
const { dispatch } = useSelectMenuContext();
|
|
37
|
-
const isVirtuallyFocused = selectProps.focusOnOption && isFocused;
|
|
44
|
+
const isVirtuallyFocused = modality === "keyboard" && selectProps.focusOnOption && isFocused;
|
|
38
45
|
const { className: virtualFocusClassName } = getVirtualFocusStyles(
|
|
39
46
|
isVirtuallyFocused,
|
|
40
47
|
isSelected && !isMulti ? "primary" : "neutral"
|
|
@@ -45,13 +52,15 @@ function Option(props) {
|
|
|
45
52
|
"data-testid": dataTestId,
|
|
46
53
|
role: "option",
|
|
47
54
|
...innerProps,
|
|
55
|
+
onMouseMove: () => modalityStore.setState("pointer"),
|
|
48
56
|
className: clsx(
|
|
49
57
|
"strato-select-option",
|
|
50
58
|
isMulti === true ? styles.selectOptionMulti : styles.selectOptionSingle,
|
|
51
59
|
virtualFocusClassName,
|
|
52
60
|
{
|
|
53
61
|
"strato-select-option--selected": isSelected,
|
|
54
|
-
"strato-select-option--disabled": isDisabled
|
|
62
|
+
"strato-select-option--disabled": isDisabled,
|
|
63
|
+
"strato-select-option--focus": isVirtuallyFocused
|
|
55
64
|
},
|
|
56
65
|
consumerClassName
|
|
57
66
|
),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/forms/select/components/Option.tsx"],
|
|
4
|
-
"sourcesContent": ["import clsx from 'clsx';\nimport { type MouseEvent as ReactMouseEvent } from 'react';\nimport type {\n OptionProps as ReactSelectOptionProps,\n GroupBase,\n} from 'react-select';\n\nimport { CheckmarkSmallIcon } from '@dynatrace/strato-icons';\n\nimport { TextEllipsisAroundChildren } from '../../../core/components/TextEllipsisAroundChildren.js';\nimport { useBehavioralTrackingProps } from '../../../core/hooks/useBehavioralTrackingProps.js';\nimport { getVirtualFocusStyles } from '../../../core/utils/getVirtualFocusStyles.js';\nimport { Flex } from '../../../layouts/flex/Flex.js';\nimport { useSelectMenuContext } from '../hooks/use-select-menu-context.js';\nimport { SelectActions } from '../state/select-menu-state-reducer.js';\nimport * as styles from '../styles/Select.sty.js';\nimport type { BaseOption, BaseGroup } from '../types.js';\n\nexport type OptionProps<\n OptionValue,\n isMulti extends boolean,\n Group extends GroupBase<OptionValue>,\n> = ReactSelectOptionProps<OptionValue, isMulti, Group>;\n\nexport function Option<\n OptionValue,\n isMulti extends boolean,\n Group extends BaseGroup<OptionValue>,\n>(props: Readonly<OptionProps<BaseOption<OptionValue>, isMulti, Group>>) {\n const {\n children,\n isSelected,\n innerProps,\n isFocused,\n isDisabled,\n isMulti,\n selectProps,\n } = props;\n const {\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n 'aria-label': ariaLabel,\n prefix,\n suffix,\n } = props.data;\n\n const [behavioralTrackingProps] = useBehavioralTrackingProps(props.data);\n const [prefixTrackingProps] = useBehavioralTrackingProps(\n prefix.componentProps ?? {},\n );\n const [suffixTrackingProps] = useBehavioralTrackingProps(\n suffix.componentProps ?? {},\n );\n
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["import clsx from 'clsx';\nimport { type MouseEvent as ReactMouseEvent } from 'react';\nimport type {\n OptionProps as ReactSelectOptionProps,\n GroupBase,\n} from 'react-select';\n\nimport { CheckmarkSmallIcon } from '@dynatrace/strato-icons';\n\nimport { TextEllipsisAroundChildren } from '../../../core/components/TextEllipsisAroundChildren.js';\nimport { useBehavioralTrackingProps } from '../../../core/hooks/useBehavioralTrackingProps.js';\nimport { useModality } from '../../../core/hooks/useModality.js';\nimport { getVirtualFocusStyles } from '../../../core/utils/getVirtualFocusStyles.js';\nimport { modalityStore } from '../../../core/utils/modality.js';\nimport { Flex } from '../../../layouts/flex/Flex.js';\nimport { useSelectMenuContext } from '../hooks/use-select-menu-context.js';\nimport { SelectActions } from '../state/select-menu-state-reducer.js';\nimport * as styles from '../styles/Select.sty.js';\nimport type { BaseOption, BaseGroup } from '../types.js';\n\nexport type OptionProps<\n OptionValue,\n isMulti extends boolean,\n Group extends GroupBase<OptionValue>,\n> = ReactSelectOptionProps<OptionValue, isMulti, Group>;\n\nexport function Option<\n OptionValue,\n isMulti extends boolean,\n Group extends BaseGroup<OptionValue>,\n>(props: Readonly<OptionProps<BaseOption<OptionValue>, isMulti, Group>>) {\n const {\n children,\n isSelected,\n innerProps: {\n onMouseMove: _onMouseMove,\n onMouseOver: _onMouseOver,\n ...innerProps\n },\n isFocused,\n isDisabled,\n isMulti,\n selectProps,\n } = props;\n const {\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n 'aria-label': ariaLabel,\n prefix,\n suffix,\n } = props.data;\n\n const [behavioralTrackingProps] = useBehavioralTrackingProps(props.data);\n const [prefixTrackingProps] = useBehavioralTrackingProps(\n prefix.componentProps ?? {},\n );\n const [suffixTrackingProps] = useBehavioralTrackingProps(\n suffix.componentProps ?? {},\n );\n const modality = useModality();\n const { dispatch } = useSelectMenuContext();\n\n const isVirtuallyFocused =\n modality === 'keyboard' && selectProps.focusOnOption && isFocused;\n const { className: virtualFocusClassName } = getVirtualFocusStyles(\n isVirtuallyFocused,\n isSelected && !isMulti ? 'primary' : 'neutral',\n );\n\n return (\n <Flex\n data-testid={dataTestId}\n role=\"option\"\n {...innerProps}\n onMouseMove={() => modalityStore.setState('pointer')}\n className={clsx(\n 'strato-select-option',\n isMulti === true ? styles.selectOptionMulti : styles.selectOptionSingle,\n virtualFocusClassName,\n {\n 'strato-select-option--selected': isSelected,\n 'strato-select-option--disabled': isDisabled,\n 'strato-select-option--focus': isVirtuallyFocused,\n },\n consumerClassName,\n )}\n style={consumerStyle}\n onClick={(event: ReactMouseEvent<HTMLDivElement>) => {\n if (!isDisabled) {\n // Only if the option is in single select mode, we can close the menu.\n if (isMulti === false) {\n dispatch({\n type: SelectActions.CLOSE,\n });\n }\n innerProps.onClick?.(event);\n }\n }}\n aria-selected={isSelected}\n aria-label={ariaLabel}\n {...behavioralTrackingProps}\n >\n {isMulti === true ? (\n <div\n className={clsx(\n styles.selectOptionMultiIndicator({\n selected: isSelected,\n }),\n )}\n >\n {isSelected === true ? (\n <CheckmarkSmallIcon\n className={styles.selectOptionMultiIndicatorIcon}\n />\n ) : null}\n </div>\n ) : null}\n {/* Check if any of the options have a prefix defined. If they do, all other items will need to respect the space */}\n {props.selectProps.optionsHavePrefix ? (\n <span\n className={clsx(\n styles.selectOptionPrefix,\n prefix.componentProps?.className,\n )}\n style={prefix.componentProps?.style}\n data-testid={prefix.componentProps?.['data-testid']}\n {...prefixTrackingProps}\n >\n {prefix.component}\n </span>\n ) : null}\n <TextEllipsisAroundChildren>{children}</TextEllipsisAroundChildren>\n {/* For the Suffix icon, we will not need to deal with the other options. Overlaps are fine here. */}\n {suffix.component ? (\n <span\n className={clsx(\n styles.selectOptionSuffix,\n suffix.componentProps?.className,\n )}\n style={suffix.componentProps?.style}\n data-testid={suffix.componentProps?.['data-testid']}\n {...suffixTrackingProps}\n >\n {suffix.component}\n </span>\n ) : null}\n </Flex>\n );\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|