Alloy UI

aui-component  1.0.1

 
Filters
AUI.add("aui-data-set",function(B){var D=B.Lang;var C=function(){C.superclass.constructor.apply(this,arguments);};C.NAME="dataset";C.ATTRS={keys:{getter:function(E){var A=this;return A.keys;}},first:{getter:function(){var A=this;var E=A.values;return E[0];}},includeFunctions:{value:false},items:{value:null,getter:function(){var A=this;return A.collection||{};}},last:{getter:function(){var A=this;var E=A.values;return E[E.length-1];}},getKey:{lazyAdd:false,value:null,getter:function(E){var A=this;return E||A.getKey;},setter:function(E){var A=this;if(D.isFunction(E)){A.getKey=E;}return A.getKey;}},values:{getter:function(E){var A=this;return A.values;},readOnly:true}};B.extend(C,B.Base,{initializer:function(){var A=this;A.collection={};A.keys=[];A.values=[];A.length=0;A.publish("add",{defaultFn:A._defaultAddFn});A.publish("clear",{defaultFn:A._defaultClearFn});A.publish("remove",{defaultFn:A._defaultRemoveFn});A.publish("replace",{defaultFn:A._defaultReplaceFn});A.publish("sort",{defaultFn:A._defaultSortFn});},add:function(E,G){var A=this;if(arguments.length==1){G=E;E=A.getKey(G);}if(!D.isNull(E)&&!D.isUndefined(E)){var H=A.collection[E];if(!D.isUndefined(H)){return A.replace(E,G);}}var F=A.length;A.fire("add",{index:F,attrName:E,item:G,newVal:G});},addAll:function(I){var A=this;var E=arguments;var H=E.length;if(H==1){E=I;}if(H>1||D.isArray(I)){H=E.length;for(var F=0;F<H;F++){A.add(E[F]);}}else{for(var F in I){var G=I[F];A.add(F,G);}}},clear:function(){var A=this;A.fire("clear");},clone:function(){var A=this;var I=new C();var H=A.keys;var E=A.values;var G=E.length;for(var F=0;F<G;F++){I.add(H[F],E[F]);}I.set("getKey",A.get("getKey"));return I;},contains:function(E){var A=this;return A.indexOf(E)>-1;},containsKey:function(E){var A=this;return !(D.isUndefined(A.collection[E]));},each:function(F,E){var A=this;return A._each(A.values,F,E);},eachKey:function(F,E){var A=this;var G=A.keys;return A._each(G,F,E);},filter:function(J,A){var M=this;var I=new C();I.set("getKey",M.get("getKey"));var H=M.collection;var O=M.keys;var L=M.values;A=A||M;var K=I.collection;var F=I.values;var E=L.length;var N;for(var G=0;G<E;G++){N=L[G];if(J.call(A,N,G,H)){I.add(O[G],N);}}I.length=F.length;return I;},filterBy:function(H,I,G,E){var A=this;if(D.isUndefined(I)||D.isNull(I)||((D.isArray(I)||D.isString(I))&&!I.length)){return A.clone();}I=A._generateRegEx(I,G,E);var F=B.bind(A._keyFilter,A,H,I);return A.filter(F);},find:function(F,E){var A=this;return B.Array.find(A.values,F,E);},findIndex:function(H,G,K){var A=this;var J=A.collection;var E=A.values;var I=A.length;K=K||0;for(var F=K;F<I;F++){if(H.call(G,E[F],F,J)){return F;}}return -1;},findIndexBy:function(H,I,J,G,E){var A=this;if(D.isUndefined(I)||D.isNull(I)||((D.isArray(I)||D.isString(I))&&!I.length)){return -1;}I=A._generateRegEx(I,G,E);var F=B.bind(A._keyFilter,A,H,I);return A.findIndex(F,null,J);},getKey:function(E){var A=this;return(E.get&&E.get("id"))||E.id;},indexOf:function(E){var A=this;return B.Array.indexOf(A.values,E);},indexOfKey:function(E){var A=this;return B.Array.indexOf(A.keys,E);},insert:function(E,F,G){var A=this;if(arguments.length==2){G=arguments[1];F=A.getKey(G);}if(A.containsKey(F)){A.removeKey(F);}A.fire("add",{index:E,attrName:F,item:G,newVal:G});},invoke:function(K,F){var A=this;var E=A.values;var I=E.length;if(!F){F=[];}else{F=[].concat(F);}for(var G=0;G<I;G++){var H=E[G];var J=H&&H[K];if(D.isFunction(J)){J.apply(H,F);}}return A;},item:function(F){var A=this;var G;if(D.isNumber(F)){var E=A.values;G=E[F];}else{G=A.collection[F];}return G;},keySort:function(F,E){var A=this;A.fire("sort",{direction:F,fn:E||A._keySorter,type:"key"});},remove:function(F){var A=this;var E=A.indexOf(F);return A.removeAt(E);},removeAt:function(E){var A=this;if(E<A.length&&E>=0){var G=A.values[E];var F=A.keys[E];A.fire("remove",{index:E,attrName:F,item:G,prevVal:G});}},removeKey:function(F){var A=this;var E=A.indexOfKey(F);return A.removeAt(E);},replace:function(F,G){var A=this;if(arguments.length==1){G=F;F=A.getKey(G);}var H=A.collection[F];if(D.isUndefined(F)||D.isNull(F)||D.isUndefined(H)){return A.add(F,G);}var E=A.indexOfKey(F);A.fire("replace",{attrName:F,index:E,item:G,prevVal:H,newVal:G});},size:function(){var A=this;return A.length;},slice:function(G,E){var A=this;var F=A.values;return F.slice.apply(F,arguments);},sort:function(F,E){var A=this;A.fire("sort",{direction:F,fn:E,type:"value"});},_defaultAddFn:function(G){var A=this;var F=G.attrName;var H=G.item;var E=G.index;if(!D.isNull(F)&&!D.isUndefined(F)){if(A.get("includeFunctions")||!D.isFunction(H)){A.collection[F]=H;}}A.keys.splice(E,0,F);A.values.splice(E,0,H);++A.length;},_defaultClearFn:function(E){var A=this;A.collection={};A.keys=[];A.values=[];A.length=0;},_defaultRemoveFn:function(H){var A=this;var E=H.index;var I=H.item;var F=H.attrName;var J=A.collection;var G=A.keys;A.values.splice(E,1);if(!D.isUndefined(F)){delete J[F];}G.splice(E,1);A.length--;},_defaultReplaceFn:function(F){var A=this;var E=F.attrName;var G=F.item;A.collection[E]=G;},_defaultSortFn:function(E){var A=this;A._sortBy(E.type,E.direction,E.fn);},_each:function(E,I,H){var A=this;var F=E.slice(0);var J=F.length;H=H||A;for(var G=0;G<J;G++){if(I.call(H,F[G],G,F)===false){return false;}}return true;},_generateRegEx:function(I,H,F){var E=this;if(!(I instanceof RegExp)){I=String(I);var A=[];if(H!==false){A.push("^");}A.push(I);var G;if(!F){G="i";}I=new RegExp(A.join(""),G);}return I;},_keyFilter:function(F,H,G,E,I){var A=this;return G&&H.test(G[F]);},_keySorter:function(H,F){var E=this;var G=String(H).toLowerCase();var A=String(F).toLowerCase();var I=0;if(G>A){I=1;}else{if(G<A){I=-1;}}return I;},_sortBy:function(M,I,H){var O=this;var J=1;var G=[];var Q=O.keys;var N=O.values;var A=N.length;H=H||B.Array.numericSort;if(String(I).toLowerCase()=="desc"){J=-1;}for(var E=0;E<A;E++){G.push({key:Q[E],value:N[E],index:E});}G.sort(function(S,R){var T=H(S[M],R[M])*J;if(T===0){T=1;if(S.index<R.index){T=-1;}}return T;});A=G.length;var F={};for(var E=0;
E<A;E++){var P=G[E];var L=P.key;var K=P.value;F[L]=K;Q[E]=L;N[E]=K;}O.collection=F;}});B.DataSet=C;},"@VERSION@",{skinnable:false,requires:["oop","collection","base"]});