Socket
Socket
Sign inDemoInstall

@babel/plugin-transform-computed-properties

Package Overview
Dependencies
Maintainers
5
Versions
76
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@babel/plugin-transform-computed-properties - npm Package Compare versions

Comparing version 7.0.0-beta.46 to 7.0.0-beta.47

115

lib/index.js

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

function _helperPluginUtils() {
var data = require("@babel/helper-plugin-utils");
const data = require("@babel/helper-plugin-utils");

@@ -20,3 +20,3 @@ _helperPluginUtils = function _helperPluginUtils() {

function _core() {
var data = require("@babel/core");
const data = require("@babel/core");

@@ -30,7 +30,10 @@ _core = function _core() {

var _default = (0, _helperPluginUtils().declare)(function (api, options) {
var _default = (0, _helperPluginUtils().declare)((api, options) => {
api.assertVersion(7);
var loose = options.loose;
var pushComputedProps = loose ? pushComputedPropsLoose : pushComputedPropsSpec;
var buildMutatorMapAssign = (0, _core().template)("\n MUTATOR_MAP_REF[KEY] = MUTATOR_MAP_REF[KEY] || {};\n MUTATOR_MAP_REF[KEY].KIND = VALUE;\n ");
const loose = options.loose;
const pushComputedProps = loose ? pushComputedPropsLoose : pushComputedPropsSpec;
const buildMutatorMapAssign = (0, _core().template)(`
MUTATOR_MAP_REF[KEY] = MUTATOR_MAP_REF[KEY] || {};
MUTATOR_MAP_REF[KEY].KIND = VALUE;
`);

@@ -53,8 +56,9 @@ function getValue(prop) {

function pushMutatorDefine(_ref, prop) {
var body = _ref.body,
getMutatorId = _ref.getMutatorId,
scope = _ref.scope;
var key = !prop.computed && _core().types.isIdentifier(prop.key) ? _core().types.stringLiteral(prop.key.name) : prop.key;
var maybeMemoise = scope.maybeGenerateMemoised(key);
function pushMutatorDefine({
body,
getMutatorId,
scope
}, prop) {
let key = !prop.computed && _core().types.isIdentifier(prop.key) ? _core().types.stringLiteral(prop.key.name) : prop.key;
const maybeMemoise = scope.maybeGenerateMemoised(key);

@@ -66,3 +70,3 @@ if (maybeMemoise) {

body.push.apply(body, buildMutatorMapAssign({
body.push(...buildMutatorMapAssign({
MUTATOR_MAP_REF: getMutatorId(),

@@ -77,14 +81,14 @@ KEY: _core().types.cloneNode(key),

for (var _iterator = info.computedProps, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {
var _ref2;
var _ref;
if (_isArray) {
if (_i >= _iterator.length) break;
_ref2 = _iterator[_i++];
_ref = _iterator[_i++];
} else {
_i = _iterator.next();
if (_i.done) break;
_ref2 = _i.value;
_ref = _i.value;
}
var prop = _ref2;
const prop = _ref;

@@ -100,22 +104,22 @@ if (prop.kind === "get" || prop.kind === "set") {

function pushComputedPropsSpec(info) {
var objId = info.objId,
body = info.body,
computedProps = info.computedProps,
state = info.state;
const objId = info.objId,
body = info.body,
computedProps = info.computedProps,
state = info.state;
for (var _iterator2 = computedProps, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) {
var _ref3;
var _ref2;
if (_isArray2) {
if (_i2 >= _iterator2.length) break;
_ref3 = _iterator2[_i2++];
_ref2 = _iterator2[_i2++];
} else {
_i2 = _iterator2.next();
if (_i2.done) break;
_ref3 = _i2.value;
_ref2 = _i2.value;
}
var prop = _ref3;
const prop = _ref2;
var key = _core().types.toComputedKey(prop);
const key = _core().types.toComputedKey(prop);

@@ -141,11 +145,11 @@ if (prop.kind === "get" || prop.kind === "set") {

ObjectExpression: {
exit: function exit(path, state) {
var node = path.node,
parent = path.parent,
scope = path.scope;
var hasComputed = false;
exit(path, state) {
const node = path.node,
parent = path.parent,
scope = path.scope;
let hasComputed = false;
var _arr = node.properties;
for (var _i3 = 0; _i3 < _arr.length; _i3++) {
var prop = _arr[_i3];
const prop = _arr[_i3];
hasComputed = prop.computed === true;

@@ -156,21 +160,21 @@ if (hasComputed) break;

if (!hasComputed) return;
var initProps = [];
var computedProps = [];
var foundComputed = false;
const initProps = [];
const computedProps = [];
let foundComputed = false;
for (var _iterator3 = node.properties, _isArray3 = Array.isArray(_iterator3), _i4 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator]();;) {
var _ref4;
var _ref3;
if (_isArray3) {
if (_i4 >= _iterator3.length) break;
_ref4 = _iterator3[_i4++];
_ref3 = _iterator3[_i4++];
} else {
_i4 = _iterator3.next();
if (_i4.done) break;
_ref4 = _i4.value;
_ref3 = _i4.value;
}
var _prop = _ref4;
const prop = _ref3;
if (_prop.computed) {
if (prop.computed) {
foundComputed = true;

@@ -180,17 +184,17 @@ }

if (foundComputed) {
computedProps.push(_prop);
computedProps.push(prop);
} else {
initProps.push(_prop);
initProps.push(prop);
}
}
var objId = scope.generateUidIdentifierBasedOnNode(parent);
const objId = scope.generateUidIdentifierBasedOnNode(parent);
var initPropExpression = _core().types.objectExpression(initProps);
const initPropExpression = _core().types.objectExpression(initProps);
var body = [];
const body = [];
body.push(_core().types.variableDeclaration("var", [_core().types.variableDeclarator(objId, initPropExpression)]));
var mutatorRef;
let mutatorRef;
var getMutatorId = function getMutatorId() {
const getMutatorId = function getMutatorId() {
if (!mutatorRef) {

@@ -204,10 +208,10 @@ mutatorRef = scope.generateUidIdentifier("mutatorMap");

var single = pushComputedProps({
scope: scope,
objId: objId,
body: body,
computedProps: computedProps,
initPropExpression: initPropExpression,
getMutatorId: getMutatorId,
state: state
const single = pushComputedProps({
scope,
objId,
body,
computedProps,
initPropExpression,
getMutatorId,
state
});

@@ -226,2 +230,3 @@

}
}

@@ -228,0 +233,0 @@ }

{
"name": "@babel/plugin-transform-computed-properties",
"version": "7.0.0-beta.46",
"version": "7.0.0-beta.47",
"description": "Compile ES2015 computed properties to ES5",

@@ -12,11 +12,11 @@ "repository": "https://github.com/babel/babel/tree/master/packages/babel-plugin-transform-computed-properties",

"dependencies": {
"@babel/helper-plugin-utils": "7.0.0-beta.46"
"@babel/helper-plugin-utils": "7.0.0-beta.47"
},
"peerDependencies": {
"@babel/core": "7.0.0-beta.46"
"@babel/core": "7.0.0-beta.47"
},
"devDependencies": {
"@babel/core": "7.0.0-beta.46",
"@babel/helper-plugin-test-runner": "7.0.0-beta.46"
"@babel/core": "7.0.0-beta.47",
"@babel/helper-plugin-test-runner": "7.0.0-beta.47"
}
}
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