From 9f3e1eabfdb175f61e63d31b1542b4d9090d6d94 Mon Sep 17 00:00:00 2001 From: Sebastian McKenzie Date: Sun, 11 Jan 2015 03:21:05 +1100 Subject: [PATCH] simplify define properties --- .../object-define-properties-closure.js | 5 ----- .../templates/object-define-properties.js | 1 - .../es6-property-method-assignment.js | 21 ++++--------------- 3 files changed, 4 insertions(+), 23 deletions(-) delete mode 100644 lib/6to5/transformation/templates/object-define-properties-closure.js delete mode 100644 lib/6to5/transformation/templates/object-define-properties.js diff --git a/lib/6to5/transformation/templates/object-define-properties-closure.js b/lib/6to5/transformation/templates/object-define-properties-closure.js deleted file mode 100644 index a4e51eaf06..0000000000 --- a/lib/6to5/transformation/templates/object-define-properties-closure.js +++ /dev/null @@ -1,5 +0,0 @@ - -(function (KEY) { - CONTENT; - return KEY; -})(OBJECT); diff --git a/lib/6to5/transformation/templates/object-define-properties.js b/lib/6to5/transformation/templates/object-define-properties.js deleted file mode 100644 index 55a569988f..0000000000 --- a/lib/6to5/transformation/templates/object-define-properties.js +++ /dev/null @@ -1 +0,0 @@ -Object.defineProperties(OBJECT, PROPS); diff --git a/lib/6to5/transformation/transformers/es6-property-method-assignment.js b/lib/6to5/transformation/transformers/es6-property-method-assignment.js index 743f2b8079..00c4d0fa4b 100644 --- a/lib/6to5/transformation/transformers/es6-property-method-assignment.js +++ b/lib/6to5/transformation/transformers/es6-property-method-assignment.js @@ -62,21 +62,8 @@ exports.ObjectExpression = function (node, parent, file, scope) { if (!hasAny) return; - if (node.properties.length) { - var objId = scope.generateUidBasedOnNode(parent, file); - - return util.template("object-define-properties-closure", { - KEY: objId, - OBJECT: node, - CONTENT: util.template("object-define-properties", { - OBJECT: objId, - PROPS: util.buildDefineProperties(mutatorMap) - }) - }); - } else { - return util.template("object-define-properties", { - OBJECT: node, - PROPS: util.buildDefineProperties(mutatorMap) - }); - } + return t.callExpression( + t.memberExpression(t.identifier("Object"), t.identifier("defineProperties")), + [node, util.buildDefineProperties(mutatorMap)] + ); };