@churchillliving/se-ui-toolkit 6.53.805 → 6.53.807
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/esm2022/lib/components/base/cards/card.component.mjs +8 -3
- package/esm2022/lib/components/base/form/form.component.mjs +4 -3
- package/esm2022/lib/components/base/grid/grid.component.mjs +4 -55
- package/esm2022/lib/services/form.service.mjs +52 -1
- package/fesm2022/churchillliving-se-ui-toolkit.mjs +64 -58
- package/fesm2022/churchillliving-se-ui-toolkit.mjs.map +1 -1
- package/lib/components/base/grid/grid.component.d.ts +0 -1
- package/lib/services/form.service.d.ts +1 -0
- package/package.json +1 -1
|
@@ -39,8 +39,13 @@ export class CardComponent {
|
|
|
39
39
|
data = this.gridService.setDataFields(data);
|
|
40
40
|
const newArr = [];
|
|
41
41
|
data?.forEach((record) => {
|
|
42
|
-
if (record.url && !record.url.includes(record.fileextension)) {
|
|
43
|
-
|
|
42
|
+
if (record.url && record.fileextension && !record.url.includes(record.fileextension)) {
|
|
43
|
+
if (record.fileextension.startsWith(".")) {
|
|
44
|
+
record.url = record.url + record.fileextension;
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
record.url = record.url + '.' + record.fileextension;
|
|
48
|
+
}
|
|
44
49
|
}
|
|
45
50
|
if (!Object.keys(record)?.includes('azurecontainerid')) {
|
|
46
51
|
const url = (fileRootPath + '/' + fileContainerName + '/')?.toLowerCase();
|
|
@@ -167,4 +172,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImpor
|
|
|
167
172
|
}], setCardData: [{
|
|
168
173
|
type: Input
|
|
169
174
|
}] } });
|
|
170
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2NhcmRzL2NhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2UtdWktdG9vbGtpdC9zcmMvbGliL2NvbXBvbmVudHMvYmFzZS9jYXJkcy9jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxFQUFFLGVBQWUsRUFBNkMsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekQsT0FBTyxLQUFLLFNBQVMsTUFBTSxxQ0FBcUMsQ0FBQztBQUVqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7Ozs7O0FBUS9ELE1BQU0sT0FBTyxhQUFhO0lBWXhCLFlBQ1MsYUFBNEIsRUFDM0IsV0FBd0IsRUFDeEIsbUJBQXdDLEVBQ3hDLG1CQUF3QztRQUh6QyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUMzQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFmeEMsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMvRCxrRUFBa0U7UUFDekQsU0FBSSxHQUFRLEVBQUUsQ0FBQztRQUNmLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsV0FBTSxHQUFXLEVBQUUsQ0FBQztRQUk3QixjQUFTLEdBQVksS0FBSyxDQUFDO0lBUXhCLENBQUM7SUFFSixRQUFRLEtB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QUNyQixJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFDaEIsR0FBRyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO2dCQUNoQyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztnQkFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUM7YUFDNUI7WUFDRCxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7Z0JBQ3pDLEdBQUcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUM5QjtTQUNGO0lBQ0gsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFTLEVBQUUsS0FBYTtRQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7aUlBbkpVLGFBQWE7cUhBQWIsYUFBYSxxTkNmMUIsczlEQThEQTs7MkZEL0NhLGFBQWE7a0JBTHpCLFNBQVM7K0JBQ0UsU0FBUztrTUFLVCxZQUFZO3NCQUFyQixNQUFNO2dCQUVFLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XG5pbXBvcnQgeyBFU2VsZWN0RmlsZVR5cGUsIElEeW5hbWljQ2FyZCwgSUR5bmFtaWNGb3JtLCBJVmlld0NhcmRQcm9wIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2Zvcm0ubW9kZWwnO1xuaW1wb3J0IHsgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBHcmlkU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2dyaWQuc2VydmljZSc7XG5pbXBvcnQgKiBhcyB1dGlsaXRpZXMgZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbGl0aWVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7IEVTeXN0ZW1Db25maWcgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmVzcG9uc2UubW9kZWwnO1xuaW1wb3J0IHsgU3lzdGVtQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3N5c3RlbS1jb25maWcuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlLWNhcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcmQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBPdXRwdXQoKSBzZWxlY3RlZENhcmQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAvLyBAT3V0cHV0KCkgb25EZWxldGVDYXJkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQElucHV0KCkgZGF0YTogYW55ID0gW107XG4gIEBJbnB1dCgpIHdpZHRoOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgY2FyZDogYW55O1xuICBASW5wdXQoKSBzZXRDYXJkRGF0YTogYm9vbGVhbjtcbiAgZHluYW1pY0Zvcm06IElEeW5hbWljRm9ybTtcbiAgc2hvd0ZpbGVzOiBib29sZWFuID0gZmFsc2U7XG4gIGRpc3BsYXlDYXJkSW5mbzogSVZpZXdDYXJkUHJvcDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICBwcml2YXRlIGdyaWRTZXJ2aWNlOiBHcmlkU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzeXN0ZW1Db25maWdTZXJ2aWNlOiBTeXN0ZW1Db25maWdTZXJ2aWNlLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLmNhcmQpIHtcbiAgICAgIGNvbnN0IGZpbGVDb250YWluZXJOYW1lID0gdGhpcy5jYXJkPy5jb250YWluZXJOYW1lO1xuXHQgICAgY29uc3QgZmlsZVJvb3RQYXRoID0gdGhpcy5zeXN0ZW1Db25maWdTZXJ2aWNlLmdldFN5c3RlbUNvbmZpZ1ZhbHVlKEVTeXN0ZW1Db25maWcuRklMRVJPT1RQQVRIKTtcbiAgICAgIGxldCB7IGRhdGEsIGZvcm1TZWN0aW9ucywgY2FyZEluZm8gfTogYW55ID0gdGhpcy5jYXJkO1xuICAgICAgY29uc3QgZXh0ZW5zaW9uVmFsdWVzID0gT2JqZWN0LnZhbHVlcyhFU2VsZWN0RmlsZVR5cGUpO1xuICAgICAgY29uc3QgaGFyZGNvZGVFeHRlbnNpb24gPSBleHRlbnNpb25WYWx1ZXM/LnNvbWUoKGV4dCk9PiBleHQ/LmluY2x1ZGVzKGNhcmRJbmZvPy5leHRlbnNpb24/LnRvTG93ZXJDYXNlKCkpKTtcbiAgICAgIGlmKGNhcmRJbmZvICYmIE9iamVjdC5rZXlzKGNhcmRJbmZvKS5sZW5ndGgpe1xuICAgICAgICB0aGlzLmRpc3BsYXlDYXJkSW5mbyA9IGNhcmRJbmZvO1xuICAgICAgICBkYXRhID0gdGhpcy5ncmlkU2VydmljZS5zZXREYXRhRmllbGRzKGRhdGEpO1xuICAgICAgICBjb25zdCBuZXdBcnIgPSBbXTtcbiAgICAgICAgZGF0YT8uZm9yRWFjaCgocmVjb3JkKT0+e1xuICAgICAgICAgIGlmKHJlY29yZC51cmwgJiYgIXJlY29yZC51cmwuaW5jbHVkZXMocmVjb3JkLmZpbGVleHRlbnNpb24pKXtcbiAgICAgICAgICAgIHJlY29yZC51cmwgPSByZWNvcmQudXJsKycuJytyZWNvcmQuZmlsZWV4dGVuc2lvbjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYoIU9iamVjdC5rZXlzKHJlY29yZCk/LmluY2x1ZGVzKCdhenVyZWNvbnRhaW5lcmlkJykpe1xuICAgICAgICAgICAgY29uc3QgdXJsID0gKGZpbGVSb290UGF0aCsnLycrZmlsZUNvbnRhaW5lck5hbWUrJy8nKT8udG9Mb3dlckNhc2UoKTtcbiAgICAgICAgICAgIG5ld0Fyci5wdXNoKHsuLi5yZWNvcmQsIGJsb2JmaWxldXJsOiB1cmwrcmVjb3JkW2NhcmRJbmZvPy51cmw/LnRvTG93ZXJDYXNlKCldLCBmaWxlY2FwdGlvbjogcmVjb3JkW2NhcmRJbmZvPy5jYXB0aW9uPy50b0xvd2VyQ2FzZSgpXSwgZmlsZWV4dGVuc2lvbjogaGFyZGNvZGVFeHRlbnNpb24gPyBjYXJkSW5mbz8uZXh0ZW5zaW9uPy50b0xvd2VyQ2FzZSgpIDogcmVjb3JkW2NhcmRJbmZvPy5leHRlbnNpb24/LnRvTG93ZXJDYXNlKCldfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5ld0Fyci5wdXNoKHJlY29yZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5kYXRhID0gbmV3QXJyO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5ncmlkU2VydmljZS5zZXREYXRhRmllbGRzKGRhdGEpO1xuICAgICAgfVxuICAgICAgdGhpcy5keW5hbWljRm9ybSA9IHsgZm9ybVNlY3Rpb25zIH07XG4gICAgICAvLyBzZXQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgYWxsb3dEZWxldGUsIGFsbG93RWRpdGFibGVDYXB0aW9uIGFuZCBhbGxvd0Rvd25sb2FkXG4gICAgICB0aGlzLnNldENhcmRQcm9wVmFsdWUoJ2FsbG93RG93bmxvYWQnKTtcbiAgICAgIHRoaXMuc2V0Q2FyZFByb3BWYWx1ZSgnYWxsb3dEZWxldGUnKTtcbiAgICAgIHRoaXMuc2V0Q2FyZFByb3BWYWx1ZSgnYWxsb3dFZGl0YWJsZUNhcHRpb24nKTtcbiAgICAgIC8vZmlsZXMuYWxsb3dFZGl0YWJsZUNhcHRpb24gPSB0aGlzLnNldENhcmRQcm9wVmFsdWUoZmlsZXMuYWxsb3dFZGl0YWJsZUNhcHRpb24pO1xuICAgICAgLyoqIEluIGNhc2Ugb2Ygd2hlbiB3ZSBhcmUgdXNpbmcgdGhpcyBjb21wb25lbnQgZm9yIHN0YW5kIGFsb25lIHRoZW4gaWYgZm9ybVNlY3Rpb24gaXMgZXhpc3QgaW5cbiAgICAgICAgICB0aGUgdGhpcy5jYXJkIGFuZCB0aGVuIGFkZCBpbiB0aGUgZGF0YSBhcnJheS5cbiAgICAgICovXG4gICAgICBpZiAodGhpcy5kYXRhKSB7XG4gICAgICAgIHRoaXMuZGF0YS5mb3JFYWNoKCh4OiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAoIXguZHluYW1pY2Zvcm0pIHtcbiAgICAgICAgICAgIHguZHluYW1pY2Zvcm0gPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMuZHluYW1pY0Zvcm0pKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdXRpbGl0aWVzLnNldENhcmRGaWVsZHNEYXRhKHgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzZXQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgYWxsb3dEZWxldGUsIGFsbG93RWRpdGFibGVDYXB0aW9uIGFuZCBhbGxvd0Rvd25sb2FkXG4gIHNldENhcmRQcm9wVmFsdWUocHJvcDpzdHJpbmcpe1xuICAgaWYoIXRoaXMuY2FyZFtwcm9wXT8udG9TdHJpbmcoKT8ubGVuZ3RoKSB7XG4gICAgICB0aGlzLmNhcmRbcHJvcF09IHRydWU7XG4gICAgfVxuICB9XG5cbiAgZHJhZ0FuZERyb3AoZXZlbnQ6IGFueSkge1xuICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLmRhdGEsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XG4gICAgZXZlbnQuaXRlbT8uZWxlbWVudD8ubmF0aXZlRWxlbWVudDtcbiAgICB0aGlzLmNhcmQuZGF0YSA9IHRoaXMuZGF0YTtcbiAgICB0aGlzLmNhcmRbJ2NoYW5nZSddID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5jYXJkICYmIHRoaXMuY2FyZC5vblNvcnQpIHtcbiAgICAgIHRoaXMuY2FyZC5vblNvcnQodGhpcy5kYXRhKTtcbiAgICB9XG4gIH1cblxuICBkZWxldGVJbWFnZShldmVudDogYW55KSB7XG4gICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xuICAgICAgbWVzc2FnZTogJ0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIEltYWdlPycsXG4gICAgICBoZWFkZXI6ICdEZWxldGUgQ29uZmlybWF0aW9uJyxcbiAgICAgIGljb246ICdwaSBwaS1leGNsYW1hdGlvbi10cmlhbmdsZScsXG4gICAgICBrZXk6ICdoYW5kbGVjb2x1bW5BY3Rpb25zJyxcbiAgICAgIGFjY2VwdDogKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5kYXRhICYmIGV2ZW50KSB7XG4gICAgICAgICAgbGV0IGFyciA9IFsuLi50aGlzLmRhdGFdO1xuICAgICAgICAgIGNvbnN0IGluZGV4ID0gYXJyLmZpbmRJbmRleChcbiAgICAgICAgICAgIChpKSA9PiBpLmJsb2JmaWxldXJsID09PSBldmVudC5ibG9iZmlsZXVybFxuICAgICAgICAgICk7XG4gICAgICAgICAgbGV0IG9iaiA9IGFycltpbmRleF07XG4gICAgICAgICAgYXJyLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgICAgdGhpcy5kYXRhID0gWy4uLmFycl07XG5cbiAgICAgICAgICBpZiAodGhpcy5jYXJkICYmIHRoaXMuY2FyZC5vbkRlbGV0ZSkge1xuICAgICAgICAgICAgb2JqID0gdGhpcy5yZXBsYWNlUHJvcE5hbWUob2JqKTtcbiAgICAgICAgICAgIHRoaXMuY2FyZC5vbkRlbGV0ZShvYmopO1xuICAgICAgICAgICAgLy8gdGhpcy5vbkRlbGV0ZUNhcmQuZW1pdCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY2xvc2UoKTtcbiAgICAgIH0sXG4gICAgICByZWplY3Q6ICgpID0+IHtcbiAgICAgICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNsb3NlKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcmVwbGFjZVByb3BOYW1lKGNhcmRJbmZvOmFueSl7XG4gICAgaWYodGhpcy5kaXNwbGF5Q2FyZEluZm8gJiYgT2JqZWN0LmtleXModGhpcy5kaXNwbGF5Q2FyZEluZm8pLmxlbmd0aCA+IDApe1xuICAgICAgY29uc3QgY2FyZFByb3AgPSB7Li4udGhpcy5kaXNwbGF5Q2FyZEluZm99O1xuICAgICAgY29uc3QgZXh0ZW5zaW9uVmFsdWVzID0gT2JqZWN0LnZhbHVlcyhFU2VsZWN0RmlsZVR5cGUpO1xuICAgICAgY29uc3QgaGFyZGNvZGVFeHRlbnNpb24gPSBleHRlbnNpb25WYWx1ZXM/LnNvbWUoKGV4dCk9PiBleHQ/LmluY2x1ZGVzKGNhcmRJbmZvPy5leHRlbnNpb24/LnRvTG93ZXJDYXNlKCkpKTtcbiAgICAgIGNvbnN0IG9iaiA9IHsuLi5jYXJkSW5mbyxbY2FyZFByb3AudXJsXTogY2FyZEluZm8uYmxvYmZpbGV1cmwsW2NhcmRQcm9wLmNhcHRpb25dOiBjYXJkSW5mby5maWxlY2FwdGlvbixbY2FyZFByb3AuZXh0ZW5zaW9uXTogaGFyZGNvZGVFeHRlbnNpb24gPyBjYXJkSW5mbz8uZXh0ZW5zaW9uPy50b0xvd2VyQ2FzZSgpIDogY2FyZEluZm8/LmZpbGVleHRlbnNpb259O1xuICAgICAgcmV0dXJuIG9iajtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGNhcmRJbmZvO1xuICAgIH1cbiAgfVxuXG4gIHNhdmVDYXB0aW9uKGV2ZW50OiBhbnkpIHtcbiAgICBpZiAodGhpcy5kYXRhICYmIGV2ZW50KSB7XG4gICAgICBsZXQgYXJyID0gWy4uLnRoaXMuZGF0YV07XG4gICAgICBjb25zdCBpbmRleCA9IGFyci5maW5kSW5kZXgoKGkpID0+IGkuYmxvYmZpbGV1cmwgPT09IGV2ZW50LmJsb2JmaWxldXJsKTtcbiAgICAgIGxldCBvYmogPSBhcnJbaW5kZXhdO1xuICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICBvYmouZmlsZWNhcHRpb24gPSBldmVudC5jYXB0aW9uO1xuICAgICAgICBhcnIuc3BsaWNlKGluZGV4LCAxLCBvYmopO1xuICAgICAgICB0aGlzLmNhcmQuZGF0YSA9IGFycjtcbiAgICAgICAgdGhpcy5jYXJkWydjaGFuZ2UnXSA9IHRydWU7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5jYXJkICYmIHRoaXMuY2FyZD8ub25DYXB0aW9uU2F2ZSkge1xuICAgICAgICBvYmogPSB0aGlzLnJlcGxhY2VQcm9wTmFtZShvYmopO1xuICAgICAgICB0aGlzLmNhcmQub25DYXB0aW9uU2F2ZShvYmopO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uQ2xpY2tFdmVudChkYXRhOiBhbnksIGluZGV4OiBudW1iZXIpe1xuICAgIGRhdGFbJ2luZGV4J10gPSBpbmRleDtcbiAgICB0aGlzLnNlbGVjdGVkQ2FyZC5lbWl0KGRhdGEpO1xuICB9XG5cbn1cbiIsIjwhLS0gRGlzcGxheSBGaWxlcyBDYXJkIC0tPlxuPHAtY29uZmlybURpYWxvZyBrZXk9XCJoYW5kbGVjb2x1bW5BY3Rpb25zXCI+PC9wLWNvbmZpcm1EaWFsb2c+XG48ZGl2XG4gIGNka0Ryb3BMaXN0XG4gIGNka0Ryb3BMaXN0T3JpZW50YXRpb249XCJob3Jpem9udGFsXCJcbiAgY2xhc3M9XCJleGFtcGxlLWxpc3RcIlxuICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyYWdBbmREcm9wKCRldmVudClcIlxuPlxuICA8ZGl2IFxuICBjbGFzcz1cImZsZXggY2FyZHMtd3JhcHBlclwiIFxuICBbbmdTdHlsZV09XCJ7IHdpZHRoOiB3aWR0aCwgaGVpZ2h0OiBoZWlnaHQgfVwiIFxuICAqbmdJZj1cImRhdGFcIiBcbiAgW2NsYXNzXT1cImNhcmQgJiYgY2FyZC5jbGFzcyA/IGNhcmQuY2xhc3MgOiAnJ1wiPlxuICAgIDxkaXZcbiAgICAgIGNka0RyYWdcbiAgICAgIGNsYXNzPVwiZXhhbXBsZS1ib3ggZmxleCBmbGV4LWNvbHVtbiBjYXJkcy13cmFwcGVyXCJcbiAgICAgIFtjbGFzc109XCJcbiAgICAgICAgY2FyZCAmJiBjYXJkLndpZHRoICYmIGNhcmQud2lkdGgubGVuZ3RoID4gMFxuICAgICAgICAgID8gJ2NvbC0nICsgY2FyZC53aWR0aFxuICAgICAgICAgIDogJ2NvbC0zJ1xuICAgICAgXCJcbiAgICAgICpuZ0Zvcj1cImxldCBmaWxlIG9mIGRhdGE7IGxldCBpID0gaW5kZXhcIlxuICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tFdmVudChmaWxlLGkpXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpbGUuc2VsZWN0ZWRDYXJkID8gZmlsZS5zZWxlY3RlZENhcmQgOiAnJ1wiXG4gICAgPlxuICAgICAgPCEtLSBzdGFydCBjYXJkcyBpbWFnZSBmdW5jdGlvbmFsaXR5IC0tPlxuICAgICAgPHNlLWZpbGVcbiAgICAgICAgW3VybF09XCJmaWxlLmJsb2JmaWxldXJsXCJcbiAgICAgICAgW3R5cGVdPVwiZmlsZS5maWxlZXh0ZW5zaW9uXCJcbiAgICAgICAgW2NhcHRpb25dPVwiZmlsZT8uZmlsZWNhcHRpb25cIlxuICAgICAgICBbaGVpZ2h0XT1cImNhcmQ/LmhlaWdodFwiXG4gICAgICAgIFthbGxvd0Rvd25sb2FkRmlsZV09XCJjYXJkPy5hbGxvd0Rvd25sb2FkXCJcbiAgICAgICAgW2FsbG93RWRpdGFibGVDYXB0aW9uXT1cImNhcmQ/LmFsbG93RWRpdGFibGVDYXB0aW9uXCJcbiAgICAgICAgW2FsbG93RGVsZXRlRmlsZV09XCJjYXJkPy5hbGxvd0RlbGV0ZVwiXG4gICAgICAgIFtuYW1lXT1cImZpbGUuYmxvYmZpbGV1cmxcIlxuICAgICAgICBbaWRdPVwiZmlsZS5maWxlZXh0ZW5zaW9uXCJcbiAgICAgICAgKG9uRGVsZXRlRXZlbnQpPVwiZGVsZXRlSW1hZ2UoJGV2ZW50KVwiXG4gICAgICAgIChvblNhdmVFdmVudCk9XCJzYXZlQ2FwdGlvbigkZXZlbnQpXCJcbiAgICAgID48L3NlLWZpbGU+XG4gICAgICA8IS0tIEVuZCBjYXJkcyBpbWFnZSBmdW5jdGlvbmFsaXR5IC0tPlxuXG4gICAgICA8IS0tIHN0YXJ0IGZvcm0gZnVuY3Rpb25hbGl0eSBpbiBjYXJkIC0tPlxuICAgICAgPHNlLWZvcm0tdXRpbFxuICAgICAgICBjbGFzcz1cImZvcm0tY29udGVudFwiXG4gICAgICAgIFtmb3JtXT1cImZpbGUuZHluYW1pY2Zvcm1cIlxuICAgICAgICBbaGlkZVNhdmVCdXR0b25dPVwidHJ1ZVwiXG4gICAgICAgIFtoaWRlQ2FuY2VsQnV0dG9uXT1cInRydWVcIlxuICAgICAgPjwvc2UtZm9ybS11dGlsPlxuICAgICAgPCEtLSBFbmQgZm9ybSBmdW5jdGlvbmFsaXR5IGluIGNhcmQgLS0+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDwhLS0gaW4gY2FzZSBvZiBmb3JtIGFuZCBkYXRhIGlzIGVtcHR5IG9yIG51bGwgLS0+XG4gIDxkaXYgKm5nSWY9XCJkeW5hbWljRm9ybSAmJiAoIWRhdGEgfHwgZGF0YS5sZW5ndGggPT0gMClcIj5cbiAgICA8c2UtZm9ybS11dGlsXG4gICAgICAqbmdJZj1cImR5bmFtaWNGb3JtXCJcbiAgICAgIFtmb3JtXT1cImR5bmFtaWNGb3JtXCJcbiAgICAgIFtoaWRlU2F2ZUJ1dHRvbl09XCJ0cnVlXCJcbiAgICAgIFtoaWRlQ2FuY2VsQnV0dG9uXT1cInRydWVcIlxuICAgID48L3NlLWZvcm0tdXRpbD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
175
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2NhcmRzL2NhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2UtdWktdG9vbGtpdC9zcmMvbGliL2NvbXBvbmVudHMvYmFzZS9jYXJkcy9jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxFQUFFLGVBQWUsRUFBNkMsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekQsT0FBTyxLQUFLLFNBQVMsTUFBTSxxQ0FBcUMsQ0FBQztBQUVqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7Ozs7O0FBUS9ELE1BQU0sT0FBTyxhQUFhO0lBWXhCLFlBQ1MsYUFBNEIsRUFDM0IsV0FBd0IsRUFDeEIsbUJBQXdDLEVBQ3hDLG1CQUF3QztRQUh6QyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUMzQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFmeEMsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMvRCxrRUFBa0U7UUFDekQsU0FBSSxHQUFRLEVBQUUsQ0FBQztRQUNmLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsV0FBTSxHQUFXLEVBQUUsQ0FBQztRQUk3QixjQUFTLEdBQVksS0FBSyxDQUFDO0lBUXhCLENBQUM7SUFFSixRQUFRLEtB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QUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XG5pbXBvcnQgeyBFU2VsZWN0RmlsZVR5cGUsIElEeW5hbWljQ2FyZCwgSUR5bmFtaWNGb3JtLCBJVmlld0NhcmRQcm9wIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2Zvcm0ubW9kZWwnO1xuaW1wb3J0IHsgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBHcmlkU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2dyaWQuc2VydmljZSc7XG5pbXBvcnQgKiBhcyB1dGlsaXRpZXMgZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbGl0aWVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7IEVTeXN0ZW1Db25maWcgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmVzcG9uc2UubW9kZWwnO1xuaW1wb3J0IHsgU3lzdGVtQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3N5c3RlbS1jb25maWcuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlLWNhcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcmQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBPdXRwdXQoKSBzZWxlY3RlZENhcmQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAvLyBAT3V0cHV0KCkgb25EZWxldGVDYXJkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQElucHV0KCkgZGF0YTogYW55ID0gW107XG4gIEBJbnB1dCgpIHdpZHRoOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgY2FyZDogYW55O1xuICBASW5wdXQoKSBzZXRDYXJkRGF0YTogYm9vbGVhbjtcbiAgZHluYW1pY0Zvcm06IElEeW5hbWljRm9ybTtcbiAgc2hvd0ZpbGVzOiBib29sZWFuID0gZmFsc2U7XG4gIGRpc3BsYXlDYXJkSW5mbzogSVZpZXdDYXJkUHJvcDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICBwcml2YXRlIGdyaWRTZXJ2aWNlOiBHcmlkU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzeXN0ZW1Db25maWdTZXJ2aWNlOiBTeXN0ZW1Db25maWdTZXJ2aWNlLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLmNhcmQpIHtcbiAgICAgIGNvbnN0IGZpbGVDb250YWluZXJOYW1lID0gdGhpcy5jYXJkPy5jb250YWluZXJOYW1lO1xuICAgICAgY29uc3QgZmlsZVJvb3RQYXRoID0gdGhpcy5zeXN0ZW1Db25maWdTZXJ2aWNlLmdldFN5c3RlbUNvbmZpZ1ZhbHVlKEVTeXN0ZW1Db25maWcuRklMRVJPT1RQQVRIKTtcbiAgICAgIGxldCB7IGRhdGEsIGZvcm1TZWN0aW9ucywgY2FyZEluZm8gfTogYW55ID0gdGhpcy5jYXJkO1xuICAgICAgY29uc3QgZXh0ZW5zaW9uVmFsdWVzID0gT2JqZWN0LnZhbHVlcyhFU2VsZWN0RmlsZVR5cGUpO1xuICAgICAgY29uc3QgaGFyZGNvZGVFeHRlbnNpb24gPSBleHRlbnNpb25WYWx1ZXM/LnNvbWUoKGV4dCkgPT4gZXh0Py5pbmNsdWRlcyhjYXJkSW5mbz8uZXh0ZW5zaW9uPy50b0xvd2VyQ2FzZSgpKSk7XG4gICAgICBpZiAoY2FyZEluZm8gJiYgT2JqZWN0LmtleXMoY2FyZEluZm8pLmxlbmd0aCkge1xuICAgICAgICB0aGlzLmRpc3BsYXlDYXJkSW5mbyA9IGNhcmRJbmZvO1xuICAgICAgICBkYXRhID0gdGhpcy5ncmlkU2VydmljZS5zZXREYXRhRmllbGRzKGRhdGEpO1xuICAgICAgICBjb25zdCBuZXdBcnIgPSBbXTtcbiAgICAgICAgZGF0YT8uZm9yRWFjaCgocmVjb3JkKSA9PiB7XG4gICAgICAgICAgaWYgKHJlY29yZC51cmwgJiYgcmVjb3JkLmZpbGVleHRlbnNpb24gJiYgIXJlY29yZC51cmwuaW5jbHVkZXMocmVjb3JkLmZpbGVleHRlbnNpb24pKSB7XG4gICAgICAgICAgICBpZiAocmVjb3JkLmZpbGVleHRlbnNpb24uc3RhcnRzV2l0aChcIi5cIikpIHtcbiAgICAgICAgICAgICAgcmVjb3JkLnVybCA9IHJlY29yZC51cmwgKyByZWNvcmQuZmlsZWV4dGVuc2lvbjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHJlY29yZC51cmwgPSByZWNvcmQudXJsICsgJy4nICsgcmVjb3JkLmZpbGVleHRlbnNpb247XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICghT2JqZWN0LmtleXMocmVjb3JkKT8uaW5jbHVkZXMoJ2F6dXJlY29udGFpbmVyaWQnKSkge1xuICAgICAgICAgICAgY29uc3QgdXJsID0gKGZpbGVSb290UGF0aCArICcvJyArIGZpbGVDb250YWluZXJOYW1lICsgJy8nKT8udG9Mb3dlckNhc2UoKTtcbiAgICAgICAgICAgIG5ld0Fyci5wdXNoKHsgLi4ucmVjb3JkLCBibG9iZmlsZXVybDogdXJsICsgcmVjb3JkW2NhcmRJbmZvPy51cmw/LnRvTG93ZXJDYXNlKCldLCBmaWxlY2FwdGlvbjogcmVjb3JkW2NhcmRJbmZvPy5jYXB0aW9uPy50b0xvd2VyQ2FzZSgpXSwgZmlsZWV4dGVuc2lvbjogaGFyZGNvZGVFeHRlbnNpb24gPyBjYXJkSW5mbz8uZXh0ZW5zaW9uPy50b0xvd2VyQ2FzZSgpIDogcmVjb3JkW2NhcmRJbmZvPy5leHRlbnNpb24/LnRvTG93ZXJDYXNlKCldIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdBcnIucHVzaChyZWNvcmQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZGF0YSA9IG5ld0FycjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZGF0YSA9IHRoaXMuZ3JpZFNlcnZpY2Uuc2V0RGF0YUZpZWxkcyhkYXRhKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuZHluYW1pY0Zvcm0gPSB7IGZvcm1TZWN0aW9ucyB9O1xuICAgICAgLy8gc2V0IHRoZSBkZWZhdWx0IHZhbHVlIG9mIGFsbG93RGVsZXRlLCBhbGxvd0VkaXRhYmxlQ2FwdGlvbiBhbmQgYWxsb3dEb3dubG9hZFxuICAgICAgdGhpcy5zZXRDYXJkUHJvcFZhbHVlKCdhbGxvd0Rvd25sb2FkJyk7XG4gICAgICB0aGlzLnNldENhcmRQcm9wVmFsdWUoJ2FsbG93RGVsZXRlJyk7XG4gICAgICB0aGlzLnNldENhcmRQcm9wVmFsdWUoJ2FsbG93RWRpdGFibGVDYXB0aW9uJyk7XG4gICAgICAvL2ZpbGVzLmFsbG93RWRpdGFibGVDYXB0aW9uID0gdGhpcy5zZXRDYXJkUHJvcFZhbHVlKGZpbGVzLmFsbG93RWRpdGFibGVDYXB0aW9uKTtcbiAgICAgIC8qKiBJbiBjYXNlIG9mIHdoZW4gd2UgYXJlIHVzaW5nIHRoaXMgY29tcG9uZW50IGZvciBzdGFuZCBhbG9uZSB0aGVuIGlmIGZvcm1TZWN0aW9uIGlzIGV4aXN0IGluXG4gICAgICAgICAgdGhlIHRoaXMuY2FyZCBhbmQgdGhlbiBhZGQgaW4gdGhlIGRhdGEgYXJyYXkuXG4gICAgICAqL1xuICAgICAgaWYgKHRoaXMuZGF0YSkge1xuICAgICAgICB0aGlzLmRhdGEuZm9yRWFjaCgoeDogYW55KSA9PiB7XG4gICAgICAgICAgaWYgKCF4LmR5bmFtaWNmb3JtKSB7XG4gICAgICAgICAgICB4LmR5bmFtaWNmb3JtID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmR5bmFtaWNGb3JtKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHV0aWxpdGllcy5zZXRDYXJkRmllbGRzRGF0YSh4KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc2V0IHRoZSBkZWZhdWx0IHZhbHVlIG9mIGFsbG93RGVsZXRlLCBhbGxvd0VkaXRhYmxlQ2FwdGlvbiBhbmQgYWxsb3dEb3dubG9hZFxuICBzZXRDYXJkUHJvcFZhbHVlKHByb3A6c3RyaW5nKXtcbiAgIGlmKCF0aGlzLmNhcmRbcHJvcF0/LnRvU3RyaW5nKCk/Lmxlbmd0aCkge1xuICAgICAgdGhpcy5jYXJkW3Byb3BdPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGRyYWdBbmREcm9wKGV2ZW50OiBhbnkpIHtcbiAgICBtb3ZlSXRlbUluQXJyYXkodGhpcy5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgIGV2ZW50Lml0ZW0/LmVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgdGhpcy5jYXJkLmRhdGEgPSB0aGlzLmRhdGE7XG4gICAgdGhpcy5jYXJkWydjaGFuZ2UnXSA9IHRydWU7XG4gICAgaWYgKHRoaXMuY2FyZCAmJiB0aGlzLmNhcmQub25Tb3J0KSB7XG4gICAgICB0aGlzLmNhcmQub25Tb3J0KHRoaXMuZGF0YSk7XG4gICAgfVxuICB9XG5cbiAgZGVsZXRlSW1hZ2UoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZS5jb25maXJtKHtcbiAgICAgIG1lc3NhZ2U6ICdBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBJbWFnZT8nLFxuICAgICAgaGVhZGVyOiAnRGVsZXRlIENvbmZpcm1hdGlvbicsXG4gICAgICBpY29uOiAncGkgcGktZXhjbGFtYXRpb24tdHJpYW5nbGUnLFxuICAgICAga2V5OiAnaGFuZGxlY29sdW1uQWN0aW9ucycsXG4gICAgICBhY2NlcHQ6ICgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YSAmJiBldmVudCkge1xuICAgICAgICAgIGxldCBhcnIgPSBbLi4udGhpcy5kYXRhXTtcbiAgICAgICAgICBjb25zdCBpbmRleCA9IGFyci5maW5kSW5kZXgoXG4gICAgICAgICAgICAoaSkgPT4gaS5ibG9iZmlsZXVybCA9PT0gZXZlbnQuYmxvYmZpbGV1cmxcbiAgICAgICAgICApO1xuICAgICAgICAgIGxldCBvYmogPSBhcnJbaW5kZXhdO1xuICAgICAgICAgIGFyci5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgIHRoaXMuZGF0YSA9IFsuLi5hcnJdO1xuXG4gICAgICAgICAgaWYgKHRoaXMuY2FyZCAmJiB0aGlzLmNhcmQub25EZWxldGUpIHtcbiAgICAgICAgICAgIG9iaiA9IHRoaXMucmVwbGFjZVByb3BOYW1lKG9iaik7XG4gICAgICAgICAgICB0aGlzLmNhcmQub25EZWxldGUob2JqKTtcbiAgICAgICAgICAgIC8vIHRoaXMub25EZWxldGVDYXJkLmVtaXQoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNsb3NlKCk7XG4gICAgICB9LFxuICAgICAgcmVqZWN0OiAoKSA9PiB7XG4gICAgICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZS5jbG9zZSgpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHJlcGxhY2VQcm9wTmFtZShjYXJkSW5mbzphbnkpe1xuICAgIGlmKHRoaXMuZGlzcGxheUNhcmRJbmZvICYmIE9iamVjdC5rZXlzKHRoaXMuZGlzcGxheUNhcmRJbmZvKS5sZW5ndGggPiAwKXtcbiAgICAgIGNvbnN0IGNhcmRQcm9wID0gey4uLnRoaXMuZGlzcGxheUNhcmRJbmZvfTtcbiAgICAgIGNvbnN0IGV4dGVuc2lvblZhbHVlcyA9IE9iamVjdC52YWx1ZXMoRVNlbGVjdEZpbGVUeXBlKTtcbiAgICAgIGNvbnN0IGhhcmRjb2RlRXh0ZW5zaW9uID0gZXh0ZW5zaW9uVmFsdWVzPy5zb21lKChleHQpPT4gZXh0Py5pbmNsdWRlcyhjYXJkSW5mbz8uZXh0ZW5zaW9uPy50b0xvd2VyQ2FzZSgpKSk7XG4gICAgICBjb25zdCBvYmogPSB7Li4uY2FyZEluZm8sW2NhcmRQcm9wLnVybF06IGNhcmRJbmZvLmJsb2JmaWxldXJsLFtjYXJkUHJvcC5jYXB0aW9uXTogY2FyZEluZm8uZmlsZWNhcHRpb24sW2NhcmRQcm9wLmV4dGVuc2lvbl06IGhhcmRjb2RlRXh0ZW5zaW9uID8gY2FyZEluZm8/LmV4dGVuc2lvbj8udG9Mb3dlckNhc2UoKSA6IGNhcmRJbmZvPy5maWxlZXh0ZW5zaW9ufTtcbiAgICAgIHJldHVybiBvYmo7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjYXJkSW5mbztcbiAgICB9XG4gIH1cblxuICBzYXZlQ2FwdGlvbihldmVudDogYW55KSB7XG4gICAgaWYgKHRoaXMuZGF0YSAmJiBldmVudCkge1xuICAgICAgbGV0IGFyciA9IFsuLi50aGlzLmRhdGFdO1xuICAgICAgY29uc3QgaW5kZXggPSBhcnIuZmluZEluZGV4KChpKSA9PiBpLmJsb2JmaWxldXJsID09PSBldmVudC5ibG9iZmlsZXVybCk7XG4gICAgICBsZXQgb2JqID0gYXJyW2luZGV4XTtcbiAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgb2JqLmZpbGVjYXB0aW9uID0gZXZlbnQuY2FwdGlvbjtcbiAgICAgICAgYXJyLnNwbGljZShpbmRleCwgMSwgb2JqKTtcbiAgICAgICAgdGhpcy5jYXJkLmRhdGEgPSBhcnI7XG4gICAgICAgIHRoaXMuY2FyZFsnY2hhbmdlJ10gPSB0cnVlO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuY2FyZCAmJiB0aGlzLmNhcmQ/Lm9uQ2FwdGlvblNhdmUpIHtcbiAgICAgICAgb2JqID0gdGhpcy5yZXBsYWNlUHJvcE5hbWUob2JqKTtcbiAgICAgICAgdGhpcy5jYXJkLm9uQ2FwdGlvblNhdmUob2JqKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbkNsaWNrRXZlbnQoZGF0YTogYW55LCBpbmRleDogbnVtYmVyKXtcbiAgICBkYXRhWydpbmRleCddID0gaW5kZXg7XG4gICAgdGhpcy5zZWxlY3RlZENhcmQuZW1pdChkYXRhKTtcbiAgfVxuXG59XG4iLCI8IS0tIERpc3BsYXkgRmlsZXMgQ2FyZCAtLT5cbjxwLWNvbmZpcm1EaWFsb2cga2V5PVwiaGFuZGxlY29sdW1uQWN0aW9uc1wiPjwvcC1jb25maXJtRGlhbG9nPlxuPGRpdlxuICBjZGtEcm9wTGlzdFxuICBjZGtEcm9wTGlzdE9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiXG4gIGNsYXNzPVwiZXhhbXBsZS1saXN0XCJcbiAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcmFnQW5kRHJvcCgkZXZlbnQpXCJcbj5cbiAgPGRpdiBcbiAgY2xhc3M9XCJmbGV4IGNhcmRzLXdyYXBwZXJcIiBcbiAgW25nU3R5bGVdPVwieyB3aWR0aDogd2lkdGgsIGhlaWdodDogaGVpZ2h0IH1cIiBcbiAgKm5nSWY9XCJkYXRhXCIgXG4gIFtjbGFzc109XCJjYXJkICYmIGNhcmQuY2xhc3MgPyBjYXJkLmNsYXNzIDogJydcIj5cbiAgICA8ZGl2XG4gICAgICBjZGtEcmFnXG4gICAgICBjbGFzcz1cImV4YW1wbGUtYm94IGZsZXggZmxleC1jb2x1bW4gY2FyZHMtd3JhcHBlclwiXG4gICAgICBbY2xhc3NdPVwiXG4gICAgICAgIGNhcmQgJiYgY2FyZC53aWR0aCAmJiBjYXJkLndpZHRoLmxlbmd0aCA+IDBcbiAgICAgICAgICA/ICdjb2wtJyArIGNhcmQud2lkdGhcbiAgICAgICAgICA6ICdjb2wtMydcbiAgICAgIFwiXG4gICAgICAqbmdGb3I9XCJsZXQgZmlsZSBvZiBkYXRhOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgIChjbGljayk9XCJvbkNsaWNrRXZlbnQoZmlsZSxpKVwiXG4gICAgICBbbmdDbGFzc109XCJmaWxlLnNlbGVjdGVkQ2FyZCA/IGZpbGUuc2VsZWN0ZWRDYXJkIDogJydcIlxuICAgID5cbiAgICAgIDwhLS0gc3RhcnQgY2FyZHMgaW1hZ2UgZnVuY3Rpb25hbGl0eSAtLT5cbiAgICAgIDxzZS1maWxlXG4gICAgICAgIFt1cmxdPVwiZmlsZS5ibG9iZmlsZXVybFwiXG4gICAgICAgIFt0eXBlXT1cImZpbGUuZmlsZWV4dGVuc2lvblwiXG4gICAgICAgIFtjYXB0aW9uXT1cImZpbGU/LmZpbGVjYXB0aW9uXCJcbiAgICAgICAgW2hlaWdodF09XCJjYXJkPy5oZWlnaHRcIlxuICAgICAgICBbYWxsb3dEb3dubG9hZEZpbGVdPVwiY2FyZD8uYWxsb3dEb3dubG9hZFwiXG4gICAgICAgIFthbGxvd0VkaXRhYmxlQ2FwdGlvbl09XCJjYXJkPy5hbGxvd0VkaXRhYmxlQ2FwdGlvblwiXG4gICAgICAgIFthbGxvd0RlbGV0ZUZpbGVdPVwiY2FyZD8uYWxsb3dEZWxldGVcIlxuICAgICAgICBbbmFtZV09XCJmaWxlLmJsb2JmaWxldXJsXCJcbiAgICAgICAgW2lkXT1cImZpbGUuZmlsZWV4dGVuc2lvblwiXG4gICAgICAgIChvbkRlbGV0ZUV2ZW50KT1cImRlbGV0ZUltYWdlKCRldmVudClcIlxuICAgICAgICAob25TYXZlRXZlbnQpPVwic2F2ZUNhcHRpb24oJGV2ZW50KVwiXG4gICAgICA+PC9zZS1maWxlPlxuICAgICAgPCEtLSBFbmQgY2FyZHMgaW1hZ2UgZnVuY3Rpb25hbGl0eSAtLT5cblxuICAgICAgPCEtLSBzdGFydCBmb3JtIGZ1bmN0aW9uYWxpdHkgaW4gY2FyZCAtLT5cbiAgICAgIDxzZS1mb3JtLXV0aWxcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRlbnRcIlxuICAgICAgICBbZm9ybV09XCJmaWxlLmR5bmFtaWNmb3JtXCJcbiAgICAgICAgW2hpZGVTYXZlQnV0dG9uXT1cInRydWVcIlxuICAgICAgICBbaGlkZUNhbmNlbEJ1dHRvbl09XCJ0cnVlXCJcbiAgICAgID48L3NlLWZvcm0tdXRpbD5cbiAgICAgIDwhLS0gRW5kIGZvcm0gZnVuY3Rpb25hbGl0eSBpbiBjYXJkIC0tPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIGluIGNhc2Ugb2YgZm9ybSBhbmQgZGF0YSBpcyBlbXB0eSBvciBudWxsIC0tPlxuICA8ZGl2ICpuZ0lmPVwiZHluYW1pY0Zvcm0gJiYgKCFkYXRhIHx8IGRhdGEubGVuZ3RoID09IDApXCI+XG4gICAgPHNlLWZvcm0tdXRpbFxuICAgICAgKm5nSWY9XCJkeW5hbWljRm9ybVwiXG4gICAgICBbZm9ybV09XCJkeW5hbWljRm9ybVwiXG4gICAgICBbaGlkZVNhdmVCdXR0b25dPVwidHJ1ZVwiXG4gICAgICBbaGlkZUNhbmNlbEJ1dHRvbl09XCJ0cnVlXCJcbiAgICA+PC9zZS1mb3JtLXV0aWw+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|