handsontable 0.0.0-next-3d099da-20231208 → 0.0.0-next-51d3397-20231211
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/calculator/index.js +11 -6
- package/3rdparty/walkontable/src/calculator/index.mjs +5 -3
- package/3rdparty/walkontable/src/calculator/renderAllColumns.js +50 -0
- package/3rdparty/walkontable/src/calculator/renderAllColumns.mjs +46 -0
- package/3rdparty/walkontable/src/calculator/renderAllRows.js +50 -0
- package/3rdparty/walkontable/src/calculator/renderAllRows.mjs +46 -0
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +1 -122
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +2 -124
- package/3rdparty/walkontable/src/calculator/viewportRows.js +1 -1
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +2 -3
- package/3rdparty/walkontable/src/core/_base.js +0 -12
- package/3rdparty/walkontable/src/core/_base.mjs +0 -12
- package/3rdparty/walkontable/src/core/core.js +0 -2
- package/3rdparty/walkontable/src/core/core.mjs +0 -2
- package/3rdparty/walkontable/src/facade/core.js +0 -9
- package/3rdparty/walkontable/src/facade/core.mjs +0 -9
- package/3rdparty/walkontable/src/index.js +3 -4
- package/3rdparty/walkontable/src/index.mjs +1 -2
- package/3rdparty/walkontable/src/overlays.js +0 -3
- package/3rdparty/walkontable/src/overlays.mjs +0 -4
- package/3rdparty/walkontable/src/renderer/colGroup.js +10 -0
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +10 -0
- package/3rdparty/walkontable/src/renderer/rows.js +4 -3
- package/3rdparty/walkontable/src/renderer/rows.mjs +4 -3
- package/3rdparty/walkontable/src/selection/manager.js +0 -1
- package/3rdparty/walkontable/src/selection/manager.mjs +0 -1
- package/3rdparty/walkontable/src/settings.js +3 -0
- package/3rdparty/walkontable/src/settings.mjs +2 -0
- package/3rdparty/walkontable/src/table.js +0 -1
- package/3rdparty/walkontable/src/table.mjs +0 -1
- package/3rdparty/walkontable/src/utils/column.js +27 -12
- package/3rdparty/walkontable/src/utils/column.mjs +27 -12
- package/3rdparty/walkontable/src/utils/columnStretching.js +219 -0
- package/3rdparty/walkontable/src/utils/columnStretching.mjs +215 -0
- package/3rdparty/walkontable/src/viewport.js +22 -17
- package/3rdparty/walkontable/src/viewport.mjs +23 -18
- package/base.js +4 -2
- package/base.mjs +2 -2
- package/core/focusCatcher/index.js +44 -6
- package/core/focusCatcher/index.mjs +44 -6
- package/core.js +0 -11
- package/core.mjs +0 -11
- package/dataMap/dataMap.js +1 -0
- package/dataMap/metaManager/metaSchema.js +28 -2
- package/dataMap/metaManager/metaSchema.mjs +28 -2
- package/dataMap/metaManager/mods/extendMetaProperties.js +12 -0
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +12 -0
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +3 -3
- package/dist/handsontable.full.js +3979 -5577
- package/dist/handsontable.full.min.css +3 -3
- package/dist/handsontable.full.min.js +66 -71
- package/dist/handsontable.js +3058 -4305
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +35 -39
- package/editorManager.js +3 -4
- package/editorManager.mjs +3 -4
- package/editors/autocompleteEditor/autocompleteEditor.js +0 -2
- package/editors/autocompleteEditor/autocompleteEditor.mjs +0 -2
- package/editors/dateEditor/dateEditor.d.ts +1 -1
- package/editors/dateEditor/dateEditor.js +4 -1
- package/editors/dateEditor/dateEditor.mjs +4 -1
- package/editors/handsontableEditor/handsontableEditor.js +0 -1
- package/editors/handsontableEditor/handsontableEditor.mjs +0 -1
- package/editors/textEditor/textEditor.js +0 -4
- package/editors/textEditor/textEditor.mjs +0 -4
- package/helpers/browser.js +5 -2
- package/helpers/browser.mjs +5 -2
- package/helpers/feature.js +10 -0
- package/helpers/feature.mjs +9 -0
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/package.json +3 -4
- package/pluginHooks.d.ts +6 -29
- package/pluginHooks.js +65 -123
- package/pluginHooks.mjs +62 -122
- package/plugins/copyPaste/clipboardData.js +18 -0
- package/plugins/copyPaste/clipboardData.mjs +14 -0
- package/plugins/copyPaste/copyPaste.js +129 -51
- package/plugins/copyPaste/copyPaste.mjs +132 -54
- package/plugins/copyPaste/copyableRanges.js +43 -7
- package/plugins/copyPaste/copyableRanges.mjs +42 -7
- package/plugins/copyPaste/pasteEvent.mjs +1 -1
- package/plugins/customBorders/customBorders.js +0 -5
- package/plugins/customBorders/customBorders.mjs +0 -5
- package/plugins/customBorders/utils.js +0 -1
- package/plugins/customBorders/utils.mjs +0 -1
- package/plugins/filters/ui/radioInput.js +1 -1
- package/plugins/filters/ui/radioInput.mjs +1 -1
- package/plugins/formulas/formulas.js +0 -2
- package/plugins/formulas/formulas.mjs +0 -2
- package/plugins/formulas/indexSyncer/axisSyncer.js +0 -1
- package/plugins/formulas/indexSyncer/axisSyncer.mjs +0 -1
- package/plugins/manualColumnResize/manualColumnResize.js +0 -1
- package/plugins/manualColumnResize/manualColumnResize.mjs +0 -1
- package/plugins/mergeCells/mergeCells.js +1 -127
- package/plugins/mergeCells/mergeCells.mjs +1 -127
- package/plugins/nestedHeaders/nestedHeaders.js +41 -87
- package/plugins/nestedHeaders/nestedHeaders.mjs +42 -88
- package/plugins/nestedHeaders/stateManager/headersTree.js +0 -1
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +0 -1
- package/plugins/undoRedo/undoRedo.js +0 -2
- package/plugins/undoRedo/undoRedo.mjs +0 -2
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +0 -1
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +0 -1
- package/renderers/checkboxRenderer/checkboxRenderer.js +0 -2
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +0 -2
- package/selection/highlight/highlight.js +0 -1
- package/selection/highlight/highlight.mjs +0 -1
- package/selection/index.js +1 -3
- package/selection/index.mjs +2 -2
- package/selection/utils.js +0 -34
- package/selection/utils.mjs +0 -33
- package/settings.d.ts +2 -1
- package/tableView.js +1 -2
- package/tableView.mjs +1 -2
- package/translations/indexMapper.js +2 -1
- package/utils/parseTable.js +84 -538
- package/utils/parseTable.mjs +83 -534
- package/validators/timeValidator/timeValidator.js +0 -1
- package/validators/timeValidator/timeValidator.mjs +0 -1
- package/plugins/copyPaste/clipboardData/clipboardData.js +0 -588
- package/plugins/copyPaste/clipboardData/clipboardData.mjs +0 -584
- package/plugins/copyPaste/clipboardData/copyClipboardData.js +0 -69
- package/plugins/copyPaste/clipboardData/copyClipboardData.mjs +0 -65
- package/plugins/copyPaste/clipboardData/index.js +0 -9
- package/plugins/copyPaste/clipboardData/index.mjs +0 -4
- package/plugins/copyPaste/clipboardData/pasteClipboardData.js +0 -81
- package/plugins/copyPaste/clipboardData/pasteClipboardData.mjs +0 -77
@@ -2,18 +2,23 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
var _exportNames = {
|
5
|
+
RenderAllColumnsCalculator: true,
|
6
|
+
RenderAllRowsCalculator: true,
|
5
7
|
ViewportColumnsCalculator: true,
|
6
8
|
ViewportRowsCalculator: true
|
7
9
|
};
|
8
|
-
var
|
9
|
-
exports.
|
10
|
-
var
|
11
|
-
exports.
|
10
|
+
var _renderAllColumns = require("./renderAllColumns");
|
11
|
+
exports.RenderAllColumnsCalculator = _renderAllColumns.RenderAllColumnsCalculator;
|
12
|
+
var _renderAllRows = require("./renderAllRows");
|
13
|
+
exports.RenderAllRowsCalculator = _renderAllRows.RenderAllRowsCalculator;
|
14
|
+
var _viewportColumns = require("./viewportColumns");
|
15
|
+
exports.ViewportColumnsCalculator = _viewportColumns.ViewportColumnsCalculator;
|
16
|
+
var _viewportRows = require("./viewportRows");
|
17
|
+
exports.ViewportRowsCalculator = _viewportRows.ViewportRowsCalculator;
|
12
18
|
var _constants = require("./constants");
|
13
19
|
Object.keys(_constants).forEach(function (key) {
|
14
20
|
if (key === "default" || key === "__esModule") return;
|
15
21
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
16
22
|
if (key in exports && exports[key] === _constants[key]) return;
|
17
23
|
exports[key] = _constants[key];
|
18
|
-
});
|
19
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
24
|
+
});
|
@@ -1,4 +1,6 @@
|
|
1
|
-
import
|
2
|
-
import
|
1
|
+
import { RenderAllColumnsCalculator } from "./renderAllColumns.mjs";
|
2
|
+
import { RenderAllRowsCalculator } from "./renderAllRows.mjs";
|
3
|
+
import { ViewportColumnsCalculator } from "./viewportColumns.mjs";
|
4
|
+
import { ViewportRowsCalculator } from "./viewportRows.mjs";
|
3
5
|
export * from "./constants.mjs";
|
4
|
-
export { ViewportColumnsCalculator, ViewportRowsCalculator };
|
6
|
+
export { RenderAllColumnsCalculator, RenderAllRowsCalculator, ViewportColumnsCalculator, ViewportRowsCalculator };
|
@@ -0,0 +1,50 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
exports.__esModule = true;
|
4
|
+
require("core-js/modules/es.error.cause.js");
|
5
|
+
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; }
|
6
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
7
|
+
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); }
|
8
|
+
/**
|
9
|
+
* @typedef {object} RenderAllColumnsCalculatorOptions
|
10
|
+
* @property {number} totalColumns Total number of columns.
|
11
|
+
*/
|
12
|
+
/**
|
13
|
+
* Holds all calculations needed to perform rendering of the all columns.
|
14
|
+
*
|
15
|
+
* @class RenderAllColumnsCalculator
|
16
|
+
*/
|
17
|
+
class RenderAllColumnsCalculator {
|
18
|
+
/**
|
19
|
+
* @param {RenderAllColumnsCalculatorOptions} options Object with all options specified for column viewport calculation.
|
20
|
+
*/
|
21
|
+
constructor(options) {
|
22
|
+
/**
|
23
|
+
* Number of rendered/visible columns.
|
24
|
+
*
|
25
|
+
* @type {number}
|
26
|
+
*/
|
27
|
+
_defineProperty(this, "count", 0);
|
28
|
+
/**
|
29
|
+
* Index of the first rendered/visible column.
|
30
|
+
*
|
31
|
+
* @type {number}
|
32
|
+
*/
|
33
|
+
_defineProperty(this, "startColumn", 0);
|
34
|
+
/**
|
35
|
+
* Index of the last rendered/visible column.
|
36
|
+
*
|
37
|
+
* @type {number}
|
38
|
+
*/
|
39
|
+
_defineProperty(this, "endColumn", 0);
|
40
|
+
/**
|
41
|
+
* Position of the first rendered/visible column (in px).
|
42
|
+
*
|
43
|
+
* @type {number}
|
44
|
+
*/
|
45
|
+
_defineProperty(this, "startPosition", 0);
|
46
|
+
this.count = options.totalColumns;
|
47
|
+
this.endColumn = this.count - 1;
|
48
|
+
}
|
49
|
+
}
|
50
|
+
exports.RenderAllColumnsCalculator = RenderAllColumnsCalculator;
|
@@ -0,0 +1,46 @@
|
|
1
|
+
import "core-js/modules/es.error.cause.js";
|
2
|
+
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; }
|
3
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
4
|
+
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); }
|
5
|
+
/**
|
6
|
+
* @typedef {object} RenderAllColumnsCalculatorOptions
|
7
|
+
* @property {number} totalColumns Total number of columns.
|
8
|
+
*/
|
9
|
+
/**
|
10
|
+
* Holds all calculations needed to perform rendering of the all columns.
|
11
|
+
*
|
12
|
+
* @class RenderAllColumnsCalculator
|
13
|
+
*/
|
14
|
+
export class RenderAllColumnsCalculator {
|
15
|
+
/**
|
16
|
+
* @param {RenderAllColumnsCalculatorOptions} options Object with all options specified for column viewport calculation.
|
17
|
+
*/
|
18
|
+
constructor(options) {
|
19
|
+
/**
|
20
|
+
* Number of rendered/visible columns.
|
21
|
+
*
|
22
|
+
* @type {number}
|
23
|
+
*/
|
24
|
+
_defineProperty(this, "count", 0);
|
25
|
+
/**
|
26
|
+
* Index of the first rendered/visible column.
|
27
|
+
*
|
28
|
+
* @type {number}
|
29
|
+
*/
|
30
|
+
_defineProperty(this, "startColumn", 0);
|
31
|
+
/**
|
32
|
+
* Index of the last rendered/visible column.
|
33
|
+
*
|
34
|
+
* @type {number}
|
35
|
+
*/
|
36
|
+
_defineProperty(this, "endColumn", 0);
|
37
|
+
/**
|
38
|
+
* Position of the first rendered/visible column (in px).
|
39
|
+
*
|
40
|
+
* @type {number}
|
41
|
+
*/
|
42
|
+
_defineProperty(this, "startPosition", 0);
|
43
|
+
this.count = options.totalColumns;
|
44
|
+
this.endColumn = this.count - 1;
|
45
|
+
}
|
46
|
+
}
|
@@ -0,0 +1,50 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
exports.__esModule = true;
|
4
|
+
require("core-js/modules/es.error.cause.js");
|
5
|
+
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; }
|
6
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
7
|
+
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); }
|
8
|
+
/**
|
9
|
+
* @typedef {object} RenderAllRowsCalculatorOptions
|
10
|
+
* @property {number} totalRows Total number of rows.
|
11
|
+
*/
|
12
|
+
/**
|
13
|
+
* Holds all calculations needed to perform rendering of the all rows.
|
14
|
+
*
|
15
|
+
* @class RenderAllRowsCalculator
|
16
|
+
*/
|
17
|
+
class RenderAllRowsCalculator {
|
18
|
+
/**
|
19
|
+
* @param {RenderAllRowsCalculatorOptions} options Object with all options specified for row viewport calculation.
|
20
|
+
*/
|
21
|
+
constructor(options) {
|
22
|
+
/**
|
23
|
+
* Number of rendered/visible rows.
|
24
|
+
*
|
25
|
+
* @type {number}
|
26
|
+
*/
|
27
|
+
_defineProperty(this, "count", 0);
|
28
|
+
/**
|
29
|
+
* Index of the first rendered/visible row.
|
30
|
+
*
|
31
|
+
* @type {number}
|
32
|
+
*/
|
33
|
+
_defineProperty(this, "startRow", 0);
|
34
|
+
/**
|
35
|
+
* Index of the last rendered/visible row.
|
36
|
+
*
|
37
|
+
* @type {number}
|
38
|
+
*/
|
39
|
+
_defineProperty(this, "endRow", 0);
|
40
|
+
/**
|
41
|
+
* Position of the first rendered/visible row (in px).
|
42
|
+
*
|
43
|
+
* @type {number}
|
44
|
+
*/
|
45
|
+
_defineProperty(this, "startPosition", 0);
|
46
|
+
this.count = options.totalRows;
|
47
|
+
this.endRow = this.count - 1;
|
48
|
+
}
|
49
|
+
}
|
50
|
+
exports.RenderAllRowsCalculator = RenderAllRowsCalculator;
|
@@ -0,0 +1,46 @@
|
|
1
|
+
import "core-js/modules/es.error.cause.js";
|
2
|
+
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; }
|
3
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
4
|
+
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); }
|
5
|
+
/**
|
6
|
+
* @typedef {object} RenderAllRowsCalculatorOptions
|
7
|
+
* @property {number} totalRows Total number of rows.
|
8
|
+
*/
|
9
|
+
/**
|
10
|
+
* Holds all calculations needed to perform rendering of the all rows.
|
11
|
+
*
|
12
|
+
* @class RenderAllRowsCalculator
|
13
|
+
*/
|
14
|
+
export class RenderAllRowsCalculator {
|
15
|
+
/**
|
16
|
+
* @param {RenderAllRowsCalculatorOptions} options Object with all options specified for row viewport calculation.
|
17
|
+
*/
|
18
|
+
constructor(options) {
|
19
|
+
/**
|
20
|
+
* Number of rendered/visible rows.
|
21
|
+
*
|
22
|
+
* @type {number}
|
23
|
+
*/
|
24
|
+
_defineProperty(this, "count", 0);
|
25
|
+
/**
|
26
|
+
* Index of the first rendered/visible row.
|
27
|
+
*
|
28
|
+
* @type {number}
|
29
|
+
*/
|
30
|
+
_defineProperty(this, "startRow", 0);
|
31
|
+
/**
|
32
|
+
* Index of the last rendered/visible row.
|
33
|
+
*
|
34
|
+
* @type {number}
|
35
|
+
*/
|
36
|
+
_defineProperty(this, "endRow", 0);
|
37
|
+
/**
|
38
|
+
* Position of the first rendered/visible row (in px).
|
39
|
+
*
|
40
|
+
* @type {number}
|
41
|
+
*/
|
42
|
+
_defineProperty(this, "startPosition", 0);
|
43
|
+
this.count = options.totalRows;
|
44
|
+
this.endRow = this.count - 1;
|
45
|
+
}
|
46
|
+
}
|
@@ -34,7 +34,6 @@ function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.
|
|
34
34
|
*
|
35
35
|
* @class ViewportColumnsCalculator
|
36
36
|
*/
|
37
|
-
var _totalTargetWidth = /*#__PURE__*/new WeakMap();
|
38
37
|
var _options = /*#__PURE__*/new WeakMap();
|
39
38
|
class ViewportColumnsCalculator {
|
40
39
|
/**
|
@@ -81,29 +80,6 @@ class ViewportColumnsCalculator {
|
|
81
80
|
* @type {boolean}
|
82
81
|
*/
|
83
82
|
_defineProperty(this, "isVisibleInTrimmingContainer", false);
|
84
|
-
/**
|
85
|
-
* @type {number}
|
86
|
-
*/
|
87
|
-
_defineProperty(this, "stretchAllRatio", 0);
|
88
|
-
/**
|
89
|
-
* @type {number}
|
90
|
-
*/
|
91
|
-
_defineProperty(this, "stretchLastWidth", 0);
|
92
|
-
/**
|
93
|
-
* @type {number}
|
94
|
-
*/
|
95
|
-
_classPrivateFieldInitSpec(this, _totalTargetWidth, {
|
96
|
-
writable: true,
|
97
|
-
value: 0
|
98
|
-
});
|
99
|
-
/**
|
100
|
-
* @type {boolean}
|
101
|
-
*/
|
102
|
-
_defineProperty(this, "needVerifyLastColumnWidth", true);
|
103
|
-
/**
|
104
|
-
* @type {number[]}
|
105
|
-
*/
|
106
|
-
_defineProperty(this, "stretchAllColumnsWidth", []);
|
107
83
|
/**
|
108
84
|
* The calculator options.
|
109
85
|
*
|
@@ -114,9 +90,6 @@ class ViewportColumnsCalculator {
|
|
114
90
|
value: void 0
|
115
91
|
});
|
116
92
|
_classPrivateFieldSet(this, _options, options);
|
117
|
-
if (typeof _classPrivateFieldGet(this, _options).stretchingColumnWidthFn !== 'function') {
|
118
|
-
_classPrivateFieldGet(this, _options).stretchingColumnWidthFn = width => width;
|
119
|
-
}
|
120
93
|
this.calculate();
|
121
94
|
}
|
122
95
|
|
@@ -205,100 +178,6 @@ class ViewportColumnsCalculator {
|
|
205
178
|
}
|
206
179
|
}
|
207
180
|
|
208
|
-
/**
|
209
|
-
* Recalculate columns stretching.
|
210
|
-
*
|
211
|
-
* @param {number} totalWidth The total width of the table.
|
212
|
-
*/
|
213
|
-
refreshStretching(totalWidth) {
|
214
|
-
if (_classPrivateFieldGet(this, _options).stretchMode === 'none') {
|
215
|
-
return;
|
216
|
-
}
|
217
|
-
let totalColumnsWidth = totalWidth;
|
218
|
-
_classPrivateFieldSet(this, _totalTargetWidth, totalColumnsWidth);
|
219
|
-
const totalColumns = _classPrivateFieldGet(this, _options).totalColumns;
|
220
|
-
let sumAll = 0;
|
221
|
-
for (let i = 0; i < totalColumns; i++) {
|
222
|
-
const columnWidth = this._getColumnWidth(i);
|
223
|
-
const permanentColumnWidth = _classPrivateFieldGet(this, _options).stretchingColumnWidthFn(undefined, i);
|
224
|
-
if (typeof permanentColumnWidth === 'number') {
|
225
|
-
totalColumnsWidth -= permanentColumnWidth;
|
226
|
-
} else {
|
227
|
-
sumAll += columnWidth;
|
228
|
-
}
|
229
|
-
}
|
230
|
-
const remainingSize = totalColumnsWidth - sumAll;
|
231
|
-
if (_classPrivateFieldGet(this, _options).stretchMode === 'all' && remainingSize > 0) {
|
232
|
-
this.stretchAllRatio = totalColumnsWidth / sumAll;
|
233
|
-
this.stretchAllColumnsWidth = [];
|
234
|
-
this.needVerifyLastColumnWidth = true;
|
235
|
-
} else if (_classPrivateFieldGet(this, _options).stretchMode === 'last' && totalColumnsWidth !== Infinity) {
|
236
|
-
const columnWidth = this._getColumnWidth(totalColumns - 1);
|
237
|
-
const lastColumnWidth = remainingSize + columnWidth;
|
238
|
-
this.stretchLastWidth = lastColumnWidth >= 0 ? lastColumnWidth : columnWidth;
|
239
|
-
}
|
240
|
-
}
|
241
|
-
|
242
|
-
/**
|
243
|
-
* Get stretched column width based on stretchH (all or last) setting passed in handsontable instance.
|
244
|
-
*
|
245
|
-
* @param {number} column The visual column index.
|
246
|
-
* @param {number} baseWidth The default column width.
|
247
|
-
* @returns {number|null}
|
248
|
-
*/
|
249
|
-
getStretchedColumnWidth(column, baseWidth) {
|
250
|
-
let result = null;
|
251
|
-
if (_classPrivateFieldGet(this, _options).stretchMode === 'all' && this.stretchAllRatio !== 0) {
|
252
|
-
result = this._getStretchedAllColumnWidth(column, baseWidth);
|
253
|
-
} else if (_classPrivateFieldGet(this, _options).stretchMode === 'last' && this.stretchLastWidth !== 0) {
|
254
|
-
result = this._getStretchedLastColumnWidth(column);
|
255
|
-
}
|
256
|
-
return result;
|
257
|
-
}
|
258
|
-
|
259
|
-
/**
|
260
|
-
* @param {number} column The visual column index.
|
261
|
-
* @param {number} baseWidth The default column width.
|
262
|
-
* @returns {number}
|
263
|
-
* @private
|
264
|
-
*/
|
265
|
-
_getStretchedAllColumnWidth(column, baseWidth) {
|
266
|
-
let sumRatioWidth = 0;
|
267
|
-
const totalColumns = _classPrivateFieldGet(this, _options).totalColumns;
|
268
|
-
if (!this.stretchAllColumnsWidth[column]) {
|
269
|
-
const stretchedWidth = Math.round(baseWidth * this.stretchAllRatio);
|
270
|
-
const newStretchedWidth = _classPrivateFieldGet(this, _options).stretchingColumnWidthFn(stretchedWidth, column);
|
271
|
-
if (newStretchedWidth === undefined) {
|
272
|
-
this.stretchAllColumnsWidth[column] = stretchedWidth;
|
273
|
-
} else {
|
274
|
-
this.stretchAllColumnsWidth[column] = isNaN(newStretchedWidth) ? this._getColumnWidth(column) : newStretchedWidth;
|
275
|
-
}
|
276
|
-
}
|
277
|
-
if (this.stretchAllColumnsWidth.length === totalColumns && this.needVerifyLastColumnWidth) {
|
278
|
-
this.needVerifyLastColumnWidth = false;
|
279
|
-
for (let i = 0; i < this.stretchAllColumnsWidth.length; i++) {
|
280
|
-
sumRatioWidth += this.stretchAllColumnsWidth[i];
|
281
|
-
}
|
282
|
-
if (sumRatioWidth !== _classPrivateFieldGet(this, _totalTargetWidth)) {
|
283
|
-
this.stretchAllColumnsWidth[this.stretchAllColumnsWidth.length - 1] += _classPrivateFieldGet(this, _totalTargetWidth) - sumRatioWidth;
|
284
|
-
}
|
285
|
-
}
|
286
|
-
return this.stretchAllColumnsWidth[column];
|
287
|
-
}
|
288
|
-
|
289
|
-
/**
|
290
|
-
* @param {number} column The visual column index.
|
291
|
-
* @returns {number|null}
|
292
|
-
* @private
|
293
|
-
*/
|
294
|
-
_getStretchedLastColumnWidth(column) {
|
295
|
-
const totalColumns = _classPrivateFieldGet(this, _options).totalColumns;
|
296
|
-
if (column === totalColumns - 1) {
|
297
|
-
return this.stretchLastWidth;
|
298
|
-
}
|
299
|
-
return null;
|
300
|
-
}
|
301
|
-
|
302
181
|
/**
|
303
182
|
* @param {number} column The visual column index.
|
304
183
|
* @returns {number}
|
@@ -312,4 +191,4 @@ class ViewportColumnsCalculator {
|
|
312
191
|
return width;
|
313
192
|
}
|
314
193
|
}
|
315
|
-
|
194
|
+
exports.ViewportColumnsCalculator = ViewportColumnsCalculator;
|
@@ -31,9 +31,8 @@ import { RENDER_TYPE, FULLY_VISIBLE_TYPE } from "./constants.mjs";
|
|
31
31
|
*
|
32
32
|
* @class ViewportColumnsCalculator
|
33
33
|
*/
|
34
|
-
var _totalTargetWidth = /*#__PURE__*/new WeakMap();
|
35
34
|
var _options = /*#__PURE__*/new WeakMap();
|
36
|
-
class ViewportColumnsCalculator {
|
35
|
+
export class ViewportColumnsCalculator {
|
37
36
|
/**
|
38
37
|
* Default column width.
|
39
38
|
*
|
@@ -78,29 +77,6 @@ class ViewportColumnsCalculator {
|
|
78
77
|
* @type {boolean}
|
79
78
|
*/
|
80
79
|
_defineProperty(this, "isVisibleInTrimmingContainer", false);
|
81
|
-
/**
|
82
|
-
* @type {number}
|
83
|
-
*/
|
84
|
-
_defineProperty(this, "stretchAllRatio", 0);
|
85
|
-
/**
|
86
|
-
* @type {number}
|
87
|
-
*/
|
88
|
-
_defineProperty(this, "stretchLastWidth", 0);
|
89
|
-
/**
|
90
|
-
* @type {number}
|
91
|
-
*/
|
92
|
-
_classPrivateFieldInitSpec(this, _totalTargetWidth, {
|
93
|
-
writable: true,
|
94
|
-
value: 0
|
95
|
-
});
|
96
|
-
/**
|
97
|
-
* @type {boolean}
|
98
|
-
*/
|
99
|
-
_defineProperty(this, "needVerifyLastColumnWidth", true);
|
100
|
-
/**
|
101
|
-
* @type {number[]}
|
102
|
-
*/
|
103
|
-
_defineProperty(this, "stretchAllColumnsWidth", []);
|
104
80
|
/**
|
105
81
|
* The calculator options.
|
106
82
|
*
|
@@ -111,9 +87,6 @@ class ViewportColumnsCalculator {
|
|
111
87
|
value: void 0
|
112
88
|
});
|
113
89
|
_classPrivateFieldSet(this, _options, options);
|
114
|
-
if (typeof _classPrivateFieldGet(this, _options).stretchingColumnWidthFn !== 'function') {
|
115
|
-
_classPrivateFieldGet(this, _options).stretchingColumnWidthFn = width => width;
|
116
|
-
}
|
117
90
|
this.calculate();
|
118
91
|
}
|
119
92
|
|
@@ -202,100 +175,6 @@ class ViewportColumnsCalculator {
|
|
202
175
|
}
|
203
176
|
}
|
204
177
|
|
205
|
-
/**
|
206
|
-
* Recalculate columns stretching.
|
207
|
-
*
|
208
|
-
* @param {number} totalWidth The total width of the table.
|
209
|
-
*/
|
210
|
-
refreshStretching(totalWidth) {
|
211
|
-
if (_classPrivateFieldGet(this, _options).stretchMode === 'none') {
|
212
|
-
return;
|
213
|
-
}
|
214
|
-
let totalColumnsWidth = totalWidth;
|
215
|
-
_classPrivateFieldSet(this, _totalTargetWidth, totalColumnsWidth);
|
216
|
-
const totalColumns = _classPrivateFieldGet(this, _options).totalColumns;
|
217
|
-
let sumAll = 0;
|
218
|
-
for (let i = 0; i < totalColumns; i++) {
|
219
|
-
const columnWidth = this._getColumnWidth(i);
|
220
|
-
const permanentColumnWidth = _classPrivateFieldGet(this, _options).stretchingColumnWidthFn(undefined, i);
|
221
|
-
if (typeof permanentColumnWidth === 'number') {
|
222
|
-
totalColumnsWidth -= permanentColumnWidth;
|
223
|
-
} else {
|
224
|
-
sumAll += columnWidth;
|
225
|
-
}
|
226
|
-
}
|
227
|
-
const remainingSize = totalColumnsWidth - sumAll;
|
228
|
-
if (_classPrivateFieldGet(this, _options).stretchMode === 'all' && remainingSize > 0) {
|
229
|
-
this.stretchAllRatio = totalColumnsWidth / sumAll;
|
230
|
-
this.stretchAllColumnsWidth = [];
|
231
|
-
this.needVerifyLastColumnWidth = true;
|
232
|
-
} else if (_classPrivateFieldGet(this, _options).stretchMode === 'last' && totalColumnsWidth !== Infinity) {
|
233
|
-
const columnWidth = this._getColumnWidth(totalColumns - 1);
|
234
|
-
const lastColumnWidth = remainingSize + columnWidth;
|
235
|
-
this.stretchLastWidth = lastColumnWidth >= 0 ? lastColumnWidth : columnWidth;
|
236
|
-
}
|
237
|
-
}
|
238
|
-
|
239
|
-
/**
|
240
|
-
* Get stretched column width based on stretchH (all or last) setting passed in handsontable instance.
|
241
|
-
*
|
242
|
-
* @param {number} column The visual column index.
|
243
|
-
* @param {number} baseWidth The default column width.
|
244
|
-
* @returns {number|null}
|
245
|
-
*/
|
246
|
-
getStretchedColumnWidth(column, baseWidth) {
|
247
|
-
let result = null;
|
248
|
-
if (_classPrivateFieldGet(this, _options).stretchMode === 'all' && this.stretchAllRatio !== 0) {
|
249
|
-
result = this._getStretchedAllColumnWidth(column, baseWidth);
|
250
|
-
} else if (_classPrivateFieldGet(this, _options).stretchMode === 'last' && this.stretchLastWidth !== 0) {
|
251
|
-
result = this._getStretchedLastColumnWidth(column);
|
252
|
-
}
|
253
|
-
return result;
|
254
|
-
}
|
255
|
-
|
256
|
-
/**
|
257
|
-
* @param {number} column The visual column index.
|
258
|
-
* @param {number} baseWidth The default column width.
|
259
|
-
* @returns {number}
|
260
|
-
* @private
|
261
|
-
*/
|
262
|
-
_getStretchedAllColumnWidth(column, baseWidth) {
|
263
|
-
let sumRatioWidth = 0;
|
264
|
-
const totalColumns = _classPrivateFieldGet(this, _options).totalColumns;
|
265
|
-
if (!this.stretchAllColumnsWidth[column]) {
|
266
|
-
const stretchedWidth = Math.round(baseWidth * this.stretchAllRatio);
|
267
|
-
const newStretchedWidth = _classPrivateFieldGet(this, _options).stretchingColumnWidthFn(stretchedWidth, column);
|
268
|
-
if (newStretchedWidth === undefined) {
|
269
|
-
this.stretchAllColumnsWidth[column] = stretchedWidth;
|
270
|
-
} else {
|
271
|
-
this.stretchAllColumnsWidth[column] = isNaN(newStretchedWidth) ? this._getColumnWidth(column) : newStretchedWidth;
|
272
|
-
}
|
273
|
-
}
|
274
|
-
if (this.stretchAllColumnsWidth.length === totalColumns && this.needVerifyLastColumnWidth) {
|
275
|
-
this.needVerifyLastColumnWidth = false;
|
276
|
-
for (let i = 0; i < this.stretchAllColumnsWidth.length; i++) {
|
277
|
-
sumRatioWidth += this.stretchAllColumnsWidth[i];
|
278
|
-
}
|
279
|
-
if (sumRatioWidth !== _classPrivateFieldGet(this, _totalTargetWidth)) {
|
280
|
-
this.stretchAllColumnsWidth[this.stretchAllColumnsWidth.length - 1] += _classPrivateFieldGet(this, _totalTargetWidth) - sumRatioWidth;
|
281
|
-
}
|
282
|
-
}
|
283
|
-
return this.stretchAllColumnsWidth[column];
|
284
|
-
}
|
285
|
-
|
286
|
-
/**
|
287
|
-
* @param {number} column The visual column index.
|
288
|
-
* @returns {number|null}
|
289
|
-
* @private
|
290
|
-
*/
|
291
|
-
_getStretchedLastColumnWidth(column) {
|
292
|
-
const totalColumns = _classPrivateFieldGet(this, _options).totalColumns;
|
293
|
-
if (column === totalColumns - 1) {
|
294
|
-
return this.stretchLastWidth;
|
295
|
-
}
|
296
|
-
return null;
|
297
|
-
}
|
298
|
-
|
299
178
|
/**
|
300
179
|
* @param {number} column The visual column index.
|
301
180
|
* @returns {number}
|
@@ -308,5 +187,4 @@ class ViewportColumnsCalculator {
|
|
308
187
|
}
|
309
188
|
return width;
|
310
189
|
}
|
311
|
-
}
|
312
|
-
export default ViewportColumnsCalculator;
|
190
|
+
}
|
@@ -29,7 +29,7 @@ import { RENDER_TYPE, FULLY_VISIBLE_TYPE } from "./constants.mjs";
|
|
29
29
|
* @class ViewportRowsCalculator
|
30
30
|
*/
|
31
31
|
var _options = /*#__PURE__*/new WeakMap();
|
32
|
-
class ViewportRowsCalculator {
|
32
|
+
export class ViewportRowsCalculator {
|
33
33
|
/**
|
34
34
|
* Default row height.
|
35
35
|
*
|
@@ -177,5 +177,4 @@ class ViewportRowsCalculator {
|
|
177
177
|
this.count = this.endRow - this.startRow + 1;
|
178
178
|
}
|
179
179
|
}
|
180
|
-
}
|
181
|
-
export default ViewportRowsCalculator;
|
180
|
+
}
|
@@ -234,30 +234,24 @@ class CoreAbstract {
|
|
234
234
|
get drawn() {
|
235
235
|
return wot.drawn; // TODO refactoring: consider about injecting `isDrawn` function : ()=>return wot.drawn. (it'll enables remove dao layer)
|
236
236
|
},
|
237
|
-
|
238
237
|
get topOverlay() {
|
239
238
|
return wot.wtOverlays.topOverlay; // TODO refactoring: move outside dao, use IOC
|
240
239
|
},
|
241
|
-
|
242
240
|
get inlineStartOverlay() {
|
243
241
|
return wot.wtOverlays.inlineStartOverlay; // TODO refactoring: move outside dao, use IOC
|
244
242
|
},
|
245
|
-
|
246
243
|
get wtTable() {
|
247
244
|
return wot.wtTable; // TODO refactoring: move outside dao, use IOC
|
248
245
|
},
|
249
|
-
|
250
246
|
get wtViewport() {
|
251
247
|
return wot.wtViewport; // TODO refactoring: move outside dao, use IOC
|
252
248
|
},
|
253
|
-
|
254
249
|
get wtSettings() {
|
255
250
|
return wot.wtSettings;
|
256
251
|
},
|
257
252
|
get rootWindow() {
|
258
253
|
return wot.domBindings.rootWindow; // TODO refactoring: move outside dao
|
259
254
|
},
|
260
|
-
|
261
255
|
// TODO refactoring, consider about using injecting wtSettings into scroll (it'll enables remove dao layer)
|
262
256
|
get totalRows() {
|
263
257
|
return wot.wtSettings.getSetting('totalRows');
|
@@ -293,26 +287,21 @@ class CoreAbstract {
|
|
293
287
|
get parentTableOffset() {
|
294
288
|
return wot.cloneSource.wtTable.tableOffset; // TODO rethink: cloneSource exists only in Clone type.
|
295
289
|
},
|
296
|
-
|
297
290
|
get cloneSource() {
|
298
291
|
return wot.cloneSource; // TODO rethink: cloneSource exists only in Clone type.
|
299
292
|
},
|
300
|
-
|
301
293
|
get workspaceWidth() {
|
302
294
|
return wot.wtViewport.getWorkspaceWidth();
|
303
295
|
},
|
304
296
|
get wtViewport() {
|
305
297
|
return wot.wtViewport; // TODO refactoring: move outside dao, use IOC
|
306
298
|
},
|
307
|
-
|
308
299
|
get wtOverlays() {
|
309
300
|
return wot.wtOverlays; // TODO refactoring: move outside dao, use IOC
|
310
301
|
},
|
311
|
-
|
312
302
|
get selectionManager() {
|
313
303
|
return wot.selectionManager; // TODO refactoring: move outside dao, use IOC
|
314
304
|
},
|
315
|
-
|
316
305
|
get drawn() {
|
317
306
|
return wot.drawn;
|
318
307
|
},
|
@@ -323,7 +312,6 @@ class CoreAbstract {
|
|
323
312
|
get wtTable() {
|
324
313
|
return wot.wtTable; // TODO refactoring: it provides itself
|
325
314
|
},
|
326
|
-
|
327
315
|
get startColumnRendered() {
|
328
316
|
return wot.wtViewport.columnsRenderCalculator.startColumn;
|
329
317
|
},
|