import React, {PropTypes} from 'react';
import Defs from './Defs';
import SerializablePath from '../lib/SerializablePath';
import createReactNativeComponentClass from 'react/lib/createReactNativeComponentClass';
import {PathAttributes} from '../lib/attributes';
import mergeContext from '../lib/mergeContext';
import Shape from './Shape';
import {pathProps, numberProp} from '../lib/props';
class Path extends Shape {
static displayName = 'Path';
static propTypes = {
d: PropTypes.string,
...pathProps
};
static contextTypes = {
...pathProps,
isInGroup: PropTypes.bool,
svgId: numberProp
};
_dimensions = null;
componentWillReceiveProps = nextProps => {
if (nextProps.d !== this.props.d) {
this._dimensions = null;
}
};
setNativeProps = (...args) => {
this.getNativeElement().setNativeProps(...args);
};
getNativeElement = () => {
return this.refs.root || this.root;
};
render() {
let props = mergeContext(this.props, this.context);
if (props.id) {
return
this.root = ele.refs.root}
{...props}
id={null}
/>
;
}
let d = new SerializablePath(props.d).toJSON();
return (
);
}
}
const RNSVGPath = createReactNativeComponentClass({
validAttributes: PathAttributes,
uiViewClassName: 'RNSVGPath'
});
export default Path;