@datarailsshared/dr_renderer 1.2.273 → 1.2.275

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.273",
3
+ "version": "1.2.275",
4
4
  "description": "DataRails charts and tables renderer",
5
5
  "keywords": [
6
6
  "datarails",
@@ -2504,6 +2504,9 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
2504
2504
  };
2505
2505
  }
2506
2506
 
2507
+ chartOptions.plotOptions.series.point.events.mouseOver = opts.insightsTooltipFunc;
2508
+ chartOptions.plotOptions.series.point.events.mouseOut = opts.insightsTooltipFunc;
2509
+
2507
2510
  chartOptions.tooltip = {
2508
2511
  formatter: highchartsRenderer.defaultFormatterToTooltip(pivotData, opts),
2509
2512
  valueDecimals: 2,
@@ -2583,6 +2586,9 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
2583
2586
  };
2584
2587
  }
2585
2588
 
2589
+ chartOptions.plotOptions.series.point.events.mouseOver = opts.insightsTooltipFunc;
2590
+ chartOptions.plotOptions.series.point.events.mouseOut = opts.insightsTooltipFunc;
2591
+
2586
2592
  chartOptions.tooltip = {
2587
2593
  formatter: highchartsRenderer.defaultFormatterToTooltip(pivotData, opts),
2588
2594
  valueDecimals: 2,
@@ -2675,6 +2681,9 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
2675
2681
  };
2676
2682
  }
2677
2683
 
2684
+ chartOptions.plotOptions.series.point.events.mouseOver = opts.insightsTooltipFunc;
2685
+ chartOptions.plotOptions.series.point.events.mouseOut = opts.insightsTooltipFunc;
2686
+
2678
2687
  chartOptions.tooltip = {
2679
2688
  formatter: highchartsRenderer.defaultFormatterToTooltip(pivotData, opts),
2680
2689
  valueDecimals: 2,
@@ -2951,6 +2960,8 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
2951
2960
  }
2952
2961
  };
2953
2962
  }
2963
+ chartOptions.plotOptions.series.point.events.mouseOver = opts.insightsTooltipFunc;
2964
+ chartOptions.plotOptions.series.point.events.mouseOut = opts.insightsTooltipFunc;
2954
2965
 
2955
2966
  chartOptions.legend = highchartsRenderer.getOptionsForLegends(additionOptions, rowAttrs.length, false);
2956
2967
 
@@ -3084,6 +3095,10 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
3084
3095
  }
3085
3096
  };
3086
3097
  }
3098
+
3099
+ chartOptions.plotOptions.series.point.events.mouseOver = opts.insightsTooltipFunc;
3100
+ chartOptions.plotOptions.series.point.events.mouseOut = opts.insightsTooltipFunc;
3101
+
3087
3102
  chartOptions.xAxis = {
3088
3103
  type: 'category',
3089
3104
  crosshair: true,
@@ -3265,6 +3280,10 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
3265
3280
  }
3266
3281
  };
3267
3282
  }
3283
+
3284
+ chartOptions.plotOptions.series.point.events.mouseOver = opts.insightsTooltipFunc;
3285
+ chartOptions.plotOptions.series.point.events.mouseOut = opts.insightsTooltipFunc;
3286
+
3268
3287
  chartOptions.legend = highchartsRenderer.getOptionsForLegends(additionOptions, rowAttrs.length, false);
3269
3288
 
3270
3289
  return highchartsRenderer.ptCreateElementAndDraw(chartOptions, opts);
@@ -3343,6 +3362,9 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
3343
3362
  };
3344
3363
  }
3345
3364
 
3365
+ chartOptions.plotOptions.series.point.events.mouseOver = opts.insightsTooltipFunc;
3366
+ chartOptions.plotOptions.series.point.events.mouseOut = opts.insightsTooltipFunc;
3367
+
3346
3368
  chartOptions.xAxis = {
3347
3369
  categories: pivotData.getColKeys(),
3348
3370
  title: {
@@ -3452,6 +3474,9 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
3452
3474
  };
3453
3475
  }
3454
3476
 
3477
+ chartOptions.plotOptions.series.point.events.mouseOver = opts.insightsTooltipFunc;
3478
+ chartOptions.plotOptions.series.point.events.mouseOut = opts.insightsTooltipFunc;
3479
+
3455
3480
  chartOptions.legend = highchartsRenderer.getOptionsForLegends(additionOptions, 3, false);
3456
3481
  chartOptions.legend.useHTML = true;
3457
3482
  chartOptions.legend.labelFormatter = function() {
@@ -3567,6 +3592,10 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
3567
3592
  }
3568
3593
  };
3569
3594
  }
3595
+
3596
+ chartOptions.plotOptions.series.point.events.mouseOver = opts.insightsTooltipFunc;
3597
+ chartOptions.plotOptions.series.point.events.mouseOut = opts.insightsTooltipFunc;
3598
+
3570
3599
  if (waterfallOptions.colors) {
3571
3600
  chartOptions.legend = highchartsRenderer.getOptionsForLegends(additionOptions, 3, false);
3572
3601
  chartOptions.legend.useHTML = true;
@@ -4222,155 +4251,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
4222
4251
  };
4223
4252
  };
4224
4253
 
4225
- highchartsRenderer.createTotalColFiltersArr = function (colKeys, colTotals, totalFilters, pivotData) {
4226
- var colIndexesToFilter = []
4227
- if (!totalFilters || !totalFilters.type)
4228
- return colIndexesToFilter
4229
-
4230
- var colTotalsWithoutSubTotals = {};
4231
- var i, flatKey;
4232
- for (i in colKeys) {
4233
- flatKey = colKeys[i].join($.pivotUtilities.delim);
4234
- if (colTotals[flatKey])
4235
- colTotalsWithoutSubTotals[flatKey] = colTotals[flatKey];
4236
- }
4237
-
4238
- var filterFunc = highchartsRenderer.getTotalsFilter(totalFilters.type, totalFilters.value, totalFilters.is_absolute, colTotalsWithoutSubTotals)
4239
- for (var j in colKeys) {
4240
- var totalVal = pivotData.getAggregator([], colKeys[j]).value();
4241
- if (filterFunc(totalVal)) {
4242
- colIndexesToFilter.push(j)
4243
- }
4244
- }
4245
-
4246
- let keyAttListToFilter = [];
4247
- for (var attr in pivotData.colAttrs) {
4248
- for (var key in pivotData.colKeys) {
4249
- if ($.inArray(key, colIndexesToFilter) >= 0) {
4250
- keyAttListToFilter.push(pivotData.colKeys[key])
4251
- }
4252
- }
4253
- }
4254
- return keyAttListToFilter;
4255
- };
4256
-
4257
- highchartsRenderer.createTotalRowFiltersArr = function (rowKeys, rowTotals, totalFilters, pivotData) {
4258
- var rowIndexesToFilter = [];
4259
- if (!totalFilters || !totalFilters.type)
4260
- return rowIndexesToFilter;
4261
-
4262
- var rowTotalsWithoutSubTotals = {};
4263
- var i, flatKey;
4264
- for (i in rowKeys) {
4265
- flatKey = rowKeys[i].join($.pivotUtilities.delim);
4266
- if (rowTotals[flatKey])
4267
- rowTotalsWithoutSubTotals[flatKey] = rowTotals[flatKey];
4268
- }
4269
-
4270
- var filterFunc = highchartsRenderer.getTotalsFilter(totalFilters.type, totalFilters.value, totalFilters.is_absolute, rowTotalsWithoutSubTotals)
4271
- for (var j in rowKeys) {
4272
- var totalVal = pivotData.getAggregator(rowKeys[j], []).value();
4273
- if (filterFunc(totalVal)) {
4274
- rowIndexesToFilter.push(j)
4275
- }
4276
- }
4277
-
4278
- let keyAttListToFilter = [];
4279
- for (var attr in pivotData.rowAttrs) {
4280
- for (var key in pivotData.rowKeys) {
4281
- if ($.inArray(key, rowIndexesToFilter) >= 0) {
4282
- keyAttListToFilter.push(pivotData.rowKeys[key])
4283
- }
4284
- }
4285
- }
4286
- return keyAttListToFilter;
4287
- };
4288
-
4289
- highchartsRenderer.getTotalsFilter = function (type, vals, is_absolute, totals) {
4290
- var filter = (a) => false;
4291
- switch (type) {
4292
- case "filter_above":
4293
- if (is_absolute)
4294
- filter = (a) => Math.abs(a) <= vals[0];
4295
- else
4296
- filter = (a) => a <= vals[0];
4297
- break;
4298
- case "filter_below":
4299
- if (is_absolute)
4300
- filter = (a) => Math.abs(a) >= vals[0];
4301
- else
4302
- filter = (a) => a >= vals[0];
4303
- break;
4304
- case "filter_between":
4305
- if (is_absolute)
4306
- filter = (a) => Math.abs(a) <= vals[0] || Math.abs(a) >= vals[1];
4307
- else
4308
- filter = (a) => a <= vals[0] || a >= vals[1];
4309
- break;
4310
- case "filter_out_of_range":
4311
- if (is_absolute)
4312
- filter = (a) => Math.abs(a) >= vals[0] && Math.abs(a) <= vals[1];
4313
- else
4314
- filter = (a) => a >= vals[0] && a <= vals[1];
4315
- break;
4316
- case "filter_top_x":
4317
- var topx;
4318
- if (is_absolute)
4319
- topx = lodash.map(totals, (x) => Math.abs(x.value())).filter((v, i, a) => a.indexOf(v) === i).sort((a, b) => b - a).slice(0, vals[0]).pop();
4320
- else
4321
- topx = lodash.map(totals, (x) => x.value()).filter((v, i, a) => a.indexOf(v) === i).sort((a, b) => b - a).slice(0, vals[0]).pop();
4322
-
4323
- if (topx != undefined) {
4324
- if (is_absolute)
4325
- filter = (a) => Math.abs(a) < topx;
4326
- else
4327
- filter = (a) => a < topx;
4328
- }
4329
- break;
4330
- case "filter_bottom_x":
4331
- var bottomx;
4332
- if (is_absolute)
4333
- bottomx = lodash.map(totals, (x) => Math.abs(x.value())).filter((v, i, a) => a.indexOf(v) === i).sort((a, b) => a - b).slice(0, vals[0]).pop();
4334
- else
4335
- bottomx = lodash.map(totals, (x) => x.value()).filter((v, i, a) => a.indexOf(v) === i).sort((a, b) => a - b).slice(0, vals[0]).pop();
4336
-
4337
- if (bottomx != undefined) {
4338
- if (is_absolute)
4339
- filter = (a) => Math.abs(a) > bottomx;
4340
- else
4341
- filter = (a) => a > bottomx;
4342
- }
4343
- break;
4344
- case "filter_smallest":
4345
- const smallest_sumOfFields = lodash.reduce(totals, (acc, curr) => acc += curr.sum, 0);
4346
- const smallest = Math.floor((smallest_sumOfFields * vals[0])/100);
4347
-
4348
- if (is_absolute)
4349
- filter = (a) => Math.abs(a) > smallest;
4350
- else
4351
- filter = (a) => a > smallest;
4352
- break;
4353
- case "filter_largest":
4354
- const largest_sumOfFields = lodash.reduce(totals, (acc, curr) => acc += curr.sum, 0);
4355
- const largest = Math.floor((largest_sumOfFields * vals[0])/100);
4356
-
4357
- if (is_absolute)
4358
- filter = (a) => Math.abs(a) < largest;
4359
- else
4360
- filter = (a) => a < largest;
4361
- break;
4362
- case "filter_out_zero":
4363
- if (is_absolute)
4364
- filter = (a) => Math.abs(a) == 0;
4365
- else
4366
- filter = (a) => a == 0;
4367
- break;
4368
- default:
4369
-
4370
- }
4371
- return filter;
4372
- };
4373
-
4374
4254
  highchartsRenderer.getAxis = function (axis, opts, farceIsTable = false) {
4375
4255
  let is_transpose = lodash.get(opts, 'rendererOptions.chartOptions.table_options.transpose_table', false);
4376
4256
  let is_table = opts.isTable;
@@ -4384,43 +4264,6 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
4384
4264
  return axis;
4385
4265
  };
4386
4266
 
4387
- highchartsRenderer.generateFilteredResult = function (totalFilters, optsFiltered, rowData, opts, pivotData) {
4388
- let keyAttListToFilter;
4389
- let axis = highchartsRenderer.getAxis(totalFilters.filter_options.axis, opts);
4390
-
4391
- if (axis == 'col_total') {
4392
- keyAttListToFilter = highchartsRenderer.createTotalColFiltersArr(pivotData.colKeys, pivotData.colTotals, totalFilters.filter_options, pivotData);
4393
- return highchartsRenderer.generateFilteredResultForRowAndCol(keyAttListToFilter, optsFiltered, pivotData.colAttrs, rowData, opts, pivotData);
4394
- } else if (axis == 'row_total') {
4395
- keyAttListToFilter = highchartsRenderer.createTotalRowFiltersArr(pivotData.rowKeys, pivotData.rowTotals, totalFilters.filter_options, pivotData);
4396
- return highchartsRenderer.generateFilteredResultForRowAndCol(keyAttListToFilter, optsFiltered, pivotData.rowAttrs, rowData, opts, pivotData);
4397
- } else {
4398
- return opts.renderer(pivotData, opts.rendererOptions);
4399
- }
4400
- };
4401
-
4402
- highchartsRenderer.generateFilteredResultForRowAndCol = function (keyAttListToFilter, optsFiltered, attrs, rowData, opts, pivotData) {
4403
- let pivotDataFiltered = pivotData;
4404
- if (!lodash.isEmpty(keyAttListToFilter)) {
4405
- var myfilter = function (rec) {
4406
- for (var i in keyAttListToFilter) {
4407
- var allsame = true;
4408
- var find_one = lodash.find(attrs, function (val, j) {
4409
- return ((rec[val] != keyAttListToFilter[i][j]) && !(!rec[val] && keyAttListToFilter[i][j] == "null"))
4410
- });
4411
- if (find_one == undefined) {
4412
- return false;
4413
- }
4414
- }
4415
- return true;
4416
- }
4417
- optsFiltered.filter = myfilter;
4418
-
4419
- pivotDataFiltered = $.pivotUtilities.getPivotDataModel(rowData, optsFiltered);
4420
- }
4421
- return opts.renderer(pivotDataFiltered, opts.rendererOptions);
4422
- };
4423
-
4424
4267
  highchartsRenderer.sanitizeOptions = function (opts) {
4425
4268
  if (opts && opts.rendererOptions) {
4426
4269
  if (opts.rendererOptions.chart_title) {
@@ -5259,7 +5102,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
5259
5102
  options.chartOptions = lodash.merge(defaultOptions, options.chartOptions);
5260
5103
  };
5261
5104
 
5262
- highchartsRenderer.addPivotOptions = function (selectedTemplateWOData, widgetOptions, drilldownFunction, drillDownListFunction) {
5105
+ highchartsRenderer.addPivotOptions = function (selectedTemplateWOData, widgetOptions, drilldownFunction, drillDownListFunction, insightsTooltipFunction) {
5263
5106
  // Check if not rendered data, than it will render
5264
5107
 
5265
5108
  var fields = highchartsRenderer.objectCopyJsonMethod(selectedTemplateWOData.fields);
@@ -5269,6 +5112,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
5269
5112
  var valuesFields = [];
5270
5113
  var drilldownFunc = drilldownFunction;
5271
5114
  var drillDownListFunc = drillDownListFunction;
5115
+ var insightsTooltipFunc = insightsTooltipFunction;
5272
5116
 
5273
5117
  // fill value fields
5274
5118
  lodash.forEach(widgetOptions.vals, function (valObj) {
@@ -5323,7 +5167,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
5323
5167
  widgetOptions.pivot.valuesArray = valuesFields;
5324
5168
  widgetOptions.pivot.chartType = widgetOptions.chart_type;
5325
5169
  widgetOptions.pivot.chartOptions = widgetOptions.options;
5326
- widgetOptions.pivot.chartRender = highchartsRenderer.getChartRendererFunction(widgetOptions.pivot.chartType, drilldownFunc, drillDownListFunc);
5170
+ widgetOptions.pivot.chartRender = highchartsRenderer.getChartRendererFunction(widgetOptions.pivot.chartType, drilldownFunc, drillDownListFunc, insightsTooltipFunc);
5327
5171
 
5328
5172
  // TODO: remove this logic after BE sort is implemented
5329
5173
  // it is required to do sort by totals for comparative analysis - we need to change deltas if columns swaped vice versa
@@ -5853,7 +5697,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
5853
5697
  return toReturn;
5854
5698
  };
5855
5699
 
5856
- highchartsRenderer.getChartRendererFunction = function (newChartType, drilldownFunc, drillDownListFunc) {
5700
+ highchartsRenderer.getChartRendererFunction = function (newChartType, drilldownFunc, drillDownListFunc, insightsTooltipFunc) {
5857
5701
  var fnToReturn = null;
5858
5702
 
5859
5703
  if (newChartType == highchartsRenderer.richTextSubType.type) {
@@ -5881,6 +5725,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
5881
5725
  opt = {};
5882
5726
  }
5883
5727
  opt.drillDownListFunc = drillDownListFunc;
5728
+ opt.insightsTooltipFunc = insightsTooltipFunc;
5884
5729
  } else {
5885
5730
  opt.drillDownListFunc = null;
5886
5731
  }
@@ -7479,8 +7324,7 @@ let getHighchartsRenderer = function ($, document, Highcharts, default_colors, h
7479
7324
  },
7480
7325
  };
7481
7326
 
7482
- highchartsRenderer.chartsData =
7483
- [
7327
+ highchartsRenderer.chartsData = [
7484
7328
  {
7485
7329
  type: 'line',
7486
7330
  name: 'Line',