handsontable 0.0.0-next-0c0e2e5-20231027 → 0.0.0-next-3344a1b-20231030

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of handsontable might be problematic. Click here for more details.

package/helpers/mixed.js CHANGED
@@ -134,7 +134,7 @@ const domMessages = {
134
134
  function _injectProductInfo(key, element) {
135
135
  const hasValidType = !isEmpty(key);
136
136
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
137
- const hotVersion = "0.0.0-next-0c0e2e5-20231027";
137
+ const hotVersion = "0.0.0-next-3344a1b-20231030";
138
138
  let keyValidityDate;
139
139
  let consoleMessageState = 'invalid';
140
140
  let domMessageState = 'invalid';
package/helpers/mixed.mjs CHANGED
@@ -124,7 +124,7 @@ const domMessages = {
124
124
  export function _injectProductInfo(key, element) {
125
125
  const hasValidType = !isEmpty(key);
126
126
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
127
- const hotVersion = "0.0.0-next-0c0e2e5-20231027";
127
+ const hotVersion = "0.0.0-next-3344a1b-20231030";
128
128
  let keyValidityDate;
129
129
  let consoleMessageState = 'invalid';
130
130
  let domMessageState = 'invalid';
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "url": "https://github.com/handsontable/handsontable/issues"
11
11
  },
12
12
  "author": "Handsoncode <hello@handsontable.com>",
13
- "version": "0.0.0-next-0c0e2e5-20231027",
13
+ "version": "0.0.0-next-3344a1b-20231030",
14
14
  "main": "index",
15
15
  "module": "index.mjs",
16
16
  "jsnext:main": "index.mjs",
@@ -288,8 +288,12 @@ class Filters extends _base.BasePlugin {
288
288
  keys: [['Alt', 'A']],
289
289
  stopPropagation: true,
290
290
  callback: () => {
291
+ const selection = this.hot.getSelected();
291
292
  this.clearConditions();
292
293
  this.filter();
294
+ if (selection) {
295
+ this.hot.selectCells(selection);
296
+ }
293
297
  },
294
298
  group: SHORTCUTS_GROUP
295
299
  });
@@ -462,6 +466,9 @@ class Filters extends _base.BasePlugin {
462
466
  * @fires Hooks#afterFilter
463
467
  */
464
468
  filter() {
469
+ const {
470
+ navigableHeaders
471
+ } = this.hot.getSettings();
465
472
  const dataFilter = this._createDataFilter();
466
473
  const needToFilter = !this.conditionCollection.isEmpty();
467
474
  let visibleVisualRows = [];
@@ -483,7 +490,7 @@ class Filters extends _base.BasePlugin {
483
490
  this.filtersRowsMap.setValueAtIndex(physicalRow, true);
484
491
  });
485
492
  }, true);
486
- if (!visibleVisualRows.length) {
493
+ if (!navigableHeaders && !visibleVisualRows.length) {
487
494
  this.hot.deselectCell();
488
495
  }
489
496
  } else {
@@ -493,6 +500,9 @@ class Filters extends _base.BasePlugin {
493
500
  this.hot.runHooks('afterFilter', conditions);
494
501
  this.hot.view.adjustElementsSize(true);
495
502
  this.hot.render();
503
+ if (this.hot.selection.isSelected()) {
504
+ this.hot.selectCell(navigableHeaders ? -1 : 0, this.hot.getSelectedRangeLast().highlight.col);
505
+ }
496
506
  }
497
507
 
498
508
  /**
@@ -698,7 +708,6 @@ class Filters extends _base.BasePlugin {
698
708
  this.components.forEach(component => component.saveState(physicalIndex));
699
709
  this.filtersRowsMap.clear();
700
710
  this.filter();
701
- this.hot.selectCell(0, selectedColumn.visualIndex);
702
711
  }
703
712
  (_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 || _this$dropdownMenuPlu3.close();
704
713
  }
@@ -280,8 +280,12 @@ export class Filters extends BasePlugin {
280
280
  keys: [['Alt', 'A']],
281
281
  stopPropagation: true,
282
282
  callback: () => {
283
+ const selection = this.hot.getSelected();
283
284
  this.clearConditions();
284
285
  this.filter();
286
+ if (selection) {
287
+ this.hot.selectCells(selection);
288
+ }
285
289
  },
286
290
  group: SHORTCUTS_GROUP
287
291
  });
@@ -454,6 +458,9 @@ export class Filters extends BasePlugin {
454
458
  * @fires Hooks#afterFilter
455
459
  */
456
460
  filter() {
461
+ const {
462
+ navigableHeaders
463
+ } = this.hot.getSettings();
457
464
  const dataFilter = this._createDataFilter();
458
465
  const needToFilter = !this.conditionCollection.isEmpty();
459
466
  let visibleVisualRows = [];
@@ -475,7 +482,7 @@ export class Filters extends BasePlugin {
475
482
  this.filtersRowsMap.setValueAtIndex(physicalRow, true);
476
483
  });
477
484
  }, true);
478
- if (!visibleVisualRows.length) {
485
+ if (!navigableHeaders && !visibleVisualRows.length) {
479
486
  this.hot.deselectCell();
480
487
  }
481
488
  } else {
@@ -485,6 +492,9 @@ export class Filters extends BasePlugin {
485
492
  this.hot.runHooks('afterFilter', conditions);
486
493
  this.hot.view.adjustElementsSize(true);
487
494
  this.hot.render();
495
+ if (this.hot.selection.isSelected()) {
496
+ this.hot.selectCell(navigableHeaders ? -1 : 0, this.hot.getSelectedRangeLast().highlight.col);
497
+ }
488
498
  }
489
499
 
490
500
  /**
@@ -690,7 +700,6 @@ export class Filters extends BasePlugin {
690
700
  this.components.forEach(component => component.saveState(physicalIndex));
691
701
  this.filtersRowsMap.clear();
692
702
  this.filter();
693
- this.hot.selectCell(0, selectedColumn.visualIndex);
694
703
  }
695
704
  (_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 || _this$dropdownMenuPlu3.close();
696
705
  }