Socket
Socket
Sign inDemoInstall

@babel/helper-wrap-function

Package Overview
Dependencies
Maintainers
6
Versions
84
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.43 to 7.0.0-beta.44

51

lib/index.js

@@ -9,5 +9,5 @@ "use strict";

function _helperFunctionName() {
const data = _interopRequireDefault(require("@babel/helper-function-name"));
var data = _interopRequireDefault(require("@babel/helper-function-name"));
_helperFunctionName = function () {
_helperFunctionName = function _helperFunctionName() {
return data;

@@ -20,5 +20,5 @@ };

function _template() {
const data = _interopRequireDefault(require("@babel/template"));
var data = _interopRequireDefault(require("@babel/template"));
_template = function () {
_template = function _template() {
return data;

@@ -31,5 +31,5 @@ };

function t() {
const data = _interopRequireWildcard(require("@babel/types"));
var data = _interopRequireWildcard(require("@babel/types"));
t = function () {
t = function t() {
return data;

@@ -45,23 +45,10 @@ };

const buildExpressionWrapper = _template().default.expression(`
(function () {
var REF = FUNCTION;
return function NAME(PARAMS) {
return REF.apply(this, arguments);
};
})()
`);
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");
const buildDeclarationWrapper = (0, _template().default)(`
function NAME(PARAMS) { return REF.apply(this, arguments); }
function REF() {
REF = FUNCTION;
return REF.apply(this, arguments);
}
`);
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) {
const node = path.node;
const body = node.body;
const container = t().functionExpression(null, [], t().blockStatement(body.body), true);
var node = path.node;
var body = node.body;
var container = t().functionExpression(null, [], t().blockStatement(body.body), true);
body.body = [t().returnStatement(t().callExpression(t().callExpression(callId, [container]), []))];

@@ -74,6 +61,6 @@ node.async = false;

function plainFunction(path, callId) {
const node = path.node;
const isDeclaration = path.isFunctionDeclaration();
const functionId = node.id;
const wrapper = isDeclaration ? buildDeclarationWrapper : buildExpressionWrapper;
var node = path.node;
var isDeclaration = path.isFunctionDeclaration();
var functionId = node.id;
var wrapper = isDeclaration ? buildDeclarationWrapper : buildExpressionWrapper;

@@ -90,8 +77,8 @@ if (path.isArrowFunctionExpression()) {

const built = t().callExpression(callId, [node]);
const container = wrapper({
var built = t().callExpression(callId, [node]);
var container = wrapper({
NAME: functionId || null,
REF: path.scope.generateUidIdentifier(functionId ? functionId.name : "ref"),
FUNCTION: built,
PARAMS: node.params.reduce((acc, param) => {
PARAMS: node.params.reduce(function (acc, param) {
acc.done = acc.done || t().isAssignmentPattern(param) || t().isRestElement(param);

@@ -114,3 +101,3 @@

} else {
const retFunction = container.callee.body.body[1].argument;
var retFunction = container.callee.body.body[1].argument;

@@ -117,0 +104,0 @@ if (!functionId) {

{
"name": "@babel/helper-wrap-function",
"version": "7.0.0-beta.43",
"version": "7.0.0-beta.44",
"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.43",
"@babel/template": "7.0.0-beta.43",
"@babel/traverse": "7.0.0-beta.43",
"@babel/types": "7.0.0-beta.43"
"@babel/helper-function-name": "7.0.0-beta.44",
"@babel/template": "7.0.0-beta.44",
"@babel/traverse": "7.0.0-beta.44",
"@babel/types": "7.0.0-beta.44"
}
}
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