Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Socket
Sign inDemoInstall

@babel/helper-create-class-features-plugin

Package Overview
Dependencies
Maintainers
4
Versions
109
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@babel/helper-create-class-features-plugin - npm Package Compare versions

Comparing version 7.23.5 to 7.23.6

28

lib/features.js

@@ -21,3 +21,10 @@ "use strict";

const looseKey = "@babel/plugin-class-features/looseKey";
const looseLowPriorityKey = "@babel/plugin-class-features/looseLowPriorityKey/#__internal__@babel/preset-env__please-overwrite-loose-instead-of-throwing";
{
var looseLowPriorityKey = "@babel/plugin-class-features/looseLowPriorityKey/#__internal__@babel/preset-env__please-overwrite-loose-instead-of-throwing";
}
{
var canIgnoreLoose = function (file, feature) {
return !!(file.get(looseLowPriorityKey) & feature);
};
}
function enableFeature(file, feature, loose) {

@@ -37,13 +44,15 @@ if (!hasFeature(file, feature) || canIgnoreLoose(file, feature)) {

let resolvedLoose;
let higherPriorityPluginName;
for (const [mask, name] of featuresSameLoose) {
if (!hasFeature(file, mask)) continue;
{
if (canIgnoreLoose(file, mask)) continue;
}
const loose = isLoose(file, mask);
if (canIgnoreLoose(file, mask)) {
continue;
} else if (resolvedLoose === !loose) {
if (resolvedLoose === !loose) {
throw new Error("'loose' mode configuration must be the same for @babel/plugin-transform-class-properties, " + "@babel/plugin-transform-private-methods and " + "@babel/plugin-transform-private-property-in-object (when they are enabled).");
} else {
resolvedLoose = loose;
higherPriorityPluginName = name;
{
var higherPriorityPluginName = name;
}
}

@@ -68,7 +77,6 @@ }

if (loose) file.set(looseKey, file.get(looseKey) | feature);else file.set(looseKey, file.get(looseKey) & ~feature);
file.set(looseLowPriorityKey, file.get(looseLowPriorityKey) & ~feature);
{
file.set(looseLowPriorityKey, file.get(looseLowPriorityKey) & ~feature);
}
}
function canIgnoreLoose(file, feature) {
return !!(file.get(looseLowPriorityKey) & feature);
}
function shouldTransform(path, file) {

@@ -75,0 +83,0 @@ let decoratorPath = null;

@@ -87,8 +87,8 @@ "use strict";

if (typeof file.get(versionKey) === "number") {
file.set(versionKey, "7.23.5");
file.set(versionKey, "7.23.6");
return;
}
}
if (!file.get(versionKey) || _semver.lt(file.get(versionKey), "7.23.5")) {
file.set(versionKey, "7.23.5");
if (!file.get(versionKey) || _semver.lt(file.get(versionKey), "7.23.6")) {
file.set(versionKey, "7.23.6");
}

@@ -101,3 +101,3 @@ },

var _ref;
if (file.get(versionKey) !== "7.23.5") return;
if (file.get(versionKey) !== "7.23.6") return;
if (!(0, _features.shouldTransform)(path, file)) return;

@@ -218,3 +218,3 @@ const pathIsClassDeclaration = path.isClassDeclaration();

{
if (file.get(versionKey) !== "7.23.5") return;
if (file.get(versionKey) !== "7.23.6") return;
const decl = path.get("declaration");

@@ -221,0 +221,0 @@ if (decl.isClassDeclaration() && (0, _decorators.hasDecorators)(decl.node)) {

@@ -100,9 +100,21 @@ "use strict";

if (!computedKey.isConstantExpression()) {
const ident = path.scope.generateUidIdentifierBasedOnNode(computedNode.key);
path.scope.push({
id: ident,
kind: "let"
});
declarations.push(_core.types.expressionStatement(_core.types.assignmentExpression("=", _core.types.cloneNode(ident), computedNode.key)));
computedNode.key = _core.types.cloneNode(ident);
const scope = path.scope;
const isUidReference = _core.types.isIdentifier(computedKey.node) && scope.hasUid(computedKey.node.name);
const isMemoiseAssignment = computedKey.isAssignmentExpression({
operator: "="
}) && _core.types.isIdentifier(computedKey.node.left) && scope.hasUid(computedKey.node.left.name);
if (isUidReference) {
continue;
} else if (isMemoiseAssignment) {
declarations.push(_core.types.expressionStatement(_core.types.cloneNode(computedNode.key)));
computedNode.key = _core.types.cloneNode(computedNode.key.left);
} else {
const ident = path.scope.generateUidIdentifierBasedOnNode(computedNode.key);
scope.push({
id: ident,
kind: "let"
});
declarations.push(_core.types.expressionStatement(_core.types.assignmentExpression("=", _core.types.cloneNode(ident), computedNode.key)));
computedNode.key = _core.types.cloneNode(ident);
}
}

@@ -109,0 +121,0 @@ }

{
"name": "@babel/helper-create-class-features-plugin",
"version": "7.23.5",
"version": "7.23.6",
"author": "The Babel Team (https://babel.dev/team)",

@@ -35,5 +35,5 @@ "license": "MIT",

"devDependencies": {
"@babel/core": "^7.23.5",
"@babel/core": "^7.23.6",
"@babel/helper-plugin-test-runner": "^7.22.5",
"@babel/preset-env": "^7.23.5"
"@babel/preset-env": "^7.23.6"
},

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

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

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