add more validation for jsx nodes

This commit is contained in:
Henry Zhu 2015-11-18 22:37:04 -05:00
parent 4c311ec2ab
commit efa9a1abf2

View File

@ -7,7 +7,7 @@ defineType("JSXAttribute", {
aliases: ["JSX", "Immutable"],
fields: {
name: {
validate: assertNodeType("JSXIdentifier", "JSXMemberExpression")
validate: assertNodeType("JSXIdentifier", "JSXNamespacedName")
},
value: {
optional: true,
@ -39,7 +39,10 @@ defineType("JSXElement", {
validate: assertNodeType("JSXClosingElement")
},
children: {
// todo
validate: chain(
assertValueType("array"),
assertEach(assertNodeType("Literal", "JSXExpressionContainer", "JSXElement"))
)
}
}
});
@ -73,7 +76,7 @@ defineType("JSXMemberExpression", {
aliases: ["JSX", "Expression"],
fields: {
object: {
validate: assertNodeType("JSXIdentifier")
validate: assertNodeType("JSXMemberExpression", "JSXIdentifier")
},
property: {
validate: assertNodeType("JSXIdentifier")