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