@esfaenza/extensions 15.2.45 → 16.2.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/{esm2020 → esm2022}/esfaenza-extensions.mjs +4 -4
- package/esm2022/lib/models/CallResult.mjs +24 -0
- package/esm2022/lib/models/CsvHeaders.mjs +26 -0
- package/{esm2020 → esm2022}/lib/models/ExportConsts.mjs +31 -31
- package/esm2022/lib/models/ExtensionsModuleConfig.mjs +10 -0
- package/esm2022/lib/models/GenericItem.mjs +10 -0
- package/{esm2020 → esm2022}/lib/models/InboundMessageTypes.mjs +6 -6
- package/esm2022/lib/models/InterComMessage.mjs +16 -0
- package/{esm2020 → esm2022}/lib/models/TypeCode.mjs +24 -24
- package/{esm2020 → esm2022}/lib/modules/extensions.module.mjs +32 -32
- package/esm2022/lib/pipes/loc_date.pipe.mjs +38 -0
- package/esm2022/lib/services/extensions.base.mjs +30 -0
- package/esm2022/lib/services/extensions.clipboard.service.mjs +221 -0
- package/esm2022/lib/services/extensions.dates.service.mjs +244 -0
- package/esm2022/lib/services/extensions.embedding.service.mjs +213 -0
- package/esm2022/lib/services/extensions.exports.service.mjs +617 -0
- package/esm2022/lib/services/extensions.hashing.service.mjs +308 -0
- package/esm2022/lib/services/extensions.intercom.service.mjs +52 -0
- package/esm2022/lib/services/extensions.messages.service.mjs +450 -0
- package/esm2022/lib/services/extensions.utilities.service.mjs +250 -0
- package/{esm2020 → esm2022}/lib/tokens.mjs +11 -11
- package/{esm2020 → esm2022}/public-api.mjs +21 -21
- package/{fesm2020 → fesm2022}/esfaenza-extensions.mjs +2509 -2441
- package/fesm2022/esfaenza-extensions.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/models/CallResult.d.ts +23 -23
- package/lib/models/CsvHeaders.d.ts +25 -25
- package/lib/models/ExportConsts.d.ts +31 -31
- package/lib/models/ExtensionsModuleConfig.d.ts +9 -9
- package/lib/models/GenericItem.d.ts +9 -9
- package/lib/models/InboundMessageTypes.d.ts +5 -5
- package/lib/models/InterComMessage.d.ts +12 -12
- package/lib/models/TypeCode.d.ts +23 -23
- package/lib/modules/extensions.module.d.ts +11 -11
- package/lib/pipes/loc_date.pipe.d.ts +24 -24
- package/lib/services/extensions.base.d.ts +22 -22
- package/lib/services/extensions.clipboard.service.d.ts +54 -54
- package/lib/services/extensions.dates.service.d.ts +99 -99
- package/lib/services/extensions.embedding.service.d.ts +28 -28
- package/lib/services/extensions.exports.service.d.ts +234 -234
- package/lib/services/extensions.hashing.service.d.ts +121 -121
- package/lib/services/extensions.intercom.service.d.ts +28 -28
- package/lib/services/extensions.messages.service.d.ts +195 -195
- package/lib/services/extensions.utilities.service.d.ts +107 -107
- package/lib/tokens.d.ts +11 -11
- package/package.json +13 -19
- package/public-api.d.ts +18 -18
- package/esm2020/lib/models/CallResult.mjs +0 -6
- package/esm2020/lib/models/CsvHeaders.mjs +0 -6
- package/esm2020/lib/models/ExtensionsModuleConfig.mjs +0 -4
- package/esm2020/lib/models/GenericItem.mjs +0 -6
- package/esm2020/lib/models/InterComMessage.mjs +0 -14
- package/esm2020/lib/pipes/loc_date.pipe.mjs +0 -37
- package/esm2020/lib/services/extensions.base.mjs +0 -29
- package/esm2020/lib/services/extensions.clipboard.service.mjs +0 -219
- package/esm2020/lib/services/extensions.dates.service.mjs +0 -242
- package/esm2020/lib/services/extensions.embedding.service.mjs +0 -208
- package/esm2020/lib/services/extensions.exports.service.mjs +0 -615
- package/esm2020/lib/services/extensions.hashing.service.mjs +0 -310
- package/esm2020/lib/services/extensions.intercom.service.mjs +0 -54
- package/esm2020/lib/services/extensions.messages.service.mjs +0 -433
- package/esm2020/lib/services/extensions.utilities.service.mjs +0 -252
- package/fesm2015/esfaenza-extensions.mjs +0 -2513
- package/fesm2015/esfaenza-extensions.mjs.map +0 -1
- package/fesm2020/esfaenza-extensions.mjs.map +0 -1
|
@@ -1,234 +1,234 @@
|
|
|
1
|
-
import { Type } from "@angular/core";
|
|
2
|
-
import { LocalizationService } from "@esfaenza/localizations";
|
|
3
|
-
import { DateService } from './extensions.dates.service';
|
|
4
|
-
import { UtilityService } from "./extensions.utilities.service";
|
|
5
|
-
import { CsvHeaders } from "../models/CsvHeaders";
|
|
6
|
-
import { GenericItem } from "../models/GenericItem";
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Decoratore che fornisce la classe di localizzazione per tutte le proprietà esportate con @Export e qualsiasi altro tag che richieda localizzazioni.
|
|
10
|
-
*
|
|
11
|
-
* Sostanzilamente aggiunge la proprietà **__loc__** all'oggetto creato dalla classe corrente assegnandogli come valore il tipo del LocalizationService da usare per la traduzione
|
|
12
|
-
*
|
|
13
|
-
* @param {Type<LocalizationService>} loc Tipo ereditato dal LocalizationService che può essere creato a runtime sotto contesto della DI di Angular
|
|
14
|
-
*/
|
|
15
|
-
export declare function ExportLocalization(loc: Type<LocalizationService>): <T extends new (...args: any[]) => {}>(constructor: T) => {
|
|
16
|
-
new (...args: any[]): {
|
|
17
|
-
__loc__: Type<LocalizationService>;
|
|
18
|
-
};
|
|
19
|
-
} & T;
|
|
20
|
-
/**
|
|
21
|
-
* Decoratore di esportazione utilizzabile su una proprietà singola.
|
|
22
|
-
* Verranno generate 3 proprietà che gestiranno l'esportazione: (prop, prop_csvvis, prop_csvhdr).
|
|
23
|
-
*
|
|
24
|
-
* Ad esempio, da questa configurazione:
|
|
25
|
-
*
|
|
26
|
-
* @example
|
|
27
|
-
* ```
|
|
28
|
-
* @Export(true, "MyHeader")
|
|
29
|
-
* ciao: string;
|
|
30
|
-
* ```
|
|
31
|
-
*
|
|
32
|
-
* Nasceranno le seguenti proprietà nell'oggetto esportabile:
|
|
33
|
-
*
|
|
34
|
-
* @example
|
|
35
|
-
* ```
|
|
36
|
-
* ciao_csvvis: string; => true
|
|
37
|
-
* ciao: string;
|
|
38
|
-
* ciao_csvhdr: string => "MyHeader"
|
|
39
|
-
* ```
|
|
40
|
-
*
|
|
41
|
-
* @param {number} order Ordine di esportazione. Più piccolo è, prima appare il valore
|
|
42
|
-
* @param {string} header Titolo della colonna nel file CSV esportato
|
|
43
|
-
* @param {string} format Formato di esportazione. Può essere un formato data per i campi data o 'F' per i campi floating point
|
|
44
|
-
*/
|
|
45
|
-
export declare const Export: (order: number, header: string, format?: string, tableid?: string) => (target: Object, propertyKey: string) => void;
|
|
46
|
-
/**
|
|
47
|
-
* Decoratore di esportazione utilizzabile su un oggetto.
|
|
48
|
-
* Per ogni proprietà dell'oggetto verranno generate 3 proprietà che gestiranno l'esportazione: (prop, prop_csvvis, prop_csvhdr).
|
|
49
|
-
* Per essere esportate, le proprietà dell'oggetto devono essere marcate con i Decoratori di esportazione
|
|
50
|
-
*
|
|
51
|
-
* Ad esempio, da questa configurazione:
|
|
52
|
-
*
|
|
53
|
-
* @example
|
|
54
|
-
* ```
|
|
55
|
-
* MyObj {
|
|
56
|
-
* @Export(true, "MyHeader")
|
|
57
|
-
* ciao: string;
|
|
58
|
-
* }
|
|
59
|
-
*
|
|
60
|
-
* @ExportObject(true, "MyHeader")
|
|
61
|
-
* test: MyObj;
|
|
62
|
-
* ```
|
|
63
|
-
*
|
|
64
|
-
* Nasceranno le seguenti proprietà nell'oggetto esportabile:
|
|
65
|
-
*
|
|
66
|
-
* @example
|
|
67
|
-
* ```
|
|
68
|
-
* testciao: string; => Valore di MyObj.ciao
|
|
69
|
-
* testciao_csvvis: string; => true
|
|
70
|
-
* testciao_csvhdr: string => "MyHeader"
|
|
71
|
-
* ```
|
|
72
|
-
*
|
|
73
|
-
* @param {number} order Ordine di esportazione. Più piccolo è, prima appare il valore
|
|
74
|
-
* @param {any} type Tipo da esportare
|
|
75
|
-
*/
|
|
76
|
-
export declare const ExportAs: (order: number, type: any, prefix?: string) => (target: Object, propertyKey: string) => void;
|
|
77
|
-
/**
|
|
78
|
-
* Decoratore di esportazione utilizzabile su una lista,
|
|
79
|
-
* si utilizzano 2 navigator rispettivamente per la valorizzazione dell'Header e del Valore e
|
|
80
|
-
* per ogni elemento dell'array verranno generate 3 proprietà che gestiranno l'esportazione: (prop, prop_csvvis, prop_csvhdr)
|
|
81
|
-
*
|
|
82
|
-
* ATTENZIONE: Gli oggetti esportati in questa modalità non devono presentare altri tag di tipo @Export{...} all'interno. Fa tutto questo decoratore
|
|
83
|
-
*
|
|
84
|
-
* I navigator hanno questa convenzione:
|
|
85
|
-
*
|
|
86
|
-
* . --> divide due proprietà da richiamare consecutivamente: "a.b" richiamerà "obj.a.b";
|
|
87
|
-
*
|
|
88
|
-
* | --> divide più proprietà per le concatenazioni con uno spazio fra una e l'altra: "regdesc|slice.slicename" diventerà obj.regdesc + " " + obj.slice.slicename
|
|
89
|
-
*
|
|
90
|
-
* @param {number} order Ordine di esportazione. Più piccolo è, prima appare il valore
|
|
91
|
-
* @param {string} headernavigator Navigator col compito di selezionare il titolo per la colonna
|
|
92
|
-
* @param {string} valuenavigator Navigator col compito di selezionare il valore per la colonna
|
|
93
|
-
* @param {string} valueformat Formato di esportazione per i valori selezionati dal **valuenavigator**. Può essere un formato data per i campi data o 'F' per i campi floating point
|
|
94
|
-
*/
|
|
95
|
-
export declare const ExportList: (order: number, headernavigator: string, valuenavigator: string, valueformat?: string) => (target: Object, propertyKey: string) => void;
|
|
96
|
-
/**
|
|
97
|
-
* Decoratore di esportazione utilizzabile su un dizionario. Se ad esempio si vogliono generare le colonne
|
|
98
|
-
*
|
|
99
|
-
* Valore A = 1
|
|
100
|
-
*
|
|
101
|
-
* Valore B = 2
|
|
102
|
-
*
|
|
103
|
-
* Valore C = 3
|
|
104
|
-
*
|
|
105
|
-
* partendo da un oggetto iniziale { Valore { A: 1, B: 2, C: 3 } }
|
|
106
|
-
*
|
|
107
|
-
* @param {number} order Ordine di esportazione. Più piccolo è, prima appare il valore
|
|
108
|
-
* @param {string} headerprefix Prefisso per l'header
|
|
109
|
-
* @param {string} valueprefix Prefisso per il valore
|
|
110
|
-
*/
|
|
111
|
-
export declare const ExportDictionary: (order: number, headerprefix: string, valueprefix: string) => (target: Object, propertyKey: string) => void;
|
|
112
|
-
/**
|
|
113
|
-
* Service che si occupa dell'esportazione degli oggetti marcati dai Decoratori **ExportDictionary**, **ExportList**, **ExportAs** o **Export**
|
|
114
|
-
*/
|
|
115
|
-
export declare class ExportService {
|
|
116
|
-
private dates;
|
|
117
|
-
private utiExts;
|
|
118
|
-
private lc;
|
|
119
|
-
/**
|
|
120
|
-
* Costruttore
|
|
121
|
-
*
|
|
122
|
-
* @ignore
|
|
123
|
-
*/
|
|
124
|
-
constructor(dates: DateService, utiExts: UtilityService, lc: LocalizationService);
|
|
125
|
-
/**
|
|
126
|
-
* Data una lista di oggetti genera gli header per l'esportazione e integra ogni oggetto con le proprietà esportabili dalla libreria **@ctrl/ngx-csv**
|
|
127
|
-
*
|
|
128
|
-
* @param {any[]} objs Oggetti da esportare
|
|
129
|
-
*
|
|
130
|
-
* @returns {CsvHeaders[]} Header di esportazione già ordinati correttamente
|
|
131
|
-
*/
|
|
132
|
-
setupForExport(objs: any[], columns?: string[]): CsvHeaders[];
|
|
133
|
-
/**
|
|
134
|
-
* Data una lista di oggetti generici genera gli header per l'esportazione e integra ogni oggetto con le proprietà esportabili dalla libreria **@ctrl/ngx-csv**
|
|
135
|
-
*
|
|
136
|
-
* @param {GenericItem[]} objs Oggetti generici da esportare
|
|
137
|
-
* @param {CsvHeaders[]} columns Colonne richieste dall'esportazione
|
|
138
|
-
*
|
|
139
|
-
* @returns {CsvHeaders[]} Header di esportazione già ordinati correttamente
|
|
140
|
-
*/
|
|
141
|
-
setupForGenericExport(objs: GenericItem[], columns: CsvHeaders[]): CsvHeaders[];
|
|
142
|
-
/**
|
|
143
|
-
* Dato un oggetto generico genera gli header per l'esportazione e lo integra con le proprietà esportabili dalla libreria **@ctrl/ngx-csv**
|
|
144
|
-
*
|
|
145
|
-
* Metodo interno richiamato da **setupForGenericExport**
|
|
146
|
-
*
|
|
147
|
-
* @param {GenericItem} obj Oggetto generico da esportare
|
|
148
|
-
* @param {CsvColumn[]} columns Colonne richieste dall'esportazione
|
|
149
|
-
*
|
|
150
|
-
* @returns {CsvHeaders[]} Header di esportazione già ordinati correttamente
|
|
151
|
-
*/
|
|
152
|
-
private parseAndGetGenericHeaders;
|
|
153
|
-
/**
|
|
154
|
-
* Dato un oggetto genera gli header per l'esportazione e lo integra con le proprietà esportabili dalla libreria **@ctrl/ngx-csv**
|
|
155
|
-
*
|
|
156
|
-
* Metodo interno richiamato da **setupForExport**
|
|
157
|
-
*
|
|
158
|
-
* @param {any} obj Oggetto generico da esportare
|
|
159
|
-
*
|
|
160
|
-
* @returns {CsvHeaders[]} Header di esportazione già ordinati correttamente
|
|
161
|
-
*/
|
|
162
|
-
private parseAndGetHeaders;
|
|
163
|
-
/**
|
|
164
|
-
* Setup per l'esportazione di una singola proprietà.
|
|
165
|
-
* Viene generato l'header e la proprietà relativa al valore formattato o no
|
|
166
|
-
*
|
|
167
|
-
* @param {any} obj Oggetto di cui esportare la proprietà **prop**
|
|
168
|
-
* @param {string} prop Proprietà da esportare
|
|
169
|
-
* @param {CsvHeaders} headers Contenitore degli header, verrà riempito da questa funzione
|
|
170
|
-
* @param {LocalizationService} loc Servizio di localizzazione che traduce tutti i nomi che può
|
|
171
|
-
*/
|
|
172
|
-
private parseProperty;
|
|
173
|
-
/**
|
|
174
|
-
* Setup per l'esportazione di una singola proprietà da un oggetto.
|
|
175
|
-
* Viene generato l'header e la proprietà relativa al valore formattato o no.
|
|
176
|
-
*
|
|
177
|
-
* Per ottenere il valore e l'header della proprietà vengono utilizzati i navigatori auto-generati nel decoratore **ExportAs**
|
|
178
|
-
*
|
|
179
|
-
* @param {any} obj Oggetto di cui esportare la proprietà **prop**
|
|
180
|
-
* @param {string} prop Proprietà da esportare
|
|
181
|
-
* @param {CsvHeaders} headers Contenitore degli header, verrà riempito da questa funzione
|
|
182
|
-
* @param {LocalizationService} loc Servizio di localizzazione che traduce tutti i nomi che può
|
|
183
|
-
*/
|
|
184
|
-
private parseObject;
|
|
185
|
-
/**
|
|
186
|
-
* Setup per l'esportazione di una lista di valori pivottati dinamicamente:
|
|
187
|
-
*
|
|
188
|
-
* => Recupero il valore utilizzando i navigatori
|
|
189
|
-
*
|
|
190
|
-
* => Recupero l'header utilizzando i navigatori
|
|
191
|
-
*
|
|
192
|
-
* => Con il valore ci creo la property
|
|
193
|
-
*
|
|
194
|
-
* => Con l'header e il riferimento alla property appena creata creo un record negli header da esportare
|
|
195
|
-
*
|
|
196
|
-
* @param {any} obj Oggetto di cui esportare la proprietà **prop**
|
|
197
|
-
* @param {string} prop Proprietà da esportare
|
|
198
|
-
* @param {CsvHeaders} headers Contenitore degli header, verrà riempito da questa funzione
|
|
199
|
-
* @param {LocalizationService} loc Servizio di localizzazione che traduce tutti i nomi che può
|
|
200
|
-
*/
|
|
201
|
-
private parseList;
|
|
202
|
-
/**
|
|
203
|
-
* Setup per l'esportazione di una lista di valori pivottati dinamicamente:
|
|
204
|
-
*
|
|
205
|
-
* => Recupero il valore utilizzando i navigatori
|
|
206
|
-
*
|
|
207
|
-
* => Recupero l'header utilizzando i navigatori
|
|
208
|
-
*
|
|
209
|
-
* => Con il valore ci creo la property
|
|
210
|
-
*
|
|
211
|
-
* => Con l'header e il riferimento alla property appena creata creo un record negli header da esportare
|
|
212
|
-
*
|
|
213
|
-
* @param {any} obj Oggetto di cui esportare la proprietà **prop**
|
|
214
|
-
* @param {string} prop Proprietà da esportare
|
|
215
|
-
* @param {CsvHeaders} headers Contenitore degli header, verrà riempito da questa funzione
|
|
216
|
-
*/
|
|
217
|
-
private parseDictionary;
|
|
218
|
-
/**
|
|
219
|
-
* Effettua l'esportazione in file CSV
|
|
220
|
-
*/
|
|
221
|
-
private exportCSV;
|
|
222
|
-
/** Cache del modulo per l'esportazione Excel */
|
|
223
|
-
private ExcelJS;
|
|
224
|
-
/** Effettua l'esportazione del file Excel basandosi sul modulo **ExcelJS**, sugli header **headers** e sui dati **data** */
|
|
225
|
-
private exportExcel;
|
|
226
|
-
/**
|
|
227
|
-
* Metodo che effettivamente genera gli header e i dati per l'esportazione con **ngx-csv**
|
|
228
|
-
*
|
|
229
|
-
* @param {any[]} items Oggetti da esportare
|
|
230
|
-
*/
|
|
231
|
-
export(items: any[], format: 'CSV' | 'XLSX', fileName: string, type: Type<any>, columnsFilter?: string[], genericHeaders?: CsvHeaders[]): CsvHeaders[];
|
|
232
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ExportService, never>;
|
|
233
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<ExportService>;
|
|
234
|
-
}
|
|
1
|
+
import { Type } from "@angular/core";
|
|
2
|
+
import { LocalizationService } from "@esfaenza/localizations";
|
|
3
|
+
import { DateService } from './extensions.dates.service';
|
|
4
|
+
import { UtilityService } from "./extensions.utilities.service";
|
|
5
|
+
import { CsvHeaders } from "../models/CsvHeaders";
|
|
6
|
+
import { GenericItem } from "../models/GenericItem";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
/**
|
|
9
|
+
* Decoratore che fornisce la classe di localizzazione per tutte le proprietà esportate con @Export e qualsiasi altro tag che richieda localizzazioni.
|
|
10
|
+
*
|
|
11
|
+
* Sostanzilamente aggiunge la proprietà **__loc__** all'oggetto creato dalla classe corrente assegnandogli come valore il tipo del LocalizationService da usare per la traduzione
|
|
12
|
+
*
|
|
13
|
+
* @param {Type<LocalizationService>} loc Tipo ereditato dal LocalizationService che può essere creato a runtime sotto contesto della DI di Angular
|
|
14
|
+
*/
|
|
15
|
+
export declare function ExportLocalization(loc: Type<LocalizationService>): <T extends new (...args: any[]) => {}>(constructor: T) => {
|
|
16
|
+
new (...args: any[]): {
|
|
17
|
+
__loc__: Type<LocalizationService>;
|
|
18
|
+
};
|
|
19
|
+
} & T;
|
|
20
|
+
/**
|
|
21
|
+
* Decoratore di esportazione utilizzabile su una proprietà singola.
|
|
22
|
+
* Verranno generate 3 proprietà che gestiranno l'esportazione: (prop, prop_csvvis, prop_csvhdr).
|
|
23
|
+
*
|
|
24
|
+
* Ad esempio, da questa configurazione:
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```
|
|
28
|
+
* @Export(true, "MyHeader")
|
|
29
|
+
* ciao: string;
|
|
30
|
+
* ```
|
|
31
|
+
*
|
|
32
|
+
* Nasceranno le seguenti proprietà nell'oggetto esportabile:
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```
|
|
36
|
+
* ciao_csvvis: string; => true
|
|
37
|
+
* ciao: string;
|
|
38
|
+
* ciao_csvhdr: string => "MyHeader"
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* @param {number} order Ordine di esportazione. Più piccolo è, prima appare il valore
|
|
42
|
+
* @param {string} header Titolo della colonna nel file CSV esportato
|
|
43
|
+
* @param {string} format Formato di esportazione. Può essere un formato data per i campi data o 'F' per i campi floating point
|
|
44
|
+
*/
|
|
45
|
+
export declare const Export: (order: number, header: string, format?: string, tableid?: string) => (target: Object, propertyKey: string) => void;
|
|
46
|
+
/**
|
|
47
|
+
* Decoratore di esportazione utilizzabile su un oggetto.
|
|
48
|
+
* Per ogni proprietà dell'oggetto verranno generate 3 proprietà che gestiranno l'esportazione: (prop, prop_csvvis, prop_csvhdr).
|
|
49
|
+
* Per essere esportate, le proprietà dell'oggetto devono essere marcate con i Decoratori di esportazione
|
|
50
|
+
*
|
|
51
|
+
* Ad esempio, da questa configurazione:
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```
|
|
55
|
+
* MyObj {
|
|
56
|
+
* @Export(true, "MyHeader")
|
|
57
|
+
* ciao: string;
|
|
58
|
+
* }
|
|
59
|
+
*
|
|
60
|
+
* @ExportObject(true, "MyHeader")
|
|
61
|
+
* test: MyObj;
|
|
62
|
+
* ```
|
|
63
|
+
*
|
|
64
|
+
* Nasceranno le seguenti proprietà nell'oggetto esportabile:
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```
|
|
68
|
+
* testciao: string; => Valore di MyObj.ciao
|
|
69
|
+
* testciao_csvvis: string; => true
|
|
70
|
+
* testciao_csvhdr: string => "MyHeader"
|
|
71
|
+
* ```
|
|
72
|
+
*
|
|
73
|
+
* @param {number} order Ordine di esportazione. Più piccolo è, prima appare il valore
|
|
74
|
+
* @param {any} type Tipo da esportare
|
|
75
|
+
*/
|
|
76
|
+
export declare const ExportAs: (order: number, type: any, prefix?: string) => (target: Object, propertyKey: string) => void;
|
|
77
|
+
/**
|
|
78
|
+
* Decoratore di esportazione utilizzabile su una lista,
|
|
79
|
+
* si utilizzano 2 navigator rispettivamente per la valorizzazione dell'Header e del Valore e
|
|
80
|
+
* per ogni elemento dell'array verranno generate 3 proprietà che gestiranno l'esportazione: (prop, prop_csvvis, prop_csvhdr)
|
|
81
|
+
*
|
|
82
|
+
* ATTENZIONE: Gli oggetti esportati in questa modalità non devono presentare altri tag di tipo @Export{...} all'interno. Fa tutto questo decoratore
|
|
83
|
+
*
|
|
84
|
+
* I navigator hanno questa convenzione:
|
|
85
|
+
*
|
|
86
|
+
* . --> divide due proprietà da richiamare consecutivamente: "a.b" richiamerà "obj.a.b";
|
|
87
|
+
*
|
|
88
|
+
* | --> divide più proprietà per le concatenazioni con uno spazio fra una e l'altra: "regdesc|slice.slicename" diventerà obj.regdesc + " " + obj.slice.slicename
|
|
89
|
+
*
|
|
90
|
+
* @param {number} order Ordine di esportazione. Più piccolo è, prima appare il valore
|
|
91
|
+
* @param {string} headernavigator Navigator col compito di selezionare il titolo per la colonna
|
|
92
|
+
* @param {string} valuenavigator Navigator col compito di selezionare il valore per la colonna
|
|
93
|
+
* @param {string} valueformat Formato di esportazione per i valori selezionati dal **valuenavigator**. Può essere un formato data per i campi data o 'F' per i campi floating point
|
|
94
|
+
*/
|
|
95
|
+
export declare const ExportList: (order: number, headernavigator: string, valuenavigator: string, valueformat?: string) => (target: Object, propertyKey: string) => void;
|
|
96
|
+
/**
|
|
97
|
+
* Decoratore di esportazione utilizzabile su un dizionario. Se ad esempio si vogliono generare le colonne
|
|
98
|
+
*
|
|
99
|
+
* Valore A = 1
|
|
100
|
+
*
|
|
101
|
+
* Valore B = 2
|
|
102
|
+
*
|
|
103
|
+
* Valore C = 3
|
|
104
|
+
*
|
|
105
|
+
* partendo da un oggetto iniziale { Valore { A: 1, B: 2, C: 3 } }
|
|
106
|
+
*
|
|
107
|
+
* @param {number} order Ordine di esportazione. Più piccolo è, prima appare il valore
|
|
108
|
+
* @param {string} headerprefix Prefisso per l'header
|
|
109
|
+
* @param {string} valueprefix Prefisso per il valore
|
|
110
|
+
*/
|
|
111
|
+
export declare const ExportDictionary: (order: number, headerprefix: string, valueprefix: string) => (target: Object, propertyKey: string) => void;
|
|
112
|
+
/**
|
|
113
|
+
* Service che si occupa dell'esportazione degli oggetti marcati dai Decoratori **ExportDictionary**, **ExportList**, **ExportAs** o **Export**
|
|
114
|
+
*/
|
|
115
|
+
export declare class ExportService {
|
|
116
|
+
private dates;
|
|
117
|
+
private utiExts;
|
|
118
|
+
private lc;
|
|
119
|
+
/**
|
|
120
|
+
* Costruttore
|
|
121
|
+
*
|
|
122
|
+
* @ignore
|
|
123
|
+
*/
|
|
124
|
+
constructor(dates: DateService, utiExts: UtilityService, lc: LocalizationService);
|
|
125
|
+
/**
|
|
126
|
+
* Data una lista di oggetti genera gli header per l'esportazione e integra ogni oggetto con le proprietà esportabili dalla libreria **@ctrl/ngx-csv**
|
|
127
|
+
*
|
|
128
|
+
* @param {any[]} objs Oggetti da esportare
|
|
129
|
+
*
|
|
130
|
+
* @returns {CsvHeaders[]} Header di esportazione già ordinati correttamente
|
|
131
|
+
*/
|
|
132
|
+
setupForExport(objs: any[], columns?: string[]): CsvHeaders[];
|
|
133
|
+
/**
|
|
134
|
+
* Data una lista di oggetti generici genera gli header per l'esportazione e integra ogni oggetto con le proprietà esportabili dalla libreria **@ctrl/ngx-csv**
|
|
135
|
+
*
|
|
136
|
+
* @param {GenericItem[]} objs Oggetti generici da esportare
|
|
137
|
+
* @param {CsvHeaders[]} columns Colonne richieste dall'esportazione
|
|
138
|
+
*
|
|
139
|
+
* @returns {CsvHeaders[]} Header di esportazione già ordinati correttamente
|
|
140
|
+
*/
|
|
141
|
+
setupForGenericExport(objs: GenericItem[], columns: CsvHeaders[]): CsvHeaders[];
|
|
142
|
+
/**
|
|
143
|
+
* Dato un oggetto generico genera gli header per l'esportazione e lo integra con le proprietà esportabili dalla libreria **@ctrl/ngx-csv**
|
|
144
|
+
*
|
|
145
|
+
* Metodo interno richiamato da **setupForGenericExport**
|
|
146
|
+
*
|
|
147
|
+
* @param {GenericItem} obj Oggetto generico da esportare
|
|
148
|
+
* @param {CsvColumn[]} columns Colonne richieste dall'esportazione
|
|
149
|
+
*
|
|
150
|
+
* @returns {CsvHeaders[]} Header di esportazione già ordinati correttamente
|
|
151
|
+
*/
|
|
152
|
+
private parseAndGetGenericHeaders;
|
|
153
|
+
/**
|
|
154
|
+
* Dato un oggetto genera gli header per l'esportazione e lo integra con le proprietà esportabili dalla libreria **@ctrl/ngx-csv**
|
|
155
|
+
*
|
|
156
|
+
* Metodo interno richiamato da **setupForExport**
|
|
157
|
+
*
|
|
158
|
+
* @param {any} obj Oggetto generico da esportare
|
|
159
|
+
*
|
|
160
|
+
* @returns {CsvHeaders[]} Header di esportazione già ordinati correttamente
|
|
161
|
+
*/
|
|
162
|
+
private parseAndGetHeaders;
|
|
163
|
+
/**
|
|
164
|
+
* Setup per l'esportazione di una singola proprietà.
|
|
165
|
+
* Viene generato l'header e la proprietà relativa al valore formattato o no
|
|
166
|
+
*
|
|
167
|
+
* @param {any} obj Oggetto di cui esportare la proprietà **prop**
|
|
168
|
+
* @param {string} prop Proprietà da esportare
|
|
169
|
+
* @param {CsvHeaders} headers Contenitore degli header, verrà riempito da questa funzione
|
|
170
|
+
* @param {LocalizationService} loc Servizio di localizzazione che traduce tutti i nomi che può
|
|
171
|
+
*/
|
|
172
|
+
private parseProperty;
|
|
173
|
+
/**
|
|
174
|
+
* Setup per l'esportazione di una singola proprietà da un oggetto.
|
|
175
|
+
* Viene generato l'header e la proprietà relativa al valore formattato o no.
|
|
176
|
+
*
|
|
177
|
+
* Per ottenere il valore e l'header della proprietà vengono utilizzati i navigatori auto-generati nel decoratore **ExportAs**
|
|
178
|
+
*
|
|
179
|
+
* @param {any} obj Oggetto di cui esportare la proprietà **prop**
|
|
180
|
+
* @param {string} prop Proprietà da esportare
|
|
181
|
+
* @param {CsvHeaders} headers Contenitore degli header, verrà riempito da questa funzione
|
|
182
|
+
* @param {LocalizationService} loc Servizio di localizzazione che traduce tutti i nomi che può
|
|
183
|
+
*/
|
|
184
|
+
private parseObject;
|
|
185
|
+
/**
|
|
186
|
+
* Setup per l'esportazione di una lista di valori pivottati dinamicamente:
|
|
187
|
+
*
|
|
188
|
+
* => Recupero il valore utilizzando i navigatori
|
|
189
|
+
*
|
|
190
|
+
* => Recupero l'header utilizzando i navigatori
|
|
191
|
+
*
|
|
192
|
+
* => Con il valore ci creo la property
|
|
193
|
+
*
|
|
194
|
+
* => Con l'header e il riferimento alla property appena creata creo un record negli header da esportare
|
|
195
|
+
*
|
|
196
|
+
* @param {any} obj Oggetto di cui esportare la proprietà **prop**
|
|
197
|
+
* @param {string} prop Proprietà da esportare
|
|
198
|
+
* @param {CsvHeaders} headers Contenitore degli header, verrà riempito da questa funzione
|
|
199
|
+
* @param {LocalizationService} loc Servizio di localizzazione che traduce tutti i nomi che può
|
|
200
|
+
*/
|
|
201
|
+
private parseList;
|
|
202
|
+
/**
|
|
203
|
+
* Setup per l'esportazione di una lista di valori pivottati dinamicamente:
|
|
204
|
+
*
|
|
205
|
+
* => Recupero il valore utilizzando i navigatori
|
|
206
|
+
*
|
|
207
|
+
* => Recupero l'header utilizzando i navigatori
|
|
208
|
+
*
|
|
209
|
+
* => Con il valore ci creo la property
|
|
210
|
+
*
|
|
211
|
+
* => Con l'header e il riferimento alla property appena creata creo un record negli header da esportare
|
|
212
|
+
*
|
|
213
|
+
* @param {any} obj Oggetto di cui esportare la proprietà **prop**
|
|
214
|
+
* @param {string} prop Proprietà da esportare
|
|
215
|
+
* @param {CsvHeaders} headers Contenitore degli header, verrà riempito da questa funzione
|
|
216
|
+
*/
|
|
217
|
+
private parseDictionary;
|
|
218
|
+
/**
|
|
219
|
+
* Effettua l'esportazione in file CSV
|
|
220
|
+
*/
|
|
221
|
+
private exportCSV;
|
|
222
|
+
/** Cache del modulo per l'esportazione Excel */
|
|
223
|
+
private ExcelJS;
|
|
224
|
+
/** Effettua l'esportazione del file Excel basandosi sul modulo **ExcelJS**, sugli header **headers** e sui dati **data** */
|
|
225
|
+
private exportExcel;
|
|
226
|
+
/**
|
|
227
|
+
* Metodo che effettivamente genera gli header e i dati per l'esportazione con **ngx-csv**
|
|
228
|
+
*
|
|
229
|
+
* @param {any[]} items Oggetti da esportare
|
|
230
|
+
*/
|
|
231
|
+
export(items: any[], format: 'CSV' | 'XLSX', fileName: string, type: Type<any>, columnsFilter?: string[], genericHeaders?: CsvHeaders[]): CsvHeaders[];
|
|
232
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ExportService, never>;
|
|
233
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ExportService>;
|
|
234
|
+
}
|