Skip to content
This repository was archived by the owner on Feb 2, 2025. It is now read-only.

Commit 8193fe9

Browse files
committed
Light changes on light columnfilter #431
1 parent a78864d commit 8193fe9

8 files changed

+149
-180
lines changed

dist/angular-datatables.js

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1098,21 +1098,21 @@ function dtAjaxRenderer($q, $timeout, DTRenderer, DTRendererService, DT_DEFAULT_
10981098
}
10991099

11001100
function _doRender(options, $elem) {
1101-
var defer = $q.defer();
1102-
// Set it to true in order to be able to redraw the dataTable
1103-
options.bDestroy = true;
1104-
DTRendererService.hideLoading($elem);
1105-
// Condition to refresh the dataTable
1106-
if (_shouldDeferRender(options)) {
1107-
$timeout(function() {
1101+
var defer = $q.defer();
1102+
// Set it to true in order to be able to redraw the dataTable
1103+
options.bDestroy = true;
1104+
DTRendererService.hideLoading($elem);
1105+
// Condition to refresh the dataTable
1106+
if (_shouldDeferRender(options)) {
1107+
$timeout(function() {
1108+
defer.resolve(DTRendererService.renderDataTable($elem, options));
1109+
}, 0, false);
1110+
} else {
11081111
defer.resolve(DTRendererService.renderDataTable($elem, options));
1109-
}, 0, false);
1110-
} else {
1111-
defer.resolve(DTRendererService.renderDataTable($elem, options));
1112+
}
1113+
return defer.promise;
11121114
}
1113-
return defer.promise;
1114-
}
1115-
// See https://github.com/l-lin/angular-datatables/issues/147
1115+
// See https://github.com/l-lin/angular-datatables/issues/147
11161116
function _shouldDeferRender(options) {
11171117
if (angular.isDefined(options) && angular.isDefined(options.dom)) {
11181118
// S for scroller plugin

dist/angular-datatables.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/plugins/bootstrap/angular-datatables.bootstrap.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -354,15 +354,15 @@ function dtBootstrap(DTBootstrapTableTools, DTBootstrapColVis, DTBootstrapDefaul
354354
}
355355

356356
function _setDom(options) {
357-
if (!options.dom || options.dom === DT_DEFAULT_OPTIONS.dom) {
358-
return DTBootstrapDefaultOptions.getOptions().dom;
357+
if (!options.dom || options.dom === DT_DEFAULT_OPTIONS.dom) {
358+
return DTBootstrapDefaultOptions.getOptions().dom;
359+
}
360+
return options.dom;
359361
}
360-
return options.dom;
361-
}
362-
/**
363-
* Integrate Bootstrap
364-
* @param options the datatables options
365-
*/
362+
/**
363+
* Integrate Bootstrap
364+
* @param options the datatables options
365+
*/
366366
function integrate(options) {
367367
_init(options.bootstrap);
368368
DTBootstrapTableTools.integrate(options.bootstrap);

dist/plugins/light-columnfilter/angular-datatables.light-columnfilter.js

Lines changed: 54 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -5,85 +5,71 @@
55
*/
66
(function (window, document, $, angular) {
77

8-
/*!
9-
* angular-datatables - v0.4.3
10-
* https://github.com/l-lin/angular-datatables
11-
* License: MIT
12-
*/
13-
(function(window, document, $, angular) {
14-
15-
'use strict';
16-
17-
// See https://github.com/thansen-solire/datatables-light-columnfilter
18-
angular.module('datatables.light-columnfilter', ['datatables'])
19-
.config(dtColumnFilterConfig)
20-
.run(initColumnFilterPlugin);
8+
'use strict';
219

22-
/* @ngInject */
23-
function dtColumnFilterConfig($provide) {
24-
$provide.decorator('DTOptionsBuilder', dtOptionsBuilderDecorator);
10+
// See https://github.com/thansen-solire/datatables-light-columnfilter
11+
angular.module('datatables.light-columnfilter', ['datatables'])
12+
.config(dtLightColumnFilterConfig)
13+
.run(initLightColumnFilterPlugin);
2514

26-
function dtOptionsBuilderDecorator($delegate) {
27-
var newOptions = $delegate.newOptions;
28-
var fromSource = $delegate.fromSource;
29-
var fromFnPromise = $delegate.fromFnPromise;
15+
/* @ngInject */
16+
function dtLightColumnFilterConfig($provide) {
17+
$provide.decorator('DTOptionsBuilder', dtOptionsBuilderDecorator);
3018

31-
$delegate.newOptions = function() {
32-
return _decorateOptions(newOptions);
33-
};
34-
$delegate.fromSource = function(ajax) {
35-
return _decorateOptions(fromSource, ajax);
36-
};
37-
$delegate.fromFnPromise = function(fnPromise) {
38-
return _decorateOptions(fromFnPromise, fnPromise);
39-
};
19+
function dtOptionsBuilderDecorator($delegate) {
20+
var newOptions = $delegate.newOptions;
21+
var fromSource = $delegate.fromSource;
22+
var fromFnPromise = $delegate.fromFnPromise;
4023

41-
return $delegate;
42-
43-
function _decorateOptions(fn, params) {
44-
var options = fn(params);
45-
options.withLightColumnFilter = withLightColumnFilter;
46-
return options;
24+
$delegate.newOptions = function() {
25+
return _decorateOptions(newOptions);
26+
};
27+
$delegate.fromSource = function(ajax) {
28+
return _decorateOptions(fromSource, ajax);
29+
};
30+
$delegate.fromFnPromise = function(fnPromise) {
31+
return _decorateOptions(fromFnPromise, fnPromise);
32+
};
4733

48-
/**
49-
* Add column filter support
50-
* @param lightColumnFilterOptions the plugins options
51-
* @returns {DTOptions} the options
52-
*/
53-
function withLightColumnFilter(lightColumnFilterOptions) {
54-
options.hasLightColumnFilter = true;
55-
if (lightColumnFilterOptions) {
56-
options.lightColumnFilterOptions = lightColumnFilterOptions;
57-
}
58-
return options;
34+
return $delegate;
35+
36+
function _decorateOptions(fn, params) {
37+
var options = fn(params);
38+
options.withLightColumnFilter = withLightColumnFilter;
39+
return options;
40+
41+
/**
42+
* Add column filter support
43+
* @param lightColumnFilterOptions the plugins options
44+
* @returns {DTOptions} the options
45+
*/
46+
function withLightColumnFilter(lightColumnFilterOptions) {
47+
options.hasLightColumnFilter = true;
48+
if (lightColumnFilterOptions) {
49+
options.lightColumnFilterOptions = lightColumnFilterOptions;
5950
}
51+
return options;
6052
}
6153
}
62-
63-
dtOptionsBuilderDecorator.$inject = ['$delegate'];
6454
}
65-
66-
dtColumnFilterConfig.$inject = ['$provide'];
67-
68-
/* @ngInject */
69-
function initColumnFilterPlugin(DTRendererService) {
70-
var lightColumnFilterPlugin = {
71-
postRender: postRender
72-
};
73-
DTRendererService.registerPlugin(lightColumnFilterPlugin);
74-
75-
function postRender(options, result) {
76-
if (options && options.hasLightColumnFilter) {
77-
var dt = $('#' + result.id).DataTable();
78-
new $.fn.dataTable.ColumnFilter(dt, options.lightColumnFilterOptions);
79-
}
55+
dtOptionsBuilderDecorator.$inject = ['$delegate'];
56+
}
57+
dtLightColumnFilterConfig.$inject = ['$provide'];
58+
59+
/* @ngInject */
60+
function initLightColumnFilterPlugin(DTRendererService) {
61+
var lightColumnFilterPlugin = {
62+
postRender: postRender
63+
};
64+
DTRendererService.registerPlugin(lightColumnFilterPlugin);
65+
66+
function postRender(options, result) {
67+
if (options && options.hasLightColumnFilter) {
68+
new $.fn.dataTable.ColumnFilter(result.DataTable, options.lightColumnFilterOptions);
8069
}
8170
}
82-
83-
initColumnFilterPlugin.$inject = ['DTRendererService'];
84-
85-
86-
})(window, document, jQuery, angular);
71+
}
72+
initLightColumnFilterPlugin.$inject = ['DTRendererService'];
8773

8874

8975
})(window, document, jQuery, angular);

dist/plugins/light-columnfilter/angular-datatables.light-columnfilter.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/angular-datatables.renderer.js

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -429,21 +429,21 @@ function dtAjaxRenderer($q, $timeout, DTRenderer, DTRendererService, DT_DEFAULT_
429429
}
430430

431431
function _doRender(options, $elem) {
432-
var defer = $q.defer();
433-
// Set it to true in order to be able to redraw the dataTable
434-
options.bDestroy = true;
435-
DTRendererService.hideLoading($elem);
436-
// Condition to refresh the dataTable
437-
if (_shouldDeferRender(options)) {
438-
$timeout(function() {
432+
var defer = $q.defer();
433+
// Set it to true in order to be able to redraw the dataTable
434+
options.bDestroy = true;
435+
DTRendererService.hideLoading($elem);
436+
// Condition to refresh the dataTable
437+
if (_shouldDeferRender(options)) {
438+
$timeout(function() {
439+
defer.resolve(DTRendererService.renderDataTable($elem, options));
440+
}, 0, false);
441+
} else {
439442
defer.resolve(DTRendererService.renderDataTable($elem, options));
440-
}, 0, false);
441-
} else {
442-
defer.resolve(DTRendererService.renderDataTable($elem, options));
443+
}
444+
return defer.promise;
443445
}
444-
return defer.promise;
445-
}
446-
// See https://github.com/l-lin/angular-datatables/issues/147
446+
// See https://github.com/l-lin/angular-datatables/issues/147
447447
function _shouldDeferRender(options) {
448448
if (angular.isDefined(options) && angular.isDefined(options.dom)) {
449449
// S for scroller plugin

src/plugins/bootstrap/angular-datatables.bootstrap.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -307,15 +307,15 @@ function dtBootstrap(DTBootstrapTableTools, DTBootstrapColVis, DTBootstrapDefaul
307307
}
308308

309309
function _setDom(options) {
310-
if (!options.dom || options.dom === DT_DEFAULT_OPTIONS.dom) {
311-
return DTBootstrapDefaultOptions.getOptions().dom;
310+
if (!options.dom || options.dom === DT_DEFAULT_OPTIONS.dom) {
311+
return DTBootstrapDefaultOptions.getOptions().dom;
312+
}
313+
return options.dom;
312314
}
313-
return options.dom;
314-
}
315-
/**
316-
* Integrate Bootstrap
317-
* @param options the datatables options
318-
*/
315+
/**
316+
* Integrate Bootstrap
317+
* @param options the datatables options
318+
*/
319319
function integrate(options) {
320320
_init(options.bootstrap);
321321
DTBootstrapTableTools.integrate(options.bootstrap);
Lines changed: 51 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -1,79 +1,62 @@
1-
/*!
2-
* angular-datatables - v0.4.3
3-
* https://github.com/l-lin/angular-datatables
4-
* License: MIT
5-
*/
6-
(function(window, document, $, angular) {
1+
'use strict';
72

8-
'use strict';
3+
// See https://github.com/thansen-solire/datatables-light-columnfilter
4+
angular.module('datatables.light-columnfilter', ['datatables'])
5+
.config(dtLightColumnFilterConfig)
6+
.run(initLightColumnFilterPlugin);
97

10-
// See https://github.com/thansen-solire/datatables-light-columnfilter
11-
angular.module('datatables.light-columnfilter', ['datatables'])
12-
.config(dtColumnFilterConfig)
13-
.run(initColumnFilterPlugin);
8+
/* @ngInject */
9+
function dtLightColumnFilterConfig($provide) {
10+
$provide.decorator('DTOptionsBuilder', dtOptionsBuilderDecorator);
1411

15-
/* @ngInject */
16-
function dtColumnFilterConfig($provide) {
17-
$provide.decorator('DTOptionsBuilder', dtOptionsBuilderDecorator);
12+
function dtOptionsBuilderDecorator($delegate) {
13+
var newOptions = $delegate.newOptions;
14+
var fromSource = $delegate.fromSource;
15+
var fromFnPromise = $delegate.fromFnPromise;
1816

19-
function dtOptionsBuilderDecorator($delegate) {
20-
var newOptions = $delegate.newOptions;
21-
var fromSource = $delegate.fromSource;
22-
var fromFnPromise = $delegate.fromFnPromise;
23-
24-
$delegate.newOptions = function() {
25-
return _decorateOptions(newOptions);
26-
};
27-
$delegate.fromSource = function(ajax) {
28-
return _decorateOptions(fromSource, ajax);
29-
};
30-
$delegate.fromFnPromise = function(fnPromise) {
31-
return _decorateOptions(fromFnPromise, fnPromise);
32-
};
33-
34-
return $delegate;
35-
36-
function _decorateOptions(fn, params) {
37-
var options = fn(params);
38-
options.withLightColumnFilter = withLightColumnFilter;
39-
return options;
17+
$delegate.newOptions = function() {
18+
return _decorateOptions(newOptions);
19+
};
20+
$delegate.fromSource = function(ajax) {
21+
return _decorateOptions(fromSource, ajax);
22+
};
23+
$delegate.fromFnPromise = function(fnPromise) {
24+
return _decorateOptions(fromFnPromise, fnPromise);
25+
};
4026

41-
/**
42-
* Add column filter support
43-
* @param lightColumnFilterOptions the plugins options
44-
* @returns {DTOptions} the options
45-
*/
46-
function withLightColumnFilter(lightColumnFilterOptions) {
47-
options.hasLightColumnFilter = true;
48-
if (lightColumnFilterOptions) {
49-
options.lightColumnFilterOptions = lightColumnFilterOptions;
50-
}
51-
return options;
27+
return $delegate;
28+
29+
function _decorateOptions(fn, params) {
30+
var options = fn(params);
31+
options.withLightColumnFilter = withLightColumnFilter;
32+
return options;
33+
34+
/**
35+
* Add column filter support
36+
* @param lightColumnFilterOptions the plugins options
37+
* @returns {DTOptions} the options
38+
*/
39+
function withLightColumnFilter(lightColumnFilterOptions) {
40+
options.hasLightColumnFilter = true;
41+
if (lightColumnFilterOptions) {
42+
options.lightColumnFilterOptions = lightColumnFilterOptions;
5243
}
44+
return options;
5345
}
5446
}
55-
56-
dtOptionsBuilderDecorator.$inject = ['$delegate'];
5747
}
58-
59-
dtColumnFilterConfig.$inject = ['$provide'];
60-
61-
/* @ngInject */
62-
function initColumnFilterPlugin(DTRendererService) {
63-
var lightColumnFilterPlugin = {
64-
postRender: postRender
65-
};
66-
DTRendererService.registerPlugin(lightColumnFilterPlugin);
67-
68-
function postRender(options, result) {
69-
if (options && options.hasLightColumnFilter) {
70-
var dt = $('#' + result.id).DataTable();
71-
new $.fn.dataTable.ColumnFilter(dt, options.lightColumnFilterOptions);
72-
}
48+
}
49+
50+
/* @ngInject */
51+
function initLightColumnFilterPlugin(DTRendererService) {
52+
var lightColumnFilterPlugin = {
53+
postRender: postRender
54+
};
55+
DTRendererService.registerPlugin(lightColumnFilterPlugin);
56+
57+
function postRender(options, result) {
58+
if (options && options.hasLightColumnFilter) {
59+
new $.fn.dataTable.ColumnFilter(result.DataTable, options.lightColumnFilterOptions);
7360
}
7461
}
75-
76-
initColumnFilterPlugin.$inject = ['DTRendererService'];
77-
78-
79-
})(window, document, jQuery, angular);
62+
}

0 commit comments

Comments
 (0)