@datarailsshared/dr_renderer 1.2.208 → 1.2.209
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/package.json +1 -1
- package/src/highcharts_renderer.js +35 -47
package/package.json
CHANGED
|
@@ -1339,15 +1339,12 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
|
|
|
1339
1339
|
return chart_series;
|
|
1340
1340
|
}
|
|
1341
1341
|
|
|
1342
|
-
highchartsRenderer.ptCreateWaterfallBreakdownSeries = function (pivotData,
|
|
1342
|
+
highchartsRenderer.ptCreateWaterfallBreakdownSeries = function (pivotData, additionOptions, opts) {
|
|
1343
1343
|
const colorOptions = opts.breakdown_options.colors;
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
if (row_n_keys.length === 0) {
|
|
1349
|
-
row_n_keys.push([]);
|
|
1350
|
-
}
|
|
1344
|
+
const chart_series = [];
|
|
1345
|
+
const row_n_keys = pivotData.getRowKeys();
|
|
1346
|
+
const col_n_keys = pivotData.getColKeys();
|
|
1347
|
+
const hasBreakdownValues = lodash.get(opts, 'breakdown_options.values.breakdown.length');
|
|
1351
1348
|
|
|
1352
1349
|
let resultObject = {
|
|
1353
1350
|
data: [],
|
|
@@ -1363,57 +1360,46 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
|
|
|
1363
1360
|
};
|
|
1364
1361
|
resultObject = highchartsRenderer.getDataLabelsOptions(additionOptions, resultObject);
|
|
1365
1362
|
|
|
1366
|
-
const breakdownValues = [];
|
|
1367
1363
|
lodash.forEach(col_n_keys, function(col_n_value, col_index) {
|
|
1368
|
-
breakdownValues.push([]);
|
|
1369
|
-
lodash.forEach(row_n_keys, function (row_n_value, row_index) {
|
|
1370
|
-
var agg = pivotData.getAggregator(row_n_value, col_n_value);
|
|
1371
|
-
var val = agg.value();
|
|
1372
|
-
|
|
1373
|
-
if (val != null && $.isNumeric(val)) {
|
|
1374
|
-
val = parseFloat(val);
|
|
1375
|
-
} else if (onlyNumbers) {
|
|
1376
|
-
val = NaN;
|
|
1377
|
-
} else {
|
|
1378
|
-
val = 0;
|
|
1379
|
-
}
|
|
1380
|
-
|
|
1381
|
-
breakdownValues[col_index][row_index] = val;
|
|
1382
1364
|
|
|
1383
|
-
|
|
1384
|
-
|
|
1365
|
+
const totalColumnValue = pivotData.getAggregator([], col_n_value).value();
|
|
1366
|
+
const nextTotalColumnKey = col_n_keys[col_index + 1];
|
|
1367
|
+
const nextTotalColumnValue = nextTotalColumnKey ? pivotData.getAggregator([], nextTotalColumnKey).value() : null;
|
|
1368
|
+
resultObject.data.push({
|
|
1369
|
+
y: totalColumnValue,
|
|
1370
|
+
name: lodash.unescape(col_n_value).replace('DR_Others', highchartsRenderer.getOthersName(opts)),
|
|
1371
|
+
isSum: !!col_index,
|
|
1372
|
+
isTotal: true,
|
|
1373
|
+
color: colorOptions.total,
|
|
1374
|
+
});
|
|
1385
1375
|
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1376
|
+
if (col_index !== col_n_keys.length - 1) {
|
|
1377
|
+
lodash.forEach(row_n_keys, function (row_n_value) {
|
|
1378
|
+
const agg = pivotData.getAggregator(row_n_value, col_n_value);
|
|
1379
|
+
let val = hasBreakdownValues
|
|
1380
|
+
? agg.value()
|
|
1381
|
+
: nextTotalColumnValue - totalColumnValue;
|
|
1382
|
+
|
|
1383
|
+
val = $.isNumeric(val) ? parseFloat(val) : 0;
|
|
1384
|
+
if (val) {
|
|
1385
|
+
const tmoobj = {};
|
|
1386
|
+
const key = lodash.isArray(row_n_value) ? row_n_value[0] : row_n_value;
|
|
1392
1387
|
tmoobj.name = lodash.unescape(key);
|
|
1393
|
-
|
|
1388
|
+
|
|
1394
1389
|
if (tmoobj.name) {
|
|
1395
1390
|
tmoobj.name = tmoobj.name.replace('DR_Others', highchartsRenderer.getOthersName(opts));
|
|
1396
1391
|
}
|
|
1397
|
-
|
|
1398
1392
|
if (lodash.isEmpty(String(tmoobj.name))) {
|
|
1399
1393
|
tmoobj.name = lodash.unescape(col_n_value);
|
|
1400
1394
|
tmoobj.visible = false;
|
|
1401
1395
|
}
|
|
1402
|
-
|
|
1396
|
+
|
|
1397
|
+
tmoobj.y = val;
|
|
1403
1398
|
tmoobj.colKeys = [lodash.unescape(col_n_keys[col_index - 1]), lodash.unescape(col_n_value)];
|
|
1404
1399
|
resultObject.data.push(tmoobj);
|
|
1405
1400
|
}
|
|
1406
|
-
}
|
|
1407
|
-
}
|
|
1408
|
-
|
|
1409
|
-
const totalValueAgg = pivotData.getAggregator([], col_n_value);
|
|
1410
|
-
resultObject.data.push({
|
|
1411
|
-
y: totalValueAgg.value(),
|
|
1412
|
-
name: lodash.unescape(col_n_value).replace('DR_Others', highchartsRenderer.getOthersName(opts)),
|
|
1413
|
-
isSum: !!col_index,
|
|
1414
|
-
isTotal: true,
|
|
1415
|
-
color: colorOptions.total,
|
|
1416
|
-
});
|
|
1401
|
+
});
|
|
1402
|
+
}
|
|
1417
1403
|
});
|
|
1418
1404
|
|
|
1419
1405
|
chart_series.push(resultObject);
|
|
@@ -3191,6 +3177,8 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
|
|
|
3191
3177
|
? opts.chartOptions
|
|
3192
3178
|
: highchartsRenderer.getDefaultValueForChart(highchartsRenderer.CHART_TYPES.WATERFALL_BREAKDOWN);
|
|
3193
3179
|
|
|
3180
|
+
pivotData.colKeys = lodash.map(lodash.keys(pivotData.colTotals), key => [key]);
|
|
3181
|
+
|
|
3194
3182
|
chartOptions.chart = {
|
|
3195
3183
|
type: 'waterfall',
|
|
3196
3184
|
zoomType: additionOptions && additionOptions.chart && additionOptions.chart.zoom_type ? additionOptions.chart.zoom_type : 'None',
|
|
@@ -3241,7 +3229,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
|
|
|
3241
3229
|
chartOptions.colors = opts.paletteOptions.dashboardPalette.colors;
|
|
3242
3230
|
}
|
|
3243
3231
|
chartOptions.series = highchartsRenderer
|
|
3244
|
-
.ptCreateWaterfallBreakdownSeries(pivotData,
|
|
3232
|
+
.ptCreateWaterfallBreakdownSeries(pivotData, additionOptions, opts);
|
|
3245
3233
|
|
|
3246
3234
|
chartOptions = highchartsRenderer.prepareAxisX(chartOptions, additionOptions, pivotData.getColKeys());
|
|
3247
3235
|
chartOptions.plotOptions = {
|
|
@@ -8695,7 +8683,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
|
|
|
8695
8683
|
rows = [];
|
|
8696
8684
|
} else {
|
|
8697
8685
|
rows = cols;
|
|
8698
|
-
cols = [];
|
|
8686
|
+
cols = [point.colKeys[1]];
|
|
8699
8687
|
}
|
|
8700
8688
|
return { rows, cols };
|
|
8701
8689
|
}
|