Alloy UI

aui-portal-layout  1.0.0

 
Filters
AUI.add("aui-portal-layout",function(Y){var AO=Y.Lang,v=AO.isBoolean,b=AO.isFunction,y=AO.isObject,Q=AO.isString,K=AO.isValue,n=Math.ceil,I=Y.DD.DDM,X="append",AL="circle",F="dd",o="down",h="drag",N="dragNode",O="dragNodes",d="dropContainer",W="dropNodes",AB="groups",r="icon",C="indicator",P="l",e="lazyStart",l="left",p="marginBottom",T="marginTop",AK="node",z="offsetHeight",AA="offsetWidth",Z="placeholder",x="placeAfter",S="placeBefore",AM="portal-layout",a="prepend",AN="proxy",AD="proxyNode",J="r",AF="right",B=" ",q="target",AI="triangle",f="up",U="placeholderAlign",s="quadrantEnter",V="quadrantExit",AH="quadrantOver",AJ=0,w=0,c=0,H=0,g=function(A){return(A instanceof Y.NodeList);},m=function(){return Array.prototype.slice.call(arguments).join(B);},D=function(A){return g(A)?A:Y.all(A);},u=function(L,A){return parseInt(L.getStyle(A),10)||0;},M=Y.ClassNameManager.getClassName,k=M(AM,h,C),j=M(AM,h,C,r),AC=M(AM,h,C,r,l),G=M(AM,h,C,r,AF),E=M(AM,h,q,C),AE=M(r),AP=M(r,AL,AI,P),AG=M(r,AL,AI,J),i='<div class="'+k+'">'+'<div class="'+m(j,AC,AE,AG)+'"></div>'+'<div class="'+m(j,G,AE,AP)+'"></div>'+"<div>";var t=Y.Component.create({NAME:AM,ATTRS:{dd:{value:null,setter:function(L){var A=this;return Y.merge({bubbleTargets:A,groups:A.get(AB),startCentered:true,target:true},L);},validator:y},proxyNode:{setter:function(A){return Q(A)?Y.Node.create(A):A;}},dragNodes:{value:false,setter:D},dropContainer:{value:function(A){return A;},validator:b},dropNodes:{value:false,setter:D},groups:{value:[AM]},lazyStart:{value:false,validator:v},placeholder:{value:i,setter:function(L){var A=Q(L)?Y.Node.create(L):L;if(!A.inDoc()){Y.getBody().append(A.hide());}AJ=u(A,p);w=u(A,T);A.addClass(E);c=u(A,p);H=u(A,T);return A;}},proxy:{value:null,setter:function(R){var A=this;var L={moveOnEnd:false,positionProxy:false};if(A.get(AD)){L.borderStyle=null;}return Y.merge(L,R||{});}}},EXTENDS:Y.Base,prototype:{initializer:function(){var A=this;A.bindUI();},bindUI:function(){var A=this;A.publish(U,{defaultFn:A._defPlaceholderAlign,queuable:false,emitFacade:true,bubbles:true});A._bindDDEvents();A._bindDropZones();},addDragTarget:function(AR){var L=this;if(!I.getDrag(AR)){var A=L.get(F);var R=L.get(AN);A.node=AR;var AQ=new Y.DD.Drag(A).plug(Y.Plugin.DDProxy,R);}},addDropNode:function(R,L){var A=this;R=Y.one(R);if(!I.getDrop(R)){A.addDropTarget(new Y.DD.Drop(Y.merge({bubbleTargets:A,node:R},L)));}},addDropTarget:function(L){var A=this;L.addToGroup(A.get(AB));},alignPlaceholder:function(R,L){var A=this;var AQ=A.get(Z);if(!A.lazyEvents){AQ.show();}A._syncPlaceholderSize();AQ.setXY(A.getPlaceholderXY(R,L));},calculateDirections:function(R){var L=this;var AQ=L.lastY;var AR=L.lastX;var A=R.lastXY[0];var AS=R.lastXY[1];if(A!=AR){L.XDirection=(A<AR)?l:AF;}if(AS!=AQ){L.YDirection=(AS<AQ)?f:o;}L.lastX=A;L.lastY=AS;},calculateQuadrant:function(AV,L){var AY=this;var AS=1;var AX=L.region;var AU=AV.mouseXY;var AR=AU[0];var AQ=AU[1];var AW=AX.top;var R=AX.left;var A=AW+(AX.bottom-AW)/2;var AT=R+(AX.right-R)/2;if(AQ<A){AS=(AR>AT)?1:2;}else{AS=(AR<AT)?3:4;}AY.quadrant=AS;return AS;},getPlaceholderXY:function(AT,L){var AX=this;var AW=AX.get(Z);var AR=AJ;var A=w;if(L){AR=c;A=H;}AW.toggleClass(E,L);var AQ=n(AT.bottom);var R=n(AT.left);var AV=n(AT.top);var AU=R;var AS=(AX.quadrant<3)?(AV-(AW.get(z)+AR)):(AQ+A);return[AU,AS];},removeDropTarget:function(L){var A=this;L.removeFromGroup(A.get(AB));},_alignCondition:function(){var A=this;var AR=I.activeDrag;var R=A.activeDrop;if(AR&&R){var AQ=AR.get(AK);var L=R.get(AK);return !AQ.contains(L);}return true;},_bindDDEvents:function(){var A=this;A.get(O).each(function(R,L){A.addDragTarget(R);});A.on("drag:end",Y.bind(A._onDragEnd,A));A.on("drag:enter",Y.bind(A._onDragEnter,A));A.on("drag:exit",Y.bind(A._onDragExit,A));A.on("drag:over",Y.bind(A._onDragOver,A));A.on("drag:start",Y.bind(A._onDragStart,A));A.after("drag:start",Y.bind(A._afterDragStart,A));A.on(s,A._syncPlaceholderUI);A.on(V,A._syncPlaceholderUI);},_bindDropZones:function(){var A=this;A.get(W).each(function(R,L){A.addDropNode(R);});},_defPlaceholderAlign:function(AR){var A=this;var R=A.activeDrop;var AS=A.get(Z);if(R&&AS){var AQ=R.get("node");var L=!!AQ.dd;A.lastAlignDrop=R;A.alignPlaceholder(R.region,L);}},_evOutput:function(){var A=this;return{drag:I.activeDrag,drop:A.activeDrop,quadrant:A.quadrant,XDirection:A.XDirection,YDirection:A.YDirection};},_fireQuadrantEvents:function(){var A=this;var AQ=A._evOutput();var R=A.lastQuadrant;var L=A.quadrant;if(L!=R){if(R){A.fire(V,Y.merge({lastDrag:A.lastDrag,lastDrop:A.lastDrop,lastQuadrant:A.lastQuadrant,lastXDirection:A.lastXDirection,lastYDirection:A.lastYDirection},AQ));}A.fire(s,AQ);}A.fire(AH,AQ);A.lastDrag=I.activeDrag;A.lastDrop=A.activeDrop;A.lastQuadrant=L;A.lastXDirection=A.XDirection;A.lastYDirection=A.YDirection;},_getAppendNode:function(){return I.activeDrag.get(AK);},_positionNode:function(AR){var A=this;var AQ=A.lastAlignDrop||A.activeDrop;if(AQ){var AT=A._getAppendNode();var L=AQ.get(AK);var R=K(L.dd);var AS=(A.quadrant<3);if(A._alignCondition()){if(R){L[AS?S:x](AT);}else{var AU=A.get(d).apply(A,[L]);AU[AS?a:X](AT);}}}},_syncPlaceholderUI:function(L){var A=this;if(A._alignCondition()){A.fire(U,{drop:A.activeDrop,originalEvent:L});}},_syncPlaceholderSize:function(){var A=this;var L=A.activeDrop.get(AK);var R=A.get(Z);if(R){R.set(AA,L.get(AA));}},_syncProxyNodeUI:function(R){var A=this;var AQ=I.activeDrag.get(N);var L=A.get(AD);if(L&&!L.compareTo(AQ)){AQ.append(L);A._syncProxyNodeSize();}},_syncProxyNodeSize:function(){var A=this;var R=I.activeDrag.get(AK);var L=A.get(AD);if(R&&L){L.set(z,R.get(z));L.set(AA,R.get(AA));}},_afterDragStart:function(L){var A=this;if(A.get(AN)){A._syncProxyNodeUI(L);}},_onDragEnd:function(R){var A=this;var AQ=A.get(Z);var L=A.get(AD);if(!A.lazyEvents){A._positionNode(R);}if(L){L.remove();}if(AQ){AQ.hide();}A.lastQuadrant=null;A.lastXDirection=null;A.lastYDirection=null;},_onDragEnter:function(L){var A=this;A.activeDrop=I.activeDrop;if(A.lazyEvents&&A.lastActiveDrop){A.lazyEvents=false;
A._syncPlaceholderUI(L);}if(!A.lastActiveDrop){A.lastActiveDrop=I.activeDrop;}},_onDragExit:function(L){var A=this;A._syncPlaceholderUI(L);A.activeDrop=I.activeDrop;A.lastActiveDrop=I.activeDrop;},_onDragOver:function(R){var A=this;var L=R.drag;if(A.activeDrop==I.activeDrop){A.calculateDirections(L);A.calculateQuadrant(L,A.activeDrop);A._fireQuadrantEvents();}},_onDragStart:function(L){var A=this;if(A.get(e)){A.lazyEvents=true;}A.lastActiveDrop=null;A.activeDrop=I.activeDrop;}}});Y.PortalLayout=t;},"@VERSION@",{skinnable:true,requires:["aui-base","dd"]});