diff --git a/CHANGELOG.md b/CHANGELOG.md index 6b644c91..21876235 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,67 @@ + +# 1.0.0-alpha (2015-08-10) + + +## Bug Fixes + +- **NgTableParams:** default page size is unreasonably small + ([6aec41ca](https://github.com/esvit/ng-table/commit/6aec41cae47050861ade27cde71e4a6ca6252922)) + + +## Breaking Changes + +- **NgTableParams:** + - due to [6aec41ca](https://github.com/esvit/ng-table/commit/6aec41cae47050861ade27cde71e4a6ca6252922), + + +Default page size has been increased from 1 to 10. + +To override this behaviour set the default page size in the a run block: + +```js +angular.module("yourApp").run(setRunPhaseDefaults); + +setRunPhaseDefaults.$inject = ["ngTableDefaults"]; + +function setRunPhaseDefaults(ngTableDefaults) { + ngTableDefaults.params.count = 1; +} +``` + + - due to [6b747850](https://github.com/esvit/ng-table/commit/6b747850fdc3ca9c22ee5f5e0d9cfc26d8e462f4), + + +`NgTableParams` no longer exposes a `getGroups` method. + +`getGroups` is now a method on the settings object only. + + - due to [1ed1a044](https://github.com/esvit/ng-table/commit/1ed1a044bf1eb411d6e051b3440d5e75007e06ee), + + +`NgTableParams` no longer exposes a `getData` method + +- **settings:** due to [e29babf2](https://github.com/esvit/ng-table/commit/e29babf2958fb0f1ee39c48c8531cc70c110cdeb), + + +The `column` parameter of the `getGroups` method has been removed. + +Instead the `groupBy` value on the `NgTableParams.settings()` object supplied as a parameter will +be used to determine the grouping. + +Previously: + +```js +var groupsFetched = tableParams.settings().getGroups('age'); +``` + +Now: + +```js +tableParams.settings({ groupBy: 'age'}); +var groupsFetched = tableParams.settings().getGroups(tableParams); +``` + + # 0.8.3 (2015-08-09) diff --git a/bower.json b/bower.json index 317be283..171bfad3 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "ng-table", - "version": "0.8.3", + "version": "1.0.0-alpha", "main": [ "./dist/ng-table.min.js", "./dist/ng-table.min.css" diff --git a/dist/ng-table.js b/dist/ng-table.js index eab89ba6..d19b6ea2 100644 --- a/dist/ng-table.js +++ b/dist/ng-table.js @@ -253,8 +253,7 @@ /** * @ngdoc provider * @name ngTableDefaultGetDataProvider - * @description Allows for the configuration of the {@link ngTable.ngTableDefaultGetData ngTableDefaultGetData} - * service. + * @description Allows for the configuration of the ngTableDefaultGetData service. * * Set filterFilterName to the name of a angular filter that knows how to take `NgTableParams.filter()` * to restrict an array of data. @@ -449,7 +448,6 @@ var self = this, committedParams, - getGroups, isCommittedDataset = false, log = function() { if (settings.debugMode && $log.debug) { @@ -519,7 +517,7 @@ newSettings.getDataFnAdaptor = ngTableGetDataBcShim; } if (newSettings.getGroups && newSettings.getGroups.length > 2){ - // support the old getGroups($defer, grouping, params) api + // support the old getGroups($defer, params) api newSettings.getGroupsFnAdaptor = ngTableGetDataBcShim; } @@ -672,33 +670,6 @@ return sorting; }; - /** - * @ngdoc method - * @name settings#getGroups - * @description Return groups for table grouping - */ - getGroups = function(column) { - // this === settings - return runGetData().then(function(data) { - var groups = {}; - angular.forEach(data, function(item) { - var groupName = angular.isFunction(column) ? column(item) : item[column]; - - groups[groupName] = groups[groupName] || { - data: [] - }; - groups[groupName]['value'] = groupName; - groups[groupName].data.push(item); - }); - var result = []; - for (var i in groups) { - result.push(groups[i]); - } - log('ngTable: refresh groups', result); - return result; - }); - }; - /** * @ngdoc method * @name NgTableParams#generatePagesArray @@ -906,7 +877,7 @@ function runGetGroups(){ var getGroupsFn = settings.getGroupsFnAdaptor(settings.getGroups); - return $q.when(getGroupsFn.call(settings, settings.groupBy, self)); + return $q.when(getGroupsFn.call(settings, self)); } function runInterceptorPipeline(fetchFn){ @@ -923,9 +894,70 @@ }, fetchFn()); } + function getDefaultSettingFns(){ + + return { + getDataFnAdaptor: angular.identity, + getGroupsFnAdaptor: angular.identity, + getData: getData, + getGroups: getGroups + }; + + /** + * @ngdoc method + * @name settings#getData + * @description Returns the data to display in the table + * + * Called by `NgTableParams` whenever it considers new data is to be loaded + * + * @param {Object} params the `NgTableParams` requesting data + */ + function getData(params) { + return ngTableDefaultGetData(params.settings().data, params); + } + + /** + * @ngdoc method + * @name settings#getGroups + * @description Return groups of data to display in the table + * + * Called by `NgTableParams` whenever it considers new data is to be loaded + * and when the `settings` object has a `groupBy` value + * + * @param {Object} params the `NgTableParams` requesting data + */ + function getGroups(params) { + var settings = params.settings(); + var adaptedFn = settings.getDataFnAdaptor(settings.getData); + var gotData = $q.when(adaptedFn.call(settings, params)); + return gotData.then(function(data) { + var groups = {}; + angular.forEach(data, function(item) { + var groupName; + if (angular.isFunction(settings.groupBy)) { + groupName = settings.groupBy(item); + } else { + groupName = item[settings.groupBy]; + } + + groups[groupName] = groups[groupName] || { + data: [] + }; + groups[groupName]['value'] = groupName; + groups[groupName].data.push(item); + }); + var result = []; + for (var i in groups) { + result.push(groups[i]); + } + return result; + }); + } + } + var params = { page: 1, - count: 1, + count: 10, filter: {}, sorting: {}, group: {}, @@ -934,7 +966,7 @@ angular.extend(params, ngTableDefaults.params); /** - * @ngdoc type + * @ngdoc object * @name settings * @module ngTable * @description configuration settings for `NgTableParams` @@ -951,22 +983,10 @@ interceptors: [], paginationMaxBlocks: 11, paginationMinBlocks: 5, - sortingIndicator: 'span', - getDataFnAdaptor: angular.identity, - getGroupsFnAdaptor: angular.identity, - getGroups: getGroups, - /** - * @ngdoc method - * @name settings#getData - * @description Called by NgTableParams whenever it considers new data is to be loaded - * - * @param {Object} params the NgTableParams requesting data - */ - getData: function(params) { - return ngTableDefaultGetData(this.data, params); - } + sortingIndicator: 'span' }; + this.settings(getDefaultSettingFns()); this.settings(ngTableDefaults.settings); this.settings(baseSettings); this.parameters(baseParameters, true); diff --git a/dist/ng-table.min.css b/dist/ng-table.min.css index 267be966..ec9b49b8 100644 --- a/dist/ng-table.min.css +++ b/dist/ng-table.min.css @@ -1,3 +1,3 @@ -/*! ngTable v0.8.3 by Vitalii Savchuk(esvit666@gmail.com) - https://github.com/esvit/ng-table - New BSD License */ +/*! ngTable v1.0.0-alpha 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+.pagination{margin-top:0}@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}} \ No newline at end of file diff --git a/dist/ng-table.min.js b/dist/ng-table.min.js index d816a928..ae840940 100644 --- a/dist/ng-table.min.js +++ b/dist/ng-table.min.js @@ -1,4 +1,4 @@ -/*! ngTable v0.8.3 by Vitalii Savchuk(esvit666@gmail.com) - https://github.com/esvit/ng-table - New BSD License */ +/*! ngTable v1.0.0-alpha 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";var b=a.module("ngTable",[]);return 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(a,b){return-1!==a.indexOf("/")?a:e.getUrlForAlias(a,b)}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 a(a){function c(c,d){if(null==c)return[];var e=d.hasFilter()?a(b.filterFilterName)(c,d.filter(!0)):c,f=d.orderBy(),g=f.length?a(b.sortingFilterName)(e,f):e,h=g.slice((d.page()-1)*d.count(),d.page()*d.count());return d.total(g.length),h}return c}var b=this;b.$get=a,b.filterFilterName="filter",b.sortingFilterName="orderBy",a.$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"]}(),b.value("ngTableDefaults",{params:{},settings:{}}),b.factory("NgTableParams",["$q","$log","ngTableDefaults","ngTableGetDataBcShim","ngTableDefaultGetData","ngTableEventsChannel",function(b,c,d,e,f,g){var h=function(a){return!isNaN(parseFloat(a))&&isFinite(a)},i=function(i,j){function k(){var a=s.getDataFnAdaptor(s.getData);return b.when(a.call(s,o))}function l(){var a=s.getGroupsFnAdaptor(s.getGroups);return b.when(a.call(s,s.groupBy,o))}function m(a){var c=s.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,o)},function(a){return e(a,o)})},a())}"boolean"==typeof i&&(this.isNullInstance=!0);var n,o=this,p=!1,q=function(){s.debugMode&&c.debug&&c.debug.apply(this,arguments)};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,j=f.length;j>i;i++){var k=f[i];if(""!==k){var l=e;e={},e[g=k]=h(l)?parseFloat(l):l}}"sorting"===g&&(r[g]={}),r[g]=a.extend(r[g]||{},e[g])}else r[d]=h(b[d])?parseFloat(b[d]):b[d]}return q("ngTable: set parameters",r),this}return r},this.settings=function(b){if(a.isDefined(b)){a.isArray(b.data)&&(b.total=b.data.length),b.getData&&b.getData.length>1&&(b.getDataFnAdaptor=e),b.getGroups&&b.getGroups.length>2&&(b.getGroupsFnAdaptor=e);var c=s.data;s=a.extend(s,b);var d=b.hasOwnProperty("data")&&b.data!=c;return d&&(p&&this.page(1),p=!1,g.publishDatasetChanged(this,b.data,c)),q("ngTable: set settings",s),this}return s},this.page=function(b){return a.isDefined(b)?this.parameters({page:b}):r.page},this.total=function(b){return a.isDefined(b)?this.settings({total:b}):s.total},this.count=function(b){return a.isDefined(b)?this.parameters({count:b,page:1}):r.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(r.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((s.paginationMaxBlocks-s.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!p||!a.equals(r,n)},this.hasFilter=function(){return Object.keys(this.filter(!0)).length>0},this.hasFilterChanges=function(){return!a.equals(r&&r.filter,n&&n.filter)},this.url=function(b){b=b||!1;var c=b?[]:{};for(var d in r)if(r.hasOwnProperty(d)){var e=r[d],f=encodeURIComponent(d);if("object"==typeof e){for(var g in e)if(!a.isUndefined(e[g])&&""!==e[g]){var h=f+"["+encodeURIComponent(g)+"]";b?c.push(h+"="+e[g]):c[h]=e[g]}}else a.isFunction(e)||a.isUndefined(e)||""===e||(b?c.push(f+"="+encodeURIComponent(e)):c[f]=encodeURIComponent(e))}return c},this.reload=function(){var c=this,d=null;s.$loading=!0,n=a.copy(r),p=!0,d=m(s.groupBy?l:k),q("ngTable: reload data");var e=c.data;return d.then(function(a){return s.$loading=!1,c.data=a,g.publishAfterReloadData(c,a,e),c.reloadPages(),s.$scope&&s.$scope.$emit("ngTableAfterReloadData"),a})["catch"](function(a){return n=null,p=!1,b.reject(a)})},this.reloadPages=function(){var b;return function(){var c=b,d=o.generatePagesArray(o.page(),o.total(),o.count());a.equals(c,d)||(b=d,g.publishPagesChanged(this,d,c))}}();var r={page:1,count:1,filter:{},sorting:{},group:{},groupBy:null};a.extend(r,d.params);var s={$scope:null,$loading:!1,data:null,total:0,defaultSort:"desc",filterDelay:750,counts:[10,25,50,100],interceptors:[],paginationMaxBlocks:11,paginationMinBlocks:5,sortingIndicator:"span",getDataFnAdaptor:a.identity,getGroupsFnAdaptor:a.identity,getGroups:this.getGroups,getData:this.getData};return this.settings(d.settings),this.settings(j),this.parameters(i,!0),g.publishAfterCreated(this),this};return i}]),b.factory("ngTableParams",["NgTableParams",function(a){return a}]),function(){function b(a,b){a.config=b}a.module("ngTable").controller("ngTableFilterRowController",b),b.$inject=["$scope","ngTableFilterConfig"]}(),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"]}(),b.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.settings().$scope=b;var c=b.params;if(c.hasFilterChanges()){var d=function(){c.page(1),c.reload()};c.settings().filterDelay?m(d,c.settings().filterDelay):d()}else c.reload()}}function l(){function a(a,c){a.settings().groupBy?b.$groups=c:b.$data=c}function c(a,c){b.pages=c}function d(a){return b.params===a}j.onAfterReloadData(a,b,d),j.onPagesChanged(c,b,d)}b.$filterRow={},b.$loading=!1,b.hasOwnProperty("params")||(b.params=new c(!0)),b.params.settings().$scope=b;var m=function(){var a=0;return function(b,c){d.cancel(a),a=d(b,c)}}();b.$watch("params",function(a,b){a!==b&&a&&a.reload()},!1),b.$watch("params.isDataReloadRequired()",k),this.compileDirectiveTemplates=function(){if(!h.hasClass("ng-table")){b.templates={header:g.templateHeader?g.templateHeader:"ng-table/header.html",pagination:g.templatePagination?g.templatePagination:"ng-table/pager.html"},h.addClass("ng-table");var c=null,d=!1;a.forEach(h.children(),function(a){"THEAD"===a.tagName&&(d=!0)}),d||(c=a.element(document.createElement("thead")).attr("ng-include","templates.header"),h.prepend(c));var e=a.element(document.createElement("div")).attr({"ng-table-pagination":"params","template-url":"templates.pagination"});h.after(e),c&&f(c)(b),f(e)(b)}},this.loadFilterData=function(c){a.forEach(c,function(c){var d;return d=c.filterData(b,{$column:c}),d?a.isObject(d)&&a.isObject(d.promise)?(delete c.filterData,d.promise.then(function(b){a.isArray(b)||a.isFunction(b)||a.isObject(b)?a.isArray(b)&&b.unshift({title:"",id:""}):b=[],c.data=b})):c.data=d:void delete c.filterData})},this.buildColumns=function(a){return a.map(function(a){return i.buildColumn(a,b)})},this.parseNgTableDynamicExpr=function(a){if(!a||a.indexOf(" with ")>-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),g.showFilter&&b.$parent.$watch(g.showFilter,function(a){b.show_filter=a}),g.disableFilter&&b.$parent.$watch(g.disableFilter,function(a){b.$filterRow.disabled=a})},l()}]),b.factory("ngTableColumn",[function(){function b(b,d){var e=Object.create(b);for(var f in c)void 0===e[f]&&(e[f]=c[f]),a.isFunction(e[f])||!function(a){e[a]=function(){return b[a]}}(f),function(a){var c=e[a];e[a]=function(){return 0===arguments.length?c.call(b,d):c.apply(b,arguments)}}(f);return e}var c={"class":function(){return""},filter:function(){return!1},filterData:a.noop,headerTemplateURL:function(){return!1},headerTitle:function(){return""},sortable:function(){return!1},show:function(){return!0},title:function(){return""},titleAlt:function(){return""}};return{buildColumn:b}}]),b.directive("ngTable",["$q","$parse",function(b,c){return{restrict:"A",priority:1001,scope:!0,controller:"ngTableController",compile:function(b){var d=[],e=0,f=null;return a.forEach(a.element(b.find("tr")),function(b){b=a.element(b),b.hasClass("ng-table-group")||f||(f=b)}),f?(a.forEach(f.find("td"),function(b){var f=a.element(b);if(!f.attr("ignore-cell")||"true"!==f.attr("ignore-cell")){var g=function(a){return f.attr("x-data-"+a)||f.attr("data-"+a)||f.attr(a)},h=function(b){var e=g(b);return e?function(b,f){return c(e)(b,a.extend(f||{},{$columns:d}))}:void 0},i=g("title-alt")||g("title");i&&f.attr("data-title-text","{{"+i+"}}"),d.push({id:e++,title:h("title"),titleAlt:h("title-alt"),headerTitle:h("header-title"),sortable:h("sortable"),"class":h("header-class"),filter:h("filter"),headerTemplateURL:h("header"),filterData:h("filter-data"),show:f.attr("ng-if")?function(a){return c(f.attr("ng-if"))(a)}:void 0})}}),function(a,b,c,e){a.$columns=d=e.buildColumns(d),e.setupBindingsToInternalScope(c.ngTable),e.loadFilterData(d),e.compileDirectiveTemplates()}):void 0}}}]),b.directive("ngTableDynamic",["$parse",function(){return{restrict:"A",priority:1001,scope:!0,controller:"ngTableController",compile:function(b){var c;return a.forEach(a.element(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(){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(){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=[]}(),b.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)}})}}}]),a.module("ngTable").run(["$templateCache",function(a){a.put("ng-table/filterRow.html",'
'),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/header.html"," "),a.put("ng-table/pager.html",'
'),a.put("ng-table/sorterRow.html",'
')}]),b}); +!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(a,b){return-1!==a.indexOf("/")?a:e.getUrlForAlias(a,b)}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 a(a){function c(c,d){if(null==c)return[];var e=d.hasFilter()?a(b.filterFilterName)(c,d.filter(!0)):c,f=d.orderBy(),g=f.length?a(b.sortingFilterName)(e,f):e,h=g.slice((d.page()-1)*d.count(),d.page()*d.count());return d.total(g.length),h}return c}var b=this;b.$get=a,b.filterFilterName="filter",b.sortingFilterName="orderBy",a.$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){var e=Object.create(b);for(var f in c)void 0===e[f]&&(e[f]=c[f]),a.isFunction(e[f])||!function(a){e[a]=function(){return b[a]}}(f),function(a){var c=e[a];e[a]=function(){return 0===arguments.length?c.call(b,d):c.apply(b,arguments)}}(f);return e}var c={"class":function(){return""},filter:function(){return!1},filterData:a.noop,headerTemplateURL:function(){return!1},headerTitle:function(){return""},sortable:function(){return!1},show:function(){return!0},title:function(){return""},titleAlt:function(){return""}};return{buildColumn:b}}])}(),function(){a.module("ngTable").factory("NgTableParams",["$q","$log","ngTableDefaults","ngTableGetDataBcShim","ngTableDefaultGetData","ngTableEventsChannel",function(b,c,d,e,f,g){var h=function(a){return!isNaN(parseFloat(a))&&isFinite(a)},i=function(i,j){function k(){var a=t.getDataFnAdaptor(t.getData);return b.when(a.call(t,p))}function l(){var a=t.getGroupsFnAdaptor(t.getGroups);return b.when(a.call(t,p))}function m(a){var c=t.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,p)},function(a){return e(a,p)})},a())}function n(){function c(a){return f(a.settings().data,a)}function d(c){var d=c.settings(),e=d.getDataFnAdaptor(d.getData),f=b.when(e.call(d,c));return f.then(function(b){var c={};a.forEach(b,function(b){var e;e=a.isFunction(d.groupBy)?d.groupBy(b):b[d.groupBy],c[e]=c[e]||{data:[]},c[e].value=e,c[e].data.push(b)});var e=[];for(var f in c)e.push(c[f]);return e})}return{getDataFnAdaptor:a.identity,getGroupsFnAdaptor:a.identity,getData:c,getGroups:d}}"boolean"==typeof i&&(this.isNullInstance=!0);var o,p=this,q=!1,r=function(){t.debugMode&&c.debug&&c.debug.apply(this,arguments)};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,j=f.length;j>i;i++){var k=f[i];if(""!==k){var l=e;e={},e[g=k]=h(l)?parseFloat(l):l}}"sorting"===g&&(s[g]={}),s[g]=a.extend(s[g]||{},e[g])}else s[d]=h(b[d])?parseFloat(b[d]):b[d]}return r("ngTable: set parameters",s),this}return s},this.settings=function(b){if(a.isDefined(b)){a.isArray(b.data)&&(b.total=b.data.length),b.getData&&b.getData.length>1&&(b.getDataFnAdaptor=e),b.getGroups&&b.getGroups.length>2&&(b.getGroupsFnAdaptor=e);var c=t.data;t=a.extend(t,b);var d=b.hasOwnProperty("data")&&b.data!=c;return d&&(q&&this.page(1),q=!1,g.publishDatasetChanged(this,b.data,c)),r("ngTable: set settings",t),this}return t},this.page=function(b){return a.isDefined(b)?this.parameters({page:b}):s.page},this.total=function(b){return a.isDefined(b)?this.settings({total:b}):t.total},this.count=function(b){return a.isDefined(b)?this.parameters({count:b,page:1}):s.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(s.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((t.paginationMaxBlocks-t.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!q||!a.equals(s,o)},this.hasFilter=function(){return Object.keys(this.filter(!0)).length>0},this.hasFilterChanges=function(){return!a.equals(s&&s.filter,o&&o.filter)},this.url=function(b){b=b||!1;var c=b?[]:{};for(var d in s)if(s.hasOwnProperty(d)){var e=s[d],f=encodeURIComponent(d);if("object"==typeof e){for(var g in e)if(!a.isUndefined(e[g])&&""!==e[g]){var h=f+"["+encodeURIComponent(g)+"]";b?c.push(h+"="+e[g]):c[h]=e[g]}}else a.isFunction(e)||a.isUndefined(e)||""===e||(b?c.push(f+"="+encodeURIComponent(e)):c[f]=encodeURIComponent(e))}return c},this.reload=function(){var c=this,d=null;t.$loading=!0,o=a.copy(s),q=!0,d=m(t.groupBy?l:k),r("ngTable: reload data");var e=c.data;return d.then(function(a){return t.$loading=!1,c.data=a,g.publishAfterReloadData(c,a,e),c.reloadPages(),t.$scope&&t.$scope.$emit("ngTableAfterReloadData"),a})["catch"](function(a){return o=null,q=!1,b.reject(a)})},this.reloadPages=function(){var b;return function(){var c=b,d=p.generatePagesArray(p.page(),p.total(),p.count());a.equals(c,d)||(b=d,g.publishPagesChanged(this,d,c))}}();var s={page:1,count:10,filter:{},sorting:{},group:{},groupBy:null};a.extend(s,d.params);var t={$scope:null,$loading:!1,data:null,total:0,defaultSort:"desc",filterDelay:750,counts:[10,25,50,100],interceptors:[],paginationMaxBlocks:11,paginationMinBlocks:5,sortingIndicator:"span"};return this.settings(n()),this.settings(d.settings),this.settings(j),this.parameters(i,!0),g.publishAfterCreated(this),this};return i}]),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.settings().$scope=b;var c=b.params;if(c.hasFilterChanges()){var d=function(){c.page(1),c.reload()};c.settings().filterDelay?m(d,c.settings().filterDelay):d()}else c.reload()}}function l(){function a(a,c){a.settings().groupBy?b.$groups=c:b.$data=c}function c(a,c){b.pages=c}function d(a){return b.params===a}j.onAfterReloadData(a,b,d),j.onPagesChanged(c,b,d)}b.$filterRow={},b.$loading=!1,b.hasOwnProperty("params")||(b.params=new c(!0)),b.params.settings().$scope=b;var m=function(){var a=0;return function(b,c){d.cancel(a),a=d(b,c)}}();b.$watch("params",function(a,b){a!==b&&a&&a.reload()},!1),b.$watch("params.isDataReloadRequired()",k),this.compileDirectiveTemplates=function(){if(!h.hasClass("ng-table")){b.templates={header:g.templateHeader?g.templateHeader:"ng-table/header.html",pagination:g.templatePagination?g.templatePagination:"ng-table/pager.html"},h.addClass("ng-table");var c=null,d=!1;a.forEach(h.children(),function(a){"THEAD"===a.tagName&&(d=!0)}),d||(c=a.element(document.createElement("thead")).attr("ng-include","templates.header"),h.prepend(c));var e=a.element(document.createElement("div")).attr({"ng-table-pagination":"params","template-url":"templates.pagination"});h.after(e),c&&f(c)(b),f(e)(b)}},this.loadFilterData=function(c){a.forEach(c,function(c){var d;return d=c.filterData(b,{$column:c}),d?a.isObject(d)&&a.isObject(d.promise)?(delete c.filterData,d.promise.then(function(b){a.isArray(b)||a.isFunction(b)||a.isObject(b)?a.isArray(b)&&b.unshift({title:"",id:""}):b=[],c.data=b})):c.data=d:void delete c.filterData})},this.buildColumns=function(a){return a.map(function(a){return i.buildColumn(a,b)})},this.parseNgTableDynamicExpr=function(a){if(!a||a.indexOf(" with ")>-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),g.showFilter&&b.$parent.$watch(g.showFilter,function(a){b.show_filter=a}),g.disableFilter&&b.$parent.$watch(g.disableFilter,function(a){b.$filterRow.disabled=a})},l()}])}(),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=0,f=null;return a.forEach(a.element(b.find("tr")),function(b){b=a.element(b),b.hasClass("ng-table-group")||f||(f=b)}),f?(a.forEach(f.find("td"),function(b){var f=a.element(b);if(!f.attr("ignore-cell")||"true"!==f.attr("ignore-cell")){var g=function(a){return f.attr("x-data-"+a)||f.attr("data-"+a)||f.attr(a)},h=function(b){var e=g(b);return e?function(b,f){return c(e)(b,a.extend(f||{},{$columns:d}))}:void 0},i=g("title-alt")||g("title");i&&f.attr("data-title-text","{{"+i+"}}"),d.push({id:e++,title:h("title"),titleAlt:h("title-alt"),headerTitle:h("header-title"),sortable:h("sortable"),"class":h("header-class"),filter:h("filter"),headerTemplateURL:h("header"),filterData:h("filter-data"),show:f.attr("ng-if")?function(a){return c(f.attr("ng-if"))(a)}:void 0})}}),function(a,b,c,e){a.$columns=d=e.buildColumns(d),e.setupBindingsToInternalScope(c.ngTable),e.loadFilterData(d),e.compileDirectiveTemplates()}):void 0}}}])}(),function(){a.module("ngTable").directive("ngTableDynamic",["$parse",function(){return{restrict:"A",priority:1001,scope:!0,controller:"ngTableController",compile:function(b){var c;return a.forEach(a.element(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(){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(a,b){a.config=b}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(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=[]}(),a.module("ngTable").run(["$templateCache",function(a){a.put("ng-table/filterRow.html",'
'),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/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 4795a6ee..c4184a13 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","app","module","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","params","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","indexOf","service","getUrlForAlias","aliasName","defaultBaseUrl","defaultExt","publicConfig","Object","defineProperty","get","copy","enumerable","$get","provider","ngTableDefaultGetDataProvider","ngTableDefaultGetData","$filter","getData","data","fData","hasFilter","filterFilterName","filter","orderBy","orderedData","sortingFilterName","pagedData","page","count","total","ngTableGetDataBcShim","$q","createWrapper","getDataFn","$defer","defer","pData","promise","value","settings","$log","ngTableDefaults","isNumber","isNaN","parseFloat","isFinite","NgTableParams","baseParameters","baseSettings","runGetData","getDataFnAdaptor","when","self","runGetGroups","getGroupsFn","getGroupsFnAdaptor","getGroups","groupBy","runInterceptorPipeline","fetchFn","interceptors","reduce","result","interceptor","thenFn","response","bind","rejectFn","responseError","reject","then","reason","committedParams","isCommittedDataset","log","debugMode","debug","parameters","newParameters","parseParamsFromUrl","isDefined","key","keys","split","reverse","lastKey","i","len","name","v","newSettings","isArray","originalDataset","hasDatasetChanged","hasOwnProperty","publishDatasetChanged","significantFilter","sorting","sortArray","isSortBy","field","direction","undefined","column","push","groups","forEach","item","groupName","generatePagesArray","currentPage","totalItems","pageSize","maxBlocks","maxPage","maxPivotPages","minPage","numPages","pages","Math","ceil","type","number","max","active","current","round","paginationMaxBlocks","paginationMinBlocks","min","isDataReloadRequired","equals","hasFilterChanges","url","asString","pairs","encodeURIComponent","subkey","isUndefined","pname","reload","$loading","oldData","publishAfterReloadData","reloadPages","$scope","$emit","currentPages","oldPages","newPages","publishPagesChanged","group","defaultSort","filterDelay","counts","sortingIndicator","publishAfterCreated","ngTableFilterRowController","controller","ngTableSorterRowController","sortBy","$column","parsedSortable","sortable","inverseSort","sortingParams","ctrlKey","metaKey","$timeout","$parse","$compile","$attrs","$element","ngTableColumn","onDataReloadStatusChange","newStatus","currentParams","applyFilter","delayFilter","commonInit","bindDataToScope","newDatapage","$groups","$data","bindPagesToScope","isMyPublisher","onAfterReloadData","onPagesChanged","$filterRow","timer","callback","ms","cancel","$watch","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","$columns","def","filterData","unshift","title","id","buildColumns","columns","map","col","buildColumn","parseNgTableDynamicExpr","parts","tableParams","Error","setupBindingsToInternalScope","tableParamsExpr","tableParamsGetter","paramsModel","showFilter","$parent","show_filter","disableFilter","disabled","defaultScope","extendedCol","create","prop","defaults","prop1","getterFn","class","noop","headerTemplateURL","headerTitle","show","titleAlt","directive","restrict","priority","compile","row","find","tr","el","getAttrValue","parsedAttribute","expr","locals","titleExpr","attrs","ngTable","tElement","showExpr","ngTableDynamic","$watchCollection","newCols","ngTableFilterRow","replace","templateUrl","ngTableSorterRow","link","pubParams","template","ng-include","append","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","filterValue","filterKey","indexOf","service","getUrlForAlias","aliasName","defaultBaseUrl","defaultExt","publicConfig","Object","defineProperty","get","copy","enumerable","$get","provider","ngTableDefaultGetDataProvider","ngTableDefaultGetData","$filter","getData","data","fData","hasFilter","filterFilterName","filter","orderBy","orderedData","sortingFilterName","pagedData","page","count","total","ngTableGetDataBcShim","$q","createWrapper","getDataFn","$defer","defer","pData","promise","buildColumn","column","defaultScope","extendedCol","create","prop","defaults","undefined","prop1","getterFn","class","filterData","noop","headerTemplateURL","headerTitle","sortable","show","title","titleAlt","$log","ngTableDefaults","isNumber","isNaN","parseFloat","isFinite","NgTableParams","baseParameters","baseSettings","runGetData","getDataFnAdaptor","when","self","runGetGroups","getGroupsFn","getGroupsFnAdaptor","getGroups","runInterceptorPipeline","fetchFn","interceptors","reduce","result","interceptor","thenFn","response","bind","rejectFn","responseError","reject","then","reason","getDefaultSettingFns","adaptedFn","gotData","groups","forEach","item","groupName","groupBy","push","i","committedParams","isCommittedDataset","log","debugMode","debug","parameters","newParameters","parseParamsFromUrl","isDefined","key","keys","split","reverse","lastKey","len","name","v","newSettings","isArray","originalDataset","hasDatasetChanged","hasOwnProperty","publishDatasetChanged","significantFilter","sorting","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","equals","hasFilterChanges","url","asString","pairs","encodeURIComponent","subkey","isUndefined","pname","reload","$loading","oldData","publishAfterReloadData","reloadPages","$scope","$emit","currentPages","oldPages","newPages","publishPagesChanged","group","defaultSort","filterDelay","counts","sortingIndicator","publishAfterCreated","controller","$timeout","$parse","$compile","$attrs","$element","ngTableColumn","onDataReloadStatusChange","newStatus","currentParams","applyFilter","delayFilter","commonInit","bindDataToScope","newDatapage","$groups","$data","bindPagesToScope","isMyPublisher","onAfterReloadData","onPagesChanged","$filterRow","timer","callback","ms","cancel","$watch","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","$columns","$column","def","unshift","id","buildColumns","columns","map","col","parseNgTableDynamicExpr","parts","tableParams","Error","setupBindingsToInternalScope","tableParamsExpr","tableParamsGetter","paramsModel","showFilter","$parent","show_filter","disableFilter","disabled","directive","restrict","priority","compile","row","find","tr","el","getAttrValue","parsedAttribute","expr","locals","titleExpr","attrs","ngTable","tElement","showExpr","ngTableDynamic","$watchCollection","newCols","templateUrl","replace","link","pubParams","template","ng-include","append","ngTableFilterRowController","ngTableFilterRow","ngTableSorterRowController","sortBy","parsedSortable","inverseSort","sortingParams","ctrlKey","metaKey","ngTableSorterRow","run","$templateCache","put"],"mappings":"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"} \ No newline at end of file diff --git a/package.json b/package.json index fe19f566..900f88f6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ng-table", - "version": "0.8.3", + "version": "1.0.0-alpha", "author": "Vitalii Savchuk ", "license": "BSD", "repository": {