@sunbird-cb/consumption 0.0.87 → 0.0.89
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.
- package/bundles/sunbird-cb-consumption.umd.js +1594 -1504
- package/bundles/sunbird-cb-consumption.umd.js.map +1 -1
- package/bundles/sunbird-cb-consumption.umd.min.js +2 -2
- package/bundles/sunbird-cb-consumption.umd.min.js.map +1 -1
- package/esm2015/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.js +4 -7
- package/esm2015/lib/_common/cards/card-karma-programs/card-karma-programs.component.js +3 -3
- package/esm2015/lib/_common/cards/card-mdo-channel/card-mdo-channel.component.js +3 -3
- package/esm2015/lib/_common/cards/card-mdo-channel-v1/card-mdo-channel-v1.component.js +3 -3
- package/esm2015/lib/_common/cards/card-portrait/card-portrait.component.js +3 -3
- package/esm2015/lib/_common/cards/card-portrait-ext/card-portrait-ext.component.js +3 -3
- package/esm2015/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.js +3 -3
- package/esm2015/lib/_common/cards/cards.component.js +4 -24
- package/esm2015/lib/_common/common-strip/common-strip.component.js +5 -5
- package/esm2015/lib/_common/competency-passbook/competency-passbook.component.js +3 -3
- package/esm2015/lib/_common/competency-passbook-mdo/competency-passbook-mdo.component.js +3 -3
- package/esm2015/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.js +50 -54
- package/esm2015/lib/_common/mdo-leaderboard/mdo-leaderboard.component.js +6 -6
- package/esm2015/lib/_common/strips/content-strip-facet-filter/content-strip-facet-filter.component.js +7 -9
- package/esm2015/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.component.js +8 -8
- package/esm2015/lib/_common/user-progress/user-progress.component.js +1 -2
- package/esm2015/lib/_services/widget-content-lib.service.js +899 -0
- package/esm2015/lib/_services/widget-user-lib.service.js +523 -0
- package/esm2015/public-api.js +3 -2
- package/esm2015/sunbird-cb-consumption.js +77 -78
- package/esm5/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.js +4 -7
- package/esm5/lib/_common/cards/card-karma-programs/card-karma-programs.component.js +3 -3
- package/esm5/lib/_common/cards/card-mdo-channel/card-mdo-channel.component.js +3 -3
- package/esm5/lib/_common/cards/card-mdo-channel-v1/card-mdo-channel-v1.component.js +3 -3
- package/esm5/lib/_common/cards/card-portrait/card-portrait.component.js +3 -3
- package/esm5/lib/_common/cards/card-portrait-ext/card-portrait-ext.component.js +3 -3
- package/esm5/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.js +3 -3
- package/esm5/lib/_common/cards/cards.component.js +4 -27
- package/esm5/lib/_common/common-strip/common-strip.component.js +5 -5
- package/esm5/lib/_common/competency-passbook/competency-passbook.component.js +3 -3
- package/esm5/lib/_common/competency-passbook-mdo/competency-passbook-mdo.component.js +3 -3
- package/esm5/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.js +83 -87
- package/esm5/lib/_common/mdo-leaderboard/mdo-leaderboard.component.js +6 -6
- package/esm5/lib/_common/strips/content-strip-facet-filter/content-strip-facet-filter.component.js +7 -9
- package/esm5/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.component.js +8 -9
- package/esm5/lib/_common/user-progress/user-progress.component.js +1 -2
- package/esm5/lib/_services/widget-content-lib.service.js +1170 -0
- package/esm5/lib/_services/widget-user-lib.service.js +607 -0
- package/esm5/public-api.js +3 -2
- package/esm5/sunbird-cb-consumption.js +77 -78
- package/fesm2015/sunbird-cb-consumption.js +1159 -1096
- package/fesm2015/sunbird-cb-consumption.js.map +1 -1
- package/fesm5/sunbird-cb-consumption.js +1519 -1429
- package/fesm5/sunbird-cb-consumption.js.map +1 -1
- package/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.d.ts +2 -3
- package/lib/_common/cards/card-karma-programs/card-karma-programs.component.d.ts +2 -2
- package/lib/_common/cards/card-mdo-channel/card-mdo-channel.component.d.ts +2 -2
- package/lib/_common/cards/card-mdo-channel-v1/card-mdo-channel-v1.component.d.ts +2 -2
- package/lib/_common/cards/card-portrait/card-portrait.component.d.ts +2 -2
- package/lib/_common/cards/card-portrait-ext/card-portrait-ext.component.d.ts +2 -2
- package/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.d.ts +2 -2
- package/lib/_common/cards/cards.component.d.ts +2 -5
- package/lib/_common/common-strip/common-strip.component.d.ts +3 -3
- package/lib/_common/competency-passbook/competency-passbook.component.d.ts +3 -3
- package/lib/_common/competency-passbook-mdo/competency-passbook-mdo.component.d.ts +3 -3
- package/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.d.ts +4 -6
- package/lib/_common/strips/content-strip-facet-filter/content-strip-facet-filter.component.d.ts +3 -4
- package/lib/_common/strips/content-strip-with-tabs-pills/content-strip-with-tabs-pills.component.d.ts +3 -4
- package/lib/_services/{widget-content.service.d.ts → widget-content-lib.service.d.ts} +6 -3
- package/lib/_services/{widget-user.service.d.ts → widget-user-lib.service.d.ts} +9 -4
- package/package.json +1 -1
- package/public-api.d.ts +2 -1
- package/sunbird-cb-consumption.d.ts +75 -76
- package/sunbird-cb-consumption.metadata.json +1 -1
- package/esm2015/lib/_services/widget-content.service.js +0 -852
- package/esm2015/lib/_services/widget-user.service.js +0 -475
- package/esm5/lib/_services/widget-content.service.js +0 -1109
- package/esm5/lib/_services/widget-user.service.js +0 -542
|
@@ -43,7 +43,7 @@ export class MdoLeaderboardComponent {
|
|
|
43
43
|
* @param {?} user
|
|
44
44
|
* @return {?}
|
|
45
45
|
*/
|
|
46
|
-
user => (Object.assign({}, user, { children: [], selected: false }))));
|
|
46
|
+
user => (Object.assign({}, user, { children: [], selected: false })))).slice(0, 5);
|
|
47
47
|
}
|
|
48
48
|
}), (/**
|
|
49
49
|
* @param {?} error
|
|
@@ -70,7 +70,7 @@ export class MdoLeaderboardComponent {
|
|
|
70
70
|
* @param {?} user
|
|
71
71
|
* @return {?}
|
|
72
72
|
*/
|
|
73
|
-
user => (Object.assign({}, user, { children: [], selected: false }))));
|
|
73
|
+
user => (Object.assign({}, user, { children: [], selected: false })))).slice(0, 5);
|
|
74
74
|
/** @type {?} */
|
|
75
75
|
let nameStr = '';
|
|
76
76
|
switch (name) {
|
|
@@ -131,7 +131,7 @@ export class MdoLeaderboardComponent {
|
|
|
131
131
|
* @param {?} user
|
|
132
132
|
* @return {?}
|
|
133
133
|
*/
|
|
134
|
-
user => (Object.assign({}, user, { children: [] }))));
|
|
134
|
+
user => (Object.assign({}, user, { children: [] })))).slice(0, 5);
|
|
135
135
|
}
|
|
136
136
|
else {
|
|
137
137
|
this.filteredData = this.result.mdoLeaderBoard
|
|
@@ -144,7 +144,7 @@ export class MdoLeaderboardComponent {
|
|
|
144
144
|
* @param {?} user
|
|
145
145
|
* @return {?}
|
|
146
146
|
*/
|
|
147
|
-
user => (Object.assign({}, user, { children: [] }))));
|
|
147
|
+
user => (Object.assign({}, user, { children: [] })))).slice(0, 5);
|
|
148
148
|
}
|
|
149
149
|
}
|
|
150
150
|
/**
|
|
@@ -157,7 +157,7 @@ export class MdoLeaderboardComponent {
|
|
|
157
157
|
MdoLeaderboardComponent.decorators = [
|
|
158
158
|
{ type: Component, args: [{
|
|
159
159
|
selector: 'sb-uic-mdo-leaderboard',
|
|
160
|
-
template: "<div class=\"mdo-leaderboard-container\">\n <div class=\"flex l-title gap-2 items-center justify-between px-4 md:px-0 py-4 md:py-0\">\n <div class=\"flex gap-2\">\n {{object?.title}} <div><img [src]=\"object?.infoIcon\" alt=\"\" i18n-matTooltip [matTooltip]=\"object?.infoText\"></div>\n </div>\n <div class=\"block md:hidden\">\n <mat-icon (click)=\"toggleWeekHightlits()\">expand_more</mat-icon>\n </div>\n </div>\n <div class=\"flex item-center justify-center\" *ngIf=\"expand\">\n <div class=\"flex fl-div\">\n <div class=\"pointer\">\n <span class=\"dot-dot\"></span>\n </div>\n </div>\n </div>\n <div class=\"l-content\" *ngIf=\"expand\">\n <div class=\"horizontal-scroll-container\">\n <div class=\"scroll-content\">\n <span class=\"tab-title\" [ngClass]=\"{'active' : currentTab === 'XL' }\" (click)=\"getTabData('XL')\">Greater than 50K</span>\n <span class=\"tab-title\" [ngClass]=\"{'active' : currentTab === 'L' }\" (click)=\"getTabData('L')\">10K-50K</span>\n <span class=\"tab-title\" [ngClass]=\"{'active' : currentTab === 'M' }\" (click)=\"getTabData('M')\">1K-10K</span>\n <span class=\"tab-title\" [ngClass]=\"{'active' : currentTab === 'S' }\" (click)=\"getTabData('S')\">500-1K</span>\n <span class=\"tab-title\" [ngClass]=\"{'active' : currentTab === 'XS' }\" (click)=\"getTabData('XS')\">Less than 500</span>\n </div>\n </div>\n <div class=\"relative search-wrapper margin-top-m mb-5\">\n <mat-icon matPrefix class=\"flex absolute items-center justify-center mr-2 icon-search\">search\n </mat-icon>\n <input type=\"search\" name=\"searchKey\" class=\"search-field\" i18-aria-label\n aria-label=\"Search\" i18n-placeholder=\"search\" [(ngModel)]=\"searchTerm\"\n placeholder=\"Search your MDO\" (keyup)=\"handleSearchQuery($event)\" />\n </div>\n <div class=\"l-tab-data\">\n <div *ngFor=\"let user of filteredData\">\n <div class=\"flex flex-row item mb-5 gap-3 {{user.row_num === 1 ? 'relative' : ''}}\" >\n <div><img class=\"crown absolute\" src=\"assets/images/national-learning/rank-crown.svg\" *ngIf=\"user.row_num === 1\"/></div>\n <div class=\"{{getRank(user.row_num)}}\">{{user.row_num}}</div>\n <div class=\"w-full\">\n <div class=\"flex flex-between gap-2\">\n <div>\n <div class=\"rank-name\">{{user.org_name}}</div>\n <div class=\"rank-points flex mt-1 gap-1\">\n <img class=\"nlw-kb\" src=\"assets/icons/home/karma-badge.svg\"/>\n <div class=\"points\">{{user.total_points || 0 }} points</div>\n </div>\n </div>\n <div class=\"rank-crown\" *ngIf=\"[1,2,3].includes(user.row_num)\">\n <img class=\"nlw-animation\" [src]=\"getMedal(user.row_num)\"/>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"no-data px-1\" *ngIf=\"filteredData?.length === 0\">\n No data found!\n </div>\n </div>\n </div>\n</div>\n",
|
|
160
|
+
template: "<div class=\"mdo-leaderboard-container\">\n <div class=\"flex l-title gap-2 items-center justify-between px-4 md:px-0 py-4 md:py-0\">\n <div class=\"flex gap-2\">\n {{object?.title}} <div><img [src]=\"object?.infoIcon\" alt=\"\" i18n-matTooltip [matTooltip]=\"object?.infoText\"></div>\n </div>\n <div class=\"block md:hidden\">\n <mat-icon (click)=\"toggleWeekHightlits()\">expand_more</mat-icon>\n </div>\n </div>\n <div class=\"flex item-center justify-center\" *ngIf=\"expand\">\n <div class=\"flex fl-div\">\n <div class=\"pointer\">\n <span class=\"dot-dot\"></span>\n </div>\n </div>\n </div>\n <div class=\"l-content\" *ngIf=\"expand\">\n <div class=\"horizontal-scroll-container\">\n <div class=\"scroll-content\">\n <span class=\"tab-title\" [ngClass]=\"{'active' : currentTab === 'XL' }\" (click)=\"getTabData('XL')\">Greater than 50K</span>\n <span class=\"tab-title\" [ngClass]=\"{'active' : currentTab === 'L' }\" (click)=\"getTabData('L')\">10K-50K</span>\n <span class=\"tab-title\" [ngClass]=\"{'active' : currentTab === 'M' }\" (click)=\"getTabData('M')\">1K-10K</span>\n <span class=\"tab-title\" [ngClass]=\"{'active' : currentTab === 'S' }\" (click)=\"getTabData('S')\">500-1K</span>\n <span class=\"tab-title\" [ngClass]=\"{'active' : currentTab === 'XS' }\" (click)=\"getTabData('XS')\">Less than 500</span>\n </div>\n </div>\n <div class=\"relative search-wrapper margin-top-m mb-5\">\n <mat-icon matPrefix class=\"flex absolute items-center justify-center mr-2 icon-search\">search\n </mat-icon>\n <input type=\"search\" name=\"searchKey\" class=\"search-field\" i18-aria-label\n aria-label=\"Search\" i18n-placeholder=\"search\" [(ngModel)]=\"searchTerm\"\n placeholder=\"Search your MDO\" (keyup)=\"handleSearchQuery($event)\" />\n </div>\n <div class=\"l-tab-data\">\n <div *ngFor=\"let user of filteredData; let i = index\">\n <div class=\"flex flex-row item mb-{{filteredData.length - 1 === i ? 0 : 5}} gap-3 {{user.row_num === 1 ? 'relative' : ''}}\" >\n <div><img class=\"crown absolute\" src=\"assets/images/national-learning/rank-crown.svg\" *ngIf=\"user.row_num === 1\"/></div>\n <div class=\"{{getRank(user.row_num)}}\">{{user.row_num}}</div>\n <div class=\"w-full\">\n <div class=\"flex flex-between gap-2\">\n <div>\n <div class=\"rank-name\">{{user.org_name}}</div>\n <div class=\"rank-points flex mt-1 gap-1\">\n <img class=\"nlw-kb\" src=\"assets/icons/home/karma-badge.svg\"/>\n <div class=\"points\">{{user.total_points || 0 }} points</div>\n </div>\n </div>\n <div class=\"rank-crown\" *ngIf=\"[1,2,3].includes(user.row_num)\">\n <img class=\"nlw-animation\" [src]=\"getMedal(user.row_num)\"/>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"no-data px-1\" *ngIf=\"filteredData?.length === 0\">\n No data found!\n </div>\n </div>\n </div>\n</div>\n",
|
|
161
161
|
styles: [".l-title{font-family:Montserrat;font-size:20px;font-weight:600;line-height:24.38px;text-align:left}.l-content{background-color:#e9eef6;border-radius:16px;padding:16px}.horizontal-scroll-container{overflow-x:auto;white-space:nowrap;-ms-overflow-style:none;scrollbar-width:none;height:32px}.horizontal-scroll-container::-webkit-scrollbar{display:none}.scroll-content{display:inline-block}.tab-title{font-family:Lato;font-size:14px;line-height:16.8px;text-align:left;cursor:pointer;padding:0 15px 8px;border-bottom:2px solid #c3c3c3}.active{font-weight:700;border-bottom:2px solid #1b4ca1}.search-field{height:34px;padding:0 16px 0 40px;border-radius:52px;background:#fff;border:2px solid rgba(0,0,0,.0784313725);width:100%}.icon-search{top:10px;left:15px;height:15px;width:17px}.item{border-radius:12px;background-color:#fff;padding:16px;align-items:flex-start}.rank1{background:#ffca28;font-family:Lato;font-size:14px;font-weight:700;line-height:9px;text-align:center;border-radius:50%;padding:10px}.rank2{background:#1b4ca1;font-family:Lato;font-size:14px;font-weight:700;line-height:9px;text-align:center;border-radius:50%;padding:10px;color:#fff}.rank3{background:#ff8228;font-family:Lato;font-size:14px;font-weight:700;line-height:9px;text-align:center;border-radius:50%;padding:10px}.rank0{font-family:Lato;font-size:14px;font-weight:700;line-height:9px;text-align:center;border-radius:50%;padding:10px;border:1px solid #c3c3c3}.rank-name{font-family:Montserrat;line-height:1.5em;font-size:16px;font-weight:600;text-align:left;align-items:center;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2}.rank-points{align-items:center}.nlw-kb{height:24px;width:24px}.points{font-family:Lato;font-size:14px;font-weight:600;line-height:16.8px;text-align:right}.crown{left:10px;top:0;width:36px;height:36px}.l-tab-data{height:520px;overflow:auto;padding-bottom:16px}.l-tab-data::-webkit-scrollbar{display:none}.pointer{margin-bottom:-59px;border-radius:41px;background:#c3c3c3;border:35px solid #e9eef6}.dot-dot{width:7px;display:flex;height:7px;background:#c3c3c3;margin-top:-25px;border-radius:10px}@media screen and (min-width:320px) and (max-width:769px){.mdo-leaderboard-container{background-color:#d1dbec}}"]
|
|
162
162
|
}] }
|
|
163
163
|
];
|
|
@@ -190,4 +190,4 @@ if (false) {
|
|
|
190
190
|
*/
|
|
191
191
|
MdoLeaderboardComponent.prototype.insiteDataService;
|
|
192
192
|
}
|
|
193
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
193
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWRvLWxlYWRlcmJvYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzdW5iaXJkLWNiL2NvbnN1bXB0aW9uLyIsInNvdXJjZXMiOlsibGliL19jb21tb24vbWRvLWxlYWRlcmJvYXJkL21kby1sZWFkZXJib2FyZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFPeEUsTUFBTSxPQUFPLHVCQUF1Qjs7OztJQVVsQyxZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVJ4RCxlQUFVLEdBQVEsSUFBSSxDQUFBO1FBQ3RCLFdBQU0sR0FBUSxFQUFFLENBQUE7UUFFaEIsZUFBVSxHQUFXLEVBQUUsQ0FBQTtRQUN2QixXQUFNLEdBQVksSUFBSSxDQUFBO1FBR1osZUFBVSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUE7SUFDYyxDQUFDOzs7O0lBRTdELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUE7SUFDaEIsQ0FBQzs7OztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxTQUFTOzs7O1FBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUM3RCxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxFQUFFO2dCQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUE7Z0JBQ3hCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjO3FCQUN6QyxNQUFNOzs7O2dCQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFD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LEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7U0FDM0Q7YUFBTTtZQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjO2lCQUN6QyxNQUFNOzs7O1lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxVQUFVLEVBQUM7aUJBQzdDLEdBQUc7Ozs7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLG1CQUFNLElBQUksSUFBRSxRQUFRLEVBQUUsRUFBRSxJQUFFLEVBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO1NBQzNEO0lBQ0gsQ0FBQzs7OztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUM1QixDQUFDOzs7WUEzRkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLHdrSEFBK0M7O2FBRWhEOzs7O1lBTlEsaUJBQWlCOzs7cUJBZXZCLEtBQUs7eUJBQ0wsTUFBTTs7OztJQVBQLDZDQUFzQjs7SUFDdEIseUNBQWdCOztJQUNoQiwrQ0FBaUI7O0lBQ2pCLDZDQUF1Qjs7SUFDdkIseUNBQXNCOztJQUV0Qix5Q0FBb0I7O0lBQ3BCLDZDQUE4Qzs7Ozs7SUFDbEMsb0RBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5zaXRlRGF0YVNlcnZpY2UgfSBmcm9tICcuLi8uLi9fc2VydmljZXMvaW5zaXRlLWRhdGEuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NiLXVpYy1tZG8tbGVhZGVyYm9hcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWRvLWxlYWRlcmJvYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWRvLWxlYWRlcmJvYXJkLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWRvTGVhZGVyYm9hcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGN1cnJlbnRUYWI6IGFueSA9ICdYTCdcbiAgcmVzdWx0OiBhbnkgPSBbXVxuICBmaWx0ZXJlZERhdGE6IGFueVxuICBzZWFyY2hUZXJtOiBzdHJpbmcgPSAnJ1xuICBleHBhbmQ6IGJvb2xlYW4gPSB0cnVlXG5cbiAgQElucHV0KCkgb2JqZWN0OiBhbnlcbiAgQE91dHB1dCgpIHRhYkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluc2l0ZURhdGFTZXJ2aWNlOiBJbnNpdGVEYXRhU2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5nZXREYXRhKClcbiAgfVxuXG4gIGdldERhdGEoKSB7XG4gICAgdGhpcy5pbnNpdGVEYXRhU2VydmljZS5mZXRjaExlYWRlcmJvYXJkKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xuICAgICAgICBpZiAocmVzICYmIHJlcy5yZXN1bHQpIHtcbiAgICAgICAgICAgIHRoaXMucmVzdWx0ID0gcmVzLnJlc3VsdFxuICAgICAgICAgICAgdGhpcy5maWx0ZXJlZERhdGEgPSB0aGlzLnJlc3VsdC5tZG9MZWFkZXJCb2FyZFxuICAgICAgICAgICAgICAgIC5maWx0ZXIodXNlciA9PiB1c2VyLnNpemUgPT09IHRoaXMuY3VycmVudFRhYikgXG4gICAgICAgICAgICAgICAgLm1hcCh1c2VyID0+ICh7IC4uLnVzZXIsIGNoaWxkcmVuOiBbXSwgc2VsZWN0ZWQ6IGZhbHNlIH0pKS5zbGljZSgwLCA1KVxuICAgICAgICB9XG4gICAgICAgIFxuICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IpXG4gICAgfSlcbiAgfVxuXG4gIGdldFRhYkRhdGEobmFtZTogYW55KSB7XG4gICAgdGhpcy5jdXJyZW50VGFiID0gbmFtZVxuICAgIHRoaXMuc2VhcmNoVGVybSA9ICcnXG4gICAgdGhpcy5maWx0ZXJlZERhdGEgPSB0aGlzLnJlc3VsdC5tZG9MZWFkZXJCb2FyZFxuICAgICAgICAuZmlsdGVyKHVzZXIgPT4gdXNlci5zaXplID09PSB0aGlzLmN1cnJlbnRUYWIpIFxuICAgICAgICAgICAgLm1hcCh1c2VyID0+ICh7IC4uLnVzZXIsIGNoaWxkcmVuOiBbXSwgc2VsZWN0ZWQ6IGZhbHNlIH0pKS5zbGljZSgwLCA1KVxuICAgIGxldCBuYW1lU3RyOiBhbnkgPSAnJ1xuICAgIHN3aXRjaCAobmFtZSkge1xuICAgICAgY2FzZSAnWEwnOlxuICAgICAgICBuYW1lU3RyID0gJ2dyZWF0ZXItdGhhbi01MEsnXG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlICdMJzpcbiAgICAgICAgbmFtZVN0ciA9ICAnMTBLLTUwSydcbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ00nOlxuICAgICAgICBuYW1lU3RyID0gICcxSy0xMEsnXG4gICAgICAgIGJyZWFrXG4gICAgICAgIGNhc2UgJ1MnOlxuICAgICAgICAgIG5hbWVTdHIgPSAnNTAwLTFLJ1xuICAgICAgICAgIGJyZWFrXG4gICAgICBkZWZhdWx0OlxuICAgICAgICBuYW1lU3RyID0gJ2xlc3MtdGhhbi01MDAnXG4gICAgICAgIGJyZWFrXG4gICAgfVxuICAgIHRoaXMudGFiQ2xpY2tlZC5lbWl0KG5hbWVTdHIpXG4gIH1cblxuICBnZXRSYW5rKHJhbms6IG51bWJlcikge1xuICAgIHJldHVybiBbMSwyLDNdLmluY2x1ZGVzKHJhbmspID8gYHJhbmske3Jhbmt9YCA6ICdyYW5rMCdcbiAgfVxuXG4gIGdldE1lZGFsKHJhbms6IG51bWJlcikge1xuICAgIGlmIChyYW5rID09PSAxKSB7XG4gICAgICAgIHJldHVybiAnYXNzZXRzL2ltYWdlcy9uYXRpb25hbC1sZWFybmluZy9NZWRhbDEuc3ZnJ1xuICAgIH0gZWxzZSBpZihyYW5rID09PSAyKSB7XG4gICAgICAgIHJldHVybiAnYXNzZXRzL2ltYWdlcy9uYXRpb25hbC1sZWFybmluZy9NZWRhbDIuc3ZnJ1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAnYXNzZXRzL2ltYWdlcy9uYXRpb25hbC1sZWFybmluZy9NZWRhbDMuc3ZnJ1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZVNlYXJjaFF1ZXJ5KGU6IGFueSkge1xuICAgIGlmIChlLnRhcmdldC52YWx1ZSAmJiBlLnRhcmdldC52YWx1ZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuc2VhcmNoVGVybSA9IGUudGFyZ2V0LnZhbHVlXG4gICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gdGhpcy5yZXN1bHQubWRvTGVhZGVyQm9hcmRcbiAgICAgICAgICAgIC5maWx0ZXIodXNlciA9PiB1c2VyLnNpemUgPT09IHRoaXMuY3VycmVudFRhYiAmJiB1c2VyLm9yZ19uYW1lLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZS50YXJnZXQudmFsdWUpKVxuICAgICAgICAgICAgLm1hcCh1c2VyID0+ICh7IC4uLnVzZXIsIGNoaWxkcmVuOiBbXX0pKS5zbGljZSgwLCA1KVxuICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gdGhpcy5yZXN1bHQubWRvTGVhZGVyQm9hcmRcbiAgICAgICAgICAgIC5maWx0ZXIodXNlciA9PiB1c2VyLnNpemUgPT09IHRoaXMuY3VycmVudFRhYilcbiAgICAgICAgICAgIC5tYXAodXNlciA9PiAoeyAuLi51c2VyLCBjaGlsZHJlbjogW119KSkuc2xpY2UoMCwgNSlcbiAgICB9XG4gIH1cblxuICB0b2dnbGVXZWVrSGlnaHRsaXRzKCkge1xuICAgIHRoaXMuZXhwYW5kID0gIXRoaXMuZXhwYW5kXG4gIH1cblxufVxuIl19
|