@eui/core 15.4.0 → 15.4.1

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 +95 -7
  29. package/docs/index.html +36 -59
  30. package/docs/injectables/CoreAppEffects.html +51 -51
  31. package/docs/js/menu-wc.js +12 -7
  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/docs/overview.html +171 -0
  36. package/esm2020/eui-core.mjs +4 -4
  37. package/esm2020/index.mjs +13 -13
  38. package/esm2020/lib/eui-core.module.mjs +78 -78
  39. package/esm2020/lib/helpers/date-helpers.mjs +3 -3
  40. package/esm2020/lib/helpers/dom-helpers.mjs +87 -87
  41. package/esm2020/lib/helpers/event-helpers.mjs +9 -9
  42. package/esm2020/lib/helpers/form-helpers.mjs +42 -42
  43. package/esm2020/lib/helpers/format-helpers.mjs +66 -66
  44. package/esm2020/lib/helpers/http-helpers.mjs +7 -7
  45. package/esm2020/lib/helpers/index.mjs +8 -8
  46. package/esm2020/lib/helpers/utils.mjs +7 -7
  47. package/esm2020/lib/interceptors/add-lang-param.interceptor.mjs +35 -35
  48. package/esm2020/lib/interceptors/cache-prevention.interceptor.mjs +21 -21
  49. package/esm2020/lib/interceptors/cors-security.interceptor.mjs +15 -15
  50. package/esm2020/lib/interceptors/csrf-prevention.interceptor.mjs +15 -15
  51. package/esm2020/lib/interceptors/eu-login-session-timeout-handling.interceptor.mjs +72 -72
  52. package/esm2020/lib/interceptors/index.mjs +8 -8
  53. package/esm2020/lib/interceptors/openid/index.mjs +4 -4
  54. package/esm2020/lib/interceptors/openid/openid-connect.interceptor.mjs +149 -149
  55. package/esm2020/lib/interceptors/openid/openid-connect.service.mjs +56 -56
  56. package/esm2020/lib/interceptors/openid/openid-connect.service.mock.mjs +8 -8
  57. package/esm2020/lib/interceptors/ux-request-error-model.interceptor.mjs +31 -31
  58. package/esm2020/lib/services/app/eui-init-app.mjs +29 -29
  59. package/esm2020/lib/services/app/eui-pre-init-app.mjs +43 -43
  60. package/esm2020/lib/services/app/eui-startup.mjs +40 -40
  61. package/esm2020/lib/services/app/factories/log.mjs +55 -55
  62. package/esm2020/lib/services/app/index.mjs +2 -2
  63. package/esm2020/lib/services/config/defaults.mjs +68 -68
  64. package/esm2020/lib/services/config/tokens.mjs +74 -74
  65. package/esm2020/lib/services/errors/eui.error.mjs +38 -38
  66. package/esm2020/lib/services/errors/global-error-handler.mjs +24 -24
  67. package/esm2020/lib/services/errors/http-error-handler-callback-functions.mjs +17 -17
  68. package/esm2020/lib/services/errors/http-error-handler.interceptor.mjs +55 -55
  69. package/esm2020/lib/services/errors/index.mjs +5 -5
  70. package/esm2020/lib/services/i18n/i18n.loader.mjs +198 -198
  71. package/esm2020/lib/services/i18n/i18n.resource.mjs +43 -43
  72. package/esm2020/lib/services/i18n/i18n.service.mjs +228 -228
  73. package/esm2020/lib/services/i18n/i18n.service.mock.mjs +38 -38
  74. package/esm2020/lib/services/i18n/index.mjs +6 -6
  75. package/esm2020/lib/services/index.mjs +19 -19
  76. package/esm2020/lib/services/locale/index.mjs +3 -3
  77. package/esm2020/lib/services/locale/locale.service.mjs +232 -232
  78. package/esm2020/lib/services/locale/locale.service.mock.mjs +43 -43
  79. package/esm2020/lib/services/log/index.mjs +4 -4
  80. package/esm2020/lib/services/log/log.module.mjs +38 -38
  81. package/esm2020/lib/services/log/log.service.mjs +51 -51
  82. package/esm2020/lib/services/log/log.service.mock.mjs +7 -7
  83. package/esm2020/lib/services/permission/permission.service.mjs +110 -110
  84. package/esm2020/lib/services/queue/api-queue.service.mjs +137 -137
  85. package/esm2020/lib/services/queue/api-queue.service.mock.mjs +23 -23
  86. package/esm2020/lib/services/queue/index.mjs +3 -3
  87. package/esm2020/lib/services/storage/async-storage.service.mjs +17 -17
  88. package/esm2020/lib/services/storage/async-storage.service.mock.mjs +22 -22
  89. package/esm2020/lib/services/storage/index.mjs +8 -8
  90. package/esm2020/lib/services/storage/local-forage.service.mjs +93 -93
  91. package/esm2020/lib/services/storage/local-storage.service.mjs +75 -75
  92. package/esm2020/lib/services/storage/session-storage.service.mjs +75 -75
  93. package/esm2020/lib/services/storage/storage.service.mjs +6 -6
  94. package/esm2020/lib/services/storage/storage.service.mock.mjs +12 -12
  95. package/esm2020/lib/services/store/actions/app.actions.mjs +74 -74
  96. package/esm2020/lib/services/store/actions/i18n.actions.mjs +11 -11
  97. package/esm2020/lib/services/store/actions/index.mjs +6 -6
  98. package/esm2020/lib/services/store/actions/locale.actions.mjs +11 -11
  99. package/esm2020/lib/services/store/actions/notifications.actions.mjs +11 -11
  100. package/esm2020/lib/services/store/actions/user.actions.mjs +39 -39
  101. package/esm2020/lib/services/store/effects/app.effects.mjs +55 -55
  102. package/esm2020/lib/services/store/effects/index.mjs +4 -4
  103. package/esm2020/lib/services/store/index.mjs +6 -6
  104. package/esm2020/lib/services/store/reducers/app.reducers.mjs +56 -56
  105. package/esm2020/lib/services/store/reducers/core.reducers.mjs +13 -13
  106. package/esm2020/lib/services/store/reducers/i18n.reducers.mjs +16 -16
  107. package/esm2020/lib/services/store/reducers/index.mjs +8 -8
  108. package/esm2020/lib/services/store/reducers/locale.reducers.mjs +16 -16
  109. package/esm2020/lib/services/store/reducers/meta.reducers.mjs +89 -89
  110. package/esm2020/lib/services/store/reducers/notifications.reducers.mjs +13 -13
  111. package/esm2020/lib/services/store/reducers/user.reducers.mjs +43 -43
  112. package/esm2020/lib/services/store/store.service.mjs +112 -112
  113. package/esm2020/lib/services/store/store.service.mock.mjs +22 -22
  114. package/esm2020/lib/services/user/index.mjs +3 -3
  115. package/esm2020/lib/services/user/user.service.mjs +64 -64
  116. package/esm2020/lib/services/user/user.service.mock.mjs +32 -32
  117. package/esm2020/lib/services/ux-app-shell.service.mjs +690 -690
  118. package/esm2020/lib/services/ux-dynamic-component/ux-dynamic-component.service.mjs +63 -63
  119. package/esm2020/lib/services/ux-dynamic-menu/ux-dynamic-menu.service.mjs +66 -66
  120. package/esm2020/lib/services/ux-error-feedback/ux-error-feedback.service.mjs +99 -99
  121. package/esm2020/lib/services/ux-error-feedback/ux-error-handler.operator.mjs +16 -16
  122. package/esm2020/lib/services/ux-timezone.service.mjs +716 -716
  123. package/fesm2015/eui-core.mjs +4484 -4484
  124. package/fesm2015/eui-core.mjs.map +1 -1
  125. package/fesm2020/eui-core.mjs +4538 -4538
  126. package/fesm2020/eui-core.mjs.map +1 -1
  127. package/index.d.ts +5 -5
  128. package/lib/eui-core.module.d.ts +20 -20
  129. package/lib/helpers/date-helpers.d.ts +2 -2
  130. package/lib/helpers/dom-helpers.d.ts +26 -26
  131. package/lib/helpers/event-helpers.d.ts +1 -1
  132. package/lib/helpers/form-helpers.d.ts +10 -10
  133. package/lib/helpers/format-helpers.d.ts +12 -12
  134. package/lib/helpers/http-helpers.d.ts +2 -2
  135. package/lib/helpers/index.d.ts +7 -7
  136. package/lib/helpers/utils.d.ts +6 -6
  137. package/lib/interceptors/add-lang-param.interceptor.d.ts +16 -16
  138. package/lib/interceptors/cache-prevention.interceptor.d.ts +8 -8
  139. package/lib/interceptors/cors-security.interceptor.d.ts +8 -8
  140. package/lib/interceptors/csrf-prevention.interceptor.d.ts +8 -8
  141. package/lib/interceptors/eu-login-session-timeout-handling.interceptor.d.ts +12 -12
  142. package/lib/interceptors/index.d.ts +7 -7
  143. package/lib/interceptors/openid/index.d.ts +3 -3
  144. package/lib/interceptors/openid/openid-connect.interceptor.d.ts +14 -14
  145. package/lib/interceptors/openid/openid-connect.service.d.ts +17 -17
  146. package/lib/interceptors/openid/openid-connect.service.mock.d.ts +5 -5
  147. package/lib/interceptors/ux-request-error-model.interceptor.d.ts +13 -13
  148. package/lib/services/app/eui-init-app.d.ts +2 -2
  149. package/lib/services/app/eui-pre-init-app.d.ts +16 -16
  150. package/lib/services/app/eui-startup.d.ts +4 -4
  151. package/lib/services/app/factories/log.d.ts +25 -25
  152. package/lib/services/app/index.d.ts +1 -1
  153. package/lib/services/config/defaults.d.ts +11 -11
  154. package/lib/services/config/tokens.d.ts +19 -19
  155. package/lib/services/errors/eui.error.d.ts +15 -15
  156. package/lib/services/errors/global-error-handler.d.ts +10 -10
  157. package/lib/services/errors/http-error-handler-callback-functions.d.ts +6 -6
  158. package/lib/services/errors/http-error-handler.interceptor.d.ts +22 -22
  159. package/lib/services/errors/index.d.ts +4 -4
  160. package/lib/services/i18n/i18n.loader.d.ts +79 -79
  161. package/lib/services/i18n/i18n.resource.d.ts +35 -35
  162. package/lib/services/i18n/i18n.service.d.ts +73 -73
  163. package/lib/services/i18n/i18n.service.mock.d.ts +19 -19
  164. package/lib/services/i18n/index.d.ts +4 -4
  165. package/lib/services/index.d.ts +18 -18
  166. package/lib/services/locale/index.d.ts +2 -2
  167. package/lib/services/locale/locale.service.d.ts +68 -68
  168. package/lib/services/locale/locale.service.mock.d.ts +15 -15
  169. package/lib/services/log/index.d.ts +3 -3
  170. package/lib/services/log/log.module.d.ts +15 -15
  171. package/lib/services/log/log.service.d.ts +27 -27
  172. package/lib/services/log/log.service.mock.d.ts +4 -4
  173. package/lib/services/permission/permission.service.d.ts +52 -52
  174. package/lib/services/queue/api-queue.service.d.ts +76 -76
  175. package/lib/services/queue/api-queue.service.mock.d.ts +13 -13
  176. package/lib/services/queue/index.d.ts +2 -2
  177. package/lib/services/storage/async-storage.service.d.ts +44 -44
  178. package/lib/services/storage/async-storage.service.mock.d.ts +11 -11
  179. package/lib/services/storage/index.d.ts +7 -7
  180. package/lib/services/storage/local-forage.service.d.ts +48 -48
  181. package/lib/services/storage/local-storage.service.d.ts +34 -34
  182. package/lib/services/storage/session-storage.service.d.ts +34 -34
  183. package/lib/services/storage/storage.service.d.ts +28 -28
  184. package/lib/services/storage/storage.service.mock.d.ts +7 -7
  185. package/lib/services/store/actions/app.actions.d.ts +82 -82
  186. package/lib/services/store/actions/i18n.actions.d.ts +11 -11
  187. package/lib/services/store/actions/index.d.ts +5 -5
  188. package/lib/services/store/actions/locale.actions.d.ts +11 -11
  189. package/lib/services/store/actions/notifications.actions.d.ts +10 -10
  190. package/lib/services/store/actions/user.actions.d.ts +35 -35
  191. package/lib/services/store/effects/app.effects.d.ts +19 -19
  192. package/lib/services/store/effects/index.d.ts +3 -3
  193. package/lib/services/store/index.d.ts +5 -5
  194. package/lib/services/store/reducers/app.reducers.d.ts +3 -3
  195. package/lib/services/store/reducers/core.reducers.d.ts +3 -3
  196. package/lib/services/store/reducers/i18n.reducers.d.ts +3 -3
  197. package/lib/services/store/reducers/index.d.ts +7 -7
  198. package/lib/services/store/reducers/locale.reducers.d.ts +3 -3
  199. package/lib/services/store/reducers/meta.reducers.d.ts +17 -17
  200. package/lib/services/store/reducers/notifications.reducers.d.ts +3 -3
  201. package/lib/services/store/reducers/user.reducers.d.ts +3 -3
  202. package/lib/services/store/store.service.d.ts +43 -43
  203. package/lib/services/store/store.service.mock.d.ts +12 -12
  204. package/lib/services/user/index.d.ts +2 -2
  205. package/lib/services/user/user.service.d.ts +15 -15
  206. package/lib/services/user/user.service.mock.d.ts +16 -16
  207. package/lib/services/ux-app-shell.service.d.ts +155 -155
  208. package/lib/services/ux-dynamic-component/ux-dynamic-component.service.d.ts +36 -36
  209. package/lib/services/ux-dynamic-menu/ux-dynamic-menu.service.d.ts +14 -14
  210. package/lib/services/ux-error-feedback/ux-error-feedback.service.d.ts +35 -35
  211. package/lib/services/ux-error-feedback/ux-error-handler.operator.d.ts +3 -3
  212. package/lib/services/ux-timezone.service.d.ts +269 -269
  213. package/package.json +2 -2
@@ -1,32 +1,32 @@
1
- import { of } from 'rxjs';
2
- import { UserService } from './user.service';
3
- import { Injectable } from '@angular/core';
4
- import * as i0 from "@angular/core";
5
- export class UserServiceMock extends UserService {
6
- constructor() {
7
- super(null);
8
- }
9
- loadUserDetails() {
10
- return of({ userId: 'anonymous' });
11
- }
12
- observePreferencesUpdate() { }
13
- loadUserPreferences() {
14
- return of({});
15
- }
16
- saveUserPreferences() {
17
- return of({});
18
- }
19
- mergeUserPreferences() { }
20
- userPreferences() {
21
- return of({});
22
- }
23
- getUserId() {
24
- return of('anonymous');
25
- }
26
- }
27
- /** @nocollapse */ UserServiceMock.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserServiceMock, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
28
- /** @nocollapse */ UserServiceMock.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserServiceMock });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserServiceMock, decorators: [{
30
- type: Injectable
31
- }], ctorParameters: function () { return []; } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLm1vY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3VzZXIvdXNlci5zZXJ2aWNlLm1vY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLGVBQWdCLFNBQVEsV0FBVztJQUM1QztRQUNJLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQixDQUFDO0lBRUQsZUFBZTtRQUNYLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELHdCQUF3QixLQUFJLENBQUM7SUFFN0IsbUJBQW1CO1FBQ2YsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVELG1CQUFtQjtRQUNmLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxvQkFBb0IsS0FBSSxDQUFDO0lBRXpCLGVBQWU7UUFDWCxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRUQsU0FBUztRQUNMLE9BQU8sRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzNCLENBQUM7OytIQTNCUSxlQUFlO21JQUFmLGVBQWU7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4vdXNlci5zZXJ2aWNlJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFVzZXJTZXJ2aWNlTW9jayBleHRlbmRzIFVzZXJTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIobnVsbCk7XG4gICAgfVxuXG4gICAgbG9hZFVzZXJEZXRhaWxzKCkge1xuICAgICAgICByZXR1cm4gb2YoeyB1c2VySWQ6ICdhbm9ueW1vdXMnIH0pO1xuICAgIH1cblxuICAgIG9ic2VydmVQcmVmZXJlbmNlc1VwZGF0ZSgpIHt9XG5cbiAgICBsb2FkVXNlclByZWZlcmVuY2VzKCkge1xuICAgICAgICByZXR1cm4gb2Yoe30pO1xuICAgIH1cblxuICAgIHNhdmVVc2VyUHJlZmVyZW5jZXMoKSB7XG4gICAgICAgIHJldHVybiBvZih7fSk7XG4gICAgfVxuXG4gICAgbWVyZ2VVc2VyUHJlZmVyZW5jZXMoKSB7fVxuXG4gICAgdXNlclByZWZlcmVuY2VzKCkge1xuICAgICAgICByZXR1cm4gb2Yoe30pO1xuICAgIH1cblxuICAgIGdldFVzZXJJZCgpIHtcbiAgICAgICAgcmV0dXJuIG9mKCdhbm9ueW1vdXMnKTtcbiAgICB9XG59XG4iXX0=
1
+ import { of } from 'rxjs';
2
+ import { UserService } from './user.service';
3
+ import { Injectable } from '@angular/core';
4
+ import * as i0 from "@angular/core";
5
+ export class UserServiceMock extends UserService {
6
+ constructor() {
7
+ super(null);
8
+ }
9
+ loadUserDetails() {
10
+ return of({ userId: 'anonymous' });
11
+ }
12
+ observePreferencesUpdate() { }
13
+ loadUserPreferences() {
14
+ return of({});
15
+ }
16
+ saveUserPreferences() {
17
+ return of({});
18
+ }
19
+ mergeUserPreferences() { }
20
+ userPreferences() {
21
+ return of({});
22
+ }
23
+ getUserId() {
24
+ return of('anonymous');
25
+ }
26
+ }
27
+ /** @nocollapse */ UserServiceMock.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserServiceMock, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
28
+ /** @nocollapse */ UserServiceMock.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserServiceMock });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UserServiceMock, decorators: [{
30
+ type: Injectable
31
+ }], ctorParameters: function () { return []; } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLm1vY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3VzZXIvdXNlci5zZXJ2aWNlLm1vY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLGVBQWdCLFNBQVEsV0FBVztJQUM1QztRQUNJLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQixDQUFDO0lBRUQsZUFBZTtRQUNYLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELHdCQUF3QixLQUFJLENBQUM7SUFFN0IsbUJBQW1CO1FBQ2YsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVELG1CQUFtQjtRQUNmLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxvQkFBb0IsS0FBSSxDQUFDO0lBRXpCLGVBQWU7UUFDWCxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRUQsU0FBUztRQUNMLE9BQU8sRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzNCLENBQUM7OytIQTNCUSxlQUFlO21JQUFmLGVBQWU7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi91c2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBVc2VyU2VydmljZU1vY2sgZXh0ZW5kcyBVc2VyU2VydmljZSB7XHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICBzdXBlcihudWxsKTtcclxuICAgIH1cclxuXHJcbiAgICBsb2FkVXNlckRldGFpbHMoKSB7XHJcbiAgICAgICAgcmV0dXJuIG9mKHsgdXNlcklkOiAnYW5vbnltb3VzJyB9KTtcclxuICAgIH1cclxuXHJcbiAgICBvYnNlcnZlUHJlZmVyZW5jZXNVcGRhdGUoKSB7fVxyXG5cclxuICAgIGxvYWRVc2VyUHJlZmVyZW5jZXMoKSB7XHJcbiAgICAgICAgcmV0dXJuIG9mKHt9KTtcclxuICAgIH1cclxuXHJcbiAgICBzYXZlVXNlclByZWZlcmVuY2VzKCkge1xyXG4gICAgICAgIHJldHVybiBvZih7fSk7XHJcbiAgICB9XHJcblxyXG4gICAgbWVyZ2VVc2VyUHJlZmVyZW5jZXMoKSB7fVxyXG5cclxuICAgIHVzZXJQcmVmZXJlbmNlcygpIHtcclxuICAgICAgICByZXR1cm4gb2Yoe30pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFVzZXJJZCgpIHtcclxuICAgICAgICByZXR1cm4gb2YoJ2Fub255bW91cycpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==