handsontable 12.1.3 → 12.3.0-next-bb1a7c2-20221208

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 (948) 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 +44 -154
  8. package/3rdparty/walkontable/src/border.mjs +41 -136
  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 +36 -77
  13. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +36 -70
  14. package/3rdparty/walkontable/src/calculator/viewportRows.js +30 -49
  15. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +30 -42
  16. package/3rdparty/walkontable/src/cell/coords.d.ts +1 -1
  17. package/3rdparty/walkontable/src/cell/coords.js +73 -65
  18. package/3rdparty/walkontable/src/cell/coords.mjs +73 -60
  19. package/3rdparty/walkontable/src/cell/range.d.ts +19 -16
  20. package/3rdparty/walkontable/src/cell/range.js +251 -231
  21. package/3rdparty/walkontable/src/cell/range.mjs +251 -222
  22. package/3rdparty/walkontable/src/core/_base.js +30 -74
  23. package/3rdparty/walkontable/src/core/_base.mjs +30 -67
  24. package/3rdparty/walkontable/src/core/clone.js +11 -44
  25. package/3rdparty/walkontable/src/core/clone.mjs +11 -32
  26. package/3rdparty/walkontable/src/core/core.js +8 -56
  27. package/3rdparty/walkontable/src/core/core.mjs +8 -38
  28. package/3rdparty/walkontable/src/event.js +41 -79
  29. package/3rdparty/walkontable/src/event.mjs +41 -66
  30. package/3rdparty/walkontable/src/facade/core.js +14 -16
  31. package/3rdparty/walkontable/src/facade/core.mjs +14 -13
  32. package/3rdparty/walkontable/src/filter/column.js +22 -17
  33. package/3rdparty/walkontable/src/filter/column.mjs +22 -16
  34. package/3rdparty/walkontable/src/filter/row.js +22 -17
  35. package/3rdparty/walkontable/src/filter/row.mjs +22 -16
  36. package/3rdparty/walkontable/src/index.js +0 -31
  37. package/3rdparty/walkontable/src/overlay/_base.js +38 -69
  38. package/3rdparty/walkontable/src/overlay/_base.mjs +38 -61
  39. package/3rdparty/walkontable/src/overlay/bottom.js +38 -103
  40. package/3rdparty/walkontable/src/overlay/bottom.mjs +38 -88
  41. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +12 -52
  42. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +12 -37
  43. package/3rdparty/walkontable/src/overlay/constants.js +0 -6
  44. package/3rdparty/walkontable/src/overlay/constants.mjs +0 -1
  45. package/3rdparty/walkontable/src/overlay/index.js +0 -17
  46. package/3rdparty/walkontable/src/overlay/inlineStart.js +26 -90
  47. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +26 -75
  48. package/3rdparty/walkontable/src/overlay/top.js +37 -104
  49. package/3rdparty/walkontable/src/overlay/top.mjs +37 -89
  50. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +14 -55
  51. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +14 -40
  52. package/3rdparty/walkontable/src/overlays.js +124 -145
  53. package/3rdparty/walkontable/src/overlays.mjs +124 -135
  54. package/3rdparty/walkontable/src/renderer/_base.js +17 -19
  55. package/3rdparty/walkontable/src/renderer/_base.mjs +17 -17
  56. package/3rdparty/walkontable/src/renderer/cells.js +15 -53
  57. package/3rdparty/walkontable/src/renderer/cells.mjs +15 -39
  58. package/3rdparty/walkontable/src/renderer/colGroup.js +15 -46
  59. package/3rdparty/walkontable/src/renderer/colGroup.mjs +15 -34
  60. package/3rdparty/walkontable/src/renderer/columnHeaders.js +13 -49
  61. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +13 -37
  62. package/3rdparty/walkontable/src/renderer/index.js +26 -35
  63. package/3rdparty/walkontable/src/renderer/index.mjs +26 -22
  64. package/3rdparty/walkontable/src/renderer/rowHeaders.js +13 -49
  65. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +13 -36
  66. package/3rdparty/walkontable/src/renderer/rows.js +11 -49
  67. package/3rdparty/walkontable/src/renderer/rows.mjs +11 -32
  68. package/3rdparty/walkontable/src/renderer/table.js +35 -48
  69. package/3rdparty/walkontable/src/renderer/table.mjs +35 -47
  70. package/3rdparty/walkontable/src/scroll.js +69 -86
  71. package/3rdparty/walkontable/src/scroll.mjs +69 -84
  72. package/3rdparty/walkontable/src/selection.js +28 -103
  73. package/3rdparty/walkontable/src/selection.mjs +26 -83
  74. package/3rdparty/walkontable/src/settings.js +25 -31
  75. package/3rdparty/walkontable/src/settings.mjs +25 -29
  76. package/3rdparty/walkontable/src/table/bottom.js +6 -34
  77. package/3rdparty/walkontable/src/table/bottom.mjs +6 -19
  78. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +6 -34
  79. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +6 -19
  80. package/3rdparty/walkontable/src/table/inlineStart.js +6 -34
  81. package/3rdparty/walkontable/src/table/inlineStart.mjs +6 -19
  82. package/3rdparty/walkontable/src/table/master.js +15 -54
  83. package/3rdparty/walkontable/src/table/master.mjs +15 -38
  84. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +1 -16
  85. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +1 -14
  86. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +1 -16
  87. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +1 -14
  88. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +1 -10
  89. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +1 -8
  90. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +1 -11
  91. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +1 -9
  92. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +1 -10
  93. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +1 -8
  94. package/3rdparty/walkontable/src/table/top.js +6 -34
  95. package/3rdparty/walkontable/src/table/top.mjs +6 -19
  96. package/3rdparty/walkontable/src/table/topInlineStartCorner.js +6 -34
  97. package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +6 -19
  98. package/3rdparty/walkontable/src/table.js +73 -233
  99. package/3rdparty/walkontable/src/table.mjs +71 -210
  100. package/3rdparty/walkontable/src/types.js +0 -5
  101. package/3rdparty/walkontable/src/types.mjs +0 -5
  102. package/3rdparty/walkontable/src/utils/column.js +18 -30
  103. package/3rdparty/walkontable/src/utils/column.mjs +18 -25
  104. package/3rdparty/walkontable/src/utils/nodesPool.js +16 -11
  105. package/3rdparty/walkontable/src/utils/nodesPool.mjs +16 -10
  106. package/3rdparty/walkontable/src/utils/orderView/constants.js +0 -3
  107. package/3rdparty/walkontable/src/utils/orderView/constants.mjs +0 -2
  108. package/3rdparty/walkontable/src/utils/orderView/index.js +0 -5
  109. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +7 -32
  110. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +7 -21
  111. package/3rdparty/walkontable/src/utils/orderView/view.js +27 -45
  112. package/3rdparty/walkontable/src/utils/orderView/view.mjs +27 -42
  113. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +16 -14
  114. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +16 -13
  115. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +21 -21
  116. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +21 -18
  117. package/3rdparty/walkontable/src/utils/row.js +15 -12
  118. package/3rdparty/walkontable/src/utils/row.mjs +15 -11
  119. package/3rdparty/walkontable/src/viewport.js +51 -99
  120. package/3rdparty/walkontable/src/viewport.mjs +51 -96
  121. package/CHANGELOG.md +99 -1
  122. package/base.d.ts +1 -0
  123. package/base.js +11 -17
  124. package/base.mjs +10 -11
  125. package/cellTypes/autocompleteType/autocompleteType.js +0 -4
  126. package/cellTypes/autocompleteType/index.js +0 -2
  127. package/cellTypes/checkboxType/checkboxType.js +0 -3
  128. package/cellTypes/checkboxType/index.js +0 -2
  129. package/cellTypes/dateType/dateType.js +0 -4
  130. package/cellTypes/dateType/index.js +0 -2
  131. package/cellTypes/dropdownType/dropdownType.js +0 -4
  132. package/cellTypes/dropdownType/index.js +0 -2
  133. package/cellTypes/handsontableType/handsontableType.js +0 -3
  134. package/cellTypes/handsontableType/index.js +0 -2
  135. package/cellTypes/index.js +0 -21
  136. package/cellTypes/index.mjs +0 -1
  137. package/cellTypes/numericType/index.js +0 -2
  138. package/cellTypes/numericType/numericType.js +0 -4
  139. package/cellTypes/passwordType/index.js +0 -2
  140. package/cellTypes/passwordType/passwordType.js +0 -3
  141. package/cellTypes/registry.js +10 -25
  142. package/cellTypes/registry.mjs +10 -20
  143. package/cellTypes/textType/index.js +0 -2
  144. package/cellTypes/textType/textType.js +0 -3
  145. package/cellTypes/timeType/index.js +0 -2
  146. package/cellTypes/timeType/timeType.js +0 -4
  147. package/core.d.ts +6 -2
  148. package/core.js +714 -1070
  149. package/core.mjs +717 -1015
  150. package/dataMap/dataMap.js +202 -236
  151. package/dataMap/dataMap.mjs +201 -209
  152. package/{dataSource.js → dataMap/dataSource.js} +29 -65
  153. package/{dataSource.mjs → dataMap/dataSource.mjs} +29 -57
  154. package/dataMap/index.js +0 -13
  155. package/dataMap/metaManager/index.js +33 -45
  156. package/dataMap/metaManager/index.mjs +33 -37
  157. package/dataMap/metaManager/lazyFactoryMap.js +17 -62
  158. package/dataMap/metaManager/lazyFactoryMap.mjs +17 -46
  159. package/dataMap/metaManager/metaLayers/cellMeta.js +26 -57
  160. package/dataMap/metaManager/metaLayers/cellMeta.mjs +25 -41
  161. package/dataMap/metaManager/metaLayers/columnMeta.js +23 -24
  162. package/dataMap/metaManager/metaLayers/columnMeta.mjs +24 -21
  163. package/dataMap/metaManager/metaLayers/globalMeta.js +30 -21
  164. package/dataMap/metaManager/metaLayers/globalMeta.mjs +31 -18
  165. package/dataMap/metaManager/metaLayers/tableMeta.js +18 -15
  166. package/dataMap/metaManager/metaLayers/tableMeta.mjs +19 -14
  167. package/dataMap/metaManager/metaSchema.js +173 -213
  168. package/dataMap/metaManager/metaSchema.mjs +173 -204
  169. package/dataMap/metaManager/mods/dynamicCellMeta.js +15 -35
  170. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +15 -24
  171. package/dataMap/metaManager/mods/extendMetaProperties.js +14 -27
  172. package/dataMap/metaManager/mods/extendMetaProperties.mjs +14 -19
  173. package/dataMap/metaManager/utils.js +49 -28
  174. package/dataMap/metaManager/utils.mjs +50 -21
  175. package/dataMap/replaceData.js +15 -35
  176. package/dataMap/replaceData.mjs +15 -23
  177. package/dist/handsontable.css +9 -9
  178. package/dist/handsontable.full.css +9 -9
  179. package/dist/handsontable.full.js +13065 -28165
  180. package/dist/handsontable.full.min.css +2 -2
  181. package/dist/handsontable.full.min.js +108 -114
  182. package/dist/handsontable.js +11528 -21792
  183. package/dist/handsontable.min.css +2 -2
  184. package/dist/handsontable.min.js +3 -3
  185. package/dist/languages/all.js +111 -240
  186. package/dist/languages/all.min.js +1 -1
  187. package/dist/languages/ar-AR.js +50 -14
  188. package/dist/languages/ar-AR.min.js +1 -1
  189. package/dist/languages/cs-CZ.js +52 -16
  190. package/dist/languages/cs-CZ.min.js +1 -1
  191. package/dist/languages/de-CH.js +52 -16
  192. package/dist/languages/de-CH.min.js +1 -1
  193. package/dist/languages/de-DE.js +53 -17
  194. package/dist/languages/de-DE.min.js +1 -1
  195. package/dist/languages/en-US.js +56 -20
  196. package/dist/languages/en-US.min.js +1 -1
  197. package/dist/languages/es-MX.js +56 -20
  198. package/dist/languages/es-MX.min.js +1 -1
  199. package/dist/languages/fr-FR.js +55 -19
  200. package/dist/languages/fr-FR.min.js +1 -1
  201. package/dist/languages/it-IT.js +55 -19
  202. package/dist/languages/it-IT.min.js +1 -1
  203. package/dist/languages/ja-JP.js +83 -43
  204. package/dist/languages/ja-JP.min.js +1 -1
  205. package/dist/languages/ko-KR.js +84 -43
  206. package/dist/languages/ko-KR.min.js +1 -1
  207. package/dist/languages/lv-LV.js +85 -43
  208. package/dist/languages/lv-LV.min.js +1 -1
  209. package/dist/languages/nb-NO.js +86 -43
  210. package/dist/languages/nb-NO.min.js +1 -1
  211. package/dist/languages/nl-NL.js +87 -43
  212. package/dist/languages/nl-NL.min.js +1 -1
  213. package/dist/languages/pl-PL.js +88 -43
  214. package/dist/languages/pl-PL.min.js +1 -1
  215. package/dist/languages/pt-BR.js +67 -28
  216. package/dist/languages/pt-BR.min.js +1 -1
  217. package/dist/languages/ru-RU.js +67 -28
  218. package/dist/languages/ru-RU.min.js +1 -1
  219. package/dist/languages/sr-SP.js +55 -16
  220. package/dist/languages/sr-SP.min.js +1 -1
  221. package/dist/languages/zh-CN.js +55 -16
  222. package/dist/languages/zh-CN.min.js +1 -1
  223. package/dist/languages/zh-TW.js +55 -16
  224. package/dist/languages/zh-TW.min.js +1 -1
  225. package/editorManager.js +53 -113
  226. package/editorManager.mjs +50 -90
  227. package/editors/autocompleteEditor/autocompleteEditor.js +36 -138
  228. package/editors/autocompleteEditor/autocompleteEditor.mjs +35 -108
  229. package/editors/autocompleteEditor/index.js +0 -2
  230. package/editors/baseEditor/baseEditor.js +55 -160
  231. package/editors/baseEditor/baseEditor.mjs +54 -133
  232. package/editors/baseEditor/index.js +0 -2
  233. package/editors/checkboxEditor/checkboxEditor.js +8 -34
  234. package/editors/checkboxEditor/checkboxEditor.mjs +8 -20
  235. package/editors/checkboxEditor/index.js +0 -2
  236. package/editors/dateEditor/dateEditor.js +26 -97
  237. package/editors/dateEditor/dateEditor.mjs +26 -76
  238. package/editors/dateEditor/index.js +0 -2
  239. package/editors/dropdownEditor/dropdownEditor.js +7 -42
  240. package/editors/dropdownEditor/dropdownEditor.mjs +7 -23
  241. package/editors/dropdownEditor/index.js +0 -2
  242. package/editors/handsontableEditor/handsontableEditor.js +19 -86
  243. package/editors/handsontableEditor/handsontableEditor.mjs +19 -67
  244. package/editors/handsontableEditor/index.js +0 -2
  245. package/editors/index.js +0 -25
  246. package/editors/index.mjs +0 -1
  247. package/editors/numericEditor/index.js +0 -2
  248. package/editors/numericEditor/numericEditor.js +7 -32
  249. package/editors/numericEditor/numericEditor.mjs +7 -19
  250. package/editors/passwordEditor/index.js +0 -2
  251. package/editors/passwordEditor/passwordEditor.js +7 -39
  252. package/editors/passwordEditor/passwordEditor.mjs +7 -23
  253. package/editors/registry.js +13 -36
  254. package/editors/registry.mjs +12 -26
  255. package/editors/selectEditor/index.js +0 -2
  256. package/editors/selectEditor/selectEditor.js +27 -74
  257. package/editors/selectEditor/selectEditor.mjs +27 -57
  258. package/editors/textEditor/caretPositioner.js +0 -8
  259. package/editors/textEditor/caretPositioner.mjs +0 -7
  260. package/editors/textEditor/index.js +0 -2
  261. package/editors/textEditor/textEditor.js +45 -139
  262. package/editors/textEditor/textEditor.mjs +45 -108
  263. package/editors/timeEditor/index.js +0 -2
  264. package/editors/timeEditor/timeEditor.js +7 -37
  265. package/editors/timeEditor/timeEditor.mjs +7 -22
  266. package/eventManager.js +26 -47
  267. package/eventManager.mjs +27 -45
  268. package/helpers/array.js +22 -88
  269. package/helpers/array.mjs +22 -58
  270. package/helpers/browser.js +25 -51
  271. package/helpers/browser.mjs +25 -32
  272. package/helpers/console.js +3 -13
  273. package/helpers/console.mjs +3 -10
  274. package/helpers/data.d.ts +0 -2
  275. package/helpers/data.js +8 -102
  276. package/helpers/data.mjs +9 -80
  277. package/helpers/date.js +2 -3
  278. package/helpers/date.mjs +2 -2
  279. package/helpers/dom/element.js +89 -256
  280. package/helpers/dom/element.mjs +88 -184
  281. package/helpers/dom/event.js +3 -7
  282. package/helpers/dom/event.mjs +3 -3
  283. package/helpers/feature.js +21 -82
  284. package/helpers/feature.mjs +15 -60
  285. package/helpers/function.js +14 -59
  286. package/helpers/function.mjs +14 -45
  287. package/helpers/mixed.js +9 -64
  288. package/helpers/mixed.mjs +9 -43
  289. package/helpers/number.js +4 -46
  290. package/helpers/number.mjs +4 -23
  291. package/helpers/object.js +30 -77
  292. package/helpers/object.mjs +25 -47
  293. package/helpers/string.js +6 -28
  294. package/helpers/string.mjs +6 -14
  295. package/helpers/templateLiteralTag.js +0 -6
  296. package/helpers/templateLiteralTag.mjs +0 -2
  297. package/helpers/unicode.js +17 -22
  298. package/helpers/unicode.mjs +17 -13
  299. package/helpers/wrappers/jquery.js +4 -14
  300. package/helpers/wrappers/jquery.mjs +4 -13
  301. package/i18n/constants.js +50 -45
  302. package/i18n/constants.mjs +46 -42
  303. package/i18n/index.js +0 -7
  304. package/i18n/languages/ar-AR.js +12 -23
  305. package/i18n/languages/ar-AR.mjs +14 -3
  306. package/i18n/languages/cs-CZ.js +12 -23
  307. package/i18n/languages/cs-CZ.mjs +14 -3
  308. package/i18n/languages/de-CH.js +12 -23
  309. package/i18n/languages/de-CH.mjs +14 -3
  310. package/i18n/languages/de-DE.js +12 -23
  311. package/i18n/languages/de-DE.mjs +14 -3
  312. package/i18n/languages/en-US.js +13 -24
  313. package/i18n/languages/en-US.mjs +15 -4
  314. package/i18n/languages/es-MX.js +13 -24
  315. package/i18n/languages/es-MX.mjs +17 -5
  316. package/i18n/languages/fr-FR.js +12 -23
  317. package/i18n/languages/fr-FR.mjs +14 -3
  318. package/i18n/languages/index.js +0 -39
  319. package/i18n/languages/it-IT.js +12 -23
  320. package/i18n/languages/it-IT.mjs +14 -3
  321. package/i18n/languages/ja-JP.js +12 -23
  322. package/i18n/languages/ja-JP.mjs +14 -3
  323. package/i18n/languages/ko-KR.js +12 -23
  324. package/i18n/languages/ko-KR.mjs +14 -3
  325. package/i18n/languages/lv-LV.js +13 -24
  326. package/i18n/languages/lv-LV.mjs +17 -6
  327. package/i18n/languages/nb-NO.js +12 -23
  328. package/i18n/languages/nb-NO.mjs +14 -3
  329. package/i18n/languages/nl-NL.js +13 -24
  330. package/i18n/languages/nl-NL.mjs +17 -6
  331. package/i18n/languages/pl-PL.js +13 -24
  332. package/i18n/languages/pl-PL.mjs +16 -5
  333. package/i18n/languages/pt-BR.js +12 -23
  334. package/i18n/languages/pt-BR.mjs +14 -3
  335. package/i18n/languages/ru-RU.js +12 -23
  336. package/i18n/languages/ru-RU.mjs +14 -3
  337. package/i18n/languages/sr-SP.js +12 -23
  338. package/i18n/languages/sr-SP.mjs +14 -3
  339. package/i18n/languages/zh-CN.js +12 -23
  340. package/i18n/languages/zh-CN.mjs +14 -3
  341. package/i18n/languages/zh-TW.js +12 -23
  342. package/i18n/languages/zh-TW.mjs +14 -3
  343. package/i18n/phraseFormatters/index.js +4 -11
  344. package/i18n/phraseFormatters/index.mjs +4 -6
  345. package/i18n/phraseFormatters/pluralize.js +0 -5
  346. package/i18n/phraseFormatters/pluralize.mjs +0 -3
  347. package/i18n/phraseFormatters/substituteVariables.js +0 -4
  348. package/i18n/phraseFormatters/substituteVariables.mjs +0 -2
  349. package/i18n/registry.js +18 -59
  350. package/i18n/registry.mjs +18 -30
  351. package/i18n/utils.js +4 -22
  352. package/i18n/utils.mjs +4 -11
  353. package/index.d.ts +9 -0
  354. package/index.js +23 -58
  355. package/index.mjs +21 -16
  356. package/languages/all.js +111 -240
  357. package/languages/ar-AR.js +50 -14
  358. package/languages/ar-AR.mjs +14 -3
  359. package/languages/cs-CZ.js +52 -16
  360. package/languages/cs-CZ.mjs +14 -3
  361. package/languages/de-CH.js +52 -16
  362. package/languages/de-CH.mjs +14 -3
  363. package/languages/de-DE.js +53 -17
  364. package/languages/de-DE.mjs +14 -3
  365. package/languages/en-US.js +56 -20
  366. package/languages/en-US.mjs +15 -4
  367. package/languages/es-MX.js +56 -20
  368. package/languages/es-MX.mjs +17 -5
  369. package/languages/fr-FR.js +55 -19
  370. package/languages/fr-FR.mjs +14 -3
  371. package/languages/index.js +111 -240
  372. package/languages/it-IT.js +55 -19
  373. package/languages/it-IT.mjs +14 -3
  374. package/languages/ja-JP.js +83 -43
  375. package/languages/ja-JP.mjs +14 -3
  376. package/languages/ko-KR.js +84 -43
  377. package/languages/ko-KR.mjs +14 -3
  378. package/languages/lv-LV.js +85 -43
  379. package/languages/lv-LV.mjs +17 -6
  380. package/languages/nb-NO.js +86 -43
  381. package/languages/nb-NO.mjs +14 -3
  382. package/languages/nl-NL.js +87 -43
  383. package/languages/nl-NL.mjs +17 -6
  384. package/languages/pl-PL.js +88 -43
  385. package/languages/pl-PL.mjs +16 -5
  386. package/languages/pt-BR.js +67 -28
  387. package/languages/pt-BR.mjs +14 -3
  388. package/languages/ru-RU.js +67 -28
  389. package/languages/ru-RU.mjs +14 -3
  390. package/languages/sr-SP.js +55 -16
  391. package/languages/sr-SP.mjs +14 -3
  392. package/languages/zh-CN.js +55 -16
  393. package/languages/zh-CN.mjs +14 -3
  394. package/languages/zh-TW.js +55 -16
  395. package/languages/zh-TW.mjs +14 -3
  396. package/mixins/hooksRefRegisterer.js +1 -12
  397. package/mixins/hooksRefRegisterer.mjs +1 -9
  398. package/mixins/localHooks.js +4 -11
  399. package/mixins/localHooks.mjs +4 -8
  400. package/package.json +2 -2
  401. package/pluginHooks.d.ts +10 -5
  402. package/pluginHooks.js +376 -116
  403. package/pluginHooks.mjs +375 -103
  404. package/plugins/autoColumnSize/autoColumnSize.js +81 -174
  405. package/plugins/autoColumnSize/autoColumnSize.mjs +81 -139
  406. package/plugins/autoColumnSize/index.js +0 -2
  407. package/plugins/autoRowSize/autoRowSize.js +89 -160
  408. package/plugins/autoRowSize/autoRowSize.mjs +89 -131
  409. package/plugins/autoRowSize/index.js +0 -2
  410. package/plugins/autofill/autofill.js +53 -165
  411. package/plugins/autofill/autofill.mjs +53 -133
  412. package/plugins/autofill/index.js +0 -2
  413. package/plugins/autofill/utils.js +4 -26
  414. package/plugins/autofill/utils.mjs +4 -18
  415. package/plugins/base/base.js +28 -91
  416. package/plugins/base/base.mjs +28 -63
  417. package/plugins/base/index.js +0 -2
  418. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +25 -53
  419. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +25 -34
  420. package/plugins/bindRowsWithHeaders/index.js +0 -2
  421. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +11 -42
  422. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +11 -30
  423. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +12 -54
  424. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +12 -38
  425. package/plugins/collapsibleColumns/collapsibleColumns.js +106 -193
  426. package/plugins/collapsibleColumns/collapsibleColumns.mjs +106 -162
  427. package/plugins/collapsibleColumns/index.js +0 -2
  428. package/plugins/columnSorting/columnSorting.js +58 -192
  429. package/plugins/columnSorting/columnSorting.mjs +58 -147
  430. package/plugins/columnSorting/columnStatesManager.js +27 -77
  431. package/plugins/columnSorting/columnStatesManager.mjs +24 -51
  432. package/plugins/columnSorting/domHelpers.js +2 -18
  433. package/plugins/columnSorting/domHelpers.mjs +2 -7
  434. package/plugins/columnSorting/index.js +0 -2
  435. package/plugins/columnSorting/rootComparator.js +5 -24
  436. package/plugins/columnSorting/rootComparator.mjs +5 -13
  437. package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
  438. package/plugins/columnSorting/sortFunction/checkbox.mjs +8 -12
  439. package/plugins/columnSorting/sortFunction/date.js +2 -19
  440. package/plugins/columnSorting/sortFunction/date.mjs +2 -14
  441. package/plugins/columnSorting/sortFunction/default.js +2 -17
  442. package/plugins/columnSorting/sortFunction/default.mjs +2 -14
  443. package/plugins/columnSorting/sortFunction/numeric.js +2 -11
  444. package/plugins/columnSorting/sortFunction/numeric.mjs +2 -8
  445. package/plugins/columnSorting/sortService/engine.js +1 -7
  446. package/plugins/columnSorting/sortService/engine.mjs +1 -3
  447. package/plugins/columnSorting/sortService/index.js +0 -5
  448. package/plugins/columnSorting/sortService/registry.js +6 -18
  449. package/plugins/columnSorting/sortService/registry.mjs +6 -10
  450. package/plugins/columnSorting/utils.js +9 -34
  451. package/plugins/columnSorting/utils.mjs +9 -15
  452. package/plugins/columnSummary/columnSummary.js +65 -126
  453. package/plugins/columnSummary/columnSummary.mjs +65 -101
  454. package/plugins/columnSummary/endpoints.js +33 -109
  455. package/plugins/columnSummary/endpoints.mjs +33 -105
  456. package/plugins/columnSummary/index.js +0 -2
  457. package/plugins/columnSummary/utils.js +0 -1
  458. package/plugins/comments/commentEditor.js +29 -27
  459. package/plugins/comments/commentEditor.mjs +29 -26
  460. package/plugins/comments/comments.js +106 -178
  461. package/plugins/comments/comments.mjs +106 -152
  462. package/plugins/comments/displaySwitch.js +20 -24
  463. package/plugins/comments/displaySwitch.mjs +20 -19
  464. package/plugins/comments/index.js +0 -2
  465. package/plugins/contextMenu/commandExecutor.js +17 -29
  466. package/plugins/contextMenu/commandExecutor.mjs +17 -27
  467. package/plugins/contextMenu/contextMenu.d.ts +4 -3
  468. package/plugins/contextMenu/contextMenu.js +28 -121
  469. package/plugins/contextMenu/contextMenu.mjs +28 -91
  470. package/plugins/contextMenu/cursor.js +19 -19
  471. package/plugins/contextMenu/cursor.mjs +19 -18
  472. package/plugins/contextMenu/index.js +0 -2
  473. package/plugins/contextMenu/itemsFactory.js +21 -35
  474. package/plugins/contextMenu/itemsFactory.mjs +21 -31
  475. package/plugins/contextMenu/menu.js +71 -180
  476. package/plugins/contextMenu/menu.mjs +70 -151
  477. package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
  478. package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
  479. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
  480. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
  481. package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
  482. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
  483. package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
  484. package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
  485. package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
  486. package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
  487. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
  488. package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
  489. package/plugins/contextMenu/predefinedItems/redo.js +1 -16
  490. package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
  491. package/plugins/contextMenu/predefinedItems/removeColumn.js +4 -39
  492. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +4 -19
  493. package/plugins/contextMenu/predefinedItems/removeRow.js +4 -38
  494. package/plugins/contextMenu/predefinedItems/removeRow.mjs +4 -18
  495. package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
  496. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
  497. package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
  498. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
  499. package/plugins/contextMenu/predefinedItems/separator.js +1 -2
  500. package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
  501. package/plugins/contextMenu/predefinedItems/undo.js +1 -16
  502. package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
  503. package/plugins/contextMenu/predefinedItems.js +14 -55
  504. package/plugins/contextMenu/predefinedItems.mjs +16 -8
  505. package/plugins/contextMenu/utils.js +17 -57
  506. package/plugins/contextMenu/utils.mjs +17 -34
  507. package/plugins/copyPaste/clipboardData.js +14 -9
  508. package/plugins/copyPaste/clipboardData.mjs +14 -8
  509. package/plugins/copyPaste/contextMenuItem/copy.js +5 -32
  510. package/plugins/copyPaste/contextMenuItem/copy.mjs +5 -7
  511. package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.js +35 -0
  512. package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.mjs +31 -0
  513. package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.js +35 -0
  514. package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.mjs +31 -0
  515. package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.js +35 -0
  516. package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.mjs +31 -0
  517. package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
  518. package/plugins/copyPaste/contextMenuItem/cut.mjs +2 -4
  519. package/plugins/copyPaste/copyPaste.d.ts +10 -2
  520. package/plugins/copyPaste/copyPaste.js +339 -372
  521. package/plugins/copyPaste/copyPaste.mjs +339 -331
  522. package/plugins/copyPaste/copyableRanges.js +269 -0
  523. package/plugins/copyPaste/copyableRanges.mjs +264 -0
  524. package/plugins/copyPaste/focusableElement.js +21 -55
  525. package/plugins/copyPaste/focusableElement.mjs +21 -45
  526. package/plugins/copyPaste/index.js +0 -2
  527. package/plugins/copyPaste/pasteEvent.js +14 -9
  528. package/plugins/copyPaste/pasteEvent.mjs +14 -7
  529. package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
  530. package/plugins/customBorders/contextMenuItem/bottom.mjs +0 -3
  531. package/plugins/customBorders/contextMenuItem/index.js +0 -11
  532. package/plugins/customBorders/contextMenuItem/left.js +0 -17
  533. package/plugins/customBorders/contextMenuItem/left.mjs +0 -3
  534. package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
  535. package/plugins/customBorders/contextMenuItem/noBorders.mjs +0 -1
  536. package/plugins/customBorders/contextMenuItem/right.js +0 -17
  537. package/plugins/customBorders/contextMenuItem/right.mjs +0 -3
  538. package/plugins/customBorders/contextMenuItem/top.js +0 -17
  539. package/plugins/customBorders/contextMenuItem/top.mjs +0 -3
  540. package/plugins/customBorders/customBorders.js +64 -188
  541. package/plugins/customBorders/customBorders.mjs +63 -153
  542. package/plugins/customBorders/index.js +0 -2
  543. package/plugins/customBorders/utils.js +13 -52
  544. package/plugins/customBorders/utils.mjs +13 -31
  545. package/plugins/dragToScroll/dragToScroll.js +23 -75
  546. package/plugins/dragToScroll/dragToScroll.mjs +23 -56
  547. package/plugins/dragToScroll/index.js +0 -2
  548. package/plugins/dropdownMenu/dropdownMenu.js +49 -127
  549. package/plugins/dropdownMenu/dropdownMenu.mjs +49 -96
  550. package/plugins/dropdownMenu/index.js +0 -2
  551. package/plugins/exportFile/dataProvider.js +34 -72
  552. package/plugins/exportFile/dataProvider.mjs +31 -58
  553. package/plugins/exportFile/exportFile.js +56 -61
  554. package/plugins/exportFile/exportFile.mjs +54 -37
  555. package/plugins/exportFile/index.js +0 -2
  556. package/plugins/exportFile/typeFactory.js +15 -12
  557. package/plugins/exportFile/typeFactory.mjs +15 -5
  558. package/plugins/exportFile/types/_base.js +15 -15
  559. package/plugins/exportFile/types/_base.mjs +15 -13
  560. package/plugins/exportFile/types/csv.js +8 -51
  561. package/plugins/exportFile/types/csv.mjs +8 -30
  562. package/plugins/filters/component/_base.js +25 -31
  563. package/plugins/filters/component/_base.mjs +25 -26
  564. package/plugins/filters/component/actionBar.js +13 -56
  565. package/plugins/filters/component/actionBar.mjs +11 -34
  566. package/plugins/filters/component/condition.js +22 -95
  567. package/plugins/filters/component/condition.mjs +20 -63
  568. package/plugins/filters/component/operators.js +18 -71
  569. package/plugins/filters/component/operators.mjs +18 -48
  570. package/plugins/filters/component/value.js +22 -97
  571. package/plugins/filters/component/value.mjs +22 -67
  572. package/plugins/filters/condition/beginsWith.js +3 -33
  573. package/plugins/filters/condition/beginsWith.mjs +3 -11
  574. package/plugins/filters/condition/between.js +4 -38
  575. package/plugins/filters/condition/between.mjs +4 -16
  576. package/plugins/filters/condition/byValue.js +4 -28
  577. package/plugins/filters/condition/byValue.mjs +4 -13
  578. package/plugins/filters/condition/contains.js +3 -33
  579. package/plugins/filters/condition/contains.mjs +3 -11
  580. package/plugins/filters/condition/date/after.js +3 -35
  581. package/plugins/filters/condition/date/after.mjs +3 -13
  582. package/plugins/filters/condition/date/before.js +3 -35
  583. package/plugins/filters/condition/date/before.mjs +3 -13
  584. package/plugins/filters/condition/date/today.js +1 -22
  585. package/plugins/filters/condition/date/today.mjs +1 -3
  586. package/plugins/filters/condition/date/tomorrow.js +1 -22
  587. package/plugins/filters/condition/date/tomorrow.mjs +1 -3
  588. package/plugins/filters/condition/date/yesterday.js +1 -22
  589. package/plugins/filters/condition/date/yesterday.mjs +1 -3
  590. package/plugins/filters/condition/empty.js +1 -19
  591. package/plugins/filters/condition/empty.mjs +1 -1
  592. package/plugins/filters/condition/endsWith.js +3 -33
  593. package/plugins/filters/condition/endsWith.mjs +3 -11
  594. package/plugins/filters/condition/equal.js +3 -32
  595. package/plugins/filters/condition/equal.mjs +3 -11
  596. package/plugins/filters/condition/false.js +1 -5
  597. package/plugins/filters/condition/false.mjs +1 -1
  598. package/plugins/filters/condition/greaterThan.js +3 -33
  599. package/plugins/filters/condition/greaterThan.mjs +3 -13
  600. package/plugins/filters/condition/greaterThanOrEqual.js +3 -33
  601. package/plugins/filters/condition/greaterThanOrEqual.mjs +3 -13
  602. package/plugins/filters/condition/lessThan.js +3 -33
  603. package/plugins/filters/condition/lessThan.mjs +3 -13
  604. package/plugins/filters/condition/lessThanOrEqual.js +3 -33
  605. package/plugins/filters/condition/lessThanOrEqual.mjs +3 -13
  606. package/plugins/filters/condition/none.js +1 -18
  607. package/plugins/filters/condition/none.mjs +1 -1
  608. package/plugins/filters/condition/notBetween.js +1 -19
  609. package/plugins/filters/condition/notBetween.mjs +1 -1
  610. package/plugins/filters/condition/notContains.js +1 -19
  611. package/plugins/filters/condition/notContains.mjs +1 -1
  612. package/plugins/filters/condition/notEmpty.js +1 -19
  613. package/plugins/filters/condition/notEmpty.mjs +1 -1
  614. package/plugins/filters/condition/notEqual.js +1 -19
  615. package/plugins/filters/condition/notEqual.mjs +1 -1
  616. package/plugins/filters/condition/true.js +1 -5
  617. package/plugins/filters/condition/true.mjs +1 -1
  618. package/plugins/filters/conditionCollection.js +31 -84
  619. package/plugins/filters/conditionCollection.mjs +39 -69
  620. package/plugins/filters/conditionRegisterer.js +5 -14
  621. package/plugins/filters/conditionRegisterer.mjs +5 -9
  622. package/plugins/filters/conditionUpdateObserver.js +29 -56
  623. package/plugins/filters/conditionUpdateObserver.mjs +29 -44
  624. package/plugins/filters/constants.js +15 -67
  625. package/plugins/filters/constants.mjs +15 -9
  626. package/plugins/filters/dataFilter.js +17 -20
  627. package/plugins/filters/dataFilter.mjs +17 -19
  628. package/plugins/filters/filters.js +110 -210
  629. package/plugins/filters/filters.mjs +110 -165
  630. package/plugins/filters/index.js +0 -2
  631. package/plugins/filters/logicalOperationRegisterer.js +3 -9
  632. package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
  633. package/plugins/filters/logicalOperations/conjunction.js +2 -19
  634. package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
  635. package/plugins/filters/logicalOperations/disjunction.js +2 -19
  636. package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
  637. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
  638. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
  639. package/plugins/filters/ui/_base.js +24 -62
  640. package/plugins/filters/ui/_base.mjs +26 -36
  641. package/plugins/filters/ui/input.js +13 -53
  642. package/plugins/filters/ui/input.mjs +13 -35
  643. package/plugins/filters/ui/link.js +9 -44
  644. package/plugins/filters/ui/link.mjs +9 -26
  645. package/plugins/filters/ui/multipleSelect.js +25 -113
  646. package/plugins/filters/ui/multipleSelect.mjs +26 -77
  647. package/plugins/filters/ui/radioInput.js +12 -48
  648. package/plugins/filters/ui/radioInput.mjs +12 -31
  649. package/plugins/filters/ui/select.js +20 -77
  650. package/plugins/filters/ui/select.mjs +20 -53
  651. package/plugins/filters/utils.js +6 -39
  652. package/plugins/filters/utils.mjs +6 -23
  653. package/plugins/formulas/engine/register.js +24 -74
  654. package/plugins/formulas/engine/register.mjs +24 -45
  655. package/plugins/formulas/engine/settings.js +16 -25
  656. package/plugins/formulas/engine/settings.mjs +16 -13
  657. package/plugins/formulas/formulas.js +127 -306
  658. package/plugins/formulas/formulas.mjs +128 -259
  659. package/plugins/formulas/index.js +0 -2
  660. package/plugins/formulas/utils.js +1 -3
  661. package/plugins/formulas/utils.mjs +1 -1
  662. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +5 -39
  663. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +5 -21
  664. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
  665. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +17 -24
  666. package/plugins/hiddenColumns/hiddenColumns.js +77 -150
  667. package/plugins/hiddenColumns/hiddenColumns.mjs +77 -109
  668. package/plugins/hiddenColumns/index.js +0 -2
  669. package/plugins/hiddenRows/contextMenuItem/hideRow.js +5 -39
  670. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +5 -21
  671. package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
  672. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +17 -24
  673. package/plugins/hiddenRows/hiddenRows.js +75 -149
  674. package/plugins/hiddenRows/hiddenRows.mjs +75 -108
  675. package/plugins/hiddenRows/index.js +0 -2
  676. package/plugins/index.js +0 -71
  677. package/plugins/index.mjs +0 -1
  678. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +2 -29
  679. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +2 -13
  680. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +2 -29
  681. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +2 -13
  682. package/plugins/manualColumnFreeze/index.js +0 -2
  683. package/plugins/manualColumnFreeze/manualColumnFreeze.js +27 -79
  684. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +27 -55
  685. package/plugins/manualColumnMove/index.js +0 -2
  686. package/plugins/manualColumnMove/manualColumnMove.js +51 -135
  687. package/plugins/manualColumnMove/manualColumnMove.mjs +51 -107
  688. package/plugins/manualColumnMove/ui/_base.js +26 -31
  689. package/plugins/manualColumnMove/ui/_base.mjs +26 -28
  690. package/plugins/manualColumnMove/ui/backlight.js +7 -38
  691. package/plugins/manualColumnMove/ui/backlight.mjs +7 -23
  692. package/plugins/manualColumnMove/ui/guideline.js +7 -38
  693. package/plugins/manualColumnMove/ui/guideline.mjs +7 -23
  694. package/plugins/manualColumnResize/index.js +0 -2
  695. package/plugins/manualColumnResize/manualColumnResize.js +50 -144
  696. package/plugins/manualColumnResize/manualColumnResize.mjs +49 -119
  697. package/plugins/manualRowMove/index.js +0 -2
  698. package/plugins/manualRowMove/manualRowMove.js +51 -138
  699. package/plugins/manualRowMove/manualRowMove.mjs +51 -110
  700. package/plugins/manualRowMove/ui/_base.js +26 -28
  701. package/plugins/manualRowMove/ui/_base.mjs +26 -27
  702. package/plugins/manualRowMove/ui/backlight.js +7 -38
  703. package/plugins/manualRowMove/ui/backlight.mjs +7 -23
  704. package/plugins/manualRowMove/ui/guideline.js +7 -38
  705. package/plugins/manualRowMove/ui/guideline.mjs +7 -23
  706. package/plugins/manualRowResize/index.js +0 -2
  707. package/plugins/manualRowResize/manualRowResize.js +48 -139
  708. package/plugins/manualRowResize/manualRowResize.mjs +47 -113
  709. package/plugins/mergeCells/calculations/autofill.js +49 -133
  710. package/plugins/mergeCells/calculations/autofill.mjs +46 -117
  711. package/plugins/mergeCells/calculations/selection.js +22 -39
  712. package/plugins/mergeCells/calculations/selection.mjs +22 -36
  713. package/plugins/mergeCells/cellCoords.js +43 -50
  714. package/plugins/mergeCells/cellCoords.mjs +43 -48
  715. package/plugins/mergeCells/cellsCollection.js +22 -86
  716. package/plugins/mergeCells/cellsCollection.mjs +19 -63
  717. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
  718. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +0 -6
  719. package/plugins/mergeCells/index.js +0 -2
  720. package/plugins/mergeCells/mergeCells.js +136 -334
  721. package/plugins/mergeCells/mergeCells.mjs +136 -293
  722. package/plugins/mergeCells/utils.js +0 -3
  723. package/plugins/mergeCells/utils.mjs +0 -1
  724. package/plugins/multiColumnSorting/domHelpers.js +2 -12
  725. package/plugins/multiColumnSorting/domHelpers.mjs +2 -5
  726. package/plugins/multiColumnSorting/index.js +0 -2
  727. package/plugins/multiColumnSorting/multiColumnSorting.js +20 -67
  728. package/plugins/multiColumnSorting/multiColumnSorting.mjs +20 -45
  729. package/plugins/multiColumnSorting/rootComparator.js +2 -26
  730. package/plugins/multiColumnSorting/rootComparator.mjs +2 -15
  731. package/plugins/multiColumnSorting/utils.js +0 -7
  732. package/plugins/multiColumnSorting/utils.mjs +0 -4
  733. package/plugins/multipleSelectionHandles/index.js +0 -2
  734. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +12 -110
  735. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +12 -88
  736. package/plugins/nestedHeaders/index.js +0 -2
  737. package/plugins/nestedHeaders/nestedHeaders.js +198 -211
  738. package/plugins/nestedHeaders/nestedHeaders.mjs +206 -191
  739. package/plugins/nestedHeaders/stateManager/headersTree.js +26 -96
  740. package/plugins/nestedHeaders/stateManager/headersTree.mjs +26 -76
  741. package/plugins/nestedHeaders/stateManager/index.js +55 -118
  742. package/plugins/nestedHeaders/stateManager/index.mjs +61 -105
  743. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
  744. package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +7 -18
  745. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
  746. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +12 -17
  747. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
  748. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +10 -15
  749. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
  750. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +3 -13
  751. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
  752. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +1 -3
  753. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
  754. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +3 -14
  755. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
  756. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
  757. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
  758. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +5 -20
  759. package/plugins/nestedHeaders/stateManager/sourceSettings.js +27 -81
  760. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +33 -71
  761. package/plugins/nestedHeaders/stateManager/utils.js +19 -22
  762. package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
  763. package/plugins/nestedHeaders/utils/ghostTable.js +23 -37
  764. package/plugins/nestedHeaders/utils/ghostTable.mjs +23 -36
  765. package/plugins/nestedRows/data/dataManager.js +47 -162
  766. package/plugins/nestedRows/data/dataManager.mjs +45 -143
  767. package/plugins/nestedRows/index.js +0 -2
  768. package/plugins/nestedRows/nestedRows.js +46 -119
  769. package/plugins/nestedRows/nestedRows.mjs +46 -86
  770. package/plugins/nestedRows/ui/_base.js +14 -8
  771. package/plugins/nestedRows/ui/_base.mjs +14 -7
  772. package/plugins/nestedRows/ui/collapsing.js +33 -133
  773. package/plugins/nestedRows/ui/collapsing.mjs +33 -111
  774. package/plugins/nestedRows/ui/contextMenu.js +9 -55
  775. package/plugins/nestedRows/ui/contextMenu.mjs +8 -33
  776. package/plugins/nestedRows/ui/headers.js +10 -49
  777. package/plugins/nestedRows/ui/headers.mjs +10 -34
  778. package/plugins/nestedRows/utils/rowMoveController.js +36 -79
  779. package/plugins/nestedRows/utils/rowMoveController.mjs +45 -71
  780. package/plugins/persistentState/index.js +0 -2
  781. package/plugins/persistentState/persistentState.js +16 -59
  782. package/plugins/persistentState/persistentState.mjs +16 -38
  783. package/plugins/persistentState/storage.js +22 -24
  784. package/plugins/persistentState/storage.mjs +22 -22
  785. package/plugins/registry.js +8 -52
  786. package/plugins/registry.mjs +8 -33
  787. package/plugins/search/index.js +0 -2
  788. package/plugins/search/search.js +22 -97
  789. package/plugins/search/search.mjs +22 -68
  790. package/plugins/touchScroll/index.js +0 -2
  791. package/plugins/touchScroll/touchScroll.js +21 -77
  792. package/plugins/touchScroll/touchScroll.mjs +21 -59
  793. package/plugins/trimRows/index.js +0 -2
  794. package/plugins/trimRows/trimRows.js +64 -86
  795. package/plugins/trimRows/trimRows.mjs +64 -63
  796. package/plugins/undoRedo/index.js +0 -14
  797. package/plugins/undoRedo/undoRedo.js +98 -250
  798. package/plugins/undoRedo/undoRedo.mjs +98 -220
  799. package/registry.js +0 -11
  800. package/registry.mjs +1 -2
  801. package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
  802. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
  803. package/renderers/autocompleteRenderer/index.js +0 -2
  804. package/renderers/baseRenderer/baseRenderer.js +2 -11
  805. package/renderers/baseRenderer/baseRenderer.mjs +1 -7
  806. package/renderers/baseRenderer/index.js +0 -2
  807. package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
  808. package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
  809. package/renderers/checkboxRenderer/index.js +0 -2
  810. package/renderers/htmlRenderer/htmlRenderer.js +1 -7
  811. package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
  812. package/renderers/htmlRenderer/index.js +0 -2
  813. package/renderers/index.js +0 -19
  814. package/renderers/index.mjs +0 -1
  815. package/renderers/numericRenderer/index.js +0 -2
  816. package/renderers/numericRenderer/numericRenderer.js +1 -21
  817. package/renderers/numericRenderer/numericRenderer.mjs +1 -9
  818. package/renderers/passwordRenderer/index.js +0 -2
  819. package/renderers/passwordRenderer/passwordRenderer.js +1 -8
  820. package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
  821. package/renderers/registry.js +7 -16
  822. package/renderers/registry.mjs +7 -14
  823. package/renderers/textRenderer/index.js +0 -2
  824. package/renderers/textRenderer/textRenderer.js +1 -13
  825. package/renderers/textRenderer/textRenderer.mjs +1 -5
  826. package/renderers/timeRenderer/index.js +0 -2
  827. package/renderers/timeRenderer/timeRenderer.js +1 -6
  828. package/renderers/timeRenderer/timeRenderer.mjs +1 -1
  829. package/selection/highlight/highlight.js +24 -73
  830. package/selection/highlight/highlight.mjs +24 -50
  831. package/selection/highlight/types/activeHeader.js +14 -23
  832. package/selection/highlight/types/activeHeader.mjs +14 -12
  833. package/selection/highlight/types/area.js +15 -24
  834. package/selection/highlight/types/area.mjs +15 -13
  835. package/selection/highlight/types/cell.js +14 -23
  836. package/selection/highlight/types/cell.mjs +14 -12
  837. package/selection/highlight/types/customSelection.js +15 -24
  838. package/selection/highlight/types/customSelection.mjs +15 -13
  839. package/selection/highlight/types/fill.js +16 -20
  840. package/selection/highlight/types/fill.mjs +16 -9
  841. package/selection/highlight/types/header.js +16 -25
  842. package/selection/highlight/types/header.mjs +16 -14
  843. package/selection/highlight/types/index.js +17 -27
  844. package/selection/highlight/types/index.mjs +17 -13
  845. package/selection/highlight/visualSelection.js +35 -80
  846. package/selection/highlight/visualSelection.mjs +35 -68
  847. package/selection/index.js +0 -14
  848. package/selection/mouseEventHandler.js +19 -30
  849. package/selection/mouseEventHandler.mjs +19 -22
  850. package/selection/range.js +17 -30
  851. package/selection/range.mjs +17 -21
  852. package/selection/selection.js +72 -160
  853. package/selection/selection.mjs +77 -137
  854. package/selection/transformation.js +23 -39
  855. package/selection/transformation.mjs +23 -36
  856. package/selection/utils.js +23 -71
  857. package/selection/utils.mjs +23 -48
  858. package/shortcuts/context.js +24 -79
  859. package/shortcuts/context.mjs +24 -56
  860. package/shortcuts/index.js +0 -2
  861. package/shortcuts/keyObserver.js +0 -9
  862. package/shortcuts/keyObserver.mjs +0 -4
  863. package/shortcuts/manager.js +17 -37
  864. package/shortcuts/manager.mjs +17 -34
  865. package/shortcuts/recorder.js +9 -40
  866. package/shortcuts/recorder.mjs +9 -31
  867. package/shortcuts/utils.js +5 -20
  868. package/shortcuts/utils.mjs +5 -6
  869. package/tableView.js +239 -330
  870. package/tableView.mjs +239 -308
  871. package/translations/changesObservable/observable.js +14 -53
  872. package/translations/changesObservable/observable.mjs +14 -43
  873. package/translations/changesObservable/observer.js +13 -31
  874. package/translations/changesObservable/observer.mjs +13 -23
  875. package/translations/changesObservable/utils.js +1 -5
  876. package/translations/changesObservable/utils.mjs +1 -4
  877. package/translations/index.js +0 -11
  878. package/translations/indexMapper.js +80 -162
  879. package/translations/indexMapper.mjs +85 -134
  880. package/translations/mapCollections/aggregatedCollection.js +14 -50
  881. package/translations/mapCollections/aggregatedCollection.mjs +14 -37
  882. package/translations/mapCollections/index.js +0 -7
  883. package/translations/mapCollections/mapCollection.js +20 -34
  884. package/translations/mapCollections/mapCollection.mjs +20 -23
  885. package/translations/maps/hidingMap.js +7 -34
  886. package/translations/maps/hidingMap.mjs +7 -22
  887. package/translations/maps/index.js +1 -24
  888. package/translations/maps/index.mjs +1 -3
  889. package/translations/maps/indexMap.js +25 -33
  890. package/translations/maps/indexMap.mjs +25 -27
  891. package/translations/maps/indexesSequence.js +8 -40
  892. package/translations/maps/indexesSequence.mjs +8 -25
  893. package/translations/maps/linkedPhysicalIndexToValueMap.js +18 -81
  894. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +17 -54
  895. package/translations/maps/physicalIndexToValueMap.js +7 -38
  896. package/translations/maps/physicalIndexToValueMap.mjs +7 -24
  897. package/translations/maps/trimmingMap.js +7 -34
  898. package/translations/maps/trimmingMap.mjs +7 -22
  899. package/translations/maps/utils/actionsOnIndexes.js +1 -7
  900. package/translations/maps/utils/actionsOnIndexes.mjs +1 -3
  901. package/translations/maps/utils/index.js +0 -13
  902. package/translations/maps/utils/index.mjs +0 -3
  903. package/translations/maps/utils/indexesSequence.js +1 -24
  904. package/translations/maps/utils/indexesSequence.mjs +1 -9
  905. package/translations/maps/utils/physicallyIndexed.js +1 -27
  906. package/translations/maps/utils/physicallyIndexed.mjs +1 -10
  907. package/utils/dataStructures/linkedList.js +23 -50
  908. package/utils/dataStructures/linkedList.mjs +23 -48
  909. package/utils/dataStructures/priorityMap.js +9 -47
  910. package/utils/dataStructures/priorityMap.mjs +9 -30
  911. package/utils/dataStructures/queue.js +19 -16
  912. package/utils/dataStructures/queue.mjs +19 -15
  913. package/utils/dataStructures/stack.js +19 -16
  914. package/utils/dataStructures/stack.mjs +19 -15
  915. package/utils/dataStructures/tree.js +19 -77
  916. package/utils/dataStructures/tree.mjs +19 -56
  917. package/utils/dataStructures/uniqueMap.js +18 -57
  918. package/utils/dataStructures/uniqueMap.mjs +18 -43
  919. package/utils/dataStructures/uniqueSet.js +5 -32
  920. package/utils/dataStructures/uniqueSet.mjs +5 -19
  921. package/utils/ghostTable.js +42 -106
  922. package/utils/ghostTable.mjs +40 -90
  923. package/utils/interval.js +17 -29
  924. package/utils/interval.mjs +18 -26
  925. package/utils/parseTable.js +11 -92
  926. package/utils/parseTable.mjs +11 -62
  927. package/utils/rootInstance.js +3 -14
  928. package/utils/rootInstance.mjs +3 -3
  929. package/utils/samplesGenerator.js +25 -51
  930. package/utils/samplesGenerator.mjs +25 -42
  931. package/utils/staticRegister.js +6 -33
  932. package/utils/staticRegister.mjs +6 -19
  933. package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
  934. package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
  935. package/validators/autocompleteValidator/index.js +0 -2
  936. package/validators/dateValidator/dateValidator.js +2 -21
  937. package/validators/dateValidator/dateValidator.mjs +2 -11
  938. package/validators/dateValidator/index.js +0 -2
  939. package/validators/index.js +0 -11
  940. package/validators/index.mjs +0 -1
  941. package/validators/numericValidator/index.js +0 -2
  942. package/validators/numericValidator/numericValidator.js +1 -7
  943. package/validators/numericValidator/numericValidator.mjs +1 -3
  944. package/validators/registry.js +7 -16
  945. package/validators/registry.mjs +7 -14
  946. package/validators/timeValidator/index.js +0 -2
  947. package/validators/timeValidator/timeValidator.js +6 -18
  948. package/validators/timeValidator/timeValidator.mjs +8 -13
@@ -1,25 +1,30 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
1
2
  import "core-js/modules/es.array.concat.js";
2
3
  import "core-js/modules/es.object.to-string.js";
3
4
  import "core-js/modules/web.dom-collections.for-each.js";
4
5
  import "core-js/modules/web.timers.js";
6
+ import "core-js/modules/es.symbol.to-primitive.js";
7
+ import "core-js/modules/es.date.to-primitive.js";
8
+ import "core-js/modules/es.symbol.js";
9
+ import "core-js/modules/es.symbol.description.js";
10
+ import "core-js/modules/es.number.constructor.js";
5
11
  import "core-js/modules/es.object.set-prototype-of.js";
6
12
  import "core-js/modules/es.reflect.construct.js";
7
-
13
+ import "core-js/modules/es.symbol.iterator.js";
14
+ import "core-js/modules/es.array.iterator.js";
15
+ import "core-js/modules/es.string.iterator.js";
16
+ import "core-js/modules/web.dom-collections.iterator.js";
8
17
  function _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct.bind(); } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }
9
-
10
18
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
11
-
12
19
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
13
-
14
20
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
15
-
16
- 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); } }
17
-
21
+ 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, _toPropertyKey(descriptor.key), descriptor); } }
18
22
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
19
-
20
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
-
23
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
24
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
25
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
22
26
  import { getScrollableElement, getScrollbarWidth } from "../../../helpers/dom/element.mjs";
27
+ import { requestAnimationFrame } from "../../../helpers/feature.mjs";
23
28
  import { arrayEach } from "../../../helpers/array.mjs";
24
29
  import { isKey } from "../../../helpers/unicode.mjs";
25
30
  import { isChrome } from "../../../helpers/browser.mjs";
@@ -27,7 +32,6 @@ import { InlineStartOverlay, TopOverlay, TopInlineStartCornerOverlay, BottomOver
27
32
  /**
28
33
  * @class Overlays
29
34
  */
30
-
31
35
  var Overlays = /*#__PURE__*/function () {
32
36
  /**
33
37
  * Walkontable instance's reference.
@@ -85,6 +89,14 @@ var Overlays = /*#__PURE__*/function () {
85
89
  * @type {Settings}
86
90
  */
87
91
 
92
+ /**
93
+ * The instance of the ResizeObserver that observes the size of the Walkontable wrapper element.
94
+ * In case of the size change detection the `onContainerElementResize` is fired.
95
+ *
96
+ * @private
97
+ * @type {ResizeObserver}
98
+ */
99
+
88
100
  /**
89
101
  * @param {Walkontable} wotInstance The Walkontable instance. @todo refactoring remove.
90
102
  * @param {FacadeGetter} facadeGetter Function which return proper facade.
@@ -94,37 +106,38 @@ var Overlays = /*#__PURE__*/function () {
94
106
  * @param {MasterTable} wtTable The master table.
95
107
  */
96
108
  function Overlays(wotInstance, facadeGetter, domBindings, wtSettings, eventManager, wtTable) {
109
+ var _this = this;
97
110
  _classCallCheck(this, Overlays);
98
-
99
111
  _defineProperty(this, "wot", null);
100
-
101
112
  _defineProperty(this, "topOverlay", null);
102
-
103
113
  _defineProperty(this, "bottomOverlay", null);
104
-
105
114
  _defineProperty(this, "inlineStartOverlay", null);
106
-
107
115
  _defineProperty(this, "topInlineStartCornerOverlay", null);
108
-
109
116
  _defineProperty(this, "bottomInlineStartCornerOverlay", null);
110
-
111
117
  _defineProperty(this, "browserLineHeight", undefined);
112
-
113
118
  _defineProperty(this, "wtSettings", null);
114
-
119
+ _defineProperty(this, "resizeObserver", new ResizeObserver(function (entries) {
120
+ requestAnimationFrame(function () {
121
+ if (!Array.isArray(entries) || !entries.length) {
122
+ return;
123
+ }
124
+ _this.wtSettings.getSetting('onContainerElementResize');
125
+ });
126
+ }));
115
127
  this.wot = wotInstance;
116
128
  this.wtSettings = wtSettings;
117
129
  this.domBindings = domBindings;
118
130
  this.facadeGetter = facadeGetter;
119
131
  this.wtTable = wtTable;
120
132
  var _this$domBindings = this.domBindings,
121
- rootDocument = _this$domBindings.rootDocument,
122
- rootWindow = _this$domBindings.rootWindow; // legacy support
133
+ rootDocument = _this$domBindings.rootDocument,
134
+ rootWindow = _this$domBindings.rootWindow;
123
135
 
136
+ // legacy support
124
137
  this.instance = this.wot; // todo refactoring: move to facade
138
+ this.eventManager = eventManager;
125
139
 
126
- this.eventManager = eventManager; // TODO refactoring: probably invalid place to this logic
127
-
140
+ // TODO refactoring: probably invalid place to this logic
128
141
  this.scrollbarSize = getScrollbarWidth(rootDocument);
129
142
  var isOverflowHidden = rootWindow.getComputedStyle(wtTable.wtRootElement.parentNode).getPropertyValue('overflow') === 'hidden';
130
143
  this.scrollableElement = isOverflowHidden ? wtTable.holder : getScrollableElement(wtTable.TABLE);
@@ -144,94 +157,90 @@ var Overlays = /*#__PURE__*/function () {
144
157
  this.lastScrollX = rootWindow.scrollX;
145
158
  this.lastScrollY = rootWindow.scrollY;
146
159
  }
160
+
147
161
  /**
148
162
  * Retrieve browser line height and apply its value to `browserLineHeight`.
149
163
  *
150
164
  * @private
151
165
  */
152
-
153
-
154
166
  _createClass(Overlays, [{
155
167
  key: "initBrowserLineHeight",
156
168
  value: function initBrowserLineHeight() {
157
169
  var _this$domBindings2 = this.domBindings,
158
- rootWindow = _this$domBindings2.rootWindow,
159
- rootDocument = _this$domBindings2.rootDocument;
170
+ rootWindow = _this$domBindings2.rootWindow,
171
+ rootDocument = _this$domBindings2.rootDocument;
160
172
  var computedStyle = rootWindow.getComputedStyle(rootDocument.body);
161
173
  /**
162
174
  * Sometimes `line-height` might be set to 'normal'. In that case, a default `font-size` should be multiplied by roughly 1.2.
163
175
  * Https://developer.mozilla.org/pl/docs/Web/CSS/line-height#Values.
164
176
  */
165
-
166
177
  var lineHeight = parseInt(computedStyle.lineHeight, 10);
167
178
  var lineHeightFalback = parseInt(computedStyle.fontSize, 10) * 1.2;
168
179
  this.browserLineHeight = lineHeight || lineHeightFalback;
169
180
  }
181
+
170
182
  /**
171
183
  * Prepare overlays based on user settings.
172
184
  *
173
185
  * @private
174
186
  */
175
-
176
187
  }, {
177
188
  key: "initOverlays",
178
189
  value: function initOverlays() {
179
- var args = [this.wot, this.facadeGetter, this.wtSettings, this.domBindings]; // todo refactoring: IOC, collection or factories.
180
- // TODO refactoring, conceive about using generic collection of overlays.
190
+ var args = [this.wot, this.facadeGetter, this.wtSettings, this.domBindings];
181
191
 
192
+ // todo refactoring: IOC, collection or factories.
193
+ // TODO refactoring, conceive about using generic collection of overlays.
182
194
  this.topOverlay = _construct(TopOverlay, args);
183
195
  this.bottomOverlay = _construct(BottomOverlay, args);
184
- this.inlineStartOverlay = _construct(InlineStartOverlay, args); // TODO discuss, the controversial here would be removing the lazy creation mechanism for corners.
185
- // TODO cond. Has no any visual impact. They're initially hidden in same way like left, top, and bottom overlays.
196
+ this.inlineStartOverlay = _construct(InlineStartOverlay, args);
186
197
 
198
+ // TODO discuss, the controversial here would be removing the lazy creation mechanism for corners.
199
+ // TODO cond. Has no any visual impact. They're initially hidden in same way like left, top, and bottom overlays.
187
200
  this.topInlineStartCornerOverlay = _construct(TopInlineStartCornerOverlay, args.concat([this.topOverlay, this.inlineStartOverlay]));
188
201
  this.bottomInlineStartCornerOverlay = _construct(BottomInlineStartCornerOverlay, args.concat([this.bottomOverlay, this.inlineStartOverlay]));
189
202
  }
203
+
190
204
  /**
191
205
  * Update state of rendering, check if changed.
192
206
  *
193
207
  * @package
194
208
  * @returns {boolean} Returns `true` if changes applied to overlay needs scroll synchronization.
195
209
  */
196
-
197
210
  }, {
198
211
  key: "updateStateOfRendering",
199
212
  value: function updateStateOfRendering() {
200
213
  var syncScroll = this.topOverlay.updateStateOfRendering();
201
214
  syncScroll = this.bottomOverlay.updateStateOfRendering() || syncScroll;
202
- syncScroll = this.inlineStartOverlay.updateStateOfRendering() || syncScroll; // todo refactoring: move conditions into updateStateOfRendering(),
215
+ syncScroll = this.inlineStartOverlay.updateStateOfRendering() || syncScroll;
203
216
 
217
+ // todo refactoring: move conditions into updateStateOfRendering(),
204
218
  if (this.inlineStartOverlay.needFullRender) {
205
219
  if (this.topOverlay.needFullRender) {
206
220
  syncScroll = this.topInlineStartCornerOverlay.updateStateOfRendering() || syncScroll;
207
221
  }
208
-
209
222
  if (this.bottomOverlay.needFullRender) {
210
223
  syncScroll = this.bottomInlineStartCornerOverlay.updateStateOfRendering() || syncScroll;
211
224
  }
212
225
  }
213
-
214
226
  return syncScroll;
215
227
  }
228
+
216
229
  /**
217
230
  * Refresh and redraw table.
218
231
  */
219
-
220
232
  }, {
221
233
  key: "refreshAll",
222
234
  value: function refreshAll() {
223
235
  if (!this.wot.drawn) {
224
236
  return;
225
237
  }
226
-
227
238
  if (!this.wtTable.holder.parentNode) {
228
239
  // Walkontable was detached from DOM, but this handler was not removed
229
240
  this.destroy();
230
241
  return;
231
242
  }
232
-
233
243
  this.wot.draw(true);
234
-
235
244
  if (this.verticalScrolling) {
236
245
  this.inlineStartOverlay.onScroll(); // todo the inlineStartOverlay.onScroll() fires hook. Why is it needed there, not in any another place?
237
246
  }
@@ -239,67 +248,61 @@ var Overlays = /*#__PURE__*/function () {
239
248
  if (this.horizontalScrolling) {
240
249
  this.topOverlay.onScroll();
241
250
  }
242
-
243
251
  this.verticalScrolling = false;
244
252
  this.horizontalScrolling = false;
245
253
  }
254
+
246
255
  /**
247
256
  * Register all necessary event listeners.
248
257
  */
249
-
250
258
  }, {
251
259
  key: "registerListeners",
252
260
  value: function registerListeners() {
253
- var _this = this;
254
-
261
+ var _this2 = this;
255
262
  var _this$domBindings3 = this.domBindings,
256
- rootDocument = _this$domBindings3.rootDocument,
257
- rootWindow = _this$domBindings3.rootWindow;
263
+ rootDocument = _this$domBindings3.rootDocument,
264
+ rootWindow = _this$domBindings3.rootWindow;
258
265
  var topOverlayScrollableElement = this.topOverlay.mainTableScrollableElement;
259
266
  var inlineStartOverlayScrollableElement = this.inlineStartOverlay.mainTableScrollableElement;
260
267
  this.eventManager.addEventListener(rootDocument.documentElement, 'keydown', function (event) {
261
- return _this.onKeyDown(event);
268
+ return _this2.onKeyDown(event);
262
269
  });
263
270
  this.eventManager.addEventListener(rootDocument.documentElement, 'keyup', function () {
264
- return _this.onKeyUp();
271
+ return _this2.onKeyUp();
265
272
  });
266
273
  this.eventManager.addEventListener(rootDocument, 'visibilitychange', function () {
267
- return _this.onKeyUp();
274
+ return _this2.onKeyUp();
268
275
  });
269
276
  this.eventManager.addEventListener(topOverlayScrollableElement, 'scroll', function (event) {
270
- return _this.onTableScroll(event);
277
+ return _this2.onTableScroll(event);
271
278
  }, {
272
279
  passive: true
273
280
  });
274
-
275
281
  if (topOverlayScrollableElement !== inlineStartOverlayScrollableElement) {
276
282
  this.eventManager.addEventListener(inlineStartOverlayScrollableElement, 'scroll', function (event) {
277
- return _this.onTableScroll(event);
283
+ return _this2.onTableScroll(event);
278
284
  }, {
279
285
  passive: true
280
286
  });
281
287
  }
282
-
283
288
  var isHighPixelRatio = rootWindow.devicePixelRatio && rootWindow.devicePixelRatio > 1;
284
289
  var isScrollOnWindow = this.scrollableElement === rootWindow;
285
290
  var preventWheel = this.wtSettings.getSetting('preventWheel');
286
291
  var wheelEventOptions = {
287
292
  passive: isScrollOnWindow
288
293
  };
289
-
290
294
  if (preventWheel || isHighPixelRatio || !isChrome()) {
291
295
  this.eventManager.addEventListener(this.wtTable.wtRootElement, 'wheel', function (event) {
292
- return _this.onCloneWheel(event, preventWheel);
296
+ return _this2.onCloneWheel(event, preventWheel);
293
297
  }, wheelEventOptions);
294
298
  }
295
-
296
299
  var overlays = [this.topOverlay, this.bottomOverlay, this.inlineStartOverlay, this.topInlineStartCornerOverlay, this.bottomInlineStartCornerOverlay];
297
300
  overlays.forEach(function (overlay) {
298
301
  if (overlay && overlay.needFullRender) {
299
302
  var holder = overlay.clone.wtTable.holder; // todo rethink, maybe: overlay.getHolder()
300
303
 
301
- _this.eventManager.addEventListener(holder, 'wheel', function (event) {
302
- return _this.onCloneWheel(event, preventWheel);
304
+ _this2.eventManager.addEventListener(holder, 'wheel', function (event) {
305
+ return _this2.onCloneWheel(event, preventWheel);
303
306
  }, wheelEventOptions);
304
307
  }
305
308
  });
@@ -307,25 +310,28 @@ var Overlays = /*#__PURE__*/function () {
307
310
  this.eventManager.addEventListener(rootWindow, 'resize', function () {
308
311
  clearTimeout(resizeTimeout);
309
312
  resizeTimeout = setTimeout(function () {
310
- _this.wtSettings.getSetting('onWindowResize');
313
+ _this2.wtSettings.getSetting('onWindowResize');
311
314
  }, 200);
312
315
  });
316
+ if (!isScrollOnWindow) {
317
+ this.resizeObserver.observe(this.wtTable.wtRootElement.parentElement);
318
+ }
313
319
  }
320
+
314
321
  /**
315
322
  * Deregister all previously registered listeners.
316
323
  */
317
-
318
324
  }, {
319
325
  key: "deregisterListeners",
320
326
  value: function deregisterListeners() {
321
327
  this.eventManager.clearEvents(true);
322
328
  }
329
+
323
330
  /**
324
331
  * Scroll listener.
325
332
  *
326
333
  * @param {Event} event The mouse event object.
327
334
  */
328
-
329
335
  }, {
330
336
  key: "onTableScroll",
331
337
  value: function onTableScroll(event) {
@@ -334,68 +340,69 @@ var Overlays = /*#__PURE__*/function () {
334
340
  var rootWindow = this.domBindings.rootWindow;
335
341
  var masterHorizontal = this.inlineStartOverlay.mainTableScrollableElement;
336
342
  var masterVertical = this.topOverlay.mainTableScrollableElement;
337
- var target = event.target; // For key press, sync only master -> overlay position because while pressing Walkontable.render is triggered
338
- // by hot.refreshBorder
343
+ var target = event.target;
339
344
 
345
+ // For key press, sync only master -> overlay position because while pressing Walkontable.render is triggered
346
+ // by hot.refreshBorder
340
347
  if (this.keyPressed) {
341
348
  if (masterVertical !== rootWindow && target !== rootWindow && !event.target.contains(masterVertical) || masterHorizontal !== rootWindow && target !== rootWindow && !event.target.contains(masterHorizontal)) {
342
349
  return;
343
350
  }
344
351
  }
345
-
346
352
  this.syncScrollPositions(event);
347
353
  }
354
+
348
355
  /**
349
356
  * Wheel listener for cloned overlays.
350
357
  *
351
358
  * @param {Event} event The mouse event object.
352
359
  * @param {boolean} preventDefault If `true`, the `preventDefault` will be called on event object.
353
360
  */
354
-
355
361
  }, {
356
362
  key: "onCloneWheel",
357
363
  value: function onCloneWheel(event, preventDefault) {
358
- var rootWindow = this.domBindings.rootWindow; // There was if statement which controlled flow of this function. It avoided the execution of the next lines
364
+ var rootWindow = this.domBindings.rootWindow;
365
+
366
+ // There was if statement which controlled flow of this function. It avoided the execution of the next lines
359
367
  // on mobile devices. It was changed. Broader description of this case is included within issue #4856.
360
368
 
361
369
  var masterHorizontal = this.inlineStartOverlay.mainTableScrollableElement;
362
370
  var masterVertical = this.topOverlay.mainTableScrollableElement;
363
- var target = event.target; // For key press, sync only master -> overlay position because while pressing Walkontable.render is triggered
364
- // by hot.refreshBorder
371
+ var target = event.target;
365
372
 
373
+ // For key press, sync only master -> overlay position because while pressing Walkontable.render is triggered
374
+ // by hot.refreshBorder
366
375
  var shouldNotWheelVertically = masterVertical !== rootWindow && target !== rootWindow && !target.contains(masterVertical);
367
376
  var shouldNotWheelHorizontally = masterHorizontal !== rootWindow && target !== rootWindow && !target.contains(masterHorizontal);
368
-
369
377
  if (this.keyPressed && (shouldNotWheelVertically || shouldNotWheelHorizontally)) {
370
378
  return;
371
379
  }
372
-
373
380
  var isScrollPossible = this.translateMouseWheelToScroll(event);
374
-
375
381
  if (preventDefault || this.scrollableElement !== rootWindow && isScrollPossible) {
376
382
  event.preventDefault();
377
383
  }
378
384
  }
385
+
379
386
  /**
380
387
  * Key down listener.
381
388
  *
382
389
  * @param {Event} event The keyboard event object.
383
390
  */
384
-
385
391
  }, {
386
392
  key: "onKeyDown",
387
393
  value: function onKeyDown(event) {
388
394
  this.keyPressed = isKey(event.keyCode, 'ARROW_UP|ARROW_RIGHT|ARROW_DOWN|ARROW_LEFT');
389
395
  }
396
+
390
397
  /**
391
398
  * Key up listener.
392
399
  */
393
-
394
400
  }, {
395
401
  key: "onKeyUp",
396
402
  value: function onKeyUp() {
397
403
  this.keyPressed = false;
398
404
  }
405
+
399
406
  /**
400
407
  * Translate wheel event into scroll event and sync scroll overlays position.
401
408
  *
@@ -403,29 +410,26 @@ var Overlays = /*#__PURE__*/function () {
403
410
  * @param {Event} event The mouse event object.
404
411
  * @returns {boolean}
405
412
  */
406
-
407
413
  }, {
408
414
  key: "translateMouseWheelToScroll",
409
415
  value: function translateMouseWheelToScroll(event) {
410
416
  var deltaY = isNaN(event.deltaY) ? -1 * event.wheelDeltaY : event.deltaY;
411
417
  var deltaX = isNaN(event.deltaX) ? -1 * event.wheelDeltaX : event.deltaX;
412
-
413
418
  if (event.deltaMode === 1) {
414
419
  deltaX += deltaX * this.browserLineHeight;
415
420
  deltaY += deltaY * this.browserLineHeight;
416
421
  }
417
-
418
422
  var isScrollVerticallyPossible = this.scrollVertically(deltaY);
419
423
  var isScrollHorizontallyPossible = this.scrollHorizontally(deltaX);
420
424
  return isScrollVerticallyPossible || isScrollHorizontallyPossible;
421
425
  }
426
+
422
427
  /**
423
428
  * Scrolls main scrollable element horizontally.
424
429
  *
425
430
  * @param {number} delta Relative value to scroll.
426
431
  * @returns {boolean}
427
432
  */
428
-
429
433
  }, {
430
434
  key: "scrollVertically",
431
435
  value: function scrollVertically(delta) {
@@ -433,13 +437,13 @@ var Overlays = /*#__PURE__*/function () {
433
437
  this.scrollableElement.scrollTop += delta;
434
438
  return previousScroll !== this.scrollableElement.scrollTop;
435
439
  }
440
+
436
441
  /**
437
442
  * Scrolls main scrollable element horizontally.
438
443
  *
439
444
  * @param {number} delta Relative value to scroll.
440
445
  * @returns {boolean}
441
446
  */
442
-
443
447
  }, {
444
448
  key: "scrollHorizontally",
445
449
  value: function scrollHorizontally(delta) {
@@ -447,32 +451,29 @@ var Overlays = /*#__PURE__*/function () {
447
451
  this.scrollableElement.scrollLeft += delta;
448
452
  return previousScroll !== this.scrollableElement.scrollLeft;
449
453
  }
454
+
450
455
  /**
451
456
  * Synchronize scroll position between master table and overlay table.
452
457
  *
453
458
  * @private
454
459
  */
455
-
456
460
  }, {
457
461
  key: "syncScrollPositions",
458
462
  value: function syncScrollPositions() {
459
463
  if (this.destroyed) {
460
464
  return;
461
465
  }
462
-
463
466
  var rootWindow = this.domBindings.rootWindow;
464
467
  var topHolder = this.topOverlay.clone.wtTable.holder; // todo rethink
465
-
466
468
  var leftHolder = this.inlineStartOverlay.clone.wtTable.holder; // todo rethink
467
469
 
468
470
  var _ref = [this.scrollableElement.scrollLeft, this.scrollableElement.scrollTop],
469
- scrollLeft = _ref[0],
470
- scrollTop = _ref[1];
471
+ scrollLeft = _ref[0],
472
+ scrollTop = _ref[1];
471
473
  this.horizontalScrolling = topHolder.scrollLeft !== scrollLeft || this.lastScrollX !== rootWindow.scrollX;
472
474
  this.verticalScrolling = leftHolder.scrollTop !== scrollTop || this.lastScrollY !== rootWindow.scrollY;
473
475
  this.lastScrollX = rootWindow.scrollX;
474
476
  this.lastScrollY = rootWindow.scrollY;
475
-
476
477
  if (this.horizontalScrolling) {
477
478
  topHolder.scrollLeft = scrollLeft;
478
479
  var bottomHolder = this.bottomOverlay.needFullRender ? this.bottomOverlay.clone.wtTable.holder : null; // todo rethink
@@ -481,24 +482,21 @@ var Overlays = /*#__PURE__*/function () {
481
482
  bottomHolder.scrollLeft = scrollLeft;
482
483
  }
483
484
  }
484
-
485
485
  if (this.verticalScrolling) {
486
486
  leftHolder.scrollTop = scrollTop;
487
487
  }
488
-
489
488
  this.refreshAll();
490
489
  }
490
+
491
491
  /**
492
492
  * Synchronize overlay scrollbars with the master scrollbar.
493
493
  */
494
-
495
494
  }, {
496
495
  key: "syncScrollWithMaster",
497
496
  value: function syncScrollWithMaster() {
498
497
  var master = this.topOverlay.mainTableScrollableElement;
499
498
  var scrollLeft = master.scrollLeft,
500
- scrollTop = master.scrollTop;
501
-
499
+ scrollTop = master.scrollTop;
502
500
  if (this.topOverlay.needFullRender) {
503
501
  this.topOverlay.clone.wtTable.holder.scrollLeft = scrollLeft; // todo rethink, *overlay.setScroll*()
504
502
  }
@@ -511,100 +509,102 @@ var Overlays = /*#__PURE__*/function () {
511
509
  this.inlineStartOverlay.clone.wtTable.holder.scrollTop = scrollTop; // todo rethink, *overlay.setScroll*()
512
510
  }
513
511
  }
512
+
514
513
  /**
515
514
  * Update the main scrollable elements for all the overlays.
516
515
  */
517
-
518
516
  }, {
519
517
  key: "updateMainScrollableElements",
520
518
  value: function updateMainScrollableElements() {
521
519
  this.deregisterListeners();
522
520
  this.inlineStartOverlay.updateMainScrollableElement();
523
521
  this.topOverlay.updateMainScrollableElement();
524
-
525
522
  if (this.bottomOverlay.needFullRender) {
526
523
  this.bottomOverlay.updateMainScrollableElement();
527
524
  }
528
-
529
525
  var wtTable = this.wtTable;
530
526
  var rootWindow = this.domBindings.rootWindow;
531
-
532
527
  if (rootWindow.getComputedStyle(wtTable.wtRootElement.parentNode).getPropertyValue('overflow') === 'hidden') {
533
528
  this.scrollableElement = wtTable.holder;
534
529
  } else {
535
530
  this.scrollableElement = getScrollableElement(wtTable.TABLE);
536
531
  }
537
-
538
532
  this.registerListeners();
539
533
  }
534
+
540
535
  /**
541
536
  *
542
537
  */
543
-
544
538
  }, {
545
539
  key: "destroy",
546
540
  value: function destroy() {
547
- this.eventManager.destroy(); // todo, probably all below `destory` calls has no sense. To analyze
548
-
541
+ this.resizeObserver.disconnect();
542
+ this.eventManager.destroy();
543
+ // todo, probably all below `destory` calls has no sense. To analyze
549
544
  this.topOverlay.destroy();
550
-
551
545
  if (this.bottomOverlay.clone) {
552
546
  this.bottomOverlay.destroy();
553
547
  }
554
-
555
548
  this.inlineStartOverlay.destroy();
556
-
557
549
  if (this.topInlineStartCornerOverlay) {
558
550
  this.topInlineStartCornerOverlay.destroy();
559
551
  }
560
-
561
552
  if (this.bottomInlineStartCornerOverlay && this.bottomInlineStartCornerOverlay.clone) {
562
553
  this.bottomInlineStartCornerOverlay.destroy();
563
554
  }
564
-
565
555
  this.destroyed = true;
566
556
  }
557
+
567
558
  /**
568
559
  * @param {boolean} [fastDraw=false] When `true`, try to refresh only the positions of borders without rerendering
569
560
  * the data. It will only work if Table.draw() does not force
570
561
  * rendering anyway.
571
562
  */
572
-
573
563
  }, {
574
564
  key: "refresh",
575
565
  value: function refresh() {
576
566
  var fastDraw = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
577
- var spreader = this.wtTable.spreader;
578
- var width = spreader.clientWidth;
579
- var height = spreader.clientHeight;
580
-
581
- if (width !== this.spreaderLastSize.width || height !== this.spreaderLastSize.height) {
582
- this.spreaderLastSize.width = width;
583
- this.spreaderLastSize.height = height;
567
+ var wasSpreaderSizeUpdated = this.updateLastSpreaderSize();
568
+ if (wasSpreaderSizeUpdated) {
584
569
  this.adjustElementsSize();
585
570
  }
586
-
587
571
  if (this.bottomOverlay.clone) {
588
572
  this.bottomOverlay.refresh(fastDraw);
589
573
  }
590
-
591
574
  this.inlineStartOverlay.refresh(fastDraw);
592
575
  this.topOverlay.refresh(fastDraw);
593
-
594
576
  if (this.topInlineStartCornerOverlay) {
595
577
  this.topInlineStartCornerOverlay.refresh(fastDraw);
596
578
  }
597
-
598
579
  if (this.bottomInlineStartCornerOverlay && this.bottomInlineStartCornerOverlay.clone) {
599
580
  this.bottomInlineStartCornerOverlay.refresh(fastDraw);
600
581
  }
601
582
  }
583
+
584
+ /**
585
+ * Update the last cached spreader size with the current size.
586
+ *
587
+ * @returns {boolean} `true` if the lastSpreaderSize cache was updated, `false` otherwise.
588
+ */
589
+ }, {
590
+ key: "updateLastSpreaderSize",
591
+ value: function updateLastSpreaderSize() {
592
+ var spreader = this.wtTable.spreader;
593
+ var width = spreader.clientWidth;
594
+ var height = spreader.clientHeight;
595
+ var needsUpdating = width !== this.spreaderLastSize.width || height !== this.spreaderLastSize.height;
596
+ if (needsUpdating) {
597
+ this.spreaderLastSize.width = width;
598
+ this.spreaderLastSize.height = height;
599
+ }
600
+ return needsUpdating;
601
+ }
602
+
602
603
  /**
603
604
  * Adjust overlays elements size and master table size.
604
605
  *
605
606
  * @param {boolean} [force=false] When `true`, it adjust the DOM nodes sizes for all overlays.
606
607
  */
607
-
608
608
  }, {
609
609
  key: "adjustElementsSize",
610
610
  value: function adjustElementsSize() {
@@ -618,69 +618,61 @@ var Overlays = /*#__PURE__*/function () {
618
618
  var hiderStyle = wtTable.hider.style;
619
619
  hiderStyle.width = "".concat(headerRowSize + this.inlineStartOverlay.sumCellSizes(0, totalColumns), "px");
620
620
  hiderStyle.height = "".concat(headerColumnSize + this.topOverlay.sumCellSizes(0, totalRows) + 1, "px");
621
-
622
621
  if (this.scrollbarSize > 0) {
623
622
  // todo refactoring, looking as a part of logic which should be moved outside the class
624
623
  var _wtTable$wtRootElemen = wtTable.wtRootElement,
625
- rootElemScrollHeight = _wtTable$wtRootElemen.scrollHeight,
626
- rootElemScrollWidth = _wtTable$wtRootElemen.scrollWidth;
624
+ rootElemScrollHeight = _wtTable$wtRootElemen.scrollHeight,
625
+ rootElemScrollWidth = _wtTable$wtRootElemen.scrollWidth;
627
626
  var _wtTable$holder = wtTable.holder,
628
- holderScrollHeight = _wtTable$holder.scrollHeight,
629
- holderScrollWidth = _wtTable$holder.scrollWidth;
627
+ holderScrollHeight = _wtTable$holder.scrollHeight,
628
+ holderScrollWidth = _wtTable$holder.scrollWidth;
630
629
  this.hasScrollbarRight = rootElemScrollHeight < holderScrollHeight;
631
630
  this.hasScrollbarBottom = rootElemScrollWidth < holderScrollWidth;
632
-
633
631
  if (this.hasScrollbarRight && wtTable.hider.scrollWidth + this.scrollbarSize > rootElemScrollWidth) {
634
632
  this.hasScrollbarBottom = true;
635
633
  } else if (this.hasScrollbarBottom && wtTable.hider.scrollHeight + this.scrollbarSize > rootElemScrollHeight) {
636
634
  this.hasScrollbarRight = true;
637
635
  }
638
636
  }
639
-
640
637
  this.topOverlay.adjustElementsSize(force);
641
638
  this.inlineStartOverlay.adjustElementsSize(force);
642
639
  this.bottomOverlay.adjustElementsSize(force);
643
640
  }
641
+
644
642
  /**
645
643
  *
646
644
  */
647
-
648
645
  }, {
649
646
  key: "applyToDOM",
650
647
  value: function applyToDOM() {
651
648
  if (!this.wtTable.isVisible()) {
652
649
  return;
653
650
  }
654
-
655
651
  this.topOverlay.applyToDOM();
656
-
657
652
  if (this.bottomOverlay.clone) {
658
653
  this.bottomOverlay.applyToDOM();
659
654
  }
660
-
661
655
  this.inlineStartOverlay.applyToDOM();
662
656
  }
657
+
663
658
  /**
664
659
  * Get the parent overlay of the provided element.
665
660
  *
666
661
  * @param {HTMLElement} element An element to process.
667
662
  * @returns {object|null}
668
663
  */
669
-
670
664
  }, {
671
665
  key: "getParentOverlay",
672
666
  value: function getParentOverlay(element) {
673
667
  if (!element) {
674
668
  return null;
675
669
  }
676
-
677
670
  var overlays = [this.topOverlay, this.inlineStartOverlay, this.bottomOverlay, this.topInlineStartCornerOverlay, this.bottomInlineStartCornerOverlay];
678
671
  var result = null;
679
672
  arrayEach(overlays, function (overlay) {
680
673
  if (!overlay) {
681
674
  return;
682
675
  }
683
-
684
676
  if (overlay.clone && overlay.clone.wtTable.TABLE.contains(element)) {
685
677
  // todo demeter
686
678
  result = overlay.clone;
@@ -688,11 +680,11 @@ var Overlays = /*#__PURE__*/function () {
688
680
  });
689
681
  return result;
690
682
  }
683
+
691
684
  /**
692
685
  * Synchronize the class names between the main overlay table and the tables on the other overlays.
693
686
  *
694
687
  */
695
-
696
688
  }, {
697
689
  key: "syncOverlayTableClassNames",
698
690
  value: function syncOverlayTableClassNames() {
@@ -702,13 +694,10 @@ var Overlays = /*#__PURE__*/function () {
702
694
  if (!elem) {
703
695
  return;
704
696
  }
705
-
706
697
  elem.clone.wtTable.TABLE.className = masterTable.className; // todo demeter
707
698
  });
708
699
  }
709
700
  }]);
710
-
711
701
  return Overlays;
712
702
  }();
713
-
714
703
  export default Overlays;