@builder.io/eslint-plugin-mitosis
Version:
A Mitosis plugin containing rules that help you write valid and idiomatic Mitosis code
35 lines (34 loc) • 1.28 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var types = require("@babel/types");
var isMitosisPath_1 = require("../helpers/isMitosisPath");
var rule = {
meta: {
type: 'problem',
docs: {
description: 'no map function in jsx return body',
recommended: true,
},
},
create: function (context) {
if (!(0, isMitosisPath_1.default)(context.getFilename()))
return {};
return {
JSXExpressionContainer: function (node) {
if (types.isJSXExpressionContainer(node)) {
if (types.isCallExpression(node.expression)) {
if (types.isMemberExpression(node.expression.callee) &&
types.isIdentifier(node.expression.callee.property) &&
node.expression.callee.property.name === 'map') {
context.report({
node: node,
message: 'No map function in jsx return body. Please use <For /> component instead.',
});
}
}
}
},
};
},
};
exports.default = rule;