diff options
author | Bernhard Posselt <dev@bernhard-posselt.com> | 2015-03-09 12:09:38 +0100 |
---|---|---|
committer | Bernhard Posselt <dev@bernhard-posselt.com> | 2015-03-09 12:09:38 +0100 |
commit | 3bcea62e8dcb4b5f2e45e6701725e904ad115676 (patch) | |
tree | 839704689a6807322452cf55dac40e852a577c3e /js/vendor/es6-shim | |
parent | 0537cff4ce3d520a0401c5f2d6d7ab73d4f99169 (diff) |
fix feed ordering and fix #744
Diffstat (limited to 'js/vendor/es6-shim')
-rw-r--r-- | js/vendor/es6-shim/.bower.json | 8 | ||||
-rw-r--r-- | js/vendor/es6-shim/CHANGELOG.md | 4 | ||||
-rw-r--r-- | js/vendor/es6-shim/bower.json | 2 | ||||
-rw-r--r-- | js/vendor/es6-shim/component.json | 2 | ||||
-rw-r--r-- | js/vendor/es6-shim/es6-sham.js | 4 | ||||
-rw-r--r-- | js/vendor/es6-shim/es6-sham.min.js | 4 | ||||
-rw-r--r-- | js/vendor/es6-shim/es6-shim.js | 33 | ||||
-rw-r--r-- | js/vendor/es6-shim/es6-shim.map | 2 | ||||
-rw-r--r-- | js/vendor/es6-shim/es6-shim.min.js | 8 | ||||
-rw-r--r-- | js/vendor/es6-shim/package.json | 2 |
10 files changed, 22 insertions, 47 deletions
diff --git a/js/vendor/es6-shim/.bower.json b/js/vendor/es6-shim/.bower.json index 55dffff7b..1b135576c 100644 --- a/js/vendor/es6-shim/.bower.json +++ b/js/vendor/es6-shim/.bower.json @@ -1,6 +1,6 @@ { "name": "es6-shim", - "version": "0.27.0", + "version": "0.27.1", "repo": "paulmillr/es6-shim", "description": "ECMAScript 6 (Harmony) compatibility shims for legacy JavaScript engines", "keywords": [ @@ -28,11 +28,11 @@ "test" ], "homepage": "https://github.com/paulmillr/es6-shim", - "_release": "0.27.0", + "_release": "0.27.1", "_resolution": { "type": "version", - "tag": "0.27.0", - "commit": "9109d000e415c32a88c28fb99ed67400ed425626" + "tag": "0.27.1", + "commit": "dad3f8e9e78f8c0842628ad9558547a3c62382b7" }, "_source": "git://github.com/paulmillr/es6-shim.git", "_target": "~0.*", diff --git a/js/vendor/es6-shim/CHANGELOG.md b/js/vendor/es6-shim/CHANGELOG.md index 23f10335f..37764c76b 100644 --- a/js/vendor/es6-shim/CHANGELOG.md +++ b/js/vendor/es6-shim/CHANGELOG.md @@ -1,5 +1,9 @@ # es6-shim x.x.x (not yet released) +# es6-shim 0.27.1 (5 Mar 2015) +* Revert `Array#slice` changes. (#322) +* Test on `io.js` `v1.4` + # es6-shim 0.27.0 (26 Feb 2015) * Overwrite `Array#slice` so that it supports Array subclasses. * Improve `Map`/`Set` `TypeError` messages when called as a function. (#321) diff --git a/js/vendor/es6-shim/bower.json b/js/vendor/es6-shim/bower.json index 8375cfdd6..9d13578f4 100644 --- a/js/vendor/es6-shim/bower.json +++ b/js/vendor/es6-shim/bower.json @@ -1,6 +1,6 @@ { "name": "es6-shim", - "version": "0.27.0", + "version": "0.27.1", "repo": "paulmillr/es6-shim", "description": "ECMAScript 6 (Harmony) compatibility shims for legacy JavaScript engines", "keywords": [ diff --git a/js/vendor/es6-shim/component.json b/js/vendor/es6-shim/component.json index b4529dca8..a620bc64d 100644 --- a/js/vendor/es6-shim/component.json +++ b/js/vendor/es6-shim/component.json @@ -1,6 +1,6 @@ { "name": "es6-shim", - "version": "0.27.0", + "version": "0.27.1", "repo": "paulmillr/es6-shim", "description": "ECMAScript 6 (Harmony) compatibility shims for legacy JavaScript engines", "keywords": [ diff --git a/js/vendor/es6-shim/es6-sham.js b/js/vendor/es6-shim/es6-sham.js index 9ba963674..59f77493e 100644 --- a/js/vendor/es6-shim/es6-sham.js +++ b/js/vendor/es6-shim/es6-sham.js @@ -2,8 +2,8 @@ * https://github.com/paulmillr/es6-shim * @license es6-shim Copyright 2013-2015 by Paul Miller (http://paulmillr.com) * and contributors, MIT License - * es6-sham: v0.27.0 - * see https://github.com/paulmillr/es6-shim/blob/0.27.0/LICENSE + * es6-sham: v0.27.1 + * see https://github.com/paulmillr/es6-shim/blob/0.27.1/LICENSE * Details and documentation: * https://github.com/paulmillr/es6-shim/ */ diff --git a/js/vendor/es6-shim/es6-sham.min.js b/js/vendor/es6-shim/es6-sham.min.js index a08896693..685a51e0e 100644 --- a/js/vendor/es6-shim/es6-sham.min.js +++ b/js/vendor/es6-shim/es6-sham.min.js @@ -2,8 +2,8 @@ * https://github.com/paulmillr/es6-shim * @license es6-shim Copyright 2013-2015 by Paul Miller (http://paulmillr.com) * and contributors, MIT License - * es6-sham: v0.27.0 - * see https://github.com/paulmillr/es6-shim/blob/0.27.0/LICENSE + * es6-sham: v0.27.1 + * see https://github.com/paulmillr/es6-shim/blob/0.27.1/LICENSE * Details and documentation: * https://github.com/paulmillr/es6-shim/ */ diff --git a/js/vendor/es6-shim/es6-shim.js b/js/vendor/es6-shim/es6-shim.js index 4dc0a61bc..6d2160f12 100644 --- a/js/vendor/es6-shim/es6-shim.js +++ b/js/vendor/es6-shim/es6-shim.js @@ -2,8 +2,8 @@ * https://github.com/paulmillr/es6-shim * @license es6-shim Copyright 2013-2015 by Paul Miller (http://paulmillr.com) * and contributors, MIT License - * es6-shim: v0.27.0 - * see https://github.com/paulmillr/es6-shim/blob/0.27.0/LICENSE + * es6-shim: v0.27.1 + * see https://github.com/paulmillr/es6-shim/blob/0.27.1/LICENSE * Details and documentation: * https://github.com/paulmillr/es6-shim/ */ @@ -85,7 +85,6 @@ var _hasOwnProperty = Function.call.bind(Object.prototype.hasOwnProperty); var ArrayIterator; // make our implementation private var noop = function () {}; - var arraySlice = Array.prototype.slice; var Symbol = globals.Symbol || {}; var symbolSpecies = Symbol.species || '@@species'; @@ -978,34 +977,6 @@ } defineProperties(Array.prototype, ArrayPrototypeShims); - var Empty = function Empty() {}; - if (!(Array.prototype.slice.call(new Empty()) instanceof Empty)) { - defineProperty(Array.prototype, 'slice', function slice(start, end) { - if (this instanceof Array || isArguments(this)) { - return arraySlice.apply(this, arguments); - } - var O = ES.ToObject(this); - var len = ES.ToLength(this.length); - var relativeStart = ES.ToInteger(start); - var k = relativeStart < 0 ? Math.max(len + relativeStart, 0) : Math.min(relativeStart, len); - var relativeEnd = typeof end === 'undefined' ? len : ES.ToInteger(end); - var finalEnd = relativeEnd < 0 ? Math.max(len + relativeEnd, 0) : Math.min(relativeEnd, len); - var count = Math.max(finalEnd - k, 0); - var A = ES.Construct(O.constructor, [count]); - var n = 0; - while (k < finalEnd) { - if (_hasOwnProperty(O, k)) { - A[n] = O[k]; - } - k += 1; - n += 1; - } - A.length = n; - return A; - }, true); - Value.preserveToString(Array.prototype.slice, arraySlice); - } - addIterator(Array.prototype, function () { return this.values(); }); // Chrome defines keys/values/entries on Array, but doesn't give us // any way to identify its iterator. So add our own shimmed field. diff --git a/js/vendor/es6-shim/es6-shim.map b/js/vendor/es6-shim/es6-shim.map index 0fc4156b5..cdf4ade52 100644 --- a/js/vendor/es6-shim/es6-shim.map +++ b/js/vendor/es6-shim/es6-shim.map @@ -1 +1 @@ -{"version":3,"sources":["es6-shim.js"],"names":["root","factory","define","amd","exports","module","returnExports","this","isCallableWithoutNew","func","e","supportsSubclassing","C","f","Sub","apply","arguments","__proto__","Object","setPrototypeOf","prototype","create","constructor","value","arePropertyDescriptorsSupported","defineProperty","startsWithRejectsRegex","rejectsRegex","String","startsWith","getGlobal","Function","globals","global_isFinite","isFinite","supportsDescriptors","startsWithIsCompliant","_indexOf","call","bind","indexOf","_toString","toString","_hasOwnProperty","hasOwnProperty","ArrayIterator","noop","arraySlice","Array","slice","Symbol","symbolSpecies","species","Type","object","x","string","regex","symbol","name","force","configurable","enumerable","writable","Value","getter","TypeError","get","proxy","originalObject","key","targetObject","originalDescriptor","getOwnPropertyDescriptor","getKey","set","setKey","redefine","property","newValue","descriptor","preserveToString","target","source","defineProperties","map","keys","forEach","method","properties","Prototype","$iterator$","iterator","Set","addIterator","impl","o","isArguments","str","result","length","callee","safeApply","ES","Call","F","V","args","IsCallable","RequireObjectCoercible","optMessage","TypeIsObject","ToObject","ToInt32","ToNumber","ToUint32","ToInteger","number","Number","isNaN","Math","floor","abs","ToLength","len","MAX_SAFE_INTEGER","SameValue","a","b","SameValueZero","IsIterable","GetIterator","itFn","it","IteratorNext","next","Construct","obj","_es6construct","CreateHTML","tag","attribute","S","p1","escapedV","replace","p2","p3","emulateES6construct","numberConversion","roundToEven","n","w","packIEEE754","v","ebits","fbits","bias","s","i","bits","bytes","pow","Infinity","min","log","LN2","push","reverse","join","parseInt","unpackIEEE754","j","NaN","unpackFloat64","packFloat64","unpackFloat32","packFloat32","conversions","toFloat32","num","Float32Array","float32array","fromCodePoint","codePoints","RangeError","fromCharCode","raw","callSite","cooked","rawValue","rawString","literalsegments","stringElements","nextIndex","nextKey","nextSeg","nextSub","originalFromCodePoint","stringRepeat","repeat","times","half","stringMaxLength","StringShims","thisStr","searchStr","startArg","start","max","endsWith","thisLen","posArg","pos","end","includes","searchString","position","codePointAt","first","charCodeAt","isEnd","second","hasStringTrimBug","trim","ws","trimRegexp","RegExp","StringIterator","_s","_i","done","substr","ArrayShims","from","iterable","mapFn","list","hasThisArg","thisArg","usingIterator","iterationValue","of","arrayFromSwallowsNegativeLengths","iterator_result","array","kind","retval","ObjectIterator","getAllKeys","shift","ArrayPrototypeShims","copyWithin","to","fin","count","direction","fill","O","relativeStart","relativeEnd","find","predicate","findIndex","values","entries","unscopables","originalArrayPrototypeValues","Empty","k","finalEnd","A","getPrototypeOf","maxSafeInteger","MIN_SAFE_INTEGER","EPSILON","parseFloat","isInteger","isSafeInteger","item","idx","assign","reduce","is","magic","checkArgs","proto","polyfill","FAKENULL","gpo","spo","p","objectKeysAcceptsPrimitives","originalObjectKeys","getOwnPropertyNames","objectGOPNAcceptsPrimitives","originalObjectGetOwnPropertyNames","objectGOPDAcceptsPrimitives","originalObjectGetOwnPropertyDescriptor","seal","objectSealAcceptsPrimitives","originalObjectSeal","isSealed","objectIsSealedAcceptsPrimitives","originalObjectIsSealed","freeze","objectFreezeAcceptsPrimitives","originalObjectFreeze","isFrozen","objectIsFrozenAcceptsPrimitives","originalObjectIsFrozen","preventExtensions","objectPreventExtensionsAcceptsPrimitives","originalObjectPreventExtensions","isExtensible","objectIsExtensibleAcceptsPrimitives","originalObjectIsExtensible","objectGetProtoAcceptsPrimitives","originalGetProto","flags","regExpFlagsGetter","global","ignoreCase","multiline","unicode","sticky","regExpSupportsFlagsWithRegex","OrigRegExp","RegExpShim","pattern","MathShims","acosh","E","sqrt","asinh","atanh","cbrt","negate","clz32","cosh","exp","expm1","t","sum","hypot","y","anyNaN","allZero","anyInfinity","numbers","every","arg","sort","largest","divided","log2","LOG2E","log10","LOG10E","log1p","sign","sinh","tanh","trunc","imul","ah","al","bh","bl","fround","MAX_VALUE","expm1OfTen","roundHandlesBoundaryConditions","round","origMathRound","PromiseShim","Promise","Promise$prototype","IsPromise","promise","_promiseConstructor","_status","PromiseCapability","capability","resolver","resolve","reject","setTimeout","makeZeroTimeout","window","postMessage","timeouts","messageName","setZeroTimeout","fn","handleMessage","event","data","stopPropagation","addEventListener","makePromiseAsap","P","task","then","enqueue","setImmediate","process","nextTick","updatePromiseFromPotentialThenable","triggerPromiseReactions","reactions","reaction","handler","updateResult","promiseResolutionHandler","onFulfilled","onRejected","_resolveReactions","_rejectReactions","resolution","_result","reason","_promiseAllResolver","index","remaining","all","nextPromise","resolveElement","race","rejectPromise","resolvePromise","catch","resolutionHandler","resolveReaction","rejectReaction","accept","defer","chain","promiseSupportsSubclassing","promiseIgnoresNonFunctionThenCallbacks","ex","promiseRequiresObjectContext","testOrder","preservesInsertionOrder","preservesNumericInsertionOrder","fastkey","type","emptyObject","collectionShims","Map","empty","MapEntry","prev","isRemoved","MapIterator","head","_head","_es6map","_storage","_size","adder","nextItem","Map$prototype","fkey","entry","has","delete","clear","callback","context","SetShim","_es6set","[[SetData]]","add","Set$prototype","ensureMap","m","charAt","size","hasFKey","entireSet","M","Reflect","throwUnlessTargetIsObject","construct","deleteProperty","desc","enumerate","ownKeys","getOwnPropertySymbols","callAndCatchException","internal_get","receiver","parent","undefined","internal_set","existingDesc","ConvertExceptionToBoolean","_","propertyKey","attributes","objectDotGetPrototypeOf","willCreateCircularPrototype","Date","dateToString","shimmedDateToString","valueOf","stringHTMLshims","anchor","big","blink","bold","fixed","fontcolor","color","fontsize","italics","link","url","small","strike","sub","sup","shouldOverwrite","output","quotesCount","concat","match","toLowerCase"],"mappings":"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 |