Merge pull request #23993 from owncloud/update-to-jquery2

Update jquery to version 2.2.3
This commit is contained in:
Thomas Müller 2016-04-19 10:26:08 +02:00
commit 7186975e35
15 changed files with 5189 additions and 5559 deletions

View File

@ -16,8 +16,8 @@
"blueimp-md5": "~1.1.0", "blueimp-md5": "~1.1.0",
"handlebars": "~1.3.0", "handlebars": "~1.3.0",
"jcrop": "~0.9.12", "jcrop": "~0.9.12",
"jquery": "~1.10.0", "jquery": "~2.2.0",
"jquery-migrate": "~1.2.1", "jquery-migrate": "~1.4.0",
"jquery-ui": "1.10.0", "jquery-ui": "1.10.0",
"jsTimezoneDetect": "~1.0.5", "jsTimezoneDetect": "~1.0.5",
"moment": "~2.10.0", "moment": "~2.10.0",

View File

@ -1,6 +1,6 @@
{ {
"vendor": [ "vendor": [
"jquery/jquery.min.js", "jquery/dist/jquery.min.js",
"jquery-migrate/jquery-migrate.min.js", "jquery-migrate/jquery-migrate.min.js",
"jquery-ui/ui/jquery-ui.custom.js", "jquery-ui/ui/jquery-ui.custom.js",
"underscore/underscore.js", "underscore/underscore.js",

View File

@ -470,6 +470,7 @@ describe('Core base tests', function() {
var $navigation; var $navigation;
beforeEach(function() { beforeEach(function() {
jQuery.fx.off = true;
clock = sinon.useFakeTimers(); clock = sinon.useFakeTimers();
$('#testArea').append('<div id="header">' + $('#testArea').append('<div id="header">' +
'<a class="menutoggle header-appname-container" href="#">' + '<a class="menutoggle header-appname-container" href="#">' +
@ -482,6 +483,7 @@ describe('Core base tests', function() {
$navigation = $('#navigation'); $navigation = $('#navigation');
}); });
afterEach(function() { afterEach(function() {
jQuery.fx.off = false;
clock.restore(); clock.restore();
$(document).off('ajaxError'); $(document).off('ajaxError');
}); });
@ -491,7 +493,6 @@ describe('Core base tests', function() {
}); });
it('Clicking menu toggle toggles navigation in', function() { it('Clicking menu toggle toggles navigation in', function() {
window.initCore(); window.initCore();
$navigation.hide(); // normally done through media query triggered CSS
expect($navigation.is(':visible')).toEqual(false); expect($navigation.is(':visible')).toEqual(false);
$toggle.click(); $toggle.click();
clock.tick(1 * 1000); clock.tick(1 * 1000);

View File

@ -36,7 +36,7 @@ moment/templates
# jquery # jquery
jquery/** jquery/**
!jquery/.bower.json !jquery/.bower.json
!jquery/jquery.* !jquery/dist/jquery.*
!jquery/MIT-LICENSE.txt !jquery/MIT-LICENSE.txt
# jquery-ui # jquery-ui

View File

@ -1,15 +1,15 @@
{ {
"name": "jquery-migrate", "name": "jquery-migrate",
"version": "1.2.1", "version": "1.4.0",
"main": "jquery-migrate.js",
"homepage": "https://github.com/appleboy/jquery-migrate", "homepage": "https://github.com/appleboy/jquery-migrate",
"_release": "1.2.1", "_release": "1.4.0",
"_resolution": { "_resolution": {
"type": "version", "type": "version",
"tag": "1.2.1", "tag": "1.4.0",
"commit": "65f37b60ae3d305efbe1e85909e14c60d524d12a" "commit": "d70e5a532864fdc2263f0d15030ef84671fc5807"
}, },
"_source": "git://github.com/appleboy/jquery-migrate.git", "_source": "https://github.com/appleboy/jquery-migrate.git",
"_target": "~1.2.1", "_target": "~1.4.0",
"_originalSource": "jquery-migrate", "_originalSource": "jquery-migrate"
"_direct": true
} }

View File

@ -1,4 +0,0 @@
{
"name" : "jquery-migrate",
"version" : "1.2.1"
}

View File

@ -1,13 +1,15 @@
/*! /*!
* jQuery Migrate - v1.2.1 - 2013-05-08 * jQuery Migrate - v1.4.0 - 2016-02-26
* https://github.com/jquery/jquery-migrate * Copyright jQuery Foundation and other contributors
* Copyright 2005, 2013 jQuery Foundation, Inc. and other contributors; Licensed MIT
*/ */
(function( jQuery, window, undefined ) { (function( jQuery, window, undefined ) {
// See http://bugs.jquery.com/ticket/13335 // See http://bugs.jquery.com/ticket/13335
// "use strict"; // "use strict";
jQuery.migrateVersion = "1.4.0";
var warnedAbout = {}; var warnedAbout = {};
// List of warnings already given; public read only // List of warnings already given; public read only
@ -17,8 +19,10 @@ jQuery.migrateWarnings = [];
// jQuery.migrateMute = false; // jQuery.migrateMute = false;
// Show a message on the console so devs know we're active // Show a message on the console so devs know we're active
if ( !jQuery.migrateMute && window.console && window.console.log ) { if ( window.console && window.console.log ) {
window.console.log("JQMIGRATE: Logging is active"); window.console.log( "JQMIGRATE: Migrate is installed" +
( jQuery.migrateMute ? "" : " with logging active" ) +
", version " + jQuery.migrateVersion );
} }
// Set to false to disable traces that appear with warnings // Set to false to disable traces that appear with warnings
@ -152,7 +156,7 @@ jQuery.attr = function( elem, name, value, pass ) {
// Warn only for attributes that can remain distinct from their properties post-1.9 // Warn only for attributes that can remain distinct from their properties post-1.9
if ( ruseDefault.test( lowerName ) ) { if ( ruseDefault.test( lowerName ) ) {
migrateWarn( "jQuery.fn.attr('" + lowerName + "') may use property instead of attribute" ); migrateWarn( "jQuery.fn.attr('" + lowerName + "') might use property instead of attribute" );
} }
} }
@ -190,22 +194,25 @@ jQuery.attrHooks.value = {
var matched, browser, var matched, browser,
oldInit = jQuery.fn.init, oldInit = jQuery.fn.init,
oldParseJSON = jQuery.parseJSON, oldParseJSON = jQuery.parseJSON,
rspaceAngle = /^\s*</,
rattrHash = /\[\s*\w+\s*[~|^$*]?=\s*(?![\s'"])[^#\]]*#/,
// Note: XSS check is done below after string is trimmed // Note: XSS check is done below after string is trimmed
rquickExpr = /^([^<]*)(<[\w\W]+>)([^>]*)$/; rquickExpr = /^([^<]*)(<[\w\W]+>)([^>]*)$/;
// $(html) "looks like html" rule change // $(html) "looks like html" rule change
jQuery.fn.init = function( selector, context, rootjQuery ) { jQuery.fn.init = function( selector, context, rootjQuery ) {
var match; var match, ret;
if ( selector && typeof selector === "string" && !jQuery.isPlainObject( context ) && if ( selector && typeof selector === "string" && !jQuery.isPlainObject( context ) &&
(match = rquickExpr.exec( jQuery.trim( selector ) )) && match[ 0 ] ) { (match = rquickExpr.exec( jQuery.trim( selector ) )) && match[ 0 ] ) {
// This is an HTML string according to the "old" rules; is it still? // This is an HTML string according to the "old" rules; is it still?
if ( selector.charAt( 0 ) !== "<" ) { if ( !rspaceAngle.test( selector ) ) {
migrateWarn("$(html) HTML strings must start with '<' character"); migrateWarn("$(html) HTML strings must start with '<' character");
} }
if ( match[ 3 ] ) { if ( match[ 3 ] ) {
migrateWarn("$(html) HTML text after last tag is ignored"); migrateWarn("$(html) HTML text after last tag is ignored");
} }
// Consistently reject any HTML-like string starting with a hash (#9521) // Consistently reject any HTML-like string starting with a hash (#9521)
// Note that this may break jQuery 1.6.x code that otherwise would work. // Note that this may break jQuery 1.6.x code that otherwise would work.
if ( match[ 0 ].charAt( 0 ) === "#" ) { if ( match[ 0 ].charAt( 0 ) === "#" ) {
@ -218,17 +225,47 @@ jQuery.fn.init = function( selector, context, rootjQuery ) {
context = context.context; context = context.context;
} }
if ( jQuery.parseHTML ) { if ( jQuery.parseHTML ) {
return oldInit.call( this, jQuery.parseHTML( match[ 2 ], context, true ), return oldInit.call( this,
context, rootjQuery ); jQuery.parseHTML( match[ 2 ], context && context.ownerDocument ||
context || document, true ), context, rootjQuery );
} }
} }
return oldInit.apply( this, arguments );
if ( selector === "#" ) {
// jQuery( "#" ) is a bogus ID selector, but it returned an empty set before jQuery 3.0
migrateWarn( "jQuery( '#' ) is not a valid selector" );
selector = [];
} else if ( rattrHash.test( selector ) ) {
// The nonstandard and undocumented unquoted-hash was removed in jQuery 1.12.0
// Note that this doesn't actually fix the selector due to potential false positives
migrateWarn( "Attribute selectors with '#' must be quoted: '" + selector + "'" );
}
ret = oldInit.apply( this, arguments );
// Fill in selector and context properties so .live() works
if ( selector && selector.selector !== undefined ) {
// A jQuery object, copy its properties
ret.selector = selector.selector;
ret.context = selector.context;
} else {
ret.selector = typeof selector === "string" ? selector : "";
if ( selector ) {
ret.context = selector.nodeType? selector : context || document;
}
}
return ret;
}; };
jQuery.fn.init.prototype = jQuery.fn; jQuery.fn.init.prototype = jQuery.fn;
// Let $.parseJSON(falsy_value) return null // Let $.parseJSON(falsy_value) return null
jQuery.parseJSON = function( json ) { jQuery.parseJSON = function( json ) {
if ( !json && json !== null ) { if ( !json ) {
migrateWarn("jQuery.parseJSON requires a valid JSON string"); migrateWarn("jQuery.parseJSON requires a valid JSON string");
return null; return null;
} }
@ -274,6 +311,11 @@ if ( !jQuery.browser ) {
// Warn if the code tries to get jQuery.browser // Warn if the code tries to get jQuery.browser
migrateWarnProp( jQuery, "browser", jQuery.browser, "jQuery.browser is deprecated" ); migrateWarnProp( jQuery, "browser", jQuery.browser, "jQuery.browser is deprecated" );
// jQuery.boxModel deprecated in 1.3, jQuery.support.boxModel deprecated in 1.7
jQuery.boxModel = jQuery.support.boxModel = (document.compatMode === "CSS1Compat");
migrateWarnProp( jQuery, "boxModel", jQuery.boxModel, "jQuery.boxModel is deprecated" );
migrateWarnProp( jQuery.support, "boxModel", jQuery.support.boxModel, "jQuery.support.boxModel is deprecated" );
jQuery.sub = function() { jQuery.sub = function() {
function jQuerySub( selector, context ) { function jQuerySub( selector, context ) {
return new jQuerySub.fn.init( selector, context ); return new jQuerySub.fn.init( selector, context );
@ -284,11 +326,10 @@ jQuery.sub = function() {
jQuerySub.fn.constructor = jQuerySub; jQuerySub.fn.constructor = jQuerySub;
jQuerySub.sub = this.sub; jQuerySub.sub = this.sub;
jQuerySub.fn.init = function init( selector, context ) { jQuerySub.fn.init = function init( selector, context ) {
if ( context && context instanceof jQuery && !(context instanceof jQuerySub) ) { var instance = jQuery.fn.init.call( this, selector, context, rootjQuerySub );
context = jQuerySub( context ); return instance instanceof jQuerySub ?
} instance :
jQuerySub( instance );
return jQuery.fn.init.call( this, selector, context, rootjQuerySub );
}; };
jQuerySub.fn.init.prototype = jQuerySub.fn; jQuerySub.fn.init.prototype = jQuerySub.fn;
var rootjQuerySub = jQuerySub(document); var rootjQuerySub = jQuerySub(document);
@ -296,6 +337,57 @@ jQuery.sub = function() {
return jQuerySub; return jQuerySub;
}; };
// The number of elements contained in the matched element set
jQuery.fn.size = function() {
migrateWarn( "jQuery.fn.size() is deprecated; use the .length property" );
return this.length;
};
var internalSwapCall = false;
// If this version of jQuery has .swap(), don't false-alarm on internal uses
if ( jQuery.swap ) {
jQuery.each( [ "height", "width", "reliableMarginRight" ], function( _, name ) {
var oldHook = jQuery.cssHooks[ name ] && jQuery.cssHooks[ name ].get;
if ( oldHook ) {
jQuery.cssHooks[ name ].get = function() {
var ret;
internalSwapCall = true;
ret = oldHook.apply( this, arguments );
internalSwapCall = false;
return ret;
};
}
});
}
jQuery.swap = function( elem, options, callback, args ) {
var ret, name,
old = {};
if ( !internalSwapCall ) {
migrateWarn( "jQuery.swap() is undocumented and deprecated" );
}
// Remember the old values, and insert the new ones
for ( name in options ) {
old[ name ] = elem.style[ name ];
elem.style[ name ] = options[ name ];
}
ret = callback.apply( elem, args || [] );
// Revert the old values
for ( name in options ) {
elem.style[ name ] = old[ name ];
}
return ret;
};
// Ensure that $.ajax gets the new parseJSON defined in core.js // Ensure that $.ajax gets the new parseJSON defined in core.js
jQuery.ajaxSetup({ jQuery.ajaxSetup({
@ -324,13 +416,7 @@ jQuery.fn.data = function( name ) {
}; };
var rscriptType = /\/(java|ecma)script/i, var rscriptType = /\/(java|ecma)script/i;
oldSelf = jQuery.fn.andSelf || jQuery.fn.addBack;
jQuery.fn.andSelf = function() {
migrateWarn("jQuery.fn.andSelf() replaced by jQuery.fn.addBack()");
return oldSelf.apply( this, arguments );
};
// Since jQuery.clean is used internally on older versions, we only shim if it's missing // Since jQuery.clean is used internally on older versions, we only shim if it's missing
if ( !jQuery.clean ) { if ( !jQuery.clean ) {
@ -388,6 +474,7 @@ var eventAdd = jQuery.event.add,
oldToggle = jQuery.fn.toggle, oldToggle = jQuery.fn.toggle,
oldLive = jQuery.fn.live, oldLive = jQuery.fn.live,
oldDie = jQuery.fn.die, oldDie = jQuery.fn.die,
oldLoad = jQuery.fn.load,
ajaxEvents = "ajaxStart|ajaxStop|ajaxSend|ajaxComplete|ajaxError|ajaxSuccess", ajaxEvents = "ajaxStart|ajaxStop|ajaxSend|ajaxComplete|ajaxError|ajaxSuccess",
rajaxEvent = new RegExp( "\\b(?:" + ajaxEvents + ")\\b" ), rajaxEvent = new RegExp( "\\b(?:" + ajaxEvents + ")\\b" ),
rhoverHack = /(?:^|\s)hover(\.\S+|)\b/, rhoverHack = /(?:^|\s)hover(\.\S+|)\b/,
@ -422,18 +509,36 @@ jQuery.event.remove = function( elem, types, handler, selector, mappedTypes ){
eventRemove.call( this, elem, hoverHack( types ) || "", handler, selector, mappedTypes ); eventRemove.call( this, elem, hoverHack( types ) || "", handler, selector, mappedTypes );
}; };
jQuery.fn.error = function() { jQuery.each( [ "load", "unload", "error" ], function( _, name ) {
jQuery.fn[ name ] = function() {
var args = Array.prototype.slice.call( arguments, 0 ); var args = Array.prototype.slice.call( arguments, 0 );
migrateWarn("jQuery.fn.error() is deprecated");
args.splice( 0, 0, "error" ); // If this is an ajax load() the first arg should be the string URL;
// technically this could also be the "Anything" arg of the event .load()
// which just goes to show why this dumb signature has been deprecated!
// jQuery custom builds that exclude the Ajax module justifiably die here.
if ( name === "load" && typeof args[ 0 ] === "string" ) {
return oldLoad.apply( this, args );
}
migrateWarn( "jQuery.fn." + name + "() is deprecated" );
args.splice( 0, 0, name );
if ( arguments.length ) { if ( arguments.length ) {
return this.bind.apply( this, args ); return this.bind.apply( this, args );
} }
// error event should not bubble to window, although it does pre-1.7
// Use .triggerHandler here because:
// - load and unload events don't need to bubble, only applied to window or image
// - error event should not bubble to window, although it does pre-1.7
// See http://bugs.jquery.com/ticket/11820
this.triggerHandler.apply( this, args ); this.triggerHandler.apply( this, args );
return this; return this;
}; };
});
jQuery.fn.toggle = function( fn, fn2 ) { jQuery.fn.toggle = function( fn, fn2 ) {
// Don't mess with animation or css toggles // Don't mess with animation or css toggles
@ -501,7 +606,7 @@ jQuery.each( ajaxEvents.split("|"),
// The document needs no shimming; must be !== for oldIE // The document needs no shimming; must be !== for oldIE
if ( elem !== document ) { if ( elem !== document ) {
jQuery.event.add( document, name + "." + jQuery.guid, function() { jQuery.event.add( document, name + "." + jQuery.guid, function() {
jQuery.event.trigger( name, null, elem, true ); jQuery.event.trigger( name, Array.prototype.slice.call( arguments, 1 ), elem, true );
}); });
jQuery._data( this, name, jQuery.guid++ ); jQuery._data( this, name, jQuery.guid++ );
} }
@ -517,5 +622,96 @@ jQuery.each( ajaxEvents.split("|"),
} }
); );
jQuery.event.special.ready = {
setup: function() {
if ( this === document ) {
migrateWarn( "'ready' event is deprecated" );
}
}
};
var oldSelf = jQuery.fn.andSelf || jQuery.fn.addBack,
oldFind = jQuery.fn.find;
jQuery.fn.andSelf = function() {
migrateWarn("jQuery.fn.andSelf() replaced by jQuery.fn.addBack()");
return oldSelf.apply( this, arguments );
};
jQuery.fn.find = function( selector ) {
var ret = oldFind.apply( this, arguments );
ret.context = this.context;
ret.selector = this.selector ? this.selector + " " + selector : selector;
return ret;
};
// jQuery 1.6 did not support Callbacks, do not warn there
if ( jQuery.Callbacks ) {
var oldDeferred = jQuery.Deferred,
tuples = [
// action, add listener, callbacks, .then handlers, final state
[ "resolve", "done", jQuery.Callbacks("once memory"),
jQuery.Callbacks("once memory"), "resolved" ],
[ "reject", "fail", jQuery.Callbacks("once memory"),
jQuery.Callbacks("once memory"), "rejected" ],
[ "notify", "progress", jQuery.Callbacks("memory"),
jQuery.Callbacks("memory") ]
];
jQuery.Deferred = function( func ) {
var deferred = oldDeferred(),
promise = deferred.promise();
deferred.pipe = promise.pipe = function( /* fnDone, fnFail, fnProgress */ ) {
var fns = arguments;
migrateWarn( "deferred.pipe() is deprecated" );
return jQuery.Deferred(function( newDefer ) {
jQuery.each( tuples, function( i, tuple ) {
var fn = jQuery.isFunction( fns[ i ] ) && fns[ i ];
// deferred.done(function() { bind to newDefer or newDefer.resolve })
// deferred.fail(function() { bind to newDefer or newDefer.reject })
// deferred.progress(function() { bind to newDefer or newDefer.notify })
deferred[ tuple[1] ](function() {
var returned = fn && fn.apply( this, arguments );
if ( returned && jQuery.isFunction( returned.promise ) ) {
returned.promise()
.done( newDefer.resolve )
.fail( newDefer.reject )
.progress( newDefer.notify );
} else {
newDefer[ tuple[ 0 ] + "With" ](
this === promise ? newDefer.promise() : this,
fn ? [ returned ] : arguments
);
}
});
});
fns = null;
}).promise();
};
deferred.isResolved = function() {
migrateWarn( "deferred.isResolved is deprecated" );
return deferred.state() === "resolved";
};
deferred.isRejected = function() {
migrateWarn( "deferred.isRejected is deprecated" );
return deferred.state() === "rejected";
};
if ( func ) {
func.call( deferred, deferred );
}
return deferred;
};
}
})( jQuery, window ); })( jQuery, window );

File diff suppressed because one or more lines are too long

View File

@ -1,21 +1,38 @@
{ {
"name": "jquery", "name": "jquery",
"version": "1.10.2", "version": "2.1.4",
"description": "jQuery component", "main": "dist/jquery.js",
"license": "MIT",
"ignore": [
"**/.*",
"build",
"dist/cdn",
"speed",
"test",
"*.md",
"AUTHORS.txt",
"Gruntfile.js",
"package.json"
],
"devDependencies": {
"sizzle": "2.1.1-jquery.2.1.2",
"requirejs": "2.1.10",
"qunit": "1.14.0",
"sinon": "1.8.1"
},
"keywords": [ "keywords": [
"jquery", "jquery",
"component" "javascript",
"library"
], ],
"main": "jquery.js", "homepage": "https://github.com/jquery/jquery-dist",
"license": "MIT", "_release": "2.1.4",
"homepage": "https://github.com/jquery/jquery",
"_release": "1.10.2",
"_resolution": { "_resolution": {
"type": "version", "type": "version",
"tag": "1.10.2", "tag": "2.1.4",
"commit": "16b079b164d62bd807c612806842a13bf9b04d17" "commit": "7751e69b615c6eca6f783a81e292a55725af6b85"
}, },
"_source": "git://github.com/jquery/jquery.git", "_source": "https://github.com/jquery/jquery-dist.git",
"_target": "~1.10.0", "_target": "~2.1.0",
"_originalSource": "jquery" "_originalSource": "jquery"
} }

View File

@ -1,4 +1,4 @@
Copyright 2013 jQuery Foundation and other contributors Copyright 2014 jQuery Foundation and other contributors
http://jquery.com/ http://jquery.com/
Permission is hereby granted, free of charge, to any person obtaining Permission is hereby granted, free of charge, to any person obtaining

File diff suppressed because it is too large Load Diff

5
core/vendor/jquery/dist/jquery.min.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long