Merge pull request #1931 from MediaBrowser/dev

Dev
This commit is contained in:
Luke 2016-07-08 14:12:11 -04:00 committed by GitHub
commit c6d53fdfb4
30 changed files with 310 additions and 135 deletions

View File

@ -15,12 +15,12 @@
}, },
"devDependencies": {}, "devDependencies": {},
"ignore": [], "ignore": [],
"version": "1.4.74", "version": "1.4.75",
"_release": "1.4.74", "_release": "1.4.75",
"_resolution": { "_resolution": {
"type": "version", "type": "version",
"tag": "1.4.74", "tag": "1.4.75",
"commit": "8612284330cb4e7fa444de71a5f1d21f2b9490b4" "commit": "bd530f76973adf0e2cbf9df0f38590d7a077de8e"
}, },
"_source": "https://github.com/MediaBrowser/emby-webcomponents.git", "_source": "https://github.com/MediaBrowser/emby-webcomponents.git",
"_target": "^1.2.0", "_target": "^1.2.0",

View File

@ -743,6 +743,14 @@
target.addEventListener(type, handler, optionsOrCapture); target.addEventListener(type, handler, optionsOrCapture);
} }
function removeEventListenerWithOptions(target, type, handler, options) {
var optionsOrCapture = options;
if (!supportsCaptureOption) {
optionsOrCapture = options.capture;
}
target.removeEventListener(type, handler, optionsOrCapture);
}
function onTimerCreated(e, apiClient, data) { function onTimerCreated(e, apiClient, data) {
var programId = data.ProgramId; var programId = data.ProgramId;

View File

@ -109,6 +109,14 @@ define(['visibleinviewport', 'imageFetcher', 'layoutManager', 'events', 'browser
target.addEventListener(type, handler, optionsOrCapture); target.addEventListener(type, handler, optionsOrCapture);
} }
function removeEventListenerWithOptions(target, type, handler, options) {
var optionsOrCapture = options;
if (!supportsCaptureOption) {
optionsOrCapture = options.capture;
}
target.removeEventListener(type, handler, optionsOrCapture);
}
function unveilWithIntersection(images, root) { function unveilWithIntersection(images, root) {
var filledCount = 0; var filledCount = 0;
@ -177,10 +185,22 @@ define(['visibleinviewport', 'imageFetcher', 'layoutManager', 'events', 'browser
} }
if (!images.length) { if (!images.length) {
document.removeEventListener('focus', unveil, true); removeEventListenerWithOptions(document, 'focus', unveil, {
document.removeEventListener('scroll', unveil, true); capture: true,
document.removeEventListener(wheelEvent, unveil, true); passive: true
window.removeEventListener('resize', unveil, true); });
removeEventListenerWithOptions(document, 'scroll', unveil, {
capture: true,
passive: true
});
removeEventListenerWithOptions(document, wheelEvent, unveil, {
capture: true,
passive: true
});
removeEventListenerWithOptions(window, 'resize', unveil, {
capture: true,
passive: true
});
} }
} }
@ -196,11 +216,14 @@ define(['visibleinviewport', 'imageFetcher', 'layoutManager', 'events', 'browser
}, 1); }, 1);
} }
addEventListenerWithOptions(document, 'focus', unveil, {
capture: true,
passive: true
});
addEventListenerWithOptions(document, 'scroll', unveil, { addEventListenerWithOptions(document, 'scroll', unveil, {
capture: true, capture: true,
passive: true passive: true
}); });
document.addEventListener('focus', unveil, true);
addEventListenerWithOptions(document, wheelEvent, unveil, { addEventListenerWithOptions(document, wheelEvent, unveil, {
capture: true, capture: true,
passive: true passive: true

View File

@ -1,5 +1,31 @@
define(['browser', 'layoutManager', 'scrollStyles'], function (browser, layoutManager) { define(['browser', 'layoutManager', 'scrollStyles'], function (browser, layoutManager) {
var supportsCaptureOption = false;
try {
var opts = Object.defineProperty({}, 'capture', {
get: function () {
supportsCaptureOption = true;
}
});
window.addEventListener("test", null, opts);
} catch (e) { }
function addEventListenerWithOptions(target, type, handler, options) {
var optionsOrCapture = options;
if (!supportsCaptureOption) {
optionsOrCapture = options.capture;
}
target.addEventListener(type, handler, optionsOrCapture);
}
function removeEventListenerWithOptions(target, type, handler, options) {
var optionsOrCapture = options;
if (!supportsCaptureOption) {
optionsOrCapture = options.capture;
}
target.removeEventListener(type, handler, optionsOrCapture);
}
/** /**
* Return type of the value. * Return type of the value.
* *
@ -900,6 +926,12 @@ define(['browser', 'layoutManager', 'scrollStyles'], function (browser, layoutMa
self.destroy = function () { self.destroy = function () {
window.removeEventListener('resize', onResize, true); window.removeEventListener('resize', onResize, true);
// Reset native FRAME element scroll
removeEventListenerWithOptions(frameElement, 'scroll', resetScroll, {
passive: true
});
scrollSource.removeEventListener(wheelEvent, scrollHandler); scrollSource.removeEventListener(wheelEvent, scrollHandler);
// Reset initialized status and return the instance // Reset initialized status and return the instance
@ -911,6 +943,14 @@ define(['browser', 'layoutManager', 'scrollStyles'], function (browser, layoutMa
load(false); load(false);
} }
function resetScroll() {
if (o.horizontal) {
this.scrollLeft = 0;
} else {
this.scrollTop = 0;
}
}
/** /**
* Initialize. * Initialize.
* *
@ -959,6 +999,12 @@ define(['browser', 'layoutManager', 'scrollStyles'], function (browser, layoutMa
}); });
window.addEventListener('resize', onResize, true); window.addEventListener('resize', onResize, true);
if (!o.horizontal) {
addEventListenerWithOptions(frameElement, 'scroll', resetScroll, {
passive: true
});
}
} }
// Mark instance as initialized // Mark instance as initialized

View File

@ -12,12 +12,12 @@
"library" "library"
], ],
"homepage": "https://github.com/jquery/jquery-dist", "homepage": "https://github.com/jquery/jquery-dist",
"version": "3.0.0", "version": "3.1.0",
"_release": "3.0.0", "_release": "3.1.0",
"_resolution": { "_resolution": {
"type": "version", "type": "version",
"tag": "3.0.0", "tag": "3.1.0",
"commit": "0078f86be166a8747819d5d1516776a662cb69df" "commit": "6f02bc382c0529d3b4f68f6b2ad21876642dbbfe"
}, },
"_source": "https://github.com/jquery/jquery-dist.git", "_source": "https://github.com/jquery/jquery-dist.git",
"_target": ">=1.9.1", "_target": ">=1.9.1",

View File

@ -1,3 +1,7 @@
/* global Symbol */
// Defining this global in .eslintrc would create a danger of using the global
// unguarded in another place, it seems safer to define global only for this module
define( [ define( [
"./var/arr", "./var/arr",
"./var/document", "./var/document",
@ -20,7 +24,7 @@ define( [
"use strict"; "use strict";
var var
version = "3.0.0", version = "3.1.0",
// Define a local copy of jQuery // Define a local copy of jQuery
jQuery = function( selector, context ) { jQuery = function( selector, context ) {
@ -252,7 +256,11 @@ jQuery.extend( {
}, },
isEmptyObject: function( obj ) { isEmptyObject: function( obj ) {
/* eslint-disable no-unused-vars */
// See https://github.com/eslint/eslint/issues/6125
var name; var name;
for ( name in obj ) { for ( name in obj ) {
return false; return false;
} }
@ -442,15 +450,9 @@ jQuery.extend( {
support: support support: support
} ); } );
// JSHint would error on this code due to the Symbol not being defined in ES5.
// Defining this global in .jshintrc would create a danger of using the global
// unguarded in another place, it seems safer to just disable JSHint for these
// three lines.
/* jshint ignore: start */
if ( typeof Symbol === "function" ) { if ( typeof Symbol === "function" ) {
jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];
} }
/* jshint ignore: end */
// Populate the class2type map // Populate the class2type map
jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),

View File

@ -1,5 +1,6 @@
/*eslint-disable no-unused-vars*/
/*! /*!
* jQuery JavaScript Library v3.0.0 * jQuery JavaScript Library v3.1.0
* https://jquery.com/ * https://jquery.com/
* *
* Includes Sizzle.js * Includes Sizzle.js
@ -9,7 +10,7 @@
* Released under the MIT license * Released under the MIT license
* https://jquery.org/license * https://jquery.org/license
* *
* Date: 2016-06-09T18:02Z * Date: 2016-07-07T21:44Z
*/ */
( function( global, factory ) { ( function( global, factory ) {
@ -37,7 +38,7 @@
} }
// Pass this if window is not defined yet // Pass this if window is not defined yet
}( typeof window !== "undefined" ? window : this, function( window, noGlobal ) { } )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) {
// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1 // Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1
// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode // throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode
@ -81,10 +82,14 @@ var support = {};
script.text = code; script.text = code;
doc.head.appendChild( script ).parentNode.removeChild( script ); doc.head.appendChild( script ).parentNode.removeChild( script );
} }
/* global Symbol */
// Defining this global in .eslintrc would create a danger of using the global
// unguarded in another place, it seems safer to define global only for this module
var var
version = "3.0.0", version = "3.1.0",
// Define a local copy of jQuery // Define a local copy of jQuery
jQuery = function( selector, context ) { jQuery = function( selector, context ) {
@ -316,7 +321,11 @@ jQuery.extend( {
}, },
isEmptyObject: function( obj ) { isEmptyObject: function( obj ) {
/* eslint-disable no-unused-vars */
// See https://github.com/eslint/eslint/issues/6125
var name; var name;
for ( name in obj ) { for ( name in obj ) {
return false; return false;
} }
@ -506,15 +515,9 @@ jQuery.extend( {
support: support support: support
} ); } );
// JSHint would error on this code due to the Symbol not being defined in ES5.
// Defining this global in .jshintrc would create a danger of using the global
// unguarded in another place, it seems safer to just disable JSHint for these
// three lines.
/* jshint ignore: start */
if ( typeof Symbol === "function" ) { if ( typeof Symbol === "function" ) {
jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];
} }
/* jshint ignore: end */
// Populate the class2type map // Populate the class2type map
jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),
@ -2753,6 +2756,7 @@ jQuery.escapeSelector = Sizzle.escape;
var dir = function( elem, dir, until ) { var dir = function( elem, dir, until ) {
var matched = [], var matched = [],
truncate = until !== undefined; truncate = until !== undefined;
@ -2794,7 +2798,6 @@ var risSimple = /^.[^:#\[\.,]*$/;
function winnow( elements, qualifier, not ) { function winnow( elements, qualifier, not ) {
if ( jQuery.isFunction( qualifier ) ) { if ( jQuery.isFunction( qualifier ) ) {
return jQuery.grep( elements, function( elem, i ) { return jQuery.grep( elements, function( elem, i ) {
/* jshint -W018 */
return !!qualifier.call( elem, i, elem ) !== not; return !!qualifier.call( elem, i, elem ) !== not;
} ); } );
@ -3420,7 +3423,7 @@ function adoptValue( value, resolve, reject ) {
// For Promises/A+, convert exceptions into rejections // For Promises/A+, convert exceptions into rejections
// Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in
// Deferred#then to conditionally suppress rejection. // Deferred#then to conditionally suppress rejection.
} catch ( /*jshint -W002 */ value ) { } catch ( value ) {
// Support: Android 4.0 only // Support: Android 4.0 only
// Strict mode functions invoked without .call/.apply get global-object context // Strict mode functions invoked without .call/.apply get global-object context
@ -3785,12 +3788,29 @@ jQuery.Deferred.exceptionHook = function( error, stack ) {
jQuery.readyException = function( error ) {
window.setTimeout( function() {
throw error;
} );
};
// The deferred used on DOM ready // The deferred used on DOM ready
var readyList = jQuery.Deferred(); var readyList = jQuery.Deferred();
jQuery.fn.ready = function( fn ) { jQuery.fn.ready = function( fn ) {
readyList.then( fn ); readyList
.then( fn )
// Wrap jQuery.readyException in a function so that the lookup
// happens at the time of error handling instead of callback
// registration.
.catch( function( error ) {
jQuery.readyException( error );
} );
return this; return this;
}; };
@ -3930,7 +3950,6 @@ var acceptData = function( owner ) {
// - Node.DOCUMENT_NODE // - Node.DOCUMENT_NODE
// - Object // - Object
// - Any // - Any
/* jshint -W018 */
return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );
}; };
@ -4431,8 +4450,12 @@ function adjustCSS( elem, prop, valueParts, tween ) {
scale = 1, scale = 1,
maxIterations = 20, maxIterations = 20,
currentValue = tween ? currentValue = tween ?
function() { return tween.cur(); } : function() {
function() { return jQuery.css( elem, prop, "" ); }, return tween.cur();
} :
function() {
return jQuery.css( elem, prop, "" );
},
initial = currentValue(), initial = currentValue(),
unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ),
@ -5474,8 +5497,14 @@ jQuery.fn.extend( {
var var
/* eslint-disable max-len */
// See https://github.com/eslint/eslint/issues/3229
rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi, rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
/* eslint-enable */
// Support: IE <=10 - 11, Edge 12 - 13 // Support: IE <=10 - 11, Edge 12 - 13
// In IE/Edge using regex groups here causes severe slowdowns. // In IE/Edge using regex groups here causes severe slowdowns.
// See https://connect.microsoft.com/IE/feedback/details/1736512/ // See https://connect.microsoft.com/IE/feedback/details/1736512/
@ -6658,7 +6687,6 @@ function createTween( value, prop, animation ) {
} }
function defaultPrefilter( elem, props, opts ) { function defaultPrefilter( elem, props, opts ) {
/* jshint validthis: true */
var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display,
isBox = "width" in props || "height" in props, isBox = "width" in props || "height" in props,
anim = this, anim = this,
@ -6800,9 +6828,12 @@ function defaultPrefilter( elem, props, opts ) {
showHide( [ elem ], true ); showHide( [ elem ], true );
} }
/* jshint -W083 */ /* eslint-disable no-loop-func */
anim.done( function() { anim.done( function() {
/* eslint-enable no-loop-func */
// The final step of a "hide" animation is actually hiding the element // The final step of a "hide" animation is actually hiding the element
if ( !hidden ) { if ( !hidden ) {
showHide( [ elem ] ); showHide( [ elem ] );
@ -7861,11 +7892,16 @@ jQuery.extend( {
while ( i-- ) { while ( i-- ) {
option = options[ i ]; option = options[ i ];
/* eslint-disable no-cond-assign */
if ( option.selected = if ( option.selected =
jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1
) { ) {
optionSet = true; optionSet = true;
} }
/* eslint-enable no-cond-assign */
} }
// Force browsers to behave consistently when non-matching value is set // Force browsers to behave consistently when non-matching value is set
@ -8574,6 +8610,7 @@ jQuery.extend( {
processData: true, processData: true,
async: true, async: true,
contentType: "application/x-www-form-urlencoded; charset=UTF-8", contentType: "application/x-www-form-urlencoded; charset=UTF-8",
/* /*
timeout: 0, timeout: 0,
data: null, data: null,
@ -10034,4 +10071,4 @@ if ( !noGlobal ) {
return jQuery; return jQuery;
} ) ); } );

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,5 +1,6 @@
/*eslint-disable no-unused-vars*/
/*! /*!
* jQuery JavaScript Library v3.0.0 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector,-deprecated * jQuery JavaScript Library v3.1.0 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector,-deprecated
* https://jquery.com/ * https://jquery.com/
* *
* Includes Sizzle.js * Includes Sizzle.js
@ -9,7 +10,7 @@
* Released under the MIT license * Released under the MIT license
* https://jquery.org/license * https://jquery.org/license
* *
* Date: 2016-06-09T18:03Z * Date: 2016-07-07T21:44Z
*/ */
( function( global, factory ) { ( function( global, factory ) {
@ -37,7 +38,7 @@
} }
// Pass this if window is not defined yet // Pass this if window is not defined yet
}( typeof window !== "undefined" ? window : this, function( window, noGlobal ) { } )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) {
// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1 // Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1
// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode // throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode
@ -81,10 +82,14 @@ var support = {};
script.text = code; script.text = code;
doc.head.appendChild( script ).parentNode.removeChild( script ); doc.head.appendChild( script ).parentNode.removeChild( script );
} }
/* global Symbol */
// Defining this global in .eslintrc would create a danger of using the global
// unguarded in another place, it seems safer to define global only for this module
var var
version = "3.0.0 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector,-deprecated", version = "3.1.0 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector,-deprecated",
// Define a local copy of jQuery // Define a local copy of jQuery
jQuery = function( selector, context ) { jQuery = function( selector, context ) {
@ -316,7 +321,11 @@ jQuery.extend( {
}, },
isEmptyObject: function( obj ) { isEmptyObject: function( obj ) {
/* eslint-disable no-unused-vars */
// See https://github.com/eslint/eslint/issues/6125
var name; var name;
for ( name in obj ) { for ( name in obj ) {
return false; return false;
} }
@ -506,15 +515,9 @@ jQuery.extend( {
support: support support: support
} ); } );
// JSHint would error on this code due to the Symbol not being defined in ES5.
// Defining this global in .jshintrc would create a danger of using the global
// unguarded in another place, it seems safer to just disable JSHint for these
// three lines.
/* jshint ignore: start */
if ( typeof Symbol === "function" ) { if ( typeof Symbol === "function" ) {
jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];
} }
/* jshint ignore: end */
// Populate the class2type map // Populate the class2type map
jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),
@ -2753,6 +2756,7 @@ jQuery.escapeSelector = Sizzle.escape;
var dir = function( elem, dir, until ) { var dir = function( elem, dir, until ) {
var matched = [], var matched = [],
truncate = until !== undefined; truncate = until !== undefined;
@ -2794,7 +2798,6 @@ var risSimple = /^.[^:#\[\.,]*$/;
function winnow( elements, qualifier, not ) { function winnow( elements, qualifier, not ) {
if ( jQuery.isFunction( qualifier ) ) { if ( jQuery.isFunction( qualifier ) ) {
return jQuery.grep( elements, function( elem, i ) { return jQuery.grep( elements, function( elem, i ) {
/* jshint -W018 */
return !!qualifier.call( elem, i, elem ) !== not; return !!qualifier.call( elem, i, elem ) !== not;
} ); } );
@ -3420,7 +3423,7 @@ function adoptValue( value, resolve, reject ) {
// For Promises/A+, convert exceptions into rejections // For Promises/A+, convert exceptions into rejections
// Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in
// Deferred#then to conditionally suppress rejection. // Deferred#then to conditionally suppress rejection.
} catch ( /*jshint -W002 */ value ) { } catch ( value ) {
// Support: Android 4.0 only // Support: Android 4.0 only
// Strict mode functions invoked without .call/.apply get global-object context // Strict mode functions invoked without .call/.apply get global-object context
@ -3785,12 +3788,29 @@ jQuery.Deferred.exceptionHook = function( error, stack ) {
jQuery.readyException = function( error ) {
window.setTimeout( function() {
throw error;
} );
};
// The deferred used on DOM ready // The deferred used on DOM ready
var readyList = jQuery.Deferred(); var readyList = jQuery.Deferred();
jQuery.fn.ready = function( fn ) { jQuery.fn.ready = function( fn ) {
readyList.then( fn ); readyList
.then( fn )
// Wrap jQuery.readyException in a function so that the lookup
// happens at the time of error handling instead of callback
// registration.
.catch( function( error ) {
jQuery.readyException( error );
} );
return this; return this;
}; };
@ -3930,7 +3950,6 @@ var acceptData = function( owner ) {
// - Node.DOCUMENT_NODE // - Node.DOCUMENT_NODE
// - Object // - Object
// - Any // - Any
/* jshint -W018 */
return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );
}; };
@ -4431,8 +4450,12 @@ function adjustCSS( elem, prop, valueParts, tween ) {
scale = 1, scale = 1,
maxIterations = 20, maxIterations = 20,
currentValue = tween ? currentValue = tween ?
function() { return tween.cur(); } : function() {
function() { return jQuery.css( elem, prop, "" ); }, return tween.cur();
} :
function() {
return jQuery.css( elem, prop, "" );
},
initial = currentValue(), initial = currentValue(),
unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ),
@ -5474,8 +5497,14 @@ jQuery.fn.extend( {
var var
/* eslint-disable max-len */
// See https://github.com/eslint/eslint/issues/3229
rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi, rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
/* eslint-enable */
// Support: IE <=10 - 11, Edge 12 - 13 // Support: IE <=10 - 11, Edge 12 - 13
// In IE/Edge using regex groups here causes severe slowdowns. // In IE/Edge using regex groups here causes severe slowdowns.
// See https://connect.microsoft.com/IE/feedback/details/1736512/ // See https://connect.microsoft.com/IE/feedback/details/1736512/
@ -7082,11 +7111,16 @@ jQuery.extend( {
while ( i-- ) { while ( i-- ) {
option = options[ i ]; option = options[ i ];
/* eslint-disable no-cond-assign */
if ( option.selected = if ( option.selected =
jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1
) { ) {
optionSet = true; optionSet = true;
} }
/* eslint-enable no-cond-assign */
} }
// Force browsers to behave consistently when non-matching value is set // Force browsers to behave consistently when non-matching value is set
@ -7929,4 +7963,4 @@ if ( !noGlobal ) {
return jQuery; return jQuery;
} ) ); } );

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,30 +1,18 @@
{ {
"boss": true,
"curly": true,
"eqeqeq": true,
"eqnull": true,
"expr": true,
"immed": true,
"noarg": true,
"quotmark": "double",
"strict": true,
"undef": true,
"unused": true,
"sub": true,
// Support: IE <=9 only, Android <=4.0 only // Support: IE <=9 only, Android <=4.0 only
// The above browsers are failing a lot of tests in the ES5 // The above browsers are failing a lot of tests in the ES5
// test suite at http://test262.ecmascript.org. // test suite at http://test262.ecmascript.org.
"es3": true, "parserOptions": {
"ecmaVersion": 3
},
"globals": { "globals": {
"window": true, "window": true,
"JSON": false,
"jQuery": true, "jQuery": true,
"define": true, "define": true,
"module": true, "module": true,
"noGlobal": true "noGlobal": true
},
"rules": {
"strict": ["error", "function"]
} }
} }

View File

@ -306,6 +306,7 @@ jQuery.extend( {
processData: true, processData: true,
async: true, async: true,
contentType: "application/x-www-form-urlencoded; charset=UTF-8", contentType: "application/x-www-form-urlencoded; charset=UTF-8",
/* /*
timeout: 0, timeout: 0,
data: null, data: null,

View File

@ -143,11 +143,16 @@ jQuery.extend( {
while ( i-- ) { while ( i-- ) {
option = options[ i ]; option = options[ i ];
/* eslint-disable no-cond-assign */
if ( option.selected = if ( option.selected =
jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1
) { ) {
optionSet = true; optionSet = true;
} }
/* eslint-enable no-cond-assign */
} }
// Force browsers to behave consistently when non-matching value is set // Force browsers to behave consistently when non-matching value is set

View File

@ -1,3 +1,7 @@
/* global Symbol */
// Defining this global in .eslintrc would create a danger of using the global
// unguarded in another place, it seems safer to define global only for this module
define( [ define( [
"./var/arr", "./var/arr",
"./var/document", "./var/document",
@ -20,7 +24,7 @@ define( [
"use strict"; "use strict";
var var
version = "3.0.0", version = "3.1.0",
// Define a local copy of jQuery // Define a local copy of jQuery
jQuery = function( selector, context ) { jQuery = function( selector, context ) {
@ -252,7 +256,11 @@ jQuery.extend( {
}, },
isEmptyObject: function( obj ) { isEmptyObject: function( obj ) {
/* eslint-disable no-unused-vars */
// See https://github.com/eslint/eslint/issues/6125
var name; var name;
for ( name in obj ) { for ( name in obj ) {
return false; return false;
} }
@ -442,15 +450,9 @@ jQuery.extend( {
support: support support: support
} ); } );
// JSHint would error on this code due to the Symbol not being defined in ES5.
// Defining this global in .jshintrc would create a danger of using the global
// unguarded in another place, it seems safer to just disable JSHint for these
// three lines.
/* jshint ignore: start */
if ( typeof Symbol === "function" ) { if ( typeof Symbol === "function" ) {
jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];
} }
/* jshint ignore: end */
// Populate the class2type map // Populate the class2type map
jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),

View File

@ -1,6 +1,7 @@
define( [ define( [
"../core", "../core",
"../var/document", "../var/document",
"../core/readyException",
"../deferred" "../deferred"
], function( jQuery, document ) { ], function( jQuery, document ) {
@ -11,7 +12,15 @@ var readyList = jQuery.Deferred();
jQuery.fn.ready = function( fn ) { jQuery.fn.ready = function( fn ) {
readyList.then( fn ); readyList
.then( fn )
// Wrap jQuery.readyException in a function so that the lookup
// happens at the time of error handling instead of callback
// registration.
.catch( function( error ) {
jQuery.readyException( error );
} );
return this; return this;
}; };

View File

@ -0,0 +1,13 @@
define( [
"../core"
], function( jQuery ) {
"use strict";
jQuery.readyException = function( error ) {
window.setTimeout( function() {
throw error;
} );
};
} );

View File

@ -10,8 +10,12 @@ function adjustCSS( elem, prop, valueParts, tween ) {
scale = 1, scale = 1,
maxIterations = 20, maxIterations = 20,
currentValue = tween ? currentValue = tween ?
function() { return tween.cur(); } : function() {
function() { return jQuery.css( elem, prop, "" ); }, return tween.cur();
} :
function() {
return jQuery.css( elem, prop, "" );
},
initial = currentValue(), initial = currentValue(),
unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ),

View File

@ -37,7 +37,7 @@ function adoptValue( value, resolve, reject ) {
// For Promises/A+, convert exceptions into rejections // For Promises/A+, convert exceptions into rejections
// Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in
// Deferred#then to conditionally suppress rejection. // Deferred#then to conditionally suppress rejection.
} catch ( /*jshint -W002 */ value ) { } catch ( value ) {
// Support: Android 4.0 only // Support: Android 4.0 only
// Strict mode functions invoked without .call/.apply get global-object context // Strict mode functions invoked without .call/.apply get global-object context

View File

@ -78,7 +78,6 @@ function createTween( value, prop, animation ) {
} }
function defaultPrefilter( elem, props, opts ) { function defaultPrefilter( elem, props, opts ) {
/* jshint validthis: true */
var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display,
isBox = "width" in props || "height" in props, isBox = "width" in props || "height" in props,
anim = this, anim = this,
@ -220,9 +219,12 @@ function defaultPrefilter( elem, props, opts ) {
showHide( [ elem ], true ); showHide( [ elem ], true );
} }
/* jshint -W083 */ /* eslint-disable no-loop-func */
anim.done( function() { anim.done( function() {
/* eslint-enable no-loop-func */
// The final step of a "hide" animation is actually hiding the element // The final step of a "hide" animation is actually hiding the element
if ( !hidden ) { if ( !hidden ) {
showHide( [ elem ] ); showHide( [ elem ] );

View File

@ -2,7 +2,7 @@
// This file is included in a different way from all the others // This file is included in a different way from all the others
// so the "use strict" pragma is not needed. // so the "use strict" pragma is not needed.
/* jshint strict: false */ /* eslint strict: "off" */
/* ExcludeEnd */ /* ExcludeEnd */

View File

@ -29,8 +29,14 @@ define( [
"use strict"; "use strict";
var var
/* eslint-disable max-len */
// See https://github.com/eslint/eslint/issues/3229
rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi, rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
/* eslint-enable */
// Support: IE <=10 - 11, Edge 12 - 13 // Support: IE <=10 - 11, Edge 12 - 13
// In IE/Edge using regex groups here causes severe slowdowns. // In IE/Edge using regex groups here causes severe slowdowns.
// See https://connect.microsoft.com/IE/feedback/details/1736512/ // See https://connect.microsoft.com/IE/feedback/details/1736512/

View File

@ -1 +1,3 @@
define( [ "./selector-sizzle" ], function() {} ); define( [ "./selector-sizzle" ], function() {
"use strict";
} );

View File

@ -13,7 +13,6 @@ var risSimple = /^.[^:#\[\.,]*$/;
function winnow( elements, qualifier, not ) { function winnow( elements, qualifier, not ) {
if ( jQuery.isFunction( qualifier ) ) { if ( jQuery.isFunction( qualifier ) ) {
return jQuery.grep( elements, function( elem, i ) { return jQuery.grep( elements, function( elem, i ) {
/* jshint -W018 */
return !!qualifier.call( elem, i, elem ) !== not; return !!qualifier.call( elem, i, elem ) !== not;
} ); } );

View File

@ -31,14 +31,14 @@
"web-component-tester": "*" "web-component-tester": "*"
}, },
"private": true, "private": true,
"homepage": "https://github.com/polymer/polymer", "homepage": "https://github.com/Polymer/polymer",
"_release": "1.6.0", "_release": "1.6.0",
"_resolution": { "_resolution": {
"type": "version", "type": "version",
"tag": "v1.6.0", "tag": "v1.6.0",
"commit": "8715c83bf04a228de00ec662ed43eb6141e61b91" "commit": "8715c83bf04a228de00ec662ed43eb6141e61b91"
}, },
"_source": "git://github.com/polymer/polymer.git", "_source": "git://github.com/Polymer/polymer.git",
"_target": "^1.0.0", "_target": "^1.1.0",
"_originalSource": "polymer/polymer" "_originalSource": "Polymer/polymer"
} }

View File

@ -1,6 +1,7 @@
<div id="musicRecommendedPage" data-dom-cache="true" data-role="page" class="page libraryPage backdropPage pageWithAbsoluteTabs" data-backdroptype="musicartist"> <div id="musicRecommendedPage" data-dom-cache="true" data-role="page" class="page libraryPage backdropPage pageWithAbsoluteTabs" data-backdroptype="musicartist">
<div class="libraryViewNav"> <div class="libraryViewNav">
<div class="contentScrollSlider">
<button class="pageTabButton is-active" data-index="0">${TabSuggestions}</button> <button class="pageTabButton is-active" data-index="0">${TabSuggestions}</button>
<button class="pageTabButton" data-index="1">${TabAlbums}</button> <button class="pageTabButton" data-index="1">${TabAlbums}</button>
<button class="pageTabButton" data-index="2">${TabAlbumArtists}</button> <button class="pageTabButton" data-index="2">${TabAlbumArtists}</button>
@ -9,6 +10,7 @@
<button class="pageTabButton" data-index="5">${TabGenres}</button> <button class="pageTabButton" data-index="5">${TabGenres}</button>
<button class="pageTabButton" data-index="6">${TabFolders}</button> <button class="pageTabButton" data-index="6">${TabFolders}</button>
</div> </div>
</div>
<div class="pageTabContent is-active pageTabContent ehsContent" id="suggestionsTab" data-index="0"> <div class="pageTabContent is-active pageTabContent ehsContent" id="suggestionsTab" data-index="0">
<div class="homePageSection"> <div class="homePageSection">
<h1 class="listHeader">${HeaderLatestMusic}</h1> <h1 class="listHeader">${HeaderLatestMusic}</h1>

View File

@ -24,7 +24,7 @@
StartIndex: 0, StartIndex: 0,
Limit: pageSize Limit: pageSize
}, },
view: libraryBrowser.getSavedView(key) || libraryBrowser.getDefaultItemsView('Poster', 'Poster') view: libraryBrowser.getSavedView(key) || libraryBrowser.getDefaultItemsView('PosterCard', 'PosterCard')
}; };
pageData.query.ParentId = params.topParentId; pageData.query.ParentId = params.topParentId;

View File

@ -22,7 +22,7 @@
EnableImageTypes: "Primary,Backdrop,Banner,Thumb", EnableImageTypes: "Primary,Backdrop,Banner,Thumb",
Limit: LibraryBrowser.getDefaultPageSize() Limit: LibraryBrowser.getDefaultPageSize()
}, },
view: libraryBrowser.getSavedView(key) || libraryBrowser.getDefaultItemsView('Poster', 'Poster') view: libraryBrowser.getSavedView(key) || libraryBrowser.getDefaultItemsView('PosterCard', 'PosterCard')
}; };
pageData.query.ParentId = params.topParentId; pageData.query.ParentId = params.topParentId;

View File

@ -1180,23 +1180,15 @@ var Dashboard = {
} }
if (browserInfo.mobile) { if (browserInfo.mobile) {
quality -= 15; quality -= 20;
} }
if (AppInfo.hasLowImageBandwidth) { if (AppInfo.hasLowImageBandwidth) {
// The native app can handle a little bit more than safari // The native app can handle a little bit more than safari
if (AppInfo.isNativeApp) { if (!AppInfo.isNativeApp) {
if (isBackdrop) { quality -= 20;
quality -= 5;
} else {
quality -= 5;
}
} else {
quality -= 25;
} }
} }