handsontable 14.0.0-next-d97b156-20231027 → 14.0.0-next-c22ab6f-20231030

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/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 = "14.0.0-next-d97b156-20231027";
137
+ const hotVersion = "14.0.0-next-c22ab6f-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 = "14.0.0-next-d97b156-20231027";
127
+ const hotVersion = "14.0.0-next-c22ab6f-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": "14.0.0-next-d97b156-20231027",
13
+ "version": "14.0.0-next-c22ab6f-20231030",
14
14
  "main": "index",
15
15
  "module": "index.mjs",
16
16
  "jsnext:main": "index.mjs",
@@ -286,8 +286,12 @@ class Filters extends _base.BasePlugin {
286
286
  keys: [['Alt', 'A']],
287
287
  stopPropagation: true,
288
288
  callback: () => {
289
+ const selection = this.hot.getSelected();
289
290
  this.clearConditions();
290
291
  this.filter();
292
+ if (selection) {
293
+ this.hot.selectCells(selection);
294
+ }
291
295
  },
292
296
  group: SHORTCUTS_GROUP
293
297
  });
@@ -460,6 +464,9 @@ class Filters extends _base.BasePlugin {
460
464
  * @fires Hooks#afterFilter
461
465
  */
462
466
  filter() {
467
+ const {
468
+ navigableHeaders
469
+ } = this.hot.getSettings();
463
470
  const dataFilter = this._createDataFilter();
464
471
  const needToFilter = !this.conditionCollection.isEmpty();
465
472
  let visibleVisualRows = [];
@@ -481,7 +488,7 @@ class Filters extends _base.BasePlugin {
481
488
  this.filtersRowsMap.setValueAtIndex(physicalRow, true);
482
489
  });
483
490
  }, true);
484
- if (!visibleVisualRows.length) {
491
+ if (!navigableHeaders && !visibleVisualRows.length) {
485
492
  this.hot.deselectCell();
486
493
  }
487
494
  } else {
@@ -491,6 +498,9 @@ class Filters extends _base.BasePlugin {
491
498
  this.hot.runHooks('afterFilter', conditions);
492
499
  this.hot.view.adjustElementsSize(true);
493
500
  this.hot.render();
501
+ if (this.hot.selection.isSelected()) {
502
+ this.hot.selectCell(navigableHeaders ? -1 : 0, this.hot.getSelectedRangeLast().highlight.col);
503
+ }
494
504
  }
495
505
 
496
506
  /**
@@ -696,7 +706,6 @@ class Filters extends _base.BasePlugin {
696
706
  this.components.forEach(component => component.saveState(physicalIndex));
697
707
  this.filtersRowsMap.clear();
698
708
  this.filter();
699
- this.hot.selectCell(0, selectedColumn.visualIndex);
700
709
  }
701
710
  (_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 || _this$dropdownMenuPlu3.close();
702
711
  }
@@ -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
  }