handsontable 14.2.0 → 14.3.0-next-3fa6b18-20240410

Sign up to get free protection for your applications and to get access to all the features.
Files changed (469) hide show
  1. package/3rdparty/walkontable/src/calculator/renderAllColumns.js +1 -1
  2. package/3rdparty/walkontable/src/calculator/renderAllColumns.mjs +1 -1
  3. package/3rdparty/walkontable/src/calculator/renderAllRows.js +1 -1
  4. package/3rdparty/walkontable/src/calculator/renderAllRows.mjs +1 -1
  5. package/3rdparty/walkontable/src/calculator/viewportColumns.js +13 -18
  6. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +13 -18
  7. package/3rdparty/walkontable/src/calculator/viewportRows.js +11 -16
  8. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +11 -16
  9. package/3rdparty/walkontable/src/cell/coords.js +13 -18
  10. package/3rdparty/walkontable/src/cell/coords.mjs +13 -18
  11. package/3rdparty/walkontable/src/cell/range.d.ts +2 -1
  12. package/3rdparty/walkontable/src/cell/range.js +42 -30
  13. package/3rdparty/walkontable/src/cell/range.mjs +42 -30
  14. package/3rdparty/walkontable/src/core/_base.js +2 -2
  15. package/3rdparty/walkontable/src/core/_base.mjs +2 -2
  16. package/3rdparty/walkontable/src/core/clone.js +1 -1
  17. package/3rdparty/walkontable/src/core/clone.mjs +1 -1
  18. package/3rdparty/walkontable/src/event.js +72 -104
  19. package/3rdparty/walkontable/src/event.mjs +72 -104
  20. package/3rdparty/walkontable/src/filter/column.js +1 -1
  21. package/3rdparty/walkontable/src/filter/column.mjs +1 -1
  22. package/3rdparty/walkontable/src/filter/row.js +1 -1
  23. package/3rdparty/walkontable/src/filter/row.mjs +1 -1
  24. package/3rdparty/walkontable/src/index.js +1 -1
  25. package/3rdparty/walkontable/src/overlay/_base.js +1 -1
  26. package/3rdparty/walkontable/src/overlay/_base.mjs +1 -1
  27. package/3rdparty/walkontable/src/overlay/bottom.js +1 -1
  28. package/3rdparty/walkontable/src/overlay/bottom.mjs +1 -1
  29. package/3rdparty/walkontable/src/overlay/inlineStart.js +15 -1
  30. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +16 -2
  31. package/3rdparty/walkontable/src/overlay/top.js +12 -1
  32. package/3rdparty/walkontable/src/overlay/top.mjs +13 -2
  33. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +1 -1
  34. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +1 -1
  35. package/3rdparty/walkontable/src/overlays.js +47 -5
  36. package/3rdparty/walkontable/src/overlays.mjs +47 -5
  37. package/3rdparty/walkontable/src/renderer/_base.js +1 -1
  38. package/3rdparty/walkontable/src/renderer/_base.mjs +1 -1
  39. package/3rdparty/walkontable/src/renderer/cells.js +1 -1
  40. package/3rdparty/walkontable/src/renderer/cells.mjs +1 -1
  41. package/3rdparty/walkontable/src/renderer/rowHeaders.js +1 -1
  42. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +1 -1
  43. package/3rdparty/walkontable/src/renderer/rows.js +1 -1
  44. package/3rdparty/walkontable/src/renderer/rows.mjs +1 -1
  45. package/3rdparty/walkontable/src/renderer/table.js +1 -1
  46. package/3rdparty/walkontable/src/renderer/table.mjs +1 -1
  47. package/3rdparty/walkontable/src/scroll.js +16 -18
  48. package/3rdparty/walkontable/src/scroll.mjs +16 -18
  49. package/3rdparty/walkontable/src/selection/manager.js +48 -69
  50. package/3rdparty/walkontable/src/selection/manager.mjs +48 -69
  51. package/3rdparty/walkontable/src/selection/scanner.js +33 -42
  52. package/3rdparty/walkontable/src/selection/scanner.mjs +33 -42
  53. package/3rdparty/walkontable/src/settings.js +1 -1
  54. package/3rdparty/walkontable/src/settings.mjs +1 -1
  55. package/3rdparty/walkontable/src/table.js +1 -1
  56. package/3rdparty/walkontable/src/table.mjs +1 -1
  57. package/3rdparty/walkontable/src/utils/column.js +1 -1
  58. package/3rdparty/walkontable/src/utils/column.mjs +1 -1
  59. package/3rdparty/walkontable/src/utils/columnStretching.js +28 -45
  60. package/3rdparty/walkontable/src/utils/columnStretching.mjs +28 -45
  61. package/3rdparty/walkontable/src/utils/nodesPool.js +1 -1
  62. package/3rdparty/walkontable/src/utils/nodesPool.mjs +1 -1
  63. package/3rdparty/walkontable/src/utils/orderView/view.js +2 -2
  64. package/3rdparty/walkontable/src/utils/orderView/view.mjs +2 -2
  65. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +1 -1
  66. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +1 -1
  67. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +1 -1
  68. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +1 -1
  69. package/3rdparty/walkontable/src/utils/row.js +1 -1
  70. package/3rdparty/walkontable/src/utils/row.mjs +1 -1
  71. package/CHANGELOG.md +20 -0
  72. package/base.js +2 -2
  73. package/base.mjs +2 -2
  74. package/core/viewportScroll/index.js +4 -1
  75. package/core/viewportScroll/index.mjs +4 -1
  76. package/core/viewportScroll/scrollStrategies/focusScroll.js +15 -0
  77. package/core/viewportScroll/scrollStrategies/focusScroll.mjs +11 -0
  78. package/core.d.ts +4 -3
  79. package/core.js +98 -43
  80. package/core.mjs +98 -43
  81. package/dataMap/dataMap.js +1 -1
  82. package/dataMap/dataMap.mjs +1 -1
  83. package/dataMap/dataSource.js +2 -2
  84. package/dataMap/dataSource.mjs +2 -2
  85. package/dataMap/metaManager/lazyFactoryMap.js +3 -5
  86. package/dataMap/metaManager/lazyFactoryMap.mjs +2 -4
  87. package/dataMap/metaManager/metaLayers/cellMeta.js +2 -2
  88. package/dataMap/metaManager/metaLayers/cellMeta.mjs +2 -2
  89. package/dataMap/metaManager/metaLayers/columnMeta.js +1 -1
  90. package/dataMap/metaManager/metaLayers/columnMeta.mjs +1 -1
  91. package/dataMap/metaManager/metaLayers/globalMeta.js +1 -1
  92. package/dataMap/metaManager/metaLayers/globalMeta.mjs +1 -1
  93. package/dataMap/metaManager/metaLayers/tableMeta.js +1 -1
  94. package/dataMap/metaManager/metaLayers/tableMeta.mjs +1 -1
  95. package/dataMap/metaManager/metaSchema.js +272 -272
  96. package/dataMap/metaManager/metaSchema.mjs +272 -272
  97. package/dataMap/metaManager/mods/dynamicCellMeta.js +1 -1
  98. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +1 -1
  99. package/dataMap/metaManager/mods/extendMetaProperties.js +1 -1
  100. package/dataMap/metaManager/mods/extendMetaProperties.mjs +1 -1
  101. package/dataMap/replaceData.js +1 -1
  102. package/dataMap/replaceData.mjs +1 -1
  103. package/dist/handsontable.css +4 -4
  104. package/dist/handsontable.full.css +4 -4
  105. package/dist/handsontable.full.js +9814 -10020
  106. package/dist/handsontable.full.min.css +3 -3
  107. package/dist/handsontable.full.min.js +292 -292
  108. package/dist/handsontable.js +7484 -7056
  109. package/dist/handsontable.min.css +3 -3
  110. package/dist/handsontable.min.js +25 -25
  111. package/dist/languages/all.min.js +1 -1
  112. package/dist/languages/ar-AR.min.js +1 -1
  113. package/dist/languages/cs-CZ.min.js +1 -1
  114. package/dist/languages/de-CH.min.js +1 -1
  115. package/dist/languages/de-DE.min.js +1 -1
  116. package/dist/languages/en-US.min.js +1 -1
  117. package/dist/languages/es-MX.min.js +1 -1
  118. package/dist/languages/fr-FR.min.js +1 -1
  119. package/dist/languages/hr-HR.min.js +1 -1
  120. package/dist/languages/it-IT.min.js +1 -1
  121. package/dist/languages/ja-JP.min.js +1 -1
  122. package/dist/languages/ko-KR.min.js +1 -1
  123. package/dist/languages/lv-LV.min.js +1 -1
  124. package/dist/languages/nb-NO.min.js +1 -1
  125. package/dist/languages/nl-NL.min.js +1 -1
  126. package/dist/languages/pl-PL.min.js +1 -1
  127. package/dist/languages/pt-BR.min.js +1 -1
  128. package/dist/languages/ru-RU.min.js +1 -1
  129. package/dist/languages/sr-SP.min.js +1 -1
  130. package/dist/languages/zh-CN.min.js +1 -1
  131. package/dist/languages/zh-TW.min.js +1 -1
  132. package/editorManager.js +26 -24
  133. package/editorManager.mjs +26 -24
  134. package/editors/autocompleteEditor/autocompleteEditor.js +7 -11
  135. package/editors/autocompleteEditor/autocompleteEditor.mjs +7 -11
  136. package/editors/baseEditor/baseEditor.js +1 -1
  137. package/editors/baseEditor/baseEditor.mjs +1 -1
  138. package/editors/dateEditor/dateEditor.js +49 -11
  139. package/editors/dateEditor/dateEditor.mjs +49 -11
  140. package/editors/selectEditor/selectEditor.js +20 -19
  141. package/editors/selectEditor/selectEditor.mjs +20 -19
  142. package/editors/textEditor/textEditor.js +1 -1
  143. package/editors/textEditor/textEditor.mjs +1 -1
  144. package/eventManager.js +2 -2
  145. package/eventManager.mjs +2 -2
  146. package/focusManager.js +64 -82
  147. package/focusManager.mjs +64 -82
  148. package/helpers/dom/element.js +23 -1
  149. package/helpers/dom/element.mjs +21 -1
  150. package/helpers/mixed.js +2 -2
  151. package/helpers/mixed.mjs +2 -2
  152. package/helpers/object.js +2 -2
  153. package/helpers/object.mjs +2 -2
  154. package/i18n/languages/ar-AR.d.ts +5 -0
  155. package/i18n/languages/ar-AR.js +1 -1
  156. package/i18n/languages/cs-CZ.d.ts +5 -0
  157. package/i18n/languages/cs-CZ.js +1 -1
  158. package/i18n/languages/de-CH.js +1 -1
  159. package/i18n/languages/de-DE.js +1 -1
  160. package/i18n/languages/en-US.js +1 -1
  161. package/i18n/languages/es-MX.js +1 -1
  162. package/i18n/languages/fr-FR.js +1 -1
  163. package/i18n/languages/hr-HR.d.ts +5 -0
  164. package/i18n/languages/hr-HR.js +1 -1
  165. package/i18n/languages/it-IT.js +1 -1
  166. package/i18n/languages/ja-JP.js +1 -1
  167. package/i18n/languages/ko-KR.js +1 -1
  168. package/i18n/languages/lv-LV.js +1 -1
  169. package/i18n/languages/nb-NO.js +1 -1
  170. package/i18n/languages/nl-NL.js +1 -1
  171. package/i18n/languages/pl-PL.js +1 -1
  172. package/i18n/languages/pt-BR.js +1 -1
  173. package/i18n/languages/ru-RU.js +1 -1
  174. package/i18n/languages/sr-SP.d.ts +5 -0
  175. package/i18n/languages/sr-SP.js +1 -1
  176. package/i18n/languages/zh-CN.js +1 -1
  177. package/i18n/languages/zh-TW.js +1 -1
  178. package/i18n/registry.js +1 -1
  179. package/index.d.ts +10 -0
  180. package/index.js +1 -1
  181. package/package.json +14 -10
  182. package/pluginHooks.d.ts +4 -3
  183. package/pluginHooks.js +143 -82
  184. package/pluginHooks.mjs +143 -82
  185. package/plugins/autoColumnSize/autoColumnSize.js +50 -66
  186. package/plugins/autoColumnSize/autoColumnSize.mjs +50 -66
  187. package/plugins/autoRowSize/autoRowSize.js +29 -35
  188. package/plugins/autoRowSize/autoRowSize.mjs +29 -35
  189. package/plugins/autofill/autofill.js +31 -39
  190. package/plugins/autofill/autofill.mjs +31 -39
  191. package/plugins/base/base.js +13 -18
  192. package/plugins/base/base.mjs +13 -18
  193. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +6 -6
  194. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +6 -6
  195. package/plugins/collapsibleColumns/collapsibleColumns.js +60 -51
  196. package/plugins/collapsibleColumns/collapsibleColumns.mjs +60 -51
  197. package/plugins/columnSorting/columnSorting.js +50 -46
  198. package/plugins/columnSorting/columnSorting.mjs +50 -46
  199. package/plugins/columnSorting/columnStatesManager.js +1 -1
  200. package/plugins/columnSorting/columnStatesManager.mjs +1 -1
  201. package/plugins/columnSummary/columnSummary.js +36 -40
  202. package/plugins/columnSummary/columnSummary.mjs +36 -40
  203. package/plugins/columnSummary/endpoints.js +1 -1
  204. package/plugins/columnSummary/endpoints.mjs +1 -1
  205. package/plugins/comments/commentEditor.js +1 -1
  206. package/plugins/comments/commentEditor.mjs +1 -1
  207. package/plugins/comments/comments.js +117 -159
  208. package/plugins/comments/comments.mjs +117 -159
  209. package/plugins/comments/contextMenuItem/addEditComment.js +1 -1
  210. package/plugins/comments/contextMenuItem/readOnlyComment.js +1 -1
  211. package/plugins/comments/contextMenuItem/removeComment.js +1 -1
  212. package/plugins/comments/displaySwitch.js +1 -1
  213. package/plugins/comments/displaySwitch.mjs +1 -1
  214. package/plugins/contextMenu/commandExecutor.js +1 -1
  215. package/plugins/contextMenu/commandExecutor.mjs +1 -1
  216. package/plugins/contextMenu/contextMenu.js +24 -30
  217. package/plugins/contextMenu/contextMenu.mjs +24 -30
  218. package/plugins/contextMenu/itemsFactory.js +2 -2
  219. package/plugins/contextMenu/itemsFactory.mjs +2 -2
  220. package/plugins/contextMenu/menu/cursor.js +1 -1
  221. package/plugins/contextMenu/menu/cursor.mjs +1 -1
  222. package/plugins/contextMenu/menu/defaultShortcutsList.js +26 -10
  223. package/plugins/contextMenu/menu/defaultShortcutsList.mjs +26 -10
  224. package/plugins/contextMenu/menu/menu.js +14 -22
  225. package/plugins/contextMenu/menu/menu.mjs +14 -22
  226. package/plugins/contextMenu/menu/positioner.js +41 -58
  227. package/plugins/contextMenu/menu/positioner.mjs +41 -58
  228. package/plugins/contextMenu/predefinedItems/alignment.js +1 -1
  229. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
  230. package/plugins/contextMenu/predefinedItems/columnLeft.js +1 -1
  231. package/plugins/contextMenu/predefinedItems/columnRight.js +1 -1
  232. package/plugins/contextMenu/predefinedItems/index.js +1 -1
  233. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -1
  234. package/plugins/contextMenu/predefinedItems/redo.js +1 -1
  235. package/plugins/contextMenu/predefinedItems/removeColumn.js +1 -1
  236. package/plugins/contextMenu/predefinedItems/removeRow.js +1 -1
  237. package/plugins/contextMenu/predefinedItems/rowAbove.js +1 -1
  238. package/plugins/contextMenu/predefinedItems/rowBelow.js +1 -1
  239. package/plugins/contextMenu/predefinedItems/undo.js +1 -1
  240. package/plugins/copyPaste/contextMenuItem/cut.js +1 -1
  241. package/plugins/copyPaste/copyPaste.js +120 -161
  242. package/plugins/copyPaste/copyPaste.mjs +120 -161
  243. package/plugins/copyPaste/copyableRanges.js +43 -66
  244. package/plugins/copyPaste/copyableRanges.mjs +43 -66
  245. package/plugins/customBorders/contextMenuItem/bottom.js +1 -1
  246. package/plugins/customBorders/contextMenuItem/left.js +1 -1
  247. package/plugins/customBorders/contextMenuItem/noBorders.js +1 -1
  248. package/plugins/customBorders/contextMenuItem/right.js +1 -1
  249. package/plugins/customBorders/contextMenuItem/top.js +1 -1
  250. package/plugins/customBorders/customBorders.js +14 -16
  251. package/plugins/customBorders/customBorders.mjs +13 -15
  252. package/plugins/dragToScroll/dragToScroll.js +7 -7
  253. package/plugins/dragToScroll/dragToScroll.mjs +7 -7
  254. package/plugins/dropdownMenu/dropdownMenu.js +84 -110
  255. package/plugins/dropdownMenu/dropdownMenu.mjs +84 -110
  256. package/plugins/exportFile/dataProvider.js +2 -2
  257. package/plugins/exportFile/dataProvider.mjs +2 -2
  258. package/plugins/exportFile/exportFile.js +2 -2
  259. package/plugins/exportFile/exportFile.mjs +1 -1
  260. package/plugins/exportFile/types/_base.js +1 -1
  261. package/plugins/exportFile/types/_base.mjs +1 -1
  262. package/plugins/filters/component/_base.js +1 -1
  263. package/plugins/filters/component/_base.mjs +1 -1
  264. package/plugins/filters/component/actionBar.js +11 -11
  265. package/plugins/filters/component/actionBar.mjs +9 -9
  266. package/plugins/filters/component/condition.js +15 -17
  267. package/plugins/filters/component/condition.mjs +14 -16
  268. package/plugins/filters/component/operators.js +7 -7
  269. package/plugins/filters/component/operators.mjs +7 -7
  270. package/plugins/filters/component/value.js +26 -30
  271. package/plugins/filters/component/value.mjs +25 -29
  272. package/plugins/filters/condition/beginsWith.js +1 -1
  273. package/plugins/filters/condition/between.js +1 -1
  274. package/plugins/filters/condition/contains.js +1 -1
  275. package/plugins/filters/condition/date/after.js +1 -1
  276. package/plugins/filters/condition/date/before.js +1 -1
  277. package/plugins/filters/condition/date/today.js +1 -1
  278. package/plugins/filters/condition/date/tomorrow.js +1 -1
  279. package/plugins/filters/condition/date/yesterday.js +1 -1
  280. package/plugins/filters/condition/empty.js +1 -1
  281. package/plugins/filters/condition/endsWith.js +1 -1
  282. package/plugins/filters/condition/equal.js +1 -1
  283. package/plugins/filters/condition/greaterThan.js +1 -1
  284. package/plugins/filters/condition/greaterThanOrEqual.js +1 -1
  285. package/plugins/filters/condition/lessThan.js +1 -1
  286. package/plugins/filters/condition/lessThanOrEqual.js +1 -1
  287. package/plugins/filters/condition/none.js +1 -1
  288. package/plugins/filters/condition/notBetween.js +1 -1
  289. package/plugins/filters/condition/notContains.js +1 -1
  290. package/plugins/filters/condition/notEmpty.js +1 -1
  291. package/plugins/filters/condition/notEqual.js +1 -1
  292. package/plugins/filters/conditionCollection.js +1 -1
  293. package/plugins/filters/conditionCollection.mjs +1 -1
  294. package/plugins/filters/conditionUpdateObserver.js +23 -25
  295. package/plugins/filters/conditionUpdateObserver.mjs +23 -25
  296. package/plugins/filters/dataFilter.js +2 -2
  297. package/plugins/filters/dataFilter.mjs +2 -2
  298. package/plugins/filters/filters.js +84 -98
  299. package/plugins/filters/filters.mjs +83 -97
  300. package/plugins/filters/logicalOperations/conjunction.js +1 -1
  301. package/plugins/filters/logicalOperations/disjunction.js +1 -1
  302. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +1 -1
  303. package/plugins/filters/ui/_base.js +2 -2
  304. package/plugins/filters/ui/_base.mjs +1 -1
  305. package/plugins/filters/ui/input.js +13 -19
  306. package/plugins/filters/ui/input.mjs +13 -19
  307. package/plugins/filters/ui/link.js +8 -13
  308. package/plugins/filters/ui/link.mjs +8 -13
  309. package/plugins/filters/ui/multipleSelect.js +86 -113
  310. package/plugins/filters/ui/multipleSelect.mjs +85 -112
  311. package/plugins/filters/ui/radioInput.js +12 -20
  312. package/plugins/filters/ui/radioInput.mjs +12 -20
  313. package/plugins/filters/ui/select.js +51 -73
  314. package/plugins/filters/ui/select.mjs +49 -71
  315. package/plugins/formulas/formulas.js +270 -328
  316. package/plugins/formulas/formulas.mjs +271 -329
  317. package/plugins/formulas/indexSyncer/axisSyncer.js +38 -61
  318. package/plugins/formulas/indexSyncer/axisSyncer.mjs +38 -61
  319. package/plugins/formulas/indexSyncer/index.js +25 -48
  320. package/plugins/formulas/indexSyncer/index.mjs +25 -48
  321. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -1
  322. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +1 -1
  323. package/plugins/hiddenColumns/hiddenColumns.js +68 -87
  324. package/plugins/hiddenColumns/hiddenColumns.mjs +68 -87
  325. package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -1
  326. package/plugins/hiddenRows/contextMenuItem/showRow.js +1 -1
  327. package/plugins/hiddenRows/hiddenRows.js +67 -86
  328. package/plugins/hiddenRows/hiddenRows.mjs +67 -86
  329. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
  330. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
  331. package/plugins/manualColumnFreeze/manualColumnFreeze.js +24 -32
  332. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +25 -33
  333. package/plugins/manualColumnMove/manualColumnMove.js +133 -177
  334. package/plugins/manualColumnMove/manualColumnMove.mjs +133 -177
  335. package/plugins/manualColumnMove/ui/_base.js +1 -1
  336. package/plugins/manualColumnMove/ui/_base.mjs +1 -1
  337. package/plugins/manualColumnResize/manualColumnResize.js +169 -230
  338. package/plugins/manualColumnResize/manualColumnResize.mjs +169 -230
  339. package/plugins/manualRowMove/manualRowMove.js +106 -135
  340. package/plugins/manualRowMove/manualRowMove.mjs +106 -135
  341. package/plugins/manualRowMove/ui/_base.js +1 -1
  342. package/plugins/manualRowMove/ui/_base.mjs +1 -1
  343. package/plugins/manualRowResize/manualRowResize.js +150 -209
  344. package/plugins/manualRowResize/manualRowResize.mjs +150 -209
  345. package/plugins/mergeCells/calculations/autofill.js +1 -1
  346. package/plugins/mergeCells/calculations/autofill.mjs +1 -1
  347. package/plugins/mergeCells/calculations/selection.js +3 -72
  348. package/plugins/mergeCells/calculations/selection.mjs +3 -72
  349. package/plugins/mergeCells/cellCoords.js +1 -1
  350. package/plugins/mergeCells/cellCoords.mjs +1 -1
  351. package/plugins/mergeCells/cellsCollection.js +118 -2
  352. package/plugins/mergeCells/cellsCollection.mjs +118 -2
  353. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +12 -2
  354. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +11 -1
  355. package/plugins/mergeCells/focusOrder.js +305 -0
  356. package/plugins/mergeCells/focusOrder.mjs +300 -0
  357. package/plugins/mergeCells/mergeCells.js +500 -398
  358. package/plugins/mergeCells/mergeCells.mjs +500 -398
  359. package/plugins/multiColumnSorting/multiColumnSorting.js +9 -3
  360. package/plugins/multiColumnSorting/multiColumnSorting.mjs +9 -3
  361. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +2 -2
  362. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +2 -2
  363. package/plugins/nestedHeaders/nestedHeaders.js +206 -254
  364. package/plugins/nestedHeaders/nestedHeaders.mjs +207 -255
  365. package/plugins/nestedHeaders/stateManager/headersTree.js +21 -32
  366. package/plugins/nestedHeaders/stateManager/headersTree.mjs +21 -32
  367. package/plugins/nestedHeaders/stateManager/index.js +30 -41
  368. package/plugins/nestedHeaders/stateManager/index.mjs +30 -41
  369. package/plugins/nestedHeaders/stateManager/sourceSettings.js +19 -30
  370. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +19 -30
  371. package/plugins/nestedHeaders/utils/ghostTable.js +1 -1
  372. package/plugins/nestedHeaders/utils/ghostTable.mjs +1 -1
  373. package/plugins/nestedRows/data/dataManager.js +2 -2
  374. package/plugins/nestedRows/data/dataManager.mjs +2 -2
  375. package/plugins/nestedRows/nestedRows.js +154 -185
  376. package/plugins/nestedRows/nestedRows.mjs +155 -186
  377. package/plugins/nestedRows/ui/_base.js +1 -1
  378. package/plugins/nestedRows/ui/_base.mjs +1 -1
  379. package/plugins/nestedRows/ui/contextMenu.js +13 -17
  380. package/plugins/nestedRows/ui/contextMenu.mjs +11 -15
  381. package/plugins/nestedRows/utils/rowMoveController.js +6 -6
  382. package/plugins/nestedRows/utils/rowMoveController.mjs +6 -6
  383. package/plugins/persistentState/persistentState.js +1 -1
  384. package/plugins/persistentState/persistentState.mjs +1 -1
  385. package/plugins/persistentState/storage.js +3 -3
  386. package/plugins/persistentState/storage.mjs +3 -3
  387. package/plugins/search/search.js +8 -8
  388. package/plugins/search/search.mjs +8 -8
  389. package/plugins/touchScroll/touchScroll.js +16 -20
  390. package/plugins/touchScroll/touchScroll.mjs +17 -21
  391. package/plugins/trimRows/trimRows.js +7 -7
  392. package/plugins/trimRows/trimRows.mjs +7 -7
  393. package/plugins/undoRedo/index.js +1 -1
  394. package/renderers/checkboxRenderer/checkboxRenderer.js +8 -5
  395. package/renderers/checkboxRenderer/checkboxRenderer.mjs +8 -5
  396. package/selection/highlight/highlight.js +16 -18
  397. package/selection/highlight/highlight.mjs +15 -17
  398. package/selection/highlight/visualSelection.js +3 -1
  399. package/selection/highlight/visualSelection.mjs +3 -1
  400. package/selection/range.js +3 -5
  401. package/selection/range.mjs +2 -4
  402. package/selection/selection.js +227 -69
  403. package/selection/selection.mjs +225 -67
  404. package/selection/transformation.js +149 -118
  405. package/selection/transformation.mjs +149 -118
  406. package/shortcutContexts/commands/editor/closeAndSave.js +2 -2
  407. package/shortcutContexts/commands/editor/closeAndSave.mjs +2 -2
  408. package/shortcutContexts/commands/editor/open.js +18 -3
  409. package/shortcutContexts/commands/editor/open.mjs +18 -3
  410. package/shortcutContexts/commands/extendCellsSelection/down.js +1 -1
  411. package/shortcutContexts/commands/extendCellsSelection/down.mjs +1 -1
  412. package/shortcutContexts/commands/extendCellsSelection/left.js +1 -1
  413. package/shortcutContexts/commands/extendCellsSelection/left.mjs +1 -1
  414. package/shortcutContexts/commands/extendCellsSelection/right.js +1 -1
  415. package/shortcutContexts/commands/extendCellsSelection/right.mjs +1 -1
  416. package/shortcutContexts/commands/extendCellsSelection/toColumns.js +1 -1
  417. package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +1 -1
  418. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +3 -1
  419. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +3 -1
  420. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +9 -3
  421. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +9 -3
  422. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +10 -3
  423. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +10 -3
  424. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +3 -1
  425. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +3 -1
  426. package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +3 -1
  427. package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +3 -1
  428. package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +3 -1
  429. package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +3 -1
  430. package/shortcutContexts/commands/extendCellsSelection/toRows.js +1 -1
  431. package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +1 -1
  432. package/shortcutContexts/commands/extendCellsSelection/up.js +1 -1
  433. package/shortcutContexts/commands/extendCellsSelection/up.mjs +1 -1
  434. package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +6 -1
  435. package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +6 -1
  436. package/shortcutContexts/commands/moveCellSelection/inlineStart.js +6 -1
  437. package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +6 -1
  438. package/shortcutContexts/grid.js +9 -3
  439. package/shortcutContexts/grid.mjs +9 -3
  440. package/shortcuts/context.js +3 -2
  441. package/shortcuts/context.mjs +3 -2
  442. package/shortcuts/manager.js +2 -2
  443. package/shortcuts/manager.mjs +2 -2
  444. package/tableView.js +53 -79
  445. package/tableView.mjs +53 -79
  446. package/translations/changesObservable/observable.js +21 -38
  447. package/translations/changesObservable/observable.mjs +21 -38
  448. package/translations/changesObservable/observer.js +7 -12
  449. package/translations/changesObservable/observer.mjs +6 -11
  450. package/translations/indexMapper.js +1 -1
  451. package/translations/indexMapper.mjs +1 -1
  452. package/translations/mapCollections/aggregatedCollection.js +2 -2
  453. package/translations/mapCollections/aggregatedCollection.mjs +2 -2
  454. package/translations/mapCollections/mapCollection.js +1 -1
  455. package/translations/mapCollections/mapCollection.mjs +1 -1
  456. package/translations/maps/indexMap.js +2 -2
  457. package/translations/maps/indexMap.mjs +2 -2
  458. package/translations/maps/linkedPhysicalIndexToValueMap.js +1 -1
  459. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +1 -1
  460. package/utils/dataStructures/linkedList.js +7 -2
  461. package/utils/dataStructures/linkedList.mjs +7 -2
  462. package/utils/dataStructures/tree.js +2 -2
  463. package/utils/dataStructures/tree.mjs +2 -2
  464. package/utils/ghostTable.js +1 -1
  465. package/utils/ghostTable.mjs +1 -1
  466. package/utils/interval.js +27 -45
  467. package/utils/interval.mjs +27 -45
  468. package/utils/samplesGenerator.js +1 -1
  469. package/utils/samplesGenerator.mjs +1 -1
@@ -18,14 +18,11 @@ function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclarati
18
18
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
19
19
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
20
20
  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; }
21
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
21
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
22
22
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
23
- function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
24
- function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
25
- function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
26
- function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
27
- function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
28
- function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
23
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
24
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
25
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
29
26
  const PLUGIN_KEY = exports.PLUGIN_KEY = 'comments';
30
27
  const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 60;
31
28
  const META_COMMENT = exports.META_COMMENT = 'comment';
@@ -132,75 +129,16 @@ var _preventEditorHiding = /*#__PURE__*/new WeakMap();
132
129
  var _tempEditorDimensions = /*#__PURE__*/new WeakMap();
133
130
  var _cellBelowCursor = /*#__PURE__*/new WeakMap();
134
131
  var _commentValueBeforeSave = /*#__PURE__*/new WeakMap();
135
- var _onMouseDown = /*#__PURE__*/new WeakSet();
136
- var _onMouseOver = /*#__PURE__*/new WeakSet();
137
- var _onMouseUp = /*#__PURE__*/new WeakSet();
138
- var _onAfterRenderer = /*#__PURE__*/new WeakSet();
139
- var _onEditorBlur = /*#__PURE__*/new WeakSet();
140
- var _onEditorFocus = /*#__PURE__*/new WeakSet();
141
- var _onEditorMouseDown = /*#__PURE__*/new WeakSet();
142
- var _onEditorMouseUp = /*#__PURE__*/new WeakSet();
143
- var _onAfterDocumentKeyDown = /*#__PURE__*/new WeakSet();
144
- var _onAfterScroll = /*#__PURE__*/new WeakSet();
132
+ var _Comments_brand = /*#__PURE__*/new WeakSet();
145
133
  class Comments extends _base.BasePlugin {
146
134
  constructor() {
147
135
  super(...arguments);
148
- /**
149
- * Observes the changes in the scroll position if triggered it hides the comment editor.
150
- */
151
- _classPrivateMethodInitSpec(this, _onAfterScroll);
152
- /**
153
- * Observes the pressed keys and if there is already opened the comment editor prevents open
154
- * the table editor into the fast edit mode.
155
- *
156
- * @param {Event} event The keydown event.
157
- */
158
- _classPrivateMethodInitSpec(this, _onAfterDocumentKeyDown);
159
- /**
160
- * `mouseup` hook. Along with `onEditorMouseDown` used to simulate the textarea resizing event.
161
- *
162
- * @param {MouseEvent} event The `mouseup` event.
163
- */
164
- _classPrivateMethodInitSpec(this, _onEditorMouseUp);
165
- /**
166
- * `mousedown` hook. Along with `onEditorMouseUp` used to simulate the textarea resizing event.
167
- *
168
- * @param {MouseEvent} event The `mousedown` event.
169
- */
170
- _classPrivateMethodInitSpec(this, _onEditorMouseDown);
171
- /**
172
- * Hook observer the "focus" event from the comments editor element. The hook takes the control of
173
- * the keyboard shortcuts by switching the context to plugins one.
174
- */
175
- _classPrivateMethodInitSpec(this, _onEditorFocus);
176
- /**
177
- * Hook observer the "blur" event from the comments editor element. The hook clears the
178
- * editor content and gives back the keyboard shortcuts control by switching to the "grid" context.
179
- */
180
- _classPrivateMethodInitSpec(this, _onEditorBlur);
181
- /**
182
- * The `afterRenderer` hook callback.
183
- *
184
- * @param {HTMLTableCellElement} TD The rendered `TD` element.
185
- * @param {object} cellProperties The rendered cell's property object.
186
- */
187
- _classPrivateMethodInitSpec(this, _onAfterRenderer);
188
- /**
189
- * `mouseup` event callback.
190
- */
191
- _classPrivateMethodInitSpec(this, _onMouseUp);
192
- /**
193
- * `mouseover` event callback.
194
- *
195
- * @param {MouseEvent} event The `mouseover` event.
196
- */
197
- _classPrivateMethodInitSpec(this, _onMouseOver);
198
136
  /**
199
137
  * `mousedown` event callback.
200
138
  *
201
139
  * @param {MouseEvent} event The `mousedown` event.
202
140
  */
203
- _classPrivateMethodInitSpec(this, _onMouseDown);
141
+ _classPrivateMethodInitSpec(this, _Comments_brand);
204
142
  /**
205
143
  * Current cell range, an object with `from` property, with `row` and `col` properties (e.q. `{from: {row: 1, col: 6}}`).
206
144
  *
@@ -213,30 +151,21 @@ class Comments extends _base.BasePlugin {
213
151
  * @private
214
152
  * @type {CommentEditor}
215
153
  */
216
- _classPrivateFieldInitSpec(this, _editor, {
217
- writable: true,
218
- value: null
219
- });
154
+ _classPrivateFieldInitSpec(this, _editor, null);
220
155
  /**
221
156
  * Instance of {@link DisplaySwitch}.
222
157
  *
223
158
  * @private
224
159
  * @type {DisplaySwitch}
225
160
  */
226
- _classPrivateFieldInitSpec(this, _displaySwitch, {
227
- writable: true,
228
- value: null
229
- });
161
+ _classPrivateFieldInitSpec(this, _displaySwitch, null);
230
162
  /**
231
163
  * Prevents showing/hiding editor that reacts on the logic triggered by the "mouseover" events.
232
164
  *
233
165
  * @private
234
166
  * @type {boolean}
235
167
  */
236
- _classPrivateFieldInitSpec(this, _preventEditorAutoSwitch, {
237
- writable: true,
238
- value: false
239
- });
168
+ _classPrivateFieldInitSpec(this, _preventEditorAutoSwitch, false);
240
169
  /**
241
170
  * Prevents hiding editor when the table viewport is scrolled and that scroll is triggered by the
242
171
  * keyboard shortcut that insert or edits the comment.
@@ -244,40 +173,28 @@ class Comments extends _base.BasePlugin {
244
173
  * @private
245
174
  * @type {boolean}
246
175
  */
247
- _classPrivateFieldInitSpec(this, _preventEditorHiding, {
248
- writable: true,
249
- value: false
250
- });
176
+ _classPrivateFieldInitSpec(this, _preventEditorHiding, false);
251
177
  /**
252
178
  * The property for holding editor dimensions for further processing.
253
179
  *
254
180
  * @private
255
181
  * @type {object}
256
182
  */
257
- _classPrivateFieldInitSpec(this, _tempEditorDimensions, {
258
- writable: true,
259
- value: {}
260
- });
183
+ _classPrivateFieldInitSpec(this, _tempEditorDimensions, {});
261
184
  /**
262
185
  * The flag that allows processing mousedown event correctly when comments editor is triggered.
263
186
  *
264
187
  * @private
265
188
  * @type {boolean}
266
189
  */
267
- _classPrivateFieldInitSpec(this, _cellBelowCursor, {
268
- writable: true,
269
- value: null
270
- });
190
+ _classPrivateFieldInitSpec(this, _cellBelowCursor, null);
271
191
  /**
272
192
  * Holds the comment value before it's actually saved to the cell meta.
273
193
  *
274
194
  * @private
275
195
  * @type {string}
276
196
  */
277
- _classPrivateFieldInitSpec(this, _commentValueBeforeSave, {
278
- writable: true,
279
- value: ''
280
- });
197
+ _classPrivateFieldInitSpec(this, _commentValueBeforeSave, '');
281
198
  }
282
199
  static get PLUGIN_KEY() {
283
200
  return PLUGIN_KEY;
@@ -302,19 +219,19 @@ class Comments extends _base.BasePlugin {
302
219
  if (this.enabled) {
303
220
  return;
304
221
  }
305
- if (!_classPrivateFieldGet(this, _editor)) {
306
- _classPrivateFieldSet(this, _editor, new _commentEditor.default(this.hot.rootDocument, this.hot.isRtl()));
222
+ if (!_classPrivateFieldGet(_editor, this)) {
223
+ _classPrivateFieldSet(_editor, this, new _commentEditor.default(this.hot.rootDocument, this.hot.isRtl()));
307
224
  }
308
- if (!_classPrivateFieldGet(this, _displaySwitch)) {
309
- _classPrivateFieldSet(this, _displaySwitch, new _displaySwitch2.default(this.getDisplayDelaySetting()));
225
+ if (!_classPrivateFieldGet(_displaySwitch, this)) {
226
+ _classPrivateFieldSet(_displaySwitch, this, new _displaySwitch2.default(this.getDisplayDelaySetting()));
310
227
  }
311
228
  this.addHook('afterContextMenuDefaultOptions', options => this.addToContextMenu(options));
312
- this.addHook('afterRenderer', (TD, row, col, prop, value, cellProperties) => _classPrivateMethodGet(this, _onAfterRenderer, _onAfterRenderer2).call(this, TD, cellProperties));
313
- this.addHook('afterScroll', () => _classPrivateMethodGet(this, _onAfterScroll, _onAfterScroll2).call(this));
229
+ this.addHook('afterRenderer', (TD, row, col, prop, value, cellProperties) => _assertClassBrand(_Comments_brand, this, _onAfterRenderer).call(this, TD, cellProperties));
230
+ this.addHook('afterScroll', () => _assertClassBrand(_Comments_brand, this, _onAfterScroll).call(this));
314
231
  this.addHook('afterBeginEditing', () => this.hide());
315
- this.addHook('afterDocumentKeyDown', event => _classPrivateMethodGet(this, _onAfterDocumentKeyDown, _onAfterDocumentKeyDown2).call(this, event));
316
- _classPrivateFieldGet(this, _displaySwitch).addLocalHook('hide', () => this.hide());
317
- _classPrivateFieldGet(this, _displaySwitch).addLocalHook('show', (row, col) => this.showAtCell(row, col));
232
+ this.addHook('afterDocumentKeyDown', event => _assertClassBrand(_Comments_brand, this, _onAfterDocumentKeyDown).call(this, event));
233
+ _classPrivateFieldGet(_displaySwitch, this).addLocalHook('hide', () => this.hide());
234
+ _classPrivateFieldGet(_displaySwitch, this).addLocalHook('show', (row, col) => this.showAtCell(row, col));
318
235
  this.registerShortcuts();
319
236
  this.registerListeners();
320
237
  super.enablePlugin();
@@ -327,7 +244,7 @@ class Comments extends _base.BasePlugin {
327
244
  * - [`comments`](@/api/options.md#comments)
328
245
  */
329
246
  updatePlugin() {
330
- _classPrivateFieldGet(this, _displaySwitch).updateDelay(this.getDisplayDelaySetting());
247
+ _classPrivateFieldGet(_displaySwitch, this).updateDelay(this.getDisplayDelaySetting());
331
248
  super.updatePlugin();
332
249
  }
333
250
 
@@ -352,34 +269,34 @@ class Comments extends _base.BasePlugin {
352
269
  keys: [['Control', 'Alt', 'M']],
353
270
  callback: () => {
354
271
  const range = this.hot.getSelectedRangeLast();
355
- _classPrivateFieldSet(this, _preventEditorHiding, true);
272
+ _classPrivateFieldSet(_preventEditorHiding, this, true);
356
273
  this.hot.scrollToFocusedCell(() => {
357
274
  this.setRange(range);
358
275
  this.show();
359
276
  this.focusEditor();
360
277
  manager.setActiveContextName(SHORTCUTS_CONTEXT_NAME);
361
278
  this.hot._registerTimeout(() => {
362
- _classPrivateFieldSet(this, _preventEditorHiding, false);
279
+ _classPrivateFieldSet(_preventEditorHiding, this, false);
363
280
  });
364
281
  });
365
282
  },
366
283
  stopPropagation: true,
367
284
  runOnlyIf: () => {
368
285
  var _this$hot$getSelected;
369
- return ((_this$hot$getSelected = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected === void 0 ? void 0 : _this$hot$getSelected.highlight.isCell()) && !_classPrivateFieldGet(this, _editor).isVisible();
286
+ return ((_this$hot$getSelected = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected === void 0 ? void 0 : _this$hot$getSelected.highlight.isCell()) && !_classPrivateFieldGet(_editor, this).isVisible();
370
287
  },
371
288
  group: SHORTCUTS_GROUP
372
289
  });
373
290
  pluginContext.addShortcut({
374
291
  keys: [['Escape']],
375
292
  callback: () => {
376
- _classPrivateFieldGet(this, _editor).setValue(_classPrivateFieldGet(this, _commentValueBeforeSave));
293
+ _classPrivateFieldGet(_editor, this).setValue(_classPrivateFieldGet(_commentValueBeforeSave, this));
377
294
  this.hide();
378
295
  manager.setActiveContextName('grid');
379
296
  },
380
297
  runOnlyIf: () => {
381
298
  var _this$hot$getSelected2;
382
- return ((_this$hot$getSelected2 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected2 === void 0 ? void 0 : _this$hot$getSelected2.highlight.isCell()) && _classPrivateFieldGet(this, _editor).isVisible();
299
+ return ((_this$hot$getSelected2 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected2 === void 0 ? void 0 : _this$hot$getSelected2.highlight.isCell()) && _classPrivateFieldGet(_editor, this).isVisible();
383
300
  },
384
301
  group: SHORTCUTS_GROUP
385
302
  });
@@ -391,7 +308,7 @@ class Comments extends _base.BasePlugin {
391
308
  },
392
309
  runOnlyIf: () => {
393
310
  var _this$hot$getSelected3;
394
- return ((_this$hot$getSelected3 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected3 === void 0 ? void 0 : _this$hot$getSelected3.highlight.isCell()) && _classPrivateFieldGet(this, _editor).isVisible();
311
+ return ((_this$hot$getSelected3 = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected3 === void 0 ? void 0 : _this$hot$getSelected3.highlight.isCell()) && _classPrivateFieldGet(_editor, this).isVisible();
395
312
  },
396
313
  group: SHORTCUTS_GROUP
397
314
  });
@@ -416,13 +333,13 @@ class Comments extends _base.BasePlugin {
416
333
  rootDocument
417
334
  } = this.hot;
418
335
  const editorElement = this.getEditorInputElement();
419
- this.eventManager.addEventListener(rootDocument, 'mouseover', event => _classPrivateMethodGet(this, _onMouseOver, _onMouseOver2).call(this, event));
420
- this.eventManager.addEventListener(rootDocument, 'mousedown', event => _classPrivateMethodGet(this, _onMouseDown, _onMouseDown2).call(this, event));
421
- this.eventManager.addEventListener(rootDocument, 'mouseup', () => _classPrivateMethodGet(this, _onMouseUp, _onMouseUp2).call(this));
422
- this.eventManager.addEventListener(editorElement, 'focus', () => _classPrivateMethodGet(this, _onEditorFocus, _onEditorFocus2).call(this));
423
- this.eventManager.addEventListener(editorElement, 'blur', () => _classPrivateMethodGet(this, _onEditorBlur, _onEditorBlur2).call(this));
424
- this.eventManager.addEventListener(editorElement, 'mousedown', event => _classPrivateMethodGet(this, _onEditorMouseDown, _onEditorMouseDown2).call(this, event));
425
- this.eventManager.addEventListener(editorElement, 'mouseup', event => _classPrivateMethodGet(this, _onEditorMouseUp, _onEditorMouseUp2).call(this, event));
336
+ this.eventManager.addEventListener(rootDocument, 'mouseover', event => _assertClassBrand(_Comments_brand, this, _onMouseOver).call(this, event));
337
+ this.eventManager.addEventListener(rootDocument, 'mousedown', event => _assertClassBrand(_Comments_brand, this, _onMouseDown).call(this, event));
338
+ this.eventManager.addEventListener(rootDocument, 'mouseup', () => _assertClassBrand(_Comments_brand, this, _onMouseUp).call(this));
339
+ this.eventManager.addEventListener(editorElement, 'focus', () => _assertClassBrand(_Comments_brand, this, _onEditorFocus).call(this));
340
+ this.eventManager.addEventListener(editorElement, 'blur', () => _assertClassBrand(_Comments_brand, this, _onEditorBlur).call(this));
341
+ this.eventManager.addEventListener(editorElement, 'mousedown', event => _assertClassBrand(_Comments_brand, this, _onEditorMouseDown).call(this, event));
342
+ this.eventManager.addEventListener(editorElement, 'mouseup', event => _assertClassBrand(_Comments_brand, this, _onEditorMouseUp).call(this, event));
426
343
  }
427
344
 
428
345
  /**
@@ -473,7 +390,7 @@ class Comments extends _base.BasePlugin {
473
390
  if (!this.range.from) {
474
391
  throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');
475
392
  }
476
- const editorValue = _classPrivateFieldGet(this, _editor).getValue();
393
+ const editorValue = _classPrivateFieldGet(_editor, this).getValue();
477
394
  let comment = '';
478
395
  if (value !== null && value !== undefined) {
479
396
  comment = value;
@@ -576,9 +493,9 @@ class Comments extends _base.BasePlugin {
576
493
  return false;
577
494
  }
578
495
  const meta = this.hot.getCellMeta(this.range.from.row, this.range.from.col);
579
- _classPrivateFieldGet(this, _displaySwitch).cancelHiding();
580
- _classPrivateFieldGet(this, _editor).setValue((_ref = meta[META_COMMENT] ? meta[META_COMMENT][META_COMMENT_VALUE] : null) !== null && _ref !== void 0 ? _ref : '');
581
- _classPrivateFieldGet(this, _editor).show();
496
+ _classPrivateFieldGet(_displaySwitch, this).cancelHiding();
497
+ _classPrivateFieldGet(_editor, this).setValue((_ref = meta[META_COMMENT] ? meta[META_COMMENT][META_COMMENT_VALUE] : null) !== null && _ref !== void 0 ? _ref : '');
498
+ _classPrivateFieldGet(_editor, this).show();
582
499
  this.refreshEditor(true);
583
500
  return true;
584
501
  }
@@ -601,7 +518,7 @@ class Comments extends _base.BasePlugin {
601
518
  * Hides the comment editor.
602
519
  */
603
520
  hide() {
604
- _classPrivateFieldGet(this, _editor).hide();
521
+ _classPrivateFieldGet(_editor, this).hide();
605
522
  }
606
523
 
607
524
  /**
@@ -612,7 +529,7 @@ class Comments extends _base.BasePlugin {
612
529
  refreshEditor() {
613
530
  var _renderableRow, _renderableColumn;
614
531
  let force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
615
- if (!force && (!this.range.from || !_classPrivateFieldGet(this, _editor).isVisible())) {
532
+ if (!force && (!this.range.from || !_classPrivateFieldGet(_editor, this).isVisible())) {
616
533
  return;
617
534
  }
618
535
  const {
@@ -630,7 +547,7 @@ class Comments extends _base.BasePlugin {
630
547
 
631
548
  // Reset the editor position to (0, 0) so the opening direction calculation wouldn't be influenced by its
632
549
  // previous position
633
- _classPrivateFieldGet(this, _editor).setPosition(0, 0);
550
+ _classPrivateFieldGet(_editor, this).setPosition(0, 0);
634
551
  if (renderableRow === null) {
635
552
  renderableRow = rowIndexMapper.getRenderableFromVisualIndex(rowIndexMapper.getNearestNotHiddenIndex(visualRow, -1));
636
553
  }
@@ -658,9 +575,9 @@ class Comments extends _base.BasePlugin {
658
575
  }, true);
659
576
  const commentStyle = this.getCommentMeta(visualRow, visualColumn, META_STYLE);
660
577
  if (commentStyle) {
661
- _classPrivateFieldGet(this, _editor).setSize(commentStyle.width, commentStyle.height);
578
+ _classPrivateFieldGet(_editor, this).setSize(commentStyle.width, commentStyle.height);
662
579
  } else {
663
- _classPrivateFieldGet(this, _editor).resetSize();
580
+ _classPrivateFieldGet(_editor, this).resetSize();
664
581
  }
665
582
  const lastColWidth = isBeforeRenderedColumns ? 0 : wtTable.getStretchedColumnWidth(renderableColumn);
666
583
  const lastRowHeight = targetingPreviousRow && !isBeforeRenderedRows ? (0, _element.outerHeight)(TD) : 0;
@@ -673,7 +590,7 @@ class Comments extends _base.BasePlugin {
673
590
  const {
674
591
  width: editorWidth,
675
592
  height: editorHeight
676
- } = _classPrivateFieldGet(this, _editor).getSize();
593
+ } = _classPrivateFieldGet(_editor, this).getSize();
677
594
  const {
678
595
  innerWidth,
679
596
  innerHeight
@@ -694,15 +611,15 @@ class Comments extends _base.BasePlugin {
694
611
  if (top + editorHeight > innerHeight) {
695
612
  y -= editorHeight - cellHeight + 1;
696
613
  }
697
- _classPrivateFieldGet(this, _editor).setPosition(x, y);
698
- _classPrivateFieldGet(this, _editor).setReadOnlyState(this.getCommentMeta(visualRow, visualColumn, META_READONLY));
614
+ _classPrivateFieldGet(_editor, this).setPosition(x, y);
615
+ _classPrivateFieldGet(_editor, this).setReadOnlyState(this.getCommentMeta(visualRow, visualColumn, META_READONLY));
699
616
  }
700
617
 
701
618
  /**
702
619
  * Focuses the comments editor element.
703
620
  */
704
621
  focusEditor() {
705
- _classPrivateFieldGet(this, _editor).focus();
622
+ _classPrivateFieldGet(_editor, this).focus();
706
623
  }
707
624
 
708
625
  /**
@@ -771,28 +688,28 @@ class Comments extends _base.BasePlugin {
771
688
  * @returns {HTMLTextAreaElement}
772
689
  */
773
690
  getEditorInputElement() {
774
- return _classPrivateFieldGet(this, _editor).getInputElement();
691
+ return _classPrivateFieldGet(_editor, this).getInputElement();
775
692
  }
776
693
 
777
694
  /**
778
695
  * Destroys the plugin instance.
779
696
  */
780
697
  destroy() {
781
- if (_classPrivateFieldGet(this, _editor)) {
782
- _classPrivateFieldGet(this, _editor).destroy();
698
+ if (_classPrivateFieldGet(_editor, this)) {
699
+ _classPrivateFieldGet(_editor, this).destroy();
783
700
  }
784
- if (_classPrivateFieldGet(this, _displaySwitch)) {
785
- _classPrivateFieldGet(this, _displaySwitch).destroy();
701
+ if (_classPrivateFieldGet(_displaySwitch, this)) {
702
+ _classPrivateFieldGet(_displaySwitch, this).destroy();
786
703
  }
787
704
  super.destroy();
788
705
  }
789
706
  }
790
707
  exports.Comments = Comments;
791
- function _onMouseDown2(event) {
708
+ function _onMouseDown(event) {
792
709
  if (!this.hot.view || !this.hot.view._wt) {
793
710
  return;
794
711
  }
795
- if (!_classPrivateFieldGet(this, _preventEditorAutoSwitch) && !this.targetIsCommentTextArea(event)) {
712
+ if (!_classPrivateFieldGet(_preventEditorAutoSwitch, this) && !this.targetIsCommentTextArea(event)) {
796
713
  const eventCell = (0, _element.closest)(event.target, 'TD', 'TBODY');
797
714
  let coordinates = null;
798
715
  if (eventCell) {
@@ -803,49 +720,81 @@ function _onMouseDown2(event) {
803
720
  }
804
721
  }
805
722
  }
806
- function _onMouseOver2(event) {
723
+ /**
724
+ * `mouseover` event callback.
725
+ *
726
+ * @param {MouseEvent} event The `mouseover` event.
727
+ */
728
+ function _onMouseOver(event) {
807
729
  const {
808
730
  rootDocument
809
731
  } = this.hot;
810
- if (_classPrivateFieldGet(this, _preventEditorAutoSwitch) || _classPrivateFieldGet(this, _editor).isFocused() || (0, _element.hasClass)(event.target, 'wtBorder') || _classPrivateFieldGet(this, _cellBelowCursor) === event.target || !_classPrivateFieldGet(this, _editor)) {
732
+ if (_classPrivateFieldGet(_preventEditorAutoSwitch, this) || _classPrivateFieldGet(_editor, this).isFocused() || (0, _element.hasClass)(event.target, 'wtBorder') || _classPrivateFieldGet(_cellBelowCursor, this) === event.target || !_classPrivateFieldGet(_editor, this)) {
811
733
  return;
812
734
  }
813
- _classPrivateFieldSet(this, _cellBelowCursor, rootDocument.elementFromPoint(event.clientX, event.clientY));
735
+ _classPrivateFieldSet(_cellBelowCursor, this, rootDocument.elementFromPoint(event.clientX, event.clientY));
814
736
  if (this.targetIsCellWithComment(event)) {
815
737
  const range = this.hot._createCellRange(this.hot.getCoords(event.target));
816
- _classPrivateFieldGet(this, _displaySwitch).show(range);
738
+ _classPrivateFieldGet(_displaySwitch, this).show(range);
817
739
  } else if ((0, _element.isChildOf)(event.target, rootDocument) && !this.targetIsCommentTextArea(event)) {
818
- _classPrivateFieldGet(this, _displaySwitch).hide();
740
+ _classPrivateFieldGet(_displaySwitch, this).hide();
819
741
  }
820
742
  }
821
- function _onMouseUp2() {
822
- _classPrivateFieldSet(this, _preventEditorAutoSwitch, false);
743
+ /**
744
+ * `mouseup` event callback.
745
+ */
746
+ function _onMouseUp() {
747
+ _classPrivateFieldSet(_preventEditorAutoSwitch, this, false);
823
748
  }
824
- function _onAfterRenderer2(TD, cellProperties) {
749
+ /**
750
+ * The `afterRenderer` hook callback.
751
+ *
752
+ * @param {HTMLTableCellElement} TD The rendered `TD` element.
753
+ * @param {object} cellProperties The rendered cell's property object.
754
+ */
755
+ function _onAfterRenderer(TD, cellProperties) {
825
756
  if (cellProperties[META_COMMENT] && cellProperties[META_COMMENT][META_COMMENT_VALUE]) {
826
757
  (0, _element.addClass)(TD, cellProperties.commentedCellClassName);
827
758
  }
828
759
  }
829
- function _onEditorBlur2() {
830
- _classPrivateFieldSet(this, _commentValueBeforeSave, '');
760
+ /**
761
+ * Hook observer the "blur" event from the comments editor element. The hook clears the
762
+ * editor content and gives back the keyboard shortcuts control by switching to the "grid" context.
763
+ */
764
+ function _onEditorBlur() {
765
+ _classPrivateFieldSet(_commentValueBeforeSave, this, '');
831
766
  this.hot.getShortcutManager().setActiveContextName('grid');
832
767
  this.setComment();
833
768
  }
834
- function _onEditorFocus2() {
835
- _classPrivateFieldSet(this, _commentValueBeforeSave, this.getComment());
769
+ /**
770
+ * Hook observer the "focus" event from the comments editor element. The hook takes the control of
771
+ * the keyboard shortcuts by switching the context to plugins one.
772
+ */
773
+ function _onEditorFocus() {
774
+ _classPrivateFieldSet(_commentValueBeforeSave, this, this.getComment());
836
775
  this.hot.listen();
837
776
  this.hot.getShortcutManager().setActiveContextName(SHORTCUTS_CONTEXT_NAME);
838
777
  }
839
- function _onEditorMouseDown2(event) {
840
- _classPrivateFieldSet(this, _tempEditorDimensions, {
778
+ /**
779
+ * `mousedown` hook. Along with `onEditorMouseUp` used to simulate the textarea resizing event.
780
+ *
781
+ * @param {MouseEvent} event The `mousedown` event.
782
+ */
783
+ function _onEditorMouseDown(event) {
784
+ _classPrivateFieldSet(_tempEditorDimensions, this, {
841
785
  width: (0, _element.outerWidth)(event.target),
842
786
  height: (0, _element.outerHeight)(event.target)
843
787
  });
844
788
  }
845
- function _onEditorMouseUp2(event) {
789
+ /**
790
+ * `mouseup` hook. Along with `onEditorMouseDown` used to simulate the textarea resizing event.
791
+ *
792
+ * @param {MouseEvent} event The `mouseup` event.
793
+ */
794
+ function _onEditorMouseUp(event) {
846
795
  const currentWidth = (0, _element.outerWidth)(event.target);
847
796
  const currentHeight = (0, _element.outerHeight)(event.target);
848
- if (currentWidth !== _classPrivateFieldGet(this, _tempEditorDimensions).width + 1 || currentHeight !== _classPrivateFieldGet(this, _tempEditorDimensions).height + 2) {
797
+ if (currentWidth !== _classPrivateFieldGet(_tempEditorDimensions, this).width + 1 || currentHeight !== _classPrivateFieldGet(_tempEditorDimensions, this).height + 2) {
849
798
  this.updateCommentMeta(this.range.from.row, this.range.from.col, {
850
799
  [META_STYLE]: {
851
800
  width: currentWidth,
@@ -854,13 +803,22 @@ function _onEditorMouseUp2(event) {
854
803
  });
855
804
  }
856
805
  }
857
- function _onAfterDocumentKeyDown2(event) {
858
- if (_classPrivateFieldGet(this, _editor).isVisible()) {
806
+ /**
807
+ * Observes the pressed keys and if there is already opened the comment editor prevents open
808
+ * the table editor into the fast edit mode.
809
+ *
810
+ * @param {Event} event The keydown event.
811
+ */
812
+ function _onAfterDocumentKeyDown(event) {
813
+ if (_classPrivateFieldGet(_editor, this).isVisible()) {
859
814
  (0, _event.stopImmediatePropagation)(event);
860
815
  }
861
816
  }
862
- function _onAfterScroll2() {
863
- if (!_classPrivateFieldGet(this, _preventEditorHiding)) {
817
+ /**
818
+ * Observes the changes in the scroll position if triggered it hides the comment editor.
819
+ */
820
+ function _onAfterScroll() {
821
+ if (!_classPrivateFieldGet(_preventEditorHiding, this)) {
864
822
  this.hide();
865
823
  }
866
824
  }