handsontable 0.0.0-next-440bcae-20231107 → 0.0.0-next-dc2c114-20231107

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of handsontable might be problematic. Click here for more details.

Files changed (317) 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 +31 -26
  56. package/core.mjs +31 -26
  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 +7251 -6352
  82. package/dist/handsontable.full.min.css +2 -2
  83. package/dist/handsontable.full.min.js +120 -120
  84. package/dist/handsontable.js +7250 -6351
  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.js +12 -3
  117. package/pluginHooks.mjs +12 -3
  118. package/plugins/autoColumnSize/autoColumnSize.js +141 -130
  119. package/plugins/autoColumnSize/autoColumnSize.mjs +140 -129
  120. package/plugins/autoRowSize/autoRowSize.js +112 -125
  121. package/plugins/autoRowSize/autoRowSize.mjs +110 -123
  122. package/plugins/autofill/autofill.js +97 -102
  123. package/plugins/autofill/autofill.mjs +96 -101
  124. package/plugins/base/base.js +57 -22
  125. package/plugins/base/base.mjs +56 -22
  126. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +29 -24
  127. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +28 -23
  128. package/plugins/collapsibleColumns/collapsibleColumns.js +104 -107
  129. package/plugins/collapsibleColumns/collapsibleColumns.mjs +102 -104
  130. package/plugins/columnSorting/columnSorting.js +105 -98
  131. package/plugins/columnSorting/columnSorting.mjs +104 -97
  132. package/plugins/columnSorting/columnStatesManager.js +12 -6
  133. package/plugins/columnSorting/columnStatesManager.mjs +12 -6
  134. package/plugins/columnSummary/columnSummary.js +71 -58
  135. package/plugins/columnSummary/columnSummary.mjs +70 -57
  136. package/plugins/columnSummary/endpoints.js +20 -14
  137. package/plugins/columnSummary/endpoints.mjs +20 -14
  138. package/plugins/comments/commentEditor.js +30 -2
  139. package/plugins/comments/commentEditor.mjs +30 -2
  140. package/plugins/comments/comments.js +158 -169
  141. package/plugins/comments/comments.mjs +157 -168
  142. package/plugins/comments/displaySwitch.js +7 -3
  143. package/plugins/comments/displaySwitch.mjs +7 -3
  144. package/plugins/contextMenu/commandExecutor.js +15 -2
  145. package/plugins/contextMenu/commandExecutor.mjs +15 -2
  146. package/plugins/contextMenu/contextMenu.js +91 -101
  147. package/plugins/contextMenu/contextMenu.mjs +90 -100
  148. package/plugins/contextMenu/itemsFactory.js +19 -4
  149. package/plugins/contextMenu/itemsFactory.mjs +19 -4
  150. package/plugins/contextMenu/menu/cursor.js +36 -0
  151. package/plugins/contextMenu/menu/cursor.mjs +36 -0
  152. package/plugins/contextMenu/menu/menu.js +57 -5
  153. package/plugins/contextMenu/menu/menu.mjs +57 -5
  154. package/plugins/copyPaste/copyPaste.js +74 -75
  155. package/plugins/copyPaste/copyPaste.mjs +74 -75
  156. package/plugins/customBorders/customBorders.js +49 -48
  157. package/plugins/customBorders/customBorders.mjs +48 -47
  158. package/plugins/dragToScroll/dragToScroll.js +50 -54
  159. package/plugins/dragToScroll/dragToScroll.mjs +49 -52
  160. package/plugins/dropdownMenu/dropdownMenu.js +132 -129
  161. package/plugins/dropdownMenu/dropdownMenu.mjs +132 -129
  162. package/plugins/exportFile/dataProvider.js +7 -2
  163. package/plugins/exportFile/dataProvider.mjs +7 -2
  164. package/plugins/exportFile/exportFile.js +1 -1
  165. package/plugins/exportFile/exportFile.mjs +1 -1
  166. package/plugins/exportFile/types/_base.js +14 -6
  167. package/plugins/exportFile/types/_base.mjs +14 -6
  168. package/plugins/filters/component/actionBar.js +9 -0
  169. package/plugins/filters/component/actionBar.mjs +9 -0
  170. package/plugins/filters/component/condition.js +13 -0
  171. package/plugins/filters/component/condition.mjs +13 -0
  172. package/plugins/filters/component/operators.js +9 -0
  173. package/plugins/filters/component/operators.mjs +9 -0
  174. package/plugins/filters/component/value.js +9 -0
  175. package/plugins/filters/component/value.mjs +9 -0
  176. package/plugins/filters/conditionCollection.js +9 -4
  177. package/plugins/filters/conditionCollection.mjs +9 -4
  178. package/plugins/filters/conditionUpdateObserver.js +53 -42
  179. package/plugins/filters/conditionUpdateObserver.mjs +53 -42
  180. package/plugins/filters/dataFilter.js +9 -3
  181. package/plugins/filters/dataFilter.mjs +9 -3
  182. package/plugins/filters/filters.js +184 -189
  183. package/plugins/filters/filters.mjs +182 -187
  184. package/plugins/filters/ui/_base.js +1 -1
  185. package/plugins/filters/ui/_base.mjs +1 -1
  186. package/plugins/filters/utils.js +1 -1
  187. package/plugins/filters/utils.mjs +1 -1
  188. package/plugins/formulas/engine/settings.js +1 -1
  189. package/plugins/formulas/engine/settings.mjs +1 -1
  190. package/plugins/formulas/formulas.js +684 -602
  191. package/plugins/formulas/formulas.mjs +682 -600
  192. package/plugins/hiddenColumns/hiddenColumns.js +174 -169
  193. package/plugins/hiddenColumns/hiddenColumns.mjs +173 -168
  194. package/plugins/hiddenRows/hiddenRows.js +170 -165
  195. package/plugins/hiddenRows/hiddenRows.mjs +169 -164
  196. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
  197. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  198. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
  199. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  200. package/plugins/manualColumnFreeze/manualColumnFreeze.js +67 -54
  201. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +64 -51
  202. package/plugins/manualColumnMove/manualColumnMove.js +287 -232
  203. package/plugins/manualColumnMove/manualColumnMove.mjs +286 -231
  204. package/plugins/manualColumnMove/ui/_base.js +9 -3
  205. package/plugins/manualColumnMove/ui/_base.mjs +9 -3
  206. package/plugins/manualColumnResize/manualColumnResize.js +291 -246
  207. package/plugins/manualColumnResize/manualColumnResize.mjs +290 -244
  208. package/plugins/manualRowMove/manualRowMove.js +223 -208
  209. package/plugins/manualRowMove/manualRowMove.mjs +222 -207
  210. package/plugins/manualRowMove/ui/_base.js +10 -5
  211. package/plugins/manualRowMove/ui/_base.mjs +10 -5
  212. package/plugins/manualRowResize/manualRowResize.js +254 -209
  213. package/plugins/manualRowResize/manualRowResize.mjs +253 -207
  214. package/plugins/mergeCells/calculations/autofill.js +9 -3
  215. package/plugins/mergeCells/calculations/autofill.mjs +9 -3
  216. package/plugins/mergeCells/calculations/selection.js +10 -4
  217. package/plugins/mergeCells/calculations/selection.mjs +10 -4
  218. package/plugins/mergeCells/cellCoords.js +16 -6
  219. package/plugins/mergeCells/cellCoords.mjs +16 -6
  220. package/plugins/mergeCells/cellsCollection.js +10 -4
  221. package/plugins/mergeCells/cellsCollection.mjs +10 -4
  222. package/plugins/mergeCells/mergeCells.js +582 -502
  223. package/plugins/mergeCells/mergeCells.mjs +580 -500
  224. package/plugins/multiColumnSorting/multiColumnSorting.js +13 -10
  225. package/plugins/multiColumnSorting/multiColumnSorting.mjs +13 -10
  226. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +16 -28
  227. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +16 -27
  228. package/plugins/nestedHeaders/nestedHeaders.js +542 -499
  229. package/plugins/nestedHeaders/nestedHeaders.mjs +554 -511
  230. package/plugins/nestedHeaders/stateManager/index.js +1 -1
  231. package/plugins/nestedHeaders/stateManager/index.mjs +1 -1
  232. package/plugins/nestedRows/data/dataManager.js +21 -15
  233. package/plugins/nestedRows/data/dataManager.mjs +21 -15
  234. package/plugins/nestedRows/nestedRows.js +326 -278
  235. package/plugins/nestedRows/nestedRows.mjs +325 -277
  236. package/plugins/nestedRows/ui/_base.js +7 -1
  237. package/plugins/nestedRows/ui/_base.mjs +7 -1
  238. package/plugins/nestedRows/ui/collapsing.js +2 -2
  239. package/plugins/nestedRows/ui/collapsing.mjs +2 -2
  240. package/plugins/nestedRows/ui/contextMenu.js +28 -18
  241. package/plugins/nestedRows/ui/contextMenu.mjs +28 -18
  242. package/plugins/nestedRows/utils/rowMoveController.js +12 -4
  243. package/plugins/nestedRows/utils/rowMoveController.mjs +12 -4
  244. package/plugins/persistentState/persistentState.js +14 -11
  245. package/plugins/persistentState/persistentState.mjs +14 -11
  246. package/plugins/persistentState/storage.js +11 -6
  247. package/plugins/persistentState/storage.mjs +11 -6
  248. package/plugins/registry.js +2 -2
  249. package/plugins/registry.mjs +2 -2
  250. package/plugins/search/search.js +57 -46
  251. package/plugins/search/search.mjs +56 -45
  252. package/plugins/touchScroll/touchScroll.js +102 -100
  253. package/plugins/touchScroll/touchScroll.mjs +100 -98
  254. package/plugins/trimRows/trimRows.js +33 -28
  255. package/plugins/trimRows/trimRows.mjs +32 -27
  256. package/plugins/undoRedo/undoRedo.js +2 -2
  257. package/plugins/undoRedo/undoRedo.mjs +2 -2
  258. package/renderers/autocompleteRenderer/autocompleteRenderer.js +11 -11
  259. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +11 -11
  260. package/renderers/baseRenderer/baseRenderer.js +2 -2
  261. package/renderers/baseRenderer/baseRenderer.mjs +2 -2
  262. package/renderers/checkboxRenderer/checkboxRenderer.js +23 -23
  263. package/renderers/checkboxRenderer/checkboxRenderer.mjs +23 -23
  264. package/renderers/dateRenderer/dateRenderer.js +4 -4
  265. package/renderers/dateRenderer/dateRenderer.mjs +4 -4
  266. package/renderers/handsontableRenderer/handsontableRenderer.js +4 -4
  267. package/renderers/handsontableRenderer/handsontableRenderer.mjs +4 -4
  268. package/renderers/htmlRenderer/htmlRenderer.js +4 -4
  269. package/renderers/htmlRenderer/htmlRenderer.mjs +4 -4
  270. package/renderers/numericRenderer/numericRenderer.js +3 -3
  271. package/renderers/numericRenderer/numericRenderer.mjs +3 -3
  272. package/renderers/passwordRenderer/passwordRenderer.js +3 -3
  273. package/renderers/passwordRenderer/passwordRenderer.mjs +3 -3
  274. package/renderers/selectRenderer/selectRenderer.js +4 -4
  275. package/renderers/selectRenderer/selectRenderer.mjs +4 -4
  276. package/renderers/textRenderer/textRenderer.js +5 -5
  277. package/renderers/textRenderer/textRenderer.mjs +5 -5
  278. package/renderers/timeRenderer/timeRenderer.js +3 -3
  279. package/renderers/timeRenderer/timeRenderer.mjs +3 -3
  280. package/selection/highlight/highlight.js +1 -4
  281. package/selection/highlight/highlight.mjs +1 -4
  282. package/selection/range.js +12 -2
  283. package/selection/range.mjs +12 -2
  284. package/selection/selection.js +3 -3
  285. package/selection/selection.mjs +3 -3
  286. package/tableView.js +208 -200
  287. package/tableView.mjs +208 -200
  288. package/translations/changesObservable/utils.js +2 -2
  289. package/translations/changesObservable/utils.mjs +2 -2
  290. package/translations/indexMapper.js +25 -22
  291. package/translations/indexMapper.mjs +25 -22
  292. package/translations/mapCollections/aggregatedCollection.js +8 -2
  293. package/translations/mapCollections/aggregatedCollection.mjs +8 -2
  294. package/translations/mapCollections/mapCollection.js +5 -2
  295. package/translations/mapCollections/mapCollection.mjs +5 -2
  296. package/translations/maps/indexMap.js +6 -1
  297. package/translations/maps/indexMap.mjs +6 -1
  298. package/translations/maps/utils/physicallyIndexed.js +2 -2
  299. package/translations/maps/utils/physicallyIndexed.mjs +2 -2
  300. package/utils/dataStructures/linkedList.js +10 -6
  301. package/utils/dataStructures/linkedList.mjs +10 -6
  302. package/utils/dataStructures/queue.js +1 -1
  303. package/utils/dataStructures/queue.mjs +1 -1
  304. package/utils/dataStructures/stack.js +1 -1
  305. package/utils/dataStructures/stack.mjs +1 -1
  306. package/utils/ghostTable.js +2 -2
  307. package/utils/ghostTable.mjs +2 -2
  308. package/utils/interval.js +73 -36
  309. package/utils/interval.mjs +73 -36
  310. package/utils/parseTable.js +1 -1
  311. package/utils/parseTable.mjs +1 -1
  312. package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
  313. package/validators/autocompleteValidator/autocompleteValidator.mjs +1 -1
  314. package/validators/dateValidator/dateValidator.js +1 -1
  315. package/validators/dateValidator/dateValidator.mjs +1 -1
  316. package/validators/numericValidator/numericValidator.js +1 -1
  317. 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
  }