|
|
|
@ -1,15 +1,15 @@ |
|
|
|
|
/*! |
|
|
|
|
* jQuery JavaScript Library v3.5.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-deprecated/ajax-event-alias,-effects,-effects/Tween,-effects/animatedSelector |
|
|
|
|
* jQuery JavaScript Library v3.6.0 -ajax,-ajax/jsonp,-ajax/load,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-deprecated/ajax-event-alias,-effects,-effects/Tween,-effects/animatedSelector |
|
|
|
|
* https://jquery.com/
|
|
|
|
|
* |
|
|
|
|
* Includes Sizzle.js |
|
|
|
|
* https://sizzlejs.com/
|
|
|
|
|
* |
|
|
|
|
* Copyright JS Foundation and other contributors |
|
|
|
|
* Copyright OpenJS Foundation and other contributors |
|
|
|
|
* Released under the MIT license |
|
|
|
|
* https://jquery.org/license
|
|
|
|
|
* |
|
|
|
|
* Date: 2020-05-04T22:49Z |
|
|
|
|
* Date: 2021-03-02T17:08Z |
|
|
|
|
*/ |
|
|
|
|
( function( global, factory ) { |
|
|
|
|
|
|
|
|
@ -80,7 +80,11 @@ var isFunction = function isFunction( obj ) { |
|
|
|
|
// In some browsers, typeof returns "function" for HTML <object> elements
|
|
|
|
|
// (i.e., `typeof document.createElement( "object" ) === "function"`).
|
|
|
|
|
// We don't want to classify *any* DOM node as a function.
|
|
|
|
|
return typeof obj === "function" && typeof obj.nodeType !== "number"; |
|
|
|
|
// Support: QtWeb <=3.8.5, WebKit <=534.34, wkhtmltopdf tool <=0.12.5
|
|
|
|
|
// Plus for old WebKit, typeof returns "function" for HTML collections
|
|
|
|
|
// (e.g., `typeof document.getElementsByTagName("div") === "function"`). (gh-4756)
|
|
|
|
|
return typeof obj === "function" && typeof obj.nodeType !== "number" && |
|
|
|
|
typeof obj.item !== "function"; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -147,7 +151,7 @@ function toType( obj ) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var |
|
|
|
|
version = "3.5.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-deprecated/ajax-event-alias,-effects,-effects/Tween,-effects/animatedSelector", |
|
|
|
|
version = "3.6.0 -ajax,-ajax/jsonp,-ajax/load,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-deprecated/ajax-event-alias,-effects,-effects/Tween,-effects/animatedSelector", |
|
|
|
|
|
|
|
|
|
// Define a local copy of jQuery
|
|
|
|
|
jQuery = function( selector, context ) { |
|
|
|
@ -496,9 +500,9 @@ if ( typeof Symbol === "function" ) { |
|
|
|
|
|
|
|
|
|
// Populate the class2type map
|
|
|
|
|
jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), |
|
|
|
|
function( _i, name ) { |
|
|
|
|
function( _i, name ) { |
|
|
|
|
class2type[ "[object " + name + "]" ] = name.toLowerCase(); |
|
|
|
|
} ); |
|
|
|
|
} ); |
|
|
|
|
|
|
|
|
|
function isArrayLike( obj ) { |
|
|
|
|
|
|
|
|
@ -518,14 +522,14 @@ function isArrayLike( obj ) { |
|
|
|
|
} |
|
|
|
|
var Sizzle = |
|
|
|
|
/*! |
|
|
|
|
* Sizzle CSS Selector Engine v2.3.5 |
|
|
|
|
* Sizzle CSS Selector Engine v2.3.6 |
|
|
|
|
* https://sizzlejs.com/
|
|
|
|
|
* |
|
|
|
|
* Copyright JS Foundation and other contributors |
|
|
|
|
* Released under the MIT license |
|
|
|
|
* https://js.foundation/
|
|
|
|
|
* |
|
|
|
|
* Date: 2020-03-14 |
|
|
|
|
* Date: 2021-02-16 |
|
|
|
|
*/ |
|
|
|
|
( function( window ) { |
|
|
|
|
var i, |
|
|
|
@ -1108,8 +1112,8 @@ support = Sizzle.support = {}; |
|
|
|
|
* @returns {Boolean} True iff elem is a non-HTML XML node |
|
|
|
|
*/ |
|
|
|
|
isXML = Sizzle.isXML = function( elem ) { |
|
|
|
|
var namespace = elem.namespaceURI, |
|
|
|
|
docElem = ( elem.ownerDocument || elem ).documentElement; |
|
|
|
|
var namespace = elem && elem.namespaceURI, |
|
|
|
|
docElem = elem && ( elem.ownerDocument || elem ).documentElement; |
|
|
|
|
|
|
|
|
|
// Support: IE <=8
|
|
|
|
|
// Assume HTML when documentElement doesn't yet exist, such as inside loading iframes
|
|
|
|
@ -3026,7 +3030,7 @@ function nodeName( elem, name ) { |
|
|
|
|
|
|
|
|
|
return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); |
|
|
|
|
|
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|
var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i ); |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -3997,8 +4001,8 @@ jQuery.extend( { |
|
|
|
|
resolveContexts = Array( i ), |
|
|
|
|
resolveValues = slice.call( arguments ), |
|
|
|
|
|
|
|
|
|
// the master Deferred
|
|
|
|
|
master = jQuery.Deferred(), |
|
|
|
|
// the primary Deferred
|
|
|
|
|
primary = jQuery.Deferred(), |
|
|
|
|
|
|
|
|
|
// subordinate callback factory
|
|
|
|
|
updateFunc = function( i ) { |
|
|
|
@ -4006,30 +4010,30 @@ jQuery.extend( { |
|
|
|
|
resolveContexts[ i ] = this; |
|
|
|
|
resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; |
|
|
|
|
if ( !( --remaining ) ) { |
|
|
|
|
master.resolveWith( resolveContexts, resolveValues ); |
|
|
|
|
primary.resolveWith( resolveContexts, resolveValues ); |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// Single- and empty arguments are adopted like Promise.resolve
|
|
|
|
|
if ( remaining <= 1 ) { |
|
|
|
|
adoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject, |
|
|
|
|
adoptValue( singleValue, primary.done( updateFunc( i ) ).resolve, primary.reject, |
|
|
|
|
!remaining ); |
|
|
|
|
|
|
|
|
|
// Use .then() to unwrap secondary thenables (cf. gh-3000)
|
|
|
|
|
if ( master.state() === "pending" || |
|
|
|
|
if ( primary.state() === "pending" || |
|
|
|
|
isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { |
|
|
|
|
|
|
|
|
|
return master.then(); |
|
|
|
|
return primary.then(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Multiple arguments are aggregated like Promise.all array elements
|
|
|
|
|
while ( i-- ) { |
|
|
|
|
adoptValue( resolveValues[ i ], updateFunc( i ), master.reject ); |
|
|
|
|
adoptValue( resolveValues[ i ], updateFunc( i ), primary.reject ); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return master.promise(); |
|
|
|
|
return primary.promise(); |
|
|
|
|
} |
|
|
|
|
} ); |
|
|
|
|
|
|
|
|
@ -5089,10 +5093,7 @@ function buildFragment( elems, context, scripts, selection, ignored ) { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var |
|
|
|
|
rkeyEvent = /^key/, |
|
|
|
|
rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, |
|
|
|
|
rtypenamespace = /^([^.]*)(?:\.(.+)|)/; |
|
|
|
|
var rtypenamespace = /^([^.]*)(?:\.(.+)|)/; |
|
|
|
|
|
|
|
|
|
function returnTrue() { |
|
|
|
|
return true; |
|
|
|
@ -5656,7 +5657,13 @@ function leverageNative( el, type, expectSync ) { |
|
|
|
|
// Cancel the outer synthetic event
|
|
|
|
|
event.stopImmediatePropagation(); |
|
|
|
|
event.preventDefault(); |
|
|
|
|
return result.value; |
|
|
|
|
|
|
|
|
|
// Support: Chrome 86+
|
|
|
|
|
// In Chrome, if an element having a focusout handler is blurred by
|
|
|
|
|
// clicking outside of it, it invokes the handler synchronously. If
|
|
|
|
|
// that handler calls `.remove()` on the element, the data is cleared,
|
|
|
|
|
// leaving `result` undefined. We need to guard against this.
|
|
|
|
|
return result && result.value; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// If this is an inner synthetic event for an event with a bubbling surrogate
|
|
|
|
@ -5821,34 +5828,7 @@ jQuery.each( { |
|
|
|
|
targetTouches: true, |
|
|
|
|
toElement: true, |
|
|
|
|
touches: true, |
|
|
|
|
|
|
|
|
|
which: function( event ) { |
|
|
|
|
var button = event.button; |
|
|
|
|
|
|
|
|
|
// Add which for key events
|
|
|
|
|
if ( event.which == null && rkeyEvent.test( event.type ) ) { |
|
|
|
|
return event.charCode != null ? event.charCode : event.keyCode; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Add which for click: 1 === left; 2 === middle; 3 === right
|
|
|
|
|
if ( !event.which && button !== undefined && rmouseEvent.test( event.type ) ) { |
|
|
|
|
if ( button & 1 ) { |
|
|
|
|
return 1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ( button & 2 ) { |
|
|
|
|
return 3; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ( button & 4 ) { |
|
|
|
|
return 2; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return event.which; |
|
|
|
|
} |
|
|
|
|
which: true |
|
|
|
|
}, jQuery.event.addProp ); |
|
|
|
|
|
|
|
|
|
jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) { |
|
|
|
@ -5874,6 +5854,12 @@ jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateTyp |
|
|
|
|
return true; |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
// Suppress native focus or blur as it's already being fired
|
|
|
|
|
// in leverageNative.
|
|
|
|
|
_default: function() { |
|
|
|
|
return true; |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
delegateType: delegateType |
|
|
|
|
}; |
|
|
|
|
} ); |
|
|
|
@ -6541,6 +6527,10 @@ var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); |
|
|
|
|
// set in CSS while `offset*` properties report correct values.
|
|
|
|
|
// Behavior in IE 9 is more subtle than in newer versions & it passes
|
|
|
|
|
// some versions of this test; make sure not to make it pass there!
|
|
|
|
|
//
|
|
|
|
|
// Support: Firefox 70+
|
|
|
|
|
// Only Firefox includes border widths
|
|
|
|
|
// in computed dimensions. (gh-4529)
|
|
|
|
|
reliableTrDimensions: function() { |
|
|
|
|
var table, tr, trChild, trStyle; |
|
|
|
|
if ( reliableTrDimensionsVal == null ) { |
|
|
|
@ -6548,17 +6538,32 @@ var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); |
|
|
|
|
tr = document.createElement( "tr" ); |
|
|
|
|
trChild = document.createElement( "div" ); |
|
|
|
|
|
|
|
|
|
table.style.cssText = "position:absolute;left:-11111px"; |
|
|
|
|
table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate"; |
|
|
|
|
tr.style.cssText = "border:1px solid"; |
|
|
|
|
|
|
|
|
|
// Support: Chrome 86+
|
|
|
|
|
// Height set through cssText does not get applied.
|
|
|
|
|
// Computed height then comes back as 0.
|
|
|
|
|
tr.style.height = "1px"; |
|
|
|
|
trChild.style.height = "9px"; |
|
|
|
|
|
|
|
|
|
// Support: Android 8 Chrome 86+
|
|
|
|
|
// In our bodyBackground.html iframe,
|
|
|
|
|
// display for all div elements is set to "inline",
|
|
|
|
|
// which causes a problem only in Android 8 Chrome 86.
|
|
|
|
|
// Ensuring the div is display: block
|
|
|
|
|
// gets around this issue.
|
|
|
|
|
trChild.style.display = "block"; |
|
|
|
|
|
|
|
|
|
documentElement |
|
|
|
|
.appendChild( table ) |
|
|
|
|
.appendChild( tr ) |
|
|
|
|
.appendChild( trChild ); |
|
|
|
|
|
|
|
|
|
trStyle = window.getComputedStyle( tr ); |
|
|
|
|
reliableTrDimensionsVal = parseInt( trStyle.height ) > 3; |
|
|
|
|
reliableTrDimensionsVal = ( parseInt( trStyle.height, 10 ) + |
|
|
|
|
parseInt( trStyle.borderTopWidth, 10 ) + |
|
|
|
|
parseInt( trStyle.borderBottomWidth, 10 ) ) === tr.offsetHeight; |
|
|
|
|
|
|
|
|
|
documentElement.removeChild( table ); |
|
|
|
|
} |
|
|
|
@ -7914,9 +7919,7 @@ jQuery.extend( jQuery.event, { |
|
|
|
|
special.bindType || type; |
|
|
|
|
|
|
|
|
|
// jQuery handler
|
|
|
|
|
handle = ( |
|
|
|
|
dataPriv.get( cur, "events" ) || Object.create( null ) |
|
|
|
|
)[ event.type ] && |
|
|
|
|
handle = ( dataPriv.get( cur, "events" ) || Object.create( null ) )[ event.type ] && |
|
|
|
|
dataPriv.get( cur, "handle" ); |
|
|
|
|
if ( handle ) { |
|
|
|
|
handle.apply( cur, data ); |
|
|
|
@ -8057,7 +8060,7 @@ if ( !support.focusin ) { |
|
|
|
|
|
|
|
|
|
// Cross-browser xml parsing
|
|
|
|
|
jQuery.parseXML = function( data ) { |
|
|
|
|
var xml; |
|
|
|
|
var xml, parserErrorElem; |
|
|
|
|
if ( !data || typeof data !== "string" ) { |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
@ -8066,12 +8069,17 @@ jQuery.parseXML = function( data ) { |
|
|
|
|
// IE throws on parseFromString with invalid input.
|
|
|
|
|
try { |
|
|
|
|
xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" ); |
|
|
|
|
} catch ( e ) { |
|
|
|
|
xml = undefined; |
|
|
|
|
} |
|
|
|
|
} catch ( e ) {} |
|
|
|
|
|
|
|
|
|
if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) { |
|
|
|
|
jQuery.error( "Invalid XML: " + data ); |
|
|
|
|
parserErrorElem = xml && xml.getElementsByTagName( "parsererror" )[ 0 ]; |
|
|
|
|
if ( !xml || parserErrorElem ) { |
|
|
|
|
jQuery.error( "Invalid XML: " + ( |
|
|
|
|
parserErrorElem ? |
|
|
|
|
jQuery.map( parserErrorElem.childNodes, function( el ) { |
|
|
|
|
return el.textContent; |
|
|
|
|
} ).join( "\n" ) : |
|
|
|
|
data |
|
|
|
|
) ); |
|
|
|
|
} |
|
|
|
|
return xml; |
|
|
|
|
}; |
|
|
|
@ -8172,16 +8180,14 @@ jQuery.fn.extend( { |
|
|
|
|
// Can add propHook for "elements" to filter or add form elements
|
|
|
|
|
var elements = jQuery.prop( this, "elements" ); |
|
|
|
|
return elements ? jQuery.makeArray( elements ) : this; |
|
|
|
|
} ) |
|
|
|
|
.filter( function() { |
|
|
|
|
} ).filter( function() { |
|
|
|
|
var type = this.type; |
|
|
|
|
|
|
|
|
|
// Use .is( ":disabled" ) so that fieldset[disabled] works
|
|
|
|
|
return this.name && !jQuery( this ).is( ":disabled" ) && |
|
|
|
|
rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) && |
|
|
|
|
( this.checked || !rcheckableType.test( type ) ); |
|
|
|
|
} ) |
|
|
|
|
.map( function( _i, elem ) { |
|
|
|
|
} ).map( function( _i, elem ) { |
|
|
|
|
var val = jQuery( this ).val(); |
|
|
|
|
|
|
|
|
|
if ( val == null ) { |
|
|
|
@ -8387,12 +8393,6 @@ jQuery.offset = { |
|
|
|
|
options.using.call( elem, props ); |
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
if ( typeof props.top === "number" ) { |
|
|
|
|
props.top += "px"; |
|
|
|
|
} |
|
|
|
|
if ( typeof props.left === "number" ) { |
|
|
|
|
props.left += "px"; |
|
|
|
|
} |
|
|
|
|
curElem.css( props ); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -8561,8 +8561,11 @@ jQuery.each( [ "top", "left" ], function( _i, prop ) { |
|
|
|
|
|
|
|
|
|
// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods
|
|
|
|
|
jQuery.each( { Height: "height", Width: "width" }, function( name, type ) { |
|
|
|
|
jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name }, |
|
|
|
|
function( defaultExtra, funcName ) { |
|
|
|
|
jQuery.each( { |
|
|
|
|
padding: "inner" + name, |
|
|
|
|
content: type, |
|
|
|
|
"": "outer" + name |
|
|
|
|
}, function( defaultExtra, funcName ) { |
|
|
|
|
|
|
|
|
|
// Margin is only for outerHeight, outerWidth
|
|
|
|
|
jQuery.fn[ funcName ] = function( margin, value ) { |
|
|
|
@ -8631,7 +8634,8 @@ jQuery.fn.extend( { |
|
|
|
|
} |
|
|
|
|
} ); |
|
|
|
|
|
|
|
|
|
jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " + |
|
|
|
|
jQuery.each( |
|
|
|
|
( "blur focus focusin focusout resize scroll click dblclick " + |
|
|
|
|
"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + |
|
|
|
|
"change select submit keydown keypress keyup contextmenu" ).split( " " ), |
|
|
|
|
function( _i, name ) { |
|
|
|
@ -8642,7 +8646,8 @@ jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " + |
|
|
|
|
this.on( name, null, data, fn ) : |
|
|
|
|
this.trigger( name ); |
|
|
|
|
}; |
|
|
|
|
} ); |
|
|
|
|
} |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|