@datarailsshared/dr_renderer 1.2.176-dragons → 1.2.178

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@datarailsshared/dr_renderer",
3
- "version": "1.2.176-dragons",
3
+ "version": "1.2.178",
4
4
  "description": "DataRails charts and tables renderer",
5
5
  "keywords": [
6
6
  "datarails",
@@ -146,7 +146,7 @@ let initDRPivotTable = function($, window, document) {
146
146
  DRPivotData.prototype.processRecord = function(record, useTotalsCalculation) {
147
147
  if (useTotalsCalculation) {
148
148
  if (!this.notFirst) {
149
- this.keysLength = _.filter(_.keys(record), key => !['data_types', 'formats', 'values_formats'].includes(key)).length - 1;
149
+ this.keysLength = _.filter(_.keys(record), key => !_.includes(['data_types', 'formats', 'values_formats'], key)).length - 1;
150
150
  this.notFirst = true;
151
151
  }
152
152
  let getRowAggregator = (function(_this) {
@@ -1,12 +1,3 @@
1
- const SERIES_CLASSNAMES = {
2
- WATERFALL_BREAKDOWN: 'waterfallBreakdown',
3
- TOTAL_SERIES: 'totalSeries',
4
- TREND_SERIES: 'trendSeries',
5
- };
6
-
7
- const EMPTY_ROW_N_KEYS = [[]];
8
- const NULL_VALUE = '[null]';
9
-
10
1
  let getHighchartsRenderer = function ($, document, Highcharts, default_colors, highchartsRenderer,
11
2
  DataFormatter, lodash, moment_lib, isNewAngular) {
12
3
 
@@ -60,32 +51,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
60
51
  ].join(''), 'i');
61
52
  highchartsRenderer.isMobile = mobileBrowserRegex.test(navigator.userAgent);
62
53
 
63
- highchartsRenderer.CHART_TYPES = {
64
- LINE_CHART: 'line-chart',
65
- LINE_CHART_SMOOTH: 'line-chart-smooth',
66
- COLUMN_CHART: 'column-chart',
67
- COLUMN_CHART_STACKED: 'column-chart-stacked',
68
- COMBO_CHART: 'combo-chart',
69
- COMBO_COLUMN_CHART: 'combo-column-chart',
70
- COMBO_STACKED_CHART: 'combo-stacked-chart',
71
- BAR_CHART: 'bar-chart',
72
- BAR_CHART_STACKED: 'bar-chart-stacked',
73
- SCATTER_CHART: 'scatter-chart',
74
- AREA_CHART: 'area-chart',
75
- AREA_CHART_SMOOTH: 'area-chart-smooth',
76
- TABLE_ONLY: 'table_only',
77
- POLYGON_CHART: 'polygon-chart',
78
- PIE_CHART: 'pie-chart',
79
- PIE_CHART_DRILLDOWN: 'pie-chart-drilldown',
80
- GAUGE_SOLID_CHART: 'gauge-solid-chart',
81
- GAUGE_CHART: 'gauge-chart',
82
- KPI_WIDGET: 'kpi-widget',
83
- TEXT_WIDGET: 'text-widget',
84
- WATERFALL_BREAKDOWN: 'waterfall-chart-breakdown',
85
- PUBLISHED_ITEM: 'published_item',
86
- RICH_TEXT: 'rich_text',
87
- };
88
-
89
54
  highchartsRenderer.highcharts_theme = {
90
55
  "colors": highchartsRenderer.defaults_colors,
91
56
  "chart": {
@@ -480,7 +445,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
480
445
  || this.series.options.className === 'trendSeries') {
481
446
  rows = [];
482
447
  }
483
-
484
448
  var cols = this.key;
485
449
  if (typeof (cols) == 'object' && cols.name) {
486
450
  cols = cols.name;
@@ -536,13 +500,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
536
500
  }
537
501
 
538
502
  const percentageWrapper = percentageArray.length ? `(${percentageArray.join(', ')})` : '';
539
-
540
- if (this.series.options.className === SERIES_CLASSNAMES.WATERFALL_BREAKDOWN) {
541
- const modifiedRowsAndCols = highchartsRenderer.transformRowsAndColsForBreakdown(rows, cols, this.point, opts);
542
- rows = modifiedRowsAndCols.rows;
543
- cols = modifiedRowsAndCols.cols;
544
- }
545
-
546
503
  var aggr = pivotData.getAggregator(rows, cols);
547
504
 
548
505
  const formattedValue = is_drill_down_pie || labelOptions.show_value ? $.pivotUtilities.getFormattedNumber(value, aggr, opts, true) : '';
@@ -613,8 +570,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
613
570
  }
614
571
 
615
572
  var func = function () {
616
- const isWaterfallBreakdown = this.series.options.className === SERIES_CLASSNAMES.WATERFALL_BREAKDOWN;
617
-
618
573
  var y = parseFloat(this.y);
619
574
  if (pivotData) {
620
575
  let series_name = (this.series.name || '') + "";
@@ -649,8 +604,8 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
649
604
  cols = rows;
650
605
  rows = temp;
651
606
  }
652
-
653
- var category_text = `<span style="font-weight: bold;">${ cols }${ isWaterfallBreakdown ? ': ' : ' ' }</span>`;
607
+ var aggr = pivotData.getAggregator(rows, cols);
608
+ var category_text = `<span style="font-weight: bold;">${cols} </span>`;
654
609
  if (this.category) {
655
610
  category_text = '';
656
611
  }
@@ -662,18 +617,9 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
662
617
  if (pivotData.rowAttrs.length == 0) {
663
618
  series_text = ': ';
664
619
  }
665
-
666
- if (isWaterfallBreakdown) {
667
- const modifiedRowsAndCols = highchartsRenderer.transformRowsAndColsForBreakdown(rows, cols, this.point, opts);
668
- rows = modifiedRowsAndCols.rows;
669
- cols = modifiedRowsAndCols.cols;
670
- }
671
-
672
- var aggr = pivotData.getAggregator(rows, cols);
673
-
674
620
  let formatted_value_to_return = $.pivotUtilities.getFormattedNumber(y, null, opts);
675
- if (aggr.value() || isWaterfallBreakdown) {
676
- formatted_value_to_return = $.pivotUtilities.getFormattedNumber(isWaterfallBreakdown ? y : aggr.value(), aggr, opts);
621
+ if (aggr.value()) {
622
+ formatted_value_to_return = $.pivotUtilities.getFormattedNumber(aggr.value(), aggr, opts);
677
623
  }
678
624
 
679
625
  let wrappedFormattedValue = highchartsRenderer.getSpanWrapper(formatted_value_to_return);
@@ -682,7 +628,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
682
628
  category_text = tooltipOptions.show_x_axis ? category_text : '';
683
629
  series_text = tooltipOptions.show_data_series ? series_text : '';
684
630
 
685
- let to_return = isWaterfallBreakdown ? `${ category_text }${ wrappedFormattedValue }` : category_text + series_text + wrappedFormattedValue;
631
+ let to_return = category_text + series_text + wrappedFormattedValue;
686
632
 
687
633
  if (is_drill_down_pie) {
688
634
  to_return = wrappedFormattedValue;
@@ -1115,7 +1061,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
1115
1061
 
1116
1062
  opts.chart_series = []
1117
1063
 
1118
- if (!lodash.isEqual(row_n_keys, EMPTY_ROW_N_KEYS)) {
1064
+ if (!lodash.isEqual(row_n_keys, [[]])) {
1119
1065
  chart_series.forEach(series => {
1120
1066
  opts.chart_series.push(series.name);
1121
1067
  })
@@ -1182,7 +1128,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
1182
1128
  allowOverlap: additionOptions && additionOptions.label ? additionOptions.label.overlap : false,
1183
1129
  enabled: additionOptions && additionOptions.label ? additionOptions.label.show : true,
1184
1130
  formatter: highchartsRenderer.defaultDataLabelFormatter(pivotData, {'chartOptions': additionOptions, total_value_options: opts.total_value_options}),
1185
- style: highchartsRenderer.getDataLabelsStyle(additionOptions),
1131
+ style: highchartsRenderer.getDataLabelsStyle(additionOptions)
1186
1132
  }
1187
1133
 
1188
1134
  ob = highchartsRenderer.getDataLabelsOptions(additionOptions, ob);
@@ -1275,7 +1221,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
1275
1221
 
1276
1222
  let weights = { line: 2,spline: 3 ,area:-2, areaspline: -1, scatter:4, column: 1 };
1277
1223
 
1278
- if (opts.comboOptions && lodash.includes(chartType,'combo') && !lodash.isEqual(row_n_keys, EMPTY_ROW_N_KEYS)) {
1224
+ if (opts.comboOptions && lodash.includes(chartType,'combo') && !lodash.isEqual(row_n_keys, [[]])) {
1279
1225
  chart_series.forEach((series, seriesIndex) => {
1280
1226
  const savedSeriesOption = lodash.find(opts.comboOptions.seriesOptions, {series: series.name});
1281
1227
  if (savedSeriesOption) {
@@ -1288,7 +1234,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
1288
1234
 
1289
1235
  opts.chart_series = []
1290
1236
 
1291
- if (!lodash.isEqual(row_n_keys, EMPTY_ROW_N_KEYS)) {
1237
+ if (!lodash.isEqual(row_n_keys, [[]])) {
1292
1238
  chart_series.forEach(series => {
1293
1239
  opts.chart_series.push(series.name);
1294
1240
  })
@@ -1338,94 +1284,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
1338
1284
  return chart_series;
1339
1285
  }
1340
1286
 
1341
- highchartsRenderer.ptCreateWaterfallBreakdownSeries = function (pivotData, onlyNumbers, additionOptions, opts) {
1342
- const colorOptions = opts.breakdown_options.colors;
1343
- var chart_series = [],
1344
- row_n_keys = pivotData.getRowKeys(),
1345
- col_n_keys = pivotData.getColKeys();
1346
-
1347
- if (row_n_keys.length === 0) {
1348
- row_n_keys.push([]);
1349
- }
1350
-
1351
- let resultObject = {
1352
- data: [],
1353
- dataLabels: {
1354
- allowOverlap: additionOptions && additionOptions.label ? additionOptions.label.overlap : false,
1355
- enabled: additionOptions && additionOptions.label ? additionOptions.label.show : true,
1356
- formatter: highchartsRenderer.defaultDataLabelFormatter(pivotData, {'chartOptions': additionOptions, total_value_options: opts.total_value_options}),
1357
- style: highchartsRenderer.getDataLabelsStyle(additionOptions),
1358
- },
1359
- upColor: colorOptions.increase,
1360
- color: colorOptions.decrease,
1361
- className: SERIES_CLASSNAMES.WATERFALL_BREAKDOWN
1362
- };
1363
- resultObject = highchartsRenderer.getDataLabelsOptions(additionOptions, resultObject);
1364
-
1365
- const breakdownValues = [];
1366
- lodash.forEach(col_n_keys, function(col_n_value, col_index) {
1367
- breakdownValues.push([]);
1368
- lodash.forEach(row_n_keys, function (row_n_value, row_index) {
1369
- var agg = pivotData.getAggregator(row_n_value, col_n_value);
1370
- var val = agg.value();
1371
-
1372
- if (val != null && $.isNumeric(val)) {
1373
- val = parseFloat(val);
1374
- } else if (onlyNumbers) {
1375
- val = NaN;
1376
- } else {
1377
- val = 0;
1378
- }
1379
-
1380
- breakdownValues[col_index][row_index] = val;
1381
-
1382
- if (col_index) {
1383
- const value = val - breakdownValues[col_index - 1][row_index];
1384
-
1385
- if (value) {
1386
- var tmoobj = {};
1387
- var key = row_n_value;
1388
- if (lodash.isArray(row_n_value)) {
1389
- key = row_n_value[0];
1390
- }
1391
- tmoobj.name = lodash.unescape(key);
1392
-
1393
- if (tmoobj.name) {
1394
- tmoobj.name = tmoobj.name.replace('DR_Others', highchartsRenderer.getOthersName(opts));
1395
- }
1396
-
1397
- if (lodash.isEmpty(String(tmoobj.name))) {
1398
- tmoobj.name = lodash.unescape(col_n_value);
1399
- tmoobj.visible = false;
1400
- }
1401
- tmoobj.y = value;
1402
- tmoobj.colKeys = [lodash.unescape(col_n_keys[col_index - 1]), lodash.unescape(col_n_value)];
1403
- resultObject.data.push(tmoobj);
1404
- }
1405
- }
1406
- });
1407
-
1408
- resultObject.data.push({
1409
- y: pivotData.colTotals[col_n_value].sum,
1410
- name: lodash.unescape(col_n_value).replace('DR_Others', highchartsRenderer.getOthersName(opts)),
1411
- isSum: !!col_index,
1412
- isTotal: true,
1413
- color: colorOptions.total,
1414
- });
1415
- });
1416
-
1417
- chart_series.push(resultObject);
1418
-
1419
- opts.chart_series = [];
1420
- if (!lodash.isEqual(row_n_keys, EMPTY_ROW_N_KEYS)) {
1421
- chart_series.forEach(series => {
1422
- opts.chart_series.push(series.name);
1423
- });
1424
- }
1425
-
1426
- return chart_series;
1427
- }
1428
-
1429
1287
  highchartsRenderer.setChartTypeBySeriesType = function (type, series) {
1430
1288
  const types = {
1431
1289
  'line-chart': 'line',
@@ -2104,6 +1962,10 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
2104
1962
  }
2105
1963
  var uniqueVals = kpioptions.value.value == "Unique";
2106
1964
 
1965
+ if (!pivotData.colKeys.length) {
1966
+ pivotData.colKeys.push([]);
1967
+ }
1968
+
2107
1969
  let temp_series = highchartsRenderer.ptCreateBasicLineSeries(pivotData, null, true, uniqueVals, null, opts, chartOptions);
2108
1970
 
2109
1971
  var total = [];
@@ -3179,101 +3041,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
3179
3041
  return highchartsRenderer.ptCreateElementAndDraw(chartOptions, opts);
3180
3042
  };
3181
3043
 
3182
- highchartsRenderer.ptRenderWaterfallBreakdown = function (pivotData, opts, drilldownFunc, chartType) {
3183
- let chartOptions = {};
3184
- const additionOptions = opts.chartOptions
3185
- ? opts.chartOptions
3186
- : highchartsRenderer.getDefaultValueForChart(highchartsRenderer.CHART_TYPES.WATERFALL_BREAKDOWN);
3187
-
3188
- chartOptions.chart = {
3189
- type: 'waterfall',
3190
- zoomType: additionOptions && additionOptions.chart && additionOptions.chart.zoom_type ? additionOptions.chart.zoom_type : 'None',
3191
- };
3192
- if (disableAnimation) {
3193
- chartOptions.chart.animation = false;
3194
- }
3195
-
3196
- const breakdownFieldIsNotSet = lodash.some(pivotData.getRowKeys(), rowKey => !rowKey || lodash.isArray(rowKey) && !rowKey.length);
3197
- chartOptions.xAxis = {
3198
- type: 'category',
3199
- crosshair: true,
3200
- min: 0,
3201
- title: {
3202
- text : additionOptions && additionOptions.axisX ? additionOptions.axisX.name : '',
3203
- },
3204
- uniqueNames: breakdownFieldIsNotSet,
3205
- };
3206
-
3207
- highchartsRenderer.setTitleAndSubTitle(chartOptions, opts, additionOptions);
3208
-
3209
- chartOptions.yAxis = {
3210
- min: null,
3211
- max: null,
3212
- title: {
3213
- text: additionOptions && additionOptions.axisY ? additionOptions.axisY.name : '',
3214
- autoylabel: additionOptions && additionOptions.axisY ? additionOptions.axisY.autoylabel : ''
3215
- },
3216
- labels: {
3217
- formatter: highchartsRenderer.defaultValueLabelsFormatter(pivotData, opts)
3218
- },
3219
- };
3220
- if (additionOptions) {
3221
- highchartsRenderer.setYAxisMinMax(chartOptions.yAxis, additionOptions.axisY);
3222
- }
3223
-
3224
- chartOptions.tooltip = {
3225
- formatter: highchartsRenderer.defaultFormatterToTooltip(pivotData, opts),
3226
- valueDecimals: 2,
3227
- };
3228
-
3229
- highchartsRenderer.handleGridLines(additionOptions, chartOptions);
3230
-
3231
- if (lodash.get(opts, 'paletteOptions.widgetPalette', null)) {
3232
- const mc_palette = lodash.find(lodash.get(opts.paletteOptions, 'monochromePalettes', []), { selected: true });
3233
- chartOptions.colors = mc_palette ? mc_palette.colors : opts.paletteOptions.widgetPalette;
3234
- } else if (lodash.get(opts, 'paletteOptions.dashboardPalette.colors', null)) {
3235
- chartOptions.colors = opts.paletteOptions.dashboardPalette.colors;
3236
- }
3237
- chartOptions.series = highchartsRenderer
3238
- .ptCreateWaterfallBreakdownSeries(pivotData, null, additionOptions, opts);
3239
-
3240
- chartOptions = highchartsRenderer.prepareAxisX(chartOptions, additionOptions, pivotData.getColKeys());
3241
- chartOptions.plotOptions = {
3242
- waterfall: {
3243
- pointPadding: 0.2,
3244
- borderWidth: 0,
3245
- borderRadius: 1,
3246
- lineWidth: 0,
3247
- },
3248
- series: {
3249
- animation: !disableAnimation,
3250
- cropThreshold: 1000,
3251
- dataLabels: {
3252
- allowOverlap: additionOptions && additionOptions.label ? additionOptions.label.overlap : false,
3253
- enabled: additionOptions && additionOptions.label ? additionOptions.label.show : true,
3254
- formatter: highchartsRenderer.defaultDataLabelFormatter(pivotData, opts),
3255
- style: highchartsRenderer.getDataLabelsStyle(additionOptions),
3256
- inside: false
3257
- }
3258
- }
3259
- };
3260
-
3261
- if (opts.drillDownListFunc) {
3262
- chartOptions.plotOptions.series.cursor = 'pointer';
3263
- chartOptions.plotOptions.series.point = {
3264
- events: {
3265
- click: opts.drillDownListFunc
3266
- }
3267
- };
3268
- }
3269
-
3270
- chartOptions.legend = {
3271
- enabled: false
3272
- };
3273
-
3274
- return highchartsRenderer.ptCreateElementAndDraw(chartOptions, opts);
3275
- };
3276
-
3277
3044
  highchartsRenderer.formatFieldValue = function (field, value) {
3278
3045
  let currentType = '';
3279
3046
  switch (field.type) {
@@ -4338,7 +4105,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
4338
4105
  }
4339
4106
  };
4340
4107
 
4341
- highchartsRenderer.rhPivotView = function (rowData, options, isTable = false, widget = null) {
4108
+ highchartsRenderer.rhPivotView = function (rowData, options, isTable = false) {
4342
4109
  if (!rowData || !rowData) {
4343
4110
  if (options.onlyOptions) {
4344
4111
  return {};
@@ -4346,28 +4113,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
4346
4113
  return null;
4347
4114
  }
4348
4115
 
4349
- if (widget && widget.chart_type === highchartsRenderer.CHART_TYPES.WATERFALL_BREAKDOWN) {
4350
- const breakdownSettings = widget.options.breakdown_options.settings;
4351
- const maxCategories = breakdownSettings.maxCategoriesCount;
4352
- const minCategories = breakdownSettings.minCategoriesCount;
4353
- const categoryFieldName = widget.cols[0].name;
4354
- const uniqueCategories = lodash.filter(lodash.uniq(lodash.map(rowData, row => row[categoryFieldName])), value => !!value);
4355
-
4356
- if (uniqueCategories && (uniqueCategories.length > maxCategories || uniqueCategories.length < minCategories )) {
4357
- const commonErrorSentence = `Please choose ${minCategories}-${maxCategories} items in the Category section.`
4358
- options.error_has_occurred = true;
4359
- options.error_params = {
4360
- title: uniqueCategories.length > maxCategories
4361
- ? `There is too much data. ${commonErrorSentence}`
4362
- : `Not enough data. ${commonErrorSentence}`,
4363
- text: '',
4364
- btnText: 'Edit Widget',
4365
- class: 'too-much-data',
4366
- }
4367
- return highchartsRenderer.getNoDataResult(options.rendererOptions, true);
4368
- }
4369
- }
4370
-
4371
4116
  if (rowData.length == 0) {
4372
4117
  if (options.onlyOptions) {
4373
4118
  return {};
@@ -6776,17 +6521,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
6776
6521
  };
6777
6522
 
6778
6523
  highchartsRenderer.chartsTypesInfo = {
6779
- [highchartsRenderer.CHART_TYPES.WATERFALL_BREAKDOWN]: {
6780
- name: 'Waterfall Breakdown Chart ',
6781
- label: 'Waterfall Breakdown Chart ',
6782
- title: 'TODO: add text',
6783
- description: 'TODO: add text',
6784
- axisName: 'Category',
6785
- legendName: 'Breakdown',
6786
- startedMessage: 'To get started, drag one field to the Category and one field to the Value section.',
6787
- axisTooltipTitle: 'TODO: add text',
6788
- legendTooltipTitle: 'TODO: add text',
6789
- },
6790
6524
  'combo-chart': {
6791
6525
  name: 'Combo Chart ',
6792
6526
  label: 'Combo Chart ',
@@ -7419,32 +7153,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
7419
7153
  }
7420
7154
  ]
7421
7155
  },
7422
- {
7423
- type: 'waterfall-chart',
7424
- name: 'Waterfall',
7425
- hidden: true,
7426
- class: 'google-visualization-charteditor-mini-column',
7427
- subtypes: [
7428
- {
7429
- type: highchartsRenderer.CHART_TYPES.WATERFALL_BREAKDOWN,
7430
- name: highchartsRenderer.chartsTypesInfo[highchartsRenderer.CHART_TYPES.WATERFALL_BREAKDOWN].name,
7431
- class: 'google-visualization-charteditor-thumbs-columnchart',
7432
- render: highchartsRenderer.ptRenderWaterfallBreakdown,
7433
- suboptions: [
7434
- highchartsRenderer.suboptions["axisY"],
7435
- highchartsRenderer.suboptions["axisX"],
7436
- highchartsRenderer.suboptions["tooltips"],
7437
- highchartsRenderer.suboptions["label"],
7438
- highchartsRenderer.suboptions["subtitle"],
7439
- highchartsRenderer.suboptions["widget_library"],
7440
- highchartsRenderer.suboptions["chart"],
7441
- highchartsRenderer.suboptions["negative_number_format"],
7442
- highchartsRenderer.suboptions["advanced"],
7443
- highchartsRenderer.suboptions["legends"],
7444
- ]
7445
- },
7446
- ]
7447
- },
7448
7156
  ];
7449
7157
 
7450
7158
  highchartsRenderer.richTextSubType = {
@@ -7894,16 +7602,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
7894
7602
 
7895
7603
  };
7896
7604
 
7897
- highchartsRenderer.createDateFromString = function (dateString, format) {
7898
- if ((format && !highchartsRenderer.isDateFormat(dateString, format)) || !highchartsRenderer.isDate(dateString)) {
7899
- return null;
7900
- }
7901
- const utcDate = format
7902
- ? moment_lib.utc(dateString, format, true)
7903
- : moment_lib.utc(dateString);
7904
- return utcDate.startOf('day').unix();
7905
- }
7906
-
7907
7605
  highchartsRenderer.prepareDrillDownFilters = function (r_keys, c_keys, widget) {
7908
7606
  let row_key = r_keys;
7909
7607
  let col_key = c_keys;
@@ -7917,46 +7615,26 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
7917
7615
 
7918
7616
  let filters = [];
7919
7617
 
7920
- if (widget.chart_type === highchartsRenderer.CHART_TYPES.WATERFALL_BREAKDOWN) {
7921
- const colFilter = highchartsRenderer.createFilterObject(widget.cols[0]);
7922
- const labels = [];
7923
- colFilter.values = [];
7924
- lodash.forEach(col_key, function (col_value) {
7925
- if (widget.cols[0].type === 'Date') {
7926
- let date = highchartsRenderer.createDateFromString(
7618
+ lodash.forEach(col_key, function (col_value, index) {
7619
+ if (widget && widget.cols[index]) {
7620
+ let temp = highchartsRenderer.createFilterObject(widget.cols[index]);
7621
+ if (widget.cols[index].type === 'Date') {
7622
+ let datetrange = highchartsRenderer.createDateTypeFromValue(
7927
7623
  col_value,
7928
- highchartsRenderer.getDateFieldFormat(widget, widget.cols[0])
7624
+ highchartsRenderer.getDateFieldFormat(widget, widget.cols[index])
7929
7625
  );
7930
- colFilter.values.push(date);
7931
- } else {
7932
- colFilter.values.push(col_value);
7933
- }
7934
- labels.push(col_value);
7935
- });
7936
- colFilter.value_to_show = labels.join(', ');
7937
- filters.push(colFilter);
7938
- } else {
7939
- lodash.forEach(col_key, function (col_value, index) {
7940
- if (widget && widget.cols[index]) {
7941
- let temp = highchartsRenderer.createFilterObject(widget.cols[index]);
7942
- if (widget.cols[index].type === 'Date') {
7943
- let datetrange = highchartsRenderer.createDateTypeFromValue(
7944
- col_value,
7945
- highchartsRenderer.getDateFieldFormat(widget, widget.cols[index])
7946
- );
7947
-
7948
- if ($.isEmptyObject(datetrange)) {
7949
- return;
7950
- }
7951
- temp.values = datetrange;
7952
- temp.values.label = col_value;
7953
- } else {
7954
- temp.values = [col_value];
7626
+
7627
+ if ($.isEmptyObject(datetrange)) {
7628
+ return;
7955
7629
  }
7956
- filters.push(temp);
7630
+ temp.values = datetrange;
7631
+ temp.values.label = col_value;
7632
+ } else {
7633
+ temp.values = [col_value];
7957
7634
  }
7958
- });
7959
- }
7635
+ filters.push(temp);
7636
+ }
7637
+ });
7960
7638
 
7961
7639
  lodash.forEach(row_key, function (row_value, index) {
7962
7640
  if (widget && widget.rows[index]) {
@@ -8001,9 +7679,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
8001
7679
  });
8002
7680
 
8003
7681
  lodash.forEach(filters, function (filter) {
8004
- if (filter.value_to_show) {
8005
- return;
8006
- }
8007
7682
  if (Array.isArray(filter.values)) {
8008
7683
  if (filter.type) {
8009
7684
  for (let i = 0; i < filter.values.length; i++) {
@@ -8042,36 +7717,15 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
8042
7717
  filters.push(highchartsRenderer.createDrillDownFilterObject(widget, widget.rows[i], rowKey[i]))
8043
7718
  }
8044
7719
  }
8045
-
8046
- if (widget.chart_type === highchartsRenderer.CHART_TYPES.WATERFALL_BREAKDOWN) {
8047
- let filter = lodash.find(filters, {name: widget.cols[0].name});
7720
+ for (let i = 0; i < colKey.length; i++) {
7721
+ let filter = lodash.find(filters, {name: widget.cols[i].name});
8048
7722
  if (filter) {
8049
7723
  filter.is_excluded = false;
7724
+ filter.values = widget.cols[i].type === 'Date' ?
7725
+ highchartsRenderer.createDateTypeFromValue(colKey[i], highchartsRenderer.getDateFieldFormat(widget, widget.cols[i])) :
7726
+ [colKey[i]];
8050
7727
  } else {
8051
- filter = highchartsRenderer.createDrillDownFilterObject(widget, widget.cols[0], colKey[0]);
8052
- }
8053
- filter.values = [];
8054
- for (let i = 0; i < colKey.length; i++) {
8055
- filter.values.push(
8056
- widget.cols[0].type === 'Date'
8057
- ? highchartsRenderer.createDateFromString(
8058
- colKey[i],
8059
- highchartsRenderer.getDateFieldFormat(widget, widget.cols[0])
8060
- )
8061
- : colKey[i]
8062
- );
8063
- }
8064
- } else {
8065
- for (let i = 0; i < colKey.length; i++) {
8066
- let filter = lodash.find(filters, {name: widget.cols[i].name});
8067
- if (filter) {
8068
- filter.is_excluded = false;
8069
- filter.values = widget.cols[i].type === 'Date' ?
8070
- highchartsRenderer.createDateTypeFromValue(colKey[i], highchartsRenderer.getDateFieldFormat(widget, widget.cols[i])) :
8071
- [colKey[i]];
8072
- } else {
8073
- filters.push(highchartsRenderer.createDrillDownFilterObject(widget, widget.cols[i], colKey[i]))
8074
- }
7728
+ filters.push(highchartsRenderer.createDrillDownFilterObject(widget, widget.cols[i], colKey[i]))
8075
7729
  }
8076
7730
  }
8077
7731
  return filters;
@@ -8212,16 +7866,9 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
8212
7866
  lodash.forEach(datesFields, function (row) {
8213
7867
  row.values = lodash.uniq(row.values);
8214
7868
 
8215
- const isTimestampDateField = row.type === 'Date' && lodash.some(row.values, value => typeof value ==='number');
7869
+ const isTimestampDateField = row.type === 'Date' && typeof row.values[0] === 'number';
8216
7870
  if (isTimestampDateField) {
8217
- const nullValueIndex = row.values.indexOf(NULL_VALUE);
8218
- if (~nullValueIndex) {
8219
- row.values.splice(nullValueIndex, 1);
8220
- }
8221
7871
  row.values = row.values.sort((a, b) => a - b);
8222
- if (~nullValueIndex) {
8223
- row.values.push(NULL_VALUE);
8224
- }
8225
7872
  } else {
8226
7873
  row.values = row.values.sort();
8227
7874
  }
@@ -8411,7 +8058,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
8411
8058
  subopts.onlyOptions = true;
8412
8059
  }
8413
8060
 
8414
- let hc_options = highchartsRenderer.rhPivotView(res, subopts, is_table, widget_obj);
8061
+ let hc_options = highchartsRenderer.rhPivotView(res, subopts, is_table);
8415
8062
 
8416
8063
  return hc_options;
8417
8064
  }
@@ -8638,24 +8285,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
8638
8285
  }
8639
8286
  }
8640
8287
 
8641
- highchartsRenderer.getOthersName = function(opts) {
8642
- return lodash.get(opts, "total_value_options.filter_options.filteredOutFieldName") || 'Others';
8643
- }
8644
-
8645
- highchartsRenderer.transformRowsAndColsForBreakdown = function(rows, cols, point, opts) {
8646
- const othersIndex = cols.indexOf(highchartsRenderer.getOthersName(opts));
8647
- if (othersIndex !== -1) {
8648
- cols[othersIndex] = 'DR_Others';
8649
- }
8650
- if (point.options.isTotal) {
8651
- rows = [];
8652
- } else {
8653
- rows = cols;
8654
- cols = [];
8655
- }
8656
- return { rows, cols };
8657
- }
8658
-
8659
8288
  return highchartsRenderer;
8660
8289
  };
8661
8290