From 181e81442b34b895232023027a7e61692b6cc987 Mon Sep 17 00:00:00 2001 From: Robin Ricard Date: Fri, 22 Jun 2018 16:26:21 -0400 Subject: [PATCH] [wip] Attempt to surface ClassPrivateMethod --- .../babel-plugin-proposal-class-properties/src/index.js | 6 ++++-- packages/babel-types/src/definitions/es2015.js | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/babel-plugin-proposal-class-properties/src/index.js b/packages/babel-plugin-proposal-class-properties/src/index.js index 62ea9ec1ecfe..ca5a426b5548 100644 --- a/packages/babel-plugin-proposal-class-properties/src/index.js +++ b/packages/babel-plugin-proposal-class-properties/src/index.js @@ -71,7 +71,9 @@ export default declare((api, options) => { const body = path.get("body.body"); for (const prop of body) { - if (!prop.isClassPrivateProperty()) continue; + if (!prop.isClassPrivateProperty() && !prop.isClassPrivateMethod()) { + continue; + } if (prop.node.key.id.name !== name) continue; // This class redeclares the private name. @@ -368,7 +370,7 @@ export default declare((api, options) => { ); } - if (path.isClassPrivateProperty()) { + if (path.isClassPrivateProperty() || path.isClassPrivateMethod()) { const { static: isStatic, key: { id: { name } } } = path.node; if (isStatic) { diff --git a/packages/babel-types/src/definitions/es2015.js b/packages/babel-types/src/definitions/es2015.js index 26c0d4a34473..9ccf5f2508e7 100644 --- a/packages/babel-types/src/definitions/es2015.js +++ b/packages/babel-types/src/definitions/es2015.js @@ -89,6 +89,7 @@ defineType("ClassBody", { "ClassMethod", "ClassProperty", "ClassPrivateProperty", + "ClassPrivateMethod", "TSDeclareMethod", "TSIndexSignature", ),