iptdevs-design-system 2.7.21 → 2.7.22
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/components/atoms/loader/loader.component.mjs +2 -2
- package/esm2020/lib/components/forms/create-user-form/create-user-form.component.mjs +3 -3
- package/esm2020/lib/core/services/parameters-service/parameters.service.mjs +17 -1
- package/fesm2015/iptdevs-design-system.mjs +20 -4
- package/fesm2015/iptdevs-design-system.mjs.map +1 -1
- package/fesm2020/iptdevs-design-system.mjs +20 -4
- package/fesm2020/iptdevs-design-system.mjs.map +1 -1
- package/lib/core/services/parameters-service/parameters.service.d.ts +4 -0
- package/package.json +1 -1
|
@@ -22,7 +22,7 @@ LoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versio
|
|
|
22
22
|
</div>
|
|
23
23
|
</div>
|
|
24
24
|
</div>
|
|
25
|
-
</div>`, isInline: true, styles: [".dialog{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s;z-index:9999}.loader_container{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;
|
|
25
|
+
</div>`, isInline: true, styles: [".dialog{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s;z-index:9999}.loader_container{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;inset:0;margin:auto;background-color:#fff;border-radius:6px;padding:1rem;z-index:9999}span{display:flex;justify-content:center;color:#1c77f7;font:bold;margin-bottom:1rem}.container{display:flex;justify-content:center}.spinner{width:60px;height:60px;position:relative}.spinner .dot{position:absolute;inset:0;display:flex;justify-content:center}.spinner .dot:after{content:\"\";width:7px;height:7px;border-radius:50%;background-color:#1c77f7}@keyframes spin{to{transform:rotate(360deg)}}.spinner .dot{animation:spin 2s infinite}.spinner .dot:nth-child(2){animation-delay:.1s}.spinner .dot:nth-child(3){animation-delay:.2s}.spinner .dot:nth-child(4){animation-delay:.3s}.spinner .dot:nth-child(5){animation-delay:.4s}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
26
26
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoaderComponent, decorators: [{
|
|
27
27
|
type: Component,
|
|
28
28
|
args: [{ selector: 'ipt-loader', template: `
|
|
@@ -39,7 +39,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
39
39
|
</div>
|
|
40
40
|
</div>
|
|
41
41
|
</div>
|
|
42
|
-
</div>`, styles: [".dialog{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s;z-index:9999}.loader_container{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;
|
|
42
|
+
</div>`, styles: [".dialog{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s;z-index:9999}.loader_container{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;inset:0;margin:auto;background-color:#fff;border-radius:6px;padding:1rem;z-index:9999}span{display:flex;justify-content:center;color:#1c77f7;font:bold;margin-bottom:1rem}.container{display:flex;justify-content:center}.spinner{width:60px;height:60px;position:relative}.spinner .dot{position:absolute;inset:0;display:flex;justify-content:center}.spinner .dot:after{content:\"\";width:7px;height:7px;border-radius:50%;background-color:#1c77f7}@keyframes spin{to{transform:rotate(360deg)}}.spinner .dot{animation:spin 2s infinite}.spinner .dot:nth-child(2){animation-delay:.1s}.spinner .dot:nth-child(3){animation-delay:.2s}.spinner .dot:nth-child(4){animation-delay:.3s}.spinner .dot:nth-child(5){animation-delay:.4s}\n"] }]
|
|
43
43
|
}], propDecorators: { message: [{
|
|
44
44
|
type: Input
|
|
45
45
|
}], isDialog: [{
|
|
@@ -198,7 +198,7 @@ export class CreateUserFormComponent {
|
|
|
198
198
|
}
|
|
199
199
|
}
|
|
200
200
|
CreateUserFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CreateUserFormComponent, deps: [{ token: i1.FormBuilder }, { token: i2.ParameterService }, { token: i3.UserService }], target: i0.ɵɵFactoryTarget.Component });
|
|
201
|
-
CreateUserFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: CreateUserFormComponent, selector: "ipt-create-user-form", inputs: { userType: "userType", visibility: "visibility" }, outputs: { userCreated: "userCreated", onHide: "onHide" }, ngImport: i0, template: "<main *ngIf=\"visibility\">\r\n <div @fade class=\"modal_container\">\r\n <div class=\"header_modal\">\r\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\r\n <button (click)=\"closeModal()\">x</button>\r\n </div>\r\n <div class=\"grid_container\">\r\n <div>\r\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Nombre completo'\"\r\n [control]=\"createUserForm.controls['name']\"\r\n [validateText]=\"'Debe ingresar el nombre'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Apellidos'\"\r\n [control]=\"createUserForm.controls['last_name']\"\r\n [validateText]=\"'Debe ingresar los apellidos'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Correo electr\u00F3nico'\"\r\n [control]=\"createUserForm.controls['email']\"\r\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [defaultText]=\"'Seleccione el rol'\"\r\n (eventSelect)=\"selectRol($event)\"\r\n [data]=\"getRolesOptions()\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"phoneNumberIndicatives\"\r\n (eventSelect)=\"selectIndicatives($event)\"\r\n [defaultText]=\"'Seleccione el indicativo'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\r\n [control]=\"createUserForm.controls['phone_number']\"\r\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"idTypes\"\r\n (eventSelect)=\"selectIdType($event)\"\r\n [defaultText]=\"'Ingrese el tipo de documento'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Documento de identidad'\"\r\n [control]=\"createUserForm.controls['id_card']\"\r\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectState($event)\"\r\n [data]=\"states\"\r\n [defaultText]=\"'Seleccione el departamento'\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectCity($event)\"\r\n [data]=\"cities\"\r\n [defaultText]=\"'Ciudad de residencia'\"\r\n ></ipt-select>\r\n <ipt-input *ngIf=\"!(userType === 'student')\"\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Ingrese las horas de servicio'\"\r\n [control]=\"createUserForm.controls['service_hour']\"\r\n [validateText]=\"'Debe ingresar las horas de servicio'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['password']\"\r\n >\r\n </ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['re_password']\"\r\n >\r\n </ipt-input>\r\n </form>\r\n\r\n <div class=\"buttons-container\">\r\n <ipt-button\r\n [label]=\"'Crear usuario'\"\r\n [isEnabled]=\"\r\n !loader &&\r\n createUserForm.value['re_password'] ===\r\n createUserForm.value['password']\r\n \"\r\n (onClick)=\"createUser()\"\r\n [primary]=\"true\"\r\n >\r\n </ipt-button>\r\n </div>\r\n </div>\r\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\r\n </div>\r\n </div>\r\n</main>\r\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s}main .modal_container{width:60%;height:-moz-fit-content;height:fit-content;position:absolute;
|
|
201
|
+
CreateUserFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: CreateUserFormComponent, selector: "ipt-create-user-form", inputs: { userType: "userType", visibility: "visibility" }, outputs: { userCreated: "userCreated", onHide: "onHide" }, ngImport: i0, template: "<main *ngIf=\"visibility\">\r\n <div @fade class=\"modal_container\">\r\n <div class=\"header_modal\">\r\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\r\n <button (click)=\"closeModal()\">x</button>\r\n </div>\r\n <div class=\"grid_container\">\r\n <div>\r\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Nombre completo'\"\r\n [control]=\"createUserForm.controls['name']\"\r\n [validateText]=\"'Debe ingresar el nombre'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Apellidos'\"\r\n [control]=\"createUserForm.controls['last_name']\"\r\n [validateText]=\"'Debe ingresar los apellidos'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Correo electr\u00F3nico'\"\r\n [control]=\"createUserForm.controls['email']\"\r\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [defaultText]=\"'Seleccione el rol'\"\r\n (eventSelect)=\"selectRol($event)\"\r\n [data]=\"getRolesOptions()\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"phoneNumberIndicatives\"\r\n (eventSelect)=\"selectIndicatives($event)\"\r\n [defaultText]=\"'Seleccione el indicativo'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\r\n [control]=\"createUserForm.controls['phone_number']\"\r\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"idTypes\"\r\n (eventSelect)=\"selectIdType($event)\"\r\n [defaultText]=\"'Ingrese el tipo de documento'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Documento de identidad'\"\r\n [control]=\"createUserForm.controls['id_card']\"\r\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectState($event)\"\r\n [data]=\"states\"\r\n [defaultText]=\"'Seleccione el departamento'\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectCity($event)\"\r\n [data]=\"cities\"\r\n [defaultText]=\"'Ciudad de residencia'\"\r\n ></ipt-select>\r\n <ipt-input *ngIf=\"!(userType === 'student')\"\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Ingrese las horas de servicio'\"\r\n [control]=\"createUserForm.controls['service_hour']\"\r\n [validateText]=\"'Debe ingresar las horas de servicio'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['password']\"\r\n >\r\n </ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['re_password']\"\r\n >\r\n </ipt-input>\r\n </form>\r\n\r\n <div class=\"buttons-container\">\r\n <ipt-button\r\n [label]=\"'Crear usuario'\"\r\n [isEnabled]=\"\r\n !loader &&\r\n createUserForm.value['re_password'] ===\r\n createUserForm.value['password']\r\n \"\r\n (onClick)=\"createUser()\"\r\n [primary]=\"true\"\r\n >\r\n </ipt-button>\r\n </div>\r\n </div>\r\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\r\n </div>\r\n </div>\r\n</main>\r\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s}main .modal_container{width:60%;height:-moz-fit-content;height:fit-content;position:absolute;inset:0;margin:auto;background-color:#fff;border-radius:6px}.header_modal{display:flex;padding:0 15px;gap:1rem;align-items:center}.header_modal h1{padding:.5rem;background-color:#1c77f7;color:#fff;width:100%;border-radius:10px;font-size:1.25rem;font-weight:700}.header_modal button{margin-left:auto;font-size:26px;padding:1.2rem;font-weight:200;color:#6c7f7d;display:flex;width:25px;height:25px;align-items:center;justify-content:center;transition:50ms;background-color:transparent;border:none}.header_modal button:hover{cursor:pointer;border-radius:50%;background-color:#d4d4d4}.grid_container{display:grid;grid-template-columns:1fr}form{display:grid;grid-template-columns:1fr;grid-gap:.25rem;gap:.25rem;justify-content:center;padding:0 1rem}.buttons-container{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center;align-items:center;justify-items:center;align-content:center}.user_type_image{display:none}}@media screen and (min-width: 768px){form{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;justify-content:center}}@media screen and (min-width: 1366px){form{padding:0rem}.grid_container{display:grid;grid-template-columns:1fr 250px;grid-gap:1rem;gap:1rem;padding:1rem}.user_type_image{display:flex;background-size:cover;background-repeat:no-repeat;background-position:center;height:100%;border-radius:1rem;padding:1rem}}\n"], components: [{ type: i4.InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { type: i5.SelectComponent, selector: "ipt-select", inputs: ["isRequired", "data", "defaultText", "selectCode", "disabledSel", "initialValue", "control"], outputs: ["eventSelect"] }, { type: i6.ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], pipes: { "titlecase": i7.TitleCasePipe }, animations: [
|
|
202
202
|
trigger('fade', [
|
|
203
203
|
transition('void => *', [
|
|
204
204
|
style({ opacity: 0 }),
|
|
@@ -215,7 +215,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
215
215
|
animate(200, style({ opacity: 1 }))
|
|
216
216
|
])
|
|
217
217
|
])
|
|
218
|
-
], template: "<main *ngIf=\"visibility\">\r\n <div @fade class=\"modal_container\">\r\n <div class=\"header_modal\">\r\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\r\n <button (click)=\"closeModal()\">x</button>\r\n </div>\r\n <div class=\"grid_container\">\r\n <div>\r\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Nombre completo'\"\r\n [control]=\"createUserForm.controls['name']\"\r\n [validateText]=\"'Debe ingresar el nombre'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Apellidos'\"\r\n [control]=\"createUserForm.controls['last_name']\"\r\n [validateText]=\"'Debe ingresar los apellidos'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Correo electr\u00F3nico'\"\r\n [control]=\"createUserForm.controls['email']\"\r\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [defaultText]=\"'Seleccione el rol'\"\r\n (eventSelect)=\"selectRol($event)\"\r\n [data]=\"getRolesOptions()\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"phoneNumberIndicatives\"\r\n (eventSelect)=\"selectIndicatives($event)\"\r\n [defaultText]=\"'Seleccione el indicativo'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\r\n [control]=\"createUserForm.controls['phone_number']\"\r\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"idTypes\"\r\n (eventSelect)=\"selectIdType($event)\"\r\n [defaultText]=\"'Ingrese el tipo de documento'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Documento de identidad'\"\r\n [control]=\"createUserForm.controls['id_card']\"\r\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectState($event)\"\r\n [data]=\"states\"\r\n [defaultText]=\"'Seleccione el departamento'\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectCity($event)\"\r\n [data]=\"cities\"\r\n [defaultText]=\"'Ciudad de residencia'\"\r\n ></ipt-select>\r\n <ipt-input *ngIf=\"!(userType === 'student')\"\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Ingrese las horas de servicio'\"\r\n [control]=\"createUserForm.controls['service_hour']\"\r\n [validateText]=\"'Debe ingresar las horas de servicio'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['password']\"\r\n >\r\n </ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['re_password']\"\r\n >\r\n </ipt-input>\r\n </form>\r\n\r\n <div class=\"buttons-container\">\r\n <ipt-button\r\n [label]=\"'Crear usuario'\"\r\n [isEnabled]=\"\r\n !loader &&\r\n createUserForm.value['re_password'] ===\r\n createUserForm.value['password']\r\n \"\r\n (onClick)=\"createUser()\"\r\n [primary]=\"true\"\r\n >\r\n </ipt-button>\r\n </div>\r\n </div>\r\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\r\n </div>\r\n </div>\r\n</main>\r\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s}main .modal_container{width:60%;height:-moz-fit-content;height:fit-content;position:absolute;
|
|
218
|
+
], template: "<main *ngIf=\"visibility\">\r\n <div @fade class=\"modal_container\">\r\n <div class=\"header_modal\">\r\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\r\n <button (click)=\"closeModal()\">x</button>\r\n </div>\r\n <div class=\"grid_container\">\r\n <div>\r\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Nombre completo'\"\r\n [control]=\"createUserForm.controls['name']\"\r\n [validateText]=\"'Debe ingresar el nombre'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Apellidos'\"\r\n [control]=\"createUserForm.controls['last_name']\"\r\n [validateText]=\"'Debe ingresar los apellidos'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Correo electr\u00F3nico'\"\r\n [control]=\"createUserForm.controls['email']\"\r\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [defaultText]=\"'Seleccione el rol'\"\r\n (eventSelect)=\"selectRol($event)\"\r\n [data]=\"getRolesOptions()\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"phoneNumberIndicatives\"\r\n (eventSelect)=\"selectIndicatives($event)\"\r\n [defaultText]=\"'Seleccione el indicativo'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\r\n [control]=\"createUserForm.controls['phone_number']\"\r\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"idTypes\"\r\n (eventSelect)=\"selectIdType($event)\"\r\n [defaultText]=\"'Ingrese el tipo de documento'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Documento de identidad'\"\r\n [control]=\"createUserForm.controls['id_card']\"\r\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectState($event)\"\r\n [data]=\"states\"\r\n [defaultText]=\"'Seleccione el departamento'\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectCity($event)\"\r\n [data]=\"cities\"\r\n [defaultText]=\"'Ciudad de residencia'\"\r\n ></ipt-select>\r\n <ipt-input *ngIf=\"!(userType === 'student')\"\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Ingrese las horas de servicio'\"\r\n [control]=\"createUserForm.controls['service_hour']\"\r\n [validateText]=\"'Debe ingresar las horas de servicio'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['password']\"\r\n >\r\n </ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['re_password']\"\r\n >\r\n </ipt-input>\r\n </form>\r\n\r\n <div class=\"buttons-container\">\r\n <ipt-button\r\n [label]=\"'Crear usuario'\"\r\n [isEnabled]=\"\r\n !loader &&\r\n createUserForm.value['re_password'] ===\r\n createUserForm.value['password']\r\n \"\r\n (onClick)=\"createUser()\"\r\n [primary]=\"true\"\r\n >\r\n </ipt-button>\r\n </div>\r\n </div>\r\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\r\n </div>\r\n </div>\r\n</main>\r\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s}main .modal_container{width:60%;height:-moz-fit-content;height:fit-content;position:absolute;inset:0;margin:auto;background-color:#fff;border-radius:6px}.header_modal{display:flex;padding:0 15px;gap:1rem;align-items:center}.header_modal h1{padding:.5rem;background-color:#1c77f7;color:#fff;width:100%;border-radius:10px;font-size:1.25rem;font-weight:700}.header_modal button{margin-left:auto;font-size:26px;padding:1.2rem;font-weight:200;color:#6c7f7d;display:flex;width:25px;height:25px;align-items:center;justify-content:center;transition:50ms;background-color:transparent;border:none}.header_modal button:hover{cursor:pointer;border-radius:50%;background-color:#d4d4d4}.grid_container{display:grid;grid-template-columns:1fr}form{display:grid;grid-template-columns:1fr;grid-gap:.25rem;gap:.25rem;justify-content:center;padding:0 1rem}.buttons-container{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center;align-items:center;justify-items:center;align-content:center}.user_type_image{display:none}}@media screen and (min-width: 768px){form{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;justify-content:center}}@media screen and (min-width: 1366px){form{padding:0rem}.grid_container{display:grid;grid-template-columns:1fr 250px;grid-gap:1rem;gap:1rem;padding:1rem}.user_type_image{display:flex;background-size:cover;background-repeat:no-repeat;background-position:center;height:100%;border-radius:1rem;padding:1rem}}\n"] }]
|
|
219
219
|
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.ParameterService }, { type: i3.UserService }]; }, propDecorators: { userType: [{
|
|
220
220
|
type: Input
|
|
221
221
|
}], visibility: [{
|
|
@@ -225,4 +225,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
225
225
|
}], onHide: [{
|
|
226
226
|
type: Output
|
|
227
227
|
}] } });
|
|
228
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXVzZXItZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9jcmVhdGUtdXNlci1mb3JtL2NyZWF0ZS11c2VyLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY3JlYXRlLXVzZXItZm9ybS9jcmVhdGUtdXNlci1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7OztBQWtCcEUsTUFBTSxPQUFPLHVCQUF1QjtJQWNsQyxZQUNVLEVBQWUsRUFDZixnQkFBa0MsRUFDbEMsV0FBd0I7UUFGeEIsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFmekIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUMzQixnQkFBVyxHQUFHLElBQUksWUFBWSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQy9DLFdBQU0sR0FBRyxJQUFJLFlBQVksQ0FBVSxLQUFLLENBQUMsQ0FBQztRQU1wRCxXQUFNLEdBQVksS0FBSyxDQUFDO1FBRXhCLFVBQUssR0FBVyxFQUFFLENBQUM7SUFNaEIsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxD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QUFRLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3JEO0lBQ0gsQ0FBQzs7b0hBMU1VLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLG1MQ3BCcEMsMnlJQTJHQSx1c0ZEaEdjO1FBQ1YsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNkLFVBQVUsQ0FBQyxXQUFXLEVBQUU7Z0JBQ3RCLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQztnQkFDckIsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBQyxPQUFPLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FBQzthQUNsQyxDQUFDO1NBQ0gsQ0FBQztLQUNIOzJGQUVVLHVCQUF1QjtrQkFibkMsU0FBUzsrQkFDRSxzQkFBc0IsY0FHcEI7d0JBQ1YsT0FBTyxDQUFDLE1BQU0sRUFBRTs0QkFDZCxVQUFVLENBQUMsV0FBVyxFQUFFO2dDQUN0QixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0NBQ3JCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUMsT0FBTyxFQUFFLENBQUMsRUFBQyxDQUFDLENBQUM7NkJBQ2xDLENBQUM7eUJBQ0gsQ0FBQztxQkFDSDsySkFHUSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUJ1aWxkZXIsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFJlZ2lzdGVyRGFzaGJvYXJkUnEgfSBmcm9tICcuLi8uLi8uLi9jb3JlL21vZGVscy91c2VyL3VzZXItcnEubW9kZWwnO1xyXG5pbXBvcnQgeyBQYXJhbWV0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9wYXJhbWV0ZXJzLXNlcnZpY2UvcGFyYW1ldGVycy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3VzZXItc2VydmljZS91c2VyLXNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpcHQtY3JlYXRlLXVzZXItZm9ybScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS11c2VyLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NyZWF0ZS11c2VyLWZvcm0uY29tcG9uZW50LmNzcyddLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ2ZhZGUnLCBbXHJcbiAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gKicsIFtcclxuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAgfSksXHJcbiAgICAgICAgYW5pbWF0ZSgyMDAsIHN0eWxlKHtvcGFjaXR5OiAxfSkpXHJcbiAgICAgIF0pXHJcbiAgICBdKVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIENyZWF0ZVVzZXJGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSB1c2VyVHlwZSE6IHN0cmluZztcclxuICBASW5wdXQoKSB2aXNpYmlsaXR5OiBib29sZWFuID0gZmFsc2U7XHJcbiAgQE91dHB1dCgpIHVzZXJDcmVhdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XHJcbiAgQE91dHB1dCgpIG9uSGlkZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICBjcmVhdGVVc2VyRm9ybSE6IEZvcm1Hcm91cDtcclxuICBwaG9uZU51bWJlckluZGljYXRpdmVzOiBhbnk7XHJcbiAgaWRUeXBlczogYW55O1xyXG4gIHN0YXRlczogYW55O1xyXG4gIGxvYWRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNpdGllczogYW55O1xyXG4gIHBob3RvOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgcGFyYW1ldGVyU2VydmljZTogUGFyYW1ldGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuaW5pdEZvcm0oKTtcclxuICAgIHRoaXMuZ2V0UGFyYW1ldGVycygpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VNb2RhbCgpIHtcclxuICAgIHRoaXMudmlzaWJpbGl0eSA9IGZhbHNlO1xyXG4gICAgdGhpcy5vbkhpZGUuZW1pdCh0cnVlKTtcclxuICB9XHJcblxyXG4gIGNyZWF0ZVVzZXIoKSB7XHJcbiAgICB0aGlzLmxvYWRlciA9IHRydWU7XHJcblxyXG4gICAgbGV0IHJlcXVlc3Q6IFJlZ2lzdGVyRGFzaGJvYXJkUnEgPSB7XHJcbiAgICAgIG5hbWU6IHRoaXMuY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ25hbWUnXS52YWx1ZSxcclxuICAgICAgbGFzdF9uYW1lOiB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydsYXN0X25hbWUnXS52YWx1ZSxcclxuICAgICAgaWRfY2FyZF90eXBlOiB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydpZF9jYXJkX3R5cGUnXS52YWx1ZSxcclxuICAgICAgaWRfY2FyZDogdGhpcy5jcmVhdGVVc2VyRm9ybS5jb250cm9sc1snaWRfY2FyZCddLnZhbHVlLFxyXG4gICAgICBwaG9uZV9pbmRpY2F0aXZlOiB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydwaG9uZV9pbmRpY2F0aXZlJ10udmFsdWUsXHJcbiAgICAgIHBob25lX251bWJlcjogdGhpcy5jcmVhdGVVc2VyRm9ybS5jb250cm9sc1sncGhvbmVfbnVtYmVyJ10udmFsdWUsXHJcbiAgICAgIGVtYWlsOiB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydlbWFpbCddLnZhbHVlLFxyXG4gICAgICBjaXR5OiB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydjaXR5J10udmFsdWUsXHJcbiAgICAgIHNlcnZpY2VfaG91cjogdGhpcy5jcmVhdGVVc2VyRm9ybS5jb250cm9sc1snc2VydmljZV9ob3VyJ10udmFsdWUsXHJcbiAgICAgIHJvbGU6IHRoaXMuY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ3JvbGUnXS52YWx1ZSxcclxuICAgICAgcGFzc3dvcmQ6IHRoaXMuY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10udmFsdWUsXHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMudXNlclNlcnZpY2UucmVnaXN0ZXJEYXNoYm9hcmQocmVxdWVzdCkuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICBjb25zb2xlLmxvZyhyZXNwb25zZS5tZXNzYWdlKVxyXG4gICAgICBzd2l0Y2ggKHJlc3BvbnNlLm1lc3NhZ2UuY29kZSkge1xyXG4gICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgIHRoaXMudXNlckNyZWF0ZWQuZW1pdCh0cnVlKTtcclxuICAgICAgICAgIHRoaXMuaW5pdEZvcm0oKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgMjpcclxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkxvcyBkYXRvcyBpbmdyZXNhZG9zIG5vIGNvcnJlc3BvbmRlbiBhIHVuIHVzdWFyaW8gcmVnaXN0cmFkbyBlbiBudWVzdHJvIHNpc3RlbWEsIHBvciBmYXZvciByZXZpc2Vsb3MuXCIpO1xyXG4gICAgICAgIGNhc2UgMzpcclxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkxvcyBkYXRvcyBpbmdyZXNhZG9zIG5vIGN1bXBsZW4gbG9zIHBhcsOhbWV0cm9zIGVzdGFibGVjaWRvc1wiKTtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5sb2FkZXIgPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGFyYW1ldGVycygpIHtcclxuICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRJbmRpY2F0aXZlcygpLnN1YnNjcmliZSgocmVzcG9uc2U6IHsgZGF0YTogYW55OyB9KSA9PiB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXJJbmRpY2F0aXZlcyA9IHJlc3BvbnNlLmRhdGE7XHJcbiAgICB9KTtcclxuICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRDYXJkVHlwZXMoJ2NvbCcpLnN1YnNjcmliZSgocmVzcG9uc2U6IHsgZGF0YTogYW55OyB9KSA9PiB7XHJcbiAgICAgIHRoaXMuaWRUeXBlcyA9IHJlc3BvbnNlLmRhdGE7XHJcbiAgICB9KTtcclxuICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRTdGF0ZXNCeUNvdW50cnkoJ2NvbCcpLnN1YnNjcmliZSgocmVzcG9uc2UpOiB2b2lkID0+IHtcclxuICAgICAgdGhpcy5zdGF0ZXMgPSByZXNwb25zZS5kYXRhO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRSb2xlc09wdGlvbnMoKTogYW55IHtcclxuICAgIC8vIEVzdHVkaWFudGVcclxuICAgIGlmICh0aGlzLnVzZXJUeXBlID09PSAnc3R1ZGVudCcpIHtcclxuICAgICAgdGhpcy5zZXRQaG90bygnc3R1ZGVudCcpO1xyXG4gICAgICByZXR1cm4gW1xyXG4gICAgICAgIHsgY29kZTogJzEzJywgbmFtZTogJ1N0dWRlbnQnIH0sXHJcbiAgICAgIF07XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWNhZMOpbWljb1xyXG4gICAgaWYgKHRoaXMudXNlclR5cGUgPT09ICdhY2FkZW1pYycpIHtcclxuICAgICAgdGhpcy5zZXRQaG90bygnYWNhZGVtaWMnKTtcclxuICAgICAgcmV0dXJuIFtcclxuICAgICAgICB7IGNvZGU6ICcxMScsIG5hbWU6ICdUZWFjaGVyIFBSTycgfSxcclxuICAgICAgICB7IGNvZGU6ICcxMicsIG5hbWU6ICdUZWFjaGVyJyB9LFxyXG4gICAgICBdO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEFkbWluaXN0cmF0aXZvXHJcbiAgICBpZiAodGhpcy51c2VyVHlwZSA9PT0gJ2FkbWluaXN0cmF0aXZlJykge1xyXG4gICAgICB0aGlzLnNldFBob3RvKCdhZG1pbmlzdHJhdGl2ZScpO1xyXG4gICAgICByZXR1cm4gW1xyXG4gICAgICAgIHsgY29kZTogJzMxJywgbmFtZTogJ0FkbWluaXN0cmF0aXZlIFN1cGVydmlzb3InIH0sXHJcbiAgICAgICAgeyBjb2RlOiAnMzInLCBuYW1lOiAnQWRtaW5pc3RyYXRpdmUgQWR2aXNvcicgfSxcclxuICAgICAgXTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBNYXJrZXRpbmdcclxuICAgIGlmICh0aGlzLnVzZXJUeXBlID09PSAnbWFya2V0aW5nJykge1xyXG4gICAgICB0aGlzLnNldFBob3RvKCdtYXJrZXRpbmcnKTtcclxuICAgICAgcmV0dXJuIFtcclxuICAgICAgICB7IGNvZGU6ICcyMScsIG5hbWU6ICdNYXJrZXRpbmcgU3VwZXJ2aXNvcicgfSxcclxuICAgICAgICB7IGNvZGU6ICcyMicsIG5hbWU6ICdNYXJrZXRpbmcgQWR2aXNvcicgfSxcclxuICAgICAgXTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBDb21lcmNpYWxcclxuICAgIGlmICh0aGlzLnVzZXJUeXBlID09PSAnY29tbWVyY2lhbCcpIHtcclxuICAgICAgdGhpcy5zZXRQaG90bygnY29tbWVyY2lhbCcpO1xyXG4gICAgICByZXR1cm4gW1xyXG4gICAgICAgIHsgY29kZTogJzQxJywgbmFtZTogJ0NvbW1lcmNpYWwgU3VwZXJ2aXNvcicgfSxcclxuICAgICAgICB7IGNvZGU6ICc0MicsIG5hbWU6ICdDb21tZXJjaWFsIEFkdmlzb3InIH0sXHJcbiAgICAgIF07XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ2FydGVyYVxyXG4gICAgaWYgKHRoaXMudXNlclR5cGUgPT09ICd0cmVhc3VyZScpIHtcclxuICAgICAgdGhpcy5zZXRQaG90bygndHJlYXN1cmUnKTtcclxuICAgICAgcmV0dXJuIFtcclxuICAgICAgICB7IGNvZGU6ICc1MScsIG5hbWU6ICdUcmVhdXNlciBTdXBlcnZpc29yJyB9LFxyXG4gICAgICAgIHsgY29kZTogJzUyJywgbmFtZTogJ1RyZWF1c2VyIEFkdmlzb3InIH0sXHJcbiAgICAgIF07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbml0Rm9ybSgpIHtcclxuICAgIHRoaXMuY3JlYXRlVXNlckZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgbmFtZTogWycnLFtWYWxpZGF0b3JzLnJlcXVpcmVkLFZhbGlkYXRvcnMubWluTGVuZ3RoKDMpLFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMyKV0sXSxcclxuICAgICAgbGFzdF9uYW1lOiBbJycsW1ZhbGlkYXRvcnMucmVxdWlyZWQsVmFsaWRhdG9ycy5taW5MZW5ndGgoNSksVmFsaWRhdG9ycy5tYXhMZW5ndGgoMzIpLF0sXSxcclxuICAgICAgZW1haWw6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMwMCldXSxcclxuICAgICAgaWRfY2FyZF90eXBlOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgIGlkX2NhcmQ6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDUpLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyMCksXV0sXHJcbiAgICAgIHBob25lX2luZGljYXRpdmU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgY2l0eTogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICByb2xlOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgIHNlcnZpY2VfaG91cjogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICBwaG9uZV9udW1iZXI6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDEwKSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMTUpXV0sXHJcbiAgICAgIHBhc3N3b3JkOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbkxlbmd0aCg3KSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMzIpXV0sXHJcbiAgICAgIHJlX3Bhc3N3b3JkOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbkxlbmd0aCg3KSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMzIpXV0sXHJcbiAgICAgIHN0YXRlOiBbJyddLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRQaG90byh0eXBlOiBzdHJpbmcpIHtcclxuICAgIGlmICh0eXBlID09PSAnc3R1ZGVudCcpIHRoaXMucGhvdG8gPSAnLi4vLi4vLi4vYXNzZXRzL3VzZXItZm9ybS1hc3NldHMvZXN0dWRpYW50ZS5qcGcnXHJcbiAgICBpZiAodHlwZSA9PT0gJ2FjYWRlbWljJykgdGhpcy5waG90byA9ICcuLi8uLi8uLi9hc3NldHMvdXNlci1mb3JtLWFzc2V0cy9hY2FkZW1pY28ucG5nJ1xyXG4gICAgaWYgKHR5cGUgPT09ICdhZG1pbmlzdHJhdGl2ZScpIHRoaXMucGhvdG8gPSAnLi4vLi4vLi4vYXNzZXRzL3VzZXItZm9ybS1hc3NldHMvYWRtaW5pc3RyYXRpdm8uanBnJ1xyXG4gICAgaWYgKHR5cGUgPT09ICdtYXJrZXRpbmcnKSB0aGlzLnBob3RvID0gJy4uLy4uLy4uL2Fzc2V0cy91c2VyLWZvcm0tYXNzZXRzL21hcmtldGluZy5qcGcnXHJcbiAgICBpZiAodHlwZSA9PT0gJ2NvbW1lcmNpYWwnKSB0aGlzLnBob3RvID0gJy4uLy4uLy4uL2Fzc2V0cy91c2VyLWZvcm0tYXNzZXRzL2NvbWVyY2lhbC5qcGcnXHJcbiAgICBpZiAodHlwZSA9PT0gJ3RyZWFzdXJlJykgdGhpcy5waG90byA9ICcuLi8uLi8uLi9hc3NldHMvdXNlci1mb3JtLWFzc2V0cy9hZG1pbmlzdHJhdGl2by5qcGcnXHJcbiAgfVxyXG5cclxuICBzZWxlY3RSb2wocm9sZTogYW55KSB7XHJcbiAgICBpZiAocm9sZSAhPT0gJ1NlbGVjY2lvbmUgZWwgcm9sJykge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydyb2xlJ10uc2V0VmFsdWUocm9sZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydyb2xlJ10uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWxlY3RJbmRpY2F0aXZlcyhpbmRpY2F0aXZlOiBhbnkpIHtcclxuICAgIGlmIChpbmRpY2F0aXZlICE9PSAnU2VsZWNjaW9uZSBlbCBpbmRpY2F0aXZvJykge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydwaG9uZV9pbmRpY2F0aXZlJ10uc2V0VmFsdWUoaW5kaWNhdGl2ZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydwaG9uZV9pbmRpY2F0aXZlJ10uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWxlY3RJZFR5cGUoaWRUeXBlOiBhbnkpIHtcclxuICAgIGlmIChpZFR5cGUgIT09ICdJbmdyZXNlIGVsIHRpcG8gZGUgZG9jdW1lbnRvJykge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydpZF9jYXJkX3R5cGUnXS5zZXRWYWx1ZShpZFR5cGUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jcmVhdGVVc2VyRm9ybS5jb250cm9sc1snaWRfY2FyZF90eXBlJ10uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWxlY3RTdGF0ZShzdGF0ZTogYW55KSB7XHJcbiAgICBpZiAoc3RhdGUgIT09ICdTZWxlY2Npb25lIGVsIGRlcGFydGFtZW50bycpIHtcclxuICAgICAgdGhpcy5jcmVhdGVVc2VyRm9ybS5jb250cm9sc1snc3RhdGUnXS5zZXRWYWx1ZShzdGF0ZSk7XHJcbiAgICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRDaXRpZXNCeVN0YXRlKHN0YXRlKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jaXRpZXMgPSByZXNwb25zZS5kYXRhO1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ3N0YXRlJ10uc2V0VmFsdWUobnVsbCk7XHJcbiAgICAgIHRoaXMuY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ2NpdHknXS5zZXRWYWx1ZShudWxsKTtcclxuICAgICAgdGhpcy5jaXRpZXMgPSBbXTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdENpdHkoY2l0eTogYW55KSB7XHJcbiAgICBpZiAoY2l0eSAhPT0gJ0NpdWRhZCBkZSByZXNpZGVuY2lhJykge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydjaXR5J10uc2V0VmFsdWUoY2l0eSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydjaXR5J10uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxtYWluICpuZ0lmPVwidmlzaWJpbGl0eVwiPlxyXG4gIDxkaXYgQGZhZGUgY2xhc3M9XCJtb2RhbF9jb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJfbW9kYWxcIj5cclxuICAgICAgPGgxPkNyZWFyIHVzdWFyaW8gZGUge3sgdXNlclR5cGUgfCB0aXRsZWNhc2V9fTwvaDE+XHJcbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImNsb3NlTW9kYWwoKVwiPng8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImdyaWRfY29udGFpbmVyXCI+XHJcbiAgICAgIDxkaXY+XHJcbiAgICAgICAgPGZvcm0gYXV0b2NvbXBsZXRlPVwib2ZmXCIgW2Zvcm1Hcm91cF09XCJjcmVhdGVVc2VyRm9ybVwiPlxyXG4gICAgICAgICAgPGlwdC1pbnB1dFxyXG4gICAgICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInTm9tYnJlIGNvbXBsZXRvJ1wiXHJcbiAgICAgICAgICAgIFtjb250cm9sXT1cImNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWyduYW1lJ11cIlxyXG4gICAgICAgICAgICBbdmFsaWRhdGVUZXh0XT1cIidEZWJlIGluZ3Jlc2FyIGVsIG5vbWJyZSdcIlxyXG4gICAgICAgICAgPjwvaXB0LWlucHV0PlxyXG4gICAgICAgICAgPGlwdC1pbnB1dFxyXG4gICAgICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInQXBlbGxpZG9zJ1wiXHJcbiAgICAgICAgICAgIFtjb250cm9sXT1cImNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydsYXN0X25hbWUnXVwiXHJcbiAgICAgICAgICAgIFt2YWxpZGF0ZVRleHRdPVwiJ0RlYmUgaW5ncmVzYXIgbG9zIGFwZWxsaWRvcydcIlxyXG4gICAgICAgICAgPjwvaXB0LWlucHV0PlxyXG4gICAgICAgICAgPGlwdC1pbnB1dFxyXG4gICAgICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInQ29ycmVvIGVsZWN0csOzbmljbydcIlxyXG4gICAgICAgICAgICBbY29udHJvbF09XCJjcmVhdGVVc2VyRm9ybS5jb250cm9sc1snZW1haWwnXVwiXHJcbiAgICAgICAgICAgIFt2YWxpZGF0ZVRleHRdPVwiJ0RlYmUgdGVuZXIgZG9taW5pbyBAaW5nbGVzcGFyYXRvZG9zLmVkdS5jbydcIlxyXG4gICAgICAgICAgPjwvaXB0LWlucHV0PlxyXG4gICAgICAgICAgPGlwdC1zZWxlY3RcclxuICAgICAgICAgICAgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIFtkZWZhdWx0VGV4dF09XCInU2VsZWNjaW9uZSBlbCByb2wnXCJcclxuICAgICAgICAgICAgKGV2ZW50U2VsZWN0KT1cInNlbGVjdFJvbCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2RhdGFdPVwiZ2V0Um9sZXNPcHRpb25zKClcIlxyXG4gICAgICAgICAgPjwvaXB0LXNlbGVjdD5cclxuICAgICAgICAgIDxpcHQtc2VsZWN0XHJcbiAgICAgICAgICAgIFtpc1JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICBbZGF0YV09XCJwaG9uZU51bWJlckluZGljYXRpdmVzXCJcclxuICAgICAgICAgICAgKGV2ZW50U2VsZWN0KT1cInNlbGVjdEluZGljYXRpdmVzKCRldmVudClcIlxyXG4gICAgICAgICAgICBbZGVmYXVsdFRleHRdPVwiJ1NlbGVjY2lvbmUgZWwgaW5kaWNhdGl2bydcIlxyXG4gICAgICAgICAgPjwvaXB0LXNlbGVjdD5cclxuICAgICAgICAgIDxpcHQtaW5wdXRcclxuICAgICAgICAgICAgW2lucHV0VHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInTsO6bWVybyBkZSB0ZWzDqWZvbm8nXCJcclxuICAgICAgICAgICAgW2NvbnRyb2xdPVwiY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ3Bob25lX251bWJlciddXCJcclxuICAgICAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRGViZSBpbmdyZXNhciB1biBuw7ptZXJvIGRlIHRlbMOpZm9ubyB2w6FsaWRvJ1wiXHJcbiAgICAgICAgICA+PC9pcHQtaW5wdXQ+XHJcbiAgICAgICAgICA8aXB0LXNlbGVjdFxyXG4gICAgICAgICAgICBbaXNSZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgW2RhdGFdPVwiaWRUeXBlc1wiXHJcbiAgICAgICAgICAgIChldmVudFNlbGVjdCk9XCJzZWxlY3RJZFR5cGUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFtkZWZhdWx0VGV4dF09XCInSW5ncmVzZSBlbCB0aXBvIGRlIGRvY3VtZW50bydcIlxyXG4gICAgICAgICAgPjwvaXB0LXNlbGVjdD5cclxuICAgICAgICAgIDxpcHQtaW5wdXRcclxuICAgICAgICAgICAgW2lucHV0VHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInRG9jdW1lbnRvIGRlIGlkZW50aWRhZCdcIlxyXG4gICAgICAgICAgICBbY29udHJvbF09XCJjcmVhdGVVc2VyRm9ybS5jb250cm9sc1snaWRfY2FyZCddXCJcclxuICAgICAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRGViZSBpbmdyZXNhciBlbCBuw7ptZXJvIGRlIGRvY3VtZW50bydcIlxyXG4gICAgICAgICAgPjwvaXB0LWlucHV0PlxyXG4gICAgICAgICAgPGlwdC1zZWxlY3RcclxuICAgICAgICAgICAgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIChldmVudFNlbGVjdCk9XCJzZWxlY3RTdGF0ZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2RhdGFdPVwic3RhdGVzXCJcclxuICAgICAgICAgICAgW2RlZmF1bHRUZXh0XT1cIidTZWxlY2Npb25lIGVsIGRlcGFydGFtZW50bydcIlxyXG4gICAgICAgICAgPjwvaXB0LXNlbGVjdD5cclxuICAgICAgICAgIDxpcHQtc2VsZWN0XHJcbiAgICAgICAgICAgIFtpc1JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAoZXZlbnRTZWxlY3QpPVwic2VsZWN0Q2l0eSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2RhdGFdPVwiY2l0aWVzXCJcclxuICAgICAgICAgICAgW2RlZmF1bHRUZXh0XT1cIidDaXVkYWQgZGUgcmVzaWRlbmNpYSdcIlxyXG4gICAgICAgICAgPjwvaXB0LXNlbGVjdD5cclxuICAgICAgICAgIDxpcHQtaW5wdXQgKm5nSWY9XCIhKHVzZXJUeXBlID09PSAnc3R1ZGVudCcpXCJcclxuICAgICAgICAgICAgW2lucHV0VHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInSW5ncmVzZSBsYXMgaG9yYXMgZGUgc2VydmljaW8nXCJcclxuICAgICAgICAgICAgW2NvbnRyb2xdPVwiY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ3NlcnZpY2VfaG91ciddXCJcclxuICAgICAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRGViZSBpbmdyZXNhciBsYXMgaG9yYXMgZGUgc2VydmljaW8nXCJcclxuICAgICAgICAgID48L2lwdC1pbnB1dD5cclxuICAgICAgICAgIDxpcHQtaW5wdXRcclxuICAgICAgICAgICAgW2lucHV0VHlwZV09XCIncGFzc3dvcmQnXCJcclxuICAgICAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidDb250cmFzZcOxYSdcIlxyXG4gICAgICAgICAgICBbY29udHJvbF09XCJjcmVhdGVVc2VyRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2lwdC1pbnB1dD5cclxuICAgICAgICAgIDxpcHQtaW5wdXRcclxuICAgICAgICAgICAgW2lucHV0VHlwZV09XCIncGFzc3dvcmQnXCJcclxuICAgICAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidSZXBldGlyIGNvbnRyYXNlw7FhJ1wiXHJcbiAgICAgICAgICAgIFtjb250cm9sXT1cImNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydyZV9wYXNzd29yZCddXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDwvaXB0LWlucHV0PlxyXG4gICAgICAgIDwvZm9ybT5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbnMtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICA8aXB0LWJ1dHRvblxyXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ0NyZWFyIHVzdWFyaW8nXCJcclxuICAgICAgICAgICAgW2lzRW5hYmxlZF09XCJcclxuICAgICAgICAgICAgICAhbG9hZGVyICYmXHJcbiAgICAgICAgICAgICAgY3JlYXRlVXNlckZvcm0udmFsdWVbJ3JlX3Bhc3N3b3JkJ10gPT09XHJcbiAgICAgICAgICAgICAgY3JlYXRlVXNlckZvcm0udmFsdWVbJ3Bhc3N3b3JkJ11cclxuICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgKG9uQ2xpY2spPVwiY3JlYXRlVXNlcigpXCJcclxuICAgICAgICAgICAgW3ByaW1hcnldPVwidHJ1ZVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2lwdC1idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZC1pbWFnZSc6ICd1cmwoJyArIHBob3RvICsgJyknfVwiIGNsYXNzPVwidXNlcl90eXBlX2ltYWdlXCI+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9tYWluPlxyXG4iXX0=
|
|
228
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXVzZXItZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9jcmVhdGUtdXNlci1mb3JtL2NyZWF0ZS11c2VyLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY3JlYXRlLXVzZXItZm9ybS9jcmVhdGUtdXNlci1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7OztBQWtCcEUsTUFBTSxPQUFPLHVCQUF1QjtJQWNsQyxZQUNVLEVBQWUsRUFDZixnQkFBa0MsRUFDbEMsV0FBd0I7UUFGeEIsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFmekIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUMzQixnQkFBVyxHQUFHLElBQUksWUFBWSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQy9DLFdBQU0sR0FBRyxJQUFJLFlBQVksQ0FBVSxLQUFLLENBQUMsQ0FBQztRQU1wRCxXQUFNLEdBQVksS0FBSyxDQUFDO1FBRXhCLFVBQUssR0FBVyxFQUFFLENBQUM7SUFNaEIsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxD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QUFRLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3JEO0lBQ0gsQ0FBQzs7b0hBMU1VLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLG1MQ3BCcEMsMnlJQTJHQSxpckZEaEdjO1FBQ1YsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNkLFVBQVUsQ0FBQyxXQUFXLEVBQUU7Z0JBQ3RCLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQztnQkFDckIsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBQyxPQUFPLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FBQzthQUNsQyxDQUFDO1NBQ0gsQ0FBQztLQUNIOzJGQUVVLHVCQUF1QjtrQkFibkMsU0FBUzsrQkFDRSxzQkFBc0IsY0FHcEI7d0JBQ1YsT0FBTyxDQUFDLE1BQU0sRUFBRTs0QkFDZCxVQUFVLENBQUMsV0FBVyxFQUFFO2dDQUN0QixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0NBQ3JCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUMsT0FBTyxFQUFFLENBQUMsRUFBQyxDQUFDLENBQUM7NkJBQ2xDLENBQUM7eUJBQ0gsQ0FBQztxQkFDSDsySkFHUSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUJ1aWxkZXIsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFJlZ2lzdGVyRGFzaGJvYXJkUnEgfSBmcm9tICcuLi8uLi8uLi9jb3JlL21vZGVscy91c2VyL3VzZXItcnEubW9kZWwnO1xyXG5pbXBvcnQgeyBQYXJhbWV0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9wYXJhbWV0ZXJzLXNlcnZpY2UvcGFyYW1ldGVycy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3VzZXItc2VydmljZS91c2VyLXNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpcHQtY3JlYXRlLXVzZXItZm9ybScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS11c2VyLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NyZWF0ZS11c2VyLWZvcm0uY29tcG9uZW50LmNzcyddLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ2ZhZGUnLCBbXHJcbiAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gKicsIFtcclxuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAgfSksXHJcbiAgICAgICAgYW5pbWF0ZSgyMDAsIHN0eWxlKHtvcGFjaXR5OiAxfSkpXHJcbiAgICAgIF0pXHJcbiAgICBdKVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIENyZWF0ZVVzZXJGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSB1c2VyVHlwZSE6IHN0cmluZztcclxuICBASW5wdXQoKSB2aXNpYmlsaXR5OiBib29sZWFuID0gZmFsc2U7XHJcbiAgQE91dHB1dCgpIHVzZXJDcmVhdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XHJcbiAgQE91dHB1dCgpIG9uSGlkZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICBjcmVhdGVVc2VyRm9ybSE6IEZvcm1Hcm91cDtcclxuICBwaG9uZU51bWJlckluZGljYXRpdmVzOiBhbnk7XHJcbiAgaWRUeXBlczogYW55O1xyXG4gIHN0YXRlczogYW55O1xyXG4gIGxvYWRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNpdGllczogYW55O1xyXG4gIHBob3RvOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgcGFyYW1ldGVyU2VydmljZTogUGFyYW1ldGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuaW5pdEZvcm0oKTtcclxuICAgIHRoaXMuZ2V0UGFyYW1ldGVycygpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VNb2RhbCgpIHtcclxuICAgIHRoaXMudmlzaWJpbGl0eSA9IGZhbHNlO1xyXG4gICAgdGhpcy5vbkhpZGUuZW1pdCh0cnVlKTtcclxuICB9XHJcblxyXG4gIGNyZWF0ZVVzZXIoKSB7XHJcbiAgICB0aGlzLmxvYWRlciA9IHRydWU7XHJcblxyXG4gICAgbGV0IHJlcXVlc3Q6IFJlZ2lzdGVyRGFzaGJvYXJkUnEgPSB7XHJcbiAgICAgIG5hbWU6IHRoaXMuY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ25hbWUnXS52YWx1ZSxcclxuICAgICAgbGFzdF9uYW1lOiB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydsYXN0X25hbWUnXS52YWx1ZSxcclxuICAgICAgaWRfY2FyZF90eXBlOiB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydpZF9jYXJkX3R5cGUnXS52YWx1ZSxcclxuICAgICAgaWRfY2FyZDogdGhpcy5jcmVhdGVVc2VyRm9ybS5jb250cm9sc1snaWRfY2FyZCddLnZhbHVlLFxyXG4gICAgICBwaG9uZV9pbmRpY2F0aXZlOiB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydwaG9uZV9pbmRpY2F0aXZlJ10udmFsdWUsXHJcbiAgICAgIHBob25lX251bWJlcjogdGhpcy5jcmVhdGVVc2VyRm9ybS5jb250cm9sc1sncGhvbmVfbnVtYmVyJ10udmFsdWUsXHJcbiAgICAgIGVtYWlsOiB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydlbWFpbCddLnZhbHVlLFxyXG4gICAgICBjaXR5OiB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydjaXR5J10udmFsdWUsXHJcbiAgICAgIHNlcnZpY2VfaG91cjogdGhpcy5jcmVhdGVVc2VyRm9ybS5jb250cm9sc1snc2VydmljZV9ob3VyJ10udmFsdWUsXHJcbiAgICAgIHJvbGU6IHRoaXMuY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ3JvbGUnXS52YWx1ZSxcclxuICAgICAgcGFzc3dvcmQ6IHRoaXMuY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10udmFsdWUsXHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMudXNlclNlcnZpY2UucmVnaXN0ZXJEYXNoYm9hcmQocmVxdWVzdCkuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICBjb25zb2xlLmxvZyhyZXNwb25zZS5tZXNzYWdlKVxyXG4gICAgICBzd2l0Y2ggKHJlc3BvbnNlLm1lc3NhZ2UuY29kZSkge1xyXG4gICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgIHRoaXMudXNlckNyZWF0ZWQuZW1pdCh0cnVlKTtcclxuICAgICAgICAgIHRoaXMuaW5pdEZvcm0oKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgMjpcclxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkxvcyBkYXRvcyBpbmdyZXNhZG9zIG5vIGNvcnJlc3BvbmRlbiBhIHVuIHVzdWFyaW8gcmVnaXN0cmFkbyBlbiBudWVzdHJvIHNpc3RlbWEsIHBvciBmYXZvciByZXZpc2Vsb3MuXCIpO1xyXG4gICAgICAgIGNhc2UgMzpcclxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkxvcyBkYXRvcyBpbmdyZXNhZG9zIG5vIGN1bXBsZW4gbG9zIHBhcsOhbWV0cm9zIGVzdGFibGVjaWRvc1wiKTtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5sb2FkZXIgPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGFyYW1ldGVycygpIHtcclxuICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRJbmRpY2F0aXZlcygpLnN1YnNjcmliZSgocmVzcG9uc2U6IHsgZGF0YTogYW55OyB9KSA9PiB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXJJbmRpY2F0aXZlcyA9IHJlc3BvbnNlLmRhdGE7XHJcbiAgICB9KTtcclxuICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRDYXJkVHlwZXMoJ2NvbCcpLnN1YnNjcmliZSgocmVzcG9uc2U6IHsgZGF0YTogYW55OyB9KSA9PiB7XHJcbiAgICAgIHRoaXMuaWRUeXBlcyA9IHJlc3BvbnNlLmRhdGE7XHJcbiAgICB9KTtcclxuICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRTdGF0ZXNCeUNvdW50cnkoJ2NvbCcpLnN1YnNjcmliZSgocmVzcG9uc2UpOiB2b2lkID0+IHtcclxuICAgICAgdGhpcy5zdGF0ZXMgPSByZXNwb25zZS5kYXRhO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRSb2xlc09wdGlvbnMoKTogYW55IHtcclxuICAgIC8vIEVzdHVkaWFudGVcclxuICAgIGlmICh0aGlzLnVzZXJUeXBlID09PSAnc3R1ZGVudCcpIHtcclxuICAgICAgdGhpcy5zZXRQaG90bygnc3R1ZGVudCcpO1xyXG4gICAgICByZXR1cm4gW1xyXG4gICAgICAgIHsgY29kZTogJzEzJywgbmFtZTogJ1N0dWRlbnQnIH0sXHJcbiAgICAgIF07XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWNhZMOpbWljb1xyXG4gICAgaWYgKHRoaXMudXNlclR5cGUgPT09ICdhY2FkZW1pYycpIHtcclxuICAgICAgdGhpcy5zZXRQaG90bygnYWNhZGVtaWMnKTtcclxuICAgICAgcmV0dXJuIFtcclxuICAgICAgICB7IGNvZGU6ICcxMScsIG5hbWU6ICdUZWFjaGVyIFBSTycgfSxcclxuICAgICAgICB7IGNvZGU6ICcxMicsIG5hbWU6ICdUZWFjaGVyJyB9LFxyXG4gICAgICBdO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEFkbWluaXN0cmF0aXZvXHJcbiAgICBpZiAodGhpcy51c2VyVHlwZSA9PT0gJ2FkbWluaXN0cmF0aXZlJykge1xyXG4gICAgICB0aGlzLnNldFBob3RvKCdhZG1pbmlzdHJhdGl2ZScpO1xyXG4gICAgICByZXR1cm4gW1xyXG4gICAgICAgIHsgY29kZTogJzMxJywgbmFtZTogJ0FkbWluaXN0cmF0aXZlIFN1cGVydmlzb3InIH0sXHJcbiAgICAgICAgeyBjb2RlOiAnMzInLCBuYW1lOiAnQWRtaW5pc3RyYXRpdmUgQWR2aXNvcicgfSxcclxuICAgICAgXTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBNYXJrZXRpbmdcclxuICAgIGlmICh0aGlzLnVzZXJUeXBlID09PSAnbWFya2V0aW5nJykge1xyXG4gICAgICB0aGlzLnNldFBob3RvKCdtYXJrZXRpbmcnKTtcclxuICAgICAgcmV0dXJuIFtcclxuICAgICAgICB7IGNvZGU6ICcyMScsIG5hbWU6ICdNYXJrZXRpbmcgU3VwZXJ2aXNvcicgfSxcclxuICAgICAgICB7IGNvZGU6ICcyMicsIG5hbWU6ICdNYXJrZXRpbmcgQWR2aXNvcicgfSxcclxuICAgICAgXTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBDb21lcmNpYWxcclxuICAgIGlmICh0aGlzLnVzZXJUeXBlID09PSAnY29tbWVyY2lhbCcpIHtcclxuICAgICAgdGhpcy5zZXRQaG90bygnY29tbWVyY2lhbCcpO1xyXG4gICAgICByZXR1cm4gW1xyXG4gICAgICAgIHsgY29kZTogJzQxJywgbmFtZTogJ0NvbW1lcmNpYWwgU3VwZXJ2aXNvcicgfSxcclxuICAgICAgICB7IGNvZGU6ICc0MicsIG5hbWU6ICdDb21tZXJjaWFsIEFkdmlzb3InIH0sXHJcbiAgICAgIF07XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ2FydGVyYVxyXG4gICAgaWYgKHRoaXMudXNlclR5cGUgPT09ICd0cmVhc3VyZScpIHtcclxuICAgICAgdGhpcy5zZXRQaG90bygndHJlYXN1cmUnKTtcclxuICAgICAgcmV0dXJuIFtcclxuICAgICAgICB7IGNvZGU6ICc1MScsIG5hbWU6ICdUcmVhdXNlciBTdXBlcnZpc29yJyB9LFxyXG4gICAgICAgIHsgY29kZTogJzUyJywgbmFtZTogJ1RyZWF1c2VyIEFkdmlzb3InIH0sXHJcbiAgICAgIF07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbml0Rm9ybSgpIHtcclxuICAgIHRoaXMuY3JlYXRlVXNlckZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgbmFtZTogWycnLFtWYWxpZGF0b3JzLnJlcXVpcmVkLFZhbGlkYXRvcnMubWluTGVuZ3RoKDMpLFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMyKV0sXSxcclxuICAgICAgbGFzdF9uYW1lOiBbJycsW1ZhbGlkYXRvcnMucmVxdWlyZWQsVmFsaWRhdG9ycy5taW5MZW5ndGgoNSksVmFsaWRhdG9ycy5tYXhMZW5ndGgoMzIpLF0sXSxcclxuICAgICAgZW1haWw6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMwMCldXSxcclxuICAgICAgaWRfY2FyZF90eXBlOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgIGlkX2NhcmQ6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDUpLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyMCksXV0sXHJcbiAgICAgIHBob25lX2luZGljYXRpdmU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgY2l0eTogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICByb2xlOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgIHNlcnZpY2VfaG91cjogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICBwaG9uZV9udW1iZXI6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDEwKSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMTUpXV0sXHJcbiAgICAgIHBhc3N3b3JkOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbkxlbmd0aCg3KSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMzIpXV0sXHJcbiAgICAgIHJlX3Bhc3N3b3JkOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbkxlbmd0aCg3KSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMzIpXV0sXHJcbiAgICAgIHN0YXRlOiBbJyddLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRQaG90byh0eXBlOiBzdHJpbmcpIHtcclxuICAgIGlmICh0eXBlID09PSAnc3R1ZGVudCcpIHRoaXMucGhvdG8gPSAnLi4vLi4vLi4vYXNzZXRzL3VzZXItZm9ybS1hc3NldHMvZXN0dWRpYW50ZS5qcGcnXHJcbiAgICBpZiAodHlwZSA9PT0gJ2FjYWRlbWljJykgdGhpcy5waG90byA9ICcuLi8uLi8uLi9hc3NldHMvdXNlci1mb3JtLWFzc2V0cy9hY2FkZW1pY28ucG5nJ1xyXG4gICAgaWYgKHR5cGUgPT09ICdhZG1pbmlzdHJhdGl2ZScpIHRoaXMucGhvdG8gPSAnLi4vLi4vLi4vYXNzZXRzL3VzZXItZm9ybS1hc3NldHMvYWRtaW5pc3RyYXRpdm8uanBnJ1xyXG4gICAgaWYgKHR5cGUgPT09ICdtYXJrZXRpbmcnKSB0aGlzLnBob3RvID0gJy4uLy4uLy4uL2Fzc2V0cy91c2VyLWZvcm0tYXNzZXRzL21hcmtldGluZy5qcGcnXHJcbiAgICBpZiAodHlwZSA9PT0gJ2NvbW1lcmNpYWwnKSB0aGlzLnBob3RvID0gJy4uLy4uLy4uL2Fzc2V0cy91c2VyLWZvcm0tYXNzZXRzL2NvbWVyY2lhbC5qcGcnXHJcbiAgICBpZiAodHlwZSA9PT0gJ3RyZWFzdXJlJykgdGhpcy5waG90byA9ICcuLi8uLi8uLi9hc3NldHMvdXNlci1mb3JtLWFzc2V0cy9hZG1pbmlzdHJhdGl2by5qcGcnXHJcbiAgfVxyXG5cclxuICBzZWxlY3RSb2wocm9sZTogYW55KSB7XHJcbiAgICBpZiAocm9sZSAhPT0gJ1NlbGVjY2lvbmUgZWwgcm9sJykge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydyb2xlJ10uc2V0VmFsdWUocm9sZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydyb2xlJ10uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWxlY3RJbmRpY2F0aXZlcyhpbmRpY2F0aXZlOiBhbnkpIHtcclxuICAgIGlmIChpbmRpY2F0aXZlICE9PSAnU2VsZWNjaW9uZSBlbCBpbmRpY2F0aXZvJykge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydwaG9uZV9pbmRpY2F0aXZlJ10uc2V0VmFsdWUoaW5kaWNhdGl2ZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydwaG9uZV9pbmRpY2F0aXZlJ10uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWxlY3RJZFR5cGUoaWRUeXBlOiBhbnkpIHtcclxuICAgIGlmIChpZFR5cGUgIT09ICdJbmdyZXNlIGVsIHRpcG8gZGUgZG9jdW1lbnRvJykge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydpZF9jYXJkX3R5cGUnXS5zZXRWYWx1ZShpZFR5cGUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jcmVhdGVVc2VyRm9ybS5jb250cm9sc1snaWRfY2FyZF90eXBlJ10uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWxlY3RTdGF0ZShzdGF0ZTogYW55KSB7XHJcbiAgICBpZiAoc3RhdGUgIT09ICdTZWxlY2Npb25lIGVsIGRlcGFydGFtZW50bycpIHtcclxuICAgICAgdGhpcy5jcmVhdGVVc2VyRm9ybS5jb250cm9sc1snc3RhdGUnXS5zZXRWYWx1ZShzdGF0ZSk7XHJcbiAgICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRDaXRpZXNCeVN0YXRlKHN0YXRlKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jaXRpZXMgPSByZXNwb25zZS5kYXRhO1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ3N0YXRlJ10uc2V0VmFsdWUobnVsbCk7XHJcbiAgICAgIHRoaXMuY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ2NpdHknXS5zZXRWYWx1ZShudWxsKTtcclxuICAgICAgdGhpcy5jaXRpZXMgPSBbXTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdENpdHkoY2l0eTogYW55KSB7XHJcbiAgICBpZiAoY2l0eSAhPT0gJ0NpdWRhZCBkZSByZXNpZGVuY2lhJykge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydjaXR5J10uc2V0VmFsdWUoY2l0eSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydjaXR5J10uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxtYWluICpuZ0lmPVwidmlzaWJpbGl0eVwiPlxyXG4gIDxkaXYgQGZhZGUgY2xhc3M9XCJtb2RhbF9jb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJfbW9kYWxcIj5cclxuICAgICAgPGgxPkNyZWFyIHVzdWFyaW8gZGUge3sgdXNlclR5cGUgfCB0aXRsZWNhc2V9fTwvaDE+XHJcbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImNsb3NlTW9kYWwoKVwiPng8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImdyaWRfY29udGFpbmVyXCI+XHJcbiAgICAgIDxkaXY+XHJcbiAgICAgICAgPGZvcm0gYXV0b2NvbXBsZXRlPVwib2ZmXCIgW2Zvcm1Hcm91cF09XCJjcmVhdGVVc2VyRm9ybVwiPlxyXG4gICAgICAgICAgPGlwdC1pbnB1dFxyXG4gICAgICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInTm9tYnJlIGNvbXBsZXRvJ1wiXHJcbiAgICAgICAgICAgIFtjb250cm9sXT1cImNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWyduYW1lJ11cIlxyXG4gICAgICAgICAgICBbdmFsaWRhdGVUZXh0XT1cIidEZWJlIGluZ3Jlc2FyIGVsIG5vbWJyZSdcIlxyXG4gICAgICAgICAgPjwvaXB0LWlucHV0PlxyXG4gICAgICAgICAgPGlwdC1pbnB1dFxyXG4gICAgICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInQXBlbGxpZG9zJ1wiXHJcbiAgICAgICAgICAgIFtjb250cm9sXT1cImNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydsYXN0X25hbWUnXVwiXHJcbiAgICAgICAgICAgIFt2YWxpZGF0ZVRleHRdPVwiJ0RlYmUgaW5ncmVzYXIgbG9zIGFwZWxsaWRvcydcIlxyXG4gICAgICAgICAgPjwvaXB0LWlucHV0PlxyXG4gICAgICAgICAgPGlwdC1pbnB1dFxyXG4gICAgICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInQ29ycmVvIGVsZWN0csOzbmljbydcIlxyXG4gICAgICAgICAgICBbY29udHJvbF09XCJjcmVhdGVVc2VyRm9ybS5jb250cm9sc1snZW1haWwnXVwiXHJcbiAgICAgICAgICAgIFt2YWxpZGF0ZVRleHRdPVwiJ0RlYmUgdGVuZXIgZG9taW5pbyBAaW5nbGVzcGFyYXRvZG9zLmVkdS5jbydcIlxyXG4gICAgICAgICAgPjwvaXB0LWlucHV0PlxyXG4gICAgICAgICAgPGlwdC1zZWxlY3RcclxuICAgICAgICAgICAgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIFtkZWZhdWx0VGV4dF09XCInU2VsZWNjaW9uZSBlbCByb2wnXCJcclxuICAgICAgICAgICAgKGV2ZW50U2VsZWN0KT1cInNlbGVjdFJvbCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2RhdGFdPVwiZ2V0Um9sZXNPcHRpb25zKClcIlxyXG4gICAgICAgICAgPjwvaXB0LXNlbGVjdD5cclxuICAgICAgICAgIDxpcHQtc2VsZWN0XHJcbiAgICAgICAgICAgIFtpc1JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICBbZGF0YV09XCJwaG9uZU51bWJlckluZGljYXRpdmVzXCJcclxuICAgICAgICAgICAgKGV2ZW50U2VsZWN0KT1cInNlbGVjdEluZGljYXRpdmVzKCRldmVudClcIlxyXG4gICAgICAgICAgICBbZGVmYXVsdFRleHRdPVwiJ1NlbGVjY2lvbmUgZWwgaW5kaWNhdGl2bydcIlxyXG4gICAgICAgICAgPjwvaXB0LXNlbGVjdD5cclxuICAgICAgICAgIDxpcHQtaW5wdXRcclxuICAgICAgICAgICAgW2lucHV0VHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInTsO6bWVybyBkZSB0ZWzDqWZvbm8nXCJcclxuICAgICAgICAgICAgW2NvbnRyb2xdPVwiY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ3Bob25lX251bWJlciddXCJcclxuICAgICAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRGViZSBpbmdyZXNhciB1biBuw7ptZXJvIGRlIHRlbMOpZm9ubyB2w6FsaWRvJ1wiXHJcbiAgICAgICAgICA+PC9pcHQtaW5wdXQ+XHJcbiAgICAgICAgICA8aXB0LXNlbGVjdFxyXG4gICAgICAgICAgICBbaXNSZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgW2RhdGFdPVwiaWRUeXBlc1wiXHJcbiAgICAgICAgICAgIChldmVudFNlbGVjdCk9XCJzZWxlY3RJZFR5cGUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFtkZWZhdWx0VGV4dF09XCInSW5ncmVzZSBlbCB0aXBvIGRlIGRvY3VtZW50bydcIlxyXG4gICAgICAgICAgPjwvaXB0LXNlbGVjdD5cclxuICAgICAgICAgIDxpcHQtaW5wdXRcclxuICAgICAgICAgICAgW2lucHV0VHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInRG9jdW1lbnRvIGRlIGlkZW50aWRhZCdcIlxyXG4gICAgICAgICAgICBbY29udHJvbF09XCJjcmVhdGVVc2VyRm9ybS5jb250cm9sc1snaWRfY2FyZCddXCJcclxuICAgICAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRGViZSBpbmdyZXNhciBlbCBuw7ptZXJvIGRlIGRvY3VtZW50bydcIlxyXG4gICAgICAgICAgPjwvaXB0LWlucHV0PlxyXG4gICAgICAgICAgPGlwdC1zZWxlY3RcclxuICAgICAgICAgICAgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIChldmVudFNlbGVjdCk9XCJzZWxlY3RTdGF0ZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2RhdGFdPVwic3RhdGVzXCJcclxuICAgICAgICAgICAgW2RlZmF1bHRUZXh0XT1cIidTZWxlY2Npb25lIGVsIGRlcGFydGFtZW50bydcIlxyXG4gICAgICAgICAgPjwvaXB0LXNlbGVjdD5cclxuICAgICAgICAgIDxpcHQtc2VsZWN0XHJcbiAgICAgICAgICAgIFtpc1JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAoZXZlbnRTZWxlY3QpPVwic2VsZWN0Q2l0eSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2RhdGFdPVwiY2l0aWVzXCJcclxuICAgICAgICAgICAgW2RlZmF1bHRUZXh0XT1cIidDaXVkYWQgZGUgcmVzaWRlbmNpYSdcIlxyXG4gICAgICAgICAgPjwvaXB0LXNlbGVjdD5cclxuICAgICAgICAgIDxpcHQtaW5wdXQgKm5nSWY9XCIhKHVzZXJUeXBlID09PSAnc3R1ZGVudCcpXCJcclxuICAgICAgICAgICAgW2lucHV0VHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInSW5ncmVzZSBsYXMgaG9yYXMgZGUgc2VydmljaW8nXCJcclxuICAgICAgICAgICAgW2NvbnRyb2xdPVwiY3JlYXRlVXNlckZvcm0uY29udHJvbHNbJ3NlcnZpY2VfaG91ciddXCJcclxuICAgICAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRGViZSBpbmdyZXNhciBsYXMgaG9yYXMgZGUgc2VydmljaW8nXCJcclxuICAgICAgICAgID48L2lwdC1pbnB1dD5cclxuICAgICAgICAgIDxpcHQtaW5wdXRcclxuICAgICAgICAgICAgW2lucHV0VHlwZV09XCIncGFzc3dvcmQnXCJcclxuICAgICAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidDb250cmFzZcOxYSdcIlxyXG4gICAgICAgICAgICBbY29udHJvbF09XCJjcmVhdGVVc2VyRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2lwdC1pbnB1dD5cclxuICAgICAgICAgIDxpcHQtaW5wdXRcclxuICAgICAgICAgICAgW2lucHV0VHlwZV09XCIncGFzc3dvcmQnXCJcclxuICAgICAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidSZXBldGlyIGNvbnRyYXNlw7FhJ1wiXHJcbiAgICAgICAgICAgIFtjb250cm9sXT1cImNyZWF0ZVVzZXJGb3JtLmNvbnRyb2xzWydyZV9wYXNzd29yZCddXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDwvaXB0LWlucHV0PlxyXG4gICAgICAgIDwvZm9ybT5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbnMtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICA8aXB0LWJ1dHRvblxyXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ0NyZWFyIHVzdWFyaW8nXCJcclxuICAgICAgICAgICAgW2lzRW5hYmxlZF09XCJcclxuICAgICAgICAgICAgICAhbG9hZGVyICYmXHJcbiAgICAgICAgICAgICAgY3JlYXRlVXNlckZvcm0udmFsdWVbJ3JlX3Bhc3N3b3JkJ10gPT09XHJcbiAgICAgICAgICAgICAgY3JlYXRlVXNlckZvcm0udmFsdWVbJ3Bhc3N3b3JkJ11cclxuICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgKG9uQ2xpY2spPVwiY3JlYXRlVXNlcigpXCJcclxuICAgICAgICAgICAgW3ByaW1hcnldPVwidHJ1ZVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2lwdC1idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZC1pbWFnZSc6ICd1cmwoJyArIHBob3RvICsgJyknfVwiIGNsYXNzPVwidXNlcl90eXBlX2ltYWdlXCI+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9tYWluPlxyXG4iXX0=
|
|
@@ -133,6 +133,22 @@ export class ParameterService extends IPTGeneralService {
|
|
|
133
133
|
let serviceUrl = this.SERVICE_URL + 'get/gender/code/' + code;
|
|
134
134
|
return this.http.get(serviceUrl);
|
|
135
135
|
}
|
|
136
|
+
getStratums() {
|
|
137
|
+
let serviceUrl = this.SERVICE_URL + 'get/stratums';
|
|
138
|
+
return this.http.get(serviceUrl);
|
|
139
|
+
}
|
|
140
|
+
getStratumByCode(code) {
|
|
141
|
+
let serviceUrl = this.SERVICE_URL + 'get/stratum/by/code/' + code;
|
|
142
|
+
return this.http.get(serviceUrl);
|
|
143
|
+
}
|
|
144
|
+
getCivilStatus() {
|
|
145
|
+
let serviceUrl = this.SERVICE_URL + 'get/civil/status';
|
|
146
|
+
return this.http.get(serviceUrl);
|
|
147
|
+
}
|
|
148
|
+
getCivilStatusByCode(code) {
|
|
149
|
+
let serviceUrl = this.SERVICE_URL + 'get/civil/status/by/code/' + code;
|
|
150
|
+
return this.http.get(serviceUrl);
|
|
151
|
+
}
|
|
136
152
|
}
|
|
137
153
|
ParameterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
138
154
|
ParameterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, providedIn: 'root' });
|
|
@@ -142,4 +158,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
142
158
|
providedIn: 'root',
|
|
143
159
|
}]
|
|
144
160
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVycy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvcmUvc2VydmljZXMvcGFyYW1ldGVycy1zZXJ2aWNlL3BhcmFtZXRlcnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7QUFLM0QsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGlCQUFpQjtJQUdyRCxZQUFvQixJQUFnQjtRQUNsQyxLQUFLLEVBQUUsQ0FBQztRQURVLFNBQUksR0FBSixJQUFJLENBQVk7UUFGNUIsZ0JBQVcsR0FBRyxpQkFBaUIsQ0FBQztRQUl0QyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQztRQUN0RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxZQUFZLENBQUMsT0FBZTtRQUMxQixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDJCQUEyQixHQUFHLE9BQU8sQ0FBQztRQUMxRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxlQUFlLENBQUM7UUFDcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lB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LElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxlQUFlLENBQUMsSUFBWTtRQUMxQixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLGtCQUFrQixHQUFHLElBQUksQ0FBQztRQUM5RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7OzZHQS9KVSxnQkFBZ0I7aUhBQWhCLGdCQUFnQixjQUZmLE1BQU07MkZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBJUFRHZW5lcmFsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UtZW52aXJvbWVudHMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBhcmFtZXRlclNlcnZpY2UgZXh0ZW5kcyBJUFRHZW5lcmFsU2VydmljZXtcclxuICBwcml2YXRlIFNFUlZJQ0VfVVJMID0gJ3BhcmFtZXRlcnMvYXBpLyc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIHRoaXMuU0VSVklDRV9VUkwgPSB0aGlzLmJhc2VVcmwoKSArIHRoaXMuU0VSVklDRV9VUkw7XHJcbiAgfVxyXG5cclxuICBnZXRJbmRpY2F0aXZlcygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9pbmRpY2F0aXZlcyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldENhcmRUeXBlcyhjb3VudHJ5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9pZC9jYXJkL3R5cGUvY291bnRyeS8nICsgY291bnRyeTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q291bnRyaWVzKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2NvdW50cmllcyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldFN0YXRlc0J5Q291bnRyeShjb3VudHJ5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9zdGF0ZS9jb3VudHJ5L2lzby8nICsgY291bnRyeTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2l0aWVzQnlTdGF0ZShzdGF0ZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY2l0aWVzL3N0YXRlLycgKyBzdGF0ZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWxsUGxhbnMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL3BsYW5zJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0TGV2ZWxzKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2VuZ2xpc2gvbGV2ZWxzJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWdyZWVtZW50cygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvYWdyZWVtZW50JztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWdyZWVtZW50QnlDYXRlZ29yeSh0eXBlQ2F0ZWdvcnk6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9XHJcbiAgICAgIHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FncmVlbWVudC9ieS9jYXRlZ29yeS8nICsgdHlwZUNhdGVnb3J5O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRBbGxDbGFzc3Jvb21zKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9jbGFzc3Jvb20nO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb3Vyc2VzVHlwZXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL2NvdXJzZS90eXBlJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q291cnNlc1R5cGVzQnlQbGFuKHR5cGVQbGFuOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9jb3Vyc2UvYnkvcGxhbi8nICsgdHlwZVBsYW47XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldERlZ3JlZXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL2RlZ3JlZXMnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRQcm9ncmFtc0J5RGVncmVlKHR5cGVEZWdyZWU6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3Byb2dyYW1zL2J5L2RlZ3JlZS8nICsgdHlwZURlZ3JlZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0TWFya2V0aW5nUmVhc29ucygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvbWt0L3JlYXNvbnMnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRTdHVkeVJlYXNvbnMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL3N0dWR5L3JlYXNvbnMnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRBY2FkZW1pY1VuaXRzKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FjYWRlbWljL3VuaXRzJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuICBnZXRTdGF0dXNDb250YWN0KCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2NvbnRhY3Qvc3RhdHVzL2FsbCc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldFR5cGVQbGFuKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9wbGFucyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcbiAgZ2V0VHlwZVBsYW5EaXNjb3VudCgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9kaXNjb3VudC9hbGwvcGxhbnMnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb250YWN0ZWRUeXBlKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2NvbnRhY3QvY29udGFjdGVkL2FsbCc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldFN0YXR1c0J5Q29kZShjb2RlU3RhdHVzOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9jb250YWN0L3N0YXR1cy9ieWNvZGUvJyArIGNvZGVTdGF0dXM7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcbiAgZ2V0QWxsVHlwZURpc2NvdW50KCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2NvbW1lcmNpYWwvdHlwZWRpc2NvdW50cy9hbGwnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRBbGxDb3Vyc2VNb2RhbGl0eSgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvY291cnNlL21vZGFsaXR5JztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWxsUGF5bWVudE1ldGhvZCgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9wYXltZW50L21ldGhvZC9hbGwnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRBbGxQYXltZW50U2VydmljZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9wYXltZW50L3NlcnZpY2VzL2FsbCc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldEFsbEJhbmtzKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2JhbmtzL2FsbCc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldEFsbENhbXB1cygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9iYW5rcy9hbGwnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRDYW1wdXNCeUNvZGUoY29kZUNhbXB1OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9jYW1wdXMvYnkvY29kZS8nICsgY29kZUNhbXB1O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRHZW5kZXJzKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2dlbmRlcnMnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRHZW5kZXJCeUNvZGUoY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvZ2VuZGVyL2NvZGUvJyArIGNvZGU7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=
|
|
161
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVycy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvcmUvc2VydmljZXMvcGFyYW1ldGVycy1zZXJ2aWNlL3BhcmFtZXRlcnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7QUFLM0QsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGlCQUFpQjtJQUdyRCxZQUFvQixJQUFnQjtRQUNsQyxLQUFLLEVBQUUsQ0FBQztRQURVLFNBQUksR0FBSixJQUFJLENBQVk7UUFGNUIsZ0JBQVcsR0FBRyxpQkFBaUIsQ0FBQztRQUl0QyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQztRQUN0RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxZQUFZLENBQUMsT0FBZTtRQUMxQixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDJCQUEyQixHQUFHLE9BQU8sQ0FBQztRQUMxRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxlQUFlLENBQUM7UUFDcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lB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YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IElQVEdlbmVyYWxTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS1lbnZpcm9tZW50cyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGFyYW1ldGVyU2VydmljZSBleHRlbmRzIElQVEdlbmVyYWxTZXJ2aWNle1xyXG4gIHByaXZhdGUgU0VSVklDRV9VUkwgPSAncGFyYW1ldGVycy9hcGkvJztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5TRVJWSUNFX1VSTCA9IHRoaXMuYmFzZVVybCgpICsgdGhpcy5TRVJWSUNFX1VSTDtcclxuICB9XHJcblxyXG4gIGdldEluZGljYXRpdmVzKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2luZGljYXRpdmVzJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2FyZFR5cGVzKGNvdW50cnk6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2lkL2NhcmQvdHlwZS9jb3VudHJ5LycgKyBjb3VudHJ5O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb3VudHJpZXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY291bnRyaWVzJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3RhdGVzQnlDb3VudHJ5KGNvdW50cnk6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3N0YXRlL2NvdW50cnkvaXNvLycgKyBjb3VudHJ5O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRDaXRpZXNCeVN0YXRlKHN0YXRlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9jaXRpZXMvc3RhdGUvJyArIHN0YXRlO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRBbGxQbGFucygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvcGxhbnMnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRMZXZlbHMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvZW5nbGlzaC9sZXZlbHMnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRBZ3JlZW1lbnRzKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9hZ3JlZW1lbnQnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRBZ3JlZW1lbnRCeUNhdGVnb3J5KHR5cGVDYXRlZ29yeTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID1cclxuICAgICAgdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWdyZWVtZW50L2J5L2NhdGVnb3J5LycgKyB0eXBlQ2F0ZWdvcnk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldEFsbENsYXNzcm9vbXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL2NsYXNzcm9vbSc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldENvdXJzZXNUeXBlcygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvY291cnNlL3R5cGUnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb3Vyc2VzVHlwZXNCeVBsYW4odHlwZVBsYW46IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2NvdXJzZS9ieS9wbGFuLycgKyB0eXBlUGxhbjtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0RGVncmVlcygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvZGVncmVlcyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldFByb2dyYW1zQnlEZWdyZWUodHlwZURlZ3JlZTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvcHJvZ3JhbXMvYnkvZGVncmVlLycgKyB0eXBlRGVncmVlO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRNYXJrZXRpbmdSZWFzb25zKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9ta3QvcmVhc29ucyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldFN0dWR5UmVhc29ucygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvc3R1ZHkvcmVhc29ucyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldEFjYWRlbWljVW5pdHMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWNhZGVtaWMvdW5pdHMnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG4gIGdldFN0YXR1c0NvbnRhY3QoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY29udGFjdC9zdGF0dXMvYWxsJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VHlwZVBsYW4oKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL3BsYW5zJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuICBnZXRUeXBlUGxhbkRpc2NvdW50KCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2Rpc2NvdW50L2FsbC9wbGFucyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldENvbnRhY3RlZFR5cGUoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY29udGFjdC9jb250YWN0ZWQvYWxsJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3RhdHVzQnlDb2RlKGNvZGVTdGF0dXM6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2NvbnRhY3Qvc3RhdHVzL2J5Y29kZS8nICsgY29kZVN0YXR1cztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuICBnZXRBbGxUeXBlRGlzY291bnQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY29tbWVyY2lhbC90eXBlZGlzY291bnRzL2FsbCc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldEFsbENvdXJzZU1vZGFsaXR5KCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9jb3Vyc2UvbW9kYWxpdHknO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRBbGxQYXltZW50TWV0aG9kKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3BheW1lbnQvbWV0aG9kL2FsbCc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldEFsbFBheW1lbnRTZXJ2aWNlKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3BheW1lbnQvc2VydmljZXMvYWxsJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWxsQmFua3MoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYmFua3MvYWxsJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWxsQ2FtcHVzKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2JhbmtzL2FsbCc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldENhbXB1c0J5Q29kZShjb2RlQ2FtcHU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2NhbXB1cy9ieS9jb2RlLycgKyBjb2RlQ2FtcHU7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldEdlbmRlcnMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvZ2VuZGVycyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldEdlbmRlckJ5Q29kZShjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9nZW5kZXIvY29kZS8nICsgY29kZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3RyYXR1bXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvc3RyYXR1bXMnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRTdHJhdHVtQnlDb2RlKGNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3N0cmF0dW0vYnkvY29kZS8nICsgY29kZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2l2aWxTdGF0dXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY2l2aWwvc3RhdHVzJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2l2aWxTdGF0dXNCeUNvZGUoY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY2l2aWwvc3RhdHVzL2J5L2NvZGUvJyArIGNvZGU7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=
|
|
@@ -501,7 +501,7 @@ LoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versio
|
|
|
501
501
|
</div>
|
|
502
502
|
</div>
|
|
503
503
|
</div>
|
|
504
|
-
</div>`, isInline: true, styles: [".dialog{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s;z-index:9999}.loader_container{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;
|
|
504
|
+
</div>`, isInline: true, styles: [".dialog{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s;z-index:9999}.loader_container{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;inset:0;margin:auto;background-color:#fff;border-radius:6px;padding:1rem;z-index:9999}span{display:flex;justify-content:center;color:#1c77f7;font:bold;margin-bottom:1rem}.container{display:flex;justify-content:center}.spinner{width:60px;height:60px;position:relative}.spinner .dot{position:absolute;inset:0;display:flex;justify-content:center}.spinner .dot:after{content:\"\";width:7px;height:7px;border-radius:50%;background-color:#1c77f7}@keyframes spin{to{transform:rotate(360deg)}}.spinner .dot{animation:spin 2s infinite}.spinner .dot:nth-child(2){animation-delay:.1s}.spinner .dot:nth-child(3){animation-delay:.2s}.spinner .dot:nth-child(4){animation-delay:.3s}.spinner .dot:nth-child(5){animation-delay:.4s}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
505
505
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoaderComponent, decorators: [{
|
|
506
506
|
type: Component,
|
|
507
507
|
args: [{ selector: 'ipt-loader', template: `
|
|
@@ -518,7 +518,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
518
518
|
</div>
|
|
519
519
|
</div>
|
|
520
520
|
</div>
|
|
521
|
-
</div>`, styles: [".dialog{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s;z-index:9999}.loader_container{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;
|
|
521
|
+
</div>`, styles: [".dialog{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s;z-index:9999}.loader_container{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;inset:0;margin:auto;background-color:#fff;border-radius:6px;padding:1rem;z-index:9999}span{display:flex;justify-content:center;color:#1c77f7;font:bold;margin-bottom:1rem}.container{display:flex;justify-content:center}.spinner{width:60px;height:60px;position:relative}.spinner .dot{position:absolute;inset:0;display:flex;justify-content:center}.spinner .dot:after{content:\"\";width:7px;height:7px;border-radius:50%;background-color:#1c77f7}@keyframes spin{to{transform:rotate(360deg)}}.spinner .dot{animation:spin 2s infinite}.spinner .dot:nth-child(2){animation-delay:.1s}.spinner .dot:nth-child(3){animation-delay:.2s}.spinner .dot:nth-child(4){animation-delay:.3s}.spinner .dot:nth-child(5){animation-delay:.4s}\n"] }]
|
|
522
522
|
}], propDecorators: { message: [{
|
|
523
523
|
type: Input
|
|
524
524
|
}], isDialog: [{
|
|
@@ -1318,6 +1318,22 @@ class ParameterService extends IPTGeneralService {
|
|
|
1318
1318
|
let serviceUrl = this.SERVICE_URL + 'get/gender/code/' + code;
|
|
1319
1319
|
return this.http.get(serviceUrl);
|
|
1320
1320
|
}
|
|
1321
|
+
getStratums() {
|
|
1322
|
+
let serviceUrl = this.SERVICE_URL + 'get/stratums';
|
|
1323
|
+
return this.http.get(serviceUrl);
|
|
1324
|
+
}
|
|
1325
|
+
getStratumByCode(code) {
|
|
1326
|
+
let serviceUrl = this.SERVICE_URL + 'get/stratum/by/code/' + code;
|
|
1327
|
+
return this.http.get(serviceUrl);
|
|
1328
|
+
}
|
|
1329
|
+
getCivilStatus() {
|
|
1330
|
+
let serviceUrl = this.SERVICE_URL + 'get/civil/status';
|
|
1331
|
+
return this.http.get(serviceUrl);
|
|
1332
|
+
}
|
|
1333
|
+
getCivilStatusByCode(code) {
|
|
1334
|
+
let serviceUrl = this.SERVICE_URL + 'get/civil/status/by/code/' + code;
|
|
1335
|
+
return this.http.get(serviceUrl);
|
|
1336
|
+
}
|
|
1321
1337
|
}
|
|
1322
1338
|
ParameterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1323
1339
|
ParameterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, providedIn: 'root' });
|
|
@@ -1517,7 +1533,7 @@ class CreateUserFormComponent {
|
|
|
1517
1533
|
}
|
|
1518
1534
|
}
|
|
1519
1535
|
CreateUserFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CreateUserFormComponent, deps: [{ token: i1$1.FormBuilder }, { token: ParameterService }, { token: UserService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1520
|
-
CreateUserFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: CreateUserFormComponent, selector: "ipt-create-user-form", inputs: { userType: "userType", visibility: "visibility" }, outputs: { userCreated: "userCreated", onHide: "onHide" }, ngImport: i0, template: "<main *ngIf=\"visibility\">\r\n <div @fade class=\"modal_container\">\r\n <div class=\"header_modal\">\r\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\r\n <button (click)=\"closeModal()\">x</button>\r\n </div>\r\n <div class=\"grid_container\">\r\n <div>\r\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Nombre completo'\"\r\n [control]=\"createUserForm.controls['name']\"\r\n [validateText]=\"'Debe ingresar el nombre'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Apellidos'\"\r\n [control]=\"createUserForm.controls['last_name']\"\r\n [validateText]=\"'Debe ingresar los apellidos'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Correo electr\u00F3nico'\"\r\n [control]=\"createUserForm.controls['email']\"\r\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [defaultText]=\"'Seleccione el rol'\"\r\n (eventSelect)=\"selectRol($event)\"\r\n [data]=\"getRolesOptions()\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"phoneNumberIndicatives\"\r\n (eventSelect)=\"selectIndicatives($event)\"\r\n [defaultText]=\"'Seleccione el indicativo'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\r\n [control]=\"createUserForm.controls['phone_number']\"\r\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"idTypes\"\r\n (eventSelect)=\"selectIdType($event)\"\r\n [defaultText]=\"'Ingrese el tipo de documento'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Documento de identidad'\"\r\n [control]=\"createUserForm.controls['id_card']\"\r\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectState($event)\"\r\n [data]=\"states\"\r\n [defaultText]=\"'Seleccione el departamento'\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectCity($event)\"\r\n [data]=\"cities\"\r\n [defaultText]=\"'Ciudad de residencia'\"\r\n ></ipt-select>\r\n <ipt-input *ngIf=\"!(userType === 'student')\"\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Ingrese las horas de servicio'\"\r\n [control]=\"createUserForm.controls['service_hour']\"\r\n [validateText]=\"'Debe ingresar las horas de servicio'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['password']\"\r\n >\r\n </ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['re_password']\"\r\n >\r\n </ipt-input>\r\n </form>\r\n\r\n <div class=\"buttons-container\">\r\n <ipt-button\r\n [label]=\"'Crear usuario'\"\r\n [isEnabled]=\"\r\n !loader &&\r\n createUserForm.value['re_password'] ===\r\n createUserForm.value['password']\r\n \"\r\n (onClick)=\"createUser()\"\r\n [primary]=\"true\"\r\n >\r\n </ipt-button>\r\n </div>\r\n </div>\r\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\r\n </div>\r\n </div>\r\n</main>\r\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s}main .modal_container{width:60%;height:-moz-fit-content;height:fit-content;position:absolute;
|
|
1536
|
+
CreateUserFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: CreateUserFormComponent, selector: "ipt-create-user-form", inputs: { userType: "userType", visibility: "visibility" }, outputs: { userCreated: "userCreated", onHide: "onHide" }, ngImport: i0, template: "<main *ngIf=\"visibility\">\r\n <div @fade class=\"modal_container\">\r\n <div class=\"header_modal\">\r\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\r\n <button (click)=\"closeModal()\">x</button>\r\n </div>\r\n <div class=\"grid_container\">\r\n <div>\r\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Nombre completo'\"\r\n [control]=\"createUserForm.controls['name']\"\r\n [validateText]=\"'Debe ingresar el nombre'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Apellidos'\"\r\n [control]=\"createUserForm.controls['last_name']\"\r\n [validateText]=\"'Debe ingresar los apellidos'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Correo electr\u00F3nico'\"\r\n [control]=\"createUserForm.controls['email']\"\r\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [defaultText]=\"'Seleccione el rol'\"\r\n (eventSelect)=\"selectRol($event)\"\r\n [data]=\"getRolesOptions()\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"phoneNumberIndicatives\"\r\n (eventSelect)=\"selectIndicatives($event)\"\r\n [defaultText]=\"'Seleccione el indicativo'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\r\n [control]=\"createUserForm.controls['phone_number']\"\r\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"idTypes\"\r\n (eventSelect)=\"selectIdType($event)\"\r\n [defaultText]=\"'Ingrese el tipo de documento'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Documento de identidad'\"\r\n [control]=\"createUserForm.controls['id_card']\"\r\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectState($event)\"\r\n [data]=\"states\"\r\n [defaultText]=\"'Seleccione el departamento'\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectCity($event)\"\r\n [data]=\"cities\"\r\n [defaultText]=\"'Ciudad de residencia'\"\r\n ></ipt-select>\r\n <ipt-input *ngIf=\"!(userType === 'student')\"\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Ingrese las horas de servicio'\"\r\n [control]=\"createUserForm.controls['service_hour']\"\r\n [validateText]=\"'Debe ingresar las horas de servicio'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['password']\"\r\n >\r\n </ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['re_password']\"\r\n >\r\n </ipt-input>\r\n </form>\r\n\r\n <div class=\"buttons-container\">\r\n <ipt-button\r\n [label]=\"'Crear usuario'\"\r\n [isEnabled]=\"\r\n !loader &&\r\n createUserForm.value['re_password'] ===\r\n createUserForm.value['password']\r\n \"\r\n (onClick)=\"createUser()\"\r\n [primary]=\"true\"\r\n >\r\n </ipt-button>\r\n </div>\r\n </div>\r\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\r\n </div>\r\n </div>\r\n</main>\r\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s}main .modal_container{width:60%;height:-moz-fit-content;height:fit-content;position:absolute;inset:0;margin:auto;background-color:#fff;border-radius:6px}.header_modal{display:flex;padding:0 15px;gap:1rem;align-items:center}.header_modal h1{padding:.5rem;background-color:#1c77f7;color:#fff;width:100%;border-radius:10px;font-size:1.25rem;font-weight:700}.header_modal button{margin-left:auto;font-size:26px;padding:1.2rem;font-weight:200;color:#6c7f7d;display:flex;width:25px;height:25px;align-items:center;justify-content:center;transition:50ms;background-color:transparent;border:none}.header_modal button:hover{cursor:pointer;border-radius:50%;background-color:#d4d4d4}.grid_container{display:grid;grid-template-columns:1fr}form{display:grid;grid-template-columns:1fr;grid-gap:.25rem;gap:.25rem;justify-content:center;padding:0 1rem}.buttons-container{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center;align-items:center;justify-items:center;align-content:center}.user_type_image{display:none}}@media screen and (min-width: 768px){form{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;justify-content:center}}@media screen and (min-width: 1366px){form{padding:0rem}.grid_container{display:grid;grid-template-columns:1fr 250px;grid-gap:1rem;gap:1rem;padding:1rem}.user_type_image{display:flex;background-size:cover;background-repeat:no-repeat;background-position:center;height:100%;border-radius:1rem;padding:1rem}}\n"], components: [{ type: InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { type: SelectComponent, selector: "ipt-select", inputs: ["isRequired", "data", "defaultText", "selectCode", "disabledSel", "initialValue", "control"], outputs: ["eventSelect"] }, { type: ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], pipes: { "titlecase": i1.TitleCasePipe }, animations: [
|
|
1521
1537
|
trigger('fade', [
|
|
1522
1538
|
transition('void => *', [
|
|
1523
1539
|
style({ opacity: 0 }),
|
|
@@ -1534,7 +1550,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
|
|
|
1534
1550
|
animate(200, style({ opacity: 1 }))
|
|
1535
1551
|
])
|
|
1536
1552
|
])
|
|
1537
|
-
], template: "<main *ngIf=\"visibility\">\r\n <div @fade class=\"modal_container\">\r\n <div class=\"header_modal\">\r\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\r\n <button (click)=\"closeModal()\">x</button>\r\n </div>\r\n <div class=\"grid_container\">\r\n <div>\r\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Nombre completo'\"\r\n [control]=\"createUserForm.controls['name']\"\r\n [validateText]=\"'Debe ingresar el nombre'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Apellidos'\"\r\n [control]=\"createUserForm.controls['last_name']\"\r\n [validateText]=\"'Debe ingresar los apellidos'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Correo electr\u00F3nico'\"\r\n [control]=\"createUserForm.controls['email']\"\r\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [defaultText]=\"'Seleccione el rol'\"\r\n (eventSelect)=\"selectRol($event)\"\r\n [data]=\"getRolesOptions()\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"phoneNumberIndicatives\"\r\n (eventSelect)=\"selectIndicatives($event)\"\r\n [defaultText]=\"'Seleccione el indicativo'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\r\n [control]=\"createUserForm.controls['phone_number']\"\r\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"idTypes\"\r\n (eventSelect)=\"selectIdType($event)\"\r\n [defaultText]=\"'Ingrese el tipo de documento'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Documento de identidad'\"\r\n [control]=\"createUserForm.controls['id_card']\"\r\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectState($event)\"\r\n [data]=\"states\"\r\n [defaultText]=\"'Seleccione el departamento'\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectCity($event)\"\r\n [data]=\"cities\"\r\n [defaultText]=\"'Ciudad de residencia'\"\r\n ></ipt-select>\r\n <ipt-input *ngIf=\"!(userType === 'student')\"\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Ingrese las horas de servicio'\"\r\n [control]=\"createUserForm.controls['service_hour']\"\r\n [validateText]=\"'Debe ingresar las horas de servicio'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['password']\"\r\n >\r\n </ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['re_password']\"\r\n >\r\n </ipt-input>\r\n </form>\r\n\r\n <div class=\"buttons-container\">\r\n <ipt-button\r\n [label]=\"'Crear usuario'\"\r\n [isEnabled]=\"\r\n !loader &&\r\n createUserForm.value['re_password'] ===\r\n createUserForm.value['password']\r\n \"\r\n (onClick)=\"createUser()\"\r\n [primary]=\"true\"\r\n >\r\n </ipt-button>\r\n </div>\r\n </div>\r\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\r\n </div>\r\n </div>\r\n</main>\r\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s}main .modal_container{width:60%;height:-moz-fit-content;height:fit-content;position:absolute;
|
|
1553
|
+
], template: "<main *ngIf=\"visibility\">\r\n <div @fade class=\"modal_container\">\r\n <div class=\"header_modal\">\r\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\r\n <button (click)=\"closeModal()\">x</button>\r\n </div>\r\n <div class=\"grid_container\">\r\n <div>\r\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Nombre completo'\"\r\n [control]=\"createUserForm.controls['name']\"\r\n [validateText]=\"'Debe ingresar el nombre'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Apellidos'\"\r\n [control]=\"createUserForm.controls['last_name']\"\r\n [validateText]=\"'Debe ingresar los apellidos'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Correo electr\u00F3nico'\"\r\n [control]=\"createUserForm.controls['email']\"\r\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [defaultText]=\"'Seleccione el rol'\"\r\n (eventSelect)=\"selectRol($event)\"\r\n [data]=\"getRolesOptions()\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"phoneNumberIndicatives\"\r\n (eventSelect)=\"selectIndicatives($event)\"\r\n [defaultText]=\"'Seleccione el indicativo'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\r\n [control]=\"createUserForm.controls['phone_number']\"\r\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"idTypes\"\r\n (eventSelect)=\"selectIdType($event)\"\r\n [defaultText]=\"'Ingrese el tipo de documento'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Documento de identidad'\"\r\n [control]=\"createUserForm.controls['id_card']\"\r\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectState($event)\"\r\n [data]=\"states\"\r\n [defaultText]=\"'Seleccione el departamento'\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectCity($event)\"\r\n [data]=\"cities\"\r\n [defaultText]=\"'Ciudad de residencia'\"\r\n ></ipt-select>\r\n <ipt-input *ngIf=\"!(userType === 'student')\"\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Ingrese las horas de servicio'\"\r\n [control]=\"createUserForm.controls['service_hour']\"\r\n [validateText]=\"'Debe ingresar las horas de servicio'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['password']\"\r\n >\r\n </ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['re_password']\"\r\n >\r\n </ipt-input>\r\n </form>\r\n\r\n <div class=\"buttons-container\">\r\n <ipt-button\r\n [label]=\"'Crear usuario'\"\r\n [isEnabled]=\"\r\n !loader &&\r\n createUserForm.value['re_password'] ===\r\n createUserForm.value['password']\r\n \"\r\n (onClick)=\"createUser()\"\r\n [primary]=\"true\"\r\n >\r\n </ipt-button>\r\n </div>\r\n </div>\r\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\r\n </div>\r\n </div>\r\n</main>\r\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s}main .modal_container{width:60%;height:-moz-fit-content;height:fit-content;position:absolute;inset:0;margin:auto;background-color:#fff;border-radius:6px}.header_modal{display:flex;padding:0 15px;gap:1rem;align-items:center}.header_modal h1{padding:.5rem;background-color:#1c77f7;color:#fff;width:100%;border-radius:10px;font-size:1.25rem;font-weight:700}.header_modal button{margin-left:auto;font-size:26px;padding:1.2rem;font-weight:200;color:#6c7f7d;display:flex;width:25px;height:25px;align-items:center;justify-content:center;transition:50ms;background-color:transparent;border:none}.header_modal button:hover{cursor:pointer;border-radius:50%;background-color:#d4d4d4}.grid_container{display:grid;grid-template-columns:1fr}form{display:grid;grid-template-columns:1fr;grid-gap:.25rem;gap:.25rem;justify-content:center;padding:0 1rem}.buttons-container{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center;align-items:center;justify-items:center;align-content:center}.user_type_image{display:none}}@media screen and (min-width: 768px){form{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;justify-content:center}}@media screen and (min-width: 1366px){form{padding:0rem}.grid_container{display:grid;grid-template-columns:1fr 250px;grid-gap:1rem;gap:1rem;padding:1rem}.user_type_image{display:flex;background-size:cover;background-repeat:no-repeat;background-position:center;height:100%;border-radius:1rem;padding:1rem}}\n"] }]
|
|
1538
1554
|
}], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: ParameterService }, { type: UserService }]; }, propDecorators: { userType: [{
|
|
1539
1555
|
type: Input
|
|
1540
1556
|
}], visibility: [{
|