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
package/tableView.mjs CHANGED
@@ -1,29 +1,16 @@
1
1
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
-
3
2
  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."); }
4
-
5
3
  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; }
6
-
7
4
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
8
-
9
5
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
10
-
11
6
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
12
-
13
7
  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); }
14
-
15
8
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
16
-
17
9
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
18
-
19
10
  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; }
20
-
21
11
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
22
-
23
12
  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); } }
24
-
25
13
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
26
-
27
14
  import "core-js/modules/es.array.iterator.js";
28
15
  import "core-js/modules/es.object.to-string.js";
29
16
  import "core-js/modules/es.string.iterator.js";
@@ -45,18 +32,17 @@ import Walkontable from "./3rdparty/walkontable/src/index.mjs";
45
32
  import { handleMouseEvent } from "./selection/mouseEventHandler.mjs";
46
33
  import { isRootInstance } from "./utils/rootInstance.mjs";
47
34
  var privatePool = new WeakMap();
35
+
48
36
  /**
49
37
  * @class TableView
50
38
  * @private
51
39
  */
52
-
53
40
  var TableView = /*#__PURE__*/function () {
54
41
  /**
55
42
  * @param {Hanstontable} instance Instance of {@link Handsontable}.
56
43
  */
57
44
  function TableView(instance) {
58
45
  _classCallCheck(this, TableView);
59
-
60
46
  /**
61
47
  * Instance of {@link Handsontable}.
62
48
  *
@@ -70,7 +56,6 @@ var TableView = /*#__PURE__*/function () {
70
56
  * @private
71
57
  * @type {EventManager}
72
58
  */
73
-
74
59
  this.eventManager = new EventManager(instance);
75
60
  /**
76
61
  * Current Handsontable's GridSettings object.
@@ -78,7 +63,6 @@ var TableView = /*#__PURE__*/function () {
78
63
  * @private
79
64
  * @type {GridSettings}
80
65
  */
81
-
82
66
  this.settings = instance.getSettings();
83
67
  /**
84
68
  * Main <THEAD> element.
@@ -86,7 +70,6 @@ var TableView = /*#__PURE__*/function () {
86
70
  * @private
87
71
  * @type {HTMLTableSectionElement}
88
72
  */
89
-
90
73
  this.THEAD = void 0;
91
74
  /**
92
75
  * Main <TBODY> element.
@@ -94,7 +77,6 @@ var TableView = /*#__PURE__*/function () {
94
77
  * @private
95
78
  * @type {HTMLTableSectionElement}
96
79
  */
97
-
98
80
  this.TBODY = void 0;
99
81
  /**
100
82
  * Main Walkontable instance.
@@ -102,7 +84,6 @@ var TableView = /*#__PURE__*/function () {
102
84
  * @private
103
85
  * @type {Walkontable}
104
86
  */
105
-
106
87
  this._wt = void 0;
107
88
  /**
108
89
  * Main Walkontable instance.
@@ -110,7 +91,6 @@ var TableView = /*#__PURE__*/function () {
110
91
  * @private
111
92
  * @type {Walkontable}
112
93
  */
113
-
114
94
  this.activeWt = void 0;
115
95
  /**
116
96
  * The flag determines if the `adjustElementsSize` method call was made during
@@ -120,7 +100,6 @@ var TableView = /*#__PURE__*/function () {
120
100
  * @private
121
101
  * @type {boolean}
122
102
  */
123
-
124
103
  this.postponedAdjustElementsSize = false;
125
104
  privatePool.set(this, {
126
105
  /**
@@ -130,13 +109,11 @@ var TableView = /*#__PURE__*/function () {
130
109
  * @type {boolean}
131
110
  */
132
111
  selectionMouseDown: false,
133
-
134
112
  /**
135
113
  * @private
136
114
  * @type {boolean}
137
115
  */
138
116
  mouseDown: void 0,
139
-
140
117
  /**
141
118
  * Main <TABLE> element.
142
119
  *
@@ -144,14 +121,12 @@ var TableView = /*#__PURE__*/function () {
144
121
  * @type {HTMLTableElement}
145
122
  */
146
123
  table: void 0,
147
-
148
124
  /**
149
125
  * Cached width of the rootElement.
150
126
  *
151
127
  * @type {number}
152
128
  */
153
129
  lastWidth: 0,
154
-
155
130
  /**
156
131
  * Cached height of the rootElement.
157
132
  *
@@ -163,46 +138,42 @@ var TableView = /*#__PURE__*/function () {
163
138
  this.registerEvents();
164
139
  this.initializeWalkontable();
165
140
  }
141
+
166
142
  /**
167
143
  * Renders WalkontableUI.
168
144
  */
169
-
170
-
171
145
  _createClass(TableView, [{
172
146
  key: "render",
173
147
  value: function render() {
174
148
  if (!this.instance.isRenderSuspended()) {
175
149
  this.instance.runHooks('beforeRender', this.instance.forceFullRender);
176
-
177
150
  if (this.postponedAdjustElementsSize) {
178
151
  this.postponedAdjustElementsSize = false;
179
152
  this.adjustElementsSize(true);
180
153
  }
181
-
182
154
  this._wt.draw(!this.instance.forceFullRender);
183
-
184
155
  this.instance.runHooks('afterRender', this.instance.forceFullRender);
185
156
  this.instance.forceFullRender = false;
186
157
  this.instance.renderCall = false;
187
158
  }
188
159
  }
160
+
189
161
  /**
190
162
  * Adjust overlays elements size and master table size.
191
163
  *
192
164
  * @param {boolean} [force=false] When `true`, it adjust the DOM nodes sizes for all overlays.
193
165
  */
194
-
195
166
  }, {
196
167
  key: "adjustElementsSize",
197
168
  value: function adjustElementsSize() {
198
169
  var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
199
-
200
170
  if (this.instance.isRenderSuspended()) {
201
171
  this.postponedAdjustElementsSize = true;
202
172
  } else {
203
173
  this._wt.wtOverlays.adjustElementsSize(force);
204
174
  }
205
175
  }
176
+
206
177
  /**
207
178
  * Returns td object given coordinates.
208
179
  *
@@ -210,19 +181,17 @@ var TableView = /*#__PURE__*/function () {
210
181
  * @param {boolean} topmost Indicates whether the cell should be calculated from the topmost.
211
182
  * @returns {HTMLTableCellElement|null}
212
183
  */
213
-
214
184
  }, {
215
185
  key: "getCellAtCoords",
216
186
  value: function getCellAtCoords(coords, topmost) {
217
187
  var td = this._wt.getCell(coords, topmost);
218
-
219
188
  if (td < 0) {
220
189
  // there was an exit code (cell is out of bounds)
221
190
  return null;
222
191
  }
223
-
224
192
  return td;
225
193
  }
194
+
226
195
  /**
227
196
  * Scroll viewport to a cell.
228
197
  *
@@ -233,12 +202,12 @@ var TableView = /*#__PURE__*/function () {
233
202
  * @param {boolean} [snapToLeft] If `true`, viewport is scrolled to show the cell on the left side of the table.
234
203
  * @returns {boolean}
235
204
  */
236
-
237
205
  }, {
238
206
  key: "scrollViewport",
239
207
  value: function scrollViewport(coords, snapToTop, snapToRight, snapToBottom, snapToLeft) {
240
208
  return this._wt.scrollViewport(coords, snapToTop, snapToRight, snapToBottom, snapToLeft);
241
209
  }
210
+
242
211
  /**
243
212
  * Scroll viewport to a column.
244
213
  *
@@ -247,12 +216,12 @@ var TableView = /*#__PURE__*/function () {
247
216
  * @param {boolean} [snapToLeft] If `true`, viewport is scrolled to show the cell on the left side of the table.
248
217
  * @returns {boolean}
249
218
  */
250
-
251
219
  }, {
252
220
  key: "scrollViewportHorizontally",
253
221
  value: function scrollViewportHorizontally(column, snapToRight, snapToLeft) {
254
222
  return this._wt.scrollViewportHorizontally(column, snapToRight, snapToLeft);
255
223
  }
224
+
256
225
  /**
257
226
  * Scroll viewport to a row.
258
227
  *
@@ -261,27 +230,25 @@ var TableView = /*#__PURE__*/function () {
261
230
  * @param {boolean} [snapToBottom] If `true`, viewport is scrolled to show the cell on the bottom side of the table.
262
231
  * @returns {boolean}
263
232
  */
264
-
265
233
  }, {
266
234
  key: "scrollViewportVertically",
267
235
  value: function scrollViewportVertically(row, snapToTop, snapToBottom) {
268
236
  return this._wt.scrollViewportVertically(row, snapToTop, snapToBottom);
269
237
  }
238
+
270
239
  /**
271
240
  * Prepares DOMElements and adds correct className to the root element.
272
241
  *
273
242
  * @private
274
243
  */
275
-
276
244
  }, {
277
245
  key: "createElements",
278
246
  value: function createElements() {
279
247
  var priv = privatePool.get(this);
280
248
  var _this$instance = this.instance,
281
- rootElement = _this$instance.rootElement,
282
- rootDocument = _this$instance.rootDocument;
249
+ rootElement = _this$instance.rootElement,
250
+ rootDocument = _this$instance.rootDocument;
283
251
  var originalStyle = rootElement.getAttribute('style');
284
-
285
252
  if (originalStyle) {
286
253
  rootElement.setAttribute('data-originalstyle', originalStyle); // needed to retrieve original style in jsFiddle link generator in HT examples. may be removed in future versions
287
254
  }
@@ -289,11 +256,9 @@ var TableView = /*#__PURE__*/function () {
289
256
  addClass(rootElement, 'handsontable');
290
257
  priv.table = rootDocument.createElement('TABLE');
291
258
  addClass(priv.table, 'htCore');
292
-
293
259
  if (this.instance.getSettings().tableClassName) {
294
260
  addClass(priv.table, this.instance.getSettings().tableClassName);
295
261
  }
296
-
297
262
  this.THEAD = rootDocument.createElement('THEAD');
298
263
  priv.table.appendChild(this.THEAD);
299
264
  this.TBODY = rootDocument.createElement('TBODY');
@@ -301,26 +266,24 @@ var TableView = /*#__PURE__*/function () {
301
266
  this.instance.table = priv.table;
302
267
  this.instance.container.insertBefore(priv.table, this.instance.container.firstChild);
303
268
  }
269
+
304
270
  /**
305
271
  * Attaches necessary listeners.
306
272
  *
307
273
  * @private
308
274
  */
309
-
310
275
  }, {
311
276
  key: "registerEvents",
312
277
  value: function registerEvents() {
313
278
  var _this = this;
314
-
315
279
  var priv = privatePool.get(this);
316
280
  var _this$instance2 = this.instance,
317
- rootElement = _this$instance2.rootElement,
318
- rootDocument = _this$instance2.rootDocument,
319
- selection = _this$instance2.selection;
281
+ rootElement = _this$instance2.rootElement,
282
+ rootDocument = _this$instance2.rootDocument,
283
+ selection = _this$instance2.selection;
320
284
  var documentElement = rootDocument.documentElement;
321
285
  this.eventManager.addEventListener(rootElement, 'mousedown', function (event) {
322
286
  priv.selectionMouseDown = true;
323
-
324
287
  if (!_this.isTextSelectionAllowed(event.target)) {
325
288
  var rootWindow = _this.instance.rootWindow;
326
289
  clearTextSelection(rootWindow);
@@ -328,6 +291,7 @@ var TableView = /*#__PURE__*/function () {
328
291
  rootWindow.focus(); // make sure that window that contains HOT is active. Important when HOT is in iframe.
329
292
  }
330
293
  });
294
+
331
295
  this.eventManager.addEventListener(rootElement, 'mouseup', function () {
332
296
  priv.selectionMouseDown = false;
333
297
  });
@@ -337,7 +301,6 @@ var TableView = /*#__PURE__*/function () {
337
301
  if (_this.settings.fragmentSelection) {
338
302
  clearTextSelection(_this.instance.rootWindow);
339
303
  }
340
-
341
304
  event.preventDefault();
342
305
  }
343
306
  });
@@ -352,9 +315,7 @@ var TableView = /*#__PURE__*/function () {
352
315
  // is left mouse button
353
316
  selection.finish();
354
317
  }
355
-
356
318
  priv.mouseDown = false;
357
-
358
319
  if (isOutsideInput(rootDocument.activeElement) || !selection.isSelected() && !selection.isSelectedByAnyHeader() && !rootElement.contains(event.target) && !isRightClick(event)) {
359
320
  _this.instance.unlisten();
360
321
  }
@@ -369,7 +330,6 @@ var TableView = /*#__PURE__*/function () {
369
330
  if (selection.isInProgress()) {
370
331
  selection.finish();
371
332
  }
372
-
373
333
  priv.mouseDown = false;
374
334
  });
375
335
  this.eventManager.addEventListener(documentElement, 'mousedown', function (event) {
@@ -377,17 +337,14 @@ var TableView = /*#__PURE__*/function () {
377
337
  var eventX = event.x || event.clientX;
378
338
  var eventY = event.y || event.clientY;
379
339
  var next = event.target;
380
-
381
340
  if (priv.mouseDown || !rootElement || !_this.instance.view) {
382
341
  return; // it must have been started in a cell
383
- } // immediate click on "holder" means click on the right side of vertical scrollbar
384
-
342
+ }
385
343
 
344
+ // immediate click on "holder" means click on the right side of vertical scrollbar
386
345
  var holder = _this.instance.view._wt.wtTable.holder;
387
-
388
346
  if (next === holder) {
389
347
  var scrollbarWidth = getScrollbarWidth(rootDocument);
390
-
391
348
  if (rootDocument.elementFromPoint(eventX + scrollbarWidth, eventY) !== holder || rootDocument.elementFromPoint(eventX, eventY + scrollbarWidth) !== holder) {
392
349
  return;
393
350
  }
@@ -396,24 +353,21 @@ var TableView = /*#__PURE__*/function () {
396
353
  if (next === null) {
397
354
  if (event.isTargetWebComponent) {
398
355
  break;
399
- } // click on something that was a row but now is detached (possibly because your click triggered a rerender)
400
-
356
+ }
401
357
 
358
+ // click on something that was a row but now is detached (possibly because your click triggered a rerender)
402
359
  return;
403
360
  }
404
-
405
361
  if (next === rootElement) {
406
362
  // click inside container
407
363
  return;
408
364
  }
409
-
410
365
  next = next.parentNode;
411
366
  }
412
- } // function did not return until here, we have an outside click!
413
-
367
+ }
414
368
 
369
+ // function did not return until here, we have an outside click!
415
370
  var outsideClickDeselects = typeof _this.settings.outsideClickDeselects === 'function' ? _this.settings.outsideClickDeselects(originalTarget) : _this.settings.outsideClickDeselects;
416
-
417
371
  if (outsideClickDeselects) {
418
372
  _this.instance.deselectCell();
419
373
  } else {
@@ -423,30 +377,29 @@ var TableView = /*#__PURE__*/function () {
423
377
  this.eventManager.addEventListener(priv.table, 'selectstart', function (event) {
424
378
  if (_this.settings.fragmentSelection || isInput(event.target)) {
425
379
  return;
426
- } // https://github.com/handsontable/handsontable/issues/160
380
+ }
381
+ // https://github.com/handsontable/handsontable/issues/160
427
382
  // Prevent text from being selected when performing drag down.
428
-
429
-
430
383
  event.preventDefault();
431
384
  });
432
385
  }
386
+
433
387
  /**
434
388
  * Translate renderable cell coordinates to visual coordinates.
435
389
  *
436
390
  * @param {CellCoords} coords The cell coordinates.
437
391
  * @returns {CellCoords}
438
392
  */
439
-
440
393
  }, {
441
394
  key: "translateFromRenderableToVisualCoords",
442
395
  value: function translateFromRenderableToVisualCoords(_ref) {
443
396
  var _this$instance3;
444
-
445
397
  var row = _ref.row,
446
- col = _ref.col;
398
+ col = _ref.col;
447
399
  // TODO: To consider an idea to reusing the CellCoords instance instead creating new one.
448
400
  return (_this$instance3 = this.instance)._createCellCoords.apply(_this$instance3, _toConsumableArray(this.translateFromRenderableToVisualIndex(row, col)));
449
401
  }
402
+
450
403
  /**
451
404
  * Translate renderable row and column indexes to visual row and column indexes.
452
405
  *
@@ -454,7 +407,6 @@ var TableView = /*#__PURE__*/function () {
454
407
  * @param {number} renderableColumn Renderable columnIndex.
455
408
  * @returns {number[]}
456
409
  */
457
-
458
410
  }, {
459
411
  key: "translateFromRenderableToVisualIndex",
460
412
  value: function translateFromRenderableToVisualIndex(renderableRow, renderableColumn) {
@@ -462,17 +414,15 @@ var TableView = /*#__PURE__*/function () {
462
414
  // We perform translation for indexes (without headers).
463
415
  var visualRow = renderableRow >= 0 ? this.instance.rowIndexMapper.getVisualFromRenderableIndex(renderableRow) : renderableRow;
464
416
  var visualColumn = renderableColumn >= 0 ? this.instance.columnIndexMapper.getVisualFromRenderableIndex(renderableColumn) : renderableColumn;
465
-
466
417
  if (visualRow === null) {
467
418
  visualRow = renderableRow;
468
419
  }
469
-
470
420
  if (visualColumn === null) {
471
421
  visualColumn = renderableColumn;
472
422
  }
473
-
474
423
  return [visualRow, visualColumn];
475
424
  }
425
+
476
426
  /**
477
427
  * Returns the number of renderable indexes.
478
428
  *
@@ -482,42 +432,42 @@ var TableView = /*#__PURE__*/function () {
482
432
  *
483
433
  * @returns {number|*}
484
434
  */
485
-
486
435
  }, {
487
436
  key: "countRenderableIndexes",
488
437
  value: function countRenderableIndexes(indexMapper, maxElements) {
489
- var consideredElements = Math.min(indexMapper.getNotTrimmedIndexesLength(), maxElements); // Don't take hidden indexes into account. We are looking just for renderable indexes.
490
-
491
- var firstNotHiddenIndex = indexMapper.getNearestNotHiddenIndex(consideredElements - 1, -1); // There are no renderable indexes.
438
+ var consideredElements = Math.min(indexMapper.getNotTrimmedIndexesLength(), maxElements);
439
+ // Don't take hidden indexes into account. We are looking just for renderable indexes.
440
+ var firstNotHiddenIndex = indexMapper.getNearestNotHiddenIndex(consideredElements - 1, -1);
492
441
 
442
+ // There are no renderable indexes.
493
443
  if (firstNotHiddenIndex === null) {
494
444
  return 0;
495
445
  }
496
-
497
446
  return indexMapper.getRenderableFromVisualIndex(firstNotHiddenIndex) + 1;
498
447
  }
448
+
499
449
  /**
500
450
  * Returns the number of renderable columns.
501
451
  *
502
452
  * @returns {number}
503
453
  */
504
-
505
454
  }, {
506
455
  key: "countRenderableColumns",
507
456
  value: function countRenderableColumns() {
508
457
  return this.countRenderableIndexes(this.instance.columnIndexMapper, this.settings.maxCols);
509
458
  }
459
+
510
460
  /**
511
461
  * Returns the number of renderable rows.
512
462
  *
513
463
  * @returns {number}
514
464
  */
515
-
516
465
  }, {
517
466
  key: "countRenderableRows",
518
467
  value: function countRenderableRows() {
519
468
  return this.countRenderableIndexes(this.instance.rowIndexMapper, this.settings.maxRows);
520
469
  }
470
+
521
471
  /**
522
472
  * Returns number of not hidden row indexes counting from the passed starting index.
523
473
  * The counting direction can be controlled by `incrementBy` argument.
@@ -526,12 +476,12 @@ var TableView = /*#__PURE__*/function () {
526
476
  * @param {number} incrementBy If `-1` then counting is backwards or forward when `1`.
527
477
  * @returns {number}
528
478
  */
529
-
530
479
  }, {
531
480
  key: "countNotHiddenRowIndexes",
532
481
  value: function countNotHiddenRowIndexes(visualIndex, incrementBy) {
533
482
  return this.countNotHiddenIndexes(visualIndex, incrementBy, this.instance.rowIndexMapper, this.countRenderableRows());
534
483
  }
484
+
535
485
  /**
536
486
  * Returns number of not hidden column indexes counting from the passed starting index.
537
487
  * The counting direction can be controlled by `incrementBy` argument.
@@ -540,12 +490,12 @@ var TableView = /*#__PURE__*/function () {
540
490
  * @param {number} incrementBy If `-1` then counting is backwards or forward when `1`.
541
491
  * @returns {number}
542
492
  */
543
-
544
493
  }, {
545
494
  key: "countNotHiddenColumnIndexes",
546
495
  value: function countNotHiddenColumnIndexes(visualIndex, incrementBy) {
547
496
  return this.countNotHiddenIndexes(visualIndex, incrementBy, this.instance.columnIndexMapper, this.countRenderableColumns());
548
497
  }
498
+
549
499
  /**
550
500
  * Returns number of not hidden indexes counting from the passed starting index.
551
501
  * The counting direction can be controlled by `incrementBy` argument.
@@ -556,39 +506,33 @@ var TableView = /*#__PURE__*/function () {
556
506
  * @param {number} renderableIndexesCount Total count of renderable indexes for specific axis.
557
507
  * @returns {number}
558
508
  */
559
-
560
509
  }, {
561
510
  key: "countNotHiddenIndexes",
562
511
  value: function countNotHiddenIndexes(visualIndex, incrementBy, indexMapper, renderableIndexesCount) {
563
512
  if (isNaN(visualIndex) || visualIndex < 0) {
564
513
  return 0;
565
514
  }
566
-
567
515
  var firstVisibleIndex = indexMapper.getNearestNotHiddenIndex(visualIndex, incrementBy);
568
516
  var renderableIndex = indexMapper.getRenderableFromVisualIndex(firstVisibleIndex);
569
-
570
517
  if (!Number.isInteger(renderableIndex)) {
571
518
  return 0;
572
519
  }
573
-
574
520
  var notHiddenIndexes = 0;
575
-
576
521
  if (incrementBy < 0) {
577
522
  // Zero-based numbering for renderable indexes corresponds to a number of not hidden indexes.
578
523
  notHiddenIndexes = renderableIndex + 1;
579
524
  } else if (incrementBy > 0) {
580
525
  notHiddenIndexes = renderableIndexesCount - renderableIndex;
581
526
  }
582
-
583
527
  return notHiddenIndexes;
584
528
  }
529
+
585
530
  /**
586
531
  * The function returns the number of not hidden column indexes that fit between the first and
587
532
  * last fixed column in the left (or right in RTL mode) overlay.
588
533
  *
589
534
  * @returns {number}
590
535
  */
591
-
592
536
  }, {
593
537
  key: "countNotHiddenFixedColumnsStart",
594
538
  value: function countNotHiddenFixedColumnsStart() {
@@ -596,13 +540,13 @@ var TableView = /*#__PURE__*/function () {
596
540
  var visualFixedColumnsStart = Math.min(parseInt(this.settings.fixedColumnsStart, 10), countCols) - 1;
597
541
  return this.countNotHiddenColumnIndexes(visualFixedColumnsStart, -1);
598
542
  }
543
+
599
544
  /**
600
545
  * The function returns the number of not hidden row indexes that fit between the first and
601
546
  * last fixed row in the top overlay.
602
547
  *
603
548
  * @returns {number}
604
549
  */
605
-
606
550
  }, {
607
551
  key: "countNotHiddenFixedRowsTop",
608
552
  value: function countNotHiddenFixedRowsTop() {
@@ -610,13 +554,13 @@ var TableView = /*#__PURE__*/function () {
610
554
  var visualFixedRowsTop = Math.min(parseInt(this.settings.fixedRowsTop, 10), countRows) - 1;
611
555
  return this.countNotHiddenRowIndexes(visualFixedRowsTop, -1);
612
556
  }
557
+
613
558
  /**
614
559
  * The function returns the number of not hidden row indexes that fit between the first and
615
560
  * last fixed row in the bottom overlay.
616
561
  *
617
562
  * @returns {number}
618
563
  */
619
-
620
564
  }, {
621
565
  key: "countNotHiddenFixedRowsBottom",
622
566
  value: function countNotHiddenFixedRowsBottom() {
@@ -624,13 +568,13 @@ var TableView = /*#__PURE__*/function () {
624
568
  var visualFixedRowsBottom = Math.max(countRows - parseInt(this.settings.fixedRowsBottom, 10), 0);
625
569
  return this.countNotHiddenRowIndexes(visualFixedRowsBottom, 1);
626
570
  }
571
+
627
572
  /**
628
573
  * Checks if at least one cell than belongs to the main table is not covered by the top, left or
629
574
  * bottom overlay.
630
575
  *
631
576
  * @returns {boolean}
632
577
  */
633
-
634
578
  }, {
635
579
  key: "isMainTableNotFullyCoveredByOverlays",
636
580
  value: function isMainTableNotFullyCoveredByOverlays() {
@@ -638,17 +582,16 @@ var TableView = /*#__PURE__*/function () {
638
582
  var fixedAllColumns = this.countNotHiddenFixedColumnsStart();
639
583
  return this.instance.countRenderedRows() > fixedAllRows && this.instance.countRenderedCols() > fixedAllColumns;
640
584
  }
585
+
641
586
  /**
642
587
  * Defines default configuration and initializes WalkOnTable instance.
643
588
  *
644
589
  * @private
645
590
  */
646
-
647
591
  }, {
648
592
  key: "initializeWalkontable",
649
593
  value: function initializeWalkontable() {
650
594
  var _this2 = this;
651
-
652
595
  var priv = privatePool.get(this);
653
596
  var walkontableConfig = {
654
597
  rtlMode: this.instance.isRtl(),
@@ -668,7 +611,6 @@ var TableView = /*#__PURE__*/function () {
668
611
  },
669
612
  data: function data(renderableRow, renderableColumn) {
670
613
  var _this2$instance;
671
-
672
614
  return (_this2$instance = _this2.instance).getDataAtCell.apply(_this2$instance, _toConsumableArray(_this2.translateFromRenderableToVisualIndex(renderableRow, renderableColumn)));
673
615
  },
674
616
  totalRows: function totalRows() {
@@ -707,84 +649,65 @@ var TableView = /*#__PURE__*/function () {
707
649
  renderAllRows: this.settings.renderAllRows,
708
650
  rowHeaders: function rowHeaders() {
709
651
  var headerRenderers = [];
710
-
711
652
  if (_this2.instance.hasRowHeaders()) {
712
653
  headerRenderers.push(function (renderableRowIndex, TH) {
713
654
  // TODO: Some helper may be needed.
714
655
  // We perform translation for row indexes (without row headers).
715
656
  var visualRowIndex = renderableRowIndex >= 0 ? _this2.instance.rowIndexMapper.getVisualFromRenderableIndex(renderableRowIndex) : renderableRowIndex;
716
-
717
657
  _this2.appendRowHeader(visualRowIndex, TH);
718
658
  });
719
659
  }
720
-
721
660
  _this2.instance.runHooks('afterGetRowHeaderRenderers', headerRenderers);
722
-
723
661
  return headerRenderers;
724
662
  },
725
663
  columnHeaders: function columnHeaders() {
726
664
  var headerRenderers = [];
727
-
728
665
  if (_this2.instance.hasColHeaders()) {
729
666
  headerRenderers.push(function (renderedColumnIndex, TH) {
730
667
  // TODO: Some helper may be needed.
731
668
  // We perform translation for columns indexes (without column headers).
732
669
  var visualColumnsIndex = renderedColumnIndex >= 0 ? _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(renderedColumnIndex) : renderedColumnIndex;
733
-
734
670
  _this2.appendColHeader(visualColumnsIndex, TH);
735
671
  });
736
672
  }
737
-
738
673
  _this2.instance.runHooks('afterGetColumnHeaderRenderers', headerRenderers);
739
-
740
674
  return headerRenderers;
741
675
  },
742
676
  columnWidth: function columnWidth(renderedColumnIndex) {
743
- var visualIndex = _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(renderedColumnIndex); // It's not a bug that we can't find visual index for some handled by method indexes. The function is called also
677
+ var visualIndex = _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(renderedColumnIndex);
678
+
679
+ // It's not a bug that we can't find visual index for some handled by method indexes. The function is called also
744
680
  // for indexes that are not displayed (indexes that are beyond the grid's boundaries), i.e. when `fixedColumnsStart` > `startCols` (wrong config?) or
745
681
  // scrolling and dataset is empty (scroll should handle that?).
746
-
747
-
748
682
  return _this2.instance.getColWidth(visualIndex === null ? renderedColumnIndex : visualIndex);
749
683
  },
750
684
  rowHeight: function rowHeight(renderedRowIndex) {
751
685
  var visualIndex = _this2.instance.rowIndexMapper.getVisualFromRenderableIndex(renderedRowIndex);
752
-
753
686
  return _this2.instance.getRowHeight(visualIndex === null ? renderedRowIndex : visualIndex);
754
687
  },
755
688
  cellRenderer: function cellRenderer(renderedRowIndex, renderedColumnIndex, TD) {
756
689
  var _this2$translateFromR = _this2.translateFromRenderableToVisualIndex(renderedRowIndex, renderedColumnIndex),
757
- _this2$translateFromR2 = _slicedToArray(_this2$translateFromR, 2),
758
- visualRowIndex = _this2$translateFromR2[0],
759
- visualColumnIndex = _this2$translateFromR2[1]; // Coords may be modified. For example, by the `MergeCells` plugin. It should affect cell value and cell meta.
760
-
690
+ _this2$translateFromR2 = _slicedToArray(_this2$translateFromR, 2),
691
+ visualRowIndex = _this2$translateFromR2[0],
692
+ visualColumnIndex = _this2$translateFromR2[1];
761
693
 
694
+ // Coords may be modified. For example, by the `MergeCells` plugin. It should affect cell value and cell meta.
762
695
  var modifiedCellCoords = _this2.instance.runHooks('modifyGetCellCoords', visualRowIndex, visualColumnIndex);
763
-
764
696
  var visualRowToCheck = visualRowIndex;
765
697
  var visualColumnToCheck = visualColumnIndex;
766
-
767
698
  if (Array.isArray(modifiedCellCoords)) {
768
699
  var _modifiedCellCoords = _slicedToArray(modifiedCellCoords, 2);
769
-
770
700
  visualRowToCheck = _modifiedCellCoords[0];
771
701
  visualColumnToCheck = _modifiedCellCoords[1];
772
702
  }
773
-
774
703
  var cellProperties = _this2.instance.getCellMeta(visualRowToCheck, visualColumnToCheck);
775
-
776
704
  var prop = _this2.instance.colToProp(visualColumnToCheck);
777
-
778
705
  var value = _this2.instance.getDataAtRowProp(visualRowToCheck, prop);
779
-
780
706
  if (_this2.instance.hasHook('beforeValueRender')) {
781
707
  value = _this2.instance.runHooks('beforeValueRender', value, cellProperties);
782
708
  }
783
-
784
709
  _this2.instance.runHooks('beforeRenderer', TD, visualRowIndex, visualColumnIndex, prop, value, cellProperties);
785
-
786
710
  _this2.instance.getCellRenderer(cellProperties)(_this2.instance, TD, visualRowIndex, visualColumnIndex, prop, value, cellProperties);
787
-
788
711
  _this2.instance.runHooks('afterRenderer', TD, visualRowIndex, visualColumnIndex, prop, value, cellProperties);
789
712
  },
790
713
  selections: this.instance.selection.highlight,
@@ -795,29 +718,22 @@ var TableView = /*#__PURE__*/function () {
795
718
  if (!_this2.instance || _this2.instance.isDestroyed) {
796
719
  return;
797
720
  }
798
-
799
721
  _this2.instance.refreshDimensions();
800
722
  },
801
723
  onCellMouseDown: function onCellMouseDown(event, coords, TD, wt) {
802
724
  var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
803
-
804
725
  var controller = {
805
726
  row: false,
806
727
  column: false,
807
728
  cell: false
808
729
  };
809
-
810
730
  _this2.instance.listen();
811
-
812
731
  _this2.activeWt = wt;
813
732
  priv.mouseDown = true;
814
-
815
733
  _this2.instance.runHooks('beforeOnCellMouseDown', event, visualCoords, TD, controller);
816
-
817
734
  if (isImmediatePropagationStopped(event)) {
818
735
  return;
819
736
  }
820
-
821
737
  handleMouseEvent(event, {
822
738
  coords: visualCoords,
823
739
  selection: _this2.instance.selection,
@@ -826,62 +742,45 @@ var TableView = /*#__PURE__*/function () {
826
742
  return _this2.instance._createCellCoords(row, column);
827
743
  }
828
744
  });
829
-
830
745
  _this2.instance.runHooks('afterOnCellMouseDown', event, visualCoords, TD);
831
-
832
746
  _this2.activeWt = _this2._wt;
833
747
  },
834
748
  onCellContextMenu: function onCellContextMenu(event, coords, TD, wt) {
835
749
  var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
836
-
837
750
  _this2.activeWt = wt;
838
751
  priv.mouseDown = false;
839
-
840
752
  if (_this2.instance.selection.isInProgress()) {
841
753
  _this2.instance.selection.finish();
842
754
  }
843
-
844
755
  _this2.instance.runHooks('beforeOnCellContextMenu', event, visualCoords, TD);
845
-
846
756
  if (isImmediatePropagationStopped(event)) {
847
757
  return;
848
758
  }
849
-
850
759
  _this2.instance.runHooks('afterOnCellContextMenu', event, visualCoords, TD);
851
-
852
760
  _this2.activeWt = _this2._wt;
853
761
  },
854
762
  onCellMouseOut: function onCellMouseOut(event, coords, TD, wt) {
855
763
  var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
856
-
857
764
  _this2.activeWt = wt;
858
-
859
765
  _this2.instance.runHooks('beforeOnCellMouseOut', event, visualCoords, TD);
860
-
861
766
  if (isImmediatePropagationStopped(event)) {
862
767
  return;
863
768
  }
864
-
865
769
  _this2.instance.runHooks('afterOnCellMouseOut', event, visualCoords, TD);
866
-
867
770
  _this2.activeWt = _this2._wt;
868
771
  },
869
772
  onCellMouseOver: function onCellMouseOver(event, coords, TD, wt) {
870
773
  var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
871
-
872
774
  var controller = {
873
775
  row: false,
874
776
  column: false,
875
777
  cell: false
876
778
  };
877
779
  _this2.activeWt = wt;
878
-
879
780
  _this2.instance.runHooks('beforeOnCellMouseOver', event, visualCoords, TD, controller);
880
-
881
781
  if (isImmediatePropagationStopped(event)) {
882
782
  return;
883
783
  }
884
-
885
784
  if (priv.mouseDown) {
886
785
  handleMouseEvent(event, {
887
786
  coords: visualCoords,
@@ -892,38 +791,30 @@ var TableView = /*#__PURE__*/function () {
892
791
  }
893
792
  });
894
793
  }
895
-
896
794
  _this2.instance.runHooks('afterOnCellMouseOver', event, visualCoords, TD);
897
-
898
795
  _this2.activeWt = _this2._wt;
899
796
  },
900
797
  onCellMouseUp: function onCellMouseUp(event, coords, TD, wt) {
901
798
  var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
902
-
903
799
  _this2.activeWt = wt;
800
+ _this2.instance.runHooks('beforeOnCellMouseUp', event, visualCoords, TD);
904
801
 
905
- _this2.instance.runHooks('beforeOnCellMouseUp', event, visualCoords, TD); // TODO: The second condition check is a workaround. Callback corresponding the method `updateSettings`
802
+ // TODO: The second condition check is a workaround. Callback corresponding the method `updateSettings`
906
803
  // disable plugin and enable it again. Disabling plugin closes the menu. Thus, calling the
907
804
  // `updateSettings` in a body of any callback executed right after some context-menu action
908
805
  // breaks the table (#7231).
909
-
910
-
911
806
  if (isImmediatePropagationStopped(event) || _this2.instance.isDestroyed) {
912
807
  return;
913
808
  }
914
-
915
809
  _this2.instance.runHooks('afterOnCellMouseUp', event, visualCoords, TD);
916
-
917
810
  _this2.activeWt = _this2._wt;
918
811
  },
919
812
  onCellCornerMouseDown: function onCellCornerMouseDown(event) {
920
813
  event.preventDefault();
921
-
922
814
  _this2.instance.runHooks('afterOnCellCornerMouseDown', event);
923
815
  },
924
816
  onCellCornerDblClick: function onCellCornerDblClick(event) {
925
817
  event.preventDefault();
926
-
927
818
  _this2.instance.runHooks('afterOnCellCornerDblClick', event);
928
819
  },
929
820
  beforeDraw: function beforeDraw(force, skipRender) {
@@ -944,31 +835,23 @@ var TableView = /*#__PURE__*/function () {
944
835
  onBeforeHighlightingRowHeader: function onBeforeHighlightingRowHeader(renderableRow, headerLevel, highlightMeta) {
945
836
  var rowMapper = _this2.instance.rowIndexMapper;
946
837
  var visualRow = rowMapper.getVisualFromRenderableIndex(renderableRow);
947
-
948
838
  var newVisualRow = _this2.instance.runHooks('beforeHighlightingRowHeader', visualRow, headerLevel, highlightMeta);
949
-
950
839
  return rowMapper.getRenderableFromVisualIndex(rowMapper.getNearestNotHiddenIndex(newVisualRow, 1));
951
840
  },
952
841
  onBeforeHighlightingColumnHeader: function onBeforeHighlightingColumnHeader(renderableColumn, headerLevel, highlightMeta) {
953
842
  var columnMapper = _this2.instance.columnIndexMapper;
954
843
  var visualColumn = columnMapper.getVisualFromRenderableIndex(renderableColumn);
955
-
956
844
  var newVisualColumn = _this2.instance.runHooks('beforeHighlightingColumnHeader', visualColumn, headerLevel, highlightMeta);
957
-
958
845
  return columnMapper.getRenderableFromVisualIndex(columnMapper.getNearestNotHiddenIndex(newVisualColumn, 1));
959
846
  },
960
847
  onAfterDrawSelection: function onAfterDrawSelection(currentRow, currentColumn, layerLevel) {
961
848
  var cornersOfSelection;
962
-
963
849
  var _this2$translateFromR3 = _this2.translateFromRenderableToVisualIndex(currentRow, currentColumn),
964
- _this2$translateFromR4 = _slicedToArray(_this2$translateFromR3, 2),
965
- visualRowIndex = _this2$translateFromR4[0],
966
- visualColumnIndex = _this2$translateFromR4[1];
967
-
850
+ _this2$translateFromR4 = _slicedToArray(_this2$translateFromR3, 2),
851
+ visualRowIndex = _this2$translateFromR4[0],
852
+ visualColumnIndex = _this2$translateFromR4[1];
968
853
  var selectedRange = _this2.instance.selection.getSelectedRange();
969
-
970
854
  var selectionRangeSize = selectedRange.size();
971
-
972
855
  if (selectionRangeSize > 0) {
973
856
  // Selection layers are stored from the "oldest" to the "newest". We should calculate the offset.
974
857
  // Please look at the `SelectedRange` class and it's method for getting selection's layer for more information.
@@ -976,16 +859,14 @@ var TableView = /*#__PURE__*/function () {
976
859
  var selectionForLayer = selectedRange.peekByIndex(selectionOffset);
977
860
  cornersOfSelection = [selectionForLayer.from.row, selectionForLayer.from.col, selectionForLayer.to.row, selectionForLayer.to.col];
978
861
  }
979
-
980
862
  return _this2.instance.runHooks('afterDrawSelection', visualRowIndex, visualColumnIndex, cornersOfSelection, layerLevel);
981
863
  },
982
864
  onBeforeDrawBorders: function onBeforeDrawBorders(corners, borderClassName) {
983
865
  var _corners = _slicedToArray(corners, 4),
984
- startRenderableRow = _corners[0],
985
- startRenderableColumn = _corners[1],
986
- endRenderableRow = _corners[2],
987
- endRenderableColumn = _corners[3];
988
-
866
+ startRenderableRow = _corners[0],
867
+ startRenderableColumn = _corners[1],
868
+ endRenderableRow = _corners[2],
869
+ endRenderableColumn = _corners[3];
989
870
  var visualCorners = [_this2.instance.rowIndexMapper.getVisualFromRenderableIndex(startRenderableRow), _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(startRenderableColumn), _this2.instance.rowIndexMapper.getVisualFromRenderableIndex(endRenderableRow), _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(endRenderableColumn)];
990
871
  return _this2.instance.runHooks('beforeDrawBorders', visualCorners, borderClassName);
991
872
  },
@@ -997,7 +878,6 @@ var TableView = /*#__PURE__*/function () {
997
878
  },
998
879
  onBeforeStretchingColumnWidth: function onBeforeStretchingColumnWidth(stretchedWidth, renderedColumnIndex) {
999
880
  var visualColumnIndex = _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(renderedColumnIndex);
1000
-
1001
881
  return _this2.instance.runHooks('beforeStretchingColumnWidth', stretchedWidth, visualColumnIndex);
1002
882
  },
1003
883
  onModifyRowHeaderWidth: function onModifyRowHeaderWidth(rowHeaderWidth) {
@@ -1005,37 +885,32 @@ var TableView = /*#__PURE__*/function () {
1005
885
  },
1006
886
  onModifyGetCellCoords: function onModifyGetCellCoords(renderableRowIndex, renderableColumnIndex, topmost) {
1007
887
  var rowMapper = _this2.instance.rowIndexMapper;
1008
- var columnMapper = _this2.instance.columnIndexMapper; // Callback handle also headers. We shouldn't translate them.
888
+ var columnMapper = _this2.instance.columnIndexMapper;
1009
889
 
890
+ // Callback handle also headers. We shouldn't translate them.
1010
891
  var visualColumnIndex = renderableColumnIndex >= 0 ? columnMapper.getVisualFromRenderableIndex(renderableColumnIndex) : renderableColumnIndex;
1011
892
  var visualRowIndex = renderableRowIndex >= 0 ? rowMapper.getVisualFromRenderableIndex(renderableRowIndex) : renderableRowIndex;
1012
-
1013
893
  var visualIndexes = _this2.instance.runHooks('modifyGetCellCoords', visualRowIndex, visualColumnIndex, topmost);
1014
-
1015
894
  if (Array.isArray(visualIndexes)) {
1016
895
  var _visualIndexes = _slicedToArray(visualIndexes, 4),
1017
- visualRowFrom = _visualIndexes[0],
1018
- visualColumnFrom = _visualIndexes[1],
1019
- visualRowTo = _visualIndexes[2],
1020
- visualColumnTo = _visualIndexes[3]; // Result of the hook is handled by the Walkontable (renderable indexes).
1021
-
896
+ visualRowFrom = _visualIndexes[0],
897
+ visualColumnFrom = _visualIndexes[1],
898
+ visualRowTo = _visualIndexes[2],
899
+ visualColumnTo = _visualIndexes[3];
1022
900
 
901
+ // Result of the hook is handled by the Walkontable (renderable indexes).
1023
902
  return [visualRowFrom >= 0 ? rowMapper.getRenderableFromVisualIndex(rowMapper.getNearestNotHiddenIndex(visualRowFrom, 1)) : visualRowFrom, visualColumnFrom >= 0 ? columnMapper.getRenderableFromVisualIndex(columnMapper.getNearestNotHiddenIndex(visualColumnFrom, 1)) : visualColumnFrom, visualRowTo >= 0 ? rowMapper.getRenderableFromVisualIndex(rowMapper.getNearestNotHiddenIndex(visualRowTo, -1)) : visualRowTo, visualColumnTo >= 0 ? columnMapper.getRenderableFromVisualIndex(columnMapper.getNearestNotHiddenIndex(visualColumnTo, -1)) : visualColumnTo];
1024
903
  }
1025
904
  },
1026
905
  viewportRowCalculatorOverride: function viewportRowCalculatorOverride(calc) {
1027
906
  var viewportOffset = _this2.settings.viewportRowRenderingOffset;
1028
-
1029
907
  if (viewportOffset === 'auto' && _this2.settings.fixedRowsTop) {
1030
908
  viewportOffset = 10;
1031
909
  }
1032
-
1033
910
  if (viewportOffset > 0 || viewportOffset === 'auto') {
1034
911
  var renderableRows = _this2.countRenderableRows();
1035
-
1036
912
  var firstRenderedRow = calc.startRow;
1037
913
  var lastRenderedRow = calc.endRow;
1038
-
1039
914
  if (typeof viewportOffset === 'number') {
1040
915
  calc.startRow = Math.max(firstRenderedRow - viewportOffset, 0);
1041
916
  calc.endRow = Math.min(lastRenderedRow + viewportOffset, renderableRows - 1);
@@ -1045,34 +920,27 @@ var TableView = /*#__PURE__*/function () {
1045
920
  calc.endRow = Math.min(lastRenderedRow + offset, renderableRows - 1);
1046
921
  }
1047
922
  }
1048
-
1049
923
  _this2.instance.runHooks('afterViewportRowCalculatorOverride', calc);
1050
924
  },
1051
925
  viewportColumnCalculatorOverride: function viewportColumnCalculatorOverride(calc) {
1052
926
  var viewportOffset = _this2.settings.viewportColumnRenderingOffset;
1053
-
1054
927
  if (viewportOffset === 'auto' && _this2.settings.fixedColumnsStart) {
1055
928
  viewportOffset = 10;
1056
929
  }
1057
-
1058
930
  if (viewportOffset > 0 || viewportOffset === 'auto') {
1059
931
  var renderableColumns = _this2.countRenderableColumns();
1060
-
1061
932
  var firstRenderedColumn = calc.startColumn;
1062
933
  var lastRenderedColumn = calc.endColumn;
1063
-
1064
934
  if (typeof viewportOffset === 'number') {
1065
935
  calc.startColumn = Math.max(firstRenderedColumn - viewportOffset, 0);
1066
936
  calc.endColumn = Math.min(lastRenderedColumn + viewportOffset, renderableColumns - 1);
1067
937
  }
1068
-
1069
938
  if (viewportOffset === 'auto') {
1070
939
  var offset = Math.ceil(lastRenderedColumn / renderableColumns * 6);
1071
940
  calc.startColumn = Math.max(firstRenderedColumn - offset, 0);
1072
941
  calc.endColumn = Math.min(lastRenderedColumn + offset, renderableColumns - 1);
1073
942
  }
1074
943
  }
1075
-
1076
944
  _this2.instance.runHooks('afterViewportColumnCalculatorOverride', calc);
1077
945
  },
1078
946
  rowHeaderWidth: function rowHeaderWidth() {
@@ -1080,19 +948,17 @@ var TableView = /*#__PURE__*/function () {
1080
948
  },
1081
949
  columnHeaderHeight: function columnHeaderHeight() {
1082
950
  var columnHeaderHeight = _this2.instance.runHooks('modifyColumnHeaderHeight');
1083
-
1084
951
  return _this2.settings.columnHeaderHeight || columnHeaderHeight;
1085
952
  }
1086
953
  };
1087
954
  this.instance.runHooks('beforeInitWalkontable', walkontableConfig);
1088
955
  this._wt = new Walkontable(walkontableConfig);
1089
956
  this.activeWt = this._wt;
1090
- var spreader = this._wt.wtTable.spreader; // We have to cache width and height after Walkontable initialization.
1091
-
957
+ var spreader = this._wt.wtTable.spreader;
958
+ // We have to cache width and height after Walkontable initialization.
1092
959
  var _this$instance$rootEl = this.instance.rootElement.getBoundingClientRect(),
1093
- width = _this$instance$rootEl.width,
1094
- height = _this$instance$rootEl.height;
1095
-
960
+ width = _this$instance$rootEl.width,
961
+ height = _this$instance$rootEl.height;
1096
962
  this.setLastSize(width, height);
1097
963
  this.eventManager.addEventListener(spreader, 'mousedown', function (event) {
1098
964
  // right mouse button exactly on spreader means right click on the right hand side of vertical scrollbar
@@ -1110,12 +976,12 @@ var TableView = /*#__PURE__*/function () {
1110
976
  if (_this2.settings.observeDOMVisibility) {
1111
977
  if (_this2._wt.drawInterrupted) {
1112
978
  _this2.instance.forceFullRender = true;
1113
-
1114
979
  _this2.render();
1115
980
  }
1116
981
  }
1117
982
  });
1118
983
  }
984
+
1119
985
  /**
1120
986
  * Checks if it's possible to create text selection in element.
1121
987
  *
@@ -1123,69 +989,63 @@ var TableView = /*#__PURE__*/function () {
1123
989
  * @param {HTMLElement} el The element to check.
1124
990
  * @returns {boolean}
1125
991
  */
1126
-
1127
992
  }, {
1128
993
  key: "isTextSelectionAllowed",
1129
994
  value: function isTextSelectionAllowed(el) {
1130
995
  if (isInput(el)) {
1131
996
  return true;
1132
997
  }
1133
-
1134
998
  var isChildOfTableBody = isChildOf(el, this.instance.view._wt.wtTable.spreader);
1135
-
1136
999
  if (this.settings.fragmentSelection === true && isChildOfTableBody) {
1137
1000
  return true;
1138
1001
  }
1139
-
1140
1002
  if (this.settings.fragmentSelection === 'cell' && this.isSelectedOnlyCell() && isChildOfTableBody) {
1141
1003
  return true;
1142
1004
  }
1143
-
1144
1005
  if (!this.settings.fragmentSelection && this.isCellEdited() && this.isSelectedOnlyCell()) {
1145
1006
  return true;
1146
1007
  }
1147
-
1148
1008
  return false;
1149
1009
  }
1010
+
1150
1011
  /**
1151
1012
  * Checks if user's been called mousedown.
1152
1013
  *
1153
1014
  * @private
1154
1015
  * @returns {boolean}
1155
1016
  */
1156
-
1157
1017
  }, {
1158
1018
  key: "isMouseDown",
1159
1019
  value: function isMouseDown() {
1160
1020
  return privatePool.get(this).mouseDown;
1161
1021
  }
1022
+
1162
1023
  /**
1163
1024
  * Check if selected only one cell.
1164
1025
  *
1165
1026
  * @private
1166
1027
  * @returns {boolean}
1167
1028
  */
1168
-
1169
1029
  }, {
1170
1030
  key: "isSelectedOnlyCell",
1171
1031
  value: function isSelectedOnlyCell() {
1172
1032
  var _this$instance$getSel, _this$instance$getSel2;
1173
-
1174
1033
  return (_this$instance$getSel = (_this$instance$getSel2 = this.instance.getSelectedRangeLast()) === null || _this$instance$getSel2 === void 0 ? void 0 : _this$instance$getSel2.isSingle()) !== null && _this$instance$getSel !== void 0 ? _this$instance$getSel : false;
1175
1034
  }
1035
+
1176
1036
  /**
1177
1037
  * Checks if active cell is editing.
1178
1038
  *
1179
1039
  * @private
1180
1040
  * @returns {boolean}
1181
1041
  */
1182
-
1183
1042
  }, {
1184
1043
  key: "isCellEdited",
1185
1044
  value: function isCellEdited() {
1186
1045
  var activeEditor = this.instance.getActiveEditor();
1187
1046
  return activeEditor && activeEditor.isOpened();
1188
1047
  }
1048
+
1189
1049
  /**
1190
1050
  * `beforeDraw` callback.
1191
1051
  *
@@ -1195,7 +1055,6 @@ var TableView = /*#__PURE__*/function () {
1195
1055
  * @param {object} skipRender Object with `skipRender` property, if it is set to `true ` the next rendering
1196
1056
  * cycle will be skipped.
1197
1057
  */
1198
-
1199
1058
  }, {
1200
1059
  key: "beforeRender",
1201
1060
  value: function beforeRender(force, skipRender) {
@@ -1204,6 +1063,7 @@ var TableView = /*#__PURE__*/function () {
1204
1063
  this.instance.runHooks('beforeViewRender', this.instance.forceFullRender, skipRender);
1205
1064
  }
1206
1065
  }
1066
+
1207
1067
  /**
1208
1068
  * `afterRender` callback.
1209
1069
  *
@@ -1211,7 +1071,6 @@ var TableView = /*#__PURE__*/function () {
1211
1071
  * @param {boolean} force If `true` rendering was triggered by a change of settings or data or `false` if
1212
1072
  * rendering was triggered by scrolling or moving selection.
1213
1073
  */
1214
-
1215
1074
  }, {
1216
1075
  key: "afterRender",
1217
1076
  value: function afterRender(force) {
@@ -1220,6 +1079,7 @@ var TableView = /*#__PURE__*/function () {
1220
1079
  this.instance.runHooks('afterViewRender', this.instance.forceFullRender);
1221
1080
  }
1222
1081
  }
1082
+
1223
1083
  /**
1224
1084
  * Append row header to a TH element.
1225
1085
  *
@@ -1227,24 +1087,21 @@ var TableView = /*#__PURE__*/function () {
1227
1087
  * @param {number} visualRowIndex The visual row index.
1228
1088
  * @param {HTMLTableHeaderCellElement} TH The table header element.
1229
1089
  */
1230
-
1231
1090
  }, {
1232
1091
  key: "appendRowHeader",
1233
1092
  value: function appendRowHeader(visualRowIndex, TH) {
1234
1093
  if (TH.firstChild) {
1235
1094
  var container = TH.firstChild;
1236
-
1237
1095
  if (!hasClass(container, 'relative')) {
1238
1096
  empty(TH);
1239
1097
  this.appendRowHeader(visualRowIndex, TH);
1240
1098
  return;
1241
1099
  }
1242
-
1243
1100
  this.updateCellHeader(container.querySelector('.rowHeader'), visualRowIndex, this.instance.getRowHeader);
1244
1101
  } else {
1245
1102
  var _this$instance4 = this.instance,
1246
- rootDocument = _this$instance4.rootDocument,
1247
- getRowHeader = _this$instance4.getRowHeader;
1103
+ rootDocument = _this$instance4.rootDocument,
1104
+ getRowHeader = _this$instance4.getRowHeader;
1248
1105
  var div = rootDocument.createElement('div');
1249
1106
  var span = rootDocument.createElement('span');
1250
1107
  div.className = 'relative';
@@ -1253,28 +1110,31 @@ var TableView = /*#__PURE__*/function () {
1253
1110
  div.appendChild(span);
1254
1111
  TH.appendChild(div);
1255
1112
  }
1256
-
1257
1113
  this.instance.runHooks('afterGetRowHeader', visualRowIndex, TH);
1258
1114
  }
1115
+
1259
1116
  /**
1260
1117
  * Append column header to a TH element.
1261
1118
  *
1262
1119
  * @private
1263
1120
  * @param {number} visualColumnIndex Visual column index.
1264
- * @param {HTMLTableHeaderCellElement} TH The table header element.
1121
+ * @param {HTMLTableCellElement} TH The table header element.
1122
+ * @param {Function} label The function that returns the header label.
1123
+ * @param {number} [headerLevel=0] The index of header level counting from the top (positive
1124
+ * values counting from 0 to N).
1265
1125
  */
1266
-
1267
1126
  }, {
1268
1127
  key: "appendColHeader",
1269
1128
  value: function appendColHeader(visualColumnIndex, TH) {
1129
+ var label = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.instance.getColHeader;
1130
+ var headerLevel = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
1270
1131
  if (TH.firstChild) {
1271
1132
  var container = TH.firstChild;
1272
-
1273
1133
  if (hasClass(container, 'relative')) {
1274
- this.updateCellHeader(container.querySelector('.colHeader'), visualColumnIndex, this.instance.getColHeader);
1134
+ this.updateCellHeader(container.querySelector('.colHeader'), visualColumnIndex, label);
1275
1135
  } else {
1276
1136
  empty(TH);
1277
- this.appendColHeader(visualColumnIndex, TH);
1137
+ this.appendColHeader(visualColumnIndex, TH, headerLevel);
1278
1138
  }
1279
1139
  } else {
1280
1140
  var rootDocument = this.instance.rootDocument;
@@ -1282,13 +1142,13 @@ var TableView = /*#__PURE__*/function () {
1282
1142
  var span = rootDocument.createElement('span');
1283
1143
  div.className = 'relative';
1284
1144
  span.className = 'colHeader';
1285
- this.updateCellHeader(span, visualColumnIndex, this.instance.getColHeader);
1145
+ this.updateCellHeader(span, visualColumnIndex, label);
1286
1146
  div.appendChild(span);
1287
1147
  TH.appendChild(div);
1288
1148
  }
1289
-
1290
- this.instance.runHooks('afterGetColHeader', visualColumnIndex, TH);
1149
+ this.instance.runHooks('afterGetColHeader', visualColumnIndex, TH, headerLevel);
1291
1150
  }
1151
+
1292
1152
  /**
1293
1153
  * Updates header cell content.
1294
1154
  *
@@ -1297,15 +1157,13 @@ var TableView = /*#__PURE__*/function () {
1297
1157
  * @param {number} index Row index or column index.
1298
1158
  * @param {Function} content Function which should be returns content for this cell.
1299
1159
  */
1300
-
1301
1160
  }, {
1302
1161
  key: "updateCellHeader",
1303
1162
  value: function updateCellHeader(element, index, content) {
1304
1163
  var renderedIndex = index;
1164
+ var parentOverlay = this._wt.wtOverlays.getParentOverlay(element) || this._wt;
1305
1165
 
1306
- var parentOverlay = this._wt.wtOverlays.getParentOverlay(element) || this._wt; // prevent wrong calculations from SampleGenerator
1307
-
1308
-
1166
+ // prevent wrong calculations from SampleGenerator
1309
1167
  if (element.parentNode) {
1310
1168
  if (hasClass(element, 'colHeader')) {
1311
1169
  renderedIndex = parentOverlay.wtTable.columnFilter.sourceToRendered(index);
@@ -1313,7 +1171,6 @@ var TableView = /*#__PURE__*/function () {
1313
1171
  renderedIndex = parentOverlay.wtTable.rowFilter.sourceToRendered(index);
1314
1172
  }
1315
1173
  }
1316
-
1317
1174
  if (renderedIndex > -1) {
1318
1175
  fastInnerHTML(element, content(index));
1319
1176
  } else {
@@ -1322,6 +1179,7 @@ var TableView = /*#__PURE__*/function () {
1322
1179
  addClass(element, 'cornerHeader');
1323
1180
  }
1324
1181
  }
1182
+
1325
1183
  /**
1326
1184
  * Given a element's left (or right in RTL mode) position relative to the viewport, returns maximum
1327
1185
  * element width until the right (or left) edge of the viewport (before scrollbar).
@@ -1330,15 +1188,14 @@ var TableView = /*#__PURE__*/function () {
1330
1188
  * @param {number} inlineOffset The left (or right in RTL mode) offset.
1331
1189
  * @returns {number}
1332
1190
  */
1333
-
1334
1191
  }, {
1335
1192
  key: "maximumVisibleElementWidth",
1336
1193
  value: function maximumVisibleElementWidth(inlineOffset) {
1337
1194
  var workspaceWidth = this._wt.wtViewport.getWorkspaceWidth();
1338
-
1339
1195
  var maxWidth = workspaceWidth - inlineOffset;
1340
1196
  return maxWidth > 0 ? maxWidth : 0;
1341
1197
  }
1198
+
1342
1199
  /**
1343
1200
  * Given a element's top position relative to the viewport, returns maximum element height until the bottom
1344
1201
  * edge of the viewport (before scrollbar).
@@ -1347,22 +1204,20 @@ var TableView = /*#__PURE__*/function () {
1347
1204
  * @param {number} topOffset The top offset.
1348
1205
  * @returns {number}
1349
1206
  */
1350
-
1351
1207
  }, {
1352
1208
  key: "maximumVisibleElementHeight",
1353
1209
  value: function maximumVisibleElementHeight(topOffset) {
1354
1210
  var workspaceHeight = this._wt.wtViewport.getWorkspaceHeight();
1355
-
1356
1211
  var maxHeight = workspaceHeight - topOffset;
1357
1212
  return maxHeight > 0 ? maxHeight : 0;
1358
1213
  }
1214
+
1359
1215
  /**
1360
1216
  * Sets new dimensions of the container.
1361
1217
  *
1362
1218
  * @param {number} width The table width.
1363
1219
  * @param {number} height The table height.
1364
1220
  */
1365
-
1366
1221
  }, {
1367
1222
  key: "setLastSize",
1368
1223
  value: function setLastSize(width, height) {
@@ -1371,12 +1226,12 @@ var TableView = /*#__PURE__*/function () {
1371
1226
  priv.lastWidth = _ref2[0];
1372
1227
  priv.lastHeight = _ref2[1];
1373
1228
  }
1229
+
1374
1230
  /**
1375
1231
  * Returns cached dimensions.
1376
1232
  *
1377
1233
  * @returns {object}
1378
1234
  */
1379
-
1380
1235
  }, {
1381
1236
  key: "getLastSize",
1382
1237
  value: function getLastSize() {
@@ -1386,66 +1241,63 @@ var TableView = /*#__PURE__*/function () {
1386
1241
  height: priv.lastHeight
1387
1242
  };
1388
1243
  }
1244
+
1389
1245
  /**
1390
1246
  * Returns the first fully visible row in the table viewport.
1391
1247
  *
1392
1248
  * @returns {number}
1393
1249
  */
1394
-
1395
1250
  }, {
1396
1251
  key: "getFirstFullyVisibleRow",
1397
1252
  value: function getFirstFullyVisibleRow() {
1398
1253
  return this.instance.rowIndexMapper.getVisualFromRenderableIndex(this.instance.view._wt.wtScroll.getFirstVisibleRow());
1399
1254
  }
1255
+
1400
1256
  /**
1401
1257
  * Returns the last fully visible row in the table viewport.
1402
1258
  *
1403
1259
  * @returns {number}
1404
1260
  */
1405
-
1406
1261
  }, {
1407
1262
  key: "getLastFullyVisibleRow",
1408
1263
  value: function getLastFullyVisibleRow() {
1409
1264
  return this.instance.rowIndexMapper.getVisualFromRenderableIndex(this.instance.view._wt.wtScroll.getLastVisibleRow());
1410
1265
  }
1266
+
1411
1267
  /**
1412
1268
  * Returns the first fully visible column in the table viewport.
1413
1269
  *
1414
1270
  * @returns {number}
1415
1271
  */
1416
-
1417
1272
  }, {
1418
1273
  key: "getFirstFullyVisibleColumn",
1419
1274
  value: function getFirstFullyVisibleColumn() {
1420
1275
  return this.instance.columnIndexMapper.getVisualFromRenderableIndex(this.instance.view._wt.wtScroll.getFirstVisibleColumn());
1421
1276
  }
1277
+
1422
1278
  /**
1423
1279
  * Returns the last fully visible column in the table viewport.
1424
1280
  *
1425
1281
  * @returns {number}
1426
1282
  */
1427
-
1428
1283
  }, {
1429
1284
  key: "getLastFullyVisibleColumn",
1430
1285
  value: function getLastFullyVisibleColumn() {
1431
1286
  return this.instance.columnIndexMapper.getVisualFromRenderableIndex(this.instance.view._wt.wtScroll.getLastVisibleColumn());
1432
1287
  }
1288
+
1433
1289
  /**
1434
1290
  * Destroys internal WalkOnTable's instance. Detaches all of the bonded listeners.
1435
1291
  *
1436
1292
  * @private
1437
1293
  */
1438
-
1439
1294
  }, {
1440
1295
  key: "destroy",
1441
1296
  value: function destroy() {
1442
1297
  this._wt.destroy();
1443
-
1444
1298
  this.eventManager.destroy();
1445
1299
  }
1446
1300
  }]);
1447
-
1448
1301
  return TableView;
1449
1302
  }();
1450
-
1451
1303
  export default TableView;