handsontable 0.0.0-next-02c94b0-20240416 → 0.0.0-next-c99a89d-20240418
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/walkontable/src/overlay/_base.js +24 -20
- package/3rdparty/walkontable/src/overlay/_base.mjs +24 -20
- package/3rdparty/walkontable/src/overlay/bottom.js +3 -6
- package/3rdparty/walkontable/src/overlay/bottom.mjs +3 -6
- package/3rdparty/walkontable/src/overlay/inlineStart.js +3 -6
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +3 -6
- package/3rdparty/walkontable/src/overlay/top.js +3 -6
- package/3rdparty/walkontable/src/overlay/top.mjs +3 -6
- package/3rdparty/walkontable/src/overlays.js +46 -24
- package/3rdparty/walkontable/src/overlays.mjs +46 -24
- package/3rdparty/walkontable/src/table.js +10 -11
- package/3rdparty/walkontable/src/table.mjs +10 -11
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/dataMap/metaManager/mods/extendMetaProperties.js +37 -31
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +37 -31
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +149 -129
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +8 -8
- package/dist/handsontable.js +149 -129
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +8 -8
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/package.json +1 -1
- package/plugins/autoRowSize/autoRowSize.js +2 -2
- package/plugins/autoRowSize/autoRowSize.mjs +2 -2
- package/plugins/collapsibleColumns/collapsibleColumns.js +1 -1
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +1 -1
- package/plugins/filters/filters.js +1 -1
- package/plugins/filters/filters.mjs +1 -1
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -1
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +1 -1
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +1 -1
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +1 -1
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -1
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +1 -1
- package/plugins/hiddenRows/contextMenuItem/showRow.js +1 -1
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +1 -1
- 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/manualColumnMove/manualColumnMove.js +1 -1
- package/plugins/manualColumnMove/manualColumnMove.mjs +1 -1
- package/plugins/manualColumnResize/manualColumnResize.js +2 -2
- package/plugins/manualColumnResize/manualColumnResize.mjs +2 -2
- package/plugins/manualRowMove/manualRowMove.js +1 -1
- package/plugins/manualRowMove/manualRowMove.mjs +1 -1
- package/plugins/manualRowResize/manualRowResize.js +2 -2
- package/plugins/manualRowResize/manualRowResize.mjs +2 -2
- package/tableView.js +1 -4
- package/tableView.mjs +1 -4
package/dist/handsontable.js
CHANGED
@@ -25,8 +25,8 @@
|
|
25
25
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
26
26
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
27
27
|
*
|
28
|
-
* Version: 0.0.0-next-
|
29
|
-
* Release date: 16/04/2024 (built at
|
28
|
+
* Version: 0.0.0-next-c99a89d-20240418
|
29
|
+
* Release date: 16/04/2024 (built at 18/04/2024 11:00:07)
|
30
30
|
*/
|
31
31
|
(function webpackUniversalModuleDefinition(root, factory) {
|
32
32
|
if(typeof exports === 'object' && typeof module === 'object')
|
@@ -107,8 +107,8 @@ Handsontable.hooks = _pluginHooks.default.getSingleton();
|
|
107
107
|
Handsontable.CellCoords = _src.CellCoords;
|
108
108
|
Handsontable.CellRange = _src.CellRange;
|
109
109
|
Handsontable.packageName = 'handsontable';
|
110
|
-
Handsontable.buildDate = "
|
111
|
-
Handsontable.version = "0.0.0-next-
|
110
|
+
Handsontable.buildDate = "18/04/2024 11:00:07";
|
111
|
+
Handsontable.version = "0.0.0-next-c99a89d-20240418";
|
112
112
|
Handsontable.languages = {
|
113
113
|
dictionaryKeys: _registry.dictionaryKeys,
|
114
114
|
getLanguageDictionary: _registry.getLanguageDictionary,
|
@@ -8551,7 +8551,7 @@ const domMessages = {
|
|
8551
8551
|
function _injectProductInfo(key, element) {
|
8552
8552
|
const hasValidType = !isEmpty(key);
|
8553
8553
|
const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
|
8554
|
-
const hotVersion = "0.0.0-next-
|
8554
|
+
const hotVersion = "0.0.0-next-c99a89d-20240418";
|
8555
8555
|
let keyValidityDate;
|
8556
8556
|
let consoleMessageState = 'invalid';
|
8557
8557
|
let domMessageState = 'invalid';
|
@@ -15979,15 +15979,12 @@ class TableView {
|
|
15979
15979
|
|
15980
15980
|
/**
|
15981
15981
|
* Adjust overlays elements size and master table size.
|
15982
|
-
*
|
15983
|
-
* @param {boolean} [force=false] When `true`, it adjust the DOM nodes sizes for all overlays.
|
15984
15982
|
*/
|
15985
15983
|
adjustElementsSize() {
|
15986
|
-
let force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
15987
15984
|
if (this.hot.isRenderSuspended()) {
|
15988
15985
|
this.postponedAdjustElementsSize = true;
|
15989
15986
|
} else {
|
15990
|
-
this._wt.wtOverlays.adjustElementsSize(
|
15987
|
+
this._wt.wtOverlays.adjustElementsSize();
|
15991
15988
|
}
|
15992
15989
|
}
|
15993
15990
|
|
@@ -19764,6 +19761,7 @@ var _default = exports["default"] = Event;
|
|
19764
19761
|
|
19765
19762
|
var _interopRequireDefault = __webpack_require__(1);
|
19766
19763
|
exports.__esModule = true;
|
19764
|
+
__webpack_require__(8);
|
19767
19765
|
__webpack_require__(90);
|
19768
19766
|
var _defineProperty2 = _interopRequireDefault(__webpack_require__(122));
|
19769
19767
|
var _element = __webpack_require__(107);
|
@@ -19772,9 +19770,16 @@ var _array = __webpack_require__(113);
|
|
19772
19770
|
var _unicode = __webpack_require__(126);
|
19773
19771
|
var _browser = __webpack_require__(116);
|
19774
19772
|
var _overlay = __webpack_require__(166);
|
19773
|
+
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
19774
|
+
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
19775
|
+
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
19776
|
+
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
19777
|
+
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
19775
19778
|
/**
|
19776
19779
|
* @class Overlays
|
19777
19780
|
*/
|
19781
|
+
var _overlays = /*#__PURE__*/new WeakMap();
|
19782
|
+
var _hasRenderingStateChanged = /*#__PURE__*/new WeakMap();
|
19778
19783
|
class Overlays {
|
19779
19784
|
/**
|
19780
19785
|
* @param {Walkontable} wotInstance The Walkontable instance. @todo refactoring remove.
|
@@ -19792,6 +19797,12 @@ class Overlays {
|
|
19792
19797
|
* @type {Walkontable}
|
19793
19798
|
*/
|
19794
19799
|
(0, _defineProperty2.default)(this, "wot", null);
|
19800
|
+
/**
|
19801
|
+
* An array of the all overlays.
|
19802
|
+
*
|
19803
|
+
* @type {Overlay[]}
|
19804
|
+
*/
|
19805
|
+
_classPrivateFieldInitSpec(this, _overlays, []);
|
19795
19806
|
/**
|
19796
19807
|
* Refer to the TopOverlay instance.
|
19797
19808
|
*
|
@@ -19841,6 +19852,12 @@ class Overlays {
|
|
19841
19852
|
* @type {Settings}
|
19842
19853
|
*/
|
19843
19854
|
(0, _defineProperty2.default)(this, "wtSettings", null);
|
19855
|
+
/**
|
19856
|
+
* Indicates whether the rendering state has changed for one of the overlays.
|
19857
|
+
*
|
19858
|
+
* @type {boolean}
|
19859
|
+
*/
|
19860
|
+
_classPrivateFieldInitSpec(this, _hasRenderingStateChanged, false);
|
19844
19861
|
/**
|
19845
19862
|
* The instance of the ResizeObserver that observes the size of the Walkontable wrapper element.
|
19846
19863
|
* In case of the size change detection the `onContainerElementResize` is fired.
|
@@ -19900,7 +19917,7 @@ class Overlays {
|
|
19900
19917
|
*/
|
19901
19918
|
getOverlays() {
|
19902
19919
|
let includeMaster = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
19903
|
-
const overlays = [
|
19920
|
+
const overlays = [..._classPrivateFieldGet(_overlays, this)];
|
19904
19921
|
if (includeMaster) {
|
19905
19922
|
overlays.push(this.wtTable);
|
19906
19923
|
}
|
@@ -19945,29 +19962,31 @@ class Overlays {
|
|
19945
19962
|
// TODO cond. Has no any visual impact. They're initially hidden in same way like left, top, and bottom overlays.
|
19946
19963
|
this.topInlineStartCornerOverlay = new _overlay.TopInlineStartCornerOverlay(...args, this.topOverlay, this.inlineStartOverlay);
|
19947
19964
|
this.bottomInlineStartCornerOverlay = new _overlay.BottomInlineStartCornerOverlay(...args, this.bottomOverlay, this.inlineStartOverlay);
|
19965
|
+
_classPrivateFieldSet(_overlays, this, [this.topOverlay, this.bottomOverlay, this.inlineStartOverlay, this.topInlineStartCornerOverlay, this.bottomInlineStartCornerOverlay]);
|
19948
19966
|
}
|
19949
19967
|
|
19950
19968
|
/**
|
19951
|
-
*
|
19952
|
-
*
|
19953
|
-
* @package
|
19954
|
-
* @returns {boolean} Returns `true` if changes applied to overlay needs scroll synchronization.
|
19969
|
+
* Runs logic for the overlays before the table is drawn.
|
19955
19970
|
*/
|
19956
|
-
|
19957
|
-
|
19958
|
-
|
19959
|
-
|
19971
|
+
beforeDraw() {
|
19972
|
+
_classPrivateFieldSet(_hasRenderingStateChanged, this, _classPrivateFieldGet(_overlays, this).reduce((acc, overlay) => {
|
19973
|
+
return overlay.hasRenderingStateChanged() || acc;
|
19974
|
+
}, false));
|
19975
|
+
_classPrivateFieldGet(_overlays, this).forEach(overlay => overlay.updateStateOfRendering('before'));
|
19976
|
+
}
|
19960
19977
|
|
19961
|
-
|
19962
|
-
|
19963
|
-
|
19964
|
-
|
19965
|
-
|
19966
|
-
|
19967
|
-
|
19978
|
+
/**
|
19979
|
+
* Runs logic for the overlays after the table is drawn.
|
19980
|
+
*/
|
19981
|
+
afterDraw() {
|
19982
|
+
this.syncScrollWithMaster();
|
19983
|
+
_classPrivateFieldGet(_overlays, this).forEach(overlay => {
|
19984
|
+
const hasRenderingStateChanged = overlay.hasRenderingStateChanged();
|
19985
|
+
overlay.updateStateOfRendering('after');
|
19986
|
+
if (hasRenderingStateChanged && !overlay.needFullRender) {
|
19987
|
+
overlay.reset();
|
19968
19988
|
}
|
19969
|
-
}
|
19970
|
-
return syncScroll;
|
19989
|
+
});
|
19971
19990
|
}
|
19972
19991
|
|
19973
19992
|
/**
|
@@ -20207,6 +20226,9 @@ class Overlays {
|
|
20207
20226
|
* Synchronize overlay scrollbars with the master scrollbar.
|
20208
20227
|
*/
|
20209
20228
|
syncScrollWithMaster() {
|
20229
|
+
if (!_classPrivateFieldGet(_hasRenderingStateChanged, this)) {
|
20230
|
+
return;
|
20231
|
+
}
|
20210
20232
|
const master = this.topOverlay.mainTableScrollableElement;
|
20211
20233
|
const {
|
20212
20234
|
scrollLeft,
|
@@ -20221,6 +20243,7 @@ class Overlays {
|
|
20221
20243
|
if (this.inlineStartOverlay.needFullRender) {
|
20222
20244
|
this.inlineStartOverlay.clone.wtTable.holder.scrollTop = scrollTop; // todo rethink, *overlay.setScroll*()
|
20223
20245
|
}
|
20246
|
+
_classPrivateFieldSet(_hasRenderingStateChanged, this, false);
|
20224
20247
|
}
|
20225
20248
|
|
20226
20249
|
/**
|
@@ -20311,11 +20334,8 @@ class Overlays {
|
|
20311
20334
|
|
20312
20335
|
/**
|
20313
20336
|
* Adjust overlays elements size and master table size.
|
20314
|
-
*
|
20315
|
-
* @param {boolean} [force=false] When `true`, it adjust the DOM nodes sizes for all overlays.
|
20316
20337
|
*/
|
20317
20338
|
adjustElementsSize() {
|
20318
|
-
let force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
20319
20339
|
const {
|
20320
20340
|
wtViewport
|
20321
20341
|
} = this.wot;
|
@@ -20365,9 +20385,9 @@ class Overlays {
|
|
20365
20385
|
this.hasScrollbarRight = true;
|
20366
20386
|
}
|
20367
20387
|
}
|
20368
|
-
this.topOverlay.adjustElementsSize(
|
20369
|
-
this.inlineStartOverlay.adjustElementsSize(
|
20370
|
-
this.bottomOverlay.adjustElementsSize(
|
20388
|
+
this.topOverlay.adjustElementsSize();
|
20389
|
+
this.inlineStartOverlay.adjustElementsSize();
|
20390
|
+
this.bottomOverlay.adjustElementsSize();
|
20371
20391
|
}
|
20372
20392
|
|
20373
20393
|
/**
|
@@ -20890,7 +20910,6 @@ class Table {
|
|
20890
20910
|
const rowHeadersCount = rowHeaders.length;
|
20891
20911
|
const columnHeaders = wtSettings.getSetting('columnHeaders');
|
20892
20912
|
const columnHeadersCount = columnHeaders.length;
|
20893
|
-
let syncScroll = false;
|
20894
20913
|
let runFastDraw = fastDraw;
|
20895
20914
|
if (this.isMaster) {
|
20896
20915
|
this.holderOffset = (0, _element.offset)(this.holder);
|
@@ -20905,7 +20924,7 @@ class Table {
|
|
20905
20924
|
}
|
20906
20925
|
}
|
20907
20926
|
if (this.isMaster) {
|
20908
|
-
|
20927
|
+
wtOverlays.beforeDraw();
|
20909
20928
|
}
|
20910
20929
|
if (runFastDraw) {
|
20911
20930
|
if (this.isMaster) {
|
@@ -20946,7 +20965,7 @@ class Table {
|
|
20946
20965
|
let workspaceWidth;
|
20947
20966
|
if (this.isMaster) {
|
20948
20967
|
workspaceWidth = this.dataAccessObject.workspaceWidth;
|
20949
|
-
|
20968
|
+
wtViewport.containerWidth = null;
|
20950
20969
|
this.markOversizedColumnHeaders();
|
20951
20970
|
}
|
20952
20971
|
this.adjustColumnHeaderHeights();
|
@@ -20954,10 +20973,10 @@ class Table {
|
|
20954
20973
|
this.markOversizedRows();
|
20955
20974
|
}
|
20956
20975
|
if (this.isMaster) {
|
20957
|
-
|
20958
|
-
|
20959
|
-
|
20960
|
-
|
20976
|
+
wtViewport.createVisibleCalculators();
|
20977
|
+
wtViewport.createPartiallyVisibleCalculators();
|
20978
|
+
wtOverlays.refresh(false);
|
20979
|
+
wtOverlays.applyToDOM();
|
20961
20980
|
const hiderWidth = (0, _element.outerWidth)(this.hider);
|
20962
20981
|
const tableWidth = (0, _element.outerWidth)(this.TABLE);
|
20963
20982
|
if (hiderWidth !== 0 && tableWidth !== hiderWidth) {
|
@@ -20965,9 +20984,9 @@ class Table {
|
|
20965
20984
|
this.columnUtils.calculateWidths();
|
20966
20985
|
this.tableRenderer.renderer.colGroup.render();
|
20967
20986
|
}
|
20968
|
-
if (workspaceWidth !==
|
20987
|
+
if (workspaceWidth !== wtViewport.getWorkspaceWidth()) {
|
20969
20988
|
// workspace width changed though to shown/hidden vertical scrollbar. Let's reapply stretching
|
20970
|
-
|
20989
|
+
wtViewport.containerWidth = null;
|
20971
20990
|
this.columnUtils.calculateWidths();
|
20972
20991
|
this.tableRenderer.renderer.colGroup.render();
|
20973
20992
|
}
|
@@ -21000,8 +21019,8 @@ class Table {
|
|
21000
21019
|
} else {
|
21001
21020
|
this.dataAccessObject.selectionManager.setActiveOverlay(this.facadeGetter()).render(runFastDraw);
|
21002
21021
|
}
|
21003
|
-
if (
|
21004
|
-
wtOverlays.
|
21022
|
+
if (this.isMaster) {
|
21023
|
+
wtOverlays.afterDraw();
|
21005
21024
|
}
|
21006
21025
|
this.dataAccessObject.drawn = true;
|
21007
21026
|
return this;
|
@@ -24057,7 +24076,6 @@ __webpack_require__(8);
|
|
24057
24076
|
var _defineProperty2 = _interopRequireDefault(__webpack_require__(122));
|
24058
24077
|
var _element = __webpack_require__(107);
|
24059
24078
|
var _object = __webpack_require__(117);
|
24060
|
-
var _array = __webpack_require__(113);
|
24061
24079
|
var _console = __webpack_require__(130);
|
24062
24080
|
var _constants = __webpack_require__(193);
|
24063
24081
|
var _clone = _interopRequireDefault(__webpack_require__(194));
|
@@ -24110,24 +24128,35 @@ class Overlay {
|
|
24110
24128
|
this.holder = holder;
|
24111
24129
|
this.wtRootElement = wtRootElement;
|
24112
24130
|
this.trimmingContainer = (0, _element.getTrimmingContainer)(this.hider.parentNode.parentNode);
|
24113
|
-
this.
|
24131
|
+
this.needFullRender = this.shouldBeRendered();
|
24114
24132
|
this.clone = this.makeClone();
|
24115
24133
|
}
|
24116
24134
|
|
24117
24135
|
/**
|
24118
|
-
*
|
24136
|
+
* Checks if the overlay rendering state has changed.
|
24119
24137
|
*
|
24120
|
-
* @returns {boolean}
|
24138
|
+
* @returns {boolean}
|
24121
24139
|
*/
|
24122
|
-
|
24123
|
-
|
24124
|
-
|
24125
|
-
|
24126
|
-
|
24127
|
-
|
24128
|
-
|
24140
|
+
hasRenderingStateChanged() {
|
24141
|
+
return this.needFullRender !== this.shouldBeRendered();
|
24142
|
+
}
|
24143
|
+
|
24144
|
+
/**
|
24145
|
+
* Updates internal state with an information about the need of full rendering of the overlay in the next draw cycles.
|
24146
|
+
*
|
24147
|
+
* If the state is changed to render the overlay, the `needFullRender` property is set to `true` which means that
|
24148
|
+
* the overlay will be fully rendered in the current draw cycle. If the state is changed to not render the overlay,
|
24149
|
+
* the `needFullRender` property is set to `false` which means that the overlay will be fully rendered in the
|
24150
|
+
* current draw cycle but it will not be rendered in the next draw cycles.
|
24151
|
+
*
|
24152
|
+
* @param {'before' | 'after'} drawPhase The phase of the rendering process.
|
24153
|
+
*/
|
24154
|
+
updateStateOfRendering(drawPhase) {
|
24155
|
+
if (drawPhase === 'before' && this.shouldBeRendered()) {
|
24156
|
+
this.needFullRender = true;
|
24157
|
+
} else if (drawPhase === 'after' && !this.shouldBeRendered()) {
|
24158
|
+
this.needFullRender = false;
|
24129
24159
|
}
|
24130
|
-
return changed;
|
24131
24160
|
}
|
24132
24161
|
|
24133
24162
|
/**
|
@@ -24354,27 +24383,21 @@ class Overlay {
|
|
24354
24383
|
*/
|
24355
24384
|
refresh() {
|
24356
24385
|
let fastDraw = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
24357
|
-
|
24358
|
-
const nextCycleRenderFlag = this.shouldBeRendered();
|
24359
|
-
if (this.clone && (this.needFullRender || nextCycleRenderFlag)) {
|
24386
|
+
if (this.needFullRender) {
|
24360
24387
|
this.clone.draw(fastDraw);
|
24361
24388
|
}
|
24362
|
-
this.needFullRender = nextCycleRenderFlag;
|
24363
24389
|
}
|
24364
24390
|
|
24365
24391
|
/**
|
24366
24392
|
* Reset overlay styles to initial values.
|
24367
24393
|
*/
|
24368
24394
|
reset() {
|
24369
|
-
if (!this.clone) {
|
24370
|
-
return;
|
24371
|
-
}
|
24372
24395
|
const holder = this.clone.wtTable.holder; // todo refactoring: DEMETER
|
24373
24396
|
const hider = this.clone.wtTable.hider; // todo refactoring: DEMETER
|
24374
24397
|
const holderStyle = holder.style;
|
24375
24398
|
const hiderStyle = hider.style;
|
24376
24399
|
const rootStyle = holder.parentNode.style;
|
24377
|
-
|
24400
|
+
[holderStyle, hiderStyle, rootStyle].forEach(style => {
|
24378
24401
|
style.width = '';
|
24379
24402
|
style.height = '';
|
24380
24403
|
});
|
@@ -25194,7 +25217,7 @@ class BottomOverlay extends _base.Overlay {
|
|
25194
25217
|
* @returns {boolean}
|
25195
25218
|
*/
|
25196
25219
|
resetFixedPosition() {
|
25197
|
-
if (!this.needFullRender || !this.wot.wtTable.holder.parentNode) {
|
25220
|
+
if (!this.needFullRender || !this.shouldBeRendered() || !this.wot.wtTable.holder.parentNode) {
|
25198
25221
|
// removed from DOM
|
25199
25222
|
return false;
|
25200
25223
|
}
|
@@ -25291,14 +25314,11 @@ class BottomOverlay extends _base.Overlay {
|
|
25291
25314
|
}
|
25292
25315
|
|
25293
25316
|
/**
|
25294
|
-
* Adjust overlay root element,
|
25295
|
-
*
|
25296
|
-
* @param {boolean} [force=false] When `true`, it adjusts the DOM nodes sizes for that overlay.
|
25317
|
+
* Adjust overlay root element, children and master table element sizes (width, height).
|
25297
25318
|
*/
|
25298
25319
|
adjustElementsSize() {
|
25299
|
-
let force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
25300
25320
|
this.updateTrimmingContainer();
|
25301
|
-
if (this.needFullRender
|
25321
|
+
if (this.needFullRender) {
|
25302
25322
|
this.adjustRootElementSize();
|
25303
25323
|
this.adjustRootChildrenSize();
|
25304
25324
|
}
|
@@ -25711,7 +25731,7 @@ class InlineStartOverlay extends _base.Overlay {
|
|
25711
25731
|
const {
|
25712
25732
|
wtTable
|
25713
25733
|
} = this.wot;
|
25714
|
-
if (!this.needFullRender || !wtTable.holder.parentNode) {
|
25734
|
+
if (!this.needFullRender || !this.shouldBeRendered() || !wtTable.holder.parentNode) {
|
25715
25735
|
// removed from DOM
|
25716
25736
|
return false;
|
25717
25737
|
}
|
@@ -25783,14 +25803,11 @@ class InlineStartOverlay extends _base.Overlay {
|
|
25783
25803
|
}
|
25784
25804
|
|
25785
25805
|
/**
|
25786
|
-
* Adjust overlay root element,
|
25787
|
-
*
|
25788
|
-
* @param {boolean} [force=false] When `true`, it adjusts the DOM nodes sizes for that overlay.
|
25806
|
+
* Adjust overlay root element, children and master table element sizes (width, height).
|
25789
25807
|
*/
|
25790
25808
|
adjustElementsSize() {
|
25791
|
-
let force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
25792
25809
|
this.updateTrimmingContainer();
|
25793
|
-
if (this.needFullRender
|
25810
|
+
if (this.needFullRender) {
|
25794
25811
|
this.adjustRootElementSize();
|
25795
25812
|
this.adjustRootChildrenSize();
|
25796
25813
|
}
|
@@ -28015,7 +28032,7 @@ class TopOverlay extends _base.Overlay {
|
|
28015
28032
|
* @returns {boolean}
|
28016
28033
|
*/
|
28017
28034
|
resetFixedPosition() {
|
28018
|
-
if (!this.needFullRender || !this.wot.wtTable.holder.parentNode) {
|
28035
|
+
if (!this.needFullRender || !this.shouldBeRendered() || !this.wot.wtTable.holder.parentNode) {
|
28019
28036
|
// removed from DOM
|
28020
28037
|
return false;
|
28021
28038
|
}
|
@@ -28103,14 +28120,11 @@ class TopOverlay extends _base.Overlay {
|
|
28103
28120
|
}
|
28104
28121
|
|
28105
28122
|
/**
|
28106
|
-
* Adjust overlay root element,
|
28107
|
-
*
|
28108
|
-
* @param {boolean} [force=false] When `true`, it adjusts the DOM nodes sizes for that overlay.
|
28123
|
+
* Adjust overlay root element, children and master table element sizes (width, height).
|
28109
28124
|
*/
|
28110
28125
|
adjustElementsSize() {
|
28111
|
-
let force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
28112
28126
|
this.updateTrimmingContainer();
|
28113
|
-
if (this.needFullRender
|
28127
|
+
if (this.needFullRender) {
|
28114
28128
|
this.adjustRootElementSize();
|
28115
28129
|
this.adjustRootChildrenSize();
|
28116
28130
|
}
|
@@ -42738,7 +42752,13 @@ exports.DynamicCellMetaMod = DynamicCellMetaMod;
|
|
42738
42752
|
var _interopRequireDefault = __webpack_require__(1);
|
42739
42753
|
exports.__esModule = true;
|
42740
42754
|
__webpack_require__(8);
|
42755
|
+
__webpack_require__(90);
|
42741
42756
|
var _defineProperty2 = _interopRequireDefault(__webpack_require__(122));
|
42757
|
+
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
42758
|
+
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
42759
|
+
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
42760
|
+
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
42761
|
+
var _initOnlyCallback = /*#__PURE__*/new WeakMap();
|
42742
42762
|
/**
|
42743
42763
|
* @class ExtendMetaPropertiesMod
|
42744
42764
|
*/
|
@@ -42756,11 +42776,7 @@ class ExtendMetaPropertiesMod {
|
|
42756
42776
|
* @type {Map}
|
42757
42777
|
*/
|
42758
42778
|
(0, _defineProperty2.default)(this, "propDescriptors", new Map([['ariaTags', {
|
42759
|
-
|
42760
|
-
if (!isInitialChange) {
|
42761
|
-
throw new Error(`The \`${propName}\` option can not be updated after the Handsontable instance was initialized.`);
|
42762
|
-
}
|
42763
|
-
}
|
42779
|
+
initOnly: true
|
42764
42780
|
}], ['fixedColumnsLeft', {
|
42765
42781
|
target: 'fixedColumnsStart',
|
42766
42782
|
onChange(propName) {
|
@@ -42773,48 +42789,52 @@ class ExtendMetaPropertiesMod {
|
|
42773
42789
|
}
|
42774
42790
|
}
|
42775
42791
|
}], ['layoutDirection', {
|
42776
|
-
|
42777
|
-
|
42778
|
-
|
42779
|
-
|
42792
|
+
initOnly: true
|
42793
|
+
}], ['renderAllColumns', {
|
42794
|
+
initOnly: true
|
42795
|
+
}], ['renderAllRows', {
|
42796
|
+
initOnly: true
|
42797
|
+
}]]));
|
42798
|
+
/**
|
42799
|
+
* Callback called when the prop is marked as `initOnly`.
|
42800
|
+
*
|
42801
|
+
* @param {string} propName The property name.
|
42802
|
+
* @param {*} value The new value.
|
42803
|
+
* @param {boolean} isInitialChange Is the change initial.
|
42804
|
+
*/
|
42805
|
+
_classPrivateFieldInitSpec(this, _initOnlyCallback, (propName, value, isInitialChange) => {
|
42806
|
+
if (!isInitialChange) {
|
42807
|
+
throw new Error(`The \`${propName}\` option can not be updated after the Handsontable is initialized.`);
|
42780
42808
|
}
|
42781
|
-
}
|
42782
|
-
// Temporary commented out due to the bug in the React wrapper.
|
42783
|
-
// ['renderAllColumns', {
|
42784
|
-
// onChange(propName, value, isInitialChange) {
|
42785
|
-
// if (!isInitialChange) {
|
42786
|
-
// throw new Error(`The \`${propName}\` option can not be updated after the Handsontable is initialized.`);
|
42787
|
-
// }
|
42788
|
-
// }
|
42789
|
-
// }],
|
42790
|
-
// ['renderAllRows', {
|
42791
|
-
// onChange(propName, value, isInitialChange) {
|
42792
|
-
// if (!isInitialChange) {
|
42793
|
-
// throw new Error(`The \`${propName}\` option can not be updated after the Handsontable is initialized.`);
|
42794
|
-
// }
|
42795
|
-
// }
|
42796
|
-
// }],
|
42797
|
-
]));
|
42809
|
+
});
|
42798
42810
|
this.metaManager = metaManager;
|
42799
42811
|
this.extendMetaProps();
|
42800
42812
|
}
|
42801
|
-
|
42802
42813
|
/**
|
42803
42814
|
* Extends the meta options based on the object descriptors from the `propDescriptors` list.
|
42804
42815
|
*/
|
42805
42816
|
extendMetaProps() {
|
42806
42817
|
this.propDescriptors.forEach((descriptor, alias) => {
|
42807
42818
|
const {
|
42819
|
+
initOnly,
|
42808
42820
|
target,
|
42809
|
-
onChange
|
42821
|
+
onChange
|
42810
42822
|
} = descriptor;
|
42811
42823
|
const hasTarget = typeof target === 'string';
|
42812
42824
|
const targetProp = hasTarget ? target : alias;
|
42813
42825
|
const origProp = `_${targetProp}`;
|
42814
42826
|
this.metaManager.globalMeta.meta[origProp] = this.metaManager.globalMeta.meta[targetProp];
|
42815
|
-
|
42816
|
-
|
42817
|
-
|
42827
|
+
if (onChange) {
|
42828
|
+
this.installPropWatcher(alias, origProp, onChange);
|
42829
|
+
if (hasTarget) {
|
42830
|
+
this.installPropWatcher(target, origProp, onChange);
|
42831
|
+
}
|
42832
|
+
} else if (initOnly) {
|
42833
|
+
this.installPropWatcher(alias, origProp, _classPrivateFieldGet(_initOnlyCallback, this));
|
42834
|
+
if (!this.metaManager.globalMeta.meta._initOnlySettings) {
|
42835
|
+
this.metaManager.globalMeta.meta._initOnlySettings = [];
|
42836
|
+
}
|
42837
|
+
this.metaManager.globalMeta.meta._initOnlySettings.push(alias);
|
42818
42838
|
}
|
42819
42839
|
});
|
42820
42840
|
}
|
@@ -53486,7 +53506,7 @@ class AutoRowSize extends _base.BasePlugin {
|
|
53486
53506
|
this.inProgress = false;
|
53487
53507
|
|
53488
53508
|
// @TODO Should call once per render cycle, currently fired separately in different plugins
|
53489
|
-
this.hot.view.adjustElementsSize(
|
53509
|
+
this.hot.view.adjustElementsSize();
|
53490
53510
|
|
53491
53511
|
// tmp
|
53492
53512
|
if (this.hot.view._wt.wtOverlays.inlineStartOverlay.needFullRender) {
|
@@ -53510,7 +53530,7 @@ class AutoRowSize extends _base.BasePlugin {
|
|
53510
53530
|
loop();
|
53511
53531
|
} else {
|
53512
53532
|
this.inProgress = false;
|
53513
|
-
this.hot.view.adjustElementsSize(
|
53533
|
+
this.hot.view.adjustElementsSize();
|
53514
53534
|
}
|
53515
53535
|
}
|
53516
53536
|
|
@@ -54508,7 +54528,7 @@ class CollapsibleColumns extends _base.BasePlugin {
|
|
54508
54528
|
}
|
54509
54529
|
this.hot.runHooks(actionTranslator.afterHook, currentCollapsedColumns, destinationCollapsedColumns, isActionPossible, isActionPerformed);
|
54510
54530
|
this.hot.render();
|
54511
|
-
this.hot.view.adjustElementsSize(
|
54531
|
+
this.hot.view.adjustElementsSize();
|
54512
54532
|
}
|
54513
54533
|
|
54514
54534
|
/**
|
@@ -66485,7 +66505,7 @@ class Filters extends _base.BasePlugin {
|
|
66485
66505
|
}
|
66486
66506
|
}
|
66487
66507
|
this.hot.runHooks('afterFilter', conditions);
|
66488
|
-
this.hot.view.adjustElementsSize(
|
66508
|
+
this.hot.view.adjustElementsSize();
|
66489
66509
|
this.hot.render();
|
66490
66510
|
if (this.hot.selection.isSelected()) {
|
66491
66511
|
this.hot.selectCell(navigableHeaders ? -1 : 0, this.hot.getSelectedRangeLast().highlight.col);
|
@@ -73857,7 +73877,7 @@ function hideColumnItem(hiddenColumnsPlugin) {
|
|
73857
73877
|
this.deselectCell();
|
73858
73878
|
}
|
73859
73879
|
this.render();
|
73860
|
-
this.view.adjustElementsSize(
|
73880
|
+
this.view.adjustElementsSize();
|
73861
73881
|
},
|
73862
73882
|
disabled: false,
|
73863
73883
|
hidden() {
|
@@ -73909,7 +73929,7 @@ function showColumnItem(hiddenColumnsPlugin) {
|
|
73909
73929
|
// We render columns at first. It was needed for getting fixed columns.
|
73910
73930
|
// Please take a look at #6864 for broader description.
|
73911
73931
|
this.render();
|
73912
|
-
this.view.adjustElementsSize(
|
73932
|
+
this.view.adjustElementsSize();
|
73913
73933
|
const allColumnsSelected = endVisualColumn - startVisualColumn + 1 === this.countCols();
|
73914
73934
|
|
73915
73935
|
// When all headers needs to be selected then do nothing. The header selection is
|
@@ -74549,7 +74569,7 @@ function hideRowItem(hiddenRowsPlugin) {
|
|
74549
74569
|
this.deselectCell();
|
74550
74570
|
}
|
74551
74571
|
this.render();
|
74552
|
-
this.view.adjustElementsSize(
|
74572
|
+
this.view.adjustElementsSize();
|
74553
74573
|
},
|
74554
74574
|
disabled: false,
|
74555
74575
|
hidden() {
|
@@ -74601,7 +74621,7 @@ function showRowItem(hiddenRowsPlugin) {
|
|
74601
74621
|
// We render rows at first. It was needed for getting fixed rows.
|
74602
74622
|
// Please take a look at #6864 for broader description.
|
74603
74623
|
this.render();
|
74604
|
-
this.view.adjustElementsSize(
|
74624
|
+
this.view.adjustElementsSize();
|
74605
74625
|
const allRowsSelected = endVisualRow - startVisualRow + 1 === this.countRows();
|
74606
74626
|
|
74607
74627
|
// When all headers needs to be selected then do nothing. The header selection is
|
@@ -74915,7 +74935,7 @@ function freezeColumnItem(manualColumnFreezePlugin) {
|
|
74915
74935
|
}] = selected;
|
74916
74936
|
manualColumnFreezePlugin.freezeColumn(selectedColumn);
|
74917
74937
|
this.render();
|
74918
|
-
this.view.adjustElementsSize(
|
74938
|
+
this.view.adjustElementsSize();
|
74919
74939
|
},
|
74920
74940
|
hidden() {
|
74921
74941
|
const selection = this.getSelectedRange();
|
@@ -74962,7 +74982,7 @@ function unfreezeColumnItem(manualColumnFreezePlugin) {
|
|
74962
74982
|
}] = selected;
|
74963
74983
|
manualColumnFreezePlugin.unfreezeColumn(selectedColumn);
|
74964
74984
|
this.render();
|
74965
|
-
this.view.adjustElementsSize(
|
74985
|
+
this.view.adjustElementsSize();
|
74966
74986
|
},
|
74967
74987
|
hidden() {
|
74968
74988
|
const selection = this.getSelectedRange();
|
@@ -75664,7 +75684,7 @@ function _onMouseUp() {
|
|
75664
75684
|
if (movePerformed === true) {
|
75665
75685
|
this.persistentStateSave();
|
75666
75686
|
this.hot.render();
|
75667
|
-
this.hot.view.adjustElementsSize(
|
75687
|
+
this.hot.view.adjustElementsSize();
|
75668
75688
|
const selectionStart = this.hot.toVisualColumn(firstMovedPhysicalColumn);
|
75669
75689
|
const selectionEnd = selectionStart + columnsLen - 1;
|
75670
75690
|
this.hot.selectColumns(selectionStart, selectionEnd);
|
@@ -76360,7 +76380,7 @@ class ManualColumnResize extends _base.BasePlugin {
|
|
76360
76380
|
const render = () => {
|
76361
76381
|
this.hot.forceFullRender = true;
|
76362
76382
|
this.hot.view.render(); // updates all
|
76363
|
-
this.hot.view.adjustElementsSize(
|
76383
|
+
this.hot.view.adjustElementsSize();
|
76364
76384
|
};
|
76365
76385
|
const resize = (column, forceRender) => {
|
76366
76386
|
const hookNewSize = this.hot.runHooks('beforeColumnResize', _classPrivateFieldGet(_newSize, this), column, true);
|
@@ -76525,7 +76545,7 @@ function _onMouseUp() {
|
|
76525
76545
|
const render = () => {
|
76526
76546
|
this.hot.forceFullRender = true;
|
76527
76547
|
this.hot.view.render(); // updates all
|
76528
|
-
this.hot.view.adjustElementsSize(
|
76548
|
+
this.hot.view.adjustElementsSize();
|
76529
76549
|
};
|
76530
76550
|
const resize = (column, forceRender) => {
|
76531
76551
|
this.hot.runHooks('beforeColumnResize', _classPrivateFieldGet(_newSize, this), column, false);
|
@@ -77247,7 +77267,7 @@ function _onMouseUp() {
|
|
77247
77267
|
if (movePerformed === true) {
|
77248
77268
|
this.persistentStateSave();
|
77249
77269
|
this.hot.render();
|
77250
|
-
this.hot.view.adjustElementsSize(
|
77270
|
+
this.hot.view.adjustElementsSize();
|
77251
77271
|
const selectionStart = this.hot.toVisualRow(firstMovedPhysicalRow);
|
77252
77272
|
const selectionEnd = selectionStart + rowsLen - 1;
|
77253
77273
|
this.hot.selectRows(selectionStart, selectionEnd);
|
@@ -77934,7 +77954,7 @@ class ManualRowResize extends _base.BasePlugin {
|
|
77934
77954
|
const render = () => {
|
77935
77955
|
this.hot.forceFullRender = true;
|
77936
77956
|
this.hot.view.render(); // updates all
|
77937
|
-
this.hot.view.adjustElementsSize(
|
77957
|
+
this.hot.view.adjustElementsSize();
|
77938
77958
|
};
|
77939
77959
|
const resize = (row, forceRender) => {
|
77940
77960
|
const hookNewSize = this.hot.runHooks('beforeRowResize', this.getActualRowHeight(row), row, true);
|
@@ -78063,7 +78083,7 @@ function _onMouseUp() {
|
|
78063
78083
|
const render = () => {
|
78064
78084
|
this.hot.forceFullRender = true;
|
78065
78085
|
this.hot.view.render(); // updates all
|
78066
|
-
this.hot.view.adjustElementsSize(
|
78086
|
+
this.hot.view.adjustElementsSize();
|
78067
78087
|
};
|
78068
78088
|
const runHooks = (row, forceRender) => {
|
78069
78089
|
this.hot.runHooks('beforeRowResize', this.getActualRowHeight(row), row, false);
|