iptdevs-design-system 2.7.37 → 2.7.39

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.
Files changed (166) hide show
  1. package/README.md +24 -24
  2. package/esm2020/iptdevs-design-system.mjs +4 -4
  3. package/esm2020/lib/cod/cod-documents-section/cod-documents-section.component.mjs +16 -16
  4. package/esm2020/lib/cod/cod-form/cod-form.component.mjs +227 -227
  5. package/esm2020/lib/cod/cod.module.mjs +90 -90
  6. package/esm2020/lib/cod/logic/calculate-quotes.service.mjs +72 -72
  7. package/esm2020/lib/cod/logic/cod-form-controls.mjs +91 -91
  8. package/esm2020/lib/cod/logic/cod-form-steps.mjs +29 -29
  9. package/esm2020/lib/cod/logic/communicator.service.mjs +28 -28
  10. package/esm2020/lib/cod/logic/local-storage-cod.service.mjs +39 -39
  11. package/esm2020/lib/cod/steps/cod-form-step-five/cod-form-step-five.component.mjs +146 -146
  12. package/esm2020/lib/cod/steps/cod-form-step-four/cod-form-step-four.component.mjs +251 -251
  13. package/esm2020/lib/cod/steps/cod-form-step-one/cod-form-step-one.component.mjs +200 -200
  14. package/esm2020/lib/cod/steps/cod-form-step-three/cod-form-step-three.component.mjs +175 -175
  15. package/esm2020/lib/cod/steps/cod-form-step-two/cod-form-step-two.component.mjs +255 -255
  16. package/esm2020/lib/components/atoms/aside-button/aside-button.component.mjs +50 -50
  17. package/esm2020/lib/components/atoms/button/button.component.mjs +64 -64
  18. package/esm2020/lib/components/atoms/checkbox/checkbox.component.mjs +47 -47
  19. package/esm2020/lib/components/atoms/datalist/datalist.component.mjs +94 -94
  20. package/esm2020/lib/components/atoms/input/input.component.mjs +145 -145
  21. package/esm2020/lib/components/atoms/level-button/level-button.component.mjs +64 -64
  22. package/esm2020/lib/components/atoms/level-text/level-text.component.mjs +19 -19
  23. package/esm2020/lib/components/atoms/loader/loader.component.mjs +48 -48
  24. package/esm2020/lib/components/atoms/radio/radio.component.mjs +47 -47
  25. package/esm2020/lib/components/atoms/select/select.component.mjs +102 -102
  26. package/esm2020/lib/components/atoms/text-link/text-link.component.mjs +39 -39
  27. package/esm2020/lib/components/components.module.mjs +123 -118
  28. package/esm2020/lib/components/forms/create-user-form/create-user-form.component.mjs +228 -228
  29. package/esm2020/lib/components/forms/login-form/login-form.component.mjs +93 -93
  30. package/esm2020/lib/components/material.module.mjs +19 -19
  31. package/esm2020/lib/components/molecules/question-type/edit-question-types.component.mjs +299 -0
  32. package/esm2020/lib/components/molecules/sidenav/sidenav.component.mjs +150 -150
  33. package/esm2020/lib/core/core.module.mjs +73 -73
  34. package/esm2020/lib/core/models/academic/academic.component.mjs +2 -2
  35. package/esm2020/lib/core/models/activities/activities.interface.mjs +2 -2
  36. package/esm2020/lib/core/models/attendance/attendance.interface.mjs +2 -2
  37. package/esm2020/lib/core/models/budget/budget.model.mjs +2 -2
  38. package/esm2020/lib/core/models/calendar/calendar-rq.models.mjs +2 -2
  39. package/esm2020/lib/core/models/classroom/classroom-rq.model.mjs +2 -2
  40. package/esm2020/lib/core/models/cod/cod-rq.model.mjs +2 -2
  41. package/esm2020/lib/core/models/commercial/commercial.model.mjs +2 -2
  42. package/esm2020/lib/core/models/course/course-rq.model.mjs +2 -2
  43. package/esm2020/lib/core/models/course/courses.model.mjs +2 -2
  44. package/esm2020/lib/core/models/cronogram/cronogram.models.mjs +2 -2
  45. package/esm2020/lib/core/models/marketing/marketing.model.mjs +2 -2
  46. package/esm2020/lib/core/models/notes/notes.interface.mjs +2 -2
  47. package/esm2020/lib/core/models/payment/payment-rq.model.mjs +2 -2
  48. package/esm2020/lib/core/models/response/response.interface.mjs +2 -2
  49. package/esm2020/lib/core/models/session/session.model.mjs +3 -3
  50. package/esm2020/lib/core/models/student/student.interface.mjs +2 -2
  51. package/esm2020/lib/core/models/table/table-rs.model.mjs +2 -2
  52. package/esm2020/lib/core/models/test/test.model.mjs +2 -2
  53. package/esm2020/lib/core/models/url/url.model.mjs +2 -2
  54. package/esm2020/lib/core/models/user/user-rq.model.mjs +2 -2
  55. package/esm2020/lib/core/models/user/user-rs.model.mjs +5 -5
  56. package/esm2020/lib/core/services/academic-service/academic.service.mjs +55 -55
  57. package/esm2020/lib/core/services/activity-service/activity.service.mjs +87 -87
  58. package/esm2020/lib/core/services/attendance-service/attendance.service.mjs +64 -64
  59. package/esm2020/lib/core/services/budget-service/budget-service.mjs +66 -66
  60. package/esm2020/lib/core/services/calendar-service/calendar.service.mjs +65 -65
  61. package/esm2020/lib/core/services/certificate-service/certificate.service.mjs +26 -26
  62. package/esm2020/lib/core/services/classroom-service/classroom-service.service.mjs +36 -36
  63. package/esm2020/lib/core/services/commercial-service/comercial.service.mjs +49 -49
  64. package/esm2020/lib/core/services/commercial-service/validators.mjs +4 -4
  65. package/esm2020/lib/core/services/copies.service.mjs +17 -17
  66. package/esm2020/lib/core/services/course-service/course-service.model.mjs +70 -70
  67. package/esm2020/lib/core/services/ekt-service/userekt.service.mjs +29 -29
  68. package/esm2020/lib/core/services/marketing-service/marketing-service.mjs +52 -52
  69. package/esm2020/lib/core/services/notes-service/notes.service.mjs +46 -46
  70. package/esm2020/lib/core/services/parameters-service/parameters.service.mjs +173 -173
  71. package/esm2020/lib/core/services/service-enviroments.mjs +26 -26
  72. package/esm2020/lib/core/services/storage-service/storage-service.mjs +50 -50
  73. package/esm2020/lib/core/services/student-service/student.service.mjs +26 -26
  74. package/esm2020/lib/core/services/switch-service/switch.service.mjs +16 -16
  75. package/esm2020/lib/core/services/test-service/test.service.mjs +128 -131
  76. package/esm2020/lib/core/services/user-service/user-service.mjs +100 -100
  77. package/esm2020/lib/core/utils/base-service/base.service.mjs +191 -186
  78. package/esm2020/lib/core/utils/copies.mjs +214 -214
  79. package/esm2020/lib/core/utils/route-service/route.service.mjs +18 -18
  80. package/esm2020/lib/design-system.module.mjs +40 -40
  81. package/esm2020/public-api.mjs +89 -88
  82. package/fesm2015/iptdevs-design-system.mjs +4548 -4247
  83. package/fesm2015/iptdevs-design-system.mjs.map +1 -1
  84. package/fesm2020/iptdevs-design-system.mjs +4545 -4244
  85. package/fesm2020/iptdevs-design-system.mjs.map +1 -1
  86. package/iptdevs-design-system.d.ts +5 -5
  87. package/lib/cod/cod-documents-section/cod-documents-section.component.d.ts +8 -8
  88. package/lib/cod/cod-form/cod-form.component.d.ts +37 -37
  89. package/lib/cod/cod.module.d.ts +21 -21
  90. package/lib/cod/logic/calculate-quotes.service.d.ts +14 -14
  91. package/lib/cod/logic/cod-form-controls.d.ts +16 -16
  92. package/lib/cod/logic/cod-form-steps.d.ts +15 -15
  93. package/lib/cod/logic/communicator.service.d.ts +13 -13
  94. package/lib/cod/logic/local-storage-cod.service.d.ts +8 -8
  95. package/lib/cod/steps/cod-form-step-five/cod-form-step-five.component.d.ts +31 -31
  96. package/lib/cod/steps/cod-form-step-four/cod-form-step-four.component.d.ts +47 -47
  97. package/lib/cod/steps/cod-form-step-one/cod-form-step-one.component.d.ts +46 -46
  98. package/lib/cod/steps/cod-form-step-three/cod-form-step-three.component.d.ts +35 -35
  99. package/lib/cod/steps/cod-form-step-two/cod-form-step-two.component.d.ts +44 -44
  100. package/lib/components/atoms/aside-button/aside-button.component.d.ts +11 -11
  101. package/lib/components/atoms/button/button.component.d.ts +13 -13
  102. package/lib/components/atoms/checkbox/checkbox.component.d.ts +11 -11
  103. package/lib/components/atoms/datalist/datalist.component.d.ts +20 -20
  104. package/lib/components/atoms/input/input.component.d.ts +26 -26
  105. package/lib/components/atoms/level-button/level-button.component.d.ts +11 -11
  106. package/lib/components/atoms/level-text/level-text.component.d.ts +7 -7
  107. package/lib/components/atoms/loader/loader.component.d.ts +7 -7
  108. package/lib/components/atoms/radio/radio.component.d.ts +11 -11
  109. package/lib/components/atoms/select/select.component.d.ts +26 -26
  110. package/lib/components/atoms/text-link/text-link.component.d.ts +12 -12
  111. package/lib/components/components.module.d.ts +25 -24
  112. package/lib/components/forms/create-user-form/create-user-form.component.d.ts +36 -36
  113. package/lib/components/forms/login-form/login-form.component.d.ts +13 -13
  114. package/lib/components/material.module.d.ts +11 -11
  115. package/lib/components/molecules/question-type/edit-question-types.component.d.ts +10 -0
  116. package/lib/components/molecules/sidenav/sidenav.component.d.ts +25 -25
  117. package/lib/core/core.module.d.ts +6 -6
  118. package/lib/core/models/academic/academic.component.d.ts +26 -26
  119. package/lib/core/models/activities/activities.interface.d.ts +12 -12
  120. package/lib/core/models/attendance/attendance.interface.d.ts +62 -62
  121. package/lib/core/models/budget/budget.model.d.ts +69 -69
  122. package/lib/core/models/calendar/calendar-rq.models.d.ts +27 -27
  123. package/lib/core/models/classroom/classroom-rq.model.d.ts +23 -23
  124. package/lib/core/models/cod/cod-rq.model.d.ts +168 -168
  125. package/lib/core/models/commercial/commercial.model.d.ts +10 -10
  126. package/lib/core/models/course/course-rq.model.d.ts +86 -86
  127. package/lib/core/models/course/courses.model.d.ts +18 -18
  128. package/lib/core/models/cronogram/cronogram.models.d.ts +183 -183
  129. package/lib/core/models/marketing/marketing.model.d.ts +104 -104
  130. package/lib/core/models/notes/notes.interface.d.ts +89 -89
  131. package/lib/core/models/payment/payment-rq.model.d.ts +212 -212
  132. package/lib/core/models/response/response.interface.d.ts +10 -10
  133. package/lib/core/models/session/session.model.d.ts +5 -5
  134. package/lib/core/models/student/student.interface.d.ts +4 -4
  135. package/lib/core/models/table/table-rs.model.d.ts +7 -7
  136. package/lib/core/models/test/test.model.d.ts +219 -219
  137. package/lib/core/models/url/url.model.d.ts +8 -8
  138. package/lib/core/models/user/user-rq.model.d.ts +90 -90
  139. package/lib/core/models/user/user-rs.model.d.ts +35 -35
  140. package/lib/core/services/academic-service/academic.service.d.ts +20 -20
  141. package/lib/core/services/activity-service/activity.service.d.ts +25 -25
  142. package/lib/core/services/attendance-service/attendance.service.d.ts +22 -22
  143. package/lib/core/services/budget-service/budget-service.d.ts +23 -23
  144. package/lib/core/services/calendar-service/calendar.service.d.ts +23 -23
  145. package/lib/core/services/certificate-service/certificate.service.d.ts +13 -13
  146. package/lib/core/services/classroom-service/classroom-service.service.d.ts +15 -15
  147. package/lib/core/services/commercial-service/comercial.service.d.ts +19 -19
  148. package/lib/core/services/commercial-service/validators.d.ts +2 -2
  149. package/lib/core/services/copies.service.d.ts +7 -7
  150. package/lib/core/services/course-service/course-service.model.d.ts +23 -23
  151. package/lib/core/services/ekt-service/userekt.service.d.ts +13 -13
  152. package/lib/core/services/marketing-service/marketing-service.d.ts +19 -19
  153. package/lib/core/services/notes-service/notes.service.d.ts +18 -18
  154. package/lib/core/services/parameters-service/parameters.service.d.ts +49 -49
  155. package/lib/core/services/service-enviroments.d.ts +5 -5
  156. package/lib/core/services/storage-service/storage-service.d.ts +18 -18
  157. package/lib/core/services/student-service/student.service.d.ts +13 -13
  158. package/lib/core/services/switch-service/switch.service.d.ts +8 -8
  159. package/lib/core/services/test-service/test.service.d.ts +33 -34
  160. package/lib/core/services/user-service/user-service.d.ts +30 -30
  161. package/lib/core/utils/base-service/base.service.d.ts +23 -22
  162. package/lib/core/utils/copies.d.ts +1 -1
  163. package/lib/core/utils/route-service/route.service.d.ts +9 -9
  164. package/lib/design-system.module.d.ts +10 -10
  165. package/package.json +1 -1
  166. package/public-api.d.ts +76 -75
@@ -1,93 +1,93 @@
1
- import { Component, EventEmitter, Output } from '@angular/core';
2
- import { Validators } from '@angular/forms';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/forms";
5
- import * as i2 from "../../../core/utils/base-service/base.service";
6
- import * as i3 from "../../atoms/input/input.component";
7
- import * as i4 from "../../atoms/button/button.component";
8
- export class LoginFormComponent {
9
- constructor(fb, baseService) {
10
- this.baseService = baseService;
11
- this.isLogged = new EventEmitter();
12
- this.loginForm = fb.group({
13
- email: ['', [Validators.required]],
14
- password: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(15)]],
15
- });
16
- }
17
- login(data) {
18
- this.baseService.webLogin(data.controls['email'].value, data.controls['password'].value).then((isLogged) => {
19
- this.isLogged.emit(isLogged);
20
- });
21
- }
22
- }
23
- LoginFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoginFormComponent, deps: [{ token: i1.FormBuilder }, { token: i2.BaseService }], target: i0.ɵɵFactoryTarget.Component });
24
- LoginFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LoginFormComponent, selector: "ipt-login-form", outputs: { isLogged: "isLogged" }, ngImport: i0, template: `
25
- <div class="form-container">
26
-
27
- <h2 style="text-align: center;">IPT PLATFORM</h2>
28
- <hr>
29
-
30
- <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
31
- <ipt-input
32
- [inputType]="'text'"
33
- [placeHolder]="'Email'"
34
- [validateText]="'Debe ser @inglesparatodos.edu.co'"
35
- [control]="loginForm.controls['email']"
36
- ></ipt-input>
37
-
38
- <ipt-input
39
- [inputType]="'password'"
40
- [placeHolder]="'Password'"
41
- [control]="loginForm.controls['password']"
42
- ></ipt-input>
43
- </form>
44
-
45
- <div class="button-container">
46
- <ipt-button
47
- [label]="'Login'"
48
- [primary]="true"
49
- [isEnabled]="loginForm.valid"
50
- (onClick)="login(loginForm)"
51
- ></ipt-button>
52
- </div>
53
-
54
- </div>
55
- `, isInline: true, styles: [".form-container{display:grid;grid-template-columns:1fr;justify-items:center;width:350px}.with-background{background-color:#fff;border-radius:25px;box-shadow:#32325d40 0 50px 100px -20px,#0000004d 0 30px 60px -30px}h2{color:#1c77f7}hr{width:80%}form{margin-bottom:60px;display:grid;grid-template-columns:1fr;grid-gap:30px;gap:30px;width:100%}.button-container{margin-bottom:70px;align-items:center;display:flex;gap:50px}footer{background-color:#1c77f7;border-top-left-radius:25px;border-top-right-radius:25px;width:100%;height:100px;display:flex;align-items:center;justify-content:center}\n"], components: [{ type: i3.InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { type: i4.ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }], directives: [{ 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"] }] });
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoginFormComponent, decorators: [{
57
- type: Component,
58
- args: [{ selector: 'ipt-login-form', template: `
59
- <div class="form-container">
60
-
61
- <h2 style="text-align: center;">IPT PLATFORM</h2>
62
- <hr>
63
-
64
- <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
65
- <ipt-input
66
- [inputType]="'text'"
67
- [placeHolder]="'Email'"
68
- [validateText]="'Debe ser @inglesparatodos.edu.co'"
69
- [control]="loginForm.controls['email']"
70
- ></ipt-input>
71
-
72
- <ipt-input
73
- [inputType]="'password'"
74
- [placeHolder]="'Password'"
75
- [control]="loginForm.controls['password']"
76
- ></ipt-input>
77
- </form>
78
-
79
- <div class="button-container">
80
- <ipt-button
81
- [label]="'Login'"
82
- [primary]="true"
83
- [isEnabled]="loginForm.valid"
84
- (onClick)="login(loginForm)"
85
- ></ipt-button>
86
- </div>
87
-
88
- </div>
89
- `, styles: [".form-container{display:grid;grid-template-columns:1fr;justify-items:center;width:350px}.with-background{background-color:#fff;border-radius:25px;box-shadow:#32325d40 0 50px 100px -20px,#0000004d 0 30px 60px -30px}h2{color:#1c77f7}hr{width:80%}form{margin-bottom:60px;display:grid;grid-template-columns:1fr;grid-gap:30px;gap:30px;width:100%}.button-container{margin-bottom:70px;align-items:center;display:flex;gap:50px}footer{background-color:#1c77f7;border-top-left-radius:25px;border-top-right-radius:25px;width:100%;height:100px;display:flex;align-items:center;justify-content:center}\n"] }]
90
- }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.BaseService }]; }, propDecorators: { isLogged: [{
91
- type: Output
92
- }] } });
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9sb2dpbi1mb3JtL2xvZ2luLWZvcm0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFpQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBd0NwRSxNQUFNLE9BQU8sa0JBQWtCO0lBTTdCLFlBQ0UsRUFBZSxFQUNQLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBTnhCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBUS9DLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEMsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUN4RixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLElBQWU7UUFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN6RyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OytHQXBCVSxrQkFBa0I7bUdBQWxCLGtCQUFrQix5RkFuQ25COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JUOzJGQUlVLGtCQUFrQjtrQkFyQzlCLFNBQVM7K0JBQ0UsZ0JBQWdCLFlBQ2hCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JUOzRIQU1TLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEJhc2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS91dGlscy9iYXNlLXNlcnZpY2UvYmFzZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaXB0LWxvZ2luLWZvcm0nLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jb250YWluZXJcIj5cclxuXHJcbiAgICAgIDxoMiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj5JUFQgUExBVEZPUk08L2gyPlxyXG4gICAgICA8aHI+XHJcblxyXG4gICAgICA8Zm9ybSAobmdTdWJtaXQpPVwibG9naW4obG9naW5Gb3JtKVwiIFtmb3JtR3JvdXBdPVwibG9naW5Gb3JtXCI+XHJcbiAgICAgICAgPGlwdC1pbnB1dFxyXG4gICAgICAgICAgW2lucHV0VHlwZV09XCIndGV4dCdcIlxyXG4gICAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidFbWFpbCdcIlxyXG4gICAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRGViZSBzZXIgQGluZ2xlc3BhcmF0b2Rvcy5lZHUuY28nXCJcclxuICAgICAgICAgIFtjb250cm9sXT1cImxvZ2luRm9ybS5jb250cm9sc1snZW1haWwnXVwiXHJcbiAgICAgICAgPjwvaXB0LWlucHV0PlxyXG5cclxuICAgICAgICA8aXB0LWlucHV0XHJcbiAgICAgICAgICBbaW5wdXRUeXBlXT1cIidwYXNzd29yZCdcIlxyXG4gICAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidQYXNzd29yZCdcIlxyXG4gICAgICAgICAgW2NvbnRyb2xdPVwibG9naW5Gb3JtLmNvbnRyb2xzWydwYXNzd29yZCddXCJcclxuICAgICAgICA+PC9pcHQtaW5wdXQ+XHJcbiAgICAgIDwvZm9ybT5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGlwdC1idXR0b25cclxuICAgICAgICAgIFtsYWJlbF09XCInTG9naW4nXCJcclxuICAgICAgICAgIFtwcmltYXJ5XT1cInRydWVcIlxyXG4gICAgICAgICAgW2lzRW5hYmxlZF09XCJsb2dpbkZvcm0udmFsaWRcIlxyXG4gICAgICAgICAgKG9uQ2xpY2spPVwibG9naW4obG9naW5Gb3JtKVwiXHJcbiAgICAgICAgPjwvaXB0LWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgYCxcclxuICBzdHlsZVVybHM6IFsnLi9sb2dpbi1mb3JtLmNzcyddXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgTG9naW5Gb3JtQ29tcG9uZW50IHtcclxuXHJcbiAgQE91dHB1dCgpIGlzTG9nZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBsb2dpbkZvcm0hOiBGb3JtR3JvdXA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBiYXNlU2VydmljZTogQmFzZVNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICB0aGlzLmxvZ2luRm9ybSA9IGZiLmdyb3VwKHtcclxuICAgICAgZW1haWw6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgcGFzc3dvcmQ6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDMpLFZhbGlkYXRvcnMubWF4TGVuZ3RoKDE1KV1dLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBsb2dpbihkYXRhOiBGb3JtR3JvdXApIHtcclxuICAgIHRoaXMuYmFzZVNlcnZpY2Uud2ViTG9naW4oZGF0YS5jb250cm9sc1snZW1haWwnXS52YWx1ZSwgZGF0YS5jb250cm9sc1sncGFzc3dvcmQnXS52YWx1ZSkudGhlbigoaXNMb2dnZWQpID0+e1xyXG4gICAgICB0aGlzLmlzTG9nZ2VkLmVtaXQoaXNMb2dnZWQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
1
+ import { Component, EventEmitter, Output } from '@angular/core';
2
+ import { Validators } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/forms";
5
+ import * as i2 from "../../../core/utils/base-service/base.service";
6
+ import * as i3 from "../../atoms/input/input.component";
7
+ import * as i4 from "../../atoms/button/button.component";
8
+ export class LoginFormComponent {
9
+ constructor(fb, baseService) {
10
+ this.baseService = baseService;
11
+ this.isLogged = new EventEmitter();
12
+ this.loginForm = fb.group({
13
+ email: ['', [Validators.required]],
14
+ password: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(15)]],
15
+ });
16
+ }
17
+ login(data) {
18
+ this.baseService.webLogin(data.controls['email'].value, data.controls['password'].value).then((isLogged) => {
19
+ this.isLogged.emit(isLogged);
20
+ });
21
+ }
22
+ }
23
+ LoginFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoginFormComponent, deps: [{ token: i1.FormBuilder }, { token: i2.BaseService }], target: i0.ɵɵFactoryTarget.Component });
24
+ LoginFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LoginFormComponent, selector: "ipt-login-form", outputs: { isLogged: "isLogged" }, ngImport: i0, template: `
25
+ <div class="form-container">
26
+
27
+ <h2 style="text-align: center;">IPT PLATFORM</h2>
28
+ <hr>
29
+
30
+ <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
31
+ <ipt-input
32
+ [inputType]="'text'"
33
+ [placeHolder]="'Email'"
34
+ [validateText]="'Debe ser @inglesparatodos.edu.co'"
35
+ [control]="loginForm.controls['email']"
36
+ ></ipt-input>
37
+
38
+ <ipt-input
39
+ [inputType]="'password'"
40
+ [placeHolder]="'Password'"
41
+ [control]="loginForm.controls['password']"
42
+ ></ipt-input>
43
+ </form>
44
+
45
+ <div class="button-container">
46
+ <ipt-button
47
+ [label]="'Login'"
48
+ [primary]="true"
49
+ [isEnabled]="loginForm.valid"
50
+ (onClick)="login(loginForm)"
51
+ ></ipt-button>
52
+ </div>
53
+
54
+ </div>
55
+ `, isInline: true, styles: [".form-container{display:grid;grid-template-columns:1fr;justify-items:center;width:350px}.with-background{background-color:#fff;border-radius:25px;box-shadow:#32325d40 0 50px 100px -20px,#0000004d 0 30px 60px -30px}h2{color:#1c77f7}hr{width:80%}form{margin-bottom:60px;display:grid;grid-template-columns:1fr;grid-gap:30px;gap:30px;width:100%}.button-container{margin-bottom:70px;align-items:center;display:flex;gap:50px}footer{background-color:#1c77f7;border-top-left-radius:25px;border-top-right-radius:25px;width:100%;height:100px;display:flex;align-items:center;justify-content:center}\n"], components: [{ type: i3.InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { type: i4.ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }], directives: [{ 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"] }] });
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoginFormComponent, decorators: [{
57
+ type: Component,
58
+ args: [{ selector: 'ipt-login-form', template: `
59
+ <div class="form-container">
60
+
61
+ <h2 style="text-align: center;">IPT PLATFORM</h2>
62
+ <hr>
63
+
64
+ <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
65
+ <ipt-input
66
+ [inputType]="'text'"
67
+ [placeHolder]="'Email'"
68
+ [validateText]="'Debe ser @inglesparatodos.edu.co'"
69
+ [control]="loginForm.controls['email']"
70
+ ></ipt-input>
71
+
72
+ <ipt-input
73
+ [inputType]="'password'"
74
+ [placeHolder]="'Password'"
75
+ [control]="loginForm.controls['password']"
76
+ ></ipt-input>
77
+ </form>
78
+
79
+ <div class="button-container">
80
+ <ipt-button
81
+ [label]="'Login'"
82
+ [primary]="true"
83
+ [isEnabled]="loginForm.valid"
84
+ (onClick)="login(loginForm)"
85
+ ></ipt-button>
86
+ </div>
87
+
88
+ </div>
89
+ `, styles: [".form-container{display:grid;grid-template-columns:1fr;justify-items:center;width:350px}.with-background{background-color:#fff;border-radius:25px;box-shadow:#32325d40 0 50px 100px -20px,#0000004d 0 30px 60px -30px}h2{color:#1c77f7}hr{width:80%}form{margin-bottom:60px;display:grid;grid-template-columns:1fr;grid-gap:30px;gap:30px;width:100%}.button-container{margin-bottom:70px;align-items:center;display:flex;gap:50px}footer{background-color:#1c77f7;border-top-left-radius:25px;border-top-right-radius:25px;width:100%;height:100px;display:flex;align-items:center;justify-content:center}\n"] }]
90
+ }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.BaseService }]; }, propDecorators: { isLogged: [{
91
+ type: Output
92
+ }] } });
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9sb2dpbi1mb3JtL2xvZ2luLWZvcm0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFpQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBd0NwRSxNQUFNLE9BQU8sa0JBQWtCO0lBTTdCLFlBQ0UsRUFBZSxFQUNQLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBTnhCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBUS9DLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEMsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUN4RixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLElBQWU7UUFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN6RyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OytHQXBCVSxrQkFBa0I7bUdBQWxCLGtCQUFrQix5RkFuQ25COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JUOzJGQUlVLGtCQUFrQjtrQkFyQzlCLFNBQVM7K0JBQ0UsZ0JBQWdCLFlBQ2hCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JUOzRIQU1TLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQmFzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3V0aWxzL2Jhc2Utc2VydmljZS9iYXNlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpcHQtbG9naW4tZm9ybScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImZvcm0tY29udGFpbmVyXCI+XG5cbiAgICAgIDxoMiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj5JUFQgUExBVEZPUk08L2gyPlxuICAgICAgPGhyPlxuXG4gICAgICA8Zm9ybSAobmdTdWJtaXQpPVwibG9naW4obG9naW5Gb3JtKVwiIFtmb3JtR3JvdXBdPVwibG9naW5Gb3JtXCI+XG4gICAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXG4gICAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidFbWFpbCdcIlxuICAgICAgICAgIFt2YWxpZGF0ZVRleHRdPVwiJ0RlYmUgc2VyIEBpbmdsZXNwYXJhdG9kb3MuZWR1LmNvJ1wiXG4gICAgICAgICAgW2NvbnRyb2xdPVwibG9naW5Gb3JtLmNvbnRyb2xzWydlbWFpbCddXCJcbiAgICAgICAgPjwvaXB0LWlucHV0PlxuXG4gICAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgICBbaW5wdXRUeXBlXT1cIidwYXNzd29yZCdcIlxuICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInUGFzc3dvcmQnXCJcbiAgICAgICAgICBbY29udHJvbF09XCJsb2dpbkZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ11cIlxuICAgICAgICA+PC9pcHQtaW5wdXQ+XG4gICAgICA8L2Zvcm0+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tY29udGFpbmVyXCI+XG4gICAgICAgIDxpcHQtYnV0dG9uXG4gICAgICAgICAgW2xhYmVsXT1cIidMb2dpbidcIlxuICAgICAgICAgIFtwcmltYXJ5XT1cInRydWVcIlxuICAgICAgICAgIFtpc0VuYWJsZWRdPVwibG9naW5Gb3JtLnZhbGlkXCJcbiAgICAgICAgICAob25DbGljayk9XCJsb2dpbihsb2dpbkZvcm0pXCJcbiAgICAgICAgPjwvaXB0LWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL2xvZ2luLWZvcm0uY3NzJ11cbn0pXG5cbmV4cG9ydCBjbGFzcyBMb2dpbkZvcm1Db21wb25lbnQge1xuXG4gIEBPdXRwdXQoKSBpc0xvZ2dlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBsb2dpbkZvcm0hOiBGb3JtR3JvdXA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgYmFzZVNlcnZpY2U6IEJhc2VTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLmxvZ2luRm9ybSA9IGZiLmdyb3VwKHtcbiAgICAgIGVtYWlsOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICBwYXNzd29yZDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoMyksVmFsaWRhdG9ycy5tYXhMZW5ndGgoMTUpXV0sXG4gICAgfSk7XG4gIH1cblxuICBsb2dpbihkYXRhOiBGb3JtR3JvdXApIHtcbiAgICB0aGlzLmJhc2VTZXJ2aWNlLndlYkxvZ2luKGRhdGEuY29udHJvbHNbJ2VtYWlsJ10udmFsdWUsIGRhdGEuY29udHJvbHNbJ3Bhc3N3b3JkJ10udmFsdWUpLnRoZW4oKGlzTG9nZ2VkKSA9PntcbiAgICAgIHRoaXMuaXNMb2dnZWQuZW1pdChpc0xvZ2dlZCk7XG4gICAgfSk7XG4gIH1cblxufVxuIl19
@@ -1,19 +1,19 @@
1
- import { NgModule } from '@angular/core';
2
- import { MatSidenavModule } from '@angular/material/sidenav';
3
- import { MatToolbarModule } from '@angular/material/toolbar';
4
- import { MatIconModule } from '@angular/material/icon';
5
- import { MatListModule } from '@angular/material/list';
6
- import { MatButtonModule } from '@angular/material/button';
7
- import * as i0 from "@angular/core";
8
- export class MaterialModule {
9
- }
10
- MaterialModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- MaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
12
- MaterialModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, imports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, decorators: [{
14
- type: NgModule,
15
- args: [{
16
- exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule],
17
- }]
18
- }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvbWF0ZXJpYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBSzNELE1BQU0sT0FBTyxjQUFjOzsyR0FBZCxjQUFjOzRHQUFkLGNBQWMsWUFGZixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLGVBQWU7NEdBRWhGLGNBQWMsWUFGZixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLGVBQWU7MkZBRWhGLGNBQWM7a0JBSDFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUM7aUJBQzdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IE1hdFNpZGVuYXZNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcclxuaW1wb3J0IHsgTWF0VG9vbGJhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZXhwb3J0czogW01hdFNpZGVuYXZNb2R1bGUsIE1hdFRvb2xiYXJNb2R1bGUsIE1hdEljb25Nb2R1bGUsIE1hdExpc3RNb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRlcmlhbE1vZHVsZSB7fVxyXG4iXX0=
1
+ import { NgModule } from '@angular/core';
2
+ import { MatSidenavModule } from '@angular/material/sidenav';
3
+ import { MatToolbarModule } from '@angular/material/toolbar';
4
+ import { MatIconModule } from '@angular/material/icon';
5
+ import { MatListModule } from '@angular/material/list';
6
+ import { MatButtonModule } from '@angular/material/button';
7
+ import * as i0 from "@angular/core";
8
+ export class MaterialModule {
9
+ }
10
+ MaterialModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ MaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
12
+ MaterialModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, imports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, decorators: [{
14
+ type: NgModule,
15
+ args: [{
16
+ exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule],
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvbWF0ZXJpYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBSzNELE1BQU0sT0FBTyxjQUFjOzsyR0FBZCxjQUFjOzRHQUFkLGNBQWMsWUFGZixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLGVBQWU7NEdBRWhGLGNBQWMsWUFGZixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLGVBQWU7MkZBRWhGLGNBQWM7a0JBSDFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUM7aUJBQzdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTWF0U2lkZW5hdk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuaW1wb3J0IHsgTWF0VG9vbGJhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcblxuQE5nTW9kdWxlKHtcbiAgZXhwb3J0czogW01hdFNpZGVuYXZNb2R1bGUsIE1hdFRvb2xiYXJNb2R1bGUsIE1hdEljb25Nb2R1bGUsIE1hdExpc3RNb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIE1hdGVyaWFsTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,299 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../atoms/input/input.component";
4
+ import * as i2 from "@angular/common";
5
+ export class QuestionTypeComponent {
6
+ ngOnChanges(changes) {
7
+ if (changes['questionType']) {
8
+ console.log(this.questionType);
9
+ console.log(this.formGruoup);
10
+ }
11
+ }
12
+ }
13
+ QuestionTypeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: QuestionTypeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
+ QuestionTypeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: QuestionTypeComponent, selector: "ipt-question-types", inputs: { questionType: "questionType", formGruoup: "formGruoup" }, usesOnChanges: true, ngImport: i0, template: `
15
+ <div
16
+ *ngIf="
17
+ this.questionType === 'True or False' ||
18
+ this.questionType === 'Correct or Incorrect'
19
+ "
20
+ class="sectionABCD"
21
+ >
22
+ <fieldset disabled="disabled">
23
+ <ipt-input
24
+ [control]="formGruoup.controls['answer1']"
25
+ [inputType]="'text'"
26
+ [placeHolder]="
27
+ this.questionType === 'True or False' ? 'True' : 'Correct'
28
+ "
29
+ [validateText]="'Este campo es requerido'"
30
+ >
31
+ </ipt-input>
32
+ </fieldset>
33
+ <ipt-input
34
+ [control]="formGruoup.controls['value1']"
35
+ [inputType]="'number'"
36
+ [placeHolder]="'Valor *'"
37
+ [validateText]="'Debe ser 0 o 1'"
38
+ >
39
+ </ipt-input>
40
+ <fieldset disabled="disabled">
41
+ <ipt-input
42
+ [control]="formGruoup.controls['answer2']"
43
+ [inputType]="'text'"
44
+ [placeHolder]="
45
+ this.questionType === 'True or False' ? 'False' : 'Incorrect'
46
+ "
47
+ [validateText]="'Este campo es requerido'"
48
+ >
49
+ </ipt-input>
50
+ </fieldset>
51
+ <ipt-input
52
+ [control]="formGruoup.controls['value2']"
53
+ [inputType]="'number'"
54
+ [placeHolder]="'Valor *'"
55
+ [validateText]="'Debe ser 0 o 1'"
56
+ >
57
+ </ipt-input>
58
+ </div>
59
+
60
+ <div
61
+ *ngIf="
62
+ this.questionType === 'Relationship' ||
63
+ this.questionType === 'Complete' ||
64
+ this.questionType === 'Conversation'
65
+ "
66
+ class="sectionABCD"
67
+ >
68
+ <ipt-input
69
+ [control]="formGruoup.controls['answer1']"
70
+ [inputType]="'text'"
71
+ [placeHolder]="'Ingrese la opción'"
72
+ [validateText]="'Este campo es requerido'"
73
+ >
74
+ </ipt-input>
75
+ <ipt-input
76
+ [control]="formGruoup.controls['value1']"
77
+ [inputType]="'number'"
78
+ [placeHolder]="'Valor *'"
79
+ [validateText]="'Debe ser 0 o 1'"
80
+ >
81
+ </ipt-input>
82
+ </div>
83
+
84
+ <div
85
+ *ngIf="
86
+ this.questionType === 'A, B, C' || this.questionType === 'A, B, C, D'
87
+ "
88
+ class="sectionABCD"
89
+ >
90
+ <ipt-input
91
+ [control]="formGruoup.controls['answer1']"
92
+ [inputType]="'text'"
93
+ [placeHolder]="'Opción A *'"
94
+ [validateText]="'Este campo es requerido'"
95
+ >
96
+ </ipt-input>
97
+ <ipt-input
98
+ [control]="formGruoup.controls['value1']"
99
+ [inputType]="'number'"
100
+ [placeHolder]="'Valor *'"
101
+ [validateText]="'Debe ser 0 o 1'"
102
+ >
103
+ </ipt-input>
104
+
105
+ <ipt-input
106
+ [control]="formGruoup.controls['answer2']"
107
+ [inputType]="'text'"
108
+ [placeHolder]="'Opción B *'"
109
+ [validateText]="'Este campo es requerido'"
110
+ >
111
+ </ipt-input>
112
+ <ipt-input
113
+ [control]="formGruoup.controls['value2']"
114
+ [inputType]="'number'"
115
+ [placeHolder]="'Valor *'"
116
+ [validateText]="'Debe ser 0 o 1'"
117
+ >
118
+ </ipt-input>
119
+
120
+ <ipt-input
121
+ [control]="formGruoup.controls['answer3']"
122
+ [inputType]="'text'"
123
+ [placeHolder]="'Opción C *'"
124
+ [validateText]="'Este campo es requerido'"
125
+ >
126
+ </ipt-input>
127
+ <ipt-input
128
+ [control]="formGruoup.controls['value3']"
129
+ [inputType]="'number'"
130
+ [placeHolder]="'Valor *'"
131
+ [validateText]="'Debe ser 0 o 1'"
132
+ >
133
+ </ipt-input>
134
+
135
+ <ipt-input
136
+ *ngIf="this.questionType === 'A, B, C, D'"
137
+ [control]="formGruoup.controls['answer4']"
138
+ [inputType]="'text'"
139
+ [placeHolder]="'Opción D *'"
140
+ [validateText]="'Este campo es requerido'"
141
+ >
142
+ </ipt-input>
143
+ <ipt-input
144
+ *ngIf="this.questionType === 'A, B, C, D'"
145
+ [control]="formGruoup.controls['value4']"
146
+ [inputType]="'number'"
147
+ [placeHolder]="'Valor *'"
148
+ [validateText]="'Debe ser 0 o 1'"
149
+ >
150
+ </ipt-input>
151
+ </div>
152
+ `, isInline: true, styles: ["form{display:grid;grid-template-columns:1fr}.sectionABCD{display:grid;grid-template-columns:12fr 0fr;grid-gap:0px 10px;gap:0px 10px}fieldset{background:transparent;border:none}\n"], components: [{ type: i1.InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
153
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: QuestionTypeComponent, decorators: [{
154
+ type: Component,
155
+ args: [{ selector: 'ipt-question-types', template: `
156
+ <div
157
+ *ngIf="
158
+ this.questionType === 'True or False' ||
159
+ this.questionType === 'Correct or Incorrect'
160
+ "
161
+ class="sectionABCD"
162
+ >
163
+ <fieldset disabled="disabled">
164
+ <ipt-input
165
+ [control]="formGruoup.controls['answer1']"
166
+ [inputType]="'text'"
167
+ [placeHolder]="
168
+ this.questionType === 'True or False' ? 'True' : 'Correct'
169
+ "
170
+ [validateText]="'Este campo es requerido'"
171
+ >
172
+ </ipt-input>
173
+ </fieldset>
174
+ <ipt-input
175
+ [control]="formGruoup.controls['value1']"
176
+ [inputType]="'number'"
177
+ [placeHolder]="'Valor *'"
178
+ [validateText]="'Debe ser 0 o 1'"
179
+ >
180
+ </ipt-input>
181
+ <fieldset disabled="disabled">
182
+ <ipt-input
183
+ [control]="formGruoup.controls['answer2']"
184
+ [inputType]="'text'"
185
+ [placeHolder]="
186
+ this.questionType === 'True or False' ? 'False' : 'Incorrect'
187
+ "
188
+ [validateText]="'Este campo es requerido'"
189
+ >
190
+ </ipt-input>
191
+ </fieldset>
192
+ <ipt-input
193
+ [control]="formGruoup.controls['value2']"
194
+ [inputType]="'number'"
195
+ [placeHolder]="'Valor *'"
196
+ [validateText]="'Debe ser 0 o 1'"
197
+ >
198
+ </ipt-input>
199
+ </div>
200
+
201
+ <div
202
+ *ngIf="
203
+ this.questionType === 'Relationship' ||
204
+ this.questionType === 'Complete' ||
205
+ this.questionType === 'Conversation'
206
+ "
207
+ class="sectionABCD"
208
+ >
209
+ <ipt-input
210
+ [control]="formGruoup.controls['answer1']"
211
+ [inputType]="'text'"
212
+ [placeHolder]="'Ingrese la opción'"
213
+ [validateText]="'Este campo es requerido'"
214
+ >
215
+ </ipt-input>
216
+ <ipt-input
217
+ [control]="formGruoup.controls['value1']"
218
+ [inputType]="'number'"
219
+ [placeHolder]="'Valor *'"
220
+ [validateText]="'Debe ser 0 o 1'"
221
+ >
222
+ </ipt-input>
223
+ </div>
224
+
225
+ <div
226
+ *ngIf="
227
+ this.questionType === 'A, B, C' || this.questionType === 'A, B, C, D'
228
+ "
229
+ class="sectionABCD"
230
+ >
231
+ <ipt-input
232
+ [control]="formGruoup.controls['answer1']"
233
+ [inputType]="'text'"
234
+ [placeHolder]="'Opción A *'"
235
+ [validateText]="'Este campo es requerido'"
236
+ >
237
+ </ipt-input>
238
+ <ipt-input
239
+ [control]="formGruoup.controls['value1']"
240
+ [inputType]="'number'"
241
+ [placeHolder]="'Valor *'"
242
+ [validateText]="'Debe ser 0 o 1'"
243
+ >
244
+ </ipt-input>
245
+
246
+ <ipt-input
247
+ [control]="formGruoup.controls['answer2']"
248
+ [inputType]="'text'"
249
+ [placeHolder]="'Opción B *'"
250
+ [validateText]="'Este campo es requerido'"
251
+ >
252
+ </ipt-input>
253
+ <ipt-input
254
+ [control]="formGruoup.controls['value2']"
255
+ [inputType]="'number'"
256
+ [placeHolder]="'Valor *'"
257
+ [validateText]="'Debe ser 0 o 1'"
258
+ >
259
+ </ipt-input>
260
+
261
+ <ipt-input
262
+ [control]="formGruoup.controls['answer3']"
263
+ [inputType]="'text'"
264
+ [placeHolder]="'Opción C *'"
265
+ [validateText]="'Este campo es requerido'"
266
+ >
267
+ </ipt-input>
268
+ <ipt-input
269
+ [control]="formGruoup.controls['value3']"
270
+ [inputType]="'number'"
271
+ [placeHolder]="'Valor *'"
272
+ [validateText]="'Debe ser 0 o 1'"
273
+ >
274
+ </ipt-input>
275
+
276
+ <ipt-input
277
+ *ngIf="this.questionType === 'A, B, C, D'"
278
+ [control]="formGruoup.controls['answer4']"
279
+ [inputType]="'text'"
280
+ [placeHolder]="'Opción D *'"
281
+ [validateText]="'Este campo es requerido'"
282
+ >
283
+ </ipt-input>
284
+ <ipt-input
285
+ *ngIf="this.questionType === 'A, B, C, D'"
286
+ [control]="formGruoup.controls['value4']"
287
+ [inputType]="'number'"
288
+ [placeHolder]="'Valor *'"
289
+ [validateText]="'Debe ser 0 o 1'"
290
+ >
291
+ </ipt-input>
292
+ </div>
293
+ `, styles: ["form{display:grid;grid-template-columns:1fr}.sectionABCD{display:grid;grid-template-columns:12fr 0fr;grid-gap:0px 10px;gap:0px 10px}fieldset{background:transparent;border:none}\n"] }]
294
+ }], propDecorators: { questionType: [{
295
+ type: Input
296
+ }], formGruoup: [{
297
+ type: Input
298
+ }] } });
299
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1xdWVzdGlvbi10eXBlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvcXVlc3Rpb24tdHlwZS9lZGl0LXF1ZXN0aW9uLXR5cGVzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBNEIsTUFBTSxlQUFlLENBQUM7Ozs7QUFrSjNFLE1BQU0sT0FBTyxxQkFBcUI7SUFJaEMsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQzNCLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQy9CLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQzlCO0lBQ0gsQ0FBQzs7a0hBVFUscUJBQXFCO3NHQUFyQixxQkFBcUIsbUpBN0l0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMElUOzJGQUdVLHFCQUFxQjtrQkEvSWpDLFNBQVM7K0JBQ0Usb0JBQW9CLFlBQ3BCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwSVQ7OEJBSVEsWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lwdC1xdWVzdGlvbi10eXBlcycsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJcbiAgICAgICAgdGhpcy5xdWVzdGlvblR5cGUgPT09ICdUcnVlIG9yIEZhbHNlJyB8fFxuICAgICAgICB0aGlzLnF1ZXN0aW9uVHlwZSA9PT0gJ0NvcnJlY3Qgb3IgSW5jb3JyZWN0J1xuICAgICAgXCJcbiAgICAgIGNsYXNzPVwic2VjdGlvbkFCQ0RcIlxuICAgID5cbiAgICAgIDxmaWVsZHNldCBkaXNhYmxlZD1cImRpc2FibGVkXCI+XG4gICAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgICBbY29udHJvbF09XCJmb3JtR3J1b3VwLmNvbnRyb2xzWydhbnN3ZXIxJ11cIlxuICAgICAgICAgIFtpbnB1dFR5cGVdPVwiJ3RleHQnXCJcbiAgICAgICAgICBbcGxhY2VIb2xkZXJdPVwiXG4gICAgICAgICAgICB0aGlzLnF1ZXN0aW9uVHlwZSA9PT0gJ1RydWUgb3IgRmFsc2UnID8gJ1RydWUnIDogJ0NvcnJlY3QnXG4gICAgICAgICAgXCJcbiAgICAgICAgICBbdmFsaWRhdGVUZXh0XT1cIidFc3RlIGNhbXBvIGVzIHJlcXVlcmlkbydcIlxuICAgICAgICA+XG4gICAgICAgIDwvaXB0LWlucHV0PlxuICAgICAgPC9maWVsZHNldD5cbiAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgW2NvbnRyb2xdPVwiZm9ybUdydW91cC5jb250cm9sc1sndmFsdWUxJ11cIlxuICAgICAgICBbaW5wdXRUeXBlXT1cIidudW1iZXInXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidWYWxvciAqJ1wiXG4gICAgICAgIFt2YWxpZGF0ZVRleHRdPVwiJ0RlYmUgc2VyIDAgbyAxJ1wiXG4gICAgICA+XG4gICAgICA8L2lwdC1pbnB1dD5cbiAgICAgIDxmaWVsZHNldCBkaXNhYmxlZD1cImRpc2FibGVkXCI+XG4gICAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgICBbY29udHJvbF09XCJmb3JtR3J1b3VwLmNvbnRyb2xzWydhbnN3ZXIyJ11cIlxuICAgICAgICAgIFtpbnB1dFR5cGVdPVwiJ3RleHQnXCJcbiAgICAgICAgICBbcGxhY2VIb2xkZXJdPVwiXG4gICAgICAgICAgICB0aGlzLnF1ZXN0aW9uVHlwZSA9PT0gJ1RydWUgb3IgRmFsc2UnID8gJ0ZhbHNlJyA6ICdJbmNvcnJlY3QnXG4gICAgICAgICAgXCJcbiAgICAgICAgICBbdmFsaWRhdGVUZXh0XT1cIidFc3RlIGNhbXBvIGVzIHJlcXVlcmlkbydcIlxuICAgICAgICA+XG4gICAgICAgIDwvaXB0LWlucHV0PlxuICAgICAgPC9maWVsZHNldD5cbiAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgW2NvbnRyb2xdPVwiZm9ybUdydW91cC5jb250cm9sc1sndmFsdWUyJ11cIlxuICAgICAgICBbaW5wdXRUeXBlXT1cIidudW1iZXInXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidWYWxvciAqJ1wiXG4gICAgICAgIFt2YWxpZGF0ZVRleHRdPVwiJ0RlYmUgc2VyIDAgbyAxJ1wiXG4gICAgICA+XG4gICAgICA8L2lwdC1pbnB1dD5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiXG4gICAgICAgIHRoaXMucXVlc3Rpb25UeXBlID09PSAnUmVsYXRpb25zaGlwJyB8fFxuICAgICAgICB0aGlzLnF1ZXN0aW9uVHlwZSA9PT0gJ0NvbXBsZXRlJyB8fFxuICAgICAgICB0aGlzLnF1ZXN0aW9uVHlwZSA9PT0gJ0NvbnZlcnNhdGlvbidcbiAgICAgIFwiXG4gICAgICBjbGFzcz1cInNlY3Rpb25BQkNEXCJcbiAgICA+XG4gICAgICA8aXB0LWlucHV0XG4gICAgICAgIFtjb250cm9sXT1cImZvcm1HcnVvdXAuY29udHJvbHNbJ2Fuc3dlcjEnXVwiXG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ3RleHQnXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidJbmdyZXNlIGxhIG9wY2nDs24nXCJcbiAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRXN0ZSBjYW1wbyBlcyByZXF1ZXJpZG8nXCJcbiAgICAgID5cbiAgICAgIDwvaXB0LWlucHV0PlxuICAgICAgPGlwdC1pbnB1dFxuICAgICAgICBbY29udHJvbF09XCJmb3JtR3J1b3VwLmNvbnRyb2xzWyd2YWx1ZTEnXVwiXG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ251bWJlcidcIlxuICAgICAgICBbcGxhY2VIb2xkZXJdPVwiJ1ZhbG9yIConXCJcbiAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRGViZSBzZXIgMCBvIDEnXCJcbiAgICAgID5cbiAgICAgIDwvaXB0LWlucHV0PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJcbiAgICAgICAgdGhpcy5xdWVzdGlvblR5cGUgPT09ICdBLCBCLCBDJyB8fCB0aGlzLnF1ZXN0aW9uVHlwZSA9PT0gJ0EsIEIsIEMsIEQnXG4gICAgICBcIlxuICAgICAgY2xhc3M9XCJzZWN0aW9uQUJDRFwiXG4gICAgPlxuICAgICAgPGlwdC1pbnB1dFxuICAgICAgICBbY29udHJvbF09XCJmb3JtR3J1b3VwLmNvbnRyb2xzWydhbnN3ZXIxJ11cIlxuICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXG4gICAgICAgIFtwbGFjZUhvbGRlcl09XCInT3BjacOzbiBBIConXCJcbiAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRXN0ZSBjYW1wbyBlcyByZXF1ZXJpZG8nXCJcbiAgICAgID5cbiAgICAgIDwvaXB0LWlucHV0PlxuICAgICAgPGlwdC1pbnB1dFxuICAgICAgICBbY29udHJvbF09XCJmb3JtR3J1b3VwLmNvbnRyb2xzWyd2YWx1ZTEnXVwiXG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ251bWJlcidcIlxuICAgICAgICBbcGxhY2VIb2xkZXJdPVwiJ1ZhbG9yIConXCJcbiAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRGViZSBzZXIgMCBvIDEnXCJcbiAgICAgID5cbiAgICAgIDwvaXB0LWlucHV0PlxuXG4gICAgICA8aXB0LWlucHV0XG4gICAgICAgIFtjb250cm9sXT1cImZvcm1HcnVvdXAuY29udHJvbHNbJ2Fuc3dlcjInXVwiXG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ3RleHQnXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidPcGNpw7NuIEIgKidcIlxuICAgICAgICBbdmFsaWRhdGVUZXh0XT1cIidFc3RlIGNhbXBvIGVzIHJlcXVlcmlkbydcIlxuICAgICAgPlxuICAgICAgPC9pcHQtaW5wdXQ+XG4gICAgICA8aXB0LWlucHV0XG4gICAgICAgIFtjb250cm9sXT1cImZvcm1HcnVvdXAuY29udHJvbHNbJ3ZhbHVlMiddXCJcbiAgICAgICAgW2lucHV0VHlwZV09XCInbnVtYmVyJ1wiXG4gICAgICAgIFtwbGFjZUhvbGRlcl09XCInVmFsb3IgKidcIlxuICAgICAgICBbdmFsaWRhdGVUZXh0XT1cIidEZWJlIHNlciAwIG8gMSdcIlxuICAgICAgPlxuICAgICAgPC9pcHQtaW5wdXQ+XG5cbiAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgW2NvbnRyb2xdPVwiZm9ybUdydW91cC5jb250cm9sc1snYW5zd2VyMyddXCJcbiAgICAgICAgW2lucHV0VHlwZV09XCIndGV4dCdcIlxuICAgICAgICBbcGxhY2VIb2xkZXJdPVwiJ09wY2nDs24gQyAqJ1wiXG4gICAgICAgIFt2YWxpZGF0ZVRleHRdPVwiJ0VzdGUgY2FtcG8gZXMgcmVxdWVyaWRvJ1wiXG4gICAgICA+XG4gICAgICA8L2lwdC1pbnB1dD5cbiAgICAgIDxpcHQtaW5wdXRcbiAgICAgICAgW2NvbnRyb2xdPVwiZm9ybUdydW91cC5jb250cm9sc1sndmFsdWUzJ11cIlxuICAgICAgICBbaW5wdXRUeXBlXT1cIidudW1iZXInXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidWYWxvciAqJ1wiXG4gICAgICAgIFt2YWxpZGF0ZVRleHRdPVwiJ0RlYmUgc2VyIDAgbyAxJ1wiXG4gICAgICA+XG4gICAgICA8L2lwdC1pbnB1dD5cblxuICAgICAgPGlwdC1pbnB1dFxuICAgICAgICAqbmdJZj1cInRoaXMucXVlc3Rpb25UeXBlID09PSAnQSwgQiwgQywgRCdcIlxuICAgICAgICBbY29udHJvbF09XCJmb3JtR3J1b3VwLmNvbnRyb2xzWydhbnN3ZXI0J11cIlxuICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXG4gICAgICAgIFtwbGFjZUhvbGRlcl09XCInT3BjacOzbiBEIConXCJcbiAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRXN0ZSBjYW1wbyBlcyByZXF1ZXJpZG8nXCJcbiAgICAgID5cbiAgICAgIDwvaXB0LWlucHV0PlxuICAgICAgPGlwdC1pbnB1dFxuICAgICAgICAqbmdJZj1cInRoaXMucXVlc3Rpb25UeXBlID09PSAnQSwgQiwgQywgRCdcIlxuICAgICAgICBbY29udHJvbF09XCJmb3JtR3J1b3VwLmNvbnRyb2xzWyd2YWx1ZTQnXVwiXG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ251bWJlcidcIlxuICAgICAgICBbcGxhY2VIb2xkZXJdPVwiJ1ZhbG9yIConXCJcbiAgICAgICAgW3ZhbGlkYXRlVGV4dF09XCInRGViZSBzZXIgMCBvIDEnXCJcbiAgICAgID5cbiAgICAgIDwvaXB0LWlucHV0PlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9lZGl0LXF1ZXN0aW9uLXR5cGVzLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUXVlc3Rpb25UeXBlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgcXVlc3Rpb25UeXBlITogc3RyaW5nO1xuICBASW5wdXQoKSBmb3JtR3J1b3VwITogRm9ybUdyb3VwO1xuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1sncXVlc3Rpb25UeXBlJ10pIHtcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMucXVlc3Rpb25UeXBlKTtcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMuZm9ybUdydW91cCk7XG4gICAgfVxuICB9XG59XG4iXX0=