@esfaenza/es-table 11.2.122 → 11.2.123
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/esfaenza-es-table.umd.js +471 -263
- package/bundles/esfaenza-es-table.umd.js.map +1 -1
- package/bundles/esfaenza-es-table.umd.min.js +1 -1
- package/bundles/esfaenza-es-table.umd.min.js.map +1 -1
- package/esfaenza-es-table.d.ts +8 -4
- package/esfaenza-es-table.metadata.json +1 -1
- package/esm2015/esfaenza-es-table.js +9 -5
- package/esm2015/lib/components/es-table/es_table.component.js +145 -79
- package/esm2015/lib/components/es-td/es_td.component.js +10 -52
- package/esm2015/lib/components/es-th/es_th.component.js +2 -2
- package/esm2015/lib/components/pipes/est-renderer.pipe.js +36 -0
- package/esm2015/lib/components/pipes/est-routerlink.pipe.js +37 -0
- package/esm2015/lib/components/pipes/est_editor.pipe.js +36 -0
- package/esm2015/lib/core/CopyPasteDetector.js +4 -2
- package/esm2015/lib/core/Logger.js +23 -0
- package/esm2015/lib/core/handlers/ColumnMetadataHandler.js +14 -12
- package/esm2015/lib/core/handlers/DynamicModeHandler.js +59 -37
- package/esm2015/lib/core/handlers/SelectionHandler.js +46 -50
- package/esm2015/lib/core/handlers/UtilitiesHandler.js +2 -5
- package/esm2015/lib/directives/es_th.directive.js +9 -2
- package/esm2015/lib/domain/externals/EsTableColumnsDefinition.js +4 -3
- package/esm2015/lib/domain/externals/ItemPropEditableReference.js +1 -1
- package/esm2015/lib/domain/internals/EsTableColumn.js +2 -2
- package/esm2015/lib/domain/internals/PagerInfos.js +15 -0
- package/esm2015/lib/domain/internals/ThGroup.js +2 -0
- package/esm2015/lib/es-table.module.js +42 -19
- package/fesm2015/esfaenza-es-table.js +451 -251
- package/fesm2015/esfaenza-es-table.js.map +1 -1
- package/lib/components/es-table/es_table.component.d.ts +55 -60
- package/lib/components/es-td/es_td.component.d.ts +6 -34
- package/lib/components/pipes/est-renderer.pipe.d.ts +12 -0
- package/lib/components/pipes/est-routerlink.pipe.d.ts +17 -0
- package/lib/components/pipes/est_editor.pipe.d.ts +12 -0
- package/lib/core/Logger.d.ts +7 -0
- package/lib/core/handlers/DynamicModeHandler.d.ts +11 -23
- package/lib/core/handlers/SelectionHandler.d.ts +16 -3
- package/lib/core/handlers/UtilitiesHandler.d.ts +4 -1
- package/lib/directives/es_th.directive.d.ts +25 -0
- package/lib/domain/externals/EsTableColumnsDefinition.d.ts +3 -9
- package/lib/domain/externals/ItemPropEditableReference.d.ts +4 -0
- package/lib/domain/internals/EsTableColumn.d.ts +3 -1
- package/lib/domain/internals/PagerInfos.d.ts +13 -0
- package/lib/domain/internals/ThGroup.d.ts +10 -0
- package/package.json +1 -1
|
@@ -13,12 +13,15 @@ import { EsTableColumn } from "../../domain/internals/EsTableColumn";
|
|
|
13
13
|
import { GroupPager } from "../../domain/internals/GroupPager";
|
|
14
14
|
import { GroupRouteFragment } from "../../domain/internals/GroupRouteFragment";
|
|
15
15
|
import { ThElement } from "../../domain/internals/ThElement";
|
|
16
|
+
import { PagerInfos } from "../../domain/internals/PagerInfos";
|
|
17
|
+
import { ThGroup } from "../../domain/internals/ThGroup";
|
|
16
18
|
import { TdElement } from "../../domain/internals/TdElement";
|
|
17
19
|
import { ItemsSelection } from '../../domain/externals/appsearch/ItemsSelection';
|
|
18
20
|
import { Group } from "../../domain/externals/appsearch/Group";
|
|
19
21
|
import { EsTableModelChange } from '../../domain/externals/EsTableModelChange';
|
|
20
22
|
import { ItemPropEditableReference } from '../../domain/externals/ItemPropEditableReference';
|
|
21
23
|
import { EsTableDefaultable } from '../../domain/configuration/EsTableDefaultable';
|
|
24
|
+
import { EsTd } from '../es-td/es_td.component';
|
|
22
25
|
import { EsTdDirective } from '../../directives/es_td.directive';
|
|
23
26
|
import { EsThDirective } from '../../directives/es_th.directive';
|
|
24
27
|
import { EsTdEditorDirective } from '../../directives/es_td_editor.directive';
|
|
@@ -33,8 +36,8 @@ import { RowGroupingHandler } from "../../core/handlers/RowGroupingHandler";
|
|
|
33
36
|
import { SelectionHandler } from "../../core/handlers/SelectionHandler";
|
|
34
37
|
import { UtilitiesHandler } from "../../core/handlers/UtilitiesHandler";
|
|
35
38
|
import { CopyPasteDetector } from '../../core/CopyPasteDetector';
|
|
39
|
+
import { Logger } from '../../core/Logger';
|
|
36
40
|
import { Subject } from 'rxjs';
|
|
37
|
-
import { EsTd } from '../es-td/es_td.component';
|
|
38
41
|
/** Componente che permette di rappresentare una griglia di valori */
|
|
39
42
|
export declare class EsTableComponent implements ControlValueAccessor, OnChanges {
|
|
40
43
|
ngControl: NgControl;
|
|
@@ -50,6 +53,7 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
50
53
|
private msgExts;
|
|
51
54
|
private copyPasteDetector;
|
|
52
55
|
private clipboardService;
|
|
56
|
+
private logger;
|
|
53
57
|
/** @ignore */ export_H: ExportHandler;
|
|
54
58
|
/** @ignore */ columnMetadata_H: ColumnMetadataHandler;
|
|
55
59
|
/** @ignore */ dynamicMode_H: DynamicModeHandler;
|
|
@@ -61,7 +65,7 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
61
65
|
/** @ignore */ private copySubscription;
|
|
62
66
|
/** @ignore */ private pasteSubscription;
|
|
63
67
|
/** @ignore */
|
|
64
|
-
constructor(ngControl: NgControl, prefService: PreferencesService, deafults: EsTableDefaultable, locale: string, lc: LocalizationService, cdr: ChangeDetectorRef, utilities_H: UtilitiesHandler, utiExts: UtilityService, expExts: ExportService, dateExts: DateService, msgExts: MessageService, copyPasteDetector: CopyPasteDetector, clipboardService: ClipboardService);
|
|
68
|
+
constructor(ngControl: NgControl, prefService: PreferencesService, deafults: EsTableDefaultable, locale: string, lc: LocalizationService, cdr: ChangeDetectorRef, utilities_H: UtilitiesHandler, utiExts: UtilityService, expExts: ExportService, dateExts: DateService, msgExts: MessageService, copyPasteDetector: CopyPasteDetector, clipboardService: ClipboardService, logger: Logger);
|
|
65
69
|
/** Subject utilizzato internamente lato EsTable per causare il Focus lato componente di Input */
|
|
66
70
|
FocusSubject: Subject<void>;
|
|
67
71
|
/** Timer che verrà impostato a **doubleClickBufferMs** per capire se è stato effettuato un click singolo o un doubleclick */
|
|
@@ -71,7 +75,10 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
71
75
|
/** View finale su cui bindarsi lato Frontend, il tipo può essere IAppSearch<any> (per la **viewMode**), any[] (per l'**arrayMode**) */
|
|
72
76
|
View: any;
|
|
73
77
|
/** Modello da cui l'es-table mostra i pulsanti di paginazione in basso a destra */
|
|
74
|
-
arrayPulsanti:
|
|
78
|
+
arrayPulsanti: {
|
|
79
|
+
val: number;
|
|
80
|
+
cssClass: string;
|
|
81
|
+
}[];
|
|
75
82
|
/** Indica se l'es-table deve mostrare il check globale nell'header per fare il "seleziona tutto" */
|
|
76
83
|
globalCheck: boolean;
|
|
77
84
|
/** Tiene da conto l'ultimo elemento selezionato in modo da poter effettuare il SHIFT+CLICK */
|
|
@@ -91,9 +98,9 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
91
98
|
boundSource: any[];
|
|
92
99
|
/** Stessa cosa della **boundSource**, utilizzata come appoggio temporaneo interno */
|
|
93
100
|
TMPBoundSource: any[];
|
|
94
|
-
/** "Fetta" di oggetti utilizzata nell'endless scroll, ogni elemento di questo array è un blocchetto di 100 elementi */
|
|
101
|
+
/** @deprecated "Fetta" di oggetti utilizzata nell'endless scroll, ogni elemento di questo array è un blocchetto di 100 elementi */
|
|
95
102
|
boundSubSources: any[];
|
|
96
|
-
/** Questa funge da indicatore per gli slice inseriti, la lunghezza dovrebbe essere corrispondente a **boundSubSources** */
|
|
103
|
+
/** @deprecated Questa funge da indicatore per gli slice inseriti, la lunghezza dovrebbe essere corrispondente a **boundSubSources** */
|
|
97
104
|
addedSlices: number[];
|
|
98
105
|
/** Variabile che identifica il valore del "seleziona Tutto" nella paginazione */
|
|
99
106
|
defaultAllPageOverride: number;
|
|
@@ -107,32 +114,24 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
107
114
|
updateTimer: any;
|
|
108
115
|
/** Impostata a true ogni volta che viene avviata una ricerca, e a false ogni volta che un nuovo valore viene ricevuto */
|
|
109
116
|
researchInProgress: boolean;
|
|
117
|
+
/** Modello di appoggio temporaneo per i **RowTDs** */
|
|
118
|
+
TMPRowTDs: {
|
|
119
|
+
[context: string]: TdElement[];
|
|
120
|
+
};
|
|
110
121
|
/** Modello rappresentante un dizionario di righe della tabella, con chiave l'hash e valore la lista di celle */
|
|
111
122
|
RowTDs: {
|
|
112
123
|
[context: string]: TdElement[];
|
|
113
124
|
};
|
|
114
125
|
/** Indica se **RowTDs** è un oggetto vuoto o meno */
|
|
115
126
|
EmptyRowTds: boolean;
|
|
116
|
-
/** Modello di appoggio temporaneo per i **RowTDs** */
|
|
117
|
-
TMPRowTDs: {
|
|
118
|
-
[context: string]: TdElement[];
|
|
119
|
-
};
|
|
120
|
-
/** Modello rappresentante un singolo th della tabella, generato in base alle configurazioni e agli oggetti ricevuti */
|
|
121
|
-
RowTHs: ThElement[];
|
|
122
127
|
/** Modello di appoggio temporaneo per i **RowTHs** */
|
|
123
128
|
TMPRowTHs: ThElement[];
|
|
129
|
+
/** Modello rappresentante un singolo th della tabella, generato in base alle configurazioni e agli oggetti ricevuti */
|
|
130
|
+
RowTHs: ThElement[];
|
|
124
131
|
/** Modello di appoggio temporaneo per i **RowThGroups** */
|
|
125
|
-
TMPRowThGroups:
|
|
126
|
-
Span: number;
|
|
127
|
-
Template: TemplateRef<any>;
|
|
128
|
-
}[][];
|
|
132
|
+
TMPRowThGroups: ThGroup[][];
|
|
129
133
|
/** Modello rappresentante un singolo header group della tabella. Questa lista è già ordinata e pronta per essere utilizzata in ngFor */
|
|
130
|
-
RowThGroups:
|
|
131
|
-
Span: number;
|
|
132
|
-
Template: TemplateRef<any>;
|
|
133
|
-
}[][];
|
|
134
|
-
/** Cache per i routerLink generati nelle tabelle dinamiche */
|
|
135
|
-
DynamicTableRouterLinkCache: {};
|
|
134
|
+
RowThGroups: ThGroup[][];
|
|
136
135
|
/**
|
|
137
136
|
* Lista dei contesti. Un contesto non è altro che un hash particolare calcolato su un oggetto che identifica univocamente tale oggetto.
|
|
138
137
|
*
|
|
@@ -143,6 +142,19 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
143
142
|
OrderDirectives: string[];
|
|
144
143
|
/** Codice dell'ultimo oggetto solezionato */
|
|
145
144
|
lastSelectedItemID: any;
|
|
145
|
+
/**
|
|
146
|
+
* Decide se utilizzare o meno le CustomCells. Impostandolo a **true** l'es-table diventa in grado di gestire nativamente:
|
|
147
|
+
*
|
|
148
|
+
* 1) Ordinamento e visibilità delle colonne
|
|
149
|
+
*
|
|
150
|
+
* 2) Ordinamento dei dati
|
|
151
|
+
*
|
|
152
|
+
* 3) Modalità Gerarchica
|
|
153
|
+
*
|
|
154
|
+
* ecc...
|
|
155
|
+
* viene dedotto dal sistema in automatico
|
|
156
|
+
*/
|
|
157
|
+
UseCustomCells: boolean;
|
|
146
158
|
/**
|
|
147
159
|
* Indica se oltre alle colonne dinamiche specifiche di un tipo di oggetto ci sono anche colonne dinamiche aggiunte dall'utente
|
|
148
160
|
*
|
|
@@ -169,11 +181,11 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
169
181
|
bodyRef: any;
|
|
170
182
|
/** Query per recuperare le informazioni dell'header (punto della tabella dove vengono mostrate le intestazioni delle righe) */
|
|
171
183
|
headerRef: any;
|
|
172
|
-
/** Query per recuperare le informazioni sul raggruppamento degli header */
|
|
184
|
+
/** @deprecated Query per recuperare le informazioni sul raggruppamento degli header */
|
|
173
185
|
headerGroupRef: any;
|
|
174
|
-
/** Query per recuperare le informazioni sul raggruppamento di secondo livello degli header */
|
|
186
|
+
/** @deprecated Query per recuperare le informazioni sul raggruppamento di secondo livello degli header */
|
|
175
187
|
secondaryHeaderGroupRef: any;
|
|
176
|
-
/** Query per recuperare il campo di Input attuale. Dopo un doppio click lo becco e lo focusso appena termina la
|
|
188
|
+
/** Query per recuperare il campo di Input attuale. Dopo un doppio click lo becco e lo focusso appena termina la change detection */
|
|
177
189
|
inputField: ElementRef;
|
|
178
190
|
/** Opzioni extra che devono apparire nel Menù contestuale in alto a destra, richiamato dai 3 pallini verticali */
|
|
179
191
|
CornerMenuOptions: CornerMenuOption[];
|
|
@@ -187,24 +199,8 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
187
199
|
Height: string;
|
|
188
200
|
/** Indica il colore di sfondo dello spazio vuoto (non ricoperto da dati). Particolarmente utile da impostare in caso di **Height** diverso da null */
|
|
189
201
|
EmptySpaceBackgroundColor: string;
|
|
190
|
-
/**
|
|
191
|
-
* @experimental Indica se dev'essere l'estable a gestire la ricerca, anche la prima.
|
|
192
|
-
*
|
|
193
|
-
* **ATTENZIONE: RICHIEDE MODIFICHE NON TRIVIALI ALLA PAGINA DI RICERCA CHE UTILIZZA QUESTO TIPO DI ES-TABLE. NON UTILIZZARE SE NON SI SA CIO' CHE SI STA FACENDO**
|
|
194
|
-
**/
|
|
202
|
+
/** Indica se dev'essere l'estable a gestire la ricerca, anche la prima. **/
|
|
195
203
|
EsTableHandledSearch: boolean;
|
|
196
|
-
/**
|
|
197
|
-
* Decide se utilizzare o meno le CustomCells. Impostandolo a **true** l'es-table diventa in grado di gestire nativamente:
|
|
198
|
-
*
|
|
199
|
-
* 1) Ordinamento e visibilità delle colonne
|
|
200
|
-
*
|
|
201
|
-
* 2) Ordinamento dei dati
|
|
202
|
-
*
|
|
203
|
-
* 3) Modalità Gerarchica
|
|
204
|
-
*
|
|
205
|
-
* ecc...
|
|
206
|
-
*/
|
|
207
|
-
UseCustomCells: boolean;
|
|
208
204
|
/** Permette di impostare l'altezza massima della tabella. Se null la dimensione si adatta al numero di elementi attualmente in visualizzazione */
|
|
209
205
|
MaxHeight: number;
|
|
210
206
|
/** Classi da applicare al contenitore della tabella */
|
|
@@ -255,9 +251,9 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
255
251
|
ExportFunction: any;
|
|
256
252
|
/** Indica di esportare solo le colonne attualmente visibili della view */
|
|
257
253
|
ExportOnlyVisibleColumns: boolean;
|
|
258
|
-
/** Indica la presenza di raggruppamenti a livello di header */
|
|
254
|
+
/** @deprecated Indica la presenza di raggruppamenti a livello di header */
|
|
259
255
|
HasHeaderGroup: boolean;
|
|
260
|
-
/** Indica la presenza di raggruppamenti a livello del raggruppamento precedentemente esistente, chiaramente è insensata senza **HasHeaderGroup** */
|
|
256
|
+
/** @deprecated Indica la presenza di raggruppamenti a livello del raggruppamento precedentemente esistente, chiaramente è insensata senza **HasHeaderGroup** */
|
|
261
257
|
HasSecondaryHeaderGroup: boolean;
|
|
262
258
|
/** Indica se nascondere gli Header della tabella */
|
|
263
259
|
HeaderHidden: boolean;
|
|
@@ -283,7 +279,7 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
283
279
|
HiddenColumns: boolean;
|
|
284
280
|
/** Permette di riordinare le colonne in base alle impostazioni effettuate dal Menù contestuale in alto a destra */
|
|
285
281
|
ColumnsOrdering: boolean;
|
|
286
|
-
/** Eventuale supporto alle ricerche applicate alla modalità Array */
|
|
282
|
+
/** @deprecated Eventuale supporto alle ricerche applicate alla modalità Array */
|
|
287
283
|
SearchView: AppSearch<any>;
|
|
288
284
|
/** Abilita o disabilita il sistema che permette di selezionare tutti gli elementi nella vista */
|
|
289
285
|
SelectAll: boolean;
|
|
@@ -440,17 +436,7 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
440
436
|
**/
|
|
441
437
|
useLocalVisibility: boolean;
|
|
442
438
|
/** Opzioni di paginazione */
|
|
443
|
-
PagerOptions:
|
|
444
|
-
PagerCount: number;
|
|
445
|
-
ShowCount: boolean;
|
|
446
|
-
ShowPaging: boolean;
|
|
447
|
-
UsesView: boolean;
|
|
448
|
-
ShowButtons: boolean;
|
|
449
|
-
ShowPagingOptions: boolean;
|
|
450
|
-
View: any;
|
|
451
|
-
Ready: boolean;
|
|
452
|
-
Searches: 'items' | 'groups';
|
|
453
|
-
};
|
|
439
|
+
PagerOptions: PagerInfos;
|
|
454
440
|
/** @ignore */
|
|
455
441
|
ngOnInit(): void;
|
|
456
442
|
/** @ignore */
|
|
@@ -470,7 +456,15 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
470
456
|
/** @ignore */
|
|
471
457
|
writeValue(obj: any, throttle?: boolean): Promise<void>;
|
|
472
458
|
/** Funzione di trackby per il body che dovrebbe evitare il 90% delle change detection */
|
|
473
|
-
bodyTrackBy: (
|
|
459
|
+
bodyTrackBy: (_: number, item: any) => any;
|
|
460
|
+
/** Funzione di trackby generica per tutti gli oggetti che hanno il campo id */
|
|
461
|
+
idTrackBy: (_: number, item: any) => any;
|
|
462
|
+
/** Funzione di trackby generica per tutti gli oggetti che hanno il campo PropertyName */
|
|
463
|
+
PropertyNameTrackBy: (_: number, item: any) => any;
|
|
464
|
+
/** Funzione di trackby generica per tutti gli oggetti che hanno il campo ID */
|
|
465
|
+
IDTrackBy: (_: number, item: any) => any;
|
|
466
|
+
/** Funzione di trackby generica per tutti gli oggetti che hanno il campo ID */
|
|
467
|
+
valTrackBy: (_: number, item: any) => any;
|
|
474
468
|
/**
|
|
475
469
|
* Successivamente al bind del nuovo input questa funzione si occupa di finalizzare tutti i parametri di funzionamento dell'es-table
|
|
476
470
|
* in base a Input - Modello, e qualsiasi altra cosa possa servire
|
|
@@ -675,9 +669,8 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
675
669
|
* @param {any} $event Evento nativo javascript
|
|
676
670
|
* @param {TdElement} rowItem Riferimento a binder della riga
|
|
677
671
|
* @param {any} item Item che rappresenta il contesto su cui è stato effettuato un click
|
|
678
|
-
* @param {number} rowIndex Indice della riga
|
|
679
672
|
*/
|
|
680
|
-
dbClickEditOrSingleClickRowSelection($event:
|
|
673
|
+
dbClickEditOrSingleClickRowSelection($event: MouseEvent, rowItem: TdElement, item: any): void;
|
|
681
674
|
/** Evento che gestisce il comando "Copia" buttando i valori selezionati nella clipboard in base al loro tipo */
|
|
682
675
|
private handleCopy;
|
|
683
676
|
/** Evento che gestisce il comando "Incolla" prendendo i dati della clipboard e applicandoli al range di selezione attuale in base al tipo delle celle sotto */
|
|
@@ -715,10 +708,12 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
|
|
|
715
708
|
*/
|
|
716
709
|
finalizeUserEdit(rowItem: TdElement, item: any, columnIndex: number): void;
|
|
717
710
|
private mouseIsDown;
|
|
711
|
+
private rangeSelected;
|
|
712
|
+
private rangeStartWasIgnored;
|
|
718
713
|
private firstCoordinates;
|
|
719
|
-
mousedown(event: MouseEvent, rowItem: any,
|
|
714
|
+
mousedown(event: MouseEvent, rowItem: any, _: any): void;
|
|
720
715
|
mouseenter(event: MouseEvent): void;
|
|
721
|
-
mouseup(event:
|
|
716
|
+
mouseup(event: MouseEvent): void;
|
|
722
717
|
private EsTdsCache;
|
|
723
718
|
getCellReference(object: any, column: string): EsTd;
|
|
724
719
|
registerCell(event: EsTdReference): void;
|
|
@@ -1,25 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
|
|
1
|
+
import { EventEmitter, ChangeDetectorRef } from "@angular/core";
|
|
3
2
|
/** Componente rappresentante una singola cella del body della tabella */
|
|
4
3
|
export declare class EsTd {
|
|
5
4
|
private cdr;
|
|
6
|
-
private myself;
|
|
7
|
-
private renderer;
|
|
8
|
-
protected sanitizer: DomSanitizer;
|
|
9
5
|
/** Id della cella, dev'essere lo stesso della colonna **EsTh** relativa */
|
|
10
6
|
ID: string;
|
|
11
|
-
/** Indica se è una cella interna (rigenerata programmaticamente) o no */
|
|
12
|
-
Internal?: boolean;
|
|
13
|
-
/** RouterLink qualora il click su questa cella debba navigare da qualche parte */
|
|
14
|
-
RouterLink?: any;
|
|
15
|
-
/** Valore da mostrare all'interno della cella. Se omesso verrà proiettato il contenuto dal template in cui è stata usata */
|
|
16
|
-
Display?: string;
|
|
17
|
-
/** Template Angular da istanziare per questo TD */
|
|
18
|
-
Template?: any;
|
|
19
|
-
/** Classi da applicare alla cella */
|
|
20
|
-
Class?: string;
|
|
21
|
-
/** Contenuto da mostrare proiettato dal componente padre */
|
|
22
|
-
Content?: SafeHtml;
|
|
23
7
|
/** Contesto dell'oggetto a cui si riferisce il dato visualizzato. Contiene l'hash dell'oggetto in questione */
|
|
24
8
|
Context: string;
|
|
25
9
|
/** Quando questa cella viene generata questo evento permette di dire "ehi, sono nato!" */
|
|
@@ -28,24 +12,12 @@ export declare class EsTd {
|
|
|
28
12
|
hash: string;
|
|
29
13
|
self: EsTd;
|
|
30
14
|
}>;
|
|
31
|
-
/**
|
|
32
|
-
|
|
15
|
+
/** Errore attualmente presente sulla cella */
|
|
16
|
+
ValidationError: string;
|
|
33
17
|
/** @ignore */
|
|
34
|
-
constructor(cdr: ChangeDetectorRef
|
|
35
|
-
/**
|
|
36
|
-
* Imposta la visibilità o meno della cella, si traduce nell'applicazione o rimozione della classe **app-display-none**
|
|
37
|
-
*
|
|
38
|
-
* @param {boolean} expression Indicazione della visibilità
|
|
39
|
-
*/
|
|
40
|
-
set Visible(expression: boolean);
|
|
41
|
-
/**
|
|
42
|
-
* Restituisce lo stato di Visibilità della cella in oggetto
|
|
43
|
-
*
|
|
44
|
-
* @returns {boolean} **true** se visibile, **false** altrimenti
|
|
45
|
-
*/
|
|
46
|
-
get Visible(): boolean;
|
|
18
|
+
constructor(cdr: ChangeDetectorRef);
|
|
47
19
|
/** @ignore */
|
|
48
20
|
ngAfterViewInit(): void;
|
|
49
|
-
|
|
50
|
-
validationError(
|
|
21
|
+
/** Api per impostare un "errore" su questa cella in maniera programmatica */
|
|
22
|
+
validationError(error?: string): void;
|
|
51
23
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { PipeTransform, QueryList } from "@angular/core";
|
|
2
|
+
import { Logger } from "../../core/Logger";
|
|
3
|
+
import { EsTdDirective } from "../../directives/es_td.directive";
|
|
4
|
+
export declare class EstRendererPipe implements PipeTransform {
|
|
5
|
+
private logger;
|
|
6
|
+
constructor(logger: Logger);
|
|
7
|
+
transform(propName: string, params: {
|
|
8
|
+
name: string;
|
|
9
|
+
src: QueryList<EsTdDirective>;
|
|
10
|
+
fallback: any;
|
|
11
|
+
}): any;
|
|
12
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { PipeTransform } from "@angular/core";
|
|
2
|
+
export declare class EstRouterLinkPipe implements PipeTransform {
|
|
3
|
+
/** Cache per i routerLink generati nelle tabelle dinamiche */
|
|
4
|
+
routerLinksCache: {};
|
|
5
|
+
transform(item: any, path: string, parameters: string[]): any;
|
|
6
|
+
/**
|
|
7
|
+
* Crea un router link
|
|
8
|
+
*
|
|
9
|
+
* @param {string} path Path su cui navigare con eventuali parametri riferiti all'oggetto cotnestuale come {0}, {1}, ecc...
|
|
10
|
+
* @param {string[]} pars Lista posizionale delle proprietà a cui bindare i riferimenti del parametro **path**
|
|
11
|
+
* Es. Il valore dela proprietà all'indice 0 di questo array verrà sostituita al valore {0} del parametro **path**
|
|
12
|
+
* @param {any} item Oggetto collegato a questo contesto. Può essere un oggetto generico (con "properties") o un oggetto ben definito
|
|
13
|
+
*
|
|
14
|
+
* @returns {any} Router link generato in base al parametri
|
|
15
|
+
*/
|
|
16
|
+
private getRouterLink;
|
|
17
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { PipeTransform, QueryList } from "@angular/core";
|
|
2
|
+
import { Logger } from "../../core/Logger";
|
|
3
|
+
import { EsTdEditorDirective } from "../../directives/es_td_editor.directive";
|
|
4
|
+
export declare class EstEditorPipe implements PipeTransform {
|
|
5
|
+
private logger;
|
|
6
|
+
constructor(logger: Logger);
|
|
7
|
+
transform(propName: string, params: {
|
|
8
|
+
name: string;
|
|
9
|
+
src: QueryList<EsTdEditorDirective>;
|
|
10
|
+
fallback: any;
|
|
11
|
+
}): any;
|
|
12
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Classe che fornisce dei metodi di estensione in grado di riconoscere e dispatchare l'evento copia e incolla lanciato su una pagina web */
|
|
2
|
+
export declare class Logger {
|
|
3
|
+
debugMode: boolean;
|
|
4
|
+
/** @ignore */
|
|
5
|
+
constructor(debugMode: boolean);
|
|
6
|
+
log(text: string): void;
|
|
7
|
+
}
|
|
@@ -1,32 +1,20 @@
|
|
|
1
1
|
import { EsTableComponent } from "../../components/es-table/es_table.component";
|
|
2
|
-
import {
|
|
2
|
+
import { EsTdDirective } from "../../directives/es_td.directive";
|
|
3
|
+
import { EsThDirective } from "../../directives/es_th.directive";
|
|
3
4
|
/** Classe contenente le gestioni particolari della modalità dinamica dell'es-table */
|
|
4
5
|
export declare class DynamicModeHandler {
|
|
5
6
|
private est;
|
|
6
7
|
/** @ignore Costruttore*/
|
|
7
8
|
constructor(est: EsTableComponent);
|
|
8
|
-
/**
|
|
9
|
-
* Metodo di supporto alla creazione di un router link parametrizzato all'oggetto corrente utilizzato nella modalità dinamica
|
|
10
|
-
*
|
|
11
|
-
* @param {string} path Path su cui navigare con eventuali parametri riferiti all'oggetto cotnestuale come {0}, {1}, ecc...
|
|
12
|
-
* @param {string[]} parameterProps Lista posizionale delle proprietà a cui bindare i riferimenti del parametro **path**
|
|
13
|
-
* Es. Il valore dela proprietà all'indice 0 di questo array verrà sostituita al valore {0} del parametro **path**
|
|
14
|
-
* @param {GenericItem} item Oggetto generico collegato a questo contesto
|
|
15
|
-
*
|
|
16
|
-
* @returns {any} Router link generato in base al parametri
|
|
17
|
-
*/
|
|
18
|
-
generateRouterLink(path: string, parameterProps: string[], item: GenericItem): any;
|
|
19
|
-
/**
|
|
20
|
-
* Crea un router link
|
|
21
|
-
*
|
|
22
|
-
* @param {string} path Path su cui navigare con eventuali parametri riferiti all'oggetto cotnestuale come {0}, {1}, ecc...
|
|
23
|
-
* @param {string[]} pars Lista posizionale delle proprietà a cui bindare i riferimenti del parametro **path**
|
|
24
|
-
* Es. Il valore dela proprietà all'indice 0 di questo array verrà sostituita al valore {0} del parametro **path**
|
|
25
|
-
* @param {GenericItem} item Oggetto generico collegato a questo contesto
|
|
26
|
-
*
|
|
27
|
-
* @returns {any} Router link generato in base al parametri
|
|
28
|
-
*/
|
|
29
|
-
private getRouterLink;
|
|
30
9
|
/** Se non ho l'Input **DynamicRowColumnsDefinition** in modalità dinamica lo riempio con il default nome della colonna = testo della colonna */
|
|
31
10
|
eventuallyReviewDynamicColumns(): void;
|
|
11
|
+
/** Genera partendo dalle **DynamicRowColumnsDefinition** la lista di **EsThDirective** e **EsTdDirective** che servono per la tabella */
|
|
12
|
+
emitThsAndTdsBasedOnDynamicDefinition(): {
|
|
13
|
+
ths: EsThDirective[];
|
|
14
|
+
tds: EsTdDirective[];
|
|
15
|
+
};
|
|
16
|
+
/** @ignore Helper */
|
|
17
|
+
private getTh;
|
|
18
|
+
/** @ignore Helper */
|
|
19
|
+
private getTd;
|
|
32
20
|
}
|
|
@@ -175,7 +175,17 @@ export declare class SelectionHandler {
|
|
|
175
175
|
* @param {number} column Indice della colonna preso banalmente dall'ngIf sui thElement
|
|
176
176
|
* @param {{ row: number, column: number }} firstSelectionOverride Permette di overridare il primo elemento selezionato
|
|
177
177
|
*/
|
|
178
|
-
singleCellSelection(event:
|
|
178
|
+
singleCellSelection(event: {
|
|
179
|
+
view: any;
|
|
180
|
+
range: boolean;
|
|
181
|
+
}, row: number, column: number, firstSelectionOverride?: {
|
|
182
|
+
row: number;
|
|
183
|
+
column: number;
|
|
184
|
+
}): void;
|
|
185
|
+
setSelectionStatusBorders(from: {
|
|
186
|
+
row: number;
|
|
187
|
+
column: number;
|
|
188
|
+
}, to: {
|
|
179
189
|
row: number;
|
|
180
190
|
column: number;
|
|
181
191
|
}): void;
|
|
@@ -184,7 +194,7 @@ export declare class SelectionHandler {
|
|
|
184
194
|
*
|
|
185
195
|
* @param {{row: number, column: number}} exclusion Coordinata da escludere nella pulizia
|
|
186
196
|
*/
|
|
187
|
-
|
|
197
|
+
clearSelectionStatusExcluding(exclusion?: {
|
|
188
198
|
row: number;
|
|
189
199
|
column: number;
|
|
190
200
|
}): void;
|
|
@@ -199,7 +209,10 @@ export declare class SelectionHandler {
|
|
|
199
209
|
*
|
|
200
210
|
* @param {any} event Evento nativo Javascript
|
|
201
211
|
*/
|
|
202
|
-
clearTextSelection(event:
|
|
212
|
+
clearTextSelection(event: {
|
|
213
|
+
view: any;
|
|
214
|
+
range: boolean;
|
|
215
|
+
}): boolean;
|
|
203
216
|
/**
|
|
204
217
|
* Data la matrice di selezione generata dal metodo **getSelectionStatusSelection** genera la strigna vera e propria da copiare nella Clipboard
|
|
205
218
|
*
|
|
@@ -33,7 +33,10 @@ export declare class UtilitiesHandler {
|
|
|
33
33
|
*
|
|
34
34
|
* @returns {any[]} Pseudo-array di pulsanti a cui ci si può bindare lato HTML
|
|
35
35
|
*/
|
|
36
|
-
getPagesArray(maxBtns: number, page: number, lastPage: number, actualCount?: number, ipp?: number):
|
|
36
|
+
getPagesArray(maxBtns: number, page: number, lastPage: number, actualCount?: number, ipp?: number): {
|
|
37
|
+
val: number;
|
|
38
|
+
cssClass: string;
|
|
39
|
+
}[];
|
|
37
40
|
/**
|
|
38
41
|
* Calcola l'hash di un oggetto qualsiasi
|
|
39
42
|
*
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { TemplateRef } from "@angular/core";
|
|
2
|
+
import { AvailableOptions } from "@esfaenza/forms-and-validations";
|
|
2
3
|
import { ThAggregation } from "../domain/internals/ThAggregation";
|
|
3
4
|
import { InputType } from "../domain/types";
|
|
4
5
|
/** Direttiva per la dichiarazione snella di un EsTh da emettere come header */
|
|
@@ -8,6 +9,7 @@ export declare class EsThDirective {
|
|
|
8
9
|
_thAggregations: ThAggregation[];
|
|
9
10
|
/** Variabile interna contenente in maniera ordinata i template dei padri */
|
|
10
11
|
_thParents: {
|
|
12
|
+
id: string;
|
|
11
13
|
tmpl?: TemplateRef<any>;
|
|
12
14
|
content?: string;
|
|
13
15
|
}[];
|
|
@@ -72,6 +74,29 @@ export declare class EsThDirective {
|
|
|
72
74
|
thAlignment: "Center" | "Left" | "Right";
|
|
73
75
|
/** Formato da applicare al valore se applicabile */
|
|
74
76
|
thFormat: string;
|
|
77
|
+
/** Nome dell'editor da utilizzare per la modifica di questo campo, ordine di priorità:
|
|
78
|
+
*
|
|
79
|
+
* 1. Editor con nome **thEditorName**
|
|
80
|
+
*
|
|
81
|
+
* 2. Editor riferito alla proprietà **thProperty**
|
|
82
|
+
*
|
|
83
|
+
* 3. Editor di default per **thType**
|
|
84
|
+
*/
|
|
85
|
+
thEditorName: string;
|
|
86
|
+
/** Opzioni da applicare all'editor di questa colonna */
|
|
87
|
+
thEditorOptions: {
|
|
88
|
+
[id in AvailableOptions]?: any;
|
|
89
|
+
};
|
|
90
|
+
/** Nome del renderer da utilizzare per visualizzare questo campo. Utilizzato solo per le tabelle dinamiche */
|
|
91
|
+
thRendererName: string;
|
|
92
|
+
/** Route di navigazione. Es. "['/pages/mod/mod_detail', { 'idItem': '{0}', 'idItem2' : '{1}' }]" */
|
|
93
|
+
thRoutePath: string;
|
|
94
|
+
/**
|
|
95
|
+
* Proprietà da bindare a **routePath** per generare la route completa.
|
|
96
|
+
*
|
|
97
|
+
* L'indice scritto in **routePath** è l'indice di accesso a questo array. Es. ["idItem", "idItem2"]
|
|
98
|
+
*/
|
|
99
|
+
thRouteParameterProperties: string[];
|
|
75
100
|
/** @ignore */
|
|
76
101
|
constructor(Template: TemplateRef<any>);
|
|
77
102
|
}
|
|
@@ -23,13 +23,9 @@ export declare class EsTableColumnsDefinition {
|
|
|
23
23
|
[id in AvailableOptions]?: any;
|
|
24
24
|
};
|
|
25
25
|
Pinned: boolean;
|
|
26
|
+
PinnedWidth: number;
|
|
27
|
+
Pinnable: boolean;
|
|
26
28
|
Grouping: string;
|
|
27
|
-
edits: {
|
|
28
|
-
[index: string]: {
|
|
29
|
-
_editing: boolean;
|
|
30
|
-
old_value: string;
|
|
31
|
-
};
|
|
32
|
-
};
|
|
33
29
|
/**
|
|
34
30
|
* Costruttore
|
|
35
31
|
*
|
|
@@ -54,8 +50,6 @@ export declare class EsTableColumnsDefinition {
|
|
|
54
50
|
description: string;
|
|
55
51
|
}[], EditorName?: string, RendererName?: string, EditorOptions?: {
|
|
56
52
|
[id in AvailableOptions]?: any;
|
|
57
|
-
}, Pinned?: boolean, Grouping?: string);
|
|
53
|
+
}, Pinned?: boolean, PinnedWidth?: number, Pinnable?: boolean, Grouping?: string);
|
|
58
54
|
static build(parsObj: any): EsTableColumnsDefinition;
|
|
59
|
-
/** Routerlink che verrà generato a runtime basandosi sulle informazioni di **routePath** e **routeParameterProperties** */
|
|
60
|
-
routerLink: any;
|
|
61
55
|
}
|
|
@@ -25,6 +25,10 @@ export declare class ItemPropEditableReference {
|
|
|
25
25
|
loverlaps?: boolean;
|
|
26
26
|
/** Indica se il bordo a destra overlappa su un bordo di selezione sinistro della cella successiva */
|
|
27
27
|
roverlaps?: boolean;
|
|
28
|
+
/** Indica se il bordo in alto overlappa su un bordo di selezione basso della cella precedente */
|
|
29
|
+
toverlaps?: boolean;
|
|
30
|
+
/** Indica se il bordo in basso overlappa su un bordo di selezione in alto della cella successiva */
|
|
31
|
+
boverlaps?: boolean;
|
|
28
32
|
/** Funzione che imposta il nuovo valore della proprietà **property** dell'oggetto **item** ed aggiorna il **value** di questo oggetto */
|
|
29
33
|
val_setter?: (value: string) => any;
|
|
30
34
|
}
|
|
@@ -10,6 +10,7 @@ export declare class EsTableColumn {
|
|
|
10
10
|
pinnedWidth?: number;
|
|
11
11
|
template?: TemplateRef<any>;
|
|
12
12
|
parentTemplates?: {
|
|
13
|
+
id: string;
|
|
13
14
|
tmpl?: TemplateRef<any>;
|
|
14
15
|
content?: string;
|
|
15
16
|
}[];
|
|
@@ -26,11 +27,12 @@ export declare class EsTableColumn {
|
|
|
26
27
|
* @param {boolean} pinned Indica se è una colonna pinnata
|
|
27
28
|
* @param {number} pinnedWidth Indica la dimensione da assegnare a questa colonna quando è pinnata
|
|
28
29
|
* @param {TemplateRef<any>} template Indica il template da usare per mostrare il testo dell'Header
|
|
29
|
-
* @param {{ tmpl: TemplateRef<any>, content: string }[]} parentTemplates Indica la lista di template padri collegata a questo header, rappresentati come Template o come stringa qualora fosse generato automaticamente (caso **Multi**)
|
|
30
|
+
* @param {{ id: string, tmpl: TemplateRef<any>, content: string }[]} parentTemplates Indica la lista di template padri collegata a questo header, rappresentati come Template o come stringa qualora fosse generato automaticamente (caso **Multi**)
|
|
30
31
|
* @param {boolean} multi Indica che la colonna deriva da una direttiva **Multi**
|
|
31
32
|
* @param {string} multiContent Indica il contenuto della direttiva **Multi** per questa colonna
|
|
32
33
|
*/
|
|
33
34
|
constructor(id: string, description: string, visible?: boolean, fixed?: boolean, pinned?: boolean, pinnable?: boolean, pinnedWidth?: number, template?: TemplateRef<any>, parentTemplates?: {
|
|
35
|
+
id: string;
|
|
34
36
|
tmpl?: TemplateRef<any>;
|
|
35
37
|
content?: string;
|
|
36
38
|
}[], multi?: boolean, multiContent?: string);
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/** Classe che rappresenta le informazioni di paginazione della tabella attuale */
|
|
2
|
+
export declare class PagerInfos {
|
|
3
|
+
constructor();
|
|
4
|
+
PagerCount: number;
|
|
5
|
+
ShowCount: boolean;
|
|
6
|
+
ShowPaging: boolean;
|
|
7
|
+
UsesView: boolean;
|
|
8
|
+
ShowButtons: boolean;
|
|
9
|
+
ShowPagingOptions: boolean;
|
|
10
|
+
View: any;
|
|
11
|
+
Ready: boolean;
|
|
12
|
+
Searches: 'items' | 'groups';
|
|
13
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { TemplateRef } from "@angular/core";
|
|
2
|
+
/** Interfaccia che indica un Header rappresentanto un gruppo */
|
|
3
|
+
export interface ThGroup {
|
|
4
|
+
/** Codice autogenerato essenzialmente per gli ngFor - trackBy */
|
|
5
|
+
ID: string;
|
|
6
|
+
/** Span di questo gruppo */
|
|
7
|
+
Span: number;
|
|
8
|
+
/** Template da visualizzare dentro al gruppo */
|
|
9
|
+
Template: TemplateRef<any>;
|
|
10
|
+
}
|