-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathngListSelect.min.js
1 lines (1 loc) · 10.6 KB
/
ngListSelect.min.js
1
(function(b,a,c){a.module("ngListSelect",[]).run(["$templateCache",function(d){var e="<div class='ngListSelect container' style='margin-left: 0;' ng-style='containerStyle'><div style='float:left; width:40%'><div ng-style='panelCssStyle' ng-class='panelClass' class='panel'><div class='panel-heading' ng-style='panelCssStyle' ng-class='panelClass'><b><span ng-bind='availableText'></span></b></div><select size='9' ng-style='dropdownStyle' style='width: 100%; vertical-align: top; color: black;' ng-model='leftMouseSelectedItems' ng-options='{{leftSelectNgOption}}' ng-dblclick='addItemsToRight()' multiple></select></div></div><div style='display: inline-block; width: 20%; text-align: center'><br/><br/><div class='btn-group-vertical'><button ng-click='addItemsToRight()' ng-class='buttonClass' ng-style='buttonCssStyle' class='btn' style='width:60px; height: 34px; line-height: 17px; vertical-align:middle;outline:none !important;margin-bottom:0px'><i class='glyphicon glyphicon-triangle-right'></i></button><button ng-click='addItemsToLeft()' ng-class='buttonClass' ng-style='buttonCssStyle' class='btn' style='width:60px; height: 34px; line-height: 17px; vertical-align:middle;outline:none !important;margin-bottom:0px'><i class='glyphicon glyphicon-triangle-left'></i></button><button ng-click='addAllItemsToRight()' ng-class='buttonClass' ng-style='buttonCssStyle' class='btn' style='width:60px; height: 34px; line-height: 17px; vertical-align:middle;outline:none !important;margin-bottom:0px'><i class='glyphicon glyphicon-forward'></i></button><button ng-click='addAllItemsToLeft()' ng-class='buttonClass' ng-style='buttonCssStyle' class='btn' style='width:60px; height: 34px; line-height: 17px; vertical-align:middle;outline:none !important;margin-bottom:0px'><i class='glyphicon glyphicon-backward'></i></button></div></div><div style='float: right; width: 40%'><div ng-style='panelCssStyle' ng-class='panelClass' class='panel'><div class='panel-heading' ng-style='panelCssStyle' ng-class='panelClass'><b><span ng-bind='selectedText'></span></b></div><select size='9' ng-style='dropdownStyle' style='width: 100%; vertical-align: top; color: black;' id='selectedlist' ng-model='rightMouseSelectedItems' ng-options='{{rightSelectNgOption}}' ng-dblclick='addItemsToLeft()' multiple></select></div><div class='btn-group' style='float: left; margin-left: 13%; display: inline-flex;' ng-hide='noSortButtons'><button ng-disabled='isSelectedOptionDisabled' ng-click='addItemsToTop()' ng-class='buttonClass' ng-style='buttonCssStyle' class='btn' style='width:60px; height: 34px; line-height: 17px; outline:none !important;margin-bottom:7px;'><i class='glyphicon glyphicon-triangle-top'></i></button><button ng-disabled='isSelectedOptionDisabled' ng-click='addItemsToDown()' ng-class='buttonClass' ng-style='buttonCssStyle' class='btn' style='width:60px; height: 34px; line-height: 17px; outline:none !important;margin-bottom:7px;'><i class='glyphicon glyphicon-triangle-bottom'></i></button><button ng-disabled='isSelectedOptionDisabled' title='Ascending/ Descending' ng-click='setAscendingDescendingOrder()' ng-class='buttonClass' ng-style='buttonCssStyle' class='btn' style='width:60px; height: 34px; line-height: 17px; outline:none !important;margin-bottom:7px;'><i ng-class='orderButtonIcon'></i></button></div></div></div>";d.put("ngListSelect.html",e)}]).directive("ngListSelect",["$filter",function(d){return{restrict:"E",replace:true,scope:{selectedListItems:"=selectedList",availableListItems:"=availableList",key:"@key",buttonStyle:"@buttonStyle",panelStyle:"@panelStyle",height:"@height",width:"@width",availableLabel:"@availableLabel",selectedLabel:"@selectedLabel",noSortButtons:"@noSortButtons"},templateUrl:"ngListSelect.html",compile:function(f,e){return{pre:function(j,l,i){j.noSortButtons=a.isUndefined(j.noSortButtons)?false:true;j.availableText=a.isUndefined(j.availableLabel)?"Available":j.availableLabel;j.selectedText=a.isUndefined(j.selectedLabel)?"Selected":j.selectedLabel;j.height=a.isUndefined(j.height)?"144px":j.height;j.width=a.isUndefined(j.width)?"640px":j.width;j.buttonStyle=a.isUndefined(j.buttonStyle)?"alpha":j.buttonStyle;j.buttonClass=n(j.buttonStyle,"button");j.panelStyle=a.isUndefined(j.panelStyle)?"alpha":j.panelStyle;j.panelClass=n(j.panelStyle,"panel");j.leftMouseSelectedItems=[];j.rightMouseSelectedItems=[];j.dropdownStyle={height:j.height};j.containerStyle={width:j.width};j.ascendingOrderFlag=true;j.orderButtonIcon="glyphicon glyphicon-sort-by-alphabet";if(j.availableListItems[0] instanceof Object){j.leftSelectNgOption="item as item."+j.key+" for item in availableListItems | orderBy:'"+j.key+"'";j.rightSelectNgOption="item as item."+j.key+" for item in selectedListItems";j.availableListItems=m(j.availableListItems,j.key)}else{j.leftSelectNgOption="item as item for item in availableListItems | orderBy:'toString()'";j.rightSelectNgOption="item as item for item in selectedListItems";j.availableListItems=m(j.availableListItems)}function n(p,q){var r={},o={};switch(p){case"pearl":q==="button"?(r["btn-default"]=true):(r["panel-default"]=true);break;case"blue":q==="button"?(r["btn-primary"]=true):(r["panel-primary"]=true);break;case"alpha":o={};o["background-color"]="hsl(193, 32%, 49%) !important";o["background-repeat"]="repeat-x";o.filter='progid:DXImageTransform.Microsoft.gradient(startColorstr="#b8d3da", endColorstr="#5493a4")';o["background-image"]="-khtml-gradient(linear, left top, left bottom, from(#b8d3da), to(#5493a4))";o["background-image"]="-moz-linear-gradient(top, #b8d3da, #5493a4)";o["background-image"]="-ms-linear-gradient(top, #b8d3da, #5493a4)";o["background-image"]="-webkit-gradient(linear, left top, left bottom, color-stop(0%, #b8d3da), color-stop(100%, #5493a4))";o["background-image"]="-webkit-linear-gradient(top, #b8d3da, #5493a4)";o["background-image"]="-o-linear-gradient(top, #b8d3da, #5493a4)";o["background-image"]="linear-gradient(#b8d3da, #5493a4)";o["border-color"]="#5493a4 #5493a4 hsl(193, 32%, 41.5%)";o.color="#333 !important";o["text-shadow"]="0 1px 1px rgba(255, 255, 255, 0.49)";o["-webkit-font-smoothing"]="antialiased";q==="button"?(j.buttonCssStyle=o):(j.panelCssStyle=o);break;case"sand":o={};o["background-color"]="hsl(33, 32%, 49%) !important";o["background-repeat"]="repeat-x";o.filter='progid:DXImageTransform.Microsoft.gradient(startColorstr="#dacbb8", endColorstr="#a48054")';o["background-image"]="-khtml-gradient(linear, left top, left bottom, from(#dacbb8), to(#a48054))";o["background-image"]="-moz-linear-gradient(top, #dacbb8, #a48054)";o["background-image"]="-ms-linear-gradient(top, #dacbb8, #a48054)";o["background-image"]="-webkit-gradient(linear, left top, left bottom, color-stop(0%, #dacbb8), color-stop(100%, #a48054))";o["background-image"]="-webkit-linear-gradient(top, #dacbb8, #a48054)";o["background-image"]="-o-linear-gradient(top, #dacbb8, #a48054)";o["background-image"]="linear-gradient(#dacbb8, #a48054)";o["border-color"]="#a48054 #a48054 hsl(33, 32%, 41.5%)";o.color="#333 !important";o["text-shadow"]="0 1px 1px rgba(255, 255, 255, 0.49)";o["-webkit-font-smoothing"]="antialiased";q==="button"?(j.buttonCssStyle=o):(j.panelCssStyle=o);break;case"olive":o={};o["background-color"]="hsl(89, 32%, 49%) !important";o["background-repeat"]="repeat-x";o.filter='progid:DXImageTransform.Microsoft.gradient(startColorstr="#cadab8", endColorstr="#7ea454")';o["background-image"]="-khtml-gradient(linear, left top, left bottom, from(#cadab8), to(#7ea454))";o["background-image"]="-moz-linear-gradient(top, #cadab8, #7ea454)";o["background-image"]="-ms-linear-gradient(top, #cadab8, #7ea454)";o["background-image"]="-webkit-gradient(linear, left top, left bottom, color-stop(0%, #cadab8), color-stop(100%, #7ea454))";o["background-image"]="-webkit-linear-gradient(top, #cadab8, #7ea454)";o["background-image"]="-o-linear-gradient(top, #cadab8, #7ea454)";o["background-image"]="linear-gradient(#cadab8, #7ea454)";o["border-color"]="#7ea454 #7ea454 hsl(89, 32%, 41.5%)";o.color="#333 !important";o["text-shadow"]="0 1px 1px rgba(255, 255, 255, 0.49)";o["-webkit-font-smoothing"]="antialiased";q==="button"?(j.buttonCssStyle=o):(j.panelCssStyle=o);break;default:r[p]=true}return r}function m(s,q){if(s[0] instanceof Object){var o={};for(var p=0;p<s.length;p++){o[s[p][q]]=s[p]}s=[];for(var r in o){s.push(o[r])}return s}else{return s.sort().filter(function(u,v,t){return !v||u!=t[v-1]})}}function h(){if(j.selectedListItems[0] instanceof Object){j.selectedListItems=d("orderBy")(j.selectedListItems,j.key)}else{j.selectedListItems=d("orderBy")(j.selectedListItems,"toString()")}}j.setAscendingDescendingOrder=function(){if(j.ascendingOrderFlag){j.orderButtonIcon="glyphicon glyphicon-sort-by-alphabet-alt";j.ascendingOrderFlag=false;if(j.selectedListItems[0] instanceof Object){j.selectedListItems=g(j.key,true)}else{j.selectedListItems=g("toString()",true)}}else{j.orderButtonIcon="glyphicon glyphicon-sort-by-alphabet";j.ascendingOrderFlag=true;if(j.selectedListItems[0] instanceof Object){j.selectedListItems=g(j.key,false)}else{j.selectedListItems=g("toString()",false)}}};function g(p,o){return d("orderBy")(j.selectedListItems,p,o)}j.addItemsToRight=function(){a.forEach(j.leftMouseSelectedItems,function(p,o){j.selectedListItems.push(p);a.forEach(j.availableListItems,function(q,r){if(j.availableListItems[0] instanceof Object){if(q[j.key]===p[j.key]){j.availableListItems.splice(r,1)}}else{if(q===p){j.availableListItems.splice(r,1)}}})});j.leftMouseSelectedItems=[];h();k()};j.addAllItemsToRight=function(){a.forEach(j.availableListItems,function(o,p){j.selectedListItems.push(o)});j.availableListItems=[];j.leftMouseSelectedItems=[];h();k()};j.addItemsToLeft=function(){a.forEach(j.rightMouseSelectedItems,function(o,p){j.availableListItems.push(o);a.forEach(j.selectedListItems,function(r,q){if(j.availableListItems[0] instanceof Object){if(r[j.key]===o[j.key]){j.selectedListItems.splice(q,1)}}else{if(r===o){j.selectedListItems.splice(q,1)}}})});j.rightMouseSelectedItems=[];k()};j.addAllItemsToLeft=function(){a.forEach(j.selectedListItems,function(p,o){j.availableListItems.push(p)});j.selectedListItems=[];j.rightMouseSelectedItems=[];k()};function k(){j.isSelectedOptionDisabled=j.selectedListItems.length<=0}j.addItemsToTop=function(){var o=-1;a.forEach(j.rightMouseSelectedItems,function(p,q){var r=j.selectedListItems.indexOf(p);if(r-1===o){o=r}else{if(r>0){var s=j.selectedListItems.splice(r,1);j.selectedListItems.splice(r-1,0,s[0])}}})};j.addItemsToDown=function(){var o=j.selectedListItems.length;a.forEach(j.rightMouseSelectedItems.concat().reverse(),function(p,q){var r=j.selectedListItems.indexOf(p);if(r+1===o){o=r}else{if(r<j.selectedListItems.length-1){var s=j.selectedListItems.splice(r,1);j.selectedListItems.splice(r+1,0,s[0])}}})};k()}}}}}])})(window,window.angular);