handsontable 12.1.3 → 12.2.0

Sign up to get free protection for your applications and to get access to all the features.
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,5 +1,4 @@
1
1
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
-
3
2
  import "core-js/modules/es.object.set-prototype-of.js";
4
3
  import "core-js/modules/es.object.get-prototype-of.js";
5
4
  import "core-js/modules/es.reflect.construct.js";
@@ -11,23 +10,14 @@ import "core-js/modules/es.symbol.iterator.js";
11
10
  import "core-js/modules/es.array.slice.js";
12
11
  import "core-js/modules/es.regexp.exec.js";
13
12
  import "core-js/modules/es.object.freeze.js";
14
-
15
13
  var _templateObject;
16
-
17
14
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
18
-
19
15
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
20
-
21
16
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
22
-
23
17
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
24
-
25
18
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
26
-
27
19
  function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
28
-
29
20
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
30
-
31
21
  import "core-js/modules/es.array.iterator.js";
32
22
  import "core-js/modules/es.map.js";
33
23
  import "core-js/modules/es.object.to-string.js";
@@ -38,31 +28,18 @@ import "core-js/modules/es.array.filter.js";
38
28
  import "core-js/modules/es.array.from.js";
39
29
  import "core-js/modules/es.function.name.js";
40
30
  import "core-js/modules/es.array.concat.js";
41
-
42
31
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
43
-
44
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); } }
45
-
46
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; }
47
-
48
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); }
49
-
50
35
  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
51
-
52
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); }
53
-
54
37
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
55
-
56
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); }; }
57
-
58
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); }
59
-
60
40
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
61
-
62
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; } }
63
-
64
42
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
65
-
66
43
  import { BasePlugin } from "../base/index.mjs";
67
44
  import { arrayEach, arrayMap } from "../../helpers/array.mjs";
68
45
  import { toSingleLine } from "../../helpers/templateLiteralTag.mjs";
@@ -84,6 +61,7 @@ import { CONDITION_NONE, CONDITION_BY_VALUE, OPERATION_AND, OPERATION_OR, OPERAT
84
61
  import { TrimmingMap } from "../../translations/index.mjs";
85
62
  export var PLUGIN_KEY = 'filters';
86
63
  export var PLUGIN_PRIORITY = 250;
64
+
87
65
  /**
88
66
  * @plugin Filters
89
67
  * @class Filters
@@ -94,6 +72,7 @@ export var PLUGIN_PRIORITY = 250;
94
72
  * See [the filtering demo](@/guides/columns/column-filter.md) for examples.
95
73
  *
96
74
  * @example
75
+ * ::: only-for javascript
97
76
  * ```js
98
77
  * const container = document.getElementById('example');
99
78
  * const hot = new Handsontable(container, {
@@ -104,18 +83,26 @@ export var PLUGIN_PRIORITY = 250;
104
83
  * filters: true
105
84
  * });
106
85
  * ```
86
+ * :::
87
+ *
88
+ * ::: only-for react
89
+ * ```jsx
90
+ * <HotTable
91
+ * data={getData()}
92
+ * colHeaders={true}
93
+ * rowHeaders={true}
94
+ * dropdownMenu={true}
95
+ * filters={true}
96
+ * />
97
+ * ```
98
+ * :::
107
99
  */
108
-
109
100
  export var Filters = /*#__PURE__*/function (_BasePlugin) {
110
101
  _inherits(Filters, _BasePlugin);
111
-
112
102
  var _super = _createSuper(Filters);
113
-
114
103
  function Filters(hotInstance) {
115
104
  var _this;
116
-
117
105
  _classCallCheck(this, Filters);
118
-
119
106
  _this = _super.call(this, hotInstance);
120
107
  /**
121
108
  * Instance of {@link EventManager}.
@@ -123,7 +110,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
123
110
  * @private
124
111
  * @type {EventManager}
125
112
  */
126
-
127
113
  _this.eventManager = new EventManager(_assertThisInitialized(_this));
128
114
  /**
129
115
  * Instance of {@link DropdownMenu}.
@@ -131,7 +117,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
131
117
  * @private
132
118
  * @type {DropdownMenu}
133
119
  */
134
-
135
120
  _this.dropdownMenuPlugin = null;
136
121
  /**
137
122
  * Instance of {@link ConditionCollection}.
@@ -139,7 +124,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
139
124
  * @private
140
125
  * @type {ConditionCollection}
141
126
  */
142
-
143
127
  _this.conditionCollection = null;
144
128
  /**
145
129
  * Instance of {@link ConditionUpdateObserver}.
@@ -147,7 +131,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
147
131
  * @private
148
132
  * @type {ConditionUpdateObserver}
149
133
  */
150
-
151
134
  _this.conditionUpdateObserver = null;
152
135
  /**
153
136
  * Map, where key is component identifier and value represent `BaseComponent` element or it derivatives.
@@ -155,7 +138,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
155
138
  * @private
156
139
  * @type {Map}
157
140
  */
158
-
159
141
  _this.components = new Map([['filter_by_condition', null], ['filter_operators', null], ['filter_by_condition2', null], ['filter_by_value', null], ['filter_action_bar', null]]);
160
142
  /**
161
143
  * Object containing information about last selected column physical and visual index for added filter conditions.
@@ -164,7 +146,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
164
146
  * @type {object}
165
147
  * @default null
166
148
  */
167
-
168
149
  _this.lastSelectedColumn = null;
169
150
  /**
170
151
  * Map of skipped rows by plugin.
@@ -172,47 +153,42 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
172
153
  * @private
173
154
  * @type {null|TrimmingMap}
174
155
  */
156
+ _this.filtersRowsMap = null;
175
157
 
176
- _this.filtersRowsMap = null; // One listener for the enable/disable functionality
177
-
158
+ // One listener for the enable/disable functionality
178
159
  _this.hot.addHook('afterGetColHeader', function (col, TH) {
179
160
  return _this.onAfterGetColHeader(col, TH);
180
161
  });
181
-
182
162
  return _this;
183
163
  }
164
+
184
165
  /**
185
166
  * Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
186
- * hook and if it returns `true` than the {@link Filters#enablePlugin} method is called.
167
+ * hook and if it returns `true` then the {@link Filters#enablePlugin} method is called.
187
168
  *
188
169
  * @returns {boolean}
189
170
  */
190
-
191
-
192
171
  _createClass(Filters, [{
193
172
  key: "isEnabled",
194
173
  value: function isEnabled() {
195
174
  /* eslint-disable no-unneeded-ternary */
196
175
  return this.hot.getSettings()[PLUGIN_KEY] ? true : false;
197
176
  }
177
+
198
178
  /**
199
179
  * Enables the plugin functionality for this Handsontable instance.
200
180
  */
201
-
202
181
  }, {
203
182
  key: "enablePlugin",
204
183
  value: function enablePlugin() {
205
184
  var _this2 = this;
206
-
207
185
  if (this.enabled) {
208
186
  return;
209
187
  }
210
-
211
188
  this.filtersRowsMap = this.hot.rowIndexMapper.registerMap(this.pluginName, new TrimmingMap());
212
189
  this.dropdownMenuPlugin = this.hot.getPlugin('dropdownMenu');
213
190
  var dropdownSettings = this.hot.getSettings().dropdownMenu;
214
191
  var menuContainer = dropdownSettings && dropdownSettings.uiContainer || this.hot.rootDocument.body;
215
-
216
192
  var addConfirmationHooks = function addConfirmationHooks(component) {
217
193
  component.addLocalHook('accept', function () {
218
194
  return _this2.onActionBarSubmit('accept');
@@ -225,15 +201,12 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
225
201
  });
226
202
  return component;
227
203
  };
228
-
229
204
  var filterByConditionLabel = function filterByConditionLabel() {
230
205
  return "".concat(_this2.hot.getTranslatedPhrase(constants.FILTERS_DIVS_FILTER_BY_CONDITION), ":");
231
206
  };
232
-
233
207
  var filterValueLabel = function filterValueLabel() {
234
208
  return "".concat(_this2.hot.getTranslatedPhrase(constants.FILTERS_DIVS_FILTER_BY_VALUE), ":");
235
209
  };
236
-
237
210
  if (!this.components.get('filter_by_condition')) {
238
211
  var conditionComponent = new ConditionComponent(this.hot, {
239
212
  id: 'filter_by_condition',
@@ -246,14 +219,12 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
246
219
  });
247
220
  this.components.set('filter_by_condition', addConfirmationHooks(conditionComponent));
248
221
  }
249
-
250
222
  if (!this.components.get('filter_operators')) {
251
223
  this.components.set('filter_operators', new OperatorsComponent(this.hot, {
252
224
  id: 'filter_operators',
253
225
  name: 'Operators'
254
226
  }));
255
227
  }
256
-
257
228
  if (!this.components.get('filter_by_condition2')) {
258
229
  var _conditionComponent = new ConditionComponent(this.hot, {
259
230
  id: 'filter_by_condition2',
@@ -261,32 +232,26 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
261
232
  addSeparator: true,
262
233
  menuContainer: menuContainer
263
234
  });
264
-
265
235
  _conditionComponent.addLocalHook('afterClose', function () {
266
236
  return _this2.onSelectUIClosed();
267
237
  });
268
-
269
238
  this.components.set('filter_by_condition2', addConfirmationHooks(_conditionComponent));
270
239
  }
271
-
272
240
  if (!this.components.get('filter_by_value')) {
273
241
  this.components.set('filter_by_value', addConfirmationHooks(new ValueComponent(this.hot, {
274
242
  id: 'filter_by_value',
275
243
  name: filterValueLabel
276
244
  })));
277
245
  }
278
-
279
246
  if (!this.components.get('filter_action_bar')) {
280
247
  this.components.set('filter_action_bar', addConfirmationHooks(new ActionBarComponent(this.hot, {
281
248
  id: 'filter_action_bar',
282
249
  name: 'Action bar'
283
250
  })));
284
251
  }
285
-
286
252
  if (!this.conditionCollection) {
287
253
  this.conditionCollection = new ConditionCollection(this.hot);
288
254
  }
289
-
290
255
  if (!this.conditionUpdateObserver) {
291
256
  this.conditionUpdateObserver = new ConditionUpdateObserver(this.hot, this.conditionCollection, function (physicalColumn) {
292
257
  return _this2.getDataMapAtColumn(physicalColumn);
@@ -295,7 +260,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
295
260
  return _this2.updateComponents(conditionState);
296
261
  });
297
262
  }
298
-
299
263
  this.components.forEach(function (component) {
300
264
  return component.show();
301
265
  });
@@ -313,45 +277,40 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
313
277
  });
314
278
  this.addHook('afterChange', function (changes) {
315
279
  return _this2.onAfterChange(changes);
316
- }); // Temp. solution (extending menu items bug in contextMenu/dropdownMenu)
280
+ });
317
281
 
282
+ // Temp. solution (extending menu items bug in contextMenu/dropdownMenu)
318
283
  if (this.hot.getSettings().dropdownMenu && this.dropdownMenuPlugin) {
319
284
  this.dropdownMenuPlugin.disablePlugin();
320
285
  this.dropdownMenuPlugin.enablePlugin();
321
286
  }
322
-
323
287
  _get(_getPrototypeOf(Filters.prototype), "enablePlugin", this).call(this);
324
288
  }
289
+
325
290
  /**
326
291
  * Disables the plugin functionality for this Handsontable instance.
327
292
  */
328
-
329
293
  }, {
330
294
  key: "disablePlugin",
331
295
  value: function disablePlugin() {
332
296
  var _this3 = this;
333
-
334
297
  if (this.enabled) {
335
298
  var _this$dropdownMenuPlu;
336
-
337
299
  if ((_this$dropdownMenuPlu = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu !== void 0 && _this$dropdownMenuPlu.enabled) {
338
300
  this.dropdownMenuPlugin.menu.clearLocalHooks();
339
301
  }
340
-
341
302
  this.components.forEach(function (component, key) {
342
303
  component.destroy();
343
-
344
304
  _this3.components.set(key, null);
345
305
  });
346
306
  this.conditionCollection.destroy();
347
307
  this.conditionCollection = null;
348
308
  this.hot.rowIndexMapper.unregisterMap(this.pluginName);
349
309
  }
350
-
351
310
  _get(_getPrototypeOf(Filters.prototype), "disablePlugin", this).call(this);
352
311
  }
353
- /* eslint-disable jsdoc/require-description-complete-sentence */
354
312
 
313
+ /* eslint-disable jsdoc/require-description-complete-sentence */
355
314
  /**
356
315
  * @memberof Filters#
357
316
  * @function addCondition
@@ -386,6 +345,7 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
386
345
  * **Note**: Mind that you cannot mix different types of operations (for instance, if you use `conjunction`, use it consequently for a particular column).
387
346
  *
388
347
  * @example
348
+ * ::: only-for javascript
389
349
  * ```js
390
350
  * const container = document.getElementById('example');
391
351
  * const hot = new Handsontable(container, {
@@ -415,14 +375,51 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
415
375
  * filtersPlugin.addCondition(1, 'not_contains', ['ing'], 'disjunction');
416
376
  * filtersPlugin.filter();
417
377
  * ```
378
+ * :::
379
+ *
380
+ * ::: only-for react
381
+ * ```jsx
382
+ * const hotRef = useRef(null);
383
+ *
384
+ * ...
385
+ *
386
+ * <HotTable
387
+ * ref={hotRef}
388
+ * data={getData()}
389
+ * filters={true}
390
+ * />
391
+ *
392
+ * // access to filters plugin instance
393
+ * const hot = hotRef.current.hotInstance;
394
+ * const filtersPlugin = hot.getPlugin('filters');
395
+ *
396
+ * // add filter "Greater than" 95 to column at index 1
397
+ * filtersPlugin.addCondition(1, 'gt', [95]);
398
+ * filtersPlugin.filter();
399
+ *
400
+ * // add filter "By value" to column at index 1
401
+ * // in this case all value's that don't match will be filtered.
402
+ * filtersPlugin.addCondition(1, 'by_value', [['ing', 'ed', 'as', 'on']]);
403
+ * filtersPlugin.filter();
404
+ *
405
+ * // add filter "Begins with" with value "de" AND "Not contains" with value "ing"
406
+ * filtersPlugin.addCondition(1, 'begins_with', ['de'], 'conjunction');
407
+ * filtersPlugin.addCondition(1, 'not_contains', ['ing'], 'conjunction');
408
+ * filtersPlugin.filter();
409
+ *
410
+ * // add filter "Begins with" with value "de" OR "Not contains" with value "ing"
411
+ * filtersPlugin.addCondition(1, 'begins_with', ['de'], 'disjunction');
412
+ * filtersPlugin.addCondition(1, 'not_contains', ['ing'], 'disjunction');
413
+ * filtersPlugin.filter();
414
+ * ```
415
+ * :::
416
+ *
418
417
  * @param {number} column Visual column index.
419
418
  * @param {string} name Condition short name.
420
419
  * @param {Array} args Condition arguments.
421
420
  * @param {string} [operationId=conjunction] `id` of operation which is performed on the column.
422
421
  */
423
-
424
422
  /* eslint-enable jsdoc/require-description-complete-sentence */
425
-
426
423
  }, {
427
424
  key: "addCondition",
428
425
  value: function addCondition(column, name, args) {
@@ -435,25 +432,25 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
435
432
  args: args
436
433
  }, operationId);
437
434
  }
435
+
438
436
  /**
439
437
  * Removes conditions at specified column index.
440
438
  *
441
439
  * @param {number} column Visual column index.
442
440
  */
443
-
444
441
  }, {
445
442
  key: "removeConditions",
446
443
  value: function removeConditions(column) {
447
444
  var physicalColumn = this.hot.toPhysicalColumn(column);
448
445
  this.conditionCollection.removeConditions(physicalColumn);
449
446
  }
447
+
450
448
  /**
451
449
  * Clears all conditions previously added to the collection for the specified column index or, if the column index
452
450
  * was not passed, clear the conditions for all columns.
453
451
  *
454
452
  * @param {number} [column] Visual column index.
455
453
  */
456
-
457
454
  }, {
458
455
  key: "clearConditions",
459
456
  value: function clearConditions(column) {
@@ -464,31 +461,27 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
464
461
  this.conditionCollection.removeConditions(physicalColumn);
465
462
  }
466
463
  }
464
+
467
465
  /**
468
466
  * Filters data based on added filter conditions.
469
467
  *
470
468
  * @fires Hooks#beforeFilter
471
469
  * @fires Hooks#afterFilter
472
470
  */
473
-
474
471
  }, {
475
472
  key: "filter",
476
473
  value: function filter() {
477
474
  var _this4 = this;
478
-
479
475
  var dataFilter = this._createDataFilter();
480
-
481
476
  var needToFilter = !this.conditionCollection.isEmpty();
482
477
  var visibleVisualRows = [];
483
478
  var conditions = this.conditionCollection.exportAllConditions();
484
479
  var allowFiltering = this.hot.runHooks('beforeFilter', conditions);
485
-
486
480
  if (allowFiltering !== false) {
487
481
  if (needToFilter) {
488
482
  var trimmedRows = [];
489
483
  this.hot.batchExecution(function () {
490
484
  _this4.filtersRowsMap.clear();
491
-
492
485
  visibleVisualRows = arrayMap(dataFilter.filter(), function (rowData) {
493
486
  return rowData.meta.visualRow;
494
487
  });
@@ -502,7 +495,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
502
495
  _this4.filtersRowsMap.setValueAtIndex(physicalRow, true);
503
496
  });
504
497
  }, true);
505
-
506
498
  if (!visibleVisualRows.length) {
507
499
  this.hot.deselectCell();
508
500
  }
@@ -510,12 +502,12 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
510
502
  this.filtersRowsMap.clear();
511
503
  }
512
504
  }
513
-
514
505
  this.hot.runHooks('afterFilter', conditions);
515
506
  this.hot.view.adjustElementsSize(true);
516
507
  this.hot.render();
517
508
  this.clearColumnSelection();
518
509
  }
510
+
519
511
  /**
520
512
  * Gets last selected column index.
521
513
  *
@@ -523,65 +515,57 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
523
515
  * not selected. Otherwise, returns an object with `visualIndex` and `physicalIndex` properties containing
524
516
  * the index of the column.
525
517
  */
526
-
527
518
  }, {
528
519
  key: "getSelectedColumn",
529
520
  value: function getSelectedColumn() {
530
521
  var _this$hot$getSelected;
531
-
532
522
  var highlight = (_this$hot$getSelected = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected === void 0 ? void 0 : _this$hot$getSelected.highlight;
533
-
534
523
  if (!highlight) {
535
524
  return null;
536
525
  }
537
-
538
526
  return {
539
527
  visualIndex: highlight.col,
540
528
  physicalIndex: this.hot.toPhysicalColumn(highlight.col)
541
529
  };
542
530
  }
531
+
543
532
  /**
544
533
  * Clears column selection.
545
534
  *
546
535
  * @private
547
536
  */
548
-
549
537
  }, {
550
538
  key: "clearColumnSelection",
551
539
  value: function clearColumnSelection() {
552
540
  var selectedColumn = this.getSelectedColumn();
553
-
554
541
  if (selectedColumn !== null) {
555
542
  this.hot.selectCell(0, selectedColumn.visualIndex);
556
543
  }
557
544
  }
545
+
558
546
  /**
559
547
  * Returns handsontable source data with cell meta based on current selection.
560
548
  *
561
549
  * @param {number} [column] The physical column index. By default column index accept the value of the selected column.
562
550
  * @returns {Array} Returns array of objects where keys as row index.
563
551
  */
564
-
565
552
  }, {
566
553
  key: "getDataMapAtColumn",
567
554
  value: function getDataMapAtColumn(column) {
568
555
  var _this5 = this;
569
-
570
556
  var visualColumn = this.hot.toVisualColumn(column);
571
557
  var data = [];
572
558
  arrayEach(this.hot.getSourceDataAtCol(visualColumn), function (value, rowIndex) {
573
559
  var _this5$hot$getDataAtC;
574
-
575
560
  var _this5$hot$getCellMet = _this5.hot.getCellMeta(rowIndex, visualColumn),
576
- row = _this5$hot$getCellMet.row,
577
- col = _this5$hot$getCellMet.col,
578
- visualCol = _this5$hot$getCellMet.visualCol,
579
- visualRow = _this5$hot$getCellMet.visualRow,
580
- type = _this5$hot$getCellMet.type,
581
- instance = _this5$hot$getCellMet.instance,
582
- dateFormat = _this5$hot$getCellMet.dateFormat,
583
- locale = _this5$hot$getCellMet.locale;
584
-
561
+ row = _this5$hot$getCellMet.row,
562
+ col = _this5$hot$getCellMet.col,
563
+ visualCol = _this5$hot$getCellMet.visualCol,
564
+ visualRow = _this5$hot$getCellMet.visualRow,
565
+ type = _this5$hot$getCellMet.type,
566
+ instance = _this5$hot$getCellMet.instance,
567
+ dateFormat = _this5$hot$getCellMet.dateFormat,
568
+ locale = _this5$hot$getCellMet.locale;
585
569
  var dataValue = (_this5$hot$getDataAtC = _this5.hot.getDataAtCell(_this5.hot.toVisualRow(rowIndex), visualColumn)) !== null && _this5$hot$getDataAtC !== void 0 ? _this5$hot$getDataAtC : value;
586
570
  data.push({
587
571
  meta: {
@@ -599,38 +583,35 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
599
583
  });
600
584
  return data;
601
585
  }
586
+
602
587
  /**
603
588
  * `afterChange` listener.
604
589
  *
605
590
  * @private
606
591
  * @param {Array} changes Array of changes.
607
592
  */
608
-
609
593
  }, {
610
594
  key: "onAfterChange",
611
595
  value: function onAfterChange(changes) {
612
596
  var _this6 = this;
613
-
614
597
  if (changes) {
615
598
  arrayEach(changes, function (change) {
616
599
  var _change = _slicedToArray(change, 2),
617
- prop = _change[1];
618
-
600
+ prop = _change[1];
619
601
  var columnIndex = _this6.hot.propToCol(prop);
620
-
621
602
  if (_this6.conditionCollection.hasConditions(columnIndex)) {
622
603
  _this6.updateValueComponentCondition(columnIndex);
623
604
  }
624
605
  });
625
606
  }
626
607
  }
608
+
627
609
  /**
628
610
  * Update the condition of ValueComponent, based on the handled changes.
629
611
  *
630
612
  * @private
631
613
  * @param {number} columnIndex Column index of handled ValueComponent condition.
632
614
  */
633
-
634
615
  }, {
635
616
  key: "updateValueComponentCondition",
636
617
  value: function updateValueComponentCondition(columnIndex) {
@@ -638,62 +619,59 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
638
619
  var selectedValues = unifyColumnValues(dataAtCol);
639
620
  this.conditionUpdateObserver.updateStatesAtColumn(columnIndex, selectedValues);
640
621
  }
622
+
641
623
  /**
642
624
  * Restores components to its saved state.
643
625
  *
644
626
  * @private
645
627
  * @param {Array} components List of components.
646
628
  */
647
-
648
629
  }, {
649
630
  key: "restoreComponents",
650
631
  value: function restoreComponents(components) {
651
632
  var _this$getSelectedColu;
652
-
653
633
  var physicalIndex = (_this$getSelectedColu = this.getSelectedColumn()) === null || _this$getSelectedColu === void 0 ? void 0 : _this$getSelectedColu.physicalIndex;
654
634
  components.forEach(function (component) {
655
635
  if (component.isHidden()) {
656
636
  return;
657
637
  }
658
-
659
638
  component.restoreState(physicalIndex);
660
639
  });
661
640
  this.updateDependentComponentsVisibility();
662
641
  }
642
+
663
643
  /**
664
644
  * After dropdown menu show listener.
665
645
  *
666
646
  * @private
667
647
  */
668
-
669
648
  }, {
670
649
  key: "onAfterDropdownMenuShow",
671
650
  value: function onAfterDropdownMenuShow() {
672
651
  this.restoreComponents(Array.from(this.components.values()));
673
652
  }
653
+
674
654
  /**
675
655
  * After dropdown menu hide listener.
676
656
  *
677
657
  * @private
678
658
  */
679
-
680
659
  }, {
681
660
  key: "onAfterDropdownMenuHide",
682
661
  value: function onAfterDropdownMenuHide() {
683
662
  this.components.get('filter_by_condition').getSelectElement().closeOptions();
684
663
  this.components.get('filter_by_condition2').getSelectElement().closeOptions();
685
664
  }
665
+
686
666
  /**
687
667
  * Before dropdown menu set menu items listener.
688
668
  *
689
669
  * @private
690
670
  */
691
-
692
671
  }, {
693
672
  key: "onBeforeDropdownMenuSetItems",
694
673
  value: function onBeforeDropdownMenuSetItems() {
695
674
  var _this7 = this;
696
-
697
675
  if (this.dropdownMenuPlugin) {
698
676
  this.dropdownMenuPlugin.menu.addLocalHook('afterOpen', function () {
699
677
  _this7.dropdownMenuPlugin.menu.hotMenu.updateSettings({
@@ -702,13 +680,13 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
702
680
  });
703
681
  }
704
682
  }
683
+
705
684
  /**
706
685
  * After dropdown menu default options listener.
707
686
  *
708
687
  * @private
709
688
  * @param {object} defaultOptions ContextMenu default item options.
710
689
  */
711
-
712
690
  }, {
713
691
  key: "onAfterDropdownMenuDefaultOptions",
714
692
  value: function onAfterDropdownMenuDefaultOptions(defaultOptions) {
@@ -719,6 +697,7 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
719
697
  defaultOptions.items.push(component.getMenuItemDescriptor());
720
698
  });
721
699
  }
700
+
722
701
  /**
723
702
  * Get an operation, based on the number and types of arguments (where arguments are states of components).
724
703
  *
@@ -729,12 +708,10 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
729
708
  * @private
730
709
  * @returns {string}
731
710
  */
732
-
733
711
  }, {
734
712
  key: "getOperationBasedOnArguments",
735
713
  value: function getOperationBasedOnArguments(suggestedOperation, byConditionState1, byConditionState2, byValueState) {
736
714
  var operation = suggestedOperation;
737
-
738
715
  if (operation === OPERATION_OR && byConditionState1.command.key !== CONDITION_NONE && byConditionState2.command.key !== CONDITION_NONE && byValueState.command.key !== CONDITION_NONE) {
739
716
  operation = OPERATION_OR_THEN_VARIABLE;
740
717
  } else if (byValueState.command.key !== CONDITION_NONE) {
@@ -742,31 +719,26 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
742
719
  operation = OPERATION_AND;
743
720
  }
744
721
  }
745
-
746
722
  return operation;
747
723
  }
724
+
748
725
  /**
749
726
  * On action bar submit listener.
750
727
  *
751
728
  * @private
752
729
  * @param {string} submitType The submit type.
753
730
  */
754
-
755
731
  }, {
756
732
  key: "onActionBarSubmit",
757
733
  value: function onActionBarSubmit(submitType) {
758
734
  var _this$dropdownMenuPlu3;
759
-
760
735
  if (submitType === 'accept') {
761
736
  var selectedColumn = this.getSelectedColumn();
762
-
763
737
  if (selectedColumn === null) {
764
738
  var _this$dropdownMenuPlu2;
765
-
766
739
  (_this$dropdownMenuPlu2 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu2 === void 0 ? void 0 : _this$dropdownMenuPlu2.close();
767
740
  return;
768
741
  }
769
-
770
742
  var physicalIndex = selectedColumn.physicalIndex;
771
743
  var byConditionState1 = this.components.get('filter_by_condition').getState();
772
744
  var byConditionState2 = this.components.get('filter_by_condition2').getState();
@@ -774,25 +746,19 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
774
746
  var operation = this.getOperationBasedOnArguments(this.components.get('filter_operators').getActiveOperationId(), byConditionState1, byConditionState2, byValueState);
775
747
  this.conditionUpdateObserver.groupChanges();
776
748
  var columnStackPosition = this.conditionCollection.getColumnStackPosition(physicalIndex);
777
-
778
749
  if (columnStackPosition === -1) {
779
750
  columnStackPosition = void 0;
780
751
  }
781
-
782
752
  this.conditionCollection.removeConditions(physicalIndex);
783
-
784
753
  if (byConditionState1.command.key !== CONDITION_NONE) {
785
754
  this.conditionCollection.addCondition(physicalIndex, byConditionState1, operation, columnStackPosition);
786
-
787
755
  if (byConditionState2.command.key !== CONDITION_NONE) {
788
756
  this.conditionCollection.addCondition(physicalIndex, byConditionState2, operation, columnStackPosition);
789
757
  }
790
758
  }
791
-
792
759
  if (byValueState.command.key !== CONDITION_NONE) {
793
760
  this.conditionCollection.addCondition(physicalIndex, byValueState, operation, columnStackPosition);
794
761
  }
795
-
796
762
  this.conditionUpdateObserver.flush();
797
763
  this.components.forEach(function (component) {
798
764
  return component.saveState(physicalIndex);
@@ -800,9 +766,9 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
800
766
  this.filtersRowsMap.clear();
801
767
  this.filter();
802
768
  }
803
-
804
769
  (_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 ? void 0 : _this$dropdownMenuPlu3.close();
805
770
  }
771
+
806
772
  /**
807
773
  * On component change listener.
808
774
  *
@@ -810,34 +776,32 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
810
776
  * @param {BaseComponent} component Component inheriting BaseComponent.
811
777
  * @param {object} command Menu item object (command).
812
778
  */
813
-
814
779
  }, {
815
780
  key: "onComponentChange",
816
781
  value: function onComponentChange(component, command) {
817
782
  this.updateDependentComponentsVisibility();
818
-
819
783
  if (component.constructor === ConditionComponent && !command.inputsCount) {
820
784
  this.setListeningDropdownMenu();
821
785
  }
822
786
  }
787
+
823
788
  /**
824
789
  * On component SelectUI closed listener.
825
790
  *
826
791
  * @private
827
792
  */
828
-
829
793
  }, {
830
794
  key: "onSelectUIClosed",
831
795
  value: function onSelectUIClosed() {
832
796
  this.setListeningDropdownMenu();
833
797
  }
798
+
834
799
  /**
835
800
  * Listen to the keyboard input on document body and forward events to instance of Handsontable
836
801
  * created by DropdownMenu plugin.
837
802
  *
838
803
  * @private
839
804
  */
840
-
841
805
  }, {
842
806
  key: "setListeningDropdownMenu",
843
807
  value: function setListeningDropdownMenu() {
@@ -845,28 +809,26 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
845
809
  this.dropdownMenuPlugin.setListening();
846
810
  }
847
811
  }
812
+
848
813
  /**
849
814
  * Updates visibility of some of the components, based on the state of the parent component.
850
815
  *
851
816
  * @private
852
817
  */
853
-
854
818
  }, {
855
819
  key: "updateDependentComponentsVisibility",
856
820
  value: function updateDependentComponentsVisibility() {
857
821
  var component = this.components.get('filter_by_condition');
858
-
859
822
  var _component$getState = component.getState(),
860
- command = _component$getState.command;
861
-
823
+ command = _component$getState.command;
862
824
  var componentsToShow = [this.components.get('filter_by_condition2'), this.components.get('filter_operators')];
863
-
864
825
  if (command.showOperators) {
865
826
  this.showComponents.apply(this, componentsToShow);
866
827
  } else {
867
828
  this.hideComponents.apply(this, componentsToShow);
868
829
  }
869
830
  }
831
+
870
832
  /**
871
833
  * On after get column header listener.
872
834
  *
@@ -874,18 +836,17 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
874
836
  * @param {number} col Visual column index.
875
837
  * @param {HTMLTableCellElement} TH Header's TH element.
876
838
  */
877
-
878
839
  }, {
879
840
  key: "onAfterGetColHeader",
880
841
  value: function onAfterGetColHeader(col, TH) {
881
842
  var physicalColumn = this.hot.toPhysicalColumn(col);
882
-
883
843
  if (this.enabled && this.conditionCollection.hasConditions(physicalColumn)) {
884
844
  addClass(TH, 'htFiltersActive');
885
845
  } else {
886
846
  removeClass(TH, 'htFiltersActive');
887
847
  }
888
848
  }
849
+
889
850
  /**
890
851
  * Creates DataFilter instance based on condition collection.
891
852
  *
@@ -893,17 +854,16 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
893
854
  * @param {ConditionCollection} conditionCollection Condition collection object.
894
855
  * @returns {DataFilter}
895
856
  */
896
-
897
857
  }, {
898
858
  key: "_createDataFilter",
899
859
  value: function _createDataFilter() {
900
860
  var _this8 = this;
901
-
902
861
  var conditionCollection = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.conditionCollection;
903
862
  return new DataFilter(conditionCollection, function (physicalColumn) {
904
863
  return _this8.getDataMapAtColumn(physicalColumn);
905
864
  });
906
865
  }
866
+
907
867
  /**
908
868
  * It updates the components state. The state is triggered by ConditionUpdateObserver, which
909
869
  * reacts to any condition added to the condition collection. It may be added through the UI
@@ -912,26 +872,22 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
912
872
  * @private
913
873
  * @param {object} conditionsState An object with the state generated by UI components.
914
874
  */
915
-
916
875
  }, {
917
876
  key: "updateComponents",
918
877
  value: function updateComponents(conditionsState) {
919
878
  var _this$dropdownMenuPlu4;
920
-
921
879
  if (!((_this$dropdownMenuPlu4 = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu4 !== void 0 && _this$dropdownMenuPlu4.enabled)) {
922
880
  return;
923
881
  }
924
-
925
882
  var _conditionsState$edit = conditionsState.editedConditionStack,
926
- conditions = _conditionsState$edit.conditions,
927
- column = _conditionsState$edit.column;
883
+ conditions = _conditionsState$edit.conditions,
884
+ column = _conditionsState$edit.column;
928
885
  var conditionsByValue = conditions.filter(function (condition) {
929
886
  return condition.name === CONDITION_BY_VALUE;
930
887
  });
931
888
  var conditionsWithoutByValue = conditions.filter(function (condition) {
932
889
  return condition.name !== CONDITION_BY_VALUE;
933
890
  });
934
-
935
891
  if (conditionsByValue.length >= 2 || conditionsWithoutByValue.length >= 3) {
936
892
  warn(toSingleLine(_templateObject || (_templateObject = _taggedTemplateLiteral(["The filter conditions have been applied properly, but couldn\u2019t be displayed visually. \n The overall amount of conditions exceed the capability of the dropdown menu. \n For more details see the documentation."], ["The filter conditions have been applied properly, but couldn\u2019t be displayed visually.\\x20\n The overall amount of conditions exceed the capability of the dropdown menu.\\x20\n For more details see the documentation."]))));
937
893
  } else {
@@ -942,6 +898,7 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
942
898
  this.components.get('filter_by_value').updateState(conditionsState);
943
899
  }
944
900
  }
901
+
945
902
  /**
946
903
  * Returns indexes of passed components inside list of `dropdownMenu` items.
947
904
  *
@@ -949,22 +906,17 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
949
906
  * @param {...BaseComponent} components List of components.
950
907
  * @returns {Array}
951
908
  */
952
-
953
909
  }, {
954
910
  key: "getIndexesOfComponents",
955
911
  value: function getIndexesOfComponents() {
956
912
  var indexes = [];
957
-
958
913
  if (!this.dropdownMenuPlugin) {
959
914
  return indexes;
960
915
  }
961
-
962
916
  var menu = this.dropdownMenuPlugin.menu;
963
-
964
917
  for (var _len = arguments.length, components = new Array(_len), _key = 0; _key < _len; _key++) {
965
918
  components[_key] = arguments[_key];
966
919
  }
967
-
968
920
  arrayEach(components, function (component) {
969
921
  arrayEach(menu.menuItems, function (item, index) {
970
922
  if (item.key === component.getMenuItemDescriptor().key) {
@@ -974,6 +926,7 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
974
926
  });
975
927
  return indexes;
976
928
  }
929
+
977
930
  /**
978
931
  * Changes visibility of component.
979
932
  *
@@ -981,80 +934,69 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
981
934
  * @param {boolean} visible Determine if components should be visible.
982
935
  * @param {...BaseComponent} components List of components.
983
936
  */
984
-
985
937
  }, {
986
938
  key: "changeComponentsVisibility",
987
939
  value: function changeComponentsVisibility() {
988
940
  var visible = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
989
-
990
941
  if (!this.dropdownMenuPlugin) {
991
942
  return;
992
943
  }
993
-
994
944
  var menu = this.dropdownMenuPlugin.menu;
995
945
  var hotMenu = menu.hotMenu;
996
946
  var hiddenRows = hotMenu.getPlugin('hiddenRows');
997
-
998
947
  for (var _len2 = arguments.length, components = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
999
948
  components[_key2 - 1] = arguments[_key2];
1000
949
  }
1001
-
1002
950
  var indexes = this.getIndexesOfComponents.apply(this, components);
1003
-
1004
951
  if (visible) {
1005
952
  hiddenRows.showRows(indexes);
1006
953
  } else {
1007
954
  hiddenRows.hideRows(indexes);
1008
955
  }
1009
-
1010
956
  hotMenu.render();
1011
957
  }
958
+
1012
959
  /**
1013
960
  * Hides components of filters `dropdownMenu`.
1014
961
  *
1015
962
  * @private
1016
963
  * @param {...BaseComponent} components List of components.
1017
964
  */
1018
-
1019
965
  }, {
1020
966
  key: "hideComponents",
1021
967
  value: function hideComponents() {
1022
968
  for (var _len3 = arguments.length, components = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
1023
969
  components[_key3] = arguments[_key3];
1024
970
  }
1025
-
1026
971
  this.changeComponentsVisibility.apply(this, [false].concat(components));
1027
972
  }
973
+
1028
974
  /**
1029
975
  * Shows components of filters `dropdownMenu`.
1030
976
  *
1031
977
  * @private
1032
978
  * @param {...BaseComponent} components List of components.
1033
979
  */
1034
-
1035
980
  }, {
1036
981
  key: "showComponents",
1037
982
  value: function showComponents() {
1038
983
  for (var _len4 = arguments.length, components = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
1039
984
  components[_key4] = arguments[_key4];
1040
985
  }
1041
-
1042
986
  this.changeComponentsVisibility.apply(this, [true].concat(components));
1043
987
  }
988
+
1044
989
  /**
1045
990
  * Destroys the plugin instance.
1046
991
  */
1047
-
1048
992
  }, {
1049
993
  key: "destroy",
1050
994
  value: function destroy() {
1051
995
  var _this9 = this;
1052
-
1053
996
  if (this.enabled) {
1054
997
  this.components.forEach(function (component, key) {
1055
998
  if (component !== null) {
1056
999
  component.destroy();
1057
-
1058
1000
  _this9.components.set(key, null);
1059
1001
  }
1060
1002
  });
@@ -1062,7 +1004,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
1062
1004
  this.conditionUpdateObserver.destroy();
1063
1005
  this.hot.rowIndexMapper.unregisterMap(this.pluginName);
1064
1006
  }
1065
-
1066
1007
  _get(_getPrototypeOf(Filters.prototype), "destroy", this).call(this);
1067
1008
  }
1068
1009
  }], [{
@@ -1081,6 +1022,5 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
1081
1022
  return ['plugin:DropdownMenu', 'plugin:HiddenRows', 'cell-type:checkbox'];
1082
1023
  }
1083
1024
  }]);
1084
-
1085
1025
  return Filters;
1086
1026
  }(BasePlugin);