@mui/x-charts-pro 8.4.0 → 8.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BarChartPro/BarChartPro.d.ts +13 -5
- package/BarChartPro/BarChartPro.js +19 -1
- package/CHANGELOG.md +103 -0
- package/ChartContainerPro/ChartContainerPro.d.ts +0 -1
- package/ChartContainerPro/ChartProApi.d.ts +26 -0
- package/ChartContainerPro/ChartProApi.js +5 -0
- package/ChartContainerPro/index.d.ts +2 -1
- package/ChartContainerPro/index.js +11 -0
- package/ChartDataProviderPro/ChartDataProviderPro.d.ts +11 -1
- package/ChartDataProviderPro/ChartDataProviderPro.js +19 -3
- package/ChartDataProviderPro/useChartDataProviderProProps.d.ts +2 -0
- package/ChartDataProviderPro/useChartDataProviderProProps.js +5 -1
- package/ChartZoomSlider/internals/ChartAxisZoomSlider.d.ts +1 -3
- package/ChartZoomSlider/internals/ChartAxisZoomSlider.js +25 -315
- package/ChartZoomSlider/internals/ChartAxisZoomSliderActiveTrack.d.ts +24 -0
- package/ChartZoomSlider/internals/ChartAxisZoomSliderActiveTrack.js +251 -0
- package/ChartZoomSlider/internals/ChartAxisZoomSliderTrack.d.ts +18 -0
- package/ChartZoomSlider/internals/ChartAxisZoomSliderTrack.js +160 -0
- package/ChartZoomSlider/internals/constants.d.ts +5 -0
- package/ChartZoomSlider/internals/constants.js +11 -0
- package/ChartZoomSlider/internals/zoom-utils.d.ts +4 -0
- package/ChartZoomSlider/internals/zoom-utils.js +48 -0
- package/ChartsToolbarPro/ChartsToolbarPro.d.ts +8 -1
- package/ChartsToolbarPro/ChartsToolbarPro.js +42 -8
- package/ChartsToolbarPro/ChartsToolbarZoomInButton.d.ts +16 -0
- package/ChartsToolbarPro/ChartsToolbarZoomInButton.js +56 -0
- package/ChartsToolbarPro/ChartsToolbarZoomOutButton.d.ts +16 -0
- package/ChartsToolbarPro/ChartsToolbarZoomOutButton.js +56 -0
- package/ChartsToolbarPro/index.d.ts +3 -1
- package/ChartsToolbarPro/index.js +22 -0
- package/FunnelChart/FunnelChart.d.ts +2 -1
- package/FunnelChart/FunnelChart.js +2 -20
- package/FunnelChart/FunnelChart.plugins.d.ts +4 -0
- package/FunnelChart/FunnelChart.plugins.js +9 -0
- package/FunnelChart/funnelSlots.types.d.ts +4 -3
- package/FunnelChart/useFunnelChartProps.d.ts +2 -1
- package/FunnelChart/useFunnelChartProps.js +3 -1
- package/Heatmap/Heatmap.d.ts +17 -4
- package/Heatmap/Heatmap.js +56 -22
- package/Heatmap/Heatmap.plugins.d.ts +2 -1
- package/Heatmap/Heatmap.plugins.js +2 -1
- package/LineChartPro/LineChartPro.d.ts +13 -5
- package/LineChartPro/LineChartPro.js +19 -1
- package/RadarChartPro/RadarChartPro.d.ts +15 -0
- package/RadarChartPro/RadarChartPro.js +202 -0
- package/RadarChartPro/RadarChartPro.plugins.d.ts +4 -0
- package/RadarChartPro/RadarChartPro.plugins.js +9 -0
- package/RadarChartPro/index.d.ts +1 -0
- package/RadarChartPro/index.js +16 -0
- package/ScatterChartPro/ScatterChartPro.d.ts +13 -5
- package/ScatterChartPro/ScatterChartPro.js +19 -1
- package/context/index.d.ts +1 -0
- package/context/index.js +16 -0
- package/context/useChartApiContext.d.ts +9 -0
- package/context/useChartApiContext.js +17 -0
- package/esm/BarChartPro/BarChartPro.d.ts +13 -5
- package/esm/BarChartPro/BarChartPro.js +19 -1
- package/esm/ChartContainerPro/ChartContainerPro.d.ts +0 -1
- package/esm/ChartContainerPro/ChartProApi.d.ts +26 -0
- package/esm/ChartContainerPro/ChartProApi.js +1 -0
- package/esm/ChartContainerPro/index.d.ts +2 -1
- package/esm/ChartContainerPro/index.js +2 -1
- package/esm/ChartDataProviderPro/ChartDataProviderPro.d.ts +11 -1
- package/esm/ChartDataProviderPro/ChartDataProviderPro.js +20 -4
- package/esm/ChartDataProviderPro/useChartDataProviderProProps.d.ts +2 -0
- package/esm/ChartDataProviderPro/useChartDataProviderProProps.js +5 -1
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSlider.d.ts +1 -3
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSlider.js +19 -306
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderActiveTrack.d.ts +24 -0
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderActiveTrack.js +243 -0
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderTrack.d.ts +18 -0
- package/esm/ChartZoomSlider/internals/ChartAxisZoomSliderTrack.js +152 -0
- package/esm/ChartZoomSlider/internals/constants.d.ts +5 -0
- package/esm/ChartZoomSlider/internals/constants.js +5 -0
- package/esm/ChartZoomSlider/internals/zoom-utils.d.ts +4 -0
- package/esm/ChartZoomSlider/internals/zoom-utils.js +40 -0
- package/esm/ChartsToolbarPro/ChartsToolbarPro.d.ts +8 -1
- package/esm/ChartsToolbarPro/ChartsToolbarPro.js +42 -9
- package/esm/ChartsToolbarPro/ChartsToolbarZoomInButton.d.ts +16 -0
- package/esm/ChartsToolbarPro/ChartsToolbarZoomInButton.js +50 -0
- package/esm/ChartsToolbarPro/ChartsToolbarZoomOutButton.d.ts +16 -0
- package/esm/ChartsToolbarPro/ChartsToolbarZoomOutButton.js +50 -0
- package/esm/ChartsToolbarPro/index.d.ts +3 -1
- package/esm/ChartsToolbarPro/index.js +3 -1
- package/esm/FunnelChart/FunnelChart.d.ts +2 -1
- package/esm/FunnelChart/FunnelChart.js +2 -20
- package/esm/FunnelChart/FunnelChart.plugins.d.ts +4 -0
- package/esm/FunnelChart/FunnelChart.plugins.js +3 -0
- package/esm/FunnelChart/funnelSlots.types.d.ts +4 -3
- package/esm/FunnelChart/useFunnelChartProps.d.ts +2 -1
- package/esm/FunnelChart/useFunnelChartProps.js +3 -1
- package/esm/Heatmap/Heatmap.d.ts +17 -4
- package/esm/Heatmap/Heatmap.js +56 -22
- package/esm/Heatmap/Heatmap.plugins.d.ts +2 -1
- package/esm/Heatmap/Heatmap.plugins.js +2 -1
- package/esm/LineChartPro/LineChartPro.d.ts +13 -5
- package/esm/LineChartPro/LineChartPro.js +19 -1
- package/esm/RadarChartPro/RadarChartPro.d.ts +15 -0
- package/esm/RadarChartPro/RadarChartPro.js +195 -0
- package/esm/RadarChartPro/RadarChartPro.plugins.d.ts +4 -0
- package/esm/RadarChartPro/RadarChartPro.plugins.js +3 -0
- package/esm/RadarChartPro/index.d.ts +1 -0
- package/esm/RadarChartPro/index.js +1 -0
- package/esm/ScatterChartPro/ScatterChartPro.d.ts +13 -5
- package/esm/ScatterChartPro/ScatterChartPro.js +19 -1
- package/esm/context/index.d.ts +1 -0
- package/esm/context/index.js +1 -0
- package/esm/context/useChartApiContext.d.ts +9 -0
- package/esm/context/useChartApiContext.js +11 -0
- package/esm/hooks/index.d.ts +2 -1
- package/esm/hooks/index.js +2 -1
- package/esm/index.d.ts +2 -1
- package/esm/index.js +2 -1
- package/esm/internals/material/index.d.ts +1 -0
- package/esm/internals/plugins/useChartProZoom/useChartProZoom.js +10 -0
- package/esm/internals/plugins/useChartProZoom/useChartProZoom.selectors.d.ts +358 -0
- package/esm/internals/plugins/useChartProZoom/useChartProZoom.selectors.js +15 -1
- package/esm/internals/plugins/useChartProZoom/useChartProZoom.types.d.ts +7 -0
- package/esm/models/index.d.ts +1 -1
- package/hooks/index.d.ts +2 -1
- package/hooks/index.js +21 -10
- package/index.d.ts +2 -1
- package/index.js +12 -1
- package/internals/material/index.d.ts +1 -0
- package/internals/plugins/useChartProZoom/useChartProZoom.js +10 -0
- package/internals/plugins/useChartProZoom/useChartProZoom.selectors.d.ts +358 -0
- package/internals/plugins/useChartProZoom/useChartProZoom.selectors.js +16 -2
- package/internals/plugins/useChartProZoom/useChartProZoom.types.d.ts +7 -0
- package/models/index.d.ts +1 -1
- package/package.json +5 -5
- package/ChartsToolbarPro/internal/ChartsToolbarZoomInButton.d.ts +0 -13
- package/ChartsToolbarPro/internal/ChartsToolbarZoomInButton.js +0 -36
- package/ChartsToolbarPro/internal/ChartsToolbarZoomOutButton.d.ts +0 -13
- package/ChartsToolbarPro/internal/ChartsToolbarZoomOutButton.js +0 -36
- package/esm/ChartsToolbarPro/internal/ChartsToolbarZoomInButton.d.ts +0 -13
- package/esm/ChartsToolbarPro/internal/ChartsToolbarZoomInButton.js +0 -29
- package/esm/ChartsToolbarPro/internal/ChartsToolbarZoomOutButton.d.ts +0 -13
- package/esm/ChartsToolbarPro/internal/ChartsToolbarZoomOutButton.js +0 -29
package/esm/Heatmap/Heatmap.js
CHANGED
|
@@ -8,9 +8,11 @@ import useId from '@mui/utils/useId';
|
|
|
8
8
|
import { interpolateRgbBasis } from '@mui/x-charts-vendor/d3-interpolate';
|
|
9
9
|
import { ChartsAxis } from '@mui/x-charts/ChartsAxis';
|
|
10
10
|
import { ChartsSurface } from '@mui/x-charts/ChartsSurface';
|
|
11
|
+
import { ChartsWrapper } from '@mui/x-charts/internals';
|
|
11
12
|
import { ChartsClipPath } from '@mui/x-charts/ChartsClipPath';
|
|
12
13
|
import { ChartsOverlay } from '@mui/x-charts/ChartsOverlay';
|
|
13
14
|
import { DEFAULT_X_AXIS_KEY, DEFAULT_Y_AXIS_KEY } from '@mui/x-charts/constants';
|
|
15
|
+
import { ChartsLegend, ContinuousColorLegend } from '@mui/x-charts/ChartsLegend';
|
|
14
16
|
import { HeatmapPlot } from "./HeatmapPlot.js";
|
|
15
17
|
import { seriesConfig as heatmapSeriesConfig } from "./seriesConfig/index.js";
|
|
16
18
|
import { HeatmapTooltip } from "./HeatmapTooltip/index.js";
|
|
@@ -38,6 +40,7 @@ const Heatmap = /*#__PURE__*/React.forwardRef(function Heatmap(inProps, ref) {
|
|
|
38
40
|
name: 'MuiHeatmap'
|
|
39
41
|
});
|
|
40
42
|
const {
|
|
43
|
+
apiRef,
|
|
41
44
|
xAxis,
|
|
42
45
|
yAxis,
|
|
43
46
|
zAxis,
|
|
@@ -54,7 +57,8 @@ const Heatmap = /*#__PURE__*/React.forwardRef(function Heatmap(inProps, ref) {
|
|
|
54
57
|
slotProps,
|
|
55
58
|
loading,
|
|
56
59
|
highlightedItem,
|
|
57
|
-
onHighlightChange
|
|
60
|
+
onHighlightChange,
|
|
61
|
+
hideLegend = true
|
|
58
62
|
} = props;
|
|
59
63
|
const id = useId();
|
|
60
64
|
const clipPathId = `${id}-clip-path`;
|
|
@@ -82,8 +86,14 @@ const Heatmap = /*#__PURE__*/React.forwardRef(function Heatmap(inProps, ref) {
|
|
|
82
86
|
color: defaultColorMap
|
|
83
87
|
}
|
|
84
88
|
}], [zAxis]);
|
|
85
|
-
const
|
|
86
|
-
|
|
89
|
+
const chartsWrapperProps = {
|
|
90
|
+
sx,
|
|
91
|
+
legendPosition: props.slotProps?.legend?.position,
|
|
92
|
+
legendDirection: props.slotProps?.legend?.direction
|
|
93
|
+
};
|
|
94
|
+
const Tooltip = slots?.tooltip ?? HeatmapTooltip;
|
|
95
|
+
return /*#__PURE__*/_jsx(ChartDataProviderPro, {
|
|
96
|
+
apiRef: apiRef,
|
|
87
97
|
seriesConfig: seriesConfig,
|
|
88
98
|
series: series.map(s => _extends({
|
|
89
99
|
type: 'heatmap'
|
|
@@ -101,26 +111,42 @@ const Heatmap = /*#__PURE__*/React.forwardRef(function Heatmap(inProps, ref) {
|
|
|
101
111
|
onHighlightChange: onHighlightChange,
|
|
102
112
|
onAxisClick: onAxisClick,
|
|
103
113
|
plugins: HEATMAP_PLUGINS,
|
|
104
|
-
children:
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
+
children: /*#__PURE__*/_jsxs(ChartsWrapper, _extends({}, chartsWrapperProps, {
|
|
115
|
+
children: [!hideLegend && /*#__PURE__*/_jsx(ChartsLegend, {
|
|
116
|
+
slots: _extends({}, slots, {
|
|
117
|
+
legend: slots?.legend ?? ContinuousColorLegend
|
|
118
|
+
}),
|
|
119
|
+
slotProps: {
|
|
120
|
+
legend: _extends({
|
|
121
|
+
labelPosition: 'extremes'
|
|
122
|
+
}, slotProps?.legend)
|
|
123
|
+
},
|
|
124
|
+
sx: slotProps?.legend?.direction === 'vertical' ? {
|
|
125
|
+
height: 150
|
|
126
|
+
} : {
|
|
127
|
+
width: '50%'
|
|
128
|
+
}
|
|
129
|
+
}), /*#__PURE__*/_jsxs(ChartsSurface, {
|
|
130
|
+
ref: ref,
|
|
131
|
+
sx: sx,
|
|
132
|
+
children: [/*#__PURE__*/_jsxs("g", {
|
|
133
|
+
clipPath: `url(#${clipPathId})`,
|
|
134
|
+
children: [/*#__PURE__*/_jsx(HeatmapPlot, {
|
|
135
|
+
slots: slots,
|
|
136
|
+
slotProps: slotProps
|
|
137
|
+
}), /*#__PURE__*/_jsx(ChartsOverlay, {
|
|
138
|
+
loading: loading,
|
|
139
|
+
slots: slots,
|
|
140
|
+
slotProps: slotProps
|
|
141
|
+
})]
|
|
142
|
+
}), /*#__PURE__*/_jsx(ChartsAxis, {
|
|
114
143
|
slots: slots,
|
|
115
144
|
slotProps: slotProps
|
|
116
|
-
})
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
id: clipPathId
|
|
122
|
-
}), children]
|
|
123
|
-
}), !loading && /*#__PURE__*/_jsx(Tooltip, _extends({}, slotProps?.tooltip))]
|
|
145
|
+
}), /*#__PURE__*/_jsx(ChartsClipPath, {
|
|
146
|
+
id: clipPathId
|
|
147
|
+
}), children]
|
|
148
|
+
}), !loading && /*#__PURE__*/_jsx(Tooltip, _extends({}, slotProps?.tooltip))]
|
|
149
|
+
}))
|
|
124
150
|
});
|
|
125
151
|
});
|
|
126
152
|
if (process.env.NODE_ENV !== "production") Heatmap.displayName = "Heatmap";
|
|
@@ -130,7 +156,10 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
|
|
|
130
156
|
// | To update them edit the TypeScript types and run "pnpm proptypes" |
|
|
131
157
|
// ----------------------------------------------------------------------
|
|
132
158
|
apiRef: PropTypes.shape({
|
|
133
|
-
current: PropTypes.
|
|
159
|
+
current: PropTypes.shape({
|
|
160
|
+
exportAsImage: PropTypes.func.isRequired,
|
|
161
|
+
exportAsPrint: PropTypes.func.isRequired
|
|
162
|
+
})
|
|
134
163
|
}),
|
|
135
164
|
className: PropTypes.string,
|
|
136
165
|
/**
|
|
@@ -153,6 +182,11 @@ process.env.NODE_ENV !== "production" ? Heatmap.propTypes = {
|
|
|
153
182
|
* The height of the chart in px. If not defined, it takes the height of the parent element.
|
|
154
183
|
*/
|
|
155
184
|
height: PropTypes.number,
|
|
185
|
+
/**
|
|
186
|
+
* If `true`, the legend is not rendered.
|
|
187
|
+
* @default true
|
|
188
|
+
*/
|
|
189
|
+
hideLegend: PropTypes.bool,
|
|
156
190
|
/**
|
|
157
191
|
* The highlighted item.
|
|
158
192
|
* Used when the highlight is controlled.
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { UseChartZAxisSignature, UseChartCartesianAxisSignature, UseChartInteractionSignature, UseChartHighlightSignature, ConvertSignaturesIntoPlugins } from '@mui/x-charts/internals';
|
|
2
|
-
|
|
2
|
+
import { UseChartProExportSignature } from "../internals/plugins/useChartProExport/index.js";
|
|
3
|
+
export type HeatmapPluginsSignatures = [UseChartZAxisSignature, UseChartCartesianAxisSignature<'heatmap'>, UseChartInteractionSignature, UseChartHighlightSignature, UseChartProExportSignature];
|
|
3
4
|
export declare const HEATMAP_PLUGINS: ConvertSignaturesIntoPlugins<HeatmapPluginsSignatures>;
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { useChartZAxis, useChartCartesianAxis, useChartInteraction, useChartHighlight } from '@mui/x-charts/internals';
|
|
2
|
-
|
|
2
|
+
import { useChartProExport } from "../internals/plugins/useChartProExport/index.js";
|
|
3
|
+
export const HEATMAP_PLUGINS = [useChartZAxis, useChartCartesianAxis, useChartInteraction, useChartHighlight, useChartProExport];
|
|
@@ -1,13 +1,21 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { LineChartProps } from '@mui/x-charts/LineChart';
|
|
2
|
+
import { LineChartProps, LineChartSlots, LineChartSlotProps } from '@mui/x-charts/LineChart';
|
|
3
|
+
import { ChartsSlotPropsPro, ChartsSlotsPro } from "../internals/material/index.js";
|
|
3
4
|
import { ChartContainerProProps } from "../ChartContainerPro/index.js";
|
|
4
5
|
import { LineChartProPluginsSignatures } from "./LineChartPro.plugins.js";
|
|
5
|
-
export interface
|
|
6
|
+
export interface LineChartProSlots extends LineChartSlots, Partial<ChartsSlotsPro> {}
|
|
7
|
+
export interface LineChartProSlotProps extends LineChartSlotProps, Partial<ChartsSlotPropsPro> {}
|
|
8
|
+
export interface LineChartProProps extends Omit<LineChartProps, 'apiRef' | 'slots' | 'slotProps'>, Omit<ChartContainerProProps<'line', LineChartProPluginsSignatures>, 'series' | 'plugins' | 'seriesConfig' | 'slots' | 'slotProps'> {
|
|
6
9
|
/**
|
|
7
|
-
*
|
|
8
|
-
* @default
|
|
10
|
+
* Overridable component slots.
|
|
11
|
+
* @default {}
|
|
9
12
|
*/
|
|
10
|
-
|
|
13
|
+
slots?: LineChartProSlots;
|
|
14
|
+
/**
|
|
15
|
+
* The props used for each component slot.
|
|
16
|
+
* @default {}
|
|
17
|
+
*/
|
|
18
|
+
slotProps?: LineChartProSlotProps;
|
|
11
19
|
}
|
|
12
20
|
/**
|
|
13
21
|
* Demos:
|
|
@@ -72,9 +72,10 @@ const LineChartPro = /*#__PURE__*/React.forwardRef(function LineChartPro(inProps
|
|
|
72
72
|
plugins: LINE_CHART_PRO_PLUGINS
|
|
73
73
|
}), ref);
|
|
74
74
|
const Tooltip = props.slots?.tooltip ?? ChartsTooltip;
|
|
75
|
+
const Toolbar = props.slots?.toolbar ?? ChartsToolbarPro;
|
|
75
76
|
return /*#__PURE__*/_jsx(ChartDataProviderPro, _extends({}, chartDataProviderProProps, {
|
|
76
77
|
children: /*#__PURE__*/_jsxs(ChartsWrapper, _extends({}, chartsWrapperProps, {
|
|
77
|
-
children: [showToolbar ? /*#__PURE__*/_jsx(
|
|
78
|
+
children: [showToolbar ? /*#__PURE__*/_jsx(Toolbar, {}) : null, !props.hideLegend && /*#__PURE__*/_jsx(ChartsLegend, _extends({}, legendProps)), /*#__PURE__*/_jsxs(ChartsSurface, _extends({}, chartsSurfaceProps, {
|
|
78
79
|
children: [/*#__PURE__*/_jsx(ChartsGrid, _extends({}, gridProps)), /*#__PURE__*/_jsxs("g", _extends({}, clipPathGroupProps, {
|
|
79
80
|
children: [/*#__PURE__*/_jsx(AreaPlot, _extends({}, areaPlotProps)), /*#__PURE__*/_jsx(LinePlot, _extends({}, linePlotProps)), /*#__PURE__*/_jsx(ChartsOverlay, _extends({}, overlayProps)), /*#__PURE__*/_jsx(ChartsAxisHighlight, _extends({}, axisHighlightProps))]
|
|
80
81
|
})), /*#__PURE__*/_jsx(ChartsAxis, _extends({}, chartsAxisProps)), /*#__PURE__*/_jsx(ChartZoomSlider, {}), /*#__PURE__*/_jsx("g", {
|
|
@@ -95,6 +96,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
95
96
|
current: PropTypes.shape({
|
|
96
97
|
exportAsImage: PropTypes.func.isRequired,
|
|
97
98
|
exportAsPrint: PropTypes.func.isRequired,
|
|
99
|
+
setAxisZoomData: PropTypes.func.isRequired,
|
|
98
100
|
setZoomData: PropTypes.func.isRequired
|
|
99
101
|
})
|
|
100
102
|
}),
|
|
@@ -317,6 +319,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
317
319
|
panning: PropTypes.bool,
|
|
318
320
|
slider: PropTypes.shape({
|
|
319
321
|
enabled: PropTypes.bool,
|
|
322
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
320
323
|
size: PropTypes.number
|
|
321
324
|
}),
|
|
322
325
|
step: PropTypes.number
|
|
@@ -381,6 +384,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
381
384
|
panning: PropTypes.bool,
|
|
382
385
|
slider: PropTypes.shape({
|
|
383
386
|
enabled: PropTypes.bool,
|
|
387
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
384
388
|
size: PropTypes.number
|
|
385
389
|
}),
|
|
386
390
|
step: PropTypes.number
|
|
@@ -440,6 +444,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
440
444
|
panning: PropTypes.bool,
|
|
441
445
|
slider: PropTypes.shape({
|
|
442
446
|
enabled: PropTypes.bool,
|
|
447
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
443
448
|
size: PropTypes.number
|
|
444
449
|
}),
|
|
445
450
|
step: PropTypes.number
|
|
@@ -499,6 +504,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
499
504
|
panning: PropTypes.bool,
|
|
500
505
|
slider: PropTypes.shape({
|
|
501
506
|
enabled: PropTypes.bool,
|
|
507
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
502
508
|
size: PropTypes.number
|
|
503
509
|
}),
|
|
504
510
|
step: PropTypes.number
|
|
@@ -558,6 +564,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
558
564
|
panning: PropTypes.bool,
|
|
559
565
|
slider: PropTypes.shape({
|
|
560
566
|
enabled: PropTypes.bool,
|
|
567
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
561
568
|
size: PropTypes.number
|
|
562
569
|
}),
|
|
563
570
|
step: PropTypes.number
|
|
@@ -617,6 +624,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
617
624
|
panning: PropTypes.bool,
|
|
618
625
|
slider: PropTypes.shape({
|
|
619
626
|
enabled: PropTypes.bool,
|
|
627
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
620
628
|
size: PropTypes.number
|
|
621
629
|
}),
|
|
622
630
|
step: PropTypes.number
|
|
@@ -676,6 +684,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
676
684
|
panning: PropTypes.bool,
|
|
677
685
|
slider: PropTypes.shape({
|
|
678
686
|
enabled: PropTypes.bool,
|
|
687
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
679
688
|
size: PropTypes.number
|
|
680
689
|
}),
|
|
681
690
|
step: PropTypes.number
|
|
@@ -735,6 +744,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
735
744
|
panning: PropTypes.bool,
|
|
736
745
|
slider: PropTypes.shape({
|
|
737
746
|
enabled: PropTypes.bool,
|
|
747
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
738
748
|
size: PropTypes.number
|
|
739
749
|
}),
|
|
740
750
|
step: PropTypes.number
|
|
@@ -806,6 +816,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
806
816
|
panning: PropTypes.bool,
|
|
807
817
|
slider: PropTypes.shape({
|
|
808
818
|
enabled: PropTypes.bool,
|
|
819
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
809
820
|
size: PropTypes.number
|
|
810
821
|
}),
|
|
811
822
|
step: PropTypes.number
|
|
@@ -869,6 +880,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
869
880
|
panning: PropTypes.bool,
|
|
870
881
|
slider: PropTypes.shape({
|
|
871
882
|
enabled: PropTypes.bool,
|
|
883
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
872
884
|
size: PropTypes.number
|
|
873
885
|
}),
|
|
874
886
|
step: PropTypes.number
|
|
@@ -927,6 +939,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
927
939
|
panning: PropTypes.bool,
|
|
928
940
|
slider: PropTypes.shape({
|
|
929
941
|
enabled: PropTypes.bool,
|
|
942
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
930
943
|
size: PropTypes.number
|
|
931
944
|
}),
|
|
932
945
|
step: PropTypes.number
|
|
@@ -985,6 +998,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
985
998
|
panning: PropTypes.bool,
|
|
986
999
|
slider: PropTypes.shape({
|
|
987
1000
|
enabled: PropTypes.bool,
|
|
1001
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
988
1002
|
size: PropTypes.number
|
|
989
1003
|
}),
|
|
990
1004
|
step: PropTypes.number
|
|
@@ -1043,6 +1057,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
1043
1057
|
panning: PropTypes.bool,
|
|
1044
1058
|
slider: PropTypes.shape({
|
|
1045
1059
|
enabled: PropTypes.bool,
|
|
1060
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
1046
1061
|
size: PropTypes.number
|
|
1047
1062
|
}),
|
|
1048
1063
|
step: PropTypes.number
|
|
@@ -1101,6 +1116,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
1101
1116
|
panning: PropTypes.bool,
|
|
1102
1117
|
slider: PropTypes.shape({
|
|
1103
1118
|
enabled: PropTypes.bool,
|
|
1119
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
1104
1120
|
size: PropTypes.number
|
|
1105
1121
|
}),
|
|
1106
1122
|
step: PropTypes.number
|
|
@@ -1159,6 +1175,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
1159
1175
|
panning: PropTypes.bool,
|
|
1160
1176
|
slider: PropTypes.shape({
|
|
1161
1177
|
enabled: PropTypes.bool,
|
|
1178
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
1162
1179
|
size: PropTypes.number
|
|
1163
1180
|
}),
|
|
1164
1181
|
step: PropTypes.number
|
|
@@ -1217,6 +1234,7 @@ process.env.NODE_ENV !== "production" ? LineChartPro.propTypes = {
|
|
|
1217
1234
|
panning: PropTypes.bool,
|
|
1218
1235
|
slider: PropTypes.shape({
|
|
1219
1236
|
enabled: PropTypes.bool,
|
|
1237
|
+
showTooltip: PropTypes.oneOf(['always', 'hover', 'never']),
|
|
1220
1238
|
size: PropTypes.number
|
|
1221
1239
|
}),
|
|
1222
1240
|
step: PropTypes.number
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { RadarChartProps, RadarDataProviderProps } from '@mui/x-charts/RadarChart';
|
|
3
|
+
import { RadarChartProPluginsSignatures } from "./RadarChartPro.plugins.js";
|
|
4
|
+
export interface RadarChartProProps extends Omit<RadarChartProps, 'apiRef'>, Omit<RadarDataProviderProps<RadarChartProPluginsSignatures>, 'plugins' | 'seriesConfig' | 'slots' | 'slotProps'> {}
|
|
5
|
+
/**
|
|
6
|
+
* Demos:
|
|
7
|
+
*
|
|
8
|
+
* - [Radar Chart](https://mui.com/x/react-charts/radar/)
|
|
9
|
+
*
|
|
10
|
+
* API:
|
|
11
|
+
*
|
|
12
|
+
* - [RadarChart API](https://mui.com/x/api/charts/radar-chart/)
|
|
13
|
+
*/
|
|
14
|
+
declare const RadarChartPro: React.ForwardRefExoticComponent<RadarChartProProps & React.RefAttributes<SVGSVGElement>>;
|
|
15
|
+
export { RadarChartPro };
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
import { RadarAxisHighlight, RadarDataProvider, RadarGrid, RadarMetricLabels, RadarSeriesArea, RadarSeriesMarks } from '@mui/x-charts/RadarChart';
|
|
5
|
+
import { useThemeProps } from '@mui/material/styles';
|
|
6
|
+
import { useRadarChartProps, ChartsWrapper } from '@mui/x-charts/internals';
|
|
7
|
+
import { ChartsLegend } from '@mui/x-charts/ChartsLegend';
|
|
8
|
+
import { ChartsSurface } from '@mui/x-charts/ChartsSurface';
|
|
9
|
+
import { ChartsOverlay } from '@mui/x-charts/ChartsOverlay';
|
|
10
|
+
import { ChartsTooltip } from '@mui/x-charts/ChartsTooltip';
|
|
11
|
+
import { RADAR_CHART_PRO_PLUGINS } from "./RadarChartPro.plugins.js";
|
|
12
|
+
import { ChartsToolbarPro } from "../ChartsToolbarPro/index.js";
|
|
13
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
/**
|
|
15
|
+
* Demos:
|
|
16
|
+
*
|
|
17
|
+
* - [Radar Chart](https://mui.com/x/react-charts/radar/)
|
|
18
|
+
*
|
|
19
|
+
* API:
|
|
20
|
+
*
|
|
21
|
+
* - [RadarChart API](https://mui.com/x/api/charts/radar-chart/)
|
|
22
|
+
*/
|
|
23
|
+
const RadarChartPro = /*#__PURE__*/React.forwardRef(function RadarChartPro(inProps, ref) {
|
|
24
|
+
const props = useThemeProps({
|
|
25
|
+
props: inProps,
|
|
26
|
+
name: 'MuiRadarChartPro'
|
|
27
|
+
});
|
|
28
|
+
const {
|
|
29
|
+
chartsWrapperProps,
|
|
30
|
+
chartsSurfaceProps,
|
|
31
|
+
radarDataProviderProps,
|
|
32
|
+
radarGrid,
|
|
33
|
+
overlayProps,
|
|
34
|
+
legendProps,
|
|
35
|
+
highlight,
|
|
36
|
+
children
|
|
37
|
+
} = useRadarChartProps(props);
|
|
38
|
+
const Tooltip = props.slots?.tooltip ?? ChartsTooltip;
|
|
39
|
+
const Toolbar = props.slots?.toolbar ?? ChartsToolbarPro;
|
|
40
|
+
const radarDataProviderProProps = _extends({}, radarDataProviderProps, {
|
|
41
|
+
apiRef: radarDataProviderProps.apiRef,
|
|
42
|
+
plugins: RADAR_CHART_PRO_PLUGINS
|
|
43
|
+
});
|
|
44
|
+
return /*#__PURE__*/_jsx(RadarDataProvider, _extends({}, radarDataProviderProProps, {
|
|
45
|
+
children: /*#__PURE__*/_jsxs(ChartsWrapper, _extends({}, chartsWrapperProps, {
|
|
46
|
+
children: [props.showToolbar ? /*#__PURE__*/_jsx(Toolbar, {}) : null, !props.hideLegend && /*#__PURE__*/_jsx(ChartsLegend, _extends({}, legendProps)), /*#__PURE__*/_jsxs(ChartsSurface, _extends({}, chartsSurfaceProps, {
|
|
47
|
+
ref: ref,
|
|
48
|
+
children: [/*#__PURE__*/_jsx(RadarGrid, _extends({}, radarGrid)), /*#__PURE__*/_jsx(RadarMetricLabels, {}), /*#__PURE__*/_jsx(RadarSeriesArea, {}), highlight === 'axis' && /*#__PURE__*/_jsx(RadarAxisHighlight, {}), /*#__PURE__*/_jsx(RadarSeriesMarks, {}), /*#__PURE__*/_jsx(ChartsOverlay, _extends({}, overlayProps)), children]
|
|
49
|
+
})), !props.loading && /*#__PURE__*/_jsx(Tooltip, _extends({}, props.slotProps?.tooltip))]
|
|
50
|
+
}))
|
|
51
|
+
}));
|
|
52
|
+
});
|
|
53
|
+
if (process.env.NODE_ENV !== "production") RadarChartPro.displayName = "RadarChartPro";
|
|
54
|
+
process.env.NODE_ENV !== "production" ? RadarChartPro.propTypes = {
|
|
55
|
+
// ----------------------------- Warning --------------------------------
|
|
56
|
+
// | These PropTypes are generated from the TypeScript type definitions |
|
|
57
|
+
// | To update them edit the TypeScript types and run "pnpm proptypes" |
|
|
58
|
+
// ----------------------------------------------------------------------
|
|
59
|
+
apiRef: PropTypes.shape({
|
|
60
|
+
current: PropTypes.shape({
|
|
61
|
+
exportAsImage: PropTypes.func.isRequired,
|
|
62
|
+
exportAsPrint: PropTypes.func.isRequired
|
|
63
|
+
})
|
|
64
|
+
}),
|
|
65
|
+
className: PropTypes.string,
|
|
66
|
+
/**
|
|
67
|
+
* Color palette used to colorize multiple series.
|
|
68
|
+
* @default rainbowSurgePalette
|
|
69
|
+
*/
|
|
70
|
+
colors: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.func]),
|
|
71
|
+
desc: PropTypes.string,
|
|
72
|
+
/**
|
|
73
|
+
* If `true`, the charts will not listen to the mouse move event.
|
|
74
|
+
* It might break interactive features, but will improve performance.
|
|
75
|
+
* @default false
|
|
76
|
+
*/
|
|
77
|
+
disableAxisListener: PropTypes.bool,
|
|
78
|
+
/**
|
|
79
|
+
* The number of divisions in the radar grid.
|
|
80
|
+
* @default 5
|
|
81
|
+
*/
|
|
82
|
+
divisions: PropTypes.number,
|
|
83
|
+
/**
|
|
84
|
+
* The height of the chart in px. If not defined, it takes the height of the parent element.
|
|
85
|
+
*/
|
|
86
|
+
height: PropTypes.number,
|
|
87
|
+
/**
|
|
88
|
+
* If `true`, the legend is not rendered.
|
|
89
|
+
*/
|
|
90
|
+
hideLegend: PropTypes.bool,
|
|
91
|
+
/**
|
|
92
|
+
* Indicates if the chart should highlight items per axis or per series.
|
|
93
|
+
* @default 'axis'
|
|
94
|
+
*/
|
|
95
|
+
highlight: PropTypes.oneOf(['axis', 'none', 'series']),
|
|
96
|
+
/**
|
|
97
|
+
* The highlighted item.
|
|
98
|
+
* Used when the highlight is controlled.
|
|
99
|
+
*/
|
|
100
|
+
highlightedItem: PropTypes.shape({
|
|
101
|
+
dataIndex: PropTypes.number,
|
|
102
|
+
seriesId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired
|
|
103
|
+
}),
|
|
104
|
+
/**
|
|
105
|
+
* This prop is used to help implement the accessibility logic.
|
|
106
|
+
* If you don't provide this prop. It falls back to a randomly generated id.
|
|
107
|
+
*/
|
|
108
|
+
id: PropTypes.string,
|
|
109
|
+
/**
|
|
110
|
+
* If `true`, a loading overlay is displayed.
|
|
111
|
+
* @default false
|
|
112
|
+
*/
|
|
113
|
+
loading: PropTypes.bool,
|
|
114
|
+
/**
|
|
115
|
+
* Localized text for chart components.
|
|
116
|
+
*/
|
|
117
|
+
localeText: PropTypes.object,
|
|
118
|
+
/**
|
|
119
|
+
* The margin between the SVG and the drawing area.
|
|
120
|
+
* It's used for leaving some space for extra information such as the x- and y-axis or legend.
|
|
121
|
+
*
|
|
122
|
+
* Accepts a `number` to be used on all sides or an object with the optional properties: `top`, `bottom`, `left`, and `right`.
|
|
123
|
+
*/
|
|
124
|
+
margin: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
|
|
125
|
+
bottom: PropTypes.number,
|
|
126
|
+
left: PropTypes.number,
|
|
127
|
+
right: PropTypes.number,
|
|
128
|
+
top: PropTypes.number
|
|
129
|
+
})]),
|
|
130
|
+
/**
|
|
131
|
+
* The callback fired when the highlighted item changes.
|
|
132
|
+
*
|
|
133
|
+
* @param {HighlightItemData | null} highlightedItem The newly highlighted item.
|
|
134
|
+
*/
|
|
135
|
+
onHighlightChange: PropTypes.func,
|
|
136
|
+
/**
|
|
137
|
+
* The configuration of the radar scales.
|
|
138
|
+
*/
|
|
139
|
+
radar: PropTypes.shape({
|
|
140
|
+
labelFormatter: PropTypes.func,
|
|
141
|
+
labelGap: PropTypes.number,
|
|
142
|
+
max: PropTypes.number,
|
|
143
|
+
metrics: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.arrayOf(PropTypes.shape({
|
|
144
|
+
max: PropTypes.number,
|
|
145
|
+
min: PropTypes.number,
|
|
146
|
+
name: PropTypes.string.isRequired
|
|
147
|
+
}))]).isRequired,
|
|
148
|
+
startAngle: PropTypes.number
|
|
149
|
+
}).isRequired,
|
|
150
|
+
/**
|
|
151
|
+
* The series to display in the bar chart.
|
|
152
|
+
* An array of [[RadarSeriesType]] objects.
|
|
153
|
+
*/
|
|
154
|
+
series: PropTypes.arrayOf(PropTypes.object).isRequired,
|
|
155
|
+
/**
|
|
156
|
+
* The grid shape.
|
|
157
|
+
* @default 'sharp'
|
|
158
|
+
*/
|
|
159
|
+
shape: PropTypes.oneOf(['circular', 'sharp']),
|
|
160
|
+
/**
|
|
161
|
+
* If true, shows the default chart toolbar.
|
|
162
|
+
* @default false
|
|
163
|
+
*/
|
|
164
|
+
showToolbar: PropTypes.bool,
|
|
165
|
+
/**
|
|
166
|
+
* If `true`, animations are skipped.
|
|
167
|
+
* If unset or `false`, the animations respects the user's `prefers-reduced-motion` setting.
|
|
168
|
+
*/
|
|
169
|
+
skipAnimation: PropTypes.bool,
|
|
170
|
+
/**
|
|
171
|
+
* The props used for each component slot.
|
|
172
|
+
* @default {}
|
|
173
|
+
*/
|
|
174
|
+
slotProps: PropTypes.object,
|
|
175
|
+
/**
|
|
176
|
+
* Overridable component slots.
|
|
177
|
+
* @default {}
|
|
178
|
+
*/
|
|
179
|
+
slots: PropTypes.object,
|
|
180
|
+
/**
|
|
181
|
+
* Get stripe fill color. Set it to `null` to remove stripes
|
|
182
|
+
* @param {number} index The index of the stripe band.
|
|
183
|
+
* @returns {string} The color to fill the stripe.
|
|
184
|
+
* @default (index) => index % 2 === 1 ? (theme.vars || theme).palette.text.secondary : 'none'
|
|
185
|
+
*/
|
|
186
|
+
stripeColor: PropTypes.func,
|
|
187
|
+
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
188
|
+
theme: PropTypes.oneOf(['dark', 'light']),
|
|
189
|
+
title: PropTypes.string,
|
|
190
|
+
/**
|
|
191
|
+
* The width of the chart in px. If not defined, it takes the width of the parent element.
|
|
192
|
+
*/
|
|
193
|
+
width: PropTypes.number
|
|
194
|
+
} : void 0;
|
|
195
|
+
export { RadarChartPro };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ConvertSignaturesIntoPlugins, UseChartHighlightSignature, UseChartInteractionSignature, UseChartPolarAxisSignature } from '@mui/x-charts/internals';
|
|
2
|
+
import { UseChartProExportSignature } from "../internals/plugins/useChartProExport/index.js";
|
|
3
|
+
export type RadarChartProPluginsSignatures = [UseChartPolarAxisSignature, UseChartInteractionSignature, UseChartHighlightSignature, UseChartProExportSignature];
|
|
4
|
+
export declare const RADAR_CHART_PRO_PLUGINS: ConvertSignaturesIntoPlugins<RadarChartProPluginsSignatures>;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { useChartHighlight, useChartInteraction, useChartPolarAxis } from '@mui/x-charts/internals';
|
|
2
|
+
import { useChartProExport } from "../internals/plugins/useChartProExport/index.js";
|
|
3
|
+
export const RADAR_CHART_PRO_PLUGINS = [useChartPolarAxis, useChartInteraction, useChartHighlight, useChartProExport];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./RadarChartPro.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./RadarChartPro.js";
|
|
@@ -1,13 +1,21 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { ScatterChartProps } from '@mui/x-charts/ScatterChart';
|
|
2
|
+
import { ScatterChartProps, ScatterChartSlotProps, ScatterChartSlots } from '@mui/x-charts/ScatterChart';
|
|
3
|
+
import { ChartsSlotPropsPro, ChartsSlotsPro } from "../internals/material/index.js";
|
|
3
4
|
import { ChartContainerProProps } from "../ChartContainerPro/ChartContainerPro.js";
|
|
4
5
|
import { ScatterChartProPluginsSignatures } from "./ScatterChartPro.plugins.js";
|
|
5
|
-
export interface
|
|
6
|
+
export interface ScatterChartProSlots extends ScatterChartSlots, Partial<ChartsSlotsPro> {}
|
|
7
|
+
export interface ScatterChartProSlotProps extends ScatterChartSlotProps, Partial<ChartsSlotPropsPro> {}
|
|
8
|
+
export interface ScatterChartProProps extends Omit<ScatterChartProps, 'apiRef' | 'slots' | 'slotProps'>, Omit<ChartContainerProProps<'scatter', ScatterChartProPluginsSignatures>, 'series' | 'plugins' | 'seriesConfig' | 'onItemClick' | 'slots' | 'slotProps'> {
|
|
6
9
|
/**
|
|
7
|
-
*
|
|
8
|
-
* @default
|
|
10
|
+
* Overridable component slots.
|
|
11
|
+
* @default {}
|
|
9
12
|
*/
|
|
10
|
-
|
|
13
|
+
slots?: ScatterChartProSlots;
|
|
14
|
+
/**
|
|
15
|
+
* The props used for each component slot.
|
|
16
|
+
* @default {}
|
|
17
|
+
*/
|
|
18
|
+
slotProps?: ScatterChartProSlotProps;
|
|
11
19
|
}
|
|
12
20
|
/**
|
|
13
21
|
* Demos:
|