Socket
Socket
Sign inDemoInstall

@babel/plugin-transform-object-super

Package Overview
Dependencies
79
Maintainers
4
Versions
71
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @babel/plugin-transform-object-super

Compile ES2015 object super to ES5


Version published
Maintainers
4
Created

Package description

What is @babel/plugin-transform-object-super?

The @babel/plugin-transform-object-super package is a plugin for Babel, a JavaScript compiler, that allows the transformation of super calls in object methods. This is particularly useful when using the object method shorthand syntax in ES2015 (ES6) and beyond, where you might want to call a method of the same name from the superclass. This plugin ensures that such super calls are correctly transformed to function in environments that do not support this feature natively.

What are @babel/plugin-transform-object-super's main functionalities?

Transforming super calls in object methods

This feature allows you to use 'super' in object methods to call a method of the same name from the superclass. The plugin will transform this code to be compatible with environments that do not support this syntax natively.

{"object": {"method": function() { super.method(); }}}

Other packages similar to @babel/plugin-transform-object-super

Readme

Source

@babel/plugin-transform-object-super

Compile ES2015 object super to ES5

Examples

In

let obj = {
  say () {
    return "Hello"
  }
}

let obj2 = {
  say () {
    return super.say() + "World!"
  }
}

Out

var _obj;

var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };

var obj = {
  say: function say() {
    return "Hello";
  }
};

var obj2 = _obj = {
  say: function say() {
    return _get(_obj.__proto__ || Object.getPrototypeOf(_obj), "say", this).call(this) + "World!";
  }
};

Installation

npm install --save-dev @babel/plugin-transform-object-super

Usage

.babelrc

{
  "plugins": ["@babel/plugin-transform-object-super"]
}

Via CLI

babel --plugins @babel/plugin-transform-object-super script.js

Via Node API

require("@babel/core").transform("code", {
  plugins: ["@babel/plugin-transform-object-super"]
});

Keywords

FAQs

Last updated on 01 Dec 2017

Did you know?

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

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc