/* Copyright (c) 2004-2016, The JS Foundation All Rights Reserved. Available via Academic Free License >= 2.1 OR the modified BSD license. see: http://dojotoolkit.org/license for details */ //>>built define("dojo/fx",["./_base/lang","./Evented","./_base/kernel","./_base/array","./aspect","./_base/fx","./dom","./dom-style","./dom-geometry","./ready","require"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b){ if(!_3.isAsync){ _a(0,function(){ var _c=["./fx/Toggler"]; _b(_c); }); } var _d=_3.fx={}; var _e={_fire:function(_f,_10){ if(this[_f]){ this[_f].apply(this,_10||[]); } return this; }}; var _11=function(_12){ this._index=-1; this._animations=_12||[]; this._current=this._onAnimateCtx=this._onEndCtx=null; this.duration=0; _4.forEach(this._animations,function(a){ if(a){ if(typeof a.duration!="undefined"){ this.duration+=a.duration; } if(a.delay){ this.duration+=a.delay; } } },this); }; _11.prototype=new _2(); _1.extend(_11,{_onAnimate:function(){ this._fire("onAnimate",arguments); },_onEnd:function(){ this._onAnimateCtx.remove(); this._onEndCtx.remove(); this._onAnimateCtx=this._onEndCtx=null; if(this._index+1==this._animations.length){ this._fire("onEnd"); }else{ this._current=this._animations[++this._index]; this._onAnimateCtx=_5.after(this._current,"onAnimate",_1.hitch(this,"_onAnimate"),true); this._onEndCtx=_5.after(this._current,"onEnd",_1.hitch(this,"_onEnd"),true); this._current.play(0,true); } },play:function(_13,_14){ if(!this._current){ this._current=this._animations[this._index=0]; } if(!_14&&this._current.status()=="playing"){ return this; } var _15=_5.after(this._current,"beforeBegin",_1.hitch(this,function(){ this._fire("beforeBegin"); }),true),_16=_5.after(this._current,"onBegin",_1.hitch(this,function(arg){ this._fire("onBegin",arguments); }),true),_17=_5.after(this._current,"onPlay",_1.hitch(this,function(arg){ this._fire("onPlay",arguments); _15.remove(); _16.remove(); _17.remove(); })); if(this._onAnimateCtx){ this._onAnimateCtx.remove(); } this._onAnimateCtx=_5.after(this._current,"onAnimate",_1.hitch(this,"_onAnimate"),true); if(this._onEndCtx){ this._onEndCtx.remove(); } this._onEndCtx=_5.after(this._current,"onEnd",_1.hitch(this,"_onEnd"),true); this._current.play.apply(this._current,arguments); return this; },pause:function(){ if(this._current){ var e=_5.after(this._current,"onPause",_1.hitch(this,function(arg){ this._fire("onPause",arguments); e.remove(); }),true); this._current.pause(); } return this; },gotoPercent:function(_18,_19){ this.pause(); var _1a=this.duration*_18; this._current=null; _4.some(this._animations,function(a,_1b){ if(_1a<=a.duration){ this._current=a; this._index=_1b; return true; } _1a-=a.duration; return false; },this); if(this._current){ this._current.gotoPercent(_1a/this._current.duration); } if(_19){ this.play(); } return this; },stop:function(_1c){ if(this._current){ if(_1c){ for(;this._index+1this._animations.length){ this._fire("onEnd"); } },_call:function(_24,_25){ var t=this._pseudoAnimation; t[_24].apply(t,_25); },play:function(_26,_27){ this._finished=0; this._doAction("play",arguments); this._call("play",arguments); return this; },pause:function(){ this._doAction("pause",arguments); this._call("pause",arguments); return this; },gotoPercent:function(_28,_29){ var ms=this.duration*_28; _4.forEach(this._animations,function(a){ a.gotoPercent(a.duration