/*!
- * jQuery Color Animations v2.2.0
+ * jQuery Color Animations v3.0.0
* https://github.com/jquery/jquery-color
*
* Copyright OpenJS Foundation and other contributors
* Released under the MIT license.
* https://jquery.org/license
*
- * Date: Sun May 10 09:02:36 2020 +0200
+ * Date: Wed May 15 16:49:44 2024 +0200
*/
( function( root, factory ) {
+ "use strict";
+
if ( typeof define === "function" && define.amd ) {
// AMD. Register as an anonymous module.
factory( root.jQuery );
}
} )( this, function( jQuery, undefined ) {
+ "use strict";
var stepHooks = "backgroundColor borderBottomColor borderLeftColor borderRightColor " +
"borderTopColor color columnRuleColor outlineColor textDecorationColor textEmphasisColor",
floor: true
}
},
- support = color.support = {},
-
- // element for support tests
- supportElem = jQuery( "<p>" )[ 0 ],
// colors = jQuery.Color.names
colors,
// local aliases of functions called often
each = jQuery.each;
-// determine rgba support immediately
-supportElem.style.cssText = "background-color:rgba(1,1,1,.5)";
-support.rgba = supportElem.style.backgroundColor.indexOf( "rgba" ) > -1;
-
// define cache name and alpha properties
// for rgba and hsla spaces
each( spaces, function( spaceName, space ) {
// ~~ is an short way of doing floor for positive numbers
value = type.floor ? ~~value : parseFloat( value );
- // IE will pass in empty strings as value for alpha,
- // which will hit this case
- if ( isNaN( value ) ) {
- return prop.def;
- }
-
if ( type.mod ) {
// we add mod before modding to make sure that negatives values
} );
// everything defined but alpha?
- if ( inst[ cache ] && jQuery.inArray( null, inst[ cache ].slice( 0, 3 ) ) < 0 ) {
+ if ( inst[ cache ] && jQuery.inArray(
+ null,
+ inst[ cache ].slice( 0, 3 )
+ ) < 0 ) {
// use the default of 1
if ( inst[ cache ][ 3 ] == null ) {
prefix = "rgb(";
}
- return prefix + rgba.join() + ")";
+ return prefix + rgba.join( ", " ) + ")";
},
toHslaString: function() {
var prefix = "hsla(",
hsla.pop();
prefix = "hsl(";
}
- return prefix + hsla.join() + ")";
+ return prefix + hsla.join( ", " ) + ")";
},
toHexString: function( includeAlpha ) {
var rgba = this._rgba.slice(),
return "#" + jQuery.map( rgba, function( v ) {
// default to 0 when nulls exist
- v = ( v || 0 ).toString( 16 );
- return v.length === 1 ? "0" + v : v;
+ return ( "0" + ( v || 0 ).toString( 16 ) ).substr( -2 );
} ).join( "" );
},
toString: function() {
- return this._rgba[ 3 ] === 0 ? "transparent" : this.toRgbaString();
+ return this.toRgbaString();
}
} );
color.fn.parse.prototype = color.fn;
each( hooks, function( _i, hook ) {
jQuery.cssHooks[ hook ] = {
set: function( elem, value ) {
- var parsed, curElem,
- backgroundColor = "";
+ var parsed;
- if ( value !== "transparent" && ( getType( value ) !== "string" || ( parsed = stringParse( value ) ) ) ) {
+ if ( value !== "transparent" &&
+ ( getType( value ) !== "string" ||
+ ( parsed = stringParse( value ) ) ) ) {
value = color( parsed || value );
- if ( !support.rgba && value._rgba[ 3 ] !== 1 ) {
- curElem = hook === "backgroundColor" ? elem.parentNode : elem;
- while (
- ( backgroundColor === "" || backgroundColor === "transparent" ) &&
- curElem && curElem.style
- ) {
- try {
- backgroundColor = jQuery.css( curElem, "backgroundColor" );
- curElem = curElem.parentNode;
- } catch ( e ) {
- }
- }
-
- value = value.blend( backgroundColor && backgroundColor !== "transparent" ?
- backgroundColor :
- "_default" );
- }
-
value = value.toRgbaString();
}
- try {
- elem.style[ hook ] = value;
- } catch ( e ) {
-
- // wrapped to prevent IE from throwing errors on "invalid" values like 'auto' or 'inherit'
- }
+ elem.style[ hook ] = value;
}
};
jQuery.fx.step[ hook ] = function( fx ) {