handsontable 0.0.0-next-9ec04ce-20221121

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of handsontable might be problematic. Click here for more details.

Files changed (1232) hide show
  1. package/3rdparty/SheetClip/SheetClip.js +128 -0
  2. package/3rdparty/SheetClip/SheetClip.mjs +123 -0
  3. package/3rdparty/SheetClip/index.js +7 -0
  4. package/3rdparty/SheetClip/index.mjs +1 -0
  5. package/3rdparty/autoResize/autoResize.js +164 -0
  6. package/3rdparty/autoResize/autoResize.mjs +160 -0
  7. package/3rdparty/autoResize/index.js +6 -0
  8. package/3rdparty/autoResize/index.mjs +1 -0
  9. package/3rdparty/walkontable/src/border.js +746 -0
  10. package/3rdparty/walkontable/src/border.mjs +741 -0
  11. package/3rdparty/walkontable/src/calculator/constants.js +30 -0
  12. package/3rdparty/walkontable/src/calculator/constants.mjs +23 -0
  13. package/3rdparty/walkontable/src/calculator/index.js +22 -0
  14. package/3rdparty/walkontable/src/calculator/index.mjs +4 -0
  15. package/3rdparty/walkontable/src/calculator/viewportColumns.d.ts +18 -0
  16. package/3rdparty/walkontable/src/calculator/viewportColumns.js +297 -0
  17. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +292 -0
  18. package/3rdparty/walkontable/src/calculator/viewportRows.js +175 -0
  19. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +170 -0
  20. package/3rdparty/walkontable/src/cell/coords.d.ts +16 -0
  21. package/3rdparty/walkontable/src/cell/coords.js +185 -0
  22. package/3rdparty/walkontable/src/cell/coords.mjs +180 -0
  23. package/3rdparty/walkontable/src/cell/range.d.ts +59 -0
  24. package/3rdparty/walkontable/src/cell/range.js +888 -0
  25. package/3rdparty/walkontable/src/cell/range.mjs +882 -0
  26. package/3rdparty/walkontable/src/core/_base.js +395 -0
  27. package/3rdparty/walkontable/src/core/_base.mjs +390 -0
  28. package/3rdparty/walkontable/src/core/clone.js +59 -0
  29. package/3rdparty/walkontable/src/core/clone.mjs +54 -0
  30. package/3rdparty/walkontable/src/core/core.js +130 -0
  31. package/3rdparty/walkontable/src/core/core.mjs +125 -0
  32. package/3rdparty/walkontable/src/event.js +401 -0
  33. package/3rdparty/walkontable/src/event.mjs +396 -0
  34. package/3rdparty/walkontable/src/facade/core.js +236 -0
  35. package/3rdparty/walkontable/src/facade/core.mjs +231 -0
  36. package/3rdparty/walkontable/src/filter/column.js +107 -0
  37. package/3rdparty/walkontable/src/filter/column.mjs +102 -0
  38. package/3rdparty/walkontable/src/filter/row.js +107 -0
  39. package/3rdparty/walkontable/src/filter/row.mjs +102 -0
  40. package/3rdparty/walkontable/src/index.d.ts +1 -0
  41. package/3rdparty/walkontable/src/index.js +37 -0
  42. package/3rdparty/walkontable/src/index.mjs +10 -0
  43. package/3rdparty/walkontable/src/overlay/_base.js +363 -0
  44. package/3rdparty/walkontable/src/overlay/_base.mjs +357 -0
  45. package/3rdparty/walkontable/src/overlay/bottom.js +397 -0
  46. package/3rdparty/walkontable/src/overlay/bottom.mjs +391 -0
  47. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +140 -0
  48. package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +134 -0
  49. package/3rdparty/walkontable/src/overlay/constants.js +26 -0
  50. package/3rdparty/walkontable/src/overlay/constants.mjs +15 -0
  51. package/3rdparty/walkontable/src/overlay/index.js +34 -0
  52. package/3rdparty/walkontable/src/overlay/index.mjs +7 -0
  53. package/3rdparty/walkontable/src/overlay/inlineStart.js +385 -0
  54. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +379 -0
  55. package/3rdparty/walkontable/src/overlay/top.js +415 -0
  56. package/3rdparty/walkontable/src/overlay/top.mjs +409 -0
  57. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +130 -0
  58. package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +124 -0
  59. package/3rdparty/walkontable/src/overlays.js +675 -0
  60. package/3rdparty/walkontable/src/overlays.mjs +670 -0
  61. package/3rdparty/walkontable/src/renderer/_base.js +83 -0
  62. package/3rdparty/walkontable/src/renderer/_base.mjs +78 -0
  63. package/3rdparty/walkontable/src/renderer/cells.js +127 -0
  64. package/3rdparty/walkontable/src/renderer/cells.mjs +122 -0
  65. package/3rdparty/walkontable/src/renderer/colGroup.js +101 -0
  66. package/3rdparty/walkontable/src/renderer/colGroup.mjs +96 -0
  67. package/3rdparty/walkontable/src/renderer/columnHeaders.js +115 -0
  68. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +110 -0
  69. package/3rdparty/walkontable/src/renderer/index.js +118 -0
  70. package/3rdparty/walkontable/src/renderer/index.mjs +107 -0
  71. package/3rdparty/walkontable/src/renderer/rowHeaders.js +119 -0
  72. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +114 -0
  73. package/3rdparty/walkontable/src/renderer/rows.js +99 -0
  74. package/3rdparty/walkontable/src/renderer/rows.mjs +94 -0
  75. package/3rdparty/walkontable/src/renderer/table.js +317 -0
  76. package/3rdparty/walkontable/src/renderer/table.mjs +313 -0
  77. package/3rdparty/walkontable/src/scroll.js +316 -0
  78. package/3rdparty/walkontable/src/scroll.mjs +311 -0
  79. package/3rdparty/walkontable/src/selection.js +349 -0
  80. package/3rdparty/walkontable/src/selection.mjs +343 -0
  81. package/3rdparty/walkontable/src/settings.js +306 -0
  82. package/3rdparty/walkontable/src/settings.mjs +302 -0
  83. package/3rdparty/walkontable/src/table/bottom.js +56 -0
  84. package/3rdparty/walkontable/src/table/bottom.mjs +50 -0
  85. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +57 -0
  86. package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +51 -0
  87. package/3rdparty/walkontable/src/table/inlineStart.js +53 -0
  88. package/3rdparty/walkontable/src/table/inlineStart.mjs +47 -0
  89. package/3rdparty/walkontable/src/table/master.js +132 -0
  90. package/3rdparty/walkontable/src/table/master.mjs +126 -0
  91. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +93 -0
  92. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +88 -0
  93. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +93 -0
  94. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +88 -0
  95. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +85 -0
  96. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +80 -0
  97. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +90 -0
  98. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +85 -0
  99. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +85 -0
  100. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +80 -0
  101. package/3rdparty/walkontable/src/table/top.js +56 -0
  102. package/3rdparty/walkontable/src/table/top.mjs +50 -0
  103. package/3rdparty/walkontable/src/table/topInlineStartCorner.js +57 -0
  104. package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +51 -0
  105. package/3rdparty/walkontable/src/table.js +1171 -0
  106. package/3rdparty/walkontable/src/table.mjs +1165 -0
  107. package/3rdparty/walkontable/src/types.js +98 -0
  108. package/3rdparty/walkontable/src/types.mjs +97 -0
  109. package/3rdparty/walkontable/src/utils/column.js +121 -0
  110. package/3rdparty/walkontable/src/utils/column.mjs +117 -0
  111. package/3rdparty/walkontable/src/utils/nodesPool.js +48 -0
  112. package/3rdparty/walkontable/src/utils/nodesPool.mjs +44 -0
  113. package/3rdparty/walkontable/src/utils/orderView/constants.js +30 -0
  114. package/3rdparty/walkontable/src/utils/orderView/constants.mjs +23 -0
  115. package/3rdparty/walkontable/src/utils/orderView/index.js +8 -0
  116. package/3rdparty/walkontable/src/utils/orderView/index.mjs +3 -0
  117. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +81 -0
  118. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +76 -0
  119. package/3rdparty/walkontable/src/utils/orderView/view.js +216 -0
  120. package/3rdparty/walkontable/src/utils/orderView/view.mjs +211 -0
  121. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +68 -0
  122. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +64 -0
  123. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +137 -0
  124. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +132 -0
  125. package/3rdparty/walkontable/src/utils/row.js +43 -0
  126. package/3rdparty/walkontable/src/utils/row.mjs +39 -0
  127. package/3rdparty/walkontable/src/viewport.js +491 -0
  128. package/3rdparty/walkontable/src/viewport.mjs +486 -0
  129. package/CHANGELOG.md +716 -0
  130. package/LICENSE.txt +25 -0
  131. package/README.md +140 -0
  132. package/base.d.ts +3 -0
  133. package/base.js +54 -0
  134. package/base.mjs +44 -0
  135. package/cellTypes/autocompleteType/autocompleteType.d.ts +17 -0
  136. package/cellTypes/autocompleteType/autocompleteType.js +16 -0
  137. package/cellTypes/autocompleteType/autocompleteType.mjs +10 -0
  138. package/cellTypes/autocompleteType/index.d.ts +1 -0
  139. package/cellTypes/autocompleteType/index.js +7 -0
  140. package/cellTypes/autocompleteType/index.mjs +1 -0
  141. package/cellTypes/base.d.ts +14 -0
  142. package/cellTypes/checkboxType/checkboxType.d.ts +14 -0
  143. package/cellTypes/checkboxType/checkboxType.js +14 -0
  144. package/cellTypes/checkboxType/checkboxType.mjs +8 -0
  145. package/cellTypes/checkboxType/index.d.ts +1 -0
  146. package/cellTypes/checkboxType/index.js +7 -0
  147. package/cellTypes/checkboxType/index.mjs +1 -0
  148. package/cellTypes/dateType/dateType.d.ts +17 -0
  149. package/cellTypes/dateType/dateType.js +17 -0
  150. package/cellTypes/dateType/dateType.mjs +11 -0
  151. package/cellTypes/dateType/index.d.ts +1 -0
  152. package/cellTypes/dateType/index.js +7 -0
  153. package/cellTypes/dateType/index.mjs +1 -0
  154. package/cellTypes/dropdownType/dropdownType.d.ts +17 -0
  155. package/cellTypes/dropdownType/dropdownType.js +17 -0
  156. package/cellTypes/dropdownType/dropdownType.mjs +11 -0
  157. package/cellTypes/dropdownType/index.d.ts +1 -0
  158. package/cellTypes/dropdownType/index.js +7 -0
  159. package/cellTypes/dropdownType/index.mjs +1 -0
  160. package/cellTypes/handsontableType/handsontableType.d.ts +14 -0
  161. package/cellTypes/handsontableType/handsontableType.js +15 -0
  162. package/cellTypes/handsontableType/handsontableType.mjs +9 -0
  163. package/cellTypes/handsontableType/index.d.ts +1 -0
  164. package/cellTypes/handsontableType/index.js +7 -0
  165. package/cellTypes/handsontableType/index.mjs +1 -0
  166. package/cellTypes/index.d.ts +47 -0
  167. package/cellTypes/index.js +52 -0
  168. package/cellTypes/index.mjs +26 -0
  169. package/cellTypes/numericType/index.d.ts +1 -0
  170. package/cellTypes/numericType/index.js +7 -0
  171. package/cellTypes/numericType/index.mjs +1 -0
  172. package/cellTypes/numericType/numericType.d.ts +17 -0
  173. package/cellTypes/numericType/numericType.js +17 -0
  174. package/cellTypes/numericType/numericType.mjs +11 -0
  175. package/cellTypes/passwordType/index.d.ts +1 -0
  176. package/cellTypes/passwordType/index.js +7 -0
  177. package/cellTypes/passwordType/index.mjs +1 -0
  178. package/cellTypes/passwordType/passwordType.d.ts +14 -0
  179. package/cellTypes/passwordType/passwordType.js +15 -0
  180. package/cellTypes/passwordType/passwordType.mjs +9 -0
  181. package/cellTypes/registry.d.ts +18 -0
  182. package/cellTypes/registry.js +60 -0
  183. package/cellTypes/registry.mjs +51 -0
  184. package/cellTypes/textType/index.d.ts +1 -0
  185. package/cellTypes/textType/index.js +7 -0
  186. package/cellTypes/textType/index.mjs +1 -0
  187. package/cellTypes/textType/textType.d.ts +14 -0
  188. package/cellTypes/textType/textType.js +14 -0
  189. package/cellTypes/textType/textType.mjs +8 -0
  190. package/cellTypes/timeType/index.d.ts +1 -0
  191. package/cellTypes/timeType/index.js +7 -0
  192. package/cellTypes/timeType/index.mjs +1 -0
  193. package/cellTypes/timeType/timeType.d.ts +17 -0
  194. package/cellTypes/timeType/timeType.js +16 -0
  195. package/cellTypes/timeType/timeType.mjs +10 -0
  196. package/common.d.ts +74 -0
  197. package/core.d.ts +167 -0
  198. package/core.js +4684 -0
  199. package/core.mjs +4679 -0
  200. package/dataMap/dataMap.js +975 -0
  201. package/dataMap/dataMap.mjs +970 -0
  202. package/dataMap/dataSource.js +325 -0
  203. package/dataMap/dataSource.mjs +320 -0
  204. package/dataMap/index.js +16 -0
  205. package/dataMap/index.mjs +7 -0
  206. package/dataMap/metaManager/index.js +339 -0
  207. package/dataMap/metaManager/index.mjs +334 -0
  208. package/dataMap/metaManager/lazyFactoryMap.js +370 -0
  209. package/dataMap/metaManager/lazyFactoryMap.mjs +366 -0
  210. package/dataMap/metaManager/metaLayers/cellMeta.js +275 -0
  211. package/dataMap/metaManager/metaLayers/cellMeta.mjs +270 -0
  212. package/dataMap/metaManager/metaLayers/columnMeta.js +153 -0
  213. package/dataMap/metaManager/metaLayers/columnMeta.mjs +148 -0
  214. package/dataMap/metaManager/metaLayers/globalMeta.js +103 -0
  215. package/dataMap/metaManager/metaLayers/globalMeta.mjs +98 -0
  216. package/dataMap/metaManager/metaLayers/tableMeta.js +73 -0
  217. package/dataMap/metaManager/metaLayers/tableMeta.mjs +69 -0
  218. package/dataMap/metaManager/metaSchema.js +4610 -0
  219. package/dataMap/metaManager/metaSchema.mjs +4605 -0
  220. package/dataMap/metaManager/mods/dynamicCellMeta.js +107 -0
  221. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +101 -0
  222. package/dataMap/metaManager/mods/extendMetaProperties.js +104 -0
  223. package/dataMap/metaManager/mods/extendMetaProperties.mjs +99 -0
  224. package/dataMap/metaManager/utils.js +99 -0
  225. package/dataMap/metaManager/utils.mjs +91 -0
  226. package/dataMap/replaceData.js +119 -0
  227. package/dataMap/replaceData.mjs +115 -0
  228. package/dist/README.md +54 -0
  229. package/dist/handsontable.css +1941 -0
  230. package/dist/handsontable.full.css +2172 -0
  231. package/dist/handsontable.full.js +150392 -0
  232. package/dist/handsontable.full.min.css +47 -0
  233. package/dist/handsontable.full.min.js +869 -0
  234. package/dist/handsontable.js +94075 -0
  235. package/dist/handsontable.min.css +43 -0
  236. package/dist/handsontable.min.js +31 -0
  237. package/dist/languages/all.js +583 -0
  238. package/dist/languages/all.min.js +1 -0
  239. package/dist/languages/ar-AR.js +157 -0
  240. package/dist/languages/ar-AR.min.js +1 -0
  241. package/dist/languages/cs-CZ.js +157 -0
  242. package/dist/languages/cs-CZ.min.js +1 -0
  243. package/dist/languages/de-CH.js +158 -0
  244. package/dist/languages/de-CH.min.js +1 -0
  245. package/dist/languages/de-DE.js +159 -0
  246. package/dist/languages/de-DE.min.js +1 -0
  247. package/dist/languages/en-US.js +160 -0
  248. package/dist/languages/en-US.min.js +1 -0
  249. package/dist/languages/es-MX.js +161 -0
  250. package/dist/languages/es-MX.min.js +1 -0
  251. package/dist/languages/fr-FR.js +162 -0
  252. package/dist/languages/fr-FR.min.js +1 -0
  253. package/dist/languages/it-IT.js +164 -0
  254. package/dist/languages/it-IT.min.js +1 -0
  255. package/dist/languages/ja-JP.js +161 -0
  256. package/dist/languages/ja-JP.min.js +1 -0
  257. package/dist/languages/ko-KR.js +161 -0
  258. package/dist/languages/ko-KR.min.js +1 -0
  259. package/dist/languages/lv-LV.js +161 -0
  260. package/dist/languages/lv-LV.min.js +1 -0
  261. package/dist/languages/nb-NO.js +161 -0
  262. package/dist/languages/nb-NO.min.js +1 -0
  263. package/dist/languages/nl-NL.js +161 -0
  264. package/dist/languages/nl-NL.min.js +1 -0
  265. package/dist/languages/pl-PL.js +161 -0
  266. package/dist/languages/pl-PL.min.js +1 -0
  267. package/dist/languages/pt-BR.js +161 -0
  268. package/dist/languages/pt-BR.min.js +1 -0
  269. package/dist/languages/ru-RU.js +161 -0
  270. package/dist/languages/ru-RU.min.js +1 -0
  271. package/dist/languages/sr-SP.js +161 -0
  272. package/dist/languages/sr-SP.min.js +1 -0
  273. package/dist/languages/zh-CN.js +161 -0
  274. package/dist/languages/zh-CN.min.js +1 -0
  275. package/dist/languages/zh-TW.js +161 -0
  276. package/dist/languages/zh-TW.min.js +1 -0
  277. package/editorManager.js +522 -0
  278. package/editorManager.mjs +514 -0
  279. package/editors/autocompleteEditor/autocompleteEditor.d.ts +29 -0
  280. package/editors/autocompleteEditor/autocompleteEditor.js +584 -0
  281. package/editors/autocompleteEditor/autocompleteEditor.mjs +578 -0
  282. package/editors/autocompleteEditor/index.d.ts +1 -0
  283. package/editors/autocompleteEditor/index.js +7 -0
  284. package/editors/autocompleteEditor/index.mjs +1 -0
  285. package/editors/baseEditor/baseEditor.d.ts +45 -0
  286. package/editors/baseEditor/baseEditor.js +688 -0
  287. package/editors/baseEditor/baseEditor.mjs +679 -0
  288. package/editors/baseEditor/index.d.ts +1 -0
  289. package/editors/baseEditor/index.js +8 -0
  290. package/editors/baseEditor/index.mjs +1 -0
  291. package/editors/checkboxEditor/checkboxEditor.d.ts +12 -0
  292. package/editors/checkboxEditor/checkboxEditor.js +85 -0
  293. package/editors/checkboxEditor/checkboxEditor.mjs +79 -0
  294. package/editors/checkboxEditor/index.d.ts +1 -0
  295. package/editors/checkboxEditor/index.js +7 -0
  296. package/editors/checkboxEditor/index.mjs +1 -0
  297. package/editors/dateEditor/dateEditor.d.ts +18 -0
  298. package/editors/dateEditor/dateEditor.js +325 -0
  299. package/editors/dateEditor/dateEditor.mjs +318 -0
  300. package/editors/dateEditor/index.d.ts +1 -0
  301. package/editors/dateEditor/index.js +7 -0
  302. package/editors/dateEditor/index.mjs +1 -0
  303. package/editors/dropdownEditor/dropdownEditor.d.ts +7 -0
  304. package/editors/dropdownEditor/dropdownEditor.js +81 -0
  305. package/editors/dropdownEditor/dropdownEditor.mjs +74 -0
  306. package/editors/dropdownEditor/index.d.ts +1 -0
  307. package/editors/dropdownEditor/index.js +7 -0
  308. package/editors/dropdownEditor/index.mjs +1 -0
  309. package/editors/handsontableEditor/handsontableEditor.d.ts +10 -0
  310. package/editors/handsontableEditor/handsontableEditor.js +306 -0
  311. package/editors/handsontableEditor/handsontableEditor.mjs +300 -0
  312. package/editors/handsontableEditor/index.d.ts +1 -0
  313. package/editors/handsontableEditor/index.js +7 -0
  314. package/editors/handsontableEditor/index.mjs +1 -0
  315. package/editors/index.d.ts +56 -0
  316. package/editors/index.js +63 -0
  317. package/editors/index.mjs +30 -0
  318. package/editors/numericEditor/index.d.ts +1 -0
  319. package/editors/numericEditor/index.js +7 -0
  320. package/editors/numericEditor/index.mjs +1 -0
  321. package/editors/numericEditor/numericEditor.d.ts +7 -0
  322. package/editors/numericEditor/numericEditor.js +49 -0
  323. package/editors/numericEditor/numericEditor.mjs +43 -0
  324. package/editors/passwordEditor/index.d.ts +1 -0
  325. package/editors/passwordEditor/index.js +7 -0
  326. package/editors/passwordEditor/index.mjs +1 -0
  327. package/editors/passwordEditor/passwordEditor.d.ts +7 -0
  328. package/editors/passwordEditor/passwordEditor.js +68 -0
  329. package/editors/passwordEditor/passwordEditor.mjs +62 -0
  330. package/editors/registry.d.ts +29 -0
  331. package/editors/registry.js +106 -0
  332. package/editors/registry.mjs +94 -0
  333. package/editors/selectEditor/index.d.ts +1 -0
  334. package/editors/selectEditor/index.js +7 -0
  335. package/editors/selectEditor/index.mjs +1 -0
  336. package/editors/selectEditor/selectEditor.d.ts +16 -0
  337. package/editors/selectEditor/selectEditor.js +302 -0
  338. package/editors/selectEditor/selectEditor.mjs +296 -0
  339. package/editors/textEditor/caretPositioner.js +37 -0
  340. package/editors/textEditor/caretPositioner.mjs +33 -0
  341. package/editors/textEditor/index.d.ts +1 -0
  342. package/editors/textEditor/index.js +7 -0
  343. package/editors/textEditor/index.mjs +1 -0
  344. package/editors/textEditor/textEditor.d.ts +24 -0
  345. package/editors/textEditor/textEditor.js +612 -0
  346. package/editors/textEditor/textEditor.mjs +605 -0
  347. package/editors/timeEditor/index.d.ts +1 -0
  348. package/editors/timeEditor/index.js +7 -0
  349. package/editors/timeEditor/index.mjs +1 -0
  350. package/editors/timeEditor/timeEditor.d.ts +7 -0
  351. package/editors/timeEditor/timeEditor.js +70 -0
  352. package/editors/timeEditor/timeEditor.mjs +64 -0
  353. package/eventManager.d.ts +13 -0
  354. package/eventManager.js +236 -0
  355. package/eventManager.mjs +231 -0
  356. package/handsontable-non-commercial-license.pdf +0 -0
  357. package/helpers/array.d.ts +18 -0
  358. package/helpers/array.js +353 -0
  359. package/helpers/array.mjs +333 -0
  360. package/helpers/browser.d.ts +25 -0
  361. package/helpers/browser.js +231 -0
  362. package/helpers/browser.mjs +210 -0
  363. package/helpers/console.d.ts +4 -0
  364. package/helpers/console.js +65 -0
  365. package/helpers/console.mjs +56 -0
  366. package/helpers/data.d.ts +12 -0
  367. package/helpers/data.js +247 -0
  368. package/helpers/data.mjs +234 -0
  369. package/helpers/date.d.ts +1 -0
  370. package/helpers/date.js +22 -0
  371. package/helpers/date.mjs +18 -0
  372. package/helpers/dom/element.d.ts +49 -0
  373. package/helpers/dom/element.js +1117 -0
  374. package/helpers/dom/element.mjs +1064 -0
  375. package/helpers/dom/event.d.ts +4 -0
  376. package/helpers/dom/event.js +46 -0
  377. package/helpers/dom/event.mjs +39 -0
  378. package/helpers/dom/index.d.ts +2 -0
  379. package/helpers/feature.d.ts +11 -0
  380. package/helpers/feature.js +184 -0
  381. package/helpers/feature.mjs +172 -0
  382. package/helpers/function.d.ts +10 -0
  383. package/helpers/function.js +319 -0
  384. package/helpers/function.mjs +307 -0
  385. package/helpers/index.d.ts +14 -0
  386. package/helpers/mixed.d.ts +5 -0
  387. package/helpers/mixed.js +230 -0
  388. package/helpers/mixed.mjs +220 -0
  389. package/helpers/number.d.ts +5 -0
  390. package/helpers/number.js +142 -0
  391. package/helpers/number.mjs +134 -0
  392. package/helpers/object.d.ts +16 -0
  393. package/helpers/object.js +371 -0
  394. package/helpers/object.mjs +352 -0
  395. package/helpers/string.d.ts +7 -0
  396. package/helpers/string.js +115 -0
  397. package/helpers/string.mjs +104 -0
  398. package/helpers/templateLiteralTag.d.ts +1 -0
  399. package/helpers/templateLiteralTag.js +26 -0
  400. package/helpers/templateLiteralTag.mjs +22 -0
  401. package/helpers/unicode.d.ts +73 -0
  402. package/helpers/unicode.js +158 -0
  403. package/helpers/unicode.mjs +148 -0
  404. package/helpers/wrappers/jquery.js +50 -0
  405. package/helpers/wrappers/jquery.mjs +46 -0
  406. package/i18n/constants.js +162 -0
  407. package/i18n/constants.mjs +82 -0
  408. package/i18n/index.d.ts +2 -0
  409. package/i18n/index.js +18 -0
  410. package/i18n/index.mjs +2 -0
  411. package/i18n/languages/ar-AR.js +25 -0
  412. package/i18n/languages/ar-AR.mjs +15 -0
  413. package/i18n/languages/cs-CZ.js +24 -0
  414. package/i18n/languages/cs-CZ.mjs +14 -0
  415. package/i18n/languages/de-CH.d.ts +5 -0
  416. package/i18n/languages/de-CH.js +24 -0
  417. package/i18n/languages/de-CH.mjs +14 -0
  418. package/i18n/languages/de-DE.d.ts +5 -0
  419. package/i18n/languages/de-DE.js +24 -0
  420. package/i18n/languages/de-DE.mjs +14 -0
  421. package/i18n/languages/en-US.d.ts +5 -0
  422. package/i18n/languages/en-US.js +24 -0
  423. package/i18n/languages/en-US.mjs +14 -0
  424. package/i18n/languages/es-MX.d.ts +5 -0
  425. package/i18n/languages/es-MX.js +24 -0
  426. package/i18n/languages/es-MX.mjs +13 -0
  427. package/i18n/languages/fr-FR.d.ts +5 -0
  428. package/i18n/languages/fr-FR.js +24 -0
  429. package/i18n/languages/fr-FR.mjs +14 -0
  430. package/i18n/languages/index.d.ts +35 -0
  431. package/i18n/languages/index.js +42 -0
  432. package/i18n/languages/index.mjs +20 -0
  433. package/i18n/languages/it-IT.d.ts +5 -0
  434. package/i18n/languages/it-IT.js +24 -0
  435. package/i18n/languages/it-IT.mjs +14 -0
  436. package/i18n/languages/ja-JP.d.ts +5 -0
  437. package/i18n/languages/ja-JP.js +24 -0
  438. package/i18n/languages/ja-JP.mjs +14 -0
  439. package/i18n/languages/ko-KR.d.ts +5 -0
  440. package/i18n/languages/ko-KR.js +24 -0
  441. package/i18n/languages/ko-KR.mjs +14 -0
  442. package/i18n/languages/lv-LV.d.ts +5 -0
  443. package/i18n/languages/lv-LV.js +24 -0
  444. package/i18n/languages/lv-LV.mjs +14 -0
  445. package/i18n/languages/nb-NO.d.ts +5 -0
  446. package/i18n/languages/nb-NO.js +24 -0
  447. package/i18n/languages/nb-NO.mjs +14 -0
  448. package/i18n/languages/nl-NL.d.ts +5 -0
  449. package/i18n/languages/nl-NL.js +24 -0
  450. package/i18n/languages/nl-NL.mjs +14 -0
  451. package/i18n/languages/pl-PL.d.ts +5 -0
  452. package/i18n/languages/pl-PL.js +24 -0
  453. package/i18n/languages/pl-PL.mjs +14 -0
  454. package/i18n/languages/pt-BR.d.ts +5 -0
  455. package/i18n/languages/pt-BR.js +24 -0
  456. package/i18n/languages/pt-BR.mjs +14 -0
  457. package/i18n/languages/ru-RU.d.ts +5 -0
  458. package/i18n/languages/ru-RU.js +24 -0
  459. package/i18n/languages/ru-RU.mjs +14 -0
  460. package/i18n/languages/sr-SP.js +24 -0
  461. package/i18n/languages/sr-SP.mjs +14 -0
  462. package/i18n/languages/zh-CN.d.ts +5 -0
  463. package/i18n/languages/zh-CN.js +24 -0
  464. package/i18n/languages/zh-CN.mjs +14 -0
  465. package/i18n/languages/zh-TW.d.ts +5 -0
  466. package/i18n/languages/zh-TW.js +24 -0
  467. package/i18n/languages/zh-TW.mjs +14 -0
  468. package/i18n/phraseFormatters/index.js +31 -0
  469. package/i18n/phraseFormatters/index.mjs +26 -0
  470. package/i18n/phraseFormatters/pluralize.js +21 -0
  471. package/i18n/phraseFormatters/pluralize.mjs +17 -0
  472. package/i18n/phraseFormatters/substituteVariables.js +22 -0
  473. package/i18n/phraseFormatters/substituteVariables.mjs +18 -0
  474. package/i18n/registry.d.ts +13 -0
  475. package/i18n/registry.js +180 -0
  476. package/i18n/registry.mjs +155 -0
  477. package/i18n/utils.js +90 -0
  478. package/i18n/utils.mjs +83 -0
  479. package/index.d.ts +520 -0
  480. package/index.js +130 -0
  481. package/index.mjs +112 -0
  482. package/languages/all.js +583 -0
  483. package/languages/ar-AR.js +157 -0
  484. package/languages/ar-AR.mjs +17 -0
  485. package/languages/cs-CZ.js +157 -0
  486. package/languages/cs-CZ.mjs +16 -0
  487. package/languages/de-CH.js +158 -0
  488. package/languages/de-CH.mjs +16 -0
  489. package/languages/de-DE.js +159 -0
  490. package/languages/de-DE.mjs +16 -0
  491. package/languages/en-US.js +160 -0
  492. package/languages/en-US.mjs +16 -0
  493. package/languages/es-MX.js +161 -0
  494. package/languages/es-MX.mjs +15 -0
  495. package/languages/fr-FR.js +162 -0
  496. package/languages/fr-FR.mjs +16 -0
  497. package/languages/index.js +583 -0
  498. package/languages/index.mjs +20 -0
  499. package/languages/it-IT.js +164 -0
  500. package/languages/it-IT.mjs +16 -0
  501. package/languages/ja-JP.js +161 -0
  502. package/languages/ja-JP.mjs +16 -0
  503. package/languages/ko-KR.js +161 -0
  504. package/languages/ko-KR.mjs +16 -0
  505. package/languages/lv-LV.js +161 -0
  506. package/languages/lv-LV.mjs +16 -0
  507. package/languages/nb-NO.js +161 -0
  508. package/languages/nb-NO.mjs +16 -0
  509. package/languages/nl-NL.js +161 -0
  510. package/languages/nl-NL.mjs +16 -0
  511. package/languages/pl-PL.js +161 -0
  512. package/languages/pl-PL.mjs +16 -0
  513. package/languages/pt-BR.js +161 -0
  514. package/languages/pt-BR.mjs +16 -0
  515. package/languages/ru-RU.js +161 -0
  516. package/languages/ru-RU.mjs +16 -0
  517. package/languages/sr-SP.js +161 -0
  518. package/languages/sr-SP.mjs +16 -0
  519. package/languages/zh-CN.js +161 -0
  520. package/languages/zh-CN.mjs +16 -0
  521. package/languages/zh-TW.js +161 -0
  522. package/languages/zh-TW.mjs +16 -0
  523. package/mixins/hooksRefRegisterer.js +61 -0
  524. package/mixins/hooksRefRegisterer.mjs +56 -0
  525. package/mixins/localHooks.js +71 -0
  526. package/mixins/localHooks.mjs +66 -0
  527. package/package.json +751 -0
  528. package/pluginHooks.d.ts +256 -0
  529. package/pluginHooks.js +2750 -0
  530. package/pluginHooks.mjs +2744 -0
  531. package/plugins/autoColumnSize/autoColumnSize.d.ts +27 -0
  532. package/plugins/autoColumnSize/autoColumnSize.js +796 -0
  533. package/plugins/autoColumnSize/autoColumnSize.mjs +788 -0
  534. package/plugins/autoColumnSize/index.d.ts +1 -0
  535. package/plugins/autoColumnSize/index.js +8 -0
  536. package/plugins/autoColumnSize/index.mjs +1 -0
  537. package/plugins/autoRowSize/autoRowSize.d.ts +27 -0
  538. package/plugins/autoRowSize/autoRowSize.js +735 -0
  539. package/plugins/autoRowSize/autoRowSize.mjs +727 -0
  540. package/plugins/autoRowSize/index.d.ts +1 -0
  541. package/plugins/autoRowSize/index.js +8 -0
  542. package/plugins/autoRowSize/index.mjs +1 -0
  543. package/plugins/autofill/autofill.d.ts +18 -0
  544. package/plugins/autofill/autofill.js +694 -0
  545. package/plugins/autofill/autofill.mjs +687 -0
  546. package/plugins/autofill/index.d.ts +1 -0
  547. package/plugins/autofill/index.js +8 -0
  548. package/plugins/autofill/index.mjs +1 -0
  549. package/plugins/autofill/utils.js +134 -0
  550. package/plugins/autofill/utils.mjs +126 -0
  551. package/plugins/base/base.d.ts +27 -0
  552. package/plugins/base/base.js +345 -0
  553. package/plugins/base/base.mjs +339 -0
  554. package/plugins/base/index.d.ts +1 -0
  555. package/plugins/base/index.js +7 -0
  556. package/plugins/base/index.mjs +1 -0
  557. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.d.ts +9 -0
  558. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +169 -0
  559. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +161 -0
  560. package/plugins/bindRowsWithHeaders/index.d.ts +1 -0
  561. package/plugins/bindRowsWithHeaders/index.js +8 -0
  562. package/plugins/bindRowsWithHeaders/index.mjs +1 -0
  563. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +80 -0
  564. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +75 -0
  565. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +103 -0
  566. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +98 -0
  567. package/plugins/collapsibleColumns/collapsibleColumns.d.ts +22 -0
  568. package/plugins/collapsibleColumns/collapsibleColumns.js +592 -0
  569. package/plugins/collapsibleColumns/collapsibleColumns.mjs +584 -0
  570. package/plugins/collapsibleColumns/index.d.ts +1 -0
  571. package/plugins/collapsibleColumns/index.js +8 -0
  572. package/plugins/collapsibleColumns/index.mjs +1 -0
  573. package/plugins/columnSorting/columnSorting.d.ts +30 -0
  574. package/plugins/columnSorting/columnSorting.js +865 -0
  575. package/plugins/columnSorting/columnSorting.mjs +857 -0
  576. package/plugins/columnSorting/columnStatesManager.js +273 -0
  577. package/plugins/columnSorting/columnStatesManager.mjs +268 -0
  578. package/plugins/columnSorting/domHelpers.js +54 -0
  579. package/plugins/columnSorting/domHelpers.mjs +49 -0
  580. package/plugins/columnSorting/index.d.ts +1 -0
  581. package/plugins/columnSorting/index.js +8 -0
  582. package/plugins/columnSorting/index.mjs +1 -0
  583. package/plugins/columnSorting/rootComparator.js +52 -0
  584. package/plugins/columnSorting/rootComparator.mjs +48 -0
  585. package/plugins/columnSorting/sortFunction/checkbox.js +64 -0
  586. package/plugins/columnSorting/sortFunction/checkbox.mjs +58 -0
  587. package/plugins/columnSorting/sortFunction/date.js +61 -0
  588. package/plugins/columnSorting/sortFunction/date.mjs +54 -0
  589. package/plugins/columnSorting/sortFunction/default.js +65 -0
  590. package/plugins/columnSorting/sortFunction/default.mjs +59 -0
  591. package/plugins/columnSorting/sortFunction/numeric.js +49 -0
  592. package/plugins/columnSorting/sortFunction/numeric.mjs +43 -0
  593. package/plugins/columnSorting/sortService/engine.js +26 -0
  594. package/plugins/columnSorting/sortService/engine.mjs +18 -0
  595. package/plugins/columnSorting/sortService/index.js +13 -0
  596. package/plugins/columnSorting/sortService/index.mjs +3 -0
  597. package/plugins/columnSorting/sortService/registry.js +37 -0
  598. package/plugins/columnSorting/sortService/registry.mjs +30 -0
  599. package/plugins/columnSorting/utils.js +122 -0
  600. package/plugins/columnSorting/utils.mjs +110 -0
  601. package/plugins/columnSummary/columnSummary.d.ts +72 -0
  602. package/plugins/columnSummary/columnSummary.js +544 -0
  603. package/plugins/columnSummary/columnSummary.mjs +536 -0
  604. package/plugins/columnSummary/endpoints.js +557 -0
  605. package/plugins/columnSummary/endpoints.mjs +552 -0
  606. package/plugins/columnSummary/index.d.ts +1 -0
  607. package/plugins/columnSummary/index.js +8 -0
  608. package/plugins/columnSummary/index.mjs +1 -0
  609. package/plugins/columnSummary/utils.js +13 -0
  610. package/plugins/columnSummary/utils.mjs +9 -0
  611. package/plugins/comments/commentEditor.js +241 -0
  612. package/plugins/comments/commentEditor.mjs +236 -0
  613. package/plugins/comments/comments.d.ts +50 -0
  614. package/plugins/comments/comments.js +942 -0
  615. package/plugins/comments/comments.mjs +932 -0
  616. package/plugins/comments/displaySwitch.js +115 -0
  617. package/plugins/comments/displaySwitch.mjs +109 -0
  618. package/plugins/comments/index.d.ts +1 -0
  619. package/plugins/comments/index.js +8 -0
  620. package/plugins/comments/index.mjs +1 -0
  621. package/plugins/contextMenu/commandExecutor.js +113 -0
  622. package/plugins/contextMenu/commandExecutor.mjs +108 -0
  623. package/plugins/contextMenu/contextMenu.d.ts +65 -0
  624. package/plugins/contextMenu/contextMenu.js +445 -0
  625. package/plugins/contextMenu/contextMenu.mjs +437 -0
  626. package/plugins/contextMenu/cursor.js +126 -0
  627. package/plugins/contextMenu/cursor.mjs +121 -0
  628. package/plugins/contextMenu/index.d.ts +1 -0
  629. package/plugins/contextMenu/index.js +8 -0
  630. package/plugins/contextMenu/index.mjs +1 -0
  631. package/plugins/contextMenu/itemsFactory.js +136 -0
  632. package/plugins/contextMenu/itemsFactory.mjs +131 -0
  633. package/plugins/contextMenu/menu.js +1003 -0
  634. package/plugins/contextMenu/menu.mjs +997 -0
  635. package/plugins/contextMenu/predefinedItems/alignment.js +277 -0
  636. package/plugins/contextMenu/predefinedItems/alignment.mjs +259 -0
  637. package/plugins/contextMenu/predefinedItems/clearColumn.js +47 -0
  638. package/plugins/contextMenu/predefinedItems/clearColumn.mjs +29 -0
  639. package/plugins/contextMenu/predefinedItems/columnLeft.js +57 -0
  640. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +39 -0
  641. package/plugins/contextMenu/predefinedItems/columnRight.js +55 -0
  642. package/plugins/contextMenu/predefinedItems/columnRight.mjs +37 -0
  643. package/plugins/contextMenu/predefinedItems/noItems.js +22 -0
  644. package/plugins/contextMenu/predefinedItems/noItems.mjs +16 -0
  645. package/plugins/contextMenu/predefinedItems/readOnly.js +69 -0
  646. package/plugins/contextMenu/predefinedItems/readOnly.mjs +51 -0
  647. package/plugins/contextMenu/predefinedItems/redo.js +42 -0
  648. package/plugins/contextMenu/predefinedItems/redo.mjs +24 -0
  649. package/plugins/contextMenu/predefinedItems/removeColumn.js +79 -0
  650. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +68 -0
  651. package/plugins/contextMenu/predefinedItems/removeRow.js +78 -0
  652. package/plugins/contextMenu/predefinedItems/removeRow.mjs +67 -0
  653. package/plugins/contextMenu/predefinedItems/rowAbove.js +53 -0
  654. package/plugins/contextMenu/predefinedItems/rowAbove.mjs +35 -0
  655. package/plugins/contextMenu/predefinedItems/rowBelow.js +51 -0
  656. package/plugins/contextMenu/predefinedItems/rowBelow.mjs +33 -0
  657. package/plugins/contextMenu/predefinedItems/separator.js +16 -0
  658. package/plugins/contextMenu/predefinedItems/separator.mjs +10 -0
  659. package/plugins/contextMenu/predefinedItems/undo.js +42 -0
  660. package/plugins/contextMenu/predefinedItems/undo.mjs +24 -0
  661. package/plugins/contextMenu/predefinedItems.js +76 -0
  662. package/plugins/contextMenu/predefinedItems.mjs +57 -0
  663. package/plugins/contextMenu/utils.js +278 -0
  664. package/plugins/contextMenu/utils.mjs +261 -0
  665. package/plugins/copyPaste/clipboardData.js +29 -0
  666. package/plugins/copyPaste/clipboardData.mjs +25 -0
  667. package/plugins/copyPaste/contextMenuItem/copy.js +45 -0
  668. package/plugins/copyPaste/contextMenuItem/copy.mjs +29 -0
  669. package/plugins/copyPaste/contextMenuItem/cut.js +45 -0
  670. package/plugins/copyPaste/contextMenuItem/cut.mjs +29 -0
  671. package/plugins/copyPaste/copyPaste.d.ts +35 -0
  672. package/plugins/copyPaste/copyPaste.js +721 -0
  673. package/plugins/copyPaste/copyPaste.mjs +713 -0
  674. package/plugins/copyPaste/focusableElement.js +210 -0
  675. package/plugins/copyPaste/focusableElement.mjs +204 -0
  676. package/plugins/copyPaste/index.d.ts +1 -0
  677. package/plugins/copyPaste/index.js +8 -0
  678. package/plugins/copyPaste/index.mjs +1 -0
  679. package/plugins/copyPaste/pasteEvent.js +17 -0
  680. package/plugins/copyPaste/pasteEvent.mjs +12 -0
  681. package/plugins/customBorders/contextMenuItem/bottom.js +39 -0
  682. package/plugins/customBorders/contextMenuItem/bottom.mjs +23 -0
  683. package/plugins/customBorders/contextMenuItem/index.js +14 -0
  684. package/plugins/customBorders/contextMenuItem/index.mjs +6 -0
  685. package/plugins/customBorders/contextMenuItem/left.js +40 -0
  686. package/plugins/customBorders/contextMenuItem/left.mjs +24 -0
  687. package/plugins/customBorders/contextMenuItem/noBorders.js +36 -0
  688. package/plugins/customBorders/contextMenuItem/noBorders.mjs +20 -0
  689. package/plugins/customBorders/contextMenuItem/right.js +40 -0
  690. package/plugins/customBorders/contextMenuItem/right.mjs +24 -0
  691. package/plugins/customBorders/contextMenuItem/top.js +39 -0
  692. package/plugins/customBorders/contextMenuItem/top.mjs +23 -0
  693. package/plugins/customBorders/customBorders.d.ts +38 -0
  694. package/plugins/customBorders/customBorders.js +887 -0
  695. package/plugins/customBorders/customBorders.mjs +877 -0
  696. package/plugins/customBorders/index.d.ts +1 -0
  697. package/plugins/customBorders/index.js +8 -0
  698. package/plugins/customBorders/index.mjs +1 -0
  699. package/plugins/customBorders/utils.js +265 -0
  700. package/plugins/customBorders/utils.mjs +249 -0
  701. package/plugins/dragToScroll/dragToScroll.d.ts +15 -0
  702. package/plugins/dragToScroll/dragToScroll.js +335 -0
  703. package/plugins/dragToScroll/dragToScroll.mjs +327 -0
  704. package/plugins/dragToScroll/index.d.ts +1 -0
  705. package/plugins/dragToScroll/index.js +8 -0
  706. package/plugins/dragToScroll/index.mjs +1 -0
  707. package/plugins/dropdownMenu/dropdownMenu.d.ts +24 -0
  708. package/plugins/dropdownMenu/dropdownMenu.js +511 -0
  709. package/plugins/dropdownMenu/dropdownMenu.mjs +504 -0
  710. package/plugins/dropdownMenu/index.d.ts +1 -0
  711. package/plugins/dropdownMenu/index.js +8 -0
  712. package/plugins/dropdownMenu/index.mjs +1 -0
  713. package/plugins/exportFile/dataProvider.js +200 -0
  714. package/plugins/exportFile/dataProvider.mjs +195 -0
  715. package/plugins/exportFile/exportFile.d.ts +12 -0
  716. package/plugins/exportFile/exportFile.js +262 -0
  717. package/plugins/exportFile/exportFile.mjs +250 -0
  718. package/plugins/exportFile/index.d.ts +1 -0
  719. package/plugins/exportFile/index.js +8 -0
  720. package/plugins/exportFile/index.mjs +1 -0
  721. package/plugins/exportFile/typeFactory.js +30 -0
  722. package/plugins/exportFile/typeFactory.mjs +21 -0
  723. package/plugins/exportFile/types/_base.js +78 -0
  724. package/plugins/exportFile/types/_base.mjs +73 -0
  725. package/plugins/exportFile/types/csv.js +131 -0
  726. package/plugins/exportFile/types/csv.mjs +125 -0
  727. package/plugins/filters/component/_base.js +169 -0
  728. package/plugins/filters/component/_base.mjs +163 -0
  729. package/plugins/filters/component/actionBar.js +161 -0
  730. package/plugins/filters/component/actionBar.mjs +151 -0
  731. package/plugins/filters/component/condition.js +325 -0
  732. package/plugins/filters/component/condition.mjs +316 -0
  733. package/plugins/filters/component/operators.js +222 -0
  734. package/plugins/filters/component/operators.mjs +216 -0
  735. package/plugins/filters/component/value.js +278 -0
  736. package/plugins/filters/component/value.mjs +269 -0
  737. package/plugins/filters/condition/beginsWith.js +50 -0
  738. package/plugins/filters/condition/beginsWith.mjs +39 -0
  739. package/plugins/filters/condition/between.js +64 -0
  740. package/plugins/filters/condition/between.mjs +53 -0
  741. package/plugins/filters/condition/byValue.js +48 -0
  742. package/plugins/filters/condition/byValue.mjs +42 -0
  743. package/plugins/filters/condition/contains.js +50 -0
  744. package/plugins/filters/condition/contains.mjs +39 -0
  745. package/plugins/filters/condition/date/after.js +55 -0
  746. package/plugins/filters/condition/date/after.mjs +43 -0
  747. package/plugins/filters/condition/date/before.js +55 -0
  748. package/plugins/filters/condition/date/before.mjs +43 -0
  749. package/plugins/filters/condition/date/today.js +39 -0
  750. package/plugins/filters/condition/date/today.mjs +20 -0
  751. package/plugins/filters/condition/date/tomorrow.js +39 -0
  752. package/plugins/filters/condition/date/tomorrow.mjs +20 -0
  753. package/plugins/filters/condition/date/yesterday.js +39 -0
  754. package/plugins/filters/condition/date/yesterday.mjs +20 -0
  755. package/plugins/filters/condition/empty.js +35 -0
  756. package/plugins/filters/condition/empty.mjs +17 -0
  757. package/plugins/filters/condition/endsWith.js +50 -0
  758. package/plugins/filters/condition/endsWith.mjs +39 -0
  759. package/plugins/filters/condition/equal.js +49 -0
  760. package/plugins/filters/condition/equal.mjs +38 -0
  761. package/plugins/filters/condition/false.js +18 -0
  762. package/plugins/filters/condition/false.mjs +12 -0
  763. package/plugins/filters/condition/greaterThan.js +52 -0
  764. package/plugins/filters/condition/greaterThan.mjs +41 -0
  765. package/plugins/filters/condition/greaterThanOrEqual.js +52 -0
  766. package/plugins/filters/condition/greaterThanOrEqual.mjs +41 -0
  767. package/plugins/filters/condition/lessThan.js +52 -0
  768. package/plugins/filters/condition/lessThan.mjs +41 -0
  769. package/plugins/filters/condition/lessThanOrEqual.js +52 -0
  770. package/plugins/filters/condition/lessThanOrEqual.mjs +41 -0
  771. package/plugins/filters/condition/none.js +33 -0
  772. package/plugins/filters/condition/none.mjs +15 -0
  773. package/plugins/filters/condition/notBetween.js +36 -0
  774. package/plugins/filters/condition/notBetween.mjs +18 -0
  775. package/plugins/filters/condition/notContains.js +36 -0
  776. package/plugins/filters/condition/notContains.mjs +18 -0
  777. package/plugins/filters/condition/notEmpty.js +36 -0
  778. package/plugins/filters/condition/notEmpty.mjs +18 -0
  779. package/plugins/filters/condition/notEqual.js +36 -0
  780. package/plugins/filters/condition/notEqual.mjs +18 -0
  781. package/plugins/filters/condition/true.js +18 -0
  782. package/plugins/filters/condition/true.mjs +12 -0
  783. package/plugins/filters/conditionCollection.d.ts +32 -0
  784. package/plugins/filters/conditionCollection.js +343 -0
  785. package/plugins/filters/conditionCollection.mjs +337 -0
  786. package/plugins/filters/conditionRegisterer.js +61 -0
  787. package/plugins/filters/conditionRegisterer.mjs +53 -0
  788. package/plugins/filters/conditionUpdateObserver.d.ts +10 -0
  789. package/plugins/filters/conditionUpdateObserver.js +248 -0
  790. package/plugins/filters/conditionUpdateObserver.mjs +242 -0
  791. package/plugins/filters/constants.js +103 -0
  792. package/plugins/filters/constants.mjs +69 -0
  793. package/plugins/filters/dataFilter.js +98 -0
  794. package/plugins/filters/dataFilter.mjs +93 -0
  795. package/plugins/filters/filters.d.ts +56 -0
  796. package/plugins/filters/filters.js +1037 -0
  797. package/plugins/filters/filters.mjs +1026 -0
  798. package/plugins/filters/index.d.ts +1 -0
  799. package/plugins/filters/index.js +8 -0
  800. package/plugins/filters/index.mjs +1 -0
  801. package/plugins/filters/logicalOperationRegisterer.js +50 -0
  802. package/plugins/filters/logicalOperationRegisterer.mjs +42 -0
  803. package/plugins/filters/logicalOperations/conjunction.js +36 -0
  804. package/plugins/filters/logicalOperations/conjunction.mjs +18 -0
  805. package/plugins/filters/logicalOperations/disjunction.js +36 -0
  806. package/plugins/filters/logicalOperations/disjunction.mjs +18 -0
  807. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +40 -0
  808. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +22 -0
  809. package/plugins/filters/ui/_base.js +249 -0
  810. package/plugins/filters/ui/_base.mjs +231 -0
  811. package/plugins/filters/ui/input.js +140 -0
  812. package/plugins/filters/ui/input.mjs +134 -0
  813. package/plugins/filters/ui/link.js +86 -0
  814. package/plugins/filters/ui/link.mjs +80 -0
  815. package/plugins/filters/ui/multipleSelect.js +441 -0
  816. package/plugins/filters/ui/multipleSelect.mjs +434 -0
  817. package/plugins/filters/ui/radioInput.js +130 -0
  818. package/plugins/filters/ui/radioInput.mjs +124 -0
  819. package/plugins/filters/ui/select.js +269 -0
  820. package/plugins/filters/ui/select.mjs +261 -0
  821. package/plugins/filters/utils.js +143 -0
  822. package/plugins/filters/utils.mjs +134 -0
  823. package/plugins/formulas/engine/register.js +259 -0
  824. package/plugins/formulas/engine/register.mjs +247 -0
  825. package/plugins/formulas/engine/settings.js +115 -0
  826. package/plugins/formulas/engine/settings.mjs +107 -0
  827. package/plugins/formulas/formulas.d.ts +31 -0
  828. package/plugins/formulas/formulas.js +1229 -0
  829. package/plugins/formulas/formulas.mjs +1221 -0
  830. package/plugins/formulas/index.d.ts +1 -0
  831. package/plugins/formulas/index.js +8 -0
  832. package/plugins/formulas/index.mjs +1 -0
  833. package/plugins/formulas/utils.js +24 -0
  834. package/plugins/formulas/utils.mjs +19 -0
  835. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +76 -0
  836. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +67 -0
  837. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +124 -0
  838. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +115 -0
  839. package/plugins/hiddenColumns/hiddenColumns.d.ts +21 -0
  840. package/plugins/hiddenColumns/hiddenColumns.js +620 -0
  841. package/plugins/hiddenColumns/hiddenColumns.mjs +612 -0
  842. package/plugins/hiddenColumns/index.d.ts +1 -0
  843. package/plugins/hiddenColumns/index.js +8 -0
  844. package/plugins/hiddenColumns/index.mjs +1 -0
  845. package/plugins/hiddenRows/contextMenuItem/hideRow.js +76 -0
  846. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +67 -0
  847. package/plugins/hiddenRows/contextMenuItem/showRow.js +124 -0
  848. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +115 -0
  849. package/plugins/hiddenRows/hiddenRows.d.ts +21 -0
  850. package/plugins/hiddenRows/hiddenRows.js +612 -0
  851. package/plugins/hiddenRows/hiddenRows.mjs +604 -0
  852. package/plugins/hiddenRows/index.d.ts +1 -0
  853. package/plugins/hiddenRows/index.js +8 -0
  854. package/plugins/hiddenRows/index.mjs +1 -0
  855. package/plugins/index.d.ts +111 -0
  856. package/plugins/index.js +115 -0
  857. package/plugins/index.mjs +75 -0
  858. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +58 -0
  859. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +49 -0
  860. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +58 -0
  861. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +49 -0
  862. package/plugins/manualColumnFreeze/index.d.ts +1 -0
  863. package/plugins/manualColumnFreeze/index.js +8 -0
  864. package/plugins/manualColumnFreeze/index.mjs +1 -0
  865. package/plugins/manualColumnFreeze/manualColumnFreeze.d.ts +11 -0
  866. package/plugins/manualColumnFreeze/manualColumnFreeze.js +250 -0
  867. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +242 -0
  868. package/plugins/manualColumnMove/index.d.ts +1 -0
  869. package/plugins/manualColumnMove/index.js +8 -0
  870. package/plugins/manualColumnMove/index.mjs +1 -0
  871. package/plugins/manualColumnMove/manualColumnMove.d.ts +14 -0
  872. package/plugins/manualColumnMove/manualColumnMove.js +775 -0
  873. package/plugins/manualColumnMove/manualColumnMove.mjs +767 -0
  874. package/plugins/manualColumnMove/ui/_base.js +209 -0
  875. package/plugins/manualColumnMove/ui/_base.mjs +204 -0
  876. package/plugins/manualColumnMove/ui/backlight.js +60 -0
  877. package/plugins/manualColumnMove/ui/backlight.mjs +54 -0
  878. package/plugins/manualColumnMove/ui/guideline.js +60 -0
  879. package/plugins/manualColumnMove/ui/guideline.mjs +54 -0
  880. package/plugins/manualColumnResize/index.d.ts +1 -0
  881. package/plugins/manualColumnResize/index.js +8 -0
  882. package/plugins/manualColumnResize/index.mjs +1 -0
  883. package/plugins/manualColumnResize/manualColumnResize.d.ts +30 -0
  884. package/plugins/manualColumnResize/manualColumnResize.js +690 -0
  885. package/plugins/manualColumnResize/manualColumnResize.mjs +680 -0
  886. package/plugins/manualRowMove/index.d.ts +1 -0
  887. package/plugins/manualRowMove/index.js +8 -0
  888. package/plugins/manualRowMove/index.mjs +1 -0
  889. package/plugins/manualRowMove/manualRowMove.d.ts +14 -0
  890. package/plugins/manualRowMove/manualRowMove.js +757 -0
  891. package/plugins/manualRowMove/manualRowMove.mjs +749 -0
  892. package/plugins/manualRowMove/ui/_base.js +196 -0
  893. package/plugins/manualRowMove/ui/_base.mjs +191 -0
  894. package/plugins/manualRowMove/ui/backlight.js +60 -0
  895. package/plugins/manualRowMove/ui/backlight.mjs +54 -0
  896. package/plugins/manualRowMove/ui/guideline.js +60 -0
  897. package/plugins/manualRowMove/ui/guideline.mjs +54 -0
  898. package/plugins/manualRowResize/index.d.ts +1 -0
  899. package/plugins/manualRowResize/index.js +8 -0
  900. package/plugins/manualRowResize/index.mjs +1 -0
  901. package/plugins/manualRowResize/manualRowResize.d.ts +29 -0
  902. package/plugins/manualRowResize/manualRowResize.js +652 -0
  903. package/plugins/manualRowResize/manualRowResize.mjs +642 -0
  904. package/plugins/mergeCells/calculations/autofill.js +464 -0
  905. package/plugins/mergeCells/calculations/autofill.mjs +459 -0
  906. package/plugins/mergeCells/calculations/selection.js +204 -0
  907. package/plugins/mergeCells/calculations/selection.mjs +199 -0
  908. package/plugins/mergeCells/cellCoords.js +347 -0
  909. package/plugins/mergeCells/cellCoords.mjs +342 -0
  910. package/plugins/mergeCells/cellsCollection.js +344 -0
  911. package/plugins/mergeCells/cellsCollection.mjs +338 -0
  912. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +55 -0
  913. package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +38 -0
  914. package/plugins/mergeCells/index.d.ts +1 -0
  915. package/plugins/mergeCells/index.js +8 -0
  916. package/plugins/mergeCells/index.mjs +1 -0
  917. package/plugins/mergeCells/mergeCells.d.ts +22 -0
  918. package/plugins/mergeCells/mergeCells.js +1290 -0
  919. package/plugins/mergeCells/mergeCells.mjs +1282 -0
  920. package/plugins/mergeCells/utils.js +30 -0
  921. package/plugins/mergeCells/utils.mjs +26 -0
  922. package/plugins/multiColumnSorting/domHelpers.js +44 -0
  923. package/plugins/multiColumnSorting/domHelpers.mjs +39 -0
  924. package/plugins/multiColumnSorting/index.d.ts +1 -0
  925. package/plugins/multiColumnSorting/index.js +8 -0
  926. package/plugins/multiColumnSorting/index.mjs +1 -0
  927. package/plugins/multiColumnSorting/multiColumnSorting.d.ts +8 -0
  928. package/plugins/multiColumnSorting/multiColumnSorting.js +336 -0
  929. package/plugins/multiColumnSorting/multiColumnSorting.mjs +329 -0
  930. package/plugins/multiColumnSorting/rootComparator.js +55 -0
  931. package/plugins/multiColumnSorting/rootComparator.mjs +51 -0
  932. package/plugins/multiColumnSorting/utils.js +16 -0
  933. package/plugins/multiColumnSorting/utils.mjs +12 -0
  934. package/plugins/multipleSelectionHandles/index.d.ts +1 -0
  935. package/plugins/multipleSelectionHandles/index.js +8 -0
  936. package/plugins/multipleSelectionHandles/index.mjs +1 -0
  937. package/plugins/multipleSelectionHandles/multipleSelectionHandles.d.ts +21 -0
  938. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +394 -0
  939. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +386 -0
  940. package/plugins/nestedHeaders/index.d.ts +1 -0
  941. package/plugins/nestedHeaders/index.js +8 -0
  942. package/plugins/nestedHeaders/index.mjs +1 -0
  943. package/plugins/nestedHeaders/nestedHeaders.d.ts +17 -0
  944. package/plugins/nestedHeaders/nestedHeaders.js +666 -0
  945. package/plugins/nestedHeaders/nestedHeaders.mjs +658 -0
  946. package/plugins/nestedHeaders/stateManager/headersTree.js +288 -0
  947. package/plugins/nestedHeaders/stateManager/headersTree.mjs +283 -0
  948. package/plugins/nestedHeaders/stateManager/index.js +417 -0
  949. package/plugins/nestedHeaders/stateManager/index.mjs +412 -0
  950. package/plugins/nestedHeaders/stateManager/matrixGenerator.js +102 -0
  951. package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +99 -0
  952. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +98 -0
  953. package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +94 -0
  954. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +95 -0
  955. package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +91 -0
  956. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +54 -0
  957. package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +50 -0
  958. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +40 -0
  959. package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +35 -0
  960. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +55 -0
  961. package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +51 -0
  962. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +61 -0
  963. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +55 -0
  964. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +122 -0
  965. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +119 -0
  966. package/plugins/nestedHeaders/stateManager/sourceSettings.js +250 -0
  967. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +245 -0
  968. package/plugins/nestedHeaders/stateManager/utils.js +75 -0
  969. package/plugins/nestedHeaders/stateManager/utils.mjs +70 -0
  970. package/plugins/nestedHeaders/utils/ghostTable.js +167 -0
  971. package/plugins/nestedHeaders/utils/ghostTable.mjs +162 -0
  972. package/plugins/nestedRows/data/dataManager.js +809 -0
  973. package/plugins/nestedRows/data/dataManager.mjs +804 -0
  974. package/plugins/nestedRows/index.d.ts +1 -0
  975. package/plugins/nestedRows/index.js +8 -0
  976. package/plugins/nestedRows/index.mjs +1 -0
  977. package/plugins/nestedRows/nestedRows.d.ts +12 -0
  978. package/plugins/nestedRows/nestedRows.js +592 -0
  979. package/plugins/nestedRows/nestedRows.mjs +584 -0
  980. package/plugins/nestedRows/ui/_base.js +28 -0
  981. package/plugins/nestedRows/ui/_base.mjs +23 -0
  982. package/plugins/nestedRows/ui/collapsing.js +562 -0
  983. package/plugins/nestedRows/ui/collapsing.mjs +556 -0
  984. package/plugins/nestedRows/ui/contextMenu.js +147 -0
  985. package/plugins/nestedRows/ui/contextMenu.mjs +138 -0
  986. package/plugins/nestedRows/ui/headers.js +157 -0
  987. package/plugins/nestedRows/ui/headers.mjs +151 -0
  988. package/plugins/nestedRows/utils/rowMoveController.js +331 -0
  989. package/plugins/nestedRows/utils/rowMoveController.mjs +327 -0
  990. package/plugins/persistentState/index.d.ts +1 -0
  991. package/plugins/persistentState/index.js +8 -0
  992. package/plugins/persistentState/index.mjs +1 -0
  993. package/plugins/persistentState/persistentState.d.ts +13 -0
  994. package/plugins/persistentState/persistentState.js +207 -0
  995. package/plugins/persistentState/persistentState.mjs +199 -0
  996. package/plugins/persistentState/storage.js +138 -0
  997. package/plugins/persistentState/storage.mjs +133 -0
  998. package/plugins/registry.d.ts +9 -0
  999. package/plugins/registry.js +150 -0
  1000. package/plugins/registry.mjs +146 -0
  1001. package/plugins/search/index.d.ts +1 -0
  1002. package/plugins/search/index.js +8 -0
  1003. package/plugins/search/index.mjs +1 -0
  1004. package/plugins/search/search.d.ts +28 -0
  1005. package/plugins/search/search.js +377 -0
  1006. package/plugins/search/search.mjs +370 -0
  1007. package/plugins/touchScroll/index.d.ts +1 -0
  1008. package/plugins/touchScroll/index.js +8 -0
  1009. package/plugins/touchScroll/index.mjs +1 -0
  1010. package/plugins/touchScroll/touchScroll.d.ts +13 -0
  1011. package/plugins/touchScroll/touchScroll.js +250 -0
  1012. package/plugins/touchScroll/touchScroll.mjs +243 -0
  1013. package/plugins/trimRows/index.d.ts +1 -0
  1014. package/plugins/trimRows/index.js +8 -0
  1015. package/plugins/trimRows/index.mjs +1 -0
  1016. package/plugins/trimRows/trimRows.d.ts +17 -0
  1017. package/plugins/trimRows/trimRows.js +393 -0
  1018. package/plugins/trimRows/trimRows.mjs +386 -0
  1019. package/plugins/undoRedo/index.d.ts +1 -0
  1020. package/plugins/undoRedo/index.js +18 -0
  1021. package/plugins/undoRedo/index.mjs +2 -0
  1022. package/plugins/undoRedo/undoRedo.d.ts +49 -0
  1023. package/plugins/undoRedo/undoRedo.js +935 -0
  1024. package/plugins/undoRedo/undoRedo.mjs +928 -0
  1025. package/registry.d.ts +6 -0
  1026. package/registry.js +35 -0
  1027. package/registry.mjs +26 -0
  1028. package/renderers/autocompleteRenderer/autocompleteRenderer.d.ts +5 -0
  1029. package/renderers/autocompleteRenderer/autocompleteRenderer.js +59 -0
  1030. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +52 -0
  1031. package/renderers/autocompleteRenderer/index.d.ts +1 -0
  1032. package/renderers/autocompleteRenderer/index.js +7 -0
  1033. package/renderers/autocompleteRenderer/index.mjs +1 -0
  1034. package/renderers/base.d.ts +3 -0
  1035. package/renderers/baseRenderer/baseRenderer.d.ts +5 -0
  1036. package/renderers/baseRenderer/baseRenderer.js +46 -0
  1037. package/renderers/baseRenderer/baseRenderer.mjs +39 -0
  1038. package/renderers/baseRenderer/index.d.ts +1 -0
  1039. package/renderers/baseRenderer/index.js +7 -0
  1040. package/renderers/baseRenderer/index.mjs +1 -0
  1041. package/renderers/checkboxRenderer/checkboxRenderer.d.ts +5 -0
  1042. package/renderers/checkboxRenderer/checkboxRenderer.js +398 -0
  1043. package/renderers/checkboxRenderer/checkboxRenderer.mjs +391 -0
  1044. package/renderers/checkboxRenderer/index.d.ts +1 -0
  1045. package/renderers/checkboxRenderer/index.js +7 -0
  1046. package/renderers/checkboxRenderer/index.mjs +1 -0
  1047. package/renderers/htmlRenderer/htmlRenderer.d.ts +5 -0
  1048. package/renderers/htmlRenderer/htmlRenderer.js +25 -0
  1049. package/renderers/htmlRenderer/htmlRenderer.mjs +19 -0
  1050. package/renderers/htmlRenderer/index.d.ts +1 -0
  1051. package/renderers/htmlRenderer/index.js +7 -0
  1052. package/renderers/htmlRenderer/index.mjs +1 -0
  1053. package/renderers/index.d.ts +45 -0
  1054. package/renderers/index.js +48 -0
  1055. package/renderers/index.mjs +24 -0
  1056. package/renderers/numericRenderer/index.d.ts +1 -0
  1057. package/renderers/numericRenderer/index.js +7 -0
  1058. package/renderers/numericRenderer/index.mjs +1 -0
  1059. package/renderers/numericRenderer/numericRenderer.d.ts +5 -0
  1060. package/renderers/numericRenderer/numericRenderer.js +57 -0
  1061. package/renderers/numericRenderer/numericRenderer.mjs +50 -0
  1062. package/renderers/passwordRenderer/index.d.ts +1 -0
  1063. package/renderers/passwordRenderer/index.js +7 -0
  1064. package/renderers/passwordRenderer/index.mjs +1 -0
  1065. package/renderers/passwordRenderer/passwordRenderer.d.ts +5 -0
  1066. package/renderers/passwordRenderer/passwordRenderer.js +32 -0
  1067. package/renderers/passwordRenderer/passwordRenderer.mjs +26 -0
  1068. package/renderers/registry.d.ts +18 -0
  1069. package/renderers/registry.js +48 -0
  1070. package/renderers/registry.mjs +38 -0
  1071. package/renderers/textRenderer/index.d.ts +1 -0
  1072. package/renderers/textRenderer/index.js +7 -0
  1073. package/renderers/textRenderer/index.mjs +1 -0
  1074. package/renderers/textRenderer/textRenderer.d.ts +5 -0
  1075. package/renderers/textRenderer/textRenderer.js +48 -0
  1076. package/renderers/textRenderer/textRenderer.mjs +42 -0
  1077. package/renderers/timeRenderer/index.d.ts +1 -0
  1078. package/renderers/timeRenderer/index.js +7 -0
  1079. package/renderers/timeRenderer/index.mjs +1 -0
  1080. package/renderers/timeRenderer/timeRenderer.d.ts +5 -0
  1081. package/renderers/timeRenderer/timeRenderer.js +26 -0
  1082. package/renderers/timeRenderer/timeRenderer.mjs +20 -0
  1083. package/selection/highlight/constants.js +16 -0
  1084. package/selection/highlight/constants.mjs +6 -0
  1085. package/selection/highlight/highlight.js +330 -0
  1086. package/selection/highlight/highlight.mjs +325 -0
  1087. package/selection/highlight/types/activeHeader.js +38 -0
  1088. package/selection/highlight/types/activeHeader.mjs +32 -0
  1089. package/selection/highlight/types/area.js +49 -0
  1090. package/selection/highlight/types/area.mjs +43 -0
  1091. package/selection/highlight/types/cell.js +46 -0
  1092. package/selection/highlight/types/cell.mjs +40 -0
  1093. package/selection/highlight/types/customSelection.js +41 -0
  1094. package/selection/highlight/types/customSelection.mjs +35 -0
  1095. package/selection/highlight/types/fill.js +41 -0
  1096. package/selection/highlight/types/fill.mjs +35 -0
  1097. package/selection/highlight/types/header.js +49 -0
  1098. package/selection/highlight/types/header.mjs +43 -0
  1099. package/selection/highlight/types/index.js +43 -0
  1100. package/selection/highlight/types/index.mjs +39 -0
  1101. package/selection/highlight/visualSelection.js +277 -0
  1102. package/selection/highlight/visualSelection.mjs +272 -0
  1103. package/selection/index.d.ts +5 -0
  1104. package/selection/index.js +30 -0
  1105. package/selection/index.mjs +6 -0
  1106. package/selection/mouseEventHandler.js +135 -0
  1107. package/selection/mouseEventHandler.mjs +129 -0
  1108. package/selection/range.js +173 -0
  1109. package/selection/range.mjs +168 -0
  1110. package/selection/selection.js +802 -0
  1111. package/selection/selection.mjs +796 -0
  1112. package/selection/transformation.js +169 -0
  1113. package/selection/transformation.mjs +163 -0
  1114. package/selection/utils.js +256 -0
  1115. package/selection/utils.mjs +242 -0
  1116. package/settings.d.ts +210 -0
  1117. package/shortcuts/context.d.ts +20 -0
  1118. package/shortcuts/context.js +241 -0
  1119. package/shortcuts/context.mjs +236 -0
  1120. package/shortcuts/index.d.ts +1 -0
  1121. package/shortcuts/index.js +6 -0
  1122. package/shortcuts/index.mjs +1 -0
  1123. package/shortcuts/keyObserver.js +58 -0
  1124. package/shortcuts/keyObserver.mjs +54 -0
  1125. package/shortcuts/manager.d.ts +10 -0
  1126. package/shortcuts/manager.js +165 -0
  1127. package/shortcuts/manager.mjs +159 -0
  1128. package/shortcuts/recorder.js +165 -0
  1129. package/shortcuts/recorder.mjs +161 -0
  1130. package/shortcuts/utils.js +58 -0
  1131. package/shortcuts/utils.mjs +51 -0
  1132. package/tableView.js +1313 -0
  1133. package/tableView.mjs +1307 -0
  1134. package/translations/changesObservable/observable.js +175 -0
  1135. package/translations/changesObservable/observable.mjs +170 -0
  1136. package/translations/changesObservable/observer.js +100 -0
  1137. package/translations/changesObservable/observer.mjs +94 -0
  1138. package/translations/changesObservable/utils.js +50 -0
  1139. package/translations/changesObservable/utils.mjs +46 -0
  1140. package/translations/index.d.ts +1 -0
  1141. package/translations/index.js +29 -0
  1142. package/translations/index.mjs +4 -0
  1143. package/translations/indexMapper.d.ts +48 -0
  1144. package/translations/indexMapper.js +865 -0
  1145. package/translations/indexMapper.mjs +859 -0
  1146. package/translations/mapCollections/aggregatedCollection.js +139 -0
  1147. package/translations/mapCollections/aggregatedCollection.mjs +134 -0
  1148. package/translations/mapCollections/index.js +18 -0
  1149. package/translations/mapCollections/index.mjs +2 -0
  1150. package/translations/mapCollections/mapCollection.js +164 -0
  1151. package/translations/mapCollections/mapCollection.mjs +156 -0
  1152. package/translations/maps/hidingMap.js +63 -0
  1153. package/translations/maps/hidingMap.mjs +58 -0
  1154. package/translations/maps/index.js +59 -0
  1155. package/translations/maps/index.mjs +29 -0
  1156. package/translations/maps/indexMap.d.ts +10 -0
  1157. package/translations/maps/indexMap.js +203 -0
  1158. package/translations/maps/indexMap.mjs +197 -0
  1159. package/translations/maps/indexesSequence.js +82 -0
  1160. package/translations/maps/indexesSequence.mjs +77 -0
  1161. package/translations/maps/linkedPhysicalIndexToValueMap.js +216 -0
  1162. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +211 -0
  1163. package/translations/maps/physicalIndexToValueMap.js +76 -0
  1164. package/translations/maps/physicalIndexToValueMap.mjs +71 -0
  1165. package/translations/maps/trimmingMap.js +63 -0
  1166. package/translations/maps/trimmingMap.mjs +58 -0
  1167. package/translations/maps/utils/actionsOnIndexes.js +42 -0
  1168. package/translations/maps/utils/actionsOnIndexes.mjs +37 -0
  1169. package/translations/maps/utils/index.js +28 -0
  1170. package/translations/maps/utils/index.mjs +22 -0
  1171. package/translations/maps/utils/indexesSequence.js +52 -0
  1172. package/translations/maps/utils/indexesSequence.mjs +47 -0
  1173. package/translations/maps/utils/physicallyIndexed.js +61 -0
  1174. package/translations/maps/utils/physicallyIndexed.mjs +56 -0
  1175. package/utils/dataStructures/linkedList.js +263 -0
  1176. package/utils/dataStructures/linkedList.mjs +258 -0
  1177. package/utils/dataStructures/priorityMap.js +106 -0
  1178. package/utils/dataStructures/priorityMap.mjs +99 -0
  1179. package/utils/dataStructures/queue.js +83 -0
  1180. package/utils/dataStructures/queue.mjs +78 -0
  1181. package/utils/dataStructures/stack.js +83 -0
  1182. package/utils/dataStructures/stack.mjs +78 -0
  1183. package/utils/dataStructures/tree.js +254 -0
  1184. package/utils/dataStructures/tree.mjs +246 -0
  1185. package/utils/dataStructures/uniqueMap.js +144 -0
  1186. package/utils/dataStructures/uniqueMap.mjs +140 -0
  1187. package/utils/dataStructures/uniqueSet.js +78 -0
  1188. package/utils/dataStructures/uniqueSet.mjs +74 -0
  1189. package/utils/ghostTable.js +536 -0
  1190. package/utils/ghostTable.mjs +531 -0
  1191. package/utils/interval.js +134 -0
  1192. package/utils/interval.mjs +129 -0
  1193. package/utils/parseTable.d.ts +5 -0
  1194. package/utils/parseTable.js +305 -0
  1195. package/utils/parseTable.mjs +299 -0
  1196. package/utils/rootInstance.js +48 -0
  1197. package/utils/rootInstance.mjs +38 -0
  1198. package/utils/samplesGenerator.js +210 -0
  1199. package/utils/samplesGenerator.mjs +205 -0
  1200. package/utils/staticRegister.js +92 -0
  1201. package/utils/staticRegister.mjs +86 -0
  1202. package/validators/autocompleteValidator/autocompleteValidator.d.ts +5 -0
  1203. package/validators/autocompleteValidator/autocompleteValidator.js +56 -0
  1204. package/validators/autocompleteValidator/autocompleteValidator.mjs +50 -0
  1205. package/validators/autocompleteValidator/index.d.ts +1 -0
  1206. package/validators/autocompleteValidator/index.js +7 -0
  1207. package/validators/autocompleteValidator/index.mjs +1 -0
  1208. package/validators/base.d.ts +6 -0
  1209. package/validators/dateValidator/dateValidator.d.ts +5 -0
  1210. package/validators/dateValidator/dateValidator.js +77 -0
  1211. package/validators/dateValidator/dateValidator.mjs +69 -0
  1212. package/validators/dateValidator/index.d.ts +1 -0
  1213. package/validators/dateValidator/index.js +8 -0
  1214. package/validators/dateValidator/index.mjs +1 -0
  1215. package/validators/index.d.ts +33 -0
  1216. package/validators/index.js +32 -0
  1217. package/validators/index.mjs +16 -0
  1218. package/validators/numericValidator/index.d.ts +1 -0
  1219. package/validators/numericValidator/index.js +7 -0
  1220. package/validators/numericValidator/index.mjs +1 -0
  1221. package/validators/numericValidator/numericValidator.d.ts +5 -0
  1222. package/validators/numericValidator/numericValidator.js +30 -0
  1223. package/validators/numericValidator/numericValidator.mjs +24 -0
  1224. package/validators/registry.d.ts +18 -0
  1225. package/validators/registry.js +48 -0
  1226. package/validators/registry.mjs +38 -0
  1227. package/validators/timeValidator/index.d.ts +1 -0
  1228. package/validators/timeValidator/index.js +7 -0
  1229. package/validators/timeValidator/index.mjs +1 -0
  1230. package/validators/timeValidator/timeValidator.d.ts +5 -0
  1231. package/validators/timeValidator/timeValidator.js +66 -0
  1232. package/validators/timeValidator/timeValidator.mjs +60 -0
@@ -0,0 +1,1003 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
6
+ require("core-js/modules/web.dom-collections.for-each.js");
7
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
8
+ exports.__esModule = true;
9
+ exports.default = void 0;
10
+ require("core-js/modules/es.function.name.js");
11
+ require("core-js/modules/web.timers.js");
12
+ require("core-js/modules/es.object.keys.js");
13
+ require("core-js/modules/es.regexp.exec.js");
14
+ require("core-js/modules/es.regexp.constructor.js");
15
+ require("core-js/modules/es.regexp.to-string.js");
16
+ require("core-js/modules/es.object.to-string.js");
17
+ require("core-js/modules/es.string.replace.js");
18
+ require("core-js/modules/es.array.concat.js");
19
+ var _cursor = _interopRequireDefault(require("./cursor"));
20
+ var _predefinedItems = require("./predefinedItems");
21
+ var _utils = require("./utils");
22
+ var _core = _interopRequireDefault(require("../../core"));
23
+ var _eventManager = _interopRequireDefault(require("../../eventManager"));
24
+ var _array = require("../../helpers/array");
25
+ var _browser = require("../../helpers/browser");
26
+ var _element = require("../../helpers/dom/element");
27
+ var _event = require("../../helpers/dom/event");
28
+ var _function = require("../../helpers/function");
29
+ var _mixed = require("../../helpers/mixed");
30
+ var _object = require("../../helpers/object");
31
+ var _localHooks = _interopRequireDefault(require("../../mixins/localHooks"));
32
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
34
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
35
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
36
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
37
+ 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); } }
38
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
39
+ var MIN_WIDTH = 215;
40
+ var SHORTCUTS_CONTEXT = 'menu';
41
+ var SHORTCUTS_GROUP = SHORTCUTS_CONTEXT;
42
+
43
+ /**
44
+ * @typedef MenuOptions
45
+ * @property {Menu} [parent=null] Instance of {@link Menu}.
46
+ * @property {string} [name=null] Name of the menu.
47
+ * @property {string} [className=''] Custom class name.
48
+ * @property {boolean} [keepInViewport=true] Determine if should be kept in viewport.
49
+ * @property {boolean} [standalone] Enabling closing menu when clicked element is not belongs to menu itself.
50
+ * @property {number} [minWidth=MIN_WIDTH] The minimum width.
51
+ * @property {HTMLElement} [container] The container.
52
+ */
53
+
54
+ /**
55
+ * @private
56
+ * @class Menu
57
+ */
58
+ var Menu = /*#__PURE__*/function () {
59
+ /**
60
+ * @param {Core} hotInstance Handsontable instance.
61
+ * @param {MenuOptions} [options] Menu options.
62
+ */
63
+ function Menu(hotInstance, options) {
64
+ _classCallCheck(this, Menu);
65
+ this.hot = hotInstance;
66
+ this.options = options || {
67
+ parent: null,
68
+ name: null,
69
+ className: '',
70
+ keepInViewport: true,
71
+ standalone: false,
72
+ minWidth: MIN_WIDTH,
73
+ container: this.hot.rootDocument.documentElement
74
+ };
75
+ this.eventManager = new _eventManager.default(this);
76
+ this.container = this.createContainer(this.options.name);
77
+ this.hotMenu = null;
78
+ this.hotSubMenus = {};
79
+ this.parentMenu = this.options.parent || null;
80
+ this.menuItems = null;
81
+ this.origOutsideClickDeselects = null;
82
+ this.keyEvent = false;
83
+ this.offset = {
84
+ above: 0,
85
+ below: 0,
86
+ left: 0,
87
+ right: 0
88
+ };
89
+ this._afterScrollCallback = null;
90
+ this.registerEvents();
91
+ }
92
+
93
+ /**
94
+ * Register event listeners.
95
+ *
96
+ * @private
97
+ */
98
+ _createClass(Menu, [{
99
+ key: "registerEvents",
100
+ value: function registerEvents() {
101
+ var _this = this;
102
+ var frame = this.hot.rootWindow;
103
+ while (frame) {
104
+ this.eventManager.addEventListener(frame.document, 'mousedown', function (event) {
105
+ return _this.onDocumentMouseDown(event);
106
+ });
107
+ this.eventManager.addEventListener(frame.document, 'contextmenu', function (event) {
108
+ return _this.onDocumentContextMenu(event);
109
+ });
110
+ frame = (0, _element.getParentWindow)(frame);
111
+ }
112
+ }
113
+
114
+ /**
115
+ * Set array of objects which defines menu items.
116
+ *
117
+ * @param {Array} menuItems Menu items to display.
118
+ */
119
+ }, {
120
+ key: "setMenuItems",
121
+ value: function setMenuItems(menuItems) {
122
+ this.menuItems = menuItems;
123
+ }
124
+
125
+ /**
126
+ * Returns currently selected menu item. Returns `null` if no item was selected.
127
+ *
128
+ * @returns {object|null}
129
+ */
130
+ }, {
131
+ key: "getSelectedItem",
132
+ value: function getSelectedItem() {
133
+ return this.hasSelectedItem() ? this.hotMenu.getSourceDataAtRow(this.hotMenu.getSelectedLast()[0]) : null;
134
+ }
135
+
136
+ /**
137
+ * Checks if the menu has selected (highlighted) any item from the menu list.
138
+ *
139
+ * @returns {boolean}
140
+ */
141
+ }, {
142
+ key: "hasSelectedItem",
143
+ value: function hasSelectedItem() {
144
+ return Array.isArray(this.hotMenu.getSelectedLast());
145
+ }
146
+
147
+ /**
148
+ * Set offset menu position for specified area (`above`, `below`, `left` or `right`).
149
+ *
150
+ * @param {string} area Specified area name (`above`, `below`, `left` or `right`).
151
+ * @param {number} offset Offset value.
152
+ */
153
+ }, {
154
+ key: "setOffset",
155
+ value: function setOffset(area) {
156
+ var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
157
+ this.offset[area] = offset;
158
+ }
159
+
160
+ /**
161
+ * Check if menu is using as sub-menu.
162
+ *
163
+ * @returns {boolean}
164
+ */
165
+ }, {
166
+ key: "isSubMenu",
167
+ value: function isSubMenu() {
168
+ return this.parentMenu !== null;
169
+ }
170
+
171
+ /**
172
+ * Open menu.
173
+ *
174
+ * @fires Hooks#beforeContextMenuShow
175
+ * @fires Hooks#afterContextMenuShow
176
+ */
177
+ }, {
178
+ key: "open",
179
+ value: function open() {
180
+ var _this2 = this;
181
+ this.runLocalHooks('beforeOpen');
182
+ this.container.removeAttribute('style');
183
+ this.container.style.display = 'block';
184
+ var delayedOpenSubMenu = (0, _function.debounce)(function (row) {
185
+ return _this2.openSubMenu(row);
186
+ }, 300);
187
+ var minWidthOfMenu = this.options.minWidth || MIN_WIDTH;
188
+ var noItemsDefined = false;
189
+ var filteredItems = (0, _array.arrayFilter)(this.menuItems, function (item) {
190
+ if (item.key === _predefinedItems.NO_ITEMS) {
191
+ noItemsDefined = true;
192
+ }
193
+ return (0, _utils.isItemHidden)(item, _this2.hot);
194
+ });
195
+ if (filteredItems.length < 1 && !noItemsDefined) {
196
+ filteredItems.push((0, _predefinedItems.predefinedItems)()[_predefinedItems.NO_ITEMS]);
197
+ } else if (filteredItems.length === 0) {
198
+ return;
199
+ }
200
+ filteredItems = (0, _utils.filterSeparators)(filteredItems, _predefinedItems.SEPARATOR);
201
+ var shouldAutoCloseMenu = false;
202
+ var settings = {
203
+ data: filteredItems,
204
+ colHeaders: false,
205
+ autoColumnSize: true,
206
+ autoWrapRow: false,
207
+ modifyColWidth: function modifyColWidth(width) {
208
+ if ((0, _mixed.isDefined)(width) && width < minWidthOfMenu) {
209
+ return minWidthOfMenu;
210
+ }
211
+ return width;
212
+ },
213
+ autoRowSize: false,
214
+ readOnly: true,
215
+ editor: false,
216
+ copyPaste: false,
217
+ maxCols: 1,
218
+ columns: [{
219
+ data: 'name',
220
+ renderer: function renderer(hot, TD, row, col, prop, value) {
221
+ return _this2.menuItemRenderer(hot, TD, row, col, prop, value);
222
+ }
223
+ }],
224
+ renderAllRows: true,
225
+ fragmentSelection: false,
226
+ outsideClickDeselects: false,
227
+ disableVisualSelection: 'area',
228
+ layoutDirection: this.hot.isRtl() ? 'rtl' : 'ltr',
229
+ afterOnCellMouseOver: function afterOnCellMouseOver(event, coords) {
230
+ if (_this2.isAllSubMenusClosed()) {
231
+ delayedOpenSubMenu(coords.row);
232
+ } else {
233
+ _this2.openSubMenu(coords.row);
234
+ }
235
+ },
236
+ rowHeights: function rowHeights(row) {
237
+ return filteredItems[row].name === _predefinedItems.SEPARATOR ? 1 : 23;
238
+ },
239
+ afterOnCellContextMenu: function afterOnCellContextMenu(event) {
240
+ event.preventDefault();
241
+
242
+ // On the Windows platform, the "contextmenu" is triggered after the "mouseup" so that's
243
+ // why the closing menu is here. (#6507#issuecomment-582392301).
244
+ if ((0, _browser.isWindowsOS)() && shouldAutoCloseMenu && _this2.hasSelectedItem()) {
245
+ _this2.close(true);
246
+ }
247
+ },
248
+ beforeOnCellMouseUp: function beforeOnCellMouseUp(event) {
249
+ if (_this2.hasSelectedItem()) {
250
+ shouldAutoCloseMenu = !_this2.isCommandPassive(_this2.getSelectedItem());
251
+ _this2.executeCommand(event);
252
+ }
253
+ },
254
+ afterOnCellMouseUp: function afterOnCellMouseUp(event) {
255
+ // If the code runs on the other platform than Windows, the "mouseup" is triggered
256
+ // after the "contextmenu". So then "mouseup" closes the menu. Otherwise, the closing
257
+ // menu responsibility is forwarded to "afterOnCellContextMenu" callback (#6507#issuecomment-582392301).
258
+ if ((!(0, _browser.isWindowsOS)() || !(0, _event.isRightClick)(event)) && shouldAutoCloseMenu && _this2.hasSelectedItem()) {
259
+ // The timeout is necessary only for mobile devices. For desktop, the click event that is fired
260
+ // right after the mouseup event gets the event element target the same as the mouseup event.
261
+ // For mobile devices, the click event is triggered with native delay (~300ms), so when the mouseup
262
+ // event hides the tapped element, the click event grabs the element below. As a result, the filter
263
+ // by condition menu is closed and immediately open on tapping the "None" item.
264
+ if ((0, _browser.isMobileBrowser)() || (0, _browser.isIpadOS)()) {
265
+ setTimeout(function () {
266
+ return _this2.close(true);
267
+ }, 325);
268
+ } else {
269
+ _this2.close(true);
270
+ }
271
+ }
272
+ },
273
+ afterUnlisten: function afterUnlisten() {
274
+ // Restore menu focus, fix for `this.instance.unlisten();` call in the tableView.js@260 file.
275
+ // This prevents losing table responsiveness for keyboard events when filter select menu is closed (#6497).
276
+ if (!_this2.hasSelectedItem() && _this2.isOpened()) {
277
+ _this2.hotMenu.listen();
278
+ }
279
+ }
280
+ };
281
+ this.origOutsideClickDeselects = this.hot.getSettings().outsideClickDeselects;
282
+ this.hot.getSettings().outsideClickDeselects = false;
283
+ this.hotMenu = new _core.default(this.container, settings);
284
+ this.hotMenu.addHook('afterInit', function () {
285
+ return _this2.onAfterInit();
286
+ });
287
+ this.hotMenu.addHook('afterSelection', function () {
288
+ return _this2.onAfterSelection.apply(_this2, arguments);
289
+ });
290
+ this.hotMenu.init();
291
+ this.hotMenu.listen();
292
+ var shortcutManager = this.hotMenu.getShortcutManager();
293
+ var menuContext = shortcutManager.addContext(SHORTCUTS_GROUP);
294
+ var config = {
295
+ group: SHORTCUTS_CONTEXT
296
+ };
297
+ var menuContextConfig = _objectSpread(_objectSpread({}, config), {}, {
298
+ runOnlyIf: function runOnlyIf(event) {
299
+ return (0, _element.isInput)(event.target) === false || _this2.container.contains(event.target) === false;
300
+ }
301
+ });
302
+
303
+ // Default shortcuts for Handsontable should not be handled. Changing context will help with that.
304
+ shortcutManager.setActiveContextName('menu');
305
+ menuContext.addShortcuts([{
306
+ keys: [['Escape']],
307
+ callback: function callback() {
308
+ _this2.keyEvent = true;
309
+ _this2.close();
310
+ _this2.keyEvent = false;
311
+ }
312
+ }, {
313
+ keys: [['ArrowDown']],
314
+ callback: function callback() {
315
+ var selection = _this2.hotMenu.getSelectedLast();
316
+ _this2.keyEvent = true;
317
+ if (selection) {
318
+ _this2.selectNextCell(selection[0], selection[1]);
319
+ } else {
320
+ _this2.selectFirstCell();
321
+ }
322
+ _this2.keyEvent = false;
323
+ }
324
+ }, {
325
+ keys: [['ArrowUp']],
326
+ callback: function callback() {
327
+ var selection = _this2.hotMenu.getSelectedLast();
328
+ _this2.keyEvent = true;
329
+ if (selection) {
330
+ _this2.selectPrevCell(selection[0], selection[1]);
331
+ } else {
332
+ _this2.selectLastCell();
333
+ }
334
+ _this2.keyEvent = false;
335
+ }
336
+ }, {
337
+ keys: [['ArrowRight']],
338
+ callback: function callback() {
339
+ var selection = _this2.hotMenu.getSelectedLast();
340
+ _this2.keyEvent = true;
341
+ if (selection) {
342
+ var menu = _this2.openSubMenu(selection[0]);
343
+ if (menu) {
344
+ menu.selectFirstCell();
345
+ }
346
+ }
347
+ _this2.keyEvent = false;
348
+ }
349
+ }, {
350
+ keys: [['ArrowLeft']],
351
+ callback: function callback() {
352
+ var selection = _this2.hotMenu.getSelectedLast();
353
+ _this2.keyEvent = true;
354
+ if (selection && _this2.isSubMenu()) {
355
+ _this2.close();
356
+ if (_this2.parentMenu) {
357
+ _this2.parentMenu.hotMenu.listen();
358
+ }
359
+ }
360
+ _this2.keyEvent = false;
361
+ }
362
+ }, {
363
+ keys: [['Enter']],
364
+ callback: function callback(event) {
365
+ var selection = _this2.hotMenu.getSelectedLast();
366
+ _this2.keyEvent = true;
367
+ if (!_this2.hotMenu.getSourceDataAtRow(selection[0]).submenu) {
368
+ _this2.executeCommand(event);
369
+ _this2.close(true);
370
+ }
371
+ _this2.keyEvent = false;
372
+ }
373
+ }, {
374
+ keys: [['PageUp']],
375
+ callback: function callback() {
376
+ var selection = _this2.hotMenu.getSelectedLast();
377
+ _this2.keyEvent = true;
378
+ if (selection) {
379
+ _this2.hotMenu.selection.transformStart(-_this2.hotMenu.countVisibleRows(), 0);
380
+ } else {
381
+ _this2.selectFirstCell();
382
+ }
383
+ _this2.keyEvent = false;
384
+ }
385
+ }, {
386
+ keys: [['PageDown']],
387
+ callback: function callback() {
388
+ var selection = _this2.hotMenu.getSelectedLast();
389
+ _this2.keyEvent = true;
390
+ if (selection) {
391
+ _this2.hotMenu.selection.transformStart(_this2.hotMenu.countVisibleRows(), 0);
392
+ } else {
393
+ _this2.selectLastCell();
394
+ }
395
+ _this2.keyEvent = false;
396
+ }
397
+ }], menuContextConfig);
398
+ this.blockMainTableCallbacks();
399
+ this.runLocalHooks('afterOpen');
400
+ }
401
+
402
+ /**
403
+ * Close menu.
404
+ *
405
+ * @param {boolean} [closeParent=false] If `true` try to close parent menu if exists.
406
+ */
407
+ }, {
408
+ key: "close",
409
+ value: function close() {
410
+ var closeParent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
411
+ if (!this.isOpened()) {
412
+ return;
413
+ }
414
+ if (closeParent && this.parentMenu) {
415
+ this.parentMenu.close();
416
+ } else {
417
+ this.closeAllSubMenus();
418
+ this.container.style.display = 'none';
419
+ this.releaseMainTableCallbacks();
420
+ this.hotMenu.destroy();
421
+ this.hotMenu = null;
422
+ this.hot.getSettings().outsideClickDeselects = this.origOutsideClickDeselects;
423
+ this.runLocalHooks('afterClose');
424
+ if (this.parentMenu) {
425
+ this.parentMenu.hotMenu.listen();
426
+ }
427
+ }
428
+ }
429
+
430
+ /**
431
+ * Open sub menu at the provided row index.
432
+ *
433
+ * @param {number} row Row index.
434
+ * @returns {Menu|boolean} Returns created menu or `false` if no one menu was created.
435
+ */
436
+ }, {
437
+ key: "openSubMenu",
438
+ value: function openSubMenu(row) {
439
+ if (!this.hotMenu) {
440
+ return false;
441
+ }
442
+ var cell = this.hotMenu.getCell(row, 0);
443
+ this.closeAllSubMenus();
444
+ if (!cell || !(0, _utils.hasSubMenu)(cell)) {
445
+ return false;
446
+ }
447
+ var dataItem = this.hotMenu.getSourceDataAtRow(row);
448
+ var subMenu = new Menu(this.hot, {
449
+ parent: this,
450
+ name: dataItem.name,
451
+ className: this.options.className,
452
+ keepInViewport: true,
453
+ container: this.options.container
454
+ });
455
+ subMenu.setMenuItems(dataItem.submenu.items);
456
+ subMenu.open();
457
+ subMenu.setPosition(cell.getBoundingClientRect());
458
+ this.hotSubMenus[dataItem.key] = subMenu;
459
+ return subMenu;
460
+ }
461
+
462
+ /**
463
+ * Close sub menu at row index.
464
+ *
465
+ * @param {number} row Row index.
466
+ */
467
+ }, {
468
+ key: "closeSubMenu",
469
+ value: function closeSubMenu(row) {
470
+ var dataItem = this.hotMenu.getSourceDataAtRow(row);
471
+ var menus = this.hotSubMenus[dataItem.key];
472
+ if (menus) {
473
+ menus.destroy();
474
+ delete this.hotSubMenus[dataItem.key];
475
+ }
476
+ }
477
+
478
+ /**
479
+ * Close all opened sub menus.
480
+ */
481
+ }, {
482
+ key: "closeAllSubMenus",
483
+ value: function closeAllSubMenus() {
484
+ var _this3 = this;
485
+ (0, _array.arrayEach)(this.hotMenu.getData(), function (value, row) {
486
+ return _this3.closeSubMenu(row);
487
+ });
488
+ }
489
+
490
+ /**
491
+ * Checks if all created and opened sub menus are closed.
492
+ *
493
+ * @returns {boolean}
494
+ */
495
+ }, {
496
+ key: "isAllSubMenusClosed",
497
+ value: function isAllSubMenusClosed() {
498
+ return Object.keys(this.hotSubMenus).length === 0;
499
+ }
500
+
501
+ /**
502
+ * Destroy instance.
503
+ */
504
+ }, {
505
+ key: "destroy",
506
+ value: function destroy() {
507
+ var menuContainerParentElement = this.container.parentNode;
508
+ this.clearLocalHooks();
509
+ this.close();
510
+ this.parentMenu = null;
511
+ this.eventManager.destroy();
512
+ if (menuContainerParentElement) {
513
+ menuContainerParentElement.removeChild(this.container);
514
+ }
515
+ }
516
+
517
+ /**
518
+ * Checks if menu was opened.
519
+ *
520
+ * @returns {boolean} Returns `true` if menu was opened.
521
+ */
522
+ }, {
523
+ key: "isOpened",
524
+ value: function isOpened() {
525
+ return this.hotMenu !== null;
526
+ }
527
+
528
+ /**
529
+ * Execute menu command.
530
+ *
531
+ * The `executeCommand()` method works only for selected cells.
532
+ *
533
+ * When no cells are selected, `executeCommand()` doesn't do anything.
534
+ *
535
+ * @param {Event} [event] The mouse event object.
536
+ */
537
+ }, {
538
+ key: "executeCommand",
539
+ value: function executeCommand(event) {
540
+ if (!this.isOpened() || !this.hasSelectedItem()) {
541
+ return;
542
+ }
543
+ var selectedItem = this.getSelectedItem();
544
+ this.runLocalHooks('select', selectedItem, event);
545
+ if (this.isCommandPassive(selectedItem)) {
546
+ return;
547
+ }
548
+ var selRanges = this.hot.getSelectedRange();
549
+ var normalizedSelection = selRanges ? (0, _utils.normalizeSelection)(selRanges) : [];
550
+ this.runLocalHooks('executeCommand', selectedItem.key, normalizedSelection, event);
551
+ if (this.isSubMenu()) {
552
+ this.parentMenu.runLocalHooks('executeCommand', selectedItem.key, normalizedSelection, event);
553
+ }
554
+ }
555
+
556
+ /**
557
+ * Checks if the passed command is passive or not. The command is passive when it's marked as
558
+ * disabled, the descriptor object contains `isCommand` property set to `false`, command
559
+ * is a separator, or the item is recognized as submenu. For passive items the menu is not
560
+ * closed automatically after the user trigger the command through the UI.
561
+ *
562
+ * @param {object} commandDescriptor Selected menu item from the menu data source.
563
+ * @returns {boolean}
564
+ */
565
+ }, {
566
+ key: "isCommandPassive",
567
+ value: function isCommandPassive(commandDescriptor) {
568
+ var isCommand = commandDescriptor.isCommand,
569
+ commandName = commandDescriptor.name,
570
+ disabled = commandDescriptor.disabled,
571
+ submenu = commandDescriptor.submenu;
572
+ var isItemDisabled = disabled === true || typeof disabled === 'function' && disabled.call(this.hot) === true;
573
+ return isCommand === false || commandName === _predefinedItems.SEPARATOR || isItemDisabled === true || submenu;
574
+ }
575
+
576
+ /**
577
+ * Set menu position based on dom event or based on literal object.
578
+ *
579
+ * @param {Event|object} coords Event or literal Object with coordinates.
580
+ */
581
+ }, {
582
+ key: "setPosition",
583
+ value: function setPosition(coords) {
584
+ var cursor = new _cursor.default(coords, this.container.ownerDocument.defaultView);
585
+ if (this.options.keepInViewport) {
586
+ if (cursor.fitsBelow(this.container)) {
587
+ this.setPositionBelowCursor(cursor);
588
+ } else if (cursor.fitsAbove(this.container)) {
589
+ this.setPositionAboveCursor(cursor);
590
+ } else {
591
+ this.setPositionBelowCursor(cursor);
592
+ }
593
+ if (this.hot.isLtr()) {
594
+ this.setHorizontalPositionForLtr(cursor);
595
+ } else {
596
+ this.setHorizontalPositionForRtl(cursor);
597
+ }
598
+ } else {
599
+ this.setPositionBelowCursor(cursor);
600
+ this.setPositionOnRightOfCursor(cursor);
601
+ }
602
+ }
603
+
604
+ /**
605
+ * Set menu horizontal position for RTL mode.
606
+ *
607
+ * @param {Cursor} cursor `Cursor` object.
608
+ */
609
+ }, {
610
+ key: "setHorizontalPositionForRtl",
611
+ value: function setHorizontalPositionForRtl(cursor) {
612
+ if (cursor.fitsOnLeft(this.container)) {
613
+ this.setPositionOnLeftOfCursor(cursor);
614
+ } else {
615
+ this.setPositionOnRightOfCursor(cursor);
616
+ }
617
+ }
618
+
619
+ /**
620
+ * Set menu horizontal position for LTR mode.
621
+ *
622
+ * @param {Cursor} cursor `Cursor` object.
623
+ */
624
+ }, {
625
+ key: "setHorizontalPositionForLtr",
626
+ value: function setHorizontalPositionForLtr(cursor) {
627
+ if (cursor.fitsOnRight(this.container)) {
628
+ this.setPositionOnRightOfCursor(cursor);
629
+ } else {
630
+ this.setPositionOnLeftOfCursor(cursor);
631
+ }
632
+ }
633
+
634
+ /**
635
+ * Set menu position above cursor object.
636
+ *
637
+ * @param {Cursor} cursor `Cursor` object.
638
+ */
639
+ }, {
640
+ key: "setPositionAboveCursor",
641
+ value: function setPositionAboveCursor(cursor) {
642
+ var top = this.offset.above + cursor.top - this.container.offsetHeight;
643
+ if (this.isSubMenu()) {
644
+ top = cursor.top + cursor.cellHeight - this.container.offsetHeight + 3;
645
+ }
646
+ this.container.style.top = "".concat(top, "px");
647
+ }
648
+
649
+ /**
650
+ * Set menu position below cursor object.
651
+ *
652
+ * @param {Cursor} cursor `Cursor` object.
653
+ */
654
+ }, {
655
+ key: "setPositionBelowCursor",
656
+ value: function setPositionBelowCursor(cursor) {
657
+ var top = this.offset.below + cursor.top + 1;
658
+ if (this.isSubMenu()) {
659
+ top = cursor.top - 1;
660
+ }
661
+ this.container.style.top = "".concat(top, "px");
662
+ }
663
+
664
+ /**
665
+ * Set menu position on the right of cursor object.
666
+ *
667
+ * @param {Cursor} cursor `Cursor` object.
668
+ */
669
+ }, {
670
+ key: "setPositionOnRightOfCursor",
671
+ value: function setPositionOnRightOfCursor(cursor) {
672
+ var left = cursor.left;
673
+ if (this.isSubMenu()) {
674
+ var _this$parentMenu$cont = this.parentMenu.container.getBoundingClientRect(),
675
+ parentMenuRight = _this$parentMenu$cont.right;
676
+
677
+ // move the sub menu by the width of the parent's border (usually by 1-2 pixels)
678
+ left += cursor.cellWidth + parentMenuRight - (cursor.left + cursor.cellWidth);
679
+ } else {
680
+ left += this.offset.right;
681
+ }
682
+ this.container.style.left = "".concat(left, "px");
683
+ }
684
+
685
+ /**
686
+ * Set menu position on the left of cursor object.
687
+ *
688
+ * @param {Cursor} cursor `Cursor` object.
689
+ */
690
+ }, {
691
+ key: "setPositionOnLeftOfCursor",
692
+ value: function setPositionOnLeftOfCursor(cursor) {
693
+ var left = this.offset.left + cursor.left - this.container.offsetWidth;
694
+ if (this.isSubMenu()) {
695
+ var _this$parentMenu$cont2 = this.parentMenu.container.getBoundingClientRect(),
696
+ parentMenuLeft = _this$parentMenu$cont2.left;
697
+
698
+ // move the sub menu by the width of the parent's border (usually by 1-2 pixels)
699
+ left -= cursor.left - parentMenuLeft;
700
+ }
701
+ this.container.style.left = "".concat(left, "px");
702
+ }
703
+
704
+ /**
705
+ * Select first cell in opened menu.
706
+ */
707
+ }, {
708
+ key: "selectFirstCell",
709
+ value: function selectFirstCell() {
710
+ var cell = this.hotMenu.getCell(0, 0);
711
+ if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
712
+ this.selectNextCell(0, 0);
713
+ } else {
714
+ this.hotMenu.selectCell(0, 0);
715
+ }
716
+ }
717
+
718
+ /**
719
+ * Select last cell in opened menu.
720
+ */
721
+ }, {
722
+ key: "selectLastCell",
723
+ value: function selectLastCell() {
724
+ var lastRow = this.hotMenu.countRows() - 1;
725
+ var cell = this.hotMenu.getCell(lastRow, 0);
726
+ if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
727
+ this.selectPrevCell(lastRow, 0);
728
+ } else {
729
+ // disable default "scroll-to-cell" option and instead of that...
730
+ this.hotMenu.selectCell(lastRow, 0, undefined, undefined, false);
731
+ // ...scroll to the cell with "snap to the bottom" option
732
+ this.hotMenu.scrollViewportTo(lastRow, 0, true, false);
733
+ }
734
+ }
735
+
736
+ /**
737
+ * Select next cell in opened menu.
738
+ *
739
+ * @param {number} row Row index.
740
+ * @param {number} col Column index.
741
+ */
742
+ }, {
743
+ key: "selectNextCell",
744
+ value: function selectNextCell(row, col) {
745
+ var nextRow = row + 1;
746
+ var cell = nextRow < this.hotMenu.countRows() ? this.hotMenu.getCell(nextRow, col) : null;
747
+ if (!cell) {
748
+ return;
749
+ }
750
+ if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
751
+ this.selectNextCell(nextRow, col);
752
+ } else {
753
+ this.hotMenu.selectCell(nextRow, col);
754
+ }
755
+ }
756
+
757
+ /**
758
+ * Select previous cell in opened menu.
759
+ *
760
+ * @param {number} row Row index.
761
+ * @param {number} col Column index.
762
+ */
763
+ }, {
764
+ key: "selectPrevCell",
765
+ value: function selectPrevCell(row, col) {
766
+ var prevRow = row - 1;
767
+ var cell = prevRow >= 0 ? this.hotMenu.getCell(prevRow, col) : null;
768
+ if (!cell) {
769
+ return;
770
+ }
771
+ if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
772
+ this.selectPrevCell(prevRow, col);
773
+ } else {
774
+ this.hotMenu.selectCell(prevRow, col);
775
+ }
776
+ }
777
+
778
+ /**
779
+ * Menu item renderer.
780
+ *
781
+ * @private
782
+ * @param {Core} hot The Handsontable instance.
783
+ * @param {HTMLCellElement} TD The rendered cell element.
784
+ * @param {number} row The visual index.
785
+ * @param {number} col The visual index.
786
+ * @param {string} prop The column property if used.
787
+ * @param {string} value The cell value.
788
+ */
789
+ }, {
790
+ key: "menuItemRenderer",
791
+ value: function menuItemRenderer(hot, TD, row, col, prop, value) {
792
+ var _this4 = this;
793
+ var item = hot.getSourceDataAtRow(row);
794
+ var wrapper = this.hot.rootDocument.createElement('div');
795
+ var isSubMenu = function isSubMenu(itemToTest) {
796
+ return (0, _object.hasOwnProperty)(itemToTest, 'submenu');
797
+ };
798
+ var itemIsSeparator = function itemIsSeparator(itemToTest) {
799
+ return new RegExp(_predefinedItems.SEPARATOR, 'i').test(itemToTest.name);
800
+ };
801
+ var itemIsDisabled = function itemIsDisabled(itemToTest) {
802
+ return itemToTest.disabled === true || typeof itemToTest.disabled === 'function' && itemToTest.disabled.call(_this4.hot) === true;
803
+ };
804
+ var itemIsSelectionDisabled = function itemIsSelectionDisabled(itemToTest) {
805
+ return itemToTest.disableSelection;
806
+ };
807
+ var itemValue = value;
808
+ if (typeof itemValue === 'function') {
809
+ itemValue = itemValue.call(this.hot);
810
+ }
811
+ (0, _element.empty)(TD);
812
+ (0, _element.addClass)(wrapper, 'htItemWrapper');
813
+ TD.appendChild(wrapper);
814
+ if (itemIsSeparator(item)) {
815
+ (0, _element.addClass)(TD, 'htSeparator');
816
+ } else if (typeof item.renderer === 'function') {
817
+ (0, _element.addClass)(TD, 'htCustomMenuRenderer');
818
+ TD.appendChild(item.renderer(hot, wrapper, row, col, prop, itemValue));
819
+ } else {
820
+ (0, _element.fastInnerHTML)(wrapper, itemValue);
821
+ }
822
+ if (itemIsDisabled(item)) {
823
+ (0, _element.addClass)(TD, 'htDisabled');
824
+ this.eventManager.addEventListener(TD, 'mouseenter', function () {
825
+ return hot.deselectCell();
826
+ });
827
+ } else if (itemIsSelectionDisabled(item)) {
828
+ (0, _element.addClass)(TD, 'htSelectionDisabled');
829
+ this.eventManager.addEventListener(TD, 'mouseenter', function () {
830
+ return hot.deselectCell();
831
+ });
832
+ } else if (isSubMenu(item)) {
833
+ (0, _element.addClass)(TD, 'htSubmenu');
834
+ if (itemIsSelectionDisabled(item)) {
835
+ this.eventManager.addEventListener(TD, 'mouseenter', function () {
836
+ return hot.deselectCell();
837
+ });
838
+ } else {
839
+ this.eventManager.addEventListener(TD, 'mouseenter', function () {
840
+ return hot.selectCell(row, col, void 0, void 0, false, false);
841
+ });
842
+ }
843
+ } else {
844
+ (0, _element.removeClass)(TD, ['htSubmenu', 'htDisabled']);
845
+ if (itemIsSelectionDisabled(item)) {
846
+ this.eventManager.addEventListener(TD, 'mouseenter', function () {
847
+ return hot.deselectCell();
848
+ });
849
+ } else {
850
+ this.eventManager.addEventListener(TD, 'mouseenter', function () {
851
+ return hot.selectCell(row, col, void 0, void 0, false, false);
852
+ });
853
+ }
854
+ }
855
+ }
856
+
857
+ /**
858
+ * Create container/wrapper for handsontable.
859
+ *
860
+ * @private
861
+ * @param {string} [name] Class name.
862
+ * @returns {HTMLElement}
863
+ */
864
+ }, {
865
+ key: "createContainer",
866
+ value: function createContainer() {
867
+ var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
868
+ var doc = this.options.container.ownerDocument;
869
+ var className = name;
870
+ var container;
871
+ if (className) {
872
+ if ((0, _function.isFunction)(className)) {
873
+ className = className.call(this.hot);
874
+ if (className === null || (0, _mixed.isUndefined)(className)) {
875
+ className = '';
876
+ } else {
877
+ className = className.toString();
878
+ }
879
+ }
880
+ className = className.replace(/[^A-z0-9]/g, '_');
881
+ className = "".concat(this.options.className, "Sub_").concat(className);
882
+ container = doc.querySelector(".".concat(this.options.className, ".").concat(className));
883
+ }
884
+ if (!container) {
885
+ container = doc.createElement('div');
886
+ (0, _element.addClass)(container, "htMenu ".concat(this.options.className));
887
+ if (className) {
888
+ (0, _element.addClass)(container, className);
889
+ }
890
+ this.options.container.appendChild(container);
891
+ }
892
+ return container;
893
+ }
894
+
895
+ /**
896
+ * @private
897
+ */
898
+ }, {
899
+ key: "blockMainTableCallbacks",
900
+ value: function blockMainTableCallbacks() {
901
+ this._afterScrollCallback = function () {};
902
+ this.hot.addHook('afterScrollVertically', this._afterScrollCallback);
903
+ this.hot.addHook('afterScrollHorizontally', this._afterScrollCallback);
904
+ }
905
+
906
+ /**
907
+ * @private
908
+ */
909
+ }, {
910
+ key: "releaseMainTableCallbacks",
911
+ value: function releaseMainTableCallbacks() {
912
+ if (this._afterScrollCallback) {
913
+ this.hot.removeHook('afterScrollVertically', this._afterScrollCallback);
914
+ this.hot.removeHook('afterScrollHorizontally', this._afterScrollCallback);
915
+ this._afterScrollCallback = null;
916
+ }
917
+ }
918
+
919
+ /**
920
+ * On after init listener.
921
+ *
922
+ * @private
923
+ */
924
+ }, {
925
+ key: "onAfterInit",
926
+ value: function onAfterInit() {
927
+ var wtTable = this.hotMenu.view._wt.wtTable;
928
+ var data = this.hotMenu.getSettings().data;
929
+ var hiderStyle = wtTable.hider.style;
930
+ var holderStyle = wtTable.holder.style;
931
+ var currentHiderWidth = parseInt(hiderStyle.width, 10);
932
+ var realHeight = (0, _array.arrayReduce)(data, function (accumulator, value) {
933
+ return accumulator + (value.name === _predefinedItems.SEPARATOR ? 1 : 26);
934
+ }, 0);
935
+
936
+ // Additional 3px to menu's size because of additional border around its `table.htCore`.
937
+ holderStyle.width = "".concat(currentHiderWidth + 3, "px");
938
+ holderStyle.height = "".concat(realHeight + 3, "px");
939
+ hiderStyle.height = holderStyle.height;
940
+ }
941
+
942
+ /**
943
+ * On after selection listener.
944
+ *
945
+ * @param {number} r Selection start row index.
946
+ * @param {number} c Selection start column index.
947
+ * @param {number} r2 Selection end row index.
948
+ * @param {number} c2 Selection end column index.
949
+ * @param {object} preventScrolling Object with `value` property where its value change will be observed.
950
+ */
951
+ }, {
952
+ key: "onAfterSelection",
953
+ value: function onAfterSelection(r, c, r2, c2, preventScrolling) {
954
+ if (this.keyEvent === false) {
955
+ preventScrolling.value = true;
956
+ }
957
+ }
958
+
959
+ /**
960
+ * Document mouse down listener.
961
+ *
962
+ * @private
963
+ * @param {Event} event The mouse event object.
964
+ */
965
+ }, {
966
+ key: "onDocumentMouseDown",
967
+ value: function onDocumentMouseDown(event) {
968
+ if (!this.isOpened()) {
969
+ return;
970
+ }
971
+
972
+ // Close menu when clicked element is not belongs to menu itself
973
+ if (this.options.standalone && this.hotMenu && !(0, _element.isChildOf)(event.target, this.hotMenu.rootElement)) {
974
+ this.close(true);
975
+
976
+ // Automatically close menu when clicked element is not belongs to menu or submenu (not necessarily to itself)
977
+ } else if ((this.isAllSubMenusClosed() || this.isSubMenu()) && !(0, _element.isChildOf)(event.target, '.htMenu')) {
978
+ this.close(true);
979
+ }
980
+ }
981
+
982
+ /**
983
+ * Document's contextmenu listener.
984
+ *
985
+ * @private
986
+ * @param {MouseEvent} event The mouse event object.
987
+ */
988
+ }, {
989
+ key: "onDocumentContextMenu",
990
+ value: function onDocumentContextMenu(event) {
991
+ if (!this.isOpened()) {
992
+ return;
993
+ }
994
+ if ((0, _element.hasClass)(event.target, 'htCore') && (0, _element.isChildOf)(event.target, this.hotMenu.rootElement)) {
995
+ event.preventDefault();
996
+ }
997
+ }
998
+ }]);
999
+ return Menu;
1000
+ }();
1001
+ (0, _object.mixin)(Menu, _localHooks.default);
1002
+ var _default = Menu;
1003
+ exports.default = _default;