@mui/x-charts 9.2.0 → 9.3.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 (78) hide show
  1. package/BarChart/BarChart.js +10 -10
  2. package/BarChart/BarChart.mjs +10 -10
  3. package/BarChart/seriesConfig/bar/getColor.js +7 -53
  4. package/BarChart/seriesConfig/bar/getColor.mjs +7 -53
  5. package/BarChart/seriesConfig/bar/seriesProcessor.js +3 -1
  6. package/BarChart/seriesConfig/bar/seriesProcessor.mjs +3 -1
  7. package/BarChart/seriesConfig/bar/tooltip.js +4 -27
  8. package/BarChart/seriesConfig/bar/tooltip.mjs +4 -27
  9. package/CHANGELOG.md +118 -0
  10. package/ChartsContainer/ChartsContainer.js +9 -9
  11. package/ChartsContainer/ChartsContainer.mjs +9 -9
  12. package/ChartsLabel/ChartsLabelMark.js +0 -2
  13. package/ChartsLabel/ChartsLabelMark.mjs +0 -2
  14. package/ChartsLabel/labelMarkClasses.d.mts +0 -1
  15. package/ChartsLabel/labelMarkClasses.d.ts +0 -1
  16. package/ChartsLabel/labelMarkClasses.js +1 -2
  17. package/ChartsLabel/labelMarkClasses.mjs +2 -2
  18. package/ChartsLayerContainer/ChartsLayerContainer.js +36 -30
  19. package/ChartsLayerContainer/ChartsLayerContainer.mjs +36 -30
  20. package/ChartsXAxis/ChartsXAxis.js +3 -1
  21. package/ChartsXAxis/ChartsXAxis.mjs +3 -1
  22. package/ChartsYAxis/ChartsYAxis.js +3 -1
  23. package/ChartsYAxis/ChartsYAxis.mjs +3 -1
  24. package/LineChart/LineChart.js +6 -6
  25. package/LineChart/LineChart.mjs +6 -6
  26. package/LineChart/seriesConfig/curveEvaluation.js +12 -1
  27. package/LineChart/seriesConfig/curveEvaluation.mjs +12 -1
  28. package/LineChart/seriesConfig/getColor.js +7 -54
  29. package/LineChart/seriesConfig/getColor.mjs +7 -54
  30. package/LineChart/seriesConfig/seriesProcessor.d.mts +2 -4
  31. package/LineChart/seriesConfig/seriesProcessor.d.ts +2 -4
  32. package/LineChart/seriesConfig/seriesProcessor.js +2 -139
  33. package/LineChart/seriesConfig/seriesProcessor.mjs +2 -138
  34. package/LineChart/seriesConfig/tooltip.js +4 -25
  35. package/LineChart/seriesConfig/tooltip.mjs +4 -25
  36. package/PieChart/PieChart.js +6 -6
  37. package/PieChart/PieChart.mjs +6 -6
  38. package/RadarChart/RadarAxis/useRadarAxis.js +1 -1
  39. package/RadarChart/RadarAxis/useRadarAxis.mjs +1 -1
  40. package/RadarChart/RadarChart.js +8 -8
  41. package/RadarChart/RadarChart.mjs +8 -8
  42. package/RadarChart/RadarSeriesPlot/RadarSeriesArea.js +3 -1
  43. package/RadarChart/RadarSeriesPlot/RadarSeriesArea.mjs +3 -1
  44. package/RadarChart/RadarSeriesPlot/RadarSeriesMarks.js +1 -0
  45. package/RadarChart/RadarSeriesPlot/RadarSeriesMarks.mjs +1 -0
  46. package/RadarChart/RadarSeriesPlot/RadarSeriesPlot.js +1 -0
  47. package/RadarChart/RadarSeriesPlot/RadarSeriesPlot.mjs +1 -0
  48. package/ScatterChart/ScatterChart.js +11 -11
  49. package/ScatterChart/ScatterChart.mjs +11 -11
  50. package/ScatterChart/seriesConfig/tooltip.js +2 -24
  51. package/ScatterChart/seriesConfig/tooltip.mjs +2 -24
  52. package/SparkLineChart/SparkLineChart.js +27 -27
  53. package/SparkLineChart/SparkLineChart.mjs +27 -27
  54. package/index.js +1 -1
  55. package/index.mjs +1 -1
  56. package/internals/components/ChartsAccessibilityProxy/ChartsAccessibilityProxy.js +1 -1
  57. package/internals/components/ChartsAccessibilityProxy/ChartsAccessibilityProxy.mjs +1 -1
  58. package/internals/getLineLikeTooltip.d.mts +9 -0
  59. package/internals/getLineLikeTooltip.d.ts +9 -0
  60. package/internals/getLineLikeTooltip.js +38 -0
  61. package/internals/getLineLikeTooltip.mjs +31 -0
  62. package/internals/index.d.mts +3 -0
  63. package/internals/index.d.ts +3 -0
  64. package/internals/index.js +24 -0
  65. package/internals/index.mjs +3 -0
  66. package/internals/plugins/corePlugins/useChartSeriesConfig/types/tooltipGetter.types.d.mts +4 -2
  67. package/internals/plugins/corePlugins/useChartSeriesConfig/types/tooltipGetter.types.d.ts +4 -2
  68. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.js +3 -0
  69. package/internals/plugins/featurePlugins/useChartHighlight/useChartHighlight.mjs +3 -0
  70. package/internals/processLineLikeSeries.d.mts +6 -0
  71. package/internals/processLineLikeSeries.d.ts +6 -0
  72. package/internals/processLineLikeSeries.js +145 -0
  73. package/internals/processLineLikeSeries.mjs +138 -0
  74. package/internals/resolveColorProcessor.d.mts +11 -0
  75. package/internals/resolveColorProcessor.d.ts +11 -0
  76. package/internals/resolveColorProcessor.js +62 -0
  77. package/internals/resolveColorProcessor.mjs +56 -0
  78. package/package.json +3 -3
@@ -292,15 +292,15 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
292
292
  }), _propTypes.default.shape({
293
293
  dataIndex: _propTypes.default.number,
294
294
  seriesId: _propTypes.default.string.isRequired,
295
- type: _propTypes.default.oneOf(['scatter']).isRequired
295
+ type: _propTypes.default.oneOf(['pie']).isRequired
296
296
  }), _propTypes.default.shape({
297
297
  dataIndex: _propTypes.default.number,
298
298
  seriesId: _propTypes.default.string.isRequired,
299
- type: _propTypes.default.oneOf(['pie']).isRequired
299
+ type: _propTypes.default.oneOf(['radar']).isRequired
300
300
  }), _propTypes.default.shape({
301
301
  dataIndex: _propTypes.default.number,
302
302
  seriesId: _propTypes.default.string.isRequired,
303
- type: _propTypes.default.oneOf(['radar']).isRequired
303
+ type: _propTypes.default.oneOf(['scatter']).isRequired
304
304
  }), _propTypes.default.shape({
305
305
  dataIndex: _propTypes.default.number,
306
306
  seriesId: _propTypes.default.string.isRequired,
@@ -312,15 +312,15 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
312
312
  }), _propTypes.default.shape({
313
313
  dataIndex: _propTypes.default.number,
314
314
  seriesId: _propTypes.default.string.isRequired,
315
- type: _propTypes.default.oneOf(['scatter'])
315
+ type: _propTypes.default.oneOf(['pie'])
316
316
  }), _propTypes.default.shape({
317
317
  dataIndex: _propTypes.default.number,
318
318
  seriesId: _propTypes.default.string.isRequired,
319
- type: _propTypes.default.oneOf(['pie'])
319
+ type: _propTypes.default.oneOf(['radar'])
320
320
  }), _propTypes.default.shape({
321
321
  dataIndex: _propTypes.default.number,
322
322
  seriesId: _propTypes.default.string.isRequired,
323
- type: _propTypes.default.oneOf(['radar'])
323
+ type: _propTypes.default.oneOf(['scatter'])
324
324
  })]).isRequired),
325
325
  /**
326
326
  * The controlled axis highlight.
@@ -335,20 +335,16 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
335
335
  * Used when the highlight is controlled.
336
336
  */
337
337
  highlightedItem: _propTypes.default.oneOfType([_propTypes.default.shape({
338
- dataIndex: _propTypes.default.number,
339
- seriesId: _propTypes.default.string.isRequired,
340
- type: _propTypes.default.oneOf(['bar']).isRequired
341
- }), _propTypes.default.shape({
342
338
  dataIndex: _propTypes.default.number,
343
339
  seriesId: _propTypes.default.string.isRequired
344
340
  }), _propTypes.default.shape({
345
341
  dataIndex: _propTypes.default.number,
346
342
  seriesId: _propTypes.default.string.isRequired,
347
- type: _propTypes.default.oneOf(['line']).isRequired
343
+ type: _propTypes.default.oneOf(['bar']).isRequired
348
344
  }), _propTypes.default.shape({
349
345
  dataIndex: _propTypes.default.number,
350
346
  seriesId: _propTypes.default.string.isRequired,
351
- type: _propTypes.default.oneOf(['scatter']).isRequired
347
+ type: _propTypes.default.oneOf(['line']).isRequired
352
348
  }), _propTypes.default.shape({
353
349
  dataIndex: _propTypes.default.number,
354
350
  seriesId: _propTypes.default.string.isRequired,
@@ -357,6 +353,10 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
357
353
  dataIndex: _propTypes.default.number,
358
354
  seriesId: _propTypes.default.string.isRequired,
359
355
  type: _propTypes.default.oneOf(['radar']).isRequired
356
+ }), _propTypes.default.shape({
357
+ dataIndex: _propTypes.default.number,
358
+ seriesId: _propTypes.default.string.isRequired,
359
+ type: _propTypes.default.oneOf(['scatter']).isRequired
360
360
  })]),
361
361
  /**
362
362
  * Defines the maximum distance between a scatter point and the pointer that triggers the interaction.
@@ -401,15 +401,15 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
401
401
  }), _propTypes.default.shape({
402
402
  dataIndex: _propTypes.default.number,
403
403
  seriesId: _propTypes.default.string.isRequired,
404
- type: _propTypes.default.oneOf(['scatter']).isRequired
404
+ type: _propTypes.default.oneOf(['pie']).isRequired
405
405
  }), _propTypes.default.shape({
406
406
  dataIndex: _propTypes.default.number,
407
407
  seriesId: _propTypes.default.string.isRequired,
408
- type: _propTypes.default.oneOf(['pie']).isRequired
408
+ type: _propTypes.default.oneOf(['radar']).isRequired
409
409
  }), _propTypes.default.shape({
410
410
  dataIndex: _propTypes.default.number,
411
411
  seriesId: _propTypes.default.string.isRequired,
412
- type: _propTypes.default.oneOf(['radar']).isRequired
412
+ type: _propTypes.default.oneOf(['scatter']).isRequired
413
413
  }), _propTypes.default.shape({
414
414
  dataIndex: _propTypes.default.number,
415
415
  seriesId: _propTypes.default.string.isRequired,
@@ -421,15 +421,15 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
421
421
  }), _propTypes.default.shape({
422
422
  dataIndex: _propTypes.default.number,
423
423
  seriesId: _propTypes.default.string.isRequired,
424
- type: _propTypes.default.oneOf(['scatter'])
424
+ type: _propTypes.default.oneOf(['pie'])
425
425
  }), _propTypes.default.shape({
426
426
  dataIndex: _propTypes.default.number,
427
427
  seriesId: _propTypes.default.string.isRequired,
428
- type: _propTypes.default.oneOf(['pie'])
428
+ type: _propTypes.default.oneOf(['radar'])
429
429
  }), _propTypes.default.shape({
430
430
  dataIndex: _propTypes.default.number,
431
431
  seriesId: _propTypes.default.string.isRequired,
432
- type: _propTypes.default.oneOf(['radar'])
432
+ type: _propTypes.default.oneOf(['scatter'])
433
433
  })]).isRequired),
434
434
  /**
435
435
  * Localized text for chart components.
@@ -547,27 +547,27 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
547
547
  * Used when the tooltip is controlled.
548
548
  */
549
549
  tooltipItem: _propTypes.default.oneOfType([_propTypes.default.shape({
550
+ dataIndex: _propTypes.default.number.isRequired,
551
+ seriesId: _propTypes.default.string.isRequired
552
+ }), _propTypes.default.shape({
550
553
  dataIndex: _propTypes.default.number.isRequired,
551
554
  seriesId: _propTypes.default.string.isRequired,
552
555
  type: _propTypes.default.oneOf(['bar']).isRequired
553
556
  }), _propTypes.default.shape({
554
557
  dataIndex: _propTypes.default.number.isRequired,
555
- seriesId: _propTypes.default.string.isRequired
556
- }), _propTypes.default.shape({
557
- dataIndex: _propTypes.default.number,
558
558
  seriesId: _propTypes.default.string.isRequired,
559
- type: _propTypes.default.oneOf(['line']).isRequired
560
- }), _propTypes.default.shape({
561
- dataIndex: _propTypes.default.number,
562
- seriesId: _propTypes.default.string.isRequired
559
+ type: _propTypes.default.oneOf(['pie']).isRequired
563
560
  }), _propTypes.default.shape({
564
561
  dataIndex: _propTypes.default.number.isRequired,
565
562
  seriesId: _propTypes.default.string.isRequired,
566
563
  type: _propTypes.default.oneOf(['scatter']).isRequired
567
564
  }), _propTypes.default.shape({
568
- dataIndex: _propTypes.default.number.isRequired,
565
+ dataIndex: _propTypes.default.number,
566
+ seriesId: _propTypes.default.string.isRequired
567
+ }), _propTypes.default.shape({
568
+ dataIndex: _propTypes.default.number,
569
569
  seriesId: _propTypes.default.string.isRequired,
570
- type: _propTypes.default.oneOf(['pie']).isRequired
570
+ type: _propTypes.default.oneOf(['line']).isRequired
571
571
  }), _propTypes.default.shape({
572
572
  dataIndex: _propTypes.default.number,
573
573
  seriesId: _propTypes.default.string.isRequired,
@@ -285,15 +285,15 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
285
285
  }), PropTypes.shape({
286
286
  dataIndex: PropTypes.number,
287
287
  seriesId: PropTypes.string.isRequired,
288
- type: PropTypes.oneOf(['scatter']).isRequired
288
+ type: PropTypes.oneOf(['pie']).isRequired
289
289
  }), PropTypes.shape({
290
290
  dataIndex: PropTypes.number,
291
291
  seriesId: PropTypes.string.isRequired,
292
- type: PropTypes.oneOf(['pie']).isRequired
292
+ type: PropTypes.oneOf(['radar']).isRequired
293
293
  }), PropTypes.shape({
294
294
  dataIndex: PropTypes.number,
295
295
  seriesId: PropTypes.string.isRequired,
296
- type: PropTypes.oneOf(['radar']).isRequired
296
+ type: PropTypes.oneOf(['scatter']).isRequired
297
297
  }), PropTypes.shape({
298
298
  dataIndex: PropTypes.number,
299
299
  seriesId: PropTypes.string.isRequired,
@@ -305,15 +305,15 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
305
305
  }), PropTypes.shape({
306
306
  dataIndex: PropTypes.number,
307
307
  seriesId: PropTypes.string.isRequired,
308
- type: PropTypes.oneOf(['scatter'])
308
+ type: PropTypes.oneOf(['pie'])
309
309
  }), PropTypes.shape({
310
310
  dataIndex: PropTypes.number,
311
311
  seriesId: PropTypes.string.isRequired,
312
- type: PropTypes.oneOf(['pie'])
312
+ type: PropTypes.oneOf(['radar'])
313
313
  }), PropTypes.shape({
314
314
  dataIndex: PropTypes.number,
315
315
  seriesId: PropTypes.string.isRequired,
316
- type: PropTypes.oneOf(['radar'])
316
+ type: PropTypes.oneOf(['scatter'])
317
317
  })]).isRequired),
318
318
  /**
319
319
  * The controlled axis highlight.
@@ -328,20 +328,16 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
328
328
  * Used when the highlight is controlled.
329
329
  */
330
330
  highlightedItem: PropTypes.oneOfType([PropTypes.shape({
331
- dataIndex: PropTypes.number,
332
- seriesId: PropTypes.string.isRequired,
333
- type: PropTypes.oneOf(['bar']).isRequired
334
- }), PropTypes.shape({
335
331
  dataIndex: PropTypes.number,
336
332
  seriesId: PropTypes.string.isRequired
337
333
  }), PropTypes.shape({
338
334
  dataIndex: PropTypes.number,
339
335
  seriesId: PropTypes.string.isRequired,
340
- type: PropTypes.oneOf(['line']).isRequired
336
+ type: PropTypes.oneOf(['bar']).isRequired
341
337
  }), PropTypes.shape({
342
338
  dataIndex: PropTypes.number,
343
339
  seriesId: PropTypes.string.isRequired,
344
- type: PropTypes.oneOf(['scatter']).isRequired
340
+ type: PropTypes.oneOf(['line']).isRequired
345
341
  }), PropTypes.shape({
346
342
  dataIndex: PropTypes.number,
347
343
  seriesId: PropTypes.string.isRequired,
@@ -350,6 +346,10 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
350
346
  dataIndex: PropTypes.number,
351
347
  seriesId: PropTypes.string.isRequired,
352
348
  type: PropTypes.oneOf(['radar']).isRequired
349
+ }), PropTypes.shape({
350
+ dataIndex: PropTypes.number,
351
+ seriesId: PropTypes.string.isRequired,
352
+ type: PropTypes.oneOf(['scatter']).isRequired
353
353
  })]),
354
354
  /**
355
355
  * Defines the maximum distance between a scatter point and the pointer that triggers the interaction.
@@ -394,15 +394,15 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
394
394
  }), PropTypes.shape({
395
395
  dataIndex: PropTypes.number,
396
396
  seriesId: PropTypes.string.isRequired,
397
- type: PropTypes.oneOf(['scatter']).isRequired
397
+ type: PropTypes.oneOf(['pie']).isRequired
398
398
  }), PropTypes.shape({
399
399
  dataIndex: PropTypes.number,
400
400
  seriesId: PropTypes.string.isRequired,
401
- type: PropTypes.oneOf(['pie']).isRequired
401
+ type: PropTypes.oneOf(['radar']).isRequired
402
402
  }), PropTypes.shape({
403
403
  dataIndex: PropTypes.number,
404
404
  seriesId: PropTypes.string.isRequired,
405
- type: PropTypes.oneOf(['radar']).isRequired
405
+ type: PropTypes.oneOf(['scatter']).isRequired
406
406
  }), PropTypes.shape({
407
407
  dataIndex: PropTypes.number,
408
408
  seriesId: PropTypes.string.isRequired,
@@ -414,15 +414,15 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
414
414
  }), PropTypes.shape({
415
415
  dataIndex: PropTypes.number,
416
416
  seriesId: PropTypes.string.isRequired,
417
- type: PropTypes.oneOf(['scatter'])
417
+ type: PropTypes.oneOf(['pie'])
418
418
  }), PropTypes.shape({
419
419
  dataIndex: PropTypes.number,
420
420
  seriesId: PropTypes.string.isRequired,
421
- type: PropTypes.oneOf(['pie'])
421
+ type: PropTypes.oneOf(['radar'])
422
422
  }), PropTypes.shape({
423
423
  dataIndex: PropTypes.number,
424
424
  seriesId: PropTypes.string.isRequired,
425
- type: PropTypes.oneOf(['radar'])
425
+ type: PropTypes.oneOf(['scatter'])
426
426
  })]).isRequired),
427
427
  /**
428
428
  * Localized text for chart components.
@@ -540,27 +540,27 @@ process.env.NODE_ENV !== "production" ? SparkLineChart.propTypes = {
540
540
  * Used when the tooltip is controlled.
541
541
  */
542
542
  tooltipItem: PropTypes.oneOfType([PropTypes.shape({
543
+ dataIndex: PropTypes.number.isRequired,
544
+ seriesId: PropTypes.string.isRequired
545
+ }), PropTypes.shape({
543
546
  dataIndex: PropTypes.number.isRequired,
544
547
  seriesId: PropTypes.string.isRequired,
545
548
  type: PropTypes.oneOf(['bar']).isRequired
546
549
  }), PropTypes.shape({
547
550
  dataIndex: PropTypes.number.isRequired,
548
- seriesId: PropTypes.string.isRequired
549
- }), PropTypes.shape({
550
- dataIndex: PropTypes.number,
551
551
  seriesId: PropTypes.string.isRequired,
552
- type: PropTypes.oneOf(['line']).isRequired
553
- }), PropTypes.shape({
554
- dataIndex: PropTypes.number,
555
- seriesId: PropTypes.string.isRequired
552
+ type: PropTypes.oneOf(['pie']).isRequired
556
553
  }), PropTypes.shape({
557
554
  dataIndex: PropTypes.number.isRequired,
558
555
  seriesId: PropTypes.string.isRequired,
559
556
  type: PropTypes.oneOf(['scatter']).isRequired
560
557
  }), PropTypes.shape({
561
- dataIndex: PropTypes.number.isRequired,
558
+ dataIndex: PropTypes.number,
559
+ seriesId: PropTypes.string.isRequired
560
+ }), PropTypes.shape({
561
+ dataIndex: PropTypes.number,
562
562
  seriesId: PropTypes.string.isRequired,
563
- type: PropTypes.oneOf(['pie']).isRequired
563
+ type: PropTypes.oneOf(['line']).isRequired
564
564
  }), PropTypes.shape({
565
565
  dataIndex: PropTypes.number,
566
566
  seriesId: PropTypes.string.isRequired,
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-charts v9.2.0
2
+ * @mui/x-charts v9.3.0
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
package/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-charts v9.2.0
2
+ * @mui/x-charts v9.3.0
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -92,7 +92,7 @@ function ChartsAccessibilityProxy() {
92
92
  }
93
93
  }, [message, chartId]);
94
94
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
95
- role: "presentation",
95
+ role: "none",
96
96
  tabIndex: message ? undefined : 0,
97
97
  ref: containerRef,
98
98
  style: fullSizeLayerStyle
@@ -88,7 +88,7 @@ export function ChartsAccessibilityProxy() {
88
88
  }
89
89
  }, [message, chartId]);
90
90
  return /*#__PURE__*/_jsx("div", {
91
- role: "presentation",
91
+ role: "none",
92
92
  tabIndex: message ? undefined : 0,
93
93
  ref: containerRef,
94
94
  style: fullSizeLayerStyle
@@ -0,0 +1,9 @@
1
+ import type { ChartSeriesType } from "../models/seriesType/config.mjs";
2
+ import type { TooltipGetterParams, TooltipGetterResult } from "./plugins/corePlugins/useChartSeriesConfig/index.mjs";
3
+ type LineLikeTooltipChartType = Extract<ChartSeriesType, 'line' | 'radialLine' | 'bar' | 'radialBar' | 'scatter'>;
4
+ export interface LineLikeTooltipOptions {
5
+ skipNullValues?: boolean;
6
+ includeMarkShape?: boolean;
7
+ }
8
+ export declare function getLineLikeTooltip<SeriesType extends LineLikeTooltipChartType>(params: TooltipGetterParams<SeriesType>, options?: LineLikeTooltipOptions): TooltipGetterResult<SeriesType>;
9
+ export {};
@@ -0,0 +1,9 @@
1
+ import type { ChartSeriesType } from "../models/seriesType/config.js";
2
+ import type { TooltipGetterParams, TooltipGetterResult } from "./plugins/corePlugins/useChartSeriesConfig/index.js";
3
+ type LineLikeTooltipChartType = Extract<ChartSeriesType, 'line' | 'radialLine' | 'bar' | 'radialBar' | 'scatter'>;
4
+ export interface LineLikeTooltipOptions {
5
+ skipNullValues?: boolean;
6
+ includeMarkShape?: boolean;
7
+ }
8
+ export declare function getLineLikeTooltip<SeriesType extends LineLikeTooltipChartType>(params: TooltipGetterParams<SeriesType>, options?: LineLikeTooltipOptions): TooltipGetterResult<SeriesType>;
9
+ export {};
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.getLineLikeTooltip = getLineLikeTooltip;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _getLabel = require("./getLabel");
10
+ function getLineLikeTooltip(params, options = {}) {
11
+ const {
12
+ series,
13
+ getColor,
14
+ identifier
15
+ } = params;
16
+ if (!identifier || identifier.dataIndex === undefined) {
17
+ return null;
18
+ }
19
+ const label = (0, _getLabel.getLabel)(series.label, 'tooltip');
20
+ const value = series.data[identifier.dataIndex];
21
+ if (options.skipNullValues && value == null) {
22
+ return null;
23
+ }
24
+ const formattedValue = series.valueFormatter(value, {
25
+ dataIndex: identifier.dataIndex
26
+ });
27
+ const result = (0, _extends2.default)({
28
+ identifier,
29
+ color: getColor(identifier.dataIndex),
30
+ label,
31
+ value,
32
+ formattedValue,
33
+ markType: series.labelMarkType
34
+ }, options.includeMarkShape && 'showMark' in series && {
35
+ markShape: series.showMark ? series.shape : undefined
36
+ });
37
+ return result;
38
+ }
@@ -0,0 +1,31 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { getLabel } from "./getLabel.mjs";
3
+ export function getLineLikeTooltip(params, options = {}) {
4
+ const {
5
+ series,
6
+ getColor,
7
+ identifier
8
+ } = params;
9
+ if (!identifier || identifier.dataIndex === undefined) {
10
+ return null;
11
+ }
12
+ const label = getLabel(series.label, 'tooltip');
13
+ const value = series.data[identifier.dataIndex];
14
+ if (options.skipNullValues && value == null) {
15
+ return null;
16
+ }
17
+ const formattedValue = series.valueFormatter(value, {
18
+ dataIndex: identifier.dataIndex
19
+ });
20
+ const result = _extends({
21
+ identifier,
22
+ color: getColor(identifier.dataIndex),
23
+ label,
24
+ value,
25
+ formattedValue,
26
+ markType: series.labelMarkType
27
+ }, options.includeMarkShape && 'showMark' in series && {
28
+ markShape: series.showMark ? series.shape : undefined
29
+ });
30
+ return result;
31
+ }
@@ -73,6 +73,9 @@ export * from "./findMinMax.mjs";
73
73
  export * from "./commonNextFocusItem.mjs";
74
74
  export { createCommonKeyboardFocusHandler } from "./createCommonKeyboardFocusHandler.mjs";
75
75
  export { getSeriesColorFn } from "./getSeriesColorFn.mjs";
76
+ export { resolveColorProcessor } from "./resolveColorProcessor.mjs";
77
+ export { processLineLikeSeries } from "./processLineLikeSeries.mjs";
78
+ export { getLineLikeTooltip } from "./getLineLikeTooltip.mjs";
76
79
  export { checkBarChartScaleErrors } from "../BarChart/checkBarChartScaleErrors.mjs";
77
80
  export { getBandSize } from "./getBandSize.mjs";
78
81
  export * from "./plugins/utils/defaultSeriesConfig.mjs";
@@ -73,6 +73,9 @@ export * from "./findMinMax.js";
73
73
  export * from "./commonNextFocusItem.js";
74
74
  export { createCommonKeyboardFocusHandler } from "./createCommonKeyboardFocusHandler.js";
75
75
  export { getSeriesColorFn } from "./getSeriesColorFn.js";
76
+ export { resolveColorProcessor } from "./resolveColorProcessor.js";
77
+ export { processLineLikeSeries } from "./processLineLikeSeries.js";
78
+ export { getLineLikeTooltip } from "./getLineLikeTooltip.js";
76
79
  export { checkBarChartScaleErrors } from "../BarChart/checkBarChartScaleErrors.js";
77
80
  export { getBandSize } from "./getBandSize.js";
78
81
  export * from "./plugins/utils/defaultSeriesConfig.js";
@@ -24,6 +24,9 @@ var _exportNames = {
24
24
  getRotationAxisIndex: true,
25
25
  createCommonKeyboardFocusHandler: true,
26
26
  getSeriesColorFn: true,
27
+ resolveColorProcessor: true,
28
+ processLineLikeSeries: true,
29
+ getLineLikeTooltip: true,
27
30
  checkBarChartScaleErrors: true,
28
31
  getBandSize: true,
29
32
  EPSILON: true,
@@ -93,6 +96,12 @@ Object.defineProperty(exports, "getLineItemAtPosition", {
93
96
  return _getItemAtPosition.default;
94
97
  }
95
98
  });
99
+ Object.defineProperty(exports, "getLineLikeTooltip", {
100
+ enumerable: true,
101
+ get: function () {
102
+ return _getLineLikeTooltip.getLineLikeTooltip;
103
+ }
104
+ });
96
105
  Object.defineProperty(exports, "getRotationAxisIndex", {
97
106
  enumerable: true,
98
107
  get: function () {
@@ -111,6 +120,18 @@ Object.defineProperty(exports, "processBarDataForPlot", {
111
120
  return _useBarPlotData.processBarDataForPlot;
112
121
  }
113
122
  });
123
+ Object.defineProperty(exports, "processLineLikeSeries", {
124
+ enumerable: true,
125
+ get: function () {
126
+ return _processLineLikeSeries.processLineLikeSeries;
127
+ }
128
+ });
129
+ Object.defineProperty(exports, "resolveColorProcessor", {
130
+ enumerable: true,
131
+ get: function () {
132
+ return _resolveColorProcessor.resolveColorProcessor;
133
+ }
134
+ });
114
135
  Object.defineProperty(exports, "scatterSeriesConfig", {
115
136
  enumerable: true,
116
137
  get: function () {
@@ -885,6 +906,9 @@ Object.keys(_commonNextFocusItem).forEach(function (key) {
885
906
  });
886
907
  var _createCommonKeyboardFocusHandler = require("./createCommonKeyboardFocusHandler");
887
908
  var _getSeriesColorFn = require("./getSeriesColorFn");
909
+ var _resolveColorProcessor = require("./resolveColorProcessor");
910
+ var _processLineLikeSeries = require("./processLineLikeSeries");
911
+ var _getLineLikeTooltip = require("./getLineLikeTooltip");
888
912
  var _checkBarChartScaleErrors = require("../BarChart/checkBarChartScaleErrors");
889
913
  var _getBandSize = require("./getBandSize");
890
914
  var _defaultSeriesConfig = require("./plugins/utils/defaultSeriesConfig");
@@ -81,6 +81,9 @@ export * from "./findMinMax.mjs";
81
81
  export * from "./commonNextFocusItem.mjs";
82
82
  export { createCommonKeyboardFocusHandler } from "./createCommonKeyboardFocusHandler.mjs";
83
83
  export { getSeriesColorFn } from "./getSeriesColorFn.mjs";
84
+ export { resolveColorProcessor } from "./resolveColorProcessor.mjs";
85
+ export { processLineLikeSeries } from "./processLineLikeSeries.mjs";
86
+ export { getLineLikeTooltip } from "./getLineLikeTooltip.mjs";
84
87
  export { checkBarChartScaleErrors } from "../BarChart/checkBarChartScaleErrors.mjs";
85
88
  export { getBandSize } from "./getBandSize.mjs";
86
89
  export * from "./plugins/utils/defaultSeriesConfig.mjs";
@@ -55,12 +55,14 @@ export interface TooltipGetterAxesConfig {
55
55
  rotation?: PolarAxisDefaultized<any, any, ChartsRotationAxisProps>;
56
56
  radius?: PolarAxisDefaultized<any, any, ChartsRadiusAxisProps>;
57
57
  }
58
- export type TooltipGetter<SeriesType extends ChartSeriesType> = (params: {
58
+ export interface TooltipGetterParams<SeriesType extends ChartSeriesType> {
59
59
  series: ChartSeriesDefaultized<SeriesType>;
60
60
  axesConfig: TooltipGetterAxesConfig;
61
61
  getColor: ColorGetter<SeriesType>;
62
62
  identifier: SeriesItemIdentifierWithType<SeriesType> | null;
63
- }) => (SeriesType extends 'radar' ? ItemTooltipWithMultipleValues<SeriesType> : ItemTooltip<SeriesType>) | null;
63
+ }
64
+ export type TooltipGetterResult<SeriesType extends ChartSeriesType> = (SeriesType extends 'radar' ? ItemTooltipWithMultipleValues<SeriesType> : ItemTooltip<SeriesType>) | null;
65
+ export type TooltipGetter<SeriesType extends ChartSeriesType> = (params: TooltipGetterParams<SeriesType>) => TooltipGetterResult<SeriesType>;
64
66
  /**
65
67
  * If `axisId` is set to undefined, the default axis will be used.
66
68
  *
@@ -55,12 +55,14 @@ export interface TooltipGetterAxesConfig {
55
55
  rotation?: PolarAxisDefaultized<any, any, ChartsRotationAxisProps>;
56
56
  radius?: PolarAxisDefaultized<any, any, ChartsRadiusAxisProps>;
57
57
  }
58
- export type TooltipGetter<SeriesType extends ChartSeriesType> = (params: {
58
+ export interface TooltipGetterParams<SeriesType extends ChartSeriesType> {
59
59
  series: ChartSeriesDefaultized<SeriesType>;
60
60
  axesConfig: TooltipGetterAxesConfig;
61
61
  getColor: ColorGetter<SeriesType>;
62
62
  identifier: SeriesItemIdentifierWithType<SeriesType> | null;
63
- }) => (SeriesType extends 'radar' ? ItemTooltipWithMultipleValues<SeriesType> : ItemTooltip<SeriesType>) | null;
63
+ }
64
+ export type TooltipGetterResult<SeriesType extends ChartSeriesType> = (SeriesType extends 'radar' ? ItemTooltipWithMultipleValues<SeriesType> : ItemTooltip<SeriesType>) | null;
65
+ export type TooltipGetter<SeriesType extends ChartSeriesType> = (params: TooltipGetterParams<SeriesType>) => TooltipGetterResult<SeriesType>;
64
66
  /**
65
67
  * If `axisId` is set to undefined, the default axis will be used.
66
68
  *
@@ -25,6 +25,9 @@ const useChartHighlight = ({
25
25
  defaultValue: null
26
26
  });
27
27
  (0, _useEnhancedEffect.default)(() => {
28
+ if (params.highlightedItem === undefined) {
29
+ return;
30
+ }
28
31
  if (store.state.highlight.item !== params.highlightedItem) {
29
32
  if (params.highlightedItem === null) {
30
33
  store.set('highlight', (0, _extends2.default)({}, store.state.highlight, {
@@ -18,6 +18,9 @@ export const useChartHighlight = ({
18
18
  defaultValue: null
19
19
  });
20
20
  useEnhancedEffect(() => {
21
+ if (params.highlightedItem === undefined) {
22
+ return;
23
+ }
21
24
  if (store.state.highlight.item !== params.highlightedItem) {
22
25
  if (params.highlightedItem === null) {
23
26
  store.set('highlight', _extends({}, store.state.highlight, {
@@ -0,0 +1,6 @@
1
+ import { type ChartSeriesType, type DatasetType } from "../models/seriesType/config.mjs";
2
+ import type { SeriesProcessorParams, SeriesProcessorResult } from "./plugins/corePlugins/useChartSeriesConfig/index.mjs";
3
+ import type { IsItemVisibleFunction } from "./plugins/featurePlugins/useChartVisibilityManager/index.mjs";
4
+ type LineLikeChartType = Extract<ChartSeriesType, 'line' | 'radialLine'>;
5
+ export declare function processLineLikeSeries<SeriesType extends LineLikeChartType>(params: SeriesProcessorParams<SeriesType>, dataset: Readonly<DatasetType> | undefined, isItemVisible: IsItemVisibleFunction | undefined, seriesType: SeriesType): SeriesProcessorResult<SeriesType>;
6
+ export {};
@@ -0,0 +1,6 @@
1
+ import { type ChartSeriesType, type DatasetType } from "../models/seriesType/config.js";
2
+ import type { SeriesProcessorParams, SeriesProcessorResult } from "./plugins/corePlugins/useChartSeriesConfig/index.js";
3
+ import type { IsItemVisibleFunction } from "./plugins/featurePlugins/useChartVisibilityManager/index.js";
4
+ type LineLikeChartType = Extract<ChartSeriesType, 'line' | 'radialLine'>;
5
+ export declare function processLineLikeSeries<SeriesType extends LineLikeChartType>(params: SeriesProcessorParams<SeriesType>, dataset: Readonly<DatasetType> | undefined, isItemVisible: IsItemVisibleFunction | undefined, seriesType: SeriesType): SeriesProcessorResult<SeriesType>;
6
+ export {};