handsontable 0.0.0-next-50e428d-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.

Files changed (84) hide show
  1. package/3rdparty/walkontable/src/renderer/columnHeaders.js +3 -0
  2. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +4 -1
  3. package/3rdparty/walkontable/src/renderer/rowHeaders.js +3 -0
  4. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +4 -1
  5. package/base.js +2 -2
  6. package/base.mjs +2 -2
  7. package/core.js +1 -1
  8. package/core.mjs +1 -1
  9. package/dist/handsontable.css +45 -63
  10. package/dist/handsontable.full.css +45 -63
  11. package/dist/handsontable.full.js +3599 -2080
  12. package/dist/handsontable.full.min.css +5 -5
  13. package/dist/handsontable.full.min.js +70 -63
  14. package/dist/handsontable.js +3601 -2082
  15. package/dist/handsontable.min.css +5 -5
  16. package/dist/handsontable.min.js +25 -18
  17. package/dist/languages/all.js +24 -2
  18. package/dist/languages/all.min.js +1 -1
  19. package/dist/languages/en-US.js +12 -1
  20. package/dist/languages/en-US.min.js +1 -1
  21. package/dist/languages/pl-PL.js +12 -1
  22. package/dist/languages/pl-PL.min.js +1 -1
  23. package/helpers/a11y.js +2 -0
  24. package/helpers/a11y.mjs +1 -0
  25. package/helpers/dom/element.js +29 -0
  26. package/helpers/dom/element.mjs +28 -0
  27. package/helpers/mixed.js +1 -1
  28. package/helpers/mixed.mjs +1 -1
  29. package/i18n/constants.js +27 -1
  30. package/i18n/constants.mjs +14 -1
  31. package/i18n/languages/en-US.js +12 -1
  32. package/i18n/languages/en-US.mjs +12 -1
  33. package/i18n/languages/pl-PL.js +12 -1
  34. package/i18n/languages/pl-PL.mjs +12 -1
  35. package/languages/all.js +24 -2
  36. package/languages/en-US.js +12 -1
  37. package/languages/en-US.mjs +12 -1
  38. package/languages/index.js +24 -2
  39. package/languages/pl-PL.js +12 -1
  40. package/languages/pl-PL.mjs +12 -1
  41. package/package.json +1 -1
  42. package/pluginHooks.d.ts +28 -6
  43. package/pluginHooks.js +116 -62
  44. package/pluginHooks.mjs +116 -62
  45. package/plugins/collapsibleColumns/collapsibleColumns.js +3 -2
  46. package/plugins/collapsibleColumns/collapsibleColumns.mjs +4 -3
  47. package/plugins/columnSorting/columnSorting.js +29 -3
  48. package/plugins/columnSorting/columnSorting.mjs +31 -5
  49. package/plugins/contextMenu/menu/menuItemRenderer.js +12 -0
  50. package/plugins/contextMenu/menu/menuItemRenderer.mjs +14 -2
  51. package/plugins/copyPaste/clipboardData/clipboardData.js +517 -0
  52. package/plugins/copyPaste/clipboardData/clipboardData.mjs +512 -0
  53. package/plugins/copyPaste/clipboardData/copyClipboardData.js +69 -0
  54. package/plugins/copyPaste/clipboardData/copyClipboardData.mjs +65 -0
  55. package/plugins/copyPaste/clipboardData/index.js +9 -0
  56. package/plugins/copyPaste/clipboardData/index.mjs +4 -0
  57. package/plugins/copyPaste/clipboardData/pasteClipboardData.js +81 -0
  58. package/plugins/copyPaste/clipboardData/pasteClipboardData.mjs +77 -0
  59. package/plugins/copyPaste/copyPaste.js +38 -92
  60. package/plugins/copyPaste/copyPaste.mjs +40 -94
  61. package/plugins/dropdownMenu/dropdownMenu.js +2 -1
  62. package/plugins/dropdownMenu/dropdownMenu.mjs +3 -2
  63. package/plugins/filters/ui/input.js +0 -3
  64. package/plugins/filters/ui/input.mjs +0 -3
  65. package/plugins/filters/ui/select.js +6 -0
  66. package/plugins/filters/ui/select.mjs +6 -0
  67. package/plugins/hiddenColumns/hiddenColumns.js +48 -3
  68. package/plugins/hiddenColumns/hiddenColumns.mjs +47 -2
  69. package/plugins/hiddenRows/hiddenRows.js +48 -3
  70. package/plugins/hiddenRows/hiddenRows.mjs +47 -2
  71. package/plugins/multiColumnSorting/multiColumnSorting.js +21 -0
  72. package/plugins/multiColumnSorting/multiColumnSorting.mjs +22 -1
  73. package/plugins/nestedHeaders/nestedHeaders.js +21 -22
  74. package/plugins/nestedHeaders/nestedHeaders.mjs +21 -22
  75. package/plugins/nestedRows/nestedRows.js +2 -1
  76. package/plugins/nestedRows/nestedRows.mjs +2 -1
  77. package/plugins/nestedRows/ui/headers.js +3 -3
  78. package/plugins/nestedRows/ui/headers.mjs +4 -4
  79. package/utils/parseTable.js +527 -83
  80. package/utils/parseTable.mjs +523 -82
  81. package/plugins/copyPaste/clipboardData.js +0 -18
  82. package/plugins/copyPaste/clipboardData.mjs +0 -14
  83. package/plugins/copyPaste/pasteEvent.js +0 -14
  84. package/plugins/copyPaste/pasteEvent.mjs +0 -9
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'];
@@ -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
  }
@@ -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-50e428d-20231026";
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-50e428d-20231026";
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;
@@ -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`;
@@ -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;
@@ -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;
@@ -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;
@@ -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;
@@ -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;
@@ -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;
@@ -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;
@@ -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;
@@ -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-50e428d-20231026",
13
+ "version": "0.0.0-next-42d5bd7-20231027",
14
14
  "main": "index",
15
15
  "module": "index.mjs",
16
16
  "jsnext:main": "index.mjs",
package/pluginHooks.d.ts CHANGED
@@ -49,6 +49,7 @@ interface HookHighlightRowHeaderMeta {
49
49
  selectionHeight: number;
50
50
  classNames: string[];
51
51
  }
52
+
52
53
  interface HookHighlightColumnHeaderMeta {
53
54
  selectionType: string;
54
55
  columnCursor: number;
@@ -56,6 +57,27 @@ interface HookHighlightColumnHeaderMeta {
56
57
  classNames: string[];
57
58
  }
58
59
 
60
+ interface ClipboardData {
61
+ removeRows: (rows: number[]) => void;
62
+ removeColumns: (columns: number[]) => void;
63
+ insertAtRow: (rowIndex: number, values: any[]) => void;
64
+ insertAtColumn: (columnIndex: number, values: any[]) => void;
65
+ getCellAt: (row: number, col: number) => string;
66
+ setCellAt: (row: number, column: number, value: any) => void;
67
+ getData: () => any[][];
68
+ getMetaInfo: () => GridSettings;
69
+ getType: () => 'handsontable' | 'table' | 'unrecognizable';
70
+ }
71
+
72
+ interface PasteClipboardData extends ClipboardData {
73
+ getType: () => 'handsontable' | 'table' | 'unrecognizable';
74
+ }
75
+
76
+ interface CopyClipboardData extends ClipboardData {
77
+ getRanges: () => RangeType[];
78
+ getType: () => 'handsontable';
79
+ }
80
+
59
81
  export interface Events {
60
82
  afterAddChild?: (parent: RowObject, element: RowObject | undefined, index: number | undefined) => void;
61
83
  afterAutofill?: (fillData: CellValue[][], sourceRange: CellRange, targetRange: CellRange, direction: 'up' | 'down' | 'left' | 'right') => void;
@@ -74,11 +96,11 @@ export interface Events {
74
96
  afterContextMenuDefaultOptions?: (predefinedItems: Array<ContextMenuPredefinedMenuItemKey | ContextMenuMenuItemConfig>) => void;
75
97
  afterContextMenuHide?: (context: ContextMenu) => void;
76
98
  afterContextMenuShow?: (context: ContextMenu) => void;
77
- afterCopy?: (data: CellValue[][], coords: RangeType[], copiedHeadersCount: { columnHeadersCount: number }) => void;
99
+ afterCopy?: (clipboardData: CopyClipboardData) => void;
78
100
  afterCopyLimit?: (selectedRows: number, selectedColumns: number, copyRowsLimit: number, copyColumnsLimit: number) => void;
79
101
  afterCreateCol?: (index: number, amount: number, source?: ChangeSource) => void;
80
102
  afterCreateRow?: (index: number, amount: number, source?: ChangeSource) => void;
81
- afterCut?: (data: CellValue[][], coords: RangeType[]) => void;
103
+ afterCut?: (clipboardData: CopyClipboardData) => void;
82
104
  afterDeselect?: () => void;
83
105
  afterDestroy?: () => void;
84
106
  afterDetachChild?: (parent: RowObject, element: RowObject) => void;
@@ -113,7 +135,7 @@ export interface Events {
113
135
  afterOnCellMouseOut?: (event: MouseEvent, coords: CellCoords, TD: HTMLTableCellElement) => void;
114
136
  afterOnCellMouseOver?: (event: MouseEvent, coords: CellCoords, TD: HTMLTableCellElement) => void;
115
137
  afterOnCellMouseUp?: (event: MouseEvent, coords: CellCoords, TD: HTMLTableCellElement) => void;
116
- afterPaste?: (data: CellValue[][], coords: RangeType[]) => void;
138
+ afterPaste?: (clipboardData: PasteClipboardData) => void;
117
139
  afterPluginsInitialized?: () => void;
118
140
  afterRedo?: (action: UndoRedoAction) => void;
119
141
  afterRedoStackChange?: (undoneActionsBefore: UndoRedoAction[], undoneActionsAfter: UndoRedoAction[]) => void;
@@ -172,10 +194,10 @@ export interface Events {
172
194
  beforeColumnUnfreeze?: (columnIndex: number, isUnfreezingPerformed: boolean) => void | boolean;
173
195
  beforeContextMenuSetItems?: (menuItems: ContextMenuMenuItemConfig[]) => void;
174
196
  beforeContextMenuShow?: (context: ContextMenu) => void;
175
- beforeCopy?: (data: CellValue[][], coords: RangeType[], copiedHeadersCount: { columnHeadersCount: number }) => void | boolean;
197
+ beforeCopy?: (clipboardData: CopyClipboardData) => void | boolean;
176
198
  beforeCreateCol?: (index: number, amount: number, source?: ChangeSource) => void | boolean;
177
199
  beforeCreateRow?: (index: number, amount: number, source?: ChangeSource) => void | boolean;
178
- beforeCut?: (data: CellValue[][], coords: RangeType[]) => void | boolean;
200
+ beforeCut?: (clipboardData: CopyClipboardData) => void | boolean;
179
201
  beforeDetachChild?: (parent: RowObject, element: RowObject) => void;
180
202
  beforeDrawBorders?: (corners: number[], borderClassName: 'current' | 'area' | 'highlight' | undefined) => void;
181
203
  beforeDropdownMenuSetItems?: (menuItems: ContextMenuMenuItemConfig[]) => void;
@@ -197,7 +219,7 @@ export interface Events {
197
219
  beforeOnCellMouseOut?: (event: MouseEvent, coords: CellCoords, TD: HTMLTableCellElement) => void;
198
220
  beforeOnCellMouseOver?: (event: MouseEvent, coords: CellCoords, TD: HTMLTableCellElement, controller: SelectionController) => void;
199
221
  beforeOnCellMouseUp?: (event: MouseEvent, coords: CellCoords, TD: HTMLTableCellElement) => void;
200
- beforePaste?: (data: CellValue[][], coords: RangeType[]) => void | boolean;
222
+ beforePaste?: (clipboardData: PasteClipboardData) => boolean | void;
201
223
  beforeRedo?: (action: UndoRedoAction) => void;
202
224
  beforeRedoStackChange?: (undoneActions: UndoRedoAction[]) => void;
203
225
  beforeRefreshDimensions?: (previousDimensions: object, currentDimensions: object, actionPossible: boolean) => boolean | void;