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

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

Package Overview
Dependencies
Maintainers
4
Versions
110
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

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

Compile class public and private fields, private methods and decorators to ES6

  • 7.22.5
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
30M
decreased by-0.6%
Maintainers
4
Weekly downloads
 
Created

What is @babel/helper-create-class-features-plugin?

The @babel/helper-create-class-features-plugin is a helper package used internally by Babel plugins to handle the transformation of class features. It is not intended to be used directly by end users, but rather as a utility for plugin authors to create transformations for class properties, private methods, and other class-related syntax in a consistent way.

What are @babel/helper-create-class-features-plugin's main functionalities?

Class Properties

This feature allows the transformation of class properties so that they can be compiled into a format that is compatible with environments that do not support the latest ECMAScript standards. The code sample shows how a class property is transformed into a constructor assignment with a helper function.

"use strict";

function _defineProperty(obj, key, value) {
  if (key in obj) {
    Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });
  } else {
    obj[key] = value;
  }
  return obj;
}

class Example {
  constructor() {
    _defineProperty(this, "state", {});
  }
}

Private Methods

This feature enables the transformation of private methods in a class. The code sample illustrates how a private method is transformed using WeakSets and helper functions to ensure that the method remains private and is not accessible outside the class.

"use strict";

function _classPrivateMethodInitSpec(obj, privateSet) {
  // ...implementation details
}

function _classPrivateMethodGet(receiver, privateSet, fn) {
  // ...implementation details
}

class Example {
  constructor() {
    _classPrivateMethodInitSpec(this, _privateMethod);
  }
}

var _privateMethod = new WeakSet();

Other packages similar to @babel/helper-create-class-features-plugin

Keywords

FAQs

Package last updated on 08 Jun 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

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