@mui/x-charts 7.22.2 → 8.0.0-alpha.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.
Files changed (189) hide show
  1. package/BarChart/BarChart.d.ts +7 -7
  2. package/BarChart/BarChart.js +7 -29
  3. package/BarChart/BarElement.d.ts +1 -1
  4. package/BarChart/BarLabel/BarLabelItem.d.ts +1 -1
  5. package/BarChart/BarPlot.js +12 -4
  6. package/BarChart/extremums.js +3 -3
  7. package/BarChart/useBarChartProps.d.ts +2 -2
  8. package/BarChart/useBarChartProps.js +3 -4
  9. package/CHANGELOG.md +142 -155
  10. package/ChartContainer/ChartContainer.d.ts +16 -33
  11. package/ChartContainer/ChartContainer.js +22 -41
  12. package/{ResponsiveChartContainer → ChartContainer}/ResizableContainer.d.ts +2 -2
  13. package/{ResponsiveChartContainer → ChartContainer}/useChartContainerDimensions.d.ts +1 -1
  14. package/{ResponsiveChartContainer → ChartContainer}/useChartContainerDimensions.js +6 -4
  15. package/ChartContainer/useChartContainerProps.d.ts +11 -94
  16. package/ChartContainer/useChartContainerProps.js +42 -58
  17. package/ChartsLegend/ChartsLegend.js +0 -3
  18. package/ChartsLegend/DefaultChartsLegend.d.ts +0 -5
  19. package/ChartsLegend/DefaultChartsLegend.js +1 -12
  20. package/ChartsLegend/LegendPerItem.d.ts +1 -1
  21. package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +2 -2
  22. package/ChartsOverlay/ChartsOverlay.d.ts +1 -1
  23. package/ChartsTooltip/ChartsAxisTooltipContent.js +3 -3
  24. package/ChartsTooltip/ChartsItemTooltipContent.js +3 -3
  25. package/ChartsTooltip/ChartsTooltip.js +45 -6
  26. package/ChartsTooltip/useAxisTooltip.js +3 -3
  27. package/ChartsTooltip/useItemTooltip.js +3 -3
  28. package/ChartsTooltip/utils.d.ts +5 -13
  29. package/ChartsTooltip/utils.js +45 -42
  30. package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +3 -5
  31. package/Gauge/GaugeContainer.js +1 -1
  32. package/LineChart/AreaElement.d.ts +1 -1
  33. package/LineChart/AreaPlot.js +2 -6
  34. package/LineChart/LineChart.d.ts +7 -7
  35. package/LineChart/LineChart.js +7 -29
  36. package/LineChart/LineElement.d.ts +1 -1
  37. package/LineChart/LineHighlightPlot.d.ts +1 -1
  38. package/LineChart/LineHighlightPlot.js +2 -6
  39. package/LineChart/LinePlot.js +2 -6
  40. package/LineChart/MarkPlot.js +2 -6
  41. package/LineChart/extremums.js +10 -6
  42. package/LineChart/useLineChartProps.d.ts +2 -2
  43. package/LineChart/useLineChartProps.js +3 -4
  44. package/PieChart/PieArc.d.ts +0 -5
  45. package/PieChart/PieArc.js +1 -10
  46. package/PieChart/PieArcPlot.js +0 -5
  47. package/PieChart/PieChart.d.ts +9 -32
  48. package/PieChart/PieChart.js +17 -102
  49. package/README.md +2 -2
  50. package/ScatterChart/ScatterChart.d.ts +7 -7
  51. package/ScatterChart/ScatterChart.js +7 -29
  52. package/ScatterChart/ScatterPlot.js +3 -6
  53. package/ScatterChart/extremums.js +6 -6
  54. package/ScatterChart/useScatterChartProps.d.ts +2 -2
  55. package/ScatterChart/useScatterChartProps.js +3 -4
  56. package/SparkLineChart/SparkLineChart.d.ts +4 -4
  57. package/SparkLineChart/SparkLineChart.js +2 -2
  58. package/context/CartesianProvider/defaultizeAxis.d.ts +1 -1
  59. package/context/ChartDataProvider/ChartDataProvider.d.ts +41 -0
  60. package/{ResponsiveChartContainer/ResponsiveChartContainer.js → context/ChartDataProvider/ChartDataProvider.js} +46 -27
  61. package/context/ChartDataProvider/index.d.ts +1 -0
  62. package/context/ChartDataProvider/index.js +1 -0
  63. package/context/ChartDataProvider/useChartDataProviderProps.d.ts +97 -0
  64. package/context/ChartDataProvider/useChartDataProviderProps.js +86 -0
  65. package/{ChartContainer → context/ChartDataProvider}/useDefaultizeAxis.d.ts +12 -12
  66. package/{ChartContainer → context/ChartDataProvider}/useDefaultizeAxis.js +1 -1
  67. package/context/HighlightedProvider/HighlightedContext.d.ts +0 -8
  68. package/context/HighlightedProvider/HighlightedProvider.js +1 -16
  69. package/context/PluginProvider/ExtremumGetter.types.d.ts +2 -2
  70. package/context/ZAxisContextProvider.d.ts +1 -1
  71. package/index.d.ts +1 -2
  72. package/index.js +2 -3
  73. package/internals/defaultizeColor.d.ts +1 -8
  74. package/internals/getSymbol.js +19 -3
  75. package/internals/index.d.ts +5 -5
  76. package/internals/index.js +5 -5
  77. package/internals/useStringInterpolator.js +1 -0
  78. package/models/seriesType/bar.d.ts +1 -1
  79. package/models/seriesType/common.d.ts +0 -10
  80. package/models/seriesType/config.d.ts +1 -1
  81. package/models/seriesType/line.d.ts +1 -1
  82. package/models/seriesType/pie.d.ts +1 -1
  83. package/models/seriesType/scatter.d.ts +1 -6
  84. package/modern/BarChart/BarChart.js +7 -29
  85. package/modern/BarChart/BarPlot.js +12 -4
  86. package/modern/BarChart/extremums.js +3 -3
  87. package/modern/BarChart/useBarChartProps.js +3 -4
  88. package/modern/ChartContainer/ChartContainer.js +22 -41
  89. package/modern/{ResponsiveChartContainer → ChartContainer}/useChartContainerDimensions.js +6 -4
  90. package/modern/ChartContainer/useChartContainerProps.js +42 -58
  91. package/modern/ChartsLegend/ChartsLegend.js +0 -3
  92. package/modern/ChartsLegend/DefaultChartsLegend.js +1 -12
  93. package/modern/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +2 -2
  94. package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +3 -3
  95. package/modern/ChartsTooltip/ChartsItemTooltipContent.js +3 -3
  96. package/modern/ChartsTooltip/ChartsTooltip.js +45 -6
  97. package/modern/ChartsTooltip/useAxisTooltip.js +3 -3
  98. package/modern/ChartsTooltip/useItemTooltip.js +3 -3
  99. package/modern/ChartsTooltip/utils.js +45 -42
  100. package/modern/ChartsVoronoiHandler/ChartsVoronoiHandler.js +3 -5
  101. package/modern/Gauge/GaugeContainer.js +1 -1
  102. package/modern/LineChart/AreaPlot.js +2 -6
  103. package/modern/LineChart/LineChart.js +7 -29
  104. package/modern/LineChart/LineHighlightPlot.js +2 -6
  105. package/modern/LineChart/LinePlot.js +2 -6
  106. package/modern/LineChart/MarkPlot.js +2 -6
  107. package/modern/LineChart/extremums.js +10 -6
  108. package/modern/LineChart/useLineChartProps.js +3 -4
  109. package/modern/PieChart/PieArc.js +1 -10
  110. package/modern/PieChart/PieArcPlot.js +0 -5
  111. package/modern/PieChart/PieChart.js +17 -102
  112. package/modern/ScatterChart/ScatterChart.js +7 -29
  113. package/modern/ScatterChart/ScatterPlot.js +3 -6
  114. package/modern/ScatterChart/extremums.js +6 -6
  115. package/modern/ScatterChart/useScatterChartProps.js +3 -4
  116. package/modern/SparkLineChart/SparkLineChart.js +2 -2
  117. package/modern/{ResponsiveChartContainer/ResponsiveChartContainer.js → context/ChartDataProvider/ChartDataProvider.js} +46 -27
  118. package/modern/context/ChartDataProvider/index.js +1 -0
  119. package/modern/context/ChartDataProvider/useChartDataProviderProps.js +86 -0
  120. package/modern/{ChartContainer → context/ChartDataProvider}/useDefaultizeAxis.js +1 -1
  121. package/modern/context/HighlightedProvider/HighlightedProvider.js +1 -16
  122. package/modern/index.js +2 -3
  123. package/modern/internals/getSymbol.js +19 -3
  124. package/modern/internals/index.js +5 -5
  125. package/modern/internals/useStringInterpolator.js +1 -0
  126. package/node/BarChart/BarChart.js +7 -29
  127. package/node/BarChart/BarPlot.js +11 -3
  128. package/node/BarChart/extremums.js +3 -3
  129. package/node/BarChart/useBarChartProps.js +3 -4
  130. package/node/ChartContainer/ChartContainer.js +21 -40
  131. package/node/{ResponsiveChartContainer → ChartContainer}/useChartContainerDimensions.js +6 -4
  132. package/node/ChartContainer/useChartContainerProps.js +42 -59
  133. package/node/ChartsLegend/ChartsLegend.js +0 -3
  134. package/node/ChartsLegend/DefaultChartsLegend.js +1 -12
  135. package/node/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +2 -2
  136. package/node/ChartsTooltip/ChartsAxisTooltipContent.js +3 -3
  137. package/node/ChartsTooltip/ChartsItemTooltipContent.js +3 -3
  138. package/node/ChartsTooltip/ChartsTooltip.js +44 -5
  139. package/node/ChartsTooltip/useAxisTooltip.js +3 -3
  140. package/node/ChartsTooltip/useItemTooltip.js +3 -3
  141. package/node/ChartsTooltip/utils.js +46 -44
  142. package/node/ChartsVoronoiHandler/ChartsVoronoiHandler.js +3 -5
  143. package/node/Gauge/GaugeContainer.js +1 -1
  144. package/node/LineChart/AreaPlot.js +2 -6
  145. package/node/LineChart/LineChart.js +7 -29
  146. package/node/LineChart/LineHighlightPlot.js +2 -6
  147. package/node/LineChart/LinePlot.js +2 -6
  148. package/node/LineChart/MarkPlot.js +2 -6
  149. package/node/LineChart/extremums.js +10 -6
  150. package/node/LineChart/useLineChartProps.js +3 -4
  151. package/node/PieChart/PieArc.js +1 -10
  152. package/node/PieChart/PieArcPlot.js +0 -5
  153. package/node/PieChart/PieChart.js +17 -102
  154. package/node/ScatterChart/ScatterChart.js +7 -29
  155. package/node/ScatterChart/ScatterPlot.js +3 -6
  156. package/node/ScatterChart/extremums.js +6 -6
  157. package/node/ScatterChart/useScatterChartProps.js +3 -4
  158. package/node/SparkLineChart/SparkLineChart.js +2 -2
  159. package/node/{ResponsiveChartContainer/ResponsiveChartContainer.js → context/ChartDataProvider/ChartDataProvider.js} +45 -26
  160. package/node/context/ChartDataProvider/index.js +16 -0
  161. package/node/context/ChartDataProvider/useChartDataProviderProps.js +94 -0
  162. package/node/{ChartContainer → context/ChartDataProvider}/useDefaultizeAxis.js +1 -1
  163. package/node/context/HighlightedProvider/HighlightedProvider.js +1 -16
  164. package/node/index.js +5 -16
  165. package/node/internals/getSymbol.js +19 -3
  166. package/node/internals/index.js +37 -29
  167. package/node/internals/useStringInterpolator.js +2 -0
  168. package/package.json +4 -4
  169. package/ResponsiveChartContainer/ResponsiveChartContainer.d.ts +0 -24
  170. package/ResponsiveChartContainer/index.d.ts +0 -1
  171. package/ResponsiveChartContainer/index.js +0 -1
  172. package/ResponsiveChartContainer/package.json +0 -6
  173. package/ResponsiveChartContainer/useResponsiveChartContainerProps.d.ts +0 -19
  174. package/ResponsiveChartContainer/useResponsiveChartContainerProps.js +0 -70
  175. package/internals/SlotComponentPropsFromProps.d.ts +0 -1
  176. package/internals/SlotComponentPropsFromProps.js +0 -1
  177. package/models/helpers.d.ts +0 -3
  178. package/models/helpers.js +0 -1
  179. package/modern/ResponsiveChartContainer/index.js +0 -1
  180. package/modern/ResponsiveChartContainer/useResponsiveChartContainerProps.js +0 -70
  181. package/modern/internals/SlotComponentPropsFromProps.js +0 -1
  182. package/modern/models/helpers.js +0 -1
  183. package/node/ResponsiveChartContainer/index.js +0 -16
  184. package/node/ResponsiveChartContainer/useResponsiveChartContainerProps.js +0 -77
  185. package/node/internals/SlotComponentPropsFromProps.js +0 -5
  186. package/node/models/helpers.js +0 -5
  187. /package/{ResponsiveChartContainer → ChartContainer}/ResizableContainer.js +0 -0
  188. /package/modern/{ResponsiveChartContainer → ChartContainer}/ResizableContainer.js +0 -0
  189. /package/node/{ResponsiveChartContainer → ChartContainer}/ResizableContainer.js +0 -0
@@ -2,17 +2,14 @@
2
2
 
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
5
- const _excluded = ["xAxis", "yAxis", "series", "width", "height", "margin", "colors", "sx", "tooltip", "axisHighlight", "skipAnimation", "legend", "topAxis", "leftAxis", "rightAxis", "bottomAxis", "children", "slots", "slotProps", "onItemClick", "loading", "highlightedItem", "onHighlightChange", "className"];
5
+ const _excluded = ["xAxis", "yAxis", "series", "width", "height", "margin", "colors", "sx", "tooltip", "skipAnimation", "hideLegend", "children", "slots", "slotProps", "onItemClick", "loading", "highlightedItem", "onHighlightChange", "className"];
6
6
  import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { useRtl } from '@mui/system/RtlProvider';
9
9
  import { useThemeProps } from '@mui/material/styles';
10
- import { ResponsiveChartContainer } from "../ResponsiveChartContainer/index.js";
11
- import { ChartsAxis } from "../ChartsAxis/ChartsAxis.js";
12
- import { DEFAULT_X_AXIS_KEY } from "../constants/index.js";
10
+ import { ChartContainer } from "../ChartContainer/index.js";
13
11
  import { ChartsTooltip } from "../ChartsTooltip/index.js";
14
12
  import { ChartsLegend } from "../ChartsLegend/index.js";
15
- import { ChartsAxisHighlight } from "../ChartsAxisHighlight/index.js";
16
13
  import { PiePlot } from "./PiePlot.js";
17
14
  import { ChartsOverlay } from "../ChartsOverlay/index.js";
18
15
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
@@ -45,8 +42,6 @@ const PieChart = /*#__PURE__*/React.forwardRef(function PieChart(inProps, ref) {
45
42
  name: 'MuiPieChart'
46
43
  });
47
44
  const {
48
- xAxis,
49
- yAxis,
50
45
  series,
51
46
  width,
52
47
  height,
@@ -56,16 +51,8 @@ const PieChart = /*#__PURE__*/React.forwardRef(function PieChart(inProps, ref) {
56
51
  tooltip = {
57
52
  trigger: 'item'
58
53
  },
59
- axisHighlight = {
60
- x: 'none',
61
- y: 'none'
62
- },
63
54
  skipAnimation,
64
- legend: legendProps,
65
- topAxis = null,
66
- leftAxis = null,
67
- rightAxis = null,
68
- bottomAxis = null,
55
+ hideLegend,
69
56
  children,
70
57
  slots,
71
58
  slotProps,
@@ -78,14 +65,7 @@ const PieChart = /*#__PURE__*/React.forwardRef(function PieChart(inProps, ref) {
78
65
  other = _objectWithoutPropertiesLoose(props, _excluded);
79
66
  const isRtl = useRtl();
80
67
  const margin = _extends({}, isRtl ? defaultRTLMargin : defaultMargin, marginProps);
81
- const legend = _extends({
82
- direction: 'column',
83
- position: {
84
- vertical: 'middle',
85
- horizontal: isRtl ? 'left' : 'right'
86
- }
87
- }, legendProps);
88
- return /*#__PURE__*/_jsxs(ResponsiveChartContainer, _extends({}, other, {
68
+ return /*#__PURE__*/_jsxs(ChartContainer, _extends({}, other, {
89
69
  ref: ref,
90
70
  series: series.map(s => _extends({
91
71
  type: 'pie'
@@ -93,27 +73,14 @@ const PieChart = /*#__PURE__*/React.forwardRef(function PieChart(inProps, ref) {
93
73
  width: width,
94
74
  height: height,
95
75
  margin: margin,
96
- xAxis: xAxis ?? [{
97
- id: DEFAULT_X_AXIS_KEY,
98
- scaleType: 'point',
99
- data: [...new Array(Math.max(...series.map(s => s.data.length)))].map((_, index) => index)
100
- }],
101
- yAxis: yAxis,
102
76
  colors: colors,
103
77
  sx: sx,
104
- disableAxisListener: tooltip?.trigger !== 'axis' && axisHighlight?.x === 'none' && axisHighlight?.y === 'none',
78
+ disableAxisListener: true,
105
79
  highlightedItem: highlightedItem,
106
80
  onHighlightChange: onHighlightChange,
107
81
  className: className,
108
82
  skipAnimation: skipAnimation,
109
- children: [/*#__PURE__*/_jsx(ChartsAxis, {
110
- topAxis: topAxis,
111
- leftAxis: leftAxis,
112
- rightAxis: rightAxis,
113
- bottomAxis: bottomAxis,
114
- slots: slots,
115
- slotProps: slotProps
116
- }), /*#__PURE__*/_jsx(PiePlot, {
83
+ children: [/*#__PURE__*/_jsx(PiePlot, {
117
84
  slots: slots,
118
85
  slotProps: slotProps,
119
86
  onItemClick: onItemClick
@@ -121,10 +88,15 @@ const PieChart = /*#__PURE__*/React.forwardRef(function PieChart(inProps, ref) {
121
88
  loading: loading,
122
89
  slots: slots,
123
90
  slotProps: slotProps
124
- }), /*#__PURE__*/_jsx(ChartsLegend, _extends({}, legend, {
91
+ }), !hideLegend && /*#__PURE__*/_jsx(ChartsLegend, {
92
+ direction: "column",
93
+ position: {
94
+ vertical: 'middle',
95
+ horizontal: isRtl ? 'left' : 'right'
96
+ },
125
97
  slots: slots,
126
98
  slotProps: slotProps
127
- })), /*#__PURE__*/_jsx(ChartsAxisHighlight, _extends({}, axisHighlight)), !loading && /*#__PURE__*/_jsx(ChartsTooltip, _extends({}, tooltip, {
99
+ }), !loading && /*#__PURE__*/_jsx(ChartsTooltip, _extends({}, tooltip, {
128
100
  slots: slots,
129
101
  slotProps: slotProps
130
102
  })), children]
@@ -135,21 +107,6 @@ process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
135
107
  // | These PropTypes are generated from the TypeScript type definitions |
136
108
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
137
109
  // ----------------------------------------------------------------------
138
- /**
139
- * The configuration of axes highlight.
140
- * @see See {@link https://mui.com/x/react-charts/highlighting highlighting docs} for more details.
141
- * @default { x: 'none', y: 'none' }
142
- */
143
- axisHighlight: PropTypes.shape({
144
- x: PropTypes.oneOf(['band', 'line', 'none']),
145
- y: PropTypes.oneOf(['band', 'line', 'none'])
146
- }),
147
- /**
148
- * Indicate which axis to display the bottom of the charts.
149
- * Can be a string (the id of the axis) or an object `ChartsXAxisProps`.
150
- * @default null
151
- */
152
- bottomAxis: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
153
110
  children: PropTypes.node,
154
111
  className: PropTypes.string,
155
112
  /**
@@ -172,6 +129,10 @@ process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
172
129
  * The height of the chart in px. If not defined, it takes the height of the parent element.
173
130
  */
174
131
  height: PropTypes.number,
132
+ /**
133
+ * If `true`, the legend is not rendered.
134
+ */
135
+ hideLegend: PropTypes.bool,
175
136
  /**
176
137
  * The item currently highlighted. Turns highlighting into a controlled prop.
177
138
  */
@@ -179,40 +140,6 @@ process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
179
140
  dataIndex: PropTypes.number,
180
141
  seriesId: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
181
142
  }),
182
- /**
183
- * Indicate which axis to display the left of the charts.
184
- * Can be a string (the id of the axis) or an object `ChartsYAxisProps`.
185
- * @default null
186
- */
187
- leftAxis: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
188
- /**
189
- * The props of the legend.
190
- * @default { direction: 'column', position: { vertical: 'middle', horizontal: 'right' } }
191
- * @deprecated Consider using `slotProps.legend` instead.
192
- */
193
- legend: PropTypes.shape({
194
- classes: PropTypes.object,
195
- direction: PropTypes.oneOf(['column', 'row']),
196
- hidden: PropTypes.bool,
197
- itemGap: PropTypes.number,
198
- itemMarkHeight: PropTypes.number,
199
- itemMarkWidth: PropTypes.number,
200
- labelStyle: PropTypes.object,
201
- markGap: PropTypes.number,
202
- onItemClick: PropTypes.func,
203
- padding: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
204
- bottom: PropTypes.number,
205
- left: PropTypes.number,
206
- right: PropTypes.number,
207
- top: PropTypes.number
208
- })]),
209
- position: PropTypes.shape({
210
- horizontal: PropTypes.oneOf(['left', 'middle', 'right']).isRequired,
211
- vertical: PropTypes.oneOf(['bottom', 'middle', 'top']).isRequired
212
- }),
213
- slotProps: PropTypes.object,
214
- slots: PropTypes.object
215
- }),
216
143
  /**
217
144
  * If `true`, a loading overlay is displayed.
218
145
  * @default false
@@ -250,12 +177,6 @@ process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
250
177
  * @default false
251
178
  */
252
179
  resolveSizeBeforeRender: PropTypes.bool,
253
- /**
254
- * Indicate which axis to display the right of the charts.
255
- * Can be a string (the id of the axis) or an object `ChartsYAxisProps`.
256
- * @default null
257
- */
258
- rightAxis: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
259
180
  /**
260
181
  * The series to display in the pie chart.
261
182
  * An array of [[PieSeriesType]] objects.
@@ -291,12 +212,6 @@ process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
291
212
  slots: PropTypes.object,
292
213
  trigger: PropTypes.oneOf(['axis', 'item', 'none'])
293
214
  }),
294
- /**
295
- * Indicate which axis to display the top of the charts.
296
- * Can be a string (the id of the axis) or an object `ChartsXAxisProps`.
297
- * @default null
298
- */
299
- topAxis: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
300
215
  viewBox: PropTypes.shape({
301
216
  height: PropTypes.number,
302
217
  width: PropTypes.number,
package/README.md CHANGED
@@ -11,11 +11,11 @@ Install the package in your project directory with:
11
11
  npm install @mui/x-charts
12
12
  ```
13
13
 
14
- This component has the following peer dependencies that you will need to install as well.
14
+ This component has the following peer dependencies that you need to install as well.
15
15
 
16
16
  ```json
17
17
  "peerDependencies": {
18
- "@mui/material": "^5.15.14",
18
+ "@mui/material": "^5.15.14 || ^6.0.0",
19
19
  "react": "^17.0.0 || ^18.0.0",
20
20
  "react-dom": "^17.0.0 || ^18.0.0"
21
21
  },
@@ -1,11 +1,11 @@
1
1
  import * as React from 'react';
2
+ import { MakeOptional } from '@mui/x-internals/types';
2
3
  import { ScatterPlotProps, ScatterPlotSlotProps, ScatterPlotSlots } from './ScatterPlot';
3
- import { ResponsiveChartContainerProps } from '../ResponsiveChartContainer';
4
+ import { ChartContainerProps } from '../ChartContainer';
4
5
  import { ChartsAxisProps } from '../ChartsAxis';
5
6
  import { ScatterSeriesType } from '../models/seriesType/scatter';
6
- import { MakeOptional } from '../models/helpers';
7
7
  import { ChartsTooltipProps, ChartsTooltipSlotProps, ChartsTooltipSlots } from '../ChartsTooltip';
8
- import { ChartsLegendProps, ChartsLegendSlotProps, ChartsLegendSlots } from '../ChartsLegend';
8
+ import { ChartsLegendSlotProps, ChartsLegendSlots } from '../ChartsLegend';
9
9
  import { ChartsOverlayProps, ChartsOverlaySlotProps, ChartsOverlaySlots } from '../ChartsOverlay';
10
10
  import { ChartsAxisHighlightProps } from '../ChartsAxisHighlight';
11
11
  import { ChartsAxisSlots, ChartsAxisSlotProps } from '../models/axis';
@@ -16,7 +16,7 @@ export interface ScatterChartSlots extends ChartsAxisSlots, ScatterPlotSlots, Ch
16
16
  }
17
17
  export interface ScatterChartSlotProps extends ChartsAxisSlotProps, ScatterPlotSlotProps, ChartsLegendSlotProps, ChartsTooltipSlotProps<'scatter'>, ChartsOverlaySlotProps {
18
18
  }
19
- export interface ScatterChartProps extends Omit<ResponsiveChartContainerProps, 'series' | 'plugins'>, Omit<ZAxisContextProviderProps, 'children' | 'dataset'>, Omit<ChartsAxisProps, 'slots' | 'slotProps'>, Omit<ChartsOverlayProps, 'slots' | 'slotProps'>, Omit<ChartsVoronoiHandlerProps, 'onItemClick'> {
19
+ export interface ScatterChartProps extends Omit<ChartContainerProps, 'series' | 'plugins'>, Omit<ZAxisContextProviderProps, 'children' | 'dataset'>, Omit<ChartsAxisProps, 'slots' | 'slotProps'>, Omit<ChartsOverlayProps, 'slots' | 'slotProps'>, Omit<ChartsVoronoiHandlerProps, 'onItemClick'> {
20
20
  /**
21
21
  * The series to display in the scatter chart.
22
22
  * An array of [[ScatterSeriesType]] objects.
@@ -44,9 +44,9 @@ export interface ScatterChartProps extends Omit<ResponsiveChartContainerProps, '
44
44
  */
45
45
  disableVoronoi?: boolean;
46
46
  /**
47
- * @deprecated Consider using `slotProps.legend` instead.
47
+ * If `true`, the legend is not rendered.
48
48
  */
49
- legend?: ChartsLegendProps;
49
+ hideLegend?: boolean;
50
50
  /**
51
51
  * Overridable component slots.
52
52
  * @default {}
@@ -74,5 +74,5 @@ export interface ScatterChartProps extends Omit<ResponsiveChartContainerProps, '
74
74
  *
75
75
  * - [ScatterChart API](https://mui.com/x/api/charts/scatter-chart/)
76
76
  */
77
- declare const ScatterChart: React.ForwardRefExoticComponent<ScatterChartProps & React.RefAttributes<unknown>>;
77
+ declare const ScatterChart: React.ForwardRefExoticComponent<ScatterChartProps & React.RefAttributes<SVGSVGElement>>;
78
78
  export { ScatterChart };
@@ -5,7 +5,7 @@ import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { useThemeProps } from '@mui/material/styles';
7
7
  import { ScatterPlot } from "./ScatterPlot.js";
8
- import { ResponsiveChartContainer } from "../ResponsiveChartContainer/index.js";
8
+ import { ChartContainer } from "../ChartContainer/index.js";
9
9
  import { ChartsAxis } from "../ChartsAxis/index.js";
10
10
  import { ChartsTooltip } from "../ChartsTooltip/index.js";
11
11
  import { ChartsLegend } from "../ChartsLegend/index.js";
@@ -44,14 +44,14 @@ const ScatterChart = /*#__PURE__*/React.forwardRef(function ScatterChart(inProps
44
44
  tooltipProps,
45
45
  children
46
46
  } = useScatterChartProps(props);
47
- return /*#__PURE__*/_jsx(ResponsiveChartContainer, _extends({
47
+ return /*#__PURE__*/_jsx(ChartContainer, _extends({
48
48
  ref: ref
49
49
  }, chartContainerProps, {
50
50
  children: /*#__PURE__*/_jsxs(ZAxisContextProvider, _extends({}, zAxisProps, {
51
51
  children: [!props.disableVoronoi && /*#__PURE__*/_jsx(ChartsVoronoiHandler, _extends({}, voronoiHandlerProps)), /*#__PURE__*/_jsx(ChartsAxis, _extends({}, chartsAxisProps)), /*#__PURE__*/_jsx(ChartsGrid, _extends({}, gridProps)), /*#__PURE__*/_jsx("g", {
52
52
  "data-drawing-container": true,
53
53
  children: /*#__PURE__*/_jsx(ScatterPlot, _extends({}, scatterPlotProps))
54
- }), /*#__PURE__*/_jsx(ChartsOverlay, _extends({}, overlayProps)), /*#__PURE__*/_jsx(ChartsLegend, _extends({}, legendProps)), /*#__PURE__*/_jsx(ChartsAxisHighlight, _extends({}, axisHighlightProps)), !props.loading && /*#__PURE__*/_jsx(ChartsTooltip, _extends({}, tooltipProps)), children]
54
+ }), /*#__PURE__*/_jsx(ChartsOverlay, _extends({}, overlayProps)), !props.hideLegend && /*#__PURE__*/_jsx(ChartsLegend, _extends({}, legendProps)), /*#__PURE__*/_jsx(ChartsAxisHighlight, _extends({}, axisHighlightProps)), !props.loading && /*#__PURE__*/_jsx(ChartsTooltip, _extends({}, tooltipProps)), children]
55
55
  }))
56
56
  }));
57
57
  });
@@ -109,6 +109,10 @@ process.env.NODE_ENV !== "production" ? ScatterChart.propTypes = {
109
109
  * The height of the chart in px. If not defined, it takes the height of the parent element.
110
110
  */
111
111
  height: PropTypes.number,
112
+ /**
113
+ * If `true`, the legend is not rendered.
114
+ */
115
+ hideLegend: PropTypes.bool,
112
116
  /**
113
117
  * The item currently highlighted. Turns highlighting into a controlled prop.
114
118
  */
@@ -122,32 +126,6 @@ process.env.NODE_ENV !== "production" ? ScatterChart.propTypes = {
122
126
  * @default yAxisIds[0] The id of the first provided axis
123
127
  */
124
128
  leftAxis: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
125
- /**
126
- * @deprecated Consider using `slotProps.legend` instead.
127
- */
128
- legend: PropTypes.shape({
129
- classes: PropTypes.object,
130
- direction: PropTypes.oneOf(['column', 'row']),
131
- hidden: PropTypes.bool,
132
- itemGap: PropTypes.number,
133
- itemMarkHeight: PropTypes.number,
134
- itemMarkWidth: PropTypes.number,
135
- labelStyle: PropTypes.object,
136
- markGap: PropTypes.number,
137
- onItemClick: PropTypes.func,
138
- padding: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
139
- bottom: PropTypes.number,
140
- left: PropTypes.number,
141
- right: PropTypes.number,
142
- top: PropTypes.number
143
- })]),
144
- position: PropTypes.shape({
145
- horizontal: PropTypes.oneOf(['left', 'middle', 'right']).isRequired,
146
- vertical: PropTypes.oneOf(['bottom', 'middle', 'top']).isRequired
147
- }),
148
- slotProps: PropTypes.object,
149
- slots: PropTypes.object
150
- }),
151
129
  /**
152
130
  * If `true`, a loading overlay is displayed.
153
131
  * @default false
@@ -52,18 +52,15 @@ function ScatterPlot(props) {
52
52
  children: seriesOrder.map(seriesId => {
53
53
  const {
54
54
  id,
55
- xAxisKey,
56
- yAxisKey,
57
- zAxisKey,
58
55
  xAxisId,
59
56
  yAxisId,
60
57
  zAxisId,
61
58
  markerSize,
62
59
  color
63
60
  } = series[seriesId];
64
- const colorGetter = getColor(series[seriesId], xAxis[xAxisId ?? xAxisKey ?? defaultXAxisId], yAxis[yAxisId ?? yAxisKey ?? defaultYAxisId], zAxis[zAxisId ?? zAxisKey ?? defaultZAxisId]);
65
- const xScale = xAxis[xAxisId ?? xAxisKey ?? defaultXAxisId].scale;
66
- const yScale = yAxis[yAxisId ?? yAxisKey ?? defaultYAxisId].scale;
61
+ const colorGetter = getColor(series[seriesId], xAxis[xAxisId ?? defaultXAxisId], yAxis[yAxisId ?? defaultYAxisId], zAxis[zAxisId ?? defaultZAxisId]);
62
+ const xScale = xAxis[xAxisId ?? defaultXAxisId].scale;
63
+ const yScale = yAxis[yAxisId ?? defaultYAxisId].scale;
67
64
  return /*#__PURE__*/_jsx(ScatterItems, _extends({
68
65
  xScale: xScale,
69
66
  yScale: yScale,
@@ -9,14 +9,14 @@ export const getExtremumX = params => {
9
9
  getFilters
10
10
  } = params;
11
11
  return Object.keys(series).filter(seriesId => {
12
- const axisId = series[seriesId].xAxisId ?? series[seriesId].xAxisKey;
12
+ const axisId = series[seriesId].xAxisId;
13
13
  return axisId === axis.id || axisId === undefined && isDefaultAxis;
14
14
  }).reduce((acc, seriesId) => {
15
15
  const filter = getFilters?.({
16
16
  currentAxisId: axis.id,
17
17
  isDefaultAxis,
18
- seriesXAxisId: series[seriesId].xAxisId ?? series[seriesId].xAxisKey,
19
- seriesYAxisId: series[seriesId].yAxisId ?? series[seriesId].yAxisKey
18
+ seriesXAxisId: series[seriesId].xAxisId,
19
+ seriesYAxisId: series[seriesId].yAxisId
20
20
  });
21
21
  const seriesMinMax = series[seriesId].data?.reduce((accSeries, d, dataIndex) => {
22
22
  if (filter && !filter(d, dataIndex)) {
@@ -35,14 +35,14 @@ export const getExtremumY = params => {
35
35
  getFilters
36
36
  } = params;
37
37
  return Object.keys(series).filter(seriesId => {
38
- const axisId = series[seriesId].yAxisId ?? series[seriesId].yAxisKey;
38
+ const axisId = series[seriesId].yAxisId;
39
39
  return axisId === axis.id || axisId === undefined && isDefaultAxis;
40
40
  }).reduce((acc, seriesId) => {
41
41
  const filter = getFilters?.({
42
42
  currentAxisId: axis.id,
43
43
  isDefaultAxis,
44
- seriesXAxisId: series[seriesId].xAxisId ?? series[seriesId].xAxisKey,
45
- seriesYAxisId: series[seriesId].yAxisId ?? series[seriesId].yAxisKey
44
+ seriesXAxisId: series[seriesId].xAxisId,
45
+ seriesYAxisId: series[seriesId].yAxisId
46
46
  });
47
47
  const seriesMinMax = series[seriesId].data?.reduce((accSeries, d, dataIndex) => {
48
48
  if (filter && !filter(d, dataIndex)) {
@@ -5,7 +5,7 @@ import { ChartsLegendProps } from '../ChartsLegend';
5
5
  import { ChartsOverlayProps } from '../ChartsOverlay';
6
6
  import { ChartsTooltipProps } from '../ChartsTooltip';
7
7
  import type { ChartsVoronoiHandlerProps } from '../ChartsVoronoiHandler';
8
- import { ResponsiveChartContainerProps } from '../ResponsiveChartContainer';
8
+ import { ChartContainerProps } from '../ChartContainer';
9
9
  import { ZAxisContextProviderProps } from '../context';
10
10
  import type { ScatterChartProps } from './ScatterChart';
11
11
  import type { ScatterPlotProps } from './ScatterPlot';
@@ -17,7 +17,7 @@ import type { ScatterPlotProps } from './ScatterPlot';
17
17
  * @returns An object with props for the children components of ScatterChart
18
18
  */
19
19
  export declare const useScatterChartProps: (props: ScatterChartProps) => {
20
- chartContainerProps: ResponsiveChartContainerProps;
20
+ chartContainerProps: ChartContainerProps;
21
21
  zAxisProps: Omit<ZAxisContextProviderProps, "children">;
22
22
  voronoiHandlerProps: ChartsVoronoiHandlerProps;
23
23
  chartsAxisProps: ChartsAxisProps;
@@ -2,7 +2,7 @@
2
2
 
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
5
- const _excluded = ["xAxis", "yAxis", "zAxis", "series", "tooltip", "axisHighlight", "voronoiMaxRadius", "disableVoronoi", "legend", "width", "height", "margin", "colors", "sx", "grid", "topAxis", "leftAxis", "rightAxis", "bottomAxis", "onItemClick", "children", "slots", "slotProps", "loading", "highlightedItem", "onHighlightChange", "className"];
5
+ const _excluded = ["xAxis", "yAxis", "zAxis", "series", "tooltip", "axisHighlight", "voronoiMaxRadius", "disableVoronoi", "hideLegend", "width", "height", "margin", "colors", "sx", "grid", "topAxis", "leftAxis", "rightAxis", "bottomAxis", "onItemClick", "children", "slots", "slotProps", "loading", "highlightedItem", "onHighlightChange", "className"];
6
6
  /**
7
7
  * A helper function that extracts ScatterChartProps from the input props
8
8
  * and returns an object with props for the children components of ScatterChart.
@@ -20,7 +20,6 @@ export const useScatterChartProps = props => {
20
20
  axisHighlight,
21
21
  voronoiMaxRadius,
22
22
  disableVoronoi,
23
- legend,
24
23
  width,
25
24
  height,
26
25
  margin,
@@ -85,10 +84,10 @@ export const useScatterChartProps = props => {
85
84
  slots,
86
85
  slotProps
87
86
  };
88
- const legendProps = _extends({}, legend, {
87
+ const legendProps = {
89
88
  slots,
90
89
  slotProps
91
- });
90
+ };
92
91
  const axisHighlightProps = _extends({
93
92
  y: 'none',
94
93
  x: 'none'
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
- import { ResponsiveChartContainerProps } from '../ResponsiveChartContainer';
2
+ import { MakeOptional } from '@mui/x-internals/types';
3
+ import { ChartContainerProps } from '../ChartContainer';
3
4
  import { ChartsTooltipProps, ChartsTooltipSlotProps, ChartsTooltipSlots } from '../ChartsTooltip';
4
5
  import { ChartsAxisHighlightProps } from '../ChartsAxisHighlight';
5
6
  import { AxisConfig, ChartsXAxisProps, ChartsYAxisProps, ScaleName } from '../models/axis';
6
- import { MakeOptional } from '../models/helpers';
7
7
  import { LineSeriesType } from '../models/seriesType';
8
8
  import { CardinalDirections } from '../models/layout';
9
9
  import { AreaPlotSlots, AreaPlotSlotProps } from '../LineChart/AreaPlot';
@@ -15,7 +15,7 @@ export interface SparkLineChartSlots extends AreaPlotSlots, LinePlotSlots, MarkP
15
15
  }
16
16
  export interface SparkLineChartSlotProps extends AreaPlotSlotProps, LinePlotSlotProps, MarkPlotSlotProps, LineHighlightPlotSlotProps, BarPlotSlotProps, ChartsTooltipSlotProps<'line' | 'bar'> {
17
17
  }
18
- export interface SparkLineChartProps extends Omit<ResponsiveChartContainerProps, 'series' | 'xAxis' | 'yAxis' | 'zAxis' | 'margin' | 'plugins'> {
18
+ export interface SparkLineChartProps extends Omit<ChartContainerProps, 'series' | 'xAxis' | 'yAxis' | 'zAxis' | 'margin' | 'plugins'> {
19
19
  /**
20
20
  * The xAxis configuration.
21
21
  * Notice it is a single [[AxisConfig]] object, not an array of configuration.
@@ -98,5 +98,5 @@ export interface SparkLineChartProps extends Omit<ResponsiveChartContainerProps,
98
98
  *
99
99
  * - [SparkLineChart API](https://mui.com/x/api/charts/spark-line-chart/)
100
100
  */
101
- declare const SparkLineChart: React.ForwardRefExoticComponent<SparkLineChartProps & React.RefAttributes<unknown>>;
101
+ declare const SparkLineChart: React.ForwardRefExoticComponent<SparkLineChartProps & React.RefAttributes<SVGSVGElement>>;
102
102
  export { SparkLineChart };
@@ -7,7 +7,7 @@ import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { BarPlot } from "../BarChart/index.js";
9
9
  import { LinePlot, AreaPlot, LineHighlightPlot } from "../LineChart/index.js";
10
- import { ResponsiveChartContainer } from "../ResponsiveChartContainer/index.js";
10
+ import { ChartContainer } from "../ChartContainer/index.js";
11
11
  import { DEFAULT_X_AXIS_KEY } from "../constants/index.js";
12
12
  import { ChartsTooltip } from "../ChartsTooltip/index.js";
13
13
  import { ChartsAxisHighlight } from "../ChartsAxisHighlight/index.js";
@@ -58,7 +58,7 @@ const SparkLineChart = /*#__PURE__*/React.forwardRef(function SparkLineChart(pro
58
58
  x: 'none'
59
59
  };
60
60
  const axisHighlight = _extends({}, defaultXHighlight, inAxisHighlight);
61
- return /*#__PURE__*/_jsxs(ResponsiveChartContainer, _extends({}, other, {
61
+ return /*#__PURE__*/_jsxs(ChartContainer, _extends({}, other, {
62
62
  ref: ref,
63
63
  series: [_extends({
64
64
  type: plotType,
@@ -1,4 +1,4 @@
1
- import { MakeOptional } from '../../models/helpers';
1
+ import { MakeOptional } from '@mui/x-internals/types';
2
2
  import { AxisConfig, ScaleName } from '../../models';
3
3
  import { ChartsAxisProps } from '../../models/axis';
4
4
  export declare const defaultizeAxis: (inAxis: MakeOptional<AxisConfig<ScaleName, any, ChartsAxisProps>, "id">[] | undefined, axisName: "x" | "y") => {
@@ -0,0 +1,41 @@
1
+ import * as React from 'react';
2
+ import { MakeOptional } from '@mui/x-internals/types';
3
+ import { DrawingProviderProps } from '../DrawingProvider';
4
+ import { SeriesProviderProps } from '../SeriesProvider';
5
+ import { ChartsSurfaceProps } from '../../ChartsSurface';
6
+ import { CartesianProviderProps } from '../CartesianProvider';
7
+ import { HighlightedProviderProps, ZAxisContextProviderProps } from '..';
8
+ import { PluginProviderProps } from '../PluginProvider';
9
+ import { AxisConfig, ChartsXAxisProps, ChartsYAxisProps, ScaleName } from '../../models/axis';
10
+ import { AnimationProviderProps } from '../AnimationProvider';
11
+ export type ChartDataProviderProps = Omit<ChartsSurfaceProps & Omit<SeriesProviderProps, 'seriesFormatters'> & Omit<DrawingProviderProps, 'svgRef'> & Pick<CartesianProviderProps, 'dataset'> & ZAxisContextProviderProps & HighlightedProviderProps & PluginProviderProps & AnimationProviderProps, 'children'> & {
12
+ /**
13
+ * The configuration of the x-axes.
14
+ * If not provided, a default axis config is used.
15
+ * An array of [[AxisConfig]] objects.
16
+ */
17
+ xAxis?: MakeOptional<AxisConfig<ScaleName, any, ChartsXAxisProps>, 'id'>[];
18
+ /**
19
+ * The configuration of the y-axes.
20
+ * If not provided, a default axis config is used.
21
+ * An array of [[AxisConfig]] objects.
22
+ */
23
+ yAxis?: MakeOptional<AxisConfig<ScaleName, any, ChartsYAxisProps>, 'id'>[];
24
+ children?: React.ReactNode;
25
+ };
26
+ declare const ChartDataProvider: React.ForwardRefExoticComponent<Omit<ChartsSurfaceProps & Omit<SeriesProviderProps, "seriesFormatters"> & Omit<DrawingProviderProps, "svgRef"> & Pick<CartesianProviderProps, "dataset"> & ZAxisContextProviderProps & HighlightedProviderProps & PluginProviderProps & AnimationProviderProps, "children"> & {
27
+ /**
28
+ * The configuration of the x-axes.
29
+ * If not provided, a default axis config is used.
30
+ * An array of [[AxisConfig]] objects.
31
+ */
32
+ xAxis?: MakeOptional<AxisConfig<ScaleName, any, ChartsXAxisProps>, "id">[];
33
+ /**
34
+ * The configuration of the y-axes.
35
+ * If not provided, a default axis config is used.
36
+ * An array of [[AxisConfig]] objects.
37
+ */
38
+ yAxis?: MakeOptional<AxisConfig<ScaleName, any, ChartsYAxisProps>, "id">[];
39
+ children?: React.ReactNode;
40
+ } & React.RefAttributes<SVGSVGElement>>;
41
+ export { ChartDataProvider };
@@ -3,21 +3,50 @@
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
- import { ChartContainer } from "../ChartContainer/index.js";
7
- import { ResizableContainer } from "./ResizableContainer.js";
8
- import { useResponsiveChartContainerProps } from "./useResponsiveChartContainerProps.js";
9
- import { jsx as _jsx } from "react/jsx-runtime";
10
- const ResponsiveChartContainer = /*#__PURE__*/React.forwardRef(function ResponsiveChartContainer(props, ref) {
6
+ import { DrawingProvider } from "../DrawingProvider.js";
7
+ import { SeriesProvider } from "../SeriesProvider/index.js";
8
+ import { InteractionProvider } from "../InteractionProvider.js";
9
+ import { ChartsSurface } from "../../ChartsSurface/index.js";
10
+ import { CartesianProvider } from "../CartesianProvider/index.js";
11
+ import { ChartsAxesGradients } from "../../internals/components/ChartsAxesGradients/index.js";
12
+ import { HighlightedProvider, ZAxisContextProvider } from "../index.js";
13
+ import { PluginProvider } from "../PluginProvider/index.js";
14
+ import { useChartDataProviderProps } from "./useChartDataProviderProps.js";
15
+ import { AnimationProvider } from "../AnimationProvider/index.js";
16
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
17
+ const ChartDataProvider = /*#__PURE__*/React.forwardRef(function ChartDataProvider(props, ref) {
11
18
  const {
12
- hasIntrinsicSize,
13
- chartContainerProps,
14
- resizableChartContainerProps
15
- } = useResponsiveChartContainerProps(props, ref);
16
- return /*#__PURE__*/_jsx(ResizableContainer, _extends({}, resizableChartContainerProps, {
17
- children: hasIntrinsicSize ? /*#__PURE__*/_jsx(ChartContainer, _extends({}, chartContainerProps)) : null
19
+ children,
20
+ drawingProviderProps,
21
+ seriesProviderProps,
22
+ cartesianProviderProps,
23
+ zAxisContextProps,
24
+ highlightedProviderProps,
25
+ chartsSurfaceProps,
26
+ pluginProviderProps,
27
+ animationProviderProps
28
+ } = useChartDataProviderProps(props, ref);
29
+ return /*#__PURE__*/_jsx(DrawingProvider, _extends({}, drawingProviderProps, {
30
+ children: /*#__PURE__*/_jsx(PluginProvider, _extends({}, pluginProviderProps, {
31
+ children: /*#__PURE__*/_jsx(SeriesProvider, _extends({}, seriesProviderProps, {
32
+ children: /*#__PURE__*/_jsx(CartesianProvider, _extends({}, cartesianProviderProps, {
33
+ children: /*#__PURE__*/_jsx(ZAxisContextProvider, _extends({}, zAxisContextProps, {
34
+ children: /*#__PURE__*/_jsx(InteractionProvider, {
35
+ children: /*#__PURE__*/_jsx(HighlightedProvider, _extends({}, highlightedProviderProps, {
36
+ children: /*#__PURE__*/_jsx(AnimationProvider, _extends({}, animationProviderProps, {
37
+ children: /*#__PURE__*/_jsxs(ChartsSurface, _extends({}, chartsSurfaceProps, {
38
+ children: [/*#__PURE__*/_jsx(ChartsAxesGradients, {}), children]
39
+ }))
40
+ }))
41
+ }))
42
+ })
43
+ }))
44
+ }))
45
+ }))
46
+ }))
18
47
  }));
19
48
  });
20
- process.env.NODE_ENV !== "production" ? ResponsiveChartContainer.propTypes = {
49
+ process.env.NODE_ENV !== "production" ? ChartDataProvider.propTypes = {
21
50
  // ----------------------------- Warning --------------------------------
22
51
  // | These PropTypes are generated from the TypeScript type definitions |
23
52
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
@@ -41,9 +70,9 @@ process.env.NODE_ENV !== "production" ? ResponsiveChartContainer.propTypes = {
41
70
  */
42
71
  disableAxisListener: PropTypes.bool,
43
72
  /**
44
- * The height of the chart in px. If not defined, it takes the height of the parent element.
73
+ * The height of the chart in px.
45
74
  */
46
- height: PropTypes.number,
75
+ height: PropTypes.number.isRequired,
47
76
  /**
48
77
  * The item currently highlighted. Turns highlighting into a controlled prop.
49
78
  */
@@ -74,16 +103,6 @@ process.env.NODE_ENV !== "production" ? ResponsiveChartContainer.propTypes = {
74
103
  * If not provided, the container supports line, bar, scatter and pie charts.
75
104
  */
76
105
  plugins: PropTypes.arrayOf(PropTypes.object),
77
- /**
78
- * The chart will try to wait for the parent container to resolve its size
79
- * before it renders for the first time.
80
- *
81
- * This can be useful in some scenarios where the chart appear to grow after
82
- * the first render, like when used inside a grid.
83
- *
84
- * @default false
85
- */
86
- resolveSizeBeforeRender: PropTypes.bool,
87
106
  /**
88
107
  * The array of series to display.
89
108
  * Each type of series has its own specificity.
@@ -104,9 +123,9 @@ process.env.NODE_ENV !== "production" ? ResponsiveChartContainer.propTypes = {
104
123
  y: PropTypes.number
105
124
  }),
106
125
  /**
107
- * The width of the chart in px. If not defined, it takes the width of the parent element.
126
+ * The width of the chart in px.
108
127
  */
109
- width: PropTypes.number,
128
+ width: PropTypes.number.isRequired,
110
129
  /**
111
130
  * The configuration of the x-axes.
112
131
  * If not provided, a default axis config is used.
@@ -241,4 +260,4 @@ process.env.NODE_ENV !== "production" ? ResponsiveChartContainer.propTypes = {
241
260
  min: PropTypes.number
242
261
  }))
243
262
  } : void 0;
244
- export { ResponsiveChartContainer };
263
+ export { ChartDataProvider };
@@ -0,0 +1 @@
1
+ export * from './ChartDataProvider';