ngx-deebodata 0.3.3 → 0.3.5

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.
@@ -2595,7 +2595,10 @@ class RowGroupPanel {
2595
2595
  const dtb = this.panelDataGrid?.nativeElement;
2596
2596
  if (dtb) {
2597
2597
  const lfs = this.dataTableService.listenForScroll();
2598
- this.execVertScrollUp(this.columns, this.columns.length, dtb.scrollTop, true);
2598
+ if (this.scrollDir === "down")
2599
+ this.execVertScrollUp(this.columns, this.columns.length, dtb.scrollTop, true);
2600
+ else
2601
+ this.execVertScrollDown(this.columns, this.columns.length, dtb.scrollTop, true);
2599
2602
  this.handleScrollEnd();
2600
2603
  this.execHorizScroll(dtb.scrollLeft);
2601
2604
  if (lfs && this.rows.some(r => r.height !== this.dataTableService.defltRHgt))
@@ -2839,9 +2842,9 @@ class RowGroupPanel {
2839
2842
  }
2840
2843
  getLastRowBot() {
2841
2844
  const els = document.getElementsByClassName("rows-for-" + this.elifyGrouping);
2842
- return els[els.length - 1].getBoundingClientRect()?.bottom || this.tblBot;
2845
+ return els[els.length - 1]?.getBoundingClientRect()?.bottom || this.tblBot;
2843
2846
  }
2844
- execVertScrollDown(cols, colLen, currTop) {
2847
+ execVertScrollDown(cols, colLen, currTop, force) {
2845
2848
  let gap = this.tblBot - this.getLastRowBot();
2846
2849
  this.fixRowContainer(gap);
2847
2850
  timer(0).subscribe(() => {
@@ -2849,7 +2852,7 @@ class RowGroupPanel {
2849
2852
  let rows = [];
2850
2853
  let canAdd = 0;
2851
2854
  const maxRows = this.rows.length;
2852
- const doRows = (!this.isScrolling && (gap == 0 || !this.dataTableService.mouseIsDown)) || currTop % this.doRowsMod === 0;
2855
+ const doRows = force || (!this.isScrolling && (gap == 0 || !this.dataTableService.mouseIsDown)) || currTop % this.doRowsMod === 0;
2853
2856
  const bel = this.belowArea.nativeElement;
2854
2857
  const bbds = bel.getBoundingClientRect();
2855
2858
  const btop = bbds.top;
@@ -5287,6 +5290,12 @@ class NgxDeebodata {
5287
5290
  processGrouping(group) {
5288
5291
  if (!group)
5289
5292
  return this.resetCurrentData();
5293
+ const dtb = this.dataTableBody?.nativeElement;
5294
+ this.horizRest.set(0);
5295
+ if (dtb) {
5296
+ dtb.scrollLeft = 0;
5297
+ dtb.scrollTop = 0;
5298
+ }
5290
5299
  this.verticalRest = 0;
5291
5300
  this.rows = [];
5292
5301
  this.aboveHgt.set(0);
@@ -5298,7 +5307,6 @@ class NgxDeebodata {
5298
5307
  this.dataTableService.currSelRows = [];
5299
5308
  this.dataTableService.displayOnlySelRows = false;
5300
5309
  this.dataTableService.currGroup = group;
5301
- this.dataTableBody.nativeElement.scrollTop = 0;
5302
5310
  this.currGroupValues.set(this.dataTableService.dataFilSrtTracker[group]?.["selDDVals"]?.filter((g) => g.value !== "(Select All)"));
5303
5311
  setTimeout(() => { this.rows = []; });
5304
5312
  }
@@ -6004,7 +6012,10 @@ class NgxDeebodata {
6004
6012
  const dtb = this.dataTableBody?.nativeElement;
6005
6013
  if (dtb) {
6006
6014
  const lfs = this.dataTableService.listenForScroll();
6007
- this.execVertScrollUp(this.columnNames, this.columnNames.length, dtb.scrollTop, true);
6015
+ if (this.scrollDir === "down")
6016
+ this.execVertScrollUp(this.columnNames, this.columnNames.length, dtb.scrollTop, true);
6017
+ else
6018
+ this.execVertScrollDown(this.columnNames, this.columnNames.length, dtb.scrollTop, true);
6008
6019
  this.handleScrollEnd();
6009
6020
  this.execHorizScroll(dtb.scrollLeft);
6010
6021
  if (lfs && this.rows.some(r => r.height !== this.dataTableService.defltRHgt))
@@ -6283,9 +6294,9 @@ class NgxDeebodata {
6283
6294
  }
6284
6295
  getLastRowBot() {
6285
6296
  const els = document.getElementsByClassName("data-table-row");
6286
- return els[els.length - 1].getBoundingClientRect()?.bottom || this.dataTableService.tblBot;
6297
+ return els[els.length - 1]?.getBoundingClientRect()?.bottom || this.dataTableService.tblBot;
6287
6298
  }
6288
- execVertScrollDown(cols, colLen, currTop) {
6299
+ execVertScrollDown(cols, colLen, currTop, force) {
6289
6300
  let gap = this.dataTableService.tblBot - this.getLastRowBot();
6290
6301
  this.fixRowContainer(gap);
6291
6302
  timer(0).subscribe(() => {
@@ -6293,7 +6304,7 @@ class NgxDeebodata {
6293
6304
  let rows = [];
6294
6305
  let canAdd = 0;
6295
6306
  const maxRows = this.rows.length;
6296
- const doRows = (!this.isScrolling && (gap == 0 || !this.dataTableService.mouseIsDown)) || currTop % this.doRowsMod === 0 || this.belowHgt() === 0;
6307
+ const doRows = force || (!this.isScrolling && (gap == 0 || !this.dataTableService.mouseIsDown)) || currTop % this.doRowsMod === 0 || this.belowHgt() === 0;
6297
6308
  const bel = this.belowArea.nativeElement;
6298
6309
  const bbds = bel.getBoundingClientRect();
6299
6310
  const btop = bbds.top;