handsontable 12.1.2 → 12.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (918) hide show
  1. package/3rdparty/SheetClip/SheetClip.js +3 -32
  2. package/3rdparty/SheetClip/SheetClip.mjs +3 -23
  3. package/3rdparty/SheetClip/index.js +0 -2
  4. package/3rdparty/autoResize/autoResize.js +119 -145
  5. package/3rdparty/autoResize/autoResize.mjs +119 -143
  6. package/3rdparty/autoResize/index.js +0 -2
  7. package/3rdparty/walkontable/src/border.js +72 -174
  8. package/3rdparty/walkontable/src/border.mjs +74 -161
  9. package/3rdparty/walkontable/src/calculator/constants.js +0 -3
  10. package/3rdparty/walkontable/src/calculator/constants.mjs +0 -2
  11. package/3rdparty/walkontable/src/calculator/index.js +0 -10
  12. package/3rdparty/walkontable/src/calculator/viewportColumns.js +26 -76
  13. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +26 -69
  14. package/3rdparty/walkontable/src/calculator/viewportRows.js +20 -48
  15. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +20 -41
  16. package/3rdparty/walkontable/src/cell/coords.js +13 -43
  17. package/3rdparty/walkontable/src/cell/coords.mjs +13 -38
  18. package/3rdparty/walkontable/src/cell/range.js +55 -130
  19. package/3rdparty/walkontable/src/cell/range.mjs +60 -126
  20. package/3rdparty/walkontable/src/core/_base.js +16 -74
  21. package/3rdparty/walkontable/src/core/_base.mjs +19 -70
  22. package/3rdparty/walkontable/src/core/clone.js +1 -40
  23. package/3rdparty/walkontable/src/core/clone.mjs +3 -30
  24. package/3rdparty/walkontable/src/core/core.js +3 -57
  25. package/3rdparty/walkontable/src/core/core.mjs +5 -41
  26. package/3rdparty/walkontable/src/event.js +31 -78
  27. package/3rdparty/walkontable/src/event.mjs +31 -65
  28. package/3rdparty/walkontable/src/facade/core.js +1 -17
  29. package/3rdparty/walkontable/src/facade/core.mjs +7 -20
  30. package/3rdparty/walkontable/src/filter/column.js +9 -18
  31. package/3rdparty/walkontable/src/filter/column.mjs +9 -17
  32. package/3rdparty/walkontable/src/filter/row.js +9 -18
  33. package/3rdparty/walkontable/src/filter/row.mjs +9 -17
  34. package/3rdparty/walkontable/src/index.js +0 -31
  35. package/3rdparty/walkontable/src/overlay/_base.js +24 -69
  36. package/3rdparty/walkontable/src/overlay/_base.mjs +31 -68
  37. package/3rdparty/walkontable/src/overlay/bottom.js +28 -99
  38. package/3rdparty/walkontable/src/overlay/bottom.mjs +30 -86
  39. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +7 -53
  40. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +9 -40
  41. package/3rdparty/walkontable/src/overlay/constants.js +0 -6
  42. package/3rdparty/walkontable/src/overlay/constants.mjs +0 -1
  43. package/3rdparty/walkontable/src/overlay/index.js +0 -17
  44. package/3rdparty/walkontable/src/overlay/inlineStart.js +21 -91
  45. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +23 -78
  46. package/3rdparty/walkontable/src/overlay/top.js +27 -100
  47. package/3rdparty/walkontable/src/overlay/top.mjs +29 -87
  48. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +4 -51
  49. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +6 -38
  50. package/3rdparty/walkontable/src/overlays.js +58 -129
  51. package/3rdparty/walkontable/src/overlays.mjs +60 -121
  52. package/3rdparty/walkontable/src/renderer/_base.js +4 -20
  53. package/3rdparty/walkontable/src/renderer/_base.mjs +8 -22
  54. package/3rdparty/walkontable/src/renderer/cells.js +10 -54
  55. package/3rdparty/walkontable/src/renderer/cells.mjs +22 -52
  56. package/3rdparty/walkontable/src/renderer/colGroup.js +10 -47
  57. package/3rdparty/walkontable/src/renderer/colGroup.mjs +21 -46
  58. package/3rdparty/walkontable/src/renderer/columnHeaders.js +8 -50
  59. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +19 -49
  60. package/3rdparty/walkontable/src/renderer/index.js +13 -36
  61. package/3rdparty/walkontable/src/renderer/index.mjs +17 -27
  62. package/3rdparty/walkontable/src/renderer/rowHeaders.js +8 -50
  63. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +20 -49
  64. package/3rdparty/walkontable/src/renderer/rows.js +3 -46
  65. package/3rdparty/walkontable/src/renderer/rows.mjs +3 -29
  66. package/3rdparty/walkontable/src/renderer/table.js +22 -49
  67. package/3rdparty/walkontable/src/renderer/table.mjs +22 -48
  68. package/3rdparty/walkontable/src/scroll.js +56 -86
  69. package/3rdparty/walkontable/src/scroll.mjs +58 -86
  70. package/3rdparty/walkontable/src/selection.js +20 -101
  71. package/3rdparty/walkontable/src/selection.mjs +22 -85
  72. package/3rdparty/walkontable/src/settings.js +9 -29
  73. package/3rdparty/walkontable/src/settings.mjs +9 -27
  74. package/3rdparty/walkontable/src/table/bottom.js +1 -35
  75. package/3rdparty/walkontable/src/table/bottom.mjs +6 -25
  76. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +1 -35
  77. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +7 -26
  78. package/3rdparty/walkontable/src/table/inlineStart.js +1 -35
  79. package/3rdparty/walkontable/src/table/inlineStart.mjs +3 -22
  80. package/3rdparty/walkontable/src/table/master.js +10 -55
  81. package/3rdparty/walkontable/src/table/master.mjs +15 -44
  82. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +7 -28
  83. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +7 -26
  84. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +7 -28
  85. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +7 -26
  86. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +7 -22
  87. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +7 -20
  88. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +7 -23
  89. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +7 -21
  90. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +7 -22
  91. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +7 -20
  92. package/3rdparty/walkontable/src/table/top.js +1 -35
  93. package/3rdparty/walkontable/src/table/top.mjs +6 -25
  94. package/3rdparty/walkontable/src/table/topInlineStartCorner.js +1 -35
  95. package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +7 -26
  96. package/3rdparty/walkontable/src/table.js +74 -238
  97. package/3rdparty/walkontable/src/table.mjs +84 -227
  98. package/3rdparty/walkontable/src/types.js +0 -5
  99. package/3rdparty/walkontable/src/types.mjs +0 -5
  100. package/3rdparty/walkontable/src/utils/column.js +9 -31
  101. package/3rdparty/walkontable/src/utils/column.mjs +13 -30
  102. package/3rdparty/walkontable/src/utils/nodesPool.js +3 -12
  103. package/3rdparty/walkontable/src/utils/nodesPool.mjs +3 -11
  104. package/3rdparty/walkontable/src/utils/orderView/constants.js +0 -3
  105. package/3rdparty/walkontable/src/utils/orderView/constants.mjs +0 -2
  106. package/3rdparty/walkontable/src/utils/orderView/index.js +0 -5
  107. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -33
  108. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +6 -26
  109. package/3rdparty/walkontable/src/utils/orderView/view.js +14 -46
  110. package/3rdparty/walkontable/src/utils/orderView/view.mjs +21 -50
  111. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +3 -15
  112. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +3 -14
  113. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +8 -22
  114. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +23 -34
  115. package/3rdparty/walkontable/src/utils/row.js +2 -13
  116. package/3rdparty/walkontable/src/utils/row.mjs +2 -12
  117. package/3rdparty/walkontable/src/viewport.js +38 -100
  118. package/3rdparty/walkontable/src/viewport.mjs +40 -99
  119. package/CHANGELOG.md +103 -5
  120. package/base.js +6 -17
  121. package/base.mjs +6 -12
  122. package/cellTypes/autocompleteType/autocompleteType.js +0 -4
  123. package/cellTypes/autocompleteType/index.js +0 -2
  124. package/cellTypes/checkboxType/checkboxType.js +0 -3
  125. package/cellTypes/checkboxType/index.js +0 -2
  126. package/cellTypes/dateType/dateType.js +0 -4
  127. package/cellTypes/dateType/index.js +0 -2
  128. package/cellTypes/dropdownType/dropdownType.js +0 -4
  129. package/cellTypes/dropdownType/index.js +0 -2
  130. package/cellTypes/handsontableType/handsontableType.js +0 -3
  131. package/cellTypes/handsontableType/index.js +0 -2
  132. package/cellTypes/index.js +0 -21
  133. package/cellTypes/index.mjs +3 -5
  134. package/cellTypes/numericType/index.js +0 -2
  135. package/cellTypes/numericType/numericType.js +0 -4
  136. package/cellTypes/passwordType/index.js +0 -2
  137. package/cellTypes/passwordType/passwordType.js +0 -3
  138. package/cellTypes/registry.js +10 -25
  139. package/cellTypes/registry.mjs +10 -20
  140. package/cellTypes/textType/index.js +0 -2
  141. package/cellTypes/textType/textType.js +0 -3
  142. package/cellTypes/timeType/index.js +0 -2
  143. package/cellTypes/timeType/timeType.js +0 -4
  144. package/core.d.ts +6 -4
  145. package/core.js +514 -974
  146. package/core.mjs +519 -921
  147. package/dataMap/dataMap.js +127 -212
  148. package/dataMap/dataMap.mjs +127 -188
  149. package/{dataSource.js → dataMap/dataSource.js} +18 -66
  150. package/{dataSource.mjs → dataMap/dataSource.mjs} +20 -60
  151. package/dataMap/index.js +0 -13
  152. package/dataMap/metaManager/index.js +21 -46
  153. package/dataMap/metaManager/index.mjs +47 -64
  154. package/dataMap/metaManager/lazyFactoryMap.js +23 -55
  155. package/dataMap/metaManager/lazyFactoryMap.mjs +23 -43
  156. package/dataMap/metaManager/metaLayers/cellMeta.js +16 -52
  157. package/dataMap/metaManager/metaLayers/cellMeta.mjs +16 -37
  158. package/dataMap/metaManager/metaLayers/columnMeta.js +8 -22
  159. package/dataMap/metaManager/metaLayers/columnMeta.mjs +14 -25
  160. package/dataMap/metaManager/metaLayers/globalMeta.js +4 -19
  161. package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -15
  162. package/dataMap/metaManager/metaLayers/tableMeta.js +4 -15
  163. package/dataMap/metaManager/metaLayers/tableMeta.mjs +28 -37
  164. package/dataMap/metaManager/metaSchema.js +196 -257
  165. package/dataMap/metaManager/metaSchema.mjs +196 -248
  166. package/dataMap/metaManager/mods/dynamicCellMeta.js +6 -36
  167. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +20 -39
  168. package/dataMap/metaManager/mods/extendMetaProperties.js +5 -28
  169. package/dataMap/metaManager/mods/extendMetaProperties.mjs +4 -18
  170. package/dataMap/metaManager/utils.js +11 -20
  171. package/dataMap/metaManager/utils.mjs +21 -23
  172. package/dataMap/replaceData.js +14 -35
  173. package/dataMap/replaceData.mjs +35 -45
  174. package/dist/handsontable.css +2 -2
  175. package/dist/handsontable.full.css +2 -2
  176. package/dist/handsontable.full.js +64469 -93042
  177. package/dist/handsontable.full.min.css +2 -2
  178. package/dist/handsontable.full.min.js +527 -284
  179. package/dist/handsontable.js +9616 -21414
  180. package/dist/handsontable.min.css +2 -2
  181. package/dist/handsontable.min.js +3 -3
  182. package/dist/languages/all.js +0 -175
  183. package/dist/languages/ar-AR.js +0 -10
  184. package/dist/languages/cs-CZ.js +0 -10
  185. package/dist/languages/de-CH.js +0 -10
  186. package/dist/languages/de-DE.js +0 -10
  187. package/dist/languages/en-US.js +0 -10
  188. package/dist/languages/es-MX.js +0 -10
  189. package/dist/languages/fr-FR.js +0 -10
  190. package/dist/languages/it-IT.js +0 -10
  191. package/dist/languages/ja-JP.js +0 -10
  192. package/dist/languages/ko-KR.js +0 -10
  193. package/dist/languages/lv-LV.js +0 -10
  194. package/dist/languages/nb-NO.js +0 -10
  195. package/dist/languages/nl-NL.js +0 -10
  196. package/dist/languages/pl-PL.js +0 -10
  197. package/dist/languages/pt-BR.js +0 -10
  198. package/dist/languages/ru-RU.js +0 -10
  199. package/dist/languages/sr-SP.js +0 -10
  200. package/dist/languages/zh-CN.js +0 -10
  201. package/dist/languages/zh-TW.js +0 -10
  202. package/editorManager.js +89 -124
  203. package/editorManager.mjs +89 -104
  204. package/editors/autocompleteEditor/autocompleteEditor.js +26 -133
  205. package/editors/autocompleteEditor/autocompleteEditor.mjs +26 -104
  206. package/editors/autocompleteEditor/index.js +0 -2
  207. package/editors/baseEditor/baseEditor.js +45 -155
  208. package/editors/baseEditor/baseEditor.mjs +45 -129
  209. package/editors/baseEditor/index.js +0 -2
  210. package/editors/checkboxEditor/checkboxEditor.js +2 -33
  211. package/editors/checkboxEditor/checkboxEditor.mjs +2 -19
  212. package/editors/checkboxEditor/index.js +0 -2
  213. package/editors/dateEditor/dateEditor.js +36 -97
  214. package/editors/dateEditor/dateEditor.mjs +35 -74
  215. package/editors/dateEditor/index.js +0 -2
  216. package/editors/dropdownEditor/dropdownEditor.js +1 -41
  217. package/editors/dropdownEditor/dropdownEditor.mjs +1 -22
  218. package/editors/dropdownEditor/index.js +0 -2
  219. package/editors/handsontableEditor/handsontableEditor.js +13 -85
  220. package/editors/handsontableEditor/handsontableEditor.mjs +13 -66
  221. package/editors/handsontableEditor/index.js +0 -2
  222. package/editors/index.js +0 -25
  223. package/editors/index.mjs +3 -5
  224. package/editors/numericEditor/index.js +0 -2
  225. package/editors/numericEditor/numericEditor.js +1 -31
  226. package/editors/numericEditor/numericEditor.mjs +1 -18
  227. package/editors/passwordEditor/index.js +0 -2
  228. package/editors/passwordEditor/passwordEditor.js +1 -38
  229. package/editors/passwordEditor/passwordEditor.mjs +1 -22
  230. package/editors/registry.js +10 -36
  231. package/editors/registry.mjs +10 -28
  232. package/editors/selectEditor/index.js +0 -2
  233. package/editors/selectEditor/selectEditor.js +21 -73
  234. package/editors/selectEditor/selectEditor.mjs +21 -56
  235. package/editors/textEditor/caretPositioner.js +0 -12
  236. package/editors/textEditor/caretPositioner.mjs +10 -20
  237. package/editors/textEditor/index.js +0 -2
  238. package/editors/textEditor/textEditor.js +38 -137
  239. package/editors/textEditor/textEditor.mjs +38 -106
  240. package/editors/timeEditor/index.js +0 -2
  241. package/editors/timeEditor/timeEditor.js +1 -36
  242. package/editors/timeEditor/timeEditor.mjs +1 -21
  243. package/eventManager.js +20 -56
  244. package/eventManager.mjs +23 -56
  245. package/helpers/array.js +22 -88
  246. package/helpers/array.mjs +22 -58
  247. package/helpers/browser.js +25 -51
  248. package/helpers/browser.mjs +25 -32
  249. package/helpers/console.js +3 -13
  250. package/helpers/console.mjs +8 -16
  251. package/helpers/data.d.ts +0 -1
  252. package/helpers/data.js +10 -55
  253. package/helpers/data.mjs +10 -33
  254. package/helpers/date.js +2 -3
  255. package/helpers/date.mjs +2 -2
  256. package/helpers/dom/element.js +67 -259
  257. package/helpers/dom/element.mjs +74 -194
  258. package/helpers/dom/event.js +3 -7
  259. package/helpers/dom/event.mjs +3 -3
  260. package/helpers/feature.js +13 -47
  261. package/helpers/feature.mjs +13 -31
  262. package/helpers/function.js +14 -59
  263. package/helpers/function.mjs +20 -52
  264. package/helpers/mixed.js +9 -66
  265. package/helpers/mixed.mjs +15 -51
  266. package/helpers/number.js +4 -46
  267. package/helpers/number.mjs +4 -23
  268. package/helpers/object.js +15 -72
  269. package/helpers/object.mjs +21 -52
  270. package/helpers/string.js +6 -28
  271. package/helpers/string.mjs +12 -21
  272. package/helpers/templateLiteralTag.js +0 -6
  273. package/helpers/templateLiteralTag.mjs +7 -10
  274. package/helpers/unicode.js +17 -26
  275. package/helpers/unicode.mjs +17 -15
  276. package/helpers/wrappers/jquery.js +4 -14
  277. package/helpers/wrappers/jquery.mjs +4 -13
  278. package/i18n/constants.js +1 -3
  279. package/i18n/constants.mjs +1 -1
  280. package/i18n/index.js +0 -7
  281. package/i18n/languages/ar-AR.js +0 -16
  282. package/i18n/languages/ar-AR.mjs +1 -4
  283. package/i18n/languages/cs-CZ.js +0 -16
  284. package/i18n/languages/cs-CZ.mjs +1 -4
  285. package/i18n/languages/de-CH.js +0 -16
  286. package/i18n/languages/de-CH.mjs +1 -4
  287. package/i18n/languages/de-DE.js +0 -16
  288. package/i18n/languages/de-DE.mjs +1 -4
  289. package/i18n/languages/en-US.js +0 -16
  290. package/i18n/languages/en-US.mjs +1 -4
  291. package/i18n/languages/es-MX.js +0 -16
  292. package/i18n/languages/es-MX.mjs +1 -4
  293. package/i18n/languages/fr-FR.js +0 -16
  294. package/i18n/languages/fr-FR.mjs +1 -4
  295. package/i18n/languages/index.js +0 -39
  296. package/i18n/languages/it-IT.js +0 -16
  297. package/i18n/languages/it-IT.mjs +1 -4
  298. package/i18n/languages/ja-JP.js +0 -16
  299. package/i18n/languages/ja-JP.mjs +1 -4
  300. package/i18n/languages/ko-KR.js +0 -16
  301. package/i18n/languages/ko-KR.mjs +1 -4
  302. package/i18n/languages/lv-LV.js +0 -16
  303. package/i18n/languages/lv-LV.mjs +1 -4
  304. package/i18n/languages/nb-NO.js +0 -16
  305. package/i18n/languages/nb-NO.mjs +1 -4
  306. package/i18n/languages/nl-NL.js +0 -16
  307. package/i18n/languages/nl-NL.mjs +1 -4
  308. package/i18n/languages/pl-PL.js +0 -16
  309. package/i18n/languages/pl-PL.mjs +1 -4
  310. package/i18n/languages/pt-BR.js +0 -16
  311. package/i18n/languages/pt-BR.mjs +1 -4
  312. package/i18n/languages/ru-RU.js +0 -16
  313. package/i18n/languages/ru-RU.mjs +1 -4
  314. package/i18n/languages/sr-SP.js +0 -16
  315. package/i18n/languages/sr-SP.mjs +1 -4
  316. package/i18n/languages/zh-CN.js +0 -16
  317. package/i18n/languages/zh-CN.mjs +1 -4
  318. package/i18n/languages/zh-TW.js +0 -16
  319. package/i18n/languages/zh-TW.mjs +1 -4
  320. package/i18n/phraseFormatters/index.js +4 -11
  321. package/i18n/phraseFormatters/index.mjs +4 -6
  322. package/i18n/phraseFormatters/pluralize.js +0 -5
  323. package/i18n/phraseFormatters/pluralize.mjs +0 -3
  324. package/i18n/phraseFormatters/substituteVariables.js +0 -4
  325. package/i18n/phraseFormatters/substituteVariables.mjs +8 -11
  326. package/i18n/registry.js +18 -59
  327. package/i18n/registry.mjs +18 -30
  328. package/i18n/utils.js +4 -22
  329. package/i18n/utils.mjs +13 -21
  330. package/index.js +19 -56
  331. package/index.mjs +19 -15
  332. package/languages/all.js +0 -175
  333. package/languages/ar-AR.js +0 -10
  334. package/languages/ar-AR.mjs +1 -4
  335. package/languages/cs-CZ.js +0 -10
  336. package/languages/cs-CZ.mjs +1 -4
  337. package/languages/de-CH.js +0 -10
  338. package/languages/de-CH.mjs +1 -4
  339. package/languages/de-DE.js +0 -10
  340. package/languages/de-DE.mjs +1 -4
  341. package/languages/en-US.js +0 -10
  342. package/languages/en-US.mjs +1 -4
  343. package/languages/es-MX.js +0 -10
  344. package/languages/es-MX.mjs +1 -4
  345. package/languages/fr-FR.js +0 -10
  346. package/languages/fr-FR.mjs +1 -4
  347. package/languages/index.js +0 -175
  348. package/languages/it-IT.js +0 -10
  349. package/languages/it-IT.mjs +1 -4
  350. package/languages/ja-JP.js +0 -10
  351. package/languages/ja-JP.mjs +1 -4
  352. package/languages/ko-KR.js +0 -10
  353. package/languages/ko-KR.mjs +1 -4
  354. package/languages/lv-LV.js +0 -10
  355. package/languages/lv-LV.mjs +1 -4
  356. package/languages/nb-NO.js +0 -10
  357. package/languages/nb-NO.mjs +1 -4
  358. package/languages/nl-NL.js +0 -10
  359. package/languages/nl-NL.mjs +1 -4
  360. package/languages/pl-PL.js +0 -10
  361. package/languages/pl-PL.mjs +1 -4
  362. package/languages/pt-BR.js +0 -10
  363. package/languages/pt-BR.mjs +1 -4
  364. package/languages/ru-RU.js +0 -10
  365. package/languages/ru-RU.mjs +1 -4
  366. package/languages/sr-SP.js +0 -10
  367. package/languages/sr-SP.mjs +1 -4
  368. package/languages/zh-CN.js +0 -10
  369. package/languages/zh-CN.mjs +1 -4
  370. package/languages/zh-TW.js +0 -10
  371. package/languages/zh-TW.mjs +1 -4
  372. package/mixins/hooksRefRegisterer.js +4 -18
  373. package/mixins/hooksRefRegisterer.mjs +4 -15
  374. package/mixins/localHooks.js +7 -17
  375. package/mixins/localHooks.mjs +7 -14
  376. package/package.json +1 -1
  377. package/pluginHooks.d.ts +3 -4
  378. package/pluginHooks.js +288 -110
  379. package/pluginHooks.mjs +287 -97
  380. package/plugins/autoColumnSize/autoColumnSize.js +74 -172
  381. package/plugins/autoColumnSize/autoColumnSize.mjs +74 -137
  382. package/plugins/autoColumnSize/index.js +0 -2
  383. package/plugins/autoRowSize/autoRowSize.js +73 -153
  384. package/plugins/autoRowSize/autoRowSize.mjs +73 -124
  385. package/plugins/autoRowSize/index.js +0 -2
  386. package/plugins/autofill/autofill.js +46 -163
  387. package/plugins/autofill/autofill.mjs +46 -131
  388. package/plugins/autofill/index.js +0 -2
  389. package/plugins/autofill/utils.js +4 -26
  390. package/plugins/autofill/utils.mjs +4 -18
  391. package/plugins/base/base.js +21 -92
  392. package/plugins/base/base.mjs +21 -63
  393. package/plugins/base/index.js +0 -2
  394. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +19 -52
  395. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +19 -33
  396. package/plugins/bindRowsWithHeaders/index.js +0 -2
  397. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +5 -41
  398. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +5 -29
  399. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +6 -53
  400. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +6 -37
  401. package/plugins/collapsibleColumns/collapsibleColumns.js +96 -188
  402. package/plugins/collapsibleColumns/collapsibleColumns.mjs +97 -158
  403. package/plugins/collapsibleColumns/index.js +0 -2
  404. package/plugins/columnSorting/columnSorting.js +50 -188
  405. package/plugins/columnSorting/columnSorting.mjs +50 -143
  406. package/plugins/columnSorting/columnStatesManager.js +15 -71
  407. package/plugins/columnSorting/columnStatesManager.mjs +15 -48
  408. package/plugins/columnSorting/domHelpers.js +2 -18
  409. package/plugins/columnSorting/domHelpers.mjs +2 -7
  410. package/plugins/columnSorting/index.js +0 -2
  411. package/plugins/columnSorting/rootComparator.js +5 -24
  412. package/plugins/columnSorting/rootComparator.mjs +12 -21
  413. package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
  414. package/plugins/columnSorting/sortFunction/checkbox.mjs +16 -21
  415. package/plugins/columnSorting/sortFunction/date.js +2 -19
  416. package/plugins/columnSorting/sortFunction/date.mjs +10 -23
  417. package/plugins/columnSorting/sortFunction/default.js +2 -17
  418. package/plugins/columnSorting/sortFunction/default.mjs +10 -23
  419. package/plugins/columnSorting/sortFunction/numeric.js +2 -11
  420. package/plugins/columnSorting/sortFunction/numeric.mjs +10 -17
  421. package/plugins/columnSorting/sortService/engine.js +3 -13
  422. package/plugins/columnSorting/sortService/engine.mjs +3 -5
  423. package/plugins/columnSorting/sortService/index.js +0 -5
  424. package/plugins/columnSorting/sortService/registry.js +6 -18
  425. package/plugins/columnSorting/sortService/registry.mjs +6 -10
  426. package/plugins/columnSorting/utils.js +9 -34
  427. package/plugins/columnSorting/utils.mjs +9 -15
  428. package/plugins/columnSummary/columnSummary.js +66 -126
  429. package/plugins/columnSummary/columnSummary.mjs +66 -101
  430. package/plugins/columnSummary/endpoints.js +21 -98
  431. package/plugins/columnSummary/endpoints.mjs +26 -99
  432. package/plugins/columnSummary/index.js +0 -2
  433. package/plugins/columnSummary/utils.js +13 -0
  434. package/plugins/columnSummary/utils.mjs +9 -0
  435. package/plugins/comments/commentEditor.js +16 -28
  436. package/plugins/comments/commentEditor.mjs +21 -32
  437. package/plugins/comments/comments.js +92 -175
  438. package/plugins/comments/comments.mjs +92 -149
  439. package/plugins/comments/displaySwitch.js +6 -23
  440. package/plugins/comments/displaySwitch.mjs +6 -18
  441. package/plugins/comments/index.js +0 -2
  442. package/plugins/contextMenu/commandExecutor.js +9 -40
  443. package/plugins/contextMenu/commandExecutor.mjs +14 -41
  444. package/plugins/contextMenu/contextMenu.js +26 -105
  445. package/plugins/contextMenu/contextMenu.mjs +26 -75
  446. package/plugins/contextMenu/cursor.js +6 -20
  447. package/plugins/contextMenu/cursor.mjs +11 -24
  448. package/plugins/contextMenu/index.js +0 -2
  449. package/plugins/contextMenu/itemsFactory.js +14 -43
  450. package/plugins/contextMenu/itemsFactory.mjs +19 -44
  451. package/plugins/contextMenu/menu.js +61 -177
  452. package/plugins/contextMenu/menu.mjs +61 -149
  453. package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
  454. package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
  455. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
  456. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
  457. package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
  458. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
  459. package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
  460. package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
  461. package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
  462. package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
  463. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
  464. package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
  465. package/plugins/contextMenu/predefinedItems/redo.js +1 -16
  466. package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
  467. package/plugins/contextMenu/predefinedItems/removeColumn.js +3 -38
  468. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -18
  469. package/plugins/contextMenu/predefinedItems/removeRow.js +3 -37
  470. package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -17
  471. package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
  472. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
  473. package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
  474. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
  475. package/plugins/contextMenu/predefinedItems/separator.js +1 -2
  476. package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
  477. package/plugins/contextMenu/predefinedItems/undo.js +1 -16
  478. package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
  479. package/plugins/contextMenu/predefinedItems.js +2 -48
  480. package/plugins/contextMenu/predefinedItems.mjs +2 -7
  481. package/plugins/contextMenu/utils.js +17 -57
  482. package/plugins/contextMenu/utils.mjs +21 -39
  483. package/plugins/copyPaste/clipboardData.js +1 -10
  484. package/plugins/copyPaste/clipboardData.mjs +1 -9
  485. package/plugins/copyPaste/contextMenuItem/copy.js +2 -17
  486. package/plugins/copyPaste/contextMenuItem/copy.mjs +6 -9
  487. package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
  488. package/plugins/copyPaste/contextMenuItem/cut.mjs +6 -9
  489. package/plugins/copyPaste/copyPaste.js +53 -185
  490. package/plugins/copyPaste/copyPaste.mjs +53 -144
  491. package/plugins/copyPaste/focusableElement.js +12 -56
  492. package/plugins/copyPaste/focusableElement.mjs +15 -49
  493. package/plugins/copyPaste/index.js +0 -2
  494. package/plugins/copyPaste/pasteEvent.js +1 -10
  495. package/plugins/copyPaste/pasteEvent.mjs +3 -10
  496. package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
  497. package/plugins/customBorders/contextMenuItem/bottom.mjs +4 -8
  498. package/plugins/customBorders/contextMenuItem/index.js +0 -11
  499. package/plugins/customBorders/contextMenuItem/left.js +0 -17
  500. package/plugins/customBorders/contextMenuItem/left.mjs +4 -8
  501. package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
  502. package/plugins/customBorders/contextMenuItem/noBorders.mjs +4 -6
  503. package/plugins/customBorders/contextMenuItem/right.js +0 -17
  504. package/plugins/customBorders/contextMenuItem/right.mjs +4 -8
  505. package/plugins/customBorders/contextMenuItem/top.js +0 -17
  506. package/plugins/customBorders/contextMenuItem/top.mjs +4 -8
  507. package/plugins/customBorders/customBorders.js +52 -181
  508. package/plugins/customBorders/customBorders.mjs +52 -147
  509. package/plugins/customBorders/index.js +0 -2
  510. package/plugins/customBorders/utils.js +13 -52
  511. package/plugins/customBorders/utils.mjs +20 -39
  512. package/plugins/dragToScroll/dragToScroll.js +17 -74
  513. package/plugins/dragToScroll/dragToScroll.mjs +17 -55
  514. package/plugins/dragToScroll/index.js +0 -2
  515. package/plugins/dropdownMenu/dropdownMenu.js +47 -126
  516. package/plugins/dropdownMenu/dropdownMenu.mjs +47 -95
  517. package/plugins/dropdownMenu/index.js +0 -2
  518. package/plugins/exportFile/dataProvider.js +24 -69
  519. package/plugins/exportFile/dataProvider.mjs +26 -60
  520. package/plugins/exportFile/exportFile.js +48 -58
  521. package/plugins/exportFile/exportFile.mjs +48 -36
  522. package/plugins/exportFile/index.js +0 -2
  523. package/plugins/exportFile/typeFactory.js +1 -11
  524. package/plugins/exportFile/typeFactory.mjs +1 -4
  525. package/plugins/exportFile/types/_base.js +2 -16
  526. package/plugins/exportFile/types/_base.mjs +4 -16
  527. package/plugins/exportFile/types/csv.js +2 -50
  528. package/plugins/exportFile/types/csv.mjs +2 -29
  529. package/plugins/filters/component/_base.js +12 -32
  530. package/plugins/filters/component/_base.mjs +15 -30
  531. package/plugins/filters/component/actionBar.js +6 -55
  532. package/plugins/filters/component/actionBar.mjs +9 -38
  533. package/plugins/filters/component/condition.js +25 -122
  534. package/plugins/filters/component/condition.mjs +24 -88
  535. package/plugins/filters/component/operators.js +10 -68
  536. package/plugins/filters/component/operators.mjs +10 -45
  537. package/plugins/filters/component/value.js +25 -99
  538. package/plugins/filters/component/value.mjs +28 -72
  539. package/plugins/filters/condition/beginsWith.js +2 -32
  540. package/plugins/filters/condition/beginsWith.mjs +2 -10
  541. package/plugins/filters/condition/between.js +3 -37
  542. package/plugins/filters/condition/between.mjs +3 -15
  543. package/plugins/filters/condition/byValue.js +3 -27
  544. package/plugins/filters/condition/byValue.mjs +3 -12
  545. package/plugins/filters/condition/contains.js +2 -32
  546. package/plugins/filters/condition/contains.mjs +2 -10
  547. package/plugins/filters/condition/date/after.js +2 -34
  548. package/plugins/filters/condition/date/after.mjs +2 -12
  549. package/plugins/filters/condition/date/before.js +2 -34
  550. package/plugins/filters/condition/date/before.mjs +2 -12
  551. package/plugins/filters/condition/date/today.js +1 -22
  552. package/plugins/filters/condition/date/today.mjs +1 -3
  553. package/plugins/filters/condition/date/tomorrow.js +1 -22
  554. package/plugins/filters/condition/date/tomorrow.mjs +1 -3
  555. package/plugins/filters/condition/date/yesterday.js +1 -22
  556. package/plugins/filters/condition/date/yesterday.mjs +1 -3
  557. package/plugins/filters/condition/empty.js +1 -19
  558. package/plugins/filters/condition/empty.mjs +1 -1
  559. package/plugins/filters/condition/endsWith.js +2 -32
  560. package/plugins/filters/condition/endsWith.mjs +2 -10
  561. package/plugins/filters/condition/equal.js +2 -31
  562. package/plugins/filters/condition/equal.mjs +2 -10
  563. package/plugins/filters/condition/false.js +1 -5
  564. package/plugins/filters/condition/false.mjs +1 -1
  565. package/plugins/filters/condition/greaterThan.js +2 -32
  566. package/plugins/filters/condition/greaterThan.mjs +2 -12
  567. package/plugins/filters/condition/greaterThanOrEqual.js +2 -32
  568. package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -12
  569. package/plugins/filters/condition/lessThan.js +2 -32
  570. package/plugins/filters/condition/lessThan.mjs +2 -12
  571. package/plugins/filters/condition/lessThanOrEqual.js +2 -32
  572. package/plugins/filters/condition/lessThanOrEqual.mjs +2 -12
  573. package/plugins/filters/condition/none.js +1 -18
  574. package/plugins/filters/condition/none.mjs +1 -1
  575. package/plugins/filters/condition/notBetween.js +1 -19
  576. package/plugins/filters/condition/notBetween.mjs +1 -1
  577. package/plugins/filters/condition/notContains.js +1 -19
  578. package/plugins/filters/condition/notContains.mjs +1 -1
  579. package/plugins/filters/condition/notEmpty.js +1 -19
  580. package/plugins/filters/condition/notEmpty.mjs +1 -1
  581. package/plugins/filters/condition/notEqual.js +1 -19
  582. package/plugins/filters/condition/notEqual.mjs +1 -1
  583. package/plugins/filters/condition/true.js +1 -5
  584. package/plugins/filters/condition/true.mjs +1 -1
  585. package/plugins/filters/conditionCollection.js +21 -80
  586. package/plugins/filters/conditionCollection.mjs +21 -57
  587. package/plugins/filters/conditionRegisterer.js +5 -14
  588. package/plugins/filters/conditionRegisterer.mjs +5 -9
  589. package/plugins/filters/conditionUpdateObserver.js +17 -57
  590. package/plugins/filters/conditionUpdateObserver.mjs +25 -53
  591. package/plugins/filters/constants.js +1 -66
  592. package/plugins/filters/constants.mjs +1 -8
  593. package/plugins/filters/dataFilter.js +4 -21
  594. package/plugins/filters/dataFilter.mjs +7 -23
  595. package/plugins/filters/filters.d.ts +1 -1
  596. package/plugins/filters/filters.js +147 -272
  597. package/plugins/filters/filters.mjs +148 -228
  598. package/plugins/filters/index.js +0 -2
  599. package/plugins/filters/logicalOperationRegisterer.js +3 -9
  600. package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
  601. package/plugins/filters/logicalOperations/conjunction.js +2 -19
  602. package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
  603. package/plugins/filters/logicalOperations/disjunction.js +2 -19
  604. package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
  605. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
  606. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
  607. package/plugins/filters/ui/_base.js +12 -55
  608. package/plugins/filters/ui/_base.mjs +12 -35
  609. package/plugins/filters/ui/input.js +7 -52
  610. package/plugins/filters/ui/input.mjs +7 -34
  611. package/plugins/filters/ui/link.js +3 -43
  612. package/plugins/filters/ui/link.mjs +3 -25
  613. package/plugins/filters/ui/multipleSelect.js +26 -120
  614. package/plugins/filters/ui/multipleSelect.mjs +20 -76
  615. package/plugins/filters/ui/radioInput.js +6 -47
  616. package/plugins/filters/ui/radioInput.mjs +6 -30
  617. package/plugins/filters/ui/select.js +14 -76
  618. package/plugins/filters/ui/select.mjs +14 -52
  619. package/plugins/filters/utils.js +6 -39
  620. package/plugins/filters/utils.mjs +6 -23
  621. package/plugins/formulas/engine/register.js +24 -74
  622. package/plugins/formulas/engine/register.mjs +29 -51
  623. package/plugins/formulas/engine/settings.js +4 -24
  624. package/plugins/formulas/engine/settings.mjs +4 -12
  625. package/plugins/formulas/formulas.js +103 -295
  626. package/plugins/formulas/formulas.mjs +104 -248
  627. package/plugins/formulas/index.js +0 -2
  628. package/plugins/formulas/utils.js +1 -3
  629. package/plugins/formulas/utils.mjs +1 -1
  630. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +4 -38
  631. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +8 -25
  632. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
  633. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +21 -29
  634. package/plugins/hiddenColumns/hiddenColumns.js +72 -153
  635. package/plugins/hiddenColumns/hiddenColumns.mjs +72 -110
  636. package/plugins/hiddenColumns/index.js +0 -2
  637. package/plugins/hiddenRows/contextMenuItem/hideRow.js +4 -38
  638. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +8 -25
  639. package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
  640. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +21 -29
  641. package/plugins/hiddenRows/hiddenRows.js +70 -152
  642. package/plugins/hiddenRows/hiddenRows.mjs +70 -109
  643. package/plugins/hiddenRows/index.js +0 -2
  644. package/plugins/index.js +0 -71
  645. package/plugins/index.mjs +3 -5
  646. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -28
  647. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +5 -17
  648. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -28
  649. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +5 -17
  650. package/plugins/manualColumnFreeze/index.js +0 -2
  651. package/plugins/manualColumnFreeze/manualColumnFreeze.js +21 -78
  652. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +21 -54
  653. package/plugins/manualColumnMove/index.js +0 -2
  654. package/plugins/manualColumnMove/manualColumnMove.js +45 -134
  655. package/plugins/manualColumnMove/manualColumnMove.mjs +45 -106
  656. package/plugins/manualColumnMove/ui/_base.js +12 -30
  657. package/plugins/manualColumnMove/ui/_base.mjs +12 -27
  658. package/plugins/manualColumnMove/ui/backlight.js +1 -37
  659. package/plugins/manualColumnMove/ui/backlight.mjs +1 -22
  660. package/plugins/manualColumnMove/ui/guideline.js +1 -37
  661. package/plugins/manualColumnMove/ui/guideline.mjs +1 -22
  662. package/plugins/manualColumnResize/index.js +0 -2
  663. package/plugins/manualColumnResize/manualColumnResize.js +44 -143
  664. package/plugins/manualColumnResize/manualColumnResize.mjs +43 -118
  665. package/plugins/manualRowMove/index.js +0 -2
  666. package/plugins/manualRowMove/manualRowMove.js +45 -137
  667. package/plugins/manualRowMove/manualRowMove.mjs +45 -109
  668. package/plugins/manualRowMove/ui/_base.js +12 -27
  669. package/plugins/manualRowMove/ui/_base.mjs +12 -26
  670. package/plugins/manualRowMove/ui/backlight.js +1 -37
  671. package/plugins/manualRowMove/ui/backlight.mjs +1 -22
  672. package/plugins/manualRowMove/ui/guideline.js +1 -37
  673. package/plugins/manualRowMove/ui/guideline.mjs +1 -22
  674. package/plugins/manualRowResize/index.js +0 -2
  675. package/plugins/manualRowResize/manualRowResize.js +42 -138
  676. package/plugins/manualRowResize/manualRowResize.mjs +41 -112
  677. package/plugins/mergeCells/calculations/autofill.js +39 -130
  678. package/plugins/mergeCells/calculations/autofill.mjs +44 -122
  679. package/plugins/mergeCells/calculations/selection.js +9 -40
  680. package/plugins/mergeCells/calculations/selection.mjs +9 -37
  681. package/plugins/mergeCells/cellCoords.js +30 -51
  682. package/plugins/mergeCells/cellCoords.mjs +35 -54
  683. package/plugins/mergeCells/cellsCollection.js +13 -84
  684. package/plugins/mergeCells/cellsCollection.mjs +18 -69
  685. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
  686. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +4 -11
  687. package/plugins/mergeCells/index.js +0 -2
  688. package/plugins/mergeCells/mergeCells.js +130 -333
  689. package/plugins/mergeCells/mergeCells.mjs +130 -292
  690. package/plugins/mergeCells/utils.js +0 -3
  691. package/plugins/mergeCells/utils.mjs +0 -1
  692. package/plugins/multiColumnSorting/domHelpers.js +3 -15
  693. package/plugins/multiColumnSorting/domHelpers.mjs +3 -7
  694. package/plugins/multiColumnSorting/index.js +0 -2
  695. package/plugins/multiColumnSorting/multiColumnSorting.js +14 -66
  696. package/plugins/multiColumnSorting/multiColumnSorting.mjs +14 -44
  697. package/plugins/multiColumnSorting/rootComparator.js +2 -26
  698. package/plugins/multiColumnSorting/rootComparator.mjs +9 -23
  699. package/plugins/multiColumnSorting/utils.js +0 -7
  700. package/plugins/multiColumnSorting/utils.mjs +3 -8
  701. package/plugins/multipleSelectionHandles/index.js +0 -2
  702. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +6 -109
  703. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +6 -87
  704. package/plugins/nestedHeaders/index.js +0 -2
  705. package/plugins/nestedHeaders/nestedHeaders.js +79 -200
  706. package/plugins/nestedHeaders/nestedHeaders.mjs +80 -173
  707. package/plugins/nestedHeaders/stateManager/headersTree.js +16 -93
  708. package/plugins/nestedHeaders/stateManager/headersTree.mjs +16 -73
  709. package/plugins/nestedHeaders/stateManager/index.js +24 -107
  710. package/plugins/nestedHeaders/stateManager/index.mjs +51 -115
  711. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
  712. package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +38 -51
  713. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
  714. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +29 -35
  715. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
  716. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +26 -32
  717. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
  718. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +9 -20
  719. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
  720. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +2 -5
  721. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
  722. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +9 -21
  723. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
  724. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
  725. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
  726. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +44 -61
  727. package/plugins/nestedHeaders/stateManager/sourceSettings.js +16 -78
  728. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +21 -68
  729. package/plugins/nestedHeaders/stateManager/utils.js +19 -22
  730. package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
  731. package/plugins/nestedHeaders/utils/ghostTable.js +9 -37
  732. package/plugins/nestedHeaders/utils/ghostTable.mjs +16 -43
  733. package/plugins/nestedRows/data/dataManager.js +40 -161
  734. package/plugins/nestedRows/data/dataManager.mjs +44 -148
  735. package/plugins/nestedRows/index.js +0 -2
  736. package/plugins/nestedRows/nestedRows.js +41 -119
  737. package/plugins/nestedRows/nestedRows.mjs +41 -86
  738. package/plugins/nestedRows/ui/_base.js +1 -9
  739. package/plugins/nestedRows/ui/_base.mjs +1 -8
  740. package/plugins/nestedRows/ui/collapsing.js +28 -134
  741. package/plugins/nestedRows/ui/collapsing.mjs +34 -118
  742. package/plugins/nestedRows/ui/contextMenu.js +2 -53
  743. package/plugins/nestedRows/ui/contextMenu.mjs +2 -32
  744. package/plugins/nestedRows/ui/headers.js +5 -50
  745. package/plugins/nestedRows/ui/headers.mjs +11 -41
  746. package/plugins/nestedRows/utils/rowMoveController.js +28 -78
  747. package/plugins/nestedRows/utils/rowMoveController.mjs +33 -66
  748. package/plugins/persistentState/index.js +0 -2
  749. package/plugins/persistentState/persistentState.js +10 -58
  750. package/plugins/persistentState/persistentState.mjs +10 -37
  751. package/plugins/persistentState/storage.js +9 -25
  752. package/plugins/persistentState/storage.mjs +12 -26
  753. package/plugins/registry.js +7 -51
  754. package/plugins/registry.mjs +8 -34
  755. package/plugins/search/index.js +0 -2
  756. package/plugins/search/search.js +16 -98
  757. package/plugins/search/search.mjs +16 -68
  758. package/plugins/touchScroll/index.js +0 -2
  759. package/plugins/touchScroll/touchScroll.js +15 -76
  760. package/plugins/touchScroll/touchScroll.mjs +15 -58
  761. package/plugins/trimRows/index.js +0 -2
  762. package/plugins/trimRows/trimRows.js +62 -88
  763. package/plugins/trimRows/trimRows.mjs +62 -65
  764. package/plugins/undoRedo/index.js +0 -14
  765. package/plugins/undoRedo/undoRedo.js +48 -218
  766. package/plugins/undoRedo/undoRedo.mjs +48 -188
  767. package/registry.js +0 -11
  768. package/registry.mjs +2 -4
  769. package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
  770. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
  771. package/renderers/autocompleteRenderer/index.js +0 -2
  772. package/renderers/baseRenderer/baseRenderer.js +2 -11
  773. package/renderers/baseRenderer/baseRenderer.mjs +2 -9
  774. package/renderers/baseRenderer/index.js +0 -2
  775. package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
  776. package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
  777. package/renderers/checkboxRenderer/index.js +0 -2
  778. package/renderers/htmlRenderer/htmlRenderer.js +1 -7
  779. package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
  780. package/renderers/htmlRenderer/index.js +0 -2
  781. package/renderers/index.js +0 -19
  782. package/renderers/index.mjs +3 -5
  783. package/renderers/numericRenderer/index.js +0 -2
  784. package/renderers/numericRenderer/numericRenderer.js +1 -23
  785. package/renderers/numericRenderer/numericRenderer.mjs +1 -10
  786. package/renderers/passwordRenderer/index.js +0 -2
  787. package/renderers/passwordRenderer/passwordRenderer.js +1 -8
  788. package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
  789. package/renderers/registry.js +7 -16
  790. package/renderers/registry.mjs +7 -14
  791. package/renderers/textRenderer/index.js +0 -2
  792. package/renderers/textRenderer/textRenderer.js +2 -14
  793. package/renderers/textRenderer/textRenderer.mjs +2 -6
  794. package/renderers/timeRenderer/index.js +0 -2
  795. package/renderers/timeRenderer/timeRenderer.js +1 -6
  796. package/renderers/timeRenderer/timeRenderer.mjs +1 -1
  797. package/selection/highlight/highlight.js +17 -73
  798. package/selection/highlight/highlight.mjs +31 -64
  799. package/selection/highlight/types/activeHeader.js +1 -21
  800. package/selection/highlight/types/activeHeader.mjs +6 -16
  801. package/selection/highlight/types/area.js +2 -22
  802. package/selection/highlight/types/area.mjs +10 -20
  803. package/selection/highlight/types/cell.js +1 -21
  804. package/selection/highlight/types/cell.mjs +9 -19
  805. package/selection/highlight/types/customSelection.js +2 -22
  806. package/selection/highlight/types/customSelection.mjs +11 -21
  807. package/selection/highlight/types/fill.js +2 -17
  808. package/selection/highlight/types/fill.mjs +9 -14
  809. package/selection/highlight/types/header.js +3 -23
  810. package/selection/highlight/types/header.mjs +13 -23
  811. package/selection/highlight/types/index.js +3 -24
  812. package/selection/highlight/types/index.mjs +3 -10
  813. package/selection/highlight/visualSelection.js +24 -74
  814. package/selection/highlight/visualSelection.mjs +24 -62
  815. package/selection/index.js +0 -14
  816. package/selection/mouseEventHandler.js +19 -30
  817. package/selection/mouseEventHandler.mjs +32 -36
  818. package/selection/range.js +11 -31
  819. package/selection/range.mjs +11 -22
  820. package/selection/selection.js +62 -157
  821. package/selection/selection.mjs +65 -132
  822. package/selection/transformation.js +10 -40
  823. package/selection/transformation.mjs +18 -45
  824. package/selection/utils.js +22 -70
  825. package/selection/utils.mjs +22 -47
  826. package/shortcuts/context.js +23 -78
  827. package/shortcuts/context.mjs +23 -55
  828. package/shortcuts/index.js +0 -2
  829. package/shortcuts/keyObserver.js +4 -17
  830. package/shortcuts/keyObserver.mjs +4 -12
  831. package/shortcuts/manager.js +16 -36
  832. package/shortcuts/manager.mjs +16 -33
  833. package/shortcuts/recorder.js +20 -47
  834. package/shortcuts/recorder.mjs +20 -39
  835. package/shortcuts/utils.js +5 -24
  836. package/shortcuts/utils.mjs +5 -8
  837. package/tableView.js +100 -270
  838. package/tableView.mjs +100 -248
  839. package/translations/changesObservable/observable.js +5 -54
  840. package/translations/changesObservable/observable.mjs +12 -51
  841. package/translations/changesObservable/observer.js +4 -32
  842. package/translations/changesObservable/observer.mjs +9 -29
  843. package/translations/changesObservable/utils.js +1 -5
  844. package/translations/changesObservable/utils.mjs +1 -4
  845. package/translations/index.js +0 -11
  846. package/translations/indexMapper.js +70 -158
  847. package/translations/indexMapper.mjs +70 -125
  848. package/translations/mapCollections/aggregatedCollection.js +9 -51
  849. package/translations/mapCollections/aggregatedCollection.mjs +12 -41
  850. package/translations/mapCollections/index.js +0 -7
  851. package/translations/mapCollections/mapCollection.js +10 -33
  852. package/translations/mapCollections/mapCollection.mjs +10 -22
  853. package/translations/maps/hidingMap.js +2 -35
  854. package/translations/maps/hidingMap.mjs +7 -28
  855. package/translations/maps/index.js +1 -24
  856. package/translations/maps/index.mjs +1 -3
  857. package/translations/maps/indexMap.js +12 -34
  858. package/translations/maps/indexMap.mjs +16 -32
  859. package/translations/maps/indexesSequence.js +3 -41
  860. package/translations/maps/indexesSequence.mjs +9 -32
  861. package/translations/maps/linkedPhysicalIndexToValueMap.js +9 -78
  862. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +16 -59
  863. package/translations/maps/physicalIndexToValueMap.js +2 -39
  864. package/translations/maps/physicalIndexToValueMap.mjs +8 -31
  865. package/translations/maps/trimmingMap.js +2 -35
  866. package/translations/maps/trimmingMap.mjs +7 -28
  867. package/translations/maps/utils/actionsOnIndexes.js +1 -7
  868. package/translations/maps/utils/actionsOnIndexes.mjs +9 -12
  869. package/translations/maps/utils/index.js +0 -13
  870. package/translations/maps/utils/index.mjs +0 -3
  871. package/translations/maps/utils/indexesSequence.js +1 -24
  872. package/translations/maps/utils/indexesSequence.mjs +10 -19
  873. package/translations/maps/utils/physicallyIndexed.js +1 -27
  874. package/translations/maps/utils/physicallyIndexed.mjs +11 -21
  875. package/utils/dataStructures/linkedList.js +15 -56
  876. package/utils/dataStructures/linkedList.mjs +15 -54
  877. package/utils/dataStructures/priorityMap.js +8 -46
  878. package/utils/dataStructures/priorityMap.mjs +8 -29
  879. package/utils/dataStructures/queue.js +6 -17
  880. package/utils/dataStructures/queue.mjs +6 -16
  881. package/utils/dataStructures/stack.js +6 -17
  882. package/utils/dataStructures/stack.mjs +6 -16
  883. package/utils/dataStructures/tree.js +11 -75
  884. package/utils/dataStructures/tree.mjs +11 -54
  885. package/utils/dataStructures/uniqueMap.js +17 -56
  886. package/utils/dataStructures/uniqueMap.mjs +17 -42
  887. package/utils/dataStructures/uniqueSet.js +5 -32
  888. package/utils/dataStructures/uniqueSet.mjs +5 -19
  889. package/utils/ghostTable.js +33 -104
  890. package/utils/ghostTable.mjs +35 -92
  891. package/utils/interval.js +10 -37
  892. package/utils/interval.mjs +7 -29
  893. package/utils/parseTable.js +11 -92
  894. package/utils/parseTable.mjs +11 -62
  895. package/utils/rootInstance.js +3 -14
  896. package/utils/rootInstance.mjs +3 -3
  897. package/utils/samplesGenerator.js +15 -51
  898. package/utils/samplesGenerator.mjs +17 -44
  899. package/utils/staticRegister.js +6 -33
  900. package/utils/staticRegister.mjs +6 -19
  901. package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
  902. package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
  903. package/validators/autocompleteValidator/index.js +0 -2
  904. package/validators/dateValidator/dateValidator.js +2 -21
  905. package/validators/dateValidator/dateValidator.mjs +2 -11
  906. package/validators/dateValidator/index.js +0 -2
  907. package/validators/index.js +0 -11
  908. package/validators/index.mjs +3 -5
  909. package/validators/numericValidator/index.js +0 -2
  910. package/validators/numericValidator/numericValidator.js +1 -7
  911. package/validators/numericValidator/numericValidator.mjs +1 -3
  912. package/validators/registry.js +7 -16
  913. package/validators/registry.mjs +7 -14
  914. package/validators/timeValidator/index.js +0 -2
  915. package/validators/timeValidator/timeValidator.js +6 -18
  916. package/validators/timeValidator/timeValidator.mjs +8 -13
  917. package/utils/sortingAlgorithms/mergeSort.js +0 -120
  918. package/utils/sortingAlgorithms/mergeSort.mjs +0 -110
@@ -1,31 +1,17 @@
1
1
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
-
3
2
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4
-
5
3
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6
-
7
4
  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); } }
8
-
9
5
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
10
-
11
6
  function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
12
-
13
7
  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
14
-
15
8
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
16
-
17
9
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
18
-
19
10
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
20
-
21
11
  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
22
-
23
12
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
24
-
25
13
  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; } }
26
-
27
14
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
28
-
29
15
  import "core-js/modules/es.array.iterator.js";
30
16
  import "core-js/modules/es.object.to-string.js";
31
17
  import "core-js/modules/es.string.iterator.js";
@@ -54,8 +40,8 @@ var META_COMMENT = 'comment';
54
40
  var META_COMMENT_VALUE = 'value';
55
41
  var META_STYLE = 'style';
56
42
  var META_READONLY = 'readOnly';
57
- /* eslint-disable jsdoc/require-description-complete-sentence */
58
43
 
44
+ /* eslint-disable jsdoc/require-description-complete-sentence */
59
45
  /**
60
46
  * @plugin Comments
61
47
  * @class Comments
@@ -85,7 +71,7 @@ var META_READONLY = 'readOnly';
85
71
  * To add comments at the table initialization, define the `comment` property in the `cell` config array as in an example below.
86
72
  *
87
73
  * @example
88
- *
74
+ * ::: only-for javascript
89
75
  * ```js
90
76
  * const hot = new Handsontable(document.getElementById('example'), {
91
77
  * data: getData(),
@@ -110,18 +96,47 @@ var META_READONLY = 'readOnly';
110
96
  * commentsPlugin.show();
111
97
  * commentsPlugin.removeComment();
112
98
  * ```
99
+ * :::
100
+ *
101
+ * ::: only-for react
102
+ * ```jsx
103
+ * const hotRef = useRef(null);
104
+ *
105
+ * ...
106
+ *
107
+ * <HotTable
108
+ * ref={hotRef}
109
+ * data={getData()}
110
+ * comments={true}
111
+ * cell={[
112
+ * {row: 1, col: 1, comment: {value: 'Foo'}},
113
+ * {row: 2, col: 2, comment: {value: 'Bar'}}
114
+ * ]}
115
+ * />
116
+ *
117
+ * // Access to the Comments plugin instance:
118
+ * const hot = hotRef.current.hotInstance;
119
+ * const commentsPlugin = hot.getPlugin('comments');
120
+ *
121
+ * // Manage comments programmatically:
122
+ * commentsPlugin.setCommentAtCell(1, 6, 'Comment contents');
123
+ * commentsPlugin.showAtCell(1, 6);
124
+ * commentsPlugin.removeCommentAtCell(1, 6);
125
+ *
126
+ * // You can also set range once and use proper methods:
127
+ * commentsPlugin.setRange({from: {row: 1, col: 6}});
128
+ * commentsPlugin.setComment('Comment contents');
129
+ * commentsPlugin.show();
130
+ * commentsPlugin.removeComment();
131
+ * ```
132
+ * :::
113
133
  */
114
-
115
134
  export var Comments = /*#__PURE__*/function (_BasePlugin) {
116
135
  _inherits(Comments, _BasePlugin);
117
-
118
136
  var _super = _createSuper(Comments);
119
-
120
137
  function Comments(hotInstance) {
121
138
  var _this;
122
-
123
139
  _classCallCheck(this, Comments);
124
-
125
140
  _this = _super.call(this, hotInstance);
126
141
  /**
127
142
  * Instance of {@link CommentEditor}.
@@ -129,7 +144,6 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
129
144
  * @private
130
145
  * @type {CommentEditor}
131
146
  */
132
-
133
147
  _this.editor = null;
134
148
  /**
135
149
  * Instance of {@link DisplaySwitch}.
@@ -137,7 +151,6 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
137
151
  * @private
138
152
  * @type {DisplaySwitch}
139
153
  */
140
-
141
154
  _this.displaySwitch = null;
142
155
  /**
143
156
  * Instance of {@link EventManager}.
@@ -145,14 +158,12 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
145
158
  * @private
146
159
  * @type {EventManager}
147
160
  */
148
-
149
161
  _this.eventManager = null;
150
162
  /**
151
163
  * Current cell range, an object with `from` property, with `row` and `col` properties (e.q. `{from: {row: 1, col: 6}}`).
152
164
  *
153
165
  * @type {object}
154
166
  */
155
-
156
167
  _this.range = {};
157
168
  /**
158
169
  * Prevents showing/hiding editor that reacts on the logic triggered by the "mouseover" events.
@@ -160,7 +171,6 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
160
171
  * @private
161
172
  * @type {boolean}
162
173
  */
163
-
164
174
  _this.preventEditorAutoSwitch = false;
165
175
  privatePool.set(_assertThisInitialized(_this), {
166
176
  tempEditorDimensions: {},
@@ -168,44 +178,38 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
168
178
  });
169
179
  return _this;
170
180
  }
181
+
171
182
  /**
172
183
  * Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
173
- * hook and if it returns `true` than the {@link Comments#enablePlugin} method is called.
184
+ * hook and if it returns `true` then the {@link Comments#enablePlugin} method is called.
174
185
  *
175
186
  * @returns {boolean}
176
187
  */
177
-
178
-
179
188
  _createClass(Comments, [{
180
189
  key: "isEnabled",
181
190
  value: function isEnabled() {
182
191
  return !!this.hot.getSettings()[PLUGIN_KEY];
183
192
  }
193
+
184
194
  /**
185
195
  * Enables the plugin functionality for this Handsontable instance.
186
196
  */
187
-
188
197
  }, {
189
198
  key: "enablePlugin",
190
199
  value: function enablePlugin() {
191
200
  var _this2 = this;
192
-
193
201
  if (this.enabled) {
194
202
  return;
195
203
  }
196
-
197
204
  if (!this.editor) {
198
205
  this.editor = new CommentEditor(this.hot.rootDocument, this.hot.isRtl());
199
206
  }
200
-
201
207
  if (!this.eventManager) {
202
208
  this.eventManager = new EventManager(this);
203
209
  }
204
-
205
210
  if (!this.displaySwitch) {
206
211
  this.displaySwitch = new DisplaySwitch(this.getDisplayDelaySetting());
207
212
  }
208
-
209
213
  this.addHook('afterContextMenuDefaultOptions', function (options) {
210
214
  return _this2.addToContextMenu(options);
211
215
  });
@@ -228,46 +232,42 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
228
232
  return _this2.showAtCell(row, col);
229
233
  });
230
234
  this.registerListeners();
231
-
232
235
  _get(_getPrototypeOf(Comments.prototype), "enablePlugin", this).call(this);
233
236
  }
237
+
234
238
  /**
235
239
  * Updates the plugin's state.
236
240
  *
237
241
  * This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
238
242
  * - [`comments`](@/api/options.md#comments)
239
243
  */
240
-
241
244
  }, {
242
245
  key: "updatePlugin",
243
246
  value: function updatePlugin() {
244
247
  this.disablePlugin();
245
248
  this.enablePlugin();
246
-
247
249
  _get(_getPrototypeOf(Comments.prototype), "updatePlugin", this).call(this);
248
-
249
250
  this.displaySwitch.updateDelay(this.getDisplayDelaySetting());
250
251
  }
252
+
251
253
  /**
252
254
  * Disables the plugin functionality for this Handsontable instance.
253
255
  */
254
-
255
256
  }, {
256
257
  key: "disablePlugin",
257
258
  value: function disablePlugin() {
258
259
  _get(_getPrototypeOf(Comments.prototype), "disablePlugin", this).call(this);
259
260
  }
261
+
260
262
  /**
261
263
  * Registers all necessary DOM listeners.
262
264
  *
263
265
  * @private
264
266
  */
265
-
266
267
  }, {
267
268
  key: "registerListeners",
268
269
  value: function registerListeners() {
269
270
  var _this3 = this;
270
-
271
271
  var rootDocument = this.hot.rootDocument;
272
272
  this.eventManager.addEventListener(rootDocument, 'mouseover', function (event) {
273
273
  return _this3.onMouseOver(event);
@@ -288,26 +288,27 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
288
288
  return _this3.onEditorMouseUp(event);
289
289
  });
290
290
  }
291
+
291
292
  /**
292
293
  * Sets the current cell range to be able to use general methods like {@link Comments#setComment}, {@link Comments#removeComment}, {@link Comments#show}.
293
294
  *
294
295
  * @param {object} range Object with `from` property, each with `row` and `col` properties.
295
296
  */
296
-
297
297
  }, {
298
298
  key: "setRange",
299
299
  value: function setRange(range) {
300
300
  this.range = range;
301
301
  }
302
+
302
303
  /**
303
304
  * Clears the currently selected cell.
304
305
  */
305
-
306
306
  }, {
307
307
  key: "clearRange",
308
308
  value: function clearRange() {
309
309
  this.range = {};
310
310
  }
311
+
311
312
  /**
312
313
  * Checks if the event target is a cell containing a comment.
313
314
  *
@@ -315,13 +316,13 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
315
316
  * @param {Event} event DOM event.
316
317
  * @returns {boolean}
317
318
  */
318
-
319
319
  }, {
320
320
  key: "targetIsCellWithComment",
321
321
  value: function targetIsCellWithComment(event) {
322
322
  var closestCell = closest(event.target, 'TD', 'TBODY');
323
323
  return !!(closestCell && hasClass(closestCell, 'htCommentCell') && closest(closestCell, [this.hot.rootElement]));
324
324
  }
325
+
325
326
  /**
326
327
  * Checks if the event target is a comment textarea.
327
328
  *
@@ -329,39 +330,36 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
329
330
  * @param {Event} event DOM event.
330
331
  * @returns {boolean}
331
332
  */
332
-
333
333
  }, {
334
334
  key: "targetIsCommentTextArea",
335
335
  value: function targetIsCommentTextArea(event) {
336
336
  return this.editor.getInputElement() === event.target;
337
337
  }
338
+
338
339
  /**
339
340
  * Sets a comment for a cell according to the previously set range (see {@link Comments#setRange}).
340
341
  *
341
342
  * @param {string} value Comment contents.
342
343
  */
343
-
344
344
  }, {
345
345
  key: "setComment",
346
346
  value: function setComment(value) {
347
347
  if (!this.range.from) {
348
348
  throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');
349
349
  }
350
-
351
350
  var editorValue = this.editor.getValue();
352
351
  var comment = '';
353
-
354
352
  if (value !== null && value !== void 0) {
355
353
  comment = value;
356
354
  } else if (editorValue !== null && editorValue !== void 0) {
357
355
  comment = editorValue;
358
356
  }
359
-
360
357
  var row = this.range.from.row;
361
358
  var col = this.range.from.col;
362
359
  this.updateCommentMeta(row, col, _defineProperty({}, META_COMMENT_VALUE, comment));
363
360
  this.hot.render();
364
361
  }
362
+
365
363
  /**
366
364
  * Sets a comment for a specified cell.
367
365
  *
@@ -369,7 +367,6 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
369
367
  * @param {number} column Visual column index.
370
368
  * @param {string} value Comment contents.
371
369
  */
372
-
373
370
  }, {
374
371
  key: "setCommentAtCell",
375
372
  value: function setCommentAtCell(row, column, value) {
@@ -378,29 +375,26 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
378
375
  });
379
376
  this.setComment(value);
380
377
  }
378
+
381
379
  /**
382
380
  * Removes a comment from a cell according to previously set range (see {@link Comments#setRange}).
383
381
  *
384
382
  * @param {boolean} [forceRender=true] If set to `true`, the table will be re-rendered at the end of the operation.
385
383
  */
386
-
387
384
  }, {
388
385
  key: "removeComment",
389
386
  value: function removeComment() {
390
387
  var forceRender = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
391
-
392
388
  if (!this.range.from) {
393
389
  throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');
394
390
  }
395
-
396
391
  this.hot.setCellMeta(this.range.from.row, this.range.from.col, META_COMMENT);
397
-
398
392
  if (forceRender) {
399
393
  this.hot.render();
400
394
  }
401
-
402
395
  this.hide();
403
396
  }
397
+
404
398
  /**
405
399
  * Removes a comment from a specified cell.
406
400
  *
@@ -408,7 +402,6 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
408
402
  * @param {number} column Visual column index.
409
403
  * @param {boolean} [forceRender=true] If `true`, the table will be re-rendered at the end of the operation.
410
404
  */
411
-
412
405
  }, {
413
406
  key: "removeCommentAtCell",
414
407
  value: function removeCommentAtCell(row, column) {
@@ -418,12 +411,12 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
418
411
  });
419
412
  this.removeComment(forceRender);
420
413
  }
414
+
421
415
  /**
422
416
  * Gets comment from a cell according to previously set range (see {@link Comments#setRange}).
423
417
  *
424
418
  * @returns {string|undefined} Returns a content of the comment.
425
419
  */
426
-
427
420
  }, {
428
421
  key: "getComment",
429
422
  value: function getComment() {
@@ -431,6 +424,7 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
431
424
  var column = this.range.from.col;
432
425
  return this.getCommentMeta(row, column, META_COMMENT_VALUE);
433
426
  }
427
+
434
428
  /**
435
429
  * Gets comment from a cell at the provided coordinates.
436
430
  *
@@ -438,39 +432,36 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
438
432
  * @param {number} column Visual column index.
439
433
  * @returns {string|undefined} Returns a content of the comment.
440
434
  */
441
-
442
435
  }, {
443
436
  key: "getCommentAtCell",
444
437
  value: function getCommentAtCell(row, column) {
445
438
  return this.getCommentMeta(row, column, META_COMMENT_VALUE);
446
439
  }
440
+
447
441
  /**
448
442
  * Shows the comment editor accordingly to the previously set range (see {@link Comments#setRange}).
449
443
  *
450
444
  * @returns {boolean} Returns `true` if comment editor was shown.
451
445
  */
452
-
453
446
  }, {
454
447
  key: "show",
455
448
  value: function show() {
456
449
  if (!this.range.from) {
457
450
  throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');
458
451
  }
459
-
460
452
  var _this$range$from = this.range.from,
461
- row = _this$range$from.row,
462
- col = _this$range$from.col;
463
-
453
+ row = _this$range$from.row,
454
+ col = _this$range$from.col;
464
455
  if (row < 0 || row > this.hot.countSourceRows() - 1 || col < 0 || col > this.hot.countSourceCols() - 1) {
465
456
  return false;
466
457
  }
467
-
468
458
  var meta = this.hot.getCellMeta(this.range.from.row, this.range.from.col);
469
459
  this.editor.setValue(meta[META_COMMENT] ? meta[META_COMMENT][META_COMMENT_VALUE] : null || '');
470
460
  this.editor.show();
471
461
  this.refreshEditor(true);
472
462
  return true;
473
463
  }
464
+
474
465
  /**
475
466
  * Shows comment editor according to cell coordinates.
476
467
  *
@@ -478,7 +469,6 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
478
469
  * @param {number} column Visual column index.
479
470
  * @returns {boolean} Returns `true` if comment editor was shown.
480
471
  */
481
-
482
472
  }, {
483
473
  key: "showAtCell",
484
474
  value: function showAtCell(row, column) {
@@ -487,134 +477,118 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
487
477
  });
488
478
  return this.show();
489
479
  }
480
+
490
481
  /**
491
482
  * Hides the comment editor.
492
483
  */
493
-
494
484
  }, {
495
485
  key: "hide",
496
486
  value: function hide() {
497
487
  this.editor.hide();
498
488
  }
489
+
499
490
  /**
500
491
  * Refreshes comment editor position and styling.
501
492
  *
502
493
  * @param {boolean} [force=false] If `true` then recalculation will be forced.
503
494
  */
504
-
505
495
  }, {
506
496
  key: "refreshEditor",
507
497
  value: function refreshEditor() {
508
498
  var _renderableRow, _renderableColumn;
509
-
510
499
  var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
511
-
512
500
  if (!force && (!this.range.from || !this.editor.isVisible())) {
513
501
  return;
514
502
  }
515
-
516
503
  var _this$hot = this.hot,
517
- rowIndexMapper = _this$hot.rowIndexMapper,
518
- columnIndexMapper = _this$hot.columnIndexMapper;
504
+ rowIndexMapper = _this$hot.rowIndexMapper,
505
+ columnIndexMapper = _this$hot.columnIndexMapper;
519
506
  var _this$range$from2 = this.range.from,
520
- visualRow = _this$range$from2.row,
521
- visualColumn = _this$range$from2.col;
507
+ visualRow = _this$range$from2.row,
508
+ visualColumn = _this$range$from2.col;
522
509
  var renderableRow = rowIndexMapper.getRenderableFromVisualIndex(visualRow);
523
- var renderableColumn = columnIndexMapper.getRenderableFromVisualIndex(visualColumn); // Used when the requested row is hidden, and the editor needs to be positioned on the previous row's coords.
524
-
510
+ var renderableColumn = columnIndexMapper.getRenderableFromVisualIndex(visualColumn);
511
+ // Used when the requested row is hidden, and the editor needs to be positioned on the previous row's coords.
525
512
  var targetingPreviousRow = renderableRow === null;
526
-
527
513
  if (renderableRow === null) {
528
514
  renderableRow = rowIndexMapper.getRenderableFromVisualIndex(rowIndexMapper.getNearestNotHiddenIndex(visualRow, -1));
529
515
  }
530
-
531
516
  if (renderableColumn === null) {
532
517
  renderableColumn = columnIndexMapper.getRenderableFromVisualIndex(columnIndexMapper.getNearestNotHiddenIndex(visualColumn, -1));
533
518
  }
534
-
535
519
  var isBeforeRenderedRows = renderableRow === null;
536
520
  var isBeforeRenderedColumns = renderableColumn === null;
537
521
  renderableRow = (_renderableRow = renderableRow) !== null && _renderableRow !== void 0 ? _renderableRow : 0;
538
522
  renderableColumn = (_renderableColumn = renderableColumn) !== null && _renderableColumn !== void 0 ? _renderableColumn : 0;
539
523
  var _this$hot2 = this.hot,
540
- rootWindow = _this$hot2.rootWindow,
541
- wt = _this$hot2.view._wt;
524
+ rootWindow = _this$hot2.rootWindow,
525
+ wt = _this$hot2.view._wt;
542
526
  var wtTable = wt.wtTable;
543
527
  var TD = wtTable.getCell({
544
528
  row: renderableRow,
545
529
  col: renderableColumn
546
530
  });
547
531
  var commentStyle = this.getCommentMeta(visualRow, visualColumn, META_STYLE);
548
-
549
532
  if (commentStyle) {
550
533
  this.editor.setSize(commentStyle.width, commentStyle.height);
551
534
  } else {
552
535
  this.editor.resetSize();
553
536
  }
554
-
555
537
  var lastColWidth = isBeforeRenderedColumns ? 0 : wtTable.getStretchedColumnWidth(renderableColumn);
556
538
  var lastRowHeight = targetingPreviousRow && !isBeforeRenderedRows ? outerHeight(TD) : 0;
557
-
558
539
  var _TD$getBoundingClient = TD.getBoundingClientRect(),
559
- left = _TD$getBoundingClient.left,
560
- top = _TD$getBoundingClient.top,
561
- cellWidth = _TD$getBoundingClient.width,
562
- cellHeight = _TD$getBoundingClient.height;
563
-
540
+ left = _TD$getBoundingClient.left,
541
+ top = _TD$getBoundingClient.top,
542
+ cellWidth = _TD$getBoundingClient.width,
543
+ cellHeight = _TD$getBoundingClient.height;
564
544
  var _this$editor$getSize = this.editor.getSize(),
565
- editorWidth = _this$editor$getSize.width,
566
- editorHeight = _this$editor$getSize.height;
567
-
545
+ editorWidth = _this$editor$getSize.width,
546
+ editorHeight = _this$editor$getSize.height;
568
547
  var _this$hot$rootWindow = this.hot.rootWindow,
569
- innerWidth = _this$hot$rootWindow.innerWidth,
570
- innerHeight = _this$hot$rootWindow.innerHeight;
548
+ innerWidth = _this$hot$rootWindow.innerWidth,
549
+ innerHeight = _this$hot$rootWindow.innerHeight;
571
550
  var documentElement = this.hot.rootDocument.documentElement;
572
551
  var x = left + rootWindow.scrollX + lastColWidth;
573
552
  var y = top + rootWindow.scrollY + lastRowHeight;
574
-
575
553
  if (this.hot.isRtl()) {
576
554
  x -= editorWidth + lastColWidth;
577
- } // flip to the right or left the comments editor position when it goes out of browser viewport
578
-
555
+ }
579
556
 
557
+ // flip to the right or left the comments editor position when it goes out of browser viewport
580
558
  if (this.hot.isLtr() && left + cellWidth + editorWidth > innerWidth) {
581
559
  x = left + rootWindow.scrollX - editorWidth - 1;
582
560
  } else if (this.hot.isRtl() && x < -(documentElement.scrollWidth - documentElement.clientWidth)) {
583
561
  x = left + rootWindow.scrollX + lastColWidth + 1;
584
562
  }
585
-
586
563
  if (top + editorHeight > innerHeight) {
587
564
  y -= editorHeight - cellHeight + 1;
588
565
  }
589
-
590
566
  this.editor.setPosition(x, y);
591
567
  this.editor.setReadOnlyState(this.getCommentMeta(visualRow, visualColumn, META_READONLY));
592
568
  }
569
+
593
570
  /**
594
571
  * Checks if there is a comment for selected range.
595
572
  *
596
573
  * @private
597
574
  * @returns {boolean}
598
575
  */
599
-
600
576
  }, {
601
577
  key: "checkSelectionCommentsConsistency",
602
578
  value: function checkSelectionCommentsConsistency() {
603
579
  var selected = this.hot.getSelectedRangeLast();
604
-
605
580
  if (!selected) {
606
581
  return false;
607
582
  }
608
-
609
583
  var hasComment = false;
610
584
  var cell = selected.getTopStartCorner(); // IN EXCEL THERE IS COMMENT ONLY FOR TOP LEFT CELL IN SELECTION
611
585
 
612
586
  if (this.getCommentMeta(cell.row, cell.col, META_COMMENT_VALUE)) {
613
587
  hasComment = true;
614
588
  }
615
-
616
589
  return hasComment;
617
590
  }
591
+
618
592
  /**
619
593
  * Sets or update the comment-related cell meta.
620
594
  *
@@ -622,22 +596,20 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
622
596
  * @param {number} column Visual column index.
623
597
  * @param {object} metaObject Object defining all the comment-related meta information.
624
598
  */
625
-
626
599
  }, {
627
600
  key: "updateCommentMeta",
628
601
  value: function updateCommentMeta(row, column, metaObject) {
629
602
  var oldComment = this.hot.getCellMeta(row, column)[META_COMMENT];
630
603
  var newComment;
631
-
632
604
  if (oldComment) {
633
605
  newComment = deepClone(oldComment);
634
606
  deepExtend(newComment, metaObject);
635
607
  } else {
636
608
  newComment = metaObject;
637
609
  }
638
-
639
610
  this.hot.setCellMeta(row, column, META_COMMENT, newComment);
640
611
  }
612
+
641
613
  /**
642
614
  * Gets the comment related meta information.
643
615
  *
@@ -646,83 +618,74 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
646
618
  * @param {string} property Cell meta property.
647
619
  * @returns {Mixed}
648
620
  */
649
-
650
621
  }, {
651
622
  key: "getCommentMeta",
652
623
  value: function getCommentMeta(row, column, property) {
653
624
  var cellMeta = this.hot.getCellMeta(row, column);
654
-
655
625
  if (!cellMeta[META_COMMENT]) {
656
626
  return void 0;
657
627
  }
658
-
659
628
  return cellMeta[META_COMMENT][property];
660
629
  }
630
+
661
631
  /**
662
632
  * `mousedown` event callback.
663
633
  *
664
634
  * @private
665
635
  * @param {MouseEvent} event The `mousedown` event.
666
636
  */
667
-
668
637
  }, {
669
638
  key: "onMouseDown",
670
639
  value: function onMouseDown(event) {
671
640
  if (!this.hot.view || !this.hot.view._wt) {
672
641
  return;
673
642
  }
674
-
675
643
  if (!this.preventEditorAutoSwitch && !this.targetIsCommentTextArea(event)) {
676
644
  var eventCell = closest(event.target, 'TD', 'TBODY');
677
645
  var coordinates = null;
678
-
679
646
  if (eventCell) {
680
647
  coordinates = this.hot.getCoords(eventCell);
681
648
  }
682
-
683
649
  if (!eventCell || this.range.from && coordinates && (this.range.from.row !== coordinates.row || this.range.from.col !== coordinates.col)) {
684
650
  this.hide();
685
651
  }
686
652
  }
687
653
  }
654
+
688
655
  /**
689
656
  * `mouseover` event callback.
690
657
  *
691
658
  * @private
692
659
  * @param {MouseEvent} event The `mouseover` event.
693
660
  */
694
-
695
661
  }, {
696
662
  key: "onMouseOver",
697
663
  value: function onMouseOver(event) {
698
664
  var priv = privatePool.get(this);
699
665
  var rootDocument = this.hot.rootDocument;
700
-
701
666
  if (this.preventEditorAutoSwitch || this.editor.isFocused() || hasClass(event.target, 'wtBorder') || priv.cellBelowCursor === event.target || !this.editor) {
702
667
  return;
703
668
  }
704
-
705
669
  priv.cellBelowCursor = rootDocument.elementFromPoint(event.clientX, event.clientY);
706
-
707
670
  if (this.targetIsCellWithComment(event)) {
708
671
  var range = this.hot._createCellRange(this.hot.getCoords(event.target));
709
-
710
672
  this.displaySwitch.show(range);
711
673
  } else if (isChildOf(event.target, rootDocument) && !this.targetIsCommentTextArea(event)) {
712
674
  this.displaySwitch.hide();
713
675
  }
714
676
  }
677
+
715
678
  /**
716
679
  * `mouseup` event callback.
717
680
  *
718
681
  * @private
719
682
  */
720
-
721
683
  }, {
722
684
  key: "onMouseUp",
723
685
  value: function onMouseUp() {
724
686
  this.preventEditorAutoSwitch = false;
725
687
  }
688
+
726
689
  /**
727
690
  * The `afterRenderer` hook callback.
728
691
  *
@@ -730,7 +693,6 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
730
693
  * @param {HTMLTableCellElement} TD The rendered `TD` element.
731
694
  * @param {object} cellProperties The rendered cell's property object.
732
695
  */
733
-
734
696
  }, {
735
697
  key: "onAfterRenderer",
736
698
  value: function onAfterRenderer(TD, cellProperties) {
@@ -738,24 +700,24 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
738
700
  addClass(TD, cellProperties.commentedCellClassName);
739
701
  }
740
702
  }
703
+
741
704
  /**
742
705
  * `blur` event callback for the comment editor.
743
706
  *
744
707
  * @private
745
708
  */
746
-
747
709
  }, {
748
710
  key: "onEditorBlur",
749
711
  value: function onEditorBlur() {
750
712
  this.setComment();
751
713
  }
714
+
752
715
  /**
753
716
  * `mousedown` hook. Along with `onEditorMouseUp` used to simulate the textarea resizing event.
754
717
  *
755
718
  * @private
756
719
  * @param {MouseEvent} event The `mousedown` event.
757
720
  */
758
-
759
721
  }, {
760
722
  key: "onEditorMouseDown",
761
723
  value: function onEditorMouseDown(event) {
@@ -765,20 +727,19 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
765
727
  height: outerHeight(event.target)
766
728
  };
767
729
  }
730
+
768
731
  /**
769
732
  * `mouseup` hook. Along with `onEditorMouseDown` used to simulate the textarea resizing event.
770
733
  *
771
734
  * @private
772
735
  * @param {MouseEvent} event The `mouseup` event.
773
736
  */
774
-
775
737
  }, {
776
738
  key: "onEditorMouseUp",
777
739
  value: function onEditorMouseUp(event) {
778
740
  var priv = privatePool.get(this);
779
741
  var currentWidth = outerWidth(event.target);
780
742
  var currentHeight = outerHeight(event.target);
781
-
782
743
  if (currentWidth !== priv.tempEditorDimensions.width + 1 || currentHeight !== priv.tempEditorDimensions.height + 2) {
783
744
  this.updateCommentMeta(this.range.from.row, this.range.from.col, _defineProperty({}, META_STYLE, {
784
745
  width: currentWidth,
@@ -786,12 +747,12 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
786
747
  }));
787
748
  }
788
749
  }
750
+
789
751
  /**
790
752
  * Context Menu's "Add comment" callback. Results in showing the comment editor.
791
753
  *
792
754
  * @private
793
755
  */
794
-
795
756
  }, {
796
757
  key: "onContextMenuAddComment",
797
758
  value: function onContextMenuAddComment() {
@@ -805,17 +766,16 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
805
766
  this.hot.deselectCell();
806
767
  this.editor.focus();
807
768
  }
769
+
808
770
  /**
809
771
  * Context Menu's "remove comment" callback.
810
772
  *
811
773
  * @private
812
774
  */
813
-
814
775
  }, {
815
776
  key: "onContextMenuRemoveComment",
816
777
  value: function onContextMenuRemoveComment() {
817
778
  var _this4 = this;
818
-
819
779
  var coords = this.hot.getSelectedRangeLast();
820
780
  this.preventEditorAutoSwitch = true;
821
781
  coords.forAll(function (row, column) {
@@ -825,43 +785,39 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
825
785
  });
826
786
  this.hot.render();
827
787
  }
788
+
828
789
  /**
829
790
  * Context Menu's "make comment read-only" callback.
830
791
  *
831
792
  * @private
832
793
  */
833
-
834
794
  }, {
835
795
  key: "onContextMenuMakeReadOnly",
836
796
  value: function onContextMenuMakeReadOnly() {
837
797
  var _this5 = this;
838
-
839
798
  var coords = this.hot.getSelectedRangeLast();
840
799
  this.preventEditorAutoSwitch = true;
841
800
  coords.forAll(function (row, column) {
842
801
  if (row >= 0 && column >= 0) {
843
802
  var currentState = !!_this5.getCommentMeta(row, column, META_READONLY);
844
-
845
803
  _this5.updateCommentMeta(row, column, _defineProperty({}, META_READONLY, !currentState));
846
804
  }
847
805
  });
848
806
  }
807
+
849
808
  /**
850
809
  * Add Comments plugin options to the Context Menu.
851
810
  *
852
811
  * @private
853
812
  * @param {object} defaultOptions The menu options.
854
813
  */
855
-
856
814
  }, {
857
815
  key: "addToContextMenu",
858
816
  value: function addToContextMenu(defaultOptions) {
859
817
  var _this6 = this;
860
-
861
818
  var isThereAnyCellRendered = function isThereAnyCellRendered() {
862
819
  return _this6.hot.rowIndexMapper.getRenderableIndexesLength() > 0 && _this6.hot.columnIndexMapper.getRenderableIndexesLength() > 0;
863
820
  };
864
-
865
821
  defaultOptions.items.push({
866
822
  name: '---------'
867
823
  }, {
@@ -870,7 +826,6 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
870
826
  if (_this6.checkSelectionCommentsConsistency()) {
871
827
  return _this6.hot.getTranslatedPhrase(C.CONTEXTMENU_ITEMS_EDIT_COMMENT);
872
828
  }
873
-
874
829
  return _this6.hot.getTranslatedPhrase(C.CONTEXTMENU_ITEMS_ADD_COMMENT);
875
830
  },
876
831
  callback: function callback() {
@@ -880,7 +835,6 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
880
835
  if (!isThereAnyCellRendered()) {
881
836
  return true;
882
837
  }
883
-
884
838
  return !(_this6.hot.getSelectedLast() && !_this6.hot.selection.isSelectedByCorner());
885
839
  }
886
840
  }, {
@@ -895,31 +849,25 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
895
849
  if (!isThereAnyCellRendered()) {
896
850
  return true;
897
851
  }
898
-
899
852
  return !(_this6.hot.getSelectedLast() && !_this6.hot.selection.isSelectedByCorner());
900
853
  }
901
854
  }, {
902
855
  key: 'commentsReadOnly',
903
856
  name: function name() {
904
857
  var _this7 = this;
905
-
906
858
  var label = this.getTranslatedPhrase(C.CONTEXTMENU_ITEMS_READ_ONLY_COMMENT);
907
859
  var hasProperty = checkSelectionConsistency(this.getSelectedRangeLast(), function (row, col) {
908
860
  var readOnlyProperty = _this7.getCellMeta(row, col)[META_COMMENT];
909
-
910
861
  if (readOnlyProperty) {
911
862
  readOnlyProperty = readOnlyProperty[META_READONLY];
912
863
  }
913
-
914
864
  if (readOnlyProperty) {
915
865
  return true;
916
866
  }
917
867
  });
918
-
919
868
  if (hasProperty) {
920
869
  label = markLabelAsSelected(label);
921
870
  }
922
-
923
871
  return label;
924
872
  },
925
873
  callback: function callback() {
@@ -929,42 +877,38 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
929
877
  if (!isThereAnyCellRendered()) {
930
878
  return true;
931
879
  }
932
-
933
880
  return !(_this6.hot.getSelectedLast() && !_this6.hot.selection.isSelectedByCorner()) || !_this6.checkSelectionCommentsConsistency();
934
881
  }
935
882
  });
936
883
  }
884
+
937
885
  /**
938
886
  * Get `displayDelay` setting of comment plugin.
939
887
  *
940
888
  * @private
941
889
  * @returns {number|undefined}
942
890
  */
943
-
944
891
  }, {
945
892
  key: "getDisplayDelaySetting",
946
893
  value: function getDisplayDelaySetting() {
947
894
  var commentSetting = this.hot.getSettings()[PLUGIN_KEY];
948
-
949
895
  if (isObject(commentSetting)) {
950
896
  return commentSetting.displayDelay;
951
897
  }
952
898
  }
899
+
953
900
  /**
954
901
  * Destroys the plugin instance.
955
902
  */
956
-
957
903
  }, {
958
904
  key: "destroy",
959
905
  value: function destroy() {
960
906
  if (this.editor) {
961
907
  this.editor.destroy();
962
908
  }
963
-
964
909
  if (this.displaySwitch) {
965
910
  this.displaySwitch.destroy();
966
911
  }
967
-
968
912
  _get(_getPrototypeOf(Comments.prototype), "destroy", this).call(this);
969
913
  }
970
914
  }], [{
@@ -978,6 +922,5 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
978
922
  return PLUGIN_PRIORITY;
979
923
  }
980
924
  }]);
981
-
982
925
  return Comments;
983
926
  }(BasePlugin);