!function(t){"use strict";t.module("smart-table",[]).run(["$templateCache",function(t){t.put("template/smart-table/pagination.html",'
')}])}(angular),function(t,e){"use strict";t.module("smart-table").controller("stTableController",["$scope","$parse","$filter","$attrs",function(t,a,s,n){function i(t){return[].concat(t)}function r(){d=i(c(t)),b===!0&&m.pipe()}var c,l,u=n.stTable,o=a(u),p=o.assign,g=s("orderBy"),f=s("filter"),d=i(o(t)),h={sort:{},search:{},pagination:{start:0}},b=!0,m=this;n.stSafeSrc&&(c=a(n.stSafeSrc),t.$watch(function(){var e=c(t);return e?e.length:0},function(t,e){t!==e&&r()}),t.$watch(function(){return c(t)},function(t,e){t!==e&&r()})),this.sortBy=function(t,e){h.sort.predicate=t,h.sort.reverse=e===!0,h.pagination.start=0,this.pipe()},this.search=function(t,e){var a=h.search.predicateObject||{},s=e?e:"$";a[s]=t,t||delete a[s],h.search.predicateObject=a,h.pagination.start=0,this.pipe()},this.pipe=function(){var a=h.pagination,s=h.search.predicateObject?f(d,h.search.predicateObject):d;h.sort.predicate&&(s=g(s,h.sort.predicate,h.sort.reverse)),a.number!==e&&(a.numberOfPages=s.length>0?Math.ceil(s.length/a.number):1,a.start=a.start>=s.length?(a.numberOfPages-1)*a.number:a.start,s=s.slice(a.start,a.start+a.number)),p(t,s)},this.select=function(t,a){var s=d,n=s.indexOf(t);-1!==n&&("single"===a?(t.isSelected=t.isSelected!==!0,l&&(l.isSelected=!1),l=t.isSelected===!0?t:e):s[n].isSelected=!s[n].isSelected)},this.slice=function(t,e){h.pagination.start=t,h.pagination.number=e,this.pipe()},this.tableState=function(){return h},this.setFilterFunction=function(t){f=s(t)},this.setSortFunction=function(t){g=s(t)},this.preventPipeOnWatch=function(){b=!1}}]).directive("stTable",function(){return{restrict:"A",controller:"stTableController",link:function(){}}})}(angular),function(t){"use strict";t.module("smart-table").directive("stSearch",["$timeout",function(t){return{require:"^stTable",scope:{predicate:"=?stSearch"},link:function(e,a,s,n){var i=n,r=null,c=s.stDelay||400;e.$watch("predicate",function(t,e){t!==e&&(n.tableState().search={},i.search(a[0].value||"",t))}),e.$watch(function(){return n.tableState().search},function(t){var s=e.predicate||"$";t.predicateObject&&t.predicateObject[s]!==a[0].value&&(a[0].value=t.predicateObject[s]||"")},!0),a.bind("input",function(a){a=a.originalEvent||a,null!==r&&t.cancel(r),r=t(function(){i.search(a.target.value,e.predicate||""),r=null},c)})}}}])}(angular),function(t){"use strict";t.module("smart-table").directive("stSelectRow",function(){return{restrict:"A",require:"^stTable",scope:{row:"=stSelectRow"},link:function(t,e,a,s){var n=a.stSelectMode||"single";e.bind("click",function(){t.$apply(function(){s.select(t.row,n)})}),t.$watch("row.isSelected",function(t){t===!0?e.addClass("st-selected"):e.removeClass("st-selected")})}}})}(angular),function(t,e){"use strict";t.module("smart-table").directive("stSort",["$parse",function(a){return{restrict:"A",require:"^stTable",link:function(s,n,i,r){function c(){o++,o%3===0&&i.stSkipNatural===e?(o=0,r.tableState().sort={},r.tableState().pagination.start=0,r.pipe()):r.sortBy(l,o%2===0)}var l=i.stSort,u=a(l),o=0,p=i.stClassAscent||"st-sort-ascent",g=i.stClassDescent||"st-sort-descent",f=[p,g];t.isFunction(u(s))&&(l=u(s)),n.bind("click",function(){l&&s.$apply(c)}),i.stSortDefault!==e&&(o="reverse"===i.stSortDefault?1:0,c()),s.$watch(function(){return r.tableState().sort},function(t){t.predicate!==l?(o=0,n.removeClass(p).removeClass(g)):(o=t.reverse===!0?2:1,n.removeClass(f[o%2]).addClass(f[o-1]))},!0)}}}])}(angular),function(t){"use strict";t.module("smart-table").directive("stPagination",function(){return{restrict:"EA",require:"^stTable",scope:{stItemsByPage:"=?",stDisplayedPages:"=?"},templateUrl:"template/smart-table/pagination.html",link:function(t,e,a,s){function n(){var e,a,n=s.tableState().pagination,i=1;for(t.currentPage=Math.floor(n.start/n.number)+1,i=Math.max(i,t.currentPage-Math.abs(Math.floor(t.stDisplayedPages/2))),e=i+t.stDisplayedPages,e>n.numberOfPages&&(e=n.numberOfPages+1,i=Math.max(1,e-t.stDisplayedPages)),t.pages=[],t.numPages=n.numberOfPages,a=i;e>a;a++)t.pages.push(a)}t.stItemsByPage=t.stItemsByPage?+t.stItemsByPage:10,t.stDisplayedPages=t.stDisplayedPages?+t.stDisplayedPages:5,t.currentPage=1,t.pages=[],t.$watch(function(){return s.tableState().pagination},n,!0),t.$watch("stItemsByPage",function(){t.selectPage(1)}),t.$watch("stDisplayedPages",n),t.selectPage=function(e){e>0&&e<=t.numPages&&s.slice((e-1)*t.stItemsByPage,t.stItemsByPage)},s.slice(0,t.stItemsByPage)}}})}(angular),function(t){"use strict";t.module("smart-table").directive("stPipe",function(){return{require:"stTable",scope:{stPipe:"="},link:{pre:function(e,a,s,n){t.isFunction(e.stPipe)&&(n.preventPipeOnWatch(),n.pipe=t.bind(n,e.stPipe,n.tableState()))}}}})}(angular);