@esfaenza/preferences 13.3.2 → 14.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.
Files changed (33) hide show
  1. package/esm2020/lib/models/PreferencesModuleConfig.mjs +1 -1
  2. package/esm2020/lib/persistor/base/CachePersistor.mjs +31 -0
  3. package/esm2020/lib/persistor/base/IBasePersistor.mjs +2 -0
  4. package/esm2020/lib/persistor/base/PreferencesPersistor.mjs +33 -0
  5. package/esm2020/lib/persistor/implementation/LocalStorageCachePersistor.mjs +51 -0
  6. package/esm2020/lib/persistor/implementation/LocalStoragePreferencesPersistor.mjs +51 -0
  7. package/esm2020/lib/preferences.module.mjs +14 -9
  8. package/esm2020/lib/services/base/IBaseStorage.mjs +2 -0
  9. package/esm2020/lib/services/base/base.service.mjs +119 -0
  10. package/esm2020/lib/services/cache.service.mjs +25 -0
  11. package/esm2020/lib/services/preferences.service.mjs +25 -0
  12. package/esm2020/lib/session/implementation/DefaultSessionRetriever.mjs +4 -4
  13. package/esm2020/public-api.mjs +5 -3
  14. package/fesm2015/esfaenza-preferences.mjs +208 -126
  15. package/fesm2015/esfaenza-preferences.mjs.map +1 -1
  16. package/fesm2020/esfaenza-preferences.mjs +206 -126
  17. package/fesm2020/esfaenza-preferences.mjs.map +1 -1
  18. package/{esfaenza-preferences.d.ts → index.d.ts} +0 -0
  19. package/lib/models/PreferencesModuleConfig.d.ts +8 -2
  20. package/lib/persistor/base/CachePersistor.d.ts +57 -0
  21. package/lib/persistor/base/IBasePersistor.d.ts +17 -0
  22. package/lib/persistor/base/{BasePreferencesPersistor.d.ts → PreferencesPersistor.d.ts} +7 -10
  23. package/lib/persistor/implementation/{LocalStoragePersistor.d.ts → LocalStorageCachePersistor.d.ts} +5 -6
  24. package/lib/persistor/implementation/LocalStoragePreferencesPersistor.d.ts +22 -0
  25. package/lib/services/base/IBaseStorage.d.ts +9 -0
  26. package/lib/{preferences.service.d.ts → services/base/base.service.d.ts} +11 -22
  27. package/lib/services/cache.service.d.ts +10 -0
  28. package/lib/services/preferences.service.d.ts +10 -0
  29. package/package.json +3 -3
  30. package/public-api.d.ts +4 -2
  31. package/esm2020/lib/persistor/base/BasePreferencesPersistor.mjs +0 -34
  32. package/esm2020/lib/persistor/implementation/LocalStoragePersistor.mjs +0 -52
  33. package/esm2020/lib/preferences.service.mjs +0 -150
@@ -3,4 +3,4 @@
3
3
  */
4
4
  export class PreferencesModuleConfig {
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJlZmVyZW5jZXNNb2R1bGVDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL21vZGVscy9QcmVmZXJlbmNlc01vZHVsZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQTs7R0FFRztBQUNILE1BQU0sT0FBTyx1QkFBdUI7Q0FtQm5DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEJhc2VQcmVmZXJlbmNlc1BlcnNpc3RvciB9IGZyb20gXCIuLi9wZXJzaXN0b3IvYmFzZS9CYXNlUHJlZmVyZW5jZXNQZXJzaXN0b3JcIjtcclxuaW1wb3J0IHsgQmFzZVNlc3Npb25SZXRyaWV2ZXIgfSBmcm9tIFwiLi4vc2Vzc2lvbi9iYXNlL0Jhc2VTZXNzaW9uUmV0cmlldmVyXCI7XHJcblxyXG4vKipcclxuICogQ2xhc3NlIGRpIENvbmZpZ3VyYXppb25lIHBlciBsYSBsaWJyZXJpYVxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIFByZWZlcmVuY2VzTW9kdWxlQ29uZmlne1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogSW5kaWNhIHNlIHJlY3VwZXJhcmUgYXV0b25vbWFtZW50ZSB0dXR0ZSBsZSBjb25maWd1cmF6aW9uaSBzYWx2YXRlIGFsIGJvb3RzdHJhcCBkZWxsYSBsaWJyZXJpYSBvIHNlIGFzcGV0dGFyZSBsZSByaWNoaWVzdGUgc3BlY2lmaWNoZS5cclxuICAgICAqIFxyXG4gICAgICogVXRpbGUgc2Ugbm9uIHZlbmdvbm8gc2FsdmF0ZSB0YW50ZSBjb3NlLCBwb3RyZWJiZSBjcmVhcmUgdW4gbW9tZW50byBkaSBpcnJlc3BvbnNpdml0w6Agc2UgbGUgaW5mbyBkYSByZWN1cGVyYXJlIHNvbm8gbW9sdGVcclxuICAgICAqL1xyXG4gICAgcmV0cmlldmVBbGxBdFN0YXJ0PzogYm9vbGVhbjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIENsYXNzZSBjaGUgc2kgZGV2ZSBvY2N1cGFyZSBkZWxsbyBzdG9yZSBcIkRlZmluaXRpdm9cIiBkZWxsZSBwcmVmZXJlbnplLiBEaSBkZWZhdWx0IHZpZW5lIHByb3Bvc3RvIHVubyBzdG9yZSBsYXRvIGxvY2FsU3RvcmFnZSBtYSBzaSBwdcOyIGZhY2lsbWVudGUgXHJcbiAgICAgKiBmb3JuaXJlIHVubyBzdG9yYWdlIGNoZSBwb3J0YSBsZSBpbmZvcm1hemlvbmkgbGF0byBEYXRhYmFzZVxyXG4gICAgICovXHJcbiAgICBwcmVmZXJlbmNlUGVyc2lzdG9yPzogVHlwZTxCYXNlUHJlZmVyZW5jZXNQZXJzaXN0b3I+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ2xhc3NlIGNoZSBzaSBkZXZlIG9jY3VwYXJlIHBlciBnZW5lcmFyZSB1biBJRCB1bml2b2NvIGRpIHNlc3Npb25lIGluIGJhc2UgYWwgcXVhbGUgdmVycmFubm8gc2FsdmF0ZSBsZSBwcmVmZXJlbnplXHJcbiAgICAgKi9cclxuICAgIHNlc3Npb25SZXRyaWV2ZXI/OiBUeXBlPEJhc2VTZXNzaW9uUmV0cmlldmVyPjtcclxufSJdfQ==
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJlZmVyZW5jZXNNb2R1bGVDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL21vZGVscy9QcmVmZXJlbmNlc01vZHVsZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQTs7R0FFRztBQUNILE1BQU0sT0FBTyx1QkFBdUI7Q0F5Qm5DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENhY2hlUGVyc2lzdG9yIH0gZnJvbSBcIi4uL3BlcnNpc3Rvci9iYXNlL0NhY2hlUGVyc2lzdG9yXCI7XHJcbmltcG9ydCB7IFByZWZlcmVuY2VzUGVyc2lzdG9yIH0gZnJvbSBcIi4uL3BlcnNpc3Rvci9iYXNlL1ByZWZlcmVuY2VzUGVyc2lzdG9yXCI7XHJcbmltcG9ydCB7IEJhc2VTZXNzaW9uUmV0cmlldmVyIH0gZnJvbSBcIi4uL3Nlc3Npb24vYmFzZS9CYXNlU2Vzc2lvblJldHJpZXZlclwiO1xyXG5cclxuLyoqXHJcbiAqIENsYXNzZSBkaSBDb25maWd1cmF6aW9uZSBwZXIgbGEgbGlicmVyaWFcclxuICovXHJcbmV4cG9ydCBjbGFzcyBQcmVmZXJlbmNlc01vZHVsZUNvbmZpZ3tcclxuXHJcbiAgICAvKipcclxuICAgICAqIEluZGljYSBzZSByZWN1cGVyYXJlIGF1dG9ub21hbWVudGUgdHV0dGUgbGUgY29uZmlndXJhemlvbmkgc2FsdmF0ZSBhbCBib290c3RyYXAgZGVsbGEgbGlicmVyaWEgbyBzZSBhc3BldHRhcmUgbGUgcmljaGllc3RlIHNwZWNpZmljaGUuXHJcbiAgICAgKiBcclxuICAgICAqIFV0aWxlIHNlIG5vbiB2ZW5nb25vIHNhbHZhdGUgdGFudGUgY29zZSwgcG90cmViYmUgY3JlYXJlIHVuIG1vbWVudG8gZGkgaXJyZXNwb25zaXZpdMOgIHNlIGxlIGluZm8gZGEgcmVjdXBlcmFyZSBzb25vIG1vbHRlXHJcbiAgICAgKi9cclxuICAgIHJldHJpZXZlQWxsQXRTdGFydD86IGJvb2xlYW47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDbGFzc2UgY2hlIHNpIGRldmUgb2NjdXBhcmUgZGVsbG8gc3RvcmUgXCJEZWZpbml0aXZvXCIgZGVsbGUgcHJlZmVyZW56ZS4gRGkgZGVmYXVsdCB2aWVuZSBwcm9wb3N0byB1bm8gc3RvcmUgbGF0byBsb2NhbFN0b3JhZ2UgbWEgc2kgcHXDsiBmYWNpbG1lbnRlIFxyXG4gICAgICogZm9ybmlyZSB1bm8gc3RvcmFnZSBjaGUgcG9ydGEgbGUgaW5mb3JtYXppb25pIGxhdG8gRGF0YWJhc2VcclxuICAgICAqL1xyXG4gICAgcHJlZmVyZW5jZVBlcnNpc3Rvcj86IFR5cGU8UHJlZmVyZW5jZXNQZXJzaXN0b3I+O1xyXG5cclxuICAgICAvKipcclxuICAgICAqIENsYXNzZSBjaGUgc2kgZGV2ZSBvY2N1cGFyZSBkZWxsbyBzdG9yZSBcIkRlZmluaXRpdm9cIiBkZWxsZSBjYWNoZS4gRGkgZGVmYXVsdCB2aWVuZSBwcm9wb3N0byB1bm8gc3RvcmUgbGF0byBsb2NhbFN0b3JhZ2UgbWEgc2kgcHXDsiBmYWNpbG1lbnRlIFxyXG4gICAgICogZm9ybmlyZSB1bm8gc3RvcmFnZSBjaGUgcG9ydGEgbGUgaW5mb3JtYXppb25pIGxhdG8gRGF0YWJhc2VcclxuICAgICAqL1xyXG4gICAgY2FjaGVQZXJzaXN0b3I/OiBUeXBlPENhY2hlUGVyc2lzdG9yPjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIENsYXNzZSBjaGUgc2kgZGV2ZSBvY2N1cGFyZSBwZXIgZ2VuZXJhcmUgdW4gSUQgdW5pdm9jbyBkaSBzZXNzaW9uZSBpbiBiYXNlIGFsIHF1YWxlIHZlcnJhbm5vIHNhbHZhdGUgbGUgcHJlZmVyZW56ZVxyXG4gICAgICovXHJcbiAgICBzZXNzaW9uUmV0cmlldmVyPzogVHlwZTxCYXNlU2Vzc2lvblJldHJpZXZlcj47XHJcbn0iXX0=
@@ -0,0 +1,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
+ /** @ignore Costruttore */
6
+ constructor(session) {
7
+ this.session = session;
8
+ }
9
+ /**
10
+ * Effettua il **persist** massivo di una lista di Chiave - Valore
11
+ *
12
+ * @param {{ [key: string]: string }} dictionary Dizionario (lista di Chiave - Valore) da persistere
13
+ */
14
+ persistAll(dictionary) {
15
+ let observables = [];
16
+ for (let key in dictionary)
17
+ observables.push(this.persist(key, dictionary[key]));
18
+ return forkJoin(observables).pipe(map(res => res.reduce((acc, val) => acc && val, true)));
19
+ }
20
+ /**
21
+ * Ottiene la chiave "Reale" da utilizzare per la persistenza di una chiave generica
22
+ *
23
+ * @param {string} key Chiave da storicizzare
24
+ *
25
+ * @returns {string} Unione fra l'identificativo della sessione e la chiave specificata
26
+ */
27
+ getKey(key) {
28
+ return this.session.getSessionKey() + "§" + key + "§";
29
+ }
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGVQZXJzaXN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3BlcnNpc3Rvci9iYXNlL0NhY2hlUGVyc2lzdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXJDLDRGQUE0RjtBQUM1RixNQUFNLE9BQWdCLGNBQWM7SUFFaEMsMEJBQTBCO0lBQzFCLFlBQXNCLE9BQTZCO1FBQTdCLFlBQU8sR0FBUCxPQUFPLENBQXNCO0lBQUcsQ0FBQztJQXFDdkQ7Ozs7T0FJRztJQUNJLFVBQVUsQ0FBQyxVQUFxQztRQUNuRCxJQUFJLFdBQVcsR0FBMEIsRUFBRSxDQUFDO1FBQzVDLEtBQUssSUFBSSxHQUFHLElBQUksVUFBVTtZQUN0QixXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFekQsT0FBTyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLEdBQVc7UUFDckIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQzFELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIGZvcmtKb2luIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IEJhc2VTZXNzaW9uUmV0cmlldmVyIH0gZnJvbSBcIi4uLy4uL3Nlc3Npb24vYmFzZS9CYXNlU2Vzc2lvblJldHJpZXZlclwiO1xyXG5pbXBvcnQgeyBJQmFzZVBlcnNpc3RvciB9IGZyb20gXCIuL0lCYXNlUGVyc2lzdG9yXCI7XHJcblxyXG4vKiogQ2xhc3NlIGFzdHJhdHRhIGNoZSByYXBwcmVzZW50YSBsbyBzdGF0byBkaSBwZXJzaXN0ZW56YSBmcmEgbGEgbGlicmVyaWEgZSB1bm8gc3RvcmFnZSAqL1xyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ2FjaGVQZXJzaXN0b3IgaW1wbGVtZW50cyBJQmFzZVBlcnNpc3RvciB7XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgQ29zdHJ1dHRvcmUgKi9cclxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBzZXNzaW9uOiBCYXNlU2Vzc2lvblJldHJpZXZlcikge31cclxuXHJcbiAgICAvKipcclxuICAgICAqIFNhbHZhLCBwZXIgdW5hIHNlc3Npb25lLCB1bmEgY2hpYXZlIGNvbiB1biB2YWxvcmVcclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGtleSBDaGlhdmUgZGEgc3RvcmljaXp6YXJlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhYnN0cmFjdCBwZXJzaXN0PFQ+KGtleTogc3RyaW5nLCBpdGVtOiBUKTogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlY3VwZXJhLCBwZXIgdW5hIHNlc3Npb25lLCBpbCB2YWxvcmUgYXNzZWduYXRvIGFkIHVuYSBjaGlhdmVcclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGtleSBDaGlhdmUgZGEgcmVjdXBlcmFyZVxyXG4gICAgICogXHJcbiAgICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTxUPn0gVmFsb3JlIHNhbHZhdG8gcGVyIGxhIGNoaWF2ZSAqKmtleSoqXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhYnN0cmFjdCByZWNvdmVyPFQ+KGtleT86IHN0cmluZyk6IE9ic2VydmFibGU8VD47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBQZXIgdW5hIHNlc3Npb25lIHJlY3VwZXJhIHR1dHRlIGxlIGNvcHBpZSBDaGlhdmUgLSBWYWxvcmUgc2FsdmF0ZVxyXG4gICAgICogXHJcbiAgICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTx7IFtpbmRleDogc3RyaW5nXTogYW55IH0+fSBEaXppb25hcmlvIGNvbiB0dXR0ZSBsZSBwcmVmZXJlbmNlIHNhbHZhdGUgcGVyIGxhIHNlc3Npb25lXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhYnN0cmFjdCByZWNvdmVyQWxsKCk6IE9ic2VydmFibGU8eyBbaW5kZXg6IHN0cmluZ106IGFueSB9PjtcclxuXHJcbiAgICAvKipcclxuICAgICAqICBSaXB1bGlzY2UgbGUgcHJlZmVyZW5jZSBzYWx2YXRlIHJlbGF0aXZlIGFkIHVuYSBzZXNzaW9uZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWJzdHJhY3QgY2xlYXIoKTogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEVsaW1pbmEgdW4gb2dnZXR0byBkYWxsYSBjYWNoZSBwZXJzaXN0aXRhXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRhIHJpbXVvdmVyZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWJzdHJhY3QgcmVtb3ZlKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEVmZmV0dHVhIGlsICoqcGVyc2lzdCoqIG1hc3Npdm8gZGkgdW5hIGxpc3RhIGRpIENoaWF2ZSAtIFZhbG9yZVxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge3sgW2tleTogc3RyaW5nXTogc3RyaW5nIH19IGRpY3Rpb25hcnkgRGl6aW9uYXJpbyAobGlzdGEgZGkgQ2hpYXZlIC0gVmFsb3JlKSBkYSBwZXJzaXN0ZXJlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBwZXJzaXN0QWxsKGRpY3Rpb25hcnk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgICAgICBsZXQgb2JzZXJ2YWJsZXM6IE9ic2VydmFibGU8Ym9vbGVhbj5bXSA9IFtdO1xyXG4gICAgICAgIGZvciAobGV0IGtleSBpbiBkaWN0aW9uYXJ5KVxyXG4gICAgICAgICAgICBvYnNlcnZhYmxlcy5wdXNoKHRoaXMucGVyc2lzdChrZXksIGRpY3Rpb25hcnlba2V5XSkpO1xyXG5cclxuICAgICAgICByZXR1cm4gZm9ya0pvaW4ob2JzZXJ2YWJsZXMpLnBpcGUobWFwKHJlcyA9PiByZXMucmVkdWNlKChhY2MsIHZhbCkgPT4gYWNjICYmIHZhbCwgdHJ1ZSkpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE90dGllbmUgbGEgY2hpYXZlIFwiUmVhbGVcIiBkYSB1dGlsaXp6YXJlIHBlciBsYSBwZXJzaXN0ZW56YSBkaSB1bmEgY2hpYXZlIGdlbmVyaWNhXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRhIHN0b3JpY2l6emFyZVxyXG4gICAgICogXHJcbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nfSBVbmlvbmUgZnJhIGwnaWRlbnRpZmljYXRpdm8gZGVsbGEgc2Vzc2lvbmUgZSBsYSBjaGlhdmUgc3BlY2lmaWNhdGFcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldEtleShrZXk6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2Vzc2lvbi5nZXRTZXNzaW9uS2V5KCkgKyBcIsKnXCIgKyBrZXkgKyBcIsKnXCI7XHJcbiAgICB9XHJcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUJhc2VQZXJzaXN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3BlcnNpc3Rvci9iYXNlL0lCYXNlUGVyc2lzdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbi8qKlxyXG4gKiBDbGFzc2UgYXN0cmF0dGEgY2hlIHJhcHByZXNlbnRhIGxvIHN0YXRvIGRpIHBlcnNpc3RlbnphIGZyYSBsYSBsaWJyZXJpYSBlIHVubyBzdG9yYWdlXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIElCYXNlUGVyc2lzdG9yIHtcclxuICAgIHBlcnNpc3Q8VD4oa2V5OiBzdHJpbmcsIGl0ZW06IFQpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gICAgcmVjb3ZlcjxUPihrZXk/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFQ+O1xyXG4gICAgcmVjb3ZlckFsbCgpOiBPYnNlcnZhYmxlPHsgW2luZGV4OiBzdHJpbmddOiBhbnkgfT47XHJcbiAgICBjbGVhcigpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gICAgcmVtb3ZlKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuICAgIHBlcnNpc3RBbGwoZGljdGlvbmFyeTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbiAgICBnZXRLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmc7XHJcbn0iXX0=
@@ -0,0 +1,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
+ /** @ignore Costruttore */
8
+ constructor(session) {
9
+ this.session = session;
10
+ }
11
+ /**
12
+ * Effettua il **persist** massivo di una lista di Chiave - Valore
13
+ *
14
+ * @param {{ [key: string]: string }} dictionary Dizionario (lista di Chiave - Valore) da persistere
15
+ */
16
+ persistAll(dictionary) {
17
+ let observables = [];
18
+ for (let key in dictionary)
19
+ observables.push(this.persist(key, dictionary[key]));
20
+ return forkJoin(observables).pipe(map(res => res.reduce((acc, val) => acc && val, true)));
21
+ }
22
+ /**
23
+ * Ottiene la chiave "Reale" da utilizzare per la persistenza di una chiave generica
24
+ *
25
+ * @param {string} key Chiave da storicizzare
26
+ *
27
+ * @returns {string} Unione fra l'identificativo della sessione e la chiave specificata
28
+ */
29
+ getKey(key) {
30
+ return this.session.getSessionKey() + "§" + key + "§";
31
+ }
32
+ }
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJlZmVyZW5jZXNQZXJzaXN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3BlcnNpc3Rvci9iYXNlL1ByZWZlcmVuY2VzUGVyc2lzdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXJDOztHQUVHO0FBQ0gsTUFBTSxPQUFnQixvQkFBb0I7SUFFdEMsMEJBQTBCO0lBQzFCLFlBQXNCLE9BQTZCO1FBQTdCLFlBQU8sR0FBUCxPQUFPLENBQXNCO0lBQUcsQ0FBQztJQXFDdkQ7Ozs7T0FJRztJQUNJLFVBQVUsQ0FBQyxVQUFxQztRQUNuRCxJQUFJLFdBQVcsR0FBMEIsRUFBRSxDQUFDO1FBQzVDLEtBQUssSUFBSSxHQUFHLElBQUksVUFBVTtZQUN0QixXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFekQsT0FBTyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLEdBQVc7UUFDckIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQzFELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIGZvcmtKb2luIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IEJhc2VTZXNzaW9uUmV0cmlldmVyIH0gZnJvbSBcIi4uLy4uL3Nlc3Npb24vYmFzZS9CYXNlU2Vzc2lvblJldHJpZXZlclwiO1xyXG5pbXBvcnQgeyBJQmFzZVBlcnNpc3RvciB9IGZyb20gXCIuL0lCYXNlUGVyc2lzdG9yXCI7XHJcblxyXG4vKipcclxuICogQ2xhc3NlIGFzdHJhdHRhIGNoZSByYXBwcmVzZW50YSBsbyBzdGF0byBkaSBwZXJzaXN0ZW56YSBmcmEgbGEgbGlicmVyaWEgZSB1bm8gc3RvcmFnZVxyXG4gKi9cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFByZWZlcmVuY2VzUGVyc2lzdG9yIGltcGxlbWVudHMgSUJhc2VQZXJzaXN0b3Ige1xyXG5cclxuICAgIC8qKiBAaWdub3JlIENvc3RydXR0b3JlICovXHJcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgc2Vzc2lvbjogQmFzZVNlc3Npb25SZXRyaWV2ZXIpIHt9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBTYWx2YSwgcGVyIHVuYSBzZXNzaW9uZSwgdW5hIGNoaWF2ZSBjb24gdW4gdmFsb3JlXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRhIHN0b3JpY2l6emFyZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWJzdHJhY3QgcGVyc2lzdDxUPihrZXk6IHN0cmluZywgaXRlbTogVCk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZWN1cGVyYSwgcGVyIHVuYSBzZXNzaW9uZSwgaWwgdmFsb3JlIGFzc2VnbmF0byBhZCB1bmEgY2hpYXZlXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRhIHJlY3VwZXJhcmVcclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMge09ic2VydmFibGU8VD59IFZhbG9yZSBzYWx2YXRvIHBlciBsYSBjaGlhdmUgKiprZXkqKlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWJzdHJhY3QgcmVjb3ZlcjxUPihrZXk/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFQ+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogUGVyIHVuYSBzZXNzaW9uZSByZWN1cGVyYSB0dXR0ZSBsZSBjb3BwaWUgQ2hpYXZlIC0gVmFsb3JlIHNhbHZhdGVcclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMge09ic2VydmFibGU8eyBbaW5kZXg6IHN0cmluZ106IGFueSB9Pn0gRGl6aW9uYXJpbyBjb24gdHV0dGUgbGUgcHJlZmVyZW5jZSBzYWx2YXRlIHBlciBsYSBzZXNzaW9uZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWJzdHJhY3QgcmVjb3ZlckFsbCgpOiBPYnNlcnZhYmxlPHsgW2luZGV4OiBzdHJpbmddOiBhbnkgfT47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiAgUmlwdWxpc2NlIGxlIHByZWZlcmVuY2Ugc2FsdmF0ZSByZWxhdGl2ZSBhZCB1bmEgc2Vzc2lvbmVcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFic3RyYWN0IGNsZWFyKCk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbGltaW5hIHVuIG9nZ2V0dG8gZGFsbGEgY2FjaGUgcGVyc2lzdGl0YVxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5IENoaWF2ZSBkYSByaW11b3ZlcmVcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFic3RyYWN0IHJlbW92ZShrZXk6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFZmZldHR1YSBpbCAqKnBlcnNpc3QqKiBtYXNzaXZvIGRpIHVuYSBsaXN0YSBkaSBDaGlhdmUgLSBWYWxvcmVcclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIHt7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9fSBkaWN0aW9uYXJ5IERpemlvbmFyaW8gKGxpc3RhIGRpIENoaWF2ZSAtIFZhbG9yZSkgZGEgcGVyc2lzdGVyZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgcGVyc2lzdEFsbChkaWN0aW9uYXJ5OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAgICAgbGV0IG9ic2VydmFibGVzOiBPYnNlcnZhYmxlPGJvb2xlYW4+W10gPSBbXTtcclxuICAgICAgICBmb3IgKGxldCBrZXkgaW4gZGljdGlvbmFyeSlcclxuICAgICAgICAgICAgb2JzZXJ2YWJsZXMucHVzaCh0aGlzLnBlcnNpc3Qoa2V5LCBkaWN0aW9uYXJ5W2tleV0pKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGZvcmtKb2luKG9ic2VydmFibGVzKS5waXBlKG1hcChyZXMgPT4gcmVzLnJlZHVjZSgoYWNjLCB2YWwpID0+IGFjYyAmJiB2YWwsIHRydWUpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBPdHRpZW5lIGxhIGNoaWF2ZSBcIlJlYWxlXCIgZGEgdXRpbGl6emFyZSBwZXIgbGEgcGVyc2lzdGVuemEgZGkgdW5hIGNoaWF2ZSBnZW5lcmljYVxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5IENoaWF2ZSBkYSBzdG9yaWNpenphcmVcclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMge3N0cmluZ30gVW5pb25lIGZyYSBsJ2lkZW50aWZpY2F0aXZvIGRlbGxhIHNlc3Npb25lIGUgbGEgY2hpYXZlIHNwZWNpZmljYXRhXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNlc3Npb24uZ2V0U2Vzc2lvbktleSgpICsgXCLCp1wiICsga2V5ICsgXCLCp1wiO1xyXG4gICAgfVxyXG59Il19
@@ -0,0 +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
+ }
46
+ LocalStorageCachePersistor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LocalStorageCachePersistor, deps: [{ token: i1.BaseSessionRetriever }], target: i0.ɵɵFactoryTarget.Injectable });
47
+ LocalStorageCachePersistor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LocalStorageCachePersistor });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LocalStorageCachePersistor, decorators: [{
49
+ type: Injectable
50
+ }], ctorParameters: function () { return [{ type: i1.BaseSessionRetriever }]; } });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9jYWxTdG9yYWdlQ2FjaGVQZXJzaXN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3BlcnNpc3Rvci9pbXBsZW1lbnRhdGlvbi9Mb2NhbFN0b3JhZ2VDYWNoZVBlcnNpc3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHeEQsT0FBTztBQUNQLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFHdkMsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGNBQWM7SUFFMUQsWUFBWSxPQUE2QjtRQUNyQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUVELCtCQUErQjtJQUN4QixPQUFPLENBQUksR0FBVyxFQUFFLElBQU87UUFDbEMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUM3RCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsK0JBQStCO0lBQ3hCLE9BQU8sQ0FBSSxHQUFXO1FBQ3pCLElBQUksR0FBRyxHQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRSxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsK0JBQStCO0lBQ3hCLE1BQU0sQ0FBQyxHQUFXO1FBQ3JCLElBQUksR0FBRyxHQUFHLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3BELE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCwrQkFBK0I7SUFDeEIsVUFBVTtRQUNiLElBQUksR0FBRyxHQUFpQyxFQUFFLENBQUM7UUFDM0MsS0FBSyxJQUFJLENBQUMsSUFBSSxZQUFZLEVBQUU7WUFDeEIsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDN0QsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN2RTtRQUVELE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCwrQkFBK0I7SUFDeEIsS0FBSztRQUNSLEtBQUssSUFBSSxDQUFDLElBQUksWUFBWSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzdELFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbEM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDOzt3SEExQ1EsMEJBQTBCOzRIQUExQiwwQkFBMEI7NEZBQTFCLDBCQUEwQjtrQkFEdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vLyBDbGFzc2lcclxuaW1wb3J0IHsgQmFzZVNlc3Npb25SZXRyaWV2ZXIgfSBmcm9tIFwiLi4vLi4vc2Vzc2lvbi9iYXNlL0Jhc2VTZXNzaW9uUmV0cmlldmVyXCI7XHJcbmltcG9ydCB7IENhY2hlUGVyc2lzdG9yIH0gZnJvbSBcIi4uL2Jhc2UvQ2FjaGVQZXJzaXN0b3JcIjtcclxuaW1wb3J0IHsgSUJhc2VQZXJzaXN0b3IgfSBmcm9tIFwiLi4vYmFzZS9JQmFzZVBlcnNpc3RvclwiO1xyXG5cclxuLy8gUlhKU1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBMb2NhbFN0b3JhZ2VDYWNoZVBlcnNpc3RvciBleHRlbmRzIENhY2hlUGVyc2lzdG9yIGltcGxlbWVudHMgSUJhc2VQZXJzaXN0b3Ige1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHNlc3Npb246IEJhc2VTZXNzaW9uUmV0cmlldmVyKSB7XHJcbiAgICAgICAgc3VwZXIoc2Vzc2lvbik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgVmVkaSBjbGFzc2UgYmFzZSAqL1xyXG4gICAgcHVibGljIHBlcnNpc3Q8VD4oa2V5OiBzdHJpbmcsIGl0ZW06IFQpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmdldEtleShrZXkpLCBKU09OLnN0cmluZ2lmeShpdGVtKSk7XHJcbiAgICAgICAgcmV0dXJuIG9mKHRydWUpLnBpcGUoZmlyc3QoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgVmVkaSBjbGFzc2UgYmFzZSAqL1xyXG4gICAgcHVibGljIHJlY292ZXI8VD4oa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFQ+IHtcclxuICAgICAgICB2YXIgcmV0ID0gPFQ+SlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmdldEtleShrZXkpKSk7XHJcbiAgICAgICAgcmV0dXJuIG9mKHJldCkucGlwZShmaXJzdCgpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogQGlnbm9yZSBWZWRpIGNsYXNzZSBiYXNlICovXHJcbiAgICBwdWJsaWMgcmVtb3ZlKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAgICAgdmFyIHJldCA9IGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHRoaXMuZ2V0S2V5KGtleSkpO1xyXG4gICAgICAgIHJldHVybiBvZih0cnVlKS5waXBlKGZpcnN0KCkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBAaWdub3JlIFZlZGkgY2xhc3NlIGJhc2UgKi9cclxuICAgIHB1YmxpYyByZWNvdmVyQWxsKCk6IE9ic2VydmFibGU8eyBbaW5kZXg6IHN0cmluZ106IGFueTsgfT4ge1xyXG4gICAgICAgIHZhciByZXQ6IHsgW2luZGV4OiBzdHJpbmddOiBzdHJpbmc7IH0gPSB7fTtcclxuICAgICAgICBmb3IgKHZhciBrIGluIGxvY2FsU3RvcmFnZSkge1xyXG4gICAgICAgICAgICBpZiAoay5pbmNsdWRlcyhcIsKnXCIpICYmIGsuc3RhcnRzV2l0aCh0aGlzLnNlc3Npb24uZ2V0U2Vzc2lvbktleSgpKSlcclxuICAgICAgICAgICAgICAgIHJldFtrLm1hdGNoKC/CpyguKinCpy8pWzFdXSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oaykpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIG9mKHJldCkucGlwZShmaXJzdCgpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogQGlnbm9yZSBWZWRpIGNsYXNzZSBiYXNlICovXHJcbiAgICBwdWJsaWMgY2xlYXIoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAgICAgZm9yICh2YXIgayBpbiBsb2NhbFN0b3JhZ2UpIHtcclxuICAgICAgICAgICAgaWYgKGsuaW5jbHVkZXMoXCLCp1wiKSAmJiBrLnN0YXJ0c1dpdGgodGhpcy5zZXNzaW9uLmdldFNlc3Npb25LZXkoKSkpXHJcbiAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG9mKHRydWUpLnBpcGUoZmlyc3QoKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbiJdfQ==
@@ -0,0 +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
+ }
46
+ LocalStoragePreferencesPersistor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LocalStoragePreferencesPersistor, deps: [{ token: i1.BaseSessionRetriever }], target: i0.ɵɵFactoryTarget.Injectable });
47
+ LocalStoragePreferencesPersistor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LocalStoragePreferencesPersistor });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LocalStoragePreferencesPersistor, decorators: [{
49
+ type: Injectable
50
+ }], ctorParameters: function () { return [{ type: i1.BaseSessionRetriever }]; } });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9jYWxTdG9yYWdlUHJlZmVyZW5jZXNQZXJzaXN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3BlcnNpc3Rvci9pbXBsZW1lbnRhdGlvbi9Mb2NhbFN0b3JhZ2VQcmVmZXJlbmNlc1BlcnNpc3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPO0FBQ1AsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJdkMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOEJBQThCLENBQUM7OztBQUlwRSxNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsb0JBQW9CO0lBRXRFLFlBQVksT0FBNkI7UUFDckMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25CLENBQUM7SUFFRCwrQkFBK0I7SUFDeEIsT0FBTyxDQUFJLEdBQVcsRUFBRSxJQUFPO1FBQ2xDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDN0QsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELCtCQUErQjtJQUN4QixPQUFPLENBQUksR0FBVztRQUN6QixJQUFJLEdBQUcsR0FBTSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEUsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELCtCQUErQjtJQUN4QixNQUFNLENBQUMsR0FBVztRQUNyQixJQUFJLEdBQUcsR0FBRyxZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNwRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsK0JBQStCO0lBQ3hCLFVBQVU7UUFDYixJQUFJLEdBQUcsR0FBaUMsRUFBRSxDQUFDO1FBQzNDLEtBQUssSUFBSSxDQUFDLElBQUksWUFBWSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzdELEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDdkU7UUFFRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsK0JBQStCO0lBQ3hCLEtBQUs7UUFDUixLQUFLLElBQUksQ0FBQyxJQUFJLFlBQVksRUFBRTtZQUN4QixJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUM3RCxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2xDO1FBQ0QsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbEMsQ0FBQzs7OEhBMUNRLGdDQUFnQztrSUFBaEMsZ0NBQWdDOzRGQUFoQyxnQ0FBZ0M7a0JBRDVDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy8gUlhKU1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcblxyXG4vLyBDbGFzc2lcclxuaW1wb3J0IHsgQmFzZVNlc3Npb25SZXRyaWV2ZXIgfSBmcm9tIFwiLi4vLi4vc2Vzc2lvbi9iYXNlL0Jhc2VTZXNzaW9uUmV0cmlldmVyXCI7XHJcbmltcG9ydCB7IFByZWZlcmVuY2VzUGVyc2lzdG9yIH0gZnJvbSBcIi4uL2Jhc2UvUHJlZmVyZW5jZXNQZXJzaXN0b3JcIjtcclxuaW1wb3J0IHsgSUJhc2VQZXJzaXN0b3IgfSBmcm9tIFwiLi4vYmFzZS9JQmFzZVBlcnNpc3RvclwiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgTG9jYWxTdG9yYWdlUHJlZmVyZW5jZXNQZXJzaXN0b3IgZXh0ZW5kcyBQcmVmZXJlbmNlc1BlcnNpc3RvciBpbXBsZW1lbnRzIElCYXNlUGVyc2lzdG9yIHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihzZXNzaW9uOiBCYXNlU2Vzc2lvblJldHJpZXZlcikge1xyXG4gICAgICAgIHN1cGVyKHNlc3Npb24pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBAaWdub3JlIFZlZGkgY2xhc3NlIGJhc2UgKi9cclxuICAgIHB1YmxpYyBwZXJzaXN0PFQ+KGtleTogc3RyaW5nLCBpdGVtOiBUKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5nZXRLZXkoa2V5KSwgSlNPTi5zdHJpbmdpZnkoaXRlbSkpO1xyXG4gICAgICAgIHJldHVybiBvZih0cnVlKS5waXBlKGZpcnN0KCkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBAaWdub3JlIFZlZGkgY2xhc3NlIGJhc2UgKi9cclxuICAgIHB1YmxpYyByZWNvdmVyPFQ+KGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxUPiB7XHJcbiAgICAgICAgdmFyIHJldCA9IDxUPkpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5nZXRLZXkoa2V5KSkpO1xyXG4gICAgICAgIHJldHVybiBvZihyZXQpLnBpcGUoZmlyc3QoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgVmVkaSBjbGFzc2UgYmFzZSAqL1xyXG4gICAgcHVibGljIHJlbW92ZShrZXk6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgICAgIHZhciByZXQgPSBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSh0aGlzLmdldEtleShrZXkpKTtcclxuICAgICAgICByZXR1cm4gb2YodHJ1ZSkucGlwZShmaXJzdCgpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogQGlnbm9yZSBWZWRpIGNsYXNzZSBiYXNlICovXHJcbiAgICBwdWJsaWMgcmVjb3ZlckFsbCgpOiBPYnNlcnZhYmxlPHsgW2luZGV4OiBzdHJpbmddOiBhbnk7IH0+IHtcclxuICAgICAgICB2YXIgcmV0OiB7IFtpbmRleDogc3RyaW5nXTogc3RyaW5nOyB9ID0ge307XHJcbiAgICAgICAgZm9yICh2YXIgayBpbiBsb2NhbFN0b3JhZ2UpIHtcclxuICAgICAgICAgICAgaWYgKGsuaW5jbHVkZXMoXCLCp1wiKSAmJiBrLnN0YXJ0c1dpdGgodGhpcy5zZXNzaW9uLmdldFNlc3Npb25LZXkoKSkpXHJcbiAgICAgICAgICAgICAgICByZXRbay5tYXRjaCgvwqcoLiopwqcvKVsxXV0gPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKGspKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBvZihyZXQpLnBpcGUoZmlyc3QoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgVmVkaSBjbGFzc2UgYmFzZSAqL1xyXG4gICAgcHVibGljIGNsZWFyKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgICAgIGZvciAodmFyIGsgaW4gbG9jYWxTdG9yYWdlKSB7XHJcbiAgICAgICAgICAgIGlmIChrLmluY2x1ZGVzKFwiwqdcIikgJiYgay5zdGFydHNXaXRoKHRoaXMuc2Vzc2lvbi5nZXRTZXNzaW9uS2V5KCkpKVxyXG4gICAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oayk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBvZih0cnVlKS5waXBlKGZpcnN0KCkpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,28 +1,33 @@
1
1
  import { NgModule } from '@angular/core';
2
- import { BasePreferencesPersistor } from './persistor/base/BasePreferencesPersistor';
3
- import { LocalStoragePersistor } from './persistor/implementation/LocalStoragePersistor';
2
+ import { CacheService } from './services/cache.service';
3
+ import { PreferencesService } from './services/preferences.service';
4
4
  import { BaseSessionRetriever } from './session/base/BaseSessionRetriever';
5
5
  import { DefaultSessionRetriever } from './session/implementation/DefaultSessionRetriever';
6
- import { PreferencesService } from './preferences.service';
7
6
  import { PREF_FULL_RETRIEVE_AT_START } 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';
8
11
  import * as i0 from "@angular/core";
9
12
  export class PreferencesModule {
10
13
  static forRoot(config) {
11
14
  return {
12
15
  ngModule: PreferencesModule,
13
16
  providers: [
17
+ CacheService,
14
18
  PreferencesService,
15
- { provide: BasePreferencesPersistor, useClass: config?.preferencePersistor || LocalStoragePersistor },
19
+ { provide: PreferencesPersistor, useClass: config?.preferencePersistor || LocalStoragePreferencesPersistor },
20
+ { provide: CachePersistor, useClass: config?.cachePersistor || LocalStorageCachePersistor },
16
21
  { provide: BaseSessionRetriever, useClass: config?.sessionRetriever || DefaultSessionRetriever },
17
22
  { provide: PREF_FULL_RETRIEVE_AT_START, useValue: config?.retrieveAllAtStart || true }
18
23
  ]
19
24
  };
20
25
  }
21
26
  }
22
- PreferencesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PreferencesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
23
- PreferencesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PreferencesModule });
24
- PreferencesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PreferencesModule });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: PreferencesModule, decorators: [{
27
+ PreferencesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PreferencesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
28
+ PreferencesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: PreferencesModule });
29
+ PreferencesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PreferencesModule });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PreferencesModule, decorators: [{
26
31
  type: NgModule
27
32
  }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlZmVyZW5jZXMvc3JjL2xpYi9wcmVmZXJlbmNlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUl6QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN6RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBR3ZELE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFnQztRQUM3QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1Qsa0JBQWtCO2dCQUNsQixFQUFFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixJQUFJLHFCQUFxQixFQUFFO2dCQUNyRyxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixJQUFJLHVCQUF1QixFQUFFO2dCQUNoRyxFQUFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixJQUFJLElBQUksRUFBRTthQUN2RjtTQUNGLENBQUM7SUFDSixDQUFDOzs4R0FYVSxpQkFBaUI7K0dBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBRDdCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vLyBNb2RlbGxpXG5pbXBvcnQgeyBQcmVmZXJlbmNlc01vZHVsZUNvbmZpZyB9IGZyb20gJy4vbW9kZWxzL1ByZWZlcmVuY2VzTW9kdWxlQ29uZmlnJztcbmltcG9ydCB7IEJhc2VQcmVmZXJlbmNlc1BlcnNpc3RvciB9IGZyb20gJy4vcGVyc2lzdG9yL2Jhc2UvQmFzZVByZWZlcmVuY2VzUGVyc2lzdG9yJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVBlcnNpc3RvciB9IGZyb20gJy4vcGVyc2lzdG9yL2ltcGxlbWVudGF0aW9uL0xvY2FsU3RvcmFnZVBlcnNpc3Rvcic7XG5pbXBvcnQgeyBCYXNlU2Vzc2lvblJldHJpZXZlciB9IGZyb20gJy4vc2Vzc2lvbi9iYXNlL0Jhc2VTZXNzaW9uUmV0cmlldmVyJztcbmltcG9ydCB7IERlZmF1bHRTZXNzaW9uUmV0cmlldmVyIH0gZnJvbSAnLi9zZXNzaW9uL2ltcGxlbWVudGF0aW9uL0RlZmF1bHRTZXNzaW9uUmV0cmlldmVyJztcbmltcG9ydCB7IFByZWZlcmVuY2VzU2VydmljZSB9IGZyb20gJy4vcHJlZmVyZW5jZXMuc2VydmljZSc7XG5pbXBvcnQgeyBQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQgfSBmcm9tICcuL3Rva2Vucyc7XG5cbkBOZ01vZHVsZSgpXG5leHBvcnQgY2xhc3MgUHJlZmVyZW5jZXNNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChjb25maWc/OiBQcmVmZXJlbmNlc01vZHVsZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8UHJlZmVyZW5jZXNNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IFByZWZlcmVuY2VzTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIFByZWZlcmVuY2VzU2VydmljZSxcbiAgICAgICAgeyBwcm92aWRlOiBCYXNlUHJlZmVyZW5jZXNQZXJzaXN0b3IsIHVzZUNsYXNzOiBjb25maWc/LnByZWZlcmVuY2VQZXJzaXN0b3IgfHwgTG9jYWxTdG9yYWdlUGVyc2lzdG9yIH0sXG4gICAgICAgIHsgcHJvdmlkZTogQmFzZVNlc3Npb25SZXRyaWV2ZXIsIHVzZUNsYXNzOiBjb25maWc/LnNlc3Npb25SZXRyaWV2ZXIgfHwgRGVmYXVsdFNlc3Npb25SZXRyaWV2ZXIgfSxcbiAgICAgICAgeyBwcm92aWRlOiBQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQsIHVzZVZhbHVlOiBjb25maWc/LnJldHJpZXZlQWxsQXRTdGFydCB8fCB0cnVlIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59Il19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlZmVyZW5jZXMvc3JjL2xpYi9wcmVmZXJlbmNlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUl6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDM0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDM0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSw2REFBNkQsQ0FBQzs7QUFHL0csTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQWdDO1FBQzdDLE9BQU87WUFDTCxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLFNBQVMsRUFBRTtnQkFDVCxZQUFZO2dCQUNaLGtCQUFrQjtnQkFDbEIsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxtQkFBbUIsSUFBSSxnQ0FBZ0MsRUFBRTtnQkFDNUcsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsY0FBYyxJQUFJLDBCQUEwQixFQUFFO2dCQUMzRixFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixJQUFJLHVCQUF1QixFQUFFO2dCQUNoRyxFQUFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixJQUFJLElBQUksRUFBRTthQUN2RjtTQUNGLENBQUM7SUFDSixDQUFDOzsrR0FiVSxpQkFBaUI7Z0hBQWpCLGlCQUFpQjtnSEFBakIsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBRDdCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8vIE1vZGVsbGlcclxuaW1wb3J0IHsgUHJlZmVyZW5jZXNNb2R1bGVDb25maWcgfSBmcm9tICcuL21vZGVscy9QcmVmZXJlbmNlc01vZHVsZUNvbmZpZyc7XHJcbmltcG9ydCB7IENhY2hlU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7IFByZWZlcmVuY2VzU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcHJlZmVyZW5jZXMuc2VydmljZSc7XHJcbmltcG9ydCB7IEJhc2VTZXNzaW9uUmV0cmlldmVyIH0gZnJvbSAnLi9zZXNzaW9uL2Jhc2UvQmFzZVNlc3Npb25SZXRyaWV2ZXInO1xyXG5pbXBvcnQgeyBEZWZhdWx0U2Vzc2lvblJldHJpZXZlciB9IGZyb20gJy4vc2Vzc2lvbi9pbXBsZW1lbnRhdGlvbi9EZWZhdWx0U2Vzc2lvblJldHJpZXZlcic7XHJcbmltcG9ydCB7IFBSRUZfRlVMTF9SRVRSSUVWRV9BVF9TVEFSVCB9IGZyb20gJy4vdG9rZW5zJztcclxuaW1wb3J0IHsgQ2FjaGVQZXJzaXN0b3IgfSBmcm9tICcuL3BlcnNpc3Rvci9iYXNlL0NhY2hlUGVyc2lzdG9yJztcclxuaW1wb3J0IHsgUHJlZmVyZW5jZXNQZXJzaXN0b3IgfSBmcm9tICcuL3BlcnNpc3Rvci9iYXNlL1ByZWZlcmVuY2VzUGVyc2lzdG9yJztcclxuaW1wb3J0IHsgTG9jYWxTdG9yYWdlQ2FjaGVQZXJzaXN0b3IgfSBmcm9tICcuL3BlcnNpc3Rvci9pbXBsZW1lbnRhdGlvbi9Mb2NhbFN0b3JhZ2VDYWNoZVBlcnNpc3Rvcic7XHJcbmltcG9ydCB7IExvY2FsU3RvcmFnZVByZWZlcmVuY2VzUGVyc2lzdG9yIH0gZnJvbSAnLi9wZXJzaXN0b3IvaW1wbGVtZW50YXRpb24vTG9jYWxTdG9yYWdlUHJlZmVyZW5jZXNQZXJzaXN0b3InO1xyXG5cclxuQE5nTW9kdWxlKClcclxuZXhwb3J0IGNsYXNzIFByZWZlcmVuY2VzTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChjb25maWc/OiBQcmVmZXJlbmNlc01vZHVsZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8UHJlZmVyZW5jZXNNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBQcmVmZXJlbmNlc01vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgQ2FjaGVTZXJ2aWNlLFxyXG4gICAgICAgIFByZWZlcmVuY2VzU2VydmljZSxcclxuICAgICAgICB7IHByb3ZpZGU6IFByZWZlcmVuY2VzUGVyc2lzdG9yLCB1c2VDbGFzczogY29uZmlnPy5wcmVmZXJlbmNlUGVyc2lzdG9yIHx8IExvY2FsU3RvcmFnZVByZWZlcmVuY2VzUGVyc2lzdG9yIH0sXHJcbiAgICAgICAgeyBwcm92aWRlOiBDYWNoZVBlcnNpc3RvciwgdXNlQ2xhc3M6IGNvbmZpZz8uY2FjaGVQZXJzaXN0b3IgfHwgTG9jYWxTdG9yYWdlQ2FjaGVQZXJzaXN0b3IgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IEJhc2VTZXNzaW9uUmV0cmlldmVyLCB1c2VDbGFzczogY29uZmlnPy5zZXNzaW9uUmV0cmlldmVyIHx8IERlZmF1bHRTZXNzaW9uUmV0cmlldmVyIH0sXHJcbiAgICAgICAgeyBwcm92aWRlOiBQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQsIHVzZVZhbHVlOiBjb25maWc/LnJldHJpZXZlQWxsQXRTdGFydCB8fCB0cnVlIH1cclxuICAgICAgXVxyXG4gICAgfTtcclxuICB9XHJcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUJhc2VTdG9yYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlZmVyZW5jZXMvc3JjL2xpYi9zZXJ2aWNlcy9iYXNlL0lCYXNlU3RvcmFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQmFzZVN0b3JhZ2Uge1xyXG4gIHNldEl0ZW08VD4oa2V5OiBzdHJpbmcsIGl0ZW06IFQpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gIHNldExvY2FsSXRlbTxUPihrZXk6IHN0cmluZywgaXRlbTogVCk6IGJvb2xlYW47XHJcbiAgZ2V0SXRlbTxUPihrZXk6IHN0cmluZywgY2FjaGVCdXN0OiBib29sZWFuKTogT2JzZXJ2YWJsZTxUPjtcclxuICBnZXRMb2NhbEl0ZW08VD4oa2V5OiBzdHJpbmcpOiBUO1xyXG4gIHJlbW92ZUl0ZW0oa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gIGNsZWFyKCk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbn0iXX0=
@@ -0,0 +1,119 @@
1
+ import { __decorate, __param } from "tslib";
2
+ // Angular
3
+ import { Inject, Optional } from '@angular/core';
4
+ import { of } from 'rxjs';
5
+ import { take, tap } from 'rxjs/operators';
6
+ // Modelli
7
+ import { PREF_FULL_RETRIEVE_AT_START } from '../../tokens';
8
+ /**
9
+ * Service che si occupa di salvare e recuperare le preferenze utente rispetto alle chiavi salvate
10
+ */
11
+ let BaseService = class BaseService {
12
+ /**
13
+ * Costruttore
14
+ *
15
+ * @ignore
16
+ */
17
+ constructor(persistor, PREF_FULL_RETRIEVE_AT_START) {
18
+ this.persistor = persistor;
19
+ this.PREF_FULL_RETRIEVE_AT_START = PREF_FULL_RETRIEVE_AT_START;
20
+ /** Store in memoria delle preferenze locali che sarà persistito per mezzo della classe che fa le veci del **BasePreferencesPersistor** */
21
+ this.LocalStore = {};
22
+ if (this.PREF_FULL_RETRIEVE_AT_START) {
23
+ this.persistor.recoverAll().pipe(take(1)).subscribe(t => {
24
+ for (let cProp in t)
25
+ this.LocalStore[cProp] = t[cProp];
26
+ });
27
+ }
28
+ }
29
+ /**
30
+ * Salva un oggetto sia nella cache locale che nel persistor
31
+ *
32
+ * @param {string} key Chiave di persistenza
33
+ * @param {T} item Oggetto da salvare
34
+ */
35
+ setItem(key, item) {
36
+ this.setLocalItem(key, item);
37
+ return this.persist(key, item);
38
+ }
39
+ /**
40
+ * Salva un oggetto solo nella cache locale. Dovrà essere persistito manualmente o andrà perso al riavvio dell'applicazione
41
+ *
42
+ * @param {string} key Chiave di persistenza
43
+ * @param {T} item Oggetto da salvare
44
+ */
45
+ setLocalItem(key, item) {
46
+ let detatched = JSON.parse(JSON.stringify(item));
47
+ if (detatched.selfsearch)
48
+ detatched.selfsearch = false;
49
+ this.LocalStore[key] = detatched;
50
+ return true;
51
+ }
52
+ /**
53
+ * Salva, per una sessione, una chiave con un valore, viene chiamato automaticamente dal metodo **store** ma dev'essere chiamato manualmente
54
+ * nel caso si utilizzi il metodo **storeLocal**
55
+ *
56
+ * @param {string} key Chiave da storicizzare
57
+ */
58
+ persist(key, item) {
59
+ return this.persistor.persist(key, item);
60
+ }
61
+ /**
62
+ * Recupera un oggetto in base a una chiave. Permette di accedere alla copia locale o alla copia persistita.
63
+ *
64
+ * @param {string} key Chiave del valore da recuperare
65
+ * @param {boolean} cacheBust Indica se ignorare il valore della cache locale e recuperare l'oggetto dallo store persistito,
66
+ * in caso fosse stato modificato fuori sistema o da un altro sistema
67
+ *
68
+ * @returns {T} Oggetto richiesto
69
+ */
70
+ getItem(key, cacheBust = false) {
71
+ if (this.LocalStore[key] && !cacheBust)
72
+ return of(this.LocalStore[key]);
73
+ else {
74
+ var obj = this.persistor.recover(key);
75
+ if (!obj)
76
+ return of(null);
77
+ obj.pipe(tap(item => { this.LocalStore[key] = item; }));
78
+ return obj;
79
+ }
80
+ }
81
+ /**
82
+ * Recupera un oggetto in base a una chiave. Permette di accedere solo alla copia locale
83
+ *
84
+ * @param {string} key Chiave del valore da recuperare
85
+ *
86
+ * @returns {T} Oggetto richiesto
87
+ */
88
+ getLocalItem(key) {
89
+ if (this.LocalStore[key])
90
+ return this.LocalStore[key];
91
+ else
92
+ return null;
93
+ }
94
+ /**
95
+ * Elimina un oggetto dalla cache sia locale che persistita
96
+ *
97
+ * @param {string} key Chiave da rimuovere
98
+ */
99
+ removeItem(key) {
100
+ if (this.LocalStore[key])
101
+ delete this.LocalStore[key];
102
+ return this.persistor.remove(key);
103
+ }
104
+ /**
105
+ * Ripulisce le impostazioni locali e le impostazioni salvate dal persistor
106
+ */
107
+ clear() {
108
+ // Pulisco la cache locale
109
+ this.LocalStore = {};
110
+ // "Committo" le modifiche
111
+ return this.persistor.clear();
112
+ }
113
+ };
114
+ BaseService = __decorate([
115
+ __param(1, Optional()),
116
+ __param(1, Inject(PREF_FULL_RETRIEVE_AT_START))
117
+ ], BaseService);
118
+ export { BaseService };
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlZmVyZW5jZXMvc3JjL2xpYi9zZXJ2aWNlcy9iYXNlL2Jhc2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUczQyxVQUFVO0FBQ1YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRzNEOztHQUVHO0FBQ0ksSUFBTSxXQUFXLEdBQWpCLE1BQU0sV0FBVztJQUt0Qjs7OztPQUlHO0lBQ0gsWUFBb0IsU0FBeUIsRUFBMkQsMkJBQW9DO1FBQXhILGNBQVMsR0FBVCxTQUFTLENBQWdCO1FBQTJELGdDQUEyQixHQUEzQiwyQkFBMkIsQ0FBUztRQVI1SSwwSUFBMEk7UUFDaEksZUFBVSxHQUE2QixFQUFFLENBQUM7UUFRbEQsSUFBSSxJQUFJLENBQUMsMkJBQTJCLEVBQUU7WUFFcEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUN0RCxLQUFLLElBQUksS0FBSyxJQUFJLENBQUM7b0JBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RDLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxPQUFPLENBQUksR0FBVyxFQUFFLElBQU87UUFDcEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDNUIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxZQUFZLENBQUksR0FBVyxFQUFFLElBQU87UUFDekMsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDakQsSUFBSSxTQUFTLENBQUMsVUFBVTtZQUN0QixTQUFTLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUMvQixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFNBQVMsQ0FBQztRQUNqQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNLLE9BQU8sQ0FBSSxHQUFXLEVBQUUsSUFBTztRQUNyQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSSxPQUFPLENBQUksR0FBVyxFQUFFLFlBQXFCLEtBQUs7UUFDdkQsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUztZQUNwQyxPQUFPLEVBQUUsQ0FBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7YUFDaEM7WUFDSCxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBSSxHQUFHLENBQUMsQ0FBQztZQUN6QyxJQUFJLENBQUMsR0FBRztnQkFDTixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUN2RCxPQUFPLEdBQUcsQ0FBQztTQUNaO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLFlBQVksQ0FBSSxHQUFXO1FBQ2hDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUM7WUFDdEIsT0FBVSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDOztZQUUvQixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFVBQVUsQ0FBQyxHQUFXO1FBQzNCLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUM7WUFDdEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRTlCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSztRQUNWLDBCQUEwQjtRQUMxQixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNyQiwwQkFBMEI7UUFDMUIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2hDLENBQUM7Q0FDRixDQUFBO0FBL0dZLFdBQVc7SUFVMEIsV0FBQSxRQUFRLEVBQUUsQ0FBQTtJQUFFLFdBQUEsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUE7R0FWcEYsV0FBVyxDQStHdkI7U0EvR1ksV0FBVyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgSW5qZWN0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IElCYXNlUGVyc2lzdG9yIH0gZnJvbSAnLi4vLi4vcGVyc2lzdG9yL2Jhc2UvSUJhc2VQZXJzaXN0b3InO1xyXG5cclxuLy8gTW9kZWxsaVxyXG5pbXBvcnQgeyBQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xyXG5pbXBvcnQgeyBJQmFzZVN0b3JhZ2UgfSBmcm9tICcuL0lCYXNlU3RvcmFnZSc7XHJcblxyXG4vKipcclxuICogU2VydmljZSBjaGUgc2kgb2NjdXBhIGRpIHNhbHZhcmUgZSByZWN1cGVyYXJlIGxlIHByZWZlcmVuemUgdXRlbnRlIHJpc3BldHRvIGFsbGUgY2hpYXZpIHNhbHZhdGVcclxuICovXHJcbmV4cG9ydCBjbGFzcyBCYXNlU2VydmljZSBpbXBsZW1lbnRzIElCYXNlU3RvcmFnZSB7XHJcblxyXG4gIC8qKiBTdG9yZSBpbiBtZW1vcmlhIGRlbGxlIHByZWZlcmVuemUgbG9jYWxpIGNoZSBzYXLDoCBwZXJzaXN0aXRvIHBlciBtZXp6byBkZWxsYSBjbGFzc2UgY2hlIGZhIGxlIHZlY2kgZGVsICoqQmFzZVByZWZlcmVuY2VzUGVyc2lzdG9yKiogKi9cclxuICBwcm90ZWN0ZWQgTG9jYWxTdG9yZTogeyBbaW5kZXg6IHN0cmluZ106IGFueSB9ID0ge307XHJcblxyXG4gIC8qKlxyXG4gICAqIENvc3RydXR0b3JlXHJcbiAgICogXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcGVyc2lzdG9yOiBJQmFzZVBlcnNpc3RvciwgQE9wdGlvbmFsKCkgQEluamVjdChQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQpIHByaXZhdGUgUFJFRl9GVUxMX1JFVFJJRVZFX0FUX1NUQVJUOiBib29sZWFuKSB7XHJcbiAgICBpZiAodGhpcy5QUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQpIHtcclxuXHJcbiAgICAgIHRoaXMucGVyc2lzdG9yLnJlY292ZXJBbGwoKS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSh0ID0+IHtcclxuICAgICAgICBmb3IgKGxldCBjUHJvcCBpbiB0KVxyXG4gICAgICAgICAgdGhpcy5Mb2NhbFN0b3JlW2NQcm9wXSA9IHRbY1Byb3BdO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNhbHZhIHVuIG9nZ2V0dG8gc2lhIG5lbGxhIGNhY2hlIGxvY2FsZSBjaGUgbmVsIHBlcnNpc3RvclxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRpIHBlcnNpc3RlbnphXHJcbiAgICogQHBhcmFtIHtUfSBpdGVtIE9nZ2V0dG8gZGEgc2FsdmFyZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRJdGVtPFQ+KGtleTogc3RyaW5nLCBpdGVtOiBUKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICB0aGlzLnNldExvY2FsSXRlbShrZXksIGl0ZW0pXHJcbiAgICByZXR1cm4gdGhpcy5wZXJzaXN0KGtleSwgaXRlbSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTYWx2YSB1biBvZ2dldHRvIHNvbG8gbmVsbGEgY2FjaGUgbG9jYWxlLiBEb3Zyw6AgZXNzZXJlIHBlcnNpc3RpdG8gbWFudWFsbWVudGUgbyBhbmRyw6AgcGVyc28gYWwgcmlhdnZpbyBkZWxsJ2FwcGxpY2F6aW9uZVxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRpIHBlcnNpc3RlbnphXHJcbiAgICogQHBhcmFtIHtUfSBpdGVtIE9nZ2V0dG8gZGEgc2FsdmFyZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRMb2NhbEl0ZW08VD4oa2V5OiBzdHJpbmcsIGl0ZW06IFQpOiBib29sZWFuIHtcclxuICAgIGxldCBkZXRhdGNoZWQgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGl0ZW0pKTtcclxuICAgIGlmIChkZXRhdGNoZWQuc2VsZnNlYXJjaClcclxuICAgICAgZGV0YXRjaGVkLnNlbGZzZWFyY2ggPSBmYWxzZTtcclxuICAgIHRoaXMuTG9jYWxTdG9yZVtrZXldID0gZGV0YXRjaGVkO1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTYWx2YSwgcGVyIHVuYSBzZXNzaW9uZSwgdW5hIGNoaWF2ZSBjb24gdW4gdmFsb3JlLCB2aWVuZSBjaGlhbWF0byBhdXRvbWF0aWNhbWVudGUgZGFsIG1ldG9kbyAqKnN0b3JlKiogbWEgZGV2J2Vzc2VyZSBjaGlhbWF0byBtYW51YWxtZW50ZVxyXG4gICAqIG5lbCBjYXNvIHNpIHV0aWxpenppIGlsIG1ldG9kbyAqKnN0b3JlTG9jYWwqKlxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRhIHN0b3JpY2l6emFyZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgcGVyc2lzdDxUPihrZXk6IHN0cmluZywgaXRlbTogVCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgcmV0dXJuIHRoaXMucGVyc2lzdG9yLnBlcnNpc3Qoa2V5LCBpdGVtKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlY3VwZXJhIHVuIG9nZ2V0dG8gaW4gYmFzZSBhIHVuYSBjaGlhdmUuIFBlcm1ldHRlIGRpIGFjY2VkZXJlIGFsbGEgY29waWEgbG9jYWxlIG8gYWxsYSBjb3BpYSBwZXJzaXN0aXRhLlxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRlbCB2YWxvcmUgZGEgcmVjdXBlcmFyZVxyXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gY2FjaGVCdXN0IEluZGljYSBzZSBpZ25vcmFyZSBpbCB2YWxvcmUgZGVsbGEgY2FjaGUgbG9jYWxlIGUgcmVjdXBlcmFyZSBsJ29nZ2V0dG8gZGFsbG8gc3RvcmUgcGVyc2lzdGl0bywgXHJcbiAgICogaW4gY2FzbyBmb3NzZSBzdGF0byBtb2RpZmljYXRvIGZ1b3JpIHNpc3RlbWEgbyBkYSB1biBhbHRybyBzaXN0ZW1hXHJcbiAgICogXHJcbiAgICogQHJldHVybnMge1R9IE9nZ2V0dG8gcmljaGllc3RvXHJcbiAgICovXHJcbiAgcHVibGljIGdldEl0ZW08VD4oa2V5OiBzdHJpbmcsIGNhY2hlQnVzdDogYm9vbGVhbiA9IGZhbHNlKTogT2JzZXJ2YWJsZTxUPiB7XHJcbiAgICBpZiAodGhpcy5Mb2NhbFN0b3JlW2tleV0gJiYgIWNhY2hlQnVzdClcclxuICAgICAgcmV0dXJuIG9mKDxUPnRoaXMuTG9jYWxTdG9yZVtrZXldKTtcclxuICAgIGVsc2Uge1xyXG4gICAgICB2YXIgb2JqID0gdGhpcy5wZXJzaXN0b3IucmVjb3ZlcjxUPihrZXkpO1xyXG4gICAgICBpZiAoIW9iailcclxuICAgICAgICByZXR1cm4gb2YobnVsbCk7XHJcbiAgICAgIG9iai5waXBlKHRhcChpdGVtID0+IHsgdGhpcy5Mb2NhbFN0b3JlW2tleV0gPSBpdGVtOyB9KSlcclxuICAgICAgcmV0dXJuIG9iajtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlY3VwZXJhIHVuIG9nZ2V0dG8gaW4gYmFzZSBhIHVuYSBjaGlhdmUuIFBlcm1ldHRlIGRpIGFjY2VkZXJlIHNvbG8gYWxsYSBjb3BpYSBsb2NhbGVcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5IENoaWF2ZSBkZWwgdmFsb3JlIGRhIHJlY3VwZXJhcmVcclxuICAgKiBcclxuICAgKiBAcmV0dXJucyB7VH0gT2dnZXR0byByaWNoaWVzdG9cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0TG9jYWxJdGVtPFQ+KGtleTogc3RyaW5nKTogVCB7XHJcbiAgICBpZiAodGhpcy5Mb2NhbFN0b3JlW2tleV0pXHJcbiAgICAgIHJldHVybiA8VD50aGlzLkxvY2FsU3RvcmVba2V5XTtcclxuICAgIGVsc2VcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFbGltaW5hIHVuIG9nZ2V0dG8gZGFsbGEgY2FjaGUgc2lhIGxvY2FsZSBjaGUgcGVyc2lzdGl0YVxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgQ2hpYXZlIGRhIHJpbXVvdmVyZVxyXG4gICAqL1xyXG4gIHB1YmxpYyByZW1vdmVJdGVtKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICBpZiAodGhpcy5Mb2NhbFN0b3JlW2tleV0pXHJcbiAgICAgIGRlbGV0ZSB0aGlzLkxvY2FsU3RvcmVba2V5XTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5wZXJzaXN0b3IucmVtb3ZlKGtleSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSaXB1bGlzY2UgbGUgaW1wb3N0YXppb25pIGxvY2FsaSBlIGxlIGltcG9zdGF6aW9uaSBzYWx2YXRlIGRhbCBwZXJzaXN0b3JcclxuICAgKi9cclxuICBwdWJsaWMgY2xlYXIoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAvLyBQdWxpc2NvIGxhIGNhY2hlIGxvY2FsZVxyXG4gICAgdGhpcy5Mb2NhbFN0b3JlID0ge307XHJcbiAgICAvLyBcIkNvbW1pdHRvXCIgbGUgbW9kaWZpY2hlXHJcbiAgICByZXR1cm4gdGhpcy5wZXJzaXN0b3IuY2xlYXIoKTtcclxuICB9XHJcbn0iXX0=
@@ -0,0 +1,25 @@
1
+ // Angular
2
+ import { Inject, Injectable, Optional } from '@angular/core';
3
+ import { BaseService } from './base/base.service';
4
+ // Modelli
5
+ import { PREF_FULL_RETRIEVE_AT_START } from './../tokens';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../persistor/base/CachePersistor";
8
+ /** Service che si occupa di salvare e recuperare le preferenze utente rispetto alle chiavi salvate */
9
+ export class CacheService extends BaseService {
10
+ /** @ignore Costruttore */
11
+ constructor(persistor, PREF_FULL_RETRIEVE_AT_START) {
12
+ super(persistor, PREF_FULL_RETRIEVE_AT_START);
13
+ }
14
+ }
15
+ CacheService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CacheService, deps: [{ token: i1.CachePersistor }, { token: PREF_FULL_RETRIEVE_AT_START, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
16
+ CacheService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CacheService });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CacheService, decorators: [{
18
+ type: Injectable
19
+ }], ctorParameters: function () { return [{ type: i1.CachePersistor }, { type: undefined, decorators: [{
20
+ type: Optional
21
+ }, {
22
+ type: Inject,
23
+ args: [PREF_FULL_RETRIEVE_AT_START]
24
+ }] }]; } });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZWZlcmVuY2VzL3NyYy9saWIvc2VydmljZXMvY2FjaGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRCxVQUFVO0FBQ1YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7QUFHMUQsc0dBQXNHO0FBRXRHLE1BQU0sT0FBTyxZQUFhLFNBQVEsV0FBVztJQUUzQywwQkFBMEI7SUFDMUIsWUFBWSxTQUF5QixFQUFtRCwyQkFBb0M7UUFDMUgsS0FBSyxDQUFDLFNBQVMsRUFBRSwyQkFBMkIsQ0FBQyxDQUFDO0lBQ2hELENBQUM7OzBHQUxVLFlBQVksZ0RBR29DLDJCQUEyQjs4R0FIM0UsWUFBWTs0RkFBWixZQUFZO2tCQUR4QixVQUFVOzswQkFJK0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmFzZVNlcnZpY2UgfSBmcm9tICcuL2Jhc2UvYmFzZS5zZXJ2aWNlJztcclxuXHJcbi8vIE1vZGVsbGlcclxuaW1wb3J0IHsgUFJFRl9GVUxMX1JFVFJJRVZFX0FUX1NUQVJUIH0gZnJvbSAnLi8uLi90b2tlbnMnO1xyXG5pbXBvcnQgeyBDYWNoZVBlcnNpc3RvciB9IGZyb20gJy4uL3BlcnNpc3Rvci9iYXNlL0NhY2hlUGVyc2lzdG9yJztcclxuXHJcbi8qKiBTZXJ2aWNlIGNoZSBzaSBvY2N1cGEgZGkgc2FsdmFyZSBlIHJlY3VwZXJhcmUgbGUgcHJlZmVyZW56ZSB1dGVudGUgcmlzcGV0dG8gYWxsZSBjaGlhdmkgc2FsdmF0ZSAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBDYWNoZVNlcnZpY2UgZXh0ZW5kcyBCYXNlU2VydmljZSB7XHJcblxyXG4gIC8qKiBAaWdub3JlIENvc3RydXR0b3JlICovXHJcbiAgY29uc3RydWN0b3IocGVyc2lzdG9yOiBDYWNoZVBlcnNpc3RvciwgQE9wdGlvbmFsKCkgQEluamVjdChQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQpIFBSRUZfRlVMTF9SRVRSSUVWRV9BVF9TVEFSVDogYm9vbGVhbikge1xyXG4gICAgc3VwZXIocGVyc2lzdG9yLCBQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQpO1xyXG4gIH1cclxufSJdfQ==
@@ -0,0 +1,25 @@
1
+ // Angular
2
+ import { Inject, Injectable, Optional } from '@angular/core';
3
+ import { BaseService } from './base/base.service';
4
+ // Modelli
5
+ import { PREF_FULL_RETRIEVE_AT_START } from './../tokens';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../persistor/base/PreferencesPersistor";
8
+ /** Service che si occupa di salvare e recuperare le preferenze utente rispetto alle chiavi salvate */
9
+ export class PreferencesService extends BaseService {
10
+ /** @ignore Costruttore */
11
+ constructor(persistor, PREF_FULL_RETRIEVE_AT_START) {
12
+ super(persistor, PREF_FULL_RETRIEVE_AT_START);
13
+ }
14
+ }
15
+ PreferencesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PreferencesService, deps: [{ token: i1.PreferencesPersistor }, { token: PREF_FULL_RETRIEVE_AT_START, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
16
+ PreferencesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PreferencesService });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PreferencesService, decorators: [{
18
+ type: Injectable
19
+ }], ctorParameters: function () { return [{ type: i1.PreferencesPersistor }, { type: undefined, decorators: [{
20
+ type: Optional
21
+ }, {
22
+ type: Inject,
23
+ args: [PREF_FULL_RETRIEVE_AT_START]
24
+ }] }]; } });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmVyZW5jZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZWZlcmVuY2VzL3NyYy9saWIvc2VydmljZXMvcHJlZmVyZW5jZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRCxVQUFVO0FBQ1YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7QUFHMUQsc0dBQXNHO0FBRXRHLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxXQUFXO0lBRWpELDBCQUEwQjtJQUMxQixZQUFZLFNBQStCLEVBQW1ELDJCQUFvQztRQUNoSSxLQUFLLENBQUMsU0FBUyxFQUFFLDJCQUEyQixDQUFDLENBQUM7SUFDaEQsQ0FBQzs7Z0hBTFUsa0JBQWtCLHNEQUdvQywyQkFBMkI7b0hBSGpGLGtCQUFrQjs0RkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVOzswQkFJcUMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmFzZVNlcnZpY2UgfSBmcm9tICcuL2Jhc2UvYmFzZS5zZXJ2aWNlJztcclxuXHJcbi8vIE1vZGVsbGlcclxuaW1wb3J0IHsgUFJFRl9GVUxMX1JFVFJJRVZFX0FUX1NUQVJUIH0gZnJvbSAnLi8uLi90b2tlbnMnO1xyXG5pbXBvcnQgeyBQcmVmZXJlbmNlc1BlcnNpc3RvciB9IGZyb20gJy4uL3BlcnNpc3Rvci9iYXNlL1ByZWZlcmVuY2VzUGVyc2lzdG9yJztcclxuXHJcbi8qKiBTZXJ2aWNlIGNoZSBzaSBvY2N1cGEgZGkgc2FsdmFyZSBlIHJlY3VwZXJhcmUgbGUgcHJlZmVyZW56ZSB1dGVudGUgcmlzcGV0dG8gYWxsZSBjaGlhdmkgc2FsdmF0ZSAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBQcmVmZXJlbmNlc1NlcnZpY2UgZXh0ZW5kcyBCYXNlU2VydmljZSB7XHJcblxyXG4gIC8qKiBAaWdub3JlIENvc3RydXR0b3JlICovXHJcbiAgY29uc3RydWN0b3IocGVyc2lzdG9yOiBQcmVmZXJlbmNlc1BlcnNpc3RvciwgQE9wdGlvbmFsKCkgQEluamVjdChQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQpIFBSRUZfRlVMTF9SRVRSSUVWRV9BVF9TVEFSVDogYm9vbGVhbikge1xyXG4gICAgc3VwZXIocGVyc2lzdG9yLCBQUkVGX0ZVTExfUkVUUklFVkVfQVRfU1RBUlQpO1xyXG4gIH1cclxufSJdfQ==
@@ -20,9 +20,9 @@ export class DefaultSessionRetriever extends BaseSessionRetriever {
20
20
  return "DUMMY_SESSION";
21
21
  }
22
22
  }
23
- DefaultSessionRetriever.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: DefaultSessionRetriever, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
24
- DefaultSessionRetriever.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: DefaultSessionRetriever });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: DefaultSessionRetriever, decorators: [{
23
+ DefaultSessionRetriever.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DefaultSessionRetriever, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
24
+ DefaultSessionRetriever.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DefaultSessionRetriever });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DefaultSessionRetriever, decorators: [{
26
26
  type: Injectable
27
27
  }], ctorParameters: function () { return []; } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdFNlc3Npb25SZXRyaWV2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3Nlc3Npb24vaW1wbGVtZW50YXRpb24vRGVmYXVsdFNlc3Npb25SZXRyaWV2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFFcEU7O0dBRUc7QUFFSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsb0JBQW9CO0lBRTdEOzs7O09BSUc7SUFDSCxnQkFBZ0IsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRTFCOzs7O09BSUc7SUFDSCxhQUFhO1FBQ1QsT0FBTyxlQUFlLENBQUM7SUFDM0IsQ0FBQzs7b0hBaEJRLHVCQUF1Qjt3SEFBdkIsdUJBQXVCOzJGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQmFzZVNlc3Npb25SZXRyaWV2ZXIgfSBmcm9tIFwiLi4vYmFzZS9CYXNlU2Vzc2lvblJldHJpZXZlclwiO1xyXG5cclxuLyoqXHJcbiAqIEltcGxlbWVudGF6aW9uZSBkaSBkZWZhdWx0IHBlciBsYSBjbGFzc2UgKipCYXNlU2Vzc2lvblJldHJpZXZlcioqXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0U2Vzc2lvblJldHJpZXZlciBleHRlbmRzIEJhc2VTZXNzaW9uUmV0cmlldmVyIHtcclxuXHJcbiAgICAvKipcclxuICAgICAqIENvc3RydXR0b3JlXHJcbiAgICAgKiBcclxuICAgICAqIEBpZ25vcmVcclxuICAgICAqL1xyXG4gICAgY29uc3RydWN0b3IoKSB7IHN1cGVyKCk7IH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE90dGllbmUgdW4gSUQgc2Vzc2lvbmVcclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMge3N0cmluZ30gSUQgc2Vzc2lvbmVcclxuICAgICAqL1xyXG4gICAgZ2V0U2Vzc2lvbktleSgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBcIkRVTU1ZX1NFU1NJT05cIjtcclxuICAgIH1cclxufSJdfQ==
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdFNlc3Npb25SZXRyaWV2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVmZXJlbmNlcy9zcmMvbGliL3Nlc3Npb24vaW1wbGVtZW50YXRpb24vRGVmYXVsdFNlc3Npb25SZXRyaWV2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFFcEU7O0dBRUc7QUFFSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsb0JBQW9CO0lBRTdEOzs7O09BSUc7SUFDSCxnQkFBZ0IsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRTFCOzs7O09BSUc7SUFDSCxhQUFhO1FBQ1QsT0FBTyxlQUFlLENBQUM7SUFDM0IsQ0FBQzs7cUhBaEJRLHVCQUF1Qjt5SEFBdkIsdUJBQXVCOzRGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQmFzZVNlc3Npb25SZXRyaWV2ZXIgfSBmcm9tIFwiLi4vYmFzZS9CYXNlU2Vzc2lvblJldHJpZXZlclwiO1xyXG5cclxuLyoqXHJcbiAqIEltcGxlbWVudGF6aW9uZSBkaSBkZWZhdWx0IHBlciBsYSBjbGFzc2UgKipCYXNlU2Vzc2lvblJldHJpZXZlcioqXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0U2Vzc2lvblJldHJpZXZlciBleHRlbmRzIEJhc2VTZXNzaW9uUmV0cmlldmVyIHtcclxuXHJcbiAgICAvKipcclxuICAgICAqIENvc3RydXR0b3JlXHJcbiAgICAgKiBcclxuICAgICAqIEBpZ25vcmVcclxuICAgICAqL1xyXG4gICAgY29uc3RydWN0b3IoKSB7IHN1cGVyKCk7IH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE90dGllbmUgdW4gSUQgc2Vzc2lvbmVcclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMge3N0cmluZ30gSUQgc2Vzc2lvbmVcclxuICAgICAqL1xyXG4gICAgZ2V0U2Vzc2lvbktleSgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBcIkRVTU1ZX1NFU1NJT05cIjtcclxuICAgIH1cclxufSJdfQ==
@@ -1,7 +1,9 @@
1
- export * from './lib/preferences.service';
1
+ export * from './lib/services/cache.service';
2
+ export * from './lib/services/preferences.service';
2
3
  export * from './lib/models/PreferencesModuleConfig';
3
4
  export * from './lib/tokens';
4
5
  export * from './lib/preferences.module';
5
- export * from './lib/persistor/base/BasePreferencesPersistor';
6
+ export * from './lib/persistor/base/CachePersistor';
7
+ export * from './lib/persistor/base/PreferencesPersistor';
6
8
  export * from './lib/session/base/BaseSessionRetriever';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ByZWZlcmVuY2VzL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyx5Q0FBeUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL3ByZWZlcmVuY2VzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL1ByZWZlcmVuY2VzTW9kdWxlQ29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Rva2Vucyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wcmVmZXJlbmNlcy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGVyc2lzdG9yL2Jhc2UvQmFzZVByZWZlcmVuY2VzUGVyc2lzdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Nlc3Npb24vYmFzZS9CYXNlU2Vzc2lvblJldHJpZXZlcic7Il19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ByZWZlcmVuY2VzL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMseUNBQXlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9jYWNoZS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcHJlZmVyZW5jZXMuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9QcmVmZXJlbmNlc01vZHVsZUNvbmZpZyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Rva2Vucyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByZWZlcmVuY2VzLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BlcnNpc3Rvci9iYXNlL0NhY2hlUGVyc2lzdG9yJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGVyc2lzdG9yL2Jhc2UvUHJlZmVyZW5jZXNQZXJzaXN0b3InO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXNzaW9uL2Jhc2UvQmFzZVNlc3Npb25SZXRyaWV2ZXInOyJdfQ==