@fluentui/react-charting 5.16.29 → 5.16.31
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.json +37 -1
- package/CHANGELOG.md +21 -2
- package/dist/react-charting.js +1 -1
- package/dist/react-charting.min.js +1 -1
- package/lib/HorizontalBarChartWithAxis.d.ts +1 -0
- package/lib/HorizontalBarChartWithAxis.js +2 -0
- package/lib/HorizontalBarChartWithAxis.js.map +1 -0
- package/lib/components/CommonComponents/CartesianChart.base.d.ts +2 -0
- package/lib/components/CommonComponents/CartesianChart.base.js +72 -12
- package/lib/components/CommonComponents/CartesianChart.base.js.map +1 -1
- package/lib/components/CommonComponents/CartesianChart.types.d.ts +13 -0
- package/lib/components/CommonComponents/CartesianChart.types.js.map +1 -1
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.d.ts +57 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js +487 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js.map +1 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.d.ts +3 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.js +6 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.js.map +1 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.d.ts +2 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.js +12 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.js.map +1 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.d.ts +100 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.js +2 -0
- package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.js.map +1 -0
- package/lib/components/HorizontalBarChartWithAxis/index.d.ts +2 -0
- package/lib/components/HorizontalBarChartWithAxis/index.js +3 -0
- package/lib/components/HorizontalBarChartWithAxis/index.js.map +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/types/IDataPoint.d.ts +38 -0
- package/lib/types/IDataPoint.js.map +1 -1
- package/lib/utilities/utilities.d.ts +53 -8
- package/lib/utilities/utilities.js +170 -7
- package/lib/utilities/utilities.js.map +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/lib-amd/HorizontalBarChartWithAxis.d.ts +1 -0
- package/lib-amd/HorizontalBarChartWithAxis.js +6 -0
- package/lib-amd/HorizontalBarChartWithAxis.js.map +1 -0
- package/lib-amd/components/CommonComponents/CartesianChart.base.d.ts +2 -0
- package/lib-amd/components/CommonComponents/CartesianChart.base.js +71 -11
- package/lib-amd/components/CommonComponents/CartesianChart.base.js.map +1 -1
- package/lib-amd/components/CommonComponents/CartesianChart.types.d.ts +13 -0
- package/lib-amd/components/CommonComponents/CartesianChart.types.js.map +1 -1
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.d.ts +57 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js +482 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js.map +1 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.d.ts +3 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.js +8 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.js.map +1 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.d.ts +2 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.js +17 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.js.map +1 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.d.ts +100 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.js +5 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.js.map +1 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/index.d.ts +2 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/index.js +7 -0
- package/lib-amd/components/HorizontalBarChartWithAxis/index.js.map +1 -0
- package/lib-amd/index.d.ts +1 -0
- package/lib-amd/index.js +2 -1
- package/lib-amd/index.js.map +1 -1
- package/lib-amd/types/IDataPoint.d.ts +38 -0
- package/lib-amd/types/IDataPoint.js.map +1 -1
- package/lib-amd/utilities/utilities.d.ts +53 -8
- package/lib-amd/utilities/utilities.js +181 -10
- package/lib-amd/utilities/utilities.js.map +1 -1
- package/lib-amd/version.js +1 -1
- package/lib-amd/version.js.map +1 -1
- package/lib-commonjs/HorizontalBarChartWithAxis.d.ts +1 -0
- package/lib-commonjs/HorizontalBarChartWithAxis.js +5 -0
- package/lib-commonjs/HorizontalBarChartWithAxis.js.map +1 -0
- package/lib-commonjs/components/CommonComponents/CartesianChart.base.d.ts +2 -0
- package/lib-commonjs/components/CommonComponents/CartesianChart.base.js +71 -11
- package/lib-commonjs/components/CommonComponents/CartesianChart.base.js.map +1 -1
- package/lib-commonjs/components/CommonComponents/CartesianChart.types.d.ts +13 -0
- package/lib-commonjs/components/CommonComponents/CartesianChart.types.js.map +1 -1
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.d.ts +57 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js +490 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js.map +1 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.d.ts +3 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.js +9 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.js.map +1 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.d.ts +2 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.js +16 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.js.map +1 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.d.ts +100 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.js +3 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.js.map +1 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/index.d.ts +2 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/index.js +6 -0
- package/lib-commonjs/components/HorizontalBarChartWithAxis/index.js.map +1 -0
- package/lib-commonjs/index.d.ts +1 -0
- package/lib-commonjs/index.js +1 -0
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/types/IDataPoint.d.ts +38 -0
- package/lib-commonjs/types/IDataPoint.js.map +1 -1
- package/lib-commonjs/utilities/utilities.d.ts +53 -8
- package/lib-commonjs/utilities/utilities.js +181 -10
- package/lib-commonjs/utilities/utilities.js.map +1 -1
- package/lib-commonjs/version.js +1 -1
- package/lib-commonjs/version.js.map +1 -1
- package/package.json +6 -5
- package/src/components/CommonComponents/CartesianChart.types.ts +16 -0
- package/src/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.ts +125 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.wrapTextInsideDonut = exports.rotateXAxisLabels = exports.convertToLocaleString = exports.getAccessibleDataObject = exports.pointTypes = exports.CustomPoints = exports.Points = exports.getTypeOfAxis = exports.getMinMaxOfYAxis = exports.findVerticalNumericMinMaxOfY = exports.findVSBCNumericMinMaxOfY = exports.findNumericMinMaxOfY = exports.getDomainNRangeValues = exports.domainRageOfVerticalNumeric = exports.domainRangeOfVSBCNumeric = exports.domainRangeOfXStringAxis = exports.domainRangeOfNumericForAreaChart = exports.domainRangeOfDateForAreaChart = exports.getXAxisType = exports.tooltipOfXAxislabels = exports.createWrapOfXLabels = exports.silceOrAppendToArray = exports.getUnique = exports.calloutData = exports.createStringYAxis = exports.createYAxis = exports.prepareDatapoints = exports.createStringXAxis = exports.createDateXAxis = exports.createNumericXAxis = exports.YAxisType = exports.XAxisTypes = exports.ChartTypes = void 0;
|
|
4
|
+
exports.wrapTextInsideDonut = exports.rotateXAxisLabels = exports.convertToLocaleString = exports.getAccessibleDataObject = exports.pointTypes = exports.CustomPoints = exports.Points = exports.getTypeOfAxis = exports.getMinMaxOfYAxis = exports.findHBCWANumericMinMaxOfY = exports.findVerticalNumericMinMaxOfY = exports.findVSBCNumericMinMaxOfY = exports.findNumericMinMaxOfY = exports.getDomainNRangeValues = exports.domainRageOfVerticalNumeric = exports.domainRangeOfVSBCNumeric = exports.domainRangeOfXStringAxis = exports.domainRangeOfNumericForHorizontalBarChartWithAxis = exports.domainRangeOfNumericForAreaChart = exports.domainRangeOfDateForAreaChart = exports.getXAxisType = exports.tooltipOfXAxislabels = exports.calculateLongestYAxisLabel = exports.createYAxisLabels = exports.createWrapOfXLabels = exports.silceOrAppendToArray = exports.getUnique = exports.calloutData = exports.createStringYAxisForOtherCharts = exports.createStringYAxisForHorizontalBarChartWithAxis = exports.createStringYAxis = exports.createYAxisForOtherCharts = exports.createYAxisForHorizontalBarChartWithAxis = exports.createYAxis = exports.prepareDatapoints = exports.createStringXAxis = exports.createDateXAxis = exports.createNumericXAxis = exports.YAxisType = exports.XAxisTypes = exports.ChartTypes = void 0;
|
|
5
5
|
var tslib_1 = require("tslib");
|
|
6
6
|
var d3_axis_1 = require("d3-axis");
|
|
7
7
|
var d3_array_1 = require("d3-array");
|
|
@@ -18,6 +18,7 @@ var ChartTypes;
|
|
|
18
18
|
ChartTypes[ChartTypes["VerticalStackedBarChart"] = 3] = "VerticalStackedBarChart";
|
|
19
19
|
ChartTypes[ChartTypes["GroupedVerticalBarChart"] = 4] = "GroupedVerticalBarChart";
|
|
20
20
|
ChartTypes[ChartTypes["HeatMapChart"] = 5] = "HeatMapChart";
|
|
21
|
+
ChartTypes[ChartTypes["HorizontalBarChartWithAxis"] = 6] = "HorizontalBarChartWithAxis";
|
|
21
22
|
})(ChartTypes = exports.ChartTypes || (exports.ChartTypes = {}));
|
|
22
23
|
var XAxisTypes;
|
|
23
24
|
(function (XAxisTypes) {
|
|
@@ -36,7 +37,7 @@ var YAxisType;
|
|
|
36
37
|
* @export
|
|
37
38
|
* @param {IXAxisParams} xAxisParams
|
|
38
39
|
*/
|
|
39
|
-
function createNumericXAxis(xAxisParams, culture) {
|
|
40
|
+
function createNumericXAxis(xAxisParams, chartType, culture) {
|
|
40
41
|
var domainNRangeValues = xAxisParams.domainNRangeValues, _a = xAxisParams.showRoundOffXTickValues, showRoundOffXTickValues = _a === void 0 ? false : _a, _b = xAxisParams.xAxistickSize, xAxistickSize = _b === void 0 ? 6 : _b, _c = xAxisParams.tickPadding, tickPadding = _c === void 0 ? 10 : _c, _d = xAxisParams.xAxisCount, xAxisCount = _d === void 0 ? 6 : _d, xAxisElement = xAxisParams.xAxisElement;
|
|
41
42
|
var xAxisScale = d3_scale_1.scaleLinear()
|
|
42
43
|
.domain([domainNRangeValues.dStartValue, domainNRangeValues.dEndValue])
|
|
@@ -46,11 +47,13 @@ function createNumericXAxis(xAxisParams, culture) {
|
|
|
46
47
|
.tickSize(xAxistickSize)
|
|
47
48
|
.tickPadding(tickPadding)
|
|
48
49
|
.ticks(xAxisCount)
|
|
49
|
-
.tickSizeOuter(0)
|
|
50
50
|
.tickFormat(function (domainValue, index) {
|
|
51
51
|
var xAxisValue = typeof domainValue === 'number' ? domainValue : domainValue.valueOf();
|
|
52
52
|
return exports.convertToLocaleString(xAxisValue, culture);
|
|
53
53
|
});
|
|
54
|
+
if (chartType === ChartTypes.HorizontalBarChartWithAxis) {
|
|
55
|
+
xAxis.tickSizeInner(-(xAxisParams.containerHeight - xAxisParams.margins.top));
|
|
56
|
+
}
|
|
54
57
|
if (xAxisElement) {
|
|
55
58
|
d3_selection_1.select(xAxisElement).call(xAxis).selectAll('text').attr('aria-hidden', 'true');
|
|
56
59
|
}
|
|
@@ -172,7 +175,32 @@ exports.prepareDatapoints = prepareDatapoints;
|
|
|
172
175
|
* @param {IYAxisParams} yAxisParams
|
|
173
176
|
* @param {boolean} isRtl
|
|
174
177
|
*/
|
|
175
|
-
function createYAxis(yAxisParams, isRtl, axisData) {
|
|
178
|
+
function createYAxis(yAxisParams, isRtl, axisData, chartType, barWidth) {
|
|
179
|
+
switch (chartType) {
|
|
180
|
+
case ChartTypes.HorizontalBarChartWithAxis:
|
|
181
|
+
return createYAxisForHorizontalBarChartWithAxis(yAxisParams, isRtl, axisData, barWidth);
|
|
182
|
+
default:
|
|
183
|
+
return createYAxisForOtherCharts(yAxisParams, isRtl, axisData);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
exports.createYAxis = createYAxis;
|
|
187
|
+
function createYAxisForHorizontalBarChartWithAxis(yAxisParams, isRtl, axisData, barWidth) {
|
|
188
|
+
var _a = yAxisParams.yMinMaxValues, yMinMaxValues = _a === void 0 ? { startValue: 0, endValue: 0 } : _a, _b = yAxisParams.yAxisElement, yAxisElement = _b === void 0 ? null : _b, _c = yAxisParams.yMaxValue, yMaxValue = _c === void 0 ? 0 : _c, _d = yAxisParams.yMinValue, yMinValue = _d === void 0 ? 0 : _d, containerHeight = yAxisParams.containerHeight, margins = yAxisParams.margins, _e = yAxisParams.tickPadding, tickPadding = _e === void 0 ? 12 : _e, _f = yAxisParams.maxOfYVal, maxOfYVal = _f === void 0 ? 0 : _f, yAxisTickFormat = yAxisParams.yAxisTickFormat, _g = yAxisParams.yAxisTickCount, yAxisTickCount = _g === void 0 ? 4 : _g;
|
|
189
|
+
// maxOfYVal coming from only area chart and Grouped vertical bar chart(Calculation done at base file)
|
|
190
|
+
var tempVal = maxOfYVal || yMinMaxValues.endValue;
|
|
191
|
+
var finalYmax = tempVal > yMaxValue ? tempVal : yMaxValue;
|
|
192
|
+
var finalYmin = yMinMaxValues.startValue < yMinValue ? 0 : yMinValue;
|
|
193
|
+
var yAxisScale = d3_scale_1.scaleLinear()
|
|
194
|
+
.domain([finalYmin, finalYmax])
|
|
195
|
+
.range([containerHeight - margins.bottom, margins.top]);
|
|
196
|
+
var axis = isRtl ? d3_axis_1.axisRight(yAxisScale) : d3_axis_1.axisLeft(yAxisScale);
|
|
197
|
+
var yAxis = axis.tickPadding(tickPadding).ticks(yAxisTickCount);
|
|
198
|
+
yAxisTickFormat ? yAxis.tickFormat(yAxisTickFormat) : yAxis.tickFormat(d3_format_1.format('.2~s'));
|
|
199
|
+
yAxisElement ? d3_selection_1.select(yAxisElement).call(yAxis).selectAll('text').attr('aria-hidden', 'true') : '';
|
|
200
|
+
return yAxisScale;
|
|
201
|
+
}
|
|
202
|
+
exports.createYAxisForHorizontalBarChartWithAxis = createYAxisForHorizontalBarChartWithAxis;
|
|
203
|
+
function createYAxisForOtherCharts(yAxisParams, isRtl, axisData) {
|
|
176
204
|
var _a = yAxisParams.yMinMaxValues, yMinMaxValues = _a === void 0 ? { startValue: 0, endValue: 0 } : _a, _b = yAxisParams.yAxisElement, yAxisElement = _b === void 0 ? null : _b, _c = yAxisParams.yMaxValue, yMaxValue = _c === void 0 ? 0 : _c, _d = yAxisParams.yMinValue, yMinValue = _d === void 0 ? 0 : _d, containerHeight = yAxisParams.containerHeight, containerWidth = yAxisParams.containerWidth, margins = yAxisParams.margins, _e = yAxisParams.tickPadding, tickPadding = _e === void 0 ? 12 : _e, _f = yAxisParams.maxOfYVal, maxOfYVal = _f === void 0 ? 0 : _f, yAxisTickFormat = yAxisParams.yAxisTickFormat, _g = yAxisParams.yAxisTickCount, yAxisTickCount = _g === void 0 ? 4 : _g, eventAnnotationProps = yAxisParams.eventAnnotationProps, eventLabelHeight = yAxisParams.eventLabelHeight;
|
|
177
205
|
// maxOfYVal coming from only area chart and Grouped vertical bar chart(Calculation done at base file)
|
|
178
206
|
var tempVal = maxOfYVal || yMinMaxValues.endValue;
|
|
@@ -192,14 +220,43 @@ function createYAxis(yAxisParams, isRtl, axisData) {
|
|
|
192
220
|
axisData.yAxisDomainValues = domainValues;
|
|
193
221
|
return yAxisScale;
|
|
194
222
|
}
|
|
195
|
-
exports.
|
|
223
|
+
exports.createYAxisForOtherCharts = createYAxisForOtherCharts;
|
|
224
|
+
var createStringYAxis = function (yAxisParams, dataPoints, isRtl, chartType, barWidth, culture) {
|
|
225
|
+
switch (chartType) {
|
|
226
|
+
case ChartTypes.HorizontalBarChartWithAxis:
|
|
227
|
+
return exports.createStringYAxisForHorizontalBarChartWithAxis(yAxisParams, dataPoints, isRtl, barWidth, culture);
|
|
228
|
+
default:
|
|
229
|
+
return exports.createStringYAxisForOtherCharts(yAxisParams, dataPoints, isRtl);
|
|
230
|
+
}
|
|
231
|
+
};
|
|
232
|
+
exports.createStringYAxis = createStringYAxis;
|
|
233
|
+
/**
|
|
234
|
+
* Creating String Y axis of the chart for Horizontal Bar Chart With Axis
|
|
235
|
+
* @param yAxisParams
|
|
236
|
+
* @param dataPoints
|
|
237
|
+
* @param isRtl
|
|
238
|
+
*/
|
|
239
|
+
var createStringYAxisForHorizontalBarChartWithAxis = function (yAxisParams, dataPoints, isRtl, barWidth, culture) {
|
|
240
|
+
var containerHeight = yAxisParams.containerHeight, _a = yAxisParams.tickPadding, tickPadding = _a === void 0 ? 12 : _a, margins = yAxisParams.margins, yAxisTickFormat = yAxisParams.yAxisTickFormat, yAxisElement = yAxisParams.yAxisElement;
|
|
241
|
+
var yAxisScale = d3_scale_1.scaleBand()
|
|
242
|
+
.domain(dataPoints)
|
|
243
|
+
.range([containerHeight - margins.bottom - barWidth / 2, margins.top + barWidth / 2]);
|
|
244
|
+
var axis = isRtl ? d3_axis_1.axisRight(yAxisScale) : d3_axis_1.axisLeft(yAxisScale);
|
|
245
|
+
var yAxis = axis.tickPadding(tickPadding).ticks(dataPoints);
|
|
246
|
+
if (yAxisTickFormat) {
|
|
247
|
+
yAxis.tickFormat(yAxisTickFormat);
|
|
248
|
+
}
|
|
249
|
+
yAxisElement ? d3_selection_1.select(yAxisElement).call(yAxis).selectAll('text') : '';
|
|
250
|
+
return yAxisScale;
|
|
251
|
+
};
|
|
252
|
+
exports.createStringYAxisForHorizontalBarChartWithAxis = createStringYAxisForHorizontalBarChartWithAxis;
|
|
196
253
|
/**
|
|
197
|
-
* Creating String Y axis of the chart
|
|
254
|
+
* Creating String Y axis of the chart for other chart except Horizontal Bar Chart With Axis
|
|
198
255
|
* @param yAxisParams
|
|
199
256
|
* @param dataPoints
|
|
200
257
|
* @param isRtl
|
|
201
258
|
*/
|
|
202
|
-
var
|
|
259
|
+
var createStringYAxisForOtherCharts = function (yAxisParams, dataPoints, isRtl) {
|
|
203
260
|
var containerHeight = yAxisParams.containerHeight, _a = yAxisParams.tickPadding, tickPadding = _a === void 0 ? 12 : _a, margins = yAxisParams.margins, yAxisTickFormat = yAxisParams.yAxisTickFormat, yAxisElement = yAxisParams.yAxisElement, _b = yAxisParams.yAxisPadding, yAxisPadding = _b === void 0 ? 0 : _b;
|
|
204
261
|
var yAxisScale = d3_scale_1.scaleBand()
|
|
205
262
|
.domain(dataPoints)
|
|
@@ -213,7 +270,7 @@ var createStringYAxis = function (yAxisParams, dataPoints, isRtl) {
|
|
|
213
270
|
yAxisElement ? d3_selection_1.select(yAxisElement).call(yAxis).selectAll('text') : '';
|
|
214
271
|
return yAxisScale;
|
|
215
272
|
};
|
|
216
|
-
exports.
|
|
273
|
+
exports.createStringYAxisForOtherCharts = createStringYAxisForOtherCharts;
|
|
217
274
|
function calloutData(values) {
|
|
218
275
|
var combinedResult = [];
|
|
219
276
|
values.forEach(function (element) {
|
|
@@ -392,6 +449,77 @@ function createWrapOfXLabels(wrapLabelProps) {
|
|
|
392
449
|
return removeVal > 0 ? removeVal : 0;
|
|
393
450
|
}
|
|
394
451
|
exports.createWrapOfXLabels = createWrapOfXLabels;
|
|
452
|
+
/**
|
|
453
|
+
* This method used for wrapping of y axis labels (tick values).
|
|
454
|
+
*/
|
|
455
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
456
|
+
function createYAxisLabels(node,
|
|
457
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
458
|
+
yAxis, noOfCharsToTruncate, truncateLabel, xValue, isRtl) {
|
|
459
|
+
if (node === null) {
|
|
460
|
+
return;
|
|
461
|
+
}
|
|
462
|
+
var axisNode = d3_selection_1.select(node).call(yAxis);
|
|
463
|
+
axisNode.selectAll('.tick text').each(function () {
|
|
464
|
+
var text = d3_selection_1.select(this);
|
|
465
|
+
var totalWord = text.text();
|
|
466
|
+
var truncatedWord = text.text().slice(0, noOfCharsToTruncate) + "...";
|
|
467
|
+
var totalWordLength = text.text().length;
|
|
468
|
+
var padding = truncateLabel ? 1.5 : 1; // ems
|
|
469
|
+
var y = text.attr('y');
|
|
470
|
+
var x = text.attr('x');
|
|
471
|
+
var dy = parseFloat(text.attr('dy'));
|
|
472
|
+
var dx = 0;
|
|
473
|
+
text
|
|
474
|
+
.text(null)
|
|
475
|
+
.append('tspan')
|
|
476
|
+
.attr('x', x)
|
|
477
|
+
.attr('y', y)
|
|
478
|
+
.attr('id', 'BaseSpan')
|
|
479
|
+
.attr('dy', dy + 'em')
|
|
480
|
+
.attr('data-', totalWord);
|
|
481
|
+
if (truncateLabel && totalWordLength > noOfCharsToTruncate) {
|
|
482
|
+
text
|
|
483
|
+
.append('tspan')
|
|
484
|
+
.attr('id', 'showDots')
|
|
485
|
+
.attr('x', x)
|
|
486
|
+
.attr('y', y)
|
|
487
|
+
.attr('dy', dy)
|
|
488
|
+
.attr('dx', padding + dx + 'em')
|
|
489
|
+
.text(truncatedWord);
|
|
490
|
+
}
|
|
491
|
+
else {
|
|
492
|
+
text
|
|
493
|
+
.attr('text-align', 'start')
|
|
494
|
+
.append('tspan')
|
|
495
|
+
.attr('id', 'LessLength')
|
|
496
|
+
.attr('x', isRtl ? xValue : x)
|
|
497
|
+
.attr('y', y)
|
|
498
|
+
.attr('dx', padding + dx + 'em')
|
|
499
|
+
.text(totalWord);
|
|
500
|
+
}
|
|
501
|
+
});
|
|
502
|
+
}
|
|
503
|
+
exports.createYAxisLabels = createYAxisLabels;
|
|
504
|
+
/**
|
|
505
|
+
* This function is calculating the length of longest Y axis label in px ,so that we are able to
|
|
506
|
+
* create the cartesian chart by shifting that many points to the right/left.
|
|
507
|
+
* @param points
|
|
508
|
+
* @returns
|
|
509
|
+
*/
|
|
510
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
511
|
+
function calculateLongestYAxisLabel(points, yAxisElement) {
|
|
512
|
+
var maxLabelLength = 0;
|
|
513
|
+
points.forEach(function (point) {
|
|
514
|
+
var canvas = document.createElement('canvas');
|
|
515
|
+
var ctx = canvas.getContext('2d');
|
|
516
|
+
ctx.font = window.getComputedStyle(yAxisElement, null).getPropertyValue('font-size');
|
|
517
|
+
var wordLengthInPixel = ctx.measureText(point.y).width;
|
|
518
|
+
maxLabelLength = Math.max(wordLengthInPixel, maxLabelLength);
|
|
519
|
+
});
|
|
520
|
+
return maxLabelLength;
|
|
521
|
+
}
|
|
522
|
+
exports.calculateLongestYAxisLabel = calculateLongestYAxisLabel;
|
|
395
523
|
/**
|
|
396
524
|
* This method displays a tooltip to the x axis lables(tick values)
|
|
397
525
|
* when prop 'showXAxisLablesTooltip' enables to the respected chart.
|
|
@@ -510,6 +638,25 @@ function domainRangeOfNumericForAreaChart(points, margins, width, isRTL) {
|
|
|
510
638
|
: { dStartValue: xMin, dEndValue: xMax, rStartValue: rStartValue, rEndValue: rEndValue };
|
|
511
639
|
}
|
|
512
640
|
exports.domainRangeOfNumericForAreaChart = domainRangeOfNumericForAreaChart;
|
|
641
|
+
/**
|
|
642
|
+
* Calculates Domain and range values for Numeric X axis.
|
|
643
|
+
* This method calculates Horizontal Chart with Axis
|
|
644
|
+
* @export
|
|
645
|
+
* @param {ILineChartPoints[]} points
|
|
646
|
+
* @param {IMargins} margins
|
|
647
|
+
* @param {number} width
|
|
648
|
+
* @param {boolean} isRTL
|
|
649
|
+
* @returns {IDomainNRange}
|
|
650
|
+
*/
|
|
651
|
+
function domainRangeOfNumericForHorizontalBarChartWithAxis(points, margins, containerWidth, isRTL, shiftX) {
|
|
652
|
+
var xMax = d3_array_1.max(points, function (point) { return point.x; });
|
|
653
|
+
var rMin = isRTL ? margins.left : margins.left + shiftX;
|
|
654
|
+
var rMax = isRTL ? containerWidth - margins.right - shiftX : containerWidth - margins.right;
|
|
655
|
+
return isRTL
|
|
656
|
+
? { dStartValue: xMax, dEndValue: 0, rStartValue: rMin, rEndValue: rMax }
|
|
657
|
+
: { dStartValue: 0, dEndValue: xMax, rStartValue: rMin, rEndValue: rMax };
|
|
658
|
+
}
|
|
659
|
+
exports.domainRangeOfNumericForHorizontalBarChartWithAxis = domainRangeOfNumericForHorizontalBarChartWithAxis;
|
|
513
660
|
/**
|
|
514
661
|
* Calculates Range values of x Axis string axis
|
|
515
662
|
* For String axis, we need to give domain values (Not start and end array values)
|
|
@@ -586,7 +733,7 @@ exports.domainRageOfVerticalNumeric = domainRageOfVerticalNumeric;
|
|
|
586
733
|
*/
|
|
587
734
|
function getDomainNRangeValues(
|
|
588
735
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
589
|
-
points, margins, width, chartType, isRTL, xAxisType, barWidth, tickValues) {
|
|
736
|
+
points, margins, width, chartType, isRTL, xAxisType, barWidth, tickValues, shiftX) {
|
|
590
737
|
var domainNRangeValue;
|
|
591
738
|
if (xAxisType === XAxisTypes.NumericAxis) {
|
|
592
739
|
switch (chartType) {
|
|
@@ -600,6 +747,9 @@ points, margins, width, chartType, isRTL, xAxisType, barWidth, tickValues) {
|
|
|
600
747
|
case ChartTypes.VerticalBarChart:
|
|
601
748
|
domainNRangeValue = domainRageOfVerticalNumeric(points, margins, width, isRTL, barWidth);
|
|
602
749
|
break;
|
|
750
|
+
case ChartTypes.HorizontalBarChartWithAxis:
|
|
751
|
+
domainNRangeValue = domainRangeOfNumericForHorizontalBarChartWithAxis(points, margins, width, isRTL, shiftX);
|
|
752
|
+
break;
|
|
603
753
|
default:
|
|
604
754
|
domainNRangeValue = { dStartValue: 0, dEndValue: 0, rStartValue: 0, rEndValue: 0 };
|
|
605
755
|
}
|
|
@@ -673,6 +823,21 @@ function findVerticalNumericMinMaxOfY(points) {
|
|
|
673
823
|
return { startValue: yMin, endValue: yMax };
|
|
674
824
|
}
|
|
675
825
|
exports.findVerticalNumericMinMaxOfY = findVerticalNumericMinMaxOfY;
|
|
826
|
+
/**
|
|
827
|
+
* Fins the min and max values of the vertical bar chart y axis data point.
|
|
828
|
+
* @export
|
|
829
|
+
* @param {IVerticalBarChartDataPoint[]} points
|
|
830
|
+
* @returns {{ startValue: number; endValue: number }}
|
|
831
|
+
*/
|
|
832
|
+
function findHBCWANumericMinMaxOfY(points, yAxisType) {
|
|
833
|
+
if (yAxisType !== undefined && yAxisType === YAxisType.NumericAxis) {
|
|
834
|
+
var yMax = d3_array_1.max(points, function (point) { return point.y; });
|
|
835
|
+
var yMin = d3_array_1.min(points, function (point) { return point.y; });
|
|
836
|
+
return { startValue: yMin, endValue: yMax };
|
|
837
|
+
}
|
|
838
|
+
return { startValue: 0, endValue: 0 };
|
|
839
|
+
}
|
|
840
|
+
exports.findHBCWANumericMinMaxOfY = findHBCWANumericMinMaxOfY;
|
|
676
841
|
/**
|
|
677
842
|
* For creating Y axis, need to calculate y axis domain values from given points. This may vary based on chart type.
|
|
678
843
|
* So, this method will define which method need to call based on chart type to find out min and max values(For Domain).
|
|
@@ -683,7 +848,10 @@ exports.findVerticalNumericMinMaxOfY = findVerticalNumericMinMaxOfY;
|
|
|
683
848
|
* @returns {{ startValue: number; endValue: number }}
|
|
684
849
|
*/
|
|
685
850
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
686
|
-
function getMinMaxOfYAxis(
|
|
851
|
+
function getMinMaxOfYAxis(
|
|
852
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
853
|
+
points, chartType, yAxisType) {
|
|
854
|
+
if (yAxisType === void 0) { yAxisType = YAxisType.NumericAxis; }
|
|
687
855
|
var minMaxValues;
|
|
688
856
|
switch (chartType) {
|
|
689
857
|
case ChartTypes.AreaChart:
|
|
@@ -696,6 +864,9 @@ function getMinMaxOfYAxis(points, chartType) {
|
|
|
696
864
|
case ChartTypes.VerticalBarChart:
|
|
697
865
|
minMaxValues = findVerticalNumericMinMaxOfY(points);
|
|
698
866
|
break;
|
|
867
|
+
case ChartTypes.HorizontalBarChartWithAxis:
|
|
868
|
+
minMaxValues = findHBCWANumericMinMaxOfY(points, yAxisType);
|
|
869
|
+
break;
|
|
699
870
|
default:
|
|
700
871
|
minMaxValues = { startValue: 0, endValue: 0 };
|
|
701
872
|
}
|