diff --git a/CHANGELOG.md b/CHANGELOG.md index c83dc84a..d50ae48d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,83 @@ + +# 1.0.0 (2016-06-17) + + +## Breaking Changes + +- **ngTableParams:** due to [9b81066a](https://github.com/esvit/ng-table/commit/9b81066af8322c30a9d850063b977afce4f83f9e), + + +1) `ngTableAfterReloadData $scope` event removed + +Eventing no longer makes *direct* calls to `$scope.$emit`. Instead a strongly typed pub/sub service +(`ngTableEventsChannel`) is used. + +**To migrate** + +*Previously:* + +```js + $scope.$on('ngTableAfterReloadData', yourHandler) +``` + +*Now:* + +```js + ngTableEventsChannel.onAfterReloadData(yourHandler, $scope) +``` + +2) `$scope` removed from `NgTableParams` + +Because of 1. above, `NgTableParams` no longer requires a reference to `$scope`. + +A reference to `$scope` was largely an internal requirement so there should be no code change +required on your part. + +3) `getData` signature change + +The `$defer` paramater supplied to your `getData` method has been removed. Instead your +`getData` method should return an array or a promise that resolves to an array. + +**To migrate** + +*Previously:* + +```js + var tp = new NgTableParams({}, { getData: getData }); + + function getData($defer, params){ + // snip + $defer.resolve(yourDataArray); + } +``` + +*Now:* + +```js + var tp = new NgTableParams({}, { getData: getData }); + + function getData(params){ + // snip + return yourDataArrayOrPromise; + } +``` + +4) `ngTableParams` renamed to `NgTableParams` + +**To migrate** + +*Previously:* + +```js + var tp = new ngTableParams(); +``` + +*Now:* + +```js + var tp = new NgTableParams(); +``` + # 1.0.0-beta.9 (2015-11-10) diff --git a/bower.json b/bower.json index 345f25f3..0f522a9c 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "ng-table", - "version": "1.0.0-beta.9", + "version": "1.0.0", "main": [ "./dist/ng-table.js", "./dist/ng-table.css" diff --git a/dist/ng-table.js b/dist/ng-table.js index 3d7358b6..91f6d990 100644 --- a/dist/ng-table.js +++ b/dist/ng-table.js @@ -218,15 +218,15 @@ ///////// - function getTemplateUrl(filterValue, filterKey){ - if (angular.isObject(filterValue)){ - filterValue = filterValue.id; + function getTemplateUrl(filterDef, filterKey){ + if (angular.isObject(filterDef)){ + filterDef = filterDef.id; } - if (filterValue.indexOf('/') !== -1){ - return filterValue; + if (filterDef.indexOf('/') !== -1){ + return filterDef; } - return service.getUrlForAlias(filterValue, filterKey); + return service.getUrlForAlias(filterDef, filterKey); } function getUrlForAlias(aliasName/*, filterKey*/){ @@ -371,43 +371,6 @@ } })(); -/** - * ngTable: Table + Angular JS - * - * @author Vitalii Savchuk - * @url https://github.com/esvit/ng-table/ - * @license New BSD License - */ - -(function(){ - 'use strict'; - - // todo: remove shim after an acceptable depreciation period - - angular.module('ngTable') - .factory('ngTableGetDataBcShim', ngTableGetDataBcShim); - - ngTableGetDataBcShim.$inject = ['$q']; - - function ngTableGetDataBcShim($q){ - - return createWrapper; - - function createWrapper(getDataFn){ - return function getDataShim(/*args*/){ - var $defer = $q.defer(); - var pData = getDataFn.apply(this, [$defer].concat(Array.prototype.slice.call(arguments))); - if (!pData) { - // If getData resolved the $defer, and didn't promise us data, - // create a promise from the $defer. We need to return a promise. - pData = $defer.promise; - } - return pData; - } - } - } -})(); - /** * ngTable: Table + Angular JS * @@ -546,7 +509,7 @@ * @description Parameters manager for ngTable */ - angular.module('ngTable').factory('NgTableParams', ['$q', '$log', '$filter', 'ngTableDefaults', 'ngTableGetDataBcShim', 'ngTableDefaultGetData', 'ngTableEventsChannel', function($q, $log, $filter, ngTableDefaults, ngTableGetDataBcShim, ngTableDefaultGetData, ngTableEventsChannel) { + angular.module('ngTable').factory('NgTableParams', ['$q', '$log', '$filter', 'ngTableDefaults', 'ngTableDefaultGetData', 'ngTableEventsChannel', function($q, $log, $filter, ngTableDefaults, ngTableDefaultGetData, ngTableEventsChannel) { var isNumber = function(n) { return !isNaN(parseFloat(n)) && isFinite(n); }; @@ -676,16 +639,6 @@ newSettings.total = newSettings.dataset.length; } - // todo: remove the backwards compatibility shim and the following two if blocks - if (newSettings.getData && newSettings.getData.length > 1){ - // support the old getData($defer, params) api - newSettings.getDataFnAdaptor = ngTableGetDataBcShim; - } - if (newSettings.getGroups && newSettings.getGroups.length > 2){ - // support the old getGroups($defer, params) api - newSettings.getGroupsFnAdaptor = ngTableGetDataBcShim; - } - var originalDataset = settings.dataset; settings = angular.extend(settings, newSettings); @@ -1090,9 +1043,9 @@ isCommittedDataset = true; if (self.hasGroup()) { - pData = runInterceptorPipeline(runGetGroups); + pData = runInterceptorPipeline($q.when(settings.getGroups(self))); } else { - pData = runInterceptorPipeline(runGetData); + pData = runInterceptorPipeline($q.when(settings.getData(self))); } log('ngTable: reload data'); @@ -1108,11 +1061,6 @@ ngTableEventsChannel.publishAfterReloadData(self, data, oldData); self.reloadPages(); - // todo: remove after acceptable depreciation period - if (settings.$scope) { - settings.$scope.$emit('ngTableAfterReloadData'); - } - return data; }).catch(function(reason){ errParamsMemento = prevParamsMemento; @@ -1155,17 +1103,7 @@ } })(); - function runGetData(){ - var getDataFn = settings.getDataFnAdaptor(settings.getData); - return $q.when(getDataFn.call(settings, self)); - } - - function runGetGroups(){ - var getGroupsFn = settings.getGroupsFnAdaptor(settings.getGroups); - return $q.when(getGroupsFn.call(settings, self)); - } - - function runInterceptorPipeline(fetchFn){ + function runInterceptorPipeline(fetchedData){ var interceptors = settings.interceptors || []; return interceptors.reduce(function(result, interceptor){ @@ -1176,14 +1114,12 @@ }, function(reason){ return rejectFn(reason, self); }); - }, fetchFn()); + }, fetchedData); } function getDefaultSettingFns(){ return { - getDataFnAdaptor: angular.identity, - getGroupsFnAdaptor: angular.identity, getData: getData, getGroups: getGroups }; @@ -1231,8 +1167,7 @@ var settings = params.settings(); var originalDataOptions = settings.dataOptions; settings.dataOptions = { applyPaging: false }; - var adaptedFn = settings.getDataFnAdaptor(settings.getData); - var gotData = $q.when(adaptedFn.call(settings, params)); + var gotData = $q.when(settings.getData(params)); return gotData.then(function(data) { var groups = {}; angular.forEach(data, function(item) { @@ -1300,8 +1235,6 @@ * @description configuration settings for `NgTableParams` */ var settings = { - // todo: remove $scope after acceptable depreciation period as no longer required - $scope: null, // set by ngTable controller $loading: false, dataset: null, //allows data to be set when table is initialized total: 0, @@ -1332,15 +1265,6 @@ }; return NgTableParams; }]); - - /** - * @ngdoc service - * @name ngTableParams - * @description Backwards compatible shim for lowercase 'n' in NgTableParams - */ - angular.module('ngTable').factory('ngTableParams', ['NgTableParams', function(NgTableParams) { - return NgTableParams; - }]); })(); diff --git a/dist/ng-table.min.css b/dist/ng-table.min.css index 69e2fde3..77295533 100644 --- a/dist/ng-table.min.css +++ b/dist/ng-table.min.css @@ -1,3 +1,3 @@ -/*! ngTable v1.0.0-beta.9 by Vitalii Savchuk(esvit666@gmail.com) - https://github.com/esvit/ng-table - New BSD License */ +/*! ngTable v1.0.0 by Vitalii Savchuk(esvit666@gmail.com) - https://github.com/esvit/ng-table - New BSD License */ .ng-table th{text-align:center;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.ng-table th.sortable{cursor:pointer}.ng-table th.sortable .sort-indicator{padding-right:18px;position:relative}.ng-table th.sortable .sort-indicator:after,.ng-table th.sortable .sort-indicator:before{content:"";border-width:0 4px 4px;border-style:solid;border-color:#000 transparent;visibility:visible;right:5px;top:50%;position:absolute;opacity:.3;margin-top:-4px}.ng-table th.sortable .sort-indicator:before{margin-top:2px;border-bottom:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #000}.ng-table th.sortable .sort-indicator:hover:after,.ng-table th.sortable .sort-indicator:hover:before{opacity:1;visibility:visible}.ng-table th.sortable.sort-desc,.ng-table th.sortable.sort-asc{background-color:rgba(141,192,219,.25);text-shadow:0 1px 1px rgba(255,255,255,.75)}.ng-table th.sortable.sort-desc .sort-indicator:after,.ng-table th.sortable.sort-asc .sort-indicator:after{margin-top:-2px}.ng-table th.sortable.sort-desc .sort-indicator:before,.ng-table th.sortable.sort-asc .sort-indicator:before{visibility:hidden}.ng-table th.sortable.sort-asc .sort-indicator:after,.ng-table th.sortable.sort-asc .sort-indicator:hover:after{visibility:visible;filter:alpha(opacity=60);-khtml-opacity:.6;-moz-opacity:.6;opacity:.6}.ng-table th.sortable.sort-desc .sort-indicator:after{border-bottom:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #000;visibility:visible;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;filter:alpha(opacity=60);-khtml-opacity:.6;-moz-opacity:.6;opacity:.6}.ng-table th.filter .input-filter{margin:0;display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.ng-table .ng-table-group-header th{text-align:left}.ng-table .ng-table-group-selector{display:block}.ng-table .ng-table-group-close,.ng-table .ng-table-group-toggle{float:right}.ng-table .ng-table-group-toggle{margin-right:5px}@media only screen and (max-width:800px){.ng-table-responsive{border-bottom:1px solid #999}.ng-table-responsive tr{border-top:1px solid #999;border-left:1px solid #999;border-right:1px solid #999}.ng-table-responsive td:before{position:absolute;padding:8px;left:0;top:0;width:50%;white-space:nowrap;text-align:left;font-weight:700}.ng-table-responsive thead tr th{text-align:left}.ng-table-responsive thead tr.ng-table-filters th{padding:0}.ng-table-responsive thead tr.ng-table-filters th form>div{padding:8px}.ng-table-responsive td{border:0;border-bottom:1px solid #eee;position:relative;padding-left:50%;white-space:normal;text-align:left}.ng-table-responsive td:before{content:attr(data-title-text)}.ng-table-responsive,.ng-table-responsive thead,.ng-table-responsive tbody,.ng-table-responsive th,.ng-table-responsive td,.ng-table-responsive tr{display:block}}.ng-table-pagination{margin-top:0}.ng-table-group-selector:before,.ng-table-group-selector:after,.filter:before,.filter:after{display:table;content:" "}.ng-table-group-selector:after,.filter:after{clear:both}.filter>.filter-cell{float:left;box-sizing:border-box}.filter-horizontal>.filter-cell{padding:0 2px}.filter-horizontal>.filter-cell:first-child{padding-left:0}.filter-horizontal>.filter-cell:last-child,.filter-horizontal>.filter-cell.last{padding-right:0}.s12{width:100%}.s11{width:91.66666666666666%}.s10{width:83.33333333333334%}.s9{width:75%}.s8{width:66.66666666666666%}.s7{width:58.333333333333336%}.s6{width:50%}.s5{width:41.66666666666667%}.s4{width:33.33333333333333%}.s3{width:25%}.s2{width:16.666666666666664%}.s1{width:8.333333333333332%}@media all and (max-width:468px){.s12,.s11,.s10,.s9,.s8,.s7,.s6,.s5,.s4,.s3,.s2,.s1{width:100%}.filter>.filter-cell{padding:0}} \ No newline at end of file diff --git a/dist/ng-table.min.js b/dist/ng-table.min.js index bfedf049..2609c0d7 100644 --- a/dist/ng-table.min.js +++ b/dist/ng-table.min.js @@ -1,4 +1,4 @@ -/*! ngTable v1.0.0-beta.9 by Vitalii Savchuk(esvit666@gmail.com) - https://github.com/esvit/ng-table - New BSD License */ +/*! ngTable v1.0.0 by Vitalii Savchuk(esvit666@gmail.com) - https://github.com/esvit/ng-table - New BSD License */ -!function(a,b){"use strict";return"function"==typeof define&&define.amd?void define(["angular"],function(a){return b(a)}):b(a)}(window.angular||null,function(a){"use strict";return function(){a.module("ngTable",[])}(),function(){a.module("ngTable").value("ngTableDefaults",{params:{},settings:{}})}(),function(){function b(b){function c(b,c){var f=b.charAt(0).toUpperCase()+b.substring(1),g={};return g["on"+f]=d(b),g["publish"+f]=e(b),a.extend(c,g)}function d(c){return function(d){var e=a.identity,g=b;if(2===arguments.length?a.isFunction(arguments[1].$new)?g=arguments[1]:e=arguments[1]:arguments.length>2&&(g=arguments[1],e=arguments[2]),a.isObject(e)){var h=e;e=function(a){return a===h}}return g.$on("ngTable:"+c,function(a,b){if(!b.isNullInstance){var c=f(arguments,2),g=[b].concat(c);e.apply(this,g)&&d.apply(this,g)}})}}function e(a){return function(){var c=["ngTable:"+a].concat(Array.prototype.slice.call(arguments));b.$broadcast.apply(b,c)}}function f(a,b){return Array.prototype.slice.call(a,null==b?1:b)}var g={};return g=c("afterCreated",g),g=c("afterReloadData",g),g=c("datasetChanged",g),g=c("pagesChanged",g)}a.module("ngTable").factory("ngTableEventsChannel",b),b.$inject=["$rootScope"]}(),function(){function b(){function b(){c()}function c(){f=g}function d(b){var c=a.extend({},f,b);c.aliasUrls=a.extend({},f.aliasUrls,b.aliasUrls),f=c}function e(){function b(b,c){return a.isObject(b)&&(b=b.id),-1!==b.indexOf("/")?b:e.getUrlForAlias(b,c)}function c(a){return f.aliasUrls[a]||f.defaultBaseUrl+a+f.defaultExt}var d,e={config:d,getTemplateUrl:b,getUrlForAlias:c};return Object.defineProperty(e,"config",{get:function(){return d=d||a.copy(f)},enumerable:!0}),e}var f,g={defaultBaseUrl:"ng-table/filters/",defaultExt:".html",aliasUrls:{}};this.$get=e,this.resetConfigs=c,this.setConfig=d,b(),e.$inject=[]}a.module("ngTable").provider("ngTableFilterConfig",b),b.$inject=[]}(),function(){function b(){function b(b){function d(d){var e=d.settings().filterOptions;return a.isFunction(e.filterFn)?e.filterFn:b(e.filterFilterName||c.filterFilterName)}function e(){return b(c.sortingFilterName)}function f(a,b){if(!b.hasFilter())return a;var c=b.filter(!0),e=Object.keys(c),f=e.reduce(function(a,b){return a=j(a,c[b],b)},{}),g=d(b);return g.call(b,a,f,b.settings().filterOptions.filterComparator)}function g(a,b){var c=a.slice((b.page()-1)*b.count(),b.page()*b.count());return b.total(a.length),c}function h(a,b){var c=b.orderBy(),d=e(b);return c.length?d(a,c):a}function i(b,c){if(null==b)return[];var d=a.extend({},k,c.settings().dataOptions),e=d.applyFilter?f(b,c):b,i=d.applySort?h(e,c):e;return d.applyPaging?g(i,c):i}function j(a,b,c){var d=c.split("."),e=a,f=d[d.length-1],g=e,h=d.slice(0,d.length-1);return h.forEach(function(a){g.hasOwnProperty(a)||(g[a]={}),g=g[a]}),g[f]=b,e}var k={applyFilter:!0,applySort:!0,applyPaging:!0};return i.applyPaging=g,i.getFilterFn=d,i.getOrderByFn=e,i}var c=this;c.$get=b,c.filterFilterName="filter",c.sortingFilterName="orderBy",b.$inject=["$filter"]}a.module("ngTable").provider("ngTableDefaultGetData",b),b.$inject=[]}(),function(){function b(a){function b(b){return function(){var c=a.defer(),d=b.apply(this,[c].concat(Array.prototype.slice.call(arguments)));return d||(d=c.promise),d}}return b}a.module("ngTable").factory("ngTableGetDataBcShim",b),b.$inject=["$q"]}(),function(){a.module("ngTable").factory("ngTableColumn",[function(){function b(b,d,f){var g=Object.create(b),h=c();for(var i in h)void 0===g[i]&&(g[i]=h[i]),a.isFunction(g[i])||!function(a){var c=function d(){return 1!==arguments.length||e(arguments[0])?b[a]:void d.assign(null,arguments[0])};c.assign=function(c,d){b[a]=d},g[a]=c}(i),function(c){var h=g[c];g[c]=function(){if(1!==arguments.length||e(arguments[0])){var c=arguments[0]||d,i=Object.create(c);return a.extend(i,{$column:g,$columns:f}),h.call(b,i)}h.assign(null,arguments[0])},h.assign&&(g[c].assign=h.assign)}(i);return g}function c(){return{"class":d(""),filter:d(!1),groupable:d(!1),filterData:a.noop,headerTemplateURL:d(!1),headerTitle:d(""),sortable:d(!1),show:d(!0),title:d(""),titleAlt:d("")}}function d(a){var b=a,c=function d(){return 1!==arguments.length||e(arguments[0])?b:void d.assign(null,arguments[0])};return c.assign=function(a,c){b=c},c}function e(b){return null!=b&&a.isFunction(b.$new)}return{buildColumn:b}}])}(),function(){a.module("ngTable").factory("NgTableParams",["$q","$log","$filter","ngTableDefaults","ngTableGetDataBcShim","ngTableDefaultGetData","ngTableEventsChannel",function(b,c,d,e,f,g,h){var i=function(a){return!isNaN(parseFloat(a))&&isFinite(a)},j=function(d,j){function k(b){var c=D.groupOptions&&D.groupOptions.defaultSort;if(a.isFunction(b))return null==b.sortDirection&&(b.sortDirection=c),b;if(a.isString(b)){var d={};return d[b]=c,d}if(a.isObject(b)){for(var e in b)null==b[e]&&(b[e]=c);return b}return b}function l(a){var b=[];for(var c in a)b.push(("asc"===a[c]?"+":"-")+c);return b}function m(){var b={params:C};return a.isFunction(C.group)&&(b.groupSortDirection=C.group.sortDirection),b}function n(){var b=C.filter&&C.filter.$,c=t&&t.params.filter&&t.params.filter.$;return!a.equals(b,c)}function o(){D.filterOptions.filterDelay===z.filterDelay&&D.total<=D.filterOptions.filterDelayThreshold&&D.getData===B.getData&&(D.filterOptions.filterDelay=0)}function p(){var a=D.getDataFnAdaptor(D.getData);return b.when(a.call(D,v))}function q(){var a=D.getGroupsFnAdaptor(D.getGroups);return b.when(a.call(D,v))}function r(a){var c=D.interceptors||[];return c.reduce(function(a,c){var d=c.response&&c.response.bind(c)||b.when,e=c.responseError&&c.responseError.bind(c)||b.reject;return a.then(function(a){return d(a,v)},function(a){return e(a,v)})},a())}function s(){function c(a){return g(a.settings().dataset,a)}function d(c){var d,f=c.group(),h=void 0;if(a.isFunction(f))d=f,h=f.sortDirection;else{var i=Object.keys(f)[0];h=f[i],d=function(a){return e(a,i)}}var j=c.settings(),k=j.dataOptions;j.dataOptions={applyPaging:!1};var m=j.getDataFnAdaptor(j.getData),n=b.when(m.call(j,c));return n.then(function(b){var e={};a.forEach(b,function(a){var b=d(a);e[b]=e[b]||{data:[],$hideRows:!j.groupOptions.isExpanded,value:b},e[b].data.push(a)});var f=[];for(var i in e)f.push(e[i]);if(h){var k=g.getOrderByFn(),m=l({value:h});f=k(f,m)}return g.applyPaging(f,c)})["finally"](function(){j.dataOptions=k})}function e(a,b){return"string"==typeof b&&(b=b.split(".")),void 0===a?void 0:0===b.length?a:null===a?void 0:e(a[b[0]],b.slice(1))}return{getDataFnAdaptor:a.identity,getGroupsFnAdaptor:a.identity,getData:c,getGroups:d}}"boolean"==typeof d&&(this.isNullInstance=!0);var t,u,v=this,w=!1,x=[],y=function(){D.debugMode&&c.debug&&c.debug.apply(c,arguments)},z={filterComparator:void 0,filterDelay:500,filterDelayThreshold:1e4,filterFilterName:void 0,filterFn:void 0,filterLayout:"stack"},A={defaultSort:"asc",isExpanded:!0},B=s();this.data=[],this.parameters=function(b,c){if(c=c||!1,a.isDefined(b)){for(var d in b){var e=b[d];if(c&&d.indexOf("[")>=0){for(var f=d.split(/\[(.*)\]/).reverse(),g="",h=0,j=f.length;j>h;h++){var l=f[h];if(""!==l){var m=e;e={},e[g=l]=i(m)?parseFloat(m):m}}"sorting"===g&&(C[g]={}),C[g]=a.extend(C[g]||{},e[g])}else C[d]="group"===d?k(b[d]):i(b[d])?parseFloat(b[d]):b[d]}return y("ngTable: set parameters",C),this}return C},this.settings=function(b){if(a.isDefined(b)){b.filterOptions&&(b.filterOptions=a.extend({},D.filterOptions,b.filterOptions)),b.groupOptions&&(b.groupOptions=a.extend({},D.groupOptions,b.groupOptions)),a.isArray(b.dataset)&&(b.total=b.dataset.length),b.getData&&b.getData.length>1&&(b.getDataFnAdaptor=f),b.getGroups&&b.getGroups.length>2&&(b.getGroupsFnAdaptor=f);var c=D.dataset;D=a.extend(D,b),a.isArray(b.dataset)&&o();var d=b.hasOwnProperty("dataset")&&b.dataset!=c;if(d){w&&this.page(1),w=!1;var e=function(){h.publishDatasetChanged(v,b.dataset,c)};x?x.push(e):e()}return y("ngTable: set settings",D),this}return D},this.page=function(b){return a.isDefined(b)?this.parameters({page:b}):C.page},this.total=function(b){return a.isDefined(b)?this.settings({total:b}):D.total},this.count=function(b){return a.isDefined(b)?this.parameters({count:b,page:1}):C.count},this.filter=function(b){if(a.isDefined(b)&&a.isObject(b))return this.parameters({filter:b,page:1});if(b===!0){for(var c=Object.keys(C.filter),d={},e=0;ed?6:d,i=[],h=Math.ceil(b/c),h>1){i.push({type:"prev",number:Math.max(1,a-1),active:a>1}),i.push({type:"first",number:1,active:a>1,current:1===a}),f=Math.round((D.paginationMaxBlocks-D.paginationMinBlocks)/2),g=Math.max(2,a-f),e=Math.min(h-1,a+2*f-(a-g)),g=Math.max(2,g-(2*f-(e-g)));for(var j=g;e>=j;)i.push(j===g&&2!==j||j===e&&j!==h-1?{type:"more",active:!1}:{type:"page",number:j,active:a!==j,current:a===j}),j++;i.push({type:"last",number:h,active:a!==h,current:a===h}),i.push({type:"next",number:Math.min(h,a+1),active:h>a})}return i},this.isDataReloadRequired=function(){return!w||!a.equals(m(),t)||n()},this.hasFilter=function(){return Object.keys(this.filter(!0)).length>0},this.hasGroup=function(b,c){return null==b?a.isFunction(C.group)||Object.keys(C.group).length>0:a.isFunction(b)?null==c?C.group===b:C.group===b&&b.sortDirection===c:null==c?-1!==Object.keys(C.group).indexOf(b):C.group[b]===c},this.hasFilterChanges=function(){var b=t&&t.params.filter;return!a.equals(C.filter,b)||n()},this.url=function(b){function c(a,c){b?e.push(c+"="+encodeURIComponent(a)):e[c]=encodeURIComponent(a)}function d(b,c){return"group"===c?!0:a.isDefined(b)&&""!==b}b=b||!1;var e=b?[]:{};for(var f in C)if(C.hasOwnProperty(f)){var g=C[f],h=encodeURIComponent(f);if("object"==typeof g){for(var i in g)if(d(g[i],f)){var j=h+"["+encodeURIComponent(i)+"]";c(g[i],j)}}else!a.isFunction(g)&&d(g,f)&&c(g,h)}return e},this.reload=function(){var c=this,d=null;D.$loading=!0,t=a.copy(m()),w=!0,d=r(c.hasGroup()?q:p),y("ngTable: reload data");var e=c.data;return d.then(function(a){return D.$loading=!1,u=null,c.data=a,h.publishAfterReloadData(c,a,e),c.reloadPages(),D.$scope&&D.$scope.$emit("ngTableAfterReloadData"),a})["catch"](function(a){return u=t,b.reject(a)})},this.hasErrorState=function(){return!(!u||!a.equals(u,m()))},this.reloadPages=function(){var b;return function(){var c=b,d=v.generatePagesArray(v.page(),v.total(),v.count());a.equals(c,d)||(b=d,h.publishPagesChanged(this,d,c))}}();var C={page:1,count:10,filter:{},sorting:{},group:{}};a.extend(C,e.params);var D={$scope:null,$loading:!1,dataset:null,total:0,defaultSort:"desc",filterOptions:a.copy(z),groupOptions:a.copy(A),counts:[10,25,50,100],interceptors:[],paginationMaxBlocks:11,paginationMinBlocks:5,sortingIndicator:"span"};return this.settings(B),this.settings(e.settings),this.settings(j),this.parameters(d,!0),h.publishAfterCreated(this),a.forEach(x,function(a){a()}),x=null,this};return j}]),a.module("ngTable").factory("ngTableParams",["NgTableParams",function(a){return a}])}(),function(){a.module("ngTable").controller("ngTableController",["$scope","NgTableParams","$timeout","$parse","$compile","$attrs","$element","ngTableColumn","ngTableEventsChannel",function(b,c,d,e,f,g,h,i,j){function k(a){if(a&&!b.params.hasErrorState()){b.params.settings().$scope=b;var c=b.params,d=c.settings().filterOptions;if(c.hasFilterChanges()){var e=function(){c.page(1),c.reload()};d.filterDelay?r(e,d.filterDelay):e()}else c.reload()}}function l(){g.showFilter?b.$parent.$watch(g.showFilter,function(a){b.show_filter=a}):b.$watch(o,function(a){b.show_filter=a}),g.disableFilter&&b.$parent.$watch(g.disableFilter,function(a){b.$filterRow.disabled=a})}function m(){if(b.$groupRow={},g.showGroup){var a=e(g.showGroup);b.$parent.$watch(a,function(a){b.$groupRow.show=a}),a.assign&&b.$watch("$groupRow.show",function(c){a.assign(b.$parent,c)})}else b.$watch("params.hasGroup()",function(a){b.$groupRow.show=a})}function n(){return(b.$columns||[]).filter(function(a){return a.show(b)})}function o(){return b.$columns?p(b.$columns,function(a){return a.show(b)&&a.filter(b)}):!1}function p(a,b){for(var c=!1,d=0;d-1){var b=a.split(/\s+with\s+/);return{tableParams:b[0],columns:b[1]}}throw new Error("Parse error (expected example: ng-table-dynamic='tableParams with cols')")},this.setupBindingsToInternalScope=function(c){var d=e(c);b.$watch(d,function(c){a.isUndefined(c)||(b.paramsModel=d,b.params=c)},!1),l(),m()},q()}])}(),function(){a.module("ngTable").directive("ngTable",["$q","$parse",function(b,c){return{restrict:"A",priority:1001,scope:!0,controller:"ngTableController",compile:function(b){var d,e,f=[],g=0,h=[];return a.forEach(b.find("tr"),function(b){h.push(a.element(b))}),d=h.filter(function(a){return!a.hasClass("ng-table-group")})[0],e=h.filter(function(a){return a.hasClass("ng-table-group")})[0],d?(a.forEach(d.find("td"),function(b){var d=a.element(b);if(!d.attr("ignore-cell")||"true"!==d.attr("ignore-cell")){var h=function(a){return d.attr("x-data-"+a)||d.attr("data-"+a)||d.attr(a)},i=function(a,b){d.attr("x-data-"+a)?d.attr("x-data-"+a,b):d.attr("data"+a)?d.attr("data"+a,b):d.attr(a,b)},j=function(a){var b=h(a);if(!b)return void 0;var d,e=function(a){return void 0!==d?d:c(b)(a)};return e.assign=function(a,e){var f=c(b);f.assign?f.assign(a.$parent,e):d=e},e},k=h("title-alt")||h("title");k&&d.attr("data-title-text","{{"+k+"}}"),f.push({id:g++,title:j("title"),titleAlt:j("title-alt"),headerTitle:j("header-title"),sortable:j("sortable"),"class":j("header-class"),filter:j("filter"),groupable:j("groupable"),headerTemplateURL:j("header"),filterData:j("filter-data"),show:d.attr("ng-if")?j("ng-if"):void 0}),(e||d.attr("ng-if"))&&i("ng-if","$columns["+(f.length-1)+"].show(this)")}}),function(a,b,c,d){a.$columns=f=d.buildColumns(f),d.setupBindingsToInternalScope(c.ngTable),d.loadFilterData(f),d.compileDirectiveTemplates()}):void 0}}}])}(),function(){a.module("ngTable").directive("ngTableDynamic",[function(){return{restrict:"A",priority:1001,scope:!0,controller:"ngTableController",compile:function(b){var c;return a.forEach(b.find("tr"),function(b){b=a.element(b),b.hasClass("ng-table-group")||c||(c=b)}),c?(a.forEach(c.find("td"),function(b){var c=a.element(b),d=function(a){return c.attr("x-data-"+a)||c.attr("data-"+a)||c.attr(a)},e=d("title");e||c.attr("data-title-text","{{$columns[$index].titleAlt(this) || $columns[$index].title(this)}}");var f=c.attr("ng-if");f||c.attr("ng-if","$columns[$index].show(this)")}),function(a,b,c,d){var e=d.parseNgTableDynamicExpr(c.ngTableDynamic);d.setupBindingsToInternalScope(e.tableParams),d.compileDirectiveTemplates(),a.$watchCollection(e.columns,function(b){a.$columns=d.buildColumns(b),d.loadFilterData(a.$columns)})}):void 0}}}])}(),function(){function b(a){function b(b,c,d){var e=a(d.ngTableColumnsBinding).assign;e&&b.$watch("$columns",function(a){var c=(a||[]).slice(0);e(b,c)})}var c={restrict:"A",require:"ngTable",link:b};return c}a.module("ngTable").directive("ngTableColumnsBinding",b),b.$inject=["$parse"]}(),function(){a.module("ngTable").directive("ngTablePagination",["$compile","ngTableEventsChannel",function(b,c){return{restrict:"A",scope:{params:"=ngTablePagination",templateUrl:"="},replace:!1,link:function(d,e){c.onAfterReloadData(function(a){d.pages=a.generatePagesArray()},d,function(a){return a===d.params}),d.$watch("templateUrl",function(c){if(!a.isUndefined(c)){var f=a.element(document.createElement("div"));f.attr({"ng-include":"templateUrl"}),e.append(f),b(f)(d)}})}}}])}(),function(){function b(b,c){b.config=c,b.getFilterCellCss=function(a,b){if("horizontal"!==b)return"s12";var c=Object.keys(a).length,d=parseInt(12/c,10);return"s"+d},b.getFilterPlaceholderValue=function(b){return a.isObject(b)?b.placeholder:""}}a.module("ngTable").controller("ngTableFilterRowController",b),b.$inject=["$scope","ngTableFilterConfig"]}(),function(){function b(){var a={restrict:"E",replace:!0,templateUrl:"ng-table/filterRow.html",scope:!0,controller:"ngTableFilterRowController"};return a}a.module("ngTable").directive("ngTableFilterRow",b),b.$inject=[]}(),function(){function b(b){function c(){b.getGroupables=g,b.getGroupTitle=f,b.getVisibleColumns=h,b.groupBy=i,b.isSelectedGroup=j,b.toggleDetail=l,b.$watch("params.group()",k,!0)}function d(){var a;a=b.params.hasGroup(b.$selGroup,"asc")?"desc":b.params.hasGroup(b.$selGroup,"desc")?"":"asc",b.params.group(b.$selGroup,a)}function e(a){return b.$columns.filter(function(c){return c.groupable(b)===a})[0]}function f(c){return a.isFunction(c)?c.title:c.title(b)}function g(){var a=b.$columns.filter(function(a){return a.groupable(b)});return m.concat(a)}function h(){return b.$columns.filter(function(a){return a.show(b)})}function i(a){j(a)?d():b.params.group(a.groupable?a.groupable(b):a)}function j(a){return a.groupable?a.groupable(b)===b.$selGroup:a===b.$selGroup}function k(c){var d=e(b.$selGroup);if(d&&d.show.assign&&d.show.assign(b,!0),a.isFunction(c))m=[c],b.$selGroup=c,b.$selGroupTitle=c.title;else{var f=Object.keys(c||{})[0],g=e(f);g&&(b.$selGroupTitle=g.title(b),b.$selGroup=f,g.show.assign&&g.show.assign(b,!1))}}function l(){return b.params.settings().groupOptions.isExpanded=!b.params.settings().groupOptions.isExpanded,b.params.reload()}var m=[];c()}a.module("ngTable").controller("ngTableGroupRowController",b),b.$inject=["$scope"]}(),function(){function b(){var a={restrict:"E",replace:!0,templateUrl:"ng-table/groupRow.html",scope:!0,controller:"ngTableGroupRowController",controllerAs:"dctrl"};return a}a.module("ngTable").directive("ngTableGroupRow",b),b.$inject=[]}(),function(){function b(a){function b(b,c){var d=b.sortable&&b.sortable();if(d){var e=a.params.settings().defaultSort,f="asc"===e?"desc":"asc",g=a.params.sorting()&&a.params.sorting()[d]&&a.params.sorting()[d]===e,h=c.ctrlKey||c.metaKey?a.params.sorting():{};h[d]=g?f:e,a.params.parameters({sorting:h})}}a.sortBy=b}a.module("ngTable").controller("ngTableSorterRowController",b),b.$inject=["$scope"]}(),function(){function b(){var a={restrict:"E",replace:!0,templateUrl:"ng-table/sorterRow.html",scope:!0,controller:"ngTableSorterRowController"};return a}a.module("ngTable").directive("ngTableSorterRow",b),b.$inject=[]}(),function(){function b(){var a={restrict:"A",controller:c};return a}function c(b,c,d,e){function f(){j=c(d.ngTableSelectFilterDs)(b),b.$watch(function(){return j.data},g)}function g(){i(j).then(function(a){a&&!h(a)&&a.unshift({id:"",title:""}),a=a||[],b.$selectData=a})}function h(a){for(var b,c=0;c
'),a.put("ng-table/filters/number.html",' '),a.put("ng-table/filters/select-multiple.html",' '),a.put("ng-table/filters/select.html",' '),a.put("ng-table/filters/text.html",' '),a.put("ng-table/groupRow.html",' {{$selGroupTitle}} '),a.put("ng-table/header.html"," "),a.put("ng-table/pager.html",' '),a.put("ng-table/sorterRow.html",'
')}]),a.module("ngTable")}); +!function(a,b){"use strict";return"function"==typeof define&&define.amd?void define(["angular"],function(a){return b(a)}):b(a)}(window.angular||null,function(a){"use strict";return function(){a.module("ngTable",[])}(),function(){a.module("ngTable").value("ngTableDefaults",{params:{},settings:{}})}(),function(){function b(b){function c(b,c){var f=b.charAt(0).toUpperCase()+b.substring(1),g={};return g["on"+f]=d(b),g["publish"+f]=e(b),a.extend(c,g)}function d(c){return function(d){var e=a.identity,g=b;if(2===arguments.length?a.isFunction(arguments[1].$new)?g=arguments[1]:e=arguments[1]:arguments.length>2&&(g=arguments[1],e=arguments[2]),a.isObject(e)){var h=e;e=function(a){return a===h}}return g.$on("ngTable:"+c,function(a,b){if(!b.isNullInstance){var c=f(arguments,2),g=[b].concat(c);e.apply(this,g)&&d.apply(this,g)}})}}function e(a){return function(){var c=["ngTable:"+a].concat(Array.prototype.slice.call(arguments));b.$broadcast.apply(b,c)}}function f(a,b){return Array.prototype.slice.call(a,null==b?1:b)}var g={};return g=c("afterCreated",g),g=c("afterReloadData",g),g=c("datasetChanged",g),g=c("pagesChanged",g)}a.module("ngTable").factory("ngTableEventsChannel",b),b.$inject=["$rootScope"]}(),function(){function b(){function b(){c()}function c(){f=g}function d(b){var c=a.extend({},f,b);c.aliasUrls=a.extend({},f.aliasUrls,b.aliasUrls),f=c}function e(){function b(b,c){return a.isObject(b)&&(b=b.id),-1!==b.indexOf("/")?b:e.getUrlForAlias(b,c)}function c(a){return f.aliasUrls[a]||f.defaultBaseUrl+a+f.defaultExt}var d,e={config:d,getTemplateUrl:b,getUrlForAlias:c};return Object.defineProperty(e,"config",{get:function(){return d=d||a.copy(f)},enumerable:!0}),e}var f,g={defaultBaseUrl:"ng-table/filters/",defaultExt:".html",aliasUrls:{}};this.$get=e,this.resetConfigs=c,this.setConfig=d,b(),e.$inject=[]}a.module("ngTable").provider("ngTableFilterConfig",b),b.$inject=[]}(),function(){function b(){function b(b){function d(d){var e=d.settings().filterOptions;return a.isFunction(e.filterFn)?e.filterFn:b(e.filterFilterName||c.filterFilterName)}function e(){return b(c.sortingFilterName)}function f(a,b){if(!b.hasFilter())return a;var c=b.filter(!0),e=Object.keys(c),f=e.reduce(function(a,b){return a=j(a,c[b],b)},{}),g=d(b);return g.call(b,a,f,b.settings().filterOptions.filterComparator)}function g(a,b){var c=a.slice((b.page()-1)*b.count(),b.page()*b.count());return b.total(a.length),c}function h(a,b){var c=b.orderBy(),d=e(b);return c.length?d(a,c):a}function i(b,c){if(null==b)return[];var d=a.extend({},k,c.settings().dataOptions),e=d.applyFilter?f(b,c):b,i=d.applySort?h(e,c):e;return d.applyPaging?g(i,c):i}function j(a,b,c){var d=c.split("."),e=a,f=d[d.length-1],g=e,h=d.slice(0,d.length-1);return h.forEach(function(a){g.hasOwnProperty(a)||(g[a]={}),g=g[a]}),g[f]=b,e}var k={applyFilter:!0,applySort:!0,applyPaging:!0};return i.applyPaging=g,i.getFilterFn=d,i.getOrderByFn=e,i}var c=this;c.$get=b,c.filterFilterName="filter",c.sortingFilterName="orderBy",b.$inject=["$filter"]}a.module("ngTable").provider("ngTableDefaultGetData",b),b.$inject=[]}(),function(){a.module("ngTable").factory("ngTableColumn",[function(){function b(b,d,f){var g=Object.create(b),h=c();for(var i in h)void 0===g[i]&&(g[i]=h[i]),a.isFunction(g[i])||!function(a){var c=function d(){return 1!==arguments.length||e(arguments[0])?b[a]:void d.assign(null,arguments[0])};c.assign=function(c,d){b[a]=d},g[a]=c}(i),function(c){var h=g[c];g[c]=function(){if(1!==arguments.length||e(arguments[0])){var c=arguments[0]||d,i=Object.create(c);return a.extend(i,{$column:g,$columns:f}),h.call(b,i)}h.assign(null,arguments[0])},h.assign&&(g[c].assign=h.assign)}(i);return g}function c(){return{"class":d(""),filter:d(!1),groupable:d(!1),filterData:a.noop,headerTemplateURL:d(!1),headerTitle:d(""),sortable:d(!1),show:d(!0),title:d(""),titleAlt:d("")}}function d(a){var b=a,c=function d(){return 1!==arguments.length||e(arguments[0])?b:void d.assign(null,arguments[0])};return c.assign=function(a,c){b=c},c}function e(b){return null!=b&&a.isFunction(b.$new)}return{buildColumn:b}}])}(),function(){a.module("ngTable").factory("NgTableParams",["$q","$log","$filter","ngTableDefaults","ngTableDefaultGetData","ngTableEventsChannel",function(b,c,d,e,f,g){var h=function(a){return!isNaN(parseFloat(a))&&isFinite(a)},i=function(d,i){function j(b){var c=A.groupOptions&&A.groupOptions.defaultSort;if(a.isFunction(b))return null==b.sortDirection&&(b.sortDirection=c),b;if(a.isString(b)){var d={};return d[b]=c,d}if(a.isObject(b)){for(var e in b)null==b[e]&&(b[e]=c);return b}return b}function k(a){var b=[];for(var c in a)b.push(("asc"===a[c]?"+":"-")+c);return b}function l(){var b={params:z};return a.isFunction(z.group)&&(b.groupSortDirection=z.group.sortDirection),b}function m(){var b=z.filter&&z.filter.$,c=q&&q.params.filter&&q.params.filter.$;return!a.equals(b,c)}function n(){A.filterOptions.filterDelay===w.filterDelay&&A.total<=A.filterOptions.filterDelayThreshold&&A.getData===y.getData&&(A.filterOptions.filterDelay=0)}function o(a){var c=A.interceptors||[];return c.reduce(function(a,c){var d=c.response&&c.response.bind(c)||b.when,e=c.responseError&&c.responseError.bind(c)||b.reject;return a.then(function(a){return d(a,s)},function(a){return e(a,s)})},a)}function p(){function c(a){return f(a.settings().dataset,a)}function d(c){var d,g=c.group(),h=void 0;if(a.isFunction(g))d=g,h=g.sortDirection;else{var i=Object.keys(g)[0];h=g[i],d=function(a){return e(a,i)}}var j=c.settings(),l=j.dataOptions;j.dataOptions={applyPaging:!1};var m=b.when(j.getData(c));return m.then(function(b){var e={};a.forEach(b,function(a){var b=d(a);e[b]=e[b]||{data:[],$hideRows:!j.groupOptions.isExpanded,value:b},e[b].data.push(a)});var g=[];for(var i in e)g.push(e[i]);if(h){var l=f.getOrderByFn(),m=k({value:h});g=l(g,m)}return f.applyPaging(g,c)})["finally"](function(){j.dataOptions=l})}function e(a,b){return"string"==typeof b&&(b=b.split(".")),void 0===a?void 0:0===b.length?a:null===a?void 0:e(a[b[0]],b.slice(1))}return{getData:c,getGroups:d}}"boolean"==typeof d&&(this.isNullInstance=!0);var q,r,s=this,t=!1,u=[],v=function(){A.debugMode&&c.debug&&c.debug.apply(c,arguments)},w={filterComparator:void 0,filterDelay:500,filterDelayThreshold:1e4,filterFilterName:void 0,filterFn:void 0,filterLayout:"stack"},x={defaultSort:"asc",isExpanded:!0},y=p();this.data=[],this.parameters=function(b,c){if(c=c||!1,a.isDefined(b)){for(var d in b){var e=b[d];if(c&&d.indexOf("[")>=0){for(var f=d.split(/\[(.*)\]/).reverse(),g="",i=0,k=f.length;k>i;i++){var l=f[i];if(""!==l){var m=e;e={},e[g=l]=h(m)?parseFloat(m):m}}"sorting"===g&&(z[g]={}),z[g]=a.extend(z[g]||{},e[g])}else z[d]="group"===d?j(b[d]):h(b[d])?parseFloat(b[d]):b[d]}return v("ngTable: set parameters",z),this}return z},this.settings=function(b){if(a.isDefined(b)){b.filterOptions&&(b.filterOptions=a.extend({},A.filterOptions,b.filterOptions)),b.groupOptions&&(b.groupOptions=a.extend({},A.groupOptions,b.groupOptions)),a.isArray(b.dataset)&&(b.total=b.dataset.length);var c=A.dataset;A=a.extend(A,b),a.isArray(b.dataset)&&n();var d=b.hasOwnProperty("dataset")&&b.dataset!=c;if(d){t&&this.page(1),t=!1;var e=function(){g.publishDatasetChanged(s,b.dataset,c)};u?u.push(e):e()}return v("ngTable: set settings",A),this}return A},this.page=function(b){return a.isDefined(b)?this.parameters({page:b}):z.page},this.total=function(b){return a.isDefined(b)?this.settings({total:b}):A.total},this.count=function(b){return a.isDefined(b)?this.parameters({count:b,page:1}):z.count},this.filter=function(b){if(a.isDefined(b)&&a.isObject(b))return this.parameters({filter:b,page:1});if(b===!0){for(var c=Object.keys(z.filter),d={},e=0;ed?6:d,i=[],h=Math.ceil(b/c),h>1){i.push({type:"prev",number:Math.max(1,a-1),active:a>1}),i.push({type:"first",number:1,active:a>1,current:1===a}),f=Math.round((A.paginationMaxBlocks-A.paginationMinBlocks)/2),g=Math.max(2,a-f),e=Math.min(h-1,a+2*f-(a-g)),g=Math.max(2,g-(2*f-(e-g)));for(var j=g;e>=j;)i.push(j===g&&2!==j||j===e&&j!==h-1?{type:"more",active:!1}:{type:"page",number:j,active:a!==j,current:a===j}),j++;i.push({type:"last",number:h,active:a!==h,current:a===h}),i.push({type:"next",number:Math.min(h,a+1),active:h>a})}return i},this.isDataReloadRequired=function(){return!t||!a.equals(l(),q)||m()},this.hasFilter=function(){return Object.keys(this.filter(!0)).length>0},this.hasGroup=function(b,c){return null==b?a.isFunction(z.group)||Object.keys(z.group).length>0:a.isFunction(b)?null==c?z.group===b:z.group===b&&b.sortDirection===c:null==c?-1!==Object.keys(z.group).indexOf(b):z.group[b]===c},this.hasFilterChanges=function(){var b=q&&q.params.filter;return!a.equals(z.filter,b)||m()},this.url=function(b){function c(a,c){b?e.push(c+"="+encodeURIComponent(a)):e[c]=encodeURIComponent(a)}function d(b,c){return"group"===c?!0:a.isDefined(b)&&""!==b}b=b||!1;var e=b?[]:{};for(var f in z)if(z.hasOwnProperty(f)){var g=z[f],h=encodeURIComponent(f);if("object"==typeof g){for(var i in g)if(d(g[i],f)){var j=h+"["+encodeURIComponent(i)+"]";c(g[i],j)}}else!a.isFunction(g)&&d(g,f)&&c(g,h)}return e},this.reload=function(){var c=this,d=null;A.$loading=!0,q=a.copy(l()),t=!0,d=o(c.hasGroup()?b.when(A.getGroups(c)):b.when(A.getData(c))),v("ngTable: reload data");var e=c.data;return d.then(function(a){return A.$loading=!1,r=null,c.data=a,g.publishAfterReloadData(c,a,e),c.reloadPages(),a})["catch"](function(a){return r=q,b.reject(a)})},this.hasErrorState=function(){return!(!r||!a.equals(r,l()))},this.reloadPages=function(){var b;return function(){var c=b,d=s.generatePagesArray(s.page(),s.total(),s.count());a.equals(c,d)||(b=d,g.publishPagesChanged(this,d,c))}}();var z={page:1,count:10,filter:{},sorting:{},group:{}};a.extend(z,e.params);var A={$loading:!1,dataset:null,total:0,defaultSort:"desc",filterOptions:a.copy(w),groupOptions:a.copy(x),counts:[10,25,50,100],interceptors:[],paginationMaxBlocks:11,paginationMinBlocks:5,sortingIndicator:"span"};return this.settings(y),this.settings(e.settings),this.settings(i),this.parameters(d,!0),g.publishAfterCreated(this),a.forEach(u,function(a){a()}),u=null,this};return i}])}(),function(){a.module("ngTable").controller("ngTableController",["$scope","NgTableParams","$timeout","$parse","$compile","$attrs","$element","ngTableColumn","ngTableEventsChannel",function(b,c,d,e,f,g,h,i,j){function k(a){if(a&&!b.params.hasErrorState()){b.params.settings().$scope=b;var c=b.params,d=c.settings().filterOptions;if(c.hasFilterChanges()){var e=function(){c.page(1),c.reload()};d.filterDelay?r(e,d.filterDelay):e()}else c.reload()}}function l(){g.showFilter?b.$parent.$watch(g.showFilter,function(a){b.show_filter=a}):b.$watch(o,function(a){b.show_filter=a}),g.disableFilter&&b.$parent.$watch(g.disableFilter,function(a){b.$filterRow.disabled=a})}function m(){if(b.$groupRow={},g.showGroup){var a=e(g.showGroup);b.$parent.$watch(a,function(a){b.$groupRow.show=a}),a.assign&&b.$watch("$groupRow.show",function(c){a.assign(b.$parent,c)})}else b.$watch("params.hasGroup()",function(a){b.$groupRow.show=a})}function n(){return(b.$columns||[]).filter(function(a){return a.show(b)})}function o(){return b.$columns?p(b.$columns,function(a){return a.show(b)&&a.filter(b)}):!1}function p(a,b){for(var c=!1,d=0;d-1){var b=a.split(/\s+with\s+/);return{tableParams:b[0],columns:b[1]}}throw new Error("Parse error (expected example: ng-table-dynamic='tableParams with cols')")},this.setupBindingsToInternalScope=function(c){var d=e(c);b.$watch(d,function(c){a.isUndefined(c)||(b.paramsModel=d,b.params=c)},!1),l(),m()},q()}])}(),function(){a.module("ngTable").directive("ngTable",["$q","$parse",function(b,c){return{restrict:"A",priority:1001,scope:!0,controller:"ngTableController",compile:function(b){var d,e,f=[],g=0,h=[];return a.forEach(b.find("tr"),function(b){h.push(a.element(b))}),d=h.filter(function(a){return!a.hasClass("ng-table-group")})[0],e=h.filter(function(a){return a.hasClass("ng-table-group")})[0],d?(a.forEach(d.find("td"),function(b){var d=a.element(b);if(!d.attr("ignore-cell")||"true"!==d.attr("ignore-cell")){var h=function(a){return d.attr("x-data-"+a)||d.attr("data-"+a)||d.attr(a)},i=function(a,b){d.attr("x-data-"+a)?d.attr("x-data-"+a,b):d.attr("data"+a)?d.attr("data"+a,b):d.attr(a,b)},j=function(a){var b=h(a);if(!b)return void 0;var d,e=function(a){return void 0!==d?d:c(b)(a)};return e.assign=function(a,e){var f=c(b);f.assign?f.assign(a.$parent,e):d=e},e},k=h("title-alt")||h("title");k&&d.attr("data-title-text","{{"+k+"}}"),f.push({id:g++,title:j("title"),titleAlt:j("title-alt"),headerTitle:j("header-title"),sortable:j("sortable"),"class":j("header-class"),filter:j("filter"),groupable:j("groupable"),headerTemplateURL:j("header"),filterData:j("filter-data"),show:d.attr("ng-if")?j("ng-if"):void 0}),(e||d.attr("ng-if"))&&i("ng-if","$columns["+(f.length-1)+"].show(this)")}}),function(a,b,c,d){a.$columns=f=d.buildColumns(f),d.setupBindingsToInternalScope(c.ngTable),d.loadFilterData(f),d.compileDirectiveTemplates()}):void 0}}}])}(),function(){a.module("ngTable").directive("ngTableDynamic",[function(){return{restrict:"A",priority:1001,scope:!0,controller:"ngTableController",compile:function(b){var c;return a.forEach(b.find("tr"),function(b){b=a.element(b),b.hasClass("ng-table-group")||c||(c=b)}),c?(a.forEach(c.find("td"),function(b){var c=a.element(b),d=function(a){return c.attr("x-data-"+a)||c.attr("data-"+a)||c.attr(a)},e=d("title");e||c.attr("data-title-text","{{$columns[$index].titleAlt(this) || $columns[$index].title(this)}}");var f=c.attr("ng-if");f||c.attr("ng-if","$columns[$index].show(this)")}),function(a,b,c,d){var e=d.parseNgTableDynamicExpr(c.ngTableDynamic);d.setupBindingsToInternalScope(e.tableParams),d.compileDirectiveTemplates(),a.$watchCollection(e.columns,function(b){a.$columns=d.buildColumns(b),d.loadFilterData(a.$columns)})}):void 0}}}])}(),function(){function b(a){function b(b,c,d){var e=a(d.ngTableColumnsBinding).assign;e&&b.$watch("$columns",function(a){var c=(a||[]).slice(0);e(b,c)})}var c={restrict:"A",require:"ngTable",link:b};return c}a.module("ngTable").directive("ngTableColumnsBinding",b),b.$inject=["$parse"]}(),function(){a.module("ngTable").directive("ngTablePagination",["$compile","ngTableEventsChannel",function(b,c){return{restrict:"A",scope:{params:"=ngTablePagination",templateUrl:"="},replace:!1,link:function(d,e){c.onAfterReloadData(function(a){d.pages=a.generatePagesArray()},d,function(a){return a===d.params}),d.$watch("templateUrl",function(c){if(!a.isUndefined(c)){var f=a.element(document.createElement("div"));f.attr({"ng-include":"templateUrl"}),e.append(f),b(f)(d)}})}}}])}(),function(){function b(b,c){b.config=c,b.getFilterCellCss=function(a,b){if("horizontal"!==b)return"s12";var c=Object.keys(a).length,d=parseInt(12/c,10);return"s"+d},b.getFilterPlaceholderValue=function(b){return a.isObject(b)?b.placeholder:""}}a.module("ngTable").controller("ngTableFilterRowController",b),b.$inject=["$scope","ngTableFilterConfig"]}(),function(){function b(){var a={restrict:"E",replace:!0,templateUrl:"ng-table/filterRow.html",scope:!0,controller:"ngTableFilterRowController"};return a}a.module("ngTable").directive("ngTableFilterRow",b),b.$inject=[]}(),function(){function b(b){function c(){b.getGroupables=g,b.getGroupTitle=f,b.getVisibleColumns=h,b.groupBy=i,b.isSelectedGroup=j,b.toggleDetail=l,b.$watch("params.group()",k,!0)}function d(){var a;a=b.params.hasGroup(b.$selGroup,"asc")?"desc":b.params.hasGroup(b.$selGroup,"desc")?"":"asc",b.params.group(b.$selGroup,a)}function e(a){return b.$columns.filter(function(c){return c.groupable(b)===a})[0]}function f(c){return a.isFunction(c)?c.title:c.title(b)}function g(){var a=b.$columns.filter(function(a){return a.groupable(b)});return m.concat(a)}function h(){return b.$columns.filter(function(a){return a.show(b)})}function i(a){j(a)?d():b.params.group(a.groupable?a.groupable(b):a)}function j(a){return a.groupable?a.groupable(b)===b.$selGroup:a===b.$selGroup}function k(c){var d=e(b.$selGroup);if(d&&d.show.assign&&d.show.assign(b,!0),a.isFunction(c))m=[c],b.$selGroup=c,b.$selGroupTitle=c.title;else{var f=Object.keys(c||{})[0],g=e(f);g&&(b.$selGroupTitle=g.title(b),b.$selGroup=f,g.show.assign&&g.show.assign(b,!1))}}function l(){return b.params.settings().groupOptions.isExpanded=!b.params.settings().groupOptions.isExpanded,b.params.reload()}var m=[];c()}a.module("ngTable").controller("ngTableGroupRowController",b),b.$inject=["$scope"]}(),function(){function b(){var a={restrict:"E",replace:!0,templateUrl:"ng-table/groupRow.html",scope:!0,controller:"ngTableGroupRowController",controllerAs:"dctrl"};return a}a.module("ngTable").directive("ngTableGroupRow",b),b.$inject=[]}(),function(){function b(a){function b(b,c){var d=b.sortable&&b.sortable();if(d){var e=a.params.settings().defaultSort,f="asc"===e?"desc":"asc",g=a.params.sorting()&&a.params.sorting()[d]&&a.params.sorting()[d]===e,h=c.ctrlKey||c.metaKey?a.params.sorting():{};h[d]=g?f:e,a.params.parameters({sorting:h})}}a.sortBy=b}a.module("ngTable").controller("ngTableSorterRowController",b),b.$inject=["$scope"]}(),function(){function b(){var a={restrict:"E",replace:!0,templateUrl:"ng-table/sorterRow.html",scope:!0,controller:"ngTableSorterRowController"};return a}a.module("ngTable").directive("ngTableSorterRow",b),b.$inject=[]}(),function(){function b(){var a={restrict:"A",controller:c};return a}function c(b,c,d,e){function f(){j=c(d.ngTableSelectFilterDs)(b),b.$watch(function(){return j.data},g)}function g(){i(j).then(function(a){a&&!h(a)&&a.unshift({id:"",title:""}),a=a||[],b.$selectData=a})}function h(a){for(var b,c=0;c
'),a.put("ng-table/filters/number.html",' '),a.put("ng-table/filters/select-multiple.html",' '),a.put("ng-table/filters/select.html",' '),a.put("ng-table/filters/text.html",' '),a.put("ng-table/groupRow.html",' {{$selGroupTitle}} '),a.put("ng-table/header.html"," "),a.put("ng-table/pager.html",' '),a.put("ng-table/sorterRow.html",'
')}]),a.module("ngTable")}); //# sourceMappingURL=ng-table.min.js.map \ No newline at end of file diff --git a/dist/ng-table.min.js.map b/dist/ng-table.min.js.map index 684dcec5..7d9289a8 100644 --- a/dist/ng-table.min.js.map +++ b/dist/ng-table.min.js.map @@ -1 +1 @@ -{"version":3,"file":"ng-table.min.js","sources":["ng-table.js"],"names":["angular","factory","define","amd","window","module","value","params","settings","ngTableEventsChannel","$rootScope","addChangeEvent","eventName","target","fnName","charAt","toUpperCase","substring","event","createEventSubscriptionFn","createPublishEventFn","extend","handler","eventSelector","identity","scope","arguments","length","isFunction","$new","isObject","requiredPublisher","publisher","$on","isNullInstance","eventArgs","rest","fnArgs","concat","apply","this","Array","prototype","slice","call","$broadcast","array","n","events","$inject","ngTableFilterConfigProvider","init","resetConfigs","config","defaultConfig","setConfig","customConfig","mergeConfig","aliasUrls","ngTableFilterConfig","getTemplateUrl","filterValue","filterKey","id","indexOf","service","getUrlForAlias","aliasName","defaultBaseUrl","defaultExt","publicConfig","Object","defineProperty","get","copy","enumerable","$get","provider","ngTableDefaultGetDataProvider","ngTableDefaultGetData","$filter","getFilterFn","filterOptions","filterFn","filterFilterName","getOrderByFn","sortingFilterName","applyFilter","data","hasFilter","filter","filterKeys","keys","parsedFilter","reduce","result","key","setPath","filterComparator","applyPaging","pagedData","page","count","total","applySort","orderBy","orderByFn","getData","options","defaultDataOptions","dataOptions","fData","orderedData","obj","path","split","ret","lastKey","parentPathKeys","forEach","hasOwnProperty","ngTableGetDataBcShim","$q","createWrapper","getDataFn","$defer","defer","pData","promise","buildColumn","column","defaultScope","columns","extendedCol","create","defaults","createDefaults","prop","undefined","prop1","getterSetter","isScopeLike","assign","$scope","getterFn","context","$column","$columns","class","createGetterSetter","groupable","filterData","noop","headerTemplateURL","headerTitle","sortable","show","title","titleAlt","initialValue","newValue","object","$log","ngTableDefaults","isNumber","isNaN","parseFloat","isFinite","NgTableParams","baseParameters","baseSettings","parseGroup","group","defaultSort","groupOptions","sortDirection","isString","grp","convertSortToOrderBy","sorting","push","createComparableParams","groupSortDirection","hasGlobalSearchFieldChanges","currentVal","$","previousVal","prevParamsMemento","equals","optimizeFilterDelay","filterDelay","defaultFilterOptions","filterDelayThreshold","defaultSettingsFns","runGetData","getDataFnAdaptor","when","self","runGetGroups","getGroupsFn","getGroupsFnAdaptor","getGroups","runInterceptorPipeline","fetchFn","interceptors","interceptor","thenFn","response","bind","rejectFn","responseError","reject","then","reason","getDefaultSettingFns","dataset","groupFn","groupField","item","getPath","originalDataOptions","adaptedFn","gotData","groups","groupName","$hideRows","isExpanded","i","ks","errParamsMemento","isCommittedDataset","initialEvents","log","debugMode","debug","filterLayout","defaultGroupOptions","parameters","newParameters","parseParamsFromUrl","isDefined","reverse","len","name","v","newSettings","isArray","originalDataset","hasDatasetChanged","fireEvent","publishDatasetChanged","significantFilter","groupArray","sortArray","isSortBy","field","direction","generatePagesArray","currentPage","totalItems","pageSize","maxBlocks","maxPage","maxPivotPages","minPage","numPages","pages","Math","ceil","type","number","max","active","current","round","paginationMaxBlocks","paginationMinBlocks","min","isDataReloadRequired","hasGroup","hasFilterChanges","previousFilter","url","asString","collectValue","pairs","encodeURIComponent","isSignificantValue","subkey","pname","reload","$loading","oldData","publishAfterReloadData","reloadPages","$emit","hasErrorState","currentPages","oldPages","newPages","publishPagesChanged","counts","sortingIndicator","publishAfterCreated","controller","$timeout","$parse","$compile","$attrs","$element","ngTableColumn","onDataReloadStatusChange","newStatus","currentParams","delayFilter","setupFilterRowBindingsToInternalScope","showFilter","$parent","$watch","show_filter","hasVisibleFilterColumn","disableFilter","$filterRow","disabled","setupGroupRowBindingsToInternalScope","$groupRow","showGroup","showGroupGetter","getVisibleColumns","c","some","predicate","found","commonInit","bindDataToScope","newDatapage","visibleColumns","$groups","visibleColumnCount","$data","bindPagesToScope","isMyPublisher","onAfterReloadData","onPagesChanged","timer","callback","ms","cancel","newParams","oldParams","compileDirectiveTemplates","hasClass","templates","header","templateHeader","pagination","templatePagination","addClass","headerTemplate","theadFound","children","e","tagName","element","document","createElement","attr","prepend","paginationTemplate","ng-table-pagination","template-url","after","loadFilterData","buildColumns","col","parseNgTableDynamicExpr","parts","tableParams","Error","setupBindingsToInternalScope","tableParamsExpr","tableParamsGetter","isUndefined","paramsModel","directive","restrict","priority","compile","dataRow","groupRow","rows","find","tr","el","getAttrValue","setAttrValue","parsedAttribute","expr","localValue","getter","parsedExpr","titleExpr","attrs","ngTable","tElement","row","showExpr","ngTableDynamic","$watchCollection","newCols","ngTableColumnsBinding","linkFn","setter","newColumns","shallowClone","require","link","templateUrl","replace","pubParams","template","ng-include","append","ngTableFilterRowController","getFilterCellCss","layout","size","width","parseInt","getFilterPlaceholderValue","placeholder","ngTableFilterRow","ngTableGroupRowController","getGroupables","getGroupTitle","groupBy","isSelectedGroup","toggleDetail","setGroup","changeSortDirection","newDirection","$selGroup","findGroupColumn","groupKey","groupableCols","groupFns","existingGroupCol","$selGroupTitle","groupedColumn","ngTableGroupRow","controllerAs","ngTableSorterRowController","sortBy","parsedSortable","inverseSort","sortingParams","ctrlKey","metaKey","ngTableSorterRow","ngTableSelectFilterDs","ngTableSelectFilterDsController","bindDataSource","getSelectListData","hasEmptyOption","unshift","$selectData","isMatch","run","$templateCache","put"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ng-table.min.js","sources":["ng-table.js"],"names":["angular","factory","define","amd","window","module","value","params","settings","ngTableEventsChannel","$rootScope","addChangeEvent","eventName","target","fnName","charAt","toUpperCase","substring","event","createEventSubscriptionFn","createPublishEventFn","extend","handler","eventSelector","identity","scope","arguments","length","isFunction","$new","isObject","requiredPublisher","publisher","$on","isNullInstance","eventArgs","rest","fnArgs","concat","apply","this","Array","prototype","slice","call","$broadcast","array","n","events","$inject","ngTableFilterConfigProvider","init","resetConfigs","config","defaultConfig","setConfig","customConfig","mergeConfig","aliasUrls","ngTableFilterConfig","getTemplateUrl","filterDef","filterKey","id","indexOf","service","getUrlForAlias","aliasName","defaultBaseUrl","defaultExt","publicConfig","Object","defineProperty","get","copy","enumerable","$get","provider","ngTableDefaultGetDataProvider","ngTableDefaultGetData","$filter","getFilterFn","filterOptions","filterFn","filterFilterName","getOrderByFn","sortingFilterName","applyFilter","data","hasFilter","filter","filterKeys","keys","parsedFilter","reduce","result","key","setPath","filterComparator","applyPaging","pagedData","page","count","total","applySort","orderBy","orderByFn","getData","options","defaultDataOptions","dataOptions","fData","orderedData","obj","path","split","ret","lastKey","parentPathKeys","forEach","hasOwnProperty","buildColumn","column","defaultScope","columns","extendedCol","create","defaults","createDefaults","prop","undefined","prop1","getterSetter","isScopeLike","assign","$scope","getterFn","context","$column","$columns","class","createGetterSetter","groupable","filterData","noop","headerTemplateURL","headerTitle","sortable","show","title","titleAlt","initialValue","newValue","object","$q","$log","ngTableDefaults","isNumber","isNaN","parseFloat","isFinite","NgTableParams","baseParameters","baseSettings","parseGroup","group","defaultSort","groupOptions","sortDirection","isString","grp","convertSortToOrderBy","sorting","push","createComparableParams","groupSortDirection","hasGlobalSearchFieldChanges","currentVal","$","previousVal","prevParamsMemento","equals","optimizeFilterDelay","filterDelay","defaultFilterOptions","filterDelayThreshold","defaultSettingsFns","runInterceptorPipeline","fetchedData","interceptors","interceptor","thenFn","response","bind","when","rejectFn","responseError","reject","then","self","reason","getDefaultSettingFns","dataset","getGroups","groupFn","groupField","item","getPath","originalDataOptions","gotData","groups","groupName","$hideRows","isExpanded","i","ks","errParamsMemento","isCommittedDataset","initialEvents","log","debugMode","debug","filterLayout","defaultGroupOptions","parameters","newParameters","parseParamsFromUrl","isDefined","reverse","len","name","v","newSettings","isArray","originalDataset","hasDatasetChanged","fireEvent","publishDatasetChanged","significantFilter","filterValue","groupArray","sortArray","isSortBy","field","direction","generatePagesArray","currentPage","totalItems","pageSize","maxBlocks","maxPage","maxPivotPages","minPage","numPages","pages","Math","ceil","type","number","max","active","current","round","paginationMaxBlocks","paginationMinBlocks","min","isDataReloadRequired","hasGroup","hasFilterChanges","previousFilter","url","asString","collectValue","pairs","encodeURIComponent","isSignificantValue","subkey","pname","reload","pData","$loading","oldData","publishAfterReloadData","reloadPages","hasErrorState","currentPages","oldPages","newPages","publishPagesChanged","counts","sortingIndicator","publishAfterCreated","controller","$timeout","$parse","$compile","$attrs","$element","ngTableColumn","onDataReloadStatusChange","newStatus","currentParams","delayFilter","setupFilterRowBindingsToInternalScope","showFilter","$parent","$watch","show_filter","hasVisibleFilterColumn","disableFilter","$filterRow","disabled","setupGroupRowBindingsToInternalScope","$groupRow","showGroup","showGroupGetter","getVisibleColumns","c","some","predicate","found","commonInit","bindDataToScope","newDatapage","visibleColumns","$groups","visibleColumnCount","$data","bindPagesToScope","isMyPublisher","onAfterReloadData","onPagesChanged","timer","callback","ms","cancel","newParams","oldParams","compileDirectiveTemplates","hasClass","templates","header","templateHeader","pagination","templatePagination","addClass","headerTemplate","theadFound","children","e","tagName","element","document","createElement","attr","prepend","paginationTemplate","ng-table-pagination","template-url","after","loadFilterData","promise","buildColumns","col","parseNgTableDynamicExpr","parts","tableParams","Error","setupBindingsToInternalScope","tableParamsExpr","tableParamsGetter","isUndefined","paramsModel","directive","restrict","priority","compile","dataRow","groupRow","rows","find","tr","el","getAttrValue","setAttrValue","parsedAttribute","expr","localValue","getter","parsedExpr","titleExpr","attrs","ngTable","tElement","row","showExpr","ngTableDynamic","$watchCollection","newCols","ngTableColumnsBinding","linkFn","setter","newColumns","shallowClone","require","link","templateUrl","replace","pubParams","template","ng-include","append","ngTableFilterRowController","getFilterCellCss","layout","size","width","parseInt","getFilterPlaceholderValue","placeholder","ngTableFilterRow","ngTableGroupRowController","getGroupables","getGroupTitle","groupBy","isSelectedGroup","toggleDetail","setGroup","changeSortDirection","newDirection","$selGroup","findGroupColumn","groupKey","groupableCols","groupFns","existingGroupCol","$selGroupTitle","groupedColumn","ngTableGroupRow","controllerAs","ngTableSorterRowController","sortBy","parsedSortable","inverseSort","sortingParams","ctrlKey","metaKey","ngTableSorterRow","ngTableSelectFilterDs","ngTableSelectFilterDsController","bindDataSource","getSelectListData","hasEmptyOption","unshift","$selectData","isMatch","run","$templateCache","put"],"mappings":"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"} \ No newline at end of file diff --git a/package.json b/package.json index c7e35e17..6d169053 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ng-table", - "version": "1.0.0-beta.9", + "version": "1.0.0", "author": "Vitalii Savchuk ", "license": "BSD", "repository": {