mirror of
https://github.com/tuxis-ie/nsedit.git
synced 2025-07-23 19:42:58 +03:00
Merge commit 'd32092c1f0
' as 'jquery-ui'
This commit is contained in:
commit
b23131fdc2
717 changed files with 518330 additions and 0 deletions
22
jquery-ui/external/qunit-assert-classes/LICENSE.txt
vendored
Normal file
22
jquery-ui/external/qunit-assert-classes/LICENSE.txt
vendored
Normal file
|
@ -0,0 +1,22 @@
|
|||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2015 Alexander Schmitz
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
169
jquery-ui/external/qunit-assert-classes/qunit-assert-classes.js
vendored
Normal file
169
jquery-ui/external/qunit-assert-classes/qunit-assert-classes.js
vendored
Normal file
|
@ -0,0 +1,169 @@
|
|||
( function( factory ) {
|
||||
if ( typeof define === "function" && define.amd ) {
|
||||
|
||||
// AMD. Register as an anonymous module.
|
||||
define( [
|
||||
"qunit"
|
||||
], factory );
|
||||
} else {
|
||||
|
||||
// Browser globals
|
||||
factory( QUnit );
|
||||
}
|
||||
}( function( QUnit ) {
|
||||
|
||||
function inArray( haystack, needle ) {
|
||||
for ( var i = 0; i < haystack.length; i++ ) {
|
||||
if (
|
||||
( needle instanceof RegExp && needle.test( haystack[ i ] ) )||
|
||||
( typeof needle === "string" && haystack[ i ] === needle )
|
||||
) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function check( element, search ) {
|
||||
var i, classAttribute, elementClassArray,
|
||||
missing = [],
|
||||
found = [];
|
||||
|
||||
if ( element.jquery && element.length !== 1 ) {
|
||||
throw new Error( "Class checks can only be performed on a single element on a collection" );
|
||||
}
|
||||
|
||||
element = element.jquery ? element[ 0 ] : element;
|
||||
classAttribute = element.getAttribute( "class" );
|
||||
|
||||
if ( classAttribute ) {
|
||||
elementClassArray = splitClasses( classAttribute );
|
||||
if ( search instanceof RegExp ) {
|
||||
if ( inArray( elementClassArray, search ) ) {
|
||||
found.push( search );
|
||||
} else {
|
||||
missing.push( search );
|
||||
}
|
||||
} else {
|
||||
for( i = 0; i < search.length; i++ ) {
|
||||
if ( !inArray( elementClassArray, search[ i ] ) ) {
|
||||
missing.push( search[ i ] );
|
||||
} else {
|
||||
found.push( search[ i ] );
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
missing = search;
|
||||
}
|
||||
|
||||
return {
|
||||
missing: missing,
|
||||
found: found,
|
||||
element: element,
|
||||
classAttribute: classAttribute
|
||||
};
|
||||
}
|
||||
|
||||
function splitClasses( classes ) {
|
||||
return classes.match( /\S+/g ) || [];
|
||||
}
|
||||
|
||||
function pluralize( message, classes ) {
|
||||
return message + ( classes.length > 1 ? "es" : "" );
|
||||
}
|
||||
|
||||
QUnit.extend( QUnit.assert, {
|
||||
hasClasses: function( element, classes, message ) {
|
||||
var classArray = splitClasses( classes ),
|
||||
results = check( element, classArray );
|
||||
|
||||
message = message || pluralize( "Element must have class", classArray );
|
||||
|
||||
this.push( !results.missing.length, results.found.join( " " ), classes, message );
|
||||
},
|
||||
lacksClasses: function( element, classes, message ) {
|
||||
var classArray = splitClasses( classes ),
|
||||
results = check( element, classArray );
|
||||
|
||||
message = message || pluralize( "Element must not have class", classArray );
|
||||
|
||||
this.push( !results.found.length, results.found.join( " " ), classes, message );
|
||||
},
|
||||
hasClassesStrict: function( element, classes, message ) {
|
||||
var result,
|
||||
classArray = splitClasses( classes ),
|
||||
results = check( element, classArray );
|
||||
|
||||
message = message || pluralize( "Element must only have class", classArray );
|
||||
|
||||
result = !results.missing.length && results.element.getAttribute( "class" ) &&
|
||||
splitClasses( results.element.getAttribute( "class" ) ).length ===
|
||||
results.found.length;
|
||||
|
||||
this.push( result, results.found.join( " " ), classes, message );
|
||||
},
|
||||
hasClassRegex: function( element, regex, message ) {
|
||||
var results = check( element, regex );
|
||||
|
||||
message = message || "Element must have class matching " + regex;
|
||||
|
||||
this.push( !!results.found.length, results.found.join( " " ), regex, message );
|
||||
},
|
||||
lacksClassRegex: function( element, regex, message ) {
|
||||
var results = check( element, regex );
|
||||
|
||||
message = message || "Element must not have class matching " + regex;
|
||||
|
||||
this.push( results.missing.length, results.missing.join( " " ), regex, message );
|
||||
},
|
||||
hasClassStart: function( element, partialClass, message ) {
|
||||
var results = check( element, new RegExp( "^" + partialClass ) );
|
||||
|
||||
message = message || "Element must have class starting with " + partialClass;
|
||||
|
||||
this.push( results.found.length, results.found.join( " " ), partialClass, message );
|
||||
},
|
||||
lacksClassStart: function( element, partialClass, message ) {
|
||||
var results = check( element, new RegExp( "^" + partialClass ) );
|
||||
|
||||
message = message || "Element must not have class starting with " + partialClass;
|
||||
|
||||
this.push( results.missing.length, results.missing.join( " " ), partialClass, message );
|
||||
},
|
||||
hasClassPartial: function( element, partialClass, message ) {
|
||||
var results = check( element, new RegExp( partialClass ) );
|
||||
|
||||
message = message || "Element must have class containing '" + partialClass + "'";
|
||||
|
||||
this.push( results.found.length, results.found.join( " " ), partialClass, message );
|
||||
},
|
||||
lacksClassPartial: function( element, partialClass, message ) {
|
||||
var results = check( element, new RegExp( partialClass ) );
|
||||
|
||||
message = message || "Element must not have class containing '" + partialClass + "'";
|
||||
|
||||
this.push( results.missing.length, results.missing.join( " " ), partialClass, message );
|
||||
},
|
||||
lacksAllClasses: function( element, message ) {
|
||||
element = element.jquery ? element[ 0 ] : element;
|
||||
|
||||
var classAttribute = element.getAttribute( "class" ) || "",
|
||||
classes = splitClasses( classAttribute );
|
||||
|
||||
message = message || "Element must not have any classes";
|
||||
|
||||
this.push( !classes.length, !classes.length, true, message );
|
||||
},
|
||||
hasSomeClass: function( element, message ) {
|
||||
element = element.jquery ? element[ 0 ] : element;
|
||||
|
||||
var classAttribute = element.getAttribute( "class" ) || "",
|
||||
classes = splitClasses( classAttribute );
|
||||
|
||||
message = message || "Element must have a class";
|
||||
|
||||
this.push( classes.length, classes.length, true, message );
|
||||
}
|
||||
});
|
||||
} ) );
|
Loading…
Add table
Add a link
Reference in a new issue