Socket
Socket
Sign inDemoInstall

@babel/helper-wrap-function

Package Overview
Dependencies
Maintainers
4
Versions
85
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@babel/helper-wrap-function - npm Package Compare versions

Comparing version 7.0.0-beta.34 to 7.0.0-beta.35

32

lib/index.js

@@ -16,5 +16,6 @@ "use strict";

var buildWrapper = (0, _template.default)("\n (() => {\n var REF = FUNCTION;\n return function NAME(PARAMS) {\n return REF.apply(this, arguments);\n };\n })\n");
var namedBuildWrapper = (0, _template.default)("\n (() => {\n var REF = FUNCTION;\n function NAME(PARAMS) {\n return REF.apply(this, arguments);\n }\n return NAME;\n })\n");
var buildExpressionWrapper = _template.default.expression("\n (function () {\n var REF = FUNCTION;\n return function NAME(PARAMS) {\n return REF.apply(this, arguments);\n };\n })()\n");
var buildDeclarationWrapper = (0, _template.default)("\n function NAME(PARAMS) { return REF.apply(this, arguments); }\n function REF() {\n REF = FUNCTION;\n return REF.apply(this, arguments);\n }\n");
function classOrObjectMethod(path, callId) {

@@ -34,8 +35,6 @@ var node = path.node;

var functionId = node.id;
var wrapper = buildWrapper;
var wrapper = isDeclaration ? buildDeclarationWrapper : buildExpressionWrapper;
if (path.isArrowFunctionExpression()) {
path.arrowFunctionToExpression();
} else if (!isDeclaration && functionId) {
wrapper = namedBuildWrapper;
}

@@ -52,3 +51,3 @@

NAME: functionId || null,
REF: path.scope.generateUidIdentifier("ref"),
REF: path.scope.generateUidIdentifier(functionId ? functionId.name : "ref"),
FUNCTION: built,

@@ -67,17 +66,10 @@ PARAMS: node.params.reduce(function (acc, param) {

}).params
}).expression;
});
if (isDeclaration && functionId) {
var declar = t.variableDeclaration("let", [t.variableDeclarator(t.identifier(functionId.name), t.callExpression(container, []))]);
declar._blockHoist = true;
if (path.parentPath.isExportDefaultDeclaration()) {
path.parentPath.insertBefore(declar);
path.parentPath.replaceWith(t.exportNamedDeclaration(null, [t.exportSpecifier(t.identifier(functionId.name), t.identifier("default"))]));
return;
}
path.replaceWith(declar);
if (isDeclaration) {
var basePath = path.parentPath.isExportDeclaration() ? path.parentPath : path;
basePath.insertAfter(container[1]);
path.replaceWith(container[0]);
} else {
var retFunction = container.body.body[1].argument;
var retFunction = container.callee.body.body[1].argument;

@@ -93,3 +85,3 @@ if (!functionId) {

if (!retFunction || retFunction.id || node.params.length) {
path.replaceWith(t.callExpression(container, []));
path.replaceWith(container);
} else {

@@ -96,0 +88,0 @@ path.replaceWith(built);

{
"name": "@babel/helper-wrap-function",
"version": "7.0.0-beta.34",
"version": "7.0.0-beta.35",
"description": "Helper to wrap functions inside a function call.",

@@ -9,7 +9,7 @@ "repository": "https://github.com/babel/babel/tree/master/packages/babel-helper-wrap-function",

"dependencies": {
"@babel/helper-function-name": "7.0.0-beta.34",
"@babel/template": "7.0.0-beta.34",
"@babel/traverse": "7.0.0-beta.34",
"@babel/types": "7.0.0-beta.34"
"@babel/helper-function-name": "7.0.0-beta.35",
"@babel/template": "7.0.0-beta.35",
"@babel/traverse": "7.0.0-beta.35",
"@babel/types": "7.0.0-beta.35"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc