iptdevs-design-system 2.7.157 → 2.7.159
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/cod/cod-documents-section/cod-documents-section.component.mjs +23 -8
- package/fesm2015/iptdevs-design-system.mjs +22 -7
- package/fesm2015/iptdevs-design-system.mjs.map +1 -1
- package/fesm2020/iptdevs-design-system.mjs +22 -7
- package/fesm2020/iptdevs-design-system.mjs.map +1 -1
- package/lib/cod/cod-documents-section/cod-documents-section.component.d.ts +1 -1
- package/package.json +1 -1
|
@@ -26,9 +26,24 @@ export class CodDocumentsSectionComponent {
|
|
|
26
26
|
showIdDocument() {
|
|
27
27
|
console.log('abrir modal de cargar pdf');
|
|
28
28
|
}
|
|
29
|
-
catchDocument(event) {
|
|
29
|
+
catchDocument(event, visible) {
|
|
30
30
|
this.numDoc++;
|
|
31
|
-
|
|
31
|
+
switch (visible) {
|
|
32
|
+
case 'docStudent':
|
|
33
|
+
this.docStudent = true;
|
|
34
|
+
break;
|
|
35
|
+
case 'docAgreement':
|
|
36
|
+
this.docAgreement = true;
|
|
37
|
+
break;
|
|
38
|
+
case 'docParent':
|
|
39
|
+
this.docParent = true;
|
|
40
|
+
break;
|
|
41
|
+
case 'docConfanorte':
|
|
42
|
+
this.docConfanorte = true;
|
|
43
|
+
break;
|
|
44
|
+
default:
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
32
47
|
const fileCatched = event.target.files[0];
|
|
33
48
|
let reader = new FileReader();
|
|
34
49
|
reader.onload = (e) => {
|
|
@@ -40,9 +55,9 @@ export class CodDocumentsSectionComponent {
|
|
|
40
55
|
}
|
|
41
56
|
filesUploaded() {
|
|
42
57
|
Swal.fire({
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
58
|
+
title: '<p style="font-family: Poppins">Perfect</p>',
|
|
59
|
+
html: '<p style="font-family: Poppins">Archivos subidos correctamente.</p>',
|
|
60
|
+
icon: 'success',
|
|
46
61
|
});
|
|
47
62
|
this.documentsForm.controls['doc_student'].setValue(null);
|
|
48
63
|
this.documentsForm.controls['doc_agreement'].setValue(null);
|
|
@@ -55,9 +70,9 @@ export class CodDocumentsSectionComponent {
|
|
|
55
70
|
}
|
|
56
71
|
}
|
|
57
72
|
CodDocumentsSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CodDocumentsSectionComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
-
CodDocumentsSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CodDocumentsSectionComponent, selector: "ipt-cod-documents-section", ngImport: i0, template: "<div class=\"container flex flex-column bg-white border-round-2xl p-3 container animate__animated animate__fadeInUp\">\n\n <span class=\"bg-primary p-2 border-round mb-2 w-auto text-lg font-semibold\">Documentos del COD</span>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Estudiante'\"\n [control]=\"documentsForm.controls['doc_student']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docStudent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_student')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Convenio'\"\n [control]=\"documentsForm.controls['doc_agreement']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docAgreement\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_agreement')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Acudiente'\"\n [control]=\"documentsForm.controls['doc_parent']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docParent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_parent')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Confanorte'\"\n [control]=\"documentsForm.controls['doc_confanorte']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docConfanorte\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_confanorte')\"></button>\n </div>\n </div>\n </div>\n\n <hr>\n <button pButton pRipple type=\"button\" icon=\"pi pi-plus\" label=\"Agregar\" class=\"p-button-rounded p-button-sm ml-auto mt-2\" (click)=\"filesUploaded()\"></button>\n\n</div>\n", styles: [".document_item{transition:.15s;gap:1rem;max-height:150px}.document_item:hover{cursor:pointer;box-shadow:#64646f33 0 7px 29px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { kind: "directive", type: i4.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }] });
|
|
73
|
+
CodDocumentsSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CodDocumentsSectionComponent, selector: "ipt-cod-documents-section", ngImport: i0, template: "<div class=\"container flex flex-column bg-white border-round-2xl p-3 container animate__animated animate__fadeInUp\">\n\n <span class=\"bg-primary p-2 border-round mb-2 w-auto text-lg font-semibold\">Documentos del COD</span>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Estudiante'\"\n [control]=\"documentsForm.controls['doc_student']\"\n (change)=\"catchDocument($event, docStudent)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docStudent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_student')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Convenio'\"\n [control]=\"documentsForm.controls['doc_agreement']\"\n (change)=\"catchDocument($event, docAgreement )\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docAgreement\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_agreement')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Acudiente'\"\n [control]=\"documentsForm.controls['doc_parent']\"\n (change)=\"catchDocument($event, docParent)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docParent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_parent')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Confanorte'\"\n [control]=\"documentsForm.controls['doc_confanorte']\"\n (change)=\"catchDocument($event, docConfanorte)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docConfanorte\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_confanorte')\"></button>\n </div>\n </div>\n </div>\n\n <hr>\n <button pButton pRipple type=\"button\" icon=\"pi pi-plus\" label=\"Agregar\" class=\"p-button-rounded p-button-sm ml-auto mt-2\" (click)=\"filesUploaded()\"></button>\n\n</div>\n", styles: [".document_item{transition:.15s;gap:1rem;max-height:150px}.document_item:hover{cursor:pointer;box-shadow:#64646f33 0 7px 29px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { kind: "directive", type: i4.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }] });
|
|
59
74
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CodDocumentsSectionComponent, decorators: [{
|
|
60
75
|
type: Component,
|
|
61
|
-
args: [{ selector: 'ipt-cod-documents-section', template: "<div class=\"container flex flex-column bg-white border-round-2xl p-3 container animate__animated animate__fadeInUp\">\n\n <span class=\"bg-primary p-2 border-round mb-2 w-auto text-lg font-semibold\">Documentos del COD</span>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Estudiante'\"\n [control]=\"documentsForm.controls['doc_student']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docStudent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_student')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Convenio'\"\n [control]=\"documentsForm.controls['doc_agreement']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docAgreement\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_agreement')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Acudiente'\"\n [control]=\"documentsForm.controls['doc_parent']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docParent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_parent')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Confanorte'\"\n [control]=\"documentsForm.controls['doc_confanorte']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docConfanorte\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_confanorte')\"></button>\n </div>\n </div>\n </div>\n\n <hr>\n <button pButton pRipple type=\"button\" icon=\"pi pi-plus\" label=\"Agregar\" class=\"p-button-rounded p-button-sm ml-auto mt-2\" (click)=\"filesUploaded()\"></button>\n\n</div>\n", styles: [".document_item{transition:.15s;gap:1rem;max-height:150px}.document_item:hover{cursor:pointer;box-shadow:#64646f33 0 7px 29px}\n"] }]
|
|
76
|
+
args: [{ selector: 'ipt-cod-documents-section', template: "<div class=\"container flex flex-column bg-white border-round-2xl p-3 container animate__animated animate__fadeInUp\">\n\n <span class=\"bg-primary p-2 border-round mb-2 w-auto text-lg font-semibold\">Documentos del COD</span>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Estudiante'\"\n [control]=\"documentsForm.controls['doc_student']\"\n (change)=\"catchDocument($event, docStudent)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docStudent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_student')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Convenio'\"\n [control]=\"documentsForm.controls['doc_agreement']\"\n (change)=\"catchDocument($event, docAgreement )\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docAgreement\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_agreement')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Acudiente'\"\n [control]=\"documentsForm.controls['doc_parent']\"\n (change)=\"catchDocument($event, docParent)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docParent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_parent')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Confanorte'\"\n [control]=\"documentsForm.controls['doc_confanorte']\"\n (change)=\"catchDocument($event, docConfanorte)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docConfanorte\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_confanorte')\"></button>\n </div>\n </div>\n </div>\n\n <hr>\n <button pButton pRipple type=\"button\" icon=\"pi pi-plus\" label=\"Agregar\" class=\"p-button-rounded p-button-sm ml-auto mt-2\" (click)=\"filesUploaded()\"></button>\n\n</div>\n", styles: [".document_item{transition:.15s;gap:1rem;max-height:150px}.document_item:hover{cursor:pointer;box-shadow:#64646f33 0 7px 29px}\n"] }]
|
|
62
77
|
}], ctorParameters: function () { return [{ type: i1.FormBuilder }]; } });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kLWRvY3VtZW50cy1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb2QvY29kLWRvY3VtZW50cy1zZWN0aW9uL2NvZC1kb2N1bWVudHMtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL2NvZC1kb2N1bWVudHMtc2VjdGlvbi9jb2QtZG9jdW1lbnRzLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQzs7Ozs7O0FBTy9CLE1BQU0sT0FBTyw0QkFBNEI7SUFXdkMsWUFBb0IsRUFBZTtRQUFmLE9BQUUsR0FBRixFQUFFLENBQWE7UUFUbkMsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUM5QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBQy9CLFVBQUssR0FBVSxFQUFFLENBQUM7UUFHbEIsV0FBTSxHQUFXLENBQUMsQ0FBQyxDQUFDO1FBR2xCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDakMsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUM1QyxhQUFhLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDbkIsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2hCLGNBQWMsRUFBRSxDQUFDLEVBQUUsQ0FBQztTQUNyQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUSxLQUFVLENBQUM7SUFFbkIsY0FBYztRQUNaLE9BQU8sQ0FBQyxHQUFHLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQVU7UUFDdEIsSUFBSSxDQUFDLE1BQU0sRUFBRyxDQUFDO1FBQ2YsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUMsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUM5QixNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUU7WUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNqQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hDLENBQUMsQ0FBQztRQUNGLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsTUFBTSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBRTtZQUNULE9BQU8sRUFBRSw2Q0FBNkM7WUFDdEQsTUFBTSxFQUFFLHFFQUFxRTtZQUM3RSxNQUFNLEVBQUUsU0FBUztTQUNsQixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQVk7UUFDMUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQzFCLENBQUM7O3lIQXREVSw0QkFBNEI7NkdBQTVCLDRCQUE0QixpRUNUekMsMnlIQTRFQTsyRkRuRWEsNEJBQTRCO2tCQUx4QyxTQUFTOytCQUNFLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IFN3YWwgZnJvbSAnc3dlZXRhbGVydDInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpcHQtY29kLWRvY3VtZW50cy1zZWN0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvZC1kb2N1bWVudHMtc2VjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvZC1kb2N1bWVudHMtc2VjdGlvbi5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENvZERvY3VtZW50c1NlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBkb2N1bWVudHNGb3JtITogRm9ybUdyb3VwO1xuICBkb2NTdHVkZW50OiBib29sZWFuID0gZmFsc2U7XG4gIGRvY0FncmVlbWVudDogYm9vbGVhbiA9IGZhbHNlO1xuICBkb2NQYXJlbnQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZG9jQ29uZmFub3J0ZTogYm9vbGVhbiA9IGZhbHNlO1xuICBpZFBkZjogYW55W10gPSBbXTtcbiAgY29kZSE6IG51bWJlcjtcbiAgcGRmU3JjOiBhbnk7XG4gIG51bURvYzogbnVtYmVyID0gLTE7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIpIHtcbiAgICB0aGlzLmRvY3VtZW50c0Zvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIGRvY19zdHVkZW50OiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSwgW11dLFxuICAgICAgZG9jX2FncmVlbWVudDogWycnXSxcbiAgICAgIGRvY19wYXJlbnQ6IFsnJ10sXG4gICAgICBkb2NfY29uZmFub3J0ZTogWycnXSxcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge31cblxuICBzaG93SWREb2N1bWVudCgpIHtcbiAgICBjb25zb2xlLmxvZygnYWJyaXIgbW9kYWwgZGUgY2FyZ2FyIHBkZicpO1xuICB9XG5cbiAgY2F0Y2hEb2N1bWVudChldmVudDogYW55KSB7XG4gICAgdGhpcy5udW1Eb2MgKys7XG4gICAgdGhpcy5kb2NTdHVkZW50ID0gdHJ1ZTtcbiAgICBjb25zdCBmaWxlQ2F0Y2hlZCA9IGV2ZW50LnRhcmdldC5maWxlc1swXTtcbiAgICBsZXQgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICByZWFkZXIub25sb2FkID0gKGU6IGFueSkgPT4ge1xuICAgICAgdGhpcy5pZFBkZi5wdXNoKGUudGFyZ2V0LnJlc3VsdCk7XG4gICAgICB0aGlzLnBkZlNyYyA9IHRoaXMuaWRQZGZbdGhpcy5udW1Eb2NdO1xuICAgIH07XG4gICAgdGhpcy5jb2RlID0gMDtcbiAgICByZWFkZXIucmVhZEFzQXJyYXlCdWZmZXIoZmlsZUNhdGNoZWQpO1xuICB9XG5cbiAgZmlsZXNVcGxvYWRlZCAoKSB7XG4gICAgU3dhbC5maXJlICh7XG4gICAgICAndGl0bGUnOiAnPHAgc3R5bGU9XCJmb250LWZhbWlseTogUG9wcGluc1wiPlBlcmZlY3Q8L3A+JyxcbiAgICAgICdodG1sJzogJzxwIHN0eWxlPVwiZm9udC1mYW1pbHk6IFBvcHBpbnNcIj5BcmNoaXZvcyBzdWJpZG9zIGNvcnJlY3RhbWVudGUuPC9wPicsXG4gICAgICAnaWNvbic6ICdzdWNjZXNzJyxcbiAgICB9KTtcbiAgICB0aGlzLmRvY3VtZW50c0Zvcm0uY29udHJvbHNbJ2RvY19zdHVkZW50J10uc2V0VmFsdWUobnVsbCk7XG4gICAgdGhpcy5kb2N1bWVudHNGb3JtLmNvbnRyb2xzWydkb2NfYWdyZWVtZW50J10uc2V0VmFsdWUobnVsbCk7XG4gICAgdGhpcy5kb2N1bWVudHNGb3JtLmNvbnRyb2xzWydkb2NfcGFyZW50J10uc2V0VmFsdWUobnVsbCk7XG4gICAgdGhpcy5kb2N1bWVudHNGb3JtLmNvbnRyb2xzWydkb2NfY29uZmFub3J0ZSddLnNldFZhbHVlKG51bGwpO1xuICB9XG5cbiAgY2xlYXJEb2NTdHVkZW50KHR5cGVEb2M6IGFueSl7XG4gICAgdGhpcy5kb2N1bWVudHNGb3JtLmNvbnRyb2xzW3R5cGVEb2NdLnNldFZhbHVlKG51bGwpO1xuICAgIHRoaXMuZG9jU3R1ZGVudCA9IGZhbHNlO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyIGZsZXggZmxleC1jb2x1bW4gYmctd2hpdGUgYm9yZGVyLXJvdW5kLTJ4bCBwLTMgY29udGFpbmVyIGFuaW1hdGVfX2FuaW1hdGVkIGFuaW1hdGVfX2ZhZGVJblVwXCI+XG5cbiAgPHNwYW4gY2xhc3M9XCJiZy1wcmltYXJ5IHAtMiBib3JkZXItcm91bmQgbWItMiB3LWF1dG8gdGV4dC1sZyBmb250LXNlbWlib2xkXCI+RG9jdW1lbnRvcyBkZWwgQ09EPC9zcGFuPlxuXG4gIDxkaXYgY2xhc3M9XCJkb2N1bWVudF9pdGVtIGZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIHAtMiBib3JkZXItcm91bmRcIj5cbiAgICA8ZGl2IGNsYXNzPVwibWwtYXV0b1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImlucCB3LTEwXCI+XG4gICAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgW2lucHV0VHlwZV09XCInZmlsZSdcIlxuICAgICAgICBbcGxhY2VIb2xkZXJdPVwiJ0RvYy4gRXN0dWRpYW50ZSdcIlxuICAgICAgICBbY29udHJvbF09XCJkb2N1bWVudHNGb3JtLmNvbnRyb2xzWydkb2Nfc3R1ZGVudCddXCJcbiAgICAgICAgKGNoYW5nZSk9XCJjYXRjaERvY3VtZW50KCRldmVudClcIlxuICAgICAgICA+PC9pcHQtaW5wdXQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJidG4gZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGZsZXgtd3JhcCB3LTggcC0yXCIgKm5nSWY9XCJkb2NTdHVkZW50XCI+XG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiBwUmlwcGxlIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktZXllXCIgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXNtIG1sLWF1dG8gbXItMVwiIChjbGljayk9XCJzaG93SWREb2N1bWVudCgpXCI+PC9idXR0b24+XG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiBwUmlwcGxlIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktdHJhc2hcIiBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tc20gcC1idXR0b24tZGFuZ2VyIG1sLWF1dG9cIiAoY2xpY2spPVwiY2xlYXJEb2NTdHVkZW50KCdkb2Nfc3R1ZGVudCcpXCI+PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImRvY3VtZW50X2l0ZW0gZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIgcC0yIGJvcmRlci1yb3VuZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJtbC1hdXRvXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wIHctMTBcIj5cbiAgICAgICAgPGlwdC1pbnB1dFxuICAgICAgICBbaW5wdXRUeXBlXT1cIidmaWxlJ1wiXG4gICAgICAgIFtwbGFjZUhvbGRlcl09XCInRG9jLiBDb252ZW5pbydcIlxuICAgICAgICBbY29udHJvbF09XCJkb2N1bWVudHNGb3JtLmNvbnRyb2xzWydkb2NfYWdyZWVtZW50J11cIlxuICAgICAgICAoY2hhbmdlKT1cImNhdGNoRG9jdW1lbnQoJGV2ZW50KVwiXG4gICAgICAgID48L2lwdC1pbnB1dD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImJ0biBmbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgZmxleC13cmFwIHctOCBwLTJcIiAqbmdJZj1cImRvY0FncmVlbWVudFwiPlxuICAgICAgICA8YnV0dG9uIHBCdXR0b24gcFJpcHBsZSB0eXBlPVwiYnV0dG9uXCIgaWNvbj1cInBpIHBpLWV5ZVwiIGNsYXNzPVwicC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1zbSBtbC1hdXRvIG1yLTFcIiAoY2xpY2spPVwic2hvd0lkRG9jdW1lbnQoKVwiPjwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIHBCdXR0b24gcFJpcHBsZSB0eXBlPVwiYnV0dG9uXCIgaWNvbj1cInBpIHBpLXRyYXNoXCIgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXNtIHAtYnV0dG9uLWRhbmdlciBtbC1hdXRvXCIgKGNsaWNrKT1cImNsZWFyRG9jU3R1ZGVudCgnZG9jX2FncmVlbWVudCcpXCI+PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImRvY3VtZW50X2l0ZW0gZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIgcC0yIGJvcmRlci1yb3VuZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJtbC1hdXRvXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wIHctMTBcIj5cbiAgICAgICAgPGlwdC1pbnB1dFxuICAgICAgICBbaW5wdXRUeXBlXT1cIidmaWxlJ1wiXG4gICAgICAgIFtwbGFjZUhvbGRlcl09XCInRG9jLiBBY3VkaWVudGUnXCJcbiAgICAgICAgW2NvbnRyb2xdPVwiZG9jdW1lbnRzRm9ybS5jb250cm9sc1snZG9jX3BhcmVudCddXCJcbiAgICAgICAgKGNoYW5nZSk9XCJjYXRjaERvY3VtZW50KCRldmVudClcIlxuICAgICAgICA+PC9pcHQtaW5wdXQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJidG4gZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGZsZXgtd3JhcCB3LTggcC0yXCIgKm5nSWY9XCJkb2NQYXJlbnRcIj5cbiAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIGljb249XCJwaSBwaS1leWVcIiBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tc20gbWwtYXV0byBtci0xXCIgKGNsaWNrKT1cInNob3dJZERvY3VtZW50KClcIj48L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIGljb249XCJwaSBwaS10cmFzaFwiIGNsYXNzPVwicC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1zbSBwLWJ1dHRvbi1kYW5nZXIgbWwtYXV0b1wiIChjbGljayk9XCJjbGVhckRvY1N0dWRlbnQoJ2RvY19wYXJlbnQnKVwiPjwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJkb2N1bWVudF9pdGVtIGZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIHAtMiBib3JkZXItcm91bmRcIj5cbiAgICA8ZGl2IGNsYXNzPVwibWwtYXV0b1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImlucCB3LTEwXCI+XG4gICAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgW2lucHV0VHlwZV09XCInZmlsZSdcIlxuICAgICAgICBbcGxhY2VIb2xkZXJdPVwiJ0RvYy4gQ29uZmFub3J0ZSdcIlxuICAgICAgICBbY29udHJvbF09XCJkb2N1bWVudHNGb3JtLmNvbnRyb2xzWydkb2NfY29uZmFub3J0ZSddXCJcbiAgICAgICAgKGNoYW5nZSk9XCJjYXRjaERvY3VtZW50KCRldmVudClcIlxuICAgICAgICA+PC9pcHQtaW5wdXQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJidG4gZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGZsZXgtd3JhcCB3LTggcC0yXCIgKm5nSWY9XCJkb2NDb25mYW5vcnRlXCI+XG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiBwUmlwcGxlIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktZXllXCIgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXNtIG1sLWF1dG8gbXItMVwiIChjbGljayk9XCJzaG93SWREb2N1bWVudCgpXCI+PC9idXR0b24+XG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiBwUmlwcGxlIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktdHJhc2hcIiBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tc20gcC1idXR0b24tZGFuZ2VyIG1sLWF1dG9cIiAoY2xpY2spPVwiY2xlYXJEb2NTdHVkZW50KCdkb2NfY29uZmFub3J0ZScpXCI+PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGhyPlxuICA8YnV0dG9uIHBCdXR0b24gcFJpcHBsZSB0eXBlPVwiYnV0dG9uXCIgaWNvbj1cInBpIHBpLXBsdXNcIiBsYWJlbD1cIkFncmVnYXJcIiBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tc20gbWwtYXV0byBtdC0yXCIgKGNsaWNrKT1cImZpbGVzVXBsb2FkZWQoKVwiPjwvYnV0dG9uPlxuXG48L2Rpdj5cbiJdfQ==
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kLWRvY3VtZW50cy1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb2QvY29kLWRvY3VtZW50cy1zZWN0aW9uL2NvZC1kb2N1bWVudHMtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL2NvZC1kb2N1bWVudHMtc2VjdGlvbi9jb2QtZG9jdW1lbnRzLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQzs7Ozs7O0FBTy9CLE1BQU0sT0FBTyw0QkFBNEI7SUFXdkMsWUFBb0IsRUFBZTtRQUFmLE9BQUUsR0FBRixFQUFFLENBQWE7UUFUbkMsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUM5QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBQy9CLFVBQUssR0FBVSxFQUFFLENBQUM7UUFHbEIsV0FBTSxHQUFXLENBQUMsQ0FBQyxDQUFDO1FBR2xCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDakMsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUM1QyxhQUFhLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDbkIsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2hCLGNBQWMsRUFBRSxDQUFDLEVBQUUsQ0FBQztTQUNyQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUSxLQUFVLENBQUM7SUFFbkIsY0FBYztRQUNaLE9BQU8sQ0FBQyxHQUFHLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQVUsRUFBRSxPQUFZO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUVkLFFBQVEsT0FBTyxFQUFFO1lBQ2YsS0FBSyxZQUFZO2dCQUNmLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUN2QixNQUFNO1lBQ1IsS0FBSyxjQUFjO2dCQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztnQkFDekIsTUFBTTtZQUNSLEtBQUssV0FBVztnQkFDZCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztnQkFDdEIsTUFBTTtZQUNSLEtBQUssZUFBZTtnQkFDbEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7Z0JBQzFCLE1BQU07WUFFUjtnQkFDRSxNQUFNO1NBQ1Q7UUFFRCxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQyxJQUFJLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQzlCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRTtZQUN6QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7UUFDZCxNQUFNLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ1IsS0FBSyxFQUFFLDZDQUE2QztZQUNwRCxJQUFJLEVBQUUscUVBQXFFO1lBQzNFLElBQUksRUFBRSxTQUFTO1NBQ2hCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxlQUFlLENBQUMsT0FBWTtRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDMUIsQ0FBQzs7eUhBeEVVLDRCQUE0Qjs2R0FBNUIsNEJBQTRCLGlFQ1R6QyxnMkhBNEVBOzJGRG5FYSw0QkFBNEI7a0JBTHhDLFNBQVM7K0JBQ0UsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgU3dhbCBmcm9tICdzd2VldGFsZXJ0Mic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lwdC1jb2QtZG9jdW1lbnRzLXNlY3Rpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vY29kLWRvY3VtZW50cy1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29kLWRvY3VtZW50cy1zZWN0aW9uLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29kRG9jdW1lbnRzU2VjdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGRvY3VtZW50c0Zvcm0hOiBGb3JtR3JvdXA7XG4gIGRvY1N0dWRlbnQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZG9jQWdyZWVtZW50OiBib29sZWFuID0gZmFsc2U7XG4gIGRvY1BhcmVudDogYm9vbGVhbiA9IGZhbHNlO1xuICBkb2NDb25mYW5vcnRlOiBib29sZWFuID0gZmFsc2U7XG4gIGlkUGRmOiBhbnlbXSA9IFtdO1xuICBjb2RlITogbnVtYmVyO1xuICBwZGZTcmM6IGFueTtcbiAgbnVtRG9jOiBudW1iZXIgPSAtMTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZiOiBGb3JtQnVpbGRlcikge1xuICAgIHRoaXMuZG9jdW1lbnRzRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgZG9jX3N0dWRlbnQ6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdLCBbXV0sXG4gICAgICBkb2NfYWdyZWVtZW50OiBbJyddLFxuICAgICAgZG9jX3BhcmVudDogWycnXSxcbiAgICAgIGRvY19jb25mYW5vcnRlOiBbJyddLFxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIHNob3dJZERvY3VtZW50KCkge1xuICAgIGNvbnNvbGUubG9nKCdhYnJpciBtb2RhbCBkZSBjYXJnYXIgcGRmJyk7XG4gIH1cblxuICBjYXRjaERvY3VtZW50KGV2ZW50OiBhbnksIHZpc2libGU6IGFueSkge1xuICAgIHRoaXMubnVtRG9jKys7XG5cbiAgICBzd2l0Y2ggKHZpc2libGUpIHtcbiAgICAgIGNhc2UgJ2RvY1N0dWRlbnQnOlxuICAgICAgICB0aGlzLmRvY1N0dWRlbnQgPSB0cnVlO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2RvY0FncmVlbWVudCc6XG4gICAgICAgIHRoaXMuZG9jQWdyZWVtZW50ID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdkb2NQYXJlbnQnOlxuICAgICAgICB0aGlzLmRvY1BhcmVudCA9IHRydWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZG9jQ29uZmFub3J0ZSc6XG4gICAgICAgIHRoaXMuZG9jQ29uZmFub3J0ZSA9IHRydWU7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjb25zdCBmaWxlQ2F0Y2hlZCA9IGV2ZW50LnRhcmdldC5maWxlc1swXTtcbiAgICBsZXQgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICByZWFkZXIub25sb2FkID0gKGU6IGFueSkgPT4ge1xuICAgICAgdGhpcy5pZFBkZi5wdXNoKGUudGFyZ2V0LnJlc3VsdCk7XG4gICAgICB0aGlzLnBkZlNyYyA9IHRoaXMuaWRQZGZbdGhpcy5udW1Eb2NdO1xuICAgIH07XG4gICAgdGhpcy5jb2RlID0gMDtcbiAgICByZWFkZXIucmVhZEFzQXJyYXlCdWZmZXIoZmlsZUNhdGNoZWQpO1xuICB9XG5cbiAgZmlsZXNVcGxvYWRlZCgpIHtcbiAgICBTd2FsLmZpcmUoe1xuICAgICAgdGl0bGU6ICc8cCBzdHlsZT1cImZvbnQtZmFtaWx5OiBQb3BwaW5zXCI+UGVyZmVjdDwvcD4nLFxuICAgICAgaHRtbDogJzxwIHN0eWxlPVwiZm9udC1mYW1pbHk6IFBvcHBpbnNcIj5BcmNoaXZvcyBzdWJpZG9zIGNvcnJlY3RhbWVudGUuPC9wPicsXG4gICAgICBpY29uOiAnc3VjY2VzcycsXG4gICAgfSk7XG4gICAgdGhpcy5kb2N1bWVudHNGb3JtLmNvbnRyb2xzWydkb2Nfc3R1ZGVudCddLnNldFZhbHVlKG51bGwpO1xuICAgIHRoaXMuZG9jdW1lbnRzRm9ybS5jb250cm9sc1snZG9jX2FncmVlbWVudCddLnNldFZhbHVlKG51bGwpO1xuICAgIHRoaXMuZG9jdW1lbnRzRm9ybS5jb250cm9sc1snZG9jX3BhcmVudCddLnNldFZhbHVlKG51bGwpO1xuICAgIHRoaXMuZG9jdW1lbnRzRm9ybS5jb250cm9sc1snZG9jX2NvbmZhbm9ydGUnXS5zZXRWYWx1ZShudWxsKTtcbiAgfVxuXG4gIGNsZWFyRG9jU3R1ZGVudCh0eXBlRG9jOiBhbnkpIHtcbiAgICB0aGlzLmRvY3VtZW50c0Zvcm0uY29udHJvbHNbdHlwZURvY10uc2V0VmFsdWUobnVsbCk7XG4gICAgdGhpcy5kb2NTdHVkZW50ID0gZmFsc2U7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXIgZmxleCBmbGV4LWNvbHVtbiBiZy13aGl0ZSBib3JkZXItcm91bmQtMnhsIHAtMyBjb250YWluZXIgYW5pbWF0ZV9fYW5pbWF0ZWQgYW5pbWF0ZV9fZmFkZUluVXBcIj5cblxuICA8c3BhbiBjbGFzcz1cImJnLXByaW1hcnkgcC0yIGJvcmRlci1yb3VuZCBtYi0yIHctYXV0byB0ZXh0LWxnIGZvbnQtc2VtaWJvbGRcIj5Eb2N1bWVudG9zIGRlbCBDT0Q8L3NwYW4+XG5cbiAgPGRpdiBjbGFzcz1cImRvY3VtZW50X2l0ZW0gZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIgcC0yIGJvcmRlci1yb3VuZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJtbC1hdXRvXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wIHctMTBcIj5cbiAgICAgICAgPGlwdC1pbnB1dFxuICAgICAgICBbaW5wdXRUeXBlXT1cIidmaWxlJ1wiXG4gICAgICAgIFtwbGFjZUhvbGRlcl09XCInRG9jLiBFc3R1ZGlhbnRlJ1wiXG4gICAgICAgIFtjb250cm9sXT1cImRvY3VtZW50c0Zvcm0uY29udHJvbHNbJ2RvY19zdHVkZW50J11cIlxuICAgICAgICAoY2hhbmdlKT1cImNhdGNoRG9jdW1lbnQoJGV2ZW50LCBkb2NTdHVkZW50KVwiXG4gICAgICAgID48L2lwdC1pbnB1dD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImJ0biBmbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgZmxleC13cmFwIHctOCBwLTJcIiAqbmdJZj1cImRvY1N0dWRlbnRcIj5cbiAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIGljb249XCJwaSBwaS1leWVcIiBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tc20gbWwtYXV0byBtci0xXCIgKGNsaWNrKT1cInNob3dJZERvY3VtZW50KClcIj48L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIGljb249XCJwaSBwaS10cmFzaFwiIGNsYXNzPVwicC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1zbSBwLWJ1dHRvbi1kYW5nZXIgbWwtYXV0b1wiIChjbGljayk9XCJjbGVhckRvY1N0dWRlbnQoJ2RvY19zdHVkZW50JylcIj48L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnRfaXRlbSBmbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciBwLTIgYm9yZGVyLXJvdW5kXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1sLWF1dG9cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJpbnAgdy0xMFwiPlxuICAgICAgICA8aXB0LWlucHV0XG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ2ZpbGUnXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidEb2MuIENvbnZlbmlvJ1wiXG4gICAgICAgIFtjb250cm9sXT1cImRvY3VtZW50c0Zvcm0uY29udHJvbHNbJ2RvY19hZ3JlZW1lbnQnXVwiXG4gICAgICAgIChjaGFuZ2UpPVwiY2F0Y2hEb2N1bWVudCgkZXZlbnQsIGRvY0FncmVlbWVudCApXCJcbiAgICAgICAgPjwvaXB0LWlucHV0PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYnRuIGZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBmbGV4LXdyYXAgdy04IHAtMlwiICpuZ0lmPVwiZG9jQWdyZWVtZW50XCI+XG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiBwUmlwcGxlIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktZXllXCIgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXNtIG1sLWF1dG8gbXItMVwiIChjbGljayk9XCJzaG93SWREb2N1bWVudCgpXCI+PC9idXR0b24+XG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiBwUmlwcGxlIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktdHJhc2hcIiBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tc20gcC1idXR0b24tZGFuZ2VyIG1sLWF1dG9cIiAoY2xpY2spPVwiY2xlYXJEb2NTdHVkZW50KCdkb2NfYWdyZWVtZW50JylcIj48L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnRfaXRlbSBmbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciBwLTIgYm9yZGVyLXJvdW5kXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1sLWF1dG9cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJpbnAgdy0xMFwiPlxuICAgICAgICA8aXB0LWlucHV0XG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ2ZpbGUnXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidEb2MuIEFjdWRpZW50ZSdcIlxuICAgICAgICBbY29udHJvbF09XCJkb2N1bWVudHNGb3JtLmNvbnRyb2xzWydkb2NfcGFyZW50J11cIlxuICAgICAgICAoY2hhbmdlKT1cImNhdGNoRG9jdW1lbnQoJGV2ZW50LCBkb2NQYXJlbnQpXCJcbiAgICAgICAgPjwvaXB0LWlucHV0PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYnRuIGZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBmbGV4LXdyYXAgdy04IHAtMlwiICpuZ0lmPVwiZG9jUGFyZW50XCI+XG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiBwUmlwcGxlIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktZXllXCIgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXNtIG1sLWF1dG8gbXItMVwiIChjbGljayk9XCJzaG93SWREb2N1bWVudCgpXCI+PC9idXR0b24+XG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiBwUmlwcGxlIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktdHJhc2hcIiBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tc20gcC1idXR0b24tZGFuZ2VyIG1sLWF1dG9cIiAoY2xpY2spPVwiY2xlYXJEb2NTdHVkZW50KCdkb2NfcGFyZW50JylcIj48L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnRfaXRlbSBmbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciBwLTIgYm9yZGVyLXJvdW5kXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1sLWF1dG9cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJpbnAgdy0xMFwiPlxuICAgICAgICA8aXB0LWlucHV0XG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ2ZpbGUnXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidEb2MuIENvbmZhbm9ydGUnXCJcbiAgICAgICAgW2NvbnRyb2xdPVwiZG9jdW1lbnRzRm9ybS5jb250cm9sc1snZG9jX2NvbmZhbm9ydGUnXVwiXG4gICAgICAgIChjaGFuZ2UpPVwiY2F0Y2hEb2N1bWVudCgkZXZlbnQsIGRvY0NvbmZhbm9ydGUpXCJcbiAgICAgICAgPjwvaXB0LWlucHV0PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYnRuIGZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBmbGV4LXdyYXAgdy04IHAtMlwiICpuZ0lmPVwiZG9jQ29uZmFub3J0ZVwiPlxuICAgICAgICA8YnV0dG9uIHBCdXR0b24gcFJpcHBsZSB0eXBlPVwiYnV0dG9uXCIgaWNvbj1cInBpIHBpLWV5ZVwiIGNsYXNzPVwicC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1zbSBtbC1hdXRvIG1yLTFcIiAoY2xpY2spPVwic2hvd0lkRG9jdW1lbnQoKVwiPjwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIHBCdXR0b24gcFJpcHBsZSB0eXBlPVwiYnV0dG9uXCIgaWNvbj1cInBpIHBpLXRyYXNoXCIgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXNtIHAtYnV0dG9uLWRhbmdlciBtbC1hdXRvXCIgKGNsaWNrKT1cImNsZWFyRG9jU3R1ZGVudCgnZG9jX2NvbmZhbm9ydGUnKVwiPjwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxocj5cbiAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIGljb249XCJwaSBwaS1wbHVzXCIgbGFiZWw9XCJBZ3JlZ2FyXCIgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXNtIG1sLWF1dG8gbXQtMlwiIChjbGljayk9XCJmaWxlc1VwbG9hZGVkKClcIj48L2J1dHRvbj5cblxuPC9kaXY+XG4iXX0=
|
|
@@ -2238,9 +2238,24 @@ class CodDocumentsSectionComponent {
|
|
|
2238
2238
|
showIdDocument() {
|
|
2239
2239
|
console.log('abrir modal de cargar pdf');
|
|
2240
2240
|
}
|
|
2241
|
-
catchDocument(event) {
|
|
2241
|
+
catchDocument(event, visible) {
|
|
2242
2242
|
this.numDoc++;
|
|
2243
|
-
|
|
2243
|
+
switch (visible) {
|
|
2244
|
+
case 'docStudent':
|
|
2245
|
+
this.docStudent = true;
|
|
2246
|
+
break;
|
|
2247
|
+
case 'docAgreement':
|
|
2248
|
+
this.docAgreement = true;
|
|
2249
|
+
break;
|
|
2250
|
+
case 'docParent':
|
|
2251
|
+
this.docParent = true;
|
|
2252
|
+
break;
|
|
2253
|
+
case 'docConfanorte':
|
|
2254
|
+
this.docConfanorte = true;
|
|
2255
|
+
break;
|
|
2256
|
+
default:
|
|
2257
|
+
break;
|
|
2258
|
+
}
|
|
2244
2259
|
const fileCatched = event.target.files[0];
|
|
2245
2260
|
let reader = new FileReader();
|
|
2246
2261
|
reader.onload = (e) => {
|
|
@@ -2252,9 +2267,9 @@ class CodDocumentsSectionComponent {
|
|
|
2252
2267
|
}
|
|
2253
2268
|
filesUploaded() {
|
|
2254
2269
|
Swal.fire({
|
|
2255
|
-
|
|
2256
|
-
|
|
2257
|
-
|
|
2270
|
+
title: '<p style="font-family: Poppins">Perfect</p>',
|
|
2271
|
+
html: '<p style="font-family: Poppins">Archivos subidos correctamente.</p>',
|
|
2272
|
+
icon: 'success',
|
|
2258
2273
|
});
|
|
2259
2274
|
this.documentsForm.controls['doc_student'].setValue(null);
|
|
2260
2275
|
this.documentsForm.controls['doc_agreement'].setValue(null);
|
|
@@ -2267,10 +2282,10 @@ class CodDocumentsSectionComponent {
|
|
|
2267
2282
|
}
|
|
2268
2283
|
}
|
|
2269
2284
|
CodDocumentsSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CodDocumentsSectionComponent, deps: [{ token: i1$1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
2270
|
-
CodDocumentsSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CodDocumentsSectionComponent, selector: "ipt-cod-documents-section", ngImport: i0, template: "<div class=\"container flex flex-column bg-white border-round-2xl p-3 container animate__animated animate__fadeInUp\">\n\n <span class=\"bg-primary p-2 border-round mb-2 w-auto text-lg font-semibold\">Documentos del COD</span>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Estudiante'\"\n [control]=\"documentsForm.controls['doc_student']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docStudent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_student')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Convenio'\"\n [control]=\"documentsForm.controls['doc_agreement']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docAgreement\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_agreement')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Acudiente'\"\n [control]=\"documentsForm.controls['doc_parent']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docParent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_parent')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Confanorte'\"\n [control]=\"documentsForm.controls['doc_confanorte']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docConfanorte\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_confanorte')\"></button>\n </div>\n </div>\n </div>\n\n <hr>\n <button pButton pRipple type=\"button\" icon=\"pi pi-plus\" label=\"Agregar\" class=\"p-button-rounded p-button-sm ml-auto mt-2\" (click)=\"filesUploaded()\"></button>\n\n</div>\n", styles: [".document_item{transition:.15s;gap:1rem;max-height:150px}.document_item:hover{cursor:pointer;box-shadow:#64646f33 0 7px 29px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { kind: "directive", type: i7$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }] });
|
|
2285
|
+
CodDocumentsSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CodDocumentsSectionComponent, selector: "ipt-cod-documents-section", ngImport: i0, template: "<div class=\"container flex flex-column bg-white border-round-2xl p-3 container animate__animated animate__fadeInUp\">\n\n <span class=\"bg-primary p-2 border-round mb-2 w-auto text-lg font-semibold\">Documentos del COD</span>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Estudiante'\"\n [control]=\"documentsForm.controls['doc_student']\"\n (change)=\"catchDocument($event, docStudent)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docStudent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_student')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Convenio'\"\n [control]=\"documentsForm.controls['doc_agreement']\"\n (change)=\"catchDocument($event, docAgreement )\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docAgreement\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_agreement')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Acudiente'\"\n [control]=\"documentsForm.controls['doc_parent']\"\n (change)=\"catchDocument($event, docParent)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docParent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_parent')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Confanorte'\"\n [control]=\"documentsForm.controls['doc_confanorte']\"\n (change)=\"catchDocument($event, docConfanorte)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docConfanorte\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_confanorte')\"></button>\n </div>\n </div>\n </div>\n\n <hr>\n <button pButton pRipple type=\"button\" icon=\"pi pi-plus\" label=\"Agregar\" class=\"p-button-rounded p-button-sm ml-auto mt-2\" (click)=\"filesUploaded()\"></button>\n\n</div>\n", styles: [".document_item{transition:.15s;gap:1rem;max-height:150px}.document_item:hover{cursor:pointer;box-shadow:#64646f33 0 7px 29px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { kind: "directive", type: i7$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }] });
|
|
2271
2286
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CodDocumentsSectionComponent, decorators: [{
|
|
2272
2287
|
type: Component,
|
|
2273
|
-
args: [{ selector: 'ipt-cod-documents-section', template: "<div class=\"container flex flex-column bg-white border-round-2xl p-3 container animate__animated animate__fadeInUp\">\n\n <span class=\"bg-primary p-2 border-round mb-2 w-auto text-lg font-semibold\">Documentos del COD</span>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Estudiante'\"\n [control]=\"documentsForm.controls['doc_student']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docStudent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_student')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Convenio'\"\n [control]=\"documentsForm.controls['doc_agreement']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docAgreement\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_agreement')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Acudiente'\"\n [control]=\"documentsForm.controls['doc_parent']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docParent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_parent')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Confanorte'\"\n [control]=\"documentsForm.controls['doc_confanorte']\"\n (change)=\"catchDocument($event)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docConfanorte\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_confanorte')\"></button>\n </div>\n </div>\n </div>\n\n <hr>\n <button pButton pRipple type=\"button\" icon=\"pi pi-plus\" label=\"Agregar\" class=\"p-button-rounded p-button-sm ml-auto mt-2\" (click)=\"filesUploaded()\"></button>\n\n</div>\n", styles: [".document_item{transition:.15s;gap:1rem;max-height:150px}.document_item:hover{cursor:pointer;box-shadow:#64646f33 0 7px 29px}\n"] }]
|
|
2288
|
+
args: [{ selector: 'ipt-cod-documents-section', template: "<div class=\"container flex flex-column bg-white border-round-2xl p-3 container animate__animated animate__fadeInUp\">\n\n <span class=\"bg-primary p-2 border-round mb-2 w-auto text-lg font-semibold\">Documentos del COD</span>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Estudiante'\"\n [control]=\"documentsForm.controls['doc_student']\"\n (change)=\"catchDocument($event, docStudent)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docStudent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_student')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Convenio'\"\n [control]=\"documentsForm.controls['doc_agreement']\"\n (change)=\"catchDocument($event, docAgreement )\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docAgreement\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_agreement')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Acudiente'\"\n [control]=\"documentsForm.controls['doc_parent']\"\n (change)=\"catchDocument($event, docParent)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docParent\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_parent')\"></button>\n </div>\n </div>\n </div>\n\n <div class=\"document_item flex flex-column align-items-center p-2 border-round\">\n <div class=\"ml-auto\">\n <div class=\"inp w-10\">\n <ipt-input\n [inputType]=\"'file'\"\n [placeHolder]=\"'Doc. Confanorte'\"\n [control]=\"documentsForm.controls['doc_confanorte']\"\n (change)=\"catchDocument($event, docConfanorte)\"\n ></ipt-input>\n </div>\n <div class=\"btn flex justify-content-center flex-wrap w-8 p-2\" *ngIf=\"docConfanorte\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-eye\" class=\"p-button-rounded p-button-sm ml-auto mr-1\" (click)=\"showIdDocument()\"></button>\n <button pButton pRipple type=\"button\" icon=\"pi pi-trash\" class=\"p-button-rounded p-button-sm p-button-danger ml-auto\" (click)=\"clearDocStudent('doc_confanorte')\"></button>\n </div>\n </div>\n </div>\n\n <hr>\n <button pButton pRipple type=\"button\" icon=\"pi pi-plus\" label=\"Agregar\" class=\"p-button-rounded p-button-sm ml-auto mt-2\" (click)=\"filesUploaded()\"></button>\n\n</div>\n", styles: [".document_item{transition:.15s;gap:1rem;max-height:150px}.document_item:hover{cursor:pointer;box-shadow:#64646f33 0 7px 29px}\n"] }]
|
|
2274
2289
|
}], ctorParameters: function () { return [{ type: i1$1.FormBuilder }]; } });
|
|
2275
2290
|
|
|
2276
2291
|
class LocalStorageCODService {
|