AUI.add("aui-resize",function(Ae){var AO=Ae.Lang,F=AO.isArray,Aw=AO.isBoolean,AC=AO.isNumber,A0=AO.isString,As=AO.trim,V=Ae.Array.indexOf,AX=".",g=",",e=" ",d="active",AA="activeHandle",AI="activeHandleEl",k="all",BA="auto",Ah="autoHide",An="bottom",Ai="className",o="constrain",Al="cursor",U="diagonal",Am="dotted",AY="dragCursor",D="grip",AR="gripsmall",m="handle",z="handles",AV="hidden",C="horizontal",AT="icon",j="inner",E="left",y="margin",a="maxHeight",A1="maxWidth",W="minHeight",AE="minWidth",c="node",s="nodeName",AM="none",v="offsetHeight",Az="offsetWidth",I="parentNode",Y="position",X="preserveRatio",Aq="proxy",l="proxyEl",AP="px",K="region",Q="relative",Af="resize",b="resizing",N="right",A5="static",Ar="tickX",Ao="tickY",P="top",Ac="vertical",r="view",AH="viewportRegion",Aj="wrap",A3="wrapper",Ab="wrapTypes",H="borderBottomWidth",AB="borderLeftWidth",n="borderRightWidth",p="borderTopWidth",w="resize:mouseUp",h="resize:resize",x="resize:end",AJ="resize:start",AQ="t",A4="tr",AS="r",Au="br",Ad="b",Ax="bl",AW="l",A6="tl",AF=function(A){return(A instanceof Ae.Node);},A7=function(A){return m+A.toUpperCase();},A2=function(){return Array.prototype.slice.call(arguments).join(e);},AG=Ae.cached(function(A){return A.substring(0,1).toUpperCase()+A.substring(1);}),q=Ae.ClassNameManager.getClassName,S=q(AT),Av=q(AT,AR,U,Au),Aa=q(AT,D,Am,C),AL=q(AT,D,Am,Ac),At=q(Af),Ak=q(Af,m),AU=q(Af,m,d),J=q(Af,m,j),t=q(Af,m,j,"{handle}"),A8=q(Af,m,"{handle}"),G=q(Af,AV,z),i=q(Af,Aq),Ay=q(Af,A3),AZ=A2(S,Av),Ap=A2(S,Aa),Z=A2(S,AL),M=/^(t|b)$/i,AK=/^(tl|l|bl)$/i,AD=/^(tl|t|tr)$/i,u=/^(bl|br|l|r|tl|tr)$/i,Ag='<div class="'+A2(Ak,A8)+'">'+'<div class="'+A2(J,t)+'"></div>'+"</div>",AN='<div class="'+i+'"></div>',A9='<div class="'+Ay+'"></div>',f=[AQ,A4,AS,Au,Ad,Ax,AW,A6];var O=Ae.Component.create({NAME:Af,ATTRS:{activeHandle:{value:null,validator:A0},activeHandleEl:{value:null,validator:AF},autoHide:{value:false,validator:Aw},constrain:{setter:function(A){if(A&&(AF(A)||A0(A)||A.nodeType)){A=Ae.one(A);}return A;}},handles:{setter:function(L){var A=this;var B=[];if(F(L)){B=L;}else{if(A0(L)){if(L.toLowerCase()==k){B=f;}else{Ae.each(L.split(g),function(T,R){var BB=As(T);if(V(f,BB)>-1){B.push(BB);}});}}}return B;},value:k},minHeight:{value:15,validator:AC},minWidth:{value:15,validator:AC},maxHeight:{value:Infinity,validator:AC},maxWidth:{value:Infinity,validator:AC},node:{setter:Ae.one},preserveRatio:{value:false,validator:Aw},proxy:{value:false,validator:Aw},proxyEl:{setter:Ae.one,valueFn:function(){return Ae.Node.create(AN);}},resizing:{value:false,validator:Aw},tickX:{value:false},tickY:{value:false},wrap:{setter:function(R){var A=this;var L=A.get(c);var T=L.get(s);var B=A.get(Ab);if(B.test(T)){R=true;}return R;},value:false,validator:Aw},wrapTypes:{readOnly:true,value:/canvas|textarea|input|select|button|img/i},wrapper:{setter:function(){var A=this;var B=A.get(c);var L=B;if(A.get(Aj)){L=Ae.Node.create(A9);B.placeBefore(L);L.append(B);A._copyStyles(B,L);B.setStyles({position:A5,left:0,top:0});}return L;},value:null,writeOnce:true}},EXTENDS:Ae.Base,prototype:{CSS_INNER_HANDLE_MAP:{r:Z,l:Z,t:Ap,b:Ap,br:AZ},changeHeightHandles:false,changeLeftHandles:false,changeTopHandles:false,changeWidthHandles:false,constrainBorderInfo:null,info:null,originalInfo:null,initializer:function(){var A=this;A.info={};A.originalInfo={};A.constrainBorderInfo={bottom:0,left:0,right:0,top:0};A.get(c).addClass(At);A.renderer();},renderUI:function(){var A=this;A._renderHandles();A._renderProxy();},bindUI:function(){var A=this;A._createEvents();A._bindResize();A._bindDD();A._bindHandle();},syncUI:function(){var A=this;A._setHideHandlesUI(A.get(Ah));},destructor:function(){var A=this;var B=A.get(c);var L=A.get(A3);Ae.Event.purgeElement(L,true);A.eachHandle(function(T){var R=T.dd;if(R){R.destroy();}T.remove(true);});if(A.get(Aj)){B.setStyles({margin:L.getStyle(y),position:L.getStyle(Y)});L.placeBefore(B);L.remove(true);}B.removeClass(At);B.removeClass(G);},renderer:function(){this.renderUI();this.bindUI();this.syncUI();},_bindDD:function(){var A=this;A.on("drag:drag",A._handleResizeEvent);A.on("drag:dropmiss",A._handleMouseUpEvent);A.on("drag:end",A._handleResizeEndEvent);A.on("drag:start",A._handleResizeStartEvent);},_bindHandle:function(){var A=this;var B=A.get(A3);B.on("mouseenter",Ae.bind(A._onWrapperMouseEnter,A));B.on("mouseleave",Ae.bind(A._onWrapperMouseLeave,A));B.delegate("mouseout",Ae.bind(A._onHandleMouseOut,A),AX+Ak);B.delegate("mouseover",Ae.bind(A._onHandleMouseOver,A),AX+Ak);},_bindResize:function(){var A=this;A.after(h,A._afterResize);},_createEvents:function(){var A=this;var B=function(L,R){A.publish(L,{defaultFn:R,queuable:false,emitFacade:true,bubbles:true,prefix:Af});};B(AJ,this._defResizeStartFn);B(h,this._defResizeFn);B(x,this._defResizeEndFn);B(w,this._defMouseUpFn);},_renderHandles:function(){var A=this;var B=A.get(A3);A.eachHandle(function(L){B.append(L);});},_renderProxy:function(){var B=this;var A=B.get(l);B.get(A3).get(I).append(A.hide());},eachHandle:function(B){var A=this;Ae.each(A.get(z),function(T,L){var R=A.get(A7(T));B.apply(A,[R,T,L]);});},_buildHandle:function(L){var A=this;var B=Ae.Node.create(Ae.substitute(Ag,{handle:L}));B.one(AX+J).addClass(A.CSS_INNER_HANDLE_MAP[L]);A._setupHandleDD(L,B);return B;},_checkConstrain:function(B,BF,L){var BD=this;var A=BD.info;var BB=BD._getConstrainRegion();if(BB){var BC=A[B]+A[L];var R=BB[BF]-BD.constrainBorderInfo[BF];if(BC>=R){A[L]-=(BC-R);}var T=A[B];var BE=BB[B]+BD.constrainBorderInfo[B];if(T<=BE){A[B]+=(BE-T);A[L]-=(BE-T);}}},_checkHeight:function(){var B=this;var BB=B.info;var T=B.originalInfo;var L=B.get(a);var R=B.get(W);B._checkConstrain(P,An,v);var BC=(BB.offsetHeight>L);var A=(BB.offsetHeight<R);if(BC){BB.offsetHeight=L;if(B.changeTopHandles){BB.top=T.top+T.offsetHeight-L;}}if(A){BB.offsetHeight=R;if(B.changeTopHandles){BB.top=T.top+T.offsetHeight-R;}}},_checkRatio:function(){var BB=this;var B=BB.info;var R=BB.originalInfo;var BD=R.offsetWidth;var A=R.offsetHeight;var T=R.top;
var BE=R.left;var BC=function(){return(B.offsetWidth/BD);};var L=function(){return(B.offsetHeight/A);};if(BB.changeHeightHandles){B.offsetWidth=BD*L();BB._checkWidth();B.offsetHeight=A*BC();}else{if(BB.changeWidthHandles){B.offsetHeight=A*BC();BB._checkHeight();B.offsetWidth=BD*L();}}if(BB.changeTopHandles){B.top=T+(A-B.offsetHeight);}if(BB.changeLeftHandles){B.left=BE+(BD-B.offsetWidth);}},_checkRegion:function(){var A=this;var B=A._getConstrainRegion();return Ae.DOM.inRegion(null,B,true,A.info);},_checkWidth:function(){var A=this;var BC=A.info;var BB=A.originalInfo;var T=A.get(A1);var R=A.get(AE);A._checkConstrain(E,N,Az);var L=(BC.offsetWidth>T);var B=(BC.offsetWidth<R);if(L){BC.offsetWidth=T;if(A.changeLeftHandles){BC.left=BB.left+BB.offsetWidth-T;}}if(B){BC.offsetWidth=R;if(A.changeLeftHandles){BC.left=BB.left+BB.offsetWidth-R;}}},_copyStyles:function(T,BB){var B=this;var A=T.getStyle(Y).toLowerCase();if(A==A5){A=Q;}var R={position:A};var L={};Ae.each([P,N,An,E],function(BD){var BC=y+AG(BD);L[BC]=BB.getStyle(BC);R[BC]=T.getStyle(BC);});BB.setStyles(R);T.setStyles(L);T.setStyles({margin:0});BB.set(v,T.get(v));BB.set(Az,T.get(Az));},_extractHandleName:Ae.cached(function(L){var B=L.get(Ai);var A=B.match(new RegExp(q(Af,m,"(\\w{1,2})\\b")));return A?A[1]:null;}),_getConstrainRegion:function(){var A=this;var B=A.get(c);var R=A.get(o);var L=null;if(R){if(R==r){L=B.get(AH);}else{if(AF(R)){L=R.get(K);}else{L=R;}}}return L;},_getInfo:function(T,A){var BF=this,BB;var BD=A.dragEvent.target;if(A){BB=(BD.actXY.length?BD.actXY:BD.lastXY);}var BC=T.getXY();var R=BC[0];var L=BC[1];var B=T.get(v);var BE=T.get(Az);return{actXY:BB,bottom:(L+B),left:R,offsetHeight:B,offsetWidth:BE,right:(R+BE),top:L};},_recalculateXY:function(){var A=this;var L=A.info;var B=A.originalInfo;L.left=B.left+(L.left-B.left);L.top=B.top+(L.top-B.top);},_resize:function(){var A=this;var R=A.get(AA);var BB=A.info;var T=A.originalInfo;var L=BB.actXY[0]-T.actXY[0];var B=BB.actXY[1]-T.actXY[1];var BC={t:function(){BB.top=T.top+B;BB.offsetHeight=T.offsetHeight-B;},r:function(){BB.offsetWidth=T.offsetWidth+L;},l:function(){BB.left=T.left+L;BB.offsetWidth=T.offsetWidth-L;},b:function(){BB.offsetHeight=T.offsetHeight+B;},tr:function(){this.t();this.r();},br:function(){this.b();this.r();},tl:function(){this.t();this.l();},bl:function(){this.b();this.l();}};BC[R](L,B);},_setupHandleDD:function(R,L){var B=this;var A=new Ae.DD.Drag({bubbleTargets:B,clickPixelThresh:0,clickTimeThresh:0,data:{handle:R,node:L},node:L,useShim:true,move:false});A.plug(Ae.Plugin.DDConstrained,{stickX:(R==AS||R==AW),stickY:(R==AQ||R==Ad),tickX:B.get(Ar),tickY:B.get(Ao)});},_setOffset:function(L,B,A){L.set(Az,B);L.set(v,A);},_syncUI:function(){var A=this;var L=A.info;var R=A.get(A3);var B=A.get(c);A._setOffset(R,L.offsetWidth,L.offsetHeight);if(A.changeLeftHandles||A.changeTopHandles){R.setXY([L.left,L.top]);}if(!R.compareTo(B)){A._setOffset(B,L.offsetWidth,L.offsetHeight);}if(Ae.UA.webkit){B.setStyle(Af,AM);}},_syncProxyUI:function(){var B=this;var R=B.info;var L=B.get(AI);var A=B.get(l);var T=L.getStyle(Al);A.show().setStyle(Al,T);L.dd.set(AY,T);B._setOffset(A,R.offsetWidth,R.offsetHeight);A.setXY([R.left,R.top]);},_updateChangeHandleInfo:function(B){var A=this;A.changeHeightHandles=M.test(B);A.changeLeftHandles=AK.test(B);A.changeTopHandles=AD.test(B);A.changeWidthHandles=u.test(B);},_updateConstrainBorderInfo:function(){var B=this;var L=B.get(o);if(AF(L)){var A=function(R){return parseFloat(L.getStyle(R))||0;};B.constrainBorderInfo.bottom=A(H);B.constrainBorderInfo.left=A(AB);B.constrainBorderInfo.right=A(n);B.constrainBorderInfo.top=A(p);}},_updateInfo:function(B){var A=this;A.info=A._getInfo(A.get(A3),B);},_setActiveHandlesUI:function(L){var A=this;var B=A.get(AI);if(B){if(L){A.eachHandle(function(R){R.removeClass(AU);});B.addClass(AU);}else{B.removeClass(AU);}}},_setHideHandlesUI:function(B){var A=this;var L=A.get(A3);if(!A.get(b)){if(B){L.addClass(G);}else{L.removeClass(G);}}},_defMouseUpFn:function(B){var A=this;A.set(b,false);},_defResizeFn:function(L){var A=this;var B=A.info;A._updateInfo(L);A._resize();A._checkHeight();A._checkWidth();if(A.get(X)){A._checkRatio();}A._recalculateXY();if(A.get(o)&&!A._checkRegion()){A.info=B;}},_defResizeEndFn:function(L){var A=this;var B=L.dragEvent.target;B.actXY=[];if(A.get(Aq)){A._syncProxyUI();A.get(l).hide();}A._syncUI();A.set(AA,null);A.set(AI,null);A._setActiveHandlesUI(false);},_defResizeStartFn:function(B){var A=this;A.set(b,true);A.originalInfo=A._getInfo(A.get(A3),B);A._updateInfo(B);A._updateConstrainBorderInfo();},_afterResize:function(B){var A=this;if(A.get(Aq)){A._syncProxyUI();}else{A._syncUI();}},_handleMouseUpEvent:function(A){this.fire(w,{dragEvent:A,info:this.info});},_handleResizeEvent:function(A){this.fire(h,{dragEvent:A,info:this.info});},_handleResizeEndEvent:function(A){this.fire(x,{dragEvent:A,info:this.info});},_handleResizeStartEvent:function(A){this.fire(AJ,{dragEvent:A,info:this.info});},_onWrapperMouseEnter:function(B){var A=this;if(A.get(Ah)){A._setHideHandlesUI(false);}},_onWrapperMouseLeave:function(B){var A=this;if(A.get(Ah)){A._setHideHandlesUI(true);}},_onHandleMouseOver:function(L){var A=this;var B=L.currentTarget;var R=A._extractHandleName(B);if(!A.get(b)){A.set(AA,R);A.set(AI,B);A._setActiveHandlesUI(true);A._updateChangeHandleInfo(R);}},_onHandleMouseOut:function(B){var A=this;if(!A.get(b)){A._setActiveHandlesUI(false);}}}});Ae.each(f,function(B,A){O.ATTRS[A7(B)]={setter:function(){return this._buildHandle(B);},value:null,writeOnce:true};});Ae.Resize=O;},"@VERSION@",{requires:["aui-base","dd-constrain","dd-drag","dd-drop","substitute"],skinnable:true});