Socket
Socket
Sign inDemoInstall

@babel/plugin-syntax-decorators

Package Overview
Dependencies
54
Maintainers
6
Versions
78
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 7.16.7 to 7.17.0

46

lib/index.js

@@ -13,19 +13,27 @@ "use strict";

const {
legacy = false
legacy,
version = legacy ? "legacy" : "2018-09",
decoratorsBeforeExport = version === "2021-12" ? false : undefined
} = options;
if (typeof legacy !== "boolean") {
throw new Error("'legacy' must be a boolean.");
if (version !== "2021-12" && version !== "2018-09" && version !== "legacy") {
throw new Error("Unsupported decorators version: " + version);
}
const {
decoratorsBeforeExport
} = options;
if (legacy !== undefined) {
if (typeof legacy !== "boolean") {
throw new Error(".legacy must be a boolean.");
}
if (options.version !== undefined) {
throw new Error("You can either use the .legacy or the .version option, not both.");
}
}
if (decoratorsBeforeExport === undefined) {
if (!legacy) {
throw new Error("The '@babel/plugin-syntax-decorators' plugin requires a" + " 'decoratorsBeforeExport' option, whose value must be a boolean." + " If you want to use the legacy decorators semantics, you can set" + " the 'legacy: true' option.");
if (version === "2018-09") {
throw new Error("The decorators plugin, when .version is '2018-09' or not specified," + " requires a 'decoratorsBeforeExport' option, whose value must be a boolean.");
}
} else {
if (legacy) {
if (version === "legacy") {
throw new Error("'decoratorsBeforeExport' can't be used with legacy decorators.");

@@ -42,6 +50,18 @@ }

manipulateOptions(opts, parserOpts) {
parserOpts.plugins.push(legacy ? "decorators-legacy" : ["decorators", {
decoratorsBeforeExport
}]);
manipulateOptions({
generatorOpts
}, parserOpts) {
if (version === "legacy") {
parserOpts.plugins.push("decorators-legacy");
} else if (version === "2018-09") {
parserOpts.plugins.push(["decorators", {
decoratorsBeforeExport
}]);
generatorOpts.decoratorsBeforeExport = decoratorsBeforeExport;
} else {
parserOpts.plugins.push(["decorators", {
decoratorsBeforeExport
}], "decoratorAutoAccessors");
generatorOpts.decoratorsBeforeExport = decoratorsBeforeExport;
}
}

@@ -48,0 +68,0 @@

{
"name": "@babel/plugin-syntax-decorators",
"version": "7.16.7",
"version": "7.17.0",
"description": "Allow parsing of decorators",

@@ -26,3 +26,3 @@ "repository": {

"devDependencies": {
"@babel/core": "^7.16.7"
"@babel/core": "^7.17.0"
},

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc