🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@babel/plugin-transform-react-display-name

Package Overview
Dependencies
Maintainers
4
Versions
97
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@babel/plugin-transform-react-display-name - npm Package Compare versions

Comparing version
8.0.0-beta.4
to
8.0.0-rc.1
+1
-1
lib/index.js

@@ -6,3 +6,3 @@ import { declare } from '@babel/helper-plugin-utils';

var index = declare(api => {
api.assertVersion("^7.0.0-0 || ^8.0.0 || 8.0.0-beta.4");
api.assertVersion("^7.0.0-0 || ^8.0.0 || 8.0.0-rc.1");
function addDisplayName(id, call) {

@@ -9,0 +9,0 @@ const props = call.arguments[0].properties;

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

{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import { declare } from \"@babel/helper-plugin-utils\";\nimport path from \"node:path\";\nimport { types as t } from \"@babel/core\";\n\ntype ReactCreateClassCall = t.CallExpression & {\n arguments: [t.ObjectExpression];\n};\n\nexport default declare(api => {\n api.assertVersion(REQUIRED_VERSION(7));\n\n function addDisplayName(id: string, call: ReactCreateClassCall) {\n const props = call.arguments[0].properties;\n let safe = true;\n\n for (let i = 0; i < props.length; i++) {\n const prop = props[i];\n if (t.isSpreadElement(prop)) {\n continue;\n }\n const key = t.toComputedKey(prop);\n if (t.isStringLiteral(key, { value: \"displayName\" })) {\n safe = false;\n break;\n }\n }\n\n if (safe) {\n props.unshift(\n t.objectProperty(t.identifier(\"displayName\"), t.stringLiteral(id)),\n );\n }\n }\n\n const isCreateClassCallExpression =\n t.buildMatchMemberExpression(\"React.createClass\");\n const isCreateClassAddon = (callee: t.CallExpression[\"callee\"]) =>\n t.isIdentifier(callee, { name: \"createReactClass\" });\n\n function isCreateClass(node?: t.Node): node is ReactCreateClassCall {\n if (!node || !t.isCallExpression(node)) return false;\n\n // not createReactClass nor React.createClass call member object\n if (\n !isCreateClassCallExpression(node.callee) &&\n !isCreateClassAddon(node.callee)\n ) {\n return false;\n }\n\n // no call arguments\n const args = node.arguments;\n if (args.length !== 1) return false;\n\n // first node arg is not an object\n const first = args[0];\n if (!t.isObjectExpression(first)) return false;\n\n return true;\n }\n\n return {\n name: \"transform-react-display-name\",\n\n visitor: {\n ExportDefaultDeclaration({ node }, state) {\n if (isCreateClass(node.declaration)) {\n const filename = state.filename || \"unknown\";\n\n let displayName = path.basename(filename, path.extname(filename));\n\n // ./{module name}/index.js\n if (displayName === \"index\") {\n displayName = path.basename(path.dirname(filename));\n }\n\n addDisplayName(displayName, node.declaration);\n }\n },\n\n CallExpression(path) {\n const { node } = path;\n if (!isCreateClass(node)) return;\n\n let id: t.LVal | t.Expression | t.PrivateName | t.VoidPattern | null;\n\n // crawl up the ancestry looking for possible candidates for displayName inference\n path.find(function (path) {\n if (path.isAssignmentExpression()) {\n id = path.node.left;\n } else if (path.isObjectProperty()) {\n id = path.node.key;\n } else if (path.isVariableDeclarator()) {\n id = path.node.id;\n } else if (path.isStatement()) {\n // we've hit a statement, we should stop crawling up\n return true;\n }\n\n // we've got an id! no need to continue\n if (id) return true;\n });\n\n // ensure that we have an identifier we can inherit from\n if (!id) return;\n\n // foo.bar -> bar\n if (t.isMemberExpression(id)) {\n id = id.property;\n }\n\n // identifiers are the only thing we can reliably get a name from\n if (t.isIdentifier(id)) {\n addDisplayName(id.name, node);\n }\n },\n },\n };\n});\n"],"names":["declare","api","assertVersion","addDisplayName","id","call","props","arguments","properties","safe","i","length","prop","t","isSpreadElement","key","toComputedKey","isStringLiteral","value","unshift","objectProperty","identifier","stringLiteral","isCreateClassCallExpression","buildMatchMemberExpression","isCreateClassAddon","callee","isIdentifier","name","isCreateClass","node","isCallExpression","args","first","isObjectExpression","visitor","ExportDefaultDeclaration","state","declaration","filename","displayName","path","basename","extname","dirname","CallExpression","find","isAssignmentExpression","left","isObjectProperty","isVariableDeclarator","isStatement","isMemberExpression","property"],"mappings":"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"}
{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import { declare } from \"@babel/helper-plugin-utils\";\nimport path from \"node:path\";\nimport { types as t } from \"@babel/core\";\n\ntype ReactCreateClassCall = t.CallExpression & {\n arguments: [t.ObjectExpression];\n};\n\nexport default declare(api => {\n api.assertVersion(REQUIRED_VERSION(7));\n\n function addDisplayName(id: string, call: ReactCreateClassCall) {\n const props = call.arguments[0].properties;\n let safe = true;\n\n for (let i = 0; i < props.length; i++) {\n const prop = props[i];\n if (t.isSpreadElement(prop)) {\n continue;\n }\n const key = t.toComputedKey(prop);\n if (t.isStringLiteral(key, { value: \"displayName\" })) {\n safe = false;\n break;\n }\n }\n\n if (safe) {\n props.unshift(\n t.objectProperty(t.identifier(\"displayName\"), t.stringLiteral(id)),\n );\n }\n }\n\n const isCreateClassCallExpression =\n t.buildMatchMemberExpression(\"React.createClass\");\n const isCreateClassAddon = (callee: t.CallExpression[\"callee\"]) =>\n t.isIdentifier(callee, { name: \"createReactClass\" });\n\n function isCreateClass(node?: t.Node): node is ReactCreateClassCall {\n if (!node || !t.isCallExpression(node)) return false;\n\n // not createReactClass nor React.createClass call member object\n if (\n !isCreateClassCallExpression(node.callee) &&\n !isCreateClassAddon(node.callee)\n ) {\n return false;\n }\n\n // no call arguments\n const args = node.arguments;\n if (args.length !== 1) return false;\n\n // first node arg is not an object\n const first = args[0];\n if (!t.isObjectExpression(first)) return false;\n\n return true;\n }\n\n return {\n name: \"transform-react-display-name\",\n\n visitor: {\n ExportDefaultDeclaration({ node }, state) {\n if (isCreateClass(node.declaration)) {\n const filename = state.filename || \"unknown\";\n\n let displayName = path.basename(filename, path.extname(filename));\n\n // ./{module name}/index.js\n if (displayName === \"index\") {\n displayName = path.basename(path.dirname(filename));\n }\n\n addDisplayName(displayName, node.declaration);\n }\n },\n\n CallExpression(path) {\n const { node } = path;\n if (!isCreateClass(node)) return;\n\n let id: t.LVal | t.Expression | t.PrivateName | t.VoidPattern | null;\n\n // crawl up the ancestry looking for possible candidates for displayName inference\n path.find(function (path) {\n if (path.isAssignmentExpression()) {\n id = path.node.left;\n } else if (path.isObjectProperty()) {\n id = path.node.key;\n } else if (path.isVariableDeclarator()) {\n id = path.node.id;\n } else if (path.isStatement()) {\n // we've hit a statement, we should stop crawling up\n return true;\n }\n\n // we've got an id! no need to continue\n if (id) return true;\n });\n\n // ensure that we have an identifier we can inherit from\n if (!id) return;\n\n // foo.bar -> bar\n if (t.isMemberExpression(id)) {\n id = id.property;\n }\n\n // identifiers are the only thing we can reliably get a name from\n if (t.isIdentifier(id)) {\n addDisplayName(id.name, node);\n }\n },\n },\n };\n});\n"],"names":["declare","api","assertVersion","addDisplayName","id","call","props","arguments","properties","safe","i","length","prop","t","isSpreadElement","key","toComputedKey","isStringLiteral","value","unshift","objectProperty","identifier","stringLiteral","isCreateClassCallExpression","buildMatchMemberExpression","isCreateClassAddon","callee","isIdentifier","name","isCreateClass","node","isCallExpression","args","first","isObjectExpression","visitor","ExportDefaultDeclaration","state","declaration","filename","displayName","path","basename","extname","dirname","CallExpression","find","isAssignmentExpression","left","isObjectProperty","isVariableDeclarator","isStatement","isMemberExpression","property"],"mappings":";;;;AAQA,YAAeA,OAAO,CAACC,GAAG,IAAI;EAC5BA,GAAG,CAACC,aAAa,CAAA,kCAAoB,CAAC,CAAA;AAEtC,EAAA,SAASC,cAAcA,CAACC,EAAU,EAAEC,IAA0B,EAAE;IAC9D,MAAMC,KAAK,GAAGD,IAAI,CAACE,SAAS,CAAC,CAAC,CAAC,CAACC,UAAU,CAAA;IAC1C,IAAIC,IAAI,GAAG,IAAI,CAAA;AAEf,IAAA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGJ,KAAK,CAACK,MAAM,EAAED,CAAC,EAAE,EAAE;AACrC,MAAA,MAAME,IAAI,GAAGN,KAAK,CAACI,CAAC,CAAC,CAAA;AACrB,MAAA,IAAIG,KAAC,CAACC,eAAe,CAACF,IAAI,CAAC,EAAE;AAC3B,QAAA,SAAA;AACF,OAAA;AACA,MAAA,MAAMG,GAAG,GAAGF,KAAC,CAACG,aAAa,CAACJ,IAAI,CAAC,CAAA;AACjC,MAAA,IAAIC,KAAC,CAACI,eAAe,CAACF,GAAG,EAAE;AAAEG,QAAAA,KAAK,EAAE,aAAA;AAAc,OAAC,CAAC,EAAE;AACpDT,QAAAA,IAAI,GAAG,KAAK,CAAA;AACZ,QAAA,MAAA;AACF,OAAA;AACF,KAAA;AAEA,IAAA,IAAIA,IAAI,EAAE;MACRH,KAAK,CAACa,OAAO,CACXN,KAAC,CAACO,cAAc,CAACP,KAAC,CAACQ,UAAU,CAAC,aAAa,CAAC,EAAER,KAAC,CAACS,aAAa,CAAClB,EAAE,CAAC,CACnE,CAAC,CAAA;AACH,KAAA;AACF,GAAA;AAEA,EAAA,MAAMmB,2BAA2B,GAC/BV,KAAC,CAACW,0BAA0B,CAAC,mBAAmB,CAAC,CAAA;EACnD,MAAMC,kBAAkB,GAAIC,MAAkC,IAC5Db,KAAC,CAACc,YAAY,CAACD,MAAM,EAAE;AAAEE,IAAAA,IAAI,EAAE,kBAAA;AAAmB,GAAC,CAAC,CAAA;EAEtD,SAASC,aAAaA,CAACC,IAAa,EAAgC;AAClE,IAAA,IAAI,CAACA,IAAI,IAAI,CAACjB,KAAC,CAACkB,gBAAgB,CAACD,IAAI,CAAC,EAAE,OAAO,KAAK,CAAA;AAGpD,IAAA,IACE,CAACP,2BAA2B,CAACO,IAAI,CAACJ,MAAM,CAAC,IACzC,CAACD,kBAAkB,CAACK,IAAI,CAACJ,MAAM,CAAC,EAChC;AACA,MAAA,OAAO,KAAK,CAAA;AACd,KAAA;AAGA,IAAA,MAAMM,IAAI,GAAGF,IAAI,CAACvB,SAAS,CAAA;AAC3B,IAAA,IAAIyB,IAAI,CAACrB,MAAM,KAAK,CAAC,EAAE,OAAO,KAAK,CAAA;AAGnC,IAAA,MAAMsB,KAAK,GAAGD,IAAI,CAAC,CAAC,CAAC,CAAA;IACrB,IAAI,CAACnB,KAAC,CAACqB,kBAAkB,CAACD,KAAK,CAAC,EAAE,OAAO,KAAK,CAAA;AAE9C,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;EAEA,OAAO;AACLL,IAAAA,IAAI,EAAE,8BAA8B;AAEpCO,IAAAA,OAAO,EAAE;AACPC,MAAAA,wBAAwBA,CAAC;AAAEN,QAAAA,IAAAA;OAAM,EAAEO,KAAK,EAAE;AACxC,QAAA,IAAIR,aAAa,CAACC,IAAI,CAACQ,WAAW,CAAC,EAAE;AACnC,UAAA,MAAMC,QAAQ,GAAGF,KAAK,CAACE,QAAQ,IAAI,SAAS,CAAA;AAE5C,UAAA,IAAIC,WAAW,GAAGC,IAAI,CAACC,QAAQ,CAACH,QAAQ,EAAEE,IAAI,CAACE,OAAO,CAACJ,QAAQ,CAAC,CAAC,CAAA;UAGjE,IAAIC,WAAW,KAAK,OAAO,EAAE;YAC3BA,WAAW,GAAGC,IAAI,CAACC,QAAQ,CAACD,IAAI,CAACG,OAAO,CAACL,QAAQ,CAAC,CAAC,CAAA;AACrD,WAAA;AAEApC,UAAAA,cAAc,CAACqC,WAAW,EAAEV,IAAI,CAACQ,WAAW,CAAC,CAAA;AAC/C,SAAA;OACD;MAEDO,cAAcA,CAACJ,IAAI,EAAE;QACnB,MAAM;AAAEX,UAAAA,IAAAA;AAAK,SAAC,GAAGW,IAAI,CAAA;AACrB,QAAA,IAAI,CAACZ,aAAa,CAACC,IAAI,CAAC,EAAE,OAAA;AAE1B,QAAA,IAAI1B,EAAgE,CAAA;AAGpEqC,QAAAA,IAAI,CAACK,IAAI,CAAC,UAAUL,IAAI,EAAE;AACxB,UAAA,IAAIA,IAAI,CAACM,sBAAsB,EAAE,EAAE;AACjC3C,YAAAA,EAAE,GAAGqC,IAAI,CAACX,IAAI,CAACkB,IAAI,CAAA;AACrB,WAAC,MAAM,IAAIP,IAAI,CAACQ,gBAAgB,EAAE,EAAE;AAClC7C,YAAAA,EAAE,GAAGqC,IAAI,CAACX,IAAI,CAACf,GAAG,CAAA;AACpB,WAAC,MAAM,IAAI0B,IAAI,CAACS,oBAAoB,EAAE,EAAE;AACtC9C,YAAAA,EAAE,GAAGqC,IAAI,CAACX,IAAI,CAAC1B,EAAE,CAAA;AACnB,WAAC,MAAM,IAAIqC,IAAI,CAACU,WAAW,EAAE,EAAE;AAE7B,YAAA,OAAO,IAAI,CAAA;AACb,WAAA;UAGA,IAAI/C,EAAE,EAAE,OAAO,IAAI,CAAA;AACrB,SAAC,CAAC,CAAA;QAGF,IAAI,CAACA,EAAE,EAAE,OAAA;AAGT,QAAA,IAAIS,KAAC,CAACuC,kBAAkB,CAAChD,EAAE,CAAC,EAAE;UAC5BA,EAAE,GAAGA,EAAE,CAACiD,QAAQ,CAAA;AAClB,SAAA;AAGA,QAAA,IAAIxC,KAAC,CAACc,YAAY,CAACvB,EAAE,CAAC,EAAE;AACtBD,UAAAA,cAAc,CAACC,EAAE,CAACwB,IAAI,EAAEE,IAAI,CAAC,CAAA;AAC/B,SAAA;AACF,OAAA;AACF,KAAA;GACD,CAAA;AACH,CAAC,CAAC;;;;"}
{
"name": "@babel/plugin-transform-react-display-name",
"version": "8.0.0-beta.4",
"version": "8.0.0-rc.1",
"description": "Add displayName to React.createClass calls",

@@ -20,3 +20,3 @@ "repository": {

"dependencies": {
"@babel/helper-plugin-utils": "^8.0.0-beta.4"
"@babel/helper-plugin-utils": "^8.0.0-rc.1"
},

@@ -27,4 +27,4 @@ "peerDependencies": {

"devDependencies": {
"@babel/core": "^8.0.0-beta.4",
"@babel/helper-plugin-test-runner": "^8.0.0-beta.4"
"@babel/core": "^8.0.0-rc.1",
"@babel/helper-plugin-test-runner": "^8.0.0-rc.1"
},

@@ -31,0 +31,0 @@ "engines": {