@mui/x-charts 7.6.2 → 7.7.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.
Files changed (197) hide show
  1. package/BarChart/BarChart.d.ts +1 -1
  2. package/BarChart/BarChart.js +21 -104
  3. package/BarChart/BarLabel/BarLabelPlot.d.ts +0 -3
  4. package/BarChart/BarLabel/BarLabelPlot.js +1 -24
  5. package/BarChart/BarPlot.js +2 -2
  6. package/BarChart/checkScaleErrors.d.ts +5 -9
  7. package/BarChart/types.d.ts +2 -2
  8. package/BarChart/useBarChartProps.d.ts +102 -0
  9. package/BarChart/useBarChartProps.js +143 -0
  10. package/CHANGELOG.md +163 -0
  11. package/ChartContainer/ChartContainer.d.ts +4 -4
  12. package/ChartContainer/ChartContainer.js +64 -31
  13. package/ChartContainer/useChartContainerHooks.d.ts +11 -0
  14. package/ChartContainer/useChartContainerHooks.js +34 -0
  15. package/ChartContainer/usePluginsMerge.d.ts +1 -2
  16. package/ChartsAxis/ChartsAxis.js +2 -2
  17. package/ChartsAxisHighlight/ChartsAxisHighlight.js +2 -2
  18. package/ChartsGrid/ChartsGrid.js +2 -2
  19. package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +2 -2
  20. package/ChartsOverlay/index.d.ts +1 -0
  21. package/ChartsReferenceLine/ChartsXReferenceLine.js +3 -5
  22. package/ChartsReferenceLine/ChartsYReferenceLine.js +3 -5
  23. package/ChartsText/ChartsText.js +1 -3
  24. package/ChartsTooltip/ChartsAxisTooltipContent.js +8 -14
  25. package/ChartsTooltip/ChartsItemTooltipContent.js +8 -18
  26. package/ChartsTooltip/DefaultChartsAxisTooltipContent.js +3 -3
  27. package/ChartsTooltip/DefaultChartsItemTooltipContent.js +1 -1
  28. package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +2 -2
  29. package/ChartsXAxis/ChartsXAxis.js +2 -2
  30. package/ChartsYAxis/ChartsYAxis.js +2 -2
  31. package/LineChart/AreaPlot.js +2 -2
  32. package/LineChart/LineChart.d.ts +2 -2
  33. package/LineChart/LineChart.js +25 -107
  34. package/LineChart/LineHighlightPlot.js +2 -2
  35. package/LineChart/LinePlot.js +2 -2
  36. package/LineChart/MarkPlot.js +2 -2
  37. package/LineChart/useLineChartProps.d.ts +117 -0
  38. package/LineChart/useLineChartProps.js +152 -0
  39. package/PieChart/PieChart.d.ts +2 -2
  40. package/PieChart/PieChart.js +1 -1
  41. package/ResponsiveChartContainer/ResizableContainer.d.ts +10 -0
  42. package/ResponsiveChartContainer/ResizableContainer.js +32 -0
  43. package/ResponsiveChartContainer/ResponsiveChartContainer.js +25 -22
  44. package/ScatterChart/ScatterChart.d.ts +1 -1
  45. package/ScatterChart/ScatterChart.js +21 -76
  46. package/ScatterChart/ScatterPlot.js +2 -2
  47. package/ScatterChart/useScatterChartProps.d.ts +86 -0
  48. package/ScatterChart/useScatterChartProps.js +116 -0
  49. package/SparkLineChart/SparkLineChart.d.ts +8 -3
  50. package/SparkLineChart/SparkLineChart.js +57 -1
  51. package/context/CartesianProvider/CartesianContext.d.ts +25 -0
  52. package/context/CartesianProvider/CartesianContext.js +21 -0
  53. package/context/CartesianProvider/CartesianProvider.d.ts +34 -0
  54. package/context/CartesianProvider/CartesianProvider.js +44 -0
  55. package/context/CartesianProvider/computeValue.d.ts +19 -0
  56. package/context/CartesianProvider/computeValue.js +89 -0
  57. package/context/CartesianProvider/getAxisExtremum.d.ts +4 -0
  58. package/context/CartesianProvider/getAxisExtremum.js +28 -0
  59. package/context/CartesianProvider/index.d.ts +9 -0
  60. package/context/CartesianProvider/index.js +51 -0
  61. package/context/CartesianProvider/normalizeAxis.d.ts +5 -0
  62. package/context/CartesianProvider/normalizeAxis.js +23 -0
  63. package/context/CartesianProvider/useCartesianContext.d.ts +2 -0
  64. package/context/CartesianProvider/useCartesianContext.js +17 -0
  65. package/context/ColorProvider.d.ts +12 -0
  66. package/context/ColorProvider.js +25 -0
  67. package/esm/BarChart/BarChart.js +21 -104
  68. package/esm/BarChart/BarLabel/BarLabelPlot.js +0 -23
  69. package/esm/BarChart/BarPlot.js +2 -2
  70. package/esm/BarChart/useBarChartProps.js +136 -0
  71. package/esm/ChartContainer/ChartContainer.js +65 -32
  72. package/esm/ChartContainer/useChartContainerHooks.js +24 -0
  73. package/esm/ChartsAxis/ChartsAxis.js +2 -2
  74. package/esm/ChartsAxisHighlight/ChartsAxisHighlight.js +2 -2
  75. package/esm/ChartsGrid/ChartsGrid.js +2 -2
  76. package/esm/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +2 -2
  77. package/esm/ChartsReferenceLine/ChartsXReferenceLine.js +3 -5
  78. package/esm/ChartsReferenceLine/ChartsYReferenceLine.js +3 -5
  79. package/esm/ChartsText/ChartsText.js +1 -3
  80. package/esm/ChartsTooltip/ChartsAxisTooltipContent.js +8 -14
  81. package/esm/ChartsTooltip/ChartsItemTooltipContent.js +8 -18
  82. package/esm/ChartsTooltip/DefaultChartsAxisTooltipContent.js +3 -3
  83. package/esm/ChartsTooltip/DefaultChartsItemTooltipContent.js +1 -1
  84. package/esm/ChartsVoronoiHandler/ChartsVoronoiHandler.js +2 -2
  85. package/esm/ChartsXAxis/ChartsXAxis.js +2 -2
  86. package/esm/ChartsYAxis/ChartsYAxis.js +2 -2
  87. package/esm/LineChart/AreaPlot.js +2 -2
  88. package/esm/LineChart/LineChart.js +25 -107
  89. package/esm/LineChart/LineHighlightPlot.js +2 -2
  90. package/esm/LineChart/LinePlot.js +2 -2
  91. package/esm/LineChart/MarkPlot.js +2 -2
  92. package/esm/LineChart/useLineChartProps.js +144 -0
  93. package/esm/PieChart/PieChart.js +1 -1
  94. package/esm/ResponsiveChartContainer/ResizableContainer.js +26 -0
  95. package/esm/ResponsiveChartContainer/ResponsiveChartContainer.js +24 -21
  96. package/esm/ScatterChart/ScatterChart.js +21 -76
  97. package/esm/ScatterChart/ScatterPlot.js +2 -2
  98. package/esm/ScatterChart/useScatterChartProps.js +108 -0
  99. package/esm/SparkLineChart/SparkLineChart.js +57 -1
  100. package/esm/context/CartesianProvider/CartesianContext.js +13 -0
  101. package/esm/context/CartesianProvider/CartesianProvider.js +37 -0
  102. package/esm/context/CartesianProvider/computeValue.js +82 -0
  103. package/esm/context/CartesianProvider/getAxisExtremum.js +21 -0
  104. package/esm/context/CartesianProvider/index.js +10 -0
  105. package/esm/context/CartesianProvider/normalizeAxis.js +15 -0
  106. package/esm/context/CartesianProvider/useCartesianContext.js +8 -0
  107. package/esm/context/ColorProvider.js +16 -0
  108. package/esm/hooks/index.js +1 -0
  109. package/esm/hooks/useAxisEvents.js +2 -2
  110. package/esm/hooks/useColor.js +9 -0
  111. package/esm/hooks/useColorScale.js +27 -0
  112. package/esm/hooks/useReducedMotion.js +7 -0
  113. package/esm/hooks/useScale.js +3 -4
  114. package/esm/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +2 -2
  115. package/esm/internals/index.js +31 -1
  116. package/esm/internals/warning.js +13 -0
  117. package/hooks/index.d.ts +1 -0
  118. package/hooks/index.js +12 -0
  119. package/hooks/useAxisEvents.js +2 -2
  120. package/hooks/useColor.d.ts +4 -0
  121. package/hooks/useColor.js +17 -0
  122. package/hooks/useColorScale.d.ts +4 -0
  123. package/hooks/useColorScale.js +37 -0
  124. package/hooks/useDrawingArea.d.ts +2 -8
  125. package/hooks/useReducedMotion.js +7 -0
  126. package/hooks/useScale.js +3 -6
  127. package/index.js +1 -1
  128. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.d.ts +2 -1
  129. package/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +2 -2
  130. package/internals/defaultizeColor.d.ts +8 -8
  131. package/internals/index.d.ts +22 -0
  132. package/internals/index.js +231 -0
  133. package/internals/warning.d.ts +1 -0
  134. package/internals/warning.js +19 -0
  135. package/models/axis.d.ts +1 -2
  136. package/models/plugin.d.ts +4 -1
  137. package/modern/BarChart/BarChart.js +21 -104
  138. package/modern/BarChart/BarLabel/BarLabelPlot.js +0 -23
  139. package/modern/BarChart/BarPlot.js +2 -2
  140. package/modern/BarChart/useBarChartProps.js +136 -0
  141. package/modern/ChartContainer/ChartContainer.js +65 -32
  142. package/modern/ChartContainer/useChartContainerHooks.js +24 -0
  143. package/modern/ChartsAxis/ChartsAxis.js +2 -2
  144. package/modern/ChartsAxisHighlight/ChartsAxisHighlight.js +2 -2
  145. package/modern/ChartsGrid/ChartsGrid.js +2 -2
  146. package/modern/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +2 -2
  147. package/modern/ChartsReferenceLine/ChartsXReferenceLine.js +3 -5
  148. package/modern/ChartsReferenceLine/ChartsYReferenceLine.js +3 -5
  149. package/modern/ChartsText/ChartsText.js +1 -3
  150. package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +8 -14
  151. package/modern/ChartsTooltip/ChartsItemTooltipContent.js +8 -18
  152. package/modern/ChartsTooltip/DefaultChartsAxisTooltipContent.js +3 -3
  153. package/modern/ChartsTooltip/DefaultChartsItemTooltipContent.js +1 -1
  154. package/modern/ChartsVoronoiHandler/ChartsVoronoiHandler.js +2 -2
  155. package/modern/ChartsXAxis/ChartsXAxis.js +2 -2
  156. package/modern/ChartsYAxis/ChartsYAxis.js +2 -2
  157. package/modern/LineChart/AreaPlot.js +2 -2
  158. package/modern/LineChart/LineChart.js +25 -107
  159. package/modern/LineChart/LineHighlightPlot.js +2 -2
  160. package/modern/LineChart/LinePlot.js +2 -2
  161. package/modern/LineChart/MarkPlot.js +2 -2
  162. package/modern/LineChart/useLineChartProps.js +144 -0
  163. package/modern/PieChart/PieChart.js +1 -1
  164. package/modern/ResponsiveChartContainer/ResizableContainer.js +26 -0
  165. package/modern/ResponsiveChartContainer/ResponsiveChartContainer.js +24 -21
  166. package/modern/ScatterChart/ScatterChart.js +21 -76
  167. package/modern/ScatterChart/ScatterPlot.js +2 -2
  168. package/modern/ScatterChart/useScatterChartProps.js +108 -0
  169. package/modern/SparkLineChart/SparkLineChart.js +57 -1
  170. package/modern/context/CartesianProvider/CartesianContext.js +13 -0
  171. package/modern/context/CartesianProvider/CartesianProvider.js +37 -0
  172. package/modern/context/CartesianProvider/computeValue.js +82 -0
  173. package/modern/context/CartesianProvider/getAxisExtremum.js +21 -0
  174. package/modern/context/CartesianProvider/index.js +10 -0
  175. package/modern/context/CartesianProvider/normalizeAxis.js +15 -0
  176. package/modern/context/CartesianProvider/useCartesianContext.js +8 -0
  177. package/modern/context/ColorProvider.js +16 -0
  178. package/modern/hooks/index.js +1 -0
  179. package/modern/hooks/useAxisEvents.js +2 -2
  180. package/modern/hooks/useColor.js +9 -0
  181. package/modern/hooks/useColorScale.js +27 -0
  182. package/modern/hooks/useReducedMotion.js +7 -0
  183. package/modern/hooks/useScale.js +3 -4
  184. package/modern/index.js +1 -1
  185. package/modern/internals/components/ChartsAxesGradients/ChartsAxesGradients.js +2 -2
  186. package/modern/internals/index.js +31 -1
  187. package/modern/internals/warning.js +13 -0
  188. package/package.json +4 -4
  189. package/themeAugmentation/components.d.ts +12 -12
  190. package/context/CartesianContextProvider.d.ts +0 -53
  191. package/context/CartesianContextProvider.js +0 -233
  192. package/esm/context/CartesianContextProvider.js +0 -224
  193. package/esm/internals/colorGetter.js +0 -22
  194. package/internals/colorGetter.d.ts +0 -7
  195. package/internals/colorGetter.js +0 -29
  196. package/modern/context/CartesianContextProvider.js +0 -224
  197. package/modern/internals/colorGetter.js +0 -22
@@ -1,224 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import * as React from 'react';
3
- import { scaleBand, scalePoint } from 'd3-scale';
4
- import { getExtremumX as getBarExtremumX, getExtremumY as getBarExtremumY } from '../BarChart/extremums';
5
- import { getExtremumX as getScatterExtremumX, getExtremumY as getScatterExtremumY } from '../ScatterChart/extremums';
6
- import { getExtremumX as getLineExtremumX, getExtremumY as getLineExtremumY } from '../LineChart/extremums';
7
- import { isBandScaleConfig, isPointScaleConfig } from '../models/axis';
8
- import { getScale } from '../internals/getScale';
9
- import { DEFAULT_X_AXIS_KEY, DEFAULT_Y_AXIS_KEY } from '../constants';
10
- import { getTickNumber } from '../hooks/useTicks';
11
- import { useDrawingArea } from '../hooks/useDrawingArea';
12
- import { getColorScale, getOrdinalColorScale } from '../internals/colorScale';
13
- import { useSeries } from '../hooks/useSeries';
14
- import { jsx as _jsx } from "react/jsx-runtime";
15
- const DEFAULT_CATEGORY_GAP_RATIO = 0.2;
16
- const DEFAULT_BAR_GAP_RATIO = 0.1;
17
-
18
- // TODO: those might be better placed in a distinct file
19
- const xExtremumGetters = {
20
- bar: getBarExtremumX,
21
- scatter: getScatterExtremumX,
22
- line: getLineExtremumX
23
- };
24
- const yExtremumGetters = {
25
- bar: getBarExtremumY,
26
- scatter: getScatterExtremumY,
27
- line: getLineExtremumY
28
- };
29
- export const CartesianContext = /*#__PURE__*/React.createContext({
30
- xAxis: {},
31
- yAxis: {},
32
- xAxisIds: [],
33
- yAxisIds: []
34
- });
35
- if (process.env.NODE_ENV !== 'production') {
36
- CartesianContext.displayName = 'CartesianContext';
37
- }
38
- function CartesianContextProvider(props) {
39
- const {
40
- xAxis: inXAxis,
41
- yAxis: inYAxis,
42
- dataset,
43
- children
44
- } = props;
45
- const formattedSeries = useSeries();
46
- const drawingArea = useDrawingArea();
47
- const xAxis = React.useMemo(() => inXAxis?.map(axisConfig => {
48
- const dataKey = axisConfig.dataKey;
49
- if (dataKey === undefined || axisConfig.data !== undefined) {
50
- return axisConfig;
51
- }
52
- if (dataset === undefined) {
53
- throw Error('MUI X Charts: x-axis uses `dataKey` but no `dataset` is provided.');
54
- }
55
- return _extends({}, axisConfig, {
56
- data: dataset.map(d => d[dataKey])
57
- });
58
- }), [inXAxis, dataset]);
59
- const yAxis = React.useMemo(() => inYAxis?.map(axisConfig => {
60
- const dataKey = axisConfig.dataKey;
61
- if (dataKey === undefined || axisConfig.data !== undefined) {
62
- return axisConfig;
63
- }
64
- if (dataset === undefined) {
65
- throw Error('MUI X Charts: y-axis uses `dataKey` but no `dataset` is provided.');
66
- }
67
- return _extends({}, axisConfig, {
68
- data: dataset.map(d => d[dataKey])
69
- });
70
- }), [inYAxis, dataset]);
71
- const value = React.useMemo(() => {
72
- const axisExtremumCallback = (acc, chartType, axis, getters, isDefaultAxis) => {
73
- const getter = getters[chartType];
74
- const series = formattedSeries[chartType]?.series ?? {};
75
- const [minChartTypeData, maxChartTypeData] = getter({
76
- series,
77
- axis,
78
- isDefaultAxis
79
- });
80
- const [minData, maxData] = acc;
81
- if (minData === null || maxData === null) {
82
- return [minChartTypeData, maxChartTypeData];
83
- }
84
- if (minChartTypeData === null || maxChartTypeData === null) {
85
- return [minData, maxData];
86
- }
87
- return [Math.min(minChartTypeData, minData), Math.max(maxChartTypeData, maxData)];
88
- };
89
- const getAxisExtremum = (axis, getters, isDefaultAxis) => {
90
- const charTypes = Object.keys(getters);
91
- return charTypes.reduce((acc, charType) => axisExtremumCallback(acc, charType, axis, getters, isDefaultAxis), [null, null]);
92
- };
93
- const allXAxis = [...(xAxis?.map((axis, index) => _extends({
94
- id: `defaultized-x-axis-${index}`
95
- }, axis)) ?? []),
96
- // Allows to specify an axis with id=DEFAULT_X_AXIS_KEY
97
- ...(xAxis === undefined || xAxis.findIndex(({
98
- id
99
- }) => id === DEFAULT_X_AXIS_KEY) === -1 ? [{
100
- id: DEFAULT_X_AXIS_KEY,
101
- scaleType: 'linear'
102
- }] : [])];
103
- const completedXAxis = {};
104
- allXAxis.forEach((axis, axisIndex) => {
105
- const isDefaultAxis = axisIndex === 0;
106
- const [minData, maxData] = getAxisExtremum(axis, xExtremumGetters, isDefaultAxis);
107
- const range = axis.reverse ? [drawingArea.left + drawingArea.width, drawingArea.left] : [drawingArea.left, drawingArea.left + drawingArea.width];
108
- if (isBandScaleConfig(axis)) {
109
- const categoryGapRatio = axis.categoryGapRatio ?? DEFAULT_CATEGORY_GAP_RATIO;
110
- const barGapRatio = axis.barGapRatio ?? DEFAULT_BAR_GAP_RATIO;
111
- completedXAxis[axis.id] = _extends({
112
- categoryGapRatio,
113
- barGapRatio
114
- }, axis, {
115
- scale: scaleBand(axis.data, range).paddingInner(categoryGapRatio).paddingOuter(categoryGapRatio / 2),
116
- tickNumber: axis.data.length,
117
- colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? getOrdinalColorScale(_extends({
118
- values: axis.data
119
- }, axis.colorMap)) : getColorScale(axis.colorMap))
120
- });
121
- }
122
- if (isPointScaleConfig(axis)) {
123
- completedXAxis[axis.id] = _extends({}, axis, {
124
- scale: scalePoint(axis.data, range),
125
- tickNumber: axis.data.length,
126
- colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? getOrdinalColorScale(_extends({
127
- values: axis.data
128
- }, axis.colorMap)) : getColorScale(axis.colorMap))
129
- });
130
- }
131
- if (axis.scaleType === 'band' || axis.scaleType === 'point') {
132
- // Could be merged with the two previous "if conditions" but then TS does not get that `axis.scaleType` can't be `band` or `point`.
133
- return;
134
- }
135
- const scaleType = axis.scaleType ?? 'linear';
136
- const extremums = [axis.min ?? minData, axis.max ?? maxData];
137
- const tickNumber = getTickNumber(_extends({}, axis, {
138
- range,
139
- domain: extremums
140
- }));
141
- const niceScale = getScale(scaleType, extremums, range).nice(tickNumber);
142
- const niceDomain = niceScale.domain();
143
- const domain = [axis.min ?? niceDomain[0], axis.max ?? niceDomain[1]];
144
- completedXAxis[axis.id] = _extends({}, axis, {
145
- scaleType,
146
- scale: niceScale.domain(domain),
147
- tickNumber,
148
- colorScale: axis.colorMap && getColorScale(axis.colorMap)
149
- });
150
- });
151
- const allYAxis = [...(yAxis?.map((axis, index) => _extends({
152
- id: `defaultized-y-axis-${index}`
153
- }, axis)) ?? []), ...(yAxis === undefined || yAxis.findIndex(({
154
- id
155
- }) => id === DEFAULT_Y_AXIS_KEY) === -1 ? [{
156
- id: DEFAULT_Y_AXIS_KEY,
157
- scaleType: 'linear'
158
- }] : [])];
159
- const completedYAxis = {};
160
- allYAxis.forEach((axis, axisIndex) => {
161
- const isDefaultAxis = axisIndex === 0;
162
- const [minData, maxData] = getAxisExtremum(axis, yExtremumGetters, isDefaultAxis);
163
- const range = axis.reverse ? [drawingArea.top, drawingArea.top + drawingArea.height] : [drawingArea.top + drawingArea.height, drawingArea.top];
164
- if (isBandScaleConfig(axis)) {
165
- const categoryGapRatio = axis.categoryGapRatio ?? DEFAULT_CATEGORY_GAP_RATIO;
166
- completedYAxis[axis.id] = _extends({
167
- categoryGapRatio,
168
- barGapRatio: 0
169
- }, axis, {
170
- scale: scaleBand(axis.data, [range[1], range[0]]).paddingInner(categoryGapRatio).paddingOuter(categoryGapRatio / 2),
171
- tickNumber: axis.data.length,
172
- colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? getOrdinalColorScale(_extends({
173
- values: axis.data
174
- }, axis.colorMap)) : getColorScale(axis.colorMap))
175
- });
176
- }
177
- if (isPointScaleConfig(axis)) {
178
- completedYAxis[axis.id] = _extends({}, axis, {
179
- scale: scalePoint(axis.data, [range[1], range[0]]),
180
- tickNumber: axis.data.length,
181
- colorScale: axis.colorMap && (axis.colorMap.type === 'ordinal' ? getOrdinalColorScale(_extends({
182
- values: axis.data
183
- }, axis.colorMap)) : getColorScale(axis.colorMap))
184
- });
185
- }
186
- if (axis.scaleType === 'band' || axis.scaleType === 'point') {
187
- // Could be merged with the two previous "if conditions" but then TS does not get that `axis.scaleType` can't be `band` or `point`.
188
- return;
189
- }
190
- const scaleType = axis.scaleType ?? 'linear';
191
- const extremums = [axis.min ?? minData, axis.max ?? maxData];
192
- const tickNumber = getTickNumber(_extends({}, axis, {
193
- range,
194
- domain: extremums
195
- }));
196
- const niceScale = getScale(scaleType, extremums, range).nice(tickNumber);
197
- const niceDomain = niceScale.domain();
198
- const domain = [axis.min ?? niceDomain[0], axis.max ?? niceDomain[1]];
199
- completedYAxis[axis.id] = _extends({}, axis, {
200
- scaleType,
201
- scale: niceScale.domain(domain),
202
- tickNumber,
203
- colorScale: axis.colorMap && getColorScale(axis.colorMap)
204
- });
205
- });
206
- return {
207
- xAxis: completedXAxis,
208
- yAxis: completedYAxis,
209
- xAxisIds: allXAxis.map(({
210
- id
211
- }) => id),
212
- yAxisIds: allYAxis.map(({
213
- id
214
- }) => id)
215
- };
216
- }, [drawingArea.height, drawingArea.left, drawingArea.top, drawingArea.width, formattedSeries, xAxis, yAxis]);
217
-
218
- // @ts-ignore
219
- return /*#__PURE__*/_jsx(CartesianContext.Provider, {
220
- value: value,
221
- children: children
222
- });
223
- }
224
- export { CartesianContextProvider };
@@ -1,22 +0,0 @@
1
- import getBarColor from '../BarChart/getColor';
2
- import getLineColor from '../LineChart/getColor';
3
- import getScatterColor from '../ScatterChart/getColor';
4
- import getPieColor from '../PieChart/getColor';
5
- function getColor(series, xAxis, yAxis, zAxis) {
6
- if (xAxis !== undefined && yAxis !== undefined) {
7
- if (series.type === 'bar') {
8
- return getBarColor(series, xAxis, yAxis);
9
- }
10
- if (series.type === 'line') {
11
- return getLineColor(series, xAxis, yAxis);
12
- }
13
- if (series.type === 'scatter') {
14
- return getScatterColor(series, xAxis, yAxis, zAxis);
15
- }
16
- }
17
- if (series.type === 'pie') {
18
- return getPieColor(series);
19
- }
20
- throw Error(`MUI X Charts: getColor called with unexpected arguments for series with id "${series.id}"`);
21
- }
22
- export default getColor;