@sunbird-cb/consumption 0.0.43 → 0.0.45

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 (60) hide show
  1. package/bundles/sunbird-cb-consumption.umd.js +1391 -135
  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/cards/card-assessment/card-assessment/card-assessment.component.js +175 -0
  6. package/esm2015/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.js +261 -0
  7. package/esm2015/lib/_common/cards/cards.component.js +24 -25
  8. package/esm2015/lib/_common/cards/cards.module.js +30 -3
  9. package/esm2015/lib/_common/cards/provider-card/provider-card.component.js +168 -0
  10. package/esm2015/lib/_common/content-progress/content-progress.component.js +89 -0
  11. package/esm2015/lib/_common/content-progress/content-progress.module.js +22 -0
  12. package/esm2015/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.js +43 -2
  13. package/esm2015/lib/_common/dialog-components/certificate-dialog/certificate-dialog.component.js +225 -0
  14. package/esm2015/lib/_common/dialog-components/dialog-components.module.js +43 -0
  15. package/esm2015/lib/_common/horizontal-scroller-v2/horizontal-scroller-v2.component.js +2 -4
  16. package/esm2015/lib/_pipes/object-to-array/object-to-array.pipe.js +28 -0
  17. package/esm2015/lib/_pipes/object-to-array/object-to-array.pipe.module.js +19 -0
  18. package/esm2015/lib/_services/certificate.service.js +63 -0
  19. package/esm2015/lib/_services/multilingual-translations.service.js +27 -24
  20. package/esm2015/lib/consumption.module.js +1 -1
  21. package/esm2015/public-api.js +2 -1
  22. package/esm2015/sunbird-cb-consumption.js +36 -27
  23. package/esm5/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.js +202 -0
  24. package/esm5/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.js +278 -0
  25. package/esm5/lib/_common/cards/cards.component.js +28 -17
  26. package/esm5/lib/_common/cards/cards.module.js +30 -3
  27. package/esm5/lib/_common/cards/provider-card/provider-card.component.js +177 -0
  28. package/esm5/lib/_common/content-progress/content-progress.component.js +94 -0
  29. package/esm5/lib/_common/content-progress/content-progress.module.js +26 -0
  30. package/esm5/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.js +58 -8
  31. package/esm5/lib/_common/dialog-components/certificate-dialog/certificate-dialog.component.js +248 -0
  32. package/esm5/lib/_common/dialog-components/dialog-components.module.js +47 -0
  33. package/esm5/lib/_common/horizontal-scroller-v2/horizontal-scroller-v2.component.js +2 -4
  34. package/esm5/lib/_pipes/object-to-array/object-to-array.pipe.js +57 -0
  35. package/esm5/lib/_pipes/object-to-array/object-to-array.pipe.module.js +23 -0
  36. package/esm5/lib/_services/certificate.service.js +70 -0
  37. package/esm5/lib/_services/multilingual-translations.service.js +27 -24
  38. package/esm5/lib/consumption.module.js +1 -1
  39. package/esm5/public-api.js +2 -1
  40. package/esm5/sunbird-cb-consumption.js +36 -27
  41. package/fesm2015/sunbird-cb-consumption.js +1229 -122
  42. package/fesm2015/sunbird-cb-consumption.js.map +1 -1
  43. package/fesm5/sunbird-cb-consumption.js +1356 -109
  44. package/fesm5/sunbird-cb-consumption.js.map +1 -1
  45. package/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.d.ts +28 -0
  46. package/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.d.ts +41 -0
  47. package/lib/_common/cards/cards.component.d.ts +5 -3
  48. package/lib/_common/cards/provider-card/provider-card.component.d.ts +12 -0
  49. package/lib/_common/content-progress/content-progress.component.d.ts +13 -0
  50. package/lib/_common/content-progress/content-progress.module.d.ts +2 -0
  51. package/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.d.ts +2 -0
  52. package/lib/_common/dialog-components/certificate-dialog/certificate-dialog.component.d.ts +22 -0
  53. package/lib/_common/dialog-components/dialog-components.module.d.ts +2 -0
  54. package/lib/_pipes/object-to-array/object-to-array.pipe.d.ts +4 -0
  55. package/lib/_pipes/object-to-array/object-to-array.pipe.module.d.ts +2 -0
  56. package/lib/_services/certificate.service.d.ts +8 -0
  57. package/package.json +1 -1
  58. package/public-api.d.ts +1 -0
  59. package/sunbird-cb-consumption.d.ts +34 -25
  60. package/sunbird-cb-consumption.metadata.json +1 -1
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
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')) :
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'], factory) :
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));
5
- }(this, (function (exports, core, common, router, rxjs, operators, utilsV2, material, resolverV2, http, lodash, moment$1, core$1, dayjs_, httpLoader, layout, platformBrowser, Hammer, forms) { 'use strict';
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
+ 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
+ (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';
6
6
 
7
7
  Hammer = Hammer && Hammer.hasOwnProperty('default') ? Hammer['default'] : Hammer;
8
8
 
@@ -557,15 +557,13 @@
557
557
  /** @type {?} */
558
558
  var totalCardsLength = cardWidth * this.widgetsLength;
559
559
  if (totalCardsLength > scrollerWidth) {
560
- arrLength_1 = (scrollerWidth / cardWidth);
560
+ arrLength_1 = Math.round(scrollerWidth / cardWidth);
561
561
  this.defaultMaxWidgets = this.defaultMaxWidgets ? this.widgetsLength < this.defaultMaxWidgets ?
562
562
  this.widgetsLength : this.defaultMaxWidgets : this.defaultMaxWidgets;
563
563
  arrLength_1 = this.defaultMaxWidgets / arrLength_1;
564
564
  for (var i = 0; i < arrLength_1; i += 1) {
565
565
  this.bottomDotsArray.push(i);
566
566
  }
567
- // console.log('this.cardSubType', this.cardSubType, arrLength, this.widgetsLength ,
568
- // this.defaultMaxWidgets, scrollerWidth, this.bottomDotsArray)
569
567
  }
570
568
  }
571
569
  }
@@ -3122,33 +3120,36 @@
3122
3120
  * @return {?}
3123
3121
  */
3124
3122
  function (label, type, subtype) {
3125
- /** @type {?} */
3126
- var nlabel = label;
3127
- nlabel = nlabel.toLowerCase();
3128
- /** @type {?} */
3129
- var sl = nlabel.split(' ');
3130
- sl.forEach((/**
3131
- * @param {?} w
3132
- * @param {?} index
3133
- * @return {?}
3134
- */
3135
- function (w, index) {
3136
- if (index !== 0) {
3137
- sl[index] = w[0].toUpperCase() + w.slice(1);
3123
+ if (label) {
3124
+ /** @type {?} */
3125
+ var nlabel = label;
3126
+ nlabel = nlabel && nlabel.toLowerCase();
3127
+ /** @type {?} */
3128
+ var sl_1 = nlabel.split(' ');
3129
+ sl_1.forEach((/**
3130
+ * @param {?} w
3131
+ * @param {?} index
3132
+ * @return {?}
3133
+ */
3134
+ function (w, index) {
3135
+ if (index !== 0) {
3136
+ sl_1[index] = w[0].toUpperCase() + w.slice(1);
3137
+ }
3138
+ }));
3139
+ nlabel = sl_1.join('');
3140
+ nlabel = nlabel.replace(/\s/g, '');
3141
+ if (subtype) {
3142
+ // tslint:disable-next-line: prefer-template
3143
+ /** @type {?} */
3144
+ var translationKey = type + '.' + nlabel + subtype;
3145
+ return this.translate.instant(translationKey);
3138
3146
  }
3139
- }));
3140
- nlabel = sl.join('');
3141
- nlabel = nlabel.replace(/\s/g, '');
3142
- if (subtype) {
3143
3147
  // tslint:disable-next-line: prefer-template
3144
3148
  /** @type {?} */
3145
- var translationKey = type + '.' + nlabel + subtype;
3146
- return this.translate.instant(translationKey);
3149
+ var translationKeyn = type + '.' + nlabel;
3150
+ return this.translate.instant(translationKeyn);
3147
3151
  }
3148
- // tslint:disable-next-line: prefer-template
3149
- /** @type {?} */
3150
- var translationKeyn = type + '.' + nlabel;
3151
- return this.translate.instant(translationKeyn);
3152
+ return label;
3152
3153
  };
3153
3154
  /**
3154
3155
  * @param {?} label
@@ -4591,7 +4592,8 @@
4591
4592
  function (strip, calculateParentStatus) {
4592
4593
  if (calculateParentStatus === void 0) { calculateParentStatus = true; }
4593
4594
  return __awaiter(this, void 0, void 0, function () {
4594
- var originalFilters, firstTab, allTabs, currentTabFromMap, response, error_1;
4595
+ var originalFilters, firstTab, allTabs, currentTabFromMap, response_1, error_1;
4596
+ var _this = this;
4595
4597
  return __generator(this, function (_a) {
4596
4598
  switch (_a.label) {
4597
4599
  case 0:
@@ -4629,15 +4631,26 @@
4629
4631
  _a.trys.push([1, 3, , 4]);
4630
4632
  return [4 /*yield*/, this.searchV6Request(strip, strip.request, calculateParentStatus)];
4631
4633
  case 2:
4632
- response = _a.sent();
4634
+ response_1 = _a.sent();
4633
4635
  // console.log('calling after - response, ', response)
4634
- if (response && response.results) {
4636
+ if (response_1 && response_1.results) {
4635
4637
  // console.log('calling after-- ')
4636
- if (response.results.result.content) {
4637
- this.processStrip(strip, this.transformContentsToWidgets(response.results.result.content, strip), 'done', calculateParentStatus, response.viewMoreUrl);
4638
+ if (response_1.results.result.content) {
4639
+ if (strip.key === 'scheduledAssessment') {
4640
+ this.enrollInterval = setInterval((/**
4641
+ * @return {?}
4642
+ */
4643
+ function () {
4644
+ _this.checkInvitOnlyAssessments(response_1.results.result.content, strip, calculateParentStatus, response_1.viewMoreUrl);
4645
+ // tslint:disable-next-line
4646
+ }), 1000);
4647
+ }
4648
+ else {
4649
+ this.processStrip(strip, this.transformContentsToWidgets(response_1.results.result.content, strip), 'done', calculateParentStatus, response_1.viewMoreUrl);
4650
+ }
4638
4651
  }
4639
- else if (response.results.result.Event) {
4640
- this.processStrip(strip, this.transformEventsToWidgets(response.results.result.Event, strip), 'done', calculateParentStatus, response.viewMoreUrl);
4652
+ else if (response_1.results.result.Event) {
4653
+ this.processStrip(strip, this.transformEventsToWidgets(response_1.results.result.Event, strip), 'done', calculateParentStatus, response_1.viewMoreUrl);
4641
4654
  }
4642
4655
  else {
4643
4656
  this.processStrip(strip, [], 'error', calculateParentStatus, null);
@@ -4655,6 +4668,41 @@
4655
4668
  });
4656
4669
  });
4657
4670
  };
4671
+ /**
4672
+ * @param {?} content
4673
+ * @param {?} strip
4674
+ * @param {?} calculateParentStatus
4675
+ * @param {?} viewMoreUrl
4676
+ * @return {?}
4677
+ */
4678
+ ContentStripWithTabsLibComponent.prototype.checkInvitOnlyAssessments = /**
4679
+ * @param {?} content
4680
+ * @param {?} strip
4681
+ * @param {?} calculateParentStatus
4682
+ * @param {?} viewMoreUrl
4683
+ * @return {?}
4684
+ */
4685
+ function (content, strip, calculateParentStatus, viewMoreUrl) {
4686
+ var _this = this;
4687
+ if (localStorage.getItem('enrollmentMapData')) {
4688
+ this.enrollmentMapData = JSON.parse(localStorage.getItem('enrollmentMapData') || '{}');
4689
+ /** @type {?} */
4690
+ var filteredArray_1 = [];
4691
+ content.forEach((/**
4692
+ * @param {?} data
4693
+ * @return {?}
4694
+ */
4695
+ function (data) {
4696
+ if (_this.enrollmentMapData[data.identifier]) {
4697
+ data['batch'] = _this.enrollmentMapData[data.identifier].batch;
4698
+ data['completionPercentage'] = _this.enrollmentMapData[data.identifier].completionPercentage;
4699
+ filteredArray_1.push(data);
4700
+ }
4701
+ }));
4702
+ this.processStrip(strip, this.transformContentsToWidgets(filteredArray_1, strip), 'done', calculateParentStatus, viewMoreUrl);
4703
+ clearInterval(this.enrollInterval);
4704
+ }
4705
+ };
4658
4706
  /**
4659
4707
  * @param {?} strip
4660
4708
  * @param {?} request
@@ -6173,6 +6221,7 @@
6173
6221
  switch (_a.label) {
6174
6222
  case 0:
6175
6223
  if (!(strip.request && strip.request.ciosContent && Object.keys(strip.request.ciosContent).length)) return [3 /*break*/, 4];
6224
+ debugger;
6176
6225
  originalFilters = [];
6177
6226
  if (strip.request &&
6178
6227
  strip.request.ciosContent &&
@@ -6300,6 +6349,8 @@
6300
6349
  ContentStripWithTabsLibComponent.prototype.enrollInterval;
6301
6350
  /** @type {?} */
6302
6351
  ContentStripWithTabsLibComponent.prototype.todaysEvents;
6352
+ /** @type {?} */
6353
+ ContentStripWithTabsLibComponent.prototype.enrollmentMapData;
6303
6354
  /**
6304
6355
  * @type {?}
6305
6356
  * @private
@@ -8816,10 +8867,9 @@
8816
8867
  */
8817
8868
  var CardsComponent = /** @class */ (function (_super) {
8818
8869
  __extends(CardsComponent, _super);
8819
- function CardsComponent(utilitySvc, configSvc, contSvc, router) {
8870
+ function CardsComponent(utilitySvc, contSvc, router) {
8820
8871
  var _this = _super.call(this) || this;
8821
8872
  _this.utilitySvc = utilitySvc;
8822
- _this.configSvc = configSvc;
8823
8873
  _this.contSvc = contSvc;
8824
8874
  _this.router = router;
8825
8875
  _this.triggerTelemetry = new core.EventEmitter();
@@ -8840,6 +8890,13 @@
8840
8890
  function () {
8841
8891
  _this.getCbPlanData();
8842
8892
  }), 1000);
8893
+ this.enrollInterval = setInterval((/**
8894
+ * @return {?}
8895
+ */
8896
+ function () {
8897
+ _this.getEnrollmentData();
8898
+ // tslint:disable-next-line
8899
+ }), 1000);
8843
8900
  };
8844
8901
  Object.defineProperty(CardsComponent.prototype, "isLiveOrMarkForDeletion", {
8845
8902
  get: /**
@@ -8879,16 +8936,11 @@
8879
8936
  */
8880
8937
  function (content) {
8881
8938
  return __awaiter(this, void 0, void 0, function () {
8882
- var userProfile, extUrl, urlData;
8939
+ var urlData;
8883
8940
  return __generator(this, function (_a) {
8884
8941
  switch (_a.label) {
8885
8942
  case 0:
8886
- userProfile = this.configSvc.userProfile;
8887
8943
  if (!content.externalId) return [3 /*break*/, 1];
8888
- extUrl = content.redirectUrl.replace('<username>', userProfile.userId);
8889
- // const url = this.router.serializeUrl(
8890
- // this.router.createUrlTree([extUrl])
8891
- // );
8892
8944
  this.router.navigate(["app/toc/ext/" + content.contentId]);
8893
8945
  return [3 /*break*/, 3];
8894
8946
  case 1: return [4 /*yield*/, this.contSvc.getResourseLink(content)];
@@ -8929,6 +8981,18 @@
8929
8981
  clearInterval(this.cbPlanInterval);
8930
8982
  }
8931
8983
  };
8984
+ /**
8985
+ * @return {?}
8986
+ */
8987
+ CardsComponent.prototype.getEnrollmentData = /**
8988
+ * @return {?}
8989
+ */
8990
+ function () {
8991
+ if (localStorage.getItem('enrollmentMapData')) {
8992
+ this.enrollmentMapData = JSON.parse(localStorage.getItem('enrollmentMapData') || '{}');
8993
+ clearInterval(this.enrollInterval);
8994
+ }
8995
+ };
8932
8996
  /**
8933
8997
  * @param {?} data
8934
8998
  * @return {?}
@@ -8943,14 +9007,13 @@
8943
9007
  CardsComponent.decorators = [
8944
9008
  { type: core.Component, args: [{
8945
9009
  selector: 'sb-uic-cards',
8946
- 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-lib-skeleton'\" [ngTemplateOutlet]=\"cardMdoSkeleton\"></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-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-portrait-ext-lib-skeleton'\" [ngTemplateOutlet]=\"cardPortraitExtLibSkeleton\"></ng-container>\n <ng-container *ngSwitchCase=\"'card-portrait-ext-lib'\" [ngTemplateOutlet]=\"cardPortraitExtLib\"></ng-container>\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 [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel-v1>\n</ng-template>\n<ng-template #cardMdo>\n <sb-uic-card-mdo-channel [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel>\n</ng-template>\n<ng-template #cardMdoSkeleton>\n <sb-uic-card-mdo-channel [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 #cardKarmaProgramV2>\n <!-- <sb-uic-card-karma-programs-v2 [widgetData]=\"widgetData\"><sb-uic-card-karma-programs-v2> -->\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>",
9010
+ 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-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-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 [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel-v1>\n</ng-template>\n<ng-template #cardMdo>\n <sb-uic-card-mdo-channel [widgetData]=\"widgetData\"></sb-uic-card-mdo-channel>\n</ng-template>\n<ng-template #cardMdoSkeleton>\n <sb-uic-card-mdo-channel [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 ></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",
8947
9011
  styles: [""]
8948
9012
  }] }
8949
9013
  ];
8950
9014
  /** @nocollapse */
8951
9015
  CardsComponent.ctorParameters = function () { return [
8952
9016
  { type: utilsV2.UtilityService },
8953
- { type: utilsV2.ConfigurationsService },
8954
9017
  { type: WidgetContentService },
8955
9018
  { type: router.Router }
8956
9019
  ]; };
@@ -8971,16 +9034,15 @@
8971
9034
  CardsComponent.prototype.cbPlanMapData;
8972
9035
  /** @type {?} */
8973
9036
  CardsComponent.prototype.cbPlanInterval;
9037
+ /** @type {?} */
9038
+ CardsComponent.prototype.enrollInterval;
9039
+ /** @type {?} */
9040
+ CardsComponent.prototype.enrollmentMapData;
8974
9041
  /**
8975
9042
  * @type {?}
8976
9043
  * @private
8977
9044
  */
8978
9045
  CardsComponent.prototype.utilitySvc;
8979
- /**
8980
- * @type {?}
8981
- * @private
8982
- */
8983
- CardsComponent.prototype.configSvc;
8984
9046
  /**
8985
9047
  * @type {?}
8986
9048
  * @private
@@ -9249,6 +9311,80 @@
9249
9311
  return PipePublicURLModule;
9250
9312
  }());
9251
9313
 
9314
+ /**
9315
+ * @fileoverview added by tsickle
9316
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9317
+ */
9318
+ var ObjectToArrayPipe = /** @class */ (function () {
9319
+ function ObjectToArrayPipe() {
9320
+ }
9321
+ // transform(value: any, ...args: any[]): any[] {
9322
+ // console.log("function called")
9323
+ // if (!value) {
9324
+ // return [];
9325
+ // }
9326
+ // console.log(Object.keys(value).map(key => ({ key, value: value[key] })), "Object.keys(value).map(key => ({ key, value: value[key] }))==----------")
9327
+ // return Object.keys(value).map(key => ({ key, value: value[key] }));
9328
+ // }
9329
+ // transform(value: any, ...args: any[]): any[] {
9330
+ // console.log("function called")
9331
+ // if (!value) {
9332
+ // return [];
9333
+ // }
9334
+ // console.log(Object.keys(value).map(key => ({ key, value: value[key] })), "Object.keys(value).map(key => ({ key, value: value[key] }))==----------")
9335
+ // return Object.keys(value).map(key => ({ key, value: value[key] }));
9336
+ // }
9337
+ /**
9338
+ * @param {...?} args
9339
+ * @return {?}
9340
+ */
9341
+ ObjectToArrayPipe.prototype.transform =
9342
+ // transform(value: any, ...args: any[]): any[] {
9343
+ // console.log("function called")
9344
+ // if (!value) {
9345
+ // return [];
9346
+ // }
9347
+ // console.log(Object.keys(value).map(key => ({ key, value: value[key] })), "Object.keys(value).map(key => ({ key, value: value[key] }))==----------")
9348
+ // return Object.keys(value).map(key => ({ key, value: value[key] }));
9349
+ // }
9350
+ /**
9351
+ * @param {...?} args
9352
+ * @return {?}
9353
+ */
9354
+ function () {
9355
+ var args = [];
9356
+ for (var _i = 0; _i < arguments.length; _i++) {
9357
+ args[_i] = arguments[_i];
9358
+ }
9359
+ return args;
9360
+ };
9361
+ ObjectToArrayPipe.decorators = [
9362
+ { type: core.Pipe, args: [{
9363
+ name: 'objectToArray'
9364
+ },] }
9365
+ ];
9366
+ return ObjectToArrayPipe;
9367
+ }());
9368
+
9369
+ /**
9370
+ * @fileoverview added by tsickle
9371
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
9372
+ */
9373
+ var ObjectToArrayPipeModule = /** @class */ (function () {
9374
+ function ObjectToArrayPipeModule() {
9375
+ }
9376
+ ObjectToArrayPipeModule.decorators = [
9377
+ { type: core.NgModule, args: [{
9378
+ declarations: [ObjectToArrayPipe],
9379
+ imports: [
9380
+ common.CommonModule,
9381
+ ],
9382
+ exports: [ObjectToArrayPipe],
9383
+ },] }
9384
+ ];
9385
+ return ObjectToArrayPipeModule;
9386
+ }());
9387
+
9252
9388
  /**
9253
9389
  * @fileoverview added by tsickle
9254
9390
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
@@ -10758,6 +10894,181 @@
10758
10894
  CardKarmaProgramsV2Component.prototype.router;
10759
10895
  }
10760
10896
 
10897
+ /**
10898
+ * @fileoverview added by tsickle
10899
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
10900
+ */
10901
+ var ProviderCardComponent = /** @class */ (function () {
10902
+ function ProviderCardComponent() {
10903
+ this.providers = [
10904
+ {
10905
+ name: 'Indian Institute of Management Bengaluru (IIMB)',
10906
+ link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/IIMB/all-CBP',
10907
+ logo: 'assets/icons/top-providers/ef8a88cf-33cc-42de-bdc3-7deed1ab2418.png'
10908
+ },
10909
+ {
10910
+ name: 'Department for Promotion of Industry and Internal Trade',
10911
+ link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Department for Promotion of Industry and Internal Trade/all-CBP',
10912
+ logo: 'assets/icons/top-providers/0d400bdf-4ad8-45bf-914c-be44018c2d07.png'
10913
+ },
10914
+ {
10915
+ name: 'RAKNPA',
10916
+ link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/RAKNPA/all-CBP',
10917
+ logo: 'assets/icons/top-providers/1becfffa-956e-48ba-8ffd-77c19cd720c8.jpeg'
10918
+ },
10919
+ {
10920
+ name: 'Lal Bahadur Shastri National Academy of Administration (LBSNAA)',
10921
+ link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Ministry of Environment, Forest and Climate Change/all-CBP',
10922
+ logo: 'assets/icons/top-providers/1d76c041-a7c9-437c-94d9-36d997f3804c.jpeg'
10923
+ },
10924
+ {
10925
+ name: 'Ministry of Environment, Forest and Climate Change',
10926
+ link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/LBSNAA/all-CBP',
10927
+ logo: 'assets/icons/top-providers/1fb72c3f-1c96-4600-8e22-09871a85e6c4.jpeg'
10928
+ },
10929
+ {
10930
+ name: 'ISTM',
10931
+ link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Institute of Secretariat Training and Management/all-CBP',
10932
+ logo: 'assets/icons/top-providers/6f046f76-b778-476a-987b-8669e106b44c.jpeg'
10933
+ },
10934
+ {
10935
+ name: 'Department of Expenditure',
10936
+ link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Department%20of%20Expenditure%20/all-CBP',
10937
+ logo: 'assets/icons/top-providers/7f6df809-6930-44f4-abcf-c8297363d3e0.png'
10938
+ },
10939
+ {
10940
+ name: 'Department of Personnel and Training DoPT',
10941
+ link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Department%20of%20Personnel%20and%20Training%20DoPT/all-CBP',
10942
+ logo: 'assets/icons/top-providers/dopt.png'
10943
+ },
10944
+ {
10945
+ name: 'Indian Cybercrime Coordination Centre - I4C',
10946
+ link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Indian%20Cybercrime%20Coordination%20Centre%20-%20I4C/all-CBP',
10947
+ logo: 'assets/icons/top-providers/7f8cab8e-9d22-44ba-a41e-83b907e5a5f0.jpeg'
10948
+ },
10949
+ {
10950
+ "name": "Capacity Building Commission",
10951
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Capacity%20Building%20Commission/all-CBP",
10952
+ "logo": "assets/icons/top-providers/33e9c66f-312f-4244-901e-7d7525ae8847.jpeg"
10953
+ },
10954
+ {
10955
+ "name": "Ministry of Railways",
10956
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Ministry%20of%20Railways/all-CBP",
10957
+ "logo": "assets/icons/top-providers/36d93700-c43f-499e-ab3c-68ea76388a2a.png"
10958
+ },
10959
+ {
10960
+ "name": "World Bank",
10961
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/World%20Bank/all-CBP",
10962
+ "logo": "assets/icons/top-providers/385ff4a0-41af-4114-8015-10d26c1e8af4.jpeg"
10963
+ },
10964
+ {
10965
+ "name": "Sashastra Seema Bal (SSB)",
10966
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Sashastra%20Seema%20Bal%20%28SSB%29/all-CBP",
10967
+ "logo": "assets/icons/top-providers/778b56bf-8946-45fe-87d3-358203f2faf4.png"
10968
+ },
10969
+ {
10970
+ "name": "SVPNPA",
10971
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/SVPNPA/all-CBP",
10972
+ "logo": "assets/icons/top-providers/2862d2e5-473e-4c55-abaa-8a2f86e5eee4.jpeg"
10973
+ },
10974
+ {
10975
+ "name": "Microsoft",
10976
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Microsoft/all-CBP",
10977
+ "logo": "assets/icons/top-providers/53407dd6-d22c-4dba-a394-015fae667636.png"
10978
+ },
10979
+ {
10980
+ "name": "Indian Institute of Public Administration",
10981
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Indian%20Institute%20of%20Public%20Administration/all-CBP",
10982
+ "logo": "assets/icons/top-providers/869960d7-2dc7-4205-8c4b-11321d901060.jpeg"
10983
+ },
10984
+ {
10985
+ "name": "Food Corporation of India (FCI)",
10986
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Food%20Corporation%20of%20India%20%28FCI%29/all-CBP",
10987
+ "logo": "assets/icons/top-providers/4183673f-9063-4fa9-bf84-1e8856c8e531.jpeg"
10988
+ },
10989
+ {
10990
+ "name": "National Telecommunications Institute for Policy Research, Innovation and Training",
10991
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/NTIPRIT/all-CBP",
10992
+ "logo": "assets/icons/top-providers/a976f025-e990-49b0-a52a-9bd0a8e43584.jpeg"
10993
+ },
10994
+ {
10995
+ "name": "The Art of Living",
10996
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/The%20Art%20of%20Living/all-CBP",
10997
+ "logo": "assets/icons/top-providers/abbb8f64-84db-4a92-85c9-1b394ffab71c.png"
10998
+ },
10999
+ {
11000
+ "name": "National Institute of Communication Finance",
11001
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/National%20Institute%20of%20Communication%20Finance/all-CBP",
11002
+ "logo": "assets/icons/top-providers/b6bf0be6-7e29-4187-a29d-da6db1db7c69.jpeg"
11003
+ },
11004
+ {
11005
+ "name": "Department of Posts",
11006
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Department%20of%20Posts/all-CBP",
11007
+ "logo": "assets/icons/top-providers/cf567f4c-d0fa-447f-aba4-cb378ea3c90d.png"
11008
+ },
11009
+ {
11010
+ "name": "Government e Market Place(GeM)",
11011
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Government%20e%20Market%20Place%28GeM%29/all-CBP",
11012
+ "logo": "assets/icons/top-providers/f445c11b-ff73-4ca4-9dea-8d8945d92a4a.png"
11013
+ },
11014
+ {
11015
+ "name": "Bharat Sanchar Nigam Limited(BSNL)",
11016
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Bharat%20Sanchar%20Nigam%20Limited%28BSNL%29/all-CBP",
11017
+ "logo": "assets/icons/top-providers/fc67226a-4bbc-449a-8c5c-e1b338716545.png"
11018
+ },
11019
+ {
11020
+ "name": "Defence Accounts Department (DAD)",
11021
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Defence%20Accounts%20Department%20%28DAD%29/all-CBP",
11022
+ "logo": "assets/icons/top-providers/fccdb487-a389-48d9-bce0-c4d64315b546.png"
11023
+ },
11024
+ {
11025
+ "name": "Morarji Desai National Institute of Yoga (MDNIY)",
11026
+ "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Morarji%20Desai%20National%20Institute%20of%20Yoga%20%28MDNIY%29/all-CBP",
11027
+ "logo": "assets/icons/top-providers/fcde4c60-7ccd-456e-a5df-260dcfa2d3ee.png"
11028
+ }
11029
+ ];
11030
+ this.colors = [
11031
+ '#EF941D', '#F97440', '#35B5B0', '#9988FF', '#816FEC',
11032
+ '#254092', '#926525', '#4F72DF'
11033
+ ];
11034
+ }
11035
+ /**
11036
+ * @return {?}
11037
+ */
11038
+ ProviderCardComponent.prototype.ngOnInit = /**
11039
+ * @return {?}
11040
+ */
11041
+ function () {
11042
+ };
11043
+ /**
11044
+ * @param {?} provider
11045
+ * @return {?}
11046
+ */
11047
+ ProviderCardComponent.prototype.redirectTo = /**
11048
+ * @param {?} provider
11049
+ * @return {?}
11050
+ */
11051
+ function (provider) {
11052
+ window.open(provider.link, '_blank');
11053
+ };
11054
+ ProviderCardComponent.decorators = [
11055
+ { type: core.Component, args: [{
11056
+ selector: 'sb-uic-provider-card',
11057
+ template: "<div class=\"providers-container\">\n <div class=\"provider-card\" *ngFor=\"let provider of providers; let i = index\" [ngStyle]=\"{'border-top': '72px solid ' + colors[i % colors.length]}\">\n <div class=\"circle-wrapper\">\n <div class=\"circle\">\n <div class=\"background-circle\">\n <img [src]=\"provider.logo\" alt=\"{{ provider.name }}\">\n </div>\n </div>\n </div>\n <div class=\"provider-content\">\n <p>{{ provider.name }}</p>\n <div class=\"view-provider-button\" (click)=\"redirectTo(provider)\">View Provider ></div>\n </div>\n </div>\n </div>\n ",
11058
+ styles: [".providers-container{display:flex;justify-content:center}.provider-card{height:168px;width:245px;margin:20px 8px;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.1);background-color:#fff;position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;z-index:1}.circle-wrapper{position:absolute;display:flex;justify-content:center;top:-50px;z-index:1}.circle{width:90px;height:90px;border-radius:50%;background-color:#f0f0f0;box-shadow:0 4px 8px rgba(0,0,0,.1)}.background-circle{position:relative;display:flex;justify-content:center;align-items:center;height:80px;width:80px;background-color:#fff;border-radius:50%;border:5px solid #fff;margin:0 auto}.background-circle img{width:66px;height:50px;background-size:cover;background-position:center;position:relative}.provider-content{padding:16px;text-align:center;flex-grow:1;display:flex;flex-direction:column;justify-content:center;align-items:center}.provider-content p{font-size:14px;font-weight:700;font-family:Lato,sans-serif;margin-bottom:8px;line-height:16.8px;word-wrap:break-word;white-space:normal;height:51px}.view-provider-button{color:#1b4ca1;font-size:14px;font-family:Lato,sans-serif;cursor:pointer;transition:color .3s}"]
11059
+ }] }
11060
+ ];
11061
+ /** @nocollapse */
11062
+ ProviderCardComponent.ctorParameters = function () { return []; };
11063
+ return ProviderCardComponent;
11064
+ }());
11065
+ if (false) {
11066
+ /** @type {?} */
11067
+ ProviderCardComponent.prototype.providers;
11068
+ /** @type {?} */
11069
+ ProviderCardComponent.prototype.colors;
11070
+ }
11071
+
10761
11072
  /**
10762
11073
  * @fileoverview added by tsickle
10763
11074
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
@@ -10927,35 +11238,22 @@
10927
11238
  * @fileoverview added by tsickle
10928
11239
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
10929
11240
  */
10930
- var CardMdoChannelV1Component = /** @class */ (function () {
10931
- function CardMdoChannelV1Component(events, translate, langtranslations, configSvc, contSvc, router) {
10932
- var _this = this;
10933
- this.events = events;
10934
- this.translate = translate;
10935
- this.langtranslations = langtranslations;
11241
+ var CardAssessmentComponent = /** @class */ (function () {
11242
+ function CardAssessmentComponent(configSvc, contSvc) {
10936
11243
  this.configSvc = configSvc;
10937
11244
  this.contSvc = contSvc;
10938
- this.router = router;
10939
- this.channelData = new core.EventEmitter();
10940
- this.emitTelemetry = new core.EventEmitter();
10941
- this.widgetType = '';
10942
- this.widgetSubType = '';
10943
- this.langtranslations.languageSelectedObservable.subscribe((/**
10944
- * @return {?}
10945
- */
10946
- function () {
10947
- if (localStorage.getItem('websiteLanguage')) {
10948
- _this.translate.setDefaultLang('en');
10949
- /** @type {?} */
10950
- var lang = (/** @type {?} */ (localStorage.getItem('websiteLanguage')));
10951
- _this.translate.use(lang);
10952
- }
10953
- }));
11245
+ this.contentData = new core.EventEmitter();
11246
+ this.isCardLoading = false;
11247
+ this.stripData = [];
11248
+ this.enrollList = [];
11249
+ this.activeResource = [];
11250
+ this.daysRemaining = 0;
11251
+ this.daysPending = false;
10954
11252
  }
10955
11253
  /**
10956
11254
  * @return {?}
10957
11255
  */
10958
- CardMdoChannelV1Component.prototype.ngOnInit = /**
11256
+ CardAssessmentComponent.prototype.ngOnInit = /**
10959
11257
  * @return {?}
10960
11258
  */
10961
11259
  function () {
@@ -10963,8 +11261,7 @@
10963
11261
  var instanceConfig = this.configSvc.instanceConfig;
10964
11262
  if (instanceConfig) {
10965
11263
  this.defaultThumbnail = instanceConfig.logos.defaultContent || '';
10966
- this.sourceLogos = instanceConfig.sources;
10967
- this.defaultSLogo = instanceConfig.logos.defaultSourceLogo || '';
11264
+ this.defaultSLogo = instanceConfig.logos.defaultSourceLogo || '/assets/instances/eagle/app_logos/KarmayogiBharat_Logo.svg';
10968
11265
  }
10969
11266
  else {
10970
11267
  this.defaultThumbnail = '/assets/instances/eagle/app_logos/default.png';
@@ -10972,51 +11269,984 @@
10972
11269
  }
10973
11270
  };
10974
11271
  /**
10975
- * @param {?} contentData
11272
+ * @param {?} startDate
10976
11273
  * @return {?}
10977
11274
  */
10978
- CardMdoChannelV1Component.prototype.raiseTelemetry = /**
10979
- * @param {?} contentData
11275
+ CardAssessmentComponent.prototype.updateStartDate = /**
11276
+ * @param {?} startDate
10980
11277
  * @return {?}
10981
11278
  */
10982
- function (contentData) {
10983
- this.emitTelemetry.emit(contentData);
10984
- if (this.widgetData) {
10985
- contentData['typeOfTelemetry'] = 'mdo-channel';
11279
+ function (startDate) {
11280
+ this.startDate = startDate;
11281
+ this.startCountdown(this.startDate);
11282
+ };
11283
+ /**
11284
+ * @param {?} date
11285
+ * @return {?}
11286
+ */
11287
+ CardAssessmentComponent.prototype.startCountdown = /**
11288
+ * @param {?} date
11289
+ * @return {?}
11290
+ */
11291
+ function (date) {
11292
+ var _this = this;
11293
+ // Update the countdown immediately on start
11294
+ this.updateCountdown(date);
11295
+ // Update the countdown every second
11296
+ this.intervalId = setInterval((/**
11297
+ * @return {?}
11298
+ */
11299
+ function () {
11300
+ _this.updateCountdown(date);
11301
+ }), 1000);
11302
+ };
11303
+ // Method to update the countdown values
11304
+ // Method to update the countdown values
11305
+ /**
11306
+ * @param {?} targetDate
11307
+ * @return {?}
11308
+ */
11309
+ CardAssessmentComponent.prototype.updateCountdown =
11310
+ // Method to update the countdown values
11311
+ /**
11312
+ * @param {?} targetDate
11313
+ * @return {?}
11314
+ */
11315
+ function (targetDate) {
11316
+ /** @type {?} */
11317
+ var now = new Date().getTime();
11318
+ // Current time in milliseconds
11319
+ /** @type {?} */
11320
+ var targetTime = new Date(targetDate).getTime();
11321
+ /** @type {?} */
11322
+ var distance = targetTime - now;
11323
+ if (distance > 0) {
11324
+ this.daysRemaining = Math.ceil(distance / (1000 * 60 * 60 * 24));
11325
+ this.daysPending = true;
11326
+ }
11327
+ else {
11328
+ this.daysRemaining = 0;
11329
+ this.daysPending = false;
11330
+ this.clearTimer();
10986
11331
  }
10987
- this.contSvc.changeTelemetryData(contentData);
10988
11332
  };
11333
+ // Method to clear the interval
11334
+ // Method to clear the interval
10989
11335
  /**
10990
- * @param {?} channeldata
10991
11336
  * @return {?}
10992
11337
  */
10993
- CardMdoChannelV1Component.prototype.channelClick = /**
10994
- * @param {?} channeldata
11338
+ CardAssessmentComponent.prototype.clearTimer =
11339
+ // Method to clear the interval
11340
+ /**
10995
11341
  * @return {?}
10996
11342
  */
10997
- function (channeldata) {
10998
- this.channelData.emit(channeldata);
11343
+ function () {
11344
+ clearInterval(this.intervalId);
10999
11345
  };
11000
11346
  /**
11001
- * @param {?} content
11002
11347
  * @return {?}
11003
11348
  */
11004
- CardMdoChannelV1Component.prototype.redirectTo = /**
11005
- * @param {?} content
11349
+ CardAssessmentComponent.prototype.ngOnDestroy = /**
11006
11350
  * @return {?}
11007
11351
  */
11008
- function (content) {
11009
- this.router.navigate(["/app/learn/mdo-channels/" + content.orgName + "/" + content.identifier + "/micro-sites"]);
11352
+ function () {
11353
+ this.clearTimer();
11010
11354
  };
11011
- CardMdoChannelV1Component.decorators = [
11012
- { type: core.Component, args: [{
11013
- selector: 'sb-uic-card-mdo-channel-v1',
11014
- template: "<mat-card class=\"channels-card card-channels-container mr-5 padding-remove cursor-pointer\">\n <div class=\"display-contents\">\n <ng-container *ngIf=\"widgetData?.content\">\n <a (click)=\"raiseTelemetry(widgetData?.content); redirectTo(widgetData?.content); $event.stopPropagation()\"\n i18n-aria-label>\n <ng-container>\n <mat-card-content class=\"min-top\">\n <div class=\"flex flex-col h-full\">\n <div class=\"image-container\">\n <ng-container *ngIf=\"widgetData?.content?.imgUrl; else defaultImg\">\n <img mat-card-image [src]=\"widgetData?.content?.imgUrl\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData?.content?.orgName\" />\n </ng-container>\n <ng-template #defaultImg>\n <sb-uic-avatar-photo [randomColor]=\"true\" [name]=\"widgetData?.content?.orgName\" [photoUrl]=\"widgetData?.content?.imgUrl\" size=\"m-side-rating\">\n </sb-uic-avatar-photo>\n </ng-template>\n </div>\n <div class=\"flex title-container px-2\">\n <div [id]=\"'m-c-'+ widgetData?.content?.identifier\"\n class=\"flex-1 text-center mat-subheading-2 title-text ws-mat-black-text\">\n {{ widgetData?.content?.orgName }}\n </div>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n </a>\n </ng-container>\n </div>\n</mat-card>",
11015
- styles: [".card-channels-container{position:relative;width:245px;box-sizing:border-box;box-shadow:0 10px 30px rgba(153,153,153,.2);overflow:hidden;min-height:156px;height:156px;max-height:156px;margin:20px 8px;background:#7faeff!important;border-radius:12px;padding:4px!important}.card-channels-container .min-top{background:inherit;margin-bottom:0;height:inherit}.card-channels-container .image-container{background-color:#fff;width:inherit;height:86px;max-height:86px;overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:12px}.card-channels-container .card-img{max-height:62px;min-height:62px;display:block;-o-object-fit:fill;object-fit:contain}.card-channels-container .mat-subheading-1{font:600 14px/24px Montserrat}.card-channels-container .title-container{background:inherit}.card-channels-container .description-text{position:relative;overflow:hidden;height:51px}.card-channels-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}"]
11016
- }] }
11017
- ];
11018
- /** @nocollapse */
11019
- CardMdoChannelV1Component.ctorParameters = function () { return [
11355
+ /**
11356
+ * @param {?} contentData
11357
+ * @return {?}
11358
+ */
11359
+ CardAssessmentComponent.prototype.getRedirectUrlData = /**
11360
+ * @param {?} contentData
11361
+ * @return {?}
11362
+ */
11363
+ function (contentData) {
11364
+ // for telemetry
11365
+ if (this.widgetData && this.widgetData.context && this.widgetData.context.pageSection) {
11366
+ contentData['typeOfTelemetry'] = this.widgetData.context.pageSection;
11367
+ }
11368
+ this.contSvc.changeTelemetryData(contentData);
11369
+ // for redirection
11370
+ this.contentData.emit(contentData);
11371
+ };
11372
+ CardAssessmentComponent.decorators = [
11373
+ { type: core.Component, args: [{
11374
+ selector: 'sb-uic-card-assessment',
11375
+ template: "<ng-container *ngIf=\"!isCardLoading\">\n<ng-container >\n\t<mat-card class=\"card-assessment card-scheduled-assessment card-users-container padding-remove cursor-pointer mr-4\">\n\t<a (click)=\"getRedirectUrlData(widgetData?.content); $event.stopPropagation()\">\n\t\t<div class=\"display-contents\">\n\t\t\t<ng-container *ngIf=\"widgetData\">\n\t\t\t\t<mat-card-content>\n\t\t\t\t\t<div class=\"flex flex-col h-full\">\n\t\t\t\t\t\t<div class=\"flex flex-1 flex-row padding-s\">\n\t\t\t\t\t\t\t<div class=\"flex image-container\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"widgetData?.content?.posterImage\">\n\t\t\t\t\t\t\t\t\t<img mat-card-image class=\"margin-remove assess-img\" [src]=\"widgetData?.content?.posterImage | pipePublicURL\"\n\t\t\t\t\t\t\t\t\t\t[alt]=\"widgetData?.content?.name\">\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!widgetData?.content?.posterImage\">\n\t\t\t\t\t\t\t\t\t<ng-template #defaultImg>\n\t\t\t\t\t\t\t\t\t\t<img mat-card-image [src]=\"defaultThumbnail\" loading=\"lazy\"\n\t\t\t\t\t\t\t\t\t\t\tclass=\"card-wide-img ws-mat-primary-lite-background margin-remove assess-img\"\n\t\t\t\t\t\t\t\t\t\t\t[alt]=\"widgetData?.content?.name\" />\n\t\t\t\t\t\t\t\t\t</ng-template>\n\t\t\t\t\t\t\t\t</ng-container>\n\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"flex title-container flex-col\">\n\t\t\t\t\t\t\t\t<div class=\"flex title-text mat-subheading-1\">\n\t\t\t\t\t\t\t\t\t{{ widgetData?.content?.name }}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class=\"flex margin-remove margin-top-s font-normal mat-caption sub-title-text\">\n\t\t\t\t\t\t\t\t\t<div class=\"course_logo_box\">\n\t\t\t\t\t\t\t\t\t\t<img [src]=\"widgetData?.content?.creatorLogo | pipePublicURL \" class=\"source-icon\"\n\t\t\t\t\t\t\t\t\t\t\t[wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n\t\t\t\t\t\t\t\t\t\t\t[alt]=\"(widgetData?.content?.sourceName + '_' + widgetData?.content?.identifier)\" />\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<span class=\"sub-title-text\">\n\t\t\t\t\t\t\t\t\t\t{{ (widgetData?.content?.organisation && widgetData?.content?.organisation[0]) ?\n\t\t\t\t\t\t\t\t\t\twidgetData?.content?.organisation[0] : 'Karmayogi Bharat' }}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<span class=\"start-span\">Assessment starts in </span>\n\t\t\t\t\t\t<mat-card-footer class=\"assessment-card-footer padding-m\">\n\t\t\t\t\t\t\t<div class=\"flex flex-1 items-center justify-center col-row margin-top-m\">\n\t\t\t\t\t\t\t\t<div class=\"flex margin-right-m\">\n\t\t\t\t\t\t\t\t\t<span *ngIf=\"daysPending\"> {{ startCountdown(widgetData?.content?.batch?.startDate) }}<div id=\"demo\"></div> </span>\n\t\t\t\t\t\t\t\t\t<span *ngIf=\"!daysPending\" class=\"start-btn\"> Start Assessment\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t\t\t\t\t<span class=\"time-span flex items-center justify-center\">{{widgetData?.content?.batch?.startDate | date: 'd MMM, y' }}</span>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</mat-card-footer>\n\t\t\t\t\t</div>\n\t\t\t\t</mat-card-content>\n\t\t\t</ng-container>\n\t\t</div>\n\t</a>\n</mat-card>\n</ng-container>\n</ng-container>\n\n\n\n<ng-container *ngIf=\"isCardLoading\">\n\t<ng-container [ngTemplateOutlet]=\"skeltonLoader\"></ng-container>\n</ng-container>\n\n<ng-template #skeltonLoader>\n\n\t<mat-card class=\"card-assessment card-scheduled-assessment card-users-container padding-remove cursor-pointer mr-4\">\n\t\t<a>\n\t\t\t<div class=\"display-contents\">\n\t\t\t\t<ng-container>\n\t\t\t\t\t<mat-card-content>\n\t\t\t\t\t\t<div class=\"flex flex-col h-full\">\n\t\t\t\t\t\t\t<div class=\"flex flex-1 flex-row padding-s\">\n\t\t\t\t\t\t\t\t<div class=\"flex image-container\">\n\t\t\t\t\t\t\t\t\t<ng-container>\n\t\t\t\t\t\t\t\t\t\t<sb-uic-skeleton-loader [width]=\"'300px'\" [height]=\"'155px'\"\n\t\t\t\t\t\t\t\t\t\t\t></sb-uic-skeleton-loader>\n\t\t\t\t\t\t\t\t\t</ng-container>\n\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class=\"flex title-container flex-col\">\n\t\t\t\t\t\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t\t\t\t\t\t<sb-uic-skeleton-loader [width]=\"'100px'\" [height]=\"'16px'\"\n\t\t\t\t\t\t\t\t\t\t\t[bindingClass]=\"'flex rounded br-8'\"></sb-uic-skeleton-loader>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<div class=\"flex margin-remove margin-top-l font-normal\">\n\t\t\t\t\t\t\t\t\t\t<sb-uic-skeleton-loader [width]=\"'100px'\" [height]=\"'16px'\"\n\t\t\t\t\t\t\t\t\t\t\t[bindingClass]=\"'flex rounded br-8'\"></sb-uic-skeleton-loader>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<!-- <span class=\"text-center\"><sb-uic-skeleton-loader [width]=\"'90px'\" [height]=\"'16px'\"\n\t\t\t\t\t\t\t\t\t[bindingClass]=\"'flex rounded br-8'\"></sb-uic-skeleton-loader> </span> -->\n\t\t\t\t\t\t\t<mat-card-footer\n\t\t\t\t\t\t\t\tclass=\"assessment-card-footer col-row padding-l\">\n\t\t\t\t\t\t\t\t<div class=\"flex flex-1 items-center justify-center col-row margin-top-m\">\n\t\t\t\t\t\t\t\t<div class=\"flex margin-right-m\">\n\t\t\t\t\t\t\t\t\t<sb-uic-skeleton-loader [width]=\"'100px'\" [height]=\"'16px'\"\n\t\t\t\t\t\t\t\t\t\t[bindingClass]=\"'flex rounded br-8'\"></sb-uic-skeleton-loader>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t\t\t\t\t<sb-uic-skeleton-loader [width]=\"'100px'\" [height]=\"'16px'\"\n\t\t\t\t\t\t\t\t\t\t[bindingClass]=\"'flex rounded br-8'\"></sb-uic-skeleton-loader>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</mat-card-footer>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</mat-card-content>\n\t\t\t\t</ng-container>\n\t\t\t</div>\n\t\t</a>\n\t</mat-card>\n</ng-template>",
11376
+ styles: [".card-assessment{width:100%;min-height:190px;box-sizing:border-box;min-width:335px;margin-top:16px}.image-container{width:155px;height:120px;border-radius:8px;overflow:hidden;border:1px solid rgba(0,0,0,.08)}.title-container{margin-left:12px}.title-text{word-break:break-word;white-space:initial;margin:8px 0;position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-height:48px;font:600 14px/24px Montserrat}.sub-title-text{width:75%;word-break:break-word;white-space:initial;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.course_logo_box{width:38px;height:38px;background:#fff;border-radius:8px;box-sizing:border-box;margin-right:4px;box-shadow:0 2px 1px -1px rgb(0 0 0 / 20%),0 1px 1px 0 rgb(0 0 0 / 14%),0 1px 3px 0 rgb(0 0 0 / 12%)}.course_logo_box img.source-icon{height:28px;width:28px;padding:5px;display:inline-block}.mat-card-footer{margin:0!important}.time-span{padding:2px 8px;color:#fff;border-radius:4px;text-align:center;font-size:12px;background-color:green}span.start-span{border-radius:50px;border:2px solid rgba(0,0,0,.08);font-size:12px;text-align:center;position:absolute;bottom:0;width:140px;left:50%;margin-left:-70px;background-color:#fff;margin-bottom:62px;margin-right:8px}.assessment-card-footer{background:rgba(239,149,30,.16)!important;text-align:center;box-sizing:border-box}.start-btn{background:#1b4ca1!important;color:#fff;font-size:14px;font-weight:600;border-radius:25px;text-align:center;padding:4px 12px}.dots-container{display:none}"]
11377
+ }] }
11378
+ ];
11379
+ /** @nocollapse */
11380
+ CardAssessmentComponent.ctorParameters = function () { return [
11381
+ { type: utilsV2.ConfigurationsService },
11382
+ { type: WidgetContentService }
11383
+ ]; };
11384
+ CardAssessmentComponent.propDecorators = {
11385
+ widgetData: [{ type: core.Input }],
11386
+ enrollmentMapData: [{ type: core.Input }],
11387
+ contentData: [{ type: core.Output }],
11388
+ isCardLoading: [{ type: core.Input }]
11389
+ };
11390
+ return CardAssessmentComponent;
11391
+ }());
11392
+ if (false) {
11393
+ /** @type {?} */
11394
+ CardAssessmentComponent.prototype.widgetData;
11395
+ /** @type {?} */
11396
+ CardAssessmentComponent.prototype.enrollmentMapData;
11397
+ /** @type {?} */
11398
+ CardAssessmentComponent.prototype.contentData;
11399
+ /** @type {?} */
11400
+ CardAssessmentComponent.prototype.isCardLoading;
11401
+ /** @type {?} */
11402
+ CardAssessmentComponent.prototype.stripData;
11403
+ /** @type {?} */
11404
+ CardAssessmentComponent.prototype.enrollList;
11405
+ /** @type {?} */
11406
+ CardAssessmentComponent.prototype.activeResource;
11407
+ /** @type {?} */
11408
+ CardAssessmentComponent.prototype.defaultThumbnail;
11409
+ /** @type {?} */
11410
+ CardAssessmentComponent.prototype.defaultSLogo;
11411
+ /** @type {?} */
11412
+ CardAssessmentComponent.prototype.daysRemaining;
11413
+ /** @type {?} */
11414
+ CardAssessmentComponent.prototype.startDate;
11415
+ /** @type {?} */
11416
+ CardAssessmentComponent.prototype.daysPending;
11417
+ /**
11418
+ * @type {?}
11419
+ * @private
11420
+ */
11421
+ CardAssessmentComponent.prototype.intervalId;
11422
+ /**
11423
+ * @type {?}
11424
+ * @private
11425
+ */
11426
+ CardAssessmentComponent.prototype.configSvc;
11427
+ /**
11428
+ * @type {?}
11429
+ * @private
11430
+ */
11431
+ CardAssessmentComponent.prototype.contSvc;
11432
+ }
11433
+
11434
+ /**
11435
+ * @fileoverview added by tsickle
11436
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
11437
+ */
11438
+ var ɵ0$3 = /**
11439
+ * @param {?} id
11440
+ * @return {?}
11441
+ */
11442
+ function (id) { return "certreg/v2/certs/download/" + id; }, ɵ1$2 = /**
11443
+ * @param {?} id
11444
+ * @return {?}
11445
+ */
11446
+ function (id) { return "apis/protected/v8/cohorts/course/batch/cert/download/" + id; };
11447
+ /** @type {?} */
11448
+ var urls = {
11449
+ DOWNLOAD_CERTIFICATE: (ɵ0$3),
11450
+ DOWNLOAD_CERTIFICATE_v2: (ɵ1$2),
11451
+ };
11452
+ var CertificateService = /** @class */ (function () {
11453
+ function CertificateService(http) {
11454
+ this.http = http;
11455
+ }
11456
+ /**
11457
+ * @param {?} id
11458
+ * @return {?}
11459
+ */
11460
+ CertificateService.prototype.downloadCertificate = /**
11461
+ * @param {?} id
11462
+ * @return {?}
11463
+ */
11464
+ function (id) {
11465
+ return this.http.get(urls.DOWNLOAD_CERTIFICATE(id));
11466
+ };
11467
+ /**
11468
+ * @param {?} id
11469
+ * @return {?}
11470
+ */
11471
+ CertificateService.prototype.downloadCertificate_v2 = /**
11472
+ * @param {?} id
11473
+ * @return {?}
11474
+ */
11475
+ function (id) {
11476
+ return this.http.get(urls.DOWNLOAD_CERTIFICATE_v2(id));
11477
+ };
11478
+ CertificateService.decorators = [
11479
+ { type: core.Injectable, args: [{
11480
+ providedIn: 'root'
11481
+ },] }
11482
+ ];
11483
+ /** @nocollapse */
11484
+ CertificateService.ctorParameters = function () { return [
11485
+ { type: http.HttpClient }
11486
+ ]; };
11487
+ /** @nocollapse */ CertificateService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function CertificateService_Factory() { return new CertificateService(core.ɵɵinject(http.HttpClient)); }, token: CertificateService, providedIn: "root" });
11488
+ return CertificateService;
11489
+ }());
11490
+ if (false) {
11491
+ /**
11492
+ * @type {?}
11493
+ * @private
11494
+ */
11495
+ CertificateService.prototype.http;
11496
+ }
11497
+
11498
+ /**
11499
+ * @fileoverview added by tsickle
11500
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
11501
+ */
11502
+ var CertificateDialogComponent = /** @class */ (function () {
11503
+ function CertificateDialogComponent(environment, events, translate, langtranslations, dialogRef, data) {
11504
+ var _this = this;
11505
+ this.events = events;
11506
+ this.translate = translate;
11507
+ this.langtranslations = langtranslations;
11508
+ this.dialogRef = dialogRef;
11509
+ this.data = data;
11510
+ this.navUrl = '';
11511
+ this.environment = environment;
11512
+ this.langtranslations.languageSelectedObservable.subscribe((/**
11513
+ * @return {?}
11514
+ */
11515
+ function () {
11516
+ if (localStorage.getItem('websiteLanguage')) {
11517
+ _this.translate.setDefaultLang('en');
11518
+ /** @type {?} */
11519
+ var lang = (/** @type {?} */ (localStorage.getItem('websiteLanguage')));
11520
+ _this.translate.use(lang);
11521
+ }
11522
+ }));
11523
+ }
11524
+ /**
11525
+ * @return {?}
11526
+ */
11527
+ CertificateDialogComponent.prototype.ngOnInit = /**
11528
+ * @return {?}
11529
+ */
11530
+ function () {
11531
+ this.url = this.data.cet;
11532
+ // tslint:disable-next-line:max-line-length
11533
+ this.navUrl = "https://www.linkedin.com/sharing/share-offsite/?url=" + this.environment.contentHost + "/apis/public/v8/cert/download/" + this.data.certId;
11534
+ };
11535
+ /**
11536
+ * @return {?}
11537
+ */
11538
+ CertificateDialogComponent.prototype.downloadCert = /**
11539
+ * @return {?}
11540
+ */
11541
+ function () {
11542
+ this.raiseIntreactTelemetry('svg');
11543
+ /** @type {?} */
11544
+ var a = document.createElement('a');
11545
+ a.href = this.data.cet;
11546
+ a.download = 'Certificate';
11547
+ document.body.appendChild(a);
11548
+ a.style = 'display: none';
11549
+ a.click();
11550
+ a.remove();
11551
+ };
11552
+ /**
11553
+ * @return {?}
11554
+ */
11555
+ CertificateDialogComponent.prototype.downloadCertPng = /**
11556
+ * @return {?}
11557
+ */
11558
+ function () {
11559
+ this.raiseIntreactTelemetry('png');
11560
+ /** @type {?} */
11561
+ var uriData = this.data.cet;
11562
+ /** @type {?} */
11563
+ var img = new Image();
11564
+ img.src = uriData;
11565
+ img.width = 1820;
11566
+ img.height = 1000;
11567
+ img.onload = (/**
11568
+ * @return {?}
11569
+ */
11570
+ function () {
11571
+ var _a;
11572
+ /** @type {?} */
11573
+ var canvas = document.createElement('canvas');
11574
+ _a = __read([img.width, img.height], 2), canvas.width = _a[0], canvas.height = _a[1];
11575
+ /** @type {?} */
11576
+ var ctx = canvas.getContext('2d');
11577
+ if (ctx) {
11578
+ // ctx.imageSmoothingEnabled = true
11579
+ ctx.drawImage(img, 0, 0, img.width, img.height);
11580
+ /** @type {?} */
11581
+ var a = document.createElement('a');
11582
+ /** @type {?} */
11583
+ var quality = 1.0 // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/imageSmoothingQuality
11584
+ ;
11585
+ a.href = canvas.toDataURL('image/png', quality);
11586
+ a.download = 'Certificate';
11587
+ a.append(canvas);
11588
+ a.click();
11589
+ a.remove();
11590
+ }
11591
+ });
11592
+ };
11593
+ /**
11594
+ * @return {?}
11595
+ */
11596
+ CertificateDialogComponent.prototype.downloadCertPdf = /**
11597
+ * @return {?}
11598
+ */
11599
+ function () {
11600
+ return __awaiter(this, void 0, void 0, function () {
11601
+ var uriData, img;
11602
+ return __generator(this, function (_a) {
11603
+ this.raiseIntreactTelemetry('pdf');
11604
+ uriData = this.data.cet;
11605
+ img = new Image();
11606
+ img.src = uriData;
11607
+ img.width = 1820;
11608
+ img.height = 1000;
11609
+ img.onload = (/**
11610
+ * @return {?}
11611
+ */
11612
+ function () {
11613
+ var _a;
11614
+ /** @type {?} */
11615
+ var canvas = document.createElement('canvas');
11616
+ _a = __read([img.width, img.height], 2), canvas.width = _a[0], canvas.height = _a[1];
11617
+ /** @type {?} */
11618
+ var ctx = canvas.getContext('2d');
11619
+ if (ctx) {
11620
+ ctx.drawImage(img, 0, 0, img.width, img.height);
11621
+ /** @type {?} */
11622
+ var quality = 1.0 // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/imageSmoothingQuality
11623
+ ;
11624
+ // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/imageSmoothingQuality
11625
+ /** @type {?} */
11626
+ var dataImg = canvas.toDataURL('application/pdf', quality);
11627
+ /** @type {?} */
11628
+ var pdf = new jspdf.jsPDF('landscape', 'px', 'a4')
11629
+ // add the image to the PDF
11630
+ ;
11631
+ // add the image to the PDF
11632
+ pdf.addImage(dataImg, 10, 20, 600, 350);
11633
+ // download the PDF
11634
+ pdf.save('Certificate.pdf');
11635
+ }
11636
+ });
11637
+ return [2 /*return*/];
11638
+ });
11639
+ });
11640
+ };
11641
+ /**
11642
+ * @return {?}
11643
+ */
11644
+ CertificateDialogComponent.prototype.shareCert = /**
11645
+ * @return {?}
11646
+ */
11647
+ function () {
11648
+ this.raiseShareIntreactTelemetry('share');
11649
+ return window.open(this.navUrl, '_blank');
11650
+ };
11651
+ /**
11652
+ * @param {?=} type
11653
+ * @param {?=} action
11654
+ * @return {?}
11655
+ */
11656
+ CertificateDialogComponent.prototype.raiseShareIntreactTelemetry = /**
11657
+ * @param {?=} type
11658
+ * @param {?=} action
11659
+ * @return {?}
11660
+ */
11661
+ function (type, action) {
11662
+ this.events.raiseInteractTelemetry({
11663
+ type: utilsV2.WsEvents.EnumInteractTypes.CLICK,
11664
+ id: type + "-" + utilsV2.WsEvents.EnumInteractSubTypes.CERTIFICATE,
11665
+ subType: action && action,
11666
+ }, {
11667
+ id: this.data.certId,
11668
+ // id of the certificate
11669
+ type: utilsV2.WsEvents.EnumInteractSubTypes.CERTIFICATE,
11670
+ });
11671
+ };
11672
+ /**
11673
+ * @param {?=} action
11674
+ * @return {?}
11675
+ */
11676
+ CertificateDialogComponent.prototype.raiseIntreactTelemetry = /**
11677
+ * @param {?=} action
11678
+ * @return {?}
11679
+ */
11680
+ function (action) {
11681
+ this.events.raiseInteractTelemetry({
11682
+ type: utilsV2.WsEvents.EnumInteractTypes.CLICK,
11683
+ id: 'download-certificate',
11684
+ subType: action && action,
11685
+ }, {
11686
+ id: this.data.certId,
11687
+ // id of the certificate
11688
+ type: utilsV2.WsEvents.EnumInteractSubTypes.CERTIFICATE,
11689
+ });
11690
+ };
11691
+ CertificateDialogComponent.decorators = [
11692
+ { type: core.Component, args: [{
11693
+ selector: 'sb-uic-certificate-dialog',
11694
+ template: "<mat-card class=\"no-shadow certificate-img-box\">\n <button mat-icon-button class=\"close-button\" [mat-dialog-close]=\"true\">\n <mat-icon class=\"close-icon\" color=\"warn\">close</mat-icon>\n </button>\n <!-- <mat-card-title>\n\n </mat-card-title> -->\n <mat-card-content class=\"certificate-img-content\">\n <img #certificate [src]=\"url| pipeSafeSanitizer: 'url'\" alt=\"Certificate\" role=\"image\" class=\"certificate-banner-image\">\n </mat-card-content>\n <mat-card-actions class=\"flex gap-4 flex-row-reverse\">\n <!-- <ws-widget-svg-to-pdf></ws-widget-svg-to-pdf> -->\n <a mat-button (click)=\"shareCert()\" class=\"ws-mat-accent-border-active mat-accent btn-custom\">\n <mat-icon class=\"mat-icon material-icons-outlined download_icon margin-right-xs\">share</mat-icon>\n Share\n </a>\n <a mat-button [matMenuTriggerFor]=\"menu\" class=\"ws-mat-accent-border-active mat-accent btn-custom\" (click)=\"raiseIntreactTelemetry()\">\n <mat-icon class=\"mat-icon material-icons-outlined download_icon margin-right-xs\">cloud_download</mat-icon>\n {{'certificatedialog.download' | translate}}\n </a>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)='downloadCertPdf()'>\n <mat-icon>picture_as_pdf</mat-icon>\n <span>{{'certificatedialog.pdf' | translate}}</span>\n </button>\n <button mat-menu-item (click)='downloadCertPng()'>\n <mat-icon>photo</mat-icon>\n <span>{{'certificatedialog.png' | translate}}</span>\n </button>\n <button mat-menu-item (click)='downloadCert()'>\n <mat-icon>photo_size_select_actual</mat-icon>\n <span>{{'certificatedialog.svg' | translate}}</span>\n </button>\n </mat-menu>\n </mat-card-actions>\n</mat-card>\n",
11695
+ /* tslint:disable */
11696
+ host: { class: 'certificate-inner-dialog-panel' },
11697
+ styles: [".no-shadow{box-shadow:none!important}.certificate-banner-image{height:30rem;display:flex;width:auto;margin:0 auto}.certificate-img-box{max-height:35rem;overflow-y:auto;overflow-x:hidden}.certificate-img-content{overflow:hidden}a.download_btn{background-color:#f0f0f0;border-radius:4px;float:right;height:40px;padding:0 16px;text-align:center;line-height:40px;text-decoration:none;color:rgba(0,0,0,.6);font-size:14px;font-weight:600;margin-top:16px;margin-right:0}.download_icon{font-size:16px;vertical-align:text-top}.close-icon{transition:1s ease-in-out;color:#fff!important}.close-icon:hover{transform:rotate(180deg)}::ng-deep .icon-outside .close-button{float:right;top:-52px;right:-52px}::ng-deep .icon-outside .mat-dialog-container{overflow:unset}::ng-deep .cdk-overlay-pane{max-height:96%!important;overflow-y:auto!important}.certificate-banner-image svg{width:500;height:500}@media only screen and (max-width:1279px){.certificate-banner-image{width:100%;height:auto;flex:1}.certificate-banner-image svg{width:auto;height:auto;flex:1}}.close-button{float:right;top:-16px;right:-12px;height:30px;width:30px;line-height:30px;background:#000!important;color:#fff!important;border-radius:50%!important}.ws-mat-accent-border{border:1px solid rgba(255,255,255,.08)}.ws-mat-accent-border-active{border:1px solid #1b4ca1;color:#1b4ca1}.btn-custom,.mat-button,.mat-flat-button,.mat-icon-button,.mat-stroked-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.close-icon{position:absolute!important;top:19px!important;right:18px!important}"]
11698
+ }] }
11699
+ ];
11700
+ /** @nocollapse */
11701
+ CertificateDialogComponent.ctorParameters = function () { return [
11702
+ { type: undefined, decorators: [{ type: core.Inject, args: ['environment',] }] },
11703
+ { type: utilsV2.EventService },
11704
+ { type: core$1.TranslateService },
11705
+ { type: utilsV2.MultilingualTranslationsService },
11706
+ { type: material.MatDialogRef },
11707
+ { type: undefined, decorators: [{ type: core.Inject, args: [material.MAT_DIALOG_DATA,] }] }
11708
+ ]; };
11709
+ return CertificateDialogComponent;
11710
+ }());
11711
+ if (false) {
11712
+ /** @type {?} */
11713
+ CertificateDialogComponent.prototype.url;
11714
+ /** @type {?} */
11715
+ CertificateDialogComponent.prototype.navUrl;
11716
+ /** @type {?} */
11717
+ CertificateDialogComponent.prototype.environment;
11718
+ /**
11719
+ * @type {?}
11720
+ * @private
11721
+ */
11722
+ CertificateDialogComponent.prototype.events;
11723
+ /**
11724
+ * @type {?}
11725
+ * @private
11726
+ */
11727
+ CertificateDialogComponent.prototype.translate;
11728
+ /**
11729
+ * @type {?}
11730
+ * @private
11731
+ */
11732
+ CertificateDialogComponent.prototype.langtranslations;
11733
+ /** @type {?} */
11734
+ CertificateDialogComponent.prototype.dialogRef;
11735
+ /** @type {?} */
11736
+ CertificateDialogComponent.prototype.data;
11737
+ }
11738
+
11739
+ /**
11740
+ * @fileoverview added by tsickle
11741
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
11742
+ */
11743
+ var CardProgressPortraitLibComponent = /** @class */ (function () {
11744
+ function CardProgressPortraitLibComponent(snackBar, translate, events, langtranslations, configSvc, contSvc, certificateService, dialog) {
11745
+ var _this = this;
11746
+ this.snackBar = snackBar;
11747
+ this.translate = translate;
11748
+ this.events = events;
11749
+ this.langtranslations = langtranslations;
11750
+ this.configSvc = configSvc;
11751
+ this.contSvc = contSvc;
11752
+ this.certificateService = certificateService;
11753
+ this.dialog = dialog;
11754
+ this.isCardLoading = false;
11755
+ this.contentData = new core.EventEmitter();
11756
+ this.isCardFlipped = false;
11757
+ this.acbpConstants = NsCardContent$1.ACBPConst;
11758
+ this.showFlip = false;
11759
+ this.widgetType = 'df';
11760
+ this.widgetSubType = 'sdf';
11761
+ this.downloadCertificateLoading = false;
11762
+ this.langtranslations.languageSelectedObservable.subscribe((/**
11763
+ * @return {?}
11764
+ */
11765
+ function () {
11766
+ if (localStorage.getItem('websiteLanguage')) {
11767
+ _this.translate.setDefaultLang('en');
11768
+ /** @type {?} */
11769
+ var lang = (/** @type {?} */ (localStorage.getItem('websiteLanguage')));
11770
+ _this.translate.use(lang);
11771
+ }
11772
+ }));
11773
+ }
11774
+ /**
11775
+ * @return {?}
11776
+ */
11777
+ CardProgressPortraitLibComponent.prototype.ngOnInit = /**
11778
+ * @return {?}
11779
+ */
11780
+ function () {
11781
+ /** @type {?} */
11782
+ var instanceConfig = this.configSvc.instanceConfig;
11783
+ if (instanceConfig) {
11784
+ this.defaultThumbnail = instanceConfig.logos.defaultContent || '';
11785
+ this.sourceLogos = instanceConfig.sources;
11786
+ this.defaultSLogo = instanceConfig.logos.defaultSourceLogo || '';
11787
+ }
11788
+ else {
11789
+ this.defaultThumbnail = '/assets/instances/eagle/app_logos/default.png';
11790
+ this.defaultSLogo = '/assets/instances/eagle/app_logos/KarmayogiBharat_Logo.svg';
11791
+ }
11792
+ };
11793
+ /**
11794
+ * @return {?}
11795
+ */
11796
+ CardProgressPortraitLibComponent.prototype.showSnackbar = /**
11797
+ * @return {?}
11798
+ */
11799
+ function () {
11800
+ if (this.showIntranetContent) {
11801
+ this.snackBar.open('Content is only available in intranet', 'X', { duration: 2000 });
11802
+ }
11803
+ else if (!this.isLiveOrMarkForDeletion) {
11804
+ this.snackBar.open('Content may be expired or deleted', 'X', { duration: 2000 });
11805
+ }
11806
+ };
11807
+ /**
11808
+ * @param {?} contentData
11809
+ * @return {?}
11810
+ */
11811
+ CardProgressPortraitLibComponent.prototype.getRedirectUrlData = /**
11812
+ * @param {?} contentData
11813
+ * @return {?}
11814
+ */
11815
+ function (contentData) {
11816
+ // for telemetry
11817
+ if (this.widgetData && this.widgetData.context && this.widgetData.context.pageSection) {
11818
+ contentData['typeOfTelemetry'] = this.widgetData.context.pageSection;
11819
+ }
11820
+ this.contSvc.changeTelemetryData(contentData);
11821
+ // for redirection
11822
+ this.contentData.emit(contentData);
11823
+ };
11824
+ /**
11825
+ * @param {?} label
11826
+ * @param {?} type
11827
+ * @param {?=} subtype
11828
+ * @return {?}
11829
+ */
11830
+ CardProgressPortraitLibComponent.prototype.translateLabels = /**
11831
+ * @param {?} label
11832
+ * @param {?} type
11833
+ * @param {?=} subtype
11834
+ * @return {?}
11835
+ */
11836
+ function (label, type, subtype) {
11837
+ return this.langtranslations.translateLabelWithoutspace(label, type, subtype);
11838
+ };
11839
+ /**
11840
+ * @return {?}
11841
+ */
11842
+ CardProgressPortraitLibComponent.prototype.raiseTelemetry = /**
11843
+ * @return {?}
11844
+ */
11845
+ function () {
11846
+ this.events.raiseInteractTelemetry({
11847
+ type: 'click',
11848
+ subType: this.widgetType + "-" + this.widgetSubType,
11849
+ id: lodash.camelCase(this.widgetData.content.primaryCategory) + "-card",
11850
+ }, {
11851
+ id: this.widgetData.content.identifier,
11852
+ type: this.widgetData.content.primaryCategory,
11853
+ //context: this.widgetData.context,
11854
+ rollup: {},
11855
+ ver: "" + this.widgetData.content.version + '',
11856
+ }, {
11857
+ pageIdExt: lodash.camelCase(this.widgetData.content.primaryCategory) + "-card",
11858
+ module: lodash.camelCase(this.widgetData.content.primaryCategory),
11859
+ });
11860
+ };
11861
+ /**
11862
+ * @param {?} certificateData
11863
+ * @return {?}
11864
+ */
11865
+ CardProgressPortraitLibComponent.prototype.downloadCertificate = /**
11866
+ * @param {?} certificateData
11867
+ * @return {?}
11868
+ */
11869
+ function (certificateData) {
11870
+ var _this = this;
11871
+ this.events.raiseInteractTelemetry({
11872
+ type: utilsV2.WsEvents.EnumInteractTypes.CLICK,
11873
+ id: 'view-certificate',
11874
+ subType: utilsV2.WsEvents.EnumInteractSubTypes.CERTIFICATE,
11875
+ }, {
11876
+ id: certificateData.issuedCertificates[0].identifier,
11877
+ // id of the certificate
11878
+ type: utilsV2.WsEvents.EnumInteractSubTypes.CERTIFICATE,
11879
+ });
11880
+ if (certificateData.issuedCertificates.length > 0) {
11881
+ this.downloadCertificateLoading = true;
11882
+ /** @type {?} */
11883
+ var certData_1 = certificateData.issuedCertificates[0];
11884
+ this.certificateService.downloadCertificate_v2(certData_1.identifier).subscribe((/**
11885
+ * @param {?} res
11886
+ * @return {?}
11887
+ */
11888
+ function (res) {
11889
+ _this.downloadCertificateLoading = false;
11890
+ /** @type {?} */
11891
+ var cet = res.result.printUri;
11892
+ _this.dialog.open(CertificateDialogComponent, {
11893
+ width: '1300px',
11894
+ data: { cet: cet, certId: certData_1.identifier },
11895
+ });
11896
+ }));
11897
+ }
11898
+ else {
11899
+ this.downloadCertificateLoading = false;
11900
+ }
11901
+ };
11902
+ CardProgressPortraitLibComponent.decorators = [
11903
+ { type: core.Component, args: [{
11904
+ selector: 'sb-uic-card-progress-portrait-lib',
11905
+ template: "<ng-container *ngIf=\"!isCardLoading\">\n <mat-card class=\"card-portrait card-progress-portrait-lib cursor-pointer\" [ngClass]=\"widgetData?.cardCustomeClass ? widgetData?.cardCustomeClass : ''\" (click)=\"raiseTelemetry();getRedirectUrlData(widgetData?.content); $event.stopPropagation()\" >\n <div class=\"course_widget portrait_widget flex margin-bottom-xs\">\n <div class=\"flex flex-end flex-middle course_port\">\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 class=\"flex\">\n <div class=\"margin-right-s\">\n <ng-container *ngIf=\"widgetData?.content?.posterImage\">\n <div class=\" img-block-portrait position-relative\">\n <img mat-card-image [src]=\"widgetData?.content?.posterImage | pipePublicURL\" loading=\"lazy\"\n class=\"card-image ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData?.content?.name\" />\n <div class=\"duration-box right-corner-portrait\" *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-portrait\" *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 <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>\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-image 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-image ws-mat-primary-lite-background margin-remove\"\n [alt]=\"widgetData?.content?.name\" />\n </ng-template>\n </ng-container>\n </div>\n <div class=\"width-1-1\">\n <div [id]=\"'m-c-'+ widgetData?.content?.identifier\"\n class=\"portrait-subheading mat-subheading-2 title-text\">\n {{ widgetData?.content?.name }}\n </div>\n <div class=\"flex w-full flex-middle\">\n <div class=\"portrait_course_logo_box margin-right-xs\">\n <img [src]=\"widgetData?.content?.creatorLogo | pipePublicURL \" class=\"source-icon\" loading=\"lazy\" [wsUtilsDefaultThumbnail]=\"defaultSLogo\"\n [alt]=\"(widgetData?.content?.sourceName + '_' + widgetData?.content?.identifier)\" />\n </div>\n <span class=\"portrait-org-name font-normal mat-caption\">{{'cardcontentv2.by' | translate}} {{ (widgetData?.content?.organisation && widgetData?.content?.organisation[0]) ? widgetData?.content?.organisation[0] : 'Karmayogi Bharat' }}</span>\n </div>\n\n </div>\n </div>\n <ng-container *ngIf=\"widgetData?.content?.completionPercentage < 100\">\n <div class=\"flex flex-align-end progress-wrapper flex-between\" >\n <div class=\"progress-block\" >\n <div class=\"completed-time\">\n <mat-icon class=\"mat-icon schedule margin-right-xs\">schedule</mat-icon>\n <span>{{widgetData?.content?.completionPercentage}}%</span>\n </div>\n <div>\n <ng-container *ngIf=\"widgetData?.content?.completionStatus < 2\">\n <sb-uic-content-progress class=\"progress-bar-new\" [customClassName]=\"'course-progress-bar'\" *ngIf=\"widgetData?.content?.identifier\"\n [contentId]=\"widgetData?.content?.identifier\" [progress]=\"widgetData?.content?.completionPercentage\"\n [progressType]=\"'percentage'\">\n </sb-uic-content-progress>\n </ng-container>\n </div>\n </div>\n <div class=\"progress-btn\">\n <button class=\"resume-btn flex flex-middle flex-between\" [routerLink]=\"['/app/toc/',widgetData?.content?.identifier,'overview']\"\n [queryParams]=\"{primaryCategory: widgetData?.content?.primaryCategory}\" [state]=\"widgetData?.stateData\" \n [matTooltipPosition]=\"'below'\"\n [matTooltipDisabled]=\"(!widgetData?.content?.completionPercentage ? translateLabels('start', 'cardcontentv2') : translateLabels('resume', 'cardcontentv2')).length < 11\"\n matTooltip=\"{{!widgetData?.content?.completionPercentage ? translateLabels('start', 'cardcontentv2') : translateLabels('resume', 'cardcontentv2')}}\">\n <span class=\"textwrap margin-right-xs\">\n {{!widgetData?.content?.completionPercentage ? translateLabels('start', 'cardcontentv2') : translateLabels('resume', 'cardcontentv2')}}</span>\n <img class=\"stats-icon\" height=\"20\" width=\"20\" src=\"/assets/icons/home/play.svg\">\n </button>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"widgetData?.content?.completionPercentage === 100\">\n <div class=\"flex flex-align-end progress-wrapper flex-end mt-1\">\n <div class=\"progress-btn\">\n <button class=\"resume-btn flex flex-middle flex-between view-btn\" [ngClass]=\"{'disable-btn': downloadCertificateLoading || widgetData?.content?.issuedCertificates?.length === 0}\" (click)=\"!downloadCertificateLoading && downloadCertificate(widgetData?.content);$event.stopPropagation()\" \n [matTooltipPosition]=\"'below'\"\n [matTooltipDisabled]=\"(translateLabels('viewCertificate', 'cardcontentv2')).length < 11\"\n matTooltip=\"{{'cardcontentv2.viewCertificate' | translate }}\">\n <span class=\"margin-right-xs textwrap\">{{'cardcontentv2.viewCertificate' | translate }}</span>\n <img class=\"stats-icon\" *ngIf=\"!downloadCertificateLoading\" height=\"20\" width=\"20\" src=\"/assets/icons/home/eye-white.svg\">\n <div class=\"center flex flex-middle\" *ngIf=\"downloadCertificateLoading\">\n <mat-spinner strokeWidth=\"2\" stroke=\"'red'\" class=\"white-spinner\" [diameter]=\"16\"></mat-spinner>\n </div>\n </button>\n </div>\n </div>\n </ng-container>\n </mat-card>\n</ng-container>\n\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>\n\n<ng-container *ngIf=\"isCardLoading\">\n <mat-card class=\"card-portrait\" [ngClass]=\"widgetData.cardCustomeClass ? widgetData.cardCustomeClass : ''\">\n <div class=\"margin-bottom-xs\">\n <ng-container>\n <sb-uic-skeleton-loader [width]=\"'147px'\" [height]=\"'26px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\n </ng-container>\n </div>\n <div class=\"flex\">\n <div class=\"margin-right-s\">\n <ng-container>\n <sb-uic-skeleton-loader [width]=\"'147px'\" [height]=\"'98px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\n </ng-container>\n </div>\n <div class=\"width-1-1\">\n <div class=\"portrait-subheading title-text\">\n <sb-uic-skeleton-loader [bindingClass]=\"'flex rounded width-1-1'\"></sb-uic-skeleton-loader>\n </div>\n <div class=\"flex w-full flex-wrap flex-middle\">\n <div class=\" margin-right-xs\">\n <sb-uic-skeleton-loader [width]=\"'24px'\" [height]=\"'24px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\n </div>\n <span class=\"\"><sb-uic-skeleton-loader [width]=\"'133px'\" [height]=\"'12px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader></span>\n </div>\n <div class=\"portrait_widget flex margin-top-xs\">\n <div class=\"flex flex-end flex-middle\">\n <sb-uic-skeleton-loader [width]=\"'65px'\" [height]=\"'12px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n </div>\n <div class=\"flex flex-align-end progress-wrapper flex-between\">\n <div class=\"progress-block\">\n <div class=\"completed-time\">\n <sb-uic-skeleton-loader [width]=\"'211px'\" [height]=\"'16px'\" [bindingClass]=\"'flex rounded margin-top-xs md:w-211'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n <div class=\"progress-btn\">\n <sb-uic-skeleton-loader [width]=\"'117px'\" [height]=\"'32px'\" [bindingClass]=\"'flex rounded margin-top-xs'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n </mat-card>\n</ng-container>",
11906
+ styles: [".card-portrait{border-radius:12px;border:1px solid rgba(0,0,0,.08);opacity:1;width:318px;min-height:154px;padding:16px}.card-portrait .img-block-portrait{line-height:10px}.card-portrait .card-image{border-radius:8px;opacity:1;background-size:100%;width:147px;height:100px}.card-portrait .portrait-subheading{opacity:1;color:rgba(0,0,0,.87);font-weight:700;font-style:normal;letter-spacing:.25px;text-align:left;word-break:break-word;white-space:initial;margin:0 0 8px;position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:40px}.card-portrait .portrait_course_logo_box img{padding:3px;display:inline-block;width:24px;height:24px;border:1px solid #d6d6d6;border-radius:4px;box-sizing:border-box}.card-portrait span.portrait-org-name{width:75%;word-break:break-all;white-space:initial;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.card-portrait .portrait_widget{align-items:center;margin-top:0}.card-portrait .portrait_widget .course_port{border:1px solid #ef951e;padding:4px 8px;align-items:center;border-radius:16px}.card-portrait .portrait_widget .video-icon{opacity:1;color:#ef951e;width:15px;height:15px;font-size:15px}.card-portrait .portrait_widget .portrait-category{color:rgba(0,0,0,.6)!important;font-size:.75rem;opacity:1;font-family:Lato-Regular;font-weight:400;font-style:normal;letter-spacing:.25px;text-align:left;line-height:20px}.card-portrait .progress-wrapper .progress-block{width:60%}.card-portrait .progress-wrapper .progress-block .completed-time{color:#ef951e;display:flex;padding:8px 0}.card-portrait .progress-wrapper .progress-block .completed-time mat-icon{width:1rem;height:1rem;font-size:1rem}.card-portrait .progress-wrapper .progress-block .completed-time span{opacity:1;color:rgba(0,0,0,.87);font-family:Lato-Regular;font-size:.75rem;font-weight:400;font-style:normal;letter-spacing:.25px;text-align:left;line-height:16px}.card-portrait .progress-wrapper .progress-btn .resume-btn{opacity:1;color:#fff;font-family:Lato-Bold;font-size:14px;font-weight:700;font-style:normal;letter-spacing:.5px;text-align:left;line-height:20px;background:#1a4ca1;border-radius:63px;padding:6px 16px;border:none;width:100%;cursor:pointer}.card-portrait .progress-wrapper .progress-btn .resume-btn .textwrap{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:82px}.card-portrait .progress-wrapper .progress-btn .resume-btn:hover{background-color:#253379}.card-portrait .progress-bar-new{color:#ef951e!important;height:10px;border-radius:5px}.card-portrait .rating-session mat-icon{font-size:20px;height:20px;width:20px;color:#ef951e}.card-portrait .rating-session .rating-number{font-size:14px}.card-portrait .rating-session .most-enrolled-text{font-size:10px;font-weight:400;padding:4px;background:#ffea9e;border-radius:4px;line-height:12px}.card-portrait .right-corner-portrait{right:8px;bottom:8px}.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}.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}"]
11907
+ }] }
11908
+ ];
11909
+ /** @nocollapse */
11910
+ CardProgressPortraitLibComponent.ctorParameters = function () { return [
11911
+ { type: material.MatSnackBar },
11912
+ { type: core$1.TranslateService },
11913
+ { type: utilsV2.EventService },
11914
+ { type: MultilingualTranslationsService },
11915
+ { type: utilsV2.ConfigurationsService },
11916
+ { type: WidgetContentService },
11917
+ { type: CertificateService },
11918
+ { type: material.MatDialog }
11919
+ ]; };
11920
+ CardProgressPortraitLibComponent.propDecorators = {
11921
+ widgetData: [{ type: core.Input }],
11922
+ isLiveOrMarkForDeletion: [{ type: core.Input }],
11923
+ showIntranetContent: [{ type: core.Input }],
11924
+ isIntranetAllowedSettings: [{ type: core.Input }],
11925
+ isCardLoading: [{ type: core.Input }],
11926
+ contentData: [{ type: core.Output }],
11927
+ cbPlanMapData: [{ type: core.Input }]
11928
+ };
11929
+ return CardProgressPortraitLibComponent;
11930
+ }());
11931
+ if (false) {
11932
+ /** @type {?} */
11933
+ CardProgressPortraitLibComponent.prototype.widgetData;
11934
+ /** @type {?} */
11935
+ CardProgressPortraitLibComponent.prototype.isLiveOrMarkForDeletion;
11936
+ /** @type {?} */
11937
+ CardProgressPortraitLibComponent.prototype.showIntranetContent;
11938
+ /** @type {?} */
11939
+ CardProgressPortraitLibComponent.prototype.isIntranetAllowedSettings;
11940
+ /** @type {?} */
11941
+ CardProgressPortraitLibComponent.prototype.isCardLoading;
11942
+ /** @type {?} */
11943
+ CardProgressPortraitLibComponent.prototype.contentData;
11944
+ /** @type {?} */
11945
+ CardProgressPortraitLibComponent.prototype.cbPlanMapData;
11946
+ /** @type {?} */
11947
+ CardProgressPortraitLibComponent.prototype.isCardFlipped;
11948
+ /** @type {?} */
11949
+ CardProgressPortraitLibComponent.prototype.acbpConstants;
11950
+ /** @type {?} */
11951
+ CardProgressPortraitLibComponent.prototype.defaultThumbnail;
11952
+ /** @type {?} */
11953
+ CardProgressPortraitLibComponent.prototype.sourceLogos;
11954
+ /** @type {?} */
11955
+ CardProgressPortraitLibComponent.prototype.defaultSLogo;
11956
+ /** @type {?} */
11957
+ CardProgressPortraitLibComponent.prototype.showFlip;
11958
+ /** @type {?} */
11959
+ CardProgressPortraitLibComponent.prototype.widgetType;
11960
+ /** @type {?} */
11961
+ CardProgressPortraitLibComponent.prototype.widgetSubType;
11962
+ /** @type {?} */
11963
+ CardProgressPortraitLibComponent.prototype.downloadCertificateLoading;
11964
+ /**
11965
+ * @type {?}
11966
+ * @private
11967
+ */
11968
+ CardProgressPortraitLibComponent.prototype.snackBar;
11969
+ /**
11970
+ * @type {?}
11971
+ * @private
11972
+ */
11973
+ CardProgressPortraitLibComponent.prototype.translate;
11974
+ /**
11975
+ * @type {?}
11976
+ * @private
11977
+ */
11978
+ CardProgressPortraitLibComponent.prototype.events;
11979
+ /**
11980
+ * @type {?}
11981
+ * @private
11982
+ */
11983
+ CardProgressPortraitLibComponent.prototype.langtranslations;
11984
+ /**
11985
+ * @type {?}
11986
+ * @private
11987
+ */
11988
+ CardProgressPortraitLibComponent.prototype.configSvc;
11989
+ /**
11990
+ * @type {?}
11991
+ * @private
11992
+ */
11993
+ CardProgressPortraitLibComponent.prototype.contSvc;
11994
+ /**
11995
+ * @type {?}
11996
+ * @private
11997
+ */
11998
+ CardProgressPortraitLibComponent.prototype.certificateService;
11999
+ /**
12000
+ * @type {?}
12001
+ * @private
12002
+ */
12003
+ CardProgressPortraitLibComponent.prototype.dialog;
12004
+ }
12005
+
12006
+ /**
12007
+ * @fileoverview added by tsickle
12008
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
12009
+ */
12010
+ var ContentProgressComponent = /** @class */ (function () {
12011
+ function ContentProgressComponent() {
12012
+ this.contentId = '';
12013
+ this.progress = 0;
12014
+ this.progressType = '';
12015
+ this.forPreview = false;
12016
+ this.className = '';
12017
+ this.customClassName = 'accent-progress';
12018
+ this.rendom = Math.random();
12019
+ this.id = "progress_" + Math.random();
12020
+ if (this.contentId) {
12021
+ this.id = this.contentId;
12022
+ }
12023
+ }
12024
+ /**
12025
+ * @return {?}
12026
+ */
12027
+ ContentProgressComponent.prototype.ngOnChanges = /**
12028
+ * @return {?}
12029
+ */
12030
+ function () {
12031
+ if (this.contentId && !this.progress && !this.forPreview) {
12032
+ // this.progressSvc.getProgressFor(this.contentId).subscribe(data => {
12033
+ // this.progress = data
12034
+ // if (this.progress) {
12035
+ // this.progress = Math.round(this.progress * 10000) / 100
12036
+ // }
12037
+ // })
12038
+ }
12039
+ if (this.progress) {
12040
+ if (this.progressType === 'percentage') {
12041
+ this.progress = this.progress;
12042
+ }
12043
+ else {
12044
+ this.progress = Math.round(this.progress * 10000) / 100;
12045
+ }
12046
+ }
12047
+ };
12048
+ ContentProgressComponent.decorators = [
12049
+ { type: core.Component, args: [{
12050
+ selector: 'sb-uic-content-progress',
12051
+ template: "<mat-progress-bar [mode]=\"'determinate'\" [matTooltip]=\"progress + ' %'\" [value]=\"progress\" class=\"new-w content-progress {{customClassName}}\"\n [attr.aria-labelledby]=\"'m-c-'+ contentId\" [ngClass]=\"{ 'visibility-0': progress === undefined, 'thick': className}\"\n i18n-aria-label> {{ progress }} % </mat-progress-bar>",
12052
+ /* tslint:disable */
12053
+ host: {
12054
+ // Sets the role for this component to "progressbar"
12055
+ role: 'progressbar',
12056
+ // Sets the minimum and maximum values for the progressbar role.
12057
+ 'aria-valuemin': '0',
12058
+ 'aria-valuemax': '100',
12059
+ 'title': 'progres',
12060
+ // Binding that updates the current value of the progressbar.
12061
+ '[attr.aria-valuenow]': 'progress',
12062
+ },
12063
+ styles: [".visibility-0{display:none}::ng-deep.mat-progress-bar.thick{height:10px}::ng-deep.theme-igot.day-mode .mat-progress-bar-fill::after{background:no-repeat padding-box #34d6a4}::ng-deep.theme-igot.day-mode .mat-progress-bar-background{fill:rgba(0,0,0,.001)!important}::ng-deep.theme-igot.day-mode .mat-progress-bar-buffer{background-color:rgba(0,0,0,.1)!important}::ng-deep .content-progress .mat-progress-bar-fill::after{background:#f69953!important}::ng-deep.theme-igot.day-mode .viewer-progress .mat-progress-bar-background{fill:rgba(0,0,0,.1)!important}::ng-deep.theme-igot.day-mode .viewer-progress .mat-progress-bar-buffer{background-color:rgba(0,0,0,.1)!important}::ng-deep.mat-progress-bar.viewer-progress{height:4px;border-radius:5px}"]
12064
+ }] }
12065
+ ];
12066
+ /** @nocollapse */
12067
+ ContentProgressComponent.ctorParameters = function () { return []; };
12068
+ ContentProgressComponent.propDecorators = {
12069
+ contentId: [{ type: core.Input }],
12070
+ progress: [{ type: core.Input }],
12071
+ progressType: [{ type: core.Input }],
12072
+ forPreview: [{ type: core.Input }],
12073
+ className: [{ type: core.Input }],
12074
+ customClassName: [{ type: core.Input }],
12075
+ id: [{ type: core.HostBinding, args: ['id',] }]
12076
+ };
12077
+ return ContentProgressComponent;
12078
+ }());
12079
+ if (false) {
12080
+ /** @type {?} */
12081
+ ContentProgressComponent.prototype.contentId;
12082
+ /** @type {?} */
12083
+ ContentProgressComponent.prototype.progress;
12084
+ /** @type {?} */
12085
+ ContentProgressComponent.prototype.progressType;
12086
+ /** @type {?} */
12087
+ ContentProgressComponent.prototype.forPreview;
12088
+ /** @type {?} */
12089
+ ContentProgressComponent.prototype.className;
12090
+ /** @type {?} */
12091
+ ContentProgressComponent.prototype.customClassName;
12092
+ /** @type {?} */
12093
+ ContentProgressComponent.prototype.rendom;
12094
+ /** @type {?} */
12095
+ ContentProgressComponent.prototype.id;
12096
+ }
12097
+
12098
+ /**
12099
+ * @fileoverview added by tsickle
12100
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
12101
+ */
12102
+ var ContentProgressModule = /** @class */ (function () {
12103
+ function ContentProgressModule() {
12104
+ }
12105
+ ContentProgressModule.decorators = [
12106
+ { type: core.NgModule, args: [{
12107
+ declarations: [ContentProgressComponent],
12108
+ imports: [
12109
+ common.CommonModule,
12110
+ material.MatProgressBarModule,
12111
+ material.MatTooltipModule,
12112
+ ],
12113
+ exports: [ContentProgressComponent],
12114
+ },] }
12115
+ ];
12116
+ return ContentProgressModule;
12117
+ }());
12118
+
12119
+ /**
12120
+ * @fileoverview added by tsickle
12121
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
12122
+ */
12123
+ var ɵ0$4 = HttpLoaderFactory;
12124
+ var DialogComponentsModule = /** @class */ (function () {
12125
+ function DialogComponentsModule() {
12126
+ }
12127
+ DialogComponentsModule.decorators = [
12128
+ { type: core.NgModule, args: [{
12129
+ declarations: [
12130
+ CertificateDialogComponent
12131
+ ],
12132
+ imports: [
12133
+ common.CommonModule,
12134
+ material.MatMenuModule,
12135
+ material.MatCardModule,
12136
+ material.MatIconModule,
12137
+ material.MatDialogModule,
12138
+ utilsV2.PipeSafeSanitizerModule,
12139
+ core$1.TranslateModule.forRoot({
12140
+ loader: {
12141
+ provide: core$1.TranslateLoader,
12142
+ useFactory: ɵ0$4,
12143
+ deps: [http.HttpClient],
12144
+ },
12145
+ }),
12146
+ ],
12147
+ exports: [
12148
+ CertificateDialogComponent
12149
+ ],
12150
+ entryComponents: [CertificateDialogComponent],
12151
+ },] }
12152
+ ];
12153
+ return DialogComponentsModule;
12154
+ }());
12155
+
12156
+ /**
12157
+ * @fileoverview added by tsickle
12158
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
12159
+ */
12160
+ var CardMdoChannelV1Component = /** @class */ (function () {
12161
+ function CardMdoChannelV1Component(events, translate, langtranslations, configSvc, contSvc, router) {
12162
+ var _this = this;
12163
+ this.events = events;
12164
+ this.translate = translate;
12165
+ this.langtranslations = langtranslations;
12166
+ this.configSvc = configSvc;
12167
+ this.contSvc = contSvc;
12168
+ this.router = router;
12169
+ this.channelData = new core.EventEmitter();
12170
+ this.emitTelemetry = new core.EventEmitter();
12171
+ this.widgetType = '';
12172
+ this.widgetSubType = '';
12173
+ this.langtranslations.languageSelectedObservable.subscribe((/**
12174
+ * @return {?}
12175
+ */
12176
+ function () {
12177
+ if (localStorage.getItem('websiteLanguage')) {
12178
+ _this.translate.setDefaultLang('en');
12179
+ /** @type {?} */
12180
+ var lang = (/** @type {?} */ (localStorage.getItem('websiteLanguage')));
12181
+ _this.translate.use(lang);
12182
+ }
12183
+ }));
12184
+ }
12185
+ /**
12186
+ * @return {?}
12187
+ */
12188
+ CardMdoChannelV1Component.prototype.ngOnInit = /**
12189
+ * @return {?}
12190
+ */
12191
+ function () {
12192
+ /** @type {?} */
12193
+ var instanceConfig = this.configSvc.instanceConfig;
12194
+ if (instanceConfig) {
12195
+ this.defaultThumbnail = instanceConfig.logos.defaultContent || '';
12196
+ this.sourceLogos = instanceConfig.sources;
12197
+ this.defaultSLogo = instanceConfig.logos.defaultSourceLogo || '';
12198
+ }
12199
+ else {
12200
+ this.defaultThumbnail = '/assets/instances/eagle/app_logos/default.png';
12201
+ this.defaultSLogo = '/assets/instances/eagle/app_logos/KarmayogiBharat_Logo.svg';
12202
+ }
12203
+ };
12204
+ /**
12205
+ * @param {?} contentData
12206
+ * @return {?}
12207
+ */
12208
+ CardMdoChannelV1Component.prototype.raiseTelemetry = /**
12209
+ * @param {?} contentData
12210
+ * @return {?}
12211
+ */
12212
+ function (contentData) {
12213
+ this.emitTelemetry.emit(contentData);
12214
+ if (this.widgetData) {
12215
+ contentData['typeOfTelemetry'] = 'mdo-channel';
12216
+ }
12217
+ this.contSvc.changeTelemetryData(contentData);
12218
+ };
12219
+ /**
12220
+ * @param {?} channeldata
12221
+ * @return {?}
12222
+ */
12223
+ CardMdoChannelV1Component.prototype.channelClick = /**
12224
+ * @param {?} channeldata
12225
+ * @return {?}
12226
+ */
12227
+ function (channeldata) {
12228
+ this.channelData.emit(channeldata);
12229
+ };
12230
+ /**
12231
+ * @param {?} content
12232
+ * @return {?}
12233
+ */
12234
+ CardMdoChannelV1Component.prototype.redirectTo = /**
12235
+ * @param {?} content
12236
+ * @return {?}
12237
+ */
12238
+ function (content) {
12239
+ this.router.navigate(["/app/learn/mdo-channels/" + content.orgName + "/" + content.identifier + "/micro-sites"]);
12240
+ };
12241
+ CardMdoChannelV1Component.decorators = [
12242
+ { type: core.Component, args: [{
12243
+ selector: 'sb-uic-card-mdo-channel-v1',
12244
+ template: "<mat-card class=\"channels-card card-channels-container mr-5 padding-remove cursor-pointer\">\n <div class=\"display-contents\">\n <ng-container *ngIf=\"widgetData?.content\">\n <a (click)=\"raiseTelemetry(widgetData?.content); redirectTo(widgetData?.content); $event.stopPropagation()\"\n i18n-aria-label>\n <ng-container>\n <mat-card-content class=\"min-top\">\n <div class=\"flex flex-col h-full\">\n <div class=\"image-container\">\n <ng-container *ngIf=\"widgetData?.content?.imgUrl; else defaultImg\">\n <img mat-card-image [src]=\"widgetData?.content?.imgUrl\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData?.content?.orgName\" />\n </ng-container>\n <ng-template #defaultImg>\n <sb-uic-avatar-photo [randomColor]=\"true\" [name]=\"widgetData?.content?.orgName\" [photoUrl]=\"widgetData?.content?.imgUrl\" size=\"m-side-rating\">\n </sb-uic-avatar-photo>\n </ng-template>\n </div>\n <div class=\"flex title-container px-2\">\n <div [id]=\"'m-c-'+ widgetData?.content?.identifier\"\n class=\"flex-1 text-center mat-subheading-2 title-text ws-mat-black-text\">\n {{ widgetData?.content?.orgName }}\n </div>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n </a>\n </ng-container>\n </div>\n</mat-card>",
12245
+ styles: [".card-channels-container{position:relative;width:245px;box-sizing:border-box;box-shadow:0 10px 30px rgba(153,153,153,.2);overflow:hidden;min-height:156px;height:156px;max-height:156px;margin:20px 8px;background:#7faeff!important;border-radius:12px;padding:4px!important}.card-channels-container .min-top{background:inherit;margin-bottom:0;height:inherit}.card-channels-container .image-container{background-color:#fff;width:inherit;height:86px;max-height:86px;overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:12px}.card-channels-container .card-img{max-height:62px;min-height:62px;display:block;-o-object-fit:fill;object-fit:contain}.card-channels-container .mat-subheading-1{font:600 14px/24px Montserrat}.card-channels-container .title-container{background:inherit}.card-channels-container .description-text{position:relative;overflow:hidden;height:51px}.card-channels-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}"]
12246
+ }] }
12247
+ ];
12248
+ /** @nocollapse */
12249
+ CardMdoChannelV1Component.ctorParameters = function () { return [
11020
12250
  { type: utilsV2.EventService },
11021
12251
  { type: core$1.TranslateService },
11022
12252
  { type: utilsV2.MultilingualTranslationsService },
@@ -11280,6 +12510,7 @@
11280
12510
  * @fileoverview added by tsickle
11281
12511
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
11282
12512
  */
12513
+ var ɵ0$5 = HttpLoaderFactory;
11283
12514
  var CardsModule = /** @class */ (function () {
11284
12515
  function CardsModule() {
11285
12516
  }
@@ -11295,21 +12526,36 @@
11295
12526
  CardWideV2Component,
11296
12527
  CardKarmaProgramsComponent,
11297
12528
  CardKarmaProgramsV2Component,
12529
+ ProviderCardComponent,
11298
12530
  CardPortraitExtComponent,
12531
+ CardAssessmentComponent,
12532
+ CardProgressPortraitLibComponent,
11299
12533
  CardMdoChannelV1Component
11300
12534
  ],
11301
12535
  imports: [
11302
12536
  common.CommonModule,
11303
12537
  material.MatCardModule,
11304
12538
  material.MatButtonModule,
12539
+ material.MatTooltipModule,
11305
12540
  material.MatIconModule,
11306
12541
  material.MatTooltipModule,
11307
12542
  router.RouterModule,
11308
12543
  PipePublicURLModule,
12544
+ ObjectToArrayPipeModule,
11309
12545
  DisplayContentTypeLibModule,
11310
12546
  DefaultThumbnailModule,
11311
12547
  PipeDurationTransformModule,
11312
12548
  SkeletonLoaderLibModule,
12549
+ material.MatProgressSpinnerModule,
12550
+ ContentProgressModule,
12551
+ DialogComponentsModule,
12552
+ core$1.TranslateModule.forRoot({
12553
+ loader: {
12554
+ provide: core$1.TranslateLoader,
12555
+ useFactory: ɵ0$5,
12556
+ deps: [http.HttpClient],
12557
+ },
12558
+ }),
11313
12559
  AvatarPhotoLibModule
11314
12560
  ],
11315
12561
  entryComponents: [CardsComponent],
@@ -11323,7 +12569,7 @@
11323
12569
  CardMDOChannelComponent,
11324
12570
  CardWideV2Component,
11325
12571
  CardKarmaProgramsComponent,
11326
- CardKarmaProgramsV2Component
12572
+ CardKarmaProgramsV2Component,
11327
12573
  ],
11328
12574
  },] }
11329
12575
  ];
@@ -12420,7 +13666,7 @@
12420
13666
  */
12421
13667
  /** @type {?} */
12422
13668
  var PROXY_SLAG_V8 = '/apis/proxies/v8';
12423
- var ɵ0$3 = /**
13669
+ var ɵ0$6 = /**
12424
13670
  * @param {?} contentId
12425
13671
  * @param {?} contentType
12426
13672
  * @param {?} userId
@@ -12428,7 +13674,7 @@
12428
13674
  */
12429
13675
  function (contentId, contentType, userId) {
12430
13676
  return PROXY_SLAG_V8 + "/ratings/v1/read/" + contentId + "/" + contentType + "/" + userId;
12431
- }, ɵ1$2 = /**
13677
+ }, ɵ1$3 = /**
12432
13678
  * @param {?} contentId
12433
13679
  * @param {?} contentType
12434
13680
  * @return {?}
@@ -12445,9 +13691,9 @@
12445
13691
  };
12446
13692
  /** @type {?} */
12447
13693
  var API_END_POINTS$3 = {
12448
- GET_RATING: (ɵ0$3),
13694
+ GET_RATING: (ɵ0$6),
12449
13695
  ADD_OR_UPDATE: PROXY_SLAG_V8 + "/ratings/v1/upsert",
12450
- GET_RATING_SUMMARY: (ɵ1$2),
13696
+ GET_RATING_SUMMARY: (ɵ1$3),
12451
13697
  GET_RATING_LOOKUP: PROXY_SLAG_V8 + "/ratings/v1/ratingLookUp",
12452
13698
  GET_AUTHOR_REPLY: (ɵ2$2),
12453
13699
  POST_AUTHOR_REPLY: PROXY_SLAG_V8 + "/ratings/v2/read",
@@ -13209,6 +14455,7 @@
13209
14455
  exports.ConsumptionComponent = ConsumptionComponent;
13210
14456
  exports.ConsumptionModule = ConsumptionModule;
13211
14457
  exports.ConsumptionService = ConsumptionService;
14458
+ exports.ContentProgressModule = ContentProgressModule;
13212
14459
  exports.ContentStripWithTabsLibModule = ContentStripWithTabsLibModule;
13213
14460
  exports.DataPointsModule = DataPointsModule;
13214
14461
  exports.HttpLoaderFactory = HttpLoaderFactory;
@@ -13224,33 +14471,42 @@
13224
14471
  exports.ɵba = CardWideV2Component;
13225
14472
  exports.ɵbb = CardKarmaProgramsComponent;
13226
14473
  exports.ɵbc = CardKarmaProgramsV2Component;
13227
- exports.ɵbd = CardPortraitExtComponent;
13228
- exports.ɵbe = CardMdoChannelV1Component;
13229
- exports.ɵbf = PipePublicURLModule;
13230
- exports.ɵbg = PipePublicURL;
13231
- exports.ɵbh = DisplayContentTypeLibModule;
13232
- exports.ɵbi = DisplayContentTypeLibComponent;
13233
- exports.ɵbj = DefaultThumbnailModule;
13234
- exports.ɵbk = DefaultThumbnailDirective;
13235
- exports.ɵbl = PipeDurationTransformModule;
13236
- exports.ɵbm = PipeDurationTransformPipe;
13237
- exports.ɵbn = AvatarPhotoLibModule;
13238
- exports.ɵbo = AvatarPhotoLibComponent;
13239
- exports.ɵbp = CompetencyPassbookComponent;
13240
- exports.ɵbq = CompetencyPassbookService;
13241
- exports.ɵbr = PillsModule;
13242
- exports.ɵbs = PillsComponent;
13243
- exports.ɵbt = CompetencyPassbookMdoComponent;
13244
- exports.ɵbu = CompetencyPassbookMdoService;
13245
- exports.ɵbv = UserContentRatingLibComponent;
13246
- exports.ɵbw = ScrollableItemDirective;
13247
- exports.ɵbx = RatingService;
13248
- exports.ɵby = UserContentRatingLibService;
13249
- exports.ɵbz = MyHammerConfig$1;
14474
+ exports.ɵbd = ProviderCardComponent;
14475
+ exports.ɵbe = CardPortraitExtComponent;
14476
+ exports.ɵbf = CardAssessmentComponent;
14477
+ exports.ɵbg = CardProgressPortraitLibComponent;
14478
+ exports.ɵbh = CertificateService;
14479
+ exports.ɵbi = CardMdoChannelV1Component;
14480
+ exports.ɵbj = PipePublicURLModule;
14481
+ exports.ɵbk = PipePublicURL;
14482
+ exports.ɵbl = ObjectToArrayPipeModule;
14483
+ exports.ɵbm = ObjectToArrayPipe;
14484
+ exports.ɵbn = DisplayContentTypeLibModule;
14485
+ exports.ɵbo = DisplayContentTypeLibComponent;
14486
+ exports.ɵbp = DefaultThumbnailModule;
14487
+ exports.ɵbq = DefaultThumbnailDirective;
14488
+ exports.ɵbr = PipeDurationTransformModule;
14489
+ exports.ɵbs = PipeDurationTransformPipe;
14490
+ exports.ɵbt = ContentProgressComponent;
14491
+ exports.ɵbu = DialogComponentsModule;
14492
+ exports.ɵbv = CertificateDialogComponent;
14493
+ exports.ɵbw = AvatarPhotoLibModule;
14494
+ exports.ɵbx = AvatarPhotoLibComponent;
14495
+ exports.ɵby = CompetencyPassbookComponent;
14496
+ exports.ɵbz = CompetencyPassbookService;
13250
14497
  exports.ɵc = MultilingualTranslationsService;
13251
- exports.ɵca = SlidersNgContentLibModule;
13252
- exports.ɵcb = SlidersNgContentLibComponent;
13253
- exports.ɵcc = ScrollableItemModule;
14498
+ exports.ɵca = PillsModule;
14499
+ exports.ɵcb = PillsComponent;
14500
+ exports.ɵcc = CompetencyPassbookMdoComponent;
14501
+ exports.ɵcd = CompetencyPassbookMdoService;
14502
+ exports.ɵce = UserContentRatingLibComponent;
14503
+ exports.ɵcf = ScrollableItemDirective;
14504
+ exports.ɵcg = RatingService;
14505
+ exports.ɵch = UserContentRatingLibService;
14506
+ exports.ɵci = MyHammerConfig$1;
14507
+ exports.ɵcj = SlidersNgContentLibModule;
14508
+ exports.ɵck = SlidersNgContentLibComponent;
14509
+ exports.ɵcl = ScrollableItemModule;
13254
14510
  exports.ɵd = ConfigurationsService;
13255
14511
  exports.ɵe = HorizontalScrollerV2Module;
13256
14512
  exports.ɵf = HorizontalScrollerV2Component;