handsontable 14.0.0-next-dd92f79-20231124 → 14.0.0-next-88de277-20231127

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 (89) hide show
  1. package/3rdparty/walkontable/src/overlay/_base.js +2 -2
  2. package/3rdparty/walkontable/src/overlay/_base.mjs +2 -2
  3. package/3rdparty/walkontable/src/renderer/columnHeaders.js +1 -1
  4. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +2 -2
  5. package/3rdparty/walkontable/src/renderer/rows.js +1 -1
  6. package/3rdparty/walkontable/src/renderer/rows.mjs +2 -2
  7. package/3rdparty/walkontable/src/selection/manager.js +20 -6
  8. package/3rdparty/walkontable/src/selection/manager.mjs +20 -6
  9. package/base.js +2 -2
  10. package/base.mjs +2 -2
  11. package/core.js +1 -1
  12. package/core.mjs +1 -1
  13. package/dataMap/replaceData.js +3 -1
  14. package/dataMap/replaceData.mjs +3 -1
  15. package/dist/handsontable.css +62 -44
  16. package/dist/handsontable.full.css +62 -44
  17. package/dist/handsontable.full.js +123 -302
  18. package/dist/handsontable.full.min.css +5 -5
  19. package/dist/handsontable.full.min.js +64 -64
  20. package/dist/handsontable.js +123 -302
  21. package/dist/handsontable.min.css +5 -5
  22. package/dist/handsontable.min.js +19 -19
  23. package/dist/languages/all.js +2 -24
  24. package/dist/languages/all.min.js +1 -1
  25. package/dist/languages/en-US.js +1 -12
  26. package/dist/languages/en-US.min.js +1 -1
  27. package/dist/languages/pl-PL.js +1 -12
  28. package/dist/languages/pl-PL.min.js +1 -1
  29. package/editors/dateEditor/dateEditor.js +0 -7
  30. package/editors/dateEditor/dateEditor.mjs +1 -8
  31. package/editors/handsontableEditor/handsontableEditor.js +0 -7
  32. package/editors/handsontableEditor/handsontableEditor.mjs +1 -8
  33. package/editors/passwordEditor/passwordEditor.js +4 -0
  34. package/editors/passwordEditor/passwordEditor.mjs +5 -1
  35. package/helpers/a11y.js +2 -2
  36. package/helpers/a11y.mjs +1 -1
  37. package/helpers/dom/element.js +0 -29
  38. package/helpers/dom/element.mjs +0 -28
  39. package/helpers/mixed.js +2 -2
  40. package/helpers/mixed.mjs +2 -2
  41. package/i18n/constants.js +1 -14
  42. package/i18n/constants.mjs +1 -14
  43. package/i18n/languages/en-US.js +1 -12
  44. package/i18n/languages/en-US.mjs +1 -12
  45. package/i18n/languages/pl-PL.js +1 -12
  46. package/i18n/languages/pl-PL.mjs +1 -12
  47. package/languages/all.js +2 -24
  48. package/languages/en-US.js +1 -12
  49. package/languages/en-US.mjs +1 -12
  50. package/languages/index.js +2 -24
  51. package/languages/pl-PL.js +1 -12
  52. package/languages/pl-PL.mjs +1 -12
  53. package/package.json +1 -1
  54. package/plugins/collapsibleColumns/collapsibleColumns.js +2 -3
  55. package/plugins/collapsibleColumns/collapsibleColumns.mjs +3 -4
  56. package/plugins/columnSorting/columnSorting.js +4 -30
  57. package/plugins/columnSorting/columnSorting.mjs +6 -32
  58. package/plugins/contextMenu/menu/menuItemRenderer.js +0 -12
  59. package/plugins/contextMenu/menu/menuItemRenderer.mjs +2 -14
  60. package/plugins/dropdownMenu/dropdownMenu.js +1 -2
  61. package/plugins/dropdownMenu/dropdownMenu.mjs +2 -3
  62. package/plugins/filters/ui/input.js +3 -0
  63. package/plugins/filters/ui/input.mjs +3 -0
  64. package/plugins/hiddenColumns/hiddenColumns.js +0 -44
  65. package/plugins/hiddenColumns/hiddenColumns.mjs +1 -45
  66. package/plugins/hiddenRows/hiddenRows.js +0 -44
  67. package/plugins/hiddenRows/hiddenRows.mjs +1 -45
  68. package/plugins/multiColumnSorting/multiColumnSorting.js +0 -21
  69. package/plugins/multiColumnSorting/multiColumnSorting.mjs +1 -22
  70. package/plugins/nestedRows/nestedRows.js +1 -2
  71. package/plugins/nestedRows/nestedRows.mjs +1 -2
  72. package/plugins/nestedRows/ui/headers.js +3 -3
  73. package/plugins/nestedRows/ui/headers.mjs +4 -4
  74. package/renderers/autocompleteRenderer/autocompleteRenderer.js +0 -3
  75. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +1 -4
  76. package/renderers/checkboxRenderer/checkboxRenderer.js +0 -1
  77. package/renderers/checkboxRenderer/checkboxRenderer.mjs +0 -1
  78. package/renderers/dateRenderer/dateRenderer.js +0 -5
  79. package/renderers/dateRenderer/dateRenderer.mjs +0 -5
  80. package/renderers/handsontableRenderer/handsontableRenderer.js +0 -5
  81. package/renderers/handsontableRenderer/handsontableRenderer.mjs +0 -5
  82. package/renderers/selectRenderer/selectRenderer.js +0 -5
  83. package/renderers/selectRenderer/selectRenderer.mjs +0 -5
  84. package/selection/highlight/types/focus.js +2 -0
  85. package/selection/highlight/types/focus.mjs +2 -0
  86. package/selection/selection.js +0 -1
  87. package/selection/selection.mjs +0 -1
  88. package/tableView.js +35 -2
  89. package/tableView.mjs +35 -2
@@ -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: 14.0.0-next-dd92f79-20231124
29
- * Release date: 22/11/2023 (built at 24/11/2023 11:03:49)
28
+ * Version: 14.0.0-next-88de277-20231127
29
+ * Release date: 29/11/2023 (built at 27/11/2023 10:19:34)
30
30
  */
31
31
  (function webpackUniversalModuleDefinition(root, factory) {
32
32
  if(typeof exports === 'object' && typeof module === 'object')
@@ -43033,8 +43033,8 @@ Handsontable.hooks = _pluginHooks.default.getSingleton();
43033
43033
  Handsontable.CellCoords = _src.CellCoords;
43034
43034
  Handsontable.CellRange = _src.CellRange;
43035
43035
  Handsontable.packageName = 'handsontable';
43036
- Handsontable.buildDate = "24/11/2023 11:03:49";
43037
- Handsontable.version = "14.0.0-next-dd92f79-20231124";
43036
+ Handsontable.buildDate = "27/11/2023 10:19:34";
43037
+ Handsontable.version = "14.0.0-next-88de277-20231127";
43038
43038
  Handsontable.languages = {
43039
43039
  dictionaryKeys: _registry.dictionaryKeys,
43040
43040
  getLanguageDictionary: _registry.getLanguageDictionary,
@@ -47515,7 +47515,7 @@ function Core(rootElement, userSettings) {
47515
47515
  * @function getTranslatedPhrase
47516
47516
  * @since 0.35.0
47517
47517
  * @param {string} dictionaryKey Constant which is dictionary key.
47518
- * @param {*} [extraArguments] Arguments which will be handled by formatters.
47518
+ * @param {*} extraArguments Arguments which will be handled by formatters.
47519
47519
  * @returns {string}
47520
47520
  */
47521
47521
  this.getTranslatedPhrase = function (dictionaryKey, extraArguments) {
@@ -50042,7 +50042,6 @@ module.exports = typeof Bun == 'function' && Bun && typeof Bun.version == 'strin
50042
50042
  exports.__esModule = true;
50043
50043
  exports.addClass = addClass;
50044
50044
  exports.addEvent = addEvent;
50045
- exports.appendElement = appendElement;
50046
50045
  exports.clearTextSelection = clearTextSelection;
50047
50046
  exports.closest = closest;
50048
50047
  exports.closestDown = closestDown;
@@ -51177,34 +51176,6 @@ function runWithSelectedContendEditableElement(element, callback) {
51177
51176
  removeContentEditableFromElementAndDeselect(element, invisibleSelection);
51178
51177
  }
51179
51178
 
51180
- /**
51181
- * Creates a new DOM element and appends it to the parent element with the provided class name(s) and attributes.
51182
- *
51183
- * @param {HTMLElement} parentElement The parent element.
51184
- * @param {object} properties The properties object.
51185
- * @param {string} properties.tagName The type of the new element.
51186
- * @param {string|string[]} properties.className Class name as string or array of strings.
51187
- * @param {Array[]} properties.attributes An array containing the attributes to be added. Each element of the array
51188
- * should be an array in a form of `[attributeName, attributeValue]`.
51189
- * @returns {HTMLElement} The created div element.
51190
- */
51191
- function appendElement(parentElement, _ref) {
51192
- let {
51193
- tagName,
51194
- className,
51195
- attributes
51196
- } = _ref;
51197
- const element = parentElement.ownerDocument.createElement(tagName);
51198
- if (className) {
51199
- addClass(element, className);
51200
- }
51201
- if (attributes && attributes.length) {
51202
- setAttribute(element, attributes);
51203
- }
51204
- parentElement.appendChild(element);
51205
- return element;
51206
- }
51207
-
51208
51179
  /***/ }),
51209
51180
  /* 305 */
51210
51181
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
@@ -53183,7 +53154,7 @@ const domMessages = {
53183
53154
  function _injectProductInfo(key, element) {
53184
53155
  const hasValidType = !isEmpty(key);
53185
53156
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
53186
- const hotVersion = "14.0.0-next-dd92f79-20231124";
53157
+ const hotVersion = "14.0.0-next-88de277-20231127";
53187
53158
  let keyValidityDate;
53188
53159
  let consoleMessageState = 'invalid';
53189
53160
  let domMessageState = 'invalid';
@@ -53191,7 +53162,7 @@ function _injectProductInfo(key, element) {
53191
53162
  const schemaValidity = _checkKeySchema(key);
53192
53163
  if (hasValidType || isNonCommercial || schemaValidity) {
53193
53164
  if (schemaValidity) {
53194
- const releaseDate = (0, _moment.default)("22/11/2023", 'DD/MM/YYYY');
53165
+ const releaseDate = (0, _moment.default)("29/11/2023", 'DD/MM/YYYY');
53195
53166
  const releaseDays = Math.floor(releaseDate.toDate().getTime() / 8.64e7);
53196
53167
  const keyValidityDays = _extractTime(key);
53197
53168
  keyValidityDate = (0, _moment.default)((keyValidityDays + 1) * 8.64e7, 'x').format('MMMM DD, YYYY');
@@ -60435,6 +60406,8 @@ const A11Y_GRIDCELL = () => ['role', 'gridcell'];
60435
60406
  exports.A11Y_GRIDCELL = A11Y_GRIDCELL;
60436
60407
  const A11Y_ROWHEADER = () => ['role', 'rowheader'];
60437
60408
  exports.A11Y_ROWHEADER = A11Y_ROWHEADER;
60409
+ const A11Y_ROWGROUP = () => ['role', 'rowgroup'];
60410
+ exports.A11Y_ROWGROUP = A11Y_ROWGROUP;
60438
60411
  const A11Y_COLUMNHEADER = () => ['role', 'columnheader'];
60439
60412
  exports.A11Y_COLUMNHEADER = A11Y_COLUMNHEADER;
60440
60413
  const A11Y_ROW = () => ['role', 'row'];
@@ -60459,8 +60432,6 @@ const A11Y_TEXT = () => ['type', 'text'];
60459
60432
  exports.A11Y_TEXT = A11Y_TEXT;
60460
60433
  const A11Y_LABEL = val => ['aria-label', val];
60461
60434
  exports.A11Y_LABEL = A11Y_LABEL;
60462
- const A11Y_DESCRIPTION = val => ['aria-description', val];
60463
- exports.A11Y_DESCRIPTION = A11Y_DESCRIPTION;
60464
60435
  const A11Y_HIDDEN = () => ['aria-hidden', 'true'];
60465
60436
  exports.A11Y_HIDDEN = A11Y_HIDDEN;
60466
60437
  const A11Y_DISABLED = () => ['aria-disabled', 'true'];
@@ -66913,8 +66884,10 @@ var _src = _interopRequireDefault(__webpack_require__(480));
66913
66884
  var _mouseEventHandler = __webpack_require__(550);
66914
66885
  var _rootInstance = __webpack_require__(551);
66915
66886
  var _a11y = __webpack_require__(447);
66887
+ function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
66916
66888
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
66917
66889
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
66890
+ function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
66918
66891
  /**
66919
66892
  * @class TableView
66920
66893
  * @private
@@ -66926,11 +66899,25 @@ var _mouseDown = /*#__PURE__*/new WeakMap();
66926
66899
  var _table = /*#__PURE__*/new WeakMap();
66927
66900
  var _lastWidth = /*#__PURE__*/new WeakMap();
66928
66901
  var _lastHeight = /*#__PURE__*/new WeakMap();
66902
+ var _getAriaColcount = /*#__PURE__*/new WeakSet();
66903
+ var _updateAriaColcount = /*#__PURE__*/new WeakSet();
66929
66904
  class TableView {
66930
66905
  /**
66931
66906
  * @param {Hanstontable} hotInstance Instance of {@link Handsontable}.
66932
66907
  */
66933
66908
  constructor(hotInstance) {
66909
+ /**
66910
+ * Update the `aria-colcount` attribute by the provided value.
66911
+ *
66912
+ * @param {number} delta The number of columns to add or remove to the aria tag.
66913
+ */
66914
+ _classPrivateMethodInitSpec(this, _updateAriaColcount);
66915
+ /**
66916
+ * Return the value of the `aria-colcount` attribute.
66917
+ *
66918
+ * @returns {number} The value of the `aria-colcount` attribute.
66919
+ */
66920
+ _classPrivateMethodInitSpec(this, _getAriaColcount);
66934
66921
  /**
66935
66922
  * Instance of {@link Handsontable}.
66936
66923
  *
@@ -67167,7 +67154,7 @@ class TableView {
67167
67154
  }
67168
67155
  if (this.settings.ariaTags) {
67169
67156
  (0, _element.setAttribute)((0, _classPrivateFieldGet2.default)(this, _table), [(0, _a11y.A11Y_PRESENTATION)()]);
67170
- (0, _element.setAttribute)(rootElement, [(0, _a11y.A11Y_TREEGRID)(), (0, _a11y.A11Y_ROWCOUNT)(this.hot.countRows()), (0, _a11y.A11Y_COLCOUNT)(this.hot.countCols()), (0, _a11y.A11Y_MULTISELECTABLE)()]);
67157
+ (0, _element.setAttribute)(rootElement, [(0, _a11y.A11Y_TREEGRID)(), (0, _a11y.A11Y_ROWCOUNT)(-1), (0, _a11y.A11Y_COLCOUNT)(this.hot.countCols()), (0, _a11y.A11Y_MULTISELECTABLE)()]);
67171
67158
  }
67172
67159
  this.THEAD = rootDocument.createElement('THEAD');
67173
67160
  (0, _classPrivateFieldGet2.default)(this, _table).appendChild(this.THEAD);
@@ -67560,6 +67547,13 @@ class TableView {
67560
67547
  }
67561
67548
  this.hot.runHooks('afterGetRowHeaderRenderers', headerRenderers);
67562
67549
  (0, _classPrivateFieldSet2.default)(this, _rowHeadersCount, headerRenderers.length);
67550
+ if (this.hot.getSettings().ariaTags) {
67551
+ // Update the aria-colcount attribute.
67552
+ // Only needs to be done once after initialization/data update.
67553
+ if (_classPrivateMethodGet(this, _getAriaColcount, _getAriaColcount2).call(this) === this.hot.countCols()) {
67554
+ _classPrivateMethodGet(this, _updateAriaColcount, _updateAriaColcount2).call(this, (0, _classPrivateFieldGet2.default)(this, _rowHeadersCount));
67555
+ }
67556
+ }
67563
67557
  return headerRenderers;
67564
67558
  },
67565
67559
  columnHeaders: () => {
@@ -68052,6 +68046,10 @@ class TableView {
68052
68046
  const span = rootDocument.createElement('span');
68053
68047
  div.className = 'relative';
68054
68048
  span.className = 'colHeader';
68049
+ if (this.settings.ariaTags) {
68050
+ (0, _element.setAttribute)(div, ...(0, _a11y.A11Y_PRESENTATION)());
68051
+ (0, _element.setAttribute)(span, ...(0, _a11y.A11Y_PRESENTATION)());
68052
+ }
68055
68053
  this.updateCellHeader(span, visualColumnIndex, label, headerLevel);
68056
68054
  div.appendChild(span);
68057
68055
  TH.appendChild(div);
@@ -68195,7 +68193,6 @@ class TableView {
68195
68193
  getRowHeadersCount() {
68196
68194
  return (0, _classPrivateFieldGet2.default)(this, _rowHeadersCount);
68197
68195
  }
68198
-
68199
68196
  /**
68200
68197
  * Destroys internal WalkOnTable's instance. Detaches all of the bonded listeners.
68201
68198
  *
@@ -68206,6 +68203,13 @@ class TableView {
68206
68203
  this.eventManager.destroy();
68207
68204
  }
68208
68205
  }
68206
+ function _getAriaColcount2() {
68207
+ return parseInt(this.hot.rootElement.getAttribute((0, _a11y.A11Y_COLCOUNT)()[0]), 10);
68208
+ }
68209
+ function _updateAriaColcount2(delta) {
68210
+ const colCount = _classPrivateMethodGet(this, _getAriaColcount, _getAriaColcount2).call(this) + delta;
68211
+ (0, _element.setAttribute)(this.hot.rootElement, ...(0, _a11y.A11Y_COLCOUNT)(colCount));
68212
+ }
68209
68213
  var _default = exports["default"] = TableView;
68210
68214
 
68211
68215
  /***/ }),
@@ -73842,7 +73846,7 @@ class ColumnHeadersRenderer extends _base.default {
73842
73846
  columnHeadersCount
73843
73847
  } = this.table;
73844
73848
  if (this.table.isAriaEnabled()) {
73845
- (0, _element.setAttribute)(this.rootNode, [(0, _a11y.A11Y_PRESENTATION)()]);
73849
+ (0, _element.setAttribute)(this.rootNode, [(0, _a11y.A11Y_ROWGROUP)()]);
73846
73850
  }
73847
73851
  for (let rowHeaderIndex = 0; rowHeaderIndex < columnHeadersCount; rowHeaderIndex += 1) {
73848
73852
  const {
@@ -74016,7 +74020,7 @@ class RowsRenderer extends _base.default {
74016
74020
  the number of rendered rows by specifying the table height and/or turning off the "renderAllRows" option.`);
74017
74021
  }
74018
74022
  if (this.table.isAriaEnabled()) {
74019
- (0, _element.setAttribute)(this.rootNode, [(0, _a11y.A11Y_PRESENTATION)()]);
74023
+ (0, _element.setAttribute)(this.rootNode, [(0, _a11y.A11Y_ROWGROUP)()]);
74020
74024
  }
74021
74025
  this.orderView.setSize(rowsToRender).setOffset(this.table.renderedRowToSource(0)).start();
74022
74026
  for (let visibleRowIndex = 0; visibleRowIndex < rowsToRender; visibleRowIndex++) {
@@ -75087,8 +75091,8 @@ class Overlay {
75087
75091
  rootDocument,
75088
75092
  rootWindow
75089
75093
  } = this.domBindings;
75090
- const clone = rootDocument.createElement('DIV');
75091
- const clonedTable = rootDocument.createElement('TABLE');
75094
+ const clone = rootDocument.createElement('div');
75095
+ const clonedTable = rootDocument.createElement('table');
75092
75096
  const tableParent = wtTable.wtRootElement.parentNode;
75093
75097
  clone.className = `${_constants.CLONE_CLASS_NAMES.get(this.type)} handsontable`;
75094
75098
  clone.setAttribute('dir', this.isRtl() ? 'rtl' : 'ltr');
@@ -77223,8 +77227,9 @@ const CORNER_DEFAULT_STYLE = exports.CORNER_DEFAULT_STYLE = Object.freeze({
77223
77227
  __webpack_require__(275);
77224
77228
  var _interopRequireDefault = __webpack_require__(198);
77225
77229
  exports.__esModule = true;
77230
+ __webpack_require__(205);
77226
77231
  __webpack_require__(538);
77227
- var _classPrivateFieldGet8 = _interopRequireDefault(__webpack_require__(466));
77232
+ var _classPrivateFieldGet7 = _interopRequireDefault(__webpack_require__(466));
77228
77233
  var _classPrivateFieldSet2 = _interopRequireDefault(__webpack_require__(469));
77229
77234
  var _element = __webpack_require__(304);
77230
77235
  var _scanner2 = __webpack_require__(539);
@@ -77321,9 +77326,9 @@ class SelectionManager {
77321
77326
  */
77322
77327
  setActiveOverlay(activeWot) {
77323
77328
  (0, _classPrivateFieldSet2.default)(this, _activeOverlaysWot, activeWot);
77324
- (0, _classPrivateFieldGet8.default)(this, _scanner).setActiveOverlay((0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot));
77325
- if (!(0, _classPrivateFieldGet8.default)(this, _appliedClasses).has((0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot))) {
77326
- (0, _classPrivateFieldGet8.default)(this, _appliedClasses).set((0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot), new Set());
77329
+ (0, _classPrivateFieldGet7.default)(this, _scanner).setActiveOverlay((0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot));
77330
+ if (!(0, _classPrivateFieldGet7.default)(this, _appliedClasses).has((0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot))) {
77331
+ (0, _classPrivateFieldGet7.default)(this, _appliedClasses).set((0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot), new Set());
77327
77332
  }
77328
77333
  return this;
77329
77334
  }
@@ -77334,7 +77339,7 @@ class SelectionManager {
77334
77339
  * @returns {Selection|null}
77335
77340
  */
77336
77341
  getFocusSelection() {
77337
- return (0, _classPrivateFieldGet8.default)(this, _selections) !== null ? (0, _classPrivateFieldGet8.default)(this, _selections).getFocus() : null;
77342
+ return (0, _classPrivateFieldGet7.default)(this, _selections) !== null ? (0, _classPrivateFieldGet7.default)(this, _selections).getFocus() : null;
77338
77343
  }
77339
77344
 
77340
77345
  /**
@@ -77343,7 +77348,7 @@ class SelectionManager {
77343
77348
  * @returns {Selection|null}
77344
77349
  */
77345
77350
  getAreaSelection() {
77346
- return (0, _classPrivateFieldGet8.default)(this, _selections) !== null ? (0, _classPrivateFieldGet8.default)(this, _selections).createLayeredArea() : null;
77351
+ return (0, _classPrivateFieldGet7.default)(this, _selections) !== null ? (0, _classPrivateFieldGet7.default)(this, _selections).createLayeredArea() : null;
77347
77352
  }
77348
77353
 
77349
77354
  /**
@@ -77356,17 +77361,17 @@ class SelectionManager {
77356
77361
  if (!selection.settings.border) {
77357
77362
  return null;
77358
77363
  }
77359
- if ((0, _classPrivateFieldGet8.default)(this, _selectionBorders).has(selection)) {
77360
- const borders = (0, _classPrivateFieldGet8.default)(this, _selectionBorders).get(selection);
77361
- if (borders.has((0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot))) {
77362
- return borders.get((0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot));
77364
+ if ((0, _classPrivateFieldGet7.default)(this, _selectionBorders).has(selection)) {
77365
+ const borders = (0, _classPrivateFieldGet7.default)(this, _selectionBorders).get(selection);
77366
+ if (borders.has((0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot))) {
77367
+ return borders.get((0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot));
77363
77368
  }
77364
- const border = new _border.default((0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot), selection.settings);
77365
- borders.set((0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot), border);
77369
+ const border = new _border.default((0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot), selection.settings);
77370
+ borders.set((0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot), border);
77366
77371
  return border;
77367
77372
  }
77368
- const border = new _border.default((0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot), selection.settings);
77369
- (0, _classPrivateFieldGet8.default)(this, _selectionBorders).set(selection, new Map([[(0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot), border]]));
77373
+ const border = new _border.default((0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot), selection.settings);
77374
+ (0, _classPrivateFieldGet7.default)(this, _selectionBorders).set(selection, new Map([[(0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot), border]]));
77370
77375
  return border;
77371
77376
  }
77372
77377
 
@@ -77378,7 +77383,7 @@ class SelectionManager {
77378
77383
  */
77379
77384
  getBorderInstances(selection) {
77380
77385
  var _classPrivateFieldGet2, _classPrivateFieldGet3;
77381
- return Array.from((_classPrivateFieldGet2 = (_classPrivateFieldGet3 = (0, _classPrivateFieldGet8.default)(this, _selectionBorders).get(selection)) === null || _classPrivateFieldGet3 === void 0 ? void 0 : _classPrivateFieldGet3.values()) !== null && _classPrivateFieldGet2 !== void 0 ? _classPrivateFieldGet2 : []);
77386
+ return Array.from((_classPrivateFieldGet2 = (_classPrivateFieldGet3 = (0, _classPrivateFieldGet7.default)(this, _selectionBorders).get(selection)) === null || _classPrivateFieldGet3 === void 0 ? void 0 : _classPrivateFieldGet3.values()) !== null && _classPrivateFieldGet2 !== void 0 ? _classPrivateFieldGet2 : []);
77382
77387
  }
77383
77388
 
77384
77389
  /**
@@ -77387,8 +77392,8 @@ class SelectionManager {
77387
77392
  * @param {Selection} selection The selection instance.
77388
77393
  */
77389
77394
  destroyBorders(selection) {
77390
- (0, _classPrivateFieldGet8.default)(this, _selectionBorders).get(selection).forEach(border => border.destroy());
77391
- (0, _classPrivateFieldGet8.default)(this, _selectionBorders).delete(selection);
77395
+ (0, _classPrivateFieldGet7.default)(this, _selectionBorders).get(selection).forEach(border => border.destroy());
77396
+ (0, _classPrivateFieldGet7.default)(this, _selectionBorders).delete(selection);
77392
77397
  }
77393
77398
 
77394
77399
  /**
@@ -77397,24 +77402,26 @@ class SelectionManager {
77397
77402
  * @param {boolean} fastDraw Indicates the render cycle type (fast/slow).
77398
77403
  */
77399
77404
  render(fastDraw) {
77400
- if ((0, _classPrivateFieldGet8.default)(this, _selections) === null) {
77405
+ if ((0, _classPrivateFieldGet7.default)(this, _selections) === null) {
77401
77406
  return;
77402
77407
  }
77403
77408
  if (fastDraw) {
77404
77409
  // there was no rerender, so we need to remove classNames by ourselves
77405
77410
  _classPrivateMethodGet(this, _resetCells, _resetCells2).call(this);
77406
77411
  }
77407
- const selections = Array.from((0, _classPrivateFieldGet8.default)(this, _selections));
77412
+ const selections = Array.from((0, _classPrivateFieldGet7.default)(this, _selections));
77408
77413
  const classNamesMap = new Map();
77414
+ const headerAttributesMap = new Map();
77409
77415
  for (let i = 0; i < selections.length; i++) {
77410
77416
  const selection = selections[i];
77411
77417
  const {
77412
77418
  className,
77419
+ headerAttributes,
77413
77420
  createLayers,
77414
77421
  selectionType
77415
77422
  } = selection.settings;
77416
- if (!(0, _classPrivateFieldGet8.default)(this, _destroyListeners).has(selection)) {
77417
- (0, _classPrivateFieldGet8.default)(this, _destroyListeners).add(selection);
77423
+ if (!(0, _classPrivateFieldGet7.default)(this, _destroyListeners).has(selection)) {
77424
+ (0, _classPrivateFieldGet7.default)(this, _destroyListeners).add(selection);
77418
77425
  selection.addLocalHook('destroy', () => this.destroyBorders(selection));
77419
77426
  }
77420
77427
  const borderInstance = this.getBorderInstance(selection);
@@ -77424,7 +77431,7 @@ class SelectionManager {
77424
77431
  }
77425
77432
 
77426
77433
  if (className) {
77427
- const elements = (0, _classPrivateFieldGet8.default)(this, _scanner).setActiveSelection(selection).scan();
77434
+ const elements = (0, _classPrivateFieldGet7.default)(this, _scanner).setActiveSelection(selection).scan();
77428
77435
  elements.forEach(element => {
77429
77436
  if (classNamesMap.has(element)) {
77430
77437
  const classNamesLayers = classNamesMap.get(element);
@@ -77436,14 +77443,22 @@ class SelectionManager {
77436
77443
  } else {
77437
77444
  classNamesMap.set(element, new Map([[className, 1]]));
77438
77445
  }
77446
+ if (headerAttributes) {
77447
+ if (!headerAttributesMap.has(element)) {
77448
+ headerAttributesMap.set(element, []);
77449
+ }
77450
+ if (element.nodeName === 'TH') {
77451
+ headerAttributesMap.get(element).push(...headerAttributes);
77452
+ }
77453
+ }
77439
77454
  });
77440
77455
  }
77441
77456
  const corners = selection.getCorners();
77442
- (0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot).getSetting('onBeforeDrawBorders', corners, selectionType);
77457
+ (0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot).getSetting('onBeforeDrawBorders', corners, selectionType);
77443
77458
  borderInstance === null || borderInstance === void 0 || borderInstance.appear(corners);
77444
77459
  }
77445
77460
  classNamesMap.forEach((classNamesLayers, element) => {
77446
- var _classPrivateFieldGet4, _classPrivateFieldGet5;
77461
+ var _classPrivateFieldGet4;
77447
77462
  const classNames = Array.from(classNamesLayers).map(_ref => {
77448
77463
  let [className, occurrenceCount] = _ref;
77449
77464
  if (occurrenceCount === 1) {
@@ -77453,34 +77468,37 @@ class SelectionManager {
77453
77468
  length: occurrenceCount - 1
77454
77469
  }, (_, i) => `${className}-${i + 1}`)];
77455
77470
  }).flat();
77456
- classNames.forEach(className => (0, _classPrivateFieldGet8.default)(this, _appliedClasses).get((0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot)).add(className));
77471
+ classNames.forEach(className => (0, _classPrivateFieldGet7.default)(this, _appliedClasses).get((0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot)).add(className));
77457
77472
  (0, _element.addClass)(element, classNames);
77458
- if (element.nodeName === 'TD' && Array.isArray((_classPrivateFieldGet4 = (0, _classPrivateFieldGet8.default)(this, _selections).options) === null || _classPrivateFieldGet4 === void 0 ? void 0 : _classPrivateFieldGet4.cellAttributes)) {
77459
- (0, _element.setAttribute)(element, (0, _classPrivateFieldGet8.default)(this, _selections).options.cellAttributes);
77460
- } else if (element.nodeName === 'TH' && Array.isArray((_classPrivateFieldGet5 = (0, _classPrivateFieldGet8.default)(this, _selections).options) === null || _classPrivateFieldGet5 === void 0 ? void 0 : _classPrivateFieldGet5.headerAttributes)) {
77461
- (0, _element.setAttribute)(element, (0, _classPrivateFieldGet8.default)(this, _selections).options.headerAttributes);
77473
+ if (element.nodeName === 'TD' && Array.isArray((_classPrivateFieldGet4 = (0, _classPrivateFieldGet7.default)(this, _selections).options) === null || _classPrivateFieldGet4 === void 0 ? void 0 : _classPrivateFieldGet4.cellAttributes)) {
77474
+ (0, _element.setAttribute)(element, (0, _classPrivateFieldGet7.default)(this, _selections).options.cellAttributes);
77462
77475
  }
77463
77476
  });
77477
+
77478
+ // Set the attributes for the headers if they're focused.
77479
+ Array.from(headerAttributesMap.keys()).forEach(element => {
77480
+ (0, _element.setAttribute)(element, [...headerAttributesMap.get(element)]);
77481
+ });
77464
77482
  }
77465
77483
  }
77466
77484
  exports.SelectionManager = SelectionManager;
77467
77485
  function _resetCells2() {
77468
- const appliedOverlaysClasses = (0, _classPrivateFieldGet8.default)(this, _appliedClasses).get((0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot));
77469
- const classesToRemove = (0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot).wtSettings.getSetting('onBeforeRemoveCellClassNames');
77486
+ const appliedOverlaysClasses = (0, _classPrivateFieldGet7.default)(this, _appliedClasses).get((0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot));
77487
+ const classesToRemove = (0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot).wtSettings.getSetting('onBeforeRemoveCellClassNames');
77470
77488
  if (Array.isArray(classesToRemove)) {
77471
77489
  for (let i = 0; i < classesToRemove.length; i++) {
77472
77490
  appliedOverlaysClasses.add(classesToRemove[i]);
77473
77491
  }
77474
77492
  }
77475
77493
  appliedOverlaysClasses.forEach(className => {
77476
- var _classPrivateFieldGet6, _classPrivateFieldGet7;
77477
- const nodes = (0, _classPrivateFieldGet8.default)(this, _activeOverlaysWot).wtTable.TABLE.querySelectorAll(`.${className}`);
77494
+ var _classPrivateFieldGet5, _classPrivateFieldGet6;
77495
+ const nodes = (0, _classPrivateFieldGet7.default)(this, _activeOverlaysWot).wtTable.TABLE.querySelectorAll(`.${className}`);
77478
77496
  let cellAttributes = [];
77479
- if (Array.isArray((_classPrivateFieldGet6 = (0, _classPrivateFieldGet8.default)(this, _selections).options) === null || _classPrivateFieldGet6 === void 0 ? void 0 : _classPrivateFieldGet6.cellAttributes)) {
77480
- cellAttributes = (0, _classPrivateFieldGet8.default)(this, _selections).options.cellAttributes.map(el => el[0]);
77497
+ if (Array.isArray((_classPrivateFieldGet5 = (0, _classPrivateFieldGet7.default)(this, _selections).options) === null || _classPrivateFieldGet5 === void 0 ? void 0 : _classPrivateFieldGet5.cellAttributes)) {
77498
+ cellAttributes = (0, _classPrivateFieldGet7.default)(this, _selections).options.cellAttributes.map(el => el[0]);
77481
77499
  }
77482
- if (Array.isArray((_classPrivateFieldGet7 = (0, _classPrivateFieldGet8.default)(this, _selections).options) === null || _classPrivateFieldGet7 === void 0 ? void 0 : _classPrivateFieldGet7.headerAttributes)) {
77483
- cellAttributes = [...cellAttributes, ...(0, _classPrivateFieldGet8.default)(this, _selections).options.headerAttributes.map(el => el[0])];
77500
+ if (Array.isArray((_classPrivateFieldGet6 = (0, _classPrivateFieldGet7.default)(this, _selections).options) === null || _classPrivateFieldGet6 === void 0 ? void 0 : _classPrivateFieldGet6.headerAttributes)) {
77501
+ cellAttributes = [...cellAttributes, ...(0, _classPrivateFieldGet7.default)(this, _selections).options.headerAttributes.map(el => el[0])];
77484
77502
  }
77485
77503
  for (let i = 0, len = nodes.length; i < len; i++) {
77486
77504
  (0, _element.removeClass)(nodes[i], className);
@@ -83122,18 +83140,7 @@ const dictionary = {
83122
83140
  [C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Value',
83123
83141
  [C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Second value',
83124
83142
  [C.CHECKBOX_CHECKED]: 'Checked',
83125
- [C.CHECKBOX_UNCHECKED]: 'Unchecked',
83126
- [C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Press ENTER to expand column.',
83127
- [C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Press ENTER to collapse column.',
83128
- [C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Press ENTER to change sorting.',
83129
- [C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Multi-column sorting order:',
83130
- [C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Press CTRL/CMD+ENTER to open menu.',
83131
- [C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'The next column is hidden.',
83132
- [C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'The previous column is hidden.',
83133
- [C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Press ENTER to expand row.',
83134
- [C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Press ENTER to collapse row.',
83135
- [C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'The next row is hidden.',
83136
- [C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'The previous row is hidden.'
83143
+ [C.CHECKBOX_UNCHECKED]: 'Unchecked'
83137
83144
  };
83138
83145
  var _default = exports["default"] = dictionary;
83139
83146
 
@@ -83234,19 +83241,6 @@ const FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE = exports.FILTERS_BUTTONS_PLACEHO
83234
83241
  const CHECKBOX_RENDERER_NAMESPACE = exports.CHECKBOX_RENDERER_NAMESPACE = 'CheckboxRenderer:';
83235
83242
  const CHECKBOX_CHECKED = exports.CHECKBOX_CHECKED = `${CHECKBOX_RENDERER_NAMESPACE}checked`;
83236
83243
  const CHECKBOX_UNCHECKED = exports.CHECKBOX_UNCHECKED = `${CHECKBOX_RENDERER_NAMESPACE}unchecked`;
83237
- const COLUMN_HEADER_NAMESPACE = exports.COLUMN_HEADER_NAMESPACE = 'ColumnHeader:';
83238
- const COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN = exports.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN = `${COLUMN_HEADER_NAMESPACE}description.expandColumn`;
83239
- const COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN = exports.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN = `${COLUMN_HEADER_NAMESPACE}description.collapseColumn`;
83240
- const COLUMN_HEADER_DESCRIPTION_SORT_ROWS = exports.COLUMN_HEADER_DESCRIPTION_SORT_ROWS = `${COLUMN_HEADER_NAMESPACE}description.sortRows`;
83241
- const COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER = exports.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER = `${COLUMN_HEADER_NAMESPACE}label.multiColumnSortOrder`;
83242
- const COLUMN_HEADER_LABEL_OPEN_MENU = exports.COLUMN_HEADER_LABEL_OPEN_MENU = `${COLUMN_HEADER_NAMESPACE}label.openMenu`;
83243
- const COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN = exports.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN = `${COLUMN_HEADER_NAMESPACE}label.beforeHiddenColumn`;
83244
- const COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN = exports.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN = `${COLUMN_HEADER_NAMESPACE}label.afterHiddenColumn`;
83245
- const ROW_HEADER_NAMESPACE = exports.ROW_HEADER_NAMESPACE = 'RowHeader:';
83246
- const ROW_HEADER_DESCRIPTION_EXPAND_ROW = exports.ROW_HEADER_DESCRIPTION_EXPAND_ROW = `${ROW_HEADER_NAMESPACE}description.expandRow`;
83247
- const ROW_HEADER_DESCRIPTION_COLLAPSE_ROW = exports.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW = `${ROW_HEADER_NAMESPACE}description.collapseRow`;
83248
- const ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW = exports.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW = `${ROW_HEADER_NAMESPACE}label.beforeHiddenRow`;
83249
- const ROW_HEADER_LABEL_AFTER_HIDDEN_ROW = exports.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW = `${ROW_HEADER_NAMESPACE}label.afterHiddenRow`;
83250
83244
 
83251
83245
  /***/ }),
83252
83246
  /* 579 */
@@ -83379,7 +83373,6 @@ class Selection {
83379
83373
  this.tableProps = tableProps;
83380
83374
  this.highlight = new _highlight.default({
83381
83375
  headerClassName: settings.currentHeaderClassName,
83382
- headerAttributes: [(0, _a11y.A11Y_SELECTED)()],
83383
83376
  activeHeaderClassName: settings.activeHeaderClassName,
83384
83377
  rowClassName: settings.currentRowClassName,
83385
83378
  columnClassName: settings.currentColClassName,
@@ -84975,6 +84968,7 @@ exports.__esModule = true;
84975
84968
  exports.createHighlight = createHighlight;
84976
84969
  var _src = __webpack_require__(480);
84977
84970
  var _visualSelection = _interopRequireDefault(__webpack_require__(583));
84971
+ var _a11y = __webpack_require__(447);
84978
84972
  /**
84979
84973
  * Creates the new instance of Selection responsible for highlighting currently selected cell. This type of selection
84980
84974
  * can present on the table only one at the time.
@@ -84990,6 +84984,7 @@ function createHighlight(_ref) {
84990
84984
  } = _ref;
84991
84985
  return new _visualSelection.default({
84992
84986
  className: 'current',
84987
+ headerAttributes: [(0, _a11y.A11Y_SELECTED)()],
84993
84988
  border: {
84994
84989
  width: 2,
84995
84990
  color: '#4b89ff',
@@ -93090,7 +93085,9 @@ function replaceData(data, setDataMapFunction, callbackFunction, config) {
93090
93085
  hotInstance.render();
93091
93086
  }
93092
93087
  if (hotInstance.getSettings().ariaTags) {
93093
- (0, _element.setAttribute)(hotInstance.rootElement, [(0, _a11y.A11Y_ROWCOUNT)(hotInstance.countRows()), (0, _a11y.A11Y_COLCOUNT)(hotInstance.countCols())]);
93088
+ (0, _element.setAttribute)(hotInstance.rootElement, [(0, _a11y.A11Y_ROWCOUNT)(-1),
93089
+ // If run after initialization, add the number of row headers.
93090
+ (0, _a11y.A11Y_COLCOUNT)(hotInstance.countCols() + (hotInstance.view ? hotInstance.countRowHeaders() : 0))]);
93094
93091
  }
93095
93092
  }
93096
93093
 
@@ -97875,7 +97872,6 @@ var _element = __webpack_require__(304);
97875
97872
  var _event = __webpack_require__(459);
97876
97873
  var _object = __webpack_require__(450);
97877
97874
  var _editorManager = __webpack_require__(453);
97878
- var _a11y = __webpack_require__(447);
97879
97875
  const SHORTCUTS_GROUP = 'handsontableEditor';
97880
97876
  const EDITOR_TYPE = exports.EDITOR_TYPE = 'handsontable';
97881
97877
 
@@ -97911,9 +97907,6 @@ class HandsontableEditor extends _textEditor.TextEditor {
97911
97907
  }
97912
97908
  (0, _element.setCaretPosition)(this.TEXTAREA, 0, this.TEXTAREA.value.length);
97913
97909
  this.refreshDimensions();
97914
- if (this.hot.getSettings().ariaTags) {
97915
- (0, _element.setAttribute)(this.TD, [(0, _a11y.A11Y_EXPANDED)('true')]);
97916
- }
97917
97910
  }
97918
97911
 
97919
97912
  /**
@@ -97925,9 +97918,6 @@ class HandsontableEditor extends _textEditor.TextEditor {
97925
97918
  }
97926
97919
  this.removeHooksByKey('beforeKeyDown');
97927
97920
  super.close();
97928
- if (this.TD && this.hot.getSettings().ariaTags) {
97929
- (0, _element.setAttribute)(this.TD, [(0, _a11y.A11Y_EXPANDED)('false')]);
97930
- }
97931
97921
  }
97932
97922
 
97933
97923
  /**
@@ -98207,7 +98197,6 @@ var _pikaday = _interopRequireDefault(__webpack_require__(689));
98207
98197
  var _textEditor = __webpack_require__(668);
98208
98198
  var _eventManager = _interopRequireDefault(__webpack_require__(464));
98209
98199
  var _element = __webpack_require__(304);
98210
- var _a11y = __webpack_require__(447);
98211
98200
  var _object = __webpack_require__(450);
98212
98201
  var _unicode = __webpack_require__(458);
98213
98202
  __webpack_require__(690);
@@ -98330,9 +98319,6 @@ class DateEditor extends _textEditor.TextEditor {
98330
98319
  const editorContext = shortcutManager.getContext('editor');
98331
98320
  super.open();
98332
98321
  this.showDatepicker(event);
98333
- if (this.hot.getSettings().ariaTags) {
98334
- (0, _element.setAttribute)(this.TD, [(0, _a11y.A11Y_EXPANDED)('true')]);
98335
- }
98336
98322
  editorContext.addShortcut({
98337
98323
  keys: [['Enter']],
98338
98324
  callback: keyboardEvent => {
@@ -98358,9 +98344,6 @@ class DateEditor extends _textEditor.TextEditor {
98358
98344
  this.hot._registerTimeout(() => {
98359
98345
  this.hot._refreshBorders();
98360
98346
  });
98361
- if (this.TD && this.hot.getSettings().ariaTags) {
98362
- (0, _element.setAttribute)(this.TD, [(0, _a11y.A11Y_EXPANDED)('false')]);
98363
- }
98364
98347
  const shortcutManager = this.hot.getShortcutManager();
98365
98348
  const editorContext = shortcutManager.getContext('editor');
98366
98349
  editorContext.removeShortcutsByGroup(SHORTCUTS_GROUP_EDITOR);
@@ -99907,6 +99890,7 @@ exports.PasswordEditor = _passwordEditor.PasswordEditor;
99907
99890
  exports.__esModule = true;
99908
99891
  var _textEditor = __webpack_require__(668);
99909
99892
  var _element = __webpack_require__(304);
99893
+ var _a11y = __webpack_require__(447);
99910
99894
  const EDITOR_TYPE = exports.EDITOR_TYPE = 'password';
99911
99895
 
99912
99896
  /**
@@ -99926,6 +99910,9 @@ class PasswordEditor extends _textEditor.TextEditor {
99926
99910
  this.textareaStyle = this.TEXTAREA.style;
99927
99911
  this.textareaStyle.width = 0;
99928
99912
  this.textareaStyle.height = 0;
99913
+ if (this.hot.getSettings().ariaTags) {
99914
+ (0, _element.setAttribute)(this.TEXTAREA, [(0, _a11y.A11Y_HIDDEN)()]);
99915
+ }
99929
99916
  (0, _element.empty)(this.TEXTAREA_PARENT);
99930
99917
  this.TEXTAREA_PARENT.appendChild(this.TEXTAREA);
99931
99918
  }
@@ -100345,9 +100332,6 @@ function autocompleteRenderer(hotInstance, TD, row, col, prop, value, cellProper
100345
100332
 
100346
100333
  TD.insertBefore(ARROW, TD.firstChild);
100347
100334
  (0, _element.addClass)(TD, 'htAutocomplete');
100348
- if (isAriaEnabled) {
100349
- TD.setAttribute(...(0, _a11y.A11Y_HASPOPUP)('listbox'));
100350
- }
100351
100335
  if (!hotInstance.acArrowListener) {
100352
100336
  const eventManager = new _eventManager.default(hotInstance);
100353
100337
 
@@ -100731,7 +100715,6 @@ function createInput(rootDocument) {
100731
100715
  const input = rootDocument.createElement('input');
100732
100716
  input.className = 'htCheckboxRendererInput';
100733
100717
  input.type = 'checkbox';
100734
- input.setAttribute('autocomplete', 'off');
100735
100718
  input.setAttribute('tabindex', '-1');
100736
100719
  return input.cloneNode(false);
100737
100720
  }
@@ -101548,8 +101531,6 @@ exports.dateRenderer = _dateRenderer.dateRenderer;
101548
101531
  exports.__esModule = true;
101549
101532
  exports.dateRenderer = dateRenderer;
101550
101533
  var _autocompleteRenderer = __webpack_require__(702);
101551
- var _a11y = __webpack_require__(447);
101552
- var _element = __webpack_require__(304);
101553
101534
  const RENDERER_TYPE = exports.RENDERER_TYPE = 'date';
101554
101535
 
101555
101536
  /**
@@ -101566,9 +101547,6 @@ const RENDERER_TYPE = exports.RENDERER_TYPE = 'date';
101566
101547
  */
101567
101548
  function dateRenderer(hotInstance, TD, row, col, prop, value, cellProperties) {
101568
101549
  _autocompleteRenderer.autocompleteRenderer.apply(this, [hotInstance, TD, row, col, prop, value, cellProperties]);
101569
- if (hotInstance.getSettings().ariaTags) {
101570
- (0, _element.setAttribute)(TD, [(0, _a11y.A11Y_HASPOPUP)('dialog'), (0, _a11y.A11Y_EXPANDED)('false')]);
101571
- }
101572
101550
  }
101573
101551
  dateRenderer.RENDERER_TYPE = RENDERER_TYPE;
101574
101552
 
@@ -101656,8 +101634,6 @@ exports.handsontableRenderer = _handsontableRenderer.handsontableRenderer;
101656
101634
  exports.__esModule = true;
101657
101635
  exports.handsontableRenderer = handsontableRenderer;
101658
101636
  var _autocompleteRenderer = __webpack_require__(702);
101659
- var _a11y = __webpack_require__(447);
101660
- var _element = __webpack_require__(304);
101661
101637
  const RENDERER_TYPE = exports.RENDERER_TYPE = 'handsontable';
101662
101638
 
101663
101639
  /**
@@ -101674,9 +101650,6 @@ const RENDERER_TYPE = exports.RENDERER_TYPE = 'handsontable';
101674
101650
  */
101675
101651
  function handsontableRenderer(hotInstance, TD, row, col, prop, value, cellProperties) {
101676
101652
  _autocompleteRenderer.autocompleteRenderer.apply(this, [hotInstance, TD, row, col, prop, value, cellProperties]);
101677
- if (hotInstance.getSettings().ariaTags) {
101678
- (0, _element.setAttribute)(TD, [(0, _a11y.A11Y_HASPOPUP)('true'), (0, _a11y.A11Y_EXPANDED)('false')]);
101679
- }
101680
101653
  }
101681
101654
  handsontableRenderer.RENDERER_TYPE = RENDERER_TYPE;
101682
101655
 
@@ -101793,8 +101766,6 @@ exports.selectRenderer = _selectRenderer.selectRenderer;
101793
101766
  exports.__esModule = true;
101794
101767
  exports.selectRenderer = selectRenderer;
101795
101768
  var _textRenderer = __webpack_require__(675);
101796
- var _a11y = __webpack_require__(447);
101797
- var _element = __webpack_require__(304);
101798
101769
  const RENDERER_TYPE = exports.RENDERER_TYPE = 'select';
101799
101770
 
101800
101771
  /**
@@ -101809,9 +101780,6 @@ const RENDERER_TYPE = exports.RENDERER_TYPE = 'select';
101809
101780
  */
101810
101781
  function selectRenderer(hotInstance, TD, row, col, prop, value, cellProperties) {
101811
101782
  _textRenderer.textRenderer.apply(this, [hotInstance, TD, row, col, prop, value, cellProperties]);
101812
- if (hotInstance.getSettings().ariaTags) {
101813
- (0, _element.setAttribute)(TD, ...(0, _a11y.A11Y_HASPOPUP)('listbox'));
101814
- }
101815
101783
  }
101816
101784
  selectRenderer.RENDERER_TYPE = RENDERER_TYPE;
101817
101785
 
@@ -105243,7 +105211,6 @@ var _console = __webpack_require__(462);
105243
105211
  var _element = __webpack_require__(304);
105244
105212
  var _event = __webpack_require__(459);
105245
105213
  var _a11y = __webpack_require__(447);
105246
- var _constants = __webpack_require__(578);
105247
105214
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
105248
105215
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
105249
105216
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
@@ -105774,7 +105741,7 @@ function _onAfterGetColHeader2(column, TH, headerLevel) {
105774
105741
 
105775
105742
  // Add ARIA tags
105776
105743
  if (isAriaTagsEnabled) {
105777
- (0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(false), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN))]);
105744
+ (0, _element.setAttribute)(TH, ...(0, _a11y.A11Y_EXPANDED)(false));
105778
105745
  }
105779
105746
  } else {
105780
105747
  (0, _element.addClass)(collapsibleElement, 'expanded');
@@ -105782,7 +105749,7 @@ function _onAfterGetColHeader2(column, TH, headerLevel) {
105782
105749
 
105783
105750
  // Add ARIA tags
105784
105751
  if (isAriaTagsEnabled) {
105785
- (0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(true), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN))]);
105752
+ (0, _element.setAttribute)(TH, ...(0, _a11y.A11Y_EXPANDED)(true));
105786
105753
  }
105787
105754
  }
105788
105755
  if (isAriaTagsEnabled) {
@@ -105856,7 +105823,6 @@ var _domHelpers = __webpack_require__(774);
105856
105823
  var _rootComparator = __webpack_require__(775);
105857
105824
  var _sortService = __webpack_require__(776);
105858
105825
  var _a11y = __webpack_require__(447);
105859
- var _constants = __webpack_require__(578);
105860
105826
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
105861
105827
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
105862
105828
  function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
@@ -105865,7 +105831,6 @@ const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 50;
105865
105831
  const APPEND_COLUMN_CONFIG_STRATEGY = exports.APPEND_COLUMN_CONFIG_STRATEGY = 'append';
105866
105832
  const REPLACE_COLUMN_CONFIG_STRATEGY = exports.REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
105867
105833
  const SHORTCUTS_GROUP = PLUGIN_KEY;
105868
- const SORTING_INDICATOR_CLASS = 'columnSortingIndicator';
105869
105834
  (0, _sortService.registerRootComparator)(PLUGIN_KEY, _rootComparator.rootComparator);
105870
105835
  _pluginHooks.default.getSingleton().register('beforeColumnSort');
105871
105836
  _pluginHooks.default.getSingleton().register('afterColumnSort');
@@ -106508,28 +106473,6 @@ class ColumnSorting extends _base.BasePlugin {
106508
106473
  }
106509
106474
  }
106510
106475
 
106511
- /**
106512
- * Update sorting indicator.
106513
- *
106514
- * @private
106515
- * @param {number} column Visual column index.
106516
- * @param {HTMLElement} headerSpanElement Header span element.
106517
- */
106518
- updateSortingIndicator(column, headerSpanElement) {
106519
- const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
106520
- const ariaTags = this.hot.getSettings().ariaTags;
106521
- const showSortIndicator = pluginSettingsForColumn.indicator;
106522
- const isColumnSorted = this.columnStatesManager.isColumnSorted(column);
106523
- const indicatorElement = headerSpanElement.querySelector(`.${SORTING_INDICATOR_CLASS}`);
106524
- if (showSortIndicator && isColumnSorted && !indicatorElement) {
106525
- (0, _element.appendElement)(headerSpanElement, {
106526
- tagName: 'div',
106527
- className: SORTING_INDICATOR_CLASS,
106528
- attributes: ariaTags ? [(0, _a11y.A11Y_HIDDEN)()] : []
106529
- });
106530
- }
106531
- }
106532
-
106533
106476
  /**
106534
106477
  * Overwriting base plugin's `onUpdateSettings` method. Please keep in mind that `onAfterUpdateSettings` isn't called
106535
106478
  * for `updateSettings` in specific situations.
@@ -106558,7 +106501,7 @@ class ColumnSorting extends _base.BasePlugin {
106558
106501
  wasClickableHeaderClicked(event, column) {
106559
106502
  const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
106560
106503
  const headerActionEnabled = pluginSettingsForColumn.headerAction;
106561
- return headerActionEnabled && ((0, _element.hasClass)(event.target, _utils.HEADER_SPAN_CLASS) || (0, _element.hasClass)(event.target, SORTING_INDICATOR_CLASS));
106504
+ return headerActionEnabled && (0, _element.hasClass)(event.target, _utils.HEADER_SPAN_CLASS);
106562
106505
  }
106563
106506
  /**
106564
106507
  * Callback for the `onAfterOnCellMouseDown` hook.
@@ -106607,14 +106550,12 @@ function _onAfterGetColHeader2(column, TH) {
106607
106550
  return;
106608
106551
  }
106609
106552
  const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
106610
- const ariaTags = this.hot.getSettings().ariaTags;
106611
106553
  const showSortIndicator = pluginSettingsForColumn.indicator;
106612
106554
  const headerActionEnabled = pluginSettingsForColumn.headerAction;
106613
- const currentSortState = this.columnStatesManager.getSortOrderOfColumn(column);
106614
106555
  this.updateHeaderClasses(headerSpanElement, this.columnStatesManager, column, showSortIndicator, headerActionEnabled);
106615
- this.updateSortingIndicator(column, headerSpanElement);
106616
- if (ariaTags) {
106617
- (0, _element.setAttribute)(TH, [(0, _a11y.A11Y_SORT)(currentSortState ? `${currentSortState}ending` : 'none'), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_SORT_ROWS))]);
106556
+ if (this.hot.getSettings().ariaTags) {
106557
+ const currentSortState = this.columnStatesManager.getSortOrderOfColumn(column);
106558
+ (0, _element.setAttribute)(TH, ...(0, _a11y.A11Y_SORT)(currentSortState ? `${currentSortState}ending` : 'none'));
106618
106559
  }
106619
106560
  }
106620
106561
  function _onAfterLoadData2(initialLoad) {
@@ -113150,8 +113091,6 @@ exports.createMenuItemRenderer = createMenuItemRenderer;
113150
113091
  var _utils = __webpack_require__(822);
113151
113092
  var _element = __webpack_require__(304);
113152
113093
  var _a11y = __webpack_require__(447);
113153
- const SUBMENU_INDICATOR_CLASSNAME = 'submenuIndicator';
113154
-
113155
113094
  /**
113156
113095
  * Creates the menu renderer function.
113157
113096
  *
@@ -113184,16 +113123,6 @@ function createMenuItemRenderer(mainTableHot) {
113184
113123
  const isFocusable = !(0, _utils.isItemDisabled)(item, mainTableHot) && !(0, _utils.isItemSelectionDisabled)(item) && !(0, _utils.isItemSeparator)(item);
113185
113124
  (0, _element.setAttribute)(TD, [(0, _a11y.A11Y_MENU_ITEM)(), (0, _a11y.A11Y_LABEL)(itemValue), ...(isFocusable ? [(0, _a11y.A11Y_TABINDEX)(-1)] : []), ...((0, _utils.isItemDisabled)(item, mainTableHot) ? [(0, _a11y.A11Y_DISABLED)()] : []), ...((0, _utils.isItemSubMenu)(item) ? [(0, _a11y.A11Y_EXPANDED)(false)] : [])]);
113186
113125
  }
113187
- if ((0, _utils.isItemSubMenu)(item)) {
113188
- const submenuIndicatorElement = TD.querySelector('.submenuIndicator');
113189
- if (!submenuIndicatorElement) {
113190
- (0, _element.appendElement)(TD, {
113191
- tagName: 'div',
113192
- attributes: mainTableHot.getSettings().ariaTags ? [(0, _a11y.A11Y_HIDDEN)()] : [],
113193
- className: SUBMENU_INDICATOR_CLASSNAME
113194
- });
113195
- }
113196
- }
113197
113126
  TD.className = '';
113198
113127
  TD.appendChild(wrapper);
113199
113128
  if ((0, _utils.isItemSeparator)(item)) {
@@ -116124,7 +116053,6 @@ var _menu = __webpack_require__(816);
116124
116053
  var _pluginHooks = _interopRequireDefault(__webpack_require__(461));
116125
116054
  var _predefinedItems = __webpack_require__(791);
116126
116055
  __webpack_require__(851);
116127
- var _constants = __webpack_require__(578);
116128
116056
  var _a11y = __webpack_require__(447);
116129
116057
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
116130
116058
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
@@ -116598,7 +116526,7 @@ function _onAfterGetColHeader2(col, TH) {
116598
116526
  button.type = 'button';
116599
116527
  button.tabIndex = -1;
116600
116528
  if (this.hot.getSettings().ariaTags) {
116601
- (0, _element.setAttribute)(button, [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_OPEN_MENU))]);
116529
+ (0, _element.setAttribute)(button, [(0, _a11y.A11Y_HIDDEN)(), (0, _a11y.A11Y_LABEL)(' ')]);
116602
116530
  (0, _element.setAttribute)(TH, [(0, _a11y.A11Y_HASPOPUP)('menu')]);
116603
116531
  }
116604
116532
 
@@ -119840,8 +119768,11 @@ class InputUI extends _base.BaseUI {
119840
119768
  */
119841
119769
  build() {
119842
119770
  super.build();
119771
+ const icon = this.hot.rootDocument.createElement('div');
119843
119772
  (0, _classPrivateFieldSet2.default)(this, _input, this._element.firstChild);
119844
119773
  (0, _element.addClass)(this._element, 'htUIInput');
119774
+ (0, _element.addClass)(icon, 'htUIInputIcon');
119775
+ this._element.appendChild(icon);
119845
119776
  this.update();
119846
119777
  }
119847
119778
 
@@ -124682,8 +124613,6 @@ var _pluginHooks = _interopRequireDefault(__webpack_require__(461));
124682
124613
  var _hideColumn = _interopRequireDefault(__webpack_require__(916));
124683
124614
  var _showColumn = _interopRequireDefault(__webpack_require__(917));
124684
124615
  var _translations = __webpack_require__(554);
124685
- var _a11y = __webpack_require__(447);
124686
- var _constants = __webpack_require__(578);
124687
124616
  __webpack_require__(918);
124688
124617
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
124689
124618
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
@@ -124695,8 +124624,6 @@ _pluginHooks.default.getSingleton().register('beforeUnhideColumns');
124695
124624
  _pluginHooks.default.getSingleton().register('afterUnhideColumns');
124696
124625
  const PLUGIN_KEY = exports.PLUGIN_KEY = 'hiddenColumns';
124697
124626
  const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 310;
124698
- const BEFORE_INDICATOR_CLASSNAME = 'beforeHiddenColumnIndicator';
124699
- const AFTER_INDICATOR_CLASSNAME = 'afterHiddenColumnIndicator';
124700
124627
 
124701
124628
  /* eslint-disable jsdoc/require-description-complete-sentence */
124702
124629
 
@@ -124806,7 +124733,6 @@ const AFTER_INDICATOR_CLASSNAME = 'afterHiddenColumnIndicator';
124806
124733
  */
124807
124734
  var _settings = /*#__PURE__*/new WeakMap();
124808
124735
  var _hiddenColumnsMap = /*#__PURE__*/new WeakMap();
124809
- var _clearIndicatorElements = /*#__PURE__*/new WeakSet();
124810
124736
  var _onModifyColWidth = /*#__PURE__*/new WeakSet();
124811
124737
  var _onAfterGetCellMeta = /*#__PURE__*/new WeakSet();
124812
124738
  var _onModifyCopyableRange = /*#__PURE__*/new WeakSet();
@@ -124856,12 +124782,6 @@ class HiddenColumns extends _base.BasePlugin {
124856
124782
  * @returns {number}
124857
124783
  */
124858
124784
  _classPrivateMethodInitSpec(this, _onModifyColWidth);
124859
- /**
124860
- * Remove the indicator elements from the provided column header element.
124861
- *
124862
- * @param {HTMLElement} TH Column header element.
124863
- */
124864
- _classPrivateMethodInitSpec(this, _clearIndicatorElements);
124865
124785
  /**
124866
124786
  * Cached plugin settings.
124867
124787
  *
@@ -124951,15 +124871,8 @@ class HiddenColumns extends _base.BasePlugin {
124951
124871
  * Disables the plugin functionality for this Handsontable instance.
124952
124872
  */
124953
124873
  disablePlugin() {
124954
- const clearColHeader = (columnIndex, TH) => {
124955
- _classPrivateMethodGet(this, _clearIndicatorElements, _clearIndicatorElements2).call(this, TH);
124956
- };
124957
124874
  this.hot.columnIndexMapper.unregisterMap(this.pluginName);
124958
124875
  (0, _classPrivateFieldSet2.default)(this, _settings, {});
124959
- this.hot.addHook('afterGetColHeader', clearColHeader);
124960
- this.hot.addHookOnce('afterViewRender', () => {
124961
- this.hot.removeHook('afterGetColHeader', clearColHeader);
124962
- });
124963
124876
  super.disablePlugin();
124964
124877
  this.resetCellsMeta();
124965
124878
  }
@@ -125111,11 +125024,6 @@ class HiddenColumns extends _base.BasePlugin {
125111
125024
  }
125112
125025
  }
125113
125026
  exports.HiddenColumns = HiddenColumns;
125114
- function _clearIndicatorElements2(TH) {
125115
- Array.from(TH.querySelectorAll(`.${AFTER_INDICATOR_CLASSNAME}, .${BEFORE_INDICATOR_CLASSNAME}`)).forEach(element => {
125116
- element.remove();
125117
- });
125118
- }
125119
125027
  function _onModifyColWidth2(width, column) {
125120
125028
  // Hook is triggered internally only for the visible columns. Conditional will be handled for the API
125121
125029
  // calls of the `getColWidth` function on not visible indexes.
@@ -125187,35 +125095,14 @@ function _onModifyCopyableRange2(ranges) {
125187
125095
  return newRanges;
125188
125096
  }
125189
125097
  function _onAfterGetColHeader2(column, TH) {
125190
- const areAriaTagsEnabled = this.hot.getSettings().ariaTags;
125191
- const beforeHiddenColumnIndicatorElement = TH.querySelector('.beforeHiddenColumnIndicator');
125192
- const afterHiddenColumnIndicatorElement = TH.querySelector('.afterHiddenColumnIndicator');
125193
125098
  if (!(0, _classPrivateFieldGet2.default)(this, _settings).indicators || column < 0) {
125194
- beforeHiddenColumnIndicatorElement === null || beforeHiddenColumnIndicatorElement === void 0 || beforeHiddenColumnIndicatorElement.remove();
125195
- afterHiddenColumnIndicatorElement === null || afterHiddenColumnIndicatorElement === void 0 || afterHiddenColumnIndicatorElement.remove();
125196
125099
  return;
125197
125100
  }
125198
125101
  const classList = [];
125199
125102
  if (column >= 1 && this.isHidden(column - 1)) {
125200
- if (!afterHiddenColumnIndicatorElement) {
125201
- const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN))] : [];
125202
- (0, _element.appendElement)(TH, {
125203
- tagName: 'div',
125204
- attributes: attributesToAdd,
125205
- className: AFTER_INDICATOR_CLASSNAME
125206
- });
125207
- }
125208
125103
  classList.push('afterHiddenColumn');
125209
125104
  }
125210
125105
  if (column < this.hot.countCols() - 1 && this.isHidden(column + 1)) {
125211
- if (!beforeHiddenColumnIndicatorElement) {
125212
- const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN))] : [];
125213
- (0, _element.appendElement)(TH, {
125214
- tagName: 'div',
125215
- attributes: attributesToAdd,
125216
- className: BEFORE_INDICATOR_CLASSNAME
125217
- });
125218
- }
125219
125106
  classList.push('beforeHiddenColumn');
125220
125107
  }
125221
125108
  (0, _element.addClass)(TH, classList);
@@ -125442,8 +125329,6 @@ var _pluginHooks = _interopRequireDefault(__webpack_require__(461));
125442
125329
  var _hideRow = _interopRequireDefault(__webpack_require__(921));
125443
125330
  var _showRow = _interopRequireDefault(__webpack_require__(922));
125444
125331
  var _translations = __webpack_require__(554);
125445
- var _a11y = __webpack_require__(447);
125446
- var _constants = __webpack_require__(578);
125447
125332
  __webpack_require__(923);
125448
125333
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
125449
125334
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
@@ -125455,8 +125340,6 @@ _pluginHooks.default.getSingleton().register('beforeUnhideRows');
125455
125340
  _pluginHooks.default.getSingleton().register('afterUnhideRows');
125456
125341
  const PLUGIN_KEY = exports.PLUGIN_KEY = 'hiddenRows';
125457
125342
  const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 320;
125458
- const AFTER_INDICATOR_CLASSNAME = 'afterHiddenRowIndicator';
125459
- const BEFORE_INDICATOR_CLASSNAME = 'beforeHiddenRowIndicator';
125460
125343
 
125461
125344
  /* eslint-disable jsdoc/require-description-complete-sentence */
125462
125345
 
@@ -125566,7 +125449,6 @@ const BEFORE_INDICATOR_CLASSNAME = 'beforeHiddenRowIndicator';
125566
125449
  */
125567
125450
  var _settings = /*#__PURE__*/new WeakMap();
125568
125451
  var _hiddenRowsMap = /*#__PURE__*/new WeakMap();
125569
- var _clearIndicatorElements = /*#__PURE__*/new WeakSet();
125570
125452
  var _onModifyRowHeight = /*#__PURE__*/new WeakSet();
125571
125453
  var _onAfterGetCellMeta = /*#__PURE__*/new WeakSet();
125572
125454
  var _onModifyCopyableRange = /*#__PURE__*/new WeakSet();
@@ -125616,12 +125498,6 @@ class HiddenRows extends _base.BasePlugin {
125616
125498
  * @returns {number}
125617
125499
  */
125618
125500
  _classPrivateMethodInitSpec(this, _onModifyRowHeight);
125619
- /**
125620
- * Remove the indicator elements from the provided row header element.
125621
- *
125622
- * @param {HTMLElement} TH Column header element.
125623
- */
125624
- _classPrivateMethodInitSpec(this, _clearIndicatorElements);
125625
125501
  /**
125626
125502
  * Cached settings from Handsontable settings.
125627
125503
  *
@@ -125711,15 +125587,8 @@ class HiddenRows extends _base.BasePlugin {
125711
125587
  * Disables the plugin functionality for this Handsontable instance.
125712
125588
  */
125713
125589
  disablePlugin() {
125714
- const clearRowHeader = (columnIndex, TH) => {
125715
- _classPrivateMethodGet(this, _clearIndicatorElements, _clearIndicatorElements2).call(this, TH);
125716
- };
125717
125590
  this.hot.rowIndexMapper.unregisterMap(this.pluginName);
125718
125591
  (0, _classPrivateFieldSet2.default)(this, _settings, {});
125719
- this.hot.addHook('afterGetRowHeader', clearRowHeader);
125720
- this.hot.addHookOnce('afterViewRender', () => {
125721
- this.hot.removeHook('afterGetRowHeader', clearRowHeader);
125722
- });
125723
125592
  super.disablePlugin();
125724
125593
  this.resetCellsMeta();
125725
125594
  }
@@ -125868,11 +125737,6 @@ class HiddenRows extends _base.BasePlugin {
125868
125737
  }
125869
125738
  }
125870
125739
  exports.HiddenRows = HiddenRows;
125871
- function _clearIndicatorElements2(TH) {
125872
- Array.from(TH.querySelectorAll(`.${AFTER_INDICATOR_CLASSNAME}, .${BEFORE_INDICATOR_CLASSNAME}`)).forEach(element => {
125873
- element.remove();
125874
- });
125875
- }
125876
125740
  function _onModifyRowHeight2(height, row) {
125877
125741
  // Hook is triggered internally only for the visible rows. Conditional will be handled for the API
125878
125742
  // calls of the `getRowHeight` function on not visible indexes.
@@ -125939,35 +125803,14 @@ function _onModifyCopyableRange2(ranges) {
125939
125803
  return newRanges;
125940
125804
  }
125941
125805
  function _onAfterGetRowHeader2(row, TH) {
125942
- const areAriaTagsEnabled = this.hot.getSettings().ariaTags;
125943
- const beforeHiddenRowIndicatorElement = TH.querySelector('.beforeHiddenRowIndicator');
125944
- const afterHiddenRowIndicatorElement = TH.querySelector('.afterHiddenRowIndicator');
125945
125806
  if (!(0, _classPrivateFieldGet2.default)(this, _settings).indicators || row < 0) {
125946
- beforeHiddenRowIndicatorElement === null || beforeHiddenRowIndicatorElement === void 0 || beforeHiddenRowIndicatorElement.remove();
125947
- afterHiddenRowIndicatorElement === null || afterHiddenRowIndicatorElement === void 0 || afterHiddenRowIndicatorElement.remove();
125948
125807
  return;
125949
125808
  }
125950
125809
  const classList = [];
125951
125810
  if (row >= 1 && this.isHidden(row - 1)) {
125952
- if (!afterHiddenRowIndicatorElement) {
125953
- const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW))] : [];
125954
- (0, _element.appendElement)(TH, {
125955
- tagName: 'div',
125956
- attributes: attributesToAdd,
125957
- className: AFTER_INDICATOR_CLASSNAME
125958
- });
125959
- }
125960
125811
  classList.push('afterHiddenRow');
125961
125812
  }
125962
125813
  if (row < this.hot.countRows() - 1 && this.isHidden(row + 1)) {
125963
- if (!beforeHiddenRowIndicatorElement) {
125964
- const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW))] : [];
125965
- (0, _element.appendElement)(TH, {
125966
- tagName: 'div',
125967
- attributes: attributesToAdd,
125968
- className: BEFORE_INDICATOR_CLASSNAME
125969
- });
125970
- }
125971
125814
  classList.push('beforeHiddenRow');
125972
125815
  }
125973
125816
  (0, _element.addClass)(TH, classList);
@@ -132453,8 +132296,6 @@ var _element = __webpack_require__(304);
132453
132296
  var _rootComparator = __webpack_require__(956);
132454
132297
  var _utils2 = __webpack_require__(957);
132455
132298
  var _domHelpers = __webpack_require__(958);
132456
- var _a11y = __webpack_require__(447);
132457
- var _constants = __webpack_require__(578);
132458
132299
  __webpack_require__(959);
132459
132300
  const PLUGIN_KEY = exports.PLUGIN_KEY = 'multiColumnSorting';
132460
132301
  const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 170;
@@ -132714,25 +132555,6 @@ class MultiColumnSorting extends _columnSorting.ColumnSorting {
132714
132555
  }
132715
132556
  }
132716
132557
 
132717
- /**
132718
- * Update sorting indicator.
132719
- *
132720
- * @private
132721
- * @param {number} column Visual column index.
132722
- * @param {HTMLElement} headerSpanElement Header span element.
132723
- */
132724
- updateSortingIndicator(column, headerSpanElement) {
132725
- super.updateSortingIndicator(column, headerSpanElement);
132726
- const indicatorElement = headerSpanElement.querySelector('.columnSortingIndicator');
132727
- if (!indicatorElement || !this.hot.getSettings().ariaTags || !this.columnStatesManager.isColumnSorted(column) || this.columnStatesManager.getNumberOfSortedColumns() <= 1) {
132728
- return;
132729
- }
132730
- const multiColumnSortingOrder = this.columnStatesManager.getIndexOfColumnInSortQueue(column) + 1;
132731
- const a11yLabelAttribute = (0, _a11y.A11Y_LABEL)(`${this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER)} ${multiColumnSortingOrder}.`);
132732
- (0, _element.removeAttribute)(indicatorElement, (0, _a11y.A11Y_HIDDEN)()[0]);
132733
- (0, _element.setAttribute)(indicatorElement, ...a11yLabelAttribute);
132734
- }
132735
-
132736
132558
  /**
132737
132559
  * Overwriting base plugin's `onUpdateSettings` method. Please keep in mind that `onAfterUpdateSettings` isn't called
132738
132560
  * for `updateSettings` in specific situations.
@@ -136706,8 +136528,7 @@ class NestedRows extends _base.BasePlugin {
136706
136528
  /**
136707
136529
  * Updates the plugin's state.
136708
136530
  *
136709
- * This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the
136710
- * following configuration options:
136531
+ * This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
136711
136532
  * - [`nestedRows`](@/api/options.md#nestedrows)
136712
136533
  */
136713
136534
  updatePlugin() {
@@ -138159,7 +137980,6 @@ var _number = __webpack_require__(474);
138159
137980
  var _element = __webpack_require__(304);
138160
137981
  var _base = _interopRequireDefault(__webpack_require__(983));
138161
137982
  var _a11y = __webpack_require__(447);
138162
- var _constants = __webpack_require__(578);
138163
137983
  /**
138164
137984
  * Class responsible for the UI in the Nested Rows' row headers.
138165
137985
  *
@@ -138177,6 +137997,7 @@ class HeadersUI extends _base.default {
138177
137997
  return {
138178
137998
  indicatorContainer: 'ht_nestingLevels',
138179
137999
  parent: 'ht_nestingParent',
138000
+ indicator: 'ht_nestingLevel',
138180
138001
  emptyIndicator: 'ht_nestingLevel_empty',
138181
138002
  button: 'ht_nestingButton',
138182
138003
  expandButton: 'ht_nestingExpand',
@@ -138254,12 +138075,12 @@ class HeadersUI extends _base.default {
138254
138075
  if (this.collapsingUI.areChildrenCollapsed(rowIndex)) {
138255
138076
  (0, _element.addClass)(buttonsContainer, `${HeadersUI.CSS_CLASSES.button} ${HeadersUI.CSS_CLASSES.expandButton}`);
138256
138077
  if (ariaEnabled) {
138257
- (0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(false), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.ROW_HEADER_DESCRIPTION_EXPAND_ROW))]);
138078
+ (0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(false)]);
138258
138079
  }
138259
138080
  } else {
138260
138081
  (0, _element.addClass)(buttonsContainer, `${HeadersUI.CSS_CLASSES.button} ${HeadersUI.CSS_CLASSES.collapseButton}`);
138261
138082
  if (ariaEnabled) {
138262
- (0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(true), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW))]);
138083
+ (0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(true)]);
138263
138084
  }
138264
138085
  }
138265
138086
  innerDiv.appendChild(buttonsContainer);