can-assign
Advanced tools
Comparing version 1.3.0 to 1.3.1
@@ -1,2 +0,1 @@ | ||
"use strict"; | ||
var stealTools = require("steal-tools"); | ||
@@ -14,7 +13,7 @@ | ||
}).catch(function(e){ | ||
setTimeout(function(){ | ||
throw e; | ||
},1); | ||
}); |
@@ -16,1 +16,39 @@ var assign = require('./can-assign'); | ||
}); | ||
QUnit.test("Works with readonly properties", function(){ | ||
var obj = {}; | ||
Object.defineProperty(obj, "a", { | ||
value: "a", | ||
writable: false | ||
}); | ||
Object.defineProperty(obj, "b", { | ||
value: "b", | ||
writable: true | ||
}); | ||
Object.defineProperty(obj, "c", { | ||
get: function() { return "c"; }, | ||
set: function(value) { this.b = value; }, | ||
configurable: true | ||
}); | ||
try { | ||
assign(obj, {a:"c", b:"f", d: "d"}); | ||
QUnit.equal(obj.a, "a"); | ||
QUnit.equal(obj.b, "f"); | ||
QUnit.equal(obj.c, "c"); | ||
QUnit.equal(obj.d, "d"); | ||
assign(obj, {c:"h"}); | ||
QUnit.equal(obj.a, "a"); | ||
QUnit.equal(obj.b, "h"); | ||
QUnit.equal(obj.c, "c"); | ||
QUnit.equal(obj.d, "d"); | ||
} catch(err) { | ||
QUnit.ok(false, err); | ||
} | ||
}); |
@@ -1,3 +0,1 @@ | ||
"use strict"; | ||
var namespace = require("can-namespace"); | ||
@@ -33,5 +31,8 @@ | ||
for (var prop in s) { | ||
d[prop] = s[prop]; | ||
var desc = Object.getOwnPropertyDescriptor(d,prop); | ||
if(!desc || desc.writable !== false){ | ||
d[prop] = s[prop]; | ||
} | ||
} | ||
return d; | ||
}; |
@@ -1,2 +0,2 @@ | ||
/*can-assign@1.2.0#can-assign*/ | ||
/*can-assign@1.3.0#can-assign*/ | ||
define([ | ||
@@ -8,7 +8,9 @@ 'require', | ||
], function (require, exports, module) { | ||
'use strict'; | ||
var namespace = require('can-namespace'); | ||
module.exports = namespace.assign = function (d, s) { | ||
for (var prop in s) { | ||
d[prop] = s[prop]; | ||
var desc = Object.getOwnPropertyDescriptor(d, prop); | ||
if (!desc || desc.writable !== false) { | ||
d[prop] = s[prop]; | ||
} | ||
} | ||
@@ -15,0 +17,0 @@ return d; |
@@ -1,9 +0,11 @@ | ||
/*can-assign@1.2.0#can-assign*/ | ||
'use strict'; | ||
/*can-assign@1.3.0#can-assign*/ | ||
var namespace = require('can-namespace'); | ||
module.exports = namespace.assign = function (d, s) { | ||
for (var prop in s) { | ||
d[prop] = s[prop]; | ||
var desc = Object.getOwnPropertyDescriptor(d, prop); | ||
if (!desc || desc.writable !== false) { | ||
d[prop] = s[prop]; | ||
} | ||
} | ||
return d; | ||
}; |
@@ -167,3 +167,3 @@ /*[process-shim]*/ | ||
/*can-assign@1.2.0#can-assign*/ | ||
/*can-assign@1.3.0#can-assign*/ | ||
define('can-assign', [ | ||
@@ -175,7 +175,9 @@ 'require', | ||
], function (require, exports, module) { | ||
'use strict'; | ||
var namespace = require('can-namespace'); | ||
module.exports = namespace.assign = function (d, s) { | ||
for (var prop in s) { | ||
d[prop] = s[prop]; | ||
var desc = Object.getOwnPropertyDescriptor(d, prop); | ||
if (!desc || desc.writable !== false) { | ||
d[prop] = s[prop]; | ||
} | ||
} | ||
@@ -182,0 +184,0 @@ return d; |
{ | ||
"name": "can-assign", | ||
"version": "1.3.0", | ||
"version": "1.3.1", | ||
"description": "A simplified version of Object.assign, which only accepts a single source argument.", | ||
@@ -5,0 +5,0 @@ "homepage": "https://canjs.com/", |
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
16299
300
1