diff --git a/dist/lodash.underscore.js b/dist/lodash.underscore.js index 32ce69e61..1aed620b0 100644 --- a/dist/lodash.underscore.js +++ b/dist/lodash.underscore.js @@ -3,7 +3,7 @@ * Lo-Dash 3.0.0-pre (Custom Build) * Build: `lodash underscore -o ./dist/lodash.underscore.js` * Copyright 2012-2014 The Dojo Foundation - * Based on Underscore.js 1.6.0 + * Based on Underscore.js 1.7.0 * Copyright 2009-2014 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors * Available under MIT license */ @@ -655,6 +655,30 @@ return false; } + /** + * The base implementation of `_.assign` without support for argument juggling, + * multiple sources, and `this` binding. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @param {Function} [customizer] The function to customize assigning values. + * @returns {Object} Returns the destination object. + */ + function baseAssign(object, source, customizer) { + var index = -1, + props = keys(source), + length = props.length; + + while (++index < length) { + var key = props[index]; + object[key] = customizer + ? customizer(object[key], source[key], key, object, source) + : source[key]; + } + return object; + } + /** * The base implementation of `_.bindAll` without support for individual * method name arguments. @@ -1215,7 +1239,7 @@ if (func) { var arity = func.length; - arity -= args.length; + arity = nativeMax(arity - args.length, 0); } return (bitmask & PARTIAL_FLAG) ? createWrapper(func, bitmask, arity, thisArg, args, holders) @@ -4064,18 +4088,48 @@ */ function memoize(func, resolver) { if (!isFunction(func) || (resolver && !isFunction(resolver))) { - throw new TypeError(funcErrorText); + throw new TypeError(FUNC_ERROR_TEXT); } - var cache = {}; - return function() { + var memoized = function() { var key = resolver ? resolver.apply(this, arguments) : arguments[0]; if (key == '__proto__') { return func.apply(this, arguments); } + var cache = memoized.cache; return hasOwnProperty.call(cache, key) ? cache[key] : (cache[key] = func.apply(this, arguments)); }; + memoized.cache = {}; + return memoized; + } + + /** + * Creates a function that negates the result of the predicate `func`. The + * `func` predicate is invoked with the `this` binding and arguments of the + * created function. + * + * @static + * @memberOf _ + * @category Function + * @param {Function} predicate The predicate to negate. + * @returns {Function} Returns the new function. + * @example + * + * function isEven(n) { + * return n % 2 == 0; + * } + * + * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven)); + * // => [1, 3, 5] + */ + function negate(predicate) { + if (!isFunction(predicate)) { + throw new TypeError(FUNC_ERROR_TEXT); + } + return function() { + return !predicate.apply(this, arguments); + }; } /** @@ -4252,10 +4306,7 @@ length = 2; } while (++index < length) { - var source = args[index]; - for (var key in source) { - object[key] = source[key]; - } + baseAssign(object, args[index]); } return object; } @@ -4975,14 +5026,19 @@ * }); * // => { 'name': 'fred' } */ - function omit(object) { + function omit(object, predicate, thisArg) { if (object == null) { return {}; } - var iterable = toObject(object), - props = arrayMap(baseFlatten(arguments, false, false, 1), String); - - return pickByArray(iterable, baseDifference(keysIn(iterable), props)); + var iterable = toObject(object); + if (typeof predicate != 'function') { + var props = arrayMap(baseFlatten(arguments, false, false, 1), String); + return pickByArray(iterable, baseDifference(keysIn(iterable), props)); + } + predicate = baseCallback(predicate, thisArg, 3); + return pickByCallback(iterable, function(value, key, object) { + return !predicate(value, key, object); + }); } /** @@ -5039,10 +5095,14 @@ * }); * // => { 'name': 'fred' } */ - function pick(object) { - return object == null - ? {} - : pickByArray(toObject(object), baseFlatten(arguments, false, false, 1)); + function pick(object, predicate, thisArg) { + if (object == null) { + return {}; + } + var iterable = toObject(object); + return typeof predicate == 'function' + ? pickByCallback(iterable, baseCallback(predicate, thisArg, 3)) + : pickByArray(iterable, baseFlatten(arguments, false, false, 1)); } /** @@ -5217,12 +5277,12 @@ * };\ * '); */ - function template(string, data, options) { + function template(string, options, otherOptions) { var _ = lodash, settings = _.templateSettings; string = String(string == null ? '' : string); - options = defaults({}, options, settings); + options = defaults({}, otherOptions || options, settings); var index = 0, source = "__p += '", @@ -5267,7 +5327,7 @@ if (isError(result)) { throw result; } - return data ? result(data) : result; + return result; } /** @@ -5325,6 +5385,44 @@ } } + /** + * Creates a function bound to an optional `thisArg`. If `func` is a property + * name the created callback returns the property value for a given element. + * If `func` is an object the created callback returns `true` for elements + * that contain the equivalent object properties, otherwise it returns `false`. + * + * @static + * @memberOf _ + * @alias iteratee + * @category Utility + * @param {*} [func=identity] The value to convert to a callback. + * @param {*} [thisArg] The `this` binding of the created callback. + * @returns {Function} Returns the new function. + * @example + * + * var characters = [ + * { 'name': 'barney', 'age': 36 }, + * { 'name': 'fred', 'age': 40 } + * ]; + * + * // wrap to create custom callback shorthands + * _.callback = _.wrap(_.callback, function(callback, func, thisArg) { + * var match = /^(.+?)__([gl]t)(.+)$/.exec(func); + * if (!match) { + * return callback(func, thisArg); + * } + * return function(object) { + * return match[2] == 'gt' ? object[match[1]] > match[3] : object[match[1]] < match[3]; + * }; + * }); + * + * _.filter(characters, 'age__gt38'); + * // => [{ 'name': 'fred', 'age': 40 }] + */ + function callback(func, thisArg) { + return baseCallback(func, thisArg); + } + /** * Creates a function that returns `value`. * @@ -5486,6 +5584,22 @@ return this; } + /** + * A no-operation function. + * + * @static + * @memberOf _ + * @category Utility + * @example + * + * var object = { 'name': 'fred' }; + * _.noop(object) === undefined; + * // => true + */ + function noop() { + // no operation performed + } + /** * Gets the number of milliseconds that have elapsed since the Unix epoch * (1 January 1970 00:00:00 UTC). @@ -5745,6 +5859,7 @@ // add functions that return wrapped values when chaining lodash.after = after; + lodash.before = before; lodash.bind = bind; lodash.bindAll = bindAll; lodash.chain = chain; @@ -5772,6 +5887,7 @@ lodash.matches = matches; lodash.memoize = memoize; lodash.mixin = mixin; + lodash.negate = negate; lodash.omit = omit; lodash.once = once; lodash.pairs = pairs; @@ -5803,6 +5919,7 @@ lodash.compose = flowRight; lodash.each = forEach; lodash.extend = assign; + lodash.iteratee = callback; lodash.methods = functions; lodash.object = zipObject; lodash.select = filter; @@ -5843,6 +5960,7 @@ lodash.max = max; lodash.min = min; lodash.noConflict = noConflict; + lodash.noop = noop; lodash.now = now; lodash.random = random; lodash.reduce = reduce; diff --git a/dist/lodash.underscore.min.js b/dist/lodash.underscore.min.js index b0144d385..4664e881d 100644 --- a/dist/lodash.underscore.min.js +++ b/dist/lodash.underscore.min.js @@ -1,45 +1,45 @@ /** * @license - * Lo-Dash 3.0.0-pre (Custom Build) lodash.com/license | Underscore.js 1.6.0 underscorejs.org/LICENSE + * Lo-Dash 3.0.0-pre (Custom Build) lodash.com/license | Underscore.js 1.7.0 underscorejs.org/LICENSE * Build: `lodash underscore -o ./dist/lodash.underscore.js` */ -;(function(){function n(n,r,t){t=(t||0)-1;for(var e=n?n.length:0;++te||typeof t=="undefined"){t=1;break n}if(tu(r,i)&&o.push(i)}return o}function b(n,r){var t=n?n.length:0;if(typeof t!="number"||-1>=t||t>Br){for(var t=-1,e=Nt(n),u=e.length;++t=t||t>Br){for(var t=Nt(n),e=t.length;e--;){var u=t[e];if(r(n[u],u,n)===Fr)break}return n}for(e=z(n);t--&&r(e[t],t,e)!==Fr;);return n -}function d(n,r){var t=true;return b(n,function(n,e,u){return(t=!!r(n,e,u))||Fr}),t}function j(n,r){var t=[];return b(n,function(n,e,u){r(n,e,u)&&t.push(n)}),t}function w(n,r,t){var e;return t(n,function(n,t,u){return r(n,t,u)?(e=n,Fr):void 0}),e}function A(n,r,t,e){e=(e||0)-1;for(var u=n.length,o=-1,i=[];++ee(i,f)&&(r&&i.push(f),o.push(a))}return o}function M(n,r){return function(t,e,u){var o=r?r():{};if(e=v(e,u,3),$t(t)){u=-1;for(var i=t.length;++ur?0:r)}function P(r,t,e){var u=r?r.length:0;if(typeof e=="number")e=0>e?At(u+e,0):e||0;else if(e)return e=H(r,t),u&&r[e]===t?e:-1; -return n(r,t,e)}function V(n,r,t){return G(n,null==r||t?1:0>r?0:r)}function G(n,t,e){var u=-1,o=n?n.length:0;if(t=null==t?0:+t||0,0>t&&(t=-t>o?0:o+t),e=typeof e=="undefined"||e>o?o:+e||0,0>e&&(e+=o),e&&e==o&&!t)return r(n);for(o=t>e?0:e-t,e=Array(o);++u>>1,a=t(n[i]),f=au&&(u=i)}else r=v(r,t,3),b(n,function(n,t,o){t=r(n,t,o),(t>e||-1/0===t&&t===u)&&(e=t,u=n)});return u}function rr(n,r){return Z(n,Er(r))}function tr(n,r,t,e){return($t(n)?s:S)(n,v(r,e,4),t,3>arguments.length,b)}function er(n,r,t,e){return($t(n)?g:S)(n,v(r,e,4),t,3>arguments.length,_)}function ur(n){n=z(n);for(var r=-1,t=n.length,e=Array(t);++rarguments.length?R(n,kr,r):O(n,kr|Ir,G(arguments,2),[],r)}function ar(n,r,t){function e(){var t=r-(Rt()-c);0>=t||t>r?(a&&clearTimeout(a),t=s,a=p=s=Or,t&&(g=Rt(),f=n.apply(l,i),p||a||(i=l=null))):p=setTimeout(e,t)}function u(){p&&clearTimeout(p),a=p=s=Or,(v||h!==r)&&(g=Rt(),f=n.apply(l,i),p||a||(i=l=null))}function o(){if(i=arguments,c=Rt(),l=this,s=v&&(p||!y),false===h)var t=y&&!p;else{a||y||(g=c);var o=h-(c-g),m=0>=o||o>h;m?(a&&(a=clearTimeout(a)),g=c,f=n.apply(l,i)):a||(a=setTimeout(u,o)) -}return m&&p?p=clearTimeout(p):p||r===h||(p=setTimeout(e,r)),t&&(m=true,f=n.apply(l,i)),!m||p||a||(i=l=null),f}var i,a,f,c,l,p,s,g=0,h=false,v=true;if(!hr(n))throw new TypeError(Mr);if(r=0>r?0:r,true===t)var y=true,v=false;else vr(t)&&(y=t.leading,h="maxWait"in t&&At(+t.maxWait||0,r),v="trailing"in t?t.trailing:v);return o.cancel=function(){p&&clearTimeout(p),a&&clearTimeout(a),a=p=s=Or},o}function fr(n){for(var r=G(arguments,1),t=r,e=fr.placeholder,u=-1,o=t.length,i=-1,a=[];++u"'`]/g,Wr=/^\[object .+?Constructor\]$/,Dr=/($^)/,zr=/[.*+?^${}()|[\]\/\\]/g,Cr=/['\n\r\u2028\u2029\\]/g,Pr="[object Arguments]",Vr="[object Boolean]",Gr="[object Date]",Hr="[object Error]",Jr="[object Number]",Kr="[object Object]",Lr="[object RegExp]",Qr="[object String]",Xr={}; -Xr[Pr]=Xr["[object Array]"]=Xr["[object Float32Array]"]=Xr["[object Float64Array]"]=Xr["[object Int8Array]"]=Xr["[object Int16Array]"]=Xr["[object Int32Array]"]=Xr["[object Uint8Array]"]=Xr["[object Uint8ClampedArray]"]=Xr["[object Uint16Array]"]=Xr["[object Uint32Array]"]=true,Xr["[object ArrayBuffer]"]=Xr[Vr]=Xr[Gr]=Xr[Hr]=Xr["[object Function]"]=Xr["[object Map]"]=Xr[Jr]=Xr[Kr]=Xr[Lr]=Xr["[object Set]"]=Xr[Qr]=Xr["[object WeakMap]"]=false;var Yr={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},Zr={"&":"&","<":"<",">":">",""":'"',"'":"'","`":"`"},nt={"function":true,object:true},rt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},tt=nt[typeof window]&&window||this,et=nt[typeof exports]&&exports&&!exports.nodeType&&exports,ut=nt[typeof module]&&module&&!module.nodeType&&module,ot=et&&ut&&typeof global=="object"&&global; -!ot||ot.global!==ot&&ot.window!==ot&&ot.self!==ot||(tt=ot);var it=ut&&ut.exports===et&&et,at=Array.prototype,ft=Object.prototype,ct=Function.prototype.toString,lt=ft.hasOwnProperty,pt=tt._,st=ft.toString,gt=RegExp("^"+function(n){return n=null==n?"":n+"",zr.lastIndex=0,zr.test(n)?n.replace(zr,"\\$&"):n}(st).replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ht=Math.ceil,vt=Math.floor,yt=at.push,mt=ft.propertyIsEnumerable,bt=at.splice,_t=yr(_t=Object.create)&&_t,dt=yr(dt=Array.isArray)&&dt,jt=tt.isFinite,wt=yr(wt=Object.keys)&&wt,At=Math.max,xt=Math.min,Tt=yr(Tt=Date.now)&&Tt,Et=Math.random,Ot={}; -!function(){var n={0:1,length:1};Ot.spliceObjects=(bt.call(n,0,1),!n[0])}(0,0),i.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,variable:""},_t||(y=function(){function n(){}return function(r){if(vr(r)){n.prototype=r;var t=new n;n.prototype=null}return t||tt.Object()}}());var kt=V,St=C,It=M(function(n,r,t){lt.call(n,t)?++n[t]:n[t]=1}),Ft=M(function(n,r,t){lt.call(n,t)?n[t].push(r):n[t]=[r]}),Mt=M(function(n,r,t){n[t]=r}),qt=M(function(n,r,t){n[t?0:1].push(r) -},function(){return[[],[]]}),Bt=fr(function(n,r){var t;if(!hr(r))throw new TypeError(Mr);return function(){return 0<--n?t=r.apply(this,arguments):r=null,t}},2);sr(arguments)||(sr=function(n){var r=n&&typeof n=="object"?n.length:Or;return typeof r=="number"&&-1--n?r.apply(this,arguments):void 0}},i.bind=ir,i.bindAll=function(n){for(var r=n,t=1r?0:r)},i.intersection=function(){for(var n=[],r=-1,t=arguments.length;++ri(f,e)){for(r=t;--r;)if(0>i(n[r],e))continue n; -f.push(e)}return f},i.invert=function(n){for(var r=-1,t=Nt(n),e=t.length,u={};++ro?0:o>>>0); -for(r=v(r,e,3),b(n,function(n,t,e){i[++u]={a:r(n,t,e),b:u,c:n}}),o=i.length,i.sort(t);o--;)i[o]=i[o].c;return i},i.take=St,i.tap=function(n,r){return r(n),n},i.throttle=function(n,r,t){var e=true,u=true;if(!hr(n))throw new TypeError(funcErrorText);return false===t?e=false:vr(t)&&(e="leading"in t?t.leading:e,u="trailing"in t?t.trailing:u),ar(n,r,{leading:e,maxWait:r,trailing:u})},i.times=function(n,r,t){n=jt(n=+n)&&-1r)return function(){}; -if(!c(n,hr))throw new TypeError(Mr);return function(){for(var t=r,e=n[t].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},i.each=Y,i.extend=cr,i.methods=pr,i.object=function(n,r){var t=-1,e=n?n.length:0,u={};for(r||!e||$t(n[0])||(r=[]);++tr?0:r))},i.lastIndexOf=function(n,r,t){var e=n?n.length:0;for(typeof t=="number"&&(e=(0>t?At(e+t,0):xt(t||0,e-1))+1);e--;)if(n[e]===r)return e; -return-1},i.max=nr,i.min=function(n,r,t){var e=1/0,u=e,o=typeof r;if("number"!=o&&"string"!=o||!t||t[r]!==n||(r=null),null==r)for(t=-1,n=z(n),o=n.length;++tr?0:+r||0,n.length),n) -},Tr(cr({},i)),i.VERSION="3.0.0-pre",i.prototype.chain=function(){return this.__chain__=true,this},i.prototype.value=function(){return this.__wrapped__},f("pop push reverse shift sort splice unshift".split(" "),function(n){var r=at[n];i.prototype[n]=function(){var n=this.__wrapped__;return r.apply(n,arguments),Ot.spliceObjects||0!==n.length||delete n[0],this}}),f(["concat","join","slice"],function(n){var r=at[n];i.prototype[n]=function(){var n=r.apply(this.__wrapped__,arguments);return this.__chain__&&(n=new a(n),n.__chain__=true),n -}}),typeof define=="function"&&typeof define.amd=="object"&&define.amd?(tt._=i, define("underscore",function(){return i})):et&&ut?it?(ut.exports=i)._=i:et._=i:tt._=i}).call(this); \ No newline at end of file +;(function(){function n(n,r,t){t=(t||0)-1;for(var e=n?n.length:0;++te||typeof t=="undefined"){t=1;break n}if(tu(r,i)&&o.push(i)}return o}function b(n,r){var t=n?n.length:0;if(typeof t!="number"||-1>=t||t>Ur)return x(n,r,Dt);for(var e=-1,u=V(n);++e=t||t>Ur){for(var t=Dt(n),e=t.length;e--;){var u=t[e];if(r(n[u],u,n)===$r)break}return n}for(e=V(n);t--&&r(e[t],t,e)!==$r;);return n}function d(n,r){var t=true;return b(n,function(n,e,u){return(t=!!r(n,e,u))||$r +}),t}function j(n,r){var t=[];return b(n,function(n,e,u){r(n,e,u)&&t.push(n)}),t}function w(n,r,t){var e;return t(n,function(n,t,u){return r(n,t,u)?(e=n,$r):void 0}),e}function A(n,r,t,e){e=(e||0)-1;for(var u=n.length,o=-1,i=[];++ee(i,a)&&(r&&i.push(a),o.push(f))}return o}function B(n,r){return function(t,e,u){var o=r?r():{};if(e=v(e,u,3),Wt(t)){u=-1; +for(var i=t.length;++ur?0:r) +}function H(r,t,e){var u=r?r.length:0;if(typeof e=="number")e=0>e?Ot(u+e,0):e||0;else if(e)return e=L(r,t),u&&r[e]===t?e:-1;return n(r,t,e)}function J(n,r,t){return K(n,null==r||t?1:0>r?0:r)}function K(n,t,e){var u=-1,o=n?n.length:0;if(t=null==t?0:+t||0,0>t&&(t=-t>o?0:o+t),e=typeof e=="undefined"||e>o?o:+e||0,0>e&&(e+=o),e&&e==o&&!t)return r(n);for(o=t>e?0:e-t,e=Array(o);++u>>1,f=t(n[i]),a=fu&&(u=i)}else r=v(r,t,3),b(n,function(n,t,o){t=r(n,t,o),(t>e||-1/0===t&&t===u)&&(e=t,u=n)});return u}function ur(n,r){return tr(n,Ir(r))}function or(n,r,t,e){return(Wt(n)?s:F)(n,v(r,e,4),t,3>arguments.length,b)}function ir(n,r,t,e){return(Wt(n)?g:F)(n,v(r,e,4),t,3>arguments.length,_)}function fr(n){n=V(n);for(var r=-1,t=n.length,e=Array(t);++rarguments.length?W(n,Mr,r):S(n,Mr|Br,K(arguments,2),[],r)}function pr(n,r,t){function e(){var t=r-(zt()-c);0>=t||t>r?(f&&clearTimeout(f),t=s,f=p=s=Fr,t&&(g=zt(),a=n.apply(l,i),p||f||(i=l=null))):p=setTimeout(e,t)}function u(){p&&clearTimeout(p),f=p=s=Fr,(v||h!==r)&&(g=zt(),a=n.apply(l,i),p||f||(i=l=null))}function o(){if(i=arguments,c=zt(),l=this,s=v&&(p||!y),false===h)var t=y&&!p; +else{f||y||(g=c);var o=h-(c-g),m=0>=o||o>h;m?(f&&(f=clearTimeout(f)),g=c,a=n.apply(l,i)):f||(f=setTimeout(u,o))}return m&&p?p=clearTimeout(p):p||r===h||(p=setTimeout(e,r)),t&&(m=true,a=n.apply(l,i)),!m||p||f||(i=l=null),a}var i,f,a,c,l,p,s,g=0,h=false,v=true;if(!br(n))throw new TypeError(Nr);if(r=0>r?0:r,true===t)var y=true,v=false;else _r(t)&&(y=t.leading,h="maxWait"in t&&Ot(+t.maxWait||0,r),v="trailing"in t?t.trailing:v);return o.cancel=function(){p&&clearTimeout(p),f&&clearTimeout(f),f=p=s=Fr},o}function sr(n){for(var r=K(arguments,1),t=r,e=sr.placeholder,u=-1,o=t.length,i=-1,f=[];++u"'`]/g,Pr=/^\[object .+?Constructor\]$/,Vr=/($^)/,Gr=/[.*+?^${}()|[\]\/\\]/g,Hr=/['\n\r\u2028\u2029\\]/g,Jr="[object Arguments]",Kr="[object Boolean]",Lr="[object Date]",Qr="[object Error]",Xr="[object Number]",Yr="[object Object]",Zr="[object RegExp]",nt="[object String]",rt={}; +rt[Jr]=rt["[object Array]"]=rt["[object Float32Array]"]=rt["[object Float64Array]"]=rt["[object Int8Array]"]=rt["[object Int16Array]"]=rt["[object Int32Array]"]=rt["[object Uint8Array]"]=rt["[object Uint8ClampedArray]"]=rt["[object Uint16Array]"]=rt["[object Uint32Array]"]=true,rt["[object ArrayBuffer]"]=rt[Kr]=rt[Lr]=rt[Qr]=rt["[object Function]"]=rt["[object Map]"]=rt[Xr]=rt[Yr]=rt[Zr]=rt["[object Set]"]=rt[nt]=rt["[object WeakMap]"]=false;var tt={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},et={"&":"&","<":"<",">":">",""":'"',"'":"'","`":"`"},ut={"function":true,object:true},ot={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},it=ut[typeof window]&&window||this,ft=ut[typeof exports]&&exports&&!exports.nodeType&&exports,at=ut[typeof module]&&module&&!module.nodeType&&module,ct=ft&&at&&typeof global=="object"&&global; +!ct||ct.global!==ct&&ct.window!==ct&&ct.self!==ct||(it=ct);var lt=at&&at.exports===ft&&ft,pt=Array.prototype,st=Object.prototype,gt=Function.prototype.toString,ht=st.hasOwnProperty,vt=it._,yt=st.toString,mt=RegExp("^"+function(n){return n=null==n?"":n+"",Gr.lastIndex=0,Gr.test(n)?n.replace(Gr,"\\$&"):n}(yt).replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),bt=Math.ceil,_t=Math.floor,dt=pt.push,jt=st.propertyIsEnumerable,wt=pt.splice,At=dr(At=Object.create)&&At,xt=dr(xt=Array.isArray)&&xt,Tt=it.isFinite,Et=dr(Et=Object.keys)&&Et,Ot=Math.max,kt=Math.min,St=dr(St=Date.now)&&St,It=Math.random,Ft={}; +!function(){var n={0:1,length:1};Ft.spliceObjects=(wt.call(n,0,1),!n[0])}(0,0),i.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,variable:""},At||(y=function(){function n(){}return function(r){if(_r(r)){n.prototype=r;var t=new n;n.prototype=null}return t||it.Object()}}());var Mt=J,qt=G,Bt=B(function(n,r,t){ht.call(n,t)?++n[t]:n[t]=1}),$t=B(function(n,r,t){ht.call(n,t)?n[t].push(r):n[t]=[r]}),Nt=B(function(n,r,t){n[t]=r}),Rt=B(function(n,r,t){n[t?0:1].push(r) +},function(){return[[],[]]}),Ut=sr(cr,2);yr(arguments)||(yr=function(n){var r=n&&typeof n=="object"?n.length:Fr;return typeof r=="number"&&-1--n?r.apply(this,arguments):void 0}},i.before=cr,i.bind=lr,i.bindAll=function(n){for(var r=n,t=1r?0:r)},i.intersection=function(){for(var n=[],r=-1,t=arguments.length;++ri(a,e)){for(r=t;--r;)if(0>i(n[r],e))continue n;a.push(e)}return a},i.invert=function(n){for(var r=-1,t=Dt(n),e=t.length,u={};++ro?0:o>>>0);for(r=v(r,e,3),b(n,function(n,t,e){i[++u]={a:r(n,t,e),b:u,c:n}}),o=i.length,i.sort(t);o--;)i[o]=i[o].c;return i},i.take=qt,i.tap=function(n,r){return r(n),n},i.throttle=function(n,r,t){var e=true,u=true;if(!br(n))throw new TypeError(funcErrorText);return false===t?e=false:_r(t)&&(e="leading"in t?t.leading:e,u="trailing"in t?t.trailing:u),pr(n,r,{leading:e,maxWait:r,trailing:u})},i.times=function(n,r,t){n=Tt(n=+n)&&-1r)return function(){};if(!c(n,br))throw new TypeError(Nr);return function(){for(var t=r,e=n[t].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},i.each=rr,i.extend=gr,i.iteratee=function(n,r){return v(n,r)},i.methods=vr,i.object=function(n,r){var t=-1,e=n?n.length:0,u={};for(r||!e||Wt(n[0])||(r=[]);++tr?0:r)) +},i.lastIndexOf=function(n,r,t){var e=n?n.length:0;for(typeof t=="number"&&(e=(0>t?Ot(e+t,0):kt(t||0,e-1))+1);e--;)if(n[e]===r)return e;return-1},i.max=er,i.min=function(n,r,t){var e=1/0,u=e,o=typeof r;if("number"!=o&&"string"!=o||!t||t[r]!==n||(r=null),null==r)for(t=-1,n=V(n),o=n.length;++tr?0:+r||0,n.length),n) +},Sr(gr({},i)),i.VERSION="3.0.0-pre",i.prototype.chain=function(){return this.__chain__=true,this},i.prototype.value=function(){return this.__wrapped__},a("pop push reverse shift sort splice unshift".split(" "),function(n){var r=pt[n];i.prototype[n]=function(){var n=this.__wrapped__;return r.apply(n,arguments),Ft.spliceObjects||0!==n.length||delete n[0],this}}),a(["concat","join","slice"],function(n){var r=pt[n];i.prototype[n]=function(){var n=r.apply(this.__wrapped__,arguments);return this.__chain__&&(n=new f(n),n.__chain__=true),n +}}),typeof define=="function"&&typeof define.amd=="object"&&define.amd?(it._=i, define("underscore",function(){return i})):ft&&at?lt?(at.exports=i)._=i:ft._=i:it._=i}).call(this); \ No newline at end of file diff --git a/lodash.js b/lodash.js index d4d6145d4..cefd78a29 100644 --- a/lodash.js +++ b/lodash.js @@ -2,7 +2,7 @@ * @license * Lo-Dash 3.0.0-pre * Copyright 2012-2014 The Dojo Foundation - * Based on Underscore.js 1.6.0 + * Based on Underscore.js 1.7.0 * Copyright 2009-2014 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors * Available under MIT license */ diff --git a/test/backbone.html b/test/backbone.html index d8446139e..94404469c 100644 --- a/test/backbone.html +++ b/test/backbone.html @@ -44,15 +44,6 @@ QUnit.config.asyncRetries = 10; QUnit.config.hidepassed = true; - // excuse tests we intentionally fail or those with problems - QUnit.config.excused = { - 'Backbone.Router': { - '#1695 - hashChange to pushState with search.': [ - 'Expected 1 assertions, but 0 were run' - ] - } - }; - // load Lo-Dash if (!ui.isModularize) { document.write('