Skip to content

Commit 3ad79cc

Browse files
committed
Use cloneWithProps again - we actually want its className and style merging capabilities.
1 parent 4d88735 commit 3ad79cc

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

lib/Resizable.jsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,16 @@
22
var React = require('react');
33
var Draggable = require('react-draggable');
44
var PureRenderMixin = require('react/lib/ReactComponentWithPureRenderMixin');
5+
var assign = require('object-assign');
6+
var cloneWithProps = require('react/lib/cloneWithProps');
57

68
var Resizable = module.exports = React.createClass({
79
displayName: 'Resizable',
810
mixins: [PureRenderMixin],
911

1012
propTypes: {
11-
children: React.PropTypes.element,
13+
// Require that one and only one child be present.
14+
children: React.PropTypes.element.isRequired,
1215
// Functions
1316
onResizeStop: React.PropTypes.func,
1417
onResizeStart: React.PropTypes.func,
@@ -57,8 +60,8 @@ var Resizable = module.exports = React.createClass({
5760
// We are then defining its children as:
5861
// Its original children (resizable's child's children), and
5962
// A draggable handle.
60-
return React.cloneElement(p.children, p,
61-
[
63+
return cloneWithProps(p.children, assign({}, p, {
64+
children: [
6265
p.children.props.children,
6366
<Draggable
6467
{...p.draggableOpts}
@@ -69,12 +72,11 @@ var Resizable = module.exports = React.createClass({
6972
onDrag={this.resizeHandler('onResize')}
7073
minConstraints={this.minConstraints()}
7174
maxConstraints={this.maxConstraints()}
72-
key="draggable"
7375
>
7476
<span className="react-resizable-handle" />
7577
</Draggable>
7678
]
77-
);
79+
}));
7880
}
7981
});
8082

package.json

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,9 @@
4141
"webpack": "^1.7.3",
4242
"webpack-dev-server": "^1.8.0"
4343
},
44-
"peerDependencies": {
45-
"react": "^0.13"
46-
},
4744
"dependencies": {
48-
"react-draggable": "strml/react-draggable"
45+
"object-assign": "^2.0.0",
46+
"react-draggable": "strml/react-draggable#v0.3.1"
4947
},
5048
"publishConfig": {
5149
"registry": "https://registry.npmjs.org"

0 commit comments

Comments
 (0)