@mui/x-charts 7.10.0 → 7.11.1
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 +2 -2
- package/BarChart/BarElement.d.ts +2 -1
- package/BarChart/BarLabel/BarLabelItem.d.ts +2 -1
- package/BarChart/BarPlot.js +8 -8
- package/BarChart/checkScaleErrors.d.ts +4 -4
- package/BarChart/checkScaleErrors.js +11 -11
- package/BarChart/extremums.js +4 -1
- package/BarChart/formatter.js +2 -2
- package/BarChart/useBarChartProps.js +38 -33
- package/CHANGELOG.md +169 -0
- package/ChartContainer/ChartContainer.d.ts +28 -2
- package/ChartContainer/ChartContainer.js +25 -66
- package/ChartContainer/useChartContainerHooks.d.ts +1 -1
- package/ChartContainer/useChartContainerHooks.js +2 -2
- package/ChartContainer/useChartContainerProps.d.ts +86 -0
- package/ChartContainer/useChartContainerProps.js +95 -0
- package/ChartContainer/useDefaultizeAxis.d.ts +36 -0
- package/ChartContainer/useDefaultizeAxis.js +29 -0
- package/ChartsAxis/ChartsAxis.js +4 -4
- package/ChartsAxisHighlight/ChartsAxisHighlight.js +1 -1
- package/ChartsLegend/ChartsLegend.d.ts +3 -12
- package/ChartsLegend/ContinuousColorLegend.d.ts +65 -0
- package/ChartsLegend/ContinuousColorLegend.js +398 -0
- package/ChartsLegend/DefaultChartsLegend.d.ts +7 -50
- package/ChartsLegend/DefaultChartsLegend.js +13 -198
- package/ChartsLegend/LegendPerItem.d.ts +61 -0
- package/ChartsLegend/LegendPerItem.js +151 -0
- package/ChartsLegend/PiecewiseColorLegend.d.ts +26 -0
- package/ChartsLegend/PiecewiseColorLegend.js +169 -0
- package/ChartsLegend/chartsLegend.types.d.ts +31 -0
- package/ChartsLegend/chartsLegend.types.js +5 -0
- package/ChartsLegend/index.d.ts +2 -0
- package/ChartsLegend/index.js +22 -0
- package/ChartsLegend/legend.types.d.ts +62 -0
- package/ChartsLegend/legend.types.js +5 -0
- package/ChartsLegend/legendItemsPlacement.d.ts +3 -0
- package/ChartsLegend/legendItemsPlacement.js +79 -0
- package/ChartsLegend/useAxis.d.ts +7 -0
- package/ChartsLegend/useAxis.js +47 -0
- package/ChartsLegend/utils.d.ts +1 -8
- package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +3 -1
- package/ChartsOverlay/ChartsOverlay.d.ts +3 -2
- package/ChartsReferenceLine/ChartsReferenceLine.d.ts +1 -1
- package/ChartsReferenceLine/ChartsReferenceLine.js +2 -2
- package/ChartsReferenceLine/ChartsXReferenceLine.js +1 -2
- package/ChartsReferenceLine/ChartsYReferenceLine.js +1 -2
- package/ChartsSurface.js +3 -1
- package/ChartsTooltip/ChartsAxisTooltipContent.js +7 -3
- package/ChartsTooltip/ChartsItemTooltipContent.js +4 -4
- package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +30 -20
- package/ChartsXAxis/ChartsXAxis.js +1 -1
- package/ChartsYAxis/ChartsYAxis.js +15 -3
- package/Gauge/Gauge.d.ts +1 -4
- package/Gauge/Gauge.js +9 -6
- package/Gauge/GaugeContainer.js +8 -4
- package/Gauge/GaugeProvider.js +9 -9
- package/LineChart/AnimatedArea.js +2 -2
- package/LineChart/AnimatedLine.js +2 -2
- package/LineChart/AreaElement.d.ts +2 -1
- package/LineChart/AreaPlot.js +10 -6
- package/LineChart/LineChart.js +5 -2
- package/LineChart/LineElement.d.ts +2 -1
- package/LineChart/LineHighlightPlot.d.ts +2 -1
- package/LineChart/LineHighlightPlot.js +17 -5
- package/LineChart/LinePlot.js +10 -6
- package/LineChart/MarkElement.js +2 -2
- package/LineChart/MarkPlot.js +13 -25
- package/LineChart/extremums.js +4 -1
- package/LineChart/formatter.js +2 -2
- package/LineChart/useLineChartProps.js +38 -33
- package/PieChart/PieArc.js +1 -0
- package/PieChart/PieChart.d.ts +1 -4
- package/PieChart/PieChart.js +40 -34
- package/PieChart/PiePlot.js +6 -6
- package/PieChart/getPieCoordinates.js +3 -3
- package/ResponsiveChartContainer/ResponsiveChartContainer.js +8 -20
- package/ResponsiveChartContainer/useChartContainerDimensions.d.ts +5 -1
- package/ResponsiveChartContainer/useChartContainerDimensions.js +8 -4
- package/ResponsiveChartContainer/useResponsiveChartContainerProps.d.ts +20 -0
- package/ResponsiveChartContainer/useResponsiveChartContainerProps.js +73 -0
- package/ScatterChart/Scatter.js +6 -9
- package/ScatterChart/ScatterChart.js +4 -1
- package/ScatterChart/ScatterPlot.js +6 -3
- package/ScatterChart/extremums.js +8 -2
- package/ScatterChart/useScatterChartProps.js +35 -30
- package/SparkLineChart/SparkLineChart.js +27 -22
- package/context/CartesianProvider/CartesianContext.d.ts +1 -1
- package/context/CartesianProvider/CartesianProvider.d.ts +2 -3
- package/context/CartesianProvider/CartesianProvider.js +18 -7
- package/context/CartesianProvider/computeValue.d.ts +32 -9
- package/context/CartesianProvider/computeValue.js +20 -16
- package/context/CartesianProvider/defaultizeAxis.d.ts +36 -0
- package/context/CartesianProvider/defaultizeAxis.js +21 -0
- package/context/CartesianProvider/index.d.ts +0 -1
- package/context/CartesianProvider/index.js +1 -3
- package/context/CartesianProvider/normalizeAxis.d.ts +1 -1
- package/context/CartesianProvider/normalizeAxis.js +2 -2
- package/context/DrawingProvider.d.ts +12 -0
- package/context/DrawingProvider.js +15 -2
- package/context/HighlightedProvider/HighlightedProvider.js +2 -2
- package/context/SeriesContextProvider.js +1 -1
- package/context/ZAxisContextProvider.d.ts +1 -1
- package/context/ZAxisContextProvider.js +1 -1
- package/esm/BarChart/BarChart.js +2 -2
- package/esm/BarChart/BarPlot.js +8 -8
- package/esm/BarChart/checkScaleErrors.js +11 -11
- package/esm/BarChart/extremums.js +4 -1
- package/esm/BarChart/formatter.js +2 -2
- package/esm/BarChart/useBarChartProps.js +38 -33
- package/esm/ChartContainer/ChartContainer.js +25 -66
- package/esm/ChartContainer/useChartContainerHooks.js +2 -2
- package/esm/ChartContainer/useChartContainerProps.js +87 -0
- package/esm/ChartContainer/useDefaultizeAxis.js +19 -0
- package/esm/ChartsAxis/ChartsAxis.js +4 -4
- package/esm/ChartsAxisHighlight/ChartsAxisHighlight.js +1 -1
- package/esm/ChartsLegend/ContinuousColorLegend.js +390 -0
- package/esm/ChartsLegend/DefaultChartsLegend.js +14 -198
- package/esm/ChartsLegend/LegendPerItem.js +141 -0
- package/esm/ChartsLegend/PiecewiseColorLegend.js +161 -0
- package/esm/ChartsLegend/chartsLegend.types.js +1 -0
- package/esm/ChartsLegend/index.js +2 -0
- package/esm/ChartsLegend/legend.types.js +1 -0
- package/esm/ChartsLegend/legendItemsPlacement.js +72 -0
- package/esm/ChartsLegend/useAxis.js +39 -0
- package/esm/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +3 -1
- package/esm/ChartsReferenceLine/ChartsReferenceLine.js +2 -2
- package/esm/ChartsReferenceLine/ChartsXReferenceLine.js +2 -3
- package/esm/ChartsReferenceLine/ChartsYReferenceLine.js +2 -3
- package/esm/ChartsSurface.js +3 -1
- package/esm/ChartsTooltip/ChartsAxisTooltipContent.js +7 -3
- package/esm/ChartsTooltip/ChartsItemTooltipContent.js +4 -4
- package/esm/ChartsVoronoiHandler/ChartsVoronoiHandler.js +30 -20
- package/esm/ChartsXAxis/ChartsXAxis.js +1 -1
- package/esm/ChartsYAxis/ChartsYAxis.js +15 -3
- package/esm/Gauge/Gauge.js +8 -5
- package/esm/Gauge/GaugeContainer.js +8 -4
- package/esm/Gauge/GaugeProvider.js +1 -1
- package/esm/LineChart/AnimatedArea.js +1 -1
- package/esm/LineChart/AnimatedLine.js +1 -1
- package/esm/LineChart/AreaPlot.js +10 -6
- package/esm/LineChart/LineChart.js +5 -2
- package/esm/LineChart/LineHighlightPlot.js +17 -5
- package/esm/LineChart/LinePlot.js +10 -6
- package/esm/LineChart/MarkElement.js +1 -1
- package/esm/LineChart/MarkPlot.js +12 -24
- package/esm/LineChart/extremums.js +4 -1
- package/esm/LineChart/formatter.js +2 -2
- package/esm/LineChart/useLineChartProps.js +38 -33
- package/esm/PieChart/PieArc.js +1 -0
- package/esm/PieChart/PieChart.js +39 -33
- package/esm/PieChart/PiePlot.js +1 -1
- package/esm/PieChart/getPieCoordinates.js +1 -1
- package/esm/ResponsiveChartContainer/ResponsiveChartContainer.js +8 -20
- package/esm/ResponsiveChartContainer/useChartContainerDimensions.js +8 -4
- package/esm/ResponsiveChartContainer/useResponsiveChartContainerProps.js +65 -0
- package/esm/ScatterChart/Scatter.js +6 -9
- package/esm/ScatterChart/ScatterChart.js +4 -1
- package/esm/ScatterChart/ScatterPlot.js +6 -3
- package/esm/ScatterChart/extremums.js +8 -2
- package/esm/ScatterChart/useScatterChartProps.js +35 -30
- package/esm/SparkLineChart/SparkLineChart.js +27 -22
- package/esm/context/CartesianProvider/CartesianProvider.js +18 -7
- package/esm/context/CartesianProvider/computeValue.js +20 -16
- package/esm/context/CartesianProvider/defaultizeAxis.js +13 -0
- package/esm/context/CartesianProvider/index.js +1 -3
- package/esm/context/CartesianProvider/normalizeAxis.js +2 -2
- package/esm/context/DrawingProvider.js +15 -2
- package/esm/context/HighlightedProvider/HighlightedProvider.js +2 -2
- package/esm/context/SeriesContextProvider.js +1 -1
- package/esm/context/ZAxisContextProvider.js +1 -1
- package/esm/hooks/useAxisEvents.js +14 -17
- package/esm/hooks/useDrawingArea.js +5 -3
- package/esm/hooks/useReducedMotion.js +4 -2
- package/esm/internals/SlotComponentPropsFromProps.js +1 -0
- package/esm/internals/cleanId.js +6 -0
- package/esm/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +3 -2
- package/esm/internals/geometry.js +1 -1
- package/esm/internals/{utils.js → getPercentageValue.js} +1 -13
- package/esm/internals/getSymbol.js +5 -0
- package/esm/internals/index.js +3 -1
- package/esm/internals/isDefined.js +3 -0
- package/esm/internals/notNull.js +3 -0
- package/esm/internals/ts-generic.js +1 -0
- package/esm/internals/warning.js +19 -11
- package/hooks/useAxisEvents.js +14 -17
- package/hooks/useDrawingArea.js +5 -3
- package/hooks/useReducedMotion.js +4 -2
- package/index.js +1 -1
- package/internals/SlotComponentPropsFromProps.d.ts +1 -0
- package/internals/SlotComponentPropsFromProps.js +5 -0
- package/internals/cleanId.d.ts +4 -0
- package/internals/cleanId.js +12 -0
- package/internals/components/ChartsAxesGradients/ChartsContinuousGradient.d.ts +6 -0
- package/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +3 -2
- package/internals/defaultizeColor.d.ts +7 -0
- package/internals/geometry.js +1 -1
- package/internals/getPercentageValue.d.ts +7 -0
- package/internals/{utils.js → getPercentageValue.js} +1 -15
- package/internals/getSymbol.d.ts +2 -0
- package/internals/getSymbol.js +11 -0
- package/internals/index.d.ts +3 -1
- package/internals/index.js +25 -5
- package/internals/isDefined.d.ts +1 -0
- package/internals/isDefined.js +9 -0
- package/internals/notNull.d.ts +1 -0
- package/internals/notNull.js +9 -0
- package/internals/ts-generic.d.ts +5 -0
- package/internals/ts-generic.js +5 -0
- package/internals/warning.d.ts +2 -1
- package/internals/warning.js +21 -12
- package/models/axis.d.ts +5 -2
- package/models/helpers.d.ts +1 -0
- package/models/seriesType/common.d.ts +10 -0
- package/models/seriesType/config.d.ts +2 -16
- package/models/seriesType/scatter.d.ts +5 -0
- package/modern/BarChart/BarChart.js +2 -2
- package/modern/BarChart/BarPlot.js +8 -8
- package/modern/BarChart/checkScaleErrors.js +11 -11
- package/modern/BarChart/extremums.js +4 -1
- package/modern/BarChart/formatter.js +2 -2
- package/modern/BarChart/useBarChartProps.js +38 -33
- package/modern/ChartContainer/ChartContainer.js +25 -66
- package/modern/ChartContainer/useChartContainerHooks.js +2 -2
- package/modern/ChartContainer/useChartContainerProps.js +87 -0
- package/modern/ChartContainer/useDefaultizeAxis.js +19 -0
- package/modern/ChartsAxis/ChartsAxis.js +4 -4
- package/modern/ChartsAxisHighlight/ChartsAxisHighlight.js +1 -1
- package/modern/ChartsLegend/ContinuousColorLegend.js +390 -0
- package/modern/ChartsLegend/DefaultChartsLegend.js +14 -198
- package/modern/ChartsLegend/LegendPerItem.js +141 -0
- package/modern/ChartsLegend/PiecewiseColorLegend.js +161 -0
- package/modern/ChartsLegend/chartsLegend.types.js +1 -0
- package/modern/ChartsLegend/index.js +2 -0
- package/modern/ChartsLegend/legend.types.js +1 -0
- package/modern/ChartsLegend/legendItemsPlacement.js +72 -0
- package/modern/ChartsLegend/useAxis.js +39 -0
- package/modern/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +3 -1
- package/modern/ChartsReferenceLine/ChartsReferenceLine.js +2 -2
- package/modern/ChartsReferenceLine/ChartsXReferenceLine.js +2 -3
- package/modern/ChartsReferenceLine/ChartsYReferenceLine.js +2 -3
- package/modern/ChartsSurface.js +3 -1
- package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +7 -3
- package/modern/ChartsTooltip/ChartsItemTooltipContent.js +4 -4
- package/modern/ChartsVoronoiHandler/ChartsVoronoiHandler.js +30 -20
- package/modern/ChartsXAxis/ChartsXAxis.js +1 -1
- package/modern/ChartsYAxis/ChartsYAxis.js +15 -3
- package/modern/Gauge/Gauge.js +8 -5
- package/modern/Gauge/GaugeContainer.js +8 -4
- package/modern/Gauge/GaugeProvider.js +1 -1
- package/modern/LineChart/AnimatedArea.js +1 -1
- package/modern/LineChart/AnimatedLine.js +1 -1
- package/modern/LineChart/AreaPlot.js +10 -6
- package/modern/LineChart/LineChart.js +5 -2
- package/modern/LineChart/LineHighlightPlot.js +17 -5
- package/modern/LineChart/LinePlot.js +10 -6
- package/modern/LineChart/MarkElement.js +1 -1
- package/modern/LineChart/MarkPlot.js +12 -24
- package/modern/LineChart/extremums.js +4 -1
- package/modern/LineChart/formatter.js +2 -2
- package/modern/LineChart/useLineChartProps.js +38 -33
- package/modern/PieChart/PieArc.js +1 -0
- package/modern/PieChart/PieChart.js +39 -33
- package/modern/PieChart/PiePlot.js +1 -1
- package/modern/PieChart/getPieCoordinates.js +1 -1
- package/modern/ResponsiveChartContainer/ResponsiveChartContainer.js +8 -20
- package/modern/ResponsiveChartContainer/useChartContainerDimensions.js +8 -4
- package/modern/ResponsiveChartContainer/useResponsiveChartContainerProps.js +65 -0
- package/modern/ScatterChart/Scatter.js +6 -9
- package/modern/ScatterChart/ScatterChart.js +4 -1
- package/modern/ScatterChart/ScatterPlot.js +6 -3
- package/modern/ScatterChart/extremums.js +8 -2
- package/modern/ScatterChart/useScatterChartProps.js +35 -30
- package/modern/SparkLineChart/SparkLineChart.js +27 -22
- package/modern/context/CartesianProvider/CartesianProvider.js +18 -7
- package/modern/context/CartesianProvider/computeValue.js +20 -16
- package/modern/context/CartesianProvider/defaultizeAxis.js +13 -0
- package/modern/context/CartesianProvider/index.js +1 -3
- package/modern/context/CartesianProvider/normalizeAxis.js +2 -2
- package/modern/context/DrawingProvider.js +15 -2
- package/modern/context/HighlightedProvider/HighlightedProvider.js +2 -2
- package/modern/context/SeriesContextProvider.js +1 -1
- package/modern/context/ZAxisContextProvider.js +1 -1
- package/modern/hooks/useAxisEvents.js +14 -17
- package/modern/hooks/useDrawingArea.js +5 -3
- package/modern/hooks/useReducedMotion.js +4 -2
- package/modern/index.js +1 -1
- package/modern/internals/SlotComponentPropsFromProps.js +1 -0
- package/modern/internals/cleanId.js +6 -0
- package/modern/internals/components/ChartsAxesGradients/ChartsContinuousGradient.js +3 -2
- package/modern/internals/geometry.js +1 -1
- package/modern/internals/{utils.js → getPercentageValue.js} +1 -13
- package/modern/internals/getSymbol.js +5 -0
- package/modern/internals/index.js +3 -1
- package/modern/internals/isDefined.js +3 -0
- package/modern/internals/notNull.js +3 -0
- package/modern/internals/ts-generic.js +1 -0
- package/modern/internals/warning.js +19 -11
- package/package.json +4 -4
- package/internals/utils.d.ts +0 -18
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import type { DrawingProviderProps } from '../context/DrawingProvider';
|
|
2
|
+
import type { ColorProviderProps } from '../context/ColorProvider';
|
|
3
|
+
import type { CartesianContextProviderProps } from '../context/CartesianProvider';
|
|
4
|
+
import type { SeriesContextProviderProps } from '../context/SeriesContextProvider';
|
|
5
|
+
import type { ZAxisContextProviderProps } from '../context/ZAxisContextProvider';
|
|
6
|
+
import type { ChartContainerProps } from './ChartContainer';
|
|
7
|
+
import { HighlightedProviderProps } from '../context';
|
|
8
|
+
import { ChartsSurfaceProps } from '../ChartsSurface';
|
|
9
|
+
export declare const useChartContainerProps: (props: ChartContainerProps, ref: React.ForwardedRef<unknown>) => {
|
|
10
|
+
children: import("react").ReactNode;
|
|
11
|
+
drawingProviderProps: Omit<DrawingProviderProps, "children">;
|
|
12
|
+
colorProviderProps: Omit<ColorProviderProps, "children">;
|
|
13
|
+
seriesContextProps: Omit<SeriesContextProviderProps, "children">;
|
|
14
|
+
cartesianContextProps: Omit<CartesianContextProviderProps, "children">;
|
|
15
|
+
zAxisContextProps: Omit<ZAxisContextProviderProps, "children">;
|
|
16
|
+
highlightedProviderProps: Omit<HighlightedProviderProps, "children">;
|
|
17
|
+
chartsSurfaceProps: ChartsSurfaceProps & {
|
|
18
|
+
ref: any;
|
|
19
|
+
};
|
|
20
|
+
xAxis: {
|
|
21
|
+
reverse?: boolean;
|
|
22
|
+
fill?: string;
|
|
23
|
+
stroke?: string;
|
|
24
|
+
data?: any[] | undefined;
|
|
25
|
+
label?: string;
|
|
26
|
+
max?: number | Date;
|
|
27
|
+
min?: number | Date;
|
|
28
|
+
classes?: Partial<import("..").ChartsAxisClasses>;
|
|
29
|
+
slots?: Partial<import("../internals").ChartsAxisSlots>;
|
|
30
|
+
slotProps?: Partial<import("../internals").ChartsAxisSlotProps>;
|
|
31
|
+
dataKey?: string;
|
|
32
|
+
valueFormatter?: ((value: any, context: import("../internals").AxisValueFormatterContext) => string) | undefined;
|
|
33
|
+
colorMap?: import("../models/colorMapping").ContinuousColorConfig<number | Date> | import("../models/colorMapping").PiecewiseColorConfig<number | Date> | import("../models/colorMapping").OrdinalColorConfig<string | number | Date> | undefined;
|
|
34
|
+
tickMaxStep?: number;
|
|
35
|
+
tickMinStep?: number;
|
|
36
|
+
tickNumber?: number;
|
|
37
|
+
tickPlacement?: "start" | "end" | "middle" | "extremities";
|
|
38
|
+
tickLabelPlacement?: "middle" | "tick";
|
|
39
|
+
scaleType?: "linear" | "time" | "log" | "band" | "point" | "pow" | "sqrt" | "utc" | undefined;
|
|
40
|
+
axisId?: import("../internals").AxisId;
|
|
41
|
+
disableLine?: boolean;
|
|
42
|
+
disableTicks?: boolean;
|
|
43
|
+
tickFontSize?: number;
|
|
44
|
+
tickLabelStyle?: import("..").ChartsTextProps["style"];
|
|
45
|
+
labelStyle?: import("..").ChartsTextProps["style"];
|
|
46
|
+
tickLabelInterval?: "auto" | ((value: any, index: number) => boolean);
|
|
47
|
+
labelFontSize?: number;
|
|
48
|
+
tickSize?: number;
|
|
49
|
+
tickInterval?: "auto" | ((value: any, index: number) => boolean) | any[];
|
|
50
|
+
hideTooltip?: boolean;
|
|
51
|
+
id: import("../internals").AxisId;
|
|
52
|
+
}[];
|
|
53
|
+
yAxis: {
|
|
54
|
+
reverse?: boolean;
|
|
55
|
+
fill?: string;
|
|
56
|
+
stroke?: string;
|
|
57
|
+
data?: any[] | undefined;
|
|
58
|
+
label?: string;
|
|
59
|
+
max?: number | Date;
|
|
60
|
+
min?: number | Date;
|
|
61
|
+
classes?: Partial<import("..").ChartsAxisClasses>;
|
|
62
|
+
slots?: Partial<import("../internals").ChartsAxisSlots>;
|
|
63
|
+
slotProps?: Partial<import("../internals").ChartsAxisSlotProps>;
|
|
64
|
+
dataKey?: string;
|
|
65
|
+
valueFormatter?: ((value: any, context: import("../internals").AxisValueFormatterContext) => string) | undefined;
|
|
66
|
+
colorMap?: import("../models/colorMapping").ContinuousColorConfig<number | Date> | import("../models/colorMapping").PiecewiseColorConfig<number | Date> | import("../models/colorMapping").OrdinalColorConfig<string | number | Date> | undefined;
|
|
67
|
+
tickMaxStep?: number;
|
|
68
|
+
tickMinStep?: number;
|
|
69
|
+
tickNumber?: number;
|
|
70
|
+
tickPlacement?: "start" | "end" | "middle" | "extremities";
|
|
71
|
+
tickLabelPlacement?: "middle" | "tick";
|
|
72
|
+
scaleType?: "linear" | "time" | "log" | "band" | "point" | "pow" | "sqrt" | "utc" | undefined;
|
|
73
|
+
axisId?: import("../internals").AxisId;
|
|
74
|
+
disableLine?: boolean;
|
|
75
|
+
disableTicks?: boolean;
|
|
76
|
+
tickFontSize?: number;
|
|
77
|
+
tickLabelStyle?: import("..").ChartsTextProps["style"];
|
|
78
|
+
labelStyle?: import("..").ChartsTextProps["style"];
|
|
79
|
+
tickLabelInterval?: "auto" | ((value: any, index: number) => boolean);
|
|
80
|
+
labelFontSize?: number;
|
|
81
|
+
tickSize?: number;
|
|
82
|
+
tickInterval?: "auto" | ((value: any, index: number) => boolean) | any[];
|
|
83
|
+
hideTooltip?: boolean;
|
|
84
|
+
id: import("../internals").AxisId;
|
|
85
|
+
}[];
|
|
86
|
+
};
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.useChartContainerProps = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
10
|
+
var _useChartContainerHooks = require("./useChartContainerHooks");
|
|
11
|
+
var _useDefaultizeAxis = require("./useDefaultizeAxis");
|
|
12
|
+
const _excluded = ["width", "height", "series", "margin", "xAxis", "yAxis", "zAxis", "colors", "dataset", "sx", "title", "desc", "disableAxisListener", "highlightedItem", "onHighlightChange", "plugins", "children"];
|
|
13
|
+
const useChartContainerProps = (props, ref) => {
|
|
14
|
+
const {
|
|
15
|
+
width,
|
|
16
|
+
height,
|
|
17
|
+
series,
|
|
18
|
+
margin,
|
|
19
|
+
xAxis,
|
|
20
|
+
yAxis,
|
|
21
|
+
zAxis,
|
|
22
|
+
colors,
|
|
23
|
+
dataset,
|
|
24
|
+
sx,
|
|
25
|
+
title,
|
|
26
|
+
desc,
|
|
27
|
+
disableAxisListener,
|
|
28
|
+
highlightedItem,
|
|
29
|
+
onHighlightChange,
|
|
30
|
+
plugins,
|
|
31
|
+
children
|
|
32
|
+
} = props,
|
|
33
|
+
other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
34
|
+
const {
|
|
35
|
+
svgRef,
|
|
36
|
+
chartSurfaceRef,
|
|
37
|
+
xExtremumGetters,
|
|
38
|
+
yExtremumGetters,
|
|
39
|
+
seriesFormatters,
|
|
40
|
+
colorProcessors
|
|
41
|
+
} = (0, _useChartContainerHooks.useChartContainerHooks)(ref, plugins);
|
|
42
|
+
const [defaultizedXAxis, defaultizedYAxis] = (0, _useDefaultizeAxis.useDefaultizeAxis)(xAxis, yAxis);
|
|
43
|
+
const drawingProviderProps = {
|
|
44
|
+
width,
|
|
45
|
+
height,
|
|
46
|
+
margin,
|
|
47
|
+
svgRef
|
|
48
|
+
};
|
|
49
|
+
const colorProviderProps = {
|
|
50
|
+
colorProcessors
|
|
51
|
+
};
|
|
52
|
+
const seriesContextProps = {
|
|
53
|
+
series,
|
|
54
|
+
colors,
|
|
55
|
+
dataset,
|
|
56
|
+
seriesFormatters
|
|
57
|
+
};
|
|
58
|
+
const cartesianContextProps = {
|
|
59
|
+
xAxis: defaultizedXAxis,
|
|
60
|
+
yAxis: defaultizedYAxis,
|
|
61
|
+
dataset,
|
|
62
|
+
xExtremumGetters,
|
|
63
|
+
yExtremumGetters
|
|
64
|
+
};
|
|
65
|
+
const zAxisContextProps = {
|
|
66
|
+
zAxis,
|
|
67
|
+
dataset
|
|
68
|
+
};
|
|
69
|
+
const highlightedProviderProps = {
|
|
70
|
+
highlightedItem,
|
|
71
|
+
onHighlightChange
|
|
72
|
+
};
|
|
73
|
+
const chartsSurfaceProps = (0, _extends2.default)({}, other, {
|
|
74
|
+
width,
|
|
75
|
+
height,
|
|
76
|
+
ref: chartSurfaceRef,
|
|
77
|
+
sx,
|
|
78
|
+
title,
|
|
79
|
+
desc,
|
|
80
|
+
disableAxisListener
|
|
81
|
+
});
|
|
82
|
+
return {
|
|
83
|
+
children,
|
|
84
|
+
drawingProviderProps,
|
|
85
|
+
colorProviderProps,
|
|
86
|
+
seriesContextProps,
|
|
87
|
+
cartesianContextProps,
|
|
88
|
+
zAxisContextProps,
|
|
89
|
+
highlightedProviderProps,
|
|
90
|
+
chartsSurfaceProps,
|
|
91
|
+
xAxis: defaultizedXAxis,
|
|
92
|
+
yAxis: defaultizedYAxis
|
|
93
|
+
};
|
|
94
|
+
};
|
|
95
|
+
exports.useChartContainerProps = useChartContainerProps;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { MakeOptional } from '../models/helpers';
|
|
2
|
+
import { AxisConfig, ScaleName } from '../models';
|
|
3
|
+
import { ChartsAxisProps } from '../models/axis';
|
|
4
|
+
export declare const useDefaultizeAxis: (inXAxis: MakeOptional<AxisConfig<ScaleName, any, ChartsAxisProps>, "id">[] | undefined, inYAxis: MakeOptional<AxisConfig<ScaleName, any, ChartsAxisProps>, "id">[] | undefined) => {
|
|
5
|
+
reverse?: boolean;
|
|
6
|
+
fill?: string;
|
|
7
|
+
stroke?: string;
|
|
8
|
+
data?: any[] | undefined;
|
|
9
|
+
label?: string;
|
|
10
|
+
max?: number | Date;
|
|
11
|
+
min?: number | Date;
|
|
12
|
+
classes?: Partial<import("..").ChartsAxisClasses>;
|
|
13
|
+
slots?: Partial<import("../models/axis").ChartsAxisSlots>;
|
|
14
|
+
slotProps?: Partial<import("../models/axis").ChartsAxisSlotProps>;
|
|
15
|
+
dataKey?: string;
|
|
16
|
+
valueFormatter?: ((value: any, context: import("../models/axis").AxisValueFormatterContext) => string) | undefined;
|
|
17
|
+
colorMap?: import("../models/colorMapping").ContinuousColorConfig<number | Date> | import("../models/colorMapping").PiecewiseColorConfig<number | Date> | import("../models/colorMapping").OrdinalColorConfig<string | number | Date> | undefined;
|
|
18
|
+
tickMaxStep?: number;
|
|
19
|
+
tickMinStep?: number;
|
|
20
|
+
tickNumber?: number;
|
|
21
|
+
tickPlacement?: "start" | "end" | "middle" | "extremities";
|
|
22
|
+
tickLabelPlacement?: "middle" | "tick";
|
|
23
|
+
scaleType?: "linear" | "time" | "log" | "band" | "point" | "pow" | "sqrt" | "utc" | undefined;
|
|
24
|
+
axisId?: import("../models/axis").AxisId;
|
|
25
|
+
disableLine?: boolean;
|
|
26
|
+
disableTicks?: boolean;
|
|
27
|
+
tickFontSize?: number;
|
|
28
|
+
tickLabelStyle?: import("..").ChartsTextProps["style"];
|
|
29
|
+
labelStyle?: import("..").ChartsTextProps["style"];
|
|
30
|
+
tickLabelInterval?: "auto" | ((value: any, index: number) => boolean);
|
|
31
|
+
labelFontSize?: number;
|
|
32
|
+
tickSize?: number;
|
|
33
|
+
tickInterval?: "auto" | ((value: any, index: number) => boolean) | any[];
|
|
34
|
+
hideTooltip?: boolean;
|
|
35
|
+
id: import("../models/axis").AxisId;
|
|
36
|
+
}[][];
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.useDefaultizeAxis = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var React = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _constants = require("../constants");
|
|
11
|
+
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); }
|
|
12
|
+
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; }
|
|
13
|
+
const defaultizeAxis = (inAxis, axisName) => {
|
|
14
|
+
const DEFAULT_AXIS_KEY = axisName === 'x' ? _constants.DEFAULT_X_AXIS_KEY : _constants.DEFAULT_Y_AXIS_KEY;
|
|
15
|
+
return [...(inAxis?.map((axis, index) => (0, _extends2.default)({
|
|
16
|
+
id: `defaultized-${axisName}-axis-${index}`
|
|
17
|
+
}, axis)) ?? []), ...(inAxis === undefined || inAxis.findIndex(({
|
|
18
|
+
id
|
|
19
|
+
}) => id === DEFAULT_AXIS_KEY) === -1 ? [{
|
|
20
|
+
id: DEFAULT_AXIS_KEY,
|
|
21
|
+
scaleType: 'linear'
|
|
22
|
+
}] : [])];
|
|
23
|
+
};
|
|
24
|
+
const useDefaultizeAxis = (inXAxis, inYAxis) => {
|
|
25
|
+
const xAxis = React.useMemo(() => defaultizeAxis(inXAxis, 'x'), [inXAxis]);
|
|
26
|
+
const yAxis = React.useMemo(() => defaultizeAxis(inYAxis, 'y'), [inYAxis]);
|
|
27
|
+
return [xAxis, yAxis];
|
|
28
|
+
};
|
|
29
|
+
exports.useDefaultizeAxis = useDefaultizeAxis;
|
package/ChartsAxis/ChartsAxis.js
CHANGED
|
@@ -66,16 +66,16 @@ function ChartsAxis(props) {
|
|
|
66
66
|
const topId = getAxisId(topAxis, xAxisIds[0]);
|
|
67
67
|
const rightId = getAxisId(rightAxis, yAxisIds[0]);
|
|
68
68
|
if (topId !== null && !xAxis[topId]) {
|
|
69
|
-
throw Error([`MUI X
|
|
69
|
+
throw Error([`MUI X: id used for top axis "${topId}" is not defined.`, `Available ids are: ${xAxisIds.join(', ')}.`].join('\n'));
|
|
70
70
|
}
|
|
71
71
|
if (leftId !== null && !yAxis[leftId]) {
|
|
72
|
-
throw Error([`MUI X
|
|
72
|
+
throw Error([`MUI X: id used for left axis "${leftId}" is not defined.`, `Available ids are: ${yAxisIds.join(', ')}.`].join('\n'));
|
|
73
73
|
}
|
|
74
74
|
if (rightId !== null && !yAxis[rightId]) {
|
|
75
|
-
throw Error([`MUI X
|
|
75
|
+
throw Error([`MUI X: id used for right axis "${rightId}" is not defined.`, `Available ids are: ${yAxisIds.join(', ')}.`].join('\n'));
|
|
76
76
|
}
|
|
77
77
|
if (bottomId !== null && !xAxis[bottomId]) {
|
|
78
|
-
throw Error([`MUI X
|
|
78
|
+
throw Error([`MUI X: id used for bottom axis "${bottomId}" is not defined.`, `Available ids are: ${xAxisIds.join(', ')}.`].join('\n'));
|
|
79
79
|
}
|
|
80
80
|
const topAxisProps = mergeProps(topAxis, slots, slotProps);
|
|
81
81
|
const bottomAxisProps = mergeProps(bottomAxis, slots, slotProps);
|
|
@@ -85,7 +85,7 @@ function ChartsAxisHighlight(props) {
|
|
|
85
85
|
const isXError = isBandScaleX && xScale(axisX.value) === undefined;
|
|
86
86
|
const isYError = isBandScaleY && yScale(axisY.value) === undefined;
|
|
87
87
|
if (isXError || isYError) {
|
|
88
|
-
console.error([`MUI X
|
|
88
|
+
console.error([`MUI X: The position value provided for the axis is not valid for the current scale.`, `This probably means something is wrong with the data passed to the chart.`, `The ChartsAxisHighlight component will not be displayed.`].join('\n'));
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
91
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(React.Fragment, {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { AnchorPosition, Direction } from './utils';
|
|
3
2
|
import { ChartsLegendClasses } from './chartsLegendClasses';
|
|
4
3
|
import { LegendRendererProps } from './DefaultChartsLegend';
|
|
4
|
+
import { LegendPlacement } from './legend.types';
|
|
5
5
|
export interface ChartsLegendSlots {
|
|
6
6
|
/**
|
|
7
7
|
* Custom rendering of the legend.
|
|
@@ -12,11 +12,7 @@ export interface ChartsLegendSlots {
|
|
|
12
12
|
export interface ChartsLegendSlotProps {
|
|
13
13
|
legend?: Partial<LegendRendererProps>;
|
|
14
14
|
}
|
|
15
|
-
export
|
|
16
|
-
/**
|
|
17
|
-
* The position of the legend.
|
|
18
|
-
*/
|
|
19
|
-
position?: AnchorPosition;
|
|
15
|
+
export interface ChartsLegendProps extends LegendPlacement {
|
|
20
16
|
/**
|
|
21
17
|
* Override or extend the styles applied to the component.
|
|
22
18
|
*/
|
|
@@ -26,11 +22,6 @@ export type ChartsLegendProps = {
|
|
|
26
22
|
* @default false
|
|
27
23
|
*/
|
|
28
24
|
hidden?: boolean;
|
|
29
|
-
/**
|
|
30
|
-
* The direction of the legend layout.
|
|
31
|
-
* The default depends on the chart.
|
|
32
|
-
*/
|
|
33
|
-
direction?: Direction;
|
|
34
25
|
/**
|
|
35
26
|
* Overridable component slots.
|
|
36
27
|
* @default {}
|
|
@@ -41,7 +32,7 @@ export type ChartsLegendProps = {
|
|
|
41
32
|
* @default {}
|
|
42
33
|
*/
|
|
43
34
|
slotProps?: ChartsLegendSlotProps;
|
|
44
|
-
}
|
|
35
|
+
}
|
|
45
36
|
declare function ChartsLegend(inProps: ChartsLegendProps): React.JSX.Element;
|
|
46
37
|
declare namespace ChartsLegend {
|
|
47
38
|
var propTypes: any;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { ContinuousScaleName } from '../models/axis';
|
|
3
|
+
import { ChartsTextProps } from '../ChartsText';
|
|
4
|
+
import { ColorLegendSelector, LegendPlacement } from './legend.types';
|
|
5
|
+
type LabelFormatter = (params: {
|
|
6
|
+
value: number | Date;
|
|
7
|
+
formattedValue: string;
|
|
8
|
+
}) => string;
|
|
9
|
+
export interface ContinuousColorLegendProps extends LegendPlacement, ColorLegendSelector {
|
|
10
|
+
/**
|
|
11
|
+
* The label to display at the minimum side of the gradient.
|
|
12
|
+
* Can either be a string, or a function.
|
|
13
|
+
* @default ({ formattedValue }) => formattedValue
|
|
14
|
+
*/
|
|
15
|
+
minLabel?: string | LabelFormatter;
|
|
16
|
+
/**
|
|
17
|
+
* The label to display at the maximum side of the gradient.
|
|
18
|
+
* Can either be a string, or a function.
|
|
19
|
+
* If not defined, the formatted maximal value is display.
|
|
20
|
+
* @default ({ formattedValue }) => formattedValue
|
|
21
|
+
*/
|
|
22
|
+
maxLabel?: string | LabelFormatter;
|
|
23
|
+
/**
|
|
24
|
+
* A unique identifier for the gradient.
|
|
25
|
+
* @default auto-generated id
|
|
26
|
+
*/
|
|
27
|
+
id?: string;
|
|
28
|
+
/**
|
|
29
|
+
* The scale used to display gradient colors.
|
|
30
|
+
* @default 'linear'
|
|
31
|
+
*/
|
|
32
|
+
scaleType?: ContinuousScaleName;
|
|
33
|
+
/**
|
|
34
|
+
* The length of the gradient bar.
|
|
35
|
+
* Can be a number (in px) or a string with a percentage such as '50%'.
|
|
36
|
+
* The '100%' is the length of the svg.
|
|
37
|
+
* @default '50%'
|
|
38
|
+
*/
|
|
39
|
+
length?: number | string;
|
|
40
|
+
/**
|
|
41
|
+
* The thickness of the gradient bar.
|
|
42
|
+
* @default 5
|
|
43
|
+
*/
|
|
44
|
+
thickness?: number;
|
|
45
|
+
/**
|
|
46
|
+
* The alignment of the texts with the gradient bar.
|
|
47
|
+
* @default 'middle'
|
|
48
|
+
*/
|
|
49
|
+
align?: 'start' | 'middle' | 'end';
|
|
50
|
+
/**
|
|
51
|
+
* The space between the gradient bar and the labels.
|
|
52
|
+
* @default 4
|
|
53
|
+
*/
|
|
54
|
+
spacing?: number;
|
|
55
|
+
/**
|
|
56
|
+
* The style applied to labels.
|
|
57
|
+
* @default theme.typography.subtitle1
|
|
58
|
+
*/
|
|
59
|
+
labelStyle?: ChartsTextProps['style'];
|
|
60
|
+
}
|
|
61
|
+
declare function ContinuousColorLegend(props: ContinuousColorLegendProps): React.JSX.Element | null;
|
|
62
|
+
declare namespace ContinuousColorLegend {
|
|
63
|
+
var propTypes: any;
|
|
64
|
+
}
|
|
65
|
+
export { ContinuousColorLegend };
|