handsontable 0.0.0-next-eaf150e-20240823 → 0.0.0-next-0306a1a-20240826

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

Potentially problematic release.


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

Files changed (104) hide show
  1. package/3rdparty/walkontable/src/calculator/constants.js +26 -0
  2. package/3rdparty/walkontable/src/calculator/constants.mjs +23 -0
  3. package/3rdparty/walkontable/src/calculator/index.js +17 -18
  4. package/3rdparty/walkontable/src/calculator/index.mjs +6 -11
  5. package/3rdparty/walkontable/src/calculator/{calculationType/renderedAllColumns.js → renderAllColumns.js} +9 -32
  6. package/3rdparty/walkontable/src/calculator/{calculationType/renderedAllColumns.mjs → renderAllColumns.mjs} +8 -31
  7. package/3rdparty/walkontable/src/calculator/{calculationType/renderedAllRows.js → renderAllRows.js} +9 -32
  8. package/3rdparty/walkontable/src/calculator/{calculationType/renderedAllRows.mjs → renderAllRows.mjs} +8 -31
  9. package/3rdparty/walkontable/src/calculator/viewportColumns.js +145 -51
  10. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +145 -51
  11. package/3rdparty/walkontable/src/calculator/viewportRows.js +141 -59
  12. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +141 -59
  13. package/3rdparty/walkontable/src/index.js +0 -2
  14. package/3rdparty/walkontable/src/index.mjs +2 -2
  15. package/3rdparty/walkontable/src/table.js +11 -5
  16. package/3rdparty/walkontable/src/table.mjs +11 -5
  17. package/3rdparty/walkontable/src/utils/column.js +1 -2
  18. package/3rdparty/walkontable/src/utils/column.mjs +1 -2
  19. package/3rdparty/walkontable/src/utils/columnStretching.js +19 -10
  20. package/3rdparty/walkontable/src/utils/columnStretching.mjs +19 -10
  21. package/3rdparty/walkontable/src/viewport.js +46 -35
  22. package/3rdparty/walkontable/src/viewport.mjs +47 -36
  23. package/CHANGELOG.md +0 -27
  24. package/base.js +2 -2
  25. package/base.mjs +2 -2
  26. package/core.d.ts +2 -1
  27. package/core.js +1 -1
  28. package/core.mjs +2 -2
  29. package/dataMap/metaManager/metaSchema.js +6 -5
  30. package/dataMap/metaManager/metaSchema.mjs +6 -5
  31. package/dist/handsontable.css +20 -32
  32. package/dist/handsontable.full.css +20 -32
  33. package/dist/handsontable.full.js +2091 -2741
  34. package/dist/handsontable.full.min.css +5 -5
  35. package/dist/handsontable.full.min.js +148 -148
  36. package/dist/handsontable.js +2092 -2742
  37. package/dist/handsontable.min.css +4 -4
  38. package/dist/handsontable.min.js +32 -32
  39. package/editors/autocompleteEditor/autocompleteEditor.d.ts +1 -1
  40. package/helpers/a11y.js +0 -2
  41. package/helpers/a11y.mjs +0 -1
  42. package/helpers/mixed.js +2 -2
  43. package/helpers/mixed.mjs +2 -2
  44. package/package.json +1 -1
  45. package/pluginHooks.d.ts +1 -1
  46. package/pluginHooks.js +1 -1
  47. package/pluginHooks.mjs +1 -1
  48. package/plugins/autoColumnSize/autoColumnSize.js +1 -1
  49. package/plugins/autoColumnSize/autoColumnSize.mjs +2 -2
  50. package/plugins/autoRowSize/autoRowSize.js +2 -1
  51. package/plugins/autoRowSize/autoRowSize.mjs +2 -1
  52. package/plugins/columnSorting/columnSorting.js +1 -10
  53. package/plugins/columnSorting/columnSorting.mjs +1 -10
  54. package/plugins/contextMenu/menu/menuItemRenderer.js +4 -3
  55. package/plugins/contextMenu/menu/menuItemRenderer.mjs +6 -5
  56. package/plugins/contextMenu/menu/positioner.js +12 -4
  57. package/plugins/contextMenu/menu/positioner.mjs +12 -4
  58. package/plugins/contextMenu/menu/utils.js +0 -11
  59. package/plugins/contextMenu/menu/utils.mjs +0 -10
  60. package/plugins/contextMenu/predefinedItems/alignment.js +49 -67
  61. package/plugins/contextMenu/predefinedItems/alignment.mjs +50 -68
  62. package/plugins/contextMenu/predefinedItems/readOnly.js +0 -11
  63. package/plugins/contextMenu/predefinedItems/readOnly.mjs +0 -11
  64. package/plugins/contextMenu/utils.js +0 -26
  65. package/plugins/contextMenu/utils.mjs +0 -24
  66. package/plugins/copyPaste/copyPaste.js +14 -14
  67. package/plugins/copyPaste/copyPaste.mjs +14 -14
  68. package/plugins/dropdownMenu/dropdownMenu.js +4 -10
  69. package/plugins/dropdownMenu/dropdownMenu.mjs +4 -10
  70. package/plugins/filters/component/condition.js +1 -6
  71. package/plugins/filters/component/condition.mjs +1 -6
  72. package/plugins/filters/component/value.js +1 -6
  73. package/plugins/filters/component/value.mjs +1 -6
  74. package/plugins/filters/conditionCollection.d.ts +3 -4
  75. package/plugins/filters/conditionCollection.js +0 -26
  76. package/plugins/filters/conditionCollection.mjs +0 -26
  77. package/plugins/filters/filters.js +1 -2
  78. package/plugins/filters/filters.mjs +1 -2
  79. package/plugins/filters/ui/multipleSelect.js +9 -7
  80. package/plugins/filters/ui/multipleSelect.mjs +9 -7
  81. package/plugins/manualRowResize/manualRowResize.js +1 -1
  82. package/plugins/manualRowResize/manualRowResize.mjs +2 -2
  83. package/plugins/mergeCells/cellsCollection.js +9 -11
  84. package/plugins/mergeCells/cellsCollection.mjs +10 -12
  85. package/plugins/undoRedo/undoRedo.js +5 -9
  86. package/plugins/undoRedo/undoRedo.mjs +5 -9
  87. package/shortcuts/utils.js +1 -3
  88. package/shortcuts/utils.mjs +1 -3
  89. package/utils/ghostTable.js +9 -11
  90. package/utils/ghostTable.mjs +10 -12
  91. package/3rdparty/walkontable/src/calculator/calculationType/fullyVisibleColumns.js +0 -126
  92. package/3rdparty/walkontable/src/calculator/calculationType/fullyVisibleColumns.mjs +0 -122
  93. package/3rdparty/walkontable/src/calculator/calculationType/fullyVisibleRows.js +0 -119
  94. package/3rdparty/walkontable/src/calculator/calculationType/fullyVisibleRows.mjs +0 -115
  95. package/3rdparty/walkontable/src/calculator/calculationType/partiallyVisibleColumns.js +0 -125
  96. package/3rdparty/walkontable/src/calculator/calculationType/partiallyVisibleColumns.mjs +0 -121
  97. package/3rdparty/walkontable/src/calculator/calculationType/partiallyVisibleRows.js +0 -118
  98. package/3rdparty/walkontable/src/calculator/calculationType/partiallyVisibleRows.mjs +0 -114
  99. package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.js +0 -37
  100. package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.mjs +0 -33
  101. package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.js +0 -37
  102. package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.mjs +0 -33
  103. package/3rdparty/walkontable/src/calculator/viewportBase.js +0 -92
  104. package/3rdparty/walkontable/src/calculator/viewportBase.mjs +0 -88
@@ -1,118 +0,0 @@
1
- "use strict";
2
-
3
- exports.__esModule = true;
4
- require("core-js/modules/es.error.cause.js");
5
- require("core-js/modules/es.array.at.js");
6
- require("core-js/modules/es.string.at-alternative.js");
7
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
8
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
9
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
10
- /**
11
- * @class PartiallyVisibleRowsCalculationType
12
- */
13
- class PartiallyVisibleRowsCalculationType {
14
- constructor() {
15
- /**
16
- * Total number of partially visible rows in the viewport.
17
- *
18
- * @type {number}
19
- */
20
- _defineProperty(this, "count", 0);
21
- /**
22
- * The row index of the first partially visible row in the viewport.
23
- *
24
- * @type {number|null}
25
- */
26
- _defineProperty(this, "startRow", null);
27
- /**
28
- * The row index of the last partially visible row in the viewport.
29
- *
30
- * @type {number|null}
31
- */
32
- _defineProperty(this, "endRow", null);
33
- /**
34
- * Position of the first partially visible row (in px).
35
- *
36
- * @type {number|null}
37
- */
38
- _defineProperty(this, "startPosition", null);
39
- /**
40
- * Determines if the viewport is visible in the trimming container.
41
- *
42
- * @type {boolean}
43
- */
44
- _defineProperty(this, "isVisibleInTrimmingContainer", false);
45
- }
46
- /**
47
- * Initializes the calculation.
48
- */
49
- initialize() {}
50
-
51
- /**
52
- * Processes the row.
53
- *
54
- * @param {number} row The row index.
55
- * @param {ViewportRowsCalculator} viewportCalculator The viewport calculator object.
56
- */
57
- process(row, viewportCalculator) {
58
- const {
59
- totalCalculatedHeight,
60
- zeroBasedScrollOffset,
61
- innerViewportHeight
62
- } = viewportCalculator;
63
- if (totalCalculatedHeight <= zeroBasedScrollOffset) {
64
- this.startRow = row;
65
- }
66
- if (totalCalculatedHeight >= zeroBasedScrollOffset && totalCalculatedHeight <= innerViewportHeight) {
67
- if (this.startRow === null) {
68
- this.startRow = row;
69
- }
70
- }
71
- this.endRow = row;
72
- }
73
-
74
- /**
75
- * Finalizes the calculation.
76
- *
77
- * @param {ViewportRowsCalculator} viewportCalculator The viewport calculator object.
78
- */
79
- finalize(viewportCalculator) {
80
- var _startPositions$this$;
81
- const {
82
- scrollOffset,
83
- viewportHeight,
84
- horizontalScrollbarHeight,
85
- totalRows,
86
- needReverse,
87
- startPositions,
88
- rowHeight
89
- } = viewportCalculator;
90
-
91
- // If the estimation has reached the last row and there is still some space available in the viewport,
92
- // we need to render in reverse in order to fill the whole viewport with rows
93
- if (this.endRow === totalRows - 1 && needReverse) {
94
- this.startRow = this.endRow;
95
- while (this.startRow > 0) {
96
- const calculatedViewportHeight = startPositions[this.endRow] + rowHeight - startPositions[this.startRow - 1];
97
- this.startRow -= 1;
98
- if (calculatedViewportHeight >= viewportHeight - horizontalScrollbarHeight) {
99
- break;
100
- }
101
- }
102
- }
103
- this.startPosition = (_startPositions$this$ = startPositions[this.startRow]) !== null && _startPositions$this$ !== void 0 ? _startPositions$this$ : null;
104
- const mostBottomScrollOffset = scrollOffset + viewportHeight - horizontalScrollbarHeight;
105
- if (mostBottomScrollOffset < 0 || scrollOffset > startPositions.at(-1) + rowHeight) {
106
- this.isVisibleInTrimmingContainer = false;
107
- } else {
108
- this.isVisibleInTrimmingContainer = true;
109
- }
110
- if (totalRows < this.endRow) {
111
- this.endRow = totalRows - 1;
112
- }
113
- if (this.startRow !== null) {
114
- this.count = this.endRow - this.startRow + 1;
115
- }
116
- }
117
- }
118
- exports.PartiallyVisibleRowsCalculationType = PartiallyVisibleRowsCalculationType;
@@ -1,114 +0,0 @@
1
- import "core-js/modules/es.error.cause.js";
2
- import "core-js/modules/es.array.at.js";
3
- import "core-js/modules/es.string.at-alternative.js";
4
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
5
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
6
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
- /**
8
- * @class PartiallyVisibleRowsCalculationType
9
- */
10
- export class PartiallyVisibleRowsCalculationType {
11
- constructor() {
12
- /**
13
- * Total number of partially visible rows in the viewport.
14
- *
15
- * @type {number}
16
- */
17
- _defineProperty(this, "count", 0);
18
- /**
19
- * The row index of the first partially visible row in the viewport.
20
- *
21
- * @type {number|null}
22
- */
23
- _defineProperty(this, "startRow", null);
24
- /**
25
- * The row index of the last partially visible row in the viewport.
26
- *
27
- * @type {number|null}
28
- */
29
- _defineProperty(this, "endRow", null);
30
- /**
31
- * Position of the first partially visible row (in px).
32
- *
33
- * @type {number|null}
34
- */
35
- _defineProperty(this, "startPosition", null);
36
- /**
37
- * Determines if the viewport is visible in the trimming container.
38
- *
39
- * @type {boolean}
40
- */
41
- _defineProperty(this, "isVisibleInTrimmingContainer", false);
42
- }
43
- /**
44
- * Initializes the calculation.
45
- */
46
- initialize() {}
47
-
48
- /**
49
- * Processes the row.
50
- *
51
- * @param {number} row The row index.
52
- * @param {ViewportRowsCalculator} viewportCalculator The viewport calculator object.
53
- */
54
- process(row, viewportCalculator) {
55
- const {
56
- totalCalculatedHeight,
57
- zeroBasedScrollOffset,
58
- innerViewportHeight
59
- } = viewportCalculator;
60
- if (totalCalculatedHeight <= zeroBasedScrollOffset) {
61
- this.startRow = row;
62
- }
63
- if (totalCalculatedHeight >= zeroBasedScrollOffset && totalCalculatedHeight <= innerViewportHeight) {
64
- if (this.startRow === null) {
65
- this.startRow = row;
66
- }
67
- }
68
- this.endRow = row;
69
- }
70
-
71
- /**
72
- * Finalizes the calculation.
73
- *
74
- * @param {ViewportRowsCalculator} viewportCalculator The viewport calculator object.
75
- */
76
- finalize(viewportCalculator) {
77
- var _startPositions$this$;
78
- const {
79
- scrollOffset,
80
- viewportHeight,
81
- horizontalScrollbarHeight,
82
- totalRows,
83
- needReverse,
84
- startPositions,
85
- rowHeight
86
- } = viewportCalculator;
87
-
88
- // If the estimation has reached the last row and there is still some space available in the viewport,
89
- // we need to render in reverse in order to fill the whole viewport with rows
90
- if (this.endRow === totalRows - 1 && needReverse) {
91
- this.startRow = this.endRow;
92
- while (this.startRow > 0) {
93
- const calculatedViewportHeight = startPositions[this.endRow] + rowHeight - startPositions[this.startRow - 1];
94
- this.startRow -= 1;
95
- if (calculatedViewportHeight >= viewportHeight - horizontalScrollbarHeight) {
96
- break;
97
- }
98
- }
99
- }
100
- this.startPosition = (_startPositions$this$ = startPositions[this.startRow]) !== null && _startPositions$this$ !== void 0 ? _startPositions$this$ : null;
101
- const mostBottomScrollOffset = scrollOffset + viewportHeight - horizontalScrollbarHeight;
102
- if (mostBottomScrollOffset < 0 || scrollOffset > startPositions.at(-1) + rowHeight) {
103
- this.isVisibleInTrimmingContainer = false;
104
- } else {
105
- this.isVisibleInTrimmingContainer = true;
106
- }
107
- if (totalRows < this.endRow) {
108
- this.endRow = totalRows - 1;
109
- }
110
- if (this.startRow !== null) {
111
- this.count = this.endRow - this.startRow + 1;
112
- }
113
- }
114
- }
@@ -1,37 +0,0 @@
1
- "use strict";
2
-
3
- exports.__esModule = true;
4
- var _partiallyVisibleColumns = require("./partiallyVisibleColumns");
5
- /**
6
- * @class RenderedColumnsCalculationType
7
- */
8
- class RenderedColumnsCalculationType extends _partiallyVisibleColumns.PartiallyVisibleColumnsCalculationType {
9
- /**
10
- * Finalizes the calculation.
11
- *
12
- * @param {ViewportColumnsCalculator} viewportCalculator The viewport calculator object.
13
- */
14
- finalize(viewportCalculator) {
15
- var _startPositions$this$;
16
- super.finalize(viewportCalculator);
17
- const {
18
- overrideFn,
19
- totalColumns,
20
- startPositions
21
- } = viewportCalculator;
22
- if (this.startColumn !== null && typeof overrideFn === 'function') {
23
- overrideFn(this);
24
- }
25
- if (this.startColumn < 0) {
26
- this.startColumn = 0;
27
- }
28
- this.startPosition = (_startPositions$this$ = startPositions[this.startColumn]) !== null && _startPositions$this$ !== void 0 ? _startPositions$this$ : null;
29
- if (totalColumns < this.endColumn) {
30
- this.endColumn = totalColumns - 1;
31
- }
32
- if (this.startColumn !== null) {
33
- this.count = this.endColumn - this.startColumn + 1;
34
- }
35
- }
36
- }
37
- exports.RenderedColumnsCalculationType = RenderedColumnsCalculationType;
@@ -1,33 +0,0 @@
1
- import { PartiallyVisibleColumnsCalculationType } from "./partiallyVisibleColumns.mjs";
2
- /**
3
- * @class RenderedColumnsCalculationType
4
- */
5
- export class RenderedColumnsCalculationType extends PartiallyVisibleColumnsCalculationType {
6
- /**
7
- * Finalizes the calculation.
8
- *
9
- * @param {ViewportColumnsCalculator} viewportCalculator The viewport calculator object.
10
- */
11
- finalize(viewportCalculator) {
12
- var _startPositions$this$;
13
- super.finalize(viewportCalculator);
14
- const {
15
- overrideFn,
16
- totalColumns,
17
- startPositions
18
- } = viewportCalculator;
19
- if (this.startColumn !== null && typeof overrideFn === 'function') {
20
- overrideFn(this);
21
- }
22
- if (this.startColumn < 0) {
23
- this.startColumn = 0;
24
- }
25
- this.startPosition = (_startPositions$this$ = startPositions[this.startColumn]) !== null && _startPositions$this$ !== void 0 ? _startPositions$this$ : null;
26
- if (totalColumns < this.endColumn) {
27
- this.endColumn = totalColumns - 1;
28
- }
29
- if (this.startColumn !== null) {
30
- this.count = this.endColumn - this.startColumn + 1;
31
- }
32
- }
33
- }
@@ -1,37 +0,0 @@
1
- "use strict";
2
-
3
- exports.__esModule = true;
4
- var _partiallyVisibleRows = require("./partiallyVisibleRows");
5
- /**
6
- * @class RenderedRowsCalculationType
7
- */
8
- class RenderedRowsCalculationType extends _partiallyVisibleRows.PartiallyVisibleRowsCalculationType {
9
- /**
10
- * Finalizes the calculation.
11
- *
12
- * @param {ViewportRowsCalculator} viewportCalculator The viewport calculator object.
13
- */
14
- finalize(viewportCalculator) {
15
- var _startPositions$this$;
16
- super.finalize(viewportCalculator);
17
- const {
18
- overrideFn,
19
- totalRows,
20
- startPositions
21
- } = viewportCalculator;
22
- if (this.startRow !== null && typeof overrideFn === 'function') {
23
- overrideFn(this);
24
- }
25
- if (this.startRow < 0) {
26
- this.startRow = 0;
27
- }
28
- this.startPosition = (_startPositions$this$ = startPositions[this.startRow]) !== null && _startPositions$this$ !== void 0 ? _startPositions$this$ : null;
29
- if (totalRows < this.endRow) {
30
- this.endRow = totalRows - 1;
31
- }
32
- if (this.startRow !== null) {
33
- this.count = this.endRow - this.startRow + 1;
34
- }
35
- }
36
- }
37
- exports.RenderedRowsCalculationType = RenderedRowsCalculationType;
@@ -1,33 +0,0 @@
1
- import { PartiallyVisibleRowsCalculationType } from "./partiallyVisibleRows.mjs";
2
- /**
3
- * @class RenderedRowsCalculationType
4
- */
5
- export class RenderedRowsCalculationType extends PartiallyVisibleRowsCalculationType {
6
- /**
7
- * Finalizes the calculation.
8
- *
9
- * @param {ViewportRowsCalculator} viewportCalculator The viewport calculator object.
10
- */
11
- finalize(viewportCalculator) {
12
- var _startPositions$this$;
13
- super.finalize(viewportCalculator);
14
- const {
15
- overrideFn,
16
- totalRows,
17
- startPositions
18
- } = viewportCalculator;
19
- if (this.startRow !== null && typeof overrideFn === 'function') {
20
- overrideFn(this);
21
- }
22
- if (this.startRow < 0) {
23
- this.startRow = 0;
24
- }
25
- this.startPosition = (_startPositions$this$ = startPositions[this.startRow]) !== null && _startPositions$this$ !== void 0 ? _startPositions$this$ : null;
26
- if (totalRows < this.endRow) {
27
- this.endRow = totalRows - 1;
28
- }
29
- if (this.startRow !== null) {
30
- this.count = this.endRow - this.startRow + 1;
31
- }
32
- }
33
- }
@@ -1,92 +0,0 @@
1
- "use strict";
2
-
3
- exports.__esModule = true;
4
- require("core-js/modules/es.error.cause.js");
5
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
6
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
7
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
- /**
9
- * @typedef {object} ColumnsCalculationType
10
- * @property {number | null} startColumn The column index of the first column in the viewport.
11
- * @property {number | null} endColumn The column index of the last column in the viewport.
12
- * @property {number} count Total number of columns.
13
- * @property {number | null} startPosition Position of the first fully column (in px).
14
- * @property {boolean} isVisibleInTrimmingContainer Determines if the viewport is visible in the trimming container.
15
- */
16
- /**
17
- * @typedef {object} RowsCalculationType
18
- * @property {number | null} startRow The row index of the first row in the viewport.
19
- * @property {number | null} endRow The row index of the last row in the viewport.
20
- * @property {number} count Total number of rows.
21
- * @property {number | null} startPosition Position of the first fully row (in px).
22
- * @property {boolean} isVisibleInTrimmingContainer Determines if the viewport is visible in the trimming container.
23
- */
24
- /**
25
- * @class ViewportBaseCalculator
26
- */
27
- class ViewportBaseCalculator {
28
- constructor(calculationTypes) {
29
- /**
30
- * The calculation types to be performed.
31
- *
32
- * @type {Array}
33
- */
34
- _defineProperty(this, "calculationTypes", []);
35
- /**
36
- * The calculation results.
37
- *
38
- * @type {Map<string, ColumnsCalculationType | RowsCalculationType>}
39
- */
40
- _defineProperty(this, "calculationResults", new Map());
41
- this.calculationTypes = calculationTypes;
42
- }
43
-
44
- /**
45
- * Initializes all calculators (triggers all calculators before calculating the rows/columns sizes).
46
- *
47
- * @param {*} context The context object (rows or columns viewport calculator).
48
- */
49
- _initialize(context) {
50
- this.calculationTypes.forEach(_ref => {
51
- let [id, calculator] = _ref;
52
- this.calculationResults.set(id, calculator);
53
- calculator.initialize(context);
54
- });
55
- }
56
-
57
- /**
58
- * Processes the row/column at the given index.
59
- *
60
- * @param {number} index The index of the row/column.
61
- * @param {*} context The context object (rows or columns viewport calculator).
62
- */
63
- _process(index, context) {
64
- this.calculationTypes.forEach(_ref2 => {
65
- let [, calculator] = _ref2;
66
- return calculator.process(index, context);
67
- });
68
- }
69
-
70
- /**
71
- * Finalizes all calculators (triggers all calculators after calculating the rows/columns sizes).
72
- *
73
- * @param {*} context The context object (rows or columns viewport calculator).
74
- */
75
- _finalize(context) {
76
- this.calculationTypes.forEach(_ref3 => {
77
- let [, calculator] = _ref3;
78
- return calculator.finalize(context);
79
- });
80
- }
81
-
82
- /**
83
- * Gets the results for the given calculator.
84
- *
85
- * @param {string} calculatorId The id of the calculator.
86
- * @returns {ColumnsCalculationType | RowsCalculationType}
87
- */
88
- getResultsFor(calculatorId) {
89
- return this.calculationResults.get(calculatorId);
90
- }
91
- }
92
- exports.ViewportBaseCalculator = ViewportBaseCalculator;
@@ -1,88 +0,0 @@
1
- import "core-js/modules/es.error.cause.js";
2
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
3
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
4
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
5
- /**
6
- * @typedef {object} ColumnsCalculationType
7
- * @property {number | null} startColumn The column index of the first column in the viewport.
8
- * @property {number | null} endColumn The column index of the last column in the viewport.
9
- * @property {number} count Total number of columns.
10
- * @property {number | null} startPosition Position of the first fully column (in px).
11
- * @property {boolean} isVisibleInTrimmingContainer Determines if the viewport is visible in the trimming container.
12
- */
13
- /**
14
- * @typedef {object} RowsCalculationType
15
- * @property {number | null} startRow The row index of the first row in the viewport.
16
- * @property {number | null} endRow The row index of the last row in the viewport.
17
- * @property {number} count Total number of rows.
18
- * @property {number | null} startPosition Position of the first fully row (in px).
19
- * @property {boolean} isVisibleInTrimmingContainer Determines if the viewport is visible in the trimming container.
20
- */
21
- /**
22
- * @class ViewportBaseCalculator
23
- */
24
- export class ViewportBaseCalculator {
25
- constructor(calculationTypes) {
26
- /**
27
- * The calculation types to be performed.
28
- *
29
- * @type {Array}
30
- */
31
- _defineProperty(this, "calculationTypes", []);
32
- /**
33
- * The calculation results.
34
- *
35
- * @type {Map<string, ColumnsCalculationType | RowsCalculationType>}
36
- */
37
- _defineProperty(this, "calculationResults", new Map());
38
- this.calculationTypes = calculationTypes;
39
- }
40
-
41
- /**
42
- * Initializes all calculators (triggers all calculators before calculating the rows/columns sizes).
43
- *
44
- * @param {*} context The context object (rows or columns viewport calculator).
45
- */
46
- _initialize(context) {
47
- this.calculationTypes.forEach(_ref => {
48
- let [id, calculator] = _ref;
49
- this.calculationResults.set(id, calculator);
50
- calculator.initialize(context);
51
- });
52
- }
53
-
54
- /**
55
- * Processes the row/column at the given index.
56
- *
57
- * @param {number} index The index of the row/column.
58
- * @param {*} context The context object (rows or columns viewport calculator).
59
- */
60
- _process(index, context) {
61
- this.calculationTypes.forEach(_ref2 => {
62
- let [, calculator] = _ref2;
63
- return calculator.process(index, context);
64
- });
65
- }
66
-
67
- /**
68
- * Finalizes all calculators (triggers all calculators after calculating the rows/columns sizes).
69
- *
70
- * @param {*} context The context object (rows or columns viewport calculator).
71
- */
72
- _finalize(context) {
73
- this.calculationTypes.forEach(_ref3 => {
74
- let [, calculator] = _ref3;
75
- return calculator.finalize(context);
76
- });
77
- }
78
-
79
- /**
80
- * Gets the results for the given calculator.
81
- *
82
- * @param {string} calculatorId The id of the calculator.
83
- * @returns {ColumnsCalculationType | RowsCalculationType}
84
- */
85
- getResultsFor(calculatorId) {
86
- return this.calculationResults.get(calculatorId);
87
- }
88
- }