@mui/x-charts 7.14.0 → 7.15.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/BarChart/BarChart.js +180 -183
- package/BarChart/BarClipPath.js +17 -25
- package/BarChart/BarElement.js +33 -43
- package/BarChart/BarLabel/BarLabel.d.ts +1 -1
- package/BarChart/BarLabel/BarLabel.js +25 -34
- package/BarChart/BarLabel/BarLabel.types.js +1 -5
- package/BarChart/BarLabel/BarLabelItem.js +31 -39
- package/BarChart/BarLabel/BarLabelPlot.js +13 -21
- package/BarChart/BarLabel/barLabelClasses.d.ts +1 -1
- package/BarChart/BarLabel/barLabelClasses.js +9 -19
- package/BarChart/BarLabel/getBarLabel.js +2 -9
- package/BarChart/BarLabel/index.js +2 -25
- package/BarChart/BarPlot.js +36 -44
- package/BarChart/checkScaleErrors.js +6 -12
- package/BarChart/extremums.js +3 -11
- package/BarChart/formatter.js +9 -16
- package/BarChart/getColor.js +1 -7
- package/BarChart/getRadius.js +2 -9
- package/BarChart/index.js +4 -49
- package/BarChart/legend.js +3 -9
- package/BarChart/package.json +2 -2
- package/BarChart/plugin.js +8 -15
- package/BarChart/types.js +1 -5
- package/BarChart/useBarChartProps.js +17 -25
- package/CHANGELOG.md +69 -0
- package/ChartContainer/ChartContainer.js +164 -172
- package/ChartContainer/index.js +1 -16
- package/ChartContainer/package.json +2 -2
- package/ChartContainer/useChartContainerProps.d.ts +8 -8
- package/ChartContainer/useChartContainerProps.js +13 -23
- package/ChartContainer/useDefaultizeAxis.d.ts +4 -4
- package/ChartContainer/useDefaultizeAxis.js +8 -18
- package/ChartsAxis/ChartsAxis.js +24 -32
- package/ChartsAxis/axisClasses.js +4 -11
- package/ChartsAxis/index.js +2 -27
- package/ChartsAxis/package.json +2 -2
- package/ChartsAxisHighlight/ChartsAxisHighlight.js +34 -44
- package/ChartsAxisHighlight/index.js +1 -16
- package/ChartsAxisHighlight/package.json +2 -2
- package/ChartsClipPath/ChartsClipPath.js +17 -25
- package/ChartsClipPath/index.js +1 -16
- package/ChartsClipPath/package.json +2 -2
- package/ChartsGrid/ChartsGrid.d.ts +1 -1
- package/ChartsGrid/ChartsGrid.js +34 -42
- package/ChartsGrid/chartsGridClasses.js +5 -13
- package/ChartsGrid/index.js +2 -27
- package/ChartsGrid/package.json +2 -2
- package/ChartsLegend/ChartsLegend.js +33 -41
- package/ChartsLegend/ContinuousColorLegend.js +66 -73
- package/ChartsLegend/DefaultChartsLegend.js +38 -46
- package/ChartsLegend/LegendPerItem.js +30 -39
- package/ChartsLegend/PiecewiseColorLegend.js +36 -44
- package/ChartsLegend/chartsLegend.types.js +1 -5
- package/ChartsLegend/chartsLegendClasses.js +4 -11
- package/ChartsLegend/index.js +6 -71
- package/ChartsLegend/legend.types.js +1 -5
- package/ChartsLegend/legendItemsPlacement.js +6 -13
- package/ChartsLegend/package.json +2 -2
- package/ChartsLegend/useAxis.js +6 -14
- package/ChartsLegend/utils.js +9 -16
- package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +15 -23
- package/ChartsOnAxisClickHandler/index.js +1 -16
- package/ChartsOnAxisClickHandler/package.json +2 -2
- package/ChartsOverlay/ChartsLoadingOverlay.js +12 -21
- package/ChartsOverlay/ChartsNoDataOverlay.js +12 -21
- package/ChartsOverlay/ChartsOverlay.js +13 -23
- package/ChartsOverlay/index.js +3 -26
- package/ChartsOverlay/package.json +2 -2
- package/ChartsReferenceLine/ChartsReferenceLine.js +21 -29
- package/ChartsReferenceLine/ChartsXReferenceLine.js +22 -31
- package/ChartsReferenceLine/ChartsYReferenceLine.js +22 -31
- package/ChartsReferenceLine/chartsReferenceLineClasses.js +5 -13
- package/ChartsReferenceLine/common.js +6 -13
- package/ChartsReferenceLine/index.js +2 -27
- package/ChartsReferenceLine/package.json +2 -2
- package/{modern → ChartsSurface}/ChartsSurface.js +7 -3
- package/ChartsSurface/index.d.ts +1 -0
- package/ChartsSurface/index.js +1 -0
- package/ChartsSurface/package.json +6 -0
- package/ChartsText/ChartsText.js +18 -26
- package/ChartsText/index.js +1 -12
- package/ChartsText/package.json +2 -2
- package/ChartsTooltip/ChartsAxisTooltipContent.js +22 -30
- package/ChartsTooltip/ChartsItemTooltipContent.js +18 -26
- package/ChartsTooltip/ChartsTooltip.js +34 -42
- package/ChartsTooltip/ChartsTooltipTable.js +11 -16
- package/ChartsTooltip/DefaultChartsAxisTooltipContent.js +44 -52
- package/ChartsTooltip/DefaultChartsItemTooltipContent.js +32 -40
- package/ChartsTooltip/chartsTooltipClasses.js +4 -11
- package/ChartsTooltip/index.js +7 -82
- package/ChartsTooltip/package.json +2 -2
- package/ChartsTooltip/utils.js +9 -21
- package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +29 -37
- package/ChartsVoronoiHandler/index.js +1 -16
- package/ChartsVoronoiHandler/package.json +2 -2
- package/ChartsXAxis/ChartsXAxis.js +76 -84
- package/ChartsXAxis/index.js +1 -16
- package/ChartsXAxis/package.json +2 -2
- package/ChartsYAxis/ChartsYAxis.js +70 -77
- package/ChartsYAxis/index.js +1 -16
- package/ChartsYAxis/package.json +2 -2
- package/Gauge/Gauge.js +52 -60
- package/Gauge/GaugeContainer.js +51 -59
- package/Gauge/GaugeProvider.js +17 -28
- package/Gauge/GaugeReferenceArc.js +11 -20
- package/Gauge/GaugeValueArc.js +11 -20
- package/Gauge/GaugeValueText.js +18 -26
- package/Gauge/gaugeClasses.js +6 -14
- package/Gauge/index.js +7 -87
- package/Gauge/package.json +2 -2
- package/Gauge/utils.js +2 -9
- package/LineChart/AnimatedArea.js +35 -44
- package/LineChart/AnimatedLine.js +36 -45
- package/LineChart/AreaElement.js +33 -43
- package/LineChart/AreaPlot.js +30 -38
- package/LineChart/LineChart.js +185 -188
- package/LineChart/LineElement.js +33 -43
- package/LineChart/LineHighlightElement.js +20 -30
- package/LineChart/LineHighlightPlot.js +28 -36
- package/LineChart/LinePlot.js +30 -38
- package/LineChart/MarkElement.js +40 -48
- package/LineChart/MarkPlot.js +33 -41
- package/LineChart/extremums.js +3 -11
- package/LineChart/formatter.js +9 -16
- package/LineChart/getColor.js +1 -7
- package/LineChart/index.js +11 -126
- package/LineChart/legend.js +3 -9
- package/LineChart/package.json +2 -2
- package/LineChart/plugin.js +8 -15
- package/LineChart/useLineChartProps.js +14 -22
- package/PieChart/PieArc.js +34 -44
- package/PieChart/PieArcLabel.js +30 -40
- package/PieChart/PieArcLabelPlot.js +59 -67
- package/PieChart/PieArcPlot.js +56 -64
- package/PieChart/PieChart.js +180 -183
- package/PieChart/PiePlot.js +29 -37
- package/PieChart/dataTransform/transition.js +2 -8
- package/PieChart/dataTransform/useTransformData.js +7 -16
- package/PieChart/formatter.js +10 -17
- package/PieChart/getColor.js +1 -7
- package/PieChart/getPieCoordinates.js +4 -10
- package/PieChart/index.js +7 -82
- package/PieChart/legend.js +3 -9
- package/PieChart/package.json +2 -2
- package/PieChart/plugin.js +5 -12
- package/ResponsiveChartContainer/ResizableContainer.js +2 -8
- package/ResponsiveChartContainer/ResponsiveChartContainer.js +151 -159
- package/ResponsiveChartContainer/index.js +1 -16
- package/ResponsiveChartContainer/package.json +2 -2
- package/ResponsiveChartContainer/useChartContainerDimensions.js +7 -17
- package/ResponsiveChartContainer/useResponsiveChartContainerProps.js +8 -16
- package/ScatterChart/Scatter.js +26 -34
- package/ScatterChart/ScatterChart.js +198 -201
- package/ScatterChart/ScatterPlot.js +21 -29
- package/ScatterChart/extremums.js +3 -11
- package/ScatterChart/formatter.js +3 -9
- package/ScatterChart/getColor.js +1 -7
- package/ScatterChart/index.js +3 -38
- package/ScatterChart/legend.js +3 -9
- package/ScatterChart/package.json +2 -2
- package/ScatterChart/plugin.js +8 -15
- package/ScatterChart/useScatterChartProps.js +10 -18
- package/SparkLineChart/SparkLineChart.js +163 -171
- package/SparkLineChart/index.js +1 -16
- package/SparkLineChart/package.json +2 -2
- package/colorPalettes/colorPalettes.js +9 -18
- package/colorPalettes/index.js +1 -16
- package/colorPalettes/package.json +2 -2
- package/constants/package.json +6 -0
- package/context/CartesianProvider/Cartesian.types.js +1 -5
- package/context/CartesianProvider/CartesianContext.js +2 -10
- package/context/CartesianProvider/CartesianProvider.js +17 -24
- package/context/CartesianProvider/computeValue.js +28 -35
- package/context/CartesianProvider/defaultizeAxis.d.ts +4 -4
- package/context/CartesianProvider/defaultizeAxis.js +6 -14
- package/context/CartesianProvider/getAxisExtremum.js +2 -9
- package/context/CartesianProvider/index.js +8 -60
- package/context/CartesianProvider/useCartesianContext.js +5 -14
- package/context/CartesianProvider/zoom.js +2 -9
- package/context/DrawingProvider.js +13 -24
- package/context/HighlightedProvider/HighlightedContext.js +2 -9
- package/context/HighlightedProvider/HighlightedProvider.js +24 -32
- package/context/HighlightedProvider/createIsFaded.js +2 -9
- package/context/HighlightedProvider/createIsHighlighted.js +2 -9
- package/context/HighlightedProvider/index.js +4 -49
- package/context/HighlightedProvider/useHighlighted.js +4 -11
- package/context/HighlightedProvider/useItemHighlighted.js +3 -9
- package/context/InteractionProvider.d.ts +2 -2
- package/context/InteractionProvider.js +13 -22
- package/context/PluginProvider/ColorProcessor.types.js +1 -5
- package/context/PluginProvider/ExtremumGetter.types.js +1 -5
- package/context/PluginProvider/Plugin.types.js +1 -5
- package/context/PluginProvider/PluginContext.js +2 -10
- package/context/PluginProvider/PluginProvider.js +8 -15
- package/context/PluginProvider/SeriesFormatter.types.js +1 -5
- package/context/PluginProvider/index.js +10 -115
- package/context/PluginProvider/mergePlugins.d.ts +6 -6
- package/context/PluginProvider/mergePlugins.js +6 -13
- package/context/PluginProvider/useColorProcessor.js +4 -12
- package/context/PluginProvider/useSeriesFormatter.js +4 -12
- package/context/PluginProvider/useXExtremumGetter.js +4 -12
- package/context/PluginProvider/useYExtremumGetter.js +4 -12
- package/context/SeriesProvider/Series.types.js +1 -5
- package/context/SeriesProvider/SeriesContext.js +2 -10
- package/context/SeriesProvider/SeriesProvider.js +14 -21
- package/context/SeriesProvider/index.js +7 -48
- package/context/SeriesProvider/processSeries.js +6 -14
- package/context/ZAxisContextProvider.js +36 -45
- package/context/context.types.js +1 -5
- package/context/index.js +2 -27
- package/context/package.json +2 -2
- package/hooks/index.js +7 -115
- package/hooks/package.json +2 -2
- package/hooks/useAxis.js +5 -12
- package/hooks/useAxisEvents.js +17 -25
- package/hooks/useChartDimensions.js +5 -14
- package/hooks/useChartId.js +4 -12
- package/hooks/useColorScale.js +9 -19
- package/hooks/useDrawingArea.js +4 -12
- package/hooks/useInteractionItemProps.js +7 -16
- package/hooks/useMounted.js +4 -13
- package/hooks/useReducedMotion.js +6 -12
- package/hooks/useScale.js +8 -15
- package/hooks/useSeries.js +8 -19
- package/hooks/useSvgRef.js +4 -12
- package/hooks/useTicks.js +7 -16
- package/index.js +27 -292
- package/internals/SlotComponentPropsFromProps.js +1 -5
- package/internals/cleanId.js +1 -7
- package/internals/colorScale.js +8 -16
- package/internals/components/AxisSharedComponents.js +8 -15
- package/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +17 -27
- package/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +7 -15
- package/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +7 -15
- package/internals/components/ChartsAxesGradients/index.js +1 -16
- package/internals/configInit.js +1 -7
- package/internals/defaultizeColor.d.ts +16 -16
- package/internals/defaultizeColor.js +5 -12
- package/internals/defaultizeValueFormatter.js +3 -10
- package/internals/domUtils.js +6 -16
- package/internals/geometry.js +1 -7
- package/internals/getCurve.js +11 -17
- package/internals/getLabel.js +1 -7
- package/internals/getPercentageValue.js +1 -7
- package/internals/getSVGPoint.js +1 -7
- package/internals/getScale.js +8 -14
- package/internals/getSymbol.js +1 -7
- package/internals/getWordsByLines.js +5 -12
- package/internals/index.d.ts +1 -0
- package/internals/index.js +40 -322
- package/internals/isBandScale.js +1 -7
- package/internals/isCartesian.js +4 -11
- package/internals/isDefined.js +1 -7
- package/internals/isInfinity.js +1 -7
- package/internals/notNull.js +1 -7
- package/internals/package.json +2 -2
- package/internals/stackSeries.js +16 -23
- package/internals/ts-generic.js +1 -5
- package/internals/useAnimatedPath.d.ts +1 -1
- package/internals/useAnimatedPath.js +21 -26
- package/internals/warning.js +2 -9
- package/models/axis.js +2 -9
- package/models/colorMapping.js +1 -5
- package/models/helpers.js +1 -5
- package/models/index.js +4 -38
- package/models/layout.js +1 -5
- package/models/package.json +2 -2
- package/models/seriesType/bar.js +1 -5
- package/models/seriesType/common.js +1 -5
- package/models/seriesType/config.js +1 -5
- package/models/seriesType/index.js +6 -61
- package/models/seriesType/line.js +1 -5
- package/models/seriesType/pie.js +1 -5
- package/models/seriesType/scatter.js +1 -5
- package/models/stacking.js +1 -5
- package/models/z-axis.js +1 -5
- package/modern/BarChart/BarChart.js +6 -1
- package/modern/BarChart/BarLabel/BarLabel.js +4 -4
- package/modern/ChartsGrid/ChartsGrid.js +6 -6
- package/modern/ChartsLegend/ContinuousColorLegend.js +3 -2
- package/modern/ChartsLegend/LegendPerItem.js +5 -4
- package/{esm → modern/ChartsSurface}/ChartsSurface.js +7 -3
- package/modern/ChartsSurface/index.js +1 -0
- package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +1 -1
- package/modern/ChartsYAxis/ChartsYAxis.js +3 -2
- package/modern/LineChart/LineChart.js +6 -1
- package/modern/LineChart/MarkElement.js +4 -2
- package/modern/PieChart/PieChart.js +10 -5
- package/modern/ScatterChart/ScatterChart.js +6 -1
- package/modern/hooks/useAxisEvents.js +2 -1
- package/modern/index.js +1 -1
- package/modern/internals/index.js +1 -0
- package/modern/internals/useAnimatedPath.js +17 -13
- package/node/BarChart/BarChart.js +356 -0
- package/node/BarChart/BarClipPath.js +50 -0
- package/node/BarChart/BarElement.js +119 -0
- package/node/BarChart/BarLabel/BarLabel.js +60 -0
- package/node/BarChart/BarLabel/BarLabel.types.js +5 -0
- package/node/BarChart/BarLabel/BarLabelItem.js +127 -0
- package/node/BarChart/BarLabel/BarLabelPlot.js +83 -0
- package/node/BarChart/BarLabel/barLabelClasses.js +29 -0
- package/{esm → node}/BarChart/BarLabel/getBarLabel.js +9 -2
- package/node/BarChart/BarLabel/index.js +25 -0
- package/{esm → node}/BarChart/BarPlot.js +44 -36
- package/{esm → node}/BarChart/checkScaleErrors.js +12 -6
- package/{esm → node}/BarChart/extremums.js +11 -3
- package/{esm → node}/BarChart/formatter.js +16 -9
- package/{esm → node}/BarChart/getColor.js +7 -1
- package/{esm → node}/BarChart/getRadius.js +9 -2
- package/node/BarChart/index.js +49 -0
- package/{esm → node}/BarChart/legend.js +9 -3
- package/node/BarChart/plugin.js +17 -0
- package/node/BarChart/types.js +5 -0
- package/{esm → node}/BarChart/useBarChartProps.js +25 -17
- package/node/ChartContainer/ChartContainer.js +258 -0
- package/node/ChartContainer/index.js +16 -0
- package/node/ChartContainer/useChartContainerProps.js +92 -0
- package/node/ChartContainer/useDefaultizeAxis.js +40 -0
- package/{esm → node}/ChartsAxis/ChartsAxis.js +32 -24
- package/node/ChartsAxis/axisClasses.js +12 -0
- package/node/ChartsAxis/index.js +27 -0
- package/{esm → node}/ChartsAxisHighlight/ChartsAxisHighlight.js +44 -34
- package/node/ChartsAxisHighlight/index.js +16 -0
- package/node/ChartsClipPath/ChartsClipPath.js +59 -0
- package/node/ChartsClipPath/index.js +16 -0
- package/node/ChartsGrid/ChartsGrid.js +141 -0
- package/node/ChartsGrid/chartsGridClasses.js +14 -0
- package/node/ChartsGrid/index.js +27 -0
- package/node/ChartsLegend/ChartsLegend.js +114 -0
- package/{esm → node}/ChartsLegend/ContinuousColorLegend.js +74 -65
- package/node/ChartsLegend/DefaultChartsLegend.js +105 -0
- package/{esm → node}/ChartsLegend/LegendPerItem.js +40 -29
- package/{esm → node}/ChartsLegend/PiecewiseColorLegend.js +44 -36
- package/node/ChartsLegend/chartsLegend.types.js +5 -0
- package/node/ChartsLegend/chartsLegendClasses.js +12 -0
- package/node/ChartsLegend/index.js +71 -0
- package/node/ChartsLegend/legend.types.js +5 -0
- package/{esm → node}/ChartsLegend/legendItemsPlacement.js +13 -6
- package/node/ChartsLegend/useAxis.js +47 -0
- package/node/ChartsLegend/utils.js +23 -0
- package/{esm → node}/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +23 -15
- package/node/ChartsOnAxisClickHandler/index.js +16 -0
- package/node/ChartsOverlay/ChartsLoadingOverlay.js +43 -0
- package/node/ChartsOverlay/ChartsNoDataOverlay.js +43 -0
- package/node/ChartsOverlay/ChartsOverlay.js +41 -0
- package/node/ChartsOverlay/index.js +26 -0
- package/node/ChartsReferenceLine/ChartsReferenceLine.js +82 -0
- package/node/ChartsReferenceLine/ChartsXReferenceLine.js +109 -0
- package/node/ChartsReferenceLine/ChartsYReferenceLine.js +109 -0
- package/node/ChartsReferenceLine/chartsReferenceLineClasses.js +14 -0
- package/node/ChartsReferenceLine/common.js +27 -0
- package/node/ChartsReferenceLine/index.js +27 -0
- package/{ChartsSurface.js → node/ChartsSurface/ChartsSurface.js} +6 -2
- package/node/ChartsSurface/index.js +16 -0
- package/{esm → node}/ChartsText/ChartsText.js +26 -18
- package/node/ChartsText/index.js +12 -0
- package/node/ChartsTooltip/ChartsAxisTooltipContent.js +88 -0
- package/node/ChartsTooltip/ChartsItemTooltipContent.js +60 -0
- package/node/ChartsTooltip/ChartsTooltip.js +162 -0
- package/{esm → node}/ChartsTooltip/ChartsTooltipTable.js +16 -11
- package/node/ChartsTooltip/DefaultChartsAxisTooltipContent.js +129 -0
- package/node/ChartsTooltip/DefaultChartsItemTooltipContent.js +98 -0
- package/node/ChartsTooltip/chartsTooltipClasses.js +12 -0
- package/node/ChartsTooltip/index.js +82 -0
- package/{esm → node}/ChartsTooltip/utils.js +21 -9
- package/{esm → node}/ChartsVoronoiHandler/ChartsVoronoiHandler.js +37 -29
- package/node/ChartsVoronoiHandler/index.js +16 -0
- package/{esm → node}/ChartsXAxis/ChartsXAxis.js +84 -76
- package/node/ChartsXAxis/index.js +16 -0
- package/{esm → node}/ChartsYAxis/ChartsYAxis.js +78 -69
- package/node/ChartsYAxis/index.js +16 -0
- package/node/Gauge/Gauge.js +157 -0
- package/{esm → node}/Gauge/GaugeContainer.js +59 -51
- package/node/Gauge/GaugeProvider.js +99 -0
- package/node/Gauge/GaugeReferenceArc.js +44 -0
- package/node/Gauge/GaugeValueArc.js +51 -0
- package/node/Gauge/GaugeValueText.js +77 -0
- package/node/Gauge/gaugeClasses.js +15 -0
- package/node/Gauge/index.js +87 -0
- package/{esm → node}/Gauge/utils.js +9 -2
- package/node/LineChart/AnimatedArea.js +112 -0
- package/node/LineChart/AnimatedLine.js +115 -0
- package/node/LineChart/AreaElement.js +119 -0
- package/{esm → node}/LineChart/AreaPlot.js +38 -30
- package/node/LineChart/LineChart.js +357 -0
- package/node/LineChart/LineElement.js +119 -0
- package/node/LineChart/LineHighlightElement.js +90 -0
- package/node/LineChart/LineHighlightPlot.js +126 -0
- package/{esm → node}/LineChart/LinePlot.js +38 -30
- package/node/LineChart/MarkElement.js +140 -0
- package/{esm → node}/LineChart/MarkPlot.js +41 -33
- package/{esm → node}/LineChart/extremums.js +11 -3
- package/{esm → node}/LineChart/formatter.js +16 -9
- package/{esm → node}/LineChart/getColor.js +7 -1
- package/node/LineChart/index.js +126 -0
- package/{esm → node}/LineChart/legend.js +9 -3
- package/node/LineChart/plugin.js +17 -0
- package/{esm → node}/LineChart/useLineChartProps.js +22 -14
- package/node/PieChart/PieArc.js +117 -0
- package/node/PieChart/PieArcLabel.js +117 -0
- package/node/PieChart/PieArcLabelPlot.js +202 -0
- package/node/PieChart/PieArcPlot.js +184 -0
- package/node/PieChart/PieChart.js +401 -0
- package/{esm → node}/PieChart/PiePlot.js +37 -29
- package/{esm → node}/PieChart/dataTransform/transition.js +8 -2
- package/{esm → node}/PieChart/dataTransform/useTransformData.js +16 -7
- package/node/PieChart/formatter.js +53 -0
- package/node/PieChart/getColor.js +12 -0
- package/node/PieChart/getPieCoordinates.js +25 -0
- package/node/PieChart/index.js +82 -0
- package/{esm → node}/PieChart/legend.js +9 -3
- package/node/PieChart/plugin.js +14 -0
- package/{esm → node}/ResponsiveChartContainer/ResizableContainer.js +8 -2
- package/node/ResponsiveChartContainer/ResponsiveChartContainer.js +233 -0
- package/node/ResponsiveChartContainer/index.js +16 -0
- package/{esm → node}/ResponsiveChartContainer/useChartContainerDimensions.js +17 -7
- package/{esm → node}/ResponsiveChartContainer/useResponsiveChartContainerProps.js +16 -8
- package/{esm → node}/ScatterChart/Scatter.js +34 -26
- package/node/ScatterChart/ScatterChart.js +363 -0
- package/node/ScatterChart/ScatterPlot.js +107 -0
- package/{esm → node}/ScatterChart/extremums.js +11 -3
- package/node/ScatterChart/formatter.js +17 -0
- package/{esm → node}/ScatterChart/getColor.js +7 -1
- package/node/ScatterChart/index.js +38 -0
- package/{esm → node}/ScatterChart/legend.js +9 -3
- package/node/ScatterChart/plugin.js +17 -0
- package/{esm → node}/ScatterChart/useScatterChartProps.js +18 -10
- package/node/SparkLineChart/SparkLineChart.js +356 -0
- package/node/SparkLineChart/index.js +16 -0
- package/node/colorPalettes/colorPalettes.js +18 -0
- package/node/colorPalettes/index.js +16 -0
- package/node/context/CartesianProvider/Cartesian.types.js +5 -0
- package/node/context/CartesianProvider/CartesianContext.js +21 -0
- package/node/context/CartesianProvider/CartesianProvider.js +54 -0
- package/{esm → node}/context/CartesianProvider/computeValue.js +35 -28
- package/node/context/CartesianProvider/defaultizeAxis.js +21 -0
- package/{esm → node}/context/CartesianProvider/getAxisExtremum.js +9 -2
- package/node/context/CartesianProvider/index.js +61 -0
- package/node/context/CartesianProvider/useCartesianContext.js +17 -0
- package/{esm → node}/context/CartesianProvider/zoom.js +9 -2
- package/node/context/DrawingProvider.js +87 -0
- package/node/context/HighlightedProvider/HighlightedContext.js +39 -0
- package/node/context/HighlightedProvider/HighlightedProvider.js +100 -0
- package/{esm → node}/context/HighlightedProvider/createIsFaded.js +9 -2
- package/{esm → node}/context/HighlightedProvider/createIsHighlighted.js +9 -2
- package/node/context/HighlightedProvider/index.js +49 -0
- package/node/context/HighlightedProvider/useHighlighted.js +27 -0
- package/{esm → node}/context/HighlightedProvider/useItemHighlighted.js +9 -3
- package/node/context/InteractionProvider.js +85 -0
- package/node/context/PluginProvider/ColorProcessor.types.js +5 -0
- package/node/context/PluginProvider/ExtremumGetter.types.js +5 -0
- package/node/context/PluginProvider/Plugin.types.js +5 -0
- package/node/context/PluginProvider/PluginContext.js +21 -0
- package/node/context/PluginProvider/PluginProvider.js +26 -0
- package/node/context/PluginProvider/SeriesFormatter.types.js +5 -0
- package/node/context/PluginProvider/index.js +115 -0
- package/{esm → node}/context/PluginProvider/mergePlugins.js +13 -6
- package/node/context/PluginProvider/useColorProcessor.js +23 -0
- package/node/context/PluginProvider/useSeriesFormatter.js +23 -0
- package/node/context/PluginProvider/useXExtremumGetter.js +23 -0
- package/node/context/PluginProvider/useYExtremumGetter.js +23 -0
- package/node/context/SeriesProvider/Series.types.js +5 -0
- package/node/context/SeriesProvider/SeriesContext.js +16 -0
- package/node/context/SeriesProvider/SeriesProvider.js +38 -0
- package/node/context/SeriesProvider/index.js +49 -0
- package/{esm → node}/context/SeriesProvider/processSeries.js +14 -6
- package/node/context/ZAxisContextProvider.js +103 -0
- package/node/context/context.types.js +5 -0
- package/node/context/index.js +27 -0
- package/node/hooks/index.js +115 -0
- package/node/hooks/useAxis.js +24 -0
- package/{esm → node}/hooks/useAxisEvents.js +26 -16
- package/node/hooks/useChartDimensions.js +25 -0
- package/node/hooks/useChartId.js +16 -0
- package/node/hooks/useColorScale.js +37 -0
- package/node/hooks/useDrawingArea.js +30 -0
- package/node/hooks/useInteractionItemProps.js +55 -0
- package/node/hooks/useMounted.js +25 -0
- package/{esm → node}/hooks/useReducedMotion.js +12 -6
- package/node/hooks/useScale.js +30 -0
- package/{esm → node}/hooks/useSeries.js +19 -8
- package/node/hooks/useSvgRef.js +20 -0
- package/{esm → node}/hooks/useTicks.js +16 -7
- package/node/index.js +298 -0
- package/node/internals/SlotComponentPropsFromProps.js +5 -0
- package/node/internals/cleanId.js +12 -0
- package/node/internals/colorScale.js +24 -0
- package/node/internals/components/AxisSharedComponents.js +33 -0
- package/node/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +105 -0
- package/node/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +64 -0
- package/node/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +48 -0
- package/node/internals/components/ChartsAxesGradients/index.js +16 -0
- package/{esm → node}/internals/configInit.js +7 -1
- package/node/internals/defaultizeColor.js +21 -0
- package/node/internals/defaultizeValueFormatter.js +17 -0
- package/{esm → node}/internals/domUtils.js +16 -6
- package/{esm → node}/internals/geometry.js +7 -1
- package/node/internals/getCurve.js +45 -0
- package/node/internals/getLabel.js +9 -0
- package/{esm → node}/internals/getPercentageValue.js +7 -1
- package/{esm → node}/internals/getSVGPoint.js +7 -1
- package/node/internals/getScale.js +23 -0
- package/{esm → node}/internals/getSymbol.js +7 -1
- package/node/internals/getWordsByLines.js +21 -0
- package/node/internals/index.js +335 -0
- package/node/internals/isBandScale.js +9 -0
- package/node/internals/isCartesian.js +14 -0
- package/node/internals/isDefined.js +9 -0
- package/node/internals/isInfinity.js +9 -0
- package/node/internals/notNull.js +9 -0
- package/{esm → node}/internals/stackSeries.js +23 -16
- package/node/internals/ts-generic.js +5 -0
- package/node/internals/useAnimatedPath.js +42 -0
- package/{esm → node}/internals/warning.js +9 -2
- package/node/models/axis.js +18 -0
- package/node/models/colorMapping.js +5 -0
- package/node/models/helpers.js +5 -0
- package/node/models/index.js +38 -0
- package/node/models/layout.js +5 -0
- package/node/models/seriesType/bar.js +5 -0
- package/node/models/seriesType/common.js +5 -0
- package/node/models/seriesType/config.js +5 -0
- package/node/models/seriesType/index.js +71 -0
- package/node/models/seriesType/line.js +5 -0
- package/node/models/seriesType/pie.js +5 -0
- package/node/models/seriesType/scatter.js +5 -0
- package/node/models/stacking.js +5 -0
- package/node/models/z-axis.js +5 -0
- package/{esm → node}/tests/firePointerEvent.js +12 -5
- package/node/themeAugmentation/index.js +38 -0
- package/package.json +7 -7
- package/tests/firePointerEvent.js +5 -12
- package/themeAugmentation/components.d.ts +2 -12
- package/themeAugmentation/index.js +3 -38
- package/themeAugmentation/overrides.d.ts +6 -7
- package/themeAugmentation/package.json +2 -2
- package/themeAugmentation/props.d.ts +3 -14
- package/esm/BarChart/BarChart.js +0 -343
- package/esm/BarChart/BarClipPath.js +0 -42
- package/esm/BarChart/BarElement.js +0 -109
- package/esm/BarChart/BarLabel/BarLabel.js +0 -51
- package/esm/BarChart/BarLabel/BarLabel.types.js +0 -1
- package/esm/BarChart/BarLabel/BarLabelItem.js +0 -119
- package/esm/BarChart/BarLabel/BarLabelPlot.js +0 -75
- package/esm/BarChart/BarLabel/barLabelClasses.js +0 -19
- package/esm/BarChart/BarLabel/index.js +0 -2
- package/esm/BarChart/index.js +0 -4
- package/esm/BarChart/plugin.js +0 -10
- package/esm/BarChart/types.js +0 -1
- package/esm/ChartContainer/ChartContainer.js +0 -250
- package/esm/ChartContainer/index.js +0 -1
- package/esm/ChartContainer/useChartContainerProps.js +0 -82
- package/esm/ChartContainer/useDefaultizeAxis.js +0 -30
- package/esm/ChartsAxis/axisClasses.js +0 -5
- package/esm/ChartsAxis/index.js +0 -2
- package/esm/ChartsAxisHighlight/index.js +0 -1
- package/esm/ChartsClipPath/ChartsClipPath.js +0 -51
- package/esm/ChartsClipPath/index.js +0 -1
- package/esm/ChartsGrid/ChartsGrid.js +0 -133
- package/esm/ChartsGrid/chartsGridClasses.js +0 -6
- package/esm/ChartsGrid/index.js +0 -2
- package/esm/ChartsLegend/ChartsLegend.js +0 -106
- package/esm/ChartsLegend/DefaultChartsLegend.js +0 -97
- package/esm/ChartsLegend/chartsLegend.types.js +0 -1
- package/esm/ChartsLegend/chartsLegendClasses.js +0 -5
- package/esm/ChartsLegend/index.js +0 -6
- package/esm/ChartsLegend/legend.types.js +0 -1
- package/esm/ChartsLegend/useAxis.js +0 -39
- package/esm/ChartsLegend/utils.js +0 -16
- package/esm/ChartsOnAxisClickHandler/index.js +0 -1
- package/esm/ChartsOverlay/ChartsLoadingOverlay.js +0 -34
- package/esm/ChartsOverlay/ChartsNoDataOverlay.js +0 -34
- package/esm/ChartsOverlay/ChartsOverlay.js +0 -31
- package/esm/ChartsOverlay/index.js +0 -3
- package/esm/ChartsReferenceLine/ChartsReferenceLine.js +0 -74
- package/esm/ChartsReferenceLine/ChartsXReferenceLine.js +0 -100
- package/esm/ChartsReferenceLine/ChartsYReferenceLine.js +0 -100
- package/esm/ChartsReferenceLine/chartsReferenceLineClasses.js +0 -6
- package/esm/ChartsReferenceLine/common.js +0 -20
- package/esm/ChartsReferenceLine/index.js +0 -2
- package/esm/ChartsText/index.js +0 -1
- package/esm/ChartsTooltip/ChartsAxisTooltipContent.js +0 -80
- package/esm/ChartsTooltip/ChartsItemTooltipContent.js +0 -52
- package/esm/ChartsTooltip/ChartsTooltip.js +0 -154
- package/esm/ChartsTooltip/DefaultChartsAxisTooltipContent.js +0 -121
- package/esm/ChartsTooltip/DefaultChartsItemTooltipContent.js +0 -90
- package/esm/ChartsTooltip/chartsTooltipClasses.js +0 -5
- package/esm/ChartsTooltip/index.js +0 -7
- package/esm/ChartsVoronoiHandler/index.js +0 -1
- package/esm/ChartsXAxis/index.js +0 -1
- package/esm/ChartsYAxis/index.js +0 -1
- package/esm/Gauge/Gauge.js +0 -149
- package/esm/Gauge/GaugeProvider.js +0 -88
- package/esm/Gauge/GaugeReferenceArc.js +0 -35
- package/esm/Gauge/GaugeValueArc.js +0 -42
- package/esm/Gauge/GaugeValueText.js +0 -69
- package/esm/Gauge/gaugeClasses.js +0 -7
- package/esm/Gauge/index.js +0 -7
- package/esm/LineChart/AnimatedArea.js +0 -103
- package/esm/LineChart/AnimatedLine.js +0 -106
- package/esm/LineChart/AreaElement.js +0 -109
- package/esm/LineChart/LineChart.js +0 -344
- package/esm/LineChart/LineElement.js +0 -109
- package/esm/LineChart/LineHighlightElement.js +0 -80
- package/esm/LineChart/LineHighlightPlot.js +0 -118
- package/esm/LineChart/MarkElement.js +0 -128
- package/esm/LineChart/index.js +0 -11
- package/esm/LineChart/plugin.js +0 -10
- package/esm/PieChart/PieArc.js +0 -107
- package/esm/PieChart/PieArcLabel.js +0 -107
- package/esm/PieChart/PieArcLabelPlot.js +0 -194
- package/esm/PieChart/PieArcPlot.js +0 -176
- package/esm/PieChart/PieChart.js +0 -388
- package/esm/PieChart/formatter.js +0 -46
- package/esm/PieChart/getColor.js +0 -6
- package/esm/PieChart/getPieCoordinates.js +0 -19
- package/esm/PieChart/index.js +0 -7
- package/esm/PieChart/plugin.js +0 -7
- package/esm/ResponsiveChartContainer/ResponsiveChartContainer.js +0 -225
- package/esm/ResponsiveChartContainer/index.js +0 -1
- package/esm/ScatterChart/ScatterChart.js +0 -350
- package/esm/ScatterChart/ScatterPlot.js +0 -99
- package/esm/ScatterChart/formatter.js +0 -11
- package/esm/ScatterChart/index.js +0 -3
- package/esm/ScatterChart/plugin.js +0 -10
- package/esm/SparkLineChart/SparkLineChart.js +0 -348
- package/esm/SparkLineChart/index.js +0 -1
- package/esm/colorPalettes/colorPalettes.js +0 -9
- package/esm/colorPalettes/index.js +0 -1
- package/esm/context/CartesianProvider/Cartesian.types.js +0 -1
- package/esm/context/CartesianProvider/CartesianContext.js +0 -13
- package/esm/context/CartesianProvider/CartesianProvider.js +0 -47
- package/esm/context/CartesianProvider/defaultizeAxis.js +0 -13
- package/esm/context/CartesianProvider/index.js +0 -9
- package/esm/context/CartesianProvider/useCartesianContext.js +0 -8
- package/esm/context/DrawingProvider.js +0 -76
- package/esm/context/HighlightedProvider/HighlightedContext.js +0 -32
- package/esm/context/HighlightedProvider/HighlightedProvider.js +0 -92
- package/esm/context/HighlightedProvider/index.js +0 -4
- package/esm/context/HighlightedProvider/useHighlighted.js +0 -20
- package/esm/context/InteractionProvider.js +0 -76
- package/esm/context/PluginProvider/ColorProcessor.types.js +0 -1
- package/esm/context/PluginProvider/ExtremumGetter.types.js +0 -1
- package/esm/context/PluginProvider/Plugin.types.js +0 -1
- package/esm/context/PluginProvider/PluginContext.js +0 -13
- package/esm/context/PluginProvider/PluginProvider.js +0 -19
- package/esm/context/PluginProvider/SeriesFormatter.types.js +0 -1
- package/esm/context/PluginProvider/index.js +0 -10
- package/esm/context/PluginProvider/useColorProcessor.js +0 -15
- package/esm/context/PluginProvider/useSeriesFormatter.js +0 -15
- package/esm/context/PluginProvider/useXExtremumGetter.js +0 -15
- package/esm/context/PluginProvider/useYExtremumGetter.js +0 -15
- package/esm/context/SeriesProvider/Series.types.js +0 -1
- package/esm/context/SeriesProvider/SeriesContext.js +0 -8
- package/esm/context/SeriesProvider/SeriesProvider.js +0 -31
- package/esm/context/SeriesProvider/index.js +0 -8
- package/esm/context/ZAxisContextProvider.js +0 -94
- package/esm/context/context.types.js +0 -1
- package/esm/context/index.js +0 -2
- package/esm/hooks/index.js +0 -7
- package/esm/hooks/useAxis.js +0 -17
- package/esm/hooks/useChartDimensions.js +0 -16
- package/esm/hooks/useChartId.js +0 -8
- package/esm/hooks/useColorScale.js +0 -27
- package/esm/hooks/useDrawingArea.js +0 -22
- package/esm/hooks/useInteractionItemProps.js +0 -46
- package/esm/hooks/useMounted.js +0 -16
- package/esm/hooks/useScale.js +0 -23
- package/esm/hooks/useSvgRef.js +0 -12
- package/esm/index.js +0 -26
- package/esm/internals/SlotComponentPropsFromProps.js +0 -1
- package/esm/internals/cleanId.js +0 -6
- package/esm/internals/colorScale.js +0 -16
- package/esm/internals/components/AxisSharedComponents.js +0 -26
- package/esm/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +0 -95
- package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +0 -56
- package/esm/internals/components/ChartsAxesGradients/ChartsPiecewiseGradient.js +0 -40
- package/esm/internals/components/ChartsAxesGradients/index.js +0 -1
- package/esm/internals/defaultizeColor.js +0 -14
- package/esm/internals/defaultizeValueFormatter.js +0 -10
- package/esm/internals/getCurve.js +0 -39
- package/esm/internals/getLabel.js +0 -3
- package/esm/internals/getScale.js +0 -17
- package/esm/internals/getWordsByLines.js +0 -14
- package/esm/internals/index.js +0 -40
- package/esm/internals/isBandScale.js +0 -3
- package/esm/internals/isCartesian.js +0 -7
- package/esm/internals/isDefined.js +0 -3
- package/esm/internals/isInfinity.js +0 -3
- package/esm/internals/notNull.js +0 -3
- package/esm/internals/ts-generic.js +0 -1
- package/esm/internals/useAnimatedPath.js +0 -29
- package/esm/internals/useIsRTL.js +0 -5
- package/esm/models/axis.js +0 -11
- package/esm/models/colorMapping.js +0 -1
- package/esm/models/helpers.js +0 -1
- package/esm/models/index.js +0 -4
- package/esm/models/layout.js +0 -1
- package/esm/models/seriesType/bar.js +0 -1
- package/esm/models/seriesType/common.js +0 -1
- package/esm/models/seriesType/config.js +0 -1
- package/esm/models/seriesType/index.js +0 -16
- package/esm/models/seriesType/line.js +0 -1
- package/esm/models/seriesType/pie.js +0 -1
- package/esm/models/seriesType/scatter.js +0 -1
- package/esm/models/stacking.js +0 -1
- package/esm/models/z-axis.js +0 -1
- package/esm/themeAugmentation/index.js +0 -3
- package/internals/useIsRTL.d.ts +0 -1
- package/internals/useIsRTL.js +0 -12
- package/modern/internals/useIsRTL.js +0 -5
- /package/{ChartsSurface.d.ts → ChartsSurface/ChartsSurface.d.ts} +0 -0
- /package/{constants.d.ts → constants/index.d.ts} +0 -0
- /package/{esm/constants.js → constants/index.js} +0 -0
- /package/modern/{constants.js → constants/index.js} +0 -0
- /package/{constants.js → node/constants/index.js} +0 -0
|
@@ -1,25 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.computeValue = computeValue;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _d3Scale = require("@mui/x-charts-vendor/d3-scale");
|
|
10
|
+
var _axis = require("../../models/axis");
|
|
11
|
+
var _colorScale = require("../../internals/colorScale");
|
|
12
|
+
var _useTicks = require("../../hooks/useTicks");
|
|
13
|
+
var _getScale = require("../../internals/getScale");
|
|
14
|
+
var _zoom = require("./zoom");
|
|
15
|
+
var _getAxisExtremum = require("./getAxisExtremum");
|
|
9
16
|
const getRange = (drawingArea, axisDirection, isReverse) => {
|
|
10
17
|
const range = axisDirection === 'x' ? [drawingArea.left, drawingArea.left + drawingArea.width] : [drawingArea.top + drawingArea.height, drawingArea.top];
|
|
11
18
|
return isReverse ? range.reverse() : range;
|
|
12
19
|
};
|
|
13
20
|
const isDateData = data => data?.[0] instanceof Date;
|
|
14
21
|
function createDateFormatter(axis, range) {
|
|
15
|
-
const timeScale = scaleTime(axis.data, range);
|
|
22
|
+
const timeScale = (0, _d3Scale.scaleTime)(axis.data, range);
|
|
16
23
|
return (v, {
|
|
17
24
|
location
|
|
18
25
|
}) => location === 'tick' ? timeScale.tickFormat(axis.tickNumber)(v) : `${v.toLocaleString()}`;
|
|
19
26
|
}
|
|
20
27
|
const DEFAULT_CATEGORY_GAP_RATIO = 0.2;
|
|
21
28
|
const DEFAULT_BAR_GAP_RATIO = 0.1;
|
|
22
|
-
|
|
29
|
+
function computeValue({
|
|
23
30
|
drawingArea,
|
|
24
31
|
formattedSeries,
|
|
25
32
|
axis: allAxis,
|
|
@@ -39,41 +46,41 @@ export function computeValue({
|
|
|
39
46
|
}) => axisId === axis.id);
|
|
40
47
|
const zoomRange = zoom ? [zoom.start, zoom.end] : [0, 100];
|
|
41
48
|
const range = getRange(drawingArea, axisDirection, axis.reverse);
|
|
42
|
-
const [minData, maxData] = getAxisExtremum(axis, extremumGetters, isDefaultAxis, formattedSeries, zoom === undefined && !zoomOption ? getFilters : undefined // Do not apply filtering if zoom is already defined.
|
|
49
|
+
const [minData, maxData] = (0, _getAxisExtremum.getAxisExtremum)(axis, extremumGetters, isDefaultAxis, formattedSeries, zoom === undefined && !zoomOption ? getFilters : undefined // Do not apply filtering if zoom is already defined.
|
|
43
50
|
);
|
|
44
51
|
const data = axis.data ?? [];
|
|
45
|
-
if (isBandScaleConfig(axis)) {
|
|
52
|
+
if ((0, _axis.isBandScaleConfig)(axis)) {
|
|
46
53
|
const categoryGapRatio = axis.categoryGapRatio ?? DEFAULT_CATEGORY_GAP_RATIO;
|
|
47
54
|
const barGapRatio = axis.barGapRatio ?? DEFAULT_BAR_GAP_RATIO;
|
|
48
55
|
// Reverse range because ordinal scales are presented from top to bottom on y-axis
|
|
49
56
|
const scaleRange = axisDirection === 'x' ? range : [range[1], range[0]];
|
|
50
|
-
const zoomedRange = zoomScaleRange(scaleRange, zoomRange);
|
|
51
|
-
completeAxis[axis.id] =
|
|
57
|
+
const zoomedRange = (0, _zoom.zoomScaleRange)(scaleRange, zoomRange);
|
|
58
|
+
completeAxis[axis.id] = (0, _extends2.default)({
|
|
52
59
|
categoryGapRatio,
|
|
53
60
|
barGapRatio
|
|
54
61
|
}, axis, {
|
|
55
62
|
data,
|
|
56
|
-
scale: scaleBand(axis.data, zoomedRange).paddingInner(categoryGapRatio).paddingOuter(categoryGapRatio / 2),
|
|
63
|
+
scale: (0, _d3Scale.scaleBand)(axis.data, zoomedRange).paddingInner(categoryGapRatio).paddingOuter(categoryGapRatio / 2),
|
|
57
64
|
tickNumber: axis.data.length,
|
|
58
|
-
colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? getOrdinalColorScale(
|
|
65
|
+
colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? (0, _colorScale.getOrdinalColorScale)((0, _extends2.default)({
|
|
59
66
|
values: axis.data
|
|
60
|
-
}, axis.colorMap)) : getColorScale(axis.colorMap))
|
|
67
|
+
}, axis.colorMap)) : (0, _colorScale.getColorScale)(axis.colorMap))
|
|
61
68
|
});
|
|
62
69
|
if (isDateData(axis.data)) {
|
|
63
70
|
const dateFormatter = createDateFormatter(axis, scaleRange);
|
|
64
71
|
completeAxis[axis.id].valueFormatter = axis.valueFormatter ?? dateFormatter;
|
|
65
72
|
}
|
|
66
73
|
}
|
|
67
|
-
if (isPointScaleConfig(axis)) {
|
|
74
|
+
if ((0, _axis.isPointScaleConfig)(axis)) {
|
|
68
75
|
const scaleRange = axisDirection === 'x' ? range : [...range].reverse();
|
|
69
|
-
const zoomedRange = zoomScaleRange(scaleRange, zoomRange);
|
|
70
|
-
completeAxis[axis.id] =
|
|
76
|
+
const zoomedRange = (0, _zoom.zoomScaleRange)(scaleRange, zoomRange);
|
|
77
|
+
completeAxis[axis.id] = (0, _extends2.default)({}, axis, {
|
|
71
78
|
data,
|
|
72
|
-
scale: scalePoint(axis.data, zoomedRange),
|
|
79
|
+
scale: (0, _d3Scale.scalePoint)(axis.data, zoomedRange),
|
|
73
80
|
tickNumber: axis.data.length,
|
|
74
|
-
colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? getOrdinalColorScale(
|
|
81
|
+
colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? (0, _colorScale.getOrdinalColorScale)((0, _extends2.default)({
|
|
75
82
|
values: axis.data
|
|
76
|
-
}, axis.colorMap)) : getColorScale(axis.colorMap))
|
|
83
|
+
}, axis.colorMap)) : (0, _colorScale.getColorScale)(axis.colorMap))
|
|
77
84
|
});
|
|
78
85
|
if (isDateData(axis.data)) {
|
|
79
86
|
const dateFormatter = createDateFormatter(axis, scaleRange);
|
|
@@ -86,23 +93,23 @@ export function computeValue({
|
|
|
86
93
|
}
|
|
87
94
|
const scaleType = axis.scaleType ?? 'linear';
|
|
88
95
|
const axisExtremums = [axis.min ?? minData, axis.max ?? maxData];
|
|
89
|
-
const rawTickNumber = getTickNumber(
|
|
96
|
+
const rawTickNumber = (0, _useTicks.getTickNumber)((0, _extends2.default)({}, axis, {
|
|
90
97
|
range,
|
|
91
98
|
domain: axisExtremums
|
|
92
99
|
}));
|
|
93
100
|
const tickNumber = rawTickNumber / ((zoomRange[1] - zoomRange[0]) / 100);
|
|
94
|
-
const zoomedRange = zoomScaleRange(range, zoomRange);
|
|
101
|
+
const zoomedRange = (0, _zoom.zoomScaleRange)(range, zoomRange);
|
|
95
102
|
|
|
96
103
|
// TODO: move nice to prop? Disable when there is zoom?
|
|
97
|
-
const scale = getScale(scaleType, axisExtremums, zoomedRange).nice(rawTickNumber);
|
|
104
|
+
const scale = (0, _getScale.getScale)(scaleType, axisExtremums, zoomedRange).nice(rawTickNumber);
|
|
98
105
|
const [minDomain, maxDomain] = scale.domain();
|
|
99
106
|
const domain = [axis.min ?? minDomain, axis.max ?? maxDomain];
|
|
100
|
-
completeAxis[axis.id] =
|
|
107
|
+
completeAxis[axis.id] = (0, _extends2.default)({}, axis, {
|
|
101
108
|
data,
|
|
102
109
|
scaleType: scaleType,
|
|
103
110
|
scale: scale.domain(domain),
|
|
104
111
|
tickNumber,
|
|
105
|
-
colorScale: axis.colorMap && getColorScale(axis.colorMap)
|
|
112
|
+
colorScale: axis.colorMap && (0, _colorScale.getColorScale)(axis.colorMap)
|
|
106
113
|
});
|
|
107
114
|
});
|
|
108
115
|
return {
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.defaultizeAxis = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _constants = require("../../constants");
|
|
10
|
+
const defaultizeAxis = (inAxis, axisName) => {
|
|
11
|
+
const DEFAULT_AXIS_KEY = axisName === 'x' ? _constants.DEFAULT_X_AXIS_KEY : _constants.DEFAULT_Y_AXIS_KEY;
|
|
12
|
+
return [...(inAxis?.map((axis, index) => (0, _extends2.default)({
|
|
13
|
+
id: `defaultized-${axisName}-axis-${index}`
|
|
14
|
+
}, axis)) ?? []), ...(inAxis === undefined || inAxis.findIndex(({
|
|
15
|
+
id
|
|
16
|
+
}) => id === DEFAULT_AXIS_KEY) === -1 ? [{
|
|
17
|
+
id: DEFAULT_AXIS_KEY,
|
|
18
|
+
scaleType: 'linear'
|
|
19
|
+
}] : [])];
|
|
20
|
+
};
|
|
21
|
+
exports.defaultizeAxis = defaultizeAxis;
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getAxisExtremum = void 0;
|
|
1
7
|
const axisExtremumCallback = (acc, chartType, axis, getters, isDefaultAxis, formattedSeries, getFilters) => {
|
|
2
8
|
const getter = getters[chartType];
|
|
3
9
|
const series = formattedSeries[chartType]?.series ?? {};
|
|
@@ -10,11 +16,12 @@ const axisExtremumCallback = (acc, chartType, axis, getters, isDefaultAxis, form
|
|
|
10
16
|
const [minData, maxData] = acc;
|
|
11
17
|
return [Math.min(minChartTypeData, minData), Math.max(maxChartTypeData, maxData)];
|
|
12
18
|
};
|
|
13
|
-
|
|
19
|
+
const getAxisExtremum = (axis, getters, isDefaultAxis, formattedSeries, getFilters) => {
|
|
14
20
|
const charTypes = Object.keys(getters);
|
|
15
21
|
const extremums = charTypes.reduce((acc, charType) => axisExtremumCallback(acc, charType, axis, getters, isDefaultAxis, formattedSeries, getFilters), [Infinity, -Infinity]);
|
|
16
22
|
if (Number.isNaN(extremums[0]) || Number.isNaN(extremums[1])) {
|
|
17
23
|
return [Infinity, -Infinity];
|
|
18
24
|
}
|
|
19
25
|
return extremums;
|
|
20
|
-
};
|
|
26
|
+
};
|
|
27
|
+
exports.getAxisExtremum = getAxisExtremum;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _exportNames = {
|
|
7
|
+
cartesianProviderUtils: true
|
|
8
|
+
};
|
|
9
|
+
exports.cartesianProviderUtils = void 0;
|
|
10
|
+
var _computeValue = require("./computeValue");
|
|
11
|
+
var _CartesianProvider = require("./CartesianProvider");
|
|
12
|
+
Object.keys(_CartesianProvider).forEach(function (key) {
|
|
13
|
+
if (key === "default" || key === "__esModule") return;
|
|
14
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
15
|
+
if (key in exports && exports[key] === _CartesianProvider[key]) return;
|
|
16
|
+
Object.defineProperty(exports, key, {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function () {
|
|
19
|
+
return _CartesianProvider[key];
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
var _CartesianContext = require("./CartesianContext");
|
|
24
|
+
Object.keys(_CartesianContext).forEach(function (key) {
|
|
25
|
+
if (key === "default" || key === "__esModule") return;
|
|
26
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
27
|
+
if (key in exports && exports[key] === _CartesianContext[key]) return;
|
|
28
|
+
Object.defineProperty(exports, key, {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
get: function () {
|
|
31
|
+
return _CartesianContext[key];
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
var _useCartesianContext = require("./useCartesianContext");
|
|
36
|
+
Object.keys(_useCartesianContext).forEach(function (key) {
|
|
37
|
+
if (key === "default" || key === "__esModule") return;
|
|
38
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
39
|
+
if (key in exports && exports[key] === _useCartesianContext[key]) return;
|
|
40
|
+
Object.defineProperty(exports, key, {
|
|
41
|
+
enumerable: true,
|
|
42
|
+
get: function () {
|
|
43
|
+
return _useCartesianContext[key];
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
var _Cartesian = require("./Cartesian.types");
|
|
48
|
+
Object.keys(_Cartesian).forEach(function (key) {
|
|
49
|
+
if (key === "default" || key === "__esModule") return;
|
|
50
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
51
|
+
if (key in exports && exports[key] === _Cartesian[key]) return;
|
|
52
|
+
Object.defineProperty(exports, key, {
|
|
53
|
+
enumerable: true,
|
|
54
|
+
get: function () {
|
|
55
|
+
return _Cartesian[key];
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
const cartesianProviderUtils = exports.cartesianProviderUtils = {
|
|
60
|
+
computeValue: _computeValue.computeValue
|
|
61
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useCartesianContext = void 0;
|
|
7
|
+
var React = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _CartesianContext = require("./CartesianContext");
|
|
9
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
+
const useCartesianContext = () => {
|
|
12
|
+
const {
|
|
13
|
+
data
|
|
14
|
+
} = React.useContext(_CartesianContext.CartesianContext);
|
|
15
|
+
return data;
|
|
16
|
+
};
|
|
17
|
+
exports.useCartesianContext = useCartesianContext;
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.zoomScaleRange = void 0;
|
|
1
7
|
/**
|
|
2
8
|
* Applies the zoom into the scale range.
|
|
3
9
|
* It changes the screen coordinates that the scale covers.
|
|
@@ -7,7 +13,7 @@
|
|
|
7
13
|
* @param zoomRange the zoom range in percentage.
|
|
8
14
|
* @returns zoomed range in real screen coordinates.
|
|
9
15
|
*/
|
|
10
|
-
|
|
16
|
+
const zoomScaleRange = (scaleRange, zoomRange) => {
|
|
11
17
|
const rangeGap = scaleRange[1] - scaleRange[0];
|
|
12
18
|
const zoomGap = zoomRange[1] - zoomRange[0];
|
|
13
19
|
|
|
@@ -16,4 +22,5 @@ export const zoomScaleRange = (scaleRange, zoomRange) => {
|
|
|
16
22
|
const min = scaleRange[0] - zoomRange[0] * rangeGap / zoomGap;
|
|
17
23
|
const max = scaleRange[1] + (100 - zoomRange[1]) * rangeGap / zoomGap;
|
|
18
24
|
return [min, max];
|
|
19
|
-
};
|
|
25
|
+
};
|
|
26
|
+
exports.zoomScaleRange = zoomScaleRange;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.DrawingContext = void 0;
|
|
8
|
+
exports.DrawingProvider = DrawingProvider;
|
|
9
|
+
exports.SvgContext = void 0;
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
var React = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _useId = _interopRequireDefault(require("@mui/utils/useId"));
|
|
13
|
+
var _useChartDimensions = _interopRequireDefault(require("../hooks/useChartDimensions"));
|
|
14
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
|
+
/**
|
|
18
|
+
* Defines the area in which it is possible to draw the charts.
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
const DrawingContext = exports.DrawingContext = /*#__PURE__*/React.createContext({
|
|
22
|
+
top: 0,
|
|
23
|
+
left: 0,
|
|
24
|
+
bottom: 0,
|
|
25
|
+
right: 0,
|
|
26
|
+
height: 300,
|
|
27
|
+
width: 400,
|
|
28
|
+
chartId: '',
|
|
29
|
+
isPointInside: () => false
|
|
30
|
+
});
|
|
31
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
32
|
+
DrawingContext.displayName = 'DrawingContext';
|
|
33
|
+
}
|
|
34
|
+
const SvgContext = exports.SvgContext = /*#__PURE__*/React.createContext({
|
|
35
|
+
isInitialized: false,
|
|
36
|
+
data: {
|
|
37
|
+
current: null
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
41
|
+
SvgContext.displayName = 'SvgContext';
|
|
42
|
+
}
|
|
43
|
+
function DrawingProvider(props) {
|
|
44
|
+
const {
|
|
45
|
+
width,
|
|
46
|
+
height,
|
|
47
|
+
margin,
|
|
48
|
+
svgRef,
|
|
49
|
+
children
|
|
50
|
+
} = props;
|
|
51
|
+
const drawingArea = (0, _useChartDimensions.default)(width, height, margin);
|
|
52
|
+
const chartId = (0, _useId.default)();
|
|
53
|
+
const isPointInside = React.useCallback(({
|
|
54
|
+
x,
|
|
55
|
+
y
|
|
56
|
+
}, options) => {
|
|
57
|
+
// For element allowed to overflow, wrapping them in <g data-drawing-container /> make them fully part of the drawing area.
|
|
58
|
+
if (options?.targetElement && options?.targetElement.closest('[data-drawing-container]')) {
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
const isInsideX = x >= drawingArea.left - 1 && x <= drawingArea.left + drawingArea.width;
|
|
62
|
+
const isInsideY = y >= drawingArea.top - 1 && y <= drawingArea.top + drawingArea.height;
|
|
63
|
+
if (options?.direction === 'x') {
|
|
64
|
+
return isInsideX;
|
|
65
|
+
}
|
|
66
|
+
if (options?.direction === 'y') {
|
|
67
|
+
return isInsideY;
|
|
68
|
+
}
|
|
69
|
+
return isInsideX && isInsideY;
|
|
70
|
+
}, [drawingArea]);
|
|
71
|
+
const value = React.useMemo(() => (0, _extends2.default)({
|
|
72
|
+
chartId: chartId ?? ''
|
|
73
|
+
}, drawingArea, {
|
|
74
|
+
isPointInside
|
|
75
|
+
}), [chartId, drawingArea, isPointInside]);
|
|
76
|
+
const refValue = React.useMemo(() => ({
|
|
77
|
+
isInitialized: true,
|
|
78
|
+
data: svgRef
|
|
79
|
+
}), [svgRef]);
|
|
80
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(SvgContext.Provider, {
|
|
81
|
+
value: refValue,
|
|
82
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DrawingContext.Provider, {
|
|
83
|
+
value: value,
|
|
84
|
+
children: children
|
|
85
|
+
})
|
|
86
|
+
});
|
|
87
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.HighlightedContext = void 0;
|
|
7
|
+
var React = _interopRequireWildcard(require("react"));
|
|
8
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
9
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
10
|
+
/**
|
|
11
|
+
* The data of the highlighted item.
|
|
12
|
+
* To highlight an item, you need to provide the series id and the item id.
|
|
13
|
+
* If targeting the whole series, you can omit the item id.
|
|
14
|
+
* To clear the highlight, set the value to an empty object.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* // Highlight the item with the series id 'london' and the item id 0.
|
|
18
|
+
* { seriesId: 'london', dataIndex: 0 }
|
|
19
|
+
*
|
|
20
|
+
* // Highlight the whole series with the series id 'london'.
|
|
21
|
+
* { seriesId: 'london' }
|
|
22
|
+
*
|
|
23
|
+
* // Clear the highlight.
|
|
24
|
+
* {}
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
const HighlightedContext = exports.HighlightedContext = /*#__PURE__*/React.createContext({
|
|
28
|
+
isInitialized: false,
|
|
29
|
+
data: {
|
|
30
|
+
highlightedItem: null,
|
|
31
|
+
setHighlighted: () => {},
|
|
32
|
+
clearHighlighted: () => {},
|
|
33
|
+
isHighlighted: () => false,
|
|
34
|
+
isFaded: () => false
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
38
|
+
HighlightedContext.displayName = 'HighlightedContext';
|
|
39
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.HighlightedProvider = HighlightedProvider;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
10
|
+
var React = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
12
|
+
var _useControlled = _interopRequireDefault(require("@mui/utils/useControlled"));
|
|
13
|
+
var _HighlightedContext = require("./HighlightedContext");
|
|
14
|
+
var _createIsFaded = require("./createIsFaded");
|
|
15
|
+
var _createIsHighlighted = require("./createIsHighlighted");
|
|
16
|
+
var _useSeries = require("../../hooks/useSeries");
|
|
17
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
|
+
const _excluded = ["highlighted", "faded"];
|
|
19
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
20
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
|
+
const mergeDeprecatedOptions = options => {
|
|
22
|
+
const _ref = options ?? {},
|
|
23
|
+
{
|
|
24
|
+
highlighted,
|
|
25
|
+
faded
|
|
26
|
+
} = _ref,
|
|
27
|
+
other = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
|
|
28
|
+
return (0, _extends2.default)({
|
|
29
|
+
highlight: highlighted,
|
|
30
|
+
fade: faded
|
|
31
|
+
}, other);
|
|
32
|
+
};
|
|
33
|
+
function HighlightedProvider({
|
|
34
|
+
children,
|
|
35
|
+
highlightedItem: highlightedItemProps,
|
|
36
|
+
onHighlightChange
|
|
37
|
+
}) {
|
|
38
|
+
const [highlightedItem, setHighlightedItem] = (0, _useControlled.default)({
|
|
39
|
+
controlled: highlightedItemProps,
|
|
40
|
+
default: null,
|
|
41
|
+
name: 'HighlightedProvider',
|
|
42
|
+
state: 'highlightedItem'
|
|
43
|
+
});
|
|
44
|
+
const series = (0, _useSeries.useSeries)();
|
|
45
|
+
const seriesById = React.useMemo(() => {
|
|
46
|
+
const map = new Map();
|
|
47
|
+
Object.keys(series).forEach(seriesType => {
|
|
48
|
+
const seriesData = series[seriesType];
|
|
49
|
+
Object.keys(seriesData?.series ?? {}).forEach(seriesId => {
|
|
50
|
+
const seriesItem = seriesData?.series[seriesId];
|
|
51
|
+
map.set(seriesId, mergeDeprecatedOptions(seriesItem?.highlightScope));
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
return map;
|
|
55
|
+
}, [series]);
|
|
56
|
+
const highlightScope = highlightedItem && highlightedItem.seriesId ? seriesById.get(highlightedItem.seriesId) ?? undefined : undefined;
|
|
57
|
+
const providerValue = React.useMemo(() => {
|
|
58
|
+
return {
|
|
59
|
+
isInitialized: true,
|
|
60
|
+
data: {
|
|
61
|
+
highlightScope,
|
|
62
|
+
highlightedItem,
|
|
63
|
+
setHighlighted: itemData => {
|
|
64
|
+
setHighlightedItem(itemData);
|
|
65
|
+
onHighlightChange?.(itemData);
|
|
66
|
+
},
|
|
67
|
+
clearHighlighted: () => {
|
|
68
|
+
setHighlightedItem(null);
|
|
69
|
+
onHighlightChange?.(null);
|
|
70
|
+
},
|
|
71
|
+
isHighlighted: (0, _createIsHighlighted.createIsHighlighted)(highlightScope, highlightedItem),
|
|
72
|
+
isFaded: (0, _createIsFaded.createIsFaded)(highlightScope, highlightedItem)
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
}, [highlightedItem, highlightScope, setHighlightedItem, onHighlightChange]);
|
|
76
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_HighlightedContext.HighlightedContext.Provider, {
|
|
77
|
+
value: providerValue,
|
|
78
|
+
children: children
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
process.env.NODE_ENV !== "production" ? HighlightedProvider.propTypes = {
|
|
82
|
+
// ----------------------------- Warning --------------------------------
|
|
83
|
+
// | These PropTypes are generated from the TypeScript type definitions |
|
|
84
|
+
// | To update them edit the TypeScript types and run "pnpm proptypes" |
|
|
85
|
+
// ----------------------------------------------------------------------
|
|
86
|
+
children: _propTypes.default.node,
|
|
87
|
+
/**
|
|
88
|
+
* The item currently highlighted. Turns highlighting into a controlled prop.
|
|
89
|
+
*/
|
|
90
|
+
highlightedItem: _propTypes.default.shape({
|
|
91
|
+
dataIndex: _propTypes.default.number,
|
|
92
|
+
seriesId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
|
|
93
|
+
}),
|
|
94
|
+
/**
|
|
95
|
+
* The callback fired when the highlighted item changes.
|
|
96
|
+
*
|
|
97
|
+
* @param {HighlightItemData | null} highlightedItem The newly highlighted item.
|
|
98
|
+
*/
|
|
99
|
+
onHighlightChange: _propTypes.default.func
|
|
100
|
+
} : void 0;
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createIsFaded = void 0;
|
|
7
|
+
const createIsFaded = (highlightScope, highlightedItem) => input => {
|
|
2
8
|
if (!highlightScope) {
|
|
3
9
|
return false;
|
|
4
10
|
}
|
|
@@ -9,4 +15,5 @@ export const createIsFaded = (highlightScope, highlightedItem) => input => {
|
|
|
9
15
|
return input.seriesId !== highlightedItem?.seriesId || input.dataIndex !== highlightedItem?.dataIndex;
|
|
10
16
|
}
|
|
11
17
|
return false;
|
|
12
|
-
};
|
|
18
|
+
};
|
|
19
|
+
exports.createIsFaded = createIsFaded;
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createIsHighlighted = void 0;
|
|
7
|
+
const createIsHighlighted = (highlightScope, highlightedItem) => input => {
|
|
2
8
|
if (!highlightScope) {
|
|
3
9
|
return false;
|
|
4
10
|
}
|
|
@@ -9,4 +15,5 @@ export const createIsHighlighted = (highlightScope, highlightedItem) => input =>
|
|
|
9
15
|
return input.dataIndex === highlightedItem?.dataIndex && input.seriesId === highlightedItem?.seriesId;
|
|
10
16
|
}
|
|
11
17
|
return false;
|
|
12
|
-
};
|
|
18
|
+
};
|
|
19
|
+
exports.createIsHighlighted = createIsHighlighted;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _HighlightedProvider = require("./HighlightedProvider");
|
|
7
|
+
Object.keys(_HighlightedProvider).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _HighlightedProvider[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _HighlightedProvider[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
var _HighlightedContext = require("./HighlightedContext");
|
|
18
|
+
Object.keys(_HighlightedContext).forEach(function (key) {
|
|
19
|
+
if (key === "default" || key === "__esModule") return;
|
|
20
|
+
if (key in exports && exports[key] === _HighlightedContext[key]) return;
|
|
21
|
+
Object.defineProperty(exports, key, {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return _HighlightedContext[key];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
var _useHighlighted = require("./useHighlighted");
|
|
29
|
+
Object.keys(_useHighlighted).forEach(function (key) {
|
|
30
|
+
if (key === "default" || key === "__esModule") return;
|
|
31
|
+
if (key in exports && exports[key] === _useHighlighted[key]) return;
|
|
32
|
+
Object.defineProperty(exports, key, {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
get: function () {
|
|
35
|
+
return _useHighlighted[key];
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
var _useItemHighlighted = require("./useItemHighlighted");
|
|
40
|
+
Object.keys(_useItemHighlighted).forEach(function (key) {
|
|
41
|
+
if (key === "default" || key === "__esModule") return;
|
|
42
|
+
if (key in exports && exports[key] === _useItemHighlighted[key]) return;
|
|
43
|
+
Object.defineProperty(exports, key, {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
get: function () {
|
|
46
|
+
return _useItemHighlighted[key];
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
});
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useHighlighted = useHighlighted;
|
|
7
|
+
var React = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _HighlightedContext = require("./HighlightedContext");
|
|
9
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
+
/**
|
|
12
|
+
* A hook to get the highlighted state of the chart.
|
|
13
|
+
*
|
|
14
|
+
* Please consider using the `useItemHighlighted` hook if you need to check the state of a specific item.
|
|
15
|
+
*
|
|
16
|
+
* @returns {HighlightedState} the state of the chart
|
|
17
|
+
*/
|
|
18
|
+
function useHighlighted() {
|
|
19
|
+
const {
|
|
20
|
+
isInitialized,
|
|
21
|
+
data
|
|
22
|
+
} = React.useContext(_HighlightedContext.HighlightedContext);
|
|
23
|
+
if (!isInitialized) {
|
|
24
|
+
throw new Error(['MUI X: Could not find the highlighted ref context.', 'It looks like you rendered your component outside of a ChartsContainer parent component.'].join('\n'));
|
|
25
|
+
}
|
|
26
|
+
return data;
|
|
27
|
+
}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useItemHighlighted = useItemHighlighted;
|
|
7
|
+
var _useHighlighted = require("./useHighlighted");
|
|
2
8
|
/**
|
|
3
9
|
* A hook to check the highlighted state of the item.
|
|
4
10
|
* This function already calculates that an item is not faded if it is highlighted.
|
|
@@ -8,8 +14,8 @@ import { useHighlighted } from './useHighlighted';
|
|
|
8
14
|
* @param {HighlightItemData} item is the item to check
|
|
9
15
|
* @returns {ItemHighlightedState} the state of the item
|
|
10
16
|
*/
|
|
11
|
-
|
|
12
|
-
const highlighted = useHighlighted();
|
|
17
|
+
function useItemHighlighted(item) {
|
|
18
|
+
const highlighted = (0, _useHighlighted.useHighlighted)();
|
|
13
19
|
if (!item) {
|
|
14
20
|
return {
|
|
15
21
|
isHighlighted: false,
|