@@ -7,7 +7,7 @@ import {createCSSTransform, createSVGTransform} from './utils/domFns';
77import { canDragX , canDragY , createDraggableData , getBoundPosition } from './utils/positionFns' ;
88import { dontSetMe } from './utils/shims' ;
99import DraggableCore from './DraggableCore' ;
10- import type { ControlPosition , DefaultControlPosition , DraggableBounds , DraggableCoreProps } from './DraggableCore' ;
10+ import type { ControlPosition , DraggableBounds , DraggableCoreProps } from './DraggableCore' ;
1111import log from './utils/log' ;
1212import type { DraggableEventHandler } from './utils/types' ;
1313import type { Element as ReactElement } from 'react' ;
@@ -27,7 +27,7 @@ export type DraggableProps = {
2727 defaultClassName : string ,
2828 defaultClassNameDragging : string ,
2929 defaultClassNameDragged : string ,
30- defaultPosition : DefaultControlPosition ,
30+ defaultPosition : ControlPosition ,
3131 position : ControlPosition ,
3232 scale : number
3333} ;
@@ -118,8 +118,8 @@ export default class Draggable extends React.Component<DraggableProps, Draggable
118118 * ```
119119 */
120120 defaultPosition : PropTypes . shape ( {
121- x : PropTypes . oneOfType ( [ PropTypes . number , PropTypes . string ] ) ,
122- y : PropTypes . oneOfType ( [ PropTypes . number , PropTypes . string ] )
121+ x : PropTypes . number ,
122+ y : PropTypes . number
123123 } ) ,
124124
125125 /**
@@ -178,8 +178,8 @@ export default class Draggable extends React.Component<DraggableProps, Draggable
178178 dragged : false ,
179179
180180 // Current transform x and y.
181- x : props . position ? props . position . x : 0 ,
182- y : props . position ? props . position . y : 0 ,
181+ x : props . position ? props . position . x : props . defaultPosition . x ,
182+ y : props . position ? props . position . y : props . defaultPosition . y ,
183183
184184 // Used for compensating for out-of-bounds drags
185185 slackX : 0 , slackY : 0 ,
@@ -311,7 +311,7 @@ export default class Draggable extends React.Component<DraggableProps, Draggable
311311 const controlled = Boolean ( this . props . position ) ;
312312 const draggable = ! controlled || this . state . dragging ;
313313
314- const position = this . props . position || { x : 0 , y : 0 } ;
314+ const position = this . props . position || this . props . defaultPosition ;
315315 const transformOpts = {
316316 // Set left if horizontal drag is enabled
317317 x : canDragX ( this ) && draggable ?
@@ -326,13 +326,13 @@ export default class Draggable extends React.Component<DraggableProps, Draggable
326326
327327 // If this element was SVG, we use the `transform` attribute.
328328 if ( this . state . isElementSVG ) {
329- svgTransform = createSVGTransform ( transformOpts , this . props . defaultPosition ) ;
329+ svgTransform = createSVGTransform ( transformOpts ) ;
330330 } else {
331331 // Add a CSS transform to move the element around. This allows us to move the element around
332332 // without worrying about whether or not it is relatively or absolutely positioned.
333333 // If the item you are dragging already has a transform set, wrap it in a <span> so <Draggable>
334334 // has a clean slate.
335- style = createCSSTransform ( transformOpts , this . props . defaultPosition ) ;
335+ style = createCSSTransform ( transformOpts ) ;
336336 }
337337
338338 const {
0 commit comments