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.
- package/3rdparty/SheetClip/SheetClip.js +2 -2
- package/3rdparty/SheetClip/SheetClip.mjs +2 -2
- package/3rdparty/autoResize/autoResize.js +2 -2
- package/3rdparty/autoResize/autoResize.mjs +2 -2
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +108 -85
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +108 -85
- package/3rdparty/walkontable/src/calculator/viewportRows.js +60 -52
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +60 -52
- package/3rdparty/walkontable/src/core/clone.js +6 -0
- package/3rdparty/walkontable/src/core/clone.mjs +6 -0
- package/3rdparty/walkontable/src/event.js +125 -74
- package/3rdparty/walkontable/src/event.mjs +125 -74
- package/3rdparty/walkontable/src/filter/column.js +16 -0
- package/3rdparty/walkontable/src/filter/column.mjs +16 -0
- package/3rdparty/walkontable/src/filter/row.js +16 -0
- package/3rdparty/walkontable/src/filter/row.mjs +16 -0
- package/3rdparty/walkontable/src/overlay/bottom.js +1 -1
- package/3rdparty/walkontable/src/overlay/bottom.mjs +1 -1
- package/3rdparty/walkontable/src/overlay/top.js +1 -1
- package/3rdparty/walkontable/src/overlay/top.mjs +1 -1
- package/3rdparty/walkontable/src/renderer/_base.js +12 -5
- package/3rdparty/walkontable/src/renderer/_base.mjs +12 -5
- package/3rdparty/walkontable/src/renderer/cells.js +6 -2
- package/3rdparty/walkontable/src/renderer/cells.mjs +6 -2
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +6 -2
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +6 -2
- package/3rdparty/walkontable/src/renderer/rows.js +5 -0
- package/3rdparty/walkontable/src/renderer/rows.mjs +5 -0
- package/3rdparty/walkontable/src/renderer/table.js +24 -17
- package/3rdparty/walkontable/src/renderer/table.mjs +24 -17
- package/3rdparty/walkontable/src/scroll.js +2 -2
- package/3rdparty/walkontable/src/scroll.mjs +2 -2
- package/3rdparty/walkontable/src/selection/border/border.js +1 -1
- package/3rdparty/walkontable/src/selection/border/border.mjs +1 -1
- package/3rdparty/walkontable/src/settings.js +10 -10
- package/3rdparty/walkontable/src/settings.mjs +10 -10
- package/3rdparty/walkontable/src/table.js +3 -3
- package/3rdparty/walkontable/src/table.mjs +3 -3
- package/3rdparty/walkontable/src/utils/column.js +19 -4
- package/3rdparty/walkontable/src/utils/column.mjs +19 -4
- package/3rdparty/walkontable/src/utils/nodesPool.js +5 -0
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +5 -0
- package/3rdparty/walkontable/src/utils/orderView/view.js +13 -6
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +13 -6
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +9 -6
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +9 -6
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +7 -4
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +7 -4
- package/3rdparty/walkontable/src/utils/row.js +14 -2
- package/3rdparty/walkontable/src/utils/row.mjs +14 -2
- package/3rdparty/walkontable/src/viewport.js +9 -9
- package/3rdparty/walkontable/src/viewport.mjs +9 -9
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.js +25 -25
- package/core.mjs +25 -25
- package/dataMap/dataMap.js +99 -90
- package/dataMap/dataMap.mjs +99 -90
- package/dataMap/dataSource.js +14 -8
- package/dataMap/dataSource.mjs +14 -8
- package/dataMap/metaManager/lazyFactoryMap.js +19 -7
- package/dataMap/metaManager/lazyFactoryMap.mjs +19 -7
- package/dataMap/metaManager/metaLayers/cellMeta.js +8 -3
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +8 -3
- package/dataMap/metaManager/metaLayers/columnMeta.js +7 -1
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +7 -1
- package/dataMap/metaManager/metaLayers/globalMeta.js +6 -1
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +6 -1
- package/dataMap/metaManager/metaLayers/tableMeta.js +6 -2
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +6 -2
- package/dataMap/metaManager/metaSchema.js +55 -55
- package/dataMap/metaManager/metaSchema.mjs +55 -55
- package/dataMap/metaManager/mods/dynamicCellMeta.js +7 -2
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +7 -2
- package/dataMap/metaManager/mods/extendMetaProperties.js +8 -4
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +8 -4
- package/dataMap/metaManager/utils.js +2 -2
- package/dataMap/metaManager/utils.mjs +2 -2
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +7244 -6347
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +120 -120
- package/dist/handsontable.js +7243 -6346
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +28 -28
- package/editorManager.js +105 -95
- package/editorManager.mjs +105 -95
- package/editors/autocompleteEditor/autocompleteEditor.js +47 -46
- package/editors/autocompleteEditor/autocompleteEditor.mjs +46 -45
- package/editors/baseEditor/baseEditor.js +23 -26
- package/editors/baseEditor/baseEditor.mjs +23 -26
- package/editors/dateEditor/dateEditor.js +24 -15
- package/editors/dateEditor/dateEditor.mjs +24 -15
- package/editors/dropdownEditor/dropdownEditor.js +1 -1
- package/editors/dropdownEditor/dropdownEditor.mjs +1 -1
- package/editors/handsontableEditor/handsontableEditor.js +4 -4
- package/editors/handsontableEditor/handsontableEditor.mjs +4 -4
- package/editors/textEditor/textEditor.js +23 -17
- package/editors/textEditor/textEditor.mjs +24 -18
- package/eventManager.js +8 -0
- package/eventManager.mjs +8 -0
- package/helpers/array.js +2 -2
- package/helpers/array.mjs +2 -2
- package/helpers/dom/element.js +7 -7
- package/helpers/dom/element.mjs +7 -7
- package/helpers/function.js +1 -1
- package/helpers/function.mjs +1 -1
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/helpers/object.js +4 -4
- package/helpers/object.mjs +4 -4
- package/helpers/string.js +1 -1
- package/helpers/string.mjs +1 -1
- package/package.json +1 -1
- package/pluginHooks.d.ts +0 -2
- package/pluginHooks.js +12 -3
- package/pluginHooks.mjs +12 -3
- package/plugins/autoColumnSize/autoColumnSize.js +141 -130
- package/plugins/autoColumnSize/autoColumnSize.mjs +140 -129
- package/plugins/autoRowSize/autoRowSize.js +112 -125
- package/plugins/autoRowSize/autoRowSize.mjs +110 -123
- package/plugins/autofill/autofill.js +97 -102
- package/plugins/autofill/autofill.mjs +96 -101
- package/plugins/base/base.js +57 -22
- package/plugins/base/base.mjs +56 -22
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +29 -24
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +28 -23
- package/plugins/collapsibleColumns/collapsibleColumns.js +104 -107
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +102 -104
- package/plugins/columnSorting/columnSorting.js +105 -98
- package/plugins/columnSorting/columnSorting.mjs +104 -97
- package/plugins/columnSorting/columnStatesManager.js +12 -6
- package/plugins/columnSorting/columnStatesManager.mjs +12 -6
- package/plugins/columnSummary/columnSummary.js +71 -58
- package/plugins/columnSummary/columnSummary.mjs +70 -57
- package/plugins/columnSummary/endpoints.js +20 -14
- package/plugins/columnSummary/endpoints.mjs +20 -14
- package/plugins/comments/commentEditor.js +30 -2
- package/plugins/comments/commentEditor.mjs +30 -2
- package/plugins/comments/comments.js +158 -169
- package/plugins/comments/comments.mjs +157 -168
- package/plugins/comments/displaySwitch.js +7 -3
- package/plugins/comments/displaySwitch.mjs +7 -3
- package/plugins/contextMenu/commandExecutor.js +15 -2
- package/plugins/contextMenu/commandExecutor.mjs +15 -2
- package/plugins/contextMenu/contextMenu.js +91 -101
- package/plugins/contextMenu/contextMenu.mjs +90 -100
- package/plugins/contextMenu/itemsFactory.js +19 -4
- package/plugins/contextMenu/itemsFactory.mjs +19 -4
- package/plugins/contextMenu/menu/cursor.js +36 -0
- package/plugins/contextMenu/menu/cursor.mjs +36 -0
- package/plugins/contextMenu/menu/menu.js +57 -5
- package/plugins/contextMenu/menu/menu.mjs +57 -5
- package/plugins/copyPaste/copyPaste.js +74 -75
- package/plugins/copyPaste/copyPaste.mjs +74 -75
- package/plugins/customBorders/customBorders.js +49 -48
- package/plugins/customBorders/customBorders.mjs +48 -47
- package/plugins/dragToScroll/dragToScroll.js +50 -54
- package/plugins/dragToScroll/dragToScroll.mjs +49 -52
- package/plugins/dropdownMenu/dropdownMenu.js +132 -129
- package/plugins/dropdownMenu/dropdownMenu.mjs +132 -129
- package/plugins/exportFile/dataProvider.js +7 -2
- package/plugins/exportFile/dataProvider.mjs +7 -2
- package/plugins/exportFile/exportFile.js +1 -1
- package/plugins/exportFile/exportFile.mjs +1 -1
- package/plugins/exportFile/types/_base.js +14 -6
- package/plugins/exportFile/types/_base.mjs +14 -6
- package/plugins/filters/component/actionBar.js +9 -0
- package/plugins/filters/component/actionBar.mjs +9 -0
- package/plugins/filters/component/condition.js +13 -0
- package/plugins/filters/component/condition.mjs +13 -0
- package/plugins/filters/component/operators.js +9 -0
- package/plugins/filters/component/operators.mjs +9 -0
- package/plugins/filters/component/value.js +9 -0
- package/plugins/filters/component/value.mjs +9 -0
- package/plugins/filters/conditionCollection.js +9 -4
- package/plugins/filters/conditionCollection.mjs +9 -4
- package/plugins/filters/conditionUpdateObserver.js +53 -42
- package/plugins/filters/conditionUpdateObserver.mjs +53 -42
- package/plugins/filters/dataFilter.js +9 -3
- package/plugins/filters/dataFilter.mjs +9 -3
- package/plugins/filters/filters.js +184 -189
- package/plugins/filters/filters.mjs +182 -187
- package/plugins/filters/ui/_base.js +1 -1
- package/plugins/filters/ui/_base.mjs +1 -1
- package/plugins/filters/utils.js +1 -1
- package/plugins/filters/utils.mjs +1 -1
- package/plugins/formulas/engine/settings.js +1 -1
- package/plugins/formulas/engine/settings.mjs +1 -1
- package/plugins/formulas/formulas.js +684 -602
- package/plugins/formulas/formulas.mjs +682 -600
- package/plugins/hiddenColumns/hiddenColumns.js +174 -169
- package/plugins/hiddenColumns/hiddenColumns.mjs +173 -168
- package/plugins/hiddenRows/hiddenRows.js +170 -165
- package/plugins/hiddenRows/hiddenRows.mjs +169 -164
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +67 -54
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +64 -51
- package/plugins/manualColumnMove/manualColumnMove.js +287 -232
- package/plugins/manualColumnMove/manualColumnMove.mjs +286 -231
- package/plugins/manualColumnMove/ui/_base.js +9 -3
- package/plugins/manualColumnMove/ui/_base.mjs +9 -3
- package/plugins/manualColumnResize/manualColumnResize.js +291 -246
- package/plugins/manualColumnResize/manualColumnResize.mjs +290 -244
- package/plugins/manualRowMove/manualRowMove.js +223 -208
- package/plugins/manualRowMove/manualRowMove.mjs +222 -207
- package/plugins/manualRowMove/ui/_base.js +10 -5
- package/plugins/manualRowMove/ui/_base.mjs +10 -5
- package/plugins/manualRowResize/manualRowResize.js +254 -209
- package/plugins/manualRowResize/manualRowResize.mjs +253 -207
- package/plugins/mergeCells/calculations/autofill.js +9 -3
- package/plugins/mergeCells/calculations/autofill.mjs +9 -3
- package/plugins/mergeCells/calculations/selection.js +10 -4
- package/plugins/mergeCells/calculations/selection.mjs +10 -4
- package/plugins/mergeCells/cellCoords.js +16 -6
- package/plugins/mergeCells/cellCoords.mjs +16 -6
- package/plugins/mergeCells/cellsCollection.js +10 -4
- package/plugins/mergeCells/cellsCollection.mjs +10 -4
- package/plugins/mergeCells/mergeCells.js +582 -502
- package/plugins/mergeCells/mergeCells.mjs +580 -500
- package/plugins/multiColumnSorting/multiColumnSorting.js +13 -10
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +13 -10
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +16 -28
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +16 -27
- package/plugins/nestedHeaders/nestedHeaders.js +542 -499
- package/plugins/nestedHeaders/nestedHeaders.mjs +554 -511
- package/plugins/nestedHeaders/stateManager/index.js +1 -1
- package/plugins/nestedHeaders/stateManager/index.mjs +1 -1
- package/plugins/nestedRows/data/dataManager.js +21 -15
- package/plugins/nestedRows/data/dataManager.mjs +21 -15
- package/plugins/nestedRows/nestedRows.js +326 -278
- package/plugins/nestedRows/nestedRows.mjs +325 -277
- package/plugins/nestedRows/ui/_base.js +7 -1
- package/plugins/nestedRows/ui/_base.mjs +7 -1
- package/plugins/nestedRows/ui/collapsing.js +2 -2
- package/plugins/nestedRows/ui/collapsing.mjs +2 -2
- package/plugins/nestedRows/ui/contextMenu.js +28 -18
- package/plugins/nestedRows/ui/contextMenu.mjs +28 -18
- package/plugins/nestedRows/utils/rowMoveController.js +12 -4
- package/plugins/nestedRows/utils/rowMoveController.mjs +12 -4
- package/plugins/persistentState/persistentState.js +14 -11
- package/plugins/persistentState/persistentState.mjs +14 -11
- package/plugins/persistentState/storage.js +11 -6
- package/plugins/persistentState/storage.mjs +11 -6
- package/plugins/registry.js +2 -2
- package/plugins/registry.mjs +2 -2
- package/plugins/search/search.js +57 -46
- package/plugins/search/search.mjs +56 -45
- package/plugins/touchScroll/touchScroll.js +102 -100
- package/plugins/touchScroll/touchScroll.mjs +100 -98
- package/plugins/trimRows/trimRows.js +33 -28
- package/plugins/trimRows/trimRows.mjs +32 -27
- package/plugins/undoRedo/undoRedo.js +2 -2
- package/plugins/undoRedo/undoRedo.mjs +2 -2
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +11 -11
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +11 -11
- package/renderers/baseRenderer/baseRenderer.js +2 -2
- package/renderers/baseRenderer/baseRenderer.mjs +2 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +23 -23
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +23 -23
- package/renderers/dateRenderer/dateRenderer.js +4 -4
- package/renderers/dateRenderer/dateRenderer.mjs +4 -4
- package/renderers/handsontableRenderer/handsontableRenderer.js +4 -4
- package/renderers/handsontableRenderer/handsontableRenderer.mjs +4 -4
- package/renderers/htmlRenderer/htmlRenderer.js +4 -4
- package/renderers/htmlRenderer/htmlRenderer.mjs +4 -4
- package/renderers/numericRenderer/numericRenderer.js +3 -3
- package/renderers/numericRenderer/numericRenderer.mjs +3 -3
- package/renderers/passwordRenderer/passwordRenderer.js +3 -3
- package/renderers/passwordRenderer/passwordRenderer.mjs +3 -3
- package/renderers/selectRenderer/selectRenderer.js +4 -4
- package/renderers/selectRenderer/selectRenderer.mjs +4 -4
- package/renderers/textRenderer/textRenderer.js +5 -5
- package/renderers/textRenderer/textRenderer.mjs +5 -5
- package/renderers/timeRenderer/timeRenderer.js +3 -3
- package/renderers/timeRenderer/timeRenderer.mjs +3 -3
- package/selection/range.js +12 -2
- package/selection/range.mjs +12 -2
- package/selection/selection.js +3 -3
- package/selection/selection.mjs +3 -3
- package/tableView.js +208 -200
- package/tableView.mjs +208 -200
- package/translations/changesObservable/utils.js +2 -2
- package/translations/changesObservable/utils.mjs +2 -2
- package/translations/indexMapper.js +25 -22
- package/translations/indexMapper.mjs +25 -22
- package/translations/mapCollections/aggregatedCollection.js +8 -2
- package/translations/mapCollections/aggregatedCollection.mjs +8 -2
- package/translations/mapCollections/mapCollection.js +5 -2
- package/translations/mapCollections/mapCollection.mjs +5 -2
- package/translations/maps/indexMap.js +6 -1
- package/translations/maps/indexMap.mjs +6 -1
- package/translations/maps/utils/physicallyIndexed.js +2 -2
- package/translations/maps/utils/physicallyIndexed.mjs +2 -2
- package/utils/dataStructures/linkedList.js +10 -6
- package/utils/dataStructures/linkedList.mjs +10 -6
- package/utils/dataStructures/queue.js +1 -1
- package/utils/dataStructures/queue.mjs +1 -1
- package/utils/dataStructures/stack.js +1 -1
- package/utils/dataStructures/stack.mjs +1 -1
- package/utils/ghostTable.js +2 -2
- package/utils/ghostTable.mjs +2 -2
- package/utils/interval.js +73 -36
- package/utils/interval.mjs +73 -36
- package/utils/parseTable.js +1 -1
- package/utils/parseTable.mjs +1 -1
- package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
- package/validators/autocompleteValidator/autocompleteValidator.mjs +1 -1
- package/validators/dateValidator/dateValidator.js +1 -1
- package/validators/dateValidator/dateValidator.mjs +1 -1
- package/validators/numericValidator/numericValidator.js +1 -1
- package/validators/numericValidator/numericValidator.mjs +1 -1
@@ -2,13 +2,24 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
require("core-js/modules/es.array.push.js");
|
5
|
+
require("core-js/modules/es.error.cause.js");
|
5
6
|
var _base = require("../base");
|
6
7
|
var _element = require("../../helpers/dom/element");
|
7
|
-
var _eventManager = _interopRequireDefault(require("../../eventManager"));
|
8
8
|
var _array = require("../../helpers/array");
|
9
9
|
var _number = require("../../helpers/number");
|
10
10
|
var _translations = require("../../translations");
|
11
|
-
function
|
11
|
+
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
12
|
+
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
13
|
+
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
14
|
+
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; }
|
15
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
16
|
+
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); }
|
17
|
+
function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
|
18
|
+
function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
|
19
|
+
function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
|
20
|
+
function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
|
21
|
+
function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
|
22
|
+
function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
|
12
23
|
// Developer note! Whenever you make a change in this file, make an analogous change in manualRowResize.js
|
13
24
|
|
14
25
|
const PLUGIN_KEY = 'manualColumnResize';
|
@@ -16,7 +27,6 @@ exports.PLUGIN_KEY = PLUGIN_KEY;
|
|
16
27
|
const PLUGIN_PRIORITY = 130;
|
17
28
|
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
18
29
|
const PERSISTENT_STATE_KEY = 'manualColumnWidths';
|
19
|
-
const privatePool = new WeakMap();
|
20
30
|
|
21
31
|
/* eslint-disable jsdoc/require-description-complete-sentence */
|
22
32
|
|
@@ -32,6 +42,16 @@ const privatePool = new WeakMap();
|
|
32
42
|
* - handle - the draggable element that sets the desired width of the column.
|
33
43
|
* - guide - the helper guide that shows the desired width as a vertical guide.
|
34
44
|
*/
|
45
|
+
var _config = /*#__PURE__*/new WeakMap();
|
46
|
+
var _onMapInit = /*#__PURE__*/new WeakSet();
|
47
|
+
var _onMouseOver = /*#__PURE__*/new WeakSet();
|
48
|
+
var _onMouseDown = /*#__PURE__*/new WeakSet();
|
49
|
+
var _onMouseMove = /*#__PURE__*/new WeakSet();
|
50
|
+
var _onMouseUp = /*#__PURE__*/new WeakSet();
|
51
|
+
var _onContextMenu = /*#__PURE__*/new WeakSet();
|
52
|
+
var _onModifyColWidth = /*#__PURE__*/new WeakSet();
|
53
|
+
var _onBeforeStretchingColumnWidth = /*#__PURE__*/new WeakSet();
|
54
|
+
var _onBeforeColumnResize = /*#__PURE__*/new WeakSet();
|
35
55
|
class ManualColumnResize extends _base.BasePlugin {
|
36
56
|
static get PLUGIN_KEY() {
|
37
57
|
return PLUGIN_KEY;
|
@@ -39,39 +59,136 @@ class ManualColumnResize extends _base.BasePlugin {
|
|
39
59
|
static get PLUGIN_PRIORITY() {
|
40
60
|
return PLUGIN_PRIORITY;
|
41
61
|
}
|
62
|
+
|
63
|
+
/**
|
64
|
+
* @type {HTMLTableHeaderCellElement}
|
65
|
+
*/
|
66
|
+
|
42
67
|
constructor(hotInstance) {
|
43
68
|
super(hotInstance);
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
this
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
this
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
69
|
+
/**
|
70
|
+
* `beforeColumnResize` hook callback.
|
71
|
+
*/
|
72
|
+
_classPrivateMethodInitSpec(this, _onBeforeColumnResize);
|
73
|
+
/**
|
74
|
+
* Modifies the provided column stretched width. This hook decides if specified column should be stretched or not.
|
75
|
+
*
|
76
|
+
* @param {number} stretchedWidth Stretched width.
|
77
|
+
* @param {number} column Visual column index.
|
78
|
+
* @returns {number}
|
79
|
+
*/
|
80
|
+
_classPrivateMethodInitSpec(this, _onBeforeStretchingColumnWidth);
|
81
|
+
/**
|
82
|
+
* Modifies the provided column width, based on the plugin settings.
|
83
|
+
*
|
84
|
+
* @param {number} width Column width.
|
85
|
+
* @param {number} column Visual column index.
|
86
|
+
* @returns {number}
|
87
|
+
*/
|
88
|
+
_classPrivateMethodInitSpec(this, _onModifyColWidth);
|
89
|
+
/**
|
90
|
+
* Callback for "contextmenu" event triggered on element showing move handle. It removes handle and guide elements.
|
91
|
+
*/
|
92
|
+
_classPrivateMethodInitSpec(this, _onContextMenu);
|
93
|
+
/**
|
94
|
+
* 'mouseup' event callback - apply the column resizing.
|
95
|
+
*
|
96
|
+
* @fires Hooks#beforeColumnResize
|
97
|
+
* @fires Hooks#afterColumnResize
|
98
|
+
*/
|
99
|
+
_classPrivateMethodInitSpec(this, _onMouseUp);
|
100
|
+
/**
|
101
|
+
* 'mousemove' event callback - refresh the handle and guide positions, cache the new column width.
|
102
|
+
*
|
103
|
+
* @param {MouseEvent} event The mouse event.
|
104
|
+
*/
|
105
|
+
_classPrivateMethodInitSpec(this, _onMouseMove);
|
106
|
+
/**
|
107
|
+
* 'mousedown' event callback.
|
108
|
+
*
|
109
|
+
* @param {MouseEvent} event The mouse event.
|
110
|
+
*/
|
111
|
+
_classPrivateMethodInitSpec(this, _onMouseDown);
|
112
|
+
/**
|
113
|
+
* 'mouseover' event callback - set the handle position.
|
114
|
+
*
|
115
|
+
* @param {MouseEvent} event The mouse event.
|
116
|
+
*/
|
117
|
+
_classPrivateMethodInitSpec(this, _onMouseOver);
|
118
|
+
/**
|
119
|
+
* Callback to call on map's `init` local hook.
|
120
|
+
*
|
121
|
+
* @private
|
122
|
+
*/
|
123
|
+
_classPrivateMethodInitSpec(this, _onMapInit);
|
124
|
+
_defineProperty(this, "currentTH", null);
|
125
|
+
/**
|
126
|
+
* @type {number}
|
127
|
+
*/
|
128
|
+
_defineProperty(this, "currentCol", null);
|
129
|
+
/**
|
130
|
+
* @type {number[]}
|
131
|
+
*/
|
132
|
+
_defineProperty(this, "selectedCols", []);
|
133
|
+
/**
|
134
|
+
* @type {number}
|
135
|
+
*/
|
136
|
+
_defineProperty(this, "currentWidth", null);
|
137
|
+
/**
|
138
|
+
* @type {number}
|
139
|
+
*/
|
140
|
+
_defineProperty(this, "newSize", null);
|
141
|
+
/**
|
142
|
+
* @type {number}
|
143
|
+
*/
|
144
|
+
_defineProperty(this, "startY", null);
|
145
|
+
/**
|
146
|
+
* @type {number}
|
147
|
+
*/
|
148
|
+
_defineProperty(this, "startWidth", null);
|
149
|
+
/**
|
150
|
+
* @type {number}
|
151
|
+
*/
|
152
|
+
_defineProperty(this, "startOffset", null);
|
153
|
+
/**
|
154
|
+
* @type {HTMLElement}
|
155
|
+
*/
|
156
|
+
_defineProperty(this, "handle", this.hot.rootDocument.createElement('DIV'));
|
157
|
+
/**
|
158
|
+
* @type {HTMLElement}
|
159
|
+
*/
|
160
|
+
_defineProperty(this, "guide", this.hot.rootDocument.createElement('DIV'));
|
161
|
+
/**
|
162
|
+
* @type {boolean}
|
163
|
+
*/
|
164
|
+
_defineProperty(this, "pressed", null);
|
165
|
+
/**
|
166
|
+
* @type {boolean}
|
167
|
+
*/
|
168
|
+
_defineProperty(this, "isTriggeredByRMB", false);
|
169
|
+
/**
|
170
|
+
* @type {number}
|
171
|
+
*/
|
172
|
+
_defineProperty(this, "dblclick", 0);
|
173
|
+
/**
|
174
|
+
* @type {number}
|
175
|
+
*/
|
176
|
+
_defineProperty(this, "autoresizeTimeout", null);
|
63
177
|
/**
|
64
178
|
* PhysicalIndexToValueMap to keep and track widths for physical column indexes.
|
65
179
|
*
|
66
180
|
* @private
|
67
181
|
* @type {PhysicalIndexToValueMap}
|
68
182
|
*/
|
69
|
-
this
|
183
|
+
_defineProperty(this, "columnWidthsMap", void 0);
|
70
184
|
/**
|
71
185
|
* Private pool to save configuration from updateSettings.
|
186
|
+
*
|
187
|
+
* @type {object}
|
72
188
|
*/
|
73
|
-
|
74
|
-
|
189
|
+
_classPrivateFieldInitSpec(this, _config, {
|
190
|
+
writable: true,
|
191
|
+
value: void 0
|
75
192
|
});
|
76
193
|
(0, _element.addClass)(this.handle, 'manualColumnResizer');
|
77
194
|
(0, _element.addClass)(this.guide, 'manualColumnResizerGuide');
|
@@ -103,11 +220,11 @@ class ManualColumnResize extends _base.BasePlugin {
|
|
103
220
|
return;
|
104
221
|
}
|
105
222
|
this.columnWidthsMap = new _translations.PhysicalIndexToValueMap();
|
106
|
-
this.columnWidthsMap.addLocalHook('init', () => this.
|
223
|
+
this.columnWidthsMap.addLocalHook('init', () => _classPrivateMethodGet(this, _onMapInit, _onMapInit2).call(this));
|
107
224
|
this.hot.columnIndexMapper.registerMap(this.pluginName, this.columnWidthsMap);
|
108
|
-
this.addHook('modifyColWidth', (width, col) => this.
|
109
|
-
this.addHook('beforeStretchingColumnWidth', (stretchedWidth, column) => this.
|
110
|
-
this.addHook('beforeColumnResize', (newSize, column, isDoubleClick) => this.
|
225
|
+
this.addHook('modifyColWidth', (width, col) => _classPrivateMethodGet(this, _onModifyColWidth, _onModifyColWidth2).call(this, width, col));
|
226
|
+
this.addHook('beforeStretchingColumnWidth', (stretchedWidth, column) => _classPrivateMethodGet(this, _onBeforeStretchingColumnWidth, _onBeforeStretchingColumnWidth2).call(this, stretchedWidth, column));
|
227
|
+
this.addHook('beforeColumnResize', (newSize, column, isDoubleClick) => _classPrivateMethodGet(this, _onBeforeColumnResize, _onBeforeColumnResize2).call(this, newSize, column, isDoubleClick));
|
111
228
|
this.bindEvents();
|
112
229
|
super.enablePlugin();
|
113
230
|
}
|
@@ -128,8 +245,7 @@ class ManualColumnResize extends _base.BasePlugin {
|
|
128
245
|
* Disables the plugin functionality for this Handsontable instance.
|
129
246
|
*/
|
130
247
|
disablePlugin() {
|
131
|
-
|
132
|
-
priv.config = this.columnWidthsMap.getValues();
|
248
|
+
_classPrivateFieldSet(this, _config, this.columnWidthsMap.getValues());
|
133
249
|
this.hot.columnIndexMapper.unregisterMap(this.pluginName);
|
134
250
|
super.disablePlugin();
|
135
251
|
}
|
@@ -178,38 +294,6 @@ class ManualColumnResize extends _base.BasePlugin {
|
|
178
294
|
const physicalColumn = this.hot.toPhysicalColumn(column);
|
179
295
|
this.columnWidthsMap.setValueAtIndex(physicalColumn, null);
|
180
296
|
}
|
181
|
-
|
182
|
-
/**
|
183
|
-
* Callback to call on map's `init` local hook.
|
184
|
-
*
|
185
|
-
* @private
|
186
|
-
*/
|
187
|
-
onMapInit() {
|
188
|
-
const priv = privatePool.get(this);
|
189
|
-
const initialSetting = this.hot.getSettings()[PLUGIN_KEY];
|
190
|
-
const loadedManualColumnWidths = this.loadManualColumnWidths();
|
191
|
-
if (typeof loadedManualColumnWidths !== 'undefined') {
|
192
|
-
this.hot.batchExecution(() => {
|
193
|
-
loadedManualColumnWidths.forEach((width, physicalIndex) => {
|
194
|
-
this.columnWidthsMap.setValueAtIndex(physicalIndex, width);
|
195
|
-
});
|
196
|
-
}, true);
|
197
|
-
} else if (Array.isArray(initialSetting)) {
|
198
|
-
this.hot.batchExecution(() => {
|
199
|
-
initialSetting.forEach((width, physicalIndex) => {
|
200
|
-
this.columnWidthsMap.setValueAtIndex(physicalIndex, width);
|
201
|
-
});
|
202
|
-
}, true);
|
203
|
-
priv.config = initialSetting;
|
204
|
-
} else if (initialSetting === true && Array.isArray(priv.config)) {
|
205
|
-
this.hot.batchExecution(() => {
|
206
|
-
priv.config.forEach((width, physicalIndex) => {
|
207
|
-
this.columnWidthsMap.setValueAtIndex(physicalIndex, width);
|
208
|
-
});
|
209
|
-
}, true);
|
210
|
-
}
|
211
|
-
}
|
212
|
-
|
213
297
|
/**
|
214
298
|
* Set the resize handle position.
|
215
299
|
*
|
@@ -348,38 +432,6 @@ class ManualColumnResize extends _base.BasePlugin {
|
|
348
432
|
}
|
349
433
|
return null;
|
350
434
|
}
|
351
|
-
|
352
|
-
/**
|
353
|
-
* 'mouseover' event callback - set the handle position.
|
354
|
-
*
|
355
|
-
* @private
|
356
|
-
* @param {MouseEvent} event The mouse event.
|
357
|
-
*/
|
358
|
-
onMouseOver(event) {
|
359
|
-
// Workaround for #6926 - if the `event.target` is temporarily detached, we can skip this callback and wait for
|
360
|
-
// the next `onmouseover`.
|
361
|
-
if ((0, _element.isDetached)(event.target)) {
|
362
|
-
return;
|
363
|
-
}
|
364
|
-
|
365
|
-
// A "mouseover" action is triggered right after executing "contextmenu" event. It should be ignored.
|
366
|
-
if (this.isTriggeredByRMB === true) {
|
367
|
-
return;
|
368
|
-
}
|
369
|
-
if (this.checkIfColumnHeader(event.target)) {
|
370
|
-
const th = this.getClosestTHParent(event.target);
|
371
|
-
if (!th) {
|
372
|
-
return;
|
373
|
-
}
|
374
|
-
const colspan = th.getAttribute('colspan');
|
375
|
-
if (th && (colspan === null || colspan === '1')) {
|
376
|
-
if (!this.pressed) {
|
377
|
-
this.setupHandlePosition(th);
|
378
|
-
}
|
379
|
-
}
|
380
|
-
}
|
381
|
-
}
|
382
|
-
|
383
435
|
/**
|
384
436
|
* Auto-size row after doubleclick - callback.
|
385
437
|
*
|
@@ -395,7 +447,7 @@ class ManualColumnResize extends _base.BasePlugin {
|
|
395
447
|
};
|
396
448
|
const resize = (column, forceRender) => {
|
397
449
|
const hookNewSize = this.hot.runHooks('beforeColumnResize', this.newSize, column, true);
|
398
|
-
if (hookNewSize !==
|
450
|
+
if (hookNewSize !== undefined) {
|
399
451
|
this.newSize = hookNewSize;
|
400
452
|
}
|
401
453
|
if (this.hot.getSettings().stretchH === 'all') {
|
@@ -426,175 +478,168 @@ class ManualColumnResize extends _base.BasePlugin {
|
|
426
478
|
this.dblclick = 0;
|
427
479
|
this.autoresizeTimeout = null;
|
428
480
|
}
|
429
|
-
|
430
481
|
/**
|
431
|
-
*
|
482
|
+
* Binds the mouse events.
|
432
483
|
*
|
433
484
|
* @private
|
434
|
-
* @param {MouseEvent} event The mouse event.
|
435
485
|
*/
|
436
|
-
|
437
|
-
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
this.startX = event.pageX;
|
447
|
-
this.newSize = this.startWidth;
|
448
|
-
}
|
486
|
+
bindEvents() {
|
487
|
+
const {
|
488
|
+
rootWindow,
|
489
|
+
rootElement
|
490
|
+
} = this.hot;
|
491
|
+
this.eventManager.addEventListener(rootElement, 'mouseover', e => _classPrivateMethodGet(this, _onMouseOver, _onMouseOver2).call(this, e));
|
492
|
+
this.eventManager.addEventListener(rootElement, 'mousedown', e => _classPrivateMethodGet(this, _onMouseDown, _onMouseDown2).call(this, e));
|
493
|
+
this.eventManager.addEventListener(rootWindow, 'mousemove', e => _classPrivateMethodGet(this, _onMouseMove, _onMouseMove2).call(this, e));
|
494
|
+
this.eventManager.addEventListener(rootWindow, 'mouseup', () => _classPrivateMethodGet(this, _onMouseUp, _onMouseUp2).call(this));
|
495
|
+
this.eventManager.addEventListener(this.handle, 'contextmenu', () => _classPrivateMethodGet(this, _onContextMenu, _onContextMenu2).call(this));
|
449
496
|
}
|
450
|
-
|
451
497
|
/**
|
452
|
-
*
|
453
|
-
*
|
454
|
-
* @private
|
455
|
-
* @param {MouseEvent} event The mouse event.
|
498
|
+
* Destroys the plugin instance.
|
456
499
|
*/
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
500
|
+
destroy() {
|
501
|
+
super.destroy();
|
502
|
+
}
|
503
|
+
}
|
504
|
+
exports.ManualColumnResize = ManualColumnResize;
|
505
|
+
function _onMapInit2() {
|
506
|
+
const initialSetting = this.hot.getSettings()[PLUGIN_KEY];
|
507
|
+
const loadedManualColumnWidths = this.loadManualColumnWidths();
|
508
|
+
if (typeof loadedManualColumnWidths !== 'undefined') {
|
509
|
+
this.hot.batchExecution(() => {
|
510
|
+
loadedManualColumnWidths.forEach((width, physicalIndex) => {
|
511
|
+
this.columnWidthsMap.setValueAtIndex(physicalIndex, width);
|
463
512
|
});
|
464
|
-
|
465
|
-
|
466
|
-
|
513
|
+
}, true);
|
514
|
+
} else if (Array.isArray(initialSetting)) {
|
515
|
+
this.hot.batchExecution(() => {
|
516
|
+
initialSetting.forEach((width, physicalIndex) => {
|
517
|
+
this.columnWidthsMap.setValueAtIndex(physicalIndex, width);
|
518
|
+
});
|
519
|
+
}, true);
|
520
|
+
_classPrivateFieldSet(this, _config, initialSetting);
|
521
|
+
} else if (initialSetting === true && Array.isArray(_classPrivateFieldGet(this, _config))) {
|
522
|
+
this.hot.batchExecution(() => {
|
523
|
+
_classPrivateFieldGet(this, _config).forEach((width, physicalIndex) => {
|
524
|
+
this.columnWidthsMap.setValueAtIndex(physicalIndex, width);
|
525
|
+
});
|
526
|
+
}, true);
|
527
|
+
}
|
528
|
+
}
|
529
|
+
function _onMouseOver2(event) {
|
530
|
+
// Workaround for #6926 - if the `event.target` is temporarily detached, we can skip this callback and wait for
|
531
|
+
// the next `onmouseover`.
|
532
|
+
if ((0, _element.isDetached)(event.target)) {
|
533
|
+
return;
|
467
534
|
}
|
468
535
|
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
|
476
|
-
|
477
|
-
|
478
|
-
const
|
479
|
-
|
480
|
-
this.
|
481
|
-
|
482
|
-
};
|
483
|
-
const resize = (column, forceRender) => {
|
484
|
-
this.hot.runHooks('beforeColumnResize', this.newSize, column, false);
|
485
|
-
if (forceRender) {
|
486
|
-
render();
|
487
|
-
}
|
488
|
-
this.saveManualColumnWidths();
|
489
|
-
this.hot.runHooks('afterColumnResize', this.newSize, column, false);
|
490
|
-
};
|
491
|
-
if (this.pressed) {
|
492
|
-
this.hideHandleAndGuide();
|
493
|
-
this.pressed = false;
|
494
|
-
if (this.newSize !== this.startWidth) {
|
495
|
-
const selectedColsLength = this.selectedCols.length;
|
496
|
-
if (selectedColsLength > 1) {
|
497
|
-
(0, _array.arrayEach)(this.selectedCols, selectedCol => {
|
498
|
-
resize(selectedCol);
|
499
|
-
});
|
500
|
-
render();
|
501
|
-
} else {
|
502
|
-
(0, _array.arrayEach)(this.selectedCols, selectedCol => {
|
503
|
-
resize(selectedCol, true);
|
504
|
-
});
|
505
|
-
}
|
536
|
+
// A "mouseover" action is triggered right after executing "contextmenu" event. It should be ignored.
|
537
|
+
if (this.isTriggeredByRMB === true) {
|
538
|
+
return;
|
539
|
+
}
|
540
|
+
if (this.checkIfColumnHeader(event.target)) {
|
541
|
+
const th = this.getClosestTHParent(event.target);
|
542
|
+
if (!th) {
|
543
|
+
return;
|
544
|
+
}
|
545
|
+
const colspan = th.getAttribute('colspan');
|
546
|
+
if (th && (colspan === null || colspan === '1')) {
|
547
|
+
if (!this.pressed) {
|
548
|
+
this.setupHandlePosition(th);
|
506
549
|
}
|
507
|
-
this.setupHandlePosition(this.currentTH);
|
508
550
|
}
|
509
551
|
}
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
519
|
-
|
520
|
-
this.
|
521
|
-
this.
|
522
|
-
|
523
|
-
// There is thrown "mouseover" event right after opening a context menu. This flag inform that handle
|
524
|
-
// shouldn't be drawn just after removing it.
|
525
|
-
this.hot._registerImmediate(() => {
|
526
|
-
this.isTriggeredByRMB = false;
|
527
|
-
});
|
552
|
+
}
|
553
|
+
function _onMouseDown2(event) {
|
554
|
+
if ((0, _element.hasClass)(event.target, 'manualColumnResizer')) {
|
555
|
+
this.setupHandlePosition(this.currentTH);
|
556
|
+
this.setupGuidePosition();
|
557
|
+
this.pressed = true;
|
558
|
+
if (this.autoresizeTimeout === null) {
|
559
|
+
this.autoresizeTimeout = setTimeout(() => this.afterMouseDownTimeout(), 500);
|
560
|
+
this.hot._registerTimeout(this.autoresizeTimeout);
|
561
|
+
}
|
562
|
+
this.dblclick += 1;
|
563
|
+
this.startX = event.pageX;
|
564
|
+
this.newSize = this.startWidth;
|
528
565
|
}
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
|
539
|
-
} = this.hot;
|
540
|
-
this.eventManager.addEventListener(rootElement, 'mouseover', e => this.onMouseOver(e));
|
541
|
-
this.eventManager.addEventListener(rootElement, 'mousedown', e => this.onMouseDown(e));
|
542
|
-
this.eventManager.addEventListener(rootWindow, 'mousemove', e => this.onMouseMove(e));
|
543
|
-
this.eventManager.addEventListener(rootWindow, 'mouseup', () => this.onMouseUp());
|
544
|
-
this.eventManager.addEventListener(this.handle, 'contextmenu', () => this.onContextMenu());
|
566
|
+
}
|
567
|
+
function _onMouseMove2(event) {
|
568
|
+
if (this.pressed) {
|
569
|
+
const change = (event.pageX - this.startX) * this.hot.getDirectionFactor();
|
570
|
+
this.currentWidth = this.startWidth + change;
|
571
|
+
(0, _array.arrayEach)(this.selectedCols, selectedCol => {
|
572
|
+
this.newSize = this.setManualSize(selectedCol, this.currentWidth);
|
573
|
+
});
|
574
|
+
this.refreshHandlePosition();
|
575
|
+
this.refreshGuidePosition();
|
545
576
|
}
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
577
|
+
}
|
578
|
+
function _onMouseUp2() {
|
579
|
+
const render = () => {
|
580
|
+
this.hot.forceFullRender = true;
|
581
|
+
this.hot.view.render(); // updates all
|
582
|
+
this.hot.view.adjustElementsSize(true);
|
583
|
+
};
|
584
|
+
const resize = (column, forceRender) => {
|
585
|
+
this.hot.runHooks('beforeColumnResize', this.newSize, column, false);
|
586
|
+
if (forceRender) {
|
587
|
+
render();
|
588
|
+
}
|
589
|
+
this.saveManualColumnWidths();
|
590
|
+
this.hot.runHooks('afterColumnResize', this.newSize, column, false);
|
591
|
+
};
|
592
|
+
if (this.pressed) {
|
593
|
+
this.hideHandleAndGuide();
|
594
|
+
this.pressed = false;
|
595
|
+
if (this.newSize !== this.startWidth) {
|
596
|
+
const selectedColsLength = this.selectedCols.length;
|
597
|
+
if (selectedColsLength > 1) {
|
598
|
+
(0, _array.arrayEach)(this.selectedCols, selectedCol => {
|
599
|
+
resize(selectedCol);
|
600
|
+
});
|
601
|
+
render();
|
602
|
+
} else {
|
603
|
+
(0, _array.arrayEach)(this.selectedCols, selectedCol => {
|
604
|
+
resize(selectedCol, true);
|
605
|
+
});
|
562
606
|
}
|
563
607
|
}
|
564
|
-
|
608
|
+
this.setupHandlePosition(this.currentTH);
|
565
609
|
}
|
566
|
-
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
|
610
|
+
}
|
611
|
+
function _onContextMenu2() {
|
612
|
+
this.hideHandleAndGuide();
|
613
|
+
this.hot.rootElement.removeChild(this.handle);
|
614
|
+
this.hot.rootElement.removeChild(this.guide);
|
615
|
+
this.pressed = false;
|
616
|
+
this.isTriggeredByRMB = true;
|
617
|
+
|
618
|
+
// There is thrown "mouseover" event right after opening a context menu. This flag inform that handle
|
619
|
+
// shouldn't be drawn just after removing it.
|
620
|
+
this.hot._registerImmediate(() => {
|
621
|
+
this.isTriggeredByRMB = false;
|
622
|
+
});
|
623
|
+
}
|
624
|
+
function _onModifyColWidth2(width, column) {
|
625
|
+
let newWidth = width;
|
626
|
+
if (this.enabled) {
|
627
|
+
const physicalColumn = this.hot.toPhysicalColumn(column);
|
628
|
+
const columnWidth = this.columnWidthsMap.getValueAtIndex(physicalColumn);
|
629
|
+
if (this.hot.getSettings()[PLUGIN_KEY] && columnWidth) {
|
630
|
+
newWidth = columnWidth;
|
579
631
|
}
|
580
|
-
return width;
|
581
632
|
}
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
onBeforeColumnResize() {
|
589
|
-
// clear the header height cache information
|
590
|
-
this.hot.view._wt.wtViewport.resetHasOversizedColumnHeadersMarked();
|
591
|
-
}
|
592
|
-
|
593
|
-
/**
|
594
|
-
* Destroys the plugin instance.
|
595
|
-
*/
|
596
|
-
destroy() {
|
597
|
-
super.destroy();
|
633
|
+
return newWidth;
|
634
|
+
}
|
635
|
+
function _onBeforeStretchingColumnWidth2(stretchedWidth, column) {
|
636
|
+
let width = this.columnWidthsMap.getValueAtIndex(column);
|
637
|
+
if (width === null) {
|
638
|
+
width = stretchedWidth;
|
598
639
|
}
|
640
|
+
return width;
|
599
641
|
}
|
600
|
-
|
642
|
+
function _onBeforeColumnResize2() {
|
643
|
+
// clear the header height cache information
|
644
|
+
this.hot.view._wt.wtViewport.resetHasOversizedColumnHeadersMarked();
|
645
|
+
}
|