handsontable 0.0.0-next-ecc62fd-20230525 → 0.0.0-next-93e34dc-20230601

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 (216) hide show
  1. package/3rdparty/walkontable/src/cell/coords.d.ts +6 -1
  2. package/3rdparty/walkontable/src/cell/coords.js +61 -12
  3. package/3rdparty/walkontable/src/cell/coords.mjs +61 -12
  4. package/3rdparty/walkontable/src/cell/range.d.ts +9 -2
  5. package/3rdparty/walkontable/src/cell/range.js +44 -7
  6. package/3rdparty/walkontable/src/cell/range.mjs +44 -7
  7. package/3rdparty/walkontable/src/core/_base.js +9 -3
  8. package/3rdparty/walkontable/src/core/_base.mjs +9 -3
  9. package/3rdparty/walkontable/src/core/clone.js +2 -2
  10. package/3rdparty/walkontable/src/core/clone.mjs +2 -2
  11. package/3rdparty/walkontable/src/core/core.js +3 -2
  12. package/3rdparty/walkontable/src/core/core.mjs +3 -2
  13. package/3rdparty/walkontable/src/event.js +7 -7
  14. package/3rdparty/walkontable/src/event.mjs +7 -7
  15. package/3rdparty/walkontable/src/facade/core.js +2 -2
  16. package/3rdparty/walkontable/src/facade/core.mjs +2 -2
  17. package/3rdparty/walkontable/src/index.js +10 -2
  18. package/3rdparty/walkontable/src/index.mjs +2 -2
  19. package/3rdparty/walkontable/src/overlay/_base.js +1 -1
  20. package/3rdparty/walkontable/src/overlay/_base.mjs +1 -1
  21. package/3rdparty/walkontable/src/overlay/inlineStart.js +2 -4
  22. package/3rdparty/walkontable/src/overlay/inlineStart.mjs +2 -4
  23. package/3rdparty/walkontable/src/overlay/top.js +2 -4
  24. package/3rdparty/walkontable/src/overlay/top.mjs +2 -4
  25. package/3rdparty/walkontable/src/{border.js → selection/border/border.js} +7 -12
  26. package/3rdparty/walkontable/src/{border.mjs → selection/border/border.mjs} +7 -12
  27. package/3rdparty/walkontable/src/selection/border/constants.js +18 -0
  28. package/3rdparty/walkontable/src/selection/border/constants.mjs +13 -0
  29. package/3rdparty/walkontable/src/selection/constants.js +63 -0
  30. package/3rdparty/walkontable/src/selection/constants.mjs +51 -0
  31. package/3rdparty/walkontable/src/selection/index.js +30 -0
  32. package/3rdparty/walkontable/src/selection/index.mjs +5 -0
  33. package/3rdparty/walkontable/src/selection/manager.js +328 -0
  34. package/3rdparty/walkontable/src/selection/manager.mjs +322 -0
  35. package/3rdparty/walkontable/src/selection/scanner.js +363 -0
  36. package/3rdparty/walkontable/src/selection/scanner.mjs +359 -0
  37. package/3rdparty/walkontable/src/selection/selection.js +133 -0
  38. package/3rdparty/walkontable/src/selection/selection.mjs +127 -0
  39. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +9 -0
  40. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +9 -0
  41. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +9 -0
  42. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +9 -0
  43. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +9 -0
  44. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +9 -0
  45. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +9 -0
  46. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +9 -0
  47. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +9 -0
  48. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +9 -0
  49. package/3rdparty/walkontable/src/table.js +7 -79
  50. package/3rdparty/walkontable/src/table.mjs +8 -80
  51. package/base.js +2 -2
  52. package/base.mjs +2 -2
  53. package/core.d.ts +5 -3
  54. package/core.js +82 -300
  55. package/core.mjs +82 -300
  56. package/dataMap/metaManager/metaSchema.js +15 -0
  57. package/dataMap/metaManager/metaSchema.mjs +15 -0
  58. package/dist/handsontable.css +8 -3
  59. package/dist/handsontable.full.css +8 -3
  60. package/dist/handsontable.full.js +12245 -9953
  61. package/dist/handsontable.full.min.css +3 -3
  62. package/dist/handsontable.full.min.js +120 -120
  63. package/dist/handsontable.js +15898 -13606
  64. package/dist/handsontable.min.css +3 -3
  65. package/dist/handsontable.min.js +4 -4
  66. package/editorManager.js +20 -82
  67. package/editorManager.mjs +25 -86
  68. package/editors/textEditor/textEditor.js +3 -11
  69. package/editors/textEditor/textEditor.mjs +4 -12
  70. package/helpers/mixed.js +1 -1
  71. package/helpers/mixed.mjs +1 -1
  72. package/helpers/number.d.ts +1 -0
  73. package/helpers/number.js +18 -0
  74. package/helpers/number.mjs +17 -0
  75. package/package.json +1 -1
  76. package/pluginHooks.js +1 -1
  77. package/pluginHooks.mjs +1 -1
  78. package/plugins/copyPaste/copyPaste.js +5 -1
  79. package/plugins/copyPaste/copyPaste.mjs +5 -1
  80. package/plugins/customBorders/customBorders.js +18 -52
  81. package/plugins/customBorders/customBorders.mjs +19 -53
  82. package/plugins/mergeCells/mergeCells.js +5 -18
  83. package/plugins/mergeCells/mergeCells.mjs +5 -18
  84. package/plugins/nestedHeaders/nestedHeaders.js +89 -9
  85. package/plugins/nestedHeaders/nestedHeaders.mjs +89 -9
  86. package/plugins/nestedHeaders/stateManager/index.js +37 -0
  87. package/plugins/nestedHeaders/stateManager/index.mjs +37 -0
  88. package/renderers/checkboxRenderer/checkboxRenderer.js +2 -2
  89. package/renderers/checkboxRenderer/checkboxRenderer.mjs +1 -1
  90. package/selection/highlight/highlight.js +311 -88
  91. package/selection/highlight/highlight.mjs +301 -84
  92. package/selection/highlight/types/activeHeader.js +10 -9
  93. package/selection/highlight/types/activeHeader.mjs +10 -8
  94. package/selection/highlight/types/area.js +12 -27
  95. package/selection/highlight/types/area.mjs +16 -30
  96. package/selection/highlight/types/areaLayered.js +54 -0
  97. package/selection/highlight/types/areaLayered.mjs +49 -0
  98. package/selection/highlight/types/column.js +50 -0
  99. package/selection/highlight/types/column.mjs +45 -0
  100. package/selection/highlight/types/customSelection.js +7 -10
  101. package/selection/highlight/types/customSelection.mjs +7 -9
  102. package/selection/highlight/types/fill.js +5 -8
  103. package/selection/highlight/types/fill.mjs +5 -7
  104. package/selection/highlight/types/{cell.js → focus.js} +5 -8
  105. package/selection/highlight/types/{cell.mjs → focus.mjs} +5 -7
  106. package/selection/highlight/types/header.js +10 -20
  107. package/selection/highlight/types/header.mjs +10 -19
  108. package/selection/highlight/types/{index.js → row.js} +27 -31
  109. package/selection/highlight/types/{index.mjs → row.mjs} +24 -29
  110. package/selection/highlight/visualSelection.js +23 -28
  111. package/selection/highlight/visualSelection.mjs +23 -28
  112. package/selection/index.js +4 -7
  113. package/selection/index.mjs +2 -3
  114. package/selection/mouseEventHandler.js +1 -1
  115. package/selection/mouseEventHandler.mjs +1 -1
  116. package/selection/range.js +8 -8
  117. package/selection/range.mjs +8 -8
  118. package/selection/selection.js +296 -180
  119. package/selection/selection.mjs +291 -179
  120. package/selection/transformation.js +233 -96
  121. package/selection/transformation.mjs +230 -93
  122. package/selection/utils.js +12 -35
  123. package/selection/utils.mjs +13 -35
  124. package/settings.d.ts +1 -0
  125. package/shortcutContexts/commands/editor/closeAndSave.js +15 -0
  126. package/shortcutContexts/commands/editor/closeAndSave.mjs +10 -0
  127. package/shortcutContexts/commands/editor/closeWithoutSaving.js +13 -0
  128. package/shortcutContexts/commands/editor/closeWithoutSaving.mjs +8 -0
  129. package/shortcutContexts/commands/editor/fastOpen.js +16 -0
  130. package/shortcutContexts/commands/editor/fastOpen.mjs +11 -0
  131. package/shortcutContexts/commands/editor/index.js +16 -0
  132. package/shortcutContexts/commands/editor/index.mjs +12 -0
  133. package/shortcutContexts/commands/editor/open.js +29 -0
  134. package/shortcutContexts/commands/editor/open.mjs +24 -0
  135. package/shortcutContexts/commands/emptySelectedCells.js +12 -0
  136. package/shortcutContexts/commands/emptySelectedCells.mjs +7 -0
  137. package/shortcutContexts/commands/extendCellsSelection/down.js +15 -0
  138. package/shortcutContexts/commands/extendCellsSelection/down.mjs +10 -0
  139. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +21 -0
  140. package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +16 -0
  141. package/shortcutContexts/commands/extendCellsSelection/index.js +24 -0
  142. package/shortcutContexts/commands/extendCellsSelection/index.mjs +20 -0
  143. package/shortcutContexts/commands/extendCellsSelection/left.js +15 -0
  144. package/shortcutContexts/commands/extendCellsSelection/left.mjs +10 -0
  145. package/shortcutContexts/commands/extendCellsSelection/right.js +15 -0
  146. package/shortcutContexts/commands/extendCellsSelection/right.mjs +10 -0
  147. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +22 -0
  148. package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +17 -0
  149. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +17 -0
  150. package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +12 -0
  151. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +17 -0
  152. package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +12 -0
  153. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +39 -0
  154. package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +34 -0
  155. package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +39 -0
  156. package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +34 -0
  157. package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +22 -0
  158. package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +17 -0
  159. package/shortcutContexts/commands/extendCellsSelection/up.js +15 -0
  160. package/shortcutContexts/commands/extendCellsSelection/up.mjs +10 -0
  161. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +21 -0
  162. package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +16 -0
  163. package/shortcutContexts/commands/index.js +51 -0
  164. package/shortcutContexts/commands/index.mjs +47 -0
  165. package/shortcutContexts/commands/moveCellSelection/down.js +12 -0
  166. package/shortcutContexts/commands/moveCellSelection/down.mjs +7 -0
  167. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +11 -0
  168. package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +6 -0
  169. package/shortcutContexts/commands/moveCellSelection/index.js +28 -0
  170. package/shortcutContexts/commands/moveCellSelection/index.mjs +24 -0
  171. package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +13 -0
  172. package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +8 -0
  173. package/shortcutContexts/commands/moveCellSelection/inlineStart.js +13 -0
  174. package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +8 -0
  175. package/shortcutContexts/commands/moveCellSelection/left.js +11 -0
  176. package/shortcutContexts/commands/moveCellSelection/left.mjs +6 -0
  177. package/shortcutContexts/commands/moveCellSelection/right.js +11 -0
  178. package/shortcutContexts/commands/moveCellSelection/right.mjs +6 -0
  179. package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +16 -0
  180. package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +11 -0
  181. package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.js +17 -0
  182. package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.mjs +12 -0
  183. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +13 -0
  184. package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +8 -0
  185. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +16 -0
  186. package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +11 -0
  187. package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +35 -0
  188. package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +30 -0
  189. package/shortcutContexts/commands/moveCellSelection/toMostRight.js +35 -0
  190. package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +30 -0
  191. package/shortcutContexts/commands/moveCellSelection/toMostTop.js +16 -0
  192. package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +11 -0
  193. package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.js +18 -0
  194. package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.mjs +13 -0
  195. package/shortcutContexts/commands/moveCellSelection/up.js +12 -0
  196. package/shortcutContexts/commands/moveCellSelection/up.mjs +7 -0
  197. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +11 -0
  198. package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +6 -0
  199. package/shortcutContexts/commands/populateSelectedCellsData.js +35 -0
  200. package/shortcutContexts/commands/populateSelectedCellsData.mjs +30 -0
  201. package/shortcutContexts/commands/selectAll.js +11 -0
  202. package/shortcutContexts/commands/selectAll.mjs +6 -0
  203. package/shortcutContexts/constants.js +19 -0
  204. package/shortcutContexts/constants.mjs +12 -0
  205. package/shortcutContexts/editor.js +29 -0
  206. package/shortcutContexts/editor.mjs +25 -0
  207. package/shortcutContexts/grid.js +232 -0
  208. package/shortcutContexts/grid.mjs +228 -0
  209. package/shortcutContexts/index.js +29 -0
  210. package/shortcutContexts/index.mjs +15 -0
  211. package/tableView.js +58 -9
  212. package/tableView.mjs +58 -9
  213. package/3rdparty/walkontable/src/selection.js +0 -354
  214. package/3rdparty/walkontable/src/selection.mjs +0 -348
  215. package/selection/highlight/constants.js +0 -16
  216. package/selection/highlight/constants.mjs +0 -6
@@ -1,49 +1,70 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.symbol.to-primitive.js");
4
+ require("core-js/modules/es.date.to-primitive.js");
5
+ require("core-js/modules/es.number.constructor.js");
6
+ require("core-js/modules/es.array.from.js");
7
+ require("core-js/modules/es.array.slice.js");
8
+ require("core-js/modules/es.function.name.js");
9
+ require("core-js/modules/es.regexp.exec.js");
3
10
  require("core-js/modules/es.object.keys.js");
4
11
  require("core-js/modules/es.array.filter.js");
5
12
  require("core-js/modules/es.object.get-own-property-descriptor.js");
6
13
  require("core-js/modules/web.dom-collections.for-each.js");
7
14
  require("core-js/modules/es.object.get-own-property-descriptors.js");
8
- require("core-js/modules/es.array.from.js");
9
- require("core-js/modules/es.array.slice.js");
10
- require("core-js/modules/es.function.name.js");
11
- require("core-js/modules/es.regexp.exec.js");
15
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
12
16
  exports.__esModule = true;
13
17
  exports.default = void 0;
14
- require("core-js/modules/es.array.fill.js");
15
18
  require("core-js/modules/es.array.iterator.js");
16
19
  require("core-js/modules/es.map.js");
17
20
  require("core-js/modules/es.object.to-string.js");
18
21
  require("core-js/modules/es.string.iterator.js");
19
22
  require("core-js/modules/web.dom-collections.iterator.js");
23
+ require("core-js/modules/es.array.fill.js");
20
24
  require("core-js/modules/es.array.includes.js");
21
25
  require("core-js/modules/es.string.includes.js");
22
26
  require("core-js/modules/es.array.concat.js");
23
27
  require("core-js/modules/es.symbol.iterator.js");
24
28
  require("core-js/modules/es.symbol.js");
25
29
  require("core-js/modules/es.symbol.description.js");
26
- require("core-js/modules/es.symbol.to-primitive.js");
27
- require("core-js/modules/es.date.to-primitive.js");
28
- require("core-js/modules/es.number.constructor.js");
29
- var _types = require("./types");
30
- var _constants = require("./constants");
30
+ require("core-js/modules/es.weak-set.js");
31
+ var _activeHeader = require("./types/activeHeader");
32
+ var _areaLayered = require("./types/areaLayered");
33
+ var _area = require("./types/area");
34
+ var _column = require("./types/column");
35
+ var _focus = require("./types/focus");
36
+ var _customSelection = require("./types/customSelection");
37
+ var _fill = require("./types/fill");
38
+ var _header = require("./types/header");
39
+ var _row = require("./types/row");
40
+ var _src = require("../../3rdparty/walkontable/src");
41
+ exports.ACTIVE_HEADER_TYPE = _src.HIGHLIGHT_ACTIVE_HEADER_TYPE;
42
+ exports.AREA_TYPE = _src.HIGHLIGHT_AREA_TYPE;
43
+ exports.FOCUS_TYPE = _src.HIGHLIGHT_FOCUS_TYPE;
44
+ exports.CUSTOM_SELECTION_TYPE = _src.HIGHLIGHT_CUSTOM_SELECTION_TYPE;
45
+ exports.FILL_TYPE = _src.HIGHLIGHT_FILL_TYPE;
46
+ exports.HEADER_TYPE = _src.HIGHLIGHT_HEADER_TYPE;
47
+ exports.ROW_TYPE = _src.HIGHLIGHT_ROW_TYPE;
48
+ exports.COLUMN_TYPE = _src.HIGHLIGHT_COLUMN_TYPE;
31
49
  var _array = require("./../../helpers/array");
32
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
50
+ var _Symbol$iterator;
51
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
52
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
33
53
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
34
54
  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."); }
35
55
  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); }
36
56
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
37
57
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
38
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; }
39
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
40
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
41
- 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; }
42
59
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
43
60
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
44
61
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
62
+ function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
63
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
64
+ 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; }
45
65
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
46
66
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
67
+ function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
47
68
  /**
48
69
  * Highlight class responsible for managing Walkontable Selection classes.
49
70
  *
@@ -59,15 +80,25 @@ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input ==
59
80
  * @class Highlight
60
81
  * @util
61
82
  */
62
- var Highlight = /*#__PURE__*/function (_Symbol$iterator) {
83
+ var _createHighlight = /*#__PURE__*/new WeakSet();
84
+ _Symbol$iterator = Symbol.iterator;
85
+ var Highlight = /*#__PURE__*/function () {
63
86
  function Highlight(options) {
64
87
  _classCallCheck(this, Highlight);
88
+ /**
89
+ * Creates (if not exist in the cache) Walkontable Selection instance.
90
+ *
91
+ * @param {Map} cacheMap The map where the instance will be cached.
92
+ * @param {Function} highlightFactory The function factory.
93
+ * @returns {VisualSelection}
94
+ */
95
+ _classPrivateMethodInitSpec(this, _createHighlight);
65
96
  /**
66
97
  * Options consumed by Highlight class and Walkontable Selection classes.
67
98
  *
68
99
  * @type {object}
69
100
  */
70
- this.options = options;
101
+ _defineProperty(this, "options", void 0);
71
102
  /**
72
103
  * The property which describes which layer level of the visual selection will be modified.
73
104
  * This option is valid only for `area` and `header` highlight types which occurs multiple times on
@@ -78,49 +109,96 @@ var Highlight = /*#__PURE__*/function (_Symbol$iterator) {
78
109
  * @type {number}
79
110
  * @default 0
80
111
  */
81
- this.layerLevel = 0;
112
+ _defineProperty(this, "layerLevel", 0);
82
113
  /**
83
114
  * `cell` highlight object which describes attributes for the currently selected cell.
84
115
  * It can only occur only once on the table.
85
116
  *
86
117
  * @type {Selection}
87
118
  */
88
- this.cell = (0, _types.createHighlight)(_constants.CELL_TYPE, options);
119
+ _defineProperty(this, "focus", void 0);
89
120
  /**
90
121
  * `fill` highlight object which describes attributes for the borders for autofill functionality.
91
122
  * It can only occur only once on the table.
92
123
  *
93
124
  * @type {Selection}
94
125
  */
95
- this.fill = (0, _types.createHighlight)(_constants.FILL_TYPE, options);
126
+ _defineProperty(this, "fill", void 0);
96
127
  /**
97
128
  * Collection of the `area` highlights. That objects describes attributes for the borders and selection of
98
129
  * the multiple selected cells. It can occur multiple times on the table.
99
130
  *
100
131
  * @type {Map.<number, Selection>}
101
132
  */
102
- this.areas = new Map();
133
+ _defineProperty(this, "layeredAreas", new Map());
134
+ /**
135
+ * Collection of the `highlight` highlights. That objects describes attributes for the borders and selection of
136
+ * the multiple selected cells. It can occur multiple times on the table.
137
+ *
138
+ * @type {Map.<number, Selection>}
139
+ */
140
+ _defineProperty(this, "areas", new Map());
141
+ /**
142
+ * Collection of the `header` highlights. That objects describes attributes for the selection of
143
+ * the multiple selected rows in the table header. It can occur multiple times on the table.
144
+ *
145
+ * @type {Map.<number, Selection>}
146
+ */
147
+ _defineProperty(this, "rowHeaders", new Map());
103
148
  /**
104
149
  * Collection of the `header` highlights. That objects describes attributes for the selection of
105
- * the multiple selected rows and columns in the table header. It can occur multiple times on the table.
150
+ * the multiple selected columns in the table header. It can occur multiple times on the table.
151
+ *
152
+ * @type {Map.<number, Selection>}
153
+ */
154
+ _defineProperty(this, "columnHeaders", new Map());
155
+ /**
156
+ * Collection of the `active-header` highlights. That objects describes attributes for the selection of
157
+ * the multiple selected rows in the table header. The table headers which have selected all items in
158
+ * a row will be marked as `active-header`.
106
159
  *
107
160
  * @type {Map.<number, Selection>}
108
161
  */
109
- this.headers = new Map();
162
+ _defineProperty(this, "activeRowHeaders", new Map());
110
163
  /**
111
164
  * Collection of the `active-header` highlights. That objects describes attributes for the selection of
112
- * the multiple selected rows and columns in the table header. The table headers which have selected all items in
165
+ * the multiple selected columns in the table header. The table headers which have selected all items in
113
166
  * a row will be marked as `active-header`.
114
167
  *
115
168
  * @type {Map.<number, Selection>}
116
169
  */
117
- this.activeHeaders = new Map();
170
+ _defineProperty(this, "activeColumnHeaders", new Map());
171
+ /**
172
+ * Collection of the `active-header` highlights. That objects describes attributes for the selection of
173
+ * the selected corner in the table header. The table headers which have selected all items in
174
+ * a row will be marked as `active-header`.
175
+ *
176
+ * @type {Map.<number, Selection>}
177
+ */
178
+ _defineProperty(this, "activeCornerHeaders", new Map());
179
+ /**
180
+ * Collection of the `rows` highlights. That objects describes attributes for the selection of
181
+ * the multiple selected cells in a row. It can occur multiple times on the table.
182
+ *
183
+ * @type {Map.<number, Selection>}
184
+ */
185
+ _defineProperty(this, "rowHighlights", new Map());
186
+ /**
187
+ * Collection of the `columns` highlights. That objects describes attributes for the selection of
188
+ * the multiple selected cells in a column. It can occur multiple times on the table.
189
+ *
190
+ * @type {Map.<number, Selection>}
191
+ */
192
+ _defineProperty(this, "columnHighlights", new Map());
118
193
  /**
119
194
  * Collection of the `custom-selection`, holder for example borders added through CustomBorders plugin.
120
195
  *
121
196
  * @type {Selection[]}
122
197
  */
123
- this.customSelections = [];
198
+ _defineProperty(this, "customSelections", []);
199
+ this.options = options;
200
+ this.focus = (0, _focus.createHighlight)(options);
201
+ this.fill = (0, _fill.createHighlight)(options);
124
202
  }
125
203
 
126
204
  /**
@@ -136,11 +214,14 @@ var Highlight = /*#__PURE__*/function (_Symbol$iterator) {
136
214
  var type = highlightType;
137
215
 
138
216
  // Legacy compatibility.
139
- if (highlightType === _constants.CELL_TYPE) {
217
+ if (highlightType === _src.HIGHLIGHT_FOCUS_TYPE) {
140
218
  type = 'current'; // One from settings for `disableVisualSelection` up to Handsontable 0.36/Handsontable Pro 1.16.0.
141
219
  }
142
220
 
143
- var disableHighlight = this.options.disabledCellSelection(coords.row, coords.col);
221
+ var disableHighlight = false;
222
+ if (coords.isCell()) {
223
+ disableHighlight = this.options.disabledCellSelection(coords.row, coords.col);
224
+ }
144
225
  if (typeof disableHighlight === 'string') {
145
226
  disableHighlight = [disableHighlight];
146
227
  }
@@ -162,14 +243,15 @@ var Highlight = /*#__PURE__*/function (_Symbol$iterator) {
162
243
  }
163
244
 
164
245
  /**
165
- * Get Walkontable Selection instance created for controlling highlight of the currently selected/edited cell.
246
+ * Get Walkontable Selection instance created for controlling highlight of the currently
247
+ * focused cell (or header).
166
248
  *
167
249
  * @returns {Selection}
168
250
  */
169
251
  }, {
170
- key: "getCell",
171
- value: function getCell() {
172
- return this.cell;
252
+ key: "getFocus",
253
+ value: function getFocus() {
254
+ return this.focus;
173
255
  }
174
256
 
175
257
  /**
@@ -184,25 +266,38 @@ var Highlight = /*#__PURE__*/function (_Symbol$iterator) {
184
266
  }
185
267
 
186
268
  /**
187
- * Get or create (if not exist in the cache) Walkontable Selection instance created for controlling highlight
188
- * of the multiple selected cells.
269
+ * Creates (if not exist in the cache) Walkontable Selection instance created for controlling
270
+ * `area` highlights.
189
271
  *
190
272
  * @returns {Selection}
191
273
  */
192
274
  }, {
193
- key: "createOrGetArea",
194
- value: function createOrGetArea() {
195
- var layerLevel = this.layerLevel;
196
- var area;
197
- if (this.areas.has(layerLevel)) {
198
- area = this.areas.get(layerLevel);
199
- } else {
200
- area = (0, _types.createHighlight)(_constants.AREA_TYPE, _objectSpread({
201
- layerLevel: layerLevel
202
- }, this.options));
203
- this.areas.set(layerLevel, area);
204
- }
205
- return area;
275
+ key: "createLayeredArea",
276
+ value: function createLayeredArea() {
277
+ return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.layeredAreas, _areaLayered.createHighlight);
278
+ }
279
+
280
+ /**
281
+ * Get all Walkontable Selection instances which describes the state of the visual highlight of the cells.
282
+ *
283
+ * @returns {Selection[]}
284
+ */
285
+ }, {
286
+ key: "getLayeredAreas",
287
+ value: function getLayeredAreas() {
288
+ return _toConsumableArray(this.layeredAreas.values());
289
+ }
290
+
291
+ /**
292
+ * Creates (if not exist in the cache) Walkontable Selection instance created for controlling
293
+ * `highlight` highlights.
294
+ *
295
+ * @returns {Selection}
296
+ */
297
+ }, {
298
+ key: "createArea",
299
+ value: function createArea() {
300
+ return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.areas, _area.createHighlight);
206
301
  }
207
302
 
208
303
  /**
@@ -217,23 +312,15 @@ var Highlight = /*#__PURE__*/function (_Symbol$iterator) {
217
312
  }
218
313
 
219
314
  /**
220
- * Get or create (if not exist in the cache) Walkontable Selection instance created for controlling highlight
221
- * of the multiple selected header cells.
315
+ * Creates (if not exist in the cache) Walkontable Selection instance created for controlling
316
+ * header highlight for rows.
222
317
  *
223
318
  * @returns {Selection}
224
319
  */
225
320
  }, {
226
- key: "createOrGetHeader",
227
- value: function createOrGetHeader() {
228
- var layerLevel = this.layerLevel;
229
- var header;
230
- if (this.headers.has(layerLevel)) {
231
- header = this.headers.get(layerLevel);
232
- } else {
233
- header = (0, _types.createHighlight)(_constants.HEADER_TYPE, _objectSpread({}, this.options));
234
- this.headers.set(layerLevel, header);
235
- }
236
- return header;
321
+ key: "createRowHeader",
322
+ value: function createRowHeader() {
323
+ return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.rowHeaders, _header.createHighlight);
237
324
  }
238
325
 
239
326
  /**
@@ -242,29 +329,67 @@ var Highlight = /*#__PURE__*/function (_Symbol$iterator) {
242
329
  * @returns {Selection[]}
243
330
  */
244
331
  }, {
245
- key: "getHeaders",
246
- value: function getHeaders() {
247
- return _toConsumableArray(this.headers.values());
332
+ key: "getRowHeaders",
333
+ value: function getRowHeaders() {
334
+ return _toConsumableArray(this.rowHeaders.values());
248
335
  }
249
336
 
250
337
  /**
251
- * Get or create (if not exist in the cache) Walkontable Selection instance created for controlling highlight
252
- * of the multiple selected active header cells.
338
+ * Creates (if not exist in the cache) Walkontable Selection instance created for controlling
339
+ * header highlight for columns.
253
340
  *
254
341
  * @returns {Selection}
255
342
  */
256
343
  }, {
257
- key: "createOrGetActiveHeader",
258
- value: function createOrGetActiveHeader() {
259
- var layerLevel = this.layerLevel;
260
- var header;
261
- if (this.activeHeaders.has(layerLevel)) {
262
- header = this.activeHeaders.get(layerLevel);
263
- } else {
264
- header = (0, _types.createHighlight)(_constants.ACTIVE_HEADER_TYPE, _objectSpread({}, this.options));
265
- this.activeHeaders.set(layerLevel, header);
266
- }
267
- return header;
344
+ key: "createColumnHeader",
345
+ value: function createColumnHeader() {
346
+ return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.columnHeaders, _header.createHighlight);
347
+ }
348
+
349
+ /**
350
+ * Get all Walkontable Selection instances which describes the state of the visual highlight of the headers.
351
+ *
352
+ * @returns {Selection[]}
353
+ */
354
+ }, {
355
+ key: "getColumnHeaders",
356
+ value: function getColumnHeaders() {
357
+ return _toConsumableArray(this.columnHeaders.values());
358
+ }
359
+
360
+ /**
361
+ * Creates (if not exist in the cache) Walkontable Selection instance created for controlling
362
+ * highlight for active row headers.
363
+ *
364
+ * @returns {Selection}
365
+ */
366
+ }, {
367
+ key: "createActiveRowHeader",
368
+ value: function createActiveRowHeader() {
369
+ return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.activeRowHeaders, _activeHeader.createHighlight);
370
+ }
371
+
372
+ /**
373
+ * Get all Walkontable Selection instances which describes the state of the visual highlight of the active headers.
374
+ *
375
+ * @returns {Selection[]}
376
+ */
377
+ }, {
378
+ key: "getActiveRowHeaders",
379
+ value: function getActiveRowHeaders() {
380
+ return _toConsumableArray(this.activeRowHeaders.values());
381
+ }
382
+
383
+ /**
384
+ * Creates (if not exist in the cache) Walkontable Selection instance created for controlling
385
+ * highlight for active column headers.
386
+ *
387
+ * @returns {Selection}
388
+ */
389
+ }, {
390
+ key: "createActiveColumnHeader",
391
+ value: function createActiveColumnHeader() {
392
+ return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.activeColumnHeaders, _activeHeader.createHighlight);
268
393
  }
269
394
 
270
395
  /**
@@ -273,9 +398,78 @@ var Highlight = /*#__PURE__*/function (_Symbol$iterator) {
273
398
  * @returns {Selection[]}
274
399
  */
275
400
  }, {
276
- key: "getActiveHeaders",
277
- value: function getActiveHeaders() {
278
- return _toConsumableArray(this.activeHeaders.values());
401
+ key: "getActiveColumnHeaders",
402
+ value: function getActiveColumnHeaders() {
403
+ return _toConsumableArray(this.activeColumnHeaders.values());
404
+ }
405
+
406
+ /**
407
+ * Creates (if not exist in the cache) Walkontable Selection instance created for controlling
408
+ * highlight for the headers corner.
409
+ *
410
+ * @returns {Selection}
411
+ */
412
+ }, {
413
+ key: "createActiveCornerHeader",
414
+ value: function createActiveCornerHeader() {
415
+ return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.activeCornerHeaders, _activeHeader.createHighlight);
416
+ }
417
+
418
+ /**
419
+ * Get all Walkontable Selection instances which describes the state of the visual highlight of the headers corner.
420
+ *
421
+ * @returns {Selection[]}
422
+ */
423
+ }, {
424
+ key: "getActiveCornerHeaders",
425
+ value: function getActiveCornerHeaders() {
426
+ return _toConsumableArray(this.activeCornerHeaders.values());
427
+ }
428
+
429
+ /**
430
+ * Creates (if not exist in the cache) Walkontable Selection instance created for controlling
431
+ * highlight cells in a row.
432
+ *
433
+ * @returns {Selection}
434
+ */
435
+ }, {
436
+ key: "createRowHighlight",
437
+ value: function createRowHighlight() {
438
+ return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.rowHighlights, _row.createHighlight);
439
+ }
440
+
441
+ /**
442
+ * Get all Walkontable Selection instances which describes the state of the rows highlighting.
443
+ *
444
+ * @returns {Selection[]}
445
+ */
446
+ }, {
447
+ key: "getRowHighlights",
448
+ value: function getRowHighlights() {
449
+ return _toConsumableArray(this.rowHighlights.values());
450
+ }
451
+
452
+ /**
453
+ * Creates (if not exist in the cache) Walkontable Selection instance created for controlling
454
+ * highlight cells in a column.
455
+ *
456
+ * @returns {Selection}
457
+ */
458
+ }, {
459
+ key: "createColumnHighlight",
460
+ value: function createColumnHighlight() {
461
+ return _classPrivateMethodGet(this, _createHighlight, _createHighlight2).call(this, this.columnHighlights, _column.createHighlight);
462
+ }
463
+
464
+ /**
465
+ * Get all Walkontable Selection instances which describes the state of the columns highlighting.
466
+ *
467
+ * @returns {Selection[]}
468
+ */
469
+ }, {
470
+ key: "getColumnHighlights",
471
+ value: function getColumnHighlights() {
472
+ return _toConsumableArray(this.columnHighlights.values());
279
473
  }
280
474
 
281
475
  /**
@@ -297,7 +491,7 @@ var Highlight = /*#__PURE__*/function (_Symbol$iterator) {
297
491
  }, {
298
492
  key: "addCustomSelection",
299
493
  value: function addCustomSelection(selectionInstance) {
300
- this.customSelections.push((0, _types.createHighlight)(_constants.CUSTOM_SELECTION_TYPE, _objectSpread(_objectSpread({}, this.options), selectionInstance)));
494
+ this.customSelections.push((0, _customSelection.createHighlight)(_objectSpread(_objectSpread({}, this.options), selectionInstance)));
301
495
  }
302
496
 
303
497
  /**
@@ -306,31 +500,60 @@ var Highlight = /*#__PURE__*/function (_Symbol$iterator) {
306
500
  }, {
307
501
  key: "clear",
308
502
  value: function clear() {
309
- this.cell.clear();
503
+ this.focus.clear();
310
504
  this.fill.clear();
311
505
  (0, _array.arrayEach)(this.areas.values(), function (highlight) {
312
506
  return void highlight.clear();
313
507
  });
314
- (0, _array.arrayEach)(this.headers.values(), function (highlight) {
508
+ (0, _array.arrayEach)(this.layeredAreas.values(), function (highlight) {
509
+ return void highlight.clear();
510
+ });
511
+ (0, _array.arrayEach)(this.rowHeaders.values(), function (highlight) {
512
+ return void highlight.clear();
513
+ });
514
+ (0, _array.arrayEach)(this.columnHeaders.values(), function (highlight) {
515
+ return void highlight.clear();
516
+ });
517
+ (0, _array.arrayEach)(this.activeRowHeaders.values(), function (highlight) {
518
+ return void highlight.clear();
519
+ });
520
+ (0, _array.arrayEach)(this.activeColumnHeaders.values(), function (highlight) {
315
521
  return void highlight.clear();
316
522
  });
317
- (0, _array.arrayEach)(this.activeHeaders.values(), function (highlight) {
523
+ (0, _array.arrayEach)(this.activeCornerHeaders.values(), function (highlight) {
524
+ return void highlight.clear();
525
+ });
526
+ (0, _array.arrayEach)(this.rowHighlights.values(), function (highlight) {
527
+ return void highlight.clear();
528
+ });
529
+ (0, _array.arrayEach)(this.columnHighlights.values(), function (highlight) {
318
530
  return void highlight.clear();
319
531
  });
320
532
  }
321
-
533
+ }, {
534
+ key: _Symbol$iterator,
535
+ value:
322
536
  /**
323
537
  * This object can be iterate over using `for of` syntax or using internal `arrayEach` helper.
324
538
  *
325
539
  * @returns {Selection[]}
326
540
  */
327
- }, {
328
- key: _Symbol$iterator,
329
- value: function value() {
330
- return [this.cell, this.fill].concat(_toConsumableArray(this.areas.values()), _toConsumableArray(this.headers.values()), _toConsumableArray(this.activeHeaders.values()), _toConsumableArray(this.customSelections))[Symbol.iterator]();
541
+ function value() {
542
+ return [this.focus, this.fill].concat(_toConsumableArray(this.areas.values()), _toConsumableArray(this.layeredAreas.values()), _toConsumableArray(this.rowHeaders.values()), _toConsumableArray(this.columnHeaders.values()), _toConsumableArray(this.activeRowHeaders.values()), _toConsumableArray(this.activeColumnHeaders.values()), _toConsumableArray(this.activeCornerHeaders.values()), _toConsumableArray(this.rowHighlights.values()), _toConsumableArray(this.columnHighlights.values()), _toConsumableArray(this.customSelections))[Symbol.iterator]();
331
543
  }
332
544
  }]);
333
545
  return Highlight;
334
- }(Symbol.iterator);
546
+ }();
547
+ function _createHighlight2(cacheMap, highlightFactory) {
548
+ var layerLevel = this.layerLevel;
549
+ if (cacheMap.has(layerLevel)) {
550
+ return cacheMap.get(layerLevel);
551
+ }
552
+ var highlight = highlightFactory(_objectSpread({
553
+ layerLevel: layerLevel
554
+ }, this.options));
555
+ cacheMap.set(layerLevel, highlight);
556
+ return highlight;
557
+ }
335
558
  var _default = Highlight;
336
559
  exports.default = _default;