@esfaenza/preferences 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-preferences.mjs +4 -4
- package/esm2022/lib/models/PreferencesModuleConfig.mjs +25 -25
- package/esm2022/lib/persistor/base/CachePersistor.mjs +31 -31
- package/esm2022/lib/persistor/base/IBasePersistor.mjs +1 -1
- package/esm2022/lib/persistor/base/PreferencesPersistor.mjs +33 -33
- package/esm2022/lib/persistor/implementation/LocalStorageCachePersistor.mjs +51 -51
- package/esm2022/lib/persistor/implementation/LocalStoragePreferencesPersistor.mjs +51 -51
- package/esm2022/lib/preferences.module.mjs +33 -33
- package/esm2022/lib/services/base/IBaseStorage.mjs +1 -1
- package/esm2022/lib/services/base/base.service.mjs +140 -140
- package/esm2022/lib/services/cache.service.mjs +24 -24
- package/esm2022/lib/services/preferences.service.mjs +24 -24
- package/esm2022/lib/session/base/BaseSessionRetriever.mjs +5 -5
- package/esm2022/lib/session/implementation/DefaultSessionRetriever.mjs +27 -27
- package/esm2022/lib/tokens.mjs +9 -9
- package/esm2022/public-api.mjs +10 -10
- package/fesm2022/esfaenza-preferences.mjs +392 -392
- package/fesm2022/esfaenza-preferences.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/models/PreferencesModuleConfig.d.ts +29 -29
- package/lib/persistor/base/CachePersistor.d.ts +57 -57
- package/lib/persistor/base/IBasePersistor.d.ts +17 -17
- package/lib/persistor/base/PreferencesPersistor.d.ts +59 -59
- package/lib/persistor/implementation/LocalStorageCachePersistor.d.ts +22 -22
- package/lib/persistor/implementation/LocalStoragePreferencesPersistor.d.ts +22 -22
- package/lib/preferences.module.d.ts +9 -9
- package/lib/services/base/IBaseStorage.d.ts +9 -9
- package/lib/services/base/base.service.d.ts +80 -80
- package/lib/services/cache.service.d.ts +10 -10
- package/lib/services/preferences.service.d.ts +10 -10
- package/lib/session/base/BaseSessionRetriever.d.ts +11 -11
- package/lib/session/implementation/DefaultSessionRetriever.d.ts +21 -21
- package/lib/tokens.d.ts +9 -9
- package/package.json +3 -3
- package/public-api.d.ts +10 -10
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
5
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNmYWVuemEtcHJlZmVyZW5jZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvZXNmYWVuemEtcHJlZmVyZW5jZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Classe di Configurazione per la libreria
|
|
3
|
-
*/
|
|
4
|
-
export class PreferencesModuleConfig {
|
|
5
|
-
/**
|
|
6
|
-
* Indica se recuperare autonomamente tutte le configurazioni salvate al bootstrap della libreria o se aspettare le richieste specifiche.
|
|
7
|
-
*
|
|
8
|
-
* Utile se non vengono salvate tante cose, potrebbe creare un momento di irresponsività se le info da recuperare sono molte
|
|
9
|
-
*/
|
|
10
|
-
retrieveAllAtStart;
|
|
11
|
-
/**
|
|
12
|
-
* Classe che si deve occupare dello store "Definitivo" delle preferenze. Di default viene proposto uno store lato localStorage ma si può facilmente
|
|
13
|
-
* fornire uno storage che porta le informazioni lato Database
|
|
14
|
-
*/
|
|
15
|
-
preferencePersistor;
|
|
16
|
-
/**
|
|
17
|
-
* Classe che si deve occupare dello store "Definitivo" delle cache. Di default viene proposto uno store lato localStorage ma si può facilmente
|
|
18
|
-
* fornire uno storage che porta le informazioni lato Database
|
|
19
|
-
*/
|
|
20
|
-
cachePersistor;
|
|
21
|
-
/** Classe che si deve occupare per generare un ID univoco di sessione in base al quale verranno salvate le preferenze */
|
|
22
|
-
sessionRetriever;
|
|
23
|
-
/** Attiva la modalità di debug per l'esposizione di messaggi significativi */
|
|
24
|
-
debugMode;
|
|
25
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* Classe di Configurazione per la libreria
|
|
3
|
+
*/
|
|
4
|
+
export class PreferencesModuleConfig {
|
|
5
|
+
/**
|
|
6
|
+
* Indica se recuperare autonomamente tutte le configurazioni salvate al bootstrap della libreria o se aspettare le richieste specifiche.
|
|
7
|
+
*
|
|
8
|
+
* Utile se non vengono salvate tante cose, potrebbe creare un momento di irresponsività se le info da recuperare sono molte
|
|
9
|
+
*/
|
|
10
|
+
retrieveAllAtStart;
|
|
11
|
+
/**
|
|
12
|
+
* Classe che si deve occupare dello store "Definitivo" delle preferenze. Di default viene proposto uno store lato localStorage ma si può facilmente
|
|
13
|
+
* fornire uno storage che porta le informazioni lato Database
|
|
14
|
+
*/
|
|
15
|
+
preferencePersistor;
|
|
16
|
+
/**
|
|
17
|
+
* Classe che si deve occupare dello store "Definitivo" delle cache. Di default viene proposto uno store lato localStorage ma si può facilmente
|
|
18
|
+
* fornire uno storage che porta le informazioni lato Database
|
|
19
|
+
*/
|
|
20
|
+
cachePersistor;
|
|
21
|
+
/** Classe che si deve occupare per generare un ID univoco di sessione in base al quale verranno salvate le preferenze */
|
|
22
|
+
sessionRetriever;
|
|
23
|
+
/** Attiva la modalità di debug per l'esposizione di messaggi significativi */
|
|
24
|
+
debugMode;
|
|
25
|
+
}
|
|
26
26
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJlZmVyZW5jZXNNb2R1bGVDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL21vZGVscy9QcmVmZXJlbmNlc01vZHVsZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQTs7R0FFRztBQUNILE1BQU0sT0FBTyx1QkFBdUI7SUFFaEM7Ozs7T0FJRztJQUNILGtCQUFrQixDQUFXO0lBRTdCOzs7T0FHRztJQUNILG1CQUFtQixDQUE4QjtJQUVoRDs7O01BR0U7SUFDSCxjQUFjLENBQXdCO0lBRXRDLHlIQUF5SDtJQUN6SCxnQkFBZ0IsQ0FBOEI7SUFFOUMsOEVBQThFO0lBQzlFLFNBQVMsQ0FBVztDQUN2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR5cGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBDYWNoZVBlcnNpc3RvciB9IGZyb20gXCIuLi9wZXJzaXN0b3IvYmFzZS9DYWNoZVBlcnNpc3RvclwiO1xyXG5pbXBvcnQgeyBQcmVmZXJlbmNlc1BlcnNpc3RvciB9IGZyb20gXCIuLi9wZXJzaXN0b3IvYmFzZS9QcmVmZXJlbmNlc1BlcnNpc3RvclwiO1xyXG5pbXBvcnQgeyBCYXNlU2Vzc2lvblJldHJpZXZlciB9IGZyb20gXCIuLi9zZXNzaW9uL2Jhc2UvQmFzZVNlc3Npb25SZXRyaWV2ZXJcIjtcclxuXHJcbi8qKlxyXG4gKiBDbGFzc2UgZGkgQ29uZmlndXJhemlvbmUgcGVyIGxhIGxpYnJlcmlhXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgUHJlZmVyZW5jZXNNb2R1bGVDb25maWd7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBJbmRpY2Egc2UgcmVjdXBlcmFyZSBhdXRvbm9tYW1lbnRlIHR1dHRlIGxlIGNvbmZpZ3VyYXppb25pIHNhbHZhdGUgYWwgYm9vdHN0cmFwIGRlbGxhIGxpYnJlcmlhIG8gc2UgYXNwZXR0YXJlIGxlIHJpY2hpZXN0ZSBzcGVjaWZpY2hlLlxyXG4gICAgICogXHJcbiAgICAgKiBVdGlsZSBzZSBub24gdmVuZ29ubyBzYWx2YXRlIHRhbnRlIGNvc2UsIHBvdHJlYmJlIGNyZWFyZSB1biBtb21lbnRvIGRpIGlycmVzcG9uc2l2aXTDoCBzZSBsZSBpbmZvIGRhIHJlY3VwZXJhcmUgc29ubyBtb2x0ZVxyXG4gICAgICovXHJcbiAgICByZXRyaWV2ZUFsbEF0U3RhcnQ/OiBib29sZWFuO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ2xhc3NlIGNoZSBzaSBkZXZlIG9jY3VwYXJlIGRlbGxvIHN0b3JlIFwiRGVmaW5pdGl2b1wiIGRlbGxlIHByZWZlcmVuemUuIERpIGRlZmF1bHQgdmllbmUgcHJvcG9zdG8gdW5vIHN0b3JlIGxhdG8gbG9jYWxTdG9yYWdlIG1hIHNpIHB1w7IgZmFjaWxtZW50ZSBcclxuICAgICAqIGZvcm5pcmUgdW5vIHN0b3JhZ2UgY2hlIHBvcnRhIGxlIGluZm9ybWF6aW9uaSBsYXRvIERhdGFiYXNlXHJcbiAgICAgKi9cclxuICAgIHByZWZlcmVuY2VQZXJzaXN0b3I/OiBUeXBlPFByZWZlcmVuY2VzUGVyc2lzdG9yPjtcclxuXHJcbiAgICAgLyoqXHJcbiAgICAgKiBDbGFzc2UgY2hlIHNpIGRldmUgb2NjdXBhcmUgZGVsbG8gc3RvcmUgXCJEZWZpbml0aXZvXCIgZGVsbGUgY2FjaGUuIERpIGRlZmF1bHQgdmllbmUgcHJvcG9zdG8gdW5vIHN0b3JlIGxhdG8gbG9jYWxTdG9yYWdlIG1hIHNpIHB1w7IgZmFjaWxtZW50ZSBcclxuICAgICAqIGZvcm5pcmUgdW5vIHN0b3JhZ2UgY2hlIHBvcnRhIGxlIGluZm9ybWF6aW9uaSBsYXRvIERhdGFiYXNlXHJcbiAgICAgKi9cclxuICAgIGNhY2hlUGVyc2lzdG9yPzogVHlwZTxDYWNoZVBlcnNpc3Rvcj47XHJcblxyXG4gICAgLyoqIENsYXNzZSBjaGUgc2kgZGV2ZSBvY2N1cGFyZSBwZXIgZ2VuZXJhcmUgdW4gSUQgdW5pdm9jbyBkaSBzZXNzaW9uZSBpbiBiYXNlIGFsIHF1YWxlIHZlcnJhbm5vIHNhbHZhdGUgbGUgcHJlZmVyZW56ZSAqL1xyXG4gICAgc2Vzc2lvblJldHJpZXZlcj86IFR5cGU8QmFzZVNlc3Npb25SZXRyaWV2ZXI+O1xyXG4gICAgXHJcbiAgICAvKiogQXR0aXZhIGxhIG1vZGFsaXTDoCBkaSBkZWJ1ZyBwZXIgbCdlc3Bvc2l6aW9uZSBkaSBtZXNzYWdnaSBzaWduaWZpY2F0aXZpICovXHJcbiAgICBkZWJ1Z01vZGU/OiBib29sZWFuO1xyXG59Il19
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { forkJoin } from "rxjs";
|
|
2
|
-
import { map } from "rxjs/operators";
|
|
3
|
-
/** Classe astratta che rappresenta lo stato di persistenza fra la libreria e uno storage */
|
|
4
|
-
export class CachePersistor {
|
|
5
|
-
session;
|
|
6
|
-
/** @ignore Costruttore */
|
|
7
|
-
constructor(session) {
|
|
8
|
-
this.session = session;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Effettua il **persist** massivo di una lista di Chiave - Valore
|
|
12
|
-
*
|
|
13
|
-
* @param {{ [key: string]: string }} dictionary Dizionario (lista di Chiave - Valore) da persistere
|
|
14
|
-
*/
|
|
15
|
-
persistAll(dictionary) {
|
|
16
|
-
let observables = [];
|
|
17
|
-
for (let key in dictionary)
|
|
18
|
-
observables.push(this.persist(key, dictionary[key]));
|
|
19
|
-
return forkJoin(observables).pipe(map(res => res.reduce((acc, val) => acc && val, true)));
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Ottiene la chiave "Reale" da utilizzare per la persistenza di una chiave generica
|
|
23
|
-
*
|
|
24
|
-
* @param {string} key Chiave da storicizzare
|
|
25
|
-
*
|
|
26
|
-
* @returns {string} Unione fra l'identificativo della sessione e la chiave specificata
|
|
27
|
-
*/
|
|
28
|
-
getKey(key) {
|
|
29
|
-
return this.session.getSessionKey() + "§" + key + "§";
|
|
30
|
-
}
|
|
31
|
-
}
|
|
1
|
+
import { forkJoin } from "rxjs";
|
|
2
|
+
import { map } from "rxjs/operators";
|
|
3
|
+
/** Classe astratta che rappresenta lo stato di persistenza fra la libreria e uno storage */
|
|
4
|
+
export class CachePersistor {
|
|
5
|
+
session;
|
|
6
|
+
/** @ignore Costruttore */
|
|
7
|
+
constructor(session) {
|
|
8
|
+
this.session = session;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Effettua il **persist** massivo di una lista di Chiave - Valore
|
|
12
|
+
*
|
|
13
|
+
* @param {{ [key: string]: string }} dictionary Dizionario (lista di Chiave - Valore) da persistere
|
|
14
|
+
*/
|
|
15
|
+
persistAll(dictionary) {
|
|
16
|
+
let observables = [];
|
|
17
|
+
for (let key in dictionary)
|
|
18
|
+
observables.push(this.persist(key, dictionary[key]));
|
|
19
|
+
return forkJoin(observables).pipe(map(res => res.reduce((acc, val) => acc && val, true)));
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Ottiene la chiave "Reale" da utilizzare per la persistenza di una chiave generica
|
|
23
|
+
*
|
|
24
|
+
* @param {string} key Chiave da storicizzare
|
|
25
|
+
*
|
|
26
|
+
* @returns {string} Unione fra l'identificativo della sessione e la chiave specificata
|
|
27
|
+
*/
|
|
28
|
+
getKey(key) {
|
|
29
|
+
return this.session.getSessionKey() + "§" + key + "§";
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
32
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGVQZXJzaXN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3BlcnNpc3Rvci9iYXNlL0NhY2hlUGVyc2lzdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXJDLDRGQUE0RjtBQUM1RixNQUFNLE9BQWdCLGNBQWM7SUFHVjtJQUR0QiwwQkFBMEI7SUFDMUIsWUFBc0IsT0FBNkI7UUFBN0IsWUFBTyxHQUFQLE9BQU8sQ0FBc0I7SUFBRyxDQUFDO0lBcUN2RDs7OztPQUlHO0lBQ0ksVUFBVSxDQUFDLFVBQXFDO1FBQ25ELElBQUksV0FBVyxHQUEwQixFQUFFLENBQUM7UUFDNUMsS0FBSyxJQUFJLEdBQUcsSUFBSSxVQUFVO1lBQ3RCLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV6RCxPQUFPLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsR0FBVztRQUNyQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUM7SUFDMUQsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZm9ya0pvaW4gfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgQmFzZVNlc3Npb25SZXRyaWV2ZXIgfSBmcm9tIFwiLi4vLi4vc2Vzc2lvbi9iYXNlL0Jhc2VTZXNzaW9uUmV0cmlldmVyXCI7XHJcbmltcG9ydCB7IElCYXNlUGVyc2lzdG9yIH0gZnJvbSBcIi4vSUJhc2VQZXJzaXN0b3JcIjtcclxuXHJcbi8qKiBDbGFzc2UgYXN0cmF0dGEgY2hlIHJhcHByZXNlbnRhIGxvIHN0YXRvIGRpIHBlcnNpc3RlbnphIGZyYSBsYSBsaWJyZXJpYSBlIHVubyBzdG9yYWdlICovXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDYWNoZVBlcnNpc3RvciBpbXBsZW1lbnRzIElCYXNlUGVyc2lzdG9yIHtcclxuXHJcbiAgICAvKiogQGlnbm9yZSBDb3N0cnV0dG9yZSAqL1xyXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIHNlc3Npb246IEJhc2VTZXNzaW9uUmV0cmlldmVyKSB7fVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogU2FsdmEsIHBlciB1bmEgc2Vzc2lvbmUsIHVuYSBjaGlhdmUgY29uIHVuIHZhbG9yZVxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5IENoaWF2ZSBkYSBzdG9yaWNpenphcmVcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFic3RyYWN0IHBlcnNpc3Q8VD4oa2V5OiBzdHJpbmcsIGl0ZW06IFQpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmVjdXBlcmEsIHBlciB1bmEgc2Vzc2lvbmUsIGlsIHZhbG9yZSBhc3NlZ25hdG8gYWQgdW5hIGNoaWF2ZVxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5IENoaWF2ZSBkYSByZWN1cGVyYXJlXHJcbiAgICAgKiBcclxuICAgICAqIEByZXR1cm5zIHtPYnNlcnZhYmxlPFQ+fSBWYWxvcmUgc2FsdmF0byBwZXIgbGEgY2hpYXZlICoqa2V5KipcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFic3RyYWN0IHJlY292ZXI8VD4oa2V5Pzogc3RyaW5nKTogT2JzZXJ2YWJsZTxUPjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFBlciB1bmEgc2Vzc2lvbmUgcmVjdXBlcmEgdHV0dGUgbGUgY29wcGllIENoaWF2ZSAtIFZhbG9yZSBzYWx2YXRlXHJcbiAgICAgKiBcclxuICAgICAqIEByZXR1cm5zIHtPYnNlcnZhYmxlPHsgW2luZGV4OiBzdHJpbmddOiBhbnkgfT59IERpemlvbmFyaW8gY29uIHR1dHRlIGxlIHByZWZlcmVuY2Ugc2FsdmF0ZSBwZXIgbGEgc2Vzc2lvbmVcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFic3RyYWN0IHJlY292ZXJBbGwoKTogT2JzZXJ2YWJsZTx7IFtpbmRleDogc3RyaW5nXTogYW55IH0+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogIFJpcHVsaXNjZSBsZSBwcmVmZXJlbmNlIHNhbHZhdGUgcmVsYXRpdmUgYWQgdW5hIHNlc3Npb25lXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhYnN0cmFjdCBjbGVhcigpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRWxpbWluYSB1biBvZ2dldHRvIGRhbGxhIGNhY2hlIHBlcnNpc3RpdGFcclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGtleSBDaGlhdmUgZGEgcmltdW92ZXJlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhYnN0cmFjdCByZW1vdmUoa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRWZmZXR0dWEgaWwgKipwZXJzaXN0KiogbWFzc2l2byBkaSB1bmEgbGlzdGEgZGkgQ2hpYXZlIC0gVmFsb3JlXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7eyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfX0gZGljdGlvbmFyeSBEaXppb25hcmlvIChsaXN0YSBkaSBDaGlhdmUgLSBWYWxvcmUpIGRhIHBlcnNpc3RlcmVcclxuICAgICAqL1xyXG4gICAgcHVibGljIHBlcnNpc3RBbGwoZGljdGlvbmFyeTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgICAgIGxldCBvYnNlcnZhYmxlczogT2JzZXJ2YWJsZTxib29sZWFuPltdID0gW107XHJcbiAgICAgICAgZm9yIChsZXQga2V5IGluIGRpY3Rpb25hcnkpXHJcbiAgICAgICAgICAgIG9ic2VydmFibGVzLnB1c2godGhpcy5wZXJzaXN0KGtleSwgZGljdGlvbmFyeVtrZXldKSk7XHJcblxyXG4gICAgICAgIHJldHVybiBmb3JrSm9pbihvYnNlcnZhYmxlcykucGlwZShtYXAocmVzID0+IHJlcy5yZWR1Y2UoKGFjYywgdmFsKSA9PiBhY2MgJiYgdmFsLCB0cnVlKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT3R0aWVuZSBsYSBjaGlhdmUgXCJSZWFsZVwiIGRhIHV0aWxpenphcmUgcGVyIGxhIHBlcnNpc3RlbnphIGRpIHVuYSBjaGlhdmUgZ2VuZXJpY2FcclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGtleSBDaGlhdmUgZGEgc3RvcmljaXp6YXJlXHJcbiAgICAgKiBcclxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9IFVuaW9uZSBmcmEgbCdpZGVudGlmaWNhdGl2byBkZWxsYSBzZXNzaW9uZSBlIGxhIGNoaWF2ZSBzcGVjaWZpY2F0YVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0S2V5KGtleTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZXNzaW9uLmdldFNlc3Npb25LZXkoKSArIFwiwqdcIiArIGtleSArIFwiwqdcIjtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUJhc2VQZXJzaXN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3BlcnNpc3Rvci9iYXNlL0lCYXNlUGVyc2lzdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbi8qKlxyXG4gKiBDbGFzc2UgYXN0cmF0dGEgY2hlIHJhcHByZXNlbnRhIGxvIHN0YXRvIGRpIHBlcnNpc3RlbnphIGZyYSBsYSBsaWJyZXJpYSBlIHVubyBzdG9yYWdlXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIElCYXNlUGVyc2lzdG9yIHtcclxuICAgIHBlcnNpc3Q8VD4oa2V5OiBzdHJpbmcsIGl0ZW06IFQpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gICAgcmVjb3ZlcjxUPihrZXk/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFQ+O1xyXG4gICAgcmVjb3ZlckFsbCgpOiBPYnNlcnZhYmxlPHsgW2luZGV4OiBzdHJpbmddOiBhbnkgfT47XHJcbiAgICBjbGVhcigpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gICAgcmVtb3ZlKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuICAgIHBlcnNpc3RBbGwoZGljdGlvbmFyeTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbiAgICBnZXRLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmc7XHJcbn0iXX0=
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
import { forkJoin } from "rxjs";
|
|
2
|
-
import { map } from "rxjs/operators";
|
|
3
|
-
/**
|
|
4
|
-
* Classe astratta che rappresenta lo stato di persistenza fra la libreria e uno storage
|
|
5
|
-
*/
|
|
6
|
-
export class PreferencesPersistor {
|
|
7
|
-
session;
|
|
8
|
-
/** @ignore Costruttore */
|
|
9
|
-
constructor(session) {
|
|
10
|
-
this.session = session;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Effettua il **persist** massivo di una lista di Chiave - Valore
|
|
14
|
-
*
|
|
15
|
-
* @param {{ [key: string]: string }} dictionary Dizionario (lista di Chiave - Valore) da persistere
|
|
16
|
-
*/
|
|
17
|
-
persistAll(dictionary) {
|
|
18
|
-
let observables = [];
|
|
19
|
-
for (let key in dictionary)
|
|
20
|
-
observables.push(this.persist(key, dictionary[key]));
|
|
21
|
-
return forkJoin(observables).pipe(map(res => res.reduce((acc, val) => acc && val, true)));
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Ottiene la chiave "Reale" da utilizzare per la persistenza di una chiave generica
|
|
25
|
-
*
|
|
26
|
-
* @param {string} key Chiave da storicizzare
|
|
27
|
-
*
|
|
28
|
-
* @returns {string} Unione fra l'identificativo della sessione e la chiave specificata
|
|
29
|
-
*/
|
|
30
|
-
getKey(key) {
|
|
31
|
-
return this.session.getSessionKey() + "§" + key + "§";
|
|
32
|
-
}
|
|
33
|
-
}
|
|
1
|
+
import { forkJoin } from "rxjs";
|
|
2
|
+
import { map } from "rxjs/operators";
|
|
3
|
+
/**
|
|
4
|
+
* Classe astratta che rappresenta lo stato di persistenza fra la libreria e uno storage
|
|
5
|
+
*/
|
|
6
|
+
export class PreferencesPersistor {
|
|
7
|
+
session;
|
|
8
|
+
/** @ignore Costruttore */
|
|
9
|
+
constructor(session) {
|
|
10
|
+
this.session = session;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Effettua il **persist** massivo di una lista di Chiave - Valore
|
|
14
|
+
*
|
|
15
|
+
* @param {{ [key: string]: string }} dictionary Dizionario (lista di Chiave - Valore) da persistere
|
|
16
|
+
*/
|
|
17
|
+
persistAll(dictionary) {
|
|
18
|
+
let observables = [];
|
|
19
|
+
for (let key in dictionary)
|
|
20
|
+
observables.push(this.persist(key, dictionary[key]));
|
|
21
|
+
return forkJoin(observables).pipe(map(res => res.reduce((acc, val) => acc && val, true)));
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Ottiene la chiave "Reale" da utilizzare per la persistenza di una chiave generica
|
|
25
|
+
*
|
|
26
|
+
* @param {string} key Chiave da storicizzare
|
|
27
|
+
*
|
|
28
|
+
* @returns {string} Unione fra l'identificativo della sessione e la chiave specificata
|
|
29
|
+
*/
|
|
30
|
+
getKey(key) {
|
|
31
|
+
return this.session.getSessionKey() + "§" + key + "§";
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
34
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJlZmVyZW5jZXNQZXJzaXN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3BlcnNpc3Rvci9iYXNlL1ByZWZlcmVuY2VzUGVyc2lzdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXJDOztHQUVHO0FBQ0gsTUFBTSxPQUFnQixvQkFBb0I7SUFHaEI7SUFEdEIsMEJBQTBCO0lBQzFCLFlBQXNCLE9BQTZCO1FBQTdCLFlBQU8sR0FBUCxPQUFPLENBQXNCO0lBQUcsQ0FBQztJQXFDdkQ7Ozs7T0FJRztJQUNJLFVBQVUsQ0FBQyxVQUFxQztRQUNuRCxJQUFJLFdBQVcsR0FBMEIsRUFBRSxDQUFDO1FBQzVDLEtBQUssSUFBSSxHQUFHLElBQUksVUFBVTtZQUN0QixXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFekQsT0FBTyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLEdBQVc7UUFDckIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQzFELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIGZvcmtKb2luIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IEJhc2VTZXNzaW9uUmV0cmlldmVyIH0gZnJvbSBcIi4uLy4uL3Nlc3Npb24vYmFzZS9CYXNlU2Vzc2lvblJldHJpZXZlclwiO1xyXG5pbXBvcnQgeyBJQmFzZVBlcnNpc3RvciB9IGZyb20gXCIuL0lCYXNlUGVyc2lzdG9yXCI7XHJcblxyXG4vKipcclxuICogQ2xhc3NlIGFzdHJhdHRhIGNoZSByYXBwcmVzZW50YSBsbyBzdGF0byBkaSBwZXJzaXN0ZW56YSBmcmEgbGEgbGlicmVyaWEgZSB1bm8gc3RvcmFnZVxyXG4gKi9cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFByZWZlcmVuY2VzUGVyc2lzdG9yIGltcGxlbWVudHMgSUJhc2VQZXJzaXN0b3Ige1xyXG5cclxuICAgIC8qKiBAaWdub3JlIENvc3RydXR0b3JlICovXHJcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgc2Vzc2lvbjogQmFzZVNlc3Npb25SZXRyaWV2ZXIpIHt9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBTYWx2YSwgcGVyIHVuYSBzZXNzaW9uZSwgdW5hIGNoaWF2ZSBjb24gdW4gdmFsb3JlXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRhIHN0b3JpY2l6emFyZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWJzdHJhY3QgcGVyc2lzdDxUPihrZXk6IHN0cmluZywgaXRlbTogVCk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZWN1cGVyYSwgcGVyIHVuYSBzZXNzaW9uZSwgaWwgdmFsb3JlIGFzc2VnbmF0byBhZCB1bmEgY2hpYXZlXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRhIHJlY3VwZXJhcmVcclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMge09ic2VydmFibGU8VD59IFZhbG9yZSBzYWx2YXRvIHBlciBsYSBjaGlhdmUgKiprZXkqKlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWJzdHJhY3QgcmVjb3ZlcjxUPihrZXk/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFQ+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogUGVyIHVuYSBzZXNzaW9uZSByZWN1cGVyYSB0dXR0ZSBsZSBjb3BwaWUgQ2hpYXZlIC0gVmFsb3JlIHNhbHZhdGVcclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMge09ic2VydmFibGU8eyBbaW5kZXg6IHN0cmluZ106IGFueSB9Pn0gRGl6aW9uYXJpbyBjb24gdHV0dGUgbGUgcHJlZmVyZW5jZSBzYWx2YXRlIHBlciBsYSBzZXNzaW9uZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWJzdHJhY3QgcmVjb3ZlckFsbCgpOiBPYnNlcnZhYmxlPHsgW2luZGV4OiBzdHJpbmddOiBhbnkgfT47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiAgUmlwdWxpc2NlIGxlIHByZWZlcmVuY2Ugc2FsdmF0ZSByZWxhdGl2ZSBhZCB1bmEgc2Vzc2lvbmVcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFic3RyYWN0IGNsZWFyKCk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbGltaW5hIHVuIG9nZ2V0dG8gZGFsbGEgY2FjaGUgcGVyc2lzdGl0YVxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5IENoaWF2ZSBkYSByaW11b3ZlcmVcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFic3RyYWN0IHJlbW92ZShrZXk6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFZmZldHR1YSBpbCAqKnBlcnNpc3QqKiBtYXNzaXZvIGRpIHVuYSBsaXN0YSBkaSBDaGlhdmUgLSBWYWxvcmVcclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIHt7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9fSBkaWN0aW9uYXJ5IERpemlvbmFyaW8gKGxpc3RhIGRpIENoaWF2ZSAtIFZhbG9yZSkgZGEgcGVyc2lzdGVyZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgcGVyc2lzdEFsbChkaWN0aW9uYXJ5OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAgICAgbGV0IG9ic2VydmFibGVzOiBPYnNlcnZhYmxlPGJvb2xlYW4+W10gPSBbXTtcclxuICAgICAgICBmb3IgKGxldCBrZXkgaW4gZGljdGlvbmFyeSlcclxuICAgICAgICAgICAgb2JzZXJ2YWJsZXMucHVzaCh0aGlzLnBlcnNpc3Qoa2V5LCBkaWN0aW9uYXJ5W2tleV0pKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGZvcmtKb2luKG9ic2VydmFibGVzKS5waXBlKG1hcChyZXMgPT4gcmVzLnJlZHVjZSgoYWNjLCB2YWwpID0+IGFjYyAmJiB2YWwsIHRydWUpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBPdHRpZW5lIGxhIGNoaWF2ZSBcIlJlYWxlXCIgZGEgdXRpbGl6emFyZSBwZXIgbGEgcGVyc2lzdGVuemEgZGkgdW5hIGNoaWF2ZSBnZW5lcmljYVxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5IENoaWF2ZSBkYSBzdG9yaWNpenphcmVcclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMge3N0cmluZ30gVW5pb25lIGZyYSBsJ2lkZW50aWZpY2F0aXZvIGRlbGxhIHNlc3Npb25lIGUgbGEgY2hpYXZlIHNwZWNpZmljYXRhXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNlc3Npb24uZ2V0U2Vzc2lvbktleSgpICsgXCLCp1wiICsga2V5ICsgXCLCp1wiO1xyXG4gICAgfVxyXG59Il19
|
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
// Angular
|
|
2
|
-
import { Injectable } from "@angular/core";
|
|
3
|
-
import { CachePersistor } from "../base/CachePersistor";
|
|
4
|
-
// RXJS
|
|
5
|
-
import { of } from "rxjs";
|
|
6
|
-
import { first } from "rxjs/operators";
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "../../session/base/BaseSessionRetriever";
|
|
9
|
-
export class LocalStorageCachePersistor extends CachePersistor {
|
|
10
|
-
constructor(session) {
|
|
11
|
-
super(session);
|
|
12
|
-
}
|
|
13
|
-
/** @ignore Vedi classe base */
|
|
14
|
-
persist(key, item) {
|
|
15
|
-
localStorage.setItem(this.getKey(key), JSON.stringify(item));
|
|
16
|
-
return of(true).pipe(first());
|
|
17
|
-
}
|
|
18
|
-
/** @ignore Vedi classe base */
|
|
19
|
-
recover(key) {
|
|
20
|
-
var ret = JSON.parse(localStorage.getItem(this.getKey(key)));
|
|
21
|
-
return of(ret).pipe(first());
|
|
22
|
-
}
|
|
23
|
-
/** @ignore Vedi classe base */
|
|
24
|
-
remove(key) {
|
|
25
|
-
var ret = localStorage.removeItem(this.getKey(key));
|
|
26
|
-
return of(true).pipe(first());
|
|
27
|
-
}
|
|
28
|
-
/** @ignore Vedi classe base */
|
|
29
|
-
recoverAll() {
|
|
30
|
-
var ret = {};
|
|
31
|
-
for (var k in localStorage) {
|
|
32
|
-
if (k.includes("§") && k.startsWith(this.session.getSessionKey()))
|
|
33
|
-
ret[k.match(/§(.*)§/)[1]] = JSON.parse(localStorage.getItem(k));
|
|
34
|
-
}
|
|
35
|
-
return of(ret).pipe(first());
|
|
36
|
-
}
|
|
37
|
-
/** @ignore Vedi classe base */
|
|
38
|
-
clear() {
|
|
39
|
-
for (var k in localStorage) {
|
|
40
|
-
if (k.includes("§") && k.startsWith(this.session.getSessionKey()))
|
|
41
|
-
localStorage.removeItem(k);
|
|
42
|
-
}
|
|
43
|
-
return of(true).pipe(first());
|
|
44
|
-
}
|
|
45
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
46
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
47
|
-
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
49
|
-
type: Injectable
|
|
50
|
-
}], ctorParameters:
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
// Angular
|
|
2
|
+
import { Injectable } from "@angular/core";
|
|
3
|
+
import { CachePersistor } from "../base/CachePersistor";
|
|
4
|
+
// RXJS
|
|
5
|
+
import { of } from "rxjs";
|
|
6
|
+
import { first } from "rxjs/operators";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "../../session/base/BaseSessionRetriever";
|
|
9
|
+
export class LocalStorageCachePersistor extends CachePersistor {
|
|
10
|
+
constructor(session) {
|
|
11
|
+
super(session);
|
|
12
|
+
}
|
|
13
|
+
/** @ignore Vedi classe base */
|
|
14
|
+
persist(key, item) {
|
|
15
|
+
localStorage.setItem(this.getKey(key), JSON.stringify(item));
|
|
16
|
+
return of(true).pipe(first());
|
|
17
|
+
}
|
|
18
|
+
/** @ignore Vedi classe base */
|
|
19
|
+
recover(key) {
|
|
20
|
+
var ret = JSON.parse(localStorage.getItem(this.getKey(key)));
|
|
21
|
+
return of(ret).pipe(first());
|
|
22
|
+
}
|
|
23
|
+
/** @ignore Vedi classe base */
|
|
24
|
+
remove(key) {
|
|
25
|
+
var ret = localStorage.removeItem(this.getKey(key));
|
|
26
|
+
return of(true).pipe(first());
|
|
27
|
+
}
|
|
28
|
+
/** @ignore Vedi classe base */
|
|
29
|
+
recoverAll() {
|
|
30
|
+
var ret = {};
|
|
31
|
+
for (var k in localStorage) {
|
|
32
|
+
if (k.includes("§") && k.startsWith(this.session.getSessionKey()))
|
|
33
|
+
ret[k.match(/§(.*)§/)[1]] = JSON.parse(localStorage.getItem(k));
|
|
34
|
+
}
|
|
35
|
+
return of(ret).pipe(first());
|
|
36
|
+
}
|
|
37
|
+
/** @ignore Vedi classe base */
|
|
38
|
+
clear() {
|
|
39
|
+
for (var k in localStorage) {
|
|
40
|
+
if (k.includes("§") && k.startsWith(this.session.getSessionKey()))
|
|
41
|
+
localStorage.removeItem(k);
|
|
42
|
+
}
|
|
43
|
+
return of(true).pipe(first());
|
|
44
|
+
}
|
|
45
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LocalStorageCachePersistor, deps: [{ token: i1.BaseSessionRetriever }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
46
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LocalStorageCachePersistor });
|
|
47
|
+
}
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LocalStorageCachePersistor, decorators: [{
|
|
49
|
+
type: Injectable
|
|
50
|
+
}], ctorParameters: () => [{ type: i1.BaseSessionRetriever }] });
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9jYWxTdG9yYWdlQ2FjaGVQZXJzaXN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3BlcnNpc3Rvci9pbXBsZW1lbnRhdGlvbi9Mb2NhbFN0b3JhZ2VDYWNoZVBlcnNpc3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHeEQsT0FBTztBQUNQLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFHdkMsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGNBQWM7SUFFMUQsWUFBWSxPQUE2QjtRQUNyQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUVELCtCQUErQjtJQUN4QixPQUFPLENBQUksR0FBVyxFQUFFLElBQU87UUFDbEMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUM3RCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsK0JBQStCO0lBQ3hCLE9BQU8sQ0FBSSxHQUFXO1FBQ3pCLElBQUksR0FBRyxHQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRSxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsK0JBQStCO0lBQ3hCLE1BQU0sQ0FBQyxHQUFXO1FBQ3JCLElBQUksR0FBRyxHQUFHLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3BELE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCwrQkFBK0I7SUFDeEIsVUFBVTtRQUNiLElBQUksR0FBRyxHQUFpQyxFQUFFLENBQUM7UUFDM0MsS0FBSyxJQUFJLENBQUMsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUM3RCxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLENBQUM7UUFFRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsK0JBQStCO0lBQ3hCLEtBQUs7UUFDUixLQUFLLElBQUksQ0FBQyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzdELFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkMsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7d0dBMUNRLDBCQUEwQjs0R0FBMUIsMEJBQTBCOzs0RkFBMUIsMEJBQTBCO2tCQUR0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vIENsYXNzaVxyXG5pbXBvcnQgeyBCYXNlU2Vzc2lvblJldHJpZXZlciB9IGZyb20gXCIuLi8uLi9zZXNzaW9uL2Jhc2UvQmFzZVNlc3Npb25SZXRyaWV2ZXJcIjtcclxuaW1wb3J0IHsgQ2FjaGVQZXJzaXN0b3IgfSBmcm9tIFwiLi4vYmFzZS9DYWNoZVBlcnNpc3RvclwiO1xyXG5pbXBvcnQgeyBJQmFzZVBlcnNpc3RvciB9IGZyb20gXCIuLi9iYXNlL0lCYXNlUGVyc2lzdG9yXCI7XHJcblxyXG4vLyBSWEpTXHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIExvY2FsU3RvcmFnZUNhY2hlUGVyc2lzdG9yIGV4dGVuZHMgQ2FjaGVQZXJzaXN0b3IgaW1wbGVtZW50cyBJQmFzZVBlcnNpc3RvciB7XHJcblxyXG4gICAgY29uc3RydWN0b3Ioc2Vzc2lvbjogQmFzZVNlc3Npb25SZXRyaWV2ZXIpIHtcclxuICAgICAgICBzdXBlcihzZXNzaW9uKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogQGlnbm9yZSBWZWRpIGNsYXNzZSBiYXNlICovXHJcbiAgICBwdWJsaWMgcGVyc2lzdDxUPihrZXk6IHN0cmluZywgaXRlbTogVCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuZ2V0S2V5KGtleSksIEpTT04uc3RyaW5naWZ5KGl0ZW0pKTtcclxuICAgICAgICByZXR1cm4gb2YodHJ1ZSkucGlwZShmaXJzdCgpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogQGlnbm9yZSBWZWRpIGNsYXNzZSBiYXNlICovXHJcbiAgICBwdWJsaWMgcmVjb3ZlcjxUPihrZXk6IHN0cmluZyk6IE9ic2VydmFibGU8VD4ge1xyXG4gICAgICAgIHZhciByZXQgPSA8VD5KU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuZ2V0S2V5KGtleSkpKTtcclxuICAgICAgICByZXR1cm4gb2YocmV0KS5waXBlKGZpcnN0KCkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBAaWdub3JlIFZlZGkgY2xhc3NlIGJhc2UgKi9cclxuICAgIHB1YmxpYyByZW1vdmUoa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgICAgICB2YXIgcmV0ID0gbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0odGhpcy5nZXRLZXkoa2V5KSk7XHJcbiAgICAgICAgcmV0dXJuIG9mKHRydWUpLnBpcGUoZmlyc3QoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgVmVkaSBjbGFzc2UgYmFzZSAqL1xyXG4gICAgcHVibGljIHJlY292ZXJBbGwoKTogT2JzZXJ2YWJsZTx7IFtpbmRleDogc3RyaW5nXTogYW55OyB9PiB7XHJcbiAgICAgICAgdmFyIHJldDogeyBbaW5kZXg6IHN0cmluZ106IHN0cmluZzsgfSA9IHt9O1xyXG4gICAgICAgIGZvciAodmFyIGsgaW4gbG9jYWxTdG9yYWdlKSB7XHJcbiAgICAgICAgICAgIGlmIChrLmluY2x1ZGVzKFwiwqdcIikgJiYgay5zdGFydHNXaXRoKHRoaXMuc2Vzc2lvbi5nZXRTZXNzaW9uS2V5KCkpKVxyXG4gICAgICAgICAgICAgICAgcmV0W2subWF0Y2goL8KnKC4qKcKnLylbMV1dID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShrKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gb2YocmV0KS5waXBlKGZpcnN0KCkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBAaWdub3JlIFZlZGkgY2xhc3NlIGJhc2UgKi9cclxuICAgIHB1YmxpYyBjbGVhcigpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgICAgICBmb3IgKHZhciBrIGluIGxvY2FsU3RvcmFnZSkge1xyXG4gICAgICAgICAgICBpZiAoay5pbmNsdWRlcyhcIsKnXCIpICYmIGsuc3RhcnRzV2l0aCh0aGlzLnNlc3Npb24uZ2V0U2Vzc2lvbktleSgpKSlcclxuICAgICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGspO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gb2YodHJ1ZSkucGlwZShmaXJzdCgpKTtcclxuICAgIH1cclxufVxyXG5cclxuIl19
|
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
// Angular
|
|
2
|
-
import { Injectable } from "@angular/core";
|
|
3
|
-
// RXJS
|
|
4
|
-
import { of } from "rxjs";
|
|
5
|
-
import { first } from "rxjs/operators";
|
|
6
|
-
import { PreferencesPersistor } from "../base/PreferencesPersistor";
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "../../session/base/BaseSessionRetriever";
|
|
9
|
-
export class LocalStoragePreferencesPersistor extends PreferencesPersistor {
|
|
10
|
-
constructor(session) {
|
|
11
|
-
super(session);
|
|
12
|
-
}
|
|
13
|
-
/** @ignore Vedi classe base */
|
|
14
|
-
persist(key, item) {
|
|
15
|
-
localStorage.setItem(this.getKey(key), JSON.stringify(item));
|
|
16
|
-
return of(true).pipe(first());
|
|
17
|
-
}
|
|
18
|
-
/** @ignore Vedi classe base */
|
|
19
|
-
recover(key) {
|
|
20
|
-
var ret = JSON.parse(localStorage.getItem(this.getKey(key)));
|
|
21
|
-
return of(ret).pipe(first());
|
|
22
|
-
}
|
|
23
|
-
/** @ignore Vedi classe base */
|
|
24
|
-
remove(key) {
|
|
25
|
-
var ret = localStorage.removeItem(this.getKey(key));
|
|
26
|
-
return of(true).pipe(first());
|
|
27
|
-
}
|
|
28
|
-
/** @ignore Vedi classe base */
|
|
29
|
-
recoverAll() {
|
|
30
|
-
var ret = {};
|
|
31
|
-
for (var k in localStorage) {
|
|
32
|
-
if (k.includes("§") && k.startsWith(this.session.getSessionKey()))
|
|
33
|
-
ret[k.match(/§(.*)§/)[1]] = JSON.parse(localStorage.getItem(k));
|
|
34
|
-
}
|
|
35
|
-
return of(ret).pipe(first());
|
|
36
|
-
}
|
|
37
|
-
/** @ignore Vedi classe base */
|
|
38
|
-
clear() {
|
|
39
|
-
for (var k in localStorage) {
|
|
40
|
-
if (k.includes("§") && k.startsWith(this.session.getSessionKey()))
|
|
41
|
-
localStorage.removeItem(k);
|
|
42
|
-
}
|
|
43
|
-
return of(true).pipe(first());
|
|
44
|
-
}
|
|
45
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
46
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
47
|
-
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
49
|
-
type: Injectable
|
|
50
|
-
}], ctorParameters:
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
// Angular
|
|
2
|
+
import { Injectable } from "@angular/core";
|
|
3
|
+
// RXJS
|
|
4
|
+
import { of } from "rxjs";
|
|
5
|
+
import { first } from "rxjs/operators";
|
|
6
|
+
import { PreferencesPersistor } from "../base/PreferencesPersistor";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "../../session/base/BaseSessionRetriever";
|
|
9
|
+
export class LocalStoragePreferencesPersistor extends PreferencesPersistor {
|
|
10
|
+
constructor(session) {
|
|
11
|
+
super(session);
|
|
12
|
+
}
|
|
13
|
+
/** @ignore Vedi classe base */
|
|
14
|
+
persist(key, item) {
|
|
15
|
+
localStorage.setItem(this.getKey(key), JSON.stringify(item));
|
|
16
|
+
return of(true).pipe(first());
|
|
17
|
+
}
|
|
18
|
+
/** @ignore Vedi classe base */
|
|
19
|
+
recover(key) {
|
|
20
|
+
var ret = JSON.parse(localStorage.getItem(this.getKey(key)));
|
|
21
|
+
return of(ret).pipe(first());
|
|
22
|
+
}
|
|
23
|
+
/** @ignore Vedi classe base */
|
|
24
|
+
remove(key) {
|
|
25
|
+
var ret = localStorage.removeItem(this.getKey(key));
|
|
26
|
+
return of(true).pipe(first());
|
|
27
|
+
}
|
|
28
|
+
/** @ignore Vedi classe base */
|
|
29
|
+
recoverAll() {
|
|
30
|
+
var ret = {};
|
|
31
|
+
for (var k in localStorage) {
|
|
32
|
+
if (k.includes("§") && k.startsWith(this.session.getSessionKey()))
|
|
33
|
+
ret[k.match(/§(.*)§/)[1]] = JSON.parse(localStorage.getItem(k));
|
|
34
|
+
}
|
|
35
|
+
return of(ret).pipe(first());
|
|
36
|
+
}
|
|
37
|
+
/** @ignore Vedi classe base */
|
|
38
|
+
clear() {
|
|
39
|
+
for (var k in localStorage) {
|
|
40
|
+
if (k.includes("§") && k.startsWith(this.session.getSessionKey()))
|
|
41
|
+
localStorage.removeItem(k);
|
|
42
|
+
}
|
|
43
|
+
return of(true).pipe(first());
|
|
44
|
+
}
|
|
45
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LocalStoragePreferencesPersistor, deps: [{ token: i1.BaseSessionRetriever }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
46
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LocalStoragePreferencesPersistor });
|
|
47
|
+
}
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LocalStoragePreferencesPersistor, decorators: [{
|
|
49
|
+
type: Injectable
|
|
50
|
+
}], ctorParameters: () => [{ type: i1.BaseSessionRetriever }] });
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9jYWxTdG9yYWdlUHJlZmVyZW5jZXNQZXJzaXN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3BlcnNpc3Rvci9pbXBsZW1lbnRhdGlvbi9Mb2NhbFN0b3JhZ2VQcmVmZXJlbmNlc1BlcnNpc3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPO0FBQ1AsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJdkMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOEJBQThCLENBQUM7OztBQUlwRSxNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsb0JBQW9CO0lBRXRFLFlBQVksT0FBNkI7UUFDckMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25CLENBQUM7SUFFRCwrQkFBK0I7SUFDeEIsT0FBTyxDQUFJLEdBQVcsRUFBRSxJQUFPO1FBQ2xDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDN0QsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELCtCQUErQjtJQUN4QixPQUFPLENBQUksR0FBVztRQUN6QixJQUFJLEdBQUcsR0FBTSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEUsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELCtCQUErQjtJQUN4QixNQUFNLENBQUMsR0FBVztRQUNyQixJQUFJLEdBQUcsR0FBRyxZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNwRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsK0JBQStCO0lBQ3hCLFVBQVU7UUFDYixJQUFJLEdBQUcsR0FBaUMsRUFBRSxDQUFDO1FBQzNDLEtBQUssSUFBSSxDQUFDLElBQUksWUFBWSxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDN0QsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4RSxDQUFDO1FBRUQsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELCtCQUErQjtJQUN4QixLQUFLO1FBQ1IsS0FBSyxJQUFJLENBQUMsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUM3RCxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25DLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO3dHQTFDUSxnQ0FBZ0M7NEdBQWhDLGdDQUFnQzs7NEZBQWhDLGdDQUFnQztrQkFENUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vLyBSWEpTXHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcbi8vIENsYXNzaVxyXG5pbXBvcnQgeyBCYXNlU2Vzc2lvblJldHJpZXZlciB9IGZyb20gXCIuLi8uLi9zZXNzaW9uL2Jhc2UvQmFzZVNlc3Npb25SZXRyaWV2ZXJcIjtcclxuaW1wb3J0IHsgUHJlZmVyZW5jZXNQZXJzaXN0b3IgfSBmcm9tIFwiLi4vYmFzZS9QcmVmZXJlbmNlc1BlcnNpc3RvclwiO1xyXG5pbXBvcnQgeyBJQmFzZVBlcnNpc3RvciB9IGZyb20gXCIuLi9iYXNlL0lCYXNlUGVyc2lzdG9yXCI7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBMb2NhbFN0b3JhZ2VQcmVmZXJlbmNlc1BlcnNpc3RvciBleHRlbmRzIFByZWZlcmVuY2VzUGVyc2lzdG9yIGltcGxlbWVudHMgSUJhc2VQZXJzaXN0b3Ige1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHNlc3Npb246IEJhc2VTZXNzaW9uUmV0cmlldmVyKSB7XHJcbiAgICAgICAgc3VwZXIoc2Vzc2lvbik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgVmVkaSBjbGFzc2UgYmFzZSAqL1xyXG4gICAgcHVibGljIHBlcnNpc3Q8VD4oa2V5OiBzdHJpbmcsIGl0ZW06IFQpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmdldEtleShrZXkpLCBKU09OLnN0cmluZ2lmeShpdGVtKSk7XHJcbiAgICAgICAgcmV0dXJuIG9mKHRydWUpLnBpcGUoZmlyc3QoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgVmVkaSBjbGFzc2UgYmFzZSAqL1xyXG4gICAgcHVibGljIHJlY292ZXI8VD4oa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFQ+IHtcclxuICAgICAgICB2YXIgcmV0ID0gPFQ+SlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmdldEtleShrZXkpKSk7XHJcbiAgICAgICAgcmV0dXJuIG9mKHJldCkucGlwZShmaXJzdCgpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogQGlnbm9yZSBWZWRpIGNsYXNzZSBiYXNlICovXHJcbiAgICBwdWJsaWMgcmVtb3ZlKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAgICAgdmFyIHJldCA9IGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHRoaXMuZ2V0S2V5KGtleSkpO1xyXG4gICAgICAgIHJldHVybiBvZih0cnVlKS5waXBlKGZpcnN0KCkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBAaWdub3JlIFZlZGkgY2xhc3NlIGJhc2UgKi9cclxuICAgIHB1YmxpYyByZWNvdmVyQWxsKCk6IE9ic2VydmFibGU8eyBbaW5kZXg6IHN0cmluZ106IGFueTsgfT4ge1xyXG4gICAgICAgIHZhciByZXQ6IHsgW2luZGV4OiBzdHJpbmddOiBzdHJpbmc7IH0gPSB7fTtcclxuICAgICAgICBmb3IgKHZhciBrIGluIGxvY2FsU3RvcmFnZSkge1xyXG4gICAgICAgICAgICBpZiAoay5pbmNsdWRlcyhcIsKnXCIpICYmIGsuc3RhcnRzV2l0aCh0aGlzLnNlc3Npb24uZ2V0U2Vzc2lvbktleSgpKSlcclxuICAgICAgICAgICAgICAgIHJldFtrLm1hdGNoKC/CpyguKinCpy8pWzFdXSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oaykpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIG9mKHJldCkucGlwZShmaXJzdCgpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogQGlnbm9yZSBWZWRpIGNsYXNzZSBiYXNlICovXHJcbiAgICBwdWJsaWMgY2xlYXIoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAgICAgZm9yICh2YXIgayBpbiBsb2NhbFN0b3JhZ2UpIHtcclxuICAgICAgICAgICAgaWYgKGsuaW5jbHVkZXMoXCLCp1wiKSAmJiBrLnN0YXJ0c1dpdGgodGhpcy5zZXNzaW9uLmdldFNlc3Npb25LZXkoKSkpXHJcbiAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG9mKHRydWUpLnBpcGUoZmlyc3QoKSk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CacheService } from './services/cache.service';
|
|
3
|
-
import { PreferencesService } from './services/preferences.service';
|
|
4
|
-
import { BaseSessionRetriever } from './session/base/BaseSessionRetriever';
|
|
5
|
-
import { DefaultSessionRetriever } from './session/implementation/DefaultSessionRetriever';
|
|
6
|
-
import { PREF_FULL_RETRIEVE_AT_START, PREF_DEBUG_MODE } from './tokens';
|
|
7
|
-
import { CachePersistor } from './persistor/base/CachePersistor';
|
|
8
|
-
import { PreferencesPersistor } from './persistor/base/PreferencesPersistor';
|
|
9
|
-
import { LocalStorageCachePersistor } from './persistor/implementation/LocalStorageCachePersistor';
|
|
10
|
-
import { LocalStoragePreferencesPersistor } from './persistor/implementation/LocalStoragePreferencesPersistor';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
export class PreferencesModule {
|
|
13
|
-
static forRoot(config) {
|
|
14
|
-
return {
|
|
15
|
-
ngModule: PreferencesModule,
|
|
16
|
-
providers: [
|
|
17
|
-
CacheService,
|
|
18
|
-
PreferencesService,
|
|
19
|
-
{ provide: PreferencesPersistor, useClass: config?.preferencePersistor || LocalStoragePreferencesPersistor },
|
|
20
|
-
{ provide: CachePersistor, useClass: config?.cachePersistor || LocalStorageCachePersistor },
|
|
21
|
-
{ provide: BaseSessionRetriever, useClass: config?.sessionRetriever || DefaultSessionRetriever },
|
|
22
|
-
{ provide: PREF_FULL_RETRIEVE_AT_START, useValue: config?.retrieveAllAtStart || true },
|
|
23
|
-
{ provide: PREF_DEBUG_MODE, useValue: config?.debugMode || false },
|
|
24
|
-
]
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
28
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
29
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
30
|
-
}
|
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
32
|
-
type: NgModule
|
|
33
|
-
}] });
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CacheService } from './services/cache.service';
|
|
3
|
+
import { PreferencesService } from './services/preferences.service';
|
|
4
|
+
import { BaseSessionRetriever } from './session/base/BaseSessionRetriever';
|
|
5
|
+
import { DefaultSessionRetriever } from './session/implementation/DefaultSessionRetriever';
|
|
6
|
+
import { PREF_FULL_RETRIEVE_AT_START, PREF_DEBUG_MODE } from './tokens';
|
|
7
|
+
import { CachePersistor } from './persistor/base/CachePersistor';
|
|
8
|
+
import { PreferencesPersistor } from './persistor/base/PreferencesPersistor';
|
|
9
|
+
import { LocalStorageCachePersistor } from './persistor/implementation/LocalStorageCachePersistor';
|
|
10
|
+
import { LocalStoragePreferencesPersistor } from './persistor/implementation/LocalStoragePreferencesPersistor';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export class PreferencesModule {
|
|
13
|
+
static forRoot(config) {
|
|
14
|
+
return {
|
|
15
|
+
ngModule: PreferencesModule,
|
|
16
|
+
providers: [
|
|
17
|
+
CacheService,
|
|
18
|
+
PreferencesService,
|
|
19
|
+
{ provide: PreferencesPersistor, useClass: config?.preferencePersistor || LocalStoragePreferencesPersistor },
|
|
20
|
+
{ provide: CachePersistor, useClass: config?.cachePersistor || LocalStorageCachePersistor },
|
|
21
|
+
{ provide: BaseSessionRetriever, useClass: config?.sessionRetriever || DefaultSessionRetriever },
|
|
22
|
+
{ provide: PREF_FULL_RETRIEVE_AT_START, useValue: config?.retrieveAllAtStart || true },
|
|
23
|
+
{ provide: PREF_DEBUG_MODE, useValue: config?.debugMode || false },
|
|
24
|
+
]
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PreferencesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
28
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: PreferencesModule });
|
|
29
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PreferencesModule });
|
|
30
|
+
}
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PreferencesModule, decorators: [{
|
|
32
|
+
type: NgModule
|
|
33
|
+
}] });
|
|
34
34
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlZmVyZW5jZXMvc3JjL2xpYi9wcmVmZXJlbmNlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUl6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDM0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDM0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLGVBQWUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDbkcsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sNkRBQTZELENBQUM7O0FBRy9HLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFnQztRQUM3QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1QsWUFBWTtnQkFDWixrQkFBa0I7Z0JBQ2xCLEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLElBQUksZ0NBQWdDLEVBQUU7Z0JBQzVHLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLGNBQWMsSUFBSSwwQkFBMEIsRUFBRTtnQkFDM0YsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxnQkFBZ0IsSUFBSSx1QkFBdUIsRUFBRTtnQkFDaEcsRUFBRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxrQkFBa0IsSUFBSSxJQUFJLEVBQUU7Z0JBQ3RGLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFNBQVMsSUFBSSxLQUFLLEVBQUU7YUFDbkU7U0FDRixDQUFDO0lBQ0osQ0FBQzt3R0FkVSxpQkFBaUI7eUdBQWpCLGlCQUFpQjt5R0FBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUQ3QixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vLyBNb2RlbGxpXHJcbmltcG9ydCB7IFByZWZlcmVuY2VzTW9kdWxlQ29uZmlnIH0gZnJvbSAnLi9tb2RlbHMvUHJlZmVyZW5jZXNNb2R1bGVDb25maWcnO1xyXG5pbXBvcnQgeyBDYWNoZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2NhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcmVmZXJlbmNlc1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3ByZWZlcmVuY2VzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlU2Vzc2lvblJldHJpZXZlciB9IGZyb20gJy4vc2Vzc2lvbi9iYXNlL0Jhc2VTZXNzaW9uUmV0cmlldmVyJztcclxuaW1wb3J0IHsgRGVmYXVsdFNlc3Npb25SZXRyaWV2ZXIgfSBmcm9tICcuL3Nlc3Npb24vaW1wbGVtZW50YXRpb24vRGVmYXVsdFNlc3Npb25SZXRyaWV2ZXInO1xyXG5pbXBvcnQgeyBQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQsIFBSRUZfREVCVUdfTU9ERSB9IGZyb20gJy4vdG9rZW5zJztcclxuaW1wb3J0IHsgQ2FjaGVQZXJzaXN0b3IgfSBmcm9tICcuL3BlcnNpc3Rvci9iYXNlL0NhY2hlUGVyc2lzdG9yJztcclxuaW1wb3J0IHsgUHJlZmVyZW5jZXNQZXJzaXN0b3IgfSBmcm9tICcuL3BlcnNpc3Rvci9iYXNlL1ByZWZlcmVuY2VzUGVyc2lzdG9yJztcclxuaW1wb3J0IHsgTG9jYWxTdG9yYWdlQ2FjaGVQZXJzaXN0b3IgfSBmcm9tICcuL3BlcnNpc3Rvci9pbXBsZW1lbnRhdGlvbi9Mb2NhbFN0b3JhZ2VDYWNoZVBlcnNpc3Rvcic7XHJcbmltcG9ydCB7IExvY2FsU3RvcmFnZVByZWZlcmVuY2VzUGVyc2lzdG9yIH0gZnJvbSAnLi9wZXJzaXN0b3IvaW1wbGVtZW50YXRpb24vTG9jYWxTdG9yYWdlUHJlZmVyZW5jZXNQZXJzaXN0b3InO1xyXG5cclxuQE5nTW9kdWxlKClcclxuZXhwb3J0IGNsYXNzIFByZWZlcmVuY2VzTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChjb25maWc/OiBQcmVmZXJlbmNlc01vZHVsZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8UHJlZmVyZW5jZXNNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBQcmVmZXJlbmNlc01vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgQ2FjaGVTZXJ2aWNlLFxyXG4gICAgICAgIFByZWZlcmVuY2VzU2VydmljZSxcclxuICAgICAgICB7IHByb3ZpZGU6IFByZWZlcmVuY2VzUGVyc2lzdG9yLCB1c2VDbGFzczogY29uZmlnPy5wcmVmZXJlbmNlUGVyc2lzdG9yIHx8IExvY2FsU3RvcmFnZVByZWZlcmVuY2VzUGVyc2lzdG9yIH0sXHJcbiAgICAgICAgeyBwcm92aWRlOiBDYWNoZVBlcnNpc3RvciwgdXNlQ2xhc3M6IGNvbmZpZz8uY2FjaGVQZXJzaXN0b3IgfHwgTG9jYWxTdG9yYWdlQ2FjaGVQZXJzaXN0b3IgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IEJhc2VTZXNzaW9uUmV0cmlldmVyLCB1c2VDbGFzczogY29uZmlnPy5zZXNzaW9uUmV0cmlldmVyIHx8IERlZmF1bHRTZXNzaW9uUmV0cmlldmVyIH0sXHJcbiAgICAgICAgeyBwcm92aWRlOiBQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQsIHVzZVZhbHVlOiBjb25maWc/LnJldHJpZXZlQWxsQXRTdGFydCB8fCB0cnVlIH0sXHJcbiAgICAgICAgeyBwcm92aWRlOiBQUkVGX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWc/LmRlYnVnTW9kZSB8fCBmYWxzZSB9LFxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxufSJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUJhc2VTdG9yYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlZmVyZW5jZXMvc3JjL2xpYi9zZXJ2aWNlcy9iYXNlL0lCYXNlU3RvcmFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQmFzZVN0b3JhZ2Uge1xyXG4gIHNldEl0ZW08VD4oa2V5OiBzdHJpbmcsIGl0ZW06IFQpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gIHNldExvY2FsSXRlbTxUPihrZXk6IHN0cmluZywgaXRlbTogVCk6IGJvb2xlYW47XHJcbiAgZ2V0SXRlbTxUPihrZXk6IHN0cmluZywgY2FjaGVCdXN0OiBib29sZWFuKTogT2JzZXJ2YWJsZTxUPjtcclxuICBnZXRMb2NhbEl0ZW08VD4oa2V5OiBzdHJpbmcpOiBUO1xyXG4gIHJlbW92ZUl0ZW0oa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gIGNsZWFyKCk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbn0iXX0=
|