handsontable 0.0.0-next-e54c3d6-20231026 → 0.0.0-next-42d5bd7-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/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 +253 -24
- package/dist/handsontable.full.min.css +5 -5
- package/dist/handsontable.full.min.js +105 -105
- package/dist/handsontable.js +253 -24
- 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
package/helpers/a11y.mjs
CHANGED
@@ -15,6 +15,7 @@ export const A11Y_SCOPE_COL = () => ['scope', 'col'];
|
|
15
15
|
export const A11Y_SCOPE_ROW = () => ['scope', 'row'];
|
16
16
|
export const A11Y_TEXT = () => ['type', 'text'];
|
17
17
|
export const A11Y_LABEL = val => ['aria-label', val];
|
18
|
+
export const A11Y_DESCRIPTION = val => ['aria-description', val];
|
18
19
|
export const A11Y_HIDDEN = () => ['aria-hidden', 'true'];
|
19
20
|
export const A11Y_DISABLED = () => ['aria-disabled', 'true'];
|
20
21
|
export const A11Y_MULTISELECTABLE = () => ['aria-multiselectable', 'true'];
|
package/helpers/dom/element.js
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.addClass = addClass;
|
5
5
|
exports.addEvent = addEvent;
|
6
|
+
exports.appendElement = appendElement;
|
6
7
|
exports.clearTextSelection = clearTextSelection;
|
7
8
|
exports.closest = closest;
|
8
9
|
exports.closestDown = closestDown;
|
@@ -1136,4 +1137,32 @@ function runWithSelectedContendEditableElement(element, callback) {
|
|
1136
1137
|
makeElementContentEditableAndSelectItsContent(element, invisibleSelection);
|
1137
1138
|
callback();
|
1138
1139
|
removeContentEditableFromElementAndDeselect(element, invisibleSelection);
|
1140
|
+
}
|
1141
|
+
|
1142
|
+
/**
|
1143
|
+
* Creates a new DOM element and appends it to the parent element with the provided class name(s) and attributes.
|
1144
|
+
*
|
1145
|
+
* @param {HTMLElement} parentElement The parent element.
|
1146
|
+
* @param {object} properties The properties object.
|
1147
|
+
* @param {string} properties.tagName The type of the new element.
|
1148
|
+
* @param {string|string[]} properties.className Class name as string or array of strings.
|
1149
|
+
* @param {Array[]} properties.attributes An array containing the attributes to be added. Each element of the array
|
1150
|
+
* should be an array in a form of `[attributeName, attributeValue]`.
|
1151
|
+
* @returns {HTMLElement} The created div element.
|
1152
|
+
*/
|
1153
|
+
function appendElement(parentElement, _ref) {
|
1154
|
+
let {
|
1155
|
+
tagName,
|
1156
|
+
className,
|
1157
|
+
attributes
|
1158
|
+
} = _ref;
|
1159
|
+
const element = parentElement.ownerDocument.createElement(tagName);
|
1160
|
+
if (className) {
|
1161
|
+
addClass(element, className);
|
1162
|
+
}
|
1163
|
+
if (attributes && attributes.length) {
|
1164
|
+
setAttribute(element, attributes);
|
1165
|
+
}
|
1166
|
+
parentElement.appendChild(element);
|
1167
|
+
return element;
|
1139
1168
|
}
|
package/helpers/dom/element.mjs
CHANGED
@@ -1077,4 +1077,32 @@ export function runWithSelectedContendEditableElement(element, callback) {
|
|
1077
1077
|
makeElementContentEditableAndSelectItsContent(element, invisibleSelection);
|
1078
1078
|
callback();
|
1079
1079
|
removeContentEditableFromElementAndDeselect(element, invisibleSelection);
|
1080
|
+
}
|
1081
|
+
|
1082
|
+
/**
|
1083
|
+
* Creates a new DOM element and appends it to the parent element with the provided class name(s) and attributes.
|
1084
|
+
*
|
1085
|
+
* @param {HTMLElement} parentElement The parent element.
|
1086
|
+
* @param {object} properties The properties object.
|
1087
|
+
* @param {string} properties.tagName The type of the new element.
|
1088
|
+
* @param {string|string[]} properties.className Class name as string or array of strings.
|
1089
|
+
* @param {Array[]} properties.attributes An array containing the attributes to be added. Each element of the array
|
1090
|
+
* should be an array in a form of `[attributeName, attributeValue]`.
|
1091
|
+
* @returns {HTMLElement} The created div element.
|
1092
|
+
*/
|
1093
|
+
export function appendElement(parentElement, _ref) {
|
1094
|
+
let {
|
1095
|
+
tagName,
|
1096
|
+
className,
|
1097
|
+
attributes
|
1098
|
+
} = _ref;
|
1099
|
+
const element = parentElement.ownerDocument.createElement(tagName);
|
1100
|
+
if (className) {
|
1101
|
+
addClass(element, className);
|
1102
|
+
}
|
1103
|
+
if (attributes && attributes.length) {
|
1104
|
+
setAttribute(element, attributes);
|
1105
|
+
}
|
1106
|
+
parentElement.appendChild(element);
|
1107
|
+
return element;
|
1080
1108
|
}
|
package/helpers/mixed.js
CHANGED
@@ -134,7 +134,7 @@ const domMessages = {
|
|
134
134
|
function _injectProductInfo(key, element) {
|
135
135
|
const hasValidType = !isEmpty(key);
|
136
136
|
const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
|
137
|
-
const hotVersion = "0.0.0-next-
|
137
|
+
const hotVersion = "0.0.0-next-42d5bd7-20231027";
|
138
138
|
let keyValidityDate;
|
139
139
|
let consoleMessageState = 'invalid';
|
140
140
|
let domMessageState = 'invalid';
|
package/helpers/mixed.mjs
CHANGED
@@ -124,7 +124,7 @@ const domMessages = {
|
|
124
124
|
export function _injectProductInfo(key, element) {
|
125
125
|
const hasValidType = !isEmpty(key);
|
126
126
|
const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
|
127
|
-
const hotVersion = "0.0.0-next-
|
127
|
+
const hotVersion = "0.0.0-next-42d5bd7-20231027";
|
128
128
|
let keyValidityDate;
|
129
129
|
let consoleMessageState = 'invalid';
|
130
130
|
let domMessageState = 'invalid';
|
package/i18n/constants.js
CHANGED
@@ -171,4 +171,30 @@ exports.CHECKBOX_RENDERER_NAMESPACE = CHECKBOX_RENDERER_NAMESPACE;
|
|
171
171
|
const CHECKBOX_CHECKED = `${CHECKBOX_RENDERER_NAMESPACE}checked`;
|
172
172
|
exports.CHECKBOX_CHECKED = CHECKBOX_CHECKED;
|
173
173
|
const CHECKBOX_UNCHECKED = `${CHECKBOX_RENDERER_NAMESPACE}unchecked`;
|
174
|
-
exports.CHECKBOX_UNCHECKED = CHECKBOX_UNCHECKED;
|
174
|
+
exports.CHECKBOX_UNCHECKED = CHECKBOX_UNCHECKED;
|
175
|
+
const COLUMN_HEADER_NAMESPACE = 'ColumnHeader:';
|
176
|
+
exports.COLUMN_HEADER_NAMESPACE = COLUMN_HEADER_NAMESPACE;
|
177
|
+
const COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN = `${COLUMN_HEADER_NAMESPACE}description.expandColumn`;
|
178
|
+
exports.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN = COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN;
|
179
|
+
const COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN = `${COLUMN_HEADER_NAMESPACE}description.collapseColumn`;
|
180
|
+
exports.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN = COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN;
|
181
|
+
const COLUMN_HEADER_DESCRIPTION_SORT_ROWS = `${COLUMN_HEADER_NAMESPACE}description.sortRows`;
|
182
|
+
exports.COLUMN_HEADER_DESCRIPTION_SORT_ROWS = COLUMN_HEADER_DESCRIPTION_SORT_ROWS;
|
183
|
+
const COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER = `${COLUMN_HEADER_NAMESPACE}label.multiColumnSortOrder`;
|
184
|
+
exports.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER = COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER;
|
185
|
+
const COLUMN_HEADER_LABEL_OPEN_MENU = `${COLUMN_HEADER_NAMESPACE}label.openMenu`;
|
186
|
+
exports.COLUMN_HEADER_LABEL_OPEN_MENU = COLUMN_HEADER_LABEL_OPEN_MENU;
|
187
|
+
const COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN = `${COLUMN_HEADER_NAMESPACE}label.beforeHiddenColumn`;
|
188
|
+
exports.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN = COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN;
|
189
|
+
const COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN = `${COLUMN_HEADER_NAMESPACE}label.afterHiddenColumn`;
|
190
|
+
exports.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN = COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN;
|
191
|
+
const ROW_HEADER_NAMESPACE = 'RowHeader:';
|
192
|
+
exports.ROW_HEADER_NAMESPACE = ROW_HEADER_NAMESPACE;
|
193
|
+
const ROW_HEADER_DESCRIPTION_EXPAND_ROW = `${ROW_HEADER_NAMESPACE}description.expandRow`;
|
194
|
+
exports.ROW_HEADER_DESCRIPTION_EXPAND_ROW = ROW_HEADER_DESCRIPTION_EXPAND_ROW;
|
195
|
+
const ROW_HEADER_DESCRIPTION_COLLAPSE_ROW = `${ROW_HEADER_NAMESPACE}description.collapseRow`;
|
196
|
+
exports.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW = ROW_HEADER_DESCRIPTION_COLLAPSE_ROW;
|
197
|
+
const ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW = `${ROW_HEADER_NAMESPACE}label.beforeHiddenRow`;
|
198
|
+
exports.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW = ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW;
|
199
|
+
const ROW_HEADER_LABEL_AFTER_HIDDEN_ROW = `${ROW_HEADER_NAMESPACE}label.afterHiddenRow`;
|
200
|
+
exports.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW = ROW_HEADER_LABEL_AFTER_HIDDEN_ROW;
|
package/i18n/constants.mjs
CHANGED
@@ -86,4 +86,17 @@ export const FILTERS_BUTTONS_PLACEHOLDER_VALUE = `${FILTERS_NAMESPACE}buttons.pl
|
|
86
86
|
export const FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE = `${FILTERS_NAMESPACE}buttons.placeholder.secondValue`;
|
87
87
|
export const CHECKBOX_RENDERER_NAMESPACE = 'CheckboxRenderer:';
|
88
88
|
export const CHECKBOX_CHECKED = `${CHECKBOX_RENDERER_NAMESPACE}checked`;
|
89
|
-
export const CHECKBOX_UNCHECKED = `${CHECKBOX_RENDERER_NAMESPACE}unchecked`;
|
89
|
+
export const CHECKBOX_UNCHECKED = `${CHECKBOX_RENDERER_NAMESPACE}unchecked`;
|
90
|
+
export const COLUMN_HEADER_NAMESPACE = 'ColumnHeader:';
|
91
|
+
export const COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN = `${COLUMN_HEADER_NAMESPACE}description.expandColumn`;
|
92
|
+
export const COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN = `${COLUMN_HEADER_NAMESPACE}description.collapseColumn`;
|
93
|
+
export const COLUMN_HEADER_DESCRIPTION_SORT_ROWS = `${COLUMN_HEADER_NAMESPACE}description.sortRows`;
|
94
|
+
export const COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER = `${COLUMN_HEADER_NAMESPACE}label.multiColumnSortOrder`;
|
95
|
+
export const COLUMN_HEADER_LABEL_OPEN_MENU = `${COLUMN_HEADER_NAMESPACE}label.openMenu`;
|
96
|
+
export const COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN = `${COLUMN_HEADER_NAMESPACE}label.beforeHiddenColumn`;
|
97
|
+
export const COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN = `${COLUMN_HEADER_NAMESPACE}label.afterHiddenColumn`;
|
98
|
+
export const ROW_HEADER_NAMESPACE = 'RowHeader:';
|
99
|
+
export const ROW_HEADER_DESCRIPTION_EXPAND_ROW = `${ROW_HEADER_NAMESPACE}description.expandRow`;
|
100
|
+
export const ROW_HEADER_DESCRIPTION_COLLAPSE_ROW = `${ROW_HEADER_NAMESPACE}description.collapseRow`;
|
101
|
+
export const ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW = `${ROW_HEADER_NAMESPACE}label.beforeHiddenRow`;
|
102
|
+
export const ROW_HEADER_LABEL_AFTER_HIDDEN_ROW = `${ROW_HEADER_NAMESPACE}label.afterHiddenRow`;
|
package/i18n/languages/en-US.js
CHANGED
@@ -91,7 +91,18 @@ const dictionary = {
|
|
91
91
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Value',
|
92
92
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Second value',
|
93
93
|
[C.CHECKBOX_CHECKED]: 'Checked',
|
94
|
-
[C.CHECKBOX_UNCHECKED]: 'Unchecked'
|
94
|
+
[C.CHECKBOX_UNCHECKED]: 'Unchecked',
|
95
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Press ENTER to expand column.',
|
96
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Press ENTER to collapse column.',
|
97
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Press ENTER to change sorting.',
|
98
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Multi-column sorting order:',
|
99
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Press CTRL/CMD+ENTER to open menu.',
|
100
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'The next column is hidden.',
|
101
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'The previous column is hidden.',
|
102
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Press ENTER to expand row.',
|
103
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Press ENTER to collapse row.',
|
104
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'The next row is hidden.',
|
105
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'The previous row is hidden.'
|
95
106
|
};
|
96
107
|
var _default = dictionary;
|
97
108
|
exports.default = _default;
|
package/i18n/languages/en-US.mjs
CHANGED
@@ -85,6 +85,17 @@ const dictionary = {
|
|
85
85
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Value',
|
86
86
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Second value',
|
87
87
|
[C.CHECKBOX_CHECKED]: 'Checked',
|
88
|
-
[C.CHECKBOX_UNCHECKED]: 'Unchecked'
|
88
|
+
[C.CHECKBOX_UNCHECKED]: 'Unchecked',
|
89
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Press ENTER to expand column.',
|
90
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Press ENTER to collapse column.',
|
91
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Press ENTER to change sorting.',
|
92
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Multi-column sorting order:',
|
93
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Press CTRL/CMD+ENTER to open menu.',
|
94
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'The next column is hidden.',
|
95
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'The previous column is hidden.',
|
96
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Press ENTER to expand row.',
|
97
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Press ENTER to collapse row.',
|
98
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'The next row is hidden.',
|
99
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'The previous row is hidden.'
|
89
100
|
};
|
90
101
|
export default dictionary;
|
package/i18n/languages/pl-PL.js
CHANGED
@@ -91,7 +91,18 @@ const dictionary = {
|
|
91
91
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Wartość',
|
92
92
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Druga wartość',
|
93
93
|
[C.CHECKBOX_CHECKED]: 'Zaznaczony',
|
94
|
-
[C.CHECKBOX_UNCHECKED]: 'Odznaczony'
|
94
|
+
[C.CHECKBOX_UNCHECKED]: 'Odznaczony',
|
95
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Naciśnij ENTER aby rozwinąć kolumnę.',
|
96
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Naciśnij ENTER aby zwinąć kolumnę.',
|
97
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Naciśnij ENTER aby zmienić sortowanie.',
|
98
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Kolejność w sortowaniu po wielu kolumnach:',
|
99
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Naciśnij CTRL/CMD+ENTER aby otworzyć menu kontekstowe.',
|
100
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'Następna kolumna jest ukryta.',
|
101
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'Poprzednia kolumna jest ukryta.',
|
102
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Naciśnij ENTER aby rozwinąć wiersz.',
|
103
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Naciśnij ENTER aby zwinąć wiersz.',
|
104
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'Następny wiersz jest ukryty.',
|
105
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'Poprzedni wiersz jest ukryty.'
|
95
106
|
};
|
96
107
|
var _default = dictionary;
|
97
108
|
exports.default = _default;
|
package/i18n/languages/pl-PL.mjs
CHANGED
@@ -85,6 +85,17 @@ const dictionary = {
|
|
85
85
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Wartość',
|
86
86
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Druga wartość',
|
87
87
|
[C.CHECKBOX_CHECKED]: 'Zaznaczony',
|
88
|
-
[C.CHECKBOX_UNCHECKED]: 'Odznaczony'
|
88
|
+
[C.CHECKBOX_UNCHECKED]: 'Odznaczony',
|
89
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Naciśnij ENTER aby rozwinąć kolumnę.',
|
90
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Naciśnij ENTER aby zwinąć kolumnę.',
|
91
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Naciśnij ENTER aby zmienić sortowanie.',
|
92
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Kolejność w sortowaniu po wielu kolumnach:',
|
93
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Naciśnij CTRL/CMD+ENTER aby otworzyć menu kontekstowe.',
|
94
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'Następna kolumna jest ukryta.',
|
95
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'Poprzednia kolumna jest ukryta.',
|
96
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Naciśnij ENTER aby rozwinąć wiersz.',
|
97
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Naciśnij ENTER aby zwinąć wiersz.',
|
98
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'Następny wiersz jest ukryty.',
|
99
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'Poprzedni wiersz jest ukryty.'
|
89
100
|
};
|
90
101
|
export default dictionary;
|
package/languages/all.js
CHANGED
@@ -520,7 +520,18 @@ const dictionary = {
|
|
520
520
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Value',
|
521
521
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Second value',
|
522
522
|
[C.CHECKBOX_CHECKED]: 'Checked',
|
523
|
-
[C.CHECKBOX_UNCHECKED]: 'Unchecked'
|
523
|
+
[C.CHECKBOX_UNCHECKED]: 'Unchecked',
|
524
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Press ENTER to expand column.',
|
525
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Press ENTER to collapse column.',
|
526
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Press ENTER to change sorting.',
|
527
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Multi-column sorting order:',
|
528
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Press CTRL/CMD+ENTER to open menu.',
|
529
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'The next column is hidden.',
|
530
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'The previous column is hidden.',
|
531
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Press ENTER to expand row.',
|
532
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Press ENTER to collapse row.',
|
533
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'The next row is hidden.',
|
534
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'The previous row is hidden.'
|
524
535
|
};
|
525
536
|
_handsontable.default.languages.registerLanguageDictionary(dictionary);
|
526
537
|
var _default = dictionary;
|
@@ -1422,7 +1433,18 @@ const dictionary = {
|
|
1422
1433
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Wartość',
|
1423
1434
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Druga wartość',
|
1424
1435
|
[C.CHECKBOX_CHECKED]: 'Zaznaczony',
|
1425
|
-
[C.CHECKBOX_UNCHECKED]: 'Odznaczony'
|
1436
|
+
[C.CHECKBOX_UNCHECKED]: 'Odznaczony',
|
1437
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Naciśnij ENTER aby rozwinąć kolumnę.',
|
1438
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Naciśnij ENTER aby zwinąć kolumnę.',
|
1439
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Naciśnij ENTER aby zmienić sortowanie.',
|
1440
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Kolejność w sortowaniu po wielu kolumnach:',
|
1441
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Naciśnij CTRL/CMD+ENTER aby otworzyć menu kontekstowe.',
|
1442
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'Następna kolumna jest ukryta.',
|
1443
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'Poprzednia kolumna jest ukryta.',
|
1444
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Naciśnij ENTER aby rozwinąć wiersz.',
|
1445
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Naciśnij ENTER aby zwinąć wiersz.',
|
1446
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'Następny wiersz jest ukryty.',
|
1447
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'Poprzedni wiersz jest ukryty.'
|
1426
1448
|
};
|
1427
1449
|
_handsontable.default.languages.registerLanguageDictionary(dictionary);
|
1428
1450
|
var _default = dictionary;
|
package/languages/en-US.js
CHANGED
@@ -154,7 +154,18 @@ const dictionary = {
|
|
154
154
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Value',
|
155
155
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Second value',
|
156
156
|
[C.CHECKBOX_CHECKED]: 'Checked',
|
157
|
-
[C.CHECKBOX_UNCHECKED]: 'Unchecked'
|
157
|
+
[C.CHECKBOX_UNCHECKED]: 'Unchecked',
|
158
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Press ENTER to expand column.',
|
159
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Press ENTER to collapse column.',
|
160
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Press ENTER to change sorting.',
|
161
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Multi-column sorting order:',
|
162
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Press CTRL/CMD+ENTER to open menu.',
|
163
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'The next column is hidden.',
|
164
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'The previous column is hidden.',
|
165
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Press ENTER to expand row.',
|
166
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Press ENTER to collapse row.',
|
167
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'The next row is hidden.',
|
168
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'The previous row is hidden.'
|
158
169
|
};
|
159
170
|
_handsontable.default.languages.registerLanguageDictionary(dictionary);
|
160
171
|
var _default = dictionary;
|
package/languages/en-US.mjs
CHANGED
@@ -86,7 +86,18 @@ const dictionary = {
|
|
86
86
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Value',
|
87
87
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Second value',
|
88
88
|
[C.CHECKBOX_CHECKED]: 'Checked',
|
89
|
-
[C.CHECKBOX_UNCHECKED]: 'Unchecked'
|
89
|
+
[C.CHECKBOX_UNCHECKED]: 'Unchecked',
|
90
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Press ENTER to expand column.',
|
91
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Press ENTER to collapse column.',
|
92
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Press ENTER to change sorting.',
|
93
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Multi-column sorting order:',
|
94
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Press CTRL/CMD+ENTER to open menu.',
|
95
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'The next column is hidden.',
|
96
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'The previous column is hidden.',
|
97
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Press ENTER to expand row.',
|
98
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Press ENTER to collapse row.',
|
99
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'The next row is hidden.',
|
100
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'The previous row is hidden.'
|
90
101
|
};
|
91
102
|
Handsontable.languages.registerLanguageDictionary(dictionary);
|
92
103
|
export default dictionary;
|
package/languages/index.js
CHANGED
@@ -520,7 +520,18 @@ const dictionary = {
|
|
520
520
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Value',
|
521
521
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Second value',
|
522
522
|
[C.CHECKBOX_CHECKED]: 'Checked',
|
523
|
-
[C.CHECKBOX_UNCHECKED]: 'Unchecked'
|
523
|
+
[C.CHECKBOX_UNCHECKED]: 'Unchecked',
|
524
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Press ENTER to expand column.',
|
525
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Press ENTER to collapse column.',
|
526
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Press ENTER to change sorting.',
|
527
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Multi-column sorting order:',
|
528
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Press CTRL/CMD+ENTER to open menu.',
|
529
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'The next column is hidden.',
|
530
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'The previous column is hidden.',
|
531
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Press ENTER to expand row.',
|
532
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Press ENTER to collapse row.',
|
533
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'The next row is hidden.',
|
534
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'The previous row is hidden.'
|
524
535
|
};
|
525
536
|
_handsontable.default.languages.registerLanguageDictionary(dictionary);
|
526
537
|
var _default = dictionary;
|
@@ -1422,7 +1433,18 @@ const dictionary = {
|
|
1422
1433
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Wartość',
|
1423
1434
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Druga wartość',
|
1424
1435
|
[C.CHECKBOX_CHECKED]: 'Zaznaczony',
|
1425
|
-
[C.CHECKBOX_UNCHECKED]: 'Odznaczony'
|
1436
|
+
[C.CHECKBOX_UNCHECKED]: 'Odznaczony',
|
1437
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Naciśnij ENTER aby rozwinąć kolumnę.',
|
1438
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Naciśnij ENTER aby zwinąć kolumnę.',
|
1439
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Naciśnij ENTER aby zmienić sortowanie.',
|
1440
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Kolejność w sortowaniu po wielu kolumnach:',
|
1441
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Naciśnij CTRL/CMD+ENTER aby otworzyć menu kontekstowe.',
|
1442
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'Następna kolumna jest ukryta.',
|
1443
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'Poprzednia kolumna jest ukryta.',
|
1444
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Naciśnij ENTER aby rozwinąć wiersz.',
|
1445
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Naciśnij ENTER aby zwinąć wiersz.',
|
1446
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'Następny wiersz jest ukryty.',
|
1447
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'Poprzedni wiersz jest ukryty.'
|
1426
1448
|
};
|
1427
1449
|
_handsontable.default.languages.registerLanguageDictionary(dictionary);
|
1428
1450
|
var _default = dictionary;
|
package/languages/pl-PL.js
CHANGED
@@ -154,7 +154,18 @@ const dictionary = {
|
|
154
154
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Wartość',
|
155
155
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Druga wartość',
|
156
156
|
[C.CHECKBOX_CHECKED]: 'Zaznaczony',
|
157
|
-
[C.CHECKBOX_UNCHECKED]: 'Odznaczony'
|
157
|
+
[C.CHECKBOX_UNCHECKED]: 'Odznaczony',
|
158
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Naciśnij ENTER aby rozwinąć kolumnę.',
|
159
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Naciśnij ENTER aby zwinąć kolumnę.',
|
160
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Naciśnij ENTER aby zmienić sortowanie.',
|
161
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Kolejność w sortowaniu po wielu kolumnach:',
|
162
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Naciśnij CTRL/CMD+ENTER aby otworzyć menu kontekstowe.',
|
163
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'Następna kolumna jest ukryta.',
|
164
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'Poprzednia kolumna jest ukryta.',
|
165
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Naciśnij ENTER aby rozwinąć wiersz.',
|
166
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Naciśnij ENTER aby zwinąć wiersz.',
|
167
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'Następny wiersz jest ukryty.',
|
168
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'Poprzedni wiersz jest ukryty.'
|
158
169
|
};
|
159
170
|
_handsontable.default.languages.registerLanguageDictionary(dictionary);
|
160
171
|
var _default = dictionary;
|
package/languages/pl-PL.mjs
CHANGED
@@ -86,7 +86,18 @@ const dictionary = {
|
|
86
86
|
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Wartość',
|
87
87
|
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Druga wartość',
|
88
88
|
[C.CHECKBOX_CHECKED]: 'Zaznaczony',
|
89
|
-
[C.CHECKBOX_UNCHECKED]: 'Odznaczony'
|
89
|
+
[C.CHECKBOX_UNCHECKED]: 'Odznaczony',
|
90
|
+
[C.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN]: 'Naciśnij ENTER aby rozwinąć kolumnę.',
|
91
|
+
[C.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN]: 'Naciśnij ENTER aby zwinąć kolumnę.',
|
92
|
+
[C.COLUMN_HEADER_DESCRIPTION_SORT_ROWS]: 'Naciśnij ENTER aby zmienić sortowanie.',
|
93
|
+
[C.COLUMN_HEADER_LABEL_MULTI_COLUMN_SORT_ORDER]: 'Kolejność w sortowaniu po wielu kolumnach:',
|
94
|
+
[C.COLUMN_HEADER_LABEL_OPEN_MENU]: 'Naciśnij CTRL/CMD+ENTER aby otworzyć menu kontekstowe.',
|
95
|
+
[C.COLUMN_HEADER_LABEL_BEFORE_HIDDEN_COLUMN]: 'Następna kolumna jest ukryta.',
|
96
|
+
[C.COLUMN_HEADER_LABEL_AFTER_HIDDEN_COLUMN]: 'Poprzednia kolumna jest ukryta.',
|
97
|
+
[C.ROW_HEADER_DESCRIPTION_EXPAND_ROW]: 'Naciśnij ENTER aby rozwinąć wiersz.',
|
98
|
+
[C.ROW_HEADER_DESCRIPTION_COLLAPSE_ROW]: 'Naciśnij ENTER aby zwinąć wiersz.',
|
99
|
+
[C.ROW_HEADER_LABEL_BEFORE_HIDDEN_ROW]: 'Następny wiersz jest ukryty.',
|
100
|
+
[C.ROW_HEADER_LABEL_AFTER_HIDDEN_ROW]: 'Poprzedni wiersz jest ukryty.'
|
90
101
|
};
|
91
102
|
Handsontable.languages.registerLanguageDictionary(dictionary);
|
92
103
|
export default dictionary;
|
package/package.json
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
"url": "https://github.com/handsontable/handsontable/issues"
|
11
11
|
},
|
12
12
|
"author": "Handsoncode <hello@handsontable.com>",
|
13
|
-
"version": "0.0.0-next-
|
13
|
+
"version": "0.0.0-next-42d5bd7-20231027",
|
14
14
|
"main": "index",
|
15
15
|
"module": "index.mjs",
|
16
16
|
"jsnext:main": "index.mjs",
|
@@ -11,6 +11,7 @@ var _element = require("../../helpers/dom/element");
|
|
11
11
|
var _eventManager = _interopRequireDefault(require("../../eventManager"));
|
12
12
|
var _event = require("../../helpers/dom/event");
|
13
13
|
var _a11y = require("../../helpers/a11y");
|
14
|
+
var _constants = require("../../i18n/constants");
|
14
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15
16
|
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
16
17
|
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
@@ -520,7 +521,7 @@ class CollapsibleColumns extends _base.BasePlugin {
|
|
520
521
|
|
521
522
|
// Add ARIA tags
|
522
523
|
if (isAriaTagsEnabled) {
|
523
|
-
(0, _element.setAttribute)(TH,
|
524
|
+
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(false), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN))]);
|
524
525
|
}
|
525
526
|
} else {
|
526
527
|
(0, _element.addClass)(collapsibleElement, 'expanded');
|
@@ -528,7 +529,7 @@ class CollapsibleColumns extends _base.BasePlugin {
|
|
528
529
|
|
529
530
|
// Add ARIA tags
|
530
531
|
if (isAriaTagsEnabled) {
|
531
|
-
(0, _element.setAttribute)(TH,
|
532
|
+
(0, _element.setAttribute)(TH, [(0, _a11y.A11Y_EXPANDED)(true), (0, _a11y.A11Y_DESCRIPTION)(this.hot.getTranslatedPhrase(_constants.COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN))]);
|
532
533
|
}
|
533
534
|
}
|
534
535
|
if (isAriaTagsEnabled) {
|
@@ -17,7 +17,8 @@ import { warn } from "../../helpers/console.mjs";
|
|
17
17
|
import { addClass, hasClass, removeClass, fastInnerText, removeAttribute, setAttribute } from "../../helpers/dom/element.mjs";
|
18
18
|
import EventManager from "../../eventManager.mjs";
|
19
19
|
import { stopImmediatePropagation } from "../../helpers/dom/event.mjs";
|
20
|
-
import { A11Y_EXPANDED, A11Y_HIDDEN } from "../../helpers/a11y.mjs";
|
20
|
+
import { A11Y_DESCRIPTION, A11Y_EXPANDED, A11Y_HIDDEN } from "../../helpers/a11y.mjs";
|
21
|
+
import { COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN, COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN } from "../../i18n/constants.mjs";
|
21
22
|
export const PLUGIN_KEY = 'collapsibleColumns';
|
22
23
|
export const PLUGIN_PRIORITY = 290;
|
23
24
|
const SETTING_KEYS = ['nestedHeaders'];
|
@@ -514,7 +515,7 @@ export class CollapsibleColumns extends BasePlugin {
|
|
514
515
|
|
515
516
|
// Add ARIA tags
|
516
517
|
if (isAriaTagsEnabled) {
|
517
|
-
setAttribute(TH,
|
518
|
+
setAttribute(TH, [A11Y_EXPANDED(false), A11Y_DESCRIPTION(this.hot.getTranslatedPhrase(COLUMN_HEADER_DESCRIPTION_EXPAND_COLUMN))]);
|
518
519
|
}
|
519
520
|
} else {
|
520
521
|
addClass(collapsibleElement, 'expanded');
|
@@ -522,7 +523,7 @@ export class CollapsibleColumns extends BasePlugin {
|
|
522
523
|
|
523
524
|
// Add ARIA tags
|
524
525
|
if (isAriaTagsEnabled) {
|
525
|
-
setAttribute(TH,
|
526
|
+
setAttribute(TH, [A11Y_EXPANDED(true), A11Y_DESCRIPTION(this.hot.getTranslatedPhrase(COLUMN_HEADER_DESCRIPTION_COLLAPSE_COLUMN))]);
|
526
527
|
}
|
527
528
|
}
|
528
529
|
if (isAriaTagsEnabled) {
|
@@ -16,6 +16,7 @@ var _domHelpers = require("./domHelpers");
|
|
16
16
|
var _rootComparator = require("./rootComparator");
|
17
17
|
var _sortService = require("./sortService");
|
18
18
|
var _a11y = require("../../helpers/a11y");
|
19
|
+
var _constants = require("../../i18n/constants");
|
19
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
20
21
|
const PLUGIN_KEY = 'columnSorting';
|
21
22
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
@@ -26,6 +27,7 @@ exports.APPEND_COLUMN_CONFIG_STRATEGY = APPEND_COLUMN_CONFIG_STRATEGY;
|
|
26
27
|
const REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
|
27
28
|
exports.REPLACE_COLUMN_CONFIG_STRATEGY = REPLACE_COLUMN_CONFIG_STRATEGY;
|
28
29
|
const SHORTCUTS_GROUP = PLUGIN_KEY;
|
30
|
+
const SORTING_INDICATOR_CLASS = 'columnSortingIndicator';
|
29
31
|
(0, _sortService.registerRootComparator)(PLUGIN_KEY, _rootComparator.rootComparator);
|
30
32
|
_pluginHooks.default.getSingleton().register('beforeColumnSort');
|
31
33
|
_pluginHooks.default.getSingleton().register('afterColumnSort');
|
@@ -644,12 +646,14 @@ class ColumnSorting extends _base.BasePlugin {
|
|
644
646
|
return;
|
645
647
|
}
|
646
648
|
const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
|
649
|
+
const ariaTags = this.hot.getSettings().ariaTags;
|
647
650
|
const showSortIndicator = pluginSettingsForColumn.indicator;
|
648
651
|
const headerActionEnabled = pluginSettingsForColumn.headerAction;
|
652
|
+
const currentSortState = this.columnStatesManager.getSortOrderOfColumn(column);
|
649
653
|
this.updateHeaderClasses(headerSpanElement, this.columnStatesManager, column, showSortIndicator, headerActionEnabled);
|
650
|
-
|
651
|
-
|
652
|
-
(0, _element.setAttribute)(TH,
|
654
|
+
this.updateSortingIndicator(column, headerSpanElement);
|
655
|
+
if (ariaTags) {
|
656
|
+
(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))]);
|
653
657
|
}
|
654
658
|
}
|
655
659
|
|
@@ -670,6 +674,28 @@ class ColumnSorting extends _base.BasePlugin {
|
|
670
674
|
}
|
671
675
|
}
|
672
676
|
|
677
|
+
/**
|
678
|
+
* Update sorting indicator.
|
679
|
+
*
|
680
|
+
* @private
|
681
|
+
* @param {number} column Visual column index.
|
682
|
+
* @param {HTMLElement} headerSpanElement Header span element.
|
683
|
+
*/
|
684
|
+
updateSortingIndicator(column, headerSpanElement) {
|
685
|
+
const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
|
686
|
+
const ariaTags = this.hot.getSettings().ariaTags;
|
687
|
+
const showSortIndicator = pluginSettingsForColumn.indicator;
|
688
|
+
const isColumnSorted = this.columnStatesManager.isColumnSorted(column);
|
689
|
+
const indicatorElement = headerSpanElement.querySelector(`.${SORTING_INDICATOR_CLASS}`);
|
690
|
+
if (showSortIndicator && isColumnSorted && !indicatorElement) {
|
691
|
+
(0, _element.appendElement)(headerSpanElement, {
|
692
|
+
tagName: 'div',
|
693
|
+
className: SORTING_INDICATOR_CLASS,
|
694
|
+
attributes: ariaTags ? [(0, _a11y.A11Y_HIDDEN)()] : []
|
695
|
+
});
|
696
|
+
}
|
697
|
+
}
|
698
|
+
|
673
699
|
/**
|
674
700
|
* Overwriting base plugin's `onUpdateSettings` method. Please keep in mind that `onAfterUpdateSettings` isn't called
|
675
701
|
* for `updateSettings` in specific situations.
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import "core-js/modules/es.array.push.js";
|
2
|
-
import { addClass, removeClass, setAttribute } from "../../helpers/dom/element.mjs";
|
2
|
+
import { addClass, appendElement, removeClass, setAttribute } from "../../helpers/dom/element.mjs";
|
3
3
|
import { isUndefined, isDefined } from "../../helpers/mixed.mjs";
|
4
4
|
import { isObject } from "../../helpers/object.mjs";
|
5
5
|
import { isFunction } from "../../helpers/function.mjs";
|
@@ -12,12 +12,14 @@ import { getNextSortOrder, areValidSortStates, getHeaderSpanElement, isFirstLeve
|
|
12
12
|
import { getClassesToRemove, getClassesToAdd } from "./domHelpers.mjs";
|
13
13
|
import { rootComparator } from "./rootComparator.mjs";
|
14
14
|
import { registerRootComparator, sort } from "./sortService/index.mjs";
|
15
|
-
import { A11Y_SORT } from "../../helpers/a11y.mjs";
|
15
|
+
import { A11Y_DESCRIPTION, A11Y_HIDDEN, A11Y_SORT } from "../../helpers/a11y.mjs";
|
16
|
+
import { COLUMN_HEADER_DESCRIPTION_SORT_ROWS } from "../../i18n/constants.mjs";
|
16
17
|
export const PLUGIN_KEY = 'columnSorting';
|
17
18
|
export const PLUGIN_PRIORITY = 50;
|
18
19
|
export const APPEND_COLUMN_CONFIG_STRATEGY = 'append';
|
19
20
|
export const REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
|
20
21
|
const SHORTCUTS_GROUP = PLUGIN_KEY;
|
22
|
+
const SORTING_INDICATOR_CLASS = 'columnSortingIndicator';
|
21
23
|
registerRootComparator(PLUGIN_KEY, rootComparator);
|
22
24
|
Hooks.getSingleton().register('beforeColumnSort');
|
23
25
|
Hooks.getSingleton().register('afterColumnSort');
|
@@ -636,12 +638,14 @@ export class ColumnSorting extends BasePlugin {
|
|
636
638
|
return;
|
637
639
|
}
|
638
640
|
const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
|
641
|
+
const ariaTags = this.hot.getSettings().ariaTags;
|
639
642
|
const showSortIndicator = pluginSettingsForColumn.indicator;
|
640
643
|
const headerActionEnabled = pluginSettingsForColumn.headerAction;
|
644
|
+
const currentSortState = this.columnStatesManager.getSortOrderOfColumn(column);
|
641
645
|
this.updateHeaderClasses(headerSpanElement, this.columnStatesManager, column, showSortIndicator, headerActionEnabled);
|
642
|
-
|
643
|
-
|
644
|
-
setAttribute(TH,
|
646
|
+
this.updateSortingIndicator(column, headerSpanElement);
|
647
|
+
if (ariaTags) {
|
648
|
+
setAttribute(TH, [A11Y_SORT(currentSortState ? `${currentSortState}ending` : 'none'), A11Y_DESCRIPTION(this.hot.getTranslatedPhrase(COLUMN_HEADER_DESCRIPTION_SORT_ROWS))]);
|
645
649
|
}
|
646
650
|
}
|
647
651
|
|
@@ -662,6 +666,28 @@ export class ColumnSorting extends BasePlugin {
|
|
662
666
|
}
|
663
667
|
}
|
664
668
|
|
669
|
+
/**
|
670
|
+
* Update sorting indicator.
|
671
|
+
*
|
672
|
+
* @private
|
673
|
+
* @param {number} column Visual column index.
|
674
|
+
* @param {HTMLElement} headerSpanElement Header span element.
|
675
|
+
*/
|
676
|
+
updateSortingIndicator(column, headerSpanElement) {
|
677
|
+
const pluginSettingsForColumn = this.getFirstCellSettings(column)[this.pluginKey];
|
678
|
+
const ariaTags = this.hot.getSettings().ariaTags;
|
679
|
+
const showSortIndicator = pluginSettingsForColumn.indicator;
|
680
|
+
const isColumnSorted = this.columnStatesManager.isColumnSorted(column);
|
681
|
+
const indicatorElement = headerSpanElement.querySelector(`.${SORTING_INDICATOR_CLASS}`);
|
682
|
+
if (showSortIndicator && isColumnSorted && !indicatorElement) {
|
683
|
+
appendElement(headerSpanElement, {
|
684
|
+
tagName: 'div',
|
685
|
+
className: SORTING_INDICATOR_CLASS,
|
686
|
+
attributes: ariaTags ? [A11Y_HIDDEN()] : []
|
687
|
+
});
|
688
|
+
}
|
689
|
+
}
|
690
|
+
|
665
691
|
/**
|
666
692
|
* Overwriting base plugin's `onUpdateSettings` method. Please keep in mind that `onAfterUpdateSettings` isn't called
|
667
693
|
* for `updateSettings` in specific situations.
|
@@ -5,6 +5,8 @@ exports.createMenuItemRenderer = createMenuItemRenderer;
|
|
5
5
|
var _utils = require("./utils");
|
6
6
|
var _element = require("../../../helpers/dom/element");
|
7
7
|
var _a11y = require("../../../helpers/a11y");
|
8
|
+
const SUBMENU_INDICATOR_CLASSNAME = 'submenuIndicator';
|
9
|
+
|
8
10
|
/**
|
9
11
|
* Creates the menu renderer function.
|
10
12
|
*
|
@@ -37,6 +39,16 @@ function createMenuItemRenderer(mainTableHot) {
|
|
37
39
|
const isFocusable = !(0, _utils.isItemDisabled)(item, mainTableHot) && !(0, _utils.isItemSelectionDisabled)(item) && !(0, _utils.isItemSeparator)(item);
|
38
40
|
(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)] : [])]);
|
39
41
|
}
|
42
|
+
if ((0, _utils.isItemSubMenu)(item)) {
|
43
|
+
const submenuIndicatorElement = TD.querySelector('.submenuIndicator');
|
44
|
+
if (!submenuIndicatorElement) {
|
45
|
+
(0, _element.appendElement)(TD, {
|
46
|
+
tagName: 'div',
|
47
|
+
attributes: mainTableHot.getSettings().ariaTags ? [(0, _a11y.A11Y_HIDDEN)()] : [],
|
48
|
+
className: SUBMENU_INDICATOR_CLASSNAME
|
49
|
+
});
|
50
|
+
}
|
51
|
+
}
|
40
52
|
TD.className = '';
|
41
53
|
TD.appendChild(wrapper);
|
42
54
|
if ((0, _utils.isItemSeparator)(item)) {
|