handsontable 12.1.3 → 12.2.0

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.
Files changed (914) hide show
  1. package/3rdparty/SheetClip/SheetClip.js +3 -32
  2. package/3rdparty/SheetClip/SheetClip.mjs +3 -23
  3. package/3rdparty/SheetClip/index.js +0 -2
  4. package/3rdparty/autoResize/autoResize.js +119 -145
  5. package/3rdparty/autoResize/autoResize.mjs +119 -143
  6. package/3rdparty/autoResize/index.js +0 -2
  7. package/3rdparty/walkontable/src/border.js +34 -151
  8. package/3rdparty/walkontable/src/border.mjs +36 -138
  9. package/3rdparty/walkontable/src/calculator/constants.js +0 -3
  10. package/3rdparty/walkontable/src/calculator/constants.mjs +0 -2
  11. package/3rdparty/walkontable/src/calculator/index.js +0 -10
  12. package/3rdparty/walkontable/src/calculator/viewportColumns.js +26 -76
  13. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +26 -69
  14. package/3rdparty/walkontable/src/calculator/viewportRows.js +20 -48
  15. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +20 -41
  16. package/3rdparty/walkontable/src/cell/coords.js +13 -43
  17. package/3rdparty/walkontable/src/cell/coords.mjs +13 -38
  18. package/3rdparty/walkontable/src/cell/range.js +55 -130
  19. package/3rdparty/walkontable/src/cell/range.mjs +60 -126
  20. package/3rdparty/walkontable/src/core/_base.js +16 -74
  21. package/3rdparty/walkontable/src/core/_base.mjs +19 -70
  22. package/3rdparty/walkontable/src/core/clone.js +1 -40
  23. package/3rdparty/walkontable/src/core/clone.mjs +3 -30
  24. package/3rdparty/walkontable/src/core/core.js +3 -57
  25. package/3rdparty/walkontable/src/core/core.mjs +5 -41
  26. package/3rdparty/walkontable/src/event.js +31 -78
  27. package/3rdparty/walkontable/src/event.mjs +31 -65
  28. package/3rdparty/walkontable/src/facade/core.js +1 -17
  29. package/3rdparty/walkontable/src/facade/core.mjs +7 -20
  30. package/3rdparty/walkontable/src/filter/column.js +9 -18
  31. package/3rdparty/walkontable/src/filter/column.mjs +9 -17
  32. package/3rdparty/walkontable/src/filter/row.js +9 -18
  33. package/3rdparty/walkontable/src/filter/row.mjs +9 -17
  34. package/3rdparty/walkontable/src/index.js +0 -31
  35. package/3rdparty/walkontable/src/overlay/_base.js +24 -69
  36. package/3rdparty/walkontable/src/overlay/_base.mjs +31 -68
  37. package/3rdparty/walkontable/src/overlay/bottom.js +28 -99
  38. package/3rdparty/walkontable/src/overlay/bottom.mjs +30 -86
  39. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +7 -53
  40. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +9 -40
  41. package/3rdparty/walkontable/src/overlay/constants.js +0 -6
  42. package/3rdparty/walkontable/src/overlay/constants.mjs +0 -1
  43. package/3rdparty/walkontable/src/overlay/index.js +0 -17
  44. package/3rdparty/walkontable/src/overlay/inlineStart.js +21 -91
  45. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +23 -78
  46. package/3rdparty/walkontable/src/overlay/top.js +27 -100
  47. package/3rdparty/walkontable/src/overlay/top.mjs +29 -87
  48. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +4 -51
  49. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +6 -38
  50. package/3rdparty/walkontable/src/overlays.js +58 -129
  51. package/3rdparty/walkontable/src/overlays.mjs +60 -121
  52. package/3rdparty/walkontable/src/renderer/_base.js +4 -20
  53. package/3rdparty/walkontable/src/renderer/_base.mjs +8 -22
  54. package/3rdparty/walkontable/src/renderer/cells.js +10 -54
  55. package/3rdparty/walkontable/src/renderer/cells.mjs +22 -52
  56. package/3rdparty/walkontable/src/renderer/colGroup.js +10 -47
  57. package/3rdparty/walkontable/src/renderer/colGroup.mjs +21 -46
  58. package/3rdparty/walkontable/src/renderer/columnHeaders.js +8 -50
  59. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +19 -49
  60. package/3rdparty/walkontable/src/renderer/index.js +13 -36
  61. package/3rdparty/walkontable/src/renderer/index.mjs +17 -27
  62. package/3rdparty/walkontable/src/renderer/rowHeaders.js +8 -50
  63. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +20 -49
  64. package/3rdparty/walkontable/src/renderer/rows.js +3 -46
  65. package/3rdparty/walkontable/src/renderer/rows.mjs +3 -29
  66. package/3rdparty/walkontable/src/renderer/table.js +22 -49
  67. package/3rdparty/walkontable/src/renderer/table.mjs +22 -48
  68. package/3rdparty/walkontable/src/scroll.js +56 -86
  69. package/3rdparty/walkontable/src/scroll.mjs +58 -86
  70. package/3rdparty/walkontable/src/selection.js +20 -101
  71. package/3rdparty/walkontable/src/selection.mjs +22 -85
  72. package/3rdparty/walkontable/src/settings.js +9 -29
  73. package/3rdparty/walkontable/src/settings.mjs +9 -27
  74. package/3rdparty/walkontable/src/table/bottom.js +1 -35
  75. package/3rdparty/walkontable/src/table/bottom.mjs +6 -25
  76. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +1 -35
  77. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +7 -26
  78. package/3rdparty/walkontable/src/table/inlineStart.js +1 -35
  79. package/3rdparty/walkontable/src/table/inlineStart.mjs +3 -22
  80. package/3rdparty/walkontable/src/table/master.js +10 -55
  81. package/3rdparty/walkontable/src/table/master.mjs +15 -44
  82. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +7 -28
  83. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +7 -26
  84. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +7 -28
  85. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +7 -26
  86. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +7 -22
  87. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +7 -20
  88. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +7 -23
  89. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +7 -21
  90. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +7 -22
  91. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +7 -20
  92. package/3rdparty/walkontable/src/table/top.js +1 -35
  93. package/3rdparty/walkontable/src/table/top.mjs +6 -25
  94. package/3rdparty/walkontable/src/table/topInlineStartCorner.js +1 -35
  95. package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +7 -26
  96. package/3rdparty/walkontable/src/table.js +63 -230
  97. package/3rdparty/walkontable/src/table.mjs +73 -219
  98. package/3rdparty/walkontable/src/types.js +0 -5
  99. package/3rdparty/walkontable/src/types.mjs +0 -5
  100. package/3rdparty/walkontable/src/utils/column.js +9 -31
  101. package/3rdparty/walkontable/src/utils/column.mjs +13 -30
  102. package/3rdparty/walkontable/src/utils/nodesPool.js +3 -12
  103. package/3rdparty/walkontable/src/utils/nodesPool.mjs +3 -11
  104. package/3rdparty/walkontable/src/utils/orderView/constants.js +0 -3
  105. package/3rdparty/walkontable/src/utils/orderView/constants.mjs +0 -2
  106. package/3rdparty/walkontable/src/utils/orderView/index.js +0 -5
  107. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -33
  108. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +6 -26
  109. package/3rdparty/walkontable/src/utils/orderView/view.js +14 -46
  110. package/3rdparty/walkontable/src/utils/orderView/view.mjs +21 -50
  111. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +3 -15
  112. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +3 -14
  113. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +8 -22
  114. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +23 -34
  115. package/3rdparty/walkontable/src/utils/row.js +2 -13
  116. package/3rdparty/walkontable/src/utils/row.mjs +2 -12
  117. package/3rdparty/walkontable/src/viewport.js +38 -100
  118. package/3rdparty/walkontable/src/viewport.mjs +40 -99
  119. package/CHANGELOG.md +76 -1
  120. package/base.js +6 -17
  121. package/base.mjs +6 -12
  122. package/cellTypes/autocompleteType/autocompleteType.js +0 -4
  123. package/cellTypes/autocompleteType/index.js +0 -2
  124. package/cellTypes/checkboxType/checkboxType.js +0 -3
  125. package/cellTypes/checkboxType/index.js +0 -2
  126. package/cellTypes/dateType/dateType.js +0 -4
  127. package/cellTypes/dateType/index.js +0 -2
  128. package/cellTypes/dropdownType/dropdownType.js +0 -4
  129. package/cellTypes/dropdownType/index.js +0 -2
  130. package/cellTypes/handsontableType/handsontableType.js +0 -3
  131. package/cellTypes/handsontableType/index.js +0 -2
  132. package/cellTypes/index.js +0 -21
  133. package/cellTypes/index.mjs +3 -5
  134. package/cellTypes/numericType/index.js +0 -2
  135. package/cellTypes/numericType/numericType.js +0 -4
  136. package/cellTypes/passwordType/index.js +0 -2
  137. package/cellTypes/passwordType/passwordType.js +0 -3
  138. package/cellTypes/registry.js +10 -25
  139. package/cellTypes/registry.mjs +10 -20
  140. package/cellTypes/textType/index.js +0 -2
  141. package/cellTypes/textType/textType.js +0 -3
  142. package/cellTypes/timeType/index.js +0 -2
  143. package/cellTypes/timeType/timeType.js +0 -4
  144. package/core.d.ts +5 -1
  145. package/core.js +505 -973
  146. package/core.mjs +510 -920
  147. package/dataMap/dataMap.js +106 -210
  148. package/dataMap/dataMap.mjs +106 -184
  149. package/{dataSource.js → dataMap/dataSource.js} +18 -66
  150. package/{dataSource.mjs → dataMap/dataSource.mjs} +20 -60
  151. package/dataMap/index.js +0 -13
  152. package/dataMap/metaManager/index.js +21 -46
  153. package/dataMap/metaManager/index.mjs +47 -64
  154. package/dataMap/metaManager/lazyFactoryMap.js +10 -61
  155. package/dataMap/metaManager/lazyFactoryMap.mjs +10 -45
  156. package/dataMap/metaManager/metaLayers/cellMeta.js +16 -52
  157. package/dataMap/metaManager/metaLayers/cellMeta.mjs +16 -37
  158. package/dataMap/metaManager/metaLayers/columnMeta.js +8 -22
  159. package/dataMap/metaManager/metaLayers/columnMeta.mjs +14 -25
  160. package/dataMap/metaManager/metaLayers/globalMeta.js +4 -19
  161. package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -15
  162. package/dataMap/metaManager/metaLayers/tableMeta.js +4 -15
  163. package/dataMap/metaManager/metaLayers/tableMeta.mjs +28 -37
  164. package/dataMap/metaManager/metaSchema.js +86 -179
  165. package/dataMap/metaManager/metaSchema.mjs +86 -170
  166. package/dataMap/metaManager/mods/dynamicCellMeta.js +6 -36
  167. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +20 -39
  168. package/dataMap/metaManager/mods/extendMetaProperties.js +5 -28
  169. package/dataMap/metaManager/mods/extendMetaProperties.mjs +4 -18
  170. package/dataMap/metaManager/utils.js +11 -20
  171. package/dataMap/metaManager/utils.mjs +21 -23
  172. package/dataMap/replaceData.js +14 -35
  173. package/dataMap/replaceData.mjs +35 -45
  174. package/dist/handsontable.css +2 -2
  175. package/dist/handsontable.full.css +2 -2
  176. package/dist/handsontable.full.js +8478 -20043
  177. package/dist/handsontable.full.min.css +2 -2
  178. package/dist/handsontable.full.min.js +55 -55
  179. package/dist/handsontable.js +7995 -19560
  180. package/dist/handsontable.min.css +2 -2
  181. package/dist/handsontable.min.js +3 -3
  182. package/dist/languages/all.js +0 -175
  183. package/dist/languages/ar-AR.js +0 -10
  184. package/dist/languages/cs-CZ.js +0 -10
  185. package/dist/languages/de-CH.js +0 -10
  186. package/dist/languages/de-DE.js +0 -10
  187. package/dist/languages/en-US.js +0 -10
  188. package/dist/languages/es-MX.js +0 -10
  189. package/dist/languages/fr-FR.js +0 -10
  190. package/dist/languages/it-IT.js +0 -10
  191. package/dist/languages/ja-JP.js +0 -10
  192. package/dist/languages/ko-KR.js +0 -10
  193. package/dist/languages/lv-LV.js +0 -10
  194. package/dist/languages/nb-NO.js +0 -10
  195. package/dist/languages/nl-NL.js +0 -10
  196. package/dist/languages/pl-PL.js +0 -10
  197. package/dist/languages/pt-BR.js +0 -10
  198. package/dist/languages/ru-RU.js +0 -10
  199. package/dist/languages/sr-SP.js +0 -10
  200. package/dist/languages/zh-CN.js +0 -10
  201. package/dist/languages/zh-TW.js +0 -10
  202. package/editorManager.js +36 -105
  203. package/editorManager.mjs +36 -85
  204. package/editors/autocompleteEditor/autocompleteEditor.js +26 -133
  205. package/editors/autocompleteEditor/autocompleteEditor.mjs +26 -104
  206. package/editors/autocompleteEditor/index.js +0 -2
  207. package/editors/baseEditor/baseEditor.js +44 -154
  208. package/editors/baseEditor/baseEditor.mjs +44 -128
  209. package/editors/baseEditor/index.js +0 -2
  210. package/editors/checkboxEditor/checkboxEditor.js +2 -33
  211. package/editors/checkboxEditor/checkboxEditor.mjs +2 -19
  212. package/editors/checkboxEditor/index.js +0 -2
  213. package/editors/dateEditor/dateEditor.js +20 -96
  214. package/editors/dateEditor/dateEditor.mjs +20 -75
  215. package/editors/dateEditor/index.js +0 -2
  216. package/editors/dropdownEditor/dropdownEditor.js +1 -41
  217. package/editors/dropdownEditor/dropdownEditor.mjs +1 -22
  218. package/editors/dropdownEditor/index.js +0 -2
  219. package/editors/handsontableEditor/handsontableEditor.js +13 -85
  220. package/editors/handsontableEditor/handsontableEditor.mjs +13 -66
  221. package/editors/handsontableEditor/index.js +0 -2
  222. package/editors/index.js +0 -25
  223. package/editors/index.mjs +3 -5
  224. package/editors/numericEditor/index.js +0 -2
  225. package/editors/numericEditor/numericEditor.js +1 -31
  226. package/editors/numericEditor/numericEditor.mjs +1 -18
  227. package/editors/passwordEditor/index.js +0 -2
  228. package/editors/passwordEditor/passwordEditor.js +1 -38
  229. package/editors/passwordEditor/passwordEditor.mjs +1 -22
  230. package/editors/registry.js +10 -36
  231. package/editors/registry.mjs +10 -28
  232. package/editors/selectEditor/index.js +0 -2
  233. package/editors/selectEditor/selectEditor.js +21 -73
  234. package/editors/selectEditor/selectEditor.mjs +21 -56
  235. package/editors/textEditor/caretPositioner.js +0 -8
  236. package/editors/textEditor/caretPositioner.mjs +10 -18
  237. package/editors/textEditor/index.js +0 -2
  238. package/editors/textEditor/textEditor.js +38 -137
  239. package/editors/textEditor/textEditor.mjs +38 -106
  240. package/editors/timeEditor/index.js +0 -2
  241. package/editors/timeEditor/timeEditor.js +1 -36
  242. package/editors/timeEditor/timeEditor.mjs +1 -21
  243. package/eventManager.js +20 -56
  244. package/eventManager.mjs +23 -56
  245. package/helpers/array.js +22 -88
  246. package/helpers/array.mjs +22 -58
  247. package/helpers/browser.js +25 -51
  248. package/helpers/browser.mjs +25 -32
  249. package/helpers/console.js +3 -13
  250. package/helpers/console.mjs +8 -16
  251. package/helpers/data.d.ts +0 -1
  252. package/helpers/data.js +10 -55
  253. package/helpers/data.mjs +10 -33
  254. package/helpers/date.js +2 -3
  255. package/helpers/date.mjs +2 -2
  256. package/helpers/dom/element.js +66 -256
  257. package/helpers/dom/element.mjs +73 -192
  258. package/helpers/dom/event.js +3 -7
  259. package/helpers/dom/event.mjs +3 -3
  260. package/helpers/feature.js +13 -47
  261. package/helpers/feature.mjs +13 -31
  262. package/helpers/function.js +14 -59
  263. package/helpers/function.mjs +20 -52
  264. package/helpers/mixed.js +9 -64
  265. package/helpers/mixed.mjs +15 -50
  266. package/helpers/number.js +4 -46
  267. package/helpers/number.mjs +4 -23
  268. package/helpers/object.js +15 -68
  269. package/helpers/object.mjs +21 -50
  270. package/helpers/string.js +6 -28
  271. package/helpers/string.mjs +12 -21
  272. package/helpers/templateLiteralTag.js +0 -6
  273. package/helpers/templateLiteralTag.mjs +7 -10
  274. package/helpers/unicode.js +17 -22
  275. package/helpers/unicode.mjs +17 -13
  276. package/helpers/wrappers/jquery.js +4 -14
  277. package/helpers/wrappers/jquery.mjs +4 -13
  278. package/i18n/constants.js +1 -3
  279. package/i18n/constants.mjs +1 -1
  280. package/i18n/index.js +0 -7
  281. package/i18n/languages/ar-AR.js +0 -16
  282. package/i18n/languages/ar-AR.mjs +1 -4
  283. package/i18n/languages/cs-CZ.js +0 -16
  284. package/i18n/languages/cs-CZ.mjs +1 -4
  285. package/i18n/languages/de-CH.js +0 -16
  286. package/i18n/languages/de-CH.mjs +1 -4
  287. package/i18n/languages/de-DE.js +0 -16
  288. package/i18n/languages/de-DE.mjs +1 -4
  289. package/i18n/languages/en-US.js +0 -16
  290. package/i18n/languages/en-US.mjs +1 -4
  291. package/i18n/languages/es-MX.js +0 -16
  292. package/i18n/languages/es-MX.mjs +1 -4
  293. package/i18n/languages/fr-FR.js +0 -16
  294. package/i18n/languages/fr-FR.mjs +1 -4
  295. package/i18n/languages/index.js +0 -39
  296. package/i18n/languages/it-IT.js +0 -16
  297. package/i18n/languages/it-IT.mjs +1 -4
  298. package/i18n/languages/ja-JP.js +0 -16
  299. package/i18n/languages/ja-JP.mjs +1 -4
  300. package/i18n/languages/ko-KR.js +0 -16
  301. package/i18n/languages/ko-KR.mjs +1 -4
  302. package/i18n/languages/lv-LV.js +0 -16
  303. package/i18n/languages/lv-LV.mjs +1 -4
  304. package/i18n/languages/nb-NO.js +0 -16
  305. package/i18n/languages/nb-NO.mjs +1 -4
  306. package/i18n/languages/nl-NL.js +0 -16
  307. package/i18n/languages/nl-NL.mjs +1 -4
  308. package/i18n/languages/pl-PL.js +0 -16
  309. package/i18n/languages/pl-PL.mjs +1 -4
  310. package/i18n/languages/pt-BR.js +0 -16
  311. package/i18n/languages/pt-BR.mjs +1 -4
  312. package/i18n/languages/ru-RU.js +0 -16
  313. package/i18n/languages/ru-RU.mjs +1 -4
  314. package/i18n/languages/sr-SP.js +0 -16
  315. package/i18n/languages/sr-SP.mjs +1 -4
  316. package/i18n/languages/zh-CN.js +0 -16
  317. package/i18n/languages/zh-CN.mjs +1 -4
  318. package/i18n/languages/zh-TW.js +0 -16
  319. package/i18n/languages/zh-TW.mjs +1 -4
  320. package/i18n/phraseFormatters/index.js +4 -11
  321. package/i18n/phraseFormatters/index.mjs +4 -6
  322. package/i18n/phraseFormatters/pluralize.js +0 -5
  323. package/i18n/phraseFormatters/pluralize.mjs +0 -3
  324. package/i18n/phraseFormatters/substituteVariables.js +0 -4
  325. package/i18n/phraseFormatters/substituteVariables.mjs +8 -11
  326. package/i18n/registry.js +18 -59
  327. package/i18n/registry.mjs +18 -30
  328. package/i18n/utils.js +4 -22
  329. package/i18n/utils.mjs +13 -21
  330. package/index.js +19 -56
  331. package/index.mjs +19 -15
  332. package/languages/all.js +0 -175
  333. package/languages/ar-AR.js +0 -10
  334. package/languages/ar-AR.mjs +1 -4
  335. package/languages/cs-CZ.js +0 -10
  336. package/languages/cs-CZ.mjs +1 -4
  337. package/languages/de-CH.js +0 -10
  338. package/languages/de-CH.mjs +1 -4
  339. package/languages/de-DE.js +0 -10
  340. package/languages/de-DE.mjs +1 -4
  341. package/languages/en-US.js +0 -10
  342. package/languages/en-US.mjs +1 -4
  343. package/languages/es-MX.js +0 -10
  344. package/languages/es-MX.mjs +1 -4
  345. package/languages/fr-FR.js +0 -10
  346. package/languages/fr-FR.mjs +1 -4
  347. package/languages/index.js +0 -175
  348. package/languages/it-IT.js +0 -10
  349. package/languages/it-IT.mjs +1 -4
  350. package/languages/ja-JP.js +0 -10
  351. package/languages/ja-JP.mjs +1 -4
  352. package/languages/ko-KR.js +0 -10
  353. package/languages/ko-KR.mjs +1 -4
  354. package/languages/lv-LV.js +0 -10
  355. package/languages/lv-LV.mjs +1 -4
  356. package/languages/nb-NO.js +0 -10
  357. package/languages/nb-NO.mjs +1 -4
  358. package/languages/nl-NL.js +0 -10
  359. package/languages/nl-NL.mjs +1 -4
  360. package/languages/pl-PL.js +0 -10
  361. package/languages/pl-PL.mjs +1 -4
  362. package/languages/pt-BR.js +0 -10
  363. package/languages/pt-BR.mjs +1 -4
  364. package/languages/ru-RU.js +0 -10
  365. package/languages/ru-RU.mjs +1 -4
  366. package/languages/sr-SP.js +0 -10
  367. package/languages/sr-SP.mjs +1 -4
  368. package/languages/zh-CN.js +0 -10
  369. package/languages/zh-CN.mjs +1 -4
  370. package/languages/zh-TW.js +0 -10
  371. package/languages/zh-TW.mjs +1 -4
  372. package/mixins/hooksRefRegisterer.js +4 -18
  373. package/mixins/hooksRefRegisterer.mjs +4 -15
  374. package/mixins/localHooks.js +7 -17
  375. package/mixins/localHooks.mjs +7 -14
  376. package/package.json +1 -1
  377. package/pluginHooks.d.ts +3 -3
  378. package/pluginHooks.js +271 -96
  379. package/pluginHooks.mjs +270 -83
  380. package/plugins/autoColumnSize/autoColumnSize.js +74 -172
  381. package/plugins/autoColumnSize/autoColumnSize.mjs +74 -137
  382. package/plugins/autoColumnSize/index.js +0 -2
  383. package/plugins/autoRowSize/autoRowSize.js +73 -153
  384. package/plugins/autoRowSize/autoRowSize.mjs +73 -124
  385. package/plugins/autoRowSize/index.js +0 -2
  386. package/plugins/autofill/autofill.js +46 -163
  387. package/plugins/autofill/autofill.mjs +46 -131
  388. package/plugins/autofill/index.js +0 -2
  389. package/plugins/autofill/utils.js +4 -26
  390. package/plugins/autofill/utils.mjs +4 -18
  391. package/plugins/base/base.js +20 -89
  392. package/plugins/base/base.mjs +20 -61
  393. package/plugins/base/index.js +0 -2
  394. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +19 -52
  395. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +19 -33
  396. package/plugins/bindRowsWithHeaders/index.js +0 -2
  397. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +5 -41
  398. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +5 -29
  399. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +6 -53
  400. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +6 -37
  401. package/plugins/collapsibleColumns/collapsibleColumns.js +96 -188
  402. package/plugins/collapsibleColumns/collapsibleColumns.mjs +97 -158
  403. package/plugins/collapsibleColumns/index.js +0 -2
  404. package/plugins/columnSorting/columnSorting.js +50 -188
  405. package/plugins/columnSorting/columnSorting.mjs +50 -143
  406. package/plugins/columnSorting/columnStatesManager.js +15 -71
  407. package/plugins/columnSorting/columnStatesManager.mjs +15 -48
  408. package/plugins/columnSorting/domHelpers.js +2 -18
  409. package/plugins/columnSorting/domHelpers.mjs +2 -7
  410. package/plugins/columnSorting/index.js +0 -2
  411. package/plugins/columnSorting/rootComparator.js +5 -24
  412. package/plugins/columnSorting/rootComparator.mjs +12 -21
  413. package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
  414. package/plugins/columnSorting/sortFunction/checkbox.mjs +16 -21
  415. package/plugins/columnSorting/sortFunction/date.js +2 -19
  416. package/plugins/columnSorting/sortFunction/date.mjs +10 -23
  417. package/plugins/columnSorting/sortFunction/default.js +2 -17
  418. package/plugins/columnSorting/sortFunction/default.mjs +10 -23
  419. package/plugins/columnSorting/sortFunction/numeric.js +2 -11
  420. package/plugins/columnSorting/sortFunction/numeric.mjs +10 -17
  421. package/plugins/columnSorting/sortService/engine.js +1 -7
  422. package/plugins/columnSorting/sortService/engine.mjs +1 -3
  423. package/plugins/columnSorting/sortService/index.js +0 -5
  424. package/plugins/columnSorting/sortService/registry.js +6 -18
  425. package/plugins/columnSorting/sortService/registry.mjs +6 -10
  426. package/plugins/columnSorting/utils.js +9 -34
  427. package/plugins/columnSorting/utils.mjs +9 -15
  428. package/plugins/columnSummary/columnSummary.js +52 -118
  429. package/plugins/columnSummary/columnSummary.mjs +52 -93
  430. package/plugins/columnSummary/endpoints.js +21 -98
  431. package/plugins/columnSummary/endpoints.mjs +26 -99
  432. package/plugins/columnSummary/index.js +0 -2
  433. package/plugins/columnSummary/utils.js +0 -1
  434. package/plugins/comments/commentEditor.js +16 -28
  435. package/plugins/comments/commentEditor.mjs +21 -32
  436. package/plugins/comments/comments.js +92 -175
  437. package/plugins/comments/comments.mjs +92 -149
  438. package/plugins/comments/displaySwitch.js +6 -23
  439. package/plugins/comments/displaySwitch.mjs +6 -18
  440. package/plugins/comments/index.js +0 -2
  441. package/plugins/contextMenu/commandExecutor.js +9 -36
  442. package/plugins/contextMenu/commandExecutor.mjs +14 -39
  443. package/plugins/contextMenu/contextMenu.js +21 -104
  444. package/plugins/contextMenu/contextMenu.mjs +21 -74
  445. package/plugins/contextMenu/cursor.js +6 -20
  446. package/plugins/contextMenu/cursor.mjs +11 -24
  447. package/plugins/contextMenu/index.js +0 -2
  448. package/plugins/contextMenu/itemsFactory.js +14 -43
  449. package/plugins/contextMenu/itemsFactory.mjs +19 -44
  450. package/plugins/contextMenu/menu.js +57 -177
  451. package/plugins/contextMenu/menu.mjs +57 -149
  452. package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
  453. package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
  454. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
  455. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
  456. package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
  457. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
  458. package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
  459. package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
  460. package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
  461. package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
  462. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
  463. package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
  464. package/plugins/contextMenu/predefinedItems/redo.js +1 -16
  465. package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
  466. package/plugins/contextMenu/predefinedItems/removeColumn.js +3 -38
  467. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -18
  468. package/plugins/contextMenu/predefinedItems/removeRow.js +3 -37
  469. package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -17
  470. package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
  471. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
  472. package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
  473. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
  474. package/plugins/contextMenu/predefinedItems/separator.js +1 -2
  475. package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
  476. package/plugins/contextMenu/predefinedItems/undo.js +1 -16
  477. package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
  478. package/plugins/contextMenu/predefinedItems.js +2 -48
  479. package/plugins/contextMenu/predefinedItems.mjs +2 -7
  480. package/plugins/contextMenu/utils.js +17 -57
  481. package/plugins/contextMenu/utils.mjs +21 -39
  482. package/plugins/copyPaste/clipboardData.js +1 -10
  483. package/plugins/copyPaste/clipboardData.mjs +1 -9
  484. package/plugins/copyPaste/contextMenuItem/copy.js +2 -17
  485. package/plugins/copyPaste/contextMenuItem/copy.mjs +6 -9
  486. package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
  487. package/plugins/copyPaste/contextMenuItem/cut.mjs +6 -9
  488. package/plugins/copyPaste/copyPaste.js +51 -185
  489. package/plugins/copyPaste/copyPaste.mjs +51 -144
  490. package/plugins/copyPaste/focusableElement.js +12 -56
  491. package/plugins/copyPaste/focusableElement.mjs +15 -49
  492. package/plugins/copyPaste/index.js +0 -2
  493. package/plugins/copyPaste/pasteEvent.js +1 -10
  494. package/plugins/copyPaste/pasteEvent.mjs +3 -10
  495. package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
  496. package/plugins/customBorders/contextMenuItem/bottom.mjs +4 -8
  497. package/plugins/customBorders/contextMenuItem/index.js +0 -11
  498. package/plugins/customBorders/contextMenuItem/left.js +0 -17
  499. package/plugins/customBorders/contextMenuItem/left.mjs +4 -8
  500. package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
  501. package/plugins/customBorders/contextMenuItem/noBorders.mjs +4 -6
  502. package/plugins/customBorders/contextMenuItem/right.js +0 -17
  503. package/plugins/customBorders/contextMenuItem/right.mjs +4 -8
  504. package/plugins/customBorders/contextMenuItem/top.js +0 -17
  505. package/plugins/customBorders/contextMenuItem/top.mjs +4 -8
  506. package/plugins/customBorders/customBorders.js +52 -181
  507. package/plugins/customBorders/customBorders.mjs +52 -147
  508. package/plugins/customBorders/index.js +0 -2
  509. package/plugins/customBorders/utils.js +13 -52
  510. package/plugins/customBorders/utils.mjs +20 -39
  511. package/plugins/dragToScroll/dragToScroll.js +17 -74
  512. package/plugins/dragToScroll/dragToScroll.mjs +17 -55
  513. package/plugins/dragToScroll/index.js +0 -2
  514. package/plugins/dropdownMenu/dropdownMenu.js +43 -126
  515. package/plugins/dropdownMenu/dropdownMenu.mjs +43 -95
  516. package/plugins/dropdownMenu/index.js +0 -2
  517. package/plugins/exportFile/dataProvider.js +24 -69
  518. package/plugins/exportFile/dataProvider.mjs +26 -60
  519. package/plugins/exportFile/exportFile.js +48 -58
  520. package/plugins/exportFile/exportFile.mjs +48 -36
  521. package/plugins/exportFile/index.js +0 -2
  522. package/plugins/exportFile/typeFactory.js +1 -11
  523. package/plugins/exportFile/typeFactory.mjs +1 -4
  524. package/plugins/exportFile/types/_base.js +2 -16
  525. package/plugins/exportFile/types/_base.mjs +4 -16
  526. package/plugins/exportFile/types/csv.js +2 -50
  527. package/plugins/exportFile/types/csv.mjs +2 -29
  528. package/plugins/filters/component/_base.js +12 -32
  529. package/plugins/filters/component/_base.mjs +15 -30
  530. package/plugins/filters/component/actionBar.js +6 -55
  531. package/plugins/filters/component/actionBar.mjs +9 -38
  532. package/plugins/filters/component/condition.js +15 -94
  533. package/plugins/filters/component/condition.mjs +18 -67
  534. package/plugins/filters/component/operators.js +10 -68
  535. package/plugins/filters/component/operators.mjs +10 -45
  536. package/plugins/filters/component/value.js +16 -97
  537. package/plugins/filters/component/value.mjs +19 -70
  538. package/plugins/filters/condition/beginsWith.js +2 -32
  539. package/plugins/filters/condition/beginsWith.mjs +2 -10
  540. package/plugins/filters/condition/between.js +3 -37
  541. package/plugins/filters/condition/between.mjs +3 -15
  542. package/plugins/filters/condition/byValue.js +3 -27
  543. package/plugins/filters/condition/byValue.mjs +3 -12
  544. package/plugins/filters/condition/contains.js +2 -32
  545. package/plugins/filters/condition/contains.mjs +2 -10
  546. package/plugins/filters/condition/date/after.js +2 -34
  547. package/plugins/filters/condition/date/after.mjs +2 -12
  548. package/plugins/filters/condition/date/before.js +2 -34
  549. package/plugins/filters/condition/date/before.mjs +2 -12
  550. package/plugins/filters/condition/date/today.js +1 -22
  551. package/plugins/filters/condition/date/today.mjs +1 -3
  552. package/plugins/filters/condition/date/tomorrow.js +1 -22
  553. package/plugins/filters/condition/date/tomorrow.mjs +1 -3
  554. package/plugins/filters/condition/date/yesterday.js +1 -22
  555. package/plugins/filters/condition/date/yesterday.mjs +1 -3
  556. package/plugins/filters/condition/empty.js +1 -19
  557. package/plugins/filters/condition/empty.mjs +1 -1
  558. package/plugins/filters/condition/endsWith.js +2 -32
  559. package/plugins/filters/condition/endsWith.mjs +2 -10
  560. package/plugins/filters/condition/equal.js +2 -31
  561. package/plugins/filters/condition/equal.mjs +2 -10
  562. package/plugins/filters/condition/false.js +1 -5
  563. package/plugins/filters/condition/false.mjs +1 -1
  564. package/plugins/filters/condition/greaterThan.js +2 -32
  565. package/plugins/filters/condition/greaterThan.mjs +2 -12
  566. package/plugins/filters/condition/greaterThanOrEqual.js +2 -32
  567. package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -12
  568. package/plugins/filters/condition/lessThan.js +2 -32
  569. package/plugins/filters/condition/lessThan.mjs +2 -12
  570. package/plugins/filters/condition/lessThanOrEqual.js +2 -32
  571. package/plugins/filters/condition/lessThanOrEqual.mjs +2 -12
  572. package/plugins/filters/condition/none.js +1 -18
  573. package/plugins/filters/condition/none.mjs +1 -1
  574. package/plugins/filters/condition/notBetween.js +1 -19
  575. package/plugins/filters/condition/notBetween.mjs +1 -1
  576. package/plugins/filters/condition/notContains.js +1 -19
  577. package/plugins/filters/condition/notContains.mjs +1 -1
  578. package/plugins/filters/condition/notEmpty.js +1 -19
  579. package/plugins/filters/condition/notEmpty.mjs +1 -1
  580. package/plugins/filters/condition/notEqual.js +1 -19
  581. package/plugins/filters/condition/notEqual.mjs +1 -1
  582. package/plugins/filters/condition/true.js +1 -5
  583. package/plugins/filters/condition/true.mjs +1 -1
  584. package/plugins/filters/conditionCollection.js +21 -80
  585. package/plugins/filters/conditionCollection.mjs +21 -57
  586. package/plugins/filters/conditionRegisterer.js +5 -14
  587. package/plugins/filters/conditionRegisterer.mjs +5 -9
  588. package/plugins/filters/conditionUpdateObserver.js +17 -57
  589. package/plugins/filters/conditionUpdateObserver.mjs +25 -53
  590. package/plugins/filters/constants.js +1 -66
  591. package/plugins/filters/constants.mjs +1 -8
  592. package/plugins/filters/dataFilter.js +4 -21
  593. package/plugins/filters/dataFilter.mjs +7 -23
  594. package/plugins/filters/filters.js +103 -208
  595. package/plugins/filters/filters.mjs +103 -163
  596. package/plugins/filters/index.js +0 -2
  597. package/plugins/filters/logicalOperationRegisterer.js +3 -9
  598. package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
  599. package/plugins/filters/logicalOperations/conjunction.js +2 -19
  600. package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
  601. package/plugins/filters/logicalOperations/disjunction.js +2 -19
  602. package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
  603. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
  604. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
  605. package/plugins/filters/ui/_base.js +12 -55
  606. package/plugins/filters/ui/_base.mjs +12 -35
  607. package/plugins/filters/ui/input.js +7 -52
  608. package/plugins/filters/ui/input.mjs +7 -34
  609. package/plugins/filters/ui/link.js +3 -43
  610. package/plugins/filters/ui/link.mjs +3 -25
  611. package/plugins/filters/ui/multipleSelect.js +26 -120
  612. package/plugins/filters/ui/multipleSelect.mjs +20 -76
  613. package/plugins/filters/ui/radioInput.js +6 -47
  614. package/plugins/filters/ui/radioInput.mjs +6 -30
  615. package/plugins/filters/ui/select.js +14 -76
  616. package/plugins/filters/ui/select.mjs +14 -52
  617. package/plugins/filters/utils.js +6 -39
  618. package/plugins/filters/utils.mjs +6 -23
  619. package/plugins/formulas/engine/register.js +24 -74
  620. package/plugins/formulas/engine/register.mjs +29 -51
  621. package/plugins/formulas/engine/settings.js +4 -24
  622. package/plugins/formulas/engine/settings.mjs +4 -12
  623. package/plugins/formulas/formulas.js +103 -295
  624. package/plugins/formulas/formulas.mjs +104 -248
  625. package/plugins/formulas/index.js +0 -2
  626. package/plugins/formulas/utils.js +1 -3
  627. package/plugins/formulas/utils.mjs +1 -1
  628. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +4 -38
  629. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +8 -25
  630. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
  631. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +21 -29
  632. package/plugins/hiddenColumns/hiddenColumns.js +72 -149
  633. package/plugins/hiddenColumns/hiddenColumns.mjs +72 -108
  634. package/plugins/hiddenColumns/index.js +0 -2
  635. package/plugins/hiddenRows/contextMenuItem/hideRow.js +4 -38
  636. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +8 -25
  637. package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
  638. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +21 -29
  639. package/plugins/hiddenRows/hiddenRows.js +70 -148
  640. package/plugins/hiddenRows/hiddenRows.mjs +70 -107
  641. package/plugins/hiddenRows/index.js +0 -2
  642. package/plugins/index.js +0 -71
  643. package/plugins/index.mjs +3 -5
  644. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -28
  645. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +5 -17
  646. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -28
  647. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +5 -17
  648. package/plugins/manualColumnFreeze/index.js +0 -2
  649. package/plugins/manualColumnFreeze/manualColumnFreeze.js +21 -78
  650. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +21 -54
  651. package/plugins/manualColumnMove/index.js +0 -2
  652. package/plugins/manualColumnMove/manualColumnMove.js +45 -134
  653. package/plugins/manualColumnMove/manualColumnMove.mjs +45 -106
  654. package/plugins/manualColumnMove/ui/_base.js +12 -30
  655. package/plugins/manualColumnMove/ui/_base.mjs +12 -27
  656. package/plugins/manualColumnMove/ui/backlight.js +1 -37
  657. package/plugins/manualColumnMove/ui/backlight.mjs +1 -22
  658. package/plugins/manualColumnMove/ui/guideline.js +1 -37
  659. package/plugins/manualColumnMove/ui/guideline.mjs +1 -22
  660. package/plugins/manualColumnResize/index.js +0 -2
  661. package/plugins/manualColumnResize/manualColumnResize.js +44 -143
  662. package/plugins/manualColumnResize/manualColumnResize.mjs +43 -118
  663. package/plugins/manualRowMove/index.js +0 -2
  664. package/plugins/manualRowMove/manualRowMove.js +45 -137
  665. package/plugins/manualRowMove/manualRowMove.mjs +45 -109
  666. package/plugins/manualRowMove/ui/_base.js +12 -27
  667. package/plugins/manualRowMove/ui/_base.mjs +12 -26
  668. package/plugins/manualRowMove/ui/backlight.js +1 -37
  669. package/plugins/manualRowMove/ui/backlight.mjs +1 -22
  670. package/plugins/manualRowMove/ui/guideline.js +1 -37
  671. package/plugins/manualRowMove/ui/guideline.mjs +1 -22
  672. package/plugins/manualRowResize/index.js +0 -2
  673. package/plugins/manualRowResize/manualRowResize.js +42 -138
  674. package/plugins/manualRowResize/manualRowResize.mjs +41 -112
  675. package/plugins/mergeCells/calculations/autofill.js +39 -130
  676. package/plugins/mergeCells/calculations/autofill.mjs +44 -122
  677. package/plugins/mergeCells/calculations/selection.js +9 -40
  678. package/plugins/mergeCells/calculations/selection.mjs +9 -37
  679. package/plugins/mergeCells/cellCoords.js +30 -51
  680. package/plugins/mergeCells/cellCoords.mjs +35 -54
  681. package/plugins/mergeCells/cellsCollection.js +13 -84
  682. package/plugins/mergeCells/cellsCollection.mjs +18 -69
  683. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
  684. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +4 -11
  685. package/plugins/mergeCells/index.js +0 -2
  686. package/plugins/mergeCells/mergeCells.js +130 -333
  687. package/plugins/mergeCells/mergeCells.mjs +130 -292
  688. package/plugins/mergeCells/utils.js +0 -3
  689. package/plugins/mergeCells/utils.mjs +0 -1
  690. package/plugins/multiColumnSorting/domHelpers.js +2 -12
  691. package/plugins/multiColumnSorting/domHelpers.mjs +2 -5
  692. package/plugins/multiColumnSorting/index.js +0 -2
  693. package/plugins/multiColumnSorting/multiColumnSorting.js +14 -66
  694. package/plugins/multiColumnSorting/multiColumnSorting.mjs +14 -44
  695. package/plugins/multiColumnSorting/rootComparator.js +2 -26
  696. package/plugins/multiColumnSorting/rootComparator.mjs +9 -23
  697. package/plugins/multiColumnSorting/utils.js +0 -7
  698. package/plugins/multiColumnSorting/utils.mjs +3 -8
  699. package/plugins/multipleSelectionHandles/index.js +0 -2
  700. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +6 -109
  701. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +6 -87
  702. package/plugins/nestedHeaders/index.js +0 -2
  703. package/plugins/nestedHeaders/nestedHeaders.js +79 -200
  704. package/plugins/nestedHeaders/nestedHeaders.mjs +80 -173
  705. package/plugins/nestedHeaders/stateManager/headersTree.js +16 -93
  706. package/plugins/nestedHeaders/stateManager/headersTree.mjs +16 -73
  707. package/plugins/nestedHeaders/stateManager/index.js +24 -107
  708. package/plugins/nestedHeaders/stateManager/index.mjs +51 -115
  709. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
  710. package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +38 -51
  711. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
  712. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +29 -35
  713. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
  714. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +26 -32
  715. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
  716. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +9 -20
  717. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
  718. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +2 -5
  719. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
  720. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +9 -21
  721. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
  722. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
  723. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
  724. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +44 -61
  725. package/plugins/nestedHeaders/stateManager/sourceSettings.js +16 -78
  726. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +21 -68
  727. package/plugins/nestedHeaders/stateManager/utils.js +19 -22
  728. package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
  729. package/plugins/nestedHeaders/utils/ghostTable.js +9 -37
  730. package/plugins/nestedHeaders/utils/ghostTable.mjs +16 -43
  731. package/plugins/nestedRows/data/dataManager.js +40 -161
  732. package/plugins/nestedRows/data/dataManager.mjs +44 -148
  733. package/plugins/nestedRows/index.js +0 -2
  734. package/plugins/nestedRows/nestedRows.js +40 -118
  735. package/plugins/nestedRows/nestedRows.mjs +40 -85
  736. package/plugins/nestedRows/ui/_base.js +1 -9
  737. package/plugins/nestedRows/ui/_base.mjs +1 -8
  738. package/plugins/nestedRows/ui/collapsing.js +28 -134
  739. package/plugins/nestedRows/ui/collapsing.mjs +34 -118
  740. package/plugins/nestedRows/ui/contextMenu.js +2 -53
  741. package/plugins/nestedRows/ui/contextMenu.mjs +2 -32
  742. package/plugins/nestedRows/ui/headers.js +5 -50
  743. package/plugins/nestedRows/ui/headers.mjs +11 -41
  744. package/plugins/nestedRows/utils/rowMoveController.js +28 -78
  745. package/plugins/nestedRows/utils/rowMoveController.mjs +33 -66
  746. package/plugins/persistentState/index.js +0 -2
  747. package/plugins/persistentState/persistentState.js +10 -58
  748. package/plugins/persistentState/persistentState.mjs +10 -37
  749. package/plugins/persistentState/storage.js +9 -25
  750. package/plugins/persistentState/storage.mjs +12 -26
  751. package/plugins/registry.js +7 -51
  752. package/plugins/registry.mjs +8 -34
  753. package/plugins/search/index.js +0 -2
  754. package/plugins/search/search.js +16 -96
  755. package/plugins/search/search.mjs +16 -67
  756. package/plugins/touchScroll/index.js +0 -2
  757. package/plugins/touchScroll/touchScroll.js +15 -76
  758. package/plugins/touchScroll/touchScroll.mjs +15 -58
  759. package/plugins/trimRows/index.js +0 -2
  760. package/plugins/trimRows/trimRows.js +59 -85
  761. package/plugins/trimRows/trimRows.mjs +59 -62
  762. package/plugins/undoRedo/index.js +0 -14
  763. package/plugins/undoRedo/undoRedo.js +48 -218
  764. package/plugins/undoRedo/undoRedo.mjs +48 -188
  765. package/registry.js +0 -11
  766. package/registry.mjs +2 -4
  767. package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
  768. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
  769. package/renderers/autocompleteRenderer/index.js +0 -2
  770. package/renderers/baseRenderer/baseRenderer.js +2 -11
  771. package/renderers/baseRenderer/baseRenderer.mjs +2 -9
  772. package/renderers/baseRenderer/index.js +0 -2
  773. package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
  774. package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
  775. package/renderers/checkboxRenderer/index.js +0 -2
  776. package/renderers/htmlRenderer/htmlRenderer.js +1 -7
  777. package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
  778. package/renderers/htmlRenderer/index.js +0 -2
  779. package/renderers/index.js +0 -19
  780. package/renderers/index.mjs +3 -5
  781. package/renderers/numericRenderer/index.js +0 -2
  782. package/renderers/numericRenderer/numericRenderer.js +1 -21
  783. package/renderers/numericRenderer/numericRenderer.mjs +1 -9
  784. package/renderers/passwordRenderer/index.js +0 -2
  785. package/renderers/passwordRenderer/passwordRenderer.js +1 -8
  786. package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
  787. package/renderers/registry.js +7 -16
  788. package/renderers/registry.mjs +7 -14
  789. package/renderers/textRenderer/index.js +0 -2
  790. package/renderers/textRenderer/textRenderer.js +1 -13
  791. package/renderers/textRenderer/textRenderer.mjs +1 -5
  792. package/renderers/timeRenderer/index.js +0 -2
  793. package/renderers/timeRenderer/timeRenderer.js +1 -6
  794. package/renderers/timeRenderer/timeRenderer.mjs +1 -1
  795. package/selection/highlight/highlight.js +17 -73
  796. package/selection/highlight/highlight.mjs +31 -64
  797. package/selection/highlight/types/activeHeader.js +1 -21
  798. package/selection/highlight/types/activeHeader.mjs +6 -16
  799. package/selection/highlight/types/area.js +2 -22
  800. package/selection/highlight/types/area.mjs +10 -20
  801. package/selection/highlight/types/cell.js +1 -21
  802. package/selection/highlight/types/cell.mjs +9 -19
  803. package/selection/highlight/types/customSelection.js +2 -22
  804. package/selection/highlight/types/customSelection.mjs +11 -21
  805. package/selection/highlight/types/fill.js +2 -17
  806. package/selection/highlight/types/fill.mjs +9 -14
  807. package/selection/highlight/types/header.js +3 -23
  808. package/selection/highlight/types/header.mjs +13 -23
  809. package/selection/highlight/types/index.js +3 -24
  810. package/selection/highlight/types/index.mjs +3 -10
  811. package/selection/highlight/visualSelection.js +24 -74
  812. package/selection/highlight/visualSelection.mjs +24 -62
  813. package/selection/index.js +0 -14
  814. package/selection/mouseEventHandler.js +19 -30
  815. package/selection/mouseEventHandler.mjs +32 -36
  816. package/selection/range.js +11 -31
  817. package/selection/range.mjs +11 -22
  818. package/selection/selection.js +62 -157
  819. package/selection/selection.mjs +65 -132
  820. package/selection/transformation.js +10 -40
  821. package/selection/transformation.mjs +18 -45
  822. package/selection/utils.js +22 -70
  823. package/selection/utils.mjs +22 -47
  824. package/shortcuts/context.js +23 -78
  825. package/shortcuts/context.mjs +23 -55
  826. package/shortcuts/index.js +0 -2
  827. package/shortcuts/keyObserver.js +4 -17
  828. package/shortcuts/keyObserver.mjs +4 -12
  829. package/shortcuts/manager.js +16 -36
  830. package/shortcuts/manager.mjs +16 -33
  831. package/shortcuts/recorder.js +9 -40
  832. package/shortcuts/recorder.mjs +9 -31
  833. package/shortcuts/utils.js +5 -20
  834. package/shortcuts/utils.mjs +5 -6
  835. package/tableView.js +100 -270
  836. package/tableView.mjs +100 -248
  837. package/translations/changesObservable/observable.js +5 -54
  838. package/translations/changesObservable/observable.mjs +12 -51
  839. package/translations/changesObservable/observer.js +4 -32
  840. package/translations/changesObservable/observer.mjs +9 -29
  841. package/translations/changesObservable/utils.js +1 -5
  842. package/translations/changesObservable/utils.mjs +1 -4
  843. package/translations/index.js +0 -11
  844. package/translations/indexMapper.js +68 -156
  845. package/translations/indexMapper.mjs +68 -123
  846. package/translations/mapCollections/aggregatedCollection.js +9 -51
  847. package/translations/mapCollections/aggregatedCollection.mjs +12 -41
  848. package/translations/mapCollections/index.js +0 -7
  849. package/translations/mapCollections/mapCollection.js +10 -33
  850. package/translations/mapCollections/mapCollection.mjs +10 -22
  851. package/translations/maps/hidingMap.js +2 -35
  852. package/translations/maps/hidingMap.mjs +7 -28
  853. package/translations/maps/index.js +1 -24
  854. package/translations/maps/index.mjs +1 -3
  855. package/translations/maps/indexMap.js +12 -34
  856. package/translations/maps/indexMap.mjs +16 -32
  857. package/translations/maps/indexesSequence.js +3 -41
  858. package/translations/maps/indexesSequence.mjs +9 -32
  859. package/translations/maps/linkedPhysicalIndexToValueMap.js +9 -78
  860. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +16 -59
  861. package/translations/maps/physicalIndexToValueMap.js +2 -39
  862. package/translations/maps/physicalIndexToValueMap.mjs +8 -31
  863. package/translations/maps/trimmingMap.js +2 -35
  864. package/translations/maps/trimmingMap.mjs +7 -28
  865. package/translations/maps/utils/actionsOnIndexes.js +1 -7
  866. package/translations/maps/utils/actionsOnIndexes.mjs +9 -12
  867. package/translations/maps/utils/index.js +0 -13
  868. package/translations/maps/utils/index.mjs +0 -3
  869. package/translations/maps/utils/indexesSequence.js +1 -24
  870. package/translations/maps/utils/indexesSequence.mjs +10 -19
  871. package/translations/maps/utils/physicallyIndexed.js +1 -27
  872. package/translations/maps/utils/physicallyIndexed.mjs +11 -21
  873. package/utils/dataStructures/linkedList.js +15 -56
  874. package/utils/dataStructures/linkedList.mjs +15 -54
  875. package/utils/dataStructures/priorityMap.js +8 -46
  876. package/utils/dataStructures/priorityMap.mjs +8 -29
  877. package/utils/dataStructures/queue.js +6 -17
  878. package/utils/dataStructures/queue.mjs +6 -16
  879. package/utils/dataStructures/stack.js +6 -17
  880. package/utils/dataStructures/stack.mjs +6 -16
  881. package/utils/dataStructures/tree.js +11 -75
  882. package/utils/dataStructures/tree.mjs +11 -54
  883. package/utils/dataStructures/uniqueMap.js +17 -56
  884. package/utils/dataStructures/uniqueMap.mjs +17 -42
  885. package/utils/dataStructures/uniqueSet.js +5 -32
  886. package/utils/dataStructures/uniqueSet.mjs +5 -19
  887. package/utils/ghostTable.js +33 -104
  888. package/utils/ghostTable.mjs +35 -92
  889. package/utils/interval.js +10 -37
  890. package/utils/interval.mjs +7 -29
  891. package/utils/parseTable.js +11 -92
  892. package/utils/parseTable.mjs +11 -62
  893. package/utils/rootInstance.js +3 -14
  894. package/utils/rootInstance.mjs +3 -3
  895. package/utils/samplesGenerator.js +15 -51
  896. package/utils/samplesGenerator.mjs +17 -44
  897. package/utils/staticRegister.js +6 -33
  898. package/utils/staticRegister.mjs +6 -19
  899. package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
  900. package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
  901. package/validators/autocompleteValidator/index.js +0 -2
  902. package/validators/dateValidator/dateValidator.js +2 -21
  903. package/validators/dateValidator/dateValidator.mjs +2 -11
  904. package/validators/dateValidator/index.js +0 -2
  905. package/validators/index.js +0 -11
  906. package/validators/index.mjs +3 -5
  907. package/validators/numericValidator/index.js +0 -2
  908. package/validators/numericValidator/numericValidator.js +1 -7
  909. package/validators/numericValidator/numericValidator.mjs +1 -3
  910. package/validators/registry.js +7 -16
  911. package/validators/registry.mjs +7 -14
  912. package/validators/timeValidator/index.js +0 -2
  913. package/validators/timeValidator/timeValidator.js +6 -18
  914. package/validators/timeValidator/timeValidator.mjs +8 -13
@@ -5,23 +5,14 @@ import "core-js/modules/es.symbol.description.js";
5
5
  import "core-js/modules/es.symbol.iterator.js";
6
6
  import "core-js/modules/es.function.name.js";
7
7
  import "core-js/modules/es.regexp.exec.js";
8
-
9
8
  var _templateObject;
10
-
11
9
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
12
-
13
10
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
14
-
15
11
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
16
-
17
12
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
18
-
19
13
  function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
20
-
21
14
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
22
-
23
15
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
24
-
25
16
  import "core-js/modules/es.array.iterator.js";
26
17
  import "core-js/modules/es.object.to-string.js";
27
18
  import "core-js/modules/es.set.js";
@@ -34,13 +25,9 @@ import "core-js/modules/es.string.includes.js";
34
25
  import "core-js/modules/es.number.is-integer.js";
35
26
  import "core-js/modules/es.number.constructor.js";
36
27
  import "core-js/modules/web.dom-collections.for-each.js";
37
-
38
28
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
39
-
40
29
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
41
-
42
30
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
43
-
44
31
  import Highlight from "./highlight/highlight.mjs";
45
32
  import { AREA_TYPE, HEADER_TYPE, CELL_TYPE } from "./highlight/constants.mjs";
46
33
  import SelectionRange from "./range.mjs";
@@ -50,18 +37,14 @@ import { arrayEach } from "./../helpers/array.mjs";
50
37
  import localHooks from "./../mixins/localHooks.mjs";
51
38
  import Transformation from "./transformation.mjs";
52
39
  import { detectSelectionType, isValidCoord, normalizeSelectionFactory, SELECTION_TYPE_EMPTY, SELECTION_TYPE_UNRECOGNIZED } from "./utils.mjs";
53
- import { toSingleLine } from "./../helpers/templateLiteralTag.mjs";
54
- /**
55
- * @class Selection
56
- * @util
57
- */
58
-
40
+ import { toSingleLine } from "./../helpers/templateLiteralTag.mjs"; /**
41
+ * @class Selection
42
+ * @util
43
+ */
59
44
  var Selection = /*#__PURE__*/function () {
60
45
  function Selection(settings, tableProps) {
61
46
  var _this = this;
62
-
63
47
  _classCallCheck(this, Selection);
64
-
65
48
  /**
66
49
  * Handsontable settings instance.
67
50
  *
@@ -73,21 +56,18 @@ var Selection = /*#__PURE__*/function () {
73
56
  *
74
57
  * @type {object}
75
58
  */
76
-
77
59
  this.tableProps = tableProps;
78
60
  /**
79
61
  * The flag which determines if the selection is in progress.
80
62
  *
81
63
  * @type {boolean}
82
64
  */
83
-
84
65
  this.inProgress = false;
85
66
  /**
86
67
  * The flag indicates that selection was performed by clicking the corner overlay.
87
68
  *
88
69
  * @type {boolean}
89
70
  */
90
-
91
71
  this.selectedByCorner = false;
92
72
  /**
93
73
  * The collection of the selection layer levels where the whole row was selected using the row header or
@@ -95,7 +75,6 @@ var Selection = /*#__PURE__*/function () {
95
75
  *
96
76
  * @type {Set.<number>}
97
77
  */
98
-
99
78
  this.selectedByRowHeader = new Set();
100
79
  /**
101
80
  * The collection of the selection layer levels where the whole column was selected using the column header or
@@ -103,14 +82,12 @@ var Selection = /*#__PURE__*/function () {
103
82
  *
104
83
  * @type {Set.<number>}
105
84
  */
106
-
107
85
  this.selectedByColumnHeader = new Set();
108
86
  /**
109
87
  * Selection data layer (handle visual coordinates).
110
88
  *
111
89
  * @type {SelectionRange}
112
90
  */
113
-
114
91
  this.selectedRange = new SelectionRange(function (highlight, from, to) {
115
92
  return _this.tableProps.createCellRange(highlight, from, to);
116
93
  });
@@ -119,7 +96,6 @@ var Selection = /*#__PURE__*/function () {
119
96
  *
120
97
  * @type {Highlight}
121
98
  */
122
-
123
99
  this.highlight = new Highlight({
124
100
  headerClassName: settings.currentHeaderClassName,
125
101
  activeHeaderClassName: settings.activeHeaderClassName,
@@ -158,7 +134,6 @@ var Selection = /*#__PURE__*/function () {
158
134
  *
159
135
  * @type {Transformation}
160
136
  */
161
-
162
137
  this.transformation = new Transformation(this.selectedRange, {
163
138
  countRows: function countRows() {
164
139
  return _this.tableProps.countRowsTranslated();
@@ -195,87 +170,81 @@ var Selection = /*#__PURE__*/function () {
195
170
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
196
171
  args[_key] = arguments[_key];
197
172
  }
198
-
199
173
  return _this.runLocalHooks.apply(_this, ['beforeModifyTransformStart'].concat(args));
200
174
  });
201
175
  this.transformation.addLocalHook('afterTransformStart', function () {
202
176
  for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
203
177
  args[_key2] = arguments[_key2];
204
178
  }
205
-
206
179
  return _this.runLocalHooks.apply(_this, ['afterModifyTransformStart'].concat(args));
207
180
  });
208
181
  this.transformation.addLocalHook('beforeTransformEnd', function () {
209
182
  for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
210
183
  args[_key3] = arguments[_key3];
211
184
  }
212
-
213
185
  return _this.runLocalHooks.apply(_this, ['beforeModifyTransformEnd'].concat(args));
214
186
  });
215
187
  this.transformation.addLocalHook('afterTransformEnd', function () {
216
188
  for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
217
189
  args[_key4] = arguments[_key4];
218
190
  }
219
-
220
191
  return _this.runLocalHooks.apply(_this, ['afterModifyTransformEnd'].concat(args));
221
192
  });
222
193
  this.transformation.addLocalHook('insertRowRequire', function () {
223
194
  for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
224
195
  args[_key5] = arguments[_key5];
225
196
  }
226
-
227
197
  return _this.runLocalHooks.apply(_this, ['insertRowRequire'].concat(args));
228
198
  });
229
199
  this.transformation.addLocalHook('insertColRequire', function () {
230
200
  for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {
231
201
  args[_key6] = arguments[_key6];
232
202
  }
233
-
234
203
  return _this.runLocalHooks.apply(_this, ['insertColRequire'].concat(args));
235
204
  });
236
205
  }
206
+
237
207
  /**
238
208
  * Get data layer for current selection.
239
209
  *
240
210
  * @returns {SelectionRange}
241
211
  */
242
-
243
-
244
212
  _createClass(Selection, [{
245
213
  key: "getSelectedRange",
246
214
  value: function getSelectedRange() {
247
215
  return this.selectedRange;
248
216
  }
217
+
249
218
  /**
250
219
  * Indicate that selection process began. It sets internaly `.inProgress` property to `true`.
251
220
  */
252
-
253
221
  }, {
254
222
  key: "begin",
255
223
  value: function begin() {
256
224
  this.inProgress = true;
257
225
  }
226
+
258
227
  /**
259
228
  * Indicate that selection process finished. It sets internaly `.inProgress` property to `false`.
260
229
  */
261
-
262
230
  }, {
263
231
  key: "finish",
264
232
  value: function finish() {
265
233
  this.runLocalHooks('afterSelectionFinished', Array.from(this.selectedRange));
266
234
  this.inProgress = false;
267
235
  }
236
+
268
237
  /**
269
238
  * Check if the process of selecting the cell/cells is in progress.
270
239
  *
271
240
  * @returns {boolean}
272
241
  */
273
-
274
242
  }, {
275
243
  key: "isInProgress",
276
244
  value: function isInProgress() {
277
245
  return this.inProgress;
278
246
  }
247
+
279
248
  /**
280
249
  * Starts selection range on given coordinate object.
281
250
  *
@@ -286,7 +255,6 @@ var Selection = /*#__PURE__*/function () {
286
255
  * @param {boolean} [fragment=false] If `true`, the selection will be treated as a partial selection where the
287
256
  * `setRangeEnd` method won't be called on every `setRangeStart` call.
288
257
  */
289
-
290
258
  }, {
291
259
  key: "setRangeStart",
292
260
  value: function setRangeStart(coords, multipleSelection) {
@@ -295,36 +263,31 @@ var Selection = /*#__PURE__*/function () {
295
263
  var isMultipleSelection = isUndefined(multipleSelection) ? this.tableProps.getShortcutManager().isCtrlPressed() : multipleSelection;
296
264
  var isRowNegative = coords.row < 0;
297
265
  var isColumnNegative = coords.col < 0;
298
- var selectedByCorner = isRowNegative && isColumnNegative; // We are creating copy. We would like to modify just the start of the selection by below hook. Then original coords
266
+ var selectedByCorner = isRowNegative && isColumnNegative;
267
+ // We are creating copy. We would like to modify just the start of the selection by below hook. Then original coords
299
268
  // should be handled by next methods.
300
-
301
269
  var coordsClone = coords.clone();
302
270
  this.selectedByCorner = selectedByCorner;
303
271
  this.runLocalHooks("beforeSetRangeStart".concat(fragment ? 'Only' : ''), coordsClone);
304
-
305
272
  if (!isMultipleMode || isMultipleMode && !isMultipleSelection && isUndefined(multipleSelection)) {
306
273
  this.selectedRange.clear();
307
274
  }
308
-
309
275
  this.selectedRange.add(coordsClone);
310
-
311
276
  if (this.getLayerLevel() === 0) {
312
277
  this.selectedByRowHeader.clear();
313
278
  this.selectedByColumnHeader.clear();
314
279
  }
315
-
316
280
  if (!selectedByCorner && isColumnNegative) {
317
281
  this.selectedByRowHeader.add(this.getLayerLevel());
318
282
  }
319
-
320
283
  if (!selectedByCorner && isRowNegative) {
321
284
  this.selectedByColumnHeader.add(this.getLayerLevel());
322
285
  }
323
-
324
286
  if (!fragment) {
325
287
  this.setRangeEnd(coords);
326
288
  }
327
289
  }
290
+
328
291
  /**
329
292
  * Starts selection range on given coordinate object.
330
293
  *
@@ -333,46 +296,43 @@ var Selection = /*#__PURE__*/function () {
333
296
  * only when 'selectionMode' is set as 'multiple'. If the argument is not defined
334
297
  * the default trigger will be used.
335
298
  */
336
-
337
299
  }, {
338
300
  key: "setRangeStartOnly",
339
301
  value: function setRangeStartOnly(coords, multipleSelection) {
340
302
  this.setRangeStart(coords, multipleSelection, true);
341
303
  }
304
+
342
305
  /**
343
306
  * Ends selection range on given coordinate object.
344
307
  *
345
308
  * @param {CellCoords} coords Visual coords.
346
309
  */
347
-
348
310
  }, {
349
311
  key: "setRangeEnd",
350
312
  value: function setRangeEnd(coords) {
351
313
  if (this.selectedRange.isEmpty()) {
352
314
  return;
353
- } // We are creating copy. We would like to modify just the end of the selection by below hook. Then original coords
354
- // should be handled by next methods.
355
-
315
+ }
356
316
 
317
+ // We are creating copy. We would like to modify just the end of the selection by below hook. Then original coords
318
+ // should be handled by next methods.
357
319
  var coordsClone = coords.clone();
358
320
  this.runLocalHooks('beforeSetRangeEnd', coordsClone);
359
321
  this.begin();
360
322
  var cellRange = this.selectedRange.current();
361
-
362
323
  if (this.settings.selectionMode !== 'single') {
363
324
  cellRange.setTo(this.tableProps.createCellCoords(coordsClone.row, coordsClone.col));
364
- } // Set up current selection.
365
-
325
+ }
366
326
 
327
+ // Set up current selection.
367
328
  this.highlight.getCell().clear();
368
-
369
329
  if (this.highlight.isEnabledFor(CELL_TYPE, cellRange.highlight)) {
370
330
  this.highlight.getCell().add(this.selectedRange.current().highlight).commit().syncWith(cellRange);
371
331
  }
332
+ var layerLevel = this.getLayerLevel();
372
333
 
373
- var layerLevel = this.getLayerLevel(); // If the next layer level is lower than previous then clear all area and header highlights. This is the
334
+ // If the next layer level is lower than previous then clear all area and header highlights. This is the
374
335
  // indication that the new selection is performing.
375
-
376
336
  if (layerLevel < this.highlight.layerLevel) {
377
337
  arrayEach(this.highlight.getAreas(), function (highlight) {
378
338
  return void highlight.clear();
@@ -384,7 +344,6 @@ var Selection = /*#__PURE__*/function () {
384
344
  return void highlight.clear();
385
345
  });
386
346
  }
387
-
388
347
  this.highlight.useLayerLevel(layerLevel);
389
348
  var areaHighlight = this.highlight.createOrGetArea();
390
349
  var headerHighlight = this.highlight.createOrGetHeader();
@@ -392,21 +351,19 @@ var Selection = /*#__PURE__*/function () {
392
351
  areaHighlight.clear();
393
352
  headerHighlight.clear();
394
353
  activeHeaderHighlight.clear();
395
-
396
354
  if (this.highlight.isEnabledFor(AREA_TYPE, cellRange.highlight) && (this.isMultiple() || layerLevel >= 1)) {
397
355
  areaHighlight.add(cellRange.from).add(cellRange.to).commit();
398
-
399
356
  if (layerLevel === 1) {
400
357
  // For single cell selection in the same layer, we do not create area selection to prevent blue background.
401
358
  // When non-consecutive selection is performed we have to add that missing area selection to the previous layer
402
359
  // based on previous coordinates. It only occurs when the previous selection wasn't select multiple cells.
403
360
  var previousRange = this.selectedRange.previous();
404
- this.highlight.useLayerLevel(layerLevel - 1).createOrGetArea().add(previousRange.from).commit() // Range may start with hidden indexes. Commit would not found start point (as we add just the `from` coords).
361
+ this.highlight.useLayerLevel(layerLevel - 1).createOrGetArea().add(previousRange.from).commit()
362
+ // Range may start with hidden indexes. Commit would not found start point (as we add just the `from` coords).
405
363
  .syncWith(previousRange);
406
364
  this.highlight.useLayerLevel(layerLevel);
407
365
  }
408
366
  }
409
-
410
367
  if (this.highlight.isEnabledFor(HEADER_TYPE, cellRange.highlight)) {
411
368
  // The header selection generally contains cell selection. In a case when all rows (or columns)
412
369
  // are hidden that visual coordinates are translated to renderable coordinates that do not exist.
@@ -415,55 +372,49 @@ var Selection = /*#__PURE__*/function () {
415
372
  var areAnyRowsRendered = this.tableProps.countRowsTranslated() === 0;
416
373
  var areAnyColumnsRendered = this.tableProps.countColsTranslated() === 0;
417
374
  var headerCellRange = cellRange;
418
-
419
375
  if (areAnyRowsRendered || areAnyColumnsRendered) {
420
376
  headerCellRange = cellRange.clone();
421
377
  }
422
-
423
378
  if (areAnyRowsRendered) {
424
379
  headerCellRange.from.row = -1;
425
380
  }
426
-
427
381
  if (areAnyColumnsRendered) {
428
382
  headerCellRange.from.col = -1;
429
383
  }
430
-
431
384
  if (this.settings.selectionMode === 'single') {
432
385
  if (this.isSelectedByAnyHeader()) {
433
386
  headerCellRange.from.normalize();
434
387
  }
435
-
436
388
  headerHighlight.add(headerCellRange.from).commit();
437
389
  } else {
438
390
  headerHighlight.add(headerCellRange.from).add(headerCellRange.to).commit();
439
391
  }
440
-
441
392
  if (this.isEntireRowSelected()) {
442
- var isRowSelected = this.tableProps.countCols() === cellRange.getWidth(); // Make sure that the whole row is selected (in case where selectionMode is set to 'single')
393
+ var isRowSelected = this.tableProps.countCols() === cellRange.getWidth();
443
394
 
395
+ // Make sure that the whole row is selected (in case where selectionMode is set to 'single')
444
396
  if (isRowSelected) {
445
397
  activeHeaderHighlight.add(this.tableProps.createCellCoords(cellRange.from.row, -1)).add(this.tableProps.createCellCoords(cellRange.to.row, -1)).commit();
446
398
  }
447
399
  }
448
-
449
400
  if (this.isEntireColumnSelected()) {
450
- var isColumnSelected = this.tableProps.countRows() === cellRange.getHeight(); // Make sure that the whole column is selected (in case where selectionMode is set to 'single')
401
+ var isColumnSelected = this.tableProps.countRows() === cellRange.getHeight();
451
402
 
403
+ // Make sure that the whole column is selected (in case where selectionMode is set to 'single')
452
404
  if (isColumnSelected) {
453
405
  activeHeaderHighlight.add(this.tableProps.createCellCoords(-1, cellRange.from.col)).add(this.tableProps.createCellCoords(-1, cellRange.to.col)).commit();
454
406
  }
455
407
  }
456
408
  }
457
-
458
409
  this.runLocalHooks('afterSetRangeEnd', coords);
459
410
  }
411
+
460
412
  /**
461
413
  * Returns information if we have a multiselection. This method check multiselection only on the latest layer of
462
414
  * the selection.
463
415
  *
464
416
  * @returns {boolean}
465
417
  */
466
-
467
418
  }, {
468
419
  key: "isMultiple",
469
420
  value: function isMultiple() {
@@ -471,6 +422,7 @@ var Selection = /*#__PURE__*/function () {
471
422
  this.runLocalHooks('afterIsMultipleSelection', isMultipleListener);
472
423
  return isMultipleListener.value;
473
424
  }
425
+
474
426
  /**
475
427
  * Selects cell relative to the current cell (if possible).
476
428
  *
@@ -479,47 +431,47 @@ var Selection = /*#__PURE__*/function () {
479
431
  * @param {boolean} [force=false] If `true` the new rows/columns will be created if necessary. Otherwise, row/column will
480
432
  * be created according to `minSpareRows/minSpareCols` settings of Handsontable.
481
433
  */
482
-
483
434
  }, {
484
435
  key: "transformStart",
485
436
  value: function transformStart(rowDelta, colDelta) {
486
437
  var force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
487
438
  this.setRangeStart(this.transformation.transformStart(rowDelta, colDelta, force));
488
439
  }
440
+
489
441
  /**
490
442
  * Sets selection end cell relative to the current selection end cell (if possible).
491
443
  *
492
444
  * @param {number} rowDelta Rows number to move, value can be passed as negative number.
493
445
  * @param {number} colDelta Columns number to move, value can be passed as negative number.
494
446
  */
495
-
496
447
  }, {
497
448
  key: "transformEnd",
498
449
  value: function transformEnd(rowDelta, colDelta) {
499
450
  this.setRangeEnd(this.transformation.transformEnd(rowDelta, colDelta));
500
451
  }
452
+
501
453
  /**
502
454
  * Returns currently used layer level.
503
455
  *
504
456
  * @returns {number} Returns layer level starting from 0. If no selection was added to the table -1 is returned.
505
457
  */
506
-
507
458
  }, {
508
459
  key: "getLayerLevel",
509
460
  value: function getLayerLevel() {
510
461
  return this.selectedRange.size() - 1;
511
462
  }
463
+
512
464
  /**
513
465
  * Returns `true` if currently there is a selection on the screen, `false` otherwise.
514
466
  *
515
467
  * @returns {boolean}
516
468
  */
517
-
518
469
  }, {
519
470
  key: "isSelected",
520
471
  value: function isSelected() {
521
472
  return !this.selectedRange.isEmpty();
522
473
  }
474
+
523
475
  /**
524
476
  * Returns `true` if the selection was applied by clicking to the row header. If the `layerLevel`
525
477
  * argument is passed then only that layer will be checked. Otherwise, it checks if any row header
@@ -528,13 +480,13 @@ var Selection = /*#__PURE__*/function () {
528
480
  * @param {number} [layerLevel=this.getLayerLevel()] Selection layer level to check.
529
481
  * @returns {boolean}
530
482
  */
531
-
532
483
  }, {
533
484
  key: "isSelectedByRowHeader",
534
485
  value: function isSelectedByRowHeader() {
535
486
  var layerLevel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.getLayerLevel();
536
487
  return !this.isSelectedByCorner(layerLevel) && this.isEntireRowSelected(layerLevel);
537
488
  }
489
+
538
490
  /**
539
491
  * Returns `true` if the selection consists of entire rows (including their headers). If the `layerLevel`
540
492
  * argument is passed then only that layer will be checked. Otherwise, it checks the selection for all layers.
@@ -542,13 +494,13 @@ var Selection = /*#__PURE__*/function () {
542
494
  * @param {number} [layerLevel=this.getLayerLevel()] Selection layer level to check.
543
495
  * @returns {boolean}
544
496
  */
545
-
546
497
  }, {
547
498
  key: "isEntireRowSelected",
548
499
  value: function isEntireRowSelected() {
549
500
  var layerLevel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.getLayerLevel();
550
501
  return layerLevel === -1 ? this.selectedByRowHeader.size > 0 : this.selectedByRowHeader.has(layerLevel);
551
502
  }
503
+
552
504
  /**
553
505
  * Returns `true` if the selection was applied by clicking to the column header. If the `layerLevel`
554
506
  * argument is passed then only that layer will be checked. Otherwise, it checks if any column header
@@ -557,13 +509,13 @@ var Selection = /*#__PURE__*/function () {
557
509
  * @param {number} [layerLevel=this.getLayerLevel()] Selection layer level to check.
558
510
  * @returns {boolean}
559
511
  */
560
-
561
512
  }, {
562
513
  key: "isSelectedByColumnHeader",
563
514
  value: function isSelectedByColumnHeader() {
564
515
  var layerLevel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.getLayerLevel();
565
516
  return !this.isSelectedByCorner() && this.isEntireColumnSelected(layerLevel);
566
517
  }
518
+
567
519
  /**
568
520
  * Returns `true` if the selection consists of entire columns (including their headers). If the `layerLevel`
569
521
  * argument is passed then only that layer will be checked. Otherwise, it checks the selection for all layers.
@@ -571,35 +523,35 @@ var Selection = /*#__PURE__*/function () {
571
523
  * @param {number} [layerLevel=this.getLayerLevel()] Selection layer level to check.
572
524
  * @returns {boolean}
573
525
  */
574
-
575
526
  }, {
576
527
  key: "isEntireColumnSelected",
577
528
  value: function isEntireColumnSelected() {
578
529
  var layerLevel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.getLayerLevel();
579
530
  return layerLevel === -1 ? this.selectedByColumnHeader.size > 0 : this.selectedByColumnHeader.has(layerLevel);
580
531
  }
532
+
581
533
  /**
582
534
  * Returns `true` if the selection was applied by clicking on the row or column header on any layer level.
583
535
  *
584
536
  * @returns {boolean}
585
537
  */
586
-
587
538
  }, {
588
539
  key: "isSelectedByAnyHeader",
589
540
  value: function isSelectedByAnyHeader() {
590
541
  return this.isSelectedByRowHeader(-1) || this.isSelectedByColumnHeader(-1) || this.isSelectedByCorner();
591
542
  }
543
+
592
544
  /**
593
545
  * Returns `true` if the selection was applied by clicking on the left-top corner overlay.
594
546
  *
595
547
  * @returns {boolean}
596
548
  */
597
-
598
549
  }, {
599
550
  key: "isSelectedByCorner",
600
551
  value: function isSelectedByCorner() {
601
552
  return this.selectedByCorner;
602
553
  }
554
+
603
555
  /**
604
556
  * Returns `true` if coords is within selection coords. This method iterates through all selection layers to check if
605
557
  * the coords object is within selection range.
@@ -607,44 +559,42 @@ var Selection = /*#__PURE__*/function () {
607
559
  * @param {CellCoords} coords The CellCoords instance with defined visual coordinates.
608
560
  * @returns {boolean}
609
561
  */
610
-
611
562
  }, {
612
563
  key: "inInSelection",
613
564
  value: function inInSelection(coords) {
614
565
  return this.selectedRange.includes(coords);
615
566
  }
567
+
616
568
  /**
617
569
  * Returns `true` if the cell corner should be visible.
618
570
  *
619
571
  * @private
620
572
  * @returns {boolean} `true` if the corner element has to be visible, `false` otherwise.
621
573
  */
622
-
623
574
  }, {
624
575
  key: "isCellCornerVisible",
625
576
  value: function isCellCornerVisible() {
626
577
  return this.settings.fillHandle && !this.tableProps.isEditorOpened() && !this.isMultiple();
627
578
  }
579
+
628
580
  /**
629
581
  * Returns `true` if the area corner should be visible.
630
582
  *
631
583
  * @param {number} layerLevel The layer level.
632
584
  * @returns {boolean} `true` if the corner element has to be visible, `false` otherwise.
633
585
  */
634
-
635
586
  }, {
636
587
  key: "isAreaCornerVisible",
637
588
  value: function isAreaCornerVisible(layerLevel) {
638
589
  if (Number.isInteger(layerLevel) && layerLevel !== this.getLayerLevel()) {
639
590
  return false;
640
591
  }
641
-
642
592
  return this.settings.fillHandle && !this.tableProps.isEditorOpened() && this.isMultiple();
643
593
  }
594
+
644
595
  /**
645
596
  * Clear the selection by resetting the collected ranges and highlights.
646
597
  */
647
-
648
598
  }, {
649
599
  key: "clear",
650
600
  value: function clear() {
@@ -652,21 +602,21 @@ var Selection = /*#__PURE__*/function () {
652
602
  this.selectedRange.clear();
653
603
  this.highlight.clear();
654
604
  }
605
+
655
606
  /**
656
607
  * Deselects all selected cells.
657
608
  */
658
-
659
609
  }, {
660
610
  key: "deselect",
661
611
  value: function deselect() {
662
612
  if (!this.isSelected()) {
663
613
  return;
664
614
  }
665
-
666
615
  this.inProgress = false;
667
616
  this.clear();
668
617
  this.runLocalHooks('afterDeselect');
669
618
  }
619
+
670
620
  /**
671
621
  * Select all cells.
672
622
  *
@@ -675,19 +625,18 @@ var Selection = /*#__PURE__*/function () {
675
625
  * @param {boolean} [includeColumnHeaders=false] `true` If the selection should include the column headers, `false`
676
626
  * otherwise.
677
627
  */
678
-
679
628
  }, {
680
629
  key: "selectAll",
681
630
  value: function selectAll() {
682
631
  var includeRowHeaders = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
683
632
  var includeColumnHeaders = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
684
633
  var nrOfRows = this.tableProps.countRows();
685
- var nrOfColumns = this.tableProps.countCols(); // We can't select cells when there is no data.
634
+ var nrOfColumns = this.tableProps.countCols();
686
635
 
636
+ // We can't select cells when there is no data.
687
637
  if (!includeRowHeaders && !includeColumnHeaders && (nrOfRows === 0 || nrOfColumns === 0)) {
688
638
  return;
689
639
  }
690
-
691
640
  var startCoords = this.tableProps.createCellCoords(includeColumnHeaders ? -1 : 0, includeRowHeaders ? -1 : 0);
692
641
  this.clear();
693
642
  this.setRangeStartOnly(startCoords);
@@ -696,6 +645,7 @@ var Selection = /*#__PURE__*/function () {
696
645
  this.setRangeEnd(this.tableProps.createCellCoords(nrOfRows - 1, nrOfColumns - 1));
697
646
  this.finish();
698
647
  }
648
+
699
649
  /**
700
650
  * Make multiple, non-contiguous selection specified by `row` and `column` values or a range of cells
701
651
  * finishing at `endRow`, `endColumn`. The method supports two input formats, first as an array of arrays such
@@ -705,20 +655,16 @@ var Selection = /*#__PURE__*/function () {
705
655
  * @param {Array[]|CellRange[]} selectionRanges The coordinates which define what the cells should be selected.
706
656
  * @returns {boolean} Returns `true` if selection was successful, `false` otherwise.
707
657
  */
708
-
709
658
  }, {
710
659
  key: "selectCells",
711
660
  value: function selectCells(selectionRanges) {
712
661
  var _this2 = this;
713
-
714
662
  var selectionType = detectSelectionType(selectionRanges);
715
-
716
663
  if (selectionType === SELECTION_TYPE_EMPTY) {
717
664
  return false;
718
665
  } else if (selectionType === SELECTION_TYPE_UNRECOGNIZED) {
719
666
  throw new Error(toSingleLine(_templateObject || (_templateObject = _taggedTemplateLiteral(["Unsupported format of the selection ranges was passed. To select cells pass \n the coordinates as an array of arrays ([[rowStart, columnStart/columnPropStart, rowEnd, \n columnEnd/columnPropEnd]]) or as an array of CellRange objects."], ["Unsupported format of the selection ranges was passed. To select cells pass\\x20\n the coordinates as an array of arrays ([[rowStart, columnStart/columnPropStart, rowEnd,\\x20\n columnEnd/columnPropEnd]]) or as an array of CellRange objects."]))));
720
667
  }
721
-
722
668
  var selectionSchemaNormalizer = normalizeSelectionFactory(selectionType, {
723
669
  propToCol: function propToCol(prop) {
724
670
  return _this2.tableProps.propToCol(prop);
@@ -726,41 +672,36 @@ var Selection = /*#__PURE__*/function () {
726
672
  keepDirection: true
727
673
  });
728
674
  var nrOfRows = this.tableProps.countRows();
729
- var nrOfColumns = this.tableProps.countCols(); // Check if every layer of the coordinates are valid.
675
+ var nrOfColumns = this.tableProps.countCols();
730
676
 
677
+ // Check if every layer of the coordinates are valid.
731
678
  var isValid = !selectionRanges.some(function (selection) {
732
679
  var _selectionSchemaNorma = selectionSchemaNormalizer(selection),
733
- _selectionSchemaNorma2 = _slicedToArray(_selectionSchemaNorma, 4),
734
- rowStart = _selectionSchemaNorma2[0],
735
- columnStart = _selectionSchemaNorma2[1],
736
- rowEnd = _selectionSchemaNorma2[2],
737
- columnEnd = _selectionSchemaNorma2[3];
738
-
680
+ _selectionSchemaNorma2 = _slicedToArray(_selectionSchemaNorma, 4),
681
+ rowStart = _selectionSchemaNorma2[0],
682
+ columnStart = _selectionSchemaNorma2[1],
683
+ rowEnd = _selectionSchemaNorma2[2],
684
+ columnEnd = _selectionSchemaNorma2[3];
739
685
  var _isValid = isValidCoord(rowStart, nrOfRows) && isValidCoord(columnStart, nrOfColumns) && isValidCoord(rowEnd, nrOfRows) && isValidCoord(columnEnd, nrOfColumns);
740
-
741
686
  return !_isValid;
742
687
  });
743
-
744
688
  if (isValid) {
745
689
  this.clear();
746
690
  arrayEach(selectionRanges, function (selection) {
747
691
  var _selectionSchemaNorma3 = selectionSchemaNormalizer(selection),
748
- _selectionSchemaNorma4 = _slicedToArray(_selectionSchemaNorma3, 4),
749
- rowStart = _selectionSchemaNorma4[0],
750
- columnStart = _selectionSchemaNorma4[1],
751
- rowEnd = _selectionSchemaNorma4[2],
752
- columnEnd = _selectionSchemaNorma4[3];
753
-
692
+ _selectionSchemaNorma4 = _slicedToArray(_selectionSchemaNorma3, 4),
693
+ rowStart = _selectionSchemaNorma4[0],
694
+ columnStart = _selectionSchemaNorma4[1],
695
+ rowEnd = _selectionSchemaNorma4[2],
696
+ columnEnd = _selectionSchemaNorma4[3];
754
697
  _this2.setRangeStartOnly(_this2.tableProps.createCellCoords(rowStart, columnStart), false);
755
-
756
698
  _this2.setRangeEnd(_this2.tableProps.createCellCoords(rowEnd, columnEnd));
757
-
758
699
  _this2.finish();
759
700
  });
760
701
  }
761
-
762
702
  return isValid;
763
703
  }
704
+
764
705
  /**
765
706
  * Select column specified by `startColumn` visual index or column property or a range of columns finishing at
766
707
  * `endColumn`.
@@ -772,7 +713,6 @@ var Selection = /*#__PURE__*/function () {
772
713
  *
773
714
  * @returns {boolean} Returns `true` if selection was successful, `false` otherwise.
774
715
  */
775
-
776
716
  }, {
777
717
  key: "selectColumns",
778
718
  value: function selectColumns(startColumn) {
@@ -783,15 +723,14 @@ var Selection = /*#__PURE__*/function () {
783
723
  var nrOfColumns = this.tableProps.countCols();
784
724
  var nrOfRows = this.tableProps.countRows();
785
725
  var isValid = isValidCoord(start, nrOfColumns) && isValidCoord(end, nrOfColumns);
786
-
787
726
  if (isValid) {
788
727
  this.setRangeStartOnly(this.tableProps.createCellCoords(headerLevel, start));
789
728
  this.setRangeEnd(this.tableProps.createCellCoords(nrOfRows - 1, end));
790
729
  this.finish();
791
730
  }
792
-
793
731
  return isValid;
794
732
  }
733
+
795
734
  /**
796
735
  * Select row specified by `startRow` visual index or a range of rows finishing at `endRow`.
797
736
  *
@@ -802,7 +741,6 @@ var Selection = /*#__PURE__*/function () {
802
741
  * closest to the cells.
803
742
  * @returns {boolean} Returns `true` if selection was successful, `false` otherwise.
804
743
  */
805
-
806
744
  }, {
807
745
  key: "selectRows",
808
746
  value: function selectRows(startRow) {
@@ -811,19 +749,17 @@ var Selection = /*#__PURE__*/function () {
811
749
  var nrOfRows = this.tableProps.countRows();
812
750
  var nrOfColumns = this.tableProps.countCols();
813
751
  var isValid = isValidCoord(startRow, nrOfRows) && isValidCoord(endRow, nrOfRows);
814
-
815
752
  if (isValid) {
816
753
  this.setRangeStartOnly(this.tableProps.createCellCoords(startRow, headerLevel));
817
754
  this.setRangeEnd(this.tableProps.createCellCoords(endRow, nrOfColumns - 1));
818
755
  this.finish();
819
756
  }
820
-
821
757
  return isValid;
822
758
  }
759
+
823
760
  /**
824
761
  * Rewrite the rendered state of the selection as visual selection may have a new representation in the DOM.
825
762
  */
826
-
827
763
  }, {
828
764
  key: "refresh",
829
765
  value: function refresh() {
@@ -831,15 +767,14 @@ var Selection = /*#__PURE__*/function () {
831
767
  customSelections.forEach(function (customSelection) {
832
768
  customSelection.commit();
833
769
  });
834
-
835
770
  if (!this.isSelected()) {
836
771
  return;
837
772
  }
838
-
839
773
  var cellHighlight = this.highlight.getCell();
840
774
  var currentLayer = this.getLayerLevel();
841
- cellHighlight.commit().syncWith(this.selectedRange.current()); // Rewriting rendered ranges going through all layers.
775
+ cellHighlight.commit().syncWith(this.selectedRange.current());
842
776
 
777
+ // Rewriting rendered ranges going through all layers.
843
778
  for (var layerLevel = 0; layerLevel < this.selectedRange.size(); layerLevel += 1) {
844
779
  this.highlight.useLayerLevel(layerLevel);
845
780
  var areaHighlight = this.highlight.createOrGetArea();
@@ -848,15 +783,13 @@ var Selection = /*#__PURE__*/function () {
848
783
  areaHighlight.commit();
849
784
  headerHighlight.commit();
850
785
  activeHeaderHighlight.commit();
851
- } // Reverting starting layer for the Highlight.
852
-
786
+ }
853
787
 
788
+ // Reverting starting layer for the Highlight.
854
789
  this.highlight.useLayerLevel(currentLayer);
855
790
  }
856
791
  }]);
857
-
858
792
  return Selection;
859
793
  }();
860
-
861
794
  mixin(Selection, localHooks);
862
795
  export default Selection;