Skip to content

Commit 788622c

Browse files
committed
chore(dist): 2.0.2-beta build
1 parent 9df8670 commit 788622c

File tree

5 files changed

+93
-20
lines changed

5 files changed

+93
-20
lines changed

dist/he-tree-vue.cjs.js

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*!
2-
* he-tree-vue v2.0.1
2+
* he-tree-vue v2.0.2-beta
33
* (c) phphe <phphe@outlook.com> (https://github.com/phphe)
44
* Homepage: https://he-tree-vue.phphe.com
55
* Released under the MIT License.
@@ -578,6 +578,7 @@ function makeTreeDraggable(treeEl) {
578578
edgeScrollSpeed: options.edgeScrollSpeed,
579579
edgeScrollTriggerMode: options.edgeScrollTriggerMode,
580580
rtl: options.rtl,
581+
preventTextSelection: options.preventTextSelection,
581582
updateMovedElementStyleManually: true,
582583
getMovedOrClonedElement: function getMovedOrClonedElement(directTriggerElement, store) {
583584
// find closest branch from parents
@@ -1514,7 +1515,9 @@ function makeTreeDraggable(treeEl) {
15141515
edgeScrollTriggerMargin: options.edgeScrollTriggerMargin,
15151516
edgeScrollSpeed: options.edgeScrollSpeed,
15161517
edgeScrollTriggerMode: options.edgeScrollTriggerMode,
1517-
rtl: options.rtl
1518+
//
1519+
rtl: options.rtl,
1520+
preventTextSelection: options.preventTextSelection
15181521
});
15191522
}
15201523
}
@@ -1587,6 +1590,10 @@ var script = {
15871590
edgeScrollTriggerMode: {
15881591
type: String,
15891592
default: 'top_left_corner'
1593+
},
1594+
preventTextSelection: {
1595+
type: Boolean,
1596+
default: true
15901597
}
15911598
},
15921599
// components: {},
@@ -1767,6 +1774,7 @@ var script = {
17671774
edgeScrollSpeed: this.edgeScrollSpeed,
17681775
edgeScrollTriggerMode: this.edgeScrollTriggerMode,
17691776
rtl: this.rtl,
1777+
preventTextSelection: this.preventTextSelection,
17701778
treeClass: 'he-tree',
17711779
rootClass: 'tree-root',
17721780
childrenClass: 'tree-children',
@@ -2001,7 +2009,7 @@ var script = {
20012009
var _makeTreeDraggable_obj = this._makeTreeDraggable_obj = makeTreeDraggable(this.$el, options); // watch props and update options
20022010

20032011

2004-
['indent', 'triggerClass', 'triggerBySelf', 'unfoldWhenDragover', 'unfoldWhenDragoverDelay', 'draggingNodePositionMode', 'cloneWhenDrag', 'edgeScroll', 'edgeScrollTriggerMargin', 'edgeScrollSpeed', 'edgeScrollTriggerMode', 'rtl'].forEach(function (name) {
2012+
['indent', 'triggerClass', 'triggerBySelf', 'unfoldWhenDragover', 'unfoldWhenDragoverDelay', 'draggingNodePositionMode', 'cloneWhenDrag', 'edgeScroll', 'edgeScrollTriggerMargin', 'edgeScrollSpeed', 'edgeScrollTriggerMode', 'rtl', 'preventTextSelection'].forEach(function (name) {
20052013
_this.$watch(name, function (value) {
20062014
_makeTreeDraggable_obj.options[name] = value;
20072015

dist/he-tree-vue.esm.js

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*!
2-
* he-tree-vue v2.0.1
2+
* he-tree-vue v2.0.2-beta
33
* (c) phphe <phphe@outlook.com> (https://github.com/phphe)
44
* Homepage: https://he-tree-vue.phphe.com
55
* Released under the MIT License.
@@ -572,6 +572,7 @@ function makeTreeDraggable(treeEl) {
572572
edgeScrollSpeed: options.edgeScrollSpeed,
573573
edgeScrollTriggerMode: options.edgeScrollTriggerMode,
574574
rtl: options.rtl,
575+
preventTextSelection: options.preventTextSelection,
575576
updateMovedElementStyleManually: true,
576577
getMovedOrClonedElement: function getMovedOrClonedElement(directTriggerElement, store) {
577578
// find closest branch from parents
@@ -1508,7 +1509,9 @@ function makeTreeDraggable(treeEl) {
15081509
edgeScrollTriggerMargin: options.edgeScrollTriggerMargin,
15091510
edgeScrollSpeed: options.edgeScrollSpeed,
15101511
edgeScrollTriggerMode: options.edgeScrollTriggerMode,
1511-
rtl: options.rtl
1512+
//
1513+
rtl: options.rtl,
1514+
preventTextSelection: options.preventTextSelection
15121515
});
15131516
}
15141517
}
@@ -1581,6 +1584,10 @@ var script = {
15811584
edgeScrollTriggerMode: {
15821585
type: String,
15831586
default: 'top_left_corner'
1587+
},
1588+
preventTextSelection: {
1589+
type: Boolean,
1590+
default: true
15841591
}
15851592
},
15861593
// components: {},
@@ -1761,6 +1768,7 @@ var script = {
17611768
edgeScrollSpeed: this.edgeScrollSpeed,
17621769
edgeScrollTriggerMode: this.edgeScrollTriggerMode,
17631770
rtl: this.rtl,
1771+
preventTextSelection: this.preventTextSelection,
17641772
treeClass: 'he-tree',
17651773
rootClass: 'tree-root',
17661774
childrenClass: 'tree-children',
@@ -1995,7 +2003,7 @@ var script = {
19952003
var _makeTreeDraggable_obj = this._makeTreeDraggable_obj = makeTreeDraggable(this.$el, options); // watch props and update options
19962004

19972005

1998-
['indent', 'triggerClass', 'triggerBySelf', 'unfoldWhenDragover', 'unfoldWhenDragoverDelay', 'draggingNodePositionMode', 'cloneWhenDrag', 'edgeScroll', 'edgeScrollTriggerMargin', 'edgeScrollSpeed', 'edgeScrollTriggerMode', 'rtl'].forEach(function (name) {
2006+
['indent', 'triggerClass', 'triggerBySelf', 'unfoldWhenDragover', 'unfoldWhenDragoverDelay', 'draggingNodePositionMode', 'cloneWhenDrag', 'edgeScroll', 'edgeScrollTriggerMargin', 'edgeScrollSpeed', 'edgeScrollTriggerMode', 'rtl', 'preventTextSelection'].forEach(function (name) {
19992007
_this.$watch(name, function (value) {
20002008
_makeTreeDraggable_obj.options[name] = value;
20012009

dist/he-tree-vue.js

Lines changed: 66 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*!
2-
* he-tree-vue v2.0.1
2+
* he-tree-vue v2.0.2-beta
33
* (c) phphe <phphe@outlook.com> (https://github.com/phphe)
44
* Homepage: https://he-tree-vue.phphe.com
55
* Released under the MIT License.
@@ -2870,7 +2870,7 @@
28702870
}
28712871

28722872
/*!
2873-
* draggable-helper v5.0.1
2873+
* draggable-helper v5.0.2
28742874
* (c) phphe <phphe@outlook.com> (https://github.com/phphe)
28752875
* Homepage: undefined
28762876
* Released under the MIT License.
@@ -2985,6 +2985,13 @@
29852985
// 定义mousedown和touchstart事件监听器
29862986

29872987
var onMousedownOrTouchStart = function onMousedownOrTouchStart(e, mouse) {
2988+
// execute native event hooks
2989+
if (!DragEventService.isTouch(e)) {
2990+
opt.onmousedown && opt.onmousedown(e);
2991+
} else {
2992+
opt.ontouchstart && opt.ontouchstart(e);
2993+
}
2994+
29882995
var target = e.target; // check if triggered by ignore tags
29892996
// 检查是否由忽略的标签名触发
29902997

@@ -3098,7 +3105,9 @@
30983105
if (!DragEventService.isTouch(e)) {
30993106
// Do not prevent when touch. Or the elements within the node can not trigger click event.
31003107
// 不要在触摸时阻止事件. 否则将导致节点内的元素不触发点击事件.
3101-
e.preventDefault();
3108+
if (opt.preventTextSelection) {
3109+
e.preventDefault();
3110+
}
31023111
} // listen mousemove and touchmove
31033112
// 监听mousemove和touchmove
31043113

@@ -3119,6 +3128,14 @@
31193128
// 定义mousemove和touchmove事件监听器
31203129

31213130
var onMousemoveOrTouchMove = function onMousemoveOrTouchMove(e, mouse) {
3131+
// execute native event hooks
3132+
if (!DragEventService.isTouch(e)) {
3133+
opt.onmousemove && opt.onmousemove(e);
3134+
} else {
3135+
opt.ontouchmove && opt.ontouchmove(e);
3136+
} //
3137+
3138+
31223139
var _store = store,
31233140
movedOrClonedElement = _store.movedOrClonedElement; // calc move and attach related info to store
31243141
// 计算move并附加相关信息到store
@@ -3128,12 +3145,22 @@
31283145
y: mouse.clientY - store.initialMouse.clientY
31293146
};
31303147
store.moveEvent = e;
3131-
store.mouse = mouse; // prevent text be selected. prevent page scroll when touch.
3132-
// 阻止文字被选中. 当触摸时阻止屏幕被拖动.
3148+
store.mouse = mouse;
31333149

3134-
e.preventDefault(); // first move
3150+
if (DragEventService.isTouch(e)) {
3151+
// prevent page scroll when touch.
3152+
// 当触摸时阻止屏幕被拖动.
3153+
e.preventDefault();
3154+
} else {
3155+
// prevent text be selected
3156+
// 阻止文字被选中
3157+
if (opt.preventTextSelection) {
3158+
e.preventDefault();
3159+
}
3160+
} // first move
31353161
// 第一次移动
31363162

3163+
31373164
if (store.movedCount === 0) {
31383165
// check if min displacement exceeded.
31393166
// 检查是否达到最小位移
@@ -3154,6 +3181,7 @@
31543181

31553182
store.movedOrClonedElement = movedOrClonedElement;
31563183
store.movedElement = movedElement;
3184+
store.initialPositionRelativeToViewport = initialPosition;
31573185
store.initialPosition = initialPosition; // define the function to update moved element style
31583186
// 定义更新移动元素样式的方法
31593187

@@ -3181,6 +3209,19 @@
31813209

31823210
backupAttr(movedElement, 'class');
31833211
addClass(movedElement, opt.draggingClassName);
3212+
/*
3213+
check if the changed position is expected and correct it. about stacking context.
3214+
当某父元素使用了transform属性时, fixed不再以窗口左上角为坐标. 以下功能是在第一次移动后, 检查元素实际位置和期望位置是否相同, 不同则说明坐标系不是期望的. 则把初始位置减去偏移, 无论任何父元素导致了层叠上下文问题, 都能正确显示.
3215+
*/
3216+
3217+
var nowPosition = getViewportPosition(movedElement);
3218+
3219+
if (nowPosition.x !== initialPosition.x) {
3220+
initialPosition.x = initialPosition.x - (nowPosition.x - initialPosition.x);
3221+
initialPosition.y = initialPosition.y - (nowPosition.y - initialPosition.y);
3222+
movedElement.style.left = initialPosition.x + 'px';
3223+
movedElement.style.top = initialPosition.y + 'px';
3224+
}
31843225
};
31853226

31863227
store.updateMovedElementStyle = updateMovedElementStyle; // call hook beforeFirstMove, beforeMove
@@ -3233,8 +3274,15 @@
32333274

32343275

32353276
var onMouseupOrTouchEnd = function onMouseupOrTouchEnd(e) {
3236-
// cancel listening mousemove, touchmove, mouseup, touchend
3277+
// execute native event hooks
3278+
if (!DragEventService.isTouch(e)) {
3279+
opt.onmousedown && opt.onmousedown(e);
3280+
} else {
3281+
opt.ontouchend && opt.ontouchend(e);
3282+
} // cancel listening mousemove, touchmove, mouseup, touchend
32373283
// 取消监听事件mousemove, touchmove, mouseup, touchend
3284+
3285+
32383286
DragEventService.off(document, 'move', onMousemoveOrTouchMove, {
32393287
touchArgs: [{
32403288
passive: false
@@ -3303,6 +3351,7 @@
33033351
draggingClassName: 'dragging',
33043352
clone: false,
33053353
updateMovedElementStyleManually: false,
3354+
preventTextSelection: true,
33063355
edgeScrollTriggerMargin: 50,
33073356
edgeScrollSpeed: 0.35,
33083357
edgeScrollTriggerMode: 'top_left_corner'
@@ -3682,6 +3731,7 @@
36823731
edgeScrollSpeed: options.edgeScrollSpeed,
36833732
edgeScrollTriggerMode: options.edgeScrollTriggerMode,
36843733
rtl: options.rtl,
3734+
preventTextSelection: options.preventTextSelection,
36853735
updateMovedElementStyleManually: true,
36863736
getMovedOrClonedElement: function getMovedOrClonedElement(directTriggerElement, store) {
36873737
// find closest branch from parents
@@ -4618,7 +4668,9 @@
46184668
edgeScrollTriggerMargin: options.edgeScrollTriggerMargin,
46194669
edgeScrollSpeed: options.edgeScrollSpeed,
46204670
edgeScrollTriggerMode: options.edgeScrollTriggerMode,
4621-
rtl: options.rtl
4671+
//
4672+
rtl: options.rtl,
4673+
preventTextSelection: options.preventTextSelection
46224674
});
46234675
}
46244676
}
@@ -4691,6 +4743,10 @@
46914743
edgeScrollTriggerMode: {
46924744
type: String,
46934745
default: 'top_left_corner'
4746+
},
4747+
preventTextSelection: {
4748+
type: Boolean,
4749+
default: true
46944750
}
46954751
},
46964752
// components: {},
@@ -4871,6 +4927,7 @@
48714927
edgeScrollSpeed: this.edgeScrollSpeed,
48724928
edgeScrollTriggerMode: this.edgeScrollTriggerMode,
48734929
rtl: this.rtl,
4930+
preventTextSelection: this.preventTextSelection,
48744931
treeClass: 'he-tree',
48754932
rootClass: 'tree-root',
48764933
childrenClass: 'tree-children',
@@ -5105,7 +5162,7 @@
51055162
var _makeTreeDraggable_obj = this._makeTreeDraggable_obj = makeTreeDraggable(this.$el, options); // watch props and update options
51065163

51075164

5108-
['indent', 'triggerClass', 'triggerBySelf', 'unfoldWhenDragover', 'unfoldWhenDragoverDelay', 'draggingNodePositionMode', 'cloneWhenDrag', 'edgeScroll', 'edgeScrollTriggerMargin', 'edgeScrollSpeed', 'edgeScrollTriggerMode', 'rtl'].forEach(function (name) {
5165+
['indent', 'triggerClass', 'triggerBySelf', 'unfoldWhenDragover', 'unfoldWhenDragoverDelay', 'draggingNodePositionMode', 'cloneWhenDrag', 'edgeScroll', 'edgeScrollTriggerMargin', 'edgeScrollSpeed', 'edgeScrollTriggerMode', 'rtl', 'preventTextSelection'].forEach(function (name) {
51095166
_this.$watch(name, function (value) {
51105167
_makeTreeDraggable_obj.options[name] = value;
51115168

0 commit comments

Comments
 (0)