@sunbird-cb/utils 1.0.2 → 1.0.6

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 +5253 -4901
  2. package/bundles/sunbird-cb-utils.umd.js.map +1 -1
  3. package/bundles/sunbird-cb-utils.umd.min.js +15 -1
  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 +55 -55
  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 +225 -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 +508 -490
  65. package/esm2015/lib/services/configurations.service.js +103 -101
  66. package/esm2015/lib/services/content-strip-multiple.model.js +74 -74
  67. package/esm2015/lib/services/event.model.js +223 -154
  68. package/esm2015/lib/services/event.service.js +106 -39
  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 +414 -278
  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 +145 -100
  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 +61 -61
  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 +293 -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 +508 -490
  143. package/esm5/lib/services/configurations.service.js +105 -103
  144. package/esm5/lib/services/content-strip-multiple.model.js +74 -74
  145. package/esm5/lib/services/event.model.js +223 -154
  146. package/esm5/lib/services/event.service.js +108 -41
  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 +446 -296
  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 +178 -128
  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 +4834 -4502
  162. package/fesm2015/sunbird-cb-utils.js.map +1 -1
  163. package/fesm5/sunbird-cb-utils.js +5250 -4899
  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 +27 -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 +487 -473
  226. package/lib/services/configurations.service.d.ts +49 -48
  227. package/lib/services/content-strip-multiple.model.d.ts +79 -79
  228. package/lib/services/event.model.d.ts +187 -129
  229. package/lib/services/event.service.d.ts +14 -8
  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 +40 -33
  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 -23
  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,214 +1,214 @@
1
- import * as tslib_1 from "tslib";
2
- import { HttpClient } from '@angular/common/http';
3
- import { Injectable } from '@angular/core';
4
- import { of } from 'rxjs';
5
- import { catchError, retry } from 'rxjs/operators';
6
- import { ConfigurationsService } from './configurations.service';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common/http";
9
- import * as i2 from "./configurations.service";
10
- var PROTECTED_SLAG_V8 = '/apis/protected/v8';
11
- var ɵ0 = function (type, id) {
12
- return PROTECTED_SLAG_V8 + "/content/collection/" + type + "/" + id;
13
- }, ɵ1 = function (contentId) { return PROTECTED_SLAG_V8 + "/user/progress/" + contentId; };
14
- var API_END_POINTS = {
15
- CONTENT: PROTECTED_SLAG_V8 + "/content",
16
- AUTHORING_CONTENT: "/apis/authApi/hierarchy",
17
- CONTENT_LIKES: PROTECTED_SLAG_V8 + "/content/likeCount",
18
- SET_S3_COOKIE: PROTECTED_SLAG_V8 + "/content/setCookie",
19
- SET_S3_IMAGE_COOKIE: PROTECTED_SLAG_V8 + "/content/setImageCookie",
20
- FETCH_MANIFEST: PROTECTED_SLAG_V8 + "/content/getWebModuleManifest",
21
- FETCH_WEB_MODULE_FILES: PROTECTED_SLAG_V8 + "/content/getWebModuleFiles",
22
- MULTIPLE_CONTENT: PROTECTED_SLAG_V8 + "/content/multiple",
23
- CONTENT_SEARCH_V5: PROTECTED_SLAG_V8 + "/content/searchV5",
24
- CONTENT_SEARCH_V6: PROTECTED_SLAG_V8 + "/content/searchV6",
25
- CONTENT_SEARCH_REGION_RECOMMENDATION: PROTECTED_SLAG_V8 + "/content/searchRegionRecommendation",
26
- CONTENT_HISTORY: PROTECTED_SLAG_V8 + "/user/history",
27
- USER_CONTINUE_LEARNING: PROTECTED_SLAG_V8 + "/user/history/continue",
28
- CONTENT_RATING: PROTECTED_SLAG_V8 + "/user/rating",
29
- CONTENT_RATING_V2: PROTECTED_SLAG_V8 + "/user/rating/content/average-ratingInfo",
30
- COLLECTION_HIERARCHY: (ɵ0),
31
- REGISTRATION_STATUS: PROTECTED_SLAG_V8 + "/admin/userRegistration/checkUserRegistrationContent",
32
- MARK_AS_COMPLETE_META: (ɵ1),
33
- };
34
- var WidgetContentService = (function () {
35
- function WidgetContentService(http, configSvc) {
36
- this.http = http;
37
- this.configSvc = configSvc;
38
- }
39
- WidgetContentService.prototype.fetchMarkAsCompleteMeta = function (identifier) {
40
- var url = API_END_POINTS.MARK_AS_COMPLETE_META(identifier);
41
- return this.http.get(url).toPromise();
42
- };
43
- WidgetContentService.prototype.fetchContent = function (contentId, hierarchyType, additionalFields) {
44
- if (hierarchyType === void 0) { hierarchyType = 'detail'; }
45
- if (additionalFields === void 0) { additionalFields = []; }
46
- var url = API_END_POINTS.CONTENT + "/" + contentId + "?hierarchyType=" + hierarchyType;
47
- return this.http
48
- .post(url, { additionalFields: additionalFields })
49
- .pipe(retry(1));
50
- };
51
- WidgetContentService.prototype.fetchAuthoringContent = function (contentId) {
52
- var url = API_END_POINTS.AUTHORING_CONTENT + "/" + contentId;
53
- return this.http.get(url).pipe(retry(1));
54
- };
55
- WidgetContentService.prototype.fetchMultipleContent = function (ids) {
56
- return this.http.get(API_END_POINTS.MULTIPLE_CONTENT + "/" + ids.join(','));
57
- };
58
- WidgetContentService.prototype.fetchCollectionHierarchy = function (type, id, pageNumber, pageSize) {
59
- if (pageNumber === void 0) { pageNumber = 0; }
60
- if (pageSize === void 0) { pageSize = 1; }
61
- return this.http.get(API_END_POINTS.COLLECTION_HIERARCHY(type, id) + "?pageNumber=" + pageNumber + "&pageSize=" + pageSize);
62
- };
63
- WidgetContentService.prototype.fetchContentLikes = function (contentIds) {
64
- return this.http
65
- .post(API_END_POINTS.CONTENT_LIKES, contentIds)
66
- .toPromise();
67
- };
68
- WidgetContentService.prototype.fetchContentRatings = function (contentIds) {
69
- return this.http
70
- .post(API_END_POINTS.CONTENT_RATING + "/rating", contentIds)
71
- .toPromise();
72
- };
73
- WidgetContentService.prototype.fetchContentRatingsV2 = function (contentId) {
74
- return this.http
75
- .get(API_END_POINTS.CONTENT_RATING_V2 + "/" + contentId);
76
- };
77
- WidgetContentService.prototype.fetchContentHistory = function (contentId) {
78
- return this.http.get(API_END_POINTS.CONTENT_HISTORY + "/" + contentId);
79
- };
80
- WidgetContentService.prototype.continueLearning = function (id, collectionId, collectionType) {
81
- return tslib_1.__awaiter(this, void 0, void 0, function () {
82
- var _this = this;
83
- return tslib_1.__generator(this, function (_a) {
84
- return [2, new Promise((function (resolve) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
85
- var reqBody, reqBody;
86
- return tslib_1.__generator(this, function (_a) {
87
- switch (_a.label) {
88
- case 0:
89
- if (!(collectionType &&
90
- collectionType.toLowerCase() === 'playlist')) return [3, 2];
91
- reqBody = {
92
- contextPathId: collectionId ? collectionId : id,
93
- resourceId: id,
94
- data: JSON.stringify({
95
- timestamp: Date.now(),
96
- contextFullPath: [collectionId, id],
97
- }),
98
- dateAccessed: Date.now(),
99
- contextType: 'playlist',
100
- };
101
- return [4, this.saveContinueLearning(reqBody).toPromise().catch().finally((function () {
102
- resolve(true);
103
- }))];
104
- case 1:
105
- _a.sent();
106
- return [3, 4];
107
- case 2:
108
- reqBody = {
109
- contextPathId: collectionId ? collectionId : id,
110
- resourceId: id,
111
- data: JSON.stringify({ timestamp: Date.now() }),
112
- dateAccessed: Date.now(),
113
- };
114
- return [4, this.saveContinueLearning(reqBody).toPromise().catch().finally((function () {
115
- resolve(true);
116
- }))];
117
- case 3:
118
- _a.sent();
119
- _a.label = 4;
120
- case 4: return [2];
121
- }
122
- });
123
- }); }))];
124
- });
125
- });
126
- };
127
- WidgetContentService.prototype.saveContinueLearning = function (content) {
128
- var url = API_END_POINTS.USER_CONTINUE_LEARNING;
129
- return this.http.post(url, content);
130
- };
131
- WidgetContentService.prototype.setS3Cookie = function (contentId) {
132
- return this.http
133
- .post(API_END_POINTS.SET_S3_COOKIE, { contentId: contentId })
134
- .pipe(catchError((function (_err) { return of(true); })));
135
- };
136
- WidgetContentService.prototype.setS3ImageCookie = function () {
137
- return this.http.post(API_END_POINTS.SET_S3_IMAGE_COOKIE, {}).pipe(catchError((function (_err) { return of(true); })));
138
- };
139
- WidgetContentService.prototype.fetchManifest = function (url) {
140
- return this.http.post(API_END_POINTS.FETCH_MANIFEST, { url: url });
141
- };
142
- WidgetContentService.prototype.fetchWebModuleContent = function (url) {
143
- return this.http.get(API_END_POINTS.FETCH_WEB_MODULE_FILES + "?url=" + encodeURIComponent(url));
144
- };
145
- WidgetContentService.prototype.search = function (req) {
146
- req.query = req.query || '';
147
- return this.http.post(API_END_POINTS.CONTENT_SEARCH_V5, {
148
- request: req,
149
- });
150
- };
151
- WidgetContentService.prototype.searchRegionRecommendation = function (req) {
152
- req.query = req.query || '';
153
- req.preLabelValue =
154
- (req.preLabelValue || '') +
155
- ((this.configSvc.userProfile && this.configSvc.userProfile.country) || '');
156
- req.filters = tslib_1.__assign({}, req.filters, { labels: [req.preLabelValue || ''] });
157
- return this.http.post(API_END_POINTS.CONTENT_SEARCH_REGION_RECOMMENDATION, { request: req });
158
- };
159
- WidgetContentService.prototype.searchV6 = function (req) {
160
- req.query = req.query || '';
161
- return this.http.post(API_END_POINTS.CONTENT_SEARCH_V6, req);
162
- };
163
- WidgetContentService.prototype.fetchContentRating = function (contentId) {
164
- return this.http.get(API_END_POINTS.CONTENT_RATING + "/" + contentId);
165
- };
166
- WidgetContentService.prototype.deleteContentRating = function (contentId) {
167
- return this.http.delete(API_END_POINTS.CONTENT_RATING + "/" + contentId);
168
- };
169
- WidgetContentService.prototype.addContentRating = function (contentId, data) {
170
- return this.http.post(API_END_POINTS.CONTENT_RATING + "/" + contentId, data);
171
- };
172
- WidgetContentService.prototype.getFirstChildInHierarchy = function (content) {
173
- if (!(content.children || []).length) {
174
- return content;
175
- }
176
- if (content.contentType === 'Learning Path' &&
177
- !(content.artifactUrl && content.artifactUrl.length)) {
178
- var child = content.children[0];
179
- return this.getFirstChildInHierarchy(child);
180
- }
181
- if (content.contentType === 'Resource' ||
182
- content.contentType === 'Knowledge Artifact' ||
183
- content.contentType === 'Learning Path') {
184
- return content;
185
- }
186
- var firstChild = content.children[0];
187
- var resultContent = this.getFirstChildInHierarchy(firstChild);
188
- return resultContent;
189
- };
190
- WidgetContentService.prototype.getRegistrationStatus = function (source) {
191
- return this.http.get(API_END_POINTS.REGISTRATION_STATUS + "/" + source).toPromise();
192
- };
193
- WidgetContentService.prototype.fetchConfig = function (url) {
194
- return this.http.get(url);
195
- };
196
- WidgetContentService.decorators = [
197
- { type: Injectable, args: [{
198
- providedIn: 'root',
199
- },] }
200
- ];
201
- WidgetContentService.ctorParameters = function () { return [
202
- { type: HttpClient },
203
- { type: ConfigurationsService }
204
- ]; };
205
- /** @nocollapse */ WidgetContentService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function WidgetContentService_Factory() { return new WidgetContentService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.ConfigurationsService)); }, token: WidgetContentService, providedIn: "root" });
206
- return WidgetContentService;
207
- }());
208
- export { WidgetContentService };
209
- if (false) {
210
- WidgetContentService.prototype.http;
211
- WidgetContentService.prototype.configSvc;
212
- }
213
- export { ɵ0, ɵ1 };
1
+ import * as tslib_1 from "tslib";
2
+ import { HttpClient } from '@angular/common/http';
3
+ import { Injectable } from '@angular/core';
4
+ import { of } from 'rxjs';
5
+ import { catchError, retry } from 'rxjs/operators';
6
+ import { ConfigurationsService } from './configurations.service';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/common/http";
9
+ import * as i2 from "./configurations.service";
10
+ var PROTECTED_SLAG_V8 = '/apis/protected/v8';
11
+ var ɵ0 = function (type, id) {
12
+ return PROTECTED_SLAG_V8 + "/content/collection/" + type + "/" + id;
13
+ }, ɵ1 = function (contentId) { return PROTECTED_SLAG_V8 + "/user/progress/" + contentId; };
14
+ var API_END_POINTS = {
15
+ CONTENT: PROTECTED_SLAG_V8 + "/content",
16
+ AUTHORING_CONTENT: "/apis/authApi/hierarchy",
17
+ CONTENT_LIKES: PROTECTED_SLAG_V8 + "/content/likeCount",
18
+ SET_S3_COOKIE: PROTECTED_SLAG_V8 + "/content/setCookie",
19
+ SET_S3_IMAGE_COOKIE: PROTECTED_SLAG_V8 + "/content/setImageCookie",
20
+ FETCH_MANIFEST: PROTECTED_SLAG_V8 + "/content/getWebModuleManifest",
21
+ FETCH_WEB_MODULE_FILES: PROTECTED_SLAG_V8 + "/content/getWebModuleFiles",
22
+ MULTIPLE_CONTENT: PROTECTED_SLAG_V8 + "/content/multiple",
23
+ CONTENT_SEARCH_V5: PROTECTED_SLAG_V8 + "/content/searchV5",
24
+ CONTENT_SEARCH_V6: PROTECTED_SLAG_V8 + "/content/searchV6",
25
+ CONTENT_SEARCH_REGION_RECOMMENDATION: PROTECTED_SLAG_V8 + "/content/searchRegionRecommendation",
26
+ CONTENT_HISTORY: PROTECTED_SLAG_V8 + "/user/history",
27
+ USER_CONTINUE_LEARNING: PROTECTED_SLAG_V8 + "/user/history/continue",
28
+ CONTENT_RATING: PROTECTED_SLAG_V8 + "/user/rating",
29
+ CONTENT_RATING_V2: PROTECTED_SLAG_V8 + "/user/rating/content/average-ratingInfo",
30
+ COLLECTION_HIERARCHY: (ɵ0),
31
+ REGISTRATION_STATUS: PROTECTED_SLAG_V8 + "/admin/userRegistration/checkUserRegistrationContent",
32
+ MARK_AS_COMPLETE_META: (ɵ1),
33
+ };
34
+ var WidgetContentService = (function () {
35
+ function WidgetContentService(http, configSvc) {
36
+ this.http = http;
37
+ this.configSvc = configSvc;
38
+ }
39
+ WidgetContentService.prototype.fetchMarkAsCompleteMeta = function (identifier) {
40
+ var url = API_END_POINTS.MARK_AS_COMPLETE_META(identifier);
41
+ return this.http.get(url).toPromise();
42
+ };
43
+ WidgetContentService.prototype.fetchContent = function (contentId, hierarchyType, additionalFields) {
44
+ if (hierarchyType === void 0) { hierarchyType = 'detail'; }
45
+ if (additionalFields === void 0) { additionalFields = []; }
46
+ var url = API_END_POINTS.CONTENT + "/" + contentId + "?hierarchyType=" + hierarchyType;
47
+ return this.http
48
+ .post(url, { additionalFields: additionalFields })
49
+ .pipe(retry(1));
50
+ };
51
+ WidgetContentService.prototype.fetchAuthoringContent = function (contentId) {
52
+ var url = API_END_POINTS.AUTHORING_CONTENT + "/" + contentId;
53
+ return this.http.get(url).pipe(retry(1));
54
+ };
55
+ WidgetContentService.prototype.fetchMultipleContent = function (ids) {
56
+ return this.http.get(API_END_POINTS.MULTIPLE_CONTENT + "/" + ids.join(','));
57
+ };
58
+ WidgetContentService.prototype.fetchCollectionHierarchy = function (type, id, pageNumber, pageSize) {
59
+ if (pageNumber === void 0) { pageNumber = 0; }
60
+ if (pageSize === void 0) { pageSize = 1; }
61
+ return this.http.get(API_END_POINTS.COLLECTION_HIERARCHY(type, id) + "?pageNumber=" + pageNumber + "&pageSize=" + pageSize);
62
+ };
63
+ WidgetContentService.prototype.fetchContentLikes = function (contentIds) {
64
+ return this.http
65
+ .post(API_END_POINTS.CONTENT_LIKES, contentIds)
66
+ .toPromise();
67
+ };
68
+ WidgetContentService.prototype.fetchContentRatings = function (contentIds) {
69
+ return this.http
70
+ .post(API_END_POINTS.CONTENT_RATING + "/rating", contentIds)
71
+ .toPromise();
72
+ };
73
+ WidgetContentService.prototype.fetchContentRatingsV2 = function (contentId) {
74
+ return this.http
75
+ .get(API_END_POINTS.CONTENT_RATING_V2 + "/" + contentId);
76
+ };
77
+ WidgetContentService.prototype.fetchContentHistory = function (contentId) {
78
+ return this.http.get(API_END_POINTS.CONTENT_HISTORY + "/" + contentId);
79
+ };
80
+ WidgetContentService.prototype.continueLearning = function (id, collectionId, collectionType) {
81
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
82
+ var _this = this;
83
+ return tslib_1.__generator(this, function (_a) {
84
+ return [2, new Promise((function (resolve) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
85
+ var reqBody, reqBody;
86
+ return tslib_1.__generator(this, function (_a) {
87
+ switch (_a.label) {
88
+ case 0:
89
+ if (!(collectionType &&
90
+ collectionType.toLowerCase() === 'playlist')) return [3, 2];
91
+ reqBody = {
92
+ contextPathId: collectionId ? collectionId : id,
93
+ resourceId: id,
94
+ data: JSON.stringify({
95
+ timestamp: Date.now(),
96
+ contextFullPath: [collectionId, id],
97
+ }),
98
+ dateAccessed: Date.now(),
99
+ contextType: 'playlist',
100
+ };
101
+ return [4, this.saveContinueLearning(reqBody).toPromise().catch().finally((function () {
102
+ resolve(true);
103
+ }))];
104
+ case 1:
105
+ _a.sent();
106
+ return [3, 4];
107
+ case 2:
108
+ reqBody = {
109
+ contextPathId: collectionId ? collectionId : id,
110
+ resourceId: id,
111
+ data: JSON.stringify({ timestamp: Date.now() }),
112
+ dateAccessed: Date.now(),
113
+ };
114
+ return [4, this.saveContinueLearning(reqBody).toPromise().catch().finally((function () {
115
+ resolve(true);
116
+ }))];
117
+ case 3:
118
+ _a.sent();
119
+ _a.label = 4;
120
+ case 4: return [2];
121
+ }
122
+ });
123
+ }); }))];
124
+ });
125
+ });
126
+ };
127
+ WidgetContentService.prototype.saveContinueLearning = function (content) {
128
+ var url = API_END_POINTS.USER_CONTINUE_LEARNING;
129
+ return this.http.post(url, content);
130
+ };
131
+ WidgetContentService.prototype.setS3Cookie = function (contentId) {
132
+ return this.http
133
+ .post(API_END_POINTS.SET_S3_COOKIE, { contentId: contentId })
134
+ .pipe(catchError((function (_err) { return of(true); })));
135
+ };
136
+ WidgetContentService.prototype.setS3ImageCookie = function () {
137
+ return this.http.post(API_END_POINTS.SET_S3_IMAGE_COOKIE, {}).pipe(catchError((function (_err) { return of(true); })));
138
+ };
139
+ WidgetContentService.prototype.fetchManifest = function (url) {
140
+ return this.http.post(API_END_POINTS.FETCH_MANIFEST, { url: url });
141
+ };
142
+ WidgetContentService.prototype.fetchWebModuleContent = function (url) {
143
+ return this.http.get(API_END_POINTS.FETCH_WEB_MODULE_FILES + "?url=" + encodeURIComponent(url));
144
+ };
145
+ WidgetContentService.prototype.search = function (req) {
146
+ req.query = req.query || '';
147
+ return this.http.post(API_END_POINTS.CONTENT_SEARCH_V5, {
148
+ request: req,
149
+ });
150
+ };
151
+ WidgetContentService.prototype.searchRegionRecommendation = function (req) {
152
+ req.query = req.query || '';
153
+ req.preLabelValue =
154
+ (req.preLabelValue || '') +
155
+ ((this.configSvc.userProfile && this.configSvc.userProfile.country) || '');
156
+ req.filters = tslib_1.__assign({}, req.filters, { labels: [req.preLabelValue || ''] });
157
+ return this.http.post(API_END_POINTS.CONTENT_SEARCH_REGION_RECOMMENDATION, { request: req });
158
+ };
159
+ WidgetContentService.prototype.searchV6 = function (req) {
160
+ req.query = req.query || '';
161
+ return this.http.post(API_END_POINTS.CONTENT_SEARCH_V6, req);
162
+ };
163
+ WidgetContentService.prototype.fetchContentRating = function (contentId) {
164
+ return this.http.get(API_END_POINTS.CONTENT_RATING + "/" + contentId);
165
+ };
166
+ WidgetContentService.prototype.deleteContentRating = function (contentId) {
167
+ return this.http.delete(API_END_POINTS.CONTENT_RATING + "/" + contentId);
168
+ };
169
+ WidgetContentService.prototype.addContentRating = function (contentId, data) {
170
+ return this.http.post(API_END_POINTS.CONTENT_RATING + "/" + contentId, data);
171
+ };
172
+ WidgetContentService.prototype.getFirstChildInHierarchy = function (content) {
173
+ if (!(content.children || []).length) {
174
+ return content;
175
+ }
176
+ if (content.contentType === 'Learning Path' &&
177
+ !(content.artifactUrl && content.artifactUrl.length)) {
178
+ var child = content.children[0];
179
+ return this.getFirstChildInHierarchy(child);
180
+ }
181
+ if (content.contentType === 'Resource' ||
182
+ content.contentType === 'Knowledge Artifact' ||
183
+ content.contentType === 'Learning Path') {
184
+ return content;
185
+ }
186
+ var firstChild = content.children[0];
187
+ var resultContent = this.getFirstChildInHierarchy(firstChild);
188
+ return resultContent;
189
+ };
190
+ WidgetContentService.prototype.getRegistrationStatus = function (source) {
191
+ return this.http.get(API_END_POINTS.REGISTRATION_STATUS + "/" + source).toPromise();
192
+ };
193
+ WidgetContentService.prototype.fetchConfig = function (url) {
194
+ return this.http.get(url);
195
+ };
196
+ WidgetContentService.decorators = [
197
+ { type: Injectable, args: [{
198
+ providedIn: 'root',
199
+ },] }
200
+ ];
201
+ WidgetContentService.ctorParameters = function () { return [
202
+ { type: HttpClient },
203
+ { type: ConfigurationsService }
204
+ ]; };
205
+ /** @nocollapse */ WidgetContentService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function WidgetContentService_Factory() { return new WidgetContentService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.ConfigurationsService)); }, token: WidgetContentService, providedIn: "root" });
206
+ return WidgetContentService;
207
+ }());
208
+ export { WidgetContentService };
209
+ if (false) {
210
+ WidgetContentService.prototype.http;
211
+ WidgetContentService.prototype.configSvc;
212
+ }
213
+ export { ɵ0, ɵ1 };
214
214
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWNvbnRlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzdW5iaXJkLWNiL3V0aWxzLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL3dpZGdldC1jb250ZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUVsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTs7OztJQU0xRCxpQkFBaUIsR0FBRyxvQkFBb0I7U0FrQnRCLFVBQUMsSUFBWSxFQUFFLEVBQVU7SUFDN0MsT0FBRyxpQkFBaUIsNEJBQXVCLElBQUksU0FBSSxFQUFJO0FBQXZELENBQXVELE9BRWxDLFVBQUMsU0FBaUIsSUFBSyxPQUFHLGlCQUFpQix1QkFBa0IsU0FBVyxFQUFqRCxDQUFpRDtJQW5CM0YsY0FBYyxHQUFHO0lBQ3JCLE9BQU8sRUFBSyxpQkFBaUIsYUFBVTtJQUN2QyxpQkFBaUIsRUFBRSx5QkFBeUI7SUFDNUMsYUFBYSxFQUFLLGlCQUFpQix1QkFBb0I7SUFDdkQsYUFBYSxFQUFLLGlCQUFpQix1QkFBb0I7SUFDdkQsbUJBQW1CLEVBQUssaUJBQWlCLDRCQUF5QjtJQUNsRSxjQUFjLEVBQUssaUJBQWlCLGtDQUErQjtJQUNuRSxzQkFBc0IsRUFBSyxpQkFBaUIsK0JBQTRCO0lBQ3hFLGdCQUFnQixFQUFLLGlCQUFpQixzQkFBbUI7SUFDekQsaUJBQWlCLEVBQUssaUJBQWlCLHNCQUFtQjtJQUMxRCxpQkFBaUIsRUFBSyxpQkFBaUIsc0JBQW1CO0lBQzFELG9DQUFvQyxFQUFLLGlCQUFpQix3Q0FB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QVUsQ0FBQztRQUMvRCxPQUFPLGFBQWEsQ0FBQTtJQUN0QixDQUFDO0lBRUQsb0RBQXFCLEdBQXJCLFVBQXNCLE1BQWM7UUFDbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBUyxjQUFjLENBQUMsbUJBQW1CLFNBQUksTUFBUSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUE7SUFDMUYsQ0FBQztJQUVELDBDQUFXLEdBQVgsVUFBWSxHQUFXO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQU0sR0FBRyxDQUFDLENBQUE7SUFDaEMsQ0FBQzs7Z0JBekxGLFVBQVUsU0FBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OztnQkFyQ1EsVUFBVTtnQkFLVixxQkFBcUI7OzsrQkFMOUI7Q0E2TkMsQUExTEQsSUEwTEM7U0F2TFksb0JBQW9COztJQUU3QixvQ0FBd0I7SUFDeEIseUNBQXdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJ1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCByZXRyeSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xyXG5pbXBvcnQgeyBJQ29udGVudFJhdGluZyB9IGZyb20gJy4uL21vZGVscy9jb250ZW50UmF0aW5nLm1vZGVsJ1xyXG5pbXBvcnQgeyBDb25maWd1cmF0aW9uc1NlcnZpY2UgfSBmcm9tICcuL2NvbmZpZ3VyYXRpb25zLnNlcnZpY2UnXHJcbmltcG9ydCB7IE5zQ29udGVudFN0cmlwTXVsdGlwbGUgfSBmcm9tICcuL2NvbnRlbnQtc3RyaXAtbXVsdGlwbGUubW9kZWwnXHJcbmltcG9ydCB7IE5zQ29udGVudCB9IGZyb20gJy4vd2lkZ2V0LWNvbnRlbnQubW9kZWwnXHJcbmltcG9ydCB7IE5TU2VhcmNoIH0gZnJvbSAnLi93aWRnZXQtc2VhcmNoLm1vZGVsJ1xyXG5cclxuLy8gVE9ETzogbW92ZSB0aGlzIGluIHNvbWUgY29tbW9uIHBsYWNlXHJcbmNvbnN0IFBST1RFQ1RFRF9TTEFHX1Y4ID0gJy9hcGlzL3Byb3RlY3RlZC92OCdcclxuXHJcbmNvbnN0IEFQSV9FTkRfUE9JTlRTID0ge1xyXG4gIENPTlRFTlQ6IGAke1BST1RFQ1RFRF9TTEFHX1Y4fS9jb250ZW50YCxcclxuICBBVVRIT1JJTkdfQ09OVEVOVDogYC9hcGlzL2F1dGhBcGkvaGllcmFyY2h5YCxcclxuICBDT05URU5UX0xJS0VTOiBgJHtQUk9URUNURURfU0xBR19WOH0vY29udGVudC9saWtlQ291bnRgLFxyXG4gIFNFVF9TM19DT09LSUU6IGAke1BST1RFQ1RFRF9TTEFHX1Y4fS9jb250ZW50L3NldENvb2tpZWAsXHJcbiAgU0VUX1MzX0lNQUdFX0NPT0tJRTogYCR7UFJPVEVDVEVEX1NMQUdfVjh9L2NvbnRlbnQvc2V0SW1hZ2VDb29raWVgLFxyXG4gIEZFVENIX01BTklGRVNUOiBgJHtQUk9URUNURURfU0xBR19WOH0vY29udGVudC9nZXRXZWJNb2R1bGVNYW5pZmVzdGAsXHJcbiAgRkVUQ0hfV0VCX01PRFVMRV9GSUxFUzogYCR7UFJPVEVDVEVEX1NMQUdfVjh9L2NvbnRlbnQvZ2V0V2ViTW9kdWxlRmlsZXNgLFxyXG4gIE1VTFRJUExFX0NPTlRFTlQ6IGAke1BST1RFQ1RFRF9TTEFHX1Y4fS9jb250ZW50L211bHRpcGxlYCxcclxuICBDT05URU5UX1NFQVJDSF9WNTogYCR7UFJPVEVDVEVEX1NMQUdfVjh9L2NvbnRlbnQvc2VhcmNoVjVgLFxyXG4gIENPTlRFTlRfU0VBUkNIX1Y2OiBgJHtQUk9URUNURURfU0xBR19WOH0vY29udGVudC9zZWFyY2hWNmAsXHJcbiAgQ09OVEVOVF9TRUFSQ0hfUkVHSU9OX1JFQ09NTUVOREFUSU9OOiBgJHtQUk9URUNURURfU0xBR19WOH0vY29udGVudC9zZWFyY2hSZWdpb25SZWNvbW1lbmRhdGlvbmAsXHJcbiAgQ09OVEVOVF9ISVNUT1JZOiBgJHtQUk9URUNURURfU0xBR19WOH0vdXNlci9oaXN0b3J5YCxcclxuICBVU0VSX0NPTlRJTlVFX0xFQVJOSU5HOiBgJHtQUk9URUNURURfU0xBR19WOH0vdXNlci9oaXN0b3J5L2NvbnRpbnVlYCxcclxuICBDT05URU5UX1JBVElORzogYCR7UFJPVEVDVEVEX1NMQUdfVjh9L3VzZXIvcmF0aW5nYCxcclxuICBDT05URU5UX1JBVElOR19WMjogYCR7UFJPVEVDVEVEX1NMQUdfVjh9L3VzZXIvcmF0aW5nL2NvbnRlbnQvYXZlcmFnZS1yYXRpbmdJbmZvYCxcclxuICBDT0xMRUNUSU9OX0hJRVJBUkNIWTogKHR5cGU6IHN0cmluZywgaWQ6IHN0cmluZykgPT5cclxuICAgIGAke1BST1RFQ1RFRF9TTEFHX1Y4fS9jb250ZW50L2NvbGxlY3Rpb24vJHt0eXBlfS8ke2lkfWAsXHJcbiAgUkVHSVNUUkFUSU9OX1NUQVRVUzogYCR7UFJPVEVDVEVEX1NMQUdfVjh9L2FkbWluL3VzZXJSZWdpc3RyYXRpb24vY2hlY2tVc2VyUmVnaXN0cmF0aW9uQ29udGVudGAsXHJcbiAgTUFSS19BU19DT01QTEVURV9NRVRBOiAoY29udGVudElkOiBzdHJpbmcpID0+IGAke1BST1RFQ1RFRF9TTEFHX1Y4fS91c2VyL3Byb2dyZXNzLyR7Y29udGVudElkfWAsXHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXaWRnZXRDb250ZW50U2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIGNvbmZpZ1N2YzogQ29uZmlndXJhdGlvbnNTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgZmV0Y2hNYXJrQXNDb21wbGV0ZU1ldGEoaWRlbnRpZmllcjogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIGNvbnN0IHVybCA9IEFQSV9FTkRfUE9JTlRTLk1BUktfQVNfQ09NUExFVEVfTUVUQShpZGVudGlmaWVyKVxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS50b1Byb21pc2UoKVxyXG4gIH1cclxuXHJcbiAgZmV0Y2hDb250ZW50KFxyXG4gICAgY29udGVudElkOiBzdHJpbmcsXHJcbiAgICBoaWVyYXJjaHlUeXBlOiAnYWxsJyB8ICdtaW5pbWFsJyB8ICdkZXRhaWwnID0gJ2RldGFpbCcsXHJcbiAgICBhZGRpdGlvbmFsRmllbGRzOiBzdHJpbmdbXSA9IFtdLFxyXG4gICk6IE9ic2VydmFibGU8TnNDb250ZW50LklDb250ZW50PiB7XHJcbiAgICBjb25zdCB1cmwgPSBgJHtBUElfRU5EX1BPSU5UUy5DT05URU5UfS8ke2NvbnRlbnRJZH0/aGllcmFyY2h5VHlwZT0ke2hpZXJhcmNoeVR5cGV9YFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdDxOc0NvbnRlbnQuSUNvbnRlbnQ+KHVybCwgeyBhZGRpdGlvbmFsRmllbGRzIH0pXHJcbiAgICAgIC5waXBlKHJldHJ5KDEpKVxyXG4gIH1cclxuICBmZXRjaEF1dGhvcmluZ0NvbnRlbnQoY29udGVudElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPE5zQ29udGVudC5JQ29udGVudD4ge1xyXG4gICAgY29uc3QgdXJsID0gYCR7QVBJX0VORF9QT0lOVFMuQVVUSE9SSU5HX0NPTlRFTlR9LyR7Y29udGVudElkfWBcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PE5zQ29udGVudC5JQ29udGVudD4odXJsKS5waXBlKHJldHJ5KDEpKVxyXG4gIH1cclxuICBmZXRjaE11bHRpcGxlQ29udGVudChpZHM6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxOc0NvbnRlbnQuSUNvbnRlbnRbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8TnNDb250ZW50LklDb250ZW50W10+KFxyXG4gICAgICBgJHtBUElfRU5EX1BPSU5UUy5NVUxUSVBMRV9DT05URU5UfS8ke2lkcy5qb2luKCcsJyl9YCxcclxuICAgIClcclxuICB9XHJcbiAgZmV0Y2hDb2xsZWN0aW9uSGllcmFyY2h5KHR5cGU6IHN0cmluZywgaWQ6IHN0cmluZywgcGFnZU51bWJlcjogbnVtYmVyID0gMCwgcGFnZVNpemU6IG51bWJlciA9IDEpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PE5zQ29udGVudC5JQ29sbGVjdGlvbkhpZXJhcmNoeVJlc3BvbnNlPihcclxuICAgICAgYCR7QVBJX0VORF9QT0lOVFMuQ09MTEVDVElPTl9ISUVSQVJDSFkoXHJcbiAgICAgICAgdHlwZSxcclxuICAgICAgICBpZCxcclxuICAgICAgKX0/cGFnZU51bWJlcj0ke3BhZ2VOdW1iZXJ9JnBhZ2VTaXplPSR7cGFnZVNpemV9YCxcclxuICAgIClcclxuICB9XHJcblxyXG4gIGZldGNoQ29udGVudExpa2VzKGNvbnRlbnRJZHM6IHsgY29udGVudF9pZDogc3RyaW5nW10gfSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdDx7IFtpZGVudGlmaWVyOiBzdHJpbmddOiBudW1iZXIgfT4oQVBJX0VORF9QT0lOVFMuQ09OVEVOVF9MSUtFUywgY29udGVudElkcylcclxuICAgICAgLnRvUHJvbWlzZSgpXHJcbiAgfVxyXG4gIGZldGNoQ29udGVudFJhdGluZ3MoY29udGVudElkczogeyBjb250ZW50SWRzOiBzdHJpbmdbXSB9KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5wb3N0KGAke0FQSV9FTkRfUE9JTlRTLkNPTlRFTlRfUkFUSU5HfS9yYXRpbmdgLCBjb250ZW50SWRzKVxyXG4gICAgICAudG9Qcm9taXNlKClcclxuICB9XHJcblxyXG4gIGZldGNoQ29udGVudFJhdGluZ3NWMihjb250ZW50SWQ6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAuZ2V0PElDb250ZW50UmF0aW5nPihgJHtBUElfRU5EX1BPSU5UUy5DT05URU5UX1JBVElOR19WMn0vJHtjb250ZW50SWR9YClcclxuICB9XHJcblxyXG4gIGZldGNoQ29udGVudEhpc3RvcnkoY29udGVudElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPE5zQ29udGVudC5JQ29udGludWVMZWFybmluZ0RhdGE+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PE5zQ29udGVudC5JQ29udGludWVMZWFybmluZ0RhdGE+KFxyXG4gICAgICBgJHtBUElfRU5EX1BPSU5UUy5DT05URU5UX0hJU1RPUll9LyR7Y29udGVudElkfWAsXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBhc3luYyBjb250aW51ZUxlYXJuaW5nKGlkOiBzdHJpbmcsIGNvbGxlY3Rpb25JZD86IHN0cmluZywgY29sbGVjdGlvblR5cGU/OiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKGFzeW5jIHJlc29sdmUgPT4ge1xyXG4gICAgICBpZiAoY29sbGVjdGlvblR5cGUgJiZcclxuICAgICAgICBjb2xsZWN0aW9uVHlwZS50b0xvd2VyQ2FzZSgpID09PSAncGxheWxpc3QnKSB7XHJcbiAgICAgICAgY29uc3QgcmVxQm9keSA9IHtcclxuICAgICAgICAgIGNvbnRleHRQYXRoSWQ6IGNvbGxlY3Rpb25JZCA/IGNvbGxlY3Rpb25JZCA6IGlkLFxyXG4gICAgICAgICAgcmVzb3VyY2VJZDogaWQsXHJcbiAgICAgICAgICBkYXRhOiBKU09OLnN0cmluZ2lmeSh7XHJcbiAgICAgICAgICAgIHRpbWVzdGFtcDogRGF0ZS5ub3coKSxcclxuICAgICAgICAgICAgY29udGV4dEZ1bGxQYXRoOiBbY29sbGVjdGlvbklkLCBpZF0sXHJcbiAgICAgICAgICB9KSxcclxuICAgICAgICAgIGRhdGVBY2Nlc3NlZDogRGF0ZS5ub3coKSxcclxuICAgICAgICAgIGNvbnRleHRUeXBlOiAncGxheWxpc3QnLFxyXG4gICAgICAgIH1cclxuICAgICAgICBhd2FpdCB0aGlzLnNhdmVDb250aW51ZUxlYXJuaW5nKHJlcUJvZHkpLnRvUHJvbWlzZSgpLmNhdGNoKCkuZmluYWxseSgoKSA9PiB7XHJcbiAgICAgICAgICByZXNvbHZlKHRydWUpXHJcbiAgICAgICAgfVxyXG4gICAgICAgIClcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCByZXFCb2R5ID0ge1xyXG4gICAgICAgICAgY29udGV4dFBhdGhJZDogY29sbGVjdGlvbklkID8gY29sbGVjdGlvbklkIDogaWQsXHJcbiAgICAgICAgICByZXNvdXJjZUlkOiBpZCxcclxuICAgICAgICAgIGRhdGE6IEpTT04uc3RyaW5naWZ5KHsgdGltZXN0YW1wOiBEYXRlLm5vdygpIH0pLFxyXG4gICAgICAgICAgZGF0ZUFjY2Vzc2VkOiBEYXRlLm5vdygpLFxyXG4gICAgICAgIH1cclxuICAgICAgICBhd2FpdCB0aGlzLnNhdmVDb250aW51ZUxlYXJuaW5nKHJlcUJvZHkpLnRvUHJvbWlzZSgpLmNhdGNoKCkuZmluYWxseSgoKSA9PiB7XHJcbiAgICAgICAgICByZXNvbHZlKHRydWUpXHJcbiAgICAgICAgfSlcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcbiAgc2F2ZUNvbnRpbnVlTGVhcm5pbmcoY29udGVudDogTnNDb250ZW50LklWaWV3ZXJDb250aW51ZUxlYXJuaW5nUmVxdWVzdCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCB1cmwgPSBBUElfRU5EX1BPSU5UUy5VU0VSX0NPTlRJTlVFX0xFQVJOSU5HXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55Pih1cmwsIGNvbnRlbnQpXHJcbiAgfVxyXG5cclxuICBzZXRTM0Nvb2tpZShcclxuICAgIGNvbnRlbnRJZDogc3RyaW5nLFxyXG4gICAgLy8gX3BhdGg6IHN0cmluZyxcclxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdChBUElfRU5EX1BPSU5UUy5TRVRfUzNfQ09PS0lFLCB7IGNvbnRlbnRJZCB9KVxyXG4gICAgICAucGlwZShjYXRjaEVycm9yKF9lcnIgPT4gb2YodHJ1ZSkpKVxyXG4gIH1cclxuXHJcbiAgc2V0UzNJbWFnZUNvb2tpZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KEFQSV9FTkRfUE9JTlRTLlNFVF9TM19JTUFHRV9DT09LSUUsIHt9KS5waXBlKGNhdGNoRXJyb3IoX2VyciA9PiBvZih0cnVlKSkpXHJcbiAgfVxyXG5cclxuICBmZXRjaE1hbmlmZXN0KHVybDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChBUElfRU5EX1BPSU5UUy5GRVRDSF9NQU5JRkVTVCwgeyB1cmwgfSlcclxuICB9XHJcbiAgZmV0Y2hXZWJNb2R1bGVDb250ZW50KHVybDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke0FQSV9FTkRfUE9JTlRTLkZFVENIX1dFQl9NT0RVTEVfRklMRVN9P3VybD0ke2VuY29kZVVSSUNvbXBvbmVudCh1cmwpfWApXHJcbiAgfVxyXG4gIHNlYXJjaChyZXE6IE5TU2VhcmNoLklTZWFyY2hSZXF1ZXN0KTogT2JzZXJ2YWJsZTxOU1NlYXJjaC5JU2VhcmNoQXBpUmVzdWx0PiB7XHJcbiAgICByZXEucXVlcnkgPSByZXEucXVlcnkgfHwgJydcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxOU1NlYXJjaC5JU2VhcmNoQXBpUmVzdWx0PihBUElfRU5EX1BPSU5UUy5DT05URU5UX1NFQVJDSF9WNSwge1xyXG4gICAgICByZXF1ZXN0OiByZXEsXHJcbiAgICB9KVxyXG4gIH1cclxuICBzZWFyY2hSZWdpb25SZWNvbW1lbmRhdGlvbihcclxuICAgIHJlcTogTlNTZWFyY2guSVNlYXJjaE9yZ1JlZ2lvblJlY29tbWVuZGF0aW9uUmVxdWVzdCxcclxuICApOiBPYnNlcnZhYmxlPE5zQ29udGVudFN0cmlwTXVsdGlwbGUuSUNvbnRlbnRTdHJpcFJlc3BvbnNlQXBpPiB7XHJcbiAgICByZXEucXVlcnkgPSByZXEucXVlcnkgfHwgJydcclxuICAgIHJlcS5wcmVMYWJlbFZhbHVlID1cclxuICAgICAgKHJlcS5wcmVMYWJlbFZhbHVlIHx8ICcnKSArXHJcbiAgICAgICgodGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUgJiYgdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUuY291bnRyeSkgfHwgJycpXHJcbiAgICByZXEuZmlsdGVycyA9IHtcclxuICAgICAgLi4ucmVxLmZpbHRlcnMsXHJcbiAgICAgIGxhYmVsczogW3JlcS5wcmVMYWJlbFZhbHVlIHx8ICcnXSxcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxOc0NvbnRlbnRTdHJpcE11bHRpcGxlLklDb250ZW50U3RyaXBSZXNwb25zZUFwaT4oXHJcbiAgICAgIEFQSV9FTkRfUE9JTlRTLkNPTlRFTlRfU0VBUkNIX1JFR0lPTl9SRUNPTU1FTkRBVElPTixcclxuICAgICAgeyByZXF1ZXN0OiByZXEgfSxcclxuICAgIClcclxuICB9XHJcbiAgc2VhcmNoVjYocmVxOiBOU1NlYXJjaC5JU2VhcmNoVjZSZXF1ZXN0KTogT2JzZXJ2YWJsZTxOU1NlYXJjaC5JU2VhcmNoVjZBcGlSZXN1bHQ+IHtcclxuICAgIHJlcS5xdWVyeSA9IHJlcS5xdWVyeSB8fCAnJ1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PE5TU2VhcmNoLklTZWFyY2hWNkFwaVJlc3VsdD4oQVBJX0VORF9QT0lOVFMuQ09OVEVOVF9TRUFSQ0hfVjYsIHJlcSlcclxuICB9XHJcblxyXG4gIGZldGNoQ29udGVudFJhdGluZyhjb250ZW50SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8eyByYXRpbmc6IG51bWJlciB9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDx7IHJhdGluZzogbnVtYmVyIH0+KGAke0FQSV9FTkRfUE9JTlRTLkNPTlRFTlRfUkFUSU5HfS8ke2NvbnRlbnRJZH1gKVxyXG4gIH1cclxuICBkZWxldGVDb250ZW50UmF0aW5nKGNvbnRlbnRJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKGAke0FQSV9FTkRfUE9JTlRTLkNPTlRFTlRfUkFUSU5HfS8ke2NvbnRlbnRJZH1gKVxyXG4gIH1cclxuICBhZGRDb250ZW50UmF0aW5nKGNvbnRlbnRJZDogc3RyaW5nLCBkYXRhOiB7IHJhdGluZzogbnVtYmVyIH0pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PGFueT4oYCR7QVBJX0VORF9QT0lOVFMuQ09OVEVOVF9SQVRJTkd9LyR7Y29udGVudElkfWAsIGRhdGEpXHJcbiAgfVxyXG5cclxuICBnZXRGaXJzdENoaWxkSW5IaWVyYXJjaHkoY29udGVudDogTnNDb250ZW50LklDb250ZW50KTogTnNDb250ZW50LklDb250ZW50IHtcclxuICAgIGlmICghKGNvbnRlbnQuY2hpbGRyZW4gfHwgW10pLmxlbmd0aCkge1xyXG4gICAgICByZXR1cm4gY29udGVudFxyXG4gICAgfVxyXG4gICAgaWYgKFxyXG4gICAgICBjb250ZW50LmNvbnRlbnRUeXBlID09PSAnTGVhcm5pbmcgUGF0aCcgJiZcclxuICAgICAgIShjb250ZW50LmFydGlmYWN0VXJsICYmIGNvbnRlbnQuYXJ0aWZhY3RVcmwubGVuZ3RoKVxyXG4gICAgKSB7XHJcbiAgICAgIGNvbnN0IGNoaWxkID0gY29udGVudC5jaGlsZHJlblswXVxyXG4gICAgICByZXR1cm4gdGhpcy5nZXRGaXJzdENoaWxkSW5IaWVyYXJjaHkoY2hpbGQpXHJcbiAgICB9XHJcbiAgICBpZiAoXHJcbiAgICAgIGNvbnRlbnQuY29udGVudFR5cGUgPT09ICdSZXNvdXJjZScgfHxcclxuICAgICAgY29udGVudC5jb250ZW50VHlwZSA9PT0gJ0tub3dsZWRnZSBBcnRpZmFjdCcgfHxcclxuICAgICAgY29udGVudC5jb250ZW50VHlwZSA9PT0gJ0xlYXJuaW5nIFBhdGgnXHJcbiAgICApIHtcclxuICAgICAgcmV0dXJuIGNvbnRlbnRcclxuICAgIH1cclxuICAgIGNvbnN0IGZpcnN0Q2hpbGQgPSBjb250ZW50LmNoaWxkcmVuWzBdXHJcbiAgICBjb25zdCByZXN1bHRDb250ZW50ID0gdGhpcy5nZXRGaXJzdENoaWxkSW5IaWVyYXJjaHkoZmlyc3RDaGlsZClcclxuICAgIHJldHVybiByZXN1bHRDb250ZW50XHJcbiAgfVxyXG5cclxuICBnZXRSZWdpc3RyYXRpb25TdGF0dXMoc291cmNlOiBzdHJpbmcpOiBQcm9taXNlPHsgaGFzQWNjZXNzOiBib29sZWFuOyByZWdpc3RyYXRpb25Vcmw/OiBzdHJpbmcgfT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihgJHtBUElfRU5EX1BPSU5UUy5SRUdJU1RSQVRJT05fU1RBVFVTfS8ke3NvdXJjZX1gKS50b1Byb21pc2UoKVxyXG4gIH1cclxuXHJcbiAgZmV0Y2hDb25maWcodXJsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4odXJsKVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,57 +1,57 @@
1
- export var NsWidgetResolver;
2
- (function (NsWidgetResolver) {
3
- function IUnitPermissionObject() { }
4
- NsWidgetResolver.IUnitPermissionObject = IUnitPermissionObject;
5
- if (false) {
6
- IUnitPermissionObject.prototype.all;
7
- IUnitPermissionObject.prototype.none;
8
- IUnitPermissionObject.prototype.some;
9
- }
10
- function IPermissions() { }
11
- NsWidgetResolver.IPermissions = IPermissions;
12
- if (false) {
13
- IPermissions.prototype.enabled;
14
- IPermissions.prototype.available;
15
- IPermissions.prototype.roles;
16
- IPermissions.prototype.features;
17
- IPermissions.prototype.groups;
18
- }
19
- function IBaseConfig() { }
20
- NsWidgetResolver.IBaseConfig = IBaseConfig;
21
- if (false) {
22
- IBaseConfig.prototype.widgetType;
23
- IBaseConfig.prototype.widgetSubType;
24
- }
25
- function IRegistrationConfig() { }
26
- NsWidgetResolver.IRegistrationConfig = IRegistrationConfig;
27
- if (false) {
28
- IRegistrationConfig.prototype.component;
29
- }
30
- function IRegistrationsPermissionConfig() { }
31
- NsWidgetResolver.IRegistrationsPermissionConfig = IRegistrationsPermissionConfig;
32
- if (false) {
33
- IRegistrationsPermissionConfig.prototype.widgetPermission;
34
- }
35
- function IRenderConfigWithTypedData() { }
36
- NsWidgetResolver.IRenderConfigWithTypedData = IRenderConfigWithTypedData;
37
- if (false) {
38
- IRenderConfigWithTypedData.prototype.widgetData;
39
- IRenderConfigWithTypedData.prototype.widgetInstanceId;
40
- IRenderConfigWithTypedData.prototype.widgetHostClass;
41
- IRenderConfigWithTypedData.prototype.widgetHostStyle;
42
- }
43
- function IWidgetData() { }
44
- NsWidgetResolver.IWidgetData = IWidgetData;
45
- if (false) {
46
- IWidgetData.prototype.widgetSafeStyle;
47
- IWidgetData.prototype.updateBaseComponent;
48
- }
49
- function ITitle() { }
50
- NsWidgetResolver.ITitle = ITitle;
51
- if (false) {
52
- ITitle.prototype.title;
53
- ITitle.prototype.url;
54
- ITitle.prototype.icon;
55
- }
56
- })(NsWidgetResolver || (NsWidgetResolver = {}));
1
+ export var NsWidgetResolver;
2
+ (function (NsWidgetResolver) {
3
+ function IUnitPermissionObject() { }
4
+ NsWidgetResolver.IUnitPermissionObject = IUnitPermissionObject;
5
+ if (false) {
6
+ IUnitPermissionObject.prototype.all;
7
+ IUnitPermissionObject.prototype.none;
8
+ IUnitPermissionObject.prototype.some;
9
+ }
10
+ function IPermissions() { }
11
+ NsWidgetResolver.IPermissions = IPermissions;
12
+ if (false) {
13
+ IPermissions.prototype.enabled;
14
+ IPermissions.prototype.available;
15
+ IPermissions.prototype.roles;
16
+ IPermissions.prototype.features;
17
+ IPermissions.prototype.groups;
18
+ }
19
+ function IBaseConfig() { }
20
+ NsWidgetResolver.IBaseConfig = IBaseConfig;
21
+ if (false) {
22
+ IBaseConfig.prototype.widgetType;
23
+ IBaseConfig.prototype.widgetSubType;
24
+ }
25
+ function IRegistrationConfig() { }
26
+ NsWidgetResolver.IRegistrationConfig = IRegistrationConfig;
27
+ if (false) {
28
+ IRegistrationConfig.prototype.component;
29
+ }
30
+ function IRegistrationsPermissionConfig() { }
31
+ NsWidgetResolver.IRegistrationsPermissionConfig = IRegistrationsPermissionConfig;
32
+ if (false) {
33
+ IRegistrationsPermissionConfig.prototype.widgetPermission;
34
+ }
35
+ function IRenderConfigWithTypedData() { }
36
+ NsWidgetResolver.IRenderConfigWithTypedData = IRenderConfigWithTypedData;
37
+ if (false) {
38
+ IRenderConfigWithTypedData.prototype.widgetData;
39
+ IRenderConfigWithTypedData.prototype.widgetInstanceId;
40
+ IRenderConfigWithTypedData.prototype.widgetHostClass;
41
+ IRenderConfigWithTypedData.prototype.widgetHostStyle;
42
+ }
43
+ function IWidgetData() { }
44
+ NsWidgetResolver.IWidgetData = IWidgetData;
45
+ if (false) {
46
+ IWidgetData.prototype.widgetSafeStyle;
47
+ IWidgetData.prototype.updateBaseComponent;
48
+ }
49
+ function ITitle() { }
50
+ NsWidgetResolver.ITitle = ITitle;
51
+ if (false) {
52
+ ITitle.prototype.title;
53
+ ITitle.prototype.url;
54
+ ITitle.prototype.icon;
55
+ }
56
+ })(NsWidgetResolver || (NsWidgetResolver = {}));
57
57
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXJlc29sdmVyLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN1bmJpcmQtY2IvdXRpbHMvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvd2lkZ2V0LXJlc29sdmVyLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sS0FBVyxnQkFBZ0IsQ0E2RGhDO0FBN0RELFdBQWlCLGdCQUFnQjtJQUUvQixvQ0FJQzs7O1FBSEMsb0NBQXVDO1FBQ3ZDLHFDQUF3QztRQUN4QyxxQ0FBd0M7O0lBWTFDLDJCQU1DOzs7UUFMQywrQkFBZ0I7UUFDaEIsaUNBQWtCO1FBQ2xCLDZCQUFzQjtRQUN0QixnQ0FBeUI7UUFDekIsOEJBQXVCOztJQUd6QiwwQkFHQzs7O1FBRkMsaUNBQWtCO1FBQ2xCLG9DQUFxQjs7SUFHdkIsa0NBRUM7OztRQURDLHdDQUFpQzs7SUFHbkMsNkNBRUM7OztRQURDLDBEQUErQjs7SUFHakMseUNBS0M7OztRQUpDLGdEQUFhO1FBQ2Isc0RBQXlCO1FBQ3pCLHFEQUF3QjtRQUN4QixxREFBMkM7O0lBRzdDLDBCQVVDOzs7UUFSQyxzQ0FBMkI7UUFDM0IsMENBTVM7O0lBRVgscUJBSUM7OztRQUhDLHVCQUFjO1FBQ2QscUJBQVU7UUFDVixzQkFBYTs7QUFFakIsQ0FBQyxFQTdEZ0IsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQTZEaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgU2FmZVN0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3NlcidcclxudHlwZSBUVXJsID0gdW5kZWZpbmVkIHwgJ25vbmUnIHwgJ2JhY2snIHwgc3RyaW5nXHJcbmV4cG9ydCBuYW1lc3BhY2UgTnNXaWRnZXRSZXNvbHZlciB7XHJcbiAgZXhwb3J0IHR5cGUgVW5pdFBlcm1pc3Npb25QcmltaXRpdmUgPSB1bmRlZmluZWQgfCBudWxsIHwgc3RyaW5nXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJVW5pdFBlcm1pc3Npb25PYmplY3Qge1xyXG4gICAgYWxsOiBVbml0UGVybWlzc2lvblByaW1pdGl2ZSB8IHN0cmluZ1tdXHJcbiAgICBub25lOiBVbml0UGVybWlzc2lvblByaW1pdGl2ZSB8IHN0cmluZ1tdXHJcbiAgICBzb21lOiBVbml0UGVybWlzc2lvblByaW1pdGl2ZSB8IHN0cmluZ1tdXHJcbiAgfVxyXG4gIGV4cG9ydCB0eXBlIFVuaXRQZXJtaXNzaW9uID1cclxuICAgIHwgVW5pdFBlcm1pc3Npb25QcmltaXRpdmVcclxuICAgIHwgc3RyaW5nW11cclxuICAgIHwgSVVuaXRQZXJtaXNzaW9uT2JqZWN0XHJcbiAgICB8IFBpY2s8SVVuaXRQZXJtaXNzaW9uT2JqZWN0LCAnYWxsJz5cclxuICAgIHwgUGljazxJVW5pdFBlcm1pc3Npb25PYmplY3QsICdub25lJz5cclxuICAgIHwgUGljazxJVW5pdFBlcm1pc3Npb25PYmplY3QsICdzb21lJz5cclxuICAgIHwgRXhjbHVkZTxJVW5pdFBlcm1pc3Npb25PYmplY3QsICdhbGwnPlxyXG4gICAgfCBFeGNsdWRlPElVbml0UGVybWlzc2lvbk9iamVjdCwgJ25vbmUnPlxyXG4gICAgfCBFeGNsdWRlPElVbml0UGVybWlzc2lvbk9iamVjdCwgJ3NvbWUnPlxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVBlcm1pc3Npb25zIHtcclxuICAgIGVuYWJsZWQ6IGJvb2xlYW5cclxuICAgIGF2YWlsYWJsZTogYm9vbGVhblxyXG4gICAgcm9sZXM/OiBVbml0UGVybWlzc2lvblxyXG4gICAgZmVhdHVyZXM/OiBVbml0UGVybWlzc2lvblxyXG4gICAgZ3JvdXBzPzogVW5pdFBlcm1pc3Npb25cclxuICB9XHJcblxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSUJhc2VDb25maWcge1xyXG4gICAgd2lkZ2V0VHlwZTogc3RyaW5nXHJcbiAgICB3aWRnZXRTdWJUeXBlOiBzdHJpbmdcclxuICB9XHJcblxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVJlZ2lzdHJhdGlvbkNvbmZpZyBleHRlbmRzIElCYXNlQ29uZmlnIHtcclxuICAgIGNvbXBvbmVudDogVHlwZTxJV2lkZ2V0RGF0YTxhbnk+PlxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJUmVnaXN0cmF0aW9uc1Blcm1pc3Npb25Db25maWcgZXh0ZW5kcyBJQmFzZUNvbmZpZyB7XHJcbiAgICB3aWRnZXRQZXJtaXNzaW9uPzogSVBlcm1pc3Npb25zXHJcbiAgfVxyXG5cclxuICBleHBvcnQgaW50ZXJmYWNlIElSZW5kZXJDb25maWdXaXRoVHlwZWREYXRhPFQ+IGV4dGVuZHMgSVJlZ2lzdHJhdGlvbnNQZXJtaXNzaW9uQ29uZmlnIHtcclxuICAgIHdpZGdldERhdGE6IFRcclxuICAgIHdpZGdldEluc3RhbmNlSWQ/OiBzdHJpbmdcclxuICAgIHdpZGdldEhvc3RDbGFzcz86IHN0cmluZ1xyXG4gICAgd2lkZ2V0SG9zdFN0eWxlPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVxyXG4gIH1cclxuICBleHBvcnQgdHlwZSBJUmVuZGVyQ29uZmlnV2l0aEFueURhdGEgPSBJUmVuZGVyQ29uZmlnV2l0aFR5cGVkRGF0YTxhbnk+XHJcbiAgZXhwb3J0IGludGVyZmFjZSBJV2lkZ2V0RGF0YTxUPlxyXG4gICAgZXh0ZW5kcyBPbWl0PElSZW5kZXJDb25maWdXaXRoVHlwZWREYXRhPFQ+LCAnd2lkZ2V0UGVybWlzc2lvbicgfCAnd2lkZ2V0SG9zdFN0eWxlJz4ge1xyXG4gICAgd2lkZ2V0U2FmZVN0eWxlPzogU2FmZVN0eWxlXHJcbiAgICB1cGRhdGVCYXNlQ29tcG9uZW50OiAoXHJcbiAgICAgIHdpZGdldFR5cGU6IHN0cmluZyxcclxuICAgICAgd2lkZ2V0U3ViVHlwZTogc3RyaW5nLFxyXG4gICAgICB3aWRnZXRJbnN0YW5jZUlkPzogc3RyaW5nLFxyXG4gICAgICB3aWRnZXRIb3N0Q2xhc3M/OiBzdHJpbmcsXHJcbiAgICAgIHdpZGdldFNhZmVTdHlsZT86IFNhZmVTdHlsZSxcclxuICAgICkgPT4gdm9pZFxyXG4gIH1cclxuICBleHBvcnQgaW50ZXJmYWNlIElUaXRsZSB7XHJcbiAgICB0aXRsZTogc3RyaW5nLFxyXG4gICAgdXJsOiBUVXJsLFxyXG4gICAgaWNvbj86IHN0cmluZ1xyXG4gIH1cclxufVxyXG4iXX0=