147 lines
3.6 KiB
JavaScript
147 lines
3.6 KiB
JavaScript
|
"use strict";
|
||
|
|
||
|
var _index = require("./index");
|
||
|
|
||
|
var _index2 = _interopRequireDefault(_index);
|
||
|
|
||
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||
|
|
||
|
(0, _index2.default)("JSXAttribute", {
|
||
|
visitor: ["name", "value"],
|
||
|
aliases: ["JSX", "Immutable"],
|
||
|
fields: {
|
||
|
name: {
|
||
|
validate: (0, _index.assertNodeType)("JSXIdentifier", "JSXNamespacedName")
|
||
|
},
|
||
|
value: {
|
||
|
optional: true,
|
||
|
validate: (0, _index.assertNodeType)("JSXElement", "StringLiteral", "JSXExpressionContainer")
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXClosingElement", {
|
||
|
visitor: ["name"],
|
||
|
aliases: ["JSX", "Immutable"],
|
||
|
fields: {
|
||
|
name: {
|
||
|
validate: (0, _index.assertNodeType)("JSXIdentifier", "JSXMemberExpression")
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXElement", {
|
||
|
builder: ["openingElement", "closingElement", "children", "selfClosing"],
|
||
|
visitor: ["openingElement", "children", "closingElement"],
|
||
|
aliases: ["JSX", "Immutable", "Expression"],
|
||
|
fields: {
|
||
|
openingElement: {
|
||
|
validate: (0, _index.assertNodeType)("JSXOpeningElement")
|
||
|
},
|
||
|
closingElement: {
|
||
|
optional: true,
|
||
|
validate: (0, _index.assertNodeType)("JSXClosingElement")
|
||
|
},
|
||
|
children: {
|
||
|
validate: (0, _index.chain)((0, _index.assertValueType)("array"), (0, _index.assertEach)((0, _index.assertNodeType)("JSXText", "JSXExpressionContainer", "JSXSpreadChild", "JSXElement")))
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXEmptyExpression", {
|
||
|
aliases: ["JSX", "Expression"]
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXExpressionContainer", {
|
||
|
visitor: ["expression"],
|
||
|
aliases: ["JSX", "Immutable"],
|
||
|
fields: {
|
||
|
expression: {
|
||
|
validate: (0, _index.assertNodeType)("Expression")
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXSpreadChild", {
|
||
|
visitor: ["expression"],
|
||
|
aliases: ["JSX", "Immutable"],
|
||
|
fields: {
|
||
|
expression: {
|
||
|
validate: (0, _index.assertNodeType)("Expression")
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXIdentifier", {
|
||
|
builder: ["name"],
|
||
|
aliases: ["JSX", "Expression"],
|
||
|
fields: {
|
||
|
name: {
|
||
|
validate: (0, _index.assertValueType)("string")
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXMemberExpression", {
|
||
|
visitor: ["object", "property"],
|
||
|
aliases: ["JSX", "Expression"],
|
||
|
fields: {
|
||
|
object: {
|
||
|
validate: (0, _index.assertNodeType)("JSXMemberExpression", "JSXIdentifier")
|
||
|
},
|
||
|
property: {
|
||
|
validate: (0, _index.assertNodeType)("JSXIdentifier")
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXNamespacedName", {
|
||
|
visitor: ["namespace", "name"],
|
||
|
aliases: ["JSX"],
|
||
|
fields: {
|
||
|
namespace: {
|
||
|
validate: (0, _index.assertNodeType)("JSXIdentifier")
|
||
|
},
|
||
|
name: {
|
||
|
validate: (0, _index.assertNodeType)("JSXIdentifier")
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXOpeningElement", {
|
||
|
builder: ["name", "attributes", "selfClosing"],
|
||
|
visitor: ["name", "attributes"],
|
||
|
aliases: ["JSX", "Immutable"],
|
||
|
fields: {
|
||
|
name: {
|
||
|
validate: (0, _index.assertNodeType)("JSXIdentifier", "JSXMemberExpression")
|
||
|
},
|
||
|
selfClosing: {
|
||
|
default: false,
|
||
|
validate: (0, _index.assertValueType)("boolean")
|
||
|
},
|
||
|
attributes: {
|
||
|
validate: (0, _index.chain)((0, _index.assertValueType)("array"), (0, _index.assertEach)((0, _index.assertNodeType)("JSXAttribute", "JSXSpreadAttribute")))
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXSpreadAttribute", {
|
||
|
visitor: ["argument"],
|
||
|
aliases: ["JSX"],
|
||
|
fields: {
|
||
|
argument: {
|
||
|
validate: (0, _index.assertNodeType)("Expression")
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
(0, _index2.default)("JSXText", {
|
||
|
aliases: ["JSX", "Immutable"],
|
||
|
builder: ["value"],
|
||
|
fields: {
|
||
|
value: {
|
||
|
validate: (0, _index.assertValueType)("string")
|
||
|
}
|
||
|
}
|
||
|
});
|