@esfaenza/es-pager 15.2.3 → 16.0.1

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.
@@ -0,0 +1,21 @@
1
+ import { Injectable } from "@angular/core";
2
+ import { LocalizationService } from "@esfaenza/localizations";
3
+ import * as i0 from "@angular/core";
4
+ /** Classe di localizzazione per il componente **TablePagerComponent** */
5
+ export class TablePagerLoc extends LocalizationService {
6
+ /** @ignore */
7
+ constructor(injector) {
8
+ super(injector);
9
+ super.set("en->it", "All", ["Tutto"]);
10
+ super.set("en->it", "Shown Elements", ["Elementi visualizzati"]);
11
+ super.set("en->it", "Shown Groups", ["Gruppi visualizzati"]);
12
+ super.set("en->it", "Are you sure you want to retrieve all results?", ["Si è sicuri di voler caricare tutti i risultati?"]);
13
+ super.set("en->it", "This might slow down the page and possibly crash the entire application", ["L'operazione potrebbe rallentare la pagina fino al crash dell'applicazione"]);
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TablePagerLoc, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
16
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TablePagerLoc }); }
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TablePagerLoc, decorators: [{
19
+ type: Injectable
20
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGVfcGFnZXIuY29tcG9uZW50LmxvYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLXBhZ2VyL3NyYy9saWIvY29tcG9uZW50cy9wYWdlci90YWJsZV9wYWdlci5jb21wb25lbnQubG9jLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBRTlELHlFQUF5RTtBQUV6RSxNQUFNLE9BQU8sYUFBYyxTQUFRLG1CQUFtQjtJQUVsRCxjQUFjO0lBQ2QsWUFBWSxRQUFrQjtRQUMxQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUN0QyxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQztRQUNqRSxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxjQUFjLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7UUFDN0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsZ0RBQWdELEVBQUUsQ0FBQyxrREFBa0QsQ0FBQyxDQUFDLENBQUM7UUFDNUgsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUseUVBQXlFLEVBQUUsQ0FBQyw0RUFBNEUsQ0FBQyxDQUFDLENBQUM7SUFDbkwsQ0FBQzsrR0FWUSxhQUFhO21IQUFiLGFBQWE7OzRGQUFiLGFBQWE7a0JBRHpCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IExvY2FsaXphdGlvblNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2xvY2FsaXphdGlvbnNcIjtcclxuXHJcbi8qKiBDbGFzc2UgZGkgbG9jYWxpenphemlvbmUgcGVyIGlsIGNvbXBvbmVudGUgKipUYWJsZVBhZ2VyQ29tcG9uZW50KiogKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgVGFibGVQYWdlckxvYyBleHRlbmRzIExvY2FsaXphdGlvblNlcnZpY2Uge1xyXG5cclxuICAgIC8qKiBAaWdub3JlICovXHJcbiAgICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcclxuICAgICAgICBzdXBlcihpbmplY3Rvcik7XHJcbiAgICAgICAgc3VwZXIuc2V0KFwiZW4tPml0XCIsIFwiQWxsXCIsIFtcIlR1dHRvXCJdKTtcclxuICAgICAgICBzdXBlci5zZXQoXCJlbi0+aXRcIiwgXCJTaG93biBFbGVtZW50c1wiLCBbXCJFbGVtZW50aSB2aXN1YWxpenphdGlcIl0pO1xyXG4gICAgICAgIHN1cGVyLnNldChcImVuLT5pdFwiLCBcIlNob3duIEdyb3Vwc1wiLCBbXCJHcnVwcGkgdmlzdWFsaXp6YXRpXCJdKTtcclxuICAgICAgICBzdXBlci5zZXQoXCJlbi0+aXRcIiwgXCJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcmV0cmlldmUgYWxsIHJlc3VsdHM/XCIsIFtcIlNpIMOoIHNpY3VyaSBkaSB2b2xlciBjYXJpY2FyZSB0dXR0aSBpIHJpc3VsdGF0aT9cIl0pO1xyXG4gICAgICAgIHN1cGVyLnNldChcImVuLT5pdFwiLCBcIlRoaXMgbWlnaHQgc2xvdyBkb3duIHRoZSBwYWdlIGFuZCBwb3NzaWJseSBjcmFzaCB0aGUgZW50aXJlIGFwcGxpY2F0aW9uXCIsIFtcIkwnb3BlcmF6aW9uZSBwb3RyZWJiZSByYWxsZW50YXJlIGxhIHBhZ2luYSBmaW5vIGFsIGNyYXNoIGRlbGwnYXBwbGljYXppb25lXCJdKTtcclxuICAgIH1cclxufSJdfQ==
@@ -0,0 +1,118 @@
1
+ // Angular
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, Optional, Output, ViewEncapsulation } from "@angular/core";
3
+ // Configurazioni
4
+ import { LocalizationService } from "@esfaenza/localizations";
5
+ // Applicazione
6
+ import { TablePagerLoc } from "./table_pager.component.loc";
7
+ import { ESP_DEBUG } from "../../tokens";
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@esfaenza/extensions";
10
+ import * as i2 from "@esfaenza/localizations";
11
+ import * as i3 from "@angular/common";
12
+ import * as i4 from "@angular/forms";
13
+ import * as i5 from "@angular/material/legacy-form-field";
14
+ import * as i6 from "@angular/material/legacy-input";
15
+ /** Componente che si occupa della paginazione di una tabella */
16
+ export class TablePagerComponent {
17
+ /** @ignore */
18
+ constructor(msgExts, lc, cdr, debug) {
19
+ this.msgExts = msgExts;
20
+ this.lc = lc;
21
+ this.cdr = cdr;
22
+ this.debug = debug;
23
+ /** Indica se deve mostrare un warning quando si cercano di solezionare come elementi da visualizzare "Tutti" */
24
+ this.WarnOnAll = true;
25
+ /** Indica se dare la possibilità o meno di selezionare "Tutti" nelle opzioni di paginazione */
26
+ this.AllSearch = true;
27
+ /** Placeholder che identifica il "Tutti" */
28
+ this.DefaultAll = 999999;
29
+ /** Indica se attivare la modalità gruppo con stili più snelli per apparire sotto ai raggruppamenti */
30
+ this.GroupMode = false;
31
+ /** Indica se utilizzare il conteggio dei gruppi o degli oggetti */
32
+ this.GroupCount = false;
33
+ /** Indica il testo che va a sostituire "Oggetti Visualizzati" in caso si stia facendo qualcosa di custom, Ignorato in caso di gruppi */
34
+ this.CountLabel = null;
35
+ /** Indica se visualizzare il numero totale di oggeti presenti */
36
+ this.ShowCount = true;
37
+ /** Indica se visualizzare il numero totale di oggeti presenti */
38
+ this.ShowPaging = true;
39
+ /** Output invocato quando il numero di elementi per pagina viene modificato da un click utente */
40
+ this.pagingSelected = new EventEmitter();
41
+ /** Opzioni di paginazione */
42
+ this.PagingOptions = [10, 15, 30, 45, 100];
43
+ }
44
+ /** @ignore */
45
+ ngOnInit() {
46
+ this.Model = this.View ? (this.View.itemsperpageoverride || 15) : this.CurrentPageSize;
47
+ if (this.AllSearch)
48
+ this.PagingOptions.push(this.DefaultAll);
49
+ }
50
+ /** @ignore */
51
+ ngOnChanges(changes) {
52
+ let newView = changes['View'];
53
+ let newCPS = changes['CurrentPageSize'];
54
+ if ((newView && !newView.firstChange) || (newCPS && !newCPS.firstChange))
55
+ this.Model = newView?.currentValue ? (newView.currentValue.itemsperpageoverride || 15) : newCPS?.currentValue ? newCPS.currentValue : null;
56
+ }
57
+ /**
58
+ * Funzione richiamata dal template quando un utente clicca su un numero di paginazione.
59
+ *
60
+ * Cliccare 2 volte sullo stesso numero causa comunque un refresh dei dati
61
+ *
62
+ * @param {number} pageSize Dimensione selezionata lato UI
63
+ */
64
+ choice(pageSize) {
65
+ if (pageSize == this.DefaultAll && this.WarnOnAll) {
66
+ this.msgExts.simpleWarningWithChoice(this.lc.loc("Are you sure you want to retrieve all results?"), this.lc.loc("This might slow down the page and possibly crash the entire application"), () => { this.pagingSelected.emit(pageSize); this.Model = pageSize; }, () => {
67
+ // Dio solo sa perché mi tocca fare sta roba... qui dentro per qualche motivo la CD non prende
68
+ let prevModel = this.Model;
69
+ this.Model = null;
70
+ this.cdr.detectChanges();
71
+ this.Model = prevModel;
72
+ this.cdr.detectChanges();
73
+ });
74
+ }
75
+ else {
76
+ this.pagingSelected.emit(pageSize);
77
+ this.Model = pageSize;
78
+ }
79
+ }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TablePagerComponent, deps: [{ token: i1.MessageService }, { token: i2.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ESP_DEBUG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
81
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TablePagerComponent, selector: "app-paging", inputs: { CurrentPageSize: "CurrentPageSize", View: "View", WarnOnAll: "WarnOnAll", AllSearch: "AllSearch", DefaultAll: "DefaultAll", GroupMode: "GroupMode", GroupCount: "GroupCount", CountLabel: "CountLabel", ShowCount: "ShowCount", ShowPaging: "ShowPaging", PagerCount: "PagerCount", Hidden: "Hidden" }, outputs: { pagingSelected: "pagingSelected" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : lc.Locale}}</span>\r\n</div>", styles: [".est-rg-ipp-sel-all,.est-rg-ipp-sel,.est-ipp-sel-all{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-head-resizer{top:0;right:0;bottom:0;width:2px;position:absolute;cursor:col-resize;background-color:#ccc}.est-ipp-sel{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-ipp-bold{font-weight:700}.mat-paginator-page-size-select{margin:0 4px;width:50px}.mat-paginator-page-size-select .mat-form-field-wrapper{height:52px!important;margin-top:-15px!important;padding:0!important}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{margin-top:-5.5px!important}.mat-paginator-page-size-select .mat-form-field-underline{bottom:10px}.est-mt-4{margin-top:4px!important}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLegacyInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", exportAs: ["matInput"] }, { kind: "pipe", type: i3.DecimalPipe, name: "number" }, { kind: "pipe", type: i2.LocalizePipe, name: "localize" }], viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
82
+ }
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TablePagerComponent, decorators: [{
84
+ type: Component,
85
+ args: [{ selector: "app-paging", viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : lc.Locale}}</span>\r\n</div>", styles: [".est-rg-ipp-sel-all,.est-rg-ipp-sel,.est-ipp-sel-all{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-head-resizer{top:0;right:0;bottom:0;width:2px;position:absolute;cursor:col-resize;background-color:#ccc}.est-ipp-sel{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-ipp-bold{font-weight:700}.mat-paginator-page-size-select{margin:0 4px;width:50px}.mat-paginator-page-size-select .mat-form-field-wrapper{height:52px!important;margin-top:-15px!important;padding:0!important}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{margin-top:-5.5px!important}.mat-paginator-page-size-select .mat-form-field-underline{bottom:10px}.est-mt-4{margin-top:4px!important}\n"] }]
86
+ }], ctorParameters: function () { return [{ type: i1.MessageService }, { type: i2.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
87
+ type: Optional
88
+ }, {
89
+ type: Inject,
90
+ args: [ESP_DEBUG]
91
+ }] }]; }, propDecorators: { CurrentPageSize: [{
92
+ type: Input
93
+ }], View: [{
94
+ type: Input
95
+ }], WarnOnAll: [{
96
+ type: Input
97
+ }], AllSearch: [{
98
+ type: Input
99
+ }], DefaultAll: [{
100
+ type: Input
101
+ }], GroupMode: [{
102
+ type: Input
103
+ }], GroupCount: [{
104
+ type: Input
105
+ }], CountLabel: [{
106
+ type: Input
107
+ }], ShowCount: [{
108
+ type: Input
109
+ }], ShowPaging: [{
110
+ type: Input
111
+ }], PagerCount: [{
112
+ type: Input
113
+ }], Hidden: [{
114
+ type: Input
115
+ }], pagingSelected: [{
116
+ type: Output
117
+ }] } });
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGVfcGFnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtcGFnZXIvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VyL3RhYmxlX3BhZ2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLXBhZ2VyL3NyYy9saWIvY29tcG9uZW50cy9wYWdlci90YWJsZV9wYWdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBaUIsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkssaUJBQWlCO0FBQ2pCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRzlELGVBQWU7QUFDZixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7Ozs7QUFFekMsZ0VBQWdFO0FBU2hFLE1BQU0sT0FBTyxtQkFBbUI7SUF5QzVCLGNBQWM7SUFDZCxZQUFvQixPQUF1QixFQUFTLEVBQXVCLEVBQVMsR0FBc0IsRUFBd0MsS0FBYztRQUE1SSxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUFTLE9BQUUsR0FBRixFQUFFLENBQXFCO1FBQVMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFBd0MsVUFBSyxHQUFMLEtBQUssQ0FBUztRQWxDaEssZ0hBQWdIO1FBQ3ZHLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFFbkMsK0ZBQStGO1FBQ3RGLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFFbkMsNENBQTRDO1FBQ25DLGVBQVUsR0FBRyxNQUFNLENBQUM7UUFFN0Isc0dBQXNHO1FBQzdG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QVEsRUFBRSxhQUFhLEVBQUUsQ0FBQzs7NEZBTWpFLG1CQUFtQjtrQkFSL0IsU0FBUzsrQkFDSSxZQUFZLGlCQUNQLENBQUMsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxDQUFDLGlCQUczRCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNOzswQkE0QzhELFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsU0FBUzs0Q0F2Q2hJLGVBQWU7c0JBQXZCLEtBQUs7Z0JBR0csSUFBSTtzQkFBWixLQUFLO2dCQUdHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBR0csU0FBUztzQkFBakIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBR0csVUFBVTtzQkFBbEIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBR0csVUFBVTtzQkFBbEIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLE1BQU07c0JBQWQsS0FBSztnQkFHSSxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPcHRpb25hbCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vLyBDb25maWd1cmF6aW9uaVxyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9sb2NhbGl6YXRpb25zXCI7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9leHRlbnNpb25zXCI7XHJcblxyXG4vLyBBcHBsaWNhemlvbmVcclxuaW1wb3J0IHsgVGFibGVQYWdlckxvYyB9IGZyb20gXCIuL3RhYmxlX3BhZ2VyLmNvbXBvbmVudC5sb2NcIjtcclxuaW1wb3J0IHsgRVNQX0RFQlVHIH0gZnJvbSBcIi4uLy4uL3Rva2Vuc1wiO1xyXG5cclxuLyoqIENvbXBvbmVudGUgY2hlIHNpIG9jY3VwYSBkZWxsYSBwYWdpbmF6aW9uZSBkaSB1bmEgdGFiZWxsYSAqL1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcImFwcC1wYWdpbmdcIixcclxuICAgIHZpZXdQcm92aWRlcnM6IFt7IHByb3ZpZGU6IExvY2FsaXphdGlvblNlcnZpY2UsIHVzZUNsYXNzOiBUYWJsZVBhZ2VyTG9jIH1dLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFibGVfcGFnZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vdGFibGVfcGFnZXIuY29tcG9uZW50Lmh0bWxcIixcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVQYWdlckNvbXBvbmVudCB7XHJcblxyXG4gICAgLyoqIERpbWVuc2lvbmUgZGkgcGFnaW5hIGF0dHVhbGUgKi9cclxuICAgIEBJbnB1dCgpIEN1cnJlbnRQYWdlU2l6ZTogYW55O1xyXG5cclxuICAgIC8qKiBWaWV3IGdlc3RpdGEsIGNoZSBwdcOyIGVzc2VyZSB1biBJQXBwU2VhcmNoIG8gdW5hIFJlcG9ydFZpZXcgKi9cclxuICAgIEBJbnB1dCgpIFZpZXc6IGFueTtcclxuXHJcbiAgICAvKiogSW5kaWNhIHNlIGRldmUgbW9zdHJhcmUgdW4gd2FybmluZyBxdWFuZG8gc2kgY2VyY2FubyBkaSBzb2xlemlvbmFyZSBjb21lIGVsZW1lbnRpIGRhIHZpc3VhbGl6emFyZSBcIlR1dHRpXCIgKi9cclxuICAgIEBJbnB1dCgpIFdhcm5PbkFsbDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gICAgLyoqIEluZGljYSBzZSBkYXJlIGxhIHBvc3NpYmlsaXTDoCBvIG1lbm8gZGkgc2VsZXppb25hcmUgXCJUdXR0aVwiIG5lbGxlIG9wemlvbmkgZGkgcGFnaW5hemlvbmUgKi9cclxuICAgIEBJbnB1dCgpIEFsbFNlYXJjaDogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBcclxuICAgIC8qKiBQbGFjZWhvbGRlciBjaGUgaWRlbnRpZmljYSBpbCBcIlR1dHRpXCIgKi9cclxuICAgIEBJbnB1dCgpIERlZmF1bHRBbGwgPSA5OTk5OTk7XHJcbiAgICBcclxuICAgIC8qKiBJbmRpY2Egc2UgYXR0aXZhcmUgbGEgbW9kYWxpdMOgIGdydXBwbyBjb24gc3RpbGkgcGnDuSBzbmVsbGkgcGVyIGFwcGFyaXJlIHNvdHRvIGFpIHJhZ2dydXBwYW1lbnRpICovXHJcbiAgICBASW5wdXQoKSBHcm91cE1vZGUgPSBmYWxzZTtcclxuXHJcbiAgICAvKiogSW5kaWNhIHNlIHV0aWxpenphcmUgaWwgY29udGVnZ2lvIGRlaSBncnVwcGkgbyBkZWdsaSBvZ2dldHRpICovXHJcbiAgICBASW5wdXQoKSBHcm91cENvdW50ID0gZmFsc2U7XHJcblxyXG4gICAgLyoqIEluZGljYSBpbCB0ZXN0byBjaGUgdmEgYSBzb3N0aXR1aXJlIFwiT2dnZXR0aSBWaXN1YWxpenphdGlcIiBpbiBjYXNvIHNpIHN0aWEgZmFjZW5kbyBxdWFsY29zYSBkaSBjdXN0b20sIElnbm9yYXRvIGluIGNhc28gZGkgZ3J1cHBpICovXHJcbiAgICBASW5wdXQoKSBDb3VudExhYmVsOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICAgIC8qKiBJbmRpY2Egc2UgdmlzdWFsaXp6YXJlIGlsIG51bWVybyB0b3RhbGUgZGkgb2dnZXRpIHByZXNlbnRpICovXHJcbiAgICBASW5wdXQoKSBTaG93Q291bnQ6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIC8qKiBJbmRpY2Egc2UgdmlzdWFsaXp6YXJlIGlsIG51bWVybyB0b3RhbGUgZGkgb2dnZXRpIHByZXNlbnRpICovXHJcbiAgICBASW5wdXQoKSBTaG93UGFnaW5nOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgICAvKiogSW5kaWNhIGlsIG51bWVybyB0b3RhbGUgZGkgb2dnZXRpIHByZXNlbnRpICovXHJcbiAgICBASW5wdXQoKSBQYWdlckNvdW50OiBudW1iZXI7XHJcblxyXG4gICAgLyoqIEluZGljYSBzZSBtb3N0cmFyZSBvIG1lbm8gaWwgY29udGVudXRvIEBkZXByZWNhdGVkIHVzYXRhIHNvbG8gZGEgTWF0cml4VmFsdWVzQ29tcG9uZW50IG5lbGxhIGxpYiByZWxhdGl2YSAqL1xyXG4gICAgQElucHV0KCkgSGlkZGVuOiBib29sZWFuO1xyXG5cclxuICAgIC8qKiBPdXRwdXQgaW52b2NhdG8gcXVhbmRvIGlsIG51bWVybyBkaSBlbGVtZW50aSBwZXIgcGFnaW5hIHZpZW5lIG1vZGlmaWNhdG8gZGEgdW4gY2xpY2sgdXRlbnRlICovXHJcbiAgICBAT3V0cHV0KCkgcGFnaW5nU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuXHJcbiAgICAvKiogQGlnbm9yZSAqL1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBtc2dFeHRzOiBNZXNzYWdlU2VydmljZSwgcHVibGljIGxjOiBMb2NhbGl6YXRpb25TZXJ2aWNlLCBwdWJsaWMgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgQE9wdGlvbmFsKCkgQEluamVjdChFU1BfREVCVUcpIHB1YmxpYyBkZWJ1ZzogYm9vbGVhbikgeyB9XHJcblxyXG4gICAgLyoqIE1vZGVsbG8gc3UgY3VpIGxhIHNlbGVjdCBlZmZldHR1YSBvcGVyYXppb25pIGRpIHNlbGV6aW9uZSAqL1xyXG4gICAgcHVibGljIE1vZGVsOiBudW1iZXI7XHJcblxyXG4gICAgLyoqIE9wemlvbmkgZGkgcGFnaW5hemlvbmUgKi9cclxuICAgIHB1YmxpYyBQYWdpbmdPcHRpb25zOiBudW1iZXJbXSA9IFsxMCwgMTUsIDMwLCA0NSwgMTAwIF07XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgKi9cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuTW9kZWwgPSB0aGlzLlZpZXcgPyAodGhpcy5WaWV3Lml0ZW1zcGVycGFnZW92ZXJyaWRlIHx8IDE1KSA6IHRoaXMuQ3VycmVudFBhZ2VTaXplO1xyXG4gICAgICAgIGlmICh0aGlzLkFsbFNlYXJjaClcclxuICAgICAgICAgICAgdGhpcy5QYWdpbmdPcHRpb25zLnB1c2godGhpcy5EZWZhdWx0QWxsKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogQGlnbm9yZSAqL1xyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgICAgIGxldCBuZXdWaWV3ID0gY2hhbmdlc1snVmlldyddO1xyXG4gICAgICAgIGxldCBuZXdDUFMgPSBjaGFuZ2VzWydDdXJyZW50UGFnZVNpemUnXTtcclxuXHJcbiAgICAgICAgaWYgKChuZXdWaWV3ICYmICFuZXdWaWV3LmZpcnN0Q2hhbmdlKSB8fCAobmV3Q1BTICYmICFuZXdDUFMuZmlyc3RDaGFuZ2UpKVxyXG4gICAgICAgICAgICB0aGlzLk1vZGVsID0gbmV3Vmlldz8uY3VycmVudFZhbHVlID8gKG5ld1ZpZXcuY3VycmVudFZhbHVlLml0ZW1zcGVycGFnZW92ZXJyaWRlIHx8IDE1KSA6IG5ld0NQUz8uY3VycmVudFZhbHVlID8gbmV3Q1BTLmN1cnJlbnRWYWx1ZSA6IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBGdW56aW9uZSByaWNoaWFtYXRhIGRhbCB0ZW1wbGF0ZSBxdWFuZG8gdW4gdXRlbnRlIGNsaWNjYSBzdSB1biBudW1lcm8gZGkgcGFnaW5hemlvbmUuXHJcbiAgICAgKiBcclxuICAgICAqIENsaWNjYXJlIDIgdm9sdGUgc3VsbG8gc3Rlc3NvIG51bWVybyBjYXVzYSBjb211bnF1ZSB1biByZWZyZXNoIGRlaSBkYXRpXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBwYWdlU2l6ZSBEaW1lbnNpb25lIHNlbGV6aW9uYXRhIGxhdG8gVUlcclxuICAgICAqL1xyXG4gICAgcHVibGljIGNob2ljZShwYWdlU2l6ZTogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKHBhZ2VTaXplID09IHRoaXMuRGVmYXVsdEFsbCAmJiB0aGlzLldhcm5PbkFsbCkge1xyXG4gICAgICAgICAgICB0aGlzLm1zZ0V4dHMuc2ltcGxlV2FybmluZ1dpdGhDaG9pY2UoXHJcbiAgICAgICAgICAgICAgICB0aGlzLmxjLmxvYyhcIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZXRyaWV2ZSBhbGwgcmVzdWx0cz9cIiksXHJcbiAgICAgICAgICAgICAgICB0aGlzLmxjLmxvYyhcIlRoaXMgbWlnaHQgc2xvdyBkb3duIHRoZSBwYWdlIGFuZCBwb3NzaWJseSBjcmFzaCB0aGUgZW50aXJlIGFwcGxpY2F0aW9uXCIpLFxyXG4gICAgICAgICAgICAgICAgKCkgPT4geyB0aGlzLnBhZ2luZ1NlbGVjdGVkLmVtaXQocGFnZVNpemUpOyB0aGlzLk1vZGVsID0gcGFnZVNpemU7IH0sXHJcbiAgICAgICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gRGlvIHNvbG8gc2EgcGVyY2jDqSBtaSB0b2NjYSBmYXJlIHN0YSByb2JhLi4uIHF1aSBkZW50cm8gcGVyIHF1YWxjaGUgbW90aXZvIGxhIENEIG5vbiBwcmVuZGVcclxuICAgICAgICAgICAgICAgICAgICBsZXQgcHJldk1vZGVsID0gdGhpcy5Nb2RlbDtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLk1vZGVsID0gbnVsbDtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5Nb2RlbCA9IHByZXZNb2RlbDtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMucGFnaW5nU2VsZWN0ZWQuZW1pdChwYWdlU2l6ZSk7XHJcbiAgICAgICAgICAgIHRoaXMuTW9kZWwgPSBwYWdlU2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCI8ZGl2ICpuZ0lmPVwiIUhpZGRlblwiIFtjbGFzcy5lc3QtbXQtNF09XCJTaG93Q291bnQgJiYgUGFnZXJDb3VudCAhPSAtMSAmJiAhKFNob3dQYWdpbmcgJiYgTW9kZWwgJiYgKE1vZGVsID09IERlZmF1bHRBbGwgfHwgUGFnZXJDb3VudCA+PSBNb2RlbCB8fCBQYWdlckNvdW50ID09IC0xKSlcIj5cclxuICA8c3BhbiBjbGFzcz1cImVzdC1mcy0xNFwiPiB7e0NvdW50TGFiZWwgJiYgIUdyb3VwTW9kZSA/IENvdW50TGFiZWwgOiAoKEdyb3VwTW9kZSA/ICdTaG93biBHcm91cHMnIDogJ1Nob3duIEVsZW1lbnRzJykgfCBsb2NhbGl6ZSA6IGxjKX19OiZuYnNwOzwvc3Bhbj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiU2hvd1BhZ2luZyAmJiBNb2RlbCAmJiAoTW9kZWwgPT0gRGVmYXVsdEFsbCB8fCBQYWdlckNvdW50ID49IE1vZGVsIHx8IFBhZ2VyQ291bnQgPT0gLTEpXCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgW2FwcGVhcmFuY2VdPVwiJ2xlZ2FjeSdcIiBjbGFzcz1cIm1hdC1wYWdpbmF0b3ItcGFnZS1zaXplLXNlbGVjdCBlc3QtZnMtMTQgZXN0LWlwcC1ib2xkXCI+XHJcbiAgICAgIDxzZWxlY3QgbWF0TmF0aXZlQ29udHJvbCBbbmdNb2RlbF09XCJNb2RlbFwiIG5hbWU9XCJpbnB1dFwiIChuZ01vZGVsQ2hhbmdlKT1cImNob2ljZSgkZXZlbnQpXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcE9wdCBvZiBQYWdpbmdPcHRpb25zXCI+XHJcbiAgICAgICAgICA8b3B0aW9uICpuZ0lmPVwicE9wdCA9PSBEZWZhdWx0QWxsIHx8IFBhZ2VyQ291bnQgPj0gcE9wdCB8fCBQYWdlckNvdW50ID09IC0xXCIgW3ZhbHVlXT1cInBPcHRcIj57eyBwT3B0ID09IERlZmF1bHRBbGwgPyAoJ0FsbCcgfCBsb2NhbGl6ZSA6IGxjKSA6IHBPcHQudG9TdHJpbmcoKX19PC9vcHRpb24+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxzcGFuIGNsYXNzPVwiZXN0LWZzLTE0IGVzdC1pcHAtYm9sZFwiICpuZ0lmPVwiU2hvd0NvdW50ICYmIFBhZ2VyQ291bnQgIT0gLTFcIj4mbmJzcDsvJm5ic3A7PC9zcGFuPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxzcGFuIGNsYXNzPVwiZXN0LWZzLTE0IGVzdC1pcHAtYm9sZFwiICpuZ0lmPVwiU2hvd0NvdW50ICYmIFBhZ2VyQ291bnQgIT0gLTFcIj57e1BhZ2VyQ291bnQgfCBudW1iZXIgOiAnMC4wLTAnIDogbGMuTG9jYWxlfX08L3NwYW4+XHJcbjwvZGl2PiJdfQ==
@@ -0,0 +1,49 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { RouterModule } from '@angular/router';
5
+ import { MatLegacySelectModule as MatSelectModule } from "@angular/material/legacy-select";
6
+ import { MatLegacyInputModule as MatInputModule } from "@angular/material/legacy-input";
7
+ import { LocalizationModule } from '@esfaenza/localizations';
8
+ import { ESP_DEBUG } from './tokens';
9
+ import { TablePagerComponent } from './components/pager/table_pager.component';
10
+ import * as i0 from "@angular/core";
11
+ export class EsPagerModule {
12
+ static forRoot(config) {
13
+ return {
14
+ ngModule: EsPagerModule,
15
+ providers: [
16
+ { provide: ESP_DEBUG, useValue: config?.debugMode || false }
17
+ ]
18
+ };
19
+ }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EsPagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
21
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EsPagerModule, declarations: [TablePagerComponent], imports: [CommonModule,
22
+ FormsModule,
23
+ RouterModule,
24
+ LocalizationModule,
25
+ MatSelectModule,
26
+ MatInputModule], exports: [TablePagerComponent] }); }
27
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EsPagerModule, imports: [CommonModule,
28
+ FormsModule,
29
+ RouterModule,
30
+ LocalizationModule,
31
+ MatSelectModule,
32
+ MatInputModule] }); }
33
+ }
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EsPagerModule, decorators: [{
35
+ type: NgModule,
36
+ args: [{
37
+ imports: [
38
+ CommonModule,
39
+ FormsModule,
40
+ RouterModule,
41
+ LocalizationModule,
42
+ MatSelectModule,
43
+ MatInputModule,
44
+ ],
45
+ declarations: [TablePagerComponent],
46
+ exports: [TablePagerComponent]
47
+ }]
48
+ }] });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtcGFnZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtcGFnZXIvc3JjL2xpYi9lcy1wYWdlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLHFCQUFxQixJQUFJLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxvQkFBb0IsSUFBSSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBR3JDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOztBQWMvRSxNQUFNLE9BQU8sYUFBYTtJQUN4QixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQTRCO1FBQ3pDLE9BQU87WUFDTCxRQUFRLEVBQUUsYUFBYTtZQUN2QixTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsU0FBUyxJQUFJLEtBQUssRUFBRTthQUM3RDtTQUNGLENBQUM7SUFDSixDQUFDOytHQVJVLGFBQWE7Z0hBQWIsYUFBYSxpQkFIVCxtQkFBbUIsYUFQaEMsWUFBWTtZQUNaLFdBQVc7WUFDWCxZQUFZO1lBQ1osa0JBQWtCO1lBQ2xCLGVBQWU7WUFDZixjQUFjLGFBR04sbUJBQW1CO2dIQUVsQixhQUFhLFlBVnRCLFlBQVk7WUFDWixXQUFXO1lBQ1gsWUFBWTtZQUNaLGtCQUFrQjtZQUNsQixlQUFlO1lBQ2YsY0FBYzs7NEZBS0wsYUFBYTtrQkFaekIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLGNBQWM7cUJBQ2Y7b0JBQ0QsWUFBWSxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQ25DLE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuaW1wb3J0IHsgTWF0TGVnYWN5U2VsZWN0TW9kdWxlIGFzIE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktc2VsZWN0XCI7XHJcbmltcG9ydCB7IE1hdExlZ2FjeUlucHV0TW9kdWxlIGFzIE1hdElucHV0TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1pbnB1dFwiO1xyXG5cclxuaW1wb3J0IHsgTG9jYWxpemF0aW9uTW9kdWxlIH0gZnJvbSAnQGVzZmFlbnphL2xvY2FsaXphdGlvbnMnO1xyXG5cclxuaW1wb3J0IHsgRVNQX0RFQlVHIH0gZnJvbSAnLi90b2tlbnMnO1xyXG5pbXBvcnQgeyBFc1BhZ2VyTW9kdWxlQ29uZmlnIH0gZnJvbSAnLi9kb21haW4vY29uZmlndXJhdGlvbi9Fc1BhZ2VyTW9kdWxlQ29uZmlnJztcclxuXHJcbmltcG9ydCB7IFRhYmxlUGFnZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcGFnZXIvdGFibGVfcGFnZXIuY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsIFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gICAgTG9jYWxpemF0aW9uTW9kdWxlLFxyXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtUYWJsZVBhZ2VyQ29tcG9uZW50XSxcclxuICBleHBvcnRzOiBbVGFibGVQYWdlckNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEVzUGFnZXJNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZz86IEVzUGFnZXJNb2R1bGVDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEVzUGFnZXJNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBFc1BhZ2VyTW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7IHByb3ZpZGU6IEVTUF9ERUJVRywgdXNlVmFsdWU6IGNvbmZpZz8uZGVidWdNb2RlIHx8IGZhbHNlIH1cclxuICAgICAgXVxyXG4gICAgfTtcclxuICB9XHJcbn0iXX0=
@@ -0,0 +1,4 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ /** Token che indica se emettere log a console o meno */
3
+ export const ESP_DEBUG = new InjectionToken('ESP_DEBUG');
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtcGFnZXIvc3JjL2xpYi90b2tlbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyx3REFBd0Q7QUFDeEQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUEyQixJQUFJLGNBQWMsQ0FBUyxXQUFXLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vKiogVG9rZW4gY2hlIGluZGljYSBzZSBlbWV0dGVyZSBsb2cgYSBjb25zb2xlIG8gbWVubyAqL1xyXG5leHBvcnQgY29uc3QgRVNQX0RFQlVHOiBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+ID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ0VTUF9ERUJVRycpOyJdfQ==
@@ -1,9 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, Injectable, Optional, Inject, EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, NgModule } from '@angular/core';
2
+ import { Injectable, InjectionToken, EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Optional, Inject, Input, Output, NgModule } from '@angular/core';
3
3
  import * as i2 from '@esfaenza/localizations';
4
4
  import { LocalizationService, LocalizationModule } from '@esfaenza/localizations';
5
5
  import * as i1 from '@esfaenza/extensions';
6
- import { MessageService } from '@esfaenza/extensions';
7
6
  import * as i3 from '@angular/common';
8
7
  import { CommonModule } from '@angular/common';
9
8
  import * as i4 from '@angular/forms';
@@ -18,43 +17,35 @@ import { MatLegacySelectModule } from '@angular/material/legacy-select';
18
17
  class EsPagerModuleConfig {
19
18
  }
20
19
 
21
- /** Token che indica il locale da utilizzare all'interno del componente. Supportati solo "it-IT" ed "en-US" */
22
- const ESP_LOCALE = new InjectionToken('ESP_LOCALE');
23
- /** Token che indica se emettere log a console o meno */
24
- const ESP_DEBUG = new InjectionToken('ESP_DEBUG');
25
-
26
20
  /** Classe di localizzazione per il componente **TablePagerComponent** */
27
21
  class TablePagerLoc extends LocalizationService {
28
22
  /** @ignore */
29
- constructor(LOC_LOCALE) {
30
- super(LOC_LOCALE ?? 'it-IT');
23
+ constructor(injector) {
24
+ super(injector);
31
25
  super.set("en->it", "All", ["Tutto"]);
32
26
  super.set("en->it", "Shown Elements", ["Elementi visualizzati"]);
33
27
  super.set("en->it", "Shown Groups", ["Gruppi visualizzati"]);
34
28
  super.set("en->it", "Are you sure you want to retrieve all results?", ["Si è sicuri di voler caricare tutti i risultati?"]);
35
29
  super.set("en->it", "This might slow down the page and possibly crash the entire application", ["L'operazione potrebbe rallentare la pagina fino al crash dell'applicazione"]);
36
30
  }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TablePagerLoc, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
32
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TablePagerLoc }); }
37
33
  }
38
- TablePagerLoc.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerLoc, deps: [{ token: ESP_LOCALE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
39
- TablePagerLoc.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerLoc });
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerLoc, decorators: [{
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TablePagerLoc, decorators: [{
41
35
  type: Injectable
42
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
43
- type: Optional
44
- }, {
45
- type: Inject,
46
- args: [ESP_LOCALE]
47
- }] }]; } });
36
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
37
+
38
+ /** Token che indica se emettere log a console o meno */
39
+ const ESP_DEBUG = new InjectionToken('ESP_DEBUG');
48
40
 
49
41
  // Angular
50
42
  /** Componente che si occupa della paginazione di una tabella */
51
43
  class TablePagerComponent {
52
44
  /** @ignore */
53
- constructor(msgExts, lc, cdr, locale, debug) {
45
+ constructor(msgExts, lc, cdr, debug) {
54
46
  this.msgExts = msgExts;
55
47
  this.lc = lc;
56
48
  this.cdr = cdr;
57
- this.locale = locale;
58
49
  this.debug = debug;
59
50
  /** Indica se deve mostrare un warning quando si cercano di solezionare come elementi da visualizzare "Tutti" */
60
51
  this.WarnOnAll = true;
@@ -113,19 +104,14 @@ class TablePagerComponent {
113
104
  this.Model = pageSize;
114
105
  }
115
106
  }
107
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TablePagerComponent, deps: [{ token: i1.MessageService }, { token: i2.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ESP_DEBUG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
108
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TablePagerComponent, selector: "app-paging", inputs: { CurrentPageSize: "CurrentPageSize", View: "View", WarnOnAll: "WarnOnAll", AllSearch: "AllSearch", DefaultAll: "DefaultAll", GroupMode: "GroupMode", GroupCount: "GroupCount", CountLabel: "CountLabel", ShowCount: "ShowCount", ShowPaging: "ShowPaging", PagerCount: "PagerCount", Hidden: "Hidden" }, outputs: { pagingSelected: "pagingSelected" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : lc.Locale}}</span>\r\n</div>", styles: [".est-rg-ipp-sel-all,.est-rg-ipp-sel,.est-ipp-sel-all{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-head-resizer{top:0;right:0;bottom:0;width:2px;position:absolute;cursor:col-resize;background-color:#ccc}.est-ipp-sel{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-ipp-bold{font-weight:700}.mat-paginator-page-size-select{margin:0 4px;width:50px}.mat-paginator-page-size-select .mat-form-field-wrapper{height:52px!important;margin-top:-15px!important;padding:0!important}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{margin-top:-5.5px!important}.mat-paginator-page-size-select .mat-form-field-underline{bottom:10px}.est-mt-4{margin-top:4px!important}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLegacyInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", exportAs: ["matInput"] }, { kind: "pipe", type: i3.DecimalPipe, name: "number" }, { kind: "pipe", type: i2.LocalizePipe, name: "localize" }], viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
116
109
  }
117
- TablePagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerComponent, deps: [{ token: i1.MessageService }, { token: i2.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ESP_LOCALE, optional: true }, { token: ESP_DEBUG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
118
- TablePagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TablePagerComponent, selector: "app-paging", inputs: { CurrentPageSize: "CurrentPageSize", View: "View", WarnOnAll: "WarnOnAll", AllSearch: "AllSearch", DefaultAll: "DefaultAll", GroupMode: "GroupMode", GroupCount: "GroupCount", CountLabel: "CountLabel", ShowCount: "ShowCount", ShowPaging: "ShowPaging", PagerCount: "PagerCount", Hidden: "Hidden" }, outputs: { pagingSelected: "pagingSelected" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : locale}}</span>\r\n</div>", styles: [".est-rg-ipp-sel-all,.est-rg-ipp-sel,.est-ipp-sel-all{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-head-resizer{top:0;right:0;bottom:0;width:2px;position:absolute;cursor:col-resize;background-color:#ccc}.est-ipp-sel{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-ipp-bold{font-weight:700}.mat-paginator-page-size-select{margin:0 4px;width:50px}.mat-paginator-page-size-select .mat-form-field-wrapper{height:52px!important;margin-top:-15px!important;padding:0!important}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{margin-top:-5.5px!important}.mat-paginator-page-size-select .mat-form-field-underline{bottom:10px}.est-mt-4{margin-top:4px!important}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLegacyInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", exportAs: ["matInput"] }, { kind: "pipe", type: i3.DecimalPipe, name: "number" }, { kind: "pipe", type: i2.LocalizePipe, name: "localize" }], viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerComponent, decorators: [{
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TablePagerComponent, decorators: [{
120
111
  type: Component,
121
- args: [{ selector: "app-paging", viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : locale}}</span>\r\n</div>", styles: [".est-rg-ipp-sel-all,.est-rg-ipp-sel,.est-ipp-sel-all{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-head-resizer{top:0;right:0;bottom:0;width:2px;position:absolute;cursor:col-resize;background-color:#ccc}.est-ipp-sel{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-ipp-bold{font-weight:700}.mat-paginator-page-size-select{margin:0 4px;width:50px}.mat-paginator-page-size-select .mat-form-field-wrapper{height:52px!important;margin-top:-15px!important;padding:0!important}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{margin-top:-5.5px!important}.mat-paginator-page-size-select .mat-form-field-underline{bottom:10px}.est-mt-4{margin-top:4px!important}\n"] }]
112
+ args: [{ selector: "app-paging", viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : lc.Locale}}</span>\r\n</div>", styles: [".est-rg-ipp-sel-all,.est-rg-ipp-sel,.est-ipp-sel-all{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-head-resizer{top:0;right:0;bottom:0;width:2px;position:absolute;cursor:col-resize;background-color:#ccc}.est-ipp-sel{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-ipp-bold{font-weight:700}.mat-paginator-page-size-select{margin:0 4px;width:50px}.mat-paginator-page-size-select .mat-form-field-wrapper{height:52px!important;margin-top:-15px!important;padding:0!important}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{margin-top:-5.5px!important}.mat-paginator-page-size-select .mat-form-field-underline{bottom:10px}.est-mt-4{margin-top:4px!important}\n"] }]
122
113
  }], ctorParameters: function () { return [{ type: i1.MessageService }, { type: i2.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
123
114
  type: Optional
124
- }, {
125
- type: Inject,
126
- args: [ESP_LOCALE]
127
- }] }, { type: undefined, decorators: [{
128
- type: Optional
129
115
  }, {
130
116
  type: Inject,
131
117
  args: [ESP_DEBUG]
@@ -162,26 +148,25 @@ class EsPagerModule {
162
148
  return {
163
149
  ngModule: EsPagerModule,
164
150
  providers: [
165
- { provide: ESP_LOCALE, useValue: config?.locale || 'it-IT' },
166
151
  { provide: ESP_DEBUG, useValue: config?.debugMode || false }
167
152
  ]
168
153
  };
169
154
  }
155
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EsPagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
156
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EsPagerModule, declarations: [TablePagerComponent], imports: [CommonModule,
157
+ FormsModule,
158
+ RouterModule,
159
+ LocalizationModule,
160
+ MatLegacySelectModule,
161
+ MatLegacyInputModule], exports: [TablePagerComponent] }); }
162
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EsPagerModule, imports: [CommonModule,
163
+ FormsModule,
164
+ RouterModule,
165
+ LocalizationModule,
166
+ MatLegacySelectModule,
167
+ MatLegacyInputModule] }); }
170
168
  }
171
- EsPagerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
172
- EsPagerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, declarations: [TablePagerComponent], imports: [CommonModule,
173
- FormsModule,
174
- RouterModule,
175
- LocalizationModule,
176
- MatLegacySelectModule,
177
- MatLegacyInputModule], exports: [TablePagerComponent] });
178
- EsPagerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, providers: [MessageService], imports: [CommonModule,
179
- FormsModule,
180
- RouterModule,
181
- LocalizationModule,
182
- MatLegacySelectModule,
183
- MatLegacyInputModule] });
184
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, decorators: [{
169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EsPagerModule, decorators: [{
185
170
  type: NgModule,
186
171
  args: [{
187
172
  imports: [
@@ -193,7 +178,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
193
178
  MatLegacyInputModule,
194
179
  ],
195
180
  declarations: [TablePagerComponent],
196
- providers: [MessageService],
197
181
  exports: [TablePagerComponent]
198
182
  }]
199
183
  }] });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"esfaenza-es-pager.mjs","sources":["../../../projects/es-pager/src/lib/domain/configuration/EsPagerModuleConfig.ts","../../../projects/es-pager/src/lib/components/pager/table_pager.component.loc.ts","../../../projects/es-pager/src/lib/tokens.ts","../../../projects/es-pager/src/lib/components/pager/table_pager.component.ts","../../../projects/es-pager/src/lib/components/pager/table_pager.component.html","../../../projects/es-pager/src/lib/es-pager.module.ts","../../../projects/es-pager/src/public-api.ts","../../../projects/es-pager/src/esfaenza-es-pager.ts"],"sourcesContent":["/** Modello di configurazione per L'EsTable */\r\nexport class EsPagerModuleConfig {\r\n\r\n /** Locale da utilizzare per i messaggi, supportati \"it-IT\" ed \"en-US\" */\r\n public locale?: string;\r\n /** Indica se scrivere messaggi di log a console */\r\n public debugMode?: boolean;\r\n}","import { Injectable, Injector } from \"@angular/core\";\r\nimport { LocalizationService } from \"@esfaenza/localizations\";\r\n\r\n/** Classe di localizzazione per il componente **TablePagerComponent** */\r\n@Injectable()\r\nexport class TablePagerLoc extends LocalizationService {\r\n\r\n /** @ignore */\r\n constructor(injector: Injector) {\r\n super(injector);\r\n super.set(\"en->it\", \"All\", [\"Tutto\"]);\r\n super.set(\"en->it\", \"Shown Elements\", [\"Elementi visualizzati\"]);\r\n super.set(\"en->it\", \"Shown Groups\", [\"Gruppi visualizzati\"]);\r\n super.set(\"en->it\", \"Are you sure you want to retrieve all results?\", [\"Si è sicuri di voler caricare tutti i risultati?\"]);\r\n super.set(\"en->it\", \"This might slow down the page and possibly crash the entire application\", [\"L'operazione potrebbe rallentare la pagina fino al crash dell'applicazione\"]);\r\n }\r\n}","import { InjectionToken } from '@angular/core';\r\n\r\n/** Token che indica se emettere log a console o meno */\r\nexport const ESP_DEBUG: InjectionToken<string> = new InjectionToken<string>('ESP_DEBUG');","// Angular\r\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Inject, Input, Optional, Output, SimpleChanges, ViewEncapsulation } from \"@angular/core\";\r\n\r\n// Configurazioni\r\nimport { LocalizationService } from \"@esfaenza/localizations\";\r\nimport { MessageService } from \"@esfaenza/extensions\";\r\n\r\n// Applicazione\r\nimport { TablePagerLoc } from \"./table_pager.component.loc\";\r\nimport { ESP_DEBUG } from \"../../tokens\";\r\n\r\n/** Componente che si occupa della paginazione di una tabella */\r\n@Component({\r\n selector: \"app-paging\",\r\n viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }],\r\n styleUrls: ['./table_pager.component.scss'],\r\n templateUrl: \"./table_pager.component.html\",\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TablePagerComponent {\r\n\r\n /** Dimensione di pagina attuale */\r\n @Input() CurrentPageSize: any;\r\n\r\n /** View gestita, che può essere un IAppSearch o una ReportView */\r\n @Input() View: any;\r\n\r\n /** Indica se deve mostrare un warning quando si cercano di solezionare come elementi da visualizzare \"Tutti\" */\r\n @Input() WarnOnAll: boolean = true;\r\n\r\n /** Indica se dare la possibilità o meno di selezionare \"Tutti\" nelle opzioni di paginazione */\r\n @Input() AllSearch: boolean = true;\r\n \r\n /** Placeholder che identifica il \"Tutti\" */\r\n @Input() DefaultAll = 999999;\r\n \r\n /** Indica se attivare la modalità gruppo con stili più snelli per apparire sotto ai raggruppamenti */\r\n @Input() GroupMode = false;\r\n\r\n /** Indica se utilizzare il conteggio dei gruppi o degli oggetti */\r\n @Input() GroupCount = false;\r\n\r\n /** Indica il testo che va a sostituire \"Oggetti Visualizzati\" in caso si stia facendo qualcosa di custom, Ignorato in caso di gruppi */\r\n @Input() CountLabel: string = null;\r\n\r\n /** Indica se visualizzare il numero totale di oggeti presenti */\r\n @Input() ShowCount: boolean = true;\r\n\r\n /** Indica se visualizzare il numero totale di oggeti presenti */\r\n @Input() ShowPaging: boolean = true;\r\n\r\n /** Indica il numero totale di oggeti presenti */\r\n @Input() PagerCount: number;\r\n\r\n /** Indica se mostrare o meno il contenuto @deprecated usata solo da MatrixValuesComponent nella lib relativa */\r\n @Input() Hidden: boolean;\r\n\r\n /** Output invocato quando il numero di elementi per pagina viene modificato da un click utente */\r\n @Output() pagingSelected = new EventEmitter<number>();\r\n\r\n /** @ignore */\r\n constructor(private msgExts: MessageService, public lc: LocalizationService, public cdr: ChangeDetectorRef, @Optional() @Inject(ESP_DEBUG) public debug: boolean) { }\r\n\r\n /** Modello su cui la select effettua operazioni di selezione */\r\n public Model: number;\r\n\r\n /** Opzioni di paginazione */\r\n public PagingOptions: number[] = [10, 15, 30, 45, 100 ];\r\n\r\n /** @ignore */\r\n ngOnInit() {\r\n this.Model = this.View ? (this.View.itemsperpageoverride || 15) : this.CurrentPageSize;\r\n if (this.AllSearch)\r\n this.PagingOptions.push(this.DefaultAll);\r\n }\r\n\r\n /** @ignore */\r\n ngOnChanges(changes: SimpleChanges) {\r\n let newView = changes['View'];\r\n let newCPS = changes['CurrentPageSize'];\r\n\r\n if ((newView && !newView.firstChange) || (newCPS && !newCPS.firstChange))\r\n this.Model = newView?.currentValue ? (newView.currentValue.itemsperpageoverride || 15) : newCPS?.currentValue ? newCPS.currentValue : null;\r\n }\r\n\r\n /**\r\n * Funzione richiamata dal template quando un utente clicca su un numero di paginazione.\r\n * \r\n * Cliccare 2 volte sullo stesso numero causa comunque un refresh dei dati\r\n * \r\n * @param {number} pageSize Dimensione selezionata lato UI\r\n */\r\n public choice(pageSize: number) {\r\n if (pageSize == this.DefaultAll && this.WarnOnAll) {\r\n this.msgExts.simpleWarningWithChoice(\r\n this.lc.loc(\"Are you sure you want to retrieve all results?\"),\r\n this.lc.loc(\"This might slow down the page and possibly crash the entire application\"),\r\n () => { this.pagingSelected.emit(pageSize); this.Model = pageSize; },\r\n () => {\r\n // Dio solo sa perché mi tocca fare sta roba... qui dentro per qualche motivo la CD non prende\r\n let prevModel = this.Model;\r\n this.Model = null;\r\n this.cdr.detectChanges();\r\n this.Model = prevModel;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n else {\r\n this.pagingSelected.emit(pageSize);\r\n this.Model = pageSize;\r\n }\r\n }\r\n}","<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : lc.Locale}}</span>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { MatLegacySelectModule as MatSelectModule } from \"@angular/material/legacy-select\";\r\nimport { MatLegacyInputModule as MatInputModule } from \"@angular/material/legacy-input\";\r\n\r\nimport { LocalizationModule } from '@esfaenza/localizations';\r\n\r\nimport { ESP_DEBUG } from './tokens';\r\nimport { EsPagerModuleConfig } from './domain/configuration/EsPagerModuleConfig';\r\n\r\nimport { TablePagerComponent } from './components/pager/table_pager.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule, \r\n RouterModule,\r\n LocalizationModule,\r\n MatSelectModule,\r\n MatInputModule,\r\n ],\r\n declarations: [TablePagerComponent],\r\n exports: [TablePagerComponent]\r\n})\r\nexport class EsPagerModule {\r\n static forRoot(config?: EsPagerModuleConfig): ModuleWithProviders<EsPagerModule> {\r\n return {\r\n ngModule: EsPagerModule,\r\n providers: [\r\n { provide: ESP_DEBUG, useValue: config?.debugMode || false }\r\n ]\r\n };\r\n }\r\n}","/*\r\n * Public API Surface of es-pager\r\n */\r\n\r\nexport * from './lib/domain/configuration/EsPagerModuleConfig'\r\nexport * from './lib/components/pager/table_pager.component'\r\nexport * from './lib/es-pager.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["MatSelectModule","MatInputModule"],"mappings":"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"}
@@ -7,7 +7,6 @@ export declare class TablePagerComponent {
7
7
  private msgExts;
8
8
  lc: LocalizationService;
9
9
  cdr: ChangeDetectorRef;
10
- locale: string;
11
10
  debug: boolean;
12
11
  /** Dimensione di pagina attuale */
13
12
  CurrentPageSize: any;
@@ -36,7 +35,7 @@ export declare class TablePagerComponent {
36
35
  /** Output invocato quando il numero di elementi per pagina viene modificato da un click utente */
37
36
  pagingSelected: EventEmitter<number>;
38
37
  /** @ignore */
39
- constructor(msgExts: MessageService, lc: LocalizationService, cdr: ChangeDetectorRef, locale: string, debug: boolean);
38
+ constructor(msgExts: MessageService, lc: LocalizationService, cdr: ChangeDetectorRef, debug: boolean);
40
39
  /** Modello su cui la select effettua operazioni di selezione */
41
40
  Model: number;
42
41
  /** Opzioni di paginazione */
@@ -53,6 +52,6 @@ export declare class TablePagerComponent {
53
52
  * @param {number} pageSize Dimensione selezionata lato UI
54
53
  */
55
54
  choice(pageSize: number): void;
56
- static ɵfac: i0.ɵɵFactoryDeclaration<TablePagerComponent, [null, null, null, { optional: true; }, { optional: true; }]>;
57
- static ɵcmp: i0.ɵɵComponentDeclaration<TablePagerComponent, "app-paging", never, { "CurrentPageSize": "CurrentPageSize"; "View": "View"; "WarnOnAll": "WarnOnAll"; "AllSearch": "AllSearch"; "DefaultAll": "DefaultAll"; "GroupMode": "GroupMode"; "GroupCount": "GroupCount"; "CountLabel": "CountLabel"; "ShowCount": "ShowCount"; "ShowPaging": "ShowPaging"; "PagerCount": "PagerCount"; "Hidden": "Hidden"; }, { "pagingSelected": "pagingSelected"; }, never, never, false, never>;
55
+ static ɵfac: i0.ɵɵFactoryDeclaration<TablePagerComponent, [null, null, null, { optional: true; }]>;
56
+ static ɵcmp: i0.ɵɵComponentDeclaration<TablePagerComponent, "app-paging", never, { "CurrentPageSize": { "alias": "CurrentPageSize"; "required": false; }; "View": { "alias": "View"; "required": false; }; "WarnOnAll": { "alias": "WarnOnAll"; "required": false; }; "AllSearch": { "alias": "AllSearch"; "required": false; }; "DefaultAll": { "alias": "DefaultAll"; "required": false; }; "GroupMode": { "alias": "GroupMode"; "required": false; }; "GroupCount": { "alias": "GroupCount"; "required": false; }; "CountLabel": { "alias": "CountLabel"; "required": false; }; "ShowCount": { "alias": "ShowCount"; "required": false; }; "ShowPaging": { "alias": "ShowPaging"; "required": false; }; "PagerCount": { "alias": "PagerCount"; "required": false; }; "Hidden": { "alias": "Hidden"; "required": false; }; }, { "pagingSelected": "pagingSelected"; }, never, never, false, never>;
58
57
  }
@@ -1,9 +1,10 @@
1
+ import { Injector } from "@angular/core";
1
2
  import { LocalizationService } from "@esfaenza/localizations";
2
3
  import * as i0 from "@angular/core";
3
4
  /** Classe di localizzazione per il componente **TablePagerComponent** */
4
5
  export declare class TablePagerLoc extends LocalizationService {
5
6
  /** @ignore */
6
- constructor(LOC_LOCALE: string);
7
- static ɵfac: i0.ɵɵFactoryDeclaration<TablePagerLoc, [{ optional: true; }]>;
7
+ constructor(injector: Injector);
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<TablePagerLoc, never>;
8
9
  static ɵprov: i0.ɵɵInjectableDeclaration<TablePagerLoc>;
9
10
  }
package/lib/tokens.d.ts CHANGED
@@ -1,5 +1,3 @@
1
1
  import { InjectionToken } from '@angular/core';
2
- /** Token che indica il locale da utilizzare all'interno del componente. Supportati solo "it-IT" ed "en-US" */
3
- export declare const ESP_LOCALE: InjectionToken<string>;
4
2
  /** Token che indica se emettere log a console o meno */
5
3
  export declare const ESP_DEBUG: InjectionToken<string>;
package/package.json CHANGED
@@ -1,19 +1,16 @@
1
1
  {
2
2
  "name": "@esfaenza/es-pager",
3
- "version": "15.2.3",
3
+ "version": "16.0.1",
4
4
  "dependencies": {
5
5
  "tslib": "^2.0.0"
6
6
  },
7
7
  "peerDependencies": {
8
- "@angular/common": "^15.2.9",
9
- "@angular/core": "^15.2.9",
10
- "@esfaenza/localizations": "^15.2.1"
8
+ "@angular/common": "^16.2.12",
9
+ "@angular/core": "^16.2.12",
10
+ "@esfaenza/extensions": "^16.0.1",
11
+ "@esfaenza/localizations": "^16.0.1"
11
12
  },
12
- "module": "fesm2015/esfaenza-es-pager.mjs",
13
- "es2020": "fesm2020/esfaenza-es-pager.mjs",
14
- "esm2020": "esm2020/esfaenza-es-pager.mjs",
15
- "fesm2020": "fesm2020/esfaenza-es-pager.mjs",
16
- "fesm2015": "fesm2015/esfaenza-es-pager.mjs",
13
+ "module": "fesm2022/esfaenza-es-pager.mjs",
17
14
  "typings": "index.d.ts",
18
15
  "exports": {
19
16
  "./package.json": {
@@ -21,11 +18,9 @@
21
18
  },
22
19
  ".": {
23
20
  "types": "./index.d.ts",
24
- "esm2020": "./esm2020/esfaenza-es-pager.mjs",
25
- "es2020": "./fesm2020/esfaenza-es-pager.mjs",
26
- "es2015": "./fesm2015/esfaenza-es-pager.mjs",
27
- "node": "./fesm2015/esfaenza-es-pager.mjs",
28
- "default": "./fesm2020/esfaenza-es-pager.mjs"
21
+ "esm2022": "./esm2022/esfaenza-es-pager.mjs",
22
+ "esm": "./esm2022/esfaenza-es-pager.mjs",
23
+ "default": "./fesm2022/esfaenza-es-pager.mjs"
29
24
  }
30
25
  },
31
26
  "sideEffects": false
@@ -1,27 +0,0 @@
1
- import { Injectable, Inject, Optional } from "@angular/core";
2
- import { LocalizationService } from "@esfaenza/localizations";
3
- import { ESP_LOCALE } from '../../tokens';
4
- import * as i0 from "@angular/core";
5
- /** Classe di localizzazione per il componente **TablePagerComponent** */
6
- export class TablePagerLoc extends LocalizationService {
7
- /** @ignore */
8
- constructor(LOC_LOCALE) {
9
- super(LOC_LOCALE ?? 'it-IT');
10
- super.set("en->it", "All", ["Tutto"]);
11
- super.set("en->it", "Shown Elements", ["Elementi visualizzati"]);
12
- super.set("en->it", "Shown Groups", ["Gruppi visualizzati"]);
13
- super.set("en->it", "Are you sure you want to retrieve all results?", ["Si è sicuri di voler caricare tutti i risultati?"]);
14
- super.set("en->it", "This might slow down the page and possibly crash the entire application", ["L'operazione potrebbe rallentare la pagina fino al crash dell'applicazione"]);
15
- }
16
- }
17
- TablePagerLoc.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerLoc, deps: [{ token: ESP_LOCALE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
18
- TablePagerLoc.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerLoc });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerLoc, decorators: [{
20
- type: Injectable
21
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
22
- type: Optional
23
- }, {
24
- type: Inject,
25
- args: [ESP_LOCALE]
26
- }] }]; } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGVfcGFnZXIuY29tcG9uZW50LmxvYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLXBhZ2VyL3NyYy9saWIvY29tcG9uZW50cy9wYWdlci90YWJsZV9wYWdlci5jb21wb25lbnQubG9jLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUUxQyx5RUFBeUU7QUFFekUsTUFBTSxPQUFPLGFBQWMsU0FBUSxtQkFBbUI7SUFFbEQsY0FBYztJQUNkLFlBQTRDLFVBQWtCO1FBQzFELEtBQUssQ0FBQyxVQUFVLElBQUksT0FBTyxDQUFDLENBQUM7UUFDN0IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUN0QyxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQztRQUNqRSxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxjQUFjLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7UUFDN0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsZ0RBQWdELEVBQUUsQ0FBQyxrREFBa0QsQ0FBQyxDQUFDLENBQUM7UUFDNUgsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUseUVBQXlFLEVBQUUsQ0FBQyw0RUFBNEUsQ0FBQyxDQUFDLENBQUM7SUFDbkwsQ0FBQzs7MEdBVlEsYUFBYSxrQkFHVSxVQUFVOzhHQUhqQyxhQUFhOzJGQUFiLGFBQWE7a0JBRHpCLFVBQVU7OzBCQUlNLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCwgT3B0aW9uYWwgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9sb2NhbGl6YXRpb25zXCI7XHJcbmltcG9ydCB7IEVTUF9MT0NBTEUgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xyXG5cclxuLyoqIENsYXNzZSBkaSBsb2NhbGl6emF6aW9uZSBwZXIgaWwgY29tcG9uZW50ZSAqKlRhYmxlUGFnZXJDb21wb25lbnQqKiAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVBhZ2VyTG9jIGV4dGVuZHMgTG9jYWxpemF0aW9uU2VydmljZSB7XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgKi9cclxuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoRVNQX0xPQ0FMRSkgTE9DX0xPQ0FMRTogc3RyaW5nKSB7XHJcbiAgICAgICAgc3VwZXIoTE9DX0xPQ0FMRSA/PyAnaXQtSVQnKTtcclxuICAgICAgICBzdXBlci5zZXQoXCJlbi0+aXRcIiwgXCJBbGxcIiwgW1wiVHV0dG9cIl0pO1xyXG4gICAgICAgIHN1cGVyLnNldChcImVuLT5pdFwiLCBcIlNob3duIEVsZW1lbnRzXCIsIFtcIkVsZW1lbnRpIHZpc3VhbGl6emF0aVwiXSk7XHJcbiAgICAgICAgc3VwZXIuc2V0KFwiZW4tPml0XCIsIFwiU2hvd24gR3JvdXBzXCIsIFtcIkdydXBwaSB2aXN1YWxpenphdGlcIl0pO1xyXG4gICAgICAgIHN1cGVyLnNldChcImVuLT5pdFwiLCBcIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZXRyaWV2ZSBhbGwgcmVzdWx0cz9cIiwgW1wiU2kgw6ggc2ljdXJpIGRpIHZvbGVyIGNhcmljYXJlIHR1dHRpIGkgcmlzdWx0YXRpP1wiXSk7XHJcbiAgICAgICAgc3VwZXIuc2V0KFwiZW4tPml0XCIsIFwiVGhpcyBtaWdodCBzbG93IGRvd24gdGhlIHBhZ2UgYW5kIHBvc3NpYmx5IGNyYXNoIHRoZSBlbnRpcmUgYXBwbGljYXRpb25cIiwgW1wiTCdvcGVyYXppb25lIHBvdHJlYmJlIHJhbGxlbnRhcmUgbGEgcGFnaW5hIGZpbm8gYWwgY3Jhc2ggZGVsbCdhcHBsaWNhemlvbmVcIl0pO1xyXG4gICAgfVxyXG59Il19
@@ -1,124 +0,0 @@
1
- // Angular
2
- import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, Optional, Output, ViewEncapsulation } from "@angular/core";
3
- // Configurazioni
4
- import { LocalizationService } from "@esfaenza/localizations";
5
- // Applicazione
6
- import { TablePagerLoc } from "./table_pager.component.loc";
7
- import { ESP_LOCALE, ESP_DEBUG } from "../../tokens";
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@esfaenza/extensions";
10
- import * as i2 from "@esfaenza/localizations";
11
- import * as i3 from "@angular/common";
12
- import * as i4 from "@angular/forms";
13
- import * as i5 from "@angular/material/legacy-form-field";
14
- import * as i6 from "@angular/material/legacy-input";
15
- /** Componente che si occupa della paginazione di una tabella */
16
- export class TablePagerComponent {
17
- /** @ignore */
18
- constructor(msgExts, lc, cdr, locale, debug) {
19
- this.msgExts = msgExts;
20
- this.lc = lc;
21
- this.cdr = cdr;
22
- this.locale = locale;
23
- this.debug = debug;
24
- /** Indica se deve mostrare un warning quando si cercano di solezionare come elementi da visualizzare "Tutti" */
25
- this.WarnOnAll = true;
26
- /** Indica se dare la possibilità o meno di selezionare "Tutti" nelle opzioni di paginazione */
27
- this.AllSearch = true;
28
- /** Placeholder che identifica il "Tutti" */
29
- this.DefaultAll = 999999;
30
- /** Indica se attivare la modalità gruppo con stili più snelli per apparire sotto ai raggruppamenti */
31
- this.GroupMode = false;
32
- /** Indica se utilizzare il conteggio dei gruppi o degli oggetti */
33
- this.GroupCount = false;
34
- /** Indica il testo che va a sostituire "Oggetti Visualizzati" in caso si stia facendo qualcosa di custom, Ignorato in caso di gruppi */
35
- this.CountLabel = null;
36
- /** Indica se visualizzare il numero totale di oggeti presenti */
37
- this.ShowCount = true;
38
- /** Indica se visualizzare il numero totale di oggeti presenti */
39
- this.ShowPaging = true;
40
- /** Output invocato quando il numero di elementi per pagina viene modificato da un click utente */
41
- this.pagingSelected = new EventEmitter();
42
- /** Opzioni di paginazione */
43
- this.PagingOptions = [10, 15, 30, 45, 100];
44
- }
45
- /** @ignore */
46
- ngOnInit() {
47
- this.Model = this.View ? (this.View.itemsperpageoverride || 15) : this.CurrentPageSize;
48
- if (this.AllSearch)
49
- this.PagingOptions.push(this.DefaultAll);
50
- }
51
- /** @ignore */
52
- ngOnChanges(changes) {
53
- let newView = changes['View'];
54
- let newCPS = changes['CurrentPageSize'];
55
- if ((newView && !newView.firstChange) || (newCPS && !newCPS.firstChange))
56
- this.Model = newView?.currentValue ? (newView.currentValue.itemsperpageoverride || 15) : newCPS?.currentValue ? newCPS.currentValue : null;
57
- }
58
- /**
59
- * Funzione richiamata dal template quando un utente clicca su un numero di paginazione.
60
- *
61
- * Cliccare 2 volte sullo stesso numero causa comunque un refresh dei dati
62
- *
63
- * @param {number} pageSize Dimensione selezionata lato UI
64
- */
65
- choice(pageSize) {
66
- if (pageSize == this.DefaultAll && this.WarnOnAll) {
67
- this.msgExts.simpleWarningWithChoice(this.lc.loc("Are you sure you want to retrieve all results?"), this.lc.loc("This might slow down the page and possibly crash the entire application"), () => { this.pagingSelected.emit(pageSize); this.Model = pageSize; }, () => {
68
- // Dio solo sa perché mi tocca fare sta roba... qui dentro per qualche motivo la CD non prende
69
- let prevModel = this.Model;
70
- this.Model = null;
71
- this.cdr.detectChanges();
72
- this.Model = prevModel;
73
- this.cdr.detectChanges();
74
- });
75
- }
76
- else {
77
- this.pagingSelected.emit(pageSize);
78
- this.Model = pageSize;
79
- }
80
- }
81
- }
82
- TablePagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerComponent, deps: [{ token: i1.MessageService }, { token: i2.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ESP_LOCALE, optional: true }, { token: ESP_DEBUG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
83
- TablePagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TablePagerComponent, selector: "app-paging", inputs: { CurrentPageSize: "CurrentPageSize", View: "View", WarnOnAll: "WarnOnAll", AllSearch: "AllSearch", DefaultAll: "DefaultAll", GroupMode: "GroupMode", GroupCount: "GroupCount", CountLabel: "CountLabel", ShowCount: "ShowCount", ShowPaging: "ShowPaging", PagerCount: "PagerCount", Hidden: "Hidden" }, outputs: { pagingSelected: "pagingSelected" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : locale}}</span>\r\n</div>", styles: [".est-rg-ipp-sel-all,.est-rg-ipp-sel,.est-ipp-sel-all{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-head-resizer{top:0;right:0;bottom:0;width:2px;position:absolute;cursor:col-resize;background-color:#ccc}.est-ipp-sel{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-ipp-bold{font-weight:700}.mat-paginator-page-size-select{margin:0 4px;width:50px}.mat-paginator-page-size-select .mat-form-field-wrapper{height:52px!important;margin-top:-15px!important;padding:0!important}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{margin-top:-5.5px!important}.mat-paginator-page-size-select .mat-form-field-underline{bottom:10px}.est-mt-4{margin-top:4px!important}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLegacyInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", exportAs: ["matInput"] }, { kind: "pipe", type: i3.DecimalPipe, name: "number" }, { kind: "pipe", type: i2.LocalizePipe, name: "localize" }], viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
84
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerComponent, decorators: [{
85
- type: Component,
86
- args: [{ selector: "app-paging", viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : locale}}</span>\r\n</div>", styles: [".est-rg-ipp-sel-all,.est-rg-ipp-sel,.est-ipp-sel-all{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-head-resizer{top:0;right:0;bottom:0;width:2px;position:absolute;cursor:col-resize;background-color:#ccc}.est-ipp-sel{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-ipp-bold{font-weight:700}.mat-paginator-page-size-select{margin:0 4px;width:50px}.mat-paginator-page-size-select .mat-form-field-wrapper{height:52px!important;margin-top:-15px!important;padding:0!important}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{margin-top:-5.5px!important}.mat-paginator-page-size-select .mat-form-field-underline{bottom:10px}.est-mt-4{margin-top:4px!important}\n"] }]
87
- }], ctorParameters: function () { return [{ type: i1.MessageService }, { type: i2.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
88
- type: Optional
89
- }, {
90
- type: Inject,
91
- args: [ESP_LOCALE]
92
- }] }, { type: undefined, decorators: [{
93
- type: Optional
94
- }, {
95
- type: Inject,
96
- args: [ESP_DEBUG]
97
- }] }]; }, propDecorators: { CurrentPageSize: [{
98
- type: Input
99
- }], View: [{
100
- type: Input
101
- }], WarnOnAll: [{
102
- type: Input
103
- }], AllSearch: [{
104
- type: Input
105
- }], DefaultAll: [{
106
- type: Input
107
- }], GroupMode: [{
108
- type: Input
109
- }], GroupCount: [{
110
- type: Input
111
- }], CountLabel: [{
112
- type: Input
113
- }], ShowCount: [{
114
- type: Input
115
- }], ShowPaging: [{
116
- type: Input
117
- }], PagerCount: [{
118
- type: Input
119
- }], Hidden: [{
120
- type: Input
121
- }], pagingSelected: [{
122
- type: Output
123
- }] } });
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGVfcGFnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtcGFnZXIvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VyL3RhYmxlX3BhZ2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLXBhZ2VyL3NyYy9saWIvY29tcG9uZW50cy9wYWdlci90YWJsZV9wYWdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBaUIsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkssaUJBQWlCO0FBQ2pCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRzlELGVBQWU7QUFDZixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7O0FBRXJELGdFQUFnRTtBQVNoRSxNQUFNLE9BQU8sbUJBQW1CO0lBeUM1QixjQUFjO0lBQ2QsWUFBb0IsT0FBdUIsRUFBUyxFQUF1QixFQUFTLEdBQXNCLEVBQXlDLE1BQWMsRUFBd0MsS0FBYztRQUFuTSxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUFTLE9BQUUsR0FBRixFQUFFLENBQXFCO1FBQVMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFBeUMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUF3QyxVQUFLLEdBQUwsS0FBSyxDQUFTO1FBbEN2TixnSEFBZ0g7UUFDdkcsY0FBUyxHQUFZLElBQUksQ0FBQztRQUVuQywrRkFBK0Y7UUFDdEYsY0FBUyxHQUFZLElBQUksQ0FBQztRQUVuQyw0Q0FB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QW1CLHdhQ3BCaEMsdXVDQWFNLHV1RURDYSxDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsQ0FBQzsyRkFNakUsbUJBQW1CO2tCQVIvQixTQUFTOytCQUNJLFlBQVksaUJBQ1AsQ0FBQyxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLENBQUMsaUJBRzNELGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07OzBCQTRDOEQsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxVQUFVOzswQkFBMEIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxTQUFTOzRDQXZDdkwsZUFBZTtzQkFBdkIsS0FBSztnQkFHRyxJQUFJO3NCQUFaLEtBQUs7Z0JBR0csU0FBUztzQkFBakIsS0FBSztnQkFHRyxTQUFTO3NCQUFqQixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csU0FBUztzQkFBakIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csU0FBUztzQkFBakIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csTUFBTTtzQkFBZCxLQUFLO2dCQUdJLGNBQWM7c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9wdGlvbmFsLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vIENvbmZpZ3VyYXppb25pXHJcbmltcG9ydCB7IExvY2FsaXphdGlvblNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2xvY2FsaXphdGlvbnNcIjtcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2V4dGVuc2lvbnNcIjtcclxuXHJcbi8vIEFwcGxpY2F6aW9uZVxyXG5pbXBvcnQgeyBUYWJsZVBhZ2VyTG9jIH0gZnJvbSBcIi4vdGFibGVfcGFnZXIuY29tcG9uZW50LmxvY1wiO1xyXG5pbXBvcnQgeyBFU1BfTE9DQUxFLCBFU1BfREVCVUcgfSBmcm9tIFwiLi4vLi4vdG9rZW5zXCI7XHJcblxyXG4vKiogQ29tcG9uZW50ZSBjaGUgc2kgb2NjdXBhIGRlbGxhIHBhZ2luYXppb25lIGRpIHVuYSB0YWJlbGxhICovXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiYXBwLXBhZ2luZ1wiLFxyXG4gICAgdmlld1Byb3ZpZGVyczogW3sgcHJvdmlkZTogTG9jYWxpemF0aW9uU2VydmljZSwgdXNlQ2xhc3M6IFRhYmxlUGFnZXJMb2MgfV0sXHJcbiAgICBzdHlsZVVybHM6IFsnLi90YWJsZV9wYWdlci5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi90YWJsZV9wYWdlci5jb21wb25lbnQuaHRtbFwiLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVBhZ2VyQ29tcG9uZW50IHtcclxuXHJcbiAgICAvKiogRGltZW5zaW9uZSBkaSBwYWdpbmEgYXR0dWFsZSAqL1xyXG4gICAgQElucHV0KCkgQ3VycmVudFBhZ2VTaXplOiBhbnk7XHJcblxyXG4gICAgLyoqIFZpZXcgZ2VzdGl0YSwgY2hlIHB1w7IgZXNzZXJlIHVuIElBcHBTZWFyY2ggbyB1bmEgUmVwb3J0VmlldyAqL1xyXG4gICAgQElucHV0KCkgVmlldzogYW55O1xyXG5cclxuICAgIC8qKiBJbmRpY2Egc2UgZGV2ZSBtb3N0cmFyZSB1biB3YXJuaW5nIHF1YW5kbyBzaSBjZXJjYW5vIGRpIHNvbGV6aW9uYXJlIGNvbWUgZWxlbWVudGkgZGEgdmlzdWFsaXp6YXJlIFwiVHV0dGlcIiAqL1xyXG4gICAgQElucHV0KCkgV2Fybk9uQWxsOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgICAvKiogSW5kaWNhIHNlIGRhcmUgbGEgcG9zc2liaWxpdMOgIG8gbWVubyBkaSBzZWxlemlvbmFyZSBcIlR1dHRpXCIgbmVsbGUgb3B6aW9uaSBkaSBwYWdpbmF6aW9uZSAqL1xyXG4gICAgQElucHV0KCkgQWxsU2VhcmNoOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIFxyXG4gICAgLyoqIFBsYWNlaG9sZGVyIGNoZSBpZGVudGlmaWNhIGlsIFwiVHV0dGlcIiAqL1xyXG4gICAgQElucHV0KCkgRGVmYXVsdEFsbCA9IDk5OTk5OTtcclxuICAgIFxyXG4gICAgLyoqIEluZGljYSBzZSBhdHRpdmFyZSBsYSBtb2RhbGl0w6AgZ3J1cHBvIGNvbiBzdGlsaSBwacO5IHNuZWxsaSBwZXIgYXBwYXJpcmUgc290dG8gYWkgcmFnZ3J1cHBhbWVudGkgKi9cclxuICAgIEBJbnB1dCgpIEdyb3VwTW9kZSA9IGZhbHNlO1xyXG5cclxuICAgIC8qKiBJbmRpY2Egc2UgdXRpbGl6emFyZSBpbCBjb250ZWdnaW8gZGVpIGdydXBwaSBvIGRlZ2xpIG9nZ2V0dGkgKi9cclxuICAgIEBJbnB1dCgpIEdyb3VwQ291bnQgPSBmYWxzZTtcclxuXHJcbiAgICAvKiogSW5kaWNhIGlsIHRlc3RvIGNoZSB2YSBhIHNvc3RpdHVpcmUgXCJPZ2dldHRpIFZpc3VhbGl6emF0aVwiIGluIGNhc28gc2kgc3RpYSBmYWNlbmRvIHF1YWxjb3NhIGRpIGN1c3RvbSwgSWdub3JhdG8gaW4gY2FzbyBkaSBncnVwcGkgKi9cclxuICAgIEBJbnB1dCgpIENvdW50TGFiZWw6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gICAgLyoqIEluZGljYSBzZSB2aXN1YWxpenphcmUgaWwgbnVtZXJvIHRvdGFsZSBkaSBvZ2dldGkgcHJlc2VudGkgKi9cclxuICAgIEBJbnB1dCgpIFNob3dDb3VudDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gICAgLyoqIEluZGljYSBzZSB2aXN1YWxpenphcmUgaWwgbnVtZXJvIHRvdGFsZSBkaSBvZ2dldGkgcHJlc2VudGkgKi9cclxuICAgIEBJbnB1dCgpIFNob3dQYWdpbmc6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIC8qKiBJbmRpY2EgaWwgbnVtZXJvIHRvdGFsZSBkaSBvZ2dldGkgcHJlc2VudGkgKi9cclxuICAgIEBJbnB1dCgpIFBhZ2VyQ291bnQ6IG51bWJlcjtcclxuXHJcbiAgICAvKiogSW5kaWNhIHNlIG1vc3RyYXJlIG8gbWVubyBpbCBjb250ZW51dG8gQGRlcHJlY2F0ZWQgdXNhdGEgc29sbyBkYSBNYXRyaXhWYWx1ZXNDb21wb25lbnQgbmVsbGEgbGliIHJlbGF0aXZhICovXHJcbiAgICBASW5wdXQoKSBIaWRkZW46IGJvb2xlYW47XHJcblxyXG4gICAgLyoqIE91dHB1dCBpbnZvY2F0byBxdWFuZG8gaWwgbnVtZXJvIGRpIGVsZW1lbnRpIHBlciBwYWdpbmEgdmllbmUgbW9kaWZpY2F0byBkYSB1biBjbGljayB1dGVudGUgKi9cclxuICAgIEBPdXRwdXQoKSBwYWdpbmdTZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG5cclxuICAgIC8qKiBAaWdub3JlICovXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1zZ0V4dHM6IE1lc3NhZ2VTZXJ2aWNlLCBwdWJsaWMgbGM6IExvY2FsaXphdGlvblNlcnZpY2UsIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLCBAT3B0aW9uYWwoKSBASW5qZWN0KEVTUF9MT0NBTEUpIHB1YmxpYyBsb2NhbGU6IHN0cmluZywgQE9wdGlvbmFsKCkgQEluamVjdChFU1BfREVCVUcpIHB1YmxpYyBkZWJ1ZzogYm9vbGVhbikgeyB9XHJcblxyXG4gICAgLyoqIE1vZGVsbG8gc3UgY3VpIGxhIHNlbGVjdCBlZmZldHR1YSBvcGVyYXppb25pIGRpIHNlbGV6aW9uZSAqL1xyXG4gICAgcHVibGljIE1vZGVsOiBudW1iZXI7XHJcblxyXG4gICAgLyoqIE9wemlvbmkgZGkgcGFnaW5hemlvbmUgKi9cclxuICAgIHB1YmxpYyBQYWdpbmdPcHRpb25zOiBudW1iZXJbXSA9IFsxMCwgMTUsIDMwLCA0NSwgMTAwIF07XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgKi9cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuTW9kZWwgPSB0aGlzLlZpZXcgPyAodGhpcy5WaWV3Lml0ZW1zcGVycGFnZW92ZXJyaWRlIHx8IDE1KSA6IHRoaXMuQ3VycmVudFBhZ2VTaXplO1xyXG4gICAgICAgIGlmICh0aGlzLkFsbFNlYXJjaClcclxuICAgICAgICAgICAgdGhpcy5QYWdpbmdPcHRpb25zLnB1c2godGhpcy5EZWZhdWx0QWxsKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogQGlnbm9yZSAqL1xyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgICAgIGxldCBuZXdWaWV3ID0gY2hhbmdlc1snVmlldyddO1xyXG4gICAgICAgIGxldCBuZXdDUFMgPSBjaGFuZ2VzWydDdXJyZW50UGFnZVNpemUnXTtcclxuXHJcbiAgICAgICAgaWYgKChuZXdWaWV3ICYmICFuZXdWaWV3LmZpcnN0Q2hhbmdlKSB8fCAobmV3Q1BTICYmICFuZXdDUFMuZmlyc3RDaGFuZ2UpKVxyXG4gICAgICAgICAgICB0aGlzLk1vZGVsID0gbmV3Vmlldz8uY3VycmVudFZhbHVlID8gKG5ld1ZpZXcuY3VycmVudFZhbHVlLml0ZW1zcGVycGFnZW92ZXJyaWRlIHx8IDE1KSA6IG5ld0NQUz8uY3VycmVudFZhbHVlID8gbmV3Q1BTLmN1cnJlbnRWYWx1ZSA6IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBGdW56aW9uZSByaWNoaWFtYXRhIGRhbCB0ZW1wbGF0ZSBxdWFuZG8gdW4gdXRlbnRlIGNsaWNjYSBzdSB1biBudW1lcm8gZGkgcGFnaW5hemlvbmUuXHJcbiAgICAgKiBcclxuICAgICAqIENsaWNjYXJlIDIgdm9sdGUgc3VsbG8gc3Rlc3NvIG51bWVybyBjYXVzYSBjb211bnF1ZSB1biByZWZyZXNoIGRlaSBkYXRpXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBwYWdlU2l6ZSBEaW1lbnNpb25lIHNlbGV6aW9uYXRhIGxhdG8gVUlcclxuICAgICAqL1xyXG4gICAgcHVibGljIGNob2ljZShwYWdlU2l6ZTogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKHBhZ2VTaXplID09IHRoaXMuRGVmYXVsdEFsbCAmJiB0aGlzLldhcm5PbkFsbCkge1xyXG4gICAgICAgICAgICB0aGlzLm1zZ0V4dHMuc2ltcGxlV2FybmluZ1dpdGhDaG9pY2UoXHJcbiAgICAgICAgICAgICAgICB0aGlzLmxjLmxvYyhcIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZXRyaWV2ZSBhbGwgcmVzdWx0cz9cIiksXHJcbiAgICAgICAgICAgICAgICB0aGlzLmxjLmxvYyhcIlRoaXMgbWlnaHQgc2xvdyBkb3duIHRoZSBwYWdlIGFuZCBwb3NzaWJseSBjcmFzaCB0aGUgZW50aXJlIGFwcGxpY2F0aW9uXCIpLFxyXG4gICAgICAgICAgICAgICAgKCkgPT4geyB0aGlzLnBhZ2luZ1NlbGVjdGVkLmVtaXQocGFnZVNpemUpOyB0aGlzLk1vZGVsID0gcGFnZVNpemU7IH0sXHJcbiAgICAgICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gRGlvIHNvbG8gc2EgcGVyY2jDqSBtaSB0b2NjYSBmYXJlIHN0YSByb2JhLi4uIHF1aSBkZW50cm8gcGVyIHF1YWxjaGUgbW90aXZvIGxhIENEIG5vbiBwcmVuZGVcclxuICAgICAgICAgICAgICAgICAgICBsZXQgcHJldk1vZGVsID0gdGhpcy5Nb2RlbDtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLk1vZGVsID0gbnVsbDtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5Nb2RlbCA9IHByZXZNb2RlbDtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMucGFnaW5nU2VsZWN0ZWQuZW1pdChwYWdlU2l6ZSk7XHJcbiAgICAgICAgICAgIHRoaXMuTW9kZWwgPSBwYWdlU2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCI8ZGl2ICpuZ0lmPVwiIUhpZGRlblwiIFtjbGFzcy5lc3QtbXQtNF09XCJTaG93Q291bnQgJiYgUGFnZXJDb3VudCAhPSAtMSAmJiAhKFNob3dQYWdpbmcgJiYgTW9kZWwgJiYgKE1vZGVsID09IERlZmF1bHRBbGwgfHwgUGFnZXJDb3VudCA+PSBNb2RlbCB8fCBQYWdlckNvdW50ID09IC0xKSlcIj5cclxuICA8c3BhbiBjbGFzcz1cImVzdC1mcy0xNFwiPiB7e0NvdW50TGFiZWwgJiYgIUdyb3VwTW9kZSA/IENvdW50TGFiZWwgOiAoKEdyb3VwTW9kZSA/ICdTaG93biBHcm91cHMnIDogJ1Nob3duIEVsZW1lbnRzJykgfCBsb2NhbGl6ZSA6IGxjKX19OiZuYnNwOzwvc3Bhbj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiU2hvd1BhZ2luZyAmJiBNb2RlbCAmJiAoTW9kZWwgPT0gRGVmYXVsdEFsbCB8fCBQYWdlckNvdW50ID49IE1vZGVsIHx8IFBhZ2VyQ291bnQgPT0gLTEpXCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgW2FwcGVhcmFuY2VdPVwiJ2xlZ2FjeSdcIiBjbGFzcz1cIm1hdC1wYWdpbmF0b3ItcGFnZS1zaXplLXNlbGVjdCBlc3QtZnMtMTQgZXN0LWlwcC1ib2xkXCI+XHJcbiAgICAgIDxzZWxlY3QgbWF0TmF0aXZlQ29udHJvbCBbbmdNb2RlbF09XCJNb2RlbFwiIG5hbWU9XCJpbnB1dFwiIChuZ01vZGVsQ2hhbmdlKT1cImNob2ljZSgkZXZlbnQpXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcE9wdCBvZiBQYWdpbmdPcHRpb25zXCI+XHJcbiAgICAgICAgICA8b3B0aW9uICpuZ0lmPVwicE9wdCA9PSBEZWZhdWx0QWxsIHx8IFBhZ2VyQ291bnQgPj0gcE9wdCB8fCBQYWdlckNvdW50ID09IC0xXCIgW3ZhbHVlXT1cInBPcHRcIj57eyBwT3B0ID09IERlZmF1bHRBbGwgPyAoJ0FsbCcgfCBsb2NhbGl6ZSA6IGxjKSA6IHBPcHQudG9TdHJpbmcoKX19PC9vcHRpb24+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxzcGFuIGNsYXNzPVwiZXN0LWZzLTE0IGVzdC1pcHAtYm9sZFwiICpuZ0lmPVwiU2hvd0NvdW50ICYmIFBhZ2VyQ291bnQgIT0gLTFcIj4mbmJzcDsvJm5ic3A7PC9zcGFuPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxzcGFuIGNsYXNzPVwiZXN0LWZzLTE0IGVzdC1pcHAtYm9sZFwiICpuZ0lmPVwiU2hvd0NvdW50ICYmIFBhZ2VyQ291bnQgIT0gLTFcIj57e1BhZ2VyQ291bnQgfCBudW1iZXIgOiAnMC4wLTAnIDogbG9jYWxlfX08L3NwYW4+XHJcbjwvZGl2PiJdfQ==
@@ -1,52 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { NgModule } from '@angular/core';
3
- import { FormsModule } from '@angular/forms';
4
- import { RouterModule } from '@angular/router';
5
- import { MatLegacySelectModule as MatSelectModule } from "@angular/material/legacy-select";
6
- import { MatLegacyInputModule as MatInputModule } from "@angular/material/legacy-input";
7
- import { LocalizationModule } from '@esfaenza/localizations';
8
- import { MessageService } from '@esfaenza/extensions';
9
- import { ESP_LOCALE, ESP_DEBUG } from './tokens';
10
- import { TablePagerComponent } from './components/pager/table_pager.component';
11
- import * as i0 from "@angular/core";
12
- export class EsPagerModule {
13
- static forRoot(config) {
14
- return {
15
- ngModule: EsPagerModule,
16
- providers: [
17
- { provide: ESP_LOCALE, useValue: config?.locale || 'it-IT' },
18
- { provide: ESP_DEBUG, useValue: config?.debugMode || false }
19
- ]
20
- };
21
- }
22
- }
23
- EsPagerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
24
- EsPagerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, declarations: [TablePagerComponent], imports: [CommonModule,
25
- FormsModule,
26
- RouterModule,
27
- LocalizationModule,
28
- MatSelectModule,
29
- MatInputModule], exports: [TablePagerComponent] });
30
- EsPagerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, providers: [MessageService], imports: [CommonModule,
31
- FormsModule,
32
- RouterModule,
33
- LocalizationModule,
34
- MatSelectModule,
35
- MatInputModule] });
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, decorators: [{
37
- type: NgModule,
38
- args: [{
39
- imports: [
40
- CommonModule,
41
- FormsModule,
42
- RouterModule,
43
- LocalizationModule,
44
- MatSelectModule,
45
- MatInputModule,
46
- ],
47
- declarations: [TablePagerComponent],
48
- providers: [MessageService],
49
- exports: [TablePagerComponent]
50
- }]
51
- }] });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtcGFnZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtcGFnZXIvc3JjL2xpYi9lcy1wYWdlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLHFCQUFxQixJQUFJLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxvQkFBb0IsSUFBSSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFdEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFHakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7O0FBZS9FLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBNEI7UUFDekMsT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUM1RCxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxTQUFTLElBQUksS0FBSyxFQUFFO2FBQzdEO1NBQ0YsQ0FBQztJQUNKLENBQUM7OzBHQVRVLGFBQWE7MkdBQWIsYUFBYSxpQkFKVCxtQkFBbUIsYUFQaEMsWUFBWTtRQUNaLFdBQVc7UUFDWCxZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLGVBQWU7UUFDZixjQUFjLGFBSU4sbUJBQW1COzJHQUVsQixhQUFhLGFBSGIsQ0FBQyxjQUFjLENBQUMsWUFSekIsWUFBWTtRQUNaLFdBQVc7UUFDWCxZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLGVBQWU7UUFDZixjQUFjOzJGQU1MLGFBQWE7a0JBYnpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxZQUFZO3dCQUNaLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixjQUFjO3FCQUNmO29CQUNELFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUNuQyxTQUFTLEVBQUUsQ0FBQyxjQUFjLENBQUM7b0JBQzNCLE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuaW1wb3J0IHsgTWF0TGVnYWN5U2VsZWN0TW9kdWxlIGFzIE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktc2VsZWN0XCI7XHJcbmltcG9ydCB7IE1hdExlZ2FjeUlucHV0TW9kdWxlIGFzIE1hdElucHV0TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1pbnB1dFwiO1xyXG5cclxuaW1wb3J0IHsgTG9jYWxpemF0aW9uTW9kdWxlIH0gZnJvbSAnQGVzZmFlbnphL2xvY2FsaXphdGlvbnMnO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ0Blc2ZhZW56YS9leHRlbnNpb25zJztcclxuXHJcbmltcG9ydCB7IEVTUF9MT0NBTEUsIEVTUF9ERUJVRyB9IGZyb20gJy4vdG9rZW5zJztcclxuaW1wb3J0IHsgRXNQYWdlck1vZHVsZUNvbmZpZyB9IGZyb20gJy4vZG9tYWluL2NvbmZpZ3VyYXRpb24vRXNQYWdlck1vZHVsZUNvbmZpZyc7XHJcblxyXG5pbXBvcnQgeyBUYWJsZVBhZ2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BhZ2VyL3RhYmxlX3BhZ2VyLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLCBcclxuICAgIFJvdXRlck1vZHVsZSwgXHJcbiAgICBMb2NhbGl6YXRpb25Nb2R1bGUsXHJcbiAgICBNYXRTZWxlY3RNb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZSxcclxuICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW1RhYmxlUGFnZXJDb21wb25lbnRdLFxyXG4gIHByb3ZpZGVyczogW01lc3NhZ2VTZXJ2aWNlXSxcclxuICBleHBvcnRzOiBbVGFibGVQYWdlckNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEVzUGFnZXJNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZz86IEVzUGFnZXJNb2R1bGVDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEVzUGFnZXJNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBFc1BhZ2VyTW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7IHByb3ZpZGU6IEVTUF9MT0NBTEUsIHVzZVZhbHVlOiBjb25maWc/LmxvY2FsZSB8fCAnaXQtSVQnIH0sXHJcbiAgICAgICAgeyBwcm92aWRlOiBFU1BfREVCVUcsIHVzZVZhbHVlOiBjb25maWc/LmRlYnVnTW9kZSB8fCBmYWxzZSB9XHJcbiAgICAgIF1cclxuICAgIH07XHJcbiAgfVxyXG59Il19
@@ -1,6 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- /** Token che indica il locale da utilizzare all'interno del componente. Supportati solo "it-IT" ed "en-US" */
3
- export const ESP_LOCALE = new InjectionToken('ESP_LOCALE');
4
- /** Token che indica se emettere log a console o meno */
5
- export const ESP_DEBUG = new InjectionToken('ESP_DEBUG');
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtcGFnZXIvc3JjL2xpYi90b2tlbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyw4R0FBOEc7QUFDOUcsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUEyQixJQUFJLGNBQWMsQ0FBUyxZQUFZLENBQUMsQ0FBQztBQUUzRix3REFBd0Q7QUFDeEQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUEyQixJQUFJLGNBQWMsQ0FBUyxXQUFXLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vKiogVG9rZW4gY2hlIGluZGljYSBpbCBsb2NhbGUgZGEgdXRpbGl6emFyZSBhbGwnaW50ZXJubyBkZWwgY29tcG9uZW50ZS4gU3VwcG9ydGF0aSBzb2xvIFwiaXQtSVRcIiBlZCBcImVuLVVTXCIgKi9cclxuZXhwb3J0IGNvbnN0IEVTUF9MT0NBTEU6IEluamVjdGlvblRva2VuPHN0cmluZz4gPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPignRVNQX0xPQ0FMRScpO1xyXG5cclxuLyoqIFRva2VuIGNoZSBpbmRpY2Egc2UgZW1ldHRlcmUgbG9nIGEgY29uc29sZSBvIG1lbm8gKi9cclxuZXhwb3J0IGNvbnN0IEVTUF9ERUJVRzogSW5qZWN0aW9uVG9rZW48c3RyaW5nPiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCdFU1BfREVCVUcnKTsiXX0=
@@ -1,214 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { InjectionToken, Injectable, Optional, Inject, EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, NgModule } from '@angular/core';
3
- import * as i2 from '@esfaenza/localizations';
4
- import { LocalizationService, LocalizationModule } from '@esfaenza/localizations';
5
- import * as i1 from '@esfaenza/extensions';
6
- import { MessageService } from '@esfaenza/extensions';
7
- import * as i3 from '@angular/common';
8
- import { CommonModule } from '@angular/common';
9
- import * as i4 from '@angular/forms';
10
- import { FormsModule } from '@angular/forms';
11
- import * as i5 from '@angular/material/legacy-form-field';
12
- import * as i6 from '@angular/material/legacy-input';
13
- import { MatLegacyInputModule } from '@angular/material/legacy-input';
14
- import { RouterModule } from '@angular/router';
15
- import { MatLegacySelectModule } from '@angular/material/legacy-select';
16
-
17
- /** Modello di configurazione per L'EsTable */
18
- class EsPagerModuleConfig {
19
- }
20
-
21
- /** Token che indica il locale da utilizzare all'interno del componente. Supportati solo "it-IT" ed "en-US" */
22
- const ESP_LOCALE = new InjectionToken('ESP_LOCALE');
23
- /** Token che indica se emettere log a console o meno */
24
- const ESP_DEBUG = new InjectionToken('ESP_DEBUG');
25
-
26
- /** Classe di localizzazione per il componente **TablePagerComponent** */
27
- class TablePagerLoc extends LocalizationService {
28
- /** @ignore */
29
- constructor(LOC_LOCALE) {
30
- super(LOC_LOCALE !== null && LOC_LOCALE !== void 0 ? LOC_LOCALE : 'it-IT');
31
- super.set("en->it", "All", ["Tutto"]);
32
- super.set("en->it", "Shown Elements", ["Elementi visualizzati"]);
33
- super.set("en->it", "Shown Groups", ["Gruppi visualizzati"]);
34
- super.set("en->it", "Are you sure you want to retrieve all results?", ["Si è sicuri di voler caricare tutti i risultati?"]);
35
- super.set("en->it", "This might slow down the page and possibly crash the entire application", ["L'operazione potrebbe rallentare la pagina fino al crash dell'applicazione"]);
36
- }
37
- }
38
- TablePagerLoc.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerLoc, deps: [{ token: ESP_LOCALE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
39
- TablePagerLoc.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerLoc });
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerLoc, decorators: [{
41
- type: Injectable
42
- }], ctorParameters: function () {
43
- return [{ type: undefined, decorators: [{
44
- type: Optional
45
- }, {
46
- type: Inject,
47
- args: [ESP_LOCALE]
48
- }] }];
49
- } });
50
-
51
- // Angular
52
- /** Componente che si occupa della paginazione di una tabella */
53
- class TablePagerComponent {
54
- /** @ignore */
55
- constructor(msgExts, lc, cdr, locale, debug) {
56
- this.msgExts = msgExts;
57
- this.lc = lc;
58
- this.cdr = cdr;
59
- this.locale = locale;
60
- this.debug = debug;
61
- /** Indica se deve mostrare un warning quando si cercano di solezionare come elementi da visualizzare "Tutti" */
62
- this.WarnOnAll = true;
63
- /** Indica se dare la possibilità o meno di selezionare "Tutti" nelle opzioni di paginazione */
64
- this.AllSearch = true;
65
- /** Placeholder che identifica il "Tutti" */
66
- this.DefaultAll = 999999;
67
- /** Indica se attivare la modalità gruppo con stili più snelli per apparire sotto ai raggruppamenti */
68
- this.GroupMode = false;
69
- /** Indica se utilizzare il conteggio dei gruppi o degli oggetti */
70
- this.GroupCount = false;
71
- /** Indica il testo che va a sostituire "Oggetti Visualizzati" in caso si stia facendo qualcosa di custom, Ignorato in caso di gruppi */
72
- this.CountLabel = null;
73
- /** Indica se visualizzare il numero totale di oggeti presenti */
74
- this.ShowCount = true;
75
- /** Indica se visualizzare il numero totale di oggeti presenti */
76
- this.ShowPaging = true;
77
- /** Output invocato quando il numero di elementi per pagina viene modificato da un click utente */
78
- this.pagingSelected = new EventEmitter();
79
- /** Opzioni di paginazione */
80
- this.PagingOptions = [10, 15, 30, 45, 100];
81
- }
82
- /** @ignore */
83
- ngOnInit() {
84
- this.Model = this.View ? (this.View.itemsperpageoverride || 15) : this.CurrentPageSize;
85
- if (this.AllSearch)
86
- this.PagingOptions.push(this.DefaultAll);
87
- }
88
- /** @ignore */
89
- ngOnChanges(changes) {
90
- let newView = changes['View'];
91
- let newCPS = changes['CurrentPageSize'];
92
- if ((newView && !newView.firstChange) || (newCPS && !newCPS.firstChange))
93
- this.Model = (newView === null || newView === void 0 ? void 0 : newView.currentValue) ? (newView.currentValue.itemsperpageoverride || 15) : (newCPS === null || newCPS === void 0 ? void 0 : newCPS.currentValue) ? newCPS.currentValue : null;
94
- }
95
- /**
96
- * Funzione richiamata dal template quando un utente clicca su un numero di paginazione.
97
- *
98
- * Cliccare 2 volte sullo stesso numero causa comunque un refresh dei dati
99
- *
100
- * @param {number} pageSize Dimensione selezionata lato UI
101
- */
102
- choice(pageSize) {
103
- if (pageSize == this.DefaultAll && this.WarnOnAll) {
104
- this.msgExts.simpleWarningWithChoice(this.lc.loc("Are you sure you want to retrieve all results?"), this.lc.loc("This might slow down the page and possibly crash the entire application"), () => { this.pagingSelected.emit(pageSize); this.Model = pageSize; }, () => {
105
- // Dio solo sa perché mi tocca fare sta roba... qui dentro per qualche motivo la CD non prende
106
- let prevModel = this.Model;
107
- this.Model = null;
108
- this.cdr.detectChanges();
109
- this.Model = prevModel;
110
- this.cdr.detectChanges();
111
- });
112
- }
113
- else {
114
- this.pagingSelected.emit(pageSize);
115
- this.Model = pageSize;
116
- }
117
- }
118
- }
119
- TablePagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerComponent, deps: [{ token: i1.MessageService }, { token: i2.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ESP_LOCALE, optional: true }, { token: ESP_DEBUG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
120
- TablePagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TablePagerComponent, selector: "app-paging", inputs: { CurrentPageSize: "CurrentPageSize", View: "View", WarnOnAll: "WarnOnAll", AllSearch: "AllSearch", DefaultAll: "DefaultAll", GroupMode: "GroupMode", GroupCount: "GroupCount", CountLabel: "CountLabel", ShowCount: "ShowCount", ShowPaging: "ShowPaging", PagerCount: "PagerCount", Hidden: "Hidden" }, outputs: { pagingSelected: "pagingSelected" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : locale}}</span>\r\n</div>", styles: [".est-rg-ipp-sel-all,.est-rg-ipp-sel,.est-ipp-sel-all{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-head-resizer{top:0;right:0;bottom:0;width:2px;position:absolute;cursor:col-resize;background-color:#ccc}.est-ipp-sel{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-ipp-bold{font-weight:700}.mat-paginator-page-size-select{margin:0 4px;width:50px}.mat-paginator-page-size-select .mat-form-field-wrapper{height:52px!important;margin-top:-15px!important;padding:0!important}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{margin-top:-5.5px!important}.mat-paginator-page-size-select .mat-form-field-underline{bottom:10px}.est-mt-4{margin-top:4px!important}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLegacyInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", exportAs: ["matInput"] }, { kind: "pipe", type: i3.DecimalPipe, name: "number" }, { kind: "pipe", type: i2.LocalizePipe, name: "localize" }], viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
121
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TablePagerComponent, decorators: [{
122
- type: Component,
123
- args: [{ selector: "app-paging", viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : locale}}</span>\r\n</div>", styles: [".est-rg-ipp-sel-all,.est-rg-ipp-sel,.est-ipp-sel-all{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-head-resizer{top:0;right:0;bottom:0;width:2px;position:absolute;cursor:col-resize;background-color:#ccc}.est-ipp-sel{color:#0275d8!important;cursor:pointer;text-decoration:none;display:block;display:inline}.est-ipp-bold{font-weight:700}.mat-paginator-page-size-select{margin:0 4px;width:50px}.mat-paginator-page-size-select .mat-form-field-wrapper{height:52px!important;margin-top:-15px!important;padding:0!important}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{margin-top:-5.5px!important}.mat-paginator-page-size-select .mat-form-field-underline{bottom:10px}.est-mt-4{margin-top:4px!important}\n"] }]
124
- }], ctorParameters: function () {
125
- return [{ type: i1.MessageService }, { type: i2.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
126
- type: Optional
127
- }, {
128
- type: Inject,
129
- args: [ESP_LOCALE]
130
- }] }, { type: undefined, decorators: [{
131
- type: Optional
132
- }, {
133
- type: Inject,
134
- args: [ESP_DEBUG]
135
- }] }];
136
- }, propDecorators: { CurrentPageSize: [{
137
- type: Input
138
- }], View: [{
139
- type: Input
140
- }], WarnOnAll: [{
141
- type: Input
142
- }], AllSearch: [{
143
- type: Input
144
- }], DefaultAll: [{
145
- type: Input
146
- }], GroupMode: [{
147
- type: Input
148
- }], GroupCount: [{
149
- type: Input
150
- }], CountLabel: [{
151
- type: Input
152
- }], ShowCount: [{
153
- type: Input
154
- }], ShowPaging: [{
155
- type: Input
156
- }], PagerCount: [{
157
- type: Input
158
- }], Hidden: [{
159
- type: Input
160
- }], pagingSelected: [{
161
- type: Output
162
- }] } });
163
-
164
- class EsPagerModule {
165
- static forRoot(config) {
166
- return {
167
- ngModule: EsPagerModule,
168
- providers: [
169
- { provide: ESP_LOCALE, useValue: (config === null || config === void 0 ? void 0 : config.locale) || 'it-IT' },
170
- { provide: ESP_DEBUG, useValue: (config === null || config === void 0 ? void 0 : config.debugMode) || false }
171
- ]
172
- };
173
- }
174
- }
175
- EsPagerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
176
- EsPagerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, declarations: [TablePagerComponent], imports: [CommonModule,
177
- FormsModule,
178
- RouterModule,
179
- LocalizationModule,
180
- MatLegacySelectModule,
181
- MatLegacyInputModule], exports: [TablePagerComponent] });
182
- EsPagerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, providers: [MessageService], imports: [CommonModule,
183
- FormsModule,
184
- RouterModule,
185
- LocalizationModule,
186
- MatLegacySelectModule,
187
- MatLegacyInputModule] });
188
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsPagerModule, decorators: [{
189
- type: NgModule,
190
- args: [{
191
- imports: [
192
- CommonModule,
193
- FormsModule,
194
- RouterModule,
195
- LocalizationModule,
196
- MatLegacySelectModule,
197
- MatLegacyInputModule,
198
- ],
199
- declarations: [TablePagerComponent],
200
- providers: [MessageService],
201
- exports: [TablePagerComponent]
202
- }]
203
- }] });
204
-
205
- /*
206
- * Public API Surface of es-pager
207
- */
208
-
209
- /**
210
- * Generated bundle index. Do not edit.
211
- */
212
-
213
- export { EsPagerModule, EsPagerModuleConfig, TablePagerComponent };
214
- //# sourceMappingURL=esfaenza-es-pager.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"esfaenza-es-pager.mjs","sources":["../../../projects/es-pager/src/lib/domain/configuration/EsPagerModuleConfig.ts","../../../projects/es-pager/src/lib/tokens.ts","../../../projects/es-pager/src/lib/components/pager/table_pager.component.loc.ts","../../../projects/es-pager/src/lib/components/pager/table_pager.component.ts","../../../projects/es-pager/src/lib/components/pager/table_pager.component.html","../../../projects/es-pager/src/lib/es-pager.module.ts","../../../projects/es-pager/src/public-api.ts","../../../projects/es-pager/src/esfaenza-es-pager.ts"],"sourcesContent":["/** Modello di configurazione per L'EsTable */\r\nexport class EsPagerModuleConfig {\r\n\r\n /** Locale da utilizzare per i messaggi, supportati \"it-IT\" ed \"en-US\" */\r\n public locale?: string;\r\n /** Indica se scrivere messaggi di log a console */\r\n public debugMode?: boolean;\r\n}","import { InjectionToken } from '@angular/core';\r\n\r\n/** Token che indica il locale da utilizzare all'interno del componente. Supportati solo \"it-IT\" ed \"en-US\" */\r\nexport const ESP_LOCALE: InjectionToken<string> = new InjectionToken<string>('ESP_LOCALE');\r\n\r\n/** Token che indica se emettere log a console o meno */\r\nexport const ESP_DEBUG: InjectionToken<string> = new InjectionToken<string>('ESP_DEBUG');","import { Injectable, Inject, Optional } from \"@angular/core\";\r\nimport { LocalizationService } from \"@esfaenza/localizations\";\r\nimport { ESP_LOCALE } from '../../tokens';\r\n\r\n/** Classe di localizzazione per il componente **TablePagerComponent** */\r\n@Injectable()\r\nexport class TablePagerLoc extends LocalizationService {\r\n\r\n /** @ignore */\r\n constructor(@Optional() @Inject(ESP_LOCALE) LOC_LOCALE: string) {\r\n super(LOC_LOCALE ?? 'it-IT');\r\n super.set(\"en->it\", \"All\", [\"Tutto\"]);\r\n super.set(\"en->it\", \"Shown Elements\", [\"Elementi visualizzati\"]);\r\n super.set(\"en->it\", \"Shown Groups\", [\"Gruppi visualizzati\"]);\r\n super.set(\"en->it\", \"Are you sure you want to retrieve all results?\", [\"Si è sicuri di voler caricare tutti i risultati?\"]);\r\n super.set(\"en->it\", \"This might slow down the page and possibly crash the entire application\", [\"L'operazione potrebbe rallentare la pagina fino al crash dell'applicazione\"]);\r\n }\r\n}","// Angular\r\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Inject, Input, Optional, Output, SimpleChanges, ViewEncapsulation } from \"@angular/core\";\r\n\r\n// Configurazioni\r\nimport { LocalizationService } from \"@esfaenza/localizations\";\r\nimport { MessageService } from \"@esfaenza/extensions\";\r\n\r\n// Applicazione\r\nimport { TablePagerLoc } from \"./table_pager.component.loc\";\r\nimport { ESP_LOCALE, ESP_DEBUG } from \"../../tokens\";\r\n\r\n/** Componente che si occupa della paginazione di una tabella */\r\n@Component({\r\n selector: \"app-paging\",\r\n viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }],\r\n styleUrls: ['./table_pager.component.scss'],\r\n templateUrl: \"./table_pager.component.html\",\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TablePagerComponent {\r\n\r\n /** Dimensione di pagina attuale */\r\n @Input() CurrentPageSize: any;\r\n\r\n /** View gestita, che può essere un IAppSearch o una ReportView */\r\n @Input() View: any;\r\n\r\n /** Indica se deve mostrare un warning quando si cercano di solezionare come elementi da visualizzare \"Tutti\" */\r\n @Input() WarnOnAll: boolean = true;\r\n\r\n /** Indica se dare la possibilità o meno di selezionare \"Tutti\" nelle opzioni di paginazione */\r\n @Input() AllSearch: boolean = true;\r\n \r\n /** Placeholder che identifica il \"Tutti\" */\r\n @Input() DefaultAll = 999999;\r\n \r\n /** Indica se attivare la modalità gruppo con stili più snelli per apparire sotto ai raggruppamenti */\r\n @Input() GroupMode = false;\r\n\r\n /** Indica se utilizzare il conteggio dei gruppi o degli oggetti */\r\n @Input() GroupCount = false;\r\n\r\n /** Indica il testo che va a sostituire \"Oggetti Visualizzati\" in caso si stia facendo qualcosa di custom, Ignorato in caso di gruppi */\r\n @Input() CountLabel: string = null;\r\n\r\n /** Indica se visualizzare il numero totale di oggeti presenti */\r\n @Input() ShowCount: boolean = true;\r\n\r\n /** Indica se visualizzare il numero totale di oggeti presenti */\r\n @Input() ShowPaging: boolean = true;\r\n\r\n /** Indica il numero totale di oggeti presenti */\r\n @Input() PagerCount: number;\r\n\r\n /** Indica se mostrare o meno il contenuto @deprecated usata solo da MatrixValuesComponent nella lib relativa */\r\n @Input() Hidden: boolean;\r\n\r\n /** Output invocato quando il numero di elementi per pagina viene modificato da un click utente */\r\n @Output() pagingSelected = new EventEmitter<number>();\r\n\r\n /** @ignore */\r\n constructor(private msgExts: MessageService, public lc: LocalizationService, public cdr: ChangeDetectorRef, @Optional() @Inject(ESP_LOCALE) public locale: string, @Optional() @Inject(ESP_DEBUG) public debug: boolean) { }\r\n\r\n /** Modello su cui la select effettua operazioni di selezione */\r\n public Model: number;\r\n\r\n /** Opzioni di paginazione */\r\n public PagingOptions: number[] = [10, 15, 30, 45, 100 ];\r\n\r\n /** @ignore */\r\n ngOnInit() {\r\n this.Model = this.View ? (this.View.itemsperpageoverride || 15) : this.CurrentPageSize;\r\n if (this.AllSearch)\r\n this.PagingOptions.push(this.DefaultAll);\r\n }\r\n\r\n /** @ignore */\r\n ngOnChanges(changes: SimpleChanges) {\r\n let newView = changes['View'];\r\n let newCPS = changes['CurrentPageSize'];\r\n\r\n if ((newView && !newView.firstChange) || (newCPS && !newCPS.firstChange))\r\n this.Model = newView?.currentValue ? (newView.currentValue.itemsperpageoverride || 15) : newCPS?.currentValue ? newCPS.currentValue : null;\r\n }\r\n\r\n /**\r\n * Funzione richiamata dal template quando un utente clicca su un numero di paginazione.\r\n * \r\n * Cliccare 2 volte sullo stesso numero causa comunque un refresh dei dati\r\n * \r\n * @param {number} pageSize Dimensione selezionata lato UI\r\n */\r\n public choice(pageSize: number) {\r\n if (pageSize == this.DefaultAll && this.WarnOnAll) {\r\n this.msgExts.simpleWarningWithChoice(\r\n this.lc.loc(\"Are you sure you want to retrieve all results?\"),\r\n this.lc.loc(\"This might slow down the page and possibly crash the entire application\"),\r\n () => { this.pagingSelected.emit(pageSize); this.Model = pageSize; },\r\n () => {\r\n // Dio solo sa perché mi tocca fare sta roba... qui dentro per qualche motivo la CD non prende\r\n let prevModel = this.Model;\r\n this.Model = null;\r\n this.cdr.detectChanges();\r\n this.Model = prevModel;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n else {\r\n this.pagingSelected.emit(pageSize);\r\n this.Model = pageSize;\r\n }\r\n }\r\n}","<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : locale}}</span>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { MatLegacySelectModule as MatSelectModule } from \"@angular/material/legacy-select\";\r\nimport { MatLegacyInputModule as MatInputModule } from \"@angular/material/legacy-input\";\r\n\r\nimport { LocalizationModule } from '@esfaenza/localizations';\r\nimport { MessageService } from '@esfaenza/extensions';\r\n\r\nimport { ESP_LOCALE, ESP_DEBUG } from './tokens';\r\nimport { EsPagerModuleConfig } from './domain/configuration/EsPagerModuleConfig';\r\n\r\nimport { TablePagerComponent } from './components/pager/table_pager.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule, \r\n RouterModule, \r\n LocalizationModule,\r\n MatSelectModule,\r\n MatInputModule,\r\n ],\r\n declarations: [TablePagerComponent],\r\n providers: [MessageService],\r\n exports: [TablePagerComponent]\r\n})\r\nexport class EsPagerModule {\r\n static forRoot(config?: EsPagerModuleConfig): ModuleWithProviders<EsPagerModule> {\r\n return {\r\n ngModule: EsPagerModule,\r\n providers: [\r\n { provide: ESP_LOCALE, useValue: config?.locale || 'it-IT' },\r\n { provide: ESP_DEBUG, useValue: config?.debugMode || false }\r\n ]\r\n };\r\n }\r\n}","/*\r\n * Public API Surface of es-pager\r\n */\r\n\r\nexport * from './lib/domain/configuration/EsPagerModuleConfig'\r\nexport * from './lib/components/pager/table_pager.component'\r\nexport * from './lib/es-pager.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["MatSelectModule","MatInputModule"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"esfaenza-es-pager.mjs","sources":["../../../projects/es-pager/src/lib/domain/configuration/EsPagerModuleConfig.ts","../../../projects/es-pager/src/lib/tokens.ts","../../../projects/es-pager/src/lib/components/pager/table_pager.component.loc.ts","../../../projects/es-pager/src/lib/components/pager/table_pager.component.ts","../../../projects/es-pager/src/lib/components/pager/table_pager.component.html","../../../projects/es-pager/src/lib/es-pager.module.ts","../../../projects/es-pager/src/public-api.ts","../../../projects/es-pager/src/esfaenza-es-pager.ts"],"sourcesContent":["/** Modello di configurazione per L'EsTable */\r\nexport class EsPagerModuleConfig {\r\n\r\n /** Locale da utilizzare per i messaggi, supportati \"it-IT\" ed \"en-US\" */\r\n public locale?: string;\r\n /** Indica se scrivere messaggi di log a console */\r\n public debugMode?: boolean;\r\n}","import { InjectionToken } from '@angular/core';\r\n\r\n/** Token che indica il locale da utilizzare all'interno del componente. Supportati solo \"it-IT\" ed \"en-US\" */\r\nexport const ESP_LOCALE: InjectionToken<string> = new InjectionToken<string>('ESP_LOCALE');\r\n\r\n/** Token che indica se emettere log a console o meno */\r\nexport const ESP_DEBUG: InjectionToken<string> = new InjectionToken<string>('ESP_DEBUG');","import { Injectable, Inject, Optional } from \"@angular/core\";\r\nimport { LocalizationService } from \"@esfaenza/localizations\";\r\nimport { ESP_LOCALE } from '../../tokens';\r\n\r\n/** Classe di localizzazione per il componente **TablePagerComponent** */\r\n@Injectable()\r\nexport class TablePagerLoc extends LocalizationService {\r\n\r\n /** @ignore */\r\n constructor(@Optional() @Inject(ESP_LOCALE) LOC_LOCALE: string) {\r\n super(LOC_LOCALE ?? 'it-IT');\r\n super.set(\"en->it\", \"All\", [\"Tutto\"]);\r\n super.set(\"en->it\", \"Shown Elements\", [\"Elementi visualizzati\"]);\r\n super.set(\"en->it\", \"Shown Groups\", [\"Gruppi visualizzati\"]);\r\n super.set(\"en->it\", \"Are you sure you want to retrieve all results?\", [\"Si è sicuri di voler caricare tutti i risultati?\"]);\r\n super.set(\"en->it\", \"This might slow down the page and possibly crash the entire application\", [\"L'operazione potrebbe rallentare la pagina fino al crash dell'applicazione\"]);\r\n }\r\n}","// Angular\r\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Inject, Input, Optional, Output, SimpleChanges, ViewEncapsulation } from \"@angular/core\";\r\n\r\n// Configurazioni\r\nimport { LocalizationService } from \"@esfaenza/localizations\";\r\nimport { MessageService } from \"@esfaenza/extensions\";\r\n\r\n// Applicazione\r\nimport { TablePagerLoc } from \"./table_pager.component.loc\";\r\nimport { ESP_LOCALE, ESP_DEBUG } from \"../../tokens\";\r\n\r\n/** Componente che si occupa della paginazione di una tabella */\r\n@Component({\r\n selector: \"app-paging\",\r\n viewProviders: [{ provide: LocalizationService, useClass: TablePagerLoc }],\r\n styleUrls: ['./table_pager.component.scss'],\r\n templateUrl: \"./table_pager.component.html\",\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TablePagerComponent {\r\n\r\n /** Dimensione di pagina attuale */\r\n @Input() CurrentPageSize: any;\r\n\r\n /** View gestita, che può essere un IAppSearch o una ReportView */\r\n @Input() View: any;\r\n\r\n /** Indica se deve mostrare un warning quando si cercano di solezionare come elementi da visualizzare \"Tutti\" */\r\n @Input() WarnOnAll: boolean = true;\r\n\r\n /** Indica se dare la possibilità o meno di selezionare \"Tutti\" nelle opzioni di paginazione */\r\n @Input() AllSearch: boolean = true;\r\n \r\n /** Placeholder che identifica il \"Tutti\" */\r\n @Input() DefaultAll = 999999;\r\n \r\n /** Indica se attivare la modalità gruppo con stili più snelli per apparire sotto ai raggruppamenti */\r\n @Input() GroupMode = false;\r\n\r\n /** Indica se utilizzare il conteggio dei gruppi o degli oggetti */\r\n @Input() GroupCount = false;\r\n\r\n /** Indica il testo che va a sostituire \"Oggetti Visualizzati\" in caso si stia facendo qualcosa di custom, Ignorato in caso di gruppi */\r\n @Input() CountLabel: string = null;\r\n\r\n /** Indica se visualizzare il numero totale di oggeti presenti */\r\n @Input() ShowCount: boolean = true;\r\n\r\n /** Indica se visualizzare il numero totale di oggeti presenti */\r\n @Input() ShowPaging: boolean = true;\r\n\r\n /** Indica il numero totale di oggeti presenti */\r\n @Input() PagerCount: number;\r\n\r\n /** Indica se mostrare o meno il contenuto @deprecated usata solo da MatrixValuesComponent nella lib relativa */\r\n @Input() Hidden: boolean;\r\n\r\n /** Output invocato quando il numero di elementi per pagina viene modificato da un click utente */\r\n @Output() pagingSelected = new EventEmitter<number>();\r\n\r\n /** @ignore */\r\n constructor(private msgExts: MessageService, public lc: LocalizationService, public cdr: ChangeDetectorRef, @Optional() @Inject(ESP_LOCALE) public locale: string, @Optional() @Inject(ESP_DEBUG) public debug: boolean) { }\r\n\r\n /** Modello su cui la select effettua operazioni di selezione */\r\n public Model: number;\r\n\r\n /** Opzioni di paginazione */\r\n public PagingOptions: number[] = [10, 15, 30, 45, 100 ];\r\n\r\n /** @ignore */\r\n ngOnInit() {\r\n this.Model = this.View ? (this.View.itemsperpageoverride || 15) : this.CurrentPageSize;\r\n if (this.AllSearch)\r\n this.PagingOptions.push(this.DefaultAll);\r\n }\r\n\r\n /** @ignore */\r\n ngOnChanges(changes: SimpleChanges) {\r\n let newView = changes['View'];\r\n let newCPS = changes['CurrentPageSize'];\r\n\r\n if ((newView && !newView.firstChange) || (newCPS && !newCPS.firstChange))\r\n this.Model = newView?.currentValue ? (newView.currentValue.itemsperpageoverride || 15) : newCPS?.currentValue ? newCPS.currentValue : null;\r\n }\r\n\r\n /**\r\n * Funzione richiamata dal template quando un utente clicca su un numero di paginazione.\r\n * \r\n * Cliccare 2 volte sullo stesso numero causa comunque un refresh dei dati\r\n * \r\n * @param {number} pageSize Dimensione selezionata lato UI\r\n */\r\n public choice(pageSize: number) {\r\n if (pageSize == this.DefaultAll && this.WarnOnAll) {\r\n this.msgExts.simpleWarningWithChoice(\r\n this.lc.loc(\"Are you sure you want to retrieve all results?\"),\r\n this.lc.loc(\"This might slow down the page and possibly crash the entire application\"),\r\n () => { this.pagingSelected.emit(pageSize); this.Model = pageSize; },\r\n () => {\r\n // Dio solo sa perché mi tocca fare sta roba... qui dentro per qualche motivo la CD non prende\r\n let prevModel = this.Model;\r\n this.Model = null;\r\n this.cdr.detectChanges();\r\n this.Model = prevModel;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n else {\r\n this.pagingSelected.emit(pageSize);\r\n this.Model = pageSize;\r\n }\r\n }\r\n}","<div *ngIf=\"!Hidden\" [class.est-mt-4]=\"ShowCount && PagerCount != -1 && !(ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1))\">\r\n <span class=\"est-fs-14\"> {{CountLabel && !GroupMode ? CountLabel : ((GroupMode ? 'Shown Groups' : 'Shown Elements') | localize : lc)}}:&nbsp;</span>\r\n <ng-container *ngIf=\"ShowPaging && Model && (Model == DefaultAll || PagerCount >= Model || PagerCount == -1)\">\r\n <mat-form-field [appearance]=\"'legacy'\" class=\"mat-paginator-page-size-select est-fs-14 est-ipp-bold\">\r\n <select matNativeControl [ngModel]=\"Model\" name=\"input\" (ngModelChange)=\"choice($event)\">\r\n <ng-container *ngFor=\"let pOpt of PagingOptions\">\r\n <option *ngIf=\"pOpt == DefaultAll || PagerCount >= pOpt || PagerCount == -1\" [value]=\"pOpt\">{{ pOpt == DefaultAll ? ('All' | localize : lc) : pOpt.toString()}}</option>\r\n </ng-container>\r\n </select>\r\n </mat-form-field>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">&nbsp;/&nbsp;</span>\r\n </ng-container>\r\n <span class=\"est-fs-14 est-ipp-bold\" *ngIf=\"ShowCount && PagerCount != -1\">{{PagerCount | number : '0.0-0' : locale}}</span>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { MatLegacySelectModule as MatSelectModule } from \"@angular/material/legacy-select\";\r\nimport { MatLegacyInputModule as MatInputModule } from \"@angular/material/legacy-input\";\r\n\r\nimport { LocalizationModule } from '@esfaenza/localizations';\r\nimport { MessageService } from '@esfaenza/extensions';\r\n\r\nimport { ESP_LOCALE, ESP_DEBUG } from './tokens';\r\nimport { EsPagerModuleConfig } from './domain/configuration/EsPagerModuleConfig';\r\n\r\nimport { TablePagerComponent } from './components/pager/table_pager.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule, \r\n RouterModule, \r\n LocalizationModule,\r\n MatSelectModule,\r\n MatInputModule,\r\n ],\r\n declarations: [TablePagerComponent],\r\n providers: [MessageService],\r\n exports: [TablePagerComponent]\r\n})\r\nexport class EsPagerModule {\r\n static forRoot(config?: EsPagerModuleConfig): ModuleWithProviders<EsPagerModule> {\r\n return {\r\n ngModule: EsPagerModule,\r\n providers: [\r\n { provide: ESP_LOCALE, useValue: config?.locale || 'it-IT' },\r\n { provide: ESP_DEBUG, useValue: config?.debugMode || false }\r\n ]\r\n };\r\n }\r\n}","/*\r\n * Public API Surface of es-pager\r\n */\r\n\r\nexport * from './lib/domain/configuration/EsPagerModuleConfig'\r\nexport * from './lib/components/pager/table_pager.component'\r\nexport * from './lib/es-pager.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["MatSelectModule","MatInputModule"],"mappings":"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"}
File without changes
File without changes