@sunbird-cb/consumption 0.0.63 → 0.0.65

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 (344) hide show
  1. package/README.md +24 -24
  2. package/bundles/sunbird-cb-consumption.umd.js +17470 -17345
  3. package/bundles/sunbird-cb-consumption.umd.js.map +1 -1
  4. package/bundles/sunbird-cb-consumption.umd.min.js +1 -1
  5. package/bundles/sunbird-cb-consumption.umd.min.js.map +1 -1
  6. package/esm2015/lib/_common/announcements/announcements.component.js +150 -150
  7. package/esm2015/lib/_common/announcements/announcements.module.js +23 -23
  8. package/esm2015/lib/_common/avatar-photo-lib/avatar-photo-lib.component.js +158 -158
  9. package/esm2015/lib/_common/avatar-photo-lib/avatar-photo-lib.module.js +29 -29
  10. package/esm2015/lib/_common/calender/calender-day/calender-day.component.js +90 -90
  11. package/esm2015/lib/_common/calender/calender.component.js +299 -299
  12. package/esm2015/lib/_common/calender/calender.module.js +31 -31
  13. package/esm2015/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.js +170 -170
  14. package/esm2015/lib/_common/cards/card-karma-programs/card-karma-programs.component.js +178 -178
  15. package/esm2015/lib/_common/cards/card-karma-programs-v2/card-karma-programs-v2.component.js +166 -166
  16. package/esm2015/lib/_common/cards/card-landscape/card-landscape.component.js +202 -202
  17. package/esm2015/lib/_common/cards/card-mdo-channel/card-mdo-channel.component.js +154 -154
  18. package/esm2015/lib/_common/cards/card-mdo-channel-v1/card-mdo-channel-v1.component.js +154 -154
  19. package/esm2015/lib/_common/cards/card-portrait/card-portrait.component.js +167 -167
  20. package/esm2015/lib/_common/cards/card-portrait-ext/card-portrait-ext.component.js +170 -170
  21. package/esm2015/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.js +261 -261
  22. package/esm2015/lib/_common/cards/card-resource/card-resource.component.js +34 -34
  23. package/esm2015/lib/_common/cards/card-user/card-user.component.js +141 -141
  24. package/esm2015/lib/_common/cards/card-wide/card-wide.component.js +166 -166
  25. package/esm2015/lib/_common/cards/card-wide-v2/card-wide-v2.component.js +171 -171
  26. package/esm2015/lib/_common/cards/cards.component.js +167 -167
  27. package/esm2015/lib/_common/cards/cards.module.js +100 -100
  28. package/esm2015/lib/_common/cards/provider-card/provider-card.component.js +81 -81
  29. package/esm2015/lib/_common/cbp-plan/cbp-plan.component.js +166 -166
  30. package/esm2015/lib/_common/cbp-plan/cbp-plan.module.js +27 -27
  31. package/esm2015/lib/_common/common-strip/common-strip.component.js +646 -646
  32. package/esm2015/lib/_common/common-strip/common-strip.model.js +216 -216
  33. package/esm2015/lib/_common/common-strip/common-strip.module.js +62 -62
  34. package/esm2015/lib/_common/competency-passbook/competency-passbook.component.js +384 -384
  35. package/esm2015/lib/_common/competency-passbook/competency-passbook.module.js +27 -27
  36. package/esm2015/lib/_common/competency-passbook/competency-passbook.service.js +52 -52
  37. package/esm2015/lib/_common/competency-passbook-mdo/competency-passbook-mdo.component.js +332 -332
  38. package/esm2015/lib/_common/competency-passbook-mdo/competency-passbook-mdo.module.js +27 -27
  39. package/esm2015/lib/_common/competency-passbook-mdo/competency-passbook-mdo.service.js +52 -52
  40. package/esm2015/lib/_common/content-progress/content-progress.component.js +89 -89
  41. package/esm2015/lib/_common/content-progress/content-progress.module.js +22 -22
  42. package/esm2015/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.js +2559 -2443
  43. package/esm2015/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.model.js +218 -214
  44. package/esm2015/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.module.js +69 -69
  45. package/esm2015/lib/_common/data-points/data-points.component.js +148 -148
  46. package/esm2015/lib/_common/data-points/data-points.module.js +23 -23
  47. package/esm2015/lib/_common/dialog-components/certificate-dialog/certificate-dialog.component.js +225 -225
  48. package/esm2015/lib/_common/dialog-components/dialog-components.module.js +43 -43
  49. package/esm2015/lib/_common/display-content-type-lib/display-content-type-lib.component.js +60 -60
  50. package/esm2015/lib/_common/display-content-type-lib/display-content-type-lib.module.js +18 -18
  51. package/esm2015/lib/_common/horizontal-scroller-v2/horizontal-scroller-v2.component.js +362 -362
  52. package/esm2015/lib/_common/horizontal-scroller-v2/horizontal-scroller-v2.module.js +23 -23
  53. package/esm2015/lib/_common/microsites/mdo-channels/mdo-channel-v1/mdo-channel-v1.component.js +23 -23
  54. package/esm2015/lib/_common/microsites/mdo-channels/mdo-channel-v2/mdo-channel-v2.component.js +255 -255
  55. package/esm2015/lib/_common/microsites/mdo-channels/mdo-channel.module.js +52 -52
  56. package/esm2015/lib/_common/microsites/providers/providers-v2/providers-v2.component.js +269 -269
  57. package/esm2015/lib/_common/microsites/providers/providers.module.js +51 -51
  58. package/esm2015/lib/_common/pills/pills.component.js +61 -61
  59. package/esm2015/lib/_common/pills/pills.module.js +24 -24
  60. package/esm2015/lib/_common/skeleton-loader-lib/skeleton-loader-lib.component.js +40 -40
  61. package/esm2015/lib/_common/skeleton-loader-lib/skeleton-loader-lib.module.js +28 -28
  62. package/esm2015/lib/_common/sliders/sliders.component.js +187 -184
  63. package/esm2015/lib/_common/sliders/sliders.model.js +67 -67
  64. package/esm2015/lib/_common/sliders/sliders.module.js +50 -50
  65. package/esm2015/lib/_common/sliders-ng-content/sliders-ng-content.component.js +206 -206
  66. package/esm2015/lib/_common/sliders-ng-content/sliders-ng-content.model.js +61 -61
  67. package/esm2015/lib/_common/sliders-ng-content/sliders-ng-content.module.js +50 -50
  68. package/esm2015/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.component.js +1613 -1613
  69. package/esm2015/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.model.js +218 -218
  70. package/esm2015/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.module.js +69 -69
  71. package/esm2015/lib/_common/top-learners/top-learners.component.js +155 -155
  72. package/esm2015/lib/_common/top-learners/top-learners.module.js +23 -23
  73. package/esm2015/lib/_common/user-content-rating/user-content-rating-lib.component.js +145 -145
  74. package/esm2015/lib/_common/user-content-rating/user-content-rating-lib.module.js +38 -38
  75. package/esm2015/lib/_common/user-content-rating/user-content-rating-lib.service.js +45 -45
  76. package/esm2015/lib/_constants/misc.constants.js +4 -4
  77. package/esm2015/lib/_directives/default-thumbnail/default-thumbnail.directive.js +51 -51
  78. package/esm2015/lib/_directives/default-thumbnail/default-thumbnail.module.js +18 -18
  79. package/esm2015/lib/_directives/image-responsive/image-responsive.directive.js +126 -126
  80. package/esm2015/lib/_directives/image-responsive/image-responsive.module.js +18 -18
  81. package/esm2015/lib/_directives/navigation/navigation.directive.js +53 -53
  82. package/esm2015/lib/_directives/navigation/navigation.module.js +18 -18
  83. package/esm2015/lib/_directives/scrollable-item/scrollable-item.directive.js +42 -42
  84. package/esm2015/lib/_directives/scrollable-item/scrollable-item.module.js +19 -19
  85. package/esm2015/lib/_models/card-content-v2.model.js +78 -78
  86. package/esm2015/lib/_models/card-content.model.js +69 -69
  87. package/esm2015/lib/_models/card-users.model.js +103 -103
  88. package/esm2015/lib/_models/content-strip-multiple.model.js +195 -195
  89. package/esm2015/lib/_models/event.js +45 -45
  90. package/esm2015/lib/_models/profile-v3.models.js +196 -196
  91. package/esm2015/lib/_models/rating.model.js +44 -44
  92. package/esm2015/lib/_models/widget-content.model.js +876 -876
  93. package/esm2015/lib/_models/widget-search.model.js +471 -471
  94. package/esm2015/lib/_models/widget-user.model.js +17 -17
  95. package/esm2015/lib/_pipes/object-to-array/object-to-array.pipe.js +28 -28
  96. package/esm2015/lib/_pipes/object-to-array/object-to-array.pipe.module.js +19 -19
  97. package/esm2015/lib/_pipes/pipe-duration-transform/pipe-duration-transform.module.js +18 -18
  98. package/esm2015/lib/_pipes/pipe-duration-transform/pipe-duration-transform.pipe.js +119 -119
  99. package/esm2015/lib/_pipes/pipe-public-URL/pipe-public-URL.module.js +19 -19
  100. package/esm2015/lib/_pipes/pipe-public-URL/pipe-public-URL.pipe.js +38 -38
  101. package/esm2015/lib/_services/certificate.service.js +63 -63
  102. package/esm2015/lib/_services/common-methods.service.js +84 -84
  103. package/esm2015/lib/_services/configurations.service.js +243 -243
  104. package/esm2015/lib/_services/insite-data.service.js +68 -68
  105. package/esm2015/lib/_services/multilingual-translations.service.js +231 -231
  106. package/esm2015/lib/_services/rating.service.js +171 -171
  107. package/esm2015/lib/_services/viewer-route-util.js +125 -125
  108. package/esm2015/lib/_services/widget-content.service.js +852 -852
  109. package/esm2015/lib/_services/widget-user.service.js +475 -475
  110. package/esm2015/lib/consumption.component.js +26 -26
  111. package/esm2015/lib/consumption.config.js +12 -12
  112. package/esm2015/lib/consumption.module.js +36 -36
  113. package/esm2015/lib/consumption.service.js +18 -18
  114. package/esm2015/lib/registration-lib.config.js +21 -21
  115. package/esm2015/public-api.js +31 -31
  116. package/esm2015/sunbird-cb-consumption.js +77 -77
  117. package/esm5/lib/_common/announcements/announcements.component.js +166 -166
  118. package/esm5/lib/_common/announcements/announcements.module.js +27 -27
  119. package/esm5/lib/_common/avatar-photo-lib/avatar-photo-lib.component.js +175 -175
  120. package/esm5/lib/_common/avatar-photo-lib/avatar-photo-lib.module.js +33 -33
  121. package/esm5/lib/_common/calender/calender-day/calender-day.component.js +101 -101
  122. package/esm5/lib/_common/calender/calender.component.js +334 -334
  123. package/esm5/lib/_common/calender/calender.module.js +35 -35
  124. package/esm5/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.js +186 -186
  125. package/esm5/lib/_common/cards/card-karma-programs/card-karma-programs.component.js +187 -187
  126. package/esm5/lib/_common/cards/card-karma-programs-v2/card-karma-programs-v2.component.js +176 -176
  127. package/esm5/lib/_common/cards/card-landscape/card-landscape.component.js +216 -216
  128. package/esm5/lib/_common/cards/card-mdo-channel/card-mdo-channel.component.js +164 -164
  129. package/esm5/lib/_common/cards/card-mdo-channel-v1/card-mdo-channel-v1.component.js +164 -164
  130. package/esm5/lib/_common/cards/card-portrait/card-portrait.component.js +173 -173
  131. package/esm5/lib/_common/cards/card-portrait-ext/card-portrait-ext.component.js +176 -176
  132. package/esm5/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.js +278 -278
  133. package/esm5/lib/_common/cards/card-resource/card-resource.component.js +41 -41
  134. package/esm5/lib/_common/cards/card-user/card-user.component.js +147 -147
  135. package/esm5/lib/_common/cards/card-wide/card-wide.component.js +172 -172
  136. package/esm5/lib/_common/cards/card-wide-v2/card-wide-v2.component.js +181 -181
  137. package/esm5/lib/_common/cards/cards.component.js +199 -199
  138. package/esm5/lib/_common/cards/cards.module.js +104 -104
  139. package/esm5/lib/_common/cards/provider-card/provider-card.component.js +90 -90
  140. package/esm5/lib/_common/cbp-plan/cbp-plan.component.js +185 -185
  141. package/esm5/lib/_common/cbp-plan/cbp-plan.module.js +31 -31
  142. package/esm5/lib/_common/common-strip/common-strip.component.js +760 -760
  143. package/esm5/lib/_common/common-strip/common-strip.model.js +216 -216
  144. package/esm5/lib/_common/common-strip/common-strip.module.js +66 -66
  145. package/esm5/lib/_common/competency-passbook/competency-passbook.component.js +454 -454
  146. package/esm5/lib/_common/competency-passbook/competency-passbook.module.js +31 -31
  147. package/esm5/lib/_common/competency-passbook/competency-passbook.service.js +59 -59
  148. package/esm5/lib/_common/competency-passbook-mdo/competency-passbook-mdo.component.js +383 -383
  149. package/esm5/lib/_common/competency-passbook-mdo/competency-passbook-mdo.module.js +31 -31
  150. package/esm5/lib/_common/competency-passbook-mdo/competency-passbook-mdo.service.js +59 -59
  151. package/esm5/lib/_common/content-progress/content-progress.component.js +94 -94
  152. package/esm5/lib/_common/content-progress/content-progress.module.js +26 -26
  153. package/esm5/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.js +2970 -2848
  154. package/esm5/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.model.js +218 -214
  155. package/esm5/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.module.js +73 -73
  156. package/esm5/lib/_common/data-points/data-points.component.js +163 -163
  157. package/esm5/lib/_common/data-points/data-points.module.js +27 -27
  158. package/esm5/lib/_common/dialog-components/certificate-dialog/certificate-dialog.component.js +248 -248
  159. package/esm5/lib/_common/dialog-components/dialog-components.module.js +47 -47
  160. package/esm5/lib/_common/display-content-type-lib/display-content-type-lib.component.js +67 -67
  161. package/esm5/lib/_common/display-content-type-lib/display-content-type-lib.module.js +22 -22
  162. package/esm5/lib/_common/horizontal-scroller-v2/horizontal-scroller-v2.component.js +391 -391
  163. package/esm5/lib/_common/horizontal-scroller-v2/horizontal-scroller-v2.module.js +27 -27
  164. package/esm5/lib/_common/microsites/mdo-channels/mdo-channel-v1/mdo-channel-v1.component.js +29 -29
  165. package/esm5/lib/_common/microsites/mdo-channels/mdo-channel-v2/mdo-channel-v2.component.js +292 -292
  166. package/esm5/lib/_common/microsites/mdo-channels/mdo-channel.module.js +56 -56
  167. package/esm5/lib/_common/microsites/providers/providers-v2/providers-v2.component.js +312 -312
  168. package/esm5/lib/_common/microsites/providers/providers.module.js +55 -55
  169. package/esm5/lib/_common/pills/pills.component.js +70 -70
  170. package/esm5/lib/_common/pills/pills.module.js +28 -28
  171. package/esm5/lib/_common/skeleton-loader-lib/skeleton-loader-lib.component.js +45 -45
  172. package/esm5/lib/_common/skeleton-loader-lib/skeleton-loader-lib.module.js +32 -32
  173. package/esm5/lib/_common/sliders/sliders.component.js +214 -211
  174. package/esm5/lib/_common/sliders/sliders.model.js +67 -67
  175. package/esm5/lib/_common/sliders/sliders.module.js +67 -67
  176. package/esm5/lib/_common/sliders-ng-content/sliders-ng-content.component.js +233 -233
  177. package/esm5/lib/_common/sliders-ng-content/sliders-ng-content.model.js +61 -61
  178. package/esm5/lib/_common/sliders-ng-content/sliders-ng-content.module.js +67 -67
  179. package/esm5/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.component.js +1892 -1892
  180. package/esm5/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.model.js +218 -218
  181. package/esm5/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.module.js +73 -73
  182. package/esm5/lib/_common/top-learners/top-learners.component.js +172 -172
  183. package/esm5/lib/_common/top-learners/top-learners.module.js +27 -27
  184. package/esm5/lib/_common/user-content-rating/user-content-rating-lib.component.js +168 -168
  185. package/esm5/lib/_common/user-content-rating/user-content-rating-lib.module.js +42 -42
  186. package/esm5/lib/_common/user-content-rating/user-content-rating-lib.service.js +48 -48
  187. package/esm5/lib/_constants/misc.constants.js +4 -4
  188. package/esm5/lib/_directives/default-thumbnail/default-thumbnail.directive.js +59 -59
  189. package/esm5/lib/_directives/default-thumbnail/default-thumbnail.module.js +22 -22
  190. package/esm5/lib/_directives/image-responsive/image-responsive.directive.js +136 -136
  191. package/esm5/lib/_directives/image-responsive/image-responsive.module.js +22 -22
  192. package/esm5/lib/_directives/navigation/navigation.directive.js +62 -62
  193. package/esm5/lib/_directives/navigation/navigation.module.js +22 -22
  194. package/esm5/lib/_directives/scrollable-item/scrollable-item.directive.js +45 -45
  195. package/esm5/lib/_directives/scrollable-item/scrollable-item.module.js +23 -23
  196. package/esm5/lib/_models/card-content-v2.model.js +78 -78
  197. package/esm5/lib/_models/card-content.model.js +69 -69
  198. package/esm5/lib/_models/card-users.model.js +103 -103
  199. package/esm5/lib/_models/content-strip-multiple.model.js +195 -195
  200. package/esm5/lib/_models/event.js +45 -45
  201. package/esm5/lib/_models/profile-v3.models.js +196 -196
  202. package/esm5/lib/_models/rating.model.js +44 -44
  203. package/esm5/lib/_models/widget-content.model.js +876 -876
  204. package/esm5/lib/_models/widget-search.model.js +471 -471
  205. package/esm5/lib/_models/widget-user.model.js +17 -17
  206. package/esm5/lib/_pipes/object-to-array/object-to-array.pipe.js +57 -57
  207. package/esm5/lib/_pipes/object-to-array/object-to-array.pipe.module.js +23 -23
  208. package/esm5/lib/_pipes/pipe-duration-transform/pipe-duration-transform.module.js +22 -22
  209. package/esm5/lib/_pipes/pipe-duration-transform/pipe-duration-transform.pipe.js +142 -142
  210. package/esm5/lib/_pipes/pipe-public-URL/pipe-public-URL.module.js +23 -23
  211. package/esm5/lib/_pipes/pipe-public-URL/pipe-public-URL.pipe.js +41 -41
  212. package/esm5/lib/_services/certificate.service.js +70 -70
  213. package/esm5/lib/_services/common-methods.service.js +102 -102
  214. package/esm5/lib/_services/configurations.service.js +257 -257
  215. package/esm5/lib/_services/insite-data.service.js +82 -82
  216. package/esm5/lib/_services/multilingual-translations.service.js +259 -259
  217. package/esm5/lib/_services/rating.service.js +214 -214
  218. package/esm5/lib/_services/viewer-route-util.js +127 -127
  219. package/esm5/lib/_services/widget-content.service.js +1109 -1109
  220. package/esm5/lib/_services/widget-user.service.js +542 -542
  221. package/esm5/lib/consumption.component.js +28 -28
  222. package/esm5/lib/consumption.config.js +12 -12
  223. package/esm5/lib/consumption.module.js +40 -40
  224. package/esm5/lib/consumption.service.js +21 -21
  225. package/esm5/lib/registration-lib.config.js +21 -21
  226. package/esm5/public-api.js +31 -31
  227. package/esm5/sunbird-cb-consumption.js +77 -77
  228. package/fesm2015/sunbird-cb-consumption.js +15407 -15288
  229. package/fesm2015/sunbird-cb-consumption.js.map +1 -1
  230. package/fesm5/sunbird-cb-consumption.js +17476 -17351
  231. package/fesm5/sunbird-cb-consumption.js.map +1 -1
  232. package/lib/_common/announcements/announcements.component.d.ts +21 -21
  233. package/lib/_common/announcements/announcements.module.d.ts +2 -2
  234. package/lib/_common/avatar-photo-lib/avatar-photo-lib.component.d.ts +20 -20
  235. package/lib/_common/avatar-photo-lib/avatar-photo-lib.module.d.ts +2 -2
  236. package/lib/_common/calender/calender-day/calender-day.component.d.ts +18 -18
  237. package/lib/_common/calender/calender.component.d.ts +34 -34
  238. package/lib/_common/calender/calender.module.d.ts +2 -2
  239. package/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.d.ts +31 -31
  240. package/lib/_common/cards/card-karma-programs/card-karma-programs.component.d.ts +28 -28
  241. package/lib/_common/cards/card-karma-programs-v2/card-karma-programs-v2.component.d.ts +26 -26
  242. package/lib/_common/cards/card-landscape/card-landscape.component.d.ts +36 -36
  243. package/lib/_common/cards/card-mdo-channel/card-mdo-channel.component.d.ts +27 -27
  244. package/lib/_common/cards/card-mdo-channel-v1/card-mdo-channel-v1.component.d.ts +27 -27
  245. package/lib/_common/cards/card-portrait/card-portrait.component.d.ts +33 -33
  246. package/lib/_common/cards/card-portrait-ext/card-portrait-ext.component.d.ts +33 -33
  247. package/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.d.ts +41 -41
  248. package/lib/_common/cards/card-resource/card-resource.component.d.ts +8 -8
  249. package/lib/_common/cards/card-user/card-user.component.d.ts +24 -24
  250. package/lib/_common/cards/card-wide/card-wide.component.d.ts +30 -30
  251. package/lib/_common/cards/card-wide-v2/card-wide-v2.component.d.ts +34 -34
  252. package/lib/_common/cards/cards.component.d.ts +26 -26
  253. package/lib/_common/cards/cards.module.d.ts +2 -2
  254. package/lib/_common/cards/provider-card/provider-card.component.d.ts +14 -14
  255. package/lib/_common/cbp-plan/cbp-plan.component.d.ts +25 -25
  256. package/lib/_common/cbp-plan/cbp-plan.module.d.ts +2 -2
  257. package/lib/_common/common-strip/common-strip.component.d.ts +104 -104
  258. package/lib/_common/common-strip/common-strip.model.d.ts +141 -141
  259. package/lib/_common/common-strip/common-strip.module.d.ts +2 -2
  260. package/lib/_common/competency-passbook/competency-passbook.component.d.ts +42 -42
  261. package/lib/_common/competency-passbook/competency-passbook.module.d.ts +2 -2
  262. package/lib/_common/competency-passbook/competency-passbook.service.d.ts +8 -8
  263. package/lib/_common/competency-passbook-mdo/competency-passbook-mdo.component.d.ts +43 -43
  264. package/lib/_common/competency-passbook-mdo/competency-passbook-mdo.module.d.ts +2 -2
  265. package/lib/_common/competency-passbook-mdo/competency-passbook-mdo.service.d.ts +8 -8
  266. package/lib/_common/content-progress/content-progress.component.d.ts +13 -13
  267. package/lib/_common/content-progress/content-progress.module.d.ts +2 -2
  268. package/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.d.ts +203 -201
  269. package/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.model.d.ts +149 -147
  270. package/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.module.d.ts +5 -5
  271. package/lib/_common/data-points/data-points.component.d.ts +17 -17
  272. package/lib/_common/data-points/data-points.module.d.ts +2 -2
  273. package/lib/_common/dialog-components/certificate-dialog/certificate-dialog.component.d.ts +22 -22
  274. package/lib/_common/dialog-components/dialog-components.module.d.ts +2 -2
  275. package/lib/_common/display-content-type-lib/display-content-type-lib.component.d.ts +12 -12
  276. package/lib/_common/display-content-type-lib/display-content-type-lib.module.d.ts +2 -2
  277. package/lib/_common/horizontal-scroller-v2/horizontal-scroller-v2.component.d.ts +33 -33
  278. package/lib/_common/horizontal-scroller-v2/horizontal-scroller-v2.module.d.ts +2 -2
  279. package/lib/_common/microsites/mdo-channels/mdo-channel-v1/mdo-channel-v1.component.d.ts +5 -5
  280. package/lib/_common/microsites/mdo-channels/mdo-channel-v2/mdo-channel-v2.component.d.ts +39 -39
  281. package/lib/_common/microsites/mdo-channels/mdo-channel.module.d.ts +2 -2
  282. package/lib/_common/microsites/providers/providers-v2/providers-v2.component.d.ts +36 -36
  283. package/lib/_common/microsites/providers/providers.module.d.ts +2 -2
  284. package/lib/_common/pills/pills.component.d.ts +13 -13
  285. package/lib/_common/pills/pills.module.d.ts +2 -2
  286. package/lib/_common/skeleton-loader-lib/skeleton-loader-lib.component.d.ts +8 -8
  287. package/lib/_common/skeleton-loader-lib/skeleton-loader-lib.module.d.ts +2 -2
  288. package/lib/_common/sliders/sliders.component.d.ts +27 -26
  289. package/lib/_common/sliders/sliders.model.d.ts +40 -40
  290. package/lib/_common/sliders/sliders.module.d.ts +6 -6
  291. package/lib/_common/sliders-ng-content/sliders-ng-content.component.d.ts +29 -29
  292. package/lib/_common/sliders-ng-content/sliders-ng-content.model.d.ts +34 -34
  293. package/lib/_common/sliders-ng-content/sliders-ng-content.module.d.ts +6 -6
  294. package/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.component.d.ts +161 -161
  295. package/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.model.d.ts +149 -149
  296. package/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.module.d.ts +5 -5
  297. package/lib/_common/top-learners/top-learners.component.d.ts +18 -18
  298. package/lib/_common/top-learners/top-learners.module.d.ts +2 -2
  299. package/lib/_common/user-content-rating/user-content-rating-lib.component.d.ts +22 -22
  300. package/lib/_common/user-content-rating/user-content-rating-lib.module.d.ts +2 -2
  301. package/lib/_common/user-content-rating/user-content-rating-lib.service.d.ts +7 -7
  302. package/lib/_constants/misc.constants.d.ts +2 -2
  303. package/lib/_directives/default-thumbnail/default-thumbnail.directive.d.ts +9 -9
  304. package/lib/_directives/default-thumbnail/default-thumbnail.module.d.ts +2 -2
  305. package/lib/_directives/image-responsive/image-responsive.directive.d.ts +17 -17
  306. package/lib/_directives/image-responsive/image-responsive.module.d.ts +2 -2
  307. package/lib/_directives/navigation/navigation.directive.d.ts +9 -9
  308. package/lib/_directives/navigation/navigation.module.d.ts +2 -2
  309. package/lib/_directives/scrollable-item/scrollable-item.directive.d.ts +7 -7
  310. package/lib/_directives/scrollable-item/scrollable-item.module.d.ts +2 -2
  311. package/lib/_models/card-content-v2.model.d.ts +44 -44
  312. package/lib/_models/card-content.model.d.ts +41 -41
  313. package/lib/_models/card-users.model.d.ts +50 -50
  314. package/lib/_models/content-strip-multiple.model.d.ts +128 -128
  315. package/lib/_models/event.d.ts +18 -18
  316. package/lib/_models/profile-v3.models.d.ts +91 -91
  317. package/lib/_models/rating.model.d.ts +17 -17
  318. package/lib/_models/widget-content.model.d.ts +497 -497
  319. package/lib/_models/widget-search.model.d.ts +252 -252
  320. package/lib/_models/widget-user.model.d.ts +5 -5
  321. package/lib/_pipes/object-to-array/object-to-array.pipe.d.ts +4 -4
  322. package/lib/_pipes/object-to-array/object-to-array.pipe.module.d.ts +2 -2
  323. package/lib/_pipes/pipe-duration-transform/pipe-duration-transform.module.d.ts +2 -2
  324. package/lib/_pipes/pipe-duration-transform/pipe-duration-transform.pipe.d.ts +6 -6
  325. package/lib/_pipes/pipe-public-URL/pipe-public-URL.module.d.ts +2 -2
  326. package/lib/_pipes/pipe-public-URL/pipe-public-URL.pipe.d.ts +6 -6
  327. package/lib/_services/certificate.service.d.ts +8 -8
  328. package/lib/_services/common-methods.service.d.ts +39 -39
  329. package/lib/_services/configurations.service.d.ts +71 -71
  330. package/lib/_services/insite-data.service.d.ts +10 -10
  331. package/lib/_services/multilingual-translations.service.d.ts +20 -20
  332. package/lib/_services/rating.service.d.ts +15 -15
  333. package/lib/_services/viewer-route-util.d.ts +8 -8
  334. package/lib/_services/widget-content.service.d.ts +87 -87
  335. package/lib/_services/widget-user.service.d.ts +33 -33
  336. package/lib/consumption.component.d.ts +5 -5
  337. package/lib/consumption.config.d.ts +6 -6
  338. package/lib/consumption.module.d.ts +2 -2
  339. package/lib/consumption.service.d.ts +3 -3
  340. package/lib/registration-lib.config.d.ts +4 -4
  341. package/package.json +1 -1
  342. package/public-api.d.ts +23 -23
  343. package/sunbird-cb-consumption.d.ts +73 -73
  344. package/sunbird-cb-consumption.metadata.json +1 -1
@@ -1,292 +1,292 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { Component, Input } from '@angular/core';
6
- import { ActivatedRoute, Router } from '@angular/router';
7
- import { EventService, WsEvents } from '@sunbird-cb/utils-v2';
8
- /* tslint:disable */
9
- import * as _ from 'lodash';
10
- import { TranslateService } from '@ngx-translate/core';
11
- import { MultilingualTranslationsService } from '@sunbird-cb/utils-v2';
12
- var MdoChannelV2Component = /** @class */ (function () {
13
- function MdoChannelV2Component(route, router, eventSvc, translate, langtranslations) {
14
- var _this = this;
15
- this.route = route;
16
- this.router = router;
17
- this.eventSvc = eventSvc;
18
- this.translate = translate;
19
- this.langtranslations = langtranslations;
20
- this.sectionList = [];
21
- this.channnelName = '';
22
- this.orgId = '';
23
- this.selectedIndex = 0;
24
- this.hideCompetencyBlock = false;
25
- this.contentTabEmptyResponseCount = 0;
26
- this.titles = [
27
- { title: 'Learn', url: '/page/learn', icon: 'school', disableTranslate: false },
28
- {
29
- title: "MDO Channels",
30
- url: "/app/learn/mdo-channels/all-channels",
31
- icon: '', disableTranslate: true,
32
- },
33
- ];
34
- this.showModal = false;
35
- this.descriptionMaxLength = 500;
36
- this.isTelemetryRaised = false;
37
- if (this.route.snapshot.data && this.route.snapshot.data.formData
38
- && this.route.snapshot.data.formData.data
39
- && this.route.snapshot.data.formData.data.result
40
- && this.route.snapshot.data.formData.data.result.form
41
- && this.route.snapshot.data.formData.data.result.form.data
42
- && this.route.snapshot.data.formData.data.result.form.data.sectionList) {
43
- this.sectionList = this.route.snapshot.data.formData.data.result.form.data.sectionList;
44
- }
45
- this.langtranslations.languageSelectedObservable.subscribe((/**
46
- * @return {?}
47
- */
48
- function () {
49
- if (localStorage.getItem('websiteLanguage')) {
50
- _this.translate.setDefaultLang('en');
51
- /** @type {?} */
52
- var lang = (/** @type {?} */ (localStorage.getItem('websiteLanguage')));
53
- _this.translate.use(lang);
54
- }
55
- }));
56
- }
57
- /**
58
- * @return {?}
59
- */
60
- MdoChannelV2Component.prototype.ngOnInit = /**
61
- * @return {?}
62
- */
63
- function () {
64
- var _this = this;
65
- this.route.params.subscribe((/**
66
- * @param {?} params
67
- * @return {?}
68
- */
69
- function (params) {
70
- _this.channnelName = params['channel'];
71
- _this.orgId = params['orgId'];
72
- _this.titles.push({
73
- title: _this.channnelName, icon: '', url: 'none', disableTranslate: true,
74
- });
75
- }));
76
- };
77
- /**
78
- * @param {?} tabEvent
79
- * @return {?}
80
- */
81
- MdoChannelV2Component.prototype.tabClicked = /**
82
- * @param {?} tabEvent
83
- * @return {?}
84
- */
85
- function (tabEvent) {
86
- this.raiseTelemetry(tabEvent.tab.textLabel + " tab");
87
- };
88
- /**
89
- * @param {?} event
90
- * @param {?} contentStripData
91
- * @return {?}
92
- */
93
- MdoChannelV2Component.prototype.hideContentStrip = /**
94
- * @param {?} event
95
- * @param {?} contentStripData
96
- * @return {?}
97
- */
98
- function (event, contentStripData) {
99
- if (event) {
100
- contentStripData['hideSection'] = true;
101
- this.contentTabEmptyResponseCount = this.contentTabEmptyResponseCount + 1;
102
- // if(this.contentTabEmptyResponseCount === 4 ) {
103
- // this.selectedIndex = 1
104
- // }
105
- }
106
- };
107
- /**
108
- * @param {?} event
109
- * @return {?}
110
- */
111
- MdoChannelV2Component.prototype.triggerOpenDialog = /**
112
- * @param {?} event
113
- * @return {?}
114
- */
115
- function (event) {
116
- if (event) {
117
- this.showModal = true;
118
- document.body.style.overflow = 'hidden';
119
- }
120
- this.raiseTelemetry('btn open key annoucements');
121
- };
122
- /**
123
- * @return {?}
124
- */
125
- MdoChannelV2Component.prototype.onClose = /**
126
- * @return {?}
127
- */
128
- function () {
129
- this.showModal = false;
130
- document.body.style.overflow = 'auto';
131
- this.raiseTelemetry('btn close key annoucements');
132
- };
133
- /**
134
- * @param {?} event
135
- * @return {?}
136
- */
137
- MdoChannelV2Component.prototype.raiseTelemetryInteratEvent = /**
138
- * @param {?} event
139
- * @return {?}
140
- */
141
- function (event) {
142
- if (event && event.viewMoreUrl) {
143
- this.raiseTelemetry(event.stripTitle + " " + event.viewMoreUrl.viewMoreText);
144
- }
145
- if (!this.isTelemetryRaised && event && !event.viewMoreUrl) {
146
- this.eventSvc.raiseInteractTelemetry({
147
- type: 'click',
148
- subType: 'mdo-channel',
149
- id: _.kebabCase(event.typeOfTelemetry.toLocaleLowerCase()) + "-card",
150
- }, {
151
- id: event.identifier,
152
- type: event.primaryCategory,
153
- }, {
154
- pageIdExt: _.kebabCase(event.primaryCategory.toLocaleLowerCase()) + "-card",
155
- module: WsEvents.EnumTelemetrymodules.LEARN,
156
- });
157
- this.isTelemetryRaised = true;
158
- }
159
- };
160
- /**
161
- * @param {?} name
162
- * @return {?}
163
- */
164
- MdoChannelV2Component.prototype.raiseCompetencyTelemetry = /**
165
- * @param {?} name
166
- * @return {?}
167
- */
168
- function (name) {
169
- this.raiseTelemetry(name + " core expertise");
170
- };
171
- /**
172
- * @param {?} name
173
- * @return {?}
174
- */
175
- MdoChannelV2Component.prototype.raiseTelemetry = /**
176
- * @param {?} name
177
- * @return {?}
178
- */
179
- function (name) {
180
- this.eventSvc.raiseInteractTelemetry({
181
- type: 'click',
182
- subType: 'mdo-channel',
183
- id: "" + _.kebabCase(name).toLocaleLowerCase(),
184
- }, {}, {
185
- module: WsEvents.EnumTelemetrymodules.LEARN,
186
- });
187
- };
188
- /**
189
- * @param {?} event
190
- * @return {?}
191
- */
192
- MdoChannelV2Component.prototype.hideCompetency = /**
193
- * @param {?} event
194
- * @return {?}
195
- */
196
- function (event) {
197
- if (event) {
198
- this.hideCompetencyBlock = true;
199
- }
200
- };
201
- /**
202
- * @param {?} _stripData
203
- * @param {?} contentStrip
204
- * @return {?}
205
- */
206
- MdoChannelV2Component.prototype.showAllContent = /**
207
- * @param {?} _stripData
208
- * @param {?} contentStrip
209
- * @return {?}
210
- */
211
- function (_stripData, contentStrip) {
212
- if (contentStrip && contentStrip.strips && contentStrip.strips.length) {
213
- /** @type {?} */
214
- var stripData = contentStrip.strips[0];
215
- if (stripData && stripData.request) {
216
- delete (stripData['loaderWidgets']);
217
- this.router.navigate(["/app/learn/mdo-channels/" + this.channnelName + "/" + this.orgId + "/all-content"], { queryParams: { stripData: JSON.stringify(stripData) } });
218
- }
219
- }
220
- else {
221
- this.router.navigate(["/app/learn/browse-by/provider/" + this.channnelName + "/" + this.orgId + "/all-CBP"]);
222
- }
223
- };
224
- MdoChannelV2Component.decorators = [
225
- { type: Component, args: [{
226
- selector: 'sb-uic-mdo-channel-v2',
227
- template: "<ws-widget-btn-page-back [widgetData]=\"{ url: 'home', titles: titles }\">\n</ws-widget-btn-page-back>\n\n<div class=\"container-fluid\" id=\"section-micro-sites\">\n <div class=\"flex flex-col flex-1\">\n <ng-container *ngIf=\"sectionList?.length\">\n <ng-container *ngFor=\"let section of sectionList\">\n <ng-container *ngIf=\"section?.enabled\">\n <section id=\"{{section?.key}}\" class=\"w-full grid grid-cols-12 gap-4\" [ngClass]=\"{'container': section.wrapperClass}\">\n <ng-container *ngFor=\"let column of section.column\">\n <div id=\"{{column?.key}}\" class=\"col-span-{{column.colspan || 12}} \">\n <ng-container *ngIf=\"column?.enabled\" [ngSwitch]=\"column?.key\">\n <ng-container *ngSwitchCase=\"'topSection'\" [ngTemplateOutlet]=\"topSection\"\n [ngTemplateOutletContext]=\"{data: column?.data}\"></ng-container>\n <ng-container *ngSwitchCase=\"'topLearners'\" [ngTemplateOutlet]=\"topLearners\"\n [ngTemplateOutletContext]=\"{data: column?.data}\"></ng-container>\n <ng-container *ngSwitchCase=\"'mainContent'\" [ngTemplateOutlet]=\"mainContent\"\n [ngTemplateOutletContext]=\"{data: column?.data}\"></ng-container>\n </ng-container>\n </div>\n </ng-container>\n </section>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n</div>\n\n\n<ng-template #topSection let-data=\"data\">\n <!-- top section desktop layout -->\n <div class=\"hidden md:block\">\n <div class=\"web-banner-background\">\n <div class=\"flex sticky-logo-square\">\n </div>\n <div class=\"flex items-center justify-center\">\n <div class=\"container\">\n <div class=\"grid grid-cols-12 gap-4 padding-top-xxxl mb-10\">\n <div class=\"col-span-12 md:col-span-6\">\n <div class=\"flex-1 flex flex-col mr-4 ws-mat-black-text\">\n <div class=\"\">\n <div class=\"flex items-center logo-square \">\n <img alt=\"Application Logo\" class=\"logo-img\" [src]=\"data?.logo\">\n </div>\n <h1 class=\" txt-ellipsis-2 break-words pt-10\"\n [style.color]=\"data.titleColor\">{{data.title || channnelName}}</h1>\n <p class=\"mat-body-1\" [style.color]=\"data.descriptionColor\">\n {{data?.description | slice:0:descriptionMaxLength}}\n <span *ngIf=\"data?.description?.length > descriptionMaxLength\">...</span>\n </p>\n </div>\n </div>\n </div>\n <div class=\"col-span-12 md:col-span-6\">\n <div class=\"slider slider-box\" *ngIf=\"data.sliderData && data.sliderData.sliders\">\n <sb-uic-sliders [widgetData]=\"data.sliderData.sliders\" [styleData]=\"data.sliderData.styleData\" ></sb-uic-sliders>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n \n </div>\n <!-- top section m-site layout -->\n <div class=\"block md:hidden\">\n <div class=\"col-span-12\">\n <div class=\"slider slider-box\" *ngIf=\"data.sliderData && data.sliderData.sliders\">\n <sb-uic-sliders [widgetData]=\"data.sliderData.sliders\" [styleData]=\"data.sliderData.styleData\" ></sb-uic-sliders>\n </div>\n </div>\n <div class=\"container px-4 flex flex-col mob-container\">\n <div class=\"mr-4 logo-box-container\">\n <div class=\"flex logo-box-square top mr-4\">\n <img alt=\"Application Logo\" class=\"logo-img\" [src]=\"data?.logo\">\n </div>\n </div>\n <div class=\"w-full md:w-9/12 flex-1 flex flex-col\">\n <h1 class=\" txt-ellipsis-2 break-words\">{{data?.title || channnelName}}</h1>\n <p class=\"mat-body-2\">\n {{data?.description | slice:0:descriptionMaxLength}}\n <span *ngIf=\"data?.description?.length > descriptionMaxLength\">...</span>\n </p>\n </div>\n </div>\n </div>\n <div class=\"flex items-center justify-center\">\n <div class=\"container metrics-section\" >\n <div class=\"hidden md:block\">\n <div class=\"metrics\"\n [ngStyle]=\"{'background': data?.metrics?.background}\">\n <sb-uic-data-points\n [providerId]=\"orgId\"\n [fetchDataFromApi]=\"true\"\n [objectData]=\"data?.metrics?.data\"\n [layoutType]=\"'singleFlexeRow'\"\n [pageLayout]=\"'mdo'\">\n </sb-uic-data-points>\n </div>\n </div>\n <div class=\"block md:hidden pt-14 px-4\">\n <div class=\"mob-metrics mob-metrics-sec\">\n <sb-uic-data-points\n [providerId]=\"orgId\"\n [fetchDataFromApi]=\"true\"\n [objectData]=\"data?.metrics?.data\"\n [layoutType]=\"'singleRow'\"\n [pageLayout]=\"'mdo'\">\n </sb-uic-data-points>\n </div>\n \n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #mainContent let-data=\"data\">\n <div class=\"flex items-center justify-center\" [ngStyle]=\"{'background': data.background}\">\n <div class=\"container\">\n <div class=\"block md:hidden col-span-12 padding-left-m padding-right-m padding-top-m padding-bottom-m\">\n <sb-uic-cbp-plan\n [layoutType]=\"'web'\"\n [mobileHeight]=\"false\"\n [fetchDataFromApi]=\"true\"\n [channelId]=\"orgId\"\n [objectData]=\"data?.cbpPlanSection?.data\">\n </sb-uic-cbp-plan>\n </div>\n <div class=\"block md:hidden col-span-12 mt-6\">\n <sb-uic-announcements\n [layoutType]=\"'mobile'\"\n (openDialog)=\"triggerOpenDialog($event)\"\n [objectData]=\"data?.announcementSection?.data\"\n [fetchDataFromApi]=\"false\"\n [channelId]=\"orgId\">\n </sb-uic-announcements>\n <div class=\"announcements-container\" *ngIf=\"showModal\">\n <div class=\"cursor-pointer close-share-dialog\">\n <mat-icon (click)=\"onClose()\" class=\"close-icon\">close</mat-icon>\n </div>\n <div class=\"share-modal px-3 pt-8\">\n <sb-uic-announcements\n [layoutType]=\"'web'\"\n (openDialog)=\"triggerOpenDialog($event)\"\n [objectData]=\"data?.announcementSection?.data\"\n [mobileHeight]=\"true\"\n [fetchDataFromApi]=\"true\"\n [channelId]=\"orgId\">\n </sb-uic-announcements>\n </div>\n </div>\n </div>\n <div class=\"grid grid-cols-12 gap-4 padding-top-m mb-6\">\n <div class=\"col-span-12 md:col-span-{{data.tabSection.colspan}}\">\n <!-- Tabs Section -->\n <mat-tab-group animationDuration=\"0ms\" class=\"mat-tab-labels mytabs w-full \"\n [selectedIndex]=\"selectedIndex\" (selectedTabChange)=\"selectedIndex = $event.index; tabClicked($event)\">\n <mat-tab label=\"Content\" >\n <ng-template mat-tab-label i18n>\n Learn\n </ng-template>\n <ng-container *ngIf=\"data.tabSection.contentTab.length === contentTabEmptyResponseCount\">\n <div class=\"flex justify-center w-full\">\n <div class=\"margin-xl text-center\" >\n <img src=\"/assets/common/error-pages/empty_search.svg\" wsUtilsImageResponsive alt=\"No results\"\n class=\"margin-top-l margin-bottom-s\">\n <h2 class=\"mat-h2\" i18n=\"search route no result\">{{'learnsearch.noResults' | translate}}</h2>\n </div>\n </div>\n </ng-container>\n <div class=\"padding-top-l \">\n <ng-container [ngTemplateOutlet]=\"columnSectionDisplay\"\n [ngTemplateOutletContext]=\"{data: data.tabSection.contentTab}\"></ng-container>\n </div>\n </mat-tab>\n <mat-tab label=\"Core Areas\">\n <ng-template mat-tab-label i18n>\n Competency\n </ng-template>\n <div>\n <ng-container [ngTemplateOutlet]=\"columnSectionDisplay\"\n [ngTemplateOutletContext]=\"{data: data.tabSection.coreAreasTab}\"></ng-container>\n </div>\n </mat-tab>\n </mat-tab-group>\n </div>\n <div class=\"col-span-12 md:col-span-4\">\n <div class=\"hidden md:block padding-top-xl padding-bottom-m\"\n *ngIf=\"data?.cbpPlanSection?.data\">\n <div class=\"pt-4\">\n <sb-uic-cbp-plan\n [layoutType]=\"'web'\"\n [mobileHeight]=\"false\"\n [fetchDataFromApi]=\"true\"\n [channelId]=\"orgId\"\n [objectData]=\"data?.cbpPlanSection?.data\">\n </sb-uic-cbp-plan>\n </div> \n </div>\n <div class=\"hidden md:block\" \n *ngIf=\"data?.announcementSection?.data\">\n <div class=\"pt-4\">\n <sb-uic-announcements\n [layoutType]=\"'web'\"\n [mobileHeight]=\"false\"\n [fetchDataFromApi]=\"true\"\n [channelId]=\"orgId\"\n [objectData]=\"data?.announcementSection?.data\">\n </sb-uic-announcements>\n </div> \n </div>\n </div> \n </div>\n </div>\n </div>\n</ng-template>\n<!-- \n<ng-template #announcement let-data=\"data\">\n <div class=\"flex items-center justify-center\" [ngStyle]=\"{'background': data.background}\">\n <div class=\"w-full\">\n Announcement Section -->\n <!-- <h1>Announcement</h1>\n </div>\n </div>\n</ng-template> -->\n\n\n<ng-template #columnSectionDisplay let-data=\"data\">\n <ng-container *ngIf=\"data?.length\">\n <ng-container *ngFor=\"let section of data\">\n <ng-container *ngIf=\"section?.enabled\">\n <section id=\"{{section?.key}}\" class=\"w-full grid grid-cols-12 gap-4\" [ngClass]=\"{'container': section.wrapperClass}\">\n <ng-container *ngFor=\"let column of section.column\">\n <div id=\"{{column?.key}}\" class=\"col-span-{{column.colspan || 12}} \">\n <ng-container *ngIf=\"column?.enabled\" [ngSwitch]=\"column?.key\">\n <ng-container *ngSwitchCase=\"'competency'\" [ngTemplateOutlet]=\"competency\"\n [ngTemplateOutletContext]=\"{competency: column}\"></ng-container>\n <ng-container *ngSwitchCase=\"'contentRecommendedProgramStrip'\" [ngTemplateOutlet]=\"contentStrip\"\n [ngTemplateOutletContext]=\"{contentStrip: column?.data}\"></ng-container>\n <ng-container *ngSwitchCase=\"'contentRecommendedCoursesStrip'\" [ngTemplateOutlet]=\"contentStrip\"\n [ngTemplateOutletContext]=\"{contentStrip: column?.data}\"></ng-container>\n <ng-container *ngSwitchCase=\"'contentFeaturedStrip'\" [ngTemplateOutlet]=\"contentStrip\"\n [ngTemplateOutletContext]=\"{contentStrip: column?.data}\"></ng-container>\n <ng-container *ngSwitchCase=\"'contentcertificationsOfWeekStrip'\" [ngTemplateOutlet]=\"contentStrip\"\n [ngTemplateOutletContext]=\"{contentStrip: column?.data}\"></ng-container>\n </ng-container>\n </div>\n </ng-container>\n </section>\n </ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n\n\n<!-- Start Competencies -->\n<ng-template #competency let-competency=\"competency\">\n <div class=\"padding-top-l padding-bottom-l relative\" [style.background]=\"competency?.background\" *ngIf=\"!hideCompetencyBlock;else noData\">\n <div class=\"w-full container-balanced\">\n <p class=\"mat-body-1\">This section shows the list of top competencies users in this MDO are learning, based on the courses they've completed and enrolled in.</p>\n <div class=\"pl-4 pr-4 md:pl-0 md:pr-0\">\n <sb-uic-competency-passbook-mdo\n [dynamicColor]=\"'#999999'\"\n [dynamicAlignPills]=\"'start'\"\n [cardDisplayCount]=\"2\"\n (emptyResponse)=\"hideCompetency($event)\"\n (temeletryResponse)=\"raiseCompetencyTelemetry($event)\"\n [objectData]=\"competency\"\n [providerId]=\"orgId\"\n >\n </sb-uic-competency-passbook-mdo>\n </div>\n </div>\n <!-- <img class=\"absolute comp-back-img\" src=\"assets/icons/microsite/competency.svg\" alt=\"\"> -->\n </div>\n</ng-template>\n<!-- End Competencies -->\n\n<ng-template #contentStrip let-contentStrip=\"contentStrip\">\n <ng-container *ngIf=\"!contentStrip?.hideSection\">\n <div class=\"flex mb-8\">\n <div class=\"w-full\">\n <sb-uic-content-strip-with-tabs\n [emitViewAll]=\"true\"\n (viewAllResponse)=\"showAllContent($event, contentStrip)\"\n (telemtryResponse)=\"raiseTelemetryInteratEvent($event)\"\n (emptyResponse)=\"hideContentStrip($event, contentStrip)\"\n [providerId]=\"orgId\"\n [widgetData]=\"contentStrip\"\n [channnelName]=\"channnelName\"\n >\n </sb-uic-content-strip-with-tabs>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #noData>\n <div class=\"flex justify-center w-full\">\n <div class=\"margin-xl text-center\" >\n <img src=\"/assets/common/error-pages/empty_search.svg\" wsUtilsImageResponsive alt=\"No results\"\n class=\"margin-top-l margin-bottom-s\">\n <h2 class=\"mat-h2\" i18n=\"search route no result\">{{'learnsearch.noResults' | translate}}</h2>\n </div>\n </div>\n</ng-template>\n\n<ng-template #topLearners let-data=\"data\">\n <div class=\"flex items-center justify-center\">\n <div class=\"container top-learners margin-bottom-l margin-top-l\">\n <sb-uic-top-learners\n [objectData]=\"data\"\n [channnelName]=\"channnelName\"\n [channelId]=\"orgId\">\n </sb-uic-top-learners>\n </div>\n </div>\n</ng-template>",
228
- styles: [".container-balanced{max-width:1202px;margin-left:auto!important;margin-right:auto!important}.container{max-width:1200px}.padding-top-xxxl{padding-top:47px}.banner-container{align-items:center;background:#eee;padding:16px;gap:2.5rem;justify-content:center}.web-banner-background{background-image:url(https://portal.karmayogiqa.nic.in/content-store/orgStore/0135071359030722569/1720698778795_MDO-channel-banner.png);background-size:cover;min-height:464px}.mob-container{background-image:url(https://portal.karmayogiqa.nic.in/content-store/orgStore/0135071359030722569/1720693634596_MDOChannel_RightGraphic%202.svg);background-position:right;background-repeat:no-repeat}.sticky-logo-square{position:absolute;top:215px;justify-content:end;border-bottom-right-radius:12px;border-top-right-radius:12px;background:#fff;display:flex;padding:10px;justify-content:end;height:53px}.logo-square{width:112px;max-height:73px;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.logo-box-container{width:157px;position:relative;height:64px}.logo-box-square{height:99px;width:157px;background:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px 0 rgba(0,0,0,.06)}.logo-box-square .logo-img{max-width:122px}.logo-box-square.top{position:absolute;top:-54px}.logo-img{-o-object-fit:contain;object-fit:contain;max-height:52px;height:96px;z-index:10}.metrics{border:3px solid #fff;border-radius:10px;align-items:center}.mob-metrics{overflow:auto}.metrics-section{margin-top:-30px}.empty-div{height:15px}.mob-metrics-sec{padding-top:1rem}.announcements-container{position:fixed;height:calc(100vh - 67px);background:rgba(19,19,19,.6392156863);width:100vw;top:0;left:0;z-index:1000}.close-announcements-dialog{position:absolute;right:30px;top:30px}.close-icon{color:#fff;border-radius:15px;float:right;position:absolute;top:15px;right:15px}@media screen and (max-width:768px){.metrics-section{margin-top:0}.top-learners{padding-left:30px}}@media screen and (min-width:769px){.sticky-logo-square{width:8%}}@media screen and (min-width:1280px){.sticky-logo-square{width:10%}}@media screen and (min-width:1520px){.sticky-logo-square{width:15%}}@media screen and (min-width:1904px){.sticky-logo-square{width:20%}}::ng-deep .mytabs .mat-tab-label.mat-tab-label-active.cdk-keyboard-focused:not(.mat-tab-disabled),::ng-deep .mytabs .mat-tab-label.mat-tab-label-active:not(.mat-tab-disabled){font-weight:700;color:#000;opacity:1}"]
229
- }] }
230
- ];
231
- /** @nocollapse */
232
- MdoChannelV2Component.ctorParameters = function () { return [
233
- { type: ActivatedRoute },
234
- { type: Router },
235
- { type: EventService },
236
- { type: TranslateService },
237
- { type: MultilingualTranslationsService }
238
- ]; };
239
- MdoChannelV2Component.propDecorators = {
240
- sectionList: [{ type: Input }]
241
- };
242
- return MdoChannelV2Component;
243
- }());
244
- export { MdoChannelV2Component };
245
- if (false) {
246
- /** @type {?} */
247
- MdoChannelV2Component.prototype.sectionList;
248
- /** @type {?} */
249
- MdoChannelV2Component.prototype.channnelName;
250
- /** @type {?} */
251
- MdoChannelV2Component.prototype.orgId;
252
- /** @type {?} */
253
- MdoChannelV2Component.prototype.selectedIndex;
254
- /** @type {?} */
255
- MdoChannelV2Component.prototype.hideCompetencyBlock;
256
- /** @type {?} */
257
- MdoChannelV2Component.prototype.contentTabEmptyResponseCount;
258
- /** @type {?} */
259
- MdoChannelV2Component.prototype.titles;
260
- /** @type {?} */
261
- MdoChannelV2Component.prototype.showModal;
262
- /** @type {?} */
263
- MdoChannelV2Component.prototype.descriptionMaxLength;
264
- /** @type {?} */
265
- MdoChannelV2Component.prototype.isTelemetryRaised;
266
- /**
267
- * @type {?}
268
- * @private
269
- */
270
- MdoChannelV2Component.prototype.route;
271
- /**
272
- * @type {?}
273
- * @private
274
- */
275
- MdoChannelV2Component.prototype.router;
276
- /**
277
- * @type {?}
278
- * @private
279
- */
280
- MdoChannelV2Component.prototype.eventSvc;
281
- /**
282
- * @type {?}
283
- * @private
284
- */
285
- MdoChannelV2Component.prototype.translate;
286
- /**
287
- * @type {?}
288
- * @private
289
- */
290
- MdoChannelV2Component.prototype.langtranslations;
291
- }
292
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWRvLWNoYW5uZWwtdjIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN1bmJpcmQtY2IvY29uc3VtcHRpb24vIiwic291cmNlcyI6WyJsaWIvX2NvbW1vbi9taWNyb3NpdGVzL21kby1jaGFubmVscy9tZG8tY2hhbm5lbC12Mi9tZG8tY2hhbm5lbC12Mi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFBO0FBRXhELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTs7QUFFN0QsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUE7QUFDM0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDdEQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFdEU7SUF3QkUsK0JBQ1UsS0FBcUIsRUFDckIsTUFBYyxFQUNkLFFBQXNCLEVBQ3RCLFNBQTJCLEVBQzNCLGdCQUFpRDtRQUwzRCxpQkF1QkM7UUF0QlMsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGFBQVEsR0FBUixRQUFRLENBQWM7UUFDdEIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQztRQXZCbEQsZ0JBQVcsR0FBTyxFQUFFLENBQUE7UUFDN0IsaUJBQVksR0FBRyxFQUFFLENBQUE7UUFDakIsVUFBSyxHQUFHLEVBQUUsQ0FBQTtRQUNWLGtCQUFhLEdBQUcsQ0FBQyxDQUFBO1FBQ2pCLHdCQUFtQixHQUFZLEtBQUssQ0FBQTtRQUNwQyxpQ0FBNEIsR0FBVyxDQUFDLENBQUE7UUFDeEMsV0FBTSxHQUFHO1lB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LENBQUM7WUFDN0MsSUFBSSxTQUFTLElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRTtnQkFDbEMsT0FBTSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFBO2dCQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FDbEIsQ0FBQyw2QkFBMkIsSUFBSSxDQUFDLFlBQVksU0FBSSxJQUFJLENBQUMsS0FBSyxpQkFBYyxDQUFDLEVBQzFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7YUFDN0Q7U0FDRjthQUFNO1lBQ0osSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQ25CLENBQUMsbUNBQWlDLElBQUksQ0FBQyxZQUFZLFNBQUksSUFBSSxDQUFDLEtBQUssYUFBVSxDQUFDLENBQUMsQ0FBQTtTQUNoRjtJQUNILENBQUM7O2dCQW5KRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsNHpoQkFBOEM7O2lCQUUvQzs7OztnQkFYUSxjQUFjO2dCQUFFLE1BQU07Z0JBQ3RCLFlBQVk7Z0JBR1osZ0JBQWdCO2dCQUNoQiwrQkFBK0I7Ozs4QkFRckMsS0FBSzs7SUErSVIsNEJBQUM7Q0FBQSxBQXJKRCxJQXFKQztTQWhKWSxxQkFBcUI7OztJQUNoQyw0Q0FBNkI7O0lBQzdCLDZDQUFpQjs7SUFDakIsc0NBQVU7O0lBQ1YsOENBQWlCOztJQUNqQixvREFBb0M7O0lBQ3BDLDZEQUF3Qzs7SUFDeEMsdUNBT0M7O0lBQ0QsMENBQTBCOztJQUMxQixxREFBMEI7O0lBQzFCLGtEQUFrQzs7Ozs7SUFHaEMsc0NBQTZCOzs7OztJQUM3Qix1Q0FBc0I7Ozs7O0lBQ3RCLHlDQUE4Qjs7Ozs7SUFDOUIsMENBQW1DOzs7OztJQUNuQyxpREFBeUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTWF0VGFiQ2hhbmdlRXZlbnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbCdcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQgeyBFdmVudFNlcnZpY2UsIFdzRXZlbnRzIH0gZnJvbSAnQHN1bmJpcmQtY2IvdXRpbHMtdjInXG4vKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IE11bHRpbGluZ3VhbFRyYW5zbGF0aW9uc1NlcnZpY2UgfSBmcm9tICdAc3VuYmlyZC1jYi91dGlscy12MidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2ItdWljLW1kby1jaGFubmVsLXYyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21kby1jaGFubmVsLXYyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWRvLWNoYW5uZWwtdjIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBNZG9DaGFubmVsVjJDb21wb25lbnQgIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgc2VjdGlvbkxpc3Q6YW55ID0gW11cbiAgY2hhbm5uZWxOYW1lID0gJydcbiAgb3JnSWQgPSAnJ1xuICBzZWxlY3RlZEluZGV4ID0gMFxuICBoaWRlQ29tcGV0ZW5jeUJsb2NrOiBib29sZWFuID0gZmFsc2VcbiAgY29udGVudFRhYkVtcHR5UmVzcG9uc2VDb3VudDogbnVtYmVyID0gMFxuICB0aXRsZXMgPSBbXG4gICAgeyB0aXRsZTogJ0xlYXJuJywgdXJsOiAnL3BhZ2UvbGVhcm4nLCBpY29uOiAnc2Nob29sJywgZGlzYWJsZVRyYW5zbGF0ZTogZmFsc2UgfSxcbiAgICB7XG4gICAgICB0aXRsZTogYE1ETyBDaGFubmVsc2AsXG4gICAgICB1cmw6IGAvYXBwL2xlYXJuL21kby1jaGFubmVscy9hbGwtY2hhbm5lbHNgLFxuICAgICAgaWNvbjogJycsIGRpc2FibGVUcmFuc2xhdGU6IHRydWUsXG4gICAgfSxcbiAgXVxuICBzaG93TW9kYWw6IGJvb2xlYW4gPSBmYWxzZVxuICBkZXNjcmlwdGlvbk1heExlbmd0aCA9IDUwMFxuICBpc1RlbGVtZXRyeVJhaXNlZDogYm9vbGVhbiA9IGZhbHNlXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIGV2ZW50U3ZjOiBFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsYW5ndHJhbnNsYXRpb25zOiBNdWx0aWxpbmd1YWxUcmFuc2xhdGlvbnNTZXJ2aWNlLFxuICApIHsgXG4gICAgaWYgKHRoaXMucm91dGUuc25hcHNob3QuZGF0YSAmJiB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuZm9ybURhdGFcbiAgICAgICYmIHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5mb3JtRGF0YS5kYXRhXG4gICAgICAmJiB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuZm9ybURhdGEuZGF0YS5yZXN1bHRcbiAgICAgICYmIHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5mb3JtRGF0YS5kYXRhLnJlc3VsdC5mb3JtXG4gICAgICAmJiB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuZm9ybURhdGEuZGF0YS5yZXN1bHQuZm9ybS5kYXRhXG4gICAgICAmJiB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuZm9ybURhdGEuZGF0YS5yZXN1bHQuZm9ybS5kYXRhLnNlY3Rpb25MaXN0XG4gICAgKSB7XG4gICAgICB0aGlzLnNlY3Rpb25MaXN0ID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmZvcm1EYXRhLmRhdGEucmVzdWx0LmZvcm0uZGF0YS5zZWN0aW9uTGlzdFxuICAgIH1cbiAgICB0aGlzLmxhbmd0cmFuc2xhdGlvbnMubGFuZ3VhZ2VTZWxlY3RlZE9ic2VydmFibGUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnd2Vic2l0ZUxhbmd1YWdlJykpIHtcbiAgICAgICAgdGhpcy50cmFuc2xhdGUuc2V0RGVmYXVsdExhbmcoJ2VuJylcbiAgICAgICAgY29uc3QgbGFuZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd3ZWJzaXRlTGFuZ3VhZ2UnKSFcbiAgICAgICAgdGhpcy50cmFuc2xhdGUudXNlKGxhbmcpXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucm91dGUucGFyYW1zLnN1YnNjcmliZShwYXJhbXMgPT4ge1xuICAgICAgdGhpcy5jaGFubm5lbE5hbWUgPSBwYXJhbXNbJ2NoYW5uZWwnXVxuICAgICAgdGhpcy5vcmdJZCA9IHBhcmFtc1snb3JnSWQnXVxuICAgICAgdGhpcy50aXRsZXMucHVzaCh7XG4gICAgICAgIHRpdGxlOiB0aGlzLmNoYW5ubmVsTmFtZSwgaWNvbjogJycsIHVybDogJ25vbmUnLCBkaXNhYmxlVHJhbnNsYXRlOiB0cnVlLFxuICAgICAgfSlcbiAgICB9KVxuICB9XG5cbiAgcHVibGljIHRhYkNsaWNrZWQodGFiRXZlbnQ6IE1hdFRhYkNoYW5nZUV2ZW50KSB7XG4gICAgdGhpcy5yYWlzZVRlbGVtZXRyeShgJHt0YWJFdmVudC50YWIudGV4dExhYmVsfSB0YWJgKVxuICB9XG4gIGhpZGVDb250ZW50U3RyaXAoZXZlbnQ6IGFueSwgY29udGVudFN0cmlwRGF0YTogYW55KSB7XG4gICAgaWYgKGV2ZW50KSB7XG4gICAgICBjb250ZW50U3RyaXBEYXRhWydoaWRlU2VjdGlvbiddID0gdHJ1ZVxuICAgICAgdGhpcy5jb250ZW50VGFiRW1wdHlSZXNwb25zZUNvdW50ID0gdGhpcy5jb250ZW50VGFiRW1wdHlSZXNwb25zZUNvdW50ICsgMVxuICAgICAgLy8gaWYodGhpcy5jb250ZW50VGFiRW1wdHlSZXNwb25zZUNvdW50ID09PSA0ICkge1xuICAgICAgLy8gICB0aGlzLnNlbGVjdGVkSW5kZXggPSAxXG4gICAgICAvLyB9XG4gICAgfVxuICB9XG5cbiAgdHJpZ2dlck9wZW5EaWFsb2coZXZlbnQ6IGJvb2xlYW4pIHtcbiAgICBpZihldmVudCkge1xuICAgICAgdGhpcy5zaG93TW9kYWwgPSB0cnVlXG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJ2hpZGRlbidcbiAgICB9XG4gICAgdGhpcy5yYWlzZVRlbGVtZXRyeSgnYnRuIG9wZW4ga2V5IGFubm91Y2VtZW50cycpXG4gIH1cblxuICBvbkNsb3NlKCkge1xuICAgIHRoaXMuc2hvd01vZGFsID0gZmFsc2VcbiAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJ2F1dG8nXG4gICAgdGhpcy5yYWlzZVRlbGVtZXRyeSgnYnRuIGNsb3NlIGtleSBhbm5vdWNlbWVudHMnKVxuICB9XG5cbiAgcmFpc2VUZWxlbWV0cnlJbnRlcmF0RXZlbnQoZXZlbnQ6IGFueSkge1xuICAgIGlmIChldmVudCAmJiBldmVudC52aWV3TW9yZVVybCkge1xuICAgICAgdGhpcy5yYWlzZVRlbGVtZXRyeShgJHtldmVudC5zdHJpcFRpdGxlfSAke2V2ZW50LnZpZXdNb3JlVXJsLnZpZXdNb3JlVGV4dH1gKVxuICAgIH1cbiAgICBpZiAoIXRoaXMuaXNUZWxlbWV0cnlSYWlzZWQgJiYgZXZlbnQgJiYgIWV2ZW50LnZpZXdNb3JlVXJsKSB7XG4gICAgICB0aGlzLmV2ZW50U3ZjLnJhaXNlSW50ZXJhY3RUZWxlbWV0cnkoXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnY2xpY2snLFxuICAgICAgICAgIHN1YlR5cGU6ICdtZG8tY2hhbm5lbCcsXG4gICAgICAgICAgaWQ6IGAke18ua2ViYWJDYXNlKGV2ZW50LnR5cGVPZlRlbGVtZXRyeS50b0xvY2FsZUxvd2VyQ2FzZSgpKX0tY2FyZGAsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogZXZlbnQuaWRlbnRpZmllcixcbiAgICAgICAgICB0eXBlOiBldmVudC5wcmltYXJ5Q2F0ZWdvcnksXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwYWdlSWRFeHQ6IGAke18ua2ViYWJDYXNlKGV2ZW50LnByaW1hcnlDYXRlZ29yeS50b0xvY2FsZUxvd2VyQ2FzZSgpKX0tY2FyZGAsXG4gICAgICAgICAgbW9kdWxlOiBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5bW9kdWxlcy5MRUFSTixcbiAgICAgICAgfVxuICAgICAgKVxuICAgICAgdGhpcy5pc1RlbGVtZXRyeVJhaXNlZCA9IHRydWVcbiAgICB9XG4gIH1cblxuICByYWlzZUNvbXBldGVuY3lUZWxlbWV0cnkobmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5yYWlzZVRlbGVtZXRyeShgJHtuYW1lfSBjb3JlIGV4cGVydGlzZWApXG4gIH1cblxuICByYWlzZVRlbGVtZXRyeShuYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLmV2ZW50U3ZjLnJhaXNlSW50ZXJhY3RUZWxlbWV0cnkoXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdjbGljaycsXG4gICAgICAgIHN1YlR5cGU6ICdtZG8tY2hhbm5lbCcsXG4gICAgICAgIGlkOiBgJHtfLmtlYmFiQ2FzZShuYW1lKS50b0xvY2FsZUxvd2VyQ2FzZSgpfWAsXG4gICAgICB9LFxuICAgICAge30sXG4gICAgICB7XG4gICAgICAgIG1vZHVsZTogV3NFdmVudHMuRW51bVRlbGVtZXRyeW1vZHVsZXMuTEVBUk4sXG4gICAgICB9XG4gICAgKVxuICB9XG5cbiAgaGlkZUNvbXBldGVuY3koZXZlbnQ6IGFueSkge1xuICAgIGlmIChldmVudCkge1xuICAgICAgdGhpcy5oaWRlQ29tcGV0ZW5jeUJsb2NrID0gdHJ1ZVxuICAgIH1cbiAgfVxuXG4gIHNob3dBbGxDb250ZW50KF9zdHJpcERhdGE6IGFueSwgY29udGVudFN0cmlwOiBhbnkpIHtcbiAgICBpZiAoY29udGVudFN0cmlwICYmIGNvbnRlbnRTdHJpcC5zdHJpcHMgJiYgY29udGVudFN0cmlwLnN0cmlwcy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IHN0cmlwRGF0YTogYW55ID0gY29udGVudFN0cmlwLnN0cmlwc1swXVxuICAgICAgaWYgKHN0cmlwRGF0YSAmJiBzdHJpcERhdGEucmVxdWVzdCkge1xuICAgICAgICBkZWxldGUoc3RyaXBEYXRhWydsb2FkZXJXaWRnZXRzJ10pXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFxuICAgICAgICAgIFtgL2FwcC9sZWFybi9tZG8tY2hhbm5lbHMvJHt0aGlzLmNoYW5ubmVsTmFtZX0vJHt0aGlzLm9yZ0lkfS9hbGwtY29udGVudGBdLFxuICAgICAgICAgIHsgcXVlcnlQYXJhbXM6IHsgc3RyaXBEYXRhOiBKU09OLnN0cmluZ2lmeShzdHJpcERhdGEpIH0gfSlcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFxuICAgICAgICBbYC9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyLyR7dGhpcy5jaGFubm5lbE5hbWV9LyR7dGhpcy5vcmdJZH0vYWxsLUNCUGBdKVxuICAgIH1cbiAgfVxuXG59XG4iXX0=
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { Component, Input } from '@angular/core';
6
+ import { ActivatedRoute, Router } from '@angular/router';
7
+ import { EventService, WsEvents } from '@sunbird-cb/utils-v2';
8
+ /* tslint:disable */
9
+ import * as _ from 'lodash';
10
+ import { TranslateService } from '@ngx-translate/core';
11
+ import { MultilingualTranslationsService } from '@sunbird-cb/utils-v2';
12
+ var MdoChannelV2Component = /** @class */ (function () {
13
+ function MdoChannelV2Component(route, router, eventSvc, translate, langtranslations) {
14
+ var _this = this;
15
+ this.route = route;
16
+ this.router = router;
17
+ this.eventSvc = eventSvc;
18
+ this.translate = translate;
19
+ this.langtranslations = langtranslations;
20
+ this.sectionList = [];
21
+ this.channnelName = '';
22
+ this.orgId = '';
23
+ this.selectedIndex = 0;
24
+ this.hideCompetencyBlock = false;
25
+ this.contentTabEmptyResponseCount = 0;
26
+ this.titles = [
27
+ { title: 'Learn', url: '/page/learn', icon: 'school', disableTranslate: false },
28
+ {
29
+ title: "MDO Channels",
30
+ url: "/app/learn/mdo-channels/all-channels",
31
+ icon: '', disableTranslate: true,
32
+ },
33
+ ];
34
+ this.showModal = false;
35
+ this.descriptionMaxLength = 500;
36
+ this.isTelemetryRaised = false;
37
+ if (this.route.snapshot.data && this.route.snapshot.data.formData
38
+ && this.route.snapshot.data.formData.data
39
+ && this.route.snapshot.data.formData.data.result
40
+ && this.route.snapshot.data.formData.data.result.form
41
+ && this.route.snapshot.data.formData.data.result.form.data
42
+ && this.route.snapshot.data.formData.data.result.form.data.sectionList) {
43
+ this.sectionList = this.route.snapshot.data.formData.data.result.form.data.sectionList;
44
+ }
45
+ this.langtranslations.languageSelectedObservable.subscribe((/**
46
+ * @return {?}
47
+ */
48
+ function () {
49
+ if (localStorage.getItem('websiteLanguage')) {
50
+ _this.translate.setDefaultLang('en');
51
+ /** @type {?} */
52
+ var lang = (/** @type {?} */ (localStorage.getItem('websiteLanguage')));
53
+ _this.translate.use(lang);
54
+ }
55
+ }));
56
+ }
57
+ /**
58
+ * @return {?}
59
+ */
60
+ MdoChannelV2Component.prototype.ngOnInit = /**
61
+ * @return {?}
62
+ */
63
+ function () {
64
+ var _this = this;
65
+ this.route.params.subscribe((/**
66
+ * @param {?} params
67
+ * @return {?}
68
+ */
69
+ function (params) {
70
+ _this.channnelName = params['channel'];
71
+ _this.orgId = params['orgId'];
72
+ _this.titles.push({
73
+ title: _this.channnelName, icon: '', url: 'none', disableTranslate: true,
74
+ });
75
+ }));
76
+ };
77
+ /**
78
+ * @param {?} tabEvent
79
+ * @return {?}
80
+ */
81
+ MdoChannelV2Component.prototype.tabClicked = /**
82
+ * @param {?} tabEvent
83
+ * @return {?}
84
+ */
85
+ function (tabEvent) {
86
+ this.raiseTelemetry(tabEvent.tab.textLabel + " tab");
87
+ };
88
+ /**
89
+ * @param {?} event
90
+ * @param {?} contentStripData
91
+ * @return {?}
92
+ */
93
+ MdoChannelV2Component.prototype.hideContentStrip = /**
94
+ * @param {?} event
95
+ * @param {?} contentStripData
96
+ * @return {?}
97
+ */
98
+ function (event, contentStripData) {
99
+ if (event) {
100
+ contentStripData['hideSection'] = true;
101
+ this.contentTabEmptyResponseCount = this.contentTabEmptyResponseCount + 1;
102
+ // if(this.contentTabEmptyResponseCount === 4 ) {
103
+ // this.selectedIndex = 1
104
+ // }
105
+ }
106
+ };
107
+ /**
108
+ * @param {?} event
109
+ * @return {?}
110
+ */
111
+ MdoChannelV2Component.prototype.triggerOpenDialog = /**
112
+ * @param {?} event
113
+ * @return {?}
114
+ */
115
+ function (event) {
116
+ if (event) {
117
+ this.showModal = true;
118
+ document.body.style.overflow = 'hidden';
119
+ }
120
+ this.raiseTelemetry('btn open key annoucements');
121
+ };
122
+ /**
123
+ * @return {?}
124
+ */
125
+ MdoChannelV2Component.prototype.onClose = /**
126
+ * @return {?}
127
+ */
128
+ function () {
129
+ this.showModal = false;
130
+ document.body.style.overflow = 'auto';
131
+ this.raiseTelemetry('btn close key annoucements');
132
+ };
133
+ /**
134
+ * @param {?} event
135
+ * @return {?}
136
+ */
137
+ MdoChannelV2Component.prototype.raiseTelemetryInteratEvent = /**
138
+ * @param {?} event
139
+ * @return {?}
140
+ */
141
+ function (event) {
142
+ if (event && event.viewMoreUrl) {
143
+ this.raiseTelemetry(event.stripTitle + " " + event.viewMoreUrl.viewMoreText);
144
+ }
145
+ if (!this.isTelemetryRaised && event && !event.viewMoreUrl) {
146
+ this.eventSvc.raiseInteractTelemetry({
147
+ type: 'click',
148
+ subType: 'mdo-channel',
149
+ id: _.kebabCase(event.typeOfTelemetry.toLocaleLowerCase()) + "-card",
150
+ }, {
151
+ id: event.identifier,
152
+ type: event.primaryCategory,
153
+ }, {
154
+ pageIdExt: _.kebabCase(event.primaryCategory.toLocaleLowerCase()) + "-card",
155
+ module: WsEvents.EnumTelemetrymodules.LEARN,
156
+ });
157
+ this.isTelemetryRaised = true;
158
+ }
159
+ };
160
+ /**
161
+ * @param {?} name
162
+ * @return {?}
163
+ */
164
+ MdoChannelV2Component.prototype.raiseCompetencyTelemetry = /**
165
+ * @param {?} name
166
+ * @return {?}
167
+ */
168
+ function (name) {
169
+ this.raiseTelemetry(name + " core expertise");
170
+ };
171
+ /**
172
+ * @param {?} name
173
+ * @return {?}
174
+ */
175
+ MdoChannelV2Component.prototype.raiseTelemetry = /**
176
+ * @param {?} name
177
+ * @return {?}
178
+ */
179
+ function (name) {
180
+ this.eventSvc.raiseInteractTelemetry({
181
+ type: 'click',
182
+ subType: 'mdo-channel',
183
+ id: "" + _.kebabCase(name).toLocaleLowerCase(),
184
+ }, {}, {
185
+ module: WsEvents.EnumTelemetrymodules.LEARN,
186
+ });
187
+ };
188
+ /**
189
+ * @param {?} event
190
+ * @return {?}
191
+ */
192
+ MdoChannelV2Component.prototype.hideCompetency = /**
193
+ * @param {?} event
194
+ * @return {?}
195
+ */
196
+ function (event) {
197
+ if (event) {
198
+ this.hideCompetencyBlock = true;
199
+ }
200
+ };
201
+ /**
202
+ * @param {?} _stripData
203
+ * @param {?} contentStrip
204
+ * @return {?}
205
+ */
206
+ MdoChannelV2Component.prototype.showAllContent = /**
207
+ * @param {?} _stripData
208
+ * @param {?} contentStrip
209
+ * @return {?}
210
+ */
211
+ function (_stripData, contentStrip) {
212
+ if (contentStrip && contentStrip.strips && contentStrip.strips.length) {
213
+ /** @type {?} */
214
+ var stripData = contentStrip.strips[0];
215
+ if (stripData && stripData.request) {
216
+ delete (stripData['loaderWidgets']);
217
+ this.router.navigate(["/app/learn/mdo-channels/" + this.channnelName + "/" + this.orgId + "/all-content"], { queryParams: { stripData: JSON.stringify(stripData) } });
218
+ }
219
+ }
220
+ else {
221
+ this.router.navigate(["/app/learn/browse-by/provider/" + this.channnelName + "/" + this.orgId + "/all-CBP"]);
222
+ }
223
+ };
224
+ MdoChannelV2Component.decorators = [
225
+ { type: Component, args: [{
226
+ selector: 'sb-uic-mdo-channel-v2',
227
+ template: "<ws-widget-btn-page-back [widgetData]=\"{ url: 'home', titles: titles }\">\r\n</ws-widget-btn-page-back>\r\n\r\n<div class=\"container-fluid\" id=\"section-micro-sites\">\r\n <div class=\"flex flex-col flex-1\">\r\n <ng-container *ngIf=\"sectionList?.length\">\r\n <ng-container *ngFor=\"let section of sectionList\">\r\n <ng-container *ngIf=\"section?.enabled\">\r\n <section id=\"{{section?.key}}\" class=\"w-full grid grid-cols-12 gap-4\" [ngClass]=\"{'container': section.wrapperClass}\">\r\n <ng-container *ngFor=\"let column of section.column\">\r\n <div id=\"{{column?.key}}\" class=\"col-span-{{column.colspan || 12}} \">\r\n <ng-container *ngIf=\"column?.enabled\" [ngSwitch]=\"column?.key\">\r\n <ng-container *ngSwitchCase=\"'topSection'\" [ngTemplateOutlet]=\"topSection\"\r\n [ngTemplateOutletContext]=\"{data: column?.data}\"></ng-container>\r\n <ng-container *ngSwitchCase=\"'topLearners'\" [ngTemplateOutlet]=\"topLearners\"\r\n [ngTemplateOutletContext]=\"{data: column?.data}\"></ng-container>\r\n <ng-container *ngSwitchCase=\"'mainContent'\" [ngTemplateOutlet]=\"mainContent\"\r\n [ngTemplateOutletContext]=\"{data: column?.data}\"></ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </section>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n\r\n<ng-template #topSection let-data=\"data\">\r\n <!-- top section desktop layout -->\r\n <div class=\"hidden md:block\">\r\n <div class=\"web-banner-background\">\r\n <div class=\"flex sticky-logo-square\">\r\n </div>\r\n <div class=\"flex items-center justify-center\">\r\n <div class=\"container\">\r\n <div class=\"grid grid-cols-12 gap-4 padding-top-xxxl mb-10\">\r\n <div class=\"col-span-12 md:col-span-6\">\r\n <div class=\"flex-1 flex flex-col mr-4 ws-mat-black-text\">\r\n <div class=\"\">\r\n <div class=\"flex items-center logo-square \">\r\n <img alt=\"Application Logo\" class=\"logo-img\" [src]=\"data?.logo\">\r\n </div>\r\n <h1 class=\" txt-ellipsis-2 break-words pt-10\"\r\n [style.color]=\"data.titleColor\">{{data.title || channnelName}}</h1>\r\n <p class=\"mat-body-1\" [style.color]=\"data.descriptionColor\">\r\n {{data?.description | slice:0:descriptionMaxLength}}\r\n <span *ngIf=\"data?.description?.length > descriptionMaxLength\">...</span>\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-span-12 md:col-span-6\">\r\n <div class=\"slider slider-box\" *ngIf=\"data.sliderData && data.sliderData.sliders\">\r\n <sb-uic-sliders [widgetData]=\"data.sliderData.sliders\" [styleData]=\"data.sliderData.styleData\" ></sb-uic-sliders>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n <!-- top section m-site layout -->\r\n <div class=\"block md:hidden\">\r\n <div class=\"col-span-12\">\r\n <div class=\"slider slider-box\" *ngIf=\"data.sliderData && data.sliderData.sliders\">\r\n <sb-uic-sliders [widgetData]=\"data.sliderData.sliders\" [styleData]=\"data.sliderData.styleData\" ></sb-uic-sliders>\r\n </div>\r\n </div>\r\n <div class=\"container px-4 flex flex-col mob-container\">\r\n <div class=\"mr-4 logo-box-container\">\r\n <div class=\"flex logo-box-square top mr-4\">\r\n <img alt=\"Application Logo\" class=\"logo-img\" [src]=\"data?.logo\">\r\n </div>\r\n </div>\r\n <div class=\"w-full md:w-9/12 flex-1 flex flex-col\">\r\n <h1 class=\" txt-ellipsis-2 break-words\">{{data?.title || channnelName}}</h1>\r\n <p class=\"mat-body-2\">\r\n {{data?.description | slice:0:descriptionMaxLength}}\r\n <span *ngIf=\"data?.description?.length > descriptionMaxLength\">...</span>\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"flex items-center justify-center\">\r\n <div class=\"container metrics-section\" >\r\n <div class=\"hidden md:block\">\r\n <div class=\"metrics\"\r\n [ngStyle]=\"{'background': data?.metrics?.background}\">\r\n <sb-uic-data-points\r\n [providerId]=\"orgId\"\r\n [fetchDataFromApi]=\"true\"\r\n [objectData]=\"data?.metrics?.data\"\r\n [layoutType]=\"'singleFlexeRow'\"\r\n [pageLayout]=\"'mdo'\">\r\n </sb-uic-data-points>\r\n </div>\r\n </div>\r\n <div class=\"block md:hidden pt-14 px-4\">\r\n <div class=\"mob-metrics mob-metrics-sec\">\r\n <sb-uic-data-points\r\n [providerId]=\"orgId\"\r\n [fetchDataFromApi]=\"true\"\r\n [objectData]=\"data?.metrics?.data\"\r\n [layoutType]=\"'singleRow'\"\r\n [pageLayout]=\"'mdo'\">\r\n </sb-uic-data-points>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #mainContent let-data=\"data\">\r\n <div class=\"flex items-center justify-center\" [ngStyle]=\"{'background': data.background}\">\r\n <div class=\"container\">\r\n <div class=\"block md:hidden col-span-12 padding-left-m padding-right-m padding-top-m padding-bottom-m\">\r\n <sb-uic-cbp-plan\r\n [layoutType]=\"'web'\"\r\n [mobileHeight]=\"false\"\r\n [fetchDataFromApi]=\"true\"\r\n [channelId]=\"orgId\"\r\n [objectData]=\"data?.cbpPlanSection?.data\">\r\n </sb-uic-cbp-plan>\r\n </div>\r\n <div class=\"block md:hidden col-span-12 mt-6\">\r\n <sb-uic-announcements\r\n [layoutType]=\"'mobile'\"\r\n (openDialog)=\"triggerOpenDialog($event)\"\r\n [objectData]=\"data?.announcementSection?.data\"\r\n [fetchDataFromApi]=\"false\"\r\n [channelId]=\"orgId\">\r\n </sb-uic-announcements>\r\n <div class=\"announcements-container\" *ngIf=\"showModal\">\r\n <div class=\"cursor-pointer close-share-dialog\">\r\n <mat-icon (click)=\"onClose()\" class=\"close-icon\">close</mat-icon>\r\n </div>\r\n <div class=\"share-modal px-3 pt-8\">\r\n <sb-uic-announcements\r\n [layoutType]=\"'web'\"\r\n (openDialog)=\"triggerOpenDialog($event)\"\r\n [objectData]=\"data?.announcementSection?.data\"\r\n [mobileHeight]=\"true\"\r\n [fetchDataFromApi]=\"true\"\r\n [channelId]=\"orgId\">\r\n </sb-uic-announcements>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid grid-cols-12 gap-4 padding-top-m mb-6\">\r\n <div class=\"col-span-12 md:col-span-{{data.tabSection.colspan}}\">\r\n <!-- Tabs Section -->\r\n <mat-tab-group animationDuration=\"0ms\" class=\"mat-tab-labels mytabs w-full \"\r\n [selectedIndex]=\"selectedIndex\" (selectedTabChange)=\"selectedIndex = $event.index; tabClicked($event)\">\r\n <mat-tab label=\"Content\" >\r\n <ng-template mat-tab-label i18n>\r\n Learn\r\n </ng-template>\r\n <ng-container *ngIf=\"data.tabSection.contentTab.length === contentTabEmptyResponseCount\">\r\n <div class=\"flex justify-center w-full\">\r\n <div class=\"margin-xl text-center\" >\r\n <img src=\"/assets/common/error-pages/empty_search.svg\" wsUtilsImageResponsive alt=\"No results\"\r\n class=\"margin-top-l margin-bottom-s\">\r\n <h2 class=\"mat-h2\" i18n=\"search route no result\">{{'learnsearch.noResults' | translate}}</h2>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div class=\"padding-top-l \">\r\n <ng-container [ngTemplateOutlet]=\"columnSectionDisplay\"\r\n [ngTemplateOutletContext]=\"{data: data.tabSection.contentTab}\"></ng-container>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Core Areas\">\r\n <ng-template mat-tab-label i18n>\r\n Competency\r\n </ng-template>\r\n <div>\r\n <ng-container [ngTemplateOutlet]=\"columnSectionDisplay\"\r\n [ngTemplateOutletContext]=\"{data: data.tabSection.coreAreasTab}\"></ng-container>\r\n </div>\r\n </mat-tab>\r\n </mat-tab-group>\r\n </div>\r\n <div class=\"col-span-12 md:col-span-4\">\r\n <div class=\"hidden md:block padding-top-xl padding-bottom-m\"\r\n *ngIf=\"data?.cbpPlanSection?.data\">\r\n <div class=\"pt-4\">\r\n <sb-uic-cbp-plan\r\n [layoutType]=\"'web'\"\r\n [mobileHeight]=\"false\"\r\n [fetchDataFromApi]=\"true\"\r\n [channelId]=\"orgId\"\r\n [objectData]=\"data?.cbpPlanSection?.data\">\r\n </sb-uic-cbp-plan>\r\n </div> \r\n </div>\r\n <div class=\"hidden md:block\" \r\n *ngIf=\"data?.announcementSection?.data\">\r\n <div class=\"pt-4\">\r\n <sb-uic-announcements\r\n [layoutType]=\"'web'\"\r\n [mobileHeight]=\"false\"\r\n [fetchDataFromApi]=\"true\"\r\n [channelId]=\"orgId\"\r\n [objectData]=\"data?.announcementSection?.data\">\r\n </sb-uic-announcements>\r\n </div> \r\n </div>\r\n </div> \r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n<!-- \r\n<ng-template #announcement let-data=\"data\">\r\n <div class=\"flex items-center justify-center\" [ngStyle]=\"{'background': data.background}\">\r\n <div class=\"w-full\">\r\n Announcement Section -->\r\n <!-- <h1>Announcement</h1>\r\n </div>\r\n </div>\r\n</ng-template> -->\r\n\r\n\r\n<ng-template #columnSectionDisplay let-data=\"data\">\r\n <ng-container *ngIf=\"data?.length\">\r\n <ng-container *ngFor=\"let section of data\">\r\n <ng-container *ngIf=\"section?.enabled\">\r\n <section id=\"{{section?.key}}\" class=\"w-full grid grid-cols-12 gap-4\" [ngClass]=\"{'container': section.wrapperClass}\">\r\n <ng-container *ngFor=\"let column of section.column\">\r\n <div id=\"{{column?.key}}\" class=\"col-span-{{column.colspan || 12}} \">\r\n <ng-container *ngIf=\"column?.enabled\" [ngSwitch]=\"column?.key\">\r\n <ng-container *ngSwitchCase=\"'competency'\" [ngTemplateOutlet]=\"competency\"\r\n [ngTemplateOutletContext]=\"{competency: column}\"></ng-container>\r\n <ng-container *ngSwitchCase=\"'contentRecommendedProgramStrip'\" [ngTemplateOutlet]=\"contentStrip\"\r\n [ngTemplateOutletContext]=\"{contentStrip: column?.data}\"></ng-container>\r\n <ng-container *ngSwitchCase=\"'contentRecommendedCoursesStrip'\" [ngTemplateOutlet]=\"contentStrip\"\r\n [ngTemplateOutletContext]=\"{contentStrip: column?.data}\"></ng-container>\r\n <ng-container *ngSwitchCase=\"'contentFeaturedStrip'\" [ngTemplateOutlet]=\"contentStrip\"\r\n [ngTemplateOutletContext]=\"{contentStrip: column?.data}\"></ng-container>\r\n <ng-container *ngSwitchCase=\"'contentcertificationsOfWeekStrip'\" [ngTemplateOutlet]=\"contentStrip\"\r\n [ngTemplateOutletContext]=\"{contentStrip: column?.data}\"></ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </section>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n</ng-template>\r\n\r\n\r\n<!-- Start Competencies -->\r\n<ng-template #competency let-competency=\"competency\">\r\n <div class=\"padding-top-l padding-bottom-l relative\" [style.background]=\"competency?.background\" *ngIf=\"!hideCompetencyBlock;else noData\">\r\n <div class=\"w-full container-balanced\">\r\n <p class=\"mat-body-1 pl-5 pr-4 md:pl-0 md:pr-0\">This section shows the list of top competencies users in this MDO are learning, based on the courses they've completed and enrolled in.</p>\r\n <div class=\"pl-4 pr-4 md:pl-0 md:pr-0\">\r\n <sb-uic-competency-passbook-mdo\r\n [dynamicColor]=\"'#999999'\"\r\n [dynamicAlignPills]=\"'start'\"\r\n [cardDisplayCount]=\"2\"\r\n (emptyResponse)=\"hideCompetency($event)\"\r\n (temeletryResponse)=\"raiseCompetencyTelemetry($event)\"\r\n [objectData]=\"competency\"\r\n [providerId]=\"orgId\"\r\n >\r\n </sb-uic-competency-passbook-mdo>\r\n </div>\r\n </div>\r\n <!-- <img class=\"absolute comp-back-img\" src=\"assets/icons/microsite/competency.svg\" alt=\"\"> -->\r\n </div>\r\n</ng-template>\r\n<!-- End Competencies -->\r\n\r\n<ng-template #contentStrip let-contentStrip=\"contentStrip\">\r\n <ng-container *ngIf=\"!contentStrip?.hideSection\">\r\n <div class=\"flex mb-8\">\r\n <div class=\"w-full\">\r\n <sb-uic-content-strip-with-tabs\r\n [emitViewAll]=\"true\"\r\n (viewAllResponse)=\"showAllContent($event, contentStrip)\"\r\n (telemtryResponse)=\"raiseTelemetryInteratEvent($event)\"\r\n (emptyResponse)=\"hideContentStrip($event, contentStrip)\"\r\n [providerId]=\"orgId\"\r\n [widgetData]=\"contentStrip\"\r\n [channnelName]=\"channnelName\"\r\n >\r\n </sb-uic-content-strip-with-tabs>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #noData>\r\n <div class=\"flex justify-center w-full\">\r\n <div class=\"margin-xl text-center\" >\r\n <img src=\"/assets/common/error-pages/empty_search.svg\" wsUtilsImageResponsive alt=\"No results\"\r\n class=\"margin-top-l margin-bottom-s\">\r\n <h2 class=\"mat-h2\" i18n=\"search route no result\">{{'learnsearch.noResults' | translate}}</h2>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #topLearners let-data=\"data\">\r\n <div class=\"flex items-center justify-center\">\r\n <div class=\"container top-learners margin-bottom-l margin-top-l\">\r\n <sb-uic-top-learners\r\n [objectData]=\"data\"\r\n [channnelName]=\"channnelName\"\r\n [channelId]=\"orgId\">\r\n </sb-uic-top-learners>\r\n </div>\r\n </div>\r\n</ng-template>",
228
+ styles: [".container-balanced{max-width:1202px;margin-left:auto!important;margin-right:auto!important}.container{max-width:1200px}.padding-top-xxxl{padding-top:47px}.banner-container{align-items:center;background:#eee;padding:16px;gap:2.5rem;justify-content:center}.web-banner-background{background-image:url(https://portal.karmayogiqa.nic.in/content-store/orgStore/0135071359030722569/1720698778795_MDO-channel-banner.png);background-size:cover;min-height:464px}.mob-container{background-image:url(https://portal.karmayogiqa.nic.in/content-store/orgStore/0135071359030722569/1720693634596_MDOChannel_RightGraphic%202.svg);background-position:right;background-repeat:no-repeat}.sticky-logo-square{position:absolute;top:215px;justify-content:end;border-bottom-right-radius:12px;border-top-right-radius:12px;background:#fff;display:flex;padding:10px;justify-content:end;height:53px}.logo-square{width:112px;max-height:73px;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.logo-box-container{width:157px;position:relative;height:64px}.logo-box-square{height:99px;width:157px;background:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px 0 rgba(0,0,0,.06)}.logo-box-square .logo-img{max-width:122px}.logo-box-square.top{position:absolute;top:-54px}.logo-img{-o-object-fit:contain;object-fit:contain;max-height:52px;height:96px;z-index:10}.metrics{border:3px solid #fff;border-radius:10px;align-items:center}.mob-metrics{overflow:auto}.metrics-section{margin-top:-30px}.empty-div{height:15px}.mob-metrics-sec{padding-top:1rem}.announcements-container{position:fixed;height:calc(100vh - 67px);background:rgba(19,19,19,.6392156863);width:100vw;top:0;left:0;z-index:1000}.close-announcements-dialog{position:absolute;right:30px;top:30px}.close-icon{color:#fff;border-radius:15px;float:right;position:absolute;top:15px;right:15px}@media screen and (max-width:768px){::ng-deep.recommendedProgram .mat-tab-header{padding-left:20px}::ng-deep.featuredCourses .mat-tab-header{padding-left:20px}.metrics-section{margin-top:0}.top-learners{padding-left:30px}}@media screen and (min-width:769px){.sticky-logo-square{width:8%}}@media screen and (min-width:1280px){.sticky-logo-square{width:10%}}@media screen and (min-width:1520px){.sticky-logo-square{width:15%}}@media screen and (min-width:1904px){.sticky-logo-square{width:20%}}::ng-deep .mytabs .mat-tab-label.mat-tab-label-active.cdk-keyboard-focused:not(.mat-tab-disabled),::ng-deep .mytabs .mat-tab-label.mat-tab-label-active:not(.mat-tab-disabled){font-weight:700;color:#000;opacity:1}"]
229
+ }] }
230
+ ];
231
+ /** @nocollapse */
232
+ MdoChannelV2Component.ctorParameters = function () { return [
233
+ { type: ActivatedRoute },
234
+ { type: Router },
235
+ { type: EventService },
236
+ { type: TranslateService },
237
+ { type: MultilingualTranslationsService }
238
+ ]; };
239
+ MdoChannelV2Component.propDecorators = {
240
+ sectionList: [{ type: Input }]
241
+ };
242
+ return MdoChannelV2Component;
243
+ }());
244
+ export { MdoChannelV2Component };
245
+ if (false) {
246
+ /** @type {?} */
247
+ MdoChannelV2Component.prototype.sectionList;
248
+ /** @type {?} */
249
+ MdoChannelV2Component.prototype.channnelName;
250
+ /** @type {?} */
251
+ MdoChannelV2Component.prototype.orgId;
252
+ /** @type {?} */
253
+ MdoChannelV2Component.prototype.selectedIndex;
254
+ /** @type {?} */
255
+ MdoChannelV2Component.prototype.hideCompetencyBlock;
256
+ /** @type {?} */
257
+ MdoChannelV2Component.prototype.contentTabEmptyResponseCount;
258
+ /** @type {?} */
259
+ MdoChannelV2Component.prototype.titles;
260
+ /** @type {?} */
261
+ MdoChannelV2Component.prototype.showModal;
262
+ /** @type {?} */
263
+ MdoChannelV2Component.prototype.descriptionMaxLength;
264
+ /** @type {?} */
265
+ MdoChannelV2Component.prototype.isTelemetryRaised;
266
+ /**
267
+ * @type {?}
268
+ * @private
269
+ */
270
+ MdoChannelV2Component.prototype.route;
271
+ /**
272
+ * @type {?}
273
+ * @private
274
+ */
275
+ MdoChannelV2Component.prototype.router;
276
+ /**
277
+ * @type {?}
278
+ * @private
279
+ */
280
+ MdoChannelV2Component.prototype.eventSvc;
281
+ /**
282
+ * @type {?}
283
+ * @private
284
+ */
285
+ MdoChannelV2Component.prototype.translate;
286
+ /**
287
+ * @type {?}
288
+ * @private
289
+ */
290
+ MdoChannelV2Component.prototype.langtranslations;
291
+ }
292
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWRvLWNoYW5uZWwtdjIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN1bmJpcmQtY2IvY29uc3VtcHRpb24vIiwic291cmNlcyI6WyJsaWIvX2NvbW1vbi9taWNyb3NpdGVzL21kby1jaGFubmVscy9tZG8tY2hhbm5lbC12Mi9tZG8tY2hhbm5lbC12Mi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFBO0FBRXhELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTs7QUFFN0QsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUE7QUFDM0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDdEQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFdEU7SUF3QkUsK0JBQ1UsS0FBcUIsRUFDckIsTUFBYyxFQUNkLFFBQXNCLEVBQ3RCLFNBQTJCLEVBQzNCLGdCQUFpRDtRQUwzRCxpQkF1QkM7UUF0QlMsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGFBQVEsR0FBUixRQUFRLENBQWM7UUFDdEIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQztRQXZCbEQsZ0JBQVcsR0FBTyxFQUFFLENBQUE7UUFDN0IsaUJBQVksR0FBRyxFQUFFLENBQUE7UUFDakIsVUFBSyxHQUFHLEVBQUUsQ0FBQTtRQUNWLGtCQUFhLEdBQUcsQ0FBQyxDQUFBO1FBQ2pCLHdCQUFtQixHQUFZLEtBQUssQ0FBQTtRQUNwQyxpQ0FBNEIsR0FBVyxDQUFDLENBQUE7UUFDeEMsV0FBTSxHQUFHO1lB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LENBQUM7WUFDN0MsSUFBSSxTQUFTLElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRTtnQkFDbEMsT0FBTSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFBO2dCQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FDbEIsQ0FBQyw2QkFBMkIsSUFBSSxDQUFDLFlBQVksU0FBSSxJQUFJLENBQUMsS0FBSyxpQkFBYyxDQUFDLEVBQzFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7YUFDN0Q7U0FDRjthQUFNO1lBQ0osSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQ25CLENBQUMsbUNBQWlDLElBQUksQ0FBQyxZQUFZLFNBQUksSUFBSSxDQUFDLEtBQUssYUFBVSxDQUFDLENBQUMsQ0FBQTtTQUNoRjtJQUNILENBQUM7O2dCQW5KRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsZzlpQkFBOEM7O2lCQUUvQzs7OztnQkFYUSxjQUFjO2dCQUFFLE1BQU07Z0JBQ3RCLFlBQVk7Z0JBR1osZ0JBQWdCO2dCQUNoQiwrQkFBK0I7Ozs4QkFRckMsS0FBSzs7SUErSVIsNEJBQUM7Q0FBQSxBQXJKRCxJQXFKQztTQWhKWSxxQkFBcUI7OztJQUNoQyw0Q0FBNkI7O0lBQzdCLDZDQUFpQjs7SUFDakIsc0NBQVU7O0lBQ1YsOENBQWlCOztJQUNqQixvREFBb0M7O0lBQ3BDLDZEQUF3Qzs7SUFDeEMsdUNBT0M7O0lBQ0QsMENBQTBCOztJQUMxQixxREFBMEI7O0lBQzFCLGtEQUFrQzs7Ozs7SUFHaEMsc0NBQTZCOzs7OztJQUM3Qix1Q0FBc0I7Ozs7O0lBQ3RCLHlDQUE4Qjs7Ozs7SUFDOUIsMENBQW1DOzs7OztJQUNuQyxpREFBeUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBNYXRUYWJDaGFuZ2VFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJ1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xyXG5pbXBvcnQgeyBFdmVudFNlcnZpY2UsIFdzRXZlbnRzIH0gZnJvbSAnQHN1bmJpcmQtY2IvdXRpbHMtdjInXHJcbi8qIHRzbGludDpkaXNhYmxlICovXHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJ1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcclxuaW1wb3J0IHsgTXVsdGlsaW5ndWFsVHJhbnNsYXRpb25zU2VydmljZSB9IGZyb20gJ0BzdW5iaXJkLWNiL3V0aWxzLXYyJ1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYi11aWMtbWRvLWNoYW5uZWwtdjInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZG8tY2hhbm5lbC12Mi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbWRvLWNoYW5uZWwtdjIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWRvQ2hhbm5lbFYyQ29tcG9uZW50ICBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgc2VjdGlvbkxpc3Q6YW55ID0gW11cclxuICBjaGFubm5lbE5hbWUgPSAnJ1xyXG4gIG9yZ0lkID0gJydcclxuICBzZWxlY3RlZEluZGV4ID0gMFxyXG4gIGhpZGVDb21wZXRlbmN5QmxvY2s6IGJvb2xlYW4gPSBmYWxzZVxyXG4gIGNvbnRlbnRUYWJFbXB0eVJlc3BvbnNlQ291bnQ6IG51bWJlciA9IDBcclxuICB0aXRsZXMgPSBbXHJcbiAgICB7IHRpdGxlOiAnTGVhcm4nLCB1cmw6ICcvcGFnZS9sZWFybicsIGljb246ICdzY2hvb2wnLCBkaXNhYmxlVHJhbnNsYXRlOiBmYWxzZSB9LFxyXG4gICAge1xyXG4gICAgICB0aXRsZTogYE1ETyBDaGFubmVsc2AsXHJcbiAgICAgIHVybDogYC9hcHAvbGVhcm4vbWRvLWNoYW5uZWxzL2FsbC1jaGFubmVsc2AsXHJcbiAgICAgIGljb246ICcnLCBkaXNhYmxlVHJhbnNsYXRlOiB0cnVlLFxyXG4gICAgfSxcclxuICBdXHJcbiAgc2hvd01vZGFsOiBib29sZWFuID0gZmFsc2VcclxuICBkZXNjcmlwdGlvbk1heExlbmd0aCA9IDUwMFxyXG4gIGlzVGVsZW1ldHJ5UmFpc2VkOiBib29sZWFuID0gZmFsc2VcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGV2ZW50U3ZjOiBFdmVudFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgbGFuZ3RyYW5zbGF0aW9uczogTXVsdGlsaW5ndWFsVHJhbnNsYXRpb25zU2VydmljZSxcclxuICApIHsgXHJcbiAgICBpZiAodGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhICYmIHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5mb3JtRGF0YVxyXG4gICAgICAmJiB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuZm9ybURhdGEuZGF0YVxyXG4gICAgICAmJiB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuZm9ybURhdGEuZGF0YS5yZXN1bHRcclxuICAgICAgJiYgdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmZvcm1EYXRhLmRhdGEucmVzdWx0LmZvcm1cclxuICAgICAgJiYgdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmZvcm1EYXRhLmRhdGEucmVzdWx0LmZvcm0uZGF0YVxyXG4gICAgICAmJiB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuZm9ybURhdGEuZGF0YS5yZXN1bHQuZm9ybS5kYXRhLnNlY3Rpb25MaXN0XHJcbiAgICApIHtcclxuICAgICAgdGhpcy5zZWN0aW9uTGlzdCA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5mb3JtRGF0YS5kYXRhLnJlc3VsdC5mb3JtLmRhdGEuc2VjdGlvbkxpc3RcclxuICAgIH1cclxuICAgIHRoaXMubGFuZ3RyYW5zbGF0aW9ucy5sYW5ndWFnZVNlbGVjdGVkT2JzZXJ2YWJsZS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICBpZiAobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3dlYnNpdGVMYW5ndWFnZScpKSB7XHJcbiAgICAgICAgdGhpcy50cmFuc2xhdGUuc2V0RGVmYXVsdExhbmcoJ2VuJylcclxuICAgICAgICBjb25zdCBsYW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3dlYnNpdGVMYW5ndWFnZScpIVxyXG4gICAgICAgIHRoaXMudHJhbnNsYXRlLnVzZShsYW5nKVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnJvdXRlLnBhcmFtcy5zdWJzY3JpYmUocGFyYW1zID0+IHtcclxuICAgICAgdGhpcy5jaGFubm5lbE5hbWUgPSBwYXJhbXNbJ2NoYW5uZWwnXVxyXG4gICAgICB0aGlzLm9yZ0lkID0gcGFyYW1zWydvcmdJZCddXHJcbiAgICAgIHRoaXMudGl0bGVzLnB1c2goe1xyXG4gICAgICAgIHRpdGxlOiB0aGlzLmNoYW5ubmVsTmFtZSwgaWNvbjogJycsIHVybDogJ25vbmUnLCBkaXNhYmxlVHJhbnNsYXRlOiB0cnVlLFxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0YWJDbGlja2VkKHRhYkV2ZW50OiBNYXRUYWJDaGFuZ2VFdmVudCkge1xyXG4gICAgdGhpcy5yYWlzZVRlbGVtZXRyeShgJHt0YWJFdmVudC50YWIudGV4dExhYmVsfSB0YWJgKVxyXG4gIH1cclxuICBoaWRlQ29udGVudFN0cmlwKGV2ZW50OiBhbnksIGNvbnRlbnRTdHJpcERhdGE6IGFueSkge1xyXG4gICAgaWYgKGV2ZW50KSB7XHJcbiAgICAgIGNvbnRlbnRTdHJpcERhdGFbJ2hpZGVTZWN0aW9uJ10gPSB0cnVlXHJcbiAgICAgIHRoaXMuY29udGVudFRhYkVtcHR5UmVzcG9uc2VDb3VudCA9IHRoaXMuY29udGVudFRhYkVtcHR5UmVzcG9uc2VDb3VudCArIDFcclxuICAgICAgLy8gaWYodGhpcy5jb250ZW50VGFiRW1wdHlSZXNwb25zZUNvdW50ID09PSA0ICkge1xyXG4gICAgICAvLyAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9IDFcclxuICAgICAgLy8gfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdHJpZ2dlck9wZW5EaWFsb2coZXZlbnQ6IGJvb2xlYW4pIHtcclxuICAgIGlmKGV2ZW50KSB7XHJcbiAgICAgIHRoaXMuc2hvd01vZGFsID0gdHJ1ZVxyXG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJ2hpZGRlbidcclxuICAgIH1cclxuICAgIHRoaXMucmFpc2VUZWxlbWV0cnkoJ2J0biBvcGVuIGtleSBhbm5vdWNlbWVudHMnKVxyXG4gIH1cclxuXHJcbiAgb25DbG9zZSgpIHtcclxuICAgIHRoaXMuc2hvd01vZGFsID0gZmFsc2VcclxuICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnYXV0bydcclxuICAgIHRoaXMucmFpc2VUZWxlbWV0cnkoJ2J0biBjbG9zZSBrZXkgYW5ub3VjZW1lbnRzJylcclxuICB9XHJcblxyXG4gIHJhaXNlVGVsZW1ldHJ5SW50ZXJhdEV2ZW50KGV2ZW50OiBhbnkpIHtcclxuICAgIGlmIChldmVudCAmJiBldmVudC52aWV3TW9yZVVybCkge1xyXG4gICAgICB0aGlzLnJhaXNlVGVsZW1ldHJ5KGAke2V2ZW50LnN0cmlwVGl0bGV9ICR7ZXZlbnQudmlld01vcmVVcmwudmlld01vcmVUZXh0fWApXHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMuaXNUZWxlbWV0cnlSYWlzZWQgJiYgZXZlbnQgJiYgIWV2ZW50LnZpZXdNb3JlVXJsKSB7XHJcbiAgICAgIHRoaXMuZXZlbnRTdmMucmFpc2VJbnRlcmFjdFRlbGVtZXRyeShcclxuICAgICAgICB7XHJcbiAgICAgICAgICB0eXBlOiAnY2xpY2snLFxyXG4gICAgICAgICAgc3ViVHlwZTogJ21kby1jaGFubmVsJyxcclxuICAgICAgICAgIGlkOiBgJHtfLmtlYmFiQ2FzZShldmVudC50eXBlT2ZUZWxlbWV0cnkudG9Mb2NhbGVMb3dlckNhc2UoKSl9LWNhcmRgLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgaWQ6IGV2ZW50LmlkZW50aWZpZXIsXHJcbiAgICAgICAgICB0eXBlOiBldmVudC5wcmltYXJ5Q2F0ZWdvcnksXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwYWdlSWRFeHQ6IGAke18ua2ViYWJDYXNlKGV2ZW50LnByaW1hcnlDYXRlZ29yeS50b0xvY2FsZUxvd2VyQ2FzZSgpKX0tY2FyZGAsXHJcbiAgICAgICAgICBtb2R1bGU6IFdzRXZlbnRzLkVudW1UZWxlbWV0cnltb2R1bGVzLkxFQVJOLFxyXG4gICAgICAgIH1cclxuICAgICAgKVxyXG4gICAgICB0aGlzLmlzVGVsZW1ldHJ5UmFpc2VkID0gdHJ1ZVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmFpc2VDb21wZXRlbmN5VGVsZW1ldHJ5KG5hbWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5yYWlzZVRlbGVtZXRyeShgJHtuYW1lfSBjb3JlIGV4cGVydGlzZWApXHJcbiAgfVxyXG5cclxuICByYWlzZVRlbGVtZXRyeShuYW1lOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuZXZlbnRTdmMucmFpc2VJbnRlcmFjdFRlbGVtZXRyeShcclxuICAgICAge1xyXG4gICAgICAgIHR5cGU6ICdjbGljaycsXHJcbiAgICAgICAgc3ViVHlwZTogJ21kby1jaGFubmVsJyxcclxuICAgICAgICBpZDogYCR7Xy5rZWJhYkNhc2UobmFtZSkudG9Mb2NhbGVMb3dlckNhc2UoKX1gLFxyXG4gICAgICB9LFxyXG4gICAgICB7fSxcclxuICAgICAge1xyXG4gICAgICAgIG1vZHVsZTogV3NFdmVudHMuRW51bVRlbGVtZXRyeW1vZHVsZXMuTEVBUk4sXHJcbiAgICAgIH1cclxuICAgIClcclxuICB9XHJcblxyXG4gIGhpZGVDb21wZXRlbmN5KGV2ZW50OiBhbnkpIHtcclxuICAgIGlmIChldmVudCkge1xyXG4gICAgICB0aGlzLmhpZGVDb21wZXRlbmN5QmxvY2sgPSB0cnVlXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzaG93QWxsQ29udGVudChfc3RyaXBEYXRhOiBhbnksIGNvbnRlbnRTdHJpcDogYW55KSB7XHJcbiAgICBpZiAoY29udGVudFN0cmlwICYmIGNvbnRlbnRTdHJpcC5zdHJpcHMgJiYgY29udGVudFN0cmlwLnN0cmlwcy5sZW5ndGgpIHtcclxuICAgICAgY29uc3Qgc3RyaXBEYXRhOiBhbnkgPSBjb250ZW50U3RyaXAuc3RyaXBzWzBdXHJcbiAgICAgIGlmIChzdHJpcERhdGEgJiYgc3RyaXBEYXRhLnJlcXVlc3QpIHtcclxuICAgICAgICBkZWxldGUoc3RyaXBEYXRhWydsb2FkZXJXaWRnZXRzJ10pXHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoXHJcbiAgICAgICAgICBbYC9hcHAvbGVhcm4vbWRvLWNoYW5uZWxzLyR7dGhpcy5jaGFubm5lbE5hbWV9LyR7dGhpcy5vcmdJZH0vYWxsLWNvbnRlbnRgXSxcclxuICAgICAgICAgIHsgcXVlcnlQYXJhbXM6IHsgc3RyaXBEYXRhOiBKU09OLnN0cmluZ2lmeShzdHJpcERhdGEpIH0gfSlcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFxyXG4gICAgICAgIFtgL2FwcC9sZWFybi9icm93c2UtYnkvcHJvdmlkZXIvJHt0aGlzLmNoYW5ubmVsTmFtZX0vJHt0aGlzLm9yZ0lkfS9hbGwtQ0JQYF0pXHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=