@symphony-talent/component-library 3.25.0 → 3.26.0
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/esm2020/lib/organisms/upload-resume-modal/upload-resume-modal.component.mjs +9 -3
- package/esm2020/projects/component-library/lib/organisms/upload-resume-modal/upload-resume-modal.component.mjs +9 -3
- package/fesm2015/symphony-talent-component-library-projects-component-library.mjs +8 -2
- package/fesm2015/symphony-talent-component-library-projects-component-library.mjs.map +1 -1
- package/fesm2015/symphony-talent-component-library.mjs +8 -2
- package/fesm2015/symphony-talent-component-library.mjs.map +1 -1
- package/fesm2020/symphony-talent-component-library-projects-component-library.mjs +8 -2
- package/fesm2020/symphony-talent-component-library-projects-component-library.mjs.map +1 -1
- package/fesm2020/symphony-talent-component-library.mjs +8 -2
- package/fesm2020/symphony-talent-component-library.mjs.map +1 -1
- package/lib/organisms/upload-resume-modal/upload-resume-modal.component.d.ts +4 -1
- package/package.json +1 -1
- package/projects/component-library/lib/organisms/upload-resume-modal/upload-resume-modal.component.d.ts +4 -1
|
@@ -17,6 +17,7 @@ export class UploadResumeModalComponent {
|
|
|
17
17
|
this.docTypeDropdowChange = new EventEmitter();
|
|
18
18
|
this.updateResumeChecked = new EventEmitter();
|
|
19
19
|
this.fileCloseClick = new EventEmitter();
|
|
20
|
+
this.getFileDetails = new EventEmitter();
|
|
20
21
|
this.isResumeSelected = false;
|
|
21
22
|
}
|
|
22
23
|
ngOnInit() {
|
|
@@ -67,6 +68,9 @@ export class UploadResumeModalComponent {
|
|
|
67
68
|
onFileCloseClick() {
|
|
68
69
|
this.fileCloseClick.emit();
|
|
69
70
|
}
|
|
71
|
+
onFileUpload(event) {
|
|
72
|
+
this.getFileDetails.emit(event);
|
|
73
|
+
}
|
|
70
74
|
onDocTypeSelect(selectedModel) {
|
|
71
75
|
if (selectedModel.value == 'Resume') {
|
|
72
76
|
this.uploadResumeModel.isResume = true;
|
|
@@ -81,10 +85,10 @@ export class UploadResumeModalComponent {
|
|
|
81
85
|
}
|
|
82
86
|
}
|
|
83
87
|
UploadResumeModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: UploadResumeModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
-
UploadResumeModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: UploadResumeModalComponent, selector: "symphony-upload-resume-modal", inputs: { uploadResumeModel: "uploadResumeModel", isLoading: "isLoading" }, outputs: { closeUploadComplete: "closeUploadComplete", buttonClicked: "buttonClicked", closeButtonClicked: "closeButtonClicked", docTypeDropdowChange: "docTypeDropdowChange", updateResumeChecked: "updateResumeChecked", fileCloseClick: "fileCloseClick" }, ngImport: i0, template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"], components: [{ type: i1.H4Component, selector: "symphony-h4", inputs: ["text", "isSecondary"] }, { type: i2.ParagraphComponent, selector: "symphony-paragraph", inputs: ["text", "isSecondary"] }, { type: i3.IconComponent, selector: "symphony-icon", inputs: ["icon", "isSecondary", "size", "iconColor"], outputs: ["clicked"] }, { type: i4.InputDropdownComponent, selector: "symphony-input-dropdown", inputs: ["inputDropdownListModel", "disableBtn", "isInverse", "isRequired"], outputs: ["selectItem", "clearSelection"] }, { type: i5.InputCheckboxComponent, selector: "symphony-input-checkbox", inputs: ["isActive", "label", "isRequired"], outputs: ["clicked"] }, { type: i6.FileUploadV2Component, selector: "symphony-file-upload-v2" }, { type: i7.SfxLoaderComponent, selector: "symphony-sfx-loader", inputs: ["leftStyle", "message"] }, { type: i8.ButtonComponent, selector: "symphony-button", inputs: ["text", "disabled", "isSecondary", "isInverse"], outputs: ["clicked"] }], directives: [{ type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
88
|
+
UploadResumeModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: UploadResumeModalComponent, selector: "symphony-upload-resume-modal", inputs: { uploadResumeModel: "uploadResumeModel", isLoading: "isLoading" }, outputs: { closeUploadComplete: "closeUploadComplete", buttonClicked: "buttonClicked", closeButtonClicked: "closeButtonClicked", docTypeDropdowChange: "docTypeDropdowChange", updateResumeChecked: "updateResumeChecked", fileCloseClick: "fileCloseClick", getFileDetails: "getFileDetails" }, ngImport: i0, template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n (getFileDetails)=\"onFileUpload($event)\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"], components: [{ type: i1.H4Component, selector: "symphony-h4", inputs: ["text", "isSecondary"] }, { type: i2.ParagraphComponent, selector: "symphony-paragraph", inputs: ["text", "isSecondary"] }, { type: i3.IconComponent, selector: "symphony-icon", inputs: ["icon", "isSecondary", "size", "iconColor"], outputs: ["clicked"] }, { type: i4.InputDropdownComponent, selector: "symphony-input-dropdown", inputs: ["inputDropdownListModel", "disableBtn", "isInverse", "isRequired"], outputs: ["selectItem", "clearSelection"] }, { type: i5.InputCheckboxComponent, selector: "symphony-input-checkbox", inputs: ["isActive", "label", "isRequired"], outputs: ["clicked"] }, { type: i6.FileUploadV2Component, selector: "symphony-file-upload-v2" }, { type: i7.SfxLoaderComponent, selector: "symphony-sfx-loader", inputs: ["leftStyle", "message"] }, { type: i8.ButtonComponent, selector: "symphony-button", inputs: ["text", "disabled", "isSecondary", "isInverse"], outputs: ["clicked"] }], directives: [{ type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
85
89
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: UploadResumeModalComponent, decorators: [{
|
|
86
90
|
type: Component,
|
|
87
|
-
args: [{ selector: 'symphony-upload-resume-modal', template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"] }]
|
|
91
|
+
args: [{ selector: 'symphony-upload-resume-modal', template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n (getFileDetails)=\"onFileUpload($event)\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"] }]
|
|
88
92
|
}], ctorParameters: function () { return []; }, propDecorators: { uploadResumeModel: [{
|
|
89
93
|
type: Input
|
|
90
94
|
}], isLoading: [{
|
|
@@ -101,5 +105,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
101
105
|
type: Output
|
|
102
106
|
}], fileCloseClick: [{
|
|
103
107
|
type: Output
|
|
108
|
+
}], getFileDetails: [{
|
|
109
|
+
type: Output
|
|
104
110
|
}] } });
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXJlc3VtZS1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL29yZ2FuaXNtcy91cGxvYWQtcmVzdW1lLW1vZGFsL3VwbG9hZC1yZXN1bWUtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9vcmdhbmlzbXMvdXBsb2FkLXJlc3VtZS1tb2RhbC91cGxvYWQtcmVzdW1lLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7O0FBVS9FLE1BQU0sT0FBTywwQkFBMEI7SUFjckM7UUFWVSx3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ2pELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMzQyx1QkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ2hELHlCQUFvQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDbEQsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNqRCxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFHN0MscUJBQWdCLEdBQVksS0FBSyxDQUFDO0lBRTFCLENBQUM7SUFFaEIsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxLQUFLLEVBQUUsY0FBYztZQUNyQixRQUFRLEVBQUUsa0RBQWtEO1lBQzVELFVBQVUsRUFBRSxNQUFNO1lBQ2xCLFlBQVksRUFBRSxNQUFNO1lBQ3BCLG9CQUFvQixFQUFFO2dCQUNwQixZQUFZLEVBQUUsY0FBYztnQkFDNUIsWUFBWSxFQUFFO29CQUNaO3dCQUNFLEVBQUUsRUFBRSxDQUFDO3dCQUNMLElBQUksRUFBRSxjQUFjO3dCQUNwQixLQUFLLEVBQUUsY0FBYztxQkFDdEI7b0JBQ0Q7d0JBQ0UsRUFBRSxFQUFFLENBQUM7d0JBQ0wsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsS0FBSyxFQUFFLFFBQVE7cUJBQ2hCO29CQUNEO3dCQUNFLEVBQUUsRUFBRSxDQUFDO3dCQUNMLElBQUksRUFBRSxPQUFPO3dCQUNiLEtBQUssRUFBRSxPQUFPO3FCQUNmO2lCQUNGO2dCQUNELGdCQUFnQixFQUFFLGVBQWU7YUFDbEM7WUFDRCxlQUFlLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtTQUN4QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsR0FBRztZQUMxRCxNQUFNO1lBQ04sT0FBTztZQUNQLE1BQU07WUFDTixNQUFNO1NBQ1AsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLFFBQVEsRUFBRTtZQUNwQyxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLFlBQVksR0FBRyxRQUFRLENBQUM7U0FDekQ7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVk7UUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGVBQWUsQ0FBQyxhQUF5QztRQUN2RCxJQUFJLGFBQWEsQ0FBQyxLQUFLLElBQUksUUFBUSxFQUFFO1lBQ25DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ3hDO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztTQUN6QztRQUNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxzQkFBMEM7UUFDNUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RCxDQUFDOzt1SEEvRVUsMEJBQTBCOzJHQUExQiwwQkFBMEIsK1lDVnZDLHcwR0FrRkE7MkZEeEVhLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDRSw4QkFBOEI7MEVBSy9CLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVJLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFDRyxvQkFBb0I7c0JBQTdCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbnB1dENoZWNrYm94TW9kZWwgfSBmcm9tICcuLi8uLi9hdG9tcy9pbnB1dC1jaGVja2JveC9pbnB1dC1jaGVja2JveC5tb2RlbCc7XG5pbXBvcnQgeyBJbnB1dERyb3Bkb3duTGlzdEl0ZW1Nb2RlbCB9IGZyb20gJy4uLy4uL2F0b21zL2lucHV0LWRyb3Bkb3duL2lucHV0LWRyb3Bkb3duLWxpc3QtaXRlbS5tb2RlbCc7XG5pbXBvcnQgeyBVcGxvYWRSZXN1bWVNb2RhbE1vZGVsIH0gZnJvbSAnLi91cGxvYWQtcmVzdW1lLW1vZGFsLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3ltcGhvbnktdXBsb2FkLXJlc3VtZS1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi91cGxvYWQtcmVzdW1lLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdXBsb2FkLXJlc3VtZS1tb2RhbC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBVcGxvYWRSZXN1bWVNb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHVwbG9hZFJlc3VtZU1vZGVsOiBVcGxvYWRSZXN1bWVNb2RhbE1vZGVsO1xuICBASW5wdXQoKSBpc0xvYWRpbmc6IGJvb2xlYW47XG5cbiAgQE91dHB1dCgpIGNsb3NlVXBsb2FkQ29tcGxldGUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIGJ1dHRvbkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIGNsb3NlQnV0dG9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgZG9jVHlwZURyb3Bkb3dDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHVwZGF0ZVJlc3VtZUNoZWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIGZpbGVDbG9zZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHB1YmxpYyBtb2RlbDogYW55O1xuICBwdWJsaWMgaXNSZXN1bWVTZWxlY3RlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGVsID0ge1xuICAgICAgdGl0bGU6ICdBZGQgZG9jdW1lbnQnLFxuICAgICAgc3ViVGl0bGU6ICdBdHRhY2ggYSAucnRmLCAuZG9jeCwgLnR4dCBvciAucGRmIGZpbGUgdXB0byAyTUInLFxuICAgICAgYnRuUHJpbWFyeTogJ1NhdmUnLFxuICAgICAgYnRuU2Vjb25kYXJ5OiAnQmFjaycsXG4gICAgICBkb2N1bWVudFR5cGVEcm9wZG93bjoge1xuICAgICAgICBzZWxlY3RlZE5hbWU6ICdDb3ZlciBsZXR0ZXInLFxuICAgICAgICBkcm9wZG93bkxpc3Q6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogMSxcbiAgICAgICAgICAgIG5hbWU6ICdDb3ZlciBsZXR0ZXInLFxuICAgICAgICAgICAgdmFsdWU6ICdDb3ZlciBsZXR0ZXInLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6IDIsXG4gICAgICAgICAgICBuYW1lOiAnUmVzdW1lJyxcbiAgICAgICAgICAgIHZhbHVlOiAnUmVzdW1lJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAzLFxuICAgICAgICAgICAgbmFtZTogJ090aGVyJyxcbiAgICAgICAgICAgIHZhbHVlOiAnT3RoZXInLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGNvbXBvbmVudEhlYWRpbmc6ICdEb2N1bWVudCBUeXBlJyxcbiAgICAgIH0sXG4gICAgICBmaWxlVXBsb2FkTW9kZWw6IHRoaXMudXBsb2FkUmVzdW1lTW9kZWwsXG4gICAgfTtcbiAgICB0aGlzLnVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5maWxlRm9ybWF0QWNjZXB0ZWQgPSBbXG4gICAgICAnLnJ0ZicsXG4gICAgICAnLmRvY3gnLFxuICAgICAgJy50eHQnLFxuICAgICAgJy5wZGYnLFxuICAgIF07XG4gICAgaWYgKHRoaXMudXBsb2FkUmVzdW1lTW9kZWw/LmlzUmVzdW1lKSB7XG4gICAgICB0aGlzLm1vZGVsLmRvY3VtZW50VHlwZURyb3Bkb3duLnNlbGVjdGVkTmFtZSA9ICdSZXN1bWUnO1xuICAgIH1cbiAgfVxuXG4gIG9uQnV0dG9uQ2xpY2sodGV4dDogc3RyaW5nKSB7XG4gICAgdGhpcy5idXR0b25DbGlja2VkLmVtaXQodGV4dCk7XG4gIH1cblxuICBvbkNsb3NlQ2xpY2soKSB7XG4gICAgdGhpcy5jbG9zZUJ1dHRvbkNsaWNrZWQuZW1pdCgpO1xuICB9XG5cbiAgb25GaWxlQ2xvc2VDbGljaygpIHtcbiAgICB0aGlzLmZpbGVDbG9zZUNsaWNrLmVtaXQoKTtcbiAgfVxuXG4gIG9uRG9jVHlwZVNlbGVjdChzZWxlY3RlZE1vZGVsOiBJbnB1dERyb3Bkb3duTGlzdEl0ZW1Nb2RlbCkge1xuICAgIGlmIChzZWxlY3RlZE1vZGVsLnZhbHVlID09ICdSZXN1bWUnKSB7XG4gICAgICB0aGlzLnVwbG9hZFJlc3VtZU1vZGVsLmlzUmVzdW1lID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51cGxvYWRSZXN1bWVNb2RlbC5pc1Jlc3VtZSA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmRvY1R5cGVEcm9wZG93Q2hhbmdlLmVtaXQoc2VsZWN0ZWRNb2RlbC52YWx1ZSk7XG4gIH1cblxuICBvblJlc3VtZUNoZWNrU2VsZWN0KHVwZGF0ZVJlc3VtZUNoZWNrRXZlbnQ6IElucHV0Q2hlY2tib3hNb2RlbCkge1xuICAgIHRoaXMudXBkYXRlUmVzdW1lQ2hlY2tlZC5lbWl0KHVwZGF0ZVJlc3VtZUNoZWNrRXZlbnQubGFiZWwpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2Z4IHNmeC1tb2RhbFwiICpuZ0lmPVwidXBsb2FkUmVzdW1lTW9kZWwgJiYgbW9kZWxcIj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJtb2RhbC1oZWFkZXIgc2Z4LXAtMzAgc2Z4LXB0LTQwXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtOCBjb2wtc20tOCBjb2wtbWQtOCBjb2wtbGctOFwiPlxuICAgICAgICAgIDxzeW1waG9ueS1oNCBbdGV4dF09XCJtb2RlbC50aXRsZVwiPjwvc3ltcGhvbnktaDQ+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNmeC1tdC0xNVwiPlxuICAgICAgICAgICAgPHN5bXBob255LXBhcmFncmFwaCBbdGV4dF09XCJtb2RlbC5zdWJUaXRsZVwiPjwvc3ltcGhvbnktcGFyYWdyYXBoPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy00IGNvbC1zbS00IGNvbC1tZC00IGNvbC1sZy00XCI+XG4gICAgICAgICAgPHN5bXBob255LWljb25cbiAgICAgICAgICAgIGNsYXNzPVwicHVsbC1yaWdodFwiXG4gICAgICAgICAgICBbaWNvbl09XCInc2ktY2xvc2UtbW9kYWwnXCJcbiAgICAgICAgICAgIChjbGlja2VkKT1cIm9uQ2xvc2VDbGljaygpXCJcbiAgICAgICAgICA+PC9zeW1waG9ueS1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L3NlY3Rpb24+XG4gIDxzZWN0aW9uIGNsYXNzPVwibW9kYWwtYm9keSBzZngtcC0zMFwiPlxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtMTIgY29sLXNtLTYgY29sLW1kLTYgY29sLWxnLTZcIj5cbiAgICAgICAgPHN5bXBob255LWlucHV0LWRyb3Bkb3duXG4gICAgICAgICAgKm5nSWY9XCIhdXBsb2FkUmVzdW1lTW9kZWwuaXNMb2FkaW5nXCJcbiAgICAgICAgICBbaW5wdXREcm9wZG93bkxpc3RNb2RlbF09XCJtb2RlbC5kb2N1bWVudFR5cGVEcm9wZG93blwiXG4gICAgICAgICAgKHNlbGVjdEl0ZW0pPVwib25Eb2NUeXBlU2VsZWN0KCRldmVudClcIlxuICAgICAgICA+PC9zeW1waG9ueS1pbnB1dC1kcm9wZG93bj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMiBjb2wtc20tNiBjb2wtbWQtNiBjb2wtbGctNiBzZngtbXQtMzNcIj5cbiAgICAgICAgPHN5bXBob255LWlucHV0LWNoZWNrYm94XG4gICAgICAgICAgKm5nSWY9XCJ1cGxvYWRSZXN1bWVNb2RlbC5pc1Jlc3VtZVwiXG4gICAgICAgICAgW2xhYmVsXT1cIidVcGRhdGUgdGhlIGNvbnRhY3QgZGF0YSB3aXRoIHRoaXMgcmVzdW1lJ1wiXG4gICAgICAgICAgKGNsaWNrZWQpPVwib25SZXN1bWVDaGVja1NlbGVjdCgkZXZlbnQpXCJcbiAgICAgICAgPjwvc3ltcGhvbnktaW5wdXQtY2hlY2tib3g+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTEyIGNvbC1zbS0xMiBjb2wtbWQtMTIgY29sLWxnLTEyXCI+XG4gICAgICAgIDxzeW1waG9ueS1maWxlLXVwbG9hZC12MlxuICAgICAgICAgICpuZ0lmPVwiIXVwbG9hZFJlc3VtZU1vZGVsLmlzTG9hZGluZ1wiXG4gICAgICAgICAgW2ZpbGVVcGxvYWRNb2RlbF09XCJ1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWxcIlxuICAgICAgICAgIChjbG9zZUNsaWNrKT1cIm9uQ2xvc2VDbGljaygpXCJcbiAgICAgICAgPjwvc3ltcGhvbnktZmlsZS11cGxvYWQtdjI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZngtbXQtMzAgc2Z4LW1iLTMwXCIgKm5nSWY9XCJ1cGxvYWRSZXN1bWVNb2RlbC5pc0xvYWRpbmdcIj5cbiAgICAgICAgICA8c3ltcGhvbnktc2Z4LWxvYWRlcj48L3N5bXBob255LXNmeC1sb2FkZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvc2VjdGlvbj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJtb2RhbC1mb290ZXIgc2Z4LXB0LTMwIHNmeC1wYi00MCBzZngtcGwtMzAgc2Z4LXByLTMwXCI+XG4gICAgPHN5bXBob255LWJ1dHRvblxuICAgICAgKm5nSWY9XCJcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZENvbXBsZXRlIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRFcnJvciB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkSW5jb21wbGV0ZVxuICAgICAgXCJcbiAgICAgIFt0ZXh0XT1cIm1vZGVsLmJ0blNlY29uZGFyeVwiXG4gICAgICBbaXNTZWNvbmRhcnldPVwidHJ1ZVwiXG4gICAgICAoY2xpY2tlZCk9XCJvbkJ1dHRvbkNsaWNrKCRldmVudClcIlxuICAgID48L3N5bXBob255LWJ1dHRvbj5cbiAgICA8c3ltcGhvbnktYnV0dG9uXG4gICAgICAqbmdJZj1cIlxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkRmlsZSB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkQ29tcGxldGUgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZFByb2dyZXNzIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRFcnJvciB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkSW5jb21wbGV0ZVxuICAgICAgXCJcbiAgICAgIGNsYXNzPVwic2Z4LW1sLTIwXCJcbiAgICAgIFt0ZXh0XT1cIm1vZGVsLmJ0blByaW1hcnlcIlxuICAgICAgW2Rpc2FibGVkXT1cIlxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5pc0xvYWRpbmcgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZEZpbGUgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZFByb2dyZXNzIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRFcnJvciB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkSW5jb21wbGV0ZVxuICAgICAgXCJcbiAgICAgIChjbGlja2VkKT1cIm9uQnV0dG9uQ2xpY2soJGV2ZW50KVwiXG4gICAgPjwvc3ltcGhvbnktYnV0dG9uPlxuICA8L3NlY3Rpb24+XG48L2Rpdj5cbiJdfQ==
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXJlc3VtZS1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL29yZ2FuaXNtcy91cGxvYWQtcmVzdW1lLW1vZGFsL3VwbG9hZC1yZXN1bWUtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9vcmdhbmlzbXMvdXBsb2FkLXJlc3VtZS1tb2RhbC91cGxvYWQtcmVzdW1lLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7O0FBVS9FLE1BQU0sT0FBTywwQkFBMEI7SUFnQnJDO1FBWlUsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNqRCxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDM0MsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNoRCx5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ2xELHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDakQsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQzFDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUc3QyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7SUFHMUIsQ0FBQztJQUVoQixRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssR0FBRztZQUNYLEtBQUssRUFBRSxjQUFjO1lBQ3JCLFFBQVEsRUFBRSxrREFBa0Q7WUFDNUQsVUFBVSxFQUFFLE1BQU07WUFDbEIsWUFBWSxFQUFFLE1BQU07WUFDcEIsb0JBQW9CLEVBQUU7Z0JBQ3BCLFlBQVksRUFBRSxjQUFjO2dCQUM1QixZQUFZLEVBQUU7b0JBQ1o7d0JBQ0UsRUFBRSxFQUFFLENBQUM7d0JBQ0wsSUFBSSxFQUFFLGNBQWM7d0JBQ3BCLEtBQUssRUFBRSxjQUFjO3FCQUN0QjtvQkFDRDt3QkFDRSxFQUFFLEVBQUUsQ0FBQzt3QkFDTCxJQUFJLEVBQUUsUUFBUTt3QkFDZCxLQUFLLEVBQUUsUUFBUTtxQkFDaEI7b0JBQ0Q7d0JBQ0UsRUFBRSxFQUFFLENBQUM7d0JBQ0wsSUFBSSxFQUFFLE9BQU87d0JBQ2IsS0FBSyxFQUFFLE9BQU87cUJBQ2Y7aUJBQ0Y7Z0JBQ0QsZ0JBQWdCLEVBQUUsZUFBZTthQUNsQztZQUNELGVBQWUsRUFBRSxJQUFJLENBQUMsaUJBQWlCO1NBQ3hDLENBQUM7UUFDRixJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUFDLGtCQUFrQixHQUFHO1lBQzFELE1BQU07WUFDTixPQUFPO1lBQ1AsTUFBTTtZQUNOLE1BQU07U0FDUCxDQUFDO1FBQ0YsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsWUFBWSxHQUFHLFFBQVEsQ0FBQztTQUN6RDtJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsSUFBWTtRQUN4QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQUs7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELGVBQWUsQ0FBQyxhQUF5QztRQUN2RCxJQUFJLGFBQWEsQ0FBQyxLQUFLLElBQUksUUFBUSxFQUFFO1lBQ25DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ3hDO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztTQUN6QztRQUNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxzQkFBMEM7UUFDNUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RCxDQUFDOzt1SEFyRlUsMEJBQTBCOzJHQUExQiwwQkFBMEIsaWJDVnZDLDYzR0FtRkE7MkZEekVhLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDRSw4QkFBOEI7MEVBSy9CLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVJLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFDRyxvQkFBb0I7c0JBQTdCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElucHV0Q2hlY2tib3hNb2RlbCB9IGZyb20gJy4uLy4uL2F0b21zL2lucHV0LWNoZWNrYm94L2lucHV0LWNoZWNrYm94Lm1vZGVsJztcbmltcG9ydCB7IElucHV0RHJvcGRvd25MaXN0SXRlbU1vZGVsIH0gZnJvbSAnLi4vLi4vYXRvbXMvaW5wdXQtZHJvcGRvd24vaW5wdXQtZHJvcGRvd24tbGlzdC1pdGVtLm1vZGVsJztcbmltcG9ydCB7IFVwbG9hZFJlc3VtZU1vZGFsTW9kZWwgfSBmcm9tICcuL3VwbG9hZC1yZXN1bWUtbW9kYWwubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzeW1waG9ueS11cGxvYWQtcmVzdW1lLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VwbG9hZC1yZXN1bWUtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi91cGxvYWQtcmVzdW1lLW1vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFVwbG9hZFJlc3VtZU1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgdXBsb2FkUmVzdW1lTW9kZWw6IFVwbG9hZFJlc3VtZU1vZGFsTW9kZWw7XG4gIEBJbnB1dCgpIGlzTG9hZGluZzogYm9vbGVhbjtcblxuICBAT3V0cHV0KCkgY2xvc2VVcGxvYWRDb21wbGV0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgYnV0dG9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgY2xvc2VCdXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBkb2NUeXBlRHJvcGRvd0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgdXBkYXRlUmVzdW1lQ2hlY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgZmlsZUNsb3NlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBnZXRGaWxlRGV0YWlscyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwdWJsaWMgbW9kZWw6IGFueTtcbiAgcHVibGljIGlzUmVzdW1lU2VsZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGZpbGU6IEZpbGU7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubW9kZWwgPSB7XG4gICAgICB0aXRsZTogJ0FkZCBkb2N1bWVudCcsXG4gICAgICBzdWJUaXRsZTogJ0F0dGFjaCBhIC5ydGYsIC5kb2N4LCAudHh0IG9yIC5wZGYgZmlsZSB1cHRvIDJNQicsXG4gICAgICBidG5QcmltYXJ5OiAnU2F2ZScsXG4gICAgICBidG5TZWNvbmRhcnk6ICdCYWNrJyxcbiAgICAgIGRvY3VtZW50VHlwZURyb3Bkb3duOiB7XG4gICAgICAgIHNlbGVjdGVkTmFtZTogJ0NvdmVyIGxldHRlcicsXG4gICAgICAgIGRyb3Bkb3duTGlzdDogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAxLFxuICAgICAgICAgICAgbmFtZTogJ0NvdmVyIGxldHRlcicsXG4gICAgICAgICAgICB2YWx1ZTogJ0NvdmVyIGxldHRlcicsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogMixcbiAgICAgICAgICAgIG5hbWU6ICdSZXN1bWUnLFxuICAgICAgICAgICAgdmFsdWU6ICdSZXN1bWUnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6IDMsXG4gICAgICAgICAgICBuYW1lOiAnT3RoZXInLFxuICAgICAgICAgICAgdmFsdWU6ICdPdGhlcicsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgY29tcG9uZW50SGVhZGluZzogJ0RvY3VtZW50IFR5cGUnLFxuICAgICAgfSxcbiAgICAgIGZpbGVVcGxvYWRNb2RlbDogdGhpcy51cGxvYWRSZXN1bWVNb2RlbCxcbiAgICB9O1xuICAgIHRoaXMudXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLmZpbGVGb3JtYXRBY2NlcHRlZCA9IFtcbiAgICAgICcucnRmJyxcbiAgICAgICcuZG9jeCcsXG4gICAgICAnLnR4dCcsXG4gICAgICAnLnBkZicsXG4gICAgXTtcbiAgICBpZiAodGhpcy51cGxvYWRSZXN1bWVNb2RlbD8uaXNSZXN1bWUpIHtcbiAgICAgIHRoaXMubW9kZWwuZG9jdW1lbnRUeXBlRHJvcGRvd24uc2VsZWN0ZWROYW1lID0gJ1Jlc3VtZSc7XG4gICAgfVxuICB9XG5cbiAgb25CdXR0b25DbGljayh0ZXh0OiBzdHJpbmcpIHtcbiAgICB0aGlzLmJ1dHRvbkNsaWNrZWQuZW1pdCh0ZXh0KTtcbiAgfVxuXG4gIG9uQ2xvc2VDbGljaygpIHtcbiAgICB0aGlzLmNsb3NlQnV0dG9uQ2xpY2tlZC5lbWl0KCk7XG4gIH1cblxuICBvbkZpbGVDbG9zZUNsaWNrKCkge1xuICAgIHRoaXMuZmlsZUNsb3NlQ2xpY2suZW1pdCgpO1xuICB9XG5cbiAgb25GaWxlVXBsb2FkKGV2ZW50KSB7XG4gICAgdGhpcy5nZXRGaWxlRGV0YWlscy5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG9uRG9jVHlwZVNlbGVjdChzZWxlY3RlZE1vZGVsOiBJbnB1dERyb3Bkb3duTGlzdEl0ZW1Nb2RlbCkge1xuICAgIGlmIChzZWxlY3RlZE1vZGVsLnZhbHVlID09ICdSZXN1bWUnKSB7XG4gICAgICB0aGlzLnVwbG9hZFJlc3VtZU1vZGVsLmlzUmVzdW1lID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51cGxvYWRSZXN1bWVNb2RlbC5pc1Jlc3VtZSA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmRvY1R5cGVEcm9wZG93Q2hhbmdlLmVtaXQoc2VsZWN0ZWRNb2RlbC52YWx1ZSk7XG4gIH1cblxuICBvblJlc3VtZUNoZWNrU2VsZWN0KHVwZGF0ZVJlc3VtZUNoZWNrRXZlbnQ6IElucHV0Q2hlY2tib3hNb2RlbCkge1xuICAgIHRoaXMudXBkYXRlUmVzdW1lQ2hlY2tlZC5lbWl0KHVwZGF0ZVJlc3VtZUNoZWNrRXZlbnQubGFiZWwpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2Z4IHNmeC1tb2RhbFwiICpuZ0lmPVwidXBsb2FkUmVzdW1lTW9kZWwgJiYgbW9kZWxcIj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJtb2RhbC1oZWFkZXIgc2Z4LXAtMzAgc2Z4LXB0LTQwXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtOCBjb2wtc20tOCBjb2wtbWQtOCBjb2wtbGctOFwiPlxuICAgICAgICAgIDxzeW1waG9ueS1oNCBbdGV4dF09XCJtb2RlbC50aXRsZVwiPjwvc3ltcGhvbnktaDQ+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNmeC1tdC0xNVwiPlxuICAgICAgICAgICAgPHN5bXBob255LXBhcmFncmFwaCBbdGV4dF09XCJtb2RlbC5zdWJUaXRsZVwiPjwvc3ltcGhvbnktcGFyYWdyYXBoPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy00IGNvbC1zbS00IGNvbC1tZC00IGNvbC1sZy00XCI+XG4gICAgICAgICAgPHN5bXBob255LWljb25cbiAgICAgICAgICAgIGNsYXNzPVwicHVsbC1yaWdodFwiXG4gICAgICAgICAgICBbaWNvbl09XCInc2ktY2xvc2UtbW9kYWwnXCJcbiAgICAgICAgICAgIChjbGlja2VkKT1cIm9uQ2xvc2VDbGljaygpXCJcbiAgICAgICAgICA+PC9zeW1waG9ueS1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L3NlY3Rpb24+XG4gIDxzZWN0aW9uIGNsYXNzPVwibW9kYWwtYm9keSBzZngtcC0zMFwiPlxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtMTIgY29sLXNtLTYgY29sLW1kLTYgY29sLWxnLTZcIj5cbiAgICAgICAgPHN5bXBob255LWlucHV0LWRyb3Bkb3duXG4gICAgICAgICAgKm5nSWY9XCIhdXBsb2FkUmVzdW1lTW9kZWwuaXNMb2FkaW5nXCJcbiAgICAgICAgICBbaW5wdXREcm9wZG93bkxpc3RNb2RlbF09XCJtb2RlbC5kb2N1bWVudFR5cGVEcm9wZG93blwiXG4gICAgICAgICAgKHNlbGVjdEl0ZW0pPVwib25Eb2NUeXBlU2VsZWN0KCRldmVudClcIlxuICAgICAgICA+PC9zeW1waG9ueS1pbnB1dC1kcm9wZG93bj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMiBjb2wtc20tNiBjb2wtbWQtNiBjb2wtbGctNiBzZngtbXQtMzNcIj5cbiAgICAgICAgPHN5bXBob255LWlucHV0LWNoZWNrYm94XG4gICAgICAgICAgKm5nSWY9XCJ1cGxvYWRSZXN1bWVNb2RlbC5pc1Jlc3VtZVwiXG4gICAgICAgICAgW2xhYmVsXT1cIidVcGRhdGUgdGhlIGNvbnRhY3QgZGF0YSB3aXRoIHRoaXMgcmVzdW1lJ1wiXG4gICAgICAgICAgKGNsaWNrZWQpPVwib25SZXN1bWVDaGVja1NlbGVjdCgkZXZlbnQpXCJcbiAgICAgICAgPjwvc3ltcGhvbnktaW5wdXQtY2hlY2tib3g+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTEyIGNvbC1zbS0xMiBjb2wtbWQtMTIgY29sLWxnLTEyXCI+XG4gICAgICAgIDxzeW1waG9ueS1maWxlLXVwbG9hZC12MlxuICAgICAgICAgICpuZ0lmPVwiIXVwbG9hZFJlc3VtZU1vZGVsLmlzTG9hZGluZ1wiXG4gICAgICAgICAgW2ZpbGVVcGxvYWRNb2RlbF09XCJ1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWxcIlxuICAgICAgICAgIChjbG9zZUNsaWNrKT1cIm9uQ2xvc2VDbGljaygpXCJcbiAgICAgICAgICAoZ2V0RmlsZURldGFpbHMpPVwib25GaWxlVXBsb2FkKCRldmVudClcIlxuICAgICAgICA+PC9zeW1waG9ueS1maWxlLXVwbG9hZC12Mj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNmeC1tdC0zMCBzZngtbWItMzBcIiAqbmdJZj1cInVwbG9hZFJlc3VtZU1vZGVsLmlzTG9hZGluZ1wiPlxuICAgICAgICAgIDxzeW1waG9ueS1zZngtbG9hZGVyPjwvc3ltcGhvbnktc2Z4LWxvYWRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9zZWN0aW9uPlxuICA8c2VjdGlvbiBjbGFzcz1cIm1vZGFsLWZvb3RlciBzZngtcHQtMzAgc2Z4LXBiLTQwIHNmeC1wbC0zMCBzZngtcHItMzBcIj5cbiAgICA8c3ltcGhvbnktYnV0dG9uXG4gICAgICAqbmdJZj1cIlxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkQ29tcGxldGUgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZEVycm9yIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRJbmNvbXBsZXRlXG4gICAgICBcIlxuICAgICAgW3RleHRdPVwibW9kZWwuYnRuU2Vjb25kYXJ5XCJcbiAgICAgIFtpc1NlY29uZGFyeV09XCJ0cnVlXCJcbiAgICAgIChjbGlja2VkKT1cIm9uQnV0dG9uQ2xpY2soJGV2ZW50KVwiXG4gICAgPjwvc3ltcGhvbnktYnV0dG9uPlxuICAgIDxzeW1waG9ueS1idXR0b25cbiAgICAgICpuZ0lmPVwiXG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRGaWxlIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRDb21wbGV0ZSB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkUHJvZ3Jlc3MgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZEVycm9yIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRJbmNvbXBsZXRlXG4gICAgICBcIlxuICAgICAgY2xhc3M9XCJzZngtbWwtMjBcIlxuICAgICAgW3RleHRdPVwibW9kZWwuYnRuUHJpbWFyeVwiXG4gICAgICBbZGlzYWJsZWRdPVwiXG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmlzTG9hZGluZyB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkRmlsZSB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkUHJvZ3Jlc3MgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZEVycm9yIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRJbmNvbXBsZXRlXG4gICAgICBcIlxuICAgICAgKGNsaWNrZWQpPVwib25CdXR0b25DbGljaygkZXZlbnQpXCJcbiAgICA+PC9zeW1waG9ueS1idXR0b24+XG4gIDwvc2VjdGlvbj5cbjwvZGl2PlxuIl19
|
|
@@ -17,6 +17,7 @@ export class UploadResumeModalComponent {
|
|
|
17
17
|
this.docTypeDropdowChange = new EventEmitter();
|
|
18
18
|
this.updateResumeChecked = new EventEmitter();
|
|
19
19
|
this.fileCloseClick = new EventEmitter();
|
|
20
|
+
this.getFileDetails = new EventEmitter();
|
|
20
21
|
this.isResumeSelected = false;
|
|
21
22
|
}
|
|
22
23
|
ngOnInit() {
|
|
@@ -67,6 +68,9 @@ export class UploadResumeModalComponent {
|
|
|
67
68
|
onFileCloseClick() {
|
|
68
69
|
this.fileCloseClick.emit();
|
|
69
70
|
}
|
|
71
|
+
onFileUpload(event) {
|
|
72
|
+
this.getFileDetails.emit(event);
|
|
73
|
+
}
|
|
70
74
|
onDocTypeSelect(selectedModel) {
|
|
71
75
|
if (selectedModel.value == 'Resume') {
|
|
72
76
|
this.uploadResumeModel.isResume = true;
|
|
@@ -81,10 +85,10 @@ export class UploadResumeModalComponent {
|
|
|
81
85
|
}
|
|
82
86
|
}
|
|
83
87
|
UploadResumeModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: UploadResumeModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
-
UploadResumeModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: UploadResumeModalComponent, selector: "symphony-upload-resume-modal", inputs: { uploadResumeModel: "uploadResumeModel", isLoading: "isLoading" }, outputs: { closeUploadComplete: "closeUploadComplete", buttonClicked: "buttonClicked", closeButtonClicked: "closeButtonClicked", docTypeDropdowChange: "docTypeDropdowChange", updateResumeChecked: "updateResumeChecked", fileCloseClick: "fileCloseClick" }, ngImport: i0, template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"], components: [{ type: i1.H4Component, selector: "symphony-h4", inputs: ["text", "isSecondary"] }, { type: i2.ParagraphComponent, selector: "symphony-paragraph", inputs: ["text", "isSecondary"] }, { type: i3.IconComponent, selector: "symphony-icon", inputs: ["icon", "isSecondary", "size", "iconColor"], outputs: ["clicked"] }, { type: i4.InputDropdownComponent, selector: "symphony-input-dropdown", inputs: ["inputDropdownListModel", "disableBtn", "isInverse", "isRequired"], outputs: ["selectItem", "clearSelection"] }, { type: i5.InputCheckboxComponent, selector: "symphony-input-checkbox", inputs: ["isActive", "label", "isRequired"], outputs: ["clicked"] }, { type: i6.FileUploadV2Component, selector: "symphony-file-upload-v2" }, { type: i7.SfxLoaderComponent, selector: "symphony-sfx-loader", inputs: ["leftStyle", "message"] }, { type: i8.ButtonComponent, selector: "symphony-button", inputs: ["text", "disabled", "isSecondary", "isInverse"], outputs: ["clicked"] }], directives: [{ type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
88
|
+
UploadResumeModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: UploadResumeModalComponent, selector: "symphony-upload-resume-modal", inputs: { uploadResumeModel: "uploadResumeModel", isLoading: "isLoading" }, outputs: { closeUploadComplete: "closeUploadComplete", buttonClicked: "buttonClicked", closeButtonClicked: "closeButtonClicked", docTypeDropdowChange: "docTypeDropdowChange", updateResumeChecked: "updateResumeChecked", fileCloseClick: "fileCloseClick", getFileDetails: "getFileDetails" }, ngImport: i0, template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n (getFileDetails)=\"onFileUpload($event)\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"], components: [{ type: i1.H4Component, selector: "symphony-h4", inputs: ["text", "isSecondary"] }, { type: i2.ParagraphComponent, selector: "symphony-paragraph", inputs: ["text", "isSecondary"] }, { type: i3.IconComponent, selector: "symphony-icon", inputs: ["icon", "isSecondary", "size", "iconColor"], outputs: ["clicked"] }, { type: i4.InputDropdownComponent, selector: "symphony-input-dropdown", inputs: ["inputDropdownListModel", "disableBtn", "isInverse", "isRequired"], outputs: ["selectItem", "clearSelection"] }, { type: i5.InputCheckboxComponent, selector: "symphony-input-checkbox", inputs: ["isActive", "label", "isRequired"], outputs: ["clicked"] }, { type: i6.FileUploadV2Component, selector: "symphony-file-upload-v2" }, { type: i7.SfxLoaderComponent, selector: "symphony-sfx-loader", inputs: ["leftStyle", "message"] }, { type: i8.ButtonComponent, selector: "symphony-button", inputs: ["text", "disabled", "isSecondary", "isInverse"], outputs: ["clicked"] }], directives: [{ type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
85
89
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: UploadResumeModalComponent, decorators: [{
|
|
86
90
|
type: Component,
|
|
87
|
-
args: [{ selector: 'symphony-upload-resume-modal', template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"] }]
|
|
91
|
+
args: [{ selector: 'symphony-upload-resume-modal', template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n (getFileDetails)=\"onFileUpload($event)\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"] }]
|
|
88
92
|
}], ctorParameters: function () { return []; }, propDecorators: { uploadResumeModel: [{
|
|
89
93
|
type: Input
|
|
90
94
|
}], isLoading: [{
|
|
@@ -101,5 +105,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
101
105
|
type: Output
|
|
102
106
|
}], fileCloseClick: [{
|
|
103
107
|
type: Output
|
|
108
|
+
}], getFileDetails: [{
|
|
109
|
+
type: Output
|
|
104
110
|
}] } });
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXJlc3VtZS1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL29yZ2FuaXNtcy91cGxvYWQtcmVzdW1lLW1vZGFsL3VwbG9hZC1yZXN1bWUtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9vcmdhbmlzbXMvdXBsb2FkLXJlc3VtZS1tb2RhbC91cGxvYWQtcmVzdW1lLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7O0FBVS9FLE1BQU0sT0FBTywwQkFBMEI7SUFjckM7UUFWVSx3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ2pELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMzQyx1QkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ2hELHlCQUFvQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDbEQsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNqRCxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFHN0MscUJBQWdCLEdBQVksS0FBSyxDQUFDO0lBRTFCLENBQUM7SUFFaEIsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxLQUFLLEVBQUUsY0FBYztZQUNyQixRQUFRLEVBQUUsa0RBQWtEO1lBQzVELFVBQVUsRUFBRSxNQUFNO1lBQ2xCLFlBQVksRUFBRSxNQUFNO1lBQ3BCLG9CQUFvQixFQUFFO2dCQUNwQixZQUFZLEVBQUUsY0FBYztnQkFDNUIsWUFBWSxFQUFFO29CQUNaO3dCQUNFLEVBQUUsRUFBRSxDQUFDO3dCQUNMLElBQUksRUFBRSxjQUFjO3dCQUNwQixLQUFLLEVBQUUsY0FBYztxQkFDdEI7b0JBQ0Q7d0JBQ0UsRUFBRSxFQUFFLENBQUM7d0JBQ0wsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsS0FBSyxFQUFFLFFBQVE7cUJBQ2hCO29CQUNEO3dCQUNFLEVBQUUsRUFBRSxDQUFDO3dCQUNMLElBQUksRUFBRSxPQUFPO3dCQUNiLEtBQUssRUFBRSxPQUFPO3FCQUNmO2lCQUNGO2dCQUNELGdCQUFnQixFQUFFLGVBQWU7YUFDbEM7WUFDRCxlQUFlLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtTQUN4QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsR0FBRztZQUMxRCxNQUFNO1lBQ04sT0FBTztZQUNQLE1BQU07WUFDTixNQUFNO1NBQ1AsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLFFBQVEsRUFBRTtZQUNwQyxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLFlBQVksR0FBRyxRQUFRLENBQUM7U0FDekQ7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVk7UUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGVBQWUsQ0FBQyxhQUF5QztRQUN2RCxJQUFJLGFBQWEsQ0FBQyxLQUFLLElBQUksUUFBUSxFQUFFO1lBQ25DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ3hDO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztTQUN6QztRQUNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxzQkFBMEM7UUFDNUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RCxDQUFDOzt1SEEvRVUsMEJBQTBCOzJHQUExQiwwQkFBMEIsK1lDVnZDLHcwR0FrRkE7MkZEeEVhLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDRSw4QkFBOEI7MEVBSy9CLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVJLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFDRyxvQkFBb0I7c0JBQTdCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbnB1dENoZWNrYm94TW9kZWwgfSBmcm9tICcuLi8uLi9hdG9tcy9pbnB1dC1jaGVja2JveC9pbnB1dC1jaGVja2JveC5tb2RlbCc7XG5pbXBvcnQgeyBJbnB1dERyb3Bkb3duTGlzdEl0ZW1Nb2RlbCB9IGZyb20gJy4uLy4uL2F0b21zL2lucHV0LWRyb3Bkb3duL2lucHV0LWRyb3Bkb3duLWxpc3QtaXRlbS5tb2RlbCc7XG5pbXBvcnQgeyBVcGxvYWRSZXN1bWVNb2RhbE1vZGVsIH0gZnJvbSAnLi91cGxvYWQtcmVzdW1lLW1vZGFsLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3ltcGhvbnktdXBsb2FkLXJlc3VtZS1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi91cGxvYWQtcmVzdW1lLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdXBsb2FkLXJlc3VtZS1tb2RhbC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBVcGxvYWRSZXN1bWVNb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHVwbG9hZFJlc3VtZU1vZGVsOiBVcGxvYWRSZXN1bWVNb2RhbE1vZGVsO1xuICBASW5wdXQoKSBpc0xvYWRpbmc6IGJvb2xlYW47XG5cbiAgQE91dHB1dCgpIGNsb3NlVXBsb2FkQ29tcGxldGUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIGJ1dHRvbkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIGNsb3NlQnV0dG9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgZG9jVHlwZURyb3Bkb3dDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHVwZGF0ZVJlc3VtZUNoZWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIGZpbGVDbG9zZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHB1YmxpYyBtb2RlbDogYW55O1xuICBwdWJsaWMgaXNSZXN1bWVTZWxlY3RlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGVsID0ge1xuICAgICAgdGl0bGU6ICdBZGQgZG9jdW1lbnQnLFxuICAgICAgc3ViVGl0bGU6ICdBdHRhY2ggYSAucnRmLCAuZG9jeCwgLnR4dCBvciAucGRmIGZpbGUgdXB0byAyTUInLFxuICAgICAgYnRuUHJpbWFyeTogJ1NhdmUnLFxuICAgICAgYnRuU2Vjb25kYXJ5OiAnQmFjaycsXG4gICAgICBkb2N1bWVudFR5cGVEcm9wZG93bjoge1xuICAgICAgICBzZWxlY3RlZE5hbWU6ICdDb3ZlciBsZXR0ZXInLFxuICAgICAgICBkcm9wZG93bkxpc3Q6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogMSxcbiAgICAgICAgICAgIG5hbWU6ICdDb3ZlciBsZXR0ZXInLFxuICAgICAgICAgICAgdmFsdWU6ICdDb3ZlciBsZXR0ZXInLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6IDIsXG4gICAgICAgICAgICBuYW1lOiAnUmVzdW1lJyxcbiAgICAgICAgICAgIHZhbHVlOiAnUmVzdW1lJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAzLFxuICAgICAgICAgICAgbmFtZTogJ090aGVyJyxcbiAgICAgICAgICAgIHZhbHVlOiAnT3RoZXInLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGNvbXBvbmVudEhlYWRpbmc6ICdEb2N1bWVudCBUeXBlJyxcbiAgICAgIH0sXG4gICAgICBmaWxlVXBsb2FkTW9kZWw6IHRoaXMudXBsb2FkUmVzdW1lTW9kZWwsXG4gICAgfTtcbiAgICB0aGlzLnVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5maWxlRm9ybWF0QWNjZXB0ZWQgPSBbXG4gICAgICAnLnJ0ZicsXG4gICAgICAnLmRvY3gnLFxuICAgICAgJy50eHQnLFxuICAgICAgJy5wZGYnLFxuICAgIF07XG4gICAgaWYgKHRoaXMudXBsb2FkUmVzdW1lTW9kZWw/LmlzUmVzdW1lKSB7XG4gICAgICB0aGlzLm1vZGVsLmRvY3VtZW50VHlwZURyb3Bkb3duLnNlbGVjdGVkTmFtZSA9ICdSZXN1bWUnO1xuICAgIH1cbiAgfVxuXG4gIG9uQnV0dG9uQ2xpY2sodGV4dDogc3RyaW5nKSB7XG4gICAgdGhpcy5idXR0b25DbGlja2VkLmVtaXQodGV4dCk7XG4gIH1cblxuICBvbkNsb3NlQ2xpY2soKSB7XG4gICAgdGhpcy5jbG9zZUJ1dHRvbkNsaWNrZWQuZW1pdCgpO1xuICB9XG5cbiAgb25GaWxlQ2xvc2VDbGljaygpIHtcbiAgICB0aGlzLmZpbGVDbG9zZUNsaWNrLmVtaXQoKTtcbiAgfVxuXG4gIG9uRG9jVHlwZVNlbGVjdChzZWxlY3RlZE1vZGVsOiBJbnB1dERyb3Bkb3duTGlzdEl0ZW1Nb2RlbCkge1xuICAgIGlmIChzZWxlY3RlZE1vZGVsLnZhbHVlID09ICdSZXN1bWUnKSB7XG4gICAgICB0aGlzLnVwbG9hZFJlc3VtZU1vZGVsLmlzUmVzdW1lID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51cGxvYWRSZXN1bWVNb2RlbC5pc1Jlc3VtZSA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmRvY1R5cGVEcm9wZG93Q2hhbmdlLmVtaXQoc2VsZWN0ZWRNb2RlbC52YWx1ZSk7XG4gIH1cblxuICBvblJlc3VtZUNoZWNrU2VsZWN0KHVwZGF0ZVJlc3VtZUNoZWNrRXZlbnQ6IElucHV0Q2hlY2tib3hNb2RlbCkge1xuICAgIHRoaXMudXBkYXRlUmVzdW1lQ2hlY2tlZC5lbWl0KHVwZGF0ZVJlc3VtZUNoZWNrRXZlbnQubGFiZWwpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2Z4IHNmeC1tb2RhbFwiICpuZ0lmPVwidXBsb2FkUmVzdW1lTW9kZWwgJiYgbW9kZWxcIj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJtb2RhbC1oZWFkZXIgc2Z4LXAtMzAgc2Z4LXB0LTQwXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtOCBjb2wtc20tOCBjb2wtbWQtOCBjb2wtbGctOFwiPlxuICAgICAgICAgIDxzeW1waG9ueS1oNCBbdGV4dF09XCJtb2RlbC50aXRsZVwiPjwvc3ltcGhvbnktaDQ+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNmeC1tdC0xNVwiPlxuICAgICAgICAgICAgPHN5bXBob255LXBhcmFncmFwaCBbdGV4dF09XCJtb2RlbC5zdWJUaXRsZVwiPjwvc3ltcGhvbnktcGFyYWdyYXBoPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy00IGNvbC1zbS00IGNvbC1tZC00IGNvbC1sZy00XCI+XG4gICAgICAgICAgPHN5bXBob255LWljb25cbiAgICAgICAgICAgIGNsYXNzPVwicHVsbC1yaWdodFwiXG4gICAgICAgICAgICBbaWNvbl09XCInc2ktY2xvc2UtbW9kYWwnXCJcbiAgICAgICAgICAgIChjbGlja2VkKT1cIm9uQ2xvc2VDbGljaygpXCJcbiAgICAgICAgICA+PC9zeW1waG9ueS1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L3NlY3Rpb24+XG4gIDxzZWN0aW9uIGNsYXNzPVwibW9kYWwtYm9keSBzZngtcC0zMFwiPlxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtMTIgY29sLXNtLTYgY29sLW1kLTYgY29sLWxnLTZcIj5cbiAgICAgICAgPHN5bXBob255LWlucHV0LWRyb3Bkb3duXG4gICAgICAgICAgKm5nSWY9XCIhdXBsb2FkUmVzdW1lTW9kZWwuaXNMb2FkaW5nXCJcbiAgICAgICAgICBbaW5wdXREcm9wZG93bkxpc3RNb2RlbF09XCJtb2RlbC5kb2N1bWVudFR5cGVEcm9wZG93blwiXG4gICAgICAgICAgKHNlbGVjdEl0ZW0pPVwib25Eb2NUeXBlU2VsZWN0KCRldmVudClcIlxuICAgICAgICA+PC9zeW1waG9ueS1pbnB1dC1kcm9wZG93bj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMiBjb2wtc20tNiBjb2wtbWQtNiBjb2wtbGctNiBzZngtbXQtMzNcIj5cbiAgICAgICAgPHN5bXBob255LWlucHV0LWNoZWNrYm94XG4gICAgICAgICAgKm5nSWY9XCJ1cGxvYWRSZXN1bWVNb2RlbC5pc1Jlc3VtZVwiXG4gICAgICAgICAgW2xhYmVsXT1cIidVcGRhdGUgdGhlIGNvbnRhY3QgZGF0YSB3aXRoIHRoaXMgcmVzdW1lJ1wiXG4gICAgICAgICAgKGNsaWNrZWQpPVwib25SZXN1bWVDaGVja1NlbGVjdCgkZXZlbnQpXCJcbiAgICAgICAgPjwvc3ltcGhvbnktaW5wdXQtY2hlY2tib3g+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTEyIGNvbC1zbS0xMiBjb2wtbWQtMTIgY29sLWxnLTEyXCI+XG4gICAgICAgIDxzeW1waG9ueS1maWxlLXVwbG9hZC12MlxuICAgICAgICAgICpuZ0lmPVwiIXVwbG9hZFJlc3VtZU1vZGVsLmlzTG9hZGluZ1wiXG4gICAgICAgICAgW2ZpbGVVcGxvYWRNb2RlbF09XCJ1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWxcIlxuICAgICAgICAgIChjbG9zZUNsaWNrKT1cIm9uQ2xvc2VDbGljaygpXCJcbiAgICAgICAgPjwvc3ltcGhvbnktZmlsZS11cGxvYWQtdjI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZngtbXQtMzAgc2Z4LW1iLTMwXCIgKm5nSWY9XCJ1cGxvYWRSZXN1bWVNb2RlbC5pc0xvYWRpbmdcIj5cbiAgICAgICAgICA8c3ltcGhvbnktc2Z4LWxvYWRlcj48L3N5bXBob255LXNmeC1sb2FkZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvc2VjdGlvbj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJtb2RhbC1mb290ZXIgc2Z4LXB0LTMwIHNmeC1wYi00MCBzZngtcGwtMzAgc2Z4LXByLTMwXCI+XG4gICAgPHN5bXBob255LWJ1dHRvblxuICAgICAgKm5nSWY9XCJcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZENvbXBsZXRlIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRFcnJvciB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkSW5jb21wbGV0ZVxuICAgICAgXCJcbiAgICAgIFt0ZXh0XT1cIm1vZGVsLmJ0blNlY29uZGFyeVwiXG4gICAgICBbaXNTZWNvbmRhcnldPVwidHJ1ZVwiXG4gICAgICAoY2xpY2tlZCk9XCJvbkJ1dHRvbkNsaWNrKCRldmVudClcIlxuICAgID48L3N5bXBob255LWJ1dHRvbj5cbiAgICA8c3ltcGhvbnktYnV0dG9uXG4gICAgICAqbmdJZj1cIlxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkRmlsZSB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkQ29tcGxldGUgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZFByb2dyZXNzIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRFcnJvciB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkSW5jb21wbGV0ZVxuICAgICAgXCJcbiAgICAgIGNsYXNzPVwic2Z4LW1sLTIwXCJcbiAgICAgIFt0ZXh0XT1cIm1vZGVsLmJ0blByaW1hcnlcIlxuICAgICAgW2Rpc2FibGVkXT1cIlxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5pc0xvYWRpbmcgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZEZpbGUgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZFByb2dyZXNzIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRFcnJvciB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkSW5jb21wbGV0ZVxuICAgICAgXCJcbiAgICAgIChjbGlja2VkKT1cIm9uQnV0dG9uQ2xpY2soJGV2ZW50KVwiXG4gICAgPjwvc3ltcGhvbnktYnV0dG9uPlxuICA8L3NlY3Rpb24+XG48L2Rpdj5cbiJdfQ==
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXJlc3VtZS1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL29yZ2FuaXNtcy91cGxvYWQtcmVzdW1lLW1vZGFsL3VwbG9hZC1yZXN1bWUtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9vcmdhbmlzbXMvdXBsb2FkLXJlc3VtZS1tb2RhbC91cGxvYWQtcmVzdW1lLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7O0FBVS9FLE1BQU0sT0FBTywwQkFBMEI7SUFnQnJDO1FBWlUsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNqRCxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDM0MsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNoRCx5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ2xELHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDakQsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQzFDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUc3QyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7SUFHMUIsQ0FBQztJQUVoQixRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssR0FBRztZQUNYLEtBQUssRUFBRSxjQUFjO1lBQ3JCLFFBQVEsRUFBRSxrREFBa0Q7WUFDNUQsVUFBVSxFQUFFLE1BQU07WUFDbEIsWUFBWSxFQUFFLE1BQU07WUFDcEIsb0JBQW9CLEVBQUU7Z0JBQ3BCLFlBQVksRUFBRSxjQUFjO2dCQUM1QixZQUFZLEVBQUU7b0JBQ1o7d0JBQ0UsRUFBRSxFQUFFLENBQUM7d0JBQ0wsSUFBSSxFQUFFLGNBQWM7d0JBQ3BCLEtBQUssRUFBRSxjQUFjO3FCQUN0QjtvQkFDRDt3QkFDRSxFQUFFLEVBQUUsQ0FBQzt3QkFDTCxJQUFJLEVBQUUsUUFBUTt3QkFDZCxLQUFLLEVBQUUsUUFBUTtxQkFDaEI7b0JBQ0Q7d0JBQ0UsRUFBRSxFQUFFLENBQUM7d0JBQ0wsSUFBSSxFQUFFLE9BQU87d0JBQ2IsS0FBSyxFQUFFLE9BQU87cUJBQ2Y7aUJBQ0Y7Z0JBQ0QsZ0JBQWdCLEVBQUUsZUFBZTthQUNsQztZQUNELGVBQWUsRUFBRSxJQUFJLENBQUMsaUJBQWlCO1NBQ3hDLENBQUM7UUFDRixJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUFDLGtCQUFrQixHQUFHO1lBQzFELE1BQU07WUFDTixPQUFPO1lBQ1AsTUFBTTtZQUNOLE1BQU07U0FDUCxDQUFDO1FBQ0YsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsWUFBWSxHQUFHLFFBQVEsQ0FBQztTQUN6RDtJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsSUFBWTtRQUN4QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQUs7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELGVBQWUsQ0FBQyxhQUF5QztRQUN2RCxJQUFJLGFBQWEsQ0FBQyxLQUFLLElBQUksUUFBUSxFQUFFO1lBQ25DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ3hDO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztTQUN6QztRQUNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxzQkFBMEM7UUFDNUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RCxDQUFDOzt1SEFyRlUsMEJBQTBCOzJHQUExQiwwQkFBMEIsaWJDVnZDLDYzR0FtRkE7MkZEekVhLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDRSw4QkFBOEI7MEVBSy9CLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVJLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFDRyxvQkFBb0I7c0JBQTdCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElucHV0Q2hlY2tib3hNb2RlbCB9IGZyb20gJy4uLy4uL2F0b21zL2lucHV0LWNoZWNrYm94L2lucHV0LWNoZWNrYm94Lm1vZGVsJztcbmltcG9ydCB7IElucHV0RHJvcGRvd25MaXN0SXRlbU1vZGVsIH0gZnJvbSAnLi4vLi4vYXRvbXMvaW5wdXQtZHJvcGRvd24vaW5wdXQtZHJvcGRvd24tbGlzdC1pdGVtLm1vZGVsJztcbmltcG9ydCB7IFVwbG9hZFJlc3VtZU1vZGFsTW9kZWwgfSBmcm9tICcuL3VwbG9hZC1yZXN1bWUtbW9kYWwubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzeW1waG9ueS11cGxvYWQtcmVzdW1lLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VwbG9hZC1yZXN1bWUtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi91cGxvYWQtcmVzdW1lLW1vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFVwbG9hZFJlc3VtZU1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgdXBsb2FkUmVzdW1lTW9kZWw6IFVwbG9hZFJlc3VtZU1vZGFsTW9kZWw7XG4gIEBJbnB1dCgpIGlzTG9hZGluZzogYm9vbGVhbjtcblxuICBAT3V0cHV0KCkgY2xvc2VVcGxvYWRDb21wbGV0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgYnV0dG9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgY2xvc2VCdXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBkb2NUeXBlRHJvcGRvd0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgdXBkYXRlUmVzdW1lQ2hlY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgZmlsZUNsb3NlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBnZXRGaWxlRGV0YWlscyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwdWJsaWMgbW9kZWw6IGFueTtcbiAgcHVibGljIGlzUmVzdW1lU2VsZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGZpbGU6IEZpbGU7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubW9kZWwgPSB7XG4gICAgICB0aXRsZTogJ0FkZCBkb2N1bWVudCcsXG4gICAgICBzdWJUaXRsZTogJ0F0dGFjaCBhIC5ydGYsIC5kb2N4LCAudHh0IG9yIC5wZGYgZmlsZSB1cHRvIDJNQicsXG4gICAgICBidG5QcmltYXJ5OiAnU2F2ZScsXG4gICAgICBidG5TZWNvbmRhcnk6ICdCYWNrJyxcbiAgICAgIGRvY3VtZW50VHlwZURyb3Bkb3duOiB7XG4gICAgICAgIHNlbGVjdGVkTmFtZTogJ0NvdmVyIGxldHRlcicsXG4gICAgICAgIGRyb3Bkb3duTGlzdDogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAxLFxuICAgICAgICAgICAgbmFtZTogJ0NvdmVyIGxldHRlcicsXG4gICAgICAgICAgICB2YWx1ZTogJ0NvdmVyIGxldHRlcicsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogMixcbiAgICAgICAgICAgIG5hbWU6ICdSZXN1bWUnLFxuICAgICAgICAgICAgdmFsdWU6ICdSZXN1bWUnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6IDMsXG4gICAgICAgICAgICBuYW1lOiAnT3RoZXInLFxuICAgICAgICAgICAgdmFsdWU6ICdPdGhlcicsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgY29tcG9uZW50SGVhZGluZzogJ0RvY3VtZW50IFR5cGUnLFxuICAgICAgfSxcbiAgICAgIGZpbGVVcGxvYWRNb2RlbDogdGhpcy51cGxvYWRSZXN1bWVNb2RlbCxcbiAgICB9O1xuICAgIHRoaXMudXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLmZpbGVGb3JtYXRBY2NlcHRlZCA9IFtcbiAgICAgICcucnRmJyxcbiAgICAgICcuZG9jeCcsXG4gICAgICAnLnR4dCcsXG4gICAgICAnLnBkZicsXG4gICAgXTtcbiAgICBpZiAodGhpcy51cGxvYWRSZXN1bWVNb2RlbD8uaXNSZXN1bWUpIHtcbiAgICAgIHRoaXMubW9kZWwuZG9jdW1lbnRUeXBlRHJvcGRvd24uc2VsZWN0ZWROYW1lID0gJ1Jlc3VtZSc7XG4gICAgfVxuICB9XG5cbiAgb25CdXR0b25DbGljayh0ZXh0OiBzdHJpbmcpIHtcbiAgICB0aGlzLmJ1dHRvbkNsaWNrZWQuZW1pdCh0ZXh0KTtcbiAgfVxuXG4gIG9uQ2xvc2VDbGljaygpIHtcbiAgICB0aGlzLmNsb3NlQnV0dG9uQ2xpY2tlZC5lbWl0KCk7XG4gIH1cblxuICBvbkZpbGVDbG9zZUNsaWNrKCkge1xuICAgIHRoaXMuZmlsZUNsb3NlQ2xpY2suZW1pdCgpO1xuICB9XG5cbiAgb25GaWxlVXBsb2FkKGV2ZW50KSB7XG4gICAgdGhpcy5nZXRGaWxlRGV0YWlscy5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG9uRG9jVHlwZVNlbGVjdChzZWxlY3RlZE1vZGVsOiBJbnB1dERyb3Bkb3duTGlzdEl0ZW1Nb2RlbCkge1xuICAgIGlmIChzZWxlY3RlZE1vZGVsLnZhbHVlID09ICdSZXN1bWUnKSB7XG4gICAgICB0aGlzLnVwbG9hZFJlc3VtZU1vZGVsLmlzUmVzdW1lID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51cGxvYWRSZXN1bWVNb2RlbC5pc1Jlc3VtZSA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmRvY1R5cGVEcm9wZG93Q2hhbmdlLmVtaXQoc2VsZWN0ZWRNb2RlbC52YWx1ZSk7XG4gIH1cblxuICBvblJlc3VtZUNoZWNrU2VsZWN0KHVwZGF0ZVJlc3VtZUNoZWNrRXZlbnQ6IElucHV0Q2hlY2tib3hNb2RlbCkge1xuICAgIHRoaXMudXBkYXRlUmVzdW1lQ2hlY2tlZC5lbWl0KHVwZGF0ZVJlc3VtZUNoZWNrRXZlbnQubGFiZWwpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2Z4IHNmeC1tb2RhbFwiICpuZ0lmPVwidXBsb2FkUmVzdW1lTW9kZWwgJiYgbW9kZWxcIj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJtb2RhbC1oZWFkZXIgc2Z4LXAtMzAgc2Z4LXB0LTQwXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtOCBjb2wtc20tOCBjb2wtbWQtOCBjb2wtbGctOFwiPlxuICAgICAgICAgIDxzeW1waG9ueS1oNCBbdGV4dF09XCJtb2RlbC50aXRsZVwiPjwvc3ltcGhvbnktaDQ+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNmeC1tdC0xNVwiPlxuICAgICAgICAgICAgPHN5bXBob255LXBhcmFncmFwaCBbdGV4dF09XCJtb2RlbC5zdWJUaXRsZVwiPjwvc3ltcGhvbnktcGFyYWdyYXBoPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy00IGNvbC1zbS00IGNvbC1tZC00IGNvbC1sZy00XCI+XG4gICAgICAgICAgPHN5bXBob255LWljb25cbiAgICAgICAgICAgIGNsYXNzPVwicHVsbC1yaWdodFwiXG4gICAgICAgICAgICBbaWNvbl09XCInc2ktY2xvc2UtbW9kYWwnXCJcbiAgICAgICAgICAgIChjbGlja2VkKT1cIm9uQ2xvc2VDbGljaygpXCJcbiAgICAgICAgICA+PC9zeW1waG9ueS1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L3NlY3Rpb24+XG4gIDxzZWN0aW9uIGNsYXNzPVwibW9kYWwtYm9keSBzZngtcC0zMFwiPlxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtMTIgY29sLXNtLTYgY29sLW1kLTYgY29sLWxnLTZcIj5cbiAgICAgICAgPHN5bXBob255LWlucHV0LWRyb3Bkb3duXG4gICAgICAgICAgKm5nSWY9XCIhdXBsb2FkUmVzdW1lTW9kZWwuaXNMb2FkaW5nXCJcbiAgICAgICAgICBbaW5wdXREcm9wZG93bkxpc3RNb2RlbF09XCJtb2RlbC5kb2N1bWVudFR5cGVEcm9wZG93blwiXG4gICAgICAgICAgKHNlbGVjdEl0ZW0pPVwib25Eb2NUeXBlU2VsZWN0KCRldmVudClcIlxuICAgICAgICA+PC9zeW1waG9ueS1pbnB1dC1kcm9wZG93bj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMiBjb2wtc20tNiBjb2wtbWQtNiBjb2wtbGctNiBzZngtbXQtMzNcIj5cbiAgICAgICAgPHN5bXBob255LWlucHV0LWNoZWNrYm94XG4gICAgICAgICAgKm5nSWY9XCJ1cGxvYWRSZXN1bWVNb2RlbC5pc1Jlc3VtZVwiXG4gICAgICAgICAgW2xhYmVsXT1cIidVcGRhdGUgdGhlIGNvbnRhY3QgZGF0YSB3aXRoIHRoaXMgcmVzdW1lJ1wiXG4gICAgICAgICAgKGNsaWNrZWQpPVwib25SZXN1bWVDaGVja1NlbGVjdCgkZXZlbnQpXCJcbiAgICAgICAgPjwvc3ltcGhvbnktaW5wdXQtY2hlY2tib3g+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTEyIGNvbC1zbS0xMiBjb2wtbWQtMTIgY29sLWxnLTEyXCI+XG4gICAgICAgIDxzeW1waG9ueS1maWxlLXVwbG9hZC12MlxuICAgICAgICAgICpuZ0lmPVwiIXVwbG9hZFJlc3VtZU1vZGVsLmlzTG9hZGluZ1wiXG4gICAgICAgICAgW2ZpbGVVcGxvYWRNb2RlbF09XCJ1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWxcIlxuICAgICAgICAgIChjbG9zZUNsaWNrKT1cIm9uQ2xvc2VDbGljaygpXCJcbiAgICAgICAgICAoZ2V0RmlsZURldGFpbHMpPVwib25GaWxlVXBsb2FkKCRldmVudClcIlxuICAgICAgICA+PC9zeW1waG9ueS1maWxlLXVwbG9hZC12Mj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNmeC1tdC0zMCBzZngtbWItMzBcIiAqbmdJZj1cInVwbG9hZFJlc3VtZU1vZGVsLmlzTG9hZGluZ1wiPlxuICAgICAgICAgIDxzeW1waG9ueS1zZngtbG9hZGVyPjwvc3ltcGhvbnktc2Z4LWxvYWRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9zZWN0aW9uPlxuICA8c2VjdGlvbiBjbGFzcz1cIm1vZGFsLWZvb3RlciBzZngtcHQtMzAgc2Z4LXBiLTQwIHNmeC1wbC0zMCBzZngtcHItMzBcIj5cbiAgICA8c3ltcGhvbnktYnV0dG9uXG4gICAgICAqbmdJZj1cIlxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkQ29tcGxldGUgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZEVycm9yIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRJbmNvbXBsZXRlXG4gICAgICBcIlxuICAgICAgW3RleHRdPVwibW9kZWwuYnRuU2Vjb25kYXJ5XCJcbiAgICAgIFtpc1NlY29uZGFyeV09XCJ0cnVlXCJcbiAgICAgIChjbGlja2VkKT1cIm9uQnV0dG9uQ2xpY2soJGV2ZW50KVwiXG4gICAgPjwvc3ltcGhvbnktYnV0dG9uPlxuICAgIDxzeW1waG9ueS1idXR0b25cbiAgICAgICpuZ0lmPVwiXG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRGaWxlIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRDb21wbGV0ZSB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkUHJvZ3Jlc3MgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZEVycm9yIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRJbmNvbXBsZXRlXG4gICAgICBcIlxuICAgICAgY2xhc3M9XCJzZngtbWwtMjBcIlxuICAgICAgW3RleHRdPVwibW9kZWwuYnRuUHJpbWFyeVwiXG4gICAgICBbZGlzYWJsZWRdPVwiXG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmlzTG9hZGluZyB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkRmlsZSB8fFxuICAgICAgICB1cGxvYWRSZXN1bWVNb2RlbC5maWxlVXBsb2FkTW9kZWwubmF2aWdhdGlvbi5zaG93VXBsb2FkUHJvZ3Jlc3MgfHxcbiAgICAgICAgdXBsb2FkUmVzdW1lTW9kZWwuZmlsZVVwbG9hZE1vZGVsLm5hdmlnYXRpb24uc2hvd1VwbG9hZEVycm9yIHx8XG4gICAgICAgIHVwbG9hZFJlc3VtZU1vZGVsLmZpbGVVcGxvYWRNb2RlbC5uYXZpZ2F0aW9uLnNob3dVcGxvYWRJbmNvbXBsZXRlXG4gICAgICBcIlxuICAgICAgKGNsaWNrZWQpPVwib25CdXR0b25DbGljaygkZXZlbnQpXCJcbiAgICA+PC9zeW1waG9ueS1idXR0b24+XG4gIDwvc2VjdGlvbj5cbjwvZGl2PlxuIl19
|
|
@@ -2440,6 +2440,7 @@ class UploadResumeModalComponent {
|
|
|
2440
2440
|
this.docTypeDropdowChange = new EventEmitter();
|
|
2441
2441
|
this.updateResumeChecked = new EventEmitter();
|
|
2442
2442
|
this.fileCloseClick = new EventEmitter();
|
|
2443
|
+
this.getFileDetails = new EventEmitter();
|
|
2443
2444
|
this.isResumeSelected = false;
|
|
2444
2445
|
}
|
|
2445
2446
|
ngOnInit() {
|
|
@@ -2491,6 +2492,9 @@ class UploadResumeModalComponent {
|
|
|
2491
2492
|
onFileCloseClick() {
|
|
2492
2493
|
this.fileCloseClick.emit();
|
|
2493
2494
|
}
|
|
2495
|
+
onFileUpload(event) {
|
|
2496
|
+
this.getFileDetails.emit(event);
|
|
2497
|
+
}
|
|
2494
2498
|
onDocTypeSelect(selectedModel) {
|
|
2495
2499
|
if (selectedModel.value == 'Resume') {
|
|
2496
2500
|
this.uploadResumeModel.isResume = true;
|
|
@@ -2505,10 +2509,10 @@ class UploadResumeModalComponent {
|
|
|
2505
2509
|
}
|
|
2506
2510
|
}
|
|
2507
2511
|
UploadResumeModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: UploadResumeModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2508
|
-
UploadResumeModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: UploadResumeModalComponent, selector: "symphony-upload-resume-modal", inputs: { uploadResumeModel: "uploadResumeModel", isLoading: "isLoading" }, outputs: { closeUploadComplete: "closeUploadComplete", buttonClicked: "buttonClicked", closeButtonClicked: "closeButtonClicked", docTypeDropdowChange: "docTypeDropdowChange", updateResumeChecked: "updateResumeChecked", fileCloseClick: "fileCloseClick" }, ngImport: i0, template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"], components: [{ type: H4Component, selector: "symphony-h4", inputs: ["text", "isSecondary"] }, { type: ParagraphComponent, selector: "symphony-paragraph", inputs: ["text", "isSecondary"] }, { type: IconComponent, selector: "symphony-icon", inputs: ["icon", "isSecondary", "size", "iconColor"], outputs: ["clicked"] }, { type: InputDropdownComponent, selector: "symphony-input-dropdown", inputs: ["inputDropdownListModel", "disableBtn", "isInverse", "isRequired"], outputs: ["selectItem", "clearSelection"] }, { type: InputCheckboxComponent, selector: "symphony-input-checkbox", inputs: ["isActive", "label", "isRequired"], outputs: ["clicked"] }, { type: FileUploadV2Component, selector: "symphony-file-upload-v2" }, { type: SfxLoaderComponent, selector: "symphony-sfx-loader", inputs: ["leftStyle", "message"] }, { type: ButtonComponent, selector: "symphony-button", inputs: ["text", "disabled", "isSecondary", "isInverse"], outputs: ["clicked"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
2512
|
+
UploadResumeModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: UploadResumeModalComponent, selector: "symphony-upload-resume-modal", inputs: { uploadResumeModel: "uploadResumeModel", isLoading: "isLoading" }, outputs: { closeUploadComplete: "closeUploadComplete", buttonClicked: "buttonClicked", closeButtonClicked: "closeButtonClicked", docTypeDropdowChange: "docTypeDropdowChange", updateResumeChecked: "updateResumeChecked", fileCloseClick: "fileCloseClick", getFileDetails: "getFileDetails" }, ngImport: i0, template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n (getFileDetails)=\"onFileUpload($event)\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"], components: [{ type: H4Component, selector: "symphony-h4", inputs: ["text", "isSecondary"] }, { type: ParagraphComponent, selector: "symphony-paragraph", inputs: ["text", "isSecondary"] }, { type: IconComponent, selector: "symphony-icon", inputs: ["icon", "isSecondary", "size", "iconColor"], outputs: ["clicked"] }, { type: InputDropdownComponent, selector: "symphony-input-dropdown", inputs: ["inputDropdownListModel", "disableBtn", "isInverse", "isRequired"], outputs: ["selectItem", "clearSelection"] }, { type: InputCheckboxComponent, selector: "symphony-input-checkbox", inputs: ["isActive", "label", "isRequired"], outputs: ["clicked"] }, { type: FileUploadV2Component, selector: "symphony-file-upload-v2" }, { type: SfxLoaderComponent, selector: "symphony-sfx-loader", inputs: ["leftStyle", "message"] }, { type: ButtonComponent, selector: "symphony-button", inputs: ["text", "disabled", "isSecondary", "isInverse"], outputs: ["clicked"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
2509
2513
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: UploadResumeModalComponent, decorators: [{
|
|
2510
2514
|
type: Component,
|
|
2511
|
-
args: [{ selector: 'symphony-upload-resume-modal', template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"] }]
|
|
2515
|
+
args: [{ selector: 'symphony-upload-resume-modal', template: "<div class=\"sfx sfx-modal\" *ngIf=\"uploadResumeModel && model\">\n <section class=\"modal-header sfx-p-30 sfx-pt-40\">\n <div class=\"modal-title\">\n <div class=\"row\">\n <div class=\"col-xs-8 col-sm-8 col-md-8 col-lg-8\">\n <symphony-h4 [text]=\"model.title\"></symphony-h4>\n <div class=\"sfx-mt-15\">\n <symphony-paragraph [text]=\"model.subTitle\"></symphony-paragraph>\n </div>\n </div>\n <div class=\"col-xs-4 col-sm-4 col-md-4 col-lg-4\">\n <symphony-icon\n class=\"pull-right\"\n [icon]=\"'si-close-modal'\"\n (clicked)=\"onCloseClick()\"\n ></symphony-icon>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-body sfx-p-30\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6\">\n <symphony-input-dropdown\n *ngIf=\"!uploadResumeModel.isLoading\"\n [inputDropdownListModel]=\"model.documentTypeDropdown\"\n (selectItem)=\"onDocTypeSelect($event)\"\n ></symphony-input-dropdown>\n </div>\n <div class=\"col-xs-12 col-sm-6 col-md-6 col-lg-6 sfx-mt-33\">\n <symphony-input-checkbox\n *ngIf=\"uploadResumeModel.isResume\"\n [label]=\"'Update the contact data with this resume'\"\n (clicked)=\"onResumeCheckSelect($event)\"\n ></symphony-input-checkbox>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-xs-12 col-sm-12 col-md-12 col-lg-12\">\n <symphony-file-upload-v2\n *ngIf=\"!uploadResumeModel.isLoading\"\n [fileUploadModel]=\"uploadResumeModel.fileUploadModel\"\n (closeClick)=\"onCloseClick()\"\n (getFileDetails)=\"onFileUpload($event)\"\n ></symphony-file-upload-v2>\n <div class=\"sfx-mt-30 sfx-mb-30\" *ngIf=\"uploadResumeModel.isLoading\">\n <symphony-sfx-loader></symphony-sfx-loader>\n </div>\n </div>\n </div>\n </section>\n <section class=\"modal-footer sfx-pt-30 sfx-pb-40 sfx-pl-30 sfx-pr-30\">\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n [text]=\"model.btnSecondary\"\n [isSecondary]=\"true\"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n <symphony-button\n *ngIf=\"\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadComplete ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n class=\"sfx-ml-20\"\n [text]=\"model.btnPrimary\"\n [disabled]=\"\n uploadResumeModel.isLoading ||\n uploadResumeModel.fileUploadModel.navigation.showUploadFile ||\n uploadResumeModel.fileUploadModel.navigation.showUploadProgress ||\n uploadResumeModel.fileUploadModel.navigation.showUploadError ||\n uploadResumeModel.fileUploadModel.navigation.showUploadIncomplete\n \"\n (clicked)=\"onButtonClick($event)\"\n ></symphony-button>\n </section>\n</div>\n", styles: [".sfx-mt-33{margin-top:33px}\n"] }]
|
|
2512
2516
|
}], ctorParameters: function () { return []; }, propDecorators: { uploadResumeModel: [{
|
|
2513
2517
|
type: Input
|
|
2514
2518
|
}], isLoading: [{
|
|
@@ -2525,6 +2529,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
2525
2529
|
type: Output
|
|
2526
2530
|
}], fileCloseClick: [{
|
|
2527
2531
|
type: Output
|
|
2532
|
+
}], getFileDetails: [{
|
|
2533
|
+
type: Output
|
|
2528
2534
|
}] } });
|
|
2529
2535
|
|
|
2530
2536
|
class UploadResumeModalModule {
|