Skip to content

Commit 3a3bf21

Browse files
add the changes proposed by @bkowzx in probil#114
1 parent 6361e4a commit 3a3bf21

File tree

1 file changed

+140
-28
lines changed

1 file changed

+140
-28
lines changed

src/components/Moveable.vue

+140-28
Original file line numberDiff line numberDiff line change
@@ -34,53 +34,145 @@ export default {
3434
inheritAttrs: false,
3535
props: {
3636
target: [HTMLElement, SVGElement],
37-
roundable: Boolean,
38-
roundRelative: Boolean,
39-
originDraggable: Boolean,
40-
originRelative: Boolean,
41-
clippable: Boolean,
37+
roundable: {
38+
type: Boolean,
39+
required: false,
40+
default: undefined
41+
},
42+
roundRelative: {
43+
type: Boolean,
44+
required: false,
45+
default: undefined
46+
},
47+
originDraggable: {
48+
type: Boolean,
49+
required: false,
50+
default: undefined
51+
},
52+
originRelative: {
53+
type: Boolean,
54+
required: false,
55+
default: undefined
56+
},
57+
clippable: {
58+
type: Boolean,
59+
required: false,
60+
default: undefined
61+
},
4262
customClipPath: String,
4363
defaultClipPath: String,
44-
clipRelative: Boolean,
45-
dragWithClip: Boolean,
46-
clipArea: Boolean,
64+
clipRelative: {
65+
type: Boolean,
66+
required: false,
67+
default: undefined
68+
},
69+
dragWithClip: {
70+
type: Boolean,
71+
required: false,
72+
default: undefined
73+
},
74+
clipArea: {
75+
type: Boolean,
76+
required: false,
77+
default: undefined
78+
},
4779
defaultGroupOrigin: String,
4880
cspNonce: String,
49-
checkInput: Boolean,
50-
groupable: Boolean,
81+
checkInput: {
82+
type: Boolean,
83+
required: false,
84+
default: undefined
85+
},
86+
groupable: {
87+
type: Boolean,
88+
required: false,
89+
default: undefined
90+
},
5191
snappable: [Boolean, Array],
52-
snapCenter: Boolean,
53-
snapHorizontal: Boolean,
54-
snapVertical: Boolean,
55-
snapElement: Boolean,
56-
snapGap: Boolean,
92+
snapCenter: {
93+
type: Boolean,
94+
required: false,
95+
default: undefined
96+
},
97+
snapHorizontal: {
98+
type: Boolean,
99+
required: false,
100+
default: undefined
101+
},
102+
snapVertical: {
103+
type: Boolean,
104+
required: false,
105+
default: undefined
106+
},
107+
snapElement: {
108+
type: Boolean,
109+
required: false,
110+
default: undefined
111+
},
112+
snapGap: {
113+
type: Boolean,
114+
required: false,
115+
default: undefined
116+
},
57117
snapThreshold: Number,
58118
snapDigit: Number,
59-
isDisplaySnapDigit: Boolean,
119+
isDisplaySnapDigit: {
120+
type: Boolean,
121+
required: false,
122+
default: undefined
123+
},
60124
horizontalGuidelines: Array,
61125
verticalGuidelines: Array,
62126
elementGuidelines: Array,
63127
bounds: Object,
64128
innerBounds: Object,
65129
snapDistFormat: Function,
66130
defaultGroupRotate: Number,
67-
scrollable: Boolean,
131+
scrollable: {
132+
type: Boolean,
133+
required: false,
134+
default: undefined
135+
},
68136
scrollContainer: [HTMLElement, SVGElement],
69137
scrollThreshold: Number,
70138
getScrollPosition: Function,
71-
warpable: Boolean,
139+
warpable: {
140+
type: Boolean,
141+
required: false,
142+
default: undefined
143+
},
72144
renderDirections: Array,
73-
rotatable: Boolean,
145+
rotatable: {
146+
type: Boolean,
147+
required: false,
148+
default: undefined
149+
},
74150
rotationPosition: String,
75151
throttleRotate: Number,
76152
pinchable: [Boolean, Array],
77-
scalable: Boolean,
153+
scalable: {
154+
type: Boolean,
155+
required: false,
156+
default: undefined
157+
},
78158
throttleScale: Number,
79-
keepRatio: Boolean,
80-
resizable: Boolean,
159+
keepRatio: {
160+
type: Boolean,
161+
required: false,
162+
default: undefined
163+
},
164+
resizable: {
165+
type: Boolean,
166+
required: false,
167+
default: undefined
168+
},
81169
throttleResize: Number,
82170
baseDirection: Array,
83-
draggable: Boolean,
171+
draggable: {
172+
type: Boolean,
173+
required: false,
174+
default: undefined
175+
},
84176
throttleDrag: Number,
85177
throttleDragRotate: Number,
86178
startDragRotate: Number,
@@ -90,16 +182,36 @@ export default {
90182
default: () => document.body,
91183
},
92184
rootContainer: HTMLElement,
93-
dragArea: Boolean,
94-
origin: Boolean,
185+
dragArea: {
186+
type: Boolean,
187+
required: false,
188+
default: undefined
189+
},
190+
origin: {
191+
type: Boolean,
192+
required: false,
193+
default: undefined
194+
},
95195
zoom: Number,
96196
transformOrigin: [Array, String],
97-
edge: Boolean,
197+
edge: {
198+
type: Boolean,
199+
required: false,
200+
default: undefined
201+
},
98202
ables: Array,
99203
className: String,
100204
pinchThreshold: Number,
101-
pinchOutside: Boolean,
102-
triggerAblesSimultaneously: Boolean,
205+
pinchOutside: {
206+
type: Boolean,
207+
required: false,
208+
default: undefined
209+
},
210+
triggerAblesSimultaneously: {
211+
type: Boolean,
212+
required: false,
213+
default: undefined
214+
},
103215
padding: Object, // { left: number, top: number, right: number, bottom: number }
104216
},
105217
methods: methodMap,

0 commit comments

Comments
 (0)