@mui/x-charts 7.0.0-beta.0 → 7.0.0-beta.2
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.
- package/BarChart/BarChart.d.ts +2 -1
- package/BarChart/BarChart.js +33 -12
- package/BarChart/BarElement.d.ts +20 -13
- package/BarChart/BarElement.js +7 -3
- package/BarChart/BarPlot.d.ts +11 -6
- package/BarChart/BarPlot.js +28 -15
- package/BarChart/formatter.js +1 -1
- package/CHANGELOG.md +406 -1
- package/ChartContainer/ChartContainer.js +6 -4
- package/ChartsAxis/ChartsAxis.js +4 -4
- package/ChartsLegend/ChartsLegend.d.ts +5 -54
- package/ChartsLegend/ChartsLegend.js +2 -307
- package/ChartsLegend/DefaultChartsLegend.d.ts +60 -0
- package/ChartsLegend/DefaultChartsLegend.js +294 -0
- package/ChartsLegend/index.d.ts +1 -0
- package/ChartsLegend/index.js +11 -0
- package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.d.ts +20 -0
- package/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +83 -0
- package/ChartsOnAxisClickHandler/index.d.ts +1 -0
- package/ChartsOnAxisClickHandler/index.js +16 -0
- package/ChartsOnAxisClickHandler/package.json +6 -0
- package/ChartsReferenceLine/ChartsReferenceLine.js +2 -2
- package/ChartsReferenceLine/ChartsXReferenceLine.js +1 -1
- package/ChartsReferenceLine/ChartsYReferenceLine.js +1 -1
- package/ChartsReferenceLine/common.d.ts +2 -1
- package/ChartsTooltip/ChartsAxisTooltipContent.js +6 -5
- package/ChartsTooltip/ChartsItemTooltipContent.js +2 -2
- package/ChartsTooltip/DefaultChartsAxisTooltipContent.js +7 -5
- package/ChartsTooltip/DefaultChartsItemTooltipContent.js +1 -1
- package/ChartsTooltip/utils.d.ts +4 -1
- package/ChartsTooltip/utils.js +15 -0
- package/ChartsVoronoiHandler/ChartsVoronoiHandler.d.ts +7 -0
- package/ChartsVoronoiHandler/ChartsVoronoiHandler.js +92 -44
- package/ChartsXAxis/ChartsXAxis.js +13 -9
- package/ChartsYAxis/ChartsYAxis.js +1 -1
- package/LineChart/AnimatedArea.d.ts +1361 -0
- package/LineChart/AnimatedArea.js +111 -0
- package/LineChart/AnimatedLine.d.ts +1361 -0
- package/LineChart/AnimatedLine.js +113 -0
- package/LineChart/AreaElement.d.ts +19 -18
- package/LineChart/AreaElement.js +17 -34
- package/LineChart/AreaPlot.d.ts +12 -7
- package/LineChart/AreaPlot.js +91 -58
- package/LineChart/LineChart.d.ts +13 -4
- package/LineChart/LineChart.js +45 -14
- package/LineChart/LineElement.d.ts +19 -18
- package/LineChart/LineElement.js +16 -36
- package/LineChart/LineHighlightElement.d.ts +3 -2
- package/LineChart/LineHighlightElement.js +5 -3
- package/LineChart/LinePlot.d.ts +12 -7
- package/LineChart/LinePlot.js +89 -56
- package/LineChart/MarkElement.d.ts +8 -4
- package/LineChart/MarkElement.js +27 -13
- package/LineChart/MarkPlot.d.ts +8 -1
- package/LineChart/MarkPlot.js +80 -51
- package/LineChart/formatter.js +1 -1
- package/LineChart/index.d.ts +2 -0
- package/LineChart/index.js +22 -0
- package/PieChart/PieArc.d.ts +3 -2
- package/PieChart/PieArc.js +1 -0
- package/PieChart/PieArcLabel.d.ts +3 -2
- package/PieChart/PieArcLabel.js +1 -0
- package/PieChart/PieArcLabelPlot.d.ts +1 -1
- package/PieChart/PieArcLabelPlot.js +2 -2
- package/PieChart/PieArcPlot.d.ts +2 -2
- package/PieChart/PieArcPlot.js +7 -7
- package/PieChart/PieChart.d.ts +1 -1
- package/PieChart/PieChart.js +14 -12
- package/PieChart/PiePlot.d.ts +1 -1
- package/PieChart/PiePlot.js +4 -4
- package/ResponsiveChartContainer/ResponsiveChartContainer.js +6 -4
- package/ScatterChart/Scatter.d.ts +7 -1
- package/ScatterChart/Scatter.js +17 -3
- package/ScatterChart/ScatterChart.d.ts +8 -2
- package/ScatterChart/ScatterChart.js +21 -10
- package/ScatterChart/ScatterPlot.d.ts +1 -1
- package/ScatterChart/ScatterPlot.js +10 -2
- package/SparkLineChart/SparkLineChart.d.ts +1 -1
- package/SparkLineChart/SparkLineChart.js +7 -4
- package/context/CartesianContextProvider.js +8 -6
- package/context/DrawingProvider.d.ts +6 -1
- package/context/DrawingProvider.js +9 -2
- package/context/InteractionProvider.d.ts +3 -3
- package/esm/BarChart/BarChart.js +33 -12
- package/esm/BarChart/BarElement.js +7 -3
- package/esm/BarChart/BarPlot.js +27 -15
- package/esm/BarChart/formatter.js +1 -1
- package/esm/ChartContainer/ChartContainer.js +6 -4
- package/esm/ChartsAxis/ChartsAxis.js +4 -4
- package/esm/ChartsLegend/ChartsLegend.js +2 -307
- package/esm/ChartsLegend/DefaultChartsLegend.js +286 -0
- package/esm/ChartsLegend/index.js +1 -0
- package/esm/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +77 -0
- package/esm/ChartsOnAxisClickHandler/index.js +1 -0
- package/esm/ChartsReferenceLine/ChartsReferenceLine.js +2 -2
- package/esm/ChartsReferenceLine/ChartsXReferenceLine.js +1 -1
- package/esm/ChartsReferenceLine/ChartsYReferenceLine.js +1 -1
- package/esm/ChartsTooltip/ChartsAxisTooltipContent.js +6 -5
- package/esm/ChartsTooltip/ChartsItemTooltipContent.js +2 -2
- package/esm/ChartsTooltip/DefaultChartsAxisTooltipContent.js +8 -5
- package/esm/ChartsTooltip/DefaultChartsItemTooltipContent.js +1 -1
- package/esm/ChartsTooltip/utils.js +12 -0
- package/esm/ChartsVoronoiHandler/ChartsVoronoiHandler.js +92 -44
- package/esm/ChartsXAxis/ChartsXAxis.js +13 -9
- package/esm/ChartsYAxis/ChartsYAxis.js +1 -1
- package/esm/LineChart/AnimatedArea.js +103 -0
- package/esm/LineChart/AnimatedLine.js +105 -0
- package/esm/LineChart/AreaElement.js +16 -33
- package/esm/LineChart/AreaPlot.js +92 -59
- package/esm/LineChart/LineChart.js +45 -14
- package/esm/LineChart/LineElement.js +16 -35
- package/esm/LineChart/LineHighlightElement.js +5 -3
- package/esm/LineChart/LinePlot.js +90 -57
- package/esm/LineChart/MarkElement.js +27 -13
- package/esm/LineChart/MarkPlot.js +80 -51
- package/esm/LineChart/formatter.js +1 -1
- package/esm/LineChart/index.js +2 -0
- package/esm/PieChart/PieArc.js +1 -0
- package/esm/PieChart/PieArcLabel.js +1 -0
- package/esm/PieChart/PieArcLabelPlot.js +2 -2
- package/esm/PieChart/PieArcPlot.js +7 -7
- package/esm/PieChart/PieChart.js +14 -12
- package/esm/PieChart/PiePlot.js +4 -4
- package/esm/ResponsiveChartContainer/ResponsiveChartContainer.js +6 -4
- package/esm/ScatterChart/Scatter.js +17 -3
- package/esm/ScatterChart/ScatterChart.js +21 -10
- package/esm/ScatterChart/ScatterPlot.js +10 -2
- package/esm/SparkLineChart/SparkLineChart.js +7 -4
- package/esm/context/CartesianContextProvider.js +8 -6
- package/esm/context/DrawingProvider.js +9 -2
- package/esm/hooks/useDrawingArea.js +7 -3
- package/esm/index.js +1 -0
- package/esm/internals/geometry.js +1 -1
- package/esm/internals/useAnimatedPath.js +29 -0
- package/esm/internals/utils.js +7 -0
- package/hooks/useDrawingArea.d.ts +2 -0
- package/hooks/useDrawingArea.js +7 -3
- package/index.d.ts +1 -0
- package/index.js +12 -1
- package/internals/defaultizeColor.d.ts +16 -16
- package/internals/defaultizeValueFormatter.d.ts +4 -7
- package/internals/geometry.js +1 -1
- package/internals/stackSeries.d.ts +4 -7
- package/internals/useAnimatedPath.d.ts +1 -0
- package/internals/useAnimatedPath.js +38 -0
- package/internals/utils.d.ts +4 -0
- package/internals/utils.js +8 -0
- package/legacy/BarChart/BarChart.js +33 -12
- package/legacy/BarChart/BarElement.js +6 -2
- package/legacy/BarChart/BarPlot.js +28 -14
- package/legacy/BarChart/formatter.js +1 -1
- package/legacy/ChartContainer/ChartContainer.js +6 -4
- package/legacy/ChartsAxis/ChartsAxis.js +4 -4
- package/legacy/ChartsLegend/ChartsLegend.js +2 -323
- package/legacy/ChartsLegend/DefaultChartsLegend.js +302 -0
- package/legacy/ChartsLegend/index.js +1 -0
- package/legacy/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +75 -0
- package/legacy/ChartsOnAxisClickHandler/index.js +1 -0
- package/legacy/ChartsReferenceLine/ChartsReferenceLine.js +2 -2
- package/legacy/ChartsReferenceLine/ChartsXReferenceLine.js +1 -1
- package/legacy/ChartsReferenceLine/ChartsYReferenceLine.js +1 -1
- package/legacy/ChartsTooltip/ChartsAxisTooltipContent.js +6 -7
- package/legacy/ChartsTooltip/ChartsItemTooltipContent.js +2 -2
- package/legacy/ChartsTooltip/DefaultChartsAxisTooltipContent.js +8 -5
- package/legacy/ChartsTooltip/DefaultChartsItemTooltipContent.js +1 -1
- package/legacy/ChartsTooltip/utils.js +12 -0
- package/legacy/ChartsVoronoiHandler/ChartsVoronoiHandler.js +88 -44
- package/legacy/ChartsXAxis/ChartsXAxis.js +12 -8
- package/legacy/ChartsYAxis/ChartsYAxis.js +1 -1
- package/legacy/LineChart/AnimatedArea.js +102 -0
- package/legacy/LineChart/AnimatedLine.js +104 -0
- package/legacy/LineChart/AreaElement.js +15 -35
- package/legacy/LineChart/AreaPlot.js +102 -66
- package/legacy/LineChart/LineChart.js +45 -14
- package/legacy/LineChart/LineElement.js +15 -37
- package/legacy/LineChart/LineHighlightElement.js +5 -3
- package/legacy/LineChart/LinePlot.js +97 -63
- package/legacy/LineChart/MarkElement.js +30 -12
- package/legacy/LineChart/MarkPlot.js +83 -53
- package/legacy/LineChart/formatter.js +1 -1
- package/legacy/LineChart/index.js +2 -0
- package/legacy/PieChart/PieArc.js +1 -0
- package/legacy/PieChart/PieArcLabel.js +1 -0
- package/legacy/PieChart/PieArcLabelPlot.js +2 -2
- package/legacy/PieChart/PieArcPlot.js +7 -7
- package/legacy/PieChart/PieChart.js +14 -12
- package/legacy/PieChart/PiePlot.js +4 -4
- package/legacy/ResponsiveChartContainer/ResponsiveChartContainer.js +6 -4
- package/legacy/ScatterChart/Scatter.js +19 -3
- package/legacy/ScatterChart/ScatterChart.js +21 -10
- package/legacy/ScatterChart/ScatterPlot.js +10 -2
- package/legacy/SparkLineChart/SparkLineChart.js +8 -5
- package/legacy/context/CartesianContextProvider.js +8 -6
- package/legacy/context/DrawingProvider.js +11 -2
- package/legacy/hooks/useDrawingArea.js +7 -3
- package/legacy/index.js +2 -1
- package/legacy/internals/geometry.js +1 -1
- package/legacy/internals/useAnimatedPath.js +32 -0
- package/legacy/internals/utils.js +7 -0
- package/models/axis.d.ts +7 -2
- package/models/seriesType/common.d.ts +2 -1
- package/models/seriesType/config.d.ts +7 -12
- package/models/seriesType/line.d.ts +2 -2
- package/models/seriesType/pie.d.ts +7 -3
- package/models/seriesType/scatter.d.ts +5 -2
- package/modern/BarChart/BarChart.js +33 -12
- package/modern/BarChart/BarElement.js +7 -3
- package/modern/BarChart/BarPlot.js +27 -15
- package/modern/BarChart/formatter.js +1 -1
- package/modern/ChartContainer/ChartContainer.js +6 -4
- package/modern/ChartsAxis/ChartsAxis.js +4 -4
- package/modern/ChartsLegend/ChartsLegend.js +2 -307
- package/modern/ChartsLegend/DefaultChartsLegend.js +286 -0
- package/modern/ChartsLegend/index.js +1 -0
- package/modern/ChartsOnAxisClickHandler/ChartsOnAxisClickHandler.js +75 -0
- package/modern/ChartsOnAxisClickHandler/index.js +1 -0
- package/modern/ChartsReferenceLine/ChartsReferenceLine.js +2 -2
- package/modern/ChartsReferenceLine/ChartsXReferenceLine.js +1 -1
- package/modern/ChartsReferenceLine/ChartsYReferenceLine.js +1 -1
- package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +6 -5
- package/modern/ChartsTooltip/ChartsItemTooltipContent.js +2 -2
- package/modern/ChartsTooltip/DefaultChartsAxisTooltipContent.js +7 -5
- package/modern/ChartsTooltip/DefaultChartsItemTooltipContent.js +1 -1
- package/modern/ChartsTooltip/utils.js +12 -0
- package/modern/ChartsVoronoiHandler/ChartsVoronoiHandler.js +92 -44
- package/modern/ChartsXAxis/ChartsXAxis.js +13 -9
- package/modern/ChartsYAxis/ChartsYAxis.js +1 -1
- package/modern/LineChart/AnimatedArea.js +103 -0
- package/modern/LineChart/AnimatedLine.js +105 -0
- package/modern/LineChart/AreaElement.js +16 -33
- package/modern/LineChart/AreaPlot.js +91 -58
- package/modern/LineChart/LineChart.js +45 -14
- package/modern/LineChart/LineElement.js +16 -35
- package/modern/LineChart/LineHighlightElement.js +5 -3
- package/modern/LineChart/LinePlot.js +89 -56
- package/modern/LineChart/MarkElement.js +27 -13
- package/modern/LineChart/MarkPlot.js +80 -51
- package/modern/LineChart/formatter.js +1 -1
- package/modern/LineChart/index.js +2 -0
- package/modern/PieChart/PieArc.js +1 -0
- package/modern/PieChart/PieArcLabel.js +1 -0
- package/modern/PieChart/PieArcLabelPlot.js +2 -2
- package/modern/PieChart/PieArcPlot.js +7 -7
- package/modern/PieChart/PieChart.js +14 -12
- package/modern/PieChart/PiePlot.js +4 -4
- package/modern/ResponsiveChartContainer/ResponsiveChartContainer.js +6 -4
- package/modern/ScatterChart/Scatter.js +17 -3
- package/modern/ScatterChart/ScatterChart.js +21 -10
- package/modern/ScatterChart/ScatterPlot.js +10 -2
- package/modern/SparkLineChart/SparkLineChart.js +7 -4
- package/modern/context/CartesianContextProvider.js +8 -6
- package/modern/context/DrawingProvider.js +9 -2
- package/modern/hooks/useDrawingArea.js +7 -3
- package/modern/index.js +2 -1
- package/modern/internals/geometry.js +1 -1
- package/modern/internals/useAnimatedPath.js +29 -0
- package/modern/internals/utils.js +7 -0
- package/package.json +6 -5
package/BarChart/BarChart.d.ts
CHANGED
|
@@ -8,11 +8,12 @@ import { ChartsTooltipProps, ChartsTooltipSlotProps, ChartsTooltipSlots } from '
|
|
|
8
8
|
import { ChartsLegendProps, ChartsLegendSlots, ChartsLegendSlotProps } from '../ChartsLegend';
|
|
9
9
|
import { ChartsAxisHighlightProps } from '../ChartsAxisHighlight';
|
|
10
10
|
import { ChartsAxisSlots, ChartsAxisSlotProps } from '../models/axis';
|
|
11
|
+
import { ChartsOnAxisClickHandlerProps } from '../ChartsOnAxisClickHandler';
|
|
11
12
|
export interface BarChartSlots extends ChartsAxisSlots, BarPlotSlots, ChartsLegendSlots, ChartsTooltipSlots {
|
|
12
13
|
}
|
|
13
14
|
export interface BarChartSlotProps extends ChartsAxisSlotProps, BarPlotSlotProps, ChartsLegendSlotProps, ChartsTooltipSlotProps {
|
|
14
15
|
}
|
|
15
|
-
export interface BarChartProps extends Omit<ResponsiveChartContainerProps, 'series'>, Omit<ChartsAxisProps, 'slots' | 'slotProps'>,
|
|
16
|
+
export interface BarChartProps extends Omit<ResponsiveChartContainerProps, 'series'>, Omit<ChartsAxisProps, 'slots' | 'slotProps'>, Omit<BarPlotProps, 'slots' | 'slotProps'>, ChartsOnAxisClickHandlerProps {
|
|
16
17
|
series: MakeOptional<BarSeriesType, 'type'>[];
|
|
17
18
|
tooltip?: ChartsTooltipProps;
|
|
18
19
|
/**
|
package/BarChart/BarChart.js
CHANGED
|
@@ -17,6 +17,7 @@ var _ChartsTooltip = require("../ChartsTooltip");
|
|
|
17
17
|
var _ChartsLegend = require("../ChartsLegend");
|
|
18
18
|
var _ChartsAxisHighlight = require("../ChartsAxisHighlight");
|
|
19
19
|
var _ChartsClipPath = require("../ChartsClipPath");
|
|
20
|
+
var _ChartsOnAxisClickHandler = require("../ChartsOnAxisClickHandler");
|
|
20
21
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
21
22
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
22
23
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -51,6 +52,8 @@ const BarChart = exports.BarChart = /*#__PURE__*/React.forwardRef(function BarCh
|
|
|
51
52
|
rightAxis,
|
|
52
53
|
bottomAxis,
|
|
53
54
|
skipAnimation,
|
|
55
|
+
onItemClick,
|
|
56
|
+
onAxisClick,
|
|
54
57
|
children,
|
|
55
58
|
slots,
|
|
56
59
|
slotProps
|
|
@@ -88,13 +91,16 @@ const BarChart = exports.BarChart = /*#__PURE__*/React.forwardRef(function BarCh
|
|
|
88
91
|
colors: colors,
|
|
89
92
|
dataset: dataset,
|
|
90
93
|
sx: sx,
|
|
91
|
-
disableAxisListener: tooltip?.trigger !== 'axis' && axisHighlight?.x === 'none' && axisHighlight?.y === 'none',
|
|
92
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
94
|
+
disableAxisListener: tooltip?.trigger !== 'axis' && axisHighlight?.x === 'none' && axisHighlight?.y === 'none' && !onAxisClick,
|
|
95
|
+
children: [onAxisClick && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOnAxisClickHandler.ChartsOnAxisClickHandler, {
|
|
96
|
+
onAxisClick: onAxisClick
|
|
97
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("g", {
|
|
93
98
|
clipPath: `url(#${clipPathId})`,
|
|
94
99
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BarPlot.BarPlot, {
|
|
95
100
|
slots: slots,
|
|
96
101
|
slotProps: slotProps,
|
|
97
|
-
skipAnimation: skipAnimation
|
|
102
|
+
skipAnimation: skipAnimation,
|
|
103
|
+
onItemClick: onItemClick
|
|
98
104
|
})
|
|
99
105
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, {
|
|
100
106
|
topAxis: topAxis,
|
|
@@ -136,7 +142,7 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
136
142
|
* @default xAxisIds[0] The id of the first provided axis
|
|
137
143
|
*/
|
|
138
144
|
bottomAxis: _propTypes.default.oneOfType([_propTypes.default.shape({
|
|
139
|
-
axisId: _propTypes.default.string,
|
|
145
|
+
axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
|
140
146
|
classes: _propTypes.default.object,
|
|
141
147
|
disableLine: _propTypes.default.bool,
|
|
142
148
|
disableTicks: _propTypes.default.bool,
|
|
@@ -187,7 +193,7 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
187
193
|
* @default yAxisIds[0] The id of the first provided axis
|
|
188
194
|
*/
|
|
189
195
|
leftAxis: _propTypes.default.oneOfType([_propTypes.default.shape({
|
|
190
|
-
axisId: _propTypes.default.string,
|
|
196
|
+
axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
|
191
197
|
classes: _propTypes.default.object,
|
|
192
198
|
disableLine: _propTypes.default.bool,
|
|
193
199
|
disableTicks: _propTypes.default.bool,
|
|
@@ -234,13 +240,26 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
234
240
|
right: _propTypes.default.number,
|
|
235
241
|
top: _propTypes.default.number
|
|
236
242
|
}),
|
|
243
|
+
/**
|
|
244
|
+
* The function called for onClick events.
|
|
245
|
+
* The second argument contains information about all line/bar elements at the current mouse position.
|
|
246
|
+
* @param {MouseEvent} event The mouse event recorded on the `<svg/>` element.
|
|
247
|
+
* @param {null | AxisData} data The data about the clicked axis and items associated with it.
|
|
248
|
+
*/
|
|
249
|
+
onAxisClick: _propTypes.default.func,
|
|
250
|
+
/**
|
|
251
|
+
* Callback fired when a bar item is clicked.
|
|
252
|
+
* @param {React.MouseEvent<SVGElement, MouseEvent>} event The event source of the callback.
|
|
253
|
+
* @param {BarItemIdentifier} barItemIdentifier The bar item identifier.
|
|
254
|
+
*/
|
|
255
|
+
onItemClick: _propTypes.default.func,
|
|
237
256
|
/**
|
|
238
257
|
* Indicate which axis to display the right of the charts.
|
|
239
258
|
* Can be a string (the id of the axis) or an object `ChartsYAxisProps`.
|
|
240
259
|
* @default null
|
|
241
260
|
*/
|
|
242
261
|
rightAxis: _propTypes.default.oneOfType([_propTypes.default.shape({
|
|
243
|
-
axisId: _propTypes.default.string,
|
|
262
|
+
axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
|
244
263
|
classes: _propTypes.default.object,
|
|
245
264
|
disableLine: _propTypes.default.bool,
|
|
246
265
|
disableTicks: _propTypes.default.bool,
|
|
@@ -263,7 +282,7 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
263
282
|
}), _propTypes.default.string]),
|
|
264
283
|
series: _propTypes.default.arrayOf(_propTypes.default.object).isRequired,
|
|
265
284
|
/**
|
|
266
|
-
* If `true`, animations are
|
|
285
|
+
* If `true`, animations are skipped.
|
|
267
286
|
* @default false
|
|
268
287
|
*/
|
|
269
288
|
skipAnimation: _propTypes.default.bool,
|
|
@@ -293,7 +312,7 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
293
312
|
* @default null
|
|
294
313
|
*/
|
|
295
314
|
topAxis: _propTypes.default.oneOfType([_propTypes.default.shape({
|
|
296
|
-
axisId: _propTypes.default.string,
|
|
315
|
+
axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
|
297
316
|
classes: _propTypes.default.object,
|
|
298
317
|
disableLine: _propTypes.default.bool,
|
|
299
318
|
disableTicks: _propTypes.default.bool,
|
|
@@ -330,7 +349,7 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
330
349
|
* If not provided, a default axis config is used with id set to `DEFAULT_X_AXIS_KEY`.
|
|
331
350
|
*/
|
|
332
351
|
xAxis: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
333
|
-
axisId: _propTypes.default.string,
|
|
352
|
+
axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
|
334
353
|
classes: _propTypes.default.object,
|
|
335
354
|
data: _propTypes.default.array,
|
|
336
355
|
dataKey: _propTypes.default.string,
|
|
@@ -338,13 +357,14 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
338
357
|
disableTicks: _propTypes.default.bool,
|
|
339
358
|
fill: _propTypes.default.string,
|
|
340
359
|
hideTooltip: _propTypes.default.bool,
|
|
341
|
-
id: _propTypes.default.string,
|
|
360
|
+
id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
|
342
361
|
label: _propTypes.default.string,
|
|
343
362
|
labelFontSize: _propTypes.default.number,
|
|
344
363
|
labelStyle: _propTypes.default.object,
|
|
345
364
|
max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
|
|
346
365
|
min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
|
|
347
366
|
position: _propTypes.default.oneOf(['bottom', 'left', 'right', 'top']),
|
|
367
|
+
reverse: _propTypes.default.bool,
|
|
348
368
|
scaleType: _propTypes.default.oneOf(['band', 'linear', 'log', 'point', 'pow', 'sqrt', 'time', 'utc']),
|
|
349
369
|
slotProps: _propTypes.default.object,
|
|
350
370
|
slots: _propTypes.default.object,
|
|
@@ -364,7 +384,7 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
364
384
|
* If not provided, a default axis config is used with id set to `DEFAULT_Y_AXIS_KEY`.
|
|
365
385
|
*/
|
|
366
386
|
yAxis: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
367
|
-
axisId: _propTypes.default.string,
|
|
387
|
+
axisId: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
|
368
388
|
classes: _propTypes.default.object,
|
|
369
389
|
data: _propTypes.default.array,
|
|
370
390
|
dataKey: _propTypes.default.string,
|
|
@@ -372,13 +392,14 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
372
392
|
disableTicks: _propTypes.default.bool,
|
|
373
393
|
fill: _propTypes.default.string,
|
|
374
394
|
hideTooltip: _propTypes.default.bool,
|
|
375
|
-
id: _propTypes.default.string,
|
|
395
|
+
id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
|
376
396
|
label: _propTypes.default.string,
|
|
377
397
|
labelFontSize: _propTypes.default.number,
|
|
378
398
|
labelStyle: _propTypes.default.object,
|
|
379
399
|
max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
|
|
380
400
|
min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
|
|
381
401
|
position: _propTypes.default.oneOf(['bottom', 'left', 'right', 'top']),
|
|
402
|
+
reverse: _propTypes.default.bool,
|
|
382
403
|
scaleType: _propTypes.default.oneOf(['band', 'linear', 'log', 'point', 'pow', 'sqrt', 'time', 'utc']),
|
|
383
404
|
slotProps: _propTypes.default.object,
|
|
384
405
|
slots: _propTypes.default.object,
|
package/BarChart/BarElement.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { SlotComponentProps } from '@mui/base/utils';
|
|
3
2
|
import { HighlightScope } from '../context/HighlightProvider';
|
|
3
|
+
import { SeriesId } from '../models/seriesType/common';
|
|
4
4
|
export interface BarElementClasses {
|
|
5
5
|
/** Styles applied to the root element. */
|
|
6
6
|
root: string;
|
|
7
7
|
}
|
|
8
8
|
export type BarElementClassKey = keyof BarElementClasses;
|
|
9
9
|
export interface BarElementOwnerState {
|
|
10
|
-
id:
|
|
10
|
+
id: SeriesId;
|
|
11
11
|
dataIndex: number;
|
|
12
12
|
color: string;
|
|
13
13
|
isFaded: boolean;
|
|
@@ -1351,26 +1351,33 @@ export declare const BarElementPath: import("@emotion/styled").StyledComponent<P
|
|
|
1351
1351
|
}, "string" | "end" | "accumulate" | "local" | "color" | "clip" | "style" | "unicode" | "fill" | "stroke" | "x" | "y" | "clipPath" | "cursor" | "direction" | "display" | "filter" | "fontFamily" | "fontSize" | "fontSizeAdjust" | "fontStretch" | "fontStyle" | "fontVariant" | "fontWeight" | "height" | "imageRendering" | "letterSpacing" | "opacity" | "order" | "paintOrder" | "pointerEvents" | "rotate" | "scale" | "textRendering" | "transform" | "unicodeBidi" | "visibility" | "width" | "wordSpacing" | "writingMode" | "alphabetic" | "hanging" | "ideographic" | "mathematical" | "mask" | "offset" | "overflow" | "textDecoration" | "azimuth" | "alignmentBaseline" | "baselineShift" | "clipRule" | "colorInterpolation" | "colorRendering" | "dominantBaseline" | "fillOpacity" | "fillRule" | "floodColor" | "floodOpacity" | "glyphOrientationVertical" | "lightingColor" | "markerEnd" | "markerMid" | "markerStart" | "shapeRendering" | "stopColor" | "stopOpacity" | "strokeDasharray" | "strokeDashoffset" | "strokeLinecap" | "strokeLinejoin" | "strokeMiterlimit" | "strokeOpacity" | "strokeWidth" | "textAnchor" | "vectorEffect" | "additive" | "path" | "ref" | "key" | "crossOrigin" | "href" | "max" | "media" | "method" | "min" | "name" | "target" | "type" | "suppressHydrationWarning" | "className" | "id" | "lang" | "tabIndex" | "role" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-braillelabel" | "aria-brailleroledescription" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colindextext" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-description" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowindextext" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accentHeight" | "allowReorder" | "amplitude" | "arabicForm" | "ascent" | "attributeName" | "attributeType" | "autoReverse" | "baseFrequency" | "baseProfile" | "bbox" | "begin" | "bias" | "by" | "calcMode" | "capHeight" | "clipPathUnits" | "colorInterpolationFilters" | "colorProfile" | "contentScriptType" | "contentStyleType" | "cx" | "cy" | "d" | "decelerate" | "descent" | "diffuseConstant" | "divisor" | "dur" | "dx" | "dy" | "edgeMode" | "elevation" | "enableBackground" | "exponent" | "externalResourcesRequired" | "filterRes" | "filterUnits" | "focusable" | "format" | "fr" | "from" | "fx" | "fy" | "g1" | "g2" | "glyphName" | "glyphOrientationHorizontal" | "glyphRef" | "gradientTransform" | "gradientUnits" | "horizAdvX" | "horizOriginX" | "in2" | "in" | "intercept" | "k1" | "k2" | "k3" | "k4" | "k" | "kernelMatrix" | "kernelUnitLength" | "kerning" | "keyPoints" | "keySplines" | "keyTimes" | "lengthAdjust" | "limitingConeAngle" | "markerHeight" | "markerUnits" | "markerWidth" | "maskContentUnits" | "maskUnits" | "mode" | "numOctaves" | "operator" | "orient" | "orientation" | "origin" | "overlinePosition" | "overlineThickness" | "panose1" | "pathLength" | "patternContentUnits" | "patternTransform" | "patternUnits" | "points" | "pointsAtX" | "pointsAtY" | "pointsAtZ" | "preserveAlpha" | "preserveAspectRatio" | "primitiveUnits" | "r" | "radius" | "refX" | "refY" | "renderingIntent" | "repeatCount" | "repeatDur" | "requiredExtensions" | "requiredFeatures" | "restart" | "result" | "rx" | "ry" | "seed" | "slope" | "spacing" | "specularConstant" | "specularExponent" | "speed" | "spreadMethod" | "startOffset" | "stdDeviation" | "stemh" | "stemv" | "stitchTiles" | "strikethroughPosition" | "strikethroughThickness" | "surfaceScale" | "systemLanguage" | "tableValues" | "targetX" | "targetY" | "textLength" | "to" | "u1" | "u2" | "underlinePosition" | "underlineThickness" | "unicodeRange" | "unitsPerEm" | "vAlphabetic" | "values" | "version" | "vertAdvY" | "vertOriginX" | "vertOriginY" | "vHanging" | "vIdeographic" | "viewBox" | "viewTarget" | "vMathematical" | "widths" | "x1" | "x2" | "xChannelSelector" | "xHeight" | "xlinkActuate" | "xlinkArcrole" | "xlinkHref" | "xlinkRole" | "xlinkShow" | "xlinkTitle" | "xlinkType" | "xmlBase" | "xmlLang" | "xmlns" | "xmlnsXlink" | "xmlSpace" | "y1" | "y2" | "yChannelSelector" | "z" | "zoomAndPan" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "scrollTop" | "scrollLeft"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme> & {
|
|
1352
1352
|
ownerState: BarElementOwnerState;
|
|
1353
1353
|
}, {}, {}>;
|
|
1354
|
-
|
|
1354
|
+
interface BarProps extends Omit<React.ComponentPropsWithoutRef<'path'>, 'id' | 'color'> {
|
|
1355
|
+
highlightScope?: Partial<HighlightScope>;
|
|
1356
|
+
onClick?: (event: React.MouseEvent<SVGPathElement, MouseEvent>) => void;
|
|
1357
|
+
ownerState: BarElementOwnerState;
|
|
1358
|
+
}
|
|
1359
|
+
export interface BarElementSlots {
|
|
1360
|
+
/**
|
|
1361
|
+
* The component that renders the bar.
|
|
1362
|
+
* @default BarElementPath
|
|
1363
|
+
*/
|
|
1364
|
+
bar?: React.JSXElementConstructor<BarProps>;
|
|
1365
|
+
}
|
|
1366
|
+
export interface BarElementSlotProps {
|
|
1367
|
+
bar?: Partial<BarProps>;
|
|
1368
|
+
}
|
|
1369
|
+
export type BarElementProps = Omit<BarElementOwnerState, 'isFaded' | 'isHighlighted'> & Omit<React.ComponentPropsWithoutRef<'path'>, 'id'> & {
|
|
1355
1370
|
highlightScope?: Partial<HighlightScope>;
|
|
1356
1371
|
/**
|
|
1357
1372
|
* The props used for each component slot.
|
|
1358
1373
|
* @default {}
|
|
1359
1374
|
*/
|
|
1360
|
-
slotProps?:
|
|
1361
|
-
bar?: SlotComponentProps<'path', {}, BarElementOwnerState>;
|
|
1362
|
-
};
|
|
1375
|
+
slotProps?: BarElementSlotProps;
|
|
1363
1376
|
/**
|
|
1364
1377
|
* Overridable component slots.
|
|
1365
1378
|
* @default {}
|
|
1366
1379
|
*/
|
|
1367
|
-
slots?:
|
|
1368
|
-
/**
|
|
1369
|
-
* The component that renders the root.
|
|
1370
|
-
* @default BarElementPath
|
|
1371
|
-
*/
|
|
1372
|
-
bar?: React.ElementType;
|
|
1373
|
-
};
|
|
1380
|
+
slots?: BarElementSlots;
|
|
1374
1381
|
};
|
|
1375
1382
|
declare function BarElement(props: BarElementProps): React.JSX.Element;
|
|
1376
1383
|
declare namespace BarElement {
|
package/BarChart/BarElement.js
CHANGED
|
@@ -21,7 +21,7 @@ var _web = require("@react-spring/web");
|
|
|
21
21
|
var _useInteractionItemProps = require("../hooks/useInteractionItemProps");
|
|
22
22
|
var _InteractionProvider = require("../context/InteractionProvider");
|
|
23
23
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
24
|
-
const _excluded = ["id", "dataIndex", "classes", "color", "highlightScope", "slots", "slotProps", "style"];
|
|
24
|
+
const _excluded = ["id", "dataIndex", "classes", "color", "highlightScope", "slots", "slotProps", "style", "onClick"];
|
|
25
25
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
26
26
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
27
27
|
function getBarElementUtilityClass(slot) {
|
|
@@ -60,7 +60,8 @@ function BarElement(props) {
|
|
|
60
60
|
highlightScope,
|
|
61
61
|
slots,
|
|
62
62
|
slotProps,
|
|
63
|
-
style
|
|
63
|
+
style,
|
|
64
|
+
onClick
|
|
64
65
|
} = props,
|
|
65
66
|
other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
66
67
|
const getInteractionItemProps = (0, _useInteractionItemProps.useInteractionItemProps)(highlightScope);
|
|
@@ -96,7 +97,9 @@ function BarElement(props) {
|
|
|
96
97
|
dataIndex
|
|
97
98
|
}), {
|
|
98
99
|
style,
|
|
99
|
-
className: classes.root
|
|
100
|
+
className: classes.root,
|
|
101
|
+
onClick,
|
|
102
|
+
cursor: onClick ? 'pointer' : 'unset'
|
|
100
103
|
}),
|
|
101
104
|
ownerState
|
|
102
105
|
});
|
|
@@ -113,6 +116,7 @@ process.env.NODE_ENV !== "production" ? BarElement.propTypes = {
|
|
|
113
116
|
faded: _propTypes.default.oneOf(['global', 'none', 'series']),
|
|
114
117
|
highlighted: _propTypes.default.oneOf(['item', 'none', 'series'])
|
|
115
118
|
}),
|
|
119
|
+
id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
|
|
116
120
|
/**
|
|
117
121
|
* The props used for each component slot.
|
|
118
122
|
* @default {}
|
package/BarChart/BarPlot.d.ts
CHANGED
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { BarElementProps } from './BarElement';
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
import { BarElementProps, BarElementSlotProps, BarElementSlots } from './BarElement';
|
|
3
|
+
import { BarItemIdentifier } from '../models';
|
|
4
|
+
export interface BarPlotSlots extends BarElementSlots {
|
|
5
5
|
}
|
|
6
|
-
export interface BarPlotSlotProps {
|
|
7
|
-
bar?: Partial<BarElementProps>;
|
|
6
|
+
export interface BarPlotSlotProps extends BarElementSlotProps {
|
|
8
7
|
}
|
|
9
8
|
export interface BarPlotProps extends Pick<BarElementProps, 'slots' | 'slotProps'> {
|
|
10
9
|
/**
|
|
11
|
-
* If `true`, animations are
|
|
10
|
+
* If `true`, animations are skipped.
|
|
12
11
|
* @default false
|
|
13
12
|
*/
|
|
14
13
|
skipAnimation?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Callback fired when a bar item is clicked.
|
|
16
|
+
* @param {React.MouseEvent<SVGElement, MouseEvent>} event The event source of the callback.
|
|
17
|
+
* @param {BarItemIdentifier} barItemIdentifier The bar item identifier.
|
|
18
|
+
*/
|
|
19
|
+
onItemClick?: (event: React.MouseEvent<SVGElement, MouseEvent>, barItemIdentifier: BarItemIdentifier) => void;
|
|
15
20
|
}
|
|
16
21
|
/**
|
|
17
22
|
* Demos:
|
package/BarChart/BarPlot.js
CHANGED
|
@@ -16,7 +16,9 @@ var _BarElement = require("./BarElement");
|
|
|
16
16
|
var _axis = require("../models/axis");
|
|
17
17
|
var _constants = require("../constants");
|
|
18
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
-
const _excluded = ["skipAnimation"];
|
|
19
|
+
const _excluded = ["skipAnimation", "onItemClick"];
|
|
20
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
21
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
20
22
|
/**
|
|
21
23
|
* Solution of the equations
|
|
22
24
|
* W = barWidth * N + offset * (N-1)
|
|
@@ -26,8 +28,6 @@ const _excluded = ["skipAnimation"];
|
|
|
26
28
|
* @param gapRatio The ratio of the gap between bars over the bar width.
|
|
27
29
|
* @returns The bar width and the offset between bars.
|
|
28
30
|
*/
|
|
29
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
30
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
31
31
|
function getBandSize({
|
|
32
32
|
bandWidth: W,
|
|
33
33
|
numberOfGroups: N,
|
|
@@ -46,7 +46,7 @@ function getBandSize({
|
|
|
46
46
|
offset
|
|
47
47
|
};
|
|
48
48
|
}
|
|
49
|
-
const
|
|
49
|
+
const useAggregatedData = () => {
|
|
50
50
|
const seriesData = React.useContext(_SeriesContextProvider.SeriesContext).bar ?? {
|
|
51
51
|
series: {},
|
|
52
52
|
stackingGroups: [],
|
|
@@ -109,20 +109,19 @@ const useCompletedData = () => {
|
|
|
109
109
|
color
|
|
110
110
|
} = series[seriesId];
|
|
111
111
|
return stackedData.map((values, dataIndex) => {
|
|
112
|
-
const
|
|
113
|
-
const
|
|
112
|
+
const valueCoordinates = values.map(v => verticalLayout ? yScale(v) : xScale(v));
|
|
113
|
+
const minValueCoord = Math.min(...valueCoordinates);
|
|
114
|
+
const maxValueCoord = Math.max(...valueCoordinates);
|
|
114
115
|
return {
|
|
115
|
-
bottom,
|
|
116
|
-
top,
|
|
117
116
|
seriesId,
|
|
118
117
|
dataIndex,
|
|
119
118
|
layout: series[seriesId].layout,
|
|
120
|
-
x: verticalLayout ? xScale(xAxis[xAxisKey].data?.[dataIndex]) + barOffset :
|
|
121
|
-
y: verticalLayout ?
|
|
119
|
+
x: verticalLayout ? xScale(xAxis[xAxisKey].data?.[dataIndex]) + barOffset : minValueCoord,
|
|
120
|
+
y: verticalLayout ? minValueCoord : yScale(yAxis[yAxisKey].data?.[dataIndex]) + barOffset,
|
|
122
121
|
xOrigin: xScale(0),
|
|
123
122
|
yOrigin: yScale(0),
|
|
124
|
-
height: verticalLayout ?
|
|
125
|
-
width: verticalLayout ? barWidth :
|
|
123
|
+
height: verticalLayout ? maxValueCoord - minValueCoord : barWidth,
|
|
124
|
+
width: verticalLayout ? barWidth : maxValueCoord - minValueCoord,
|
|
126
125
|
color,
|
|
127
126
|
highlightScope: series[seriesId].highlightScope
|
|
128
127
|
};
|
|
@@ -174,9 +173,10 @@ const getInStyle = ({
|
|
|
174
173
|
* - [BarPlot API](https://mui.com/x/api/charts/bar-plot/)
|
|
175
174
|
*/
|
|
176
175
|
function BarPlot(props) {
|
|
177
|
-
const completedData =
|
|
176
|
+
const completedData = useAggregatedData();
|
|
178
177
|
const {
|
|
179
|
-
skipAnimation
|
|
178
|
+
skipAnimation,
|
|
179
|
+
onItemClick
|
|
180
180
|
} = props,
|
|
181
181
|
other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
182
182
|
const transition = (0, _web.useTransition)(completedData, {
|
|
@@ -199,6 +199,13 @@ function BarPlot(props) {
|
|
|
199
199
|
highlightScope: highlightScope,
|
|
200
200
|
color: color
|
|
201
201
|
}, other, {
|
|
202
|
+
onClick: onItemClick && (event => {
|
|
203
|
+
onItemClick(event, {
|
|
204
|
+
type: 'bar',
|
|
205
|
+
seriesId,
|
|
206
|
+
dataIndex
|
|
207
|
+
});
|
|
208
|
+
}),
|
|
202
209
|
style: style
|
|
203
210
|
})))
|
|
204
211
|
});
|
|
@@ -209,7 +216,13 @@ process.env.NODE_ENV !== "production" ? BarPlot.propTypes = {
|
|
|
209
216
|
// | To update them edit the TypeScript types and run "yarn proptypes" |
|
|
210
217
|
// ----------------------------------------------------------------------
|
|
211
218
|
/**
|
|
212
|
-
*
|
|
219
|
+
* Callback fired when a bar item is clicked.
|
|
220
|
+
* @param {React.MouseEvent<SVGElement, MouseEvent>} event The event source of the callback.
|
|
221
|
+
* @param {BarItemIdentifier} barItemIdentifier The bar item identifier.
|
|
222
|
+
*/
|
|
223
|
+
onItemClick: _propTypes.default.func,
|
|
224
|
+
/**
|
|
225
|
+
* If `true`, animations are skipped.
|
|
213
226
|
* @default false
|
|
214
227
|
*/
|
|
215
228
|
skipAnimation: _propTypes.default.bool,
|
package/BarChart/formatter.js
CHANGED
|
@@ -72,7 +72,7 @@ const formatter = (params, dataset) => {
|
|
|
72
72
|
return {
|
|
73
73
|
seriesOrder,
|
|
74
74
|
stackingGroups,
|
|
75
|
-
series: (0, _defaultizeValueFormatter.default)(completedSeries, v => v
|
|
75
|
+
series: (0, _defaultizeValueFormatter.default)(completedSeries, v => v == null ? '' : v.toLocaleString())
|
|
76
76
|
};
|
|
77
77
|
};
|
|
78
78
|
var _default = exports.default = formatter;
|