handsontable 0.0.0-next-e54c3d6-20231026 → 0.0.0-next-0c0e2e5-20231027
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of handsontable might be problematic. Click here for more details.
- package/3rdparty/walkontable/src/cell/coords.js +2 -1
- package/3rdparty/walkontable/src/cell/coords.mjs +2 -1
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +3 -0
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +4 -1
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +3 -0
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +4 -1
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.js +1 -1
- package/core.mjs +1 -1
- package/dist/handsontable.css +45 -63
- package/dist/handsontable.full.css +45 -63
- package/dist/handsontable.full.js +255 -25
- package/dist/handsontable.full.min.css +5 -5
- package/dist/handsontable.full.min.js +105 -105
- package/dist/handsontable.js +255 -25
- package/dist/handsontable.min.css +5 -5
- package/dist/handsontable.min.js +19 -19
- package/dist/languages/all.js +24 -2
- package/dist/languages/all.min.js +1 -1
- package/dist/languages/en-US.js +12 -1
- package/dist/languages/en-US.min.js +1 -1
- package/dist/languages/pl-PL.js +12 -1
- package/dist/languages/pl-PL.min.js +1 -1
- package/helpers/a11y.js +2 -0
- package/helpers/a11y.mjs +1 -0
- package/helpers/dom/element.js +29 -0
- package/helpers/dom/element.mjs +28 -0
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/i18n/constants.js +27 -1
- package/i18n/constants.mjs +14 -1
- package/i18n/languages/en-US.js +12 -1
- package/i18n/languages/en-US.mjs +12 -1
- package/i18n/languages/pl-PL.js +12 -1
- package/i18n/languages/pl-PL.mjs +12 -1
- package/languages/all.js +24 -2
- package/languages/en-US.js +12 -1
- package/languages/en-US.mjs +12 -1
- package/languages/index.js +24 -2
- package/languages/pl-PL.js +12 -1
- package/languages/pl-PL.mjs +12 -1
- package/package.json +1 -1
- package/plugins/collapsibleColumns/collapsibleColumns.js +3 -2
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +4 -3
- package/plugins/columnSorting/columnSorting.js +29 -3
- package/plugins/columnSorting/columnSorting.mjs +31 -5
- package/plugins/contextMenu/menu/menuItemRenderer.js +12 -0
- package/plugins/contextMenu/menu/menuItemRenderer.mjs +14 -2
- package/plugins/dropdownMenu/dropdownMenu.js +2 -1
- package/plugins/dropdownMenu/dropdownMenu.mjs +3 -2
- package/plugins/filters/ui/input.js +0 -3
- package/plugins/filters/ui/input.mjs +0 -3
- package/plugins/filters/ui/select.js +6 -0
- package/plugins/filters/ui/select.mjs +6 -0
- package/plugins/hiddenColumns/hiddenColumns.js +48 -3
- package/plugins/hiddenColumns/hiddenColumns.mjs +47 -2
- package/plugins/hiddenRows/hiddenRows.js +48 -3
- package/plugins/hiddenRows/hiddenRows.mjs +47 -2
- package/plugins/multiColumnSorting/multiColumnSorting.js +21 -0
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +22 -1
- package/plugins/nestedRows/nestedRows.js +2 -1
- package/plugins/nestedRows/nestedRows.mjs +2 -1
- package/plugins/nestedRows/ui/headers.js +3 -3
- package/plugins/nestedRows/ui/headers.mjs +4 -4
@@ -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: 0.0.0-next-
|
29
|
-
* Release date: 31/08/2023 (built at
|
28
|
+
* Version: 0.0.0-next-0c0e2e5-20231027
|
29
|
+
* Release date: 31/08/2023 (built at 27/10/2023 09:24:26)
|
30
30
|
*/
|
31
31
|
(function webpackUniversalModuleDefinition(root, factory) {
|
32
32
|
if(typeof exports === 'object' && typeof module === 'object')
|
@@ -42664,8 +42664,8 @@ Handsontable.hooks = _pluginHooks.default.getSingleton();
|
|
42664
42664
|
Handsontable.CellCoords = _src.CellCoords;
|
42665
42665
|
Handsontable.CellRange = _src.CellRange;
|
42666
42666
|
Handsontable.packageName = 'handsontable';
|
42667
|
-
Handsontable.buildDate = "
|
42668
|
-
Handsontable.version = "0.0.0-next-
|
42667
|
+
Handsontable.buildDate = "27/10/2023 09:24:26";
|
42668
|
+
Handsontable.version = "0.0.0-next-0c0e2e5-20231027";
|
42669
42669
|
Handsontable.languages = {
|
42670
42670
|
dictionaryKeys: _registry.dictionaryKeys,
|
42671
42671
|
getLanguageDictionary: _registry.getLanguageDictionary,
|
@@ -47127,7 +47127,7 @@ function Core(rootElement, userSettings) {
|
|
47127
47127
|
* @function getTranslatedPhrase
|
47128
47128
|
* @since 0.35.0
|
47129
47129
|
* @param {string} dictionaryKey Constant which is dictionary key.
|
47130
|
-
* @param {*} extraArguments Arguments which will be handled by formatters.
|
47130
|
+
* @param {*} [extraArguments] Arguments which will be handled by formatters.
|
47131
47131
|
* @returns {string}
|
47132
47132
|
*/
|
47133
47133
|
this.getTranslatedPhrase = function (dictionaryKey, extraArguments) {
|
@@ -49653,6 +49653,7 @@ module.exports = typeof Bun == 'function' && Bun && typeof Bun.version == 'strin
|
|
49653
49653
|
exports.__esModule = true;
|
49654
49654
|
exports.addClass = addClass;
|
49655
49655
|
exports.addEvent = addEvent;
|
49656
|
+
exports.appendElement = appendElement;
|
49656
49657
|
exports.clearTextSelection = clearTextSelection;
|
49657
49658
|
exports.closest = closest;
|
49658
49659
|
exports.closestDown = closestDown;
|
@@ -50788,6 +50789,34 @@ function runWithSelectedContendEditableElement(element, callback) {
|
|
50788
50789
|
removeContentEditableFromElementAndDeselect(element, invisibleSelection);
|
50789
50790
|
}
|
50790
50791
|
|
50792
|
+
/**
|
50793
|
+
* Creates a new DOM element and appends it to the parent element with the provided class name(s) and attributes.
|
50794
|
+
*
|
50795
|
+
* @param {HTMLElement} parentElement The parent element.
|
50796
|
+
* @param {object} properties The properties object.
|
50797
|
+
* @param {string} properties.tagName The type of the new element.
|
50798
|
+
* @param {string|string[]} properties.className Class name as string or array of strings.
|
50799
|
+
* @param {Array[]} properties.attributes An array containing the attributes to be added. Each element of the array
|
50800
|
+
* should be an array in a form of `[attributeName, attributeValue]`.
|
50801
|
+
* @returns {HTMLElement} The created div element.
|
50802
|
+
*/
|
50803
|
+
function appendElement(parentElement, _ref) {
|
50804
|
+
let {
|
50805
|
+
tagName,
|
50806
|
+
className,
|
50807
|
+
attributes
|
50808
|
+
} = _ref;
|
50809
|
+
const element = parentElement.ownerDocument.createElement(tagName);
|
50810
|
+
if (className) {
|
50811
|
+
addClass(element, className);
|
50812
|
+
}
|
50813
|
+
if (attributes && attributes.length) {
|
50814
|
+
setAttribute(element, attributes);
|
50815
|
+
}
|
50816
|
+
parentElement.appendChild(element);
|
50817
|
+
return element;
|
50818
|
+
}
|
50819
|
+
|
50791
50820
|
/***/ }),
|
50792
50821
|
/* 303 */
|
50793
50822
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
@@ -52766,7 +52795,7 @@ const domMessages = {
|
|
52766
52795
|
function _injectProductInfo(key, element) {
|
52767
52796
|
const hasValidType = !isEmpty(key);
|
52768
52797
|
const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
|
52769
|
-
const hotVersion = "0.0.0-next-
|
52798
|
+
const hotVersion = "0.0.0-next-0c0e2e5-20231027";
|
52770
52799
|
let keyValidityDate;
|
52771
52800
|
let consoleMessageState = 'invalid';
|
52772
52801
|
let domMessageState = 'invalid';
|
@@ -60042,6 +60071,8 @@ const A11Y_TEXT = () => ['type', 'text'];
|
|
60042
60071
|
exports.A11Y_TEXT = A11Y_TEXT;
|
60043
60072
|
const A11Y_LABEL = val => ['aria-label', val];
|
60044
60073
|
exports.A11Y_LABEL = A11Y_LABEL;
|
60074
|
+
const A11Y_DESCRIPTION = val => ['aria-description', val];
|
60075
|
+
exports.A11Y_DESCRIPTION = A11Y_DESCRIPTION;
|
60045
60076
|
const A11Y_HIDDEN = () => ['aria-hidden', 'true'];
|
60046
60077
|
exports.A11Y_HIDDEN = A11Y_HIDDEN;
|
60047
60078
|
const A11Y_DISABLED = () => ['aria-disabled', 'true'];
|
@@ -69423,7 +69454,8 @@ class CellCoords {
|
|
69423
69454
|
* Assigns the coordinates from another `CellCoords` instance (or compatible literal object)
|
69424
69455
|
* to your `CellCoords` instance.
|
69425
69456
|
*
|
69426
|
-
* @param {CellCoords | { row
|
69457
|
+
* @param {CellCoords | { row: number | undefined, col: number | undefined }} coords The CellCoords
|
69458
|
+
* instance or compatible literal object.
|
69427
69459
|
* @returns {CellCoords}
|
69428
69460
|
*/
|
69429
69461
|
assign(coords) {
|
@@ -73294,6 +73326,9 @@ class RowHeadersRenderer extends _base.default {
|
|
73294
73326
|
const TH = orderView.getCurrentNode();
|
73295
73327
|
TH.className = '';
|
73296
73328
|
TH.removeAttribute('style');
|
73329
|
+
|
73330
|
+
// Remove all accessibility-related attributes for the header to start fresh.
|
73331
|
+
(0, _element.removeAttribute)(TH, [new RegExp('aria-(.*)'), new RegExp('role')]);
|
73297
73332
|
if (this.table.isAriaEnabled()) {
|
73298
73333
|
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_ROWHEADER)(), (0, _a11y.A11Y_SCOPE_ROW)(), (0, _a11y.A11Y_COLINDEX)(visibleColumnIndex + 1), (0, _a11y.A11Y_TABINDEX)(-1)]);
|
73299
73334
|
}
|
@@ -74011,6 +74046,9 @@ class ColumnHeadersRenderer extends _base.default {
|
|
74011
74046
|
const TH = TR.childNodes[renderedColumnIndex + rowHeadersCount];
|
74012
74047
|
TH.className = '';
|
74013
74048
|
TH.removeAttribute('style');
|
74049
|
+
|
74050
|
+
// Remove all accessibility-related attributes for the header to start fresh.
|
74051
|
+
(0, _element.removeAttribute)(TH, [new RegExp('aria-(.*)'), new RegExp('role')]);
|
74014
74052
|
if (this.table.isAriaEnabled()) {
|
74015
74053
|
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_COLINDEX)(renderedColumnIndex + 1 + this.table.rowHeadersCount), (0, _a11y.A11Y_TABINDEX)(-1), ...(renderedColumnIndex < 0 ? [(0, _a11y.A11Y_PRESENTATION)()] : [(0, _a11y.A11Y_COLUMNHEADER)(), (0, _a11y.A11Y_SCOPE_COL)()])]);
|
74016
74054
|
}
|
@@ -83258,7 +83296,18 @@ const dictionary = {
|
|
83258
83296
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Value',
|
83259
83297
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Second value',
|
83260
83298
|
[C.CHECKBOX_CHECKED]: 'Checked',
|
83261
|
-
[C.CHECKBOX_UNCHECKED]: 'Unchecked'
|
83299
|
+
[C.CHECKBOX_UNCHECKED]: 'Unchecked',
|
83300
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Press ENTER to expand column.',
|
83301
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Press ENTER to collapse column.',
|
83302
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Press ENTER to change sorting.',
|
83303
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Multi-column sorting order:',
|
83304
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Press CTRL/CMD+ENTER to open menu.',
|
83305
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'The next column is hidden.',
|
83306
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'The previous column is hidden.',
|
83307
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Press ENTER to expand row.',
|
83308
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Press ENTER to collapse row.',
|
83309
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'The next row is hidden.',
|
83310
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'The previous row is hidden.'
|
83262
83311
|
};
|
83263
83312
|
var _default = dictionary;
|
83264
83313
|
exports["default"] = _default;
|
@@ -83442,6 +83491,32 @@ const CHECKBOX_CHECKED = `${CHECKBOX_RENDERER_NAMESPACE}checked`;
|
|
83442
83491
|
exports.CHECKBOX_CHECKED = CHECKBOX_CHECKED;
|
83443
83492
|
const CHECKBOX_UNCHECKED = `${CHECKBOX_RENDERER_NAMESPACE}unchecked`;
|
83444
83493
|
exports.CHECKBOX_UNCHECKED = CHECKBOX_UNCHECKED;
|
83494
|
+
const COLUMN_HEADER_NAMESPACE = 'ColumnHeader:';
|
83495
|
+
exports.COLUMN_HEADER_NAMESPACE = COLUMN_HEADER_NAMESPACE;
|
83496
|
+
const COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN = `${COLUMN_HEADER_NAMESPACE}description.expandColumn`;
|
83497
|
+
exports.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN = COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN;
|
83498
|
+
const COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN = `${COLUMN_HEADER_NAMESPACE}description.collapseColumn`;
|
83499
|
+
exports.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN = COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN;
|
83500
|
+
const COLUMN_HEADER_DESCRIPTION_SORT_ROWS = `${COLUMN_HEADER_NAMESPACE}description.sortRows`;
|
83501
|
+
exports.COLUMN_HEADER_DESCRIPTION_SORT_ROWS = COLUMN_HEADER_DESCRIPTION_SORT_ROWS;
|
83502
|
+
const COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER = `${COLUMN_HEADER_NAMESPACE}label.multiColumnSortOrder`;
|
83503
|
+
exports.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER = COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER;
|
83504
|
+
const COLUMN_HEADER_LABEL_OPEN_MENU = `${COLUMN_HEADER_NAMESPACE}label.openMenu`;
|
83505
|
+
exports.COLUMN_HEADER_LABEL_OPEN_MENU = COLUMN_HEADER_LABEL_OPEN_MENU;
|
83506
|
+
const COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN = `${COLUMN_HEADER_NAMESPACE}label.beforeHiddenColumn`;
|
83507
|
+
exports.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN = COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN;
|
83508
|
+
const COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN = `${COLUMN_HEADER_NAMESPACE}label.afterHiddenColumn`;
|
83509
|
+
exports.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN = COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN;
|
83510
|
+
const ROW_HEADER_NAMESPACE = 'RowHeader:';
|
83511
|
+
exports.ROW_HEADER_NAMESPACE = ROW_HEADER_NAMESPACE;
|
83512
|
+
const ROW_HEADER_DESCRIPTION_EXPAND_ROW = `${ROW_HEADER_NAMESPACE}description.expandRow`;
|
83513
|
+
exports.ROW_HEADER_DESCRIPTION_EXPAND_ROW = ROW_HEADER_DESCRIPTION_EXPAND_ROW;
|
83514
|
+
const ROW_HEADER_DESCRIPTION_COLLAPSE_ROW = `${ROW_HEADER_NAMESPACE}description.collapseRow`;
|
83515
|
+
exports.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW = ROW_HEADER_DESCRIPTION_COLLAPSE_ROW;
|
83516
|
+
const ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW = `${ROW_HEADER_NAMESPACE}label.beforeHiddenRow`;
|
83517
|
+
exports.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW = ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW;
|
83518
|
+
const ROW_HEADER_LABEL_AFTER_HIDDEN_ROW = `${ROW_HEADER_NAMESPACE}label.afterHiddenRow`;
|
83519
|
+
exports.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW = ROW_HEADER_LABEL_AFTER_HIDDEN_ROW;
|
83445
83520
|
|
83446
83521
|
/***/ }),
|
83447
83522
|
/* 582 */
|
@@ -105471,6 +105546,7 @@ var _element = __webpack_require__(302);
|
|
105471
105546
|
var _eventManager = _interopRequireDefault(__webpack_require__(458));
|
105472
105547
|
var _event = __webpack_require__(453);
|
105473
105548
|
var _a11y = __webpack_require__(445);
|
105549
|
+
var _constants = __webpack_require__(581);
|
105474
105550
|
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
105475
105551
|
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
105476
105552
|
const PLUGIN_KEY = 'collapsibleColumns';
|
@@ -105971,7 +106047,7 @@ class CollapsibleColumns extends _base.BasePlugin {
|
|
105971
106047
|
|
105972
106048
|
// Add ARIA tags
|
105973
106049
|
if (isAriaTagsEnabled) {
|
105974
|
-
(0, _element.setAttribute)(TH,
|
106050
|
+
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(false), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN))]);
|
105975
106051
|
}
|
105976
106052
|
} else {
|
105977
106053
|
(0, _element.addClass)(collapsibleElement, 'expanded');
|
@@ -105979,7 +106055,7 @@ class CollapsibleColumns extends _base.BasePlugin {
|
|
105979
106055
|
|
105980
106056
|
// Add ARIA tags
|
105981
106057
|
if (isAriaTagsEnabled) {
|
105982
|
-
(0, _element.setAttribute)(TH,
|
106058
|
+
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(true), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN))]);
|
105983
106059
|
}
|
105984
106060
|
}
|
105985
106061
|
if (isAriaTagsEnabled) {
|
@@ -106084,6 +106160,7 @@ var _domHelpers = __webpack_require__(778);
|
|
106084
106160
|
var _rootComparator = __webpack_require__(779);
|
106085
106161
|
var _sortService = __webpack_require__(780);
|
106086
106162
|
var _a11y = __webpack_require__(445);
|
106163
|
+
var _constants = __webpack_require__(581);
|
106087
106164
|
const PLUGIN_KEY = 'columnSorting';
|
106088
106165
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
106089
106166
|
const PLUGIN_PRIORITY = 50;
|
@@ -106093,6 +106170,7 @@ exports.APPEND_COLUMN_CONFIG_STRATEGY = APPEND_COLUMN_CONFIG_STRATEGY;
|
|
106093
106170
|
const REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
|
106094
106171
|
exports.REPLACE_COLUMN_CONFIG_STRATEGY = REPLACE_COLUMN_CONFIG_STRATEGY;
|
106095
106172
|
const SHORTCUTS_GROUP = PLUGIN_KEY;
|
106173
|
+
const SORTING_INDICATOR_CLASS = 'columnSortingIndicator';
|
106096
106174
|
(0, _sortService.registerRootComparator)(PLUGIN_KEY, _rootComparator.rootComparator);
|
106097
106175
|
_pluginHooks.default.getSingleton().register('beforeColumnSort');
|
106098
106176
|
_pluginHooks.default.getSingleton().register('afterColumnSort');
|
@@ -106711,12 +106789,14 @@ class ColumnSorting extends _base.BasePlugin {
|
|
106711
106789
|
return;
|
106712
106790
|
}
|
106713
106791
|
const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
|
106792
|
+
const ariaTags = this.hot.getSettings().ariaTags;
|
106714
106793
|
const showSortIndicator = pluginSettingsForColumn.indicator;
|
106715
106794
|
const headerActionEnabled = pluginSettingsForColumn.headerAction;
|
106795
|
+
const currentSortState = this.columnStatesManager.getSortOrderOfColumn(column);
|
106716
106796
|
this.updateHeaderClasses(headerSpanElement, this.columnStatesManager, column, showSortIndicator, headerActionEnabled);
|
106717
|
-
|
106718
|
-
|
106719
|
-
(0, _element.setAttribute)(TH,
|
106797
|
+
this.updateSortingIndicator(column, headerSpanElement);
|
106798
|
+
if (ariaTags) {
|
106799
|
+
(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))]);
|
106720
106800
|
}
|
106721
106801
|
}
|
106722
106802
|
|
@@ -106737,6 +106817,28 @@ class ColumnSorting extends _base.BasePlugin {
|
|
106737
106817
|
}
|
106738
106818
|
}
|
106739
106819
|
|
106820
|
+
/**
|
106821
|
+
* Update sorting indicator.
|
106822
|
+
*
|
106823
|
+
* @private
|
106824
|
+
* @param {number} column Visual column index.
|
106825
|
+
* @param {HTMLElement} headerSpanElement Header span element.
|
106826
|
+
*/
|
106827
|
+
updateSortingIndicator(column, headerSpanElement) {
|
106828
|
+
const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
|
106829
|
+
const ariaTags = this.hot.getSettings().ariaTags;
|
106830
|
+
const showSortIndicator = pluginSettingsForColumn.indicator;
|
106831
|
+
const isColumnSorted = this.columnStatesManager.isColumnSorted(column);
|
106832
|
+
const indicatorElement = headerSpanElement.querySelector(`.${SORTING_INDICATOR_CLASS}`);
|
106833
|
+
if (showSortIndicator && isColumnSorted && !indicatorElement) {
|
106834
|
+
(0, _element.appendElement)(headerSpanElement, {
|
106835
|
+
tagName: 'div',
|
106836
|
+
className: SORTING_INDICATOR_CLASS,
|
106837
|
+
attributes: ariaTags ? [(0, _a11y.A11Y_HIDDEN)()] : []
|
106838
|
+
});
|
106839
|
+
}
|
106840
|
+
}
|
106841
|
+
|
106740
106842
|
/**
|
106741
106843
|
* Overwriting base plugin's `onUpdateSettings` method. Please keep in mind that `onAfterUpdateSettings` isn't called
|
106742
106844
|
* for `updateSettings` in specific situations.
|
@@ -113264,6 +113366,8 @@ exports.createMenuItemRenderer = createMenuItemRenderer;
|
|
113264
113366
|
var _utils = __webpack_require__(826);
|
113265
113367
|
var _element = __webpack_require__(302);
|
113266
113368
|
var _a11y = __webpack_require__(445);
|
113369
|
+
const SUBMENU_INDICATOR_CLASSNAME = 'submenuIndicator';
|
113370
|
+
|
113267
113371
|
/**
|
113268
113372
|
* Creates the menu renderer function.
|
113269
113373
|
*
|
@@ -113296,6 +113400,16 @@ function createMenuItemRenderer(mainTableHot) {
|
|
113296
113400
|
const isFocusable = !(0, _utils.isItemDisabled)(item, mainTableHot) && !(0, _utils.isItemSelectionDisabled)(item) && !(0, _utils.isItemSeparator)(item);
|
113297
113401
|
(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)] : [])]);
|
113298
113402
|
}
|
113403
|
+
if ((0, _utils.isItemSubMenu)(item)) {
|
113404
|
+
const submenuIndicatorElement = TD.querySelector('.submenuIndicator');
|
113405
|
+
if (!submenuIndicatorElement) {
|
113406
|
+
(0, _element.appendElement)(TD, {
|
113407
|
+
tagName: 'div',
|
113408
|
+
attributes: mainTableHot.getSettings().ariaTags ? [(0, _a11y.A11Y_HIDDEN)()] : [],
|
113409
|
+
className: SUBMENU_INDICATOR_CLASSNAME
|
113410
|
+
});
|
113411
|
+
}
|
113412
|
+
}
|
113299
113413
|
TD.className = '';
|
113300
113414
|
TD.appendChild(wrapper);
|
113301
113415
|
if ((0, _utils.isItemSeparator)(item)) {
|
@@ -116828,6 +116942,7 @@ var _menu = __webpack_require__(820);
|
|
116828
116942
|
var _pluginHooks = _interopRequireDefault(__webpack_require__(455));
|
116829
116943
|
var _predefinedItems = __webpack_require__(795);
|
116830
116944
|
__webpack_require__(857);
|
116945
|
+
var _constants = __webpack_require__(581);
|
116831
116946
|
var _a11y = __webpack_require__(445);
|
116832
116947
|
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
116833
116948
|
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
@@ -117253,7 +117368,7 @@ class DropdownMenu extends _base.BasePlugin {
|
|
117253
117368
|
button.type = 'button';
|
117254
117369
|
button.tabIndex = -1;
|
117255
117370
|
if (this.hot.getSettings().ariaTags) {
|
117256
|
-
(0, _element.setAttribute)(button, [(0, _a11y.
|
117371
|
+
(0, _element.setAttribute)(button, [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_OPEN_MENU))]);
|
117257
117372
|
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_HASPOPUP)('menu')]);
|
117258
117373
|
}
|
117259
117374
|
|
@@ -120553,11 +120668,8 @@ class InputUI extends _base.BaseUI {
|
|
120553
120668
|
*/
|
120554
120669
|
build() {
|
120555
120670
|
super.build();
|
120556
|
-
const icon = this.hot.rootDocument.createElement('div');
|
120557
120671
|
(0, _classPrivateFieldSet2.default)(this, _input, this._element.firstChild);
|
120558
120672
|
(0, _element.addClass)(this._element, 'htUIInput');
|
120559
|
-
(0, _element.addClass)(icon, 'htUIInputIcon');
|
120560
|
-
this._element.appendChild(icon);
|
120561
120673
|
this.update();
|
120562
120674
|
}
|
120563
120675
|
|
@@ -120823,9 +120935,11 @@ var _classPrivateFieldGet2 = _interopRequireDefault(__webpack_require__(460));
|
|
120823
120935
|
var _menu2 = __webpack_require__(820);
|
120824
120936
|
var _object = __webpack_require__(448);
|
120825
120937
|
var _array = __webpack_require__(444);
|
120938
|
+
var _element = __webpack_require__(302);
|
120826
120939
|
var C = _interopRequireWildcard(__webpack_require__(581));
|
120827
120940
|
var _predefinedItems = __webpack_require__(795);
|
120828
120941
|
var _base = __webpack_require__(899);
|
120942
|
+
var _a11y = __webpack_require__(445);
|
120829
120943
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
120830
120944
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
120831
120945
|
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
@@ -120982,6 +121096,10 @@ class SelectUI extends _base.BaseUI {
|
|
120982
121096
|
(0, _classPrivateFieldSet2.default)(this, _caption, caption);
|
120983
121097
|
(0, _classPrivateFieldSet2.default)(this, _captionElement, caption.element);
|
120984
121098
|
(0, _classPrivateFieldSet2.default)(this, _dropdown, dropdown);
|
121099
|
+
if (this.hot.getSettings().ariaTags) {
|
121100
|
+
(0, _element.setAttribute)(dropdown.element, [(0, _a11y.A11Y_HIDDEN)()]);
|
121101
|
+
(0, _element.setAttribute)(this._element, [(0, _a11y.A11Y_LISTBOX)()]);
|
121102
|
+
}
|
120985
121103
|
(0, _array.arrayEach)([caption, dropdown], element => this._element.appendChild(element.element));
|
120986
121104
|
(0, _classPrivateFieldGet2.default)(this, _menu).addLocalHook('select', command => _classPrivateMethodGet(this, _onMenuSelect, _onMenuSelect2).call(this, command));
|
120987
121105
|
(0, _classPrivateFieldGet2.default)(this, _menu).addLocalHook('afterClose', () => _classPrivateMethodGet(this, _onMenuClosed, _onMenuClosed2).call(this));
|
@@ -125262,9 +125380,13 @@ var _pluginHooks = _interopRequireDefault(__webpack_require__(455));
|
|
125262
125380
|
var _hideColumn = _interopRequireDefault(__webpack_require__(922));
|
125263
125381
|
var _showColumn = _interopRequireDefault(__webpack_require__(923));
|
125264
125382
|
var _translations = __webpack_require__(557);
|
125383
|
+
var _a11y = __webpack_require__(445);
|
125384
|
+
var _constants = __webpack_require__(581);
|
125265
125385
|
__webpack_require__(924);
|
125386
|
+
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
125266
125387
|
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
125267
125388
|
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
125389
|
+
function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
|
125268
125390
|
_pluginHooks.default.getSingleton().register('beforeHideColumns');
|
125269
125391
|
_pluginHooks.default.getSingleton().register('afterHideColumns');
|
125270
125392
|
_pluginHooks.default.getSingleton().register('beforeUnhideColumns');
|
@@ -125272,6 +125394,9 @@ _pluginHooks.default.getSingleton().register('afterUnhideColumns');
|
|
125272
125394
|
const PLUGIN_KEY = 'hiddenColumns';
|
125273
125395
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
125274
125396
|
const PLUGIN_PRIORITY = 310;
|
125397
|
+
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
125398
|
+
const BEFORE_INDICATOR_CLASSNAME = 'beforeHiddenColumnIndicator';
|
125399
|
+
const AFTER_INDICATOR_CLASSNAME = 'afterHiddenColumnIndicator';
|
125275
125400
|
|
125276
125401
|
/* eslint-disable jsdoc/require-description-complete-sentence */
|
125277
125402
|
|
@@ -125379,12 +125504,18 @@ const PLUGIN_PRIORITY = 310;
|
|
125379
125504
|
* ```
|
125380
125505
|
* :::
|
125381
125506
|
*/
|
125382
|
-
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
125383
125507
|
var _settings = /*#__PURE__*/new WeakMap();
|
125384
125508
|
var _hiddenColumnsMap = /*#__PURE__*/new WeakMap();
|
125509
|
+
var _clearIndicatorElements = /*#__PURE__*/new WeakSet();
|
125385
125510
|
class HiddenColumns extends _base.BasePlugin {
|
125386
125511
|
constructor() {
|
125387
125512
|
super(...arguments);
|
125513
|
+
/**
|
125514
|
+
* Remove the indicator elements from the provided column header element.
|
125515
|
+
*
|
125516
|
+
* @param {HTMLElement} TH Column header element.
|
125517
|
+
*/
|
125518
|
+
_classPrivateMethodInitSpec(this, _clearIndicatorElements);
|
125388
125519
|
/**
|
125389
125520
|
* Cached plugin settings.
|
125390
125521
|
*
|
@@ -125468,8 +125599,15 @@ class HiddenColumns extends _base.BasePlugin {
|
|
125468
125599
|
* Disables the plugin functionality for this Handsontable instance.
|
125469
125600
|
*/
|
125470
125601
|
disablePlugin() {
|
125602
|
+
const clearColHeader = (columnIndex, TH) => {
|
125603
|
+
_classPrivateMethodGet(this, _clearIndicatorElements, _clearIndicatorElements2).call(this, TH);
|
125604
|
+
};
|
125471
125605
|
this.hot.columnIndexMapper.unregisterMap(this.pluginName);
|
125472
125606
|
(0, _classPrivateFieldSet2.default)(this, _settings, {});
|
125607
|
+
this.hot.addHook('afterGetColHeader', clearColHeader);
|
125608
|
+
this.hot.addHookOnce('afterViewRender', () => {
|
125609
|
+
this.hot.removeHook('afterGetColHeader', clearColHeader);
|
125610
|
+
});
|
125473
125611
|
super.disablePlugin();
|
125474
125612
|
this.resetCellsMeta();
|
125475
125613
|
}
|
@@ -125611,7 +125749,6 @@ class HiddenColumns extends _base.BasePlugin {
|
|
125611
125749
|
}
|
125612
125750
|
});
|
125613
125751
|
}
|
125614
|
-
|
125615
125752
|
/**
|
125616
125753
|
* Adds the additional column width for the hidden column indicators.
|
125617
125754
|
*
|
@@ -125716,14 +125853,35 @@ class HiddenColumns extends _base.BasePlugin {
|
|
125716
125853
|
* @param {HTMLElement} TH Header's TH element.
|
125717
125854
|
*/
|
125718
125855
|
onAfterGetColHeader(column, TH) {
|
125856
|
+
const areAriaTagsEnabled = this.hot.getSettings().ariaTags;
|
125857
|
+
const beforeHiddenColumnIndicatorElement = TH.querySelector('.beforeHiddenColumnIndicator');
|
125858
|
+
const afterHiddenColumnIndicatorElement = TH.querySelector('.afterHiddenColumnIndicator');
|
125719
125859
|
if (!(0, _classPrivateFieldGet2.default)(this, _settings).indicators || column < 0) {
|
125860
|
+
beforeHiddenColumnIndicatorElement === null || beforeHiddenColumnIndicatorElement === void 0 || beforeHiddenColumnIndicatorElement.remove();
|
125861
|
+
afterHiddenColumnIndicatorElement === null || afterHiddenColumnIndicatorElement === void 0 || afterHiddenColumnIndicatorElement.remove();
|
125720
125862
|
return;
|
125721
125863
|
}
|
125722
125864
|
const classList = [];
|
125723
125865
|
if (column >= 1 && this.isHidden(column - 1)) {
|
125866
|
+
if (!afterHiddenColumnIndicatorElement) {
|
125867
|
+
const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN))] : [];
|
125868
|
+
(0, _element.appendElement)(TH, {
|
125869
|
+
tagName: 'div',
|
125870
|
+
attributes: attributesToAdd,
|
125871
|
+
className: AFTER_INDICATOR_CLASSNAME
|
125872
|
+
});
|
125873
|
+
}
|
125724
125874
|
classList.push('afterHiddenColumn');
|
125725
125875
|
}
|
125726
125876
|
if (column < this.hot.countCols() - 1 && this.isHidden(column + 1)) {
|
125877
|
+
if (!beforeHiddenColumnIndicatorElement) {
|
125878
|
+
const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN))] : [];
|
125879
|
+
(0, _element.appendElement)(TH, {
|
125880
|
+
tagName: 'div',
|
125881
|
+
attributes: attributesToAdd,
|
125882
|
+
className: BEFORE_INDICATOR_CLASSNAME
|
125883
|
+
});
|
125884
|
+
}
|
125727
125885
|
classList.push('beforeHiddenColumn');
|
125728
125886
|
}
|
125729
125887
|
(0, _element.addClass)(TH, classList);
|
@@ -125762,6 +125920,11 @@ class HiddenColumns extends _base.BasePlugin {
|
|
125762
125920
|
}
|
125763
125921
|
}
|
125764
125922
|
exports.HiddenColumns = HiddenColumns;
|
125923
|
+
function _clearIndicatorElements2(TH) {
|
125924
|
+
Array.from(TH.querySelectorAll(`.${AFTER_INDICATOR_CLASSNAME}, .${BEFORE_INDICATOR_CLASSNAME}`)).forEach(element => {
|
125925
|
+
element.remove();
|
125926
|
+
});
|
125927
|
+
}
|
125765
125928
|
|
125766
125929
|
/***/ }),
|
125767
125930
|
/* 922 */
|
@@ -125974,9 +126137,13 @@ var _pluginHooks = _interopRequireDefault(__webpack_require__(455));
|
|
125974
126137
|
var _hideRow = _interopRequireDefault(__webpack_require__(927));
|
125975
126138
|
var _showRow = _interopRequireDefault(__webpack_require__(928));
|
125976
126139
|
var _translations = __webpack_require__(557);
|
126140
|
+
var _a11y = __webpack_require__(445);
|
126141
|
+
var _constants = __webpack_require__(581);
|
125977
126142
|
__webpack_require__(929);
|
126143
|
+
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
125978
126144
|
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
125979
126145
|
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
126146
|
+
function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
|
125980
126147
|
_pluginHooks.default.getSingleton().register('beforeHideRows');
|
125981
126148
|
_pluginHooks.default.getSingleton().register('afterHideRows');
|
125982
126149
|
_pluginHooks.default.getSingleton().register('beforeUnhideRows');
|
@@ -125984,6 +126151,9 @@ _pluginHooks.default.getSingleton().register('afterUnhideRows');
|
|
125984
126151
|
const PLUGIN_KEY = 'hiddenRows';
|
125985
126152
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
125986
126153
|
const PLUGIN_PRIORITY = 320;
|
126154
|
+
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
126155
|
+
const AFTER_INDICATOR_CLASSNAME = 'afterHiddenRowIndicator';
|
126156
|
+
const BEFORE_INDICATOR_CLASSNAME = 'beforeHiddenRowIndicator';
|
125987
126157
|
|
125988
126158
|
/* eslint-disable jsdoc/require-description-complete-sentence */
|
125989
126159
|
|
@@ -126091,12 +126261,18 @@ const PLUGIN_PRIORITY = 320;
|
|
126091
126261
|
* ```
|
126092
126262
|
* :::
|
126093
126263
|
*/
|
126094
|
-
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
126095
126264
|
var _settings = /*#__PURE__*/new WeakMap();
|
126096
126265
|
var _hiddenRowsMap = /*#__PURE__*/new WeakMap();
|
126266
|
+
var _clearIndicatorElements = /*#__PURE__*/new WeakSet();
|
126097
126267
|
class HiddenRows extends _base.BasePlugin {
|
126098
126268
|
constructor() {
|
126099
126269
|
super(...arguments);
|
126270
|
+
/**
|
126271
|
+
* Remove the indicator elements from the provided row header element.
|
126272
|
+
*
|
126273
|
+
* @param {HTMLElement} TH Column header element.
|
126274
|
+
*/
|
126275
|
+
_classPrivateMethodInitSpec(this, _clearIndicatorElements);
|
126100
126276
|
/**
|
126101
126277
|
* Cached settings from Handsontable settings.
|
126102
126278
|
*
|
@@ -126180,8 +126356,15 @@ class HiddenRows extends _base.BasePlugin {
|
|
126180
126356
|
* Disables the plugin functionality for this Handsontable instance.
|
126181
126357
|
*/
|
126182
126358
|
disablePlugin() {
|
126359
|
+
const clearRowHeader = (columnIndex, TH) => {
|
126360
|
+
_classPrivateMethodGet(this, _clearIndicatorElements, _clearIndicatorElements2).call(this, TH);
|
126361
|
+
};
|
126183
126362
|
this.hot.rowIndexMapper.unregisterMap(this.pluginName);
|
126184
126363
|
(0, _classPrivateFieldSet2.default)(this, _settings, {});
|
126364
|
+
this.hot.addHook('afterGetRowHeader', clearRowHeader);
|
126365
|
+
this.hot.addHookOnce('afterViewRender', () => {
|
126366
|
+
this.hot.removeHook('afterGetRowHeader', clearRowHeader);
|
126367
|
+
});
|
126185
126368
|
super.disablePlugin();
|
126186
126369
|
this.resetCellsMeta();
|
126187
126370
|
}
|
@@ -126320,7 +126503,6 @@ class HiddenRows extends _base.BasePlugin {
|
|
126320
126503
|
}
|
126321
126504
|
});
|
126322
126505
|
}
|
126323
|
-
|
126324
126506
|
/**
|
126325
126507
|
* Adds the additional row height for the hidden row indicators.
|
126326
126508
|
*
|
@@ -126420,14 +126602,35 @@ class HiddenRows extends _base.BasePlugin {
|
|
126420
126602
|
* @param {HTMLElement} TH Header's TH element.
|
126421
126603
|
*/
|
126422
126604
|
onAfterGetRowHeader(row, TH) {
|
126605
|
+
const areAriaTagsEnabled = this.hot.getSettings().ariaTags;
|
126606
|
+
const beforeHiddenRowIndicatorElement = TH.querySelector('.beforeHiddenRowIndicator');
|
126607
|
+
const afterHiddenRowIndicatorElement = TH.querySelector('.afterHiddenRowIndicator');
|
126423
126608
|
if (!(0, _classPrivateFieldGet2.default)(this, _settings).indicators || row < 0) {
|
126609
|
+
beforeHiddenRowIndicatorElement === null || beforeHiddenRowIndicatorElement === void 0 || beforeHiddenRowIndicatorElement.remove();
|
126610
|
+
afterHiddenRowIndicatorElement === null || afterHiddenRowIndicatorElement === void 0 || afterHiddenRowIndicatorElement.remove();
|
126424
126611
|
return;
|
126425
126612
|
}
|
126426
126613
|
const classList = [];
|
126427
126614
|
if (row >= 1 && this.isHidden(row - 1)) {
|
126615
|
+
if (!afterHiddenRowIndicatorElement) {
|
126616
|
+
const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW))] : [];
|
126617
|
+
(0, _element.appendElement)(TH, {
|
126618
|
+
tagName: 'div',
|
126619
|
+
attributes: attributesToAdd,
|
126620
|
+
className: AFTER_INDICATOR_CLASSNAME
|
126621
|
+
});
|
126622
|
+
}
|
126428
126623
|
classList.push('afterHiddenRow');
|
126429
126624
|
}
|
126430
126625
|
if (row < this.hot.countRows() - 1 && this.isHidden(row + 1)) {
|
126626
|
+
if (!beforeHiddenRowIndicatorElement) {
|
126627
|
+
const attributesToAdd = areAriaTagsEnabled ? [(0, _a11y.A11Y_LABEL)(this.hot.getTranslatedPhrase(_constants.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW))] : [];
|
126628
|
+
(0, _element.appendElement)(TH, {
|
126629
|
+
tagName: 'div',
|
126630
|
+
attributes: attributesToAdd,
|
126631
|
+
className: BEFORE_INDICATOR_CLASSNAME
|
126632
|
+
});
|
126633
|
+
}
|
126431
126634
|
classList.push('beforeHiddenRow');
|
126432
126635
|
}
|
126433
126636
|
(0, _element.addClass)(TH, classList);
|
@@ -126466,6 +126669,11 @@ class HiddenRows extends _base.BasePlugin {
|
|
126466
126669
|
}
|
126467
126670
|
}
|
126468
126671
|
exports.HiddenRows = HiddenRows;
|
126672
|
+
function _clearIndicatorElements2(TH) {
|
126673
|
+
Array.from(TH.querySelectorAll(`.${AFTER_INDICATOR_CLASSNAME}, .${BEFORE_INDICATOR_CLASSNAME}`)).forEach(element => {
|
126674
|
+
element.remove();
|
126675
|
+
});
|
126676
|
+
}
|
126469
126677
|
|
126470
126678
|
/***/ }),
|
126471
126679
|
/* 927 */
|
@@ -132564,6 +132772,8 @@ var _element = __webpack_require__(302);
|
|
132564
132772
|
var _rootComparator = __webpack_require__(962);
|
132565
132773
|
var _utils2 = __webpack_require__(963);
|
132566
132774
|
var _domHelpers = __webpack_require__(964);
|
132775
|
+
var _a11y = __webpack_require__(445);
|
132776
|
+
var _constants = __webpack_require__(581);
|
132567
132777
|
__webpack_require__(965);
|
132568
132778
|
const PLUGIN_KEY = 'multiColumnSorting';
|
132569
132779
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
@@ -132825,6 +133035,25 @@ class MultiColumnSorting extends _columnSorting.ColumnSorting {
|
|
132825
133035
|
}
|
132826
133036
|
}
|
132827
133037
|
|
133038
|
+
/**
|
133039
|
+
* Update sorting indicator.
|
133040
|
+
*
|
133041
|
+
* @private
|
133042
|
+
* @param {number} column Visual column index.
|
133043
|
+
* @param {HTMLElement} headerSpanElement Header span element.
|
133044
|
+
*/
|
133045
|
+
updateSortingIndicator(column, headerSpanElement) {
|
133046
|
+
super.updateSortingIndicator(column, headerSpanElement);
|
133047
|
+
const indicatorElement = headerSpanElement.querySelector('.columnSortingIndicator');
|
133048
|
+
if (!indicatorElement || !this.hot.getSettings().ariaTags || !this.columnStatesManager.isColumnSorted(column) || this.columnStatesManager.getNumberOfSortedColumns() <= 1) {
|
133049
|
+
return;
|
133050
|
+
}
|
133051
|
+
const multiColumnSortingOrder = this.columnStatesManager.getIndexOfColumnInSortQueue(column) + 1;
|
133052
|
+
const a11yLabelAttribute = (0, _a11y.A11Y_LABEL)(`${this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER)} ${multiColumnSortingOrder}.`);
|
133053
|
+
(0, _element.removeAttribute)(indicatorElement, (0, _a11y.A11Y_HIDDEN)()[0]);
|
133054
|
+
(0, _element.setAttribute)(indicatorElement, ...a11yLabelAttribute);
|
133055
|
+
}
|
133056
|
+
|
132828
133057
|
/**
|
132829
133058
|
* Overwriting base plugin's `onUpdateSettings` method. Please keep in mind that `onAfterUpdateSettings` isn't called
|
132830
133059
|
* for `updateSettings` in specific situations.
|
@@ -136584,7 +136813,8 @@ class NestedRows extends _base.BasePlugin {
|
|
136584
136813
|
/**
|
136585
136814
|
* Updates the plugin's state.
|
136586
136815
|
*
|
136587
|
-
* This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the
|
136816
|
+
* This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the
|
136817
|
+
* following configuration options:
|
136588
136818
|
* - [`nestedRows`](@/api/options.md#nestedrows)
|
136589
136819
|
*/
|
136590
136820
|
updatePlugin() {
|
@@ -138172,6 +138402,7 @@ var _number = __webpack_require__(471);
|
|
138172
138402
|
var _element = __webpack_require__(302);
|
138173
138403
|
var _base = _interopRequireDefault(__webpack_require__(989));
|
138174
138404
|
var _a11y = __webpack_require__(445);
|
138405
|
+
var _constants = __webpack_require__(581);
|
138175
138406
|
/**
|
138176
138407
|
* Class responsible for the UI in the Nested Rows' row headers.
|
138177
138408
|
*
|
@@ -138189,7 +138420,6 @@ class HeadersUI extends _base.default {
|
|
138189
138420
|
return {
|
138190
138421
|
indicatorContainer: 'ht_nestingLevels',
|
138191
138422
|
parent: 'ht_nestingParent',
|
138192
|
-
indicator: 'ht_nestingLevel',
|
138193
138423
|
emptyIndicator: 'ht_nestingLevel_empty',
|
138194
138424
|
button: 'ht_nestingButton',
|
138195
138425
|
expandButton: 'ht_nestingExpand',
|
@@ -138267,12 +138497,12 @@ class HeadersUI extends _base.default {
|
|
138267
138497
|
if (this.collapsingUI.areChildrenCollapsed(rowIndex)) {
|
138268
138498
|
(0, _element.addClass)(buttonsContainer, `${HeadersUI.CSS_CLASSES.button} ${HeadersUI.CSS_CLASSES.expandButton}`);
|
138269
138499
|
if (ariaEnabled) {
|
138270
|
-
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(false)]);
|
138500
|
+
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(false), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.ROW_HEADER_DESCRIPTION_EXPAND_ROW))]);
|
138271
138501
|
}
|
138272
138502
|
} else {
|
138273
138503
|
(0, _element.addClass)(buttonsContainer, `${HeadersUI.CSS_CLASSES.button} ${HeadersUI.CSS_CLASSES.collapseButton}`);
|
138274
138504
|
if (ariaEnabled) {
|
138275
|
-
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(true)]);
|
138505
|
+
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(true), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW))]);
|
138276
138506
|
}
|
138277
138507
|
}
|
138278
138508
|
innerDiv.appendChild(buttonsContainer);
|