@samitouri / QOS-React-2 / commits / aa044c6b61

Add support for JSX member expressions <React.DOM.div />

Andreas Svensson committed May 8, 2014 at 00:10 UTC aa044c6b61a798f20a37fe49c6a4722faf68211e
1 file changed +14 -9
vendor/fbtransform/transforms/react.js
+14 -9
@@ -57,18 +57,23 @@ function visitReactTag(traverse, object, path, state) {
57
58 utils.catchup(openingElement.range[0], state, trimLeft);
59
60 - if (nameObject.namespace) {
61 - throw new Error(
62 - 'Namespace tags are not supported. ReactJSX is not XML.');
60 + var isFallbackTag = false;
61 +
62 + if (nameObject.type === Syntax.XJSIdentifier) {
63 + if (nameObject.namespace) {
64 + throw new Error(
65 + 'Namespace tags are not supported. ReactJSX is not XML.');
66 + }
67 +
68 + isFallbackTag = FALLBACK_TAGS.hasOwnProperty(nameObject.name);
69 }
70
65 - var isFallbackTag = FALLBACK_TAGS.hasOwnProperty(nameObject.name);
66 - utils.append(
67 - (isFallbackTag ? jsxObjIdent + '.' : '') + (nameObject.name) + '(',
68 - state
69 - );
71 + utils.append(isFallbackTag ? jsxObjIdent + '.' : '', state);
72 +
73 + utils.move(nameObject.range[0], state);
74 + utils.catchup(nameObject.range[1], state);
75
71 - utils.move(nameObject.range[1], state);
76 + utils.append('(', state);
77
78 var hasAttributes = attributesObject.length;
79