handsontable 12.1.3 → 12.2.0

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