@semcore/d3-chart 16.4.2 → 16.5.0-prerelease.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/CHANGELOG.md +12 -0
- package/README.md +4 -4
- package/lib/cjs/Area.js +11 -11
- package/lib/cjs/Axis.js +15 -15
- package/lib/cjs/Bar.js +16 -16
- package/lib/cjs/Bubble.js +15 -15
- package/lib/cjs/Bubble.js.map +1 -1
- package/lib/cjs/CompactHorizontalBar.js +21 -19
- package/lib/cjs/CompactHorizontalBar.js.map +1 -1
- package/lib/cjs/Donut.js +12 -11
- package/lib/cjs/Donut.js.map +1 -1
- package/lib/cjs/Dots.js +8 -8
- package/lib/cjs/HorizontalBar.js +16 -16
- package/lib/cjs/Hover.js +7 -7
- package/lib/cjs/Hover.js.map +1 -1
- package/lib/cjs/Line.js +9 -9
- package/lib/cjs/Plot.js +3 -3
- package/lib/cjs/Radar.js +21 -21
- package/lib/cjs/Radar.js.map +1 -1
- package/lib/cjs/RadialTree.js +24 -24
- package/lib/cjs/RadialTree.js.map +1 -1
- package/lib/cjs/Reference.js +12 -12
- package/lib/cjs/ScatterPlot.js +12 -11
- package/lib/cjs/ScatterPlot.js.map +1 -1
- package/lib/cjs/Tooltip.js +9 -9
- package/lib/cjs/Venn.js +12 -11
- package/lib/cjs/Venn.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yModule.js +5 -5
- package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yView.js +2 -2
- package/lib/cjs/component/Chart/AbstractChart.js +119 -35
- package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
- package/lib/cjs/component/Chart/AreaChart.js +5 -29
- package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
- package/lib/cjs/component/Chart/BarChart.js +5 -29
- package/lib/cjs/component/Chart/BarChart.js.map +1 -1
- package/lib/cjs/component/Chart/BubbleChart.js +0 -4
- package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
- package/lib/cjs/component/Chart/BubbleChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/CigaretteChart.js +96 -59
- package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/cjs/component/Chart/CigaretteChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/DonutChart.js +1 -6
- package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
- package/lib/cjs/component/Chart/DonutChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/HistogramChart.js +4 -28
- package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
- package/lib/cjs/component/Chart/LineChart.js +5 -29
- package/lib/cjs/component/Chart/LineChart.js.map +1 -1
- package/lib/cjs/component/Chart/RadarChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/ScatterPlotChart.js +1 -5
- package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/cjs/component/Chart/ScatterPlotChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/VennChart.js +0 -4
- package/lib/cjs/component/Chart/VennChart.js.map +1 -1
- package/lib/cjs/component/Chart/VennChart.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/lib/cjs/style/abstract-chart.shadow.css +12 -0
- package/lib/es6/Area.js +11 -11
- package/lib/es6/Axis.js +15 -15
- package/lib/es6/Bar.js +16 -16
- package/lib/es6/Bubble.js +15 -15
- package/lib/es6/Bubble.js.map +1 -1
- package/lib/es6/CompactHorizontalBar.js +21 -19
- package/lib/es6/CompactHorizontalBar.js.map +1 -1
- package/lib/es6/Donut.js +12 -11
- package/lib/es6/Donut.js.map +1 -1
- package/lib/es6/Dots.js +8 -8
- package/lib/es6/HorizontalBar.js +16 -16
- package/lib/es6/Hover.js +7 -7
- package/lib/es6/Hover.js.map +1 -1
- package/lib/es6/Line.js +9 -9
- package/lib/es6/Plot.js +3 -3
- package/lib/es6/Radar.js +21 -21
- package/lib/es6/Radar.js.map +1 -1
- package/lib/es6/RadialTree.js +24 -24
- package/lib/es6/RadialTree.js.map +1 -1
- package/lib/es6/Reference.js +12 -12
- package/lib/es6/ScatterPlot.js +12 -11
- package/lib/es6/ScatterPlot.js.map +1 -1
- package/lib/es6/Tooltip.js +9 -9
- package/lib/es6/Venn.js +12 -11
- package/lib/es6/Venn.js.map +1 -1
- package/lib/es6/a11y/PlotA11yModule.js +4 -4
- package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
- package/lib/es6/a11y/PlotA11yView.js +2 -2
- package/lib/es6/component/Chart/AbstractChart.js +119 -31
- package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
- package/lib/es6/component/Chart/AreaChart.js +5 -29
- package/lib/es6/component/Chart/AreaChart.js.map +1 -1
- package/lib/es6/component/Chart/BarChart.js +5 -29
- package/lib/es6/component/Chart/BarChart.js.map +1 -1
- package/lib/es6/component/Chart/BubbleChart.js +0 -4
- package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
- package/lib/es6/component/Chart/BubbleChart.type.js.map +1 -1
- package/lib/es6/component/Chart/CigaretteChart.js +100 -61
- package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/es6/component/Chart/CigaretteChart.type.js.map +1 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
- package/lib/es6/component/Chart/DonutChart.js +1 -6
- package/lib/es6/component/Chart/DonutChart.js.map +1 -1
- package/lib/es6/component/Chart/DonutChart.type.js.map +1 -1
- package/lib/es6/component/Chart/HistogramChart.js +4 -28
- package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
- package/lib/es6/component/Chart/LineChart.js +5 -29
- package/lib/es6/component/Chart/LineChart.js.map +1 -1
- package/lib/es6/component/Chart/RadarChart.type.js.map +1 -1
- package/lib/es6/component/Chart/ScatterPlotChart.js +1 -5
- package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +1 -1
- package/lib/es6/component/Chart/VennChart.js +0 -4
- package/lib/es6/component/Chart/VennChart.js.map +1 -1
- package/lib/es6/component/Chart/VennChart.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/lib/es6/style/abstract-chart.shadow.css +12 -0
- package/lib/esm/Area.mjs +12 -12
- package/lib/esm/Axis.mjs +16 -16
- package/lib/esm/Bar.mjs +17 -17
- package/lib/esm/Bubble.mjs +16 -16
- package/lib/esm/CompactHorizontalBar.mjs +21 -20
- package/lib/esm/Donut.mjs +12 -12
- package/lib/esm/Dots.mjs +9 -9
- package/lib/esm/HorizontalBar.mjs +17 -17
- package/lib/esm/Hover.mjs +8 -8
- package/lib/esm/Line.mjs +10 -10
- package/lib/esm/Plot.mjs +4 -4
- package/lib/esm/Radar.mjs +22 -22
- package/lib/esm/RadialTree.mjs +27 -27
- package/lib/esm/Reference.mjs +13 -13
- package/lib/esm/ScatterPlot.mjs +12 -12
- package/lib/esm/Tooltip.mjs +10 -10
- package/lib/esm/Venn.mjs +12 -12
- package/lib/esm/a11y/PlotA11yModule.mjs +5 -5
- package/lib/esm/a11y/PlotA11yView.mjs +3 -3
- package/lib/esm/component/Chart/AbstractChart.mjs +103 -19
- package/lib/esm/component/Chart/AreaChart.mjs +5 -27
- package/lib/esm/component/Chart/BarChart.mjs +6 -28
- package/lib/esm/component/Chart/BubbleChart.mjs +0 -4
- package/lib/esm/component/Chart/CigaretteChart.mjs +78 -45
- package/lib/esm/component/Chart/DonutChart.mjs +1 -4
- package/lib/esm/component/Chart/HistogramChart.mjs +5 -27
- package/lib/esm/component/Chart/LineChart.mjs +5 -27
- package/lib/esm/component/Chart/ScatterPlotChart.mjs +1 -4
- package/lib/esm/component/Chart/VennChart.mjs +0 -4
- package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +5 -5
- package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +18 -18
- package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +7 -7
- package/lib/esm/style/abstract-chart.shadow.css +12 -0
- package/lib/types/a11y/PlotA11yModule.d.ts +1 -1
- package/lib/types/component/Chart/AbstractChart.d.ts +11 -1
- package/lib/types/component/Chart/BubbleChart.type.d.ts +1 -1
- package/lib/types/component/Chart/CigaretteChart.type.d.ts +2 -0
- package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +1 -1
- package/lib/types/component/Chart/DonutChart.type.d.ts +1 -1
- package/lib/types/component/Chart/RadarChart.type.d.ts +1 -1
- package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +1 -1
- package/lib/types/component/Chart/VennChart.type.d.ts +1 -1
- package/package.json +5 -5
|
@@ -141,15 +141,18 @@ var CigaretteChartComponent = /*#__PURE__*/function (_AbstractChart) {
|
|
|
141
141
|
}, {
|
|
142
142
|
key: "renderTooltip",
|
|
143
143
|
value: function renderTooltip() {
|
|
144
|
-
var
|
|
144
|
+
var _ref = this.asProps,
|
|
145
|
+
_this3 = this;
|
|
145
146
|
var _this$asProps2 = this.asProps,
|
|
146
147
|
data = _this$asProps2.data,
|
|
147
|
-
showTotalInTooltip = _this$asProps2.showTotalInTooltip,
|
|
148
|
-
showTooltip = _this$asProps2.showTooltip,
|
|
149
148
|
invertAxis = _this$asProps2.invertAxis,
|
|
150
149
|
tooltipTitle = _this$asProps2.tooltipTitle,
|
|
151
|
-
tooltipViewType = _this$asProps2.tooltipViewType
|
|
150
|
+
tooltipViewType = _this$asProps2.tooltipViewType,
|
|
151
|
+
showPercentValueInTooltip = _this$asProps2.showPercentValueInTooltip,
|
|
152
|
+
styles = _this$asProps2.styles,
|
|
153
|
+
showTooltip = _this$asProps2.showTooltip;
|
|
152
154
|
var dataDefinitions = this.state.dataDefinitions;
|
|
155
|
+
var STooltipChildrenWrapper = _flexBox.Box;
|
|
153
156
|
if (!showTooltip) {
|
|
154
157
|
return null;
|
|
155
158
|
}
|
|
@@ -159,9 +162,11 @@ var CigaretteChartComponent = /*#__PURE__*/function (_AbstractChart) {
|
|
|
159
162
|
wMin: 100,
|
|
160
163
|
hideHoverLine: true
|
|
161
164
|
}, function (tooltipProps) {
|
|
165
|
+
var _ref4;
|
|
162
166
|
var dataKey = invertAxis ? tooltipProps.xIndex : tooltipProps.yIndex;
|
|
163
|
-
var
|
|
167
|
+
var showPercentColumn = showPercentValueInTooltip && _this3.totalValue(data) !== 0;
|
|
164
168
|
if (tooltipViewType === 'single') {
|
|
169
|
+
var _ref3;
|
|
165
170
|
var item = dataDefinitions.find(function (dataDefItem) {
|
|
166
171
|
return dataDefItem.id === dataKey;
|
|
167
172
|
});
|
|
@@ -169,42 +174,73 @@ var CigaretteChartComponent = /*#__PURE__*/function (_AbstractChart) {
|
|
|
169
174
|
return null;
|
|
170
175
|
}
|
|
171
176
|
return {
|
|
172
|
-
children: /*#__PURE__*/_react["default"].createElement(
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
}, /*#__PURE__*/_react["default"].createElement(_.HoverRect.Tooltip.Dot, {
|
|
176
|
-
mr:
|
|
177
|
+
children: (_ref3 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(STooltipChildrenWrapper, _ref3.cn("STooltipChildrenWrapper", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
178
|
+
"columnsCount": showPercentColumn ? '3' : '2',
|
|
179
|
+
"__excludeProps": ['data']
|
|
180
|
+
}, _ref))), /*#__PURE__*/_react["default"].createElement(_.HoverRect.Tooltip.Dot, {
|
|
181
|
+
mr: 2,
|
|
177
182
|
color: item.color
|
|
178
|
-
}, item.label), /*#__PURE__*/_react["default"].createElement(_typography.Text, {
|
|
179
|
-
|
|
180
|
-
|
|
183
|
+
}, item.label), showPercentColumn && /*#__PURE__*/_react["default"].createElement(_typography.Text, _ref3.cn("Text", {
|
|
184
|
+
"textAlign": 'end',
|
|
185
|
+
"color": 'text-secondary'
|
|
186
|
+
}), _this3.percentValue(data, item.id)), /*#__PURE__*/_react["default"].createElement(_typography.Text, _ref3.cn("Text", {
|
|
187
|
+
"textAlign": 'end',
|
|
188
|
+
"bold": true
|
|
189
|
+
}), _this3.tooltipValueFormatter(data[item.id]))))
|
|
181
190
|
};
|
|
182
191
|
}
|
|
183
192
|
return {
|
|
184
|
-
children:
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
193
|
+
children: (_ref4 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(_flexBox.Flex, _ref4.cn("Flex", {
|
|
194
|
+
"direction": 'column'
|
|
195
|
+
}), tooltipTitle && /*#__PURE__*/_react["default"].createElement(_.HoverRect.Tooltip.Title, null, "Some tooltip title"), /*#__PURE__*/_react["default"].createElement(STooltipChildrenWrapper, _ref4.cn("STooltipChildrenWrapper", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
196
|
+
"columnsCount": showPercentColumn ? '3' : '2',
|
|
197
|
+
"__excludeProps": ['data']
|
|
198
|
+
}, _ref))), dataDefinitions.map(function (item) {
|
|
199
|
+
var style = {
|
|
200
|
+
opacity: item.id === dataKey ? 1 : 0.3
|
|
201
|
+
};
|
|
202
|
+
return item.checked && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, {
|
|
203
|
+
key: item.id
|
|
191
204
|
}, /*#__PURE__*/_react["default"].createElement(_.HoverRect.Tooltip.Dot, {
|
|
192
|
-
mr:
|
|
193
|
-
color: item.color
|
|
194
|
-
|
|
195
|
-
|
|
205
|
+
mr: 2,
|
|
206
|
+
color: item.color,
|
|
207
|
+
style: style
|
|
208
|
+
}, item.label), showPercentColumn && /*#__PURE__*/_react["default"].createElement(_typography.Text, {
|
|
209
|
+
textAlign: "end",
|
|
210
|
+
color: "text-secondary",
|
|
211
|
+
style: style
|
|
212
|
+
}, _this3.percentValue(data, item.id)), /*#__PURE__*/_react["default"].createElement(_typography.Text, {
|
|
213
|
+
textAlign: "end",
|
|
214
|
+
bold: true,
|
|
215
|
+
style: style
|
|
196
216
|
}, _this3.tooltipValueFormatter(data[item.id])));
|
|
197
|
-
}),
|
|
198
|
-
mt: 2,
|
|
199
|
-
justifyContent: "space-between"
|
|
200
|
-
}, /*#__PURE__*/_react["default"].createElement(_flexBox.Box, {
|
|
201
|
-
mr: 4
|
|
202
|
-
}, "Total"), /*#__PURE__*/_react["default"].createElement(_typography.Text, {
|
|
203
|
-
bold: true
|
|
204
|
-
}, total)))
|
|
217
|
+
}), _this3.renderTooltipTotalLine(data))))
|
|
205
218
|
};
|
|
206
219
|
});
|
|
207
220
|
}
|
|
221
|
+
}, {
|
|
222
|
+
key: "renderTooltipTotalLine",
|
|
223
|
+
value: function renderTooltipTotalLine(dataItem) {
|
|
224
|
+
var _this$asProps3 = this.asProps,
|
|
225
|
+
showTotalInTooltip = _this$asProps3.showTotalInTooltip,
|
|
226
|
+
showPercentValueInTooltip = _this$asProps3.showPercentValueInTooltip;
|
|
227
|
+
if (!showTotalInTooltip) {
|
|
228
|
+
return null;
|
|
229
|
+
}
|
|
230
|
+
var total = this.totalValue(dataItem);
|
|
231
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_flexBox.Box, {
|
|
232
|
+
mt: 2,
|
|
233
|
+
mr: 2
|
|
234
|
+
}, "Total"), showPercentValueInTooltip && total !== 0 && /*#__PURE__*/_react["default"].createElement(_typography.Text, {
|
|
235
|
+
mt: 2,
|
|
236
|
+
textAlign: "end",
|
|
237
|
+
color: "text-secondary"
|
|
238
|
+
}, Number.isNaN(total) ? _AbstractChart2.NOT_A_VALUE : '100%'), /*#__PURE__*/_react["default"].createElement(_typography.Text, {
|
|
239
|
+
mt: 2,
|
|
240
|
+
textAlign: "end",
|
|
241
|
+
bold: true
|
|
242
|
+
}, Number.isNaN(total) ? _AbstractChart2.NOT_A_VALUE : total));
|
|
243
|
+
}
|
|
208
244
|
}, {
|
|
209
245
|
key: "renderHeader",
|
|
210
246
|
value: function renderHeader() {
|
|
@@ -214,27 +250,27 @@ var CigaretteChartComponent = /*#__PURE__*/function (_AbstractChart) {
|
|
|
214
250
|
}, {
|
|
215
251
|
key: "render",
|
|
216
252
|
value: function render() {
|
|
217
|
-
var
|
|
218
|
-
|
|
253
|
+
var _ref2 = this.asProps,
|
|
254
|
+
_ref6;
|
|
219
255
|
var SChart = _flexBox.Flex;
|
|
220
|
-
var _this$
|
|
221
|
-
styles = _this$
|
|
222
|
-
plotWidth = _this$
|
|
223
|
-
plotHeight = _this$
|
|
224
|
-
data = _this$
|
|
225
|
-
patterns = _this$
|
|
226
|
-
invertAxis = _this$
|
|
227
|
-
a11yAltTextConfig = _this$
|
|
256
|
+
var _this$asProps4 = this.asProps,
|
|
257
|
+
styles = _this$asProps4.styles,
|
|
258
|
+
plotWidth = _this$asProps4.plotWidth,
|
|
259
|
+
plotHeight = _this$asProps4.plotHeight,
|
|
260
|
+
data = _this$asProps4.data,
|
|
261
|
+
patterns = _this$asProps4.patterns,
|
|
262
|
+
invertAxis = _this$asProps4.invertAxis,
|
|
263
|
+
a11yAltTextConfig = _this$asProps4.a11yAltTextConfig;
|
|
228
264
|
var header = this.renderHeader();
|
|
229
265
|
if (invertAxis) {
|
|
230
|
-
var
|
|
231
|
-
return
|
|
266
|
+
var _ref5;
|
|
267
|
+
return _ref5 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SChart, _ref5.cn("SChart", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
232
268
|
"gap": 6,
|
|
233
269
|
"direction": 'column',
|
|
234
270
|
"__excludeProps": ['onClick', 'data']
|
|
235
|
-
},
|
|
271
|
+
}, _ref2))), /*#__PURE__*/_react["default"].createElement(_flexBox.Flex, _ref5.cn("Flex", {
|
|
236
272
|
"direction": 'column'
|
|
237
|
-
}), header, /*#__PURE__*/_react["default"].createElement(_.Plot,
|
|
273
|
+
}), header, /*#__PURE__*/_react["default"].createElement(_.Plot, _ref5.cn("Plot", {
|
|
238
274
|
"data": data,
|
|
239
275
|
"scale": [this.xScale, this.yScale],
|
|
240
276
|
"width": plotWidth,
|
|
@@ -244,10 +280,10 @@ var CigaretteChartComponent = /*#__PURE__*/function (_AbstractChart) {
|
|
|
244
280
|
"a11yAltTextConfig": a11yAltTextConfig
|
|
245
281
|
}), this.renderTooltip(), this.renderChart())), this.renderLegend());
|
|
246
282
|
}
|
|
247
|
-
return
|
|
283
|
+
return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SChart, _ref6.cn("SChart", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
248
284
|
"gap": 6,
|
|
249
285
|
"__excludeProps": ['onClick', 'data']
|
|
250
|
-
},
|
|
286
|
+
}, _ref2))), /*#__PURE__*/_react["default"].createElement(_.Plot, _ref6.cn("Plot", {
|
|
251
287
|
"data": data,
|
|
252
288
|
"scale": [this.xScale, this.yScale],
|
|
253
289
|
"width": plotWidth,
|
|
@@ -255,10 +291,10 @@ var CigaretteChartComponent = /*#__PURE__*/function (_AbstractChart) {
|
|
|
255
291
|
"dataHints": this.dataHints,
|
|
256
292
|
"patterns": patterns,
|
|
257
293
|
"a11yAltTextConfig": a11yAltTextConfig
|
|
258
|
-
}), this.renderTooltip(), this.renderChart()), /*#__PURE__*/_react["default"].createElement(_flexBox.Flex,
|
|
294
|
+
}), this.renderTooltip(), this.renderChart()), /*#__PURE__*/_react["default"].createElement(_flexBox.Flex, _ref6.cn("Flex", {
|
|
259
295
|
"direction": 'column',
|
|
260
296
|
"gap": 2
|
|
261
|
-
}), header && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_flexBox.Box,
|
|
297
|
+
}), header && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_flexBox.Box, _ref6.cn("Box", {}), header), /*#__PURE__*/_react["default"].createElement(_divider["default"], _ref6.cn("Divider", {}))), this.renderLegend()));
|
|
262
298
|
}
|
|
263
299
|
}, {
|
|
264
300
|
key: "getLegendAriaLabel",
|
|
@@ -284,20 +320,20 @@ var CigaretteChartComponent = /*#__PURE__*/function (_AbstractChart) {
|
|
|
284
320
|
}, {
|
|
285
321
|
key: "categoryScale",
|
|
286
322
|
get: function get() {
|
|
287
|
-
var _this$
|
|
288
|
-
plotWidth = _this$
|
|
289
|
-
plotHeight = _this$
|
|
290
|
-
invertAxis = _this$
|
|
323
|
+
var _this$asProps5 = this.asProps,
|
|
324
|
+
plotWidth = _this$asProps5.plotWidth,
|
|
325
|
+
plotHeight = _this$asProps5.plotHeight,
|
|
326
|
+
invertAxis = _this$asProps5.invertAxis;
|
|
291
327
|
var range = invertAxis ? [plotHeight, 0] : [0, plotWidth];
|
|
292
328
|
return (0, _d3Scale.scaleBand)([0], range);
|
|
293
329
|
}
|
|
294
330
|
}, {
|
|
295
331
|
key: "valueScale",
|
|
296
332
|
get: function get() {
|
|
297
|
-
var _this$
|
|
298
|
-
plotWidth = _this$
|
|
299
|
-
plotHeight = _this$
|
|
300
|
-
invertAxis = _this$
|
|
333
|
+
var _this$asProps6 = this.asProps,
|
|
334
|
+
plotWidth = _this$asProps6.plotWidth,
|
|
335
|
+
plotHeight = _this$asProps6.plotHeight,
|
|
336
|
+
invertAxis = _this$asProps6.invertAxis;
|
|
301
337
|
var max = 0;
|
|
302
338
|
this.selectedData.forEach(function (value) {
|
|
303
339
|
max = max + value;
|
|
@@ -320,7 +356,8 @@ var CigaretteChartComponent = /*#__PURE__*/function (_AbstractChart) {
|
|
|
320
356
|
marginY: 0,
|
|
321
357
|
duration: 500,
|
|
322
358
|
plotWidth: !invertAxis && !props.plotWidth ? 44 : props.plotWidth,
|
|
323
|
-
plotHeight: invertAxis && !props.plotHeight ? 28 : props.plotHeight
|
|
359
|
+
plotHeight: invertAxis && !props.plotHeight ? 28 : props.plotHeight,
|
|
360
|
+
showPercentValueInTooltip: false
|
|
324
361
|
};
|
|
325
362
|
});
|
|
326
363
|
(0, _defineProperty2["default"])(CigaretteChartComponent, "enhance", [(0, _resolveColorEnhance["default"])(), (0, _uniqueID["default"])(), (0, _i18nEnhance["default"])(_intergalacticDynamicLocales.localizedMessages)]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CigaretteChart.js","names":["_core","require","_i18nEnhance","_interopRequireDefault","_resolveColorEnhance","_uniqueID","_divider","_flexBox","_typography","_d3Scale","_react","_","_AbstractChart2","_AnimatedClipPath","_intergalacticDynamicLocales","_utils","_Cigarette","wMin","CigaretteChartComponent","_AbstractChart","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","_inherits2","_createClass2","key","value","resolveColor","id","index","_this$props$colorMap$","_this$props$colorMap","props","colorMap","getDefaultDataDefinitions","dataDefinitions","_superPropGet2","map","dataDef","columns","slice","defaultLegendProps","legendType","w","get","invertAxis","asProps","valueScale","categoryScale","renderChart","_this2","_this$asProps","data","uid","duration","patterns","plotHeight","plotWidth","onClick","_this$state","state","highlightedLine","offset","createElement","Fragment","_toConsumableArray2","reverse","item","checked","interpolateValue","absWidth","Math","abs","max","domain","height","scaleToBand","bandwidth","width","y","x","r","dataKey","hide","color","direction","hovered","undefined","renderTooltip","_this3","_this$asProps2","showTotalInTooltip","showTooltip","tooltipTitle","tooltipViewType","HoverRect","Tooltip","hideHoverLine","tooltipProps","xIndex","yIndex","total","totalValue","find","dataDefItem","children","Flex","justifyContent","Dot","mr","label","Text","bold","tooltipValueFormatter","Title","style","opacity","mt","Box","renderHeader","_this$asProps$header","header","render","_ref","_ref3","SChart","_this$asProps3","styles","a11yAltTextConfig","_ref2","sstyled","cn","_objectSpread2","assignProps","Plot","xScale","yScale","dataHints","renderLegend","getLegendAriaLabel","getI18nText","chartType","result","Map","forEach","set","_this$asProps4","range","scaleBand","_this$asProps5","selectedData","scaleLinear","AbstractChart","_props$invertAxis","showXAxis","showYAxis","showLegend","marginX","marginY","resolveColorEnhance","uniqueIDEnhancement","i18nEnhance","localizedMessages","CigaretteChart","exports","createComponent"],"sources":["../../../../src/component/Chart/CigaretteChart.tsx"],"sourcesContent":["import { createComponent, Root, sstyled } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport Divider from '@semcore/divider';\nimport { Box, Flex } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { scaleBand, scaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport type { CigaretteChartData, CigaretteChartProps, CigaretteChartType } from './CigaretteChart.type';\n// @ts-ignore\nimport { HoverRect, Plot } from '../..';\nimport { AbstractChart } from './AbstractChart';\n// @ts-ignore\nimport AnimatedClipPath from '../../AnimatedClipPath';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport { interpolateValue, scaleToBand } from '../../utils';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport Cigarette from '../Cigarette/Cigarette';\n\nconst wMin = 2;\n\nclass CigaretteChartComponent extends AbstractChart<\n CigaretteChartData,\n CigaretteChartProps,\n typeof CigaretteChartComponent.enhance\n> {\n static displayName = 'Cigarette.Bar';\n\n static defaultProps: any = (props: CigaretteChartProps) => {\n const invertAxis = props.invertAxis ?? true;\n return {\n invertAxis: invertAxis,\n showXAxis: false,\n showYAxis: false,\n showTooltip: true,\n showLegend: false,\n marginX: 0,\n marginY: 0,\n duration: 500,\n plotWidth: !invertAxis && !props.plotWidth ? 44 : props.plotWidth,\n plotHeight: invertAxis && !props.plotHeight ? 28 : props.plotHeight,\n };\n };\n\n static enhance = [\n resolveColorEnhance(),\n uniqueIDEnhancement(),\n i18nEnhance(localizedMessages),\n ] as const;\n\n protected override plotPadding = 0;\n\n private offset = 0;\n\n protected override resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `blue-${5 - index}00`;\n }\n\n protected override getDefaultDataDefinitions(): Array<\n LegendItem & { columns: React.ReactNode[] }\n > {\n const dataDefinitions = super.getDefaultDataDefinitions();\n\n return dataDefinitions.map((dataDef) => {\n dataDef.columns = dataDef.columns.slice(1);\n return dataDef;\n });\n }\n\n protected override defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n w: 'fit-content',\n };\n }\n\n get xScale() {\n const { invertAxis } = this.asProps;\n\n return invertAxis ? this.valueScale : this.categoryScale;\n }\n\n get yScale() {\n const { invertAxis } = this.asProps;\n\n return invertAxis ? this.categoryScale : this.valueScale;\n }\n\n renderChart() {\n const { invertAxis, data, uid, duration, patterns, plotHeight, plotWidth, onClick } =\n this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n this.offset = 0;\n\n return (\n <>\n {(invertAxis ? dataDefinitions : [...dataDefinitions].reverse()).map((item, index) => {\n const value = data[item.id];\n\n if (!item.checked || value === interpolateValue || value === null) {\n return null;\n }\n\n const absWidth = Math.abs(\n this.valueScale(value) -\n Math.max(this.valueScale(this.valueScale.domain()[0]), this.valueScale(0)),\n );\n const height = scaleToBand(this.categoryScale).bandwidth() - 4;\n const width = value === 0 ? 0 : Math.max(absWidth, wMin * 2) - wMin;\n const y = 2;\n const x = index === 0 ? 0 : this.offset;\n const r = height < 28 ? 2 : 4;\n\n this.offset = this.offset + width + wMin;\n\n return (\n <Cigarette\n key={item.id}\n dataKey={item.id}\n index={index}\n y={invertAxis ? y : x}\n x={invertAxis ? x : y}\n width={invertAxis ? width : height}\n height={invertAxis ? height : width}\n uid={uid}\n hide={!item.checked}\n duration={duration}\n r={index === 0 || index === dataDefinitions.length - 1 ? r : 0}\n color={item.color}\n patterns={patterns}\n direction={invertAxis ? 'horizontal' : 'vertical'}\n onClick={onClick}\n hovered={\n highlightedLine === index ? true : highlightedLine === -1 ? undefined : false\n }\n />\n );\n })}\n\n <AnimatedClipPath\n aria-hidden\n duration={duration}\n id={uid}\n x='0'\n y='0'\n width={invertAxis ? 0 : plotWidth}\n height={invertAxis ? plotHeight : 0}\n />\n </>\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, showTotalInTooltip, showTooltip, invertAxis, tooltipTitle, tooltipViewType } =\n this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? '' : undefined}\n y={invertAxis ? undefined : ''}\n wMin={100}\n hideHoverLine={true}\n >\n {(tooltipProps: any) => {\n const dataKey = invertAxis ? tooltipProps.xIndex : tooltipProps.yIndex;\n const total = this.totalValue(data);\n\n if (tooltipViewType === 'single') {\n const item = dataDefinitions.find((dataDefItem) => dataDefItem.id === dataKey);\n\n if (!item) {\n return null;\n }\n\n return {\n children: (\n <Flex justifyContent='space-between' key={dataKey}>\n <HoverRect.Tooltip.Dot mr={4} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n <Text bold>{this.tooltipValueFormatter(data[dataKey])}</Text>\n </Flex>\n ),\n };\n }\n\n return {\n children: (\n <>\n {tooltipTitle && (\n <HoverRect.Tooltip.Title>Some tooltip title</HoverRect.Tooltip.Title>\n )}\n\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Flex\n justifyContent='space-between'\n key={item.id}\n style={{ opacity: item.id === dataKey ? 1 : 0.3 }}\n >\n <HoverRect.Tooltip.Dot mr={4} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n <Text bold>{this.tooltipValueFormatter(data[item.id])}</Text>\n </Flex>\n )\n );\n })}\n\n {showTotalInTooltip === true && (\n <Flex mt={2} justifyContent='space-between'>\n <Box mr={4}>Total</Box>\n <Text bold>{total}</Text>\n </Flex>\n )}\n </>\n ),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n renderHeader() {\n return this.asProps.header ?? null;\n }\n\n override render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, invertAxis, a11yAltTextConfig } =\n this.asProps;\n\n const header = this.renderHeader();\n\n if (invertAxis) {\n return sstyled(styles)(\n <SChart render={Flex} gap={6} direction='column' __excludeProps={['onClick', 'data']}>\n <Flex direction='column'>\n {header}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </Flex>\n {this.renderLegend()}\n </SChart>,\n );\n }\n\n return sstyled(styles)(\n <SChart render={Flex} gap={6} __excludeProps={['onClick', 'data']}>\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n <Flex direction='column' gap={2}>\n {header && (\n <>\n <Box>{header}</Box>\n <Divider />\n </>\n )}\n {this.renderLegend()}\n </Flex>\n </SChart>,\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Cigarette' });\n }\n\n private get selectedData() {\n const { data } = this.asProps;\n const { dataDefinitions } = this.state;\n\n const result = new Map<string, number>();\n\n dataDefinitions.forEach((dataDefItem) => {\n const value = data[dataDefItem.id];\n if (dataDefItem.checked && value !== interpolateValue) {\n result.set(dataDefItem.id, value);\n }\n });\n\n return result;\n }\n\n private get categoryScale() {\n const { plotWidth, plotHeight, invertAxis } = this.asProps;\n\n const range = invertAxis ? [plotHeight, 0] : [0, plotWidth];\n\n return scaleBand<{}>([0], range);\n }\n\n private get valueScale() {\n const { plotWidth, plotHeight, invertAxis } = this.asProps;\n\n let max = 0;\n\n this.selectedData.forEach((value) => {\n max = max + value;\n });\n\n return scaleLinear()\n .range(invertAxis ? [0, plotWidth] : [plotHeight, 0])\n .domain([0, max]);\n }\n}\n\nexport const CigaretteChart: CigaretteChartType = createComponent(CigaretteChartComponent);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"CigaretteChart.js","names":["_core","require","_i18nEnhance","_interopRequireDefault","_resolveColorEnhance","_uniqueID","_divider","_flexBox","_typography","_d3Scale","_react","_","_AbstractChart2","_AnimatedClipPath","_intergalacticDynamicLocales","_utils","_Cigarette","wMin","CigaretteChartComponent","_AbstractChart","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","_inherits2","_createClass2","key","value","resolveColor","id","index","_this$props$colorMap$","_this$props$colorMap","props","colorMap","getDefaultDataDefinitions","dataDefinitions","_superPropGet2","map","dataDef","columns","slice","defaultLegendProps","legendType","w","get","invertAxis","asProps","valueScale","categoryScale","renderChart","_this2","_this$asProps","data","uid","duration","patterns","plotHeight","plotWidth","onClick","_this$state","state","highlightedLine","offset","createElement","Fragment","_toConsumableArray2","reverse","item","checked","interpolateValue","absWidth","Math","abs","max","domain","height","scaleToBand","bandwidth","width","y","x","r","dataKey","hide","color","direction","hovered","undefined","renderTooltip","_ref","_this3","_this$asProps2","tooltipTitle","tooltipViewType","showPercentValueInTooltip","styles","showTooltip","STooltipChildrenWrapper","Box","HoverRect","Tooltip","hideHoverLine","tooltipProps","_ref4","xIndex","yIndex","showPercentColumn","totalValue","_ref3","find","dataDefItem","children","sstyled","cn","_objectSpread2","assignProps","Dot","mr","label","Text","percentValue","tooltipValueFormatter","Flex","Title","style","opacity","textAlign","bold","renderTooltipTotalLine","dataItem","_this$asProps3","showTotalInTooltip","total","mt","Number","isNaN","NOT_A_VALUE","renderHeader","_this$asProps$header","header","render","_ref2","_ref6","SChart","_this$asProps4","a11yAltTextConfig","_ref5","Plot","xScale","yScale","dataHints","renderLegend","getLegendAriaLabel","getI18nText","chartType","result","Map","forEach","set","_this$asProps5","range","scaleBand","_this$asProps6","selectedData","scaleLinear","AbstractChart","_props$invertAxis","showXAxis","showYAxis","showLegend","marginX","marginY","resolveColorEnhance","uniqueIDEnhancement","i18nEnhance","localizedMessages","CigaretteChart","exports","createComponent"],"sources":["../../../../src/component/Chart/CigaretteChart.tsx"],"sourcesContent":["import { createComponent, Root, sstyled } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport Divider from '@semcore/divider';\nimport { Flex, Box } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { scaleBand, scaleLinear } from 'd3-scale';\nimport React from 'react';\n\nimport type { CigaretteChartData, CigaretteChartProps, CigaretteChartType } from './CigaretteChart.type';\n// @ts-ignore\nimport { HoverRect, Plot } from '../..';\nimport { AbstractChart, NOT_A_VALUE } from './AbstractChart';\nimport type { ObjectData } from './AbstractChart.type';\n// @ts-ignore\nimport AnimatedClipPath from '../../AnimatedClipPath';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport { interpolateValue, scaleToBand } from '../../utils';\nimport type { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\nimport Cigarette from '../Cigarette/Cigarette';\n\nconst wMin = 2;\n\nclass CigaretteChartComponent extends AbstractChart<\n CigaretteChartData,\n CigaretteChartProps,\n typeof CigaretteChartComponent.enhance\n> {\n static displayName = 'Cigarette.Bar';\n\n static defaultProps: any = (props: CigaretteChartProps) => {\n const invertAxis = props.invertAxis ?? true;\n return {\n invertAxis: invertAxis,\n showXAxis: false,\n showYAxis: false,\n showTooltip: true,\n showLegend: false,\n marginX: 0,\n marginY: 0,\n duration: 500,\n plotWidth: !invertAxis && !props.plotWidth ? 44 : props.plotWidth,\n plotHeight: invertAxis && !props.plotHeight ? 28 : props.plotHeight,\n showPercentValueInTooltip: false,\n };\n };\n\n static enhance = [\n resolveColorEnhance(),\n uniqueIDEnhancement(),\n i18nEnhance(localizedMessages),\n ] as const;\n\n protected override plotPadding = 0;\n\n private offset = 0;\n\n protected override resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `blue-${5 - index}00`;\n }\n\n protected override getDefaultDataDefinitions(): Array<\n LegendItem & { columns: React.ReactNode[] }\n > {\n const dataDefinitions = super.getDefaultDataDefinitions();\n\n return dataDefinitions.map((dataDef) => {\n dataDef.columns = dataDef.columns.slice(1);\n return dataDef;\n });\n }\n\n protected override defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n w: 'fit-content',\n };\n }\n\n get xScale() {\n const { invertAxis } = this.asProps;\n\n return invertAxis ? this.valueScale : this.categoryScale;\n }\n\n get yScale() {\n const { invertAxis } = this.asProps;\n\n return invertAxis ? this.categoryScale : this.valueScale;\n }\n\n renderChart() {\n const { invertAxis, data, uid, duration, patterns, plotHeight, plotWidth, onClick } =\n this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n this.offset = 0;\n\n return (\n <>\n {(invertAxis ? dataDefinitions : [...dataDefinitions].reverse()).map((item, index) => {\n const value = data[item.id];\n\n if (!item.checked || value === interpolateValue || value === null) {\n return null;\n }\n\n const absWidth = Math.abs(\n this.valueScale(value) -\n Math.max(this.valueScale(this.valueScale.domain()[0]), this.valueScale(0)),\n );\n const height = scaleToBand(this.categoryScale).bandwidth() - 4;\n const width = value === 0 ? 0 : Math.max(absWidth, wMin * 2) - wMin;\n const y = 2;\n const x = index === 0 ? 0 : this.offset;\n const r = height < 28 ? 2 : 4;\n\n this.offset = this.offset + width + wMin;\n\n return (\n <Cigarette\n key={item.id}\n dataKey={item.id}\n index={index}\n y={invertAxis ? y : x}\n x={invertAxis ? x : y}\n width={invertAxis ? width : height}\n height={invertAxis ? height : width}\n uid={uid}\n hide={!item.checked}\n duration={duration}\n r={index === 0 || index === dataDefinitions.length - 1 ? r : 0}\n color={item.color}\n patterns={patterns}\n direction={invertAxis ? 'horizontal' : 'vertical'}\n onClick={onClick}\n hovered={\n highlightedLine === index ? true : highlightedLine === -1 ? undefined : false\n }\n />\n );\n })}\n\n <AnimatedClipPath\n aria-hidden\n duration={duration}\n id={uid}\n x='0'\n y='0'\n width={invertAxis ? 0 : plotWidth}\n height={invertAxis ? plotHeight : 0}\n />\n </>\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, invertAxis, tooltipTitle, tooltipViewType, showPercentValueInTooltip, styles, showTooltip } =\n this.asProps;\n const { dataDefinitions } = this.state;\n const STooltipChildrenWrapper = Root;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? '' : undefined}\n y={invertAxis ? undefined : ''}\n wMin={100}\n hideHoverLine={true}\n >\n {(tooltipProps: any) => {\n const dataKey = invertAxis ? tooltipProps.xIndex : tooltipProps.yIndex;\n const showPercentColumn = showPercentValueInTooltip && this.totalValue(data) !== 0;\n\n if (tooltipViewType === 'single') {\n const item = dataDefinitions.find((dataDefItem) => dataDefItem.id === dataKey);\n if (!item) {\n return null;\n }\n\n return {\n children: sstyled(styles)(\n <STooltipChildrenWrapper render={Box} columnsCount={showPercentColumn ? '3' : '2'} __excludeProps={['data']}>\n <HoverRect.Tooltip.Dot mr={2} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n { showPercentColumn && <Text textAlign='end' color='text-secondary'>{this.percentValue(data, item.id)}</Text> }\n <Text textAlign='end' bold>{this.tooltipValueFormatter(data[item.id])}</Text>\n </STooltipChildrenWrapper>,\n ),\n };\n }\n\n return {\n children: sstyled(styles)(\n <Flex direction='column'>\n {tooltipTitle && (\n <HoverRect.Tooltip.Title>Some tooltip title</HoverRect.Tooltip.Title>\n )}\n\n <STooltipChildrenWrapper render={Box} columnsCount={showPercentColumn ? '3' : '2'} __excludeProps={['data']}>\n {dataDefinitions.map((item) => {\n const style = { opacity: item.id === dataKey ? 1 : 0.3 };\n return (\n item.checked && (\n <React.Fragment key={item.id}>\n <HoverRect.Tooltip.Dot mr={2} color={item.color} style={style}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n { showPercentColumn && <Text textAlign='end' color='text-secondary' style={style}>{this.percentValue(data, item.id)}</Text> }\n <Text textAlign='end' bold style={style}>{this.tooltipValueFormatter(data[item.id])}</Text>\n </React.Fragment>\n )\n );\n })}\n\n {this.renderTooltipTotalLine(data)}\n </STooltipChildrenWrapper>\n </Flex>,\n ),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected override renderTooltipTotalLine<D extends ObjectData>(dataItem: D) {\n const { showTotalInTooltip, showPercentValueInTooltip } = this.asProps;\n\n if (!showTotalInTooltip) {\n return null;\n }\n\n const total = this.totalValue(dataItem);\n\n return (\n <>\n <Box mt={2} mr={2}>Total</Box>\n { showPercentValueInTooltip && total !== 0 && <Text mt={2} textAlign='end' color='text-secondary'>{Number.isNaN(total) ? NOT_A_VALUE : '100%'}</Text> }\n <Text mt={2} textAlign='end' bold>{Number.isNaN(total) ? NOT_A_VALUE : total}</Text>\n </>\n );\n }\n\n renderHeader() {\n return this.asProps.header ?? null;\n }\n\n override render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, invertAxis, a11yAltTextConfig } =\n this.asProps;\n\n const header = this.renderHeader();\n\n if (invertAxis) {\n return sstyled(styles)(\n <SChart render={Flex} gap={6} direction='column' __excludeProps={['onClick', 'data']}>\n <Flex direction='column'>\n {header}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </Flex>\n {this.renderLegend()}\n </SChart>,\n );\n }\n\n return sstyled(styles)(\n <SChart render={Flex} gap={6} __excludeProps={['onClick', 'data']}>\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n <Flex direction='column' gap={2}>\n {header && (\n <>\n <Box>{header}</Box>\n <Divider />\n </>\n )}\n {this.renderLegend()}\n </Flex>\n </SChart>,\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Cigarette' });\n }\n\n private get selectedData() {\n const { data } = this.asProps;\n const { dataDefinitions } = this.state;\n\n const result = new Map<string, number>();\n\n dataDefinitions.forEach((dataDefItem) => {\n const value = data[dataDefItem.id];\n if (dataDefItem.checked && value !== interpolateValue) {\n result.set(dataDefItem.id, value);\n }\n });\n\n return result;\n }\n\n private get categoryScale() {\n const { plotWidth, plotHeight, invertAxis } = this.asProps;\n\n const range = invertAxis ? [plotHeight, 0] : [0, plotWidth];\n\n return scaleBand<{}>([0], range);\n }\n\n private get valueScale() {\n const { plotWidth, plotHeight, invertAxis } = this.asProps;\n\n let max = 0;\n\n this.selectedData.forEach((value) => {\n max = max + value;\n });\n\n return scaleLinear()\n .range(invertAxis ? [0, plotWidth] : [plotHeight, 0])\n .domain([0, max]);\n }\n}\n\nexport const CigaretteChart: CigaretteChartType = createComponent(CigaretteChartComponent);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CigaretteChart.type.js","names":[],"sources":["../../../../src/component/Chart/CigaretteChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\nimport type { interpolateValue } from '../../utils';\n\ntype DataKey = string;\n\nexport type CigaretteChartData = Record<DataKey, number | typeof interpolateValue>;\n\nexport type CigaretteChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<CigaretteChartData>,\n 'xScale' | 'yScale'\n> & {\n /** Title text displayed in the tooltip */\n tooltipTitle?: string;\n /** Controls whether the tooltip shows all data or single item data */\n tooltipViewType?: 'all' | 'single';\n /** Header content for the chart */\n header?: React.ReactNode;\n /** Animation duration in milliseconds */\n duration?: number;\n /** Click handler that receives the data key and event */\n onClick?: (key: DataKey, event: React.SyntheticEvent) => void;\n};\n\nexport type CigaretteChartType = Intergalactic.Component<'div', CigaretteChartProps>;\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"CigaretteChart.type.js","names":[],"sources":["../../../../src/component/Chart/CigaretteChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\nimport type { interpolateValue } from '../../utils';\n\ntype DataKey = string;\n\nexport type CigaretteChartData = Record<DataKey, number | typeof interpolateValue>;\n\nexport type CigaretteChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<CigaretteChartData>,\n 'xScale' | 'yScale'\n> & {\n /** Title text displayed in the tooltip */\n tooltipTitle?: string;\n /** Controls whether the tooltip shows all data or single item data */\n tooltipViewType?: 'all' | 'single';\n /** Show percent value in tooltip */\n showPercentValueInTooltip?: boolean;\n /** Header content for the chart */\n header?: React.ReactNode;\n /** Animation duration in milliseconds */\n duration?: number;\n /** Click handler that receives the data key and event */\n onClick?: (key: DataKey, event: React.SyntheticEvent) => void;\n};\n\nexport type CigaretteChartType = Intergalactic.Component<'div', CigaretteChartProps>;\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompactHorizontalBarChart.type.js","names":[],"sources":["../../../../src/component/Chart/CompactHorizontalBarChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\ntype BarKey = string;\n\nexport type CompactHorizontalBarChartData = Array<Record<BarKey, number | string>>;\n\nexport type CompactHorizontalBarChartProps = BaseChartProps<CompactHorizontalBarChartData> & {\n /** Field name from data array for the x-axis values */\n x: string;\n /** Field name from data array for the y-axis values */\n y: string;\n /** Custom x-axis scale */\n xScale?: ScaleBand<any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n\n /** Handle click by `HoverRect`. `index` is an index of the data array. */\n onClickHoverRect?: (index: number, e: React.SyntheticEvent) => void;\n\n /** Handle click by Bar. */\n onClickBar?: (barItem: number, e: React.SyntheticEvent) => void;\n};\n\nexport type CompactHorizontalBarChartType = Intergalactic.Component<\n typeof Flex,\n CompactHorizontalBarChartProps\n>;\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"CompactHorizontalBarChart.type.js","names":[],"sources":["../../../../src/component/Chart/CompactHorizontalBarChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleBand, ScaleLinear, ScaleTime } from 'd3-scale';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\ntype BarKey = string;\n\nexport type CompactHorizontalBarChartData = Array<Record<BarKey, number | string>>;\n\nexport type CompactHorizontalBarChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<CompactHorizontalBarChartData>,\n 'showTotalInTooltip'\n> & {\n /** Field name from data array for the x-axis values */\n x: string;\n /** Field name from data array for the y-axis values */\n y: string;\n /** Custom x-axis scale */\n xScale?: ScaleBand<any> | ScaleTime<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n\n /** Handle click by `HoverRect`. `index` is an index of the data array. */\n onClickHoverRect?: (index: number, e: React.SyntheticEvent) => void;\n\n /** Handle click by Bar. */\n onClickBar?: (barItem: number, e: React.SyntheticEvent) => void;\n};\n\nexport type CompactHorizontalBarChartType = Intergalactic.Component<\n typeof Flex,\n CompactHorizontalBarChartProps\n>;\n"],"mappings":"","ignoreList":[]}
|
|
@@ -83,13 +83,8 @@ var DonutChartComponent = /*#__PURE__*/function (_AbstractChart) {
|
|
|
83
83
|
key: "renderTooltip",
|
|
84
84
|
value: function renderTooltip() {
|
|
85
85
|
var _this = this;
|
|
86
|
-
var
|
|
87
|
-
data = _this$asProps2.data,
|
|
88
|
-
showTooltip = _this$asProps2.showTooltip;
|
|
86
|
+
var data = this.asProps.data;
|
|
89
87
|
var dataDefinitions = this.state.dataDefinitions;
|
|
90
|
-
if (!showTooltip) {
|
|
91
|
-
return null;
|
|
92
|
-
}
|
|
93
88
|
return /*#__PURE__*/_react["default"].createElement(_.Donut.Tooltip, null, function (_ref) {
|
|
94
89
|
var dataKey = _ref.dataKey;
|
|
95
90
|
var title = dataDefinitions.find(function (item) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DonutChart.js","names":["_core","require","_i18nEnhance","_interopRequireDefault","_flexBox","_typography","_d3Scale","_react","_","_AbstractChart2","_intergalacticDynamicLocales","DonutChartComponent","_AbstractChart","_classCallCheck2","_callSuper2","arguments","_inherits2","_createClass2","key","get","xScale","asProps","scaleLinear","yScale","value","defaultLegendProps","legendType","renderChart","_this$asProps","innerRadius","halfsize","innerLabel","onClickPie","_this$state","state","dataDefinitions","highlightedLine","checkedLegendItems","filter","item","checked","createElement","Donut","onClick","length","EmptyData","map","index","Pie","id","dataKey","name","label","color","active","Label","renderTooltip","_this","
|
|
1
|
+
{"version":3,"file":"DonutChart.js","names":["_core","require","_i18nEnhance","_interopRequireDefault","_flexBox","_typography","_d3Scale","_react","_","_AbstractChart2","_intergalacticDynamicLocales","DonutChartComponent","_AbstractChart","_classCallCheck2","_callSuper2","arguments","_inherits2","_createClass2","key","get","xScale","asProps","scaleLinear","yScale","value","defaultLegendProps","legendType","renderChart","_this$asProps","innerRadius","halfsize","innerLabel","onClickPie","_this$state","state","dataDefinitions","highlightedLine","checkedLegendItems","filter","item","checked","createElement","Donut","onClick","length","EmptyData","map","index","Pie","id","dataKey","name","label","color","active","Label","renderTooltip","_this","data","Tooltip","_ref","title","find","children","Fragment","Title","Flex","justifyContent","Text","bold","tooltipValueFormatter","getLegendAriaLabel","getI18nText","chartType","AbstractChart","_defineProperty2","direction","alignItems","marginX","marginY","i18nEnhance","localizedMessages","DonutChart","exports","createComponent"],"sources":["../../../../src/component/Chart/DonutChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Flex } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { scaleLinear } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { Donut } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { DonutChartData, DonutChartProps, DonutChartType } from './DonutChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass DonutChartComponent extends AbstractChart<\n DonutChartData,\n DonutChartProps,\n typeof DonutChartComponent.enhance\n> {\n static displayName = 'Chart.Donut';\n static defaultProps: Partial<DonutChartProps> = {\n direction: 'row-reverse',\n alignItems: 'flex-start',\n innerRadius: 100,\n marginX: 0,\n marginY: 0,\n };\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const { xScale } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n return scaleLinear();\n }\n\n get yScale() {\n const { yScale } = this.asProps;\n\n if (yScale) {\n return yScale;\n }\n\n return scaleLinear();\n }\n\n defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n };\n }\n\n renderChart() {\n const { innerRadius, halfsize, innerLabel, onClickPie } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n const checkedLegendItems = dataDefinitions.filter((item) => item.checked);\n\n return (\n <Donut onClick={onClickPie} halfsize={halfsize} innerRadius={innerRadius}>\n {checkedLegendItems.length === 0 && <Donut.EmptyData />}\n {checkedLegendItems.map((item, index) => {\n return (\n <Donut.Pie\n key={item.id}\n dataKey={item.id}\n name={item.label}\n color={item.color}\n active={highlightedLine === index}\n />\n );\n })}\n {innerLabel && <Donut.Label>{innerLabel}</Donut.Label>}\n </Donut>\n );\n }\n\n renderTooltip() {\n const { data } = this.asProps;\n const { dataDefinitions } = this.state;\n\n return (\n <Donut.Tooltip>\n {({ dataKey }: any) => {\n const title = dataDefinitions.find((item) => item.id === dataKey);\n\n return {\n children: (\n <>\n <Donut.Tooltip.Title>{title?.label || dataKey}</Donut.Tooltip.Title>\n <Flex justifyContent='space-between'>\n <Text bold>{this.tooltipValueFormatter(data[dataKey])}</Text>\n </Flex>\n </>\n ),\n };\n }}\n </Donut.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Donut' });\n }\n}\n\nexport const DonutChart: DonutChartType = createComponent(DonutChartComponent);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DonutChart.type.js","names":[],"sources":["../../../../src/component/Chart/DonutChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleLinear } from 'd3-scale';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\nexport type DataKey = string;\n\nexport type DonutChartData = Record<DataKey, number>;\n\nexport type DonutChartProps = BaseChartProps<DonutChartData> & {\n /** Internal */\n groupKey?: never;\n /** Custom x-axis scale */\n xScale?: ScaleLinear<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n /** Controls the inner radius of the donut */\n innerRadius?: number;\n /** Creates a semi-donut chart when enabled */\n halfsize?: boolean;\n /** Content displayed in the center of the donut */\n innerLabel?: React.ReactNode;\n /** Callback triggered when a user clicks on a pie */\n onClickPie?: (key: DataKey, e: React.SyntheticEvent) => void;\n};\n\nexport type DonutChartType = Intergalactic.Component<typeof Flex, DonutChartProps>;\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"DonutChart.type.js","names":[],"sources":["../../../../src/component/Chart/DonutChart.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { Flex } from '@semcore/flex-box';\nimport type { ScaleLinear } from 'd3-scale';\nimport type React from 'react';\n\nimport type { BaseChartProps } from './AbstractChart.type';\n\nexport type DataKey = string;\n\nexport type DonutChartData = Record<DataKey, number>;\n\nexport type DonutChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<DonutChartData>,\n 'showTotalInTooltip'\n> & {\n /** Internal */\n groupKey?: never;\n /** Custom x-axis scale */\n xScale?: ScaleLinear<any, any>;\n /** Custom y-axis scale */\n yScale?: ScaleLinear<any, any>;\n /** Controls the inner radius of the donut */\n innerRadius?: number;\n /** Creates a semi-donut chart when enabled */\n halfsize?: boolean;\n /** Content displayed in the center of the donut */\n innerLabel?: React.ReactNode;\n /** Callback triggered when a user clicks on a pie */\n onClickPie?: (key: DataKey, e: React.SyntheticEvent) => void;\n};\n\nexport type DonutChartType = Intergalactic.Component<typeof Flex, DonutChartProps>;\n"],"mappings":"","ignoreList":[]}
|
|
@@ -15,8 +15,6 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
|
|
|
15
15
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
16
|
var _core = require("@semcore/core");
|
|
17
17
|
var _i18nEnhance = _interopRequireDefault(require("@semcore/core/lib/utils/enhances/i18nEnhance"));
|
|
18
|
-
var _flexBox = require("@semcore/flex-box");
|
|
19
|
-
var _typography = require("@semcore/typography");
|
|
20
18
|
var _d3Scale = require("d3-scale");
|
|
21
19
|
var _react = _interopRequireDefault(require("react"));
|
|
22
20
|
var _ = require("../..");
|
|
@@ -140,43 +138,21 @@ var HistogramChartComponent = /*#__PURE__*/function (_AbstractChart) {
|
|
|
140
138
|
var _this$asProps4 = this.asProps,
|
|
141
139
|
data = _this$asProps4.data,
|
|
142
140
|
groupKey = _this$asProps4.groupKey,
|
|
143
|
-
showTotalInTooltip = _this$asProps4.showTotalInTooltip,
|
|
144
|
-
showTooltip = _this$asProps4.showTooltip,
|
|
145
141
|
invertAxis = _this$asProps4.invertAxis;
|
|
146
|
-
var dataDefinitions = this.state.dataDefinitions;
|
|
147
|
-
if (!showTooltip) {
|
|
148
|
-
return null;
|
|
149
|
-
}
|
|
150
142
|
return /*#__PURE__*/_react["default"].createElement(_.HoverRect.Tooltip, {
|
|
151
143
|
x: invertAxis ? undefined : groupKey,
|
|
152
144
|
y: invertAxis ? groupKey : undefined,
|
|
153
145
|
wMin: 100
|
|
154
146
|
}, function (_ref) {
|
|
155
|
-
var _dataItem$groupKey;
|
|
156
147
|
var xIndex = _ref.xIndex,
|
|
157
148
|
yIndex = _ref.yIndex;
|
|
158
149
|
var index = invertAxis ? yIndex : xIndex;
|
|
159
150
|
var dataItem = data[index];
|
|
160
|
-
var total = _this.totalValue(dataItem);
|
|
161
151
|
return {
|
|
162
|
-
children:
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
}, /*#__PURE__*/_react["default"].createElement(_.HoverRect.Tooltip.Dot, {
|
|
167
|
-
mr: 4,
|
|
168
|
-
color: item.color
|
|
169
|
-
}, item.label), /*#__PURE__*/_react["default"].createElement(_typography.Text, {
|
|
170
|
-
bold: true
|
|
171
|
-
}, _this.tooltipValueFormatter(dataItem[item.id])));
|
|
172
|
-
}), showTotalInTooltip === true && /*#__PURE__*/_react["default"].createElement(_flexBox.Flex, {
|
|
173
|
-
mt: 2,
|
|
174
|
-
justifyContent: "space-between"
|
|
175
|
-
}, /*#__PURE__*/_react["default"].createElement(_flexBox.Box, {
|
|
176
|
-
mr: 4
|
|
177
|
-
}, "Total"), /*#__PURE__*/_react["default"].createElement(_typography.Text, {
|
|
178
|
-
bold: true
|
|
179
|
-
}, total)))
|
|
152
|
+
children: _this.getTooltipChildren({
|
|
153
|
+
Tooltip: _.HoverRect.Tooltip,
|
|
154
|
+
dataItem: dataItem
|
|
155
|
+
})
|
|
180
156
|
};
|
|
181
157
|
});
|
|
182
158
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HistogramChart.js","names":["_core","require","_i18nEnhance","_interopRequireDefault","_flexBox","_typography","_d3Scale","_react","_","_AbstractChart2","_intergalacticDynamicLocales","HistogramChartComponent","_AbstractChart","_classCallCheck2","_callSuper2","arguments","_inherits2","_createClass2","key","get","_this$asProps","asProps","xScale","_this$asProps$marginY","marginY","_this$asProps$marginX","marginX","plotWidth","plotHeight","invertAxis","data","groupKey","testItem","range","plotPadding","Date","Number","isNaN","getMilliseconds","domain","minMax","scaleTime","map","item","scaleBand","paddingInner","paddingOuter","_this$asProps2","yScale","_this$asProps2$margin","_this$asProps2$margin2","max","isStack","reduce","barSum","Object","values","sum","val","flatValues","_superPropGet2","Math","apply","_toConsumableArray2","scaleLinear","dataDefinitions","state","length","value","renderChart","_this$asProps3","_this$state","highlightedLine","createElement","StackBar","x","undefined","y","index","BarComponent","HorizontalBar","Bar","commonBarComponentProps","color","transparent","id","checked","_extends2","renderTooltip","_this","_this$asProps4","showTotalInTooltip","showTooltip","HoverRect","Tooltip","wMin","_ref","_dataItem$groupKey","xIndex","yIndex","dataItem","total","totalValue","children","Fragment","Title","toString","Flex","justifyContent","Dot","mr","label","Text","bold","tooltipValueFormatter","mt","Box","getLegendAriaLabel","getI18nText","chartType","AbstractChart","_defineProperty2","i18nEnhance","localizedMessages","HistogramChart","exports","createComponent"],"sources":["../../../../src/component/Chart/HistogramChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Box, Flex } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport { scaleBand, scaleLinear, type ScaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { Bar, minMax, HoverRect, StackBar, type BarProps } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { HistogramChartData, HistogramChartProps, HistogramChartType } from './HistogramChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass HistogramChartComponent extends AbstractChart<\n HistogramChartData,\n HistogramChartProps,\n typeof HistogramChartComponent.enhance\n> {\n static displayName = 'Chart.Histogram';\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const {\n xScale,\n marginY = 30,\n marginX = 30,\n plotWidth,\n plotHeight,\n invertAxis,\n data,\n groupKey,\n } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n const testItem = data[0][groupKey];\n const range = invertAxis\n ? [plotHeight - marginX, this.plotPadding]\n : [marginY, plotWidth - this.plotPadding];\n\n if (testItem instanceof Date && !Number.isNaN(testItem.getMilliseconds())) {\n const domain = minMax(data, groupKey);\n\n return scaleTime(domain, range);\n }\n\n const domain = data.map((item) => item[groupKey]);\n\n return scaleBand(domain, range).paddingInner(0.05).paddingOuter(0.2);\n }\n\n get yScale(): ScaleLinear<any, any> {\n const {\n yScale,\n marginY = 30,\n marginX = 30,\n plotHeight,\n plotWidth,\n invertAxis,\n data,\n } = this.asProps;\n\n let max: number;\n\n if (this.isStack) {\n max = data.reduce((max, item) => {\n const barSum = Object.values(item).reduce<number>((sum, val) => {\n if (val instanceof Date && !Number.isNaN(val.getMilliseconds())) {\n return sum + val.getMilliseconds();\n }\n\n return sum + (val as number);\n }, 0);\n\n if (barSum > max) {\n max = barSum;\n }\n\n return max;\n }, 0);\n } else {\n const flatValues = super.flatValues;\n\n max = Math.max(...flatValues);\n }\n\n return (\n yScale ??\n scaleLinear()\n .range(\n invertAxis\n ? [marginY, plotWidth - this.plotPadding]\n : [plotHeight - marginX, this.plotPadding],\n )\n .domain([0, max])\n );\n }\n\n get isStack(): boolean {\n const { dataDefinitions } = this.state;\n\n return dataDefinitions.length > 1;\n }\n\n renderChart() {\n const { groupKey, invertAxis } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n if (this.isStack) {\n return (\n <StackBar x={invertAxis ? undefined : groupKey} y={invertAxis ? groupKey : undefined}>\n {dataDefinitions.map((item, index) => {\n const BarComponent = invertAxis ? StackBar.HorizontalBar : StackBar.Bar;\n\n const commonBarComponentProps: BarProps = {\n color: item.color,\n transparent: highlightedLine !== -1 && highlightedLine !== index,\n };\n\n if (invertAxis) {\n commonBarComponentProps.x = item.id;\n } else {\n commonBarComponentProps.y = item.id;\n }\n\n return item.checked && <BarComponent key={item.id} {...commonBarComponentProps} />;\n })}\n </StackBar>\n );\n }\n\n const item = dataDefinitions[0];\n\n return (\n item.checked && (\n <Bar\n x={invertAxis ? item.id : groupKey}\n y={invertAxis ? groupKey : item.id}\n key={item.id}\n color={item.color}\n />\n )\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, groupKey, showTotalInTooltip, showTooltip, invertAxis } = this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? undefined : groupKey}\n y={invertAxis ? groupKey : undefined}\n wMin={100}\n >\n {({ xIndex, yIndex }: any) => {\n const index = invertAxis ? yIndex : xIndex;\n const dataItem = data[index];\n const total = this.totalValue(dataItem);\n\n return {\n children: (\n <>\n <HoverRect.Tooltip.Title>{dataItem[groupKey]?.toString()}</HoverRect.Tooltip.Title>\n\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Flex justifyContent='space-between' key={item.id}>\n <HoverRect.Tooltip.Dot mr={4} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n <Text bold>{this.tooltipValueFormatter(dataItem[item.id])}</Text>\n </Flex>\n )\n );\n })}\n\n {showTotalInTooltip === true && (\n <Flex mt={2} justifyContent='space-between'>\n <Box mr={4}>Total</Box>\n <Text bold>{total}</Text>\n </Flex>\n )}\n </>\n ),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Histogram' });\n }\n}\n\nexport const HistogramChart: HistogramChartType = createComponent(HistogramChartComponent);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"HistogramChart.js","names":["_core","require","_i18nEnhance","_interopRequireDefault","_d3Scale","_react","_","_AbstractChart2","_intergalacticDynamicLocales","HistogramChartComponent","_AbstractChart","_classCallCheck2","_callSuper2","arguments","_inherits2","_createClass2","key","get","_this$asProps","asProps","xScale","_this$asProps$marginY","marginY","_this$asProps$marginX","marginX","plotWidth","plotHeight","invertAxis","data","groupKey","testItem","range","plotPadding","Date","Number","isNaN","getMilliseconds","domain","minMax","scaleTime","map","item","scaleBand","paddingInner","paddingOuter","_this$asProps2","yScale","_this$asProps2$margin","_this$asProps2$margin2","max","isStack","reduce","barSum","Object","values","sum","val","flatValues","_superPropGet2","Math","apply","_toConsumableArray2","scaleLinear","dataDefinitions","state","length","value","renderChart","_this$asProps3","_this$state","highlightedLine","createElement","StackBar","x","undefined","y","index","BarComponent","HorizontalBar","Bar","commonBarComponentProps","color","transparent","id","checked","_extends2","renderTooltip","_this","_this$asProps4","HoverRect","Tooltip","wMin","_ref","xIndex","yIndex","dataItem","children","getTooltipChildren","getLegendAriaLabel","getI18nText","chartType","AbstractChart","_defineProperty2","i18nEnhance","localizedMessages","HistogramChart","exports","createComponent"],"sources":["../../../../src/component/Chart/HistogramChart.tsx"],"sourcesContent":["import { createComponent } from '@semcore/core';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { scaleBand, scaleLinear, type ScaleLinear, scaleTime } from 'd3-scale';\nimport React from 'react';\n\n// @ts-ignore\nimport { Bar, minMax, HoverRect, StackBar, type BarProps } from '../..';\nimport { AbstractChart } from './AbstractChart';\nimport type { HistogramChartData, HistogramChartProps, HistogramChartType } from './HistogramChart.type';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nclass HistogramChartComponent extends AbstractChart<\n HistogramChartData,\n HistogramChartProps,\n typeof HistogramChartComponent.enhance\n> {\n static displayName = 'Chart.Histogram';\n\n static enhance = [i18nEnhance(localizedMessages)] as const;\n\n get xScale() {\n const {\n xScale,\n marginY = 30,\n marginX = 30,\n plotWidth,\n plotHeight,\n invertAxis,\n data,\n groupKey,\n } = this.asProps;\n\n if (xScale) {\n return xScale;\n }\n\n const testItem = data[0][groupKey];\n const range = invertAxis\n ? [plotHeight - marginX, this.plotPadding]\n : [marginY, plotWidth - this.plotPadding];\n\n if (testItem instanceof Date && !Number.isNaN(testItem.getMilliseconds())) {\n const domain = minMax(data, groupKey);\n\n return scaleTime(domain, range);\n }\n\n const domain = data.map((item) => item[groupKey]);\n\n return scaleBand(domain, range).paddingInner(0.05).paddingOuter(0.2);\n }\n\n get yScale(): ScaleLinear<any, any> {\n const {\n yScale,\n marginY = 30,\n marginX = 30,\n plotHeight,\n plotWidth,\n invertAxis,\n data,\n } = this.asProps;\n\n let max: number;\n\n if (this.isStack) {\n max = data.reduce((max, item) => {\n const barSum = Object.values(item).reduce<number>((sum, val) => {\n if (val instanceof Date && !Number.isNaN(val.getMilliseconds())) {\n return sum + val.getMilliseconds();\n }\n\n return sum + (val as number);\n }, 0);\n\n if (barSum > max) {\n max = barSum;\n }\n\n return max;\n }, 0);\n } else {\n const flatValues = super.flatValues;\n\n max = Math.max(...flatValues);\n }\n\n return (\n yScale ??\n scaleLinear()\n .range(\n invertAxis\n ? [marginY, plotWidth - this.plotPadding]\n : [plotHeight - marginX, this.plotPadding],\n )\n .domain([0, max])\n );\n }\n\n get isStack(): boolean {\n const { dataDefinitions } = this.state;\n\n return dataDefinitions.length > 1;\n }\n\n renderChart() {\n const { groupKey, invertAxis } = this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n if (this.isStack) {\n return (\n <StackBar x={invertAxis ? undefined : groupKey} y={invertAxis ? groupKey : undefined}>\n {dataDefinitions.map((item, index) => {\n const BarComponent = invertAxis ? StackBar.HorizontalBar : StackBar.Bar;\n\n const commonBarComponentProps: BarProps = {\n color: item.color,\n transparent: highlightedLine !== -1 && highlightedLine !== index,\n };\n\n if (invertAxis) {\n commonBarComponentProps.x = item.id;\n } else {\n commonBarComponentProps.y = item.id;\n }\n\n return item.checked && <BarComponent key={item.id} {...commonBarComponentProps} />;\n })}\n </StackBar>\n );\n }\n\n const item = dataDefinitions[0];\n\n return (\n item.checked && (\n <Bar\n x={invertAxis ? item.id : groupKey}\n y={invertAxis ? groupKey : item.id}\n key={item.id}\n color={item.color}\n />\n )\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, groupKey, invertAxis } = this.asProps;\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? undefined : groupKey}\n y={invertAxis ? groupKey : undefined}\n wMin={100}\n >\n {({ xIndex, yIndex }: any) => {\n const index = invertAxis ? yIndex : xIndex;\n const dataItem = data[index];\n\n return {\n children: this.getTooltipChildren({\n Tooltip: HoverRect.Tooltip,\n dataItem,\n }),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n protected getLegendAriaLabel(): string {\n return this.asProps.getI18nText('legendForChart', { chartType: 'Histogram' });\n }\n}\n\nexport const HistogramChart: HistogramChartType = createComponent(HistogramChartComponent);\n"],"mappings":"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","ignoreList":[]}
|