handsontable 15.1.0 → 15.2.0-next-9a1a15b-20250314

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.
Files changed (163) hide show
  1. package/3rdparty/walkontable/src/selection/border/border.js +16 -3
  2. package/3rdparty/walkontable/src/selection/border/border.mjs +17 -4
  3. package/3rdparty/walkontable/src/selection/scanner.js +1 -1
  4. package/3rdparty/walkontable/src/selection/scanner.mjs +2 -2
  5. package/3rdparty/walkontable/src/table.js +3 -2
  6. package/3rdparty/walkontable/src/table.mjs +4 -3
  7. package/3rdparty/walkontable/src/utils/orderView/viewDiffer/viewOrder.js +1 -0
  8. package/3rdparty/walkontable/src/utils/orderView/viewDiffer/viewOrder.mjs +1 -0
  9. package/3rdparty/walkontable/src/viewport.js +30 -3
  10. package/3rdparty/walkontable/src/viewport.mjs +30 -3
  11. package/CHANGELOG.md +40 -0
  12. package/base.js +2 -2
  13. package/base.mjs +2 -2
  14. package/core.js +2 -37
  15. package/core.mjs +2 -37
  16. package/dataMap/dataMap.js +4 -12
  17. package/dataMap/dataMap.mjs +4 -12
  18. package/dataMap/dataSource.js +2 -2
  19. package/dataMap/dataSource.mjs +2 -2
  20. package/dataMap/metaManager/metaSchema.js +2 -2
  21. package/dataMap/metaManager/metaSchema.mjs +2 -2
  22. package/dist/handsontable.css +2 -2
  23. package/dist/handsontable.full.css +2 -2
  24. package/dist/handsontable.full.js +500 -412
  25. package/dist/handsontable.full.min.css +2 -2
  26. package/dist/handsontable.full.min.js +73 -73
  27. package/dist/handsontable.js +500 -412
  28. package/dist/handsontable.min.css +2 -2
  29. package/dist/handsontable.min.js +43 -43
  30. package/dist/languages/all.js +139 -28
  31. package/dist/languages/all.min.js +1 -1
  32. package/dist/languages/fa-IR.js +167 -0
  33. package/dist/languages/fa-IR.min.js +1 -0
  34. package/dist/languages/it-IT.js +3 -0
  35. package/dist/languages/it-IT.min.js +1 -1
  36. package/dist/languages/sr-SP.js +3 -0
  37. package/dist/languages/sr-SP.min.js +1 -1
  38. package/editors/autocompleteEditor/autocompleteEditor.js +25 -20
  39. package/editors/autocompleteEditor/autocompleteEditor.mjs +25 -20
  40. package/editors/dateEditor/dateEditor.d.ts +0 -2
  41. package/editors/dateEditor/dateEditor.js +18 -7
  42. package/editors/dateEditor/dateEditor.mjs +17 -6
  43. package/editors/textEditor/textEditor.js +1 -1
  44. package/editors/textEditor/textEditor.mjs +2 -2
  45. package/focusManager.js +5 -3
  46. package/focusManager.mjs +6 -4
  47. package/helpers/dom/element.d.ts +1 -0
  48. package/helpers/dom/element.js +23 -4
  49. package/helpers/dom/element.mjs +21 -3
  50. package/helpers/dom/event.js +2 -1
  51. package/helpers/dom/event.mjs +2 -1
  52. package/helpers/mixed.js +2 -2
  53. package/helpers/mixed.mjs +2 -2
  54. package/helpers/number.js +1 -0
  55. package/helpers/number.mjs +1 -0
  56. package/i18n/languages/fa-IR.d.ts +5 -0
  57. package/i18n/languages/fa-IR.js +96 -0
  58. package/i18n/languages/fa-IR.mjs +90 -0
  59. package/i18n/languages/index.d.ts +2 -0
  60. package/i18n/languages/index.js +2 -0
  61. package/i18n/languages/index.mjs +2 -1
  62. package/i18n/languages/it-IT.js +3 -0
  63. package/i18n/languages/it-IT.mjs +3 -0
  64. package/i18n/languages/sr-SP.js +3 -0
  65. package/i18n/languages/sr-SP.mjs +3 -0
  66. package/i18n/phraseFormatters/substituteVariables.js +1 -0
  67. package/i18n/phraseFormatters/substituteVariables.mjs +1 -0
  68. package/languages/all.js +139 -28
  69. package/languages/fa-IR.js +167 -0
  70. package/languages/fa-IR.mjs +92 -0
  71. package/languages/index.js +139 -28
  72. package/languages/index.mjs +2 -1
  73. package/languages/it-IT.js +3 -0
  74. package/languages/it-IT.mjs +3 -0
  75. package/languages/sr-SP.js +3 -0
  76. package/languages/sr-SP.mjs +3 -0
  77. package/package.json +13 -2
  78. package/plugins/columnSorting/columnSorting.js +17 -1
  79. package/plugins/columnSorting/columnSorting.mjs +18 -2
  80. package/plugins/columnSorting/columnStatesManager.js +1 -0
  81. package/plugins/columnSorting/columnStatesManager.mjs +1 -0
  82. package/plugins/columnSorting/utils.js +14 -0
  83. package/plugins/columnSorting/utils.mjs +13 -0
  84. package/plugins/comments/comments.js +5 -2
  85. package/plugins/comments/comments.mjs +6 -3
  86. package/plugins/contextMenu/menu/menu.js +9 -3
  87. package/plugins/contextMenu/menu/menu.mjs +9 -3
  88. package/plugins/contextMenu/predefinedItems/columnLeft.js +3 -8
  89. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +3 -8
  90. package/plugins/contextMenu/predefinedItems/columnRight.js +2 -9
  91. package/plugins/contextMenu/predefinedItems/columnRight.mjs +2 -9
  92. package/plugins/contextMenu/predefinedItems/rowAbove.js +3 -8
  93. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +3 -8
  94. package/plugins/contextMenu/predefinedItems/rowBelow.js +2 -9
  95. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +2 -9
  96. package/plugins/copyPaste/copyPaste.js +6 -12
  97. package/plugins/copyPaste/copyPaste.mjs +7 -13
  98. package/plugins/exportFile/types/csv.js +1 -0
  99. package/plugins/exportFile/types/csv.mjs +1 -0
  100. package/plugins/filters/conditionCollection.js +0 -26
  101. package/plugins/filters/conditionCollection.mjs +0 -26
  102. package/plugins/filters/filters.d.ts +2 -0
  103. package/plugins/filters/filters.js +77 -8
  104. package/plugins/filters/filters.mjs +77 -8
  105. package/plugins/mergeCells/mergeCells.js +9 -6
  106. package/plugins/mergeCells/mergeCells.mjs +9 -6
  107. package/plugins/multiColumnSorting/multiColumnSorting.js +1 -21
  108. package/plugins/multiColumnSorting/multiColumnSorting.mjs +1 -21
  109. package/plugins/nestedHeaders/nestedHeaders.js +5 -3
  110. package/plugins/nestedHeaders/nestedHeaders.mjs +5 -3
  111. package/plugins/nestedHeaders/stateManager/index.js +1 -0
  112. package/plugins/nestedHeaders/stateManager/index.mjs +1 -0
  113. package/plugins/undoRedo/actions/_base.js +10 -0
  114. package/plugins/undoRedo/actions/_base.mjs +10 -0
  115. package/plugins/undoRedo/actions/cellAlignment.js +1 -1
  116. package/plugins/undoRedo/actions/cellAlignment.mjs +1 -1
  117. package/plugins/undoRedo/actions/columnMove.js +1 -1
  118. package/plugins/undoRedo/actions/columnMove.mjs +1 -1
  119. package/plugins/undoRedo/actions/columnSort.js +1 -1
  120. package/plugins/undoRedo/actions/columnSort.mjs +1 -1
  121. package/plugins/undoRedo/actions/createColumn.js +1 -1
  122. package/plugins/undoRedo/actions/createColumn.mjs +1 -1
  123. package/plugins/undoRedo/actions/createRow.js +1 -1
  124. package/plugins/undoRedo/actions/createRow.mjs +1 -1
  125. package/plugins/undoRedo/actions/dataChange.js +1 -1
  126. package/plugins/undoRedo/actions/dataChange.mjs +1 -1
  127. package/plugins/undoRedo/actions/filters.js +3 -3
  128. package/plugins/undoRedo/actions/filters.mjs +3 -3
  129. package/plugins/undoRedo/actions/mergeCells.js +4 -1
  130. package/plugins/undoRedo/actions/mergeCells.mjs +4 -1
  131. package/plugins/undoRedo/actions/removeColumn.js +4 -2
  132. package/plugins/undoRedo/actions/removeColumn.mjs +4 -2
  133. package/plugins/undoRedo/actions/removeRow.js +1 -1
  134. package/plugins/undoRedo/actions/removeRow.mjs +1 -1
  135. package/plugins/undoRedo/actions/rowMove.js +1 -1
  136. package/plugins/undoRedo/actions/rowMove.mjs +1 -1
  137. package/plugins/undoRedo/actions/unmergeCells.js +4 -1
  138. package/plugins/undoRedo/actions/unmergeCells.mjs +4 -1
  139. package/plugins/undoRedo/undoRedo.d.ts +48 -17
  140. package/renderers/checkboxRenderer/checkboxRenderer.js +1 -1
  141. package/renderers/checkboxRenderer/checkboxRenderer.mjs +2 -2
  142. package/renderers/numericRenderer/numericRenderer.js +10 -2
  143. package/renderers/numericRenderer/numericRenderer.mjs +10 -2
  144. package/renderers/textRenderer/textRenderer.js +3 -12
  145. package/renderers/textRenderer/textRenderer.mjs +4 -13
  146. package/shortcuts/utils.js +1 -0
  147. package/shortcuts/utils.mjs +1 -0
  148. package/styles/handsontable.css +83 -99
  149. package/styles/handsontable.min.css +3 -3
  150. package/styles/ht-theme-horizon.css +14 -2
  151. package/styles/ht-theme-horizon.min.css +3 -3
  152. package/styles/ht-theme-main.css +14 -2
  153. package/styles/ht-theme-main.min.css +3 -3
  154. package/tableView.js +9 -0
  155. package/tableView.mjs +9 -0
  156. package/translations/maps/linkedPhysicalIndexToValueMap.js +1 -0
  157. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +1 -0
  158. package/translations/maps/utils/physicallyIndexed.js +1 -0
  159. package/translations/maps/utils/physicallyIndexed.mjs +1 -0
  160. package/utils/dataStructures/priorityMap.js +1 -0
  161. package/utils/dataStructures/priorityMap.mjs +1 -0
  162. package/plugins/multiColumnSorting/utils.js +0 -13
  163. package/plugins/multiColumnSorting/utils.mjs +0 -9
@@ -25,8 +25,8 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 15.1.0
29
- * Release date: 20/02/2025 (built at 19/02/2025 10:01:09)
28
+ * Version: 15.2.0-next-9a1a15b-20250314
29
+ * Release date: 19/03/2025 (built at 14/03/2025 11:50:19)
30
30
  */
31
31
  (function webpackUniversalModuleDefinition(root, factory) {
32
32
  if(typeof exports === 'object' && typeof module === 'object')
@@ -104,8 +104,8 @@ Handsontable.hooks = _hooks.Hooks.getSingleton();
104
104
  Handsontable.CellCoords = _src.CellCoords;
105
105
  Handsontable.CellRange = _src.CellRange;
106
106
  Handsontable.packageName = 'handsontable';
107
- Handsontable.buildDate = "19/02/2025 10:01:09";
108
- Handsontable.version = "15.1.0";
107
+ Handsontable.buildDate = "14/03/2025 11:50:19";
108
+ Handsontable.version = "15.2.0-next-9a1a15b-20250314";
109
109
  Handsontable.languages = {
110
110
  dictionaryKeys: _registry.dictionaryKeys,
111
111
  getLanguageDictionary: _registry.getLanguageDictionary,
@@ -3687,6 +3687,7 @@ function Core(rootElement, userSettings) {
3687
3687
  * @returns {number}
3688
3688
  */
3689
3689
  this._getRowHeightFromSettings = function (row) {
3690
+ const defaultRowHeight = this.view.getDefaultRowHeight();
3690
3691
  let height = tableMeta.rowHeights;
3691
3692
  if (height !== undefined && height !== null) {
3692
3693
  switch (typeof height) {
@@ -3704,7 +3705,7 @@ function Core(rootElement, userSettings) {
3704
3705
  height = parseInt(height, 10);
3705
3706
  }
3706
3707
  }
3707
- return height;
3708
+ return height !== undefined && height !== null && height < defaultRowHeight ? defaultRowHeight : height;
3708
3709
  };
3709
3710
 
3710
3711
  /**
@@ -4819,42 +4820,6 @@ function Core(rootElement, userSettings) {
4819
4820
  this._getEditorManager = function () {
4820
4821
  return editorManager;
4821
4822
  };
4822
-
4823
- /**
4824
- * Check if currently it is RTL direction.
4825
- *
4826
- * @private
4827
- * @memberof Core#
4828
- * @function isRtl
4829
- * @returns {boolean} True if RTL.
4830
- */
4831
- this.isRtl = function () {
4832
- return instance.rootWindow.getComputedStyle(instance.rootElement).direction === 'rtl';
4833
- };
4834
-
4835
- /**
4836
- * Check if currently it is LTR direction.
4837
- *
4838
- * @private
4839
- * @memberof Core#
4840
- * @function isLtr
4841
- * @returns {boolean} True if LTR.
4842
- */
4843
- this.isLtr = function () {
4844
- return !instance.isRtl();
4845
- };
4846
-
4847
- /**
4848
- * Returns 1 for LTR; -1 for RTL. Useful for calculations.
4849
- *
4850
- * @private
4851
- * @memberof Core#
4852
- * @function getDirectionFactor
4853
- * @returns {number} Returns 1 for LTR; -1 for RTL.
4854
- */
4855
- this.getDirectionFactor = function () {
4856
- return instance.isLtr() ? 1 : -1;
4857
- };
4858
4823
  const shortcutManager = (0, _shortcuts.createShortcutManager)({
4859
4824
  handleEvent() {
4860
4825
  return instance.isListening();
@@ -5643,10 +5608,10 @@ var SHARED = '__core-js_shared__';
5643
5608
  var store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});
5644
5609
 
5645
5610
  (store.versions || (store.versions = [])).push({
5646
- version: '3.40.0',
5611
+ version: '3.41.0',
5647
5612
  mode: IS_PURE ? 'pure' : 'global',
5648
5613
  copyright: '© 2014-2025 Denis Pushkarev (zloirock.ru)',
5649
- license: 'https://github.com/zloirock/core-js/blob/v3.40.0/LICENSE',
5614
+ license: 'https://github.com/zloirock/core-js/blob/v3.41.0/LICENSE',
5650
5615
  source: 'https://github.com/zloirock/core-js'
5651
5616
  });
5652
5617
 
@@ -8698,9 +8663,10 @@ exports.innerHeight = innerHeight;
8698
8663
  exports.innerWidth = innerWidth;
8699
8664
  exports.isChildOf = isChildOf;
8700
8665
  exports.isDetached = isDetached;
8666
+ exports.isHTMLElement = isHTMLElement;
8701
8667
  exports.isInput = isInput;
8668
+ exports.isInternalElement = isInternalElement;
8702
8669
  exports.isOutsideInput = isOutsideInput;
8703
- exports.isThisHotChild = isThisHotChild;
8704
8670
  exports.isVisible = isVisible;
8705
8671
  exports.makeElementContentEditableAndSelectItsContent = makeElementContentEditableAndSelectItsContent;
8706
8672
  exports.matchesCSSRules = matchesCSSRules;
@@ -8761,7 +8727,7 @@ function getParent(element) {
8761
8727
  * @param {HTMLElement} thisHotContainer The Handsontable container.
8762
8728
  * @returns {boolean}
8763
8729
  */
8764
- function isThisHotChild(element, thisHotContainer) {
8730
+ function isInternalElement(element, thisHotContainer) {
8765
8731
  const closestHandsontableContainer = element.closest('.handsontable');
8766
8732
  return !!closestHandsontableContainer && (closestHandsontableContainer.parentNode === thisHotContainer || closestHandsontableContainer === thisHotContainer);
8767
8733
  }
@@ -9666,20 +9632,26 @@ function getScrollbarWidth() {
9666
9632
  /**
9667
9633
  * Checks if the provided element has a vertical scrollbar.
9668
9634
  *
9669
- * @param {HTMLElement} element An element to check.
9635
+ * @param {HTMLElement|Window} element An element to check.
9670
9636
  * @returns {boolean}
9671
9637
  */
9672
9638
  function hasVerticalScrollbar(element) {
9639
+ if (element instanceof Window) {
9640
+ return element.document.body.scrollHeight > element.innerHeight;
9641
+ }
9673
9642
  return element.offsetWidth !== element.clientWidth;
9674
9643
  }
9675
9644
 
9676
9645
  /**
9677
9646
  * Checks if the provided element has a vertical scrollbar.
9678
9647
  *
9679
- * @param {HTMLElement} element An element to check.
9648
+ * @param {HTMLElement|Window} element An element to check.
9680
9649
  * @returns {boolean}
9681
9650
  */
9682
9651
  function hasHorizontalScrollbar(element) {
9652
+ if (element instanceof Window) {
9653
+ return element.document.body.scrollWidth > element.innerWidth;
9654
+ }
9683
9655
  return element.offsetHeight !== element.clientHeight;
9684
9656
  }
9685
9657
 
@@ -9842,6 +9814,18 @@ function runWithSelectedContendEditableElement(element, callback) {
9842
9814
  removeContentEditableFromElementAndDeselect(element, invisibleSelection);
9843
9815
  }
9844
9816
 
9817
+ /**
9818
+ * Check if the element is HTMLElement.
9819
+ *
9820
+ * @param {*} element Element to check.
9821
+ * @returns {boolean} `true` if the element is HTMLElement.
9822
+ */
9823
+ function isHTMLElement(element) {
9824
+ var _element$ownerDocumen;
9825
+ const OwnElement = element === null || element === void 0 || (_element$ownerDocumen = element.ownerDocument) === null || _element$ownerDocumen === void 0 ? void 0 : _element$ownerDocumen.defaultView.Element;
9826
+ return !!(OwnElement && OwnElement !== null && element instanceof OwnElement);
9827
+ }
9828
+
9845
9829
  /***/ }),
9846
9830
  /* 156 */
9847
9831
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
@@ -10107,7 +10091,7 @@ const domMessages = {
10107
10091
  function _injectProductInfo(key, element) {
10108
10092
  const hasValidType = !isEmpty(key);
10109
10093
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
10110
- const hotVersion = "15.1.0";
10094
+ const hotVersion = "15.2.0-next-9a1a15b-20250314";
10111
10095
  let keyValidityDate;
10112
10096
  let consoleMessageState = 'invalid';
10113
10097
  let domMessageState = 'invalid';
@@ -10115,7 +10099,7 @@ function _injectProductInfo(key, element) {
10115
10099
  const schemaValidity = _checkKeySchema(key);
10116
10100
  if (hasValidType || isNonCommercial || schemaValidity) {
10117
10101
  if (schemaValidity) {
10118
- const releaseDate = (0, _moment.default)("20/02/2025", 'DD/MM/YYYY');
10102
+ const releaseDate = (0, _moment.default)("19/03/2025", 'DD/MM/YYYY');
10119
10103
  const releaseDays = Math.floor(releaseDate.toDate().getTime() / 8.64e7);
10120
10104
  const keyValidityDays = _extractTime(key);
10121
10105
  keyValidityDate = (0, _moment.default)((keyValidityDays + 1) * 8.64e7, 'x').format('MMMM DD, YYYY');
@@ -12288,7 +12272,7 @@ function isKey(keyCode, baseCode) {
12288
12272
 
12289
12273
  /***/ }),
12290
12274
  /* 175 */
12291
- /***/ ((__unused_webpack_module, exports) => {
12275
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
12292
12276
 
12293
12277
  "use strict";
12294
12278
 
@@ -12300,6 +12284,7 @@ exports.isRightClick = isRightClick;
12300
12284
  exports.isTouchEvent = isTouchEvent;
12301
12285
  exports.offsetRelativeTo = offsetRelativeTo;
12302
12286
  exports.stopImmediatePropagation = stopImmediatePropagation;
12287
+ var _element = __webpack_require__(155);
12303
12288
  /**
12304
12289
  * Prevent other listeners of the same event from being called.
12305
12290
  *
@@ -12363,7 +12348,7 @@ function offsetRelativeTo(event, untilElement) {
12363
12348
  y: event.offsetY
12364
12349
  };
12365
12350
  let element = event.target;
12366
- if (!(untilElement instanceof HTMLElement) || element !== untilElement && element.contains(untilElement)) {
12351
+ if (!(0, _element.isHTMLElement)(untilElement) || element !== untilElement && element.contains(untilElement)) {
12367
12352
  return offset;
12368
12353
  }
12369
12354
  while (element !== untilElement) {
@@ -16446,7 +16431,7 @@ class FocusManager {
16446
16431
  return;
16447
16432
  }
16448
16433
  let elementToBeFocused = _classPrivateFieldGet(_hot, this).runHooks('modifyFocusedElement', currentHighlightCoords.row, currentHighlightCoords.col, element);
16449
- if (!(elementToBeFocused instanceof HTMLElement)) {
16434
+ if (!(0, _element.isHTMLElement)(elementToBeFocused)) {
16450
16435
  elementToBeFocused = element;
16451
16436
  }
16452
16437
  if (elementToBeFocused && !((_classPrivateFieldGet4 = _classPrivateFieldGet(_hot, this).getActiveEditor()) !== null && _classPrivateFieldGet4 !== void 0 && _classPrivateFieldGet4.isOpened())) {
@@ -16473,6 +16458,8 @@ class FocusManager {
16473
16458
  let delay = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _classPrivateFieldGet(_refocusDelay, this);
16474
16459
  // Re-focus on the editor's `TEXTAREA` element (or a predefined element) if the `imeFastEdit` option is enabled.
16475
16460
  if (_classPrivateFieldGet(_hot, this).getSettings().imeFastEdit && !((_classPrivateFieldGet5 = _classPrivateFieldGet(_hot, this).getActiveEditor()) !== null && _classPrivateFieldGet5 !== void 0 && _classPrivateFieldGet5.isOpened())) {
16461
+ var _classPrivateFieldGet6, _classPrivateFieldGet7;
16462
+ (_classPrivateFieldGet6 = _classPrivateFieldGet(_hot, this).getActiveEditor()) === null || _classPrivateFieldGet6 === void 0 || (_classPrivateFieldGet7 = _classPrivateFieldGet6.refreshValue) === null || _classPrivateFieldGet7 === void 0 || _classPrivateFieldGet7.call(_classPrivateFieldGet6);
16476
16463
  if (!_classPrivateFieldGet(_debouncedSelect, this).has(delay)) {
16477
16464
  _classPrivateFieldGet(_debouncedSelect, this).set(delay, (0, _function.debounce)(() => {
16478
16465
  var _this$getRefocusEleme;
@@ -16485,8 +16472,8 @@ class FocusManager {
16485
16472
  }
16486
16473
  exports.FocusManager = FocusManager;
16487
16474
  function _getSelectedCell(callback) {
16488
- var _classPrivateFieldGet6;
16489
- const highlight = (_classPrivateFieldGet6 = _classPrivateFieldGet(_hot, this).getSelectedRangeLast()) === null || _classPrivateFieldGet6 === void 0 ? void 0 : _classPrivateFieldGet6.highlight;
16475
+ var _classPrivateFieldGet8;
16476
+ const highlight = (_classPrivateFieldGet8 = _classPrivateFieldGet(_hot, this).getSelectedRangeLast()) === null || _classPrivateFieldGet8 === void 0 ? void 0 : _classPrivateFieldGet8.highlight;
16490
16477
  if (!highlight || !_classPrivateFieldGet(_hot, this).selection.isCellVisible(highlight)) {
16491
16478
  callback(null);
16492
16479
  return;
@@ -17206,6 +17193,7 @@ function unifyPluginArguments(pluginName, pluginClass, priority) {
17206
17193
  exports.__esModule = true;
17207
17194
  exports.createPriorityMap = createPriorityMap;
17208
17195
  __webpack_require__(5);
17196
+ __webpack_require__(115);
17209
17197
  __webpack_require__(142);
17210
17198
  var _number = __webpack_require__(200);
17211
17199
  var _function = __webpack_require__(163);
@@ -17295,6 +17283,7 @@ __webpack_require__(107);
17295
17283
  __webpack_require__(109);
17296
17284
  __webpack_require__(111);
17297
17285
  __webpack_require__(113);
17286
+ __webpack_require__(115);
17298
17287
  __webpack_require__(142);
17299
17288
  /* eslint-disable jsdoc/require-description-complete-sentence */
17300
17289
  /**
@@ -19337,6 +19326,15 @@ class TableView {
19337
19326
  return this._wt.wtTable.getHeight();
19338
19327
  }
19339
19328
 
19329
+ /**
19330
+ * Gets the table's offset.
19331
+ *
19332
+ * @returns {{ left: number, top: number }}
19333
+ */
19334
+ getTableOffset() {
19335
+ return this._wt.wtViewport.getWorkspaceOffset();
19336
+ }
19337
+
19340
19338
  /**
19341
19339
  * Gets the row header width. If there are multiple row headers, the width of
19342
19340
  * the sum of all of them is returned.
@@ -23552,6 +23550,7 @@ class Table {
23552
23550
  holder = this.domBindings.rootDocument.createElement('div');
23553
23551
  holder.style.position = 'relative';
23554
23552
  holder.className = 'wtHolder';
23553
+ (0, _element.setAttribute)(holder, [(0, _a11y.A11Y_TABINDEX)(-1)]);
23555
23554
  if (parent) {
23556
23555
  // if TABLE is detached (e.g. in Jasmine test), it has no parentNode so we cannot attach holder to it
23557
23556
  parent.insertBefore(holder, hider);
@@ -23948,12 +23947,12 @@ class Table {
23948
23947
  row = totalRows - CONTAINER.childNodes.length + row;
23949
23948
  } else if (CONTAINER === this.THEAD) {
23950
23949
  row = this.rowFilter.visibleColHeadedRowToSourceRow(row);
23951
- } else {
23950
+ } else if (this.rowFilter) {
23952
23951
  row = this.rowFilter.renderedToSource(row);
23953
23952
  }
23954
23953
  if ((0, _element.overlayContainsElement)(_overlay.CLONE_TOP_INLINE_START_CORNER, cellElement, this.wtRootElement) || (0, _element.overlayContainsElement)(_overlay.CLONE_INLINE_START, cellElement, this.wtRootElement) || (0, _element.overlayContainsElement)(_overlay.CLONE_BOTTOM_INLINE_START_CORNER, cellElement, this.wtRootElement)) {
23955
23954
  col = this.columnFilter.offsettedTH(col);
23956
- } else {
23955
+ } else if (this.columnFilter) {
23957
23956
  col = this.columnFilter.visibleRowHeadedColumnToSourceColumn(col);
23958
23957
  }
23959
23958
  const hookResult = this.wtSettings.getSetting('onModifyGetCoordsElement', row, col);
@@ -25353,6 +25352,7 @@ exports.ViewDiffer = ViewDiffer;
25353
25352
  var _interopRequireDefault = __webpack_require__(1);
25354
25353
  exports.__esModule = true;
25355
25354
  __webpack_require__(242);
25355
+ __webpack_require__(115);
25356
25356
  __webpack_require__(142);
25357
25357
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
25358
25358
  /**
@@ -29871,7 +29871,7 @@ function _scanCellsRange(callback) {
29871
29871
  }
29872
29872
  } else {
29873
29873
  const cell = wtTable.getCell(_classPrivateFieldGet(_activeOverlaysWot, this).createCellCoords(topRow, startColumn));
29874
- if (!(cell instanceof HTMLElement)) {
29874
+ if (!(0, _element.isHTMLElement)(cell)) {
29875
29875
  return;
29876
29876
  }
29877
29877
  }
@@ -30098,8 +30098,14 @@ class Border {
30098
30098
  */
30099
30099
  createMultipleSelectorHandles() {
30100
30100
  const {
30101
- rootDocument
30101
+ rootDocument,
30102
+ stylesHandler
30102
30103
  } = this.wot;
30104
+ const cellMobileHandleSize = stylesHandler.getCSSVariableValue('cell-mobile-handle-size');
30105
+ const cellMobileHandleBorderRadius = stylesHandler.getCSSVariableValue('cell-mobile-handle-border-radius');
30106
+ const cellMobileHandleBackgroundColor = stylesHandler.getCSSVariableValue('cell-mobile-handle-background-color');
30107
+ const cellMobileHandleBorderWidth = stylesHandler.getCSSVariableValue('cell-mobile-handle-border-width');
30108
+ const cellMobileHandleBorderColor = stylesHandler.getCSSVariableValue('cell-mobile-handle-border-color');
30103
30109
  this.selectionHandles = {
30104
30110
  top: rootDocument.createElement('DIV'),
30105
30111
  topHitArea: rootDocument.createElement('DIV'),
@@ -30128,13 +30134,20 @@ class Border {
30128
30134
  this.selectionHandles.styles.bottomHitArea[key] = value;
30129
30135
  this.selectionHandles.styles.topHitArea[key] = value;
30130
30136
  });
30131
- const handleStyle = {
30137
+ const handleStyle = stylesHandler.isClassicTheme() ? {
30132
30138
  position: 'absolute',
30133
30139
  height: `${width}px`,
30134
30140
  width: `${width}px`,
30135
30141
  'border-radius': `${parseInt(width / 1.5, 10)}px`,
30136
30142
  background: '#F5F5FF',
30137
30143
  border: '1px solid #4285c8'
30144
+ } : {
30145
+ position: 'absolute',
30146
+ height: `${cellMobileHandleSize}px`,
30147
+ width: `${cellMobileHandleSize}px`,
30148
+ 'border-radius': `${cellMobileHandleBorderRadius}px`,
30149
+ background: `${cellMobileHandleBackgroundColor}`,
30150
+ border: `${cellMobileHandleBorderWidth}px solid ${cellMobileHandleBorderColor}`
30138
30151
  };
30139
30152
  (0, _object.objectEach)(handleStyle, (value, key) => {
30140
30153
  this.selectionHandles.styles.bottom[key] = value;
@@ -30259,7 +30272,7 @@ class Border {
30259
30272
  fromTD = wtTable.getCell(this.wot.createCellCoords(fromRow, fromColumn));
30260
30273
  } else {
30261
30274
  fromTD = wtTable.getCell(this.wot.createCellCoords(fromRow, fromColumn));
30262
- if (!(fromTD instanceof HTMLElement)) {
30275
+ if (!(0, _element.isHTMLElement)(fromTD)) {
30263
30276
  this.disappear();
30264
30277
  return;
30265
30278
  }
@@ -31672,6 +31685,7 @@ var _default = exports["default"] = MasterTable;
31672
31685
 
31673
31686
 
31674
31687
  exports.__esModule = true;
31688
+ __webpack_require__(115);
31675
31689
  __webpack_require__(142);
31676
31690
  var _element = __webpack_require__(155);
31677
31691
  var _object = __webpack_require__(165);
@@ -31794,7 +31808,20 @@ class Viewport {
31794
31808
  * @returns {boolean}
31795
31809
  */
31796
31810
  hasVerticalScroll() {
31797
- return this.wtTable.hider.offsetHeight > this.getWorkspaceHeight();
31811
+ if (this.isVerticallyScrollableByWindow()) {
31812
+ const documentElement = this.domBindings.rootDocument.documentElement;
31813
+ return documentElement.scrollHeight > documentElement.clientHeight;
31814
+ }
31815
+ const {
31816
+ holder,
31817
+ hider
31818
+ } = this.wtTable;
31819
+ const holderHeight = holder.clientHeight;
31820
+ const hiderOffsetHeight = hider.offsetHeight;
31821
+ if (holderHeight < hiderOffsetHeight) {
31822
+ return true;
31823
+ }
31824
+ return hiderOffsetHeight > this.getWorkspaceHeight();
31798
31825
  }
31799
31826
 
31800
31827
  /**
@@ -31803,7 +31830,20 @@ class Viewport {
31803
31830
  * @returns {boolean}
31804
31831
  */
31805
31832
  hasHorizontalScroll() {
31806
- return this.wtTable.hider.offsetWidth > this.getWorkspaceWidth();
31833
+ if (this.isVerticallyScrollableByWindow()) {
31834
+ const documentElement = this.domBindings.rootDocument.documentElement;
31835
+ return documentElement.scrollWidth > documentElement.clientWidth;
31836
+ }
31837
+ const {
31838
+ holder,
31839
+ hider
31840
+ } = this.wtTable;
31841
+ const holderWidth = holder.clientWidth;
31842
+ const hiderOffsetWidth = hider.offsetWidth;
31843
+ if (holderWidth < hiderOffsetWidth) {
31844
+ return true;
31845
+ }
31846
+ return hiderOffsetWidth > this.getWorkspaceWidth();
31807
31847
  }
31808
31848
 
31809
31849
  /**
@@ -31843,7 +31883,7 @@ class Viewport {
31843
31883
  * @returns {number}
31844
31884
  */
31845
31885
  getWorkspaceOffset() {
31846
- return (0, _element.offset)(this.wtTable.TABLE);
31886
+ return (0, _element.offset)(this.wtTable.holder);
31847
31887
  }
31848
31888
 
31849
31889
  /**
@@ -32822,8 +32862,8 @@ class DataSource {
32822
32862
  value = valueHolder.value;
32823
32863
  }
32824
32864
  }
32825
- if (!Number.isInteger(row)) {
32826
- // invalid row number
32865
+ if (['__proto__', 'constructor', 'prototype'].includes(row)) {
32866
+ // prevent prototype pollution
32827
32867
  return;
32828
32868
  }
32829
32869
  if (!Number.isInteger(column)) {
@@ -34310,6 +34350,7 @@ exports.IndexMap = IndexMap;
34310
34350
  exports.__esModule = true;
34311
34351
  exports.getListWithInsertedItems = getListWithInsertedItems;
34312
34352
  exports.getListWithRemovedItems = getListWithRemovedItems;
34353
+ __webpack_require__(115);
34313
34354
  __webpack_require__(142);
34314
34355
  var _function = __webpack_require__(163);
34315
34356
  var _array = __webpack_require__(161);
@@ -34354,6 +34395,7 @@ function getListWithRemovedItems(indexedValues, removedIndexes) {
34354
34395
 
34355
34396
  var _interopRequireDefault = __webpack_require__(1);
34356
34397
  exports.__esModule = true;
34398
+ __webpack_require__(115);
34357
34399
  __webpack_require__(142);
34358
34400
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
34359
34401
  var _indexMap = __webpack_require__(298);
@@ -38935,7 +38977,7 @@ class DataMap {
38935
38977
  this.metaManager = metaManager;
38936
38978
  this.tableMeta = metaManager.getTableMeta();
38937
38979
  this.dataSource = data;
38938
- this.duckSchema = this.createDuckSchema();
38980
+ this.refreshDuckSchema();
38939
38981
  this.createMap();
38940
38982
  }
38941
38983
 
@@ -39298,14 +39340,10 @@ class DataMap {
39298
39340
  // List of removed indexes might be changed in the `beforeRemoveRow` hook. There may be new values.
39299
39341
  const numberOfRemovedIndexes = removedPhysicalIndexes.length;
39300
39342
  this.filterData(rowIndex, numberOfRemovedIndexes, removedPhysicalIndexes);
39301
-
39302
- // TODO: Function `removeRow` should validate fully, probably above.
39303
39343
  if (rowIndex < this.hot.countRows()) {
39304
39344
  this.hot.rowIndexMapper.removeIndexes(removedPhysicalIndexes);
39305
- const customDefinedColumns = (0, _mixed.isDefined)(this.tableMeta.columns) || (0, _mixed.isDefined)(this.tableMeta.dataSchema);
39306
-
39307
- // All rows have been removed. There shouldn't be any columns.
39308
- if (this.hot.rowIndexMapper.getNotTrimmedIndexesLength() === 0 && customDefinedColumns === false) {
39345
+ const preserveColumns = (0, _mixed.isDefined)(this.tableMeta.columns) || (0, _mixed.isDefined)(this.tableMeta.dataSchema) || this.tableMeta.colHeaders;
39346
+ if (this.hot.rowIndexMapper.getNotTrimmedIndexesLength() === 0 && !preserveColumns) {
39309
39347
  this.hot.columnIndexMapper.setIndexesSequence([]);
39310
39348
  }
39311
39349
  }
@@ -39368,13 +39406,9 @@ class DataMap {
39368
39406
  }
39369
39407
  }
39370
39408
  }
39371
-
39372
- // TODO: Function `removeCol` should validate fully, probably above.
39373
39409
  if (columnIndex < this.hot.countCols()) {
39374
39410
  this.hot.columnIndexMapper.removeIndexes(removedPhysicalIndexes);
39375
-
39376
- // All columns have been removed. There shouldn't be any rows.
39377
- if (this.hot.columnIndexMapper.getNotTrimmedIndexesLength() === 0) {
39411
+ if (!this.tableMeta.rowHeaders && this.hot.columnIndexMapper.getNotTrimmedIndexesLength() === 0) {
39378
39412
  this.hot.rowIndexMapper.setIndexesSequence([]);
39379
39413
  }
39380
39414
  }
@@ -44378,8 +44412,8 @@ var _default = () => {
44378
44412
  /**
44379
44413
  * The `rowHeights` option sets rows' heights, in pixels.
44380
44414
  *
44381
- * In the rendering process, the default row height is 23 px (in the classic theme: 22 px + 1 px of the row's bottom border) or whatever is defined in the used theme (based on the line height, vertical padding and cell borders).
44382
- * You can change it to equal or greater than the defautl value, by setting the `rowHeights` option to one of the following:
44415
+ * In the rendering process, the default row height is `classic: 23px`, `main: 29px`, `horizon: 37px` (in the classic theme: 22px + 1px of the row's bottom border) or whatever is defined in the used theme (based on the line height, vertical padding and cell borders).
44416
+ * You can change it to equal or greater than the default value, by setting the `rowHeights` option to one of the following:
44383
44417
  *
44384
44418
  * | Setting | Description | Example |
44385
44419
  * | ----------- | --------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
@@ -49709,6 +49743,7 @@ exports.createContext = createContext;
49709
49743
 
49710
49744
 
49711
49745
  exports.__esModule = true;
49746
+ __webpack_require__(115);
49712
49747
  __webpack_require__(142);
49713
49748
  // This file handles key-name discrepancies between browsers.
49714
49749
  // For the list of discrepancies, go to: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values.
@@ -50238,7 +50273,7 @@ class TextEditor extends _baseEditor.BaseEditor {
50238
50273
  */
50239
50274
  close() {
50240
50275
  this.autoResize.unObserve();
50241
- if ((0, _element.isThisHotChild)(this.hot.rootDocument.activeElement, this.hot.rootElement)) {
50276
+ if ((0, _element.isInternalElement)(this.hot.rootDocument.activeElement, this.hot.rootElement)) {
50242
50277
  this.hot.listen(); // don't refocus the table if user focused some cell outside of HT on purpose
50243
50278
  }
50244
50279
  this.hideEditableElement();
@@ -50850,18 +50885,9 @@ function textRenderer(hotInstance, TD, row, col, prop, value, cellProperties) {
50850
50885
  if (cellProperties.trimWhitespace) {
50851
50886
  escaped = escaped.trim();
50852
50887
  }
50853
- if (cellProperties.rendererTemplate) {
50854
- (0, _element.empty)(TD);
50855
- const TEMPLATE = hotInstance.rootDocument.createElement('TEMPLATE');
50856
- TEMPLATE.setAttribute('bind', '{{}}');
50857
- TEMPLATE.innerHTML = cellProperties.rendererTemplate;
50858
- HTMLTemplateElement.decorate(TEMPLATE);
50859
- TEMPLATE.model = hotInstance.getSourceDataAtRow(row);
50860
- TD.appendChild(TEMPLATE);
50861
- } else {
50862
- // this is faster than innerHTML. See: https://github.com/handsontable/handsontable/wiki/JavaScript-&-DOM-performance-tips
50863
- (0, _element.fastInnerText)(TD, escaped);
50864
- }
50888
+
50889
+ // this is faster than innerHTML. See: https://github.com/handsontable/handsontable/wiki/JavaScript-&-DOM-performance-tips
50890
+ (0, _element.fastInnerText)(TD, escaped);
50865
50891
  }
50866
50892
  textRenderer.RENDERER_TYPE = RENDERER_TYPE;
50867
50893
 
@@ -51090,6 +51116,7 @@ var _string = __webpack_require__(156);
51090
51116
  var _unicode = __webpack_require__(174);
51091
51117
  var _textRenderer = __webpack_require__(426);
51092
51118
  var _a11y = __webpack_require__(162);
51119
+ function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
51093
51120
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
51094
51121
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
51095
51122
  function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
@@ -51101,9 +51128,14 @@ const EDITOR_TYPE = exports.EDITOR_TYPE = 'autocomplete';
51101
51128
  * @class AutocompleteEditor
51102
51129
  */
51103
51130
  var _idPrefix = /*#__PURE__*/new WeakMap();
51131
+ var _AutocompleteEditor_brand = /*#__PURE__*/new WeakSet();
51104
51132
  class AutocompleteEditor extends _handsontableEditor.HandsontableEditor {
51105
51133
  constructor() {
51106
51134
  super(...arguments);
51135
+ /**
51136
+ * Fix width of the internal Handsontable's instance when editor has vertical scroll.
51137
+ */
51138
+ _classPrivateMethodInitSpec(this, _AutocompleteEditor_brand);
51107
51139
  /**
51108
51140
  * Query string to turn available values over.
51109
51141
  *
@@ -51411,21 +51443,16 @@ class AutocompleteEditor extends _handsontableEditor.HandsontableEditor {
51411
51443
  * @returns {boolean}
51412
51444
  */
51413
51445
  flipDropdownIfNeeded() {
51414
- const trimmingContainer = (0, _element.getTrimmingContainer)(this.hot.view._wt.wtTable.TABLE);
51415
- const isWindowAsScrollableElement = trimmingContainer === this.hot.rootWindow;
51416
- const preventOverflow = this.cellProperties.preventOverflow;
51417
- if (isWindowAsScrollableElement || !isWindowAsScrollableElement && (preventOverflow || preventOverflow === 'horizontal')) {
51418
- return false;
51446
+ const editorRect = this.getEditedCellRect();
51447
+ const editorHeight = editorRect.height;
51448
+ let spaceAbove = editorRect.top;
51449
+ if (this.hot.view.isVerticallyScrollableByWindow()) {
51450
+ const topOffset = this.hot.view.getTableOffset().top - this.hot.rootWindow.scrollY;
51451
+ spaceAbove = Math.max(spaceAbove + topOffset, 0);
51419
51452
  }
51420
- const textareaOffset = (0, _element.offset)(this.TEXTAREA);
51421
- const textareaHeight = (0, _element.outerHeight)(this.TEXTAREA);
51422
51453
  const dropdownHeight = this.getHeight();
51423
- const trimmingContainerScrollTop = trimmingContainer.scrollTop;
51424
- const headersHeight = (0, _element.outerHeight)(this.hot.view._wt.wtTable.THEAD);
51425
- const containerOffset = (0, _element.offset)(trimmingContainer);
51426
- const spaceAbove = textareaOffset.top - containerOffset.top - headersHeight + trimmingContainerScrollTop;
51427
- const spaceBelow = trimmingContainer.scrollHeight - spaceAbove - headersHeight - textareaHeight;
51428
- const flipNeeded = dropdownHeight > spaceBelow && spaceAbove > spaceBelow;
51454
+ const spaceBelow = this.hot.view.getWorkspaceHeight() - spaceAbove - editorHeight;
51455
+ const flipNeeded = dropdownHeight > spaceBelow && spaceAbove > spaceBelow + editorHeight;
51429
51456
  if (flipNeeded) {
51430
51457
  this.flipDropdown(dropdownHeight);
51431
51458
  } else {
@@ -51485,7 +51512,6 @@ class AutocompleteEditor extends _handsontableEditor.HandsontableEditor {
51485
51512
  dropdownStyle.top = '';
51486
51513
  this.htEditor.flipped = undefined;
51487
51514
  }
51488
-
51489
51515
  /**
51490
51516
  * Updates width and height of the internal Handsontable's instance.
51491
51517
  *
@@ -51496,11 +51522,7 @@ class AutocompleteEditor extends _handsontableEditor.HandsontableEditor {
51496
51522
  width: this.getWidth(),
51497
51523
  height: this.getHeight()
51498
51524
  });
51499
- if (this.htEditor.view.hasVerticalScroll()) {
51500
- this.htEditor.updateSettings({
51501
- width: this.htEditor.getSettings().width + (0, _element.getScrollbarWidth)(this.hot.rootDocument)
51502
- });
51503
- }
51525
+ _assertClassBrand(_AutocompleteEditor_brand, this, _fixDropdownWidth).call(this);
51504
51526
  this.htEditor.view._wt.wtTable.alignOverlaysWithTrimmingContainer();
51505
51527
  }
51506
51528
 
@@ -51514,6 +51536,8 @@ class AutocompleteEditor extends _handsontableEditor.HandsontableEditor {
51514
51536
  this.htEditor.updateSettings({
51515
51537
  height
51516
51538
  });
51539
+ _assertClassBrand(_AutocompleteEditor_brand, this, _fixDropdownWidth).call(this);
51540
+ this.htEditor.view._wt.wtTable.alignOverlaysWithTrimmingContainer();
51517
51541
  }
51518
51542
 
51519
51543
  /**
@@ -51637,6 +51661,13 @@ class AutocompleteEditor extends _handsontableEditor.HandsontableEditor {
51637
51661
  }
51638
51662
  }
51639
51663
  exports.AutocompleteEditor = AutocompleteEditor;
51664
+ function _fixDropdownWidth() {
51665
+ if (this.htEditor.view.hasVerticalScroll()) {
51666
+ this.htEditor.updateSettings({
51667
+ width: this.htEditor.getSettings().width + (0, _element.getScrollbarWidth)(this.hot.rootDocument)
51668
+ });
51669
+ }
51670
+ }
51640
51671
 
51641
51672
  /***/ }),
51642
51673
  /* 434 */
@@ -52025,21 +52056,27 @@ var _element = __webpack_require__(155);
52025
52056
  var _object = __webpack_require__(165);
52026
52057
  var _unicode = __webpack_require__(174);
52027
52058
  var _browser = __webpack_require__(164);
52059
+ function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
52060
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
52061
+ 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"); }
52028
52062
  const EDITOR_TYPE = exports.EDITOR_TYPE = 'date';
52029
52063
  const SHORTCUTS_GROUP_EDITOR = 'dateEditor';
52064
+ const DEFAULT_DATE_FORMAT = 'DD/MM/YYYY';
52030
52065
 
52031
52066
  /**
52032
52067
  * @private
52033
52068
  * @class DateEditor
52034
52069
  */
52070
+ var _DateEditor_brand = /*#__PURE__*/new WeakSet();
52035
52071
  class DateEditor extends _textEditor.TextEditor {
52036
52072
  constructor() {
52037
52073
  super(...arguments);
52038
- // TODO: Move this option to general settings
52039
52074
  /**
52040
- * @type {string}
52075
+ * Gets the current date format for this cell.
52076
+ *
52077
+ * @returns {string}
52041
52078
  */
52042
- (0, _defineProperty2.default)(this, "defaultDateFormat", 'DD/MM/YYYY');
52079
+ _classPrivateMethodInitSpec(this, _DateEditor_brand);
52043
52080
  /**
52044
52081
  * @type {boolean}
52045
52082
  */
@@ -52205,7 +52242,7 @@ class DateEditor extends _textEditor.TextEditor {
52205
52242
  * @param {Event} event The event object.
52206
52243
  */
52207
52244
  showDatepicker(event) {
52208
- const dateFormat = this.cellProperties.dateFormat || this.defaultDateFormat;
52245
+ const dateFormat = _assertClassBrand(_DateEditor_brand, this, _getDateFormat).call(this);
52209
52246
  const isMouseDown = this.hot.view.isMouseDown();
52210
52247
  const isMeta = event ? (0, _unicode.isFunctionKey)(event.keyCode) : false;
52211
52248
  let dateStr;
@@ -52257,6 +52294,7 @@ class DateEditor extends _textEditor.TextEditor {
52257
52294
  * @returns {object}
52258
52295
  */
52259
52296
  getDatePickerConfig() {
52297
+ var _options$format;
52260
52298
  const htInput = this.TEXTAREA;
52261
52299
  const options = {};
52262
52300
  if (this.cellProperties && this.cellProperties.datePickerConfig) {
@@ -52269,7 +52307,7 @@ class DateEditor extends _textEditor.TextEditor {
52269
52307
  options.container = this.datePicker;
52270
52308
  options.bound = false;
52271
52309
  options.keyboardInput = false;
52272
- options.format = options.format || this.defaultDateFormat;
52310
+ options.format = (_options$format = options.format) !== null && _options$format !== void 0 ? _options$format : _assertClassBrand(_DateEditor_brand, this, _getDateFormat).call(this);
52273
52311
  options.reposition = options.reposition || false;
52274
52312
  // Set the RTL to `false`. Due to the https://github.com/Pikaday/Pikaday/issues/647 bug, the layout direction
52275
52313
  // of the date picker is controlled by juggling the "dir" attribute of the root date picker element.
@@ -52278,7 +52316,7 @@ class DateEditor extends _textEditor.TextEditor {
52278
52316
  options.onSelect = value => {
52279
52317
  let dateStr = value;
52280
52318
  if (!isNaN(dateStr.getTime())) {
52281
- dateStr = (0, _moment.default)(dateStr).format(this.cellProperties.dateFormat || this.defaultDateFormat);
52319
+ dateStr = (0, _moment.default)(dateStr).format(_assertClassBrand(_DateEditor_brand, this, _getDateFormat).call(this));
52282
52320
  }
52283
52321
  this.setValue(dateStr);
52284
52322
  if (origOnSelect) {
@@ -52346,6 +52384,10 @@ class DateEditor extends _textEditor.TextEditor {
52346
52384
  }
52347
52385
  }
52348
52386
  exports.DateEditor = DateEditor;
52387
+ function _getDateFormat() {
52388
+ var _this$cellProperties$;
52389
+ return (_this$cellProperties$ = this.cellProperties.dateFormat) !== null && _this$cellProperties$ !== void 0 ? _this$cellProperties$ : DEFAULT_DATE_FORMAT;
52390
+ }
52349
52391
 
52350
52392
  /***/ }),
52351
52393
  /* 440 */
@@ -53363,7 +53405,7 @@ function checkboxRenderer(hotInstance, TD, row, col, prop, value, cellProperties
53363
53405
  continue;
53364
53406
  }
53365
53407
  const cell = hotInstance.getCell(visualRow, visualColumn);
53366
- if (cell instanceof HTMLElement) {
53408
+ if ((0, _element.isHTMLElement)(cell)) {
53367
53409
  const checkboxes = cell.querySelectorAll('input[type=checkbox]');
53368
53410
  if (checkboxes.length > 0) {
53369
53411
  return true;
@@ -53631,8 +53673,16 @@ function getRenderedValue(value, cellProperties) {
53631
53673
  function numericRenderer(hotInstance, TD, row, col, prop, value, cellProperties) {
53632
53674
  let newValue = value;
53633
53675
  if ((0, _number.isNumeric)(newValue)) {
53634
- const className = cellProperties.className || '';
53635
- const classArr = className.length ? className.split(' ') : [];
53676
+ let classArr = [];
53677
+ if (Array.isArray(cellProperties.className)) {
53678
+ classArr = cellProperties.className;
53679
+ } else {
53680
+ var _cellProperties$class;
53681
+ const className = (_cellProperties$class = cellProperties.className) !== null && _cellProperties$class !== void 0 ? _cellProperties$class : '';
53682
+ if (className.length) {
53683
+ classArr = className.split(' ');
53684
+ }
53685
+ }
53636
53686
  newValue = getRenderedValue(newValue, cellProperties);
53637
53687
  if (classArr.indexOf('htLeft') < 0 && classArr.indexOf('htCenter') < 0 && classArr.indexOf('htRight') < 0 && classArr.indexOf('htJustify') < 0) {
53638
53688
  classArr.push('htRight');
@@ -54615,23 +54665,23 @@ var _mergeCells = __webpack_require__(688);
54615
54665
  exports.MergeCells = _mergeCells.MergeCells;
54616
54666
  var _multiColumnSorting = __webpack_require__(702);
54617
54667
  exports.MultiColumnSorting = _multiColumnSorting.MultiColumnSorting;
54618
- var _multipleSelectionHandles = __webpack_require__(707);
54668
+ var _multipleSelectionHandles = __webpack_require__(706);
54619
54669
  exports.MultipleSelectionHandles = _multipleSelectionHandles.MultipleSelectionHandles;
54620
- var _nestedHeaders = __webpack_require__(709);
54670
+ var _nestedHeaders = __webpack_require__(708);
54621
54671
  exports.NestedHeaders = _nestedHeaders.NestedHeaders;
54622
- var _nestedRows = __webpack_require__(725);
54672
+ var _nestedRows = __webpack_require__(724);
54623
54673
  exports.NestedRows = _nestedRows.NestedRows;
54624
- var _persistentState = __webpack_require__(733);
54674
+ var _persistentState = __webpack_require__(732);
54625
54675
  exports.PersistentState = _persistentState.PersistentState;
54626
- var _search = __webpack_require__(736);
54676
+ var _search = __webpack_require__(735);
54627
54677
  exports.Search = _search.Search;
54628
- var _stretchColumns = __webpack_require__(738);
54678
+ var _stretchColumns = __webpack_require__(737);
54629
54679
  exports.StretchColumns = _stretchColumns.StretchColumns;
54630
- var _touchScroll = __webpack_require__(744);
54680
+ var _touchScroll = __webpack_require__(743);
54631
54681
  exports.TouchScroll = _touchScroll.TouchScroll;
54632
- var _trimRows = __webpack_require__(746);
54682
+ var _trimRows = __webpack_require__(745);
54633
54683
  exports.TrimRows = _trimRows.TrimRows;
54634
- var _undoRedo = __webpack_require__(748);
54684
+ var _undoRedo = __webpack_require__(747);
54635
54685
  exports.UndoRedo = _undoRedo.UndoRedo;
54636
54686
  var _registry = __webpack_require__(198);
54637
54687
  exports.registerPlugin = _registry.registerPlugin;
@@ -58669,6 +58719,13 @@ const SHORTCUTS_GROUP = PLUGIN_KEY;
58669
58719
  _hooks.Hooks.getSingleton().register('beforeColumnSort');
58670
58720
  _hooks.Hooks.getSingleton().register('afterColumnSort');
58671
58721
 
58722
+ /**
58723
+ * Tracks the conflicts between `columnSorting` and `multiColumnSorting` options.
58724
+ * Only one plugin can be enabled for Handsontable instance. Once one of them is enabled,
58725
+ * the other should remain disabled even if it's set to `true`.
58726
+ */
58727
+ const pluginConflictsState = new WeakMap();
58728
+
58672
58729
  // DIFF - MultiColumnSorting & ColumnSorting: changed configuration documentation.
58673
58730
  /**
58674
58731
  * @plugin ColumnSorting
@@ -58777,9 +58834,17 @@ class ColumnSorting extends _base.BasePlugin {
58777
58834
  */
58778
58835
  enablePlugin() {
58779
58836
  var _this = this;
58837
+ if (pluginConflictsState.has(this.hot) && pluginConflictsState.get(this.hot) !== this.pluginKey) {
58838
+ this.hot.updateSettings({
58839
+ [this.pluginKey]: false
58840
+ });
58841
+ (0, _utils.warnAboutPluginsConflict)(pluginConflictsState.get(this.hot), this.pluginKey);
58842
+ return;
58843
+ }
58780
58844
  if (this.enabled) {
58781
58845
  return;
58782
58846
  }
58847
+ pluginConflictsState.set(this.hot, this.pluginKey);
58783
58848
  this.columnStatesManager = new _columnStatesManager.ColumnStatesManager(this.hot, `${this.pluginKey}.sortingStates`);
58784
58849
  this.columnMetaCache = new _translations.PhysicalIndexToValueMap(physicalIndex => {
58785
58850
  let visualIndex = this.hot.toVisualColumn(physicalIndex);
@@ -58824,6 +58889,7 @@ class ColumnSorting extends _base.BasePlugin {
58824
58889
  }
58825
58890
  this.updateHeaderClasses(headerSpanElement);
58826
58891
  };
58892
+ pluginConflictsState.delete(this.hot);
58827
58893
 
58828
58894
  // Changing header width and removing indicator.
58829
58895
  this.hot.addHook('afterGetColHeader', clearColHeader);
@@ -59301,7 +59367,7 @@ class ColumnSorting extends _base.BasePlugin {
59301
59367
  * @param {object} newSettings New settings object.
59302
59368
  */
59303
59369
  onUpdateSettings(newSettings) {
59304
- super.onUpdateSettings();
59370
+ super.onUpdateSettings(newSettings);
59305
59371
  if (this.columnMetaCache !== null) {
59306
59372
  // Column meta cache base on settings, thus we should re-init the map.
59307
59373
  this.columnMetaCache.init(this.hot.columnIndexMapper.getNumberOfIndexes());
@@ -59431,6 +59497,7 @@ function _onBeforeOnCellMouseDown(event, coords, TD, controller) {
59431
59497
 
59432
59498
  var _interopRequireDefault = __webpack_require__(1);
59433
59499
  exports.__esModule = true;
59500
+ __webpack_require__(115);
59434
59501
  __webpack_require__(142);
59435
59502
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
59436
59503
  var _object = __webpack_require__(165);
@@ -59659,6 +59726,7 @@ exports.createDateTimeCompareFunction = createDateTimeCompareFunction;
59659
59726
  exports.getHeaderSpanElement = getHeaderSpanElement;
59660
59727
  exports.getNextSortOrder = getNextSortOrder;
59661
59728
  exports.isFirstLevelColumnHeader = isFirstLevelColumnHeader;
59729
+ exports.warnAboutPluginsConflict = warnAboutPluginsConflict;
59662
59730
  exports.wasHeaderClickedProperly = wasHeaderClickedProperly;
59663
59731
  __webpack_require__(91);
59664
59732
  __webpack_require__(102);
@@ -59675,6 +59743,8 @@ var _object = __webpack_require__(165);
59675
59743
  var _event = __webpack_require__(175);
59676
59744
  var _mixed = __webpack_require__(158);
59677
59745
  var _sortService = __webpack_require__(526);
59746
+ var _console = __webpack_require__(178);
59747
+ var _templateLiteralTag = __webpack_require__(160);
59678
59748
  const ASC_SORT_STATE = exports.ASC_SORT_STATE = 'asc';
59679
59749
  const DESC_SORT_STATE = exports.DESC_SORT_STATE = 'desc';
59680
59750
  const HEADER_SPAN_CLASS = exports.HEADER_SPAN_CLASS = 'colHeader';
@@ -59827,6 +59897,17 @@ function createDateTimeCompareFunction(sortOrder, format, columnPluginSettings)
59827
59897
  };
59828
59898
  }
59829
59899
 
59900
+ /**
59901
+ * Warn users about problems when using `columnSorting` and `multiColumnSorting` plugins simultaneously.
59902
+ *
59903
+ * @param {string} workingPlugin The plugin that will work.
59904
+ * @param {string} disabledPlugin The plugin that will remain disabled.
59905
+ */
59906
+ function warnAboutPluginsConflict(workingPlugin, disabledPlugin) {
59907
+ (0, _console.warn)((0, _templateLiteralTag.toSingleLine)`Plugins \`columnSorting\` and \`multiColumnSorting\` should not be enabled simultaneously.\x20
59908
+ Only \`${workingPlugin}\` will work. The \`${disabledPlugin}\` plugin will remain disabled.`);
59909
+ }
59910
+
59830
59911
  /***/ }),
59831
59912
  /* 526 */
59832
59913
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
@@ -61951,6 +62032,9 @@ class Comments extends _base.BasePlugin {
61951
62032
  innerHeight
61952
62033
  } = this.hot.rootWindow;
61953
62034
  const documentElement = this.hot.rootDocument.documentElement;
62035
+ const scrollbarWidth = (0, _element.getScrollbarWidth)(this.hot.rootDocument);
62036
+ const verticalScrollbarWidth = (0, _element.hasVerticalScrollbar)(this.hot.rootWindow) ? scrollbarWidth : 0;
62037
+ const horizontalScrollbarWidth = (0, _element.hasHorizontalScrollbar)(this.hot.rootWindow) ? scrollbarWidth : 0;
61954
62038
  let x = left + rootWindow.scrollX + lastColWidth;
61955
62039
  let y = top + rootWindow.scrollY + lastRowHeight;
61956
62040
  if (this.hot.isRtl()) {
@@ -61958,12 +62042,12 @@ class Comments extends _base.BasePlugin {
61958
62042
  }
61959
62043
 
61960
62044
  // flip to the right or left the comments editor position when it goes out of browser viewport
61961
- if (this.hot.isLtr() && left + cellWidth + editorWidth > innerWidth) {
62045
+ if (this.hot.isLtr() && left + cellWidth + editorWidth > innerWidth - verticalScrollbarWidth) {
61962
62046
  x = left + rootWindow.scrollX - editorWidth - 1;
61963
62047
  } else if (this.hot.isRtl() && x < -(documentElement.scrollWidth - documentElement.clientWidth)) {
61964
62048
  x = left + rootWindow.scrollX + lastColWidth + 1;
61965
62049
  }
61966
- if (top + editorHeight > innerHeight) {
62050
+ if (top + editorHeight > innerHeight - horizontalScrollbarWidth) {
61967
62051
  y -= editorHeight - cellHeight + 1;
61968
62052
  }
61969
62053
  _classPrivateFieldGet(_editor, this).setPosition(x, y);
@@ -63163,19 +63247,14 @@ function columnLeftItem() {
63163
63247
  return true;
63164
63248
  }
63165
63249
  const range = this.getSelectedRangeLast();
63166
- if (!range) {
63167
- return true;
63168
- }
63169
- if (range.isSingleHeader() && range.highlight.col < 0) {
63250
+ if (!range || this.selection.isSelectedByRowHeader() || range.isSingleHeader() && range.highlight.col < 0 || this.countSourceCols() >= this.getSettings().maxCols) {
63170
63251
  return true;
63171
63252
  }
63172
63253
  if (this.selection.isSelectedByCorner()) {
63173
- const totalColumns = this.countCols();
63174
-
63175
63254
  // Enable "Insert column left" only when there is at least one column.
63176
- return totalColumns === 0;
63255
+ return this.countCols() === 0;
63177
63256
  }
63178
- return this.selection.isSelectedByRowHeader() || this.countCols() >= this.getSettings().maxCols;
63257
+ return false;
63179
63258
  },
63180
63259
  hidden() {
63181
63260
  return !this.getSettings().allowInsertColumn;
@@ -63216,17 +63295,10 @@ function columnRightItem() {
63216
63295
  return true;
63217
63296
  }
63218
63297
  const range = this.getSelectedRangeLast();
63219
- if (!range) {
63220
- return true;
63221
- }
63222
- if (range.isSingleHeader() && range.highlight.col < 0) {
63298
+ if (!range || this.selection.isSelectedByRowHeader() || range.isSingleHeader() && range.highlight.col < 0 || this.countSourceCols() >= this.getSettings().maxCols) {
63223
63299
  return true;
63224
63300
  }
63225
- if (this.selection.isSelectedByCorner()) {
63226
- // Enable "Insert column right" always when the menu is triggered by corner click.
63227
- return false;
63228
- }
63229
- return this.selection.isSelectedByRowHeader() || this.countCols() >= this.getSettings().maxCols;
63301
+ return false;
63230
63302
  },
63231
63303
  hidden() {
63232
63304
  return !this.getSettings().allowInsertColumn;
@@ -63496,19 +63568,14 @@ function rowAboveItem() {
63496
63568
  },
63497
63569
  disabled() {
63498
63570
  const range = this.getSelectedRangeLast();
63499
- if (!range) {
63500
- return true;
63501
- }
63502
- if (range.isSingleHeader() && range.highlight.row < 0) {
63571
+ if (!range || this.selection.isSelectedByColumnHeader() || range.isSingleHeader() && range.highlight.row < 0 || this.countSourceRows() >= this.getSettings().maxRows) {
63503
63572
  return true;
63504
63573
  }
63505
63574
  if (this.selection.isSelectedByCorner()) {
63506
- const totalRows = this.countRows();
63507
-
63508
63575
  // Enable "Insert row above" only when there is at least one row.
63509
- return totalRows === 0;
63576
+ return this.countRows() === 0;
63510
63577
  }
63511
- return this.selection.isSelectedByColumnHeader() || this.countRows() >= this.getSettings().maxRows;
63578
+ return false;
63512
63579
  },
63513
63580
  hidden() {
63514
63581
  return !this.getSettings().allowInsertRow;
@@ -63545,17 +63612,10 @@ function rowBelowItem() {
63545
63612
  },
63546
63613
  disabled() {
63547
63614
  const range = this.getSelectedRangeLast();
63548
- if (!range) {
63615
+ if (!range || this.selection.isSelectedByColumnHeader() || range.isSingleHeader() && range.highlight.row < 0 || this.countSourceRows() >= this.getSettings().maxRows) {
63549
63616
  return true;
63550
63617
  }
63551
- if (range.isSingleHeader() && range.highlight.row < 0) {
63552
- return true;
63553
- }
63554
- if (this.selection.isSelectedByCorner()) {
63555
- // Enable "Insert row below" always when the menu is triggered by corner click.
63556
- return false;
63557
- }
63558
- return this.selection.isSelectedByColumnHeader() || this.countRows() >= this.getSettings().maxRows;
63618
+ return false;
63559
63619
  },
63560
63620
  hidden() {
63561
63621
  return !this.getSettings().allowInsertRow;
@@ -64742,7 +64802,6 @@ class Menu {
64742
64802
  this.openSubMenu(coords.row);
64743
64803
  }
64744
64804
  },
64745
- rowHeights: row => filteredItems[row].name === _predefinedItems.SEPARATOR ? 1 : undefined,
64746
64805
  afterOnCellContextMenu: event => {
64747
64806
  event.preventDefault();
64748
64807
 
@@ -65013,6 +65072,7 @@ class Menu {
65013
65072
  * and adjusts the width and height of the menu's holder and hider elements accordingly.
65014
65073
  */
65015
65074
  updateMenuDimensions() {
65075
+ const stylesHandler = this.hotMenu.view.getStylesHandler();
65016
65076
  const {
65017
65077
  wtTable
65018
65078
  } = this.hotMenu.view._wt;
@@ -65025,8 +65085,14 @@ class Menu {
65025
65085
  const currentRowHeight = itemCell ? (0, _element.outerHeight)(this.hotMenu.getCell(index, 0)) : 0;
65026
65086
  return accumulator + (value.name === _predefinedItems.SEPARATOR ? 1 : currentRowHeight);
65027
65087
  }, 0);
65028
- holderStyle.width = `${currentHiderWidth}px`;
65029
- holderStyle.height = `${realHeight}px`;
65088
+ if (stylesHandler.isClassicTheme()) {
65089
+ // Additional 3px to menu's size because of additional border around its `table.htCore`.
65090
+ holderStyle.width = `${currentHiderWidth + 3}px`;
65091
+ holderStyle.height = `${realHeight + 3}px`;
65092
+ } else {
65093
+ holderStyle.width = `${currentHiderWidth}px`;
65094
+ holderStyle.height = `${realHeight}px`;
65095
+ }
65030
65096
  hiderStyle.height = holderStyle.height;
65031
65097
  }
65032
65098
 
@@ -66728,12 +66794,10 @@ class CopyPaste extends _base.BasePlugin {
66728
66794
  * @private
66729
66795
  */
66730
66796
  onCopy(event) {
66731
- var _event$target, _this$hot$getSelected;
66797
+ var _event$target;
66732
66798
  const focusedElement = this.hot.getFocusManager().getRefocusElement();
66733
66799
  const isHotInput = (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.hasAttribute('data-hot-input');
66734
- const selectedCell = (_this$hot$getSelected = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected === void 0 ? void 0 : _this$hot$getSelected.highlight;
66735
- const TD = selectedCell ? this.hot.getCell(selectedCell.row, selectedCell.col, true) : null;
66736
- if (!this.hot.isListening() && !_classPrivateFieldGet(_isTriggeredByCopy, this) || this.isEditorOpened() || event.target instanceof HTMLElement && (isHotInput && event.target !== focusedElement || !isHotInput && event.target !== this.hot.rootDocument.body && TD !== event.target)) {
66800
+ if (!this.hot.isListening() && !_classPrivateFieldGet(_isTriggeredByCopy, this) || this.isEditorOpened() || (0, _element.isHTMLElement)(event.target) && (isHotInput && event.target !== focusedElement || !isHotInput && event.target !== this.hot.rootDocument.body && !(0, _element.isInternalElement)(event.target, this.hot.rootElement))) {
66737
66801
  return;
66738
66802
  }
66739
66803
  event.preventDefault();
@@ -66763,12 +66827,10 @@ class CopyPaste extends _base.BasePlugin {
66763
66827
  * @private
66764
66828
  */
66765
66829
  onCut(event) {
66766
- var _event$target2, _this$hot$getSelected2;
66830
+ var _event$target2;
66767
66831
  const focusedElement = this.hot.getFocusManager().getRefocusElement();
66768
66832
  const isHotInput = (_event$target2 = event.target) === null || _event$target2 === void 0 ? void 0 : _event$target2.hasAttribute('data-hot-input');
66769
- const selectedCell = (_this$hot$getSelected2 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected2 === void 0 ? void 0 : _this$hot$getSelected2.highlight;
66770
- const TD = selectedCell ? this.hot.getCell(selectedCell.row, selectedCell.col, true) : null;
66771
- if (!this.hot.isListening() && !_classPrivateFieldGet(_isTriggeredByCut, this) || this.isEditorOpened() || event.target instanceof HTMLElement && (isHotInput && event.target !== focusedElement || !isHotInput && event.target !== this.hot.rootDocument.body && TD !== event.target)) {
66833
+ if (!this.hot.isListening() && !_classPrivateFieldGet(_isTriggeredByCut, this) || this.isEditorOpened() || (0, _element.isHTMLElement)(event.target) && (isHotInput && event.target !== focusedElement || !isHotInput && event.target !== this.hot.rootDocument.body && !(0, _element.isInternalElement)(event.target, this.hot.rootElement))) {
66772
66834
  return;
66773
66835
  }
66774
66836
  event.preventDefault();
@@ -66797,12 +66859,10 @@ class CopyPaste extends _base.BasePlugin {
66797
66859
  * @private
66798
66860
  */
66799
66861
  onPaste(event) {
66800
- var _event$target3, _this$hot$getSelected3;
66862
+ var _event$target3;
66801
66863
  const focusedElement = this.hot.getFocusManager().getRefocusElement();
66802
66864
  const isHotInput = (_event$target3 = event.target) === null || _event$target3 === void 0 ? void 0 : _event$target3.hasAttribute('data-hot-input');
66803
- const selectedCell = (_this$hot$getSelected3 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected3 === void 0 ? void 0 : _this$hot$getSelected3.highlight;
66804
- const TD = selectedCell ? this.hot.getCell(selectedCell.row, selectedCell.col, true) : null;
66805
- if (!this.hot.isListening() || this.isEditorOpened() || !this.hot.getSelected() || event.target instanceof HTMLElement && (isHotInput && event.target !== focusedElement || !isHotInput && event.target !== this.hot.rootDocument.body && TD !== event.target)) {
66865
+ if (!this.hot.isListening() || this.isEditorOpened() || !this.hot.getSelected() || (0, _element.isHTMLElement)(event.target) && (isHotInput && event.target !== focusedElement || !isHotInput && event.target !== this.hot.rootDocument.body && !(0, _element.isInternalElement)(event.target, this.hot.rootElement))) {
66806
66866
  return;
66807
66867
  }
66808
66868
  event.preventDefault();
@@ -70000,6 +70060,7 @@ function typeFactory(type, dataProvider, options) {
70000
70060
 
70001
70061
  var _interopRequireDefault = __webpack_require__(1);
70002
70062
  exports.__esModule = true;
70063
+ __webpack_require__(115);
70003
70064
  __webpack_require__(142);
70004
70065
  var _array = __webpack_require__(161);
70005
70066
  var _mixed = __webpack_require__(158);
@@ -70254,6 +70315,7 @@ const SHORTCUTS_GROUP = PLUGIN_KEY;
70254
70315
  */
70255
70316
  var _menuFocusNavigator = /*#__PURE__*/new WeakMap();
70256
70317
  var _dropdownMenuTraces = /*#__PURE__*/new WeakMap();
70318
+ var _previousConditionStack = /*#__PURE__*/new WeakMap();
70257
70319
  var _Filters_brand = /*#__PURE__*/new WeakSet();
70258
70320
  class Filters extends _base.BasePlugin {
70259
70321
  static get PLUGIN_KEY() {
@@ -70325,6 +70387,13 @@ class Filters extends _base.BasePlugin {
70325
70387
  * @type {WeakSet<Menu>}
70326
70388
  */
70327
70389
  _classPrivateFieldInitSpec(this, _dropdownMenuTraces, new WeakSet());
70390
+ /**
70391
+ * Stores the previous state of the condition stack before the latest filter operation.
70392
+ * This is used in the `beforeFilter` plugin to allow performing the undo operation.
70393
+ *
70394
+ * @type {Array}
70395
+ */
70396
+ _classPrivateFieldInitSpec(this, _previousConditionStack, []);
70328
70397
  this.hot.addHook('afterGetColHeader', function () {
70329
70398
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
70330
70399
  args[_key] = arguments[_key];
@@ -70667,6 +70736,51 @@ class Filters extends _base.BasePlugin {
70667
70736
  }
70668
70737
  }
70669
70738
 
70739
+ /**
70740
+ * Imports filter conditions to all columns to the plugin. The method accepts
70741
+ * the array of conditions with the same structure as the {@link Filters#exportConditions} method returns.
70742
+ * Importing conditions will replace the current conditions. Once replaced, the state of the condition
70743
+ * will be reflected in the UI. To apply the changes and filter the table, call
70744
+ * the {@link Filters#filter} method eventually.
70745
+ *
70746
+ * @param {Array} conditions Array of conditions.
70747
+ */
70748
+ importConditions(conditions) {
70749
+ this.conditionCollection.importAllConditions(conditions);
70750
+ }
70751
+
70752
+ /* eslint-disable jsdoc/require-description-complete-sentence */
70753
+ /**
70754
+ * Exports filter conditions for all columns from the plugin.
70755
+ * The array represents the filter state for each column. For example:
70756
+ *
70757
+ * ```js
70758
+ * [
70759
+ * {
70760
+ * column: 1,
70761
+ * operation: 'conjunction',
70762
+ * conditions: [
70763
+ * { name: 'gt', args: [95] },
70764
+ * ]
70765
+ * },
70766
+ * {
70767
+ * column: 7,
70768
+ * operation: 'conjunction',
70769
+ * conditions: [
70770
+ * { name: 'contains', args: ['mike'] },
70771
+ * { name: 'begins_with', args: ['m'] },
70772
+ * ]
70773
+ * },
70774
+ * ]
70775
+ * ```
70776
+ *
70777
+ * @returns {Array}
70778
+ */
70779
+ /* eslint-enable jsdoc/require-description-complete-sentence */
70780
+ exportConditions() {
70781
+ return this.conditionCollection.exportAllConditions();
70782
+ }
70783
+
70670
70784
  /**
70671
70785
  * Filters data based on added filter conditions.
70672
70786
  *
@@ -70680,8 +70794,8 @@ class Filters extends _base.BasePlugin {
70680
70794
  const dataFilter = this._createDataFilter();
70681
70795
  const needToFilter = !this.conditionCollection.isEmpty();
70682
70796
  let visibleVisualRows = [];
70683
- const conditions = this.conditionCollection.exportAllConditions();
70684
- const allowFiltering = this.hot.runHooks('beforeFilter', conditions, this.conditionCollection.previousConditionStack);
70797
+ const conditions = this.exportConditions();
70798
+ const allowFiltering = this.hot.runHooks('beforeFilter', conditions, _classPrivateFieldGet(_previousConditionStack, this));
70685
70799
  if (allowFiltering !== false) {
70686
70800
  if (needToFilter) {
70687
70801
  const trimmedRows = [];
@@ -70704,11 +70818,13 @@ class Filters extends _base.BasePlugin {
70704
70818
  } else {
70705
70819
  this.filtersRowsMap.clear();
70706
70820
  }
70821
+ _classPrivateFieldSet(_previousConditionStack, this, this.exportConditions());
70822
+ this.hot.runHooks('afterFilter', conditions);
70823
+ this.hot.view.adjustElementsSize();
70824
+ this.hot.render();
70825
+ } else {
70826
+ this.importConditions(_classPrivateFieldGet(_previousConditionStack, this));
70707
70827
  }
70708
- this.hot.runHooks('afterFilter', conditions);
70709
- this.conditionCollection.setPreviousConditionStack(null);
70710
- this.hot.view.adjustElementsSize();
70711
- this.hot.render();
70712
70828
  if (this.hot.selection.isSelected()) {
70713
70829
  this.hot.selectCell(navigableHeaders ? -1 : 0, this.hot.getSelectedRangeLast().highlight.col);
70714
70830
  }
@@ -71071,7 +71187,6 @@ function _onActionBarSubmit(submitType) {
71071
71187
  }
71072
71188
  this.conditionUpdateObserver.flush();
71073
71189
  this.components.forEach(component => component.saveState(physicalIndex));
71074
- this.filtersRowsMap.clear();
71075
71190
  this.filter();
71076
71191
  }
71077
71192
  (_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 || _this$dropdownMenuPlu3.close();
@@ -71113,8 +71228,23 @@ function _updateComponents(conditionsState) {
71113
71228
  editedConditionStack: {
71114
71229
  conditions,
71115
71230
  column
71116
- }
71231
+ },
71232
+ conditionArgsChange
71117
71233
  } = conditionsState;
71234
+ if (Array.isArray(conditionArgsChange)) {
71235
+ // update the previous condition stack (only for 'by_value' condition) on each dataset
71236
+ // change to make the undo/redo work properly
71237
+ _classPrivateFieldSet(_previousConditionStack, this, _classPrivateFieldGet(_previousConditionStack, this).map(stack => {
71238
+ if (stack.column === column && conditions.length > 0) {
71239
+ stack.conditions.forEach(condition => {
71240
+ if (condition.name === 'by_value') {
71241
+ condition.args = [[...conditionArgsChange]];
71242
+ }
71243
+ });
71244
+ }
71245
+ return stack;
71246
+ }));
71247
+ }
71118
71248
  const conditionsByValue = conditions.filter(condition => condition.name === _constants2.CONDITION_BY_VALUE);
71119
71249
  const conditionsWithoutByValue = conditions.filter(condition => condition.name !== _constants2.CONDITION_BY_VALUE);
71120
71250
  if (conditionsByValue.length >= 2 || conditionsWithoutByValue.length >= 3) {
@@ -74558,13 +74688,6 @@ class ConditionCollection {
74558
74688
  * @type {LinkedPhysicalIndexToValueMap}
74559
74689
  */
74560
74690
  (0, _defineProperty2.default)(this, "filteringStates", new _translations.LinkedPhysicalIndexToValueMap());
74561
- /**
74562
- * Stores the previous state of the condition stack before the latest filter operation.
74563
- * This is used in the `beforeFilter` plugin to allow performing the undo operation.
74564
- *
74565
- * @type {null|Array}
74566
- */
74567
- (0, _defineProperty2.default)(this, "previousConditionStack", null);
74568
74691
  this.hot = hot;
74569
74692
  this.isMapRegistrable = isMapRegistrable;
74570
74693
  if (this.isMapRegistrable === true) {
@@ -74633,13 +74756,6 @@ class ConditionCollection {
74633
74756
  const localeForColumn = this.hot.getCellMeta(0, column).locale;
74634
74757
  const args = conditionDefinition.args.map(v => typeof v === 'string' ? v.toLocaleLowerCase(localeForColumn) : v);
74635
74758
  const name = conditionDefinition.name || conditionDefinition.command.key;
74636
-
74637
- // If there's no previous condition stack defined (which means the condition stack was not cleared after the
74638
- // previous filter operation or that there was no filter operation performed yet), store the current conditions as
74639
- // the previous condition stack.
74640
- if (this.previousConditionStack === null) {
74641
- this.setPreviousConditionStack(this.exportAllConditions());
74642
- }
74643
74759
  this.runLocalHooks('beforeAdd', column);
74644
74760
  const columnType = this.getOperation(column);
74645
74761
  if (columnType) {
@@ -74768,8 +74884,6 @@ class ConditionCollection {
74768
74884
  * @fires ConditionCollection#afterRemove
74769
74885
  */
74770
74886
  removeConditions(column) {
74771
- // Store the current conditions as the previous condition stack before it's cleared.
74772
- this.setPreviousConditionStack(this.exportAllConditions());
74773
74887
  this.runLocalHooks('beforeRemove', column);
74774
74888
  this.filteringStates.clearValue(column);
74775
74889
  this.runLocalHooks('afterRemove', column);
@@ -74803,16 +74917,6 @@ class ConditionCollection {
74803
74917
  return conditions.length > 0;
74804
74918
  }
74805
74919
 
74806
- /**
74807
- * Updates the `previousConditionStack` property with the provided stack.
74808
- * It is used to store the current conditions before they are modified, allowing for undo operations.
74809
- *
74810
- * @param {Array|null} previousConditionStack The stack of previous conditions.
74811
- */
74812
- setPreviousConditionStack(previousConditionStack) {
74813
- this.previousConditionStack = previousConditionStack;
74814
- }
74815
-
74816
74920
  /**
74817
74921
  * Destroy object.
74818
74922
  */
@@ -83959,14 +84063,17 @@ function _onModifyRowHeightByOverlayName(height, row, overlayType) {
83959
84063
  * @returns {number}
83960
84064
  */
83961
84065
  function _sumCellsHeights(row, rowspan) {
83962
- const stylesHandler = this.hot.view.getStylesHandler();
83963
- const defaultHeight = this.hot.view.getDefaultRowHeight();
83964
- const autoRowSizePlugin = this.hot.getPlugin('autoRowSize');
84066
+ const {
84067
+ view,
84068
+ rowIndexMapper
84069
+ } = this.hot;
84070
+ const stylesHandler = view.getStylesHandler();
84071
+ const defaultHeight = view.getDefaultRowHeight();
83965
84072
  let height = 0;
83966
84073
  for (let i = row; i < row + rowspan; i++) {
83967
- if (!this.hot.rowIndexMapper.isHidden(i)) {
83968
- var _autoRowSizePlugin$ge;
83969
- height += (_autoRowSizePlugin$ge = autoRowSizePlugin === null || autoRowSizePlugin === void 0 ? void 0 : autoRowSizePlugin.getRowHeight(i)) !== null && _autoRowSizePlugin$ge !== void 0 ? _autoRowSizePlugin$ge : defaultHeight;
84074
+ if (!rowIndexMapper.isHidden(i)) {
84075
+ var _this$hot$getRowHeigh;
84076
+ height += (_this$hot$getRowHeigh = this.hot.getRowHeight(i)) !== null && _this$hot$getRowHeigh !== void 0 ? _this$hot$getRowHeigh : defaultHeight;
83970
84077
  if (i === 0 && !stylesHandler.isClassicTheme()) {
83971
84078
  height += 1; // border-top-width
83972
84079
  }
@@ -86266,12 +86373,10 @@ var _sortService = __webpack_require__(526);
86266
86373
  var _utils = __webpack_require__(525);
86267
86374
  var _element = __webpack_require__(155);
86268
86375
  var _rootComparator = __webpack_require__(704);
86269
- var _utils2 = __webpack_require__(705);
86270
- var _domHelpers = __webpack_require__(706);
86376
+ var _domHelpers = __webpack_require__(705);
86271
86377
  var _shortcutContexts = __webpack_require__(352);
86272
86378
  const PLUGIN_KEY = exports.PLUGIN_KEY = 'multiColumnSorting';
86273
86379
  const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 170;
86274
- const CONFLICTED_PLUGIN_KEY = 'columnSorting';
86275
86380
  const SHORTCUTS_GROUP = PLUGIN_KEY;
86276
86381
  (0, _sortService.registerRootComparator)(PLUGIN_KEY, _rootComparator.rootComparator);
86277
86382
 
@@ -86351,17 +86456,13 @@ class MultiColumnSorting extends _columnSorting.ColumnSorting {
86351
86456
  * @returns {boolean}
86352
86457
  */
86353
86458
  isEnabled() {
86354
- return super.isEnabled();
86459
+ return !!this.hot.getSettings()[this.pluginKey];
86355
86460
  }
86356
86461
 
86357
86462
  /**
86358
86463
  * Enables the plugin functionality for this Handsontable instance.
86359
86464
  */
86360
86465
  enablePlugin() {
86361
- if (!this.enabled && this.hot.getSettings()[this.pluginKey] && this.hot.getSettings()[CONFLICTED_PLUGIN_KEY]) {
86362
- (0, _utils2.warnAboutPluginsConflict)();
86363
- this.hot.getPlugin(CONFLICTED_PLUGIN_KEY).disablePlugin();
86364
- }
86365
86466
  super.enablePlugin();
86366
86467
  }
86367
86468
 
@@ -86533,20 +86634,6 @@ class MultiColumnSorting extends _columnSorting.ColumnSorting {
86533
86634
  }
86534
86635
  }
86535
86636
 
86536
- /**
86537
- * Overwriting base plugin's `onUpdateSettings` method. Please keep in mind that `onAfterUpdateSettings` isn't called
86538
- * for `updateSettings` in specific situations.
86539
- *
86540
- * @private
86541
- * @param {object} newSettings New settings object.
86542
- */
86543
- onUpdateSettings(newSettings) {
86544
- if (this.hot.getSettings()[this.pluginKey] && this.hot.getSettings()[CONFLICTED_PLUGIN_KEY]) {
86545
- (0, _utils2.warnAboutPluginsConflict)();
86546
- }
86547
- super.onUpdateSettings(newSettings);
86548
- }
86549
-
86550
86637
  /**
86551
86638
  * Callback for the `onAfterOnCellMouseDown` hook.
86552
86639
  *
@@ -86620,25 +86707,6 @@ function rootComparator(sortingOrders, columnMetas) {
86620
86707
  "use strict";
86621
86708
 
86622
86709
 
86623
- exports.__esModule = true;
86624
- exports.warnAboutPluginsConflict = warnAboutPluginsConflict;
86625
- var _console = __webpack_require__(178);
86626
- var _templateLiteralTag = __webpack_require__(160);
86627
- /**
86628
- * Warn users about problems when using `columnSorting` and `multiColumnSorting` plugins simultaneously.
86629
- */
86630
- function warnAboutPluginsConflict() {
86631
- (0, _console.warn)((0, _templateLiteralTag.toSingleLine)`Plugins \`columnSorting\` and \`multiColumnSorting\` should not be enabled simultaneously.
86632
- Only \`multiColumnSorting\` will work. The \`columnSorting\` plugin will be disabled.`);
86633
- }
86634
-
86635
- /***/ }),
86636
- /* 706 */
86637
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
86638
-
86639
- "use strict";
86640
-
86641
-
86642
86710
  exports.__esModule = true;
86643
86711
  exports.getClassesToAdd = getClassesToAdd;
86644
86712
  exports.getClassesToRemove = getClassesToRemove;
@@ -86679,20 +86747,20 @@ function getClassesToRemove(htmlElement) {
86679
86747
  }
86680
86748
 
86681
86749
  /***/ }),
86682
- /* 707 */
86750
+ /* 706 */
86683
86751
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
86684
86752
 
86685
86753
  "use strict";
86686
86754
 
86687
86755
 
86688
86756
  exports.__esModule = true;
86689
- var _multipleSelectionHandles = __webpack_require__(708);
86757
+ var _multipleSelectionHandles = __webpack_require__(707);
86690
86758
  exports.PLUGIN_KEY = _multipleSelectionHandles.PLUGIN_KEY;
86691
86759
  exports.PLUGIN_PRIORITY = _multipleSelectionHandles.PLUGIN_PRIORITY;
86692
86760
  exports.MultipleSelectionHandles = _multipleSelectionHandles.MultipleSelectionHandles;
86693
86761
 
86694
86762
  /***/ }),
86695
- /* 708 */
86763
+ /* 707 */
86696
86764
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
86697
86765
 
86698
86766
  "use strict";
@@ -87031,20 +87099,20 @@ class MultipleSelectionHandles extends _base.BasePlugin {
87031
87099
  exports.MultipleSelectionHandles = MultipleSelectionHandles;
87032
87100
 
87033
87101
  /***/ }),
87034
- /* 709 */
87102
+ /* 708 */
87035
87103
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
87036
87104
 
87037
87105
  "use strict";
87038
87106
 
87039
87107
 
87040
87108
  exports.__esModule = true;
87041
- var _nestedHeaders = __webpack_require__(710);
87109
+ var _nestedHeaders = __webpack_require__(709);
87042
87110
  exports.PLUGIN_KEY = _nestedHeaders.PLUGIN_KEY;
87043
87111
  exports.PLUGIN_PRIORITY = _nestedHeaders.PLUGIN_PRIORITY;
87044
87112
  exports.NestedHeaders = _nestedHeaders.NestedHeaders;
87045
87113
 
87046
87114
  /***/ }),
87047
- /* 710 */
87115
+ /* 709 */
87048
87116
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
87049
87117
 
87050
87118
  "use strict";
@@ -87064,8 +87132,8 @@ var _event = __webpack_require__(175);
87064
87132
  var _console = __webpack_require__(178);
87065
87133
  var _selection = __webpack_require__(318);
87066
87134
  var _base = __webpack_require__(507);
87067
- var _stateManager2 = _interopRequireDefault(__webpack_require__(711));
87068
- var _ghostTable = _interopRequireDefault(__webpack_require__(724));
87135
+ var _stateManager2 = _interopRequireDefault(__webpack_require__(710));
87136
+ var _ghostTable = _interopRequireDefault(__webpack_require__(723));
87069
87137
  function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
87070
87138
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
87071
87139
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
@@ -87950,9 +88018,11 @@ function _onBeforeSelectColumns(from, to, highlight) {
87950
88018
  * @param {Array} renderersArray Array of renderers.
87951
88019
  */
87952
88020
  function _onAfterGetColumnHeaderRenderers(renderersArray) {
87953
- renderersArray.length = 0;
87954
- for (let headerLayer = 0; headerLayer < _classPrivateFieldGet(_stateManager, this).getLayersCount(); headerLayer++) {
87955
- renderersArray.push(this.headerRendererFactory(headerLayer));
88021
+ if (_classPrivateFieldGet(_stateManager, this).getLayersCount() > 0) {
88022
+ renderersArray.length = 0;
88023
+ for (let headerLayer = 0; headerLayer < _classPrivateFieldGet(_stateManager, this).getLayersCount(); headerLayer++) {
88024
+ renderersArray.push(this.headerRendererFactory(headerLayer));
88025
+ }
87956
88026
  }
87957
88027
  }
87958
88028
  /**
@@ -88051,7 +88121,7 @@ function _onAfterLoadData(sourceData, initialLoad) {
88051
88121
  }
88052
88122
 
88053
88123
  /***/ }),
88054
- /* 711 */
88124
+ /* 710 */
88055
88125
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
88056
88126
 
88057
88127
  "use strict";
@@ -88061,13 +88131,14 @@ var _interopRequireDefault = __webpack_require__(1);
88061
88131
  exports.__esModule = true;
88062
88132
  __webpack_require__(5);
88063
88133
  __webpack_require__(87);
88134
+ __webpack_require__(115);
88064
88135
  __webpack_require__(142);
88065
88136
  var _array = __webpack_require__(161);
88066
- var _sourceSettings2 = _interopRequireDefault(__webpack_require__(712));
88067
- var _headersTree2 = _interopRequireDefault(__webpack_require__(715));
88068
- var _nodeModifiers = __webpack_require__(717);
88069
- var _matrixGenerator = __webpack_require__(723);
88070
- var _tree = __webpack_require__(716);
88137
+ var _sourceSettings2 = _interopRequireDefault(__webpack_require__(711));
88138
+ var _headersTree2 = _interopRequireDefault(__webpack_require__(714));
88139
+ var _nodeModifiers = __webpack_require__(716);
88140
+ var _matrixGenerator = __webpack_require__(722);
88141
+ var _tree = __webpack_require__(715);
88071
88142
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
88072
88143
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
88073
88144
  function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
@@ -88542,7 +88613,7 @@ class StateManager {
88542
88613
  exports["default"] = StateManager;
88543
88614
 
88544
88615
  /***/ }),
88545
- /* 712 */
88616
+ /* 711 */
88546
88617
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
88547
88618
 
88548
88619
  "use strict";
@@ -88553,7 +88624,7 @@ __webpack_require__(5);
88553
88624
  __webpack_require__(87);
88554
88625
  var _object = __webpack_require__(165);
88555
88626
  var _array = __webpack_require__(161);
88556
- var _settingsNormalizer = __webpack_require__(713);
88627
+ var _settingsNormalizer = __webpack_require__(712);
88557
88628
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
88558
88629
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
88559
88630
  function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
@@ -88764,7 +88835,7 @@ class SourceSettings {
88764
88835
  exports["default"] = SourceSettings;
88765
88836
 
88766
88837
  /***/ }),
88767
- /* 713 */
88838
+ /* 712 */
88768
88839
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
88769
88840
 
88770
88841
  "use strict";
@@ -88776,7 +88847,7 @@ __webpack_require__(87);
88776
88847
  var _array = __webpack_require__(161);
88777
88848
  var _object = __webpack_require__(165);
88778
88849
  var _mixed = __webpack_require__(158);
88779
- var _utils = __webpack_require__(714);
88850
+ var _utils = __webpack_require__(713);
88780
88851
  /* eslint-disable jsdoc/require-description-complete-sentence */
88781
88852
 
88782
88853
  /**
@@ -88878,7 +88949,7 @@ function normalizeSettings(sourceSettings) {
88878
88949
  }
88879
88950
 
88880
88951
  /***/ }),
88881
- /* 714 */
88952
+ /* 713 */
88882
88953
  /***/ ((__unused_webpack_module, exports) => {
88883
88954
 
88884
88955
  "use strict";
@@ -88955,7 +89026,7 @@ function createPlaceholderHeaderSettings() {
88955
89026
  }
88956
89027
 
88957
89028
  /***/ }),
88958
- /* 715 */
89029
+ /* 714 */
88959
89030
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
88960
89031
 
88961
89032
  "use strict";
@@ -88965,7 +89036,7 @@ var _interopRequireDefault = __webpack_require__(1);
88965
89036
  exports.__esModule = true;
88966
89037
  __webpack_require__(5);
88967
89038
  var _array = __webpack_require__(161);
88968
- var _tree = _interopRequireDefault(__webpack_require__(716));
89039
+ var _tree = _interopRequireDefault(__webpack_require__(715));
88969
89040
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
88970
89041
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
88971
89042
  function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
@@ -89193,7 +89264,7 @@ class HeadersTree {
89193
89264
  exports["default"] = HeadersTree;
89194
89265
 
89195
89266
  /***/ }),
89196
- /* 716 */
89267
+ /* 715 */
89197
89268
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
89198
89269
 
89199
89270
  "use strict";
@@ -89412,7 +89483,7 @@ class TreeNode {
89412
89483
  exports["default"] = TreeNode;
89413
89484
 
89414
89485
  /***/ }),
89415
- /* 717 */
89486
+ /* 716 */
89416
89487
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
89417
89488
 
89418
89489
  "use strict";
@@ -89421,10 +89492,10 @@ exports["default"] = TreeNode;
89421
89492
  exports.__esModule = true;
89422
89493
  exports.triggerNodeModification = triggerNodeModification;
89423
89494
  __webpack_require__(5);
89424
- var _collapse = __webpack_require__(718);
89425
- var _expand = __webpack_require__(719);
89426
- var _hideColumn = __webpack_require__(721);
89427
- var _showColumn = __webpack_require__(722);
89495
+ var _collapse = __webpack_require__(717);
89496
+ var _expand = __webpack_require__(718);
89497
+ var _hideColumn = __webpack_require__(720);
89498
+ var _showColumn = __webpack_require__(721);
89428
89499
  /**
89429
89500
  * The NodeModifiers module is responsible for the modification of a tree structure
89430
89501
  * in a way to achieve new column headers state.
@@ -89454,7 +89525,7 @@ function triggerNodeModification(actionName, nodeToProcess, gridColumnIndex) {
89454
89525
  }
89455
89526
 
89456
89527
  /***/ }),
89457
- /* 718 */
89528
+ /* 717 */
89458
89529
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
89459
89530
 
89460
89531
  "use strict";
@@ -89470,8 +89541,8 @@ __webpack_require__(109);
89470
89541
  __webpack_require__(111);
89471
89542
  __webpack_require__(113);
89472
89543
  var _array = __webpack_require__(161);
89473
- var _expand = __webpack_require__(719);
89474
- var _tree = __webpack_require__(720);
89544
+ var _expand = __webpack_require__(718);
89545
+ var _tree = __webpack_require__(719);
89475
89546
  /**
89476
89547
  * Collapsing a node is a process where the processing node is collapsed
89477
89548
  * to the colspan width of the first child. All node children, except the
@@ -89564,7 +89635,7 @@ function collapseNode(nodeToProcess) {
89564
89635
  }
89565
89636
 
89566
89637
  /***/ }),
89567
- /* 719 */
89638
+ /* 718 */
89568
89639
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
89569
89640
 
89570
89641
  "use strict";
@@ -89580,8 +89651,8 @@ __webpack_require__(109);
89580
89651
  __webpack_require__(111);
89581
89652
  __webpack_require__(113);
89582
89653
  var _array = __webpack_require__(161);
89583
- var _collapse = __webpack_require__(718);
89584
- var _tree = __webpack_require__(720);
89654
+ var _collapse = __webpack_require__(717);
89655
+ var _tree = __webpack_require__(719);
89585
89656
  /**
89586
89657
  * Expanding a node is a process where the processing node is expanded to
89587
89658
  * its original colspan width. To restore an original state of all node
@@ -89669,7 +89740,7 @@ function expandNode(nodeToProcess) {
89669
89740
  }
89670
89741
 
89671
89742
  /***/ }),
89672
- /* 720 */
89743
+ /* 719 */
89673
89744
  /***/ ((__unused_webpack_module, exports) => {
89674
89745
 
89675
89746
  "use strict";
@@ -89740,7 +89811,7 @@ function isNodeReflectsFirstChildColspan(node) {
89740
89811
  }
89741
89812
 
89742
89813
  /***/ }),
89743
- /* 721 */
89814
+ /* 720 */
89744
89815
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
89745
89816
 
89746
89817
  "use strict";
@@ -89803,7 +89874,7 @@ the last node, the hide column modification can be applied.`);
89803
89874
  }
89804
89875
 
89805
89876
  /***/ }),
89806
- /* 722 */
89877
+ /* 721 */
89807
89878
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
89808
89879
 
89809
89880
  "use strict";
@@ -89864,7 +89935,7 @@ the last node, the show column modification can be applied.`);
89864
89935
  }
89865
89936
 
89866
89937
  /***/ }),
89867
- /* 723 */
89938
+ /* 722 */
89868
89939
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
89869
89940
 
89870
89941
  "use strict";
@@ -89874,7 +89945,7 @@ exports.__esModule = true;
89874
89945
  exports.generateMatrix = generateMatrix;
89875
89946
  __webpack_require__(87);
89876
89947
  var _array = __webpack_require__(161);
89877
- var _utils = __webpack_require__(714);
89948
+ var _utils = __webpack_require__(713);
89878
89949
  /* eslint-disable jsdoc/require-description-complete-sentence */
89879
89950
 
89880
89951
  /**
@@ -89970,7 +90041,7 @@ function createNestedArrayIfNecessary(array, index) {
89970
90041
  }
89971
90042
 
89972
90043
  /***/ }),
89973
- /* 724 */
90044
+ /* 723 */
89974
90045
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
89975
90046
 
89976
90047
  "use strict";
@@ -90126,20 +90197,20 @@ class GhostTable {
90126
90197
  var _default = exports["default"] = GhostTable;
90127
90198
 
90128
90199
  /***/ }),
90129
- /* 725 */
90200
+ /* 724 */
90130
90201
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
90131
90202
 
90132
90203
  "use strict";
90133
90204
 
90134
90205
 
90135
90206
  exports.__esModule = true;
90136
- var _nestedRows = __webpack_require__(726);
90207
+ var _nestedRows = __webpack_require__(725);
90137
90208
  exports.PLUGIN_KEY = _nestedRows.PLUGIN_KEY;
90138
90209
  exports.PLUGIN_PRIORITY = _nestedRows.PLUGIN_PRIORITY;
90139
90210
  exports.NestedRows = _nestedRows.NestedRows;
90140
90211
 
90141
90212
  /***/ }),
90142
- /* 726 */
90213
+ /* 725 */
90143
90214
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
90144
90215
 
90145
90216
  "use strict";
@@ -90161,15 +90232,15 @@ __webpack_require__(133);
90161
90232
  __webpack_require__(196);
90162
90233
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
90163
90234
  var _base = __webpack_require__(507);
90164
- var _dataManager = _interopRequireDefault(__webpack_require__(727));
90165
- var _collapsing = _interopRequireDefault(__webpack_require__(728));
90166
- var _headers = _interopRequireDefault(__webpack_require__(730));
90167
- var _contextMenu = _interopRequireDefault(__webpack_require__(731));
90235
+ var _dataManager = _interopRequireDefault(__webpack_require__(726));
90236
+ var _collapsing = _interopRequireDefault(__webpack_require__(727));
90237
+ var _headers = _interopRequireDefault(__webpack_require__(729));
90238
+ var _contextMenu = _interopRequireDefault(__webpack_require__(730));
90168
90239
  var _console = __webpack_require__(178);
90169
90240
  var _data = __webpack_require__(288);
90170
90241
  var _translations = __webpack_require__(291);
90171
90242
  var _shortcutContexts = __webpack_require__(352);
90172
- var _rowMoveController = _interopRequireDefault(__webpack_require__(732));
90243
+ var _rowMoveController = _interopRequireDefault(__webpack_require__(731));
90173
90244
  function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
90174
90245
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
90175
90246
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
@@ -90701,7 +90772,7 @@ function _onBeforeLoadData(data) {
90701
90772
  }
90702
90773
 
90703
90774
  /***/ }),
90704
- /* 727 */
90775
+ /* 726 */
90705
90776
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
90706
90777
 
90707
90778
  "use strict";
@@ -91417,7 +91488,7 @@ class DataManager {
91417
91488
  var _default = exports["default"] = DataManager;
91418
91489
 
91419
91490
  /***/ }),
91420
- /* 728 */
91491
+ /* 727 */
91421
91492
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
91422
91493
 
91423
91494
  "use strict";
@@ -91430,8 +91501,8 @@ var _event = __webpack_require__(175);
91430
91501
  var _array = __webpack_require__(161);
91431
91502
  var _number = __webpack_require__(200);
91432
91503
  var _element = __webpack_require__(155);
91433
- var _base = _interopRequireDefault(__webpack_require__(729));
91434
- var _headers = _interopRequireDefault(__webpack_require__(730));
91504
+ var _base = _interopRequireDefault(__webpack_require__(728));
91505
+ var _headers = _interopRequireDefault(__webpack_require__(729));
91435
91506
  /**
91436
91507
  * Class responsible for the UI for collapsing and expanding groups.
91437
91508
  *
@@ -91892,7 +91963,7 @@ class CollapsingUI extends _base.default {
91892
91963
  var _default = exports["default"] = CollapsingUI;
91893
91964
 
91894
91965
  /***/ }),
91895
- /* 729 */
91966
+ /* 728 */
91896
91967
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
91897
91968
 
91898
91969
  "use strict";
@@ -91926,7 +91997,7 @@ class BaseUI {
91926
91997
  var _default = exports["default"] = BaseUI;
91927
91998
 
91928
91999
  /***/ }),
91929
- /* 730 */
92000
+ /* 729 */
91930
92001
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
91931
92002
 
91932
92003
  "use strict";
@@ -91937,7 +92008,7 @@ exports.__esModule = true;
91937
92008
  var _array = __webpack_require__(161);
91938
92009
  var _number = __webpack_require__(200);
91939
92010
  var _element = __webpack_require__(155);
91940
- var _base = _interopRequireDefault(__webpack_require__(729));
92011
+ var _base = _interopRequireDefault(__webpack_require__(728));
91941
92012
  var _a11y = __webpack_require__(162);
91942
92013
  /**
91943
92014
  * Class responsible for the UI in the Nested Rows' row headers.
@@ -92070,7 +92141,7 @@ class HeadersUI extends _base.default {
92070
92141
  var _default = exports["default"] = HeadersUI;
92071
92142
 
92072
92143
  /***/ }),
92073
- /* 731 */
92144
+ /* 730 */
92074
92145
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
92075
92146
 
92076
92147
  "use strict";
@@ -92083,7 +92154,7 @@ var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
92083
92154
  var _number = __webpack_require__(200);
92084
92155
  var _array = __webpack_require__(161);
92085
92156
  var C = _interopRequireWildcard(__webpack_require__(317));
92086
- var _base = _interopRequireDefault(__webpack_require__(729));
92157
+ var _base = _interopRequireDefault(__webpack_require__(728));
92087
92158
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
92088
92159
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
92089
92160
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
@@ -92189,7 +92260,7 @@ class ContextMenuUI extends _base.default {
92189
92260
  var _default = exports["default"] = ContextMenuUI;
92190
92261
 
92191
92262
  /***/ }),
92192
- /* 732 */
92263
+ /* 731 */
92193
92264
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
92194
92265
 
92195
92266
  "use strict";
@@ -92478,20 +92549,20 @@ class RowMoveController {
92478
92549
  exports["default"] = RowMoveController;
92479
92550
 
92480
92551
  /***/ }),
92481
- /* 733 */
92552
+ /* 732 */
92482
92553
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
92483
92554
 
92484
92555
  "use strict";
92485
92556
 
92486
92557
 
92487
92558
  exports.__esModule = true;
92488
- var _persistentState = __webpack_require__(734);
92559
+ var _persistentState = __webpack_require__(733);
92489
92560
  exports.PLUGIN_KEY = _persistentState.PLUGIN_KEY;
92490
92561
  exports.PLUGIN_PRIORITY = _persistentState.PLUGIN_PRIORITY;
92491
92562
  exports.PersistentState = _persistentState.PersistentState;
92492
92563
 
92493
92564
  /***/ }),
92494
- /* 734 */
92565
+ /* 733 */
92495
92566
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
92496
92567
 
92497
92568
  "use strict";
@@ -92501,7 +92572,7 @@ var _interopRequireDefault = __webpack_require__(1);
92501
92572
  exports.__esModule = true;
92502
92573
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
92503
92574
  var _base = __webpack_require__(507);
92504
- var _storage = _interopRequireDefault(__webpack_require__(735));
92575
+ var _storage = _interopRequireDefault(__webpack_require__(734));
92505
92576
  var _hooks = __webpack_require__(177);
92506
92577
  _hooks.Hooks.getSingleton().register('persistentStateSave');
92507
92578
  _hooks.Hooks.getSingleton().register('persistentStateLoad');
@@ -92642,7 +92713,7 @@ class PersistentState extends _base.BasePlugin {
92642
92713
  exports.PersistentState = PersistentState;
92643
92714
 
92644
92715
  /***/ }),
92645
- /* 735 */
92716
+ /* 734 */
92646
92717
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
92647
92718
 
92648
92719
  "use strict";
@@ -92766,20 +92837,20 @@ class Storage {
92766
92837
  var _default = exports["default"] = Storage;
92767
92838
 
92768
92839
  /***/ }),
92769
- /* 736 */
92840
+ /* 735 */
92770
92841
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
92771
92842
 
92772
92843
  "use strict";
92773
92844
 
92774
92845
 
92775
92846
  exports.__esModule = true;
92776
- var _search = __webpack_require__(737);
92847
+ var _search = __webpack_require__(736);
92777
92848
  exports.PLUGIN_KEY = _search.PLUGIN_KEY;
92778
92849
  exports.PLUGIN_PRIORITY = _search.PLUGIN_PRIORITY;
92779
92850
  exports.Search = _search.Search;
92780
92851
 
92781
92852
  /***/ }),
92782
- /* 737 */
92853
+ /* 736 */
92783
92854
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
92784
92855
 
92785
92856
  "use strict";
@@ -93087,20 +93158,20 @@ function _onBeforeRenderer(TD, row, col, prop, value, cellProperties) {
93087
93158
  }
93088
93159
 
93089
93160
  /***/ }),
93090
- /* 738 */
93161
+ /* 737 */
93091
93162
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
93092
93163
 
93093
93164
  "use strict";
93094
93165
 
93095
93166
 
93096
93167
  exports.__esModule = true;
93097
- var _stretchColumns = __webpack_require__(739);
93168
+ var _stretchColumns = __webpack_require__(738);
93098
93169
  exports.PLUGIN_KEY = _stretchColumns.PLUGIN_KEY;
93099
93170
  exports.PLUGIN_PRIORITY = _stretchColumns.PLUGIN_PRIORITY;
93100
93171
  exports.StretchColumns = _stretchColumns.StretchColumns;
93101
93172
 
93102
93173
  /***/ }),
93103
- /* 739 */
93174
+ /* 738 */
93104
93175
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
93105
93176
 
93106
93177
  "use strict";
@@ -93111,7 +93182,7 @@ __webpack_require__(5);
93111
93182
  __webpack_require__(115);
93112
93183
  __webpack_require__(133);
93113
93184
  var _base = __webpack_require__(507);
93114
- var _calculator = __webpack_require__(740);
93185
+ var _calculator = __webpack_require__(739);
93115
93186
  function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
93116
93187
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
93117
93188
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
@@ -93328,7 +93399,7 @@ function _onBeforeRender(fullRender) {
93328
93399
  }
93329
93400
 
93330
93401
  /***/ }),
93331
- /* 740 */
93402
+ /* 739 */
93332
93403
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
93333
93404
 
93334
93405
  "use strict";
@@ -93340,8 +93411,8 @@ __webpack_require__(115);
93340
93411
  __webpack_require__(133);
93341
93412
  var _src = __webpack_require__(206);
93342
93413
  var _element = __webpack_require__(155);
93343
- var _all = __webpack_require__(741);
93344
- var _last = __webpack_require__(743);
93414
+ var _all = __webpack_require__(740);
93415
+ var _last = __webpack_require__(742);
93345
93416
  function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
93346
93417
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
93347
93418
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
@@ -93496,7 +93567,7 @@ function _overwriteColumnWidthFn(columnWidth, columnVisualIndex) {
93496
93567
  }
93497
93568
 
93498
93569
  /***/ }),
93499
- /* 741 */
93570
+ /* 740 */
93500
93571
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
93501
93572
 
93502
93573
  "use strict";
@@ -93508,7 +93579,7 @@ __webpack_require__(115);
93508
93579
  __webpack_require__(133);
93509
93580
  __webpack_require__(196);
93510
93581
  var _src = __webpack_require__(206);
93511
- var _base = __webpack_require__(742);
93582
+ var _base = __webpack_require__(741);
93512
93583
  /**
93513
93584
  * The strategy calculates the column widths by stretching all columns evenly.
93514
93585
  *
@@ -93573,7 +93644,7 @@ class StretchAllStrategy extends _base.StretchStrategy {
93573
93644
  exports.StretchAllStrategy = StretchAllStrategy;
93574
93645
 
93575
93646
  /***/ }),
93576
- /* 742 */
93647
+ /* 741 */
93577
93648
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
93578
93649
 
93579
93650
  "use strict";
@@ -93662,7 +93733,7 @@ class StretchStrategy {
93662
93733
  exports.StretchStrategy = StretchStrategy;
93663
93734
 
93664
93735
  /***/ }),
93665
- /* 743 */
93736
+ /* 742 */
93666
93737
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
93667
93738
 
93668
93739
  "use strict";
@@ -93672,7 +93743,7 @@ exports.__esModule = true;
93672
93743
  __webpack_require__(5);
93673
93744
  __webpack_require__(115);
93674
93745
  __webpack_require__(196);
93675
- var _base = __webpack_require__(742);
93746
+ var _base = __webpack_require__(741);
93676
93747
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
93677
93748
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
93678
93749
  function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
@@ -93747,20 +93818,20 @@ class StretchLastStrategy extends _base.StretchStrategy {
93747
93818
  exports.StretchLastStrategy = StretchLastStrategy;
93748
93819
 
93749
93820
  /***/ }),
93750
- /* 744 */
93821
+ /* 743 */
93751
93822
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
93752
93823
 
93753
93824
  "use strict";
93754
93825
 
93755
93826
 
93756
93827
  exports.__esModule = true;
93757
- var _touchScroll = __webpack_require__(745);
93828
+ var _touchScroll = __webpack_require__(744);
93758
93829
  exports.PLUGIN_KEY = _touchScroll.PLUGIN_KEY;
93759
93830
  exports.PLUGIN_PRIORITY = _touchScroll.PLUGIN_PRIORITY;
93760
93831
  exports.TouchScroll = _touchScroll.TouchScroll;
93761
93832
 
93762
93833
  /***/ }),
93763
- /* 745 */
93834
+ /* 744 */
93764
93835
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
93765
93836
 
93766
93837
  "use strict";
@@ -93949,20 +94020,20 @@ function _onAfterMomentumScroll() {
93949
94020
  }
93950
94021
 
93951
94022
  /***/ }),
93952
- /* 746 */
94023
+ /* 745 */
93953
94024
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
93954
94025
 
93955
94026
  "use strict";
93956
94027
 
93957
94028
 
93958
94029
  exports.__esModule = true;
93959
- var _trimRows = __webpack_require__(747);
94030
+ var _trimRows = __webpack_require__(746);
93960
94031
  exports.PLUGIN_KEY = _trimRows.PLUGIN_KEY;
93961
94032
  exports.PLUGIN_PRIORITY = _trimRows.PLUGIN_PRIORITY;
93962
94033
  exports.TrimRows = _trimRows.TrimRows;
93963
94034
 
93964
94035
  /***/ }),
93965
- /* 747 */
94036
+ /* 746 */
93966
94037
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
93967
94038
 
93968
94039
  "use strict";
@@ -94294,20 +94365,20 @@ function _onMapInit() {
94294
94365
  }
94295
94366
 
94296
94367
  /***/ }),
94297
- /* 748 */
94368
+ /* 747 */
94298
94369
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
94299
94370
 
94300
94371
  "use strict";
94301
94372
 
94302
94373
 
94303
94374
  exports.__esModule = true;
94304
- var _undoRedo = __webpack_require__(749);
94375
+ var _undoRedo = __webpack_require__(748);
94305
94376
  exports.PLUGIN_KEY = _undoRedo.PLUGIN_KEY;
94306
94377
  exports.PLUGIN_PRIORITY = _undoRedo.PLUGIN_PRIORITY;
94307
94378
  exports.UndoRedo = _undoRedo.UndoRedo;
94308
94379
 
94309
94380
  /***/ }),
94310
- /* 749 */
94381
+ /* 748 */
94311
94382
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
94312
94383
 
94313
94384
  "use strict";
@@ -94330,7 +94401,7 @@ var _hooks = __webpack_require__(177);
94330
94401
  var _object = __webpack_require__(165);
94331
94402
  var _templateLiteralTag = __webpack_require__(160);
94332
94403
  var _console = __webpack_require__(178);
94333
- var _actions = __webpack_require__(750);
94404
+ var _actions = __webpack_require__(749);
94334
94405
  function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
94335
94406
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
94336
94407
  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"); }
@@ -94700,7 +94771,7 @@ function _removeAPIFromCore() {
94700
94771
  }
94701
94772
 
94702
94773
  /***/ }),
94703
- /* 750 */
94774
+ /* 749 */
94704
94775
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
94705
94776
 
94706
94777
  "use strict";
@@ -94710,18 +94781,18 @@ exports.__esModule = true;
94710
94781
  exports.registerActions = registerActions;
94711
94782
  __webpack_require__(115);
94712
94783
  __webpack_require__(133);
94713
- var _cellAlignment = __webpack_require__(751);
94714
- var _columnMove = __webpack_require__(753);
94715
- var _columnSort = __webpack_require__(754);
94716
- var _createColumn = __webpack_require__(755);
94717
- var _createRow = __webpack_require__(756);
94718
- var _dataChange = __webpack_require__(757);
94719
- var _filters = __webpack_require__(758);
94720
- var _mergeCells = __webpack_require__(759);
94721
- var _removeColumn = __webpack_require__(760);
94722
- var _removeRow = __webpack_require__(763);
94723
- var _rowMove = __webpack_require__(764);
94724
- var _unmergeCells = __webpack_require__(765);
94784
+ var _cellAlignment = __webpack_require__(750);
94785
+ var _columnMove = __webpack_require__(752);
94786
+ var _columnSort = __webpack_require__(753);
94787
+ var _createColumn = __webpack_require__(754);
94788
+ var _createRow = __webpack_require__(755);
94789
+ var _dataChange = __webpack_require__(756);
94790
+ var _filters = __webpack_require__(757);
94791
+ var _mergeCells = __webpack_require__(758);
94792
+ var _removeColumn = __webpack_require__(759);
94793
+ var _removeRow = __webpack_require__(762);
94794
+ var _rowMove = __webpack_require__(763);
94795
+ var _unmergeCells = __webpack_require__(764);
94725
94796
  /**
94726
94797
  * Register all undo/redo actions.
94727
94798
  *
@@ -94733,7 +94804,7 @@ function registerActions(hot, undoRedoPlugin) {
94733
94804
  }
94734
94805
 
94735
94806
  /***/ }),
94736
- /* 751 */
94807
+ /* 750 */
94737
94808
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
94738
94809
 
94739
94810
  "use strict";
@@ -94742,7 +94813,7 @@ function registerActions(hot, undoRedoPlugin) {
94742
94813
  var _interopRequireDefault = __webpack_require__(1);
94743
94814
  exports.__esModule = true;
94744
94815
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
94745
- var _base = __webpack_require__(752);
94816
+ var _base = __webpack_require__(751);
94746
94817
  var _utils = __webpack_require__(547);
94747
94818
  var _array = __webpack_require__(161);
94748
94819
  /**
@@ -94759,7 +94830,7 @@ class CellAlignmentAction extends _base.BaseAction {
94759
94830
  type,
94760
94831
  alignment
94761
94832
  } = _ref;
94762
- super();
94833
+ super('cell_alignment');
94763
94834
  /**
94764
94835
  * @param {Array} stateBefore The previous state.
94765
94836
  */
@@ -94822,14 +94893,16 @@ class CellAlignmentAction extends _base.BaseAction {
94822
94893
  exports.CellAlignmentAction = CellAlignmentAction;
94823
94894
 
94824
94895
  /***/ }),
94825
- /* 752 */
94896
+ /* 751 */
94826
94897
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
94827
94898
 
94828
94899
  "use strict";
94829
94900
 
94830
94901
 
94902
+ var _interopRequireDefault = __webpack_require__(1);
94831
94903
  exports.__esModule = true;
94832
94904
  __webpack_require__(5);
94905
+ var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
94833
94906
  /**
94834
94907
  * An abstract class that defines the structure of an undo/redo action.
94835
94908
  *
@@ -94837,6 +94910,13 @@ __webpack_require__(5);
94837
94910
  * @private
94838
94911
  */
94839
94912
  class BaseAction {
94913
+ constructor(actionType) {
94914
+ /**
94915
+ * @param {string} actionType The action type.
94916
+ */
94917
+ (0, _defineProperty2.default)(this, "actionType", '');
94918
+ this.actionType = actionType;
94919
+ }
94840
94920
  undo() {
94841
94921
  throw new Error('Not implemented');
94842
94922
  }
@@ -94847,7 +94927,7 @@ class BaseAction {
94847
94927
  exports.BaseAction = BaseAction;
94848
94928
 
94849
94929
  /***/ }),
94850
- /* 753 */
94930
+ /* 752 */
94851
94931
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
94852
94932
 
94853
94933
  "use strict";
@@ -94858,7 +94938,7 @@ exports.__esModule = true;
94858
94938
  __webpack_require__(115);
94859
94939
  __webpack_require__(133);
94860
94940
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
94861
- var _base = __webpack_require__(752);
94941
+ var _base = __webpack_require__(751);
94862
94942
  var _moves = __webpack_require__(661);
94863
94943
  /**
94864
94944
  * Action that tracks column move changes.
@@ -94872,7 +94952,7 @@ class ColumnMoveAction extends _base.BaseAction {
94872
94952
  columns,
94873
94953
  finalIndex
94874
94954
  } = _ref;
94875
- super();
94955
+ super('col_move');
94876
94956
  /**
94877
94957
  * @param {number[]} columns An array with moved columns.
94878
94958
  */
@@ -94935,7 +95015,7 @@ class ColumnMoveAction extends _base.BaseAction {
94935
95015
  exports.ColumnMoveAction = ColumnMoveAction;
94936
95016
 
94937
95017
  /***/ }),
94938
- /* 754 */
95018
+ /* 753 */
94939
95019
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
94940
95020
 
94941
95021
  "use strict";
@@ -94944,7 +95024,7 @@ exports.ColumnMoveAction = ColumnMoveAction;
94944
95024
  var _interopRequireDefault = __webpack_require__(1);
94945
95025
  exports.__esModule = true;
94946
95026
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
94947
- var _base = __webpack_require__(752);
95027
+ var _base = __webpack_require__(751);
94948
95028
  /**
94949
95029
  * Action that tracks column sort changes.
94950
95030
  *
@@ -94957,7 +95037,7 @@ class ColumnSortAction extends _base.BaseAction {
94957
95037
  currentSortState,
94958
95038
  newSortState
94959
95039
  } = _ref;
94960
- super();
95040
+ super('col_sort');
94961
95041
  /**
94962
95042
  * @param {Array} currentSortState The current sort state.
94963
95043
  */
@@ -95012,7 +95092,7 @@ class ColumnSortAction extends _base.BaseAction {
95012
95092
  exports.ColumnSortAction = ColumnSortAction;
95013
95093
 
95014
95094
  /***/ }),
95015
- /* 755 */
95095
+ /* 754 */
95016
95096
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95017
95097
 
95018
95098
  "use strict";
@@ -95021,7 +95101,7 @@ exports.ColumnSortAction = ColumnSortAction;
95021
95101
  var _interopRequireDefault = __webpack_require__(1);
95022
95102
  exports.__esModule = true;
95023
95103
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
95024
- var _base = __webpack_require__(752);
95104
+ var _base = __webpack_require__(751);
95025
95105
  /**
95026
95106
  * Action that tracks column creation.
95027
95107
  *
@@ -95034,7 +95114,7 @@ class CreateColumnAction extends _base.BaseAction {
95034
95114
  index,
95035
95115
  amount
95036
95116
  } = _ref;
95037
- super();
95117
+ super('insert_col');
95038
95118
  /**
95039
95119
  * @param {number} index The visual column index.
95040
95120
  */
@@ -95076,7 +95156,7 @@ class CreateColumnAction extends _base.BaseAction {
95076
95156
  exports.CreateColumnAction = CreateColumnAction;
95077
95157
 
95078
95158
  /***/ }),
95079
- /* 756 */
95159
+ /* 755 */
95080
95160
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95081
95161
 
95082
95162
  "use strict";
@@ -95085,7 +95165,7 @@ exports.CreateColumnAction = CreateColumnAction;
95085
95165
  var _interopRequireDefault = __webpack_require__(1);
95086
95166
  exports.__esModule = true;
95087
95167
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
95088
- var _base = __webpack_require__(752);
95168
+ var _base = __webpack_require__(751);
95089
95169
  /**
95090
95170
  * Action that tracks row creation.
95091
95171
  *
@@ -95098,7 +95178,7 @@ class CreateRowAction extends _base.BaseAction {
95098
95178
  index,
95099
95179
  amount
95100
95180
  } = _ref;
95101
- super();
95181
+ super('insert_row');
95102
95182
  /**
95103
95183
  * @param {number} index The visual row index.
95104
95184
  */
@@ -95145,7 +95225,7 @@ class CreateRowAction extends _base.BaseAction {
95145
95225
  exports.CreateRowAction = CreateRowAction;
95146
95226
 
95147
95227
  /***/ }),
95148
- /* 757 */
95228
+ /* 756 */
95149
95229
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95150
95230
 
95151
95231
  "use strict";
@@ -95159,7 +95239,7 @@ __webpack_require__(185);
95159
95239
  __webpack_require__(133);
95160
95240
  __webpack_require__(196);
95161
95241
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
95162
- var _base = __webpack_require__(752);
95242
+ var _base = __webpack_require__(751);
95163
95243
  var _object = __webpack_require__(165);
95164
95244
  /**
95165
95245
  * Action that tracks data changes.
@@ -95175,7 +95255,7 @@ class DataChangeAction extends _base.BaseAction {
95175
95255
  countCols,
95176
95256
  countRows
95177
95257
  } = _ref;
95178
- super();
95258
+ super('change');
95179
95259
  /**
95180
95260
  * @param {Array} changes 2D array containing information about each of the edited cells.
95181
95261
  */
@@ -95272,7 +95352,7 @@ class DataChangeAction extends _base.BaseAction {
95272
95352
  exports.DataChangeAction = DataChangeAction;
95273
95353
 
95274
95354
  /***/ }),
95275
- /* 758 */
95355
+ /* 757 */
95276
95356
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95277
95357
 
95278
95358
  "use strict";
@@ -95283,7 +95363,7 @@ exports.__esModule = true;
95283
95363
  __webpack_require__(115);
95284
95364
  __webpack_require__(127);
95285
95365
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
95286
- var _base = __webpack_require__(752);
95366
+ var _base = __webpack_require__(751);
95287
95367
  /**
95288
95368
  * Action that tracks filter changes.
95289
95369
  *
@@ -95296,7 +95376,7 @@ class FiltersAction extends _base.BaseAction {
95296
95376
  conditionsStack,
95297
95377
  previousConditionsStack
95298
95378
  } = _ref;
95299
- super();
95379
+ super('filter');
95300
95380
  /**
95301
95381
  * @param {Array} previousConditionsStack An array of the previous filter conditions.
95302
95382
  */
@@ -95324,7 +95404,7 @@ class FiltersAction extends _base.BaseAction {
95324
95404
  undo(hot, undoneCallback) {
95325
95405
  const filters = hot.getPlugin('filters');
95326
95406
  hot.addHookOnce('afterViewRender', undoneCallback);
95327
- filters.conditionCollection.importAllConditions(this.previousConditionsStack);
95407
+ filters.importConditions(this.previousConditionsStack);
95328
95408
  filters.filter();
95329
95409
  }
95330
95410
 
@@ -95335,14 +95415,14 @@ class FiltersAction extends _base.BaseAction {
95335
95415
  redo(hot, redoneCallback) {
95336
95416
  const filters = hot.getPlugin('filters');
95337
95417
  hot.addHookOnce('afterViewRender', redoneCallback);
95338
- filters.conditionCollection.importAllConditions(this.conditionsStack);
95418
+ filters.importConditions(this.conditionsStack);
95339
95419
  filters.filter();
95340
95420
  }
95341
95421
  }
95342
95422
  exports.FiltersAction = FiltersAction;
95343
95423
 
95344
95424
  /***/ }),
95345
- /* 759 */
95425
+ /* 758 */
95346
95426
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95347
95427
 
95348
95428
  "use strict";
@@ -95351,7 +95431,7 @@ exports.FiltersAction = FiltersAction;
95351
95431
  var _interopRequireDefault = __webpack_require__(1);
95352
95432
  exports.__esModule = true;
95353
95433
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
95354
- var _base = __webpack_require__(752);
95434
+ var _base = __webpack_require__(751);
95355
95435
  /**
95356
95436
  * Action that tracks changes in merged cells.
95357
95437
  *
@@ -95364,7 +95444,10 @@ class MergeCellsAction extends _base.BaseAction {
95364
95444
  data,
95365
95445
  cellRange
95366
95446
  } = _ref;
95367
- super();
95447
+ super('merge_cells');
95448
+ /**
95449
+ * @param {CellRange} cellRange The merged cell range.
95450
+ */
95368
95451
  (0, _defineProperty2.default)(this, "cellRange", void 0);
95369
95452
  this.cellRange = cellRange;
95370
95453
  this.data = data;
@@ -95409,7 +95492,7 @@ class MergeCellsAction extends _base.BaseAction {
95409
95492
  exports.MergeCellsAction = MergeCellsAction;
95410
95493
 
95411
95494
  /***/ }),
95412
- /* 760 */
95495
+ /* 759 */
95413
95496
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95414
95497
 
95415
95498
  "use strict";
@@ -95421,8 +95504,8 @@ __webpack_require__(87);
95421
95504
  __webpack_require__(115);
95422
95505
  __webpack_require__(133);
95423
95506
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
95424
- var _base = __webpack_require__(752);
95425
- var _utils = __webpack_require__(761);
95507
+ var _base = __webpack_require__(751);
95508
+ var _utils = __webpack_require__(760);
95426
95509
  var _number = __webpack_require__(200);
95427
95510
  var _array = __webpack_require__(161);
95428
95511
  /**
@@ -95437,13 +95520,14 @@ class RemoveColumnAction extends _base.BaseAction {
95437
95520
  index,
95438
95521
  indexes,
95439
95522
  data,
95523
+ amount,
95440
95524
  headers,
95441
95525
  columnPositions,
95442
95526
  rowPositions,
95443
95527
  fixedColumnsStart,
95444
95528
  removedCellMetas
95445
95529
  } = _ref;
95446
- super();
95530
+ super('remove_col');
95447
95531
  /**
95448
95532
  * @param {number} index The visual column index.
95449
95533
  */
@@ -95483,7 +95567,7 @@ class RemoveColumnAction extends _base.BaseAction {
95483
95567
  this.index = index;
95484
95568
  this.indexes = indexes;
95485
95569
  this.data = data;
95486
- this.amount = this.data[0].length;
95570
+ this.amount = amount;
95487
95571
  this.headers = headers;
95488
95572
  this.columnPositions = columnPositions.slice(0);
95489
95573
  this.rowPositions = rowPositions.slice(0);
@@ -95521,6 +95605,7 @@ class RemoveColumnAction extends _base.BaseAction {
95521
95605
  index: columnIndex,
95522
95606
  indexes,
95523
95607
  data: removedData,
95608
+ amount,
95524
95609
  headers,
95525
95610
  columnPositions: columnsMap,
95526
95611
  rowPositions: rowsMap,
@@ -95589,7 +95674,7 @@ class RemoveColumnAction extends _base.BaseAction {
95589
95674
  exports.RemoveColumnAction = RemoveColumnAction;
95590
95675
 
95591
95676
  /***/ }),
95592
- /* 761 */
95677
+ /* 760 */
95593
95678
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95594
95679
 
95595
95680
  "use strict";
@@ -95598,7 +95683,7 @@ exports.RemoveColumnAction = RemoveColumnAction;
95598
95683
  exports.__esModule = true;
95599
95684
  exports.getCellMetas = getCellMetas;
95600
95685
  __webpack_require__(87);
95601
- __webpack_require__(762);
95686
+ __webpack_require__(761);
95602
95687
  __webpack_require__(115);
95603
95688
  __webpack_require__(127);
95604
95689
  var _number = __webpack_require__(200);
@@ -95632,7 +95717,7 @@ function getCellMetas(hot, fromRow, toRow, fromColumn, toColumn) {
95632
95717
  }
95633
95718
 
95634
95719
  /***/ }),
95635
- /* 762 */
95720
+ /* 761 */
95636
95721
  /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
95637
95722
 
95638
95723
  "use strict";
@@ -95655,7 +95740,7 @@ $({ target: 'Object', stat: true }, {
95655
95740
 
95656
95741
 
95657
95742
  /***/ }),
95658
- /* 763 */
95743
+ /* 762 */
95659
95744
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95660
95745
 
95661
95746
  "use strict";
@@ -95667,8 +95752,8 @@ __webpack_require__(87);
95667
95752
  __webpack_require__(115);
95668
95753
  __webpack_require__(133);
95669
95754
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
95670
- var _base = __webpack_require__(752);
95671
- var _utils = __webpack_require__(761);
95755
+ var _base = __webpack_require__(751);
95756
+ var _utils = __webpack_require__(760);
95672
95757
  var _object = __webpack_require__(165);
95673
95758
  /**
95674
95759
  * Action that tracks changes in row removal.
@@ -95686,7 +95771,7 @@ class RemoveRowAction extends _base.BaseAction {
95686
95771
  rowIndexesSequence,
95687
95772
  removedCellMetas
95688
95773
  } = _ref;
95689
- super();
95774
+ super('remove_row');
95690
95775
  /**
95691
95776
  * @param {number} index The visual row index.
95692
95777
  */
@@ -95778,7 +95863,7 @@ class RemoveRowAction extends _base.BaseAction {
95778
95863
  exports.RemoveRowAction = RemoveRowAction;
95779
95864
 
95780
95865
  /***/ }),
95781
- /* 764 */
95866
+ /* 763 */
95782
95867
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95783
95868
 
95784
95869
  "use strict";
@@ -95789,7 +95874,7 @@ exports.__esModule = true;
95789
95874
  __webpack_require__(115);
95790
95875
  __webpack_require__(133);
95791
95876
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
95792
- var _base = __webpack_require__(752);
95877
+ var _base = __webpack_require__(751);
95793
95878
  var _moves = __webpack_require__(661);
95794
95879
  /**
95795
95880
  * Action that tracks row move changes.
@@ -95803,7 +95888,7 @@ class RowMoveAction extends _base.BaseAction {
95803
95888
  rows,
95804
95889
  finalIndex
95805
95890
  } = _ref;
95806
- super();
95891
+ super('row_move');
95807
95892
  /**
95808
95893
  * @param {number[]} rows An array with moved rows.
95809
95894
  */
@@ -95866,7 +95951,7 @@ class RowMoveAction extends _base.BaseAction {
95866
95951
  exports.RowMoveAction = RowMoveAction;
95867
95952
 
95868
95953
  /***/ }),
95869
- /* 765 */
95954
+ /* 764 */
95870
95955
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95871
95956
 
95872
95957
  "use strict";
@@ -95875,7 +95960,7 @@ exports.RowMoveAction = RowMoveAction;
95875
95960
  var _interopRequireDefault = __webpack_require__(1);
95876
95961
  exports.__esModule = true;
95877
95962
  var _defineProperty2 = _interopRequireDefault(__webpack_require__(170));
95878
- var _base = __webpack_require__(752);
95963
+ var _base = __webpack_require__(751);
95879
95964
  /**
95880
95965
  * Action that tracks changes in merged cells.
95881
95966
  *
@@ -95887,7 +95972,10 @@ class UnmergeCellsAction extends _base.BaseAction {
95887
95972
  let {
95888
95973
  cellRange
95889
95974
  } = _ref;
95890
- super();
95975
+ super('unmerge_cells');
95976
+ /**
95977
+ * @param {CellRange} cellRange The merged cell range.
95978
+ */
95891
95979
  (0, _defineProperty2.default)(this, "cellRange", void 0);
95892
95980
  this.cellRange = cellRange;
95893
95981
  }
@@ -95926,7 +96014,7 @@ class UnmergeCellsAction extends _base.BaseAction {
95926
96014
  exports.UnmergeCellsAction = UnmergeCellsAction;
95927
96015
 
95928
96016
  /***/ }),
95929
- /* 766 */
96017
+ /* 765 */
95930
96018
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
95931
96019
 
95932
96020
  "use strict";
@@ -96035,7 +96123,7 @@ exports.CellRange = _base.CellRange;
96035
96123
  var _registry = __webpack_require__(430);
96036
96124
  var _eventManager = _interopRequireWildcard(__webpack_require__(188));
96037
96125
  var _translations = __webpack_require__(291);
96038
- var _jquery = _interopRequireDefault(__webpack_require__(766));
96126
+ var _jquery = _interopRequireDefault(__webpack_require__(765));
96039
96127
  var _ghostTable = _interopRequireDefault(__webpack_require__(509));
96040
96128
  var parseTableHelpers = _interopRequireWildcard(__webpack_require__(190));
96041
96129
  var arrayHelpers = _interopRequireWildcard(__webpack_require__(161));