handsontable 9.0.1 → 11.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (757) hide show
  1. package/3rdparty/autoResize/autoResize.js +2 -0
  2. package/3rdparty/autoResize/autoResize.mjs +1 -0
  3. package/3rdparty/walkontable/src/border.js +3 -1
  4. package/3rdparty/walkontable/src/border.mjs +2 -1
  5. package/3rdparty/walkontable/src/calculator/constants.js +1 -1
  6. package/3rdparty/walkontable/src/calculator/index.js +2 -0
  7. package/3rdparty/walkontable/src/calculator/viewportColumns.d.ts +18 -0
  8. package/3rdparty/walkontable/src/cell/coords.d.ts +16 -0
  9. package/3rdparty/walkontable/src/cell/range.d.ts +51 -0
  10. package/3rdparty/walkontable/src/index.d.ts +1 -0
  11. package/3rdparty/walkontable/src/overlay/bottom.js +3 -3
  12. package/3rdparty/walkontable/src/overlay/bottom.mjs +2 -2
  13. package/3rdparty/walkontable/src/overlay/bottomLeftCorner.js +3 -3
  14. package/3rdparty/walkontable/src/overlay/bottomLeftCorner.mjs +2 -2
  15. package/3rdparty/walkontable/src/overlay/constants.js +1 -1
  16. package/3rdparty/walkontable/src/overlay/index.js +2 -0
  17. package/3rdparty/walkontable/src/overlay/left.js +3 -3
  18. package/3rdparty/walkontable/src/overlay/left.mjs +2 -2
  19. package/3rdparty/walkontable/src/overlay/registerer.js +1 -1
  20. package/3rdparty/walkontable/src/overlay/top.js +3 -3
  21. package/3rdparty/walkontable/src/overlay/top.mjs +2 -2
  22. package/3rdparty/walkontable/src/overlay/topLeftCorner.js +3 -3
  23. package/3rdparty/walkontable/src/overlay/topLeftCorner.mjs +2 -2
  24. package/3rdparty/walkontable/src/overlays.js +2 -0
  25. package/3rdparty/walkontable/src/overlays.mjs +1 -0
  26. package/3rdparty/walkontable/src/renderer/cells.js +1 -1
  27. package/3rdparty/walkontable/src/renderer/cells.mjs +1 -1
  28. package/3rdparty/walkontable/src/renderer/colGroup.js +3 -3
  29. package/3rdparty/walkontable/src/renderer/colGroup.mjs +2 -2
  30. package/3rdparty/walkontable/src/renderer/columnHeaders.js +3 -3
  31. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +2 -2
  32. package/3rdparty/walkontable/src/renderer/rowHeaders.js +1 -1
  33. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +1 -1
  34. package/3rdparty/walkontable/src/renderer/rows.js +3 -3
  35. package/3rdparty/walkontable/src/renderer/rows.mjs +2 -2
  36. package/3rdparty/walkontable/src/selection.js +5 -3
  37. package/3rdparty/walkontable/src/selection.mjs +3 -2
  38. package/3rdparty/walkontable/src/table/bottom.js +3 -3
  39. package/3rdparty/walkontable/src/table/bottom.mjs +2 -2
  40. package/3rdparty/walkontable/src/table/bottomLeftCorner.js +3 -3
  41. package/3rdparty/walkontable/src/table/bottomLeftCorner.mjs +2 -2
  42. package/3rdparty/walkontable/src/table/left.js +3 -3
  43. package/3rdparty/walkontable/src/table/left.mjs +2 -2
  44. package/3rdparty/walkontable/src/table/master.js +3 -3
  45. package/3rdparty/walkontable/src/table/master.mjs +2 -2
  46. package/3rdparty/walkontable/src/table/top.js +3 -3
  47. package/3rdparty/walkontable/src/table/top.mjs +2 -2
  48. package/3rdparty/walkontable/src/table/topLeftCorner.js +3 -3
  49. package/3rdparty/walkontable/src/table/topLeftCorner.mjs +2 -2
  50. package/3rdparty/walkontable/src/table.js +5 -3
  51. package/3rdparty/walkontable/src/table.mjs +3 -2
  52. package/3rdparty/walkontable/src/utils/orderView/constants.js +1 -1
  53. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +3 -3
  54. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +2 -2
  55. package/CHANGELOG.md +72 -0
  56. package/LICENSE.txt +19 -22
  57. package/README.md +2 -1
  58. package/base.d.ts +1 -1
  59. package/base.js +16 -3
  60. package/base.mjs +14 -4
  61. package/cellTypes/autocompleteType/autocompleteType.d.ts +17 -0
  62. package/cellTypes/autocompleteType/autocompleteType.js +1 -1
  63. package/cellTypes/autocompleteType/index.d.ts +1 -0
  64. package/cellTypes/base.d.ts +14 -0
  65. package/cellTypes/checkboxType/checkboxType.d.ts +14 -0
  66. package/cellTypes/checkboxType/index.d.ts +1 -0
  67. package/cellTypes/dateType/dateType.d.ts +17 -0
  68. package/cellTypes/dateType/index.d.ts +1 -0
  69. package/cellTypes/dropdownType/dropdownType.d.ts +17 -0
  70. package/cellTypes/dropdownType/index.d.ts +1 -0
  71. package/cellTypes/handsontableType/handsontableType.d.ts +14 -0
  72. package/cellTypes/handsontableType/index.d.ts +1 -0
  73. package/cellTypes/index.d.ts +47 -0
  74. package/cellTypes/index.js +18 -2
  75. package/cellTypes/index.mjs +26 -9
  76. package/cellTypes/numericType/index.d.ts +1 -0
  77. package/cellTypes/numericType/numericType.d.ts +17 -0
  78. package/cellTypes/passwordType/index.d.ts +1 -0
  79. package/cellTypes/passwordType/passwordType.d.ts +14 -0
  80. package/cellTypes/registry.d.ts +18 -0
  81. package/cellTypes/registry.js +2 -2
  82. package/cellTypes/textType/index.d.ts +1 -0
  83. package/cellTypes/textType/textType.d.ts +14 -0
  84. package/cellTypes/timeType/index.d.ts +1 -0
  85. package/cellTypes/timeType/timeType.d.ts +17 -0
  86. package/common.d.ts +74 -0
  87. package/core.d.ts +159 -0
  88. package/core.js +143 -103
  89. package/core.mjs +141 -103
  90. package/{dataMap.js → dataMap/dataMap.js} +37 -35
  91. package/{dataMap.mjs → dataMap/dataMap.mjs} +37 -35
  92. package/dataMap/index.js +5 -1
  93. package/dataMap/index.mjs +3 -2
  94. package/dataMap/metaManager/index.js +54 -6
  95. package/dataMap/metaManager/index.mjs +51 -6
  96. package/dataMap/metaManager/lazyFactoryMap.js +3 -3
  97. package/dataMap/metaManager/lazyFactoryMap.mjs +3 -3
  98. package/dataMap/metaManager/metaLayers/cellMeta.js +2 -0
  99. package/dataMap/metaManager/metaLayers/cellMeta.mjs +1 -0
  100. package/dataMap/metaManager/metaLayers/globalMeta.js +2 -1
  101. package/dataMap/metaManager/metaLayers/globalMeta.mjs +2 -1
  102. package/dataMap/metaManager/metaSchema.js +2331 -871
  103. package/dataMap/metaManager/metaSchema.mjs +2331 -871
  104. package/dataMap/metaManager/mods/dynamicCellMeta.js +136 -0
  105. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +119 -0
  106. package/dataMap/metaManager/utils.js +3 -3
  107. package/dataSource.js +2 -0
  108. package/dataSource.mjs +1 -0
  109. package/dist/handsontable.css +309 -303
  110. package/dist/handsontable.full.css +309 -303
  111. package/dist/handsontable.full.js +50435 -45020
  112. package/dist/handsontable.full.min.css +25 -28
  113. package/dist/handsontable.full.min.js +181 -164
  114. package/dist/handsontable.js +31234 -28030
  115. package/dist/handsontable.min.css +25 -28
  116. package/dist/handsontable.min.js +22 -25
  117. package/editorManager.js +15 -12
  118. package/editorManager.mjs +15 -13
  119. package/editors/autocompleteEditor/autocompleteEditor.d.ts +29 -0
  120. package/editors/autocompleteEditor/autocompleteEditor.js +91 -87
  121. package/editors/autocompleteEditor/autocompleteEditor.mjs +89 -84
  122. package/editors/autocompleteEditor/index.d.ts +1 -0
  123. package/editors/autocompleteEditor/index.js +1 -1
  124. package/editors/baseEditor/baseEditor.d.ts +45 -0
  125. package/editors/baseEditor/baseEditor.js +8 -7
  126. package/editors/baseEditor/baseEditor.mjs +5 -5
  127. package/editors/baseEditor/index.d.ts +1 -0
  128. package/editors/baseEditor/index.js +1 -1
  129. package/editors/checkboxEditor/checkboxEditor.d.ts +12 -0
  130. package/editors/checkboxEditor/checkboxEditor.js +4 -4
  131. package/editors/checkboxEditor/checkboxEditor.mjs +2 -2
  132. package/editors/checkboxEditor/index.d.ts +1 -0
  133. package/editors/checkboxEditor/index.js +1 -1
  134. package/editors/dateEditor/dateEditor.d.ts +18 -0
  135. package/editors/dateEditor/dateEditor.js +20 -20
  136. package/editors/dateEditor/dateEditor.mjs +19 -19
  137. package/editors/dateEditor/index.d.ts +1 -0
  138. package/editors/dateEditor/index.js +1 -1
  139. package/editors/dropdownEditor/dropdownEditor.d.ts +7 -0
  140. package/editors/dropdownEditor/dropdownEditor.js +5 -5
  141. package/editors/dropdownEditor/dropdownEditor.mjs +3 -3
  142. package/editors/dropdownEditor/index.d.ts +1 -0
  143. package/editors/dropdownEditor/index.js +1 -1
  144. package/editors/handsontableEditor/handsontableEditor.d.ts +10 -0
  145. package/editors/handsontableEditor/handsontableEditor.js +4 -4
  146. package/editors/handsontableEditor/handsontableEditor.mjs +3 -3
  147. package/editors/handsontableEditor/index.d.ts +1 -0
  148. package/editors/index.d.ts +53 -0
  149. package/editors/index.js +19 -2
  150. package/editors/index.mjs +28 -10
  151. package/editors/numericEditor/index.d.ts +1 -0
  152. package/editors/numericEditor/numericEditor.d.ts +7 -0
  153. package/editors/numericEditor/numericEditor.js +3 -3
  154. package/editors/numericEditor/numericEditor.mjs +2 -2
  155. package/editors/passwordEditor/index.d.ts +1 -0
  156. package/editors/passwordEditor/passwordEditor.d.ts +7 -0
  157. package/editors/passwordEditor/passwordEditor.js +4 -4
  158. package/editors/passwordEditor/passwordEditor.mjs +3 -3
  159. package/editors/registry.d.ts +29 -0
  160. package/editors/registry.js +2 -2
  161. package/editors/selectEditor/index.d.ts +1 -0
  162. package/editors/selectEditor/selectEditor.d.ts +16 -0
  163. package/editors/selectEditor/selectEditor.js +4 -4
  164. package/editors/selectEditor/selectEditor.mjs +3 -3
  165. package/editors/textEditor/index.d.ts +1 -0
  166. package/editors/textEditor/textEditor.d.ts +24 -0
  167. package/editors/textEditor/textEditor.js +4 -4
  168. package/editors/textEditor/textEditor.mjs +3 -3
  169. package/eventManager.d.ts +13 -0
  170. package/eventManager.js +1 -1
  171. package/handsontable-non-commercial-license.pdf +0 -0
  172. package/helpers/array.d.ts +18 -0
  173. package/helpers/array.js +10 -10
  174. package/helpers/array.mjs +1 -1
  175. package/helpers/browser.d.ts +25 -0
  176. package/helpers/browser.js +11 -9
  177. package/helpers/browser.mjs +1 -0
  178. package/helpers/console.d.ts +4 -0
  179. package/helpers/console.js +2 -2
  180. package/helpers/data.d.ts +13 -0
  181. package/helpers/data.js +7 -35
  182. package/helpers/data.mjs +1 -27
  183. package/helpers/date.d.ts +1 -0
  184. package/helpers/dom/element.d.ts +49 -0
  185. package/helpers/dom/element.js +44 -45
  186. package/helpers/dom/element.mjs +7 -8
  187. package/helpers/dom/event.d.ts +4 -0
  188. package/helpers/dom/event.js +2 -2
  189. package/helpers/dom/index.d.ts +2 -0
  190. package/helpers/feature.d.ts +11 -0
  191. package/helpers/feature.js +6 -6
  192. package/helpers/function.d.ts +10 -0
  193. package/helpers/function.js +43 -5
  194. package/helpers/function.mjs +35 -0
  195. package/helpers/index.d.ts +14 -0
  196. package/helpers/mixed.d.ts +5 -0
  197. package/helpers/mixed.js +5 -5
  198. package/helpers/mixed.mjs +2 -2
  199. package/helpers/number.d.ts +5 -0
  200. package/helpers/number.js +96 -17
  201. package/helpers/number.mjs +85 -17
  202. package/helpers/object.d.ts +16 -0
  203. package/helpers/object.js +11 -11
  204. package/helpers/string.d.ts +7 -0
  205. package/helpers/string.js +4 -4
  206. package/helpers/templateLiteralTag.d.ts +1 -0
  207. package/helpers/unicode.d.ts +73 -0
  208. package/helpers/unicode.js +49 -33
  209. package/helpers/unicode.mjs +44 -27
  210. package/i18n/constants.js +1 -1
  211. package/i18n/index.d.ts +2 -0
  212. package/i18n/index.js +2 -0
  213. package/i18n/languages/de-CH.d.ts +5 -0
  214. package/i18n/languages/de-DE.d.ts +5 -0
  215. package/i18n/languages/en-US.d.ts +5 -0
  216. package/i18n/languages/es-MX.d.ts +5 -0
  217. package/i18n/languages/fr-FR.d.ts +5 -0
  218. package/i18n/languages/index.d.ts +35 -0
  219. package/i18n/languages/it-IT.d.ts +5 -0
  220. package/i18n/languages/ja-JP.d.ts +5 -0
  221. package/i18n/languages/ko-KR.d.ts +5 -0
  222. package/i18n/languages/lv-LV.d.ts +5 -0
  223. package/i18n/languages/nb-NO.d.ts +5 -0
  224. package/i18n/languages/nl-NL.d.ts +5 -0
  225. package/i18n/languages/pl-PL.d.ts +5 -0
  226. package/i18n/languages/pt-BR.d.ts +5 -0
  227. package/i18n/languages/ru-RU.d.ts +5 -0
  228. package/i18n/languages/zh-CN.d.ts +5 -0
  229. package/i18n/languages/zh-TW.d.ts +5 -0
  230. package/i18n/phraseFormatters/index.js +1 -1
  231. package/i18n/registry.d.ts +13 -0
  232. package/i18n/registry.js +4 -4
  233. package/i18n/utils.js +1 -1
  234. package/index.d.ts +516 -0
  235. package/index.js +40 -112
  236. package/index.mjs +17 -90
  237. package/mixins/localHooks.js +17 -14
  238. package/mixins/localHooks.mjs +16 -13
  239. package/package.json +103 -10
  240. package/pluginHooks.d.ts +255 -0
  241. package/pluginHooks.js +132 -57
  242. package/pluginHooks.mjs +131 -57
  243. package/plugins/autoColumnSize/autoColumnSize.d.ts +27 -0
  244. package/plugins/autoColumnSize/autoColumnSize.js +20 -13
  245. package/plugins/autoColumnSize/autoColumnSize.mjs +18 -12
  246. package/plugins/autoColumnSize/index.d.ts +1 -0
  247. package/plugins/autoColumnSize/index.js +1 -1
  248. package/plugins/autoRowSize/autoRowSize.d.ts +27 -0
  249. package/plugins/autoRowSize/autoRowSize.js +22 -14
  250. package/plugins/autoRowSize/autoRowSize.mjs +19 -12
  251. package/plugins/autoRowSize/index.d.ts +1 -0
  252. package/plugins/autoRowSize/index.js +1 -1
  253. package/plugins/autofill/autofill.d.ts +18 -0
  254. package/plugins/autofill/autofill.js +10 -19
  255. package/plugins/autofill/autofill.mjs +7 -16
  256. package/plugins/autofill/index.d.ts +1 -0
  257. package/plugins/autofill/index.js +1 -1
  258. package/plugins/autofill/utils.js +1 -1
  259. package/plugins/base/base.d.ts +21 -0
  260. package/plugins/base/base.js +2 -2
  261. package/plugins/base/base.mjs +1 -1
  262. package/plugins/base/index.d.ts +1 -0
  263. package/plugins/base/index.js +1 -1
  264. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.d.ts +9 -0
  265. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +4 -3
  266. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +3 -2
  267. package/plugins/bindRowsWithHeaders/index.d.ts +1 -0
  268. package/plugins/bindRowsWithHeaders/index.js +1 -1
  269. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +4 -4
  270. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +3 -3
  271. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +6 -4
  272. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +4 -3
  273. package/plugins/collapsibleColumns/collapsibleColumns.d.ts +22 -0
  274. package/plugins/collapsibleColumns/collapsibleColumns.js +13 -6
  275. package/plugins/collapsibleColumns/collapsibleColumns.mjs +11 -5
  276. package/plugins/collapsibleColumns/index.d.ts +1 -0
  277. package/plugins/collapsibleColumns/index.js +1 -1
  278. package/plugins/columnSorting/columnSorting.d.ts +30 -0
  279. package/plugins/columnSorting/columnSorting.js +19 -14
  280. package/plugins/columnSorting/columnSorting.mjs +16 -12
  281. package/plugins/columnSorting/columnStatesManager.js +5 -3
  282. package/plugins/columnSorting/columnStatesManager.mjs +4 -3
  283. package/plugins/columnSorting/index.d.ts +1 -0
  284. package/plugins/columnSorting/index.js +1 -1
  285. package/plugins/columnSorting/rootComparator.js +2 -0
  286. package/plugins/columnSorting/rootComparator.mjs +1 -0
  287. package/plugins/columnSorting/sortFunction/checkbox.js +1 -1
  288. package/plugins/columnSorting/sortFunction/date.js +1 -1
  289. package/plugins/columnSorting/sortFunction/default.js +4 -3
  290. package/plugins/columnSorting/sortFunction/default.mjs +3 -2
  291. package/plugins/columnSorting/sortFunction/numeric.js +1 -1
  292. package/plugins/columnSorting/sortService/engine.js +1 -1
  293. package/plugins/columnSorting/sortService/registry.js +1 -1
  294. package/plugins/columnSorting/utils.js +4 -4
  295. package/plugins/columnSorting/utils.mjs +1 -1
  296. package/plugins/columnSummary/columnSummary.d.ts +72 -0
  297. package/plugins/columnSummary/columnSummary.js +31 -12
  298. package/plugins/columnSummary/columnSummary.mjs +29 -10
  299. package/plugins/columnSummary/endpoints.js +6 -4
  300. package/plugins/columnSummary/endpoints.mjs +5 -4
  301. package/plugins/columnSummary/index.d.ts +1 -0
  302. package/plugins/columnSummary/index.js +1 -1
  303. package/plugins/comments/commentEditor.js +1 -1
  304. package/plugins/comments/commentEditor.mjs +1 -1
  305. package/plugins/comments/comments.d.ts +50 -0
  306. package/plugins/comments/comments.js +11 -6
  307. package/plugins/comments/comments.mjs +10 -5
  308. package/plugins/comments/displaySwitch.js +1 -1
  309. package/plugins/comments/displaySwitch.mjs +1 -1
  310. package/plugins/comments/index.d.ts +1 -0
  311. package/plugins/comments/index.js +1 -1
  312. package/plugins/contextMenu/commandExecutor.js +1 -1
  313. package/plugins/contextMenu/commandExecutor.mjs +1 -1
  314. package/plugins/contextMenu/contextMenu.d.ts +65 -0
  315. package/plugins/contextMenu/contextMenu.js +8 -7
  316. package/plugins/contextMenu/contextMenu.mjs +6 -5
  317. package/plugins/contextMenu/cursor.js +1 -1
  318. package/plugins/contextMenu/cursor.mjs +1 -1
  319. package/plugins/contextMenu/index.d.ts +1 -0
  320. package/plugins/contextMenu/index.js +1 -1
  321. package/plugins/contextMenu/itemsFactory.js +1 -1
  322. package/plugins/contextMenu/itemsFactory.mjs +1 -1
  323. package/plugins/contextMenu/menu.js +4 -4
  324. package/plugins/contextMenu/menu.mjs +3 -3
  325. package/plugins/contextMenu/predefinedItems/alignment.js +1 -1
  326. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
  327. package/plugins/contextMenu/predefinedItems/columnLeft.js +1 -1
  328. package/plugins/contextMenu/predefinedItems/columnRight.js +1 -1
  329. package/plugins/contextMenu/predefinedItems/noItems.js +1 -1
  330. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -1
  331. package/plugins/contextMenu/predefinedItems/redo.js +1 -1
  332. package/plugins/contextMenu/predefinedItems/removeColumn.js +4 -2
  333. package/plugins/contextMenu/predefinedItems/removeColumn.mjs +2 -1
  334. package/plugins/contextMenu/predefinedItems/removeRow.js +4 -2
  335. package/plugins/contextMenu/predefinedItems/removeRow.mjs +2 -1
  336. package/plugins/contextMenu/predefinedItems/rowAbove.js +1 -1
  337. package/plugins/contextMenu/predefinedItems/rowBelow.js +1 -1
  338. package/plugins/contextMenu/predefinedItems/separator.js +1 -1
  339. package/plugins/contextMenu/predefinedItems/undo.js +1 -1
  340. package/plugins/contextMenu/predefinedItems.js +2 -2
  341. package/plugins/contextMenu/utils.js +10 -10
  342. package/plugins/copyPaste/clipboardData.js +3 -0
  343. package/plugins/copyPaste/clipboardData.mjs +3 -0
  344. package/plugins/copyPaste/copyPaste.d.ts +35 -0
  345. package/plugins/copyPaste/copyPaste.js +13 -10
  346. package/plugins/copyPaste/copyPaste.mjs +11 -9
  347. package/plugins/copyPaste/focusableElement.js +1 -2
  348. package/plugins/copyPaste/focusableElement.mjs +1 -2
  349. package/plugins/copyPaste/index.d.ts +1 -0
  350. package/plugins/copyPaste/index.js +1 -1
  351. package/plugins/copyPaste/pasteEvent.js +3 -0
  352. package/plugins/copyPaste/pasteEvent.mjs +3 -0
  353. package/plugins/customBorders/customBorders.d.ts +38 -0
  354. package/plugins/customBorders/customBorders.js +11 -9
  355. package/plugins/customBorders/customBorders.mjs +8 -7
  356. package/plugins/customBorders/index.d.ts +1 -0
  357. package/plugins/customBorders/index.js +1 -1
  358. package/plugins/customBorders/utils.js +3 -3
  359. package/plugins/dragToScroll/dragToScroll.d.ts +15 -0
  360. package/plugins/dragToScroll/dragToScroll.js +5 -5
  361. package/plugins/dragToScroll/dragToScroll.mjs +3 -3
  362. package/plugins/dragToScroll/index.d.ts +1 -0
  363. package/plugins/dragToScroll/index.js +1 -1
  364. package/plugins/dropdownMenu/dropdownMenu.d.ts +24 -0
  365. package/plugins/dropdownMenu/dropdownMenu.js +9 -9
  366. package/plugins/dropdownMenu/dropdownMenu.mjs +7 -7
  367. package/plugins/dropdownMenu/index.d.ts +1 -0
  368. package/plugins/dropdownMenu/index.js +1 -1
  369. package/plugins/exportFile/dataProvider.js +3 -5
  370. package/plugins/exportFile/dataProvider.mjs +3 -5
  371. package/plugins/exportFile/exportFile.d.ts +12 -0
  372. package/plugins/exportFile/exportFile.js +6 -5
  373. package/plugins/exportFile/exportFile.mjs +4 -3
  374. package/plugins/exportFile/index.d.ts +1 -0
  375. package/plugins/exportFile/index.js +1 -1
  376. package/plugins/exportFile/typeFactory.js +2 -1
  377. package/plugins/exportFile/typeFactory.mjs +1 -0
  378. package/plugins/exportFile/types/_base.js +0 -1
  379. package/plugins/exportFile/types/_base.mjs +0 -1
  380. package/plugins/exportFile/types/csv.js +3 -4
  381. package/plugins/exportFile/types/csv.mjs +2 -3
  382. package/plugins/filters/component/_base.js +1 -1
  383. package/plugins/filters/component/_base.mjs +1 -1
  384. package/plugins/filters/component/actionBar.js +4 -4
  385. package/plugins/filters/component/actionBar.mjs +3 -3
  386. package/plugins/filters/component/condition.js +7 -5
  387. package/plugins/filters/component/condition.mjs +5 -4
  388. package/plugins/filters/component/operators.js +4 -4
  389. package/plugins/filters/component/operators.mjs +3 -3
  390. package/plugins/filters/component/value.js +13 -6
  391. package/plugins/filters/component/value.mjs +11 -5
  392. package/plugins/filters/condition/beginsWith.js +5 -3
  393. package/plugins/filters/condition/beginsWith.mjs +3 -2
  394. package/plugins/filters/condition/between.js +4 -2
  395. package/plugins/filters/condition/between.mjs +2 -1
  396. package/plugins/filters/condition/byValue.js +4 -2
  397. package/plugins/filters/condition/byValue.mjs +2 -1
  398. package/plugins/filters/condition/contains.js +5 -3
  399. package/plugins/filters/condition/contains.mjs +3 -2
  400. package/plugins/filters/condition/date/after.js +4 -2
  401. package/plugins/filters/condition/date/after.mjs +2 -1
  402. package/plugins/filters/condition/date/before.js +4 -2
  403. package/plugins/filters/condition/date/before.mjs +2 -1
  404. package/plugins/filters/condition/date/today.js +1 -1
  405. package/plugins/filters/condition/date/tomorrow.js +1 -1
  406. package/plugins/filters/condition/date/yesterday.js +1 -1
  407. package/plugins/filters/condition/empty.js +1 -1
  408. package/plugins/filters/condition/endsWith.js +5 -3
  409. package/plugins/filters/condition/endsWith.mjs +3 -2
  410. package/plugins/filters/condition/equal.js +5 -3
  411. package/plugins/filters/condition/equal.mjs +3 -2
  412. package/plugins/filters/condition/false.js +1 -1
  413. package/plugins/filters/condition/greaterThan.js +4 -2
  414. package/plugins/filters/condition/greaterThan.mjs +2 -1
  415. package/plugins/filters/condition/greaterThanOrEqual.js +4 -2
  416. package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -1
  417. package/plugins/filters/condition/lessThan.js +4 -2
  418. package/plugins/filters/condition/lessThan.mjs +2 -1
  419. package/plugins/filters/condition/lessThanOrEqual.js +4 -2
  420. package/plugins/filters/condition/lessThanOrEqual.mjs +2 -1
  421. package/plugins/filters/condition/none.js +1 -1
  422. package/plugins/filters/condition/notBetween.js +1 -1
  423. package/plugins/filters/condition/notContains.js +1 -1
  424. package/plugins/filters/condition/notEmpty.js +1 -1
  425. package/plugins/filters/condition/notEqual.js +1 -1
  426. package/plugins/filters/condition/true.js +1 -1
  427. package/plugins/filters/conditionCollection.d.ts +32 -0
  428. package/plugins/filters/conditionCollection.js +8 -5
  429. package/plugins/filters/conditionCollection.mjs +6 -4
  430. package/plugins/filters/conditionRegisterer.js +1 -1
  431. package/plugins/filters/conditionUpdateObserver.d.ts +10 -0
  432. package/plugins/filters/conditionUpdateObserver.js +3 -1
  433. package/plugins/filters/conditionUpdateObserver.mjs +2 -1
  434. package/plugins/filters/constants.js +2 -1
  435. package/plugins/filters/constants.mjs +1 -0
  436. package/plugins/filters/dataFilter.js +1 -1
  437. package/plugins/filters/dataFilter.mjs +1 -1
  438. package/plugins/filters/filters.d.ts +56 -0
  439. package/plugins/filters/filters.js +19 -14
  440. package/plugins/filters/filters.mjs +17 -13
  441. package/plugins/filters/index.d.ts +1 -0
  442. package/plugins/filters/index.js +1 -1
  443. package/plugins/filters/logicalOperationRegisterer.js +1 -1
  444. package/plugins/filters/logicalOperations/conjunction.js +3 -3
  445. package/plugins/filters/logicalOperations/conjunction.mjs +1 -0
  446. package/plugins/filters/logicalOperations/disjunction.js +3 -3
  447. package/plugins/filters/logicalOperations/disjunction.mjs +1 -0
  448. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +3 -3
  449. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +1 -0
  450. package/plugins/filters/ui/_base.js +2 -3
  451. package/plugins/filters/ui/_base.mjs +2 -3
  452. package/plugins/filters/ui/input.js +3 -3
  453. package/plugins/filters/ui/input.mjs +3 -3
  454. package/plugins/filters/ui/link.js +3 -3
  455. package/plugins/filters/ui/link.mjs +3 -3
  456. package/plugins/filters/ui/multipleSelect.js +31 -5
  457. package/plugins/filters/ui/multipleSelect.mjs +30 -5
  458. package/plugins/filters/ui/radioInput.js +3 -3
  459. package/plugins/filters/ui/radioInput.mjs +3 -3
  460. package/plugins/filters/ui/select.js +3 -3
  461. package/plugins/filters/ui/select.mjs +3 -3
  462. package/plugins/filters/utils.js +3 -3
  463. package/plugins/formulas/engine/register.js +3 -3
  464. package/plugins/formulas/engine/settings.js +4 -4
  465. package/plugins/formulas/engine/settings.mjs +2 -3
  466. package/plugins/formulas/formulas.d.ts +31 -0
  467. package/plugins/formulas/formulas.js +286 -89
  468. package/plugins/formulas/formulas.mjs +279 -86
  469. package/plugins/formulas/index.d.ts +1 -0
  470. package/plugins/formulas/index.js +1 -1
  471. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +3 -1
  472. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +2 -1
  473. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +4 -2
  474. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +2 -1
  475. package/plugins/hiddenColumns/hiddenColumns.d.ts +21 -0
  476. package/plugins/hiddenColumns/hiddenColumns.js +37 -24
  477. package/plugins/hiddenColumns/hiddenColumns.mjs +36 -23
  478. package/plugins/hiddenColumns/index.d.ts +1 -0
  479. package/plugins/hiddenColumns/index.js +1 -1
  480. package/plugins/hiddenRows/contextMenuItem/hideRow.js +3 -1
  481. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +2 -1
  482. package/plugins/hiddenRows/contextMenuItem/showRow.js +4 -2
  483. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +2 -1
  484. package/plugins/hiddenRows/hiddenRows.d.ts +21 -0
  485. package/plugins/hiddenRows/hiddenRows.js +37 -25
  486. package/plugins/hiddenRows/hiddenRows.mjs +36 -24
  487. package/plugins/hiddenRows/index.d.ts +1 -0
  488. package/plugins/hiddenRows/index.js +1 -1
  489. package/plugins/index.d.ts +111 -0
  490. package/plugins/index.js +98 -58
  491. package/plugins/index.mjs +75 -34
  492. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +3 -1
  493. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +2 -1
  494. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +3 -1
  495. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +2 -1
  496. package/plugins/manualColumnFreeze/index.d.ts +1 -0
  497. package/plugins/manualColumnFreeze/index.js +1 -1
  498. package/plugins/manualColumnFreeze/manualColumnFreeze.d.ts +11 -0
  499. package/plugins/manualColumnFreeze/manualColumnFreeze.js +11 -6
  500. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +10 -5
  501. package/plugins/manualColumnMove/index.d.ts +1 -0
  502. package/plugins/manualColumnMove/index.js +1 -1
  503. package/plugins/manualColumnMove/manualColumnMove.d.ts +14 -0
  504. package/plugins/manualColumnMove/manualColumnMove.js +28 -23
  505. package/plugins/manualColumnMove/manualColumnMove.mjs +27 -22
  506. package/plugins/manualColumnMove/ui/_base.js +1 -1
  507. package/plugins/manualColumnMove/ui/_base.mjs +1 -1
  508. package/plugins/manualColumnMove/ui/backlight.js +4 -4
  509. package/plugins/manualColumnMove/ui/backlight.mjs +3 -3
  510. package/plugins/manualColumnMove/ui/guideline.js +4 -4
  511. package/plugins/manualColumnMove/ui/guideline.mjs +3 -3
  512. package/plugins/manualColumnResize/index.d.ts +1 -0
  513. package/plugins/manualColumnResize/index.js +1 -1
  514. package/plugins/manualColumnResize/manualColumnResize.d.ts +30 -0
  515. package/plugins/manualColumnResize/manualColumnResize.js +7 -6
  516. package/plugins/manualColumnResize/manualColumnResize.mjs +6 -5
  517. package/plugins/manualRowMove/index.d.ts +1 -0
  518. package/plugins/manualRowMove/index.js +1 -1
  519. package/plugins/manualRowMove/manualRowMove.d.ts +14 -0
  520. package/plugins/manualRowMove/manualRowMove.js +25 -22
  521. package/plugins/manualRowMove/manualRowMove.mjs +24 -21
  522. package/plugins/manualRowMove/ui/_base.js +1 -2
  523. package/plugins/manualRowMove/ui/_base.mjs +1 -2
  524. package/plugins/manualRowMove/ui/backlight.js +5 -5
  525. package/plugins/manualRowMove/ui/backlight.mjs +4 -4
  526. package/plugins/manualRowMove/ui/guideline.js +5 -5
  527. package/plugins/manualRowMove/ui/guideline.mjs +4 -4
  528. package/plugins/manualRowResize/index.d.ts +1 -0
  529. package/plugins/manualRowResize/index.js +1 -1
  530. package/plugins/manualRowResize/manualRowResize.d.ts +29 -0
  531. package/plugins/manualRowResize/manualRowResize.js +6 -5
  532. package/plugins/manualRowResize/manualRowResize.mjs +5 -4
  533. package/plugins/mergeCells/calculations/autofill.js +4 -3
  534. package/plugins/mergeCells/calculations/autofill.mjs +3 -3
  535. package/plugins/mergeCells/calculations/selection.js +1 -2
  536. package/plugins/mergeCells/calculations/selection.mjs +1 -2
  537. package/plugins/mergeCells/cellCoords.js +1 -1
  538. package/plugins/mergeCells/cellCoords.mjs +1 -1
  539. package/plugins/mergeCells/cellsCollection.js +5 -3
  540. package/plugins/mergeCells/cellsCollection.mjs +4 -3
  541. package/plugins/mergeCells/index.d.ts +1 -0
  542. package/plugins/mergeCells/index.js +1 -1
  543. package/plugins/mergeCells/mergeCells.d.ts +22 -0
  544. package/plugins/mergeCells/mergeCells.js +7 -4
  545. package/plugins/mergeCells/mergeCells.mjs +5 -3
  546. package/plugins/multiColumnSorting/domHelpers.js +2 -0
  547. package/plugins/multiColumnSorting/domHelpers.mjs +1 -0
  548. package/plugins/multiColumnSorting/index.d.ts +1 -0
  549. package/plugins/multiColumnSorting/index.js +1 -1
  550. package/plugins/multiColumnSorting/multiColumnSorting.d.ts +8 -0
  551. package/plugins/multiColumnSorting/multiColumnSorting.js +11 -8
  552. package/plugins/multiColumnSorting/multiColumnSorting.mjs +9 -6
  553. package/plugins/multiColumnSorting/rootComparator.js +2 -0
  554. package/plugins/multiColumnSorting/rootComparator.mjs +1 -0
  555. package/plugins/multipleSelectionHandles/index.d.ts +1 -0
  556. package/plugins/multipleSelectionHandles/index.js +1 -1
  557. package/plugins/multipleSelectionHandles/multipleSelectionHandles.d.ts +21 -0
  558. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +7 -5
  559. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +5 -3
  560. package/plugins/nestedHeaders/index.d.ts +1 -0
  561. package/plugins/nestedHeaders/index.js +1 -1
  562. package/plugins/nestedHeaders/nestedHeaders.d.ts +17 -0
  563. package/plugins/nestedHeaders/nestedHeaders.js +41 -21
  564. package/plugins/nestedHeaders/nestedHeaders.mjs +38 -19
  565. package/plugins/nestedHeaders/stateManager/headersTree.js +11 -5
  566. package/plugins/nestedHeaders/stateManager/headersTree.mjs +10 -5
  567. package/plugins/nestedHeaders/stateManager/index.js +9 -6
  568. package/plugins/nestedHeaders/stateManager/index.mjs +9 -6
  569. package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +1 -1
  570. package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +2 -0
  571. package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +1 -0
  572. package/plugins/nestedHeaders/stateManager/sourceSettings.js +8 -4
  573. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +8 -4
  574. package/plugins/nestedHeaders/utils/ghostTable.js +10 -2
  575. package/plugins/nestedHeaders/utils/ghostTable.mjs +10 -2
  576. package/plugins/nestedRows/data/dataManager.js +40 -14
  577. package/plugins/nestedRows/data/dataManager.mjs +38 -13
  578. package/plugins/nestedRows/index.d.ts +1 -0
  579. package/plugins/nestedRows/index.js +1 -1
  580. package/plugins/nestedRows/nestedRows.d.ts +12 -0
  581. package/plugins/nestedRows/nestedRows.js +48 -34
  582. package/plugins/nestedRows/nestedRows.mjs +43 -32
  583. package/plugins/nestedRows/ui/_base.js +1 -2
  584. package/plugins/nestedRows/ui/_base.mjs +1 -2
  585. package/plugins/nestedRows/ui/collapsing.js +6 -5
  586. package/plugins/nestedRows/ui/collapsing.mjs +4 -4
  587. package/plugins/nestedRows/ui/contextMenu.js +2 -3
  588. package/plugins/nestedRows/ui/contextMenu.mjs +2 -3
  589. package/plugins/nestedRows/ui/headers.js +4 -5
  590. package/plugins/nestedRows/ui/headers.mjs +3 -4
  591. package/plugins/nestedRows/utils/rowMoveController.js +10 -9
  592. package/plugins/nestedRows/utils/rowMoveController.mjs +8 -8
  593. package/plugins/persistentState/index.d.ts +1 -0
  594. package/plugins/persistentState/persistentState.d.ts +13 -0
  595. package/plugins/persistentState/persistentState.js +13 -4
  596. package/plugins/persistentState/persistentState.mjs +12 -3
  597. package/plugins/persistentState/storage.js +1 -1
  598. package/plugins/persistentState/storage.mjs +1 -1
  599. package/plugins/registry.d.ts +9 -0
  600. package/plugins/registry.js +4 -2
  601. package/plugins/registry.mjs +2 -1
  602. package/plugins/search/index.d.ts +1 -0
  603. package/plugins/search/search.d.ts +28 -0
  604. package/plugins/search/search.js +7 -6
  605. package/plugins/search/search.mjs +7 -6
  606. package/plugins/touchScroll/index.d.ts +1 -0
  607. package/plugins/touchScroll/touchScroll.d.ts +13 -0
  608. package/plugins/touchScroll/touchScroll.js +9 -9
  609. package/plugins/touchScroll/touchScroll.mjs +8 -8
  610. package/plugins/trimRows/index.d.ts +1 -0
  611. package/plugins/trimRows/trimRows.d.ts +17 -0
  612. package/plugins/trimRows/trimRows.js +3 -2
  613. package/plugins/trimRows/trimRows.mjs +3 -2
  614. package/plugins/undoRedo/index.d.ts +1 -0
  615. package/plugins/undoRedo/undoRedo.d.ts +49 -0
  616. package/plugins/undoRedo/undoRedo.js +28 -30
  617. package/plugins/undoRedo/undoRedo.mjs +26 -29
  618. package/registry.d.ts +6 -0
  619. package/registry.js +46 -0
  620. package/registry.mjs +27 -0
  621. package/renderers/autocompleteRenderer/autocompleteRenderer.d.ts +5 -0
  622. package/renderers/autocompleteRenderer/autocompleteRenderer.js +1 -1
  623. package/renderers/autocompleteRenderer/index.d.ts +1 -0
  624. package/renderers/base.d.ts +3 -0
  625. package/renderers/baseRenderer/baseRenderer.d.ts +5 -0
  626. package/renderers/baseRenderer/baseRenderer.js +1 -1
  627. package/renderers/baseRenderer/index.d.ts +1 -0
  628. package/renderers/checkboxRenderer/checkboxRenderer.d.ts +5 -0
  629. package/renderers/checkboxRenderer/checkboxRenderer.js +3 -5
  630. package/renderers/checkboxRenderer/checkboxRenderer.mjs +3 -4
  631. package/renderers/checkboxRenderer/index.d.ts +1 -0
  632. package/renderers/htmlRenderer/htmlRenderer.d.ts +5 -0
  633. package/renderers/htmlRenderer/htmlRenderer.js +1 -1
  634. package/renderers/htmlRenderer/index.d.ts +1 -0
  635. package/renderers/index.d.ts +42 -0
  636. package/renderers/index.js +16 -2
  637. package/renderers/index.mjs +22 -7
  638. package/renderers/numericRenderer/index.d.ts +1 -0
  639. package/renderers/numericRenderer/numericRenderer.d.ts +5 -0
  640. package/renderers/numericRenderer/numericRenderer.js +1 -1
  641. package/renderers/passwordRenderer/index.d.ts +1 -0
  642. package/renderers/passwordRenderer/passwordRenderer.d.ts +5 -0
  643. package/renderers/passwordRenderer/passwordRenderer.js +1 -1
  644. package/renderers/registry.d.ts +18 -0
  645. package/renderers/registry.js +3 -2
  646. package/renderers/textRenderer/index.d.ts +1 -0
  647. package/renderers/textRenderer/textRenderer.d.ts +5 -0
  648. package/renderers/textRenderer/textRenderer.js +1 -1
  649. package/selection/highlight/constants.js +1 -1
  650. package/selection/highlight/highlight.js +7 -5
  651. package/selection/highlight/highlight.mjs +5 -4
  652. package/selection/highlight/types/activeHeader.js +2 -0
  653. package/selection/highlight/types/activeHeader.mjs +1 -0
  654. package/selection/highlight/types/area.js +2 -0
  655. package/selection/highlight/types/area.mjs +1 -0
  656. package/selection/highlight/types/cell.js +2 -0
  657. package/selection/highlight/types/cell.mjs +1 -0
  658. package/selection/highlight/types/customSelection.js +2 -0
  659. package/selection/highlight/types/customSelection.mjs +1 -0
  660. package/selection/highlight/types/fill.js +2 -0
  661. package/selection/highlight/types/fill.mjs +1 -0
  662. package/selection/highlight/types/header.js +2 -0
  663. package/selection/highlight/types/header.mjs +1 -0
  664. package/selection/highlight/types/index.js +2 -0
  665. package/selection/highlight/types/index.mjs +1 -0
  666. package/selection/highlight/visualSelection.js +7 -5
  667. package/selection/highlight/visualSelection.mjs +5 -4
  668. package/selection/index.d.ts +5 -0
  669. package/selection/index.js +2 -0
  670. package/selection/mouseEventHandler.js +4 -4
  671. package/selection/mouseEventHandler.mjs +3 -3
  672. package/selection/range.js +5 -5
  673. package/selection/range.mjs +4 -4
  674. package/selection/selection.js +18 -9
  675. package/selection/selection.mjs +17 -9
  676. package/selection/transformation.js +3 -2
  677. package/selection/transformation.mjs +3 -2
  678. package/selection/utils.js +6 -4
  679. package/selection/utils.mjs +3 -2
  680. package/settings.d.ts +208 -0
  681. package/tableView.js +20 -14
  682. package/tableView.mjs +19 -14
  683. package/translations/changesObservable/observable.js +10 -5
  684. package/translations/changesObservable/observable.mjs +10 -5
  685. package/translations/changesObservable/observer.js +6 -1
  686. package/translations/changesObservable/observer.mjs +6 -1
  687. package/translations/changesObservable/utils.js +1 -0
  688. package/translations/changesObservable/utils.mjs +1 -0
  689. package/translations/index.d.ts +1 -0
  690. package/translations/index.js +3 -1
  691. package/translations/indexMapper.d.ts +45 -0
  692. package/translations/indexMapper.js +8 -3
  693. package/translations/indexMapper.mjs +6 -2
  694. package/translations/mapCollections/aggregatedCollection.js +3 -3
  695. package/translations/mapCollections/aggregatedCollection.mjs +2 -2
  696. package/translations/mapCollections/index.js +2 -0
  697. package/translations/mapCollections/mapCollection.js +1 -1
  698. package/translations/maps/hidingMap.js +3 -3
  699. package/translations/maps/hidingMap.mjs +2 -2
  700. package/translations/maps/indexMap.d.ts +10 -0
  701. package/translations/maps/indexesSequence.js +4 -4
  702. package/translations/maps/indexesSequence.mjs +3 -3
  703. package/translations/maps/linkedPhysicalIndexToValueMap.js +4 -2
  704. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +3 -2
  705. package/translations/maps/physicalIndexToValueMap.js +4 -4
  706. package/translations/maps/physicalIndexToValueMap.mjs +3 -3
  707. package/translations/maps/trimmingMap.js +3 -3
  708. package/translations/maps/trimmingMap.mjs +2 -2
  709. package/translations/maps/utils/actionsOnIndexes.js +2 -0
  710. package/translations/maps/utils/actionsOnIndexes.mjs +1 -0
  711. package/translations/maps/utils/indexesSequence.js +2 -0
  712. package/translations/maps/utils/indexesSequence.mjs +1 -0
  713. package/translations/maps/utils/physicallyIndexed.js +2 -0
  714. package/translations/maps/utils/physicallyIndexed.mjs +1 -0
  715. package/utils/dataStructures/priorityMap.js +4 -2
  716. package/utils/dataStructures/priorityMap.mjs +2 -1
  717. package/utils/dataStructures/tree.js +3 -1
  718. package/utils/dataStructures/tree.mjs +1 -0
  719. package/utils/dataStructures/uniqueMap.js +3 -1
  720. package/utils/dataStructures/uniqueMap.mjs +2 -1
  721. package/utils/dataStructures/uniqueSet.js +2 -0
  722. package/utils/dataStructures/uniqueSet.mjs +1 -0
  723. package/utils/ghostTable.js +5 -4
  724. package/utils/ghostTable.mjs +3 -3
  725. package/utils/interval.js +1 -2
  726. package/utils/interval.mjs +0 -1
  727. package/utils/parseTable.d.ts +5 -0
  728. package/utils/parseTable.js +2 -2
  729. package/utils/parseTable.mjs +1 -1
  730. package/utils/rootInstance.js +3 -2
  731. package/utils/samplesGenerator.js +0 -1
  732. package/utils/samplesGenerator.mjs +0 -1
  733. package/utils/staticRegister.js +3 -1
  734. package/utils/staticRegister.mjs +1 -0
  735. package/validators/autocompleteValidator/autocompleteValidator.d.ts +5 -0
  736. package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
  737. package/validators/autocompleteValidator/index.d.ts +1 -0
  738. package/validators/base.d.ts +6 -0
  739. package/validators/dateValidator/dateValidator.d.ts +5 -0
  740. package/validators/dateValidator/dateValidator.js +2 -2
  741. package/validators/dateValidator/index.d.ts +1 -0
  742. package/validators/index.d.ts +33 -0
  743. package/validators/index.js +13 -2
  744. package/validators/index.mjs +16 -4
  745. package/validators/numericValidator/index.d.ts +1 -0
  746. package/validators/numericValidator/numericValidator.d.ts +5 -0
  747. package/validators/numericValidator/numericValidator.js +1 -1
  748. package/validators/registry.d.ts +18 -0
  749. package/validators/registry.js +3 -2
  750. package/validators/timeValidator/index.d.ts +1 -0
  751. package/validators/timeValidator/timeValidator.d.ts +5 -0
  752. package/validators/timeValidator/timeValidator.js +3 -1
  753. package/validators/timeValidator/timeValidator.mjs +1 -0
  754. package/handsontable-general-terms.pdf +0 -0
  755. package/handsontable.d.ts +0 -2616
  756. package/plugins/formulas/autofill.js +0 -180
  757. package/plugins/formulas/autofill.mjs +0 -172
@@ -0,0 +1,5 @@
1
+ export function isNumeric(value: any, additionalDelimiters?: string[]): boolean;
2
+ export function isNumericLike(value: any): boolean;
3
+ export function rangeEach(rangeFrom: number, rangeTo: number, iteratee: (index: number) => void): void;
4
+ export function rangeEachReverse(rangeFrom: number, rangeTo: number, iteratee: (index: number) => void): void;
5
+ export function valueAccordingPercent(value: number, percent: string | number): number;
package/helpers/number.js CHANGED
@@ -1,51 +1,126 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.array.slice.js");
4
+
5
+ require("core-js/modules/es.function.name.js");
6
+
3
7
  exports.__esModule = true;
4
8
  exports.isNumeric = isNumeric;
9
+ exports.isNumericLike = isNumericLike;
5
10
  exports.rangeEach = rangeEach;
6
11
  exports.rangeEachReverse = rangeEachReverse;
7
12
  exports.valueAccordingPercent = valueAccordingPercent;
8
13
 
9
14
  require("core-js/modules/es.regexp.exec.js");
10
15
 
11
- require("core-js/modules/es.string.replace.js");
16
+ require("core-js/modules/es.array.join.js");
17
+
18
+ require("core-js/modules/es.array.map.js");
19
+
20
+ require("core-js/modules/es.array.from.js");
21
+
22
+ require("core-js/modules/es.string.iterator.js");
23
+
24
+ require("core-js/modules/es.array.iterator.js");
12
25
 
13
26
  require("core-js/modules/es.object.to-string.js");
14
27
 
28
+ require("core-js/modules/es.set.js");
29
+
30
+ require("core-js/modules/web.dom-collections.iterator.js");
31
+
32
+ require("core-js/modules/es.array.concat.js");
33
+
34
+ require("core-js/modules/es.regexp.constructor.js");
35
+
15
36
  require("core-js/modules/es.regexp.to-string.js");
16
37
 
38
+ require("core-js/modules/es.string.trim.js");
39
+
40
+ require("core-js/modules/es.string.replace.js");
41
+
17
42
  require("core-js/modules/es.symbol.js");
18
43
 
19
44
  require("core-js/modules/es.symbol.description.js");
20
45
 
21
46
  require("core-js/modules/es.symbol.iterator.js");
22
47
 
23
- require("core-js/modules/es.array.iterator.js");
48
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
24
49
 
25
- require("core-js/modules/es.string.iterator.js");
50
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
26
51
 
27
- require("core-js/modules/web.dom-collections.iterator.js");
52
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
53
+
54
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
55
+
56
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
57
+
58
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
28
59
 
29
60
  function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
30
61
 
62
+ /* eslint-disable jsdoc/require-description-complete-sentence */
63
+
31
64
  /**
32
- * Checks if value of n is a numeric one
33
- * http://jsperf.com/isnan-vs-isnumeric/4.
65
+ * Checks if the passed value is numeric one. For example these values (passed as string or number)
66
+ * are considered as numeric values:
67
+ * - 0.001
68
+ * - .001
69
+ * - - 10000
70
+ * - 10000
71
+ * - 1e+26
72
+ * - 22e-26
73
+ * - .45e+26
74
+ * - 0xabcdef (hex)
75
+ * - 0x1 (hex)
34
76
  *
35
77
  * @param {*} value The value to check.
78
+ * @param {string[]} additionalDelimiters An additional delimiters to be used while checking the numeric value.
36
79
  * @returns {boolean}
37
80
  */
38
81
  function isNumeric(value) {
39
- /* eslint-disable */
40
- var t = _typeof(value);
82
+ var additionalDelimiters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
83
+
84
+ var type = _typeof(value);
85
+
86
+ if (type === 'number') {
87
+ return !isNaN(value) && isFinite(value);
88
+ } else if (type === 'string') {
89
+ if (value.length === 0) {
90
+ return false;
91
+ } else if (value.length === 1) {
92
+ return /\d/.test(value);
93
+ }
94
+
95
+ var delimiter = Array.from(new Set(['.'].concat(_toConsumableArray(additionalDelimiters)))).map(function (d) {
96
+ return "\\".concat(d);
97
+ }).join('|');
98
+ return new RegExp("^[+-]?\\s*(((".concat(delimiter, ")?\\d+((").concat(delimiter, ")\\d+)?(e[+-]?\\d+)?)|(0x[a-f\\d]+))$"), 'i').test(value.trim());
99
+ } else if (type === 'object') {
100
+ return !!value && typeof value.valueOf() === 'number' && !(value instanceof Date);
101
+ }
102
+
103
+ return false;
104
+ }
105
+ /* eslint-enable jsdoc/require-description-complete-sentence */
106
+
107
+ /**
108
+ * Checks if the passed value is numeric-like value. The helper returns `true` for the same
109
+ * values as for the `isNumeric` function plus `true` for numbers delimited by comma.
110
+ *
111
+ * @param {*} value The value to check.
112
+ * @returns {boolean}
113
+ */
114
+
41
115
 
42
- return t == 'number' ? !isNaN(value) && isFinite(value) : t == 'string' ? !value.length ? false : value.length == 1 ? /\d/.test(value) : /^\s*[+-]?\s*(?:(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?)|(?:0x[a-f\d]+))\s*$/i.test(value) : t == 'object' ? !!value && typeof value.valueOf() == 'number' && !(value instanceof Date) : false;
116
+ function isNumericLike(value) {
117
+ return isNumeric(value, [',']);
43
118
  }
44
119
  /**
45
120
  * A specialized version of `.forEach` defined by ranges.
46
121
  *
47
- * @param {Number} rangeFrom The number from start iterate.
48
- * @param {Number|Function} rangeTo The number where finish iterate or function as a iteratee.
122
+ * @param {number} rangeFrom The number from start iterate.
123
+ * @param {number|Function} rangeTo The number where finish iterate or function as a iteratee.
49
124
  * @param {Function} [iteratee] The function invoked per iteration.
50
125
  */
51
126
 
@@ -59,6 +134,8 @@ function rangeEach(rangeFrom, rangeTo, iteratee) {
59
134
  } else {
60
135
  index = rangeFrom - 1;
61
136
  }
137
+ /* eslint-disable-next-line no-plusplus */
138
+
62
139
 
63
140
  while (++index <= rangeTo) {
64
141
  if (iteratee(index) === false) {
@@ -69,8 +146,8 @@ function rangeEach(rangeFrom, rangeTo, iteratee) {
69
146
  /**
70
147
  * A specialized version of `.forEach` defined by ranges iterable in reverse order.
71
148
  *
72
- * @param {Number} rangeFrom The number from start iterate.
73
- * @param {Number|Function} rangeTo The number where finish iterate or function as a iteratee.
149
+ * @param {number} rangeFrom The number from start iterate.
150
+ * @param {number|Function} rangeTo The number where finish iterate or function as a iteratee.
74
151
  * @param {Function} [iteratee] The function invoked per iteration.
75
152
  */
76
153
 
@@ -82,6 +159,8 @@ function rangeEachReverse(rangeFrom, rangeTo, iteratee) {
82
159
  iteratee = rangeTo;
83
160
  rangeTo = 0;
84
161
  }
162
+ /* eslint-disable-next-line no-plusplus */
163
+
85
164
 
86
165
  while (--index >= rangeTo) {
87
166
  if (iteratee(index) === false) {
@@ -92,14 +171,14 @@ function rangeEachReverse(rangeFrom, rangeTo, iteratee) {
92
171
  /**
93
172
  * Calculate value from percent.
94
173
  *
95
- * @param {Number} value Base value from percent will be calculated.
96
- * @param {String|Number} percent Can be Number or String (eq. `'33%'`).
97
- * @returns {Number}
174
+ * @param {number} value Base value from percent will be calculated.
175
+ * @param {string|number} percent Can be number or string (eq. `'33%'`).
176
+ * @returns {number}
98
177
  */
99
178
 
100
179
 
101
180
  function valueAccordingPercent(value, percent) {
102
- percent = parseInt(percent.toString().replace('%', ''), 10);
181
+ percent = parseInt(percent.tostring().replace('%', ''), 10);
103
182
  percent = parseInt(value * percent / 100, 10);
104
183
  return percent;
105
184
  }
@@ -1,34 +1,98 @@
1
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
+
3
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+
5
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
6
+
7
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
8
+
9
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
10
+
11
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
12
+
1
13
  import "core-js/modules/es.regexp.exec.js";
2
- import "core-js/modules/es.string.replace.js";
14
+ import "core-js/modules/es.array.join.js";
15
+ import "core-js/modules/es.array.map.js";
16
+ import "core-js/modules/es.array.from.js";
17
+ import "core-js/modules/es.string.iterator.js";
18
+ import "core-js/modules/es.array.iterator.js";
3
19
  import "core-js/modules/es.object.to-string.js";
20
+ import "core-js/modules/es.set.js";
21
+ import "core-js/modules/web.dom-collections.iterator.js";
22
+ import "core-js/modules/es.array.concat.js";
23
+ import "core-js/modules/es.regexp.constructor.js";
4
24
  import "core-js/modules/es.regexp.to-string.js";
25
+ import "core-js/modules/es.string.trim.js";
26
+ import "core-js/modules/es.string.replace.js";
5
27
  import "core-js/modules/es.symbol.js";
6
28
  import "core-js/modules/es.symbol.description.js";
7
29
  import "core-js/modules/es.symbol.iterator.js";
8
- import "core-js/modules/es.array.iterator.js";
9
- import "core-js/modules/es.string.iterator.js";
10
- import "core-js/modules/web.dom-collections.iterator.js";
30
+ import "core-js/modules/es.array.slice.js";
31
+ import "core-js/modules/es.function.name.js";
11
32
 
12
33
  function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
13
34
 
35
+ /* eslint-disable jsdoc/require-description-complete-sentence */
36
+
14
37
  /**
15
- * Checks if value of n is a numeric one
16
- * http://jsperf.com/isnan-vs-isnumeric/4.
38
+ * Checks if the passed value is numeric one. For example these values (passed as string or number)
39
+ * are considered as numeric values:
40
+ * - 0.001
41
+ * - .001
42
+ * - - 10000
43
+ * - 10000
44
+ * - 1e+26
45
+ * - 22e-26
46
+ * - .45e+26
47
+ * - 0xabcdef (hex)
48
+ * - 0x1 (hex)
17
49
  *
18
50
  * @param {*} value The value to check.
51
+ * @param {string[]} additionalDelimiters An additional delimiters to be used while checking the numeric value.
19
52
  * @returns {boolean}
20
53
  */
21
54
  export function isNumeric(value) {
22
- /* eslint-disable */
23
- var t = _typeof(value);
55
+ var additionalDelimiters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
24
56
 
25
- return t == 'number' ? !isNaN(value) && isFinite(value) : t == 'string' ? !value.length ? false : value.length == 1 ? /\d/.test(value) : /^\s*[+-]?\s*(?:(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?)|(?:0x[a-f\d]+))\s*$/i.test(value) : t == 'object' ? !!value && typeof value.valueOf() == 'number' && !(value instanceof Date) : false;
57
+ var type = _typeof(value);
58
+
59
+ if (type === 'number') {
60
+ return !isNaN(value) && isFinite(value);
61
+ } else if (type === 'string') {
62
+ if (value.length === 0) {
63
+ return false;
64
+ } else if (value.length === 1) {
65
+ return /\d/.test(value);
66
+ }
67
+
68
+ var delimiter = Array.from(new Set(['.'].concat(_toConsumableArray(additionalDelimiters)))).map(function (d) {
69
+ return "\\".concat(d);
70
+ }).join('|');
71
+ return new RegExp("^[+-]?\\s*(((".concat(delimiter, ")?\\d+((").concat(delimiter, ")\\d+)?(e[+-]?\\d+)?)|(0x[a-f\\d]+))$"), 'i').test(value.trim());
72
+ } else if (type === 'object') {
73
+ return !!value && typeof value.valueOf() === 'number' && !(value instanceof Date);
74
+ }
75
+
76
+ return false;
77
+ }
78
+ /* eslint-enable jsdoc/require-description-complete-sentence */
79
+
80
+ /**
81
+ * Checks if the passed value is numeric-like value. The helper returns `true` for the same
82
+ * values as for the `isNumeric` function plus `true` for numbers delimited by comma.
83
+ *
84
+ * @param {*} value The value to check.
85
+ * @returns {boolean}
86
+ */
87
+
88
+ export function isNumericLike(value) {
89
+ return isNumeric(value, [',']);
26
90
  }
27
91
  /**
28
92
  * A specialized version of `.forEach` defined by ranges.
29
93
  *
30
- * @param {Number} rangeFrom The number from start iterate.
31
- * @param {Number|Function} rangeTo The number where finish iterate or function as a iteratee.
94
+ * @param {number} rangeFrom The number from start iterate.
95
+ * @param {number|Function} rangeTo The number where finish iterate or function as a iteratee.
32
96
  * @param {Function} [iteratee] The function invoked per iteration.
33
97
  */
34
98
 
@@ -41,6 +105,8 @@ export function rangeEach(rangeFrom, rangeTo, iteratee) {
41
105
  } else {
42
106
  index = rangeFrom - 1;
43
107
  }
108
+ /* eslint-disable-next-line no-plusplus */
109
+
44
110
 
45
111
  while (++index <= rangeTo) {
46
112
  if (iteratee(index) === false) {
@@ -51,8 +117,8 @@ export function rangeEach(rangeFrom, rangeTo, iteratee) {
51
117
  /**
52
118
  * A specialized version of `.forEach` defined by ranges iterable in reverse order.
53
119
  *
54
- * @param {Number} rangeFrom The number from start iterate.
55
- * @param {Number|Function} rangeTo The number where finish iterate or function as a iteratee.
120
+ * @param {number} rangeFrom The number from start iterate.
121
+ * @param {number|Function} rangeTo The number where finish iterate or function as a iteratee.
56
122
  * @param {Function} [iteratee] The function invoked per iteration.
57
123
  */
58
124
 
@@ -63,6 +129,8 @@ export function rangeEachReverse(rangeFrom, rangeTo, iteratee) {
63
129
  iteratee = rangeTo;
64
130
  rangeTo = 0;
65
131
  }
132
+ /* eslint-disable-next-line no-plusplus */
133
+
66
134
 
67
135
  while (--index >= rangeTo) {
68
136
  if (iteratee(index) === false) {
@@ -73,13 +141,13 @@ export function rangeEachReverse(rangeFrom, rangeTo, iteratee) {
73
141
  /**
74
142
  * Calculate value from percent.
75
143
  *
76
- * @param {Number} value Base value from percent will be calculated.
77
- * @param {String|Number} percent Can be Number or String (eq. `'33%'`).
78
- * @returns {Number}
144
+ * @param {number} value Base value from percent will be calculated.
145
+ * @param {string|number} percent Can be number or string (eq. `'33%'`).
146
+ * @returns {number}
79
147
  */
80
148
 
81
149
  export function valueAccordingPercent(value, percent) {
82
- percent = parseInt(percent.toString().replace('%', ''), 10);
150
+ percent = parseInt(percent.tostring().replace('%', ''), 10);
83
151
  percent = parseInt(value * percent / 100, 10);
84
152
  return percent;
85
153
  }
@@ -0,0 +1,16 @@
1
+ export function duckSchema(object: any[] | object): any[] | object;
2
+ export function inherit(Child: object, Parent: object): object;
3
+ export function extend(target: object, extension: object, writableKeys?: string[]): object;
4
+ export function deepExtend(target: object, extension: object): void;
5
+ export function deepClone(obj: object): object;
6
+ export function clone(object: object): object;
7
+ export function mixin(Base: object, ...mixins: object[]): object;
8
+ export function isObjectEqual(object1: object | any[], object2: object | any[]): boolean;
9
+ export function isObject(object: any): boolean;
10
+ export function defineGetter(object: object, property: any, value: any, options: object): void;
11
+ export function objectEach(object: object, iteratee: (value: any, key: any, object: object) => void): object;
12
+ export function getProperty(object: object, name: string): any;
13
+ export function setProperty(object: object, name: string, value: any): void;
14
+ export function deepObjectSize(object: object): number;
15
+ export function createObjectPropListener(defaultValue?: any, propertyToListen?: string): object;
16
+ export function hasOwnProperty(object: object, key: string): boolean;
package/helpers/object.js CHANGED
@@ -1,22 +1,22 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
+ exports.clone = clone;
5
+ exports.createObjectPropListener = createObjectPropListener;
6
+ exports.deepClone = deepClone;
7
+ exports.deepExtend = deepExtend;
8
+ exports.deepObjectSize = deepObjectSize;
9
+ exports.defineGetter = defineGetter;
4
10
  exports.duckSchema = duckSchema;
5
- exports.inherit = inherit;
6
11
  exports.extend = extend;
7
- exports.deepExtend = deepExtend;
8
- exports.deepClone = deepClone;
9
- exports.clone = clone;
10
- exports.mixin = mixin;
11
- exports.isObjectEqual = isObjectEqual;
12
+ exports.getProperty = getProperty;
13
+ exports.hasOwnProperty = hasOwnProperty;
14
+ exports.inherit = inherit;
12
15
  exports.isObject = isObject;
13
- exports.defineGetter = defineGetter;
16
+ exports.isObjectEqual = isObjectEqual;
17
+ exports.mixin = mixin;
14
18
  exports.objectEach = objectEach;
15
- exports.getProperty = getProperty;
16
19
  exports.setProperty = setProperty;
17
- exports.deepObjectSize = deepObjectSize;
18
- exports.createObjectPropListener = createObjectPropListener;
19
- exports.hasOwnProperty = hasOwnProperty;
20
20
 
21
21
  require("core-js/modules/es.array.includes.js");
22
22
 
@@ -0,0 +1,7 @@
1
+ export function toUpperCaseFirst(string: string): string;
2
+ export function equalsIgnoreCase(...strings: string[]): boolean;
3
+ export function randomString(): string;
4
+ export function isPercentValue(value: string): boolean;
5
+ export function substitute(template: string, variables?: object): string;
6
+ export function stripTags(string: string): string;
7
+ export function sanitize(string: string, options?: any): string;
package/helpers/string.js CHANGED
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.toUpperCaseFirst = toUpperCaseFirst;
5
4
  exports.equalsIgnoreCase = equalsIgnoreCase;
6
- exports.randomString = randomString;
7
5
  exports.isPercentValue = isPercentValue;
8
- exports.substitute = substitute;
9
- exports.stripTags = stripTags;
6
+ exports.randomString = randomString;
10
7
  exports.sanitize = sanitize;
8
+ exports.stripTags = stripTags;
9
+ exports.substitute = substitute;
10
+ exports.toUpperCaseFirst = toUpperCaseFirst;
11
11
 
12
12
  require("core-js/modules/es.array.index-of.js");
13
13
 
@@ -0,0 +1 @@
1
+ export function toSingleLine(strings: string[], ...expressions: string[]): string;
@@ -0,0 +1,73 @@
1
+ export function isPrintableChar(keyCode: number): boolean;
2
+ export function isFunctionKey(keyCode: number): boolean;
3
+ export function isCtrlKey(keyCode: number): boolean;
4
+ export function isCtrlMetaKey(keyCode: number): boolean;
5
+ export function isKey(keyCode: number, baseCode: string): boolean;
6
+ export enum KEY_CODES {
7
+ ALT = 18,
8
+ ARROW_DOWN = 40,
9
+ ARROW_LEFT = 37,
10
+ ARROW_RIGHT = 39,
11
+ ARROW_UP = 38,
12
+ AUDIO_DOWN = 174,
13
+ AUDIO_MUTE = 173,
14
+ AUDIO_UP = 175,
15
+ BACKSPACE = 8,
16
+ CAPS_LOCK = 20,
17
+ COMMA = 188,
18
+ COMMAND_LEFT = 91,
19
+ COMMAND_RIGHT = 93,
20
+ COMMAND_FIREFOX = 224,
21
+ CONTROL = 17,
22
+ DELETE = 46,
23
+ END = 35,
24
+ ENTER = 13,
25
+ ESCAPE = 27,
26
+ F1 = 112,
27
+ F2 = 113,
28
+ F3 = 114,
29
+ F4 = 115,
30
+ F5 = 116,
31
+ F6 = 117,
32
+ F7 = 118,
33
+ F8 = 119,
34
+ F9 = 120,
35
+ F10 = 121,
36
+ F11 = 122,
37
+ F12 = 123,
38
+ F13 = 124,
39
+ F14 = 125,
40
+ F15 = 126,
41
+ F16 = 127,
42
+ F17 = 128,
43
+ F18 = 129,
44
+ F19 = 130,
45
+ HOME = 36,
46
+ INSERT = 45,
47
+ MEDIA_NEXT = 176,
48
+ MEDIA_PLAY_PAUSE = 179,
49
+ MEDIA_PREV = 177,
50
+ MEDIA_STOP = 178,
51
+ NULL = 0,
52
+ NUM_LOCK = 144,
53
+ PAGE_DOWN = 34,
54
+ PAGE_UP = 33,
55
+ PAUSE = 19,
56
+ PERIOD = 190,
57
+ SCROLL_LOCK = 145,
58
+ SHIFT = 16,
59
+ SPACE = 32,
60
+ TAB = 9,
61
+ A = 65,
62
+ C = 67,
63
+ D = 68,
64
+ F = 70,
65
+ L = 76,
66
+ O = 79,
67
+ P = 80,
68
+ S = 83,
69
+ V = 86,
70
+ X = 88,
71
+ Y = 89,
72
+ Z = 90,
73
+ }
@@ -1,14 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.isPrintableChar = isPrintableChar;
5
- exports.isMetaKey = isMetaKey;
4
+ exports.KEY_CODES = void 0;
6
5
  exports.isCtrlKey = isCtrlKey;
7
6
  exports.isCtrlMetaKey = isCtrlMetaKey;
7
+ exports.isFunctionKey = isFunctionKey;
8
8
  exports.isKey = isKey;
9
- exports.KEY_CODES = void 0;
10
-
11
- require("core-js/modules/es.array.index-of.js");
9
+ exports.isPrintableChar = isPrintableChar;
12
10
 
13
11
  require("core-js/modules/es.array.includes.js");
14
12
 
@@ -20,34 +18,28 @@ require("core-js/modules/es.string.split.js");
20
18
 
21
19
  var _array = require("./array");
22
20
 
21
+ var _browser = require("./browser");
22
+
23
23
  var KEY_CODES = {
24
- MOUSE_LEFT: 1,
25
- MOUSE_RIGHT: 3,
26
- MOUSE_MIDDLE: 2,
24
+ ALT: 18,
25
+ ARROW_DOWN: 40,
26
+ ARROW_LEFT: 37,
27
+ ARROW_RIGHT: 39,
28
+ ARROW_UP: 38,
29
+ AUDIO_DOWN: (0, _browser.isFirefox)() ? 182 : 174,
30
+ AUDIO_MUTE: (0, _browser.isFirefox)() ? 181 : 173,
31
+ AUDIO_UP: (0, _browser.isFirefox)() ? 183 : 175,
27
32
  BACKSPACE: 8,
33
+ CAPS_LOCK: 20,
28
34
  COMMA: 188,
29
- INSERT: 45,
35
+ COMMAND_LEFT: 91,
36
+ COMMAND_RIGHT: 93,
37
+ COMMAND_FIREFOX: 224,
38
+ CONTROL: 17,
30
39
  DELETE: 46,
31
40
  END: 35,
32
41
  ENTER: 13,
33
42
  ESCAPE: 27,
34
- CONTROL: 17,
35
- COMMAND_LEFT: 91,
36
- COMMAND_RIGHT: 93,
37
- COMMAND_FIREFOX: 224,
38
- ALT: 18,
39
- HOME: 36,
40
- PAGE_DOWN: 34,
41
- PAGE_UP: 33,
42
- PERIOD: 190,
43
- SPACE: 32,
44
- SHIFT: 16,
45
- CAPS_LOCK: 20,
46
- TAB: 9,
47
- ARROW_RIGHT: 39,
48
- ARROW_LEFT: 37,
49
- ARROW_UP: 38,
50
- ARROW_DOWN: 40,
51
43
  F1: 112,
52
44
  F2: 113,
53
45
  F3: 114,
@@ -60,6 +52,29 @@ var KEY_CODES = {
60
52
  F10: 121,
61
53
  F11: 122,
62
54
  F12: 123,
55
+ F13: 124,
56
+ F14: 125,
57
+ F15: 126,
58
+ F16: 127,
59
+ F17: 128,
60
+ F18: 129,
61
+ F19: 130,
62
+ HOME: 36,
63
+ INSERT: 45,
64
+ MEDIA_NEXT: 176,
65
+ MEDIA_PLAY_PAUSE: 179,
66
+ MEDIA_PREV: 177,
67
+ MEDIA_STOP: 178,
68
+ NULL: 0,
69
+ NUM_LOCK: 144,
70
+ PAGE_DOWN: 34,
71
+ PAGE_UP: 33,
72
+ PAUSE: 19,
73
+ PERIOD: 190,
74
+ SCROLL_LOCK: 145,
75
+ SHIFT: 16,
76
+ SPACE: 32,
77
+ TAB: 9,
63
78
  A: 65,
64
79
  C: 67,
65
80
  D: 68,
@@ -69,8 +84,12 @@ var KEY_CODES = {
69
84
  P: 80,
70
85
  S: 83,
71
86
  V: 86,
72
- X: 88
87
+ X: 88,
88
+ Y: 89,
89
+ Z: 90
73
90
  };
91
+ exports.KEY_CODES = KEY_CODES;
92
+ var FUNCTION_KEYS = [KEY_CODES.ALT, KEY_CODES.ARROW_DOWN, KEY_CODES.ARROW_LEFT, KEY_CODES.ARROW_RIGHT, KEY_CODES.ARROW_UP, KEY_CODES.AUDIO_DOWN, KEY_CODES.AUDIO_MUTE, KEY_CODES.AUDIO_UP, KEY_CODES.BACKSPACE, KEY_CODES.CAPS_LOCK, KEY_CODES.DELETE, KEY_CODES.END, KEY_CODES.ENTER, KEY_CODES.ESCAPE, KEY_CODES.F1, KEY_CODES.F2, KEY_CODES.F3, KEY_CODES.F4, KEY_CODES.F5, KEY_CODES.F6, KEY_CODES.F7, KEY_CODES.F8, KEY_CODES.F9, KEY_CODES.F10, KEY_CODES.F11, KEY_CODES.F12, KEY_CODES.F13, KEY_CODES.F14, KEY_CODES.F15, KEY_CODES.F16, KEY_CODES.F17, KEY_CODES.F18, KEY_CODES.F19, KEY_CODES.HOME, KEY_CODES.INSERT, KEY_CODES.MEDIA_NEXT, KEY_CODES.MEDIA_PLAY_PAUSE, KEY_CODES.MEDIA_PREV, KEY_CODES.MEDIA_STOP, KEY_CODES.NULL, KEY_CODES.NUM_LOCK, KEY_CODES.PAGE_DOWN, KEY_CODES.PAGE_UP, KEY_CODES.PAUSE, KEY_CODES.SCROLL_LOCK, KEY_CODES.SHIFT, KEY_CODES.TAB];
74
93
  /**
75
94
  * Returns true if keyCode represents a printable character.
76
95
  *
@@ -78,8 +97,6 @@ var KEY_CODES = {
78
97
  * @returns {boolean}
79
98
  */
80
99
 
81
- exports.KEY_CODES = KEY_CODES;
82
-
83
100
  function isPrintableChar(keyCode) {
84
101
  return keyCode === 32 || // space
85
102
  keyCode >= 48 && keyCode <= 57 || // 0-9
@@ -95,9 +112,8 @@ function isPrintableChar(keyCode) {
95
112
  */
96
113
 
97
114
 
98
- function isMetaKey(keyCode) {
99
- var metaKeys = [KEY_CODES.ARROW_DOWN, KEY_CODES.ARROW_UP, KEY_CODES.ARROW_LEFT, KEY_CODES.ARROW_RIGHT, KEY_CODES.HOME, KEY_CODES.END, KEY_CODES.DELETE, KEY_CODES.BACKSPACE, KEY_CODES.F1, KEY_CODES.F2, KEY_CODES.F3, KEY_CODES.F4, KEY_CODES.F5, KEY_CODES.F6, KEY_CODES.F7, KEY_CODES.F8, KEY_CODES.F9, KEY_CODES.F10, KEY_CODES.F11, KEY_CODES.F12, KEY_CODES.TAB, KEY_CODES.PAGE_DOWN, KEY_CODES.PAGE_UP, KEY_CODES.ENTER, KEY_CODES.ESCAPE, KEY_CODES.SHIFT, KEY_CODES.CAPS_LOCK, KEY_CODES.ALT];
100
- return metaKeys.indexOf(keyCode) !== -1;
115
+ function isFunctionKey(keyCode) {
116
+ return FUNCTION_KEYS.includes(keyCode);
101
117
  }
102
118
  /**
103
119
  * Checks if passed key code is ctrl or cmd key. Depends on what OS the code runs it check key code based on
@@ -111,7 +127,7 @@ function isMetaKey(keyCode) {
111
127
  function isCtrlKey(keyCode) {
112
128
  var keys = [];
113
129
 
114
- if (navigator.platform.includes('Mac')) {
130
+ if ((0, _browser.isMacOS)()) {
115
131
  keys.push(KEY_CODES.COMMAND_LEFT, KEY_CODES.COMMAND_RIGHT, KEY_CODES.COMMAND_FIREFOX);
116
132
  } else {
117
133
  keys.push(KEY_CODES.CONTROL);