add symbol check to defineProperty helper - fixes #1010
This commit is contained in:
parent
29d33dd31a
commit
8d3a7acbd1
@ -1,7 +1,7 @@
|
||||
(function (obj, key, value) {
|
||||
return Object.defineProperty(obj, key, {
|
||||
value: value,
|
||||
enumerable: true,
|
||||
enumerable: key == null || typeof Symbol == "undefined" || key.constructor !== Symbol,
|
||||
configurable: true,
|
||||
writable: true
|
||||
});
|
||||
|
||||
@ -1,5 +1,3 @@
|
||||
"use strict";
|
||||
|
||||
var _defineProperty = function (obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); };
|
||||
|
||||
foo(_defineProperty({}, bar, "foobar"));
|
||||
foo(babelHelpers.defineProperty({}, bar, "foobar"));
|
||||
|
||||
@ -1,5 +1,3 @@
|
||||
"use strict";
|
||||
|
||||
var _defineProperty = function (obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); };
|
||||
|
||||
foo = _defineProperty({}, bar, "foobar");
|
||||
foo = babelHelpers.defineProperty({}, bar, "foobar");
|
||||
|
||||
@ -1,7 +1,5 @@
|
||||
"use strict";
|
||||
|
||||
var _defineProperty = function (obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); };
|
||||
|
||||
var obj = _defineProperty({}, foobar, function () {
|
||||
var obj = babelHelpers.defineProperty({}, foobar, function () {
|
||||
return "foobar";
|
||||
});
|
||||
});
|
||||
|
||||
@ -1,17 +1,10 @@
|
||||
"use strict";
|
||||
|
||||
var _defineProperty = function (obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); };
|
||||
|
||||
var obj = (function () {
|
||||
var _obj = {};
|
||||
|
||||
_defineProperty(_obj, "x" + foo, "heh");
|
||||
|
||||
_defineProperty(_obj, "y" + bar, "noo");
|
||||
|
||||
_defineProperty(_obj, "foo", "foo");
|
||||
|
||||
_defineProperty(_obj, "bar", "bar");
|
||||
|
||||
babelHelpers.defineProperty(_obj, "x" + foo, "heh");
|
||||
babelHelpers.defineProperty(_obj, "y" + bar, "noo");
|
||||
babelHelpers.defineProperty(_obj, "foo", "foo");
|
||||
babelHelpers.defineProperty(_obj, "bar", "bar");
|
||||
return _obj;
|
||||
})();
|
||||
})();
|
||||
|
||||
@ -1,13 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
var _defineProperty = function (obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); };
|
||||
|
||||
var obj = (function () {
|
||||
var _obj = {};
|
||||
|
||||
_defineProperty(_obj, "x" + foo, "heh");
|
||||
|
||||
_defineProperty(_obj, "y" + bar, "noo");
|
||||
|
||||
babelHelpers.defineProperty(_obj, "x" + foo, "heh");
|
||||
babelHelpers.defineProperty(_obj, "y" + bar, "noo");
|
||||
return _obj;
|
||||
})();
|
||||
})();
|
||||
|
||||
3
test/fixtures/transformation/es6-properties.computed/options.json
vendored
Normal file
3
test/fixtures/transformation/es6-properties.computed/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"externalHelpers": true
|
||||
}
|
||||
@ -1,5 +1,3 @@
|
||||
"use strict";
|
||||
|
||||
var _defineProperty = function (obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); };
|
||||
|
||||
var obj = _defineProperty({}, "x" + foo, "heh");
|
||||
var obj = babelHelpers.defineProperty({}, "x" + foo, "heh");
|
||||
|
||||
@ -1,5 +1,3 @@
|
||||
"use strict";
|
||||
|
||||
var _defineProperty = function (obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); };
|
||||
|
||||
var obj = _defineProperty({}, "x" + foo.bar, "heh");
|
||||
var obj = babelHelpers.defineProperty({}, "x" + foo.bar, "heh");
|
||||
|
||||
@ -1,6 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
var _defineProperty = function (obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); };
|
||||
|
||||
var obj = _defineProperty({
|
||||
first: "first" }, "second", "second");
|
||||
var obj = babelHelpers.defineProperty({
|
||||
first: "first" }, "second", "second");
|
||||
|
||||
@ -1,5 +1,3 @@
|
||||
"use strict";
|
||||
|
||||
var _defineProperty = function (obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); };
|
||||
|
||||
var foo = _defineProperty({}, bar, "foobar");
|
||||
var foo = babelHelpers.defineProperty({}, bar, "foobar");
|
||||
|
||||
@ -1,10 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
var _defineProperty = function (obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); };
|
||||
|
||||
var x = "y";
|
||||
var valueSet;
|
||||
var obj = Object.defineProperties({}, _defineProperty({}, x, {
|
||||
var obj = Object.defineProperties({}, babelHelpers.defineProperty({}, x, {
|
||||
get: function () {
|
||||
return 1;
|
||||
},
|
||||
@ -15,4 +13,4 @@ var obj = Object.defineProperties({}, _defineProperty({}, x, {
|
||||
enumerable: true
|
||||
}));
|
||||
obj.y = "foo";
|
||||
obj.y === 1 && valueSet === "foo";
|
||||
obj.y === 1 && valueSet === "foo";
|
||||
|
||||
3
test/fixtures/transformation/es6-properties.shorthand/method-computed/options.json
vendored
Normal file
3
test/fixtures/transformation/es6-properties.shorthand/method-computed/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"externalHelpers": true
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user