@mui/x-charts 8.4.0 → 8.5.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 (148) hide show
  1. package/BarChart/BarChart.d.ts +9 -2
  2. package/BarChart/BarChart.js +8 -1
  3. package/BarChart/useBarChartProps.js +1 -1
  4. package/CHANGELOG.md +103 -0
  5. package/ChartContainer/ChartContainer.d.ts +21 -2
  6. package/ChartContainer/ChartContainer.js +16 -0
  7. package/ChartContainer/useChartContainerProps.js +7 -3
  8. package/ChartDataProvider/ChartDataProvider.d.ts +11 -1
  9. package/ChartDataProvider/ChartDataProvider.js +19 -2
  10. package/ChartDataProvider/useChartDataProviderProps.d.ts +2 -0
  11. package/ChartDataProvider/useChartDataProviderProps.js +7 -3
  12. package/LineChart/LineChart.d.ts +9 -2
  13. package/LineChart/LineChart.js +8 -1
  14. package/LineChart/useLineChartProps.js +1 -1
  15. package/PieChart/PieChart.d.ts +10 -3
  16. package/PieChart/PieChart.js +11 -3
  17. package/RadarChart/RadarChart.d.ts +21 -3
  18. package/RadarChart/RadarChart.js +17 -2
  19. package/RadarChart/RadarChart.plugins.d.ts +5 -0
  20. package/RadarChart/RadarChart.plugins.js +10 -0
  21. package/RadarChart/RadarDataProvider/RadarDataProvider.d.ts +6 -11
  22. package/RadarChart/RadarDataProvider/RadarDataProvider.js +6 -116
  23. package/RadarChart/index.d.ts +2 -0
  24. package/RadarChart/index.js +15 -1
  25. package/RadarChart/useRadarChartProps.d.ts +2 -1
  26. package/RadarChart/useRadarChartProps.js +3 -1
  27. package/ScatterChart/ScatterChart.d.ts +9 -2
  28. package/ScatterChart/ScatterChart.js +8 -1
  29. package/ScatterChart/useScatterChartProps.js +4 -2
  30. package/SparkLineChart/SparkLineChart.d.ts +1 -1
  31. package/Toolbar/Toolbar.d.ts +9 -3
  32. package/Toolbar/Toolbar.js +23 -7
  33. package/Toolbar/Toolbar.types.d.ts +15 -0
  34. package/Toolbar/Toolbar.types.js +5 -0
  35. package/Toolbar/ToolbarButton.d.ts +8 -2
  36. package/Toolbar/ToolbarButton.js +24 -6
  37. package/Toolbar/chartToolbarClasses.d.ts +6 -0
  38. package/Toolbar/chartToolbarClasses.js +9 -0
  39. package/Toolbar/index.d.ts +3 -1
  40. package/Toolbar/index.js +22 -0
  41. package/Toolbar/internals/ChartsToolbar.d.ts +6 -0
  42. package/Toolbar/internals/ChartsToolbar.js +14 -0
  43. package/context/ChartsSlotsContext.d.ts +20 -0
  44. package/context/ChartsSlotsContext.js +44 -0
  45. package/context/index.d.ts +2 -1
  46. package/context/index.js +11 -0
  47. package/context/useChartApiContext.d.ts +10 -0
  48. package/context/useChartApiContext.js +27 -0
  49. package/esm/BarChart/BarChart.d.ts +9 -2
  50. package/esm/BarChart/BarChart.js +8 -1
  51. package/esm/BarChart/useBarChartProps.js +1 -1
  52. package/esm/ChartContainer/ChartContainer.d.ts +21 -2
  53. package/esm/ChartContainer/ChartContainer.js +16 -0
  54. package/esm/ChartContainer/useChartContainerProps.js +7 -3
  55. package/esm/ChartDataProvider/ChartDataProvider.d.ts +11 -1
  56. package/esm/ChartDataProvider/ChartDataProvider.js +19 -2
  57. package/esm/ChartDataProvider/useChartDataProviderProps.d.ts +2 -0
  58. package/esm/ChartDataProvider/useChartDataProviderProps.js +7 -3
  59. package/esm/LineChart/LineChart.d.ts +9 -2
  60. package/esm/LineChart/LineChart.js +8 -1
  61. package/esm/LineChart/useLineChartProps.js +1 -1
  62. package/esm/PieChart/PieChart.d.ts +10 -3
  63. package/esm/PieChart/PieChart.js +11 -3
  64. package/esm/RadarChart/RadarChart.d.ts +21 -3
  65. package/esm/RadarChart/RadarChart.js +17 -2
  66. package/esm/RadarChart/RadarChart.plugins.d.ts +5 -0
  67. package/esm/RadarChart/RadarChart.plugins.js +4 -0
  68. package/esm/RadarChart/RadarDataProvider/RadarDataProvider.d.ts +6 -11
  69. package/esm/RadarChart/RadarDataProvider/RadarDataProvider.js +5 -115
  70. package/esm/RadarChart/index.d.ts +2 -0
  71. package/esm/RadarChart/index.js +2 -0
  72. package/esm/RadarChart/useRadarChartProps.d.ts +2 -1
  73. package/esm/RadarChart/useRadarChartProps.js +3 -1
  74. package/esm/ScatterChart/ScatterChart.d.ts +9 -2
  75. package/esm/ScatterChart/ScatterChart.js +8 -1
  76. package/esm/ScatterChart/useScatterChartProps.js +4 -2
  77. package/esm/SparkLineChart/SparkLineChart.d.ts +1 -1
  78. package/esm/Toolbar/Toolbar.d.ts +9 -3
  79. package/esm/Toolbar/Toolbar.js +22 -7
  80. package/esm/Toolbar/Toolbar.types.d.ts +15 -0
  81. package/esm/Toolbar/Toolbar.types.js +1 -0
  82. package/esm/Toolbar/ToolbarButton.d.ts +8 -2
  83. package/esm/Toolbar/ToolbarButton.js +23 -5
  84. package/esm/Toolbar/chartToolbarClasses.d.ts +6 -0
  85. package/esm/Toolbar/chartToolbarClasses.js +2 -0
  86. package/esm/Toolbar/index.d.ts +3 -1
  87. package/esm/Toolbar/index.js +3 -1
  88. package/esm/Toolbar/internals/ChartsToolbar.d.ts +6 -0
  89. package/esm/Toolbar/internals/ChartsToolbar.js +8 -0
  90. package/esm/context/ChartsSlotsContext.d.ts +20 -0
  91. package/esm/context/ChartsSlotsContext.js +35 -0
  92. package/esm/context/index.d.ts +2 -1
  93. package/esm/context/index.js +1 -0
  94. package/esm/context/useChartApiContext.d.ts +10 -0
  95. package/esm/context/useChartApiContext.js +21 -0
  96. package/esm/hooks/index.d.ts +1 -0
  97. package/esm/hooks/index.js +1 -0
  98. package/esm/index.js +1 -1
  99. package/esm/internals/constants.d.ts +3 -1
  100. package/esm/internals/constants.js +2 -1
  101. package/esm/internals/dateHelpers.d.ts +15 -0
  102. package/esm/internals/dateHelpers.js +20 -0
  103. package/esm/internals/domUtils.d.ts +1 -2
  104. package/esm/internals/domUtils.js +8 -19
  105. package/esm/internals/index.d.ts +4 -1
  106. package/esm/internals/index.js +4 -1
  107. package/esm/internals/material/index.d.ts +2 -0
  108. package/esm/internals/plugins/allPlugins.d.ts +1 -0
  109. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js +2 -8
  110. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeZoom.d.ts +14 -0
  111. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeZoom.js +4 -3
  112. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.d.ts +5 -2
  113. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.d.ts +83 -0
  114. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.js +8 -1
  115. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.d.ts +9 -0
  116. package/esm/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.js +5 -0
  117. package/esm/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +11 -5
  118. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.js +2 -8
  119. package/esm/models/index.d.ts +2 -2
  120. package/esm/models/index.js +1 -0
  121. package/esm/models/slots/chartsBaseSlotProps.d.ts +1 -0
  122. package/hooks/index.d.ts +1 -0
  123. package/hooks/index.js +12 -0
  124. package/index.js +1 -1
  125. package/internals/constants.d.ts +3 -1
  126. package/internals/constants.js +3 -2
  127. package/internals/dateHelpers.d.ts +15 -0
  128. package/internals/dateHelpers.js +28 -0
  129. package/internals/domUtils.d.ts +1 -2
  130. package/internals/domUtils.js +8 -20
  131. package/internals/index.d.ts +4 -1
  132. package/internals/index.js +44 -8
  133. package/internals/material/index.d.ts +2 -0
  134. package/internals/plugins/allPlugins.d.ts +1 -0
  135. package/internals/plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js +5 -11
  136. package/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeZoom.d.ts +14 -0
  137. package/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeZoom.js +4 -3
  138. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types.d.ts +5 -2
  139. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.d.ts +83 -0
  140. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxisRendering.selectors.js +9 -2
  141. package/internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.d.ts +9 -0
  142. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.js +5 -0
  143. package/internals/plugins/featurePlugins/useChartInteraction/useChartInteraction.js +11 -5
  144. package/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.js +5 -11
  145. package/models/index.d.ts +2 -2
  146. package/models/index.js +11 -0
  147. package/models/slots/chartsBaseSlotProps.d.ts +1 -0
  148. package/package.json +2 -2
@@ -11,6 +11,7 @@ var _axis = require("../../../../models/axis");
11
11
  var _colorScale = require("../../../colorScale");
12
12
  var _ticks = require("../../../ticks");
13
13
  var _getScale = require("../../../getScale");
14
+ var _dateHelpers = require("../../../dateHelpers");
14
15
  var _getAxisExtremum = require("./getAxisExtremum");
15
16
  var _angleConversion = require("../../../angleConversion");
16
17
  var _getAxisTriggerTooltip = require("./getAxisTriggerTooltip");
@@ -29,13 +30,6 @@ function getRange(drawingArea, axisDirection, axis) {
29
30
  }
30
31
  return [0, Math.min(drawingArea.height, drawingArea.width) / 2];
31
32
  }
32
- const isDateData = data => data?.[0] instanceof Date;
33
- function createDateFormatter(axis, range) {
34
- const timeScale = (0, _d3Scale.scaleTime)(axis.data, range);
35
- return (v, {
36
- location
37
- }) => location === 'tick' ? timeScale.tickFormat(axis.tickNumber)(v) : `${v.toLocaleString()}`;
38
- }
39
33
  const DEFAULT_CATEGORY_GAP_RATIO = 0.2;
40
34
  const DEFAULT_BAR_GAP_RATIO = 0.1;
41
35
  function computeAxisValue({
@@ -75,8 +69,8 @@ function computeAxisValue({
75
69
  values: axis.data
76
70
  }, axis.colorMap)) : (0, _colorScale.getColorScale)(axis.colorMap))
77
71
  });
78
- if (isDateData(axis.data)) {
79
- const dateFormatter = createDateFormatter(axis, range);
72
+ if ((0, _dateHelpers.isDateData)(axis.data)) {
73
+ const dateFormatter = (0, _dateHelpers.createDateFormatter)(axis, range);
80
74
  completeAxis[axis.id].valueFormatter = axis.valueFormatter ?? dateFormatter;
81
75
  }
82
76
  }
@@ -92,8 +86,8 @@ function computeAxisValue({
92
86
  values: axis.data
93
87
  }, axis.colorMap)) : (0, _colorScale.getColorScale)(axis.colorMap))
94
88
  });
95
- if (isDateData(axis.data)) {
96
- const dateFormatter = createDateFormatter(axis, range);
89
+ if ((0, _dateHelpers.isDateData)(axis.data)) {
90
+ const dateFormatter = (0, _dateHelpers.createDateFormatter)(axis, range);
97
91
  completeAxis[axis.id].valueFormatter = axis.valueFormatter ?? dateFormatter;
98
92
  }
99
93
  }
package/models/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export * from "./seriesType/index.js";
2
2
  export * from "./stacking.js";
3
+ export * from "./slots/index.js";
3
4
  export type { AxisConfig, ChartsYAxisProps, ChartsXAxisProps, ScaleName, ContinuousScaleName, ChartsAxisData, XAxis, YAxis, RadiusAxis, RotationAxis } from "./axis.js";
4
5
  export type { PropsFromSlot } from '@mui/x-internals/slots';
5
6
  export type { Position } from "./position.js";
6
- export type { CurveType } from "./curve.js";
7
- export type { ChartBaseCommonProps, ChartBaseIconProps, ChartsIconSlots, ChartsBaseSlots } from "./slots/index.js";
7
+ export type { CurveType } from "./curve.js";
package/models/index.js CHANGED
@@ -24,4 +24,15 @@ Object.keys(_stacking).forEach(function (key) {
24
24
  return _stacking[key];
25
25
  }
26
26
  });
27
+ });
28
+ var _slots = require("./slots");
29
+ Object.keys(_slots).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _slots[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function () {
35
+ return _slots[key];
36
+ }
37
+ });
27
38
  });
@@ -10,4 +10,5 @@ export type ChartBaseIconProps = ChartBaseCommonProps<SVGSVGElement> & {
10
10
  };
11
11
  export type ChartBaseIconButtonProps = ChartBaseCommonProps & {
12
12
  ref?: React.Ref<HTMLButtonElement>;
13
+ disabled?: boolean;
13
14
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-charts",
3
- "version": "8.4.0",
3
+ "version": "8.5.0",
4
4
  "author": "MUI Team",
5
5
  "description": "The community edition of MUI X Charts components.",
6
6
  "main": "./index.js",
@@ -37,7 +37,7 @@
37
37
  "reselect": "^5.1.1",
38
38
  "use-sync-external-store": "^1.5.0",
39
39
  "@mui/x-charts-vendor": "8.4.0",
40
- "@mui/x-internals": "8.4.0"
40
+ "@mui/x-internals": "8.5.0"
41
41
  },
42
42
  "peerDependencies": {
43
43
  "@emotion/react": "^11.9.0",