@esfaenza/es-table 16.2.28 → 17.3.0
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/esm2022/esfaenza-es-table.mjs +4 -4
- package/esm2022/lib/components/es-table/es_table.component.loc.mjs +38 -38
- package/esm2022/lib/components/es-table/es_table.component.mjs +1891 -1891
- package/esm2022/lib/components/es-td/es_td.component.mjs +40 -40
- package/esm2022/lib/components/es-th/es_th.component.mjs +176 -176
- package/esm2022/lib/components/pager/table_pager.component.loc.mjs +20 -20
- package/esm2022/lib/components/pager/table_pager.component.mjs +111 -111
- package/esm2022/lib/components/pipes/est-format.pipe.mjs +44 -44
- package/esm2022/lib/components/pipes/est-lookup.pipe.mjs +19 -19
- package/esm2022/lib/components/pipes/est-propinsensitive.pipe.mjs +19 -19
- package/esm2022/lib/components/pipes/est-renderer.pipe.mjs +36 -36
- package/esm2022/lib/components/pipes/est-routerlink.pipe.mjs +41 -41
- package/esm2022/lib/components/pipes/est_editor.pipe.mjs +36 -36
- package/esm2022/lib/core/CopyPasteDetector.mjs +27 -27
- package/esm2022/lib/core/Logger.mjs +25 -25
- package/esm2022/lib/core/handlers/ColumnMetadataHandler.mjs +835 -835
- package/esm2022/lib/core/handlers/DynamicModeHandler.mjs +109 -109
- package/esm2022/lib/core/handlers/ExportHandler.mjs +32 -32
- package/esm2022/lib/core/handlers/HierarchyModeHandler.mjs +136 -136
- package/esm2022/lib/core/handlers/ItemsHandler.mjs +119 -119
- package/esm2022/lib/core/handlers/ReportModeHandler.mjs +60 -60
- package/esm2022/lib/core/handlers/RowGroupingHandler.mjs +480 -480
- package/esm2022/lib/core/handlers/SelectionHandler.mjs +778 -778
- package/esm2022/lib/core/handlers/UtilitiesHandler.mjs +151 -151
- package/esm2022/lib/directives/es_td.directive.mjs +54 -54
- package/esm2022/lib/directives/es_td_editor.directive.mjs +24 -24
- package/esm2022/lib/directives/es_th.directive.mjs +130 -130
- package/esm2022/lib/directives/es_th_td_provider.directive.mjs +34 -34
- package/esm2022/lib/domain/configuration/EsTableDefaultable.mjs +3 -3
- package/esm2022/lib/domain/configuration/EsTableModuleConfig.mjs +3 -3
- package/esm2022/lib/domain/externals/CornerMenuOption.mjs +3 -3
- package/esm2022/lib/domain/externals/EsTableColumnsDefinition.mjs +47 -47
- package/esm2022/lib/domain/externals/EsTableModelChange.mjs +18 -18
- package/esm2022/lib/domain/externals/EsTableOperationDefinition.mjs +21 -21
- package/esm2022/lib/domain/externals/ItemPropEditableReference.mjs +3 -3
- package/esm2022/lib/domain/externals/appsearch/AppOrdering.mjs +15 -15
- package/esm2022/lib/domain/externals/appsearch/AppSearch.mjs +65 -65
- package/esm2022/lib/domain/externals/appsearch/EsTableMultiValue.mjs +24 -24
- package/esm2022/lib/domain/externals/appsearch/GenericItem.mjs +10 -10
- package/esm2022/lib/domain/externals/appsearch/Group.mjs +16 -16
- package/esm2022/lib/domain/externals/appsearch/GroupAggregation.mjs +15 -15
- package/esm2022/lib/domain/externals/appsearch/GroupFilter.mjs +13 -13
- package/esm2022/lib/domain/externals/appsearch/GroupOrAggregation.mjs +15 -15
- package/esm2022/lib/domain/externals/appsearch/ItemsSelection.mjs +22 -22
- package/esm2022/lib/domain/externals/report/ReportColumn.mjs +3 -3
- package/esm2022/lib/domain/externals/report/ReportParam.mjs +3 -3
- package/esm2022/lib/domain/externals/report/ReportRow.mjs +3 -3
- package/esm2022/lib/domain/internals/CacheTriptic.mjs +15 -15
- package/esm2022/lib/domain/internals/EsTableColumn.mjs +31 -31
- package/esm2022/lib/domain/internals/GroupPager.mjs +22 -22
- package/esm2022/lib/domain/internals/GroupRouteFragment.mjs +16 -16
- package/esm2022/lib/domain/internals/PagerInfos.mjs +14 -14
- package/esm2022/lib/domain/internals/TdElement.mjs +1 -1
- package/esm2022/lib/domain/internals/ThAggregation.mjs +15 -15
- package/esm2022/lib/domain/internals/ThElement.mjs +1 -1
- package/esm2022/lib/domain/internals/ThGroup.mjs +1 -1
- package/esm2022/lib/domain/types.mjs +1 -1
- package/esm2022/lib/es-table.module.mjs +124 -124
- package/esm2022/lib/tokens.mjs +5 -5
- package/esm2022/public-api.mjs +27 -27
- package/fesm2022/esfaenza-es-table.mjs +5771 -5771
- package/fesm2022/esfaenza-es-table.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/components/es-table/es_table.component.d.ts +738 -738
- package/lib/components/es-table/es_table.component.loc.d.ts +10 -10
- package/lib/components/es-td/es_td.component.d.ts +26 -26
- package/lib/components/es-th/es_th.component.d.ts +92 -92
- package/lib/components/pager/table_pager.component.d.ts +56 -56
- package/lib/components/pager/table_pager.component.loc.d.ts +10 -10
- package/lib/components/pipes/est-format.pipe.d.ts +10 -10
- package/lib/components/pipes/est-lookup.pipe.d.ts +13 -13
- package/lib/components/pipes/est-propinsensitive.pipe.d.ts +7 -7
- package/lib/components/pipes/est-renderer.pipe.d.ts +15 -15
- package/lib/components/pipes/est-routerlink.pipe.d.ts +20 -20
- package/lib/components/pipes/est_editor.pipe.d.ts +15 -15
- package/lib/core/CopyPasteDetector.d.ts +15 -15
- package/lib/core/Logger.d.ts +10 -10
- package/lib/core/handlers/ColumnMetadataHandler.d.ts +189 -189
- package/lib/core/handlers/DynamicModeHandler.d.ts +22 -22
- package/lib/core/handlers/ExportHandler.d.ts +18 -18
- package/lib/core/handlers/HierarchyModeHandler.d.ts +40 -40
- package/lib/core/handlers/ItemsHandler.d.ts +35 -35
- package/lib/core/handlers/ReportModeHandler.d.ts +27 -27
- package/lib/core/handlers/RowGroupingHandler.d.ts +118 -118
- package/lib/core/handlers/SelectionHandler.d.ts +230 -230
- package/lib/core/handlers/UtilitiesHandler.d.ts +57 -57
- package/lib/directives/es_td.directive.d.ts +42 -42
- package/lib/directives/es_td_editor.directive.d.ts +14 -14
- package/lib/directives/es_th.directive.d.ts +107 -107
- package/lib/directives/es_th_td_provider.directive.d.ts +15 -15
- package/lib/domain/configuration/EsTableDefaultable.d.ts +21 -21
- package/lib/domain/configuration/EsTableModuleConfig.d.ts +8 -8
- package/lib/domain/externals/CornerMenuOption.d.ts +7 -7
- package/lib/domain/externals/EsTableColumnsDefinition.d.ts +56 -56
- package/lib/domain/externals/EsTableModelChange.d.ts +17 -17
- package/lib/domain/externals/EsTableOperationDefinition.d.ts +20 -20
- package/lib/domain/externals/ItemPropEditableReference.d.ts +34 -34
- package/lib/domain/externals/appsearch/AppOrdering.d.ts +14 -14
- package/lib/domain/externals/appsearch/AppSearch.d.ts +100 -100
- package/lib/domain/externals/appsearch/EsTableMultiValue.d.ts +22 -22
- package/lib/domain/externals/appsearch/GenericItem.d.ts +13 -13
- package/lib/domain/externals/appsearch/Group.d.ts +17 -17
- package/lib/domain/externals/appsearch/GroupAggregation.d.ts +14 -14
- package/lib/domain/externals/appsearch/GroupFilter.d.ts +12 -12
- package/lib/domain/externals/appsearch/GroupOrAggregation.d.ts +14 -14
- package/lib/domain/externals/appsearch/ItemsSelection.d.ts +22 -22
- package/lib/domain/externals/report/ReportColumn.d.ts +19 -19
- package/lib/domain/externals/report/ReportParam.d.ts +40 -40
- package/lib/domain/externals/report/ReportRow.d.ts +9 -9
- package/lib/domain/internals/CacheTriptic.d.ts +14 -14
- package/lib/domain/internals/EsTableColumn.d.ts +41 -41
- package/lib/domain/internals/GroupPager.d.ts +26 -26
- package/lib/domain/internals/GroupRouteFragment.d.ts +15 -15
- package/lib/domain/internals/PagerInfos.d.ts +13 -13
- package/lib/domain/internals/TdElement.d.ts +57 -57
- package/lib/domain/internals/ThAggregation.d.ts +14 -14
- package/lib/domain/internals/ThElement.d.ts +24 -24
- package/lib/domain/internals/ThGroup.d.ts +10 -10
- package/lib/domain/types.d.ts +2 -2
- package/lib/es-table.module.d.ts +35 -35
- package/lib/tokens.d.ts +6 -6
- package/package.json +14 -14
- package/public-api.d.ts +27 -27
|
@@ -1,230 +1,230 @@
|
|
|
1
|
-
import { ItemsSelection } from "../../domain/externals/appsearch/ItemsSelection";
|
|
2
|
-
import { ItemPropEditableReference } from "../../domain/externals/ItemPropEditableReference";
|
|
3
|
-
import { EsTableColumnsDefinition } from "../../domain/externals/EsTableColumnsDefinition";
|
|
4
|
-
import { InputType } from '../../domain/types';
|
|
5
|
-
import { EsTableComponent } from "../../components/es-table/es_table.component";
|
|
6
|
-
import { EsThDirective } from "../../directives/es_th.directive";
|
|
7
|
-
import { RowGroupingHandler } from "./RowGroupingHandler";
|
|
8
|
-
/** Classe che gestisce le selezioni degli oggetti */
|
|
9
|
-
export declare class SelectionHandler {
|
|
10
|
-
private est;
|
|
11
|
-
private rgHandler;
|
|
12
|
-
/** Cache di selezione Hash - Oggetto per la variabile **items** dell'itemSelector. Facilita le operazioni di lookup via hash*/
|
|
13
|
-
private itemsCache;
|
|
14
|
-
/** Cache di selezione Hash - Oggetto per la variabile **groups** dell'itemSelector. Facilita le operazioni di lookup via hash */
|
|
15
|
-
private groupsCache;
|
|
16
|
-
/** Cache di selezione Hash - Oggetto per la variabile **exclusions** dell'itemSelector. Facilita le operazioni di lookup via hash */
|
|
17
|
-
private exclusionsCache;
|
|
18
|
-
/** Cache di selezione Hash - Oggetto per la variabile **group_exclusions** dell'itemSelector. Facilita le operazioni di lookup via hash */
|
|
19
|
-
private group_exclusionsCache;
|
|
20
|
-
/** Cache di selezione Hash - Oggetto per la variabile **items** dell'itemSelector. Facilita le operazioni di lookup via indice*/
|
|
21
|
-
private i_itemsCache;
|
|
22
|
-
/** Cache di selezione Hash - Oggetto per la variabile **groups** dell'itemSelector. Facilita le operazioni di lookup via indice */
|
|
23
|
-
private i_groupsCache;
|
|
24
|
-
/** Cache di selezione Hash - Oggetto per la variabile **exclusions** dell'itemSelector. Facilita le operazioni di lookup via indice */
|
|
25
|
-
private i_exclusionsCache;
|
|
26
|
-
/** Cache di selezione Hash - Oggetto per la variabile **group_exclusions** dell'itemSelector. Facilita le operazioni di lookup via indice */
|
|
27
|
-
private i_group_exclusionsCache;
|
|
28
|
-
/** Ultima cella selezionata singolarmente */
|
|
29
|
-
private lastSingleSelection;
|
|
30
|
-
/** @ignore Costruttore */
|
|
31
|
-
constructor(est: EsTableComponent, rgHandler: RowGroupingHandler);
|
|
32
|
-
/** Ripulisce le cache di selezione */
|
|
33
|
-
clearSelectionCaches(): void;
|
|
34
|
-
/**
|
|
35
|
-
* Valuta quali elementi devono essere marcati come selezionati nella vista attuale. Si basa sull'oggetto **selection** interno all'AppSearch
|
|
36
|
-
*
|
|
37
|
-
* @param {any[]} items Oggetti di cui valutare la selezione
|
|
38
|
-
* @param {ItemsSelection<any>} selectionItem Oggetti di selezione derivante dalla view o dall'oggetto per Array
|
|
39
|
-
*/
|
|
40
|
-
evaluateSelection(items: any[], selectionItem: ItemsSelection<any>): void;
|
|
41
|
-
/**
|
|
42
|
-
* Precompila le informazioni sullo stato di selezione tutto a false per le celle della tabella
|
|
43
|
-
*
|
|
44
|
-
* @param {any[]} items Oggetti attualmente bindati sulla tabella
|
|
45
|
-
* @param {EsThDirective[]} ths Colonne su cui gli oggetti sono bindati
|
|
46
|
-
*/
|
|
47
|
-
evaluateSingleCellSelection(items: any[], ths: EsThDirective[], dyn: EsTableColumnsDefinition[]): void;
|
|
48
|
-
/** @ignore */
|
|
49
|
-
private fillSelectionStatusByDynamicColumns;
|
|
50
|
-
/** @ignore */
|
|
51
|
-
private fillSelectionStatusByEsThs;
|
|
52
|
-
/**
|
|
53
|
-
* Implementazione agnostica della valutazione delle selezioni degli oggetti. Richiede gli oggetti della vista attuale e l'itemSelector
|
|
54
|
-
*
|
|
55
|
-
* @param {any[]} items Oggetti di cui aggiornare lo stato di selezione
|
|
56
|
-
* @param {ItemsSelection<any>} selectionItem Oggetto contenente lo stato attuale di selezione
|
|
57
|
-
*/
|
|
58
|
-
private handleSelectionEvaluation;
|
|
59
|
-
/**
|
|
60
|
-
* Dato un oggetto trova la cella di cache in cui è registrato e aggiorna il contenuto
|
|
61
|
-
*
|
|
62
|
-
* @param {any} item Oggetto da aggiornare
|
|
63
|
-
*/
|
|
64
|
-
private rehidrateCache;
|
|
65
|
-
/**
|
|
66
|
-
* Dato un gruppo controlla ricorsivamente l'albero di cui fa parte se c'è stata una inclusione o esclusione diretta
|
|
67
|
-
*
|
|
68
|
-
* @param {any} grp Gruppo da controllare
|
|
69
|
-
*
|
|
70
|
-
* @returns {'none' | 'excluded' | 'included'}
|
|
71
|
-
* 'none' se non ci sono informazioni su inclusioni o esclusioni
|
|
72
|
-
* 'included' se il gruppo controllato è stato incluso in maniera esplicita dall'albero dei gruppi padri
|
|
73
|
-
* 'excluded' se il gruppo controllato è stato escluso in maniera esplicita dall'albero dei gruppi padri
|
|
74
|
-
*/
|
|
75
|
-
private parentTreeStatus;
|
|
76
|
-
/**
|
|
77
|
-
* Helper per gestire la selezione di N elementi utilizzando la Cache di selezione ed eventualmente aggiornando il concetto di "all selection"
|
|
78
|
-
*
|
|
79
|
-
* Vunziona sia in modalità Array che in modalità View Semplice o View Avanzata (con le Custom Cells)
|
|
80
|
-
*
|
|
81
|
-
* @param {any[]} items Oggetti da selezionare o deselezionare
|
|
82
|
-
* @param {boolean} forcedVal Valore forzato di check da assegnare agli oggetti
|
|
83
|
-
* @param {boolean} globalCheck Valore del check globale
|
|
84
|
-
*
|
|
85
|
-
* @returns {ItemsSelection<any>} Oggetto di selezione aggiornato con le informazioni sull'ultima operazione effettuata
|
|
86
|
-
*/
|
|
87
|
-
handleItemsSelection(items: any[], forcedVal?: boolean, globalCheck?: boolean): ItemsSelection<any>;
|
|
88
|
-
/**
|
|
89
|
-
* Dato L'oggetto di selezione, l'oggetto da selezionare/deselezionare e tutti i parametri del caso effettua le operazioni che servono.
|
|
90
|
-
*
|
|
91
|
-
* Logica semplificata rispetto all'originale **performSelectionOperations** per lavorare in una modalità in cui tutti gli elementi sono caricati (**ArrayGrouping** = true)
|
|
92
|
-
*/
|
|
93
|
-
private performSimpleSelectionOperations;
|
|
94
|
-
/**
|
|
95
|
-
* Helper per selezionare un gruppo e, ricorsivamente, se tutti i gruppi sottostanti al parent sono selezionati, selezionare i gruppi padri
|
|
96
|
-
*
|
|
97
|
-
* @param {any} group Gruppo da selezionare
|
|
98
|
-
*/
|
|
99
|
-
private selectGroup;
|
|
100
|
-
/**
|
|
101
|
-
* Dato L'oggetto di selezione, l'oggetto da selezionare/deselezionare e tutti i parametri del caso effettua le operazioni che servono.
|
|
102
|
-
*
|
|
103
|
-
* La logica di questa funzione è nata essenzialmente da spam di trial & error ed è stata testata solo fino a due livelli di raggruppamento,
|
|
104
|
-
* qualsiasi cosa vada oltre non è 100% detto che funzioni...
|
|
105
|
-
*/
|
|
106
|
-
private performSelectionOperations;
|
|
107
|
-
/** Helper per evitare di riscrivere ogni santa volta array.splice(array.indexof(item), 1); */
|
|
108
|
-
private removeItem;
|
|
109
|
-
/** Helper per evitare di riscrivere ogni santa volta array.push(item); e la gestione della */
|
|
110
|
-
private addItem;
|
|
111
|
-
/**
|
|
112
|
-
* Ottiene il trittico di selezione, cioè l'array degli oggetti che si vuole manipolare e le due cache collegate ad esso
|
|
113
|
-
*
|
|
114
|
-
* @param {'group' | 'item' | 'group_exclusion' | 'exclusion'} subject Oggetto logico desiderato su cui effettuare le operazioni successive
|
|
115
|
-
* @param {ItemsSelection<any>} base Selettore di base
|
|
116
|
-
*
|
|
117
|
-
* @returns {CacheTriptic} Trittico di selezione
|
|
118
|
-
*/
|
|
119
|
-
private getTriptic;
|
|
120
|
-
/**
|
|
121
|
-
* Dato un oggetto restituisce il gruppo di cui fa parte, se esiste
|
|
122
|
-
*
|
|
123
|
-
* @param {any} item Oggetto di cui trovare il gruppo
|
|
124
|
-
*/
|
|
125
|
-
private getItemGroup;
|
|
126
|
-
/**
|
|
127
|
-
* Data la chiave di un gruppo restituisce tutti gli oggetti con quella chiave
|
|
128
|
-
*
|
|
129
|
-
* @param {any} group Chiave da cercare
|
|
130
|
-
* @param {'selected' | 'unselected'} status Stato degli elementi, selezionati o no
|
|
131
|
-
* @param {boolean} recursive Indica se cercare solo gli elementi direttamente collegati o se prendere anche quelli dei gruppi figli
|
|
132
|
-
*
|
|
133
|
-
* @returns {any[]} Oggetti di tipo **_item** facenti capo alla chiave **groupKey**
|
|
134
|
-
*/
|
|
135
|
-
private getGroupItems;
|
|
136
|
-
/**
|
|
137
|
-
* Data la chiave di un gruppo restituisce tutti gli oggetti con quella chiave
|
|
138
|
-
*
|
|
139
|
-
* @param {any} group Gruppo di cui cercare il parent
|
|
140
|
-
*
|
|
141
|
-
* @returns {any} Oggetto di tipo **_group** rappresentante il parent del **group** attuale
|
|
142
|
-
*/
|
|
143
|
-
private getGroupParent;
|
|
144
|
-
/**
|
|
145
|
-
* Data la chiave di un gruppo restituisce tutti i gruppi figli
|
|
146
|
-
*
|
|
147
|
-
* @param {string} group Gruppo che rappresenta il padre di cui cercare i figli
|
|
148
|
-
* @param {'selected' | 'unselected'} status Stato dei gruppi, selezionati o no
|
|
149
|
-
* @param {boolean} recursive Indica se cercare solo i gruppi direttamente collegati o se prendere anche quelli dei gruppi figli
|
|
150
|
-
*
|
|
151
|
-
* @returns {any[]} Oggetti di tipo **_group** facenti capo alla chiave **groupKey**
|
|
152
|
-
*/
|
|
153
|
-
private getGroupChildGroups;
|
|
154
|
-
/** Finalizza le informazioni di selezione del **ItemsSelection** corrente */
|
|
155
|
-
private finalizeSelectionInformations;
|
|
156
|
-
/** Compatta una cache di indici */
|
|
157
|
-
private compactIndexMap;
|
|
158
|
-
/**
|
|
159
|
-
* Valuta la quantità di oggetti che sono stati selezionati al termine di un evento di selezione
|
|
160
|
-
*
|
|
161
|
-
* @returns {number} Numero di oggetti selezionati
|
|
162
|
-
*/
|
|
163
|
-
private evaluateSelected;
|
|
164
|
-
/** Gestisce il comando di "Seleziona tutto in tutte le pagine" o il suo contrario, cioè "Reimposta selezione" */
|
|
165
|
-
selectAllOrResetSelection(): void;
|
|
166
|
-
/**
|
|
167
|
-
* @TODO Spostare in SelectionHandler
|
|
168
|
-
*
|
|
169
|
-
* Registra la selezione singola su una cella sulla combo di comandi "CTRL + Click".
|
|
170
|
-
* Se viene premuto anche il tasto Shift viene creato un range di selezione il cui status di "selezionato" viene salvato nella
|
|
171
|
-
* matrice virtuale **selectionStatus**
|
|
172
|
-
*
|
|
173
|
-
* @param {any} event Evento Javascript di Click
|
|
174
|
-
* @param {number} row Indice della riga. Non è l'indice vero e proprio ma è l'ordinale (.ordinal) dell'oggetto bindato su quella riga
|
|
175
|
-
* @param {number} column Indice della colonna preso banalmente dall'ngIf sui thElement
|
|
176
|
-
* @param {{ row: number, column: number }} firstSelectionOverride Permette di overridare il primo elemento selezionato
|
|
177
|
-
*/
|
|
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: {
|
|
189
|
-
row: number;
|
|
190
|
-
column: number;
|
|
191
|
-
}): void;
|
|
192
|
-
/**
|
|
193
|
-
* Helper per ripulire lo stato di selezione delle singole celle della tabella, ad esclusione di una singola coordinata
|
|
194
|
-
*
|
|
195
|
-
* @param {{row: number, column: number}} exclusion Coordinata da escludere nella pulizia
|
|
196
|
-
*/
|
|
197
|
-
clearSelectionStatusExcluding(exclusion?: {
|
|
198
|
-
row: number;
|
|
199
|
-
column: number;
|
|
200
|
-
}): void;
|
|
201
|
-
/**
|
|
202
|
-
* Helper che esamina la matrice **selectionStatus** e ne estrappola gli elementi selezionati in una comoda matrice
|
|
203
|
-
*
|
|
204
|
-
* @returns {{ value: string, type: InputType, val_setter: Function }[][]} Matrice di elementi selezionati con la loro informazione sul tipo
|
|
205
|
-
*/
|
|
206
|
-
getSelectionStatusSelection(): ItemPropEditableReference[][];
|
|
207
|
-
/**
|
|
208
|
-
* Data la matrice di selezione generata dal metodo **getSelectionStatusSelection** genera la strigna vera e propria da copiare nella Clipboard
|
|
209
|
-
*
|
|
210
|
-
* @param {{ value: string, type: InputType }[][]} sel Matrice di selezione con valori e tipi dei dati selezionati
|
|
211
|
-
*
|
|
212
|
-
* @returns {string} Stringa da copiare nella clipboard, le stringhe vengono wrappate fra doppi apici e fra un valore e l'altro viene messo un tab
|
|
213
|
-
* in modo che siano compatibili anche con la copia su Excel
|
|
214
|
-
*/
|
|
215
|
-
getClipbardTextFromSelection(sel: {
|
|
216
|
-
value: string;
|
|
217
|
-
type: InputType | string;
|
|
218
|
-
}[][]): string;
|
|
219
|
-
/**
|
|
220
|
-
* Ottiene la rappresentazione stringa di un valore dato un tipo
|
|
221
|
-
*
|
|
222
|
-
* @param {{ value: string, type: InputType }} valType Oggetto Valore - Tipo da cui estrapolare la rappresentazione del dato in stringa
|
|
223
|
-
*
|
|
224
|
-
* @returns {string} Valore convertito in stringa in base al tipo
|
|
225
|
-
*/
|
|
226
|
-
getValueByType(valType: {
|
|
227
|
-
value: string;
|
|
228
|
-
type: InputType | string;
|
|
229
|
-
}): string;
|
|
230
|
-
}
|
|
1
|
+
import { ItemsSelection } from "../../domain/externals/appsearch/ItemsSelection";
|
|
2
|
+
import { ItemPropEditableReference } from "../../domain/externals/ItemPropEditableReference";
|
|
3
|
+
import { EsTableColumnsDefinition } from "../../domain/externals/EsTableColumnsDefinition";
|
|
4
|
+
import { InputType } from '../../domain/types';
|
|
5
|
+
import { EsTableComponent } from "../../components/es-table/es_table.component";
|
|
6
|
+
import { EsThDirective } from "../../directives/es_th.directive";
|
|
7
|
+
import { RowGroupingHandler } from "./RowGroupingHandler";
|
|
8
|
+
/** Classe che gestisce le selezioni degli oggetti */
|
|
9
|
+
export declare class SelectionHandler {
|
|
10
|
+
private est;
|
|
11
|
+
private rgHandler;
|
|
12
|
+
/** Cache di selezione Hash - Oggetto per la variabile **items** dell'itemSelector. Facilita le operazioni di lookup via hash*/
|
|
13
|
+
private itemsCache;
|
|
14
|
+
/** Cache di selezione Hash - Oggetto per la variabile **groups** dell'itemSelector. Facilita le operazioni di lookup via hash */
|
|
15
|
+
private groupsCache;
|
|
16
|
+
/** Cache di selezione Hash - Oggetto per la variabile **exclusions** dell'itemSelector. Facilita le operazioni di lookup via hash */
|
|
17
|
+
private exclusionsCache;
|
|
18
|
+
/** Cache di selezione Hash - Oggetto per la variabile **group_exclusions** dell'itemSelector. Facilita le operazioni di lookup via hash */
|
|
19
|
+
private group_exclusionsCache;
|
|
20
|
+
/** Cache di selezione Hash - Oggetto per la variabile **items** dell'itemSelector. Facilita le operazioni di lookup via indice*/
|
|
21
|
+
private i_itemsCache;
|
|
22
|
+
/** Cache di selezione Hash - Oggetto per la variabile **groups** dell'itemSelector. Facilita le operazioni di lookup via indice */
|
|
23
|
+
private i_groupsCache;
|
|
24
|
+
/** Cache di selezione Hash - Oggetto per la variabile **exclusions** dell'itemSelector. Facilita le operazioni di lookup via indice */
|
|
25
|
+
private i_exclusionsCache;
|
|
26
|
+
/** Cache di selezione Hash - Oggetto per la variabile **group_exclusions** dell'itemSelector. Facilita le operazioni di lookup via indice */
|
|
27
|
+
private i_group_exclusionsCache;
|
|
28
|
+
/** Ultima cella selezionata singolarmente */
|
|
29
|
+
private lastSingleSelection;
|
|
30
|
+
/** @ignore Costruttore */
|
|
31
|
+
constructor(est: EsTableComponent, rgHandler: RowGroupingHandler);
|
|
32
|
+
/** Ripulisce le cache di selezione */
|
|
33
|
+
clearSelectionCaches(): void;
|
|
34
|
+
/**
|
|
35
|
+
* Valuta quali elementi devono essere marcati come selezionati nella vista attuale. Si basa sull'oggetto **selection** interno all'AppSearch
|
|
36
|
+
*
|
|
37
|
+
* @param {any[]} items Oggetti di cui valutare la selezione
|
|
38
|
+
* @param {ItemsSelection<any>} selectionItem Oggetti di selezione derivante dalla view o dall'oggetto per Array
|
|
39
|
+
*/
|
|
40
|
+
evaluateSelection(items: any[], selectionItem: ItemsSelection<any>): void;
|
|
41
|
+
/**
|
|
42
|
+
* Precompila le informazioni sullo stato di selezione tutto a false per le celle della tabella
|
|
43
|
+
*
|
|
44
|
+
* @param {any[]} items Oggetti attualmente bindati sulla tabella
|
|
45
|
+
* @param {EsThDirective[]} ths Colonne su cui gli oggetti sono bindati
|
|
46
|
+
*/
|
|
47
|
+
evaluateSingleCellSelection(items: any[], ths: EsThDirective[], dyn: EsTableColumnsDefinition[]): void;
|
|
48
|
+
/** @ignore */
|
|
49
|
+
private fillSelectionStatusByDynamicColumns;
|
|
50
|
+
/** @ignore */
|
|
51
|
+
private fillSelectionStatusByEsThs;
|
|
52
|
+
/**
|
|
53
|
+
* Implementazione agnostica della valutazione delle selezioni degli oggetti. Richiede gli oggetti della vista attuale e l'itemSelector
|
|
54
|
+
*
|
|
55
|
+
* @param {any[]} items Oggetti di cui aggiornare lo stato di selezione
|
|
56
|
+
* @param {ItemsSelection<any>} selectionItem Oggetto contenente lo stato attuale di selezione
|
|
57
|
+
*/
|
|
58
|
+
private handleSelectionEvaluation;
|
|
59
|
+
/**
|
|
60
|
+
* Dato un oggetto trova la cella di cache in cui è registrato e aggiorna il contenuto
|
|
61
|
+
*
|
|
62
|
+
* @param {any} item Oggetto da aggiornare
|
|
63
|
+
*/
|
|
64
|
+
private rehidrateCache;
|
|
65
|
+
/**
|
|
66
|
+
* Dato un gruppo controlla ricorsivamente l'albero di cui fa parte se c'è stata una inclusione o esclusione diretta
|
|
67
|
+
*
|
|
68
|
+
* @param {any} grp Gruppo da controllare
|
|
69
|
+
*
|
|
70
|
+
* @returns {'none' | 'excluded' | 'included'}
|
|
71
|
+
* 'none' se non ci sono informazioni su inclusioni o esclusioni
|
|
72
|
+
* 'included' se il gruppo controllato è stato incluso in maniera esplicita dall'albero dei gruppi padri
|
|
73
|
+
* 'excluded' se il gruppo controllato è stato escluso in maniera esplicita dall'albero dei gruppi padri
|
|
74
|
+
*/
|
|
75
|
+
private parentTreeStatus;
|
|
76
|
+
/**
|
|
77
|
+
* Helper per gestire la selezione di N elementi utilizzando la Cache di selezione ed eventualmente aggiornando il concetto di "all selection"
|
|
78
|
+
*
|
|
79
|
+
* Vunziona sia in modalità Array che in modalità View Semplice o View Avanzata (con le Custom Cells)
|
|
80
|
+
*
|
|
81
|
+
* @param {any[]} items Oggetti da selezionare o deselezionare
|
|
82
|
+
* @param {boolean} forcedVal Valore forzato di check da assegnare agli oggetti
|
|
83
|
+
* @param {boolean} globalCheck Valore del check globale
|
|
84
|
+
*
|
|
85
|
+
* @returns {ItemsSelection<any>} Oggetto di selezione aggiornato con le informazioni sull'ultima operazione effettuata
|
|
86
|
+
*/
|
|
87
|
+
handleItemsSelection(items: any[], forcedVal?: boolean, globalCheck?: boolean): ItemsSelection<any>;
|
|
88
|
+
/**
|
|
89
|
+
* Dato L'oggetto di selezione, l'oggetto da selezionare/deselezionare e tutti i parametri del caso effettua le operazioni che servono.
|
|
90
|
+
*
|
|
91
|
+
* Logica semplificata rispetto all'originale **performSelectionOperations** per lavorare in una modalità in cui tutti gli elementi sono caricati (**ArrayGrouping** = true)
|
|
92
|
+
*/
|
|
93
|
+
private performSimpleSelectionOperations;
|
|
94
|
+
/**
|
|
95
|
+
* Helper per selezionare un gruppo e, ricorsivamente, se tutti i gruppi sottostanti al parent sono selezionati, selezionare i gruppi padri
|
|
96
|
+
*
|
|
97
|
+
* @param {any} group Gruppo da selezionare
|
|
98
|
+
*/
|
|
99
|
+
private selectGroup;
|
|
100
|
+
/**
|
|
101
|
+
* Dato L'oggetto di selezione, l'oggetto da selezionare/deselezionare e tutti i parametri del caso effettua le operazioni che servono.
|
|
102
|
+
*
|
|
103
|
+
* La logica di questa funzione è nata essenzialmente da spam di trial & error ed è stata testata solo fino a due livelli di raggruppamento,
|
|
104
|
+
* qualsiasi cosa vada oltre non è 100% detto che funzioni...
|
|
105
|
+
*/
|
|
106
|
+
private performSelectionOperations;
|
|
107
|
+
/** Helper per evitare di riscrivere ogni santa volta array.splice(array.indexof(item), 1); */
|
|
108
|
+
private removeItem;
|
|
109
|
+
/** Helper per evitare di riscrivere ogni santa volta array.push(item); e la gestione della */
|
|
110
|
+
private addItem;
|
|
111
|
+
/**
|
|
112
|
+
* Ottiene il trittico di selezione, cioè l'array degli oggetti che si vuole manipolare e le due cache collegate ad esso
|
|
113
|
+
*
|
|
114
|
+
* @param {'group' | 'item' | 'group_exclusion' | 'exclusion'} subject Oggetto logico desiderato su cui effettuare le operazioni successive
|
|
115
|
+
* @param {ItemsSelection<any>} base Selettore di base
|
|
116
|
+
*
|
|
117
|
+
* @returns {CacheTriptic} Trittico di selezione
|
|
118
|
+
*/
|
|
119
|
+
private getTriptic;
|
|
120
|
+
/**
|
|
121
|
+
* Dato un oggetto restituisce il gruppo di cui fa parte, se esiste
|
|
122
|
+
*
|
|
123
|
+
* @param {any} item Oggetto di cui trovare il gruppo
|
|
124
|
+
*/
|
|
125
|
+
private getItemGroup;
|
|
126
|
+
/**
|
|
127
|
+
* Data la chiave di un gruppo restituisce tutti gli oggetti con quella chiave
|
|
128
|
+
*
|
|
129
|
+
* @param {any} group Chiave da cercare
|
|
130
|
+
* @param {'selected' | 'unselected'} status Stato degli elementi, selezionati o no
|
|
131
|
+
* @param {boolean} recursive Indica se cercare solo gli elementi direttamente collegati o se prendere anche quelli dei gruppi figli
|
|
132
|
+
*
|
|
133
|
+
* @returns {any[]} Oggetti di tipo **_item** facenti capo alla chiave **groupKey**
|
|
134
|
+
*/
|
|
135
|
+
private getGroupItems;
|
|
136
|
+
/**
|
|
137
|
+
* Data la chiave di un gruppo restituisce tutti gli oggetti con quella chiave
|
|
138
|
+
*
|
|
139
|
+
* @param {any} group Gruppo di cui cercare il parent
|
|
140
|
+
*
|
|
141
|
+
* @returns {any} Oggetto di tipo **_group** rappresentante il parent del **group** attuale
|
|
142
|
+
*/
|
|
143
|
+
private getGroupParent;
|
|
144
|
+
/**
|
|
145
|
+
* Data la chiave di un gruppo restituisce tutti i gruppi figli
|
|
146
|
+
*
|
|
147
|
+
* @param {string} group Gruppo che rappresenta il padre di cui cercare i figli
|
|
148
|
+
* @param {'selected' | 'unselected'} status Stato dei gruppi, selezionati o no
|
|
149
|
+
* @param {boolean} recursive Indica se cercare solo i gruppi direttamente collegati o se prendere anche quelli dei gruppi figli
|
|
150
|
+
*
|
|
151
|
+
* @returns {any[]} Oggetti di tipo **_group** facenti capo alla chiave **groupKey**
|
|
152
|
+
*/
|
|
153
|
+
private getGroupChildGroups;
|
|
154
|
+
/** Finalizza le informazioni di selezione del **ItemsSelection** corrente */
|
|
155
|
+
private finalizeSelectionInformations;
|
|
156
|
+
/** Compatta una cache di indici */
|
|
157
|
+
private compactIndexMap;
|
|
158
|
+
/**
|
|
159
|
+
* Valuta la quantità di oggetti che sono stati selezionati al termine di un evento di selezione
|
|
160
|
+
*
|
|
161
|
+
* @returns {number} Numero di oggetti selezionati
|
|
162
|
+
*/
|
|
163
|
+
private evaluateSelected;
|
|
164
|
+
/** Gestisce il comando di "Seleziona tutto in tutte le pagine" o il suo contrario, cioè "Reimposta selezione" */
|
|
165
|
+
selectAllOrResetSelection(): void;
|
|
166
|
+
/**
|
|
167
|
+
* @TODO Spostare in SelectionHandler
|
|
168
|
+
*
|
|
169
|
+
* Registra la selezione singola su una cella sulla combo di comandi "CTRL + Click".
|
|
170
|
+
* Se viene premuto anche il tasto Shift viene creato un range di selezione il cui status di "selezionato" viene salvato nella
|
|
171
|
+
* matrice virtuale **selectionStatus**
|
|
172
|
+
*
|
|
173
|
+
* @param {any} event Evento Javascript di Click
|
|
174
|
+
* @param {number} row Indice della riga. Non è l'indice vero e proprio ma è l'ordinale (.ordinal) dell'oggetto bindato su quella riga
|
|
175
|
+
* @param {number} column Indice della colonna preso banalmente dall'ngIf sui thElement
|
|
176
|
+
* @param {{ row: number, column: number }} firstSelectionOverride Permette di overridare il primo elemento selezionato
|
|
177
|
+
*/
|
|
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: {
|
|
189
|
+
row: number;
|
|
190
|
+
column: number;
|
|
191
|
+
}): void;
|
|
192
|
+
/**
|
|
193
|
+
* Helper per ripulire lo stato di selezione delle singole celle della tabella, ad esclusione di una singola coordinata
|
|
194
|
+
*
|
|
195
|
+
* @param {{row: number, column: number}} exclusion Coordinata da escludere nella pulizia
|
|
196
|
+
*/
|
|
197
|
+
clearSelectionStatusExcluding(exclusion?: {
|
|
198
|
+
row: number;
|
|
199
|
+
column: number;
|
|
200
|
+
}): void;
|
|
201
|
+
/**
|
|
202
|
+
* Helper che esamina la matrice **selectionStatus** e ne estrappola gli elementi selezionati in una comoda matrice
|
|
203
|
+
*
|
|
204
|
+
* @returns {{ value: string, type: InputType, val_setter: Function }[][]} Matrice di elementi selezionati con la loro informazione sul tipo
|
|
205
|
+
*/
|
|
206
|
+
getSelectionStatusSelection(): ItemPropEditableReference[][];
|
|
207
|
+
/**
|
|
208
|
+
* Data la matrice di selezione generata dal metodo **getSelectionStatusSelection** genera la strigna vera e propria da copiare nella Clipboard
|
|
209
|
+
*
|
|
210
|
+
* @param {{ value: string, type: InputType }[][]} sel Matrice di selezione con valori e tipi dei dati selezionati
|
|
211
|
+
*
|
|
212
|
+
* @returns {string} Stringa da copiare nella clipboard, le stringhe vengono wrappate fra doppi apici e fra un valore e l'altro viene messo un tab
|
|
213
|
+
* in modo che siano compatibili anche con la copia su Excel
|
|
214
|
+
*/
|
|
215
|
+
getClipbardTextFromSelection(sel: {
|
|
216
|
+
value: string;
|
|
217
|
+
type: InputType | string;
|
|
218
|
+
}[][]): string;
|
|
219
|
+
/**
|
|
220
|
+
* Ottiene la rappresentazione stringa di un valore dato un tipo
|
|
221
|
+
*
|
|
222
|
+
* @param {{ value: string, type: InputType }} valType Oggetto Valore - Tipo da cui estrapolare la rappresentazione del dato in stringa
|
|
223
|
+
*
|
|
224
|
+
* @returns {string} Valore convertito in stringa in base al tipo
|
|
225
|
+
*/
|
|
226
|
+
getValueByType(valType: {
|
|
227
|
+
value: string;
|
|
228
|
+
type: InputType | string;
|
|
229
|
+
}): string;
|
|
230
|
+
}
|
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
import { HashingService } from "@esfaenza/extensions";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/** Classe di utilità per le cose comuni */
|
|
4
|
-
export declare class UtilitiesHandler {
|
|
5
|
-
private hashExts;
|
|
6
|
-
/** @ignore Costruttore */
|
|
7
|
-
constructor(hashExts: HashingService);
|
|
8
|
-
/**
|
|
9
|
-
* Data una lista di oggetti effettua dei raggruppamenti in base alla proprietà **field**,
|
|
10
|
-
* restituendo un oggetto del tipo { Gruppo1: oggetti[], Gruppo2: oggetti[], ecc... }
|
|
11
|
-
*
|
|
12
|
-
* @param {any[]} array Lista degli oggetti da raggruppare
|
|
13
|
-
* @param {string} field Campo su cui effettuare i raggruppamenti
|
|
14
|
-
*
|
|
15
|
-
* @returns {{ [id: string]: any[] }} Dizionario dei gruppi
|
|
16
|
-
*/
|
|
17
|
-
groupBy(array: any[], field: string): {
|
|
18
|
-
[id: string]: any[];
|
|
19
|
-
};
|
|
20
|
-
/**
|
|
21
|
-
* Helper per effettuare il caching delle aggregazioni. Le sposta da una lista di **GroupAggregation** a una **<Map<string, Map<string, string>>**
|
|
22
|
-
*
|
|
23
|
-
* @param {any} group Gruppo di cui cachare le aggregazioni
|
|
24
|
-
*/
|
|
25
|
-
cacheAggregations(group: any): void;
|
|
26
|
-
/** Helper per spostare un oggetto di un array da un indice all'altro, in place */
|
|
27
|
-
arrayMove(array: any[], oldI: number, newI: number): void;
|
|
28
|
-
/**
|
|
29
|
-
* Date le informazioni di paginazione ottiene l'array dei pulsanti
|
|
30
|
-
*
|
|
31
|
-
* @param {number} maxBtns Numero massimo di pulsanti da visualizzare
|
|
32
|
-
* @param {number} page Pagina corrente
|
|
33
|
-
* @param {number} lastPage Ultima pagina disponibile
|
|
34
|
-
*
|
|
35
|
-
* @returns {any[]} Pseudo-array di pulsanti a cui ci si può bindare lato HTML
|
|
36
|
-
*/
|
|
37
|
-
getPagesArray(maxBtns: number, page: number, lastPage: number, actualCount?: number, ipp?: number): {
|
|
38
|
-
val: number;
|
|
39
|
-
cssClass: string;
|
|
40
|
-
}[];
|
|
41
|
-
/**
|
|
42
|
-
* Calcola l'hash di un oggetto qualsiasi
|
|
43
|
-
*
|
|
44
|
-
* @param {any[]} items Oggetti per cui calcolare l'hash
|
|
45
|
-
*/
|
|
46
|
-
calculateHash(items: any[]): void;
|
|
47
|
-
/**
|
|
48
|
-
* Se l'Input è null (valore non settato) vede se c'è un default con cui valorizzarlo. Se non c'è utilizza il valore di fallback (qualora fornito)
|
|
49
|
-
*
|
|
50
|
-
* @param {T} inputValue Valore dell'Input
|
|
51
|
-
* @param {T} defaultValue Valore di default impostato da configurazione
|
|
52
|
-
* @param {T} fallbackValue Valore dell'Input per quando non è stato assegnato dal programmatore e non ha un default
|
|
53
|
-
*/
|
|
54
|
-
InputOrDefault<T>(inputValue: T, defaultValue: T, fallbackValue?: T): T;
|
|
55
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<UtilitiesHandler, never>;
|
|
56
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<UtilitiesHandler>;
|
|
57
|
-
}
|
|
1
|
+
import { HashingService } from "@esfaenza/extensions";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/** Classe di utilità per le cose comuni */
|
|
4
|
+
export declare class UtilitiesHandler {
|
|
5
|
+
private hashExts;
|
|
6
|
+
/** @ignore Costruttore */
|
|
7
|
+
constructor(hashExts: HashingService);
|
|
8
|
+
/**
|
|
9
|
+
* Data una lista di oggetti effettua dei raggruppamenti in base alla proprietà **field**,
|
|
10
|
+
* restituendo un oggetto del tipo { Gruppo1: oggetti[], Gruppo2: oggetti[], ecc... }
|
|
11
|
+
*
|
|
12
|
+
* @param {any[]} array Lista degli oggetti da raggruppare
|
|
13
|
+
* @param {string} field Campo su cui effettuare i raggruppamenti
|
|
14
|
+
*
|
|
15
|
+
* @returns {{ [id: string]: any[] }} Dizionario dei gruppi
|
|
16
|
+
*/
|
|
17
|
+
groupBy(array: any[], field: string): {
|
|
18
|
+
[id: string]: any[];
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Helper per effettuare il caching delle aggregazioni. Le sposta da una lista di **GroupAggregation** a una **<Map<string, Map<string, string>>**
|
|
22
|
+
*
|
|
23
|
+
* @param {any} group Gruppo di cui cachare le aggregazioni
|
|
24
|
+
*/
|
|
25
|
+
cacheAggregations(group: any): void;
|
|
26
|
+
/** Helper per spostare un oggetto di un array da un indice all'altro, in place */
|
|
27
|
+
arrayMove(array: any[], oldI: number, newI: number): void;
|
|
28
|
+
/**
|
|
29
|
+
* Date le informazioni di paginazione ottiene l'array dei pulsanti
|
|
30
|
+
*
|
|
31
|
+
* @param {number} maxBtns Numero massimo di pulsanti da visualizzare
|
|
32
|
+
* @param {number} page Pagina corrente
|
|
33
|
+
* @param {number} lastPage Ultima pagina disponibile
|
|
34
|
+
*
|
|
35
|
+
* @returns {any[]} Pseudo-array di pulsanti a cui ci si può bindare lato HTML
|
|
36
|
+
*/
|
|
37
|
+
getPagesArray(maxBtns: number, page: number, lastPage: number, actualCount?: number, ipp?: number): {
|
|
38
|
+
val: number;
|
|
39
|
+
cssClass: string;
|
|
40
|
+
}[];
|
|
41
|
+
/**
|
|
42
|
+
* Calcola l'hash di un oggetto qualsiasi
|
|
43
|
+
*
|
|
44
|
+
* @param {any[]} items Oggetti per cui calcolare l'hash
|
|
45
|
+
*/
|
|
46
|
+
calculateHash(items: any[]): void;
|
|
47
|
+
/**
|
|
48
|
+
* Se l'Input è null (valore non settato) vede se c'è un default con cui valorizzarlo. Se non c'è utilizza il valore di fallback (qualora fornito)
|
|
49
|
+
*
|
|
50
|
+
* @param {T} inputValue Valore dell'Input
|
|
51
|
+
* @param {T} defaultValue Valore di default impostato da configurazione
|
|
52
|
+
* @param {T} fallbackValue Valore dell'Input per quando non è stato assegnato dal programmatore e non ha un default
|
|
53
|
+
*/
|
|
54
|
+
InputOrDefault<T>(inputValue: T, defaultValue: T, fallbackValue?: T): T;
|
|
55
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<UtilitiesHandler, never>;
|
|
56
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<UtilitiesHandler>;
|
|
57
|
+
}
|