From 2817fc6a762b96ebcb283599e34f4060c50241bf Mon Sep 17 00:00:00 2001 From: Dirk Alders Date: Tue, 28 Jan 2020 21:51:59 +0100 Subject: [PATCH] stringtools documentation updated --- .../unittest.pdf | Bin 238089 -> 0 bytes _docs_/_downloads/unittest.pdf | Bin 284964 -> 287973 bytes _docs_/_static/documentation_options.js | 10 - _docs_/_static/jquery-3.2.1.js | 10253 ---------------- _docs_/_static/language_data.js | 297 - _docs_/_static/underscore-1.3.1.js | 999 -- _docs_/index.html | 80 +- _docs_/searchindex.js | 2 +- 8 files changed, 35 insertions(+), 11606 deletions(-) delete mode 100644 _docs_/_downloads/ff52811ec541013fb25b89de3139897b/unittest.pdf delete mode 100644 _docs_/_static/documentation_options.js delete mode 100644 _docs_/_static/jquery-3.2.1.js delete mode 100644 _docs_/_static/language_data.js delete mode 100644 _docs_/_static/underscore-1.3.1.js diff --git a/_docs_/_downloads/ff52811ec541013fb25b89de3139897b/unittest.pdf b/_docs_/_downloads/ff52811ec541013fb25b89de3139897b/unittest.pdf deleted file mode 100644 index 8dad02d797779930d8ae1c3269710d1b0c97f812..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 238089 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�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�fOdiHY?~s7^|S} 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

eoKcXdt2zB8fGC(s$4U= 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 0 && j < len ? [ this[ j ] ] : [] ); - }, - - end: function() { - return this.prevObject || this.constructor(); - }, - - // For internal use only. - // Behaves like an Array's method, not like a jQuery method. - push: push, - sort: arr.sort, - splice: arr.splice -}; - -jQuery.extend = jQuery.fn.extend = function() { - var options, name, src, copy, copyIsArray, clone, - target = arguments[ 0 ] || {}, - i = 1, - length = arguments.length, - deep = false; - - // Handle a deep copy situation - if ( typeof target === "boolean" ) { - deep = target; - - // Skip the boolean and the target - target = arguments[ i ] || {}; - i++; - } - - // Handle case when target is a string or something (possible in deep copy) - if ( typeof target !== "object" && !jQuery.isFunction( target ) ) { - target = {}; - } - - // Extend jQuery itself if only one argument is passed - if ( i === length ) { - target = this; - i--; - } - - for ( ; i < length; i++ ) { - - // Only deal with non-null/undefined values - if ( ( options = arguments[ i ] ) != null ) { - - // Extend the base object - for ( name in options ) { - src = target[ name ]; - copy = options[ name ]; - - // Prevent never-ending loop - if ( target === copy ) { - continue; - } - - // Recurse if we're merging plain objects or arrays - if ( deep && copy && ( jQuery.isPlainObject( copy ) || - ( copyIsArray = Array.isArray( copy ) ) ) ) { - - if ( copyIsArray ) { - copyIsArray = false; - clone = src && Array.isArray( src ) ? src : []; - - } else { - clone = src && jQuery.isPlainObject( src ) ? src : {}; - } - - // Never move original objects, clone them - target[ name ] = jQuery.extend( deep, clone, copy ); - - // Don't bring in undefined values - } else if ( copy !== undefined ) { - target[ name ] = copy; - } - } - } - } - - // Return the modified object - return target; -}; - -jQuery.extend( { - - // Unique for each copy of jQuery on the page - expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), - - // Assume jQuery is ready without the ready module - isReady: true, - - error: function( msg ) { - throw new Error( msg ); - }, - - noop: function() {}, - - isFunction: function( obj ) { - return jQuery.type( obj ) === "function"; - }, - - isWindow: function( obj ) { - return obj != null && obj === obj.window; - }, - - isNumeric: function( obj ) { - - // As of jQuery 3.0, isNumeric is limited to - // strings and numbers (primitives or objects) - // that can be coerced to finite numbers (gh-2662) - var type = jQuery.type( obj ); - return ( type === "number" || type === "string" ) && - - // parseFloat NaNs numeric-cast false positives ("") - // ...but misinterprets leading-number strings, particularly hex literals ("0x...") - // subtraction forces infinities to NaN - !isNaN( obj - parseFloat( obj ) ); - }, - - isPlainObject: function( obj ) { - var proto, Ctor; - - // Detect obvious negatives - // Use toString instead of jQuery.type to catch host objects - if ( !obj || toString.call( obj ) !== "[object Object]" ) { - return false; - } - - proto = getProto( obj ); - - // Objects with no prototype (e.g., `Object.create( null )`) are plain - if ( !proto ) { - return true; - } - - // Objects with prototype are plain iff they were constructed by a global Object function - Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor; - return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString; - }, - - isEmptyObject: function( obj ) { - - /* eslint-disable no-unused-vars */ - // See https://github.com/eslint/eslint/issues/6125 - var name; - - for ( name in obj ) { - return false; - } - return true; - }, - - type: function( obj ) { - if ( obj == null ) { - return obj + ""; - } - - // Support: Android <=2.3 only (functionish RegExp) - return typeof obj === "object" || typeof obj === "function" ? - class2type[ toString.call( obj ) ] || "object" : - typeof obj; - }, - - // Evaluates a script in a global context - globalEval: function( code ) { - DOMEval( code ); - }, - - // Convert dashed to camelCase; used by the css and data modules - // Support: IE <=9 - 11, Edge 12 - 13 - // Microsoft forgot to hump their vendor prefix (#9572) - camelCase: function( string ) { - return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); - }, - - each: function( obj, callback ) { - var length, i = 0; - - if ( isArrayLike( obj ) ) { - length = obj.length; - for ( ; i < length; i++ ) { - if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { - break; - } - } - } else { - for ( i in obj ) { - if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { - break; - } - } - } - - return obj; - }, - - // Support: Android <=4.0 only - trim: function( text ) { - return text == null ? - "" : - ( text + "" ).replace( rtrim, "" ); - }, - - // results is for internal usage only - makeArray: function( arr, results ) { - var ret = results || []; - - if ( arr != null ) { - if ( isArrayLike( Object( arr ) ) ) { - jQuery.merge( ret, - typeof arr === "string" ? - [ arr ] : arr - ); - } else { - push.call( ret, arr ); - } - } - - return ret; - }, - - inArray: function( elem, arr, i ) { - return arr == null ? -1 : indexOf.call( arr, elem, i ); - }, - - // Support: Android <=4.0 only, PhantomJS 1 only - // push.apply(_, arraylike) throws on ancient WebKit - merge: function( first, second ) { - var len = +second.length, - j = 0, - i = first.length; - - for ( ; j < len; j++ ) { - first[ i++ ] = second[ j ]; - } - - first.length = i; - - return first; - }, - - grep: function( elems, callback, invert ) { - var callbackInverse, - matches = [], - i = 0, - length = elems.length, - callbackExpect = !invert; - - // Go through the array, only saving the items - // that pass the validator function - for ( ; i < length; i++ ) { - callbackInverse = !callback( elems[ i ], i ); - if ( callbackInverse !== callbackExpect ) { - matches.push( elems[ i ] ); - } - } - - return matches; - }, - - // arg is for internal usage only - map: function( elems, callback, arg ) { - var length, value, - i = 0, - ret = []; - - // Go through the array, translating each of the items to their new values - if ( isArrayLike( elems ) ) { - length = elems.length; - for ( ; i < length; i++ ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - - // Go through every key on the object, - } else { - for ( i in elems ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - } - - // Flatten any nested arrays - return concat.apply( [], ret ); - }, - - // A global GUID counter for objects - guid: 1, - - // Bind a function to a context, optionally partially applying any - // arguments. - proxy: function( fn, context ) { - var tmp, args, proxy; - - if ( typeof context === "string" ) { - tmp = fn[ context ]; - context = fn; - fn = tmp; - } - - // Quick check to determine if target is callable, in the spec - // this throws a TypeError, but we will just return undefined. - if ( !jQuery.isFunction( fn ) ) { - return undefined; - } - - // Simulated bind - args = slice.call( arguments, 2 ); - proxy = function() { - return fn.apply( context || this, args.concat( slice.call( arguments ) ) ); - }; - - // Set the guid of unique handler to the same of original handler, so it can be removed - proxy.guid = fn.guid = fn.guid || jQuery.guid++; - - return proxy; - }, - - now: Date.now, - - // jQuery.support is not used in Core but other projects attach their - // properties to it so it needs to exist. - support: support -} ); - -if ( typeof Symbol === "function" ) { - jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; -} - -// Populate the class2type map -jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), -function( i, name ) { - class2type[ "[object " + name + "]" ] = name.toLowerCase(); -} ); - -function isArrayLike( obj ) { - - // Support: real iOS 8.2 only (not reproducible in simulator) - // `in` check used to prevent JIT error (gh-2145) - // hasOwn isn't used here due to false negatives - // regarding Nodelist length in IE - var length = !!obj && "length" in obj && obj.length, - type = jQuery.type( obj ); - - if ( type === "function" || jQuery.isWindow( obj ) ) { - return false; - } - - return type === "array" || length === 0 || - typeof length === "number" && length > 0 && ( length - 1 ) in obj; -} -var Sizzle = -/*! - * Sizzle CSS Selector Engine v2.3.3 - * https://sizzlejs.com/ - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2016-08-08 - */ -(function( window ) { - -var i, - support, - Expr, - getText, - isXML, - tokenize, - compile, - select, - outermostContext, - sortInput, - hasDuplicate, - - // Local document vars - setDocument, - document, - docElem, - documentIsHTML, - rbuggyQSA, - rbuggyMatches, - matches, - contains, - - // Instance-specific data - expando = "sizzle" + 1 * new Date(), - preferredDoc = window.document, - dirruns = 0, - done = 0, - classCache = createCache(), - tokenCache = createCache(), - compilerCache = createCache(), - sortOrder = function( a, b ) { - if ( a === b ) { - hasDuplicate = true; - } - return 0; - }, - - // Instance methods - hasOwn = ({}).hasOwnProperty, - arr = [], - pop = arr.pop, - push_native = arr.push, - push = arr.push, - slice = arr.slice, - // Use a stripped-down indexOf as it's faster than native - // https://jsperf.com/thor-indexof-vs-for/5 - indexOf = function( list, elem ) { - var i = 0, - len = list.length; - for ( ; i < len; i++ ) { - if ( list[i] === elem ) { - return i; - } - } - return -1; - }, - - booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", - - // Regular expressions - - // http://www.w3.org/TR/css3-selectors/#whitespace - whitespace = "[\\x20\\t\\r\\n\\f]", - - // http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier - identifier = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+", - - // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors - attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + - // Operator (capture 2) - "*([*^$|!~]?=)" + whitespace + - // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]" - "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + - "*\\]", - - pseudos = ":(" + identifier + ")(?:\\((" + - // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: - // 1. quoted (capture 3; capture 4 or capture 5) - "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + - // 2. simple (capture 6) - "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + - // 3. anything else (capture 2) - ".*" + - ")\\)|)", - - // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter - rwhitespace = new RegExp( whitespace + "+", "g" ), - rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ), - - rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), - rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ), - - rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ), - - rpseudo = new RegExp( pseudos ), - ridentifier = new RegExp( "^" + identifier + "$" ), - - matchExpr = { - "ID": new RegExp( "^#(" + identifier + ")" ), - "CLASS": new RegExp( "^\\.(" + identifier + ")" ), - "TAG": new RegExp( "^(" + identifier + "|[*])" ), - "ATTR": new RegExp( "^" + attributes ), - "PSEUDO": new RegExp( "^" + pseudos ), - "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + - "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + - "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), - "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), - // For use in libraries implementing .is() - // We use this for POS matching in `select` - "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + - whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) - }, - - rinputs = /^(?:input|select|textarea|button)$/i, - rheader = /^h\d$/i, - - rnative = /^[^{]+\{\s*\[native \w/, - - // Easily-parseable/retrievable ID or TAG or CLASS selectors - rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, - - rsibling = /[+~]/, - - // CSS escapes - // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters - runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ), - funescape = function( _, escaped, escapedWhitespace ) { - var high = "0x" + escaped - 0x10000; - // NaN means non-codepoint - // Support: Firefox<24 - // Workaround erroneous numeric interpretation of +"0x" - return high !== high || escapedWhitespace ? - escaped : - high < 0 ? - // BMP codepoint - String.fromCharCode( high + 0x10000 ) : - // Supplemental Plane codepoint (surrogate pair) - String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); - }, - - // CSS string/identifier serialization - // https://drafts.csswg.org/cssom/#common-serializing-idioms - rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, - fcssescape = function( ch, asCodePoint ) { - if ( asCodePoint ) { - - // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER - if ( ch === "\0" ) { - return "\uFFFD"; - } - - // Control characters and (dependent upon position) numbers get escaped as code points - return ch.slice( 0, -1 ) + "\\" + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " "; - } - - // Other potentially-special ASCII characters get backslash-escaped - return "\\" + ch; - }, - - // Used for iframes - // See setDocument() - // Removing the function wrapper causes a "Permission Denied" - // error in IE - unloadHandler = function() { - setDocument(); - }, - - disabledAncestor = addCombinator( - function( elem ) { - return elem.disabled === true && ("form" in elem || "label" in elem); - }, - { dir: "parentNode", next: "legend" } - ); - -// Optimize for push.apply( _, NodeList ) -try { - push.apply( - (arr = slice.call( preferredDoc.childNodes )), - preferredDoc.childNodes - ); - // Support: Android<4.0 - // Detect silently failing push.apply - arr[ preferredDoc.childNodes.length ].nodeType; -} catch ( e ) { - push = { apply: arr.length ? - - // Leverage slice if possible - function( target, els ) { - push_native.apply( target, slice.call(els) ); - } : - - // Support: IE<9 - // Otherwise append directly - function( target, els ) { - var j = target.length, - i = 0; - // Can't trust NodeList.length - while ( (target[j++] = els[i++]) ) {} - target.length = j - 1; - } - }; -} - -function Sizzle( selector, context, results, seed ) { - var m, i, elem, nid, match, groups, newSelector, - newContext = context && context.ownerDocument, - - // nodeType defaults to 9, since context defaults to document - nodeType = context ? context.nodeType : 9; - - results = results || []; - - // Return early from calls with invalid selector or context - if ( typeof selector !== "string" || !selector || - nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { - - return results; - } - - // Try to shortcut find operations (as opposed to filters) in HTML documents - if ( !seed ) { - - if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) { - setDocument( context ); - } - context = context || document; - - if ( documentIsHTML ) { - - // If the selector is sufficiently simple, try using a "get*By*" DOM method - // (excepting DocumentFragment context, where the methods don't exist) - if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) { - - // ID selector - if ( (m = match[1]) ) { - - // Document context - if ( nodeType === 9 ) { - if ( (elem = context.getElementById( m )) ) { - - // Support: IE, Opera, Webkit - // TODO: identify versions - // getElementById can match elements by name instead of ID - if ( elem.id === m ) { - results.push( elem ); - return results; - } - } else { - return results; - } - - // Element context - } else { - - // Support: IE, Opera, Webkit - // TODO: identify versions - // getElementById can match elements by name instead of ID - if ( newContext && (elem = newContext.getElementById( m )) && - contains( context, elem ) && - elem.id === m ) { - - results.push( elem ); - return results; - } - } - - // Type selector - } else if ( match[2] ) { - push.apply( results, context.getElementsByTagName( selector ) ); - return results; - - // Class selector - } else if ( (m = match[3]) && support.getElementsByClassName && - context.getElementsByClassName ) { - - push.apply( results, context.getElementsByClassName( m ) ); - return results; - } - } - - // Take advantage of querySelectorAll - if ( support.qsa && - !compilerCache[ selector + " " ] && - (!rbuggyQSA || !rbuggyQSA.test( selector )) ) { - - if ( nodeType !== 1 ) { - newContext = context; - newSelector = selector; - - // qSA looks outside Element context, which is not what we want - // Thanks to Andrew Dupont for this workaround technique - // Support: IE <=8 - // Exclude object elements - } else if ( context.nodeName.toLowerCase() !== "object" ) { - - // Capture the context ID, setting it first if necessary - if ( (nid = context.getAttribute( "id" )) ) { - nid = nid.replace( rcssescape, fcssescape ); - } else { - context.setAttribute( "id", (nid = expando) ); - } - - // Prefix every selector in the list - groups = tokenize( selector ); - i = groups.length; - while ( i-- ) { - groups[i] = "#" + nid + " " + toSelector( groups[i] ); - } - newSelector = groups.join( "," ); - - // Expand context for sibling selectors - newContext = rsibling.test( selector ) && testContext( context.parentNode ) || - context; - } - - if ( newSelector ) { - try { - push.apply( results, - newContext.querySelectorAll( newSelector ) - ); - return results; - } catch ( qsaError ) { - } finally { - if ( nid === expando ) { - context.removeAttribute( "id" ); - } - } - } - } - } - } - - // All others - return select( selector.replace( rtrim, "$1" ), context, results, seed ); -} - -/** - * Create key-value caches of limited size - * @returns {function(string, object)} Returns the Object data after storing it on itself with - * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) - * deleting the oldest entry - */ -function createCache() { - var keys = []; - - function cache( key, value ) { - // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) - if ( keys.push( key + " " ) > Expr.cacheLength ) { - // Only keep the most recent entries - delete cache[ keys.shift() ]; - } - return (cache[ key + " " ] = value); - } - return cache; -} - -/** - * Mark a function for special use by Sizzle - * @param {Function} fn The function to mark - */ -function markFunction( fn ) { - fn[ expando ] = true; - return fn; -} - -/** - * Support testing using an element - * @param {Function} fn Passed the created element and returns a boolean result - */ -function assert( fn ) { - var el = document.createElement("fieldset"); - - try { - return !!fn( el ); - } catch (e) { - return false; - } finally { - // Remove from its parent by default - if ( el.parentNode ) { - el.parentNode.removeChild( el ); - } - // release memory in IE - el = null; - } -} - -/** - * Adds the same handler for all of the specified attrs - * @param {String} attrs Pipe-separated list of attributes - * @param {Function} handler The method that will be applied - */ -function addHandle( attrs, handler ) { - var arr = attrs.split("|"), - i = arr.length; - - while ( i-- ) { - Expr.attrHandle[ arr[i] ] = handler; - } -} - -/** - * Checks document order of two siblings - * @param {Element} a - * @param {Element} b - * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b - */ -function siblingCheck( a, b ) { - var cur = b && a, - diff = cur && a.nodeType === 1 && b.nodeType === 1 && - a.sourceIndex - b.sourceIndex; - - // Use IE sourceIndex if available on both nodes - if ( diff ) { - return diff; - } - - // Check if b follows a - if ( cur ) { - while ( (cur = cur.nextSibling) ) { - if ( cur === b ) { - return -1; - } - } - } - - return a ? 1 : -1; -} - -/** - * Returns a function to use in pseudos for input types - * @param {String} type - */ -function createInputPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for buttons - * @param {String} type - */ -function createButtonPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return (name === "input" || name === "button") && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for :enabled/:disabled - * @param {Boolean} disabled true for :disabled; false for :enabled - */ -function createDisabledPseudo( disabled ) { - - // Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable - return function( elem ) { - - // Only certain elements can match :enabled or :disabled - // https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled - // https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled - if ( "form" in elem ) { - - // Check for inherited disabledness on relevant non-disabled elements: - // * listed form-associated elements in a disabled fieldset - // https://html.spec.whatwg.org/multipage/forms.html#category-listed - // https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled - // * option elements in a disabled optgroup - // https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled - // All such elements have a "form" property. - if ( elem.parentNode && elem.disabled === false ) { - - // Option elements defer to a parent optgroup if present - if ( "label" in elem ) { - if ( "label" in elem.parentNode ) { - return elem.parentNode.disabled === disabled; - } else { - return elem.disabled === disabled; - } - } - - // Support: IE 6 - 11 - // Use the isDisabled shortcut property to check for disabled fieldset ancestors - return elem.isDisabled === disabled || - - // Where there is no isDisabled, check manually - /* jshint -W018 */ - elem.isDisabled !== !disabled && - disabledAncestor( elem ) === disabled; - } - - return elem.disabled === disabled; - - // Try to winnow out elements that can't be disabled before trusting the disabled property. - // Some victims get caught in our net (label, legend, menu, track), but it shouldn't - // even exist on them, let alone have a boolean value. - } else if ( "label" in elem ) { - return elem.disabled === disabled; - } - - // Remaining elements are neither :enabled nor :disabled - return false; - }; -} - -/** - * Returns a function to use in pseudos for positionals - * @param {Function} fn - */ -function createPositionalPseudo( fn ) { - return markFunction(function( argument ) { - argument = +argument; - return markFunction(function( seed, matches ) { - var j, - matchIndexes = fn( [], seed.length, argument ), - i = matchIndexes.length; - - // Match elements found at the specified indexes - while ( i-- ) { - if ( seed[ (j = matchIndexes[i]) ] ) { - seed[j] = !(matches[j] = seed[j]); - } - } - }); - }); -} - -/** - * Checks a node for validity as a Sizzle context - * @param {Element|Object=} context - * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value - */ -function testContext( context ) { - return context && typeof context.getElementsByTagName !== "undefined" && context; -} - -// Expose support vars for convenience -support = Sizzle.support = {}; - -/** - * Detects XML nodes - * @param {Element|Object} elem An element or a document - * @returns {Boolean} True iff elem is a non-HTML XML node - */ -isXML = Sizzle.isXML = function( elem ) { - // documentElement is verified for cases where it doesn't yet exist - // (such as loading iframes in IE - #4833) - var documentElement = elem && (elem.ownerDocument || elem).documentElement; - return documentElement ? documentElement.nodeName !== "HTML" : false; -}; - -/** - * Sets document-related variables once based on the current document - * @param {Element|Object} [doc] An element or document object to use to set the document - * @returns {Object} Returns the current document - */ -setDocument = Sizzle.setDocument = function( node ) { - var hasCompare, subWindow, - doc = node ? node.ownerDocument || node : preferredDoc; - - // Return early if doc is invalid or already selected - if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) { - return document; - } - - // Update global variables - document = doc; - docElem = document.documentElement; - documentIsHTML = !isXML( document ); - - // Support: IE 9-11, Edge - // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) - if ( preferredDoc !== document && - (subWindow = document.defaultView) && subWindow.top !== subWindow ) { - - // Support: IE 11, Edge - if ( subWindow.addEventListener ) { - subWindow.addEventListener( "unload", unloadHandler, false ); - - // Support: IE 9 - 10 only - } else if ( subWindow.attachEvent ) { - subWindow.attachEvent( "onunload", unloadHandler ); - } - } - - /* Attributes - ---------------------------------------------------------------------- */ - - // Support: IE<8 - // Verify that getAttribute really returns attributes and not properties - // (excepting IE8 booleans) - support.attributes = assert(function( el ) { - el.className = "i"; - return !el.getAttribute("className"); - }); - - /* getElement(s)By* - ---------------------------------------------------------------------- */ - - // Check if getElementsByTagName("*") returns only elements - support.getElementsByTagName = assert(function( el ) { - el.appendChild( document.createComment("") ); - return !el.getElementsByTagName("*").length; - }); - - // Support: IE<9 - support.getElementsByClassName = rnative.test( document.getElementsByClassName ); - - // Support: IE<10 - // Check if getElementById returns elements by name - // The broken getElementById methods don't pick up programmatically-set names, - // so use a roundabout getElementsByName test - support.getById = assert(function( el ) { - docElem.appendChild( el ).id = expando; - return !document.getElementsByName || !document.getElementsByName( expando ).length; - }); - - // ID filter and find - if ( support.getById ) { - Expr.filter["ID"] = function( id ) { - var attrId = id.replace( runescape, funescape ); - return function( elem ) { - return elem.getAttribute("id") === attrId; - }; - }; - Expr.find["ID"] = function( id, context ) { - if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { - var elem = context.getElementById( id ); - return elem ? [ elem ] : []; - } - }; - } else { - Expr.filter["ID"] = function( id ) { - var attrId = id.replace( runescape, funescape ); - return function( elem ) { - var node = typeof elem.getAttributeNode !== "undefined" && - elem.getAttributeNode("id"); - return node && node.value === attrId; - }; - }; - - // Support: IE 6 - 7 only - // getElementById is not reliable as a find shortcut - Expr.find["ID"] = function( id, context ) { - if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { - var node, i, elems, - elem = context.getElementById( id ); - - if ( elem ) { - - // Verify the id attribute - node = elem.getAttributeNode("id"); - if ( node && node.value === id ) { - return [ elem ]; - } - - // Fall back on getElementsByName - elems = context.getElementsByName( id ); - i = 0; - while ( (elem = elems[i++]) ) { - node = elem.getAttributeNode("id"); - if ( node && node.value === id ) { - return [ elem ]; - } - } - } - - return []; - } - }; - } - - // Tag - Expr.find["TAG"] = support.getElementsByTagName ? - function( tag, context ) { - if ( typeof context.getElementsByTagName !== "undefined" ) { - return context.getElementsByTagName( tag ); - - // DocumentFragment nodes don't have gEBTN - } else if ( support.qsa ) { - return context.querySelectorAll( tag ); - } - } : - - function( tag, context ) { - var elem, - tmp = [], - i = 0, - // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too - results = context.getElementsByTagName( tag ); - - // Filter out possible comments - if ( tag === "*" ) { - while ( (elem = results[i++]) ) { - if ( elem.nodeType === 1 ) { - tmp.push( elem ); - } - } - - return tmp; - } - return results; - }; - - // Class - Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) { - if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { - return context.getElementsByClassName( className ); - } - }; - - /* QSA/matchesSelector - ---------------------------------------------------------------------- */ - - // QSA and matchesSelector support - - // matchesSelector(:active) reports false when true (IE9/Opera 11.5) - rbuggyMatches = []; - - // qSa(:focus) reports false when true (Chrome 21) - // We allow this because of a bug in IE8/9 that throws an error - // whenever `document.activeElement` is accessed on an iframe - // So, we allow :focus to pass through QSA all the time to avoid the IE error - // See https://bugs.jquery.com/ticket/13378 - rbuggyQSA = []; - - if ( (support.qsa = rnative.test( document.querySelectorAll )) ) { - // Build QSA regex - // Regex strategy adopted from Diego Perini - assert(function( el ) { - // Select is set to empty string on purpose - // This is to test IE's treatment of not explicitly - // setting a boolean content attribute, - // since its presence should be enough - // https://bugs.jquery.com/ticket/12359 - docElem.appendChild( el ).innerHTML = "" + - ""; - - // Support: IE8, Opera 11-12.16 - // Nothing should be selected when empty strings follow ^= or $= or *= - // The test attribute must be unknown in Opera but "safe" for WinRT - // https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section - if ( el.querySelectorAll("[msallowcapture^='']").length ) { - rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); - } - - // Support: IE8 - // Boolean attributes and "value" are not treated correctly - if ( !el.querySelectorAll("[selected]").length ) { - rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); - } - - // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ - if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) { - rbuggyQSA.push("~="); - } - - // Webkit/Opera - :checked should return selected option elements - // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked - // IE8 throws error here and will not see later tests - if ( !el.querySelectorAll(":checked").length ) { - rbuggyQSA.push(":checked"); - } - - // Support: Safari 8+, iOS 8+ - // https://bugs.webkit.org/show_bug.cgi?id=136851 - // In-page `selector#id sibling-combinator selector` fails - if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) { - rbuggyQSA.push(".#.+[+~]"); - } - }); - - assert(function( el ) { - el.innerHTML = "" + - ""; - - // Support: Windows 8 Native Apps - // The type and name attributes are restricted during .innerHTML assignment - var input = document.createElement("input"); - input.setAttribute( "type", "hidden" ); - el.appendChild( input ).setAttribute( "name", "D" ); - - // Support: IE8 - // Enforce case-sensitivity of name attribute - if ( el.querySelectorAll("[name=d]").length ) { - rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); - } - - // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) - // IE8 throws error here and will not see later tests - if ( el.querySelectorAll(":enabled").length !== 2 ) { - rbuggyQSA.push( ":enabled", ":disabled" ); - } - - // Support: IE9-11+ - // IE's :disabled selector does not pick up the children of disabled fieldsets - docElem.appendChild( el ).disabled = true; - if ( el.querySelectorAll(":disabled").length !== 2 ) { - rbuggyQSA.push( ":enabled", ":disabled" ); - } - - // Opera 10-11 does not throw on post-comma invalid pseudos - el.querySelectorAll("*,:x"); - rbuggyQSA.push(",.*:"); - }); - } - - if ( (support.matchesSelector = rnative.test( (matches = docElem.matches || - docElem.webkitMatchesSelector || - docElem.mozMatchesSelector || - docElem.oMatchesSelector || - docElem.msMatchesSelector) )) ) { - - assert(function( el ) { - // Check to see if it's possible to do matchesSelector - // on a disconnected node (IE 9) - support.disconnectedMatch = matches.call( el, "*" ); - - // This should fail with an exception - // Gecko does not error, returns false instead - matches.call( el, "[s!='']:x" ); - rbuggyMatches.push( "!=", pseudos ); - }); - } - - rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") ); - rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") ); - - /* Contains - ---------------------------------------------------------------------- */ - hasCompare = rnative.test( docElem.compareDocumentPosition ); - - // Element contains another - // Purposefully self-exclusive - // As in, an element does not contain itself - contains = hasCompare || rnative.test( docElem.contains ) ? - function( a, b ) { - var adown = a.nodeType === 9 ? a.documentElement : a, - bup = b && b.parentNode; - return a === bup || !!( bup && bup.nodeType === 1 && ( - adown.contains ? - adown.contains( bup ) : - a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 - )); - } : - function( a, b ) { - if ( b ) { - while ( (b = b.parentNode) ) { - if ( b === a ) { - return true; - } - } - } - return false; - }; - - /* Sorting - ---------------------------------------------------------------------- */ - - // Document order sorting - sortOrder = hasCompare ? - function( a, b ) { - - // Flag for duplicate removal - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - // Sort on method existence if only one input has compareDocumentPosition - var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; - if ( compare ) { - return compare; - } - - // Calculate position if both inputs belong to the same document - compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ? - a.compareDocumentPosition( b ) : - - // Otherwise we know they are disconnected - 1; - - // Disconnected nodes - if ( compare & 1 || - (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) { - - // Choose the first element that is related to our preferred document - if ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) { - return -1; - } - if ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) { - return 1; - } - - // Maintain original order - return sortInput ? - ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : - 0; - } - - return compare & 4 ? -1 : 1; - } : - function( a, b ) { - // Exit early if the nodes are identical - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - var cur, - i = 0, - aup = a.parentNode, - bup = b.parentNode, - ap = [ a ], - bp = [ b ]; - - // Parentless nodes are either documents or disconnected - if ( !aup || !bup ) { - return a === document ? -1 : - b === document ? 1 : - aup ? -1 : - bup ? 1 : - sortInput ? - ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : - 0; - - // If the nodes are siblings, we can do a quick check - } else if ( aup === bup ) { - return siblingCheck( a, b ); - } - - // Otherwise we need full lists of their ancestors for comparison - cur = a; - while ( (cur = cur.parentNode) ) { - ap.unshift( cur ); - } - cur = b; - while ( (cur = cur.parentNode) ) { - bp.unshift( cur ); - } - - // Walk down the tree looking for a discrepancy - while ( ap[i] === bp[i] ) { - i++; - } - - return i ? - // Do a sibling check if the nodes have a common ancestor - siblingCheck( ap[i], bp[i] ) : - - // Otherwise nodes in our document sort first - ap[i] === preferredDoc ? -1 : - bp[i] === preferredDoc ? 1 : - 0; - }; - - return document; -}; - -Sizzle.matches = function( expr, elements ) { - return Sizzle( expr, null, null, elements ); -}; - -Sizzle.matchesSelector = function( elem, expr ) { - // Set document vars if needed - if ( ( elem.ownerDocument || elem ) !== document ) { - setDocument( elem ); - } - - // Make sure that attribute selectors are quoted - expr = expr.replace( rattributeQuotes, "='$1']" ); - - if ( support.matchesSelector && documentIsHTML && - !compilerCache[ expr + " " ] && - ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && - ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { - - try { - var ret = matches.call( elem, expr ); - - // IE 9's matchesSelector returns false on disconnected nodes - if ( ret || support.disconnectedMatch || - // As well, disconnected nodes are said to be in a document - // fragment in IE 9 - elem.document && elem.document.nodeType !== 11 ) { - return ret; - } - } catch (e) {} - } - - return Sizzle( expr, document, null, [ elem ] ).length > 0; -}; - -Sizzle.contains = function( context, elem ) { - // Set document vars if needed - if ( ( context.ownerDocument || context ) !== document ) { - setDocument( context ); - } - return contains( context, elem ); -}; - -Sizzle.attr = function( elem, name ) { - // Set document vars if needed - if ( ( elem.ownerDocument || elem ) !== document ) { - setDocument( elem ); - } - - var fn = Expr.attrHandle[ name.toLowerCase() ], - // Don't get fooled by Object.prototype properties (jQuery #13807) - val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? - fn( elem, name, !documentIsHTML ) : - undefined; - - return val !== undefined ? - val : - support.attributes || !documentIsHTML ? - elem.getAttribute( name ) : - (val = elem.getAttributeNode(name)) && val.specified ? - val.value : - null; -}; - -Sizzle.escape = function( sel ) { - return (sel + "").replace( rcssescape, fcssescape ); -}; - -Sizzle.error = function( msg ) { - throw new Error( "Syntax error, unrecognized expression: " + msg ); -}; - -/** - * Document sorting and removing duplicates - * @param {ArrayLike} results - */ -Sizzle.uniqueSort = function( results ) { - var elem, - duplicates = [], - j = 0, - i = 0; - - // Unless we *know* we can detect duplicates, assume their presence - hasDuplicate = !support.detectDuplicates; - sortInput = !support.sortStable && results.slice( 0 ); - results.sort( sortOrder ); - - if ( hasDuplicate ) { - while ( (elem = results[i++]) ) { - if ( elem === results[ i ] ) { - j = duplicates.push( i ); - } - } - while ( j-- ) { - results.splice( duplicates[ j ], 1 ); - } - } - - // Clear input after sorting to release objects - // See https://github.com/jquery/sizzle/pull/225 - sortInput = null; - - return results; -}; - -/** - * Utility function for retrieving the text value of an array of DOM nodes - * @param {Array|Element} elem - */ -getText = Sizzle.getText = function( elem ) { - var node, - ret = "", - i = 0, - nodeType = elem.nodeType; - - if ( !nodeType ) { - // If no nodeType, this is expected to be an array - while ( (node = elem[i++]) ) { - // Do not traverse comment nodes - ret += getText( node ); - } - } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { - // Use textContent for elements - // innerText usage removed for consistency of new lines (jQuery #11153) - if ( typeof elem.textContent === "string" ) { - return elem.textContent; - } else { - // Traverse its children - for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { - ret += getText( elem ); - } - } - } else if ( nodeType === 3 || nodeType === 4 ) { - return elem.nodeValue; - } - // Do not include comment or processing instruction nodes - - return ret; -}; - -Expr = Sizzle.selectors = { - - // Can be adjusted by the user - cacheLength: 50, - - createPseudo: markFunction, - - match: matchExpr, - - attrHandle: {}, - - find: {}, - - relative: { - ">": { dir: "parentNode", first: true }, - " ": { dir: "parentNode" }, - "+": { dir: "previousSibling", first: true }, - "~": { dir: "previousSibling" } - }, - - preFilter: { - "ATTR": function( match ) { - match[1] = match[1].replace( runescape, funescape ); - - // Move the given value to match[3] whether quoted or unquoted - match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape ); - - if ( match[2] === "~=" ) { - match[3] = " " + match[3] + " "; - } - - return match.slice( 0, 4 ); - }, - - "CHILD": function( match ) { - /* matches from matchExpr["CHILD"] - 1 type (only|nth|...) - 2 what (child|of-type) - 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) - 4 xn-component of xn+y argument ([+-]?\d*n|) - 5 sign of xn-component - 6 x of xn-component - 7 sign of y-component - 8 y of y-component - */ - match[1] = match[1].toLowerCase(); - - if ( match[1].slice( 0, 3 ) === "nth" ) { - // nth-* requires argument - if ( !match[3] ) { - Sizzle.error( match[0] ); - } - - // numeric x and y parameters for Expr.filter.CHILD - // remember that false/true cast respectively to 0/1 - match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) ); - match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" ); - - // other types prohibit arguments - } else if ( match[3] ) { - Sizzle.error( match[0] ); - } - - return match; - }, - - "PSEUDO": function( match ) { - var excess, - unquoted = !match[6] && match[2]; - - if ( matchExpr["CHILD"].test( match[0] ) ) { - return null; - } - - // Accept quoted arguments as-is - if ( match[3] ) { - match[2] = match[4] || match[5] || ""; - - // Strip excess characters from unquoted arguments - } else if ( unquoted && rpseudo.test( unquoted ) && - // Get excess from tokenize (recursively) - (excess = tokenize( unquoted, true )) && - // advance to the next closing parenthesis - (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) { - - // excess is a negative index - match[0] = match[0].slice( 0, excess ); - match[2] = unquoted.slice( 0, excess ); - } - - // Return only captures needed by the pseudo filter method (type and argument) - return match.slice( 0, 3 ); - } - }, - - filter: { - - "TAG": function( nodeNameSelector ) { - var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); - return nodeNameSelector === "*" ? - function() { return true; } : - function( elem ) { - return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; - }; - }, - - "CLASS": function( className ) { - var pattern = classCache[ className + " " ]; - - return pattern || - (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) && - classCache( className, function( elem ) { - return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" ); - }); - }, - - "ATTR": function( name, operator, check ) { - return function( elem ) { - var result = Sizzle.attr( elem, name ); - - if ( result == null ) { - return operator === "!="; - } - if ( !operator ) { - return true; - } - - result += ""; - - return operator === "=" ? result === check : - operator === "!=" ? result !== check : - operator === "^=" ? check && result.indexOf( check ) === 0 : - operator === "*=" ? check && result.indexOf( check ) > -1 : - operator === "$=" ? check && result.slice( -check.length ) === check : - operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 : - operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : - false; - }; - }, - - "CHILD": function( type, what, argument, first, last ) { - var simple = type.slice( 0, 3 ) !== "nth", - forward = type.slice( -4 ) !== "last", - ofType = what === "of-type"; - - return first === 1 && last === 0 ? - - // Shortcut for :nth-*(n) - function( elem ) { - return !!elem.parentNode; - } : - - function( elem, context, xml ) { - var cache, uniqueCache, outerCache, node, nodeIndex, start, - dir = simple !== forward ? "nextSibling" : "previousSibling", - parent = elem.parentNode, - name = ofType && elem.nodeName.toLowerCase(), - useCache = !xml && !ofType, - diff = false; - - if ( parent ) { - - // :(first|last|only)-(child|of-type) - if ( simple ) { - while ( dir ) { - node = elem; - while ( (node = node[ dir ]) ) { - if ( ofType ? - node.nodeName.toLowerCase() === name : - node.nodeType === 1 ) { - - return false; - } - } - // Reverse direction for :only-* (if we haven't yet done so) - start = dir = type === "only" && !start && "nextSibling"; - } - return true; - } - - start = [ forward ? parent.firstChild : parent.lastChild ]; - - // non-xml :nth-child(...) stores cache data on `parent` - if ( forward && useCache ) { - - // Seek `elem` from a previously-cached index - - // ...in a gzip-friendly way - node = parent; - outerCache = node[ expando ] || (node[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - (outerCache[ node.uniqueID ] = {}); - - cache = uniqueCache[ type ] || []; - nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; - diff = nodeIndex && cache[ 2 ]; - node = nodeIndex && parent.childNodes[ nodeIndex ]; - - while ( (node = ++nodeIndex && node && node[ dir ] || - - // Fallback to seeking `elem` from the start - (diff = nodeIndex = 0) || start.pop()) ) { - - // When found, cache indexes on `parent` and break - if ( node.nodeType === 1 && ++diff && node === elem ) { - uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; - break; - } - } - - } else { - // Use previously-cached element index if available - if ( useCache ) { - // ...in a gzip-friendly way - node = elem; - outerCache = node[ expando ] || (node[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - (outerCache[ node.uniqueID ] = {}); - - cache = uniqueCache[ type ] || []; - nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; - diff = nodeIndex; - } - - // xml :nth-child(...) - // or :nth-last-child(...) or :nth(-last)?-of-type(...) - if ( diff === false ) { - // Use the same loop as above to seek `elem` from the start - while ( (node = ++nodeIndex && node && node[ dir ] || - (diff = nodeIndex = 0) || start.pop()) ) { - - if ( ( ofType ? - node.nodeName.toLowerCase() === name : - node.nodeType === 1 ) && - ++diff ) { - - // Cache the index of each encountered element - if ( useCache ) { - outerCache = node[ expando ] || (node[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - (outerCache[ node.uniqueID ] = {}); - - uniqueCache[ type ] = [ dirruns, diff ]; - } - - if ( node === elem ) { - break; - } - } - } - } - } - - // Incorporate the offset, then check against cycle size - diff -= last; - return diff === first || ( diff % first === 0 && diff / first >= 0 ); - } - }; - }, - - "PSEUDO": function( pseudo, argument ) { - // pseudo-class names are case-insensitive - // http://www.w3.org/TR/selectors/#pseudo-classes - // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters - // Remember that setFilters inherits from pseudos - var args, - fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || - Sizzle.error( "unsupported pseudo: " + pseudo ); - - // The user may use createPseudo to indicate that - // arguments are needed to create the filter function - // just as Sizzle does - if ( fn[ expando ] ) { - return fn( argument ); - } - - // But maintain support for old signatures - if ( fn.length > 1 ) { - args = [ pseudo, pseudo, "", argument ]; - return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? - markFunction(function( seed, matches ) { - var idx, - matched = fn( seed, argument ), - i = matched.length; - while ( i-- ) { - idx = indexOf( seed, matched[i] ); - seed[ idx ] = !( matches[ idx ] = matched[i] ); - } - }) : - function( elem ) { - return fn( elem, 0, args ); - }; - } - - return fn; - } - }, - - pseudos: { - // Potentially complex pseudos - "not": markFunction(function( selector ) { - // Trim the selector passed to compile - // to avoid treating leading and trailing - // spaces as combinators - var input = [], - results = [], - matcher = compile( selector.replace( rtrim, "$1" ) ); - - return matcher[ expando ] ? - markFunction(function( seed, matches, context, xml ) { - var elem, - unmatched = matcher( seed, null, xml, [] ), - i = seed.length; - - // Match elements unmatched by `matcher` - while ( i-- ) { - if ( (elem = unmatched[i]) ) { - seed[i] = !(matches[i] = elem); - } - } - }) : - function( elem, context, xml ) { - input[0] = elem; - matcher( input, null, xml, results ); - // Don't keep the element (issue #299) - input[0] = null; - return !results.pop(); - }; - }), - - "has": markFunction(function( selector ) { - return function( elem ) { - return Sizzle( selector, elem ).length > 0; - }; - }), - - "contains": markFunction(function( text ) { - text = text.replace( runescape, funescape ); - return function( elem ) { - return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1; - }; - }), - - // "Whether an element is represented by a :lang() selector - // is based solely on the element's language value - // being equal to the identifier C, - // or beginning with the identifier C immediately followed by "-". - // The matching of C against the element's language value is performed case-insensitively. - // The identifier C does not have to be a valid language name." - // http://www.w3.org/TR/selectors/#lang-pseudo - "lang": markFunction( function( lang ) { - // lang value must be a valid identifier - if ( !ridentifier.test(lang || "") ) { - Sizzle.error( "unsupported lang: " + lang ); - } - lang = lang.replace( runescape, funescape ).toLowerCase(); - return function( elem ) { - var elemLang; - do { - if ( (elemLang = documentIsHTML ? - elem.lang : - elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) { - - elemLang = elemLang.toLowerCase(); - return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; - } - } while ( (elem = elem.parentNode) && elem.nodeType === 1 ); - return false; - }; - }), - - // Miscellaneous - "target": function( elem ) { - var hash = window.location && window.location.hash; - return hash && hash.slice( 1 ) === elem.id; - }, - - "root": function( elem ) { - return elem === docElem; - }, - - "focus": function( elem ) { - return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex); - }, - - // Boolean properties - "enabled": createDisabledPseudo( false ), - "disabled": createDisabledPseudo( true ), - - "checked": function( elem ) { - // In CSS3, :checked should return both checked and selected elements - // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked - var nodeName = elem.nodeName.toLowerCase(); - return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected); - }, - - "selected": function( elem ) { - // Accessing this property makes selected-by-default - // options in Safari work properly - if ( elem.parentNode ) { - elem.parentNode.selectedIndex; - } - - return elem.selected === true; - }, - - // Contents - "empty": function( elem ) { - // http://www.w3.org/TR/selectors/#empty-pseudo - // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), - // but not by others (comment: 8; processing instruction: 7; etc.) - // nodeType < 6 works because attributes (2) do not appear as children - for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { - if ( elem.nodeType < 6 ) { - return false; - } - } - return true; - }, - - "parent": function( elem ) { - return !Expr.pseudos["empty"]( elem ); - }, - - // Element/input types - "header": function( elem ) { - return rheader.test( elem.nodeName ); - }, - - "input": function( elem ) { - return rinputs.test( elem.nodeName ); - }, - - "button": function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === "button" || name === "button"; - }, - - "text": function( elem ) { - var attr; - return elem.nodeName.toLowerCase() === "input" && - elem.type === "text" && - - // Support: IE<8 - // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" - ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" ); - }, - - // Position-in-collection - "first": createPositionalPseudo(function() { - return [ 0 ]; - }), - - "last": createPositionalPseudo(function( matchIndexes, length ) { - return [ length - 1 ]; - }), - - "eq": createPositionalPseudo(function( matchIndexes, length, argument ) { - return [ argument < 0 ? argument + length : argument ]; - }), - - "even": createPositionalPseudo(function( matchIndexes, length ) { - var i = 0; - for ( ; i < length; i += 2 ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "odd": createPositionalPseudo(function( matchIndexes, length ) { - var i = 1; - for ( ; i < length; i += 2 ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "lt": createPositionalPseudo(function( matchIndexes, length, argument ) { - var i = argument < 0 ? argument + length : argument; - for ( ; --i >= 0; ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "gt": createPositionalPseudo(function( matchIndexes, length, argument ) { - var i = argument < 0 ? argument + length : argument; - for ( ; ++i < length; ) { - matchIndexes.push( i ); - } - return matchIndexes; - }) - } -}; - -Expr.pseudos["nth"] = Expr.pseudos["eq"]; - -// Add button/input type pseudos -for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { - Expr.pseudos[ i ] = createInputPseudo( i ); -} -for ( i in { submit: true, reset: true } ) { - Expr.pseudos[ i ] = createButtonPseudo( i ); -} - -// Easy API for creating new setFilters -function setFilters() {} -setFilters.prototype = Expr.filters = Expr.pseudos; -Expr.setFilters = new setFilters(); - -tokenize = Sizzle.tokenize = function( selector, parseOnly ) { - var matched, match, tokens, type, - soFar, groups, preFilters, - cached = tokenCache[ selector + " " ]; - - if ( cached ) { - return parseOnly ? 0 : cached.slice( 0 ); - } - - soFar = selector; - groups = []; - preFilters = Expr.preFilter; - - while ( soFar ) { - - // Comma and first run - if ( !matched || (match = rcomma.exec( soFar )) ) { - if ( match ) { - // Don't consume trailing commas as valid - soFar = soFar.slice( match[0].length ) || soFar; - } - groups.push( (tokens = []) ); - } - - matched = false; - - // Combinators - if ( (match = rcombinators.exec( soFar )) ) { - matched = match.shift(); - tokens.push({ - value: matched, - // Cast descendant combinators to space - type: match[0].replace( rtrim, " " ) - }); - soFar = soFar.slice( matched.length ); - } - - // Filters - for ( type in Expr.filter ) { - if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] || - (match = preFilters[ type ]( match ))) ) { - matched = match.shift(); - tokens.push({ - value: matched, - type: type, - matches: match - }); - soFar = soFar.slice( matched.length ); - } - } - - if ( !matched ) { - break; - } - } - - // Return the length of the invalid excess - // if we're just parsing - // Otherwise, throw an error or return tokens - return parseOnly ? - soFar.length : - soFar ? - Sizzle.error( selector ) : - // Cache the tokens - tokenCache( selector, groups ).slice( 0 ); -}; - -function toSelector( tokens ) { - var i = 0, - len = tokens.length, - selector = ""; - for ( ; i < len; i++ ) { - selector += tokens[i].value; - } - return selector; -} - -function addCombinator( matcher, combinator, base ) { - var dir = combinator.dir, - skip = combinator.next, - key = skip || dir, - checkNonElements = base && key === "parentNode", - doneName = done++; - - return combinator.first ? - // Check against closest ancestor/preceding element - function( elem, context, xml ) { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - return matcher( elem, context, xml ); - } - } - return false; - } : - - // Check against all ancestor/preceding elements - function( elem, context, xml ) { - var oldCache, uniqueCache, outerCache, - newCache = [ dirruns, doneName ]; - - // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching - if ( xml ) { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - if ( matcher( elem, context, xml ) ) { - return true; - } - } - } - } else { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - outerCache = elem[ expando ] || (elem[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {}); - - if ( skip && skip === elem.nodeName.toLowerCase() ) { - elem = elem[ dir ] || elem; - } else if ( (oldCache = uniqueCache[ key ]) && - oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { - - // Assign to newCache so results back-propagate to previous elements - return (newCache[ 2 ] = oldCache[ 2 ]); - } else { - // Reuse newcache so results back-propagate to previous elements - uniqueCache[ key ] = newCache; - - // A match means we're done; a fail means we have to keep checking - if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) { - return true; - } - } - } - } - } - return false; - }; -} - -function elementMatcher( matchers ) { - return matchers.length > 1 ? - function( elem, context, xml ) { - var i = matchers.length; - while ( i-- ) { - if ( !matchers[i]( elem, context, xml ) ) { - return false; - } - } - return true; - } : - matchers[0]; -} - -function multipleContexts( selector, contexts, results ) { - var i = 0, - len = contexts.length; - for ( ; i < len; i++ ) { - Sizzle( selector, contexts[i], results ); - } - return results; -} - -function condense( unmatched, map, filter, context, xml ) { - var elem, - newUnmatched = [], - i = 0, - len = unmatched.length, - mapped = map != null; - - for ( ; i < len; i++ ) { - if ( (elem = unmatched[i]) ) { - if ( !filter || filter( elem, context, xml ) ) { - newUnmatched.push( elem ); - if ( mapped ) { - map.push( i ); - } - } - } - } - - return newUnmatched; -} - -function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { - if ( postFilter && !postFilter[ expando ] ) { - postFilter = setMatcher( postFilter ); - } - if ( postFinder && !postFinder[ expando ] ) { - postFinder = setMatcher( postFinder, postSelector ); - } - return markFunction(function( seed, results, context, xml ) { - var temp, i, elem, - preMap = [], - postMap = [], - preexisting = results.length, - - // Get initial elements from seed or context - elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ), - - // Prefilter to get matcher input, preserving a map for seed-results synchronization - matcherIn = preFilter && ( seed || !selector ) ? - condense( elems, preMap, preFilter, context, xml ) : - elems, - - matcherOut = matcher ? - // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, - postFinder || ( seed ? preFilter : preexisting || postFilter ) ? - - // ...intermediate processing is necessary - [] : - - // ...otherwise use results directly - results : - matcherIn; - - // Find primary matches - if ( matcher ) { - matcher( matcherIn, matcherOut, context, xml ); - } - - // Apply postFilter - if ( postFilter ) { - temp = condense( matcherOut, postMap ); - postFilter( temp, [], context, xml ); - - // Un-match failing elements by moving them back to matcherIn - i = temp.length; - while ( i-- ) { - if ( (elem = temp[i]) ) { - matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem); - } - } - } - - if ( seed ) { - if ( postFinder || preFilter ) { - if ( postFinder ) { - // Get the final matcherOut by condensing this intermediate into postFinder contexts - temp = []; - i = matcherOut.length; - while ( i-- ) { - if ( (elem = matcherOut[i]) ) { - // Restore matcherIn since elem is not yet a final match - temp.push( (matcherIn[i] = elem) ); - } - } - postFinder( null, (matcherOut = []), temp, xml ); - } - - // Move matched elements from seed to results to keep them synchronized - i = matcherOut.length; - while ( i-- ) { - if ( (elem = matcherOut[i]) && - (temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) { - - seed[temp] = !(results[temp] = elem); - } - } - } - - // Add elements to results, through postFinder if defined - } else { - matcherOut = condense( - matcherOut === results ? - matcherOut.splice( preexisting, matcherOut.length ) : - matcherOut - ); - if ( postFinder ) { - postFinder( null, results, matcherOut, xml ); - } else { - push.apply( results, matcherOut ); - } - } - }); -} - -function matcherFromTokens( tokens ) { - var checkContext, matcher, j, - len = tokens.length, - leadingRelative = Expr.relative[ tokens[0].type ], - implicitRelative = leadingRelative || Expr.relative[" "], - i = leadingRelative ? 1 : 0, - - // The foundational matcher ensures that elements are reachable from top-level context(s) - matchContext = addCombinator( function( elem ) { - return elem === checkContext; - }, implicitRelative, true ), - matchAnyContext = addCombinator( function( elem ) { - return indexOf( checkContext, elem ) > -1; - }, implicitRelative, true ), - matchers = [ function( elem, context, xml ) { - var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( - (checkContext = context).nodeType ? - matchContext( elem, context, xml ) : - matchAnyContext( elem, context, xml ) ); - // Avoid hanging onto element (issue #299) - checkContext = null; - return ret; - } ]; - - for ( ; i < len; i++ ) { - if ( (matcher = Expr.relative[ tokens[i].type ]) ) { - matchers = [ addCombinator(elementMatcher( matchers ), matcher) ]; - } else { - matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches ); - - // Return special upon seeing a positional matcher - if ( matcher[ expando ] ) { - // Find the next relative operator (if any) for proper handling - j = ++i; - for ( ; j < len; j++ ) { - if ( Expr.relative[ tokens[j].type ] ) { - break; - } - } - return setMatcher( - i > 1 && elementMatcher( matchers ), - i > 1 && toSelector( - // If the preceding token was a descendant combinator, insert an implicit any-element `*` - tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" }) - ).replace( rtrim, "$1" ), - matcher, - i < j && matcherFromTokens( tokens.slice( i, j ) ), - j < len && matcherFromTokens( (tokens = tokens.slice( j )) ), - j < len && toSelector( tokens ) - ); - } - matchers.push( matcher ); - } - } - - return elementMatcher( matchers ); -} - -function matcherFromGroupMatchers( elementMatchers, setMatchers ) { - var bySet = setMatchers.length > 0, - byElement = elementMatchers.length > 0, - superMatcher = function( seed, context, xml, results, outermost ) { - var elem, j, matcher, - matchedCount = 0, - i = "0", - unmatched = seed && [], - setMatched = [], - contextBackup = outermostContext, - // We must always have either seed elements or outermost context - elems = seed || byElement && Expr.find["TAG"]( "*", outermost ), - // Use integer dirruns iff this is the outermost matcher - dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1), - len = elems.length; - - if ( outermost ) { - outermostContext = context === document || context || outermost; - } - - // Add elements passing elementMatchers directly to results - // Support: IE<9, Safari - // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id - for ( ; i !== len && (elem = elems[i]) != null; i++ ) { - if ( byElement && elem ) { - j = 0; - if ( !context && elem.ownerDocument !== document ) { - setDocument( elem ); - xml = !documentIsHTML; - } - while ( (matcher = elementMatchers[j++]) ) { - if ( matcher( elem, context || document, xml) ) { - results.push( elem ); - break; - } - } - if ( outermost ) { - dirruns = dirrunsUnique; - } - } - - // Track unmatched elements for set filters - if ( bySet ) { - // They will have gone through all possible matchers - if ( (elem = !matcher && elem) ) { - matchedCount--; - } - - // Lengthen the array for every element, matched or not - if ( seed ) { - unmatched.push( elem ); - } - } - } - - // `i` is now the count of elements visited above, and adding it to `matchedCount` - // makes the latter nonnegative. - matchedCount += i; - - // Apply set filters to unmatched elements - // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` - // equals `i`), unless we didn't visit _any_ elements in the above loop because we have - // no element matchers and no seed. - // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that - // case, which will result in a "00" `matchedCount` that differs from `i` but is also - // numerically zero. - if ( bySet && i !== matchedCount ) { - j = 0; - while ( (matcher = setMatchers[j++]) ) { - matcher( unmatched, setMatched, context, xml ); - } - - if ( seed ) { - // Reintegrate element matches to eliminate the need for sorting - if ( matchedCount > 0 ) { - while ( i-- ) { - if ( !(unmatched[i] || setMatched[i]) ) { - setMatched[i] = pop.call( results ); - } - } - } - - // Discard index placeholder values to get only actual matches - setMatched = condense( setMatched ); - } - - // Add matches to results - push.apply( results, setMatched ); - - // Seedless set matches succeeding multiple successful matchers stipulate sorting - if ( outermost && !seed && setMatched.length > 0 && - ( matchedCount + setMatchers.length ) > 1 ) { - - Sizzle.uniqueSort( results ); - } - } - - // Override manipulation of globals by nested matchers - if ( outermost ) { - dirruns = dirrunsUnique; - outermostContext = contextBackup; - } - - return unmatched; - }; - - return bySet ? - markFunction( superMatcher ) : - superMatcher; -} - -compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { - var i, - setMatchers = [], - elementMatchers = [], - cached = compilerCache[ selector + " " ]; - - if ( !cached ) { - // Generate a function of recursive functions that can be used to check each element - if ( !match ) { - match = tokenize( selector ); - } - i = match.length; - while ( i-- ) { - cached = matcherFromTokens( match[i] ); - if ( cached[ expando ] ) { - setMatchers.push( cached ); - } else { - elementMatchers.push( cached ); - } - } - - // Cache the compiled function - cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) ); - - // Save selector and tokenization - cached.selector = selector; - } - return cached; -}; - -/** - * A low-level selection function that works with Sizzle's compiled - * selector functions - * @param {String|Function} selector A selector or a pre-compiled - * selector function built with Sizzle.compile - * @param {Element} context - * @param {Array} [results] - * @param {Array} [seed] A set of elements to match against - */ -select = Sizzle.select = function( selector, context, results, seed ) { - var i, tokens, token, type, find, - compiled = typeof selector === "function" && selector, - match = !seed && tokenize( (selector = compiled.selector || selector) ); - - results = results || []; - - // Try to minimize operations if there is only one selector in the list and no seed - // (the latter of which guarantees us context) - if ( match.length === 1 ) { - - // Reduce context if the leading compound selector is an ID - tokens = match[0] = match[0].slice( 0 ); - if ( tokens.length > 2 && (token = tokens[0]).type === "ID" && - context.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[1].type ] ) { - - context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0]; - if ( !context ) { - return results; - - // Precompiled matchers will still verify ancestry, so step up a level - } else if ( compiled ) { - context = context.parentNode; - } - - selector = selector.slice( tokens.shift().value.length ); - } - - // Fetch a seed set for right-to-left matching - i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length; - while ( i-- ) { - token = tokens[i]; - - // Abort if we hit a combinator - if ( Expr.relative[ (type = token.type) ] ) { - break; - } - if ( (find = Expr.find[ type ]) ) { - // Search, expanding context for leading sibling combinators - if ( (seed = find( - token.matches[0].replace( runescape, funescape ), - rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context - )) ) { - - // If seed is empty or no tokens remain, we can return early - tokens.splice( i, 1 ); - selector = seed.length && toSelector( tokens ); - if ( !selector ) { - push.apply( results, seed ); - return results; - } - - break; - } - } - } - } - - // Compile and execute a filtering function if one is not provided - // Provide `match` to avoid retokenization if we modified the selector above - ( compiled || compile( selector, match ) )( - seed, - context, - !documentIsHTML, - results, - !context || rsibling.test( selector ) && testContext( context.parentNode ) || context - ); - return results; -}; - -// One-time assignments - -// Sort stability -support.sortStable = expando.split("").sort( sortOrder ).join("") === expando; - -// Support: Chrome 14-35+ -// Always assume duplicates if they aren't passed to the comparison function -support.detectDuplicates = !!hasDuplicate; - -// Initialize against the default document -setDocument(); - -// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) -// Detached nodes confoundingly follow *each other* -support.sortDetached = assert(function( el ) { - // Should return 1, but returns 4 (following) - return el.compareDocumentPosition( document.createElement("fieldset") ) & 1; -}); - -// Support: IE<8 -// Prevent attribute/property "interpolation" -// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx -if ( !assert(function( el ) { - el.innerHTML = ""; - return el.firstChild.getAttribute("href") === "#" ; -}) ) { - addHandle( "type|href|height|width", function( elem, name, isXML ) { - if ( !isXML ) { - return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); - } - }); -} - -// Support: IE<9 -// Use defaultValue in place of getAttribute("value") -if ( !support.attributes || !assert(function( el ) { - el.innerHTML = ""; - el.firstChild.setAttribute( "value", "" ); - return el.firstChild.getAttribute( "value" ) === ""; -}) ) { - addHandle( "value", function( elem, name, isXML ) { - if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { - return elem.defaultValue; - } - }); -} - -// Support: IE<9 -// Use getAttributeNode to fetch booleans when getAttribute lies -if ( !assert(function( el ) { - return el.getAttribute("disabled") == null; -}) ) { - addHandle( booleans, function( elem, name, isXML ) { - var val; - if ( !isXML ) { - return elem[ name ] === true ? name.toLowerCase() : - (val = elem.getAttributeNode( name )) && val.specified ? - val.value : - null; - } - }); -} - -return Sizzle; - -})( window ); - - - -jQuery.find = Sizzle; -jQuery.expr = Sizzle.selectors; - -// Deprecated -jQuery.expr[ ":" ] = jQuery.expr.pseudos; -jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; -jQuery.text = Sizzle.getText; -jQuery.isXMLDoc = Sizzle.isXML; -jQuery.contains = Sizzle.contains; -jQuery.escapeSelector = Sizzle.escape; - - - - -var dir = function( elem, dir, until ) { - var matched = [], - truncate = until !== undefined; - - while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { - if ( elem.nodeType === 1 ) { - if ( truncate && jQuery( elem ).is( until ) ) { - break; - } - matched.push( elem ); - } - } - return matched; -}; - - -var siblings = function( n, elem ) { - var matched = []; - - for ( ; n; n = n.nextSibling ) { - if ( n.nodeType === 1 && n !== elem ) { - matched.push( n ); - } - } - - return matched; -}; - - -var rneedsContext = jQuery.expr.match.needsContext; - - - -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 ); - - - -var risSimple = /^.[^:#\[\.,]*$/; - -// Implement the identical functionality for filter and not -function winnow( elements, qualifier, not ) { - if ( jQuery.isFunction( qualifier ) ) { - return jQuery.grep( elements, function( elem, i ) { - return !!qualifier.call( elem, i, elem ) !== not; - } ); - } - - // Single element - if ( qualifier.nodeType ) { - return jQuery.grep( elements, function( elem ) { - return ( elem === qualifier ) !== not; - } ); - } - - // Arraylike of elements (jQuery, arguments, Array) - if ( typeof qualifier !== "string" ) { - return jQuery.grep( elements, function( elem ) { - return ( indexOf.call( qualifier, elem ) > -1 ) !== not; - } ); - } - - // Simple selector that can be filtered directly, removing non-Elements - if ( risSimple.test( qualifier ) ) { - return jQuery.filter( qualifier, elements, not ); - } - - // Complex selector, compare the two sets, removing non-Elements - qualifier = jQuery.filter( qualifier, elements ); - return jQuery.grep( elements, function( elem ) { - return ( indexOf.call( qualifier, elem ) > -1 ) !== not && elem.nodeType === 1; - } ); -} - -jQuery.filter = function( expr, elems, not ) { - var elem = elems[ 0 ]; - - if ( not ) { - expr = ":not(" + expr + ")"; - } - - if ( elems.length === 1 && elem.nodeType === 1 ) { - return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : []; - } - - return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { - return elem.nodeType === 1; - } ) ); -}; - -jQuery.fn.extend( { - find: function( selector ) { - var i, ret, - len = this.length, - self = this; - - if ( typeof selector !== "string" ) { - return this.pushStack( jQuery( selector ).filter( function() { - for ( i = 0; i < len; i++ ) { - if ( jQuery.contains( self[ i ], this ) ) { - return true; - } - } - } ) ); - } - - ret = this.pushStack( [] ); - - for ( i = 0; i < len; i++ ) { - jQuery.find( selector, self[ i ], ret ); - } - - return len > 1 ? jQuery.uniqueSort( ret ) : ret; - }, - filter: function( selector ) { - return this.pushStack( winnow( this, selector || [], false ) ); - }, - not: function( selector ) { - return this.pushStack( winnow( this, selector || [], true ) ); - }, - is: function( selector ) { - return !!winnow( - this, - - // If this is a positional/relative selector, check membership in the returned set - // so $("p:first").is("p:last") won't return true for a doc with two "p". - typeof selector === "string" && rneedsContext.test( selector ) ? - jQuery( selector ) : - selector || [], - false - ).length; - } -} ); - - -// Initialize a jQuery object - - -// A central reference to the root jQuery(document) -var rootjQuery, - - // A simple way to check for HTML strings - // Prioritize #id over to avoid XSS via location.hash (#9521) - // Strict HTML recognition (#11290: must start with <) - // Shortcut simple #id case for speed - rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, - - init = jQuery.fn.init = function( selector, context, root ) { - var match, elem; - - // HANDLE: $(""), $(null), $(undefined), $(false) - if ( !selector ) { - return this; - } - - // Method init() accepts an alternate rootjQuery - // so migrate can support jQuery.sub (gh-2101) - root = root || rootjQuery; - - // Handle HTML strings - if ( typeof selector === "string" ) { - if ( selector[ 0 ] === "<" && - selector[ selector.length - 1 ] === ">" && - selector.length >= 3 ) { - - // Assume that strings that start and end with <> are HTML and skip the regex check - match = [ null, selector, null ]; - - } else { - match = rquickExpr.exec( selector ); - } - - // Match html or make sure no context is specified for #id - if ( match && ( match[ 1 ] || !context ) ) { - - // HANDLE: $(html) -> $(array) - if ( match[ 1 ] ) { - context = context instanceof jQuery ? context[ 0 ] : context; - - // Option to run scripts is true for back-compat - // Intentionally let the error be thrown if parseHTML is not present - jQuery.merge( this, jQuery.parseHTML( - match[ 1 ], - context && context.nodeType ? context.ownerDocument || context : document, - true - ) ); - - // HANDLE: $(html, props) - if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { - for ( match in context ) { - - // Properties of context are called as methods if possible - if ( jQuery.isFunction( this[ match ] ) ) { - this[ match ]( context[ match ] ); - - // ...and otherwise set as attributes - } else { - this.attr( match, context[ match ] ); - } - } - } - - return this; - - // HANDLE: $(#id) - } else { - elem = document.getElementById( match[ 2 ] ); - - if ( elem ) { - - // Inject the element directly into the jQuery object - this[ 0 ] = elem; - this.length = 1; - } - return this; - } - - // HANDLE: $(expr, $(...)) - } else if ( !context || context.jquery ) { - return ( context || root ).find( selector ); - - // HANDLE: $(expr, context) - // (which is just equivalent to: $(context).find(expr) - } else { - return this.constructor( context ).find( selector ); - } - - // HANDLE: $(DOMElement) - } else if ( selector.nodeType ) { - this[ 0 ] = selector; - this.length = 1; - return this; - - // HANDLE: $(function) - // Shortcut for document ready - } else if ( jQuery.isFunction( selector ) ) { - return root.ready !== undefined ? - root.ready( selector ) : - - // Execute immediately if ready is not present - selector( jQuery ); - } - - return jQuery.makeArray( selector, this ); - }; - -// Give the init function the jQuery prototype for later instantiation -init.prototype = jQuery.fn; - -// Initialize central reference -rootjQuery = jQuery( document ); - - -var rparentsprev = /^(?:parents|prev(?:Until|All))/, - - // Methods guaranteed to produce a unique set when starting from a unique set - guaranteedUnique = { - children: true, - contents: true, - next: true, - prev: true - }; - -jQuery.fn.extend( { - has: function( target ) { - var targets = jQuery( target, this ), - l = targets.length; - - return this.filter( function() { - var i = 0; - for ( ; i < l; i++ ) { - if ( jQuery.contains( this, targets[ i ] ) ) { - return true; - } - } - } ); - }, - - closest: function( selectors, context ) { - var cur, - i = 0, - l = this.length, - matched = [], - targets = typeof selectors !== "string" && jQuery( selectors ); - - // Positional selectors never match, since there's no _selection_ context - if ( !rneedsContext.test( selectors ) ) { - for ( ; i < l; i++ ) { - for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { - - // Always skip document fragments - if ( cur.nodeType < 11 && ( targets ? - targets.index( cur ) > -1 : - - // Don't pass non-elements to Sizzle - cur.nodeType === 1 && - jQuery.find.matchesSelector( cur, selectors ) ) ) { - - matched.push( cur ); - break; - } - } - } - } - - return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); - }, - - // Determine the position of an element within the set - index: function( elem ) { - - // No argument, return index in parent - if ( !elem ) { - return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; - } - - // Index in selector - if ( typeof elem === "string" ) { - return indexOf.call( jQuery( elem ), this[ 0 ] ); - } - - // Locate the position of the desired element - return indexOf.call( this, - - // If it receives a jQuery object, the first element is used - elem.jquery ? elem[ 0 ] : elem - ); - }, - - add: function( selector, context ) { - return this.pushStack( - jQuery.uniqueSort( - jQuery.merge( this.get(), jQuery( selector, context ) ) - ) - ); - }, - - addBack: function( selector ) { - return this.add( selector == null ? - this.prevObject : this.prevObject.filter( selector ) - ); - } -} ); - -function sibling( cur, dir ) { - while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {} - return cur; -} - -jQuery.each( { - parent: function( elem ) { - var parent = elem.parentNode; - return parent && parent.nodeType !== 11 ? parent : null; - }, - parents: function( elem ) { - return dir( elem, "parentNode" ); - }, - parentsUntil: function( elem, i, until ) { - return dir( elem, "parentNode", until ); - }, - next: function( elem ) { - return sibling( elem, "nextSibling" ); - }, - prev: function( elem ) { - return sibling( elem, "previousSibling" ); - }, - nextAll: function( elem ) { - return dir( elem, "nextSibling" ); - }, - prevAll: function( elem ) { - return dir( elem, "previousSibling" ); - }, - nextUntil: function( elem, i, until ) { - return dir( elem, "nextSibling", until ); - }, - prevUntil: function( elem, i, until ) { - return dir( elem, "previousSibling", until ); - }, - siblings: function( elem ) { - return siblings( ( elem.parentNode || {} ).firstChild, elem ); - }, - children: function( elem ) { - return siblings( elem.firstChild ); - }, - contents: function( elem ) { - if ( nodeName( elem, "iframe" ) ) { - return elem.contentDocument; - } - - // Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only - // Treat the template element as a regular one in browsers that - // don't support it. - if ( nodeName( elem, "template" ) ) { - elem = elem.content || elem; - } - - return jQuery.merge( [], elem.childNodes ); - } -}, function( name, fn ) { - jQuery.fn[ name ] = function( until, selector ) { - var matched = jQuery.map( this, fn, until ); - - if ( name.slice( -5 ) !== "Until" ) { - selector = until; - } - - if ( selector && typeof selector === "string" ) { - matched = jQuery.filter( selector, matched ); - } - - if ( this.length > 1 ) { - - // Remove duplicates - if ( !guaranteedUnique[ name ] ) { - jQuery.uniqueSort( matched ); - } - - // Reverse order for parents* and prev-derivatives - if ( rparentsprev.test( name ) ) { - matched.reverse(); - } - } - - return this.pushStack( matched ); - }; -} ); -var rnothtmlwhite = ( /[^\x20\t\r\n\f]+/g ); - - - -// Convert String-formatted options into Object-formatted ones -function createOptions( options ) { - var object = {}; - jQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) { - object[ flag ] = true; - } ); - return object; -} - -/* - * Create a callback list using the following parameters: - * - * options: an optional list of space-separated options that will change how - * the callback list behaves or a more traditional option object - * - * By default a callback list will act like an event callback list and can be - * "fired" multiple times. - * - * Possible options: - * - * once: will ensure the callback list can only be fired once (like a Deferred) - * - * memory: will keep track of previous values and will call any callback added - * after the list has been fired right away with the latest "memorized" - * values (like a Deferred) - * - * unique: will ensure a callback can only be added once (no duplicate in the list) - * - * stopOnFalse: interrupt callings when a callback returns false - * - */ -jQuery.Callbacks = function( options ) { - - // Convert options from String-formatted to Object-formatted if needed - // (we check in cache first) - options = typeof options === "string" ? - createOptions( options ) : - jQuery.extend( {}, options ); - - var // Flag to know if list is currently firing - firing, - - // Last fire value for non-forgettable lists - memory, - - // Flag to know if list was already fired - fired, - - // Flag to prevent firing - locked, - - // Actual callback list - list = [], - - // Queue of execution data for repeatable lists - queue = [], - - // Index of currently firing callback (modified by add/remove as needed) - firingIndex = -1, - - // Fire callbacks - fire = function() { - - // Enforce single-firing - locked = locked || options.once; - - // Execute callbacks for all pending executions, - // respecting firingIndex overrides and runtime changes - fired = firing = true; - for ( ; queue.length; firingIndex = -1 ) { - memory = queue.shift(); - while ( ++firingIndex < list.length ) { - - // Run callback and check for early termination - if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && - options.stopOnFalse ) { - - // Jump to end and forget the data so .add doesn't re-fire - firingIndex = list.length; - memory = false; - } - } - } - - // Forget the data if we're done with it - if ( !options.memory ) { - memory = false; - } - - firing = false; - - // Clean up if we're done firing for good - if ( locked ) { - - // Keep an empty list if we have data for future add calls - if ( memory ) { - list = []; - - // Otherwise, this object is spent - } else { - list = ""; - } - } - }, - - // Actual Callbacks object - self = { - - // Add a callback or a collection of callbacks to the list - add: function() { - if ( list ) { - - // If we have memory from a past run, we should fire after adding - if ( memory && !firing ) { - firingIndex = list.length - 1; - queue.push( memory ); - } - - ( function add( args ) { - jQuery.each( args, function( _, arg ) { - if ( jQuery.isFunction( arg ) ) { - if ( !options.unique || !self.has( arg ) ) { - list.push( arg ); - } - } else if ( arg && arg.length && jQuery.type( arg ) !== "string" ) { - - // Inspect recursively - add( arg ); - } - } ); - } )( arguments ); - - if ( memory && !firing ) { - fire(); - } - } - return this; - }, - - // Remove a callback from the list - remove: function() { - jQuery.each( arguments, function( _, arg ) { - var index; - while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { - list.splice( index, 1 ); - - // Handle firing indexes - if ( index <= firingIndex ) { - firingIndex--; - } - } - } ); - return this; - }, - - // Check if a given callback is in the list. - // If no argument is given, return whether or not list has callbacks attached. - has: function( fn ) { - return fn ? - jQuery.inArray( fn, list ) > -1 : - list.length > 0; - }, - - // Remove all callbacks from the list - empty: function() { - if ( list ) { - list = []; - } - return this; - }, - - // Disable .fire and .add - // Abort any current/pending executions - // Clear all callbacks and values - disable: function() { - locked = queue = []; - list = memory = ""; - return this; - }, - disabled: function() { - return !list; - }, - - // Disable .fire - // Also disable .add unless we have memory (since it would have no effect) - // Abort any pending executions - lock: function() { - locked = queue = []; - if ( !memory && !firing ) { - list = memory = ""; - } - return this; - }, - locked: function() { - return !!locked; - }, - - // Call all callbacks with the given context and arguments - fireWith: function( context, args ) { - if ( !locked ) { - args = args || []; - args = [ context, args.slice ? args.slice() : args ]; - queue.push( args ); - if ( !firing ) { - fire(); - } - } - return this; - }, - - // Call all the callbacks with the given arguments - fire: function() { - self.fireWith( this, arguments ); - return this; - }, - - // To know if the callbacks have already been called at least once - fired: function() { - return !!fired; - } - }; - - return self; -}; - - -function Identity( v ) { - return v; -} -function Thrower( ex ) { - throw ex; -} - -function adoptValue( value, resolve, reject, noValue ) { - var method; - - try { - - // Check for promise aspect first to privilege synchronous behavior - if ( value && jQuery.isFunction( ( method = value.promise ) ) ) { - method.call( value ).done( resolve ).fail( reject ); - - // Other thenables - } else if ( value && jQuery.isFunction( ( method = value.then ) ) ) { - method.call( value, resolve, reject ); - - // Other non-thenables - } else { - - // Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer: - // * false: [ value ].slice( 0 ) => resolve( value ) - // * true: [ value ].slice( 1 ) => resolve() - resolve.apply( undefined, [ value ].slice( noValue ) ); - } - - // For Promises/A+, convert exceptions into rejections - // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in - // Deferred#then to conditionally suppress rejection. - } catch ( value ) { - - // Support: Android 4.0 only - // Strict mode functions invoked without .call/.apply get global-object context - reject.apply( undefined, [ value ] ); - } -} - -jQuery.extend( { - - Deferred: function( func ) { - var tuples = [ - - // action, add listener, callbacks, - // ... .then handlers, argument index, [final state] - [ "notify", "progress", jQuery.Callbacks( "memory" ), - jQuery.Callbacks( "memory" ), 2 ], - [ "resolve", "done", jQuery.Callbacks( "once memory" ), - jQuery.Callbacks( "once memory" ), 0, "resolved" ], - [ "reject", "fail", jQuery.Callbacks( "once memory" ), - jQuery.Callbacks( "once memory" ), 1, "rejected" ] - ], - state = "pending", - promise = { - state: function() { - return state; - }, - always: function() { - deferred.done( arguments ).fail( arguments ); - return this; - }, - "catch": function( fn ) { - return promise.then( null, fn ); - }, - - // Keep pipe for back-compat - pipe: function( /* fnDone, fnFail, fnProgress */ ) { - var fns = arguments; - - return jQuery.Deferred( function( newDefer ) { - jQuery.each( tuples, function( i, tuple ) { - - // Map tuples (progress, done, fail) to arguments (done, fail, progress) - var fn = jQuery.isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ]; - - // deferred.progress(function() { bind to newDefer or newDefer.notify }) - // deferred.done(function() { bind to newDefer or newDefer.resolve }) - // deferred.fail(function() { bind to newDefer or newDefer.reject }) - deferred[ tuple[ 1 ] ]( function() { - var returned = fn && fn.apply( this, arguments ); - if ( returned && jQuery.isFunction( returned.promise ) ) { - returned.promise() - .progress( newDefer.notify ) - .done( newDefer.resolve ) - .fail( newDefer.reject ); - } else { - newDefer[ tuple[ 0 ] + "With" ]( - this, - fn ? [ returned ] : arguments - ); - } - } ); - } ); - fns = null; - } ).promise(); - }, - then: function( onFulfilled, onRejected, onProgress ) { - var maxDepth = 0; - function resolve( depth, deferred, handler, special ) { - return function() { - var that = this, - args = arguments, - mightThrow = function() { - var returned, then; - - // Support: Promises/A+ section 2.3.3.3.3 - // https://promisesaplus.com/#point-59 - // Ignore double-resolution attempts - if ( depth < maxDepth ) { - return; - } - - returned = handler.apply( that, args ); - - // Support: Promises/A+ section 2.3.1 - // https://promisesaplus.com/#point-48 - if ( returned === deferred.promise() ) { - throw new TypeError( "Thenable self-resolution" ); - } - - // Support: Promises/A+ sections 2.3.3.1, 3.5 - // https://promisesaplus.com/#point-54 - // https://promisesaplus.com/#point-75 - // Retrieve `then` only once - then = returned && - - // Support: Promises/A+ section 2.3.4 - // https://promisesaplus.com/#point-64 - // Only check objects and functions for thenability - ( typeof returned === "object" || - typeof returned === "function" ) && - returned.then; - - // Handle a returned thenable - if ( jQuery.isFunction( then ) ) { - - // Special processors (notify) just wait for resolution - if ( special ) { - then.call( - returned, - resolve( maxDepth, deferred, Identity, special ), - resolve( maxDepth, deferred, Thrower, special ) - ); - - // Normal processors (resolve) also hook into progress - } else { - - // ...and disregard older resolution values - maxDepth++; - - then.call( - returned, - resolve( maxDepth, deferred, Identity, special ), - resolve( maxDepth, deferred, Thrower, special ), - resolve( maxDepth, deferred, Identity, - deferred.notifyWith ) - ); - } - - // Handle all other returned values - } else { - - // Only substitute handlers pass on context - // and multiple values (non-spec behavior) - if ( handler !== Identity ) { - that = undefined; - args = [ returned ]; - } - - // Process the value(s) - // Default process is resolve - ( special || deferred.resolveWith )( that, args ); - } - }, - - // Only normal processors (resolve) catch and reject exceptions - process = special ? - mightThrow : - function() { - try { - mightThrow(); - } catch ( e ) { - - if ( jQuery.Deferred.exceptionHook ) { - jQuery.Deferred.exceptionHook( e, - process.stackTrace ); - } - - // Support: Promises/A+ section 2.3.3.3.4.1 - // https://promisesaplus.com/#point-61 - // Ignore post-resolution exceptions - if ( depth + 1 >= maxDepth ) { - - // Only substitute handlers pass on context - // and multiple values (non-spec behavior) - if ( handler !== Thrower ) { - that = undefined; - args = [ e ]; - } - - deferred.rejectWith( that, args ); - } - } - }; - - // Support: Promises/A+ section 2.3.3.3.1 - // https://promisesaplus.com/#point-57 - // Re-resolve promises immediately to dodge false rejection from - // subsequent errors - if ( depth ) { - process(); - } else { - - // Call an optional hook to record the stack, in case of exception - // since it's otherwise lost when execution goes async - if ( jQuery.Deferred.getStackHook ) { - process.stackTrace = jQuery.Deferred.getStackHook(); - } - window.setTimeout( process ); - } - }; - } - - return jQuery.Deferred( function( newDefer ) { - - // progress_handlers.add( ... ) - tuples[ 0 ][ 3 ].add( - resolve( - 0, - newDefer, - jQuery.isFunction( onProgress ) ? - onProgress : - Identity, - newDefer.notifyWith - ) - ); - - // fulfilled_handlers.add( ... ) - tuples[ 1 ][ 3 ].add( - resolve( - 0, - newDefer, - jQuery.isFunction( onFulfilled ) ? - onFulfilled : - Identity - ) - ); - - // rejected_handlers.add( ... ) - tuples[ 2 ][ 3 ].add( - resolve( - 0, - newDefer, - jQuery.isFunction( onRejected ) ? - onRejected : - Thrower - ) - ); - } ).promise(); - }, - - // Get a promise for this deferred - // If obj is provided, the promise aspect is added to the object - promise: function( obj ) { - return obj != null ? jQuery.extend( obj, promise ) : promise; - } - }, - deferred = {}; - - // Add list-specific methods - jQuery.each( tuples, function( i, tuple ) { - var list = tuple[ 2 ], - stateString = tuple[ 5 ]; - - // promise.progress = list.add - // promise.done = list.add - // promise.fail = list.add - promise[ tuple[ 1 ] ] = list.add; - - // Handle state - if ( stateString ) { - list.add( - function() { - - // state = "resolved" (i.e., fulfilled) - // state = "rejected" - state = stateString; - }, - - // rejected_callbacks.disable - // fulfilled_callbacks.disable - tuples[ 3 - i ][ 2 ].disable, - - // progress_callbacks.lock - tuples[ 0 ][ 2 ].lock - ); - } - - // progress_handlers.fire - // fulfilled_handlers.fire - // rejected_handlers.fire - list.add( tuple[ 3 ].fire ); - - // deferred.notify = function() { deferred.notifyWith(...) } - // deferred.resolve = function() { deferred.resolveWith(...) } - // deferred.reject = function() { deferred.rejectWith(...) } - deferred[ tuple[ 0 ] ] = function() { - deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments ); - return this; - }; - - // deferred.notifyWith = list.fireWith - // deferred.resolveWith = list.fireWith - // deferred.rejectWith = list.fireWith - deferred[ tuple[ 0 ] + "With" ] = list.fireWith; - } ); - - // Make the deferred a promise - promise.promise( deferred ); - - // Call given func if any - if ( func ) { - func.call( deferred, deferred ); - } - - // All done! - return deferred; - }, - - // Deferred helper - when: function( singleValue ) { - var - - // count of uncompleted subordinates - remaining = arguments.length, - - // count of unprocessed arguments - i = remaining, - - // subordinate fulfillment data - resolveContexts = Array( i ), - resolveValues = slice.call( arguments ), - - // the master Deferred - master = jQuery.Deferred(), - - // subordinate callback factory - updateFunc = function( i ) { - return function( value ) { - resolveContexts[ i ] = this; - resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; - if ( !( --remaining ) ) { - master.resolveWith( resolveContexts, resolveValues ); - } - }; - }; - - // Single- and empty arguments are adopted like Promise.resolve - if ( remaining <= 1 ) { - adoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject, - !remaining ); - - // Use .then() to unwrap secondary thenables (cf. gh-3000) - if ( master.state() === "pending" || - jQuery.isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { - - return master.then(); - } - } - - // Multiple arguments are aggregated like Promise.all array elements - while ( i-- ) { - adoptValue( resolveValues[ i ], updateFunc( i ), master.reject ); - } - - return master.promise(); - } -} ); - - -// These usually indicate a programmer mistake during development, -// warn about them ASAP rather than swallowing them by default. -var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; - -jQuery.Deferred.exceptionHook = function( error, stack ) { - - // Support: IE 8 - 9 only - // Console exists when dev tools are open, which can happen at any time - if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) { - window.console.warn( "jQuery.Deferred exception: " + error.message, error.stack, stack ); - } -}; - - - - -jQuery.readyException = function( error ) { - window.setTimeout( function() { - throw error; - } ); -}; - - - - -// The deferred used on DOM ready -var readyList = jQuery.Deferred(); - -jQuery.fn.ready = function( 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; -}; - -jQuery.extend( { - - // Is the DOM ready to be used? Set to true once it occurs. - isReady: false, - - // A counter to track how many items to wait for before - // the ready event fires. See #6781 - readyWait: 1, - - // Handle when the DOM is ready - ready: function( wait ) { - - // Abort if there are pending holds or we're already ready - if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { - return; - } - - // Remember that the DOM is ready - jQuery.isReady = true; - - // If a normal DOM Ready event fired, decrement, and wait if need be - if ( wait !== true && --jQuery.readyWait > 0 ) { - return; - } - - // If there are functions bound, to execute - readyList.resolveWith( document, [ jQuery ] ); - } -} ); - -jQuery.ready.then = readyList.then; - -// The ready event handler and self cleanup method -function completed() { - document.removeEventListener( "DOMContentLoaded", completed ); - window.removeEventListener( "load", completed ); - jQuery.ready(); -} - -// Catch cases where $(document).ready() is called -// after the browser event has already occurred. -// Support: IE <=9 - 10 only -// Older IE sometimes signals "interactive" too soon -if ( document.readyState === "complete" || - ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { - - // Handle it asynchronously to allow scripts the opportunity to delay ready - window.setTimeout( jQuery.ready ); - -} else { - - // Use the handy event callback - document.addEventListener( "DOMContentLoaded", completed ); - - // A fallback to window.onload, that will always work - window.addEventListener( "load", completed ); -} - - - - -// Multifunctional method to get and set values of a collection -// The value/s can optionally be executed if it's a function -var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { - var i = 0, - len = elems.length, - bulk = key == null; - - // Sets many values - if ( jQuery.type( key ) === "object" ) { - chainable = true; - for ( i in key ) { - access( elems, fn, i, key[ i ], true, emptyGet, raw ); - } - - // Sets one value - } else if ( value !== undefined ) { - chainable = true; - - if ( !jQuery.isFunction( value ) ) { - raw = true; - } - - if ( bulk ) { - - // Bulk operations run against the entire set - if ( raw ) { - fn.call( elems, value ); - fn = null; - - // ...except when executing function values - } else { - bulk = fn; - fn = function( elem, key, value ) { - return bulk.call( jQuery( elem ), value ); - }; - } - } - - if ( fn ) { - for ( ; i < len; i++ ) { - fn( - elems[ i ], key, raw ? - value : - value.call( elems[ i ], i, fn( elems[ i ], key ) ) - ); - } - } - } - - if ( chainable ) { - return elems; - } - - // Gets - if ( bulk ) { - return fn.call( elems ); - } - - return len ? fn( elems[ 0 ], key ) : emptyGet; -}; -var acceptData = function( owner ) { - - // Accepts only: - // - Node - // - Node.ELEMENT_NODE - // - Node.DOCUMENT_NODE - // - Object - // - Any - return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); -}; - - - - -function Data() { - this.expando = jQuery.expando + Data.uid++; -} - -Data.uid = 1; - -Data.prototype = { - - cache: function( owner ) { - - // Check if the owner object already has a cache - var value = owner[ this.expando ]; - - // If not, create one - if ( !value ) { - value = {}; - - // We can accept data for non-element nodes in modern browsers, - // but we should not, see #8335. - // Always return an empty object. - if ( acceptData( owner ) ) { - - // If it is a node unlikely to be stringify-ed or looped over - // use plain assignment - if ( owner.nodeType ) { - owner[ this.expando ] = value; - - // Otherwise secure it in a non-enumerable property - // configurable must be true to allow the property to be - // deleted when data is removed - } else { - Object.defineProperty( owner, this.expando, { - value: value, - configurable: true - } ); - } - } - } - - return value; - }, - set: function( owner, data, value ) { - var prop, - cache = this.cache( owner ); - - // Handle: [ owner, key, value ] args - // Always use camelCase key (gh-2257) - if ( typeof data === "string" ) { - cache[ jQuery.camelCase( data ) ] = value; - - // Handle: [ owner, { properties } ] args - } else { - - // Copy the properties one-by-one to the cache object - for ( prop in data ) { - cache[ jQuery.camelCase( prop ) ] = data[ prop ]; - } - } - return cache; - }, - get: function( owner, key ) { - return key === undefined ? - this.cache( owner ) : - - // Always use camelCase key (gh-2257) - owner[ this.expando ] && owner[ this.expando ][ jQuery.camelCase( key ) ]; - }, - access: function( owner, key, value ) { - - // In cases where either: - // - // 1. No key was specified - // 2. A string key was specified, but no value provided - // - // Take the "read" path and allow the get method to determine - // which value to return, respectively either: - // - // 1. The entire cache object - // 2. The data stored at the key - // - if ( key === undefined || - ( ( key && typeof key === "string" ) && value === undefined ) ) { - - return this.get( owner, key ); - } - - // When the key is not a string, or both a key and value - // are specified, set or extend (existing objects) with either: - // - // 1. An object of properties - // 2. A key and value - // - this.set( owner, key, value ); - - // Since the "set" path can have two possible entry points - // return the expected data based on which path was taken[*] - return value !== undefined ? value : key; - }, - remove: function( owner, key ) { - var i, - cache = owner[ this.expando ]; - - if ( cache === undefined ) { - return; - } - - if ( key !== undefined ) { - - // Support array or space separated string of keys - if ( Array.isArray( key ) ) { - - // If key is an array of keys... - // We always set camelCase keys, so remove that. - key = key.map( jQuery.camelCase ); - } else { - key = jQuery.camelCase( key ); - - // If a key with the spaces exists, use it. - // Otherwise, create an array by matching non-whitespace - key = key in cache ? - [ key ] : - ( key.match( rnothtmlwhite ) || [] ); - } - - i = key.length; - - while ( i-- ) { - delete cache[ key[ i ] ]; - } - } - - // Remove the expando if there's no more data - if ( key === undefined || jQuery.isEmptyObject( cache ) ) { - - // Support: Chrome <=35 - 45 - // Webkit & Blink performance suffers when deleting properties - // from DOM nodes, so set to undefined instead - // https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted) - if ( owner.nodeType ) { - owner[ this.expando ] = undefined; - } else { - delete owner[ this.expando ]; - } - } - }, - hasData: function( owner ) { - var cache = owner[ this.expando ]; - return cache !== undefined && !jQuery.isEmptyObject( cache ); - } -}; -var dataPriv = new Data(); - -var dataUser = new Data(); - - - -// Implementation Summary -// -// 1. Enforce API surface and semantic compatibility with 1.9.x branch -// 2. Improve the module's maintainability by reducing the storage -// paths to a single mechanism. -// 3. Use the same single mechanism to support "private" and "user" data. -// 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData) -// 5. Avoid exposing implementation details on user objects (eg. expando properties) -// 6. Provide a clear path for implementation upgrade to WeakMap in 2014 - -var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, - rmultiDash = /[A-Z]/g; - -function getData( data ) { - if ( data === "true" ) { - return true; - } - - if ( data === "false" ) { - return false; - } - - if ( data === "null" ) { - return null; - } - - // Only convert to a number if it doesn't change the string - if ( data === +data + "" ) { - return +data; - } - - if ( rbrace.test( data ) ) { - return JSON.parse( data ); - } - - return data; -} - -function dataAttr( elem, key, data ) { - var name; - - // If nothing was found internally, try to fetch any - // data from the HTML5 data-* attribute - if ( data === undefined && elem.nodeType === 1 ) { - name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase(); - data = elem.getAttribute( name ); - - if ( typeof data === "string" ) { - try { - data = getData( data ); - } catch ( e ) {} - - // Make sure we set the data so it isn't changed later - dataUser.set( elem, key, data ); - } else { - data = undefined; - } - } - return data; -} - -jQuery.extend( { - hasData: function( elem ) { - return dataUser.hasData( elem ) || dataPriv.hasData( elem ); - }, - - data: function( elem, name, data ) { - return dataUser.access( elem, name, data ); - }, - - removeData: function( elem, name ) { - dataUser.remove( elem, name ); - }, - - // TODO: Now that all calls to _data and _removeData have been replaced - // with direct calls to dataPriv methods, these can be deprecated. - _data: function( elem, name, data ) { - return dataPriv.access( elem, name, data ); - }, - - _removeData: function( elem, name ) { - dataPriv.remove( elem, name ); - } -} ); - -jQuery.fn.extend( { - data: function( key, value ) { - var i, name, data, - elem = this[ 0 ], - attrs = elem && elem.attributes; - - // Gets all values - if ( key === undefined ) { - if ( this.length ) { - data = dataUser.get( elem ); - - if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) { - i = attrs.length; - while ( i-- ) { - - // Support: IE 11 only - // The attrs elements can be null (#14894) - if ( attrs[ i ] ) { - name = attrs[ i ].name; - if ( name.indexOf( "data-" ) === 0 ) { - name = jQuery.camelCase( name.slice( 5 ) ); - dataAttr( elem, name, data[ name ] ); - } - } - } - dataPriv.set( elem, "hasDataAttrs", true ); - } - } - - return data; - } - - // Sets multiple values - if ( typeof key === "object" ) { - return this.each( function() { - dataUser.set( this, key ); - } ); - } - - return access( this, function( value ) { - var data; - - // The calling jQuery object (element matches) is not empty - // (and therefore has an element appears at this[ 0 ]) and the - // `value` parameter was not undefined. An empty jQuery object - // will result in `undefined` for elem = this[ 0 ] which will - // throw an exception if an attempt to read a data cache is made. - if ( elem && value === undefined ) { - - // Attempt to get data from the cache - // The key will always be camelCased in Data - data = dataUser.get( elem, key ); - if ( data !== undefined ) { - return data; - } - - // Attempt to "discover" the data in - // HTML5 custom data-* attrs - data = dataAttr( elem, key ); - if ( data !== undefined ) { - return data; - } - - // We tried really hard, but the data doesn't exist. - return; - } - - // Set the data... - this.each( function() { - - // We always store the camelCased key - dataUser.set( this, key, value ); - } ); - }, null, value, arguments.length > 1, null, true ); - }, - - removeData: function( key ) { - return this.each( function() { - dataUser.remove( this, key ); - } ); - } -} ); - - -jQuery.extend( { - queue: function( elem, type, data ) { - var queue; - - if ( elem ) { - type = ( type || "fx" ) + "queue"; - queue = dataPriv.get( elem, type ); - - // Speed up dequeue by getting out quickly if this is just a lookup - if ( data ) { - if ( !queue || Array.isArray( data ) ) { - queue = dataPriv.access( elem, type, jQuery.makeArray( data ) ); - } else { - queue.push( data ); - } - } - return queue || []; - } - }, - - dequeue: function( elem, type ) { - type = type || "fx"; - - var queue = jQuery.queue( elem, type ), - startLength = queue.length, - fn = queue.shift(), - hooks = jQuery._queueHooks( elem, type ), - next = function() { - jQuery.dequeue( elem, type ); - }; - - // If the fx queue is dequeued, always remove the progress sentinel - if ( fn === "inprogress" ) { - fn = queue.shift(); - startLength--; - } - - if ( fn ) { - - // Add a progress sentinel to prevent the fx queue from being - // automatically dequeued - if ( type === "fx" ) { - queue.unshift( "inprogress" ); - } - - // Clear up the last queue stop function - delete hooks.stop; - fn.call( elem, next, hooks ); - } - - if ( !startLength && hooks ) { - hooks.empty.fire(); - } - }, - - // Not public - generate a queueHooks object, or return the current one - _queueHooks: function( elem, type ) { - var key = type + "queueHooks"; - return dataPriv.get( elem, key ) || dataPriv.access( elem, key, { - empty: jQuery.Callbacks( "once memory" ).add( function() { - dataPriv.remove( elem, [ type + "queue", key ] ); - } ) - } ); - } -} ); - -jQuery.fn.extend( { - queue: function( type, data ) { - var setter = 2; - - if ( typeof type !== "string" ) { - data = type; - type = "fx"; - setter--; - } - - if ( arguments.length < setter ) { - return jQuery.queue( this[ 0 ], type ); - } - - return data === undefined ? - this : - this.each( function() { - var queue = jQuery.queue( this, type, data ); - - // Ensure a hooks for this queue - jQuery._queueHooks( this, type ); - - if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { - jQuery.dequeue( this, type ); - } - } ); - }, - dequeue: function( type ) { - return this.each( function() { - jQuery.dequeue( this, type ); - } ); - }, - clearQueue: function( type ) { - return this.queue( type || "fx", [] ); - }, - - // Get a promise resolved when queues of a certain type - // are emptied (fx is the type by default) - promise: function( type, obj ) { - var tmp, - count = 1, - defer = jQuery.Deferred(), - elements = this, - i = this.length, - resolve = function() { - if ( !( --count ) ) { - defer.resolveWith( elements, [ elements ] ); - } - }; - - if ( typeof type !== "string" ) { - obj = type; - type = undefined; - } - type = type || "fx"; - - while ( i-- ) { - tmp = dataPriv.get( elements[ i ], type + "queueHooks" ); - if ( tmp && tmp.empty ) { - count++; - tmp.empty.add( resolve ); - } - } - resolve(); - return defer.promise( obj ); - } -} ); -var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; - -var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); - - -var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; - -var isHiddenWithinTree = function( elem, el ) { - - // isHiddenWithinTree might be called from jQuery#filter function; - // in that case, element will be second argument - elem = el || elem; - - // Inline style trumps all - return elem.style.display === "none" || - elem.style.display === "" && - - // Otherwise, check computed style - // Support: Firefox <=43 - 45 - // Disconnected elements can have computed display: none, so first confirm that elem is - // in the document. - jQuery.contains( elem.ownerDocument, elem ) && - - jQuery.css( elem, "display" ) === "none"; - }; - -var swap = function( elem, options, callback, args ) { - var ret, name, - old = {}; - - // 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; -}; - - - - -function adjustCSS( elem, prop, valueParts, tween ) { - var adjusted, - scale = 1, - maxIterations = 20, - currentValue = tween ? - function() { - return tween.cur(); - } : - function() { - return jQuery.css( elem, prop, "" ); - }, - initial = currentValue(), - unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), - - // Starting value computation is required for potential unit mismatches - initialInUnit = ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && - rcssNum.exec( jQuery.css( elem, prop ) ); - - if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { - - // Trust units reported by jQuery.css - unit = unit || initialInUnit[ 3 ]; - - // Make sure we update the tween properties later on - valueParts = valueParts || []; - - // Iteratively approximate from a nonzero starting point - initialInUnit = +initial || 1; - - do { - - // If previous iteration zeroed out, double until we get *something*. - // Use string for doubling so we don't accidentally see scale as unchanged below - scale = scale || ".5"; - - // Adjust and apply - initialInUnit = initialInUnit / scale; - jQuery.style( elem, prop, initialInUnit + unit ); - - // Update scale, tolerating zero or NaN from tween.cur() - // Break the loop if scale is unchanged or perfect, or if we've just had enough. - } while ( - scale !== ( scale = currentValue() / initial ) && scale !== 1 && --maxIterations - ); - } - - if ( valueParts ) { - initialInUnit = +initialInUnit || +initial || 0; - - // Apply relative offset (+=/-=) if specified - adjusted = valueParts[ 1 ] ? - initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : - +valueParts[ 2 ]; - if ( tween ) { - tween.unit = unit; - tween.start = initialInUnit; - tween.end = adjusted; - } - } - return adjusted; -} - - -var defaultDisplayMap = {}; - -function getDefaultDisplay( elem ) { - var temp, - doc = elem.ownerDocument, - nodeName = elem.nodeName, - display = defaultDisplayMap[ nodeName ]; - - if ( display ) { - return display; - } - - temp = doc.body.appendChild( doc.createElement( nodeName ) ); - display = jQuery.css( temp, "display" ); - - temp.parentNode.removeChild( temp ); - - if ( display === "none" ) { - display = "block"; - } - defaultDisplayMap[ nodeName ] = display; - - return display; -} - -function showHide( elements, show ) { - var display, elem, - values = [], - index = 0, - length = elements.length; - - // Determine new display value for elements that need to change - for ( ; index < length; index++ ) { - elem = elements[ index ]; - if ( !elem.style ) { - continue; - } - - display = elem.style.display; - if ( show ) { - - // Since we force visibility upon cascade-hidden elements, an immediate (and slow) - // check is required in this first loop unless we have a nonempty display value (either - // inline or about-to-be-restored) - if ( display === "none" ) { - values[ index ] = dataPriv.get( elem, "display" ) || null; - if ( !values[ index ] ) { - elem.style.display = ""; - } - } - if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) { - values[ index ] = getDefaultDisplay( elem ); - } - } else { - if ( display !== "none" ) { - values[ index ] = "none"; - - // Remember what we're overwriting - dataPriv.set( elem, "display", display ); - } - } - } - - // Set the display of the elements in a second loop to avoid constant reflow - for ( index = 0; index < length; index++ ) { - if ( values[ index ] != null ) { - elements[ index ].style.display = values[ index ]; - } - } - - return elements; -} - -jQuery.fn.extend( { - show: function() { - return showHide( this, true ); - }, - hide: function() { - return showHide( this ); - }, - toggle: function( state ) { - if ( typeof state === "boolean" ) { - return state ? this.show() : this.hide(); - } - - return this.each( function() { - if ( isHiddenWithinTree( this ) ) { - jQuery( this ).show(); - } else { - jQuery( this ).hide(); - } - } ); - } -} ); -var rcheckableType = ( /^(?:checkbox|radio)$/i ); - -var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]+)/i ); - -var rscriptType = ( /^$|\/(?:java|ecma)script/i ); - - - -// We have to close these tags to support XHTML (#13200) -var wrapMap = { - - // Support: IE <=9 only - option: [ 1, "" ], - - // XHTML parsers do not magically insert elements in the - // same way that tag soup parsers do. So we cannot shorten - // this by omitting or other required elements. - thead: [ 1, "", "
" ], - col: [ 2, "", "
" ], - tr: [ 2, "", "
" ], - td: [ 3, "", "
" ], - - _default: [ 0, "", "" ] -}; - -// Support: IE <=9 only -wrapMap.optgroup = wrapMap.option; - -wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; -wrapMap.th = wrapMap.td; - - -function getAll( context, tag ) { - - // Support: IE <=9 - 11 only - // Use typeof to avoid zero-argument method invocation on host objects (#15151) - var ret; - - if ( typeof context.getElementsByTagName !== "undefined" ) { - ret = context.getElementsByTagName( tag || "*" ); - - } else if ( typeof context.querySelectorAll !== "undefined" ) { - ret = context.querySelectorAll( tag || "*" ); - - } else { - ret = []; - } - - if ( tag === undefined || tag && nodeName( context, tag ) ) { - return jQuery.merge( [ context ], ret ); - } - - return ret; -} - - -// Mark scripts as having already been evaluated -function setGlobalEval( elems, refElements ) { - var i = 0, - l = elems.length; - - for ( ; i < l; i++ ) { - dataPriv.set( - elems[ i ], - "globalEval", - !refElements || dataPriv.get( refElements[ i ], "globalEval" ) - ); - } -} - - -var rhtml = /<|&#?\w+;/; - -function buildFragment( elems, context, scripts, selection, ignored ) { - var elem, tmp, tag, wrap, contains, j, - fragment = context.createDocumentFragment(), - nodes = [], - i = 0, - l = elems.length; - - for ( ; i < l; i++ ) { - elem = elems[ i ]; - - if ( elem || elem === 0 ) { - - // Add nodes directly - if ( jQuery.type( elem ) === "object" ) { - - // Support: Android <=4.0 only, PhantomJS 1 only - // push.apply(_, arraylike) throws on ancient WebKit - jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); - - // Convert non-html into a text node - } else if ( !rhtml.test( elem ) ) { - nodes.push( context.createTextNode( elem ) ); - - // Convert html into DOM nodes - } else { - tmp = tmp || fragment.appendChild( context.createElement( "div" ) ); - - // Deserialize a standard representation - tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); - wrap = wrapMap[ tag ] || wrapMap._default; - tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ]; - - // Descend through wrappers to the right content - j = wrap[ 0 ]; - while ( j-- ) { - tmp = tmp.lastChild; - } - - // Support: Android <=4.0 only, PhantomJS 1 only - // push.apply(_, arraylike) throws on ancient WebKit - jQuery.merge( nodes, tmp.childNodes ); - - // Remember the top-level container - tmp = fragment.firstChild; - - // Ensure the created nodes are orphaned (#12392) - tmp.textContent = ""; - } - } - } - - // Remove wrapper from fragment - fragment.textContent = ""; - - i = 0; - while ( ( elem = nodes[ i++ ] ) ) { - - // Skip elements already in the context collection (trac-4087) - if ( selection && jQuery.inArray( elem, selection ) > -1 ) { - if ( ignored ) { - ignored.push( elem ); - } - continue; - } - - contains = jQuery.contains( elem.ownerDocument, elem ); - - // Append to fragment - tmp = getAll( fragment.appendChild( elem ), "script" ); - - // Preserve script evaluation history - if ( contains ) { - setGlobalEval( tmp ); - } - - // Capture executables - if ( scripts ) { - j = 0; - while ( ( elem = tmp[ j++ ] ) ) { - if ( rscriptType.test( elem.type || "" ) ) { - scripts.push( elem ); - } - } - } - } - - return fragment; -} - - -( function() { - var fragment = document.createDocumentFragment(), - div = fragment.appendChild( document.createElement( "div" ) ), - input = document.createElement( "input" ); - - // Support: Android 4.0 - 4.3 only - // Check state lost if the name is set (#11217) - // Support: Windows Web Apps (WWA) - // `name` and `type` must use .setAttribute for WWA (#14901) - input.setAttribute( "type", "radio" ); - input.setAttribute( "checked", "checked" ); - input.setAttribute( "name", "t" ); - - div.appendChild( input ); - - // Support: Android <=4.1 only - // Older WebKit doesn't clone checked state correctly in fragments - support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; - - // Support: IE <=11 only - // Make sure textarea (and checkbox) defaultValue is properly cloned - div.innerHTML = ""; - support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; -} )(); -var documentElement = document.documentElement; - - - -var - rkeyEvent = /^key/, - rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, - rtypenamespace = /^([^.]*)(?:\.(.+)|)/; - -function returnTrue() { - return true; -} - -function returnFalse() { - return false; -} - -// Support: IE <=9 only -// See #13393 for more info -function safeActiveElement() { - try { - return document.activeElement; - } catch ( err ) { } -} - -function on( elem, types, selector, data, fn, one ) { - var origFn, type; - - // Types can be a map of types/handlers - if ( typeof types === "object" ) { - - // ( types-Object, selector, data ) - if ( typeof selector !== "string" ) { - - // ( types-Object, data ) - data = data || selector; - selector = undefined; - } - for ( type in types ) { - on( elem, type, selector, data, types[ type ], one ); - } - return elem; - } - - if ( data == null && fn == null ) { - - // ( types, fn ) - fn = selector; - data = selector = undefined; - } else if ( fn == null ) { - if ( typeof selector === "string" ) { - - // ( types, selector, fn ) - fn = data; - data = undefined; - } else { - - // ( types, data, fn ) - fn = data; - data = selector; - selector = undefined; - } - } - if ( fn === false ) { - fn = returnFalse; - } else if ( !fn ) { - return elem; - } - - if ( one === 1 ) { - origFn = fn; - fn = function( event ) { - - // Can use an empty set, since event contains the info - jQuery().off( event ); - return origFn.apply( this, arguments ); - }; - - // Use same guid so caller can remove using origFn - fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); - } - return elem.each( function() { - jQuery.event.add( this, types, fn, data, selector ); - } ); -} - -/* - * Helper functions for managing events -- not part of the public interface. - * Props to Dean Edwards' addEvent library for many of the ideas. - */ -jQuery.event = { - - global: {}, - - add: function( elem, types, handler, data, selector ) { - - var handleObjIn, eventHandle, tmp, - events, t, handleObj, - special, handlers, type, namespaces, origType, - elemData = dataPriv.get( elem ); - - // Don't attach events to noData or text/comment nodes (but allow plain objects) - if ( !elemData ) { - return; - } - - // Caller can pass in an object of custom data in lieu of the handler - if ( handler.handler ) { - handleObjIn = handler; - handler = handleObjIn.handler; - selector = handleObjIn.selector; - } - - // Ensure that invalid selectors throw exceptions at attach time - // Evaluate against documentElement in case elem is a non-element node (e.g., document) - if ( selector ) { - jQuery.find.matchesSelector( documentElement, selector ); - } - - // Make sure that the handler has a unique ID, used to find/remove it later - if ( !handler.guid ) { - handler.guid = jQuery.guid++; - } - - // Init the element's event structure and main handler, if this is the first - if ( !( events = elemData.events ) ) { - events = elemData.events = {}; - } - if ( !( eventHandle = elemData.handle ) ) { - eventHandle = elemData.handle = function( e ) { - - // Discard the second event of a jQuery.event.trigger() and - // when an event is called after a page has unloaded - return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ? - jQuery.event.dispatch.apply( elem, arguments ) : undefined; - }; - } - - // Handle multiple events separated by a space - types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; - t = types.length; - while ( t-- ) { - tmp = rtypenamespace.exec( types[ t ] ) || []; - type = origType = tmp[ 1 ]; - namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); - - // There *must* be a type, no attaching namespace-only handlers - if ( !type ) { - continue; - } - - // If event changes its type, use the special event handlers for the changed type - special = jQuery.event.special[ type ] || {}; - - // If selector defined, determine special event api type, otherwise given type - type = ( selector ? special.delegateType : special.bindType ) || type; - - // Update special based on newly reset type - special = jQuery.event.special[ type ] || {}; - - // handleObj is passed to all event handlers - handleObj = jQuery.extend( { - type: type, - origType: origType, - data: data, - handler: handler, - guid: handler.guid, - selector: selector, - needsContext: selector && jQuery.expr.match.needsContext.test( selector ), - namespace: namespaces.join( "." ) - }, handleObjIn ); - - // Init the event handler queue if we're the first - if ( !( handlers = events[ type ] ) ) { - handlers = events[ type ] = []; - handlers.delegateCount = 0; - - // Only use addEventListener if the special events handler returns false - if ( !special.setup || - special.setup.call( elem, data, namespaces, eventHandle ) === false ) { - - if ( elem.addEventListener ) { - elem.addEventListener( type, eventHandle ); - } - } - } - - if ( special.add ) { - special.add.call( elem, handleObj ); - - if ( !handleObj.handler.guid ) { - handleObj.handler.guid = handler.guid; - } - } - - // Add to the element's handler list, delegates in front - if ( selector ) { - handlers.splice( handlers.delegateCount++, 0, handleObj ); - } else { - handlers.push( handleObj ); - } - - // Keep track of which events have ever been used, for event optimization - jQuery.event.global[ type ] = true; - } - - }, - - // Detach an event or set of events from an element - remove: function( elem, types, handler, selector, mappedTypes ) { - - var j, origCount, tmp, - events, t, handleObj, - special, handlers, type, namespaces, origType, - elemData = dataPriv.hasData( elem ) && dataPriv.get( elem ); - - if ( !elemData || !( events = elemData.events ) ) { - return; - } - - // Once for each type.namespace in types; type may be omitted - types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; - t = types.length; - while ( t-- ) { - tmp = rtypenamespace.exec( types[ t ] ) || []; - type = origType = tmp[ 1 ]; - namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); - - // Unbind all events (on this namespace, if provided) for the element - if ( !type ) { - for ( type in events ) { - jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); - } - continue; - } - - special = jQuery.event.special[ type ] || {}; - type = ( selector ? special.delegateType : special.bindType ) || type; - handlers = events[ type ] || []; - tmp = tmp[ 2 ] && - new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); - - // Remove matching events - origCount = j = handlers.length; - while ( j-- ) { - handleObj = handlers[ j ]; - - if ( ( mappedTypes || origType === handleObj.origType ) && - ( !handler || handler.guid === handleObj.guid ) && - ( !tmp || tmp.test( handleObj.namespace ) ) && - ( !selector || selector === handleObj.selector || - selector === "**" && handleObj.selector ) ) { - handlers.splice( j, 1 ); - - if ( handleObj.selector ) { - handlers.delegateCount--; - } - if ( special.remove ) { - special.remove.call( elem, handleObj ); - } - } - } - - // Remove generic event handler if we removed something and no more handlers exist - // (avoids potential for endless recursion during removal of special event handlers) - if ( origCount && !handlers.length ) { - if ( !special.teardown || - special.teardown.call( elem, namespaces, elemData.handle ) === false ) { - - jQuery.removeEvent( elem, type, elemData.handle ); - } - - delete events[ type ]; - } - } - - // Remove data and the expando if it's no longer used - if ( jQuery.isEmptyObject( events ) ) { - dataPriv.remove( elem, "handle events" ); - } - }, - - dispatch: function( nativeEvent ) { - - // Make a writable jQuery.Event from the native event object - var event = jQuery.event.fix( nativeEvent ); - - var i, j, ret, matched, handleObj, handlerQueue, - args = new Array( arguments.length ), - handlers = ( dataPriv.get( this, "events" ) || {} )[ event.type ] || [], - special = jQuery.event.special[ event.type ] || {}; - - // Use the fix-ed jQuery.Event rather than the (read-only) native event - args[ 0 ] = event; - - for ( i = 1; i < arguments.length; i++ ) { - args[ i ] = arguments[ i ]; - } - - event.delegateTarget = this; - - // Call the preDispatch hook for the mapped type, and let it bail if desired - if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { - return; - } - - // Determine handlers - handlerQueue = jQuery.event.handlers.call( this, event, handlers ); - - // Run delegates first; they may want to stop propagation beneath us - i = 0; - while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { - event.currentTarget = matched.elem; - - j = 0; - while ( ( handleObj = matched.handlers[ j++ ] ) && - !event.isImmediatePropagationStopped() ) { - - // Triggered event must either 1) have no namespace, or 2) have namespace(s) - // a subset or equal to those in the bound event (both can have no namespace). - if ( !event.rnamespace || event.rnamespace.test( handleObj.namespace ) ) { - - event.handleObj = handleObj; - event.data = handleObj.data; - - ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || - handleObj.handler ).apply( matched.elem, args ); - - if ( ret !== undefined ) { - if ( ( event.result = ret ) === false ) { - event.preventDefault(); - event.stopPropagation(); - } - } - } - } - } - - // Call the postDispatch hook for the mapped type - if ( special.postDispatch ) { - special.postDispatch.call( this, event ); - } - - return event.result; - }, - - handlers: function( event, handlers ) { - var i, handleObj, sel, matchedHandlers, matchedSelectors, - handlerQueue = [], - delegateCount = handlers.delegateCount, - cur = event.target; - - // Find delegate handlers - if ( delegateCount && - - // Support: IE <=9 - // Black-hole SVG instance trees (trac-13180) - cur.nodeType && - - // Support: Firefox <=42 - // Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861) - // https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click - // Support: IE 11 only - // ...but not arrow key "clicks" of radio inputs, which can have `button` -1 (gh-2343) - !( event.type === "click" && event.button >= 1 ) ) { - - for ( ; cur !== this; cur = cur.parentNode || this ) { - - // Don't check non-elements (#13208) - // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) - if ( cur.nodeType === 1 && !( event.type === "click" && cur.disabled === true ) ) { - matchedHandlers = []; - matchedSelectors = {}; - for ( i = 0; i < delegateCount; i++ ) { - handleObj = handlers[ i ]; - - // Don't conflict with Object.prototype properties (#13203) - sel = handleObj.selector + " "; - - if ( matchedSelectors[ sel ] === undefined ) { - matchedSelectors[ sel ] = handleObj.needsContext ? - jQuery( sel, this ).index( cur ) > -1 : - jQuery.find( sel, this, null, [ cur ] ).length; - } - if ( matchedSelectors[ sel ] ) { - matchedHandlers.push( handleObj ); - } - } - if ( matchedHandlers.length ) { - handlerQueue.push( { elem: cur, handlers: matchedHandlers } ); - } - } - } - } - - // Add the remaining (directly-bound) handlers - cur = this; - if ( delegateCount < handlers.length ) { - handlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } ); - } - - return handlerQueue; - }, - - addProp: function( name, hook ) { - Object.defineProperty( jQuery.Event.prototype, name, { - enumerable: true, - configurable: true, - - get: jQuery.isFunction( hook ) ? - function() { - if ( this.originalEvent ) { - return hook( this.originalEvent ); - } - } : - function() { - if ( this.originalEvent ) { - return this.originalEvent[ name ]; - } - }, - - set: function( value ) { - Object.defineProperty( this, name, { - enumerable: true, - configurable: true, - writable: true, - value: value - } ); - } - } ); - }, - - fix: function( originalEvent ) { - return originalEvent[ jQuery.expando ] ? - originalEvent : - new jQuery.Event( originalEvent ); - }, - - special: { - load: { - - // Prevent triggered image.load events from bubbling to window.load - noBubble: true - }, - focus: { - - // Fire native event if possible so blur/focus sequence is correct - trigger: function() { - if ( this !== safeActiveElement() && this.focus ) { - this.focus(); - return false; - } - }, - delegateType: "focusin" - }, - blur: { - trigger: function() { - if ( this === safeActiveElement() && this.blur ) { - this.blur(); - return false; - } - }, - delegateType: "focusout" - }, - click: { - - // For checkbox, fire native event so checked state will be right - trigger: function() { - if ( this.type === "checkbox" && this.click && nodeName( this, "input" ) ) { - this.click(); - return false; - } - }, - - // For cross-browser consistency, don't fire native .click() on links - _default: function( event ) { - return nodeName( event.target, "a" ); - } - }, - - beforeunload: { - postDispatch: function( event ) { - - // Support: Firefox 20+ - // Firefox doesn't alert if the returnValue field is not set. - if ( event.result !== undefined && event.originalEvent ) { - event.originalEvent.returnValue = event.result; - } - } - } - } -}; - -jQuery.removeEvent = function( elem, type, handle ) { - - // This "if" is needed for plain objects - if ( elem.removeEventListener ) { - elem.removeEventListener( type, handle ); - } -}; - -jQuery.Event = function( src, props ) { - - // Allow instantiation without the 'new' keyword - if ( !( this instanceof jQuery.Event ) ) { - return new jQuery.Event( src, props ); - } - - // Event object - if ( src && src.type ) { - this.originalEvent = src; - this.type = src.type; - - // Events bubbling up the document may have been marked as prevented - // by a handler lower down the tree; reflect the correct value. - this.isDefaultPrevented = src.defaultPrevented || - src.defaultPrevented === undefined && - - // Support: Android <=2.3 only - src.returnValue === false ? - returnTrue : - returnFalse; - - // Create target properties - // Support: Safari <=6 - 7 only - // Target should not be a text node (#504, #13143) - this.target = ( src.target && src.target.nodeType === 3 ) ? - src.target.parentNode : - src.target; - - this.currentTarget = src.currentTarget; - this.relatedTarget = src.relatedTarget; - - // Event type - } else { - this.type = src; - } - - // Put explicitly provided properties onto the event object - if ( props ) { - jQuery.extend( this, props ); - } - - // Create a timestamp if incoming event doesn't have one - this.timeStamp = src && src.timeStamp || jQuery.now(); - - // Mark it as fixed - this[ jQuery.expando ] = true; -}; - -// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding -// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html -jQuery.Event.prototype = { - constructor: jQuery.Event, - isDefaultPrevented: returnFalse, - isPropagationStopped: returnFalse, - isImmediatePropagationStopped: returnFalse, - isSimulated: false, - - preventDefault: function() { - var e = this.originalEvent; - - this.isDefaultPrevented = returnTrue; - - if ( e && !this.isSimulated ) { - e.preventDefault(); - } - }, - stopPropagation: function() { - var e = this.originalEvent; - - this.isPropagationStopped = returnTrue; - - if ( e && !this.isSimulated ) { - e.stopPropagation(); - } - }, - stopImmediatePropagation: function() { - var e = this.originalEvent; - - this.isImmediatePropagationStopped = returnTrue; - - if ( e && !this.isSimulated ) { - e.stopImmediatePropagation(); - } - - this.stopPropagation(); - } -}; - -// Includes all common event props including KeyEvent and MouseEvent specific props -jQuery.each( { - altKey: true, - bubbles: true, - cancelable: true, - changedTouches: true, - ctrlKey: true, - detail: true, - eventPhase: true, - metaKey: true, - pageX: true, - pageY: true, - shiftKey: true, - view: true, - "char": true, - charCode: true, - key: true, - keyCode: true, - button: true, - buttons: true, - clientX: true, - clientY: true, - offsetX: true, - offsetY: true, - pointerId: true, - pointerType: true, - screenX: true, - screenY: true, - 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; - } -}, jQuery.event.addProp ); - -// Create mouseenter/leave events using mouseover/out and event-time checks -// so that event delegation works in jQuery. -// Do the same for pointerenter/pointerleave and pointerover/pointerout -// -// Support: Safari 7 only -// Safari sends mouseenter too often; see: -// https://bugs.chromium.org/p/chromium/issues/detail?id=470258 -// for the description of the bug (it existed in older Chrome versions as well). -jQuery.each( { - mouseenter: "mouseover", - mouseleave: "mouseout", - pointerenter: "pointerover", - pointerleave: "pointerout" -}, function( orig, fix ) { - jQuery.event.special[ orig ] = { - delegateType: fix, - bindType: fix, - - handle: function( event ) { - var ret, - target = this, - related = event.relatedTarget, - handleObj = event.handleObj; - - // For mouseenter/leave call the handler if related is outside the target. - // NB: No relatedTarget if the mouse left/entered the browser window - if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { - event.type = handleObj.origType; - ret = handleObj.handler.apply( this, arguments ); - event.type = fix; - } - return ret; - } - }; -} ); - -jQuery.fn.extend( { - - on: function( types, selector, data, fn ) { - return on( this, types, selector, data, fn ); - }, - one: function( types, selector, data, fn ) { - return on( this, types, selector, data, fn, 1 ); - }, - off: function( types, selector, fn ) { - var handleObj, type; - if ( types && types.preventDefault && types.handleObj ) { - - // ( event ) dispatched jQuery.Event - handleObj = types.handleObj; - jQuery( types.delegateTarget ).off( - handleObj.namespace ? - handleObj.origType + "." + handleObj.namespace : - handleObj.origType, - handleObj.selector, - handleObj.handler - ); - return this; - } - if ( typeof types === "object" ) { - - // ( types-object [, selector] ) - for ( type in types ) { - this.off( type, selector, types[ type ] ); - } - return this; - } - if ( selector === false || typeof selector === "function" ) { - - // ( types [, fn] ) - fn = selector; - selector = undefined; - } - if ( fn === false ) { - fn = returnFalse; - } - return this.each( function() { - jQuery.event.remove( this, types, fn, selector ); - } ); - } -} ); - - -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, - - /* eslint-enable */ - - // Support: IE <=10 - 11, Edge 12 - 13 - // In IE/Edge using regex groups here causes severe slowdowns. - // See https://connect.microsoft.com/IE/feedback/details/1736512/ - rnoInnerhtml = /\s*$/g; - -// Prefer a tbody over its parent table for containing new rows -function manipulationTarget( elem, content ) { - if ( nodeName( elem, "table" ) && - nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) { - - return jQuery( ">tbody", elem )[ 0 ] || elem; - } - - return elem; -} - -// Replace/restore the type attribute of script elements for safe DOM manipulation -function disableScript( elem ) { - elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type; - return elem; -} -function restoreScript( elem ) { - var match = rscriptTypeMasked.exec( elem.type ); - - if ( match ) { - elem.type = match[ 1 ]; - } else { - elem.removeAttribute( "type" ); - } - - return elem; -} - -function cloneCopyEvent( src, dest ) { - var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events; - - if ( dest.nodeType !== 1 ) { - return; - } - - // 1. Copy private data: events, handlers, etc. - if ( dataPriv.hasData( src ) ) { - pdataOld = dataPriv.access( src ); - pdataCur = dataPriv.set( dest, pdataOld ); - events = pdataOld.events; - - if ( events ) { - delete pdataCur.handle; - pdataCur.events = {}; - - for ( type in events ) { - for ( i = 0, l = events[ type ].length; i < l; i++ ) { - jQuery.event.add( dest, type, events[ type ][ i ] ); - } - } - } - } - - // 2. Copy user data - if ( dataUser.hasData( src ) ) { - udataOld = dataUser.access( src ); - udataCur = jQuery.extend( {}, udataOld ); - - dataUser.set( dest, udataCur ); - } -} - -// Fix IE bugs, see support tests -function fixInput( src, dest ) { - var nodeName = dest.nodeName.toLowerCase(); - - // Fails to persist the checked state of a cloned checkbox or radio button. - if ( nodeName === "input" && rcheckableType.test( src.type ) ) { - dest.checked = src.checked; - - // Fails to return the selected option to the default selected state when cloning options - } else if ( nodeName === "input" || nodeName === "textarea" ) { - dest.defaultValue = src.defaultValue; - } -} - -function domManip( collection, args, callback, ignored ) { - - // Flatten any nested arrays - args = concat.apply( [], args ); - - var fragment, first, scripts, hasScripts, node, doc, - i = 0, - l = collection.length, - iNoClone = l - 1, - value = args[ 0 ], - isFunction = jQuery.isFunction( value ); - - // We can't cloneNode fragments that contain checked, in WebKit - if ( isFunction || - ( l > 1 && typeof value === "string" && - !support.checkClone && rchecked.test( value ) ) ) { - return collection.each( function( index ) { - var self = collection.eq( index ); - if ( isFunction ) { - args[ 0 ] = value.call( this, index, self.html() ); - } - domManip( self, args, callback, ignored ); - } ); - } - - if ( l ) { - fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); - first = fragment.firstChild; - - if ( fragment.childNodes.length === 1 ) { - fragment = first; - } - - // Require either new content or an interest in ignored elements to invoke the callback - if ( first || ignored ) { - scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); - hasScripts = scripts.length; - - // Use the original fragment for the last item - // instead of the first because it can end up - // being emptied incorrectly in certain situations (#8070). - for ( ; i < l; i++ ) { - node = fragment; - - if ( i !== iNoClone ) { - node = jQuery.clone( node, true, true ); - - // Keep references to cloned scripts for later restoration - if ( hasScripts ) { - - // Support: Android <=4.0 only, PhantomJS 1 only - // push.apply(_, arraylike) throws on ancient WebKit - jQuery.merge( scripts, getAll( node, "script" ) ); - } - } - - callback.call( collection[ i ], node, i ); - } - - if ( hasScripts ) { - doc = scripts[ scripts.length - 1 ].ownerDocument; - - // Reenable scripts - jQuery.map( scripts, restoreScript ); - - // Evaluate executable scripts on first document insertion - for ( i = 0; i < hasScripts; i++ ) { - node = scripts[ i ]; - if ( rscriptType.test( node.type || "" ) && - !dataPriv.access( node, "globalEval" ) && - jQuery.contains( doc, node ) ) { - - if ( node.src ) { - - // Optional AJAX dependency, but won't run scripts if not present - if ( jQuery._evalUrl ) { - jQuery._evalUrl( node.src ); - } - } else { - DOMEval( node.textContent.replace( rcleanScript, "" ), doc ); - } - } - } - } - } - } - - return collection; -} - -function remove( elem, selector, keepData ) { - var node, - nodes = selector ? jQuery.filter( selector, elem ) : elem, - i = 0; - - for ( ; ( node = nodes[ i ] ) != null; i++ ) { - if ( !keepData && node.nodeType === 1 ) { - jQuery.cleanData( getAll( node ) ); - } - - if ( node.parentNode ) { - if ( keepData && jQuery.contains( node.ownerDocument, node ) ) { - setGlobalEval( getAll( node, "script" ) ); - } - node.parentNode.removeChild( node ); - } - } - - return elem; -} - -jQuery.extend( { - htmlPrefilter: function( html ) { - return html.replace( rxhtmlTag, "<$1>" ); - }, - - clone: function( elem, dataAndEvents, deepDataAndEvents ) { - var i, l, srcElements, destElements, - clone = elem.cloneNode( true ), - inPage = jQuery.contains( elem.ownerDocument, elem ); - - // Fix IE cloning issues - if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && - !jQuery.isXMLDoc( elem ) ) { - - // We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2 - destElements = getAll( clone ); - srcElements = getAll( elem ); - - for ( i = 0, l = srcElements.length; i < l; i++ ) { - fixInput( srcElements[ i ], destElements[ i ] ); - } - } - - // Copy the events from the original to the clone - if ( dataAndEvents ) { - if ( deepDataAndEvents ) { - srcElements = srcElements || getAll( elem ); - destElements = destElements || getAll( clone ); - - for ( i = 0, l = srcElements.length; i < l; i++ ) { - cloneCopyEvent( srcElements[ i ], destElements[ i ] ); - } - } else { - cloneCopyEvent( elem, clone ); - } - } - - // Preserve script evaluation history - destElements = getAll( clone, "script" ); - if ( destElements.length > 0 ) { - setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); - } - - // Return the cloned set - return clone; - }, - - cleanData: function( elems ) { - var data, elem, type, - special = jQuery.event.special, - i = 0; - - for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) { - if ( acceptData( elem ) ) { - if ( ( data = elem[ dataPriv.expando ] ) ) { - if ( data.events ) { - for ( type in data.events ) { - if ( special[ type ] ) { - jQuery.event.remove( elem, type ); - - // This is a shortcut to avoid jQuery.event.remove's overhead - } else { - jQuery.removeEvent( elem, type, data.handle ); - } - } - } - - // Support: Chrome <=35 - 45+ - // Assign undefined instead of using delete, see Data#remove - elem[ dataPriv.expando ] = undefined; - } - if ( elem[ dataUser.expando ] ) { - - // Support: Chrome <=35 - 45+ - // Assign undefined instead of using delete, see Data#remove - elem[ dataUser.expando ] = undefined; - } - } - } - } -} ); - -jQuery.fn.extend( { - detach: function( selector ) { - return remove( this, selector, true ); - }, - - remove: function( selector ) { - return remove( this, selector ); - }, - - text: function( value ) { - return access( this, function( value ) { - return value === undefined ? - jQuery.text( this ) : - this.empty().each( function() { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - this.textContent = value; - } - } ); - }, null, value, arguments.length ); - }, - - append: function() { - return domManip( this, arguments, function( elem ) { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - var target = manipulationTarget( this, elem ); - target.appendChild( elem ); - } - } ); - }, - - prepend: function() { - return domManip( this, arguments, function( elem ) { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - var target = manipulationTarget( this, elem ); - target.insertBefore( elem, target.firstChild ); - } - } ); - }, - - before: function() { - return domManip( this, arguments, function( elem ) { - if ( this.parentNode ) { - this.parentNode.insertBefore( elem, this ); - } - } ); - }, - - after: function() { - return domManip( this, arguments, function( elem ) { - if ( this.parentNode ) { - this.parentNode.insertBefore( elem, this.nextSibling ); - } - } ); - }, - - empty: function() { - var elem, - i = 0; - - for ( ; ( elem = this[ i ] ) != null; i++ ) { - if ( elem.nodeType === 1 ) { - - // Prevent memory leaks - jQuery.cleanData( getAll( elem, false ) ); - - // Remove any remaining nodes - elem.textContent = ""; - } - } - - return this; - }, - - clone: function( dataAndEvents, deepDataAndEvents ) { - dataAndEvents = dataAndEvents == null ? false : dataAndEvents; - deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; - - return this.map( function() { - return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); - } ); - }, - - html: function( value ) { - return access( this, function( value ) { - var elem = this[ 0 ] || {}, - i = 0, - l = this.length; - - if ( value === undefined && elem.nodeType === 1 ) { - return elem.innerHTML; - } - - // See if we can take a shortcut and just use innerHTML - if ( typeof value === "string" && !rnoInnerhtml.test( value ) && - !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { - - value = jQuery.htmlPrefilter( value ); - - try { - for ( ; i < l; i++ ) { - elem = this[ i ] || {}; - - // Remove element nodes and prevent memory leaks - if ( elem.nodeType === 1 ) { - jQuery.cleanData( getAll( elem, false ) ); - elem.innerHTML = value; - } - } - - elem = 0; - - // If using innerHTML throws an exception, use the fallback method - } catch ( e ) {} - } - - if ( elem ) { - this.empty().append( value ); - } - }, null, value, arguments.length ); - }, - - replaceWith: function() { - var ignored = []; - - // Make the changes, replacing each non-ignored context element with the new content - return domManip( this, arguments, function( elem ) { - var parent = this.parentNode; - - if ( jQuery.inArray( this, ignored ) < 0 ) { - jQuery.cleanData( getAll( this ) ); - if ( parent ) { - parent.replaceChild( elem, this ); - } - } - - // Force callback invocation - }, ignored ); - } -} ); - -jQuery.each( { - appendTo: "append", - prependTo: "prepend", - insertBefore: "before", - insertAfter: "after", - replaceAll: "replaceWith" -}, function( name, original ) { - jQuery.fn[ name ] = function( selector ) { - var elems, - ret = [], - insert = jQuery( selector ), - last = insert.length - 1, - i = 0; - - for ( ; i <= last; i++ ) { - elems = i === last ? this : this.clone( true ); - jQuery( insert[ i ] )[ original ]( elems ); - - // Support: Android <=4.0 only, PhantomJS 1 only - // .get() because push.apply(_, arraylike) throws on ancient WebKit - push.apply( ret, elems.get() ); - } - - return this.pushStack( ret ); - }; -} ); -var rmargin = ( /^margin/ ); - -var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" ); - -var getStyles = function( elem ) { - - // Support: IE <=11 only, Firefox <=30 (#15098, #14150) - // IE throws on elements created in popups - // FF meanwhile throws on frame elements through "defaultView.getComputedStyle" - var view = elem.ownerDocument.defaultView; - - if ( !view || !view.opener ) { - view = window; - } - - return view.getComputedStyle( elem ); - }; - - - -( function() { - - // Executing both pixelPosition & boxSizingReliable tests require only one layout - // so they're executed at the same time to save the second computation. - function computeStyleTests() { - - // This is a singleton, we need to execute it only once - if ( !div ) { - return; - } - - div.style.cssText = - "box-sizing:border-box;" + - "position:relative;display:block;" + - "margin:auto;border:1px;padding:1px;" + - "top:1%;width:50%"; - div.innerHTML = ""; - documentElement.appendChild( container ); - - var divStyle = window.getComputedStyle( div ); - pixelPositionVal = divStyle.top !== "1%"; - - // Support: Android 4.0 - 4.3 only, Firefox <=3 - 44 - reliableMarginLeftVal = divStyle.marginLeft === "2px"; - boxSizingReliableVal = divStyle.width === "4px"; - - // Support: Android 4.0 - 4.3 only - // Some styles come back with percentage values, even though they shouldn't - div.style.marginRight = "50%"; - pixelMarginRightVal = divStyle.marginRight === "4px"; - - documentElement.removeChild( container ); - - // Nullify the div so it wouldn't be stored in the memory and - // it will also be a sign that checks already performed - div = null; - } - - var pixelPositionVal, boxSizingReliableVal, pixelMarginRightVal, reliableMarginLeftVal, - container = document.createElement( "div" ), - div = document.createElement( "div" ); - - // Finish early in limited (non-browser) environments - if ( !div.style ) { - return; - } - - // Support: IE <=9 - 11 only - // Style of cloned element affects source element cloned (#8908) - div.style.backgroundClip = "content-box"; - div.cloneNode( true ).style.backgroundClip = ""; - support.clearCloneStyle = div.style.backgroundClip === "content-box"; - - container.style.cssText = "border:0;width:8px;height:0;top:0;left:-9999px;" + - "padding:0;margin-top:1px;position:absolute"; - container.appendChild( div ); - - jQuery.extend( support, { - pixelPosition: function() { - computeStyleTests(); - return pixelPositionVal; - }, - boxSizingReliable: function() { - computeStyleTests(); - return boxSizingReliableVal; - }, - pixelMarginRight: function() { - computeStyleTests(); - return pixelMarginRightVal; - }, - reliableMarginLeft: function() { - computeStyleTests(); - return reliableMarginLeftVal; - } - } ); -} )(); - - -function curCSS( elem, name, computed ) { - var width, minWidth, maxWidth, ret, - - // Support: Firefox 51+ - // Retrieving style before computed somehow - // fixes an issue with getting wrong values - // on detached elements - style = elem.style; - - computed = computed || getStyles( elem ); - - // getPropertyValue is needed for: - // .css('filter') (IE 9 only, #12537) - // .css('--customProperty) (#3144) - if ( computed ) { - ret = computed.getPropertyValue( name ) || computed[ name ]; - - if ( ret === "" && !jQuery.contains( elem.ownerDocument, elem ) ) { - ret = jQuery.style( elem, name ); - } - - // A tribute to the "awesome hack by Dean Edwards" - // Android Browser returns percentage for some values, - // but width seems to be reliably pixels. - // This is against the CSSOM draft spec: - // https://drafts.csswg.org/cssom/#resolved-values - if ( !support.pixelMarginRight() && rnumnonpx.test( ret ) && rmargin.test( name ) ) { - - // Remember the original values - width = style.width; - minWidth = style.minWidth; - maxWidth = style.maxWidth; - - // Put in the new values to get a computed value out - style.minWidth = style.maxWidth = style.width = ret; - ret = computed.width; - - // Revert the changed values - style.width = width; - style.minWidth = minWidth; - style.maxWidth = maxWidth; - } - } - - return ret !== undefined ? - - // Support: IE <=9 - 11 only - // IE returns zIndex value as an integer. - ret + "" : - ret; -} - - -function addGetHookIf( conditionFn, hookFn ) { - - // Define the hook, we'll check on the first run if it's really needed. - return { - get: function() { - if ( conditionFn() ) { - - // Hook not needed (or it's not possible to use it due - // to missing dependency), remove it. - delete this.get; - return; - } - - // Hook needed; redefine it so that the support test is not executed again. - return ( this.get = hookFn ).apply( this, arguments ); - } - }; -} - - -var - - // Swappable if display is none or starts with table - // except "table", "table-cell", or "table-caption" - // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display - rdisplayswap = /^(none|table(?!-c[ea]).+)/, - rcustomProp = /^--/, - cssShow = { position: "absolute", visibility: "hidden", display: "block" }, - cssNormalTransform = { - letterSpacing: "0", - fontWeight: "400" - }, - - cssPrefixes = [ "Webkit", "Moz", "ms" ], - emptyStyle = document.createElement( "div" ).style; - -// Return a css property mapped to a potentially vendor prefixed property -function vendorPropName( name ) { - - // Shortcut for names that are not vendor prefixed - if ( name in emptyStyle ) { - return name; - } - - // Check for vendor prefixed names - var capName = name[ 0 ].toUpperCase() + name.slice( 1 ), - i = cssPrefixes.length; - - while ( i-- ) { - name = cssPrefixes[ i ] + capName; - if ( name in emptyStyle ) { - return name; - } - } -} - -// Return a property mapped along what jQuery.cssProps suggests or to -// a vendor prefixed property. -function finalPropName( name ) { - var ret = jQuery.cssProps[ name ]; - if ( !ret ) { - ret = jQuery.cssProps[ name ] = vendorPropName( name ) || name; - } - return ret; -} - -function setPositiveNumber( elem, value, subtract ) { - - // Any relative (+/-) values have already been - // normalized at this point - var matches = rcssNum.exec( value ); - return matches ? - - // Guard against undefined "subtract", e.g., when used as in cssHooks - Math.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || "px" ) : - value; -} - -function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) { - var i, - val = 0; - - // If we already have the right measurement, avoid augmentation - if ( extra === ( isBorderBox ? "border" : "content" ) ) { - i = 4; - - // Otherwise initialize for horizontal or vertical properties - } else { - i = name === "width" ? 1 : 0; - } - - for ( ; i < 4; i += 2 ) { - - // Both box models exclude margin, so add it if we want it - if ( extra === "margin" ) { - val += jQuery.css( elem, extra + cssExpand[ i ], true, styles ); - } - - if ( isBorderBox ) { - - // border-box includes padding, so remove it if we want content - if ( extra === "content" ) { - val -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); - } - - // At this point, extra isn't border nor margin, so remove border - if ( extra !== "margin" ) { - val -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); - } - } else { - - // At this point, extra isn't content, so add padding - val += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); - - // At this point, extra isn't content nor padding, so add border - if ( extra !== "padding" ) { - val += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); - } - } - } - - return val; -} - -function getWidthOrHeight( elem, name, extra ) { - - // Start with computed style - var valueIsBorderBox, - styles = getStyles( elem ), - val = curCSS( elem, name, styles ), - isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box"; - - // Computed unit is not pixels. Stop here and return. - if ( rnumnonpx.test( val ) ) { - return val; - } - - // Check for style in case a browser which returns unreliable values - // for getComputedStyle silently falls back to the reliable elem.style - valueIsBorderBox = isBorderBox && - ( support.boxSizingReliable() || val === elem.style[ name ] ); - - // Fall back to offsetWidth/Height when value is "auto" - // This happens for inline elements with no explicit setting (gh-3571) - if ( val === "auto" ) { - val = elem[ "offset" + name[ 0 ].toUpperCase() + name.slice( 1 ) ]; - } - - // Normalize "", auto, and prepare for extra - val = parseFloat( val ) || 0; - - // Use the active box-sizing model to add/subtract irrelevant styles - return ( val + - augmentWidthOrHeight( - elem, - name, - extra || ( isBorderBox ? "border" : "content" ), - valueIsBorderBox, - styles - ) - ) + "px"; -} - -jQuery.extend( { - - // Add in style property hooks for overriding the default - // behavior of getting and setting a style property - cssHooks: { - opacity: { - get: function( elem, computed ) { - if ( computed ) { - - // We should always get a number back from opacity - var ret = curCSS( elem, "opacity" ); - return ret === "" ? "1" : ret; - } - } - } - }, - - // Don't automatically add "px" to these possibly-unitless properties - cssNumber: { - "animationIterationCount": true, - "columnCount": true, - "fillOpacity": true, - "flexGrow": true, - "flexShrink": true, - "fontWeight": true, - "lineHeight": true, - "opacity": true, - "order": true, - "orphans": true, - "widows": true, - "zIndex": true, - "zoom": true - }, - - // Add in properties whose names you wish to fix before - // setting or getting the value - cssProps: { - "float": "cssFloat" - }, - - // Get and set the style property on a DOM Node - style: function( elem, name, value, extra ) { - - // Don't set styles on text and comment nodes - if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) { - return; - } - - // Make sure that we're working with the right name - var ret, type, hooks, - origName = jQuery.camelCase( name ), - isCustomProp = rcustomProp.test( name ), - style = elem.style; - - // Make sure that we're working with the right name. We don't - // want to query the value if it is a CSS custom property - // since they are user-defined. - if ( !isCustomProp ) { - name = finalPropName( origName ); - } - - // Gets hook for the prefixed version, then unprefixed version - hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; - - // Check if we're setting a value - if ( value !== undefined ) { - type = typeof value; - - // Convert "+=" or "-=" to relative numbers (#7345) - if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) { - value = adjustCSS( elem, name, ret ); - - // Fixes bug #9237 - type = "number"; - } - - // Make sure that null and NaN values aren't set (#7116) - if ( value == null || value !== value ) { - return; - } - - // If a number was passed in, add the unit (except for certain CSS properties) - if ( type === "number" ) { - value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" ); - } - - // background-* props affect original clone's values - if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) { - style[ name ] = "inherit"; - } - - // If a hook was provided, use that value, otherwise just set the specified value - if ( !hooks || !( "set" in hooks ) || - ( value = hooks.set( elem, value, extra ) ) !== undefined ) { - - if ( isCustomProp ) { - style.setProperty( name, value ); - } else { - style[ name ] = value; - } - } - - } else { - - // If a hook was provided get the non-computed value from there - if ( hooks && "get" in hooks && - ( ret = hooks.get( elem, false, extra ) ) !== undefined ) { - - return ret; - } - - // Otherwise just get the value from the style object - return style[ name ]; - } - }, - - css: function( elem, name, extra, styles ) { - var val, num, hooks, - origName = jQuery.camelCase( name ), - isCustomProp = rcustomProp.test( name ); - - // Make sure that we're working with the right name. We don't - // want to modify the value if it is a CSS custom property - // since they are user-defined. - if ( !isCustomProp ) { - name = finalPropName( origName ); - } - - // Try prefixed name followed by the unprefixed name - hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; - - // If a hook was provided get the computed value from there - if ( hooks && "get" in hooks ) { - val = hooks.get( elem, true, extra ); - } - - // Otherwise, if a way to get the computed value exists, use that - if ( val === undefined ) { - val = curCSS( elem, name, styles ); - } - - // Convert "normal" to computed value - if ( val === "normal" && name in cssNormalTransform ) { - val = cssNormalTransform[ name ]; - } - - // Make numeric if forced or a qualifier was provided and val looks numeric - if ( extra === "" || extra ) { - num = parseFloat( val ); - return extra === true || isFinite( num ) ? num || 0 : val; - } - - return val; - } -} ); - -jQuery.each( [ "height", "width" ], function( i, name ) { - jQuery.cssHooks[ name ] = { - get: function( elem, computed, extra ) { - if ( computed ) { - - // Certain elements can have dimension info if we invisibly show them - // but it must have a current display style that would benefit - return rdisplayswap.test( jQuery.css( elem, "display" ) ) && - - // Support: Safari 8+ - // Table columns in Safari have non-zero offsetWidth & zero - // getBoundingClientRect().width unless display is changed. - // Support: IE <=11 only - // Running getBoundingClientRect on a disconnected node - // in IE throws an error. - ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ? - swap( elem, cssShow, function() { - return getWidthOrHeight( elem, name, extra ); - } ) : - getWidthOrHeight( elem, name, extra ); - } - }, - - set: function( elem, value, extra ) { - var matches, - styles = extra && getStyles( elem ), - subtract = extra && augmentWidthOrHeight( - elem, - name, - extra, - jQuery.css( elem, "boxSizing", false, styles ) === "border-box", - styles - ); - - // Convert to pixels if value adjustment is needed - if ( subtract && ( matches = rcssNum.exec( value ) ) && - ( matches[ 3 ] || "px" ) !== "px" ) { - - elem.style[ name ] = value; - value = jQuery.css( elem, name ); - } - - return setPositiveNumber( elem, value, subtract ); - } - }; -} ); - -jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft, - function( elem, computed ) { - if ( computed ) { - return ( parseFloat( curCSS( elem, "marginLeft" ) ) || - elem.getBoundingClientRect().left - - swap( elem, { marginLeft: 0 }, function() { - return elem.getBoundingClientRect().left; - } ) - ) + "px"; - } - } -); - -// These hooks are used by animate to expand properties -jQuery.each( { - margin: "", - padding: "", - border: "Width" -}, function( prefix, suffix ) { - jQuery.cssHooks[ prefix + suffix ] = { - expand: function( value ) { - var i = 0, - expanded = {}, - - // Assumes a single number if not a string - parts = typeof value === "string" ? value.split( " " ) : [ value ]; - - for ( ; i < 4; i++ ) { - expanded[ prefix + cssExpand[ i ] + suffix ] = - parts[ i ] || parts[ i - 2 ] || parts[ 0 ]; - } - - return expanded; - } - }; - - if ( !rmargin.test( prefix ) ) { - jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber; - } -} ); - -jQuery.fn.extend( { - css: function( name, value ) { - return access( this, function( elem, name, value ) { - var styles, len, - map = {}, - i = 0; - - if ( Array.isArray( name ) ) { - styles = getStyles( elem ); - len = name.length; - - for ( ; i < len; i++ ) { - map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles ); - } - - return map; - } - - return value !== undefined ? - jQuery.style( elem, name, value ) : - jQuery.css( elem, name ); - }, name, value, arguments.length > 1 ); - } -} ); - - -function Tween( elem, options, prop, end, easing ) { - return new Tween.prototype.init( elem, options, prop, end, easing ); -} -jQuery.Tween = Tween; - -Tween.prototype = { - constructor: Tween, - init: function( elem, options, prop, end, easing, unit ) { - this.elem = elem; - this.prop = prop; - this.easing = easing || jQuery.easing._default; - this.options = options; - this.start = this.now = this.cur(); - this.end = end; - this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" ); - }, - cur: function() { - var hooks = Tween.propHooks[ this.prop ]; - - return hooks && hooks.get ? - hooks.get( this ) : - Tween.propHooks._default.get( this ); - }, - run: function( percent ) { - var eased, - hooks = Tween.propHooks[ this.prop ]; - - if ( this.options.duration ) { - this.pos = eased = jQuery.easing[ this.easing ]( - percent, this.options.duration * percent, 0, 1, this.options.duration - ); - } else { - this.pos = eased = percent; - } - this.now = ( this.end - this.start ) * eased + this.start; - - if ( this.options.step ) { - this.options.step.call( this.elem, this.now, this ); - } - - if ( hooks && hooks.set ) { - hooks.set( this ); - } else { - Tween.propHooks._default.set( this ); - } - return this; - } -}; - -Tween.prototype.init.prototype = Tween.prototype; - -Tween.propHooks = { - _default: { - get: function( tween ) { - var result; - - // Use a property on the element directly when it is not a DOM element, - // or when there is no matching style property that exists. - if ( tween.elem.nodeType !== 1 || - tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) { - return tween.elem[ tween.prop ]; - } - - // Passing an empty string as a 3rd parameter to .css will automatically - // attempt a parseFloat and fallback to a string if the parse fails. - // Simple values such as "10px" are parsed to Float; - // complex values such as "rotate(1rad)" are returned as-is. - result = jQuery.css( tween.elem, tween.prop, "" ); - - // Empty strings, null, undefined and "auto" are converted to 0. - return !result || result === "auto" ? 0 : result; - }, - set: function( tween ) { - - // Use step hook for back compat. - // Use cssHook if its there. - // Use .style if available and use plain properties where available. - if ( jQuery.fx.step[ tween.prop ] ) { - jQuery.fx.step[ tween.prop ]( tween ); - } else if ( tween.elem.nodeType === 1 && - ( tween.elem.style[ jQuery.cssProps[ tween.prop ] ] != null || - jQuery.cssHooks[ tween.prop ] ) ) { - jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); - } else { - tween.elem[ tween.prop ] = tween.now; - } - } - } -}; - -// Support: IE <=9 only -// Panic based approach to setting things on disconnected nodes -Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = { - set: function( tween ) { - if ( tween.elem.nodeType && tween.elem.parentNode ) { - tween.elem[ tween.prop ] = tween.now; - } - } -}; - -jQuery.easing = { - linear: function( p ) { - return p; - }, - swing: function( p ) { - return 0.5 - Math.cos( p * Math.PI ) / 2; - }, - _default: "swing" -}; - -jQuery.fx = Tween.prototype.init; - -// Back compat <1.8 extension point -jQuery.fx.step = {}; - - - - -var - fxNow, inProgress, - rfxtypes = /^(?:toggle|show|hide)$/, - rrun = /queueHooks$/; - -function schedule() { - if ( inProgress ) { - if ( document.hidden === false && window.requestAnimationFrame ) { - window.requestAnimationFrame( schedule ); - } else { - window.setTimeout( schedule, jQuery.fx.interval ); - } - - jQuery.fx.tick(); - } -} - -// Animations created synchronously will run synchronously -function createFxNow() { - window.setTimeout( function() { - fxNow = undefined; - } ); - return ( fxNow = jQuery.now() ); -} - -// Generate parameters to create a standard animation -function genFx( type, includeWidth ) { - var which, - i = 0, - attrs = { height: type }; - - // If we include width, step value is 1 to do all cssExpand values, - // otherwise step value is 2 to skip over Left and Right - includeWidth = includeWidth ? 1 : 0; - for ( ; i < 4; i += 2 - includeWidth ) { - which = cssExpand[ i ]; - attrs[ "margin" + which ] = attrs[ "padding" + which ] = type; - } - - if ( includeWidth ) { - attrs.opacity = attrs.width = type; - } - - return attrs; -} - -function createTween( value, prop, animation ) { - var tween, - collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ), - index = 0, - length = collection.length; - for ( ; index < length; index++ ) { - if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) { - - // We're done with this property - return tween; - } - } -} - -function defaultPrefilter( elem, props, opts ) { - var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, - isBox = "width" in props || "height" in props, - anim = this, - orig = {}, - style = elem.style, - hidden = elem.nodeType && isHiddenWithinTree( elem ), - dataShow = dataPriv.get( elem, "fxshow" ); - - // Queue-skipping animations hijack the fx hooks - if ( !opts.queue ) { - hooks = jQuery._queueHooks( elem, "fx" ); - if ( hooks.unqueued == null ) { - hooks.unqueued = 0; - oldfire = hooks.empty.fire; - hooks.empty.fire = function() { - if ( !hooks.unqueued ) { - oldfire(); - } - }; - } - hooks.unqueued++; - - anim.always( function() { - - // Ensure the complete handler is called before this completes - anim.always( function() { - hooks.unqueued--; - if ( !jQuery.queue( elem, "fx" ).length ) { - hooks.empty.fire(); - } - } ); - } ); - } - - // Detect show/hide animations - for ( prop in props ) { - value = props[ prop ]; - if ( rfxtypes.test( value ) ) { - delete props[ prop ]; - toggle = toggle || value === "toggle"; - if ( value === ( hidden ? "hide" : "show" ) ) { - - // Pretend to be hidden if this is a "show" and - // there is still data from a stopped show/hide - if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) { - hidden = true; - - // Ignore all other no-op show/hide data - } else { - continue; - } - } - orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop ); - } - } - - // Bail out if this is a no-op like .hide().hide() - propTween = !jQuery.isEmptyObject( props ); - if ( !propTween && jQuery.isEmptyObject( orig ) ) { - return; - } - - // Restrict "overflow" and "display" styles during box animations - if ( isBox && elem.nodeType === 1 ) { - - // Support: IE <=9 - 11, Edge 12 - 13 - // Record all 3 overflow attributes because IE does not infer the shorthand - // from identically-valued overflowX and overflowY - opts.overflow = [ style.overflow, style.overflowX, style.overflowY ]; - - // Identify a display type, preferring old show/hide data over the CSS cascade - restoreDisplay = dataShow && dataShow.display; - if ( restoreDisplay == null ) { - restoreDisplay = dataPriv.get( elem, "display" ); - } - display = jQuery.css( elem, "display" ); - if ( display === "none" ) { - if ( restoreDisplay ) { - display = restoreDisplay; - } else { - - // Get nonempty value(s) by temporarily forcing visibility - showHide( [ elem ], true ); - restoreDisplay = elem.style.display || restoreDisplay; - display = jQuery.css( elem, "display" ); - showHide( [ elem ] ); - } - } - - // Animate inline elements as inline-block - if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) { - if ( jQuery.css( elem, "float" ) === "none" ) { - - // Restore the original display value at the end of pure show/hide animations - if ( !propTween ) { - anim.done( function() { - style.display = restoreDisplay; - } ); - if ( restoreDisplay == null ) { - display = style.display; - restoreDisplay = display === "none" ? "" : display; - } - } - style.display = "inline-block"; - } - } - } - - if ( opts.overflow ) { - style.overflow = "hidden"; - anim.always( function() { - style.overflow = opts.overflow[ 0 ]; - style.overflowX = opts.overflow[ 1 ]; - style.overflowY = opts.overflow[ 2 ]; - } ); - } - - // Implement show/hide animations - propTween = false; - for ( prop in orig ) { - - // General show/hide setup for this element animation - if ( !propTween ) { - if ( dataShow ) { - if ( "hidden" in dataShow ) { - hidden = dataShow.hidden; - } - } else { - dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } ); - } - - // Store hidden/visible for toggle so `.stop().toggle()` "reverses" - if ( toggle ) { - dataShow.hidden = !hidden; - } - - // Show elements before animating them - if ( hidden ) { - showHide( [ elem ], true ); - } - - /* eslint-disable no-loop-func */ - - anim.done( function() { - - /* eslint-enable no-loop-func */ - - // The final step of a "hide" animation is actually hiding the element - if ( !hidden ) { - showHide( [ elem ] ); - } - dataPriv.remove( elem, "fxshow" ); - for ( prop in orig ) { - jQuery.style( elem, prop, orig[ prop ] ); - } - } ); - } - - // Per-property setup - propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim ); - if ( !( prop in dataShow ) ) { - dataShow[ prop ] = propTween.start; - if ( hidden ) { - propTween.end = propTween.start; - propTween.start = 0; - } - } - } -} - -function propFilter( props, specialEasing ) { - var index, name, easing, value, hooks; - - // camelCase, specialEasing and expand cssHook pass - for ( index in props ) { - name = jQuery.camelCase( index ); - easing = specialEasing[ name ]; - value = props[ index ]; - if ( Array.isArray( value ) ) { - easing = value[ 1 ]; - value = props[ index ] = value[ 0 ]; - } - - if ( index !== name ) { - props[ name ] = value; - delete props[ index ]; - } - - hooks = jQuery.cssHooks[ name ]; - if ( hooks && "expand" in hooks ) { - value = hooks.expand( value ); - delete props[ name ]; - - // Not quite $.extend, this won't overwrite existing keys. - // Reusing 'index' because we have the correct "name" - for ( index in value ) { - if ( !( index in props ) ) { - props[ index ] = value[ index ]; - specialEasing[ index ] = easing; - } - } - } else { - specialEasing[ name ] = easing; - } - } -} - -function Animation( elem, properties, options ) { - var result, - stopped, - index = 0, - length = Animation.prefilters.length, - deferred = jQuery.Deferred().always( function() { - - // Don't match elem in the :animated selector - delete tick.elem; - } ), - tick = function() { - if ( stopped ) { - return false; - } - var currentTime = fxNow || createFxNow(), - remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ), - - // Support: Android 2.3 only - // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497) - temp = remaining / animation.duration || 0, - percent = 1 - temp, - index = 0, - length = animation.tweens.length; - - for ( ; index < length; index++ ) { - animation.tweens[ index ].run( percent ); - } - - deferred.notifyWith( elem, [ animation, percent, remaining ] ); - - // If there's more to do, yield - if ( percent < 1 && length ) { - return remaining; - } - - // If this was an empty animation, synthesize a final progress notification - if ( !length ) { - deferred.notifyWith( elem, [ animation, 1, 0 ] ); - } - - // Resolve the animation and report its conclusion - deferred.resolveWith( elem, [ animation ] ); - return false; - }, - animation = deferred.promise( { - elem: elem, - props: jQuery.extend( {}, properties ), - opts: jQuery.extend( true, { - specialEasing: {}, - easing: jQuery.easing._default - }, options ), - originalProperties: properties, - originalOptions: options, - startTime: fxNow || createFxNow(), - duration: options.duration, - tweens: [], - createTween: function( prop, end ) { - var tween = jQuery.Tween( elem, animation.opts, prop, end, - animation.opts.specialEasing[ prop ] || animation.opts.easing ); - animation.tweens.push( tween ); - return tween; - }, - stop: function( gotoEnd ) { - var index = 0, - - // If we are going to the end, we want to run all the tweens - // otherwise we skip this part - length = gotoEnd ? animation.tweens.length : 0; - if ( stopped ) { - return this; - } - stopped = true; - for ( ; index < length; index++ ) { - animation.tweens[ index ].run( 1 ); - } - - // Resolve when we played the last frame; otherwise, reject - if ( gotoEnd ) { - deferred.notifyWith( elem, [ animation, 1, 0 ] ); - deferred.resolveWith( elem, [ animation, gotoEnd ] ); - } else { - deferred.rejectWith( elem, [ animation, gotoEnd ] ); - } - return this; - } - } ), - props = animation.props; - - propFilter( props, animation.opts.specialEasing ); - - for ( ; index < length; index++ ) { - result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts ); - if ( result ) { - if ( jQuery.isFunction( result.stop ) ) { - jQuery._queueHooks( animation.elem, animation.opts.queue ).stop = - jQuery.proxy( result.stop, result ); - } - return result; - } - } - - jQuery.map( props, createTween, animation ); - - if ( jQuery.isFunction( animation.opts.start ) ) { - animation.opts.start.call( elem, animation ); - } - - // Attach callbacks from options - animation - .progress( animation.opts.progress ) - .done( animation.opts.done, animation.opts.complete ) - .fail( animation.opts.fail ) - .always( animation.opts.always ); - - jQuery.fx.timer( - jQuery.extend( tick, { - elem: elem, - anim: animation, - queue: animation.opts.queue - } ) - ); - - return animation; -} - -jQuery.Animation = jQuery.extend( Animation, { - - tweeners: { - "*": [ function( prop, value ) { - var tween = this.createTween( prop, value ); - adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween ); - return tween; - } ] - }, - - tweener: function( props, callback ) { - if ( jQuery.isFunction( props ) ) { - callback = props; - props = [ "*" ]; - } else { - props = props.match( rnothtmlwhite ); - } - - var prop, - index = 0, - length = props.length; - - for ( ; index < length; index++ ) { - prop = props[ index ]; - Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || []; - Animation.tweeners[ prop ].unshift( callback ); - } - }, - - prefilters: [ defaultPrefilter ], - - prefilter: function( callback, prepend ) { - if ( prepend ) { - Animation.prefilters.unshift( callback ); - } else { - Animation.prefilters.push( callback ); - } - } -} ); - -jQuery.speed = function( speed, easing, fn ) { - var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : { - complete: fn || !fn && easing || - jQuery.isFunction( speed ) && speed, - duration: speed, - easing: fn && easing || easing && !jQuery.isFunction( easing ) && easing - }; - - // Go to the end state if fx are off - if ( jQuery.fx.off ) { - opt.duration = 0; - - } else { - if ( typeof opt.duration !== "number" ) { - if ( opt.duration in jQuery.fx.speeds ) { - opt.duration = jQuery.fx.speeds[ opt.duration ]; - - } else { - opt.duration = jQuery.fx.speeds._default; - } - } - } - - // Normalize opt.queue - true/undefined/null -> "fx" - if ( opt.queue == null || opt.queue === true ) { - opt.queue = "fx"; - } - - // Queueing - opt.old = opt.complete; - - opt.complete = function() { - if ( jQuery.isFunction( opt.old ) ) { - opt.old.call( this ); - } - - if ( opt.queue ) { - jQuery.dequeue( this, opt.queue ); - } - }; - - return opt; -}; - -jQuery.fn.extend( { - fadeTo: function( speed, to, easing, callback ) { - - // Show any hidden elements after setting opacity to 0 - return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show() - - // Animate to the value specified - .end().animate( { opacity: to }, speed, easing, callback ); - }, - animate: function( prop, speed, easing, callback ) { - var empty = jQuery.isEmptyObject( prop ), - optall = jQuery.speed( speed, easing, callback ), - doAnimation = function() { - - // Operate on a copy of prop so per-property easing won't be lost - var anim = Animation( this, jQuery.extend( {}, prop ), optall ); - - // Empty animations, or finishing resolves immediately - if ( empty || dataPriv.get( this, "finish" ) ) { - anim.stop( true ); - } - }; - doAnimation.finish = doAnimation; - - return empty || optall.queue === false ? - this.each( doAnimation ) : - this.queue( optall.queue, doAnimation ); - }, - stop: function( type, clearQueue, gotoEnd ) { - var stopQueue = function( hooks ) { - var stop = hooks.stop; - delete hooks.stop; - stop( gotoEnd ); - }; - - if ( typeof type !== "string" ) { - gotoEnd = clearQueue; - clearQueue = type; - type = undefined; - } - if ( clearQueue && type !== false ) { - this.queue( type || "fx", [] ); - } - - return this.each( function() { - var dequeue = true, - index = type != null && type + "queueHooks", - timers = jQuery.timers, - data = dataPriv.get( this ); - - if ( index ) { - if ( data[ index ] && data[ index ].stop ) { - stopQueue( data[ index ] ); - } - } else { - for ( index in data ) { - if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) { - stopQueue( data[ index ] ); - } - } - } - - for ( index = timers.length; index--; ) { - if ( timers[ index ].elem === this && - ( type == null || timers[ index ].queue === type ) ) { - - timers[ index ].anim.stop( gotoEnd ); - dequeue = false; - timers.splice( index, 1 ); - } - } - - // Start the next in the queue if the last step wasn't forced. - // Timers currently will call their complete callbacks, which - // will dequeue but only if they were gotoEnd. - if ( dequeue || !gotoEnd ) { - jQuery.dequeue( this, type ); - } - } ); - }, - finish: function( type ) { - if ( type !== false ) { - type = type || "fx"; - } - return this.each( function() { - var index, - data = dataPriv.get( this ), - queue = data[ type + "queue" ], - hooks = data[ type + "queueHooks" ], - timers = jQuery.timers, - length = queue ? queue.length : 0; - - // Enable finishing flag on private data - data.finish = true; - - // Empty the queue first - jQuery.queue( this, type, [] ); - - if ( hooks && hooks.stop ) { - hooks.stop.call( this, true ); - } - - // Look for any active animations, and finish them - for ( index = timers.length; index--; ) { - if ( timers[ index ].elem === this && timers[ index ].queue === type ) { - timers[ index ].anim.stop( true ); - timers.splice( index, 1 ); - } - } - - // Look for any animations in the old queue and finish them - for ( index = 0; index < length; index++ ) { - if ( queue[ index ] && queue[ index ].finish ) { - queue[ index ].finish.call( this ); - } - } - - // Turn off finishing flag - delete data.finish; - } ); - } -} ); - -jQuery.each( [ "toggle", "show", "hide" ], function( i, name ) { - var cssFn = jQuery.fn[ name ]; - jQuery.fn[ name ] = function( speed, easing, callback ) { - return speed == null || typeof speed === "boolean" ? - cssFn.apply( this, arguments ) : - this.animate( genFx( name, true ), speed, easing, callback ); - }; -} ); - -// Generate shortcuts for custom animations -jQuery.each( { - slideDown: genFx( "show" ), - slideUp: genFx( "hide" ), - slideToggle: genFx( "toggle" ), - fadeIn: { opacity: "show" }, - fadeOut: { opacity: "hide" }, - fadeToggle: { opacity: "toggle" } -}, function( name, props ) { - jQuery.fn[ name ] = function( speed, easing, callback ) { - return this.animate( props, speed, easing, callback ); - }; -} ); - -jQuery.timers = []; -jQuery.fx.tick = function() { - var timer, - i = 0, - timers = jQuery.timers; - - fxNow = jQuery.now(); - - for ( ; i < timers.length; i++ ) { - timer = timers[ i ]; - - // Run the timer and safely remove it when done (allowing for external removal) - if ( !timer() && timers[ i ] === timer ) { - timers.splice( i--, 1 ); - } - } - - if ( !timers.length ) { - jQuery.fx.stop(); - } - fxNow = undefined; -}; - -jQuery.fx.timer = function( timer ) { - jQuery.timers.push( timer ); - jQuery.fx.start(); -}; - -jQuery.fx.interval = 13; -jQuery.fx.start = function() { - if ( inProgress ) { - return; - } - - inProgress = true; - schedule(); -}; - -jQuery.fx.stop = function() { - inProgress = null; -}; - -jQuery.fx.speeds = { - slow: 600, - fast: 200, - - // Default speed - _default: 400 -}; - - -// Based off of the plugin by Clint Helfers, with permission. -// https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/ -jQuery.fn.delay = function( time, type ) { - time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time; - type = type || "fx"; - - return this.queue( type, function( next, hooks ) { - var timeout = window.setTimeout( next, time ); - hooks.stop = function() { - window.clearTimeout( timeout ); - }; - } ); -}; - - -( function() { - var input = document.createElement( "input" ), - select = document.createElement( "select" ), - opt = select.appendChild( document.createElement( "option" ) ); - - input.type = "checkbox"; - - // Support: Android <=4.3 only - // Default value for a checkbox should be "on" - support.checkOn = input.value !== ""; - - // Support: IE <=11 only - // Must access selectedIndex to make default options select - support.optSelected = opt.selected; - - // Support: IE <=11 only - // An input loses its value after becoming a radio - input = document.createElement( "input" ); - input.value = "t"; - input.type = "radio"; - support.radioValue = input.value === "t"; -} )(); - - -var boolHook, - attrHandle = jQuery.expr.attrHandle; - -jQuery.fn.extend( { - attr: function( name, value ) { - return access( this, jQuery.attr, name, value, arguments.length > 1 ); - }, - - removeAttr: function( name ) { - return this.each( function() { - jQuery.removeAttr( this, name ); - } ); - } -} ); - -jQuery.extend( { - attr: function( elem, name, value ) { - var ret, hooks, - nType = elem.nodeType; - - // Don't get/set attributes on text, comment and attribute nodes - if ( nType === 3 || nType === 8 || nType === 2 ) { - return; - } - - // Fallback to prop when attributes are not supported - if ( typeof elem.getAttribute === "undefined" ) { - return jQuery.prop( elem, name, value ); - } - - // Attribute hooks are determined by the lowercase version - // Grab necessary hook if one is defined - if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { - hooks = jQuery.attrHooks[ name.toLowerCase() ] || - ( jQuery.expr.match.bool.test( name ) ? boolHook : undefined ); - } - - if ( value !== undefined ) { - if ( value === null ) { - jQuery.removeAttr( elem, name ); - return; - } - - if ( hooks && "set" in hooks && - ( ret = hooks.set( elem, value, name ) ) !== undefined ) { - return ret; - } - - elem.setAttribute( name, value + "" ); - return value; - } - - if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { - return ret; - } - - ret = jQuery.find.attr( elem, name ); - - // Non-existent attributes return null, we normalize to undefined - return ret == null ? undefined : ret; - }, - - attrHooks: { - type: { - set: function( elem, value ) { - if ( !support.radioValue && value === "radio" && - nodeName( elem, "input" ) ) { - var val = elem.value; - elem.setAttribute( "type", value ); - if ( val ) { - elem.value = val; - } - return value; - } - } - } - }, - - removeAttr: function( elem, value ) { - var name, - i = 0, - - // Attribute names can contain non-HTML whitespace characters - // https://html.spec.whatwg.org/multipage/syntax.html#attributes-2 - attrNames = value && value.match( rnothtmlwhite ); - - if ( attrNames && elem.nodeType === 1 ) { - while ( ( name = attrNames[ i++ ] ) ) { - elem.removeAttribute( name ); - } - } - } -} ); - -// Hooks for boolean attributes -boolHook = { - set: function( elem, value, name ) { - if ( value === false ) { - - // Remove boolean attributes when set to false - jQuery.removeAttr( elem, name ); - } else { - elem.setAttribute( name, name ); - } - return name; - } -}; - -jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( i, name ) { - var getter = attrHandle[ name ] || jQuery.find.attr; - - attrHandle[ name ] = function( elem, name, isXML ) { - var ret, handle, - lowercaseName = name.toLowerCase(); - - if ( !isXML ) { - - // Avoid an infinite loop by temporarily removing this function from the getter - handle = attrHandle[ lowercaseName ]; - attrHandle[ lowercaseName ] = ret; - ret = getter( elem, name, isXML ) != null ? - lowercaseName : - null; - attrHandle[ lowercaseName ] = handle; - } - return ret; - }; -} ); - - - - -var rfocusable = /^(?:input|select|textarea|button)$/i, - rclickable = /^(?:a|area)$/i; - -jQuery.fn.extend( { - prop: function( name, value ) { - return access( this, jQuery.prop, name, value, arguments.length > 1 ); - }, - - removeProp: function( name ) { - return this.each( function() { - delete this[ jQuery.propFix[ name ] || name ]; - } ); - } -} ); - -jQuery.extend( { - prop: function( elem, name, value ) { - var ret, hooks, - nType = elem.nodeType; - - // Don't get/set properties on text, comment and attribute nodes - if ( nType === 3 || nType === 8 || nType === 2 ) { - return; - } - - if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { - - // Fix name and attach hooks - name = jQuery.propFix[ name ] || name; - hooks = jQuery.propHooks[ name ]; - } - - if ( value !== undefined ) { - if ( hooks && "set" in hooks && - ( ret = hooks.set( elem, value, name ) ) !== undefined ) { - return ret; - } - - return ( elem[ name ] = value ); - } - - if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { - return ret; - } - - return elem[ name ]; - }, - - propHooks: { - tabIndex: { - get: function( elem ) { - - // Support: IE <=9 - 11 only - // elem.tabIndex doesn't always return the - // correct value when it hasn't been explicitly set - // https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ - // Use proper attribute retrieval(#12072) - var tabindex = jQuery.find.attr( elem, "tabindex" ); - - if ( tabindex ) { - return parseInt( tabindex, 10 ); - } - - if ( - rfocusable.test( elem.nodeName ) || - rclickable.test( elem.nodeName ) && - elem.href - ) { - return 0; - } - - return -1; - } - } - }, - - propFix: { - "for": "htmlFor", - "class": "className" - } -} ); - -// Support: IE <=11 only -// Accessing the selectedIndex property -// forces the browser to respect setting selected -// on the option -// The getter ensures a default option is selected -// when in an optgroup -// eslint rule "no-unused-expressions" is disabled for this code -// since it considers such accessions noop -if ( !support.optSelected ) { - jQuery.propHooks.selected = { - get: function( elem ) { - - /* eslint no-unused-expressions: "off" */ - - var parent = elem.parentNode; - if ( parent && parent.parentNode ) { - parent.parentNode.selectedIndex; - } - return null; - }, - set: function( elem ) { - - /* eslint no-unused-expressions: "off" */ - - var parent = elem.parentNode; - if ( parent ) { - parent.selectedIndex; - - if ( parent.parentNode ) { - parent.parentNode.selectedIndex; - } - } - } - }; -} - -jQuery.each( [ - "tabIndex", - "readOnly", - "maxLength", - "cellSpacing", - "cellPadding", - "rowSpan", - "colSpan", - "useMap", - "frameBorder", - "contentEditable" -], function() { - jQuery.propFix[ this.toLowerCase() ] = this; -} ); - - - - - // Strip and collapse whitespace according to HTML spec - // https://html.spec.whatwg.org/multipage/infrastructure.html#strip-and-collapse-whitespace - function stripAndCollapse( value ) { - var tokens = value.match( rnothtmlwhite ) || []; - return tokens.join( " " ); - } - - -function getClass( elem ) { - return elem.getAttribute && elem.getAttribute( "class" ) || ""; -} - -jQuery.fn.extend( { - addClass: function( value ) { - var classes, elem, cur, curValue, clazz, j, finalValue, - i = 0; - - if ( jQuery.isFunction( value ) ) { - return this.each( function( j ) { - jQuery( this ).addClass( value.call( this, j, getClass( this ) ) ); - } ); - } - - if ( typeof value === "string" && value ) { - classes = value.match( rnothtmlwhite ) || []; - - while ( ( elem = this[ i++ ] ) ) { - curValue = getClass( elem ); - cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); - - if ( cur ) { - j = 0; - while ( ( clazz = classes[ j++ ] ) ) { - if ( cur.indexOf( " " + clazz + " " ) < 0 ) { - cur += clazz + " "; - } - } - - // Only assign if different to avoid unneeded rendering. - finalValue = stripAndCollapse( cur ); - if ( curValue !== finalValue ) { - elem.setAttribute( "class", finalValue ); - } - } - } - } - - return this; - }, - - removeClass: function( value ) { - var classes, elem, cur, curValue, clazz, j, finalValue, - i = 0; - - if ( jQuery.isFunction( value ) ) { - return this.each( function( j ) { - jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) ); - } ); - } - - if ( !arguments.length ) { - return this.attr( "class", "" ); - } - - if ( typeof value === "string" && value ) { - classes = value.match( rnothtmlwhite ) || []; - - while ( ( elem = this[ i++ ] ) ) { - curValue = getClass( elem ); - - // This expression is here for better compressibility (see addClass) - cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); - - if ( cur ) { - j = 0; - while ( ( clazz = classes[ j++ ] ) ) { - - // Remove *all* instances - while ( cur.indexOf( " " + clazz + " " ) > -1 ) { - cur = cur.replace( " " + clazz + " ", " " ); - } - } - - // Only assign if different to avoid unneeded rendering. - finalValue = stripAndCollapse( cur ); - if ( curValue !== finalValue ) { - elem.setAttribute( "class", finalValue ); - } - } - } - } - - return this; - }, - - toggleClass: function( value, stateVal ) { - var type = typeof value; - - if ( typeof stateVal === "boolean" && type === "string" ) { - return stateVal ? this.addClass( value ) : this.removeClass( value ); - } - - if ( jQuery.isFunction( value ) ) { - return this.each( function( i ) { - jQuery( this ).toggleClass( - value.call( this, i, getClass( this ), stateVal ), - stateVal - ); - } ); - } - - return this.each( function() { - var className, i, self, classNames; - - if ( type === "string" ) { - - // Toggle individual class names - i = 0; - self = jQuery( this ); - classNames = value.match( rnothtmlwhite ) || []; - - while ( ( className = classNames[ i++ ] ) ) { - - // Check each className given, space separated list - if ( self.hasClass( className ) ) { - self.removeClass( className ); - } else { - self.addClass( className ); - } - } - - // Toggle whole class name - } else if ( value === undefined || type === "boolean" ) { - className = getClass( this ); - if ( className ) { - - // Store className if set - dataPriv.set( this, "__className__", className ); - } - - // If the element has a class name or if we're passed `false`, - // then remove the whole classname (if there was one, the above saved it). - // Otherwise bring back whatever was previously saved (if anything), - // falling back to the empty string if nothing was stored. - if ( this.setAttribute ) { - this.setAttribute( "class", - className || value === false ? - "" : - dataPriv.get( this, "__className__" ) || "" - ); - } - } - } ); - }, - - hasClass: function( selector ) { - var className, elem, - i = 0; - - className = " " + selector + " "; - while ( ( elem = this[ i++ ] ) ) { - if ( elem.nodeType === 1 && - ( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) { - return true; - } - } - - return false; - } -} ); - - - - -var rreturn = /\r/g; - -jQuery.fn.extend( { - val: function( value ) { - var hooks, ret, isFunction, - elem = this[ 0 ]; - - if ( !arguments.length ) { - if ( elem ) { - hooks = jQuery.valHooks[ elem.type ] || - jQuery.valHooks[ elem.nodeName.toLowerCase() ]; - - if ( hooks && - "get" in hooks && - ( ret = hooks.get( elem, "value" ) ) !== undefined - ) { - return ret; - } - - ret = elem.value; - - // Handle most common string cases - if ( typeof ret === "string" ) { - return ret.replace( rreturn, "" ); - } - - // Handle cases where value is null/undef or number - return ret == null ? "" : ret; - } - - return; - } - - isFunction = jQuery.isFunction( value ); - - return this.each( function( i ) { - var val; - - if ( this.nodeType !== 1 ) { - return; - } - - if ( isFunction ) { - val = value.call( this, i, jQuery( this ).val() ); - } else { - val = value; - } - - // Treat null/undefined as ""; convert numbers to string - if ( val == null ) { - val = ""; - - } else if ( typeof val === "number" ) { - val += ""; - - } else if ( Array.isArray( val ) ) { - val = jQuery.map( val, function( value ) { - return value == null ? "" : value + ""; - } ); - } - - hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ]; - - // If set returns undefined, fall back to normal setting - if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) { - this.value = val; - } - } ); - } -} ); - -jQuery.extend( { - valHooks: { - option: { - get: function( elem ) { - - var val = jQuery.find.attr( elem, "value" ); - return val != null ? - val : - - // Support: IE <=10 - 11 only - // option.text throws exceptions (#14686, #14858) - // Strip and collapse whitespace - // https://html.spec.whatwg.org/#strip-and-collapse-whitespace - stripAndCollapse( jQuery.text( elem ) ); - } - }, - select: { - get: function( elem ) { - var value, option, i, - options = elem.options, - index = elem.selectedIndex, - one = elem.type === "select-one", - values = one ? null : [], - max = one ? index + 1 : options.length; - - if ( index < 0 ) { - i = max; - - } else { - i = one ? index : 0; - } - - // Loop through all the selected options - for ( ; i < max; i++ ) { - option = options[ i ]; - - // Support: IE <=9 only - // IE8-9 doesn't update selected after form reset (#2551) - if ( ( option.selected || i === index ) && - - // Don't return options that are disabled or in a disabled optgroup - !option.disabled && - ( !option.parentNode.disabled || - !nodeName( option.parentNode, "optgroup" ) ) ) { - - // Get the specific value for the option - value = jQuery( option ).val(); - - // We don't need an array for one selects - if ( one ) { - return value; - } - - // Multi-Selects return an array - values.push( value ); - } - } - - return values; - }, - - set: function( elem, value ) { - var optionSet, option, - options = elem.options, - values = jQuery.makeArray( value ), - i = options.length; - - while ( i-- ) { - option = options[ i ]; - - /* eslint-disable no-cond-assign */ - - if ( option.selected = - jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 - ) { - optionSet = true; - } - - /* eslint-enable no-cond-assign */ - } - - // Force browsers to behave consistently when non-matching value is set - if ( !optionSet ) { - elem.selectedIndex = -1; - } - return values; - } - } - } -} ); - -// Radios and checkboxes getter/setter -jQuery.each( [ "radio", "checkbox" ], function() { - jQuery.valHooks[ this ] = { - set: function( elem, value ) { - if ( Array.isArray( value ) ) { - return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 ); - } - } - }; - if ( !support.checkOn ) { - jQuery.valHooks[ this ].get = function( elem ) { - return elem.getAttribute( "value" ) === null ? "on" : elem.value; - }; - } -} ); - - - - -// Return jQuery for attributes-only inclusion - - -var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/; - -jQuery.extend( jQuery.event, { - - trigger: function( event, data, elem, onlyHandlers ) { - - var i, cur, tmp, bubbleType, ontype, handle, special, - eventPath = [ elem || document ], - type = hasOwn.call( event, "type" ) ? event.type : event, - namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : []; - - cur = tmp = elem = elem || document; - - // Don't do events on text and comment nodes - if ( elem.nodeType === 3 || elem.nodeType === 8 ) { - return; - } - - // focus/blur morphs to focusin/out; ensure we're not firing them right now - if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { - return; - } - - if ( type.indexOf( "." ) > -1 ) { - - // Namespaced trigger; create a regexp to match event type in handle() - namespaces = type.split( "." ); - type = namespaces.shift(); - namespaces.sort(); - } - ontype = type.indexOf( ":" ) < 0 && "on" + type; - - // Caller can pass in a jQuery.Event object, Object, or just an event type string - event = event[ jQuery.expando ] ? - event : - new jQuery.Event( type, typeof event === "object" && event ); - - // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) - event.isTrigger = onlyHandlers ? 2 : 3; - event.namespace = namespaces.join( "." ); - event.rnamespace = event.namespace ? - new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) : - null; - - // Clean up the event in case it is being reused - event.result = undefined; - if ( !event.target ) { - event.target = elem; - } - - // Clone any incoming data and prepend the event, creating the handler arg list - data = data == null ? - [ event ] : - jQuery.makeArray( data, [ event ] ); - - // Allow special events to draw outside the lines - special = jQuery.event.special[ type ] || {}; - if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { - return; - } - - // Determine event propagation path in advance, per W3C events spec (#9951) - // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) - if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) { - - bubbleType = special.delegateType || type; - if ( !rfocusMorph.test( bubbleType + type ) ) { - cur = cur.parentNode; - } - for ( ; cur; cur = cur.parentNode ) { - eventPath.push( cur ); - tmp = cur; - } - - // Only add window if we got to document (e.g., not plain obj or detached DOM) - if ( tmp === ( elem.ownerDocument || document ) ) { - eventPath.push( tmp.defaultView || tmp.parentWindow || window ); - } - } - - // Fire handlers on the event path - i = 0; - while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) { - - event.type = i > 1 ? - bubbleType : - special.bindType || type; - - // jQuery handler - handle = ( dataPriv.get( cur, "events" ) || {} )[ event.type ] && - dataPriv.get( cur, "handle" ); - if ( handle ) { - handle.apply( cur, data ); - } - - // Native handler - handle = ontype && cur[ ontype ]; - if ( handle && handle.apply && acceptData( cur ) ) { - event.result = handle.apply( cur, data ); - if ( event.result === false ) { - event.preventDefault(); - } - } - } - event.type = type; - - // If nobody prevented the default action, do it now - if ( !onlyHandlers && !event.isDefaultPrevented() ) { - - if ( ( !special._default || - special._default.apply( eventPath.pop(), data ) === false ) && - acceptData( elem ) ) { - - // Call a native DOM method on the target with the same name as the event. - // Don't do default actions on window, that's where global variables be (#6170) - if ( ontype && jQuery.isFunction( elem[ type ] ) && !jQuery.isWindow( elem ) ) { - - // Don't re-trigger an onFOO event when we call its FOO() method - tmp = elem[ ontype ]; - - if ( tmp ) { - elem[ ontype ] = null; - } - - // Prevent re-triggering of the same event, since we already bubbled it above - jQuery.event.triggered = type; - elem[ type ](); - jQuery.event.triggered = undefined; - - if ( tmp ) { - elem[ ontype ] = tmp; - } - } - } - } - - return event.result; - }, - - // Piggyback on a donor event to simulate a different one - // Used only for `focus(in | out)` events - simulate: function( type, elem, event ) { - var e = jQuery.extend( - new jQuery.Event(), - event, - { - type: type, - isSimulated: true - } - ); - - jQuery.event.trigger( e, null, elem ); - } - -} ); - -jQuery.fn.extend( { - - trigger: function( type, data ) { - return this.each( function() { - jQuery.event.trigger( type, data, this ); - } ); - }, - triggerHandler: function( type, data ) { - var elem = this[ 0 ]; - if ( elem ) { - return jQuery.event.trigger( type, data, elem, true ); - } - } -} ); - - -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 ) { - - // Handle event binding - jQuery.fn[ name ] = function( data, fn ) { - return arguments.length > 0 ? - this.on( name, null, data, fn ) : - this.trigger( name ); - }; -} ); - -jQuery.fn.extend( { - hover: function( fnOver, fnOut ) { - return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver ); - } -} ); - - - - -support.focusin = "onfocusin" in window; - - -// Support: Firefox <=44 -// Firefox doesn't have focus(in | out) events -// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787 -// -// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1 -// focus(in | out) events fire after focus & blur events, -// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order -// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857 -if ( !support.focusin ) { - jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) { - - // Attach a single capturing handler on the document while someone wants focusin/focusout - var handler = function( event ) { - jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) ); - }; - - jQuery.event.special[ fix ] = { - setup: function() { - var doc = this.ownerDocument || this, - attaches = dataPriv.access( doc, fix ); - - if ( !attaches ) { - doc.addEventListener( orig, handler, true ); - } - dataPriv.access( doc, fix, ( attaches || 0 ) + 1 ); - }, - teardown: function() { - var doc = this.ownerDocument || this, - attaches = dataPriv.access( doc, fix ) - 1; - - if ( !attaches ) { - doc.removeEventListener( orig, handler, true ); - dataPriv.remove( doc, fix ); - - } else { - dataPriv.access( doc, fix, attaches ); - } - } - }; - } ); -} -var location = window.location; - -var nonce = jQuery.now(); - -var rquery = ( /\?/ ); - - - -// Cross-browser xml parsing -jQuery.parseXML = function( data ) { - var xml; - if ( !data || typeof data !== "string" ) { - return null; - } - - // Support: IE 9 - 11 only - // IE throws on parseFromString with invalid input. - try { - xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" ); - } catch ( e ) { - xml = undefined; - } - - if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) { - jQuery.error( "Invalid XML: " + data ); - } - return xml; -}; - - -var - rbracket = /\[\]$/, - rCRLF = /\r?\n/g, - rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, - rsubmittable = /^(?:input|select|textarea|keygen)/i; - -function buildParams( prefix, obj, traditional, add ) { - var name; - - if ( Array.isArray( obj ) ) { - - // Serialize array item. - jQuery.each( obj, function( i, v ) { - if ( traditional || rbracket.test( prefix ) ) { - - // Treat each array item as a scalar. - add( prefix, v ); - - } else { - - // Item is non-scalar (array or object), encode its numeric index. - buildParams( - prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]", - v, - traditional, - add - ); - } - } ); - - } else if ( !traditional && jQuery.type( obj ) === "object" ) { - - // Serialize object item. - for ( name in obj ) { - buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add ); - } - - } else { - - // Serialize scalar item. - add( prefix, obj ); - } -} - -// Serialize an array of form elements or a set of -// key/values into a query string -jQuery.param = function( a, traditional ) { - var prefix, - s = [], - add = function( key, valueOrFunction ) { - - // If value is a function, invoke it and use its return value - var value = jQuery.isFunction( valueOrFunction ) ? - valueOrFunction() : - valueOrFunction; - - s[ s.length ] = encodeURIComponent( key ) + "=" + - encodeURIComponent( value == null ? "" : value ); - }; - - // If an array was passed in, assume that it is an array of form elements. - if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) { - - // Serialize the form elements - jQuery.each( a, function() { - add( this.name, this.value ); - } ); - - } else { - - // If traditional, encode the "old" way (the way 1.3.2 or older - // did it), otherwise encode params recursively. - for ( prefix in a ) { - buildParams( prefix, a[ prefix ], traditional, add ); - } - } - - // Return the resulting serialization - return s.join( "&" ); -}; - -jQuery.fn.extend( { - serialize: function() { - return jQuery.param( this.serializeArray() ); - }, - serializeArray: function() { - return this.map( function() { - - // 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() { - 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 ) { - var val = jQuery( this ).val(); - - if ( val == null ) { - return null; - } - - if ( Array.isArray( val ) ) { - return jQuery.map( val, function( val ) { - return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; - } ); - } - - return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; - } ).get(); - } -} ); - - -var - r20 = /%20/g, - rhash = /#.*$/, - rantiCache = /([?&])_=[^&]*/, - rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg, - - // #7653, #8125, #8152: local protocol detection - rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, - rnoContent = /^(?:GET|HEAD)$/, - rprotocol = /^\/\//, - - /* Prefilters - * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example) - * 2) These are called: - * - BEFORE asking for a transport - * - AFTER param serialization (s.data is a string if s.processData is true) - * 3) key is the dataType - * 4) the catchall symbol "*" can be used - * 5) execution will start with transport dataType and THEN continue down to "*" if needed - */ - prefilters = {}, - - /* Transports bindings - * 1) key is the dataType - * 2) the catchall symbol "*" can be used - * 3) selection will start with transport dataType and THEN go to "*" if needed - */ - transports = {}, - - // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression - allTypes = "*/".concat( "*" ), - - // Anchor tag for parsing the document origin - originAnchor = document.createElement( "a" ); - originAnchor.href = location.href; - -// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport -function addToPrefiltersOrTransports( structure ) { - - // dataTypeExpression is optional and defaults to "*" - return function( dataTypeExpression, func ) { - - if ( typeof dataTypeExpression !== "string" ) { - func = dataTypeExpression; - dataTypeExpression = "*"; - } - - var dataType, - i = 0, - dataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || []; - - if ( jQuery.isFunction( func ) ) { - - // For each dataType in the dataTypeExpression - while ( ( dataType = dataTypes[ i++ ] ) ) { - - // Prepend if requested - if ( dataType[ 0 ] === "+" ) { - dataType = dataType.slice( 1 ) || "*"; - ( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func ); - - // Otherwise append - } else { - ( structure[ dataType ] = structure[ dataType ] || [] ).push( func ); - } - } - } - }; -} - -// Base inspection function for prefilters and transports -function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) { - - var inspected = {}, - seekingTransport = ( structure === transports ); - - function inspect( dataType ) { - var selected; - inspected[ dataType ] = true; - jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) { - var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR ); - if ( typeof dataTypeOrTransport === "string" && - !seekingTransport && !inspected[ dataTypeOrTransport ] ) { - - options.dataTypes.unshift( dataTypeOrTransport ); - inspect( dataTypeOrTransport ); - return false; - } else if ( seekingTransport ) { - return !( selected = dataTypeOrTransport ); - } - } ); - return selected; - } - - return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" ); -} - -// A special extend for ajax options -// that takes "flat" options (not to be deep extended) -// Fixes #9887 -function ajaxExtend( target, src ) { - var key, deep, - flatOptions = jQuery.ajaxSettings.flatOptions || {}; - - for ( key in src ) { - if ( src[ key ] !== undefined ) { - ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ]; - } - } - if ( deep ) { - jQuery.extend( true, target, deep ); - } - - return target; -} - -/* Handles responses to an ajax request: - * - finds the right dataType (mediates between content-type and expected dataType) - * - returns the corresponding response - */ -function ajaxHandleResponses( s, jqXHR, responses ) { - - var ct, type, finalDataType, firstDataType, - contents = s.contents, - dataTypes = s.dataTypes; - - // Remove auto dataType and get content-type in the process - while ( dataTypes[ 0 ] === "*" ) { - dataTypes.shift(); - if ( ct === undefined ) { - ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" ); - } - } - - // Check if we're dealing with a known content-type - if ( ct ) { - for ( type in contents ) { - if ( contents[ type ] && contents[ type ].test( ct ) ) { - dataTypes.unshift( type ); - break; - } - } - } - - // Check to see if we have a response for the expected dataType - if ( dataTypes[ 0 ] in responses ) { - finalDataType = dataTypes[ 0 ]; - } else { - - // Try convertible dataTypes - for ( type in responses ) { - if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) { - finalDataType = type; - break; - } - if ( !firstDataType ) { - firstDataType = type; - } - } - - // Or just use first one - finalDataType = finalDataType || firstDataType; - } - - // If we found a dataType - // We add the dataType to the list if needed - // and return the corresponding response - if ( finalDataType ) { - if ( finalDataType !== dataTypes[ 0 ] ) { - dataTypes.unshift( finalDataType ); - } - return responses[ finalDataType ]; - } -} - -/* Chain conversions given the request and the original response - * Also sets the responseXXX fields on the jqXHR instance - */ -function ajaxConvert( s, response, jqXHR, isSuccess ) { - var conv2, current, conv, tmp, prev, - converters = {}, - - // Work with a copy of dataTypes in case we need to modify it for conversion - dataTypes = s.dataTypes.slice(); - - // Create converters map with lowercased keys - if ( dataTypes[ 1 ] ) { - for ( conv in s.converters ) { - converters[ conv.toLowerCase() ] = s.converters[ conv ]; - } - } - - current = dataTypes.shift(); - - // Convert to each sequential dataType - while ( current ) { - - if ( s.responseFields[ current ] ) { - jqXHR[ s.responseFields[ current ] ] = response; - } - - // Apply the dataFilter if provided - if ( !prev && isSuccess && s.dataFilter ) { - response = s.dataFilter( response, s.dataType ); - } - - prev = current; - current = dataTypes.shift(); - - if ( current ) { - - // There's only work to do if current dataType is non-auto - if ( current === "*" ) { - - current = prev; - - // Convert response if prev dataType is non-auto and differs from current - } else if ( prev !== "*" && prev !== current ) { - - // Seek a direct converter - conv = converters[ prev + " " + current ] || converters[ "* " + current ]; - - // If none found, seek a pair - if ( !conv ) { - for ( conv2 in converters ) { - - // If conv2 outputs current - tmp = conv2.split( " " ); - if ( tmp[ 1 ] === current ) { - - // If prev can be converted to accepted input - conv = converters[ prev + " " + tmp[ 0 ] ] || - converters[ "* " + tmp[ 0 ] ]; - if ( conv ) { - - // Condense equivalence converters - if ( conv === true ) { - conv = converters[ conv2 ]; - - // Otherwise, insert the intermediate dataType - } else if ( converters[ conv2 ] !== true ) { - current = tmp[ 0 ]; - dataTypes.unshift( tmp[ 1 ] ); - } - break; - } - } - } - } - - // Apply converter (if not an equivalence) - if ( conv !== true ) { - - // Unless errors are allowed to bubble, catch and return them - if ( conv && s.throws ) { - response = conv( response ); - } else { - try { - response = conv( response ); - } catch ( e ) { - return { - state: "parsererror", - error: conv ? e : "No conversion from " + prev + " to " + current - }; - } - } - } - } - } - } - - return { state: "success", data: response }; -} - -jQuery.extend( { - - // Counter for holding the number of active queries - active: 0, - - // Last-Modified header cache for next request - lastModified: {}, - etag: {}, - - ajaxSettings: { - url: location.href, - type: "GET", - isLocal: rlocalProtocol.test( location.protocol ), - global: true, - processData: true, - async: true, - contentType: "application/x-www-form-urlencoded; charset=UTF-8", - - /* - timeout: 0, - data: null, - dataType: null, - username: null, - password: null, - cache: null, - throws: false, - traditional: false, - headers: {}, - */ - - accepts: { - "*": allTypes, - text: "text/plain", - html: "text/html", - xml: "application/xml, text/xml", - json: "application/json, text/javascript" - }, - - contents: { - xml: /\bxml\b/, - html: /\bhtml/, - json: /\bjson\b/ - }, - - responseFields: { - xml: "responseXML", - text: "responseText", - json: "responseJSON" - }, - - // Data converters - // Keys separate source (or catchall "*") and destination types with a single space - converters: { - - // Convert anything to text - "* text": String, - - // Text to html (true = no transformation) - "text html": true, - - // Evaluate text as a json expression - "text json": JSON.parse, - - // Parse text as xml - "text xml": jQuery.parseXML - }, - - // For options that shouldn't be deep extended: - // you can add your own custom options here if - // and when you create one that shouldn't be - // deep extended (see ajaxExtend) - flatOptions: { - url: true, - context: true - } - }, - - // Creates a full fledged settings object into target - // with both ajaxSettings and settings fields. - // If target is omitted, writes into ajaxSettings. - ajaxSetup: function( target, settings ) { - return settings ? - - // Building a settings object - ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) : - - // Extending ajaxSettings - ajaxExtend( jQuery.ajaxSettings, target ); - }, - - ajaxPrefilter: addToPrefiltersOrTransports( prefilters ), - ajaxTransport: addToPrefiltersOrTransports( transports ), - - // Main method - ajax: function( url, options ) { - - // If url is an object, simulate pre-1.5 signature - if ( typeof url === "object" ) { - options = url; - url = undefined; - } - - // Force options to be an object - options = options || {}; - - var transport, - - // URL without anti-cache param - cacheURL, - - // Response headers - responseHeadersString, - responseHeaders, - - // timeout handle - timeoutTimer, - - // Url cleanup var - urlAnchor, - - // Request state (becomes false upon send and true upon completion) - completed, - - // To know if global events are to be dispatched - fireGlobals, - - // Loop variable - i, - - // uncached part of the url - uncached, - - // Create the final options object - s = jQuery.ajaxSetup( {}, options ), - - // Callbacks context - callbackContext = s.context || s, - - // Context for global events is callbackContext if it is a DOM node or jQuery collection - globalEventContext = s.context && - ( callbackContext.nodeType || callbackContext.jquery ) ? - jQuery( callbackContext ) : - jQuery.event, - - // Deferreds - deferred = jQuery.Deferred(), - completeDeferred = jQuery.Callbacks( "once memory" ), - - // Status-dependent callbacks - statusCode = s.statusCode || {}, - - // Headers (they are sent all at once) - requestHeaders = {}, - requestHeadersNames = {}, - - // Default abort message - strAbort = "canceled", - - // Fake xhr - jqXHR = { - readyState: 0, - - // Builds headers hashtable if needed - getResponseHeader: function( key ) { - var match; - if ( completed ) { - if ( !responseHeaders ) { - responseHeaders = {}; - while ( ( match = rheaders.exec( responseHeadersString ) ) ) { - responseHeaders[ match[ 1 ].toLowerCase() ] = match[ 2 ]; - } - } - match = responseHeaders[ key.toLowerCase() ]; - } - return match == null ? null : match; - }, - - // Raw string - getAllResponseHeaders: function() { - return completed ? responseHeadersString : null; - }, - - // Caches the header - setRequestHeader: function( name, value ) { - if ( completed == null ) { - name = requestHeadersNames[ name.toLowerCase() ] = - requestHeadersNames[ name.toLowerCase() ] || name; - requestHeaders[ name ] = value; - } - return this; - }, - - // Overrides response content-type header - overrideMimeType: function( type ) { - if ( completed == null ) { - s.mimeType = type; - } - return this; - }, - - // Status-dependent callbacks - statusCode: function( map ) { - var code; - if ( map ) { - if ( completed ) { - - // Execute the appropriate callbacks - jqXHR.always( map[ jqXHR.status ] ); - } else { - - // Lazy-add the new callbacks in a way that preserves old ones - for ( code in map ) { - statusCode[ code ] = [ statusCode[ code ], map[ code ] ]; - } - } - } - return this; - }, - - // Cancel the request - abort: function( statusText ) { - var finalText = statusText || strAbort; - if ( transport ) { - transport.abort( finalText ); - } - done( 0, finalText ); - return this; - } - }; - - // Attach deferreds - deferred.promise( jqXHR ); - - // Add protocol if not provided (prefilters might expect it) - // Handle falsy url in the settings object (#10093: consistency with old signature) - // We also use the url parameter if available - s.url = ( ( url || s.url || location.href ) + "" ) - .replace( rprotocol, location.protocol + "//" ); - - // Alias method option to type as per ticket #12004 - s.type = options.method || options.type || s.method || s.type; - - // Extract dataTypes list - s.dataTypes = ( s.dataType || "*" ).toLowerCase().match( rnothtmlwhite ) || [ "" ]; - - // A cross-domain request is in order when the origin doesn't match the current origin. - if ( s.crossDomain == null ) { - urlAnchor = document.createElement( "a" ); - - // Support: IE <=8 - 11, Edge 12 - 13 - // IE throws exception on accessing the href property if url is malformed, - // e.g. http://example.com:80x/ - try { - urlAnchor.href = s.url; - - // Support: IE <=8 - 11 only - // Anchor's host property isn't correctly set when s.url is relative - urlAnchor.href = urlAnchor.href; - s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !== - urlAnchor.protocol + "//" + urlAnchor.host; - } catch ( e ) { - - // If there is an error parsing the URL, assume it is crossDomain, - // it can be rejected by the transport if it is invalid - s.crossDomain = true; - } - } - - // Convert data if not already a string - if ( s.data && s.processData && typeof s.data !== "string" ) { - s.data = jQuery.param( s.data, s.traditional ); - } - - // Apply prefilters - inspectPrefiltersOrTransports( prefilters, s, options, jqXHR ); - - // If request was aborted inside a prefilter, stop there - if ( completed ) { - return jqXHR; - } - - // We can fire global events as of now if asked to - // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118) - fireGlobals = jQuery.event && s.global; - - // Watch for a new set of requests - if ( fireGlobals && jQuery.active++ === 0 ) { - jQuery.event.trigger( "ajaxStart" ); - } - - // Uppercase the type - s.type = s.type.toUpperCase(); - - // Determine if request has content - s.hasContent = !rnoContent.test( s.type ); - - // Save the URL in case we're toying with the If-Modified-Since - // and/or If-None-Match header later on - // Remove hash to simplify url manipulation - cacheURL = s.url.replace( rhash, "" ); - - // More options handling for requests with no content - if ( !s.hasContent ) { - - // Remember the hash so we can put it back - uncached = s.url.slice( cacheURL.length ); - - // If data is available, append data to url - if ( s.data ) { - cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data; - - // #9682: remove data so that it's not used in an eventual retry - delete s.data; - } - - // Add or update anti-cache param if needed - if ( s.cache === false ) { - cacheURL = cacheURL.replace( rantiCache, "$1" ); - uncached = ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + ( nonce++ ) + uncached; - } - - // Put hash and anti-cache on the URL that will be requested (gh-1732) - s.url = cacheURL + uncached; - - // Change '%20' to '+' if this is encoded form body content (gh-2658) - } else if ( s.data && s.processData && - ( s.contentType || "" ).indexOf( "application/x-www-form-urlencoded" ) === 0 ) { - s.data = s.data.replace( r20, "+" ); - } - - // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. - if ( s.ifModified ) { - if ( jQuery.lastModified[ cacheURL ] ) { - jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] ); - } - if ( jQuery.etag[ cacheURL ] ) { - jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] ); - } - } - - // Set the correct header, if data is being sent - if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) { - jqXHR.setRequestHeader( "Content-Type", s.contentType ); - } - - // Set the Accepts header for the server, depending on the dataType - jqXHR.setRequestHeader( - "Accept", - s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ? - s.accepts[ s.dataTypes[ 0 ] ] + - ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) : - s.accepts[ "*" ] - ); - - // Check for headers option - for ( i in s.headers ) { - jqXHR.setRequestHeader( i, s.headers[ i ] ); - } - - // Allow custom headers/mimetypes and early abort - if ( s.beforeSend && - ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) { - - // Abort if not done already and return - return jqXHR.abort(); - } - - // Aborting is no longer a cancellation - strAbort = "abort"; - - // Install callbacks on deferreds - completeDeferred.add( s.complete ); - jqXHR.done( s.success ); - jqXHR.fail( s.error ); - - // Get transport - transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR ); - - // If no transport, we auto-abort - if ( !transport ) { - done( -1, "No Transport" ); - } else { - jqXHR.readyState = 1; - - // Send global event - if ( fireGlobals ) { - globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] ); - } - - // If request was aborted inside ajaxSend, stop there - if ( completed ) { - return jqXHR; - } - - // Timeout - if ( s.async && s.timeout > 0 ) { - timeoutTimer = window.setTimeout( function() { - jqXHR.abort( "timeout" ); - }, s.timeout ); - } - - try { - completed = false; - transport.send( requestHeaders, done ); - } catch ( e ) { - - // Rethrow post-completion exceptions - if ( completed ) { - throw e; - } - - // Propagate others as results - done( -1, e ); - } - } - - // Callback for when everything is done - function done( status, nativeStatusText, responses, headers ) { - var isSuccess, success, error, response, modified, - statusText = nativeStatusText; - - // Ignore repeat invocations - if ( completed ) { - return; - } - - completed = true; - - // Clear timeout if it exists - if ( timeoutTimer ) { - window.clearTimeout( timeoutTimer ); - } - - // Dereference transport for early garbage collection - // (no matter how long the jqXHR object will be used) - transport = undefined; - - // Cache response headers - responseHeadersString = headers || ""; - - // Set readyState - jqXHR.readyState = status > 0 ? 4 : 0; - - // Determine if successful - isSuccess = status >= 200 && status < 300 || status === 304; - - // Get response data - if ( responses ) { - response = ajaxHandleResponses( s, jqXHR, responses ); - } - - // Convert no matter what (that way responseXXX fields are always set) - response = ajaxConvert( s, response, jqXHR, isSuccess ); - - // If successful, handle type chaining - if ( isSuccess ) { - - // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. - if ( s.ifModified ) { - modified = jqXHR.getResponseHeader( "Last-Modified" ); - if ( modified ) { - jQuery.lastModified[ cacheURL ] = modified; - } - modified = jqXHR.getResponseHeader( "etag" ); - if ( modified ) { - jQuery.etag[ cacheURL ] = modified; - } - } - - // if no content - if ( status === 204 || s.type === "HEAD" ) { - statusText = "nocontent"; - - // if not modified - } else if ( status === 304 ) { - statusText = "notmodified"; - - // If we have data, let's convert it - } else { - statusText = response.state; - success = response.data; - error = response.error; - isSuccess = !error; - } - } else { - - // Extract error from statusText and normalize for non-aborts - error = statusText; - if ( status || !statusText ) { - statusText = "error"; - if ( status < 0 ) { - status = 0; - } - } - } - - // Set data for the fake xhr object - jqXHR.status = status; - jqXHR.statusText = ( nativeStatusText || statusText ) + ""; - - // Success/Error - if ( isSuccess ) { - deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] ); - } else { - deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] ); - } - - // Status-dependent callbacks - jqXHR.statusCode( statusCode ); - statusCode = undefined; - - if ( fireGlobals ) { - globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError", - [ jqXHR, s, isSuccess ? success : error ] ); - } - - // Complete - completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] ); - - if ( fireGlobals ) { - globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] ); - - // Handle the global AJAX counter - if ( !( --jQuery.active ) ) { - jQuery.event.trigger( "ajaxStop" ); - } - } - } - - return jqXHR; - }, - - getJSON: function( url, data, callback ) { - return jQuery.get( url, data, callback, "json" ); - }, - - getScript: function( url, callback ) { - return jQuery.get( url, undefined, callback, "script" ); - } -} ); - -jQuery.each( [ "get", "post" ], function( i, method ) { - jQuery[ method ] = function( url, data, callback, type ) { - - // Shift arguments if data argument was omitted - if ( jQuery.isFunction( data ) ) { - type = type || callback; - callback = data; - data = undefined; - } - - // The url can be an options object (which then must have .url) - return jQuery.ajax( jQuery.extend( { - url: url, - type: method, - dataType: type, - data: data, - success: callback - }, jQuery.isPlainObject( url ) && url ) ); - }; -} ); - - -jQuery._evalUrl = function( url ) { - return jQuery.ajax( { - url: url, - - // Make this explicit, since user can override this through ajaxSetup (#11264) - type: "GET", - dataType: "script", - cache: true, - async: false, - global: false, - "throws": true - } ); -}; - - -jQuery.fn.extend( { - wrapAll: function( html ) { - var wrap; - - if ( this[ 0 ] ) { - if ( jQuery.isFunction( html ) ) { - html = html.call( this[ 0 ] ); - } - - // The elements to wrap the target around - wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true ); - - if ( this[ 0 ].parentNode ) { - wrap.insertBefore( this[ 0 ] ); - } - - wrap.map( function() { - var elem = this; - - while ( elem.firstElementChild ) { - elem = elem.firstElementChild; - } - - return elem; - } ).append( this ); - } - - return this; - }, - - wrapInner: function( html ) { - if ( jQuery.isFunction( html ) ) { - return this.each( function( i ) { - jQuery( this ).wrapInner( html.call( this, i ) ); - } ); - } - - return this.each( function() { - var self = jQuery( this ), - contents = self.contents(); - - if ( contents.length ) { - contents.wrapAll( html ); - - } else { - self.append( html ); - } - } ); - }, - - wrap: function( html ) { - var isFunction = jQuery.isFunction( html ); - - return this.each( function( i ) { - jQuery( this ).wrapAll( isFunction ? html.call( this, i ) : html ); - } ); - }, - - unwrap: function( selector ) { - this.parent( selector ).not( "body" ).each( function() { - jQuery( this ).replaceWith( this.childNodes ); - } ); - return this; - } -} ); - - -jQuery.expr.pseudos.hidden = function( elem ) { - return !jQuery.expr.pseudos.visible( elem ); -}; -jQuery.expr.pseudos.visible = function( elem ) { - return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length ); -}; - - - - -jQuery.ajaxSettings.xhr = function() { - try { - return new window.XMLHttpRequest(); - } catch ( e ) {} -}; - -var xhrSuccessStatus = { - - // File protocol always yields status code 0, assume 200 - 0: 200, - - // Support: IE <=9 only - // #1450: sometimes IE returns 1223 when it should be 204 - 1223: 204 - }, - xhrSupported = jQuery.ajaxSettings.xhr(); - -support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported ); -support.ajax = xhrSupported = !!xhrSupported; - -jQuery.ajaxTransport( function( options ) { - var callback, errorCallback; - - // Cross domain only allowed if supported through XMLHttpRequest - if ( support.cors || xhrSupported && !options.crossDomain ) { - return { - send: function( headers, complete ) { - var i, - xhr = options.xhr(); - - xhr.open( - options.type, - options.url, - options.async, - options.username, - options.password - ); - - // Apply custom fields if provided - if ( options.xhrFields ) { - for ( i in options.xhrFields ) { - xhr[ i ] = options.xhrFields[ i ]; - } - } - - // Override mime type if needed - if ( options.mimeType && xhr.overrideMimeType ) { - xhr.overrideMimeType( options.mimeType ); - } - - // X-Requested-With header - // For cross-domain requests, seeing as conditions for a preflight are - // akin to a jigsaw puzzle, we simply never set it to be sure. - // (it can always be set on a per-request basis or even using ajaxSetup) - // For same-domain requests, won't change header if already provided. - if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) { - headers[ "X-Requested-With" ] = "XMLHttpRequest"; - } - - // Set headers - for ( i in headers ) { - xhr.setRequestHeader( i, headers[ i ] ); - } - - // Callback - callback = function( type ) { - return function() { - if ( callback ) { - callback = errorCallback = xhr.onload = - xhr.onerror = xhr.onabort = xhr.onreadystatechange = null; - - if ( type === "abort" ) { - xhr.abort(); - } else if ( type === "error" ) { - - // Support: IE <=9 only - // On a manual native abort, IE9 throws - // errors on any property access that is not readyState - if ( typeof xhr.status !== "number" ) { - complete( 0, "error" ); - } else { - complete( - - // File: protocol always yields status 0; see #8605, #14207 - xhr.status, - xhr.statusText - ); - } - } else { - complete( - xhrSuccessStatus[ xhr.status ] || xhr.status, - xhr.statusText, - - // Support: IE <=9 only - // IE9 has no XHR2 but throws on binary (trac-11426) - // For XHR2 non-text, let the caller handle it (gh-2498) - ( xhr.responseType || "text" ) !== "text" || - typeof xhr.responseText !== "string" ? - { binary: xhr.response } : - { text: xhr.responseText }, - xhr.getAllResponseHeaders() - ); - } - } - }; - }; - - // Listen to events - xhr.onload = callback(); - errorCallback = xhr.onerror = callback( "error" ); - - // Support: IE 9 only - // Use onreadystatechange to replace onabort - // to handle uncaught aborts - if ( xhr.onabort !== undefined ) { - xhr.onabort = errorCallback; - } else { - xhr.onreadystatechange = function() { - - // Check readyState before timeout as it changes - if ( xhr.readyState === 4 ) { - - // Allow onerror to be called first, - // but that will not handle a native abort - // Also, save errorCallback to a variable - // as xhr.onerror cannot be accessed - window.setTimeout( function() { - if ( callback ) { - errorCallback(); - } - } ); - } - }; - } - - // Create the abort callback - callback = callback( "abort" ); - - try { - - // Do send the request (this may raise an exception) - xhr.send( options.hasContent && options.data || null ); - } catch ( e ) { - - // #14683: Only rethrow if this hasn't been notified as an error yet - if ( callback ) { - throw e; - } - } - }, - - abort: function() { - if ( callback ) { - callback(); - } - } - }; - } -} ); - - - - -// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432) -jQuery.ajaxPrefilter( function( s ) { - if ( s.crossDomain ) { - s.contents.script = false; - } -} ); - -// Install script dataType -jQuery.ajaxSetup( { - accepts: { - script: "text/javascript, application/javascript, " + - "application/ecmascript, application/x-ecmascript" - }, - contents: { - script: /\b(?:java|ecma)script\b/ - }, - converters: { - "text script": function( text ) { - jQuery.globalEval( text ); - return text; - } - } -} ); - -// Handle cache's special case and crossDomain -jQuery.ajaxPrefilter( "script", function( s ) { - if ( s.cache === undefined ) { - s.cache = false; - } - if ( s.crossDomain ) { - s.type = "GET"; - } -} ); - -// Bind script tag hack transport -jQuery.ajaxTransport( "script", function( s ) { - - // This transport only deals with cross domain requests - if ( s.crossDomain ) { - var script, callback; - return { - send: function( _, complete ) { - script = jQuery( "