@mui/x-charts-pro 8.0.0-alpha.1 → 8.0.0-alpha.11

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 (198) hide show
  1. package/BarChartPro/BarChartPro.d.ts +2 -2
  2. package/BarChartPro/BarChartPro.js +75 -34
  3. package/BarChartPro/BarChartPro.plugins.d.ts +10 -0
  4. package/BarChartPro/BarChartPro.plugins.js +3 -0
  5. package/CHANGELOG.md +2007 -230
  6. package/ChartContainerPro/ChartContainerPro.d.ts +33 -5
  7. package/ChartContainerPro/ChartContainerPro.js +55 -37
  8. package/ChartContainerPro/useChartContainerProProps.d.ts +6 -5
  9. package/ChartContainerPro/useChartContainerProProps.js +17 -13
  10. package/ChartDataProviderPro/ChartDataProviderPro.d.ts +37 -0
  11. package/ChartDataProviderPro/ChartDataProviderPro.js +105 -0
  12. package/{context → ChartDataProviderPro}/package.json +1 -1
  13. package/ChartDataProviderPro/useChartDataProviderProProps.d.ts +8 -0
  14. package/ChartDataProviderPro/useChartDataProviderProProps.js +15 -0
  15. package/Heatmap/Heatmap.d.ts +1 -2
  16. package/Heatmap/Heatmap.js +36 -13
  17. package/Heatmap/Heatmap.plugins.d.ts +8 -0
  18. package/Heatmap/Heatmap.plugins.js +2 -0
  19. package/Heatmap/HeatmapItem.js +1 -1
  20. package/Heatmap/HeatmapTooltip.js +8 -28
  21. package/Heatmap/extremums.d.ts +2 -2
  22. package/Heatmap/formatter.d.ts +2 -2
  23. package/Heatmap/formatter.js +2 -1
  24. package/Heatmap/heatmapClasses.js +2 -1
  25. package/Heatmap/plugin.d.ts +2 -2
  26. package/Heatmap/plugin.js +4 -2
  27. package/Heatmap/tooltip.d.ts +3 -0
  28. package/Heatmap/tooltip.js +25 -0
  29. package/LineChartPro/LineChartPro.d.ts +2 -2
  30. package/LineChartPro/LineChartPro.js +81 -54
  31. package/LineChartPro/LineChartPro.plugins.d.ts +10 -0
  32. package/LineChartPro/LineChartPro.plugins.js +3 -0
  33. package/README.md +1 -1
  34. package/ScatterChartPro/ScatterChartPro.d.ts +2 -2
  35. package/ScatterChartPro/ScatterChartPro.js +59 -34
  36. package/ScatterChartPro/ScatterChartPro.plugins.d.ts +10 -0
  37. package/ScatterChartPro/ScatterChartPro.plugins.js +3 -0
  38. package/hooks/index.d.ts +1 -0
  39. package/hooks/index.js +2 -1
  40. package/hooks/useSeries.d.ts +2 -4
  41. package/hooks/zoom/index.d.ts +1 -0
  42. package/hooks/zoom/index.js +1 -0
  43. package/hooks/zoom/useIsZoomInteracting.d.ts +6 -0
  44. package/hooks/zoom/useIsZoomInteracting.js +14 -0
  45. package/index.d.ts +3 -2
  46. package/index.js +5 -6
  47. package/internals/plugins/allPlugins.d.ts +11 -0
  48. package/internals/plugins/allPlugins.js +5 -0
  49. package/internals/plugins/useChartProZoom/creatZoomLookup.d.ts +3 -0
  50. package/internals/plugins/useChartProZoom/creatZoomLookup.js +12 -0
  51. package/internals/plugins/useChartProZoom/defaultizeZoom.d.ts +2 -0
  52. package/internals/plugins/useChartProZoom/defaultizeZoom.js +25 -0
  53. package/internals/plugins/useChartProZoom/index.d.ts +3 -0
  54. package/internals/plugins/useChartProZoom/index.js +3 -0
  55. package/internals/plugins/useChartProZoom/useChartProZoom.d.ts +3 -0
  56. package/internals/plugins/useChartProZoom/useChartProZoom.js +303 -0
  57. package/internals/plugins/useChartProZoom/useChartProZoom.selectors.d.ts +377 -0
  58. package/internals/plugins/useChartProZoom/useChartProZoom.selectors.js +10 -0
  59. package/internals/plugins/useChartProZoom/useChartProZoom.types.d.ts +50 -0
  60. package/internals/plugins/useChartProZoom/useChartProZoom.utils.d.ts +45 -0
  61. package/internals/plugins/useChartProZoom/useChartProZoom.utils.js +126 -0
  62. package/internals/plugins/useChartProZoom/zoom.types.d.ts +53 -0
  63. package/internals/utils/releaseInfo.js +2 -2
  64. package/models/index.d.ts +1 -0
  65. package/models/index.js +2 -1
  66. package/modern/BarChartPro/BarChartPro.js +75 -34
  67. package/modern/BarChartPro/BarChartPro.plugins.js +3 -0
  68. package/modern/ChartContainerPro/ChartContainerPro.js +55 -37
  69. package/modern/ChartContainerPro/useChartContainerProProps.js +17 -13
  70. package/modern/ChartDataProviderPro/ChartDataProviderPro.js +105 -0
  71. package/modern/ChartDataProviderPro/useChartDataProviderProProps.js +15 -0
  72. package/modern/Heatmap/Heatmap.js +36 -13
  73. package/modern/Heatmap/Heatmap.plugins.js +2 -0
  74. package/modern/Heatmap/HeatmapItem.js +1 -1
  75. package/modern/Heatmap/HeatmapTooltip.js +8 -28
  76. package/modern/Heatmap/formatter.js +2 -1
  77. package/modern/Heatmap/heatmapClasses.js +2 -1
  78. package/modern/Heatmap/plugin.js +4 -2
  79. package/modern/Heatmap/tooltip.js +25 -0
  80. package/modern/LineChartPro/LineChartPro.js +81 -54
  81. package/modern/LineChartPro/LineChartPro.plugins.js +3 -0
  82. package/modern/ScatterChartPro/ScatterChartPro.js +59 -34
  83. package/modern/ScatterChartPro/ScatterChartPro.plugins.js +3 -0
  84. package/modern/hooks/index.js +2 -1
  85. package/modern/hooks/zoom/index.js +1 -0
  86. package/modern/hooks/zoom/useIsZoomInteracting.js +14 -0
  87. package/modern/index.js +5 -6
  88. package/modern/internals/plugins/allPlugins.js +5 -0
  89. package/modern/internals/plugins/useChartProZoom/creatZoomLookup.js +12 -0
  90. package/modern/internals/plugins/useChartProZoom/defaultizeZoom.js +25 -0
  91. package/modern/internals/plugins/useChartProZoom/index.js +3 -0
  92. package/modern/internals/plugins/useChartProZoom/useChartProZoom.js +303 -0
  93. package/modern/internals/plugins/useChartProZoom/useChartProZoom.selectors.js +10 -0
  94. package/modern/internals/plugins/useChartProZoom/useChartProZoom.types.js +1 -0
  95. package/modern/internals/plugins/useChartProZoom/useChartProZoom.utils.js +126 -0
  96. package/modern/internals/plugins/useChartProZoom/zoom.types.js +1 -0
  97. package/modern/internals/utils/releaseInfo.js +2 -2
  98. package/modern/models/index.js +2 -1
  99. package/node/BarChartPro/BarChartPro.js +74 -33
  100. package/node/BarChartPro/BarChartPro.plugins.js +9 -0
  101. package/node/ChartContainerPro/ChartContainerPro.js +54 -36
  102. package/node/ChartContainerPro/useChartContainerProProps.js +17 -13
  103. package/node/ChartDataProviderPro/ChartDataProviderPro.js +111 -0
  104. package/node/ChartDataProviderPro/useChartDataProviderProProps.js +21 -0
  105. package/node/Heatmap/Heatmap.js +36 -13
  106. package/node/Heatmap/Heatmap.plugins.js +8 -0
  107. package/node/Heatmap/HeatmapItem.js +2 -2
  108. package/node/Heatmap/HeatmapTooltip.js +6 -26
  109. package/node/Heatmap/formatter.js +2 -1
  110. package/node/Heatmap/heatmapClasses.js +5 -4
  111. package/node/Heatmap/plugin.js +4 -2
  112. package/node/Heatmap/tooltip.js +31 -0
  113. package/node/LineChartPro/LineChartPro.js +80 -53
  114. package/node/LineChartPro/LineChartPro.plugins.js +9 -0
  115. package/node/ScatterChartPro/ScatterChartPro.js +58 -33
  116. package/node/ScatterChartPro/ScatterChartPro.plugins.js +9 -0
  117. package/node/hooks/index.js +16 -1
  118. package/node/{context/CartesianProviderPro → hooks/zoom}/index.js +4 -4
  119. package/node/hooks/zoom/useIsZoomInteracting.js +19 -0
  120. package/node/index.js +34 -23
  121. package/node/internals/plugins/allPlugins.js +11 -0
  122. package/node/internals/plugins/useChartProZoom/creatZoomLookup.js +19 -0
  123. package/node/internals/plugins/useChartProZoom/defaultizeZoom.js +33 -0
  124. package/node/internals/plugins/useChartProZoom/index.js +38 -0
  125. package/node/internals/plugins/useChartProZoom/useChartProZoom.js +310 -0
  126. package/node/internals/plugins/useChartProZoom/useChartProZoom.selectors.js +18 -0
  127. package/node/internals/plugins/useChartProZoom/useChartProZoom.utils.js +140 -0
  128. package/node/internals/plugins/useChartProZoom/zoom.types.js +5 -0
  129. package/node/internals/utils/releaseInfo.js +4 -3
  130. package/package.json +6 -6
  131. package/typeOverloads/modules.d.ts +8 -1
  132. package/context/CartesianProviderPro/CartesianProviderPro.d.ts +0 -6
  133. package/context/CartesianProviderPro/CartesianProviderPro.js +0 -89
  134. package/context/CartesianProviderPro/createAxisFilterMapper.d.ts +0 -12
  135. package/context/CartesianProviderPro/createAxisFilterMapper.js +0 -60
  136. package/context/CartesianProviderPro/index.d.ts +0 -1
  137. package/context/CartesianProviderPro/index.js +0 -1
  138. package/context/ChartDataProviderPro/ChartDataProviderPro.d.ts +0 -10
  139. package/context/ChartDataProviderPro/ChartDataProviderPro.js +0 -299
  140. package/context/ChartDataProviderPro/useChartDataProviderProProps.d.ts +0 -14
  141. package/context/ChartDataProviderPro/useChartDataProviderProProps.js +0 -43
  142. package/context/ZoomProvider/Zoom.types.d.ts +0 -144
  143. package/context/ZoomProvider/ZoomContext.d.ts +0 -4
  144. package/context/ZoomProvider/ZoomContext.js +0 -16
  145. package/context/ZoomProvider/ZoomProvider.d.ts +0 -3
  146. package/context/ZoomProvider/ZoomProvider.js +0 -56
  147. package/context/ZoomProvider/ZoomSetup.d.ts +0 -9
  148. package/context/ZoomProvider/ZoomSetup.js +0 -16
  149. package/context/ZoomProvider/defaultizeZoom.d.ts +0 -2
  150. package/context/ZoomProvider/defaultizeZoom.js +0 -32
  151. package/context/ZoomProvider/index.d.ts +0 -3
  152. package/context/ZoomProvider/index.js +0 -3
  153. package/context/ZoomProvider/initializeZoomData.d.ts +0 -6
  154. package/context/ZoomProvider/initializeZoomData.js +0 -13
  155. package/context/ZoomProvider/useSetupPan.d.ts +0 -1
  156. package/context/ZoomProvider/useSetupPan.js +0 -106
  157. package/context/ZoomProvider/useSetupZoom.d.ts +0 -1
  158. package/context/ZoomProvider/useSetupZoom.js +0 -274
  159. package/context/ZoomProvider/useZoom.d.ts +0 -7
  160. package/context/ZoomProvider/useZoom.js +0 -19
  161. package/context/index.d.ts +0 -3
  162. package/context/index.js +0 -5
  163. package/modern/context/CartesianProviderPro/CartesianProviderPro.js +0 -89
  164. package/modern/context/CartesianProviderPro/createAxisFilterMapper.js +0 -60
  165. package/modern/context/CartesianProviderPro/index.js +0 -1
  166. package/modern/context/ChartDataProviderPro/ChartDataProviderPro.js +0 -299
  167. package/modern/context/ChartDataProviderPro/useChartDataProviderProProps.js +0 -43
  168. package/modern/context/ZoomProvider/ZoomContext.js +0 -16
  169. package/modern/context/ZoomProvider/ZoomProvider.js +0 -56
  170. package/modern/context/ZoomProvider/ZoomSetup.js +0 -16
  171. package/modern/context/ZoomProvider/defaultizeZoom.js +0 -32
  172. package/modern/context/ZoomProvider/index.js +0 -3
  173. package/modern/context/ZoomProvider/initializeZoomData.js +0 -13
  174. package/modern/context/ZoomProvider/useSetupPan.js +0 -106
  175. package/modern/context/ZoomProvider/useSetupZoom.js +0 -274
  176. package/modern/context/ZoomProvider/useZoom.js +0 -19
  177. package/modern/context/index.js +0 -5
  178. package/node/context/CartesianProviderPro/CartesianProviderPro.js +0 -95
  179. package/node/context/CartesianProviderPro/createAxisFilterMapper.js +0 -68
  180. package/node/context/ChartDataProviderPro/ChartDataProviderPro.js +0 -305
  181. package/node/context/ChartDataProviderPro/useChartDataProviderProProps.js +0 -50
  182. package/node/context/ZoomProvider/ZoomContext.js +0 -23
  183. package/node/context/ZoomProvider/ZoomProvider.js +0 -63
  184. package/node/context/ZoomProvider/ZoomSetup.js +0 -20
  185. package/node/context/ZoomProvider/defaultizeZoom.js +0 -40
  186. package/node/context/ZoomProvider/index.js +0 -38
  187. package/node/context/ZoomProvider/initializeZoomData.js +0 -20
  188. package/node/context/ZoomProvider/useSetupPan.js +0 -114
  189. package/node/context/ZoomProvider/useSetupZoom.js +0 -281
  190. package/node/context/ZoomProvider/useZoom.js +0 -25
  191. package/node/context/index.js +0 -27
  192. /package/{context/ChartDataProviderPro → ChartDataProviderPro}/index.d.ts +0 -0
  193. /package/{context/ChartDataProviderPro → ChartDataProviderPro}/index.js +0 -0
  194. /package/{context/ZoomProvider/Zoom.types.js → internals/plugins/useChartProZoom/useChartProZoom.types.js} +0 -0
  195. /package/{modern/context/ZoomProvider/Zoom.types.js → internals/plugins/useChartProZoom/zoom.types.js} +0 -0
  196. /package/modern/{context/ChartDataProviderPro → ChartDataProviderPro}/index.js +0 -0
  197. /package/node/{context/ChartDataProviderPro → ChartDataProviderPro}/index.js +0 -0
  198. /package/node/{context/ZoomProvider/Zoom.types.js → internals/plugins/useChartProZoom/useChartProZoom.types.js} +0 -0
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
6
+ Object.defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
9
+ exports.ChartDataProviderPro = ChartDataProviderPro;
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+ var React = _interopRequireWildcard(require("react"));
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+ var _Watermark = require("@mui/x-license/Watermark");
14
+ var _internals = require("@mui/x-charts/internals");
15
+ var _useLicenseVerifier = require("@mui/x-license/useLicenseVerifier");
16
+ var _useChartDataProviderProProps = require("./useChartDataProviderProProps");
17
+ var _releaseInfo = require("../internals/utils/releaseInfo");
18
+ var _jsxRuntime = require("react/jsx-runtime");
19
+ const releaseInfo = (0, _releaseInfo.getReleaseInfo)();
20
+ const packageIdentifier = 'x-charts-pro';
21
+ /**
22
+ * Orchestrates the data providers for the chart components and hooks.
23
+ *
24
+ * Use this component if you have custom HTML components that need to access the chart data.
25
+ *
26
+ * Demos:
27
+ *
28
+ * - [Composition](https://mui.com/x/api/charts/composition/)
29
+ *
30
+ * API:
31
+ *
32
+ * - [ChartDataProviderPro API](https://mui.com/x/api/charts/chart-data-provider/)
33
+ *
34
+ * @example
35
+ * ```jsx
36
+ * <ChartDataProviderPro
37
+ * series={[{ label: "Label", type: "bar", data: [10, 20] }]}
38
+ * xAxis={[{ data: ["A", "B"], scaleType: "band", id: "x-axis" }]}
39
+ * >
40
+ * <ChartsSurface>
41
+ * <BarPlot />
42
+ * <ChartsXAxis position="bottom" axisId="x-axis" />
43
+ * </ChartsSurface>
44
+ * {'Custom Legend Component'}
45
+ * </ChartDataProviderPro>
46
+ * ```
47
+ */
48
+ function ChartDataProviderPro(props) {
49
+ const {
50
+ children,
51
+ animationProviderProps,
52
+ chartProviderProps
53
+ } = (0, _useChartDataProviderProProps.useChartDataProviderProProps)(props);
54
+ (0, _useLicenseVerifier.useLicenseVerifier)(packageIdentifier, releaseInfo);
55
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_internals.ChartProvider, (0, _extends2.default)({}, chartProviderProps, {
56
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_internals.AnimationProvider, (0, _extends2.default)({}, animationProviderProps, {
57
+ children: [children, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Watermark.Watermark, {
58
+ packageName: packageIdentifier,
59
+ releaseInfo: releaseInfo
60
+ })]
61
+ }))
62
+ }));
63
+ }
64
+ process.env.NODE_ENV !== "production" ? ChartDataProviderPro.propTypes = {
65
+ // ----------------------------- Warning --------------------------------
66
+ // | These PropTypes are generated from the TypeScript type definitions |
67
+ // | To update them edit the TypeScript types and run "pnpm proptypes" |
68
+ // ----------------------------------------------------------------------
69
+ apiRef: _propTypes.default.any,
70
+ children: _propTypes.default.node,
71
+ /**
72
+ * Color palette used to colorize multiple series.
73
+ * @default rainbowSurgePalette
74
+ */
75
+ colors: _propTypes.default.any,
76
+ /**
77
+ * An array of objects that can be used to populate series and axes data using their `dataKey` property.
78
+ */
79
+ dataset: _propTypes.default.any,
80
+ /**
81
+ * The height of the chart in px. If not defined, it takes the height of the parent element.
82
+ */
83
+ height: _propTypes.default.any,
84
+ /**
85
+ * This prop is used to help implement the accessibility logic.
86
+ * If you don't provide this prop. It falls back to a randomly generated id.
87
+ */
88
+ id: _propTypes.default.any,
89
+ /**
90
+ * The margin between the SVG and the drawing area.
91
+ * It's used for leaving some space for extra information such as the x- and y-axis or legend.
92
+ * Accepts an object with the optional properties: `top`, `bottom`, `left`, and `right`.
93
+ */
94
+ margin: _propTypes.default.any,
95
+ /**
96
+ * The array of series to display.
97
+ * Each type of series has its own specificity.
98
+ * Please refer to the appropriate docs page to learn more about it.
99
+ */
100
+ series: _propTypes.default.any,
101
+ /**
102
+ * If `true`, animations are skipped.
103
+ * If unset or `false`, the animations respects the user's `prefers-reduced-motion` setting.
104
+ */
105
+ skipAnimation: _propTypes.default.any,
106
+ theme: _propTypes.default.any,
107
+ /**
108
+ * The width of the chart in px. If not defined, it takes the width of the parent element.
109
+ */
110
+ width: _propTypes.default.any
111
+ } : void 0;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useChartDataProviderProProps = void 0;
8
+ var _internals = require("@mui/x-charts/internals");
9
+ const useChartDataProviderProProps = props => {
10
+ const {
11
+ animationProviderProps,
12
+ chartProviderProps,
13
+ children
14
+ } = (0, _internals.useChartDataProviderProps)(props);
15
+ return {
16
+ children,
17
+ animationProviderProps,
18
+ chartProviderProps
19
+ };
20
+ };
21
+ exports.useChartDataProviderProProps = useChartDataProviderProProps;
@@ -15,15 +15,18 @@ var _useId = _interopRequireDefault(require("@mui/utils/useId"));
15
15
  var _d3Interpolate = require("@mui/x-charts-vendor/d3-interpolate");
16
16
  var _ChartsAxis = require("@mui/x-charts/ChartsAxis");
17
17
  var _ChartsClipPath = require("@mui/x-charts/ChartsClipPath");
18
- var _ChartsOnAxisClickHandler = require("@mui/x-charts/ChartsOnAxisClickHandler");
19
18
  var _ChartsOverlay = require("@mui/x-charts/ChartsOverlay");
20
19
  var _ChartContainerPro = require("../ChartContainerPro");
21
20
  var _HeatmapPlot = require("./HeatmapPlot");
22
21
  var _plugin = require("./plugin");
23
22
  var _HeatmapTooltip = require("./HeatmapTooltip");
23
+ var _Heatmap = require("./Heatmap.plugins");
24
24
  var _jsxRuntime = require("react/jsx-runtime");
25
25
  // The GnBu: https://github.com/d3/d3-scale-chromatic/blob/main/src/sequential-multi/GnBu.js
26
26
  const defaultColorMap = (0, _d3Interpolate.interpolateRgbBasis)(['#f7fcf0', '#e0f3db', '#ccebc5', '#a8ddb5', '#7bccc4', '#4eb3d3', '#2b8cbe', '#0868ac', '#084081']);
27
+ const seriesConfig = {
28
+ heatmap: _plugin.plugin
29
+ };
27
30
  const Heatmap = exports.Heatmap = /*#__PURE__*/React.forwardRef(function Heatmap(inProps, ref) {
28
31
  const props = (0, _styles.useThemeProps)({
29
32
  props: inProps,
@@ -73,7 +76,7 @@ const Heatmap = exports.Heatmap = /*#__PURE__*/React.forwardRef(function Heatmap
73
76
  const Tooltip = props.slots?.tooltip ?? _HeatmapTooltip.HeatmapTooltip;
74
77
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ChartContainerPro.ChartContainerPro, {
75
78
  ref: ref,
76
- plugins: [_plugin.plugin],
79
+ seriesConfig: seriesConfig,
77
80
  series: series.map(s => (0, _extends2.default)({
78
81
  type: 'heatmap'
79
82
  }, s)),
@@ -89,9 +92,9 @@ const Heatmap = exports.Heatmap = /*#__PURE__*/React.forwardRef(function Heatmap
89
92
  disableAxisListener: true,
90
93
  highlightedItem: highlightedItem,
91
94
  onHighlightChange: onHighlightChange,
92
- children: [onAxisClick && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOnAxisClickHandler.ChartsOnAxisClickHandler, {
93
- onAxisClick: onAxisClick
94
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("g", {
95
+ onAxisClick: onAxisClick,
96
+ plugins: _Heatmap.HEATMAP_PLUGINS,
97
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("g", {
95
98
  clipPath: `url(#${clipPathId})`,
96
99
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_HeatmapPlot.HeatmapPlot, {
97
100
  slots: slots,
@@ -118,6 +121,11 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
118
121
  // | These PropTypes are generated from the TypeScript type definitions |
119
122
  // | To update them edit the TypeScript types and run "pnpm proptypes" |
120
123
  // ----------------------------------------------------------------------
124
+ apiRef: _propTypes.default.shape({
125
+ current: _propTypes.default.shape({
126
+ setZoomData: _propTypes.default.func.isRequired
127
+ })
128
+ }),
121
129
  /**
122
130
  * Indicate which axis to display the bottom of the charts.
123
131
  * Can be a string (the id of the axis) or an object `ChartsXAxisProps`.
@@ -128,7 +136,7 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
128
136
  className: _propTypes.default.string,
129
137
  /**
130
138
  * Color palette used to colorize multiple series.
131
- * @default blueberryTwilightPalette
139
+ * @default rainbowSurgePalette
132
140
  */
133
141
  colors: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.string), _propTypes.default.func]),
134
142
  /**
@@ -147,12 +155,26 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
147
155
  */
148
156
  height: _propTypes.default.number,
149
157
  /**
150
- * The item currently highlighted. Turns highlighting into a controlled prop.
158
+ * The highlighted item.
159
+ * Used when the highlight is controlled.
151
160
  */
152
161
  highlightedItem: _propTypes.default.shape({
153
162
  dataIndex: _propTypes.default.number,
154
- seriesId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
163
+ seriesId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired
155
164
  }),
165
+ /**
166
+ * This prop is used to help implement the accessibility logic.
167
+ * If you don't provide this prop. It falls back to a randomly generated id.
168
+ */
169
+ id: _propTypes.default.string,
170
+ /**
171
+ * The list of zoom data related to each axis.
172
+ */
173
+ initialZoom: _propTypes.default.arrayOf(_propTypes.default.shape({
174
+ axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
175
+ end: _propTypes.default.number.isRequired,
176
+ start: _propTypes.default.number.isRequired
177
+ })),
156
178
  /**
157
179
  * Indicate which axis to display the left of the charts.
158
180
  * Can be a string (the id of the axis) or an object `ChartsYAxisProps`.
@@ -168,7 +190,6 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
168
190
  * The margin between the SVG and the drawing area.
169
191
  * It's used for leaving some space for extra information such as the x- and y-axis or legend.
170
192
  * Accepts an object with the optional properties: `top`, `bottom`, `left`, and `right`.
171
- * @default object Depends on the charts type.
172
193
  */
173
194
  margin: _propTypes.default.shape({
174
195
  bottom: _propTypes.default.number,
@@ -200,6 +221,11 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
200
221
  * An array of [[HeatmapSeriesType]] objects.
201
222
  */
202
223
  series: _propTypes.default.arrayOf(_propTypes.default.object).isRequired,
224
+ /**
225
+ * The configuration helpers used to compute attributes according to the serries type.
226
+ * @ignore Unstable props for internal usage.
227
+ */
228
+ seriesConfig: _propTypes.default.object,
203
229
  /**
204
230
  * The props used for each component slot.
205
231
  * @default {}
@@ -211,6 +237,7 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
211
237
  */
212
238
  slots: _propTypes.default.object,
213
239
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
240
+ theme: _propTypes.default.oneOf(['dark', 'light']),
214
241
  title: _propTypes.default.string,
215
242
  /**
216
243
  * The configuration of the tooltip.
@@ -260,7 +287,6 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
260
287
  hideTooltip: _propTypes.default.bool,
261
288
  id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
262
289
  label: _propTypes.default.string,
263
- labelFontSize: _propTypes.default.number,
264
290
  labelStyle: _propTypes.default.object,
265
291
  max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
266
292
  min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
@@ -271,7 +297,6 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
271
297
  slots: _propTypes.default.object,
272
298
  stroke: _propTypes.default.string,
273
299
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
274
- tickFontSize: _propTypes.default.number,
275
300
  tickInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.array, _propTypes.default.func]),
276
301
  tickLabelInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.func]),
277
302
  tickLabelPlacement: _propTypes.default.oneOf(['middle', 'tick']),
@@ -325,7 +350,6 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
325
350
  hideTooltip: _propTypes.default.bool,
326
351
  id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
327
352
  label: _propTypes.default.string,
328
- labelFontSize: _propTypes.default.number,
329
353
  labelStyle: _propTypes.default.object,
330
354
  max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
331
355
  min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
@@ -336,7 +360,6 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
336
360
  slots: _propTypes.default.object,
337
361
  stroke: _propTypes.default.string,
338
362
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
339
- tickFontSize: _propTypes.default.number,
340
363
  tickInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.array, _propTypes.default.func]),
341
364
  tickLabelInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.func]),
342
365
  tickLabelPlacement: _propTypes.default.oneOf(['middle', 'tick']),
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.HEATMAP_PLUGINS = void 0;
7
+ var _internals = require("@mui/x-charts/internals");
8
+ const HEATMAP_PLUGINS = exports.HEATMAP_PLUGINS = [_internals.useChartZAxis, _internals.useChartCartesianAxis, _internals.useChartInteraction, _internals.useChartHighlight];
@@ -13,7 +13,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _styles = require("@mui/material/styles");
14
14
  var _useSlotProps = _interopRequireDefault(require("@mui/utils/useSlotProps"));
15
15
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
16
- var _context = require("@mui/x-charts/context");
16
+ var _hooks = require("@mui/x-charts/hooks");
17
17
  var _internals = require("@mui/x-charts/internals");
18
18
  var _heatmapClasses = require("./heatmapClasses");
19
19
  var _jsxRuntime = require("react/jsx-runtime");
@@ -59,7 +59,7 @@ function HeatmapItem(props) {
59
59
  const {
60
60
  isFaded,
61
61
  isHighlighted
62
- } = (0, _context.useItemHighlighted)({
62
+ } = (0, _hooks.useItemHighlighted)({
63
63
  seriesId,
64
64
  dataIndex
65
65
  });
@@ -11,6 +11,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _clsx = _interopRequireDefault(require("clsx"));
14
+ var _HTMLElementType = _interopRequireDefault(require("@mui/utils/HTMLElementType"));
14
15
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
15
16
  var _ChartsTooltip = require("@mui/x-charts/ChartsTooltip");
16
17
  var _hooks = require("@mui/x-charts/hooks");
@@ -34,10 +35,6 @@ const useUtilityClasses = ownerState => {
34
35
  };
35
36
  return (0, _composeClasses.default)(slots, _ChartsTooltip.getChartsTooltipUtilityClass, classes);
36
37
  };
37
-
38
- /**
39
- * @ignore - internal component.
40
- */
41
38
  function DefaultHeatmapTooltipContent(props) {
42
39
  const {
43
40
  classes
@@ -57,7 +54,8 @@ function DefaultHeatmapTooltipContent(props) {
57
54
  const {
58
55
  color,
59
56
  value,
60
- identifier
57
+ identifier,
58
+ markType
61
59
  } = tooltipData;
62
60
  const [xIndex, yIndex] = value;
63
61
  const formattedX = xAxis.valueFormatter?.(xAxis.data[xIndex], {
@@ -90,7 +88,8 @@ function DefaultHeatmapTooltipContent(props) {
90
88
  className: classes?.row,
91
89
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsTooltip.ChartsTooltipCell, {
92
90
  className: (0, _clsx.default)(classes?.markCell, classes?.cell),
93
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsTooltip.ChartsTooltipMark, {
91
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_internals.ChartsLabelMark, {
92
+ type: markType,
94
93
  color: color,
95
94
  className: classes?.mark
96
95
  })
@@ -139,26 +138,7 @@ process.env.NODE_ENV !== "production" ? HeatmapTooltip.propTypes = {
139
138
  * It's used to set the position of the popper.
140
139
  * The return value will passed as the reference object of the Popper instance.
141
140
  */
142
- anchorEl: _propTypes.default.oneOfType([(props, propName) => {
143
- if (props[propName] == null) {
144
- return new Error(`Prop '${propName}' is required but wasn't specified`);
145
- }
146
- if (typeof props[propName] !== 'object' || props[propName].nodeType !== 1) {
147
- return new Error(`Expected prop '${propName}' to be of type Element`);
148
- }
149
- return null;
150
- }, _propTypes.default.func, _propTypes.default.shape({
151
- contextElement: (props, propName) => {
152
- if (props[propName] == null) {
153
- return null;
154
- }
155
- if (typeof props[propName] !== 'object' || props[propName].nodeType !== 1) {
156
- return new Error(`Expected prop '${propName}' to be of type Element`);
157
- }
158
- return null;
159
- },
160
- getBoundingClientRect: _propTypes.default.func.isRequired
161
- })]),
141
+ anchorEl: _propTypes.default /* @typescript-to-proptypes-ignore */.oneOfType([_HTMLElementType.default, _propTypes.default.object, _propTypes.default.func]),
162
142
  /**
163
143
  * Override or extend the styles applied to the component.
164
144
  */
@@ -16,7 +16,8 @@ const formatter = params => {
16
16
  defaultizedSeries[seriesId] = (0, _extends2.default)({
17
17
  // Defaultize the data and the value formatter.
18
18
  valueFormatter: v => v[2].toString(),
19
- data: []
19
+ data: [],
20
+ labelMarkType: 'square'
20
21
  }, series[seriesId]);
21
22
  });
22
23
  return {
@@ -7,15 +7,16 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.getHeatmapUtilityClass = getHeatmapUtilityClass;
8
8
  exports.heatmapClasses = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
- var _utils = require("@mui/utils");
10
+ var _generateUtilityClass = _interopRequireDefault(require("@mui/utils/generateUtilityClass"));
11
+ var _generateUtilityClasses = _interopRequireDefault(require("@mui/utils/generateUtilityClasses"));
11
12
  function getHeatmapUtilityClass(slot) {
12
13
  // Those should be common to all charts
13
14
  if (['highlighted', 'faded'].includes(slot)) {
14
- return (0, _utils.unstable_generateUtilityClass)('Charts', slot);
15
+ return (0, _generateUtilityClass.default)('Charts', slot);
15
16
  }
16
- return (0, _utils.unstable_generateUtilityClass)('MuiHeatmap', slot);
17
+ return (0, _generateUtilityClass.default)('MuiHeatmap', slot);
17
18
  }
18
- const heatmapClasses = exports.heatmapClasses = (0, _extends2.default)({}, (0, _utils.unstable_generateUtilityClasses)('MuiHeatmap', ['cell']), {
19
+ const heatmapClasses = exports.heatmapClasses = (0, _extends2.default)({}, (0, _generateUtilityClasses.default)('MuiHeatmap', ['cell']), {
19
20
  highlighted: 'Charts-highlighted',
20
21
  faded: 'Charts-faded'
21
22
  });
@@ -8,10 +8,12 @@ exports.plugin = void 0;
8
8
  var _extremums = require("./extremums");
9
9
  var _formatter = _interopRequireDefault(require("./formatter"));
10
10
  var _getColor = _interopRequireDefault(require("./getColor"));
11
+ var _tooltip = _interopRequireDefault(require("./tooltip"));
11
12
  const plugin = exports.plugin = {
12
- seriesType: 'heatmap',
13
- seriesFormatter: _formatter.default,
13
+ seriesProcessor: _formatter.default,
14
14
  colorProcessor: _getColor.default,
15
+ legendGetter: () => [],
16
+ tooltipGetter: _tooltip.default,
15
17
  xExtremumGetter: _extremums.getBaseExtremum,
16
18
  yExtremumGetter: _extremums.getBaseExtremum
17
19
  };
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _internals = require("@mui/x-charts/internals");
8
+ const tooltipGetter = params => {
9
+ const {
10
+ series,
11
+ getColor,
12
+ identifier
13
+ } = params;
14
+ if (!identifier || identifier.dataIndex === undefined) {
15
+ return null;
16
+ }
17
+ const label = (0, _internals.getLabel)(series.label, 'tooltip');
18
+ const value = series.data[identifier.dataIndex];
19
+ const formattedValue = series.valueFormatter(value, {
20
+ dataIndex: identifier.dataIndex
21
+ });
22
+ return {
23
+ identifier,
24
+ color: getColor(identifier.dataIndex),
25
+ label,
26
+ value,
27
+ formattedValue,
28
+ markType: series.labelMarkType
29
+ };
30
+ };
31
+ var _default = exports.default = tooltipGetter;