Socket
Socket
Sign inDemoInstall

@babel/plugin-transform-for-of

Package Overview
Dependencies
Maintainers
6
Versions
86
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@babel/plugin-transform-for-of - npm Package Compare versions

Comparing version 7.4.4 to 7.7.4

88

lib/index.js

@@ -8,23 +8,7 @@ "use strict";

function _helperPluginUtils() {
const data = require("@babel/helper-plugin-utils");
var _helperPluginUtils = require("@babel/helper-plugin-utils");
_helperPluginUtils = function () {
return data;
};
var _core = require("@babel/core");
return data;
}
function _core() {
const data = require("@babel/core");
_core = function () {
return data;
};
return data;
}
var _default = (0, _helperPluginUtils().declare)((api, options) => {
var _default = (0, _helperPluginUtils.declare)((api, options) => {
api.assertVersion(7);

@@ -55,6 +39,6 @@ const {

let array = scope.maybeGenerateMemoised(right, true);
const inits = [_core().types.variableDeclarator(i, _core().types.numericLiteral(0))];
const inits = [_core.types.variableDeclarator(i, _core.types.numericLiteral(0))];
if (array) {
inits.push(_core().types.variableDeclarator(array, right));
inits.push(_core.types.variableDeclarator(array, right));
} else {

@@ -64,17 +48,17 @@ array = right;

const item = _core().types.memberExpression(_core().types.cloneNode(array), _core().types.cloneNode(i), true);
const item = _core.types.memberExpression(_core.types.cloneNode(array), _core.types.cloneNode(i), true);
let assignment;
if (_core().types.isVariableDeclaration(left)) {
if (_core.types.isVariableDeclaration(left)) {
assignment = left;
assignment.declarations[0].init = item;
} else {
assignment = _core().types.expressionStatement(_core().types.assignmentExpression("=", left, item));
assignment = _core.types.expressionStatement(_core.types.assignmentExpression("=", left, item));
}
const block = _core().types.toBlock(body);
const block = _core.types.toBlock(body);
block.body.unshift(assignment);
path.replaceWith(_core().types.forStatement(_core().types.variableDeclaration("let", inits), _core().types.binaryExpression("<", _core().types.cloneNode(i), _core().types.memberExpression(_core().types.cloneNode(array), _core().types.identifier("length"))), _core().types.updateExpression("++", _core().types.cloneNode(i)), block));
path.replaceWith(_core.types.forStatement(_core.types.variableDeclaration("let", inits), _core.types.binaryExpression("<", _core.types.cloneNode(i), _core.types.memberExpression(_core.types.cloneNode(array), _core.types.identifier("length"))), _core.types.updateExpression("++", _core.types.cloneNode(i)), block));
}

@@ -87,6 +71,6 @@

const pushComputedProps = loose ? pushComputedPropsLoose : pushComputedPropsSpec;
const buildForOfArray = (0, _core().template)(`
const buildForOfArray = (0, _core.template)(`
for (var KEY = 0, NAME = ARR; KEY < NAME.length; KEY++) BODY;
`);
const buildForOfLoose = (0, _core().template)(`
const buildForOfLoose = (0, _core.template)(`
for (var LOOP_OBJECT = OBJECT,

@@ -107,3 +91,3 @@ IS_ARRAY = Array.isArray(LOOP_OBJECT),

`);
const buildForOf = (0, _core().template)(`
const buildForOf = (0, _core.template)(`
var ITERATOR_COMPLETION = true;

@@ -148,19 +132,19 @@ var ITERATOR_HAD_ERROR_KEY = false;

_core().types.inherits(loop, node);
_core.types.inherits(loop, node);
_core().types.ensureBlock(loop);
_core.types.ensureBlock(loop);
const iterationValue = _core().types.memberExpression(_core().types.cloneNode(right), _core().types.cloneNode(iterationKey), true);
const iterationValue = _core.types.memberExpression(_core.types.cloneNode(right), _core.types.cloneNode(iterationKey), true);
const left = node.left;
if (_core().types.isVariableDeclaration(left)) {
if (_core.types.isVariableDeclaration(left)) {
left.declarations[0].init = iterationValue;
loop.body.body.unshift(left);
} else {
loop.body.body.unshift(_core().types.expressionStatement(_core().types.assignmentExpression("=", left, iterationValue)));
loop.body.body.unshift(_core.types.expressionStatement(_core.types.assignmentExpression("=", left, iterationValue)));
}
if (path.parentPath.isLabeledStatement()) {
loop = _core().types.labeledStatement(path.parentPath.node.label, loop);
loop = _core.types.labeledStatement(path.parentPath.node.label, loop);
}

@@ -185,3 +169,3 @@

if (right.isArrayExpression() || right.isGenericType("Array") || _core().types.isArrayTypeAnnotation(right.getTypeAnnotation())) {
if (right.isArrayExpression() || right.isGenericType("Array") || _core.types.isArrayTypeAnnotation(right.getTypeAnnotation())) {
replaceWithArray(path);

@@ -206,5 +190,5 @@ return;

_core().types.inherits(loop, node);
_core.types.inherits(loop, node);
_core().types.inherits(loop.body, node.body);
_core.types.inherits(loop.body, node.body);

@@ -233,9 +217,9 @@ if (build.replaceParent) {

if (_core().types.isIdentifier(left) || _core().types.isPattern(left) || _core().types.isMemberExpression(left)) {
if (_core.types.isIdentifier(left) || _core.types.isPattern(left) || _core.types.isMemberExpression(left)) {
id = left;
intermediate = null;
} else if (_core().types.isVariableDeclaration(left)) {
} else if (_core.types.isVariableDeclaration(left)) {
id = scope.generateUidIdentifier("ref");
declar = _core().types.variableDeclaration(left.kind, [_core().types.variableDeclarator(left.declarations[0].id, _core().types.identifier(id.name))]);
intermediate = _core().types.variableDeclaration("var", [_core().types.variableDeclarator(_core().types.identifier(id.name))]);
declar = _core.types.variableDeclaration(left.kind, [_core.types.variableDeclarator(left.declarations[0].id, _core.types.identifier(id.name))]);
intermediate = _core.types.variableDeclaration("var", [_core.types.variableDeclarator(_core.types.identifier(id.name))]);
} else {

@@ -256,3 +240,3 @@ throw file.buildCodeFrameError(left, `Unknown node type ${left.type} in ForStatement`);

const isLabeledParent = _core().types.isLabeledStatement(parent);
const isLabeledParent = _core.types.isLabeledStatement(parent);

@@ -262,3 +246,3 @@ let labeled;

if (isLabeledParent) {
labeled = _core().types.labeledStatement(parent.label, loop);
labeled = _core.types.labeledStatement(parent.label, loop);
}

@@ -284,8 +268,8 @@

const stepValue = _core().types.memberExpression(_core().types.identifier(stepKey), _core().types.identifier("value"));
const stepValue = _core.types.memberExpression(_core.types.identifier(stepKey), _core.types.identifier("value"));
if (_core().types.isIdentifier(left) || _core().types.isPattern(left) || _core().types.isMemberExpression(left)) {
declar = _core().types.expressionStatement(_core().types.assignmentExpression("=", left, stepValue));
} else if (_core().types.isVariableDeclaration(left)) {
declar = _core().types.variableDeclaration(left.kind, [_core().types.variableDeclarator(left.declarations[0].id, stepValue)]);
if (_core.types.isIdentifier(left) || _core.types.isPattern(left) || _core.types.isMemberExpression(left)) {
declar = _core.types.expressionStatement(_core.types.assignmentExpression("=", left, stepValue));
} else if (_core.types.isVariableDeclaration(left)) {
declar = _core.types.variableDeclaration(left.kind, [_core.types.variableDeclarator(left.declarations[0].id, stepValue)]);
} else {

@@ -300,7 +284,7 @@ throw file.buildCodeFrameError(left, `Unknown node type ${left.type} in ForStatement`);

ITERATOR_KEY: scope.generateUidIdentifier("iterator"),
STEP_KEY: _core().types.identifier(stepKey),
STEP_KEY: _core.types.identifier(stepKey),
OBJECT: node.right
});
const isLabeledParent = _core().types.isLabeledStatement(parent);
const isLabeledParent = _core.types.isLabeledStatement(parent);

@@ -311,3 +295,3 @@ const tryBody = template[3].block.body;

if (isLabeledParent) {
tryBody[0] = _core().types.labeledStatement(parent.label, loop);
tryBody[0] = _core.types.labeledStatement(parent.label, loop);
}

@@ -314,0 +298,0 @@

{
"name": "@babel/plugin-transform-for-of",
"version": "7.4.4",
"version": "7.7.4",
"description": "Compile ES2015 for...of to ES5",

@@ -21,6 +21,6 @@ "repository": "https://github.com/babel/babel/tree/master/packages/babel-plugin-transform-for-of",

"devDependencies": {
"@babel/core": "^7.4.4",
"@babel/helper-plugin-test-runner": "^7.0.0"
"@babel/core": "^7.7.4",
"@babel/helper-plugin-test-runner": "^7.7.4"
},
"gitHead": "2c88694388831b1e5b88e4bbed6781eb2be1edba"
"gitHead": "75767d87cb147709b9bd9b99bf44daa6688874a9"
}
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