handsontable 0.0.0-next-3c2766c-20240422 → 0.0.0-next-442dd51-20240422

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.

Files changed (119) hide show
  1. package/3rdparty/walkontable/src/calculator/viewportColumns.js +2 -2
  2. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +2 -2
  3. package/3rdparty/walkontable/src/calculator/viewportRows.js +1 -1
  4. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +1 -1
  5. package/3rdparty/walkontable/src/overlay/_base.js +20 -24
  6. package/3rdparty/walkontable/src/overlay/_base.mjs +20 -24
  7. package/3rdparty/walkontable/src/overlay/bottom.js +6 -3
  8. package/3rdparty/walkontable/src/overlay/bottom.mjs +6 -3
  9. package/3rdparty/walkontable/src/overlay/inlineStart.js +6 -3
  10. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +6 -3
  11. package/3rdparty/walkontable/src/overlay/top.js +6 -3
  12. package/3rdparty/walkontable/src/overlay/top.mjs +6 -3
  13. package/3rdparty/walkontable/src/overlays.js +24 -46
  14. package/3rdparty/walkontable/src/overlays.mjs +24 -46
  15. package/3rdparty/walkontable/src/selection/manager.js +0 -7
  16. package/3rdparty/walkontable/src/selection/manager.mjs +0 -7
  17. package/3rdparty/walkontable/src/selection/scanner.js +0 -7
  18. package/3rdparty/walkontable/src/selection/scanner.mjs +0 -7
  19. package/3rdparty/walkontable/src/table.js +11 -10
  20. package/3rdparty/walkontable/src/table.mjs +11 -10
  21. package/base.js +2 -2
  22. package/base.mjs +2 -2
  23. package/core.js +0 -7
  24. package/core.mjs +0 -7
  25. package/dataMap/metaManager/lazyFactoryMap.js +0 -7
  26. package/dataMap/metaManager/lazyFactoryMap.mjs +0 -7
  27. package/dataMap/metaManager/mods/dynamicCellMeta.js +0 -7
  28. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +0 -7
  29. package/dataMap/metaManager/mods/extendMetaProperties.js +31 -44
  30. package/dataMap/metaManager/mods/extendMetaProperties.mjs +31 -44
  31. package/dataMap/metaManager/utils.js +0 -7
  32. package/dataMap/metaManager/utils.mjs +0 -7
  33. package/dist/handsontable.css +2 -2
  34. package/dist/handsontable.full.css +2 -2
  35. package/dist/handsontable.full.js +3780 -10138
  36. package/dist/handsontable.full.min.css +2 -2
  37. package/dist/handsontable.full.min.js +84 -276
  38. package/dist/handsontable.js +2522 -3361
  39. package/dist/handsontable.min.css +2 -2
  40. package/dist/handsontable.min.js +18 -18
  41. package/helpers/array.js +0 -7
  42. package/helpers/array.mjs +0 -7
  43. package/helpers/mixed.js +1 -1
  44. package/helpers/mixed.mjs +1 -1
  45. package/helpers/number.js +2 -12
  46. package/helpers/number.mjs +2 -12
  47. package/package.json +7 -5
  48. package/plugins/autoColumnSize/autoColumnSize.js +0 -7
  49. package/plugins/autoColumnSize/autoColumnSize.mjs +0 -7
  50. package/plugins/autoRowSize/autoRowSize.js +2 -2
  51. package/plugins/autoRowSize/autoRowSize.mjs +2 -2
  52. package/plugins/collapsibleColumns/collapsibleColumns.js +1 -1
  53. package/plugins/collapsibleColumns/collapsibleColumns.mjs +1 -1
  54. package/plugins/columnSorting/utils.js +0 -7
  55. package/plugins/columnSorting/utils.mjs +0 -7
  56. package/plugins/comments/comments.js +8 -2
  57. package/plugins/comments/comments.mjs +8 -2
  58. package/plugins/filters/filters.js +1 -1
  59. package/plugins/filters/filters.mjs +1 -1
  60. package/plugins/filters/ui/multipleSelect.js +12 -15
  61. package/plugins/filters/ui/multipleSelect.mjs +12 -15
  62. package/plugins/filters/utils.js +0 -7
  63. package/plugins/filters/utils.mjs +0 -7
  64. package/plugins/formulas/formulas.js +0 -7
  65. package/plugins/formulas/formulas.mjs +0 -7
  66. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -1
  67. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +1 -1
  68. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +1 -1
  69. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +1 -1
  70. package/plugins/hiddenColumns/hiddenColumns.js +0 -7
  71. package/plugins/hiddenColumns/hiddenColumns.mjs +0 -7
  72. package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -1
  73. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +1 -1
  74. package/plugins/hiddenRows/contextMenuItem/showRow.js +1 -1
  75. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +1 -1
  76. package/plugins/hiddenRows/hiddenRows.js +0 -7
  77. package/plugins/hiddenRows/hiddenRows.mjs +0 -7
  78. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
  79. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  80. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
  81. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  82. package/plugins/manualColumnMove/manualColumnMove.js +1 -1
  83. package/plugins/manualColumnMove/manualColumnMove.mjs +1 -1
  84. package/plugins/manualColumnResize/manualColumnResize.js +2 -2
  85. package/plugins/manualColumnResize/manualColumnResize.mjs +2 -2
  86. package/plugins/manualRowMove/manualRowMove.js +1 -1
  87. package/plugins/manualRowMove/manualRowMove.mjs +1 -1
  88. package/plugins/manualRowResize/manualRowResize.js +2 -2
  89. package/plugins/manualRowResize/manualRowResize.mjs +2 -2
  90. package/plugins/mergeCells/cellsCollection.js +0 -7
  91. package/plugins/mergeCells/cellsCollection.mjs +0 -7
  92. package/plugins/mergeCells/mergeCells.js +0 -7
  93. package/plugins/mergeCells/mergeCells.mjs +0 -7
  94. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +0 -7
  95. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +0 -7
  96. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +0 -7
  97. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +0 -7
  98. package/plugins/nestedRows/nestedRows.js +0 -7
  99. package/plugins/nestedRows/nestedRows.mjs +0 -7
  100. package/plugins/trimRows/trimRows.js +0 -7
  101. package/plugins/trimRows/trimRows.mjs +0 -7
  102. package/selection/selection.js +0 -7
  103. package/selection/selection.mjs +0 -7
  104. package/selection/utils.js +0 -7
  105. package/selection/utils.mjs +0 -7
  106. package/shortcuts/keyObserver.js +0 -7
  107. package/shortcuts/keyObserver.mjs +0 -7
  108. package/shortcuts/utils.js +0 -7
  109. package/shortcuts/utils.mjs +0 -7
  110. package/tableView.js +4 -1
  111. package/tableView.mjs +4 -1
  112. package/translations/changesObservable/observable.js +0 -7
  113. package/translations/changesObservable/observable.mjs +0 -7
  114. package/translations/indexMapper.js +0 -7
  115. package/translations/indexMapper.mjs +1 -8
  116. package/utils/dataStructures/uniqueSet.js +0 -7
  117. package/utils/dataStructures/uniqueSet.mjs +0 -7
  118. package/utils/paginator.js +0 -7
  119. package/utils/paginator.mjs +0 -7
package/helpers/array.js CHANGED
@@ -19,13 +19,6 @@ exports.pivot = pivot;
19
19
  exports.stringToArray = stringToArray;
20
20
  exports.to2dArray = to2dArray;
21
21
  require("core-js/modules/es.array.push.js");
22
- require("core-js/modules/esnext.set.difference.v2.js");
23
- require("core-js/modules/esnext.set.intersection.v2.js");
24
- require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
25
- require("core-js/modules/esnext.set.is-subset-of.v2.js");
26
- require("core-js/modules/esnext.set.is-superset-of.v2.js");
27
- require("core-js/modules/esnext.set.symmetric-difference.v2.js");
28
- require("core-js/modules/esnext.set.union.v2.js");
29
22
  /**
30
23
  * @param {Array} arr An array to process.
31
24
  */
package/helpers/array.mjs CHANGED
@@ -1,11 +1,4 @@
1
1
  import "core-js/modules/es.array.push.js";
2
- import "core-js/modules/esnext.set.difference.v2.js";
3
- import "core-js/modules/esnext.set.intersection.v2.js";
4
- import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
5
- import "core-js/modules/esnext.set.is-subset-of.v2.js";
6
- import "core-js/modules/esnext.set.is-superset-of.v2.js";
7
- import "core-js/modules/esnext.set.symmetric-difference.v2.js";
8
- import "core-js/modules/esnext.set.union.v2.js";
9
2
  /**
10
3
  * @param {Array} arr An array to process.
11
4
  */
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-3c2766c-20240422";
137
+ const hotVersion = "0.0.0-next-442dd51-20240422";
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-3c2766c-20240422";
127
+ const hotVersion = "0.0.0-next-442dd51-20240422";
128
128
  let keyValidityDate;
129
129
  let consoleMessageState = 'invalid';
130
130
  let domMessageState = 'invalid';
package/helpers/number.js CHANGED
@@ -7,19 +7,13 @@ exports.isNumericLike = isNumericLike;
7
7
  exports.rangeEach = rangeEach;
8
8
  exports.rangeEachReverse = rangeEachReverse;
9
9
  exports.valueAccordingPercent = valueAccordingPercent;
10
- require("core-js/modules/esnext.set.difference.v2.js");
11
- require("core-js/modules/esnext.set.intersection.v2.js");
12
- require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
13
- require("core-js/modules/esnext.set.is-subset-of.v2.js");
14
- require("core-js/modules/esnext.set.is-superset-of.v2.js");
15
- require("core-js/modules/esnext.set.symmetric-difference.v2.js");
16
- require("core-js/modules/esnext.set.union.v2.js");
17
10
  /* eslint-disable jsdoc/require-description-complete-sentence */
18
11
  /**
19
12
  * Checks if the passed value is numeric one. For example these values (passed as string or number)
20
13
  * are considered as numeric values:
21
14
  * - 0.001
22
15
  * - .001
16
+ * - - 10000
23
17
  * - 10000
24
18
  * - 1e+26
25
19
  * - 22e-26
@@ -27,10 +21,6 @@ require("core-js/modules/esnext.set.union.v2.js");
27
21
  * - 0xabcdef (hex)
28
22
  * - 0x1 (hex)
29
23
  *
30
- * these values are not considered as numeric:
31
- * - - 1000
32
- * - 100 000
33
- *
34
24
  * @param {*} value The value to check.
35
25
  * @param {string[]} additionalDelimiters An additional delimiters to be used while checking the numeric value.
36
26
  * @returns {boolean}
@@ -47,7 +37,7 @@ function isNumeric(value) {
47
37
  return /\d/.test(value);
48
38
  }
49
39
  const delimiter = Array.from(new Set(['.', ...additionalDelimiters])).map(d => `\\${d}`).join('|');
50
- return new RegExp(`^[+-]?(((${delimiter})?\\d+((${delimiter})\\d+)?(e[+-]?\\d+)?)|(0x[a-f\\d]+))$`, 'i').test(value.trim());
40
+ return new RegExp(`^[+-]?\\s*(((${delimiter})?\\d+((${delimiter})\\d+)?(e[+-]?\\d+)?)|(0x[a-f\\d]+))$`, 'i').test(value.trim());
51
41
  } else if (type === 'object') {
52
42
  return !!value && typeof value.valueOf() === 'number' && !(value instanceof Date);
53
43
  }
@@ -1,16 +1,10 @@
1
- import "core-js/modules/esnext.set.difference.v2.js";
2
- import "core-js/modules/esnext.set.intersection.v2.js";
3
- import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
4
- import "core-js/modules/esnext.set.is-subset-of.v2.js";
5
- import "core-js/modules/esnext.set.is-superset-of.v2.js";
6
- import "core-js/modules/esnext.set.symmetric-difference.v2.js";
7
- import "core-js/modules/esnext.set.union.v2.js";
8
1
  /* eslint-disable jsdoc/require-description-complete-sentence */
9
2
  /**
10
3
  * Checks if the passed value is numeric one. For example these values (passed as string or number)
11
4
  * are considered as numeric values:
12
5
  * - 0.001
13
6
  * - .001
7
+ * - - 10000
14
8
  * - 10000
15
9
  * - 1e+26
16
10
  * - 22e-26
@@ -18,10 +12,6 @@ import "core-js/modules/esnext.set.union.v2.js";
18
12
  * - 0xabcdef (hex)
19
13
  * - 0x1 (hex)
20
14
  *
21
- * these values are not considered as numeric:
22
- * - - 1000
23
- * - 100 000
24
- *
25
15
  * @param {*} value The value to check.
26
16
  * @param {string[]} additionalDelimiters An additional delimiters to be used while checking the numeric value.
27
17
  * @returns {boolean}
@@ -38,7 +28,7 @@ export function isNumeric(value) {
38
28
  return /\d/.test(value);
39
29
  }
40
30
  const delimiter = Array.from(new Set(['.', ...additionalDelimiters])).map(d => `\\${d}`).join('|');
41
- return new RegExp(`^[+-]?(((${delimiter})?\\d+((${delimiter})\\d+)?(e[+-]?\\d+)?)|(0x[a-f\\d]+))$`, 'i').test(value.trim());
31
+ return new RegExp(`^[+-]?\\s*(((${delimiter})?\\d+((${delimiter})\\d+)?(e[+-]?\\d+)?)|(0x[a-f\\d]+))$`, 'i').test(value.trim());
42
32
  } else if (type === 'object') {
43
33
  return !!value && typeof value.valueOf() === 'number' && !(value instanceof Date);
44
34
  }
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-3c2766c-20240422",
13
+ "version": "0.0.0-next-442dd51-20240422",
14
14
  "main": "index",
15
15
  "module": "index.mjs",
16
16
  "jsnext:main": "index.mjs",
@@ -33,10 +33,12 @@
33
33
  ],
34
34
  "dependencies": {
35
35
  "@handsontable/pikaday": "^1.0.0",
36
- "core-js": "^3.37.0",
37
- "dompurify": "^3.1.0",
38
- "moment": "2.30.1",
39
- "numbro": "2.5.0"
36
+ "@types/pikaday": "1.7.4",
37
+ "core-js": "^3.31.1",
38
+ "dompurify": "^2.1.1",
39
+ "moment": "2.29.4",
40
+ "numbro": "2.1.2",
41
+ "pikaday": "1.8.2"
40
42
  },
41
43
  "devDependencies": {
42
44
  "@babel/cli": "^7.8.3",
@@ -3,13 +3,6 @@
3
3
  exports.__esModule = true;
4
4
  require("core-js/modules/es.error.cause.js");
5
5
  require("core-js/modules/es.array.push.js");
6
- require("core-js/modules/esnext.set.difference.v2.js");
7
- require("core-js/modules/esnext.set.intersection.v2.js");
8
- require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
9
- require("core-js/modules/esnext.set.is-subset-of.v2.js");
10
- require("core-js/modules/esnext.set.is-superset-of.v2.js");
11
- require("core-js/modules/esnext.set.symmetric-difference.v2.js");
12
- require("core-js/modules/esnext.set.union.v2.js");
13
6
  var _base = require("../base");
14
7
  var _array = require("../../helpers/array");
15
8
  var _feature = require("../../helpers/feature");
@@ -1,12 +1,5 @@
1
1
  import "core-js/modules/es.error.cause.js";
2
2
  import "core-js/modules/es.array.push.js";
3
- import "core-js/modules/esnext.set.difference.v2.js";
4
- import "core-js/modules/esnext.set.intersection.v2.js";
5
- import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
6
- import "core-js/modules/esnext.set.is-subset-of.v2.js";
7
- import "core-js/modules/esnext.set.is-superset-of.v2.js";
8
- import "core-js/modules/esnext.set.symmetric-difference.v2.js";
9
- import "core-js/modules/esnext.set.union.v2.js";
10
3
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
11
4
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
12
5
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
@@ -344,7 +344,7 @@ class AutoRowSize extends _base.BasePlugin {
344
344
  this.inProgress = false;
345
345
 
346
346
  // @TODO Should call once per render cycle, currently fired separately in different plugins
347
- this.hot.view.adjustElementsSize();
347
+ this.hot.view.adjustElementsSize(true);
348
348
 
349
349
  // tmp
350
350
  if (this.hot.view._wt.wtOverlays.inlineStartOverlay.needFullRender) {
@@ -368,7 +368,7 @@ class AutoRowSize extends _base.BasePlugin {
368
368
  loop();
369
369
  } else {
370
370
  this.inProgress = false;
371
- this.hot.view.adjustElementsSize();
371
+ this.hot.view.adjustElementsSize(false);
372
372
  }
373
373
  }
374
374
 
@@ -340,7 +340,7 @@ export class AutoRowSize extends BasePlugin {
340
340
  this.inProgress = false;
341
341
 
342
342
  // @TODO Should call once per render cycle, currently fired separately in different plugins
343
- this.hot.view.adjustElementsSize();
343
+ this.hot.view.adjustElementsSize(true);
344
344
 
345
345
  // tmp
346
346
  if (this.hot.view._wt.wtOverlays.inlineStartOverlay.needFullRender) {
@@ -364,7 +364,7 @@ export class AutoRowSize extends BasePlugin {
364
364
  loop();
365
365
  } else {
366
366
  this.inProgress = false;
367
- this.hot.view.adjustElementsSize();
367
+ this.hot.view.adjustElementsSize(false);
368
368
  }
369
369
  }
370
370
 
@@ -496,7 +496,7 @@ class CollapsibleColumns extends _base.BasePlugin {
496
496
  }
497
497
  this.hot.runHooks(actionTranslator.afterHook, currentCollapsedColumns, destinationCollapsedColumns, isActionPossible, isActionPerformed);
498
498
  this.hot.render();
499
- this.hot.view.adjustElementsSize();
499
+ this.hot.view.adjustElementsSize(true);
500
500
  }
501
501
 
502
502
  /**
@@ -493,7 +493,7 @@ export class CollapsibleColumns extends BasePlugin {
493
493
  }
494
494
  this.hot.runHooks(actionTranslator.afterHook, currentCollapsedColumns, destinationCollapsedColumns, isActionPossible, isActionPerformed);
495
495
  this.hot.render();
496
- this.hot.view.adjustElementsSize();
496
+ this.hot.view.adjustElementsSize(true);
497
497
  }
498
498
 
499
499
  /**
@@ -6,13 +6,6 @@ exports.getHeaderSpanElement = getHeaderSpanElement;
6
6
  exports.getNextSortOrder = getNextSortOrder;
7
7
  exports.isFirstLevelColumnHeader = isFirstLevelColumnHeader;
8
8
  exports.wasHeaderClickedProperly = wasHeaderClickedProperly;
9
- require("core-js/modules/esnext.set.difference.v2.js");
10
- require("core-js/modules/esnext.set.intersection.v2.js");
11
- require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
12
- require("core-js/modules/esnext.set.is-subset-of.v2.js");
13
- require("core-js/modules/esnext.set.is-superset-of.v2.js");
14
- require("core-js/modules/esnext.set.symmetric-difference.v2.js");
15
- require("core-js/modules/esnext.set.union.v2.js");
16
9
  var _object = require("../../helpers/object");
17
10
  var _event = require("../../helpers/dom/event");
18
11
  const ASC_SORT_STATE = exports.ASC_SORT_STATE = 'asc';
@@ -1,10 +1,3 @@
1
- import "core-js/modules/esnext.set.difference.v2.js";
2
- import "core-js/modules/esnext.set.intersection.v2.js";
3
- import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
4
- import "core-js/modules/esnext.set.is-subset-of.v2.js";
5
- import "core-js/modules/esnext.set.is-superset-of.v2.js";
6
- import "core-js/modules/esnext.set.symmetric-difference.v2.js";
7
- import "core-js/modules/esnext.set.union.v2.js";
8
1
  import { isObject } from "../../helpers/object.mjs";
9
2
  import { isRightClick } from "../../helpers/dom/event.mjs";
10
3
  export const ASC_SORT_STATE = 'asc';
@@ -294,7 +294,10 @@ class Comments extends _base.BasePlugin {
294
294
  this.hide();
295
295
  manager.setActiveContextName('grid');
296
296
  },
297
- runOnlyIf: () => _classPrivateFieldGet(_editor, this).isVisible() && _classPrivateFieldGet(_editor, this).isFocused(),
297
+ runOnlyIf: () => {
298
+ var _this$hot$getSelected2;
299
+ return ((_this$hot$getSelected2 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected2 === void 0 ? void 0 : _this$hot$getSelected2.highlight.isCell()) && _classPrivateFieldGet(_editor, this).isVisible();
300
+ },
298
301
  group: SHORTCUTS_GROUP
299
302
  });
300
303
  pluginContext.addShortcut({
@@ -303,7 +306,10 @@ class Comments extends _base.BasePlugin {
303
306
  this.hide();
304
307
  manager.setActiveContextName('grid');
305
308
  },
306
- runOnlyIf: () => _classPrivateFieldGet(_editor, this).isVisible() && _classPrivateFieldGet(_editor, this).isFocused(),
309
+ runOnlyIf: () => {
310
+ var _this$hot$getSelected3;
311
+ return ((_this$hot$getSelected3 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected3 === void 0 ? void 0 : _this$hot$getSelected3.highlight.isCell()) && _classPrivateFieldGet(_editor, this).isVisible();
312
+ },
307
313
  group: SHORTCUTS_GROUP
308
314
  });
309
315
  }
@@ -290,7 +290,10 @@ export class Comments extends BasePlugin {
290
290
  this.hide();
291
291
  manager.setActiveContextName('grid');
292
292
  },
293
- runOnlyIf: () => _classPrivateFieldGet(_editor, this).isVisible() && _classPrivateFieldGet(_editor, this).isFocused(),
293
+ runOnlyIf: () => {
294
+ var _this$hot$getSelected2;
295
+ return ((_this$hot$getSelected2 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected2 === void 0 ? void 0 : _this$hot$getSelected2.highlight.isCell()) && _classPrivateFieldGet(_editor, this).isVisible();
296
+ },
294
297
  group: SHORTCUTS_GROUP
295
298
  });
296
299
  pluginContext.addShortcut({
@@ -299,7 +302,10 @@ export class Comments extends BasePlugin {
299
302
  this.hide();
300
303
  manager.setActiveContextName('grid');
301
304
  },
302
- runOnlyIf: () => _classPrivateFieldGet(_editor, this).isVisible() && _classPrivateFieldGet(_editor, this).isFocused(),
305
+ runOnlyIf: () => {
306
+ var _this$hot$getSelected3;
307
+ return ((_this$hot$getSelected3 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected3 === void 0 ? void 0 : _this$hot$getSelected3.highlight.isCell()) && _classPrivateFieldGet(_editor, this).isVisible();
308
+ },
303
309
  group: SHORTCUTS_GROUP
304
310
  });
305
311
  }
@@ -508,7 +508,7 @@ class Filters extends _base.BasePlugin {
508
508
  }
509
509
  }
510
510
  this.hot.runHooks('afterFilter', conditions);
511
- this.hot.view.adjustElementsSize();
511
+ this.hot.view.adjustElementsSize(true);
512
512
  this.hot.render();
513
513
  if (this.hot.selection.isSelected()) {
514
514
  this.hot.selectCell(navigableHeaders ? -1 : 0, this.hot.getSelectedRangeLast().highlight.col);
@@ -502,7 +502,7 @@ export class Filters extends BasePlugin {
502
502
  }
503
503
  }
504
504
  this.hot.runHooks('afterFilter', conditions);
505
- this.hot.view.adjustElementsSize();
505
+ this.hot.view.adjustElementsSize(true);
506
506
  this.hot.render();
507
507
  if (this.hot.selection.isSelected()) {
508
508
  this.hot.selectCell(navigableHeaders ? -1 : 0, this.hot.getSelectedRangeLast().highlight.col);
@@ -5,6 +5,7 @@ require("core-js/modules/es.error.cause.js");
5
5
  require("core-js/modules/es.array.push.js");
6
6
  var _element = require("../../../helpers/dom/element");
7
7
  var _object = require("../../../helpers/object");
8
+ var _array = require("../../../helpers/array");
8
9
  var _unicode = require("../../../helpers/unicode");
9
10
  var _function = require("../../../helpers/function");
10
11
  var _data = require("../../../helpers/data");
@@ -250,7 +251,6 @@ class MultipleSelectUI extends _base.BaseUI {
250
251
  beforeOnCellMouseUp: () => {
251
252
  _classPrivateFieldGet(_itemsBox, this).listen();
252
253
  },
253
- hiddenRows: true,
254
254
  maxCols: 1,
255
255
  autoWrapCol: true,
256
256
  height: 110,
@@ -342,16 +342,13 @@ class MultipleSelectUI extends _base.BaseUI {
342
342
  exports.MultipleSelectUI = MultipleSelectUI;
343
343
  function _onInput(event) {
344
344
  const value = event.target.value.toLocaleLowerCase(this.getLocale());
345
- const hiddenRows = _classPrivateFieldGet(_itemsBox, this).getPlugin('hiddenRows');
346
- hiddenRows.showRows(hiddenRows.getHiddenRows());
347
- _classPrivateFieldGet(_items, this).forEach((item, index) => {
348
- item.checked = `${item.value}`.toLocaleLowerCase(this.getLocale()).indexOf(value) >= 0;
349
- if (!item.checked) {
350
- hiddenRows.hideRow(index);
351
- }
352
- });
353
- _classPrivateFieldGet(_itemsBox, this).view.adjustElementsSize();
354
- _classPrivateFieldGet(_itemsBox, this).render();
345
+ let filteredItems;
346
+ if (value === '') {
347
+ filteredItems = [..._classPrivateFieldGet(_items, this)];
348
+ } else {
349
+ filteredItems = (0, _array.arrayFilter)(_classPrivateFieldGet(_items, this), item => `${item.value}`.toLocaleLowerCase(this.getLocale()).indexOf(value) >= 0);
350
+ }
351
+ _classPrivateFieldGet(_itemsBox, this).loadData(filteredItems);
355
352
  }
356
353
  /**
357
354
  * 'keydown' event listener for input element.
@@ -376,7 +373,7 @@ function _onInputKeyDown(event) {
376
373
  function _onSelectAllClick(event) {
377
374
  const changes = [];
378
375
  event.preventDefault();
379
- _classPrivateFieldGet(_itemsBox, this).getSourceData().forEach((row, rowIndex) => {
376
+ (0, _array.arrayEach)(_classPrivateFieldGet(_itemsBox, this).getSourceData(), (row, rowIndex) => {
380
377
  row.checked = true;
381
378
  changes.push((0, _data.dataRowToChangesArray)(row, rowIndex)[0]);
382
379
  });
@@ -390,7 +387,7 @@ function _onSelectAllClick(event) {
390
387
  function _onClearAllClick(event) {
391
388
  const changes = [];
392
389
  event.preventDefault();
393
- _classPrivateFieldGet(_itemsBox, this).getSourceData().forEach((row, rowIndex) => {
390
+ (0, _array.arrayEach)(_classPrivateFieldGet(_itemsBox, this).getSourceData(), (row, rowIndex) => {
394
391
  row.checked = false;
395
392
  changes.push((0, _data.dataRowToChangesArray)(row, rowIndex)[0]);
396
393
  });
@@ -406,7 +403,7 @@ var _default = exports.default = MultipleSelectUI;
406
403
  */
407
404
  function valueToItems(availableItems, selectedValue) {
408
405
  const arrayAssertion = (0, _utils.createArrayAssertion)(selectedValue);
409
- return availableItems.map(item => {
406
+ return (0, _array.arrayMap)(availableItems, item => {
410
407
  item.checked = arrayAssertion(item.value);
411
408
  return item;
412
409
  });
@@ -420,7 +417,7 @@ function valueToItems(availableItems, selectedValue) {
420
417
  */
421
418
  function itemsToValue(availableItems) {
422
419
  const items = [];
423
- availableItems.forEach(item => {
420
+ (0, _array.arrayEach)(availableItems, item => {
424
421
  if (item.checked) {
425
422
  items.push(item.value);
426
423
  }
@@ -8,6 +8,7 @@ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a),
8
8
  function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
9
9
  import { addClass, getScrollbarWidth } from "../../../helpers/dom/element.mjs";
10
10
  import { clone, extend } from "../../../helpers/object.mjs";
11
+ import { arrayFilter, arrayMap, arrayEach } from "../../../helpers/array.mjs";
11
12
  import { isKey } from "../../../helpers/unicode.mjs";
12
13
  import { partial } from "../../../helpers/function.mjs";
13
14
  import { dataRowToChangesArray } from "../../../helpers/data.mjs";
@@ -245,7 +246,6 @@ export class MultipleSelectUI extends BaseUI {
245
246
  beforeOnCellMouseUp: () => {
246
247
  _classPrivateFieldGet(_itemsBox, this).listen();
247
248
  },
248
- hiddenRows: true,
249
249
  maxCols: 1,
250
250
  autoWrapCol: true,
251
251
  height: 110,
@@ -336,16 +336,13 @@ export class MultipleSelectUI extends BaseUI {
336
336
  }
337
337
  function _onInput(event) {
338
338
  const value = event.target.value.toLocaleLowerCase(this.getLocale());
339
- const hiddenRows = _classPrivateFieldGet(_itemsBox, this).getPlugin('hiddenRows');
340
- hiddenRows.showRows(hiddenRows.getHiddenRows());
341
- _classPrivateFieldGet(_items, this).forEach((item, index) => {
342
- item.checked = `${item.value}`.toLocaleLowerCase(this.getLocale()).indexOf(value) >= 0;
343
- if (!item.checked) {
344
- hiddenRows.hideRow(index);
345
- }
346
- });
347
- _classPrivateFieldGet(_itemsBox, this).view.adjustElementsSize();
348
- _classPrivateFieldGet(_itemsBox, this).render();
339
+ let filteredItems;
340
+ if (value === '') {
341
+ filteredItems = [..._classPrivateFieldGet(_items, this)];
342
+ } else {
343
+ filteredItems = arrayFilter(_classPrivateFieldGet(_items, this), item => `${item.value}`.toLocaleLowerCase(this.getLocale()).indexOf(value) >= 0);
344
+ }
345
+ _classPrivateFieldGet(_itemsBox, this).loadData(filteredItems);
349
346
  }
350
347
  /**
351
348
  * 'keydown' event listener for input element.
@@ -370,7 +367,7 @@ function _onInputKeyDown(event) {
370
367
  function _onSelectAllClick(event) {
371
368
  const changes = [];
372
369
  event.preventDefault();
373
- _classPrivateFieldGet(_itemsBox, this).getSourceData().forEach((row, rowIndex) => {
370
+ arrayEach(_classPrivateFieldGet(_itemsBox, this).getSourceData(), (row, rowIndex) => {
374
371
  row.checked = true;
375
372
  changes.push(dataRowToChangesArray(row, rowIndex)[0]);
376
373
  });
@@ -384,7 +381,7 @@ function _onSelectAllClick(event) {
384
381
  function _onClearAllClick(event) {
385
382
  const changes = [];
386
383
  event.preventDefault();
387
- _classPrivateFieldGet(_itemsBox, this).getSourceData().forEach((row, rowIndex) => {
384
+ arrayEach(_classPrivateFieldGet(_itemsBox, this).getSourceData(), (row, rowIndex) => {
388
385
  row.checked = false;
389
386
  changes.push(dataRowToChangesArray(row, rowIndex)[0]);
390
387
  });
@@ -401,7 +398,7 @@ export default MultipleSelectUI;
401
398
  */
402
399
  function valueToItems(availableItems, selectedValue) {
403
400
  const arrayAssertion = createArrayAssertion(selectedValue);
404
- return availableItems.map(item => {
401
+ return arrayMap(availableItems, item => {
405
402
  item.checked = arrayAssertion(item.value);
406
403
  return item;
407
404
  });
@@ -415,7 +412,7 @@ function valueToItems(availableItems, selectedValue) {
415
412
  */
416
413
  function itemsToValue(availableItems) {
417
414
  const items = [];
418
- availableItems.forEach(item => {
415
+ arrayEach(availableItems, item => {
419
416
  if (item.checked) {
420
417
  items.push(item.value);
421
418
  }
@@ -8,13 +8,6 @@ exports.toEmptyString = toEmptyString;
8
8
  exports.toVisualValue = toVisualValue;
9
9
  exports.unifyColumnValues = unifyColumnValues;
10
10
  require("core-js/modules/es.array.push.js");
11
- require("core-js/modules/esnext.set.difference.v2.js");
12
- require("core-js/modules/esnext.set.intersection.v2.js");
13
- require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
14
- require("core-js/modules/esnext.set.is-subset-of.v2.js");
15
- require("core-js/modules/esnext.set.is-superset-of.v2.js");
16
- require("core-js/modules/esnext.set.symmetric-difference.v2.js");
17
- require("core-js/modules/esnext.set.union.v2.js");
18
11
  var _feature = require("../../helpers/feature");
19
12
  var _array = require("../../helpers/array");
20
13
  const sortCompare = (0, _feature.getComparisonFunction)();
@@ -1,11 +1,4 @@
1
1
  import "core-js/modules/es.array.push.js";
2
- import "core-js/modules/esnext.set.difference.v2.js";
3
- import "core-js/modules/esnext.set.intersection.v2.js";
4
- import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
5
- import "core-js/modules/esnext.set.is-subset-of.v2.js";
6
- import "core-js/modules/esnext.set.is-superset-of.v2.js";
7
- import "core-js/modules/esnext.set.symmetric-difference.v2.js";
8
- import "core-js/modules/esnext.set.union.v2.js";
9
2
  import { getComparisonFunction } from "../../helpers/feature.mjs";
10
3
  import { arrayUnique, arrayEach } from "../../helpers/array.mjs";
11
4
  const sortCompare = getComparisonFunction();
@@ -4,13 +4,6 @@ exports.__esModule = true;
4
4
  require("core-js/modules/es.error.cause.js");
5
5
  require("core-js/modules/es.array.push.js");
6
6
  require("core-js/modules/es.json.stringify.js");
7
- require("core-js/modules/esnext.set.difference.v2.js");
8
- require("core-js/modules/esnext.set.intersection.v2.js");
9
- require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
10
- require("core-js/modules/esnext.set.is-subset-of.v2.js");
11
- require("core-js/modules/esnext.set.is-superset-of.v2.js");
12
- require("core-js/modules/esnext.set.symmetric-difference.v2.js");
13
- require("core-js/modules/esnext.set.union.v2.js");
14
7
  var _base = require("../base");
15
8
  var _staticRegister = _interopRequireDefault(require("../../utils/staticRegister"));
16
9
  var _console = require("../../helpers/console");
@@ -1,13 +1,6 @@
1
1
  import "core-js/modules/es.error.cause.js";
2
2
  import "core-js/modules/es.array.push.js";
3
3
  import "core-js/modules/es.json.stringify.js";
4
- import "core-js/modules/esnext.set.difference.v2.js";
5
- import "core-js/modules/esnext.set.intersection.v2.js";
6
- import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
7
- import "core-js/modules/esnext.set.is-subset-of.v2.js";
8
- import "core-js/modules/esnext.set.is-superset-of.v2.js";
9
- import "core-js/modules/esnext.set.symmetric-difference.v2.js";
10
- import "core-js/modules/esnext.set.union.v2.js";
11
4
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
12
5
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
6
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
@@ -44,7 +44,7 @@ function hideColumnItem(hiddenColumnsPlugin) {
44
44
  this.deselectCell();
45
45
  }
46
46
  this.render();
47
- this.view.adjustElementsSize();
47
+ this.view.adjustElementsSize(true);
48
48
  },
49
49
  disabled: false,
50
50
  hidden() {
@@ -38,7 +38,7 @@ export default function hideColumnItem(hiddenColumnsPlugin) {
38
38
  this.deselectCell();
39
39
  }
40
40
  this.render();
41
- this.view.adjustElementsSize();
41
+ this.view.adjustElementsSize(true);
42
42
  },
43
43
  disabled: false,
44
44
  hidden() {
@@ -36,7 +36,7 @@ function showColumnItem(hiddenColumnsPlugin) {
36
36
  // We render columns at first. It was needed for getting fixed columns.
37
37
  // Please take a look at #6864 for broader description.
38
38
  this.render();
39
- this.view.adjustElementsSize();
39
+ this.view.adjustElementsSize(true);
40
40
  const allColumnsSelected = endVisualColumn - startVisualColumn + 1 === this.countCols();
41
41
 
42
42
  // When all headers needs to be selected then do nothing. The header selection is
@@ -30,7 +30,7 @@ export default function showColumnItem(hiddenColumnsPlugin) {
30
30
  // We render columns at first. It was needed for getting fixed columns.
31
31
  // Please take a look at #6864 for broader description.
32
32
  this.render();
33
- this.view.adjustElementsSize();
33
+ this.view.adjustElementsSize(true);
34
34
  const allColumnsSelected = endVisualColumn - startVisualColumn + 1 === this.countCols();
35
35
 
36
36
  // When all headers needs to be selected then do nothing. The header selection is
@@ -3,13 +3,6 @@
3
3
  exports.__esModule = true;
4
4
  require("core-js/modules/es.error.cause.js");
5
5
  require("core-js/modules/es.array.push.js");
6
- require("core-js/modules/esnext.set.difference.v2.js");
7
- require("core-js/modules/esnext.set.intersection.v2.js");
8
- require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
9
- require("core-js/modules/esnext.set.is-subset-of.v2.js");
10
- require("core-js/modules/esnext.set.is-superset-of.v2.js");
11
- require("core-js/modules/esnext.set.symmetric-difference.v2.js");
12
- require("core-js/modules/esnext.set.union.v2.js");
13
6
  var _base = require("../base");
14
7
  var _element = require("../../helpers/dom/element");
15
8
  var _number = require("../../helpers/number");
@@ -1,12 +1,5 @@
1
1
  import "core-js/modules/es.error.cause.js";
2
2
  import "core-js/modules/es.array.push.js";
3
- import "core-js/modules/esnext.set.difference.v2.js";
4
- import "core-js/modules/esnext.set.intersection.v2.js";
5
- import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
6
- import "core-js/modules/esnext.set.is-subset-of.v2.js";
7
- import "core-js/modules/esnext.set.is-superset-of.v2.js";
8
- import "core-js/modules/esnext.set.symmetric-difference.v2.js";
9
- import "core-js/modules/esnext.set.union.v2.js";
10
3
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
11
4
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
12
5
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
@@ -44,7 +44,7 @@ function hideRowItem(hiddenRowsPlugin) {
44
44
  this.deselectCell();
45
45
  }
46
46
  this.render();
47
- this.view.adjustElementsSize();
47
+ this.view.adjustElementsSize(true);
48
48
  },
49
49
  disabled: false,
50
50
  hidden() {
@@ -38,7 +38,7 @@ export default function hideRowItem(hiddenRowsPlugin) {
38
38
  this.deselectCell();
39
39
  }
40
40
  this.render();
41
- this.view.adjustElementsSize();
41
+ this.view.adjustElementsSize(true);
42
42
  },
43
43
  disabled: false,
44
44
  hidden() {