@sunbird-cb/consumption 0.0.53 → 0.0.54

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 (64) hide show
  1. package/bundles/sunbird-cb-consumption.umd.js +2282 -933
  2. package/bundles/sunbird-cb-consumption.umd.js.map +1 -1
  3. package/bundles/sunbird-cb-consumption.umd.min.js +2 -2
  4. package/bundles/sunbird-cb-consumption.umd.min.js.map +1 -1
  5. package/esm2015/lib/_common/announcements/announcements.component.js +18 -3
  6. package/esm2015/lib/_common/cards/card-wide/card-wide.component.js +1 -1
  7. package/esm2015/lib/_common/cbp-plan/cbp-plan.component.js +166 -0
  8. package/esm2015/lib/_common/cbp-plan/cbp-plan.module.js +27 -0
  9. package/esm2015/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.js +209 -33
  10. package/esm2015/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.model.js +3 -1
  11. package/esm2015/lib/_common/data-points/data-points.component.js +24 -3
  12. package/esm2015/lib/_common/microsites/mdo-channels/mdo-channel-v1/mdo-channel-v1.component.js +23 -0
  13. package/esm2015/lib/_common/microsites/mdo-channels/mdo-channel-v2/mdo-channel-v2.component.js +255 -0
  14. package/esm2015/lib/_common/microsites/mdo-channels/mdo-channel.module.js +52 -0
  15. package/esm2015/lib/_common/microsites/providers/providers-v2/providers-v2.component.js +269 -0
  16. package/esm2015/lib/_common/microsites/providers/providers.module.js +51 -0
  17. package/esm2015/lib/_common/top-learners/top-learners.component.js +155 -0
  18. package/esm2015/lib/_common/top-learners/top-learners.module.js +21 -0
  19. package/esm2015/lib/_common/user-content-rating/user-content-rating-lib.component.js +3 -3
  20. package/esm2015/lib/_services/insite-data.service.js +9 -2
  21. package/esm2015/lib/consumption.module.js +7 -3
  22. package/esm2015/public-api.js +5 -1
  23. package/esm2015/sunbird-cb-consumption.js +52 -47
  24. package/esm5/lib/_common/announcements/announcements.component.js +21 -3
  25. package/esm5/lib/_common/cards/card-wide/card-wide.component.js +1 -1
  26. package/esm5/lib/_common/cbp-plan/cbp-plan.component.js +185 -0
  27. package/esm5/lib/_common/cbp-plan/cbp-plan.module.js +31 -0
  28. package/esm5/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.js +204 -16
  29. package/esm5/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.model.js +3 -1
  30. package/esm5/lib/_common/data-points/data-points.component.js +29 -3
  31. package/esm5/lib/_common/microsites/mdo-channels/mdo-channel-v1/mdo-channel-v1.component.js +29 -0
  32. package/esm5/lib/_common/microsites/mdo-channels/mdo-channel-v2/mdo-channel-v2.component.js +292 -0
  33. package/esm5/lib/_common/microsites/mdo-channels/mdo-channel.module.js +56 -0
  34. package/esm5/lib/_common/microsites/providers/providers-v2/providers-v2.component.js +312 -0
  35. package/esm5/lib/_common/microsites/providers/providers.module.js +55 -0
  36. package/esm5/lib/_common/top-learners/top-learners.component.js +172 -0
  37. package/esm5/lib/_common/top-learners/top-learners.module.js +25 -0
  38. package/esm5/lib/_common/user-content-rating/user-content-rating-lib.component.js +3 -3
  39. package/esm5/lib/_services/insite-data.service.js +12 -2
  40. package/esm5/lib/consumption.module.js +7 -3
  41. package/esm5/public-api.js +5 -1
  42. package/esm5/sunbird-cb-consumption.js +52 -47
  43. package/fesm2015/sunbird-cb-consumption.js +1520 -331
  44. package/fesm2015/sunbird-cb-consumption.js.map +1 -1
  45. package/fesm5/sunbird-cb-consumption.js +2226 -886
  46. package/fesm5/sunbird-cb-consumption.js.map +1 -1
  47. package/lib/_common/announcements/announcements.component.d.ts +3 -0
  48. package/lib/_common/cbp-plan/cbp-plan.component.d.ts +25 -0
  49. package/lib/_common/cbp-plan/cbp-plan.module.d.ts +2 -0
  50. package/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.d.ts +3 -0
  51. package/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.model.d.ts +1 -0
  52. package/lib/_common/data-points/data-points.component.d.ts +1 -0
  53. package/lib/_common/microsites/mdo-channels/mdo-channel-v1/mdo-channel-v1.component.d.ts +5 -0
  54. package/lib/_common/microsites/mdo-channels/mdo-channel-v2/mdo-channel-v2.component.d.ts +39 -0
  55. package/lib/_common/microsites/mdo-channels/mdo-channel.module.d.ts +2 -0
  56. package/lib/_common/microsites/providers/providers-v2/providers-v2.component.d.ts +36 -0
  57. package/lib/_common/microsites/providers/providers.module.d.ts +2 -0
  58. package/lib/_common/top-learners/top-learners.component.d.ts +18 -0
  59. package/lib/_common/top-learners/top-learners.module.d.ts +2 -0
  60. package/lib/_services/insite-data.service.d.ts +1 -0
  61. package/package.json +1 -1
  62. package/public-api.d.ts +4 -0
  63. package/sunbird-cb-consumption.d.ts +50 -45
  64. package/sunbird-cb-consumption.metadata.json +1 -1
@@ -2,7 +2,7 @@
2
2
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/router'), require('rxjs'), require('rxjs/operators'), require('@sunbird-cb/utils-v2'), require('@angular/material'), require('@sunbird-cb/resolver-v2'), require('@angular/common/http'), require('lodash'), require('moment'), require('@ngx-translate/core'), require('dayjs'), require('@ngx-translate/http-loader'), require('@angular/cdk/layout'), require('@angular/platform-browser'), require('hammerjs'), require('@angular/forms'), require('jspdf')) :
3
3
  typeof define === 'function' && define.amd ? define('@sunbird-cb/consumption', ['exports', '@angular/core', '@angular/common', '@angular/router', 'rxjs', 'rxjs/operators', '@sunbird-cb/utils-v2', '@angular/material', '@sunbird-cb/resolver-v2', '@angular/common/http', 'lodash', 'moment', '@ngx-translate/core', 'dayjs', '@ngx-translate/http-loader', '@angular/cdk/layout', '@angular/platform-browser', 'hammerjs', '@angular/forms', 'jspdf'], factory) :
4
4
  (global = global || self, factory((global['sunbird-cb'] = global['sunbird-cb'] || {}, global['sunbird-cb'].consumption = {}), global.ng.core, global.ng.common, global.ng.router, global.rxjs, global.rxjs.operators, global['@sunbird-cb/utils-v2'], global.ng.material, global['@sunbird-cb/resolver-v2'], global.ng.common.http, global.lodash, global.moment, global.core$1, global.dayjs_, global.httpLoader, global.ng.cdk.layout, global.ng.platformBrowser, global.hammerjs, global.ng.forms, global.jspdf));
5
- }(this, (function (exports, core, common, router, rxjs, operators, utilsV2, material, resolverV2, http, lodash, moment$1, core$1, dayjs_, httpLoader, layout, platformBrowser, Hammer, forms, jspdf) { 'use strict';
5
+ }(this, (function (exports, core, common, router, rxjs, operators, utilsV2, material, resolverV2, http, lodash, moment$2, core$1, dayjs_, httpLoader, layout, platformBrowser, Hammer, forms, jspdf) { 'use strict';
6
6
 
7
7
  Hammer = Hammer && Hammer.hasOwnProperty('default') ? Hammer['default'] : Hammer;
8
8
 
@@ -1683,7 +1683,7 @@
1683
1683
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
1684
1684
  */
1685
1685
  /** @type {?} */
1686
- var moment = moment$1;
1686
+ var moment = moment$2;
1687
1687
  // tslint:enable
1688
1688
  // TODO: move this in some common place
1689
1689
  /** @type {?} */
@@ -3868,6 +3868,8 @@
3868
3868
  /** @type {?} */
3869
3869
  IStripUnitContentData.prototype.stripConfig;
3870
3870
  /** @type {?|undefined} */
3871
+ IStripUnitContentData.prototype.tabsType;
3872
+ /** @type {?|undefined} */
3871
3873
  IStripUnitContentData.prototype.tabs;
3872
3874
  /** @type {?|undefined} */
3873
3875
  IStripUnitContentData.prototype.stripName;
@@ -5165,6 +5167,7 @@
5165
5167
  disableTranslate: strip.disableTranslate,
5166
5168
  sliderConfig: strip.sliderConfig,
5167
5169
  tabs: tabsResults ? tabsResults : strip.tabs,
5170
+ tabsType: strip.tabsType ? strip.tabsType : '',
5168
5171
  stripName: strip.name,
5169
5172
  mode: strip.mode,
5170
5173
  stripConfig: strip.stripConfig,
@@ -5322,6 +5325,12 @@
5322
5325
  else if (currentTabFromMap.request.trendingSearch) {
5323
5326
  this.getTabDataByNewReqTrending(currentStrip, tabEvent.index, currentTabFromMap, true);
5324
5327
  }
5328
+ else if (currentTabFromMap.request.topContent) {
5329
+ this.getTabDataByNewReqTopContent(currentStrip, tabEvent.index, currentTabFromMap, true);
5330
+ }
5331
+ else if (currentTabFromMap.request.playlistRead) {
5332
+ this.getTabDataByNewReqPlaylistReadContent(currentStrip, tabEvent.index, currentTabFromMap, true);
5333
+ }
5325
5334
  if (stripMap && stripMap.tabs && stripMap.tabs[tabEvent.index]) {
5326
5335
  stripMap.tabs[tabEvent.index].tabLoading = false;
5327
5336
  }
@@ -5767,7 +5776,7 @@
5767
5776
  function (strip, calculateParentStatus) {
5768
5777
  if (calculateParentStatus === void 0) { calculateParentStatus = true; }
5769
5778
  return __awaiter(this, void 0, void 0, function () {
5770
- var originalFilters, response, error_5;
5779
+ var originalFilters, firstTab, allTabs, currentTabFromMap, response, error_5;
5771
5780
  return __generator(this, function (_a) {
5772
5781
  switch (_a.label) {
5773
5782
  case 0:
@@ -5780,7 +5789,17 @@
5780
5789
  originalFilters = strip.request.topContent.request.filters;
5781
5790
  strip.request.topContent.request.filters = this.postMethodFilters(strip.request.topContent.request.filters);
5782
5791
  }
5783
- _a.label = 1;
5792
+ if (!(strip.tabs && strip.tabs.length)) return [3 /*break*/, 1];
5793
+ // TODO: Have to extract requestRequired to outer level of tabs config
5794
+ firstTab = strip.tabs[0];
5795
+ if (firstTab.requestRequired) {
5796
+ if (this.stripsResultDataMap[strip.key] && this.stripsResultDataMap[strip.key].tabs) {
5797
+ allTabs = this.stripsResultDataMap[strip.key].tabs;
5798
+ currentTabFromMap = (/** @type {?} */ ((allTabs && allTabs.length && allTabs[0])));
5799
+ this.getTabDataByNewReqTopContent(strip, 0, currentTabFromMap, calculateParentStatus);
5800
+ }
5801
+ }
5802
+ return [3 /*break*/, 4];
5784
5803
  case 1:
5785
5804
  _a.trys.push([1, 3, , 4]);
5786
5805
  return [4 /*yield*/, this.postRequestMethod(strip, strip.request.topContent, strip.request.apiUrl, calculateParentStatus)];
@@ -5867,6 +5886,64 @@
5867
5886
  });
5868
5887
  });
5869
5888
  };
5889
+ /**
5890
+ * @param {?} strip
5891
+ * @param {?} tabIndex
5892
+ * @param {?} currentTab
5893
+ * @param {?} calculateParentStatus
5894
+ * @return {?}
5895
+ */
5896
+ ContentStripWithTabsLibComponent.prototype.getTabDataByNewReqTopContent = /**
5897
+ * @param {?} strip
5898
+ * @param {?} tabIndex
5899
+ * @param {?} currentTab
5900
+ * @param {?} calculateParentStatus
5901
+ * @return {?}
5902
+ */
5903
+ function (strip, tabIndex, currentTab, calculateParentStatus) {
5904
+ return __awaiter(this, void 0, void 0, function () {
5905
+ var response, widgets, tabResults, allTabs, error_7;
5906
+ return __generator(this, function (_a) {
5907
+ switch (_a.label) {
5908
+ case 0:
5909
+ if (currentTab.request &&
5910
+ currentTab.request.topContent &&
5911
+ currentTab.request.topContent.request &&
5912
+ currentTab.request.topContent.request.filters) {
5913
+ currentTab.request.topContent.request.filters = this.postMethodFilters(currentTab.request.topContent.request.filters);
5914
+ }
5915
+ _a.label = 1;
5916
+ case 1:
5917
+ _a.trys.push([1, 3, , 4]);
5918
+ // const response = await this.searchV6Request(strip, currentTab.request, calculateParentStatus);
5919
+ return [4 /*yield*/, this.postRequestMethod(strip, currentTab.request.topContent, currentTab.request.apiUrl, calculateParentStatus)];
5920
+ case 2:
5921
+ response = _a.sent();
5922
+ if (response.results && response.results.result) {
5923
+ widgets = this.transformContentsToWidgets(response.results.result.content, strip);
5924
+ tabResults = [];
5925
+ if (this.stripsResultDataMap[strip.key] && this.stripsResultDataMap[strip.key].tabs) {
5926
+ allTabs = this.stripsResultDataMap[strip.key].tabs;
5927
+ if (allTabs && allTabs.length && allTabs[tabIndex]) {
5928
+ allTabs[tabIndex] = __assign({}, allTabs[tabIndex], { widgets: widgets, fetchTabStatus: 'done' });
5929
+ tabResults = allTabs;
5930
+ }
5931
+ }
5932
+ this.processStrip(strip, widgets, 'done', calculateParentStatus, response.viewMoreUrl, tabResults // tabResults as widgets
5933
+ );
5934
+ }
5935
+ else {
5936
+ this.processStrip(strip, [], 'error', calculateParentStatus, null);
5937
+ }
5938
+ return [3 /*break*/, 4];
5939
+ case 3:
5940
+ error_7 = _a.sent();
5941
+ return [3 /*break*/, 4];
5942
+ case 4: return [2 /*return*/];
5943
+ }
5944
+ });
5945
+ });
5946
+ };
5870
5947
  /**
5871
5948
  * @param {?} stripData
5872
5949
  * @return {?}
@@ -6040,7 +6117,7 @@
6040
6117
  function (filters) {
6041
6118
  if (filters.organisation &&
6042
6119
  filters.organisation.indexOf('<orgID>') >= 0) {
6043
- filters.organisation = this.providerId;
6120
+ filters.organisation = filters.organisation.replace('<orgID>', this.providerId);
6044
6121
  }
6045
6122
  return filters;
6046
6123
  };
@@ -6056,7 +6133,7 @@
6056
6133
  */
6057
6134
  function (apiUrl, id) {
6058
6135
  /** @type {?} */
6059
- var formedUrl = '';
6136
+ var formedUrl = apiUrl;
6060
6137
  if (apiUrl.indexOf('<bookmarkId>') >= 0) {
6061
6138
  formedUrl = apiUrl.replace('<bookmarkId>', this.environment.mdoChannelsBookmarkId);
6062
6139
  }
@@ -6102,7 +6179,7 @@
6102
6179
  function (strip, calculateParentStatus) {
6103
6180
  if (calculateParentStatus === void 0) { calculateParentStatus = true; }
6104
6181
  return __awaiter(this, void 0, void 0, function () {
6105
- var originalFilters, response, content, error_7;
6182
+ var originalFilters, response, content, error_8;
6106
6183
  return __generator(this, function (_a) {
6107
6184
  switch (_a.label) {
6108
6185
  case 0:
@@ -6129,7 +6206,7 @@
6129
6206
  }
6130
6207
  return [3 /*break*/, 4];
6131
6208
  case 3:
6132
- error_7 = _a.sent();
6209
+ error_8 = _a.sent();
6133
6210
  this.emptyResponse.emit(true);
6134
6211
  return [3 /*break*/, 4];
6135
6212
  case 4: return [2 /*return*/];
@@ -6180,7 +6257,7 @@
6180
6257
  function (strip, calculateParentStatus) {
6181
6258
  if (calculateParentStatus === void 0) { calculateParentStatus = true; }
6182
6259
  return __awaiter(this, void 0, void 0, function () {
6183
- var originalFilters, response, finalPlaylistData_1, programData, error_8;
6260
+ var originalFilters, response, finalPlaylistData_1, programData, error_9;
6184
6261
  return __generator(this, function (_a) {
6185
6262
  switch (_a.label) {
6186
6263
  case 0:
@@ -6232,7 +6309,7 @@
6232
6309
  }
6233
6310
  return [3 /*break*/, 4];
6234
6311
  case 3:
6235
- error_8 = _a.sent();
6312
+ error_9 = _a.sent();
6236
6313
  this.emptyResponse.emit(true);
6237
6314
  return [3 /*break*/, 4];
6238
6315
  case 4: return [2 /*return*/];
@@ -6253,7 +6330,7 @@
6253
6330
  function (strip, calculateParentStatus) {
6254
6331
  if (calculateParentStatus === void 0) { calculateParentStatus = true; }
6255
6332
  return __awaiter(this, void 0, void 0, function () {
6256
- var originalFilters, response, content, featuredProviders, error_9;
6333
+ var originalFilters, firstTab, allTabs, currentTabFromMap, response, content, featuredProviders, error_10;
6257
6334
  return __generator(this, function (_a) {
6258
6335
  switch (_a.label) {
6259
6336
  case 0:
@@ -6264,7 +6341,17 @@
6264
6341
  strip.request.playlistRead.type) {
6265
6342
  strip.request.apiUrl = this.getFullUrl(strip.request.apiUrl, strip.request.playlistRead.type);
6266
6343
  }
6267
- _a.label = 1;
6344
+ if (!(strip.tabs && strip.tabs.length)) return [3 /*break*/, 1];
6345
+ // TODO: Have to extract requestRequired to outer level of tabs config
6346
+ firstTab = strip.tabs[0];
6347
+ if (firstTab.requestRequired) {
6348
+ if (this.stripsResultDataMap[strip.key] && this.stripsResultDataMap[strip.key].tabs) {
6349
+ allTabs = this.stripsResultDataMap[strip.key].tabs;
6350
+ currentTabFromMap = (/** @type {?} */ ((allTabs && allTabs.length && allTabs[0])));
6351
+ this.getTabDataByNewReqPlaylistReadContent(strip, 0, currentTabFromMap, calculateParentStatus);
6352
+ }
6353
+ }
6354
+ return [3 /*break*/, 4];
6268
6355
  case 1:
6269
6356
  _a.trys.push([1, 3, , 4]);
6270
6357
  return [4 /*yield*/, this.getRequestMethod(strip, strip.request.playlistRead, strip.request.apiUrl, calculateParentStatus)];
@@ -6286,7 +6373,7 @@
6286
6373
  }
6287
6374
  return [3 /*break*/, 4];
6288
6375
  case 3:
6289
- error_9 = _a.sent();
6376
+ error_10 = _a.sent();
6290
6377
  this.emptyResponse.emit(true);
6291
6378
  return [3 /*break*/, 4];
6292
6379
  case 4: return [2 /*return*/];
@@ -6294,6 +6381,107 @@
6294
6381
  });
6295
6382
  });
6296
6383
  };
6384
+ /**
6385
+ * @param {?} strip
6386
+ * @param {?} tabIndex
6387
+ * @param {?} currentTab
6388
+ * @param {?} calculateParentStatus
6389
+ * @return {?}
6390
+ */
6391
+ ContentStripWithTabsLibComponent.prototype.getTabDataByNewReqPlaylistReadContent = /**
6392
+ * @param {?} strip
6393
+ * @param {?} tabIndex
6394
+ * @param {?} currentTab
6395
+ * @param {?} calculateParentStatus
6396
+ * @return {?}
6397
+ */
6398
+ function (strip, tabIndex, currentTab, calculateParentStatus) {
6399
+ return __awaiter(this, void 0, void 0, function () {
6400
+ var response, widgets, tabResults, allTabs, tabResults, allTabs, error_11, tabResults, allTabs;
6401
+ return __generator(this, function (_a) {
6402
+ switch (_a.label) {
6403
+ case 0:
6404
+ if (currentTab.request &&
6405
+ strip.request.playlistRead &&
6406
+ strip.request.playlistRead.type) {
6407
+ currentTab.request.apiUrl = this.getFullUrl(currentTab.request.apiUrl, currentTab.request.playlistRead.type);
6408
+ }
6409
+ _a.label = 1;
6410
+ case 1:
6411
+ _a.trys.push([1, 3, , 4]);
6412
+ return [4 /*yield*/, this.getRequestMethod(strip, currentTab.request.playlistRead, currentTab.request.apiUrl, calculateParentStatus)];
6413
+ case 2:
6414
+ response = _a.sent();
6415
+ // if (response && response.results.result.content) {
6416
+ // let content = response.results.result.content
6417
+ // if(strip.key === 'providers'){
6418
+ // let featuredProviders : any = JSON.parse(content.featuredProviders|| '[]')
6419
+ // this.processStrip(
6420
+ // strip,
6421
+ // this.transformAllContentsToWidgets(featuredProviders, strip),
6422
+ // 'done',
6423
+ // calculateParentStatus,
6424
+ // response,
6425
+ // );
6426
+ // } else {
6427
+ // this.processStrip(
6428
+ // strip,
6429
+ // this.transformAllContentsToWidgets(content, strip),
6430
+ // 'done',
6431
+ // calculateParentStatus,
6432
+ // response,
6433
+ // );
6434
+ // }
6435
+ // } else {
6436
+ // this.processStrip(strip, [], 'error', calculateParentStatus, null);
6437
+ // this.emptyResponse.emit(true)
6438
+ // }
6439
+ if (response.results && response.results.result) {
6440
+ widgets = this.transformContentsToWidgets(response.results.result.content, strip);
6441
+ tabResults = [];
6442
+ if (this.stripsResultDataMap[strip.key] && this.stripsResultDataMap[strip.key].tabs) {
6443
+ allTabs = this.stripsResultDataMap[strip.key].tabs;
6444
+ if (allTabs && allTabs.length && allTabs[tabIndex]) {
6445
+ allTabs[tabIndex] = __assign({}, allTabs[tabIndex], { widgets: widgets, fetchTabStatus: 'done' });
6446
+ tabResults = allTabs;
6447
+ }
6448
+ }
6449
+ this.processStrip(strip, widgets, 'done', calculateParentStatus, response.viewMoreUrl, tabResults // tabResults as widgets
6450
+ );
6451
+ }
6452
+ else {
6453
+ tabResults = [];
6454
+ if (this.stripsResultDataMap[strip.key] && this.stripsResultDataMap[strip.key].tabs) {
6455
+ allTabs = this.stripsResultDataMap[strip.key].tabs;
6456
+ if (allTabs && allTabs.length && allTabs[tabIndex]) {
6457
+ allTabs[tabIndex] = __assign({}, allTabs[tabIndex], { fetchTabStatus: 'done' });
6458
+ tabResults = allTabs;
6459
+ }
6460
+ }
6461
+ this.processStrip(strip, [], 'error', calculateParentStatus, null, tabResults);
6462
+ }
6463
+ return [3 /*break*/, 4];
6464
+ case 3:
6465
+ error_11 = _a.sent();
6466
+ console.error('Error:', error_11);
6467
+ tabResults = [];
6468
+ if (this.stripsResultDataMap[strip.key] && this.stripsResultDataMap[strip.key].tabs && this.stripsResultDataMap[strip.key].tabs.length) {
6469
+ allTabs = this.stripsResultDataMap[strip.key].tabs;
6470
+ if (allTabs && allTabs.length && allTabs[tabIndex]) {
6471
+ allTabs[tabIndex] = __assign({}, allTabs[tabIndex], { fetchTabStatus: 'done' });
6472
+ tabResults = allTabs;
6473
+ }
6474
+ this.processStrip(strip, [], 'error', calculateParentStatus, null, tabResults);
6475
+ }
6476
+ else {
6477
+ this.processStrip(strip, [], 'error', calculateParentStatus, null);
6478
+ }
6479
+ return [3 /*break*/, 4];
6480
+ case 4: return [2 /*return*/];
6481
+ }
6482
+ });
6483
+ });
6484
+ };
6297
6485
  /**
6298
6486
  * @param {?} strip
6299
6487
  * @param {?=} calculateParentStatus
@@ -6307,7 +6495,7 @@
6307
6495
  function (strip, calculateParentStatus) {
6308
6496
  if (calculateParentStatus === void 0) { calculateParentStatus = true; }
6309
6497
  return __awaiter(this, void 0, void 0, function () {
6310
- var originalFilters, response, extContentData, error_10;
6498
+ var originalFilters, response, extContentData, error_12;
6311
6499
  return __generator(this, function (_a) {
6312
6500
  switch (_a.label) {
6313
6501
  case 0:
@@ -6348,7 +6536,7 @@
6348
6536
  }
6349
6537
  return [3 /*break*/, 4];
6350
6538
  case 3:
6351
- error_10 = _a.sent();
6539
+ error_12 = _a.sent();
6352
6540
  this.emptyResponse.emit(true);
6353
6541
  return [3 /*break*/, 4];
6354
6542
  case 4: return [2 /*return*/];
@@ -6359,8 +6547,8 @@
6359
6547
  ContentStripWithTabsLibComponent.decorators = [
6360
6548
  { type: core.Component, args: [{
6361
6549
  selector: 'sb-uic-content-strip-with-tabs',
6362
- template: "<ng-container *ngIf=\"!contentAvailable; else otherTemplate\"></ng-container>\n<ng-template #otherTemplate>\n <!-- <div *ngIf=\"showParentLoader\" class=\"text-center my-2\">\n <mat-spinner class=\"inline-block\"></mat-spinner>\n </div> -->\n <ng-container *ngIf=\"showParentError\" [sbUiResolverWidget]=\"widgetData.errorWidget\"></ng-container>\n <ng-container *ngIf=\"showParentNoData\" [sbUiResolverWidget]=\"widgetData.noDataWidget\"></ng-container>\n <ng-container *ngFor=\"let key of stripsKeyOrder; let i = index; trackBy: identify\">\n <ng-container *ngIf=\"isStripShowing(stripsResultDataMap[key])\">\n <a name=\"{{stripsResultDataMap[key]?.stripTitle}}\" [class]=\"key\">\n <div *ngIf=\"stripsResultDataMap && (getLength(stripsResultDataMap[key]) ||\n stripsResultDataMap[key]?.showOnNoData ||\n stripsResultDataMap[key]?.showOnLoader ||\n stripsResultDataMap[key]?.showOnError)\n \" [ngClass]=\"\n !widgetData?.isChannelStrip ? 'xs:px-8 sx:px-10ss' : i > 0 ? 'mt-12' : ''\n \" [id]=\"key\" [ngClass]=\"!widgetData?.isChannelStrip ? margin-bottom-custom : margin-bottom-xs\">\n <div [ngClass]=\"{ pad: stripsResultDataMap[key]?.stripBackground }\"\n [ngStyle]=\"{ 'background-color': stripsResultDataMap[key]?.stripBackground }\">\n <div class=\"flex flex-col pl-4 pr-4 md:pr-0 md:pl-0 \" [ngClass]=\"\n !widgetData?.isChannelStrip\n ? ''\n : stripsResultDataMap[key]?.stripTitle\n ? 'mb-8'\n : ''\n \">\n <div class=\"flex flex-1 items-center\">\n <p class=\"mat-subheading-1 margin-remove inline-block \" *ngIf=\"stripsResultDataMap[key]?.stripTitle\">\n <span class=\"capitalize\" *ngIf=\"stripsResultDataMap[key]?.disableTranslate\">\n {{stripsResultDataMap[key]?.stripTitle}}\n </span>\n <span *ngIf=\"!stripsResultDataMap[key]?.disableTranslate\">\n {{ translateLabels(stripsResultDataMap[key]?.stripTitle, 'home') }}\n </span>\n </p>\n\n <button *ngIf=\"stripsResultDataMap[key]?.stripInfo?.icon\" type=\"button\" mat-icon-button\n (click)=\"toggleInfo(stripsResultDataMap[key])\" i18n-matTooltip matTooltip=\"info\"\n class=\"margin-left-xs\">\n <mat-icon>{{ stripsResultDataMap[key]?.stripInfo?.icon.icon }}</mat-icon>\n </button>\n <a *ngIf=\"stripsResultDataMap[key]?.stripTitleLink?.link\"\n [routerLink]=\"stripsResultDataMap[key]?.stripTitleLink?.link\"\n [queryParams]=\"stripsResultDataMap[key]?.stripTitleLink?.link?.queryParams\">\n <mat-icon class=\"ws-mat-primary-primary-text ws-mat-default-text\" [color]=\"'accent'\">{{\n stripsResultDataMap[key]?.stripTitleLink?.icon }}</mat-icon>\n </a>\n <span class=\"spacer\"></span>\n <!-- viewAll start-->\n <div *ngIf=\"checkCondition(widgetData , stripsResultDataMap[key])\"\n class=\"ml-4 pl-2 view-more ws-mat-default-text\">\n <a class=\"flex ws-mat-default-text items-center justify-center mat-body-1 cursor-pointer\" \n (click)=\"raiseTelemetry(stripsResultDataMap[key]);redirectViewAll(stripsResultDataMap[key], stripsResultDataMap[key]?.viewMoreUrl?.path, stripsResultDataMap[key]?.viewMoreUrl?.queryParams )\">\n <span i18n class=\"ws-mat-default-text\">{{translateLabels(widgetData.strips[0].viewMoreUrl.viewMoreText,'home') || 'See all'}}</span>\n <mat-icon class=\"ws-mat-default-text mat-icon notranslate material-icons mat-icon-no-color\" color=\"accent\">navigate_next</mat-icon>\n </a>\n </div>\n <!-- viewAll end-->\n </div>\n <button mat-icon-button (click)=\"setHiddenForStrip(key)\" *ngIf=\"stripsResultDataMap[key]?.canHideStrip\">\n <mat-icon>close</mat-icon>\n </button>\n <mat-icon class=\"cursor-pointer\" *ngIf=\"stripsResultDataMap[key]?.mode === 'accordion' && isMobile\"\n (click)=\"showAccordionData = !showAccordionData\">{{ showAccordionData ? 'expand_less' : 'expand_more' }}\n </mat-icon>\n </div>\n\n <div class=\"mb-4\" *ngIf=\"checkVisible(stripsResultDataMap[key])\">\n <ng-container [sbUiResolverWidget]=\"getdata(stripsResultDataMap[key])\">\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"stripsResultDataMap[key]?.showOnNoData\"\n [sbUiResolverWidget]=\"stripsResultDataMap[key]?.noDataWidget\"></ng-container>\n <ng-container *ngIf=\"stripsResultDataMap[key]?.showOnError\"\n [sbUiResolverWidget]=\"stripsResultDataMap[key]?.errorWidget\"></ng-container>\n <!-- IF no errors then proceed to show tabs or non tabs strip -->\n <ng-container *ngIf=\"!stripsResultDataMap[key]?.showOnNoData && !stripsResultDataMap[key]?.showOnError\">\n <ng-container *ngIf=\"stripsResultDataMap[key].tabs && stripsResultDataMap[key].tabs.length\">\n <mat-tab-group animationDuration=\"0ms\" [selectedIndex]=\"getSelectedIndex(stripsResultDataMap[key], key)\"\n class=\"mat-tab-labels w-full strips-tabgroup\" dynamicHeight\n (selectedTabChange)=\"tabClicked($event, stripsResultDataMap[key], key)\">\n <mat-tab label=\"{{tab?.label}}\" *ngFor=\"let tab of stripsResultDataMap[key].tabs; let last = last;\">\n <ng-template mat-tab-label>\n <span>{{ translateLabels(tab?.label, 'home') }} &nbsp;</span>\n <span *ngIf=\"tab?.showTabDataCount && tab?.widgets?.length\">({{tab?.widgets?.length}})</span>\n </ng-template>\n <div>\n <!-- <ng-container [ngTemplateOutlet]=\"loader\" *ngIf=\"stripsResultDataMap[key]?.showOnLoader\">\n </ng-container> -->\n <div *ngIf=\"stripsResultDataMap && stripsResultDataMap[key]?.showOnLoader ||\n !tab.fetchTabStatus\"\n class=\"text-center my-2\">\n <sb-uic-horizontal-scroller-v2 [sliderConfig]=\"stripsResultDataMap[key]?.sliderConfig\" [id]=\"key+'-scroller'\"\n [loadStatus]=\"'fetching'\" [stripConfig]=\"stripsResultDataMap[key]?.stripConfig\">\n <ng-container *ngFor=\"let widget of stripsResultDataMap[key]?.loaderWidgets; trackBy: tracker\">\n <ng-container [sbUiResolverWidget]=\"widget\"></ng-container>\n </ng-container>\n </sb-uic-horizontal-scroller-v2>\n </div>\n <div *ngIf=\"((tab?.fetchTabStatus && tab?.fetchTabStatus === 'done') &&\n (!tab?.widgets || !tab?.widgets?.length))\">\n <ng-container *ngIf=\"tab?.value === 'inprogress'; else msgTemp\">\n <div class=\"w-full flex flex-col items-center justify-center\">\n <img alt=\"\" class=\"mt-4 mb-4\" src=\"assets/icons/home/nodataDefault.svg\">\n <div class=\"mat-subheading-1 text-center info-content\">{{ 'contentstripmultiple.getReadyForLearningAdventure' | translate }} -\n <a class=\"click-here\" [routerLink]=\"'/page/learn'\">{{ 'contentstripmultiple.clickHere' | translate }}</a> {{ 'contentstripmultiple.toEnrollNextCourse' | translate }}</div>\n </div>\n </ng-container>\n <ng-template #msgTemp>\n <div class=\"w-full flex flex-col items-center justify-center\">\n <img alt=\"\" class=\"mt-4 mb-4\" src=\"assets/icons/home/nodataDefault.png\">\n <div class=\"mat-subheading-1 text-center\">{{ translateLabels(tab.nodataMsg, 'home') }}</div>\n </div>\n </ng-template>\n </div>\n <ng-container *ngIf=\"(tab?.fetchTabStatus === 'done' || tab?.widgets?.length)\">\n <ng-container *ngIf=\"!tab?.tabLoading\">\n\n <sb-uic-horizontal-scroller-v2 [id]=\"key+'-scroller'\" [sliderConfig]=\"stripsResultDataMap[key]?.sliderConfig\" [widgetsLength]=\"tab?.widgets?.length\"\n *ngIf=\"getContineuLearningLenth(stripsResultDataMap[key]) && showAccordion(key)\"\n [loadStatus]=\"'done'\" [defaultMaxWidgets]=\"tab?.maxWidgets ||\n stripsResultDataMap[key]?.sliderConfig?.maxWidgets || defaultMaxWidgets\" [stripConfig]=\"stripsResultDataMap[key]?.stripConfig\">\n <ng-container *ngFor=\"let widget of tab?.widgets| slice:0:(tab?.maxWidgets ||\n stripsResultDataMap[key]?.sliderConfig?.maxWidgets || defaultMaxWidgets); trackBy: tracker\">\n <ng-container [sbUiResolverWidget]=\"widget\"></ng-container>\n </ng-container>\n </sb-uic-horizontal-scroller-v2>\n </ng-container>\n </ng-container>\n </div>\n </mat-tab>\n </mat-tab-group>\n </ng-container>\n <ng-container *ngIf=\"!stripsResultDataMap[key].tabs || !stripsResultDataMap[key].tabs.length\">\n <div *ngIf=\"stripsResultDataMap && stripsResultDataMap[key]?.showOnLoader\" class=\"text-center my-2\">\n <sb-uic-horizontal-scroller-v2 [id]=\"key+'-scroller'\" [sliderConfig]=\"stripsResultDataMap[key]?.sliderConfig\"\n [loadStatus]=\"'fetching'\" [stripConfig]=\"stripsResultDataMap[key]?.stripConfig\">\n <ng-container *ngFor=\"let widget of stripsResultDataMap[key]?.loaderWidgets; trackBy: tracker\">\n <ng-container [sbUiResolverWidget]=\"widget\"></ng-container>\n </ng-container>\n </sb-uic-horizontal-scroller-v2>\n </div>\n <div class=\"\">\n <sb-uic-horizontal-scroller-v2 [id]=\"key+'-scroller'\" [sliderConfig]=\"stripsResultDataMap[key]?.sliderConfig\"\n *ngIf=\"getContineuLearningLenth(stripsResultDataMap[key]) && showAccordion(key)\" [widgetsLength]=\"stripsResultDataMap[key]?.widgets?.length\" [loadStatus]=\"'done'\" [defaultMaxWidgets]=\"stripsResultDataMap[key].sliderConfig?.maxWidgets || defaultMaxWidgets\" [stripConfig]=\"stripsResultDataMap[key]?.stripConfig\">\n <ng-container *ngFor=\"let widget of stripsResultDataMap[key]?.widgets| slice:0:(stripsResultDataMap[key].sliderConfig?.maxWidgets || defaultMaxWidgets); trackBy: tracker\">\n <!-- <ng-container *ngIf=\"widget.widgetData.context.pageSection === 'continueLearning' \"> -->\n <!-- <ng-container *ngIf=\"widget.widgetData.content.completionPercentage !== 100\"\n [sbUiResolverWidget]=\"widget\"></ng-container> -->\n <ng-container [sbUiResolverWidget]=\"widget\"></ng-container>\n <!-- </ng-container> -->\n </ng-container>\n </sb-uic-horizontal-scroller-v2>\n </div>\n </ng-container>\n </ng-container>\n </div>\n </div>\n </a>\n\n </ng-container>\n </ng-container>\n</ng-template>",
6363
- styles: [".view-more{display:flex;align-items:center;text-align:center;height:40px;justify-content:center}.view-more .icon{font-size:24px;width:24px;height:24px;border:1px solid;border-radius:50%;padding:8px;margin-bottom:8px}.margin-bottom-custom{margin-bottom:60px}.view-more:hover{background-color:#dcdfe5}::ng-deep.strips-tabgroup .mat-tab-header{border-bottom:2px solid rgba(0,0,0,.12)}::ng-deep.strips-tabgroup .mat-tab-body{padding:20px 0!important;box-sizing:border-box;overflow-y:initial!important}::ng-deep.strips-tabgroup .mat-tab-body-wrapper{overflow:inherit!important}::ng-deep.strips-tabgroup .mat-tab-label{border-bottom:0 solid rgba(0,0,0,.1);margin-right:0;opacity:1}::ng-deep.strips-tabgroup .mat-tab-label .mat-tab-label-content{text-transform:inherit;font:400 14px/20px Lato}::ng-deep.strips-tabgroup .mat-tab-label-active .mat-tab-label-content{font-weight:700!important}.click-here{color:#1b4ca1}.info-content{opacity:1;color:rgba(0,0,0,.87);font:700 14px/20px Lato-Bold;text-align:center}"]
6550
+ template: "<ng-container *ngIf=\"!contentAvailable; else otherTemplate\"></ng-container>\n<ng-template #otherTemplate>\n <!-- <div *ngIf=\"showParentLoader\" class=\"text-center my-2\">\n <mat-spinner class=\"inline-block\"></mat-spinner>\n </div> -->\n <ng-container *ngIf=\"showParentError\" [sbUiResolverWidget]=\"widgetData.errorWidget\"></ng-container>\n <ng-container *ngIf=\"showParentNoData\" [sbUiResolverWidget]=\"widgetData.noDataWidget\"></ng-container>\n <ng-container *ngFor=\"let key of stripsKeyOrder; let i = index; trackBy: identify\">\n <ng-container *ngIf=\"isStripShowing(stripsResultDataMap[key])\">\n <a name=\"{{stripsResultDataMap[key]?.stripTitle}}\" [class]=\"key\">\n <div *ngIf=\"stripsResultDataMap && (getLength(stripsResultDataMap[key]) ||\n stripsResultDataMap[key]?.showOnNoData ||\n stripsResultDataMap[key]?.showOnLoader ||\n stripsResultDataMap[key]?.showOnError)\n \" [ngClass]=\"\n !widgetData?.isChannelStrip ? 'xs:px-8 sx:px-10ss' : i > 0 ? 'mt-12' : ''\n \" [id]=\"key\" [ngClass]=\"!widgetData?.isChannelStrip ? margin-bottom-custom : margin-bottom-xs\">\n <div [ngClass]=\"{ pad: stripsResultDataMap[key]?.stripBackground }\"\n [ngStyle]=\"{ 'background-color': stripsResultDataMap[key]?.stripBackground }\">\n <div class=\"flex flex-col pl-4 pr-4 md:pr-0 md:pl-0 min-height-40 \" [ngClass]=\"\n !widgetData?.isChannelStrip\n ? ''\n : stripsResultDataMap[key]?.stripTitle\n ? 'mb-8'\n : ''\n \">\n <div class=\"flex flex-1 items-center\">\n <p class=\"mat-subheading-1 margin-remove inline-block \" *ngIf=\"stripsResultDataMap[key]?.stripTitle\">\n <span class=\"capitalize\" *ngIf=\"stripsResultDataMap[key]?.disableTranslate\">\n {{stripsResultDataMap[key]?.stripTitle}}\n </span>\n <span *ngIf=\"!stripsResultDataMap[key]?.disableTranslate\">\n {{ translateLabels(stripsResultDataMap[key]?.stripTitle, 'home') }}\n </span>\n </p>\n\n <button *ngIf=\"stripsResultDataMap[key]?.stripInfo?.icon\" type=\"button\" mat-icon-button\n (click)=\"toggleInfo(stripsResultDataMap[key])\" i18n-matTooltip matTooltip=\"info\"\n class=\"margin-left-xs\">\n <mat-icon>{{ stripsResultDataMap[key]?.stripInfo?.icon.icon }}</mat-icon>\n </button>\n <a *ngIf=\"stripsResultDataMap[key]?.stripTitleLink?.link\"\n [routerLink]=\"stripsResultDataMap[key]?.stripTitleLink?.link\"\n [queryParams]=\"stripsResultDataMap[key]?.stripTitleLink?.link?.queryParams\">\n <mat-icon class=\"ws-mat-primary-primary-text ws-mat-default-text\" [color]=\"'accent'\">{{\n stripsResultDataMap[key]?.stripTitleLink?.icon }}</mat-icon>\n </a>\n <span class=\"spacer\"></span>\n <!-- viewAll start-->\n <div *ngIf=\"checkCondition(widgetData , stripsResultDataMap[key])\"\n class=\"ml-4 pl-2 view-more ws-mat-default-text\">\n <a class=\"flex ws-mat-default-text items-center justify-center mat-body-1 cursor-pointer\" \n (click)=\"raiseTelemetry(stripsResultDataMap[key]);redirectViewAll(stripsResultDataMap[key], stripsResultDataMap[key]?.viewMoreUrl?.path, stripsResultDataMap[key]?.viewMoreUrl?.queryParams )\">\n <span i18n class=\"ws-mat-default-text\">{{translateLabels(widgetData.strips[0].viewMoreUrl.viewMoreText,'home') || 'See all'}}</span>\n <mat-icon class=\"ws-mat-default-text mat-icon notranslate material-icons mat-icon-no-color\" color=\"accent\">navigate_next</mat-icon>\n </a>\n </div>\n <!-- viewAll end-->\n </div>\n <button mat-icon-button (click)=\"setHiddenForStrip(key)\" *ngIf=\"stripsResultDataMap[key]?.canHideStrip\">\n <mat-icon>close</mat-icon>\n </button>\n <mat-icon class=\"cursor-pointer\" *ngIf=\"stripsResultDataMap[key]?.mode === 'accordion' && isMobile\"\n (click)=\"showAccordionData = !showAccordionData\">{{ showAccordionData ? 'expand_less' : 'expand_more' }}\n </mat-icon>\n </div>\n\n <div class=\"mb-4\" *ngIf=\"checkVisible(stripsResultDataMap[key])\">\n <ng-container [sbUiResolverWidget]=\"getdata(stripsResultDataMap[key])\">\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"stripsResultDataMap[key]?.showOnNoData\"\n [sbUiResolverWidget]=\"stripsResultDataMap[key]?.noDataWidget\"></ng-container>\n <ng-container *ngIf=\"stripsResultDataMap[key]?.showOnError\"\n [sbUiResolverWidget]=\"stripsResultDataMap[key]?.errorWidget\"></ng-container>\n <!-- IF no errors then proceed to show tabs or non tabs strip -->\n <ng-container *ngIf=\"!stripsResultDataMap[key]?.showOnNoData && !stripsResultDataMap[key]?.showOnError\">\n <ng-container *ngIf=\"stripsResultDataMap[key].tabs && stripsResultDataMap[key].tabs.length\">\n <mat-tab-group animationDuration=\"0ms\" [selectedIndex]=\"getSelectedIndex(stripsResultDataMap[key], key)\"\n class=\"mat-tab-labels w-full strips-tabgroup \" dynamicHeight\n [ngClass]=\"stripsResultDataMap[key]?.tabsType ? stripsResultDataMap[key]?.tabsType : ''\"\n (selectedTabChange)=\"tabClicked($event, stripsResultDataMap[key], key)\">\n <mat-tab label=\"{{tab?.label}}\" *ngFor=\"let tab of stripsResultDataMap[key].tabs; let last = last;\">\n <ng-template mat-tab-label>\n <span>{{ translateLabels(tab?.label, 'home') }} &nbsp;</span>\n <span *ngIf=\"tab?.showTabDataCount && tab?.widgets?.length\">({{tab?.widgets?.length}})</span>\n </ng-template>\n <div>\n <!-- <ng-container [ngTemplateOutlet]=\"loader\" *ngIf=\"stripsResultDataMap[key]?.showOnLoader\">\n </ng-container> -->\n <div *ngIf=\"stripsResultDataMap && stripsResultDataMap[key]?.showOnLoader ||\n !tab.fetchTabStatus\"\n class=\"text-center my-2\">\n <sb-uic-horizontal-scroller-v2 [sliderConfig]=\"stripsResultDataMap[key]?.sliderConfig\" [id]=\"key+'-scroller'\"\n [loadStatus]=\"'fetching'\" [stripConfig]=\"stripsResultDataMap[key]?.stripConfig\">\n <ng-container *ngFor=\"let widget of stripsResultDataMap[key]?.loaderWidgets; trackBy: tracker\">\n <ng-container [sbUiResolverWidget]=\"widget\"></ng-container>\n </ng-container>\n </sb-uic-horizontal-scroller-v2>\n </div>\n <div *ngIf=\"((tab?.fetchTabStatus && tab?.fetchTabStatus === 'done') &&\n (!tab?.widgets || !tab?.widgets?.length))\">\n <ng-container *ngIf=\"tab?.value === 'inprogress'; else msgTemp\">\n <div class=\"w-full flex flex-col items-center justify-center\">\n <img alt=\"\" class=\"mt-4 mb-4\" src=\"assets/icons/home/nodataDefault.svg\">\n <div class=\"mat-subheading-1 text-center info-content\">{{ 'contentstripmultiple.getReadyForLearningAdventure' | translate }} -\n <a class=\"click-here\" [routerLink]=\"'/page/learn'\">{{ 'contentstripmultiple.clickHere' | translate }}</a> {{ 'contentstripmultiple.toEnrollNextCourse' | translate }}</div>\n </div>\n </ng-container>\n <ng-template #msgTemp>\n <div class=\"w-full flex flex-col items-center justify-center\">\n <img alt=\"\" class=\"mt-4 mb-4\" src=\"assets/icons/home/nodataDefault.png\">\n <div class=\"mat-subheading-1 text-center\">{{ translateLabels(tab.nodataMsg, 'home') }}</div>\n </div>\n </ng-template>\n </div>\n <ng-container *ngIf=\"(tab?.fetchTabStatus === 'done' || tab?.widgets?.length)\">\n <ng-container *ngIf=\"!tab?.tabLoading\">\n\n <sb-uic-horizontal-scroller-v2 [id]=\"key+'-scroller'\" [sliderConfig]=\"stripsResultDataMap[key]?.sliderConfig\" [widgetsLength]=\"tab?.widgets?.length\"\n *ngIf=\"getContineuLearningLenth(stripsResultDataMap[key]) && showAccordion(key)\"\n [loadStatus]=\"'done'\" [defaultMaxWidgets]=\"tab?.maxWidgets ||\n stripsResultDataMap[key]?.sliderConfig?.maxWidgets || defaultMaxWidgets\" [stripConfig]=\"stripsResultDataMap[key]?.stripConfig\">\n <ng-container *ngFor=\"let widget of tab?.widgets| slice:0:(tab?.maxWidgets ||\n stripsResultDataMap[key]?.sliderConfig?.maxWidgets || defaultMaxWidgets); trackBy: tracker\">\n <ng-container [sbUiResolverWidget]=\"widget\"></ng-container>\n </ng-container>\n </sb-uic-horizontal-scroller-v2>\n </ng-container>\n </ng-container>\n </div>\n </mat-tab>\n </mat-tab-group>\n </ng-container>\n <ng-container *ngIf=\"!stripsResultDataMap[key].tabs || !stripsResultDataMap[key].tabs.length\">\n <div *ngIf=\"stripsResultDataMap && stripsResultDataMap[key]?.showOnLoader\" class=\"text-center my-2\">\n <sb-uic-horizontal-scroller-v2 [id]=\"key+'-scroller'\" [sliderConfig]=\"stripsResultDataMap[key]?.sliderConfig\"\n [loadStatus]=\"'fetching'\" [stripConfig]=\"stripsResultDataMap[key]?.stripConfig\">\n <ng-container *ngFor=\"let widget of stripsResultDataMap[key]?.loaderWidgets; trackBy: tracker\">\n <ng-container [sbUiResolverWidget]=\"widget\"></ng-container>\n </ng-container>\n </sb-uic-horizontal-scroller-v2>\n </div>\n <div class=\"\">\n <sb-uic-horizontal-scroller-v2 [id]=\"key+'-scroller'\" [sliderConfig]=\"stripsResultDataMap[key]?.sliderConfig\"\n *ngIf=\"getContineuLearningLenth(stripsResultDataMap[key]) && showAccordion(key)\" [widgetsLength]=\"stripsResultDataMap[key]?.widgets?.length\" [loadStatus]=\"'done'\" [defaultMaxWidgets]=\"stripsResultDataMap[key].sliderConfig?.maxWidgets || defaultMaxWidgets\" [stripConfig]=\"stripsResultDataMap[key]?.stripConfig\">\n <ng-container *ngFor=\"let widget of stripsResultDataMap[key]?.widgets| slice:0:(stripsResultDataMap[key].sliderConfig?.maxWidgets || defaultMaxWidgets); trackBy: tracker\">\n <!-- <ng-container *ngIf=\"widget.widgetData.context.pageSection === 'continueLearning' \"> -->\n <!-- <ng-container *ngIf=\"widget.widgetData.content.completionPercentage !== 100\"\n [sbUiResolverWidget]=\"widget\"></ng-container> -->\n <ng-container [sbUiResolverWidget]=\"widget\"></ng-container>\n <!-- </ng-container> -->\n </ng-container>\n </sb-uic-horizontal-scroller-v2>\n </div>\n </ng-container>\n </ng-container>\n </div>\n </div>\n </a>\n\n </ng-container>\n </ng-container>\n</ng-template>",
6551
+ styles: [".view-more{display:flex;align-items:center;text-align:center;height:40px;justify-content:center}.view-more .icon{font-size:24px;width:24px;height:24px;border:1px solid;border-radius:50%;padding:8px;margin-bottom:8px}.margin-bottom-custom{margin-bottom:60px}.view-more:hover{background-color:#dcdfe5}::ng-deep.strips-tabgroup .mat-tab-header{border-bottom:2px solid rgba(0,0,0,.12)}::ng-deep.strips-tabgroup .mat-tab-body{padding:20px 0!important;box-sizing:border-box;overflow-y:initial!important}::ng-deep.strips-tabgroup .mat-tab-body-wrapper{overflow:inherit!important}::ng-deep.strips-tabgroup .mat-tab-label{border-bottom:0 solid rgba(0,0,0,.1);margin-right:0;opacity:1}::ng-deep.strips-tabgroup .mat-tab-label .mat-tab-label-content{text-transform:inherit;font:400 14px/20px Lato}::ng-deep.strips-tabgroup .mat-tab-label-active .mat-tab-label-content{font-weight:700!important}.click-here{color:#1b4ca1}.info-content{opacity:1;color:rgba(0,0,0,.87);font:700 14px/20px Lato-Bold;text-align:center}::ng-deep .pills-tab .mat-tab-header{border-bottom:unset!important}::ng-deep .pills-tab .mat-tab-label{border:1px solid rgba(0,0,0,.2392156863)!important;padding:2px 8px;margin-right:8px!important;min-width:unset!important;border-radius:12px;height:unset!important}::ng-deep .pills-tab .mat-ink-bar{background-color:transparent!important;visibility:hidden!important}::ng-deep .pills-tab .mat-tab-label-active{color:#fff!important;background-color:#1b4ca1!important}::ng-deep .pills-tab .mat-tab-body{padding:0!important}.min-height-40{min-height:40px}"]
6364
6552
  }] }
6365
6553
  ];
6366
6554
  /** @nocollapse */
@@ -7043,7 +7231,8 @@
7043
7231
  var API_END_POINTS$2 = {
7044
7232
  PROVIDER_INSIGHTS: "/apis/proxies/v8/microsite/read/insights",
7045
7233
  TRAINING_DETAILS: "apis/proxies/v8/sunbirdigot/search",
7046
- ANNOUNCEMENTS_DETAILS: "apis/proxies/v8/announcements/v1/search"
7234
+ ANNOUNCEMENTS_DETAILS: "apis/proxies/v8/announcements/v1/search",
7235
+ LEARNERS: "apis/proxies/v8/halloffame/top/learners"
7047
7236
  };
7048
7237
  var InsiteDataService = /** @class */ (function () {
7049
7238
  function InsiteDataService(http) {
@@ -7082,6 +7271,15 @@
7082
7271
  function (request) {
7083
7272
  return this.http.post(API_END_POINTS$2.TRAINING_DETAILS, request);
7084
7273
  };
7274
+ /**
7275
+ * @return {?}
7276
+ */
7277
+ InsiteDataService.prototype.fetchLearner = /**
7278
+ * @return {?}
7279
+ */
7280
+ function () {
7281
+ return this.http.get(API_END_POINTS$2.LEARNERS);
7282
+ };
7085
7283
  InsiteDataService.decorators = [
7086
7284
  { type: core.Injectable, args: [{
7087
7285
  providedIn: 'root'
@@ -7197,11 +7395,36 @@
7197
7395
  _this.isDataLoading = false;
7198
7396
  }));
7199
7397
  };
7398
+ /**
7399
+ * @param {?} value
7400
+ * @return {?}
7401
+ */
7402
+ DataPointsComponent.prototype.converToIndianSystem = /**
7403
+ * @param {?} value
7404
+ * @return {?}
7405
+ */
7406
+ function (value) {
7407
+ /** @type {?} */
7408
+ var numStr = value.toString();
7409
+ var _a = __read(numStr.split('.'), 2), integerPart = _a[0], decimalPart = _a[1];
7410
+ /** @type {?} */
7411
+ var lastThree = integerPart.slice(-3);
7412
+ /** @type {?} */
7413
+ var otherNumbers = integerPart.slice(0, -3);
7414
+ if (otherNumbers !== '') {
7415
+ lastThree = ',' + lastThree;
7416
+ }
7417
+ /** @type {?} */
7418
+ var formattedIntegerPart = otherNumbers.replace(/\B(?=(\d{2})+(?!\d))/g, ',') + lastThree;
7419
+ /** @type {?} */
7420
+ var result = decimalPart ? formattedIntegerPart + "." + decimalPart.substr(0, 2) : formattedIntegerPart;
7421
+ return result;
7422
+ };
7200
7423
  DataPointsComponent.decorators = [
7201
7424
  { type: core.Component, args: [{
7202
7425
  selector: 'sb-uic-data-points',
7203
- template: "<div class=\"w-full metrics-web\" *ngIf=\"layoutType === 'multipleRows' && !isDataLoading\">\n <div *ngFor=\"let obj of objectData; let last = last\" class=\"\">\n <div class=\"element-div\" [ngClass]=\"{'linebreak': obj?.linebreak && !last}\">\n <div class=\"flex flex-row gap-3 items-top\">\n <div>\n <img class=\"objIcon\" [src]=\"obj.icon\" [style.color]=\"obj?.iconColor\">\n </div>\n <div>\n <div [style.color]=\"obj?.valueColor\" class=\"objHeader pb-1\" *ngIf=\"!(obj && obj.value)\">0</div>\n <div [style.color]=\"obj?.valueColor\" class=\"objHeader pb-1\" *ngIf=\"(obj && obj.value)\">\n {{obj.value | number: obj.value % 1 === 0 ? '1.0-0' : '1.1-2'}}\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"objDescription\">{{obj?.label}}</div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'singleRow' && !isDataLoading\">\n <div class=\"flex gap-4\">\n <div *ngFor=\"let obj of objectData\" class=\"flex-container\">\n <div class=\"melement-div {{obj?.background}} flex-item\" [style.background]=\"obj?.background\" >\n <div class=\"flex flex-row gap-3\">\n <div>\n <img [style.color]=\"obj?.iconColor\" class=\"mobjIcon\" [src]=\"obj.icon\">\n </div>\n <div>\n <div [style.color]=\"obj?.valueColor\" class=\"mobjHeader pb-1\" *ngIf=\"!(obj && obj.value)\">0</div>\n <div [style.color]=\"obj?.valueColor\" class=\"mobjHeader pb-1\" *ngIf=\"(obj && obj.value)\">\n {{obj?.value | number: obj.value % 1 === 0 ? '1.0-0' : '1.1-2'}}\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"mobjDescription\">{{obj?.label}}</div>\n </div>\n </div>\n </div>\n </div>\n </div> \n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'gridLayout'\">\n <div class=\"w-full\" *ngIf=\"layoutType === 'gridLayout'\">\n <div class=\"top-container\">\n <div class=\"flex-container\" *ngFor=\"let chunk of customArray\">\n <div *ngFor=\"let item of chunk\">\n <div class=\"flex-item\">\n <div class=\"flex flex-row gap-5 infra-element-div\">\n <div>\n <div [style.color]=\"item?.valueColor\" class=\"infra-objHeader\" *ngIf=\"!(item && item.value)\">0</div>\n <div [style.color]=\"item?.valueColor\" class=\"infra-objHeader\" *ngIf=\"(item && item.value)\">\n {{item?.value | number: item.value % 1 === 0 ? '1.0-0' : '1.1-2'}}\n </div>\n <div [style.color]=\"item?.labelColor\" class=\"custom-opacity infra-objDescription padding-top-s\">{{item?.label}}</div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n </div> \n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'singleFlexeRow' && !isDataLoading\">\n <div class=\"flex\">\n <div *ngFor=\"let obj of objectData\" class=\"flex-container\">\n <div class=\"singleFlexeRow-div flex-item\">\n <div class=\"flex flex-row gap-3\">\n <div>\n <img [style.color]=\"obj?.iconColor\" class=\"singleFlexeRowIcon\" [src]=\"obj.icon\">\n </div>\n <div class=\"flex flex-col\">\n <div [style.color]=\"obj?.valueColor\" class=\"singleFlexeRowHeader pb-2\" *ngIf=\"!(obj && obj.value)\">0</div>\n <div [style.color]=\"obj?.valueColor\" class=\"singleFlexeRowHeader pb-2\" *ngIf=\"(obj && obj.value)\">\n {{obj?.value | number: obj.value % 1 === 0 ? '1.0-0' : '1.1-2'}}\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"singleFlexeRowDescription\">{{obj?.label}}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<!-- skeleton loaders -->\n\n<ng-container>\n <div class=\"w-full metrics-web\" *ngIf=\"layoutType === 'multipleRows' && isDataLoading\">\n <div *ngFor=\"let obj of [0,1,2,3]\" class=\"\">\n <div class=\"element-div linebreak\" >\n <div class=\"flex flex-row gap-3 items-top\">\n <div>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'32px'\"\n [height]=\"'32px'\"></sb-uic-skeleton-loader>\n </div>\n <div>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded mb-1'\" [width]=\"'100px'\"\n [height]=\"'24px'\"></sb-uic-skeleton-loader>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded mb-1'\" [width]=\"'150px'\"\n [height]=\"'24px'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"w-full metrics-web\" *ngIf=\"layoutType === 'singleFlexeRow' && isDataLoading\">\n <div class=\"flex\">\n <div *ngFor=\"let obj of objectData\" class=\"flex-container\">\n <div class=\"singleFlexeRow-div flex-item\">\n <div class=\"flex flex-row gap-3\">\n <div>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div class=\"flex flex-col\">\n <div [style.color]=\"obj?.valueColor\" class=\"singleFlexeRowHeader pb-2\" *ngIf=\"!(obj && obj.value)\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div [style.color]=\"obj?.valueColor\" class=\"singleFlexeRowHeader pb-2\" *ngIf=\"(obj && obj.value)\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"singleFlexeRowDescription\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'100px'\" [height]=\"'20px'\">\n </sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"w-full\" *ngIf=\"layoutType === 'singleRow' && isDataLoading\">\n <div class=\"flex gap-4\">\n <div *ngFor=\"let obj of objectData\" class=\"flex-container\">\n <div class=\"melement-div {{obj?.background}} flex-item\" [style.background]=\"obj?.background\" >\n <div class=\"flex flex-row gap-3\">\n <div>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'20px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div>\n <div [style.color]=\"obj?.valueColor\" class=\"mobjHeader pb-1\" *ngIf=\"!(obj && obj.value)\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'19px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div [style.color]=\"obj?.valueColor\" class=\"mobjHeader pb-1\" *ngIf=\"(obj && obj.value)\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'19px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"mobjDescription\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'100px'\" [height]=\"'18px'\">\n </sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n",
7204
- styles: [".white{color:#fff}.custom-opacity{opacity:.7}.black{color:#000}.objIcon{width:32px;height:32px}.mobjIcon{width:24px;height:24px}.objHeader{font-family:Montserrat;font-size:24px;font-weight:600;line-height:29.26px;text-align:left}.mobjHeader{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:left}.objDescription{font-family:Lato;font-size:16px;font-weight:400;line-height:19.2px;text-align:left}.mobjDescription{font-family:Lato;font-size:14px;font-weight:400;line-height:16.8px;text-align:left}.metrics-web{height:inherit;overflow-y:auto}.element-div{padding:25px 0;margin:0 25px}.linebreak{border-bottom:1px solid rgba(0,0,0,.16)}.singleFlexeRow-div{padding:16px;border-radius:15px}.singleFlexeRowHeader{font-family:Montserrat;font-size:20px;font-weight:600;line-height:24.38px;text-align:left}.singleFlexeRowDescription{font-family:Lato;font-size:14px;font-weight:400;line-height:16.8px;text-align:left}.singleFlexeRowIcon{width:24px;height:24px}.melement-div{padding:16px;border-radius:15px;width:249px}.banner-metrics{background:linear-gradient(180deg,#f9cb97 -107.59%,#ef951e 110.74%)}.infra-element-div{min-width:325px;padding:25px 0;align-items:baseline}.infra-objIcon{width:32px;height:32px}.infra-objHeader{font-family:Montserrat;font-size:36px;font-weight:600;line-height:29.26px;text-align:left}.infra-objDescription{font-family:Lato;font-size:16px;font-weight:400;line-height:19.2px;text-align:left;width:230px;text-overflow:ellipsis;overflow:hidden}.flex-container{display:flex}.top-container{overflow-x:auto;width:100%}::-webkit-scrollbar{height:4px}::-webkit-scrollbar-track{border-radius:10px;background:#000}::-webkit-scrollbar-thumb{background:#cccc;border-radius:10px}.flex-item{flex:0 0 auto;white-space:nowrap;min-width:200px}@media screen and (max-width:768px){.infra-objIcon{width:24px;height:24px}.infra-objHeader{font-size:24px}.infra-element-div{min-width:250px;padding:15px 0 25px}}"]
7426
+ template: "<div class=\"w-full metrics-web\" *ngIf=\"layoutType === 'multipleRows' && !isDataLoading\">\n <div *ngFor=\"let obj of objectData; let last = last\" class=\"\">\n <div class=\"element-div\" [ngClass]=\"{'linebreak': obj?.linebreak && !last}\">\n <div class=\"flex flex-row gap-3 items-top\">\n <div>\n <img class=\"objIcon\" [src]=\"obj.icon\" [style.color]=\"obj?.iconColor\">\n </div>\n <div>\n <div [style.color]=\"obj?.valueColor\" class=\"objHeader pb-1\" *ngIf=\"!(obj && obj.value)\">0</div>\n <div [style.color]=\"obj?.valueColor\" class=\"objHeader pb-1\" *ngIf=\"(obj && obj.value)\">\n {{obj.value | number: obj.value % 1 === 0 ? '1.0-0' : '1.1-2'}}\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"objDescription\">{{obj?.label}}</div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'multipleRows-V2' && !isDataLoading\">\n <div *ngFor=\"let obj of objectData; let i = index\">\n <div class=\"flex flex-row gap-4 {{(i+1 === objectData.length ? '' : 'pb-5')}}\">\n <div class=\"v2-icons-div\">\n <div class=\"v2-icon-contaier\"\n [style.background]=\"obj?.iconBackgroupColorV2\"\n [style.borderColor]=\"obj?.valueColor\">\n <img class=\"v2-objIcon\" [src]=\"obj.icon\" />\n </div>\n </div>\n <div class=\"v2-content-div\">\n <div class=\"flex flex-col\">\n <div class=\"v2-value\" [style.color]=\"obj?.valueColorV2\" *ngIf=\"!(obj && obj.value)\">0</div>\n <div class=\"v2-value\" [style.color]=\"obj?.valueColorV2\">\n {{obj.value | number: obj.value % 1 === 0 ? '1.0-0' : '1.1-2'}}\n </div>\n <div class=\"v2-label\" [style.color]=\"obj?.labelColorV2\">\n {{obj?.label}}\n </div>\n <div class=\"flex flex-row dot-container\" *ngIf=\"i+1 !== objectData.length\">\n <div class=\"v2-dot\"\n [style.background]=\"obj?.valueColorV2\"\n [style.borderColor]=\"obj?.labelColorV2\"></div>\n <div class=\"v2-border\" [style.background]=\"obj?.labelColorV2\"></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'singleRow-v2' && !isDataLoading\">\n <div class=\"flex gap-4\">\n <div *ngFor=\"let obj of objectData\" class=\"flex-container\">\n <div class=\"melement-div flex-item\" [style.background]=\"obj?.backgroundV2\" >\n <div class=\"flex flex-row gap-3\">\n <div class=\"mob-image-container-v2\">\n <img [style.color]=\"obj?.iconColor\" class=\"mobjIcon-v2\" [src]=\"obj.icon\">\n </div>\n <div>\n <div [style.color]=\"obj?.valueColorMobV2\" class=\"mobjHeader pb-1\" *ngIf=\"!(obj && obj.value)\">0</div>\n <div [style.color]=\"obj?.valueColorMobV2\" class=\"mobjHeader pb-1\" *ngIf=\"(obj && obj.value)\">\n {{converToIndianSystem(obj?.value)}}\n </div>\n <div [style.color]=\"obj?.labelColorV2\" class=\"mobjDescription\">{{obj?.label}}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'singleRow' && !isDataLoading\">\n <div class=\"flex gap-4\">\n <div *ngFor=\"let obj of objectData\" class=\"flex-container\">\n <div class=\"melement-div {{obj?.background}} flex-item\" [style.background]=\"obj?.background\" >\n <div class=\"flex flex-row gap-3\">\n <div>\n <img [style.color]=\"obj?.iconColor\" class=\"mobjIcon\" [src]=\"obj.icon\">\n </div>\n <div>\n <div [style.color]=\"obj?.valueColor\" class=\"mobjHeader pb-1\" *ngIf=\"!(obj && obj.value)\">0</div>\n <div [style.color]=\"obj?.valueColor\" class=\"mobjHeader pb-1\" *ngIf=\"(obj && obj.value)\">\n {{obj?.value | number: obj.value % 1 === 0 ? '1.0-0' : '1.1-2'}}\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"mobjDescription\">{{obj?.label}}</div>\n </div>\n </div>\n </div>\n </div>\n </div> \n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'gridLayout'\">\n <div class=\"w-full\" *ngIf=\"layoutType === 'gridLayout'\">\n <div class=\"top-container\">\n <div class=\"flex-container\" *ngFor=\"let chunk of customArray\">\n <div *ngFor=\"let item of chunk\">\n <div class=\"flex-item\">\n <div class=\"flex flex-row gap-5 infra-element-div\">\n <div>\n <div [style.color]=\"item?.valueColor\" class=\"infra-objHeader\" *ngIf=\"!(item && item.value)\">0</div>\n <div [style.color]=\"item?.valueColor\" class=\"infra-objHeader\" *ngIf=\"(item && item.value)\">\n {{item?.value | number: item.value % 1 === 0 ? '1.0-0' : '1.1-2'}}\n </div>\n <div [style.color]=\"item?.labelColor\" class=\"custom-opacity infra-objDescription padding-top-s\">{{item?.label}}</div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n </div> \n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'singleFlexeRow' && !isDataLoading\">\n <div class=\"flex space-around\">\n <div *ngFor=\"let obj of objectData\" class=\"flex-container\">\n <div class=\"singleFlexeRow-div singleFlexeRow flex-item\">\n <div class=\"flex flex-row gap-3\">\n <div>\n <img [style.color]=\"obj?.iconColor\" class=\"singleFlexeRowIcon\" [src]=\"obj.icon\">\n </div>\n <div class=\"flex flex-col\">\n <div [style.color]=\"obj?.valueColor\" class=\"singleFlexeRowHeader pb-2\" *ngIf=\"!(obj && obj.value)\">0</div>\n <div [style.color]=\"obj?.valueColor\" class=\"singleFlexeRowHeader pb-2\" *ngIf=\"(obj && obj.value)\">\n {{converToIndianSystem(obj?.value)}}\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"singleFlexeRowDescription\">{{obj?.label}}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<!-- skeleton loaders -->\n\n<ng-container>\n <div class=\"w-full metrics-web\" *ngIf=\"layoutType === 'multipleRows-V2' && isDataLoading\">\n <div *ngFor=\"let obj of [1,2,3,4]l let i = index\">\n <div class=\"flex flex-row gap-4 {{(i+1 === objectData.length ? '' : 'pb-5')}}\">\n <div class=\"v2-icons-div\">\n <div class=\"v2-icon-contaier\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'55px'\"\n [height]=\"'55px'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n <div class=\"v2-content-div\">\n <div class=\"flex flex-col\">\n <div class=\"v2-value\" [style.color]=\"obj?.valueColor\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded mb-1'\" [width]=\"'100px'\"\n [height]=\"'24px'\"></sb-uic-skeleton-loader>\n </div>\n <div class=\"v2-label\" [style.color]=\"obj?.labelColor\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded mb-1'\" [width]=\"'100px'\"\n [height]=\"'16px'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div> \n </div>\n </div>\n</ng-container>\n\n<ng-container>\n <div class=\"w-full metrics-web\" *ngIf=\"layoutType === 'multipleRows' && isDataLoading\">\n <div *ngFor=\"let obj of [0,1,2,3]\" class=\"\">\n <div class=\"element-div linebreak\" >\n <div class=\"flex flex-row gap-3 items-top\">\n <div>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'32px'\"\n [height]=\"'32px'\"></sb-uic-skeleton-loader>\n </div>\n <div>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded mb-1'\" [width]=\"'100px'\"\n [height]=\"'24px'\"></sb-uic-skeleton-loader>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded mb-1'\" [width]=\"'150px'\"\n [height]=\"'24px'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"w-full metrics-web\" *ngIf=\"layoutType === 'singleFlexeRow' && isDataLoading\">\n <div class=\"flex\">\n <div *ngFor=\"let obj of objectData\" class=\"flex-container\">\n <div class=\"singleFlexeRow-div flex-item\">\n <div class=\"flex flex-row gap-3\">\n <div>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div class=\"flex flex-col\">\n <div [style.color]=\"obj?.valueColor\" class=\"singleFlexeRowHeader pb-2\" *ngIf=\"!(obj && obj.value)\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div [style.color]=\"obj?.valueColor\" class=\"singleFlexeRowHeader pb-2\" *ngIf=\"(obj && obj.value)\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"singleFlexeRowDescription\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'100px'\" [height]=\"'20px'\">\n </sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"w-full\" *ngIf=\"layoutType === 'singleRow' && isDataLoading\">\n <div class=\"flex gap-4\">\n <div *ngFor=\"let obj of objectData\" class=\"flex-container\">\n <div class=\"melement-div {{obj?.background}} flex-item\" [style.background]=\"obj?.background\" >\n <div class=\"flex flex-row gap-3\">\n <div>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'20px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div>\n <div [style.color]=\"obj?.valueColor\" class=\"mobjHeader pb-1\" *ngIf=\"!(obj && obj.value)\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'19px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div [style.color]=\"obj?.valueColor\" class=\"mobjHeader pb-1\" *ngIf=\"(obj && obj.value)\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'19px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"mobjDescription\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'100px'\" [height]=\"'18px'\">\n </sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"w-full\" *ngIf=\"layoutType === 'singleRow-v2' && isDataLoading\">\n <div class=\"flex gap-4\">\n <div *ngFor=\"let obj of objectData\" class=\"flex-container\">\n <div class=\"melement-div flex-item\" [style.background]=\"obj?.backgroundV2\" >\n <div class=\"flex flex-row gap-3\">\n <div>\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div>\n <div [style.color]=\"obj?.valueColor\" class=\"mobjHeader pb-1\" *ngIf=\"!(obj && obj.value)\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'19px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div [style.color]=\"obj?.valueColor\" class=\"mobjHeader pb-1\" *ngIf=\"(obj && obj.value)\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'24px'\" [height]=\"'19px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div [style.color]=\"obj?.labelColor\" class=\"mobjDescription\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'100px'\" [height]=\"'18px'\">\n </sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n",
7427
+ styles: ["@font-face{font-family:Poppins;src:url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-400-normal.woff2) format('woff2'),url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-400-normal.woff) format('woff')}.mob-image-container-v2{height:28px;width:28px;background:#fff;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid #fff}.mobjIcon-v2{width:18px;height:18px}.v2-icon-contaier{height:50px;width:50px;border:1px solid #fff;border-radius:50%;align-items:center;display:flex;justify-content:center}.v2-value{font-family:Poppins;font-size:24px;font-weight:600;line-height:24px;text-align:left;padding-bottom:5px;padding-left:10px}.v2-label{font-family:Poppins;font-size:12px;font-weight:400;line-height:18px;text-align:left;padding-bottom:5px;padding-left:10px}.dot-container{align-items:center}.v2-dot{width:9px;height:9px;border:2px solid #fff;border-radius:50%}.v2-border{height:1px;width:182px}.white{color:#fff}.custom-opacity{opacity:.7}.black{color:#000}.objIcon{width:32px;height:32px}.mobjIcon{width:24px;height:24px}.objHeader{font-family:Montserrat;font-size:24px;font-weight:600;line-height:29.26px;text-align:left}.mobjHeader{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:left}.objDescription{font-family:Lato;font-size:16px;font-weight:400;line-height:19.2px;text-align:left}.mobjDescription{font-family:Lato;font-size:14px;font-weight:400;line-height:16.8px;text-align:left}.metrics-web{height:inherit;overflow-y:auto}.element-div{padding:25px 0;margin:0 25px}.linebreak{border-bottom:1px solid rgba(0,0,0,.16)}.singleFlexeRow-flex-item{flex:0 0 auto;white-space:nowrap}.singleFlexeRow-div{padding:16px;border-radius:15px}.singleFlexeRowHeader{font-family:Montserrat;font-size:20px;font-weight:600;line-height:24.38px;text-align:left}.singleFlexeRowDescription{font-family:Lato;font-size:14px;font-weight:400;line-height:16.8px;text-align:left}.singleFlexeRowIcon{width:24px;height:24px}.melement-div{padding:16px;border-radius:15px;width:249px}.banner-metrics{background:linear-gradient(180deg,#f9cb97 -107.59%,#ef951e 110.74%)}.infra-element-div{min-width:325px;padding:25px 0;align-items:baseline}.infra-objIcon{width:32px;height:32px}.infra-objHeader{font-family:Montserrat;font-size:36px;font-weight:600;line-height:29.26px;text-align:left}.infra-objDescription{font-family:Lato;font-size:16px;font-weight:400;line-height:19.2px;text-align:left;width:230px;text-overflow:ellipsis;overflow:hidden}.flex-container{display:flex}.top-container{overflow-x:auto;width:100%}::-webkit-scrollbar{height:4px}::-webkit-scrollbar-track{border-radius:10px;background:#000}::-webkit-scrollbar-thumb{background:#cccc;border-radius:10px}.flex-item{flex:0 0 auto;white-space:nowrap;min-width:200px}.space-around{justify-content:space-evenly}@media screen and (max-width:768px){.infra-objIcon{width:24px;height:24px}.infra-objHeader{font-size:24px}.infra-element-div{min-width:250px;padding:15px 0 25px}}"]
7205
7428
  }] }
7206
7429
  ];
7207
7430
  /** @nocollapse */
@@ -8689,6 +8912,8 @@
8689
8912
  this.openDialog = new core.EventEmitter();
8690
8913
  this.isLoading = false;
8691
8914
  this.announcements = [];
8915
+ this.expand = false;
8916
+ this.expanded = false;
8692
8917
  }
8693
8918
  /**
8694
8919
  * @return {?}
@@ -8746,6 +8971,9 @@
8746
8971
  });
8747
8972
  }));
8748
8973
  }
8974
+ if (_this.announcements.length > 3) {
8975
+ _this.expand = true;
8976
+ }
8749
8977
  _this.objectData.list = _this.announcements;
8750
8978
  _this.isLoading = false;
8751
8979
  }), (/**
@@ -8780,11 +9008,20 @@
8780
9008
  function () {
8781
9009
  this.openDialog.emit(true);
8782
9010
  };
9011
+ /**
9012
+ * @return {?}
9013
+ */
9014
+ AnnouncementsComponent.prototype.showMoreOrLess = /**
9015
+ * @return {?}
9016
+ */
9017
+ function () {
9018
+ this.expanded = !this.expanded;
9019
+ };
8783
9020
  AnnouncementsComponent.decorators = [
8784
9021
  { type: core.Component, args: [{
8785
9022
  selector: 'sb-uic-announcements',
8786
- template: "<div class=\"w-full\" *ngIf=\"layoutType === 'web' && !isLoading\">\n <div class=\"flex item-center key-logo\">\n <img class=\"\" [src]=\"objectData?.logoUrl\">\n </div>\n <div class=\"flex item-center key-logo\">\n <div class=\"key-heading\"\n [style.backgroundColor]=\"objectData?.header?.background\"\n [style.color]=\"objectData?.header?.color\">\n {{objectData?.title}}\n </div>\n </div>\n <div class=\"key-list-container\"\n [style.borderColor]=\"objectData?.panelborder\"\n [style.backgroundColor]=\"objectData?.panelBackground\">\n <div class=\"{{mobileHeight ? 'mob-key-list' : 'key-list'}}\" *ngIf=\"objectData?.list?.length\">\n <div *ngFor=\"let item of objectData?.list; let i = index\">\n <div class=\"key-list-item mb-{{ objectData?.list?.length === (i+1) ? '' : '4'}}\" \n [style.borderColor]=\"objectData?.listItem?.border\"\n [style.backgroundColor]=\"objectData?.listItem?.background\">\n <div class=\"key-list-item-content {{item?.value?.length > 152 && !item?.expanded ? 'expand' : 'un-expand'}}\" [innerHTML]=\"item?.value\"></div>\n <div class=\"more-or-less\" *ngIf=\"item?.value?.length > 152\" [style.color]=\"objectData?.panelborder\">\n <div class=\"cursor-pointer\" (click)=\"viewMoreOrLess(item)\" *ngIf=\"!item?.expanded\">View more</div>\n <div class=\"cursor-pointer\" (click)=\"viewMoreOrLess(item)\" *ngIf=\"item?.expanded\">View less</div>\n </div>\n </div>\n </div> \n </div>\n <div class=\"{{mobileHeight ? 'mob-key-list' : 'key-list'}}\" *ngIf=\"!objectData?.list?.length\">\n <div class=\"text-center\">No announcements yet!</div>\n </div>\n </div>\n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'mobile'\">\n <div class=\"flex item-center key-logo \">\n <div class=\"mob-key-heading\" (click)=\"openAnnouncements()\"\n [style.backgroundColor]=\"objectData?.header?.background\"\n [style.color]=\"objectData?.header?.color\">\n <div class=\"flex key-button gap-3\">\n <div>\n <img [src]=\"objectData?.mobileIcon\">\n </div>\n <div>{{objectData?.title}}</div> \n <div><mat-icon class=\"key-mob-icon\">arrow_forward_ios</mat-icon></div>\n </div> \n </div>\n </div>\n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'web' && isLoading\">\n <div class=\"flex item-center key-logo\">\n <img class=\"\" [src]=\"objectData?.logoUrl\">\n </div>\n <div class=\"flex item-center key-logo pt-1\">\n <div class=\"key-heading\"\n [style.backgroundColor]=\"objectData?.header?.background\"\n [style.color]=\"objectData?.header?.color\">\n {{objectData?.title}}\n </div>\n </div>\n <div class=\"key-list-container\"\n [style.borderColor]=\"objectData?.panelborder\"\n [style.backgroundColor]=\"objectData?.panelBackground\">\n <div class=\"{{mobileHeight ? 'mob-key-list' : 'key-list'}}\" > \n <div class=\"key-list-item mb-4\" \n *ngFor=\"let item of[0,1,2,3,4]; let i = index\"\n [style.borderColor]=\"objectData?.listItem?.border\"\n [style.backgroundColor]=\"objectData?.listItem?.background\">\n <div class=\"key-list-item-content un-expand\">\n <div class=\"py-1\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon '\" [width]=\"'350px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div class=\"py-1\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon '\" [width]=\"'350px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div> \n </div>\n</div>\n",
8787
- styles: [".key-logo{align-items:center;justify-content:center}.key-list-container{border:1px solid #ccc;padding:45px 15px 15px;border-radius:12px;margin-top:-20px}.key-list{height:600px;overflow:auto}.mob-key-list{height:calc(100vh - 252px);overflow:auto}.key-list::-webkit-scrollbar{display:none}.key-list-item{padding:16px;border:1px solid #ccc;border-radius:12px;min-height:56px}::ng-deep .key-list-item-content a{color:#1b4ca1!important}.key-list-item-content{font-family:Lato;font-size:14px;font-weight:400;line-height:20px;text-align:left;white-space:initial;position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical}.expand{-webkit-line-clamp:3}.un-expand{-webkit-line-clamp:0}.more-or-less{font-family:Lato;font-size:14px;line-height:20px;font-weight:600}.mob-key-heading{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:center;padding:7px 25px;border-radius:20px;animation:.9s infinite mobPaddingAnimation;cursor:pointer}.key-mob-icon{font-size:12px;width:12px;height:12px}.key-button{align-items:center;justify-content:center}.key-heading{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:center;padding:10px 50px;border-radius:20px;margin-top:-3px;animation:.9s infinite paddingAnimation}@keyframes mobPaddingAnimation{0%,100%{padding:7px 25px}25%,75%{padding:7px 30px}50%{padding:7px 35px}}@keyframes paddingAnimation{0%,100%{padding:10px 50px}25%,75%{padding:10px 55px}50%{padding:10px 60px}}"]
9023
+ template: "<div class=\"w-full\" *ngIf=\"layoutType === 'web' && !isLoading\">\n <div class=\"flex item-center key-logo\">\n <img class=\"\" [src]=\"objectData?.logoUrl\">\n </div>\n <div class=\"flex item-center key-logo\">\n <div class=\"key-heading\"\n [style.backgroundColor]=\"objectData?.header?.background\"\n [style.color]=\"objectData?.header?.color\">\n {{objectData?.title}}\n </div>\n </div>\n <div class=\"key-list-container\"\n [style.borderColor]=\"objectData?.panelborder\"\n [style.backgroundColor]=\"objectData?.panelBackground\">\n <div class=\"{{mobileHeight ? 'mob-key-list' : expand && expanded ? 'exp-key-list' : 'key-list'}}\" *ngIf=\"objectData?.list?.length\">\n <div *ngFor=\"let item of objectData?.list; let i = index\">\n <div class=\"key-list-item mb-{{ objectData?.list?.length === (i+1) ? '' : '4'}}\" \n [style.borderColor]=\"objectData?.listItem?.border\"\n [style.backgroundColor]=\"objectData?.listItem?.background\">\n <div class=\"key-list-item-content {{item?.value?.length > 152 && !item?.expanded ? 'expand' : 'un-expand'}}\" [innerHTML]=\"item?.value\"></div>\n <div class=\"more-or-less\" *ngIf=\"item?.value?.length > 152\" [style.color]=\"objectData?.panelborder\">\n <div class=\"cursor-pointer\" (click)=\"viewMoreOrLess(item)\" *ngIf=\"!item?.expanded\">View more</div>\n <div class=\"cursor-pointer\" (click)=\"viewMoreOrLess(item)\" *ngIf=\"item?.expanded\">View less</div>\n </div>\n </div>\n </div> \n </div>\n <div class=\"{{mobileHeight ? 'mob-key-list' : 'key-list'}}\" *ngIf=\"!objectData?.list?.length\">\n <div class=\"text-center\">No announcements yet!</div>\n </div>\n </div>\n</div>\n\n<ng-container *ngIf=\"!mobileHeight && expand\">\n <div (click)=\"showMoreOrLess()\" class=\"announcements-expand\" *ngIf=\"!expanded\">\n <mat-icon>expand_more</mat-icon>\n </div>\n <div (click)=\"showMoreOrLess()\" class=\"announcements-expand\" *ngIf=\"expanded\">\n <mat-icon>expand_less</mat-icon>\n </div>\n</ng-container>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'mobile'\">\n <div class=\"flex item-center key-logo \">\n <div class=\"mob-key-heading\" (click)=\"openAnnouncements()\"\n [style.backgroundColor]=\"objectData?.header?.background\"\n [style.color]=\"objectData?.header?.color\">\n <div class=\"flex key-button gap-3\">\n <div>\n <img [src]=\"objectData?.mobileIcon\">\n </div>\n <div>{{objectData?.title}}</div> \n <div><mat-icon class=\"key-mob-icon\">arrow_forward_ios</mat-icon></div>\n </div> \n </div>\n </div>\n</div>\n\n<div class=\"w-full\" *ngIf=\"layoutType === 'web' && isLoading\">\n <div class=\"flex item-center key-logo\">\n <img class=\"\" [src]=\"objectData?.logoUrl\">\n </div>\n <div class=\"flex item-center key-logo pt-1\">\n <div class=\"key-heading\"\n [style.backgroundColor]=\"objectData?.header?.background\"\n [style.color]=\"objectData?.header?.color\">\n {{objectData?.title}}\n </div>\n </div>\n <div class=\"key-list-container\"\n [style.borderColor]=\"objectData?.panelborder\"\n [style.backgroundColor]=\"objectData?.panelBackground\">\n <div class=\"{{mobileHeight ? 'mob-key-list' : 'key-list'}}\" > \n <div class=\"key-list-item mb-4\" \n *ngFor=\"let item of[0,1,2,3,4]; let i = index\"\n [style.borderColor]=\"objectData?.listItem?.border\"\n [style.backgroundColor]=\"objectData?.listItem?.background\">\n <div class=\"key-list-item-content un-expand\">\n <div class=\"py-1\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon '\" [width]=\"'350px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n <div class=\"py-1\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon '\" [width]=\"'350px'\" [height]=\"'24px'\">\n </sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div> \n </div>\n</div>\n",
9024
+ styles: [".key-logo{align-items:center;justify-content:center}.key-list-container{border:1px solid #ccc;padding:45px 15px 15px;border-radius:12px;margin-top:-20px}.key-list{height:325px;overflow:auto}.exp-key-list{height:100%;overflow:auto}.mob-key-list{height:calc(100vh - 252px);overflow:auto}.key-list::-webkit-scrollbar{display:none}.key-list-item{padding:16px;border:1px solid #ccc;border-radius:12px;min-height:56px}::ng-deep .key-list-item-content a{color:#1b4ca1!important}.key-list-item-content{font-family:Lato;font-size:14px;font-weight:400;line-height:20px;text-align:left;white-space:initial;position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical}.expand{-webkit-line-clamp:3}.un-expand{-webkit-line-clamp:0}.more-or-less{font-family:Lato;font-size:14px;line-height:20px;font-weight:600}.mob-key-heading{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:center;padding:7px 25px;border-radius:20px;animation:.9s infinite mobPaddingAnimation;cursor:pointer}.key-mob-icon{font-size:12px;width:12px;height:12px}.key-button{align-items:center;justify-content:center}.key-heading{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:center;padding:10px 50px;border-radius:20px;margin-top:-3px;animation:.9s infinite paddingAnimation}.announcements-expand{width:32px;height:32px;position:relative;background:#000;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;left:50%;right:50%;top:-16px;cursor:pointer}@keyframes mobPaddingAnimation{0%,100%{padding:7px 25px}25%,75%{padding:7px 30px}50%{padding:7px 35px}}@keyframes paddingAnimation{0%,100%{padding:10px 50px}25%,75%{padding:10px 55px}50%{padding:10px 60px}}"]
8788
9025
  }] }
8789
9026
  ];
8790
9027
  /** @nocollapse */
@@ -8819,6 +9056,10 @@
8819
9056
  /** @type {?} */
8820
9057
  AnnouncementsComponent.prototype.announcements;
8821
9058
  /** @type {?} */
9059
+ AnnouncementsComponent.prototype.expand;
9060
+ /** @type {?} */
9061
+ AnnouncementsComponent.prototype.expanded;
9062
+ /** @type {?} */
8822
9063
  AnnouncementsComponent.prototype.insightSvc;
8823
9064
  }
8824
9065
 
@@ -8843,560 +9084,1296 @@
8843
9084
  return AnnouncementsModule;
8844
9085
  }());
8845
9086
 
8846
- /**
8847
- * @fileoverview added by tsickle
8848
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
8849
- */
8850
- var ConsumptionModule = /** @class */ (function () {
8851
- function ConsumptionModule() {
8852
- }
8853
- ConsumptionModule.decorators = [
8854
- { type: core.NgModule, args: [{
8855
- declarations: [ConsumptionComponent],
8856
- imports: [
8857
- ContentStripWithTabsLibModule,
8858
- SlidersLibModule
8859
- ],
8860
- exports: [ConsumptionComponent,
8861
- ContentStripWithTabsLibModule,
8862
- SlidersLibModule,
8863
- DataPointsModule,
8864
- CalenderModule,
8865
- CommonStripModule,
8866
- AnnouncementsModule
8867
- ],
8868
- },] }
8869
- ];
8870
- return ConsumptionModule;
8871
- }());
8872
-
8873
9087
  /**
8874
9088
  * @fileoverview added by tsickle
8875
9089
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
8876
9090
  */
8877
9091
  /** @type {?} */
8878
- var ROOT_WIDGET_CONFIG = {
8879
- card: {
8880
- _type: 'cardLib',
8881
- cardResource: 'cardContentLib'
8882
- },
8883
- };
8884
-
8885
- /**
8886
- * @fileoverview added by tsickle
8887
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
8888
- */
8889
- var NsCardContent$1;
8890
- (function (NsCardContent) {
8891
- /**
8892
- * @record
8893
- */
8894
- function ICard() { }
8895
- NsCardContent.ICard = ICard;
8896
- if (false) {
8897
- /** @type {?} */
8898
- ICard.prototype.content;
8899
- /** @type {?} */
8900
- ICard.prototype.cardSubType;
8901
- /** @type {?} */
8902
- ICard.prototype.context;
8903
- /** @type {?|undefined} */
8904
- ICard.prototype.intranetMode;
8905
- /** @type {?|undefined} */
8906
- ICard.prototype.deletedMode;
8907
- /** @type {?|undefined} */
8908
- ICard.prototype.likes;
8909
- /** @type {?|undefined} */
8910
- ICard.prototype.contentTags;
8911
- /** @type {?} */
8912
- ICard.prototype.stateData;
8913
- /** @type {?|undefined} */
8914
- ICard.prototype.cardCustomeClass;
9092
+ var moment$1 = moment$2;
9093
+ var TopLearnersComponent = /** @class */ (function () {
9094
+ function TopLearnersComponent(insightSvc) {
9095
+ this.insightSvc = insightSvc;
9096
+ this.loading = false;
9097
+ this.month = '';
9098
+ this.results = [];
9099
+ this.colors = [
9100
+ '#EB7181',
9101
+ '#306933',
9102
+ '#000000',
9103
+ '#3670B2',
9104
+ '#4E9E87',
9105
+ '#7E4C8D',
9106
+ '#EB7181',
9107
+ '#306933',
9108
+ '#000000',
9109
+ '#3670B2',
9110
+ ];
8915
9111
  }
8916
9112
  /**
8917
- * @record
9113
+ * @return {?}
8918
9114
  */
8919
- function IContentTags() { }
8920
- NsCardContent.IContentTags = IContentTags;
8921
- if (false) {
8922
- /** @type {?|undefined} */
8923
- IContentTags.prototype.daysSpan;
8924
- /** @type {?|undefined} */
8925
- IContentTags.prototype.excludeContentType;
8926
- /** @type {?|undefined} */
8927
- IContentTags.prototype.excludeMimeType;
8928
- /** @type {?} */
8929
- IContentTags.prototype.tag;
8930
- /** @type {?|undefined} */
8931
- IContentTags.prototype.criteriaField;
8932
- }
8933
- var EContentStatus;
8934
- (function (EContentStatus) {
8935
- EContentStatus["LIVE"] = "Live";
8936
- EContentStatus["EXPIRED"] = "Expired";
8937
- EContentStatus["DELETED"] = "Deleted";
8938
- EContentStatus["MARK_FOR_DELETION"] = "MarkedForDeletion";
8939
- })(EContentStatus = NsCardContent.EContentStatus || (NsCardContent.EContentStatus = {}));
8940
- var ACBPConst;
8941
- (function (ACBPConst) {
8942
- ACBPConst["UPCOMING"] = "upcoming";
8943
- ACBPConst["ALL"] = "All";
8944
- ACBPConst["OVERDUE"] = "overdue";
8945
- ACBPConst["SUCCESS"] = "success";
8946
- })(ACBPConst = NsCardContent.ACBPConst || (NsCardContent.ACBPConst = {}));
8947
- var IGOTConst;
8948
- (function (IGOTConst) {
8949
- IGOTConst["COMPETENCIES"] = "competencies_v5";
8950
- IGOTConst["RETIRED"] = "Retired";
8951
- })(IGOTConst = NsCardContent.IGOTConst || (NsCardContent.IGOTConst = {}));
8952
- })(NsCardContent$1 || (NsCardContent$1 = {}));
8953
-
8954
- /**
8955
- * @fileoverview added by tsickle
8956
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
8957
- */
8958
- var CardsComponent = /** @class */ (function (_super) {
8959
- __extends(CardsComponent, _super);
8960
- function CardsComponent(utilitySvc, contSvc, router) {
8961
- var _this = _super.call(this) || this;
8962
- _this.utilitySvc = utilitySvc;
8963
- _this.contSvc = contSvc;
8964
- _this.router = router;
8965
- _this.triggerTelemetry = new core.EventEmitter();
8966
- _this.isIntranetAllowedSettings = false;
8967
- return _this;
8968
- }
9115
+ TopLearnersComponent.prototype.ngOnInit = /**
9116
+ * @return {?}
9117
+ */
9118
+ function () {
9119
+ this.getData();
9120
+ this.month = new Date().toLocaleString('default', { month: 'long' });
9121
+ };
8969
9122
  /**
8970
9123
  * @return {?}
8971
9124
  */
8972
- CardsComponent.prototype.ngOnInit = /**
9125
+ TopLearnersComponent.prototype.getData = /**
8973
9126
  * @return {?}
8974
9127
  */
8975
9128
  function () {
8976
9129
  var _this = this;
8977
- this.cbPlanInterval = setInterval((/**
8978
- * @return {?}
8979
- */
8980
- function () {
8981
- _this.getCbPlanData();
8982
- }), 1000);
8983
- this.enrollInterval = setInterval((/**
8984
- * @return {?}
8985
- */
8986
- function () {
8987
- _this.getEnrollmentData();
8988
- // tslint:disable-next-line
8989
- }), 1000);
8990
- };
8991
- Object.defineProperty(CardsComponent.prototype, "isLiveOrMarkForDeletion", {
8992
- get: /**
9130
+ this.loading = true;
9131
+ this.insightSvc.fetchLearner().subscribe((/**
9132
+ * @param {?} res
8993
9133
  * @return {?}
8994
9134
  */
8995
- function () {
8996
- if (!this.widgetData.content.status ||
8997
- this.widgetData.content.status === 'Live' ||
8998
- this.widgetData.content.status === 'MarkedForDeletion') {
8999
- return true;
9135
+ function (res) {
9136
+ if (res && res.result && res.result.result) {
9137
+ _this.results = res.result.result;
9138
+ _this.month = moment$1().month(Number(res.result.result[0].month) - 1).format('MMMM');
9139
+ _this.loading = false;
9000
9140
  }
9001
- return false;
9002
- },
9003
- enumerable: true,
9004
- configurable: true
9005
- });
9006
- Object.defineProperty(CardsComponent.prototype, "showIntranetContent", {
9007
- get: /**
9141
+ }), (/**
9142
+ * @param {?} _error
9008
9143
  * @return {?}
9009
9144
  */
9010
- function () {
9011
- if (this.widgetData.content.isInIntranet && this.utilitySvc.isMobile) {
9012
- return !this.isIntranetAllowedSettings;
9013
- }
9014
- return false;
9015
- },
9016
- enumerable: true,
9017
- configurable: true
9018
- });
9019
- /**
9020
- * @param {?} content
9021
- * @return {?}
9022
- */
9023
- CardsComponent.prototype.getRedirectUrlData = /**
9024
- * @param {?} content
9025
- * @return {?}
9026
- */
9027
- function (content) {
9028
- return __awaiter(this, void 0, void 0, function () {
9029
- var urlData;
9030
- return __generator(this, function (_a) {
9031
- switch (_a.label) {
9032
- case 0:
9033
- if (!content.externalId) return [3 /*break*/, 1];
9034
- this.router.navigate(["app/toc/ext/" + content.contentId]);
9035
- return [3 /*break*/, 3];
9036
- case 1: return [4 /*yield*/, this.contSvc.getResourseLink(content)];
9037
- case 2:
9038
- urlData = _a.sent();
9039
- this.router.navigate([urlData.url], {
9040
- queryParams: urlData.queryParams
9041
- });
9042
- _a.label = 3;
9043
- case 3: return [2 /*return*/];
9044
- }
9045
- });
9046
- });
9145
+ function (_error) {
9146
+ // tslint:disable-next-line: align
9147
+ _this.loading = false;
9148
+ }));
9047
9149
  };
9048
9150
  /**
9151
+ * @param {?} rank
9049
9152
  * @return {?}
9050
9153
  */
9051
- CardsComponent.prototype.getCbPlanData = /**
9154
+ TopLearnersComponent.prototype.getRank = /**
9155
+ * @param {?} rank
9052
9156
  * @return {?}
9053
9157
  */
9054
- function () {
9055
- /** @type {?} */
9056
- var cbpList = {};
9057
- if (localStorage.getItem('cbpData')) {
9058
- /** @type {?} */
9059
- var cbpListArr = JSON.parse(localStorage.getItem('cbpData') || '');
9060
- if (cbpListArr && cbpListArr.length) {
9061
- cbpListArr.forEach((/**
9062
- * @param {?} data
9063
- * @return {?}
9064
- */
9065
- function (data) {
9066
- cbpList[data.identifier] = data;
9067
- }));
9068
- }
9069
- this.cbPlanMapData = cbpList;
9070
- // this.karmaPointLoading = false
9071
- clearInterval(this.cbPlanInterval);
9158
+ function (rank) {
9159
+ if (rank === 1) {
9160
+ return "1st";
9161
+ }
9162
+ if (rank === 2) {
9163
+ return "2nd";
9164
+ }
9165
+ if (rank === 3) {
9166
+ return "3rd";
9167
+ }
9168
+ else {
9169
+ return rank + "th";
9072
9170
  }
9073
9171
  };
9074
9172
  /**
9075
9173
  * @return {?}
9076
9174
  */
9077
- CardsComponent.prototype.getEnrollmentData = /**
9175
+ TopLearnersComponent.prototype.getColor = /**
9078
9176
  * @return {?}
9079
9177
  */
9080
9178
  function () {
9081
- if (localStorage.getItem('enrollmentMapData')) {
9082
- this.enrollmentMapData = JSON.parse(localStorage.getItem('enrollmentMapData') || '{}');
9083
- clearInterval(this.enrollInterval);
9084
- }
9179
+ /** @type {?} */
9180
+ var circleColor = '';
9181
+ /** @type {?} */
9182
+ var randomIndex = Math.floor(Math.random() * Math.floor(this.colors.length));
9183
+ circleColor = this.colors[randomIndex];
9184
+ return circleColor;
9085
9185
  };
9086
9186
  /**
9087
- * @param {?} data
9187
+ * @param {?} name
9088
9188
  * @return {?}
9089
9189
  */
9090
- CardsComponent.prototype.raiseCardClick = /**
9091
- * @param {?} data
9190
+ TopLearnersComponent.prototype.createInititals = /**
9191
+ * @param {?} name
9092
9192
  * @return {?}
9093
9193
  */
9094
- function (data) {
9095
- this.triggerTelemetry.emit(data);
9194
+ function (name) {
9195
+ /** @type {?} */
9196
+ var initials = '';
9197
+ /** @type {?} */
9198
+ var array = name.toString().split(' ');
9199
+ if (array[0] !== 'undefined' && typeof array[1] !== 'undefined') {
9200
+ initials += array[0].charAt(0);
9201
+ initials += array[1].charAt(0);
9202
+ }
9203
+ else {
9204
+ for (var i = 0; i < name.length; i += 1) {
9205
+ if (name.charAt(i) === ' ') {
9206
+ continue;
9207
+ }
9208
+ if (name.charAt(i) === name.charAt(i)) {
9209
+ initials += name.charAt(i);
9210
+ if (initials.length === 2) {
9211
+ break;
9212
+ }
9213
+ }
9214
+ }
9215
+ }
9216
+ return initials.toUpperCase();
9096
9217
  };
9097
- CardsComponent.decorators = [
9218
+ TopLearnersComponent.decorators = [
9098
9219
  { type: core.Component, args: [{
9099
- selector: 'sb-uic-cards',
9100
- template: "<div class=\"widget-card-content-new\">\n <ng-container *ngIf=\"widgetData && (((widgetData?.deletedMode || 'none') === 'hide' && !!!isLiveOrMarkForDeletion)\n ? false\n : !((widgetData?.intranetMode || 'none') === 'hide' && !!showIntranetContent))\"\n [ngSwitch]=\"( (widgetData && widgetData?.cardSubType) || 'cardPortraitLib')\">\n <ng-container *ngSwitchDefault [ngTemplateOutlet]=\"cardPortraitLib\"></ng-container>\n <ng-container *ngSwitchCase=\"'user-card'\" [ngTemplateOutlet]=\"cardUser\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-portrait-lib-skeleton'\" [ngTemplateOutlet]=\"cardPortraitLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-portrait-lib'\" [ngTemplateOutlet]=\"cardPortraitLib\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-landscape-lib-skeleton'\" [ngTemplateOutlet]=\"cardLandscapeLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-landscape-lib'\" [ngTemplateOutlet]=\"cardLandscapeLib\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-wide-lib-skeleton'\" [ngTemplateOutlet]=\"cardWideLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-wide-lib'\" [ngTemplateOutlet]=\"cardWideLib\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-wide-v2'\" [ngTemplateOutlet]=\"cardWideV2\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-wide-v2-skeleton'\" [ngTemplateOutlet]=\"cardWideV2Skeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-mdo-lib'\" [ngTemplateOutlet]=\"cardMdo\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-mdo-home-lib'\" [ngTemplateOutlet]=\"cardMdoHome\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-mdo-home-lib-skeleton'\" [ngTemplateOutlet]=\"cardMdoHomeSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-mdo-lib-skeleton'\" [ngTemplateOutlet]=\"cardMdoSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-scheduled-assessment'\" [ngTemplateOutlet]=\"cardScheduledAssessment\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-scheduled-assessment-skeleton'\" [ngTemplateOutlet]=\"cardScheduledAssessmentSkelton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-karma-program-lib'\" [ngTemplateOutlet]=\"cardKarmaProgram\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-karma-program-lib-skeleton'\" [ngTemplateOutlet]=\"cardKarmaProgramSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-progress-portrait-lib'\" [ngTemplateOutlet]=\"cardProgressLib\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-progress-portrait-lib-skeleton'\" [ngTemplateOutlet]=\"cardProgressLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-karma-program-lib-v2'\" [ngTemplateOutlet]=\"cardKarmaProgramV2\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-karma-program-lib-v2-skeleton'\" [ngTemplateOutlet]=\"cardKarmaProgramV2\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-providers-lib'\" [ngTemplateOutlet]=\"cardProvider\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-providers-lib-skeleton'\" [ngTemplateOutlet]=\"cardProviderSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-portrait-ext-lib-skeleton'\" [ngTemplateOutlet]=\"cardPortraitExtLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-portrait-ext-lib'\" [ngTemplateOutlet]=\"cardPortraitExtLib\"></ng-container>\n\n </ng-container>\n</div>\n\n<ng-template #cardPortraitLibSkeleton>\n <sb-uic-card-portrait [widgetData]=\"widgetData\" [isCardLoading]=\"true\"></sb-uic-card-portrait>\n</ng-template>\n<ng-template #cardPortraitLib>\n <sb-uic-card-portrait \n [cbPlanMapData]=\"cbPlanMapData\"\n (contentData)=\"getRedirectUrlData($event)\" [widgetData]=\"widgetData\" [isCardLoading]=\"false\"></sb-uic-card-portrait>\n</ng-template>\n<ng-template #cardLandscapeLibSkeleton>\n <sb-uic-card-landscape [widgetData]=\"widgetData\" \n [cbPlanMapData]=\"cbPlanMapData\" [isCardLoading]=\"true\"></sb-uic-card-landscape>\n</ng-template>\n<ng-template #cardLandscapeLib>\n <sb-uic-card-landscape\n (contentData)=\"getRedirectUrlData($event)\"\n (triggerTelemetry)=\"raiseCardClick($event)\"\n [widgetData]=\"widgetData\"\n [cbPlanMapData]=\"cbPlanMapData\"\n [isCardLoading]=\"false\">\n </sb-uic-card-landscape>\n</ng-template>\n\n<ng-template #cardWideLib>\n <sb-uic-card-wide (contentData)=\"getRedirectUrlData($event)\" [widgetData]=\"widgetData\"></sb-uic-card-wide>\n</ng-template>\n<ng-template #cardWideLibSkeleton>\n <sb-uic-card-wide [widgetData]=\"widgetData\"></sb-uic-card-wide>\n</ng-template>\n\n<ng-template #cardWideV2Skeleton>\n <sb-uic-card-wide-v2 [widgetData]=\"widgetData\" [isCardLoading]=\"true\" ></sb-uic-card-wide-v2>\n</ng-template>\n<ng-template #cardWideV2>\n <sb-uic-card-wide-v2\n (contentData)=\"getRedirectUrlData($event)\"\n (triggerTelemetry)=\"raiseCardClick($event)\"\n [cbPlanMapData]=\"cbPlanMapData\"\n [isCardLoading]=\"false\"\n [widgetData]=\"widgetData\">\n </sb-uic-card-wide-v2>\n</ng-template>\n\n<ng-template #cardUser>\n <sb-uic-card-user [widgetData]=\"widgetData\"></sb-uic-card-user>\n</ng-template>\n<ng-template #cardMdoHome>\n <sb-uic-card-mdo-channel-v1 [isCardLoading]=\"false\" [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel-v1>\n</ng-template>\n<ng-template #cardMdoHomeSkeleton>\n <sb-uic-card-mdo-channel-v1 [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel-v1>\n</ng-template>\n<ng-template #cardMdo>\n <sb-uic-card-mdo-channel [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel>\n</ng-template>\n<ng-template #cardMdoSkeleton>\n <sb-uic-card-mdo-channel [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel>\n</ng-template>\n<ng-template #cardKarmaProgramSkeleton>\n <sb-uic-card-karma-programs [randomColorApply]=\"true\" \n [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-card-karma-programs>\n</ng-template>\n<ng-template #cardKarmaProgram>\n <sb-uic-card-karma-programs [randomColorApply]=\"true\" \n [isCardLoading]=\"false\" [widgetData]=\"widgetData\"></sb-uic-card-karma-programs>\n</ng-template>\n<ng-template #cardScheduledAssessmentSkelton>\n <sb-uic-card-assessment [widgetData]=\"widgetData\" [isCardLoading]=\"true\"></sb-uic-card-assessment>\n</ng-template>\n<ng-template #cardScheduledAssessment>\n <sb-uic-card-assessment [widgetData]=\"widgetData\" (contentData)=\"getRedirectUrlData($event)\" [isCardLoading]=\"false\" [enrollmentMapData]=\"enrollmentMapData\"></sb-uic-card-assessment>\n</ng-template>\n<ng-template #cardProgressLibSkeleton>\n <sb-uic-card-progress-portrait-lib \n [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-card-progress-portrait-lib>\n</ng-template>\n<ng-template #cardProgressLib>\n <sb-uic-card-progress-portrait-lib \n [isCardLoading]=\"false\" (contentData)=\"getRedirectUrlData($event)\" [widgetData]=\"widgetData\"></sb-uic-card-progress-portrait-lib>\n</ng-template>\n<ng-template #cardKarmaProgramV2>\n <!-- <sb-uic-card-karma-programs-v2 [widgetData]=\"widgetData\"><sb-uic-card-karma-programs-v2> -->\n</ng-template>\n<ng-template #cardProvider>\n <sb-uic-provider-card [isCardLoading]=\"false\" [widgetData]=\"widgetData\"></sb-uic-provider-card>\n</ng-template>\n<ng-template #cardProviderSkeleton>\n <sb-uic-provider-card [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-provider-card>\n</ng-template>\n\n<!-- cios card -->\n<ng-template #cardPortraitExtLibSkeleton>\n <sb-uic-card-portrait-ext [widgetData]=\"widgetData\" [isCardLoading]=\"true\"></sb-uic-card-portrait-ext>\n</ng-template>\n<ng-template #cardPortraitExtLib>\n <sb-uic-card-portrait-ext \n [cbPlanMapData]=\"cbPlanMapData\"\n (contentData)=\"getRedirectUrlData($event)\" [widgetData]=\"widgetData\" [isCardLoading]=\"false\"></sb-uic-card-portrait-ext>\n</ng-template>\n",
9101
- styles: [""]
9220
+ selector: 'sb-uic-top-learners',
9221
+ template: "<div class=\"flex flex-center\">\n <div>\n <div class=\"title-border\"></div>\n <div class=\"title\" [style.color]=\"objectData?.titleFontColor\">{{objectData?.title}} ({{month}})</div>\n <div class=\"title-border\"></div>\n </div> \n</div>\n<div class=\"top-learners-container\" *ngIf=\"!loading && results.length\">\n <div class=\"w-full margin-bottom-l margin-top-l\">\n <div class=\"flex gap-3\">\n <div *ngFor=\"let obj of results; let i=index\" class=\"flex-container\">\n <div class=\"flex-item user-box\">\n <div class=\"flex gap-3 img-name-sec\">\n <div class=\"flex gap-3\">\n <div class=\"profile-pic\" *ngIf=\"obj?.profile_image\">\n <img [src]=\"obj?.profile_image\" class=\"user-image\"/>\n </div>\n <div class=\"initial\" *ngIf=\"!obj?.profile_image\"\n [style.backgroundColor]=\"colors[i]\">\n {{createInititals(obj?.fullname)}}\n </div>\n <div class=\"flex flex-col gap-1\">\n <div class=\"name-sec\">{{obj?.fullname}}</div>\n <div class=\"designation-sec\">{{obj?.designation}}</div>\n <div class=\"designation-sec\">{{channnelName}}</div>\n </div>\n </div>\n <div class=\"flex gap-3\"> \n <div class=\"rank-sec\">{{getRank(+obj?.rank)}}</div>\n </div> \n </div>\n <div class=\"flex gap-2 kp-section\">\n <div class=\"kp-icon\"><img [src]=\"objectData?.kpIcon\" class=\"kp-image\"/></div>\n <div class=\"points\">{{obj?.total_points || 0}}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"top-learners-container\" *ngIf=\"!loading && results.length === 0\">\n <div class=\"margin-top-l noData\">\n No data\n </div>\n</div>\n\n<ng-container>\n <div class=\"top-learners-container\" *ngIf=\"loading\">\n <div class=\"w-full margin-bottom-l margin-top-l\">\n <div class=\"flex gap-3\">\n <div *ngFor=\"let obj of [1,2,3]\" class=\"flex-container\">\n <div class=\"flex-item user-box\">\n <div class=\"flex gap-3 img-name-sec\">\n <div class=\"flex gap-3\">\n <div class=\"profile-pic\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'44px'\"\n [height]=\"'44px'\"></sb-uic-skeleton-loader>\n </div>\n <div class=\"flex flex-col gap-1\">\n <div class=\"name-sec\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'200px'\"\n [height]=\"'24px'\"></sb-uic-skeleton-loader>\n </div>\n <div class=\"designation-sec\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'200px'\"\n [height]=\"'16px'\"></sb-uic-skeleton-loader>\n </div>\n <div class=\"designation-sec\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'200px'\"\n [height]=\"'16px'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n <div class=\"flex gap-3\"> \n <div class=\"rank-sec\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'44px'\"\n [height]=\"'44px'\"></sb-uic-skeleton-loader>\n </div>\n </div> \n </div>\n <div class=\"flex gap-2 kp-section\">\n <div class=\"kp-icon\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'32px'\"\n [height]=\"'32px'\"></sb-uic-skeleton-loader> \n </div>\n <div class=\"points\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded objIcon'\" [width]=\"'32px'\"\n [height]=\"'32px'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</ng-container>",
9222
+ styles: [".title{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:center;padding:15px}.title-border{margin:10px;width:240px;height:3px;background:linear-gradient(90deg,rgba(255,255,255,0) 0,#ef951e 20%,#ef951e 80%,rgba(255,255,255,0) 100%)}.noData{border:1px solid #1b4ca1;padding:15px;display:flex;justify-content:center;border-radius:12px}.top-learners-container{overflow:auto}::-webkit-scrollbar{height:10px!important}::-webkit-scrollbar-track{background:#eff3f9!important}.user-box{width:360px;height:134px;border-radius:8px;background-color:#fff;padding:16px;position:relative}.flex-container{display:flex}.flex-item{flex:0 0 auto;white-space:nowrap}.img-name-sec{justify-content:space-between}.initial{width:44px;height:44px;border-radius:50%;align-items:center;display:flex;justify-content:center;font-weight:700;color:#fff}.user-image{width:44px;height:44px;border-radius:50%}.name-sec{font-family:Lato;font-size:16px;font-weight:700;line-height:19.2px;text-align:left;width:200px!important;overflow:hidden;text-overflow:ellipsis}.designation-sec{font-family:Lato;font-size:12px;font-weight:400;line-height:14.4px;text-align:left;opacity:.6;width:200px!important;overflow:hidden;text-overflow:ellipsis}.rank-sec{font-family:Montserrat;font-size:36px;font-weight:700;line-height:43.88px;text-align:left;color:#ef951e}.kp-section{justify-content:flex-end;position:absolute;right:18px;bottom:16px;align-items:center}.kp-image{width:32px;height:32px;padding-top:3px}.points{font-family:Lato;font-size:24px;font-weight:700;line-height:28.8px;text-align:left;color:#1b4ca1;padding-bottom:3px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:rgba(204,204,204,.8);border-radius:10px}@media screen and (max-width:768px){.user-box{width:343px}}"]
9102
9223
  }] }
9103
9224
  ];
9104
9225
  /** @nocollapse */
9105
- CardsComponent.ctorParameters = function () { return [
9106
- { type: utilsV2.UtilityService },
9107
- { type: WidgetContentService },
9108
- { type: router.Router }
9226
+ TopLearnersComponent.ctorParameters = function () { return [
9227
+ { type: InsiteDataService }
9109
9228
  ]; };
9110
- CardsComponent.propDecorators = {
9111
- widgetData: [{ type: core.Input }],
9112
- triggerTelemetry: [{ type: core.Output }]
9229
+ TopLearnersComponent.propDecorators = {
9230
+ objectData: [{ type: core.Input }],
9231
+ channelId: [{ type: core.Input }],
9232
+ channnelName: [{ type: core.Input }]
9113
9233
  };
9114
- return CardsComponent;
9115
- }(resolverV2.WidgetBaseComponent));
9234
+ return TopLearnersComponent;
9235
+ }());
9116
9236
  if (false) {
9117
9237
  /** @type {?} */
9118
- CardsComponent.prototype.widgetData;
9238
+ TopLearnersComponent.prototype.objectData;
9119
9239
  /** @type {?} */
9120
- CardsComponent.prototype.triggerTelemetry;
9240
+ TopLearnersComponent.prototype.channelId;
9121
9241
  /** @type {?} */
9122
- CardsComponent.prototype.isIntranetAllowedSettings;
9242
+ TopLearnersComponent.prototype.channnelName;
9123
9243
  /** @type {?} */
9124
- CardsComponent.prototype.cbPlanMapData;
9244
+ TopLearnersComponent.prototype.loading;
9125
9245
  /** @type {?} */
9126
- CardsComponent.prototype.cbPlanInterval;
9246
+ TopLearnersComponent.prototype.month;
9127
9247
  /** @type {?} */
9128
- CardsComponent.prototype.enrollInterval;
9248
+ TopLearnersComponent.prototype.results;
9129
9249
  /** @type {?} */
9130
- CardsComponent.prototype.enrollmentMapData;
9131
- /**
9132
- * @type {?}
9133
- * @private
9134
- */
9135
- CardsComponent.prototype.utilitySvc;
9136
- /**
9137
- * @type {?}
9138
- * @private
9139
- */
9140
- CardsComponent.prototype.contSvc;
9250
+ TopLearnersComponent.prototype.colors;
9141
9251
  /** @type {?} */
9142
- CardsComponent.prototype.router;
9252
+ TopLearnersComponent.prototype.insightSvc;
9143
9253
  }
9144
9254
 
9145
9255
  /**
9146
9256
  * @fileoverview added by tsickle
9147
9257
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9148
9258
  */
9149
- var CardResourceComponent = /** @class */ (function (_super) {
9150
- __extends(CardResourceComponent, _super);
9151
- function CardResourceComponent() {
9152
- return _super.call(this) || this;
9259
+ var TopLearnersModule = /** @class */ (function () {
9260
+ function TopLearnersModule() {
9261
+ }
9262
+ TopLearnersModule.decorators = [
9263
+ { type: core.NgModule, args: [{
9264
+ declarations: [TopLearnersComponent],
9265
+ imports: [
9266
+ common.CommonModule,
9267
+ SkeletonLoaderLibModule
9268
+ ],
9269
+ exports: [TopLearnersComponent],
9270
+ },] }
9271
+ ];
9272
+ return TopLearnersModule;
9273
+ }());
9274
+
9275
+ /**
9276
+ * @fileoverview added by tsickle
9277
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9278
+ */
9279
+ var ScrollableItemDirective = /** @class */ (function () {
9280
+ function ScrollableItemDirective(el) {
9281
+ this.el = el;
9153
9282
  }
9154
9283
  /**
9284
+ * @param {?} blockValue
9155
9285
  * @return {?}
9156
9286
  */
9157
- CardResourceComponent.prototype.ngOnInit = /**
9287
+ ScrollableItemDirective.prototype.scrollIntoView = /**
9288
+ * @param {?} blockValue
9158
9289
  * @return {?}
9159
9290
  */
9160
- function () {
9291
+ function (blockValue) {
9292
+ this.el.nativeElement.scrollIntoView({ behavior: 'smooth', block: blockValue });
9161
9293
  };
9162
- CardResourceComponent.decorators = [
9163
- { type: core.Component, args: [{
9164
- selector: 'ws-cb-widget-card-resource',
9165
- template: " <!-- <mat-card class=\"card-resource-container mr-5 padding-remove cursor-pointer \" [ngClass]=\"{\n greyOut:\n widgetData.deletedMode === 'greyOut' && !isLiveOrMarkForDeletion\n ? true\n : widgetData?.intranetMode === 'greyOut' && showIntranetContent\n }\" (click)=\"(showIntranetContent || !isLiveOrMarkForDeletion) && showSnackbar()\">\n <div class=\"display-contents\" [ngClass]=\"{\n disableClick:\n widgetData.deletedMode === 'greyOut' && !isLiveOrMarkForDeletion\n ? true\n : widgetData?.intranetMode === 'greyOut' && showIntranetContent\n }\">\n <ng-container *ngIf=\"widgetData.content\">\n <a (click)=\"raiseTelemetry();getRedirectUrlData(widgetData?.content); $event.stopPropagation()\" \n role=\"link\" i18n-aria-label>\n <ng-container *ngIf=\"!isCardFlipped\">\n <div class=\"status-danger\" role=\"note\" i18n-aria-label aria-label=\"Content expired or deleted\" i18n-matTooltip\n matTooltip=\"Content may be expired or deleted\" *ngIf=\"!isLiveOrMarkForDeletion\"></div>\n <div class=\"status-danger\" role=\"note\" i18n-aria-label aria-label=\"Intranet content\" i18n-matTooltip\n matTooltip=\"Available only in Company's network\"\n *ngIf=\"widgetData?.intranetMode === 'greyOut' && showIntranetContent\"></div>\n <button *ngIf=\"showFlip\" class=\"detail-button ws-mat-primary-lite-background-op30\" mat-icon-button\n (click)=\"isCardFlipped = true\" aria-label=\"Details\" i18n-aria-label=\"Details | Click to see details\">\n <mat-icon>flip_to_back</mat-icon>\n </button>\n <mat-card-content class=\"min-top\">\n <div style=\"position: relative; z-index: 1;\">\n <ng-container *ngIf=\"widgetData.content.posterImage\">\n <img mat-card-image [src]=\"widgetData.content.posterImage | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-container *ngIf=\"!widgetData.content.posterImage\">\n <ng-container *ngIf=\"widgetData.content.appIcon; else defaultImg\">\n <img mat-card-image [src]=\"widgetData.content.appIcon | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-template #defaultImg>\n <img mat-card-image [src]=\"defaultThumbnail\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\"\n [alt]=\"widgetData.content.name\" />\n </ng-template>\n </ng-container>\n <div class=\"source-div\" style=\"display: none;\">\n <img [src]=\"widgetData.content.creatorLogo\" class=\"source-icon\" [wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n [alt]=\"(widgetData.content.sourceName + '_' + widgetData.content.identifier)\" />\n </div>\n <ng-container *ngIf=\"widgetData?.content?.cbPlanEndDate\">\n <div class=\"cbp-mark\">\n <span>{{widgetData?.content?.cbPlanEndDate | date: 'd MMM, y'}}</span>\n </div>\n </ng-container>\n <ng-container *ngIf=\"cbPlanMapData && cbPlanMapData[widgetData?.content?.identifier]\">\n <ng-container [ngTemplateOutlet]=\"cbpPlan\" [ngTemplateOutletContext]=\"{data: {\n cbpData: cbPlanMapData[widgetData?.content?.identifier]\n }}\"></ng-container>\n </ng-container>\n <div class=\"duration-box right-corner\" *ngIf=\"widgetData?.content?.duration > 0\">\n <mat-icon class=\"mat-icon main_icon mr-1\">access_time</mat-icon>\n <span class=\" ws-mat-white-text duration\">\n {{ (widgetData?.content?.duration || 120)| pipeDurationTransform: 'hms' }}\n </span>\n </div>\n <div class=\"duration-box right-corner\" *ngIf=\"widgetData?.content?.programDuration > 0\">\n <mat-icon class=\"mat-icon main_icon mr-1\">access_time</mat-icon>\n <span class=\" ws-mat-white-text duration\">\n {{widgetData?.content?.programDuration}} {{widgetData?.content?.programDuration === 1 ? 'day' : 'days'}}\n </span>\n </div>\n </div>\n <div class=\"padding-m\">\n <div class=\"course_widget flex margin-remove\">\n <div class=\"flex flex-end course_v2\">\n <mat-icon class=\"mat-icon main_icon ws-mat-default-text margin-right-xs\">video_library</mat-icon>\n <ws-widget-display-content-type i18n-title title=\"Content Type\" *ngIf=\"widgetData.content?.primaryCategory\"\n class=\"ws-mat-black60-text font-normal mat-caption \" [displayContentType]=\"widgetData.content?.primaryCategory==='Course Unit'\n ?'Module'\n :widgetData.content?.primaryCategory\">\n\n </ws-widget-display-content-type>\n </div>\n <div class=\"flex ml-5 flex-end course_v2\">\n <mat-icon class=\"mat-icon main_icon ws-mat-default-text margin-right-xs\">video_library</mat-icon>\n <ws-widget-display-content-type i18n-title title=\"Content Type\" *ngIf=\"widgetData.content?.primaryCategory\"\n class=\"ws-mat-black60-text font-normal mat-caption \" [displayContentType]=\"widgetData.content?.primaryCategory==='Course Unit'\n ?'Module'\n :widgetData.content?.primaryCategory\">\n\n </ws-widget-display-content-type>\n </div>\n </div>\n <div [id]=\"'m-c-'+ widgetData.content?.identifier\"\n class=\"mat-subheading-1 title-text ws-mat-text-block-fade-gradient\">\n {{ widgetData.content.name }}\n </div>\n <div [id]=\"'m-c-'+ widgetData.content?.identifier\"\n class=\"mat-subheading-1 description-text font-medium ws-mat-text-block-fade-gradient\">\n {{ widgetData.content.name }}\n </div>\n <div class=\"flex w-full flex-wrap flex-middle\">\n <div class=\"course_logo_box\">\n <img [src]=\"widgetData.content.creatorLogo | pipePublicURL \" class=\"source-icon\" [wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n [alt]=\"(widgetData.content.sourceName + '_' + widgetData.content.identifier)\" />\n </div>\n <span class=\"org-text\">{{'cardcontentv2.by' | translate}} {{ (widgetData.content.organisation && widgetData.content.organisation[0]) ? widgetData.content.organisation[0] : 'Karmayogi Bharat' }}</span>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n <ng-container *ngIf=\"isCardFlipped\">\n <div class=\"flex items-center\">\n <h2 class=\"mat-subheading-2 flex-1 min-w-0 margin-remove-bottom\" i18n>{{'cardcontentv2.reason' | translate}}</h2>\n <button mat-icon-button (click)=\"isCardFlipped = false\">\n <mat-icon>close</mat-icon>\n </button>\n </div>\n <p class=\"text-justify mat-body-1\">\n {{ widgetData.content.reason }}\n </p>\n </ng-container>\n </a>\n </ng-container>\n </div>\n </mat-card> -->\n",
9166
- styles: [".card-resource-container{position:relative;width:384px;min-height:346px;border-radius:8px;box-sizing:border-box;box-shadow:0 10px 30px rgba(153,153,153,.2);overflow:hidden;height:450px;margin:20px 8px}.card-resource-container .icon_text{font-size:12px;line-height:16px;text-transform:uppercase}.card-resource-container .description-text{margin:12px 0;font-weight:400}.card-resource-container .course_logo_box{width:24px;height:24px;background:#fff;border-radius:4px;border:1px solid rgba(0,0,0,.1607843137);box-sizing:border-box}.card-resource-container .course_logo_box img{height:18px;width:18px;padding:2px;display:inline-block}.card-resource-container .course_logo_box p{display:inline-block;vertical-align:top}.card-resource-container .org-text{font-size:12px;font-weight:400;width:75%;padding-left:10px;word-break:break-all;white-space:initial;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.card-resource-container .source-div{position:relative;top:100px;background:#fff;z-index:3;border:1px solid #dedfe0;min-width:72px;min-height:72px;max-width:72px;max-height:72px;display:flex;border-radius:8px}.card-resource-container .source-div .source-icon{border-radius:8px;display:block;margin:auto;max-width:58px;max-height:-webkit-fill-available}.card-resource-container mat-card-content{background:#fff}.card-resource-container .card-img{max-height:240px;min-height:240px;width:100%;display:block;-o-object-fit:fill;object-fit:fill;border-top-left-radius:8px;border-top-right-radius:8px}.card-resource-container .mat-subheading-1{font:600 14px/24px Montserrat}.card-resource-container .complexity{padding-top:70px;display:flex;font-size:14px;line-height:21px;padding-bottom:10px}.card-resource-container .complexity .mode-tag{border-radius:5px;order:2;margin-left:auto;color:#fff;font-size:10px}.card-resource-container .complexity .duration{display:flex;margin-left:auto;order:3;font-weight:700}.card-resource-container .complexity .time-text{margin:0 5px 0 6px;font-weight:700}.card-resource-container .basic{margin:auto 0}.card-resource-container .title-text{word-break:break-all;white-space:initial;margin:8px 0;position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:48px}.card-resource-container .description-text{position:relative;overflow:hidden;height:42px;white-space:normal;text-overflow:ellipsis}"]
9167
- }] }
9294
+ ScrollableItemDirective.decorators = [
9295
+ { type: core.Directive, args: [{
9296
+ selector: '[sbUicScrollableItem]'
9297
+ },] }
9168
9298
  ];
9169
9299
  /** @nocollapse */
9170
- CardResourceComponent.ctorParameters = function () { return []; };
9171
- CardResourceComponent.propDecorators = {
9172
- widgetData: [{ type: core.Input }]
9300
+ ScrollableItemDirective.ctorParameters = function () { return [
9301
+ { type: core.ElementRef }
9302
+ ]; };
9303
+ ScrollableItemDirective.propDecorators = {
9304
+ key: [{ type: core.Input, args: ['sbUicScrollableItem',] }]
9173
9305
  };
9174
- return CardResourceComponent;
9175
- }(resolverV2.WidgetBaseComponent));
9306
+ return ScrollableItemDirective;
9307
+ }());
9176
9308
  if (false) {
9177
9309
  /** @type {?} */
9178
- CardResourceComponent.prototype.widgetData;
9310
+ ScrollableItemDirective.prototype.key;
9311
+ /**
9312
+ * @type {?}
9313
+ * @private
9314
+ */
9315
+ ScrollableItemDirective.prototype.el;
9179
9316
  }
9180
9317
 
9181
9318
  /**
9182
9319
  * @fileoverview added by tsickle
9183
9320
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9184
9321
  */
9185
- var CardPortraitComponent = /** @class */ (function () {
9186
- function CardPortraitComponent(snackBar, translate, langtranslations, configSvc, contSvc) {
9187
- var _this = this;
9188
- this.snackBar = snackBar;
9322
+ var CbpPlanComponent = /** @class */ (function () {
9323
+ function CbpPlanComponent(translate, langtranslations) {
9189
9324
  this.translate = translate;
9190
9325
  this.langtranslations = langtranslations;
9191
- this.configSvc = configSvc;
9192
- this.contSvc = contSvc;
9193
- this.isCardLoading = false;
9194
- this.contentData = new core.EventEmitter();
9195
- this.isCardFlipped = false;
9196
- this.acbpConstants = NsCardContent$1.ACBPConst;
9197
- this.showFlip = false;
9198
- this.widgetType = 'df';
9199
- this.widgetSubType = 'sdf';
9200
- this.langtranslations.languageSelectedObservable.subscribe((/**
9201
- * @return {?}
9202
- */
9203
- function () {
9204
- if (localStorage.getItem('websiteLanguage')) {
9205
- _this.translate.setDefaultLang('en');
9206
- /** @type {?} */
9207
- var lang = (/** @type {?} */ (localStorage.getItem('websiteLanguage')));
9208
- _this.translate.use(lang);
9209
- }
9210
- }));
9326
+ this.mobileHeight = false;
9327
+ this.fetchDataFromApi = false;
9328
+ this.openDialog = new core.EventEmitter();
9329
+ this.isLoading = false;
9330
+ this.currentIndex = 0;
9331
+ this.styleData = {};
9332
+ this.contentdata = [];
9211
9333
  }
9212
9334
  /**
9213
9335
  * @return {?}
9214
9336
  */
9215
- CardPortraitComponent.prototype.ngOnInit = /**
9337
+ CbpPlanComponent.prototype.ngOnInit = /**
9216
9338
  * @return {?}
9217
9339
  */
9218
9340
  function () {
9219
- /** @type {?} */
9220
- var instanceConfig = this.configSvc.instanceConfig;
9221
- if (instanceConfig) {
9222
- this.defaultThumbnail = instanceConfig.logos.defaultContent || '';
9223
- this.sourceLogos = instanceConfig.sources;
9224
- this.defaultSLogo = instanceConfig.logos.defaultSourceLogo || '';
9225
- }
9226
- else {
9227
- this.defaultThumbnail = '/assets/instances/eagle/app_logos/default.png';
9228
- this.defaultSLogo = '/assets/instances/eagle/app_logos/KarmayogiBharat_Logo.svg';
9341
+ var _this = this;
9342
+ this.styleData = this.objectData && this.objectData.sliderData && this.objectData.sliderData.styleData;
9343
+ if (this.objectData && this.objectData.list) {
9344
+ this.objectData.list.forEach((/**
9345
+ * @param {?} contentEle
9346
+ * @return {?}
9347
+ */
9348
+ function (contentEle) {
9349
+ /** @type {?} */
9350
+ var localData = {};
9351
+ localData['title'] = contentEle.title;
9352
+ localData['downloaUrl'] = contentEle.downloaUrl;
9353
+ localData['cardSubType'] = "card-wide-lib";
9354
+ localData['cardCustomeClass'] = "";
9355
+ _this.contentdata.push(localData);
9356
+ }));
9229
9357
  }
9230
9358
  };
9231
9359
  /**
9360
+ * @param {?} indexValue
9232
9361
  * @return {?}
9233
9362
  */
9234
- CardPortraitComponent.prototype.showSnackbar = /**
9363
+ CbpPlanComponent.prototype.getCurrentIndex = /**
9364
+ * @param {?} indexValue
9235
9365
  * @return {?}
9236
9366
  */
9237
- function () {
9238
- if (this.showIntranetContent) {
9239
- this.snackBar.open('Content is only available in intranet', 'X', { duration: 2000 });
9240
- }
9241
- else if (!this.isLiveOrMarkForDeletion) {
9242
- this.snackBar.open('Content may be expired or deleted', 'X', { duration: 2000 });
9243
- }
9367
+ function (indexValue) {
9368
+ this.currentIndex = indexValue;
9244
9369
  };
9245
9370
  /**
9246
- * @param {?} contentData
9371
+ * @param {?} item
9247
9372
  * @return {?}
9248
9373
  */
9249
- CardPortraitComponent.prototype.getRedirectUrlData = /**
9250
- * @param {?} contentData
9374
+ CbpPlanComponent.prototype.getFileName = /**
9375
+ * @param {?} item
9251
9376
  * @return {?}
9252
9377
  */
9253
- function (contentData) {
9254
- // for telemetry
9255
- if (this.widgetData && this.widgetData.context && this.widgetData.context.pageSection) {
9256
- contentData['typeOfTelemetry'] = this.widgetData.context.pageSection;
9257
- }
9258
- this.contSvc.changeTelemetryData(contentData);
9259
- // for redirection
9260
- this.contentData.emit(contentData);
9378
+ function (item) {
9379
+ console.log(item.downloadUrl);
9380
+ return item.downloadUrl.split("/").at(-1);
9261
9381
  };
9262
- CardPortraitComponent.decorators = [
9382
+ /**
9383
+ * @param {?} label
9384
+ * @param {?} type
9385
+ * @return {?}
9386
+ */
9387
+ CbpPlanComponent.prototype.translateLabels = /**
9388
+ * @param {?} label
9389
+ * @param {?} type
9390
+ * @return {?}
9391
+ */
9392
+ function (label, type) {
9393
+ return this.langtranslations.translateActualLabel(label, type, '');
9394
+ };
9395
+ /**
9396
+ * @param {?} item
9397
+ * @return {?}
9398
+ */
9399
+ CbpPlanComponent.prototype.downloadCBPPlan = /**
9400
+ * @param {?} item
9401
+ * @return {?}
9402
+ */
9403
+ function (item) {
9404
+ /** @type {?} */
9405
+ var downloadUrl = item.downloaUrl;
9406
+ /** @type {?} */
9407
+ var xhr = new XMLHttpRequest();
9408
+ xhr.open('GET', downloadUrl, true);
9409
+ xhr.responseType = 'blob';
9410
+ xhr.onload = (/**
9411
+ * @return {?}
9412
+ */
9413
+ function () {
9414
+ if (xhr.status === 200) {
9415
+ /** @type {?} */
9416
+ var blob = new Blob([xhr.response], { type: 'application/pdf' });
9417
+ /** @type {?} */
9418
+ var url = window.URL.createObjectURL(blob);
9419
+ /** @type {?} */
9420
+ var a = document.createElement('a');
9421
+ a.href = url;
9422
+ a.download = downloadUrl.split("/").at(-1);
9423
+ document.body.appendChild(a);
9424
+ a.click();
9425
+ document.body.removeChild(a);
9426
+ window.URL.revokeObjectURL(url);
9427
+ }
9428
+ else {
9429
+ console.error('Error downloading the PDF', xhr.statusText);
9430
+ }
9431
+ });
9432
+ xhr.onerror = (/**
9433
+ * @return {?}
9434
+ */
9435
+ function () {
9436
+ console.error('Network error');
9437
+ });
9438
+ xhr.send();
9439
+ };
9440
+ CbpPlanComponent.decorators = [
9263
9441
  { type: core.Component, args: [{
9264
- selector: 'sb-uic-card-portrait',
9265
- template: "<ng-container *ngIf=\"!isCardLoading\">\n <mat-card class=\"card-standard-container mr-5 padding-remove cursor-pointer {{widgetData?.cardCustomeClass}}\" [ngClass]=\"{\n greyOut:\n widgetData.deletedMode === 'greyOut' && !isLiveOrMarkForDeletion\n ? true\n : widgetData?.intranetMode === 'greyOut' && showIntranetContent\n }\" (click)=\"(showIntranetContent || !isLiveOrMarkForDeletion) && showSnackbar()\">\n <div class=\"display-contents\" [ngClass]=\"{\n disableClick:\n widgetData.deletedMode === 'greyOut' && !isLiveOrMarkForDeletion\n ? true\n : widgetData?.intranetMode === 'greyOut' && showIntranetContent\n }\">\n <ng-container *ngIf=\"widgetData.content\">\n <a (click)=\"getRedirectUrlData(widgetData?.content); $event.stopPropagation()\"\n role=\"link\" i18n-aria-label>\n <ng-container *ngIf=\"!isCardFlipped\">\n <div class=\"status-danger\" role=\"note\" i18n-aria-label aria-label=\"Content expired or deleted\" i18n-matTooltip\n matTooltip=\"Content may be expired or deleted\" *ngIf=\"!isLiveOrMarkForDeletion\"></div>\n <div class=\"status-danger\" role=\"note\" i18n-aria-label aria-label=\"Intranet content\" i18n-matTooltip\n matTooltip=\"Available only in Company's network\"\n *ngIf=\"widgetData?.intranetMode === 'greyOut' && showIntranetContent\"></div>\n <button *ngIf=\"showFlip\" class=\"detail-button ws-mat-primary-lite-background-op30\" mat-icon-button\n (click)=\"isCardFlipped = true\" aria-label=\"Details\" i18n-aria-label=\"Details | Click to see details\">\n <mat-icon>flip_to_back</mat-icon>\n </button>\n <mat-card-content class=\"min-top\">\n <div style=\"position: relative; z-index: 1;\">\n <ng-container *ngIf=\"widgetData.content.posterImage\">\n <img mat-card-image [src]=\"widgetData.content.posterImage | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-container *ngIf=\"!widgetData.content.posterImage\">\n <ng-container *ngIf=\"widgetData.content.appIcon; else defaultImg\">\n <img mat-card-image [src]=\"widgetData.content.appIcon | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-template #defaultImg>\n <img mat-card-image [src]=\"defaultThumbnail\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\"\n [alt]=\"widgetData.content.name\" />\n </ng-template>\n </ng-container>\n <div class=\"source-div\" style=\"display: none;\">\n <img [src]=\"widgetData.content.creatorLogo\" class=\"source-icon\" [wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n [alt]=\"(widgetData.content.sourceName + '_' + widgetData.content.identifier)\" />\n </div>\n <ng-container *ngIf=\"widgetData?.content?.cbPlanEndDate\">\n <div class=\"cbp-mark\">\n <span>{{widgetData?.content?.cbPlanEndDate | date: 'd MMM, y'}}</span>\n </div>\n </ng-container>\n <!-- <ng-container *ngIf=\"widgetData?.content?.endDate\">\n <div class=\"cbp-mark\">\n <p *ngIf=\"widgetData?.content?.planDuration === acbpConstants?.UPCOMING\" class=\"cbp-warning\">{{widgetData?.content?.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"widgetData?.content?.planDuration === acbpConstants?.SUCCESS\" class=\"cbp-success\">{{widgetData?.content?.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"widgetData?.content?.planDuration === acbpConstants?.OVERDUE\" class=\"cbp-danger\">Over due</p>\n </div>\n </ng-container> -->\n <ng-container *ngIf=\"cbPlanMapData && cbPlanMapData[widgetData?.content?.identifier] && cbPlanMapData[widgetData?.content?.identifier]?.contentStatus < 2\">\n <ng-container [ngTemplateOutlet]=\"cbpPlan\" [ngTemplateOutletContext]=\"{data: {\n cbpData: cbPlanMapData[widgetData?.content?.identifier]\n }}\"></ng-container>\n </ng-container>\n <div class=\"duration-box right-corner\" *ngIf=\"widgetData?.content?.duration > 0\">\n <mat-icon class=\"mat-icon main_icon mr-1\">access_time</mat-icon>\n <span class=\" ws-mat-white-text duration\">\n {{ (widgetData?.content?.duration || 120)| pipeDurationTransform: 'hms' }}\n </span>\n </div>\n <div class=\"duration-box right-corner\" *ngIf=\"widgetData?.content?.programDuration > 0\">\n <mat-icon class=\"mat-icon main_icon mr-1\">access_time</mat-icon>\n <span class=\" ws-mat-white-text duration\">\n {{widgetData?.content?.programDuration}} {{widgetData?.content?.programDuration === 1 ? 'day' : 'days'}}\n </span>\n </div>\n </div>\n <div class=\"padding-m\">\n <div class=\"course_widget flex margin-remove\">\n <div class=\"flex flex-end course_v2\">\n <mat-icon class=\"mat-icon main_icon ws-mat-default-text margin-right-xs\">video_library</mat-icon>\n <sb-uic-display-content-type i18n-title title=\"Content Type\" *ngIf=\"widgetData.content?.primaryCategory\"\n class=\"ws-mat-black60-text font-normal mat-caption \" [displayContentType]=\"widgetData.content?.primaryCategory==='Course Unit'\n ?'Module'\n :widgetData.content?.primaryCategory\">\n\n </sb-uic-display-content-type>\n </div>\n </div>\n <div [id]=\"'m-c-'+ widgetData.content?.identifier\"\n class=\"mat-subheading-1 title-text ws-mat-text-block-fade-gradient\">\n {{ widgetData.content.name }}\n </div>\n <div class=\"flex w-full flex-wrap flex-middle\">\n <div class=\"course_logo_box\">\n <img [src]=\"widgetData.content.creatorLogo | pipePublicURL \" class=\"source-icon\" [wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n [alt]=\"(widgetData.content.sourceName + '_' + widgetData.content.identifier)\" />\n </div>\n <!-- <span class=\"org-text\">{{'cardcontentv2.by' | translate}} -->\n <span class=\"org-text\">By&nbsp; {{ (widgetData?.content?.organisation && widgetData?.content?.organisation[0]) ? widgetData?.content?.organisation[0] : 'Karmayogi Bharat' }}</span>\n </div>\n <div class=\"flex flex-middle rating-session margin-top-m\">\n <div class=\"flex flex-middle\" *ngIf=\"widgetData?.content?.avgRating\">\n <mat-icon class=\"mr-1\">star</mat-icon>\n <span>{{widgetData.content.avgRating}}</span>\n </div>\n <!-- <span class=\"most-enrolled-text margin-left-m\">{{ 'cardcontentv2.mostEnrolled' | translate }}</span> -->\n <ng-container *ngIf=\"widgetData?.content?.additionalTags && widgetData?.content?.additionalTags.includes('mostEnrolled')\">\n <span class=\"most-enrolled-text margin-left-xs\">\n <!-- {{ 'cardcontentv2.mostEnrolled' | translate }} -->\n </span>\n </ng-container>\n <ng-container *ngIf=\"widgetData?.content?.additionalTags && widgetData?.content?.additionalTags.includes('mostTrending')\">\n <span class=\"most-enrolled-text margin-left-xs\">\n <!-- {{ 'cardcontentv2.mostTrending' | translate }} -->\n </span>\n </ng-container>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n <ng-container *ngIf=\"isCardFlipped\">\n <div class=\"flex items-center\">\n <!-- <h2 class=\"mat-subheading-2 flex-1 min-w-0 margin-remove-bottom\" i18n>{{'cardcontentv2.reason' | translate}}</h2> -->\n <button mat-icon-button (click)=\"isCardFlipped = false\">\n <mat-icon>close</mat-icon>\n </button>\n </div>\n <p class=\"text-justify mat-body-1\">\n {{ widgetData.content.reason }}\n </p>\n </ng-container>\n </a>\n </ng-container>\n </div>\n</mat-card>\n</ng-container>\n\n<ng-container *ngIf=\"isCardLoading\">\n <mat-card class=\"card-standard-container mr-5 padding-remove\" >\n <div class=\"display-contents\" >\n <ng-container *ngIf=\"!isCardFlipped\">\n <mat-card-content class=\"min-top\">\n <div style=\"position: relative; z-index: 1;\">\n <ng-container>\n <sb-uic-skeleton-loader [width]=\"'100%'\" [height]=\"'140px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\n </ng-container>\n </div>\n <div class=\"padding-m\">\n <div class=\"course_widget flex margin-remove\">\n <div class=\"flex flex-end\">\n <sb-uic-skeleton-loader [width]=\"'65px'\" [height]=\"'16px'\" [bindingClass]=\"'flex rounded br-8'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n <div class=\"mat-subheading-1 title-text ws-mat-text-block-fade-gradient\">\n <sb-uic-skeleton-loader [width]=\"'100%'\" [height]=\"'16px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\n <sb-uic-skeleton-loader [width]=\"'111px'\" [height]=\"'16px'\" [bindingClass]=\"'flex rounded margin-top-s'\"></sb-uic-skeleton-loader>\n </div>\n <div class=\"flex w-full flex-wrap flex-middle margin-top-m\">\n <div class=\"\">\n <sb-uic-skeleton-loader [width]=\"'28px'\" [height]=\"'28px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\n </div>\n <span class=\"org-text\"> <sb-uic-skeleton-loader [width]=\"'111px'\" [height]=\"'16px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader></span>\n </div>\n <div class=\"flex flex-middle rating-session margin-top-m\">\n <div class=\"flex flex-middle\">\n <sb-uic-skeleton-loader [width]=\"'45px'\" [height]=\"'12px'\" [bindingClass]=\"'flex rounded margin-top-m'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n </div>\n </mat-card>\n</ng-container>\n\n<ng-template #cbpPlan let-data=\"data\">\n <div class=\"cbp-mark left-0 border-top-radius\">\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.UPCOMING\" class=\"cbp-warning\">{{data.cbpData.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.SUCCESS\" class=\"cbp-success\">{{data.cbpData.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.OVERDUE\" class=\"cbp-danger\">{{'OverDue' }}</p>\n </div>\n</ng-template>",
9266
- styles: [".course_widget{margin-top:10px}.course_widget .mat-icon{vertical-align:middle;color:#ef951e!important}.course_widget .course_v2{border:1px solid #ef951e;padding:4px 8px;align-items:end;border-radius:16px}.course_widget .main_icon{font-size:16px;width:16px;height:16px}.rating-session mat-icon{font-size:16px;height:16px;width:12px;padding-right:3px;color:#ef951e}.rating-session span{font-size:11px}.rating-session .most-enrolled-text{padding:0 8px;background:#ffea9e;border-radius:4px}.card-standard-container{position:relative;width:245px;min-height:346px;border-radius:8px;box-sizing:border-box;box-shadow:0 10px 30px rgba(153,153,153,.2);overflow:hidden;height:346px;margin:20px 8px}.card-standard-container .progress-bar{width:101%;margin-left:-15px;display:flex;margin-top:0;background:bisque;position:absolute;bottom:0}.card-standard-container ::ng-deep .mat-progress-bar{height:8px!important}.card-standard-container .icon_text{font-size:12px;line-height:16px;text-transform:uppercase}.card-standard-container .course_logo_box{width:38px;height:38px;background:#fff;border-radius:8px;box-sizing:border-box;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.card-standard-container .course_logo_box img{height:28px;width:28px;padding:5px;display:inline-block}.card-standard-container .course_logo_box p{display:inline-block;vertical-align:top}.card-standard-container .org-text{font-size:12px;font-weight:400;width:75%;padding-left:10px;word-break:break-all;white-space:initial;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.card-standard-container .source-div{position:relative;top:100px;background:#fff;z-index:3;border:1px solid #dedfe0;min-width:72px;min-height:72px;max-width:72px;max-height:72px;display:flex;border-radius:8px}.card-standard-container .source-div .source-icon{border-radius:8px;display:block;margin:auto;max-width:58px;max-height:-webkit-fill-available}.card-standard-container mat-card-content{background:#fff}.card-standard-container .card-img{min-width:245px;max-height:140px;min-height:140px;display:block;-o-object-fit:fill;object-fit:fill;border-top-left-radius:8px;border-top-right-radius:8px;width:100%}.card-standard-container .mat-subheading-1{font:600 14px/24px Montserrat}.card-standard-container .complexity{padding-top:70px;display:flex;font-size:14px;line-height:21px;padding-bottom:10px}.card-standard-container .complexity .mode-tag{border-radius:5px;order:2;margin-left:auto;color:#fff;font-size:10px}.card-standard-container .complexity .duration{display:flex;margin-left:auto;order:3;font-weight:700}.card-standard-container .complexity .time-text{margin:0 5px 0 6px;font-weight:700}.card-standard-container .basic{margin:auto 0}.card-standard-container .title-text{word-break:break-all;white-space:initial;margin:8px 0;position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:48px}.card-standard-container .description-text{position:relative;overflow:hidden;height:42px;white-space:normal;text-overflow:ellipsis}.duration-box{background:#000;position:absolute;border:none;display:flex;align-items:center;padding:4px;border-radius:4px}.duration-box.right-corner{right:4px;bottom:4px}.duration-box .mat-icon{vertical-align:middle;color:#fff!important;height:14px!important;width:14px!important;font-size:14px}.duration-box .duration{font:700 12px/16px Lato;display:inline-block;margin:0;padding:0}.width-238{width:238px!important}.cbp-mark{border-radius:12px 0;opacity:1;background-image:linear-gradient(90deg,rgba(0,0,0,.6) 0,rgba(0,0,0,0) 100%);position:absolute;top:0;padding:8px}.cbp-mark p{opacity:1;background-color:#fff;padding:4px;opacity:1;color:#1b2133;font-family:Lato-Regular;font-size:10px;font-weight:400;font-style:Regular;letter-spacing:.5px;text-align:left;line-height:12px;margin-bottom:0}.cbpwidth{width:340px}.cbp-plan{border-radius:4px;opacity:1;background-color:#1b4ca1;top:4px;left:4px;opacity:1;color:rgba(255,255,255,.95);font-family:Lato-Bold;font-size:12px;font-weight:700;font-style:normal;letter-spacing:.25px;text-align:center;line-height:16px;padding:4px}.cbp-info{opacity:1;color:#fff;font-family:Lato-Regular;font-size:10px;font-weight:400;font-style:normal;letter-spacing:.5px;text-align:left;line-height:12px;padding:2px}.cbp-danger{border-radius:2px;border:1px solid rgba(0,0,0,.08);background-color:#d13924!important;color:#fff!important;opacity:1}.cbp-success{border-radius:2px;border:1px solid #1d8922;background-color:#1d8922!important;color:#fff!important;opacity:1}.cbp-warning{border-radius:2px;border:1px solid #ef951e;background-color:#ef951e!important;color:#fff!important;opacity:1}"]
9442
+ selector: 'sb-uic-cbp-plan',
9443
+ template: "<div class=\"w-full\">\n <div class=\"flex item-center cbp-logo\">\n <div class=\"cbp-heading\"\n [style.backgroundColor]=\"objectData?.header?.background\"\n [style.color]=\"objectData?.header?.color\">\n {{objectData?.title}}\n </div>\n </div>\n \n <div class=\"cbp-list-container\" *ngIf=\"contentdata.length\"\n [style.borderColor]=\"objectData?.panelborder\"\n [style.backgroundColor]=\"objectData?.panelBackground\">\n <ng-container *ngIf=\"contentdata.length; else msgTemp\">\n <sb-uic-sliders-ng-content\n [title]=\"'providerName'\"\n [currentIndex]=\"currentIndex\"\n (currentIndexValue)=\"getCurrentIndex($event)\"\n [loadNgContentData]=\"true\" [widgetData]=\"contentdata\"\n [styleData]=\"styleData\">\n <div sliderbody>\n <div *ngFor=\"let item of contentdata; let i = index\" [hidden]=\"i !== currentIndex\">\n <div class=\"cbp-list-item\"\n [style.borderColor]=\"objectData?.listItem?.border\"\n [style.color]=\"objectData?.listItem?.border\"\n [style.backgroundColor]=\"objectData?.listItem?.background\">\n <div class=\"cbp-item-title\">{{item?.title}}</div>\n <div class=\"flex download-sec\">\n <div class=\"flex gap-3 cbp-download\" (click)=\"downloadCBPPlan(item)\">\n <img [src]=\"objectData?.downloadIcon\">Download\n </div>\n </div>\n </div>\n </div>\n </div>\n </sb-uic-sliders-ng-content>\n </ng-container>\n <ng-template #msgTemp>\n <div class=\"padding-bottom-m\">\n {{ translateLabels(objectData?.noData, 'home') }}\n </div>\n </ng-template>\n </div>\n</div>",
9444
+ styles: [".cbp-logo{align-items:center;justify-content:center}.cbp-heading{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:center;padding:10px 50px;border-radius:20px;margin-top:-3px}.cbp-list-container{border:1px solid #ccc;padding:40px 25px 0;border-radius:12px;margin-top:-20px}.cbp-list-item{padding:16px;border:1px solid #ccc;border-radius:12px}.cbp-item-title{font-family:Lato;font-size:14px;font-weight:400;line-height:20px;text-align:left;height:48px;padding-bottom:10px}.cbp-mob-icon{font-size:20px;width:20px;height:20px}.download-sec{align-items:center;justify-content:end}.cbp-download{display:flex;align-items:center;gap:4px;background:#fff;padding:6px 8px;border-radius:20px;cursor:pointer;font-family:Lato;font-size:12px;font-weight:700;line-height:20px;text-align:left}[hidden]{display:none!important}.cbp-list-container ::ng-deep.cbp-card{min-height:115px!important;padding-bottom:30px!important}.cbp-list-container ::ng-deep.banner-title{display:none}.cbp-list-container ::ng-deep.prev{font-size:10px;height:20px!important;width:20px!important;margin-left:-11px}.cbp-list-container ::ng-deep.next{font-size:10px;height:20px!important;width:20px!important;margin-right:-11px}"]
9267
9445
  }] }
9268
9446
  ];
9269
9447
  /** @nocollapse */
9270
- CardPortraitComponent.ctorParameters = function () { return [
9271
- { type: material.MatSnackBar },
9448
+ CbpPlanComponent.ctorParameters = function () { return [
9272
9449
  { type: core$1.TranslateService },
9273
- { type: MultilingualTranslationsService },
9274
- { type: utilsV2.ConfigurationsService },
9275
- { type: WidgetContentService }
9450
+ { type: MultilingualTranslationsService }
9276
9451
  ]; };
9277
- CardPortraitComponent.propDecorators = {
9278
- widgetData: [{ type: core.Input }],
9279
- isLiveOrMarkForDeletion: [{ type: core.Input }],
9280
- showIntranetContent: [{ type: core.Input }],
9281
- isIntranetAllowedSettings: [{ type: core.Input }],
9282
- isCardLoading: [{ type: core.Input }],
9283
- contentData: [{ type: core.Output }],
9284
- cbPlanMapData: [{ type: core.Input }]
9452
+ CbpPlanComponent.propDecorators = {
9453
+ objectData: [{ type: core.Input }],
9454
+ layoutType: [{ type: core.Input }],
9455
+ mobileHeight: [{ type: core.Input }],
9456
+ fetchDataFromApi: [{ type: core.Input }],
9457
+ channelId: [{ type: core.Input }],
9458
+ openDialog: [{ type: core.Output }],
9459
+ scrollableItems: [{ type: core.ViewChildren, args: [ScrollableItemDirective,] }]
9285
9460
  };
9286
- return CardPortraitComponent;
9461
+ return CbpPlanComponent;
9287
9462
  }());
9288
9463
  if (false) {
9289
9464
  /** @type {?} */
9290
- CardPortraitComponent.prototype.widgetData;
9291
- /** @type {?} */
9292
- CardPortraitComponent.prototype.isLiveOrMarkForDeletion;
9293
- /** @type {?} */
9294
- CardPortraitComponent.prototype.showIntranetContent;
9295
- /** @type {?} */
9296
- CardPortraitComponent.prototype.isIntranetAllowedSettings;
9297
- /** @type {?} */
9298
- CardPortraitComponent.prototype.isCardLoading;
9465
+ CbpPlanComponent.prototype.objectData;
9299
9466
  /** @type {?} */
9300
- CardPortraitComponent.prototype.contentData;
9467
+ CbpPlanComponent.prototype.layoutType;
9301
9468
  /** @type {?} */
9302
- CardPortraitComponent.prototype.cbPlanMapData;
9469
+ CbpPlanComponent.prototype.mobileHeight;
9303
9470
  /** @type {?} */
9304
- CardPortraitComponent.prototype.isCardFlipped;
9471
+ CbpPlanComponent.prototype.fetchDataFromApi;
9305
9472
  /** @type {?} */
9306
- CardPortraitComponent.prototype.acbpConstants;
9473
+ CbpPlanComponent.prototype.channelId;
9307
9474
  /** @type {?} */
9308
- CardPortraitComponent.prototype.defaultThumbnail;
9475
+ CbpPlanComponent.prototype.openDialog;
9309
9476
  /** @type {?} */
9310
- CardPortraitComponent.prototype.sourceLogos;
9477
+ CbpPlanComponent.prototype.isLoading;
9311
9478
  /** @type {?} */
9312
- CardPortraitComponent.prototype.defaultSLogo;
9479
+ CbpPlanComponent.prototype.currentIndex;
9313
9480
  /** @type {?} */
9314
- CardPortraitComponent.prototype.showFlip;
9481
+ CbpPlanComponent.prototype.styleData;
9315
9482
  /** @type {?} */
9316
- CardPortraitComponent.prototype.widgetType;
9483
+ CbpPlanComponent.prototype.contentdata;
9317
9484
  /** @type {?} */
9318
- CardPortraitComponent.prototype.widgetSubType;
9319
- /**
9320
- * @type {?}
9321
- * @private
9322
- */
9323
- CardPortraitComponent.prototype.snackBar;
9324
- /**
9325
- * @type {?}
9326
- * @private
9327
- */
9328
- CardPortraitComponent.prototype.translate;
9485
+ CbpPlanComponent.prototype.scrollableItems;
9329
9486
  /**
9330
9487
  * @type {?}
9331
9488
  * @private
9332
9489
  */
9333
- CardPortraitComponent.prototype.langtranslations;
9334
- /**
9335
- * @type {?}
9336
- * @private
9337
- */
9338
- CardPortraitComponent.prototype.configSvc;
9490
+ CbpPlanComponent.prototype.translate;
9339
9491
  /**
9340
9492
  * @type {?}
9341
9493
  * @private
9342
9494
  */
9343
- CardPortraitComponent.prototype.contSvc;
9495
+ CbpPlanComponent.prototype.langtranslations;
9344
9496
  }
9345
9497
 
9346
9498
  /**
9347
9499
  * @fileoverview added by tsickle
9348
9500
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9349
9501
  */
9350
- var PipePublicURL = /** @class */ (function () {
9351
- function PipePublicURL(environment) {
9352
- this.environment = environment;
9502
+ var SlidersNgContentLibComponent = /** @class */ (function (_super) {
9503
+ __extends(SlidersNgContentLibComponent, _super);
9504
+ function SlidersNgContentLibComponent(events, valueSvc) {
9505
+ var _this = _super.call(this) || this;
9506
+ _this.events = events;
9507
+ _this.valueSvc = valueSvc;
9508
+ _this.title = '';
9509
+ _this.loadNgContentData = false;
9510
+ _this.autoScroll = false;
9511
+ _this.currentIndexValue = new core.EventEmitter();
9512
+ _this.id = "banner_" + Math.random();
9513
+ _this.defaultMenuSubscribe = null;
9514
+ _this.isLtMedium$ = _this.valueSvc.isLtMedium$;
9515
+ _this.currentIndex = 0;
9516
+ _this.slideInterval = null;
9517
+ _this.isMobile = false;
9518
+ return _this;
9353
9519
  }
9354
9520
  /**
9355
- * @param {?} value
9356
9521
  * @return {?}
9357
9522
  */
9358
- PipePublicURL.prototype.transform = /**
9359
- * @param {?} value
9523
+ SlidersNgContentLibComponent.prototype.ngOnInit = /**
9360
9524
  * @return {?}
9361
9525
  */
9362
- function (value) {
9363
- /** @type {?} */
9364
- var mainUrl = value && value.split('/content').pop() || '';
9365
- /** @type {?} */
9366
- var finalURL = this.environment.contentHost + "/" + this.environment.contentBucket + "/content" + mainUrl;
9367
- return value ? finalURL : '';
9526
+ function () {
9527
+ var _this = this;
9528
+ if (this.autoScroll) {
9529
+ this.reInitiateSlideInterval();
9530
+ }
9531
+ this.defaultMenuSubscribe = this.isLtMedium$.subscribe((/**
9532
+ * @param {?} isLtMedium
9533
+ * @return {?}
9534
+ */
9535
+ function (isLtMedium) {
9536
+ _this.isMobile = isLtMedium;
9537
+ }));
9368
9538
  };
9369
- PipePublicURL.decorators = [
9370
- { type: core.Pipe, args: [{
9371
- name: 'pipePublicURL',
9372
- },] }
9373
- ];
9374
- /** @nocollapse */
9375
- PipePublicURL.ctorParameters = function () { return [
9376
- { type: undefined, decorators: [{ type: core.Inject, args: ['environment',] }] }
9377
- ]; };
9378
- return PipePublicURL;
9379
- }());
9380
- if (false) {
9381
- /** @type {?} */
9382
- PipePublicURL.prototype.environment;
9383
- }
9384
-
9385
- /**
9386
- * @fileoverview added by tsickle
9387
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9388
- */
9389
- var PipePublicURLModule = /** @class */ (function () {
9390
- function PipePublicURLModule() {
9391
- }
9392
- PipePublicURLModule.decorators = [
9393
- { type: core.NgModule, args: [{
9394
- declarations: [PipePublicURL],
9395
- imports: [
9396
- common.CommonModule,
9397
- ],
9398
- exports: [PipePublicURL],
9399
- },] }
9539
+ /**
9540
+ * @return {?}
9541
+ */
9542
+ SlidersNgContentLibComponent.prototype.reInitiateSlideInterval = /**
9543
+ * @return {?}
9544
+ */
9545
+ function () {
9546
+ var _this = this;
9547
+ if (this.widgetData && this.widgetData.length > 1) {
9548
+ try {
9549
+ if (this.slideInterval) {
9550
+ this.slideInterval.unsubscribe();
9551
+ }
9552
+ }
9553
+ catch (e) {
9554
+ }
9555
+ finally {
9556
+ this.slideInterval = rxjs.interval(8000).subscribe((/**
9557
+ * @return {?}
9558
+ */
9559
+ function () {
9560
+ if (_this.currentIndex === _this.widgetData.length - 1) {
9561
+ _this.currentIndex = 0;
9562
+ _this.currentIndexValue.emit(_this.currentIndex);
9563
+ }
9564
+ else {
9565
+ _this.currentIndex += 1;
9566
+ _this.currentIndexValue.emit(_this.currentIndex);
9567
+ }
9568
+ }));
9569
+ }
9570
+ }
9571
+ };
9572
+ /**
9573
+ * @param {?} index
9574
+ * @return {?}
9575
+ */
9576
+ SlidersNgContentLibComponent.prototype.slideTo = /**
9577
+ * @param {?} index
9578
+ * @return {?}
9579
+ */
9580
+ function (index) {
9581
+ if (index >= 0 && index < this.widgetData.length) {
9582
+ this.currentIndex = index;
9583
+ this.currentIndexValue.emit(this.currentIndex);
9584
+ }
9585
+ else if (index === this.widgetData.length) {
9586
+ this.currentIndex = 0;
9587
+ this.currentIndexValue.emit(this.currentIndex);
9588
+ }
9589
+ else {
9590
+ this.currentIndex = this.widgetData.length + index;
9591
+ this.currentIndexValue.emit(this.currentIndex);
9592
+ }
9593
+ if (this.autoScroll) {
9594
+ this.reInitiateSlideInterval();
9595
+ }
9596
+ };
9597
+ Object.defineProperty(SlidersNgContentLibComponent.prototype, "isOpenInNewTab", {
9598
+ get: /**
9599
+ * @return {?}
9600
+ */
9601
+ function () {
9602
+ /** @type {?} */
9603
+ var currentData = this.widgetData[this.currentIndex];
9604
+ if (currentData.redirectUrl && currentData.redirectUrl.includes('mailto') || this.widgetData[this.currentIndex].openInNewTab) {
9605
+ return true;
9606
+ }
9607
+ return false;
9608
+ },
9609
+ enumerable: true,
9610
+ configurable: true
9611
+ });
9612
+ /**
9613
+ * @return {?}
9614
+ */
9615
+ SlidersNgContentLibComponent.prototype.openInNewTab = /**
9616
+ * @return {?}
9617
+ */
9618
+ function () {
9619
+ /** @type {?} */
9620
+ var currentData = this.widgetData[this.currentIndex];
9621
+ if (currentData.redirectUrl && currentData.redirectUrl.includes('mailto') || this.widgetData[this.currentIndex].openInNewTab) {
9622
+ window.open(currentData.redirectUrl);
9623
+ }
9624
+ };
9625
+ /**
9626
+ * @param {?} bannerUrl
9627
+ * @return {?}
9628
+ */
9629
+ SlidersNgContentLibComponent.prototype.raiseTelemetry = /**
9630
+ * @param {?} bannerUrl
9631
+ * @return {?}
9632
+ */
9633
+ function (bannerUrl) {
9634
+ this.openInNewTab();
9635
+ /** @type {?} */
9636
+ var path = window.location.pathname.replace('/', '');
9637
+ /** @type {?} */
9638
+ var url = path + window.location.search;
9639
+ this.events.raiseInteractTelemetry({
9640
+ type: 'click',
9641
+ subType: 'banner',
9642
+ }, {
9643
+ pageUrl: url,
9644
+ bannerRedirectUrl: bannerUrl,
9645
+ }, {
9646
+ pageIdExt: 'banner',
9647
+ module: utilsV2.WsEvents.EnumTelemetrymodules.CONTENT,
9648
+ });
9649
+ };
9650
+ /**
9651
+ * @return {?}
9652
+ */
9653
+ SlidersNgContentLibComponent.prototype.ngOnDestroy = /**
9654
+ * @return {?}
9655
+ */
9656
+ function () {
9657
+ if (this.defaultMenuSubscribe) {
9658
+ this.defaultMenuSubscribe.unsubscribe();
9659
+ }
9660
+ };
9661
+ SlidersNgContentLibComponent.decorators = [
9662
+ { type: core.Component, args: [{
9663
+ selector: 'sb-uic-sliders-ng-content',
9664
+ template: "<div class=\"banner-container {{isMobile? styleData?.responsive?.bannerMetaClass : styleData?.bannerMetaClass}}\" (swipeleft)=\"slideTo(currentIndex + 1)\" (swiperight)=\"slideTo(currentIndex - 1)\"\n *ngIf=\"widgetData?.length > 1\" [style.height]=\"isMobile? styleData?.responsive?.customHeight : styleData?.customHeight\"\n [ngStyle]=\"{'border-radius': styleData?.borderRadius || '12px'}\">\n <ng-container *ngIf=\"!loadNgContentData\">\n <a (click)=\"raiseTelemetry(widgetData[currentIndex].redirectUrl)\"\n [routerLink]=\" !isOpenInNewTab && widgetData[currentIndex].redirectUrl? widgetData[currentIndex].redirectUrl : null\" class=\"banner-overlay\"\n [ngClass]=\"{'cursor-auto': !widgetData[currentIndex].redirectUrl}\">\n <div class=\"banner WidgetInstanceId\" *ngFor=\"let slide of widgetData; let i = index\" [hidden]=\"i !== currentIndex\">\n <img i18n-alt alt=\"Page Banner\" [src]=\"slide.banners\" wsUtilsImageResponsive class=\"banner-image\" />\n </div>\n </a>\n <ng-container *ngIf=\"isMobile && styleData?.responsive?.dots !== 'hidden' || !isMobile && styleData?.dots !== 'hidden'\">\n <div class=\"banner-meta {{isMobile? styleData?.responsive?.bannerMetaAlign : styleData?.bannerMetaAlign}}\">\n <a [routerLink]=\" !isOpenInNewTab && widgetData[currentIndex].redirectUrl? widgetData[currentIndex].redirectUrl : null\" class=\"banner-title text-truncate\"\n *ngIf=\"widgetData[currentIndex].title\" [title]=\"widgetData[currentIndex].title\">\n {{ widgetData[currentIndex].title }}\n </a>\n <div class=\"dots-container\" *ngIf=\"widgetData?.length > 1\">\n <span class=\"dot\" [ngClass]=\"{ active: j === currentIndex }\" *ngFor=\"let slide of widgetData; let j = index\"\n (click)=\"slideTo(j)\"></span>\n </div>\n </div>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"loadNgContentData\">\n <!-- <div class=\"banner WidgetInstanceId\" *ngFor=\"let slide of widgetData; let i = index\" [hidden]=\"i !== currentIndex\"> -->\n <ng-content select=\"[sliderbody]\"></ng-content>\n <!-- </div> -->\n <ng-container *ngIf=\"isMobile && styleData?.responsive?.dots !== 'hidden' || !isMobile && styleData?.dots !== 'hidden'\">\n <div class=\"banner-meta {{isMobile? styleData?.responsive?.bannerMetaAlign : styleData?.bannerMetaAlign}}\">\n <a [routerLink]=\" !isOpenInNewTab && widgetData[currentIndex].redirectUrl? widgetData[currentIndex].redirectUrl : null\" class=\"banner-title text-truncate\"\n *ngIf=\"widgetData[currentIndex].title\" [title]=\"widgetData[currentIndex].title\">\n {{ widgetData[currentIndex].title }}\n </a>\n <div class=\"dots-container\" *ngIf=\"widgetData?.length > 1\">\n <span class=\"dot\" [ngClass]=\"{ active: j === currentIndex }\" *ngFor=\"let slide of widgetData; let j = index\"\n (click)=\"slideTo(j)\"></span>\n <ng-content select=\"[sliderMeta]\"></ng-content>\n </div>\n </div>\n </ng-container>\n </ng-container>\n <div class=\"navigation {{isMobile? styleData?.responsive?.arrowsPlacement : styleData?.arrowsPlacement}}\" \n *ngIf=\"isMobile && styleData?.responsive?.navigationArrows !== 'hidden' || !isMobile && styleData?.navigationArrows !== 'hidden'\">\n <a *ngIf=\"widgetData?.length > 1\" role=\"button\" class=\"prev\" (click)=\"slideTo(currentIndex - 1)\">&#10094;</a>\n <a *ngIf=\"widgetData?.length > 1\" role=\"button\" class=\"next\" (click)=\"slideTo(currentIndex + 1)\">&#10095;</a>\n </div>\n</div>\n<div class=\"banner-container-solo margin-top-s\" *ngIf=\"widgetData?.length == 1\">\n <img i18n-alt alt=\"Page Banner\" width=\"100%\" height=\"100%\" [src]=\"widgetData[0].banners\" wsUtilsImageResponsive class=\"banner-image-solo\" />\n</div>\n\n<!-- <ng-container *ngIf=\"!widgetData?.length\">\n <div class=\"slider default-slider h-full\">\n <div class=\"relative h-full\">\n <img class=\"h-full\" src=\"assets/icons/home/default-slider-image.svg\" alt=\"\">\n <div class=\"default-title rounded-full\">\n <p class=\"mat-h1\">{{title}}</p>\n </div>\n </div>\n </div>\n</ng-container> -->\n",
9665
+ styles: [".banner-container{min-height:243px;position:relative;margin:auto;padding-bottom:40px}.banner-container.inline-meta{padding-bottom:0!important}.banner-container.flat .banner .banner-image{border-radius:0!important}.banner-overlay{z-index:1;top:0;left:0;width:100%;height:100%;background:linear-gradient(to left,rgba(0,0,0,.25) 0,rgba(0,0,0,0) 15%,rgba(0,0,0,0) 85%,rgba(0,0,0,.25) 100%);border-radius:inherit}.banner{-webkit-animation-name:fade;-webkit-animation-duration:1.5s;animation-name:fade;animation-duration:1.5s;border-radius:inherit;height:inherit}.banner .banner-image{width:100%;min-height:243px;display:block;border-radius:inherit;height:inherit}.banner-meta{text-align:center;z-index:2;padding:8px 12px;position:absolute;bottom:0;left:50%;border-radius:12px;transform:translateX(-50%);box-sizing:border-box}.banner-meta.left{left:0;transform:translateX(0)}.banner-meta.right{left:100%;transform:translateX(-100%)}.banner-meta.top-center{left:0;bottom:100%;transform:translateX(-100%)}.banner-meta .banner-title{color:#f2f2f2;margin-bottom:8px;font-size:1.1rem}@media only screen and (max-width:599px){.banner-meta .banner-title{display:none}}.banner-meta .dots-container{padding:8px;display:flex;align-items:center;justify-content:center}.banner-meta .dots-container .dot{cursor:pointer;height:6px;width:6px;margin:0 4px;background-color:rgba(0,0,0,.4);border-radius:50%;display:inline-block;transition:background-color .5s!important}@media only screen and (max-width:599px){.banner-meta .dots-container .dot{height:8px;width:8px;margin:0 4px}}.banner-meta .dots-container .dot.active{border-radius:4px;background-color:#f3962f;width:16px}@keyframes fade{from{opacity:.25}to{opacity:1}}.next,.prev{cursor:pointer;position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-weight:700;background-color:#1b2133!important;border-radius:50%;z-index:999;height:32px!important;width:32px!important;display:flex;align-items:center;margin-top:-16px;justify-content:center}.prev{left:0;margin-left:-16px}.next{right:0;margin-right:-16px}.navigation.bottom-right .prev{left:unset;right:45px;bottom:-15px;top:unset}.navigation.bottom-right .next{left:unset;right:15px;bottom:-15px;top:unset}.navigation.bottom-center .prev{left:calc(50% - 20px);right:unset;bottom:-15px;top:unset}.navigation.bottom-center .next{left:calc(50% + 20px);right:unset;bottom:-15px;top:unset}.navigation.bottom-left .prev{left:15px;right:unset;bottom:-15px;top:unset}.navigation.bottom-left .next{left:60px;right:unset;bottom:-15px;top:unset}.navigation.middle-inline .prev{left:30px}.navigation.middle-inline .next{right:30px}.banner-container-solo{overflow:hidden;margin:auto;border-radius:12px}.banner-image-solo{width:100%;display:block;border-radius:12px}.default-slider{height:100%;background:#d4e2fb}.default-slider .default-title{text-align:center;position:absolute;top:50%;left:0;right:0;margin:auto;transform:translateY(-50%);z-index:999;background:#e6efff;padding:32px;width:500px}.default-slider .default-title p{word-break:break-word;margin:0!important;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;text-transform:uppercase}@media screen and (max-width:768px){.default-slider{height:384px;width:100%}.default-slider .default-title{width:unset!important}}"]
9666
+ }] }
9667
+ ];
9668
+ /** @nocollapse */
9669
+ SlidersNgContentLibComponent.ctorParameters = function () { return [
9670
+ { type: utilsV2.EventService },
9671
+ { type: utilsV2.ValueService }
9672
+ ]; };
9673
+ SlidersNgContentLibComponent.propDecorators = {
9674
+ widgetData: [{ type: core.Input }],
9675
+ styleData: [{ type: core.Input }],
9676
+ title: [{ type: core.Input }],
9677
+ loadNgContentData: [{ type: core.Input }],
9678
+ autoScroll: [{ type: core.Input }],
9679
+ currentIndexValue: [{ type: core.Output }],
9680
+ id: [{ type: core.HostBinding, args: ['id',] }],
9681
+ currentIndex: [{ type: core.Input }]
9682
+ };
9683
+ return SlidersNgContentLibComponent;
9684
+ }(resolverV2.WidgetBaseComponent));
9685
+ if (false) {
9686
+ /** @type {?} */
9687
+ SlidersNgContentLibComponent.prototype.widgetData;
9688
+ /** @type {?} */
9689
+ SlidersNgContentLibComponent.prototype.styleData;
9690
+ /** @type {?} */
9691
+ SlidersNgContentLibComponent.prototype.title;
9692
+ /** @type {?} */
9693
+ SlidersNgContentLibComponent.prototype.loadNgContentData;
9694
+ /** @type {?} */
9695
+ SlidersNgContentLibComponent.prototype.autoScroll;
9696
+ /** @type {?} */
9697
+ SlidersNgContentLibComponent.prototype.currentIndexValue;
9698
+ /** @type {?} */
9699
+ SlidersNgContentLibComponent.prototype.id;
9700
+ /**
9701
+ * @type {?}
9702
+ * @private
9703
+ */
9704
+ SlidersNgContentLibComponent.prototype.defaultMenuSubscribe;
9705
+ /** @type {?} */
9706
+ SlidersNgContentLibComponent.prototype.isLtMedium$;
9707
+ /** @type {?} */
9708
+ SlidersNgContentLibComponent.prototype.currentIndex;
9709
+ /** @type {?} */
9710
+ SlidersNgContentLibComponent.prototype.slideInterval;
9711
+ /** @type {?} */
9712
+ SlidersNgContentLibComponent.prototype.isMobile;
9713
+ /**
9714
+ * @type {?}
9715
+ * @private
9716
+ */
9717
+ SlidersNgContentLibComponent.prototype.events;
9718
+ /**
9719
+ * @type {?}
9720
+ * @private
9721
+ */
9722
+ SlidersNgContentLibComponent.prototype.valueSvc;
9723
+ }
9724
+
9725
+ /**
9726
+ * @fileoverview added by tsickle
9727
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9728
+ */
9729
+ /* tslint:enable */
9730
+ var /* tslint:enable */
9731
+ MyHammerConfig$1 = /** @class */ (function (_super) {
9732
+ __extends(MyHammerConfig, _super);
9733
+ function MyHammerConfig() {
9734
+ return _super !== null && _super.apply(this, arguments) || this;
9735
+ }
9736
+ /**
9737
+ * @param {?} element
9738
+ * @return {?}
9739
+ */
9740
+ MyHammerConfig.prototype.buildHammer = /**
9741
+ * @param {?} element
9742
+ * @return {?}
9743
+ */
9744
+ function (element) {
9745
+ /** @type {?} */
9746
+ var mc = new Hammer(element, {
9747
+ touchAction: 'pan-y',
9748
+ });
9749
+ return mc;
9750
+ };
9751
+ return MyHammerConfig;
9752
+ }(platformBrowser.HammerGestureConfig));
9753
+ // tslint:disable-next-line: max-classes-per-file
9754
+ var SlidersNgContentLibModule = /** @class */ (function () {
9755
+ function SlidersNgContentLibModule() {
9756
+ }
9757
+ SlidersNgContentLibModule.decorators = [
9758
+ { type: core.NgModule, args: [{
9759
+ declarations: [SlidersNgContentLibComponent],
9760
+ imports: [
9761
+ common.CommonModule,
9762
+ router.RouterModule,
9763
+ NavigationModule,
9764
+ ImageResponsiveModule,
9765
+ ],
9766
+ exports: [SlidersNgContentLibComponent],
9767
+ entryComponents: [SlidersNgContentLibComponent],
9768
+ providers: [
9769
+ {
9770
+ provide: platformBrowser.HAMMER_GESTURE_CONFIG,
9771
+ useClass: MyHammerConfig$1,
9772
+ },
9773
+ ],
9774
+ },] }
9775
+ ];
9776
+ return SlidersNgContentLibModule;
9777
+ }());
9778
+
9779
+ /**
9780
+ * @fileoverview added by tsickle
9781
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9782
+ */
9783
+ var ScrollableItemModule = /** @class */ (function () {
9784
+ function ScrollableItemModule() {
9785
+ }
9786
+ ScrollableItemModule.decorators = [
9787
+ { type: core.NgModule, args: [{
9788
+ declarations: [ScrollableItemDirective],
9789
+ imports: [
9790
+ common.CommonModule,
9791
+ ],
9792
+ exports: [ScrollableItemDirective],
9793
+ },] }
9794
+ ];
9795
+ return ScrollableItemModule;
9796
+ }());
9797
+
9798
+ /**
9799
+ * @fileoverview added by tsickle
9800
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9801
+ */
9802
+ var CbpPlanModule = /** @class */ (function () {
9803
+ function CbpPlanModule() {
9804
+ }
9805
+ CbpPlanModule.decorators = [
9806
+ { type: core.NgModule, args: [{
9807
+ declarations: [CbpPlanComponent],
9808
+ imports: [
9809
+ common.CommonModule,
9810
+ SkeletonLoaderLibModule,
9811
+ material.MatIconModule,
9812
+ ScrollableItemModule,
9813
+ SlidersNgContentLibModule,
9814
+ ],
9815
+ exports: [CbpPlanComponent]
9816
+ },] }
9817
+ ];
9818
+ return CbpPlanModule;
9819
+ }());
9820
+
9821
+ /**
9822
+ * @fileoverview added by tsickle
9823
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9824
+ */
9825
+ var ConsumptionModule = /** @class */ (function () {
9826
+ function ConsumptionModule() {
9827
+ }
9828
+ ConsumptionModule.decorators = [
9829
+ { type: core.NgModule, args: [{
9830
+ declarations: [ConsumptionComponent,],
9831
+ imports: [
9832
+ ContentStripWithTabsLibModule,
9833
+ SlidersLibModule
9834
+ ],
9835
+ exports: [ConsumptionComponent,
9836
+ ContentStripWithTabsLibModule,
9837
+ SlidersLibModule,
9838
+ DataPointsModule,
9839
+ CalenderModule,
9840
+ CommonStripModule,
9841
+ AnnouncementsModule,
9842
+ TopLearnersModule,
9843
+ CbpPlanModule,
9844
+ ],
9845
+ },] }
9846
+ ];
9847
+ return ConsumptionModule;
9848
+ }());
9849
+
9850
+ /**
9851
+ * @fileoverview added by tsickle
9852
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9853
+ */
9854
+ /** @type {?} */
9855
+ var ROOT_WIDGET_CONFIG = {
9856
+ card: {
9857
+ _type: 'cardLib',
9858
+ cardResource: 'cardContentLib'
9859
+ },
9860
+ };
9861
+
9862
+ /**
9863
+ * @fileoverview added by tsickle
9864
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9865
+ */
9866
+ var NsCardContent$1;
9867
+ (function (NsCardContent) {
9868
+ /**
9869
+ * @record
9870
+ */
9871
+ function ICard() { }
9872
+ NsCardContent.ICard = ICard;
9873
+ if (false) {
9874
+ /** @type {?} */
9875
+ ICard.prototype.content;
9876
+ /** @type {?} */
9877
+ ICard.prototype.cardSubType;
9878
+ /** @type {?} */
9879
+ ICard.prototype.context;
9880
+ /** @type {?|undefined} */
9881
+ ICard.prototype.intranetMode;
9882
+ /** @type {?|undefined} */
9883
+ ICard.prototype.deletedMode;
9884
+ /** @type {?|undefined} */
9885
+ ICard.prototype.likes;
9886
+ /** @type {?|undefined} */
9887
+ ICard.prototype.contentTags;
9888
+ /** @type {?} */
9889
+ ICard.prototype.stateData;
9890
+ /** @type {?|undefined} */
9891
+ ICard.prototype.cardCustomeClass;
9892
+ }
9893
+ /**
9894
+ * @record
9895
+ */
9896
+ function IContentTags() { }
9897
+ NsCardContent.IContentTags = IContentTags;
9898
+ if (false) {
9899
+ /** @type {?|undefined} */
9900
+ IContentTags.prototype.daysSpan;
9901
+ /** @type {?|undefined} */
9902
+ IContentTags.prototype.excludeContentType;
9903
+ /** @type {?|undefined} */
9904
+ IContentTags.prototype.excludeMimeType;
9905
+ /** @type {?} */
9906
+ IContentTags.prototype.tag;
9907
+ /** @type {?|undefined} */
9908
+ IContentTags.prototype.criteriaField;
9909
+ }
9910
+ var EContentStatus;
9911
+ (function (EContentStatus) {
9912
+ EContentStatus["LIVE"] = "Live";
9913
+ EContentStatus["EXPIRED"] = "Expired";
9914
+ EContentStatus["DELETED"] = "Deleted";
9915
+ EContentStatus["MARK_FOR_DELETION"] = "MarkedForDeletion";
9916
+ })(EContentStatus = NsCardContent.EContentStatus || (NsCardContent.EContentStatus = {}));
9917
+ var ACBPConst;
9918
+ (function (ACBPConst) {
9919
+ ACBPConst["UPCOMING"] = "upcoming";
9920
+ ACBPConst["ALL"] = "All";
9921
+ ACBPConst["OVERDUE"] = "overdue";
9922
+ ACBPConst["SUCCESS"] = "success";
9923
+ })(ACBPConst = NsCardContent.ACBPConst || (NsCardContent.ACBPConst = {}));
9924
+ var IGOTConst;
9925
+ (function (IGOTConst) {
9926
+ IGOTConst["COMPETENCIES"] = "competencies_v5";
9927
+ IGOTConst["RETIRED"] = "Retired";
9928
+ })(IGOTConst = NsCardContent.IGOTConst || (NsCardContent.IGOTConst = {}));
9929
+ })(NsCardContent$1 || (NsCardContent$1 = {}));
9930
+
9931
+ /**
9932
+ * @fileoverview added by tsickle
9933
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9934
+ */
9935
+ var CardsComponent = /** @class */ (function (_super) {
9936
+ __extends(CardsComponent, _super);
9937
+ function CardsComponent(utilitySvc, contSvc, router) {
9938
+ var _this = _super.call(this) || this;
9939
+ _this.utilitySvc = utilitySvc;
9940
+ _this.contSvc = contSvc;
9941
+ _this.router = router;
9942
+ _this.triggerTelemetry = new core.EventEmitter();
9943
+ _this.isIntranetAllowedSettings = false;
9944
+ return _this;
9945
+ }
9946
+ /**
9947
+ * @return {?}
9948
+ */
9949
+ CardsComponent.prototype.ngOnInit = /**
9950
+ * @return {?}
9951
+ */
9952
+ function () {
9953
+ var _this = this;
9954
+ this.cbPlanInterval = setInterval((/**
9955
+ * @return {?}
9956
+ */
9957
+ function () {
9958
+ _this.getCbPlanData();
9959
+ }), 1000);
9960
+ this.enrollInterval = setInterval((/**
9961
+ * @return {?}
9962
+ */
9963
+ function () {
9964
+ _this.getEnrollmentData();
9965
+ // tslint:disable-next-line
9966
+ }), 1000);
9967
+ };
9968
+ Object.defineProperty(CardsComponent.prototype, "isLiveOrMarkForDeletion", {
9969
+ get: /**
9970
+ * @return {?}
9971
+ */
9972
+ function () {
9973
+ if (!this.widgetData.content.status ||
9974
+ this.widgetData.content.status === 'Live' ||
9975
+ this.widgetData.content.status === 'MarkedForDeletion') {
9976
+ return true;
9977
+ }
9978
+ return false;
9979
+ },
9980
+ enumerable: true,
9981
+ configurable: true
9982
+ });
9983
+ Object.defineProperty(CardsComponent.prototype, "showIntranetContent", {
9984
+ get: /**
9985
+ * @return {?}
9986
+ */
9987
+ function () {
9988
+ if (this.widgetData.content.isInIntranet && this.utilitySvc.isMobile) {
9989
+ return !this.isIntranetAllowedSettings;
9990
+ }
9991
+ return false;
9992
+ },
9993
+ enumerable: true,
9994
+ configurable: true
9995
+ });
9996
+ /**
9997
+ * @param {?} content
9998
+ * @return {?}
9999
+ */
10000
+ CardsComponent.prototype.getRedirectUrlData = /**
10001
+ * @param {?} content
10002
+ * @return {?}
10003
+ */
10004
+ function (content) {
10005
+ return __awaiter(this, void 0, void 0, function () {
10006
+ var urlData;
10007
+ return __generator(this, function (_a) {
10008
+ switch (_a.label) {
10009
+ case 0:
10010
+ if (!content.externalId) return [3 /*break*/, 1];
10011
+ this.router.navigate(["app/toc/ext/" + content.contentId]);
10012
+ return [3 /*break*/, 3];
10013
+ case 1: return [4 /*yield*/, this.contSvc.getResourseLink(content)];
10014
+ case 2:
10015
+ urlData = _a.sent();
10016
+ this.router.navigate([urlData.url], {
10017
+ queryParams: urlData.queryParams
10018
+ });
10019
+ _a.label = 3;
10020
+ case 3: return [2 /*return*/];
10021
+ }
10022
+ });
10023
+ });
10024
+ };
10025
+ /**
10026
+ * @return {?}
10027
+ */
10028
+ CardsComponent.prototype.getCbPlanData = /**
10029
+ * @return {?}
10030
+ */
10031
+ function () {
10032
+ /** @type {?} */
10033
+ var cbpList = {};
10034
+ if (localStorage.getItem('cbpData')) {
10035
+ /** @type {?} */
10036
+ var cbpListArr = JSON.parse(localStorage.getItem('cbpData') || '');
10037
+ if (cbpListArr && cbpListArr.length) {
10038
+ cbpListArr.forEach((/**
10039
+ * @param {?} data
10040
+ * @return {?}
10041
+ */
10042
+ function (data) {
10043
+ cbpList[data.identifier] = data;
10044
+ }));
10045
+ }
10046
+ this.cbPlanMapData = cbpList;
10047
+ // this.karmaPointLoading = false
10048
+ clearInterval(this.cbPlanInterval);
10049
+ }
10050
+ };
10051
+ /**
10052
+ * @return {?}
10053
+ */
10054
+ CardsComponent.prototype.getEnrollmentData = /**
10055
+ * @return {?}
10056
+ */
10057
+ function () {
10058
+ if (localStorage.getItem('enrollmentMapData')) {
10059
+ this.enrollmentMapData = JSON.parse(localStorage.getItem('enrollmentMapData') || '{}');
10060
+ clearInterval(this.enrollInterval);
10061
+ }
10062
+ };
10063
+ /**
10064
+ * @param {?} data
10065
+ * @return {?}
10066
+ */
10067
+ CardsComponent.prototype.raiseCardClick = /**
10068
+ * @param {?} data
10069
+ * @return {?}
10070
+ */
10071
+ function (data) {
10072
+ this.triggerTelemetry.emit(data);
10073
+ };
10074
+ CardsComponent.decorators = [
10075
+ { type: core.Component, args: [{
10076
+ selector: 'sb-uic-cards',
10077
+ template: "<div class=\"widget-card-content-new\">\n <ng-container *ngIf=\"widgetData && (((widgetData?.deletedMode || 'none') === 'hide' && !!!isLiveOrMarkForDeletion)\n ? false\n : !((widgetData?.intranetMode || 'none') === 'hide' && !!showIntranetContent))\"\n [ngSwitch]=\"( (widgetData && widgetData?.cardSubType) || 'cardPortraitLib')\">\n <ng-container *ngSwitchDefault [ngTemplateOutlet]=\"cardPortraitLib\"></ng-container>\n <ng-container *ngSwitchCase=\"'user-card'\" [ngTemplateOutlet]=\"cardUser\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-portrait-lib-skeleton'\" [ngTemplateOutlet]=\"cardPortraitLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-portrait-lib'\" [ngTemplateOutlet]=\"cardPortraitLib\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-landscape-lib-skeleton'\" [ngTemplateOutlet]=\"cardLandscapeLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-landscape-lib'\" [ngTemplateOutlet]=\"cardLandscapeLib\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-wide-lib-skeleton'\" [ngTemplateOutlet]=\"cardWideLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-wide-lib'\" [ngTemplateOutlet]=\"cardWideLib\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-wide-v2'\" [ngTemplateOutlet]=\"cardWideV2\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-wide-v2-skeleton'\" [ngTemplateOutlet]=\"cardWideV2Skeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-mdo-lib'\" [ngTemplateOutlet]=\"cardMdo\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-mdo-home-lib'\" [ngTemplateOutlet]=\"cardMdoHome\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-mdo-home-lib-skeleton'\" [ngTemplateOutlet]=\"cardMdoHomeSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-mdo-lib-skeleton'\" [ngTemplateOutlet]=\"cardMdoSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-scheduled-assessment'\" [ngTemplateOutlet]=\"cardScheduledAssessment\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-scheduled-assessment-skeleton'\" [ngTemplateOutlet]=\"cardScheduledAssessmentSkelton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-karma-program-lib'\" [ngTemplateOutlet]=\"cardKarmaProgram\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-karma-program-lib-skeleton'\" [ngTemplateOutlet]=\"cardKarmaProgramSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-progress-portrait-lib'\" [ngTemplateOutlet]=\"cardProgressLib\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-progress-portrait-lib-skeleton'\" [ngTemplateOutlet]=\"cardProgressLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-karma-program-lib-v2'\" [ngTemplateOutlet]=\"cardKarmaProgramV2\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-karma-program-lib-v2-skeleton'\" [ngTemplateOutlet]=\"cardKarmaProgramV2\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-providers-lib'\" [ngTemplateOutlet]=\"cardProvider\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-providers-lib-skeleton'\" [ngTemplateOutlet]=\"cardProviderSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-portrait-ext-lib-skeleton'\" [ngTemplateOutlet]=\"cardPortraitExtLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-portrait-ext-lib'\" [ngTemplateOutlet]=\"cardPortraitExtLib\"></ng-container>\n\n </ng-container>\n</div>\n\n<ng-template #cardPortraitLibSkeleton>\n <sb-uic-card-portrait [widgetData]=\"widgetData\" [isCardLoading]=\"true\"></sb-uic-card-portrait>\n</ng-template>\n<ng-template #cardPortraitLib>\n <sb-uic-card-portrait \n [cbPlanMapData]=\"cbPlanMapData\"\n (contentData)=\"getRedirectUrlData($event)\" [widgetData]=\"widgetData\" [isCardLoading]=\"false\"></sb-uic-card-portrait>\n</ng-template>\n<ng-template #cardLandscapeLibSkeleton>\n <sb-uic-card-landscape [widgetData]=\"widgetData\" \n [cbPlanMapData]=\"cbPlanMapData\" [isCardLoading]=\"true\"></sb-uic-card-landscape>\n</ng-template>\n<ng-template #cardLandscapeLib>\n <sb-uic-card-landscape\n (contentData)=\"getRedirectUrlData($event)\"\n (triggerTelemetry)=\"raiseCardClick($event)\"\n [widgetData]=\"widgetData\"\n [cbPlanMapData]=\"cbPlanMapData\"\n [isCardLoading]=\"false\">\n </sb-uic-card-landscape>\n</ng-template>\n\n<ng-template #cardWideLib>\n <sb-uic-card-wide (contentData)=\"getRedirectUrlData($event)\" [widgetData]=\"widgetData\"></sb-uic-card-wide>\n</ng-template>\n<ng-template #cardWideLibSkeleton>\n <sb-uic-card-wide [widgetData]=\"widgetData\"></sb-uic-card-wide>\n</ng-template>\n\n<ng-template #cardWideV2Skeleton>\n <sb-uic-card-wide-v2 [widgetData]=\"widgetData\" [isCardLoading]=\"true\" ></sb-uic-card-wide-v2>\n</ng-template>\n<ng-template #cardWideV2>\n <sb-uic-card-wide-v2\n (contentData)=\"getRedirectUrlData($event)\"\n (triggerTelemetry)=\"raiseCardClick($event)\"\n [cbPlanMapData]=\"cbPlanMapData\"\n [isCardLoading]=\"false\"\n [widgetData]=\"widgetData\">\n </sb-uic-card-wide-v2>\n</ng-template>\n\n<ng-template #cardUser>\n <sb-uic-card-user [widgetData]=\"widgetData\"></sb-uic-card-user>\n</ng-template>\n<ng-template #cardMdoHome>\n <sb-uic-card-mdo-channel-v1 [isCardLoading]=\"false\" [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel-v1>\n</ng-template>\n<ng-template #cardMdoHomeSkeleton>\n <sb-uic-card-mdo-channel-v1 [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel-v1>\n</ng-template>\n<ng-template #cardMdo>\n <sb-uic-card-mdo-channel [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel>\n</ng-template>\n<ng-template #cardMdoSkeleton>\n <sb-uic-card-mdo-channel [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel>\n</ng-template>\n<ng-template #cardKarmaProgramSkeleton>\n <sb-uic-card-karma-programs [randomColorApply]=\"true\" \n [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-card-karma-programs>\n</ng-template>\n<ng-template #cardKarmaProgram>\n <sb-uic-card-karma-programs [randomColorApply]=\"true\" \n [isCardLoading]=\"false\" [widgetData]=\"widgetData\"></sb-uic-card-karma-programs>\n</ng-template>\n<ng-template #cardScheduledAssessmentSkelton>\n <sb-uic-card-assessment [widgetData]=\"widgetData\" [isCardLoading]=\"true\"></sb-uic-card-assessment>\n</ng-template>\n<ng-template #cardScheduledAssessment>\n <sb-uic-card-assessment [widgetData]=\"widgetData\" (contentData)=\"getRedirectUrlData($event)\" [isCardLoading]=\"false\" [enrollmentMapData]=\"enrollmentMapData\"></sb-uic-card-assessment>\n</ng-template>\n<ng-template #cardProgressLibSkeleton>\n <sb-uic-card-progress-portrait-lib \n [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-card-progress-portrait-lib>\n</ng-template>\n<ng-template #cardProgressLib>\n <sb-uic-card-progress-portrait-lib \n [isCardLoading]=\"false\" (contentData)=\"getRedirectUrlData($event)\" [widgetData]=\"widgetData\"></sb-uic-card-progress-portrait-lib>\n</ng-template>\n<ng-template #cardKarmaProgramV2>\n <!-- <sb-uic-card-karma-programs-v2 [widgetData]=\"widgetData\"><sb-uic-card-karma-programs-v2> -->\n</ng-template>\n<ng-template #cardProvider>\n <sb-uic-provider-card [isCardLoading]=\"false\" [widgetData]=\"widgetData\"></sb-uic-provider-card>\n</ng-template>\n<ng-template #cardProviderSkeleton>\n <sb-uic-provider-card [isCardLoading]=\"true\" [widgetData]=\"widgetData\"></sb-uic-provider-card>\n</ng-template>\n\n<!-- cios card -->\n<ng-template #cardPortraitExtLibSkeleton>\n <sb-uic-card-portrait-ext [widgetData]=\"widgetData\" [isCardLoading]=\"true\"></sb-uic-card-portrait-ext>\n</ng-template>\n<ng-template #cardPortraitExtLib>\n <sb-uic-card-portrait-ext \n [cbPlanMapData]=\"cbPlanMapData\"\n (contentData)=\"getRedirectUrlData($event)\" [widgetData]=\"widgetData\" [isCardLoading]=\"false\"></sb-uic-card-portrait-ext>\n</ng-template>\n",
10078
+ styles: [""]
10079
+ }] }
10080
+ ];
10081
+ /** @nocollapse */
10082
+ CardsComponent.ctorParameters = function () { return [
10083
+ { type: utilsV2.UtilityService },
10084
+ { type: WidgetContentService },
10085
+ { type: router.Router }
10086
+ ]; };
10087
+ CardsComponent.propDecorators = {
10088
+ widgetData: [{ type: core.Input }],
10089
+ triggerTelemetry: [{ type: core.Output }]
10090
+ };
10091
+ return CardsComponent;
10092
+ }(resolverV2.WidgetBaseComponent));
10093
+ if (false) {
10094
+ /** @type {?} */
10095
+ CardsComponent.prototype.widgetData;
10096
+ /** @type {?} */
10097
+ CardsComponent.prototype.triggerTelemetry;
10098
+ /** @type {?} */
10099
+ CardsComponent.prototype.isIntranetAllowedSettings;
10100
+ /** @type {?} */
10101
+ CardsComponent.prototype.cbPlanMapData;
10102
+ /** @type {?} */
10103
+ CardsComponent.prototype.cbPlanInterval;
10104
+ /** @type {?} */
10105
+ CardsComponent.prototype.enrollInterval;
10106
+ /** @type {?} */
10107
+ CardsComponent.prototype.enrollmentMapData;
10108
+ /**
10109
+ * @type {?}
10110
+ * @private
10111
+ */
10112
+ CardsComponent.prototype.utilitySvc;
10113
+ /**
10114
+ * @type {?}
10115
+ * @private
10116
+ */
10117
+ CardsComponent.prototype.contSvc;
10118
+ /** @type {?} */
10119
+ CardsComponent.prototype.router;
10120
+ }
10121
+
10122
+ /**
10123
+ * @fileoverview added by tsickle
10124
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
10125
+ */
10126
+ var CardResourceComponent = /** @class */ (function (_super) {
10127
+ __extends(CardResourceComponent, _super);
10128
+ function CardResourceComponent() {
10129
+ return _super.call(this) || this;
10130
+ }
10131
+ /**
10132
+ * @return {?}
10133
+ */
10134
+ CardResourceComponent.prototype.ngOnInit = /**
10135
+ * @return {?}
10136
+ */
10137
+ function () {
10138
+ };
10139
+ CardResourceComponent.decorators = [
10140
+ { type: core.Component, args: [{
10141
+ selector: 'ws-cb-widget-card-resource',
10142
+ template: " <!-- <mat-card class=\"card-resource-container mr-5 padding-remove cursor-pointer \" [ngClass]=\"{\n greyOut:\n widgetData.deletedMode === 'greyOut' && !isLiveOrMarkForDeletion\n ? true\n : widgetData?.intranetMode === 'greyOut' && showIntranetContent\n }\" (click)=\"(showIntranetContent || !isLiveOrMarkForDeletion) && showSnackbar()\">\n <div class=\"display-contents\" [ngClass]=\"{\n disableClick:\n widgetData.deletedMode === 'greyOut' && !isLiveOrMarkForDeletion\n ? true\n : widgetData?.intranetMode === 'greyOut' && showIntranetContent\n }\">\n <ng-container *ngIf=\"widgetData.content\">\n <a (click)=\"raiseTelemetry();getRedirectUrlData(widgetData?.content); $event.stopPropagation()\" \n role=\"link\" i18n-aria-label>\n <ng-container *ngIf=\"!isCardFlipped\">\n <div class=\"status-danger\" role=\"note\" i18n-aria-label aria-label=\"Content expired or deleted\" i18n-matTooltip\n matTooltip=\"Content may be expired or deleted\" *ngIf=\"!isLiveOrMarkForDeletion\"></div>\n <div class=\"status-danger\" role=\"note\" i18n-aria-label aria-label=\"Intranet content\" i18n-matTooltip\n matTooltip=\"Available only in Company's network\"\n *ngIf=\"widgetData?.intranetMode === 'greyOut' && showIntranetContent\"></div>\n <button *ngIf=\"showFlip\" class=\"detail-button ws-mat-primary-lite-background-op30\" mat-icon-button\n (click)=\"isCardFlipped = true\" aria-label=\"Details\" i18n-aria-label=\"Details | Click to see details\">\n <mat-icon>flip_to_back</mat-icon>\n </button>\n <mat-card-content class=\"min-top\">\n <div style=\"position: relative; z-index: 1;\">\n <ng-container *ngIf=\"widgetData.content.posterImage\">\n <img mat-card-image [src]=\"widgetData.content.posterImage | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-container *ngIf=\"!widgetData.content.posterImage\">\n <ng-container *ngIf=\"widgetData.content.appIcon; else defaultImg\">\n <img mat-card-image [src]=\"widgetData.content.appIcon | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-template #defaultImg>\n <img mat-card-image [src]=\"defaultThumbnail\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\"\n [alt]=\"widgetData.content.name\" />\n </ng-template>\n </ng-container>\n <div class=\"source-div\" style=\"display: none;\">\n <img [src]=\"widgetData.content.creatorLogo\" class=\"source-icon\" [wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n [alt]=\"(widgetData.content.sourceName + '_' + widgetData.content.identifier)\" />\n </div>\n <ng-container *ngIf=\"widgetData?.content?.cbPlanEndDate\">\n <div class=\"cbp-mark\">\n <span>{{widgetData?.content?.cbPlanEndDate | date: 'd MMM, y'}}</span>\n </div>\n </ng-container>\n <ng-container *ngIf=\"cbPlanMapData && cbPlanMapData[widgetData?.content?.identifier]\">\n <ng-container [ngTemplateOutlet]=\"cbpPlan\" [ngTemplateOutletContext]=\"{data: {\n cbpData: cbPlanMapData[widgetData?.content?.identifier]\n }}\"></ng-container>\n </ng-container>\n <div class=\"duration-box right-corner\" *ngIf=\"widgetData?.content?.duration > 0\">\n <mat-icon class=\"mat-icon main_icon mr-1\">access_time</mat-icon>\n <span class=\" ws-mat-white-text duration\">\n {{ (widgetData?.content?.duration || 120)| pipeDurationTransform: 'hms' }}\n </span>\n </div>\n <div class=\"duration-box right-corner\" *ngIf=\"widgetData?.content?.programDuration > 0\">\n <mat-icon class=\"mat-icon main_icon mr-1\">access_time</mat-icon>\n <span class=\" ws-mat-white-text duration\">\n {{widgetData?.content?.programDuration}} {{widgetData?.content?.programDuration === 1 ? 'day' : 'days'}}\n </span>\n </div>\n </div>\n <div class=\"padding-m\">\n <div class=\"course_widget flex margin-remove\">\n <div class=\"flex flex-end course_v2\">\n <mat-icon class=\"mat-icon main_icon ws-mat-default-text margin-right-xs\">video_library</mat-icon>\n <ws-widget-display-content-type i18n-title title=\"Content Type\" *ngIf=\"widgetData.content?.primaryCategory\"\n class=\"ws-mat-black60-text font-normal mat-caption \" [displayContentType]=\"widgetData.content?.primaryCategory==='Course Unit'\n ?'Module'\n :widgetData.content?.primaryCategory\">\n\n </ws-widget-display-content-type>\n </div>\n <div class=\"flex ml-5 flex-end course_v2\">\n <mat-icon class=\"mat-icon main_icon ws-mat-default-text margin-right-xs\">video_library</mat-icon>\n <ws-widget-display-content-type i18n-title title=\"Content Type\" *ngIf=\"widgetData.content?.primaryCategory\"\n class=\"ws-mat-black60-text font-normal mat-caption \" [displayContentType]=\"widgetData.content?.primaryCategory==='Course Unit'\n ?'Module'\n :widgetData.content?.primaryCategory\">\n\n </ws-widget-display-content-type>\n </div>\n </div>\n <div [id]=\"'m-c-'+ widgetData.content?.identifier\"\n class=\"mat-subheading-1 title-text ws-mat-text-block-fade-gradient\">\n {{ widgetData.content.name }}\n </div>\n <div [id]=\"'m-c-'+ widgetData.content?.identifier\"\n class=\"mat-subheading-1 description-text font-medium ws-mat-text-block-fade-gradient\">\n {{ widgetData.content.name }}\n </div>\n <div class=\"flex w-full flex-wrap flex-middle\">\n <div class=\"course_logo_box\">\n <img [src]=\"widgetData.content.creatorLogo | pipePublicURL \" class=\"source-icon\" [wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n [alt]=\"(widgetData.content.sourceName + '_' + widgetData.content.identifier)\" />\n </div>\n <span class=\"org-text\">{{'cardcontentv2.by' | translate}} {{ (widgetData.content.organisation && widgetData.content.organisation[0]) ? widgetData.content.organisation[0] : 'Karmayogi Bharat' }}</span>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n <ng-container *ngIf=\"isCardFlipped\">\n <div class=\"flex items-center\">\n <h2 class=\"mat-subheading-2 flex-1 min-w-0 margin-remove-bottom\" i18n>{{'cardcontentv2.reason' | translate}}</h2>\n <button mat-icon-button (click)=\"isCardFlipped = false\">\n <mat-icon>close</mat-icon>\n </button>\n </div>\n <p class=\"text-justify mat-body-1\">\n {{ widgetData.content.reason }}\n </p>\n </ng-container>\n </a>\n </ng-container>\n </div>\n </mat-card> -->\n",
10143
+ styles: [".card-resource-container{position:relative;width:384px;min-height:346px;border-radius:8px;box-sizing:border-box;box-shadow:0 10px 30px rgba(153,153,153,.2);overflow:hidden;height:450px;margin:20px 8px}.card-resource-container .icon_text{font-size:12px;line-height:16px;text-transform:uppercase}.card-resource-container .description-text{margin:12px 0;font-weight:400}.card-resource-container .course_logo_box{width:24px;height:24px;background:#fff;border-radius:4px;border:1px solid rgba(0,0,0,.1607843137);box-sizing:border-box}.card-resource-container .course_logo_box img{height:18px;width:18px;padding:2px;display:inline-block}.card-resource-container .course_logo_box p{display:inline-block;vertical-align:top}.card-resource-container .org-text{font-size:12px;font-weight:400;width:75%;padding-left:10px;word-break:break-all;white-space:initial;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.card-resource-container .source-div{position:relative;top:100px;background:#fff;z-index:3;border:1px solid #dedfe0;min-width:72px;min-height:72px;max-width:72px;max-height:72px;display:flex;border-radius:8px}.card-resource-container .source-div .source-icon{border-radius:8px;display:block;margin:auto;max-width:58px;max-height:-webkit-fill-available}.card-resource-container mat-card-content{background:#fff}.card-resource-container .card-img{max-height:240px;min-height:240px;width:100%;display:block;-o-object-fit:fill;object-fit:fill;border-top-left-radius:8px;border-top-right-radius:8px}.card-resource-container .mat-subheading-1{font:600 14px/24px Montserrat}.card-resource-container .complexity{padding-top:70px;display:flex;font-size:14px;line-height:21px;padding-bottom:10px}.card-resource-container .complexity .mode-tag{border-radius:5px;order:2;margin-left:auto;color:#fff;font-size:10px}.card-resource-container .complexity .duration{display:flex;margin-left:auto;order:3;font-weight:700}.card-resource-container .complexity .time-text{margin:0 5px 0 6px;font-weight:700}.card-resource-container .basic{margin:auto 0}.card-resource-container .title-text{word-break:break-all;white-space:initial;margin:8px 0;position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:48px}.card-resource-container .description-text{position:relative;overflow:hidden;height:42px;white-space:normal;text-overflow:ellipsis}"]
10144
+ }] }
10145
+ ];
10146
+ /** @nocollapse */
10147
+ CardResourceComponent.ctorParameters = function () { return []; };
10148
+ CardResourceComponent.propDecorators = {
10149
+ widgetData: [{ type: core.Input }]
10150
+ };
10151
+ return CardResourceComponent;
10152
+ }(resolverV2.WidgetBaseComponent));
10153
+ if (false) {
10154
+ /** @type {?} */
10155
+ CardResourceComponent.prototype.widgetData;
10156
+ }
10157
+
10158
+ /**
10159
+ * @fileoverview added by tsickle
10160
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
10161
+ */
10162
+ var CardPortraitComponent = /** @class */ (function () {
10163
+ function CardPortraitComponent(snackBar, translate, langtranslations, configSvc, contSvc) {
10164
+ var _this = this;
10165
+ this.snackBar = snackBar;
10166
+ this.translate = translate;
10167
+ this.langtranslations = langtranslations;
10168
+ this.configSvc = configSvc;
10169
+ this.contSvc = contSvc;
10170
+ this.isCardLoading = false;
10171
+ this.contentData = new core.EventEmitter();
10172
+ this.isCardFlipped = false;
10173
+ this.acbpConstants = NsCardContent$1.ACBPConst;
10174
+ this.showFlip = false;
10175
+ this.widgetType = 'df';
10176
+ this.widgetSubType = 'sdf';
10177
+ this.langtranslations.languageSelectedObservable.subscribe((/**
10178
+ * @return {?}
10179
+ */
10180
+ function () {
10181
+ if (localStorage.getItem('websiteLanguage')) {
10182
+ _this.translate.setDefaultLang('en');
10183
+ /** @type {?} */
10184
+ var lang = (/** @type {?} */ (localStorage.getItem('websiteLanguage')));
10185
+ _this.translate.use(lang);
10186
+ }
10187
+ }));
10188
+ }
10189
+ /**
10190
+ * @return {?}
10191
+ */
10192
+ CardPortraitComponent.prototype.ngOnInit = /**
10193
+ * @return {?}
10194
+ */
10195
+ function () {
10196
+ /** @type {?} */
10197
+ var instanceConfig = this.configSvc.instanceConfig;
10198
+ if (instanceConfig) {
10199
+ this.defaultThumbnail = instanceConfig.logos.defaultContent || '';
10200
+ this.sourceLogos = instanceConfig.sources;
10201
+ this.defaultSLogo = instanceConfig.logos.defaultSourceLogo || '';
10202
+ }
10203
+ else {
10204
+ this.defaultThumbnail = '/assets/instances/eagle/app_logos/default.png';
10205
+ this.defaultSLogo = '/assets/instances/eagle/app_logos/KarmayogiBharat_Logo.svg';
10206
+ }
10207
+ };
10208
+ /**
10209
+ * @return {?}
10210
+ */
10211
+ CardPortraitComponent.prototype.showSnackbar = /**
10212
+ * @return {?}
10213
+ */
10214
+ function () {
10215
+ if (this.showIntranetContent) {
10216
+ this.snackBar.open('Content is only available in intranet', 'X', { duration: 2000 });
10217
+ }
10218
+ else if (!this.isLiveOrMarkForDeletion) {
10219
+ this.snackBar.open('Content may be expired or deleted', 'X', { duration: 2000 });
10220
+ }
10221
+ };
10222
+ /**
10223
+ * @param {?} contentData
10224
+ * @return {?}
10225
+ */
10226
+ CardPortraitComponent.prototype.getRedirectUrlData = /**
10227
+ * @param {?} contentData
10228
+ * @return {?}
10229
+ */
10230
+ function (contentData) {
10231
+ // for telemetry
10232
+ if (this.widgetData && this.widgetData.context && this.widgetData.context.pageSection) {
10233
+ contentData['typeOfTelemetry'] = this.widgetData.context.pageSection;
10234
+ }
10235
+ this.contSvc.changeTelemetryData(contentData);
10236
+ // for redirection
10237
+ this.contentData.emit(contentData);
10238
+ };
10239
+ CardPortraitComponent.decorators = [
10240
+ { type: core.Component, args: [{
10241
+ selector: 'sb-uic-card-portrait',
10242
+ template: "<ng-container *ngIf=\"!isCardLoading\">\n <mat-card class=\"card-standard-container mr-5 padding-remove cursor-pointer {{widgetData?.cardCustomeClass}}\" [ngClass]=\"{\n greyOut:\n widgetData.deletedMode === 'greyOut' && !isLiveOrMarkForDeletion\n ? true\n : widgetData?.intranetMode === 'greyOut' && showIntranetContent\n }\" (click)=\"(showIntranetContent || !isLiveOrMarkForDeletion) && showSnackbar()\">\n <div class=\"display-contents\" [ngClass]=\"{\n disableClick:\n widgetData.deletedMode === 'greyOut' && !isLiveOrMarkForDeletion\n ? true\n : widgetData?.intranetMode === 'greyOut' && showIntranetContent\n }\">\n <ng-container *ngIf=\"widgetData.content\">\n <a (click)=\"getRedirectUrlData(widgetData?.content); $event.stopPropagation()\"\n role=\"link\" i18n-aria-label>\n <ng-container *ngIf=\"!isCardFlipped\">\n <div class=\"status-danger\" role=\"note\" i18n-aria-label aria-label=\"Content expired or deleted\" i18n-matTooltip\n matTooltip=\"Content may be expired or deleted\" *ngIf=\"!isLiveOrMarkForDeletion\"></div>\n <div class=\"status-danger\" role=\"note\" i18n-aria-label aria-label=\"Intranet content\" i18n-matTooltip\n matTooltip=\"Available only in Company's network\"\n *ngIf=\"widgetData?.intranetMode === 'greyOut' && showIntranetContent\"></div>\n <button *ngIf=\"showFlip\" class=\"detail-button ws-mat-primary-lite-background-op30\" mat-icon-button\n (click)=\"isCardFlipped = true\" aria-label=\"Details\" i18n-aria-label=\"Details | Click to see details\">\n <mat-icon>flip_to_back</mat-icon>\n </button>\n <mat-card-content class=\"min-top\">\n <div style=\"position: relative; z-index: 1;\">\n <ng-container *ngIf=\"widgetData.content.posterImage\">\n <img mat-card-image [src]=\"widgetData.content.posterImage | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-container *ngIf=\"!widgetData.content.posterImage\">\n <ng-container *ngIf=\"widgetData.content.appIcon; else defaultImg\">\n <img mat-card-image [src]=\"widgetData.content.appIcon | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-template #defaultImg>\n <img mat-card-image [src]=\"defaultThumbnail\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\"\n [alt]=\"widgetData.content.name\" />\n </ng-template>\n </ng-container>\n <div class=\"source-div\" style=\"display: none;\">\n <img [src]=\"widgetData.content.creatorLogo\" class=\"source-icon\" [wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n [alt]=\"(widgetData.content.sourceName + '_' + widgetData.content.identifier)\" />\n </div>\n <ng-container *ngIf=\"widgetData?.content?.cbPlanEndDate\">\n <div class=\"cbp-mark\">\n <span>{{widgetData?.content?.cbPlanEndDate | date: 'd MMM, y'}}</span>\n </div>\n </ng-container>\n <!-- <ng-container *ngIf=\"widgetData?.content?.endDate\">\n <div class=\"cbp-mark\">\n <p *ngIf=\"widgetData?.content?.planDuration === acbpConstants?.UPCOMING\" class=\"cbp-warning\">{{widgetData?.content?.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"widgetData?.content?.planDuration === acbpConstants?.SUCCESS\" class=\"cbp-success\">{{widgetData?.content?.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"widgetData?.content?.planDuration === acbpConstants?.OVERDUE\" class=\"cbp-danger\">Over due</p>\n </div>\n </ng-container> -->\n <ng-container *ngIf=\"cbPlanMapData && cbPlanMapData[widgetData?.content?.identifier] && cbPlanMapData[widgetData?.content?.identifier]?.contentStatus < 2\">\n <ng-container [ngTemplateOutlet]=\"cbpPlan\" [ngTemplateOutletContext]=\"{data: {\n cbpData: cbPlanMapData[widgetData?.content?.identifier]\n }}\"></ng-container>\n </ng-container>\n <div class=\"duration-box right-corner\" *ngIf=\"widgetData?.content?.duration > 0\">\n <mat-icon class=\"mat-icon main_icon mr-1\">access_time</mat-icon>\n <span class=\" ws-mat-white-text duration\">\n {{ (widgetData?.content?.duration || 120)| pipeDurationTransform: 'hms' }}\n </span>\n </div>\n <div class=\"duration-box right-corner\" *ngIf=\"widgetData?.content?.programDuration > 0\">\n <mat-icon class=\"mat-icon main_icon mr-1\">access_time</mat-icon>\n <span class=\" ws-mat-white-text duration\">\n {{widgetData?.content?.programDuration}} {{widgetData?.content?.programDuration === 1 ? 'day' : 'days'}}\n </span>\n </div>\n </div>\n <div class=\"padding-m\">\n <div class=\"course_widget flex margin-remove\">\n <div class=\"flex flex-end course_v2\">\n <mat-icon class=\"mat-icon main_icon ws-mat-default-text margin-right-xs\">video_library</mat-icon>\n <sb-uic-display-content-type i18n-title title=\"Content Type\" *ngIf=\"widgetData.content?.primaryCategory\"\n class=\"ws-mat-black60-text font-normal mat-caption \" [displayContentType]=\"widgetData.content?.primaryCategory==='Course Unit'\n ?'Module'\n :widgetData.content?.primaryCategory\">\n\n </sb-uic-display-content-type>\n </div>\n </div>\n <div [id]=\"'m-c-'+ widgetData.content?.identifier\"\n class=\"mat-subheading-1 title-text ws-mat-text-block-fade-gradient\">\n {{ widgetData.content.name }}\n </div>\n <div class=\"flex w-full flex-wrap flex-middle\">\n <div class=\"course_logo_box\">\n <img [src]=\"widgetData.content.creatorLogo | pipePublicURL \" class=\"source-icon\" [wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n [alt]=\"(widgetData.content.sourceName + '_' + widgetData.content.identifier)\" />\n </div>\n <!-- <span class=\"org-text\">{{'cardcontentv2.by' | translate}} -->\n <span class=\"org-text\">By&nbsp; {{ (widgetData?.content?.organisation && widgetData?.content?.organisation[0]) ? widgetData?.content?.organisation[0] : 'Karmayogi Bharat' }}</span>\n </div>\n <div class=\"flex flex-middle rating-session margin-top-m\">\n <div class=\"flex flex-middle\" *ngIf=\"widgetData?.content?.avgRating\">\n <mat-icon class=\"mr-1\">star</mat-icon>\n <span>{{widgetData.content.avgRating}}</span>\n </div>\n <!-- <span class=\"most-enrolled-text margin-left-m\">{{ 'cardcontentv2.mostEnrolled' | translate }}</span> -->\n <ng-container *ngIf=\"widgetData?.content?.additionalTags && widgetData?.content?.additionalTags.includes('mostEnrolled')\">\n <span class=\"most-enrolled-text margin-left-xs\">\n <!-- {{ 'cardcontentv2.mostEnrolled' | translate }} -->\n </span>\n </ng-container>\n <ng-container *ngIf=\"widgetData?.content?.additionalTags && widgetData?.content?.additionalTags.includes('mostTrending')\">\n <span class=\"most-enrolled-text margin-left-xs\">\n <!-- {{ 'cardcontentv2.mostTrending' | translate }} -->\n </span>\n </ng-container>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n <ng-container *ngIf=\"isCardFlipped\">\n <div class=\"flex items-center\">\n <!-- <h2 class=\"mat-subheading-2 flex-1 min-w-0 margin-remove-bottom\" i18n>{{'cardcontentv2.reason' | translate}}</h2> -->\n <button mat-icon-button (click)=\"isCardFlipped = false\">\n <mat-icon>close</mat-icon>\n </button>\n </div>\n <p class=\"text-justify mat-body-1\">\n {{ widgetData.content.reason }}\n </p>\n </ng-container>\n </a>\n </ng-container>\n </div>\n</mat-card>\n</ng-container>\n\n<ng-container *ngIf=\"isCardLoading\">\n <mat-card class=\"card-standard-container mr-5 padding-remove\" >\n <div class=\"display-contents\" >\n <ng-container *ngIf=\"!isCardFlipped\">\n <mat-card-content class=\"min-top\">\n <div style=\"position: relative; z-index: 1;\">\n <ng-container>\n <sb-uic-skeleton-loader [width]=\"'100%'\" [height]=\"'140px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\n </ng-container>\n </div>\n <div class=\"padding-m\">\n <div class=\"course_widget flex margin-remove\">\n <div class=\"flex flex-end\">\n <sb-uic-skeleton-loader [width]=\"'65px'\" [height]=\"'16px'\" [bindingClass]=\"'flex rounded br-8'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n <div class=\"mat-subheading-1 title-text ws-mat-text-block-fade-gradient\">\n <sb-uic-skeleton-loader [width]=\"'100%'\" [height]=\"'16px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\n <sb-uic-skeleton-loader [width]=\"'111px'\" [height]=\"'16px'\" [bindingClass]=\"'flex rounded margin-top-s'\"></sb-uic-skeleton-loader>\n </div>\n <div class=\"flex w-full flex-wrap flex-middle margin-top-m\">\n <div class=\"\">\n <sb-uic-skeleton-loader [width]=\"'28px'\" [height]=\"'28px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\n </div>\n <span class=\"org-text\"> <sb-uic-skeleton-loader [width]=\"'111px'\" [height]=\"'16px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader></span>\n </div>\n <div class=\"flex flex-middle rating-session margin-top-m\">\n <div class=\"flex flex-middle\">\n <sb-uic-skeleton-loader [width]=\"'45px'\" [height]=\"'12px'\" [bindingClass]=\"'flex rounded margin-top-m'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n </div>\n </mat-card>\n</ng-container>\n\n<ng-template #cbpPlan let-data=\"data\">\n <div class=\"cbp-mark left-0 border-top-radius\">\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.UPCOMING\" class=\"cbp-warning\">{{data.cbpData.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.SUCCESS\" class=\"cbp-success\">{{data.cbpData.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.OVERDUE\" class=\"cbp-danger\">{{'OverDue' }}</p>\n </div>\n</ng-template>",
10243
+ styles: [".course_widget{margin-top:10px}.course_widget .mat-icon{vertical-align:middle;color:#ef951e!important}.course_widget .course_v2{border:1px solid #ef951e;padding:4px 8px;align-items:end;border-radius:16px}.course_widget .main_icon{font-size:16px;width:16px;height:16px}.rating-session mat-icon{font-size:16px;height:16px;width:12px;padding-right:3px;color:#ef951e}.rating-session span{font-size:11px}.rating-session .most-enrolled-text{padding:0 8px;background:#ffea9e;border-radius:4px}.card-standard-container{position:relative;width:245px;min-height:346px;border-radius:8px;box-sizing:border-box;box-shadow:0 10px 30px rgba(153,153,153,.2);overflow:hidden;height:346px;margin:20px 8px}.card-standard-container .progress-bar{width:101%;margin-left:-15px;display:flex;margin-top:0;background:bisque;position:absolute;bottom:0}.card-standard-container ::ng-deep .mat-progress-bar{height:8px!important}.card-standard-container .icon_text{font-size:12px;line-height:16px;text-transform:uppercase}.card-standard-container .course_logo_box{width:38px;height:38px;background:#fff;border-radius:8px;box-sizing:border-box;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.card-standard-container .course_logo_box img{height:28px;width:28px;padding:5px;display:inline-block}.card-standard-container .course_logo_box p{display:inline-block;vertical-align:top}.card-standard-container .org-text{font-size:12px;font-weight:400;width:75%;padding-left:10px;word-break:break-all;white-space:initial;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.card-standard-container .source-div{position:relative;top:100px;background:#fff;z-index:3;border:1px solid #dedfe0;min-width:72px;min-height:72px;max-width:72px;max-height:72px;display:flex;border-radius:8px}.card-standard-container .source-div .source-icon{border-radius:8px;display:block;margin:auto;max-width:58px;max-height:-webkit-fill-available}.card-standard-container mat-card-content{background:#fff}.card-standard-container .card-img{min-width:245px;max-height:140px;min-height:140px;display:block;-o-object-fit:fill;object-fit:fill;border-top-left-radius:8px;border-top-right-radius:8px;width:100%}.card-standard-container .mat-subheading-1{font:600 14px/24px Montserrat}.card-standard-container .complexity{padding-top:70px;display:flex;font-size:14px;line-height:21px;padding-bottom:10px}.card-standard-container .complexity .mode-tag{border-radius:5px;order:2;margin-left:auto;color:#fff;font-size:10px}.card-standard-container .complexity .duration{display:flex;margin-left:auto;order:3;font-weight:700}.card-standard-container .complexity .time-text{margin:0 5px 0 6px;font-weight:700}.card-standard-container .basic{margin:auto 0}.card-standard-container .title-text{word-break:break-all;white-space:initial;margin:8px 0;position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:48px}.card-standard-container .description-text{position:relative;overflow:hidden;height:42px;white-space:normal;text-overflow:ellipsis}.duration-box{background:#000;position:absolute;border:none;display:flex;align-items:center;padding:4px;border-radius:4px}.duration-box.right-corner{right:4px;bottom:4px}.duration-box .mat-icon{vertical-align:middle;color:#fff!important;height:14px!important;width:14px!important;font-size:14px}.duration-box .duration{font:700 12px/16px Lato;display:inline-block;margin:0;padding:0}.width-238{width:238px!important}.cbp-mark{border-radius:12px 0;opacity:1;background-image:linear-gradient(90deg,rgba(0,0,0,.6) 0,rgba(0,0,0,0) 100%);position:absolute;top:0;padding:8px}.cbp-mark p{opacity:1;background-color:#fff;padding:4px;opacity:1;color:#1b2133;font-family:Lato-Regular;font-size:10px;font-weight:400;font-style:Regular;letter-spacing:.5px;text-align:left;line-height:12px;margin-bottom:0}.cbpwidth{width:340px}.cbp-plan{border-radius:4px;opacity:1;background-color:#1b4ca1;top:4px;left:4px;opacity:1;color:rgba(255,255,255,.95);font-family:Lato-Bold;font-size:12px;font-weight:700;font-style:normal;letter-spacing:.25px;text-align:center;line-height:16px;padding:4px}.cbp-info{opacity:1;color:#fff;font-family:Lato-Regular;font-size:10px;font-weight:400;font-style:normal;letter-spacing:.5px;text-align:left;line-height:12px;padding:2px}.cbp-danger{border-radius:2px;border:1px solid rgba(0,0,0,.08);background-color:#d13924!important;color:#fff!important;opacity:1}.cbp-success{border-radius:2px;border:1px solid #1d8922;background-color:#1d8922!important;color:#fff!important;opacity:1}.cbp-warning{border-radius:2px;border:1px solid #ef951e;background-color:#ef951e!important;color:#fff!important;opacity:1}"]
10244
+ }] }
10245
+ ];
10246
+ /** @nocollapse */
10247
+ CardPortraitComponent.ctorParameters = function () { return [
10248
+ { type: material.MatSnackBar },
10249
+ { type: core$1.TranslateService },
10250
+ { type: MultilingualTranslationsService },
10251
+ { type: utilsV2.ConfigurationsService },
10252
+ { type: WidgetContentService }
10253
+ ]; };
10254
+ CardPortraitComponent.propDecorators = {
10255
+ widgetData: [{ type: core.Input }],
10256
+ isLiveOrMarkForDeletion: [{ type: core.Input }],
10257
+ showIntranetContent: [{ type: core.Input }],
10258
+ isIntranetAllowedSettings: [{ type: core.Input }],
10259
+ isCardLoading: [{ type: core.Input }],
10260
+ contentData: [{ type: core.Output }],
10261
+ cbPlanMapData: [{ type: core.Input }]
10262
+ };
10263
+ return CardPortraitComponent;
10264
+ }());
10265
+ if (false) {
10266
+ /** @type {?} */
10267
+ CardPortraitComponent.prototype.widgetData;
10268
+ /** @type {?} */
10269
+ CardPortraitComponent.prototype.isLiveOrMarkForDeletion;
10270
+ /** @type {?} */
10271
+ CardPortraitComponent.prototype.showIntranetContent;
10272
+ /** @type {?} */
10273
+ CardPortraitComponent.prototype.isIntranetAllowedSettings;
10274
+ /** @type {?} */
10275
+ CardPortraitComponent.prototype.isCardLoading;
10276
+ /** @type {?} */
10277
+ CardPortraitComponent.prototype.contentData;
10278
+ /** @type {?} */
10279
+ CardPortraitComponent.prototype.cbPlanMapData;
10280
+ /** @type {?} */
10281
+ CardPortraitComponent.prototype.isCardFlipped;
10282
+ /** @type {?} */
10283
+ CardPortraitComponent.prototype.acbpConstants;
10284
+ /** @type {?} */
10285
+ CardPortraitComponent.prototype.defaultThumbnail;
10286
+ /** @type {?} */
10287
+ CardPortraitComponent.prototype.sourceLogos;
10288
+ /** @type {?} */
10289
+ CardPortraitComponent.prototype.defaultSLogo;
10290
+ /** @type {?} */
10291
+ CardPortraitComponent.prototype.showFlip;
10292
+ /** @type {?} */
10293
+ CardPortraitComponent.prototype.widgetType;
10294
+ /** @type {?} */
10295
+ CardPortraitComponent.prototype.widgetSubType;
10296
+ /**
10297
+ * @type {?}
10298
+ * @private
10299
+ */
10300
+ CardPortraitComponent.prototype.snackBar;
10301
+ /**
10302
+ * @type {?}
10303
+ * @private
10304
+ */
10305
+ CardPortraitComponent.prototype.translate;
10306
+ /**
10307
+ * @type {?}
10308
+ * @private
10309
+ */
10310
+ CardPortraitComponent.prototype.langtranslations;
10311
+ /**
10312
+ * @type {?}
10313
+ * @private
10314
+ */
10315
+ CardPortraitComponent.prototype.configSvc;
10316
+ /**
10317
+ * @type {?}
10318
+ * @private
10319
+ */
10320
+ CardPortraitComponent.prototype.contSvc;
10321
+ }
10322
+
10323
+ /**
10324
+ * @fileoverview added by tsickle
10325
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
10326
+ */
10327
+ var PipePublicURL = /** @class */ (function () {
10328
+ function PipePublicURL(environment) {
10329
+ this.environment = environment;
10330
+ }
10331
+ /**
10332
+ * @param {?} value
10333
+ * @return {?}
10334
+ */
10335
+ PipePublicURL.prototype.transform = /**
10336
+ * @param {?} value
10337
+ * @return {?}
10338
+ */
10339
+ function (value) {
10340
+ /** @type {?} */
10341
+ var mainUrl = value && value.split('/content').pop() || '';
10342
+ /** @type {?} */
10343
+ var finalURL = this.environment.contentHost + "/" + this.environment.contentBucket + "/content" + mainUrl;
10344
+ return value ? finalURL : '';
10345
+ };
10346
+ PipePublicURL.decorators = [
10347
+ { type: core.Pipe, args: [{
10348
+ name: 'pipePublicURL',
10349
+ },] }
10350
+ ];
10351
+ /** @nocollapse */
10352
+ PipePublicURL.ctorParameters = function () { return [
10353
+ { type: undefined, decorators: [{ type: core.Inject, args: ['environment',] }] }
10354
+ ]; };
10355
+ return PipePublicURL;
10356
+ }());
10357
+ if (false) {
10358
+ /** @type {?} */
10359
+ PipePublicURL.prototype.environment;
10360
+ }
10361
+
10362
+ /**
10363
+ * @fileoverview added by tsickle
10364
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
10365
+ */
10366
+ var PipePublicURLModule = /** @class */ (function () {
10367
+ function PipePublicURLModule() {
10368
+ }
10369
+ PipePublicURLModule.decorators = [
10370
+ { type: core.NgModule, args: [{
10371
+ declarations: [PipePublicURL],
10372
+ imports: [
10373
+ common.CommonModule,
10374
+ ],
10375
+ exports: [PipePublicURL],
10376
+ },] }
9400
10377
  ];
9401
10378
  return PipePublicURLModule;
9402
10379
  }());
@@ -9671,18 +10648,18 @@
9671
10648
  * to Print HH:mm:ss
9672
10649
  * @type {?}
9673
10650
  */
9674
- var duration2 = moment$1.duration(data, 'seconds');
10651
+ var duration2 = moment$2.duration(data, 'seconds');
9675
10652
  /** @type {?} */
9676
- var resultstring = moment$1.utc(duration2.asMilliseconds()).format('HH:mm:ss');
10653
+ var resultstring = moment$2.utc(duration2.asMilliseconds()).format('HH:mm:ss');
9677
10654
  return resultstring;
9678
10655
  case 'hms2M': /**to Print mm:ss */
9679
10656
  /**
9680
10657
  * to Print mm:ss
9681
10658
  * @type {?}
9682
10659
  */
9683
- var duration2H = moment$1.duration(data, 'seconds');
10660
+ var duration2H = moment$2.duration(data, 'seconds');
9684
10661
  /** @type {?} */
9685
- var resultstring2H = moment$1.utc(duration2H.asMilliseconds()).format('mm:ss');
10662
+ var resultstring2H = moment$2.utc(duration2H.asMilliseconds()).format('mm:ss');
9686
10663
  return resultstring2H;
9687
10664
  case 'hour':
9688
10665
  if (h === 0) {
@@ -9698,7 +10675,7 @@
9698
10675
  case 'day':
9699
10676
  if (h > 24) {
9700
10677
  /** @type {?} */
9701
- var duration3 = moment$1.duration(data, 'seconds');
10678
+ var duration3 = moment$2.duration(data, 'seconds');
9702
10679
  return duration3.days() + " day(s)";
9703
10680
  }
9704
10681
  return this.hmsCalculation(h, m, s, duration$1, type);
@@ -10229,7 +11206,7 @@
10229
11206
  { type: core.Component, args: [{
10230
11207
  selector: 'sb-uic-card-wide',
10231
11208
  template: "<mat-card class=\"card-wide-lib\">\n <a (click)=\"raiseTelemetry();getRedirectUrlData(widgetData?.content); $event.stopPropagation()\" \n role=\"link\" i18n-aria-label>\n <div class=\"flex\">\n <div>\n <ng-container *ngIf=\"widgetData?.content?.posterImage\">\n <img mat-card-image [src]=\"widgetData?.content?.posterImage | pipePublicURL\" loading=\"lazy\"\n class=\"card-wide-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData?.content?.name\" />\n </ng-container>\n <ng-container *ngIf=\"!widgetData?.content?.posterImage\">\n <ng-container *ngIf=\"widgetData?.content?.appIcon; else defaultImg\">\n <img mat-card-image [src]=\"widgetData?.content?.appIcon | pipePublicURL\" loading=\"lazy\"\n class=\"card-wide-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData?.content?.name\" />\n </ng-container>\n <ng-template #defaultImg>\n <img mat-card-image [src]=\"defaultThumbnail\" loading=\"lazy\"\n class=\"card-wide-img ws-mat-primary-lite-background margin-remove\"\n [alt]=\"widgetData?.content?.name\" />\n </ng-template>\n </ng-container>\n </div>\n <div>\n <div class=\"pl-4 pr-4 w-full\">\n <div class=\"course_widget flex margin-remove\">\n <div class=\"flex flex-end course_v2\">\n <mat-icon class=\"mat-icon main_icon ws-mat-default-text margin-right-xs\">video_library</mat-icon>\n <sb-uic-display-content-type i18n-title title=\"Content Type\" *ngIf=\"widgetData?.content?.primaryCategory\"\n class=\"ws-mat-black60-text font-normal mat-caption \" [displayContentType]=\"widgetData?.content?.primaryCategory==='Course Unit'\n ?'Module'\n :widgetData?.content?.primaryCategory\">\n </sb-uic-display-content-type>\n </div>\n </div>\n <div [id]=\"'m-c-'+ widgetData?.content?.identifier\"\n class=\"mat-subheading-1 title-text ws-mat-text-block-fade-gradient\">\n {{ widgetData?.content?.name }}\n </div>\n\n <div class=\"flex w-full flex-middle\">\n <div class=\"course_logo_box\">\n <img [src]=\"widgetData?.content?.creatorLogo | pipePublicURL \" class=\"source-icon\" [wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n [alt]=\"(widgetData?.content?.sourceName + '_' + widgetData?.content?.identifier)\" />\n </div>\n <!-- <span class=\"org-text\">{{'cardcontentv2.by' | translate}} -->\n <span class=\"org-text\">By&nbsp; {{ (widgetData?.content?.organisation && widgetData?.content?.organisation[0]) ? widgetData?.content?.organisation[0] : 'Karmayogi Bharat' }}</span>\n </div>\n </div>\n </div>\n </div>\n </a>\n</mat-card>\n",
10232
- styles: [".card-wide-lib{width:inherit;padding:16px;border-radius:12px;background:#fff;border:1px solid rgba(0,0,0,.16)}.card-wide-lib .card-wide-img{width:190px;height:107px;border-radius:12px}.card-wide-lib .course_widget{margin-top:10px}.card-wide-lib .course_widget .mat-icon{vertical-align:middle;color:#ef951e!important}.card-wide-lib .course_widget .course_v2{border:1px solid #ef951e;padding:4px 8px;align-items:end;border-radius:16px}.card-wide-lib .course_widget .main_icon{font-size:16px;width:16px;height:16px}.card-wide-lib .course_logo_box{width:38px;height:38px;background:#fff;border-radius:8px;box-sizing:border-box;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.card-wide-lib .course_logo_box img{height:28px;width:28px;padding:5px;display:inline-block}.card-wide-lib .course_logo_box p{display:inline-block;vertical-align:top}.card-wide-lib .org-text{font-size:12px;font-weight:400;width:75%;padding-left:10px;word-break:break-all;white-space:initial;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}@media screen and (max-width:768px){.card-wide-img{width:147px!important;height:117px!important;border-radius:12px!important}}"]
11209
+ styles: [".card-wide-lib{width:inherit;padding:16px;border-radius:12px;background:#fff;border:1px solid rgba(0,0,0,.16)}.card-wide-lib .card-wide-img{width:190px;height:107px;border-radius:12px}.card-wide-lib .course_widget{margin-top:10px}.card-wide-lib .course_widget .mat-icon{vertical-align:middle;color:#ef951e!important}.card-wide-lib .course_widget .course_v2{border:1px solid #ef951e;padding:4px 8px;align-items:end;border-radius:16px}.card-wide-lib .course_widget .main_icon{font-size:16px;width:16px;height:16px}.card-wide-lib .course_logo_box{width:38px;height:38px;background:#fff;border-radius:8px;box-sizing:border-box;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.card-wide-lib .course_logo_box img{height:28px;width:28px;padding:5px;display:inline-block}.card-wide-lib .course_logo_box p{display:inline-block;vertical-align:top}.card-wide-lib .org-text{font-size:12px;font-weight:400;width:75%;padding-left:10px;word-break:break-all;white-space:initial;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}@media screen and (max-width:768px){.card-wide-img{width:147px!important;height:117px!important;border-radius:12px!important}.course_widget{max-width:145px}.org-text{width:56%!important}}"]
10233
11210
  }] }
10234
11211
  ];
10235
11212
  /** @nocollapse */
@@ -15714,671 +16691,1035 @@
15714
16691
  * @param {?} avg
15715
16692
  * @return {?}
15716
16693
  */
15717
- RatingService.prototype.getRatingIcon = /**
16694
+ RatingService.prototype.getRatingIcon = /**
16695
+ * @param {?} ratingIndex
16696
+ * @param {?} avg
16697
+ * @return {?}
16698
+ */
16699
+ function (ratingIndex, avg) {
16700
+ if (avg) {
16701
+ /** @type {?} */
16702
+ var avgRating = avg;
16703
+ /** @type {?} */
16704
+ var ratingFloor = Math.floor(avgRating)
16705
+ // const difference = avgRating - ratingIndex
16706
+ ;
16707
+ // const difference = avgRating - ratingIndex
16708
+ if (ratingIndex <= ratingFloor) {
16709
+ return 'star';
16710
+ }
16711
+ if (ratingFloor === ratingIndex - 1 && avgRating % 1 >= 0.29 && avgRating % 1 < 0.71) {
16712
+ return 'star_half';
16713
+ }
16714
+ }
16715
+ return 'star';
16716
+ };
16717
+ /**
16718
+ * @param {?} ratingIndex
16719
+ * @param {?} avg
16720
+ * @return {?}
16721
+ */
16722
+ RatingService.prototype.getRatingIconClass = /**
16723
+ * @param {?} ratingIndex
16724
+ * @param {?} avg
16725
+ * @return {?}
16726
+ */
16727
+ function (ratingIndex, avg) {
16728
+ if (avg) {
16729
+ /** @type {?} */
16730
+ var avgRating = avg;
16731
+ /** @type {?} */
16732
+ var ratingFloor = Math.floor(avgRating);
16733
+ if (ratingIndex <= ratingFloor) {
16734
+ return true;
16735
+ }
16736
+ if (ratingFloor === ratingIndex - 1 && avgRating % 1 >= 0.29 && avgRating % 1 < 0.71) {
16737
+ return true;
16738
+ }
16739
+ if (ratingFloor === ratingIndex - 1 && avgRating % 1 > 0.71) {
16740
+ return true;
16741
+ }
16742
+ if (ratingFloor === ratingIndex - 1 && avgRating % 1 < 0.29) {
16743
+ return false;
16744
+ }
16745
+ }
16746
+ return false;
16747
+ };
16748
+ /**
16749
+ * @param {?} contentId
16750
+ * @param {?} userID
16751
+ * @return {?}
16752
+ */
16753
+ RatingService.prototype.getAuthorReply = /**
16754
+ * @param {?} contentId
16755
+ * @param {?} userID
16756
+ * @return {?}
16757
+ */
16758
+ function (contentId, userID) {
16759
+ return this.http.get(API_END_POINTS$3.GET_AUTHOR_REPLY(contentId, userID));
16760
+ };
16761
+ RatingService.decorators = [
16762
+ { type: core.Injectable, args: [{
16763
+ providedIn: 'root',
16764
+ },] }
16765
+ ];
16766
+ /** @nocollapse */
16767
+ RatingService.ctorParameters = function () { return [
16768
+ { type: http.HttpClient }
16769
+ ]; };
16770
+ /** @nocollapse */ RatingService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function RatingService_Factory() { return new RatingService(core.ɵɵinject(http.HttpClient)); }, token: RatingService, providedIn: "root" });
16771
+ return RatingService;
16772
+ }());
16773
+ if (false) {
16774
+ /** @type {?} */
16775
+ RatingService.prototype.http;
16776
+ }
16777
+
16778
+ /**
16779
+ * @fileoverview added by tsickle
16780
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
16781
+ */
16782
+ /** @type {?} */
16783
+ var API_END_POINTS$4 = {
16784
+ TOP_REVIEWS: "/apis/proxies/v8/ratings/v1/topReviews"
16785
+ };
16786
+ var UserContentRatingLibService = /** @class */ (function () {
16787
+ function UserContentRatingLibService(http) {
16788
+ this.http = http;
16789
+ }
16790
+ /**
16791
+ * @param {?} doId
16792
+ * @return {?}
16793
+ */
16794
+ UserContentRatingLibService.prototype.fetchTopReviews = /**
16795
+ * @param {?} doId
16796
+ * @return {?}
16797
+ */
16798
+ function (doId) {
16799
+ return this.http.get(API_END_POINTS$4.TOP_REVIEWS + "/" + doId);
16800
+ };
16801
+ UserContentRatingLibService.decorators = [
16802
+ { type: core.Injectable, args: [{
16803
+ providedIn: 'root'
16804
+ },] }
16805
+ ];
16806
+ /** @nocollapse */
16807
+ UserContentRatingLibService.ctorParameters = function () { return [
16808
+ { type: http.HttpClient }
16809
+ ]; };
16810
+ /** @nocollapse */ UserContentRatingLibService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function UserContentRatingLibService_Factory() { return new UserContentRatingLibService(core.ɵɵinject(http.HttpClient)); }, token: UserContentRatingLibService, providedIn: "root" });
16811
+ return UserContentRatingLibService;
16812
+ }());
16813
+ if (false) {
16814
+ /**
16815
+ * @type {?}
16816
+ * @private
16817
+ */
16818
+ UserContentRatingLibService.prototype.http;
16819
+ }
16820
+
16821
+ /**
16822
+ * @fileoverview added by tsickle
16823
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
16824
+ */
16825
+ var UserContentRatingLibComponent = /** @class */ (function () {
16826
+ function UserContentRatingLibComponent(ratingService, userRatingSvc) {
16827
+ this.ratingService = ratingService;
16828
+ this.userRatingSvc = userRatingSvc;
16829
+ this.currentIndex = 0;
16830
+ this.providerId = '';
16831
+ this.formData = '';
16832
+ this.emptyResponse = new core.EventEmitter();
16833
+ this.styleData = {};
16834
+ this.contentdata = [];
16835
+ }
16836
+ /**
16837
+ * @return {?}
16838
+ */
16839
+ UserContentRatingLibComponent.prototype.ngOnInit = /**
16840
+ * @return {?}
16841
+ */
16842
+ function () {
16843
+ this.styleData = this.formData && this.formData.sliderData && this.formData.sliderData.styleData;
16844
+ this.getTopReviews();
16845
+ };
16846
+ /**
16847
+ * @return {?}
16848
+ */
16849
+ UserContentRatingLibComponent.prototype.getTopReviews = /**
16850
+ * @return {?}
16851
+ */
16852
+ function () {
16853
+ var _this = this;
16854
+ this.contentdata = [];
16855
+ this.userRatingSvc.fetchTopReviews(this.providerId).subscribe((/**
16856
+ * @param {?} response
16857
+ * @return {?}
16858
+ */
16859
+ function (response) {
16860
+ if (response && response.result && response.result.content.length) {
16861
+ response.result.content.forEach((/**
16862
+ * @param {?} contentEle
16863
+ * @return {?}
16864
+ */
16865
+ function (contentEle) {
16866
+ /** @type {?} */
16867
+ var localData = {};
16868
+ localData['content'] = contentEle.contentInfo;
16869
+ localData['rating'] = contentEle.rating;
16870
+ localData['review'] = contentEle.review;
16871
+ localData['userDetails'] = contentEle.userDetails;
16872
+ localData['cardSubType'] = "card-wide-lib";
16873
+ localData['cardCustomeClass'] = "";
16874
+ _this.contentdata.push(localData);
16875
+ }));
16876
+ }
16877
+ else {
16878
+ _this.emptyResponse.emit(true);
16879
+ }
16880
+ }), (/**
16881
+ * @param {?} _error
16882
+ * @return {?}
16883
+ */
16884
+ function (_error) {
16885
+ _this.emptyResponse.emit(true);
16886
+ }));
16887
+ };
16888
+ /**
16889
+ * @param {?} ratingIndex
16890
+ * @param {?} avg
16891
+ * @return {?}
16892
+ */
16893
+ UserContentRatingLibComponent.prototype.getRatingIcon = /**
15718
16894
  * @param {?} ratingIndex
15719
16895
  * @param {?} avg
15720
16896
  * @return {?}
15721
16897
  */
15722
16898
  function (ratingIndex, avg) {
15723
- if (avg) {
15724
- /** @type {?} */
15725
- var avgRating = avg;
15726
- /** @type {?} */
15727
- var ratingFloor = Math.floor(avgRating)
15728
- // const difference = avgRating - ratingIndex
15729
- ;
15730
- // const difference = avgRating - ratingIndex
15731
- if (ratingIndex <= ratingFloor) {
15732
- return 'star';
15733
- }
15734
- if (ratingFloor === ratingIndex - 1 && avgRating % 1 >= 0.29 && avgRating % 1 < 0.71) {
15735
- return 'star_half';
15736
- }
15737
- }
15738
- return 'star';
16899
+ return this.ratingService.getRatingIcon(ratingIndex, avg);
15739
16900
  };
15740
16901
  /**
15741
16902
  * @param {?} ratingIndex
15742
16903
  * @param {?} avg
15743
16904
  * @return {?}
15744
16905
  */
15745
- RatingService.prototype.getRatingIconClass = /**
16906
+ UserContentRatingLibComponent.prototype.getRatingIconClass = /**
15746
16907
  * @param {?} ratingIndex
15747
16908
  * @param {?} avg
15748
16909
  * @return {?}
15749
16910
  */
15750
16911
  function (ratingIndex, avg) {
15751
- if (avg) {
15752
- /** @type {?} */
15753
- var avgRating = avg;
15754
- /** @type {?} */
15755
- var ratingFloor = Math.floor(avgRating);
15756
- if (ratingIndex <= ratingFloor) {
15757
- return true;
15758
- }
15759
- if (ratingFloor === ratingIndex - 1 && avgRating % 1 >= 0.29 && avgRating % 1 < 0.71) {
15760
- return true;
15761
- }
15762
- if (ratingFloor === ratingIndex - 1 && avgRating % 1 > 0.71) {
15763
- return true;
15764
- }
15765
- if (ratingFloor === ratingIndex - 1 && avgRating % 1 < 0.29) {
15766
- return false;
15767
- }
15768
- }
15769
- return false;
16912
+ return this.ratingService.getRatingIconClass(ratingIndex, avg);
15770
16913
  };
15771
16914
  /**
15772
- * @param {?} contentId
15773
- * @param {?} userID
16915
+ * @param {?} indexValue
15774
16916
  * @return {?}
15775
16917
  */
15776
- RatingService.prototype.getAuthorReply = /**
15777
- * @param {?} contentId
15778
- * @param {?} userID
16918
+ UserContentRatingLibComponent.prototype.getCurrentIndex = /**
16919
+ * @param {?} indexValue
15779
16920
  * @return {?}
15780
16921
  */
15781
- function (contentId, userID) {
15782
- return this.http.get(API_END_POINTS$3.GET_AUTHOR_REPLY(contentId, userID));
16922
+ function (indexValue) {
16923
+ this.currentIndex = indexValue;
16924
+ this.handleScrollClick(indexValue);
15783
16925
  };
15784
- RatingService.decorators = [
15785
- { type: core.Injectable, args: [{
15786
- providedIn: 'root',
15787
- },] }
16926
+ /**
16927
+ * @param {?} dataValue
16928
+ * @return {?}
16929
+ */
16930
+ UserContentRatingLibComponent.prototype.handleScrollClick = /**
16931
+ * @param {?} dataValue
16932
+ * @return {?}
16933
+ */
16934
+ function (dataValue) {
16935
+ /** @type {?} */
16936
+ var item = this.scrollableItems.find((/**
16937
+ * @param {?} x
16938
+ * @return {?}
16939
+ */
16940
+ function (x) { return x.key === dataValue; }));
16941
+ item.scrollIntoView("nearest");
16942
+ };
16943
+ UserContentRatingLibComponent.decorators = [
16944
+ { type: core.Component, args: [{
16945
+ selector: 'sb-uic-user-content-rating',
16946
+ template: "<ng-container *ngIf=\"contentdata.length\">\n <div class=\"user-rating-section\">\n <sb-uic-sliders-ng-content [title]=\"'providerName'\" [currentIndex]=\"currentIndex\" (currentIndexValue)=\"getCurrentIndex($event)\" [loadNgContentData]=\"true\" [widgetData]=\"contentdata\" [styleData]=\"styleData\">\n <div sliderbody>\n <div class=\"flex justify-start md:justify-center users-block\">\n <ng-container *ngFor=\"let userData of contentdata; let j = index\">\n <div class=\"avatar-block mr-1\" [sbUicScrollableItem]=\"j\"\n [ngClass]=\"{'user-active': j === currentIndex}\" (click)=\"handleScrollClick(currentIndex);currentIndex = j\">\n <sb-uic-avatar-photo [defaulfColor]=\"'#1B2133'\" [datalen]=\"1\" [randomColor]=\"true\" [name]=\"userData?.userDetails?.firstName\" [photoUrl]=\"userData?.userDetails?.profileImageUrl\" size=\"m-side-rating\">\n </sb-uic-avatar-photo>\n </div>\n </ng-container>\n </div>\n <div *ngFor=\"let ratingData of contentdata; let i = index\" [hidden]=\"i !== currentIndex\">\n <div class=\"user-ratting-wrapper flex flex-wrap justify-center\">\n <div class=\"w-full mr-0 md:mr-8 ml-0 md:ml-8 pb-5\">\n <sb-uic-cards [widgetData]=\"ratingData\"></sb-uic-cards>\n </div>\n <div class=\"title-border-v2\"></div>\n <p class=\"userName w-full mb-4 pt-6\">{{ratingData?.userDetails?.firstName}}</p>\n <div class=\"flex w-full flex-row justify-center gap-2 mb-4\">\n <mat-icon class=\"mat-icon material-icons rating-icon ws-mat-black16-text\"\n [ngClass]=\"{'ws-mat-orange-text': getRatingIconClass(rating, ratingData?.rating)}\"\n *ngFor=\"let rating of [1, 2, 3, 4, 5]\">\n {{ getRatingIcon(rating, ratingData?.rating) }}\n </mat-icon>\n </div>\n <p class=\"content-feedback w-full mb-4 px-4 md:px-8\">{{ratingData?.review}}</p>\n </div>\n </div>\n </div>\n </sb-uic-sliders-ng-content>\n </div>\n</ng-container>\n\n",
16947
+ styles: [".user-ratting-wrapper .userName{font-family:Montserrat;font-size:20px;font-weight:600;line-height:24.38px;text-align:center}.user-ratting-wrapper .content-feedback{font-family:Lato;font-size:16px;font-weight:400;line-height:19.2px;text-align:center;color:rgba(0,0,0,.87)}.user-ratting-wrapper .content-info{font-family:Lato;font-size:14px;font-weight:700;line-height:16.8px;text-align:center;color:#666}.avatar-block{border:8px solid transparent;position:relative;cursor:pointer;width:48px;height:48px}.user-active{content:\"\";border:5px solid #f3972e;border-radius:50%;display:flex;justify-content:center;align-items:center;margin-bottom:0;width:48px;height:48px}.user-active::after{content:\" \";position:absolute;top:106%;left:50%;margin-left:-10px;border-left:10px solid transparent;border-right:10px solid transparent;border-top:18px solid #f3972e}.users-block{overflow-x:auto;padding:16px;padding-bottom:10px!important;width:100%}.title-border-v2{margin:10px;width:300px;height:3px;background:linear-gradient(90deg,rgba(255,255,255,0) 0,#ef951e 20%,#ef951e 80%,rgba(255,255,255,0) 100%)}.user-ratting-wrapper{border:2px solid #f3962f;border-radius:15px;padding:30px 0;background:linear-gradient(111.16deg,rgba(243,150,47,.24) 9.09%,rgba(255,255,255,0) 74.81%)}.user-rating-section ::ng-deep.prev{margin-left:-50px;top:59%}.user-rating-section ::ng-deep.next{margin-right:-50px;top:59%}.user-rating-section ::ng-deep.dots-container{display:none!important}@media screen and (max-width:768px){.user-rating-section ::ng-deep.next{margin-right:-16px;top:59%}.user-rating-section .users-block{width:90%}.user-rating-section ::ng-deep.widget-card-content-new{margin:0 15px}.user-rating-section .user-ratting-wrapper{padding:15px 0}.user-rating-section ::ng-deep.dots-container{display:block!important}.user-rating-section ::ng-deep.banner-meta{bottom:-12px}}"]
16948
+ }] }
15788
16949
  ];
15789
16950
  /** @nocollapse */
15790
- RatingService.ctorParameters = function () { return [
15791
- { type: http.HttpClient }
16951
+ UserContentRatingLibComponent.ctorParameters = function () { return [
16952
+ { type: RatingService },
16953
+ { type: UserContentRatingLibService }
15792
16954
  ]; };
15793
- /** @nocollapse */ RatingService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function RatingService_Factory() { return new RatingService(core.ɵɵinject(http.HttpClient)); }, token: RatingService, providedIn: "root" });
15794
- return RatingService;
16955
+ UserContentRatingLibComponent.propDecorators = {
16956
+ providerId: [{ type: core.Input }],
16957
+ formData: [{ type: core.Input }],
16958
+ emptyResponse: [{ type: core.Output }],
16959
+ scrollableItems: [{ type: core.ViewChildren, args: [ScrollableItemDirective,] }]
16960
+ };
16961
+ return UserContentRatingLibComponent;
15795
16962
  }());
15796
16963
  if (false) {
15797
16964
  /** @type {?} */
15798
- RatingService.prototype.http;
16965
+ UserContentRatingLibComponent.prototype.currentIndex;
16966
+ /** @type {?} */
16967
+ UserContentRatingLibComponent.prototype.providerId;
16968
+ /** @type {?} */
16969
+ UserContentRatingLibComponent.prototype.formData;
16970
+ /** @type {?} */
16971
+ UserContentRatingLibComponent.prototype.emptyResponse;
16972
+ /** @type {?} */
16973
+ UserContentRatingLibComponent.prototype.styleData;
16974
+ /** @type {?} */
16975
+ UserContentRatingLibComponent.prototype.contentdata;
16976
+ /** @type {?} */
16977
+ UserContentRatingLibComponent.prototype.scrollableItems;
16978
+ /** @type {?} */
16979
+ UserContentRatingLibComponent.prototype.ratingService;
16980
+ /** @type {?} */
16981
+ UserContentRatingLibComponent.prototype.userRatingSvc;
15799
16982
  }
15800
16983
 
15801
16984
  /**
15802
16985
  * @fileoverview added by tsickle
15803
16986
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
15804
16987
  */
15805
- var ScrollableItemDirective = /** @class */ (function () {
15806
- function ScrollableItemDirective(el) {
15807
- this.el = el;
16988
+ var UserContentRatingLibModule = /** @class */ (function () {
16989
+ function UserContentRatingLibModule() {
15808
16990
  }
15809
- /**
15810
- * @param {?} blockValue
15811
- * @return {?}
15812
- */
15813
- ScrollableItemDirective.prototype.scrollIntoView = /**
15814
- * @param {?} blockValue
15815
- * @return {?}
15816
- */
15817
- function (blockValue) {
15818
- this.el.nativeElement.scrollIntoView({ behavior: 'smooth', block: blockValue });
15819
- };
15820
- ScrollableItemDirective.decorators = [
15821
- { type: core.Directive, args: [{
15822
- selector: '[sbUicScrollableItem]'
16991
+ UserContentRatingLibModule.decorators = [
16992
+ { type: core.NgModule, args: [{
16993
+ declarations: [UserContentRatingLibComponent],
16994
+ imports: [
16995
+ common.CommonModule,
16996
+ material.MatIconModule,
16997
+ material.MatChipsModule,
16998
+ SkeletonLoaderLibModule,
16999
+ SlidersLibModule,
17000
+ CardsModule,
17001
+ AvatarPhotoLibModule,
17002
+ SlidersNgContentLibModule,
17003
+ ScrollableItemModule
17004
+ ],
17005
+ exports: [UserContentRatingLibComponent],
17006
+ providers: [RatingService, UserContentRatingLibService],
17007
+ schemas: [core.CUSTOM_ELEMENTS_SCHEMA]
15823
17008
  },] }
15824
17009
  ];
15825
- /** @nocollapse */
15826
- ScrollableItemDirective.ctorParameters = function () { return [
15827
- { type: core.ElementRef }
15828
- ]; };
15829
- ScrollableItemDirective.propDecorators = {
15830
- key: [{ type: core.Input, args: ['sbUicScrollableItem',] }]
15831
- };
15832
- return ScrollableItemDirective;
17010
+ return UserContentRatingLibModule;
15833
17011
  }());
15834
- if (false) {
15835
- /** @type {?} */
15836
- ScrollableItemDirective.prototype.key;
15837
- /**
15838
- * @type {?}
15839
- * @private
15840
- */
15841
- ScrollableItemDirective.prototype.el;
15842
- }
15843
17012
 
15844
17013
  /**
15845
17014
  * @fileoverview added by tsickle
15846
17015
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
15847
17016
  */
15848
- /** @type {?} */
15849
- var API_END_POINTS$4 = {
15850
- TOP_REVIEWS: "/apis/proxies/v8/ratings/v1/topReviews"
15851
- };
15852
- var UserContentRatingLibService = /** @class */ (function () {
15853
- function UserContentRatingLibService(http) {
15854
- this.http = http;
17017
+ var MdoChannelV1Component = /** @class */ (function () {
17018
+ function MdoChannelV1Component() {
15855
17019
  }
15856
17020
  /**
15857
- * @param {?} doId
15858
17021
  * @return {?}
15859
17022
  */
15860
- UserContentRatingLibService.prototype.fetchTopReviews = /**
15861
- * @param {?} doId
17023
+ MdoChannelV1Component.prototype.ngOnInit = /**
15862
17024
  * @return {?}
15863
17025
  */
15864
- function (doId) {
15865
- return this.http.get(API_END_POINTS$4.TOP_REVIEWS + "/" + doId);
17026
+ function () {
15866
17027
  };
15867
- UserContentRatingLibService.decorators = [
15868
- { type: core.Injectable, args: [{
15869
- providedIn: 'root'
15870
- },] }
17028
+ MdoChannelV1Component.decorators = [
17029
+ { type: core.Component, args: [{
17030
+ selector: 'sb-uic-mdo-channel-v1',
17031
+ template: "<p>mdo-channel-v1 works!</p>\n",
17032
+ styles: [""]
17033
+ }] }
15871
17034
  ];
15872
17035
  /** @nocollapse */
15873
- UserContentRatingLibService.ctorParameters = function () { return [
15874
- { type: http.HttpClient }
15875
- ]; };
15876
- /** @nocollapse */ UserContentRatingLibService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function UserContentRatingLibService_Factory() { return new UserContentRatingLibService(core.ɵɵinject(http.HttpClient)); }, token: UserContentRatingLibService, providedIn: "root" });
15877
- return UserContentRatingLibService;
17036
+ MdoChannelV1Component.ctorParameters = function () { return []; };
17037
+ return MdoChannelV1Component;
15878
17038
  }());
15879
- if (false) {
15880
- /**
15881
- * @type {?}
15882
- * @private
15883
- */
15884
- UserContentRatingLibService.prototype.http;
15885
- }
15886
17039
 
15887
17040
  /**
15888
17041
  * @fileoverview added by tsickle
15889
17042
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
15890
17043
  */
15891
- var UserContentRatingLibComponent = /** @class */ (function () {
15892
- function UserContentRatingLibComponent(ratingService, userRatingSvc) {
15893
- this.ratingService = ratingService;
15894
- this.userRatingSvc = userRatingSvc;
15895
- this.currentIndex = 0;
15896
- this.providerId = '';
15897
- this.formData = '';
15898
- this.emptyResponse = new core.EventEmitter();
15899
- this.styleData = {};
15900
- this.contentdata = [];
17044
+ var MdoChannelV2Component = /** @class */ (function () {
17045
+ function MdoChannelV2Component(route, router, eventSvc, translate, langtranslations) {
17046
+ var _this = this;
17047
+ this.route = route;
17048
+ this.router = router;
17049
+ this.eventSvc = eventSvc;
17050
+ this.translate = translate;
17051
+ this.langtranslations = langtranslations;
17052
+ this.sectionList = [];
17053
+ this.channnelName = '';
17054
+ this.orgId = '';
17055
+ this.selectedIndex = 0;
17056
+ this.hideCompetencyBlock = false;
17057
+ this.contentTabEmptyResponseCount = 0;
17058
+ this.titles = [
17059
+ { title: 'Learn', url: '/page/learn', icon: 'school', disableTranslate: false },
17060
+ {
17061
+ title: "MDO Channel",
17062
+ url: "/app/learn/mdo-channels/all-channels",
17063
+ icon: '', disableTranslate: true,
17064
+ },
17065
+ ];
17066
+ this.showModal = false;
17067
+ this.descriptionMaxLength = 500;
17068
+ this.isTelemetryRaised = false;
17069
+ if (this.route.snapshot.data && this.route.snapshot.data.formData
17070
+ && this.route.snapshot.data.formData.data
17071
+ && this.route.snapshot.data.formData.data.result
17072
+ && this.route.snapshot.data.formData.data.result.form
17073
+ && this.route.snapshot.data.formData.data.result.form.data
17074
+ && this.route.snapshot.data.formData.data.result.form.data.sectionList) {
17075
+ this.sectionList = this.route.snapshot.data.formData.data.result.form.data.sectionList;
17076
+ }
17077
+ this.langtranslations.languageSelectedObservable.subscribe((/**
17078
+ * @return {?}
17079
+ */
17080
+ function () {
17081
+ if (localStorage.getItem('websiteLanguage')) {
17082
+ _this.translate.setDefaultLang('en');
17083
+ /** @type {?} */
17084
+ var lang = (/** @type {?} */ (localStorage.getItem('websiteLanguage')));
17085
+ _this.translate.use(lang);
17086
+ }
17087
+ }));
15901
17088
  }
15902
17089
  /**
15903
17090
  * @return {?}
15904
17091
  */
15905
- UserContentRatingLibComponent.prototype.ngOnInit = /**
17092
+ MdoChannelV2Component.prototype.ngOnInit = /**
17093
+ * @return {?}
17094
+ */
17095
+ function () {
17096
+ var _this = this;
17097
+ this.route.params.subscribe((/**
17098
+ * @param {?} params
17099
+ * @return {?}
17100
+ */
17101
+ function (params) {
17102
+ _this.channnelName = params['channel'];
17103
+ _this.orgId = params['orgId'];
17104
+ _this.titles.push({
17105
+ title: _this.channnelName, icon: '', url: 'none', disableTranslate: true,
17106
+ });
17107
+ }));
17108
+ };
17109
+ /**
17110
+ * @param {?} tabEvent
17111
+ * @return {?}
17112
+ */
17113
+ MdoChannelV2Component.prototype.tabClicked = /**
17114
+ * @param {?} tabEvent
17115
+ * @return {?}
17116
+ */
17117
+ function (tabEvent) {
17118
+ this.raiseTelemetry(tabEvent.tab.textLabel + " tab");
17119
+ };
17120
+ /**
17121
+ * @param {?} event
17122
+ * @param {?} contentStripData
17123
+ * @return {?}
17124
+ */
17125
+ MdoChannelV2Component.prototype.hideContentStrip = /**
17126
+ * @param {?} event
17127
+ * @param {?} contentStripData
17128
+ * @return {?}
17129
+ */
17130
+ function (event, contentStripData) {
17131
+ if (event) {
17132
+ contentStripData['hideSection'] = true;
17133
+ this.contentTabEmptyResponseCount = this.contentTabEmptyResponseCount + 1;
17134
+ // if(this.contentTabEmptyResponseCount === 4 ) {
17135
+ // this.selectedIndex = 1
17136
+ // }
17137
+ }
17138
+ };
17139
+ /**
17140
+ * @param {?} event
17141
+ * @return {?}
17142
+ */
17143
+ MdoChannelV2Component.prototype.triggerOpenDialog = /**
17144
+ * @param {?} event
15906
17145
  * @return {?}
15907
17146
  */
15908
- function () {
15909
- this.styleData = this.formData && this.formData.sliderData && this.formData.sliderData.styleData;
15910
- this.getTopReviews();
17147
+ function (event) {
17148
+ if (event) {
17149
+ this.showModal = true;
17150
+ document.body.style.overflow = 'hidden';
17151
+ }
17152
+ this.raiseTelemetry('btn open key annoucements');
15911
17153
  };
15912
17154
  /**
15913
17155
  * @return {?}
15914
17156
  */
15915
- UserContentRatingLibComponent.prototype.getTopReviews = /**
17157
+ MdoChannelV2Component.prototype.onClose = /**
15916
17158
  * @return {?}
15917
17159
  */
15918
17160
  function () {
15919
- var _this = this;
15920
- this.contentdata = [];
15921
- this.userRatingSvc.fetchTopReviews(this.providerId).subscribe((/**
15922
- * @param {?} response
15923
- * @return {?}
15924
- */
15925
- function (response) {
15926
- if (response && response.result && response.result.content.length) {
15927
- response.result.content.forEach((/**
15928
- * @param {?} contentEle
15929
- * @return {?}
15930
- */
15931
- function (contentEle) {
15932
- /** @type {?} */
15933
- var localData = {};
15934
- localData['content'] = contentEle.contentInfo;
15935
- localData['rating'] = contentEle.rating;
15936
- localData['review'] = contentEle.review;
15937
- localData['userDetails'] = contentEle.userDetails;
15938
- localData['cardSubType'] = "card-wide-lib";
15939
- localData['cardCustomeClass'] = "";
15940
- _this.contentdata.push(localData);
15941
- }));
15942
- }
15943
- else {
15944
- _this.emptyResponse.emit(true);
15945
- }
15946
- }), (/**
15947
- * @param {?} _error
15948
- * @return {?}
15949
- */
15950
- function (_error) {
15951
- _this.emptyResponse.emit(true);
15952
- }));
17161
+ this.showModal = false;
17162
+ document.body.style.overflow = 'auto';
17163
+ this.raiseTelemetry('btn close key annoucements');
15953
17164
  };
15954
17165
  /**
15955
- * @param {?} ratingIndex
15956
- * @param {?} avg
17166
+ * @param {?} event
15957
17167
  * @return {?}
15958
17168
  */
15959
- UserContentRatingLibComponent.prototype.getRatingIcon = /**
15960
- * @param {?} ratingIndex
15961
- * @param {?} avg
17169
+ MdoChannelV2Component.prototype.raiseTelemetryInteratEvent = /**
17170
+ * @param {?} event
15962
17171
  * @return {?}
15963
17172
  */
15964
- function (ratingIndex, avg) {
15965
- return this.ratingService.getRatingIcon(ratingIndex, avg);
17173
+ function (event) {
17174
+ if (event && event.viewMoreUrl) {
17175
+ this.raiseTelemetry(event.stripTitle + " " + event.viewMoreUrl.viewMoreText);
17176
+ }
17177
+ if (!this.isTelemetryRaised && event && !event.viewMoreUrl) {
17178
+ this.eventSvc.raiseInteractTelemetry({
17179
+ type: 'click',
17180
+ subType: 'mdo-channel',
17181
+ id: lodash.kebabCase(event.typeOfTelemetry.toLocaleLowerCase()) + "-card",
17182
+ }, {
17183
+ id: event.identifier,
17184
+ type: event.primaryCategory,
17185
+ }, {
17186
+ pageIdExt: lodash.kebabCase(event.primaryCategory.toLocaleLowerCase()) + "-card",
17187
+ module: utilsV2.WsEvents.EnumTelemetrymodules.LEARN,
17188
+ });
17189
+ this.isTelemetryRaised = true;
17190
+ }
15966
17191
  };
15967
17192
  /**
15968
- * @param {?} ratingIndex
15969
- * @param {?} avg
17193
+ * @param {?} name
15970
17194
  * @return {?}
15971
17195
  */
15972
- UserContentRatingLibComponent.prototype.getRatingIconClass = /**
15973
- * @param {?} ratingIndex
15974
- * @param {?} avg
17196
+ MdoChannelV2Component.prototype.raiseCompetencyTelemetry = /**
17197
+ * @param {?} name
15975
17198
  * @return {?}
15976
17199
  */
15977
- function (ratingIndex, avg) {
15978
- return this.ratingService.getRatingIconClass(ratingIndex, avg);
17200
+ function (name) {
17201
+ this.raiseTelemetry(name + " core expertise");
15979
17202
  };
15980
17203
  /**
15981
- * @param {?} indexValue
17204
+ * @param {?} name
15982
17205
  * @return {?}
15983
17206
  */
15984
- UserContentRatingLibComponent.prototype.getCurrentIndex = /**
15985
- * @param {?} indexValue
17207
+ MdoChannelV2Component.prototype.raiseTelemetry = /**
17208
+ * @param {?} name
15986
17209
  * @return {?}
15987
17210
  */
15988
- function (indexValue) {
15989
- this.currentIndex = indexValue;
15990
- this.handleScrollClick(indexValue);
17211
+ function (name) {
17212
+ this.eventSvc.raiseInteractTelemetry({
17213
+ type: 'click',
17214
+ subType: 'mdo-channel',
17215
+ id: "" + lodash.kebabCase(name).toLocaleLowerCase(),
17216
+ }, {}, {
17217
+ module: utilsV2.WsEvents.EnumTelemetrymodules.LEARN,
17218
+ });
15991
17219
  };
15992
17220
  /**
15993
- * @param {?} dataValue
17221
+ * @param {?} event
15994
17222
  * @return {?}
15995
17223
  */
15996
- UserContentRatingLibComponent.prototype.handleScrollClick = /**
15997
- * @param {?} dataValue
17224
+ MdoChannelV2Component.prototype.hideCompetency = /**
17225
+ * @param {?} event
15998
17226
  * @return {?}
15999
17227
  */
16000
- function (dataValue) {
16001
- /** @type {?} */
16002
- var item = this.scrollableItems.find((/**
16003
- * @param {?} x
16004
- * @return {?}
16005
- */
16006
- function (x) { return x.key === dataValue; }));
16007
- item.scrollIntoView("nearest");
17228
+ function (event) {
17229
+ if (event) {
17230
+ this.hideCompetencyBlock = true;
17231
+ }
16008
17232
  };
16009
- UserContentRatingLibComponent.decorators = [
17233
+ /**
17234
+ * @param {?} _stripData
17235
+ * @param {?} contentStrip
17236
+ * @return {?}
17237
+ */
17238
+ MdoChannelV2Component.prototype.showAllContent = /**
17239
+ * @param {?} _stripData
17240
+ * @param {?} contentStrip
17241
+ * @return {?}
17242
+ */
17243
+ function (_stripData, contentStrip) {
17244
+ if (contentStrip && contentStrip.strips && contentStrip.strips.length) {
17245
+ /** @type {?} */
17246
+ var stripData = contentStrip.strips[0];
17247
+ if (stripData && stripData.request) {
17248
+ delete (stripData['loaderWidgets']);
17249
+ this.router.navigate(["/app/learn/mdo-channels/" + this.channnelName + "/" + this.orgId + "/all-content"], { queryParams: { stripData: JSON.stringify(stripData) } });
17250
+ }
17251
+ }
17252
+ else {
17253
+ this.router.navigate(["/app/learn/browse-by/provider/" + this.channnelName + "/" + this.orgId + "/all-CBP"]);
17254
+ }
17255
+ };
17256
+ MdoChannelV2Component.decorators = [
16010
17257
  { type: core.Component, args: [{
16011
- selector: 'sb-uic-user-content-rating',
16012
- template: "<ng-container *ngIf=\"contentdata.length\">\n <sb-uic-sliders-ng-content [title]=\"'providerName'\" [currentIndex]=\"currentIndex\" (currentIndexValue)=\"getCurrentIndex($event)\" [loadNgContentData]=\"true\" [widgetData]=\"contentdata\" [styleData]=\"styleData\">\n <div sliderbody>\n <div class=\"flex justify-start md:justify-center users-block mb-4 \">\n <ng-container *ngFor=\"let userData of contentdata; let j = index\">\n <div class=\"avatar-block mr-1\" [sbUicScrollableItem]=\"j\"\n [ngClass]=\"{'user-active': j === currentIndex}\" (click)=\"handleScrollClick(currentIndex);currentIndex = j\">\n <sb-uic-avatar-photo [defaulfColor]=\"'#1B2133'\" [datalen]=\"1\" [randomColor]=\"true\" [name]=\"userData?.userDetails?.firstName\" [photoUrl]=\"userData?.userDetails?.profileImageUrl\" size=\"m-side-rating\">\n </sb-uic-avatar-photo>\n </div>\n </ng-container>\n </div>\n <div *ngFor=\"let ratingData of contentdata; let i = index\" [hidden]=\"i !== currentIndex\">\n <div class=\"user-ratting-wrapper flex flex-wrap justify-center\">\n <p class=\"userName w-full mb-4\">{{ratingData?.userDetails?.firstName}}</p>\n \n <div class=\"flex w-full flex-row justify-center gap-2 mb-4\">\n <mat-icon class=\"mat-icon material-icons rating-icon ws-mat-black16-text\"\n [ngClass]=\"{'ws-mat-orange-text': getRatingIconClass(rating, ratingData?.rating)}\"\n *ngFor=\"let rating of [1, 2, 3, 4, 5]\">\n {{ getRatingIcon(rating, ratingData?.rating) }}\n </mat-icon>\n </div>\n <p class=\"content-feedback w-full mb-4 pl-0 pr-0 md:pl-12 md:pr-12 \">{{ratingData?.review}}</p>\n \n <hr class=\"divider mb-4\">\n <p class=\"content-info w-full mb-4\">For The Content</p>\n <div class=\"w-full mr-0 md:mr-8 ml-0 md:ml-8\">\n <sb-uic-cards [widgetData]=\"ratingData\"></sb-uic-cards>\n </div>\n </div>\n </div>\n </div>\n </sb-uic-sliders-ng-content>\n</ng-container>\n\n",
16013
- styles: [".user-ratting-wrapper .userName{font-family:Montserrat;font-size:20px;font-weight:600;line-height:24.38px;text-align:center}.user-ratting-wrapper .content-feedback{font-family:Lato;font-size:16px;font-weight:400;line-height:19.2px;text-align:center;color:rgba(0,0,0,.87)}.user-ratting-wrapper .content-info{font-family:Lato;font-size:14px;font-weight:700;line-height:16.8px;text-align:center;color:#666}.avatar-block{border:8px solid transparent;position:relative;cursor:pointer;width:48px;height:48px}.user-active{content:\"\";border:5px solid #f3972e;border-radius:50%;display:flex;justify-content:center;align-items:center;margin-bottom:0;width:48px;height:48px}.user-active::after{content:\" \";position:absolute;top:106%;left:50%;margin-left:-10px;border-left:10px solid transparent;border-right:10px solid transparent;border-top:18px solid #f3972e}.users-block{overflow-x:auto;padding:16px;padding-bottom:24px!important;width:100%}hr.divider{border:1px solid #f3972e;width:185px}"]
17258
+ selector: 'sb-uic-mdo-channel-v2',
17259
+ 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>",
17260
+ 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;width:20.5%;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}}::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}"]
16014
17261
  }] }
16015
17262
  ];
16016
17263
  /** @nocollapse */
16017
- UserContentRatingLibComponent.ctorParameters = function () { return [
16018
- { type: RatingService },
16019
- { type: UserContentRatingLibService }
17264
+ MdoChannelV2Component.ctorParameters = function () { return [
17265
+ { type: router.ActivatedRoute },
17266
+ { type: router.Router },
17267
+ { type: utilsV2.EventService },
17268
+ { type: core$1.TranslateService },
17269
+ { type: utilsV2.MultilingualTranslationsService }
16020
17270
  ]; };
16021
- UserContentRatingLibComponent.propDecorators = {
16022
- providerId: [{ type: core.Input }],
16023
- formData: [{ type: core.Input }],
16024
- emptyResponse: [{ type: core.Output }],
16025
- scrollableItems: [{ type: core.ViewChildren, args: [ScrollableItemDirective,] }]
17271
+ MdoChannelV2Component.propDecorators = {
17272
+ sectionList: [{ type: core.Input }]
16026
17273
  };
16027
- return UserContentRatingLibComponent;
17274
+ return MdoChannelV2Component;
16028
17275
  }());
16029
17276
  if (false) {
16030
17277
  /** @type {?} */
16031
- UserContentRatingLibComponent.prototype.currentIndex;
17278
+ MdoChannelV2Component.prototype.sectionList;
16032
17279
  /** @type {?} */
16033
- UserContentRatingLibComponent.prototype.providerId;
17280
+ MdoChannelV2Component.prototype.channnelName;
16034
17281
  /** @type {?} */
16035
- UserContentRatingLibComponent.prototype.formData;
17282
+ MdoChannelV2Component.prototype.orgId;
16036
17283
  /** @type {?} */
16037
- UserContentRatingLibComponent.prototype.emptyResponse;
17284
+ MdoChannelV2Component.prototype.selectedIndex;
16038
17285
  /** @type {?} */
16039
- UserContentRatingLibComponent.prototype.styleData;
17286
+ MdoChannelV2Component.prototype.hideCompetencyBlock;
16040
17287
  /** @type {?} */
16041
- UserContentRatingLibComponent.prototype.contentdata;
17288
+ MdoChannelV2Component.prototype.contentTabEmptyResponseCount;
16042
17289
  /** @type {?} */
16043
- UserContentRatingLibComponent.prototype.scrollableItems;
17290
+ MdoChannelV2Component.prototype.titles;
16044
17291
  /** @type {?} */
16045
- UserContentRatingLibComponent.prototype.ratingService;
17292
+ MdoChannelV2Component.prototype.showModal;
16046
17293
  /** @type {?} */
16047
- UserContentRatingLibComponent.prototype.userRatingSvc;
17294
+ MdoChannelV2Component.prototype.descriptionMaxLength;
17295
+ /** @type {?} */
17296
+ MdoChannelV2Component.prototype.isTelemetryRaised;
17297
+ /**
17298
+ * @type {?}
17299
+ * @private
17300
+ */
17301
+ MdoChannelV2Component.prototype.route;
17302
+ /**
17303
+ * @type {?}
17304
+ * @private
17305
+ */
17306
+ MdoChannelV2Component.prototype.router;
17307
+ /**
17308
+ * @type {?}
17309
+ * @private
17310
+ */
17311
+ MdoChannelV2Component.prototype.eventSvc;
17312
+ /**
17313
+ * @type {?}
17314
+ * @private
17315
+ */
17316
+ MdoChannelV2Component.prototype.translate;
17317
+ /**
17318
+ * @type {?}
17319
+ * @private
17320
+ */
17321
+ MdoChannelV2Component.prototype.langtranslations;
16048
17322
  }
16049
17323
 
16050
17324
  /**
16051
17325
  * @fileoverview added by tsickle
16052
17326
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
16053
17327
  */
16054
- var SlidersNgContentLibComponent = /** @class */ (function (_super) {
16055
- __extends(SlidersNgContentLibComponent, _super);
16056
- function SlidersNgContentLibComponent(events, valueSvc) {
16057
- var _this = _super.call(this) || this;
16058
- _this.events = events;
16059
- _this.valueSvc = valueSvc;
16060
- _this.title = '';
16061
- _this.loadNgContentData = false;
16062
- _this.autoScroll = false;
16063
- _this.currentIndexValue = new core.EventEmitter();
16064
- _this.id = "banner_" + Math.random();
16065
- _this.defaultMenuSubscribe = null;
16066
- _this.isLtMedium$ = _this.valueSvc.isLtMedium$;
16067
- _this.currentIndex = 0;
16068
- _this.slideInterval = null;
16069
- _this.isMobile = false;
16070
- return _this;
17328
+ var ɵ0$7 = HttpLoaderFactory;
17329
+ var MDOChannelModule = /** @class */ (function () {
17330
+ function MDOChannelModule() {
17331
+ }
17332
+ MDOChannelModule.decorators = [
17333
+ { type: core.NgModule, args: [{
17334
+ declarations: [MdoChannelV1Component, MdoChannelV2Component],
17335
+ imports: [
17336
+ common.CommonModule,
17337
+ material.MatIconModule,
17338
+ material.MatChipsModule,
17339
+ SkeletonLoaderLibModule,
17340
+ AnnouncementsModule,
17341
+ TopLearnersModule,
17342
+ CbpPlanModule,
17343
+ CardsModule,
17344
+ CommonStripModule,
17345
+ CompetencyPassbookModule,
17346
+ CompetencyPassbookMdoModule,
17347
+ ContentStripWithTabsLibModule,
17348
+ DataPointsModule,
17349
+ SlidersLibModule,
17350
+ material.MatTabsModule,
17351
+ core$1.TranslateModule.forRoot({
17352
+ loader: {
17353
+ provide: core$1.TranslateLoader,
17354
+ useFactory: ɵ0$7,
17355
+ deps: [http.HttpClient],
17356
+ },
17357
+ }),
17358
+ ],
17359
+ exports: [MdoChannelV1Component, MdoChannelV2Component],
17360
+ providers: [
17361
+ CommonMethodsService
17362
+ ],
17363
+ schemas: [core.CUSTOM_ELEMENTS_SCHEMA]
17364
+ },] }
17365
+ ];
17366
+ return MDOChannelModule;
17367
+ }());
17368
+
17369
+ /**
17370
+ * @fileoverview added by tsickle
17371
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
17372
+ */
17373
+ var ProvidersV2Component = /** @class */ (function () {
17374
+ function ProvidersV2Component(route, router, datePipe, events) {
17375
+ this.route = route;
17376
+ this.router = router;
17377
+ this.datePipe = datePipe;
17378
+ this.events = events;
17379
+ this.sectionList = [];
17380
+ this.providerName = '';
17381
+ this.providerId = '';
17382
+ this.hideCompetencyBlock = false;
17383
+ this.titles = [
17384
+ { title: 'Learn', url: '/page/learn', icon: 'school', disableTranslate: false },
17385
+ { title: "All Providers",
17386
+ url: "/app/learn/browse-by/provider/all-providers",
17387
+ icon: '', disableTranslate: true,
17388
+ },
17389
+ ];
17390
+ this.descriptionMaxLength = 500;
17391
+ this.isTelemetryRaised = false;
16071
17392
  }
16072
17393
  /**
16073
17394
  * @return {?}
16074
17395
  */
16075
- SlidersNgContentLibComponent.prototype.ngOnInit = /**
17396
+ ProvidersV2Component.prototype.ngOnInit = /**
17397
+ * @return {?}
17398
+ */
17399
+ function () {
17400
+ var _this = this;
17401
+ if (this.route.snapshot.data && this.route.snapshot.data.formData
17402
+ && this.route.snapshot.data.formData.data
17403
+ && this.route.snapshot.data.formData.data.result
17404
+ && this.route.snapshot.data.formData.data.result.form
17405
+ && this.route.snapshot.data.formData.data.result.form.data
17406
+ && this.route.snapshot.data.formData.data.result.form.data.sectionList) {
17407
+ this.sectionList = this.route.snapshot.data.formData.data.result.form.data.sectionList;
17408
+ }
17409
+ this.route.params.subscribe((/**
17410
+ * @param {?} params
17411
+ * @return {?}
17412
+ */
17413
+ function (params) {
17414
+ _this.providerName = params['provider'];
17415
+ _this.providerId = params['orgId'];
17416
+ _this.titles.push({
17417
+ title: _this.providerName, icon: '', url: 'none', disableTranslate: true,
17418
+ });
17419
+ }));
17420
+ this.getNavitems();
17421
+ this.currentMonthAndYear = this.datePipe.transform(new Date(), 'MMMM y');
17422
+ };
17423
+ /**
17424
+ * @return {?}
17425
+ */
17426
+ ProvidersV2Component.prototype.getNavitems = /**
17427
+ * @return {?}
17428
+ */
17429
+ function () {
17430
+ this.navList = this.sectionList.filter((/**
17431
+ * @param {?} obj
17432
+ * @return {?}
17433
+ */
17434
+ function (obj) { return obj.enabled && obj.navigation && obj.navOrder; })).sort((/**
17435
+ * @param {?} a
17436
+ * @param {?} b
17437
+ * @return {?}
17438
+ */
17439
+ function (a, b) { return a.navOrder - b.navOrder; }));
17440
+ };
17441
+ /**
17442
+ * @param {?} name
17443
+ * @return {?}
17444
+ */
17445
+ ProvidersV2Component.prototype.scrollToSection = /**
17446
+ * @param {?} name
17447
+ * @return {?}
17448
+ */
17449
+ function (name) {
17450
+ /** @type {?} */
17451
+ var section;
17452
+ section = document.getElementById(name);
17453
+ if (section) {
17454
+ // section.scrollIntoView({ behavior: 'smooth', block: 'start',inline: 'nearest', offsetTop: yOffset })
17455
+ window.scrollTo({
17456
+ top: section.offsetTop - 121,
17457
+ behavior: 'smooth',
17458
+ });
17459
+ }
17460
+ };
17461
+ /**
17462
+ * @param {?} event
17463
+ * @param {?} columnData
17464
+ * @return {?}
17465
+ */
17466
+ ProvidersV2Component.prototype.hideCompetency = /**
17467
+ * @param {?} event
17468
+ * @param {?} columnData
17469
+ * @return {?}
17470
+ */
17471
+ function (event, columnData) {
17472
+ if (event) {
17473
+ this.hideCompetencyBlock = true;
17474
+ columnData['navigation'] = false;
17475
+ columnData['enabled'] = false;
17476
+ this.navList.forEach((/**
17477
+ * @param {?} navItem
17478
+ * @return {?}
17479
+ */
17480
+ function (navItem) {
17481
+ navItem.column.forEach((/**
17482
+ * @param {?} colEle
17483
+ * @return {?}
17484
+ */
17485
+ function (colEle) {
17486
+ if (colEle.key === columnData.key) {
17487
+ navItem['navigation'] = false;
17488
+ }
17489
+ }));
17490
+ }));
17491
+ }
17492
+ };
17493
+ /**
17494
+ * @param {?} event
17495
+ * @param {?} contentStripData
17496
+ * @return {?}
17497
+ */
17498
+ ProvidersV2Component.prototype.hideContentStrip = /**
17499
+ * @param {?} event
17500
+ * @param {?} contentStripData
16076
17501
  * @return {?}
16077
17502
  */
16078
- function () {
16079
- var _this = this;
16080
- if (this.autoScroll) {
16081
- this.reInitiateSlideInterval();
17503
+ function (event, contentStripData) {
17504
+ if (event) {
17505
+ contentStripData['hideSection'] = true;
16082
17506
  }
16083
- this.defaultMenuSubscribe = this.isLtMedium$.subscribe((/**
16084
- * @param {?} isLtMedium
16085
- * @return {?}
16086
- */
16087
- function (isLtMedium) {
16088
- _this.isMobile = isLtMedium;
16089
- }));
16090
17507
  };
16091
17508
  /**
17509
+ * @param {?} event
17510
+ * @param {?} learnerReview
16092
17511
  * @return {?}
16093
17512
  */
16094
- SlidersNgContentLibComponent.prototype.reInitiateSlideInterval = /**
17513
+ ProvidersV2Component.prototype.hideLearnerReview = /**
17514
+ * @param {?} event
17515
+ * @param {?} learnerReview
16095
17516
  * @return {?}
16096
17517
  */
16097
- function () {
16098
- var _this = this;
16099
- if (this.widgetData && this.widgetData.length > 1) {
16100
- try {
16101
- if (this.slideInterval) {
16102
- this.slideInterval.unsubscribe();
16103
- }
16104
- }
16105
- catch (e) {
16106
- }
16107
- finally {
16108
- this.slideInterval = rxjs.interval(8000).subscribe((/**
16109
- * @return {?}
16110
- */
16111
- function () {
16112
- if (_this.currentIndex === _this.widgetData.length - 1) {
16113
- _this.currentIndex = 0;
16114
- _this.currentIndexValue.emit(_this.currentIndex);
16115
- }
16116
- else {
16117
- _this.currentIndex += 1;
16118
- _this.currentIndexValue.emit(_this.currentIndex);
16119
- }
16120
- }));
16121
- }
17518
+ function (event, learnerReview) {
17519
+ if (event) {
17520
+ learnerReview['hideSection'] = true;
16122
17521
  }
16123
17522
  };
16124
17523
  /**
16125
- * @param {?} index
17524
+ * @param {?} _stripData
17525
+ * @param {?} contentStrip
16126
17526
  * @return {?}
16127
17527
  */
16128
- SlidersNgContentLibComponent.prototype.slideTo = /**
16129
- * @param {?} index
17528
+ ProvidersV2Component.prototype.showAllContent = /**
17529
+ * @param {?} _stripData
17530
+ * @param {?} contentStrip
16130
17531
  * @return {?}
16131
17532
  */
16132
- function (index) {
16133
- if (index >= 0 && index < this.widgetData.length) {
16134
- this.currentIndex = index;
16135
- this.currentIndexValue.emit(this.currentIndex);
16136
- }
16137
- else if (index === this.widgetData.length) {
16138
- this.currentIndex = 0;
16139
- this.currentIndexValue.emit(this.currentIndex);
17533
+ function (_stripData, contentStrip) {
17534
+ if (contentStrip && contentStrip.strips && contentStrip.strips.length) {
17535
+ /** @type {?} */
17536
+ var stripData = contentStrip.strips[0];
17537
+ if (stripData && stripData.request) {
17538
+ delete (stripData['loaderWidgets']);
17539
+ this.router.navigate(["/app/learn/browse-by/provider/" + this.providerName + "/" + this.providerId + "/all-content"], { queryParams: { stripData: JSON.stringify(stripData), pageDetails: true } });
17540
+ }
16140
17541
  }
16141
17542
  else {
16142
- this.currentIndex = this.widgetData.length + index;
16143
- this.currentIndexValue.emit(this.currentIndex);
16144
- }
16145
- if (this.autoScroll) {
16146
- this.reInitiateSlideInterval();
17543
+ this.router.navigate(["/app/learn/browse-by/provider/" + this.providerName + "/" + this.providerId + "/all-CBP"], { queryParams: { pageDetails: true } });
16147
17544
  }
16148
17545
  };
16149
- Object.defineProperty(SlidersNgContentLibComponent.prototype, "isOpenInNewTab", {
16150
- get: /**
16151
- * @return {?}
16152
- */
16153
- function () {
16154
- /** @type {?} */
16155
- var currentData = this.widgetData[this.currentIndex];
16156
- if (currentData.redirectUrl && currentData.redirectUrl.includes('mailto') || this.widgetData[this.currentIndex].openInNewTab) {
16157
- return true;
16158
- }
16159
- return false;
16160
- },
16161
- enumerable: true,
16162
- configurable: true
16163
- });
16164
17546
  /**
17547
+ * @param {?} event
16165
17548
  * @return {?}
16166
17549
  */
16167
- SlidersNgContentLibComponent.prototype.openInNewTab = /**
17550
+ ProvidersV2Component.prototype.raiseTelemetryInteratEvent = /**
17551
+ * @param {?} event
16168
17552
  * @return {?}
16169
17553
  */
16170
- function () {
16171
- /** @type {?} */
16172
- var currentData = this.widgetData[this.currentIndex];
16173
- if (currentData.redirectUrl && currentData.redirectUrl.includes('mailto') || this.widgetData[this.currentIndex].openInNewTab) {
16174
- window.open(currentData.redirectUrl);
17554
+ function (event) {
17555
+ if (event && event.viewMoreUrl) {
17556
+ this.raiseTelemetry(event.stripTitle + " " + event.viewMoreUrl.viewMoreText);
17557
+ }
17558
+ if (!this.isTelemetryRaised && event && !event.viewMoreUrl) {
17559
+ this.events.raiseInteractTelemetry({
17560
+ type: 'click',
17561
+ subType: 'ATI/CTI',
17562
+ id: lodash.kebabCase(event.typeOfTelemetry.toLocaleLowerCase()) + "-card",
17563
+ }, {
17564
+ id: event.identifier,
17565
+ type: event.primaryCategory,
17566
+ }, {
17567
+ pageIdExt: lodash.kebabCase(event.primaryCategory.toLocaleLowerCase()) + "-card",
17568
+ module: utilsV2.WsEvents.EnumTelemetrymodules.LEARN,
17569
+ });
17570
+ this.isTelemetryRaised = true;
16175
17571
  }
16176
17572
  };
16177
17573
  /**
16178
- * @param {?} bannerUrl
17574
+ * @param {?} name
16179
17575
  * @return {?}
16180
17576
  */
16181
- SlidersNgContentLibComponent.prototype.raiseTelemetry = /**
16182
- * @param {?} bannerUrl
17577
+ ProvidersV2Component.prototype.raiseCompetencyTelemetry = /**
17578
+ * @param {?} name
16183
17579
  * @return {?}
16184
17580
  */
16185
- function (bannerUrl) {
16186
- this.openInNewTab();
16187
- /** @type {?} */
16188
- var path = window.location.pathname.replace('/', '');
16189
- /** @type {?} */
16190
- var url = path + window.location.search;
17581
+ function (name) {
17582
+ this.raiseTelemetry(name + " core expertise");
17583
+ };
17584
+ /**
17585
+ * @param {?} name
17586
+ * @return {?}
17587
+ */
17588
+ ProvidersV2Component.prototype.raiseTelemetry = /**
17589
+ * @param {?} name
17590
+ * @return {?}
17591
+ */
17592
+ function (name) {
16191
17593
  this.events.raiseInteractTelemetry({
16192
17594
  type: 'click',
16193
- subType: 'banner',
16194
- }, {
16195
- pageUrl: url,
16196
- bannerRedirectUrl: bannerUrl,
16197
- }, {
16198
- pageIdExt: 'banner',
16199
- module: utilsV2.WsEvents.EnumTelemetrymodules.CONTENT,
17595
+ subType: 'ATI/CTI',
17596
+ id: "" + lodash.kebabCase(name).toLocaleLowerCase(),
17597
+ }, {}, {
17598
+ module: utilsV2.WsEvents.EnumTelemetrymodules.LEARN,
16200
17599
  });
16201
17600
  };
16202
17601
  /**
17602
+ * @param {?} name
16203
17603
  * @return {?}
16204
17604
  */
16205
- SlidersNgContentLibComponent.prototype.ngOnDestroy = /**
17605
+ ProvidersV2Component.prototype.raiseNavTelemetry = /**
17606
+ * @param {?} name
16206
17607
  * @return {?}
16207
17608
  */
16208
- function () {
16209
- if (this.defaultMenuSubscribe) {
16210
- this.defaultMenuSubscribe.unsubscribe();
16211
- }
17609
+ function (name) {
17610
+ this.events.raiseInteractTelemetry({
17611
+ type: 'click',
17612
+ subType: 'ATI/CTI',
17613
+ id: lodash.kebabCase(name).toLocaleLowerCase() + "-navigation",
17614
+ }, {}, {
17615
+ module: utilsV2.WsEvents.EnumTelemetrymodules.LEARN,
17616
+ });
16212
17617
  };
16213
- SlidersNgContentLibComponent.decorators = [
17618
+ ProvidersV2Component.decorators = [
16214
17619
  { type: core.Component, args: [{
16215
- selector: 'sb-uic-sliders-ng-content',
16216
- template: "<div class=\"banner-container {{isMobile? styleData?.responsive?.bannerMetaClass : styleData?.bannerMetaClass}}\" (swipeleft)=\"slideTo(currentIndex + 1)\" (swiperight)=\"slideTo(currentIndex - 1)\"\n *ngIf=\"widgetData?.length > 1\" [style.height]=\"isMobile? styleData?.responsive?.customHeight : styleData?.customHeight\"\n [ngStyle]=\"{'border-radius': styleData?.borderRadius || '12px'}\">\n <ng-container *ngIf=\"!loadNgContentData\">\n <a (click)=\"raiseTelemetry(widgetData[currentIndex].redirectUrl)\"\n [routerLink]=\" !isOpenInNewTab && widgetData[currentIndex].redirectUrl? widgetData[currentIndex].redirectUrl : null\" class=\"banner-overlay\"\n [ngClass]=\"{'cursor-auto': !widgetData[currentIndex].redirectUrl}\">\n <div class=\"banner WidgetInstanceId\" *ngFor=\"let slide of widgetData; let i = index\" [hidden]=\"i !== currentIndex\">\n <img i18n-alt alt=\"Page Banner\" [src]=\"slide.banners\" wsUtilsImageResponsive class=\"banner-image\" />\n </div>\n </a>\n <ng-container *ngIf=\"isMobile && styleData?.responsive?.dots !== 'hidden' || !isMobile && styleData?.dots !== 'hidden'\">\n <div class=\"banner-meta {{isMobile? styleData?.responsive?.bannerMetaAlign : styleData?.bannerMetaAlign}}\">\n <a [routerLink]=\" !isOpenInNewTab && widgetData[currentIndex].redirectUrl? widgetData[currentIndex].redirectUrl : null\" class=\"banner-title text-truncate\"\n *ngIf=\"widgetData[currentIndex].title\" [title]=\"widgetData[currentIndex].title\">\n {{ widgetData[currentIndex].title }}\n </a>\n <div class=\"dots-container\" *ngIf=\"widgetData?.length > 1\">\n <span class=\"dot\" [ngClass]=\"{ active: j === currentIndex }\" *ngFor=\"let slide of widgetData; let j = index\"\n (click)=\"slideTo(j)\"></span>\n </div>\n </div>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"loadNgContentData\">\n <!-- <div class=\"banner WidgetInstanceId\" *ngFor=\"let slide of widgetData; let i = index\" [hidden]=\"i !== currentIndex\"> -->\n <ng-content select=\"[sliderbody]\"></ng-content>\n <!-- </div> -->\n <ng-container *ngIf=\"isMobile && styleData?.responsive?.dots !== 'hidden' || !isMobile && styleData?.dots !== 'hidden'\">\n <div class=\"banner-meta {{isMobile? styleData?.responsive?.bannerMetaAlign : styleData?.bannerMetaAlign}}\">\n <a [routerLink]=\" !isOpenInNewTab && widgetData[currentIndex].redirectUrl? widgetData[currentIndex].redirectUrl : null\" class=\"banner-title text-truncate\"\n *ngIf=\"widgetData[currentIndex].title\" [title]=\"widgetData[currentIndex].title\">\n {{ widgetData[currentIndex].title }}\n </a>\n <div class=\"dots-container\" *ngIf=\"widgetData?.length > 1\">\n <span class=\"dot\" [ngClass]=\"{ active: j === currentIndex }\" *ngFor=\"let slide of widgetData; let j = index\"\n (click)=\"slideTo(j)\"></span>\n <ng-content select=\"[sliderMeta]\"></ng-content>\n </div>\n </div>\n </ng-container>\n </ng-container>\n <div class=\"navigation {{isMobile? styleData?.responsive?.arrowsPlacement : styleData?.arrowsPlacement}}\" \n *ngIf=\"isMobile && styleData?.responsive?.navigationArrows !== 'hidden' || !isMobile && styleData?.navigationArrows !== 'hidden'\">\n <a *ngIf=\"widgetData?.length > 1\" role=\"button\" class=\"prev\" (click)=\"slideTo(currentIndex - 1)\">&#10094;</a>\n <a *ngIf=\"widgetData?.length > 1\" role=\"button\" class=\"next\" (click)=\"slideTo(currentIndex + 1)\">&#10095;</a>\n </div>\n</div>\n<div class=\"banner-container-solo margin-top-s\" *ngIf=\"widgetData?.length == 1\">\n <img i18n-alt alt=\"Page Banner\" width=\"100%\" height=\"100%\" [src]=\"widgetData[0].banners\" wsUtilsImageResponsive class=\"banner-image-solo\" />\n</div>\n\n<!-- <ng-container *ngIf=\"!widgetData?.length\">\n <div class=\"slider default-slider h-full\">\n <div class=\"relative h-full\">\n <img class=\"h-full\" src=\"assets/icons/home/default-slider-image.svg\" alt=\"\">\n <div class=\"default-title rounded-full\">\n <p class=\"mat-h1\">{{title}}</p>\n </div>\n </div>\n </div>\n</ng-container> -->\n",
16217
- styles: [".banner-container{min-height:243px;position:relative;margin:auto;padding-bottom:40px}.banner-container.inline-meta{padding-bottom:0!important}.banner-container.flat .banner .banner-image{border-radius:0!important}.banner-overlay{z-index:1;top:0;left:0;width:100%;height:100%;background:linear-gradient(to left,rgba(0,0,0,.25) 0,rgba(0,0,0,0) 15%,rgba(0,0,0,0) 85%,rgba(0,0,0,.25) 100%);border-radius:inherit}.banner{-webkit-animation-name:fade;-webkit-animation-duration:1.5s;animation-name:fade;animation-duration:1.5s;border-radius:inherit;height:inherit}.banner .banner-image{width:100%;min-height:243px;display:block;border-radius:inherit;height:inherit}.banner-meta{text-align:center;z-index:2;padding:8px 12px;position:absolute;bottom:0;left:50%;border-radius:12px;transform:translateX(-50%);box-sizing:border-box}.banner-meta.left{left:0;transform:translateX(0)}.banner-meta.right{left:100%;transform:translateX(-100%)}.banner-meta.top-center{left:0;bottom:100%;transform:translateX(-100%)}.banner-meta .banner-title{color:#f2f2f2;margin-bottom:8px;font-size:1.1rem}@media only screen and (max-width:599px){.banner-meta .banner-title{display:none}}.banner-meta .dots-container{padding:8px;display:flex;align-items:center;justify-content:center}.banner-meta .dots-container .dot{cursor:pointer;height:6px;width:6px;margin:0 4px;background-color:rgba(0,0,0,.4);border-radius:50%;display:inline-block;transition:background-color .5s!important}@media only screen and (max-width:599px){.banner-meta .dots-container .dot{height:8px;width:8px;margin:0 4px}}.banner-meta .dots-container .dot.active{border-radius:4px;background-color:#f3962f;width:16px}@keyframes fade{from{opacity:.25}to{opacity:1}}.next,.prev{cursor:pointer;position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-weight:700;background-color:#1b2133!important;border-radius:50%;z-index:999;height:32px!important;width:32px!important;display:flex;align-items:center;margin-top:-16px;justify-content:center}.prev{left:0;margin-left:-16px}.next{right:0;margin-right:-16px}.navigation.bottom-right .prev{left:unset;right:45px;bottom:-15px;top:unset}.navigation.bottom-right .next{left:unset;right:15px;bottom:-15px;top:unset}.navigation.bottom-center .prev{left:calc(50% - 20px);right:unset;bottom:-15px;top:unset}.navigation.bottom-center .next{left:calc(50% + 20px);right:unset;bottom:-15px;top:unset}.navigation.bottom-left .prev{left:15px;right:unset;bottom:-15px;top:unset}.navigation.bottom-left .next{left:60px;right:unset;bottom:-15px;top:unset}.navigation.middle-inline .prev{left:30px}.navigation.middle-inline .next{right:30px}.banner-container-solo{overflow:hidden;margin:auto;border-radius:12px}.banner-image-solo{width:100%;display:block;border-radius:12px}.default-slider{height:100%;background:#d4e2fb}.default-slider .default-title{text-align:center;position:absolute;top:50%;left:0;right:0;margin:auto;transform:translateY(-50%);z-index:999;background:#e6efff;padding:32px;width:500px}.default-slider .default-title p{word-break:break-word;margin:0!important;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;text-transform:uppercase}@media screen and (max-width:768px){.default-slider{height:384px;width:100%}.default-slider .default-title{width:unset!important}}"]
17620
+ selector: 'sb-uic-providers-v2',
17621
+ template: "<ws-widget-btn-page-back [widgetData]=\"{ url: 'home', titles: titles }\">\n</ws-widget-btn-page-back>\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\">\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=\"'trainingCalendar'\" [ngTemplateOutlet]=\"trainingCalendar\"\n [ngTemplateOutletContext]=\"{trainingCalendar: column.data}\"></ng-container>\n <ng-container *ngSwitchCase=\"'contributors'\" [ngTemplateOutlet]=\"contributors\"\n [ngTemplateOutletContext]=\"{data: column?.data}\"></ng-container>\n <ng-container *ngSwitchCase=\"'infra'\" [ngTemplateOutlet]=\"infra\"\n [ngTemplateOutletContext]=\"{infra: column?.data}\"></ng-container>\n <ng-container *ngSwitchCase=\"'contentFeaturedStrip'\" [ngTemplateOutlet]=\"contentStrip\"\n [ngTemplateOutletContext]=\"{contentStrip: column?.data}\"></ng-container>\n <ng-container *ngSwitchCase=\"'contentTopStrip'\" [ngTemplateOutlet]=\"contentStrip\"\n [ngTemplateOutletContext]=\"{contentStrip: column?.data}\"></ng-container> \n <ng-container *ngSwitchCase=\"'competency'\" [ngTemplateOutlet]=\"competency\"\n [ngTemplateOutletContext]=\"{competency: column}\"></ng-container> \n <ng-container *ngSwitchCase=\"'learnerReview'\" [ngTemplateOutlet]=\"learnerReviewBlock\"\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<div class=\"container-fluid\" *ngIf=\"navList?.length\">\n <div class=\"flex sticky-navigator gap-4\">\n <mat-icon class=\"nav-up-arrow cursor-pointer\" (click)=\"scrollToSection('section-micro-sites')\">arrow_upwards</mat-icon>\n <ng-container *ngFor=\"let section of navList\">\n <ng-container *ngIf=\"section.navigation\">\n <div class=\"nav-button\" (click)=\"scrollToSection(section?.key); raiseNavTelemetry(section?.title)\">{{section?.title}}</div>\n </ng-container>\n </ng-container>\n </div>\n\n</div>\n\n\n<ng-template #topSection let-data=\"data\">\n <!-- <div class=\"w-full grid grid-cols-12 gap-4\"> -->\n <div class=\"col-span-12 \">\n <div class=\"grid grid-cols-12\">\n <div class=\"col-span-12 md:col-span-8\">\n <div class=\"slider h-full\" *ngIf=\"data?.sliderData?.sliders\">\n <sb-uic-sliders [title]=\"providerName\" [widgetData]=\"data?.sliderData?.sliders\" [styleData]=\"data?.sliderData?.styleData\"></sb-uic-sliders>\n </div>\n </div>\n <div class=\"hidden md:block col-span-4 p-5\" style=\"background: #0754AC;\" >\n <sb-uic-data-points [providerId]=\"providerId\" [fetchDataFromApi]=\"true\" [objectData]=\"data?.metrics?.data\" [layoutType]=\"'multipleRows-V2'\"></sb-uic-data-points>\n </div>\n </div>\n </div>\n <div class=\"col-span-12 title-section px-5 md:py-5 mob-container\">\n <div class=\"container flex flex-col md:flex-row\">\n <div class=\"mr-4 logo-box-container\">\n <div class=\"flex logo-box-rounded 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 || providerName}}</h1>\n <p>{{data?.description | slice:0:descriptionMaxLength}}\n <span *ngIf=\"data?.description?.length > descriptionMaxLength\">...</span>\n </p>\n <div class=\"block md:hidden overflow-y-auto mb-3\">\n <sb-uic-data-points [providerId]=\"providerId\" [fetchDataFromApi]=\"true\" [objectData]=\"data?.metrics?.data\" [layoutType]=\"'singleRow-v2'\"></sb-uic-data-points>\n </div>\n <button\n (click)=\"raiseTelemetry(data?.contentButton?.title)\"\n [routerLink]=\"[data?.contentButton?.redirectUrl, providerName, providerId, 'all-CBP']\"\n [queryParams]=\"{pageDetails: true}\" mat-button type=\"button\"\n class=\"view-btn margin-left-xs margin-right-xs small-button blue-border flex-auto-display\">\n <span class=\"mat-heading-1 bold ws-mat-default-text\" i18n>\n {{data?.contentButton?.title}}\n </span>\n </button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n</ng-template>\n\n<ng-template #contentStrip let-contentStrip=\"contentStrip\">\n <ng-container *ngIf=\"!contentStrip?.hideSection\">\n <div class=\"flex justify-center relative mt-8 mb-8\">\n <img class=\"absolute {{contentStrip?.sectionImagePosition}}\" src=\"{{contentStrip?.sectionImage}}\" alt=\"\">\n <div class=\"container \">\n <div class=\"w-full\">\n <sb-uic-content-strip-with-tabs\n [emitViewAll]=\"true\"\n (viewAllResponse)=\"showAllContent($event,contentStrip)\"\n (emptyResponse)=\"hideContentStrip($event, contentStrip)\"\n (telemtryResponse)=\"raiseTelemetryInteratEvent($event)\"\n [providerId]=\"providerId\"\n [widgetData]=\"contentStrip\">\n </sb-uic-content-strip-with-tabs>\n </div>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #contributors let-data=\"data\">\n <div class=\"contributors-background px-5 py-5\" [style.background]=\"data?.background\">\n <div class=\"container\">\n <div class=\"grid grid-cols-12 gap-4 padding-top-l mb-6\">\n <div class=\"col-span-12 md:col-span-3 contributor-desc\">\n <div class=\"infra-box flex flex-col\">\n <div class=\"infra-title-v2 hidden md:block\">\n {{data.detaulTitle}}<span class=\"infra-title2-v2\">{{data.defaultTitle1}}</span>\n </div>\n <div class=\"infra-title-v2 hidden md:block\">\n {{data.myTitle}}<span class=\"infra-title2-v2\">{{data.myTitle1}}</span>\n </div>\n <div class=\"block md:hidden\">\n <span class=\"infra-title-v2\">{{data.detaulTitle}}</span>\n <span class=\"infra-title2-v2\">{{data.defaultTitle1}}</span>\n <span class=\"infra-title-v2\"> {{data.myTitle}}</span>\n <span class=\"infra-title2-v2\">{{data.myTitle1}}</span>\n </div>\n <div class=\"infra-description padding-top-s\">\n {{data.description}}\n </div>\n </div>\n </div>\n <div class=\"col-span-12 md:col-span-9\">\n <sb-uic-common-strip [widgetData]=\"data\"></sb-uic-common-strip>\n </div>\n </div>\n <div class=\"w-full section-divider pt-6\">\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #infra let-infra=\"infra\">\n <div class=\"infra-background px-5\" [style.background]=\"infra?.background\">\n <div class=\"container\">\n <div class=\"grid grid-cols-12 gap-4 infra-sec padding-top-l\">\n <div class=\"col-span-12 md:col-span-4 infra-sec-desc\">\n <div class=\"infra-box flex flex-col\">\n <div class=\"infra-title2 hidden md:block\">\n {{infra?.detaulTitle}}\n </div>\n <div class=\"block md:hidden\">\n <span class=\"infra-title2\">{{infra?.detaulTitle}}</span>\n </div>\n <div class=\"infra-description padding-top-s\">\n {{infra?.description}}\n </div>\n </div>\n </div>\n <div class=\"col-span-12 md:col-span-8\">\n <sb-uic-data-points [objectData]=\"infra\" [layoutType]=\"'gridLayout'\"></sb-uic-data-points>\n </div>\n </div>\n </div>\n </div>\n <div class=\"infra-background slider-background\" [style.background]=\"infra?.background\">\n </div>\n <div class=\"slider-background1 mb-8\">\n <div class=\"container-balanced w-full slider-background-2\">\n <div class=\"info-slider\">\n <sb-uic-sliders [widgetData]=\"infra?.sliderData?.sliders\" [styleData]=\"infra?.sliderData?.styleData\"></sb-uic-sliders>\n </div>\n </div>\n </div>\n</ng-template>\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\">\n <div class=\"w-full container-balanced\">\n <div class=\"pl-4 pr-4 md:pl-0 md:pr-0\">\n <sb-uic-competency-passbook\n (emptyResponse)=\"hideCompetency($event, competency)\"\n (temeletryResponse)=\"raiseCompetencyTelemetry($event)\"\n [objectData]=\"competency\"\n [providerId]=\"providerId\">\n </sb-uic-competency-passbook>\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\n<ng-template #trainingCalendar let-trainingCalendar=\"trainingCalendar\">\n <div class=\"hidden md:block\">\n <div class=\"col-span-12 px-8 py-8\" [style.background]=\"trainingCalendar?.background\">\n <div class=\"container-balanced flex flex-col\">\n <div class=\"col-span-12 mat-subheading-1 margin-remove\">{{trainingCalendar?.title}}: {{currentMonthAndYear}}</div>\n <sb-uic-calender\n [objectData]=\"trainingCalendar\"\n [fetchDataFromApi]=\"true\"\n [layoutType]=\"'grid'\"\n [defaultDays]=\"trainingCalendar?.defaultDays\"\n [providerId]=\"providerId\">\n </sb-uic-calender>\n </div>\n <div class=\"flex item-center justify-center\">\n <button mat-button type=\"button\"\n (click)=\"raiseTelemetry(trainingCalendar?.contentButton?.title)\"\n [routerLink]=\"[trainingCalendar?.contentButton?.redirectUrl, providerName, providerId, 'training-calendar']\"\n class=\"view-btn margin-left-xs margin-right-xs small-button blue-border flex-auto-display\">\n <span class=\"mat-heading-1 bold ws-mat-default-text\" i18n>\n {{trainingCalendar?.contentButton?.title}}\n </span>\n </button>\n </div>\n </div>\n </div>\n <div class=\"block md:hidden\">\n <div class=\"col-span-12 px-5 py-3 mob-header\">{{trainingCalendar?.title}}: {{currentMonthAndYear}}</div>\n <div class=\"col-span-12\">\n <sb-uic-calender\n [objectData]=\"trainingCalendar\"\n [fetchDataFromApi]=\"true\"\n [layoutType]=\"'row'\"\n [defaultDays]=\"trainingCalendar?.defaultDays\"\n [providerId]=\"providerId\">\n </sb-uic-calender>\n </div>\n <div class=\"col-span-12 flex item-center justify-center\">\n <button mat-button type=\"button\"\n (click)=\"raiseTelemetry(trainingCalendar?.contentButton?.title)\"\n [routerLink]=\"[trainingCalendar?.contentButton?.redirectUrl, providerName, providerId, 'training-calendar']\"\n class=\"view-btn margin-left-xs margin-right-xs small-button blue-border flex-auto-display\">\n <span class=\"mat-heading-1 bold ws-mat-default-text\" i18n>\n {{trainingCalendar?.contentButton?.title}}\n </span>\n </button>\n </div>\n </div>\n</ng-template>\n<ng-template #learnerReviewBlock let-data=\"data\">\n <div class=\"contributors-background px-5 py-5\" [style.background]=\"data?.background\" *ngIf=\"!data?.hideSection\">\n <div class=\"container\">\n <div class=\"grid grid-cols-12 gap-4 padding-top-l mb-6\">\n <div class=\"col-span-12 md:col-span-4 contributor-desc\">\n <div class=\"infra-box-review flex flex-col\">\n <div class=\"learner-title hidden md:block\">\n {{data?.detaulTitle}}\n </div>\n <div class=\"infra-title2 hidden md:block\">\n {{data?.myTitle}}\n </div>\n <div class=\"block md:hidden\">\n <span class=\"learner-title\">{{data?.detaulTitle}}</span> <span class=\"infra-title2\"> {{data?.myTitle}}</span>\n </div> \n </div> \n </div>\n <div class=\"col-span-12 md:col-span-8\">\n <sb-uic-user-content-rating (emptyResponse)=\"hideLearnerReview($event, data)\" [formData]=\"data\" [providerId]=\"providerId\"></sb-uic-user-content-rating>\n </div>\n </div>\n </div>\n </div>\n</ng-template>\n",
17622
+ styles: [".container-balanced{max-width:1202px;margin-left:auto!important;margin-right:auto!important}.container{max-width:1200px}.section-divider{border-bottom:1px solid rgba(0,0,0,.16)}.banner-container{align-items:center;background:#eee;padding:16px;gap:2.5rem;justify-content:center}.logo-box{vertical-align:middle;max-width:250px;background:#f5fdf1;padding:8px;border:1px solid rgba(0,0,0,.5)}.title-section{position:relative;display:flex;justify-content:center;background-color:#fff}.logo-box-container{width:180px;position:relative}@media only screen and (max-width:599px){.logo-box-container{width:112px;height:72px}}.view-btn{width:160px;background:#fff;padding:0 16px;border-radius:49px;border:1px solid #1b4ca9;font-weight:700!important;font-size:14px;margin-top:4px;margin-bottom:4px;line-height:36px}.logo-box-rounded{height:180px;width:180px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px 0 rgba(0,0,0,.06)}.logo-box-rounded .logo-img{max-width:122px}@media only screen and (max-width:599px){.view-btn{margin-top:12px;margin-bottom:16px}.logo-box-rounded{width:112px;height:112px}.logo-box-rounded .logo-img{max-width:84px}}.logo-box-rounded.top{position:absolute;top:-110px}.slider-box{max-width:30%}.stats-container{justify-content:space-around;display:flex;flex-wrap:wrap}.stats-item{display:flex;align-items:center;flex-wrap:nowrap;padding:8px 16px;margin-bottom:16px}.banner-metrics{background:linear-gradient(180deg,#f9cb97 -107.59%,#ef951e 110.74%)}.infra-sec{padding:25px 0}.infra-sec-desc{padding-top:32px}.contributors-background,.infra-background{align-items:center;justify-content:center;display:flex}.contributor-desc{align-items:center;display:inline-flex;margin-top:-24px}.infra-box{width:256px}.infra-box-review{width:100%}.infra-title-v2{font-family:Montserrat;font-size:24px;font-weight:600;line-height:29.26px;text-align:left;color:#fff}.infra-title2-v2{font-family:Montserrat;font-size:24px;font-weight:600;line-height:29.26px;text-align:left;color:#ef951e}.infra-title{font-family:Montserrat;font-size:24px;font-weight:600;line-height:29.26px;text-align:left;color:#fff}.infra-title2{font-family:Montserrat;font-size:24px;font-weight:600;line-height:29.26px;text-align:left;color:#ef951e}.infra-description{font-family:Lato;font-size:14px;font-weight:400;line-height:16.8px;text-align:left;color:#fff;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical}.overlay{position:absolute;top:-20px}.slider-background{height:160px}.slider-background1{height:195px}.slider-background-2{position:relative}.info-slider{position:absolute;top:-180px;padding:25px}.sticky-navigator{padding:15px 5px;background-color:#fdead5;align-items:center;overflow:auto;position:fixed;left:0;bottom:0;width:100%;z-index:1002;justify-content:center}.nav-button{padding:12px 16px;border-radius:40px;border:1px solid #000;text-align:center;font-family:Lato;font-size:14px;font-weight:700;line-height:16.8px;cursor:pointer;min-width:140px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nav-up-arrow{height:28px}.img-left{left:0}.img-right{right:0}.learner-title{font-family:Montserrat;font-size:24px;font-weight:600;line-height:29.26px;text-align:left;color:#000}@media screen and (max-width:1201px){.img-left,.img-right{display:none}}@media screen and (max-width:768px){.infra-sec{padding:0}.infra-box,.infra-box-review{width:99%;height:auto}.infra-sec-desc{padding-top:0}.mob-container{background-image:url(https://portal.karmayogiqa.nic.in/content-store/orgStore/0135071359030722569/1720693634596_MDOChannel_RightGraphic%202.svg);background-position:bottom 0 right 0;background-repeat:no-repeat}.infra-title,.infra-title-v2,.infra-title2,.infra-title2-v2{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:left}.slider-background,.slider-background1{height:150px}.info-slider{position:absolute;top:-155px}.sticky-navigator{align-items:center;justify-content:left;bottom:63px}.logo-box-rounded.top{position:absolute;top:-50px}.learner-title{font-size:16px}}.competencies-backgroud{background-color:#1b2133}.txt-ellipsis-2{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.comp-back-img{bottom:0;left:0;right:0;margin-left:auto;margin-right:auto;width:50%;filter:brightness(100)}.mob-header{font-family:Lato;font-size:16px;font-weight:600}"]
16218
17623
  }] }
16219
17624
  ];
16220
17625
  /** @nocollapse */
16221
- SlidersNgContentLibComponent.ctorParameters = function () { return [
16222
- { type: utilsV2.EventService },
16223
- { type: utilsV2.ValueService }
17626
+ ProvidersV2Component.ctorParameters = function () { return [
17627
+ { type: router.ActivatedRoute },
17628
+ { type: router.Router },
17629
+ { type: common.DatePipe },
17630
+ { type: utilsV2.EventService }
16224
17631
  ]; };
16225
- SlidersNgContentLibComponent.propDecorators = {
16226
- widgetData: [{ type: core.Input }],
16227
- styleData: [{ type: core.Input }],
16228
- title: [{ type: core.Input }],
16229
- loadNgContentData: [{ type: core.Input }],
16230
- autoScroll: [{ type: core.Input }],
16231
- currentIndexValue: [{ type: core.Output }],
16232
- id: [{ type: core.HostBinding, args: ['id',] }],
16233
- currentIndex: [{ type: core.Input }]
17632
+ ProvidersV2Component.propDecorators = {
17633
+ sectionList: [{ type: core.Input }]
16234
17634
  };
16235
- return SlidersNgContentLibComponent;
16236
- }(resolverV2.WidgetBaseComponent));
17635
+ return ProvidersV2Component;
17636
+ }());
16237
17637
  if (false) {
16238
17638
  /** @type {?} */
16239
- SlidersNgContentLibComponent.prototype.widgetData;
17639
+ ProvidersV2Component.prototype.sectionList;
16240
17640
  /** @type {?} */
16241
- SlidersNgContentLibComponent.prototype.styleData;
17641
+ ProvidersV2Component.prototype.providerName;
16242
17642
  /** @type {?} */
16243
- SlidersNgContentLibComponent.prototype.title;
17643
+ ProvidersV2Component.prototype.providerId;
16244
17644
  /** @type {?} */
16245
- SlidersNgContentLibComponent.prototype.loadNgContentData;
17645
+ ProvidersV2Component.prototype.navList;
16246
17646
  /** @type {?} */
16247
- SlidersNgContentLibComponent.prototype.autoScroll;
17647
+ ProvidersV2Component.prototype.hideCompetencyBlock;
16248
17648
  /** @type {?} */
16249
- SlidersNgContentLibComponent.prototype.currentIndexValue;
17649
+ ProvidersV2Component.prototype.currentMonthAndYear;
16250
17650
  /** @type {?} */
16251
- SlidersNgContentLibComponent.prototype.id;
17651
+ ProvidersV2Component.prototype.titles;
17652
+ /** @type {?} */
17653
+ ProvidersV2Component.prototype.descriptionMaxLength;
17654
+ /** @type {?} */
17655
+ ProvidersV2Component.prototype.isTelemetryRaised;
16252
17656
  /**
16253
17657
  * @type {?}
16254
17658
  * @private
16255
17659
  */
16256
- SlidersNgContentLibComponent.prototype.defaultMenuSubscribe;
16257
- /** @type {?} */
16258
- SlidersNgContentLibComponent.prototype.isLtMedium$;
16259
- /** @type {?} */
16260
- SlidersNgContentLibComponent.prototype.currentIndex;
17660
+ ProvidersV2Component.prototype.route;
16261
17661
  /** @type {?} */
16262
- SlidersNgContentLibComponent.prototype.slideInterval;
16263
- /** @type {?} */
16264
- SlidersNgContentLibComponent.prototype.isMobile;
17662
+ ProvidersV2Component.prototype.router;
16265
17663
  /**
16266
17664
  * @type {?}
16267
17665
  * @private
16268
17666
  */
16269
- SlidersNgContentLibComponent.prototype.events;
17667
+ ProvidersV2Component.prototype.datePipe;
16270
17668
  /**
16271
17669
  * @type {?}
16272
17670
  * @private
16273
17671
  */
16274
- SlidersNgContentLibComponent.prototype.valueSvc;
17672
+ ProvidersV2Component.prototype.events;
16275
17673
  }
16276
17674
 
16277
17675
  /**
16278
17676
  * @fileoverview added by tsickle
16279
17677
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
16280
17678
  */
16281
- /* tslint:enable */
16282
- var /* tslint:enable */
16283
- MyHammerConfig$1 = /** @class */ (function (_super) {
16284
- __extends(MyHammerConfig, _super);
16285
- function MyHammerConfig() {
16286
- return _super !== null && _super.apply(this, arguments) || this;
16287
- }
16288
- /**
16289
- * @param {?} element
16290
- * @return {?}
16291
- */
16292
- MyHammerConfig.prototype.buildHammer = /**
16293
- * @param {?} element
16294
- * @return {?}
16295
- */
16296
- function (element) {
16297
- /** @type {?} */
16298
- var mc = new Hammer(element, {
16299
- touchAction: 'pan-y',
16300
- });
16301
- return mc;
16302
- };
16303
- return MyHammerConfig;
16304
- }(platformBrowser.HammerGestureConfig));
16305
- // tslint:disable-next-line: max-classes-per-file
16306
- var SlidersNgContentLibModule = /** @class */ (function () {
16307
- function SlidersNgContentLibModule() {
16308
- }
16309
- SlidersNgContentLibModule.decorators = [
16310
- { type: core.NgModule, args: [{
16311
- declarations: [SlidersNgContentLibComponent],
16312
- imports: [
16313
- common.CommonModule,
16314
- router.RouterModule,
16315
- NavigationModule,
16316
- ImageResponsiveModule,
16317
- ],
16318
- exports: [SlidersNgContentLibComponent],
16319
- entryComponents: [SlidersNgContentLibComponent],
16320
- providers: [
16321
- {
16322
- provide: platformBrowser.HAMMER_GESTURE_CONFIG,
16323
- useClass: MyHammerConfig$1,
16324
- },
16325
- ],
16326
- },] }
16327
- ];
16328
- return SlidersNgContentLibModule;
16329
- }());
16330
-
16331
- /**
16332
- * @fileoverview added by tsickle
16333
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
16334
- */
16335
- var ScrollableItemModule = /** @class */ (function () {
16336
- function ScrollableItemModule() {
16337
- }
16338
- ScrollableItemModule.decorators = [
16339
- { type: core.NgModule, args: [{
16340
- declarations: [ScrollableItemDirective],
16341
- imports: [
16342
- common.CommonModule,
16343
- ],
16344
- exports: [ScrollableItemDirective],
16345
- },] }
16346
- ];
16347
- return ScrollableItemModule;
16348
- }());
16349
-
16350
- /**
16351
- * @fileoverview added by tsickle
16352
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
16353
- */
16354
- var UserContentRatingLibModule = /** @class */ (function () {
16355
- function UserContentRatingLibModule() {
17679
+ var ɵ0$8 = HttpLoaderFactory;
17680
+ var ProvidersModule = /** @class */ (function () {
17681
+ function ProvidersModule() {
16356
17682
  }
16357
- UserContentRatingLibModule.decorators = [
17683
+ ProvidersModule.decorators = [
16358
17684
  { type: core.NgModule, args: [{
16359
- declarations: [UserContentRatingLibComponent],
17685
+ declarations: [ProvidersV2Component],
16360
17686
  imports: [
16361
17687
  common.CommonModule,
16362
17688
  material.MatIconModule,
17689
+ router.RouterModule,
16363
17690
  material.MatChipsModule,
16364
17691
  SkeletonLoaderLibModule,
16365
- SlidersLibModule,
17692
+ CalenderModule,
16366
17693
  CardsModule,
16367
- AvatarPhotoLibModule,
16368
- SlidersNgContentLibModule,
16369
- ScrollableItemModule
17694
+ CommonStripModule,
17695
+ CompetencyPassbookModule,
17696
+ UserContentRatingLibModule,
17697
+ ContentStripWithTabsLibModule,
17698
+ DataPointsModule,
17699
+ SlidersLibModule,
17700
+ material.MatTabsModule,
17701
+ core$1.TranslateModule.forRoot({
17702
+ loader: {
17703
+ provide: core$1.TranslateLoader,
17704
+ useFactory: ɵ0$8,
17705
+ deps: [http.HttpClient],
17706
+ },
17707
+ }),
17708
+ ],
17709
+ exports: [ProvidersV2Component],
17710
+ providers: [
17711
+ CommonMethodsService
16370
17712
  ],
16371
- exports: [UserContentRatingLibComponent],
16372
- providers: [RatingService, UserContentRatingLibService],
16373
17713
  schemas: [core.CUSTOM_ELEMENTS_SCHEMA]
16374
17714
  },] }
16375
17715
  ];
16376
- return UserContentRatingLibModule;
17716
+ return ProvidersModule;
16377
17717
  }());
16378
17718
 
16379
17719
  exports.AnnouncementsModule = AnnouncementsModule;
16380
17720
  exports.CalenderModule = CalenderModule;
16381
17721
  exports.CardsModule = CardsModule;
17722
+ exports.CbpPlanModule = CbpPlanModule;
16382
17723
  exports.CommonMethodsService = CommonMethodsService;
16383
17724
  exports.CommonStripModule = CommonStripModule;
16384
17725
  exports.CompetencyPassbookMdoModule = CompetencyPassbookMdoModule;
@@ -16392,55 +17733,63 @@
16392
17733
  exports.DataPointsModule = DataPointsModule;
16393
17734
  exports.HttpLoaderFactory = HttpLoaderFactory;
16394
17735
  exports.HttpLoaderFactory1 = HttpLoaderFactory1;
17736
+ exports.MDOChannelModule = MDOChannelModule;
16395
17737
  exports.MyHammerConfig = MyHammerConfig;
17738
+ exports.ProvidersModule = ProvidersModule;
16396
17739
  exports.ROOT_WIDGET_CONFIG = ROOT_WIDGET_CONFIG;
16397
17740
  exports.SlidersLibModule = SlidersLibModule;
17741
+ exports.TopLearnersModule = TopLearnersModule;
16398
17742
  exports.UserContentRatingLibModule = UserContentRatingLibModule;
16399
17743
  exports.WIDGET_REGISTERED_LIB_MODULES = WIDGET_REGISTERED_LIB_MODULES;
16400
17744
  exports.WIDGET_REGISTRATION_LIB_CONFIG = WIDGET_REGISTRATION_LIB_CONFIG;
16401
17745
  exports.WidgetContentService = WidgetContentService;
16402
17746
  exports.ɵa = ContentStripWithTabsLibComponent;
16403
17747
  exports.ɵb = WidgetUserService;
16404
- exports.ɵba = CardWideV2Component;
16405
- exports.ɵbb = CardKarmaProgramsComponent;
16406
- exports.ɵbc = CardKarmaProgramsV2Component;
16407
- exports.ɵbd = ProviderCardComponent;
16408
- exports.ɵbe = CardPortraitExtComponent;
16409
- exports.ɵbf = CardAssessmentComponent;
16410
- exports.ɵbg = CardProgressPortraitLibComponent;
16411
- exports.ɵbh = CertificateService;
16412
- exports.ɵbi = CardMdoChannelV1Component;
16413
- exports.ɵbj = PipePublicURLModule;
16414
- exports.ɵbk = PipePublicURL;
16415
- exports.ɵbl = ObjectToArrayPipeModule;
16416
- exports.ɵbm = ObjectToArrayPipe;
16417
- exports.ɵbn = DisplayContentTypeLibModule;
16418
- exports.ɵbo = DisplayContentTypeLibComponent;
16419
- exports.ɵbp = DefaultThumbnailModule;
16420
- exports.ɵbq = DefaultThumbnailDirective;
16421
- exports.ɵbr = PipeDurationTransformModule;
16422
- exports.ɵbs = PipeDurationTransformPipe;
16423
- exports.ɵbt = ContentProgressComponent;
16424
- exports.ɵbu = DialogComponentsModule;
16425
- exports.ɵbv = CertificateDialogComponent;
16426
- exports.ɵbw = AvatarPhotoLibModule;
16427
- exports.ɵbx = AvatarPhotoLibComponent;
16428
- exports.ɵby = ContentStripWithTabsPillsComponent;
16429
- exports.ɵbz = CompetencyPassbookComponent;
17748
+ exports.ɵba = CardResourceComponent;
17749
+ exports.ɵbb = CardsComponent;
17750
+ exports.ɵbc = CardPortraitComponent;
17751
+ exports.ɵbd = CardUserComponent;
17752
+ exports.ɵbe = CardLandscapeComponent;
17753
+ exports.ɵbf = CardWideComponent;
17754
+ exports.ɵbg = CardMDOChannelComponent;
17755
+ exports.ɵbh = CardWideV2Component;
17756
+ exports.ɵbi = CardKarmaProgramsComponent;
17757
+ exports.ɵbj = CardKarmaProgramsV2Component;
17758
+ exports.ɵbk = ProviderCardComponent;
17759
+ exports.ɵbl = CardPortraitExtComponent;
17760
+ exports.ɵbm = CardAssessmentComponent;
17761
+ exports.ɵbn = CardProgressPortraitLibComponent;
17762
+ exports.ɵbo = CertificateService;
17763
+ exports.ɵbp = CardMdoChannelV1Component;
17764
+ exports.ɵbq = PipePublicURLModule;
17765
+ exports.ɵbr = PipePublicURL;
17766
+ exports.ɵbs = ObjectToArrayPipeModule;
17767
+ exports.ɵbt = ObjectToArrayPipe;
17768
+ exports.ɵbu = DisplayContentTypeLibModule;
17769
+ exports.ɵbv = DisplayContentTypeLibComponent;
17770
+ exports.ɵbw = DefaultThumbnailModule;
17771
+ exports.ɵbx = DefaultThumbnailDirective;
17772
+ exports.ɵby = PipeDurationTransformModule;
17773
+ exports.ɵbz = PipeDurationTransformPipe;
16430
17774
  exports.ɵc = MultilingualTranslationsService;
16431
- exports.ɵca = CompetencyPassbookService;
16432
- exports.ɵcb = PillsModule;
16433
- exports.ɵcc = PillsComponent;
16434
- exports.ɵcd = CompetencyPassbookMdoComponent;
16435
- exports.ɵce = CompetencyPassbookMdoService;
16436
- exports.ɵcf = UserContentRatingLibComponent;
16437
- exports.ɵcg = ScrollableItemDirective;
16438
- exports.ɵch = RatingService;
16439
- exports.ɵci = UserContentRatingLibService;
16440
- exports.ɵcj = MyHammerConfig$1;
16441
- exports.ɵck = SlidersNgContentLibModule;
16442
- exports.ɵcl = SlidersNgContentLibComponent;
16443
- exports.ɵcm = ScrollableItemModule;
17775
+ exports.ɵca = ContentProgressComponent;
17776
+ exports.ɵcb = DialogComponentsModule;
17777
+ exports.ɵcc = CertificateDialogComponent;
17778
+ exports.ɵcd = AvatarPhotoLibModule;
17779
+ exports.ɵce = AvatarPhotoLibComponent;
17780
+ exports.ɵcf = ContentStripWithTabsPillsComponent;
17781
+ exports.ɵcg = CompetencyPassbookComponent;
17782
+ exports.ɵch = CompetencyPassbookService;
17783
+ exports.ɵci = PillsModule;
17784
+ exports.ɵcj = PillsComponent;
17785
+ exports.ɵck = CompetencyPassbookMdoComponent;
17786
+ exports.ɵcl = CompetencyPassbookMdoService;
17787
+ exports.ɵcm = UserContentRatingLibComponent;
17788
+ exports.ɵcn = RatingService;
17789
+ exports.ɵco = UserContentRatingLibService;
17790
+ exports.ɵcp = MdoChannelV1Component;
17791
+ exports.ɵcq = MdoChannelV2Component;
17792
+ exports.ɵcr = ProvidersV2Component;
16444
17793
  exports.ɵd = ConfigurationsService;
16445
17794
  exports.ɵe = HorizontalScrollerV2Module;
16446
17795
  exports.ɵf = HorizontalScrollerV2Component;
@@ -16457,13 +17806,13 @@
16457
17806
  exports.ɵq = CalenderDayComponent;
16458
17807
  exports.ɵr = CommonStripComponent;
16459
17808
  exports.ɵs = AnnouncementsComponent;
16460
- exports.ɵt = CardResourceComponent;
16461
- exports.ɵu = CardsComponent;
16462
- exports.ɵv = CardPortraitComponent;
16463
- exports.ɵw = CardUserComponent;
16464
- exports.ɵx = CardLandscapeComponent;
16465
- exports.ɵy = CardWideComponent;
16466
- exports.ɵz = CardMDOChannelComponent;
17809
+ exports.ɵt = TopLearnersComponent;
17810
+ exports.ɵu = CbpPlanComponent;
17811
+ exports.ɵv = ScrollableItemDirective;
17812
+ exports.ɵw = ScrollableItemModule;
17813
+ exports.ɵx = MyHammerConfig$1;
17814
+ exports.ɵy = SlidersNgContentLibModule;
17815
+ exports.ɵz = SlidersNgContentLibComponent;
16467
17816
 
16468
17817
  Object.defineProperty(exports, '__esModule', { value: true });
16469
17818