@sunbird-cb/utils 1.0.7 → 1.0.10

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 (245) hide show
  1. package/bundles/sunbird-cb-utils.umd.js +5303 -5256
  2. package/bundles/sunbird-cb-utils.umd.js.map +1 -1
  3. package/bundles/sunbird-cb-utils.umd.min.js +2 -2
  4. package/bundles/sunbird-cb-utils.umd.min.js.map +1 -1
  5. package/esm2015/lib/components/image-crop/image-crop.component.js +194 -194
  6. package/esm2015/lib/components/image-crop/image-crop.module.js +26 -26
  7. package/esm2015/lib/constants/features.enum.js +554 -554
  8. package/esm2015/lib/constants/instances.enum.js +4 -4
  9. package/esm2015/lib/directives/class-change-on-scroll/class-change-on-scroll.directive.js +86 -86
  10. package/esm2015/lib/directives/class-change-on-scroll/class-change-on-scroll.module.js +14 -14
  11. package/esm2015/lib/directives/default-thumbnail/default-thumbnail.directive.js +37 -37
  12. package/esm2015/lib/directives/default-thumbnail/default-thumbnail.module.js +14 -14
  13. package/esm2015/lib/directives/image-responsive/image-responsive.directive.js +91 -91
  14. package/esm2015/lib/directives/image-responsive/image-responsive.module.js +14 -14
  15. package/esm2015/lib/directives/in-view-port/in-view-port.directive.js +67 -67
  16. package/esm2015/lib/directives/in-view-port/in-view-port.module.js +14 -14
  17. package/esm2015/lib/directives/navigation/navigation.directive.js +38 -38
  18. package/esm2015/lib/directives/navigation/navigation.module.js +14 -14
  19. package/esm2015/lib/directives/permission/permission.directive.js +10 -10
  20. package/esm2015/lib/directives/permission/permission.module.js +14 -14
  21. package/esm2015/lib/helpers/functions/getStringifiedQueryParams.js +8 -8
  22. package/esm2015/lib/helpers/horizontal-scroller/horizontal-scroller.component.js +98 -98
  23. package/esm2015/lib/helpers/horizontal-scroller/horizontal-scroller.module.js +18 -18
  24. package/esm2015/lib/helpers/logout/logout.component.js +57 -56
  25. package/esm2015/lib/helpers/logout/logout.module.js +17 -17
  26. package/esm2015/lib/models/contentRating.model.js +12 -12
  27. package/esm2015/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.module.js +12 -12
  28. package/esm2015/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.pipe.js +58 -58
  29. package/esm2015/lib/pipes/pipe-count-transform/pipe-count-transform.module.js +14 -14
  30. package/esm2015/lib/pipes/pipe-count-transform/pipe-count-transform.pipe.js +32 -32
  31. package/esm2015/lib/pipes/pipe-date-concat/pipe-date-concat.module.js +14 -14
  32. package/esm2015/lib/pipes/pipe-date-concat/pipe-date-concat.pipe.js +42 -42
  33. package/esm2015/lib/pipes/pipe-duration-transform/pipe-duration-transform.module.js +14 -14
  34. package/esm2015/lib/pipes/pipe-duration-transform/pipe-duration-transform.pipe.js +59 -59
  35. package/esm2015/lib/pipes/pipe-filter/pipe-filter.module.js +14 -14
  36. package/esm2015/lib/pipes/pipe-filter/pipe-filter.pipe.js +15 -15
  37. package/esm2015/lib/pipes/pipe-filter-search/pipe-filter-search.module.js +14 -14
  38. package/esm2015/lib/pipes/pipe-filter-search/pipe-filter-search.pipe.js +29 -29
  39. package/esm2015/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.module.js +14 -14
  40. package/esm2015/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.pipe.js +11 -11
  41. package/esm2015/lib/pipes/pipe-limit-to/pipe-limit-to.module.js +14 -14
  42. package/esm2015/lib/pipes/pipe-limit-to/pipe-limit-to.pipe.js +24 -24
  43. package/esm2015/lib/pipes/pipe-list-filter/pipe-list-filter.module.js +14 -14
  44. package/esm2015/lib/pipes/pipe-list-filter/pipe-list-filter.pipe.js +16 -16
  45. package/esm2015/lib/pipes/pipe-name-transform/pipe-name-transform.module.js +14 -14
  46. package/esm2015/lib/pipes/pipe-name-transform/pipe-name-transform.pipe.js +30 -30
  47. package/esm2015/lib/pipes/pipe-order-by/pipe-order-by.module.js +14 -14
  48. package/esm2015/lib/pipes/pipe-order-by/pipe-order-by.pipe.js +15 -15
  49. package/esm2015/lib/pipes/pipe-partial-content/pipe-partial-content.module.js +14 -14
  50. package/esm2015/lib/pipes/pipe-partial-content/pipe-partial-content.pipe.js +17 -17
  51. package/esm2015/lib/pipes/pipe-relative-time/pipe-relative-time.module.js +14 -14
  52. package/esm2015/lib/pipes/pipe-relative-time/pipe-relative-time.pipe.js +15 -15
  53. package/esm2015/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.module.js +14 -14
  54. package/esm2015/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.pipe.js +34 -34
  55. package/esm2015/lib/resolvers/explore-detail.resolver.js +88 -88
  56. package/esm2015/lib/resolvers/marketing-offering.resolve.js +39 -39
  57. package/esm2015/lib/resolvers/page.constant.js +3 -3
  58. package/esm2015/lib/resolvers/page.model.js +46 -46
  59. package/esm2015/lib/resolvers/page.resolver.js +89 -89
  60. package/esm2015/lib/resolvers/resolver.model.js +5 -5
  61. package/esm2015/lib/services/auth-keycloak.service.js +235 -225
  62. package/esm2015/lib/services/auth-microsoft.service.js +195 -195
  63. package/esm2015/lib/services/card-content.model.js +30 -30
  64. package/esm2015/lib/services/configurations.model.js +497 -508
  65. package/esm2015/lib/services/configurations.service.js +103 -103
  66. package/esm2015/lib/services/content-strip-multiple.model.js +74 -74
  67. package/esm2015/lib/services/event.model.js +228 -227
  68. package/esm2015/lib/services/event.service.js +108 -107
  69. package/esm2015/lib/services/logger.service.js +54 -54
  70. package/esm2015/lib/services/ms-office.model.js +7 -7
  71. package/esm2015/lib/services/subapplication-respond.service.js +224 -224
  72. package/esm2015/lib/services/telemetry.service.js +450 -413
  73. package/esm2015/lib/services/user-preference.model.js +28 -28
  74. package/esm2015/lib/services/user-preference.service.js +89 -89
  75. package/esm2015/lib/services/utility.service.js +144 -144
  76. package/esm2015/lib/services/value.service.js +30 -30
  77. package/esm2015/lib/services/widget-content.model.js +341 -341
  78. package/esm2015/lib/services/widget-content.service.js +191 -191
  79. package/esm2015/lib/services/widget-resolver.model.js +56 -56
  80. package/esm2015/lib/services/widget-search.model.js +125 -125
  81. package/esm2015/public-api.js +66 -66
  82. package/esm2015/sunbird-cb-utils.js +8 -8
  83. package/esm5/lib/components/image-crop/image-crop.component.js +199 -199
  84. package/esm5/lib/components/image-crop/image-crop.module.js +30 -30
  85. package/esm5/lib/constants/features.enum.js +554 -554
  86. package/esm5/lib/constants/instances.enum.js +4 -4
  87. package/esm5/lib/directives/class-change-on-scroll/class-change-on-scroll.directive.js +104 -104
  88. package/esm5/lib/directives/class-change-on-scroll/class-change-on-scroll.module.js +18 -18
  89. package/esm5/lib/directives/default-thumbnail/default-thumbnail.directive.js +39 -39
  90. package/esm5/lib/directives/default-thumbnail/default-thumbnail.module.js +18 -18
  91. package/esm5/lib/directives/image-responsive/image-responsive.directive.js +94 -94
  92. package/esm5/lib/directives/image-responsive/image-responsive.module.js +18 -18
  93. package/esm5/lib/directives/in-view-port/in-view-port.directive.js +72 -72
  94. package/esm5/lib/directives/in-view-port/in-view-port.module.js +18 -18
  95. package/esm5/lib/directives/navigation/navigation.directive.js +40 -40
  96. package/esm5/lib/directives/navigation/navigation.module.js +18 -18
  97. package/esm5/lib/directives/permission/permission.directive.js +13 -13
  98. package/esm5/lib/directives/permission/permission.module.js +18 -18
  99. package/esm5/lib/helpers/functions/getStringifiedQueryParams.js +8 -8
  100. package/esm5/lib/helpers/horizontal-scroller/horizontal-scroller.component.js +102 -102
  101. package/esm5/lib/helpers/horizontal-scroller/horizontal-scroller.module.js +22 -22
  102. package/esm5/lib/helpers/logout/logout.component.js +63 -62
  103. package/esm5/lib/helpers/logout/logout.module.js +21 -21
  104. package/esm5/lib/models/contentRating.model.js +12 -12
  105. package/esm5/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.module.js +16 -16
  106. package/esm5/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.pipe.js +62 -62
  107. package/esm5/lib/pipes/pipe-count-transform/pipe-count-transform.module.js +18 -18
  108. package/esm5/lib/pipes/pipe-count-transform/pipe-count-transform.pipe.js +36 -36
  109. package/esm5/lib/pipes/pipe-date-concat/pipe-date-concat.module.js +18 -18
  110. package/esm5/lib/pipes/pipe-date-concat/pipe-date-concat.pipe.js +44 -44
  111. package/esm5/lib/pipes/pipe-duration-transform/pipe-duration-transform.module.js +18 -18
  112. package/esm5/lib/pipes/pipe-duration-transform/pipe-duration-transform.pipe.js +63 -63
  113. package/esm5/lib/pipes/pipe-filter/pipe-filter.module.js +18 -18
  114. package/esm5/lib/pipes/pipe-filter/pipe-filter.pipe.js +19 -19
  115. package/esm5/lib/pipes/pipe-filter-search/pipe-filter-search.module.js +18 -18
  116. package/esm5/lib/pipes/pipe-filter-search/pipe-filter-search.pipe.js +37 -37
  117. package/esm5/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.module.js +18 -18
  118. package/esm5/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.pipe.js +15 -15
  119. package/esm5/lib/pipes/pipe-limit-to/pipe-limit-to.module.js +18 -18
  120. package/esm5/lib/pipes/pipe-limit-to/pipe-limit-to.pipe.js +29 -29
  121. package/esm5/lib/pipes/pipe-list-filter/pipe-list-filter.module.js +18 -18
  122. package/esm5/lib/pipes/pipe-list-filter/pipe-list-filter.pipe.js +20 -20
  123. package/esm5/lib/pipes/pipe-name-transform/pipe-name-transform.module.js +18 -18
  124. package/esm5/lib/pipes/pipe-name-transform/pipe-name-transform.pipe.js +34 -34
  125. package/esm5/lib/pipes/pipe-order-by/pipe-order-by.module.js +18 -18
  126. package/esm5/lib/pipes/pipe-order-by/pipe-order-by.pipe.js +17 -17
  127. package/esm5/lib/pipes/pipe-partial-content/pipe-partial-content.module.js +18 -18
  128. package/esm5/lib/pipes/pipe-partial-content/pipe-partial-content.pipe.js +33 -33
  129. package/esm5/lib/pipes/pipe-relative-time/pipe-relative-time.module.js +18 -18
  130. package/esm5/lib/pipes/pipe-relative-time/pipe-relative-time.pipe.js +19 -19
  131. package/esm5/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.module.js +18 -18
  132. package/esm5/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.pipe.js +37 -37
  133. package/esm5/lib/resolvers/explore-detail.resolver.js +92 -92
  134. package/esm5/lib/resolvers/marketing-offering.resolve.js +42 -42
  135. package/esm5/lib/resolvers/page.constant.js +3 -3
  136. package/esm5/lib/resolvers/page.model.js +46 -46
  137. package/esm5/lib/resolvers/page.resolver.js +97 -97
  138. package/esm5/lib/resolvers/resolver.model.js +5 -5
  139. package/esm5/lib/services/auth-keycloak.service.js +310 -293
  140. package/esm5/lib/services/auth-microsoft.service.js +250 -250
  141. package/esm5/lib/services/card-content.model.js +30 -30
  142. package/esm5/lib/services/configurations.model.js +497 -508
  143. package/esm5/lib/services/configurations.service.js +105 -105
  144. package/esm5/lib/services/content-strip-multiple.model.js +74 -74
  145. package/esm5/lib/services/event.model.js +228 -227
  146. package/esm5/lib/services/event.service.js +111 -110
  147. package/esm5/lib/services/logger.service.js +72 -72
  148. package/esm5/lib/services/ms-office.model.js +7 -7
  149. package/esm5/lib/services/subapplication-respond.service.js +229 -229
  150. package/esm5/lib/services/telemetry.service.js +485 -445
  151. package/esm5/lib/services/user-preference.model.js +28 -28
  152. package/esm5/lib/services/user-preference.service.js +108 -108
  153. package/esm5/lib/services/utility.service.js +177 -177
  154. package/esm5/lib/services/value.service.js +32 -32
  155. package/esm5/lib/services/widget-content.model.js +341 -341
  156. package/esm5/lib/services/widget-content.service.js +213 -213
  157. package/esm5/lib/services/widget-resolver.model.js +56 -56
  158. package/esm5/lib/services/widget-search.model.js +125 -125
  159. package/esm5/public-api.js +66 -66
  160. package/esm5/sunbird-cb-utils.js +8 -8
  161. package/fesm2015/sunbird-cb-utils.js +4874 -4837
  162. package/fesm2015/sunbird-cb-utils.js.map +1 -1
  163. package/fesm5/sunbird-cb-utils.js +5300 -5253
  164. package/fesm5/sunbird-cb-utils.js.map +1 -1
  165. package/lib/components/image-crop/image-crop.component.d.ts +56 -56
  166. package/lib/components/image-crop/image-crop.module.d.ts +2 -2
  167. package/lib/constants/features.enum.d.ts +553 -553
  168. package/lib/constants/instances.enum.d.ts +3 -3
  169. package/lib/constants/misc.constants.d.ts +2 -2
  170. package/lib/directives/class-change-on-scroll/class-change-on-scroll.directive.d.ts +18 -18
  171. package/lib/directives/class-change-on-scroll/class-change-on-scroll.module.d.ts +2 -2
  172. package/lib/directives/default-thumbnail/default-thumbnail.directive.d.ts +9 -9
  173. package/lib/directives/default-thumbnail/default-thumbnail.module.d.ts +2 -2
  174. package/lib/directives/image-responsive/image-responsive.directive.d.ts +17 -17
  175. package/lib/directives/image-responsive/image-responsive.module.d.ts +2 -2
  176. package/lib/directives/in-view-port/in-view-port.directive.d.ts +11 -11
  177. package/lib/directives/in-view-port/in-view-port.module.d.ts +2 -2
  178. package/lib/directives/navigation/navigation.directive.d.ts +9 -9
  179. package/lib/directives/navigation/navigation.module.d.ts +2 -2
  180. package/lib/directives/permission/permission.directive.d.ts +3 -3
  181. package/lib/directives/permission/permission.module.d.ts +2 -2
  182. package/lib/helpers/functions/getStringifiedQueryParams.d.ts +3 -3
  183. package/lib/helpers/horizontal-scroller/horizontal-scroller.component.d.ts +18 -18
  184. package/lib/helpers/horizontal-scroller/horizontal-scroller.module.d.ts +2 -2
  185. package/lib/helpers/logout/logout.component.d.ts +18 -18
  186. package/lib/helpers/logout/logout.module.d.ts +2 -2
  187. package/lib/models/contentRating.model.d.ts +9 -9
  188. package/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.module.d.ts +2 -2
  189. package/lib/pipes/pipe-concise-date-range/pipe-concise-date-range.pipe.d.ts +10 -10
  190. package/lib/pipes/pipe-count-transform/pipe-count-transform.module.d.ts +2 -2
  191. package/lib/pipes/pipe-count-transform/pipe-count-transform.pipe.d.ts +4 -4
  192. package/lib/pipes/pipe-date-concat/pipe-date-concat.module.d.ts +2 -2
  193. package/lib/pipes/pipe-date-concat/pipe-date-concat.pipe.d.ts +13 -13
  194. package/lib/pipes/pipe-duration-transform/pipe-duration-transform.module.d.ts +2 -2
  195. package/lib/pipes/pipe-duration-transform/pipe-duration-transform.pipe.d.ts +5 -5
  196. package/lib/pipes/pipe-filter/pipe-filter.module.d.ts +2 -2
  197. package/lib/pipes/pipe-filter/pipe-filter.pipe.d.ts +4 -4
  198. package/lib/pipes/pipe-filter-search/pipe-filter-search.module.d.ts +2 -2
  199. package/lib/pipes/pipe-filter-search/pipe-filter-search.pipe.d.ts +4 -4
  200. package/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.module.d.ts +2 -2
  201. package/lib/pipes/pipe-html-tag-removal/pipe-html-tag-removal.pipe.d.ts +4 -4
  202. package/lib/pipes/pipe-limit-to/pipe-limit-to.module.d.ts +2 -2
  203. package/lib/pipes/pipe-limit-to/pipe-limit-to.pipe.d.ts +4 -4
  204. package/lib/pipes/pipe-list-filter/pipe-list-filter.module.d.ts +2 -2
  205. package/lib/pipes/pipe-list-filter/pipe-list-filter.pipe.d.ts +4 -4
  206. package/lib/pipes/pipe-name-transform/pipe-name-transform.module.d.ts +2 -2
  207. package/lib/pipes/pipe-name-transform/pipe-name-transform.pipe.d.ts +10 -10
  208. package/lib/pipes/pipe-order-by/pipe-order-by.module.d.ts +2 -2
  209. package/lib/pipes/pipe-order-by/pipe-order-by.pipe.d.ts +9 -9
  210. package/lib/pipes/pipe-partial-content/pipe-partial-content.module.d.ts +2 -2
  211. package/lib/pipes/pipe-partial-content/pipe-partial-content.pipe.d.ts +4 -4
  212. package/lib/pipes/pipe-relative-time/pipe-relative-time.module.d.ts +2 -2
  213. package/lib/pipes/pipe-relative-time/pipe-relative-time.pipe.d.ts +4 -4
  214. package/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.module.d.ts +2 -2
  215. package/lib/pipes/pipe-safe-sanitizer/pipe-safe-sanitizer.pipe.d.ts +7 -7
  216. package/lib/resolvers/explore-detail.resolver.d.ts +16 -16
  217. package/lib/resolvers/marketing-offering.resolve.d.ts +10 -10
  218. package/lib/resolvers/page.constant.d.ts +1 -1
  219. package/lib/resolvers/page.model.d.ts +40 -40
  220. package/lib/resolvers/page.resolver.d.ts +17 -17
  221. package/lib/resolvers/resolver.model.d.ts +4 -4
  222. package/lib/services/auth-keycloak.service.d.ts +30 -27
  223. package/lib/services/auth-microsoft.service.d.ts +30 -30
  224. package/lib/services/card-content.model.d.ts +29 -29
  225. package/lib/services/configurations.model.d.ts +478 -487
  226. package/lib/services/configurations.service.d.ts +49 -49
  227. package/lib/services/content-strip-multiple.model.d.ts +79 -79
  228. package/lib/services/event.model.d.ts +192 -191
  229. package/lib/services/event.service.d.ts +14 -14
  230. package/lib/services/logger.service.d.ts +15 -15
  231. package/lib/services/ms-office.model.d.ts +6 -6
  232. package/lib/services/subapplication-respond.service.d.ts +25 -25
  233. package/lib/services/telemetry.service.d.ts +42 -40
  234. package/lib/services/user-preference.model.d.ts +26 -26
  235. package/lib/services/user-preference.service.d.ts +11 -11
  236. package/lib/services/utility.service.d.ts +31 -31
  237. package/lib/services/value.service.d.ts +8 -8
  238. package/lib/services/widget-content.model.d.ts +314 -314
  239. package/lib/services/widget-content.service.d.ts +49 -49
  240. package/lib/services/widget-resolver.model.d.ts +48 -48
  241. package/lib/services/widget-search.model.d.ts +114 -114
  242. package/package.json +1 -1
  243. package/public-api.d.ts +66 -66
  244. package/sunbird-cb-utils.d.ts +8 -8
  245. package/sunbird-cb-utils.metadata.json +1 -1
@@ -1,29 +1,29 @@
1
- export function IUserPreference() { }
2
- if (false) {
3
- IUserPreference.prototype.selectedTheme;
4
- IUserPreference.prototype.selectedFont;
5
- IUserPreference.prototype.selectedLocale;
6
- IUserPreference.prototype.isDarkMode;
7
- IUserPreference.prototype.isIntranetAllowed;
8
- IUserPreference.prototype.isRTL;
9
- IUserPreference.prototype.colorPallet;
10
- IUserPreference.prototype.defaultCardType;
11
- IUserPreference.prototype.pinnedApps;
12
- IUserPreference.prototype.selectedLangGroup;
13
- IUserPreference.prototype.completedActivity;
14
- IUserPreference.prototype.completedTour;
15
- IUserPreference.prototype.profileSettings;
16
- }
17
- export function IProfile() { }
18
- if (false) {
19
- IProfile.prototype.showProfilePicture;
20
- IProfile.prototype.showUserInterest;
21
- IProfile.prototype.showKbFollowed;
22
- IProfile.prototype.showPlaylist;
23
- IProfile.prototype.showAuthoredByMe;
24
- IProfile.prototype.showReviewedByMe;
25
- IProfile.prototype.showBadgeDetails;
26
- IProfile.prototype.showBlogs;
27
- IProfile.prototype.showQnA;
28
- }
1
+ export function IUserPreference() { }
2
+ if (false) {
3
+ IUserPreference.prototype.selectedTheme;
4
+ IUserPreference.prototype.selectedFont;
5
+ IUserPreference.prototype.selectedLocale;
6
+ IUserPreference.prototype.isDarkMode;
7
+ IUserPreference.prototype.isIntranetAllowed;
8
+ IUserPreference.prototype.isRTL;
9
+ IUserPreference.prototype.colorPallet;
10
+ IUserPreference.prototype.defaultCardType;
11
+ IUserPreference.prototype.pinnedApps;
12
+ IUserPreference.prototype.selectedLangGroup;
13
+ IUserPreference.prototype.completedActivity;
14
+ IUserPreference.prototype.completedTour;
15
+ IUserPreference.prototype.profileSettings;
16
+ }
17
+ export function IProfile() { }
18
+ if (false) {
19
+ IProfile.prototype.showProfilePicture;
20
+ IProfile.prototype.showUserInterest;
21
+ IProfile.prototype.showKbFollowed;
22
+ IProfile.prototype.showPlaylist;
23
+ IProfile.prototype.showAuthoredByMe;
24
+ IProfile.prototype.showReviewedByMe;
25
+ IProfile.prototype.showBadgeDetails;
26
+ IProfile.prototype.showBlogs;
27
+ IProfile.prototype.showQnA;
28
+ }
29
29
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcmVmZXJlbmNlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN1bmJpcmQtY2IvdXRpbHMvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvdXNlci1wcmVmZXJlbmNlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFDQWNDOztJQWJDLHdDQUFxQjtJQUNyQix1Q0FBb0I7SUFDcEIseUNBQXNCO0lBQ3RCLHFDQUFtQjtJQUNuQiw0Q0FBMkI7SUFDM0IsZ0NBQWM7SUFDZCxzQ0FBcUI7SUFDckIsMENBQXVCO0lBQ3ZCLHFDQUFrQjtJQUNsQiw0Q0FBMEI7SUFDMUIsNENBQTJCO0lBQzNCLHdDQUF1QjtJQUN2QiwwQ0FBeUI7O0FBRzNCLDhCQWtCQzs7SUFqQkMsc0NBQTJCO0lBQzNCLG9DQUF5QjtJQUN6QixrQ0FBdUI7SUFDdkIsZ0NBQXFCO0lBQ3JCLG9DQUF5QjtJQUN6QixvQ0FBeUI7SUFDekIsb0NBQXlCO0lBQ3pCLDZCQUFrQjtJQUNsQiwyQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElVc2VyUHJlZmVyZW5jZSB7XHJcbiAgc2VsZWN0ZWRUaGVtZTogc3RyaW5nXHJcbiAgc2VsZWN0ZWRGb250OiBzdHJpbmdcclxuICBzZWxlY3RlZExvY2FsZTogc3RyaW5nXHJcbiAgaXNEYXJrTW9kZTogYm9vbGVhblxyXG4gIGlzSW50cmFuZXRBbGxvd2VkPzogYm9vbGVhblxyXG4gIGlzUlRMOiBib29sZWFuXHJcbiAgY29sb3JQYWxsZXQ6IHN0cmluZ1tdXHJcbiAgZGVmYXVsdENhcmRUeXBlOiBzdHJpbmdcclxuICBwaW5uZWRBcHBzOiBzdHJpbmdcclxuICBzZWxlY3RlZExhbmdHcm91cD86IHN0cmluZ1xyXG4gIGNvbXBsZXRlZEFjdGl2aXR5OiBzdHJpbmdbXVxyXG4gIGNvbXBsZXRlZFRvdXI/OiBib29sZWFuXHJcbiAgcHJvZmlsZVNldHRpbmdzOiBzdHJpbmdbXVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElQcm9maWxlIHtcclxuICBzaG93UHJvZmlsZVBpY3R1cmU6IGJvb2xlYW5cclxuICBzaG93VXNlckludGVyZXN0OiBib29sZWFuXHJcbiAgc2hvd0tiRm9sbG93ZWQ6IGJvb2xlYW5cclxuICBzaG93UGxheWxpc3Q6IGJvb2xlYW5cclxuICBzaG93QXV0aG9yZWRCeU1lOiBib29sZWFuXHJcbiAgc2hvd1Jldmlld2VkQnlNZTogYm9vbGVhblxyXG4gIHNob3dCYWRnZURldGFpbHM6IGJvb2xlYW5cclxuICBzaG93QmxvZ3M6IGJvb2xlYW5cclxuICBzaG93UW5BOiBib29sZWFuXHJcbiAgLy8gc2hvd0xlYXJuaW5nVGltZTogYm9vbGVhblxyXG4gIC8vIHNob3dMZWFybmluZ1BvaW50czogYm9vbGVhblxyXG4gIC8vIHNob3dMYXN0Vmlld2VkOiBib29sZWFuXHJcbiAgLy8gc2hvd0dvYWxzOiBib29sZWFuXHJcbiAgLy8gc2hvd1RvcGljc0ZvbGxvd2VkOiBib29sZWFuXHJcbiAgLy8gc2hvd0Fzc2Vzc21lbnREZXRhaWxzOiBib29sZWFuXHJcbiAgLy8gc2hvd0NlcnRpZmljYXRpb25EZXRhaWxzOiBib29sZWFuXHJcbiAgLy8gc2hvd1VzZXJTa2lsbHM6IGJvb2xlYW5cclxufVxyXG4iXX0=
@@ -1,109 +1,109 @@
1
- import * as tslib_1 from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import { HttpClient } from '@angular/common/http';
4
- import { ConfigurationsService } from './configurations.service';
5
- import { debounceTime, retry, catchError } from 'rxjs/operators';
6
- import { of } from 'rxjs';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common/http";
9
- import * as i2 from "./configurations.service";
10
- var endpoints = {
11
- userPref: '/apis/protected/v8/user/preference',
12
- };
13
- var UserPreferenceService = (function () {
14
- function UserPreferenceService(http, configurationSvc) {
15
- this.http = http;
16
- this.configurationSvc = configurationSvc;
17
- }
18
- UserPreferenceService.prototype.initialize = function () {
19
- var _this = this;
20
- this.configurationSvc.prefChangeNotifier
21
- .pipe(debounceTime(250))
22
- .subscribe((function (changedUserPref) {
23
- if (_this.configurationSvc.isAuthenticated) {
24
- _this.saveUserPreference(changedUserPref);
25
- }
26
- }));
27
- };
28
- UserPreferenceService.prototype.fetchUserPreference = function () {
29
- return tslib_1.__awaiter(this, void 0, void 0, function () {
30
- var pref;
31
- return tslib_1.__generator(this, function (_a) {
32
- switch (_a.label) {
33
- case 0: return [4, this.http.get(endpoints.userPref).toPromise()];
34
- case 1:
35
- pref = _a.sent();
36
- return [2, pref];
37
- }
38
- });
39
- });
40
- };
41
- UserPreferenceService.prototype.saveUserPreference = function (changedUserPref) {
42
- return tslib_1.__awaiter(this, void 0, void 0, function () {
43
- var newUserPref, oldUserPref_1, err_1;
44
- var _this = this;
45
- return tslib_1.__generator(this, function (_a) {
46
- switch (_a.label) {
47
- case 0:
48
- _a.trys.push([0, 2, , 3]);
49
- if (!changedUserPref) {
50
- return [2, false];
51
- }
52
- newUserPref = tslib_1.__assign({}, this.configurationSvc.userPreference, { pinnedApps: (changedUserPref && changedUserPref.pinnedApps) ||
53
- (this.configurationSvc.userPreference &&
54
- this.configurationSvc.userPreference.pinnedApps) ||
55
- '', isDarkMode: this.configurationSvc.isDarkMode, isRTL: this.configurationSvc.isRTL, selectedTheme: (this.configurationSvc.activeThemeObject &&
56
- this.configurationSvc.activeThemeObject.themeClass) ||
57
- '', selectedFont: (this.configurationSvc.activeFontObject &&
58
- this.configurationSvc.activeFontObject.fontClass) ||
59
- '', selectedLangGroup: (this.configurationSvc.userPreference &&
60
- this.configurationSvc.userPreference.selectedLangGroup) ||
61
- '', selectedLocale: (this.configurationSvc.userPreference &&
62
- this.configurationSvc.userPreference.selectedLocale) ||
63
- '', colorPallet: (this.configurationSvc.userPreference &&
64
- this.configurationSvc.userPreference.colorPallet) ||
65
- [], defaultCardType: (this.configurationSvc.userPreference &&
66
- this.configurationSvc.userPreference.defaultCardType) ||
67
- '', completedActivity: (this.configurationSvc.userPreference &&
68
- this.configurationSvc.userPreference.completedActivity) ||
69
- [] }, (changedUserPref || {}), { completedTour: this.configurationSvc.completedTour, profileSettings: (this.configurationSvc.userPreference &&
70
- this.configurationSvc.userPreference.profileSettings) ||
71
- this.configurationSvc.profileSettings });
72
- oldUserPref_1 = this.configurationSvc.userPreference;
73
- this.configurationSvc.userPreference = newUserPref;
74
- return [4, this.http
75
- .put(endpoints.userPref, newUserPref)
76
- .pipe(retry(3), catchError((function (err) {
77
- _this.configurationSvc.userPreference = oldUserPref_1;
78
- return of(err);
79
- })))
80
- .toPromise()];
81
- case 1:
82
- _a.sent();
83
- return [2, true];
84
- case 2:
85
- err_1 = _a.sent();
86
- return [2, false];
87
- case 3: return [2];
88
- }
89
- });
90
- });
91
- };
92
- UserPreferenceService.decorators = [
93
- { type: Injectable, args: [{
94
- providedIn: 'root',
95
- },] }
96
- ];
97
- UserPreferenceService.ctorParameters = function () { return [
98
- { type: HttpClient },
99
- { type: ConfigurationsService }
100
- ]; };
101
- /** @nocollapse */ UserPreferenceService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function UserPreferenceService_Factory() { return new UserPreferenceService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.ConfigurationsService)); }, token: UserPreferenceService, providedIn: "root" });
102
- return UserPreferenceService;
103
- }());
104
- export { UserPreferenceService };
105
- if (false) {
106
- UserPreferenceService.prototype.http;
107
- UserPreferenceService.prototype.configurationSvc;
108
- }
1
+ import * as tslib_1 from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { HttpClient } from '@angular/common/http';
4
+ import { ConfigurationsService } from './configurations.service';
5
+ import { debounceTime, retry, catchError } from 'rxjs/operators';
6
+ import { of } from 'rxjs';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/common/http";
9
+ import * as i2 from "./configurations.service";
10
+ var endpoints = {
11
+ userPref: '/apis/protected/v8/user/preference',
12
+ };
13
+ var UserPreferenceService = (function () {
14
+ function UserPreferenceService(http, configurationSvc) {
15
+ this.http = http;
16
+ this.configurationSvc = configurationSvc;
17
+ }
18
+ UserPreferenceService.prototype.initialize = function () {
19
+ var _this = this;
20
+ this.configurationSvc.prefChangeNotifier
21
+ .pipe(debounceTime(250))
22
+ .subscribe((function (changedUserPref) {
23
+ if (_this.configurationSvc.isAuthenticated) {
24
+ _this.saveUserPreference(changedUserPref);
25
+ }
26
+ }));
27
+ };
28
+ UserPreferenceService.prototype.fetchUserPreference = function () {
29
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
30
+ var pref;
31
+ return tslib_1.__generator(this, function (_a) {
32
+ switch (_a.label) {
33
+ case 0: return [4, this.http.get(endpoints.userPref).toPromise()];
34
+ case 1:
35
+ pref = _a.sent();
36
+ return [2, pref];
37
+ }
38
+ });
39
+ });
40
+ };
41
+ UserPreferenceService.prototype.saveUserPreference = function (changedUserPref) {
42
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
43
+ var newUserPref, oldUserPref_1, err_1;
44
+ var _this = this;
45
+ return tslib_1.__generator(this, function (_a) {
46
+ switch (_a.label) {
47
+ case 0:
48
+ _a.trys.push([0, 2, , 3]);
49
+ if (!changedUserPref) {
50
+ return [2, false];
51
+ }
52
+ newUserPref = tslib_1.__assign({}, this.configurationSvc.userPreference, { pinnedApps: (changedUserPref && changedUserPref.pinnedApps) ||
53
+ (this.configurationSvc.userPreference &&
54
+ this.configurationSvc.userPreference.pinnedApps) ||
55
+ '', isDarkMode: this.configurationSvc.isDarkMode, isRTL: this.configurationSvc.isRTL, selectedTheme: (this.configurationSvc.activeThemeObject &&
56
+ this.configurationSvc.activeThemeObject.themeClass) ||
57
+ '', selectedFont: (this.configurationSvc.activeFontObject &&
58
+ this.configurationSvc.activeFontObject.fontClass) ||
59
+ '', selectedLangGroup: (this.configurationSvc.userPreference &&
60
+ this.configurationSvc.userPreference.selectedLangGroup) ||
61
+ '', selectedLocale: (this.configurationSvc.userPreference &&
62
+ this.configurationSvc.userPreference.selectedLocale) ||
63
+ '', colorPallet: (this.configurationSvc.userPreference &&
64
+ this.configurationSvc.userPreference.colorPallet) ||
65
+ [], defaultCardType: (this.configurationSvc.userPreference &&
66
+ this.configurationSvc.userPreference.defaultCardType) ||
67
+ '', completedActivity: (this.configurationSvc.userPreference &&
68
+ this.configurationSvc.userPreference.completedActivity) ||
69
+ [] }, (changedUserPref || {}), { completedTour: this.configurationSvc.completedTour, profileSettings: (this.configurationSvc.userPreference &&
70
+ this.configurationSvc.userPreference.profileSettings) ||
71
+ this.configurationSvc.profileSettings });
72
+ oldUserPref_1 = this.configurationSvc.userPreference;
73
+ this.configurationSvc.userPreference = newUserPref;
74
+ return [4, this.http
75
+ .put(endpoints.userPref, newUserPref)
76
+ .pipe(retry(3), catchError((function (err) {
77
+ _this.configurationSvc.userPreference = oldUserPref_1;
78
+ return of(err);
79
+ })))
80
+ .toPromise()];
81
+ case 1:
82
+ _a.sent();
83
+ return [2, true];
84
+ case 2:
85
+ err_1 = _a.sent();
86
+ return [2, false];
87
+ case 3: return [2];
88
+ }
89
+ });
90
+ });
91
+ };
92
+ UserPreferenceService.decorators = [
93
+ { type: Injectable, args: [{
94
+ providedIn: 'root',
95
+ },] }
96
+ ];
97
+ UserPreferenceService.ctorParameters = function () { return [
98
+ { type: HttpClient },
99
+ { type: ConfigurationsService }
100
+ ]; };
101
+ /** @nocollapse */ UserPreferenceService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function UserPreferenceService_Factory() { return new UserPreferenceService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.ConfigurationsService)); }, token: UserPreferenceService, providedIn: "root" });
102
+ return UserPreferenceService;
103
+ }());
104
+ export { UserPreferenceService };
105
+ if (false) {
106
+ UserPreferenceService.prototype.http;
107
+ UserPreferenceService.prototype.configurationSvc;
108
+ }
109
109
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcmVmZXJlbmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi91dGlscy8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy91c2VyLXByZWZlcmVuY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDaEUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTs7OztJQUNuQixTQUFTLEdBQUc7SUFDaEIsUUFBUSxFQUFFLG9DQUFvQztDQUMvQztBQUNEO0lBTUUsK0JBQW9CLElBQWdCLEVBQVUsZ0JBQXVDO1FBQWpFLFNBQUksR0FBSixJQUFJLENBQVk7UUFBVSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXVCO0lBQUksQ0FBQztJQUUxRiwwQ0FBVSxHQUFWO1FBQUEsaUJBUUM7UUFQQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsa0JBQWtCO2FBQ3JDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDdkIsU0FBUyxFQUFDLFVBQUMsZUFBMEM7WUFDcEQsSUFBSSxLQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFFO2dCQUN6QyxLQUFJLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUE7YUFDekM7UUFDSCxDQUFDLEVBQUMsQ0FBQTtJQUNOLENBQUM7SUFFSyxtREFBbUIsR0FBekI7Ozs7OzRCQUNlLFdBQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQWtCLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxTQUFTLEVBQUUs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QUFBOzs7d0JBRVgsV0FBTyxLQUFLLEVBQUE7Ozs7O0tBRWY7O2dCQXhGRixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7Z0JBVlEsVUFBVTtnQkFFVixxQkFBcUI7OztnQ0FIOUI7Q0FrR0MsQUF6RkQsSUF5RkM7U0F0RlkscUJBQXFCOztJQUdwQixxQ0FBd0I7SUFBRSxpREFBK0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xyXG5pbXBvcnQgeyBJVXNlclByZWZlcmVuY2UgfSBmcm9tICcuL3VzZXItcHJlZmVyZW5jZS5tb2RlbCdcclxuaW1wb3J0IHsgQ29uZmlndXJhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9jb25maWd1cmF0aW9ucy5zZXJ2aWNlJ1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHJldHJ5LCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXHJcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcydcclxuY29uc3QgZW5kcG9pbnRzID0ge1xyXG4gIHVzZXJQcmVmOiAnL2FwaXMvcHJvdGVjdGVkL3Y4L3VzZXIvcHJlZmVyZW5jZScsXHJcbn1cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFVzZXJQcmVmZXJlbmNlU2VydmljZSB7XHJcbiAgLy8gZG8gY2hhbmdlcyBpbiB0aGUgYmFja2VuZCBhbmQgdXBkYXRlIHRoZSBzdG9yZVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgY29uZmlndXJhdGlvblN2YzogQ29uZmlndXJhdGlvbnNTZXJ2aWNlKSB7IH1cclxuXHJcbiAgaW5pdGlhbGl6ZSgpIHtcclxuICAgIHRoaXMuY29uZmlndXJhdGlvblN2Yy5wcmVmQ2hhbmdlTm90aWZpZXJcclxuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDI1MCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGNoYW5nZWRVc2VyUHJlZj86IFBhcnRpYWw8SVVzZXJQcmVmZXJlbmNlPikgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmNvbmZpZ3VyYXRpb25TdmMuaXNBdXRoZW50aWNhdGVkKSB7XHJcbiAgICAgICAgICB0aGlzLnNhdmVVc2VyUHJlZmVyZW5jZShjaGFuZ2VkVXNlclByZWYpXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgZmV0Y2hVc2VyUHJlZmVyZW5jZSgpOiBQcm9taXNlPElVc2VyUHJlZmVyZW5jZT4ge1xyXG4gICAgY29uc3QgcHJlZiA9IGF3YWl0IHRoaXMuaHR0cC5nZXQ8SVVzZXJQcmVmZXJlbmNlPihlbmRwb2ludHMudXNlclByZWYpLnRvUHJvbWlzZSgpXHJcbiAgICByZXR1cm4gcHJlZlxyXG4gIH1cclxuXHJcbiAgYXN5bmMgc2F2ZVVzZXJQcmVmZXJlbmNlKGNoYW5nZWRVc2VyUHJlZj86IFBhcnRpYWw8SVVzZXJQcmVmZXJlbmNlPik6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKCFjaGFuZ2VkVXNlclByZWYpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2VcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBuZXdVc2VyUHJlZjogSVVzZXJQcmVmZXJlbmNlID0ge1xyXG4gICAgICAgIC4uLnRoaXMuY29uZmlndXJhdGlvblN2Yy51c2VyUHJlZmVyZW5jZSxcclxuICAgICAgICBwaW5uZWRBcHBzOlxyXG4gICAgICAgICAgKGNoYW5nZWRVc2VyUHJlZiAmJiBjaGFuZ2VkVXNlclByZWYucGlubmVkQXBwcykgfHxcclxuICAgICAgICAgICh0aGlzLmNvbmZpZ3VyYXRpb25TdmMudXNlclByZWZlcmVuY2UgJiZcclxuICAgICAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uU3ZjLnVzZXJQcmVmZXJlbmNlLnBpbm5lZEFwcHMpIHx8XHJcbiAgICAgICAgICAnJyxcclxuICAgICAgICBpc0RhcmtNb2RlOiB0aGlzLmNvbmZpZ3VyYXRpb25TdmMuaXNEYXJrTW9kZSxcclxuICAgICAgICBpc1JUTDogdGhpcy5jb25maWd1cmF0aW9uU3ZjLmlzUlRMLFxyXG4gICAgICAgIHNlbGVjdGVkVGhlbWU6XHJcbiAgICAgICAgICAodGhpcy5jb25maWd1cmF0aW9uU3ZjLmFjdGl2ZVRoZW1lT2JqZWN0ICYmXHJcbiAgICAgICAgICAgIHRoaXMuY29uZmlndXJhdGlvblN2Yy5hY3RpdmVUaGVtZU9iamVjdC50aGVtZUNsYXNzKSB8fFxyXG4gICAgICAgICAgJycsXHJcbiAgICAgICAgc2VsZWN0ZWRGb250OlxyXG4gICAgICAgICAgKHRoaXMuY29uZmlndXJhdGlvblN2Yy5hY3RpdmVGb250T2JqZWN0ICYmXHJcbiAgICAgICAgICAgIHRoaXMuY29uZmlndXJhdGlvblN2Yy5hY3RpdmVGb250T2JqZWN0LmZvbnRDbGFzcykgfHxcclxuICAgICAgICAgICcnLFxyXG4gICAgICAgIHNlbGVjdGVkTGFuZ0dyb3VwOlxyXG4gICAgICAgICAgKHRoaXMuY29uZmlndXJhdGlvblN2Yy51c2VyUHJlZmVyZW5jZSAmJlxyXG4gICAgICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb25TdmMudXNlclByZWZlcmVuY2Uuc2VsZWN0ZWRMYW5nR3JvdXApIHx8XHJcbiAgICAgICAgICAnJyxcclxuICAgICAgICBzZWxlY3RlZExvY2FsZTpcclxuICAgICAgICAgICh0aGlzLmNvbmZpZ3VyYXRpb25TdmMudXNlclByZWZlcmVuY2UgJiZcclxuICAgICAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uU3ZjLnVzZXJQcmVmZXJlbmNlLnNlbGVjdGVkTG9jYWxlKSB8fFxyXG4gICAgICAgICAgJycsXHJcbiAgICAgICAgY29sb3JQYWxsZXQ6XHJcbiAgICAgICAgICAodGhpcy5jb25maWd1cmF0aW9uU3ZjLnVzZXJQcmVmZXJlbmNlICYmXHJcbiAgICAgICAgICAgIHRoaXMuY29uZmlndXJhdGlvblN2Yy51c2VyUHJlZmVyZW5jZS5jb2xvclBhbGxldCkgfHxcclxuICAgICAgICAgIFtdLFxyXG4gICAgICAgIGRlZmF1bHRDYXJkVHlwZTpcclxuICAgICAgICAgICh0aGlzLmNvbmZpZ3VyYXRpb25TdmMudXNlclByZWZlcmVuY2UgJiZcclxuICAgICAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uU3ZjLnVzZXJQcmVmZXJlbmNlLmRlZmF1bHRDYXJkVHlwZSkgfHxcclxuICAgICAgICAgICcnLFxyXG4gICAgICAgIGNvbXBsZXRlZEFjdGl2aXR5OlxyXG4gICAgICAgICAgKHRoaXMuY29uZmlndXJhdGlvblN2Yy51c2VyUHJlZmVyZW5jZSAmJlxyXG4gICAgICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb25TdmMudXNlclByZWZlcmVuY2UuY29tcGxldGVkQWN0aXZpdHkpIHx8XHJcbiAgICAgICAgICBbXSxcclxuICAgICAgICAuLi4oY2hhbmdlZFVzZXJQcmVmIHx8IHt9KSxcclxuICAgICAgICBjb21wbGV0ZWRUb3VyOiB0aGlzLmNvbmZpZ3VyYXRpb25TdmMuY29tcGxldGVkVG91cixcclxuICAgICAgICBwcm9maWxlU2V0dGluZ3M6XHJcbiAgICAgICAgICAodGhpcy5jb25maWd1cmF0aW9uU3ZjLnVzZXJQcmVmZXJlbmNlICYmXHJcbiAgICAgICAgICAgIHRoaXMuY29uZmlndXJhdGlvblN2Yy51c2VyUHJlZmVyZW5jZS5wcm9maWxlU2V0dGluZ3MpIHx8XHJcbiAgICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb25TdmMucHJvZmlsZVNldHRpbmdzLFxyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IG9sZFVzZXJQcmVmOiBJVXNlclByZWZlcmVuY2UgfCBudWxsID0gdGhpcy5jb25maWd1cmF0aW9uU3ZjLnVzZXJQcmVmZXJlbmNlXHJcbiAgICAgIHRoaXMuY29uZmlndXJhdGlvblN2Yy51c2VyUHJlZmVyZW5jZSA9IG5ld1VzZXJQcmVmXHJcbiAgICAgIGF3YWl0IHRoaXMuaHR0cFxyXG4gICAgICAgIC5wdXQoZW5kcG9pbnRzLnVzZXJQcmVmLCBuZXdVc2VyUHJlZilcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIHJldHJ5KDMpLFxyXG4gICAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb25TdmMudXNlclByZWZlcmVuY2UgPSBvbGRVc2VyUHJlZlxyXG4gICAgICAgICAgICByZXR1cm4gb2YoZXJyKVxyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgKVxyXG4gICAgICAgIC50b1Byb21pc2UoKVxyXG4gICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=