handsontable 0.0.0-next-7026906-20231107 → 0.0.0-next-7b93b7d-20231107

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


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

Files changed (316) hide show
  1. package/3rdparty/SheetClip/SheetClip.js +2 -2
  2. package/3rdparty/SheetClip/SheetClip.mjs +2 -2
  3. package/3rdparty/autoResize/autoResize.js +2 -2
  4. package/3rdparty/autoResize/autoResize.mjs +2 -2
  5. package/3rdparty/walkontable/src/calculator/viewportColumns.js +108 -85
  6. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +108 -85
  7. package/3rdparty/walkontable/src/calculator/viewportRows.js +60 -52
  8. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +60 -52
  9. package/3rdparty/walkontable/src/core/clone.js +6 -0
  10. package/3rdparty/walkontable/src/core/clone.mjs +6 -0
  11. package/3rdparty/walkontable/src/event.js +125 -74
  12. package/3rdparty/walkontable/src/event.mjs +125 -74
  13. package/3rdparty/walkontable/src/filter/column.js +16 -0
  14. package/3rdparty/walkontable/src/filter/column.mjs +16 -0
  15. package/3rdparty/walkontable/src/filter/row.js +16 -0
  16. package/3rdparty/walkontable/src/filter/row.mjs +16 -0
  17. package/3rdparty/walkontable/src/overlay/bottom.js +1 -1
  18. package/3rdparty/walkontable/src/overlay/bottom.mjs +1 -1
  19. package/3rdparty/walkontable/src/overlay/top.js +1 -1
  20. package/3rdparty/walkontable/src/overlay/top.mjs +1 -1
  21. package/3rdparty/walkontable/src/renderer/_base.js +12 -5
  22. package/3rdparty/walkontable/src/renderer/_base.mjs +12 -5
  23. package/3rdparty/walkontable/src/renderer/cells.js +6 -2
  24. package/3rdparty/walkontable/src/renderer/cells.mjs +6 -2
  25. package/3rdparty/walkontable/src/renderer/rowHeaders.js +6 -2
  26. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +6 -2
  27. package/3rdparty/walkontable/src/renderer/rows.js +5 -0
  28. package/3rdparty/walkontable/src/renderer/rows.mjs +5 -0
  29. package/3rdparty/walkontable/src/renderer/table.js +24 -17
  30. package/3rdparty/walkontable/src/renderer/table.mjs +24 -17
  31. package/3rdparty/walkontable/src/scroll.js +2 -2
  32. package/3rdparty/walkontable/src/scroll.mjs +2 -2
  33. package/3rdparty/walkontable/src/selection/border/border.js +1 -1
  34. package/3rdparty/walkontable/src/selection/border/border.mjs +1 -1
  35. package/3rdparty/walkontable/src/settings.js +10 -10
  36. package/3rdparty/walkontable/src/settings.mjs +10 -10
  37. package/3rdparty/walkontable/src/table.js +3 -3
  38. package/3rdparty/walkontable/src/table.mjs +3 -3
  39. package/3rdparty/walkontable/src/utils/column.js +19 -4
  40. package/3rdparty/walkontable/src/utils/column.mjs +19 -4
  41. package/3rdparty/walkontable/src/utils/nodesPool.js +5 -0
  42. package/3rdparty/walkontable/src/utils/nodesPool.mjs +5 -0
  43. package/3rdparty/walkontable/src/utils/orderView/view.js +13 -6
  44. package/3rdparty/walkontable/src/utils/orderView/view.mjs +13 -6
  45. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +9 -6
  46. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +9 -6
  47. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +7 -4
  48. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +7 -4
  49. package/3rdparty/walkontable/src/utils/row.js +14 -2
  50. package/3rdparty/walkontable/src/utils/row.mjs +14 -2
  51. package/3rdparty/walkontable/src/viewport.js +9 -9
  52. package/3rdparty/walkontable/src/viewport.mjs +9 -9
  53. package/base.js +2 -2
  54. package/base.mjs +2 -2
  55. package/core.js +25 -25
  56. package/core.mjs +25 -25
  57. package/dataMap/dataMap.js +99 -90
  58. package/dataMap/dataMap.mjs +99 -90
  59. package/dataMap/dataSource.js +14 -8
  60. package/dataMap/dataSource.mjs +14 -8
  61. package/dataMap/metaManager/lazyFactoryMap.js +19 -7
  62. package/dataMap/metaManager/lazyFactoryMap.mjs +19 -7
  63. package/dataMap/metaManager/metaLayers/cellMeta.js +8 -3
  64. package/dataMap/metaManager/metaLayers/cellMeta.mjs +8 -3
  65. package/dataMap/metaManager/metaLayers/columnMeta.js +7 -1
  66. package/dataMap/metaManager/metaLayers/columnMeta.mjs +7 -1
  67. package/dataMap/metaManager/metaLayers/globalMeta.js +6 -1
  68. package/dataMap/metaManager/metaLayers/globalMeta.mjs +6 -1
  69. package/dataMap/metaManager/metaLayers/tableMeta.js +6 -2
  70. package/dataMap/metaManager/metaLayers/tableMeta.mjs +6 -2
  71. package/dataMap/metaManager/metaSchema.js +55 -55
  72. package/dataMap/metaManager/metaSchema.mjs +55 -55
  73. package/dataMap/metaManager/mods/dynamicCellMeta.js +7 -2
  74. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +7 -2
  75. package/dataMap/metaManager/mods/extendMetaProperties.js +8 -4
  76. package/dataMap/metaManager/mods/extendMetaProperties.mjs +8 -4
  77. package/dataMap/metaManager/utils.js +2 -2
  78. package/dataMap/metaManager/utils.mjs +2 -2
  79. package/dist/handsontable.css +2 -2
  80. package/dist/handsontable.full.css +2 -2
  81. package/dist/handsontable.full.js +7244 -6347
  82. package/dist/handsontable.full.min.css +2 -2
  83. package/dist/handsontable.full.min.js +120 -120
  84. package/dist/handsontable.js +7243 -6346
  85. package/dist/handsontable.min.css +2 -2
  86. package/dist/handsontable.min.js +28 -28
  87. package/editorManager.js +105 -95
  88. package/editorManager.mjs +105 -95
  89. package/editors/autocompleteEditor/autocompleteEditor.js +47 -46
  90. package/editors/autocompleteEditor/autocompleteEditor.mjs +46 -45
  91. package/editors/baseEditor/baseEditor.js +23 -26
  92. package/editors/baseEditor/baseEditor.mjs +23 -26
  93. package/editors/dateEditor/dateEditor.js +24 -15
  94. package/editors/dateEditor/dateEditor.mjs +24 -15
  95. package/editors/dropdownEditor/dropdownEditor.js +1 -1
  96. package/editors/dropdownEditor/dropdownEditor.mjs +1 -1
  97. package/editors/handsontableEditor/handsontableEditor.js +4 -4
  98. package/editors/handsontableEditor/handsontableEditor.mjs +4 -4
  99. package/editors/textEditor/textEditor.js +23 -17
  100. package/editors/textEditor/textEditor.mjs +24 -18
  101. package/eventManager.js +8 -0
  102. package/eventManager.mjs +8 -0
  103. package/helpers/array.js +2 -2
  104. package/helpers/array.mjs +2 -2
  105. package/helpers/dom/element.js +7 -7
  106. package/helpers/dom/element.mjs +7 -7
  107. package/helpers/function.js +1 -1
  108. package/helpers/function.mjs +1 -1
  109. package/helpers/mixed.js +1 -1
  110. package/helpers/mixed.mjs +1 -1
  111. package/helpers/object.js +4 -4
  112. package/helpers/object.mjs +4 -4
  113. package/helpers/string.js +1 -1
  114. package/helpers/string.mjs +1 -1
  115. package/package.json +1 -1
  116. package/pluginHooks.d.ts +0 -2
  117. package/pluginHooks.js +12 -3
  118. package/pluginHooks.mjs +12 -3
  119. package/plugins/autoColumnSize/autoColumnSize.js +141 -130
  120. package/plugins/autoColumnSize/autoColumnSize.mjs +140 -129
  121. package/plugins/autoRowSize/autoRowSize.js +112 -125
  122. package/plugins/autoRowSize/autoRowSize.mjs +110 -123
  123. package/plugins/autofill/autofill.js +97 -102
  124. package/plugins/autofill/autofill.mjs +96 -101
  125. package/plugins/base/base.js +57 -22
  126. package/plugins/base/base.mjs +56 -22
  127. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +29 -24
  128. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +28 -23
  129. package/plugins/collapsibleColumns/collapsibleColumns.js +104 -107
  130. package/plugins/collapsibleColumns/collapsibleColumns.mjs +102 -104
  131. package/plugins/columnSorting/columnSorting.js +105 -98
  132. package/plugins/columnSorting/columnSorting.mjs +104 -97
  133. package/plugins/columnSorting/columnStatesManager.js +12 -6
  134. package/plugins/columnSorting/columnStatesManager.mjs +12 -6
  135. package/plugins/columnSummary/columnSummary.js +71 -58
  136. package/plugins/columnSummary/columnSummary.mjs +70 -57
  137. package/plugins/columnSummary/endpoints.js +20 -14
  138. package/plugins/columnSummary/endpoints.mjs +20 -14
  139. package/plugins/comments/commentEditor.js +30 -2
  140. package/plugins/comments/commentEditor.mjs +30 -2
  141. package/plugins/comments/comments.js +158 -169
  142. package/plugins/comments/comments.mjs +157 -168
  143. package/plugins/comments/displaySwitch.js +7 -3
  144. package/plugins/comments/displaySwitch.mjs +7 -3
  145. package/plugins/contextMenu/commandExecutor.js +15 -2
  146. package/plugins/contextMenu/commandExecutor.mjs +15 -2
  147. package/plugins/contextMenu/contextMenu.js +91 -101
  148. package/plugins/contextMenu/contextMenu.mjs +90 -100
  149. package/plugins/contextMenu/itemsFactory.js +19 -4
  150. package/plugins/contextMenu/itemsFactory.mjs +19 -4
  151. package/plugins/contextMenu/menu/cursor.js +36 -0
  152. package/plugins/contextMenu/menu/cursor.mjs +36 -0
  153. package/plugins/contextMenu/menu/menu.js +57 -5
  154. package/plugins/contextMenu/menu/menu.mjs +57 -5
  155. package/plugins/copyPaste/copyPaste.js +74 -75
  156. package/plugins/copyPaste/copyPaste.mjs +74 -75
  157. package/plugins/customBorders/customBorders.js +49 -48
  158. package/plugins/customBorders/customBorders.mjs +48 -47
  159. package/plugins/dragToScroll/dragToScroll.js +50 -54
  160. package/plugins/dragToScroll/dragToScroll.mjs +49 -52
  161. package/plugins/dropdownMenu/dropdownMenu.js +132 -129
  162. package/plugins/dropdownMenu/dropdownMenu.mjs +132 -129
  163. package/plugins/exportFile/dataProvider.js +7 -2
  164. package/plugins/exportFile/dataProvider.mjs +7 -2
  165. package/plugins/exportFile/exportFile.js +1 -1
  166. package/plugins/exportFile/exportFile.mjs +1 -1
  167. package/plugins/exportFile/types/_base.js +14 -6
  168. package/plugins/exportFile/types/_base.mjs +14 -6
  169. package/plugins/filters/component/actionBar.js +9 -0
  170. package/plugins/filters/component/actionBar.mjs +9 -0
  171. package/plugins/filters/component/condition.js +13 -0
  172. package/plugins/filters/component/condition.mjs +13 -0
  173. package/plugins/filters/component/operators.js +9 -0
  174. package/plugins/filters/component/operators.mjs +9 -0
  175. package/plugins/filters/component/value.js +9 -0
  176. package/plugins/filters/component/value.mjs +9 -0
  177. package/plugins/filters/conditionCollection.js +9 -4
  178. package/plugins/filters/conditionCollection.mjs +9 -4
  179. package/plugins/filters/conditionUpdateObserver.js +53 -42
  180. package/plugins/filters/conditionUpdateObserver.mjs +53 -42
  181. package/plugins/filters/dataFilter.js +9 -3
  182. package/plugins/filters/dataFilter.mjs +9 -3
  183. package/plugins/filters/filters.js +184 -189
  184. package/plugins/filters/filters.mjs +182 -187
  185. package/plugins/filters/ui/_base.js +1 -1
  186. package/plugins/filters/ui/_base.mjs +1 -1
  187. package/plugins/filters/utils.js +1 -1
  188. package/plugins/filters/utils.mjs +1 -1
  189. package/plugins/formulas/engine/settings.js +1 -1
  190. package/plugins/formulas/engine/settings.mjs +1 -1
  191. package/plugins/formulas/formulas.js +684 -602
  192. package/plugins/formulas/formulas.mjs +682 -600
  193. package/plugins/hiddenColumns/hiddenColumns.js +174 -169
  194. package/plugins/hiddenColumns/hiddenColumns.mjs +173 -168
  195. package/plugins/hiddenRows/hiddenRows.js +170 -165
  196. package/plugins/hiddenRows/hiddenRows.mjs +169 -164
  197. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
  198. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  199. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
  200. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  201. package/plugins/manualColumnFreeze/manualColumnFreeze.js +67 -54
  202. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +64 -51
  203. package/plugins/manualColumnMove/manualColumnMove.js +287 -232
  204. package/plugins/manualColumnMove/manualColumnMove.mjs +286 -231
  205. package/plugins/manualColumnMove/ui/_base.js +9 -3
  206. package/plugins/manualColumnMove/ui/_base.mjs +9 -3
  207. package/plugins/manualColumnResize/manualColumnResize.js +291 -246
  208. package/plugins/manualColumnResize/manualColumnResize.mjs +290 -244
  209. package/plugins/manualRowMove/manualRowMove.js +223 -208
  210. package/plugins/manualRowMove/manualRowMove.mjs +222 -207
  211. package/plugins/manualRowMove/ui/_base.js +10 -5
  212. package/plugins/manualRowMove/ui/_base.mjs +10 -5
  213. package/plugins/manualRowResize/manualRowResize.js +254 -209
  214. package/plugins/manualRowResize/manualRowResize.mjs +253 -207
  215. package/plugins/mergeCells/calculations/autofill.js +9 -3
  216. package/plugins/mergeCells/calculations/autofill.mjs +9 -3
  217. package/plugins/mergeCells/calculations/selection.js +10 -4
  218. package/plugins/mergeCells/calculations/selection.mjs +10 -4
  219. package/plugins/mergeCells/cellCoords.js +16 -6
  220. package/plugins/mergeCells/cellCoords.mjs +16 -6
  221. package/plugins/mergeCells/cellsCollection.js +10 -4
  222. package/plugins/mergeCells/cellsCollection.mjs +10 -4
  223. package/plugins/mergeCells/mergeCells.js +582 -502
  224. package/plugins/mergeCells/mergeCells.mjs +580 -500
  225. package/plugins/multiColumnSorting/multiColumnSorting.js +13 -10
  226. package/plugins/multiColumnSorting/multiColumnSorting.mjs +13 -10
  227. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +16 -28
  228. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +16 -27
  229. package/plugins/nestedHeaders/nestedHeaders.js +542 -499
  230. package/plugins/nestedHeaders/nestedHeaders.mjs +554 -511
  231. package/plugins/nestedHeaders/stateManager/index.js +1 -1
  232. package/plugins/nestedHeaders/stateManager/index.mjs +1 -1
  233. package/plugins/nestedRows/data/dataManager.js +21 -15
  234. package/plugins/nestedRows/data/dataManager.mjs +21 -15
  235. package/plugins/nestedRows/nestedRows.js +326 -278
  236. package/plugins/nestedRows/nestedRows.mjs +325 -277
  237. package/plugins/nestedRows/ui/_base.js +7 -1
  238. package/plugins/nestedRows/ui/_base.mjs +7 -1
  239. package/plugins/nestedRows/ui/collapsing.js +2 -2
  240. package/plugins/nestedRows/ui/collapsing.mjs +2 -2
  241. package/plugins/nestedRows/ui/contextMenu.js +28 -18
  242. package/plugins/nestedRows/ui/contextMenu.mjs +28 -18
  243. package/plugins/nestedRows/utils/rowMoveController.js +12 -4
  244. package/plugins/nestedRows/utils/rowMoveController.mjs +12 -4
  245. package/plugins/persistentState/persistentState.js +14 -11
  246. package/plugins/persistentState/persistentState.mjs +14 -11
  247. package/plugins/persistentState/storage.js +11 -6
  248. package/plugins/persistentState/storage.mjs +11 -6
  249. package/plugins/registry.js +2 -2
  250. package/plugins/registry.mjs +2 -2
  251. package/plugins/search/search.js +57 -46
  252. package/plugins/search/search.mjs +56 -45
  253. package/plugins/touchScroll/touchScroll.js +102 -100
  254. package/plugins/touchScroll/touchScroll.mjs +100 -98
  255. package/plugins/trimRows/trimRows.js +33 -28
  256. package/plugins/trimRows/trimRows.mjs +32 -27
  257. package/plugins/undoRedo/undoRedo.js +2 -2
  258. package/plugins/undoRedo/undoRedo.mjs +2 -2
  259. package/renderers/autocompleteRenderer/autocompleteRenderer.js +11 -11
  260. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +11 -11
  261. package/renderers/baseRenderer/baseRenderer.js +2 -2
  262. package/renderers/baseRenderer/baseRenderer.mjs +2 -2
  263. package/renderers/checkboxRenderer/checkboxRenderer.js +23 -23
  264. package/renderers/checkboxRenderer/checkboxRenderer.mjs +23 -23
  265. package/renderers/dateRenderer/dateRenderer.js +4 -4
  266. package/renderers/dateRenderer/dateRenderer.mjs +4 -4
  267. package/renderers/handsontableRenderer/handsontableRenderer.js +4 -4
  268. package/renderers/handsontableRenderer/handsontableRenderer.mjs +4 -4
  269. package/renderers/htmlRenderer/htmlRenderer.js +4 -4
  270. package/renderers/htmlRenderer/htmlRenderer.mjs +4 -4
  271. package/renderers/numericRenderer/numericRenderer.js +3 -3
  272. package/renderers/numericRenderer/numericRenderer.mjs +3 -3
  273. package/renderers/passwordRenderer/passwordRenderer.js +3 -3
  274. package/renderers/passwordRenderer/passwordRenderer.mjs +3 -3
  275. package/renderers/selectRenderer/selectRenderer.js +4 -4
  276. package/renderers/selectRenderer/selectRenderer.mjs +4 -4
  277. package/renderers/textRenderer/textRenderer.js +5 -5
  278. package/renderers/textRenderer/textRenderer.mjs +5 -5
  279. package/renderers/timeRenderer/timeRenderer.js +3 -3
  280. package/renderers/timeRenderer/timeRenderer.mjs +3 -3
  281. package/selection/range.js +12 -2
  282. package/selection/range.mjs +12 -2
  283. package/selection/selection.js +3 -3
  284. package/selection/selection.mjs +3 -3
  285. package/tableView.js +208 -200
  286. package/tableView.mjs +208 -200
  287. package/translations/changesObservable/utils.js +2 -2
  288. package/translations/changesObservable/utils.mjs +2 -2
  289. package/translations/indexMapper.js +25 -22
  290. package/translations/indexMapper.mjs +25 -22
  291. package/translations/mapCollections/aggregatedCollection.js +8 -2
  292. package/translations/mapCollections/aggregatedCollection.mjs +8 -2
  293. package/translations/mapCollections/mapCollection.js +5 -2
  294. package/translations/mapCollections/mapCollection.mjs +5 -2
  295. package/translations/maps/indexMap.js +6 -1
  296. package/translations/maps/indexMap.mjs +6 -1
  297. package/translations/maps/utils/physicallyIndexed.js +2 -2
  298. package/translations/maps/utils/physicallyIndexed.mjs +2 -2
  299. package/utils/dataStructures/linkedList.js +10 -6
  300. package/utils/dataStructures/linkedList.mjs +10 -6
  301. package/utils/dataStructures/queue.js +1 -1
  302. package/utils/dataStructures/queue.mjs +1 -1
  303. package/utils/dataStructures/stack.js +1 -1
  304. package/utils/dataStructures/stack.mjs +1 -1
  305. package/utils/ghostTable.js +2 -2
  306. package/utils/ghostTable.mjs +2 -2
  307. package/utils/interval.js +73 -36
  308. package/utils/interval.mjs +73 -36
  309. package/utils/parseTable.js +1 -1
  310. package/utils/parseTable.mjs +1 -1
  311. package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
  312. package/validators/autocompleteValidator/autocompleteValidator.mjs +1 -1
  313. package/validators/dateValidator/dateValidator.js +1 -1
  314. package/validators/dateValidator/dateValidator.mjs +1 -1
  315. package/validators/numericValidator/numericValidator.js +1 -1
  316. package/validators/numericValidator/numericValidator.mjs +1 -1
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- require("core-js/modules/es.error.cause.js");
4
3
  exports.__esModule = true;
5
4
  require("core-js/modules/es.array.unscopables.flat.js");
6
5
  require("core-js/modules/es.array.push.js");
6
+ require("core-js/modules/es.error.cause.js");
7
7
  var _base = require("../base");
8
8
  var _array = require("../../helpers/array");
9
9
  var _templateLiteralTag = require("../../helpers/templateLiteralTag");
@@ -27,6 +27,7 @@ var _translations = require("../../translations");
27
27
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
28
28
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
29
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
30
+ function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
30
31
  function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
31
32
  function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
32
33
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -37,6 +38,7 @@ function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.
37
38
  function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
38
39
  function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
39
40
  function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
41
+ function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
40
42
  const PLUGIN_KEY = 'filters';
41
43
  exports.PLUGIN_KEY = PLUGIN_KEY;
42
44
  const PLUGIN_PRIORITY = 250;
@@ -79,6 +81,15 @@ const SHORTCUTS_GROUP = PLUGIN_KEY;
79
81
  * :::
80
82
  */
81
83
  var _menuFocusNavigator = /*#__PURE__*/new WeakMap();
84
+ var _onAfterChange = /*#__PURE__*/new WeakSet();
85
+ var _onAfterDropdownMenuShow = /*#__PURE__*/new WeakSet();
86
+ var _onAfterDropdownMenuHide = /*#__PURE__*/new WeakSet();
87
+ var _onAfterDropdownMenuDefaultOptions = /*#__PURE__*/new WeakSet();
88
+ var _onActionBarSubmit = /*#__PURE__*/new WeakSet();
89
+ var _onComponentChange = /*#__PURE__*/new WeakSet();
90
+ var _onSelectUIClosed = /*#__PURE__*/new WeakSet();
91
+ var _onAfterGetColHeader = /*#__PURE__*/new WeakSet();
92
+ var _updateComponents = /*#__PURE__*/new WeakSet();
82
93
  class Filters extends _base.BasePlugin {
83
94
  static get PLUGIN_KEY() {
84
95
  return PLUGIN_KEY;
@@ -100,6 +111,59 @@ class Filters extends _base.BasePlugin {
100
111
  constructor(hotInstance) {
101
112
  super(hotInstance);
102
113
  // One listener for the enable/disable functionality
114
+ /**
115
+ * It updates the components state. The state is triggered by ConditionUpdateObserver, which
116
+ * reacts to any condition added to the condition collection. It may be added through the UI
117
+ * components or by API call.
118
+ *
119
+ * @param {object} conditionsState An object with the state generated by UI components.
120
+ */
121
+ _classPrivateMethodInitSpec(this, _updateComponents);
122
+ /**
123
+ * On after get column header listener.
124
+ *
125
+ * @param {number} col Visual column index.
126
+ * @param {HTMLTableCellElement} TH Header's TH element.
127
+ */
128
+ _classPrivateMethodInitSpec(this, _onAfterGetColHeader);
129
+ /**
130
+ * On component SelectUI closed listener.
131
+ */
132
+ _classPrivateMethodInitSpec(this, _onSelectUIClosed);
133
+ /**
134
+ * On component change listener.
135
+ *
136
+ * @param {BaseComponent} component Component inheriting BaseComponent.
137
+ * @param {object} command Menu item object (command).
138
+ */
139
+ _classPrivateMethodInitSpec(this, _onComponentChange);
140
+ /**
141
+ * On action bar submit listener.
142
+ *
143
+ * @private
144
+ * @param {string} submitType The submit type.
145
+ */
146
+ _classPrivateMethodInitSpec(this, _onActionBarSubmit);
147
+ /**
148
+ * After dropdown menu default options listener.
149
+ *
150
+ * @param {object} defaultOptions ContextMenu default item options.
151
+ */
152
+ _classPrivateMethodInitSpec(this, _onAfterDropdownMenuDefaultOptions);
153
+ /**
154
+ * After dropdown menu hide listener.
155
+ */
156
+ _classPrivateMethodInitSpec(this, _onAfterDropdownMenuHide);
157
+ /**
158
+ * After dropdown menu show listener.
159
+ */
160
+ _classPrivateMethodInitSpec(this, _onAfterDropdownMenuShow);
161
+ /**
162
+ * `afterChange` listener.
163
+ *
164
+ * @param {Array} changes Array of changes.
165
+ */
166
+ _classPrivateMethodInitSpec(this, _onAfterChange);
103
167
  _defineProperty(this, "dropdownMenuPlugin", null);
104
168
  /**
105
169
  * Instance of {@link ConditionCollection}.
@@ -138,7 +202,7 @@ class Filters extends _base.BasePlugin {
138
202
  writable: true,
139
203
  value: void 0
140
204
  });
141
- this.hot.addHook('afterGetColHeader', (col, TH) => this.onAfterGetColHeader(col, TH));
205
+ this.hot.addHook('afterGetColHeader', (col, TH) => _classPrivateMethodGet(this, _onAfterGetColHeader, _onAfterGetColHeader2).call(this, col, TH));
142
206
  }
143
207
 
144
208
  /**
@@ -164,9 +228,9 @@ class Filters extends _base.BasePlugin {
164
228
  const dropdownSettings = this.hot.getSettings().dropdownMenu;
165
229
  const menuContainer = dropdownSettings && dropdownSettings.uiContainer || this.hot.rootDocument.body;
166
230
  const addConfirmationHooks = component => {
167
- component.addLocalHook('accept', () => this.onActionBarSubmit('accept'));
168
- component.addLocalHook('cancel', () => this.onActionBarSubmit('cancel'));
169
- component.addLocalHook('change', command => this.onComponentChange(component, command));
231
+ component.addLocalHook('accept', () => _classPrivateMethodGet(this, _onActionBarSubmit, _onActionBarSubmit2).call(this, 'accept'));
232
+ component.addLocalHook('cancel', () => _classPrivateMethodGet(this, _onActionBarSubmit, _onActionBarSubmit2).call(this, 'cancel'));
233
+ component.addLocalHook('change', command => _classPrivateMethodGet(this, _onComponentChange, _onComponentChange2).call(this, component, command));
170
234
  return component;
171
235
  };
172
236
  const filterByConditionLabel = () => `${this.hot.getTranslatedPhrase(constants.FILTERS_DIVS_FILTER_BY_CONDITION)}:`;
@@ -178,7 +242,7 @@ class Filters extends _base.BasePlugin {
178
242
  addSeparator: false,
179
243
  menuContainer
180
244
  });
181
- conditionComponent.addLocalHook('afterClose', () => this.onSelectUIClosed());
245
+ conditionComponent.addLocalHook('afterClose', () => _classPrivateMethodGet(this, _onSelectUIClosed, _onSelectUIClosed2).call(this));
182
246
  this.components.set('filter_by_condition', addConfirmationHooks(conditionComponent));
183
247
  }
184
248
  if (!this.components.get('filter_operators')) {
@@ -194,7 +258,7 @@ class Filters extends _base.BasePlugin {
194
258
  addSeparator: true,
195
259
  menuContainer
196
260
  });
197
- conditionComponent.addLocalHook('afterClose', () => this.onSelectUIClosed());
261
+ conditionComponent.addLocalHook('afterClose', () => _classPrivateMethodGet(this, _onSelectUIClosed, _onSelectUIClosed2).call(this));
198
262
  this.components.set('filter_by_condition2', addConfirmationHooks(conditionComponent));
199
263
  }
200
264
  if (!this.components.get('filter_by_value')) {
@@ -214,13 +278,13 @@ class Filters extends _base.BasePlugin {
214
278
  }
215
279
  if (!this.conditionUpdateObserver) {
216
280
  this.conditionUpdateObserver = new _conditionUpdateObserver.default(this.hot, this.conditionCollection, physicalColumn => this.getDataMapAtColumn(physicalColumn));
217
- this.conditionUpdateObserver.addLocalHook('update', conditionState => this.updateComponents(conditionState));
281
+ this.conditionUpdateObserver.addLocalHook('update', conditionState => _classPrivateMethodGet(this, _updateComponents, _updateComponents2).call(this, conditionState));
218
282
  }
219
283
  this.components.forEach(component => component.show());
220
- this.addHook('afterDropdownMenuDefaultOptions', defaultOptions => this.onAfterDropdownMenuDefaultOptions(defaultOptions));
221
- this.addHook('afterDropdownMenuShow', () => this.onAfterDropdownMenuShow());
222
- this.addHook('afterDropdownMenuHide', () => this.onAfterDropdownMenuHide());
223
- this.addHook('afterChange', changes => this.onAfterChange(changes));
284
+ this.addHook('afterDropdownMenuDefaultOptions', defaultOptions => _classPrivateMethodGet(this, _onAfterDropdownMenuDefaultOptions, _onAfterDropdownMenuDefaultOptions2).call(this, defaultOptions));
285
+ this.addHook('afterDropdownMenuShow', () => _classPrivateMethodGet(this, _onAfterDropdownMenuShow, _onAfterDropdownMenuShow2).call(this));
286
+ this.addHook('afterDropdownMenuHide', () => _classPrivateMethodGet(this, _onAfterDropdownMenuHide, _onAfterDropdownMenuHide2).call(this));
287
+ this.addHook('afterChange', changes => _classPrivateMethodGet(this, _onAfterChange, _onAfterChange2).call(this, changes));
224
288
 
225
289
  // Temp. solution (extending menu items bug in contextMenu/dropdownMenu)
226
290
  if (this.hot.getSettings().dropdownMenu && this.dropdownMenuPlugin) {
@@ -451,7 +515,7 @@ class Filters extends _base.BasePlugin {
451
515
  * @param {number} [column] Visual column index.
452
516
  */
453
517
  clearConditions(column) {
454
- if (column === void 0) {
518
+ if (column === undefined) {
455
519
  this.conditionCollection.clean();
456
520
  } else {
457
521
  const physicalColumn = this.hot.toPhysicalColumn(column);
@@ -562,25 +626,6 @@ class Filters extends _base.BasePlugin {
562
626
  });
563
627
  return data;
564
628
  }
565
-
566
- /**
567
- * `afterChange` listener.
568
- *
569
- * @private
570
- * @param {Array} changes Array of changes.
571
- */
572
- onAfterChange(changes) {
573
- if (changes) {
574
- (0, _array.arrayEach)(changes, change => {
575
- const [, prop] = change;
576
- const columnIndex = this.hot.propToCol(prop);
577
- if (this.conditionCollection.hasConditions(columnIndex)) {
578
- this.updateValueComponentCondition(columnIndex);
579
- }
580
- });
581
- }
582
- }
583
-
584
629
  /**
585
630
  * Update the condition of ValueComponent, based on the handled changes.
586
631
  *
@@ -610,41 +655,6 @@ class Filters extends _base.BasePlugin {
610
655
  });
611
656
  this.updateDependentComponentsVisibility();
612
657
  }
613
-
614
- /**
615
- * After dropdown menu show listener.
616
- *
617
- * @private
618
- */
619
- onAfterDropdownMenuShow() {
620
- this.restoreComponents(Array.from(this.components.values()));
621
- }
622
-
623
- /**
624
- * After dropdown menu hide listener.
625
- *
626
- * @private
627
- */
628
- onAfterDropdownMenuHide() {
629
- this.components.get('filter_by_condition').getSelectElement().closeOptions();
630
- this.components.get('filter_by_condition2').getSelectElement().closeOptions();
631
- }
632
-
633
- /**
634
- * After dropdown menu default options listener.
635
- *
636
- * @private
637
- * @param {object} defaultOptions ContextMenu default item options.
638
- */
639
- onAfterDropdownMenuDefaultOptions(defaultOptions) {
640
- defaultOptions.items.push({
641
- name: _predefinedItems.SEPARATOR
642
- });
643
- this.components.forEach(component => {
644
- defaultOptions.items.push(component.getMenuItemDescriptor());
645
- });
646
- }
647
-
648
658
  /**
649
659
  * Get an operation, based on the number and types of arguments (where arguments are states of components).
650
660
  *
@@ -666,75 +676,6 @@ class Filters extends _base.BasePlugin {
666
676
  }
667
677
  return operation;
668
678
  }
669
-
670
- /**
671
- * On action bar submit listener.
672
- *
673
- * @private
674
- * @param {string} submitType The submit type.
675
- */
676
- onActionBarSubmit(submitType) {
677
- var _this$dropdownMenuPlu3;
678
- if (submitType === 'accept') {
679
- const selectedColumn = this.getSelectedColumn();
680
- if (selectedColumn === null) {
681
- var _this$dropdownMenuPlu2;
682
- (_this$dropdownMenuPlu2 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu2 === void 0 || _this$dropdownMenuPlu2.close();
683
- return;
684
- }
685
- const {
686
- physicalIndex
687
- } = selectedColumn;
688
- const byConditionState1 = this.components.get('filter_by_condition').getState();
689
- const byConditionState2 = this.components.get('filter_by_condition2').getState();
690
- const byValueState = this.components.get('filter_by_value').getState();
691
- const operation = this.getOperationBasedOnArguments(this.components.get('filter_operators').getActiveOperationId(), byConditionState1, byConditionState2, byValueState);
692
- this.conditionUpdateObserver.groupChanges();
693
- let columnStackPosition = this.conditionCollection.getColumnStackPosition(physicalIndex);
694
- if (columnStackPosition === -1) {
695
- columnStackPosition = void 0;
696
- }
697
- this.conditionCollection.removeConditions(physicalIndex);
698
- if (byConditionState1.command.key !== _constants2.CONDITION_NONE) {
699
- this.conditionCollection.addCondition(physicalIndex, byConditionState1, operation, columnStackPosition);
700
- if (byConditionState2.command.key !== _constants2.CONDITION_NONE) {
701
- this.conditionCollection.addCondition(physicalIndex, byConditionState2, operation, columnStackPosition);
702
- }
703
- }
704
- if (byValueState.command.key !== _constants2.CONDITION_NONE) {
705
- this.conditionCollection.addCondition(physicalIndex, byValueState, operation, columnStackPosition);
706
- }
707
- this.conditionUpdateObserver.flush();
708
- this.components.forEach(component => component.saveState(physicalIndex));
709
- this.filtersRowsMap.clear();
710
- this.filter();
711
- }
712
- (_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 || _this$dropdownMenuPlu3.close();
713
- }
714
-
715
- /**
716
- * On component change listener.
717
- *
718
- * @private
719
- * @param {BaseComponent} component Component inheriting BaseComponent.
720
- * @param {object} command Menu item object (command).
721
- */
722
- onComponentChange(component, command) {
723
- this.updateDependentComponentsVisibility();
724
- if (component.constructor === _condition.ConditionComponent && !command.inputsCount) {
725
- this.setListeningDropdownMenu();
726
- }
727
- }
728
-
729
- /**
730
- * On component SelectUI closed listener.
731
- *
732
- * @private
733
- */
734
- onSelectUIClosed() {
735
- this.setListeningDropdownMenu();
736
- }
737
-
738
679
  /**
739
680
  * Listen to the keyboard input on document body and forward events to instance of Handsontable
740
681
  * created by DropdownMenu plugin.
@@ -764,23 +705,6 @@ class Filters extends _base.BasePlugin {
764
705
  this.hideComponents(...componentsToShow);
765
706
  }
766
707
  }
767
-
768
- /**
769
- * On after get column header listener.
770
- *
771
- * @private
772
- * @param {number} col Visual column index.
773
- * @param {HTMLTableCellElement} TH Header's TH element.
774
- */
775
- onAfterGetColHeader(col, TH) {
776
- const physicalColumn = this.hot.toPhysicalColumn(col);
777
- if (this.enabled && this.conditionCollection.hasConditions(physicalColumn)) {
778
- (0, _element.addClass)(TH, 'htFiltersActive');
779
- } else {
780
- (0, _element.removeClass)(TH, 'htFiltersActive');
781
- }
782
- }
783
-
784
708
  /**
785
709
  * Creates DataFilter instance based on condition collection.
786
710
  *
@@ -792,41 +716,6 @@ class Filters extends _base.BasePlugin {
792
716
  let conditionCollection = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.conditionCollection;
793
717
  return new _dataFilter.default(conditionCollection, physicalColumn => this.getDataMapAtColumn(physicalColumn));
794
718
  }
795
-
796
- /**
797
- * It updates the components state. The state is triggered by ConditionUpdateObserver, which
798
- * reacts to any condition added to the condition collection. It may be added through the UI
799
- * components or by API call.
800
- *
801
- * @private
802
- * @param {object} conditionsState An object with the state generated by UI components.
803
- */
804
- updateComponents(conditionsState) {
805
- var _this$dropdownMenuPlu4;
806
- if (!((_this$dropdownMenuPlu4 = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu4 !== void 0 && _this$dropdownMenuPlu4.enabled)) {
807
- return;
808
- }
809
- const {
810
- editedConditionStack: {
811
- conditions,
812
- column
813
- }
814
- } = conditionsState;
815
- const conditionsByValue = conditions.filter(condition => condition.name === _constants2.CONDITION_BY_VALUE);
816
- const conditionsWithoutByValue = conditions.filter(condition => condition.name !== _constants2.CONDITION_BY_VALUE);
817
- if (conditionsByValue.length >= 2 || conditionsWithoutByValue.length >= 3) {
818
- (0, _console.warn)((0, _templateLiteralTag.toSingleLine)`The filter conditions have been applied properly, but couldn’t be displayed visually.\x20
819
- The overall amount of conditions exceed the capability of the dropdown menu.\x20
820
- For more details see the documentation.`);
821
- } else {
822
- const operationType = this.conditionCollection.getOperation(column);
823
- this.components.get('filter_by_condition').updateState(conditionsWithoutByValue[0], column);
824
- this.components.get('filter_by_condition2').updateState(conditionsWithoutByValue[1], column);
825
- this.components.get('filter_operators').updateState(operationType, column);
826
- this.components.get('filter_by_value').updateState(conditionsState);
827
- }
828
- }
829
-
830
719
  /**
831
720
  * Returns indexes of passed components inside list of `dropdownMenu` items.
832
721
  *
@@ -924,4 +813,110 @@ class Filters extends _base.BasePlugin {
924
813
  super.destroy();
925
814
  }
926
815
  }
927
- exports.Filters = Filters;
816
+ exports.Filters = Filters;
817
+ function _onAfterChange2(changes) {
818
+ if (changes) {
819
+ (0, _array.arrayEach)(changes, change => {
820
+ const [, prop] = change;
821
+ const columnIndex = this.hot.propToCol(prop);
822
+ if (this.conditionCollection.hasConditions(columnIndex)) {
823
+ this.updateValueComponentCondition(columnIndex);
824
+ }
825
+ });
826
+ }
827
+ }
828
+ function _onAfterDropdownMenuShow2() {
829
+ this.restoreComponents(Array.from(this.components.values()));
830
+ }
831
+ function _onAfterDropdownMenuHide2() {
832
+ this.components.get('filter_by_condition').getSelectElement().closeOptions();
833
+ this.components.get('filter_by_condition2').getSelectElement().closeOptions();
834
+ }
835
+ function _onAfterDropdownMenuDefaultOptions2(defaultOptions) {
836
+ defaultOptions.items.push({
837
+ name: _predefinedItems.SEPARATOR
838
+ });
839
+ this.components.forEach(component => {
840
+ defaultOptions.items.push(component.getMenuItemDescriptor());
841
+ });
842
+ }
843
+ function _onActionBarSubmit2(submitType) {
844
+ var _this$dropdownMenuPlu3;
845
+ if (submitType === 'accept') {
846
+ const selectedColumn = this.getSelectedColumn();
847
+ if (selectedColumn === null) {
848
+ var _this$dropdownMenuPlu2;
849
+ (_this$dropdownMenuPlu2 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu2 === void 0 || _this$dropdownMenuPlu2.close();
850
+ return;
851
+ }
852
+ const {
853
+ physicalIndex
854
+ } = selectedColumn;
855
+ const byConditionState1 = this.components.get('filter_by_condition').getState();
856
+ const byConditionState2 = this.components.get('filter_by_condition2').getState();
857
+ const byValueState = this.components.get('filter_by_value').getState();
858
+ const operation = this.getOperationBasedOnArguments(this.components.get('filter_operators').getActiveOperationId(), byConditionState1, byConditionState2, byValueState);
859
+ this.conditionUpdateObserver.groupChanges();
860
+ let columnStackPosition = this.conditionCollection.getColumnStackPosition(physicalIndex);
861
+ if (columnStackPosition === -1) {
862
+ columnStackPosition = undefined;
863
+ }
864
+ this.conditionCollection.removeConditions(physicalIndex);
865
+ if (byConditionState1.command.key !== _constants2.CONDITION_NONE) {
866
+ this.conditionCollection.addCondition(physicalIndex, byConditionState1, operation, columnStackPosition);
867
+ if (byConditionState2.command.key !== _constants2.CONDITION_NONE) {
868
+ this.conditionCollection.addCondition(physicalIndex, byConditionState2, operation, columnStackPosition);
869
+ }
870
+ }
871
+ if (byValueState.command.key !== _constants2.CONDITION_NONE) {
872
+ this.conditionCollection.addCondition(physicalIndex, byValueState, operation, columnStackPosition);
873
+ }
874
+ this.conditionUpdateObserver.flush();
875
+ this.components.forEach(component => component.saveState(physicalIndex));
876
+ this.filtersRowsMap.clear();
877
+ this.filter();
878
+ }
879
+ (_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 || _this$dropdownMenuPlu3.close();
880
+ }
881
+ function _onComponentChange2(component, command) {
882
+ this.updateDependentComponentsVisibility();
883
+ if (component.constructor === _condition.ConditionComponent && !command.inputsCount) {
884
+ this.setListeningDropdownMenu();
885
+ }
886
+ }
887
+ function _onSelectUIClosed2() {
888
+ this.setListeningDropdownMenu();
889
+ }
890
+ function _onAfterGetColHeader2(col, TH) {
891
+ const physicalColumn = this.hot.toPhysicalColumn(col);
892
+ if (this.enabled && this.conditionCollection.hasConditions(physicalColumn)) {
893
+ (0, _element.addClass)(TH, 'htFiltersActive');
894
+ } else {
895
+ (0, _element.removeClass)(TH, 'htFiltersActive');
896
+ }
897
+ }
898
+ function _updateComponents2(conditionsState) {
899
+ var _this$dropdownMenuPlu4;
900
+ if (!((_this$dropdownMenuPlu4 = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu4 !== void 0 && _this$dropdownMenuPlu4.enabled)) {
901
+ return;
902
+ }
903
+ const {
904
+ editedConditionStack: {
905
+ conditions,
906
+ column
907
+ }
908
+ } = conditionsState;
909
+ const conditionsByValue = conditions.filter(condition => condition.name === _constants2.CONDITION_BY_VALUE);
910
+ const conditionsWithoutByValue = conditions.filter(condition => condition.name !== _constants2.CONDITION_BY_VALUE);
911
+ if (conditionsByValue.length >= 2 || conditionsWithoutByValue.length >= 3) {
912
+ (0, _console.warn)((0, _templateLiteralTag.toSingleLine)`The filter conditions have been applied properly, but couldn’t be displayed visually.\x20
913
+ The overall amount of conditions exceed the capability of the dropdown menu.\x20
914
+ For more details see the documentation.`);
915
+ } else {
916
+ const operationType = this.conditionCollection.getOperation(column);
917
+ this.components.get('filter_by_condition').updateState(conditionsWithoutByValue[0], column);
918
+ this.components.get('filter_by_condition2').updateState(conditionsWithoutByValue[1], column);
919
+ this.components.get('filter_operators').updateState(operationType, column);
920
+ this.components.get('filter_by_value').updateState(conditionsState);
921
+ }
922
+ }