Make @babel/plugin-class-features a normal helper package (#9083)

* Make @babel/plugin-class-features a normal helper package

This effectively disallows using it directly.

* Rename helper

* Style

* Don't add prefix to plugin name

* Move private methods plugin
This commit is contained in:
Nicolò Ribaudo
2018-11-29 16:42:45 +01:00
committed by GitHub
parent c4d6f6dcce
commit 4e28459a2f
16 changed files with 33 additions and 79 deletions

View File

@@ -13,7 +13,7 @@
],
"dependencies": {
"@babel/helper-plugin-utils": "^7.0.0",
"@babel/plugin-class-features": "^7.1.4"
"@babel/helper-create-class-features-plugin": "^7.1.4"
},
"peerDependencies": {
"@babel/core": "^7.0.0-0"

View File

@@ -1,25 +1,22 @@
/* eslint-disable local-rules/plugin-name */
import { declare } from "@babel/helper-plugin-utils";
import pluginClassFeatures, {
enableFeature,
import {
createClassFeaturePlugin,
FEATURES,
} from "@babel/plugin-class-features";
} from "@babel/helper-create-class-features-plugin";
export default declare((api, options) => {
api.assertVersion(7);
const { loose } = options;
return {
return createClassFeaturePlugin({
name: "proposal-class-properties",
inherits: pluginClassFeatures,
feature: FEATURES.fields,
loose: options.loose,
manipulateOptions(opts, parserOpts) {
parserOpts.plugins.push("classProperties", "classPrivateProperties");
},
pre() {
enableFeature(this.file, FEATURES.fields, loose);
},
};
});
});