handsontable 0.0.0-next-7026906-20231107 → 0.0.0-next-7b93b7d-20231107

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 (316) hide show
  1. package/3rdparty/SheetClip/SheetClip.js +2 -2
  2. package/3rdparty/SheetClip/SheetClip.mjs +2 -2
  3. package/3rdparty/autoResize/autoResize.js +2 -2
  4. package/3rdparty/autoResize/autoResize.mjs +2 -2
  5. package/3rdparty/walkontable/src/calculator/viewportColumns.js +108 -85
  6. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +108 -85
  7. package/3rdparty/walkontable/src/calculator/viewportRows.js +60 -52
  8. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +60 -52
  9. package/3rdparty/walkontable/src/core/clone.js +6 -0
  10. package/3rdparty/walkontable/src/core/clone.mjs +6 -0
  11. package/3rdparty/walkontable/src/event.js +125 -74
  12. package/3rdparty/walkontable/src/event.mjs +125 -74
  13. package/3rdparty/walkontable/src/filter/column.js +16 -0
  14. package/3rdparty/walkontable/src/filter/column.mjs +16 -0
  15. package/3rdparty/walkontable/src/filter/row.js +16 -0
  16. package/3rdparty/walkontable/src/filter/row.mjs +16 -0
  17. package/3rdparty/walkontable/src/overlay/bottom.js +1 -1
  18. package/3rdparty/walkontable/src/overlay/bottom.mjs +1 -1
  19. package/3rdparty/walkontable/src/overlay/top.js +1 -1
  20. package/3rdparty/walkontable/src/overlay/top.mjs +1 -1
  21. package/3rdparty/walkontable/src/renderer/_base.js +12 -5
  22. package/3rdparty/walkontable/src/renderer/_base.mjs +12 -5
  23. package/3rdparty/walkontable/src/renderer/cells.js +6 -2
  24. package/3rdparty/walkontable/src/renderer/cells.mjs +6 -2
  25. package/3rdparty/walkontable/src/renderer/rowHeaders.js +6 -2
  26. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +6 -2
  27. package/3rdparty/walkontable/src/renderer/rows.js +5 -0
  28. package/3rdparty/walkontable/src/renderer/rows.mjs +5 -0
  29. package/3rdparty/walkontable/src/renderer/table.js +24 -17
  30. package/3rdparty/walkontable/src/renderer/table.mjs +24 -17
  31. package/3rdparty/walkontable/src/scroll.js +2 -2
  32. package/3rdparty/walkontable/src/scroll.mjs +2 -2
  33. package/3rdparty/walkontable/src/selection/border/border.js +1 -1
  34. package/3rdparty/walkontable/src/selection/border/border.mjs +1 -1
  35. package/3rdparty/walkontable/src/settings.js +10 -10
  36. package/3rdparty/walkontable/src/settings.mjs +10 -10
  37. package/3rdparty/walkontable/src/table.js +3 -3
  38. package/3rdparty/walkontable/src/table.mjs +3 -3
  39. package/3rdparty/walkontable/src/utils/column.js +19 -4
  40. package/3rdparty/walkontable/src/utils/column.mjs +19 -4
  41. package/3rdparty/walkontable/src/utils/nodesPool.js +5 -0
  42. package/3rdparty/walkontable/src/utils/nodesPool.mjs +5 -0
  43. package/3rdparty/walkontable/src/utils/orderView/view.js +13 -6
  44. package/3rdparty/walkontable/src/utils/orderView/view.mjs +13 -6
  45. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +9 -6
  46. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +9 -6
  47. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +7 -4
  48. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +7 -4
  49. package/3rdparty/walkontable/src/utils/row.js +14 -2
  50. package/3rdparty/walkontable/src/utils/row.mjs +14 -2
  51. package/3rdparty/walkontable/src/viewport.js +9 -9
  52. package/3rdparty/walkontable/src/viewport.mjs +9 -9
  53. package/base.js +2 -2
  54. package/base.mjs +2 -2
  55. package/core.js +25 -25
  56. package/core.mjs +25 -25
  57. package/dataMap/dataMap.js +99 -90
  58. package/dataMap/dataMap.mjs +99 -90
  59. package/dataMap/dataSource.js +14 -8
  60. package/dataMap/dataSource.mjs +14 -8
  61. package/dataMap/metaManager/lazyFactoryMap.js +19 -7
  62. package/dataMap/metaManager/lazyFactoryMap.mjs +19 -7
  63. package/dataMap/metaManager/metaLayers/cellMeta.js +8 -3
  64. package/dataMap/metaManager/metaLayers/cellMeta.mjs +8 -3
  65. package/dataMap/metaManager/metaLayers/columnMeta.js +7 -1
  66. package/dataMap/metaManager/metaLayers/columnMeta.mjs +7 -1
  67. package/dataMap/metaManager/metaLayers/globalMeta.js +6 -1
  68. package/dataMap/metaManager/metaLayers/globalMeta.mjs +6 -1
  69. package/dataMap/metaManager/metaLayers/tableMeta.js +6 -2
  70. package/dataMap/metaManager/metaLayers/tableMeta.mjs +6 -2
  71. package/dataMap/metaManager/metaSchema.js +55 -55
  72. package/dataMap/metaManager/metaSchema.mjs +55 -55
  73. package/dataMap/metaManager/mods/dynamicCellMeta.js +7 -2
  74. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +7 -2
  75. package/dataMap/metaManager/mods/extendMetaProperties.js +8 -4
  76. package/dataMap/metaManager/mods/extendMetaProperties.mjs +8 -4
  77. package/dataMap/metaManager/utils.js +2 -2
  78. package/dataMap/metaManager/utils.mjs +2 -2
  79. package/dist/handsontable.css +2 -2
  80. package/dist/handsontable.full.css +2 -2
  81. package/dist/handsontable.full.js +7244 -6347
  82. package/dist/handsontable.full.min.css +2 -2
  83. package/dist/handsontable.full.min.js +120 -120
  84. package/dist/handsontable.js +7243 -6346
  85. package/dist/handsontable.min.css +2 -2
  86. package/dist/handsontable.min.js +28 -28
  87. package/editorManager.js +105 -95
  88. package/editorManager.mjs +105 -95
  89. package/editors/autocompleteEditor/autocompleteEditor.js +47 -46
  90. package/editors/autocompleteEditor/autocompleteEditor.mjs +46 -45
  91. package/editors/baseEditor/baseEditor.js +23 -26
  92. package/editors/baseEditor/baseEditor.mjs +23 -26
  93. package/editors/dateEditor/dateEditor.js +24 -15
  94. package/editors/dateEditor/dateEditor.mjs +24 -15
  95. package/editors/dropdownEditor/dropdownEditor.js +1 -1
  96. package/editors/dropdownEditor/dropdownEditor.mjs +1 -1
  97. package/editors/handsontableEditor/handsontableEditor.js +4 -4
  98. package/editors/handsontableEditor/handsontableEditor.mjs +4 -4
  99. package/editors/textEditor/textEditor.js +23 -17
  100. package/editors/textEditor/textEditor.mjs +24 -18
  101. package/eventManager.js +8 -0
  102. package/eventManager.mjs +8 -0
  103. package/helpers/array.js +2 -2
  104. package/helpers/array.mjs +2 -2
  105. package/helpers/dom/element.js +7 -7
  106. package/helpers/dom/element.mjs +7 -7
  107. package/helpers/function.js +1 -1
  108. package/helpers/function.mjs +1 -1
  109. package/helpers/mixed.js +1 -1
  110. package/helpers/mixed.mjs +1 -1
  111. package/helpers/object.js +4 -4
  112. package/helpers/object.mjs +4 -4
  113. package/helpers/string.js +1 -1
  114. package/helpers/string.mjs +1 -1
  115. package/package.json +1 -1
  116. package/pluginHooks.d.ts +0 -2
  117. package/pluginHooks.js +12 -3
  118. package/pluginHooks.mjs +12 -3
  119. package/plugins/autoColumnSize/autoColumnSize.js +141 -130
  120. package/plugins/autoColumnSize/autoColumnSize.mjs +140 -129
  121. package/plugins/autoRowSize/autoRowSize.js +112 -125
  122. package/plugins/autoRowSize/autoRowSize.mjs +110 -123
  123. package/plugins/autofill/autofill.js +97 -102
  124. package/plugins/autofill/autofill.mjs +96 -101
  125. package/plugins/base/base.js +57 -22
  126. package/plugins/base/base.mjs +56 -22
  127. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +29 -24
  128. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +28 -23
  129. package/plugins/collapsibleColumns/collapsibleColumns.js +104 -107
  130. package/plugins/collapsibleColumns/collapsibleColumns.mjs +102 -104
  131. package/plugins/columnSorting/columnSorting.js +105 -98
  132. package/plugins/columnSorting/columnSorting.mjs +104 -97
  133. package/plugins/columnSorting/columnStatesManager.js +12 -6
  134. package/plugins/columnSorting/columnStatesManager.mjs +12 -6
  135. package/plugins/columnSummary/columnSummary.js +71 -58
  136. package/plugins/columnSummary/columnSummary.mjs +70 -57
  137. package/plugins/columnSummary/endpoints.js +20 -14
  138. package/plugins/columnSummary/endpoints.mjs +20 -14
  139. package/plugins/comments/commentEditor.js +30 -2
  140. package/plugins/comments/commentEditor.mjs +30 -2
  141. package/plugins/comments/comments.js +158 -169
  142. package/plugins/comments/comments.mjs +157 -168
  143. package/plugins/comments/displaySwitch.js +7 -3
  144. package/plugins/comments/displaySwitch.mjs +7 -3
  145. package/plugins/contextMenu/commandExecutor.js +15 -2
  146. package/plugins/contextMenu/commandExecutor.mjs +15 -2
  147. package/plugins/contextMenu/contextMenu.js +91 -101
  148. package/plugins/contextMenu/contextMenu.mjs +90 -100
  149. package/plugins/contextMenu/itemsFactory.js +19 -4
  150. package/plugins/contextMenu/itemsFactory.mjs +19 -4
  151. package/plugins/contextMenu/menu/cursor.js +36 -0
  152. package/plugins/contextMenu/menu/cursor.mjs +36 -0
  153. package/plugins/contextMenu/menu/menu.js +57 -5
  154. package/plugins/contextMenu/menu/menu.mjs +57 -5
  155. package/plugins/copyPaste/copyPaste.js +74 -75
  156. package/plugins/copyPaste/copyPaste.mjs +74 -75
  157. package/plugins/customBorders/customBorders.js +49 -48
  158. package/plugins/customBorders/customBorders.mjs +48 -47
  159. package/plugins/dragToScroll/dragToScroll.js +50 -54
  160. package/plugins/dragToScroll/dragToScroll.mjs +49 -52
  161. package/plugins/dropdownMenu/dropdownMenu.js +132 -129
  162. package/plugins/dropdownMenu/dropdownMenu.mjs +132 -129
  163. package/plugins/exportFile/dataProvider.js +7 -2
  164. package/plugins/exportFile/dataProvider.mjs +7 -2
  165. package/plugins/exportFile/exportFile.js +1 -1
  166. package/plugins/exportFile/exportFile.mjs +1 -1
  167. package/plugins/exportFile/types/_base.js +14 -6
  168. package/plugins/exportFile/types/_base.mjs +14 -6
  169. package/plugins/filters/component/actionBar.js +9 -0
  170. package/plugins/filters/component/actionBar.mjs +9 -0
  171. package/plugins/filters/component/condition.js +13 -0
  172. package/plugins/filters/component/condition.mjs +13 -0
  173. package/plugins/filters/component/operators.js +9 -0
  174. package/plugins/filters/component/operators.mjs +9 -0
  175. package/plugins/filters/component/value.js +9 -0
  176. package/plugins/filters/component/value.mjs +9 -0
  177. package/plugins/filters/conditionCollection.js +9 -4
  178. package/plugins/filters/conditionCollection.mjs +9 -4
  179. package/plugins/filters/conditionUpdateObserver.js +53 -42
  180. package/plugins/filters/conditionUpdateObserver.mjs +53 -42
  181. package/plugins/filters/dataFilter.js +9 -3
  182. package/plugins/filters/dataFilter.mjs +9 -3
  183. package/plugins/filters/filters.js +184 -189
  184. package/plugins/filters/filters.mjs +182 -187
  185. package/plugins/filters/ui/_base.js +1 -1
  186. package/plugins/filters/ui/_base.mjs +1 -1
  187. package/plugins/filters/utils.js +1 -1
  188. package/plugins/filters/utils.mjs +1 -1
  189. package/plugins/formulas/engine/settings.js +1 -1
  190. package/plugins/formulas/engine/settings.mjs +1 -1
  191. package/plugins/formulas/formulas.js +684 -602
  192. package/plugins/formulas/formulas.mjs +682 -600
  193. package/plugins/hiddenColumns/hiddenColumns.js +174 -169
  194. package/plugins/hiddenColumns/hiddenColumns.mjs +173 -168
  195. package/plugins/hiddenRows/hiddenRows.js +170 -165
  196. package/plugins/hiddenRows/hiddenRows.mjs +169 -164
  197. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
  198. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  199. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
  200. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  201. package/plugins/manualColumnFreeze/manualColumnFreeze.js +67 -54
  202. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +64 -51
  203. package/plugins/manualColumnMove/manualColumnMove.js +287 -232
  204. package/plugins/manualColumnMove/manualColumnMove.mjs +286 -231
  205. package/plugins/manualColumnMove/ui/_base.js +9 -3
  206. package/plugins/manualColumnMove/ui/_base.mjs +9 -3
  207. package/plugins/manualColumnResize/manualColumnResize.js +291 -246
  208. package/plugins/manualColumnResize/manualColumnResize.mjs +290 -244
  209. package/plugins/manualRowMove/manualRowMove.js +223 -208
  210. package/plugins/manualRowMove/manualRowMove.mjs +222 -207
  211. package/plugins/manualRowMove/ui/_base.js +10 -5
  212. package/plugins/manualRowMove/ui/_base.mjs +10 -5
  213. package/plugins/manualRowResize/manualRowResize.js +254 -209
  214. package/plugins/manualRowResize/manualRowResize.mjs +253 -207
  215. package/plugins/mergeCells/calculations/autofill.js +9 -3
  216. package/plugins/mergeCells/calculations/autofill.mjs +9 -3
  217. package/plugins/mergeCells/calculations/selection.js +10 -4
  218. package/plugins/mergeCells/calculations/selection.mjs +10 -4
  219. package/plugins/mergeCells/cellCoords.js +16 -6
  220. package/plugins/mergeCells/cellCoords.mjs +16 -6
  221. package/plugins/mergeCells/cellsCollection.js +10 -4
  222. package/plugins/mergeCells/cellsCollection.mjs +10 -4
  223. package/plugins/mergeCells/mergeCells.js +582 -502
  224. package/plugins/mergeCells/mergeCells.mjs +580 -500
  225. package/plugins/multiColumnSorting/multiColumnSorting.js +13 -10
  226. package/plugins/multiColumnSorting/multiColumnSorting.mjs +13 -10
  227. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +16 -28
  228. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +16 -27
  229. package/plugins/nestedHeaders/nestedHeaders.js +542 -499
  230. package/plugins/nestedHeaders/nestedHeaders.mjs +554 -511
  231. package/plugins/nestedHeaders/stateManager/index.js +1 -1
  232. package/plugins/nestedHeaders/stateManager/index.mjs +1 -1
  233. package/plugins/nestedRows/data/dataManager.js +21 -15
  234. package/plugins/nestedRows/data/dataManager.mjs +21 -15
  235. package/plugins/nestedRows/nestedRows.js +326 -278
  236. package/plugins/nestedRows/nestedRows.mjs +325 -277
  237. package/plugins/nestedRows/ui/_base.js +7 -1
  238. package/plugins/nestedRows/ui/_base.mjs +7 -1
  239. package/plugins/nestedRows/ui/collapsing.js +2 -2
  240. package/plugins/nestedRows/ui/collapsing.mjs +2 -2
  241. package/plugins/nestedRows/ui/contextMenu.js +28 -18
  242. package/plugins/nestedRows/ui/contextMenu.mjs +28 -18
  243. package/plugins/nestedRows/utils/rowMoveController.js +12 -4
  244. package/plugins/nestedRows/utils/rowMoveController.mjs +12 -4
  245. package/plugins/persistentState/persistentState.js +14 -11
  246. package/plugins/persistentState/persistentState.mjs +14 -11
  247. package/plugins/persistentState/storage.js +11 -6
  248. package/plugins/persistentState/storage.mjs +11 -6
  249. package/plugins/registry.js +2 -2
  250. package/plugins/registry.mjs +2 -2
  251. package/plugins/search/search.js +57 -46
  252. package/plugins/search/search.mjs +56 -45
  253. package/plugins/touchScroll/touchScroll.js +102 -100
  254. package/plugins/touchScroll/touchScroll.mjs +100 -98
  255. package/plugins/trimRows/trimRows.js +33 -28
  256. package/plugins/trimRows/trimRows.mjs +32 -27
  257. package/plugins/undoRedo/undoRedo.js +2 -2
  258. package/plugins/undoRedo/undoRedo.mjs +2 -2
  259. package/renderers/autocompleteRenderer/autocompleteRenderer.js +11 -11
  260. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +11 -11
  261. package/renderers/baseRenderer/baseRenderer.js +2 -2
  262. package/renderers/baseRenderer/baseRenderer.mjs +2 -2
  263. package/renderers/checkboxRenderer/checkboxRenderer.js +23 -23
  264. package/renderers/checkboxRenderer/checkboxRenderer.mjs +23 -23
  265. package/renderers/dateRenderer/dateRenderer.js +4 -4
  266. package/renderers/dateRenderer/dateRenderer.mjs +4 -4
  267. package/renderers/handsontableRenderer/handsontableRenderer.js +4 -4
  268. package/renderers/handsontableRenderer/handsontableRenderer.mjs +4 -4
  269. package/renderers/htmlRenderer/htmlRenderer.js +4 -4
  270. package/renderers/htmlRenderer/htmlRenderer.mjs +4 -4
  271. package/renderers/numericRenderer/numericRenderer.js +3 -3
  272. package/renderers/numericRenderer/numericRenderer.mjs +3 -3
  273. package/renderers/passwordRenderer/passwordRenderer.js +3 -3
  274. package/renderers/passwordRenderer/passwordRenderer.mjs +3 -3
  275. package/renderers/selectRenderer/selectRenderer.js +4 -4
  276. package/renderers/selectRenderer/selectRenderer.mjs +4 -4
  277. package/renderers/textRenderer/textRenderer.js +5 -5
  278. package/renderers/textRenderer/textRenderer.mjs +5 -5
  279. package/renderers/timeRenderer/timeRenderer.js +3 -3
  280. package/renderers/timeRenderer/timeRenderer.mjs +3 -3
  281. package/selection/range.js +12 -2
  282. package/selection/range.mjs +12 -2
  283. package/selection/selection.js +3 -3
  284. package/selection/selection.mjs +3 -3
  285. package/tableView.js +208 -200
  286. package/tableView.mjs +208 -200
  287. package/translations/changesObservable/utils.js +2 -2
  288. package/translations/changesObservable/utils.mjs +2 -2
  289. package/translations/indexMapper.js +25 -22
  290. package/translations/indexMapper.mjs +25 -22
  291. package/translations/mapCollections/aggregatedCollection.js +8 -2
  292. package/translations/mapCollections/aggregatedCollection.mjs +8 -2
  293. package/translations/mapCollections/mapCollection.js +5 -2
  294. package/translations/mapCollections/mapCollection.mjs +5 -2
  295. package/translations/maps/indexMap.js +6 -1
  296. package/translations/maps/indexMap.mjs +6 -1
  297. package/translations/maps/utils/physicallyIndexed.js +2 -2
  298. package/translations/maps/utils/physicallyIndexed.mjs +2 -2
  299. package/utils/dataStructures/linkedList.js +10 -6
  300. package/utils/dataStructures/linkedList.mjs +10 -6
  301. package/utils/dataStructures/queue.js +1 -1
  302. package/utils/dataStructures/queue.mjs +1 -1
  303. package/utils/dataStructures/stack.js +1 -1
  304. package/utils/dataStructures/stack.mjs +1 -1
  305. package/utils/ghostTable.js +2 -2
  306. package/utils/ghostTable.mjs +2 -2
  307. package/utils/interval.js +73 -36
  308. package/utils/interval.mjs +73 -36
  309. package/utils/parseTable.js +1 -1
  310. package/utils/parseTable.mjs +1 -1
  311. package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
  312. package/validators/autocompleteValidator/autocompleteValidator.mjs +1 -1
  313. package/validators/dateValidator/dateValidator.js +1 -1
  314. package/validators/dateValidator/dateValidator.mjs +1 -1
  315. package/validators/numericValidator/numericValidator.js +1 -1
  316. package/validators/numericValidator/numericValidator.mjs +1 -1
@@ -1,6 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
+ require("core-js/modules/es.error.cause.js");
5
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
7
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4
8
  /**
5
9
  * Helper class for checking if element will fit at the desired side of cursor.
6
10
  *
@@ -9,6 +13,38 @@ exports.__esModule = true;
9
13
  */
10
14
  class Cursor {
11
15
  constructor(object, rootWindow) {
16
+ /**
17
+ * @type {number}
18
+ */
19
+ _defineProperty(this, "top", void 0);
20
+ /**
21
+ * @type {number}
22
+ */
23
+ _defineProperty(this, "topRelative", void 0);
24
+ /**
25
+ * @type {number}
26
+ */
27
+ _defineProperty(this, "left", void 0);
28
+ /**
29
+ * @type {number}
30
+ */
31
+ _defineProperty(this, "leftRelative", void 0);
32
+ /**
33
+ * @type {number}
34
+ */
35
+ _defineProperty(this, "scrollTop", void 0);
36
+ /**
37
+ * @type {number}
38
+ */
39
+ _defineProperty(this, "scrollLeft", void 0);
40
+ /**
41
+ * @type {number}
42
+ */
43
+ _defineProperty(this, "cellHeight", void 0);
44
+ /**
45
+ * @type {number}
46
+ */
47
+ _defineProperty(this, "cellWidth", void 0);
12
48
  const windowScrollTop = rootWindow.scrollY;
13
49
  const windowScrollLeft = rootWindow.scrollX;
14
50
  let top;
@@ -1,3 +1,7 @@
1
+ import "core-js/modules/es.error.cause.js";
2
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
3
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
4
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
1
5
  /**
2
6
  * Helper class for checking if element will fit at the desired side of cursor.
3
7
  *
@@ -6,6 +10,38 @@
6
10
  */
7
11
  export class Cursor {
8
12
  constructor(object, rootWindow) {
13
+ /**
14
+ * @type {number}
15
+ */
16
+ _defineProperty(this, "top", void 0);
17
+ /**
18
+ * @type {number}
19
+ */
20
+ _defineProperty(this, "topRelative", void 0);
21
+ /**
22
+ * @type {number}
23
+ */
24
+ _defineProperty(this, "left", void 0);
25
+ /**
26
+ * @type {number}
27
+ */
28
+ _defineProperty(this, "leftRelative", void 0);
29
+ /**
30
+ * @type {number}
31
+ */
32
+ _defineProperty(this, "scrollTop", void 0);
33
+ /**
34
+ * @type {number}
35
+ */
36
+ _defineProperty(this, "scrollLeft", void 0);
37
+ /**
38
+ * @type {number}
39
+ */
40
+ _defineProperty(this, "cellHeight", void 0);
41
+ /**
42
+ * @type {number}
43
+ */
44
+ _defineProperty(this, "cellWidth", void 0);
9
45
  const windowScrollTop = rootWindow.scrollY;
10
46
  const windowScrollLeft = rootWindow.scrollX;
11
47
  let top;
@@ -22,6 +22,9 @@ var _a11y = require("../../../helpers/a11y");
22
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
23
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
24
24
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
25
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
26
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
27
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
25
28
  function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
26
29
  function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
27
30
  function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
@@ -53,6 +56,60 @@ class Menu {
53
56
  */
54
57
  constructor(hotInstance, options) {
55
58
  var _this = this;
59
+ /**
60
+ * The Handsontable instance.
61
+ *
62
+ * @type {Core}
63
+ */
64
+ _defineProperty(this, "hot", void 0);
65
+ /**
66
+ * The Menu options.
67
+ *
68
+ * @type {object}
69
+ */
70
+ _defineProperty(this, "options", void 0);
71
+ /**
72
+ * @type {EventManager}
73
+ */
74
+ _defineProperty(this, "eventManager", new _eventManager.default(this));
75
+ /**
76
+ * The Menu container element.
77
+ *
78
+ * @type {HTMLElement}
79
+ */
80
+ _defineProperty(this, "container", void 0);
81
+ /**
82
+ * @type {Positioner}
83
+ */
84
+ _defineProperty(this, "positioner", void 0);
85
+ /**
86
+ * The instance of the Handsontable that is used as a menu.
87
+ *
88
+ * @type {Core}
89
+ */
90
+ _defineProperty(this, "hotMenu", null);
91
+ /**
92
+ * The collection of the Handsontable instances that are used as sub-menus.
93
+ *
94
+ * @type {object}
95
+ */
96
+ _defineProperty(this, "hotSubMenus", {});
97
+ /**
98
+ * If the menu acts as the sub-menu then this property contains the reference to the parent menu.
99
+ *
100
+ * @type {Menu}
101
+ */
102
+ _defineProperty(this, "parentMenu", void 0);
103
+ /**
104
+ * The menu items entries.
105
+ *
106
+ * @type {object[]}
107
+ */
108
+ _defineProperty(this, "menuItems", null);
109
+ /**
110
+ * @type {boolean}
111
+ */
112
+ _defineProperty(this, "origOutsideClickDeselects", null);
56
113
  /**
57
114
  * The controller module that allows modifying the menu item selection positions.
58
115
  *
@@ -81,14 +138,9 @@ class Menu {
81
138
  minWidth: MIN_WIDTH,
82
139
  container: this.hot.rootDocument.documentElement
83
140
  };
84
- this.eventManager = new _eventManager.default(this);
85
141
  this.container = this.createContainer(this.options.name);
86
142
  this.positioner = new _positioner.Positioner(this.options.keepInViewport);
87
- this.hotMenu = null;
88
- this.hotSubMenus = {};
89
143
  this.parentMenu = this.options.parent || null;
90
- this.menuItems = null;
91
- this.origOutsideClickDeselects = null;
92
144
  this.registerEvents();
93
145
  if (this.isSubMenu()) {
94
146
  this.addLocalHook('afterSelectionChange', function () {
@@ -2,6 +2,9 @@ import "core-js/modules/es.array.push.js";
2
2
  import "core-js/modules/es.error.cause.js";
3
3
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
4
4
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
5
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
7
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
5
8
  function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
6
9
  function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
7
10
  function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
@@ -49,6 +52,60 @@ export class Menu {
49
52
  */
50
53
  constructor(hotInstance, options) {
51
54
  var _this = this;
55
+ /**
56
+ * The Handsontable instance.
57
+ *
58
+ * @type {Core}
59
+ */
60
+ _defineProperty(this, "hot", void 0);
61
+ /**
62
+ * The Menu options.
63
+ *
64
+ * @type {object}
65
+ */
66
+ _defineProperty(this, "options", void 0);
67
+ /**
68
+ * @type {EventManager}
69
+ */
70
+ _defineProperty(this, "eventManager", new EventManager(this));
71
+ /**
72
+ * The Menu container element.
73
+ *
74
+ * @type {HTMLElement}
75
+ */
76
+ _defineProperty(this, "container", void 0);
77
+ /**
78
+ * @type {Positioner}
79
+ */
80
+ _defineProperty(this, "positioner", void 0);
81
+ /**
82
+ * The instance of the Handsontable that is used as a menu.
83
+ *
84
+ * @type {Core}
85
+ */
86
+ _defineProperty(this, "hotMenu", null);
87
+ /**
88
+ * The collection of the Handsontable instances that are used as sub-menus.
89
+ *
90
+ * @type {object}
91
+ */
92
+ _defineProperty(this, "hotSubMenus", {});
93
+ /**
94
+ * If the menu acts as the sub-menu then this property contains the reference to the parent menu.
95
+ *
96
+ * @type {Menu}
97
+ */
98
+ _defineProperty(this, "parentMenu", void 0);
99
+ /**
100
+ * The menu items entries.
101
+ *
102
+ * @type {object[]}
103
+ */
104
+ _defineProperty(this, "menuItems", null);
105
+ /**
106
+ * @type {boolean}
107
+ */
108
+ _defineProperty(this, "origOutsideClickDeselects", null);
52
109
  /**
53
110
  * The controller module that allows modifying the menu item selection positions.
54
111
  *
@@ -77,14 +134,9 @@ export class Menu {
77
134
  minWidth: MIN_WIDTH,
78
135
  container: this.hot.rootDocument.documentElement
79
136
  };
80
- this.eventManager = new EventManager(this);
81
137
  this.container = this.createContainer(this.options.name);
82
138
  this.positioner = new Positioner(this.options.keepInViewport);
83
- this.hotMenu = null;
84
- this.hotSubMenus = {};
85
139
  this.parentMenu = this.options.parent || null;
86
- this.menuItems = null;
87
- this.origOutsideClickDeselects = null;
88
140
  this.registerEvents();
89
141
  if (this.isSubMenu()) {
90
142
  this.addLocalHook('afterSelectionChange', function () {
@@ -18,7 +18,6 @@ var _cut = _interopRequireDefault(require("./contextMenuItem/cut"));
18
18
  var _pasteEvent = _interopRequireDefault(require("./pasteEvent"));
19
19
  var _copyableRanges = require("./copyableRanges");
20
20
  var _parseTable = require("../../utils/parseTable");
21
- var _eventManager = _interopRequireDefault(require("../../eventManager"));
22
21
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
22
  function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
24
23
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
@@ -93,9 +92,38 @@ var _ensureClipboardEventsGetTriggered = /*#__PURE__*/new WeakSet();
93
92
  var _countCopiedHeaders = /*#__PURE__*/new WeakSet();
94
93
  var _addContentEditableToHighlightedCell = /*#__PURE__*/new WeakSet();
95
94
  var _removeContentEditableFromHighlightedCell = /*#__PURE__*/new WeakSet();
95
+ var _onAfterContextMenuDefaultOptions = /*#__PURE__*/new WeakSet();
96
+ var _onAfterSelectionEnd = /*#__PURE__*/new WeakSet();
97
+ var _onSafariMouseEnter = /*#__PURE__*/new WeakSet();
98
+ var _onSafariMouseLeave = /*#__PURE__*/new WeakSet();
99
+ var _onSafariAfterSelection = /*#__PURE__*/new WeakSet();
96
100
  class CopyPaste extends _base.BasePlugin {
97
101
  constructor() {
98
102
  super(...arguments);
103
+ /**
104
+ * `afterSelection` hook callback triggered only on Safari.
105
+ */
106
+ _classPrivateMethodInitSpec(this, _onSafariAfterSelection);
107
+ /**
108
+ * `document.body` `mouseleave` callback used to work around a Safari's problem with copying/cutting from the
109
+ * browser's menu.
110
+ */
111
+ _classPrivateMethodInitSpec(this, _onSafariMouseLeave);
112
+ /**
113
+ * `document.body` `mouseenter` callback used to work around a Safari's problem with copying/cutting from the
114
+ * browser's menu.
115
+ */
116
+ _classPrivateMethodInitSpec(this, _onSafariMouseEnter);
117
+ /**
118
+ * Force focus on focusableElement after end of the selection.
119
+ */
120
+ _classPrivateMethodInitSpec(this, _onAfterSelectionEnd);
121
+ /**
122
+ * Add copy and cut options to the Context Menu.
123
+ *
124
+ * @param {object} options Contains default added options of the Context Menu.
125
+ */
126
+ _classPrivateMethodInitSpec(this, _onAfterContextMenuDefaultOptions);
99
127
  /**
100
128
  * Remove the `contenteditable` attribute from the highlighted cell and deselect its content.
101
129
  */
@@ -279,9 +307,8 @@ class CopyPaste extends _base.BasePlugin {
279
307
  _classPrivateFieldSet(this, _enableCopyColumnHeadersOnly, !!settings.copyColumnHeadersOnly);
280
308
  this.uiContainer = (_settings$uiContainer = settings.uiContainer) !== null && _settings$uiContainer !== void 0 ? _settings$uiContainer : this.uiContainer;
281
309
  }
282
- this.addHook('afterContextMenuDefaultOptions', options => this.onAfterContextMenuDefaultOptions(options));
283
- this.addHook('afterSelectionEnd', () => this.onAfterSelectionEnd());
284
- this.eventManager = new _eventManager.default(this);
310
+ this.addHook('afterContextMenuDefaultOptions', options => _classPrivateMethodGet(this, _onAfterContextMenuDefaultOptions, _onAfterContextMenuDefaultOptions2).call(this, options));
311
+ this.addHook('afterSelectionEnd', () => _classPrivateMethodGet(this, _onAfterSelectionEnd, _onAfterSelectionEnd2).call(this));
285
312
  this.eventManager.addEventListener(this.hot.rootDocument, 'copy', function () {
286
313
  return _this.onCopy(...arguments);
287
314
  });
@@ -295,12 +322,18 @@ class CopyPaste extends _base.BasePlugin {
295
322
  // Without this workaround Safari (tested on Safari@16.5.2) does allow copying/cutting from the browser menu.
296
323
  if ((0, _browser.isSafari)()) {
297
324
  this.eventManager.addEventListener(this.hot.rootDocument.body, 'mouseenter', function () {
298
- return _this.onSafariMouseEnter(...arguments);
325
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
326
+ args[_key] = arguments[_key];
327
+ }
328
+ return _classPrivateMethodGet(_this, _onSafariMouseEnter, _onSafariMouseEnter2).call(_this, ...args);
299
329
  });
300
330
  this.eventManager.addEventListener(this.hot.rootDocument.body, 'mouseleave', function () {
301
- return _this.onSafariMouseLeave(...arguments);
331
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
332
+ args[_key2] = arguments[_key2];
333
+ }
334
+ return _classPrivateMethodGet(_this, _onSafariMouseLeave, _onSafariMouseLeave2).call(_this, ...args);
302
335
  });
303
- this.addHook('afterSelection', () => this.onSafariAfterSelection());
336
+ this.addHook('afterSelection', () => _classPrivateMethodGet(this, _onSafariAfterSelection, _onSafariAfterSelection2).call(this));
304
337
  }
305
338
  super.enablePlugin();
306
339
  }
@@ -566,7 +599,7 @@ class CopyPaste extends _base.BasePlugin {
566
599
  }
567
600
  newRows.push(newRow);
568
601
  }
569
- this.hot.populateFromArray(startRow, startColumn, newRows, void 0, void 0, 'CopyPaste.paste', this.pasteMode);
602
+ this.hot.populateFromArray(startRow, startColumn, newRows, undefined, undefined, 'CopyPaste.paste', this.pasteMode);
570
603
  return [startRow, startColumn, lastVisualRow, lastVisualColumn];
571
604
  }
572
605
  /**
@@ -670,73 +703,6 @@ class CopyPaste extends _base.BasePlugin {
670
703
  this.hot.selectCell(startRow, startColumn, Math.min(this.hot.countRows() - 1, endRow), Math.min(this.hot.countCols() - 1, endColumn));
671
704
  this.hot.runHooks('afterPaste', pastedData, this.copyableRanges);
672
705
  }
673
-
674
- /**
675
- * Add copy and cut options to the Context Menu.
676
- *
677
- * @private
678
- * @param {object} options Contains default added options of the Context Menu.
679
- */
680
- onAfterContextMenuDefaultOptions(options) {
681
- options.items.push({
682
- name: '---------'
683
- }, (0, _copy.default)(this));
684
- if (_classPrivateFieldGet(this, _enableCopyColumnHeaders)) {
685
- options.items.push((0, _copyWithColumnHeaders.default)(this));
686
- }
687
- if (_classPrivateFieldGet(this, _enableCopyColumnGroupHeaders)) {
688
- options.items.push((0, _copyWithColumnGroupHeaders.default)(this));
689
- }
690
- if (_classPrivateFieldGet(this, _enableCopyColumnHeadersOnly)) {
691
- options.items.push((0, _copyColumnHeadersOnly.default)(this));
692
- }
693
- options.items.push((0, _cut.default)(this));
694
- }
695
-
696
- /**
697
- * Force focus on focusableElement after end of the selection.
698
- *
699
- * @private
700
- */
701
- onAfterSelectionEnd() {
702
- if (this.isEditorOpened()) {
703
- return;
704
- }
705
- if (this.hot.getSettings().fragmentSelection) {
706
- return;
707
- }
708
- this.setCopyableText();
709
- }
710
-
711
- /**
712
- * `document.body` `mouseenter` callback used to work around a Safari's problem with copying/cutting from the
713
- * browser's menu.
714
- *
715
- * @private
716
- */
717
- onSafariMouseEnter() {
718
- _classPrivateMethodGet(this, _removeContentEditableFromHighlightedCell, _removeContentEditableFromHighlightedCell2).call(this);
719
- }
720
-
721
- /**
722
- * `document.body` `mouseleave` callback used to work around a Safari's problem with copying/cutting from the
723
- * browser's menu.
724
- *
725
- * @private
726
- */
727
- onSafariMouseLeave() {
728
- _classPrivateMethodGet(this, _addContentEditableToHighlightedCell, _addContentEditableToHighlightedCell2).call(this);
729
- }
730
-
731
- /**
732
- * `afterSelection` hook callback triggered only on Safari.
733
- *
734
- * @private
735
- */
736
- onSafariAfterSelection() {
737
- _classPrivateMethodGet(this, _removeContentEditableFromHighlightedCell, _removeContentEditableFromHighlightedCell2).call(this);
738
- }
739
-
740
706
  /**
741
707
  * Destroys the `CopyPaste` plugin instance.
742
708
  */
@@ -810,4 +776,37 @@ function _removeContentEditableFromHighlightedCell2() {
810
776
  }
811
777
  }
812
778
  }
779
+ }
780
+ function _onAfterContextMenuDefaultOptions2(options) {
781
+ options.items.push({
782
+ name: '---------'
783
+ }, (0, _copy.default)(this));
784
+ if (_classPrivateFieldGet(this, _enableCopyColumnHeaders)) {
785
+ options.items.push((0, _copyWithColumnHeaders.default)(this));
786
+ }
787
+ if (_classPrivateFieldGet(this, _enableCopyColumnGroupHeaders)) {
788
+ options.items.push((0, _copyWithColumnGroupHeaders.default)(this));
789
+ }
790
+ if (_classPrivateFieldGet(this, _enableCopyColumnHeadersOnly)) {
791
+ options.items.push((0, _copyColumnHeadersOnly.default)(this));
792
+ }
793
+ options.items.push((0, _cut.default)(this));
794
+ }
795
+ function _onAfterSelectionEnd2() {
796
+ if (this.isEditorOpened()) {
797
+ return;
798
+ }
799
+ if (this.hot.getSettings().fragmentSelection) {
800
+ return;
801
+ }
802
+ this.setCopyableText();
803
+ }
804
+ function _onSafariMouseEnter2() {
805
+ _classPrivateMethodGet(this, _removeContentEditableFromHighlightedCell, _removeContentEditableFromHighlightedCell2).call(this);
806
+ }
807
+ function _onSafariMouseLeave2() {
808
+ _classPrivateMethodGet(this, _addContentEditableToHighlightedCell, _addContentEditableToHighlightedCell2).call(this);
809
+ }
810
+ function _onSafariAfterSelection2() {
811
+ _classPrivateMethodGet(this, _removeContentEditableFromHighlightedCell, _removeContentEditableFromHighlightedCell2).call(this);
813
812
  }
@@ -27,7 +27,6 @@ import cutItem from "./contextMenuItem/cut.mjs";
27
27
  import PasteEvent from "./pasteEvent.mjs";
28
28
  import { CopyableRangesFactory, normalizeRanges } from "./copyableRanges.mjs";
29
29
  import { _dataToHTML, htmlToGridSettings } from "../../utils/parseTable.mjs";
30
- import EventManager from "../../eventManager.mjs";
31
30
  Hooks.getSingleton().register('afterCopyLimit');
32
31
  Hooks.getSingleton().register('modifyCopyableRange');
33
32
  Hooks.getSingleton().register('beforeCut');
@@ -87,9 +86,38 @@ var _ensureClipboardEventsGetTriggered = /*#__PURE__*/new WeakSet();
87
86
  var _countCopiedHeaders = /*#__PURE__*/new WeakSet();
88
87
  var _addContentEditableToHighlightedCell = /*#__PURE__*/new WeakSet();
89
88
  var _removeContentEditableFromHighlightedCell = /*#__PURE__*/new WeakSet();
89
+ var _onAfterContextMenuDefaultOptions = /*#__PURE__*/new WeakSet();
90
+ var _onAfterSelectionEnd = /*#__PURE__*/new WeakSet();
91
+ var _onSafariMouseEnter = /*#__PURE__*/new WeakSet();
92
+ var _onSafariMouseLeave = /*#__PURE__*/new WeakSet();
93
+ var _onSafariAfterSelection = /*#__PURE__*/new WeakSet();
90
94
  export class CopyPaste extends BasePlugin {
91
95
  constructor() {
92
96
  super(...arguments);
97
+ /**
98
+ * `afterSelection` hook callback triggered only on Safari.
99
+ */
100
+ _classPrivateMethodInitSpec(this, _onSafariAfterSelection);
101
+ /**
102
+ * `document.body` `mouseleave` callback used to work around a Safari's problem with copying/cutting from the
103
+ * browser's menu.
104
+ */
105
+ _classPrivateMethodInitSpec(this, _onSafariMouseLeave);
106
+ /**
107
+ * `document.body` `mouseenter` callback used to work around a Safari's problem with copying/cutting from the
108
+ * browser's menu.
109
+ */
110
+ _classPrivateMethodInitSpec(this, _onSafariMouseEnter);
111
+ /**
112
+ * Force focus on focusableElement after end of the selection.
113
+ */
114
+ _classPrivateMethodInitSpec(this, _onAfterSelectionEnd);
115
+ /**
116
+ * Add copy and cut options to the Context Menu.
117
+ *
118
+ * @param {object} options Contains default added options of the Context Menu.
119
+ */
120
+ _classPrivateMethodInitSpec(this, _onAfterContextMenuDefaultOptions);
93
121
  /**
94
122
  * Remove the `contenteditable` attribute from the highlighted cell and deselect its content.
95
123
  */
@@ -273,9 +301,8 @@ export class CopyPaste extends BasePlugin {
273
301
  _classPrivateFieldSet(this, _enableCopyColumnHeadersOnly, !!settings.copyColumnHeadersOnly);
274
302
  this.uiContainer = (_settings$uiContainer = settings.uiContainer) !== null && _settings$uiContainer !== void 0 ? _settings$uiContainer : this.uiContainer;
275
303
  }
276
- this.addHook('afterContextMenuDefaultOptions', options => this.onAfterContextMenuDefaultOptions(options));
277
- this.addHook('afterSelectionEnd', () => this.onAfterSelectionEnd());
278
- this.eventManager = new EventManager(this);
304
+ this.addHook('afterContextMenuDefaultOptions', options => _classPrivateMethodGet(this, _onAfterContextMenuDefaultOptions, _onAfterContextMenuDefaultOptions2).call(this, options));
305
+ this.addHook('afterSelectionEnd', () => _classPrivateMethodGet(this, _onAfterSelectionEnd, _onAfterSelectionEnd2).call(this));
279
306
  this.eventManager.addEventListener(this.hot.rootDocument, 'copy', function () {
280
307
  return _this.onCopy(...arguments);
281
308
  });
@@ -289,12 +316,18 @@ export class CopyPaste extends BasePlugin {
289
316
  // Without this workaround Safari (tested on Safari@16.5.2) does allow copying/cutting from the browser menu.
290
317
  if (isSafari()) {
291
318
  this.eventManager.addEventListener(this.hot.rootDocument.body, 'mouseenter', function () {
292
- return _this.onSafariMouseEnter(...arguments);
319
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
320
+ args[_key] = arguments[_key];
321
+ }
322
+ return _classPrivateMethodGet(_this, _onSafariMouseEnter, _onSafariMouseEnter2).call(_this, ...args);
293
323
  });
294
324
  this.eventManager.addEventListener(this.hot.rootDocument.body, 'mouseleave', function () {
295
- return _this.onSafariMouseLeave(...arguments);
325
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
326
+ args[_key2] = arguments[_key2];
327
+ }
328
+ return _classPrivateMethodGet(_this, _onSafariMouseLeave, _onSafariMouseLeave2).call(_this, ...args);
296
329
  });
297
- this.addHook('afterSelection', () => this.onSafariAfterSelection());
330
+ this.addHook('afterSelection', () => _classPrivateMethodGet(this, _onSafariAfterSelection, _onSafariAfterSelection2).call(this));
298
331
  }
299
332
  super.enablePlugin();
300
333
  }
@@ -560,7 +593,7 @@ export class CopyPaste extends BasePlugin {
560
593
  }
561
594
  newRows.push(newRow);
562
595
  }
563
- this.hot.populateFromArray(startRow, startColumn, newRows, void 0, void 0, 'CopyPaste.paste', this.pasteMode);
596
+ this.hot.populateFromArray(startRow, startColumn, newRows, undefined, undefined, 'CopyPaste.paste', this.pasteMode);
564
597
  return [startRow, startColumn, lastVisualRow, lastVisualColumn];
565
598
  }
566
599
  /**
@@ -664,73 +697,6 @@ export class CopyPaste extends BasePlugin {
664
697
  this.hot.selectCell(startRow, startColumn, Math.min(this.hot.countRows() - 1, endRow), Math.min(this.hot.countCols() - 1, endColumn));
665
698
  this.hot.runHooks('afterPaste', pastedData, this.copyableRanges);
666
699
  }
667
-
668
- /**
669
- * Add copy and cut options to the Context Menu.
670
- *
671
- * @private
672
- * @param {object} options Contains default added options of the Context Menu.
673
- */
674
- onAfterContextMenuDefaultOptions(options) {
675
- options.items.push({
676
- name: '---------'
677
- }, copyItem(this));
678
- if (_classPrivateFieldGet(this, _enableCopyColumnHeaders)) {
679
- options.items.push(copyWithColumnHeadersItem(this));
680
- }
681
- if (_classPrivateFieldGet(this, _enableCopyColumnGroupHeaders)) {
682
- options.items.push(copyWithColumnGroupHeadersItem(this));
683
- }
684
- if (_classPrivateFieldGet(this, _enableCopyColumnHeadersOnly)) {
685
- options.items.push(copyColumnHeadersOnlyItem(this));
686
- }
687
- options.items.push(cutItem(this));
688
- }
689
-
690
- /**
691
- * Force focus on focusableElement after end of the selection.
692
- *
693
- * @private
694
- */
695
- onAfterSelectionEnd() {
696
- if (this.isEditorOpened()) {
697
- return;
698
- }
699
- if (this.hot.getSettings().fragmentSelection) {
700
- return;
701
- }
702
- this.setCopyableText();
703
- }
704
-
705
- /**
706
- * `document.body` `mouseenter` callback used to work around a Safari's problem with copying/cutting from the
707
- * browser's menu.
708
- *
709
- * @private
710
- */
711
- onSafariMouseEnter() {
712
- _classPrivateMethodGet(this, _removeContentEditableFromHighlightedCell, _removeContentEditableFromHighlightedCell2).call(this);
713
- }
714
-
715
- /**
716
- * `document.body` `mouseleave` callback used to work around a Safari's problem with copying/cutting from the
717
- * browser's menu.
718
- *
719
- * @private
720
- */
721
- onSafariMouseLeave() {
722
- _classPrivateMethodGet(this, _addContentEditableToHighlightedCell, _addContentEditableToHighlightedCell2).call(this);
723
- }
724
-
725
- /**
726
- * `afterSelection` hook callback triggered only on Safari.
727
- *
728
- * @private
729
- */
730
- onSafariAfterSelection() {
731
- _classPrivateMethodGet(this, _removeContentEditableFromHighlightedCell, _removeContentEditableFromHighlightedCell2).call(this);
732
- }
733
-
734
700
  /**
735
701
  * Destroys the `CopyPaste` plugin instance.
736
702
  */
@@ -803,4 +769,37 @@ function _removeContentEditableFromHighlightedCell2() {
803
769
  }
804
770
  }
805
771
  }
772
+ }
773
+ function _onAfterContextMenuDefaultOptions2(options) {
774
+ options.items.push({
775
+ name: '---------'
776
+ }, copyItem(this));
777
+ if (_classPrivateFieldGet(this, _enableCopyColumnHeaders)) {
778
+ options.items.push(copyWithColumnHeadersItem(this));
779
+ }
780
+ if (_classPrivateFieldGet(this, _enableCopyColumnGroupHeaders)) {
781
+ options.items.push(copyWithColumnGroupHeadersItem(this));
782
+ }
783
+ if (_classPrivateFieldGet(this, _enableCopyColumnHeadersOnly)) {
784
+ options.items.push(copyColumnHeadersOnlyItem(this));
785
+ }
786
+ options.items.push(cutItem(this));
787
+ }
788
+ function _onAfterSelectionEnd2() {
789
+ if (this.isEditorOpened()) {
790
+ return;
791
+ }
792
+ if (this.hot.getSettings().fragmentSelection) {
793
+ return;
794
+ }
795
+ this.setCopyableText();
796
+ }
797
+ function _onSafariMouseEnter2() {
798
+ _classPrivateMethodGet(this, _removeContentEditableFromHighlightedCell, _removeContentEditableFromHighlightedCell2).call(this);
799
+ }
800
+ function _onSafariMouseLeave2() {
801
+ _classPrivateMethodGet(this, _addContentEditableToHighlightedCell, _addContentEditableToHighlightedCell2).call(this);
802
+ }
803
+ function _onSafariAfterSelection2() {
804
+ _classPrivateMethodGet(this, _removeContentEditableFromHighlightedCell, _removeContentEditableFromHighlightedCell2).call(this);
806
805
  }