transition-native-min.js revision ca4ee40983d39fb8235d544a1049ba4ecc67964e
YUI.add("transition-native",function(B){var G="-webkit-transition",I="WebkitTransition",C="-webkit-transition-property",F="-webkit-transition-duration",A="-webkit-transition-timing-function",D="-webkit-transition-delay",H="webkitTransitionEnd",E=function(){this.init.apply(this,arguments);};E._reKeywords=/^(?:node|duration|iterations|easing|delay)$/;E.useNative=false;if(G in B.config.doc.documentElement.style){E.useNative=true;E.supported=true;}B.Node.DOM_EVENTS[H]=1;E.NAME="transition";E.DEFAULT_EASING="ease-in-out";E.DEFAULT_DURATION=0.5;E.DEFAULT_DELAY=0;E._nodeAttrs={};E.prototype={constructor:E,init:function(K,J){if(!this._running){this._node=K;this._config=J;K._transition=this;this._duration=("duration" in J)?J.duration:this.constructor.DEFAULT_DURATION;this._delay=("delay" in J)?J.delay:this.constructor.DEFAULT_DELAY;this._easing=J.easing||this.constructor.DEFAULT_EASING;this._count=0;this._running=false;this.initAttrs(J);}return this;},initAttrs:function(K){var N=this,L=N._node,P=B.stamp(L),T=E._nodeAttrs[P],M,O,S,J,R,Q;if(!T){T=E._nodeAttrs[P]={};}if(K.transform&&!K["-webkit-transform"]){K["-webkit-transform"]=K.transform;delete K.transform;}for(Q in K){if(K.hasOwnProperty(Q)&&!E._reKeywords.test(Q)){J=R=K[Q];if(T[Q]&&T[Q].transition){T[Q].transition._count--;}if(typeof R.value!=="undefined"){J=R.value;}if(typeof J==="function"){J=J.call(L,L);}M=(typeof R.duration!=="undefined")?R.duration:N._duration;O=(typeof R.delay!=="undefined")?R.delay:N._delay;if(!M){M=0.00001;}S=R.easing||N._easing;N._count++;T[Q]={value:J,duration:M,delay:O,easing:S,transition:N};}}},run:function(K){var J=this;if(!J._running){J._running=true;J._start();J._callback=K;}return J;},_start:function(){this._runNative();},_prepDur:function(J){J=parseFloat(J);return J+"s";},_runNative:function(M){var Q=this,N=Q._node,T=B.stamp(N),R=N._node,K=R.style,O=getComputedStyle(R),X=E._nodeAttrs[T],L="",Y=O[C],W=C+": ",P=F+": ",V=A+": ",S=D+": ",U,J;if(Y!=="all"){W+=Y+",";P+=O[F]+",";V+=O[A]+",";S+=O[D]+",";}for(J in X){U=X[J];if(X.hasOwnProperty(J)&&U.transition===Q){P+=Q._prepDur(U.duration)+",";S+=Q._prepDur(U.delay)+",";V+=(U.easing)+",";W+=J+",";L+=J+": "+U.value+"; ";}}W=W.replace(/,$/,";");P=P.replace(/,$/,";");V=V.replace(/,$/,";");S=S.replace(/,$/,";");if(!N._hasTransitionEnd){N.on(H,Q._onNativeEnd);N._hasTransitionEnd=true;}K.cssText+=W+P+V+S+L;},_onNativeEnd:function(P){var N=this,M=B.stamp(N),L=P._event.propertyName,K=E._nodeAttrs[M],J=K[L],O=J.transition,Q=O._callback;O._count--;delete K[L];if(O._count<=0){N._node.style[I]="";O._running=false;if(Q){O._callback=null;Q.call(N,{elapsedTime:event.elapsedTime});}}},destroy:function(){this.detachAll();this._node=null;}};B.Transition=E;B.TransitionNative=E;B.Node.prototype.transition=function(J,L){var K=this._transition;if(K&&!K._running){K.init(this,J);}else{K=new E(this,J);}K.run(L);return this;};},"@VERSION@",{requires:["node-base"]});