Launch Week Day 2: Introducing Reports: An Extensible Reporting Framework for Socket Data.Learn More
Socket
Book a DemoSign in
Socket

babel-plugin-transform-react-create-element

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

babel-plugin-transform-react-create-element - npm Package Compare versions

Comparing version
0.2.0
to
0.2.1
+1
-1
package.json
{
"name": "babel-plugin-transform-react-create-element",
"version": "0.2.0",
"version": "0.2.1",
"description": "Shorten JSX React.createElement calls using a local variable.",

@@ -5,0 +5,0 @@ "main": "src/index.js",

@@ -39,2 +39,4 @@ # babel-plugin-transform-react-create-element

Install via `npm install -D babel-plugin-transform-react-create-element` or `yarn add -D babel-plugin-transform-react-create-element`.
In your `.babelrc`:

@@ -41,0 +43,0 @@

@@ -1,1 +0,1 @@

{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAyFlC,QAAA,MAAM,SAAS;;;;;;;CAmBb,CAAC;AAEH,eAAe,SAAS,CAAC"}
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AA0FlC,QAAA,MAAM,SAAS;;;;;;;CAmBb,CAAC;AAEH,eAAe,SAAS,CAAC"}

@@ -5,8 +5,3 @@ "use strict";

const template_1 = tslib_1.__importDefault(require("@babel/template"));
const PRAGMA_ELEM_NAME = "createElement";
const LOCAL_VARIABLE_TEMPLATE = template_1.default(`
const %%pragma%% = /*#__PURE__*/ React.createElement;
`, {
preserveComments: true,
});
const LOCAL_VARIABLE_TEMPLATE = template_1.default("const %%localIdentifier%% = /*#__PURE__*/ React.createElement;", { preserveComments: true });
const getReactImport = (path) => {

@@ -18,3 +13,4 @@ const binding = path.scope.getBinding(path.node.name);

const bindingPath = binding.path;
if (bindingPath.isImportDefaultSpecifier()) {
if (bindingPath.isImportDefaultSpecifier() ||
bindingPath.isImportNamespaceSpecifier()) {
const parentPath = bindingPath.parentPath;

@@ -39,3 +35,3 @@ if (parentPath.isImportDeclaration() &&

};
const getCreateElementAndImport = (path) => {
const getCreateElementCallAndReactImport = (path) => {
const callee = path.get("callee");

@@ -50,2 +46,5 @@ if (!callee.isMemberExpression()) {

const object = callee.get("object");
if (!object.isIdentifier()) {
return null;
}
const reactImport = getReactImport(object);

@@ -58,5 +57,5 @@ if (!reactImport) {

const insertLocalVariable = (importSite) => {
const uniqueIdent = importSite.scope.generateUidIdentifier(PRAGMA_ELEM_NAME);
const uniqueIdent = importSite.scope.generateUidIdentifier("createElement");
const variableDeclaration = LOCAL_VARIABLE_TEMPLATE({
pragma: uniqueIdent,
localIdentifier: uniqueIdent,
});

@@ -71,3 +70,3 @@ const [node] = importSite.parentPath.insertAfter(variableDeclaration);

CallExpression(path, state) {
const data = getCreateElementAndImport(path);
const data = getCreateElementCallAndReactImport(path);
if (!data) {

@@ -74,0 +73,0 @@ return;

@@ -1,1 +0,1 @@

{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}