/*!
 * jQuery Transit - CSS3 transitions and transformations
 * Copyright(c) 2011 Rico Sta. Cruz <rico@ricostacruz.com>
 * MIT Licensed.
 *
 * http://ricostacruz.com/jquery.transit
 * http://github.com/rstacruz/jquery.transit
 */
(function(d){function k(a){var b=["Moz","Webkit","O","ms"],c=a.charAt(0).toUpperCase()+a.substr(1);if(a in l.style)return a;for(a=0;a<b.length;++a){var d=b[a]+c;if(d in l.style)return d}}function h(a){typeof a==="string"&&this.parse(a);return this}function o(a,b,c){b===true?a.queue(c):b?a.queue(b,c):c()}function e(a,b){b||(d.cssNumber[a]=true);d.cssHooks[a]={get:function(b){return(d(b).css("transform")||new h).get(a)},set:function(b,e){var g=d(b).css("transform")||new h;g.setFromString(a,e);d(b).css({transform:g})}}}
function f(a,b){return typeof a==="string"&&!a.match(/^[\-0-9\.]+$/)?a:""+a+b}function p(a){d.fx.speeds[a]&&(a=d.fx.speeds[a]);return f(a,"ms")}d.transit={version:"0.1.0",enabled:true};var l=document.createElement("div"),j={transition:k("transition"),transform:k("transform"),transformOrigin:k("transformOrigin")};d.extend(d.support,j);var n={MozTransition:"transitionend",OTransition:"oTransitionEnd",WebkitTransition:"webkitTransitionEnd",msTransition:"MSTransitionEnd"}[j.transition]||null,l=null;d.cssEase=
{_default:"ease","in":"ease-in",out:"ease-out","in-out":"ease-in-out",snap:"cubic-bezier(0,1,.5,1)"};d.cssHooks.transform={get:function(a){return d(a).data("transform")},set:function(a,b){var c=b;c instanceof h||(c=new h(c));a.style[j.transform]=j.transform=="WebkitTransform"?c.toString(true):c.toString();d(a).data("transform",c)}};d.cssHooks.transformOrigin={get:function(a){return a.style[j.transformOrigin]},set:function(a,b){a.style[j.transformOrigin]=b}};e("scale");e("translate");e("rotate");e("rotateX");
e("rotateY");e("rotate3d");e("perspective");e("skewX");e("skewY");e("x",true);e("y",true);h.prototype={setFromString:function(a,b){var c=typeof b==="string"?b.split(","):b.constructor==Array?b:[b];c.unshift(a);h.prototype.set.apply(this,c)},set:function(a){var b=Array.prototype.slice.apply(arguments,[1]);this.setter[a]?this.setter[a].apply(this,b):this[a]=b.join(",")},get:function(a){return this.getter[a]?this.getter[a].apply(this):this[a]||0},setter:{rotate:function(a){this.rotate=f(a,"deg")},rotateX:function(a){this.rotateX=
f(a,"deg")},rotateY:function(a){this.rotateY=f(a,"deg")},scale:function(a,b){b===void 0&&(b=a);this.scale=a+","+b},skewX:function(a){this.skewX=f(a,"deg")},skewY:function(a){this.skewY=f(a,"deg")},perspective:function(a){this.perspective=f(a,"px")},x:function(a){this.set("translate",a,null)},y:function(a){this.set("translate",null,a)},translate:function(a,b){if(this._translateX===void 0)this._translateX=0;if(this._translateY===void 0)this._translateY=0;if(a!==null)this._translateX=f(a,"px");if(b!==
null)this._translateY=f(b,"px");this.translate=this._translateX+","+this._translateY}},getter:{x:function(){return this._translateX||0},y:function(){return this._translateY||0},scale:function(){var a=(this.scale||"1,1").split(",");a[0]&&(a[0]=parseFloat(a[0]));a[1]&&(a[1]=parseFloat(a[1]));return a[0]==a[1]?a[0]:a},rotate3d:function(){var a=(this.rotate3d||"0,0,0,0deg").split(",");for(i=0;i<=3;++i)a[i]&&(a[i]=parseFloat(a[i]));a[3]&&(a[3]=f(a[3],"deg"));return a}},parse:function(a){var b=this;a.replace(/([a-zA-Z0-9]+)\((.*?)\)/g,
function(a,d,g){b.setFromString(d,g)})},toString:function(a){var b=[];for(i in this)this.hasOwnProperty(i)&&i[0]!=="_"&&(a&&(i==="scale"||i==="translate")?b.push(i+"3d("+this[i]+",0)"):b.push(i+"("+this[i]+")"));return b.join(" ")}};d.fn.transition=d.fn.transit=function(a,b,c,e){var g=this,f=0,h=true;typeof b==="function"&&(e=b,b=null);typeof c==="function"&&(e=c,c=null);if(a.easing)c=a.easing,delete a.easing;if(a.duration)b=a.duration,delete a.duration;if(a.complete)e=a.complete,delete a.complete;
if(a.queue)h=a.queue,delete a.queue;if(b==null)b=d.fx.speeds._default;if(c==null)c=d.cssEase._default;d.cssEase[c]&&(c=d.cssEase[c]);var b=p(b),k="all "+b+" "+c;a.delay&&(f=p(a.delay),k+=" "+f,delete a.delay);var m=d.transit.enabled&&j.transition?parseInt(b)+parseInt(f):0;if(m===0)return o(g,h,function(b){g.css(a);e&&e();b()}),g;var l={},q=function(b){g.each(function(){m>0&&(this.style[j.transition]=k);d(this).css(a)});var c=false,f=function(){c&&g.unbind(n,f);m>0&&g.each(function(){this.style[j.transition]=
l[this]});typeof e==="function"&&e.apply(g);typeof b==="function"&&b()};m>0&&n?(c=true,g.bind(n,f)):window.setTimeout(f,m)};o(g,h,function(a){var b=0;j.transition==="MozTransition"&&b<25&&(b=25);window.setTimeout(function(){q(a)},b)});return this}})(jQuery);

