atr-components 2.1.3 → 2.1.4
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/atr-public-api.d.ts +0 -2
- package/core/base/atr-common.d.ts +3 -1
- package/esm2022/atr-components.module.mjs +5 -5
- package/esm2022/atr-public-api.mjs +1 -3
- package/esm2022/core/auth/auth.guard.mjs +4 -4
- package/esm2022/core/base/atr-common.mjs +1 -1
- package/esm2022/core/directive/Infinite-scroll.directive.mjs +4 -4
- package/esm2022/core/directive/debounce-click.directive.mjs +4 -4
- package/esm2022/core/directive/error-img.directive.mjs +4 -4
- package/esm2022/core/directive/hq-spin.directive.mjs +4 -4
- package/esm2022/core/directive/role.directive.mjs +4 -4
- package/esm2022/core/interceptor/base.interceptor.mjs +4 -4
- package/esm2022/core/ngz-module/cus-zorro-antd.module.mjs +5 -5
- package/esm2022/core/pipe/china-num.pipe.mjs +4 -4
- package/esm2022/core/pipe/count.pipe.mjs +4 -4
- package/esm2022/core/pipe/day.pipe.mjs +4 -4
- package/esm2022/core/pipe/defaultVal.pipe.mjs +4 -4
- package/esm2022/core/pipe/dicts.pipe.mjs +5 -5
- package/esm2022/core/pipe/image-pipe.pipe.mjs +4 -4
- package/esm2022/core/pipe/is-empty.pipe.mjs +4 -4
- package/esm2022/core/pipe/is-not-empty.pipe.mjs +4 -4
- package/esm2022/core/pipe/oss.pipe.mjs +4 -4
- package/esm2022/core/pipe/ossStatic.pipe.mjs +4 -4
- package/esm2022/core/pipe/pipe-module.module.mjs +52 -12
- package/esm2022/core/pipe/remove-html.pipe.mjs +4 -4
- package/esm2022/core/pipe/safe-compute.pipe.mjs +4 -4
- package/esm2022/core/pipe/safe-html.pipe.mjs +4 -4
- package/esm2022/core/pipe/safe-url.pipe.mjs +4 -4
- package/esm2022/core/services/dict/dict.service.mjs +5 -5
- package/esm2022/core/services/http.service.mjs +4 -4
- package/esm2022/core/services/menu.service.mjs +4 -4
- package/esm2022/core/services/upload-oss.service.mjs +4 -4
- package/esm2022/lib/shared/atr-shared.module.mjs +5 -5
- package/esm2022/lib/shared/echarts/echarts.component.mjs +4 -4
- package/esm2022/lib/shared/form/form.component.mjs +21 -13
- package/esm2022/lib/shared/img-canvas/img-canvas.component.mjs +4 -4
- package/esm2022/lib/shared/local-upload/local-upload.component.mjs +4 -4
- package/esm2022/lib/shared/quill-editor/quill-editor.component.mjs +4 -4
- package/esm2022/lib/shared/select-icons/select-icons.component.mjs +4 -4
- package/esm2022/lib/shared/select-tree/select-tree.component.mjs +4 -4
- package/esm2022/lib/shared/service/busi.service.mjs +4 -4
- package/esm2022/lib/shared/share.service.mjs +4 -4
- package/esm2022/lib/shared/table/table-form-item/table-form-item.component.mjs +4 -4
- package/esm2022/lib/shared/table/table-td/table-td.component.mjs +4 -4
- package/esm2022/lib/shared/table/table.component.mjs +4 -4
- package/esm2022/lib/shared/upload/upload.component.mjs +4 -4
- package/esm2022/lib/shared/video/video.component.mjs +4 -4
- package/esm2022/lib/shared/view-form/view-form.component.mjs +4 -4
- package/fesm2022/atr-components.mjs +204 -185
- package/fesm2022/atr-components.mjs.map +1 -1
- package/lib/shared/form/form.component.d.ts +1 -0
- package/package.json +1 -1
- package/esm2022/lib/hello/hello.component.mjs +0 -15
- package/esm2022/lib/hello/hello.module.mjs +0 -20
- package/lib/hello/hello.component.d.ts +0 -8
- package/lib/hello/hello.module.d.ts +0 -8
|
@@ -249,10 +249,10 @@ export class UploadComponent {
|
|
|
249
249
|
}
|
|
250
250
|
return (img.url || img.thumbUrl);
|
|
251
251
|
}
|
|
252
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
253
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
252
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UploadComponent, deps: [{ token: i0.Injector }, { token: i1.NzImageService }, { token: i2.HttpClient }, { token: i3.NzModalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
253
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: UploadComponent, selector: "atr-img-upload", inputs: { opts: "opts", isEdit: "isEdit", allowChangSeq: "allowChangSeq", showUploadList: "showUploadList" }, outputs: { afterChange: "afterChange", optsChange: "optsChange", onBeforeUpload: "onBeforeUpload" }, ngImport: i0, template: "<div class=\"clearfix\">\r\n <nz-upload\r\n *ngIf=\"opts && opts?.uploadType == 'drag'\"\r\n nzType=\"drag\"\r\n nzAction=\"\"\r\n [nzBeforeUpload]=\"beforeUpload\"\r\n [nzRemove]=\"remove\"\r\n [nzSize]=\"opts.nzSize || 0\"\r\n [nzCustomRequest]=\"customReq\"\r\n (nzChange)=\"onChange($event)\"\r\n [nzType]=\"opts?.uploadType\"\r\n [nzAccept]=\"opts.nzFileType\"\r\n [nzLimit]=\"'1'\"\r\n >\r\n <p class=\"ant-upload-drag-icon\">\r\n <i nz-icon nzType=\"inbox\"></i>\r\n </p>\r\n <p class=\"ant-upload-text\">\u5355\u51FB\u6216\u62D6\u52A8\u6587\u4EF6\u5230\u6B64\u533A\u57DF\u4E0A\u4F20</p>\r\n </nz-upload>\r\n <nz-upload\r\n *ngIf=\"opts && opts?.uploadType == 'button'\"\r\n nzType=\"drag\"\r\n nzAction=\"\"\r\n [nzSize]=\"opts.nzSize || 0\"\r\n [nzShowUploadList]=\"showUploadList\"\r\n [nzBeforeUpload]=\"beforeUpload\"\r\n [nzRemove]=\"remove\"\r\n [nzCustomRequest]=\"customReq\"\r\n (nzChange)=\"onChange($event)\"\r\n [nzType]=\"opts?.uploadType\"\r\n [nzAccept]=\"opts.nzFileType\"\r\n [nzLimit]=\"'1'\"\r\n >\r\n <button nz-button nzSize=\"small\"><i nz-icon nzType=\"upload\" style=\"font-size: 16px\"></i><span> {{opts.btnName}}</span></button>\r\n </nz-upload>\r\n <nz-upload\r\n *ngIf=\"opts && !opts?.uploadType \"\r\n nzAction=\"\"\r\n nzListType=\"picture-card\"\r\n [nzSize]=\"opts.nzSize || 0\"\r\n [(nzFileList)]=\"opts.imageList\"\r\n [nzShowButton]=\"opts.imageList.length < opts.limit\"\r\n [nzShowUploadList]=\"showUploadList\"\r\n [nzPreview]=\"handlePreview\"\r\n [nzRemove]=\"remove\"\r\n [nzBeforeUpload]=\"beforeUpload\"\r\n [nzCustomRequest]=\"customReq\"\r\n (nzChange)=\"onChange($event)\"\r\n [nzType]=\"opts?.uploadType\"\r\n [nzAccept]=\"opts.nzFileType\"\r\n [nzDisabled]=\"!isEdit\"\r\n [nzLimit]=\"'1'\"\r\n [nzFileListRender]=\"opts && isEdit && allowChangSeq && opts.imageList.length > 0 ? fileListTmp : null\"\r\n >\r\n <i nz-icon nzType=\"plus\"></i>\r\n <div class=\"ant-upload-text\">{{opts.btnName?opts.btnName:'\u4E0A\u4F20\u56FE\u7247'}}</div>\r\n </nz-upload>\r\n <!-- <a *ngIf=\"allowChangSeq && isEdit && opts.imageList.length > 1\" (click)=\"openBannerSeq(imgsContent, tplFooter)\"\r\n style=\"margin-left: 10px; \"\r\n ><i nz-icon nzType=\"plus\" nzTheme=\"outline\" style=\"color: #1890ff; font-size: 15px\"></i>\u8C03\u6574\u56FE\u7247\u987A\u5E8F</a>-->\r\n <nz-modal\r\n [nzVisible]=\"previewVisible\"\r\n [nzContent]=\"modalContent\"\r\n [nzFooter]=\"null\"\r\n (nzOnCancel)=\"previewVisible = false\"\r\n >\r\n <ng-template #modalContent>\r\n <img *ngIf=\"!previewImage.endsWith('.mp4')\" [src]=\"previewImage\" [ngStyle]=\"{ width: '100%' }\"/>\r\n <div style=\"width: 100%;margin-top: 15px\">\r\n <app-video *ngIf=\"previewImage.endsWith('.mp4')\" [url]=\"previewImage\"></app-video>\r\n </div>\r\n </ng-template>\r\n </nz-modal>\r\n <ng-template #imgsContent>\r\n <ng-container *ngIf=\"opts && opts.imageList\">\r\n <ng-container *ngFor=\"let imgs of opts.imageList;let i = index\">\r\n <div class=\"img-div\">\r\n <img [src]=\"imgs.url || imgs.thumbUrl\" [ngStyle]=\"{ width: '100px',display: 'inline-block', margin:'10px' }\"/>\r\n <div style=\"margin-right: 20px\">\r\n <a title=\"\u4E0A\u79FB\" *ngIf=\" i > 0\" style=\"display: block;\" (click)=\"arrowUp(i)\"><i nz-icon nzType=\"arrow-up\"\r\n nzTheme=\"outline\"\r\n style=\"color: #1890ff; font-size: 15px;\"></i>\r\n \u4E0A\u79FB</a>\r\n <a title=\"\u4E0B\u79FB\" *ngIf=\" i < opts.imageList.length - 1\" (click)=\"arrowDown(i)\"><i nz-icon nzType=\"arrow-down\"\r\n nzTheme=\"outline\"\r\n style=\"color: #1890ff; font-size: 15px\"></i>\r\n \u4E0B\u79FB</a>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n\r\n </ng-template>\r\n <!-- </nz-modal>-->\r\n</div>\r\n<ng-template #fileListTmp>\r\n <div dragula=\"dragulaBag\" [(dragulaModel)]=\"opts.imageList\" (dragulaModelChange)=\"dragnumber($event)\">\r\n <ng-container *ngFor=\"let imgs of opts.imageList;let i = index\">\r\n <div class=\"img-div img-pre\" style=\"\">\r\n <img [src]=\"getImgUrl(imgs) |ossImg\" [ngStyle]=\"{ width: '100px',display: 'inline-block', margin:'10px' }\"/>\r\n <div>\r\n <span (click)=\"priviewImg(imgs)\" nz-icon nzType=\"eye\" nzTheme=\"outline\"></span>\r\n <span (click)=\"delImg(i)\" nz-icon nzType=\"delete\" nzTheme=\"outline\"></span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n\r\n</ng-template>\r\n<ng-template #tplFooter>\r\n <button nz-button nzType=\"default\" (click)=\"destroyTplModal()\">\r\n \u53D6\u6D88\r\n </button>\r\n <button nz-button nzType=\"primary\" (click)=\"saveSeq()\">\r\n \u4FDD\u5B58\u987A\u5E8F\r\n </button>\r\n</ng-template>\r\n\r\n\r\n", styles: ["i[nz-icon]{font-size:32px;color:#999}.ant-upload-text{margin-top:8px;color:#666}.img-div{padding:8px;border:1px solid #d9d9d9;border-radius:4px;margin-top:20px;display:flex;align-items:center;justify-content:space-between}:host .img-pre{display:inline-block;position:relative;margin-left:10px}:host .img-pre div{display:none;position:absolute;width:100%;height:100%;top:0;left:0;background:#0000006b;z-index:200;color:#fff;align-items:center;justify-content:center;font-size:16px}:host .img-pre div span{margin:10px;cursor:pointer}:host .img-pre:hover div{display:flex}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i5.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i6.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i7.NzWaveDirective, selector: "[nz-wave],button[nz-button]:not([nzType=\"link\"]):not([nzType=\"text\"])", inputs: ["nzWaveExtraNode"], exportAs: ["nzWave"] }, { kind: "directive", type: i8.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "component", type: i3.NzModalComponent, selector: "nz-modal", inputs: ["nzMask", "nzMaskClosable", "nzCloseOnNavigation", "nzVisible", "nzClosable", "nzOkLoading", "nzOkDisabled", "nzCancelDisabled", "nzCancelLoading", "nzKeyboard", "nzNoAnimation", "nzCentered", "nzDraggable", "nzContent", "nzFooter", "nzZIndex", "nzWidth", "nzWrapClassName", "nzClassName", "nzStyle", "nzTitle", "nzCloseIcon", "nzMaskStyle", "nzBodyStyle", "nzOkText", "nzCancelText", "nzOkType", "nzOkDanger", "nzIconType", "nzModalType", "nzAutofocus", "nzOnOk", "nzOnCancel"], outputs: ["nzOnOk", "nzOnCancel", "nzAfterOpen", "nzAfterClose", "nzVisibleChange"], exportAs: ["nzModal"] }, { kind: "component", type: i9.NzUploadComponent, selector: "nz-upload", inputs: ["nzType", "nzLimit", "nzSize", "nzFileType", "nzAccept", "nzAction", "nzDirectory", "nzOpenFileDialogOnClick", "nzBeforeUpload", "nzCustomRequest", "nzData", "nzFilter", "nzFileList", "nzDisabled", "nzHeaders", "nzListType", "nzMultiple", "nzName", "nzShowUploadList", "nzShowButton", "nzWithCredentials", "nzRemove", "nzPreview", "nzPreviewFile", "nzPreviewIsImage", "nzTransformFile", "nzDownload", "nzIconRender", "nzFileListRender"], outputs: ["nzChange", "nzFileListChange"], exportAs: ["nzUpload"] }, { kind: "directive", type: i10.DragulaDirective, selector: "[dragula]", inputs: ["dragula", "dragulaModel"], outputs: ["dragulaModelChange"] }, { kind: "component", type: i11.VideoComponent, selector: "app-video", inputs: ["url"] }, { kind: "pipe", type: i12.OssImgPipe, name: "ossImg" }] }); }
|
|
254
254
|
}
|
|
255
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
255
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UploadComponent, decorators: [{
|
|
256
256
|
type: Component,
|
|
257
257
|
args: [{ selector: 'atr-img-upload', template: "<div class=\"clearfix\">\r\n <nz-upload\r\n *ngIf=\"opts && opts?.uploadType == 'drag'\"\r\n nzType=\"drag\"\r\n nzAction=\"\"\r\n [nzBeforeUpload]=\"beforeUpload\"\r\n [nzRemove]=\"remove\"\r\n [nzSize]=\"opts.nzSize || 0\"\r\n [nzCustomRequest]=\"customReq\"\r\n (nzChange)=\"onChange($event)\"\r\n [nzType]=\"opts?.uploadType\"\r\n [nzAccept]=\"opts.nzFileType\"\r\n [nzLimit]=\"'1'\"\r\n >\r\n <p class=\"ant-upload-drag-icon\">\r\n <i nz-icon nzType=\"inbox\"></i>\r\n </p>\r\n <p class=\"ant-upload-text\">\u5355\u51FB\u6216\u62D6\u52A8\u6587\u4EF6\u5230\u6B64\u533A\u57DF\u4E0A\u4F20</p>\r\n </nz-upload>\r\n <nz-upload\r\n *ngIf=\"opts && opts?.uploadType == 'button'\"\r\n nzType=\"drag\"\r\n nzAction=\"\"\r\n [nzSize]=\"opts.nzSize || 0\"\r\n [nzShowUploadList]=\"showUploadList\"\r\n [nzBeforeUpload]=\"beforeUpload\"\r\n [nzRemove]=\"remove\"\r\n [nzCustomRequest]=\"customReq\"\r\n (nzChange)=\"onChange($event)\"\r\n [nzType]=\"opts?.uploadType\"\r\n [nzAccept]=\"opts.nzFileType\"\r\n [nzLimit]=\"'1'\"\r\n >\r\n <button nz-button nzSize=\"small\"><i nz-icon nzType=\"upload\" style=\"font-size: 16px\"></i><span> {{opts.btnName}}</span></button>\r\n </nz-upload>\r\n <nz-upload\r\n *ngIf=\"opts && !opts?.uploadType \"\r\n nzAction=\"\"\r\n nzListType=\"picture-card\"\r\n [nzSize]=\"opts.nzSize || 0\"\r\n [(nzFileList)]=\"opts.imageList\"\r\n [nzShowButton]=\"opts.imageList.length < opts.limit\"\r\n [nzShowUploadList]=\"showUploadList\"\r\n [nzPreview]=\"handlePreview\"\r\n [nzRemove]=\"remove\"\r\n [nzBeforeUpload]=\"beforeUpload\"\r\n [nzCustomRequest]=\"customReq\"\r\n (nzChange)=\"onChange($event)\"\r\n [nzType]=\"opts?.uploadType\"\r\n [nzAccept]=\"opts.nzFileType\"\r\n [nzDisabled]=\"!isEdit\"\r\n [nzLimit]=\"'1'\"\r\n [nzFileListRender]=\"opts && isEdit && allowChangSeq && opts.imageList.length > 0 ? fileListTmp : null\"\r\n >\r\n <i nz-icon nzType=\"plus\"></i>\r\n <div class=\"ant-upload-text\">{{opts.btnName?opts.btnName:'\u4E0A\u4F20\u56FE\u7247'}}</div>\r\n </nz-upload>\r\n <!-- <a *ngIf=\"allowChangSeq && isEdit && opts.imageList.length > 1\" (click)=\"openBannerSeq(imgsContent, tplFooter)\"\r\n style=\"margin-left: 10px; \"\r\n ><i nz-icon nzType=\"plus\" nzTheme=\"outline\" style=\"color: #1890ff; font-size: 15px\"></i>\u8C03\u6574\u56FE\u7247\u987A\u5E8F</a>-->\r\n <nz-modal\r\n [nzVisible]=\"previewVisible\"\r\n [nzContent]=\"modalContent\"\r\n [nzFooter]=\"null\"\r\n (nzOnCancel)=\"previewVisible = false\"\r\n >\r\n <ng-template #modalContent>\r\n <img *ngIf=\"!previewImage.endsWith('.mp4')\" [src]=\"previewImage\" [ngStyle]=\"{ width: '100%' }\"/>\r\n <div style=\"width: 100%;margin-top: 15px\">\r\n <app-video *ngIf=\"previewImage.endsWith('.mp4')\" [url]=\"previewImage\"></app-video>\r\n </div>\r\n </ng-template>\r\n </nz-modal>\r\n <ng-template #imgsContent>\r\n <ng-container *ngIf=\"opts && opts.imageList\">\r\n <ng-container *ngFor=\"let imgs of opts.imageList;let i = index\">\r\n <div class=\"img-div\">\r\n <img [src]=\"imgs.url || imgs.thumbUrl\" [ngStyle]=\"{ width: '100px',display: 'inline-block', margin:'10px' }\"/>\r\n <div style=\"margin-right: 20px\">\r\n <a title=\"\u4E0A\u79FB\" *ngIf=\" i > 0\" style=\"display: block;\" (click)=\"arrowUp(i)\"><i nz-icon nzType=\"arrow-up\"\r\n nzTheme=\"outline\"\r\n style=\"color: #1890ff; font-size: 15px;\"></i>\r\n \u4E0A\u79FB</a>\r\n <a title=\"\u4E0B\u79FB\" *ngIf=\" i < opts.imageList.length - 1\" (click)=\"arrowDown(i)\"><i nz-icon nzType=\"arrow-down\"\r\n nzTheme=\"outline\"\r\n style=\"color: #1890ff; font-size: 15px\"></i>\r\n \u4E0B\u79FB</a>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n\r\n </ng-template>\r\n <!-- </nz-modal>-->\r\n</div>\r\n<ng-template #fileListTmp>\r\n <div dragula=\"dragulaBag\" [(dragulaModel)]=\"opts.imageList\" (dragulaModelChange)=\"dragnumber($event)\">\r\n <ng-container *ngFor=\"let imgs of opts.imageList;let i = index\">\r\n <div class=\"img-div img-pre\" style=\"\">\r\n <img [src]=\"getImgUrl(imgs) |ossImg\" [ngStyle]=\"{ width: '100px',display: 'inline-block', margin:'10px' }\"/>\r\n <div>\r\n <span (click)=\"priviewImg(imgs)\" nz-icon nzType=\"eye\" nzTheme=\"outline\"></span>\r\n <span (click)=\"delImg(i)\" nz-icon nzType=\"delete\" nzTheme=\"outline\"></span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n\r\n</ng-template>\r\n<ng-template #tplFooter>\r\n <button nz-button nzType=\"default\" (click)=\"destroyTplModal()\">\r\n \u53D6\u6D88\r\n </button>\r\n <button nz-button nzType=\"primary\" (click)=\"saveSeq()\">\r\n \u4FDD\u5B58\u987A\u5E8F\r\n </button>\r\n</ng-template>\r\n\r\n\r\n", styles: ["i[nz-icon]{font-size:32px;color:#999}.ant-upload-text{margin-top:8px;color:#666}.img-div{padding:8px;border:1px solid #d9d9d9;border-radius:4px;margin-top:20px;display:flex;align-items:center;justify-content:space-between}:host .img-pre{display:inline-block;position:relative;margin-left:10px}:host .img-pre div{display:none;position:absolute;width:100%;height:100%;top:0;left:0;background:#0000006b;z-index:200;color:#fff;align-items:center;justify-content:center;font-size:16px}:host .img-pre div span{margin:10px;cursor:pointer}:host .img-pre:hover div{display:flex}\n"] }]
|
|
258
258
|
}], ctorParameters: () => [{ type: i0.Injector }, { type: i1.NzImageService }, { type: i2.HttpClient }, { type: i3.NzModalService }], propDecorators: { opts: [{
|
|
@@ -270,4 +270,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImpor
|
|
|
270
270
|
}], onBeforeUpload: [{
|
|
271
271
|
type: Output
|
|
272
272
|
}] } });
|
|
273
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvdXBsb2FkL3VwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3VwbG9hZC91cGxvYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBc0IsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUMsV0FBVyxFQUFhLGFBQWEsRUFBRSxZQUFZLEVBQTBCLE1BQU0sc0JBQXNCLENBQUM7QUFJbEgsT0FBTyxFQUFDLGdCQUFnQixFQUFZLE1BQU0sK0JBQStCLENBQUM7QUFDMUUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFReEQsTUFBTSxPQUFPLGVBQWU7SUE2QjFCLFlBQW9CLFFBQWtCLEVBQVUsY0FBOEIsRUFDMUQsVUFBc0IsRUFBVSxZQUE0QjtRQUQ1RCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzFELGVBQVUsR0FBVixVQUFVLENBQVk7UUFBVSxpQkFBWSxHQUFaLFlBQVksQ0FBZ0I7UUEzQnZFLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFDZCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUUvQixjQUFTLEdBQVEsRUFBRSxDQUFDO1FBRXBCLGVBQVUsR0FBUSxFQUFFLENBQUE7UUFFWCxtQkFBYyxHQUF1STtZQUM1SixlQUFlLEVBQUUsSUFB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R0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBVTtRQUNsQixJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUN2QyxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDekIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUMzQixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDakMsSUFBSSxRQUFRLEdBQVEsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ3BDLElBQUksSUFBSSxDQUFDLEtBQUss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Q0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ2xDLENBQUM7OEdBOVFVLGVBQWU7a0dBQWYsZUFBZSx5UUNoQjVCLG11S0F1SEE7OzJGRHZHYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLGdCQUFnQjtnS0FNakIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQU1HLGNBQWM7c0JBQXRCLEtBQUs7Z0JBT04sV0FBVztzQkFEVixNQUFNO2dCQUlQLFVBQVU7c0JBRFQsTUFBTTtnQkFHUCxjQUFjO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEluamVjdG9yLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge0h0dHBSZXF1ZXN0LCBIdHRwRXZlbnQsIEh0dHBFdmVudFR5cGUsIEh0dHBSZXNwb25zZSwgSHR0cENsaWVudCwgSHR0cEhlYWRlcnN9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHtOek1vZGFsUmVmLCBOek1vZGFsU2VydmljZX0gZnJvbSAnbmctem9ycm8tYW50ZC9tb2RhbCc7XHJcbmltcG9ydCB7TnpVcGxvYWRDaGFuZ2VQYXJhbSwgTnpVcGxvYWRGaWxlLCBOelVwbG9hZFhIUkFyZ3N9IGZyb20gJ25nLXpvcnJvLWFudGQvdXBsb2FkJztcclxuaW1wb3J0IHtlbnZpcm9ubWVudH0gZnJvbSBcIm5nLXpvcnJvLWFudGQvY29yZS9lbnZpcm9ubWVudHNcIjtcclxuaW1wb3J0IHthdHJfc3RhdGljX2RhdGFzLCBJbWFnZU9wdHN9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2Jhc2UvYXRyLWNvbW1vblwiO1xyXG5pbXBvcnQge0h0dHBTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9odHRwLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUb29sc1V0aWx9IGZyb20gXCIuLi8uLi8uLi9jb3JlL3V0aWxzL1Rvb2xzVXRpbFwiO1xyXG5pbXBvcnQge056SW1hZ2VTZXJ2aWNlfSBmcm9tICduZy16b3Jyby1hbnRkL2ltYWdlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXRyLWltZy11cGxvYWQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3VwbG9hZC5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKSBvcHRzOiBJbWFnZU9wdHMgfCBhbnk7XHJcbiAgQElucHV0KCkgaXNFZGl0ID0gdHJ1ZTtcclxuICBASW5wdXQoKSBhbGxvd0NoYW5nU2VxID0gZmFsc2U7XHJcbiAgdHBsTW9kYWw6IE56TW9kYWxSZWYgfCBhbnk7XHJcbiAgdXBsb2FkVXJsOiBhbnkgPSBcIlwiO1xyXG5cclxuICB1cGxvYWREYXRhOiBhbnkgPSB7fVxyXG5cclxuICBASW5wdXQoKSBzaG93VXBsb2FkTGlzdDogYm9vbGVhbiB8IHsgc2hvd1ByZXZpZXdJY29uPzogYm9vbGVhbiwgc2hvd1JlbW92ZUljb24/OiBib29sZWFuLCBzaG93RG93bmxvYWRJY29uPzogYm9vbGVhbiwgaGlkZVByZXZpZXdJY29uSW5Ob25JbWFnZT86IGJvb2xlYW4gfSA9IHtcclxuICAgIHNob3dQcmV2aWV3SWNvbjogdHJ1ZSxcclxuICAgIHNob3dSZW1vdmVJY29uOiB0cnVlLFxyXG4gICAgaGlkZVByZXZpZXdJY29uSW5Ob25JbWFnZTogdHJ1ZVxyXG4gIH07XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGFmdGVyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgb3B0c0NoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgb25CZWZvcmVVcGxvYWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuXHJcbiAgcHJldmlld0ltYWdlOiBzdHJpbmcgfCBhbnkgPSAnJztcclxuICBwcmV2aWV3VmlzaWJsZSA9IGZhbHNlO1xyXG4gIGNoYW5nZVZpc2libGUgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsIHByaXZhdGUgbnpJbWFnZVNlcnZpY2U6IE56SW1hZ2VTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCwgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IE56TW9kYWxTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICB9XHJcblxyXG4gIGdldEZpbGVUeWVJY29uKGZpbGVUeXBlOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmcpIHtcclxuICAgIGxldCB0aHVtYlVybCA9IHRoaXMuZ2V0RmlsZVRodW1iVXJsKGZpbGVUeXBlKTtcclxuICAgIGlmICh0aHVtYlVybCA9PT0gJycpIHtcclxuICAgICAgdGh1bWJVcmwgPSB0aGlzLmdldFRodW1iVXJsKGZpbGVOYW1lKTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aHVtYlVybDtcclxuICB9XHJcblxyXG4gIGdldFRodW1iVXJsKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XHJcblxyXG4gICAgaWYgKCFwYXRoKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICAgIC8vIOWQjue8gOiOt+WPllxyXG4gICAgaWYgKHBhdGguZW5kc1dpdGgoJy5tcDQnKSkge1xyXG4gICAgICByZXR1cm4gJy4uLy4uLy4uL2Fzc2V0cy92aWRlby5qcGcnO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0RmlsZVRodW1iVXJsKHR5cGU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBsZXQgdGh1bWJVcmwgPSAnJztcclxuICAgIGlmICh0eXBlID09PSAndmlkZW8vbXA0JyB8fCB0eXBlID09PSAnbXA0Jykge1xyXG4gICAgICB0aHVtYlVybCA9ICcuLi8uLi8uLi9hc3NldHMvdmlkZW8uanBnJztcclxuICAgIH1cclxuICAgIHJldHVybiB0aHVtYlVybDtcclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlKHBhcmFtczogTnpVcGxvYWRDaGFuZ2VQYXJhbSkge1xyXG4gICAgY29uc29sZS5sb2cocGFyYW1zKTtcclxuICAgIGlmIChwYXJhbXMudHlwZSA9PSBcInN1Y2Nlc3NcIiB8fCBwYXJhbXMudHlwZSA9PSBcInJlbW92ZWRcIikge1xyXG5cclxuICAgICAgdGhpcy5vcHRzLmltYWdlTGlzdCA9IFtdO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLm9wdHMuaW1hZ2VMaXN0ID0gcGFyYW1zLmZpbGVMaXN0Lm1hcCgoZmlsZTogYW55KSA9PiB7XHJcblxyXG4gICAgICAgICAgaWYgKGZpbGUudHlwZSA9PSAndmlkZW8vbXA0JyAmJiBmaWxlLnVpZCA9PT0gcGFyYW1zLmZpbGUudWlkKSB7XHJcbiAgICAgICAgICAgIGxldCB0aHVtYlVybCA9IHRoaXMuZ2V0RmlsZVR5ZUljb24oZmlsZS50eXBlLCBmaWxlLm5hbWUpO1xyXG4gICAgICAgICAgICBmaWxlLnRodW1iVXJsID0gdGh1bWJVcmwgPyB0aHVtYlVybCA6IGZpbGUudGh1bWJVcmw7XHJcbiAgICAgICAgICAgIGZpbGUudXJsID0gZmlsZS5vcmlnaW5GaWxlT2JqID8gYXRyX3N0YXRpY19kYXRhcy5PU1NfVVJMICsgZmlsZS5vcmlnaW5GaWxlT2JqWydrZXknXSA6IGZpbGVbJ3BhdGgnXTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiBmaWxlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LCA1MCk7XHJcbiAgICAgIGxldCBmaWxlVXJsczogYW55W10gPSBbXTtcclxuICAgICAgZm9yIChsZXQgZmlsZSBvZiBwYXJhbXMuZmlsZUxpc3QpIHtcclxuICAgICAgICBpZiAoZmlsZVtcImtleVwiXSAhPSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgIGZpbGVVcmxzLnB1c2goZmlsZVtcImtleVwiXSk7XHJcbiAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGZpbGUub3JpZ2luRmlsZU9iaikge1xyXG4gICAgICAgICAgbGV0IG9yaWdpbkZpbGVPYmo6IGFueSA9IGZpbGUub3JpZ2luRmlsZU9ialxyXG4gICAgICAgICAgaWYgKG9yaWdpbkZpbGVPYmpbXCJrZXlcIl0gIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIGZpbGVVcmxzLnB1c2gob3JpZ2luRmlsZU9ialtcImtleVwiXSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuYWZ0ZXJDaGFuZ2UuZW1pdCh7a2V5OiB0aGlzLm9wdHMua2V5LCB2YWx1ZXM6IGZpbGVVcmxzLmpvaW4oXCIsXCIpfSk7XHJcbiAgICAgIHRoaXMub3B0c0NoYW5nZS5lbWl0KHRoaXMub3B0cylcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0IGh0dHBTZXJ2aWNlKCk6IEh0dHBTZXJ2aWNlIHtcclxuICAgIHJldHVybiB0aGlzLmluamVjdG9yLmdldChIdHRwU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVQcmV2aWV3ID0gKGZpbGU6IE56VXBsb2FkRmlsZSkgPT4ge1xyXG4gICAgdGhpcy5wcmV2aWV3SW1hZ2UgPSBmaWxlLnVybCB8fCBmaWxlLnRodW1iVXJsO1xyXG4gICAgdGhpcy5wcmV2aWV3VmlzaWJsZSA9IHRydWU7XHJcbiAgfTtcclxuXHJcbiAgcmVtb3ZlID0gKGZpbGU6IE56VXBsb2FkRmlsZSkgPT4ge1xyXG4gICAgaWYgKCF0aGlzLmlzRWRpdCkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBjb25zb2xlLmxvZyhmaWxlKTtcclxuICAgIGlmICh0aGlzLm9wdHMgJiYgdGhpcy5vcHRzLnJlbW92ZUFjdGlvbikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGJlZm9yZVVwbG9hZCA9IChmaWxlOiBOelVwbG9hZEZpbGUsIGZpbGVMaXN0OiBOelVwbG9hZEZpbGVbXSk6YW55ID0+IHtcclxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxib29sZWFuPihvYnNlcnZlID0+IHtcclxuICAgICAgbGV0IGZpbGVOYW1lO1xyXG4gICAgICBpZiAodGhpcy5vcHRzLmtlZXBOYW1lKSB7XHJcbiAgICAgICAgZmlsZU5hbWUgPSBmaWxlLm5hbWU7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZmlsZU5hbWUgPSBUb29sc1V0aWwuZ2V0UmFuZG9tRmlsZU5hbWUoKSArIFwiLlwiICsgVG9vbHNVdGlsLmdldEZpbGVFeHQoZmlsZS5uYW1lKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLm9uQmVmb3JlVXBsb2FkLmVtaXQoe2NvZGU6ICdnZXRGaWxlJywgZGF0YToge2ZpbGU6IGZpbGUsIGZpbGVMaXN0OiBmaWxlTGlzdH19KVxyXG4gICAgICB0aGlzLmh0dHBTZXJ2aWNlLnBvc3QoYXRyX3N0YXRpY19kYXRhcy5PU1NfUE9MSUNZLCB7XHJcbiAgICAgICAgZGlyOiB0aGlzLm9wdHMudXBsb2FkRGlyLFxyXG4gICAgICAgIGZpbGVOYW1lOiBmaWxlTmFtZSxcclxuICAgICAgICAnc3VjY2Vzc19hY3Rpb25fc3RhdHVzJzogJzIwMCdcclxuICAgICAgfSwgVG9vbHNVdGlsLmdldEh0dHBPcHRpb25zKCkpLnN1YnNjcmliZShcclxuICAgICAgICByZXN1bHQgPT4ge1xyXG5cclxuICAgICAgICAgIGlmIChyZXN1bHQuc3RhdHVzID09IDIwMCkge1xyXG4gICAgICAgICAgICB0aGlzLnVwbG9hZERhdGFbZmlsZS51aWRdID0gcmVzdWx0LmRhdGE7XHJcbiAgICAgICAgICAgIG9ic2VydmUubmV4dCh0cnVlKTtcclxuICAgICAgICAgIH0gZWxzZVxyXG4gICAgICAgICAgICBvYnNlcnZlLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvciA9PiB7XHJcbiAgICAgICAgICBvYnNlcnZlLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICB9KVxyXG5cclxuICB9XHJcbiAgY3VzdG9tUmVxID0gKGl0ZW06IE56VXBsb2FkWEhSQXJncyk6YW55ID0+IHtcclxuICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XHJcbiAgICBsZXQgdXBsb2FkRGF0YSA9IHRoaXMudXBsb2FkRGF0YVtpdGVtLmZpbGUudWlkXTtcclxuICAgIGZvciAobGV0IGtleSBpbiB1cGxvYWREYXRhKSB7XHJcbiAgICAgIGlmIChrZXkgIT0gJ2hvc3QnKVxyXG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChrZXksIHVwbG9hZERhdGFba2V5XSlcclxuICAgIH1cclxuICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIGl0ZW0uZmlsZSBhcyBhbnkpO1xyXG4gICAgY29uc3QgcmVxID0gbmV3IEh0dHBSZXF1ZXN0KCdQT1NUJywgdXBsb2FkRGF0YS5ob3N0ISwgZm9ybURhdGEsIHtcclxuICAgICAgcmVwb3J0UHJvZ3Jlc3M6IHRydWVcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucmVxdWVzdChyZXEpLnN1YnNjcmliZShcclxuICAgICAgKGV2ZW50OiBIdHRwRXZlbnQ8YW55PikgPT4ge1xyXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSBIdHRwRXZlbnRUeXBlLlVwbG9hZFByb2dyZXNzKSB7XHJcbiAgICAgICAgICBpZiAoZXZlbnQudG90YWwhID4gMCkge1xyXG4gICAgICAgICAgICAoZXZlbnQgYXMgYW55KS5wZXJjZW50ID0gKGV2ZW50LmxvYWRlZCAvIGV2ZW50LnRvdGFsISkgKiAxMDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpdGVtLm9uUHJvZ3Jlc3MhKGV2ZW50LCBpdGVtLmZpbGUhKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSB7XHJcbiAgICAgICAgICBpdGVtLmZpbGVbXCJrZXlcIl0gPSB1cGxvYWREYXRhLmtleTtcclxuICAgICAgICAgIGl0ZW0ub25TdWNjZXNzIShldmVudC5ib2R5LCBpdGVtLmZpbGUhLCBldmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnIgPT4ge1xyXG4gICAgICAgIGl0ZW0ub25FcnJvciEoZXJyLCBpdGVtLmZpbGUhKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9O1xyXG5cclxuICBvcGVuQmFubmVyU2VxKHRwbENvbnRlbnQ6IGFueSwgdHBsRm9vdGVyOiBhbnkpIHtcclxuICAgIHRoaXMudHBsTW9kYWwgPSB0aGlzLm1vZGFsU2VydmljZS5jcmVhdGUoe1xyXG4gICAgICBuelRpdGxlOiBcIuS/ruaUueWbvueJh+mhuuW6j1wiLFxyXG4gICAgICBuekNvbnRlbnQ6IHRwbENvbnRlbnQsXHJcbiAgICAgIG56Rm9vdGVyOiB0cGxGb290ZXIsXHJcbiAgICAgIG56TWFza0Nsb3NhYmxlOiBmYWxzZSxcclxuICAgICAgbnpDbG9zYWJsZTogZmFsc2UsXHJcbiAgICAgIG56T25PazogKCkgPT4gY29uc29sZS5sb2coJ0NsaWNrIG9rJylcclxuICAgIH0pO1xyXG4gICAgY29uc29sZS5sb2codGhpcy5vcHRzLmltYWdlTGlzdCk7XHJcbiAgICB0aGlzLmNoYW5nZVZpc2libGUgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgZGVzdHJveVRwbE1vZGFsKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudHBsTW9kYWwpXHJcbiAgICAgIHRoaXMudHBsTW9kYWwuZGVzdHJveSgpO1xyXG4gIH1cclxuXHJcbiAgYXJyb3dVcChpbmRleDogYW55KSB7XHJcbiAgICBsZXQgaW1nID0gdGhpcy5vcHRzLmltYWdlTGlzdFtpbmRleF07XHJcbiAgICB0aGlzLm9wdHMuaW1hZ2VMaXN0W2luZGV4XSA9IHRoaXMub3B0cy5pbWFnZUxpc3RbaW5kZXggLSAxXTtcclxuICAgIHRoaXMub3B0cy5pbWFnZUxpc3RbaW5kZXggLSAxXSA9IGltZztcclxuICB9XHJcblxyXG4gIGFycm93RG93bihpbmRleDogYW55KSB7XHJcbiAgICBsZXQgaW1nID0gdGhpcy5vcHRzLmltYWdlTGlzdFtpbmRleF07XHJcbiAgICB0aGlzLm9wdHMuaW1hZ2VMaXN0W2luZGV4XSA9IHRoaXMub3B0cy5pbWFnZUxpc3RbaW5kZXggKyAxXTtcclxuICAgIHRoaXMub3B0cy5pbWFnZUxpc3RbaW5kZXggKyAxXSA9IGltZztcclxuICB9XHJcblxyXG4gIHNhdmVTZXEoKSB7XHJcbiAgICB0aGlzLmRlc3Ryb3lUcGxNb2RhbCgpO1xyXG4gICAgbGV0IGltZ3MgPSB0aGlzLm9wdHMuaW1hZ2VMaXN0O1xyXG4gICAgdGhpcy5vcHRzLmltYWdlTGlzdCA9IFtdO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMub3B0cy5pbWFnZUxpc3QgPSBpbWdzO1xyXG4gICAgICBjb25zb2xlLmxvZyh0aGlzLm9wdHMuaW1hZ2VMaXN0KTtcclxuICAgICAgbGV0IGZpbGVVcmxzOiBhbnkgPSBbXTtcclxuICAgICAgZm9yIChsZXQgZmlsZSBvZiB0aGlzLm9wdHMuaW1hZ2VMaXN0KSB7XHJcbiAgICAgICAgaWYgKGZpbGVbXCJrZXlcIl0gIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBmaWxlVXJscy5wdXNoKGZpbGVbXCJrZXlcIl0pO1xyXG4gICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChmaWxlLm9yaWdpbkZpbGVPYmogJiYgZmlsZS5vcmlnaW5GaWxlT2JqW1wia2V5XCJdICE9IHVuZGVmaW5lZClcclxuICAgICAgICAgIGZpbGVVcmxzLnB1c2goZmlsZS5vcmlnaW5GaWxlT2JqW1wia2V5XCJdKVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmFmdGVyQ2hhbmdlLmVtaXQoe2tleTogdGhpcy5vcHRzLmtleSwgdmFsdWVzOiBmaWxlVXJscy5qb2luKFwiLFwiKX0pO1xyXG4gICAgfSwgNTApXHJcblxyXG4gIH1cclxuXHJcbiAgZHJhZ251bWJlcihudW1lcjogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhudW1lcik7XHJcbiAgICBjb25zb2xlLmxvZygnb3InLCB0aGlzLm9wdHMuaW1hZ2VMaXN0KVxyXG4gICAgY29uc29sZS5sb2coJ25ldycsIG51bWVyKVxyXG4gICAgdGhpcy5zYXZlU2VxKCk7XHJcbiAgICAvLyB0aGlzLm9wdHMuaW1hZ2VMaXN0ID0gbnVtZXJcclxuICB9XHJcblxyXG4gIGRlbEltZyhudW1lcjogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhudW1lcik7XHJcbiAgICB0aGlzLm9wdHMuaW1hZ2VMaXN0ID0gdGhpcy5vcHRzLmltYWdlTGlzdC5maWx0ZXIoKHY6IGFueSwgaTogYW55KSA9PiBpICE9IG51bWVyKVxyXG4gICAgbGV0IGZpbGVVcmxzOiBhbnkgPSBbXTtcclxuICAgIGZvciAobGV0IGZpbGUgb2YgdGhpcy5vcHRzLmltYWdlTGlzdCkge1xyXG4gICAgICBpZiAoZmlsZVtcImtleVwiXSAhPSB1bmRlZmluZWQpIHtcclxuICAgICAgICBmaWxlVXJscy5wdXNoKGZpbGVbXCJrZXlcIl0pO1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChmaWxlLm9yaWdpbkZpbGVPYmogJiYgZmlsZS5vcmlnaW5GaWxlT2JqW1wia2V5XCJdICE9IHVuZGVmaW5lZClcclxuICAgICAgICBmaWxlVXJscy5wdXNoKGZpbGUub3JpZ2luRmlsZU9ialtcImtleVwiXSlcclxuICAgIH1cclxuICAgIHRoaXMuYWZ0ZXJDaGFuZ2UuZW1pdCh7a2V5OiB0aGlzLm9wdHMua2V5LCB2YWx1ZXM6IGZpbGVVcmxzLmpvaW4oXCIsXCIpfSk7XHJcbiAgfVxyXG5cclxuICBwcml2aWV3SW1nKGltZzogYW55KSB7XHJcbiAgICBsZXQgdXJsID0gVG9vbHNVdGlsLmdldE9zc1VybCh0aGlzLmdldEltZ1VybChpbWcpKVxyXG4gICAgY29uc29sZS5sb2codXJsKVxyXG4gICAgdGhpcy5uekltYWdlU2VydmljZS5wcmV2aWV3KFt7XHJcbiAgICAgIHNyYzogdXJsLFxyXG4gICAgICBhbHQ6ICduZy16b3JybydcclxuICAgIH1dLCB7bnpab29tOiAxLjUsIG56Um90YXRlOiAwfSk7XHJcbiAgfVxyXG5cclxuICBnZXRJbWdVcmwoaW1nOiBhbnkpIHtcclxuICAgIGlmIChpbWcub3JpZ2luRmlsZU9iaiAmJiBpbWcub3JpZ2luRmlsZU9iai5rZXkpIHtcclxuICAgICAgcmV0dXJuIGltZy5vcmlnaW5GaWxlT2JqLmtleVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIChpbWcudXJsIHx8IGltZy50aHVtYlVybClcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNsZWFyZml4XCI+XHJcbiAgPG56LXVwbG9hZFxyXG4gICAgKm5nSWY9XCJvcHRzICYmIG9wdHM/LnVwbG9hZFR5cGUgPT0gJ2RyYWcnXCJcclxuICAgIG56VHlwZT1cImRyYWdcIlxyXG4gICAgbnpBY3Rpb249XCJcIlxyXG4gICAgW256QmVmb3JlVXBsb2FkXT1cImJlZm9yZVVwbG9hZFwiXHJcbiAgICBbbnpSZW1vdmVdPVwicmVtb3ZlXCJcclxuICAgIFtuelNpemVdPVwib3B0cy5uelNpemUgfHwgMFwiXHJcbiAgICBbbnpDdXN0b21SZXF1ZXN0XT1cImN1c3RvbVJlcVwiXHJcbiAgICAobnpDaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICBbbnpUeXBlXT1cIm9wdHM/LnVwbG9hZFR5cGVcIlxyXG4gICAgW256QWNjZXB0XT1cIm9wdHMubnpGaWxlVHlwZVwiXHJcbiAgICBbbnpMaW1pdF09XCInMSdcIlxyXG4gID5cclxuICAgIDxwIGNsYXNzPVwiYW50LXVwbG9hZC1kcmFnLWljb25cIj5cclxuICAgICAgPGkgbnotaWNvbiBuelR5cGU9XCJpbmJveFwiPjwvaT5cclxuICAgIDwvcD5cclxuICAgIDxwIGNsYXNzPVwiYW50LXVwbG9hZC10ZXh0XCI+5Y2V5Ye75oiW5ouW5Yqo5paH5Lu25Yiw5q2k5Yy65Z+f5LiK5LygPC9wPlxyXG4gIDwvbnotdXBsb2FkPlxyXG4gIDxuei11cGxvYWRcclxuICAgICpuZ0lmPVwib3B0cyAmJiBvcHRzPy51cGxvYWRUeXBlID09ICdidXR0b24nXCJcclxuICAgIG56VHlwZT1cImRyYWdcIlxyXG4gICAgbnpBY3Rpb249XCJcIlxyXG4gICAgW256U2l6ZV09XCJvcHRzLm56U2l6ZSB8fCAwXCJcclxuICAgIFtuelNob3dVcGxvYWRMaXN0XT1cInNob3dVcGxvYWRMaXN0XCJcclxuICAgIFtuekJlZm9yZVVwbG9hZF09XCJiZWZvcmVVcGxvYWRcIlxyXG4gICAgW256UmVtb3ZlXT1cInJlbW92ZVwiXHJcbiAgICBbbnpDdXN0b21SZXF1ZXN0XT1cImN1c3RvbVJlcVwiXHJcbiAgICAobnpDaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICBbbnpUeXBlXT1cIm9wdHM/LnVwbG9hZFR5cGVcIlxyXG4gICAgW256QWNjZXB0XT1cIm9wdHMubnpGaWxlVHlwZVwiXHJcbiAgICBbbnpMaW1pdF09XCInMSdcIlxyXG4gID5cclxuICAgIDxidXR0b24gbnotYnV0dG9uIG56U2l6ZT1cInNtYWxsXCI+PGkgbnotaWNvbiBuelR5cGU9XCJ1cGxvYWRcIiBzdHlsZT1cImZvbnQtc2l6ZTogMTZweFwiPjwvaT48c3Bhbj4ge3tvcHRzLmJ0bk5hbWV9fTwvc3Bhbj48L2J1dHRvbj5cclxuICA8L256LXVwbG9hZD5cclxuICA8bnotdXBsb2FkXHJcbiAgICAqbmdJZj1cIm9wdHMgJiYgIW9wdHM/LnVwbG9hZFR5cGUgXCJcclxuICAgIG56QWN0aW9uPVwiXCJcclxuICAgIG56TGlzdFR5cGU9XCJwaWN0dXJlLWNhcmRcIlxyXG4gICAgW256U2l6ZV09XCJvcHRzLm56U2l6ZSB8fCAwXCJcclxuICAgIFsobnpGaWxlTGlzdCldPVwib3B0cy5pbWFnZUxpc3RcIlxyXG4gICAgW256U2hvd0J1dHRvbl09XCJvcHRzLmltYWdlTGlzdC5sZW5ndGggPCBvcHRzLmxpbWl0XCJcclxuICAgIFtuelNob3dVcGxvYWRMaXN0XT1cInNob3dVcGxvYWRMaXN0XCJcclxuICAgIFtuelByZXZpZXddPVwiaGFuZGxlUHJldmlld1wiXHJcbiAgICBbbnpSZW1vdmVdPVwicmVtb3ZlXCJcclxuICAgIFtuekJlZm9yZVVwbG9hZF09XCJiZWZvcmVVcGxvYWRcIlxyXG4gICAgW256Q3VzdG9tUmVxdWVzdF09XCJjdXN0b21SZXFcIlxyXG4gICAgKG56Q2hhbmdlKT1cIm9uQ2hhbmdlKCRldmVudClcIlxyXG4gICAgW256VHlwZV09XCJvcHRzPy51cGxvYWRUeXBlXCJcclxuICAgIFtuekFjY2VwdF09XCJvcHRzLm56RmlsZVR5cGVcIlxyXG4gICAgW256RGlzYWJsZWRdPVwiIWlzRWRpdFwiXHJcbiAgICBbbnpMaW1pdF09XCInMSdcIlxyXG4gICAgW256RmlsZUxpc3RSZW5kZXJdPVwib3B0cyAmJiBpc0VkaXQgJiYgYWxsb3dDaGFuZ1NlcSAmJiBvcHRzLmltYWdlTGlzdC5sZW5ndGggPiAwID8gZmlsZUxpc3RUbXAgOiBudWxsXCJcclxuICA+XHJcbiAgICA8aSBuei1pY29uIG56VHlwZT1cInBsdXNcIj48L2k+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYW50LXVwbG9hZC10ZXh0XCI+e3tvcHRzLmJ0bk5hbWU/b3B0cy5idG5OYW1lOifkuIrkvKDlm77niYcnfX08L2Rpdj5cclxuICA8L256LXVwbG9hZD5cclxuICA8IS0tIDxhICpuZ0lmPVwiYWxsb3dDaGFuZ1NlcSAmJiBpc0VkaXQgJiYgb3B0cy5pbWFnZUxpc3QubGVuZ3RoID4gMVwiIChjbGljayk9XCJvcGVuQmFubmVyU2VxKGltZ3NDb250ZW50LCB0cGxGb290ZXIpXCJcclxuICAgICAgc3R5bGU9XCJtYXJnaW4tbGVmdDogMTBweDsgXCJcclxuICAgPjxpIG56LWljb24gbnpUeXBlPVwicGx1c1wiIG56VGhlbWU9XCJvdXRsaW5lXCIgc3R5bGU9XCJjb2xvcjogIzE4OTBmZjsgZm9udC1zaXplOiAxNXB4XCI+PC9pPuiwg+aVtOWbvueJh+mhuuW6jzwvYT4tLT5cclxuICA8bnotbW9kYWxcclxuICAgIFtuelZpc2libGVdPVwicHJldmlld1Zpc2libGVcIlxyXG4gICAgW256Q29udGVudF09XCJtb2RhbENvbnRlbnRcIlxyXG4gICAgW256Rm9vdGVyXT1cIm51bGxcIlxyXG4gICAgKG56T25DYW5jZWwpPVwicHJldmlld1Zpc2libGUgPSBmYWxzZVwiXHJcbiAgPlxyXG4gICAgPG5nLXRlbXBsYXRlICNtb2RhbENvbnRlbnQ+XHJcbiAgICAgIDxpbWcgKm5nSWY9XCIhcHJldmlld0ltYWdlLmVuZHNXaXRoKCcubXA0JylcIiBbc3JjXT1cInByZXZpZXdJbWFnZVwiIFtuZ1N0eWxlXT1cInsgd2lkdGg6ICcxMDAlJyB9XCIvPlxyXG4gICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDEwMCU7bWFyZ2luLXRvcDogMTVweFwiPlxyXG4gICAgICAgIDxhcHAtdmlkZW8gKm5nSWY9XCJwcmV2aWV3SW1hZ2UuZW5kc1dpdGgoJy5tcDQnKVwiIFt1cmxdPVwicHJldmlld0ltYWdlXCI+PC9hcHAtdmlkZW8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICA8L256LW1vZGFsPlxyXG4gIDxuZy10ZW1wbGF0ZSAjaW1nc0NvbnRlbnQ+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0cyAmJiBvcHRzLmltYWdlTGlzdFwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpbWdzIG9mIG9wdHMuaW1hZ2VMaXN0O2xldCBpID0gaW5kZXhcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW1nLWRpdlwiPlxyXG4gICAgICAgICAgPGltZyBbc3JjXT1cImltZ3MudXJsIHx8IGltZ3MudGh1bWJVcmxcIiBbbmdTdHlsZV09XCJ7IHdpZHRoOiAnMTAwcHgnLGRpc3BsYXk6ICdpbmxpbmUtYmxvY2snLCBtYXJnaW46JzEwcHgnIH1cIi8+XHJcbiAgICAgICAgICA8ZGl2IHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAyMHB4XCI+XHJcbiAgICAgICAgICAgIDxhIHRpdGxlPVwi5LiK56e7XCIgKm5nSWY9XCIgaSA+IDBcIiBzdHlsZT1cImRpc3BsYXk6IGJsb2NrO1wiIChjbGljayk9XCJhcnJvd1VwKGkpXCI+PGkgbnotaWNvbiBuelR5cGU9XCJhcnJvdy11cFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnpUaGVtZT1cIm91dGxpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiY29sb3I6ICMxODkwZmY7IGZvbnQtc2l6ZTogMTVweDtcIj48L2k+XHJcbiAgICAgICAgICAgICAg5LiK56e7PC9hPlxyXG4gICAgICAgICAgICA8YSB0aXRsZT1cIuS4i+enu1wiICpuZ0lmPVwiIGkgPCBvcHRzLmltYWdlTGlzdC5sZW5ndGggLSAxXCIgKGNsaWNrKT1cImFycm93RG93bihpKVwiPjxpIG56LWljb24gbnpUeXBlPVwiYXJyb3ctZG93blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuelRoZW1lPVwib3V0bGluZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImNvbG9yOiAjMTg5MGZmOyBmb250LXNpemU6IDE1cHhcIj48L2k+XHJcbiAgICAgICAgICAgICAg5LiL56e7PC9hPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgPCEtLSAgPC9uei1tb2RhbD4tLT5cclxuPC9kaXY+XHJcbjxuZy10ZW1wbGF0ZSAjZmlsZUxpc3RUbXA+XHJcbiAgPGRpdiBkcmFndWxhPVwiZHJhZ3VsYUJhZ1wiIFsoZHJhZ3VsYU1vZGVsKV09XCJvcHRzLmltYWdlTGlzdFwiIChkcmFndWxhTW9kZWxDaGFuZ2UpPVwiZHJhZ251bWJlcigkZXZlbnQpXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpbWdzIG9mIG9wdHMuaW1hZ2VMaXN0O2xldCBpID0gaW5kZXhcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImltZy1kaXYgaW1nLXByZVwiIHN0eWxlPVwiXCI+XHJcbiAgICAgICAgPGltZyBbc3JjXT1cImdldEltZ1VybChpbWdzKSB8b3NzSW1nXCIgW25nU3R5bGVdPVwieyB3aWR0aDogJzEwMHB4JyxkaXNwbGF5OiAnaW5saW5lLWJsb2NrJywgbWFyZ2luOicxMHB4JyB9XCIvPlxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8c3BhbiAoY2xpY2spPVwicHJpdmlld0ltZyhpbWdzKVwiIG56LWljb24gbnpUeXBlPVwiZXllXCIgbnpUaGVtZT1cIm91dGxpbmVcIj48L3NwYW4+XHJcbiAgICAgICAgICA8c3BhbiAoY2xpY2spPVwiZGVsSW1nKGkpXCIgbnotaWNvbiBuelR5cGU9XCJkZWxldGVcIiBuelRoZW1lPVwib3V0bGluZVwiPjwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuXHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjdHBsRm9vdGVyPlxyXG4gIDxidXR0b24gbnotYnV0dG9uIG56VHlwZT1cImRlZmF1bHRcIiAoY2xpY2spPVwiZGVzdHJveVRwbE1vZGFsKClcIj5cclxuICAgIOWPlua2iFxyXG4gIDwvYnV0dG9uPlxyXG4gIDxidXR0b24gbnotYnV0dG9uIG56VHlwZT1cInByaW1hcnlcIiAoY2xpY2spPVwic2F2ZVNlcSgpXCI+XHJcbiAgICDkv53lrZjpobrluo9cclxuICA8L2J1dHRvbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcblxyXG4iXX0=
|
|
273
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvdXBsb2FkL3VwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3VwbG9hZC91cGxvYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBc0IsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUMsV0FBVyxFQUFhLGFBQWEsRUFBRSxZQUFZLEVBQTBCLE1BQU0sc0JBQXNCLENBQUM7QUFJbEgsT0FBTyxFQUFDLGdCQUFnQixFQUFZLE1BQU0sK0JBQStCLENBQUM7QUFDMUUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFReEQsTUFBTSxPQUFPLGVBQWU7SUE2QjFCLFlBQW9CLFFBQWtCLEVBQVUsY0FBOEIsRUFDMUQsVUFBc0IsRUFBVSxZQUE0QjtRQUQ1RCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzFELGVBQVUsR0FBVixVQUFVLENBQVk7UUFBVSxpQkFBWSxHQUFaLFlBQVksQ0FBZ0I7UUEzQnZFLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFDZCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUUvQixjQUFTLEdBQVEsRUFBRSxDQUFDO1FBRXBCLGVBQVUsR0FBUSxFQUFFLENBQUE7UUFFWCxtQkFBYyxHQUF1STtZQUM1SixlQUFlLEVBQUUsSUFB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R0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBVTtRQUNsQixJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUN2QyxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDekIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUMzQixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDakMsSUFBSSxRQUFRLEdBQVEsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ3BDLElBQUksSUFBSSxDQUFDLEtBQUss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Q0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ2xDLENBQUM7K0dBOVFVLGVBQWU7bUdBQWYsZUFBZSx5UUNoQjVCLG11S0F1SEE7OzRGRHZHYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLGdCQUFnQjtnS0FNakIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQU1HLGNBQWM7c0JBQXRCLEtBQUs7Z0JBT04sV0FBVztzQkFEVixNQUFNO2dCQUlQLFVBQVU7c0JBRFQsTUFBTTtnQkFHUCxjQUFjO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEluamVjdG9yLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge0h0dHBSZXF1ZXN0LCBIdHRwRXZlbnQsIEh0dHBFdmVudFR5cGUsIEh0dHBSZXNwb25zZSwgSHR0cENsaWVudCwgSHR0cEhlYWRlcnN9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHtOek1vZGFsUmVmLCBOek1vZGFsU2VydmljZX0gZnJvbSAnbmctem9ycm8tYW50ZC9tb2RhbCc7XHJcbmltcG9ydCB7TnpVcGxvYWRDaGFuZ2VQYXJhbSwgTnpVcGxvYWRGaWxlLCBOelVwbG9hZFhIUkFyZ3N9IGZyb20gJ25nLXpvcnJvLWFudGQvdXBsb2FkJztcclxuaW1wb3J0IHtlbnZpcm9ubWVudH0gZnJvbSBcIm5nLXpvcnJvLWFudGQvY29yZS9lbnZpcm9ubWVudHNcIjtcclxuaW1wb3J0IHthdHJfc3RhdGljX2RhdGFzLCBJbWFnZU9wdHN9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2Jhc2UvYXRyLWNvbW1vblwiO1xyXG5pbXBvcnQge0h0dHBTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9odHRwLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUb29sc1V0aWx9IGZyb20gXCIuLi8uLi8uLi9jb3JlL3V0aWxzL1Rvb2xzVXRpbFwiO1xyXG5pbXBvcnQge056SW1hZ2VTZXJ2aWNlfSBmcm9tICduZy16b3Jyby1hbnRkL2ltYWdlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXRyLWltZy11cGxvYWQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3VwbG9hZC5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKSBvcHRzOiBJbWFnZU9wdHMgfCBhbnk7XHJcbiAgQElucHV0KCkgaXNFZGl0ID0gdHJ1ZTtcclxuICBASW5wdXQoKSBhbGxvd0NoYW5nU2VxID0gZmFsc2U7XHJcbiAgdHBsTW9kYWw6IE56TW9kYWxSZWYgfCBhbnk7XHJcbiAgdXBsb2FkVXJsOiBhbnkgPSBcIlwiO1xyXG5cclxuICB1cGxvYWREYXRhOiBhbnkgPSB7fVxyXG5cclxuICBASW5wdXQoKSBzaG93VXBsb2FkTGlzdDogYm9vbGVhbiB8IHsgc2hvd1ByZXZpZXdJY29uPzogYm9vbGVhbiwgc2hvd1JlbW92ZUljb24/OiBib29sZWFuLCBzaG93RG93bmxvYWRJY29uPzogYm9vbGVhbiwgaGlkZVByZXZpZXdJY29uSW5Ob25JbWFnZT86IGJvb2xlYW4gfSA9IHtcclxuICAgIHNob3dQcmV2aWV3SWNvbjogdHJ1ZSxcclxuICAgIHNob3dSZW1vdmVJY29uOiB0cnVlLFxyXG4gICAgaGlkZVByZXZpZXdJY29uSW5Ob25JbWFnZTogdHJ1ZVxyXG4gIH07XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGFmdGVyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgb3B0c0NoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgb25CZWZvcmVVcGxvYWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuXHJcbiAgcHJldmlld0ltYWdlOiBzdHJpbmcgfCBhbnkgPSAnJztcclxuICBwcmV2aWV3VmlzaWJsZSA9IGZhbHNlO1xyXG4gIGNoYW5nZVZpc2libGUgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsIHByaXZhdGUgbnpJbWFnZVNlcnZpY2U6IE56SW1hZ2VTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCwgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IE56TW9kYWxTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICB9XHJcblxyXG4gIGdldEZpbGVUeWVJY29uKGZpbGVUeXBlOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmcpIHtcclxuICAgIGxldCB0aHVtYlVybCA9IHRoaXMuZ2V0RmlsZVRodW1iVXJsKGZpbGVUeXBlKTtcclxuICAgIGlmICh0aHVtYlVybCA9PT0gJycpIHtcclxuICAgICAgdGh1bWJVcmwgPSB0aGlzLmdldFRodW1iVXJsKGZpbGVOYW1lKTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aHVtYlVybDtcclxuICB9XHJcblxyXG4gIGdldFRodW1iVXJsKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XHJcblxyXG4gICAgaWYgKCFwYXRoKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICAgIC8vIOWQjue8gOiOt+WPllxyXG4gICAgaWYgKHBhdGguZW5kc1dpdGgoJy5tcDQnKSkge1xyXG4gICAgICByZXR1cm4gJy4uLy4uLy4uL2Fzc2V0cy92aWRlby5qcGcnO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0RmlsZVRodW1iVXJsKHR5cGU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBsZXQgdGh1bWJVcmwgPSAnJztcclxuICAgIGlmICh0eXBlID09PSAndmlkZW8vbXA0JyB8fCB0eXBlID09PSAnbXA0Jykge1xyXG4gICAgICB0aHVtYlVybCA9ICcuLi8uLi8uLi9hc3NldHMvdmlkZW8uanBnJztcclxuICAgIH1cclxuICAgIHJldHVybiB0aHVtYlVybDtcclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlKHBhcmFtczogTnpVcGxvYWRDaGFuZ2VQYXJhbSkge1xyXG4gICAgY29uc29sZS5sb2cocGFyYW1zKTtcclxuICAgIGlmIChwYXJhbXMudHlwZSA9PSBcInN1Y2Nlc3NcIiB8fCBwYXJhbXMudHlwZSA9PSBcInJlbW92ZWRcIikge1xyXG5cclxuICAgICAgdGhpcy5vcHRzLmltYWdlTGlzdCA9IFtdO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLm9wdHMuaW1hZ2VMaXN0ID0gcGFyYW1zLmZpbGVMaXN0Lm1hcCgoZmlsZTogYW55KSA9PiB7XHJcblxyXG4gICAgICAgICAgaWYgKGZpbGUudHlwZSA9PSAndmlkZW8vbXA0JyAmJiBmaWxlLnVpZCA9PT0gcGFyYW1zLmZpbGUudWlkKSB7XHJcbiAgICAgICAgICAgIGxldCB0aHVtYlVybCA9IHRoaXMuZ2V0RmlsZVR5ZUljb24oZmlsZS50eXBlLCBmaWxlLm5hbWUpO1xyXG4gICAgICAgICAgICBmaWxlLnRodW1iVXJsID0gdGh1bWJVcmwgPyB0aHVtYlVybCA6IGZpbGUudGh1bWJVcmw7XHJcbiAgICAgICAgICAgIGZpbGUudXJsID0gZmlsZS5vcmlnaW5GaWxlT2JqID8gYXRyX3N0YXRpY19kYXRhcy5PU1NfVVJMICsgZmlsZS5vcmlnaW5GaWxlT2JqWydrZXknXSA6IGZpbGVbJ3BhdGgnXTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiBmaWxlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LCA1MCk7XHJcbiAgICAgIGxldCBmaWxlVXJsczogYW55W10gPSBbXTtcclxuICAgICAgZm9yIChsZXQgZmlsZSBvZiBwYXJhbXMuZmlsZUxpc3QpIHtcclxuICAgICAgICBpZiAoZmlsZVtcImtleVwiXSAhPSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgIGZpbGVVcmxzLnB1c2goZmlsZVtcImtleVwiXSk7XHJcbiAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGZpbGUub3JpZ2luRmlsZU9iaikge1xyXG4gICAgICAgICAgbGV0IG9yaWdpbkZpbGVPYmo6IGFueSA9IGZpbGUub3JpZ2luRmlsZU9ialxyXG4gICAgICAgICAgaWYgKG9yaWdpbkZpbGVPYmpbXCJrZXlcIl0gIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIGZpbGVVcmxzLnB1c2gob3JpZ2luRmlsZU9ialtcImtleVwiXSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuYWZ0ZXJDaGFuZ2UuZW1pdCh7a2V5OiB0aGlzLm9wdHMua2V5LCB2YWx1ZXM6IGZpbGVVcmxzLmpvaW4oXCIsXCIpfSk7XHJcbiAgICAgIHRoaXMub3B0c0NoYW5nZS5lbWl0KHRoaXMub3B0cylcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0IGh0dHBTZXJ2aWNlKCk6IEh0dHBTZXJ2aWNlIHtcclxuICAgIHJldHVybiB0aGlzLmluamVjdG9yLmdldChIdHRwU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVQcmV2aWV3ID0gKGZpbGU6IE56VXBsb2FkRmlsZSkgPT4ge1xyXG4gICAgdGhpcy5wcmV2aWV3SW1hZ2UgPSBmaWxlLnVybCB8fCBmaWxlLnRodW1iVXJsO1xyXG4gICAgdGhpcy5wcmV2aWV3VmlzaWJsZSA9IHRydWU7XHJcbiAgfTtcclxuXHJcbiAgcmVtb3ZlID0gKGZpbGU6IE56VXBsb2FkRmlsZSkgPT4ge1xyXG4gICAgaWYgKCF0aGlzLmlzRWRpdCkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBjb25zb2xlLmxvZyhmaWxlKTtcclxuICAgIGlmICh0aGlzLm9wdHMgJiYgdGhpcy5vcHRzLnJlbW92ZUFjdGlvbikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGJlZm9yZVVwbG9hZCA9IChmaWxlOiBOelVwbG9hZEZpbGUsIGZpbGVMaXN0OiBOelVwbG9hZEZpbGVbXSk6YW55ID0+IHtcclxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxib29sZWFuPihvYnNlcnZlID0+IHtcclxuICAgICAgbGV0IGZpbGVOYW1lO1xyXG4gICAgICBpZiAodGhpcy5vcHRzLmtlZXBOYW1lKSB7XHJcbiAgICAgICAgZmlsZU5hbWUgPSBmaWxlLm5hbWU7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZmlsZU5hbWUgPSBUb29sc1V0aWwuZ2V0UmFuZG9tRmlsZU5hbWUoKSArIFwiLlwiICsgVG9vbHNVdGlsLmdldEZpbGVFeHQoZmlsZS5uYW1lKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLm9uQmVmb3JlVXBsb2FkLmVtaXQoe2NvZGU6ICdnZXRGaWxlJywgZGF0YToge2ZpbGU6IGZpbGUsIGZpbGVMaXN0OiBmaWxlTGlzdH19KVxyXG4gICAgICB0aGlzLmh0dHBTZXJ2aWNlLnBvc3QoYXRyX3N0YXRpY19kYXRhcy5PU1NfUE9MSUNZLCB7XHJcbiAgICAgICAgZGlyOiB0aGlzLm9wdHMudXBsb2FkRGlyLFxyXG4gICAgICAgIGZpbGVOYW1lOiBmaWxlTmFtZSxcclxuICAgICAgICAnc3VjY2Vzc19hY3Rpb25fc3RhdHVzJzogJzIwMCdcclxuICAgICAgfSwgVG9vbHNVdGlsLmdldEh0dHBPcHRpb25zKCkpLnN1YnNjcmliZShcclxuICAgICAgICByZXN1bHQgPT4ge1xyXG5cclxuICAgICAgICAgIGlmIChyZXN1bHQuc3RhdHVzID09IDIwMCkge1xyXG4gICAgICAgICAgICB0aGlzLnVwbG9hZERhdGFbZmlsZS51aWRdID0gcmVzdWx0LmRhdGE7XHJcbiAgICAgICAgICAgIG9ic2VydmUubmV4dCh0cnVlKTtcclxuICAgICAgICAgIH0gZWxzZVxyXG4gICAgICAgICAgICBvYnNlcnZlLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvciA9PiB7XHJcbiAgICAgICAgICBvYnNlcnZlLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICB9KVxyXG5cclxuICB9XHJcbiAgY3VzdG9tUmVxID0gKGl0ZW06IE56VXBsb2FkWEhSQXJncyk6YW55ID0+IHtcclxuICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XHJcbiAgICBsZXQgdXBsb2FkRGF0YSA9IHRoaXMudXBsb2FkRGF0YVtpdGVtLmZpbGUudWlkXTtcclxuICAgIGZvciAobGV0IGtleSBpbiB1cGxvYWREYXRhKSB7XHJcbiAgICAgIGlmIChrZXkgIT0gJ2hvc3QnKVxyXG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChrZXksIHVwbG9hZERhdGFba2V5XSlcclxuICAgIH1cclxuICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIGl0ZW0uZmlsZSBhcyBhbnkpO1xyXG4gICAgY29uc3QgcmVxID0gbmV3IEh0dHBSZXF1ZXN0KCdQT1NUJywgdXBsb2FkRGF0YS5ob3N0ISwgZm9ybURhdGEsIHtcclxuICAgICAgcmVwb3J0UHJvZ3Jlc3M6IHRydWVcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucmVxdWVzdChyZXEpLnN1YnNjcmliZShcclxuICAgICAgKGV2ZW50OiBIdHRwRXZlbnQ8YW55PikgPT4ge1xyXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSBIdHRwRXZlbnRUeXBlLlVwbG9hZFByb2dyZXNzKSB7XHJcbiAgICAgICAgICBpZiAoZXZlbnQudG90YWwhID4gMCkge1xyXG4gICAgICAgICAgICAoZXZlbnQgYXMgYW55KS5wZXJjZW50ID0gKGV2ZW50LmxvYWRlZCAvIGV2ZW50LnRvdGFsISkgKiAxMDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpdGVtLm9uUHJvZ3Jlc3MhKGV2ZW50LCBpdGVtLmZpbGUhKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSB7XHJcbiAgICAgICAgICBpdGVtLmZpbGVbXCJrZXlcIl0gPSB1cGxvYWREYXRhLmtleTtcclxuICAgICAgICAgIGl0ZW0ub25TdWNjZXNzIShldmVudC5ib2R5LCBpdGVtLmZpbGUhLCBldmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnIgPT4ge1xyXG4gICAgICAgIGl0ZW0ub25FcnJvciEoZXJyLCBpdGVtLmZpbGUhKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9O1xyXG5cclxuICBvcGVuQmFubmVyU2VxKHRwbENvbnRlbnQ6IGFueSwgdHBsRm9vdGVyOiBhbnkpIHtcclxuICAgIHRoaXMudHBsTW9kYWwgPSB0aGlzLm1vZGFsU2VydmljZS5jcmVhdGUoe1xyXG4gICAgICBuelRpdGxlOiBcIuS/ruaUueWbvueJh+mhuuW6j1wiLFxyXG4gICAgICBuekNvbnRlbnQ6IHRwbENvbnRlbnQsXHJcbiAgICAgIG56Rm9vdGVyOiB0cGxGb290ZXIsXHJcbiAgICAgIG56TWFza0Nsb3NhYmxlOiBmYWxzZSxcclxuICAgICAgbnpDbG9zYWJsZTogZmFsc2UsXHJcbiAgICAgIG56T25PazogKCkgPT4gY29uc29sZS5sb2coJ0NsaWNrIG9rJylcclxuICAgIH0pO1xyXG4gICAgY29uc29sZS5sb2codGhpcy5vcHRzLmltYWdlTGlzdCk7XHJcbiAgICB0aGlzLmNoYW5nZVZpc2libGUgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgZGVzdHJveVRwbE1vZGFsKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudHBsTW9kYWwpXHJcbiAgICAgIHRoaXMudHBsTW9kYWwuZGVzdHJveSgpO1xyXG4gIH1cclxuXHJcbiAgYXJyb3dVcChpbmRleDogYW55KSB7XHJcbiAgICBsZXQgaW1nID0gdGhpcy5vcHRzLmltYWdlTGlzdFtpbmRleF07XHJcbiAgICB0aGlzLm9wdHMuaW1hZ2VMaXN0W2luZGV4XSA9IHRoaXMub3B0cy5pbWFnZUxpc3RbaW5kZXggLSAxXTtcclxuICAgIHRoaXMub3B0cy5pbWFnZUxpc3RbaW5kZXggLSAxXSA9IGltZztcclxuICB9XHJcblxyXG4gIGFycm93RG93bihpbmRleDogYW55KSB7XHJcbiAgICBsZXQgaW1nID0gdGhpcy5vcHRzLmltYWdlTGlzdFtpbmRleF07XHJcbiAgICB0aGlzLm9wdHMuaW1hZ2VMaXN0W2luZGV4XSA9IHRoaXMub3B0cy5pbWFnZUxpc3RbaW5kZXggKyAxXTtcclxuICAgIHRoaXMub3B0cy5pbWFnZUxpc3RbaW5kZXggKyAxXSA9IGltZztcclxuICB9XHJcblxyXG4gIHNhdmVTZXEoKSB7XHJcbiAgICB0aGlzLmRlc3Ryb3lUcGxNb2RhbCgpO1xyXG4gICAgbGV0IGltZ3MgPSB0aGlzLm9wdHMuaW1hZ2VMaXN0O1xyXG4gICAgdGhpcy5vcHRzLmltYWdlTGlzdCA9IFtdO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMub3B0cy5pbWFnZUxpc3QgPSBpbWdzO1xyXG4gICAgICBjb25zb2xlLmxvZyh0aGlzLm9wdHMuaW1hZ2VMaXN0KTtcclxuICAgICAgbGV0IGZpbGVVcmxzOiBhbnkgPSBbXTtcclxuICAgICAgZm9yIChsZXQgZmlsZSBvZiB0aGlzLm9wdHMuaW1hZ2VMaXN0KSB7XHJcbiAgICAgICAgaWYgKGZpbGVbXCJrZXlcIl0gIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBmaWxlVXJscy5wdXNoKGZpbGVbXCJrZXlcIl0pO1xyXG4gICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChmaWxlLm9yaWdpbkZpbGVPYmogJiYgZmlsZS5vcmlnaW5GaWxlT2JqW1wia2V5XCJdICE9IHVuZGVmaW5lZClcclxuICAgICAgICAgIGZpbGVVcmxzLnB1c2goZmlsZS5vcmlnaW5GaWxlT2JqW1wia2V5XCJdKVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmFmdGVyQ2hhbmdlLmVtaXQoe2tleTogdGhpcy5vcHRzLmtleSwgdmFsdWVzOiBmaWxlVXJscy5qb2luKFwiLFwiKX0pO1xyXG4gICAgfSwgNTApXHJcblxyXG4gIH1cclxuXHJcbiAgZHJhZ251bWJlcihudW1lcjogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhudW1lcik7XHJcbiAgICBjb25zb2xlLmxvZygnb3InLCB0aGlzLm9wdHMuaW1hZ2VMaXN0KVxyXG4gICAgY29uc29sZS5sb2coJ25ldycsIG51bWVyKVxyXG4gICAgdGhpcy5zYXZlU2VxKCk7XHJcbiAgICAvLyB0aGlzLm9wdHMuaW1hZ2VMaXN0ID0gbnVtZXJcclxuICB9XHJcblxyXG4gIGRlbEltZyhudW1lcjogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhudW1lcik7XHJcbiAgICB0aGlzLm9wdHMuaW1hZ2VMaXN0ID0gdGhpcy5vcHRzLmltYWdlTGlzdC5maWx0ZXIoKHY6IGFueSwgaTogYW55KSA9PiBpICE9IG51bWVyKVxyXG4gICAgbGV0IGZpbGVVcmxzOiBhbnkgPSBbXTtcclxuICAgIGZvciAobGV0IGZpbGUgb2YgdGhpcy5vcHRzLmltYWdlTGlzdCkge1xyXG4gICAgICBpZiAoZmlsZVtcImtleVwiXSAhPSB1bmRlZmluZWQpIHtcclxuICAgICAgICBmaWxlVXJscy5wdXNoKGZpbGVbXCJrZXlcIl0pO1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChmaWxlLm9yaWdpbkZpbGVPYmogJiYgZmlsZS5vcmlnaW5GaWxlT2JqW1wia2V5XCJdICE9IHVuZGVmaW5lZClcclxuICAgICAgICBmaWxlVXJscy5wdXNoKGZpbGUub3JpZ2luRmlsZU9ialtcImtleVwiXSlcclxuICAgIH1cclxuICAgIHRoaXMuYWZ0ZXJDaGFuZ2UuZW1pdCh7a2V5OiB0aGlzLm9wdHMua2V5LCB2YWx1ZXM6IGZpbGVVcmxzLmpvaW4oXCIsXCIpfSk7XHJcbiAgfVxyXG5cclxuICBwcml2aWV3SW1nKGltZzogYW55KSB7XHJcbiAgICBsZXQgdXJsID0gVG9vbHNVdGlsLmdldE9zc1VybCh0aGlzLmdldEltZ1VybChpbWcpKVxyXG4gICAgY29uc29sZS5sb2codXJsKVxyXG4gICAgdGhpcy5uekltYWdlU2VydmljZS5wcmV2aWV3KFt7XHJcbiAgICAgIHNyYzogdXJsLFxyXG4gICAgICBhbHQ6ICduZy16b3JybydcclxuICAgIH1dLCB7bnpab29tOiAxLjUsIG56Um90YXRlOiAwfSk7XHJcbiAgfVxyXG5cclxuICBnZXRJbWdVcmwoaW1nOiBhbnkpIHtcclxuICAgIGlmIChpbWcub3JpZ2luRmlsZU9iaiAmJiBpbWcub3JpZ2luRmlsZU9iai5rZXkpIHtcclxuICAgICAgcmV0dXJuIGltZy5vcmlnaW5GaWxlT2JqLmtleVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIChpbWcudXJsIHx8IGltZy50aHVtYlVybClcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNsZWFyZml4XCI+XHJcbiAgPG56LXVwbG9hZFxyXG4gICAgKm5nSWY9XCJvcHRzICYmIG9wdHM/LnVwbG9hZFR5cGUgPT0gJ2RyYWcnXCJcclxuICAgIG56VHlwZT1cImRyYWdcIlxyXG4gICAgbnpBY3Rpb249XCJcIlxyXG4gICAgW256QmVmb3JlVXBsb2FkXT1cImJlZm9yZVVwbG9hZFwiXHJcbiAgICBbbnpSZW1vdmVdPVwicmVtb3ZlXCJcclxuICAgIFtuelNpemVdPVwib3B0cy5uelNpemUgfHwgMFwiXHJcbiAgICBbbnpDdXN0b21SZXF1ZXN0XT1cImN1c3RvbVJlcVwiXHJcbiAgICAobnpDaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICBbbnpUeXBlXT1cIm9wdHM/LnVwbG9hZFR5cGVcIlxyXG4gICAgW256QWNjZXB0XT1cIm9wdHMubnpGaWxlVHlwZVwiXHJcbiAgICBbbnpMaW1pdF09XCInMSdcIlxyXG4gID5cclxuICAgIDxwIGNsYXNzPVwiYW50LXVwbG9hZC1kcmFnLWljb25cIj5cclxuICAgICAgPGkgbnotaWNvbiBuelR5cGU9XCJpbmJveFwiPjwvaT5cclxuICAgIDwvcD5cclxuICAgIDxwIGNsYXNzPVwiYW50LXVwbG9hZC10ZXh0XCI+5Y2V5Ye75oiW5ouW5Yqo5paH5Lu25Yiw5q2k5Yy65Z+f5LiK5LygPC9wPlxyXG4gIDwvbnotdXBsb2FkPlxyXG4gIDxuei11cGxvYWRcclxuICAgICpuZ0lmPVwib3B0cyAmJiBvcHRzPy51cGxvYWRUeXBlID09ICdidXR0b24nXCJcclxuICAgIG56VHlwZT1cImRyYWdcIlxyXG4gICAgbnpBY3Rpb249XCJcIlxyXG4gICAgW256U2l6ZV09XCJvcHRzLm56U2l6ZSB8fCAwXCJcclxuICAgIFtuelNob3dVcGxvYWRMaXN0XT1cInNob3dVcGxvYWRMaXN0XCJcclxuICAgIFtuekJlZm9yZVVwbG9hZF09XCJiZWZvcmVVcGxvYWRcIlxyXG4gICAgW256UmVtb3ZlXT1cInJlbW92ZVwiXHJcbiAgICBbbnpDdXN0b21SZXF1ZXN0XT1cImN1c3RvbVJlcVwiXHJcbiAgICAobnpDaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICBbbnpUeXBlXT1cIm9wdHM/LnVwbG9hZFR5cGVcIlxyXG4gICAgW256QWNjZXB0XT1cIm9wdHMubnpGaWxlVHlwZVwiXHJcbiAgICBbbnpMaW1pdF09XCInMSdcIlxyXG4gID5cclxuICAgIDxidXR0b24gbnotYnV0dG9uIG56U2l6ZT1cInNtYWxsXCI+PGkgbnotaWNvbiBuelR5cGU9XCJ1cGxvYWRcIiBzdHlsZT1cImZvbnQtc2l6ZTogMTZweFwiPjwvaT48c3Bhbj4ge3tvcHRzLmJ0bk5hbWV9fTwvc3Bhbj48L2J1dHRvbj5cclxuICA8L256LXVwbG9hZD5cclxuICA8bnotdXBsb2FkXHJcbiAgICAqbmdJZj1cIm9wdHMgJiYgIW9wdHM/LnVwbG9hZFR5cGUgXCJcclxuICAgIG56QWN0aW9uPVwiXCJcclxuICAgIG56TGlzdFR5cGU9XCJwaWN0dXJlLWNhcmRcIlxyXG4gICAgW256U2l6ZV09XCJvcHRzLm56U2l6ZSB8fCAwXCJcclxuICAgIFsobnpGaWxlTGlzdCldPVwib3B0cy5pbWFnZUxpc3RcIlxyXG4gICAgW256U2hvd0J1dHRvbl09XCJvcHRzLmltYWdlTGlzdC5sZW5ndGggPCBvcHRzLmxpbWl0XCJcclxuICAgIFtuelNob3dVcGxvYWRMaXN0XT1cInNob3dVcGxvYWRMaXN0XCJcclxuICAgIFtuelByZXZpZXddPVwiaGFuZGxlUHJldmlld1wiXHJcbiAgICBbbnpSZW1vdmVdPVwicmVtb3ZlXCJcclxuICAgIFtuekJlZm9yZVVwbG9hZF09XCJiZWZvcmVVcGxvYWRcIlxyXG4gICAgW256Q3VzdG9tUmVxdWVzdF09XCJjdXN0b21SZXFcIlxyXG4gICAgKG56Q2hhbmdlKT1cIm9uQ2hhbmdlKCRldmVudClcIlxyXG4gICAgW256VHlwZV09XCJvcHRzPy51cGxvYWRUeXBlXCJcclxuICAgIFtuekFjY2VwdF09XCJvcHRzLm56RmlsZVR5cGVcIlxyXG4gICAgW256RGlzYWJsZWRdPVwiIWlzRWRpdFwiXHJcbiAgICBbbnpMaW1pdF09XCInMSdcIlxyXG4gICAgW256RmlsZUxpc3RSZW5kZXJdPVwib3B0cyAmJiBpc0VkaXQgJiYgYWxsb3dDaGFuZ1NlcSAmJiBvcHRzLmltYWdlTGlzdC5sZW5ndGggPiAwID8gZmlsZUxpc3RUbXAgOiBudWxsXCJcclxuICA+XHJcbiAgICA8aSBuei1pY29uIG56VHlwZT1cInBsdXNcIj48L2k+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYW50LXVwbG9hZC10ZXh0XCI+e3tvcHRzLmJ0bk5hbWU/b3B0cy5idG5OYW1lOifkuIrkvKDlm77niYcnfX08L2Rpdj5cclxuICA8L256LXVwbG9hZD5cclxuICA8IS0tIDxhICpuZ0lmPVwiYWxsb3dDaGFuZ1NlcSAmJiBpc0VkaXQgJiYgb3B0cy5pbWFnZUxpc3QubGVuZ3RoID4gMVwiIChjbGljayk9XCJvcGVuQmFubmVyU2VxKGltZ3NDb250ZW50LCB0cGxGb290ZXIpXCJcclxuICAgICAgc3R5bGU9XCJtYXJnaW4tbGVmdDogMTBweDsgXCJcclxuICAgPjxpIG56LWljb24gbnpUeXBlPVwicGx1c1wiIG56VGhlbWU9XCJvdXRsaW5lXCIgc3R5bGU9XCJjb2xvcjogIzE4OTBmZjsgZm9udC1zaXplOiAxNXB4XCI+PC9pPuiwg+aVtOWbvueJh+mhuuW6jzwvYT4tLT5cclxuICA8bnotbW9kYWxcclxuICAgIFtuelZpc2libGVdPVwicHJldmlld1Zpc2libGVcIlxyXG4gICAgW256Q29udGVudF09XCJtb2RhbENvbnRlbnRcIlxyXG4gICAgW256Rm9vdGVyXT1cIm51bGxcIlxyXG4gICAgKG56T25DYW5jZWwpPVwicHJldmlld1Zpc2libGUgPSBmYWxzZVwiXHJcbiAgPlxyXG4gICAgPG5nLXRlbXBsYXRlICNtb2RhbENvbnRlbnQ+XHJcbiAgICAgIDxpbWcgKm5nSWY9XCIhcHJldmlld0ltYWdlLmVuZHNXaXRoKCcubXA0JylcIiBbc3JjXT1cInByZXZpZXdJbWFnZVwiIFtuZ1N0eWxlXT1cInsgd2lkdGg6ICcxMDAlJyB9XCIvPlxyXG4gICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDEwMCU7bWFyZ2luLXRvcDogMTVweFwiPlxyXG4gICAgICAgIDxhcHAtdmlkZW8gKm5nSWY9XCJwcmV2aWV3SW1hZ2UuZW5kc1dpdGgoJy5tcDQnKVwiIFt1cmxdPVwicHJldmlld0ltYWdlXCI+PC9hcHAtdmlkZW8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICA8L256LW1vZGFsPlxyXG4gIDxuZy10ZW1wbGF0ZSAjaW1nc0NvbnRlbnQ+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0cyAmJiBvcHRzLmltYWdlTGlzdFwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpbWdzIG9mIG9wdHMuaW1hZ2VMaXN0O2xldCBpID0gaW5kZXhcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW1nLWRpdlwiPlxyXG4gICAgICAgICAgPGltZyBbc3JjXT1cImltZ3MudXJsIHx8IGltZ3MudGh1bWJVcmxcIiBbbmdTdHlsZV09XCJ7IHdpZHRoOiAnMTAwcHgnLGRpc3BsYXk6ICdpbmxpbmUtYmxvY2snLCBtYXJnaW46JzEwcHgnIH1cIi8+XHJcbiAgICAgICAgICA8ZGl2IHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAyMHB4XCI+XHJcbiAgICAgICAgICAgIDxhIHRpdGxlPVwi5LiK56e7XCIgKm5nSWY9XCIgaSA+IDBcIiBzdHlsZT1cImRpc3BsYXk6IGJsb2NrO1wiIChjbGljayk9XCJhcnJvd1VwKGkpXCI+PGkgbnotaWNvbiBuelR5cGU9XCJhcnJvdy11cFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnpUaGVtZT1cIm91dGxpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiY29sb3I6ICMxODkwZmY7IGZvbnQtc2l6ZTogMTVweDtcIj48L2k+XHJcbiAgICAgICAgICAgICAg5LiK56e7PC9hPlxyXG4gICAgICAgICAgICA8YSB0aXRsZT1cIuS4i+enu1wiICpuZ0lmPVwiIGkgPCBvcHRzLmltYWdlTGlzdC5sZW5ndGggLSAxXCIgKGNsaWNrKT1cImFycm93RG93bihpKVwiPjxpIG56LWljb24gbnpUeXBlPVwiYXJyb3ctZG93blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuelRoZW1lPVwib3V0bGluZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImNvbG9yOiAjMTg5MGZmOyBmb250LXNpemU6IDE1cHhcIj48L2k+XHJcbiAgICAgICAgICAgICAg5LiL56e7PC9hPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgPCEtLSAgPC9uei1tb2RhbD4tLT5cclxuPC9kaXY+XHJcbjxuZy10ZW1wbGF0ZSAjZmlsZUxpc3RUbXA+XHJcbiAgPGRpdiBkcmFndWxhPVwiZHJhZ3VsYUJhZ1wiIFsoZHJhZ3VsYU1vZGVsKV09XCJvcHRzLmltYWdlTGlzdFwiIChkcmFndWxhTW9kZWxDaGFuZ2UpPVwiZHJhZ251bWJlcigkZXZlbnQpXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpbWdzIG9mIG9wdHMuaW1hZ2VMaXN0O2xldCBpID0gaW5kZXhcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImltZy1kaXYgaW1nLXByZVwiIHN0eWxlPVwiXCI+XHJcbiAgICAgICAgPGltZyBbc3JjXT1cImdldEltZ1VybChpbWdzKSB8b3NzSW1nXCIgW25nU3R5bGVdPVwieyB3aWR0aDogJzEwMHB4JyxkaXNwbGF5OiAnaW5saW5lLWJsb2NrJywgbWFyZ2luOicxMHB4JyB9XCIvPlxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8c3BhbiAoY2xpY2spPVwicHJpdmlld0ltZyhpbWdzKVwiIG56LWljb24gbnpUeXBlPVwiZXllXCIgbnpUaGVtZT1cIm91dGxpbmVcIj48L3NwYW4+XHJcbiAgICAgICAgICA8c3BhbiAoY2xpY2spPVwiZGVsSW1nKGkpXCIgbnotaWNvbiBuelR5cGU9XCJkZWxldGVcIiBuelRoZW1lPVwib3V0bGluZVwiPjwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuXHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjdHBsRm9vdGVyPlxyXG4gIDxidXR0b24gbnotYnV0dG9uIG56VHlwZT1cImRlZmF1bHRcIiAoY2xpY2spPVwiZGVzdHJveVRwbE1vZGFsKClcIj5cclxuICAgIOWPlua2iFxyXG4gIDwvYnV0dG9uPlxyXG4gIDxidXR0b24gbnotYnV0dG9uIG56VHlwZT1cInByaW1hcnlcIiAoY2xpY2spPVwic2F2ZVNlcSgpXCI+XHJcbiAgICDkv53lrZjpobrluo9cclxuICA8L2J1dHRvbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcblxyXG4iXX0=
|
|
@@ -4,13 +4,13 @@ import * as i1 from "@videogular/ngx-videogular/core";
|
|
|
4
4
|
import * as i2 from "@videogular/ngx-videogular/controls";
|
|
5
5
|
export class VideoComponent {
|
|
6
6
|
constructor() { }
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
8
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VideoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: VideoComponent, selector: "app-video", inputs: { url: "url" }, ngImport: i0, template: "<vg-player>\r\n <vg-controls vgFor=\"__VG__VIDEO__\" >\r\n <vg-play-pause></vg-play-pause>\r\n <vg-scrub-bar>\r\n <vg-scrub-bar-current-time></vg-scrub-bar-current-time>\r\n <vg-scrub-bar-buffering-time></vg-scrub-bar-buffering-time>\r\n </vg-scrub-bar>\r\n <vg-time-display vgProperty=\"left\" vgFormat=\"mm:ss\"></vg-time-display>\r\n\r\n <!-- <vg-volume></vg-volume> -->\r\n <vg-mute></vg-mute>\r\n\r\n <vg-fullscreen></vg-fullscreen>\r\n </vg-controls>\r\n\r\n <video\r\n id=\"__VG__VIDEO__\"\r\n #media\r\n [vgMedia]=\"$any(media)\"\r\n preload=\"auto\"\r\n style=\"width: 100%;\"\r\n >\r\n <source [src]=\"url\" type=\"video/mp4\">\r\n </video>\r\n</vg-player>\r\n", styles: [":host{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.VgMediaDirective, selector: "[vgMedia]", inputs: ["vgMedia", "vgMaster"] }, { kind: "component", type: i1.VgPlayerComponent, selector: "vg-player", outputs: ["onPlayerReady", "onMediaReady"] }, { kind: "component", type: i2.VgControlsComponent, selector: "vg-controls", inputs: ["vgFor", "vgAutohide", "vgAutohideTime"] }, { kind: "component", type: i2.VgTimeDisplayComponent, selector: "vg-time-display", inputs: ["vgFor", "vgProperty", "vgFormat"] }, { kind: "component", type: i2.VgScrubBarComponent, selector: "vg-scrub-bar", inputs: ["vgFor", "vgSlider"] }, { kind: "component", type: i2.VgPlayPauseComponent, selector: "vg-play-pause", inputs: ["vgFor"] }, { kind: "component", type: i2.VgMuteComponent, selector: "vg-mute", inputs: ["vgFor"] }, { kind: "component", type: i2.VgFullscreenComponent, selector: "vg-fullscreen" }, { kind: "component", type: i2.VgScrubBarBufferingTimeComponent, selector: "vg-scrub-bar-buffering-time", inputs: ["vgFor"] }, { kind: "component", type: i2.VgScrubBarCurrentTimeComponent, selector: "vg-scrub-bar-current-time", inputs: ["vgFor", "vgSlider"] }] }); }
|
|
9
9
|
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VideoComponent, decorators: [{
|
|
11
11
|
type: Component,
|
|
12
12
|
args: [{ selector: 'app-video', template: "<vg-player>\r\n <vg-controls vgFor=\"__VG__VIDEO__\" >\r\n <vg-play-pause></vg-play-pause>\r\n <vg-scrub-bar>\r\n <vg-scrub-bar-current-time></vg-scrub-bar-current-time>\r\n <vg-scrub-bar-buffering-time></vg-scrub-bar-buffering-time>\r\n </vg-scrub-bar>\r\n <vg-time-display vgProperty=\"left\" vgFormat=\"mm:ss\"></vg-time-display>\r\n\r\n <!-- <vg-volume></vg-volume> -->\r\n <vg-mute></vg-mute>\r\n\r\n <vg-fullscreen></vg-fullscreen>\r\n </vg-controls>\r\n\r\n <video\r\n id=\"__VG__VIDEO__\"\r\n #media\r\n [vgMedia]=\"$any(media)\"\r\n preload=\"auto\"\r\n style=\"width: 100%;\"\r\n >\r\n <source [src]=\"url\" type=\"video/mp4\">\r\n </video>\r\n</vg-player>\r\n", styles: [":host{width:100%}\n"] }]
|
|
13
13
|
}], ctorParameters: () => [], propDecorators: { url: [{
|
|
14
14
|
type: Input
|
|
15
15
|
}] } });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlkZW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC92aWRlby92aWRlby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3ZpZGVvL3ZpZGVvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBT2pELE1BQU0sT0FBTyxjQUFjO0lBSXpCLGdCQUFnQixDQUFDOytHQUpOLGNBQWM7bUdBQWQsY0FBYyx5RUNQM0Isd3RCQXlCQTs7NEZEbEJhLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0UsV0FBVzt3REFNWixHQUFHO3NCQUFYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC12aWRlbycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3ZpZGVvLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi92aWRlby5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWaWRlb0NvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIHVybDogYW55O1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBcclxufSIsIjx2Zy1wbGF5ZXI+XHJcbiAgPHZnLWNvbnRyb2xzIHZnRm9yPVwiX19WR19fVklERU9fX1wiID5cclxuICAgIDx2Zy1wbGF5LXBhdXNlPjwvdmctcGxheS1wYXVzZT5cclxuICAgIDx2Zy1zY3J1Yi1iYXI+XHJcbiAgICAgIDx2Zy1zY3J1Yi1iYXItY3VycmVudC10aW1lPjwvdmctc2NydWItYmFyLWN1cnJlbnQtdGltZT5cclxuICAgICAgPHZnLXNjcnViLWJhci1idWZmZXJpbmctdGltZT48L3ZnLXNjcnViLWJhci1idWZmZXJpbmctdGltZT5cclxuICAgIDwvdmctc2NydWItYmFyPlxyXG4gICAgPHZnLXRpbWUtZGlzcGxheSB2Z1Byb3BlcnR5PVwibGVmdFwiIHZnRm9ybWF0PVwibW06c3NcIj48L3ZnLXRpbWUtZGlzcGxheT5cclxuXHJcbiAgICA8IS0tIDx2Zy12b2x1bWU+PC92Zy12b2x1bWU+IC0tPlxyXG4gICAgPHZnLW11dGU+PC92Zy1tdXRlPlxyXG5cclxuICAgIDx2Zy1mdWxsc2NyZWVuPjwvdmctZnVsbHNjcmVlbj5cclxuICA8L3ZnLWNvbnRyb2xzPlxyXG5cclxuICA8dmlkZW9cclxuICAgIGlkPVwiX19WR19fVklERU9fX1wiXHJcbiAgICAjbWVkaWFcclxuICAgIFt2Z01lZGlhXT1cIiRhbnkobWVkaWEpXCJcclxuICAgIHByZWxvYWQ9XCJhdXRvXCJcclxuICAgIHN0eWxlPVwid2lkdGg6IDEwMCU7XCJcclxuICAgID5cclxuICAgIDxzb3VyY2UgW3NyY109XCJ1cmxcIiB0eXBlPVwidmlkZW8vbXA0XCI+XHJcbiAgPC92aWRlbz5cclxuPC92Zy1wbGF5ZXI+XHJcbiJdfQ==
|
|
@@ -163,10 +163,10 @@ export class ViewFormComponent {
|
|
|
163
163
|
}
|
|
164
164
|
return imgs.split(',');
|
|
165
165
|
}
|
|
166
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
167
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
166
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ViewFormComponent, deps: [{ token: i0.Injector }, { token: LOCALE_ID }, { token: i1.HttpService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
167
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ViewFormComponent, selector: "atr-view-form", inputs: { formOpts: "formOpts", atrForm: "atrForm", dicts: "dicts", title: "title", items: "items" }, ngImport: i0, template: "<nz-descriptions nzBordered [nzColon]=\"true\" [nzColumn]=\"24\" [nzTitle]=\"title\">\r\n <ng-container *ngFor=\"let item of formOpts.items\">\r\n <ng-container *ngIf=\"!item.isHidden\">\r\n <div class=\"form-title\" *ngIf=\"item.type == 'title'\">\r\n {{item.label}}\r\n </div>\r\n <nz-descriptions-item [nzTitle]=\"item.label\" [ngSwitch]=\"item.type\"\r\n *ngIf=\"isShow(item.isHidden,item.operator)\"\r\n [nzSpan]=\"item.span || 6\">\r\n <ng-container *ngSwitchCase=\"'radio'\">\r\n <ng-container *ngFor=\"let o of item.dictList\">\r\n <label *ngIf=\"o.value == atrForm.value[item.key]\">{{o.label}}</label>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'treeSelect'\">\r\n <nz-tree-select\r\n [nzNodes]=\"item.treeList\"\r\n nzShowSearch=\"true\"\r\n nzHideUnMatched=\"true\"\r\n [(ngModel)]=\"atrForm.value[item.key]\"\r\n [nzDisabled]=\"true\"\r\n >\r\n </nz-tree-select>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'select'\">\r\n {{getSelectLabel(atrForm.value[item.key],dicts[item.dictCode])}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'selectCus'\">\r\n {{getSelectLabel(atrForm.value[item.key],item.dictList)}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'selectc'\">\r\n {{getSelectCLabel(atrForm.value[item.key],item.dictList,'value','label')}}\r\n<!-- <nz-select-->\r\n<!-- [nzDisabled]=\"true\"-->\r\n<!-- [(ngModel)]=\"atrForm.value[item.key]\"-->\r\n<!-- >-->\r\n<!-- <nz-option *ngFor=\"let o of item.dictList\" [nzLabel]=\"o.label\"-->\r\n<!-- [nzValue]=\"o.value\"></nz-option>-->\r\n<!-- </nz-select>-->\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'sceneUser'\">\r\n <nz-select\r\n [nzDisabled]=\"true\"\r\n [(ngModel)]=\"atrForm.value[item.key]\"\r\n >\r\n <nz-option *ngFor=\"let o of item.dictList\" [nzLabel]=\"o.title\"\r\n [nzValue]=\"o.key\"></nz-option>\r\n </nz-select>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchDefault>\r\n {{atrForm.value[item.key]}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n {{atrForm.value[item.key] | date:(item.dateFormat || 'yyyy-MM-dd')}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'dateTime'\">\r\n {{atrForm.value[item.key] | date:(item.dateFormat || 'yyyy-MM-dd 00:00:00')}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'cascader'\">\r\n <ng-container *ngFor=\"let data of atrForm.value[item.key] ;let i = index\">\r\n {{i>0?\"/\":\"\"}}{{data.lable}}\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'tags'\">\r\n {{getTagLabel(atrForm.value[item.key], 'name')}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'image'\">\r\n <ng-container *ngFor=\"let img of getImgs(atrForm.value[item.key])\">\r\n <div>\r\n <img *ngIf=\"!img.endsWith('.mp4')\" nz-image style=\"max-width: 200px;max-height: 200px\" [nzSrc]=\"img | ossImg\">\r\n <app-video *ngIf=\"img.endsWith('.mp4')\" style=\"max-width: 200px;max-height: 200px\" [url]=\"img | ossImg\"></app-video>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'rate'\">\r\n <nz-rate [nzDisabled]=\"true\"\r\n [(ngModel)]=\"atrForm.value[item.key]\"></nz-rate>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'editor'\">\r\n <div>\r\n <!-- <app-quill-editor [(ngModel)]=\"atrForm.value[item.key]\" style=\"width: 60%\" [readOnly]=\"true\"\r\n [styles]=\"{height:item.height > 0 ? item.height + 'px' : '250px'}\"></app-quill-editor> -->\r\n <quill-view [content]=\"atrForm.value[item.key]\" style=\"width: 60%\" theme=\"snow\"></quill-view>\r\n\r\n </div>\r\n </ng-container>\r\n\r\n </nz-descriptions-item>\r\n </ng-container>\r\n\r\n </ng-container>\r\n\r\n</nz-descriptions>\r\n", styles: [":host img{max-width:200px;max-height:200px}:host .form-title{height:50px;line-height:50px;font-weight:500;font-size:20px;border-bottom:1px solid #e8e8e8;border-radius:4px 4px 0 0;margin-bottom:14px;margin-top:11px}:host ::ng-deep .ant-descriptions-header{display:flex;align-items:center;margin-bottom:0;line-height:50px;height:50px;padding-left:10px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.NzDescriptionsComponent, selector: "nz-descriptions", inputs: ["nzBordered", "nzLayout", "nzColumn", "nzSize", "nzTitle", "nzExtra", "nzColon"], exportAs: ["nzDescriptions"] }, { kind: "component", type: i4.NzDescriptionsItemComponent, selector: "nz-descriptions-item", inputs: ["nzSpan", "nzTitle"], exportAs: ["nzDescriptionsItem"] }, { kind: "component", type: i5.NzRateComponent, selector: "nz-rate", inputs: ["nzAllowClear", "nzAllowHalf", "nzDisabled", "nzAutoFocus", "nzCharacter", "nzCount", "nzTooltips"], outputs: ["nzOnBlur", "nzOnFocus", "nzOnHoverChange", "nzOnKeyDown"], exportAs: ["nzRate"] }, { kind: "component", type: i6.NzOptionComponent, selector: "nz-option", inputs: ["nzTitle", "nzLabel", "nzValue", "nzKey", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i6.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus"], exportAs: ["nzSelect"] }, { kind: "component", type: i7.NzTreeSelectComponent, selector: "nz-tree-select", inputs: ["nzId", "nzAllowClear", "nzShowExpand", "nzShowLine", "nzDropdownMatchSelectWidth", "nzCheckable", "nzHideUnMatched", "nzShowIcon", "nzShowSearch", "nzDisabled", "nzAsyncData", "nzMultiple", "nzDefaultExpandAll", "nzCheckStrictly", "nzVirtualItemSize", "nzVirtualMaxBufferPx", "nzVirtualMinBufferPx", "nzVirtualHeight", "nzExpandedIcon", "nzNotFoundContent", "nzNodes", "nzOpen", "nzSize", "nzPlaceHolder", "nzDropdownStyle", "nzDropdownClassName", "nzBackdrop", "nzStatus", "nzPlacement", "nzExpandedKeys", "nzDisplayWith", "nzMaxTagCount", "nzMaxTagPlaceholder", "nzTreeTemplate"], outputs: ["nzOpenChange", "nzCleared", "nzRemoved", "nzExpandChange", "nzTreeClick", "nzTreeCheckBoxChange"], exportAs: ["nzTreeSelect"] }, { kind: "directive", type: i8.NzImageDirective, selector: "img[nz-image]", inputs: ["nzSrc", "nzSrcset", "nzDisablePreview", "nzFallback", "nzPlaceholder", "nzScaleStep"], exportAs: ["nzImage"] }, { kind: "component", type: i9.QuillViewComponent, selector: "quill-view", inputs: ["format", "theme", "modules", "debug", "formats", "sanitize", "beforeRender", "strict", "content", "customModules", "customOptions"], outputs: ["onEditorCreated"] }, { kind: "component", type: i10.VideoComponent, selector: "app-video", inputs: ["url"] }, { kind: "pipe", type: i11.OssImgPipe, name: "ossImg" }, { kind: "pipe", type: i2.DatePipe, name: "date" }] }); }
|
|
168
168
|
}
|
|
169
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
169
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ViewFormComponent, decorators: [{
|
|
170
170
|
type: Component,
|
|
171
171
|
args: [{ selector: 'atr-view-form', template: "<nz-descriptions nzBordered [nzColon]=\"true\" [nzColumn]=\"24\" [nzTitle]=\"title\">\r\n <ng-container *ngFor=\"let item of formOpts.items\">\r\n <ng-container *ngIf=\"!item.isHidden\">\r\n <div class=\"form-title\" *ngIf=\"item.type == 'title'\">\r\n {{item.label}}\r\n </div>\r\n <nz-descriptions-item [nzTitle]=\"item.label\" [ngSwitch]=\"item.type\"\r\n *ngIf=\"isShow(item.isHidden,item.operator)\"\r\n [nzSpan]=\"item.span || 6\">\r\n <ng-container *ngSwitchCase=\"'radio'\">\r\n <ng-container *ngFor=\"let o of item.dictList\">\r\n <label *ngIf=\"o.value == atrForm.value[item.key]\">{{o.label}}</label>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'treeSelect'\">\r\n <nz-tree-select\r\n [nzNodes]=\"item.treeList\"\r\n nzShowSearch=\"true\"\r\n nzHideUnMatched=\"true\"\r\n [(ngModel)]=\"atrForm.value[item.key]\"\r\n [nzDisabled]=\"true\"\r\n >\r\n </nz-tree-select>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'select'\">\r\n {{getSelectLabel(atrForm.value[item.key],dicts[item.dictCode])}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'selectCus'\">\r\n {{getSelectLabel(atrForm.value[item.key],item.dictList)}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'selectc'\">\r\n {{getSelectCLabel(atrForm.value[item.key],item.dictList,'value','label')}}\r\n<!-- <nz-select-->\r\n<!-- [nzDisabled]=\"true\"-->\r\n<!-- [(ngModel)]=\"atrForm.value[item.key]\"-->\r\n<!-- >-->\r\n<!-- <nz-option *ngFor=\"let o of item.dictList\" [nzLabel]=\"o.label\"-->\r\n<!-- [nzValue]=\"o.value\"></nz-option>-->\r\n<!-- </nz-select>-->\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'sceneUser'\">\r\n <nz-select\r\n [nzDisabled]=\"true\"\r\n [(ngModel)]=\"atrForm.value[item.key]\"\r\n >\r\n <nz-option *ngFor=\"let o of item.dictList\" [nzLabel]=\"o.title\"\r\n [nzValue]=\"o.key\"></nz-option>\r\n </nz-select>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchDefault>\r\n {{atrForm.value[item.key]}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n {{atrForm.value[item.key] | date:(item.dateFormat || 'yyyy-MM-dd')}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'dateTime'\">\r\n {{atrForm.value[item.key] | date:(item.dateFormat || 'yyyy-MM-dd 00:00:00')}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'cascader'\">\r\n <ng-container *ngFor=\"let data of atrForm.value[item.key] ;let i = index\">\r\n {{i>0?\"/\":\"\"}}{{data.lable}}\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'tags'\">\r\n {{getTagLabel(atrForm.value[item.key], 'name')}}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'image'\">\r\n <ng-container *ngFor=\"let img of getImgs(atrForm.value[item.key])\">\r\n <div>\r\n <img *ngIf=\"!img.endsWith('.mp4')\" nz-image style=\"max-width: 200px;max-height: 200px\" [nzSrc]=\"img | ossImg\">\r\n <app-video *ngIf=\"img.endsWith('.mp4')\" style=\"max-width: 200px;max-height: 200px\" [url]=\"img | ossImg\"></app-video>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'rate'\">\r\n <nz-rate [nzDisabled]=\"true\"\r\n [(ngModel)]=\"atrForm.value[item.key]\"></nz-rate>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'editor'\">\r\n <div>\r\n <!-- <app-quill-editor [(ngModel)]=\"atrForm.value[item.key]\" style=\"width: 60%\" [readOnly]=\"true\"\r\n [styles]=\"{height:item.height > 0 ? item.height + 'px' : '250px'}\"></app-quill-editor> -->\r\n <quill-view [content]=\"atrForm.value[item.key]\" style=\"width: 60%\" theme=\"snow\"></quill-view>\r\n\r\n </div>\r\n </ng-container>\r\n\r\n </nz-descriptions-item>\r\n </ng-container>\r\n\r\n </ng-container>\r\n\r\n</nz-descriptions>\r\n", styles: [":host img{max-width:200px;max-height:200px}:host .form-title{height:50px;line-height:50px;font-weight:500;font-size:20px;border-bottom:1px solid #e8e8e8;border-radius:4px 4px 0 0;margin-bottom:14px;margin-top:11px}:host ::ng-deep .ant-descriptions-header{display:flex;align-items:center;margin-bottom:0;line-height:50px;height:50px;padding-left:10px}\n"] }]
|
|
172
172
|
}], ctorParameters: () => [{ type: i0.Injector }, { type: undefined, decorators: [{
|
|
@@ -183,4 +183,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImpor
|
|
|
183
183
|
}], items: [{
|
|
184
184
|
type: Input
|
|
185
185
|
}] } });
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvdmlldy1mb3JtL3ZpZXctZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3ZpZXctZm9ybS92aWV3LWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSxLQUFLLEVBQVksTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUlwRixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFPeEQsTUFBTSxPQUFPLGlCQUFpQjtJQU01QixJQUFhLEtBQUssQ0FBQyxLQUFVO1FBQzNCLElBQUksQ0FBQyxRQUFRLEdBQUc7WUFDZCxJQUFJLEVBQUUsTUFBTTtZQUNaLEtBQUssRUFBRSxLQUFLO1NBQ2IsQ0FBQztJQUNKLENBQUM7SUFJRCxZQUFzQixRQUFrQixFQUE2QixNQUFjLEVBQVUsV0FBd0I7UUFBL0YsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUE2QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFaNUcsVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUNoQixVQUFLLEdBQVEsRUFBRSxDQUFDO1FBU3pCLFdBQU0sR0FBUSxFQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFDLENBQUE7SUFHckMsQ0FBQztJQUVELFFBQVE7UUFDTixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQTtZQUN6QixPQUFPLENBQUMsR0FBRyxDQUFD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QUM3QiwwQkFBMEI7SUFDMUIsd0VBQXdFO0lBQ3hFLFVBQVU7SUFDVixnQkFBZ0I7SUFDaEIsUUFBUTtJQUVSLE9BQU87SUFDUCxtQkFBbUI7SUFDbkIsSUFBSTtJQUVKLE9BQU8sQ0FBQyxJQUFTO1FBQ2YsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDeEIsQ0FBQzs4R0FoS1UsaUJBQWlCLDBDQWVzQixTQUFTO2tHQWZoRCxpQkFBaUIsMkpDWDlCLDZ0S0ErRkE7OzJGRHBGYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UsZUFBZTs7MEJBbUJrQixNQUFNOzJCQUFDLFNBQVM7bUVBZGxELFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRU8sS0FBSztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkluaXQsIElucHV0LCBJbmplY3RvciwgSW5qZWN0LCBMT0NBTEVfSUR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7QXRyRm9ybU9wdH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvYmFzZS9hdHItY29tbW9uXCI7XHJcbmltcG9ydCB7SHR0cFNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL2h0dHAuc2VydmljZVwiO1xyXG5pbXBvcnQge1Rvb2xzVXRpbH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvdXRpbHMvVG9vbHNVdGlsXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2F0ci12aWV3LWZvcm0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92aWV3LWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3ZpZXctZm9ybS5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWaWV3Rm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZm9ybU9wdHM6IEF0ckZvcm1PcHQgfCBhbnk7XHJcbiAgQElucHV0KCkgYXRyRm9ybTogVW50eXBlZEZvcm1Hcm91cCB8IGFueTtcclxuICBASW5wdXQoKSBkaWN0czogYW55ID0ge307XHJcbiAgQElucHV0KCkgdGl0bGU6IGFueSA9ICcnO1xyXG5cclxuICBASW5wdXQoKSBzZXQgaXRlbXMoaXRlbXM6IGFueSkge1xyXG4gICAgdGhpcy5mb3JtT3B0cyA9IHtcclxuICAgICAgdHlwZTogJ3ZpZXcnLFxyXG4gICAgICBpdGVtczogaXRlbXNcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBjb2x1bW46IGFueSA9IHt4czogOCwgc206IDE2LCBtZDogMjR9XHJcblxyXG4gIGNvbnN0cnVjdG9yKCAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsIEBJbmplY3QoTE9DQUxFX0lEKSBwcml2YXRlIGxvY2FsZTogc3RyaW5nLCBwcml2YXRlIGh0dHBTZXJ2aWNlOiBIdHRwU2VydmljZSkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc29sZS5sb2coXCJURVNUIFJJR0hUXCIpXHJcbiAgICAgIGNvbnNvbGUubG9nKCdhdHJGb3JtLnZhbHVlJywgdGhpcy5hdHJGb3JtLnZhbHVlKVxyXG4gICAgICBjb25zb2xlLmxvZygnYXRyRm9ybS52YWx1ZSBmb3JtT3B0cycsIHRoaXMuZm9ybU9wdHMpXHJcbiAgICB9LCAxMTUwKVxyXG4gIH1cclxuXHJcbiAgaXNTaG93KGlzSGlkZGVuOiBhbnksIG9wZXJhdG9yOiBhbnkpIHtcclxuICAgIGlmIChpc0hpZGRlbikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBsZXQgaXNTaG93ID0gZmFsc2U7XHJcbiAgICBpZiAoIW9wZXJhdG9yIHx8IG9wZXJhdG9yID09IG51bGwgfHwgb3BlcmF0b3IgPT0gXCJcIikge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0gZWxzZSBpZiAob3BlcmF0b3IuaW5kZXhPZignJiYnKSA+IDApIHtcclxuICAgICAgLy8gYXxlcXxiICYmY3xlcXxkXHJcbiAgICAgIGNvbnN0IG9wcyA9IG9wZXJhdG9yLnNwbGl0KCcmJicpO1xyXG4gICAgICBpZiAob3BzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6cHJlZmVyLWZvci1vZlxyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3BzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICBpc1Nob3cgPSB0cnVlXHJcbiAgICAgICAgICBpZiAoIXRoaXMuY2hlY2tJc1Nob3dCYXNlKG9wc1tpXS5zcGxpdCgnfCcpKSkge1xyXG4gICAgICAgICAgICBpc1Nob3cgPSBmYWxzZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKG9wZXJhdG9yLmluZGV4T2YoJ3x8JykgPiAwKSB7XHJcbiAgICAgIC8vIGF8ZXF8Ynx8Y3xlcXxkXHJcbiAgICAgIGNvbnN0IG9wcyA9IG9wZXJhdG9yLnNwbGl0KCcmJicpO1xyXG4gICAgICBpZiAob3BzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9wcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgaXNTaG93ID0gZmFsc2U7XHJcbiAgICAgICAgICBpZiAodGhpcy5jaGVja0lzU2hvd0Jhc2Uob3BzW2ldLnNwbGl0KCd8JykpKSB7XHJcbiAgICAgICAgICAgIGlzU2hvdyA9IHRydWU7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IG9wID0gb3BlcmF0b3Iuc3BsaXQoXCJ8XCIpO1xyXG4gICAgICBpc1Nob3cgPSB0aGlzLmNoZWNrSXNTaG93QmFzZShvcCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaXNTaG93O1xyXG4gIH1cclxuXHJcbiAgY2hlY2tJc1Nob3dCYXNlKG9wOiBhbnkpOiBib29sZWFuIHtcclxuICAgIGxldCBpc1Nob3cgPSBmYWxzZTtcclxuICAgIGlmIChvcC5sZW5ndGggPiAxKSB7XHJcbiAgICAgIGxldCB2YWx1ZSA9IHRoaXMuYXRyRm9ybS5nZXQob3BbMF0pLnZhbHVlO1xyXG4gICAgICBpc1Nob3cgPSB0aGlzLmNvbXBhcmUodmFsdWUsIG9wWzFdLCBvcFsyXSlcclxuICAgIH0gZWxzZVxyXG4gICAgICBpc1Nob3cgPSBmYWxzZTtcclxuXHJcbiAgICByZXR1cm4gaXNTaG93O1xyXG4gIH1cclxuXHJcbiAgY29tcGFyZSh2YWx1ZTogYW55LCBvcGVyYXRvcjogYW55LCB0YXJnZXQ6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IGlzUmlnaHQgPSBmYWxzZTtcclxuICAgIHN3aXRjaCAob3BlcmF0b3IpIHtcclxuICAgICAgY2FzZSAnZXEnIDpcclxuICAgICAgICBpZiAodmFsdWUgPT0gdGFyZ2V0KSB7XHJcbiAgICAgICAgICBpc1JpZ2h0ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2doJyA6XHJcbiAgICAgICAgaWYgKHZhbHVlID49IHRhcmdldCkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdub3RFbXB0eSc6XHJcbiAgICAgICAgaXNSaWdodCA9IGZhbHNlO1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdlbXB0eSc6XHJcbiAgICAgICAgaXNSaWdodCA9IGZhbHNlO1xyXG4gICAgICAgIGlmICghdmFsdWUpIHtcclxuICAgICAgICAgIGlzUmlnaHQgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdCA6XHJcbiAgICAgICAgaXNSaWdodCA9IGZhbHNlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlzUmlnaHQ7XHJcbiAgfVxyXG5cclxuICAvLyBnZXRDYXNjYWRlckxhYmVsKHZhbHVlOiBhbnksIGl0ZW06IGFueSkge1xyXG4gIC8vICAgaWYoaXRlbS5zaG93TGFiZWwpIHJldHVybiBpdGVtLnNob3dMYWJlbDtcclxuICAvLyAgIGxldCByZXN1bHQgPSB0aGlzLmdldENhc2NhZGVyRGVmdWx0VihpdGVtLmRpY3RMaXN0LCB2YWx1ZSwgMCwgW10pO1xyXG4gIC8vICAgLy8gaWYgKGl0ZW0uZGljdExpc3RbMF0udXNlck9iamVjdD8uc2hvd05hbWUpIHtcclxuICAvLyAgIC8vICAgcmV0dXJuIHJlc3VsdFtyZXN1bHQubGVuZ3RoIC0gMV0gfHwgdmFsdWU7XHJcbiAgLy8gICAvLyB9XHJcbiAgLy8gICBpdGVtLnNob3dMYWJlbCA9IHJlc3VsdC5qb2luKFwiL1wiKSA7XHJcbiAgLy8gICByZXR1cm4gaXRlbS5zaG93TGFiZWxcclxuICAvLyB9XHJcblxyXG4gIGdldFNlbGVjdENMYWJlbCh2YWx1ZTogYW55LCBhcnI6IGFueSwga2V5ID0gJ2tleScsIHZhbHVlS2V5ID0gJ3ZhbHVlJykge1xyXG4gICAgaWYgKFRvb2xzVXRpbC5pc0VtcHR5KHZhbHVlKSkge1xyXG4gICAgICByZXR1cm4gJydcclxuICAgIH1cclxuICAgIGxldCByZXN1bHQgPSBhcnIuZmlsdGVyKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgaWYgKFRvb2xzVXRpbC5pc0FycmF5KHZhbHVlKSkge1xyXG4gICAgICAgIHJldHVybiB2YWx1ZS5zb21lKCh2OiBhbnkpID0+IGl0ZW1ba2V5XSA9PSB2KVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB2YWx1ZSA9PSBpdGVtW2tleV1cclxuICAgIH0pXHJcbiAgICByZXR1cm4gcmVzdWx0ICYmIHJlc3VsdC5sZW5ndGggPiAwID8gcmVzdWx0Lm1hcCgodjogYW55KSA9PiB2W3ZhbHVlS2V5XSkuam9pbihcIixcIikgOiByZXN1bHRbdmFsdWVLZXldO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VsZWN0TGFiZWwodmFsdWU6IGFueSwgYXJyOiBhbnkpIHtcclxuICAgIC8vIGNvbnNvbGUubG9nKHZhbHVlLCBhcnIpXHJcbiAgICBsZXQgcmVzdWx0ID0gYXJyLmZpbHRlcigoaXRlbTogYW55KSA9PiB2YWx1ZSA9PSBpdGVtLmtleSB8fCB2YWx1ZSA9PSBpdGVtLmlkKVxyXG4gICAgcmV0dXJuIHJlc3VsdCAmJiByZXN1bHQubGVuZ3RoID4gMCA/IChyZXN1bHRbMF0udGl0bGUgfHwgcmVzdWx0WzBdLnR5cGVOYW1lKSA6IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgZ2V0VGFnTGFiZWwodmFsdWU6IGFueSwga2V5ID0gJ2xhYmVsJykge1xyXG4gICAgcmV0dXJuIHZhbHVlID8gdmFsdWUubWFwKCh2OiBhbnkpID0+IHZba2V5XSkuam9pbigpIDogJydcclxuICB9XHJcblxyXG4gIC8vIGdldENhc2NhZGVyRGVmdWx0VihkaWN0TGlzdDogYW55LCB2YWx1ZTogYW55LCBpbmRleDogYW55LCByZXN1bHQ6IGFueSkge1xyXG4gIC8vICAgZGljdExpc3QuZm9yRWFjaCgodjogYW55KSA9PiB7XHJcbiAgLy8gICAgIGlmICh2YWx1ZVtpbmRleF0udmFsdWUgPT0gdi52YWx1ZSkge1xyXG4gIC8vICAgICAgIHJlc3VsdC5wdXNoKHYudmFsdWUpXHJcbiAgLy8gICAgICAgaWYgKHYuY2hpbGRyZW4pIHtcclxuICAvLyAgICAgICAgIHRoaXMuZ2V0Q2FzY2FkZXJEZWZ1bHRWKHYuY2hpbGRyZW4sIHZhbHVlLCBpbmRleCArIDEsIHJlc3VsdClcclxuICAvLyAgICAgICB9XHJcbiAgLy8gICAgICAgcmV0dXJuO1xyXG4gIC8vICAgICB9XHJcblxyXG4gIC8vICAgfSlcclxuICAvLyAgIHJldHVybiByZXN1bHQ7XHJcbiAgLy8gfVxyXG5cclxuICBnZXRJbWdzKGltZ3M6IGFueSkge1xyXG4gICAgaWYgKCFpbWdzKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICAgIHJldHVybiBpbWdzLnNwbGl0KCcsJylcclxuICB9XHJcbn1cclxuIiwiPG56LWRlc2NyaXB0aW9ucyAgbnpCb3JkZXJlZCBbbnpDb2xvbl09XCJ0cnVlXCIgW256Q29sdW1uXT1cIjI0XCIgW256VGl0bGVdPVwidGl0bGVcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZm9ybU9wdHMuaXRlbXNcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uaXNIaWRkZW5cIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXRpdGxlXCIgKm5nSWY9XCJpdGVtLnR5cGUgPT0gJ3RpdGxlJ1wiPlxyXG4gICAgICAgICAgICB7e2l0ZW0ubGFiZWx9fVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxuei1kZXNjcmlwdGlvbnMtaXRlbSBbbnpUaXRsZV09XCJpdGVtLmxhYmVsXCIgW25nU3dpdGNoXT1cIml0ZW0udHlwZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImlzU2hvdyhpdGVtLmlzSGlkZGVuLGl0ZW0ub3BlcmF0b3IpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuelNwYW5dPVwiaXRlbS5zcGFuIHx8IDZcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidyYWRpbydcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvIG9mIGl0ZW0uZGljdExpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsICAqbmdJZj1cIm8udmFsdWUgPT0gYXRyRm9ybS52YWx1ZVtpdGVtLmtleV1cIj57e28ubGFiZWx9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0cmVlU2VsZWN0J1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuei10cmVlLXNlbGVjdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW256Tm9kZXNdPVwiaXRlbS50cmVlTGlzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuelNob3dTZWFyY2g9XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG56SGlkZVVuTWF0Y2hlZD1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJhdHJGb3JtLnZhbHVlW2l0ZW0ua2V5XVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbnpEaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uei10cmVlLXNlbGVjdD5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidzZWxlY3QnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3tnZXRTZWxlY3RMYWJlbChhdHJGb3JtLnZhbHVlW2l0ZW0ua2V5XSxkaWN0c1tpdGVtLmRpY3RDb2RlXSl9fVxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInc2VsZWN0Q3VzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7Z2V0U2VsZWN0TGFiZWwoYXRyRm9ybS52YWx1ZVtpdGVtLmtleV0saXRlbS5kaWN0TGlzdCl9fVxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInc2VsZWN0YydcIj5cclxuICAgICAgICAgICAgICAgICAge3tnZXRTZWxlY3RDTGFiZWwoYXRyRm9ybS52YWx1ZVtpdGVtLmtleV0saXRlbS5kaWN0TGlzdCwndmFsdWUnLCdsYWJlbCcpfX1cclxuPCEtLSAgICAgICAgICAgICAgICAgICAgPG56LXNlbGVjdC0tPlxyXG48IS0tICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuekRpc2FibGVkXT1cInRydWVcIi0tPlxyXG48IS0tICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXRyRm9ybS52YWx1ZVtpdGVtLmtleV1cIi0tPlxyXG48IS0tICAgICAgICAgICAgICAgICAgICA+LS0+XHJcbjwhLS0gICAgICAgICAgICAgICAgICAgICAgICA8bnotb3B0aW9uICpuZ0Zvcj1cImxldCBvIG9mIGl0ZW0uZGljdExpc3RcIiBbbnpMYWJlbF09XCJvLmxhYmVsXCItLT5cclxuPCEtLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW256VmFsdWVdPVwiby52YWx1ZVwiPjwvbnotb3B0aW9uPi0tPlxyXG48IS0tICAgICAgICAgICAgICAgICAgICA8L256LXNlbGVjdD4tLT5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3NjZW5lVXNlcidcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bnotc2VsZWN0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbnpEaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXRyRm9ybS52YWx1ZVtpdGVtLmtleV1cIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG56LW9wdGlvbiAqbmdGb3I9XCJsZXQgbyBvZiBpdGVtLmRpY3RMaXN0XCIgW256TGFiZWxdPVwiby50aXRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW256VmFsdWVdPVwiby5rZXlcIj48L256LW9wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L256LXNlbGVjdD5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cclxuICAgICAgICAgICAgICAgICAgICB7e2F0ckZvcm0udmFsdWVbaXRlbS5rZXldfX1cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3thdHJGb3JtLnZhbHVlW2l0ZW0ua2V5XSB8IGRhdGU6KGl0ZW0uZGF0ZUZvcm1hdCB8fCAneXl5eS1NTS1kZCcpfX1cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGVUaW1lJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7YXRyRm9ybS52YWx1ZVtpdGVtLmtleV0gfCBkYXRlOihpdGVtLmRhdGVGb3JtYXQgfHwgJ3l5eXktTU0tZGQgMDA6MDA6MDAnKX19XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidjYXNjYWRlcidcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBkYXRhIG9mIGF0ckZvcm0udmFsdWVbaXRlbS5rZXldIDtsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7aT4wP1wiL1wiOlwiXCJ9fXt7ZGF0YS5sYWJsZX19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0YWdzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7Z2V0VGFnTGFiZWwoYXRyRm9ybS52YWx1ZVtpdGVtLmtleV0sICduYW1lJyl9fVxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW1hZ2UnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaW1nIG9mIGdldEltZ3MoYXRyRm9ybS52YWx1ZVtpdGVtLmtleV0pXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nICAqbmdJZj1cIiFpbWcuZW5kc1dpdGgoJy5tcDQnKVwiIG56LWltYWdlICBzdHlsZT1cIm1heC13aWR0aDogMjAwcHg7bWF4LWhlaWdodDogMjAwcHhcIiBbbnpTcmNdPVwiaW1nIHwgb3NzSW1nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXBwLXZpZGVvICpuZ0lmPVwiaW1nLmVuZHNXaXRoKCcubXA0JylcIiBzdHlsZT1cIm1heC13aWR0aDogMjAwcHg7bWF4LWhlaWdodDogMjAwcHhcIiAgW3VybF09XCJpbWcgfCBvc3NJbWdcIj48L2FwcC12aWRlbz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidyYXRlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuei1yYXRlIFtuekRpc2FibGVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXRyRm9ybS52YWx1ZVtpdGVtLmtleV1cIj48L256LXJhdGU+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidlZGl0b3InXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8YXBwLXF1aWxsLWVkaXRvciBbKG5nTW9kZWwpXT1cImF0ckZvcm0udmFsdWVbaXRlbS5rZXldXCIgc3R5bGU9XCJ3aWR0aDogNjAlXCIgW3JlYWRPbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGVzXT1cIntoZWlnaHQ6aXRlbS5oZWlnaHQgPiAwID8gaXRlbS5oZWlnaHQgKyAncHgnIDogJzI1MHB4J31cIj48L2FwcC1xdWlsbC1lZGl0b3I+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cXVpbGwtdmlldyBbY29udGVudF09XCJhdHJGb3JtLnZhbHVlW2l0ZW0ua2V5XVwiICBzdHlsZT1cIndpZHRoOiA2MCVcIiAgdGhlbWU9XCJzbm93XCI+PC9xdWlsbC12aWV3PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgPC9uei1kZXNjcmlwdGlvbnMtaXRlbT5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbjwvbnotZGVzY3JpcHRpb25zPlxyXG4iXX0=
|
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvdmlldy1mb3JtL3ZpZXctZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3ZpZXctZm9ybS92aWV3LWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSxLQUFLLEVBQVksTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUlwRixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFPeEQsTUFBTSxPQUFPLGlCQUFpQjtJQU01QixJQUFhLEtBQUssQ0FBQyxLQUFVO1FBQzNCLElBQUksQ0FBQyxRQUFRLEdBQUc7WUFDZCxJQUFJLEVBQUUsTUFBTTtZQUNaLEtBQUssRUFBRSxLQUFLO1NBQ2IsQ0FBQztJQUNKLENBQUM7SUFJRCxZQUFzQixRQUFrQixFQUE2QixNQUFjLEVBQVUsV0FBd0I7UUFBL0YsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUE2QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFaNUcsVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUNoQixVQUFLLEdBQVEsRUFBRSxDQUFDO1FBU3pCLFdBQU0sR0FBUSxFQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFDLENBQUE7SUFHckMsQ0FBQztJQUVELFFBQVE7UUFDTixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQTtZQUN6QixPQUFPLENBQUMsR0FBRyxDQUFD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QUM3QiwwQkFBMEI7SUFDMUIsd0VBQXdFO0lBQ3hFLFVBQVU7SUFDVixnQkFBZ0I7SUFDaEIsUUFBUTtJQUVSLE9BQU87SUFDUCxtQkFBbUI7SUFDbkIsSUFBSTtJQUVKLE9BQU8sQ0FBQyxJQUFTO1FBQ2YsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDeEIsQ0FBQzsrR0FoS1UsaUJBQWlCLDBDQWVzQixTQUFTO21HQWZoRCxpQkFBaUIsMkpDWDlCLDZ0S0ErRkE7OzRGRHBGYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UsZUFBZTs7MEJBbUJrQixNQUFNOzJCQUFDLFNBQVM7bUVBZGxELFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRU8sS0FBSztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkluaXQsIElucHV0LCBJbmplY3RvciwgSW5qZWN0LCBMT0NBTEVfSUR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7QXRyRm9ybU9wdH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvYmFzZS9hdHItY29tbW9uXCI7XHJcbmltcG9ydCB7SHR0cFNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL2h0dHAuc2VydmljZVwiO1xyXG5pbXBvcnQge1Rvb2xzVXRpbH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvdXRpbHMvVG9vbHNVdGlsXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2F0ci12aWV3LWZvcm0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92aWV3LWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3ZpZXctZm9ybS5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWaWV3Rm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZm9ybU9wdHM6IEF0ckZvcm1PcHQgfCBhbnk7XHJcbiAgQElucHV0KCkgYXRyRm9ybTogVW50eXBlZEZvcm1Hcm91cCB8IGFueTtcclxuICBASW5wdXQoKSBkaWN0czogYW55ID0ge307XHJcbiAgQElucHV0KCkgdGl0bGU6IGFueSA9ICcnO1xyXG5cclxuICBASW5wdXQoKSBzZXQgaXRlbXMoaXRlbXM6IGFueSkge1xyXG4gICAgdGhpcy5mb3JtT3B0cyA9IHtcclxuICAgICAgdHlwZTogJ3ZpZXcnLFxyXG4gICAgICBpdGVtczogaXRlbXNcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBjb2x1bW46IGFueSA9IHt4czogOCwgc206IDE2LCBtZDogMjR9XHJcblxyXG4gIGNvbnN0cnVjdG9yKCAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsIEBJbmplY3QoTE9DQUxFX0lEKSBwcml2YXRlIGxvY2FsZTogc3RyaW5nLCBwcml2YXRlIGh0dHBTZXJ2aWNlOiBIdHRwU2VydmljZSkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc29sZS5sb2coXCJURVNUIFJJR0hUXCIpXHJcbiAgICAgIGNvbnNvbGUubG9nKCdhdHJGb3JtLnZhbHVlJywgdGhpcy5hdHJGb3JtLnZhbHVlKVxyXG4gICAgICBjb25zb2xlLmxvZygnYXRyRm9ybS52YWx1ZSBmb3JtT3B0cycsIHRoaXMuZm9ybU9wdHMpXHJcbiAgICB9LCAxMTUwKVxyXG4gIH1cclxuXHJcbiAgaXNTaG93KGlzSGlkZGVuOiBhbnksIG9wZXJhdG9yOiBhbnkpIHtcclxuICAgIGlmIChpc0hpZGRlbikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBsZXQgaXNTaG93ID0gZmFsc2U7XHJcbiAgICBpZiAoIW9wZXJhdG9yIHx8IG9wZXJhdG9yID09IG51bGwgfHwgb3BlcmF0b3IgPT0gXCJcIikge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0gZWxzZSBpZiAob3BlcmF0b3IuaW5kZXhPZignJiYnKSA+IDApIHtcclxuICAgICAgLy8gYXxlcXxiICYmY3xlcXxkXHJcbiAgICAgIGNvbnN0IG9wcyA9IG9wZXJhdG9yLnNwbGl0KCcmJicpO1xyXG4gICAgICBpZiAob3BzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6cHJlZmVyLWZvci1vZlxyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3BzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICBpc1Nob3cgPSB0cnVlXHJcbiAgICAgICAgICBpZiAoIXRoaXMuY2hlY2tJc1Nob3dCYXNlKG9wc1tpXS5zcGxpdCgnfCcpKSkge1xyXG4gICAgICAgICAgICBpc1Nob3cgPSBmYWxzZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKG9wZXJhdG9yLmluZGV4T2YoJ3x8JykgPiAwKSB7XHJcbiAgICAgIC8vIGF8ZXF8Ynx8Y3xlcXxkXHJcbiAgICAgIGNvbnN0IG9wcyA9IG9wZXJhdG9yLnNwbGl0KCcmJicpO1xyXG4gICAgICBpZiAob3BzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9wcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgaXNTaG93ID0gZmFsc2U7XHJcbiAgICAgICAgICBpZiAodGhpcy5jaGVja0lzU2hvd0Jhc2Uob3BzW2ldLnNwbGl0KCd8JykpKSB7XHJcbiAgICAgICAgICAgIGlzU2hvdyA9IHRydWU7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IG9wID0gb3BlcmF0b3Iuc3BsaXQoXCJ8XCIpO1xyXG4gICAgICBpc1Nob3cgPSB0aGlzLmNoZWNrSXNTaG93QmFzZShvcCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaXNTaG93O1xyXG4gIH1cclxuXHJcbiAgY2hlY2tJc1Nob3dCYXNlKG9wOiBhbnkpOiBib29sZWFuIHtcclxuICAgIGxldCBpc1Nob3cgPSBmYWxzZTtcclxuICAgIGlmIChvcC5sZW5ndGggPiAxKSB7XHJcbiAgICAgIGxldCB2YWx1ZSA9IHRoaXMuYXRyRm9ybS5nZXQob3BbMF0pLnZhbHVlO1xyXG4gICAgICBpc1Nob3cgPSB0aGlzLmNvbXBhcmUodmFsdWUsIG9wWzFdLCBvcFsyXSlcclxuICAgIH0gZWxzZVxyXG4gICAgICBpc1Nob3cgPSBmYWxzZTtcclxuXHJcbiAgICByZXR1cm4gaXNTaG93O1xyXG4gIH1cclxuXHJcbiAgY29tcGFyZSh2YWx1ZTogYW55LCBvcGVyYXRvcjogYW55LCB0YXJnZXQ6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IGlzUmlnaHQgPSBmYWxzZTtcclxuICAgIHN3aXRjaCAob3BlcmF0b3IpIHtcclxuICAgICAgY2FzZSAnZXEnIDpcclxuICAgICAgICBpZiAodmFsdWUgPT0gdGFyZ2V0KSB7XHJcbiAgICAgICAgICBpc1JpZ2h0ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2doJyA6XHJcbiAgICAgICAgaWYgKHZhbHVlID49IHRhcmdldCkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdub3RFbXB0eSc6XHJcbiAgICAgICAgaXNSaWdodCA9IGZhbHNlO1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdlbXB0eSc6XHJcbiAgICAgICAgaXNSaWdodCA9IGZhbHNlO1xyXG4gICAgICAgIGlmICghdmFsdWUpIHtcclxuICAgICAgICAgIGlzUmlnaHQgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdCA6XHJcbiAgICAgICAgaXNSaWdodCA9IGZhbHNlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlzUmlnaHQ7XHJcbiAgfVxyXG5cclxuICAvLyBnZXRDYXNjYWRlckxhYmVsKHZhbHVlOiBhbnksIGl0ZW06IGFueSkge1xyXG4gIC8vICAgaWYoaXRlbS5zaG93TGFiZWwpIHJldHVybiBpdGVtLnNob3dMYWJlbDtcclxuICAvLyAgIGxldCByZXN1bHQgPSB0aGlzLmdldENhc2NhZGVyRGVmdWx0VihpdGVtLmRpY3RMaXN0LCB2YWx1ZSwgMCwgW10pO1xyXG4gIC8vICAgLy8gaWYgKGl0ZW0uZGljdExpc3RbMF0udXNlck9iamVjdD8uc2hvd05hbWUpIHtcclxuICAvLyAgIC8vICAgcmV0dXJuIHJlc3VsdFtyZXN1bHQubGVuZ3RoIC0gMV0gfHwgdmFsdWU7XHJcbiAgLy8gICAvLyB9XHJcbiAgLy8gICBpdGVtLnNob3dMYWJlbCA9IHJlc3VsdC5qb2luKFwiL1wiKSA7XHJcbiAgLy8gICByZXR1cm4gaXRlbS5zaG93TGFiZWxcclxuICAvLyB9XHJcblxyXG4gIGdldFNlbGVjdENMYWJlbCh2YWx1ZTogYW55LCBhcnI6IGFueSwga2V5ID0gJ2tleScsIHZhbHVlS2V5ID0gJ3ZhbHVlJykge1xyXG4gICAgaWYgKFRvb2xzVXRpbC5pc0VtcHR5KHZhbHVlKSkge1xyXG4gICAgICByZXR1cm4gJydcclxuICAgIH1cclxuICAgIGxldCByZXN1bHQgPSBhcnIuZmlsdGVyKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgaWYgKFRvb2xzVXRpbC5pc0FycmF5KHZhbHVlKSkge1xyXG4gICAgICAgIHJldHVybiB2YWx1ZS5zb21lKCh2OiBhbnkpID0+IGl0ZW1ba2V5XSA9PSB2KVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB2YWx1ZSA9PSBpdGVtW2tleV1cclxuICAgIH0pXHJcbiAgICByZXR1cm4gcmVzdWx0ICYmIHJlc3VsdC5sZW5ndGggPiAwID8gcmVzdWx0Lm1hcCgodjogYW55KSA9PiB2W3ZhbHVlS2V5XSkuam9pbihcIixcIikgOiByZXN1bHRbdmFsdWVLZXldO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VsZWN0TGFiZWwodmFsdWU6IGFueSwgYXJyOiBhbnkpIHtcclxuICAgIC8vIGNvbnNvbGUubG9nKHZhbHVlLCBhcnIpXHJcbiAgICBsZXQgcmVzdWx0ID0gYXJyLmZpbHRlcigoaXRlbTogYW55KSA9PiB2YWx1ZSA9PSBpdGVtLmtleSB8fCB2YWx1ZSA9PSBpdGVtLmlkKVxyXG4gICAgcmV0dXJuIHJlc3VsdCAmJiByZXN1bHQubGVuZ3RoID4gMCA/IChyZXN1bHRbMF0udGl0bGUgfHwgcmVzdWx0WzBdLnR5cGVOYW1lKSA6IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgZ2V0VGFnTGFiZWwodmFsdWU6IGFueSwga2V5ID0gJ2xhYmVsJykge1xyXG4gICAgcmV0dXJuIHZhbHVlID8gdmFsdWUubWFwKCh2OiBhbnkpID0+IHZba2V5XSkuam9pbigpIDogJydcclxuICB9XHJcblxyXG4gIC8vIGdldENhc2NhZGVyRGVmdWx0VihkaWN0TGlzdDogYW55LCB2YWx1ZTogYW55LCBpbmRleDogYW55LCByZXN1bHQ6IGFueSkge1xyXG4gIC8vICAgZGljdExpc3QuZm9yRWFjaCgodjogYW55KSA9PiB7XHJcbiAgLy8gICAgIGlmICh2YWx1ZVtpbmRleF0udmFsdWUgPT0gdi52YWx1ZSkge1xyXG4gIC8vICAgICAgIHJlc3VsdC5wdXNoKHYudmFsdWUpXHJcbiAgLy8gICAgICAgaWYgKHYuY2hpbGRyZW4pIHtcclxuICAvLyAgICAgICAgIHRoaXMuZ2V0Q2FzY2FkZXJEZWZ1bHRWKHYuY2hpbGRyZW4sIHZhbHVlLCBpbmRleCArIDEsIHJlc3VsdClcclxuICAvLyAgICAgICB9XHJcbiAgLy8gICAgICAgcmV0dXJuO1xyXG4gIC8vICAgICB9XHJcblxyXG4gIC8vICAgfSlcclxuICAvLyAgIHJldHVybiByZXN1bHQ7XHJcbiAgLy8gfVxyXG5cclxuICBnZXRJbWdzKGltZ3M6IGFueSkge1xyXG4gICAgaWYgKCFpbWdzKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICAgIHJldHVybiBpbWdzLnNwbGl0KCcsJylcclxuICB9XHJcbn1cclxuIiwiPG56LWRlc2NyaXB0aW9ucyAgbnpCb3JkZXJlZCBbbnpDb2xvbl09XCJ0cnVlXCIgW256Q29sdW1uXT1cIjI0XCIgW256VGl0bGVdPVwidGl0bGVcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZm9ybU9wdHMuaXRlbXNcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uaXNIaWRkZW5cIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXRpdGxlXCIgKm5nSWY9XCJpdGVtLnR5cGUgPT0gJ3RpdGxlJ1wiPlxyXG4gICAgICAgICAgICB7e2l0ZW0ubGFiZWx9fVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxuei1kZXNjcmlwdGlvbnMtaXRlbSBbbnpUaXRsZV09XCJpdGVtLmxhYmVsXCIgW25nU3dpdGNoXT1cIml0ZW0udHlwZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImlzU2hvdyhpdGVtLmlzSGlkZGVuLGl0ZW0ub3BlcmF0b3IpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuelNwYW5dPVwiaXRlbS5zcGFuIHx8IDZcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidyYWRpbydcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvIG9mIGl0ZW0uZGljdExpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsICAqbmdJZj1cIm8udmFsdWUgPT0gYXRyRm9ybS52YWx1ZVtpdGVtLmtleV1cIj57e28ubGFiZWx9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0cmVlU2VsZWN0J1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuei10cmVlLXNlbGVjdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW256Tm9kZXNdPVwiaXRlbS50cmVlTGlzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuelNob3dTZWFyY2g9XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG56SGlkZVVuTWF0Y2hlZD1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJhdHJGb3JtLnZhbHVlW2l0ZW0ua2V5XVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbnpEaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uei10cmVlLXNlbGVjdD5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidzZWxlY3QnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3tnZXRTZWxlY3RMYWJlbChhdHJGb3JtLnZhbHVlW2l0ZW0ua2V5XSxkaWN0c1tpdGVtLmRpY3RDb2RlXSl9fVxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInc2VsZWN0Q3VzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7Z2V0U2VsZWN0TGFiZWwoYXRyRm9ybS52YWx1ZVtpdGVtLmtleV0saXRlbS5kaWN0TGlzdCl9fVxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInc2VsZWN0YydcIj5cclxuICAgICAgICAgICAgICAgICAge3tnZXRTZWxlY3RDTGFiZWwoYXRyRm9ybS52YWx1ZVtpdGVtLmtleV0saXRlbS5kaWN0TGlzdCwndmFsdWUnLCdsYWJlbCcpfX1cclxuPCEtLSAgICAgICAgICAgICAgICAgICAgPG56LXNlbGVjdC0tPlxyXG48IS0tICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuekRpc2FibGVkXT1cInRydWVcIi0tPlxyXG48IS0tICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXRyRm9ybS52YWx1ZVtpdGVtLmtleV1cIi0tPlxyXG48IS0tICAgICAgICAgICAgICAgICAgICA+LS0+XHJcbjwhLS0gICAgICAgICAgICAgICAgICAgICAgICA8bnotb3B0aW9uICpuZ0Zvcj1cImxldCBvIG9mIGl0ZW0uZGljdExpc3RcIiBbbnpMYWJlbF09XCJvLmxhYmVsXCItLT5cclxuPCEtLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW256VmFsdWVdPVwiby52YWx1ZVwiPjwvbnotb3B0aW9uPi0tPlxyXG48IS0tICAgICAgICAgICAgICAgICAgICA8L256LXNlbGVjdD4tLT5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3NjZW5lVXNlcidcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bnotc2VsZWN0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbnpEaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXRyRm9ybS52YWx1ZVtpdGVtLmtleV1cIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG56LW9wdGlvbiAqbmdGb3I9XCJsZXQgbyBvZiBpdGVtLmRpY3RMaXN0XCIgW256TGFiZWxdPVwiby50aXRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW256VmFsdWVdPVwiby5rZXlcIj48L256LW9wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L256LXNlbGVjdD5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cclxuICAgICAgICAgICAgICAgICAgICB7e2F0ckZvcm0udmFsdWVbaXRlbS5rZXldfX1cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3thdHJGb3JtLnZhbHVlW2l0ZW0ua2V5XSB8IGRhdGU6KGl0ZW0uZGF0ZUZvcm1hdCB8fCAneXl5eS1NTS1kZCcpfX1cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGVUaW1lJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7YXRyRm9ybS52YWx1ZVtpdGVtLmtleV0gfCBkYXRlOihpdGVtLmRhdGVGb3JtYXQgfHwgJ3l5eXktTU0tZGQgMDA6MDA6MDAnKX19XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidjYXNjYWRlcidcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBkYXRhIG9mIGF0ckZvcm0udmFsdWVbaXRlbS5rZXldIDtsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7aT4wP1wiL1wiOlwiXCJ9fXt7ZGF0YS5sYWJsZX19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0YWdzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7Z2V0VGFnTGFiZWwoYXRyRm9ybS52YWx1ZVtpdGVtLmtleV0sICduYW1lJyl9fVxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW1hZ2UnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaW1nIG9mIGdldEltZ3MoYXRyRm9ybS52YWx1ZVtpdGVtLmtleV0pXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nICAqbmdJZj1cIiFpbWcuZW5kc1dpdGgoJy5tcDQnKVwiIG56LWltYWdlICBzdHlsZT1cIm1heC13aWR0aDogMjAwcHg7bWF4LWhlaWdodDogMjAwcHhcIiBbbnpTcmNdPVwiaW1nIHwgb3NzSW1nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXBwLXZpZGVvICpuZ0lmPVwiaW1nLmVuZHNXaXRoKCcubXA0JylcIiBzdHlsZT1cIm1heC13aWR0aDogMjAwcHg7bWF4LWhlaWdodDogMjAwcHhcIiAgW3VybF09XCJpbWcgfCBvc3NJbWdcIj48L2FwcC12aWRlbz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidyYXRlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuei1yYXRlIFtuekRpc2FibGVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXRyRm9ybS52YWx1ZVtpdGVtLmtleV1cIj48L256LXJhdGU+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidlZGl0b3InXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8YXBwLXF1aWxsLWVkaXRvciBbKG5nTW9kZWwpXT1cImF0ckZvcm0udmFsdWVbaXRlbS5rZXldXCIgc3R5bGU9XCJ3aWR0aDogNjAlXCIgW3JlYWRPbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGVzXT1cIntoZWlnaHQ6aXRlbS5oZWlnaHQgPiAwID8gaXRlbS5oZWlnaHQgKyAncHgnIDogJzI1MHB4J31cIj48L2FwcC1xdWlsbC1lZGl0b3I+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cXVpbGwtdmlldyBbY29udGVudF09XCJhdHJGb3JtLnZhbHVlW2l0ZW0ua2V5XVwiICBzdHlsZT1cIndpZHRoOiA2MCVcIiAgdGhlbWU9XCJzbm93XCI+PC9xdWlsbC12aWV3PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgPC9uei1kZXNjcmlwdGlvbnMtaXRlbT5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbjwvbnotZGVzY3JpcHRpb25zPlxyXG4iXX0=
|