diff options
author | 2017-05-12 06:26:03 +0000 | |
---|---|---|
committer | 2017-05-12 06:26:03 +0000 | |
commit | 909be5b53a6141f84480dc29eb5dbfffe5c35fad (patch) | |
tree | f48c1a1e98dffcbe393a428f06e02fceaf937875 /testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation | |
parent | 9437526b739c41c0a1fc25396677d2f134d4ce80 (diff) | |
parent | 55d74f86440a5a804d4551e04f7fd39518af0723 (diff) |
Merge "add web portal framework for TestAPI"
Diffstat (limited to 'testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation')
9 files changed, 260 insertions, 0 deletions
diff --git a/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/_evalUrl.js b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/_evalUrl.js new file mode 100644 index 0000000..f9ec702 --- /dev/null +++ b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/_evalUrl.js @@ -0,0 +1,23 @@ +define( [ + "../ajax" +], function( jQuery ) { + +"use strict"; + +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 + } ); +}; + +return jQuery._evalUrl; + +} ); diff --git a/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/buildFragment.js b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/buildFragment.js new file mode 100644 index 0000000..bcb5085 --- /dev/null +++ b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/buildFragment.js @@ -0,0 +1,104 @@ +define( [ + "../core", + "./var/rtagName", + "./var/rscriptType", + "./wrapMap", + "./getAll", + "./setGlobalEval" +], function( jQuery, rtagName, rscriptType, wrapMap, getAll, setGlobalEval ) { + +"use strict"; + +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; +} + +return buildFragment; +} ); diff --git a/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/getAll.js b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/getAll.js new file mode 100644 index 0000000..fede6c7 --- /dev/null +++ b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/getAll.js @@ -0,0 +1,32 @@ +define( [ + "../core", + "../core/nodeName" +], function( jQuery, nodeName ) { + +"use strict"; + +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; +} + +return getAll; +} ); diff --git a/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/setGlobalEval.js b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/setGlobalEval.js new file mode 100644 index 0000000..cf95240 --- /dev/null +++ b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/setGlobalEval.js @@ -0,0 +1,22 @@ +define( [ + "../data/var/dataPriv" +], function( dataPriv ) { + +"use strict"; + +// 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" ) + ); + } +} + +return setGlobalEval; +} ); diff --git a/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/support.js b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/support.js new file mode 100644 index 0000000..4a5d9af --- /dev/null +++ b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/support.js @@ -0,0 +1,35 @@ +define( [ + "../var/document", + "../var/support" +], function( document, support ) { + +"use strict"; + +( 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 = "<textarea>x</textarea>"; + support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; +} )(); + +return support; + +} ); diff --git a/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/var/rcheckableType.js b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/var/rcheckableType.js new file mode 100644 index 0000000..25bbcb4 --- /dev/null +++ b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/var/rcheckableType.js @@ -0,0 +1,5 @@ +define( function() { + "use strict"; + + return ( /^(?:checkbox|radio)$/i ); +} ); diff --git a/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/var/rscriptType.js b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/var/rscriptType.js new file mode 100644 index 0000000..7237c8a --- /dev/null +++ b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/var/rscriptType.js @@ -0,0 +1,5 @@ +define( function() { + "use strict"; + + return ( /^$|\/(?:java|ecma)script/i ); +} ); diff --git a/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/var/rtagName.js b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/var/rtagName.js new file mode 100644 index 0000000..d565dd3 --- /dev/null +++ b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/var/rtagName.js @@ -0,0 +1,5 @@ +define( function() { + "use strict"; + + return ( /<([a-z][^\/\0>\x20\t\r\n\f]+)/i ); +} ); diff --git a/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/wrapMap.js b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/wrapMap.js new file mode 100644 index 0000000..1f446f7 --- /dev/null +++ b/testapi/3rd_party/static/testapi-ui/assets/lib/jquery/src/manipulation/wrapMap.js @@ -0,0 +1,29 @@ +define( function() { + +"use strict"; + +// We have to close these tags to support XHTML (#13200) +var wrapMap = { + + // Support: IE <=9 only + option: [ 1, "<select multiple='multiple'>", "</select>" ], + + // XHTML parsers do not magically insert elements in the + // same way that tag soup parsers do. So we cannot shorten + // this by omitting <tbody> or other required elements. + thead: [ 1, "<table>", "</table>" ], + col: [ 2, "<table><colgroup>", "</colgroup></table>" ], + tr: [ 2, "<table><tbody>", "</tbody></table>" ], + td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ], + + _default: [ 0, "", "" ] +}; + +// Support: IE <=9 only +wrapMap.optgroup = wrapMap.option; + +wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; +wrapMap.th = wrapMap.td; + +return wrapMap; +} ); |