object.assign
Advanced tools
Comparing version 2.0.2 to 3.0.0
@@ -0,1 +1,7 @@ | ||
3.0.0 / 2015-05-20 | ||
================== | ||
* Attempt to feature-detect Symbols, even if `typeof Symbol() !== 'symbol'` (#12) | ||
* Make a separate `hasSymbols` internal module | ||
* Update `browserify`, `eslint` | ||
2.0.2 / 2015-05-20 | ||
@@ -2,0 +8,0 @@ ================== |
(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){ | ||
var keys = require('object-keys'); | ||
module.exports = function hasSymbols() { | ||
if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; } | ||
if (typeof Symbol.iterator === 'symbol') { return true; } | ||
var obj = {}; | ||
var sym = Symbol('test'); | ||
if (typeof sym === 'string') { return false; } | ||
obj[sym] = 42; | ||
for (sym in obj) { return false; } | ||
if (keys(obj).length !== 0) { return false; } | ||
if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; } | ||
if (typeof Object.getOwnPropertyNames === 'function') { | ||
var names = Object.getOwnPropertyNames(obj); | ||
if (names.length !== 0) { return false; } | ||
} | ||
var syms = Object.getOwnPropertySymbols(obj); | ||
if (syms.length !== 1 || syms[0] !== sym) { return false; } | ||
if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; } | ||
if (typeof Object.getOwnPropertyDescriptor === 'function') { | ||
var descriptor = Object.getOwnPropertyDescriptor(obj, sym); | ||
if (descriptor.value !== 42 || descriptor.enumerable !== true) { return false; } | ||
} | ||
return true; | ||
}; | ||
},{"object-keys":5}],2:[function(require,module,exports){ | ||
'use strict'; | ||
@@ -9,3 +42,3 @@ | ||
}; | ||
var hasSymbols = typeof Symbol === 'function' && typeof Symbol() === 'symbol'; | ||
var hasSymbols = require('./hasSymbols')(); | ||
var defineProperties = require('define-properties'); | ||
@@ -63,3 +96,3 @@ var propIsEnumerable = Object.prototype.propertyIsEnumerable; | ||
},{"define-properties":2,"object-keys":4}],2:[function(require,module,exports){ | ||
},{"./hasSymbols":1,"define-properties":3,"object-keys":5}],3:[function(require,module,exports){ | ||
'use strict'; | ||
@@ -114,3 +147,3 @@ | ||
},{"foreach":3,"object-keys":4}],3:[function(require,module,exports){ | ||
},{"foreach":4,"object-keys":5}],4:[function(require,module,exports){ | ||
@@ -139,3 +172,3 @@ var hasOwn = Object.prototype.hasOwnProperty; | ||
},{}],4:[function(require,module,exports){ | ||
},{}],5:[function(require,module,exports){ | ||
'use strict'; | ||
@@ -211,3 +244,3 @@ | ||
},{"./isArguments":5}],5:[function(require,module,exports){ | ||
},{"./isArguments":6}],6:[function(require,module,exports){ | ||
'use strict'; | ||
@@ -231,3 +264,3 @@ | ||
},{}],6:[function(require,module,exports){ | ||
},{}],7:[function(require,module,exports){ | ||
var keys = require('object-keys').shim(); | ||
@@ -242,2 +275,2 @@ delete keys.shim; | ||
},{"./":1,"object-keys":4}]},{},[6]); | ||
},{"./":2,"object-keys":5}]},{},[7]); |
@@ -8,3 +8,3 @@ 'use strict'; | ||
}; | ||
var hasSymbols = typeof Symbol === 'function' && typeof Symbol() === 'symbol'; | ||
var hasSymbols = require('./hasSymbols')(); | ||
var defineProperties = require('define-properties'); | ||
@@ -11,0 +11,0 @@ var propIsEnumerable = Object.prototype.propertyIsEnumerable; |
{ | ||
"name": "object.assign", | ||
"version": "2.0.2", | ||
"version": "3.0.0", | ||
"author": "Jordan Harband", | ||
@@ -9,3 +9,4 @@ "description": "ES6 spec-compliant Object.assign shim. From https://github.com/es-shims/es6-shim", | ||
"scripts": { | ||
"test": "npm run lint && node test/index.js && npm run security", | ||
"test": "npm run lint && node test/index.js && npm run test:symbol-shim && npm run security", | ||
"test:symbol-shim": "node test/symbolShim.js", | ||
"coverage": "covert test/*.js", | ||
@@ -39,3 +40,3 @@ "coverage:quiet": "covert test/*.js --quiet", | ||
"devDependencies": { | ||
"browserify": "^10.1.3", | ||
"browserify": "^10.2.1", | ||
"is": "^3.0.1", | ||
@@ -46,3 +47,4 @@ "tape": "^4.0.0", | ||
"nsp": "^1.0.1", | ||
"eslint": "^0.21.0" | ||
"eslint": "^0.21.2", | ||
"get-own-property-symbols": "^0.5.0" | ||
}, | ||
@@ -49,0 +51,0 @@ "testling": { |
var test = require('tape'); | ||
var assign = require('../index.js'); | ||
var hasSymbols = typeof Symbol === 'function' && typeof Symbol() === 'symbol'; | ||
var assign = require('../'); | ||
var hasSymbols = require('../hasSymbols')(); | ||
@@ -5,0 +5,0 @@ test('error cases', function (t) { |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
31466
10
470
8