@sunbird-cb/consumption 0.0.27 → 0.0.28

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 (25) hide show
  1. package/bundles/sunbird-cb-consumption.umd.js +86 -76
  2. package/bundles/sunbird-cb-consumption.umd.js.map +1 -1
  3. package/bundles/sunbird-cb-consumption.umd.min.js +1 -1
  4. package/bundles/sunbird-cb-consumption.umd.min.js.map +1 -1
  5. package/esm2015/lib/_common/cards/card-karma-programs/card-karma-programs.component.js +33 -26
  6. package/esm2015/lib/_common/cards/card-karma-programs-v2/card-karma-programs-v2.component.js +23 -23
  7. package/esm2015/lib/_common/cards/card-landscape/card-landscape.component.js +10 -22
  8. package/esm2015/lib/_common/cards/card-portrait/card-portrait.component.js +3 -3
  9. package/esm2015/lib/_common/cards/cards.component.js +2 -2
  10. package/esm2015/lib/_common/horizontal-scroller-v2/horizontal-scroller-v2.component.js +20 -5
  11. package/esm5/lib/_common/cards/card-karma-programs/card-karma-programs.component.js +35 -29
  12. package/esm5/lib/_common/cards/card-karma-programs-v2/card-karma-programs-v2.component.js +24 -24
  13. package/esm5/lib/_common/cards/card-landscape/card-landscape.component.js +11 -22
  14. package/esm5/lib/_common/cards/card-portrait/card-portrait.component.js +3 -3
  15. package/esm5/lib/_common/cards/cards.component.js +2 -2
  16. package/esm5/lib/_common/horizontal-scroller-v2/horizontal-scroller-v2.component.js +20 -5
  17. package/fesm2015/sunbird-cb-consumption.js +82 -72
  18. package/fesm2015/sunbird-cb-consumption.js.map +1 -1
  19. package/fesm5/sunbird-cb-consumption.js +86 -76
  20. package/fesm5/sunbird-cb-consumption.js.map +1 -1
  21. package/lib/_common/cards/card-karma-programs/card-karma-programs.component.d.ts +6 -2
  22. package/lib/_common/cards/card-karma-programs-v2/card-karma-programs-v2.component.d.ts +5 -2
  23. package/lib/_common/cards/card-landscape/card-landscape.component.d.ts +2 -1
  24. package/package.json +1 -1
  25. package/sunbird-cb-consumption.metadata.json +1 -1
@@ -3,21 +3,26 @@
3
3
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
4
  */
5
5
  import { Component, EventEmitter, Input, Output } from '@angular/core';
6
- import * as _ from "lodash";
7
6
  import { TranslateService } from '@ngx-translate/core';
8
7
  import { ConfigurationsService, EventService, MultilingualTranslationsService, NsContent } from '@sunbird-cb/utils-v2';
8
+ import { Router } from '@angular/router';
9
+ import { WidgetContentService } from '../../../_services/widget-content.service';
9
10
  export class CardKarmaProgramsComponent {
10
11
  /**
11
12
  * @param {?} events
12
13
  * @param {?} translate
13
14
  * @param {?} langtranslations
14
15
  * @param {?} configSvc
16
+ * @param {?} contSvc
17
+ * @param {?} router
15
18
  */
16
- constructor(events, translate, langtranslations, configSvc) {
19
+ constructor(events, translate, langtranslations, configSvc, contSvc, router) {
17
20
  this.events = events;
18
21
  this.translate = translate;
19
22
  this.langtranslations = langtranslations;
20
23
  this.configSvc = configSvc;
24
+ this.contSvc = contSvc;
25
+ this.router = router;
21
26
  this.randomColorApply = false;
22
27
  this.userData = new EventEmitter();
23
28
  this.widgetType = '';
@@ -75,27 +80,6 @@ export class CardKarmaProgramsComponent {
75
80
  }
76
81
  }
77
82
  }
78
- /**
79
- * @return {?}
80
- */
81
- raiseTelemetry() {
82
- // if(this.forPreview){
83
- // return
84
- // }
85
- this.events.raiseInteractTelemetry({
86
- type: 'click',
87
- subType: `${this.widgetType}-${this.widgetSubType}`,
88
- id: `${_.camelCase(this.widgetData.content.userId)}-card`,
89
- }, {
90
- id: this.widgetData.content.userId,
91
- // type: this.widgetData.user.primaryCategory,
92
- //context: this.widgetData.context,
93
- rollup: {},
94
- }, {
95
- pageIdExt: `${_.camelCase('user')}-card`,
96
- module: _.camelCase('user'),
97
- });
98
- }
99
83
  /**
100
84
  * @return {?}
101
85
  */
@@ -104,11 +88,22 @@ export class CardKarmaProgramsComponent {
104
88
  const randomIndex1 = Math.floor(Math.random() * Math.floor(this.randomColors.length));
105
89
  return this.randomColors[randomIndex1];
106
90
  }
91
+ /**
92
+ * @param {?} data
93
+ * @return {?}
94
+ */
95
+ redirectTo(data) {
96
+ if (this.widgetData && this.widgetData.context && this.widgetData.context.pageSection) {
97
+ data['typeOfTelemetry'] = 'karma-programs';
98
+ }
99
+ this.contSvc.changeTelemetryData(data);
100
+ this.router.navigate([`/app/learn/karma-programs/${data.title}/${data.playListKey}/${data.orgId}/micro-sites`]);
101
+ }
107
102
  }
108
103
  CardKarmaProgramsComponent.decorators = [
109
104
  { type: Component, args: [{
110
105
  selector: 'sb-uic-card-karma-programs',
111
- template: "<mat-card class=\"channels-card card-channels-container mr-5 padding-remove cursor-pointer\" [ngStyle]=\"{'background': widgetData?.content?.bgColor}\">\n <div class=\"display-contents\">\n <ng-container *ngIf=\"widgetData.content\">\n <a (click)=\"raiseTelemetry();$event.stopPropagation()\" \n [routerLink]=\"'/app/learn/karma-programs/'+ widgetData?.content?.title+ '/' + widgetData?.content?.playListKey+ '/' +widgetData?.content?.orgId+'/micro-sites'\" role=\"link\"\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.posterImage\">\n <img mat-card-image [src]=\"widgetData.content.posterImage | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-container *ngIf=\"!widgetData.content.posterImage\">\n <ng-container *ngIf=\"widgetData.content.appIcon; else defaultImg\">\n <img mat-card-image [src]=\"widgetData.content.appIcon | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData?.content?.title\" />\n </ng-container>\n <ng-template #defaultImg>\n <img mat-card-image [src]=\"defaultThumbnail\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\"\n [alt]=\"widgetData?.content?.title\" />\n </ng-template>\n </ng-container>\n </div>\n <div class=\"title-container\">\n <div class=\"flex px-2\">\n <div [id]=\"'m-c-'+ widgetData.content?.identifier\"\n class=\"flex-1 text-start mat-subheading-2 title-text ws-mat-white-text\">\n {{ widgetData?.content?.title }}\n </div>\n </div>\n <div class=\"flex px-2\">\n <div [id]=\"'m-c-'+ widgetData?.content?.identifier\"\n class=\"flex-1 text-start margin-remove margin-top-xxs mat-subheading-2 title-text ws-mat-white-text\">\n {{ widgetData?.content?.children?.length}} Programs\n </div>\n </div>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n </a>\n </ng-container>\n </div>\n</mat-card>",
106
+ template: "<mat-card class=\"channels-card card-channels-container mr-5 padding-remove cursor-pointer\" [ngStyle]=\"{'background': widgetData?.content?.bgColor}\">\n <div class=\"display-contents\">\n <ng-container *ngIf=\"widgetData.content\">\n <a (click)=\"redirectTo(widgetData?.content);$event.stopPropagation();\">\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.posterImage\">\n <img mat-card-image [src]=\"widgetData.content.posterImage | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.title\" />\n </ng-container>\n <ng-container *ngIf=\"!widgetData.content.posterImage\">\n <ng-container *ngIf=\"widgetData.content.appIcon; else defaultImg\">\n <img mat-card-image [src]=\"widgetData.content.appIcon | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData?.content?.title\" />\n </ng-container>\n <ng-template #defaultImg>\n <img mat-card-image [src]=\"defaultThumbnail\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\"\n [alt]=\"widgetData?.content?.title\" />\n </ng-template>\n </ng-container>\n </div>\n <div class=\"title-container\">\n <div class=\"flex px-2\">\n <div [id]=\"'m-c-'+ widgetData.content?.identifier\"\n class=\"flex-1 text-start mat-subheading-2 title-text ws-mat-white-text\">\n {{ widgetData?.content?.title }}\n </div>\n </div>\n <div class=\"flex px-2\">\n <div [id]=\"'m-c-'+ widgetData?.content?.identifier\"\n class=\"flex-1 text-start margin-remove margin-top-xxs mat-subheading-2 title-text ws-mat-white-text\">\n {{ widgetData?.content?.children?.length}} Programs\n </div>\n </div>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n </a>\n </ng-container>\n </div>\n</mat-card>",
112
107
  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:217px;height:217px;max-height:217px;margin:0 8px;background:#1a4ca1;border-radius:12px}.card-channels-container .min-top{background:inherit;margin-bottom:0;height:inherit}.card-channels-container .image-container{background-color:#fff;width:inherit;height:139px;max-height:139px;overflow:hidden;display:flex;align-items:center;justify-content:center;border-top-left-radius:12px;border-top-right-radius:12px}.card-channels-container .card-img{max-height:100%;min-height:100%;display:block;-o-object-fit:fill;object-fit:fill}.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:1;-webkit-box-orient:vertical;min-height:24px}"]
113
108
  }] }
114
109
  ];
@@ -117,7 +112,9 @@ CardKarmaProgramsComponent.ctorParameters = () => [
117
112
  { type: EventService },
118
113
  { type: TranslateService },
119
114
  { type: MultilingualTranslationsService },
120
- { type: ConfigurationsService }
115
+ { type: ConfigurationsService },
116
+ { type: WidgetContentService },
117
+ { type: Router }
121
118
  ];
122
119
  CardKarmaProgramsComponent.propDecorators = {
123
120
  widgetData: [{ type: Input }],
@@ -163,5 +160,15 @@ if (false) {
163
160
  * @private
164
161
  */
165
162
  CardKarmaProgramsComponent.prototype.configSvc;
163
+ /**
164
+ * @type {?}
165
+ * @private
166
+ */
167
+ CardKarmaProgramsComponent.prototype.contSvc;
168
+ /**
169
+ * @type {?}
170
+ * @private
171
+ */
172
+ CardKarmaProgramsComponent.prototype.router;
166
173
  }
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1rYXJtYS1wcm9ncmFtcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi9jb25zdW1wdGlvbi8iLCJzb3VyY2VzIjpbImxpYi9fY29tbW9uL2NhcmRzL2NhcmQta2FybWEtcHJvZ3JhbXMvY2FyZC1rYXJtYS1wcm9ncmFtcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFlBQVksRUFBRSwrQkFBK0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU92SCxNQUFNLE9BQU8sMEJBQTBCOzs7Ozs7O0lBb0JyQyxZQUNVLE1BQW9CLEVBQ3BCLFNBQTJCLEVBQzNCLGdCQUFpRCxFQUNqRCxTQUFnQztRQUhoQyxXQUFNLEdBQU4sTUFBTSxDQUFjO1FBQ3BCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUM7UUFDakQsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFyQmpDLHFCQUFnQixHQUFZLEtBQUssQ0FBQTtRQUNoQyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQTtRQUk1QyxlQUFVLEdBQVEsRUFBRSxDQUFBO1FBQ3BCLGtCQUFhLEdBQU8sRUFBRSxDQUFBO1FBQ3RCLGlCQUFZLEdBQVE7WUFDbEIsU0FBUztZQUNULFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FBUztZQUNULFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FBUztTQUNWLENBQUE7UUFPRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsMEJBQTBCLENBQUMsU0FBUzs7O1FB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RG5DLGdCQUFnQjtZQUNxQiwrQkFBK0I7WUFBcEUscUJBQXFCOzs7eUJBUzNCLEtBQUs7K0JBQ0wsS0FBSzt1QkFDTCxNQUFNOzs7O0lBRlAsZ0RBQXlDOztJQUN6QyxzREFBMEM7O0lBQzFDLDhDQUE0Qzs7SUFDNUMsc0RBQXFCOztJQUNyQixpREFBZ0I7O0lBQ2hCLGtEQUFpQjs7SUFDakIsZ0RBQW9COztJQUNwQixtREFBc0I7O0lBQ3RCLGtEQVFDOzs7OztJQUdDLDRDQUE0Qjs7Ozs7SUFDNUIsK0NBQW1DOzs7OztJQUNuQyxzREFBeUQ7Ozs7O0lBQ3pELCtDQUF3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAqIGFzIF8gZnJvbSBcImxvZGFzaFwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbnNTZXJ2aWNlLCBFdmVudFNlcnZpY2UsIE11bHRpbGluZ3VhbFRyYW5zbGF0aW9uc1NlcnZpY2UsIE5zQ29udGVudCB9IGZyb20gJ0BzdW5iaXJkLWNiL3V0aWxzLXYyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2ItdWljLWNhcmQta2FybWEtcHJvZ3JhbXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC1rYXJtYS1wcm9ncmFtcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcmQta2FybWEtcHJvZ3JhbXMuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDYXJkS2FybWFQcm9ncmFtc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgd2lkZ2V0RGF0YSE6IE5zQ29udGVudC5JQ29udGVudDtcbiAgQElucHV0KCkgcmFuZG9tQ29sb3JBcHBseTogYm9vbGVhbiA9IGZhbHNlXG4gIEBPdXRwdXQoKSB1c2VyRGF0YSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpXG4gIGRlZmF1bHRUaHVtYm5haWw6IGFueVxuICBzb3VyY2VMb2dvczogYW55XG4gIGRlZmF1bHRTTG9nbzogYW55XG4gIHdpZGdldFR5cGU6IGFueSA9ICcnXG4gIHdpZGdldFN1YlR5cGU6IGFueSA9JydcbiAgcmFuZG9tQ29sb3JzOiBhbnkgPSBbXG4gICAgJyNFRjk0MUQnLFxuICAgICcjRjk3NDQwJyxcbiAgICAnIzM1QjVCMCcsXG4gICAgJyM5OTg4RkYnLFxuICAgICcjMjU0MDkyJyxcbiAgICAnIzkyNjUyNScsXG4gICAgJyM0RjcyREYnXG4gIF1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGV2ZW50czogRXZlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgbGFuZ3RyYW5zbGF0aW9uczogTXVsdGlsaW5ndWFsVHJhbnNsYXRpb25zU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ1N2YzogQ29uZmlndXJhdGlvbnNTZXJ2aWNlLCkgeyBcbiAgICAgIHRoaXMubGFuZ3RyYW5zbGF0aW9ucy5sYW5ndWFnZVNlbGVjdGVkT2JzZXJ2YWJsZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3dlYnNpdGVMYW5ndWFnZScpKSB7XG4gICAgICAgICAgdGhpcy50cmFuc2xhdGUuc2V0RGVmYXVsdExhbmcoJ2VuJylcbiAgICAgICAgICBjb25zdCBsYW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3dlYnNpdGVMYW5ndWFnZScpIVxuICAgICAgICAgIHRoaXMudHJhbnNsYXRlLnVzZShsYW5nKVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBpbnN0YW5jZUNvbmZpZyA9IHRoaXMuY29uZmlnU3ZjLmluc3RhbmNlQ29uZmlnXG4gICAgaWYgKGluc3RhbmNlQ29uZmlnKSB7XG4gICAgICB0aGlzLmRlZmF1bHRUaHVtYm5haWwgPSBpbnN0YW5jZUNvbmZpZy5sb2dvcy5kZWZhdWx0Q29udGVudCB8fCAnJ1xuICAgICAgdGhpcy5zb3VyY2VMb2dvcyA9IGluc3RhbmNlQ29uZmlnLnNvdXJjZXNcbiAgICAgIHRoaXMuZGVmYXVsdFNMb2dvID0gaW5zdGFuY2VDb25maWcubG9nb3MuZGVmYXVsdFNvdXJjZUxvZ28gfHwgJydcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kZWZhdWx0VGh1bWJuYWlsID0gJy9hc3NldHMvaW5zdGFuY2VzL2VhZ2xlL2FwcF9sb2dvcy9kZWZhdWx0LnBuZydcbiAgICAgIHRoaXMuZGVmYXVsdFNMb2dvID0gICcvYXNzZXRzL2luc3RhbmNlcy9lYWdsZS9hcHBfbG9nb3MvS2FybWF5b2dpQmhhcmF0X0xvZ28uc3ZnJ1xuICAgIH1cbiAgICB0aGlzLnNldFJhbmRvbUNvbG9yKClcbiAgfVxuXG4gIHNldFJhbmRvbUNvbG9yKCl7XG4gICAgaWYodGhpcy53aWRnZXREYXRhICYmIHRoaXMud2lkZ2V0RGF0YS5jb250ZW50KSB7XG4gICAgICBpZih0aGlzLnJhbmRvbUNvbG9yQXBwbHkpe1xuICAgICAgICBjb25zdCByYW5kb21JbmRleDEgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBNYXRoLmZsb29yKHRoaXMucmFuZG9tQ29sb3JzLmxlbmd0aCkpXG4gICAgICAgIHRoaXMud2lkZ2V0RGF0YS5jb250ZW50WydiZ0NvbG9yJ10gPSB0aGlzLnJhbmRvbUNvbG9yc1tyYW5kb21JbmRleDFdXG4gICAgICB9ZWxzZSB7XG4gICAgICAgIHRoaXMud2lkZ2V0RGF0YS5jb250ZW50WydiZ0NvbG9yJ10gPSAnIzFhNGNhMSdcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByYWlzZVRlbGVtZXRyeSgpIHtcbiAgICAvLyBpZih0aGlzLmZvclByZXZpZXcpe1xuICAgIC8vICAgcmV0dXJuXG4gICAgLy8gfVxuICAgIHRoaXMuZXZlbnRzLnJhaXNlSW50ZXJhY3RUZWxlbWV0cnkoXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdjbGljaycsXG4gICAgICAgIHN1YlR5cGU6IGAke3RoaXMud2lkZ2V0VHlwZX0tJHt0aGlzLndpZGdldFN1YlR5cGV9YCxcbiAgICAgICAgaWQ6IGAke18uY2FtZWxDYXNlKHRoaXMud2lkZ2V0RGF0YS5jb250ZW50LnVzZXJJZCl9LWNhcmRgLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6IHRoaXMud2lkZ2V0RGF0YS5jb250ZW50LnVzZXJJZCxcbiAgICAgICAgLy8gdHlwZTogdGhpcy53aWRnZXREYXRhLnVzZXIucHJpbWFyeUNhdGVnb3J5LFxuICAgICAgICAvL2NvbnRleHQ6IHRoaXMud2lkZ2V0RGF0YS5jb250ZXh0LFxuICAgICAgICByb2xsdXA6IHt9LFxuICAgICAgICAvLyB2ZXI6IGAke3RoaXMud2lkZ2V0RGF0YS51c2VyLnZlcnNpb259JHsnJ31gLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcGFnZUlkRXh0OiBgJHtfLmNhbWVsQ2FzZSgndXNlcicpfS1jYXJkYCxcbiAgICAgICAgbW9kdWxlOiBfLmNhbWVsQ2FzZSgndXNlcicpLFxuICAgICAgfSlcbiAgfVxuXG4gIGdldCBnZXRSYW5kb21Db2xvcnMoKXtcbiAgICBjb25zdCByYW5kb21JbmRleDEgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBNYXRoLmZsb29yKHRoaXMucmFuZG9tQ29sb3JzLmxlbmd0aCkpXG4gICAgcmV0dXJuIHRoaXMucmFuZG9tQ29sb3JzW3JhbmRvbUluZGV4MV1cbiAgfVxufVxuIl19
174
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1rYXJtYS1wcm9ncmFtcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi9jb25zdW1wdGlvbi8iLCJzb3VyY2VzIjpbImxpYi9fY29tbW9uL2NhcmRzL2NhcmQta2FybWEtcHJvZ3JhbXMvY2FyZC1rYXJtYS1wcm9ncmFtcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFlBQVksRUFBRSwrQkFBK0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2SCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFPakYsTUFBTSxPQUFPLDBCQUEwQjs7Ozs7Ozs7O0lBb0JyQyxZQUNVLE1BQW9CLEVBQ3BCLFNBQTJCLEVBQzNCLGdCQUFpRCxFQUNqRCxTQUFnQyxFQUNoQyxPQUE2QixFQUM3QixNQUFjO1FBTGQsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQUNwQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWlDO1FBQ2pELGNBQVMsR0FBVCxTQUFTLENBQXVCO1FBQ2hDLFlBQU8sR0FBUCxPQUFPLENBQXNCO1FBQzdCLFdBQU0sR0FBTixNQUFNLENBQVE7UUF2QmYscUJBQWdCLEdBQVksS0FBSyxDQUFBO1FBQ2hDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFBO1FBSTVDLGVBQVUsR0FBUSxFQUFFLENBQUE7UUFDcEIsa0JBQWEsR0FBTyxFQUFFLENBQUE7UUFDdEIsaUJBQVksR0FBUTtZ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RXBEOzs7O1lBUitCLFlBQVk7WUFEbkMsZ0JBQWdCO1lBQ3FCLCtCQUErQjtZQUFwRSxxQkFBcUI7WUFFckIsb0JBQW9CO1lBRHBCLE1BQU07Ozt5QkFVWixLQUFLOytCQUNMLEtBQUs7dUJBQ0wsTUFBTTs7OztJQUZQLGdEQUF5Qzs7SUFDekMsc0RBQTBDOztJQUMxQyw4Q0FBNEM7O0lBQzVDLHNEQUFxQjs7SUFDckIsaURBQWdCOztJQUNoQixrREFBaUI7O0lBQ2pCLGdEQUFvQjs7SUFDcEIsbURBQXNCOztJQUN0QixrREFRQzs7Ozs7SUFHQyw0Q0FBNEI7Ozs7O0lBQzVCLCtDQUFtQzs7Ozs7SUFDbkMsc0RBQXlEOzs7OztJQUN6RCwrQ0FBd0M7Ozs7O0lBQ3hDLDZDQUFxQzs7Ozs7SUFDckMsNENBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgXyBmcm9tIFwibG9kYXNoXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uc1NlcnZpY2UsIEV2ZW50U2VydmljZSwgTXVsdGlsaW5ndWFsVHJhbnNsYXRpb25zU2VydmljZSwgTnNDb250ZW50IH0gZnJvbSAnQHN1bmJpcmQtY2IvdXRpbHMtdjInO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFdpZGdldENvbnRlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vX3NlcnZpY2VzL3dpZGdldC1jb250ZW50LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzYi11aWMtY2FyZC1rYXJtYS1wcm9ncmFtcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXJkLWthcm1hLXByb2dyYW1zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2FyZC1rYXJtYS1wcm9ncmFtcy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENhcmRLYXJtYVByb2dyYW1zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSB3aWRnZXREYXRhITogTnNDb250ZW50LklDb250ZW50O1xuICBASW5wdXQoKSByYW5kb21Db2xvckFwcGx5OiBib29sZWFuID0gZmFsc2VcbiAgQE91dHB1dCgpIHVzZXJEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KClcbiAgZGVmYXVsdFRodW1ibmFpbDogYW55XG4gIHNvdXJjZUxvZ29zOiBhbnlcbiAgZGVmYXVsdFNMb2dvOiBhbnlcbiAgd2lkZ2V0VHlwZTogYW55ID0gJydcbiAgd2lkZ2V0U3ViVHlwZTogYW55ID0nJ1xuICByYW5kb21Db2xvcnM6IGFueSA9IFtcbiAgICAnI0VGOTQxRCcsXG4gICAgJyNGOTc0NDAnLFxuICAgICcjMzVCNUIwJyxcbiAgICAnIzk5ODhGRicsXG4gICAgJyMyNTQwOTInLFxuICAgICcjOTI2NTI1JyxcbiAgICAnIzRGNzJERidcbiAgXVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZXZlbnRzOiBFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsYW5ndHJhbnNsYXRpb25zOiBNdWx0aWxpbmd1YWxUcmFuc2xhdGlvbnNTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlnU3ZjOiBDb25maWd1cmF0aW9uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb250U3ZjOiBXaWRnZXRDb250ZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gICAgICB0aGlzLmxhbmd0cmFuc2xhdGlvbnMubGFuZ3VhZ2VTZWxlY3RlZE9ic2VydmFibGUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd3ZWJzaXRlTGFuZ3VhZ2UnKSkge1xuICAgICAgICAgIHRoaXMudHJhbnNsYXRlLnNldERlZmF1bHRMYW5nKCdlbicpXG4gICAgICAgICAgY29uc3QgbGFuZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd3ZWJzaXRlTGFuZ3VhZ2UnKSFcbiAgICAgICAgICB0aGlzLnRyYW5zbGF0ZS51c2UobGFuZylcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgaW5zdGFuY2VDb25maWcgPSB0aGlzLmNvbmZpZ1N2Yy5pbnN0YW5jZUNvbmZpZ1xuICAgIGlmIChpbnN0YW5jZUNvbmZpZykge1xuICAgICAgdGhpcy5kZWZhdWx0VGh1bWJuYWlsID0gaW5zdGFuY2VDb25maWcubG9nb3MuZGVmYXVsdENvbnRlbnQgfHwgJydcbiAgICAgIHRoaXMuc291cmNlTG9nb3MgPSBpbnN0YW5jZUNvbmZpZy5zb3VyY2VzXG4gICAgICB0aGlzLmRlZmF1bHRTTG9nbyA9IGluc3RhbmNlQ29uZmlnLmxvZ29zLmRlZmF1bHRTb3VyY2VMb2dvIHx8ICcnXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGVmYXVsdFRodW1ibmFpbCA9ICcvYXNzZXRzL2luc3RhbmNlcy9lYWdsZS9hcHBfbG9nb3MvZGVmYXVsdC5wbmcnXG4gICAgICB0aGlzLmRlZmF1bHRTTG9nbyA9ICAnL2Fzc2V0cy9pbnN0YW5jZXMvZWFnbGUvYXBwX2xvZ29zL0thcm1heW9naUJoYXJhdF9Mb2dvLnN2ZydcbiAgICB9XG4gICAgdGhpcy5zZXRSYW5kb21Db2xvcigpXG4gIH1cblxuICBzZXRSYW5kb21Db2xvcigpe1xuICAgIGlmKHRoaXMud2lkZ2V0RGF0YSAmJiB0aGlzLndpZGdldERhdGEuY29udGVudCkge1xuICAgICAgaWYodGhpcy5yYW5kb21Db2xvckFwcGx5KXtcbiAgICAgICAgY29uc3QgcmFuZG9tSW5kZXgxID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogTWF0aC5mbG9vcih0aGlzLnJhbmRvbUNvbG9ycy5sZW5ndGgpKVxuICAgICAgICB0aGlzLndpZGdldERhdGEuY29udGVudFsnYmdDb2xvciddID0gdGhpcy5yYW5kb21Db2xvcnNbcmFuZG9tSW5kZXgxXVxuICAgICAgfWVsc2Uge1xuICAgICAgICB0aGlzLndpZGdldERhdGEuY29udGVudFsnYmdDb2xvciddID0gJyMxYTRjYTEnXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiBcblxuICBnZXQgZ2V0UmFuZG9tQ29sb3JzKCl7XG4gICAgY29uc3QgcmFuZG9tSW5kZXgxID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogTWF0aC5mbG9vcih0aGlzLnJhbmRvbUNvbG9ycy5sZW5ndGgpKVxuICAgIHJldHVybiB0aGlzLnJhbmRvbUNvbG9yc1tyYW5kb21JbmRleDFdXG4gIH1cblxuICByZWRpcmVjdFRvKGRhdGE6IGFueSkge1xuICAgIGlmICh0aGlzLndpZGdldERhdGEgJiYgdGhpcy53aWRnZXREYXRhLmNvbnRleHQgJiYgdGhpcy53aWRnZXREYXRhLmNvbnRleHQucGFnZVNlY3Rpb24pIHtcbiAgICAgIGRhdGFbJ3R5cGVPZlRlbGVtZXRyeSddID0gJ2thcm1hLXByb2dyYW1zJ1xuICAgIH1cbiAgICB0aGlzLmNvbnRTdmMuY2hhbmdlVGVsZW1ldHJ5RGF0YShkYXRhKVxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFxuICAgICAgW2AvYXBwL2xlYXJuL2thcm1hLXByb2dyYW1zLyR7ZGF0YS50aXRsZX0vJHtkYXRhLnBsYXlMaXN0S2V5fS8ke2RhdGEub3JnSWR9L21pY3JvLXNpdGVzYF0sXG4gICAgKVxuICB9XG59XG4iXX0=
@@ -3,23 +3,26 @@
3
3
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
4
  */
5
5
  import { Component, EventEmitter, Input, Output } from '@angular/core';
6
- import * as _ from "lodash";
7
6
  import { TranslateService } from '@ngx-translate/core';
8
7
  import { ConfigurationsService, EventService, MultilingualTranslationsService, NsContent } from '@sunbird-cb/utils-v2';
8
+ import { Router } from '@angular/router';
9
9
  export class CardKarmaProgramsV2Component {
10
10
  /**
11
11
  * @param {?} events
12
12
  * @param {?} translate
13
13
  * @param {?} langtranslations
14
14
  * @param {?} configSvc
15
+ * @param {?} router
15
16
  */
16
- constructor(events, translate, langtranslations, configSvc) {
17
+ constructor(events, translate, langtranslations, configSvc, router) {
17
18
  this.events = events;
18
19
  this.translate = translate;
19
20
  this.langtranslations = langtranslations;
20
21
  this.configSvc = configSvc;
22
+ this.router = router;
21
23
  this.randomColorApply = false;
22
24
  this.userData = new EventEmitter();
25
+ this.raiseTemeletry = new EventEmitter();
23
26
  this.widgetType = '';
24
27
  this.widgetSubType = '';
25
28
  this.randomColors = [
@@ -76,25 +79,13 @@ export class CardKarmaProgramsV2Component {
76
79
  }
77
80
  }
78
81
  /**
82
+ * @param {?} content
79
83
  * @return {?}
80
84
  */
81
- raiseTelemetry() {
82
- // if(this.forPreview){
83
- // return
84
- // }
85
- this.events.raiseInteractTelemetry({
86
- type: 'click',
87
- subType: `${this.widgetType}-${this.widgetSubType}`,
88
- id: `${_.camelCase(this.widgetData.content.userId)}-card`,
89
- }, {
90
- id: this.widgetData.content.userId,
91
- // type: this.widgetData.user.primaryCategory,
92
- //context: this.widgetData.context,
93
- rollup: {},
94
- }, {
95
- pageIdExt: `${_.camelCase('user')}-card`,
96
- module: _.camelCase('user'),
97
- });
85
+ redirectTo(content) {
86
+ this.raiseTemeletry.emit(content);
87
+ //this.router.navigate([`/app/learn/karma-programs/${content.identifier}/${content.identifier}/micro-sites`])
88
+ this.router.navigate(['/app/learn/karma-programs/India%20post/0132593267437813768program/0132593267437813768/micro-sites']);
98
89
  }
99
90
  /**
100
91
  * @return {?}
@@ -108,7 +99,7 @@ export class CardKarmaProgramsV2Component {
108
99
  CardKarmaProgramsV2Component.decorators = [
109
100
  { type: Component, args: [{
110
101
  selector: 'sb-uic-card-karma-programs-v2',
111
- template: "<mat-card class=\"channels-card card-channels-container mr-5 padding-remove cursor-pointer\" [ngStyle]=\"{'background': widgetData?.content?.bgColor}\">\n <div class=\"display-contents\">\n <ng-container *ngIf=\"widgetData.content\">\n <a (click)=\"raiseTelemetry();$event.stopPropagation()\" \n [routerLink]=\"['/app/learn/karma-programs/asdfghj/123456/micro-sites']\" role=\"link\"\n i18n-aria-label>\n <ng-container>\n <mat-card-content class=\"min-top\">\n <div class=\"flex flex-row md:flex-col h-full\">\n <div class=\"image-container\">\n <ng-container *ngIf=\"widgetData.content.posterImage\">\n <img mat-card-image [src]=\"widgetData.content.posterImage | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-container *ngIf=\"!widgetData.content.posterImage\">\n <ng-container *ngIf=\"widgetData.content.appIcon; else defaultImg\">\n <img mat-card-image [src]=\"widgetData.content.appIcon | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.name\" />\n </ng-container>\n <ng-template #defaultImg>\n <img mat-card-image [src]=\"defaultThumbnail\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\"\n [alt]=\"widgetData.content.name\" />\n </ng-template>\n </ng-container>\n </div>\n <div class=\"flex items-center\">\n <div class=\"title-container\">\n <div class=\"flex px-2\">\n <div [id]=\"'m-c-'+ widgetData.content?.identifier\"\n class=\"flex-1 text-start mat-subheading-2 title-text ws-mat-white-text\">\n {{ widgetData?.content?.name }}\n </div>\n </div>\n <div class=\"flex px-2\">\n <div [id]=\"'m-c-'+ widgetData?.content?.identifier\"\n class=\"flex-1 text-start margin-remove margin-top-xxs mat-subheading-2 title-text ws-mat-white-text\">\n {{ widgetData?.content?.programCount}} Programs\n </div>\n </div>\n </div>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n </a>\n </ng-container>\n </div>\n</mat-card>",
102
+ template: "<mat-card class=\"channels-card card-channels-container mr-5 padding-remove cursor-pointer\" [ngStyle]=\"{'background': widgetData?.content?.bgColor}\">\n <div class=\"display-contents\">\n <ng-container *ngIf=\"widgetData.content\">\n <a (click)=\"redirectTo(widgetData?.content);$event.stopPropagation()\">\n <ng-container>\n <mat-card-content class=\"min-top\">\n <div class=\"flex flex-row md:flex-col h-full\">\n <div class=\"image-container\">\n <ng-container *ngIf=\"widgetData.content.posterImage\">\n <img mat-card-image [src]=\"widgetData.content.posterImage | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.title\" />\n </ng-container>\n <ng-container *ngIf=\"!widgetData.content.posterImage\">\n <ng-container *ngIf=\"widgetData.content.appIcon; else defaultImg\">\n <img mat-card-image [src]=\"widgetData.content.appIcon | pipePublicURL\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\" [wsUtilsDefaultThumbnail]=\"defaultThumbnail\"\n [alt]=\"widgetData.content.title\" />\n </ng-container>\n <ng-template #defaultImg>\n <img mat-card-image [src]=\"defaultThumbnail\" loading=\"lazy\"\n class=\"card-img ws-mat-primary-lite-background margin-remove\"\n [alt]=\"widgetData.content.title\" />\n </ng-template>\n </ng-container>\n </div>\n <div class=\"flex items-center\">\n <div class=\"title-container\">\n <div class=\"flex px-2\">\n <div [id]=\"'m-c-'+ widgetData.content?.identifier\"\n class=\"flex-1 text-start mat-subheading-2 title-text ws-mat-white-text\">\n {{ widgetData?.content?.title }}\n </div>\n </div>\n <div class=\"flex px-2\">\n <div [id]=\"'m-c-'+ widgetData?.content?.identifier\"\n class=\"flex-1 text-start margin-remove margin-top-xxs mat-subheading-2 title-text ws-mat-white-text\">\n {{ widgetData?.content?.children?.length}} Programs\n </div>\n </div>\n </div>\n </div>\n </div>\n </mat-card-content>\n </ng-container>\n </a>\n </ng-container>\n </div>\n</mat-card>",
112
103
  styles: [".card-channels-container{position:relative;width:282px;box-sizing:border-box;box-shadow:0 10px 30px rgba(153,153,153,.2);overflow:hidden;min-height:233px;height:233px;max-height:233px;margin:0 8px;background:#1a4ca1;border-radius:12px}.card-channels-container .min-top{background:inherit;margin-bottom:0;height:inherit}.card-channels-container .image-container{background-color:#fff;width:inherit;height:156px;max-height:156px;overflow:hidden;display:flex;align-items:center;justify-content:center;border-top-left-radius:12px;border-top-right-radius:12px}.card-channels-container .card-img{max-height:100%;min-height:100%;display:block;-o-object-fit:fill;object-fit:fill}.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:1;-webkit-box-orient:vertical;min-height:24px}@media screen and (max-width:768px){.card-channels-container{width:100%;box-sizing:border-box;box-shadow:0 10px 30px rgba(153,153,153,.2);overflow:hidden;min-height:unset;height:unset;max-height:unset;margin:0;padding:8px!important}.image-container{background-color:#fff;width:190px;height:106px;max-height:106px;border-radius:12px}}"]
113
104
  }] }
114
105
  ];
@@ -117,12 +108,14 @@ CardKarmaProgramsV2Component.ctorParameters = () => [
117
108
  { type: EventService },
118
109
  { type: TranslateService },
119
110
  { type: MultilingualTranslationsService },
120
- { type: ConfigurationsService }
111
+ { type: ConfigurationsService },
112
+ { type: Router }
121
113
  ];
122
114
  CardKarmaProgramsV2Component.propDecorators = {
123
115
  widgetData: [{ type: Input }],
124
116
  randomColorApply: [{ type: Input }],
125
- userData: [{ type: Output }]
117
+ userData: [{ type: Output }],
118
+ raiseTemeletry: [{ type: Output }]
126
119
  };
127
120
  if (false) {
128
121
  /** @type {?} */
@@ -132,6 +125,8 @@ if (false) {
132
125
  /** @type {?} */
133
126
  CardKarmaProgramsV2Component.prototype.userData;
134
127
  /** @type {?} */
128
+ CardKarmaProgramsV2Component.prototype.raiseTemeletry;
129
+ /** @type {?} */
135
130
  CardKarmaProgramsV2Component.prototype.defaultThumbnail;
136
131
  /** @type {?} */
137
132
  CardKarmaProgramsV2Component.prototype.sourceLogos;
@@ -163,5 +158,10 @@ if (false) {
163
158
  * @private
164
159
  */
165
160
  CardKarmaProgramsV2Component.prototype.configSvc;
161
+ /**
162
+ * @type {?}
163
+ * @private
164
+ */
165
+ CardKarmaProgramsV2Component.prototype.router;
166
166
  }
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1rYXJtYS1wcm9ncmFtcy12Mi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi9jb25zdW1wdGlvbi8iLCJzb3VyY2VzIjpbImxpYi9fY29tbW9uL2NhcmRzL2NhcmQta2FybWEtcHJvZ3JhbXMtdjIvY2FyZC1rYXJtYS1wcm9ncmFtcy12Mi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFlBQVksRUFBRSwrQkFBK0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU92SCxNQUFNLE9BQU8sNEJBQTRCOzs7Ozs7O0lBb0J2QyxZQUNVLE1BQW9CLEVBQ3BCLFNBQTJCLEVBQzNCLGdCQUFpRCxFQUNqRCxTQUFnQztRQUhoQyxXQUFNLEdBQU4sTUFBTSxDQUFjO1FBQ3BCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUM7UUFDakQsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFyQmpDLHFCQUFnQixHQUFZLEtBQUssQ0FBQTtRQUNoQyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQTtRQUk1QyxlQUFVLEdBQVEsRUFBRSxDQUFBO1FBQ3BCLGtCQUFhLEdBQU8sRUFBRSxDQUFBO1FBQ3RCLGlCQUFZLEdBQVE7WUFDbEIsU0FBUztZQUNULFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FBUztZQUNULFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FBUztTQUNWLENBQUE7UUFPRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsMEJBQTBCLENBQUMs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QixZQUFZO1lBRG5DLGdCQUFnQjtZQUNxQiwrQkFBK0I7WUFBcEUscUJBQXFCOzs7eUJBUzNCLEtBQUs7K0JBQ0wsS0FBSzt1QkFDTCxNQUFNOzs7O0lBRlAsa0RBQXlDOztJQUN6Qyx3REFBMEM7O0lBQzFDLGdEQUE0Qzs7SUFDNUMsd0RBQXFCOztJQUNyQixtREFBZ0I7O0lBQ2hCLG9EQUFpQjs7SUFDakIsa0RBQW9COztJQUNwQixxREFBc0I7O0lBQ3RCLG9EQVFDOzs7OztJQUdDLDhDQUE0Qjs7Ozs7SUFDNUIsaURBQW1DOzs7OztJQUNuQyx3REFBeUQ7Ozs7O0lBQ3pELGlEQUF3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAqIGFzIF8gZnJvbSBcImxvZGFzaFwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbnNTZXJ2aWNlLCBFdmVudFNlcnZpY2UsIE11bHRpbGluZ3VhbFRyYW5zbGF0aW9uc1NlcnZpY2UsIE5zQ29udGVudCB9IGZyb20gJ0BzdW5iaXJkLWNiL3V0aWxzLXYyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2ItdWljLWNhcmQta2FybWEtcHJvZ3JhbXMtdjInLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC1rYXJtYS1wcm9ncmFtcy12Mi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcmQta2FybWEtcHJvZ3JhbXMtdjIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDYXJkS2FybWFQcm9ncmFtc1YyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSB3aWRnZXREYXRhITogTnNDb250ZW50LklDb250ZW50O1xuICBASW5wdXQoKSByYW5kb21Db2xvckFwcGx5OiBib29sZWFuID0gZmFsc2VcbiAgQE91dHB1dCgpIHVzZXJEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KClcbiAgZGVmYXVsdFRodW1ibmFpbDogYW55XG4gIHNvdXJjZUxvZ29zOiBhbnlcbiAgZGVmYXVsdFNMb2dvOiBhbnlcbiAgd2lkZ2V0VHlwZTogYW55ID0gJydcbiAgd2lkZ2V0U3ViVHlwZTogYW55ID0nJ1xuICByYW5kb21Db2xvcnM6IGFueSA9IFtcbiAgICAnI0VGOTQxRCcsXG4gICAgJyNGOTc0NDAnLFxuICAgICcjMzVCNUIwJyxcbiAgICAnIzk5ODhGRicsXG4gICAgJyMyNTQwOTInLFxuICAgICcjOTI2NTI1JyxcbiAgICAnIzRGNzJERidcbiAgXVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZXZlbnRzOiBFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsYW5ndHJhbnNsYXRpb25zOiBNdWx0aWxpbmd1YWxUcmFuc2xhdGlvbnNTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlnU3ZjOiBDb25maWd1cmF0aW9uc1NlcnZpY2UsKSB7IFxuICAgICAgdGhpcy5sYW5ndHJhbnNsYXRpb25zLmxhbmd1YWdlU2VsZWN0ZWRPYnNlcnZhYmxlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnd2Vic2l0ZUxhbmd1YWdlJykpIHtcbiAgICAgICAgICB0aGlzLnRyYW5zbGF0ZS5zZXREZWZhdWx0TGFuZygnZW4nKVxuICAgICAgICAgIGNvbnN0IGxhbmcgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnd2Vic2l0ZUxhbmd1YWdlJykhXG4gICAgICAgICAgdGhpcy50cmFuc2xhdGUudXNlKGxhbmcpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IGluc3RhbmNlQ29uZmlnID0gdGhpcy5jb25maWdTdmMuaW5zdGFuY2VDb25maWdcbiAgICBpZiAoaW5zdGFuY2VDb25maWcpIHtcbiAgICAgIHRoaXMuZGVmYXVsdFRodW1ibmFpbCA9IGluc3RhbmNlQ29uZmlnLmxvZ29zLmRlZmF1bHRDb250ZW50IHx8ICcnXG4gICAgICB0aGlzLnNvdXJjZUxvZ29zID0gaW5zdGFuY2VDb25maWcuc291cmNlc1xuICAgICAgdGhpcy5kZWZhdWx0U0xvZ28gPSBpbnN0YW5jZUNvbmZpZy5sb2dvcy5kZWZhdWx0U291cmNlTG9nbyB8fCAnJ1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRlZmF1bHRUaHVtYm5haWwgPSAnL2Fzc2V0cy9pbnN0YW5jZXMvZWFnbGUvYXBwX2xvZ29zL2RlZmF1bHQucG5nJ1xuICAgICAgdGhpcy5kZWZhdWx0U0xvZ28gPSAgJy9hc3NldHMvaW5zdGFuY2VzL2VhZ2xlL2FwcF9sb2dvcy9LYXJtYXlvZ2lCaGFyYXRfTG9nby5zdmcnXG4gICAgfVxuICAgIHRoaXMuc2V0UmFuZG9tQ29sb3IoKVxuICB9XG5cbiAgc2V0UmFuZG9tQ29sb3IoKXtcbiAgICBpZih0aGlzLndpZGdldERhdGEgJiYgdGhpcy53aWRnZXREYXRhLmNvbnRlbnQpIHtcbiAgICAgIGlmKHRoaXMucmFuZG9tQ29sb3JBcHBseSl7XG4gICAgICAgIGNvbnN0IHJhbmRvbUluZGV4MSA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIE1hdGguZmxvb3IodGhpcy5yYW5kb21Db2xvcnMubGVuZ3RoKSlcbiAgICAgICAgdGhpcy53aWRnZXREYXRhLmNvbnRlbnRbJ2JnQ29sb3InXSA9IHRoaXMucmFuZG9tQ29sb3JzW3JhbmRvbUluZGV4MV1cbiAgICAgIH1lbHNlIHtcbiAgICAgICAgdGhpcy53aWRnZXREYXRhLmNvbnRlbnRbJ2JnQ29sb3InXSA9ICcjMWE0Y2ExJ1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJhaXNlVGVsZW1ldHJ5KCkge1xuICAgIC8vIGlmKHRoaXMuZm9yUHJldmlldyl7XG4gICAgLy8gICByZXR1cm5cbiAgICAvLyB9XG4gICAgdGhpcy5ldmVudHMucmFpc2VJbnRlcmFjdFRlbGVtZXRyeShcbiAgICAgIHtcbiAgICAgICAgdHlwZTogJ2NsaWNrJyxcbiAgICAgICAgc3ViVHlwZTogYCR7dGhpcy53aWRnZXRUeXBlfS0ke3RoaXMud2lkZ2V0U3ViVHlwZX1gLFxuICAgICAgICBpZDogYCR7Xy5jYW1lbENhc2UodGhpcy53aWRnZXREYXRhLmNvbnRlbnQudXNlcklkKX0tY2FyZGAsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogdGhpcy53aWRnZXREYXRhLmNvbnRlbnQudXNlcklkLFxuICAgICAgICAvLyB0eXBlOiB0aGlzLndpZGdldERhdGEudXNlci5wcmltYXJ5Q2F0ZWdvcnksXG4gICAgICAgIC8vY29udGV4dDogdGhpcy53aWRnZXREYXRhLmNvbnRleHQsXG4gICAgICAgIHJvbGx1cDoge30sXG4gICAgICAgIC8vIHZlcjogYCR7dGhpcy53aWRnZXREYXRhLnVzZXIudmVyc2lvbn0keycnfWAsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBwYWdlSWRFeHQ6IGAke18uY2FtZWxDYXNlKCd1c2VyJyl9LWNhcmRgLFxuICAgICAgICBtb2R1bGU6IF8uY2FtZWxDYXNlKCd1c2VyJyksXG4gICAgICB9KVxuICB9XG5cbiAgZ2V0IGdldFJhbmRvbUNvbG9ycygpe1xuICAgIGNvbnN0IHJhbmRvbUluZGV4MSA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIE1hdGguZmxvb3IodGhpcy5yYW5kb21Db2xvcnMubGVuZ3RoKSlcbiAgICByZXR1cm4gdGhpcy5yYW5kb21Db2xvcnNbcmFuZG9tSW5kZXgxXVxuICB9XG59XG4iXX0=
167
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1rYXJtYS1wcm9ncmFtcy12Mi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi9jb25zdW1wdGlvbi8iLCJzb3VyY2VzIjpbImxpYi9fY29tbW9uL2NhcmRzL2NhcmQta2FybWEtcHJvZ3JhbXMtdjIvY2FyZC1rYXJtYS1wcm9ncmFtcy12Mi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFlBQVksRUFBRSwrQkFBK0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2SCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFPekMsTUFBTSxPQUFPLDRCQUE0Qjs7Ozs7Ozs7SUFxQnZDLFlBQ1UsTUFBb0IsRUFDcEIsU0FBMkIsRUFDM0IsZ0JBQWlELEVBQ2pELFNBQWdDLEVBQ2hDLE1BQWU7UUFKZixXQUFNLEdBQU4sTUFBTSxDQUFjO1FBQ3BCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUM7UUFDakQsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFDaEMsV0FBTSxHQUFOLE1BQU0sQ0FBUztRQXZCaEIscUJBQWdCLEdBQVksS0FBSyxDQUFBO1FBQ2hDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFBO1FBQ2xDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQTtRQUlsRCxlQUFVLEdBQVEsRUFBRSxDQUFBO1FBQ3BCLGtCQUFhLEdBQU8sRUFBRSxDQUFBO1FBQ3RCLGlCQUFZLEdBQVE7WUFDbEIsU0FBUztZQUNULFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FB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Qjs7SUFDdEIsb0RBUUM7Ozs7O0lBR0MsOENBQTRCOzs7OztJQUM1QixpREFBbUM7Ozs7O0lBQ25DLHdEQUF5RDs7Ozs7SUFDekQsaURBQXdDOzs7OztJQUN4Qyw4Q0FBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBfIGZyb20gXCJsb2Rhc2hcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25zU2VydmljZSwgRXZlbnRTZXJ2aWNlLCBNdWx0aWxpbmd1YWxUcmFuc2xhdGlvbnNTZXJ2aWNlLCBOc0NvbnRlbnQgfSBmcm9tICdAc3VuYmlyZC1jYi91dGlscy12Mic7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzYi11aWMtY2FyZC1rYXJtYS1wcm9ncmFtcy12MicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXJkLWthcm1hLXByb2dyYW1zLXYyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2FyZC1rYXJtYS1wcm9ncmFtcy12Mi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENhcmRLYXJtYVByb2dyYW1zVjJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpIHdpZGdldERhdGEhOiBOc0NvbnRlbnQuSUNvbnRlbnQ7XG4gIEBJbnB1dCgpIHJhbmRvbUNvbG9yQXBwbHk6IGJvb2xlYW4gPSBmYWxzZVxuICBAT3V0cHV0KCkgdXNlckRhdGEgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxuICBAT3V0cHV0KCkgcmFpc2VUZW1lbGV0cnkgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxuICBkZWZhdWx0VGh1bWJuYWlsOiBhbnlcbiAgc291cmNlTG9nb3M6IGFueVxuICBkZWZhdWx0U0xvZ286IGFueVxuICB3aWRnZXRUeXBlOiBhbnkgPSAnJ1xuICB3aWRnZXRTdWJUeXBlOiBhbnkgPScnXG4gIHJhbmRvbUNvbG9yczogYW55ID0gW1xuICAgICcjRUY5NDFEJyxcbiAgICAnI0Y5NzQ0MCcsXG4gICAgJyMzNUI1QjAnLFxuICAgICcjOTk4OEZGJyxcbiAgICAnIzI1NDA5MicsXG4gICAgJyM5MjY1MjUnLFxuICAgICcjNEY3MkRGJ1xuICBdXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBldmVudHM6IEV2ZW50U2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIGxhbmd0cmFuc2xhdGlvbnM6IE11bHRpbGluZ3VhbFRyYW5zbGF0aW9uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWdTdmM6IENvbmZpZ3VyYXRpb25zU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlciA6IFJvdXRlciwpIHsgXG4gICAgICB0aGlzLmxhbmd0cmFuc2xhdGlvbnMubGFuZ3VhZ2VTZWxlY3RlZE9ic2VydmFibGUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd3ZWJzaXRlTGFuZ3VhZ2UnKSkge1xuICAgICAgICAgIHRoaXMudHJhbnNsYXRlLnNldERlZmF1bHRMYW5nKCdlbicpXG4gICAgICAgICAgY29uc3QgbGFuZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd3ZWJzaXRlTGFuZ3VhZ2UnKSFcbiAgICAgICAgICB0aGlzLnRyYW5zbGF0ZS51c2UobGFuZylcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgaW5zdGFuY2VDb25maWcgPSB0aGlzLmNvbmZpZ1N2Yy5pbnN0YW5jZUNvbmZpZ1xuICAgIGlmIChpbnN0YW5jZUNvbmZpZykge1xuICAgICAgdGhpcy5kZWZhdWx0VGh1bWJuYWlsID0gaW5zdGFuY2VDb25maWcubG9nb3MuZGVmYXVsdENvbnRlbnQgfHwgJydcbiAgICAgIHRoaXMuc291cmNlTG9nb3MgPSBpbnN0YW5jZUNvbmZpZy5zb3VyY2VzXG4gICAgICB0aGlzLmRlZmF1bHRTTG9nbyA9IGluc3RhbmNlQ29uZmlnLmxvZ29zLmRlZmF1bHRTb3VyY2VMb2dvIHx8ICcnXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGVmYXVsdFRodW1ibmFpbCA9ICcvYXNzZXRzL2luc3RhbmNlcy9lYWdsZS9hcHBfbG9nb3MvZGVmYXVsdC5wbmcnXG4gICAgICB0aGlzLmRlZmF1bHRTTG9nbyA9ICAnL2Fzc2V0cy9pbnN0YW5jZXMvZWFnbGUvYXBwX2xvZ29zL0thcm1heW9naUJoYXJhdF9Mb2dvLnN2ZydcbiAgICB9XG4gICAgdGhpcy5zZXRSYW5kb21Db2xvcigpXG4gIH1cblxuICBzZXRSYW5kb21Db2xvcigpe1xuICAgIGlmKHRoaXMud2lkZ2V0RGF0YSAmJiB0aGlzLndpZGdldERhdGEuY29udGVudCkge1xuICAgICAgaWYodGhpcy5yYW5kb21Db2xvckFwcGx5KXtcbiAgICAgICAgY29uc3QgcmFuZG9tSW5kZXgxID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogTWF0aC5mbG9vcih0aGlzLnJhbmRvbUNvbG9ycy5sZW5ndGgpKVxuICAgICAgICB0aGlzLndpZGdldERhdGEuY29udGVudFsnYmdDb2xvciddID0gdGhpcy5yYW5kb21Db2xvcnNbcmFuZG9tSW5kZXgxXVxuICAgICAgfWVsc2Uge1xuICAgICAgICB0aGlzLndpZGdldERhdGEuY29udGVudFsnYmdDb2xvciddID0gJyMxYTRjYTEnXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmVkaXJlY3RUbyhjb250ZW50OiBhbnkpIHtcbiAgICB0aGlzLnJhaXNlVGVtZWxldHJ5LmVtaXQoY29udGVudClcbiAgICAvL3RoaXMucm91dGVyLm5hdmlnYXRlKFtgL2FwcC9sZWFybi9rYXJtYS1wcm9ncmFtcy8ke2NvbnRlbnQuaWRlbnRpZmllcn0vJHtjb250ZW50LmlkZW50aWZpZXJ9L21pY3JvLXNpdGVzYF0pXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXBwL2xlYXJuL2thcm1hLXByb2dyYW1zL0luZGlhJTIwcG9zdC8wMTMyNTkzMjY3NDM3ODEzNzY4cHJvZ3JhbS8wMTMyNTkzMjY3NDM3ODEzNzY4L21pY3JvLXNpdGVzJ10pXG4gIH1cblxuICBnZXQgZ2V0UmFuZG9tQ29sb3JzKCl7XG4gICAgY29uc3QgcmFuZG9tSW5kZXgxID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogTWF0aC5mbG9vcih0aGlzLnJhbmRvbUNvbG9ycy5sZW5ndGgpKVxuICAgIHJldHVybiB0aGlzLnJhbmRvbUNvbG9yc1tyYW5kb21JbmRleDFdXG4gIH1cbn1cbiJdfQ==
@@ -6,7 +6,6 @@ import { Component, EventEmitter, Input, Output } from '@angular/core';
6
6
  import { NsCardContent } from '../../../_models/card-content.model';
7
7
  import { MatSnackBar } from '@angular/material';
8
8
  import { ConfigurationsService, EventService } from '@sunbird-cb/utils-v2';
9
- import * as _ from "lodash";
10
9
  import { TranslateService } from '@ngx-translate/core';
11
10
  import { MultilingualTranslationsService } from '../../../_services/multilingual-translations.service';
12
11
  export class CardLandscapeComponent {
@@ -25,6 +24,7 @@ export class CardLandscapeComponent {
25
24
  this.configSvc = configSvc;
26
25
  this.isCardLoading = false;
27
26
  this.contentData = new EventEmitter();
27
+ this.triggerTelemetry = new EventEmitter();
28
28
  this.isCardFlipped = false;
29
29
  this.acbpConstants = NsCardContent.ACBPConst;
30
30
  this.showFlip = false;
@@ -83,26 +83,11 @@ export class CardLandscapeComponent {
83
83
  this.contentData.emit(contentData);
84
84
  }
85
85
  /**
86
+ * @param {?} content
86
87
  * @return {?}
87
88
  */
88
- raiseTelemetry() {
89
- // if(this.forPreview){
90
- // return
91
- // }
92
- this.events.raiseInteractTelemetry({
93
- type: 'click',
94
- subType: `${this.widgetType}-${this.widgetSubType}`,
95
- id: `${_.camelCase(this.widgetData.content.primaryCategory)}-card`,
96
- }, {
97
- id: this.widgetData.content.identifier,
98
- type: this.widgetData.content.primaryCategory,
99
- //context: this.widgetData.context,
100
- rollup: {},
101
- ver: `${this.widgetData.content.version}${''}`,
102
- }, {
103
- pageIdExt: `${_.camelCase(this.widgetData.content.primaryCategory)}-card`,
104
- module: _.camelCase(this.widgetData.content.primaryCategory),
105
- });
89
+ raiseTelemetry(content) {
90
+ this.triggerTelemetry.emit(content);
106
91
  }
107
92
  /**
108
93
  * @return {?}
@@ -131,7 +116,7 @@ export class CardLandscapeComponent {
131
116
  CardLandscapeComponent.decorators = [
132
117
  { type: Component, args: [{
133
118
  selector: 'sb-uic-card-landscape',
134
- template: "<ng-container *ngIf=\"!isCardLoading\">\n <a class=\"cursor-pointer\" (click)=\"raiseTelemetry();getRedirectUrlData(widgetData?.content); $event.stopPropagation()\" \n role=\"link\" i18n-aria-label>\n <mat-card class=\"card-portrait mr-2 card-portrait-clickable min-height-remove\" [ngClass]=\"widgetData.cardCustomeClass ? widgetData.cardCustomeClass : ''\">\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 class=\"flex flex-middle rating-session margin-top-xs\">\n <div class=\"flex flex-middle\" *ngIf=\"widgetData?.content?.avgRating\">\n <mat-icon class=\"mr-1\">star</mat-icon>\n <span>{{widgetData.content.avgRating}}</span>\n </div>\n <!-- <ng-container *ngIf=\"widgetData?.content?.additionalTags && widgetData?.content?.additionalTags.includes('mostEnrolled')\">\n <span class=\"most-enrolled-text margin-left-xs\">{{ 'cardcontentv2.mostEnrolled' | translate }}</span>\n </ng-container>\n <ng-container *ngIf=\"widgetData?.content?.additionalTags && widgetData?.content?.additionalTags.includes('mostTrending')\">\n <span class=\"most-enrolled-text margin-left-xs\">{{ 'cardcontentv2.mostTrending' | translate }}</span>\n </ng-container> -->\n </div>\n </div>\n </div>\n </mat-card>\n </a>\n</ng-container>\n\n<ng-template #cbpPlan let-data=\"data\">\n <div class=\"cbp-mark left-0 border-top-radius\">\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.UPCOMING\" class=\"cbp-warning\">{{data.cbpData.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.SUCCESS\" class=\"cbp-success\">{{data.cbpData.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.OVERDUE\" class=\"cbp-danger\">{{'OverDue' }}</p>\n </div>\n </ng-template>\n\n<ng-container *ngIf=\"isCardLoading\">\n <mat-card class=\"card-portrait mr-2 card-portrait-clickable\" [ngClass]=\"widgetData.cardCustomeClass ? widgetData.cardCustomeClass : ''\">\n <div class=\"flex\">\n <div class=\"margin-right-s\">\n <ng-container>\n <sb-uic-skeleton-loader [width]=\"'147px'\" [height]=\"'100px'\" [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 <sb-uic-skeleton-loader [width]=\"'24px'\" [height]=\"'24px'\" [bindingClass]=\"'flex rounded margin-right-xs'\"></sb-uic-skeleton-loader>\n <sb-uic-skeleton-loader [width]=\"'100px'\" [height]=\"'12px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\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 </mat-card>\n</ng-container>",
119
+ template: "<ng-container *ngIf=\"!isCardLoading\">\n <a class=\"cursor-pointer\" (click)=\"raiseTelemetry(widgetData?.content);getRedirectUrlData(widgetData?.content); $event.stopPropagation()\" \n role=\"link\" i18n-aria-label>\n <mat-card class=\"card-portrait mr-2 card-portrait-clickable min-height-remove\" [ngClass]=\"widgetData.cardCustomeClass ? widgetData.cardCustomeClass : ''\">\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 class=\"flex flex-middle rating-session margin-top-xs\">\n <div class=\"flex flex-middle\" *ngIf=\"widgetData?.content?.avgRating\">\n <mat-icon class=\"mr-1\">star</mat-icon>\n <span>{{widgetData.content.avgRating}}</span>\n </div>\n <!-- <ng-container *ngIf=\"widgetData?.content?.additionalTags && widgetData?.content?.additionalTags.includes('mostEnrolled')\">\n <span class=\"most-enrolled-text margin-left-xs\">{{ 'cardcontentv2.mostEnrolled' | translate }}</span>\n </ng-container>\n <ng-container *ngIf=\"widgetData?.content?.additionalTags && widgetData?.content?.additionalTags.includes('mostTrending')\">\n <span class=\"most-enrolled-text margin-left-xs\">{{ 'cardcontentv2.mostTrending' | translate }}</span>\n </ng-container> -->\n </div>\n </div>\n </div>\n </mat-card>\n </a>\n</ng-container>\n\n<ng-template #cbpPlan let-data=\"data\">\n <div class=\"cbp-mark left-0 border-top-radius\">\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.UPCOMING\" class=\"cbp-warning\">{{data.cbpData.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.SUCCESS\" class=\"cbp-success\">{{data.cbpData.endDate | date: 'd MMM, y'}}</p>\n <p *ngIf=\"data.cbpData.planDuration === acbpConstants?.OVERDUE\" class=\"cbp-danger\">{{'OverDue' }}</p>\n </div>\n </ng-template>\n\n<ng-container *ngIf=\"isCardLoading\">\n <mat-card class=\"card-portrait mr-2 card-portrait-clickable\" [ngClass]=\"widgetData.cardCustomeClass ? widgetData.cardCustomeClass : ''\">\n <div class=\"flex\">\n <div class=\"margin-right-s\">\n <ng-container>\n <sb-uic-skeleton-loader [width]=\"'147px'\" [height]=\"'100px'\" [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 <sb-uic-skeleton-loader [width]=\"'24px'\" [height]=\"'24px'\" [bindingClass]=\"'flex rounded margin-right-xs'\"></sb-uic-skeleton-loader>\n <sb-uic-skeleton-loader [width]=\"'100px'\" [height]=\"'12px'\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader>\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 </mat-card>\n</ng-container>",
135
120
  styles: [".card-portrait{border-radius:12px;border:1px solid rgba(0,0,0,.08);opacity:1;width:350px;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}.card-portrait-clickable{min-height:146px!important}.card-portrait-clickable .right-corner-portrait{right:8px;bottom:8px}.card-portrait-clickable:hover{transform:scale(1.02)}.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}@media only screen and (max-width:768px){.card-portrait{width:calc(100vw - 66px)}.card-wide-v2{min-height:356px}.card-wide-v2 .imageholder img{border-radius:12px 12px 0 0!important}.cbpwidth{width:calc(100vw - 100px)}}"]
136
121
  }] }
137
122
  ];
@@ -149,7 +134,8 @@ CardLandscapeComponent.propDecorators = {
149
134
  showIntranetContent: [{ type: Input }],
150
135
  isIntranetAllowedSettings: [{ type: Input }],
151
136
  isCardLoading: [{ type: Input }],
152
- contentData: [{ type: Output }]
137
+ contentData: [{ type: Output }],
138
+ triggerTelemetry: [{ type: Output }]
153
139
  };
154
140
  if (false) {
155
141
  /** @type {?} */
@@ -165,6 +151,8 @@ if (false) {
165
151
  /** @type {?} */
166
152
  CardLandscapeComponent.prototype.contentData;
167
153
  /** @type {?} */
154
+ CardLandscapeComponent.prototype.triggerTelemetry;
155
+ /** @type {?} */
168
156
  CardLandscapeComponent.prototype.isCardFlipped;
169
157
  /** @type {?} */
170
158
  CardLandscapeComponent.prototype.defaultThumbnail;
@@ -210,4 +198,4 @@ if (false) {
210
198
  */
211
199
  CardLandscapeComponent.prototype.configSvc;
212
200
  }
213
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1sYW5kc2NhcGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN1bmJpcmQtY2IvY29uc3VtcHRpb24vIiwic291cmNlcyI6WyJsaWIvX2NvbW1vbi9jYXJkcy9jYXJkLWxhbmRzY2FwZS9jYXJkLWxhbmRzY2FwZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFPdkcsTUFBTSxPQUFPLHNCQUFzQjs7Ozs7Ozs7SUFtQmpDLFlBQ1UsUUFBcUIsRUFDckIsTUFBb0IsRUFDcEIsU0FBMkIsRUFDM0IsZ0JBQWlELEVBQ2pELFNBQWdDO1FBSmhDLGFBQVEsR0FBUixRQUFRLENBQWE7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQUNwQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWlDO1FBQ2pELGNBQVMsR0FBVCxTQUFTLENBQXVCO1FBbEJqQyxrQkFBYSxHQUFZLEtBQUssQ0FBQTtRQUM3QixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUE7UUFDL0Msa0JBQWEsR0FBVyxLQUFLLENBQUE7UUFFN0Isa0JBQWEsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFBO1FB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NENBQXNCOztJQUN0QiwrQ0FBeUI7O0lBQ3pCLCtDQUFrQjs7SUFDbEIsZ0RBQW1COzs7OztJQUdqQiwwQ0FBNkI7Ozs7O0lBQzdCLHdDQUE0Qjs7Ozs7SUFDNUIsMkNBQW1DOzs7OztJQUNuQyxrREFBeUQ7Ozs7O0lBQ3pELDJDQUF3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5zQ2FyZENvbnRlbnQgfSBmcm9tICcuLi8uLi8uLi9fbW9kZWxzL2NhcmQtY29udGVudC5tb2RlbCc7XG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25zU2VydmljZSwgRXZlbnRTZXJ2aWNlIH0gZnJvbSAnQHN1bmJpcmQtY2IvdXRpbHMtdjInO1xuaW1wb3J0ICogYXMgXyBmcm9tIFwibG9kYXNoXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNdWx0aWxpbmd1YWxUcmFuc2xhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vX3NlcnZpY2VzL211bHRpbGluZ3VhbC10cmFuc2xhdGlvbnMuc2VydmljZSc7XG4gXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzYi11aWMtY2FyZC1sYW5kc2NhcGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC1sYW5kc2NhcGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXJkLWxhbmRzY2FwZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENhcmRMYW5kc2NhcGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpIHdpZGdldERhdGEhOiBOc0NhcmRDb250ZW50LklDYXJkO1xuICBASW5wdXQoKSBpc0xpdmVPck1hcmtGb3JEZWxldGlvbjogYW55XG4gIEBJbnB1dCgpIHNob3dJbnRyYW5ldENvbnRlbnQ6IGFueVxuICBASW5wdXQoKSBpc0ludHJhbmV0QWxsb3dlZFNldHRpbmdzOiBhbnlcbiAgQElucHV0KCkgaXNDYXJkTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlXG4gIEBPdXRwdXQoKSBjb250ZW50RGF0YSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpXG4gIGlzQ2FyZEZsaXBwZWQ6Ym9vbGVhbiA9IGZhbHNlXG4gIGRlZmF1bHRUaHVtYm5haWw6IGFueVxuICBhY2JwQ29uc3RhbnRzID0gTnNDYXJkQ29udGVudC5BQ0JQQ29uc3RcbiAgc291cmNlTG9nb3M6IGFueVxuICBkZWZhdWx0U0xvZ286IGFueVxuICBzaG93RmxpcCA9IGZhbHNlXG4gIHdpZGdldFR5cGU6IGFueSA9ICdkZidcbiAgd2lkZ2V0U3ViVHlwZTogYW55ID0nc2RmJ1xuICBjYlBsYW5NYXBEYXRhOiBhbnlcbiAgY2JQbGFuSW50ZXJ2YWw6IGFueVxuICBcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzbmFja0JhcjogTWF0U25hY2tCYXIsXG4gICAgcHJpdmF0ZSBldmVudHM6IEV2ZW50U2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIGxhbmd0cmFuc2xhdGlvbnM6IE11bHRpbGluZ3VhbFRyYW5zbGF0aW9uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWdTdmM6IENvbmZpZ3VyYXRpb25zU2VydmljZSwpIHsgXG4gICAgICB0aGlzLmxhbmd0cmFuc2xhdGlvbnMubGFuZ3VhZ2VTZWxlY3RlZE9ic2VydmFibGUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd3ZWJzaXRlTGFuZ3VhZ2UnKSkge1xuICAgICAgICAgIHRoaXMudHJhbnNsYXRlLnNldERlZmF1bHRMYW5nKCdlbicpXG4gICAgICAgICAgY29uc3QgbGFuZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd3ZWJzaXRlTGFuZ3VhZ2UnKSFcbiAgICAgICAgICB0aGlzLnRyYW5zbGF0ZS51c2UobGFuZylcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgaW5zdGFuY2VDb25maWcgPSB0aGlzLmNvbmZpZ1N2Yy5pbnN0YW5jZUNvbmZpZ1xuICAgIGlmIChpbnN0YW5jZUNvbmZpZykge1xuICAgICAgdGhpcy5kZWZhdWx0VGh1bWJuYWlsID0gaW5zdGFuY2VDb25maWcubG9nb3MuZGVmYXVsdENvbnRlbnQgfHwgJydcbiAgICAgIHRoaXMuc291cmNlTG9nb3MgPSBpbnN0YW5jZUNvbmZpZy5zb3VyY2VzXG4gICAgICB0aGlzLmRlZmF1bHRTTG9nbyA9IGluc3RhbmNlQ29uZmlnLmxvZ29zLmRlZmF1bHRTb3VyY2VMb2dvIHx8ICcnXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGVmYXVsdFRodW1ibmFpbCA9ICcvYXNzZXRzL2luc3RhbmNlcy9lYWdsZS9hcHBfbG9nb3MvZGVmYXVsdC5wbmcnXG4gICAgICB0aGlzLmRlZmF1bHRTTG9nbyA9ICAnL2Fzc2V0cy9pbnN0YW5jZXMvZWFnbGUvYXBwX2xvZ29zL0thcm1heW9naUJoYXJhdF9Mb2dvLnN2ZydcbiAgICB9XG4gICAgdGhpcy5jYlBsYW5JbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgIHRoaXMuZ2V0Q2JQbGFuRGF0YSgpXG4gICAgfSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMDApXG4gIH1cblxuICBzaG93U25hY2tiYXIoKSB7XG4gICAgaWYgKHRoaXMuc2hvd0ludHJhbmV0Q29udGVudCkge1xuICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKCdDb250ZW50IGlzIG9ubHkgYXZhaWxhYmxlIGluIGludHJhbmV0JywgJ1gnLCB7IGR1cmF0aW9uOiAyMDAwIH0pXG4gICAgfSBlbHNlIGlmICghdGhpcy5pc0xpdmVPck1hcmtGb3JEZWxldGlvbikge1xuICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKCdDb250ZW50IG1heSBiZSBleHBpcmVkIG9yIGRlbGV0ZWQnLCAnWCcsIHsgZHVyYXRpb246IDIwMDAgfSlcbiAgICB9XG4gIH1cbiAgZ2V0UmVkaXJlY3RVcmxEYXRhKGNvbnRlbnREYXRhOiBhbnkpe1xuICAgIHRoaXMuY29udGVudERhdGEuZW1pdChjb250ZW50RGF0YSlcbiAgfVxuICByYWlzZVRlbGVtZXRyeSgpIHtcbiAgICAvLyBpZih0aGlzLmZvclByZXZpZXcpe1xuICAgIC8vICAgcmV0dXJuXG4gICAgLy8gfVxuICAgIHRoaXMuZXZlbnRzLnJhaXNlSW50ZXJhY3RUZWxlbWV0cnkoXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdjbGljaycsXG4gICAgICAgIHN1YlR5cGU6IGAke3RoaXMud2lkZ2V0VHlwZX0tJHt0aGlzLndpZGdldFN1YlR5cGV9YCxcbiAgICAgICAgaWQ6IGAke18uY2FtZWxDYXNlKHRoaXMud2lkZ2V0RGF0YS5jb250ZW50LnByaW1hcnlDYXRlZ29yeSl9LWNhcmRgLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6IHRoaXMud2lkZ2V0RGF0YS5jb250ZW50LmlkZW50aWZpZXIsXG4gICAgICAgIHR5cGU6IHRoaXMud2lkZ2V0RGF0YS5jb250ZW50LnByaW1hcnlDYXRlZ29yeSxcbiAgICAgICAgLy9jb250ZXh0OiB0aGlzLndpZGdldERhdGEuY29udGV4dCxcbiAgICAgICAgcm9sbHVwOiB7fSxcbiAgICAgICAgdmVyOiBgJHt0aGlzLndpZGdldERhdGEuY29udGVudC52ZXJzaW9ufSR7Jyd9YCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHBhZ2VJZEV4dDogYCR7Xy5jYW1lbENhc2UodGhpcy53aWRnZXREYXRhLmNvbnRlbnQucHJpbWFyeUNhdGVnb3J5KX0tY2FyZGAsXG4gICAgICAgIG1vZHVsZTogXy5jYW1lbENhc2UodGhpcy53aWRnZXREYXRhLmNvbnRlbnQucHJpbWFyeUNhdGVnb3J5KSxcbiAgICAgIH0pXG4gIH1cblxuICBnZXRDYlBsYW5EYXRhKCkge1xuICAgIGxldCBjYnBMaXN0OiBhbnk9e31cbiAgICBpZiAobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2NicERhdGEnKSkge1xuICAgICAgbGV0IGNicExpc3RBcnIgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdjYnBEYXRhJykgfHwgJycpXG4gICAgICBpZiAoY2JwTGlzdEFyciAmJiBjYnBMaXN0QXJyLmxlbmd0aCkge1xuICAgICAgICBjYnBMaXN0QXJyLmZvckVhY2goKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGNicExpc3RbZGF0YS5pZGVudGlmaWVyXSA9IGRhdGFcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICAgIHRoaXMuY2JQbGFuTWFwRGF0YSA9IGNicExpc3RcbiAgICAgIC8vIHRoaXMua2FybWFQb2ludExvYWRpbmcgPSBmYWxzZVxuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmNiUGxhbkludGVydmFsKVxuICAgIH1cbiAgfVxuXG5cbn1cbiJdfQ==
201
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1sYW5kc2NhcGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN1bmJpcmQtY2IvY29uc3VtcHRpb24vIiwic291cmNlcyI6WyJsaWIvX2NvbW1vbi9jYXJkcy9jYXJkLWxhbmRzY2FwZS9jYXJkLWxhbmRzY2FwZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFM0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFPdkcsTUFBTSxPQUFPLHNCQUFzQjs7Ozs7Ozs7SUFvQmpDLFlBQ1UsUUFBcUIsRUFDckIsTUFBb0IsRUFDcEIsU0FBMkIsRUFDM0IsZ0JBQWlELEVBQ2pELFNBQWdDO1FBSmhDLGFBQVEsR0FBUixRQUFRLENBQWE7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQUNwQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWlDO1FBQ2pELGNBQVMsR0FBVCxTQUFTLENBQXVCO1FBbkJqQyxrQkFBYSxHQUFZLEtBQUssQ0FBQTtRQUM3QixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUE7UUFDckMscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQTtRQUNwRCxrQkFBYSxHQUFXLEtBQUssQ0FBQTtRQUU3QixrQkFBYSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUE7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RSx1QkFBdUI7Z0JBQ2pDLG80T0FBOEM7O2FBRS9DOzs7O1lBVlEsV0FBVztZQUNZLFlBQVk7WUFFbkMsZ0JBQWdCO1lBQ2hCLCtCQUErQjtZQUgvQixxQkFBcUI7Ozt5QkFZM0IsS0FBSztzQ0FDTCxLQUFLO2tDQUNMLEtBQUs7d0NBQ0wsS0FBSzs0QkFDTCxLQUFLOzBCQUNMLE1BQU07K0JBQ04sTUFBTTs7OztJQU5QLDRDQUEwQzs7SUFDMUMseURBQXFDOztJQUNyQyxxREFBaUM7O0lBQ2pDLDJEQUF1Qzs7SUFDdkMsK0NBQXVDOztJQUN2Qyw2Q0FBK0M7O0lBQy9DLGtEQUFvRDs7SUFDcEQsK0NBQTZCOztJQUM3QixrREFBcUI7O0lBQ3JCLCtDQUF1Qzs7SUFDdkMsNkNBQWdCOztJQUNoQiw4Q0FBaUI7O0lBQ2pCLDBDQUFnQjs7SUFDaEIsNENBQXNCOztJQUN0QiwrQ0FBeUI7O0lBQ3pCLCtDQUFrQjs7SUFDbEIsZ0RBQW1COzs7OztJQUdqQiwwQ0FBNkI7Ozs7O0lBQzdCLHdDQUE0Qjs7Ozs7SUFDNUIsMkNBQW1DOzs7OztJQUNuQyxrREFBeUQ7Ozs7O0lBQ3pELDJDQUF3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5zQ2FyZENvbnRlbnQgfSBmcm9tICcuLi8uLi8uLi9fbW9kZWxzL2NhcmQtY29udGVudC5tb2RlbCc7XG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25zU2VydmljZSwgRXZlbnRTZXJ2aWNlIH0gZnJvbSAnQHN1bmJpcmQtY2IvdXRpbHMtdjInO1xuaW1wb3J0ICogYXMgXyBmcm9tIFwibG9kYXNoXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNdWx0aWxpbmd1YWxUcmFuc2xhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vX3NlcnZpY2VzL211bHRpbGluZ3VhbC10cmFuc2xhdGlvbnMuc2VydmljZSc7XG4gXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzYi11aWMtY2FyZC1sYW5kc2NhcGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC1sYW5kc2NhcGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXJkLWxhbmRzY2FwZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENhcmRMYW5kc2NhcGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpIHdpZGdldERhdGEhOiBOc0NhcmRDb250ZW50LklDYXJkO1xuICBASW5wdXQoKSBpc0xpdmVPck1hcmtGb3JEZWxldGlvbjogYW55XG4gIEBJbnB1dCgpIHNob3dJbnRyYW5ldENvbnRlbnQ6IGFueVxuICBASW5wdXQoKSBpc0ludHJhbmV0QWxsb3dlZFNldHRpbmdzOiBhbnlcbiAgQElucHV0KCkgaXNDYXJkTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlXG4gIEBPdXRwdXQoKSBjb250ZW50RGF0YSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpXG4gIEBPdXRwdXQoKSB0cmlnZ2VyVGVsZW1ldHJ5ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KClcbiAgaXNDYXJkRmxpcHBlZDpib29sZWFuID0gZmFsc2VcbiAgZGVmYXVsdFRodW1ibmFpbDogYW55XG4gIGFjYnBDb25zdGFudHMgPSBOc0NhcmRDb250ZW50LkFDQlBDb25zdFxuICBzb3VyY2VMb2dvczogYW55XG4gIGRlZmF1bHRTTG9nbzogYW55XG4gIHNob3dGbGlwID0gZmFsc2VcbiAgd2lkZ2V0VHlwZTogYW55ID0gJ2RmJ1xuICB3aWRnZXRTdWJUeXBlOiBhbnkgPSdzZGYnXG4gIGNiUGxhbk1hcERhdGE6IGFueVxuICBjYlBsYW5JbnRlcnZhbDogYW55XG4gIFxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNuYWNrQmFyOiBNYXRTbmFja0JhcixcbiAgICBwcml2YXRlIGV2ZW50czogRXZlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgbGFuZ3RyYW5zbGF0aW9uczogTXVsdGlsaW5ndWFsVHJhbnNsYXRpb25zU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ1N2YzogQ29uZmlndXJhdGlvbnNTZXJ2aWNlLCkgeyBcbiAgICAgIHRoaXMubGFuZ3RyYW5zbGF0aW9ucy5sYW5ndWFnZVNlbGVjdGVkT2JzZXJ2YWJsZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3dlYnNpdGVMYW5ndWFnZScpKSB7XG4gICAgICAgICAgdGhpcy50cmFuc2xhdGUuc2V0RGVmYXVsdExhbmcoJ2VuJylcbiAgICAgICAgICBjb25zdCBsYW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3dlYnNpdGVMYW5ndWFnZScpIVxuICAgICAgICAgIHRoaXMudHJhbnNsYXRlLnVzZShsYW5nKVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBpbnN0YW5jZUNvbmZpZyA9IHRoaXMuY29uZmlnU3ZjLmluc3RhbmNlQ29uZmlnXG4gICAgaWYgKGluc3RhbmNlQ29uZmlnKSB7XG4gICAgICB0aGlzLmRlZmF1bHRUaHVtYm5haWwgPSBpbnN0YW5jZUNvbmZpZy5sb2dvcy5kZWZhdWx0Q29udGVudCB8fCAnJ1xuICAgICAgdGhpcy5zb3VyY2VMb2dvcyA9IGluc3RhbmNlQ29uZmlnLnNvdXJjZXNcbiAgICAgIHRoaXMuZGVmYXVsdFNMb2dvID0gaW5zdGFuY2VDb25maWcubG9nb3MuZGVmYXVsdFNvdXJjZUxvZ28gfHwgJydcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kZWZhdWx0VGh1bWJuYWlsID0gJy9hc3NldHMvaW5zdGFuY2VzL2VhZ2xlL2FwcF9sb2dvcy9kZWZhdWx0LnBuZydcbiAgICAgIHRoaXMuZGVmYXVsdFNMb2dvID0gICcvYXNzZXRzL2luc3RhbmNlcy9lYWdsZS9hcHBfbG9nb3MvS2FybWF5b2dpQmhhcmF0X0xvZ28uc3ZnJ1xuICAgIH1cbiAgICB0aGlzLmNiUGxhbkludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgdGhpcy5nZXRDYlBsYW5EYXRhKClcbiAgICB9LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTAwMClcbiAgfVxuXG4gIHNob3dTbmFja2JhcigpIHtcbiAgICBpZiAodGhpcy5zaG93SW50cmFuZXRDb250ZW50KSB7XG4gICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oJ0NvbnRlbnQgaXMgb25seSBhdmFpbGFibGUgaW4gaW50cmFuZXQnLCAnWCcsIHsgZHVyYXRpb246IDIwMDAgfSlcbiAgICB9IGVsc2UgaWYgKCF0aGlzLmlzTGl2ZU9yTWFya0ZvckRlbGV0aW9uKSB7XG4gICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oJ0NvbnRlbnQgbWF5IGJlIGV4cGlyZWQgb3IgZGVsZXRlZCcsICdYJywgeyBkdXJhdGlvbjogMjAwMCB9KVxuICAgIH1cbiAgfVxuICBnZXRSZWRpcmVjdFVybERhdGEoY29udGVudERhdGE6IGFueSl7XG4gICAgdGhpcy5jb250ZW50RGF0YS5lbWl0KGNvbnRlbnREYXRhKVxuICB9XG4gIHJhaXNlVGVsZW1ldHJ5KGNvbnRlbnQ6IGFueSkge1xuICAgIHRoaXMudHJpZ2dlclRlbGVtZXRyeS5lbWl0KGNvbnRlbnQpXG4gIH1cblxuXG4gIGdldENiUGxhbkRhdGEoKSB7XG4gICAgbGV0IGNicExpc3Q6IGFueT17fVxuICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY2JwRGF0YScpKSB7XG4gICAgICBsZXQgY2JwTGlzdEFyciA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2NicERhdGEnKSB8fCAnJylcbiAgICAgIGlmIChjYnBMaXN0QXJyICYmIGNicExpc3RBcnIubGVuZ3RoKSB7XG4gICAgICAgIGNicExpc3RBcnIuZm9yRWFjaCgoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgY2JwTGlzdFtkYXRhLmlkZW50aWZpZXJdID0gZGF0YVxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgdGhpcy5jYlBsYW5NYXBEYXRhID0gY2JwTGlzdFxuICAgICAgLy8gdGhpcy5rYXJtYVBvaW50TG9hZGluZyA9IGZhbHNlXG4gICAgICBjbGVhckludGVydmFsKHRoaXMuY2JQbGFuSW50ZXJ2YWwpXG4gICAgfVxuICB9XG5cblxufVxuIl19