Skip to content

Commit

Permalink
Static "inherits"
Browse files Browse the repository at this point in the history
  • Loading branch information
nicolo-ribaudo committed Jun 10, 2018
1 parent 40d4078 commit ad4c05d
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 8 deletions.
20 changes: 12 additions & 8 deletions packages/babel-plugin-proposal-class-properties/src/index.js
@@ -1,22 +1,26 @@
import { declare } from "@babel/helper-plugin-utils";
import proposalEnhancedClasses from "@babel/plugin-proposal-enhanced-classes";
import proposalEnhancedClasses, {
enableFeature,
FEATURES,
setLoose,
} from "@babel/plugin-proposal-enhanced-classes";

export default declare((api, options) => {
api.assertVersion(7);

const { loose } = options;

return {
inherits(babel) {
return proposalEnhancedClasses(babel, {
loose,
instanceFields: true,
staticFields: true,
});
},
inherits: proposalEnhancedClasses,

manipulateOptions(opts, parserOpts) {
parserOpts.plugins.push("classProperties", "classPrivateProperties");
},

pre() {
setLoose(this.file, loose);
enableFeature(this.file, FEATURES.instanceFields);
enableFeature(this.file, FEATURES.staticFields);
},
};
});
2 changes: 2 additions & 0 deletions packages/babel-plugin-proposal-enhanced-classes/src/index.js
Expand Up @@ -16,6 +16,8 @@ import {
isLoose,
} from "./features";

export { enableFeature, FEATURES, setLoose };

export default declare((api, options) => {
api.assertVersion(7);

Expand Down

0 comments on commit ad4c05d

Please sign in to comment.