12345678910111213141516171819202122232425262728293031323334 |
- 'use strict';
- const pragmaUtil = require('./pragma');
- const isDestructuredFromPragmaImport = require('./isDestructuredFromPragmaImport');
- /**
- * Checks if the node is a createElement call
- * @param {Context} context - The AST node being checked.
- * @param {ASTNode} node - The AST node being checked.
- * @returns {boolean} - True if node is a createElement call object literal, False if not.
- */
- module.exports = function isCreateElement(context, node) {
- if (!node.callee) {
- return false;
- }
- if (
- node.callee.type === 'MemberExpression'
- && node.callee.property.name === 'createElement'
- && node.callee.object
- && node.callee.object.name === pragmaUtil.getFromContext(context)
- ) {
- return true;
- }
- if (
- node.callee.name === 'createElement'
- && isDestructuredFromPragmaImport(context, node, 'createElement')
- ) {
- return true;
- }
- return false;
- };
|