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
@@ -15,7 +15,13 @@ export default class Clone extends CoreAbstract {
15
15
  */
16
16
  constructor(table, settings, clone) {
17
17
  super(table, settings);
18
+ /**
19
+ * @type {Walkontable}
20
+ */
18
21
  _defineProperty(this, "cloneSource", void 0);
22
+ /**
23
+ * @type {Overlay}
24
+ */
19
25
  _defineProperty(this, "cloneOverlay", void 0);
20
26
  const facadeGetter = this.wtSettings.getSetting('facade', this);
21
27
  this.cloneSource = clone.source;
@@ -1,16 +1,32 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
+ require("core-js/modules/es.error.cause.js");
4
5
  var _element = require("../../../helpers/dom/element");
5
6
  var _function = require("../../../helpers/function");
6
7
  var _feature = require("../../../helpers/feature");
7
8
  var _browser = require("../../../helpers/browser");
8
9
  var _mixed = require("../../../helpers/mixed");
9
- const privatePool = new WeakMap();
10
-
10
+ function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
11
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
12
+ function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
13
+ function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
14
+ function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
15
+ function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
16
+ 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; } }
11
17
  /**
12
18
  * @class Event
13
19
  */
20
+ var _wtSettings = /*#__PURE__*/new WeakMap();
21
+ var _domBindings = /*#__PURE__*/new WeakMap();
22
+ var _wtTable = /*#__PURE__*/new WeakMap();
23
+ var _selectionManager = /*#__PURE__*/new WeakMap();
24
+ var _parent = /*#__PURE__*/new WeakMap();
25
+ var _eventManager = /*#__PURE__*/new WeakMap();
26
+ var _facadeGetter = /*#__PURE__*/new WeakMap();
27
+ var _selectedCellBeforeTouchEnd = /*#__PURE__*/new WeakMap();
28
+ var _dblClickTimeout = /*#__PURE__*/new WeakMap();
29
+ var _dblClickOrigin = /*#__PURE__*/new WeakMap();
14
30
  class Event {
15
31
  /**
16
32
  * @param {FacadeGetter} facadeGetter Gets an instance facade.
@@ -23,20 +39,35 @@ class Event {
23
39
  */
24
40
  constructor(facadeGetter, domBindings, wtSettings, eventManager, wtTable, selectionManager) {
25
41
  let parent = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
26
- this.wtSettings = wtSettings;
27
- this.domBindings = domBindings;
28
- this.wtTable = wtTable;
29
- this.selectionManager = selectionManager;
30
- this.parent = parent;
31
-
42
+ _classPrivateFieldInitSpec(this, _wtSettings, {
43
+ writable: true,
44
+ value: void 0
45
+ });
46
+ _classPrivateFieldInitSpec(this, _domBindings, {
47
+ writable: true,
48
+ value: void 0
49
+ });
50
+ _classPrivateFieldInitSpec(this, _wtTable, {
51
+ writable: true,
52
+ value: void 0
53
+ });
54
+ _classPrivateFieldInitSpec(this, _selectionManager, {
55
+ writable: true,
56
+ value: void 0
57
+ });
58
+ _classPrivateFieldInitSpec(this, _parent, {
59
+ writable: true,
60
+ value: void 0
61
+ });
32
62
  /**
33
63
  * Instance of {@link EventManager}.
34
64
  *
35
- * @private
36
65
  * @type {EventManager}
37
66
  */
38
- this.eventManager = eventManager;
39
-
67
+ _classPrivateFieldInitSpec(this, _eventManager, {
68
+ writable: true,
69
+ value: void 0
70
+ });
40
71
  /**
41
72
  * Should be use only for passing face called external origin methods, like registered event listeners.
42
73
  * It provides backward compatibility by getting instance facade.
@@ -46,14 +77,39 @@ class Event {
46
77
  * @todo Con. Maybe passing listener caller as an ioc from faced resolves this issue. To rethink later.
47
78
  *
48
79
  * @type {FacadeGetter}
49
- * @private
50
80
  */
51
- this.facadeGetter = facadeGetter;
52
- privatePool.set(this, {
53
- selectedCellBeforeTouchEnd: void 0,
54
- dblClickTimeout: [null, null],
55
- dblClickOrigin: [null, null]
81
+ _classPrivateFieldInitSpec(this, _facadeGetter, {
82
+ writable: true,
83
+ value: void 0
84
+ });
85
+ /**
86
+ * @type {boolean}
87
+ */
88
+ _classPrivateFieldInitSpec(this, _selectedCellBeforeTouchEnd, {
89
+ writable: true,
90
+ value: void 0
91
+ });
92
+ /**
93
+ * @type {number[]}
94
+ */
95
+ _classPrivateFieldInitSpec(this, _dblClickTimeout, {
96
+ writable: true,
97
+ value: [null, null]
98
+ });
99
+ /**
100
+ * @type {number[]}
101
+ */
102
+ _classPrivateFieldInitSpec(this, _dblClickOrigin, {
103
+ writable: true,
104
+ value: [null, null]
56
105
  });
106
+ _classPrivateFieldSet(this, _wtSettings, wtSettings);
107
+ _classPrivateFieldSet(this, _domBindings, domBindings);
108
+ _classPrivateFieldSet(this, _wtTable, wtTable);
109
+ _classPrivateFieldSet(this, _selectionManager, selectionManager);
110
+ _classPrivateFieldSet(this, _parent, parent);
111
+ _classPrivateFieldSet(this, _eventManager, eventManager);
112
+ _classPrivateFieldSet(this, _facadeGetter, facadeGetter);
57
113
  this.registerEvents();
58
114
  }
59
115
 
@@ -63,32 +119,32 @@ class Event {
63
119
  * @private
64
120
  */
65
121
  registerEvents() {
66
- this.eventManager.addEventListener(this.wtTable.holder, 'contextmenu', event => this.onContextMenu(event));
67
- this.eventManager.addEventListener(this.wtTable.TABLE, 'mouseover', event => this.onMouseOver(event));
68
- this.eventManager.addEventListener(this.wtTable.TABLE, 'mouseout', event => this.onMouseOut(event));
122
+ _classPrivateFieldGet(this, _eventManager).addEventListener(_classPrivateFieldGet(this, _wtTable).holder, 'contextmenu', event => this.onContextMenu(event));
123
+ _classPrivateFieldGet(this, _eventManager).addEventListener(_classPrivateFieldGet(this, _wtTable).TABLE, 'mouseover', event => this.onMouseOver(event));
124
+ _classPrivateFieldGet(this, _eventManager).addEventListener(_classPrivateFieldGet(this, _wtTable).TABLE, 'mouseout', event => this.onMouseOut(event));
69
125
  const initTouchEvents = () => {
70
- this.eventManager.addEventListener(this.wtTable.holder, 'touchstart', event => this.onTouchStart(event));
71
- this.eventManager.addEventListener(this.wtTable.holder, 'touchend', event => this.onTouchEnd(event));
126
+ _classPrivateFieldGet(this, _eventManager).addEventListener(_classPrivateFieldGet(this, _wtTable).holder, 'touchstart', event => this.onTouchStart(event));
127
+ _classPrivateFieldGet(this, _eventManager).addEventListener(_classPrivateFieldGet(this, _wtTable).holder, 'touchend', event => this.onTouchEnd(event));
72
128
  if (!this.momentumScrolling) {
73
129
  this.momentumScrolling = {};
74
130
  }
75
- this.eventManager.addEventListener(this.wtTable.holder, 'scroll', () => {
131
+ _classPrivateFieldGet(this, _eventManager).addEventListener(_classPrivateFieldGet(this, _wtTable).holder, 'scroll', () => {
76
132
  clearTimeout(this.momentumScrolling._timeout);
77
133
  if (!this.momentumScrolling.ongoing) {
78
- this.wtSettings.getSetting('onBeforeTouchScroll');
134
+ _classPrivateFieldGet(this, _wtSettings).getSetting('onBeforeTouchScroll');
79
135
  }
80
136
  this.momentumScrolling.ongoing = true;
81
137
  this.momentumScrolling._timeout = setTimeout(() => {
82
138
  if (!this.touchApplied) {
83
139
  this.momentumScrolling.ongoing = false;
84
- this.wtSettings.getSetting('onAfterMomentumScroll');
140
+ _classPrivateFieldGet(this, _wtSettings).getSetting('onAfterMomentumScroll');
85
141
  }
86
142
  }, 200);
87
143
  });
88
144
  };
89
145
  const initMouseEvents = () => {
90
- this.eventManager.addEventListener(this.wtTable.holder, 'mouseup', event => this.onMouseUp(event));
91
- this.eventManager.addEventListener(this.wtTable.holder, 'mousedown', event => this.onMouseDown(event));
146
+ _classPrivateFieldGet(this, _eventManager).addEventListener(_classPrivateFieldGet(this, _wtTable).holder, 'mouseup', event => this.onMouseUp(event));
147
+ _classPrivateFieldGet(this, _eventManager).addEventListener(_classPrivateFieldGet(this, _wtTable).holder, 'mousedown', event => this.onMouseDown(event));
92
148
  };
93
149
  if ((0, _browser.isMobileBrowser)()) {
94
150
  initTouchEvents();
@@ -109,12 +165,11 @@ class Event {
109
165
  * @returns {boolean}
110
166
  */
111
167
  selectedCellWasTouched(touchTarget) {
112
- const priv = privatePool.get(this);
113
168
  const cellUnderFinger = this.parentCell(touchTarget);
114
169
  const coordsOfCellUnderFinger = cellUnderFinger.coords;
115
- if (priv.selectedCellBeforeTouchEnd && coordsOfCellUnderFinger) {
116
- const [rowTouched, rowSelected] = [coordsOfCellUnderFinger.row, priv.selectedCellBeforeTouchEnd.from.row];
117
- const [colTouched, colSelected] = [coordsOfCellUnderFinger.col, priv.selectedCellBeforeTouchEnd.from.col];
170
+ if (_classPrivateFieldGet(this, _selectedCellBeforeTouchEnd) && coordsOfCellUnderFinger) {
171
+ const [rowTouched, rowSelected] = [coordsOfCellUnderFinger.row, _classPrivateFieldGet(this, _selectedCellBeforeTouchEnd).from.row];
172
+ const [colTouched, colSelected] = [coordsOfCellUnderFinger.col, _classPrivateFieldGet(this, _selectedCellBeforeTouchEnd).from.col];
118
173
  return rowTouched === rowSelected && colTouched === colSelected;
119
174
  }
120
175
  return false;
@@ -129,18 +184,18 @@ class Event {
129
184
  */
130
185
  parentCell(elem) {
131
186
  const cell = {};
132
- const TABLE = this.wtTable.TABLE;
187
+ const TABLE = _classPrivateFieldGet(this, _wtTable).TABLE;
133
188
  const TD = (0, _element.closestDown)(elem, ['TD', 'TH'], TABLE);
134
189
  if (TD) {
135
- cell.coords = this.wtTable.getCoords(TD);
190
+ cell.coords = _classPrivateFieldGet(this, _wtTable).getCoords(TD);
136
191
  cell.TD = TD;
137
192
  } else if ((0, _element.hasClass)(elem, 'wtBorder') && (0, _element.hasClass)(elem, 'current')) {
138
- cell.coords = this.selectionManager.getFocusSelection().cellRange.highlight;
139
- cell.TD = this.wtTable.getCell(cell.coords);
193
+ cell.coords = _classPrivateFieldGet(this, _selectionManager).getFocusSelection().cellRange.highlight;
194
+ cell.TD = _classPrivateFieldGet(this, _wtTable).getCell(cell.coords);
140
195
  } else if ((0, _element.hasClass)(elem, 'wtBorder') && (0, _element.hasClass)(elem, 'area')) {
141
- if (this.selectionManager.getAreaSelection().cellRange) {
142
- cell.coords = this.selectionManager.getAreaSelection().cellRange.to;
143
- cell.TD = this.wtTable.getCell(cell.coords);
196
+ if (_classPrivateFieldGet(this, _selectionManager).getAreaSelection().cellRange) {
197
+ cell.coords = _classPrivateFieldGet(this, _selectionManager).getAreaSelection().cellRange.to;
198
+ cell.TD = _classPrivateFieldGet(this, _wtTable).getCell(cell.coords);
144
199
  }
145
200
  }
146
201
  return cell;
@@ -153,8 +208,7 @@ class Event {
153
208
  * @param {MouseEvent} event The mouse event object.
154
209
  */
155
210
  onMouseDown(event) {
156
- const priv = privatePool.get(this);
157
- const activeElement = this.domBindings.rootDocument.activeElement;
211
+ const activeElement = _classPrivateFieldGet(this, _domBindings).rootDocument.activeElement;
158
212
  const getParentNode = (0, _function.partial)(_element.getParent, event.target);
159
213
  const realTarget = event.target;
160
214
 
@@ -165,17 +219,17 @@ class Event {
165
219
  }
166
220
  const cell = this.parentCell(realTarget);
167
221
  if ((0, _element.hasClass)(realTarget, 'corner')) {
168
- this.wtSettings.getSetting('onCellCornerMouseDown', event, realTarget);
169
- } else if (cell.TD && this.wtSettings.has('onCellMouseDown')) {
222
+ _classPrivateFieldGet(this, _wtSettings).getSetting('onCellCornerMouseDown', event, realTarget);
223
+ } else if (cell.TD && _classPrivateFieldGet(this, _wtSettings).has('onCellMouseDown')) {
170
224
  this.callListener('onCellMouseDown', event, cell.coords, cell.TD);
171
225
  }
172
226
 
173
227
  // doubleclick reacts only for left mouse button or from touch events
174
228
  if ((event.button === 0 || this.touchApplied) && cell.TD) {
175
- priv.dblClickOrigin[0] = cell.TD;
176
- clearTimeout(priv.dblClickTimeout[0]);
177
- priv.dblClickTimeout[0] = setTimeout(() => {
178
- priv.dblClickOrigin[0] = null;
229
+ _classPrivateFieldGet(this, _dblClickOrigin)[0] = cell.TD;
230
+ clearTimeout(_classPrivateFieldGet(this, _dblClickTimeout)[0]);
231
+ _classPrivateFieldGet(this, _dblClickTimeout)[0] = setTimeout(() => {
232
+ _classPrivateFieldGet(this, _dblClickOrigin)[0] = null;
179
233
  }, 1000);
180
234
  }
181
235
  }
@@ -187,7 +241,7 @@ class Event {
187
241
  * @param {MouseEvent} event The mouse event object.
188
242
  */
189
243
  onContextMenu(event) {
190
- if (this.wtSettings.has('onCellContextMenu')) {
244
+ if (_classPrivateFieldGet(this, _wtSettings).has('onCellContextMenu')) {
191
245
  const cell = this.parentCell(event.target);
192
246
  if (cell.TD) {
193
247
  this.callListener('onCellContextMenu', event, cell.coords, cell.TD);
@@ -202,15 +256,15 @@ class Event {
202
256
  * @param {MouseEvent} event The mouse event object.
203
257
  */
204
258
  onMouseOver(event) {
205
- if (!this.wtSettings.has('onCellMouseOver')) {
259
+ if (!_classPrivateFieldGet(this, _wtSettings).has('onCellMouseOver')) {
206
260
  return;
207
261
  }
208
- const table = this.wtTable.TABLE;
262
+ const table = _classPrivateFieldGet(this, _wtTable).TABLE;
209
263
  const td = (0, _element.closestDown)(event.target, ['TD', 'TH'], table);
210
- const parent = this.parent || this;
264
+ const parent = _classPrivateFieldGet(this, _parent) || this;
211
265
  if (td && td !== parent.lastMouseOver && (0, _element.isChildOf)(td, table)) {
212
266
  parent.lastMouseOver = td;
213
- this.callListener('onCellMouseOver', event, this.wtTable.getCoords(td), td);
267
+ this.callListener('onCellMouseOver', event, _classPrivateFieldGet(this, _wtTable).getCoords(td), td);
214
268
  }
215
269
  }
216
270
 
@@ -221,15 +275,15 @@ class Event {
221
275
  * @param {MouseEvent} event The mouse event object.
222
276
  */
223
277
  onMouseOut(event) {
224
- if (!this.wtSettings.has('onCellMouseOut')) {
278
+ if (!_classPrivateFieldGet(this, _wtSettings).has('onCellMouseOut')) {
225
279
  return;
226
280
  }
227
- const table = this.wtTable.TABLE;
281
+ const table = _classPrivateFieldGet(this, _wtTable).TABLE;
228
282
  const lastTD = (0, _element.closestDown)(event.target, ['TD', 'TH'], table);
229
283
  const nextTD = (0, _element.closestDown)(event.relatedTarget, ['TD', 'TH'], table);
230
- const parent = this.parent || this;
284
+ const parent = _classPrivateFieldGet(this, _parent) || this;
231
285
  if (lastTD && lastTD !== nextTD && (0, _element.isChildOf)(lastTD, table)) {
232
- this.callListener('onCellMouseOut', event, this.wtTable.getCoords(lastTD), lastTD);
286
+ this.callListener('onCellMouseOut', event, _classPrivateFieldGet(this, _wtTable).getCoords(lastTD), lastTD);
233
287
  if (nextTD === null) {
234
288
  parent.lastMouseOver = null;
235
289
  }
@@ -243,9 +297,8 @@ class Event {
243
297
  * @param {MouseEvent} event The mouse event object.
244
298
  */
245
299
  onMouseUp(event) {
246
- const priv = privatePool.get(this);
247
300
  const cell = this.parentCell(event.target);
248
- if (cell.TD && this.wtSettings.has('onCellMouseUp')) {
301
+ if (cell.TD && _classPrivateFieldGet(this, _wtSettings).has('onCellMouseUp')) {
249
302
  this.callListener('onCellMouseUp', event, cell.coords, cell.TD);
250
303
  }
251
304
 
@@ -253,19 +306,19 @@ class Event {
253
306
  if (event.button !== 0 && !this.touchApplied) {
254
307
  return;
255
308
  }
256
- if (cell.TD === priv.dblClickOrigin[0] && cell.TD === priv.dblClickOrigin[1]) {
309
+ if (cell.TD === _classPrivateFieldGet(this, _dblClickOrigin)[0] && cell.TD === _classPrivateFieldGet(this, _dblClickOrigin)[1]) {
257
310
  if ((0, _element.hasClass)(event.target, 'corner')) {
258
311
  this.callListener('onCellCornerDblClick', event, cell.coords, cell.TD);
259
312
  } else {
260
313
  this.callListener('onCellDblClick', event, cell.coords, cell.TD);
261
314
  }
262
- priv.dblClickOrigin[0] = null;
263
- priv.dblClickOrigin[1] = null;
264
- } else if (cell.TD === priv.dblClickOrigin[0]) {
265
- priv.dblClickOrigin[1] = cell.TD;
266
- clearTimeout(priv.dblClickTimeout[1]);
267
- priv.dblClickTimeout[1] = setTimeout(() => {
268
- priv.dblClickOrigin[1] = null;
315
+ _classPrivateFieldGet(this, _dblClickOrigin)[0] = null;
316
+ _classPrivateFieldGet(this, _dblClickOrigin)[1] = null;
317
+ } else if (cell.TD === _classPrivateFieldGet(this, _dblClickOrigin)[0]) {
318
+ _classPrivateFieldGet(this, _dblClickOrigin)[1] = cell.TD;
319
+ clearTimeout(_classPrivateFieldGet(this, _dblClickTimeout)[1]);
320
+ _classPrivateFieldGet(this, _dblClickTimeout)[1] = setTimeout(() => {
321
+ _classPrivateFieldGet(this, _dblClickOrigin)[1] = null;
269
322
  }, 500);
270
323
  }
271
324
  }
@@ -277,8 +330,7 @@ class Event {
277
330
  * @param {MouseEvent} event The mouse event object.
278
331
  */
279
332
  onTouchStart(event) {
280
- const priv = privatePool.get(this);
281
- priv.selectedCellBeforeTouchEnd = this.selectionManager.getFocusSelection().cellRange;
333
+ _classPrivateFieldSet(this, _selectedCellBeforeTouchEnd, _classPrivateFieldGet(this, _selectionManager).getFocusSelection().cellRange);
282
334
  this.touchApplied = true;
283
335
  this.onMouseDown(event);
284
336
  }
@@ -294,7 +346,7 @@ class Event {
294
346
  const target = event.target;
295
347
  const parentCellCoords = (_this$parentCell = this.parentCell(target)) === null || _this$parentCell === void 0 ? void 0 : _this$parentCell.coords;
296
348
  const isCellsRange = (0, _mixed.isDefined)(parentCellCoords) && parentCellCoords.row >= 0 && parentCellCoords.col >= 0;
297
- const isEventCancelable = event.cancelable && isCellsRange && this.wtSettings.getSetting('isDataViewInstance');
349
+ const isEventCancelable = event.cancelable && isCellsRange && _classPrivateFieldGet(this, _wtSettings).getSetting('isDataViewInstance');
298
350
 
299
351
  // To prevent accidental redirects or other actions that the interactive elements (e.q "A" link) do
300
352
  // while the cell is highlighted, all touch events that are triggered on different cells are
@@ -330,9 +382,9 @@ class Event {
330
382
  * @param {HTMLElement} target Event target.
331
383
  */
332
384
  callListener(name, event, coords, target) {
333
- const listener = this.wtSettings.getSettingPure(name);
385
+ const listener = _classPrivateFieldGet(this, _wtSettings).getSettingPure(name);
334
386
  if (listener) {
335
- listener(event, coords, target, this.facadeGetter());
387
+ listener(event, coords, target, _classPrivateFieldGet(this, _facadeGetter).call(this));
336
388
  }
337
389
  }
338
390
 
@@ -340,10 +392,9 @@ class Event {
340
392
  * Clears double-click timeouts and destroys the internal eventManager instance.
341
393
  */
342
394
  destroy() {
343
- const priv = privatePool.get(this);
344
- clearTimeout(priv.dblClickTimeout[0]);
345
- clearTimeout(priv.dblClickTimeout[1]);
346
- this.eventManager.destroy();
395
+ clearTimeout(_classPrivateFieldGet(this, _dblClickTimeout)[0]);
396
+ clearTimeout(_classPrivateFieldGet(this, _dblClickTimeout)[1]);
397
+ _classPrivateFieldGet(this, _eventManager).destroy();
347
398
  }
348
399
  }
349
400
  var _default = Event;