handsontable 0.0.0-next-09eb648-20230511 → 0.0.0-next-0962f2c-20230512
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/base.js +2 -2
- package/base.mjs +2 -2
- package/dataMap/metaManager/metaSchema.js +7 -5
- package/dataMap/metaManager/metaSchema.mjs +7 -5
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +38 -21
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +5 -5
- package/dist/handsontable.js +38 -21
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +4 -4
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/package.json +1 -1
- package/plugins/customBorders/customBorders.d.ts +2 -0
- package/plugins/manualRowMove/manualRowMove.js +26 -11
- package/plugins/manualRowMove/manualRowMove.mjs +27 -12
package/helpers/mixed.js
CHANGED
@@ -152,7 +152,7 @@ var domMessages = {
|
|
152
152
|
function _injectProductInfo(key, element) {
|
153
153
|
var hasValidType = !isEmpty(key);
|
154
154
|
var isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
|
155
|
-
var hotVersion = "0.0.0-next-
|
155
|
+
var hotVersion = "0.0.0-next-0962f2c-20230512";
|
156
156
|
var keyValidityDate;
|
157
157
|
var consoleMessageState = 'invalid';
|
158
158
|
var domMessageState = 'invalid';
|
package/helpers/mixed.mjs
CHANGED
@@ -142,7 +142,7 @@ var domMessages = {
|
|
142
142
|
export function _injectProductInfo(key, element) {
|
143
143
|
var hasValidType = !isEmpty(key);
|
144
144
|
var isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
|
145
|
-
var hotVersion = "0.0.0-next-
|
145
|
+
var hotVersion = "0.0.0-next-0962f2c-20230512";
|
146
146
|
var keyValidityDate;
|
147
147
|
var consoleMessageState = 'invalid';
|
148
148
|
var domMessageState = 'invalid';
|
package/package.json
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
"url": "https://github.com/handsontable/handsontable/issues"
|
11
11
|
},
|
12
12
|
"author": "Handsoncode <hello@handsontable.com>",
|
13
|
-
"version": "0.0.0-next-
|
13
|
+
"version": "0.0.0-next-0962f2c-20230512",
|
14
14
|
"main": "index",
|
15
15
|
"module": "index.mjs",
|
16
16
|
"jsnext:main": "index.mjs",
|
@@ -14,6 +14,8 @@ export interface BorderRange {
|
|
14
14
|
};
|
15
15
|
}
|
16
16
|
export type DetailedSettings = (SimpleCellCoords | BorderRange) & {
|
17
|
+
start?: BorderOptions | string;
|
18
|
+
end?: BorderOptions | string;
|
17
19
|
left?: BorderOptions | string;
|
18
20
|
right?: BorderOptions | string;
|
19
21
|
top?: BorderOptions | string;
|
@@ -484,38 +484,53 @@ var ManualRowMove = /*#__PURE__*/function (_BasePlugin) {
|
|
484
484
|
}
|
485
485
|
var wtTable = this.hot.view._wt.wtTable;
|
486
486
|
var TD = priv.target.TD;
|
487
|
-
var
|
488
|
-
var
|
489
|
-
var
|
487
|
+
var rootElement = this.hot.rootElement;
|
488
|
+
var rootElementOffset = (0, _element.offset)(rootElement);
|
489
|
+
var trimmingContainer = (0, _element.getTrimmingContainer)(rootElement);
|
490
|
+
var tableScroll = wtTable.holder.scrollTop;
|
491
|
+
var trimmingContainerScroll;
|
492
|
+
|
493
|
+
// Trimming container is the `window` element.
|
494
|
+
if (this.hot.rootWindow === trimmingContainer) {
|
495
|
+
trimmingContainerScroll = trimmingContainer.scrollY;
|
496
|
+
} else {
|
497
|
+
trimmingContainerScroll = trimmingContainer.scrollTop;
|
498
|
+
}
|
499
|
+
var pixelsAbove = rootElementOffset.top - trimmingContainerScroll;
|
500
|
+
var pixelsRelToTableStart = priv.target.eventPageY - pixelsAbove + tableScroll;
|
490
501
|
var hiderHeight = wtTable.hider.offsetHeight;
|
491
502
|
var tbodyOffsetTop = wtTable.TBODY.offsetTop;
|
492
503
|
var backlightElemMarginTop = this.backlight.getOffset().top;
|
493
504
|
var backlightElemHeight = this.backlight.getSize().height;
|
505
|
+
var tdMiddle = TD.offsetHeight / 2;
|
506
|
+
var tdHeight = TD.offsetHeight;
|
507
|
+
var tdStartPixel = this.hot.view.THEAD.offsetHeight + this.getRowsHeight(0, coords.row - 1);
|
508
|
+
var isBelowTable = pixelsRelToTableStart >= tdStartPixel + tdMiddle;
|
494
509
|
if (this.isFixedRowTop(coords.row)) {
|
495
|
-
|
510
|
+
tdStartPixel += wtTable.holder.scrollTop;
|
496
511
|
}
|
497
512
|
if (coords.row < 0) {
|
498
513
|
// if hover on colHeader
|
499
514
|
priv.target.row = firstVisible > 0 ? firstVisible - 1 : firstVisible;
|
500
|
-
} else if (
|
515
|
+
} else if (isBelowTable) {
|
501
516
|
// if hover on lower part of TD
|
502
517
|
priv.target.row = coords.row + 1;
|
503
518
|
// unfortunately first row is bigger than rest
|
504
|
-
|
519
|
+
tdStartPixel += coords.row === 0 ? tdHeight - 1 : tdHeight;
|
505
520
|
} else {
|
506
521
|
// elsewhere on table
|
507
522
|
priv.target.row = coords.row;
|
508
523
|
}
|
509
|
-
var backlightTop =
|
510
|
-
var guidelineTop =
|
511
|
-
if (
|
524
|
+
var backlightTop = pixelsRelToTableStart;
|
525
|
+
var guidelineTop = tdStartPixel;
|
526
|
+
if (pixelsRelToTableStart + backlightElemHeight + backlightElemMarginTop >= hiderHeight) {
|
512
527
|
// prevent display backlight below table
|
513
528
|
backlightTop = hiderHeight - backlightElemHeight - backlightElemMarginTop;
|
514
|
-
} else if (
|
529
|
+
} else if (pixelsRelToTableStart + backlightElemMarginTop < tbodyOffsetTop) {
|
515
530
|
// prevent display above below table
|
516
531
|
backlightTop = tbodyOffsetTop + Math.abs(backlightElemMarginTop);
|
517
532
|
}
|
518
|
-
if (
|
533
|
+
if (tdStartPixel >= hiderHeight - 1) {
|
519
534
|
// prevent display guideline below table
|
520
535
|
guidelineTop = hiderHeight - 1;
|
521
536
|
}
|
@@ -34,7 +34,7 @@ import "core-js/modules/es.symbol.iterator.js";
|
|
34
34
|
import { BasePlugin } from "../base/index.mjs";
|
35
35
|
import Hooks from "../../pluginHooks.mjs";
|
36
36
|
import { arrayReduce } from "../../helpers/array.mjs";
|
37
|
-
import { addClass, removeClass, offset } from "../../helpers/dom/element.mjs";
|
37
|
+
import { addClass, removeClass, offset, getTrimmingContainer } from "../../helpers/dom/element.mjs";
|
38
38
|
import { rangeEach } from "../../helpers/number.mjs";
|
39
39
|
import EventManager from "../../eventManager.mjs";
|
40
40
|
import BacklightUI from "./ui/backlight.mjs";
|
@@ -477,38 +477,53 @@ export var ManualRowMove = /*#__PURE__*/function (_BasePlugin) {
|
|
477
477
|
}
|
478
478
|
var wtTable = this.hot.view._wt.wtTable;
|
479
479
|
var TD = priv.target.TD;
|
480
|
-
var
|
481
|
-
var
|
482
|
-
var
|
480
|
+
var rootElement = this.hot.rootElement;
|
481
|
+
var rootElementOffset = offset(rootElement);
|
482
|
+
var trimmingContainer = getTrimmingContainer(rootElement);
|
483
|
+
var tableScroll = wtTable.holder.scrollTop;
|
484
|
+
var trimmingContainerScroll;
|
485
|
+
|
486
|
+
// Trimming container is the `window` element.
|
487
|
+
if (this.hot.rootWindow === trimmingContainer) {
|
488
|
+
trimmingContainerScroll = trimmingContainer.scrollY;
|
489
|
+
} else {
|
490
|
+
trimmingContainerScroll = trimmingContainer.scrollTop;
|
491
|
+
}
|
492
|
+
var pixelsAbove = rootElementOffset.top - trimmingContainerScroll;
|
493
|
+
var pixelsRelToTableStart = priv.target.eventPageY - pixelsAbove + tableScroll;
|
483
494
|
var hiderHeight = wtTable.hider.offsetHeight;
|
484
495
|
var tbodyOffsetTop = wtTable.TBODY.offsetTop;
|
485
496
|
var backlightElemMarginTop = this.backlight.getOffset().top;
|
486
497
|
var backlightElemHeight = this.backlight.getSize().height;
|
498
|
+
var tdMiddle = TD.offsetHeight / 2;
|
499
|
+
var tdHeight = TD.offsetHeight;
|
500
|
+
var tdStartPixel = this.hot.view.THEAD.offsetHeight + this.getRowsHeight(0, coords.row - 1);
|
501
|
+
var isBelowTable = pixelsRelToTableStart >= tdStartPixel + tdMiddle;
|
487
502
|
if (this.isFixedRowTop(coords.row)) {
|
488
|
-
|
503
|
+
tdStartPixel += wtTable.holder.scrollTop;
|
489
504
|
}
|
490
505
|
if (coords.row < 0) {
|
491
506
|
// if hover on colHeader
|
492
507
|
priv.target.row = firstVisible > 0 ? firstVisible - 1 : firstVisible;
|
493
|
-
} else if (
|
508
|
+
} else if (isBelowTable) {
|
494
509
|
// if hover on lower part of TD
|
495
510
|
priv.target.row = coords.row + 1;
|
496
511
|
// unfortunately first row is bigger than rest
|
497
|
-
|
512
|
+
tdStartPixel += coords.row === 0 ? tdHeight - 1 : tdHeight;
|
498
513
|
} else {
|
499
514
|
// elsewhere on table
|
500
515
|
priv.target.row = coords.row;
|
501
516
|
}
|
502
|
-
var backlightTop =
|
503
|
-
var guidelineTop =
|
504
|
-
if (
|
517
|
+
var backlightTop = pixelsRelToTableStart;
|
518
|
+
var guidelineTop = tdStartPixel;
|
519
|
+
if (pixelsRelToTableStart + backlightElemHeight + backlightElemMarginTop >= hiderHeight) {
|
505
520
|
// prevent display backlight below table
|
506
521
|
backlightTop = hiderHeight - backlightElemHeight - backlightElemMarginTop;
|
507
|
-
} else if (
|
522
|
+
} else if (pixelsRelToTableStart + backlightElemMarginTop < tbodyOffsetTop) {
|
508
523
|
// prevent display above below table
|
509
524
|
backlightTop = tbodyOffsetTop + Math.abs(backlightElemMarginTop);
|
510
525
|
}
|
511
|
-
if (
|
526
|
+
if (tdStartPixel >= hiderHeight - 1) {
|
512
527
|
// prevent display guideline below table
|
513
528
|
guidelineTop = hiderHeight - 1;
|
514
529
|
}
|