transition-native-min.js revision f01d121976553130cab6089d35c71d5b947d1204
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._toCamel=function(J){J=J.replace(/-([a-z])/gi,function(L,K){return K.toUpperCase();});return J;};E._toHyphen=function(J){J=J.replace(/([a-z])([A-Z]+)/g,function(M,L,K){return(L+"-"+K.toLowerCase());});return J;};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._count=0;E.prototype={constructor:E,init:function(K,J){var L=this;if(!L._running){L._node=K;L._config=J;K._transition=L;L._duration=("duration" in J)?J.duration:L.constructor.DEFAULT_DURATION;L._delay=("delay" in J)?J.delay:L.constructor.DEFAULT_DELAY;L._easing=J.easing||L.constructor.DEFAULT_EASING;L._count=0;L._running=false;L.initAttrs(J);}return L;},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--;}else{E._count+=1;}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._node.fire("transition:start",{type:"transition:start",config:J._config});J._start();J._callback=K;}return J;},_start:function(){this._runNative();},_prepDur:function(J){J=parseFloat(J);return J+"s";},_runNative:function(M){var R=this,N=R._node,U=B.stamp(N),S=N._node,K=S.style,P=getComputedStyle(S),Y=E._nodeAttrs[U],L="",Z=P[C],X=C+": ",Q=F+": ",W=A+": ",T=D+": ",O,V,J;if(Z!=="all"){X+=Z+",";Q+=P[F]+",";W+=P[A]+",";T+=P[D]+",";}for(J in Y){O=E._toHyphen(J);V=Y[J];if(Y.hasOwnProperty(J)&&V.transition===R){if(J in S.style){Q+=R._prepDur(V.duration)+",";T+=R._prepDur(V.delay)+",";W+=(V.easing)+",";X+=O+",";L+=O+": "+V.value+"; ";}else{delete Y[J];R._count--;E._count--;}}}X=X.replace(/,$/,";");Q=Q.replace(/,$/,";");W=W.replace(/,$/,";");T=T.replace(/,$/,";");if(!N._hasTransitionEnd){N.on(H,R._onNativeEnd);N._hasTransitionEnd=true;}K.cssText+=X+Q+W+T+L;},_end:function(J){var M=this,K=M._node,N=M._callback,L={type:"transition:end",config:M._config,elapsedTime:J};M._running=false;if(N){M._callback=null;setTimeout(function(){N.call(K,L);},1);}K.fire("transition:end",L);},_endNative:function(){var J=this._node;if(E._count<=0){J._node.style[I]="";}},_onNativeEnd:function(O){var L=this,N=B.stamp(L),J=O._event,K=E._toCamel(J.propertyName),R=J.elapsedTime,Q=E._nodeAttrs[N],P=Q[K],M=(P)?P.transition:null,S;if(M){S=M._callback;M._count--;delete Q[K];E._count--;L.fire("transition:propertyEnd",{type:"propertyEnd",propertyName:K,elapsedTime:R});if(M._count<=0){M._endNative();M._end(R);}}},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"]});