Socket
Socket
Sign inDemoInstall

babel-plugin-transform-class-properties

Package Overview
Dependencies
Maintainers
6
Versions
48
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

babel-plugin-transform-class-properties - npm Package Compare versions

Comparing version 7.0.0-beta.2 to 7.0.0-beta.3

60

lib/index.js
"use strict";
exports.__esModule = true;
exports.default = _default;
exports.default = function (_ref) {
var _babelHelperFunctionName = _interopRequireDefault(require("babel-helper-function-name"));
var _babelTemplate = _interopRequireDefault(require("babel-template"));
var _babelPluginSyntaxClassProperties = _interopRequireDefault(require("babel-plugin-syntax-class-properties"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _default(_ref, options) {
var t = _ref.types;
var loose = options.loose;
var findBareSupers = {

@@ -27,3 +37,3 @@ Super: function Super(path) {

};
var buildObjectDefineProperty = (0, _babelTemplate2.default)("\n Object.defineProperty(REF, KEY, {\n configurable: true,\n enumerable: true,\n writable: true,\n value: VALUE\n });\n ");
var buildObjectDefineProperty = (0, _babelTemplate.default)("\n Object.defineProperty(REF, KEY, {\n configurable: true,\n enumerable: true,\n writable: true,\n value: VALUE\n });\n ");

@@ -48,9 +58,9 @@ var buildClassPropertySpec = function buildClassPropertySpec(ref, _ref2, scope) {

var buildClassProperty = loose ? buildClassPropertyLoose : buildClassPropertySpec;
return {
inherits: _babelPluginSyntaxClassProperties2.default,
inherits: _babelPluginSyntaxClassProperties.default,
visitor: {
Class: function Class(path, state) {
var buildClassProperty = state.opts.loose ? buildClassPropertyLoose : buildClassPropertySpec;
Class: function Class(path) {
var isDerived = !!path.node.superClass;
var constructor = void 0;
var constructor;
var props = [];

@@ -84,6 +94,6 @@ var body = path.get("body");

var nodes = [];
var ref = void 0;
var ref;
if (path.isClassExpression() || !path.node.id) {
(0, _babelHelperFunctionName2.default)(path);
(0, _babelHelperFunctionName.default)(path);
ref = path.scope.generateUidIdentifier("class");

@@ -105,2 +115,8 @@ } else {

} else {
if (propNode.computed) {
var ident = path.scope.generateUidIdentifierBasedOnNode(propNode.key);
nodes.push(t.variableDeclaration("var", [t.variableDeclarator(ident, propNode.key)]));
propNode.key = ident;
}
instanceBody.push(buildClassProperty(t.thisExpression(), propNode, path.scope));

@@ -180,31 +196,5 @@ }

path.insertAfter(nodes);
},
ArrowFunctionExpression: function ArrowFunctionExpression(path) {
var classExp = path.get("body");
if (!classExp.isClassExpression()) return;
var body = classExp.get("body");
var members = body.get("body");
if (members.some(function (member) {
return member.isClassProperty();
})) {
path.ensureBlock();
}
}
}
};
};
var _babelHelperFunctionName = require("babel-helper-function-name");
var _babelHelperFunctionName2 = _interopRequireDefault(_babelHelperFunctionName);
var _babelTemplate = require("babel-template");
var _babelTemplate2 = _interopRequireDefault(_babelTemplate);
var _babelPluginSyntaxClassProperties = require("babel-plugin-syntax-class-properties");
var _babelPluginSyntaxClassProperties2 = _interopRequireDefault(_babelPluginSyntaxClassProperties);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
}
{
"name": "babel-plugin-transform-class-properties",
"version": "7.0.0-beta.2",
"version": "7.0.0-beta.3",
"description": "This plugin transforms static class properties as well as properties declared with the property initializer syntax",

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

"dependencies": {
"babel-helper-function-name": "7.0.0-beta.2",
"babel-plugin-syntax-class-properties": "7.0.0-beta.2",
"babel-template": "7.0.0-beta.2"
"babel-helper-function-name": "7.0.0-beta.3",
"babel-plugin-syntax-class-properties": "7.0.0-beta.3",
"babel-template": "7.0.0-beta.3"
},
"devDependencies": {
"babel-helper-plugin-test-runner": "7.0.0-beta.2"
"babel-helper-plugin-test-runner": "7.0.0-beta.3"
}
}
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