babel-plugin-jsx-control-statements
Version:
Neater control statements (if/for) for jsx
21 lines (15 loc) • 516 B
JavaScript
var astUtil = require("./ast");
var errorUtil = require("./error");
var ATTRIBUTES = {
CONDITION: "condition"
};
exports.getConditionExpression = function(node, errorInfos) {
var condition = astUtil.getAttributeMap(node)[ATTRIBUTES.CONDITION];
if (!condition) {
errorUtil.throwNoAttribute(ATTRIBUTES.CONDITION, errorInfos);
}
if (!astUtil.isExpressionContainer(condition)) {
errorUtil.throwNotExpressionType(ATTRIBUTES.CONDITION, errorInfos);
}
return astUtil.getExpression(condition);
};