handsontable 0.0.0-next-9a52a6a-20241128 → 0.0.0-next-ee5ee21-20241202

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.

@@ -180,14 +180,13 @@ class BottomOverlay extends _base.Overlay {
180
180
  rootDocument,
181
181
  rootWindow
182
182
  } = this.domBindings;
183
- const scrollbarWidth = (0, _element.getScrollbarWidth)(rootDocument);
184
183
  const overlayRoot = this.clone.wtTable.holder.parentNode;
185
184
  const overlayRootStyle = overlayRoot.style;
186
185
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
187
186
  if (this.trimmingContainer !== rootWindow || preventOverflow === 'horizontal') {
188
187
  let width = wtViewport.getWorkspaceWidth();
189
- if (this.wot.wtOverlays.hasScrollbarRight) {
190
- width -= scrollbarWidth;
188
+ if (wtViewport.hasVerticalScroll()) {
189
+ width -= (0, _element.getScrollbarWidth)(rootDocument);
191
190
  }
192
191
  width = Math.min(width, wtTable.wtRootElement.scrollWidth);
193
192
  overlayRootStyle.width = `${width}px`;
@@ -196,7 +195,7 @@ class BottomOverlay extends _base.Overlay {
196
195
  }
197
196
  this.clone.wtTable.holder.style.width = overlayRootStyle.width;
198
197
  let tableHeight = (0, _element.outerHeight)(this.clone.wtTable.TABLE);
199
- if (!this.wot.wtTable.hasDefinedSize()) {
198
+ if (!wtTable.hasDefinedSize()) {
200
199
  tableHeight = 0;
201
200
  }
202
201
  overlayRootStyle.height = `${tableHeight}px`;
@@ -176,14 +176,13 @@ export class BottomOverlay extends Overlay {
176
176
  rootDocument,
177
177
  rootWindow
178
178
  } = this.domBindings;
179
- const scrollbarWidth = getScrollbarWidth(rootDocument);
180
179
  const overlayRoot = this.clone.wtTable.holder.parentNode;
181
180
  const overlayRootStyle = overlayRoot.style;
182
181
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
183
182
  if (this.trimmingContainer !== rootWindow || preventOverflow === 'horizontal') {
184
183
  let width = wtViewport.getWorkspaceWidth();
185
- if (this.wot.wtOverlays.hasScrollbarRight) {
186
- width -= scrollbarWidth;
184
+ if (wtViewport.hasVerticalScroll()) {
185
+ width -= getScrollbarWidth(rootDocument);
187
186
  }
188
187
  width = Math.min(width, wtTable.wtRootElement.scrollWidth);
189
188
  overlayRootStyle.width = `${width}px`;
@@ -192,7 +191,7 @@ export class BottomOverlay extends Overlay {
192
191
  }
193
192
  this.clone.wtTable.holder.style.width = overlayRootStyle.width;
194
193
  let tableHeight = outerHeight(this.clone.wtTable.TABLE);
195
- if (!this.wot.wtTable.hasDefinedSize()) {
194
+ if (!wtTable.hasDefinedSize()) {
196
195
  tableHeight = 0;
197
196
  }
198
197
  overlayRootStyle.height = `${tableHeight}px`;
@@ -141,20 +141,20 @@ class InlineStartOverlay extends _base.Overlay {
141
141
  */
142
142
  adjustRootElementSize() {
143
143
  const {
144
- wtTable
144
+ wtTable,
145
+ wtViewport
145
146
  } = this.wot;
146
147
  const {
147
148
  rootDocument,
148
149
  rootWindow
149
150
  } = this.domBindings;
150
- const scrollbarHeight = (0, _element.getScrollbarWidth)(rootDocument);
151
151
  const overlayRoot = this.clone.wtTable.holder.parentNode;
152
152
  const overlayRootStyle = overlayRoot.style;
153
153
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
154
154
  if (this.trimmingContainer !== rootWindow || preventOverflow === 'vertical') {
155
- let height = this.wot.wtViewport.getWorkspaceHeight();
156
- if (this.wot.wtOverlays.hasScrollbarBottom) {
157
- height -= scrollbarHeight;
155
+ let height = wtViewport.getWorkspaceHeight();
156
+ if (wtViewport.hasHorizontalScroll()) {
157
+ height -= (0, _element.getScrollbarWidth)(rootDocument);
158
158
  }
159
159
  height = Math.min(height, wtTable.wtRootElement.scrollHeight);
160
160
  overlayRootStyle.height = `${height}px`;
@@ -137,20 +137,20 @@ export class InlineStartOverlay extends Overlay {
137
137
  */
138
138
  adjustRootElementSize() {
139
139
  const {
140
- wtTable
140
+ wtTable,
141
+ wtViewport
141
142
  } = this.wot;
142
143
  const {
143
144
  rootDocument,
144
145
  rootWindow
145
146
  } = this.domBindings;
146
- const scrollbarHeight = getScrollbarWidth(rootDocument);
147
147
  const overlayRoot = this.clone.wtTable.holder.parentNode;
148
148
  const overlayRootStyle = overlayRoot.style;
149
149
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
150
150
  if (this.trimmingContainer !== rootWindow || preventOverflow === 'vertical') {
151
- let height = this.wot.wtViewport.getWorkspaceHeight();
152
- if (this.wot.wtOverlays.hasScrollbarBottom) {
153
- height -= scrollbarHeight;
151
+ let height = wtViewport.getWorkspaceHeight();
152
+ if (wtViewport.hasHorizontalScroll()) {
153
+ height -= getScrollbarWidth(rootDocument);
154
154
  }
155
155
  height = Math.min(height, wtTable.wtRootElement.scrollHeight);
156
156
  overlayRootStyle.height = `${height}px`;
@@ -165,20 +165,20 @@ class TopOverlay extends _base.Overlay {
165
165
  */
166
166
  adjustRootElementSize() {
167
167
  const {
168
- wtTable
168
+ wtTable,
169
+ wtViewport
169
170
  } = this.wot;
170
171
  const {
171
172
  rootDocument,
172
173
  rootWindow
173
174
  } = this.domBindings;
174
- const scrollbarWidth = (0, _element.getScrollbarWidth)(rootDocument);
175
175
  const overlayRoot = this.clone.wtTable.holder.parentNode;
176
176
  const overlayRootStyle = overlayRoot.style;
177
177
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
178
178
  if (this.trimmingContainer !== rootWindow || preventOverflow === 'horizontal') {
179
- let width = this.wot.wtViewport.getWorkspaceWidth();
180
- if (this.wot.wtOverlays.hasScrollbarRight) {
181
- width -= scrollbarWidth;
179
+ let width = wtViewport.getWorkspaceWidth();
180
+ if (wtViewport.hasVerticalScroll()) {
181
+ width -= (0, _element.getScrollbarWidth)(rootDocument);
182
182
  }
183
183
  width = Math.min(width, wtTable.wtRootElement.scrollWidth);
184
184
  overlayRootStyle.width = `${width}px`;
@@ -187,7 +187,7 @@ class TopOverlay extends _base.Overlay {
187
187
  }
188
188
  this.clone.wtTable.holder.style.width = overlayRootStyle.width;
189
189
  let tableHeight = (0, _element.outerHeight)(this.clone.wtTable.TABLE);
190
- if (!this.wot.wtTable.hasDefinedSize()) {
190
+ if (!wtTable.hasDefinedSize()) {
191
191
  tableHeight = 0;
192
192
  }
193
193
  overlayRootStyle.height = `${tableHeight}px`;
@@ -161,20 +161,20 @@ export class TopOverlay extends Overlay {
161
161
  */
162
162
  adjustRootElementSize() {
163
163
  const {
164
- wtTable
164
+ wtTable,
165
+ wtViewport
165
166
  } = this.wot;
166
167
  const {
167
168
  rootDocument,
168
169
  rootWindow
169
170
  } = this.domBindings;
170
- const scrollbarWidth = getScrollbarWidth(rootDocument);
171
171
  const overlayRoot = this.clone.wtTable.holder.parentNode;
172
172
  const overlayRootStyle = overlayRoot.style;
173
173
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
174
174
  if (this.trimmingContainer !== rootWindow || preventOverflow === 'horizontal') {
175
- let width = this.wot.wtViewport.getWorkspaceWidth();
176
- if (this.wot.wtOverlays.hasScrollbarRight) {
177
- width -= scrollbarWidth;
175
+ let width = wtViewport.getWorkspaceWidth();
176
+ if (wtViewport.hasVerticalScroll()) {
177
+ width -= getScrollbarWidth(rootDocument);
178
178
  }
179
179
  width = Math.min(width, wtTable.wtRootElement.scrollWidth);
180
180
  overlayRootStyle.width = `${width}px`;
@@ -183,7 +183,7 @@ export class TopOverlay extends Overlay {
183
183
  }
184
184
  this.clone.wtTable.holder.style.width = overlayRootStyle.width;
185
185
  let tableHeight = outerHeight(this.clone.wtTable.TABLE);
186
- if (!this.wot.wtTable.hasDefinedSize()) {
186
+ if (!wtTable.hasDefinedSize()) {
187
187
  tableHeight = 0;
188
188
  }
189
189
  overlayRootStyle.height = `${tableHeight}px`;
@@ -166,8 +166,6 @@ class Overlays {
166
166
  const isOverflowHidden = rootWindow.getComputedStyle(wtTable.wtRootElement.parentNode).getPropertyValue('overflow') === 'hidden';
167
167
  this.scrollableElement = isOverflowHidden ? wtTable.holder : (0, _element.getScrollableElement)(wtTable.TABLE);
168
168
  this.initOverlays();
169
- this.hasScrollbarBottom = false;
170
- this.hasScrollbarRight = false;
171
169
  this.destroyed = false;
172
170
  this.keyPressed = false;
173
171
  this.spreaderLastSize = {
@@ -645,24 +643,6 @@ class Overlays {
645
643
  // we need to adjust the hider dimensions by the header border size. (https://github.com/handsontable/dev-handsontable/issues/1772)
646
644
  hiderStyle.width = `${proposedHiderWidth + rowHeaderBorderCompensation}px`;
647
645
  hiderStyle.height = `${proposedHiderHeight + columnHeaderBorderCompensation}px`;
648
- if (this.scrollbarSize > 0) {
649
- // todo refactoring, looking as a part of logic which should be moved outside the class
650
- const {
651
- scrollHeight: rootElemScrollHeight,
652
- scrollWidth: rootElemScrollWidth
653
- } = wtTable.wtRootElement;
654
- const {
655
- scrollHeight: holderScrollHeight,
656
- scrollWidth: holderScrollWidth
657
- } = wtTable.holder;
658
- this.hasScrollbarRight = rootElemScrollHeight < holderScrollHeight;
659
- this.hasScrollbarBottom = rootElemScrollWidth < holderScrollWidth;
660
- if (this.hasScrollbarRight && wtTable.hider.scrollWidth + this.scrollbarSize > rootElemScrollWidth) {
661
- this.hasScrollbarBottom = true;
662
- } else if (this.hasScrollbarBottom && wtTable.hider.scrollHeight + this.scrollbarSize > rootElemScrollHeight) {
663
- this.hasScrollbarRight = true;
664
- }
665
- }
666
646
  this.topOverlay.adjustElementsSize();
667
647
  this.inlineStartOverlay.adjustElementsSize();
668
648
  this.bottomOverlay.adjustElementsSize();
@@ -163,8 +163,6 @@ class Overlays {
163
163
  const isOverflowHidden = rootWindow.getComputedStyle(wtTable.wtRootElement.parentNode).getPropertyValue('overflow') === 'hidden';
164
164
  this.scrollableElement = isOverflowHidden ? wtTable.holder : getScrollableElement(wtTable.TABLE);
165
165
  this.initOverlays();
166
- this.hasScrollbarBottom = false;
167
- this.hasScrollbarRight = false;
168
166
  this.destroyed = false;
169
167
  this.keyPressed = false;
170
168
  this.spreaderLastSize = {
@@ -642,24 +640,6 @@ class Overlays {
642
640
  // we need to adjust the hider dimensions by the header border size. (https://github.com/handsontable/dev-handsontable/issues/1772)
643
641
  hiderStyle.width = `${proposedHiderWidth + rowHeaderBorderCompensation}px`;
644
642
  hiderStyle.height = `${proposedHiderHeight + columnHeaderBorderCompensation}px`;
645
- if (this.scrollbarSize > 0) {
646
- // todo refactoring, looking as a part of logic which should be moved outside the class
647
- const {
648
- scrollHeight: rootElemScrollHeight,
649
- scrollWidth: rootElemScrollWidth
650
- } = wtTable.wtRootElement;
651
- const {
652
- scrollHeight: holderScrollHeight,
653
- scrollWidth: holderScrollWidth
654
- } = wtTable.holder;
655
- this.hasScrollbarRight = rootElemScrollHeight < holderScrollHeight;
656
- this.hasScrollbarBottom = rootElemScrollWidth < holderScrollWidth;
657
- if (this.hasScrollbarRight && wtTable.hider.scrollWidth + this.scrollbarSize > rootElemScrollWidth) {
658
- this.hasScrollbarBottom = true;
659
- } else if (this.hasScrollbarBottom && wtTable.hider.scrollHeight + this.scrollbarSize > rootElemScrollHeight) {
660
- this.hasScrollbarRight = true;
661
- }
662
- }
663
643
  this.topOverlay.adjustElementsSize();
664
644
  this.inlineStartOverlay.adjustElementsSize();
665
645
  this.bottomOverlay.adjustElementsSize();
package/base.js CHANGED
@@ -45,8 +45,8 @@ Handsontable.hooks = _hooks.Hooks.getSingleton();
45
45
  Handsontable.CellCoords = _src.CellCoords;
46
46
  Handsontable.CellRange = _src.CellRange;
47
47
  Handsontable.packageName = 'handsontable';
48
- Handsontable.buildDate = "28/11/2024 10:03:40";
49
- Handsontable.version = "0.0.0-next-9a52a6a-20241128";
48
+ Handsontable.buildDate = "02/12/2024 12:56:55";
49
+ Handsontable.version = "0.0.0-next-ee5ee21-20241202";
50
50
  Handsontable.languages = {
51
51
  dictionaryKeys: _registry.dictionaryKeys,
52
52
  getLanguageDictionary: _registry.getLanguageDictionary,
package/base.mjs CHANGED
@@ -35,8 +35,8 @@ Handsontable.hooks = Hooks.getSingleton();
35
35
  Handsontable.CellCoords = CellCoords;
36
36
  Handsontable.CellRange = CellRange;
37
37
  Handsontable.packageName = 'handsontable';
38
- Handsontable.buildDate = "28/11/2024 10:03:46";
39
- Handsontable.version = "0.0.0-next-9a52a6a-20241128";
38
+ Handsontable.buildDate = "02/12/2024 12:57:00";
39
+ Handsontable.version = "0.0.0-next-ee5ee21-20241202";
40
40
  Handsontable.languages = {
41
41
  dictionaryKeys,
42
42
  getLanguageDictionary,
@@ -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-9a52a6a-20241128
29
- * Release date: 17/10/2024 (built at 28/11/2024 10:03:50)
28
+ * Version: 0.0.0-next-ee5ee21-20241202
29
+ * Release date: 17/10/2024 (built at 02/12/2024 12:57:05)
30
30
  */
31
31
  /**
32
32
  * Fix for bootstrap styles
@@ -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-9a52a6a-20241128
29
- * Release date: 17/10/2024 (built at 28/11/2024 10:03:50)
28
+ * Version: 0.0.0-next-ee5ee21-20241202
29
+ * Release date: 17/10/2024 (built at 02/12/2024 12:57:05)
30
30
  */
31
31
  /**
32
32
  * Fix for bootstrap styles
@@ -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-9a52a6a-20241128
29
- * Release date: 17/10/2024 (built at 28/11/2024 10:03:50)
28
+ * Version: 0.0.0-next-ee5ee21-20241202
29
+ * Release date: 17/10/2024 (built at 02/12/2024 12:57:05)
30
30
  */
31
31
  (function webpackUniversalModuleDefinition(root, factory) {
32
32
  if(typeof exports === 'object' && typeof module === 'object')
@@ -42679,8 +42679,8 @@ Handsontable.hooks = _hooks.Hooks.getSingleton();
42679
42679
  Handsontable.CellCoords = _src.CellCoords;
42680
42680
  Handsontable.CellRange = _src.CellRange;
42681
42681
  Handsontable.packageName = 'handsontable';
42682
- Handsontable.buildDate = "28/11/2024 10:03:50";
42683
- Handsontable.version = "0.0.0-next-9a52a6a-20241128";
42682
+ Handsontable.buildDate = "02/12/2024 12:57:05";
42683
+ Handsontable.version = "0.0.0-next-ee5ee21-20241202";
42684
42684
  Handsontable.languages = {
42685
42685
  dictionaryKeys: _registry.dictionaryKeys,
42686
42686
  getLanguageDictionary: _registry.getLanguageDictionary,
@@ -54144,7 +54144,7 @@ const domMessages = {
54144
54144
  function _injectProductInfo(key, element) {
54145
54145
  const hasValidType = !isEmpty(key);
54146
54146
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
54147
- const hotVersion = "0.0.0-next-9a52a6a-20241128";
54147
+ const hotVersion = "0.0.0-next-ee5ee21-20241202";
54148
54148
  let keyValidityDate;
54149
54149
  let consoleMessageState = 'invalid';
54150
54150
  let domMessageState = 'invalid';
@@ -73348,8 +73348,6 @@ class Overlays {
73348
73348
  const isOverflowHidden = rootWindow.getComputedStyle(wtTable.wtRootElement.parentNode).getPropertyValue('overflow') === 'hidden';
73349
73349
  this.scrollableElement = isOverflowHidden ? wtTable.holder : (0, _element.getScrollableElement)(wtTable.TABLE);
73350
73350
  this.initOverlays();
73351
- this.hasScrollbarBottom = false;
73352
- this.hasScrollbarRight = false;
73353
73351
  this.destroyed = false;
73354
73352
  this.keyPressed = false;
73355
73353
  this.spreaderLastSize = {
@@ -73827,24 +73825,6 @@ class Overlays {
73827
73825
  // we need to adjust the hider dimensions by the header border size. (https://github.com/handsontable/dev-handsontable/issues/1772)
73828
73826
  hiderStyle.width = `${proposedHiderWidth + rowHeaderBorderCompensation}px`;
73829
73827
  hiderStyle.height = `${proposedHiderHeight + columnHeaderBorderCompensation}px`;
73830
- if (this.scrollbarSize > 0) {
73831
- // todo refactoring, looking as a part of logic which should be moved outside the class
73832
- const {
73833
- scrollHeight: rootElemScrollHeight,
73834
- scrollWidth: rootElemScrollWidth
73835
- } = wtTable.wtRootElement;
73836
- const {
73837
- scrollHeight: holderScrollHeight,
73838
- scrollWidth: holderScrollWidth
73839
- } = wtTable.holder;
73840
- this.hasScrollbarRight = rootElemScrollHeight < holderScrollHeight;
73841
- this.hasScrollbarBottom = rootElemScrollWidth < holderScrollWidth;
73842
- if (this.hasScrollbarRight && wtTable.hider.scrollWidth + this.scrollbarSize > rootElemScrollWidth) {
73843
- this.hasScrollbarBottom = true;
73844
- } else if (this.hasScrollbarBottom && wtTable.hider.scrollHeight + this.scrollbarSize > rootElemScrollHeight) {
73845
- this.hasScrollbarRight = true;
73846
- }
73847
- }
73848
73828
  this.topOverlay.adjustElementsSize();
73849
73829
  this.inlineStartOverlay.adjustElementsSize();
73850
73830
  this.bottomOverlay.adjustElementsSize();
@@ -78594,14 +78574,13 @@ class BottomOverlay extends _base.Overlay {
78594
78574
  rootDocument,
78595
78575
  rootWindow
78596
78576
  } = this.domBindings;
78597
- const scrollbarWidth = (0, _element.getScrollbarWidth)(rootDocument);
78598
78577
  const overlayRoot = this.clone.wtTable.holder.parentNode;
78599
78578
  const overlayRootStyle = overlayRoot.style;
78600
78579
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
78601
78580
  if (this.trimmingContainer !== rootWindow || preventOverflow === 'horizontal') {
78602
78581
  let width = wtViewport.getWorkspaceWidth();
78603
- if (this.wot.wtOverlays.hasScrollbarRight) {
78604
- width -= scrollbarWidth;
78582
+ if (wtViewport.hasVerticalScroll()) {
78583
+ width -= (0, _element.getScrollbarWidth)(rootDocument);
78605
78584
  }
78606
78585
  width = Math.min(width, wtTable.wtRootElement.scrollWidth);
78607
78586
  overlayRootStyle.width = `${width}px`;
@@ -78610,7 +78589,7 @@ class BottomOverlay extends _base.Overlay {
78610
78589
  }
78611
78590
  this.clone.wtTable.holder.style.width = overlayRootStyle.width;
78612
78591
  let tableHeight = (0, _element.outerHeight)(this.clone.wtTable.TABLE);
78613
- if (!this.wot.wtTable.hasDefinedSize()) {
78592
+ if (!wtTable.hasDefinedSize()) {
78614
78593
  tableHeight = 0;
78615
78594
  }
78616
78595
  overlayRootStyle.height = `${tableHeight}px`;
@@ -79076,20 +79055,20 @@ class InlineStartOverlay extends _base.Overlay {
79076
79055
  */
79077
79056
  adjustRootElementSize() {
79078
79057
  const {
79079
- wtTable
79058
+ wtTable,
79059
+ wtViewport
79080
79060
  } = this.wot;
79081
79061
  const {
79082
79062
  rootDocument,
79083
79063
  rootWindow
79084
79064
  } = this.domBindings;
79085
- const scrollbarHeight = (0, _element.getScrollbarWidth)(rootDocument);
79086
79065
  const overlayRoot = this.clone.wtTable.holder.parentNode;
79087
79066
  const overlayRootStyle = overlayRoot.style;
79088
79067
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
79089
79068
  if (this.trimmingContainer !== rootWindow || preventOverflow === 'vertical') {
79090
- let height = this.wot.wtViewport.getWorkspaceHeight();
79091
- if (this.wot.wtOverlays.hasScrollbarBottom) {
79092
- height -= scrollbarHeight;
79069
+ let height = wtViewport.getWorkspaceHeight();
79070
+ if (wtViewport.hasHorizontalScroll()) {
79071
+ height -= (0, _element.getScrollbarWidth)(rootDocument);
79093
79072
  }
79094
79073
  height = Math.min(height, wtTable.wtRootElement.scrollHeight);
79095
79074
  overlayRootStyle.height = `${height}px`;
@@ -81441,20 +81420,20 @@ class TopOverlay extends _base.Overlay {
81441
81420
  */
81442
81421
  adjustRootElementSize() {
81443
81422
  const {
81444
- wtTable
81423
+ wtTable,
81424
+ wtViewport
81445
81425
  } = this.wot;
81446
81426
  const {
81447
81427
  rootDocument,
81448
81428
  rootWindow
81449
81429
  } = this.domBindings;
81450
- const scrollbarWidth = (0, _element.getScrollbarWidth)(rootDocument);
81451
81430
  const overlayRoot = this.clone.wtTable.holder.parentNode;
81452
81431
  const overlayRootStyle = overlayRoot.style;
81453
81432
  const preventOverflow = this.wtSettings.getSetting('preventOverflow');
81454
81433
  if (this.trimmingContainer !== rootWindow || preventOverflow === 'horizontal') {
81455
- let width = this.wot.wtViewport.getWorkspaceWidth();
81456
- if (this.wot.wtOverlays.hasScrollbarRight) {
81457
- width -= scrollbarWidth;
81434
+ let width = wtViewport.getWorkspaceWidth();
81435
+ if (wtViewport.hasVerticalScroll()) {
81436
+ width -= (0, _element.getScrollbarWidth)(rootDocument);
81458
81437
  }
81459
81438
  width = Math.min(width, wtTable.wtRootElement.scrollWidth);
81460
81439
  overlayRootStyle.width = `${width}px`;
@@ -81463,7 +81442,7 @@ class TopOverlay extends _base.Overlay {
81463
81442
  }
81464
81443
  this.clone.wtTable.holder.style.width = overlayRootStyle.width;
81465
81444
  let tableHeight = (0, _element.outerHeight)(this.clone.wtTable.TABLE);
81466
- if (!this.wot.wtTable.hasDefinedSize()) {
81445
+ if (!wtTable.hasDefinedSize()) {
81467
81446
  tableHeight = 0;
81468
81447
  }
81469
81448
  overlayRootStyle.height = `${tableHeight}px`;
@@ -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-9a52a6a-20241128
29
- * Release date: 17/10/2024 (built at 28/11/2024 10:04:06)
28
+ * Version: 0.0.0-next-ee5ee21-20241202
29
+ * Release date: 17/10/2024 (built at 02/12/2024 12:57:22)
30
30
  */.handsontable .table td,.handsontable .table th{border-top:none}.handsontable tr{background:#fff}.handsontable td{background-color:inherit}.handsontable .table caption+thead tr:first-child td,.handsontable .table caption+thead tr:first-child th,.handsontable .table colgroup+thead tr:first-child td,.handsontable .table colgroup+thead tr:first-child th,.handsontable .table thead:first-child tr:first-child td,.handsontable .table thead:first-child tr:first-child th{border-top:1px solid #ccc}.handsontable .table-bordered{border:0;border-collapse:separate}.handsontable .table-bordered td,.handsontable .table-bordered th{border-left:none}.handsontable .table-bordered td:first-child,.handsontable .table-bordered th:first-child{border-left:1px solid #ccc}.handsontable .table>tbody>tr>td,.handsontable .table>tbody>tr>th,.handsontable .table>tfoot>tr>td,.handsontable .table>tfoot>tr>th,.handsontable .table>thead>tr>td,.handsontable .table>thead>tr>th{line-height:21px;padding:0}.col-lg-1.handsontable,.col-lg-10.handsontable,.col-lg-11.handsontable,.col-lg-12.handsontable,.col-lg-2.handsontable,.col-lg-3.handsontable,.col-lg-4.handsontable,.col-lg-5.handsontable,.col-lg-6.handsontable,.col-lg-7.handsontable,.col-lg-8.handsontable,.col-lg-9.handsontable,.col-md-1.handsontable,.col-md-10.handsontable,.col-md-11.handsontable,.col-md-12.handsontable,.col-md-2.handsontable,.col-md-3.handsontable,.col-md-4.handsontable,.col-md-5.handsontable,.col-md-6.handsontable,.col-md-7.handsontable,.col-md-8.handsontable,.col-md-9.handsontable .col-sm-1.handsontable,.col-sm-10.handsontable,.col-sm-11.handsontable,.col-sm-12.handsontable,.col-sm-2.handsontable,.col-sm-3.handsontable,.col-sm-4.handsontable,.col-sm-5.handsontable,.col-sm-6.handsontable,.col-sm-7.handsontable,.col-sm-8.handsontable,.col-sm-9.handsontable .col-xs-1.handsontable,.col-xs-10.handsontable,.col-xs-11.handsontable,.col-xs-12.handsontable,.col-xs-2.handsontable,.col-xs-3.handsontable,.col-xs-4.handsontable,.col-xs-5.handsontable,.col-xs-6.handsontable,.col-xs-7.handsontable,.col-xs-8.handsontable,.col-xs-9.handsontable{padding-left:0;padding-right:0}.handsontable .table-striped>tbody>tr:nth-of-type(2n){background-color:#fff}.handsontable{position:relative}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable .wtHider{width:0}.handsontable .wtSpreader{height:auto;position:relative;width:0}.handsontable div,.handsontable input,.handsontable table,.handsontable tbody,.handsontable td,.handsontable textarea,.handsontable th,.handsontable thead{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:auto}.handsontable table.htCore{border-collapse:separate;border-spacing:0;border-width:0;cursor:default;margin:0;max-height:none;max-width:none;outline-width:0;table-layout:fixed;width:0}.handsontable col,.handsontable col.rowHeader{width:50px}.handsontable td,.handsontable th{background-color:#fff;border-bottom:1px solid #ccc;border-left-width:0;border-right:1px solid #ccc;border-top-width:0;empty-cells:show;height:22px;line-height:21px;outline:none;outline-width:0;overflow:hidden;padding:0 4px;vertical-align:top;white-space:pre-wrap}[dir=rtl].handsontable td,[dir=rtl].handsontable th{border-left:1px solid #ccc;border-right-width:0}.handsontable th:last-child{border-bottom:1px solid #ccc;border-left:none;border-right:1px solid #ccc}[dir=rtl].handsontable th:last-child{border-left:1px solid #ccc;border-right:none}.handsontable td:first-of-type,.handsontable th:first-child{border-left:1px solid #ccc}[dir=rtl].handsontable td:first-of-type,[dir=rtl].handsontable th:first-child{border-right:1px solid #ccc}.handsontable .ht_clone_top th:nth-child(2){border-left-width:0;border-right:1px solid #ccc}[dir=rtl].handsontable .ht_clone_top th:nth-child(2){border-left:1px solid #ccc;border-right-width:0}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2){border-right:1px solid #ccc}.handsontable tr:first-child td,.handsontable tr:first-child th{border-top:1px solid #ccc}.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-left:1px solid #ccc;border-right-width:0}[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-left-width:0;border-right:1px solid #ccc}.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr:last-child th{border-bottom-width:0}.handsontable th{background-color:#f0f0f0;color:#222;font-weight:400;text-align:center;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#ccc}.handsontable thead th .relative{padding:2px 4px}.handsontable span.colHeader{display:inline-block;line-height:1.1}.handsontable .wtBorder{font-size:0;position:absolute}.handsontable .wtBorder.hidden{display:none!important}.handsontable .wtBorder.current{z-index:10}.handsontable .wtBorder.area{z-index:8}.handsontable .wtBorder.fill{z-index:6}.handsontable .wtBorder.corner{cursor:crosshair;font-size:0}.ht_clone_master{z-index:100}.ht_clone_inline_start{z-index:120}.ht_clone_bottom{z-index:130}.ht_clone_bottom_inline_start_corner{z-index:150}.ht_clone_top{z-index:160}.ht_clone_top_inline_start_corner{z-index:180}.handsontable col.hidden{width:0!important}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_clone_bottom,.ht_clone_inline_start,.ht_clone_top,.ht_master{overflow:hidden}.ht_master .wtHolder{overflow:auto}.handsontable .ht_clone_inline_start table.htCore>thead,.handsontable .ht_master table.htCore>tbody>tr>th,.handsontable .ht_master table.htCore>thead{visibility:hidden}.ht_clone_bottom .wtHolder,.ht_clone_inline_start .wtHolder,.ht_clone_top .wtHolder{overflow:hidden}.handsontable{color:#373737;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;font-weight:400;touch-action:manipulation}.handsontable a{color:#104acc}.handsontable.htAutoSize{left:-99000px;position:absolute;top:-99000px;visibility:hidden}.handsontable td.htInvalid{background-color:#ffbeba!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable td.invisibleSelection,.handsontable th.invisibleSelection{outline:none}.handsontable td.invisibleSelection::selection,.handsontable th.invisibleSelection::selection{background:hsla(0,0%,100%,0)}.hot-display-license-info{color:#373737;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:400;padding:5px 0 3px;text-align:left}.hot-display-license-info a{color:#104acc;font-size:10px}.handsontable .htFocusCatcher{border:0;height:0;margin:0;opacity:0;padding:0;position:absolute;width:0;z-index:-1}.handsontable .manualColumnResizer{cursor:col-resize;height:25px;position:absolute;top:0;width:5px;z-index:210}.handsontable .manualRowResizer{cursor:row-resize;height:5px;left:0;position:absolute;width:50px;z-index:210}.handsontable .manualColumnResizer.active,.handsontable .manualColumnResizer:hover,.handsontable .manualRowResizer.active,.handsontable .manualRowResizer:hover{background-color:#34a9db}.handsontable .manualColumnResizerGuide{background-color:#34a9db;border-left:none;border-right:1px dashed #777;display:none;margin-left:5px;margin-right:unset;position:absolute;right:unset;top:0;width:0}[dir=rtl].handsontable .manualColumnResizerGuide{border-left:1px dashed #777;border-right:none;left:unset;margin-left:unset;margin-right:5px}.handsontable .manualRowResizerGuide{background-color:#34a9db;border-bottom:1px dashed #777;bottom:0;display:none;height:0;left:0;margin-top:5px;position:absolute}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block;z-index:209}.handsontable td.area,.handsontable td.area-1,.handsontable td.area-2,.handsontable td.area-3,.handsontable td.area-4,.handsontable td.area-5,.handsontable td.area-6,.handsontable td.area-7{position:relative}.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before,.handsontable td.area:before{background:#005eff;bottom:0;content:"";left:0;position:absolute;right:0;top:0}.handsontable td.area:before{opacity:.1}.handsontable td.area-1:before{opacity:.2}.handsontable td.area-2:before{opacity:.27}.handsontable td.area-3:before{opacity:.35}.handsontable td.area-4:before{opacity:.41}.handsontable td.area-5:before{opacity:.47}.handsontable td.area-6:before{opacity:.54}.handsontable td.area-7:before{opacity:.58}.handsontable tbody th.current,.handsontable thead th.current{box-shadow:inset 0 0 0 2px #4b89ff}.handsontable tbody th.ht__highlight,.handsontable thead th.ht__highlight{background-color:#dcdcdc}.handsontable tbody th.ht__active_highlight,.handsontable thead th.ht__active_highlight{background-color:#8eb0e7;color:#000}.handsontableInput{background-color:#fff;border:none;border-radius:0;box-shadow:inset 0 0 0 2px #5292f7;color:#000;display:block;font-family:inherit;font-size:inherit;line-height:21px;margin:0;outline-width:0;padding:1px 5px 0;resize:none}.handsontableInput:focus{outline:none}.handsontableInputHolder{left:0;position:absolute;top:0}.htSelectEditor{-webkit-appearance:menulist-button!important;border:2px solid #4b89ff;position:absolute;width:auto}.htSelectEditor:focus{outline:none}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{color:#777;content:"▶";font-size:9px;position:absolute;right:5px}[dir=rtl].handsontable .htSubmenu :after{content:""}[dir=rtl].handsontable .htSubmenu :before{color:#777;content:"◀";font-size:9px;left:5px;position:absolute}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable.listbox{margin:0}.handsontable.listbox .ht_master table{background:#fff;border:1px solid #ccc;border-collapse:separate}.handsontable.listbox td,.handsontable.listbox th,.handsontable.listbox tr:first-child td,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th{border-color:transparent!important}.handsontable.listbox td,.handsontable.listbox th{text-overflow:ellipsis;white-space:nowrap}.handsontable.listbox td.htDimmed{color:inherit;cursor:default;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_editor_hidden{z-index:-1}.ht_editor_visible{z-index:200}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}.handsontable.mobile .handsontableInput:focus{-webkit-appearance:none;-webkit-box-shadow:inset 0 0 0 2px #5292f7;-moz-box-shadow:inset 0 0 0 2px #5292f7;box-shadow:inset 0 0 0 2px #5292f7}.handsontable .bottomSelectionHandle,.handsontable .bottomSelectionHandle-HitArea,.handsontable .topSelectionHandle,.handsontable .topSelectionHandle-HitArea{left:-10000px;right:unset;top:-10000px;z-index:9999}[dir=rtl].handsontable .bottomSelectionHandle,[dir=rtl].handsontable .bottomSelectionHandle-HitArea,[dir=rtl].handsontable .topSelectionHandle,[dir=rtl].handsontable .topSelectionHandle-HitArea{left:unset;right:-10000px}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}
31
31
  /*!
32
32
  * Pikaday