@eui/core 15.4.1 → 15.4.2

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 (213) hide show
  1. package/LICENSE +296 -296
  2. package/README.md +26 -26
  3. package/assets/i18n-eui/bg.json +114 -114
  4. package/assets/i18n-eui/cs.json +114 -114
  5. package/assets/i18n-eui/da.json +114 -114
  6. package/assets/i18n-eui/de.json +114 -114
  7. package/assets/i18n-eui/el.json +114 -114
  8. package/assets/i18n-eui/en.json +113 -113
  9. package/assets/i18n-eui/es.json +114 -114
  10. package/assets/i18n-eui/et.json +114 -114
  11. package/assets/i18n-eui/fi.json +114 -114
  12. package/assets/i18n-eui/fr.json +114 -114
  13. package/assets/i18n-eui/ga.json +114 -114
  14. package/assets/i18n-eui/hr.json +114 -114
  15. package/assets/i18n-eui/hu.json +114 -114
  16. package/assets/i18n-eui/it.json +114 -114
  17. package/assets/i18n-eui/lt.json +114 -114
  18. package/assets/i18n-eui/lv.json +114 -114
  19. package/assets/i18n-eui/mt.json +114 -114
  20. package/assets/i18n-eui/nl.json +114 -114
  21. package/assets/i18n-eui/pl.json +114 -114
  22. package/assets/i18n-eui/pt.json +114 -114
  23. package/assets/i18n-eui/ro.json +114 -114
  24. package/assets/i18n-eui/sk.json +114 -114
  25. package/assets/i18n-eui/sl.json +114 -114
  26. package/assets/i18n-eui/sv.json +114 -114
  27. package/docs/classes/RouterMock.html +5 -5
  28. package/docs/dependencies.html +7 -95
  29. package/docs/index.html +59 -36
  30. package/docs/injectables/CoreAppEffects.html +51 -51
  31. package/docs/js/menu-wc.js +7 -12
  32. package/docs/js/menu-wc_es5.js +1 -1
  33. package/docs/js/search/search_index.js +2 -2
  34. package/docs/miscellaneous/variables.html +1211 -1211
  35. package/esm2020/eui-core.mjs +4 -4
  36. package/esm2020/index.mjs +13 -13
  37. package/esm2020/lib/eui-core.module.mjs +78 -78
  38. package/esm2020/lib/helpers/date-helpers.mjs +3 -3
  39. package/esm2020/lib/helpers/dom-helpers.mjs +87 -87
  40. package/esm2020/lib/helpers/event-helpers.mjs +9 -9
  41. package/esm2020/lib/helpers/form-helpers.mjs +42 -42
  42. package/esm2020/lib/helpers/format-helpers.mjs +66 -66
  43. package/esm2020/lib/helpers/http-helpers.mjs +7 -7
  44. package/esm2020/lib/helpers/index.mjs +8 -8
  45. package/esm2020/lib/helpers/utils.mjs +7 -7
  46. package/esm2020/lib/interceptors/add-lang-param.interceptor.mjs +35 -35
  47. package/esm2020/lib/interceptors/cache-prevention.interceptor.mjs +21 -21
  48. package/esm2020/lib/interceptors/cors-security.interceptor.mjs +15 -15
  49. package/esm2020/lib/interceptors/csrf-prevention.interceptor.mjs +15 -15
  50. package/esm2020/lib/interceptors/eu-login-session-timeout-handling.interceptor.mjs +72 -72
  51. package/esm2020/lib/interceptors/index.mjs +8 -8
  52. package/esm2020/lib/interceptors/openid/index.mjs +4 -4
  53. package/esm2020/lib/interceptors/openid/openid-connect.interceptor.mjs +149 -149
  54. package/esm2020/lib/interceptors/openid/openid-connect.service.mjs +56 -56
  55. package/esm2020/lib/interceptors/openid/openid-connect.service.mock.mjs +8 -8
  56. package/esm2020/lib/interceptors/ux-request-error-model.interceptor.mjs +31 -31
  57. package/esm2020/lib/services/app/eui-init-app.mjs +29 -29
  58. package/esm2020/lib/services/app/eui-pre-init-app.mjs +43 -43
  59. package/esm2020/lib/services/app/eui-startup.mjs +40 -40
  60. package/esm2020/lib/services/app/factories/log.mjs +55 -55
  61. package/esm2020/lib/services/app/index.mjs +2 -2
  62. package/esm2020/lib/services/config/defaults.mjs +68 -68
  63. package/esm2020/lib/services/config/tokens.mjs +74 -74
  64. package/esm2020/lib/services/errors/eui.error.mjs +38 -38
  65. package/esm2020/lib/services/errors/global-error-handler.mjs +24 -24
  66. package/esm2020/lib/services/errors/http-error-handler-callback-functions.mjs +17 -17
  67. package/esm2020/lib/services/errors/http-error-handler.interceptor.mjs +55 -55
  68. package/esm2020/lib/services/errors/index.mjs +5 -5
  69. package/esm2020/lib/services/i18n/i18n.loader.mjs +198 -198
  70. package/esm2020/lib/services/i18n/i18n.resource.mjs +43 -43
  71. package/esm2020/lib/services/i18n/i18n.service.mjs +228 -228
  72. package/esm2020/lib/services/i18n/i18n.service.mock.mjs +38 -38
  73. package/esm2020/lib/services/i18n/index.mjs +6 -6
  74. package/esm2020/lib/services/index.mjs +19 -19
  75. package/esm2020/lib/services/locale/index.mjs +3 -3
  76. package/esm2020/lib/services/locale/locale.service.mjs +232 -232
  77. package/esm2020/lib/services/locale/locale.service.mock.mjs +43 -43
  78. package/esm2020/lib/services/log/index.mjs +4 -4
  79. package/esm2020/lib/services/log/log.module.mjs +38 -38
  80. package/esm2020/lib/services/log/log.service.mjs +51 -51
  81. package/esm2020/lib/services/log/log.service.mock.mjs +7 -7
  82. package/esm2020/lib/services/permission/permission.service.mjs +110 -110
  83. package/esm2020/lib/services/queue/api-queue.service.mjs +137 -137
  84. package/esm2020/lib/services/queue/api-queue.service.mock.mjs +23 -23
  85. package/esm2020/lib/services/queue/index.mjs +3 -3
  86. package/esm2020/lib/services/storage/async-storage.service.mjs +17 -17
  87. package/esm2020/lib/services/storage/async-storage.service.mock.mjs +22 -22
  88. package/esm2020/lib/services/storage/index.mjs +8 -8
  89. package/esm2020/lib/services/storage/local-forage.service.mjs +93 -93
  90. package/esm2020/lib/services/storage/local-storage.service.mjs +75 -75
  91. package/esm2020/lib/services/storage/session-storage.service.mjs +75 -75
  92. package/esm2020/lib/services/storage/storage.service.mjs +6 -6
  93. package/esm2020/lib/services/storage/storage.service.mock.mjs +12 -12
  94. package/esm2020/lib/services/store/actions/app.actions.mjs +74 -74
  95. package/esm2020/lib/services/store/actions/i18n.actions.mjs +11 -11
  96. package/esm2020/lib/services/store/actions/index.mjs +6 -6
  97. package/esm2020/lib/services/store/actions/locale.actions.mjs +11 -11
  98. package/esm2020/lib/services/store/actions/notifications.actions.mjs +11 -11
  99. package/esm2020/lib/services/store/actions/user.actions.mjs +39 -39
  100. package/esm2020/lib/services/store/effects/app.effects.mjs +55 -55
  101. package/esm2020/lib/services/store/effects/index.mjs +4 -4
  102. package/esm2020/lib/services/store/index.mjs +6 -6
  103. package/esm2020/lib/services/store/reducers/app.reducers.mjs +56 -56
  104. package/esm2020/lib/services/store/reducers/core.reducers.mjs +13 -13
  105. package/esm2020/lib/services/store/reducers/i18n.reducers.mjs +16 -16
  106. package/esm2020/lib/services/store/reducers/index.mjs +8 -8
  107. package/esm2020/lib/services/store/reducers/locale.reducers.mjs +16 -16
  108. package/esm2020/lib/services/store/reducers/meta.reducers.mjs +89 -89
  109. package/esm2020/lib/services/store/reducers/notifications.reducers.mjs +13 -13
  110. package/esm2020/lib/services/store/reducers/user.reducers.mjs +43 -43
  111. package/esm2020/lib/services/store/store.service.mjs +112 -112
  112. package/esm2020/lib/services/store/store.service.mock.mjs +22 -22
  113. package/esm2020/lib/services/user/index.mjs +3 -3
  114. package/esm2020/lib/services/user/user.service.mjs +64 -64
  115. package/esm2020/lib/services/user/user.service.mock.mjs +32 -32
  116. package/esm2020/lib/services/ux-app-shell.service.mjs +690 -690
  117. package/esm2020/lib/services/ux-dynamic-component/ux-dynamic-component.service.mjs +63 -63
  118. package/esm2020/lib/services/ux-dynamic-menu/ux-dynamic-menu.service.mjs +66 -66
  119. package/esm2020/lib/services/ux-error-feedback/ux-error-feedback.service.mjs +99 -99
  120. package/esm2020/lib/services/ux-error-feedback/ux-error-handler.operator.mjs +16 -16
  121. package/esm2020/lib/services/ux-timezone.service.mjs +716 -716
  122. package/fesm2015/eui-core.mjs +4484 -4484
  123. package/fesm2015/eui-core.mjs.map +1 -1
  124. package/fesm2020/eui-core.mjs +4538 -4538
  125. package/fesm2020/eui-core.mjs.map +1 -1
  126. package/index.d.ts +5 -5
  127. package/lib/eui-core.module.d.ts +20 -20
  128. package/lib/helpers/date-helpers.d.ts +2 -2
  129. package/lib/helpers/dom-helpers.d.ts +26 -26
  130. package/lib/helpers/event-helpers.d.ts +1 -1
  131. package/lib/helpers/form-helpers.d.ts +10 -10
  132. package/lib/helpers/format-helpers.d.ts +12 -12
  133. package/lib/helpers/http-helpers.d.ts +2 -2
  134. package/lib/helpers/index.d.ts +7 -7
  135. package/lib/helpers/utils.d.ts +6 -6
  136. package/lib/interceptors/add-lang-param.interceptor.d.ts +16 -16
  137. package/lib/interceptors/cache-prevention.interceptor.d.ts +8 -8
  138. package/lib/interceptors/cors-security.interceptor.d.ts +8 -8
  139. package/lib/interceptors/csrf-prevention.interceptor.d.ts +8 -8
  140. package/lib/interceptors/eu-login-session-timeout-handling.interceptor.d.ts +12 -12
  141. package/lib/interceptors/index.d.ts +7 -7
  142. package/lib/interceptors/openid/index.d.ts +3 -3
  143. package/lib/interceptors/openid/openid-connect.interceptor.d.ts +14 -14
  144. package/lib/interceptors/openid/openid-connect.service.d.ts +17 -17
  145. package/lib/interceptors/openid/openid-connect.service.mock.d.ts +5 -5
  146. package/lib/interceptors/ux-request-error-model.interceptor.d.ts +13 -13
  147. package/lib/services/app/eui-init-app.d.ts +2 -2
  148. package/lib/services/app/eui-pre-init-app.d.ts +16 -16
  149. package/lib/services/app/eui-startup.d.ts +4 -4
  150. package/lib/services/app/factories/log.d.ts +25 -25
  151. package/lib/services/app/index.d.ts +1 -1
  152. package/lib/services/config/defaults.d.ts +11 -11
  153. package/lib/services/config/tokens.d.ts +19 -19
  154. package/lib/services/errors/eui.error.d.ts +15 -15
  155. package/lib/services/errors/global-error-handler.d.ts +10 -10
  156. package/lib/services/errors/http-error-handler-callback-functions.d.ts +6 -6
  157. package/lib/services/errors/http-error-handler.interceptor.d.ts +22 -22
  158. package/lib/services/errors/index.d.ts +4 -4
  159. package/lib/services/i18n/i18n.loader.d.ts +79 -79
  160. package/lib/services/i18n/i18n.resource.d.ts +35 -35
  161. package/lib/services/i18n/i18n.service.d.ts +73 -73
  162. package/lib/services/i18n/i18n.service.mock.d.ts +19 -19
  163. package/lib/services/i18n/index.d.ts +4 -4
  164. package/lib/services/index.d.ts +18 -18
  165. package/lib/services/locale/index.d.ts +2 -2
  166. package/lib/services/locale/locale.service.d.ts +68 -68
  167. package/lib/services/locale/locale.service.mock.d.ts +15 -15
  168. package/lib/services/log/index.d.ts +3 -3
  169. package/lib/services/log/log.module.d.ts +15 -15
  170. package/lib/services/log/log.service.d.ts +27 -27
  171. package/lib/services/log/log.service.mock.d.ts +4 -4
  172. package/lib/services/permission/permission.service.d.ts +52 -52
  173. package/lib/services/queue/api-queue.service.d.ts +76 -76
  174. package/lib/services/queue/api-queue.service.mock.d.ts +13 -13
  175. package/lib/services/queue/index.d.ts +2 -2
  176. package/lib/services/storage/async-storage.service.d.ts +44 -44
  177. package/lib/services/storage/async-storage.service.mock.d.ts +11 -11
  178. package/lib/services/storage/index.d.ts +7 -7
  179. package/lib/services/storage/local-forage.service.d.ts +48 -48
  180. package/lib/services/storage/local-storage.service.d.ts +34 -34
  181. package/lib/services/storage/session-storage.service.d.ts +34 -34
  182. package/lib/services/storage/storage.service.d.ts +28 -28
  183. package/lib/services/storage/storage.service.mock.d.ts +7 -7
  184. package/lib/services/store/actions/app.actions.d.ts +82 -82
  185. package/lib/services/store/actions/i18n.actions.d.ts +11 -11
  186. package/lib/services/store/actions/index.d.ts +5 -5
  187. package/lib/services/store/actions/locale.actions.d.ts +11 -11
  188. package/lib/services/store/actions/notifications.actions.d.ts +10 -10
  189. package/lib/services/store/actions/user.actions.d.ts +35 -35
  190. package/lib/services/store/effects/app.effects.d.ts +19 -19
  191. package/lib/services/store/effects/index.d.ts +3 -3
  192. package/lib/services/store/index.d.ts +5 -5
  193. package/lib/services/store/reducers/app.reducers.d.ts +3 -3
  194. package/lib/services/store/reducers/core.reducers.d.ts +3 -3
  195. package/lib/services/store/reducers/i18n.reducers.d.ts +3 -3
  196. package/lib/services/store/reducers/index.d.ts +7 -7
  197. package/lib/services/store/reducers/locale.reducers.d.ts +3 -3
  198. package/lib/services/store/reducers/meta.reducers.d.ts +17 -17
  199. package/lib/services/store/reducers/notifications.reducers.d.ts +3 -3
  200. package/lib/services/store/reducers/user.reducers.d.ts +3 -3
  201. package/lib/services/store/store.service.d.ts +43 -43
  202. package/lib/services/store/store.service.mock.d.ts +12 -12
  203. package/lib/services/user/index.d.ts +2 -2
  204. package/lib/services/user/user.service.d.ts +15 -15
  205. package/lib/services/user/user.service.mock.d.ts +16 -16
  206. package/lib/services/ux-app-shell.service.d.ts +155 -155
  207. package/lib/services/ux-dynamic-component/ux-dynamic-component.service.d.ts +36 -36
  208. package/lib/services/ux-dynamic-menu/ux-dynamic-menu.service.d.ts +14 -14
  209. package/lib/services/ux-error-feedback/ux-error-feedback.service.d.ts +35 -35
  210. package/lib/services/ux-error-feedback/ux-error-handler.operator.d.ts +3 -3
  211. package/lib/services/ux-timezone.service.d.ts +269 -269
  212. package/package.json +2 -2
  213. package/docs/overview.html +0 -171
@@ -1,93 +1,93 @@
1
- import { Inject, Injectable, InjectionToken, Optional } from '@angular/core';
2
- import { from } from 'rxjs';
3
- import { take, tap } from 'rxjs/operators';
4
- import * as lf from 'localforage';
5
- import { AsyncStorageService } from './async-storage.service';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../log/log.service";
8
- /** @internal */
9
- export const localForage = 'defineDriver' in lf ? lf : lf['default'];
10
- export const LOCAL_FORAGE_SERVICE_CONFIG_TOKEN = new InjectionToken('LOCAL_FORAGE_SERVICE_CONFIG');
11
- /**
12
- * localforage service, using the localForage javascript library
13
- * https://localforage.github.io/localForage
14
- */
15
- export class LocalForageService extends AsyncStorageService {
16
- constructor(config, log) {
17
- super();
18
- this.config = config;
19
- this.log = log;
20
- // configure localforage, if specified
21
- if (config) {
22
- localForage.config(config);
23
- }
24
- }
25
- /**
26
- * the name of the storage service
27
- */
28
- name() {
29
- return LocalForageService.NAME;
30
- }
31
- /**
32
- * reflects the readiness of the storage
33
- * @returns one time emission Observable<void>
34
- */
35
- ready() {
36
- return from(localForage.ready()).pipe(take(1), tap(() => { }, (err) => {
37
- if (this.log) {
38
- this.log.error(this.name(), 'ready', err);
39
- }
40
- }));
41
- }
42
- /**
43
- * retrieve an object from localforage
44
- * @param key the associated key
45
- * @returns one time emission Observable of value
46
- */
47
- get(key) {
48
- return from(localForage.getItem(key)).pipe(take(1), tap(() => { }, (err) => {
49
- if (this.log) {
50
- this.log.error(this.name(), 'get', err);
51
- }
52
- }));
53
- }
54
- /**
55
- * sets an object in localforage
56
- * @param key the associated key
57
- * @param value the value to set
58
- * @returns one time emission Observable
59
- */
60
- set(key, value) {
61
- return from(localForage.setItem(key, value)).pipe(take(1), tap(() => { }, (err) => {
62
- if (this.log) {
63
- this.log.error(this.name(), 'set', err);
64
- }
65
- }));
66
- }
67
- /**
68
- * removes an object from localforage
69
- * @param key the associated key
70
- * @returns one time emission Observable
71
- */
72
- remove(key) {
73
- return from(localForage.removeItem(key)).pipe(take(1), tap(() => { }, (err) => {
74
- if (this.log) {
75
- this.log.error(this.name(), 'remove', err);
76
- }
77
- }));
78
- }
79
- }
80
- LocalForageService.NAME = 'LocalForageService';
81
- /** @nocollapse */ LocalForageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalForageService, deps: [{ token: LOCAL_FORAGE_SERVICE_CONFIG_TOKEN, optional: true }, { token: i1.LogService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
82
- /** @nocollapse */ LocalForageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalForageService });
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalForageService, decorators: [{
84
- type: Injectable
85
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
86
- type: Inject,
87
- args: [LOCAL_FORAGE_SERVICE_CONFIG_TOKEN]
88
- }, {
89
- type: Optional
90
- }] }, { type: i1.LogService, decorators: [{
91
- type: Optional
92
- }] }]; } });
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtZm9yYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3N0b3JhZ2UvbG9jYWwtZm9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUUsSUFBSSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQUc5RCxnQkFBZ0I7QUFDaEIsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFRLGNBQWMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQzFFLE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFHLElBQUksY0FBYyxDQUFNLDZCQUE2QixDQUFDLENBQUM7QUFFeEc7OztHQUdHO0FBRUgsTUFBTSxPQUFPLGtCQUFtQixTQUFRLG1CQUFtQjtJQUd2RCxZQUE2RSxNQUFXLEVBQXdCLEdBQWU7UUFDM0gsS0FBSyxFQUFFLENBQUM7UUFEaUUsV0FBTSxHQUFOLE1BQU0sQ0FBSztRQUF3QixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBRTNILHNDQUFzQztRQUN0QyxJQUFJLE1BQU0sRUFBRTtZQUNSLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUI7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJO1FBQ0EsT0FBTyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUs7UUFDRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ2pDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxHQUFHLENBQ0MsR0FBRyxFQUFFLEdBQUUsQ0FBQyxFQUNSLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDSixJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQzthQUM3QztRQUNMLENBQUMsQ0FDSixDQUNKLENBQUM7SUFDTixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEdBQUcsQ0FBQyxHQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDdEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FDQyxHQUFHLEVBQUUsR0FBRSxDQUFDLEVBQ1IsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNKLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQzNDO1FBQ0wsQ0FBQyxDQUNKLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILEdBQUcsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUN2QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDN0MsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FDQyxHQUFHLEVBQUUsR0FBRSxDQUFDLEVBQ1IsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNKLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQzNDO1FBQ0wsQ0FBQyxDQUNKLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLEdBQVc7UUFDZCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUN6QyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsR0FBRyxDQUNDLEdBQUcsRUFBRSxHQUFFLENBQUMsRUFDUixDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ0osSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDOUM7UUFDTCxDQUFDLENBQ0osQ0FDSixDQUFDO0lBQ04sQ0FBQzs7QUEzRk0sdUJBQUksR0FBRyxvQkFBb0IsQ0FBQztrSUFEMUIsa0JBQWtCLGtCQUdQLGlDQUFpQztzSUFINUMsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVU7OzBCQUlNLE1BQU07MkJBQUMsaUNBQWlDOzswQkFBRyxRQUFROzswQkFBMkIsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgKiBhcyBsZiBmcm9tICdsb2NhbGZvcmFnZSc7XHJcbmltcG9ydCB7IEFzeW5jU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL2FzeW5jLXN0b3JhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IExvZ1NlcnZpY2UgfSBmcm9tICcuLi9sb2cvbG9nLnNlcnZpY2UnO1xyXG5cclxuLyoqIEBpbnRlcm5hbCAqL1xyXG5leHBvcnQgY29uc3QgbG9jYWxGb3JhZ2U6IGFueSA9ICdkZWZpbmVEcml2ZXInIGluIGxmID8gbGYgOiBsZlsnZGVmYXVsdCddO1xyXG5leHBvcnQgY29uc3QgTE9DQUxfRk9SQUdFX1NFUlZJQ0VfQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPGFueT4oJ0xPQ0FMX0ZPUkFHRV9TRVJWSUNFX0NPTkZJRycpO1xyXG5cclxuLyoqXHJcbiAqIGxvY2FsZm9yYWdlIHNlcnZpY2UsIHVzaW5nIHRoZSBsb2NhbEZvcmFnZSBqYXZhc2NyaXB0IGxpYnJhcnlcclxuICogaHR0cHM6Ly9sb2NhbGZvcmFnZS5naXRodWIuaW8vbG9jYWxGb3JhZ2VcclxuICovXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIExvY2FsRm9yYWdlU2VydmljZSBleHRlbmRzIEFzeW5jU3RvcmFnZVNlcnZpY2Uge1xyXG4gICAgc3RhdGljIE5BTUUgPSAnTG9jYWxGb3JhZ2VTZXJ2aWNlJztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KExPQ0FMX0ZPUkFHRV9TRVJWSUNFX0NPTkZJR19UT0tFTikgQE9wdGlvbmFsKCkgcHJvdGVjdGVkIGNvbmZpZzogYW55LCBAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgbG9nOiBMb2dTZXJ2aWNlKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgICAgICAvLyBjb25maWd1cmUgbG9jYWxmb3JhZ2UsIGlmIHNwZWNpZmllZFxyXG4gICAgICAgIGlmIChjb25maWcpIHtcclxuICAgICAgICAgICAgbG9jYWxGb3JhZ2UuY29uZmlnKGNvbmZpZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogdGhlIG5hbWUgb2YgdGhlIHN0b3JhZ2Ugc2VydmljZVxyXG4gICAgICovXHJcbiAgICBuYW1lKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIExvY2FsRm9yYWdlU2VydmljZS5OQU1FO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogcmVmbGVjdHMgdGhlIHJlYWRpbmVzcyBvZiB0aGUgc3RvcmFnZVxyXG4gICAgICogQHJldHVybnMgb25lIHRpbWUgZW1pc3Npb24gT2JzZXJ2YWJsZTx2b2lkPlxyXG4gICAgICovXHJcbiAgICByZWFkeSgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBmcm9tKGxvY2FsRm9yYWdlLnJlYWR5KCkpLnBpcGUoXHJcbiAgICAgICAgICAgIHRha2UoMSksXHJcbiAgICAgICAgICAgIHRhcChcclxuICAgICAgICAgICAgICAgICgpID0+IHt9LFxyXG4gICAgICAgICAgICAgICAgKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmxvZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvZy5lcnJvcih0aGlzLm5hbWUoKSwgJ3JlYWR5JywgZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIClcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogcmV0cmlldmUgYW4gb2JqZWN0IGZyb20gbG9jYWxmb3JhZ2VcclxuICAgICAqIEBwYXJhbSBrZXkgdGhlIGFzc29jaWF0ZWQga2V5XHJcbiAgICAgKiBAcmV0dXJucyBvbmUgdGltZSBlbWlzc2lvbiBPYnNlcnZhYmxlIG9mIHZhbHVlXHJcbiAgICAgKi9cclxuICAgIGdldChrZXk6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICAgICAgcmV0dXJuIGZyb20obG9jYWxGb3JhZ2UuZ2V0SXRlbShrZXkpKS5waXBlKFxyXG4gICAgICAgICAgICB0YWtlKDEpLFxyXG4gICAgICAgICAgICB0YXAoXHJcbiAgICAgICAgICAgICAgICAoKSA9PiB7fSxcclxuICAgICAgICAgICAgICAgIChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5sb2cpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2cuZXJyb3IodGhpcy5uYW1lKCksICdnZXQnLCBlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBzZXRzIGFuIG9iamVjdCBpbiBsb2NhbGZvcmFnZVxyXG4gICAgICogQHBhcmFtIGtleSB0aGUgYXNzb2NpYXRlZCBrZXlcclxuICAgICAqIEBwYXJhbSB2YWx1ZSB0aGUgdmFsdWUgdG8gc2V0XHJcbiAgICAgKiBAcmV0dXJucyBvbmUgdGltZSBlbWlzc2lvbiBPYnNlcnZhYmxlXHJcbiAgICAgKi9cclxuICAgIHNldChrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICAgICAgcmV0dXJuIGZyb20obG9jYWxGb3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKSkucGlwZShcclxuICAgICAgICAgICAgdGFrZSgxKSxcclxuICAgICAgICAgICAgdGFwKFxyXG4gICAgICAgICAgICAgICAgKCkgPT4ge30sXHJcbiAgICAgICAgICAgICAgICAoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMubG9nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubG9nLmVycm9yKHRoaXMubmFtZSgpLCAnc2V0JywgZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIClcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogcmVtb3ZlcyBhbiBvYmplY3QgZnJvbSBsb2NhbGZvcmFnZVxyXG4gICAgICogQHBhcmFtIGtleSB0aGUgYXNzb2NpYXRlZCBrZXlcclxuICAgICAqIEByZXR1cm5zIG9uZSB0aW1lIGVtaXNzaW9uIE9ic2VydmFibGVcclxuICAgICAqL1xyXG4gICAgcmVtb3ZlKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgICAgICByZXR1cm4gZnJvbShsb2NhbEZvcmFnZS5yZW1vdmVJdGVtKGtleSkpLnBpcGUoXHJcbiAgICAgICAgICAgIHRha2UoMSksXHJcbiAgICAgICAgICAgIHRhcChcclxuICAgICAgICAgICAgICAgICgpID0+IHt9LFxyXG4gICAgICAgICAgICAgICAgKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmxvZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvZy5lcnJvcih0aGlzLm5hbWUoKSwgJ3JlbW92ZScsIGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxufVxyXG4iXX0=
1
+ import { Inject, Injectable, InjectionToken, Optional } from '@angular/core';
2
+ import { from } from 'rxjs';
3
+ import { take, tap } from 'rxjs/operators';
4
+ import * as lf from 'localforage';
5
+ import { AsyncStorageService } from './async-storage.service';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../log/log.service";
8
+ /** @internal */
9
+ export const localForage = 'defineDriver' in lf ? lf : lf['default'];
10
+ export const LOCAL_FORAGE_SERVICE_CONFIG_TOKEN = new InjectionToken('LOCAL_FORAGE_SERVICE_CONFIG');
11
+ /**
12
+ * localforage service, using the localForage javascript library
13
+ * https://localforage.github.io/localForage
14
+ */
15
+ export class LocalForageService extends AsyncStorageService {
16
+ constructor(config, log) {
17
+ super();
18
+ this.config = config;
19
+ this.log = log;
20
+ // configure localforage, if specified
21
+ if (config) {
22
+ localForage.config(config);
23
+ }
24
+ }
25
+ /**
26
+ * the name of the storage service
27
+ */
28
+ name() {
29
+ return LocalForageService.NAME;
30
+ }
31
+ /**
32
+ * reflects the readiness of the storage
33
+ * @returns one time emission Observable<void>
34
+ */
35
+ ready() {
36
+ return from(localForage.ready()).pipe(take(1), tap(() => { }, (err) => {
37
+ if (this.log) {
38
+ this.log.error(this.name(), 'ready', err);
39
+ }
40
+ }));
41
+ }
42
+ /**
43
+ * retrieve an object from localforage
44
+ * @param key the associated key
45
+ * @returns one time emission Observable of value
46
+ */
47
+ get(key) {
48
+ return from(localForage.getItem(key)).pipe(take(1), tap(() => { }, (err) => {
49
+ if (this.log) {
50
+ this.log.error(this.name(), 'get', err);
51
+ }
52
+ }));
53
+ }
54
+ /**
55
+ * sets an object in localforage
56
+ * @param key the associated key
57
+ * @param value the value to set
58
+ * @returns one time emission Observable
59
+ */
60
+ set(key, value) {
61
+ return from(localForage.setItem(key, value)).pipe(take(1), tap(() => { }, (err) => {
62
+ if (this.log) {
63
+ this.log.error(this.name(), 'set', err);
64
+ }
65
+ }));
66
+ }
67
+ /**
68
+ * removes an object from localforage
69
+ * @param key the associated key
70
+ * @returns one time emission Observable
71
+ */
72
+ remove(key) {
73
+ return from(localForage.removeItem(key)).pipe(take(1), tap(() => { }, (err) => {
74
+ if (this.log) {
75
+ this.log.error(this.name(), 'remove', err);
76
+ }
77
+ }));
78
+ }
79
+ }
80
+ LocalForageService.NAME = 'LocalForageService';
81
+ /** @nocollapse */ LocalForageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalForageService, deps: [{ token: LOCAL_FORAGE_SERVICE_CONFIG_TOKEN, optional: true }, { token: i1.LogService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
82
+ /** @nocollapse */ LocalForageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalForageService });
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalForageService, decorators: [{
84
+ type: Injectable
85
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
86
+ type: Inject,
87
+ args: [LOCAL_FORAGE_SERVICE_CONFIG_TOKEN]
88
+ }, {
89
+ type: Optional
90
+ }] }, { type: i1.LogService, decorators: [{
91
+ type: Optional
92
+ }] }]; } });
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtZm9yYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3N0b3JhZ2UvbG9jYWwtZm9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUUsSUFBSSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQUc5RCxnQkFBZ0I7QUFDaEIsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFRLGNBQWMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQzFFLE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFHLElBQUksY0FBYyxDQUFNLDZCQUE2QixDQUFDLENBQUM7QUFFeEc7OztHQUdHO0FBRUgsTUFBTSxPQUFPLGtCQUFtQixTQUFRLG1CQUFtQjtJQUd2RCxZQUE2RSxNQUFXLEVBQXdCLEdBQWU7UUFDM0gsS0FBSyxFQUFFLENBQUM7UUFEaUUsV0FBTSxHQUFOLE1BQU0sQ0FBSztRQUF3QixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBRTNILHNDQUFzQztRQUN0QyxJQUFJLE1BQU0sRUFBRTtZQUNSLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUI7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJO1FBQ0EsT0FBTyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUs7UUFDRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ2pDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxHQUFHLENBQ0MsR0FBRyxFQUFFLEdBQUUsQ0FBQyxFQUNSLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDSixJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQzthQUM3QztRQUNMLENBQUMsQ0FDSixDQUNKLENBQUM7SUFDTixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEdBQUcsQ0FBQyxHQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDdEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FDQyxHQUFHLEVBQUUsR0FBRSxDQUFDLEVBQ1IsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNKLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQzNDO1FBQ0wsQ0FBQyxDQUNKLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILEdBQUcsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUN2QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDN0MsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FDQyxHQUFHLEVBQUUsR0FBRSxDQUFDLEVBQ1IsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNKLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQzNDO1FBQ0wsQ0FBQyxDQUNKLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLEdBQVc7UUFDZCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUN6QyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsR0FBRyxDQUNDLEdBQUcsRUFBRSxHQUFFLENBQUMsRUFDUixDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ0osSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDOUM7UUFDTCxDQUFDLENBQ0osQ0FDSixDQUFDO0lBQ04sQ0FBQzs7QUEzRk0sdUJBQUksR0FBRyxvQkFBb0IsQ0FBQztrSUFEMUIsa0JBQWtCLGtCQUdQLGlDQUFpQztzSUFINUMsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVU7OzBCQUlNLE1BQU07MkJBQUMsaUNBQWlDOzswQkFBRyxRQUFROzswQkFBMkIsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgKiBhcyBsZiBmcm9tICdsb2NhbGZvcmFnZSc7XG5pbXBvcnQgeyBBc3luY1N0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9hc3luYy1zdG9yYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9nU2VydmljZSB9IGZyb20gJy4uL2xvZy9sb2cuc2VydmljZSc7XG5cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBjb25zdCBsb2NhbEZvcmFnZTogYW55ID0gJ2RlZmluZURyaXZlcicgaW4gbGYgPyBsZiA6IGxmWydkZWZhdWx0J107XG5leHBvcnQgY29uc3QgTE9DQUxfRk9SQUdFX1NFUlZJQ0VfQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPGFueT4oJ0xPQ0FMX0ZPUkFHRV9TRVJWSUNFX0NPTkZJRycpO1xuXG4vKipcbiAqIGxvY2FsZm9yYWdlIHNlcnZpY2UsIHVzaW5nIHRoZSBsb2NhbEZvcmFnZSBqYXZhc2NyaXB0IGxpYnJhcnlcbiAqIGh0dHBzOi8vbG9jYWxmb3JhZ2UuZ2l0aHViLmlvL2xvY2FsRm9yYWdlXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBMb2NhbEZvcmFnZVNlcnZpY2UgZXh0ZW5kcyBBc3luY1N0b3JhZ2VTZXJ2aWNlIHtcbiAgICBzdGF0aWMgTkFNRSA9ICdMb2NhbEZvcmFnZVNlcnZpY2UnO1xuXG4gICAgY29uc3RydWN0b3IoQEluamVjdChMT0NBTF9GT1JBR0VfU0VSVklDRV9DT05GSUdfVE9LRU4pIEBPcHRpb25hbCgpIHByb3RlY3RlZCBjb25maWc6IGFueSwgQE9wdGlvbmFsKCkgcHJvdGVjdGVkIGxvZzogTG9nU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICAvLyBjb25maWd1cmUgbG9jYWxmb3JhZ2UsIGlmIHNwZWNpZmllZFxuICAgICAgICBpZiAoY29uZmlnKSB7XG4gICAgICAgICAgICBsb2NhbEZvcmFnZS5jb25maWcoY29uZmlnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHRoZSBuYW1lIG9mIHRoZSBzdG9yYWdlIHNlcnZpY2VcbiAgICAgKi9cbiAgICBuYW1lKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBMb2NhbEZvcmFnZVNlcnZpY2UuTkFNRTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZWZsZWN0cyB0aGUgcmVhZGluZXNzIG9mIHRoZSBzdG9yYWdlXG4gICAgICogQHJldHVybnMgb25lIHRpbWUgZW1pc3Npb24gT2JzZXJ2YWJsZTx2b2lkPlxuICAgICAqL1xuICAgIHJlYWR5KCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIHJldHVybiBmcm9tKGxvY2FsRm9yYWdlLnJlYWR5KCkpLnBpcGUoXG4gICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgdGFwKFxuICAgICAgICAgICAgICAgICgpID0+IHt9LFxuICAgICAgICAgICAgICAgIChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMubG9nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvZy5lcnJvcih0aGlzLm5hbWUoKSwgJ3JlYWR5JywgZXJyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZXRyaWV2ZSBhbiBvYmplY3QgZnJvbSBsb2NhbGZvcmFnZVxuICAgICAqIEBwYXJhbSBrZXkgdGhlIGFzc29jaWF0ZWQga2V5XG4gICAgICogQHJldHVybnMgb25lIHRpbWUgZW1pc3Npb24gT2JzZXJ2YWJsZSBvZiB2YWx1ZVxuICAgICAqL1xuICAgIGdldChrZXk6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIHJldHVybiBmcm9tKGxvY2FsRm9yYWdlLmdldEl0ZW0oa2V5KSkucGlwZShcbiAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICB0YXAoXG4gICAgICAgICAgICAgICAgKCkgPT4ge30sXG4gICAgICAgICAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5sb2cpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubG9nLmVycm9yKHRoaXMubmFtZSgpLCAnZ2V0JywgZXJyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBzZXRzIGFuIG9iamVjdCBpbiBsb2NhbGZvcmFnZVxuICAgICAqIEBwYXJhbSBrZXkgdGhlIGFzc29jaWF0ZWQga2V5XG4gICAgICogQHBhcmFtIHZhbHVlIHRoZSB2YWx1ZSB0byBzZXRcbiAgICAgKiBAcmV0dXJucyBvbmUgdGltZSBlbWlzc2lvbiBPYnNlcnZhYmxlXG4gICAgICovXG4gICAgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIGZyb20obG9jYWxGb3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKSkucGlwZShcbiAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICB0YXAoXG4gICAgICAgICAgICAgICAgKCkgPT4ge30sXG4gICAgICAgICAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5sb2cpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubG9nLmVycm9yKHRoaXMubmFtZSgpLCAnc2V0JywgZXJyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZW1vdmVzIGFuIG9iamVjdCBmcm9tIGxvY2FsZm9yYWdlXG4gICAgICogQHBhcmFtIGtleSB0aGUgYXNzb2NpYXRlZCBrZXlcbiAgICAgKiBAcmV0dXJucyBvbmUgdGltZSBlbWlzc2lvbiBPYnNlcnZhYmxlXG4gICAgICovXG4gICAgcmVtb3ZlKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIGZyb20obG9jYWxGb3JhZ2UucmVtb3ZlSXRlbShrZXkpKS5waXBlKFxuICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgIHRhcChcbiAgICAgICAgICAgICAgICAoKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmxvZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2cuZXJyb3IodGhpcy5uYW1lKCksICdyZW1vdmUnLCBlcnIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,75 +1,75 @@
1
- import { Injectable, Optional } from '@angular/core';
2
- import { StorageService } from './storage.service';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../log/log.service";
5
- /**
6
- * localStorage service
7
- */
8
- export class LocalStorageService extends StorageService {
9
- constructor(log) {
10
- super();
11
- this.log = log;
12
- }
13
- /**
14
- * the name of the storage service
15
- */
16
- name() {
17
- return LocalStorageService.NAME;
18
- }
19
- /**
20
- * retrieve an object from local storage
21
- * @param key the associated key
22
- * @returns the value or undefined, if case of error
23
- */
24
- get(key) {
25
- try {
26
- const serialized = localStorage.getItem(key);
27
- return serialized && JSON.parse(serialized);
28
- }
29
- catch (err) {
30
- if (this.log) {
31
- this.log.error(this.name(), 'get', err);
32
- }
33
- return undefined;
34
- }
35
- }
36
- /**
37
- * sets an object in local storage
38
- * @param key the associated key
39
- * @param value the value to set
40
- */
41
- set(key, value) {
42
- try {
43
- const serialized = JSON.stringify(value);
44
- localStorage.setItem(key, serialized);
45
- }
46
- catch (err) {
47
- if (this.log) {
48
- this.log.error(this.name(), 'set', err);
49
- }
50
- }
51
- }
52
- /**
53
- * removes an object from local storage
54
- * @param key the associated key
55
- */
56
- remove(key) {
57
- try {
58
- localStorage.removeItem(key);
59
- }
60
- catch (err) {
61
- if (this.log) {
62
- this.log.error(this.name(), 'remove', err);
63
- }
64
- }
65
- }
66
- }
67
- LocalStorageService.NAME = 'LocalStorageService';
68
- /** @nocollapse */ LocalStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageService, deps: [{ token: i1.LogService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
69
- /** @nocollapse */ LocalStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageService });
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageService, decorators: [{
71
- type: Injectable
72
- }], ctorParameters: function () { return [{ type: i1.LogService, decorators: [{
73
- type: Optional
74
- }] }]; } });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9zdG9yYWdlL2xvY2FsLXN0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQUduRDs7R0FFRztBQUVILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxjQUFjO0lBR25ELFlBQWtDLEdBQWU7UUFDN0MsS0FBSyxFQUFFLENBQUM7UUFEc0IsUUFBRyxHQUFILEdBQUcsQ0FBWTtJQUVqRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJO1FBQ0EsT0FBTyxtQkFBbUIsQ0FBQyxJQUFJLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxHQUFHLENBQUMsR0FBVztRQUNYLElBQUk7WUFDQSxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdDLE9BQU8sVUFBVSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDL0M7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNWLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQzNDO1lBQ0QsT0FBTyxTQUFTLENBQUM7U0FDcEI7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEdBQUcsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUN2QixJQUFJO1lBQ0EsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUN6QztRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1YsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDM0M7U0FDSjtJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsR0FBVztRQUNkLElBQUk7WUFDQSxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2hDO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDVixJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQzthQUM5QztTQUNKO0lBQ0wsQ0FBQzs7QUExRE0sd0JBQUksR0FBRyxxQkFBcUIsQ0FBQzttSUFEM0IsbUJBQW1CO3VJQUFuQixtQkFBbUI7MkZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVTs7MEJBSU0sUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9zdG9yYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2dTZXJ2aWNlIH0gZnJvbSAnLi4vbG9nL2xvZy5zZXJ2aWNlJztcclxuXHJcbi8qKlxyXG4gKiBsb2NhbFN0b3JhZ2Ugc2VydmljZVxyXG4gKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgTG9jYWxTdG9yYWdlU2VydmljZSBleHRlbmRzIFN0b3JhZ2VTZXJ2aWNlIHtcclxuICAgIHN0YXRpYyBOQU1FID0gJ0xvY2FsU3RvcmFnZVNlcnZpY2UnO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHByb3RlY3RlZCBsb2c6IExvZ1NlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogdGhlIG5hbWUgb2YgdGhlIHN0b3JhZ2Ugc2VydmljZVxyXG4gICAgICovXHJcbiAgICBuYW1lKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIExvY2FsU3RvcmFnZVNlcnZpY2UuTkFNRTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIHJldHJpZXZlIGFuIG9iamVjdCBmcm9tIGxvY2FsIHN0b3JhZ2VcclxuICAgICAqIEBwYXJhbSBrZXkgdGhlIGFzc29jaWF0ZWQga2V5XHJcbiAgICAgKiBAcmV0dXJucyB0aGUgdmFsdWUgb3IgdW5kZWZpbmVkLCBpZiBjYXNlIG9mIGVycm9yXHJcbiAgICAgKi9cclxuICAgIGdldChrZXk6IHN0cmluZyk6IGFueSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgY29uc3Qgc2VyaWFsaXplZCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSk7XHJcbiAgICAgICAgICAgIHJldHVybiBzZXJpYWxpemVkICYmIEpTT04ucGFyc2Uoc2VyaWFsaXplZCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmxvZykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb2cuZXJyb3IodGhpcy5uYW1lKCksICdnZXQnLCBlcnIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogc2V0cyBhbiBvYmplY3QgaW4gbG9jYWwgc3RvcmFnZVxyXG4gICAgICogQHBhcmFtIGtleSB0aGUgYXNzb2NpYXRlZCBrZXlcclxuICAgICAqIEBwYXJhbSB2YWx1ZSB0aGUgdmFsdWUgdG8gc2V0XHJcbiAgICAgKi9cclxuICAgIHNldChrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNlcmlhbGl6ZWQgPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XHJcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgc2VyaWFsaXplZCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmxvZykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb2cuZXJyb3IodGhpcy5uYW1lKCksICdzZXQnLCBlcnIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogcmVtb3ZlcyBhbiBvYmplY3QgZnJvbSBsb2NhbCBzdG9yYWdlXHJcbiAgICAgKiBAcGFyYW0ga2V5IHRoZSBhc3NvY2lhdGVkIGtleVxyXG4gICAgICovXHJcbiAgICByZW1vdmUoa2V5OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5sb2cpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9nLmVycm9yKHRoaXMubmFtZSgpLCAncmVtb3ZlJywgZXJyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
1
+ import { Injectable, Optional } from '@angular/core';
2
+ import { StorageService } from './storage.service';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../log/log.service";
5
+ /**
6
+ * localStorage service
7
+ */
8
+ export class LocalStorageService extends StorageService {
9
+ constructor(log) {
10
+ super();
11
+ this.log = log;
12
+ }
13
+ /**
14
+ * the name of the storage service
15
+ */
16
+ name() {
17
+ return LocalStorageService.NAME;
18
+ }
19
+ /**
20
+ * retrieve an object from local storage
21
+ * @param key the associated key
22
+ * @returns the value or undefined, if case of error
23
+ */
24
+ get(key) {
25
+ try {
26
+ const serialized = localStorage.getItem(key);
27
+ return serialized && JSON.parse(serialized);
28
+ }
29
+ catch (err) {
30
+ if (this.log) {
31
+ this.log.error(this.name(), 'get', err);
32
+ }
33
+ return undefined;
34
+ }
35
+ }
36
+ /**
37
+ * sets an object in local storage
38
+ * @param key the associated key
39
+ * @param value the value to set
40
+ */
41
+ set(key, value) {
42
+ try {
43
+ const serialized = JSON.stringify(value);
44
+ localStorage.setItem(key, serialized);
45
+ }
46
+ catch (err) {
47
+ if (this.log) {
48
+ this.log.error(this.name(), 'set', err);
49
+ }
50
+ }
51
+ }
52
+ /**
53
+ * removes an object from local storage
54
+ * @param key the associated key
55
+ */
56
+ remove(key) {
57
+ try {
58
+ localStorage.removeItem(key);
59
+ }
60
+ catch (err) {
61
+ if (this.log) {
62
+ this.log.error(this.name(), 'remove', err);
63
+ }
64
+ }
65
+ }
66
+ }
67
+ LocalStorageService.NAME = 'LocalStorageService';
68
+ /** @nocollapse */ LocalStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageService, deps: [{ token: i1.LogService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
69
+ /** @nocollapse */ LocalStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageService });
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageService, decorators: [{
71
+ type: Injectable
72
+ }], ctorParameters: function () { return [{ type: i1.LogService, decorators: [{
73
+ type: Optional
74
+ }] }]; } });
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9zdG9yYWdlL2xvY2FsLXN0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQUduRDs7R0FFRztBQUVILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxjQUFjO0lBR25ELFlBQWtDLEdBQWU7UUFDN0MsS0FBSyxFQUFFLENBQUM7UUFEc0IsUUFBRyxHQUFILEdBQUcsQ0FBWTtJQUVqRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJO1FBQ0EsT0FBTyxtQkFBbUIsQ0FBQyxJQUFJLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxHQUFHLENBQUMsR0FBVztRQUNYLElBQUk7WUFDQSxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdDLE9BQU8sVUFBVSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDL0M7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNWLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQzNDO1lBQ0QsT0FBTyxTQUFTLENBQUM7U0FDcEI7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEdBQUcsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUN2QixJQUFJO1lBQ0EsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUN6QztRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1YsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDM0M7U0FDSjtJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsR0FBVztRQUNkLElBQUk7WUFDQSxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2hDO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDVixJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQzthQUM5QztTQUNKO0lBQ0wsQ0FBQzs7QUExRE0sd0JBQUksR0FBRyxxQkFBcUIsQ0FBQzttSUFEM0IsbUJBQW1CO3VJQUFuQixtQkFBbUI7MkZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVTs7MEJBSU0sUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vc3RvcmFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IExvZ1NlcnZpY2UgfSBmcm9tICcuLi9sb2cvbG9nLnNlcnZpY2UnO1xuXG4vKipcbiAqIGxvY2FsU3RvcmFnZSBzZXJ2aWNlXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBMb2NhbFN0b3JhZ2VTZXJ2aWNlIGV4dGVuZHMgU3RvcmFnZVNlcnZpY2Uge1xuICAgIHN0YXRpYyBOQU1FID0gJ0xvY2FsU3RvcmFnZVNlcnZpY2UnO1xuXG4gICAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHJvdGVjdGVkIGxvZzogTG9nU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHRoZSBuYW1lIG9mIHRoZSBzdG9yYWdlIHNlcnZpY2VcbiAgICAgKi9cbiAgICBuYW1lKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBMb2NhbFN0b3JhZ2VTZXJ2aWNlLk5BTUU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogcmV0cmlldmUgYW4gb2JqZWN0IGZyb20gbG9jYWwgc3RvcmFnZVxuICAgICAqIEBwYXJhbSBrZXkgdGhlIGFzc29jaWF0ZWQga2V5XG4gICAgICogQHJldHVybnMgdGhlIHZhbHVlIG9yIHVuZGVmaW5lZCwgaWYgY2FzZSBvZiBlcnJvclxuICAgICAqL1xuICAgIGdldChrZXk6IHN0cmluZyk6IGFueSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBzZXJpYWxpemVkID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcbiAgICAgICAgICAgIHJldHVybiBzZXJpYWxpemVkICYmIEpTT04ucGFyc2Uoc2VyaWFsaXplZCk7XG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgaWYgKHRoaXMubG9nKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2cuZXJyb3IodGhpcy5uYW1lKCksICdnZXQnLCBlcnIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHNldHMgYW4gb2JqZWN0IGluIGxvY2FsIHN0b3JhZ2VcbiAgICAgKiBAcGFyYW0ga2V5IHRoZSBhc3NvY2lhdGVkIGtleVxuICAgICAqIEBwYXJhbSB2YWx1ZSB0aGUgdmFsdWUgdG8gc2V0XG4gICAgICovXG4gICAgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBzZXJpYWxpemVkID0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oa2V5LCBzZXJpYWxpemVkKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5sb2cpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvZy5lcnJvcih0aGlzLm5hbWUoKSwgJ3NldCcsIGVycik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZW1vdmVzIGFuIG9iamVjdCBmcm9tIGxvY2FsIHN0b3JhZ2VcbiAgICAgKiBAcGFyYW0ga2V5IHRoZSBhc3NvY2lhdGVkIGtleVxuICAgICAqL1xuICAgIHJlbW92ZShrZXk6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5sb2cpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvZy5lcnJvcih0aGlzLm5hbWUoKSwgJ3JlbW92ZScsIGVycik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -1,75 +1,75 @@
1
- import { Injectable, Optional } from '@angular/core';
2
- import { StorageService } from './storage.service';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../log/log.service";
5
- /**
6
- * sessionStorage service
7
- */
8
- export class SessionStorageService extends StorageService {
9
- constructor(log) {
10
- super();
11
- this.log = log;
12
- }
13
- /**
14
- * the name of the storage service
15
- */
16
- name() {
17
- return SessionStorageService.NAME;
18
- }
19
- /**
20
- * retrieve an object from session storage
21
- * @param key the associated key
22
- * @returns the value or undefined, if case of error
23
- */
24
- get(key) {
25
- try {
26
- const serialized = sessionStorage.getItem(key);
27
- return serialized && JSON.parse(serialized);
28
- }
29
- catch (err) {
30
- if (this.log) {
31
- this.log.error(this.name(), 'get', err);
32
- }
33
- return undefined;
34
- }
35
- }
36
- /**
37
- * sets an object in session storage
38
- * @param key the associated key
39
- * @param value the value to set
40
- */
41
- set(key, value) {
42
- try {
43
- const serialized = JSON.stringify(value);
44
- sessionStorage.setItem(key, serialized);
45
- }
46
- catch (err) {
47
- if (this.log) {
48
- this.log.error(this.name(), 'set', err);
49
- }
50
- }
51
- }
52
- /**
53
- * removes an object from session storage
54
- * @param key the associated key
55
- */
56
- remove(key) {
57
- try {
58
- sessionStorage.removeItem(key);
59
- }
60
- catch (err) {
61
- if (this.log) {
62
- this.log.error(this.name(), 'remove', err);
63
- }
64
- }
65
- }
66
- }
67
- SessionStorageService.NAME = 'SessionStorageService';
68
- /** @nocollapse */ SessionStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionStorageService, deps: [{ token: i1.LogService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
69
- /** @nocollapse */ SessionStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionStorageService });
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionStorageService, decorators: [{
71
- type: Injectable
72
- }], ctorParameters: function () { return [{ type: i1.LogService, decorators: [{
73
- type: Optional
74
- }] }]; } });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3N0b3JhZ2Uvc2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFHbkQ7O0dBRUc7QUFFSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsY0FBYztJQUdyRCxZQUFrQyxHQUFlO1FBQzdDLEtBQUssRUFBRSxDQUFDO1FBRHNCLFFBQUcsR0FBSCxHQUFHLENBQVk7SUFFakQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSTtRQUNBLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsR0FBRyxDQUFDLEdBQVc7UUFDWCxJQUFJO1lBQ0EsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMvQyxPQUFPLFVBQVUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQy9DO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDVixJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQzthQUMzQztZQUNELE9BQU8sU0FBUyxDQUFDO1NBQ3BCO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQVU7UUFDdkIsSUFBSTtZQUNBLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDM0M7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNWLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQzNDO1NBQ0o7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLEdBQVc7UUFDZCxJQUFJO1lBQ0EsY0FBYyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNsQztRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1YsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDOUM7U0FDSjtJQUNMLENBQUM7O0FBMURNLDBCQUFJLEdBQUcsdUJBQXVCLENBQUM7cUlBRDdCLHFCQUFxQjt5SUFBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVU7OzBCQUlNLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vc3RvcmFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9nU2VydmljZSB9IGZyb20gJy4uL2xvZy9sb2cuc2VydmljZSc7XHJcblxyXG4vKipcclxuICogc2Vzc2lvblN0b3JhZ2Ugc2VydmljZVxyXG4gKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlIGV4dGVuZHMgU3RvcmFnZVNlcnZpY2Uge1xyXG4gICAgc3RhdGljIE5BTUUgPSAnU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlJztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgbG9nOiBMb2dTZXJ2aWNlKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIHRoZSBuYW1lIG9mIHRoZSBzdG9yYWdlIHNlcnZpY2VcclxuICAgICAqL1xyXG4gICAgbmFtZSgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBTZXNzaW9uU3RvcmFnZVNlcnZpY2UuTkFNRTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIHJldHJpZXZlIGFuIG9iamVjdCBmcm9tIHNlc3Npb24gc3RvcmFnZVxyXG4gICAgICogQHBhcmFtIGtleSB0aGUgYXNzb2NpYXRlZCBrZXlcclxuICAgICAqIEByZXR1cm5zIHRoZSB2YWx1ZSBvciB1bmRlZmluZWQsIGlmIGNhc2Ugb2YgZXJyb3JcclxuICAgICAqL1xyXG4gICAgZ2V0KGtleTogc3RyaW5nKTogYW55IHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBzZXJpYWxpemVkID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShrZXkpO1xyXG4gICAgICAgICAgICByZXR1cm4gc2VyaWFsaXplZCAmJiBKU09OLnBhcnNlKHNlcmlhbGl6ZWQpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5sb2cpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9nLmVycm9yKHRoaXMubmFtZSgpLCAnZ2V0JywgZXJyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIHNldHMgYW4gb2JqZWN0IGluIHNlc3Npb24gc3RvcmFnZVxyXG4gICAgICogQHBhcmFtIGtleSB0aGUgYXNzb2NpYXRlZCBrZXlcclxuICAgICAqIEBwYXJhbSB2YWx1ZSB0aGUgdmFsdWUgdG8gc2V0XHJcbiAgICAgKi9cclxuICAgIHNldChrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNlcmlhbGl6ZWQgPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XHJcbiAgICAgICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oa2V5LCBzZXJpYWxpemVkKTtcclxuICAgICAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMubG9nKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvZy5lcnJvcih0aGlzLm5hbWUoKSwgJ3NldCcsIGVycik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiByZW1vdmVzIGFuIG9iamVjdCBmcm9tIHNlc3Npb24gc3RvcmFnZVxyXG4gICAgICogQHBhcmFtIGtleSB0aGUgYXNzb2NpYXRlZCBrZXlcclxuICAgICAqL1xyXG4gICAgcmVtb3ZlKGtleTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5sb2cpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9nLmVycm9yKHRoaXMubmFtZSgpLCAncmVtb3ZlJywgZXJyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
1
+ import { Injectable, Optional } from '@angular/core';
2
+ import { StorageService } from './storage.service';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../log/log.service";
5
+ /**
6
+ * sessionStorage service
7
+ */
8
+ export class SessionStorageService extends StorageService {
9
+ constructor(log) {
10
+ super();
11
+ this.log = log;
12
+ }
13
+ /**
14
+ * the name of the storage service
15
+ */
16
+ name() {
17
+ return SessionStorageService.NAME;
18
+ }
19
+ /**
20
+ * retrieve an object from session storage
21
+ * @param key the associated key
22
+ * @returns the value or undefined, if case of error
23
+ */
24
+ get(key) {
25
+ try {
26
+ const serialized = sessionStorage.getItem(key);
27
+ return serialized && JSON.parse(serialized);
28
+ }
29
+ catch (err) {
30
+ if (this.log) {
31
+ this.log.error(this.name(), 'get', err);
32
+ }
33
+ return undefined;
34
+ }
35
+ }
36
+ /**
37
+ * sets an object in session storage
38
+ * @param key the associated key
39
+ * @param value the value to set
40
+ */
41
+ set(key, value) {
42
+ try {
43
+ const serialized = JSON.stringify(value);
44
+ sessionStorage.setItem(key, serialized);
45
+ }
46
+ catch (err) {
47
+ if (this.log) {
48
+ this.log.error(this.name(), 'set', err);
49
+ }
50
+ }
51
+ }
52
+ /**
53
+ * removes an object from session storage
54
+ * @param key the associated key
55
+ */
56
+ remove(key) {
57
+ try {
58
+ sessionStorage.removeItem(key);
59
+ }
60
+ catch (err) {
61
+ if (this.log) {
62
+ this.log.error(this.name(), 'remove', err);
63
+ }
64
+ }
65
+ }
66
+ }
67
+ SessionStorageService.NAME = 'SessionStorageService';
68
+ /** @nocollapse */ SessionStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionStorageService, deps: [{ token: i1.LogService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
69
+ /** @nocollapse */ SessionStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionStorageService });
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionStorageService, decorators: [{
71
+ type: Injectable
72
+ }], ctorParameters: function () { return [{ type: i1.LogService, decorators: [{
73
+ type: Optional
74
+ }] }]; } });
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3N0b3JhZ2Uvc2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFHbkQ7O0dBRUc7QUFFSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsY0FBYztJQUdyRCxZQUFrQyxHQUFlO1FBQzdDLEtBQUssRUFBRSxDQUFDO1FBRHNCLFFBQUcsR0FBSCxHQUFHLENBQVk7SUFFakQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSTtRQUNBLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsR0FBRyxDQUFDLEdBQVc7UUFDWCxJQUFJO1lBQ0EsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMvQyxPQUFPLFVBQVUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQy9DO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDVixJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQzthQUMzQztZQUNELE9BQU8sU0FBUyxDQUFDO1NBQ3BCO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQVU7UUFDdkIsSUFBSTtZQUNBLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDM0M7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNWLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQzNDO1NBQ0o7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLEdBQVc7UUFDZCxJQUFJO1lBQ0EsY0FBYyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNsQztRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1YsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDOUM7U0FDSjtJQUNMLENBQUM7O0FBMURNLDBCQUFJLEdBQUcsdUJBQXVCLENBQUM7cUlBRDdCLHFCQUFxQjt5SUFBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVU7OzBCQUlNLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL3N0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBMb2dTZXJ2aWNlIH0gZnJvbSAnLi4vbG9nL2xvZy5zZXJ2aWNlJztcblxuLyoqXG4gKiBzZXNzaW9uU3RvcmFnZSBzZXJ2aWNlXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTZXNzaW9uU3RvcmFnZVNlcnZpY2UgZXh0ZW5kcyBTdG9yYWdlU2VydmljZSB7XG4gICAgc3RhdGljIE5BTUUgPSAnU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlJztcblxuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHByb3RlY3RlZCBsb2c6IExvZ1NlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiB0aGUgbmFtZSBvZiB0aGUgc3RvcmFnZSBzZXJ2aWNlXG4gICAgICovXG4gICAgbmFtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLk5BTUU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogcmV0cmlldmUgYW4gb2JqZWN0IGZyb20gc2Vzc2lvbiBzdG9yYWdlXG4gICAgICogQHBhcmFtIGtleSB0aGUgYXNzb2NpYXRlZCBrZXlcbiAgICAgKiBAcmV0dXJucyB0aGUgdmFsdWUgb3IgdW5kZWZpbmVkLCBpZiBjYXNlIG9mIGVycm9yXG4gICAgICovXG4gICAgZ2V0KGtleTogc3RyaW5nKTogYW55IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHNlcmlhbGl6ZWQgPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKGtleSk7XG4gICAgICAgICAgICByZXR1cm4gc2VyaWFsaXplZCAmJiBKU09OLnBhcnNlKHNlcmlhbGl6ZWQpO1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmxvZykge1xuICAgICAgICAgICAgICAgIHRoaXMubG9nLmVycm9yKHRoaXMubmFtZSgpLCAnZ2V0JywgZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBzZXRzIGFuIG9iamVjdCBpbiBzZXNzaW9uIHN0b3JhZ2VcbiAgICAgKiBAcGFyYW0ga2V5IHRoZSBhc3NvY2lhdGVkIGtleVxuICAgICAqIEBwYXJhbSB2YWx1ZSB0aGUgdmFsdWUgdG8gc2V0XG4gICAgICovXG4gICAgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBzZXJpYWxpemVkID0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgICAgICAgICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShrZXksIHNlcmlhbGl6ZWQpO1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmxvZykge1xuICAgICAgICAgICAgICAgIHRoaXMubG9nLmVycm9yKHRoaXMubmFtZSgpLCAnc2V0JywgZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHJlbW92ZXMgYW4gb2JqZWN0IGZyb20gc2Vzc2lvbiBzdG9yYWdlXG4gICAgICogQHBhcmFtIGtleSB0aGUgYXNzb2NpYXRlZCBrZXlcbiAgICAgKi9cbiAgICByZW1vdmUoa2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5sb2cpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvZy5lcnJvcih0aGlzLm5hbWUoKSwgJ3JlbW92ZScsIGVycik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -1,6 +1,6 @@
1
- /**
2
- * Generic storage service. Concrete storage services must extend this class
3
- */
4
- export class StorageService {
5
- }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9zdG9yYWdlL3N0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sT0FBZ0IsY0FBYztDQTJCbkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogR2VuZXJpYyBzdG9yYWdlIHNlcnZpY2UuIENvbmNyZXRlIHN0b3JhZ2Ugc2VydmljZXMgbXVzdCBleHRlbmQgdGhpcyBjbGFzc1xyXG4gKi9cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFN0b3JhZ2VTZXJ2aWNlIHtcclxuICAgIC8qKlxyXG4gICAgICogdXRpbGl0eSBmdW5jdGlvbiwgdG8gZGV0ZXJtaW5lIHRoZSBzdG9yYWdlIGltcGxlbWVudGF0aW9uXHJcbiAgICAgKi9cclxuICAgIGFic3RyYWN0IG5hbWUoKTogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogcmV0cmlldmUgYW4gb2JqZWN0IGZyb20gc3RvcmFnZVxyXG4gICAgICogQHBhcmFtIGtleSB0aGUgYXNzb2NpYXRlZCBrZXlcclxuICAgICAqIEByZXR1cm5zIHRoZSB2YWx1ZSBvciB1bmRlZmluZWQsIGlmIGNhc2Ugb2YgZXJyb3JcclxuICAgICAqL1xyXG4gICAgYWJzdHJhY3QgZ2V0KGtleTogc3RyaW5nKTogYW55O1xyXG4gICAgYWJzdHJhY3QgZ2V0PFQ+KGtleTogc3RyaW5nKTogVDtcclxuXHJcbiAgICAvKipcclxuICAgICAqIHNldHMgYW4gb2JqZWN0IGluIHN0b3JhZ2VcclxuICAgICAqIEBwYXJhbSBrZXkgdGhlIGFzc29jaWF0ZWQga2V5XHJcbiAgICAgKiBAcGFyYW0gdmFsdWUgdGhlIHZhbHVlIHRvIHNldFxyXG4gICAgICovXHJcbiAgICBhYnN0cmFjdCBzZXQoa2V5OiBzdHJpbmcsIHZhbHVlOiBhbnkpOiB2b2lkO1xyXG4gICAgYWJzdHJhY3Qgc2V0PFQ+KGtleTogc3RyaW5nLCB2YWx1ZTogVCk6IHZvaWQ7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiByZW1vdmVzIGFuIG9iamVjdCBmcm9tIHN0b3JhZ2VcclxuICAgICAqIEBwYXJhbSBrZXkgdGhlIGFzc29jaWF0ZWQga2V5XHJcbiAgICAgKi9cclxuICAgIGFic3RyYWN0IHJlbW92ZShrZXk6IHN0cmluZyk6IHZvaWQ7XHJcbn1cclxuIl19
1
+ /**
2
+ * Generic storage service. Concrete storage services must extend this class
3
+ */
4
+ export class StorageService {
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9zdG9yYWdlL3N0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sT0FBZ0IsY0FBYztDQTJCbkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyaWMgc3RvcmFnZSBzZXJ2aWNlLiBDb25jcmV0ZSBzdG9yYWdlIHNlcnZpY2VzIG11c3QgZXh0ZW5kIHRoaXMgY2xhc3NcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFN0b3JhZ2VTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiB1dGlsaXR5IGZ1bmN0aW9uLCB0byBkZXRlcm1pbmUgdGhlIHN0b3JhZ2UgaW1wbGVtZW50YXRpb25cbiAgICAgKi9cbiAgICBhYnN0cmFjdCBuYW1lKCk6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIHJldHJpZXZlIGFuIG9iamVjdCBmcm9tIHN0b3JhZ2VcbiAgICAgKiBAcGFyYW0ga2V5IHRoZSBhc3NvY2lhdGVkIGtleVxuICAgICAqIEByZXR1cm5zIHRoZSB2YWx1ZSBvciB1bmRlZmluZWQsIGlmIGNhc2Ugb2YgZXJyb3JcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBnZXQoa2V5OiBzdHJpbmcpOiBhbnk7XG4gICAgYWJzdHJhY3QgZ2V0PFQ+KGtleTogc3RyaW5nKTogVDtcblxuICAgIC8qKlxuICAgICAqIHNldHMgYW4gb2JqZWN0IGluIHN0b3JhZ2VcbiAgICAgKiBAcGFyYW0ga2V5IHRoZSBhc3NvY2lhdGVkIGtleVxuICAgICAqIEBwYXJhbSB2YWx1ZSB0aGUgdmFsdWUgdG8gc2V0XG4gICAgICovXG4gICAgYWJzdHJhY3Qgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogdm9pZDtcbiAgICBhYnN0cmFjdCBzZXQ8VD4oa2V5OiBzdHJpbmcsIHZhbHVlOiBUKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIHJlbW92ZXMgYW4gb2JqZWN0IGZyb20gc3RvcmFnZVxuICAgICAqIEBwYXJhbSBrZXkgdGhlIGFzc29jaWF0ZWQga2V5XG4gICAgICovXG4gICAgYWJzdHJhY3QgcmVtb3ZlKGtleTogc3RyaW5nKTogdm9pZDtcbn1cbiJdfQ==
@@ -1,12 +1,12 @@
1
- import { StorageService } from './storage.service';
2
- export class StorageServiceMock extends StorageService {
3
- name() {
4
- return null;
5
- }
6
- get() {
7
- return null;
8
- }
9
- set() { }
10
- remove() { }
11
- }
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLm1vY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3N0b3JhZ2Uvc3RvcmFnZS5zZXJ2aWNlLm1vY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5ELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxjQUFjO0lBQ2xELElBQUk7UUFDQSxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsR0FBRztRQUNDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxHQUFHLEtBQVUsQ0FBQztJQUVkLE1BQU0sS0FBVSxDQUFDO0NBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL3N0b3JhZ2Uuc2VydmljZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgU3RvcmFnZVNlcnZpY2VNb2NrIGV4dGVuZHMgU3RvcmFnZVNlcnZpY2Uge1xyXG4gICAgbmFtZSgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCgpOiBhbnkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCgpOiB2b2lkIHt9XHJcblxyXG4gICAgcmVtb3ZlKCk6IHZvaWQge31cclxufVxyXG4iXX0=
1
+ import { StorageService } from './storage.service';
2
+ export class StorageServiceMock extends StorageService {
3
+ name() {
4
+ return null;
5
+ }
6
+ get() {
7
+ return null;
8
+ }
9
+ set() { }
10
+ remove() { }
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLm1vY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3N0b3JhZ2Uvc3RvcmFnZS5zZXJ2aWNlLm1vY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5ELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxjQUFjO0lBQ2xELElBQUk7UUFDQSxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsR0FBRztRQUNDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxHQUFHLEtBQVUsQ0FBQztJQUVkLE1BQU0sS0FBVSxDQUFDO0NBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL3N0b3JhZ2Uuc2VydmljZSc7XG5cbmV4cG9ydCBjbGFzcyBTdG9yYWdlU2VydmljZU1vY2sgZXh0ZW5kcyBTdG9yYWdlU2VydmljZSB7XG4gICAgbmFtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBnZXQoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgc2V0KCk6IHZvaWQge31cblxuICAgIHJlbW92ZSgpOiB2b2lkIHt9XG59XG4iXX0=