iptdevs-design-system 3.1.547 → 3.1.548
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-self-managed/steps/cod-form-step-two/cod-self-form-step-two.component.mjs +2 -2
- package/esm2020/lib/components/molecules/card-course/card-course.component.mjs +3 -3
- package/fesm2015/iptdevs-design-system.mjs +4 -4
- package/fesm2015/iptdevs-design-system.mjs.map +1 -1
- package/fesm2020/iptdevs-design-system.mjs +4 -4
- package/fesm2020/iptdevs-design-system.mjs.map +1 -1
- package/package.json +1 -1
package/esm2020/lib/cod-self-managed/steps/cod-form-step-two/cod-self-form-step-two.component.mjs
CHANGED
|
@@ -229,10 +229,10 @@ export class CodSelfFormStepTwoComponent extends CodSelfManagedSteps {
|
|
|
229
229
|
}
|
|
230
230
|
}
|
|
231
231
|
CodSelfFormStepTwoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CodSelfFormStepTwoComponent, deps: [{ token: i1.FormBuilder }, { token: i0.ChangeDetectorRef }, { token: i2.MessageService }, { token: i3.BaseService }, { token: i4.AcademicService }], target: i0.ɵɵFactoryTarget.Component });
|
|
232
|
-
CodSelfFormStepTwoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CodSelfFormStepTwoComponent, selector: "app-cod-self-form-step-two", inputs: { scorePlacementTest: "scorePlacementTest", codPrevious: "codPrevious" }, outputs: { completed: "completed" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"container-main\">\n <div class=\"container-form\">\n <h2>Planes</h2>\n <p-toast position=\"top-center\" key=\"confirm\" (onClose)=\"onReject()\" [baseZIndex]=\"10\">\n <ng-template let-message pTemplate=\"message\">\n <div class=\"flex flex-column align-items-start\" style=\"flex: 1\">\n <div class=\"flex align-items-center gap-2\">\n <img src=\"https://qa.iptdev.com.co/assets/logos/reading.png\" style=\"width: 65px;\" shape=\"circle\" />\n <span class=\"font-bold text-900\">Jacob</span>\n </div>\n <div class=\"font-medium text-lg my-3 text-900\">{{ messageInfo }}</div>\n </div>\n </ng-template>\n </p-toast>\n\n <i class=\"pi pi-exclamation-circle cursor-pointer w-auto\" (click)=\"showConfirm()\"></i>\n <!-- <form [formGroup]=\"codSelfFormStepTwo\"> -->\n <div class=\"container-button\" *ngIf=\"!SearchData\">\n <ipt-button\n [label]=\"'Filtrar'\"\n (onClick)=\"filterAgain()\"\n [primary]=\"true\">\n </ipt-button>\n </div>\n\n <div *ngIf=\"SearchData\">\n <p-accordion [multiple]=\"true\" [activeIndex]=\"[0]\">\n <p-accordionTab header=\"Jornada\">\n <div class=\"containerDay\">\n <!-- <h3>Horario</h3> -->\n <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of schedules; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedSchedules\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectSchedules($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertSchedules\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div>\n </div>\n </p-accordionTab>\n\n <p-accordionTab header=\"Modalidad\">\n <div class=\"containerDay\">\n <!-- <h3>Horario</h3> -->\n <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of stateOptionsModality; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedModality\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectModality($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertModality\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div>\n </div>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"scorePlacementTest != null\" header=\"placement test\">\n <span>Tienes un Placement Test realizado. Puedes comenzar con el nivel</span><h3>{{ scorePlacementTest?.level_inglish_next.name }}</h3>\n <div class=\"containerDay mt-3\">\n <h3>\u00BFDeseas iniciar en este nivel {{ scorePlacementTest?.level_inglish_next.name }}?</h3>\n <!-- <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of OptionPlacementTest; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedOptionPlacementTest\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectOpcionsPlacementTest($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertPlacementTest\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div> -->\n <div class=\"flex flex-column gap-3\">\n <div *ngFor=\"let category of OptionPlacementTest; index as ind\" class=\"field-checkbox\">\n <p-radioButton\n [inputId]=\"category.key\"\n name=\"category\"\n [value]=\"category\"\n [(ngModel)]=\"selectedOptionPlacementTest\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n (ngModelChange)=\"selectOpcionsPlacementTest($event)\"\n ></p-radioButton>\n <label [for]=\"category.key\" class=\"ml-2\">\n {{ category.name }}\n </label>\n </div>\n </div>\n </div>\n </p-accordionTab>\n\n </p-accordion>\n <div class=\"flex-none flex align-items-center justify-content-end m-2\">\n <button\n pButton\n Ripple\n type=\"button\"\n icon=\"pi pi-search\"\n class=\"p-button-rounded p-button-outlined\"\n [disabled]=\"selectedSchedules.length === 0 || selectedModality.length === 0 || scorePlacementTest != null && selectedOptionPlacementTest.length === 0 \"\n (click)=\"searchAvalaibleCourse()\"\n ></button>\n </div>\n </div>\n <article *ngIf=\"visibleGroupReview\" class=\"cards-container\">\n\n <ipt-card-course\n [CourseData]=\"dataCourse\"\n (codeCourse)=\"courseCode($event)\"\n [isLoading]=\"isLoading\">\n </ipt-card-course>\n </article>\n <!-- </form> -->\n <div class=\"flex justify-content-between mt-3 align-items-center gap-3\">\n <!-- <span *ngIf=\"codSelfFormStepOne.invalid && codSelfFormStepOne.touched\" class=\"text-red-500 font-bold text-center mt-1 py-2 bg-red-100 w-full border-round-xl\">{{ errorMessage }}</span> -->\n <button\n pButton\n icon=\"pi pi-arrow-left\"\n type=\"submit\"\n (click)=\"back()\"\n ></button>\n\n <button\n pButton\n icon=\"pi pi-arrow-right\"\n (click)=\"sendForm()\"\n ></button>\n </div>\n </div>\n</div>\n\n<div>\n <pre>{{ codSelfFormStepTwo.value | json }}</pre>\n <div>\n <pre>{{ codSelfFormStepTwo.valid | json }}</pre>\n </div>\n</div>\n\n", styles: [".container-main{margin:1%}.container-form{margin:5%;border-radius:6px;border:1px solid #2563eb;box-shadow:#3c40434d 0 1px 2px,#3c404326 0 2px 6px 2px;padding:1rem}.error-message{font-size:x-small;color:red}:host ::ng-deep .p-toast{width:20rem!important}span{color:#999;font-size:15px;font-weight:400;pointer-events:none;left:20px;top:-20px}:host ::ng-deep .p-buttonset .p-button{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.2s;font-weight:300;height:28px}:host ::ng-deep .p-calendar{position:relative;display:inline-flex;max-width:100%;height:28px;box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;background-color:#fff;-webkit-appearance:none}.cards-container{margin:5px 15px 15px}.container-button{width:7rem}\n"], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }, { kind: "component", type: i7.CardCourseComponent, selector: "ipt-card-course", inputs: ["CourseData", "isLoading"], outputs: ["codeCourse"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i9.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i10.Accordion, selector: "p-accordion", inputs: ["multiple", "style", "styleClass", "expandIcon", "collapseIcon", "activeIndex"], outputs: ["onClose", "onOpen", "activeIndexChange"] }, { kind: "component", type: i10.AccordionTab, selector: "p-accordionTab", inputs: ["header", "disabled", "cache", "transitionOptions", "selected"], outputs: ["selectedChange"] }, { kind: "component", type: i11.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "trueValue", "falseValue"], outputs: ["onChange"] }, { kind: "component", type: i12.RadioButton, selector: "p-radioButton", inputs: ["value", "formControlName", "name", "disabled", "label", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "style", "styleClass", "labelStyleClass"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: i5.JsonPipe, name: "json" }] });
|
|
232
|
+
CodSelfFormStepTwoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CodSelfFormStepTwoComponent, selector: "app-cod-self-form-step-two", inputs: { scorePlacementTest: "scorePlacementTest", codPrevious: "codPrevious" }, outputs: { completed: "completed" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"container-main\">\n <div class=\"container-form\">\n <h2>Planes</h2>\n <p-toast position=\"top-center\" key=\"confirm\" (onClose)=\"onReject()\" [baseZIndex]=\"10\">\n <ng-template let-message pTemplate=\"message\">\n <div class=\"flex flex-column align-items-start\" style=\"flex: 1\">\n <div class=\"flex align-items-center gap-2\">\n <img src=\"https://qa.iptdev.com.co/assets/logos/reading.png\" style=\"width: 65px;\" shape=\"circle\" />\n <span class=\"font-bold text-900\">Jacob</span>\n </div>\n <div class=\"font-medium text-lg my-3 text-900\">{{ messageInfo }}</div>\n </div>\n </ng-template>\n </p-toast>\n\n <i class=\"pi pi-exclamation-circle cursor-pointer w-auto\" (click)=\"showConfirm()\"></i>\n <!-- <form [formGroup]=\"codSelfFormStepTwo\"> -->\n <div class=\"container-button\" *ngIf=\"!SearchData\">\n <ipt-button\n [label]=\"'Filtrar'\"\n (onClick)=\"filterAgain()\"\n [primary]=\"true\">\n </ipt-button>\n </div>\n\n <div *ngIf=\"SearchData\">\n <p-accordion [multiple]=\"true\" [activeIndex]=\"[0]\">\n <p-accordionTab header=\"Jornada\">\n <div class=\"containerDay\">\n <!-- <h3>Horario</h3> -->\n <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of schedules; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedSchedules\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectSchedules($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertSchedules\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div>\n </div>\n </p-accordionTab>\n\n <p-accordionTab header=\"Modalidad\">\n <div class=\"containerDay\">\n <!-- <h3>Horario</h3> -->\n <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of stateOptionsModality; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedModality\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectModality($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertModality\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div>\n </div>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"scorePlacementTest != null\" header=\"placement test\">\n <span>Tienes un Placement Test realizado. Puedes comenzar con el nivel</span><h3>{{ scorePlacementTest?.level_inglish_next.name }}</h3>\n <div class=\"containerDay mt-3\">\n <h3>\u00BFDeseas iniciar en este nivel {{ scorePlacementTest?.level_inglish_next.name }}?</h3>\n <!-- <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of OptionPlacementTest; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedOptionPlacementTest\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectOpcionsPlacementTest($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertPlacementTest\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div> -->\n <div class=\"flex flex-column gap-3\">\n <div *ngFor=\"let category of OptionPlacementTest; index as ind\" class=\"field-checkbox\">\n <p-radioButton\n [inputId]=\"category.key\"\n name=\"category\"\n [value]=\"category\"\n [(ngModel)]=\"selectedOptionPlacementTest\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n (ngModelChange)=\"selectOpcionsPlacementTest($event)\"\n ></p-radioButton>\n <label [for]=\"category.key\" class=\"ml-2\">\n {{ category.name }}\n </label>\n </div>\n </div>\n </div>\n </p-accordionTab>\n\n </p-accordion>\n <div class=\"flex-none flex align-items-center justify-content-end m-2\">\n <button\n pButton\n Ripple\n type=\"button\"\n icon=\"pi pi-search\"\n class=\"p-button-rounded p-button-outlined\"\n [disabled]=\"selectedSchedules.length === 0 || selectedModality.length === 0 || scorePlacementTest != null && selectedOptionPlacementTest.length === 0 \"\n (click)=\"searchAvalaibleCourse()\"\n ></button>\n </div>\n </div>\n <article *ngIf=\"visibleGroupReview\" class=\"cards-container\">\n\n <ipt-card-course\n [CourseData]=\"dataCourse\"\n (codeCourse)=\"courseCode($event)\"\n [isLoading]=\"isLoading\">\n </ipt-card-course>\n </article>\n <!-- </form> -->\n <div class=\"flex justify-content-between mt-3 align-items-center gap-3\">\n <!-- <span *ngIf=\"codSelfFormStepOne.invalid && codSelfFormStepOne.touched\" class=\"text-red-500 font-bold text-center mt-1 py-2 bg-red-100 w-full border-round-xl\">{{ errorMessage }}</span> -->\n <button\n pButton\n icon=\"pi pi-arrow-left\"\n type=\"submit\"\n (click)=\"back()\"\n ></button>\n\n <button\n pButton\n icon=\"pi pi-arrow-right\"\n (click)=\"sendForm()\"\n ></button>\n </div>\n </div>\n</div>\n\n<div>\n <pre>{{ codSelfFormStepTwo.value | json }}</pre>\n <div>\n <pre>{{ codSelfFormStepTwo.valid | json }}</pre>\n </div>\n</div>\n\n", styles: [".container-main{margin:1%}.container-form{margin:5%;border-radius:6px;border:1px solid #2563eb;box-shadow:#3c40434d 0 1px 2px,#3c404326 0 2px 6px 2px;padding:1rem}.error-message{font-size:x-small;color:red}:host ::ng-deep .p-toast{width:20rem!important}span{color:#999;font-size:15px;font-weight:400;pointer-events:none;left:20px;top:-20px}:host ::ng-deep .p-buttonset .p-button{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.2s;font-weight:300;height:28px}:host ::ng-deep .p-calendar{position:relative;display:inline-flex;max-width:100%;height:28px;box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;background-color:#fff;-webkit-appearance:none}.cards-container{margin-top:10px}.container-button{width:7rem}\n"], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }, { kind: "component", type: i7.CardCourseComponent, selector: "ipt-card-course", inputs: ["CourseData", "isLoading"], outputs: ["codeCourse"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i9.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i10.Accordion, selector: "p-accordion", inputs: ["multiple", "style", "styleClass", "expandIcon", "collapseIcon", "activeIndex"], outputs: ["onClose", "onOpen", "activeIndexChange"] }, { kind: "component", type: i10.AccordionTab, selector: "p-accordionTab", inputs: ["header", "disabled", "cache", "transitionOptions", "selected"], outputs: ["selectedChange"] }, { kind: "component", type: i11.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "trueValue", "falseValue"], outputs: ["onChange"] }, { kind: "component", type: i12.RadioButton, selector: "p-radioButton", inputs: ["value", "formControlName", "name", "disabled", "label", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "style", "styleClass", "labelStyleClass"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: i5.JsonPipe, name: "json" }] });
|
|
233
233
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CodSelfFormStepTwoComponent, decorators: [{
|
|
234
234
|
type: Component,
|
|
235
|
-
args: [{ selector: 'app-cod-self-form-step-two', template: "<div class=\"container-main\">\n <div class=\"container-form\">\n <h2>Planes</h2>\n <p-toast position=\"top-center\" key=\"confirm\" (onClose)=\"onReject()\" [baseZIndex]=\"10\">\n <ng-template let-message pTemplate=\"message\">\n <div class=\"flex flex-column align-items-start\" style=\"flex: 1\">\n <div class=\"flex align-items-center gap-2\">\n <img src=\"https://qa.iptdev.com.co/assets/logos/reading.png\" style=\"width: 65px;\" shape=\"circle\" />\n <span class=\"font-bold text-900\">Jacob</span>\n </div>\n <div class=\"font-medium text-lg my-3 text-900\">{{ messageInfo }}</div>\n </div>\n </ng-template>\n </p-toast>\n\n <i class=\"pi pi-exclamation-circle cursor-pointer w-auto\" (click)=\"showConfirm()\"></i>\n <!-- <form [formGroup]=\"codSelfFormStepTwo\"> -->\n <div class=\"container-button\" *ngIf=\"!SearchData\">\n <ipt-button\n [label]=\"'Filtrar'\"\n (onClick)=\"filterAgain()\"\n [primary]=\"true\">\n </ipt-button>\n </div>\n\n <div *ngIf=\"SearchData\">\n <p-accordion [multiple]=\"true\" [activeIndex]=\"[0]\">\n <p-accordionTab header=\"Jornada\">\n <div class=\"containerDay\">\n <!-- <h3>Horario</h3> -->\n <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of schedules; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedSchedules\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectSchedules($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertSchedules\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div>\n </div>\n </p-accordionTab>\n\n <p-accordionTab header=\"Modalidad\">\n <div class=\"containerDay\">\n <!-- <h3>Horario</h3> -->\n <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of stateOptionsModality; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedModality\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectModality($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertModality\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div>\n </div>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"scorePlacementTest != null\" header=\"placement test\">\n <span>Tienes un Placement Test realizado. Puedes comenzar con el nivel</span><h3>{{ scorePlacementTest?.level_inglish_next.name }}</h3>\n <div class=\"containerDay mt-3\">\n <h3>\u00BFDeseas iniciar en este nivel {{ scorePlacementTest?.level_inglish_next.name }}?</h3>\n <!-- <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of OptionPlacementTest; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedOptionPlacementTest\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectOpcionsPlacementTest($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertPlacementTest\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div> -->\n <div class=\"flex flex-column gap-3\">\n <div *ngFor=\"let category of OptionPlacementTest; index as ind\" class=\"field-checkbox\">\n <p-radioButton\n [inputId]=\"category.key\"\n name=\"category\"\n [value]=\"category\"\n [(ngModel)]=\"selectedOptionPlacementTest\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n (ngModelChange)=\"selectOpcionsPlacementTest($event)\"\n ></p-radioButton>\n <label [for]=\"category.key\" class=\"ml-2\">\n {{ category.name }}\n </label>\n </div>\n </div>\n </div>\n </p-accordionTab>\n\n </p-accordion>\n <div class=\"flex-none flex align-items-center justify-content-end m-2\">\n <button\n pButton\n Ripple\n type=\"button\"\n icon=\"pi pi-search\"\n class=\"p-button-rounded p-button-outlined\"\n [disabled]=\"selectedSchedules.length === 0 || selectedModality.length === 0 || scorePlacementTest != null && selectedOptionPlacementTest.length === 0 \"\n (click)=\"searchAvalaibleCourse()\"\n ></button>\n </div>\n </div>\n <article *ngIf=\"visibleGroupReview\" class=\"cards-container\">\n\n <ipt-card-course\n [CourseData]=\"dataCourse\"\n (codeCourse)=\"courseCode($event)\"\n [isLoading]=\"isLoading\">\n </ipt-card-course>\n </article>\n <!-- </form> -->\n <div class=\"flex justify-content-between mt-3 align-items-center gap-3\">\n <!-- <span *ngIf=\"codSelfFormStepOne.invalid && codSelfFormStepOne.touched\" class=\"text-red-500 font-bold text-center mt-1 py-2 bg-red-100 w-full border-round-xl\">{{ errorMessage }}</span> -->\n <button\n pButton\n icon=\"pi pi-arrow-left\"\n type=\"submit\"\n (click)=\"back()\"\n ></button>\n\n <button\n pButton\n icon=\"pi pi-arrow-right\"\n (click)=\"sendForm()\"\n ></button>\n </div>\n </div>\n</div>\n\n<div>\n <pre>{{ codSelfFormStepTwo.value | json }}</pre>\n <div>\n <pre>{{ codSelfFormStepTwo.valid | json }}</pre>\n </div>\n</div>\n\n", styles: [".container-main{margin:1%}.container-form{margin:5%;border-radius:6px;border:1px solid #2563eb;box-shadow:#3c40434d 0 1px 2px,#3c404326 0 2px 6px 2px;padding:1rem}.error-message{font-size:x-small;color:red}:host ::ng-deep .p-toast{width:20rem!important}span{color:#999;font-size:15px;font-weight:400;pointer-events:none;left:20px;top:-20px}:host ::ng-deep .p-buttonset .p-button{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.2s;font-weight:300;height:28px}:host ::ng-deep .p-calendar{position:relative;display:inline-flex;max-width:100%;height:28px;box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;background-color:#fff;-webkit-appearance:none}.cards-container{margin:
|
|
235
|
+
args: [{ selector: 'app-cod-self-form-step-two', template: "<div class=\"container-main\">\n <div class=\"container-form\">\n <h2>Planes</h2>\n <p-toast position=\"top-center\" key=\"confirm\" (onClose)=\"onReject()\" [baseZIndex]=\"10\">\n <ng-template let-message pTemplate=\"message\">\n <div class=\"flex flex-column align-items-start\" style=\"flex: 1\">\n <div class=\"flex align-items-center gap-2\">\n <img src=\"https://qa.iptdev.com.co/assets/logos/reading.png\" style=\"width: 65px;\" shape=\"circle\" />\n <span class=\"font-bold text-900\">Jacob</span>\n </div>\n <div class=\"font-medium text-lg my-3 text-900\">{{ messageInfo }}</div>\n </div>\n </ng-template>\n </p-toast>\n\n <i class=\"pi pi-exclamation-circle cursor-pointer w-auto\" (click)=\"showConfirm()\"></i>\n <!-- <form [formGroup]=\"codSelfFormStepTwo\"> -->\n <div class=\"container-button\" *ngIf=\"!SearchData\">\n <ipt-button\n [label]=\"'Filtrar'\"\n (onClick)=\"filterAgain()\"\n [primary]=\"true\">\n </ipt-button>\n </div>\n\n <div *ngIf=\"SearchData\">\n <p-accordion [multiple]=\"true\" [activeIndex]=\"[0]\">\n <p-accordionTab header=\"Jornada\">\n <div class=\"containerDay\">\n <!-- <h3>Horario</h3> -->\n <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of schedules; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedSchedules\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectSchedules($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertSchedules\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div>\n </div>\n </p-accordionTab>\n\n <p-accordionTab header=\"Modalidad\">\n <div class=\"containerDay\">\n <!-- <h3>Horario</h3> -->\n <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of stateOptionsModality; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedModality\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectModality($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertModality\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div>\n </div>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"scorePlacementTest != null\" header=\"placement test\">\n <span>Tienes un Placement Test realizado. Puedes comenzar con el nivel</span><h3>{{ scorePlacementTest?.level_inglish_next.name }}</h3>\n <div class=\"containerDay mt-3\">\n <h3>\u00BFDeseas iniciar en este nivel {{ scorePlacementTest?.level_inglish_next.name }}?</h3>\n <!-- <div class=\"checkBox flex flex-wrap justify-content-between m-3\">\n <div *ngFor=\"let dayW of OptionPlacementTest; index as ind\" class=\"field-checkbox\">\n <p-checkbox\n name=\"group2\"\n value=\"category\"\n [value]=\"dayW\"\n [(ngModel)]=\"selectedOptionPlacementTest\"\n [inputId]=\"dayW.key\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n checkboxIcon=\"pi pi-check-circle\"\n (ngModelChange)=\"selectOpcionsPlacementTest($event)\"\n ></p-checkbox>\n <label [for]=\"dayW.key\">{{ dayW.name }}</label>\n </div>\n <div *ngIf=\"messageAlertPlacementTest\">\n <span class=\"error-message\">Por favor selecciona una opcion</span>\n </div>\n </div> -->\n <div class=\"flex flex-column gap-3\">\n <div *ngFor=\"let category of OptionPlacementTest; index as ind\" class=\"field-checkbox\">\n <p-radioButton\n [inputId]=\"category.key\"\n name=\"category\"\n [value]=\"category\"\n [(ngModel)]=\"selectedOptionPlacementTest\"\n [disabled]=\"disableweekdays[ind]\"\n [ngModelOptions]=\"{ standalone: true }\"\n (ngModelChange)=\"selectOpcionsPlacementTest($event)\"\n ></p-radioButton>\n <label [for]=\"category.key\" class=\"ml-2\">\n {{ category.name }}\n </label>\n </div>\n </div>\n </div>\n </p-accordionTab>\n\n </p-accordion>\n <div class=\"flex-none flex align-items-center justify-content-end m-2\">\n <button\n pButton\n Ripple\n type=\"button\"\n icon=\"pi pi-search\"\n class=\"p-button-rounded p-button-outlined\"\n [disabled]=\"selectedSchedules.length === 0 || selectedModality.length === 0 || scorePlacementTest != null && selectedOptionPlacementTest.length === 0 \"\n (click)=\"searchAvalaibleCourse()\"\n ></button>\n </div>\n </div>\n <article *ngIf=\"visibleGroupReview\" class=\"cards-container\">\n\n <ipt-card-course\n [CourseData]=\"dataCourse\"\n (codeCourse)=\"courseCode($event)\"\n [isLoading]=\"isLoading\">\n </ipt-card-course>\n </article>\n <!-- </form> -->\n <div class=\"flex justify-content-between mt-3 align-items-center gap-3\">\n <!-- <span *ngIf=\"codSelfFormStepOne.invalid && codSelfFormStepOne.touched\" class=\"text-red-500 font-bold text-center mt-1 py-2 bg-red-100 w-full border-round-xl\">{{ errorMessage }}</span> -->\n <button\n pButton\n icon=\"pi pi-arrow-left\"\n type=\"submit\"\n (click)=\"back()\"\n ></button>\n\n <button\n pButton\n icon=\"pi pi-arrow-right\"\n (click)=\"sendForm()\"\n ></button>\n </div>\n </div>\n</div>\n\n<div>\n <pre>{{ codSelfFormStepTwo.value | json }}</pre>\n <div>\n <pre>{{ codSelfFormStepTwo.valid | json }}</pre>\n </div>\n</div>\n\n", styles: [".container-main{margin:1%}.container-form{margin:5%;border-radius:6px;border:1px solid #2563eb;box-shadow:#3c40434d 0 1px 2px,#3c404326 0 2px 6px 2px;padding:1rem}.error-message{font-size:x-small;color:red}:host ::ng-deep .p-toast{width:20rem!important}span{color:#999;font-size:15px;font-weight:400;pointer-events:none;left:20px;top:-20px}:host ::ng-deep .p-buttonset .p-button{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.2s;font-weight:300;height:28px}:host ::ng-deep .p-calendar{position:relative;display:inline-flex;max-width:100%;height:28px;box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;background-color:#fff;-webkit-appearance:none}.cards-container{margin-top:10px}.container-button{width:7rem}\n"] }]
|
|
236
236
|
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i0.ChangeDetectorRef }, { type: i2.MessageService }, { type: i3.BaseService }, { type: i4.AcademicService }]; }, propDecorators: { completed: [{
|
|
237
237
|
type: Output
|
|
238
238
|
}], scorePlacementTest: [{
|
|
@@ -79,10 +79,10 @@ export class CardCourseComponent {
|
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
81
|
CardCourseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CardCourseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
82
|
-
CardCourseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CardCourseComponent, selector: "ipt-card-course", inputs: { CourseData: "CourseData", isLoading: "isLoading" }, outputs: { codeCourse: "codeCourse" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"main-container\">\n\n <!-- cards Academy -->\n\n <p-panel\n *ngIf=\"visibleAcademy\"\n header=\"Plan Academy\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"academic_plan\"\n class=\"academic_plan\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseAcademy\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__academic\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br> -->\n <!-- <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br> -->\n <!-- <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n <!-- cards Kids -->\n\n <p-panel\n *ngIf=\"visibleKids\"\n header=\"Plan Kids\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"social_kids\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseKids\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__kids\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br>\n <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br> -->\n <!-- <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n <!-- cards Schools -->\n\n <p-panel\n *ngIf=\"visibleSchools\"\n header=\"Plan Schools\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"social_school\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseSchools\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__schools\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br>\n <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br>\n <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n </div>\n\n\n", styles: ["main{display:flex;gap:.7rem;flex-wrap:wrap}.card1{--border-radius: 6px;--primary-color: #1c77f7;--secondary-color: #2c2c2c;--tertiary-color: #ffffff;width:340px;font-family:Poppins,sans-serif;cursor:pointer;border-radius:var(--border-radius);background:#f1f1f3;box-shadow:0 8px 16px #00000008;position:relative;transition:.3s;border:solid .5px #e0e0e0}.type-theory{color:#00aecc}.type-club{color:#0d9d36}.msg-two-coup{color:#000!important;padding-left:7px;padding-right:7px;border-radius:5px;background-color:#4ed1e9}.msg-two-lev{color:#000!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#fb8f42}.beginner{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#94b9aa}.levelAone{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#c4291c}.levelAonetwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#418ed1}.levelAtwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#4fad65}.levelBone{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#6824b8}.levelBtwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#06161e}.levelBplus{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#cc6529}.main-container{margin-top:1%}.course-code{font-size:12px;font-weight:400;margin-left:.5rem}.card1:hover{box-shadow:#0000003d 0 3px 8px}.card1>*+*{margin-top:.7em}.card1 .card1__content{padding-left:10px;color:var(--secondary-color);font-size:.86rem;font-weight:200;z-index:1;position:relative}strong{color:var(--secondary-color);font-weight:300}:host ::ng-deep .p-panel .p-panel-header .p-panel-header-icon{color:#fff!important}.card1 .card1__title__academic{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(4,18,106);background:linear-gradient(175deg,rgba(4,18,106,1) 27%,rgba(48,63,155,1) 53%,rgba(28,119,247,1)90%);border-radius:6px 6px 0 0}:host ::ng-deep #academic_plan .p-panel .p-panel-header{color:#fff!important;background:rgb(4,18,106);background:linear-gradient(175deg,rgba(4,18,106,1) 27%,rgba(48,63,155,1) 53%,rgba(28,119,247,1)90%);border-radius:6px 6px 0 0}.card1 .card1__title__kids{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(127,33,99);background:linear-gradient(175deg,rgba(127,33,99,1) 27%,rgba(171,49,135,1) 53%,rgba(220,76,178,1) 90%);border-radius:6px 6px 0 0}:host ::ng-deep #social_kids .p-panel .p-panel-header{color:#fff!important;background:rgb(127,33,99);background:linear-gradient(175deg,rgba(127,33,99,1) 27%,rgba(171,49,135,1) 53%,rgba(220,76,178,1) 90%);border-radius:6px 6px 0 0}.card1 .card1__title__schools{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(57,130,154);background:linear-gradient(175deg,rgba(57,130,154,1) 27%,rgba(44,147,180,1) 53%,rgba(135,182,197,1) 90%);border-radius:6px 6px 0 0}:host ::ng-deep #social_school .p-panel .p-panel-header{color:#fff!important;background:rgb(57,130,154);background:linear-gradient(175deg,rgba(57,130,154,1) 27%,rgba(44,147,180,1) 53%,rgba(135,182,197,1) 90%);border-radius:6px 6px 0 0}.card1 .card1__date{color:#807c7c;padding-left:10px;font-size:.4rem;z-index:1;position:relative;margin-bottom:2%;margin-top:.7rem}.card1 .card1__arrow{padding-left:10px;position:absolute;padding:.1rem;border-top-left-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);bottom:0;right:0;transition:.2s;display:flex;justify-content:center;align-items:center;width:50px}.card1 svg{transition:.2s}.card1:hover .card1__title{color:var(--secondary-color)}.card1:hover .card1__arrow{background:rgb(170,41,170)}.card1:hover .card1__arrow svg{transform:translate(3px)}.card1:hover strong{color:#aa29aa;font-weight:400}.card1:hover .course-code{color:#aa29aa;font-weight:500}.image-container{display:flex;border-radius:6px;width:250px;height:207px;box-shadow:#3c40434d 0 1px 2px,#3c404326 0 1px 3px 1px}:host ::ng-deep .p-menubar .p-menuitem{position:relative;width:auto}.green300{height:2%;width:2%;padding-right:9px;border-radius:70%;background:#76db9b;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}.red300{height:2%;width:2%;padding-right:9px;border-radius:70%;background:#e35b53;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}.gray300{height:2%;width:2%;padding-right:9px;border-radius:70%;color:#9e9a99;background-color:#9e9a99;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}label{border-radius:50%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Panel, selector: "p-panel", inputs: ["toggleable", "header", "collapsed", "style", "styleClass", "iconPos", "expandIcon", "collapseIcon", "showHeader", "toggler", "transitionOptions"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4.LoaderComponent, selector: "ipt-loader", inputs: ["message", "isDialog"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i5.ScheduleFormatPipe, name: "scheduleFormat" }, { kind: "pipe", type: i6.ScheduleTimeFormatPipe, name: "scheduleTimeFormat" }, { kind: "pipe", type: i7.TypeLevelPipe, name: "typeLevel" }] });
|
|
82
|
+
CardCourseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CardCourseComponent, selector: "ipt-card-course", inputs: { CourseData: "CourseData", isLoading: "isLoading" }, outputs: { codeCourse: "codeCourse" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"main-container\">\n\n <!-- cards Academy -->\n\n <p-panel\n *ngIf=\"visibleAcademy\"\n header=\"Plan Academy\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"academic_plan\"\n class=\"academic_plan\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseAcademy\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__academic\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br> -->\n <!-- <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br> -->\n <!-- <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <!-- <strong><hr></strong> -->\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n <!-- cards Kids -->\n\n <p-panel\n *ngIf=\"visibleKids\"\n header=\"Plan Kids\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"social_kids\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseKids\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__kids\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br>\n <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br> -->\n <!-- <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <!-- <strong><hr></strong> -->\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n <!-- cards Schools -->\n\n <p-panel\n *ngIf=\"visibleSchools\"\n header=\"Plan Schools\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"social_school\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseSchools\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__schools\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br>\n <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br>\n <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <!-- <strong><hr></strong> -->\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n </div>\n\n\n", styles: ["main{display:flex;gap:.7rem;flex-wrap:wrap}.card1{--border-radius: 6px;--primary-color: #1c77f7;--secondary-color: #2c2c2c;--tertiary-color: #ffffff;width:340px;font-family:Poppins,sans-serif;cursor:pointer;border-radius:var(--border-radius);background:#f1f1f3;box-shadow:0 8px 16px #00000008;position:relative;transition:.3s;border:solid .5px #e0e0e0}.type-theory{color:#00aecc}.type-club{color:#0d9d36}.msg-two-coup{color:#000!important;padding-left:7px;padding-right:7px;border-radius:5px;background-color:#4ed1e9}.msg-two-lev{color:#000!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#fb8f42}.beginner{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#94b9aa}.levelAone{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#c4291c}.levelAonetwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#418ed1}.levelAtwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#4fad65}.levelBone{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#6824b8}.levelBtwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#06161e}.levelBplus{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#cc6529}.main-container{margin-top:1%}.course-code{font-size:12px;font-weight:400;margin-left:.5rem}.card1:hover{box-shadow:#0000003d 0 3px 8px}.card1>*+*{margin-top:.7em}.card1 .card1__content{padding-left:10px;color:var(--secondary-color);font-size:.86rem;font-weight:200;z-index:1;position:relative}strong{color:var(--secondary-color);font-weight:300}:host ::ng-deep .p-panel .p-panel-header .p-panel-header-icon{color:#fff!important}.card1 .card1__title__academic{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(4,18,106);background:linear-gradient(175deg,rgba(4,18,106,1) 27%,rgba(48,63,155,1) 53%,rgba(28,119,247,1)90%);border-radius:6px 6px 0 0}:host ::ng-deep #academic_plan .p-panel .p-panel-header{color:#fff!important;background:rgb(4,18,106);background:linear-gradient(175deg,rgba(4,18,106,1) 27%,rgba(48,63,155,1) 53%,rgba(28,119,247,1)90%);border-radius:6px 6px 0 0}.card1 .card1__title__kids{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(127,33,99);background:linear-gradient(175deg,rgba(127,33,99,1) 27%,rgba(171,49,135,1) 53%,rgba(220,76,178,1) 90%);border-radius:6px 6px 0 0}:host ::ng-deep #social_kids .p-panel .p-panel-header{color:#fff!important;background:rgb(127,33,99);background:linear-gradient(175deg,rgba(127,33,99,1) 27%,rgba(171,49,135,1) 53%,rgba(220,76,178,1) 90%);border-radius:6px 6px 0 0}.card1 .card1__title__schools{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(57,130,154);background:linear-gradient(175deg,rgba(57,130,154,1) 27%,rgba(44,147,180,1) 53%,rgba(135,182,197,1) 90%);border-radius:6px 6px 0 0}:host ::ng-deep #social_school .p-panel .p-panel-header{color:#fff!important;background:rgb(57,130,154);background:linear-gradient(175deg,rgba(57,130,154,1) 27%,rgba(44,147,180,1) 53%,rgba(135,182,197,1) 90%);border-radius:6px 6px 0 0}.card1 .card1__date{color:#807c7c;padding-left:10px;font-size:.4rem;z-index:1;position:relative;margin-bottom:2%;margin-top:.7rem}.card1 .card1__arrow{padding-left:10px;position:absolute;padding:.1rem;border-top-left-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);bottom:0;right:0;transition:.2s;display:flex;justify-content:center;align-items:center;width:50px}.card1 svg{transition:.2s}.card1:hover .card1__title{color:var(--secondary-color)}.card1:hover .card1__arrow{background:rgb(170,41,170)}.card1:hover .card1__arrow svg{transform:translate(3px)}.card1:hover strong{color:#aa29aa;font-weight:400}.card1:hover .course-code{color:#aa29aa;font-weight:500}.image-container{display:flex;border-radius:6px;width:250px;height:207px;box-shadow:#3c40434d 0 1px 2px,#3c404326 0 1px 3px 1px}:host ::ng-deep .p-menubar .p-menuitem{position:relative;width:auto}.green300{height:2%;width:2%;padding-right:9px;border-radius:70%;background:#76db9b;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}.red300{height:2%;width:2%;padding-right:9px;border-radius:70%;background:#e35b53;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}.gray300{height:2%;width:2%;padding-right:9px;border-radius:70%;color:#9e9a99;background-color:#9e9a99;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}label{border-radius:50%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Panel, selector: "p-panel", inputs: ["toggleable", "header", "collapsed", "style", "styleClass", "iconPos", "expandIcon", "collapseIcon", "showHeader", "toggler", "transitionOptions"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4.LoaderComponent, selector: "ipt-loader", inputs: ["message", "isDialog"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i5.ScheduleFormatPipe, name: "scheduleFormat" }, { kind: "pipe", type: i6.ScheduleTimeFormatPipe, name: "scheduleTimeFormat" }, { kind: "pipe", type: i7.TypeLevelPipe, name: "typeLevel" }] });
|
|
83
83
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CardCourseComponent, decorators: [{
|
|
84
84
|
type: Component,
|
|
85
|
-
args: [{ selector: 'ipt-card-course', template: "<div class=\"main-container\">\n\n <!-- cards Academy -->\n\n <p-panel\n *ngIf=\"visibleAcademy\"\n header=\"Plan Academy\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"academic_plan\"\n class=\"academic_plan\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseAcademy\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__academic\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br> -->\n <!-- <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br> -->\n <!-- <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n <!-- cards Kids -->\n\n <p-panel\n *ngIf=\"visibleKids\"\n header=\"Plan Kids\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"social_kids\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseKids\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__kids\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br>\n <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br> -->\n <!-- <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n <!-- cards Schools -->\n\n <p-panel\n *ngIf=\"visibleSchools\"\n header=\"Plan Schools\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"social_school\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseSchools\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__schools\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br>\n <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br>\n <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n </div>\n\n\n", styles: ["main{display:flex;gap:.7rem;flex-wrap:wrap}.card1{--border-radius: 6px;--primary-color: #1c77f7;--secondary-color: #2c2c2c;--tertiary-color: #ffffff;width:340px;font-family:Poppins,sans-serif;cursor:pointer;border-radius:var(--border-radius);background:#f1f1f3;box-shadow:0 8px 16px #00000008;position:relative;transition:.3s;border:solid .5px #e0e0e0}.type-theory{color:#00aecc}.type-club{color:#0d9d36}.msg-two-coup{color:#000!important;padding-left:7px;padding-right:7px;border-radius:5px;background-color:#4ed1e9}.msg-two-lev{color:#000!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#fb8f42}.beginner{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#94b9aa}.levelAone{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#c4291c}.levelAonetwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#418ed1}.levelAtwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#4fad65}.levelBone{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#6824b8}.levelBtwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#06161e}.levelBplus{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#cc6529}.main-container{margin-top:1%}.course-code{font-size:12px;font-weight:400;margin-left:.5rem}.card1:hover{box-shadow:#0000003d 0 3px 8px}.card1>*+*{margin-top:.7em}.card1 .card1__content{padding-left:10px;color:var(--secondary-color);font-size:.86rem;font-weight:200;z-index:1;position:relative}strong{color:var(--secondary-color);font-weight:300}:host ::ng-deep .p-panel .p-panel-header .p-panel-header-icon{color:#fff!important}.card1 .card1__title__academic{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(4,18,106);background:linear-gradient(175deg,rgba(4,18,106,1) 27%,rgba(48,63,155,1) 53%,rgba(28,119,247,1)90%);border-radius:6px 6px 0 0}:host ::ng-deep #academic_plan .p-panel .p-panel-header{color:#fff!important;background:rgb(4,18,106);background:linear-gradient(175deg,rgba(4,18,106,1) 27%,rgba(48,63,155,1) 53%,rgba(28,119,247,1)90%);border-radius:6px 6px 0 0}.card1 .card1__title__kids{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(127,33,99);background:linear-gradient(175deg,rgba(127,33,99,1) 27%,rgba(171,49,135,1) 53%,rgba(220,76,178,1) 90%);border-radius:6px 6px 0 0}:host ::ng-deep #social_kids .p-panel .p-panel-header{color:#fff!important;background:rgb(127,33,99);background:linear-gradient(175deg,rgba(127,33,99,1) 27%,rgba(171,49,135,1) 53%,rgba(220,76,178,1) 90%);border-radius:6px 6px 0 0}.card1 .card1__title__schools{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(57,130,154);background:linear-gradient(175deg,rgba(57,130,154,1) 27%,rgba(44,147,180,1) 53%,rgba(135,182,197,1) 90%);border-radius:6px 6px 0 0}:host ::ng-deep #social_school .p-panel .p-panel-header{color:#fff!important;background:rgb(57,130,154);background:linear-gradient(175deg,rgba(57,130,154,1) 27%,rgba(44,147,180,1) 53%,rgba(135,182,197,1) 90%);border-radius:6px 6px 0 0}.card1 .card1__date{color:#807c7c;padding-left:10px;font-size:.4rem;z-index:1;position:relative;margin-bottom:2%;margin-top:.7rem}.card1 .card1__arrow{padding-left:10px;position:absolute;padding:.1rem;border-top-left-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);bottom:0;right:0;transition:.2s;display:flex;justify-content:center;align-items:center;width:50px}.card1 svg{transition:.2s}.card1:hover .card1__title{color:var(--secondary-color)}.card1:hover .card1__arrow{background:rgb(170,41,170)}.card1:hover .card1__arrow svg{transform:translate(3px)}.card1:hover strong{color:#aa29aa;font-weight:400}.card1:hover .course-code{color:#aa29aa;font-weight:500}.image-container{display:flex;border-radius:6px;width:250px;height:207px;box-shadow:#3c40434d 0 1px 2px,#3c404326 0 1px 3px 1px}:host ::ng-deep .p-menubar .p-menuitem{position:relative;width:auto}.green300{height:2%;width:2%;padding-right:9px;border-radius:70%;background:#76db9b;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}.red300{height:2%;width:2%;padding-right:9px;border-radius:70%;background:#e35b53;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}.gray300{height:2%;width:2%;padding-right:9px;border-radius:70%;color:#9e9a99;background-color:#9e9a99;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}label{border-radius:50%}\n"] }]
|
|
85
|
+
args: [{ selector: 'ipt-card-course', template: "<div class=\"main-container\">\n\n <!-- cards Academy -->\n\n <p-panel\n *ngIf=\"visibleAcademy\"\n header=\"Plan Academy\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"academic_plan\"\n class=\"academic_plan\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseAcademy\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__academic\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br> -->\n <!-- <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br> -->\n <!-- <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <!-- <strong><hr></strong> -->\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n <!-- cards Kids -->\n\n <p-panel\n *ngIf=\"visibleKids\"\n header=\"Plan Kids\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"social_kids\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseKids\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__kids\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br>\n <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br> -->\n <!-- <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <!-- <strong><hr></strong> -->\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n <!-- cards Schools -->\n\n <p-panel\n *ngIf=\"visibleSchools\"\n header=\"Plan Schools\"\n [toggleable]=\"true\"\n [collapsed]=\"false\"\n id=\"social_school\"\n >\n <ng-template pTemplate=\"icons\"> </ng-template>\n <main *ngIf=\"!isLoading\" class=\"flex flex-col\">\n <section *ngFor=\"let course of courseSchools\" class=\"card1 animate__animated\" (click)=\"viewDataCourse(course)\">\n <h3 class=\"card1__title__schools\">{{ course.course_type.label }}</h3>\n <p class=\"card1__content\">\n <strong class=\"type-theory\">Clases Teoricas: </strong>{{ course.course_schedule | scheduleFormat }}<br>\n <strong class=\"type-theory\">Horario Teorico: </strong>{{ course.course_schedule | scheduleTimeFormat }}<br>\n <!-- <strong class=\"type-theory\">Theory Teacher: </strong>{{ course.teacher | titlecase }}<br>\n <strong class=\"type-theory\">Theory Classroom: </strong><span>{{ course.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <strong><hr></strong>\n <strong class=\"type-club\">Clases Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleFormat }}</span><br>\n <strong class=\"type-club\">Horario Club: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_schedule | scheduleTimeFormat }}</span><br>\n <!-- <strong class=\"type-club\">Club Teacher: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.teacher | titlecase }}</span><br>\n <strong class=\"type-club\">Club Classroom: </strong>\n <span *ngIf=\"course.course_club\">{{ course.course_club.course_scheduleDetails[0].ClassRoom.name | titlecase}}</span><br> -->\n <!-- <strong><hr></strong> -->\n <strong *ngIf=\"course.start_date === null\">Posible inicio: </strong>{{ course.start_date === null ? course.to_start : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.start_date === null\">\n <strong *ngIf=\"course.start_date !== null\">Fecha Inicio: </strong>{{ course.start_date !== null ? course.start_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <strong *ngIf=\"course.finish_date !== null\">Fecha culminacion: </strong>{{ course.finish_date !== null ? course.finish_date : null | date:'dd/MM/yyyy' }}<br *ngIf=\"course.finish_date !== null\">\n <!-- <strong>Created: </strong>{{ course.created_at | date:'dd/MM/yyyy' }}<br> -->\n </p>\n <div class=\"card1__date\">\n <!-- <span\n [ngClass]=\"course.status?.color_status\"\n ></span> -->\n <!-- <span class=\"course-code\">Code: {{course.code}}</span> -->\n </div>\n <div class=\"card1__arrow\" [ngClass]=\"getCssClass(course.english_level.name)\">\n <span>{{ course.english_level.name | typeLevel}}</span>\n </div>\n </section>\n </main>\n <ipt-loader *ngIf=\"isLoading\"></ipt-loader>\n </p-panel>\n\n </div>\n\n\n", styles: ["main{display:flex;gap:.7rem;flex-wrap:wrap}.card1{--border-radius: 6px;--primary-color: #1c77f7;--secondary-color: #2c2c2c;--tertiary-color: #ffffff;width:340px;font-family:Poppins,sans-serif;cursor:pointer;border-radius:var(--border-radius);background:#f1f1f3;box-shadow:0 8px 16px #00000008;position:relative;transition:.3s;border:solid .5px #e0e0e0}.type-theory{color:#00aecc}.type-club{color:#0d9d36}.msg-two-coup{color:#000!important;padding-left:7px;padding-right:7px;border-radius:5px;background-color:#4ed1e9}.msg-two-lev{color:#000!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#fb8f42}.beginner{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#94b9aa}.levelAone{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#c4291c}.levelAonetwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#418ed1}.levelAtwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#4fad65}.levelBone{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#6824b8}.levelBtwo{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#06161e}.levelBplus{color:#fff!important;padding-left:5px;padding-right:5px;border-radius:5px;margin-left:13px;background-color:#cc6529}.main-container{margin-top:1%}.course-code{font-size:12px;font-weight:400;margin-left:.5rem}.card1:hover{box-shadow:#0000003d 0 3px 8px}.card1>*+*{margin-top:.7em}.card1 .card1__content{padding-left:10px;color:var(--secondary-color);font-size:.86rem;font-weight:200;z-index:1;position:relative}strong{color:var(--secondary-color);font-weight:300}:host ::ng-deep .p-panel .p-panel-header .p-panel-header-icon{color:#fff!important}.card1 .card1__title__academic{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(4,18,106);background:linear-gradient(175deg,rgba(4,18,106,1) 27%,rgba(48,63,155,1) 53%,rgba(28,119,247,1)90%);border-radius:6px 6px 0 0}:host ::ng-deep #academic_plan .p-panel .p-panel-header{color:#fff!important;background:rgb(4,18,106);background:linear-gradient(175deg,rgba(4,18,106,1) 27%,rgba(48,63,155,1) 53%,rgba(28,119,247,1)90%);border-radius:6px 6px 0 0}.card1 .card1__title__kids{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(127,33,99);background:linear-gradient(175deg,rgba(127,33,99,1) 27%,rgba(171,49,135,1) 53%,rgba(220,76,178,1) 90%);border-radius:6px 6px 0 0}:host ::ng-deep #social_kids .p-panel .p-panel-header{color:#fff!important;background:rgb(127,33,99);background:linear-gradient(175deg,rgba(127,33,99,1) 27%,rgba(171,49,135,1) 53%,rgba(220,76,178,1) 90%);border-radius:6px 6px 0 0}.card1 .card1__title__schools{color:#fff;padding-left:10px;padding-right:10px;font-size:1.1rem;font-weight:300;z-index:1;position:relative;background:rgb(57,130,154);background:linear-gradient(175deg,rgba(57,130,154,1) 27%,rgba(44,147,180,1) 53%,rgba(135,182,197,1) 90%);border-radius:6px 6px 0 0}:host ::ng-deep #social_school .p-panel .p-panel-header{color:#fff!important;background:rgb(57,130,154);background:linear-gradient(175deg,rgba(57,130,154,1) 27%,rgba(44,147,180,1) 53%,rgba(135,182,197,1) 90%);border-radius:6px 6px 0 0}.card1 .card1__date{color:#807c7c;padding-left:10px;font-size:.4rem;z-index:1;position:relative;margin-bottom:2%;margin-top:.7rem}.card1 .card1__arrow{padding-left:10px;position:absolute;padding:.1rem;border-top-left-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);bottom:0;right:0;transition:.2s;display:flex;justify-content:center;align-items:center;width:50px}.card1 svg{transition:.2s}.card1:hover .card1__title{color:var(--secondary-color)}.card1:hover .card1__arrow{background:rgb(170,41,170)}.card1:hover .card1__arrow svg{transform:translate(3px)}.card1:hover strong{color:#aa29aa;font-weight:400}.card1:hover .course-code{color:#aa29aa;font-weight:500}.image-container{display:flex;border-radius:6px;width:250px;height:207px;box-shadow:#3c40434d 0 1px 2px,#3c404326 0 1px 3px 1px}:host ::ng-deep .p-menubar .p-menuitem{position:relative;width:auto}.green300{height:2%;width:2%;padding-right:9px;border-radius:70%;background:#76db9b;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}.red300{height:2%;width:2%;padding-right:9px;border-radius:70%;background:#e35b53;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}.gray300{height:2%;width:2%;padding-right:9px;border-radius:70%;color:#9e9a99;background-color:#9e9a99;box-shadow:-1px 0 1px 1px #000000fa;border:1px solid rgb(0 0 0 / 40%)}label{border-radius:50%}\n"] }]
|
|
86
86
|
}], propDecorators: { CourseData: [{
|
|
87
87
|
type: Input
|
|
88
88
|
}], isLoading: [{
|
|
@@ -90,4 +90,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
|
|
|
90
90
|
}], codeCourse: [{
|
|
91
91
|
type: Output
|
|
92
92
|
}] } });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1jb3Vyc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NhcmQtY291cnNlL2NhcmQtY291cnNlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jYXJkLWNvdXJzZS9jYXJkLWNvdXJzZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7OztBQVF6RyxNQUFNLE9BQU8sbUJBQW1CO0lBTGhDO1FBT1csY0FBUyxHQUFHLElBQUksQ0FBQTtRQUNmLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRWxELGtCQUFhLEdBQU8sRUFBRSxDQUFDO1FBQ3ZCLGVBQVUsR0FBTyxFQUFFLENBQUM7UUFDcEIsa0JBQWEsR0FBTyxFQUFFLENBQUM7UUFDdkIsbUJBQWMsR0FBSSxLQUFLLENBQUM7UUFDeEIsZ0JBQVcsR0FBSSxLQUFLLENBQUM7UUFDckIsbUJBQWMsR0FBSSxLQUFLLENBQUM7S0E2RHpCO0lBM0RDLFFBQVE7UUFDUixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsU0FBUyxHQUFDLElBQUksQ0FBQztTQUNyQjthQUFJO1lBQ0gsSUFBSSxDQUFDLFNBQVMsR0FBQyxLQUFLLENBQUM7U0FDdEI7SUFDRCxDQUFDO0lBQ0QsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNwQixJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO2dCQUN4QixJQUFJLENBQUMsU0FBUyxHQUFDLEtBQUssQ0FBQTtnQkFDcEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO2dCQUN6QixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQzthQUM3QjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsU0FBUyxHQUFDLEtBQUssQ0FBQTtnQkFDcEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQztnQkFDN0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztnQkFDdkMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQztnQkFDN0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7Z0JBQzdELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO2dCQUN2RCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQzthQUM5RDtTQUNGO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxVQUFlO1FBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBYTtRQUN2QixRQUFPLEtBQUssRUFBRTtZQUNaLEtBQUssUUFBUTtnQkFDWCxPQUFPLFdBQVcsQ0FBQTtZQUNwQixLQUFLLElBQUk7Z0JBQ1AsT0FBTyxjQUFjLENBQUE7WUFDdkIsS0FBSyxJQUFJO2dCQUNQLE9BQU8sV0FBVyxDQUFDO1lBQ3JCLEtBQUssSUFBSTtnQkFDUCxPQUFPLFdBQVcsQ0FBQTtZQUNwQixLQUFLLElBQUk7Z0JBQ1AsT0FBTyxXQUFXLENBQUE7WUFDcEIsS0FBSyxLQUFLO2dCQUNSLE9BQU8sWUFBWSxDQUFBO1lBQ3JCLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssV0FBVyxDQUFDO1lBQ2pCLEtBQUssYUFBYSxDQUFDO1lBQ25CLEtBQUssY0FBYyxDQUFDO1lBQ3BCLEtBQUssZUFBZSxDQUFDO1lBQ3JCLEtBQUssWUFBWSxDQUFDO1lBQ2xCLEtBQUssYUFBYTtnQkFDaEIsT0FBTyxVQUFVLENBQUM7WUFDcEI7Z0JBQ0UsT0FBTyxFQUFFLENBQUM7U0FDYjtJQUNILENBQUM7O2dIQXRFVSxtQkFBbUI7b0dBQW5CLG1CQUFtQixpTENSaEMscWlTQW1KQTsyRkQzSWEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGlCQUFpQjs4QkFLakIsVUFBVTtzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpcHQtY2FyZC1jb3Vyc2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC1jb3Vyc2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXJkLWNvdXJzZS5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ2FyZENvdXJzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0IHtcbiAgQElucHV0ICgpIENvdXJzZURhdGE/OmFueTtcbiAgQElucHV0KCkgaXNMb2FkaW5nID0gdHJ1ZVxuICBAT3V0cHV0KCkgY29kZUNvdXJzZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIGNvdXJzZUFjYWRlbXk6YW55W109W107XG4gIGNvdXJzZUtpZHM6YW55W109W107XG4gIGNvdXJzZVNjaG9vbHM6YW55W109W107XG4gIHZpc2libGVBY2FkZW15ID0gIGZhbHNlO1xuICB2aXNpYmxlS2lkcyA9ICBmYWxzZTtcbiAgdmlzaWJsZVNjaG9vbHMgPSAgZmFsc2U7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIGlmICh0aGlzLkNvdXJzZURhdGEubGVuZ3RoID09IDApIHtcbiAgICB0aGlzLmlzTG9hZGluZz10cnVlO1xuICB9ZWxzZXtcbiAgICB0aGlzLmlzTG9hZGluZz1mYWxzZTtcbiAgfVxuICB9XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1snQ291cnNlRGF0YSddKSB7XG4gICAgICBpZiAoIXRoaXMuQ291cnNlRGF0YSkge1xuICAgICAgICB0aGlzLmNvdXJzZUFjYWRlbXkgPSBbXTtcbiAgICAgICAgdGhpcy5jb3Vyc2VLaWRzID0gW107XG4gICAgICAgIHRoaXMuY291cnNlU2Nob29scyA9IFtdO1xuICAgICAgICB0aGlzLmlzTG9hZGluZz1mYWxzZVxuICAgICAgICB0aGlzLnZpc2libGVBY2FkZW15ID0gZmFsc2U7XG4gICAgICAgIHRoaXMudmlzaWJsZUtpZHMgPSBmYWxzZTtcbiAgICAgICAgdGhpcy52aXNpYmxlU2Nob29scyA9IGZhbHNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmc9ZmFsc2VcbiAgICAgICAgdGhpcy5jb3Vyc2VBY2FkZW15ID0gdGhpcy5Db3Vyc2VEYXRhLkFjYWRlbXk7XG4gICAgICAgIHRoaXMuY291cnNlS2lkcyA9IHRoaXMuQ291cnNlRGF0YS5LaWRzO1xuICAgICAgICB0aGlzLmNvdXJzZVNjaG9vbHMgPSB0aGlzLkNvdXJzZURhdGEuU2Nob29scztcbiAgICAgICAgdGhpcy52aXNpYmxlQWNhZGVteSA9IHRoaXMuQ291cnNlRGF0YS5BY2FkZW15ID8gdHJ1ZSA6IGZhbHNlO1xuICAgICAgICB0aGlzLnZpc2libGVLaWRzID0gdGhpcy5Db3Vyc2VEYXRhLktpZHMgPyB0cnVlIDogZmFsc2U7XG4gICAgICAgIHRoaXMudmlzaWJsZVNjaG9vbHMgPSB0aGlzLkNvdXJzZURhdGEuU2Nob29scyA/IHRydWUgOiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB2aWV3RGF0YUNvdXJzZShjb2RlQ291cnNlOiBhbnkpe1xuICAgIHRoaXMuY29kZUNvdXJzZS5lbWl0KGNvZGVDb3Vyc2UpO1xuICB9XG5cbiAgZ2V0Q3NzQ2xhc3MobGV2ZWw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgc3dpdGNoKGxldmVsKSB7XG4gICAgICBjYXNlICdQUkUtQTEnOlxuICAgICAgICByZXR1cm4gJ2xldmVsQW9uZSdcbiAgICAgIGNhc2UgJ0ExJzpcbiAgICAgICAgcmV0dXJuICdsZXZlbEFvbmV0d28nXG4gICAgICBjYXNlICdBMic6XG4gICAgICAgIHJldHVybiAnbGV2ZWxBdHdvJztcbiAgICAgIGNhc2UgJ0IxJzpcbiAgICAgICAgcmV0dXJuICdsZXZlbEJvbmUnXG4gICAgICBjYXNlICdCMic6XG4gICAgICAgIHJldHVybiAnbGV2ZWxCdHdvJ1xuICAgICAgY2FzZSAnQjErJzpcbiAgICAgICAgcmV0dXJuICdsZXZlbEJwbHVzJ1xuICAgICAgY2FzZSAnTU9WRVJTIEknOlxuICAgICAgY2FzZSAnTU9WRVJTIElJJzpcbiAgICAgIGNhc2UgJ0JFR0lOTkVSUyBJJzpcbiAgICAgIGNhc2UgJ0JFR0lOTkVSUyBJSSc6XG4gICAgICBjYXNlICdCRUdJTk5FUlMgSUlJJzpcbiAgICAgIGNhc2UgJ1NUQVJURVJTIEknOlxuICAgICAgY2FzZSAnU1RBUlRFUlMgSUknOlxuICAgICAgICByZXR1cm4gJ2JlZ2lubmVyJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJtYWluLWNvbnRhaW5lclwiPlxuXG4gIDwhLS0gY2FyZHMgQWNhZGVteSAtLT5cblxuICA8cC1wYW5lbFxuICAqbmdJZj1cInZpc2libGVBY2FkZW15XCJcbiAgaGVhZGVyPVwiUGxhbiBBY2FkZW15XCJcbiAgW3RvZ2dsZWFibGVdPVwidHJ1ZVwiXG4gIFtjb2xsYXBzZWRdPVwiZmFsc2VcIlxuICBpZD1cImFjYWRlbWljX3BsYW5cIlxuICBjbGFzcz1cImFjYWRlbWljX3BsYW5cIlxuICA+XG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJpY29uc1wiPiA8L25nLXRlbXBsYXRlPlxuICAgIDxtYWluICpuZ0lmPVwiIWlzTG9hZGluZ1wiIGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgICAgPHNlY3Rpb24gKm5nRm9yPVwibGV0IGNvdXJzZSBvZiBjb3Vyc2VBY2FkZW15XCIgY2xhc3M9XCJjYXJkMSBhbmltYXRlX19hbmltYXRlZFwiICAoY2xpY2spPVwidmlld0RhdGFDb3Vyc2UoY291cnNlKVwiPlxuICAgICAgICA8aDMgY2xhc3M9XCJjYXJkMV9fdGl0bGVfX2FjYWRlbWljXCI+e3sgY291cnNlLmNvdXJzZV90eXBlLmxhYmVsIH19PC9oMz5cbiAgICAgICAgPHAgY2xhc3M9XCJjYXJkMV9fY29udGVudFwiPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPkNsYXNlcyBUZW9yaWNhczogPC9zdHJvbmc+e3sgY291cnNlLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlRm9ybWF0IH19PGJyPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPkhvcmFyaW8gVGVvcmljbzogPC9zdHJvbmc+e3sgY291cnNlLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlVGltZUZvcm1hdCB9fTxicj5cbiAgICAgICAgICA8IS0tIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPlRoZW9yeSBUZWFjaGVyOiA8L3N0cm9uZz57eyBjb3Vyc2UudGVhY2hlciB8IHRpdGxlY2FzZSB9fTxicj4gLS0+XG4gICAgICAgICAgPCEtLSA8c3Ryb25nIGNsYXNzPVwidHlwZS10aGVvcnlcIj5UaGVvcnkgQ2xhc3Nyb29tOiA8L3N0cm9uZz48c3Bhbj57eyBjb3Vyc2UuY291cnNlX3NjaGVkdWxlRGV0YWlsc1swXS5DbGFzc1Jvb20ubmFtZSAgfCB0aXRsZWNhc2V9fTwvc3Bhbj48YnI+IC0tPlxuICAgICAgICAgIDxzdHJvbmc+PGhyPjwvc3Ryb25nPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLWNsdWJcIj5DbGFzZXMgQ2x1YjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi5jb3Vyc2Vfc2NoZWR1bGUgfCBzY2hlZHVsZUZvcm1hdCB9fTwvc3Bhbj48YnI+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInR5cGUtY2x1YlwiPkhvcmFyaW8gQ2x1YjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi5jb3Vyc2Vfc2NoZWR1bGUgfCBzY2hlZHVsZVRpbWVGb3JtYXQgfX08L3NwYW4+PGJyPlxuICAgICAgICAgIDwhLS0gPHN0cm9uZyBjbGFzcz1cInR5cGUtY2x1YlwiPkNsdWIgVGVhY2hlcjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi50ZWFjaGVyIHwgdGl0bGVjYXNlIH19PC9zcGFuPjxicj4gLS0+XG4gICAgICAgICAgPCEtLSA8c3Ryb25nIGNsYXNzPVwidHlwZS1jbHViXCI+Q2x1YiBDbGFzc3Jvb206IDwvc3Ryb25nPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb3Vyc2UuY291cnNlX2NsdWJcIj57eyBjb3Vyc2UuY291cnNlX2NsdWIuY291cnNlX3NjaGVkdWxlRGV0YWlsc1swXS5DbGFzc1Jvb20ubmFtZSAgfCB0aXRsZWNhc2V9fTwvc3Bhbj48YnI+IC0tPlxuICAgICAgICAgIDxzdHJvbmc+PGhyPjwvc3Ryb25nPlxuICAgICAgICAgIDxzdHJvbmcgKm5nSWY9XCJjb3Vyc2Uuc3RhcnRfZGF0ZSA9PT0gbnVsbFwiPlBvc2libGUgaW5pY2lvOiA8L3N0cm9uZz57eyBjb3Vyc2Uuc3RhcnRfZGF0ZSA9PT0gbnVsbCA/IGNvdXJzZS50b19zdGFydCA6IG51bGwgfCBkYXRlOidkZC9NTS95eXl5JyB9fTxiciAqbmdJZj1cImNvdXJzZS5zdGFydF9kYXRlID09PSBudWxsXCI+XG4gICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvdXJzZS5zdGFydF9kYXRlICE9PSBudWxsXCI+RmVjaGEgSW5pY2lvOiA8L3N0cm9uZz57eyBjb3Vyc2Uuc3RhcnRfZGF0ZSAhPT0gbnVsbCA/IGNvdXJzZS5zdGFydF9kYXRlIDogbnVsbCB8IGRhdGU6J2RkL01NL3l5eXknIH19PGJyICpuZ0lmPVwiY291cnNlLmZpbmlzaF9kYXRlICE9PSBudWxsXCI+XG4gICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvdXJzZS5maW5pc2hfZGF0ZSAhPT0gbnVsbFwiPkZlY2hhIGN1bG1pbmFjaW9uOiA8L3N0cm9uZz57eyBjb3Vyc2UuZmluaXNoX2RhdGUgIT09IG51bGwgPyBjb3Vyc2UuZmluaXNoX2RhdGUgOiBudWxsIHwgZGF0ZTonZGQvTU0veXl5eScgfX08YnIgKm5nSWY9XCJjb3Vyc2UuZmluaXNoX2RhdGUgIT09IG51bGxcIj5cbiAgICAgICAgICA8IS0tIDxzdHJvbmc+Q3JlYXRlZDogPC9zdHJvbmc+e3sgY291cnNlLmNyZWF0ZWRfYXQgfCBkYXRlOidkZC9NTS95eXl5JyB9fTxicj4gLS0+XG4gICAgICAgIDwvcD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQxX19kYXRlXCI+XG4gICAgICAgICAgPCEtLSA8c3BhblxuICAgICAgICAgIFtuZ0NsYXNzXT1cImNvdXJzZS5zdGF0dXM/LmNvbG9yX3N0YXR1c1wiXG4gICAgICAgICAgPjwvc3Bhbj4gLS0+XG4gICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImNvdXJzZS1jb2RlXCI+Q29kZToge3tjb3Vyc2UuY29kZX19PC9zcGFuPiAtLT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkMV9fYXJyb3dcIiBbbmdDbGFzc109XCJnZXRDc3NDbGFzcyhjb3Vyc2UuZW5nbGlzaF9sZXZlbC5uYW1lKVwiPlxuICAgICAgICAgIDxzcGFuPnt7IGNvdXJzZS5lbmdsaXNoX2xldmVsLm5hbWUgfCB0eXBlTGV2ZWx9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9tYWluPlxuICAgIDxpcHQtbG9hZGVyICpuZ0lmPVwiaXNMb2FkaW5nXCI+PC9pcHQtbG9hZGVyPlxuICA8L3AtcGFuZWw+XG5cbiAgPCEtLSBjYXJkcyBLaWRzIC0tPlxuXG4gIDxwLXBhbmVsXG4gICpuZ0lmPVwidmlzaWJsZUtpZHNcIlxuICBoZWFkZXI9XCJQbGFuIEtpZHNcIlxuICBbdG9nZ2xlYWJsZV09XCJ0cnVlXCJcbiAgW2NvbGxhcHNlZF09XCJmYWxzZVwiXG4gIGlkPVwic29jaWFsX2tpZHNcIlxuICA+XG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJpY29uc1wiPiA8L25nLXRlbXBsYXRlPlxuICAgIDxtYWluICpuZ0lmPVwiIWlzTG9hZGluZ1wiIGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgICAgPHNlY3Rpb24gKm5nRm9yPVwibGV0IGNvdXJzZSBvZiBjb3Vyc2VLaWRzXCIgY2xhc3M9XCJjYXJkMSBhbmltYXRlX19hbmltYXRlZFwiICAoY2xpY2spPVwidmlld0RhdGFDb3Vyc2UoY291cnNlKVwiPlxuICAgICAgICA8aDMgY2xhc3M9XCJjYXJkMV9fdGl0bGVfX2tpZHNcIj57eyBjb3Vyc2UuY291cnNlX3R5cGUubGFiZWwgfX08L2gzPlxuICAgICAgICA8cCBjbGFzcz1cImNhcmQxX19jb250ZW50XCI+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInR5cGUtdGhlb3J5XCI+Q2xhc2VzIFRlb3JpY2FzOiA8L3N0cm9uZz57eyBjb3Vyc2UuY291cnNlX3NjaGVkdWxlIHwgc2NoZWR1bGVGb3JtYXQgfX08YnI+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInR5cGUtdGhlb3J5XCI+SG9yYXJpbyBUZW9yaWNvOiA8L3N0cm9uZz57eyBjb3Vyc2UuY291cnNlX3NjaGVkdWxlIHwgc2NoZWR1bGVUaW1lRm9ybWF0IH19PGJyPlxuICAgICAgICAgIDwhLS0gPHN0cm9uZyBjbGFzcz1cInR5cGUtdGhlb3J5XCI+VGhlb3J5IFRlYWNoZXI6IDwvc3Ryb25nPnt7IGNvdXJzZS50ZWFjaGVyIHwgdGl0bGVjYXNlIH19PGJyPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPlRoZW9yeSBDbGFzc3Jvb206IDwvc3Ryb25nPjxzcGFuPnt7IGNvdXJzZS5jb3Vyc2Vfc2NoZWR1bGVEZXRhaWxzWzBdLkNsYXNzUm9vbS5uYW1lICB8IHRpdGxlY2FzZX19PC9zcGFuPjxicj4gLS0+XG4gICAgICAgICAgPHN0cm9uZz48aHI+PC9zdHJvbmc+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInR5cGUtY2x1YlwiPkNsYXNlcyBDbHViOiA8L3N0cm9uZz5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY291cnNlLmNvdXJzZV9jbHViXCI+e3sgY291cnNlLmNvdXJzZV9jbHViLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlRm9ybWF0IH19PC9zcGFuPjxicj5cbiAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwidHlwZS1jbHViXCI+SG9yYXJpbyBDbHViOiA8L3N0cm9uZz5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY291cnNlLmNvdXJzZV9jbHViXCI+e3sgY291cnNlLmNvdXJzZV9jbHViLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlVGltZUZvcm1hdCB9fTwvc3Bhbj48YnI+XG4gICAgICAgICAgPCEtLSA8c3Ryb25nIGNsYXNzPVwidHlwZS1jbHViXCI+Q2x1YiBUZWFjaGVyOiA8L3N0cm9uZz5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY291cnNlLmNvdXJzZV9jbHViXCI+e3sgY291cnNlLmNvdXJzZV9jbHViLnRlYWNoZXIgfCB0aXRsZWNhc2UgfX08L3NwYW4+PGJyPiAtLT5cbiAgICAgICAgICA8IS0tIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLWNsdWJcIj5DbHViIENsYXNzcm9vbTogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi5jb3Vyc2Vfc2NoZWR1bGVEZXRhaWxzWzBdLkNsYXNzUm9vbS5uYW1lICB8IHRpdGxlY2FzZX19PC9zcGFuPjxicj4gLS0+XG4gICAgICAgICAgPHN0cm9uZz48aHI+PC9zdHJvbmc+XG4gICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvdXJzZS5zdGFydF9kYXRlID09PSBudWxsXCI+UG9zaWJsZSBpbmljaW86IDwvc3Ryb25nPnt7IGNvdXJzZS5zdGFydF9kYXRlID09PSBudWxsID8gY291cnNlLnRvX3N0YXJ0IDogbnVsbCB8IGRhdGU6J2RkL01NL3l5eXknIH19PGJyICpuZ0lmPVwiY291cnNlLnN0YXJ0X2RhdGUgPT09IG51bGxcIj5cbiAgICAgICAgICA8c3Ryb25nICpuZ0lmPVwiY291cnNlLnN0YXJ0X2RhdGUgIT09IG51bGxcIj5GZWNoYSBJbmljaW86IDwvc3Ryb25nPnt7IGNvdXJzZS5zdGFydF9kYXRlICE9PSBudWxsID8gY291cnNlLnN0YXJ0X2RhdGUgOiBudWxsIHwgZGF0ZTonZGQvTU0veXl5eScgfX08YnIgKm5nSWY9XCJjb3Vyc2UuZmluaXNoX2RhdGUgIT09IG51bGxcIj5cbiAgICAgICAgICA8c3Ryb25nICpuZ0lmPVwiY291cnNlLmZpbmlzaF9kYXRlICE9PSBudWxsXCI+RmVjaGEgY3VsbWluYWNpb246IDwvc3Ryb25nPnt7IGNvdXJzZS5maW5pc2hfZGF0ZSAhPT0gbnVsbCA/IGNvdXJzZS5maW5pc2hfZGF0ZSA6IG51bGwgfCBkYXRlOidkZC9NTS95eXl5JyB9fTxiciAqbmdJZj1cImNvdXJzZS5maW5pc2hfZGF0ZSAhPT0gbnVsbFwiPlxuICAgICAgICAgIDwhLS0gPHN0cm9uZz5DcmVhdGVkOiA8L3N0cm9uZz57eyBjb3Vyc2UuY3JlYXRlZF9hdCB8IGRhdGU6J2RkL01NL3l5eXknIH19PGJyPiAtLT5cbiAgICAgICAgPC9wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZDFfX2RhdGVcIj5cbiAgICAgICAgICA8IS0tIDxzcGFuXG4gICAgICAgICAgW25nQ2xhc3NdPVwiY291cnNlLnN0YXR1cz8uY29sb3Jfc3RhdHVzXCJcbiAgICAgICAgICA+PC9zcGFuPiAtLT5cbiAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiY291cnNlLWNvZGVcIj5Db2RlOiB7e2NvdXJzZS5jb2RlfX08L3NwYW4+IC0tPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQxX19hcnJvd1wiIFtuZ0NsYXNzXT1cImdldENzc0NsYXNzKGNvdXJzZS5lbmdsaXNoX2xldmVsLm5hbWUpXCI+XG4gICAgICAgICAgPHNwYW4+e3sgY291cnNlLmVuZ2xpc2hfbGV2ZWwubmFtZSB8IHR5cGVMZXZlbH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvc2VjdGlvbj5cbiAgICA8L21haW4+XG4gICAgPGlwdC1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIj48L2lwdC1sb2FkZXI+XG4gIDwvcC1wYW5lbD5cblxuICA8IS0tIGNhcmRzIFNjaG9vbHMgLS0+XG5cbiAgPHAtcGFuZWxcbiAgKm5nSWY9XCJ2aXNpYmxlU2Nob29sc1wiXG4gIGhlYWRlcj1cIlBsYW4gU2Nob29sc1wiXG4gIFt0b2dnbGVhYmxlXT1cInRydWVcIlxuICBbY29sbGFwc2VkXT1cImZhbHNlXCJcbiAgaWQ9XCJzb2NpYWxfc2Nob29sXCJcbiAgPlxuICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaWNvbnNcIj4gPC9uZy10ZW1wbGF0ZT5cbiAgICA8bWFpbiAqbmdJZj1cIiFpc0xvYWRpbmdcIiBjbGFzcz1cImZsZXggZmxleC1jb2xcIj5cbiAgICAgIDxzZWN0aW9uICpuZ0Zvcj1cImxldCBjb3Vyc2Ugb2YgY291cnNlU2Nob29sc1wiIGNsYXNzPVwiY2FyZDEgYW5pbWF0ZV9fYW5pbWF0ZWRcIiAgKGNsaWNrKT1cInZpZXdEYXRhQ291cnNlKGNvdXJzZSlcIj5cbiAgICAgICAgPGgzIGNsYXNzPVwiY2FyZDFfX3RpdGxlX19zY2hvb2xzXCI+e3sgY291cnNlLmNvdXJzZV90eXBlLmxhYmVsIH19PC9oMz5cbiAgICAgICAgPHAgY2xhc3M9XCJjYXJkMV9fY29udGVudFwiPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPkNsYXNlcyBUZW9yaWNhczogPC9zdHJvbmc+e3sgY291cnNlLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlRm9ybWF0IH19PGJyPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPkhvcmFyaW8gVGVvcmljbzogPC9zdHJvbmc+e3sgY291cnNlLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlVGltZUZvcm1hdCB9fTxicj5cbiAgICAgICAgICA8IS0tIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPlRoZW9yeSBUZWFjaGVyOiA8L3N0cm9uZz57eyBjb3Vyc2UudGVhY2hlciB8IHRpdGxlY2FzZSB9fTxicj5cbiAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwidHlwZS10aGVvcnlcIj5UaGVvcnkgQ2xhc3Nyb29tOiA8L3N0cm9uZz48c3Bhbj57eyBjb3Vyc2UuY291cnNlX3NjaGVkdWxlRGV0YWlsc1swXS5DbGFzc1Jvb20ubmFtZSAgfCB0aXRsZWNhc2V9fTwvc3Bhbj48YnI+IC0tPlxuICAgICAgICAgIDxzdHJvbmc+PGhyPjwvc3Ryb25nPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLWNsdWJcIj5DbGFzZXMgQ2x1YjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi5jb3Vyc2Vfc2NoZWR1bGUgfCBzY2hlZHVsZUZvcm1hdCB9fTwvc3Bhbj48YnI+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInR5cGUtY2x1YlwiPkhvcmFyaW8gQ2x1YjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi5jb3Vyc2Vfc2NoZWR1bGUgfCBzY2hlZHVsZVRpbWVGb3JtYXQgfX08L3NwYW4+PGJyPlxuICAgICAgICAgIDwhLS0gPHN0cm9uZyBjbGFzcz1cInR5cGUtY2x1YlwiPkNsdWIgVGVhY2hlcjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi50ZWFjaGVyIHwgdGl0bGVjYXNlIH19PC9zcGFuPjxicj5cbiAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwidHlwZS1jbHViXCI+Q2x1YiBDbGFzc3Jvb206IDwvc3Ryb25nPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb3Vyc2UuY291cnNlX2NsdWJcIj57eyBjb3Vyc2UuY291cnNlX2NsdWIuY291cnNlX3NjaGVkdWxlRGV0YWlsc1swXS5DbGFzc1Jvb20ubmFtZSAgfCB0aXRsZWNhc2V9fTwvc3Bhbj48YnI+IC0tPlxuICAgICAgICAgIDxzdHJvbmc+PGhyPjwvc3Ryb25nPlxuICAgICAgICAgIDxzdHJvbmcgKm5nSWY9XCJjb3Vyc2Uuc3RhcnRfZGF0ZSA9PT0gbnVsbFwiPlBvc2libGUgaW5pY2lvOiA8L3N0cm9uZz57eyBjb3Vyc2Uuc3RhcnRfZGF0ZSA9PT0gbnVsbCA/IGNvdXJzZS50b19zdGFydCA6IG51bGwgfCBkYXRlOidkZC9NTS95eXl5JyB9fTxiciAqbmdJZj1cImNvdXJzZS5zdGFydF9kYXRlID09PSBudWxsXCI+XG4gICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvdXJzZS5zdGFydF9kYXRlICE9PSBudWxsXCI+RmVjaGEgSW5pY2lvOiA8L3N0cm9uZz57eyBjb3Vyc2Uuc3RhcnRfZGF0ZSAhPT0gbnVsbCA/IGNvdXJzZS5zdGFydF9kYXRlIDogbnVsbCB8IGRhdGU6J2RkL01NL3l5eXknIH19PGJyICpuZ0lmPVwiY291cnNlLmZpbmlzaF9kYXRlICE9PSBudWxsXCI+XG4gICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvdXJzZS5maW5pc2hfZGF0ZSAhPT0gbnVsbFwiPkZlY2hhIGN1bG1pbmFjaW9uOiA8L3N0cm9uZz57eyBjb3Vyc2UuZmluaXNoX2RhdGUgIT09IG51bGwgPyBjb3Vyc2UuZmluaXNoX2RhdGUgOiBudWxsIHwgZGF0ZTonZGQvTU0veXl5eScgfX08YnIgKm5nSWY9XCJjb3Vyc2UuZmluaXNoX2RhdGUgIT09IG51bGxcIj5cbiAgICAgICAgICA8IS0tIDxzdHJvbmc+Q3JlYXRlZDogPC9zdHJvbmc+e3sgY291cnNlLmNyZWF0ZWRfYXQgfCBkYXRlOidkZC9NTS95eXl5JyB9fTxicj4gLS0+XG4gICAgICAgIDwvcD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQxX19kYXRlXCI+XG4gICAgICAgICAgPCEtLSA8c3BhblxuICAgICAgICAgIFtuZ0NsYXNzXT1cImNvdXJzZS5zdGF0dXM/LmNvbG9yX3N0YXR1c1wiXG4gICAgICAgICAgPjwvc3Bhbj4gLS0+XG4gICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImNvdXJzZS1jb2RlXCI+Q29kZToge3tjb3Vyc2UuY29kZX19PC9zcGFuPiAtLT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkMV9fYXJyb3dcIiBbbmdDbGFzc109XCJnZXRDc3NDbGFzcyhjb3Vyc2UuZW5nbGlzaF9sZXZlbC5uYW1lKVwiPlxuICAgICAgICAgIDxzcGFuPnt7IGNvdXJzZS5lbmdsaXNoX2xldmVsLm5hbWUgfCB0eXBlTGV2ZWx9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9tYWluPlxuICAgIDxpcHQtbG9hZGVyICpuZ0lmPVwiaXNMb2FkaW5nXCI+PC9pcHQtbG9hZGVyPlxuICA8L3AtcGFuZWw+XG5cbiAgPC9kaXY+XG5cblxuIl19
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1jb3Vyc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NhcmQtY291cnNlL2NhcmQtY291cnNlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jYXJkLWNvdXJzZS9jYXJkLWNvdXJzZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7OztBQVF6RyxNQUFNLE9BQU8sbUJBQW1CO0lBTGhDO1FBT1csY0FBUyxHQUFHLElBQUksQ0FBQTtRQUNmLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRWxELGtCQUFhLEdBQU8sRUFBRSxDQUFDO1FBQ3ZCLGVBQVUsR0FBTyxFQUFFLENBQUM7UUFDcEIsa0JBQWEsR0FBTyxFQUFFLENBQUM7UUFDdkIsbUJBQWMsR0FBSSxLQUFLLENBQUM7UUFDeEIsZ0JBQVcsR0FBSSxLQUFLLENBQUM7UUFDckIsbUJBQWMsR0FBSSxLQUFLLENBQUM7S0E2RHpCO0lBM0RDLFFBQVE7UUFDUixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsU0FBUyxHQUFDLElBQUksQ0FBQztTQUNyQjthQUFJO1lBQ0gsSUFBSSxDQUFDLFNBQVMsR0FBQyxLQUFLLENBQUM7U0FDdEI7SUFDRCxDQUFDO0lBQ0QsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNwQixJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO2dCQUN4QixJQUFJLENBQUMsU0FBUyxHQUFDLEtBQUssQ0FBQTtnQkFDcEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO2dCQUN6QixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQzthQUM3QjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsU0FBUyxHQUFDLEtBQUssQ0FBQTtnQkFDcEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQztnQkFDN0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztnQkFDdkMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQztnQkFDN0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7Z0JBQzdELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO2dCQUN2RCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQzthQUM5RDtTQUNGO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxVQUFlO1FBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBYTtRQUN2QixRQUFPLEtBQUssRUFBRTtZQUNaLEtBQUssUUFBUTtnQkFDWCxPQUFPLFdBQVcsQ0FBQTtZQUNwQixLQUFLLElBQUk7Z0JBQ1AsT0FBTyxjQUFjLENBQUE7WUFDdkIsS0FBSyxJQUFJO2dCQUNQLE9BQU8sV0FBVyxDQUFDO1lBQ3JCLEtBQUssSUFBSTtnQkFDUCxPQUFPLFdBQVcsQ0FBQTtZQUNwQixLQUFLLElBQUk7Z0JBQ1AsT0FBTyxXQUFXLENBQUE7WUFDcEIsS0FBSyxLQUFLO2dCQUNSLE9BQU8sWUFBWSxDQUFBO1lBQ3JCLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssV0FBVyxDQUFDO1lBQ2pCLEtBQUssYUFBYSxDQUFDO1lBQ25CLEtBQUssY0FBYyxDQUFDO1lBQ3BCLEtBQUssZUFBZSxDQUFDO1lBQ3JCLEtBQUssWUFBWSxDQUFDO1lBQ2xCLEtBQUssYUFBYTtnQkFDaEIsT0FBTyxVQUFVLENBQUM7WUFDcEI7Z0JBQ0UsT0FBTyxFQUFFLENBQUM7U0FDYjtJQUNILENBQUM7O2dIQXRFVSxtQkFBbUI7b0dBQW5CLG1CQUFtQixpTENSaEMsZ2tTQW1KQTsyRkQzSWEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGlCQUFpQjs4QkFLakIsVUFBVTtzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpcHQtY2FyZC1jb3Vyc2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC1jb3Vyc2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXJkLWNvdXJzZS5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ2FyZENvdXJzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0IHtcbiAgQElucHV0ICgpIENvdXJzZURhdGE/OmFueTtcbiAgQElucHV0KCkgaXNMb2FkaW5nID0gdHJ1ZVxuICBAT3V0cHV0KCkgY29kZUNvdXJzZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIGNvdXJzZUFjYWRlbXk6YW55W109W107XG4gIGNvdXJzZUtpZHM6YW55W109W107XG4gIGNvdXJzZVNjaG9vbHM6YW55W109W107XG4gIHZpc2libGVBY2FkZW15ID0gIGZhbHNlO1xuICB2aXNpYmxlS2lkcyA9ICBmYWxzZTtcbiAgdmlzaWJsZVNjaG9vbHMgPSAgZmFsc2U7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIGlmICh0aGlzLkNvdXJzZURhdGEubGVuZ3RoID09IDApIHtcbiAgICB0aGlzLmlzTG9hZGluZz10cnVlO1xuICB9ZWxzZXtcbiAgICB0aGlzLmlzTG9hZGluZz1mYWxzZTtcbiAgfVxuICB9XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1snQ291cnNlRGF0YSddKSB7XG4gICAgICBpZiAoIXRoaXMuQ291cnNlRGF0YSkge1xuICAgICAgICB0aGlzLmNvdXJzZUFjYWRlbXkgPSBbXTtcbiAgICAgICAgdGhpcy5jb3Vyc2VLaWRzID0gW107XG4gICAgICAgIHRoaXMuY291cnNlU2Nob29scyA9IFtdO1xuICAgICAgICB0aGlzLmlzTG9hZGluZz1mYWxzZVxuICAgICAgICB0aGlzLnZpc2libGVBY2FkZW15ID0gZmFsc2U7XG4gICAgICAgIHRoaXMudmlzaWJsZUtpZHMgPSBmYWxzZTtcbiAgICAgICAgdGhpcy52aXNpYmxlU2Nob29scyA9IGZhbHNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmc9ZmFsc2VcbiAgICAgICAgdGhpcy5jb3Vyc2VBY2FkZW15ID0gdGhpcy5Db3Vyc2VEYXRhLkFjYWRlbXk7XG4gICAgICAgIHRoaXMuY291cnNlS2lkcyA9IHRoaXMuQ291cnNlRGF0YS5LaWRzO1xuICAgICAgICB0aGlzLmNvdXJzZVNjaG9vbHMgPSB0aGlzLkNvdXJzZURhdGEuU2Nob29scztcbiAgICAgICAgdGhpcy52aXNpYmxlQWNhZGVteSA9IHRoaXMuQ291cnNlRGF0YS5BY2FkZW15ID8gdHJ1ZSA6IGZhbHNlO1xuICAgICAgICB0aGlzLnZpc2libGVLaWRzID0gdGhpcy5Db3Vyc2VEYXRhLktpZHMgPyB0cnVlIDogZmFsc2U7XG4gICAgICAgIHRoaXMudmlzaWJsZVNjaG9vbHMgPSB0aGlzLkNvdXJzZURhdGEuU2Nob29scyA/IHRydWUgOiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB2aWV3RGF0YUNvdXJzZShjb2RlQ291cnNlOiBhbnkpe1xuICAgIHRoaXMuY29kZUNvdXJzZS5lbWl0KGNvZGVDb3Vyc2UpO1xuICB9XG5cbiAgZ2V0Q3NzQ2xhc3MobGV2ZWw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgc3dpdGNoKGxldmVsKSB7XG4gICAgICBjYXNlICdQUkUtQTEnOlxuICAgICAgICByZXR1cm4gJ2xldmVsQW9uZSdcbiAgICAgIGNhc2UgJ0ExJzpcbiAgICAgICAgcmV0dXJuICdsZXZlbEFvbmV0d28nXG4gICAgICBjYXNlICdBMic6XG4gICAgICAgIHJldHVybiAnbGV2ZWxBdHdvJztcbiAgICAgIGNhc2UgJ0IxJzpcbiAgICAgICAgcmV0dXJuICdsZXZlbEJvbmUnXG4gICAgICBjYXNlICdCMic6XG4gICAgICAgIHJldHVybiAnbGV2ZWxCdHdvJ1xuICAgICAgY2FzZSAnQjErJzpcbiAgICAgICAgcmV0dXJuICdsZXZlbEJwbHVzJ1xuICAgICAgY2FzZSAnTU9WRVJTIEknOlxuICAgICAgY2FzZSAnTU9WRVJTIElJJzpcbiAgICAgIGNhc2UgJ0JFR0lOTkVSUyBJJzpcbiAgICAgIGNhc2UgJ0JFR0lOTkVSUyBJSSc6XG4gICAgICBjYXNlICdCRUdJTk5FUlMgSUlJJzpcbiAgICAgIGNhc2UgJ1NUQVJURVJTIEknOlxuICAgICAgY2FzZSAnU1RBUlRFUlMgSUknOlxuICAgICAgICByZXR1cm4gJ2JlZ2lubmVyJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJtYWluLWNvbnRhaW5lclwiPlxuXG4gIDwhLS0gY2FyZHMgQWNhZGVteSAtLT5cblxuICA8cC1wYW5lbFxuICAqbmdJZj1cInZpc2libGVBY2FkZW15XCJcbiAgaGVhZGVyPVwiUGxhbiBBY2FkZW15XCJcbiAgW3RvZ2dsZWFibGVdPVwidHJ1ZVwiXG4gIFtjb2xsYXBzZWRdPVwiZmFsc2VcIlxuICBpZD1cImFjYWRlbWljX3BsYW5cIlxuICBjbGFzcz1cImFjYWRlbWljX3BsYW5cIlxuICA+XG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJpY29uc1wiPiA8L25nLXRlbXBsYXRlPlxuICAgIDxtYWluICpuZ0lmPVwiIWlzTG9hZGluZ1wiIGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgICAgPHNlY3Rpb24gKm5nRm9yPVwibGV0IGNvdXJzZSBvZiBjb3Vyc2VBY2FkZW15XCIgY2xhc3M9XCJjYXJkMSBhbmltYXRlX19hbmltYXRlZFwiICAoY2xpY2spPVwidmlld0RhdGFDb3Vyc2UoY291cnNlKVwiPlxuICAgICAgICA8aDMgY2xhc3M9XCJjYXJkMV9fdGl0bGVfX2FjYWRlbWljXCI+e3sgY291cnNlLmNvdXJzZV90eXBlLmxhYmVsIH19PC9oMz5cbiAgICAgICAgPHAgY2xhc3M9XCJjYXJkMV9fY29udGVudFwiPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPkNsYXNlcyBUZW9yaWNhczogPC9zdHJvbmc+e3sgY291cnNlLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlRm9ybWF0IH19PGJyPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPkhvcmFyaW8gVGVvcmljbzogPC9zdHJvbmc+e3sgY291cnNlLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlVGltZUZvcm1hdCB9fTxicj5cbiAgICAgICAgICA8IS0tIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPlRoZW9yeSBUZWFjaGVyOiA8L3N0cm9uZz57eyBjb3Vyc2UudGVhY2hlciB8IHRpdGxlY2FzZSB9fTxicj4gLS0+XG4gICAgICAgICAgPCEtLSA8c3Ryb25nIGNsYXNzPVwidHlwZS10aGVvcnlcIj5UaGVvcnkgQ2xhc3Nyb29tOiA8L3N0cm9uZz48c3Bhbj57eyBjb3Vyc2UuY291cnNlX3NjaGVkdWxlRGV0YWlsc1swXS5DbGFzc1Jvb20ubmFtZSAgfCB0aXRsZWNhc2V9fTwvc3Bhbj48YnI+IC0tPlxuICAgICAgICAgIDxzdHJvbmc+PGhyPjwvc3Ryb25nPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLWNsdWJcIj5DbGFzZXMgQ2x1YjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi5jb3Vyc2Vfc2NoZWR1bGUgfCBzY2hlZHVsZUZvcm1hdCB9fTwvc3Bhbj48YnI+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInR5cGUtY2x1YlwiPkhvcmFyaW8gQ2x1YjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi5jb3Vyc2Vfc2NoZWR1bGUgfCBzY2hlZHVsZVRpbWVGb3JtYXQgfX08L3NwYW4+PGJyPlxuICAgICAgICAgIDwhLS0gPHN0cm9uZyBjbGFzcz1cInR5cGUtY2x1YlwiPkNsdWIgVGVhY2hlcjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi50ZWFjaGVyIHwgdGl0bGVjYXNlIH19PC9zcGFuPjxicj4gLS0+XG4gICAgICAgICAgPCEtLSA8c3Ryb25nIGNsYXNzPVwidHlwZS1jbHViXCI+Q2x1YiBDbGFzc3Jvb206IDwvc3Ryb25nPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb3Vyc2UuY291cnNlX2NsdWJcIj57eyBjb3Vyc2UuY291cnNlX2NsdWIuY291cnNlX3NjaGVkdWxlRGV0YWlsc1swXS5DbGFzc1Jvb20ubmFtZSAgfCB0aXRsZWNhc2V9fTwvc3Bhbj48YnI+IC0tPlxuICAgICAgICAgIDwhLS0gPHN0cm9uZz48aHI+PC9zdHJvbmc+IC0tPlxuICAgICAgICAgIDxzdHJvbmcgKm5nSWY9XCJjb3Vyc2Uuc3RhcnRfZGF0ZSA9PT0gbnVsbFwiPlBvc2libGUgaW5pY2lvOiA8L3N0cm9uZz57eyBjb3Vyc2Uuc3RhcnRfZGF0ZSA9PT0gbnVsbCA/IGNvdXJzZS50b19zdGFydCA6IG51bGwgfCBkYXRlOidkZC9NTS95eXl5JyB9fTxiciAqbmdJZj1cImNvdXJzZS5zdGFydF9kYXRlID09PSBudWxsXCI+XG4gICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvdXJzZS5zdGFydF9kYXRlICE9PSBudWxsXCI+RmVjaGEgSW5pY2lvOiA8L3N0cm9uZz57eyBjb3Vyc2Uuc3RhcnRfZGF0ZSAhPT0gbnVsbCA/IGNvdXJzZS5zdGFydF9kYXRlIDogbnVsbCB8IGRhdGU6J2RkL01NL3l5eXknIH19PGJyICpuZ0lmPVwiY291cnNlLmZpbmlzaF9kYXRlICE9PSBudWxsXCI+XG4gICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvdXJzZS5maW5pc2hfZGF0ZSAhPT0gbnVsbFwiPkZlY2hhIGN1bG1pbmFjaW9uOiA8L3N0cm9uZz57eyBjb3Vyc2UuZmluaXNoX2RhdGUgIT09IG51bGwgPyBjb3Vyc2UuZmluaXNoX2RhdGUgOiBudWxsIHwgZGF0ZTonZGQvTU0veXl5eScgfX08YnIgKm5nSWY9XCJjb3Vyc2UuZmluaXNoX2RhdGUgIT09IG51bGxcIj5cbiAgICAgICAgICA8IS0tIDxzdHJvbmc+Q3JlYXRlZDogPC9zdHJvbmc+e3sgY291cnNlLmNyZWF0ZWRfYXQgfCBkYXRlOidkZC9NTS95eXl5JyB9fTxicj4gLS0+XG4gICAgICAgIDwvcD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQxX19kYXRlXCI+XG4gICAgICAgICAgPCEtLSA8c3BhblxuICAgICAgICAgIFtuZ0NsYXNzXT1cImNvdXJzZS5zdGF0dXM/LmNvbG9yX3N0YXR1c1wiXG4gICAgICAgICAgPjwvc3Bhbj4gLS0+XG4gICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImNvdXJzZS1jb2RlXCI+Q29kZToge3tjb3Vyc2UuY29kZX19PC9zcGFuPiAtLT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkMV9fYXJyb3dcIiBbbmdDbGFzc109XCJnZXRDc3NDbGFzcyhjb3Vyc2UuZW5nbGlzaF9sZXZlbC5uYW1lKVwiPlxuICAgICAgICAgIDxzcGFuPnt7IGNvdXJzZS5lbmdsaXNoX2xldmVsLm5hbWUgfCB0eXBlTGV2ZWx9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9tYWluPlxuICAgIDxpcHQtbG9hZGVyICpuZ0lmPVwiaXNMb2FkaW5nXCI+PC9pcHQtbG9hZGVyPlxuICA8L3AtcGFuZWw+XG5cbiAgPCEtLSBjYXJkcyBLaWRzIC0tPlxuXG4gIDxwLXBhbmVsXG4gICpuZ0lmPVwidmlzaWJsZUtpZHNcIlxuICBoZWFkZXI9XCJQbGFuIEtpZHNcIlxuICBbdG9nZ2xlYWJsZV09XCJ0cnVlXCJcbiAgW2NvbGxhcHNlZF09XCJmYWxzZVwiXG4gIGlkPVwic29jaWFsX2tpZHNcIlxuICA+XG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJpY29uc1wiPiA8L25nLXRlbXBsYXRlPlxuICAgIDxtYWluICpuZ0lmPVwiIWlzTG9hZGluZ1wiIGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgICAgPHNlY3Rpb24gKm5nRm9yPVwibGV0IGNvdXJzZSBvZiBjb3Vyc2VLaWRzXCIgY2xhc3M9XCJjYXJkMSBhbmltYXRlX19hbmltYXRlZFwiICAoY2xpY2spPVwidmlld0RhdGFDb3Vyc2UoY291cnNlKVwiPlxuICAgICAgICA8aDMgY2xhc3M9XCJjYXJkMV9fdGl0bGVfX2tpZHNcIj57eyBjb3Vyc2UuY291cnNlX3R5cGUubGFiZWwgfX08L2gzPlxuICAgICAgICA8cCBjbGFzcz1cImNhcmQxX19jb250ZW50XCI+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInR5cGUtdGhlb3J5XCI+Q2xhc2VzIFRlb3JpY2FzOiA8L3N0cm9uZz57eyBjb3Vyc2UuY291cnNlX3NjaGVkdWxlIHwgc2NoZWR1bGVGb3JtYXQgfX08YnI+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInR5cGUtdGhlb3J5XCI+SG9yYXJpbyBUZW9yaWNvOiA8L3N0cm9uZz57eyBjb3Vyc2UuY291cnNlX3NjaGVkdWxlIHwgc2NoZWR1bGVUaW1lRm9ybWF0IH19PGJyPlxuICAgICAgICAgIDwhLS0gPHN0cm9uZyBjbGFzcz1cInR5cGUtdGhlb3J5XCI+VGhlb3J5IFRlYWNoZXI6IDwvc3Ryb25nPnt7IGNvdXJzZS50ZWFjaGVyIHwgdGl0bGVjYXNlIH19PGJyPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPlRoZW9yeSBDbGFzc3Jvb206IDwvc3Ryb25nPjxzcGFuPnt7IGNvdXJzZS5jb3Vyc2Vfc2NoZWR1bGVEZXRhaWxzWzBdLkNsYXNzUm9vbS5uYW1lICB8IHRpdGxlY2FzZX19PC9zcGFuPjxicj4gLS0+XG4gICAgICAgICAgPHN0cm9uZz48aHI+PC9zdHJvbmc+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInR5cGUtY2x1YlwiPkNsYXNlcyBDbHViOiA8L3N0cm9uZz5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY291cnNlLmNvdXJzZV9jbHViXCI+e3sgY291cnNlLmNvdXJzZV9jbHViLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlRm9ybWF0IH19PC9zcGFuPjxicj5cbiAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwidHlwZS1jbHViXCI+SG9yYXJpbyBDbHViOiA8L3N0cm9uZz5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY291cnNlLmNvdXJzZV9jbHViXCI+e3sgY291cnNlLmNvdXJzZV9jbHViLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlVGltZUZvcm1hdCB9fTwvc3Bhbj48YnI+XG4gICAgICAgICAgPCEtLSA8c3Ryb25nIGNsYXNzPVwidHlwZS1jbHViXCI+Q2x1YiBUZWFjaGVyOiA8L3N0cm9uZz5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY291cnNlLmNvdXJzZV9jbHViXCI+e3sgY291cnNlLmNvdXJzZV9jbHViLnRlYWNoZXIgfCB0aXRsZWNhc2UgfX08L3NwYW4+PGJyPiAtLT5cbiAgICAgICAgICA8IS0tIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLWNsdWJcIj5DbHViIENsYXNzcm9vbTogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi5jb3Vyc2Vfc2NoZWR1bGVEZXRhaWxzWzBdLkNsYXNzUm9vbS5uYW1lICB8IHRpdGxlY2FzZX19PC9zcGFuPjxicj4gLS0+XG4gICAgICAgICAgPCEtLSA8c3Ryb25nPjxocj48L3N0cm9uZz4gLS0+XG4gICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvdXJzZS5zdGFydF9kYXRlID09PSBudWxsXCI+UG9zaWJsZSBpbmljaW86IDwvc3Ryb25nPnt7IGNvdXJzZS5zdGFydF9kYXRlID09PSBudWxsID8gY291cnNlLnRvX3N0YXJ0IDogbnVsbCB8IGRhdGU6J2RkL01NL3l5eXknIH19PGJyICpuZ0lmPVwiY291cnNlLnN0YXJ0X2RhdGUgPT09IG51bGxcIj5cbiAgICAgICAgICA8c3Ryb25nICpuZ0lmPVwiY291cnNlLnN0YXJ0X2RhdGUgIT09IG51bGxcIj5GZWNoYSBJbmljaW86IDwvc3Ryb25nPnt7IGNvdXJzZS5zdGFydF9kYXRlICE9PSBudWxsID8gY291cnNlLnN0YXJ0X2RhdGUgOiBudWxsIHwgZGF0ZTonZGQvTU0veXl5eScgfX08YnIgKm5nSWY9XCJjb3Vyc2UuZmluaXNoX2RhdGUgIT09IG51bGxcIj5cbiAgICAgICAgICA8c3Ryb25nICpuZ0lmPVwiY291cnNlLmZpbmlzaF9kYXRlICE9PSBudWxsXCI+RmVjaGEgY3VsbWluYWNpb246IDwvc3Ryb25nPnt7IGNvdXJzZS5maW5pc2hfZGF0ZSAhPT0gbnVsbCA/IGNvdXJzZS5maW5pc2hfZGF0ZSA6IG51bGwgfCBkYXRlOidkZC9NTS95eXl5JyB9fTxiciAqbmdJZj1cImNvdXJzZS5maW5pc2hfZGF0ZSAhPT0gbnVsbFwiPlxuICAgICAgICAgIDwhLS0gPHN0cm9uZz5DcmVhdGVkOiA8L3N0cm9uZz57eyBjb3Vyc2UuY3JlYXRlZF9hdCB8IGRhdGU6J2RkL01NL3l5eXknIH19PGJyPiAtLT5cbiAgICAgICAgPC9wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZDFfX2RhdGVcIj5cbiAgICAgICAgICA8IS0tIDxzcGFuXG4gICAgICAgICAgW25nQ2xhc3NdPVwiY291cnNlLnN0YXR1cz8uY29sb3Jfc3RhdHVzXCJcbiAgICAgICAgICA+PC9zcGFuPiAtLT5cbiAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiY291cnNlLWNvZGVcIj5Db2RlOiB7e2NvdXJzZS5jb2RlfX08L3NwYW4+IC0tPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQxX19hcnJvd1wiIFtuZ0NsYXNzXT1cImdldENzc0NsYXNzKGNvdXJzZS5lbmdsaXNoX2xldmVsLm5hbWUpXCI+XG4gICAgICAgICAgPHNwYW4+e3sgY291cnNlLmVuZ2xpc2hfbGV2ZWwubmFtZSB8IHR5cGVMZXZlbH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvc2VjdGlvbj5cbiAgICA8L21haW4+XG4gICAgPGlwdC1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIj48L2lwdC1sb2FkZXI+XG4gIDwvcC1wYW5lbD5cblxuICA8IS0tIGNhcmRzIFNjaG9vbHMgLS0+XG5cbiAgPHAtcGFuZWxcbiAgKm5nSWY9XCJ2aXNpYmxlU2Nob29sc1wiXG4gIGhlYWRlcj1cIlBsYW4gU2Nob29sc1wiXG4gIFt0b2dnbGVhYmxlXT1cInRydWVcIlxuICBbY29sbGFwc2VkXT1cImZhbHNlXCJcbiAgaWQ9XCJzb2NpYWxfc2Nob29sXCJcbiAgPlxuICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaWNvbnNcIj4gPC9uZy10ZW1wbGF0ZT5cbiAgICA8bWFpbiAqbmdJZj1cIiFpc0xvYWRpbmdcIiBjbGFzcz1cImZsZXggZmxleC1jb2xcIj5cbiAgICAgIDxzZWN0aW9uICpuZ0Zvcj1cImxldCBjb3Vyc2Ugb2YgY291cnNlU2Nob29sc1wiIGNsYXNzPVwiY2FyZDEgYW5pbWF0ZV9fYW5pbWF0ZWRcIiAgKGNsaWNrKT1cInZpZXdEYXRhQ291cnNlKGNvdXJzZSlcIj5cbiAgICAgICAgPGgzIGNsYXNzPVwiY2FyZDFfX3RpdGxlX19zY2hvb2xzXCI+e3sgY291cnNlLmNvdXJzZV90eXBlLmxhYmVsIH19PC9oMz5cbiAgICAgICAgPHAgY2xhc3M9XCJjYXJkMV9fY29udGVudFwiPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPkNsYXNlcyBUZW9yaWNhczogPC9zdHJvbmc+e3sgY291cnNlLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlRm9ybWF0IH19PGJyPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPkhvcmFyaW8gVGVvcmljbzogPC9zdHJvbmc+e3sgY291cnNlLmNvdXJzZV9zY2hlZHVsZSB8IHNjaGVkdWxlVGltZUZvcm1hdCB9fTxicj5cbiAgICAgICAgICA8IS0tIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLXRoZW9yeVwiPlRoZW9yeSBUZWFjaGVyOiA8L3N0cm9uZz57eyBjb3Vyc2UudGVhY2hlciB8IHRpdGxlY2FzZSB9fTxicj5cbiAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwidHlwZS10aGVvcnlcIj5UaGVvcnkgQ2xhc3Nyb29tOiA8L3N0cm9uZz48c3Bhbj57eyBjb3Vyc2UuY291cnNlX3NjaGVkdWxlRGV0YWlsc1swXS5DbGFzc1Jvb20ubmFtZSAgfCB0aXRsZWNhc2V9fTwvc3Bhbj48YnI+IC0tPlxuICAgICAgICAgIDxzdHJvbmc+PGhyPjwvc3Ryb25nPlxuICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJ0eXBlLWNsdWJcIj5DbGFzZXMgQ2x1YjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi5jb3Vyc2Vfc2NoZWR1bGUgfCBzY2hlZHVsZUZvcm1hdCB9fTwvc3Bhbj48YnI+XG4gICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInR5cGUtY2x1YlwiPkhvcmFyaW8gQ2x1YjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi5jb3Vyc2Vfc2NoZWR1bGUgfCBzY2hlZHVsZVRpbWVGb3JtYXQgfX08L3NwYW4+PGJyPlxuICAgICAgICAgIDwhLS0gPHN0cm9uZyBjbGFzcz1cInR5cGUtY2x1YlwiPkNsdWIgVGVhY2hlcjogPC9zdHJvbmc+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvdXJzZS5jb3Vyc2VfY2x1YlwiPnt7IGNvdXJzZS5jb3Vyc2VfY2x1Yi50ZWFjaGVyIHwgdGl0bGVjYXNlIH19PC9zcGFuPjxicj5cbiAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwidHlwZS1jbHViXCI+Q2x1YiBDbGFzc3Jvb206IDwvc3Ryb25nPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb3Vyc2UuY291cnNlX2NsdWJcIj57eyBjb3Vyc2UuY291cnNlX2NsdWIuY291cnNlX3NjaGVkdWxlRGV0YWlsc1swXS5DbGFzc1Jvb20ubmFtZSAgfCB0aXRsZWNhc2V9fTwvc3Bhbj48YnI+IC0tPlxuICAgICAgICAgIDwhLS0gPHN0cm9uZz48aHI+PC9zdHJvbmc+IC0tPlxuICAgICAgICAgIDxzdHJvbmcgKm5nSWY9XCJjb3Vyc2Uuc3RhcnRfZGF0ZSA9PT0gbnVsbFwiPlBvc2libGUgaW5pY2lvOiA8L3N0cm9uZz57eyBjb3Vyc2Uuc3RhcnRfZGF0ZSA9PT0gbnVsbCA/IGNvdXJzZS50b19zdGFydCA6IG51bGwgfCBkYXRlOidkZC9NTS95eXl5JyB9fTxiciAqbmdJZj1cImNvdXJzZS5zdGFydF9kYXRlID09PSBudWxsXCI+XG4gICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvdXJzZS5zdGFydF9kYXRlICE9PSBudWxsXCI+RmVjaGEgSW5pY2lvOiA8L3N0cm9uZz57eyBjb3Vyc2Uuc3RhcnRfZGF0ZSAhPT0gbnVsbCA/IGNvdXJzZS5zdGFydF9kYXRlIDogbnVsbCB8IGRhdGU6J2RkL01NL3l5eXknIH19PGJyICpuZ0lmPVwiY291cnNlLmZpbmlzaF9kYXRlICE9PSBudWxsXCI+XG4gICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvdXJzZS5maW5pc2hfZGF0ZSAhPT0gbnVsbFwiPkZlY2hhIGN1bG1pbmFjaW9uOiA8L3N0cm9uZz57eyBjb3Vyc2UuZmluaXNoX2RhdGUgIT09IG51bGwgPyBjb3Vyc2UuZmluaXNoX2RhdGUgOiBudWxsIHwgZGF0ZTonZGQvTU0veXl5eScgfX08YnIgKm5nSWY9XCJjb3Vyc2UuZmluaXNoX2RhdGUgIT09IG51bGxcIj5cbiAgICAgICAgICA8IS0tIDxzdHJvbmc+Q3JlYXRlZDogPC9zdHJvbmc+e3sgY291cnNlLmNyZWF0ZWRfYXQgfCBkYXRlOidkZC9NTS95eXl5JyB9fTxicj4gLS0+XG4gICAgICAgIDwvcD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQxX19kYXRlXCI+XG4gICAgICAgICAgPCEtLSA8c3BhblxuICAgICAgICAgIFtuZ0NsYXNzXT1cImNvdXJzZS5zdGF0dXM/LmNvbG9yX3N0YXR1c1wiXG4gICAgICAgICAgPjwvc3Bhbj4gLS0+XG4gICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImNvdXJzZS1jb2RlXCI+Q29kZToge3tjb3Vyc2UuY29kZX19PC9zcGFuPiAtLT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkMV9fYXJyb3dcIiBbbmdDbGFzc109XCJnZXRDc3NDbGFzcyhjb3Vyc2UuZW5nbGlzaF9sZXZlbC5uYW1lKVwiPlxuICAgICAgICAgIDxzcGFuPnt7IGNvdXJzZS5lbmdsaXNoX2xldmVsLm5hbWUgfCB0eXBlTGV2ZWx9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9tYWluPlxuICAgIDxpcHQtbG9hZGVyICpuZ0lmPVwiaXNMb2FkaW5nXCI+PC9pcHQtbG9hZGVyPlxuICA8L3AtcGFuZWw+XG5cbiAgPC9kaXY+XG5cblxuIl19
|