handsontable 0.0.0-next-08765b9-20230714 → 0.0.0-next-f8ea07b-20230714

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 (295) hide show
  1. package/3rdparty/walkontable/src/{selection/border/border.js → border.js} +12 -7
  2. package/3rdparty/walkontable/src/{selection/border/border.mjs → border.mjs} +12 -7
  3. package/3rdparty/walkontable/src/cell/coords.d.ts +1 -6
  4. package/3rdparty/walkontable/src/cell/coords.js +11 -50
  5. package/3rdparty/walkontable/src/cell/coords.mjs +11 -50
  6. package/3rdparty/walkontable/src/cell/range.d.ts +2 -9
  7. package/3rdparty/walkontable/src/cell/range.js +7 -38
  8. package/3rdparty/walkontable/src/cell/range.mjs +7 -38
  9. package/3rdparty/walkontable/src/core/_base.js +3 -9
  10. package/3rdparty/walkontable/src/core/_base.mjs +3 -9
  11. package/3rdparty/walkontable/src/core/clone.js +2 -2
  12. package/3rdparty/walkontable/src/core/clone.mjs +2 -2
  13. package/3rdparty/walkontable/src/core/core.js +2 -3
  14. package/3rdparty/walkontable/src/core/core.mjs +2 -3
  15. package/3rdparty/walkontable/src/event.js +7 -7
  16. package/3rdparty/walkontable/src/event.mjs +7 -7
  17. package/3rdparty/walkontable/src/facade/core.js +2 -2
  18. package/3rdparty/walkontable/src/facade/core.mjs +2 -2
  19. package/3rdparty/walkontable/src/index.js +2 -10
  20. package/3rdparty/walkontable/src/index.mjs +2 -2
  21. package/3rdparty/walkontable/src/overlay/_base.js +1 -1
  22. package/3rdparty/walkontable/src/overlay/_base.mjs +1 -1
  23. package/3rdparty/walkontable/src/overlay/inlineStart.js +6 -2
  24. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +6 -2
  25. package/3rdparty/walkontable/src/overlay/top.js +6 -2
  26. package/3rdparty/walkontable/src/overlay/top.mjs +6 -2
  27. package/3rdparty/walkontable/src/selection.js +295 -0
  28. package/3rdparty/walkontable/src/selection.mjs +290 -0
  29. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +0 -9
  30. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +0 -9
  31. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +0 -9
  32. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +0 -9
  33. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +0 -9
  34. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +0 -9
  35. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +0 -9
  36. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +0 -9
  37. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +0 -9
  38. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +0 -9
  39. package/3rdparty/walkontable/src/table.js +78 -6
  40. package/3rdparty/walkontable/src/table.mjs +79 -7
  41. package/base.js +2 -2
  42. package/base.mjs +2 -2
  43. package/core.d.ts +3 -6
  44. package/core.js +290 -173
  45. package/core.mjs +290 -173
  46. package/dataMap/metaManager/metaSchema.js +0 -41
  47. package/dataMap/metaManager/metaSchema.mjs +0 -41
  48. package/dist/handsontable.css +3 -19
  49. package/dist/handsontable.full.css +3 -19
  50. package/dist/handsontable.full.js +5369 -8671
  51. package/dist/handsontable.full.min.css +3 -3
  52. package/dist/handsontable.full.min.js +25 -25
  53. package/dist/handsontable.js +8117 -11419
  54. package/dist/handsontable.min.css +3 -3
  55. package/dist/handsontable.min.js +19 -19
  56. package/editorManager.js +75 -11
  57. package/editorManager.mjs +74 -11
  58. package/editors/textEditor/textEditor.js +11 -3
  59. package/editors/textEditor/textEditor.mjs +12 -4
  60. package/helpers/mixed.js +1 -1
  61. package/helpers/mixed.mjs +1 -1
  62. package/helpers/number.d.ts +0 -1
  63. package/helpers/number.js +0 -18
  64. package/helpers/number.mjs +0 -17
  65. package/package.json +1 -1
  66. package/pluginHooks.d.ts +1 -7
  67. package/pluginHooks.js +1 -106
  68. package/pluginHooks.mjs +1 -106
  69. package/plugins/collapsibleColumns/collapsibleColumns.js +4 -58
  70. package/plugins/collapsibleColumns/collapsibleColumns.mjs +4 -58
  71. package/plugins/columnSorting/columnSorting.js +0 -38
  72. package/plugins/columnSorting/columnSorting.mjs +2 -38
  73. package/plugins/columnSorting/index.js +1 -3
  74. package/plugins/columnSorting/index.mjs +1 -1
  75. package/plugins/comments/commentEditor.js +0 -1
  76. package/plugins/comments/commentEditor.mjs +0 -1
  77. package/plugins/comments/comments.js +189 -251
  78. package/plugins/comments/comments.mjs +190 -250
  79. package/plugins/contextMenu/contextMenu.d.ts +1 -1
  80. package/plugins/contextMenu/contextMenu.js +30 -72
  81. package/plugins/contextMenu/contextMenu.mjs +31 -73
  82. package/plugins/contextMenu/predefinedItems/alignment.js +0 -7
  83. package/plugins/contextMenu/predefinedItems/alignment.mjs +0 -7
  84. package/plugins/contextMenu/predefinedItems/clearColumn.js +3 -5
  85. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +3 -5
  86. package/plugins/contextMenu/predefinedItems/columnLeft.js +3 -5
  87. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +3 -5
  88. package/plugins/contextMenu/predefinedItems/columnRight.js +3 -5
  89. package/plugins/contextMenu/predefinedItems/columnRight.mjs +3 -5
  90. package/plugins/contextMenu/predefinedItems/readOnly.js +0 -7
  91. package/plugins/contextMenu/predefinedItems/readOnly.mjs +0 -7
  92. package/plugins/contextMenu/predefinedItems/removeColumn.js +5 -7
  93. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -5
  94. package/plugins/contextMenu/predefinedItems/removeRow.js +5 -7
  95. package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -5
  96. package/plugins/contextMenu/predefinedItems/rowAbove.js +3 -5
  97. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +3 -5
  98. package/plugins/contextMenu/predefinedItems/rowBelow.js +3 -5
  99. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +3 -5
  100. package/plugins/contextMenu/utils.js +16 -28
  101. package/plugins/contextMenu/utils.mjs +15 -27
  102. package/plugins/copyPaste/contextMenuItem/copy.js +0 -7
  103. package/plugins/copyPaste/contextMenuItem/copy.mjs +0 -7
  104. package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.js +1 -9
  105. package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.mjs +1 -9
  106. package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.js +1 -9
  107. package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.mjs +1 -9
  108. package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.js +1 -9
  109. package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.mjs +1 -9
  110. package/plugins/copyPaste/contextMenuItem/cut.js +0 -7
  111. package/plugins/copyPaste/contextMenuItem/cut.mjs +0 -7
  112. package/plugins/copyPaste/copyPaste.js +2 -6
  113. package/plugins/copyPaste/copyPaste.mjs +2 -6
  114. package/plugins/customBorders/customBorders.js +20 -23
  115. package/plugins/customBorders/customBorders.mjs +21 -24
  116. package/plugins/dropdownMenu/dropdownMenu.d.ts +1 -1
  117. package/plugins/dropdownMenu/dropdownMenu.js +32 -89
  118. package/plugins/dropdownMenu/dropdownMenu.mjs +32 -89
  119. package/plugins/filters/filters.js +14 -31
  120. package/plugins/filters/filters.mjs +13 -30
  121. package/plugins/mergeCells/mergeCells.js +16 -5
  122. package/plugins/mergeCells/mergeCells.mjs +16 -5
  123. package/plugins/multiColumnSorting/multiColumnSorting.js +2 -37
  124. package/plugins/multiColumnSorting/multiColumnSorting.mjs +2 -37
  125. package/plugins/nestedHeaders/nestedHeaders.js +8 -121
  126. package/plugins/nestedHeaders/nestedHeaders.mjs +8 -121
  127. package/plugins/nestedHeaders/stateManager/index.js +0 -37
  128. package/plugins/nestedHeaders/stateManager/index.mjs +0 -37
  129. package/plugins/nestedRows/nestedRows.js +0 -41
  130. package/plugins/nestedRows/nestedRows.mjs +0 -41
  131. package/renderers/checkboxRenderer/checkboxRenderer.js +2 -2
  132. package/renderers/checkboxRenderer/checkboxRenderer.mjs +1 -1
  133. package/selection/highlight/constants.js +15 -0
  134. package/selection/highlight/constants.mjs +6 -0
  135. package/selection/highlight/highlight.js +71 -256
  136. package/selection/highlight/highlight.mjs +71 -250
  137. package/selection/highlight/types/activeHeader.js +8 -10
  138. package/selection/highlight/types/activeHeader.mjs +8 -10
  139. package/selection/highlight/types/area.js +18 -6
  140. package/selection/highlight/types/area.mjs +18 -6
  141. package/selection/highlight/types/{focus.js → cell.js} +7 -5
  142. package/selection/highlight/types/{focus.mjs → cell.mjs} +7 -5
  143. package/selection/highlight/types/customSelection.js +9 -7
  144. package/selection/highlight/types/customSelection.mjs +9 -7
  145. package/selection/highlight/types/fill.js +7 -5
  146. package/selection/highlight/types/fill.mjs +7 -5
  147. package/selection/highlight/types/header.js +18 -9
  148. package/selection/highlight/types/header.mjs +18 -9
  149. package/selection/highlight/types/index.js +35 -0
  150. package/selection/highlight/types/index.mjs +31 -0
  151. package/selection/highlight/visualSelection.js +27 -31
  152. package/selection/highlight/visualSelection.mjs +27 -31
  153. package/selection/index.js +7 -4
  154. package/selection/index.mjs +3 -2
  155. package/selection/mouseEventHandler.js +1 -1
  156. package/selection/mouseEventHandler.mjs +1 -1
  157. package/selection/range.js +8 -8
  158. package/selection/range.mjs +8 -8
  159. package/selection/selection.js +154 -290
  160. package/selection/selection.mjs +153 -287
  161. package/selection/transformation.js +90 -232
  162. package/selection/transformation.mjs +90 -232
  163. package/selection/utils.js +21 -15
  164. package/selection/utils.mjs +21 -16
  165. package/settings.d.ts +0 -2
  166. package/shortcuts/manager.js +0 -2
  167. package/shortcuts/manager.mjs +0 -2
  168. package/shortcuts/recorder.js +2 -2
  169. package/shortcuts/recorder.mjs +2 -2
  170. package/shortcuts/utils.js +5 -19
  171. package/shortcuts/utils.mjs +4 -18
  172. package/tableView.js +13 -67
  173. package/tableView.mjs +13 -67
  174. package/3rdparty/walkontable/src/selection/border/constants.js +0 -16
  175. package/3rdparty/walkontable/src/selection/border/constants.mjs +0 -12
  176. package/3rdparty/walkontable/src/selection/constants.js +0 -62
  177. package/3rdparty/walkontable/src/selection/constants.mjs +0 -51
  178. package/3rdparty/walkontable/src/selection/index.js +0 -26
  179. package/3rdparty/walkontable/src/selection/index.mjs +0 -5
  180. package/3rdparty/walkontable/src/selection/manager.js +0 -259
  181. package/3rdparty/walkontable/src/selection/manager.mjs +0 -254
  182. package/3rdparty/walkontable/src/selection/scanner.js +0 -270
  183. package/3rdparty/walkontable/src/selection/scanner.mjs +0 -267
  184. package/3rdparty/walkontable/src/selection/selection.js +0 -101
  185. package/3rdparty/walkontable/src/selection/selection.mjs +0 -96
  186. package/core/focusCatcher/focusDetector.js +0 -58
  187. package/core/focusCatcher/focusDetector.mjs +0 -54
  188. package/core/focusCatcher/index.js +0 -142
  189. package/core/focusCatcher/index.mjs +0 -138
  190. package/core/index.js +0 -9
  191. package/core/index.mjs +0 -1
  192. package/plugins/comments/contextMenuItem/addEditComment.js +0 -41
  193. package/plugins/comments/contextMenuItem/addEditComment.mjs +0 -35
  194. package/plugins/comments/contextMenuItem/readOnlyComment.js +0 -49
  195. package/plugins/comments/contextMenuItem/readOnlyComment.mjs +0 -43
  196. package/plugins/comments/contextMenuItem/removeComment.js +0 -38
  197. package/plugins/comments/contextMenuItem/removeComment.mjs +0 -32
  198. package/selection/highlight/types/areaLayered.js +0 -31
  199. package/selection/highlight/types/areaLayered.mjs +0 -26
  200. package/selection/highlight/types/column.js +0 -27
  201. package/selection/highlight/types/column.mjs +0 -22
  202. package/selection/highlight/types/row.js +0 -27
  203. package/selection/highlight/types/row.mjs +0 -22
  204. package/shortcutContexts/commands/editor/closeAndSave.js +0 -12
  205. package/shortcutContexts/commands/editor/closeAndSave.mjs +0 -8
  206. package/shortcutContexts/commands/editor/closeWithoutSaving.js +0 -12
  207. package/shortcutContexts/commands/editor/closeWithoutSaving.mjs +0 -8
  208. package/shortcutContexts/commands/editor/fastOpen.js +0 -16
  209. package/shortcutContexts/commands/editor/fastOpen.mjs +0 -12
  210. package/shortcutContexts/commands/editor/index.js +0 -16
  211. package/shortcutContexts/commands/editor/index.mjs +0 -12
  212. package/shortcutContexts/commands/editor/open.js +0 -27
  213. package/shortcutContexts/commands/editor/open.mjs +0 -23
  214. package/shortcutContexts/commands/emptySelectedCells.js +0 -11
  215. package/shortcutContexts/commands/emptySelectedCells.mjs +0 -7
  216. package/shortcutContexts/commands/extendCellsSelection/down.js +0 -15
  217. package/shortcutContexts/commands/extendCellsSelection/down.mjs +0 -11
  218. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +0 -21
  219. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +0 -17
  220. package/shortcutContexts/commands/extendCellsSelection/index.js +0 -26
  221. package/shortcutContexts/commands/extendCellsSelection/index.mjs +0 -22
  222. package/shortcutContexts/commands/extendCellsSelection/left.js +0 -15
  223. package/shortcutContexts/commands/extendCellsSelection/left.mjs +0 -11
  224. package/shortcutContexts/commands/extendCellsSelection/right.js +0 -15
  225. package/shortcutContexts/commands/extendCellsSelection/right.mjs +0 -11
  226. package/shortcutContexts/commands/extendCellsSelection/toColumns.js +0 -19
  227. package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +0 -15
  228. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +0 -29
  229. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +0 -25
  230. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +0 -19
  231. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +0 -15
  232. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +0 -19
  233. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +0 -15
  234. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +0 -29
  235. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +0 -25
  236. package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +0 -29
  237. package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +0 -25
  238. package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +0 -29
  239. package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +0 -25
  240. package/shortcutContexts/commands/extendCellsSelection/toRows.js +0 -19
  241. package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +0 -15
  242. package/shortcutContexts/commands/extendCellsSelection/up.js +0 -15
  243. package/shortcutContexts/commands/extendCellsSelection/up.mjs +0 -11
  244. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +0 -21
  245. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +0 -17
  246. package/shortcutContexts/commands/index.js +0 -35
  247. package/shortcutContexts/commands/index.mjs +0 -31
  248. package/shortcutContexts/commands/moveCellSelection/down.js +0 -13
  249. package/shortcutContexts/commands/moveCellSelection/down.mjs +0 -9
  250. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +0 -31
  251. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +0 -27
  252. package/shortcutContexts/commands/moveCellSelection/index.js +0 -28
  253. package/shortcutContexts/commands/moveCellSelection/index.mjs +0 -24
  254. package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +0 -12
  255. package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +0 -8
  256. package/shortcutContexts/commands/moveCellSelection/inlineStart.js +0 -12
  257. package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +0 -8
  258. package/shortcutContexts/commands/moveCellSelection/left.js +0 -10
  259. package/shortcutContexts/commands/moveCellSelection/left.mjs +0 -6
  260. package/shortcutContexts/commands/moveCellSelection/right.js +0 -10
  261. package/shortcutContexts/commands/moveCellSelection/right.mjs +0 -6
  262. package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +0 -17
  263. package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +0 -13
  264. package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.js +0 -18
  265. package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.mjs +0 -14
  266. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +0 -14
  267. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +0 -10
  268. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +0 -17
  269. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +0 -13
  270. package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +0 -19
  271. package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +0 -15
  272. package/shortcutContexts/commands/moveCellSelection/toMostRight.js +0 -21
  273. package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +0 -17
  274. package/shortcutContexts/commands/moveCellSelection/toMostTop.js +0 -17
  275. package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +0 -13
  276. package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.js +0 -19
  277. package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.mjs +0 -15
  278. package/shortcutContexts/commands/moveCellSelection/up.js +0 -13
  279. package/shortcutContexts/commands/moveCellSelection/up.mjs +0 -9
  280. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +0 -31
  281. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +0 -27
  282. package/shortcutContexts/commands/populateSelectedCellsData.js +0 -29
  283. package/shortcutContexts/commands/populateSelectedCellsData.mjs +0 -25
  284. package/shortcutContexts/commands/scrollToFocusedCell.js +0 -36
  285. package/shortcutContexts/commands/scrollToFocusedCell.mjs +0 -32
  286. package/shortcutContexts/commands/selectAll.js +0 -10
  287. package/shortcutContexts/commands/selectAll.mjs +0 -6
  288. package/shortcutContexts/constants.js +0 -13
  289. package/shortcutContexts/constants.mjs +0 -8
  290. package/shortcutContexts/editor.js +0 -25
  291. package/shortcutContexts/editor.mjs +0 -21
  292. package/shortcutContexts/grid.js +0 -163
  293. package/shortcutContexts/grid.mjs +0 -159
  294. package/shortcutContexts/index.js +0 -24
  295. package/shortcutContexts/index.mjs +0 -11
@@ -1,11 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- var _element = require("../../../../../helpers/dom/element");
5
- var _event = require("../../../../../helpers/dom/event");
6
- var _object = require("../../../../../helpers/object");
7
- var _browser = require("../../../../../helpers/browser");
8
- var _constants = require("./constants");
4
+ var _element = require("../../../helpers/dom/element");
5
+ var _event = require("../../../helpers/dom/event");
6
+ var _object = require("../../../helpers/object");
7
+ var _browser = require("../../../helpers/browser");
9
8
  /**
10
9
  *
11
10
  */
@@ -35,7 +34,13 @@ class Border {
35
34
  this.bottomStyle = null;
36
35
  this.startStyle = null;
37
36
  this.endStyle = null;
38
- this.cornerDefaultStyle = _constants.CORNER_DEFAULT_STYLE;
37
+ this.cornerDefaultStyle = {
38
+ width: '6px',
39
+ height: '6px',
40
+ borderWidth: '1px',
41
+ borderStyle: 'solid',
42
+ borderColor: '#FFF'
43
+ };
39
44
  // Offset to moving the corner to be centered relative to the grid.
40
45
  this.cornerCenterPointOffset = -(parseInt(this.cornerDefaultStyle.width, 10) / 2);
41
46
  this.corner = null;
@@ -245,7 +250,7 @@ class Border {
245
250
  * @returns {boolean}
246
251
  */
247
252
  isPartRange(row, col) {
248
- const areaSelection = this.wot.selectionManager.getAreaSelection();
253
+ const areaSelection = this.wot.selections.createOrGetArea();
249
254
  if (areaSelection.cellRange) {
250
255
  if (row !== areaSelection.cellRange.to.row || col !== areaSelection.cellRange.to.col) {
251
256
  return true;
@@ -1,8 +1,7 @@
1
- import { addClass, hasClass, removeClass, getComputedStyle, getTrimmingContainer, innerWidth, innerHeight, offset, outerHeight, outerWidth } from "../../../../../helpers/dom/element.mjs";
2
- import { stopImmediatePropagation } from "../../../../../helpers/dom/event.mjs";
3
- import { objectEach } from "../../../../../helpers/object.mjs";
4
- import { isMobileBrowser } from "../../../../../helpers/browser.mjs";
5
- import { CORNER_DEFAULT_STYLE } from "./constants.mjs";
1
+ import { addClass, hasClass, removeClass, getComputedStyle, getTrimmingContainer, innerWidth, innerHeight, offset, outerHeight, outerWidth } from "../../../helpers/dom/element.mjs";
2
+ import { stopImmediatePropagation } from "../../../helpers/dom/event.mjs";
3
+ import { objectEach } from "../../../helpers/object.mjs";
4
+ import { isMobileBrowser } from "../../../helpers/browser.mjs";
6
5
  /**
7
6
  *
8
7
  */
@@ -32,7 +31,13 @@ class Border {
32
31
  this.bottomStyle = null;
33
32
  this.startStyle = null;
34
33
  this.endStyle = null;
35
- this.cornerDefaultStyle = CORNER_DEFAULT_STYLE;
34
+ this.cornerDefaultStyle = {
35
+ width: '6px',
36
+ height: '6px',
37
+ borderWidth: '1px',
38
+ borderStyle: 'solid',
39
+ borderColor: '#FFF'
40
+ };
36
41
  // Offset to moving the corner to be centered relative to the grid.
37
42
  this.cornerCenterPointOffset = -(parseInt(this.cornerDefaultStyle.width, 10) / 2);
38
43
  this.corner = null;
@@ -242,7 +247,7 @@ class Border {
242
247
  * @returns {boolean}
243
248
  */
244
249
  isPartRange(row, col) {
245
- const areaSelection = this.wot.selectionManager.getAreaSelection();
250
+ const areaSelection = this.wot.selections.createOrGetArea();
246
251
  if (areaSelection.cellRange) {
247
252
  if (row !== areaSelection.cellRange.to.row || col !== areaSelection.cellRange.to.col) {
248
253
  return true;
@@ -4,12 +4,7 @@ export default class CellCoords {
4
4
  row: number;
5
5
  col: number;
6
6
 
7
- isValid(tableParams: {
8
- countRows?: number;
9
- countCols?: number;
10
- countRowHeaders?: number;
11
- countColHeaders?: number;
12
- }): boolean;
7
+ isValid(wot: any): boolean;
13
8
  isEqual(cellCoords: CellCoords): boolean;
14
9
  isSouthEastOf(testedCoords: any): boolean;
15
10
  isNorthWestOf(testedCoords: any): boolean;
@@ -62,45 +62,26 @@ class CellCoords {
62
62
 
63
63
  /**
64
64
  * Checks if the coordinates in your `CellCoords` instance are valid
65
- * in the context of given table parameters.
65
+ * in the context of a given Walkontable instance.
66
66
  *
67
67
  * The `row` index:
68
- * - Must be an integer.
69
- * - Must be higher than the number of column headers in the table.
70
- * - Must be lower than the total number of rows in the table.
68
+ * - Can't be negative.
69
+ * - Can't be higher than the total number of rows in the Walkontable instance.
71
70
  *
72
71
  * The `col` index:
73
- * - Must be an integer.
74
- * - Must be higher than the number of row headers in the table.
75
- * - Must be lower than the total number of columns in the table.
72
+ * - Can't be negative.
73
+ * - Can't be higher than the total number of columns in the Walkontable instance.
76
74
  *
77
- * @param {object} [tableParams] An object with a defined table size.
78
- * @param {number} [tableParams.countRows=0] The total number of rows.
79
- * @param {number} [tableParams.countCols=0] The total number of columns.
80
- * @param {number} [tableParams.countRowHeaders=0] A number of row headers.
81
- * @param {number} [tableParams.countColHeaders=0] A number of column headers.
75
+ * @param {Walkontable} wot A Walkontable instance.
82
76
  * @returns {boolean} `true`: The coordinates are valid.
83
77
  */
84
- isValid(tableParams) {
85
- const {
86
- countRows,
87
- countCols,
88
- countRowHeaders,
89
- countColHeaders
90
- } = {
91
- countRows: 0,
92
- countCols: 0,
93
- countRowHeaders: 0,
94
- countColHeaders: 0,
95
- ...tableParams
96
- };
97
- if (!Number.isInteger(this.row) || !Number.isInteger(this.col)) {
98
- return false;
99
- }
100
- if (this.row < -countColHeaders || this.col < -countRowHeaders) {
78
+ isValid(wot) {
79
+ // check if the row and column indexes are valid (0 or higher)
80
+ if (this.row < 0 || this.col < 0) {
101
81
  return false;
102
82
  }
103
- if (this.row >= countRows || this.col >= countCols) {
83
+ // check if the selection fits in the total of rows and columns
84
+ if (this.row >= wot.getSetting('totalRows') || this.col >= wot.getSetting('totalColumns')) {
104
85
  return false;
105
86
  }
106
87
  return true;
@@ -120,26 +101,6 @@ class CellCoords {
120
101
  return this.row === cellCoords.row && this.col === cellCoords.col;
121
102
  }
122
103
 
123
- /**
124
- * Checks if the coordinates point to the headers range. If one of the axis (row or col) point to
125
- * the header (negative value) then method returns `true`.
126
- *
127
- * @returns {boolean}
128
- */
129
- isHeader() {
130
- return !this.isCell();
131
- }
132
-
133
- /**
134
- * Checks if the coordinates point to the cells range. If all axis (row and col) point to
135
- * the cell (positive value) then method returns `true`.
136
- *
137
- * @returns {boolean}
138
- */
139
- isCell() {
140
- return this.row >= 0 && this.col >= 0;
141
- }
142
-
143
104
  /**
144
105
  * Checks if another set of coordinates (`testedCoords`)
145
106
  * is south-east of the coordinates in your `CellCoords` instance.
@@ -59,45 +59,26 @@ class CellCoords {
59
59
 
60
60
  /**
61
61
  * Checks if the coordinates in your `CellCoords` instance are valid
62
- * in the context of given table parameters.
62
+ * in the context of a given Walkontable instance.
63
63
  *
64
64
  * The `row` index:
65
- * - Must be an integer.
66
- * - Must be higher than the number of column headers in the table.
67
- * - Must be lower than the total number of rows in the table.
65
+ * - Can't be negative.
66
+ * - Can't be higher than the total number of rows in the Walkontable instance.
68
67
  *
69
68
  * The `col` index:
70
- * - Must be an integer.
71
- * - Must be higher than the number of row headers in the table.
72
- * - Must be lower than the total number of columns in the table.
69
+ * - Can't be negative.
70
+ * - Can't be higher than the total number of columns in the Walkontable instance.
73
71
  *
74
- * @param {object} [tableParams] An object with a defined table size.
75
- * @param {number} [tableParams.countRows=0] The total number of rows.
76
- * @param {number} [tableParams.countCols=0] The total number of columns.
77
- * @param {number} [tableParams.countRowHeaders=0] A number of row headers.
78
- * @param {number} [tableParams.countColHeaders=0] A number of column headers.
72
+ * @param {Walkontable} wot A Walkontable instance.
79
73
  * @returns {boolean} `true`: The coordinates are valid.
80
74
  */
81
- isValid(tableParams) {
82
- const {
83
- countRows,
84
- countCols,
85
- countRowHeaders,
86
- countColHeaders
87
- } = {
88
- countRows: 0,
89
- countCols: 0,
90
- countRowHeaders: 0,
91
- countColHeaders: 0,
92
- ...tableParams
93
- };
94
- if (!Number.isInteger(this.row) || !Number.isInteger(this.col)) {
95
- return false;
96
- }
97
- if (this.row < -countColHeaders || this.col < -countRowHeaders) {
75
+ isValid(wot) {
76
+ // check if the row and column indexes are valid (0 or higher)
77
+ if (this.row < 0 || this.col < 0) {
98
78
  return false;
99
79
  }
100
- if (this.row >= countRows || this.col >= countCols) {
80
+ // check if the selection fits in the total of rows and columns
81
+ if (this.row >= wot.getSetting('totalRows') || this.col >= wot.getSetting('totalColumns')) {
101
82
  return false;
102
83
  }
103
84
  return true;
@@ -117,26 +98,6 @@ class CellCoords {
117
98
  return this.row === cellCoords.row && this.col === cellCoords.col;
118
99
  }
119
100
 
120
- /**
121
- * Checks if the coordinates point to the headers range. If one of the axis (row or col) point to
122
- * the header (negative value) then method returns `true`.
123
- *
124
- * @returns {boolean}
125
- */
126
- isHeader() {
127
- return !this.isCell();
128
- }
129
-
130
- /**
131
- * Checks if the coordinates point to the cells range. If all axis (row and col) point to
132
- * the cell (positive value) then method returns `true`.
133
- *
134
- * @returns {boolean}
135
- */
136
- isCell() {
137
- return this.row >= 0 && this.col >= 0;
138
- }
139
-
140
101
  /**
141
102
  * Checks if another set of coordinates (`testedCoords`)
142
103
  * is south-east of the coordinates in your `CellCoords` instance.
@@ -12,15 +12,8 @@ export default class CellRange {
12
12
  setHighlight(coords: CellCoords): CellRange;
13
13
  setFrom(coords: CellCoords): CellRange;
14
14
  setTo(coords: CellCoords): CellRange;
15
- isValid(tableParams: {
16
- countRows?: number;
17
- countCols?: number;
18
- countRowHeaders?: number;
19
- countColHeaders?: number;
20
- }): boolean;
21
- isSingleCell(): boolean;
22
- isSingleHeader(): boolean;
23
- containsHeaders(): boolean;
15
+ isValid(wot: any): boolean;
16
+ isSingle(): boolean;
24
17
  getOuterHeight(): number;
25
18
  getOuterWidth(): number;
26
19
  getHeight(): number;
@@ -71,7 +71,7 @@ class CellRange {
71
71
  writable: true,
72
72
  value: false
73
73
  });
74
- this.highlight = highlight.clone();
74
+ this.highlight = highlight.clone().normalize();
75
75
  this.from = from.clone();
76
76
  this.to = to.clone();
77
77
  _classPrivateFieldSet(this, _isRtl, isRtl);
@@ -84,7 +84,7 @@ class CellRange {
84
84
  * @returns {CellRange}
85
85
  */
86
86
  setHighlight(coords) {
87
- this.highlight = coords.clone();
87
+ this.highlight = coords.clone().normalize();
88
88
  return this;
89
89
  }
90
90
 
@@ -112,28 +112,15 @@ class CellRange {
112
112
 
113
113
  /**
114
114
  * Checks if the coordinates in your `CellRange` instance are valid
115
- * in the context of given table parameters.
115
+ * in the context of a given Walkontable instance.
116
116
  *
117
117
  * See the [`isValid()`](@/api/cellCoords.md#isvalid) method of the [`CellCoords`](@/api/cellCoords.md) class.
118
118
  *
119
- * @param {object} tableParams An object with a defined table size.
120
- * @param {number} tableParams.countRows The total number of rows.
121
- * @param {number} tableParams.countCols The total number of columns.
122
- * @param {number} tableParams.countRowHeaders A number of row headers.
123
- * @param {number} tableParams.countColHeaders A number of column headers.
119
+ * @param {Walkontable} wot A Walkontable instance.
124
120
  * @returns {boolean}
125
121
  */
126
- isValid(tableParams) {
127
- return this.from.isValid(tableParams) && this.to.isValid(tableParams);
128
- }
129
-
130
- /**
131
- * Checks if your range is just a single cell or header.
132
- *
133
- * @returns {boolean}
134
- */
135
- isSingle() {
136
- return this.isSingleCell() || this.isSingleHeader();
122
+ isValid(wot) {
123
+ return this.from.isValid(wot) && this.to.isValid(wot);
137
124
  }
138
125
 
139
126
  /**
@@ -141,28 +128,10 @@ class CellRange {
141
128
  *
142
129
  * @returns {boolean}
143
130
  */
144
- isSingleCell() {
131
+ isSingle() {
145
132
  return this.from.row >= 0 && this.from.row === this.to.row && this.from.col >= 0 && this.from.col === this.to.col;
146
133
  }
147
134
 
148
- /**
149
- * Checks if your range is just a single header.
150
- *
151
- * @returns {boolean}
152
- */
153
- isSingleHeader() {
154
- return (this.from.row < 0 || this.from.col < 0) && this.from.row === this.to.row && this.from.col === this.to.col;
155
- }
156
-
157
- /**
158
- * Checks if your range overlaps headers range (negative coordinates).
159
- *
160
- * @returns {boolean}
161
- */
162
- containsHeaders() {
163
- return this.from.isHeader() || this.to.isHeader();
164
- }
165
-
166
135
  /**
167
136
  * Returns the height of your range (as a number of rows, including row headers).
168
137
  *
@@ -67,7 +67,7 @@ class CellRange {
67
67
  writable: true,
68
68
  value: false
69
69
  });
70
- this.highlight = highlight.clone();
70
+ this.highlight = highlight.clone().normalize();
71
71
  this.from = from.clone();
72
72
  this.to = to.clone();
73
73
  _classPrivateFieldSet(this, _isRtl, isRtl);
@@ -80,7 +80,7 @@ class CellRange {
80
80
  * @returns {CellRange}
81
81
  */
82
82
  setHighlight(coords) {
83
- this.highlight = coords.clone();
83
+ this.highlight = coords.clone().normalize();
84
84
  return this;
85
85
  }
86
86
 
@@ -108,28 +108,15 @@ class CellRange {
108
108
 
109
109
  /**
110
110
  * Checks if the coordinates in your `CellRange` instance are valid
111
- * in the context of given table parameters.
111
+ * in the context of a given Walkontable instance.
112
112
  *
113
113
  * See the [`isValid()`](@/api/cellCoords.md#isvalid) method of the [`CellCoords`](@/api/cellCoords.md) class.
114
114
  *
115
- * @param {object} tableParams An object with a defined table size.
116
- * @param {number} tableParams.countRows The total number of rows.
117
- * @param {number} tableParams.countCols The total number of columns.
118
- * @param {number} tableParams.countRowHeaders A number of row headers.
119
- * @param {number} tableParams.countColHeaders A number of column headers.
115
+ * @param {Walkontable} wot A Walkontable instance.
120
116
  * @returns {boolean}
121
117
  */
122
- isValid(tableParams) {
123
- return this.from.isValid(tableParams) && this.to.isValid(tableParams);
124
- }
125
-
126
- /**
127
- * Checks if your range is just a single cell or header.
128
- *
129
- * @returns {boolean}
130
- */
131
- isSingle() {
132
- return this.isSingleCell() || this.isSingleHeader();
118
+ isValid(wot) {
119
+ return this.from.isValid(wot) && this.to.isValid(wot);
133
120
  }
134
121
 
135
122
  /**
@@ -137,28 +124,10 @@ class CellRange {
137
124
  *
138
125
  * @returns {boolean}
139
126
  */
140
- isSingleCell() {
127
+ isSingle() {
141
128
  return this.from.row >= 0 && this.from.row === this.to.row && this.from.col >= 0 && this.from.col === this.to.col;
142
129
  }
143
130
 
144
- /**
145
- * Checks if your range is just a single header.
146
- *
147
- * @returns {boolean}
148
- */
149
- isSingleHeader() {
150
- return (this.from.row < 0 || this.from.col < 0) && this.from.row === this.to.row && this.from.col === this.to.col;
151
- }
152
-
153
- /**
154
- * Checks if your range overlaps headers range (negative coordinates).
155
- *
156
- * @returns {boolean}
157
- */
158
- containsHeaders() {
159
- return this.from.isHeader() || this.to.isHeader();
160
- }
161
-
162
131
  /**
163
132
  * Returns the height of your range (as a number of rows, including row headers).
164
133
  *
@@ -31,7 +31,7 @@ class CoreAbstract {
31
31
  _defineProperty(this, "wtScroll", void 0);
32
32
  _defineProperty(this, "wtViewport", void 0);
33
33
  _defineProperty(this, "wtOverlays", void 0);
34
- _defineProperty(this, "selectionManager", void 0);
34
+ _defineProperty(this, "selections", void 0);
35
35
  _defineProperty(this, "wtEvent", void 0);
36
36
  /**
37
37
  * The walkontable instance id.
@@ -309,8 +309,8 @@ class CoreAbstract {
309
309
  return wot.wtOverlays; // TODO refactoring: move outside dao, use IOC
310
310
  },
311
311
 
312
- get selectionManager() {
313
- return wot.selectionManager; // TODO refactoring: move outside dao, use IOC
312
+ get selections() {
313
+ return wot.selections; // TODO refactoring: move outside dao, use IOC
314
314
  },
315
315
 
316
316
  get drawn() {
@@ -359,12 +359,6 @@ class CoreAbstract {
359
359
  },
360
360
  get countRowsVisible() {
361
361
  return wot.wtViewport.rowsVisibleCalculator.count;
362
- },
363
- get columnHeaders() {
364
- return wot.wtSettings.getSetting('columnHeaders');
365
- },
366
- get rowHeaders() {
367
- return wot.wtSettings.getSetting('rowHeaders');
368
362
  }
369
363
  };
370
364
  }
@@ -27,7 +27,7 @@ export default class CoreAbstract {
27
27
  _defineProperty(this, "wtScroll", void 0);
28
28
  _defineProperty(this, "wtViewport", void 0);
29
29
  _defineProperty(this, "wtOverlays", void 0);
30
- _defineProperty(this, "selectionManager", void 0);
30
+ _defineProperty(this, "selections", void 0);
31
31
  _defineProperty(this, "wtEvent", void 0);
32
32
  /**
33
33
  * The walkontable instance id.
@@ -305,8 +305,8 @@ export default class CoreAbstract {
305
305
  return wot.wtOverlays; // TODO refactoring: move outside dao, use IOC
306
306
  },
307
307
 
308
- get selectionManager() {
309
- return wot.selectionManager; // TODO refactoring: move outside dao, use IOC
308
+ get selections() {
309
+ return wot.selections; // TODO refactoring: move outside dao, use IOC
310
310
  },
311
311
 
312
312
  get drawn() {
@@ -355,12 +355,6 @@ export default class CoreAbstract {
355
355
  },
356
356
  get countRowsVisible() {
357
357
  return wot.wtViewport.rowsVisibleCalculator.count;
358
- },
359
- get columnHeaders() {
360
- return wot.wtSettings.getSetting('columnHeaders');
361
- },
362
- get rowHeaders() {
363
- return wot.wtSettings.getSetting('rowHeaders');
364
358
  }
365
359
  };
366
360
  }
@@ -26,8 +26,8 @@ class Clone extends _base.default {
26
26
  this.cloneOverlay = clone.overlay;
27
27
  this.wtTable = this.cloneOverlay.createTable(this.getTableDao(), facadeGetter, this.domBindings, this.wtSettings);
28
28
  this.wtViewport = clone.viewport;
29
- this.selectionManager = clone.selectionManager;
30
- this.wtEvent = new _event.default(facadeGetter, this.domBindings, this.wtSettings, this.eventManager, this.wtTable, this.selectionManager, clone.event);
29
+ this.selections = clone.selections;
30
+ this.wtEvent = new _event.default(facadeGetter, this.domBindings, this.wtSettings, this.eventManager, this.wtTable, this.selections, clone.event);
31
31
  this.findOriginalHeaders();
32
32
  }
33
33
  }
@@ -22,8 +22,8 @@ export default class Clone extends CoreAbstract {
22
22
  this.cloneOverlay = clone.overlay;
23
23
  this.wtTable = this.cloneOverlay.createTable(this.getTableDao(), facadeGetter, this.domBindings, this.wtSettings);
24
24
  this.wtViewport = clone.viewport;
25
- this.selectionManager = clone.selectionManager;
26
- this.wtEvent = new Event(facadeGetter, this.domBindings, this.wtSettings, this.eventManager, this.wtTable, this.selectionManager, clone.event);
25
+ this.selections = clone.selections;
26
+ this.wtEvent = new Event(facadeGetter, this.domBindings, this.wtSettings, this.eventManager, this.wtTable, this.selections, clone.event);
27
27
  this.findOriginalHeaders();
28
28
  }
29
29
  }
@@ -8,7 +8,6 @@ var _settings = _interopRequireDefault(require("../settings"));
8
8
  var _master = _interopRequireDefault(require("../table/master"));
9
9
  var _viewport = _interopRequireDefault(require("../viewport"));
10
10
  var _base = _interopRequireDefault(require("./_base"));
11
- var _manager = require("../selection/manager");
12
11
  var _object = require("../../../../helpers/object");
13
12
  var _element = require("../../../../helpers/dom/element");
14
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -26,8 +25,8 @@ class Walkontable extends _base.default {
26
25
 
27
26
  this.wtTable = new _master.default(this.getTableDao(), facadeGetter, this.domBindings, this.wtSettings);
28
27
  this.wtViewport = new _viewport.default(this.getViewportDao(), this.domBindings, this.wtSettings, this.eventManager, this.wtTable);
29
- this.selectionManager = new _manager.SelectionManager(this.wtSettings.getSetting('selections'));
30
- this.wtEvent = new _event.default(facadeGetter, this.domBindings, this.wtSettings, this.eventManager, this.wtTable, this.selectionManager);
28
+ this.selections = this.wtSettings.getSetting('selections');
29
+ this.wtEvent = new _event.default(facadeGetter, this.domBindings, this.wtSettings, this.eventManager, this.wtTable, this.selections);
31
30
  this.wtOverlays = new _overlays.default(
32
31
  // TODO create DAO and remove reference to the Walkontable instance.
33
32
  this, facadeGetter, this.domBindings, this.wtSettings, this.eventManager, this.wtTable);
@@ -5,7 +5,6 @@ import Settings from "../settings.mjs";
5
5
  import MasterTable from "../table/master.mjs";
6
6
  import Viewport from "../viewport.mjs";
7
7
  import CoreAbstract from "./_base.mjs";
8
- import { SelectionManager } from "../selection/manager.mjs";
9
8
  import { objectEach } from "../../../../helpers/object.mjs";
10
9
  import { addClass, removeClass } from "../../../../helpers/dom/element.mjs";
11
10
  /**
@@ -22,8 +21,8 @@ export default class Walkontable extends CoreAbstract {
22
21
 
23
22
  this.wtTable = new MasterTable(this.getTableDao(), facadeGetter, this.domBindings, this.wtSettings);
24
23
  this.wtViewport = new Viewport(this.getViewportDao(), this.domBindings, this.wtSettings, this.eventManager, this.wtTable);
25
- this.selectionManager = new SelectionManager(this.wtSettings.getSetting('selections'));
26
- this.wtEvent = new Event(facadeGetter, this.domBindings, this.wtSettings, this.eventManager, this.wtTable, this.selectionManager);
24
+ this.selections = this.wtSettings.getSetting('selections');
25
+ this.wtEvent = new Event(facadeGetter, this.domBindings, this.wtSettings, this.eventManager, this.wtTable, this.selections);
27
26
  this.wtOverlays = new Overlays(
28
27
  // TODO create DAO and remove reference to the Walkontable instance.
29
28
  this, facadeGetter, this.domBindings, this.wtSettings, this.eventManager, this.wtTable);
@@ -18,15 +18,15 @@ class Event {
18
18
  * @param {Settings} wtSettings The walkontable settings.
19
19
  * @param {EventManager} eventManager The walkontable event manager.
20
20
  * @param {Table} wtTable The table.
21
- * @param {SelectionManager} selectionManager Selections.
21
+ * @param {Selections} selections Selections.
22
22
  * @param {Event} [parent=null] The main Event instance.
23
23
  */
24
- constructor(facadeGetter, domBindings, wtSettings, eventManager, wtTable, selectionManager) {
24
+ constructor(facadeGetter, domBindings, wtSettings, eventManager, wtTable, selections) {
25
25
  let parent = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
26
26
  this.wtSettings = wtSettings;
27
27
  this.domBindings = domBindings;
28
28
  this.wtTable = wtTable;
29
- this.selectionManager = selectionManager;
29
+ this.selections = selections;
30
30
  this.parent = parent;
31
31
 
32
32
  /**
@@ -134,11 +134,11 @@ class Event {
134
134
  cell.coords = this.wtTable.getCoords(TD);
135
135
  cell.TD = TD;
136
136
  } else if ((0, _element.hasClass)(elem, 'wtBorder') && (0, _element.hasClass)(elem, 'current')) {
137
- cell.coords = this.selectionManager.getFocusSelection().cellRange.highlight;
137
+ cell.coords = this.selections.getCell().cellRange.highlight;
138
138
  cell.TD = this.wtTable.getCell(cell.coords);
139
139
  } else if ((0, _element.hasClass)(elem, 'wtBorder') && (0, _element.hasClass)(elem, 'area')) {
140
- if (this.selectionManager.getAreaSelection().cellRange) {
141
- cell.coords = this.selectionManager.getAreaSelection().cellRange.to;
140
+ if (this.selections.createOrGetArea().cellRange) {
141
+ cell.coords = this.selections.createOrGetArea().cellRange.to;
142
142
  cell.TD = this.wtTable.getCell(cell.coords);
143
143
  }
144
144
  }
@@ -276,7 +276,7 @@ class Event {
276
276
  */
277
277
  onTouchStart(event) {
278
278
  const priv = privatePool.get(this);
279
- priv.selectedCellBeforeTouchEnd = this.selectionManager.getFocusSelection().cellRange;
279
+ priv.selectedCellBeforeTouchEnd = this.selections.getCell().cellRange;
280
280
  this.touchApplied = true;
281
281
  this.onMouseDown(event);
282
282
  }
@@ -15,15 +15,15 @@ class Event {
15
15
  * @param {Settings} wtSettings The walkontable settings.
16
16
  * @param {EventManager} eventManager The walkontable event manager.
17
17
  * @param {Table} wtTable The table.
18
- * @param {SelectionManager} selectionManager Selections.
18
+ * @param {Selections} selections Selections.
19
19
  * @param {Event} [parent=null] The main Event instance.
20
20
  */
21
- constructor(facadeGetter, domBindings, wtSettings, eventManager, wtTable, selectionManager) {
21
+ constructor(facadeGetter, domBindings, wtSettings, eventManager, wtTable, selections) {
22
22
  let parent = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
23
23
  this.wtSettings = wtSettings;
24
24
  this.domBindings = domBindings;
25
25
  this.wtTable = wtTable;
26
- this.selectionManager = selectionManager;
26
+ this.selections = selections;
27
27
  this.parent = parent;
28
28
 
29
29
  /**
@@ -131,11 +131,11 @@ class Event {
131
131
  cell.coords = this.wtTable.getCoords(TD);
132
132
  cell.TD = TD;
133
133
  } else if (hasClass(elem, 'wtBorder') && hasClass(elem, 'current')) {
134
- cell.coords = this.selectionManager.getFocusSelection().cellRange.highlight;
134
+ cell.coords = this.selections.getCell().cellRange.highlight;
135
135
  cell.TD = this.wtTable.getCell(cell.coords);
136
136
  } else if (hasClass(elem, 'wtBorder') && hasClass(elem, 'area')) {
137
- if (this.selectionManager.getAreaSelection().cellRange) {
138
- cell.coords = this.selectionManager.getAreaSelection().cellRange.to;
137
+ if (this.selections.createOrGetArea().cellRange) {
138
+ cell.coords = this.selections.createOrGetArea().cellRange.to;
139
139
  cell.TD = this.wtTable.getCell(cell.coords);
140
140
  }
141
141
  }
@@ -273,7 +273,7 @@ class Event {
273
273
  */
274
274
  onTouchStart(event) {
275
275
  const priv = privatePool.get(this);
276
- priv.selectedCellBeforeTouchEnd = this.selectionManager.getFocusSelection().cellRange;
276
+ priv.selectedCellBeforeTouchEnd = this.selections.getCell().cellRange;
277
277
  this.touchApplied = true;
278
278
  this.onMouseDown(event);
279
279
  }