11import { Component , Vue , Prop , Emit } from 'vue-property-decorator'
22import { VNode } from 'vue'
3+ import * as dh from "draggable-helper" ;
34
45interface Node {
56 [ propName : string ] : any
@@ -43,6 +44,8 @@ export class Tree extends Vue{
4344 // Declared as computed property setter
4445 @Prop ( { default : 20 } )
4546 indent : number
47+ @Prop ( )
48+ rtl : boolean // direction=rtl
4649 @Prop ( { default : { } } )
4750 rootNode : Node
4851 // data
@@ -105,13 +108,7 @@ export class Check extends Vue{
105108}
106109type IsDraggableOrIsDroppable = boolean | undefined
107110// darg info store
108- interface Store {
109- el ?: HTMLElement
110- originalEl ?: HTMLElement
111- mouse ?: { x :number , y :number }
112- movedCount ?: number
113- startEvent ?: MouseEvent
114- endEvent ?: MouseEvent
111+ interface Store extends dh . Store {
115112 startTreeEl ?: HTMLElement
116113 startTree ?: Vue
117114 startPath ?: Path
@@ -138,6 +135,8 @@ interface prop_ondragstart_ondragend{
138135export class Draggable extends Vue {
139136 @Prop ( { default : 'tree-node' } )
140137 triggerClass : string
138+ @Prop ( )
139+ triggerBySelf : boolean
141140 @Prop ( { default : true } )
142141 draggable : boolean | prop_draggable_droppable
143142 @Prop ( { default : true } )
@@ -156,6 +155,14 @@ export class Draggable extends Vue{
156155 unfoldWhenDragoverDelay : number
157156 @Prop ( { default : 'top_left_corner' } )
158157 draggingNodePositionMode : 'top_left_corner' | 'mouse'
158+ @Prop ( )
159+ edgeScroll : boolean
160+ @Prop ( { default : 50 } )
161+ edgeScrollTriggerMargin : number
162+ @Prop ( { default : 0.35 } )
163+ edgeScrollSpeed : number
164+ @Prop ( { default : 'top_left_corner' } )
165+ edgeScrollTriggerMode : 'top_left_corner' | 'mouse'
159166 // data
160167 treesStore : { store : Store } // just for get the darg info store
161168 // methods
0 commit comments