diff --git a/elements/G.js b/elements/G.js index 8def1065..c2de3991 100644 --- a/elements/G.js +++ b/elements/G.js @@ -25,7 +25,9 @@ class G extends Component{ return this.root = ele} + ref={ele => { + this.root = ele; + }} > {this.props.children} ; diff --git a/lib/extract/extractProps.js b/lib/extract/extractProps.js index 4a680fca..f7b13adf 100644 --- a/lib/extract/extractProps.js +++ b/lib/extract/extractProps.js @@ -48,9 +48,7 @@ export default function(props, options = {stroke: true, transform: true, fill: t if (options.transform) { extractedProps.trans = extractTransform(props); } else if (props.transform) { - // todo: add support for transform prop like this: - // {scale: 1.5, translate: '10 10'} - //extractedProps.transform = props.transform; + extractedProps.trans = extractTransform(props.transform); } if (options.responder) { diff --git a/lib/extract/extractTransform.js b/lib/extract/extractTransform.js index ecba2d06..6903621d 100644 --- a/lib/extract/extractTransform.js +++ b/lib/extract/extractTransform.js @@ -60,7 +60,11 @@ function props2transform(props) { let [originX, originY] = universal2axis(props.origin, props.originX, props.originY); let [scaleX, scaleY] = universal2axis(props.scale, props.scaleX, props.scaleY, 1); let [skewX, skewY] = universal2axis(props.skew, props.skewX, props.skewY); - let [translateX, translateY] = universal2axis(props.translate, props.translateX, props.translateY); + let [translateX, translateY] = universal2axis( + props.translate, + _.isNil(props.translateX) ? props.x : props.translateX, + _.isNil(props.translateY) ? props.y : props.translateY + ); return { rotation: +props.rotation || +props.rotate || 0,