adb-shared 5.0.36 → 5.0.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/components/pagers/pager-base.directive.mjs +36 -21
- package/fesm2015/adb-shared.mjs +35 -20
- package/fesm2015/adb-shared.mjs.map +1 -1
- package/fesm2020/adb-shared.mjs +35 -20
- package/fesm2020/adb-shared.mjs.map +1 -1
- package/lib/components/pagers/pager-base.directive.d.ts +4 -2
- package/package.json +1 -1
|
@@ -3,27 +3,40 @@ import { Directive } from '@angular/core';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class PagerBaseDirective {
|
|
5
5
|
constructor() {
|
|
6
|
-
this.limit = PagerBaseDirective.DEFAULT_LIMIT;
|
|
6
|
+
this.limit = PagerBaseDirective.DEFAULT_LIMIT;
|
|
7
7
|
this.currentPage = 1;
|
|
8
8
|
}
|
|
9
|
+
set setTotalCount(value) {
|
|
10
|
+
this.totalCount = value;
|
|
11
|
+
this.calculatePages();
|
|
12
|
+
}
|
|
13
|
+
set setLimit(value) {
|
|
14
|
+
this.limit = value ?? PagerBaseDirective.DEFAULT_LIMIT;
|
|
15
|
+
this.calculatePages();
|
|
16
|
+
}
|
|
9
17
|
calculatePages() {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
this.
|
|
13
|
-
this.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
18
|
+
if (this.totalCount >= 0 && this.limit > 0) {
|
|
19
|
+
this.amountOfPages = Math.ceil(this.totalCount / this.limit);
|
|
20
|
+
if ((this.currentPage + 1) > PagerBaseDirective.VISIBLE_PAGES) {
|
|
21
|
+
this.pages = [
|
|
22
|
+
this.currentPage - 2,
|
|
23
|
+
this.currentPage - 1, this.currentPage
|
|
24
|
+
];
|
|
25
|
+
const above = this.amountOfPages - this.currentPage;
|
|
26
|
+
if (above >= 1) {
|
|
27
|
+
this.pages.push(this.currentPage + 1);
|
|
28
|
+
}
|
|
29
|
+
if (above >= 2) {
|
|
30
|
+
this.pages.push(this.currentPage + 2);
|
|
31
|
+
}
|
|
19
32
|
}
|
|
20
|
-
if (
|
|
21
|
-
this.
|
|
33
|
+
else if (this.totalCount) {
|
|
34
|
+
const max = this.amountOfPages > PagerBaseDirective.VISIBLE_PAGES ? 5 : this.amountOfPages;
|
|
35
|
+
this.pages = Array(Math.ceil(max)).fill(1).map((x, i) => i + 1);
|
|
22
36
|
}
|
|
23
37
|
}
|
|
24
|
-
else
|
|
25
|
-
|
|
26
|
-
this.pages = Array(Math.ceil(max)).fill(1).map((x, i) => i + 1);
|
|
38
|
+
else {
|
|
39
|
+
this.amountOfPages = 0;
|
|
27
40
|
}
|
|
28
41
|
}
|
|
29
42
|
}
|
|
@@ -31,12 +44,14 @@ PagerBaseDirective.DEFAULT_LIMIT = 10;
|
|
|
31
44
|
PagerBaseDirective.VISIBLE_PAGES = 5;
|
|
32
45
|
PagerBaseDirective.SKIP_RESOURCE = 'offset';
|
|
33
46
|
/** @nocollapse */ PagerBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: PagerBaseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
34
|
-
/** @nocollapse */ PagerBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: PagerBaseDirective, inputs: {
|
|
47
|
+
/** @nocollapse */ PagerBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: PagerBaseDirective, inputs: { setTotalCount: ["totalCount", "setTotalCount"], setLimit: ["limit", "setLimit"] }, ngImport: i0 });
|
|
35
48
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: PagerBaseDirective, decorators: [{
|
|
36
49
|
type: Directive
|
|
37
|
-
}], propDecorators: {
|
|
38
|
-
type: Input
|
|
39
|
-
|
|
40
|
-
|
|
50
|
+
}], propDecorators: { setTotalCount: [{
|
|
51
|
+
type: Input,
|
|
52
|
+
args: ['totalCount']
|
|
53
|
+
}], setLimit: [{
|
|
54
|
+
type: Input,
|
|
55
|
+
args: ['limit']
|
|
41
56
|
}] } });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZXItYmFzZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcnRkYXRhLXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXJzL3BhZ2VyLWJhc2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFMUMsTUFBTSxPQUFnQixrQkFBa0I7SUFEeEM7UUFNSSxVQUFLLEdBQVcsa0JBQWtCLENBQUMsYUFBYSxDQUFDO1FBZWpELGdCQUFXLEdBQUcsQ0FBQyxDQUFDO0tBeUJuQjtJQXRDRyxJQUF5QixhQUFhLENBQUMsS0FBYTtRQUNoRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQW9CLFFBQVEsQ0FBQyxLQUFhO1FBQ3RDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxJQUFJLGtCQUFrQixDQUFDLGFBQWEsQ0FBQztRQUN2RCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQU9TLGNBQWM7UUFDcEIsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRTtZQUN4QyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0QsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLEdBQUcsa0JBQWtCLENBQUMsYUFBYSxFQUFFO2dCQUMzRCxJQUFJLENBQUMsS0FBSyxHQUFHO29CQUNULElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQztvQkFDcEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDLFdBQVc7aUJBQUMsQ0FBQztnQkFDNUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO2dCQUNwRCxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUU7b0JBQ1osSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQztpQkFDekM7Z0JBQ0QsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUFFO29CQUNaLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUM7aUJBQ3pDO2FBQ0o7aUJBQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUN4QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO2dCQUMzRixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzthQUNuRTtTQUNKO2FBQU07WUFDSCxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztTQUMxQjtJQUNMLENBQUM7O0FBMUNjLGdDQUFhLEdBQUcsRUFBRyxDQUFBO0FBQ25CLGdDQUFhLEdBQUcsQ0FBRSxDQUFBO0FBQ2hCLGdDQUFhLEdBQUcsUUFBUyxDQUFBO2tJQUh4QixrQkFBa0I7c0hBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUR2QyxTQUFTOzhCQVFtQixhQUFhO3NCQUFyQyxLQUFLO3VCQUFDLFlBQVk7Z0JBS0MsUUFBUTtzQkFBM0IsS0FBSzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUGFnZXJCYXNlRGlyZWN0aXZlIHtcclxuICAgIHByaXZhdGUgc3RhdGljIERFRkFVTFRfTElNSVQgPSAxMDtcclxuICAgIHByaXZhdGUgc3RhdGljIFZJU0lCTEVfUEFHRVMgPSA1O1xyXG4gICAgcHJvdGVjdGVkIHN0YXRpYyBTS0lQX1JFU09VUkNFID0gJ29mZnNldCc7XHJcbiAgICB0b3RhbENvdW50OiBudW1iZXI7XHJcbiAgICBsaW1pdDogbnVtYmVyID0gUGFnZXJCYXNlRGlyZWN0aXZlLkRFRkFVTFRfTElNSVQ7XHJcblxyXG4gICAgQElucHV0KCd0b3RhbENvdW50Jykgc2V0IHNldFRvdGFsQ291bnQodmFsdWU6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMudG90YWxDb3VudCA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuY2FsY3VsYXRlUGFnZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoJ2xpbWl0Jykgc2V0IHNldExpbWl0KHZhbHVlOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLmxpbWl0ID0gdmFsdWUgPz8gUGFnZXJCYXNlRGlyZWN0aXZlLkRFRkFVTFRfTElNSVQ7XHJcbiAgICAgICAgdGhpcy5jYWxjdWxhdGVQYWdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHBhZ2VzOiBBcnJheTxudW1iZXI+O1xyXG5cclxuICAgIGFtb3VudE9mUGFnZXM6IG51bWJlcjtcclxuICAgIGN1cnJlbnRQYWdlID0gMTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgY2FsY3VsYXRlUGFnZXMoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMudG90YWxDb3VudCA+PSAwICYmIHRoaXMubGltaXQgPiAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYW1vdW50T2ZQYWdlcyA9IE1hdGguY2VpbCh0aGlzLnRvdGFsQ291bnQgLyB0aGlzLmxpbWl0KTtcclxuICAgICAgICAgICAgaWYgKCh0aGlzLmN1cnJlbnRQYWdlICsgMSkgPiBQYWdlckJhc2VEaXJlY3RpdmUuVklTSUJMRV9QQUdFUykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wYWdlcyA9IFtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRQYWdlIC0gMixcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRQYWdlIC0gMSwgdGhpcy5jdXJyZW50UGFnZV07XHJcbiAgICAgICAgICAgICAgICBjb25zdCBhYm92ZSA9IHRoaXMuYW1vdW50T2ZQYWdlcyAtIHRoaXMuY3VycmVudFBhZ2U7XHJcbiAgICAgICAgICAgICAgICBpZiAoYWJvdmUgPj0gMSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFnZXMucHVzaCh0aGlzLmN1cnJlbnRQYWdlICsgMSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAoYWJvdmUgPj0gMikge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFnZXMucHVzaCh0aGlzLmN1cnJlbnRQYWdlICsgMik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy50b3RhbENvdW50KSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBtYXggPSB0aGlzLmFtb3VudE9mUGFnZXMgPiBQYWdlckJhc2VEaXJlY3RpdmUuVklTSUJMRV9QQUdFUyA/IDUgOiB0aGlzLmFtb3VudE9mUGFnZXM7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBhZ2VzID0gQXJyYXkoTWF0aC5jZWlsKG1heCkpLmZpbGwoMSkubWFwKCh4LCBpKSA9PiBpICsgMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmFtb3VudE9mUGFnZXMgPSAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuIl19
|
package/fesm2015/adb-shared.mjs
CHANGED
|
@@ -432,27 +432,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
432
432
|
|
|
433
433
|
class PagerBaseDirective {
|
|
434
434
|
constructor() {
|
|
435
|
-
this.limit = PagerBaseDirective.DEFAULT_LIMIT;
|
|
435
|
+
this.limit = PagerBaseDirective.DEFAULT_LIMIT;
|
|
436
436
|
this.currentPage = 1;
|
|
437
437
|
}
|
|
438
|
+
set setTotalCount(value) {
|
|
439
|
+
this.totalCount = value;
|
|
440
|
+
this.calculatePages();
|
|
441
|
+
}
|
|
442
|
+
set setLimit(value) {
|
|
443
|
+
this.limit = value !== null && value !== void 0 ? value : PagerBaseDirective.DEFAULT_LIMIT;
|
|
444
|
+
this.calculatePages();
|
|
445
|
+
}
|
|
438
446
|
calculatePages() {
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
this.
|
|
442
|
-
this.
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
447
|
+
if (this.totalCount >= 0 && this.limit > 0) {
|
|
448
|
+
this.amountOfPages = Math.ceil(this.totalCount / this.limit);
|
|
449
|
+
if ((this.currentPage + 1) > PagerBaseDirective.VISIBLE_PAGES) {
|
|
450
|
+
this.pages = [
|
|
451
|
+
this.currentPage - 2,
|
|
452
|
+
this.currentPage - 1, this.currentPage
|
|
453
|
+
];
|
|
454
|
+
const above = this.amountOfPages - this.currentPage;
|
|
455
|
+
if (above >= 1) {
|
|
456
|
+
this.pages.push(this.currentPage + 1);
|
|
457
|
+
}
|
|
458
|
+
if (above >= 2) {
|
|
459
|
+
this.pages.push(this.currentPage + 2);
|
|
460
|
+
}
|
|
448
461
|
}
|
|
449
|
-
if (
|
|
450
|
-
this.
|
|
462
|
+
else if (this.totalCount) {
|
|
463
|
+
const max = this.amountOfPages > PagerBaseDirective.VISIBLE_PAGES ? 5 : this.amountOfPages;
|
|
464
|
+
this.pages = Array(Math.ceil(max)).fill(1).map((x, i) => i + 1);
|
|
451
465
|
}
|
|
452
466
|
}
|
|
453
|
-
else
|
|
454
|
-
|
|
455
|
-
this.pages = Array(Math.ceil(max)).fill(1).map((x, i) => i + 1);
|
|
467
|
+
else {
|
|
468
|
+
this.amountOfPages = 0;
|
|
456
469
|
}
|
|
457
470
|
}
|
|
458
471
|
}
|
|
@@ -460,13 +473,15 @@ PagerBaseDirective.DEFAULT_LIMIT = 10;
|
|
|
460
473
|
PagerBaseDirective.VISIBLE_PAGES = 5;
|
|
461
474
|
PagerBaseDirective.SKIP_RESOURCE = 'offset';
|
|
462
475
|
/** @nocollapse */ PagerBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: PagerBaseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
463
|
-
/** @nocollapse */ PagerBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: PagerBaseDirective, inputs: {
|
|
476
|
+
/** @nocollapse */ PagerBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: PagerBaseDirective, inputs: { setTotalCount: ["totalCount", "setTotalCount"], setLimit: ["limit", "setLimit"] }, ngImport: i0 });
|
|
464
477
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: PagerBaseDirective, decorators: [{
|
|
465
478
|
type: Directive
|
|
466
|
-
}], propDecorators: {
|
|
467
|
-
type: Input
|
|
468
|
-
|
|
469
|
-
|
|
479
|
+
}], propDecorators: { setTotalCount: [{
|
|
480
|
+
type: Input,
|
|
481
|
+
args: ['totalCount']
|
|
482
|
+
}], setLimit: [{
|
|
483
|
+
type: Input,
|
|
484
|
+
args: ['limit']
|
|
470
485
|
}] } });
|
|
471
486
|
|
|
472
487
|
class PagerComponent extends PagerBaseDirective {
|