handsontable 11.0.0 → 12.0.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 (633) hide show
  1. package/3rdparty/walkontable/src/border.js +121 -99
  2. package/3rdparty/walkontable/src/border.mjs +122 -96
  3. package/3rdparty/walkontable/src/calculator/viewportColumns.js +1 -1
  4. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +1 -1
  5. package/3rdparty/walkontable/src/calculator/viewportRows.js +1 -1
  6. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +1 -1
  7. package/3rdparty/walkontable/src/cell/coords.js +60 -18
  8. package/3rdparty/walkontable/src/cell/coords.mjs +56 -18
  9. package/3rdparty/walkontable/src/cell/range.d.ts +10 -2
  10. package/3rdparty/walkontable/src/cell/range.js +279 -100
  11. package/3rdparty/walkontable/src/cell/range.mjs +274 -100
  12. package/3rdparty/walkontable/src/core/_base.js +452 -0
  13. package/3rdparty/walkontable/src/core/_base.mjs +440 -0
  14. package/3rdparty/walkontable/src/core/clone.js +97 -0
  15. package/3rdparty/walkontable/src/core/clone.mjs +80 -0
  16. package/3rdparty/walkontable/src/core/core.js +183 -0
  17. package/3rdparty/walkontable/src/core/core.mjs +160 -0
  18. package/3rdparty/walkontable/src/event.js +100 -67
  19. package/3rdparty/walkontable/src/event.mjs +100 -64
  20. package/3rdparty/walkontable/src/facade/core.js +251 -0
  21. package/3rdparty/walkontable/src/facade/core.mjs +243 -0
  22. package/3rdparty/walkontable/src/filter/column.js +1 -1
  23. package/3rdparty/walkontable/src/filter/column.mjs +1 -1
  24. package/3rdparty/walkontable/src/filter/row.js +1 -1
  25. package/3rdparty/walkontable/src/filter/row.mjs +1 -1
  26. package/3rdparty/walkontable/src/index.js +3 -47
  27. package/3rdparty/walkontable/src/index.mjs +3 -13
  28. package/3rdparty/walkontable/src/overlay/_base.js +125 -58
  29. package/3rdparty/walkontable/src/overlay/_base.mjs +126 -59
  30. package/3rdparty/walkontable/src/overlay/bottom.js +86 -76
  31. package/3rdparty/walkontable/src/overlay/bottom.mjs +86 -76
  32. package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.js → bottomInlineStartCorner.js} +35 -58
  33. package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +34 -57
  34. package/3rdparty/walkontable/src/overlay/constants.js +25 -9
  35. package/3rdparty/walkontable/src/overlay/constants.mjs +14 -4
  36. package/3rdparty/walkontable/src/overlay/index.js +10 -19
  37. package/3rdparty/walkontable/src/overlay/index.mjs +4 -5
  38. package/3rdparty/walkontable/src/overlay/{left.js → inlineStart.js} +102 -80
  39. package/3rdparty/walkontable/src/overlay/{left.mjs → inlineStart.mjs} +101 -79
  40. package/3rdparty/walkontable/src/overlay/top.js +84 -79
  41. package/3rdparty/walkontable/src/overlay/top.mjs +84 -79
  42. package/3rdparty/walkontable/src/overlay/{topLeftCorner.js → topInlineStartCorner.js} +56 -57
  43. package/3rdparty/walkontable/src/overlay/{topLeftCorner.mjs → topInlineStartCorner.mjs} +51 -52
  44. package/3rdparty/walkontable/src/overlays.js +226 -157
  45. package/3rdparty/walkontable/src/overlays.mjs +226 -156
  46. package/3rdparty/walkontable/src/renderer/_base.js +1 -1
  47. package/3rdparty/walkontable/src/renderer/_base.mjs +1 -1
  48. package/3rdparty/walkontable/src/renderer/cells.js +5 -4
  49. package/3rdparty/walkontable/src/renderer/cells.mjs +5 -4
  50. package/3rdparty/walkontable/src/renderer/colGroup.js +3 -3
  51. package/3rdparty/walkontable/src/renderer/colGroup.mjs +3 -3
  52. package/3rdparty/walkontable/src/renderer/columnHeaders.js +3 -3
  53. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +3 -3
  54. package/3rdparty/walkontable/src/renderer/index.js +1 -1
  55. package/3rdparty/walkontable/src/renderer/index.mjs +1 -1
  56. package/3rdparty/walkontable/src/renderer/rowHeaders.js +3 -3
  57. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +3 -3
  58. package/3rdparty/walkontable/src/renderer/rows.js +3 -3
  59. package/3rdparty/walkontable/src/renderer/rows.mjs +3 -3
  60. package/3rdparty/walkontable/src/renderer/table.js +1 -1
  61. package/3rdparty/walkontable/src/renderer/table.mjs +1 -1
  62. package/3rdparty/walkontable/src/scroll.js +61 -88
  63. package/3rdparty/walkontable/src/scroll.mjs +61 -88
  64. package/3rdparty/walkontable/src/selection.js +12 -16
  65. package/3rdparty/walkontable/src/selection.mjs +12 -14
  66. package/3rdparty/walkontable/src/settings.js +236 -127
  67. package/3rdparty/walkontable/src/settings.mjs +236 -126
  68. package/3rdparty/walkontable/src/table/bottom.js +21 -6
  69. package/3rdparty/walkontable/src/table/bottom.mjs +20 -6
  70. package/3rdparty/walkontable/src/table/{bottomLeftCorner.js → bottomInlineStartCorner.js} +31 -15
  71. package/3rdparty/walkontable/src/table/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +30 -15
  72. package/3rdparty/walkontable/src/table/{left.js → inlineStart.js} +27 -15
  73. package/3rdparty/walkontable/src/table/{left.mjs → inlineStart.mjs} +26 -15
  74. package/3rdparty/walkontable/src/table/master.js +23 -13
  75. package/3rdparty/walkontable/src/table/master.mjs +23 -13
  76. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +12 -6
  77. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +12 -6
  78. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +12 -6
  79. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +12 -6
  80. package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.js → stickyColumnsStart.js} +13 -7
  81. package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.mjs → stickyColumnsStart.mjs} +13 -7
  82. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +11 -5
  83. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +11 -5
  84. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +9 -3
  85. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +9 -3
  86. package/3rdparty/walkontable/src/table/top.js +21 -6
  87. package/3rdparty/walkontable/src/table/top.mjs +20 -6
  88. package/3rdparty/walkontable/src/table/{topLeftCorner.js → topInlineStartCorner.js} +31 -15
  89. package/3rdparty/walkontable/src/table/{topLeftCorner.mjs → topInlineStartCorner.mjs} +30 -15
  90. package/3rdparty/walkontable/src/table.js +236 -141
  91. package/3rdparty/walkontable/src/table.mjs +232 -135
  92. package/3rdparty/walkontable/src/types.js +103 -0
  93. package/3rdparty/walkontable/src/types.mjs +102 -0
  94. package/3rdparty/walkontable/src/utils/column.js +23 -34
  95. package/3rdparty/walkontable/src/utils/column.mjs +23 -31
  96. package/3rdparty/walkontable/src/utils/nodesPool.js +1 -1
  97. package/3rdparty/walkontable/src/utils/nodesPool.mjs +1 -1
  98. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +3 -3
  99. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +3 -3
  100. package/3rdparty/walkontable/src/utils/orderView/view.js +1 -1
  101. package/3rdparty/walkontable/src/utils/orderView/view.mjs +1 -1
  102. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +1 -1
  103. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +1 -1
  104. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +1 -1
  105. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +1 -1
  106. package/3rdparty/walkontable/src/utils/row.js +10 -5
  107. package/3rdparty/walkontable/src/utils/row.mjs +10 -5
  108. package/3rdparty/walkontable/src/viewport.js +78 -81
  109. package/3rdparty/walkontable/src/viewport.mjs +78 -78
  110. package/CHANGELOG.md +94 -17
  111. package/README.md +10 -7
  112. package/base.js +2 -2
  113. package/base.mjs +2 -2
  114. package/cellTypes/timeType/timeType.d.ts +6 -6
  115. package/cellTypes/timeType/timeType.js +4 -5
  116. package/cellTypes/timeType/timeType.mjs +4 -5
  117. package/core.d.ts +9 -3
  118. package/core.js +590 -157
  119. package/core.mjs +599 -169
  120. package/dataMap/dataMap.js +2 -2
  121. package/dataMap/dataMap.mjs +2 -2
  122. package/dataMap/index.js +8 -0
  123. package/dataMap/index.mjs +3 -1
  124. package/dataMap/metaManager/index.js +3 -3
  125. package/dataMap/metaManager/index.mjs +3 -3
  126. package/dataMap/metaManager/lazyFactoryMap.js +1 -1
  127. package/dataMap/metaManager/lazyFactoryMap.mjs +1 -1
  128. package/dataMap/metaManager/metaLayers/cellMeta.js +1 -1
  129. package/dataMap/metaManager/metaLayers/cellMeta.mjs +1 -1
  130. package/dataMap/metaManager/metaLayers/columnMeta.js +1 -1
  131. package/dataMap/metaManager/metaLayers/columnMeta.mjs +1 -1
  132. package/dataMap/metaManager/metaLayers/globalMeta.js +7 -3
  133. package/dataMap/metaManager/metaLayers/globalMeta.mjs +7 -3
  134. package/dataMap/metaManager/metaLayers/tableMeta.js +3 -3
  135. package/dataMap/metaManager/metaLayers/tableMeta.mjs +3 -3
  136. package/dataMap/metaManager/metaSchema.js +2931 -2676
  137. package/dataMap/metaManager/metaSchema.mjs +2931 -2676
  138. package/dataMap/metaManager/mods/dynamicCellMeta.js +1 -1
  139. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +1 -1
  140. package/dataMap/metaManager/mods/extendMetaProperties.js +126 -0
  141. package/dataMap/metaManager/mods/extendMetaProperties.mjs +113 -0
  142. package/dataMap/replaceData.js +140 -0
  143. package/dataMap/replaceData.mjs +124 -0
  144. package/dataSource.js +1 -1
  145. package/dataSource.mjs +1 -1
  146. package/dist/README.md +2 -2
  147. package/dist/handsontable.css +424 -166
  148. package/dist/handsontable.full.css +559 -298
  149. package/dist/handsontable.full.js +47163 -41289
  150. package/dist/handsontable.full.min.css +8 -13
  151. package/dist/handsontable.full.min.js +143 -142
  152. package/dist/handsontable.js +28270 -24105
  153. package/dist/handsontable.min.css +8 -11
  154. package/dist/handsontable.min.js +3 -3
  155. package/dist/languages/all.js +69 -38
  156. package/dist/languages/all.min.js +1 -1
  157. package/dist/languages/ar-AR.js +167 -0
  158. package/dist/languages/ar-AR.min.js +1 -0
  159. package/dist/languages/de-CH.js +32 -33
  160. package/dist/languages/de-CH.min.js +1 -1
  161. package/dist/languages/de-DE.js +5 -6
  162. package/dist/languages/de-DE.min.js +1 -1
  163. package/dist/languages/en-US.js +5 -6
  164. package/dist/languages/en-US.min.js +1 -1
  165. package/dist/languages/es-MX.js +5 -6
  166. package/dist/languages/es-MX.min.js +1 -1
  167. package/dist/languages/fr-FR.js +5 -6
  168. package/dist/languages/fr-FR.min.js +1 -1
  169. package/dist/languages/it-IT.js +5 -6
  170. package/dist/languages/it-IT.min.js +1 -1
  171. package/dist/languages/ja-JP.js +5 -6
  172. package/dist/languages/ja-JP.min.js +1 -1
  173. package/dist/languages/ko-KR.js +37 -42
  174. package/dist/languages/ko-KR.min.js +1 -1
  175. package/dist/languages/lv-LV.js +4 -6
  176. package/dist/languages/lv-LV.min.js +1 -1
  177. package/dist/languages/nb-NO.js +4 -6
  178. package/dist/languages/nb-NO.min.js +1 -1
  179. package/dist/languages/nl-NL.js +4 -6
  180. package/dist/languages/nl-NL.min.js +1 -1
  181. package/dist/languages/pl-PL.js +4 -6
  182. package/dist/languages/pl-PL.min.js +1 -1
  183. package/dist/languages/pt-BR.js +4 -6
  184. package/dist/languages/pt-BR.min.js +1 -1
  185. package/dist/languages/ru-RU.js +4 -6
  186. package/dist/languages/ru-RU.min.js +1 -1
  187. package/dist/languages/zh-CN.js +4 -6
  188. package/dist/languages/zh-CN.min.js +1 -1
  189. package/dist/languages/zh-TW.js +25 -27
  190. package/dist/languages/zh-TW.min.js +1 -1
  191. package/editorManager.js +121 -268
  192. package/editorManager.mjs +129 -279
  193. package/editors/autocompleteEditor/autocompleteEditor.js +19 -17
  194. package/editors/autocompleteEditor/autocompleteEditor.mjs +19 -17
  195. package/editors/baseEditor/baseEditor.js +207 -36
  196. package/editors/baseEditor/baseEditor.mjs +202 -34
  197. package/editors/checkboxEditor/checkboxEditor.js +3 -3
  198. package/editors/checkboxEditor/checkboxEditor.mjs +3 -3
  199. package/editors/dateEditor/dateEditor.js +22 -9
  200. package/editors/dateEditor/dateEditor.mjs +23 -10
  201. package/editors/dropdownEditor/dropdownEditor.js +4 -4
  202. package/editors/dropdownEditor/dropdownEditor.mjs +4 -4
  203. package/editors/handsontableEditor/handsontableEditor.js +107 -56
  204. package/editors/handsontableEditor/handsontableEditor.mjs +107 -56
  205. package/editors/index.d.ts +3 -0
  206. package/editors/index.js +6 -0
  207. package/editors/index.mjs +3 -1
  208. package/editors/numericEditor/numericEditor.js +3 -3
  209. package/editors/numericEditor/numericEditor.mjs +3 -3
  210. package/editors/passwordEditor/passwordEditor.js +4 -4
  211. package/editors/passwordEditor/passwordEditor.mjs +4 -4
  212. package/editors/selectEditor/selectEditor.js +66 -111
  213. package/editors/selectEditor/selectEditor.mjs +67 -110
  214. package/editors/textEditor/caretPositioner.js +49 -0
  215. package/editors/textEditor/caretPositioner.mjs +42 -0
  216. package/editors/textEditor/textEditor.js +206 -182
  217. package/editors/textEditor/textEditor.mjs +200 -180
  218. package/editors/timeEditor/index.d.ts +1 -0
  219. package/editors/timeEditor/index.js +9 -0
  220. package/editors/timeEditor/index.mjs +1 -0
  221. package/editors/timeEditor/timeEditor.d.ts +7 -0
  222. package/editors/timeEditor/timeEditor.js +105 -0
  223. package/editors/timeEditor/timeEditor.mjs +84 -0
  224. package/eventManager.js +11 -5
  225. package/eventManager.mjs +11 -5
  226. package/helpers/data.js +1 -1
  227. package/helpers/data.mjs +1 -1
  228. package/helpers/dom/element.js +1 -1
  229. package/helpers/dom/element.mjs +1 -1
  230. package/helpers/feature.js +1 -1
  231. package/helpers/feature.mjs +1 -1
  232. package/helpers/mixed.js +3 -3
  233. package/helpers/mixed.mjs +3 -3
  234. package/helpers/number.js +4 -4
  235. package/helpers/number.mjs +4 -4
  236. package/helpers/object.js +1 -1
  237. package/helpers/object.mjs +1 -1
  238. package/i18n/languages/ar-AR.js +41 -0
  239. package/i18n/languages/ar-AR.mjs +17 -0
  240. package/i18n/languages/de-CH.js +1 -1
  241. package/i18n/languages/de-DE.js +1 -1
  242. package/i18n/languages/en-US.js +1 -1
  243. package/i18n/languages/es-MX.js +1 -1
  244. package/i18n/languages/fr-FR.js +1 -1
  245. package/i18n/languages/index.js +4 -0
  246. package/i18n/languages/index.mjs +2 -1
  247. package/i18n/languages/it-IT.js +1 -1
  248. package/i18n/languages/ja-JP.js +1 -1
  249. package/i18n/languages/ko-KR.js +1 -1
  250. package/i18n/languages/lv-LV.js +1 -1
  251. package/i18n/languages/nb-NO.js +1 -1
  252. package/i18n/languages/nl-NL.js +1 -1
  253. package/i18n/languages/pl-PL.js +1 -1
  254. package/i18n/languages/pt-BR.js +1 -1
  255. package/i18n/languages/ru-RU.js +1 -1
  256. package/i18n/languages/zh-CN.js +1 -1
  257. package/i18n/languages/zh-TW.js +1 -1
  258. package/i18n/registry.js +1 -1
  259. package/index.d.ts +4 -0
  260. package/index.js +1 -1
  261. package/languages/all.js +69 -38
  262. package/languages/ar-AR.js +167 -0
  263. package/languages/ar-AR.mjs +19 -0
  264. package/languages/de-CH.js +32 -33
  265. package/languages/de-DE.js +5 -6
  266. package/languages/en-US.js +5 -6
  267. package/languages/es-MX.js +5 -6
  268. package/languages/fr-FR.js +5 -6
  269. package/languages/index.js +69 -38
  270. package/languages/index.mjs +2 -1
  271. package/languages/it-IT.js +5 -6
  272. package/languages/ja-JP.js +5 -6
  273. package/languages/ko-KR.js +37 -42
  274. package/languages/lv-LV.js +4 -6
  275. package/languages/nb-NO.js +4 -6
  276. package/languages/nl-NL.js +4 -6
  277. package/languages/pl-PL.js +4 -6
  278. package/languages/pt-BR.js +4 -6
  279. package/languages/ru-RU.js +4 -6
  280. package/languages/zh-CN.js +4 -6
  281. package/languages/zh-TW.js +25 -27
  282. package/package.json +26 -8
  283. package/pluginHooks.d.ts +2 -0
  284. package/pluginHooks.js +58 -27
  285. package/pluginHooks.mjs +58 -27
  286. package/plugins/autoColumnSize/autoColumnSize.js +14 -9
  287. package/plugins/autoColumnSize/autoColumnSize.mjs +14 -9
  288. package/plugins/autoRowSize/autoRowSize.js +15 -10
  289. package/plugins/autoRowSize/autoRowSize.mjs +15 -10
  290. package/plugins/autofill/autofill.js +50 -34
  291. package/plugins/autofill/autofill.mjs +50 -33
  292. package/plugins/autofill/utils.js +10 -11
  293. package/plugins/autofill/utils.mjs +10 -10
  294. package/plugins/base/base.d.ts +8 -2
  295. package/plugins/base/base.js +68 -5
  296. package/plugins/base/base.mjs +67 -5
  297. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +4 -4
  298. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +4 -4
  299. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +4 -4
  300. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +4 -4
  301. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +4 -4
  302. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +4 -4
  303. package/plugins/collapsibleColumns/collapsibleColumns.js +49 -30
  304. package/plugins/collapsibleColumns/collapsibleColumns.mjs +49 -30
  305. package/plugins/columnSorting/columnSorting.d.ts +1 -1
  306. package/plugins/columnSorting/columnSorting.js +10 -12
  307. package/plugins/columnSorting/columnSorting.mjs +10 -11
  308. package/plugins/columnSorting/columnStatesManager.js +3 -3
  309. package/plugins/columnSorting/columnStatesManager.mjs +3 -3
  310. package/plugins/columnSummary/columnSummary.js +4 -4
  311. package/plugins/columnSummary/columnSummary.mjs +4 -4
  312. package/plugins/columnSummary/endpoints.js +1 -1
  313. package/plugins/columnSummary/endpoints.mjs +1 -1
  314. package/plugins/comments/commentEditor.js +24 -4
  315. package/plugins/comments/commentEditor.mjs +25 -5
  316. package/plugins/comments/comments.js +63 -104
  317. package/plugins/comments/comments.mjs +63 -102
  318. package/plugins/comments/displaySwitch.js +1 -1
  319. package/plugins/comments/displaySwitch.mjs +1 -1
  320. package/plugins/contextMenu/commandExecutor.js +1 -1
  321. package/plugins/contextMenu/commandExecutor.mjs +1 -1
  322. package/plugins/contextMenu/contextMenu.js +11 -7
  323. package/plugins/contextMenu/contextMenu.mjs +11 -7
  324. package/plugins/contextMenu/cursor.js +1 -1
  325. package/plugins/contextMenu/cursor.mjs +1 -1
  326. package/plugins/contextMenu/itemsFactory.js +1 -1
  327. package/plugins/contextMenu/itemsFactory.mjs +1 -1
  328. package/plugins/contextMenu/menu.js +223 -111
  329. package/plugins/contextMenu/menu.mjs +220 -112
  330. package/plugins/contextMenu/predefinedItems/alignment.js +1 -1
  331. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
  332. package/plugins/contextMenu/predefinedItems/columnLeft.js +13 -5
  333. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +11 -4
  334. package/plugins/contextMenu/predefinedItems/columnRight.js +10 -10
  335. package/plugins/contextMenu/predefinedItems/columnRight.mjs +9 -9
  336. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -1
  337. package/plugins/contextMenu/predefinedItems/redo.js +1 -1
  338. package/plugins/contextMenu/predefinedItems/removeColumn.js +1 -1
  339. package/plugins/contextMenu/predefinedItems/removeRow.js +1 -1
  340. package/plugins/contextMenu/predefinedItems/rowAbove.js +1 -1
  341. package/plugins/contextMenu/predefinedItems/rowBelow.js +1 -1
  342. package/plugins/contextMenu/predefinedItems/undo.js +1 -1
  343. package/plugins/contextMenu/predefinedItems.js +1 -1
  344. package/plugins/contextMenu/utils.js +2 -2
  345. package/plugins/contextMenu/utils.mjs +2 -2
  346. package/plugins/copyPaste/clipboardData.js +1 -1
  347. package/plugins/copyPaste/clipboardData.mjs +1 -1
  348. package/plugins/copyPaste/contextMenuItem/copy.js +1 -1
  349. package/plugins/copyPaste/contextMenuItem/cut.js +1 -1
  350. package/plugins/copyPaste/copyPaste.js +29 -19
  351. package/plugins/copyPaste/copyPaste.mjs +28 -19
  352. package/plugins/copyPaste/focusableElement.js +1 -1
  353. package/plugins/copyPaste/focusableElement.mjs +1 -1
  354. package/plugins/copyPaste/pasteEvent.js +6 -2
  355. package/plugins/copyPaste/pasteEvent.mjs +6 -2
  356. package/plugins/customBorders/contextMenuItem/bottom.js +1 -1
  357. package/plugins/customBorders/contextMenuItem/left.js +5 -4
  358. package/plugins/customBorders/contextMenuItem/left.mjs +4 -3
  359. package/plugins/customBorders/contextMenuItem/noBorders.js +1 -1
  360. package/plugins/customBorders/contextMenuItem/right.js +5 -4
  361. package/plugins/customBorders/contextMenuItem/right.mjs +4 -3
  362. package/plugins/customBorders/contextMenuItem/top.js +1 -1
  363. package/plugins/customBorders/customBorders.js +141 -85
  364. package/plugins/customBorders/customBorders.mjs +139 -82
  365. package/plugins/customBorders/utils.js +131 -27
  366. package/plugins/customBorders/utils.mjs +115 -27
  367. package/plugins/dragToScroll/dragToScroll.js +11 -6
  368. package/plugins/dragToScroll/dragToScroll.mjs +11 -6
  369. package/plugins/dropdownMenu/dropdownMenu.js +8 -7
  370. package/plugins/dropdownMenu/dropdownMenu.mjs +8 -7
  371. package/plugins/exportFile/dataProvider.js +1 -1
  372. package/plugins/exportFile/dataProvider.mjs +1 -1
  373. package/plugins/exportFile/exportFile.js +3 -3
  374. package/plugins/exportFile/exportFile.mjs +3 -3
  375. package/plugins/exportFile/types/_base.js +1 -1
  376. package/plugins/exportFile/types/_base.mjs +1 -1
  377. package/plugins/exportFile/types/csv.js +3 -3
  378. package/plugins/exportFile/types/csv.mjs +3 -3
  379. package/plugins/filters/component/_base.js +1 -1
  380. package/plugins/filters/component/_base.mjs +1 -1
  381. package/plugins/filters/component/actionBar.js +3 -3
  382. package/plugins/filters/component/actionBar.mjs +3 -3
  383. package/plugins/filters/component/condition.js +4 -4
  384. package/plugins/filters/component/condition.mjs +4 -4
  385. package/plugins/filters/component/operators.js +3 -3
  386. package/plugins/filters/component/operators.mjs +3 -3
  387. package/plugins/filters/component/value.js +4 -4
  388. package/plugins/filters/component/value.mjs +4 -4
  389. package/plugins/filters/condition/beginsWith.js +1 -1
  390. package/plugins/filters/condition/between.js +1 -1
  391. package/plugins/filters/condition/contains.js +1 -1
  392. package/plugins/filters/condition/date/after.js +1 -1
  393. package/plugins/filters/condition/date/before.js +1 -1
  394. package/plugins/filters/condition/date/today.js +1 -1
  395. package/plugins/filters/condition/date/tomorrow.js +1 -1
  396. package/plugins/filters/condition/date/yesterday.js +1 -1
  397. package/plugins/filters/condition/empty.js +1 -1
  398. package/plugins/filters/condition/endsWith.js +1 -1
  399. package/plugins/filters/condition/equal.js +1 -1
  400. package/plugins/filters/condition/greaterThan.js +1 -1
  401. package/plugins/filters/condition/greaterThanOrEqual.js +1 -1
  402. package/plugins/filters/condition/lessThan.js +1 -1
  403. package/plugins/filters/condition/lessThanOrEqual.js +1 -1
  404. package/plugins/filters/condition/none.js +1 -1
  405. package/plugins/filters/condition/notBetween.js +1 -1
  406. package/plugins/filters/condition/notContains.js +1 -1
  407. package/plugins/filters/condition/notEmpty.js +1 -1
  408. package/plugins/filters/condition/notEqual.js +1 -1
  409. package/plugins/filters/conditionCollection.js +1 -1
  410. package/plugins/filters/conditionCollection.mjs +1 -1
  411. package/plugins/filters/conditionUpdateObserver.js +1 -1
  412. package/plugins/filters/conditionUpdateObserver.mjs +1 -1
  413. package/plugins/filters/dataFilter.js +1 -1
  414. package/plugins/filters/dataFilter.mjs +1 -1
  415. package/plugins/filters/filters.js +12 -9
  416. package/plugins/filters/filters.mjs +12 -9
  417. package/plugins/filters/logicalOperations/conjunction.js +1 -1
  418. package/plugins/filters/logicalOperations/disjunction.js +1 -1
  419. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +1 -1
  420. package/plugins/filters/ui/_base.js +2 -2
  421. package/plugins/filters/ui/_base.mjs +1 -1
  422. package/plugins/filters/ui/input.js +4 -4
  423. package/plugins/filters/ui/input.mjs +4 -4
  424. package/plugins/filters/ui/link.js +4 -4
  425. package/plugins/filters/ui/link.mjs +4 -4
  426. package/plugins/filters/ui/multipleSelect.js +19 -32
  427. package/plugins/filters/ui/multipleSelect.mjs +19 -32
  428. package/plugins/filters/ui/radioInput.js +4 -4
  429. package/plugins/filters/ui/radioInput.mjs +4 -4
  430. package/plugins/filters/ui/select.js +5 -5
  431. package/plugins/filters/ui/select.mjs +5 -5
  432. package/plugins/formulas/engine/register.js +1 -1
  433. package/plugins/formulas/engine/register.mjs +1 -1
  434. package/plugins/formulas/engine/settings.js +2 -2
  435. package/plugins/formulas/engine/settings.mjs +2 -2
  436. package/plugins/formulas/formulas.js +10 -10
  437. package/plugins/formulas/formulas.mjs +10 -10
  438. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -1
  439. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +3 -3
  440. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +2 -2
  441. package/plugins/hiddenColumns/hiddenColumns.js +10 -5
  442. package/plugins/hiddenColumns/hiddenColumns.mjs +10 -5
  443. package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -1
  444. package/plugins/hiddenRows/contextMenuItem/showRow.js +3 -3
  445. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +2 -2
  446. package/plugins/hiddenRows/hiddenRows.js +10 -5
  447. package/plugins/hiddenRows/hiddenRows.mjs +10 -5
  448. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +2 -2
  449. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  450. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +2 -2
  451. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  452. package/plugins/manualColumnFreeze/manualColumnFreeze.js +26 -13
  453. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +26 -13
  454. package/plugins/manualColumnMove/manualColumnMove.js +73 -62
  455. package/plugins/manualColumnMove/manualColumnMove.mjs +74 -63
  456. package/plugins/manualColumnMove/ui/_base.js +26 -13
  457. package/plugins/manualColumnMove/ui/_base.mjs +25 -13
  458. package/plugins/manualColumnMove/ui/backlight.js +4 -4
  459. package/plugins/manualColumnMove/ui/backlight.mjs +4 -4
  460. package/plugins/manualColumnMove/ui/guideline.js +4 -4
  461. package/plugins/manualColumnMove/ui/guideline.mjs +4 -4
  462. package/plugins/manualColumnResize/manualColumnResize.js +38 -22
  463. package/plugins/manualColumnResize/manualColumnResize.mjs +38 -22
  464. package/plugins/manualRowMove/manualRowMove.js +27 -17
  465. package/plugins/manualRowMove/manualRowMove.mjs +27 -17
  466. package/plugins/manualRowMove/ui/_base.js +1 -1
  467. package/plugins/manualRowMove/ui/_base.mjs +1 -1
  468. package/plugins/manualRowMove/ui/backlight.js +4 -4
  469. package/plugins/manualRowMove/ui/backlight.mjs +4 -4
  470. package/plugins/manualRowMove/ui/guideline.js +4 -4
  471. package/plugins/manualRowMove/ui/guideline.mjs +4 -4
  472. package/plugins/manualRowResize/manualRowResize.js +35 -20
  473. package/plugins/manualRowResize/manualRowResize.mjs +35 -20
  474. package/plugins/mergeCells/calculations/autofill.js +7 -6
  475. package/plugins/mergeCells/calculations/autofill.mjs +7 -5
  476. package/plugins/mergeCells/calculations/selection.js +10 -5
  477. package/plugins/mergeCells/calculations/selection.mjs +10 -5
  478. package/plugins/mergeCells/cellCoords.js +17 -5
  479. package/plugins/mergeCells/cellCoords.mjs +17 -4
  480. package/plugins/mergeCells/cellsCollection.js +28 -21
  481. package/plugins/mergeCells/cellsCollection.mjs +28 -20
  482. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +1 -1
  483. package/plugins/mergeCells/mergeCells.js +83 -50
  484. package/plugins/mergeCells/mergeCells.mjs +83 -48
  485. package/plugins/multiColumnSorting/multiColumnSorting.js +5 -7
  486. package/plugins/multiColumnSorting/multiColumnSorting.mjs +5 -6
  487. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +52 -58
  488. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +53 -58
  489. package/plugins/nestedHeaders/nestedHeaders.js +26 -19
  490. package/plugins/nestedHeaders/nestedHeaders.mjs +26 -19
  491. package/plugins/nestedHeaders/stateManager/headersTree.js +3 -3
  492. package/plugins/nestedHeaders/stateManager/headersTree.mjs +3 -3
  493. package/plugins/nestedHeaders/stateManager/index.js +3 -3
  494. package/plugins/nestedHeaders/stateManager/index.mjs +3 -3
  495. package/plugins/nestedHeaders/stateManager/sourceSettings.js +3 -3
  496. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +3 -3
  497. package/plugins/nestedHeaders/utils/ghostTable.js +1 -1
  498. package/plugins/nestedHeaders/utils/ghostTable.mjs +1 -1
  499. package/plugins/nestedRows/data/dataManager.js +2 -2
  500. package/plugins/nestedRows/data/dataManager.mjs +2 -2
  501. package/plugins/nestedRows/nestedRows.js +11 -5
  502. package/plugins/nestedRows/nestedRows.mjs +11 -5
  503. package/plugins/nestedRows/ui/_base.js +6 -2
  504. package/plugins/nestedRows/ui/_base.mjs +6 -2
  505. package/plugins/nestedRows/ui/collapsing.js +3 -3
  506. package/plugins/nestedRows/ui/collapsing.mjs +3 -3
  507. package/plugins/nestedRows/ui/contextMenu.js +3 -3
  508. package/plugins/nestedRows/ui/contextMenu.mjs +3 -3
  509. package/plugins/nestedRows/ui/headers.js +3 -3
  510. package/plugins/nestedRows/ui/headers.mjs +3 -3
  511. package/plugins/nestedRows/utils/rowMoveController.js +3 -5
  512. package/plugins/nestedRows/utils/rowMoveController.mjs +3 -4
  513. package/plugins/persistentState/persistentState.js +10 -5
  514. package/plugins/persistentState/persistentState.mjs +10 -5
  515. package/plugins/persistentState/storage.js +1 -1
  516. package/plugins/persistentState/storage.mjs +1 -1
  517. package/plugins/search/search.js +10 -5
  518. package/plugins/search/search.mjs +10 -5
  519. package/plugins/touchScroll/touchScroll.js +32 -26
  520. package/plugins/touchScroll/touchScroll.mjs +32 -25
  521. package/plugins/trimRows/trimRows.js +10 -5
  522. package/plugins/trimRows/trimRows.mjs +10 -5
  523. package/plugins/undoRedo/index.js +1 -1
  524. package/plugins/undoRedo/undoRedo.js +54 -48
  525. package/plugins/undoRedo/undoRedo.mjs +54 -47
  526. package/renderers/autocompleteRenderer/autocompleteRenderer.js +1 -3
  527. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +1 -2
  528. package/renderers/checkboxRenderer/checkboxRenderer.js +48 -43
  529. package/renderers/checkboxRenderer/checkboxRenderer.mjs +48 -41
  530. package/renderers/index.d.ts +4 -1
  531. package/renderers/index.js +6 -0
  532. package/renderers/index.mjs +3 -1
  533. package/renderers/numericRenderer/numericRenderer.js +1 -0
  534. package/renderers/numericRenderer/numericRenderer.mjs +1 -0
  535. package/renderers/timeRenderer/index.d.ts +1 -0
  536. package/renderers/timeRenderer/index.js +9 -0
  537. package/renderers/timeRenderer/index.mjs +1 -0
  538. package/renderers/timeRenderer/timeRenderer.d.ts +5 -0
  539. package/renderers/timeRenderer/timeRenderer.js +31 -0
  540. package/renderers/timeRenderer/timeRenderer.mjs +20 -0
  541. package/selection/highlight/highlight.js +3 -3
  542. package/selection/highlight/highlight.mjs +3 -3
  543. package/selection/highlight/types/activeHeader.js +2 -2
  544. package/selection/highlight/types/activeHeader.mjs +2 -2
  545. package/selection/highlight/types/area.js +2 -2
  546. package/selection/highlight/types/area.mjs +2 -2
  547. package/selection/highlight/types/cell.js +2 -2
  548. package/selection/highlight/types/cell.mjs +2 -2
  549. package/selection/highlight/types/customSelection.js +2 -2
  550. package/selection/highlight/types/customSelection.mjs +2 -2
  551. package/selection/highlight/types/fill.js +2 -2
  552. package/selection/highlight/types/fill.mjs +2 -2
  553. package/selection/highlight/types/header.js +2 -2
  554. package/selection/highlight/types/header.mjs +2 -2
  555. package/selection/highlight/types/index.js +2 -2
  556. package/selection/highlight/types/index.mjs +2 -2
  557. package/selection/highlight/visualSelection.js +17 -16
  558. package/selection/highlight/visualSelection.mjs +18 -17
  559. package/selection/mouseEventHandler.js +15 -10
  560. package/selection/mouseEventHandler.mjs +15 -9
  561. package/selection/range.js +5 -6
  562. package/selection/range.mjs +5 -6
  563. package/selection/selection.js +27 -20
  564. package/selection/selection.mjs +27 -18
  565. package/selection/transformation.js +5 -7
  566. package/selection/transformation.mjs +5 -6
  567. package/selection/utils.js +1 -1
  568. package/selection/utils.mjs +1 -1
  569. package/settings.d.ts +3 -1
  570. package/shortcuts/context.d.ts +20 -0
  571. package/shortcuts/context.js +296 -0
  572. package/shortcuts/context.mjs +268 -0
  573. package/shortcuts/index.d.ts +1 -0
  574. package/shortcuts/index.js +8 -0
  575. package/shortcuts/index.mjs +1 -0
  576. package/shortcuts/keyObserver.js +67 -0
  577. package/shortcuts/keyObserver.mjs +58 -0
  578. package/shortcuts/manager.d.ts +10 -0
  579. package/shortcuts/manager.js +183 -0
  580. package/shortcuts/manager.mjs +174 -0
  581. package/shortcuts/recorder.js +183 -0
  582. package/shortcuts/recorder.mjs +171 -0
  583. package/shortcuts/utils.js +77 -0
  584. package/shortcuts/utils.mjs +54 -0
  585. package/tableView.js +138 -80
  586. package/tableView.mjs +138 -70
  587. package/translations/changesObservable/observable.js +1 -1
  588. package/translations/changesObservable/observable.mjs +1 -1
  589. package/translations/changesObservable/observer.js +1 -2
  590. package/translations/changesObservable/observer.mjs +1 -2
  591. package/translations/indexMapper.d.ts +1 -0
  592. package/translations/indexMapper.js +25 -2
  593. package/translations/indexMapper.mjs +24 -2
  594. package/translations/mapCollections/aggregatedCollection.js +3 -3
  595. package/translations/mapCollections/aggregatedCollection.mjs +3 -3
  596. package/translations/mapCollections/mapCollection.js +1 -1
  597. package/translations/mapCollections/mapCollection.mjs +1 -1
  598. package/translations/maps/hidingMap.js +5 -3
  599. package/translations/maps/hidingMap.mjs +5 -3
  600. package/translations/maps/indexMap.js +3 -1
  601. package/translations/maps/indexMap.mjs +3 -1
  602. package/translations/maps/indexesSequence.js +6 -4
  603. package/translations/maps/indexesSequence.mjs +6 -4
  604. package/translations/maps/linkedPhysicalIndexToValueMap.js +6 -4
  605. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +6 -4
  606. package/translations/maps/physicalIndexToValueMap.js +6 -4
  607. package/translations/maps/physicalIndexToValueMap.mjs +6 -4
  608. package/translations/maps/trimmingMap.js +5 -3
  609. package/translations/maps/trimmingMap.mjs +5 -3
  610. package/utils/dataStructures/linkedList.js +3 -3
  611. package/utils/dataStructures/linkedList.mjs +3 -3
  612. package/utils/dataStructures/queue.js +1 -1
  613. package/utils/dataStructures/queue.mjs +1 -1
  614. package/utils/dataStructures/stack.js +1 -1
  615. package/utils/dataStructures/stack.mjs +1 -1
  616. package/utils/dataStructures/tree.js +3 -3
  617. package/utils/dataStructures/tree.mjs +3 -3
  618. package/utils/dataStructures/uniqueMap.js +14 -1
  619. package/utils/dataStructures/uniqueMap.mjs +14 -1
  620. package/utils/dataStructures/uniqueSet.js +9 -0
  621. package/utils/dataStructures/uniqueSet.mjs +9 -0
  622. package/utils/ghostTable.js +14 -3
  623. package/utils/ghostTable.mjs +15 -4
  624. package/utils/interval.js +1 -1
  625. package/utils/interval.mjs +1 -1
  626. package/utils/samplesGenerator.js +1 -1
  627. package/utils/samplesGenerator.mjs +1 -1
  628. package/3rdparty/walkontable/src/core.js +0 -309
  629. package/3rdparty/walkontable/src/core.mjs +0 -293
  630. package/3rdparty/walkontable/src/overlay/registerer.js +0 -70
  631. package/3rdparty/walkontable/src/overlay/registerer.mjs +0 -57
  632. package/utils/keyStateObserver.js +0 -121
  633. package/utils/keyStateObserver.mjs +0 -103
package/tableView.js CHANGED
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
-
5
3
  require("core-js/modules/es.symbol.js");
6
4
 
7
5
  require("core-js/modules/es.symbol.description.js");
@@ -16,12 +14,6 @@ require("core-js/modules/es.function.name.js");
16
14
 
17
15
  require("core-js/modules/es.regexp.exec.js");
18
16
 
19
- require("core-js/modules/es.object.set-prototype-of.js");
20
-
21
- require("core-js/modules/es.reflect.construct.js");
22
-
23
- require("core-js/modules/es.object.get-own-property-descriptor.js");
24
-
25
17
  exports.__esModule = true;
26
18
  exports.default = void 0;
27
19
 
@@ -45,16 +37,12 @@ var _eventManager = _interopRequireDefault(require("./eventManager"));
45
37
 
46
38
  var _event = require("./helpers/dom/event");
47
39
 
48
- var _src = _interopRequireWildcard(require("./3rdparty/walkontable/src"));
40
+ var _src = _interopRequireDefault(require("./3rdparty/walkontable/src"));
49
41
 
50
42
  var _mouseEventHandler = require("./selection/mouseEventHandler");
51
43
 
52
44
  var _rootInstance = require("./utils/rootInstance");
53
45
 
54
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
55
-
56
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
57
-
58
46
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
59
47
 
60
48
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
@@ -65,12 +53,6 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
65
53
 
66
54
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
67
55
 
68
- function _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } 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); }
69
-
70
- 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; } }
71
-
72
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
73
-
74
56
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
75
57
 
76
58
  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."); }
@@ -87,7 +69,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
87
69
 
88
70
  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); } }
89
71
 
90
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
72
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
91
73
 
92
74
  var privatePool = new WeakMap();
93
75
  /**
@@ -128,6 +110,7 @@ var TableView = /*#__PURE__*/function () {
128
110
  /**
129
111
  * Main <THEAD> element.
130
112
  *
113
+ * @private
131
114
  * @type {HTMLTableSectionElement}
132
115
  */
133
116
 
@@ -135,6 +118,7 @@ var TableView = /*#__PURE__*/function () {
135
118
  /**
136
119
  * Main <TBODY> element.
137
120
  *
121
+ * @private
138
122
  * @type {HTMLTableSectionElement}
139
123
  */
140
124
 
@@ -142,10 +126,11 @@ var TableView = /*#__PURE__*/function () {
142
126
  /**
143
127
  * Main Walkontable instance.
144
128
  *
129
+ * @private
145
130
  * @type {Walkontable}
146
131
  */
147
132
 
148
- this.wt = void 0;
133
+ this._wt = void 0;
149
134
  /**
150
135
  * Main Walkontable instance.
151
136
  *
@@ -221,7 +206,8 @@ var TableView = /*#__PURE__*/function () {
221
206
  this.adjustElementsSize(true);
222
207
  }
223
208
 
224
- this.wt.draw(!this.instance.forceFullRender);
209
+ this._wt.draw(!this.instance.forceFullRender);
210
+
225
211
  this.instance.runHooks('afterRender', this.instance.forceFullRender);
226
212
  this.instance.forceFullRender = false;
227
213
  this.instance.renderCall = false;
@@ -241,7 +227,7 @@ var TableView = /*#__PURE__*/function () {
241
227
  if (this.instance.isRenderSuspended()) {
242
228
  this.postponedAdjustElementsSize = true;
243
229
  } else {
244
- this.wt.wtOverlays.adjustElementsSize(force);
230
+ this._wt.wtOverlays.adjustElementsSize(force);
245
231
  }
246
232
  }
247
233
  /**
@@ -255,7 +241,7 @@ var TableView = /*#__PURE__*/function () {
255
241
  }, {
256
242
  key: "getCellAtCoords",
257
243
  value: function getCellAtCoords(coords, topmost) {
258
- var td = this.wt.getCell(coords, topmost);
244
+ var td = this._wt.getCell(coords, topmost);
259
245
 
260
246
  if (td < 0) {
261
247
  // there was an exit code (cell is out of bounds)
@@ -278,7 +264,7 @@ var TableView = /*#__PURE__*/function () {
278
264
  }, {
279
265
  key: "scrollViewport",
280
266
  value: function scrollViewport(coords, snapToTop, snapToRight, snapToBottom, snapToLeft) {
281
- return this.wt.scrollViewport(coords, snapToTop, snapToRight, snapToBottom, snapToLeft);
267
+ return this._wt.scrollViewport(coords, snapToTop, snapToRight, snapToBottom, snapToLeft);
282
268
  }
283
269
  /**
284
270
  * Scroll viewport to a column.
@@ -292,7 +278,7 @@ var TableView = /*#__PURE__*/function () {
292
278
  }, {
293
279
  key: "scrollViewportHorizontally",
294
280
  value: function scrollViewportHorizontally(column, snapToRight, snapToLeft) {
295
- return this.wt.scrollViewportHorizontally(column, snapToRight, snapToLeft);
281
+ return this._wt.scrollViewportHorizontally(column, snapToRight, snapToLeft);
296
282
  }
297
283
  /**
298
284
  * Scroll viewport to a row.
@@ -306,7 +292,7 @@ var TableView = /*#__PURE__*/function () {
306
292
  }, {
307
293
  key: "scrollViewportVertically",
308
294
  value: function scrollViewportVertically(row, snapToTop, snapToBottom) {
309
- return this.wt.scrollViewportVertically(row, snapToTop, snapToBottom);
295
+ return this._wt.scrollViewportVertically(row, snapToTop, snapToBottom);
310
296
  }
311
297
  /**
312
298
  * Prepares DOMElements and adds correct className to the root element.
@@ -374,7 +360,7 @@ var TableView = /*#__PURE__*/function () {
374
360
  });
375
361
  this.eventManager.addEventListener(rootElement, 'mousemove', function (event) {
376
362
  if (priv.selectionMouseDown && !_this.isTextSelectionAllowed(event.target)) {
377
- // Clear selection only when fragmentSelection is enabled, otherwise clearing selection breakes the IME editor.
363
+ // Clear selection only when fragmentSelection is enabled, otherwise clearing selection breaks the IME editor.
378
364
  if (_this.settings.fragmentSelection) {
379
365
  (0, _element.clearTextSelection)(_this.instance.rootWindow);
380
366
  }
@@ -383,6 +369,7 @@ var TableView = /*#__PURE__*/function () {
383
369
  }
384
370
  });
385
371
  this.eventManager.addEventListener(documentElement, 'keyup', function (event) {
372
+ // TODO: is it the best place and way to finish cell selection?
386
373
  if (selection.isInProgress() && !event.shiftKey) {
387
374
  selection.finish();
388
375
  }
@@ -423,7 +410,7 @@ var TableView = /*#__PURE__*/function () {
423
410
  } // immediate click on "holder" means click on the right side of vertical scrollbar
424
411
 
425
412
 
426
- var holder = _this.instance.view.wt.wtTable.holder;
413
+ var holder = _this.instance.view._wt.wtTable.holder;
427
414
 
428
415
  if (next === holder) {
429
416
  var scrollbarWidth = (0, _element.getScrollbarWidth)(rootDocument);
@@ -480,10 +467,12 @@ var TableView = /*#__PURE__*/function () {
480
467
  }, {
481
468
  key: "translateFromRenderableToVisualCoords",
482
469
  value: function translateFromRenderableToVisualCoords(_ref) {
470
+ var _this$instance3;
471
+
483
472
  var row = _ref.row,
484
473
  col = _ref.col;
485
474
  // TODO: To consider an idea to reusing the CellCoords instance instead creating new one.
486
- return _construct(_src.CellCoords, _toConsumableArray(this.translateFromRenderableToVisualIndex(row, col)));
475
+ return (_this$instance3 = this.instance)._createCellCoords.apply(_this$instance3, _toConsumableArray(this.translateFromRenderableToVisualIndex(row, col)));
487
476
  }
488
477
  /**
489
478
  * Translate renderable row and column indexes to visual row and column indexes.
@@ -621,7 +610,63 @@ var TableView = /*#__PURE__*/function () {
621
610
  return notHiddenIndexes;
622
611
  }
623
612
  /**
624
- * Defines default configuration and initializes WalkOnTable intance.
613
+ * The function returns the number of not hidden column indexes that fit between the first and
614
+ * last fixed column in the left (or right in RTL mode) overlay.
615
+ *
616
+ * @returns {number}
617
+ */
618
+
619
+ }, {
620
+ key: "countNotHiddenFixedColumnsStart",
621
+ value: function countNotHiddenFixedColumnsStart() {
622
+ var countCols = this.instance.countCols();
623
+ var visualFixedColumnsStart = Math.min(parseInt(this.settings.fixedColumnsStart, 10), countCols) - 1;
624
+ return this.countNotHiddenColumnIndexes(visualFixedColumnsStart, -1);
625
+ }
626
+ /**
627
+ * The function returns the number of not hidden row indexes that fit between the first and
628
+ * last fixed row in the top overlay.
629
+ *
630
+ * @returns {number}
631
+ */
632
+
633
+ }, {
634
+ key: "countNotHiddenFixedRowsTop",
635
+ value: function countNotHiddenFixedRowsTop() {
636
+ var countRows = this.instance.countRows();
637
+ var visualFixedRowsTop = Math.min(parseInt(this.settings.fixedRowsTop, 10), countRows) - 1;
638
+ return this.countNotHiddenRowIndexes(visualFixedRowsTop, -1);
639
+ }
640
+ /**
641
+ * The function returns the number of not hidden row indexes that fit between the first and
642
+ * last fixed row in the bottom overlay.
643
+ *
644
+ * @returns {number}
645
+ */
646
+
647
+ }, {
648
+ key: "countNotHiddenFixedRowsBottom",
649
+ value: function countNotHiddenFixedRowsBottom() {
650
+ var countRows = this.instance.countRows();
651
+ var visualFixedRowsBottom = Math.max(countRows - parseInt(this.settings.fixedRowsBottom, 10), 0);
652
+ return this.countNotHiddenRowIndexes(visualFixedRowsBottom, 1);
653
+ }
654
+ /**
655
+ * Checks if at least one cell than belongs to the main table is not covered by the top, left or
656
+ * bottom overlay.
657
+ *
658
+ * @returns {boolean}
659
+ */
660
+
661
+ }, {
662
+ key: "isMainTableNotFullyCoveredByOverlays",
663
+ value: function isMainTableNotFullyCoveredByOverlays() {
664
+ var fixedAllRows = this.countNotHiddenFixedRowsTop() + this.countNotHiddenFixedRowsBottom();
665
+ var fixedAllColumns = this.countNotHiddenFixedColumnsStart();
666
+ return this.instance.countRenderedRows() > fixedAllRows && this.instance.countRenderedCols() > fixedAllColumns;
667
+ }
668
+ /**
669
+ * Defines default configuration and initializes WalkOnTable instance.
625
670
  *
626
671
  * @private
627
672
  */
@@ -633,6 +678,7 @@ var TableView = /*#__PURE__*/function () {
633
678
 
634
679
  var priv = privatePool.get(this);
635
680
  var walkontableConfig = {
681
+ rtlMode: this.instance.isRtl(),
636
682
  externalRowCalculator: this.instance.getPlugin('autoRowSize') && this.instance.getPlugin('autoRowSize').isEnabled(),
637
683
  table: priv.table,
638
684
  isDataViewInstance: function isDataViewInstance() {
@@ -659,29 +705,20 @@ var TableView = /*#__PURE__*/function () {
659
705
  return _this2.countRenderableColumns();
660
706
  },
661
707
  // Number of renderable columns for the left overlay.
662
- fixedColumnsLeft: function fixedColumnsLeft() {
663
- var countCols = _this2.instance.countCols();
664
-
665
- var visualFixedColumnsLeft = Math.min(parseInt(_this2.settings.fixedColumnsLeft, 10), countCols) - 1;
666
- return _this2.countNotHiddenColumnIndexes(visualFixedColumnsLeft, -1);
708
+ fixedColumnsStart: function fixedColumnsStart() {
709
+ return _this2.countNotHiddenFixedColumnsStart();
667
710
  },
668
711
  // Number of renderable rows for the top overlay.
669
712
  fixedRowsTop: function fixedRowsTop() {
670
- var countRows = _this2.instance.countRows();
671
-
672
- var visualFixedRowsTop = Math.min(parseInt(_this2.settings.fixedRowsTop, 10), countRows) - 1;
673
- return _this2.countNotHiddenRowIndexes(visualFixedRowsTop, -1);
713
+ return _this2.countNotHiddenFixedRowsTop();
674
714
  },
675
715
  // Number of renderable rows for the bottom overlay.
676
716
  fixedRowsBottom: function fixedRowsBottom() {
677
- var countRows = _this2.instance.countRows();
678
-
679
- var visualFixedRowsBottom = Math.max(countRows - parseInt(_this2.settings.fixedRowsBottom, 10), 0);
680
- return _this2.countNotHiddenRowIndexes(visualFixedRowsBottom, 1);
717
+ return _this2.countNotHiddenFixedRowsBottom();
681
718
  },
682
- // Enable the left overlay when conditions are met.
683
- shouldRenderLeftOverlay: function shouldRenderLeftOverlay() {
684
- return _this2.settings.fixedColumnsLeft > 0 || walkontableConfig.rowHeaders().length > 0;
719
+ // Enable the inline start overlay when conditions are met.
720
+ shouldRenderInlineStartOverlay: function shouldRenderInlineStartOverlay() {
721
+ return _this2.settings.fixedColumnsStart > 0 || walkontableConfig.rowHeaders().length > 0;
685
722
  },
686
723
  // Enable the top overlay when conditions are met.
687
724
  shouldRenderTopOverlay: function shouldRenderTopOverlay() {
@@ -731,7 +768,7 @@ var TableView = /*#__PURE__*/function () {
731
768
  },
732
769
  columnWidth: function columnWidth(renderedColumnIndex) {
733
770
  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
734
- // for not displayed indexes (beyond the table boundaries), i.e. when `fixedColumnsLeft` > `startCols` (wrong config?) or
771
+ // for indexes that are not displayed (indexes that are beyond the grid's boundaries), i.e. when `fixedColumnsStart` > `startCols` (wrong config?) or
735
772
  // scrolling and dataset is empty (scroll should handle that?).
736
773
 
737
774
 
@@ -811,12 +848,15 @@ var TableView = /*#__PURE__*/function () {
811
848
  (0, _mouseEventHandler.handleMouseEvent)(event, {
812
849
  coords: visualCoords,
813
850
  selection: _this2.instance.selection,
814
- controller: controller
851
+ controller: controller,
852
+ cellCoordsFactory: function cellCoordsFactory(row, column) {
853
+ return _this2.instance._createCellCoords(row, column);
854
+ }
815
855
  });
816
856
 
817
857
  _this2.instance.runHooks('afterOnCellMouseDown', event, visualCoords, TD);
818
858
 
819
- _this2.activeWt = _this2.wt;
859
+ _this2.activeWt = _this2._wt;
820
860
  },
821
861
  onCellContextMenu: function onCellContextMenu(event, coords, TD, wt) {
822
862
  var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
@@ -836,7 +876,7 @@ var TableView = /*#__PURE__*/function () {
836
876
 
837
877
  _this2.instance.runHooks('afterOnCellContextMenu', event, visualCoords, TD);
838
878
 
839
- _this2.activeWt = _this2.wt;
879
+ _this2.activeWt = _this2._wt;
840
880
  },
841
881
  onCellMouseOut: function onCellMouseOut(event, coords, TD, wt) {
842
882
  var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
@@ -851,7 +891,7 @@ var TableView = /*#__PURE__*/function () {
851
891
 
852
892
  _this2.instance.runHooks('afterOnCellMouseOut', event, visualCoords, TD);
853
893
 
854
- _this2.activeWt = _this2.wt;
894
+ _this2.activeWt = _this2._wt;
855
895
  },
856
896
  onCellMouseOver: function onCellMouseOver(event, coords, TD, wt) {
857
897
  var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
@@ -873,13 +913,16 @@ var TableView = /*#__PURE__*/function () {
873
913
  (0, _mouseEventHandler.handleMouseEvent)(event, {
874
914
  coords: visualCoords,
875
915
  selection: _this2.instance.selection,
876
- controller: controller
916
+ controller: controller,
917
+ cellCoordsFactory: function cellCoordsFactory(row, column) {
918
+ return _this2.instance._createCellCoords(row, column);
919
+ }
877
920
  });
878
921
  }
879
922
 
880
923
  _this2.instance.runHooks('afterOnCellMouseOver', event, visualCoords, TD);
881
924
 
882
- _this2.activeWt = _this2.wt;
925
+ _this2.activeWt = _this2._wt;
883
926
  },
884
927
  onCellMouseUp: function onCellMouseUp(event, coords, TD, wt) {
885
928
  var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
@@ -898,7 +941,7 @@ var TableView = /*#__PURE__*/function () {
898
941
 
899
942
  _this2.instance.runHooks('afterOnCellMouseUp', event, visualCoords, TD);
900
943
 
901
- _this2.activeWt = _this2.wt;
944
+ _this2.activeWt = _this2._wt;
902
945
  },
903
946
  onCellCornerMouseDown: function onCellCornerMouseDown(event) {
904
947
  event.preventDefault();
@@ -1035,7 +1078,7 @@ var TableView = /*#__PURE__*/function () {
1035
1078
  viewportColumnCalculatorOverride: function viewportColumnCalculatorOverride(calc) {
1036
1079
  var viewportOffset = _this2.settings.viewportColumnRenderingOffset;
1037
1080
 
1038
- if (viewportOffset === 'auto' && _this2.settings.fixedColumnsLeft) {
1081
+ if (viewportOffset === 'auto' && _this2.settings.fixedColumnsStart) {
1039
1082
  viewportOffset = 10;
1040
1083
  }
1041
1084
 
@@ -1069,9 +1112,9 @@ var TableView = /*#__PURE__*/function () {
1069
1112
  }
1070
1113
  };
1071
1114
  this.instance.runHooks('beforeInitWalkontable', walkontableConfig);
1072
- this.wt = new _src.default(walkontableConfig);
1073
- this.activeWt = this.wt;
1074
- var spreader = this.wt.wtTable.spreader; // We have to cache width and height after Walkontable initialization.
1115
+ this._wt = new _src.default(walkontableConfig);
1116
+ this.activeWt = this._wt;
1117
+ var spreader = this._wt.wtTable.spreader; // We have to cache width and height after Walkontable initialization.
1075
1118
 
1076
1119
  var _this$instance$rootEl = this.instance.rootElement.getBoundingClientRect(),
1077
1120
  width = _this$instance$rootEl.width,
@@ -1092,7 +1135,7 @@ var TableView = /*#__PURE__*/function () {
1092
1135
  });
1093
1136
  this.eventManager.addEventListener(this.instance.rootDocument.documentElement, 'click', function () {
1094
1137
  if (_this2.settings.observeDOMVisibility) {
1095
- if (_this2.wt.drawInterrupted) {
1138
+ if (_this2._wt.drawInterrupted) {
1096
1139
  _this2.instance.forceFullRender = true;
1097
1140
 
1098
1141
  _this2.render();
@@ -1115,7 +1158,7 @@ var TableView = /*#__PURE__*/function () {
1115
1158
  return true;
1116
1159
  }
1117
1160
 
1118
- var isChildOfTableBody = (0, _element.isChildOf)(el, this.instance.view.wt.wtTable.spreader);
1161
+ var isChildOfTableBody = (0, _element.isChildOf)(el, this.instance.view._wt.wtTable.spreader);
1119
1162
 
1120
1163
  if (this.settings.fragmentSelection === true && isChildOfTableBody) {
1121
1164
  return true;
@@ -1226,9 +1269,9 @@ var TableView = /*#__PURE__*/function () {
1226
1269
 
1227
1270
  this.updateCellHeader(container.querySelector('.rowHeader'), visualRowIndex, this.instance.getRowHeader);
1228
1271
  } else {
1229
- var _this$instance3 = this.instance,
1230
- rootDocument = _this$instance3.rootDocument,
1231
- getRowHeader = _this$instance3.getRowHeader;
1272
+ var _this$instance4 = this.instance,
1273
+ rootDocument = _this$instance4.rootDocument,
1274
+ getRowHeader = _this$instance4.getRowHeader;
1232
1275
  var div = rootDocument.createElement('div');
1233
1276
  var span = rootDocument.createElement('span');
1234
1277
  div.className = 'relative';
@@ -1286,7 +1329,9 @@ var TableView = /*#__PURE__*/function () {
1286
1329
  key: "updateCellHeader",
1287
1330
  value: function updateCellHeader(element, index, content) {
1288
1331
  var renderedIndex = index;
1289
- var parentOverlay = this.wt.wtOverlays.getParentOverlay(element) || this.wt; // prevent wrong calculations from SampleGenerator
1332
+
1333
+ var parentOverlay = this._wt.wtOverlays.getParentOverlay(element) || this._wt; // prevent wrong calculations from SampleGenerator
1334
+
1290
1335
 
1291
1336
  if (element.parentNode) {
1292
1337
  if ((0, _element.hasClass)(element, 'colHeader')) {
@@ -1305,19 +1350,20 @@ var TableView = /*#__PURE__*/function () {
1305
1350
  }
1306
1351
  }
1307
1352
  /**
1308
- * Given a element's left position relative to the viewport, returns maximum element width until the right
1309
- * edge of the viewport (before scrollbar).
1353
+ * Given a element's left (or right in RTL mode) position relative to the viewport, returns maximum
1354
+ * element width until the right (or left) edge of the viewport (before scrollbar).
1310
1355
  *
1311
1356
  * @private
1312
- * @param {number} leftOffset The left offset.
1357
+ * @param {number} inlineOffset The left (or right in RTL mode) offset.
1313
1358
  * @returns {number}
1314
1359
  */
1315
1360
 
1316
1361
  }, {
1317
1362
  key: "maximumVisibleElementWidth",
1318
- value: function maximumVisibleElementWidth(leftOffset) {
1319
- var workspaceWidth = this.wt.wtViewport.getWorkspaceWidth();
1320
- var maxWidth = workspaceWidth - leftOffset;
1363
+ value: function maximumVisibleElementWidth(inlineOffset) {
1364
+ var workspaceWidth = this._wt.wtViewport.getWorkspaceWidth();
1365
+
1366
+ var maxWidth = workspaceWidth - inlineOffset;
1321
1367
  return maxWidth > 0 ? maxWidth : 0;
1322
1368
  }
1323
1369
  /**
@@ -1332,7 +1378,8 @@ var TableView = /*#__PURE__*/function () {
1332
1378
  }, {
1333
1379
  key: "maximumVisibleElementHeight",
1334
1380
  value: function maximumVisibleElementHeight(topOffset) {
1335
- var workspaceHeight = this.wt.wtViewport.getWorkspaceHeight();
1381
+ var workspaceHeight = this._wt.wtViewport.getWorkspaceHeight();
1382
+
1336
1383
  var maxHeight = workspaceHeight - topOffset;
1337
1384
  return maxHeight > 0 ? maxHeight : 0;
1338
1385
  }
@@ -1367,19 +1414,29 @@ var TableView = /*#__PURE__*/function () {
1367
1414
  };
1368
1415
  }
1369
1416
  /**
1370
- * Checks if master overlay is active.
1417
+ * Returns the first fully visible row in the table viewport.
1371
1418
  *
1372
- * @private
1373
- * @returns {boolean}
1419
+ * @returns {number}
1374
1420
  */
1375
1421
 
1376
1422
  }, {
1377
- key: "mainViewIsActive",
1378
- value: function mainViewIsActive() {
1379
- return this.wt === this.activeWt;
1423
+ key: "getFirstFullyVisibleRow",
1424
+ value: function getFirstFullyVisibleRow() {
1425
+ return this.instance.rowIndexMapper.getVisualFromRenderableIndex(this.instance.view._wt.wtScroll.getFirstVisibleRow());
1380
1426
  }
1381
1427
  /**
1382
- * Destroyes internal WalkOnTable's instance. Detaches all of the bonded listeners.
1428
+ * Returns the last fully visible row in the table viewport.
1429
+ *
1430
+ * @returns {number}
1431
+ */
1432
+
1433
+ }, {
1434
+ key: "getLastFullyVisibleRow",
1435
+ value: function getLastFullyVisibleRow() {
1436
+ return this.instance.rowIndexMapper.getVisualFromRenderableIndex(this.instance.view._wt.wtScroll.getLastVisibleRow());
1437
+ }
1438
+ /**
1439
+ * Destroys internal WalkOnTable's instance. Detaches all of the bonded listeners.
1383
1440
  *
1384
1441
  * @private
1385
1442
  */
@@ -1387,7 +1444,8 @@ var TableView = /*#__PURE__*/function () {
1387
1444
  }, {
1388
1445
  key: "destroy",
1389
1446
  value: function destroy() {
1390
- this.wt.destroy();
1447
+ this._wt.destroy();
1448
+
1391
1449
  this.eventManager.destroy();
1392
1450
  }
1393
1451
  }]);