iptdevs-design-system 2.6.31 → 2.6.33

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 (112) hide show
  1. package/README.md +24 -24
  2. package/esm2020/iptdevs-design-system.mjs +4 -4
  3. package/esm2020/lib/components/atoms/aside-button/aside-button.component.mjs +50 -50
  4. package/esm2020/lib/components/atoms/button/button.component.mjs +64 -64
  5. package/esm2020/lib/components/atoms/checkbox/checkbox.component.mjs +47 -47
  6. package/esm2020/lib/components/atoms/datalist/datalist.component.mjs +94 -94
  7. package/esm2020/lib/components/atoms/input/input.component.mjs +145 -145
  8. package/esm2020/lib/components/atoms/level-button/level-button.component.mjs +64 -64
  9. package/esm2020/lib/components/atoms/level-text/level-text.component.mjs +19 -19
  10. package/esm2020/lib/components/atoms/loader/loader.component.mjs +48 -48
  11. package/esm2020/lib/components/atoms/radio/radio.component.mjs +47 -47
  12. package/esm2020/lib/components/atoms/select/select.component.mjs +92 -92
  13. package/esm2020/lib/components/atoms/text-link/text-link.component.mjs +39 -39
  14. package/esm2020/lib/components/components.module.mjs +118 -118
  15. package/esm2020/lib/components/forms/create-user-form/create-user-form.component.mjs +228 -228
  16. package/esm2020/lib/components/forms/login-form/login-form.component.mjs +93 -93
  17. package/esm2020/lib/components/material.module.mjs +19 -19
  18. package/esm2020/lib/components/molecules/sidenav/sidenav.component.mjs +146 -146
  19. package/esm2020/lib/core/core.module.mjs +49 -46
  20. package/esm2020/lib/core/models/activities/activities.interface.mjs +2 -2
  21. package/esm2020/lib/core/models/attendance/attendance.interface.mjs +2 -2
  22. package/esm2020/lib/core/models/budget/budget.model.mjs +2 -2
  23. package/esm2020/lib/core/models/calendar/calendar-rq.models.mjs +2 -2
  24. package/esm2020/lib/core/models/classroom/classroom-rq.model.mjs +2 -0
  25. package/esm2020/lib/core/models/cod/cod-rq.model.mjs +2 -2
  26. package/esm2020/lib/core/models/course/course-rq.model.mjs +2 -2
  27. package/esm2020/lib/core/models/cronogram/cronogram.models.mjs +2 -2
  28. package/esm2020/lib/core/models/marketing/marketing.model.mjs +2 -2
  29. package/esm2020/lib/core/models/notes/notes.interface.mjs +2 -2
  30. package/esm2020/lib/core/models/response/response.interface.mjs +2 -2
  31. package/esm2020/lib/core/models/session/session.model.mjs +3 -3
  32. package/esm2020/lib/core/models/student/student.interface.mjs +2 -2
  33. package/esm2020/lib/core/models/table/table-rs.model.mjs +2 -2
  34. package/esm2020/lib/core/models/test/test.model.mjs +2 -2
  35. package/esm2020/lib/core/models/url/url.model.mjs +2 -2
  36. package/esm2020/lib/core/models/user/user-rq.model.mjs +2 -2
  37. package/esm2020/lib/core/models/user/user-rs.model.mjs +5 -5
  38. package/esm2020/lib/core/services/attendance-service/attendance.service.mjs +64 -64
  39. package/esm2020/lib/core/services/budget-service/budget-service.mjs +41 -41
  40. package/esm2020/lib/core/services/calendar-service/calendar.service.mjs +39 -34
  41. package/esm2020/lib/core/services/classroom-service/classroom-service.service.mjs +31 -0
  42. package/esm2020/lib/core/services/course-service/course-service.model.mjs +75 -75
  43. package/esm2020/lib/core/services/marketing-service/marketing-service.mjs +57 -57
  44. package/esm2020/lib/core/services/notes-service/notes.service.mjs +50 -50
  45. package/esm2020/lib/core/services/parameters-service/parameters.service.mjs +114 -114
  46. package/esm2020/lib/core/services/storage-service/storage-service.mjs +50 -50
  47. package/esm2020/lib/core/services/student-service/student.service.mjs +30 -30
  48. package/esm2020/lib/core/services/switch-service/switch.service.mjs +16 -16
  49. package/esm2020/lib/core/services/test-service/test.service.mjs +136 -136
  50. package/esm2020/lib/core/services/user-service/user-service.mjs +84 -84
  51. package/esm2020/lib/core/utils/base-service/base.service.mjs +179 -153
  52. package/esm2020/lib/core/utils/route-service/route.service.mjs +18 -18
  53. package/esm2020/lib/design-system.module.mjs +36 -36
  54. package/esm2020/public-api.mjs +60 -58
  55. package/fesm2015/iptdevs-design-system.mjs +2171 -2112
  56. package/fesm2015/iptdevs-design-system.mjs.map +1 -1
  57. package/fesm2020/iptdevs-design-system.mjs +2168 -2109
  58. package/fesm2020/iptdevs-design-system.mjs.map +1 -1
  59. package/iptdevs-design-system.d.ts +5 -5
  60. package/lib/components/atoms/aside-button/aside-button.component.d.ts +11 -11
  61. package/lib/components/atoms/button/button.component.d.ts +13 -13
  62. package/lib/components/atoms/checkbox/checkbox.component.d.ts +11 -11
  63. package/lib/components/atoms/datalist/datalist.component.d.ts +20 -20
  64. package/lib/components/atoms/input/input.component.d.ts +26 -26
  65. package/lib/components/atoms/level-button/level-button.component.d.ts +11 -11
  66. package/lib/components/atoms/level-text/level-text.component.d.ts +7 -7
  67. package/lib/components/atoms/loader/loader.component.d.ts +7 -7
  68. package/lib/components/atoms/radio/radio.component.d.ts +11 -11
  69. package/lib/components/atoms/select/select.component.d.ts +24 -24
  70. package/lib/components/atoms/text-link/text-link.component.d.ts +12 -12
  71. package/lib/components/components.module.d.ts +24 -24
  72. package/lib/components/forms/create-user-form/create-user-form.component.d.ts +36 -36
  73. package/lib/components/forms/login-form/login-form.component.d.ts +13 -13
  74. package/lib/components/material.module.d.ts +11 -11
  75. package/lib/components/molecules/sidenav/sidenav.component.d.ts +22 -22
  76. package/lib/core/core.module.d.ts +6 -6
  77. package/lib/core/models/activities/activities.interface.d.ts +6 -6
  78. package/lib/core/models/attendance/attendance.interface.d.ts +62 -62
  79. package/lib/core/models/budget/budget.model.d.ts +69 -69
  80. package/lib/core/models/calendar/calendar-rq.models.d.ts +27 -27
  81. package/lib/core/models/classroom/classroom-rq.model.d.ts +4 -0
  82. package/lib/core/models/cod/cod-rq.model.d.ts +51 -51
  83. package/lib/core/models/course/course-rq.model.d.ts +86 -86
  84. package/lib/core/models/cronogram/cronogram.models.d.ts +95 -71
  85. package/lib/core/models/marketing/marketing.model.d.ts +104 -104
  86. package/lib/core/models/notes/notes.interface.d.ts +89 -89
  87. package/lib/core/models/response/response.interface.d.ts +10 -10
  88. package/lib/core/models/session/session.model.d.ts +5 -5
  89. package/lib/core/models/student/student.interface.d.ts +4 -4
  90. package/lib/core/models/table/table-rs.model.d.ts +7 -7
  91. package/lib/core/models/test/test.model.d.ts +219 -219
  92. package/lib/core/models/url/url.model.d.ts +8 -8
  93. package/lib/core/models/user/user-rq.model.d.ts +91 -91
  94. package/lib/core/models/user/user-rs.model.d.ts +35 -35
  95. package/lib/core/services/attendance-service/attendance.service.d.ts +22 -22
  96. package/lib/core/services/budget-service/budget-service.d.ts +16 -16
  97. package/lib/core/services/calendar-service/calendar.service.d.ts +18 -15
  98. package/lib/core/services/classroom-service/classroom-service.service.d.ts +14 -0
  99. package/lib/core/services/course-service/course-service.model.d.ts +24 -24
  100. package/lib/core/services/marketing-service/marketing-service.d.ts +20 -20
  101. package/lib/core/services/notes-service/notes.service.d.ts +19 -19
  102. package/lib/core/services/parameters-service/parameters.service.d.ts +34 -34
  103. package/lib/core/services/storage-service/storage-service.d.ts +18 -18
  104. package/lib/core/services/student-service/student.service.d.ts +14 -14
  105. package/lib/core/services/switch-service/switch.service.d.ts +8 -8
  106. package/lib/core/services/test-service/test.service.d.ts +35 -35
  107. package/lib/core/services/user-service/user-service.d.ts +26 -26
  108. package/lib/core/utils/base-service/base.service.d.ts +21 -18
  109. package/lib/core/utils/route-service/route.service.d.ts +9 -9
  110. package/lib/design-system.module.d.ts +9 -9
  111. package/package.json +1 -1
  112. package/public-api.d.ts +51 -49
@@ -20,2181 +20,2240 @@ import { MatIconModule } from '@angular/material/icon';
20
20
  import { MatButtonModule } from '@angular/material/button';
21
21
  import * as i1$3 from '@angular/router';
22
22
 
23
- class AsideButtonComponent {
24
- constructor() {
25
- this.isClicked = new EventEmitter();
26
- }
27
- clickAction() {
28
- this.isClicked.emit(true);
29
- }
30
- }
31
- AsideButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AsideButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
32
- AsideButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: AsideButtonComponent, selector: "ipt-aside-button", inputs: { icon: "icon", text: "text", buttonActive: "buttonActive" }, outputs: { isClicked: "isClicked" }, ngImport: i0, template: `
33
- <div [ngSwitch]="buttonActive">
34
- <a *ngSwitchCase="0" class="flex-item-menu__link" (click)="clickAction()">
35
- <img src="{{ icon }}" alt="icon_url" />
36
- <p>{{ text }}</p>
37
- </a>
38
-
39
- <a *ngSwitchCase="1" class="flex-item-menu__link flex-item-active" (click)="clickAction()">
40
- <img src="{{ icon }}" alt="icon_url" />
41
- <p>{{ text }}</p>
42
- </a>
43
- </div>
44
- `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}@media (min-width: 320px){.flex-item-menu__link{cursor:pointer;width:-webkit-fill-available;width:-moz-available;text-decoration:none;display:flex;justify-items:center;padding:.4rem 1rem;transition:all .3s ease 0s;border-radius:30px;margin:15px}.flex-item-menu__link img{cursor:pointer;width:1.4rem;height:1.4rem}.flex-item-menu__link p{cursor:pointer;display:inline;font-weight:500;font-family:Poppins,sans-serif;font-size:.8rem;padding:0 .8rem;margin:auto 0;color:#fff}a:hover,a:focus,.flex-item-menu__link:hover,.flex-item-menu__link p:focus{color:#fff;background-color:#ffffff4f;-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);box-shadow:#0006 0 30px 90px;border-radius:50px}.flex-item-img{width:2.5rem;height:2.5rem;padding:.4rem}.flex-item-active{box-shadow:#0006 0 30px 90px;background:transparent;border:1px solid white}}@media (min-width: 1024px){.flex-item-menu__link{padding:.4rem 1rem}.flex-item-menu__link:focus{border:1px solid white}.flex-item-menu__link img{cursor:pointer;width:1.6rem;height:1.6rem}.flex-item-menu__link p{font-size:1rem;color:#fff}a:hover,a:focus,.flex-item-menu__link:hover,.flex-item-menu__link p:focus{color:#fff;background-color:#ffffff4f;-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);box-shadow:#0006 0 30px 90px}.flex-item-img{width:2.5rem;height:2.5rem;padding:.4rem}}\n"], directives: [{ type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] });
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AsideButtonComponent, decorators: [{
46
- type: Component,
47
- args: [{ selector: 'ipt-aside-button', template: `
48
- <div [ngSwitch]="buttonActive">
49
- <a *ngSwitchCase="0" class="flex-item-menu__link" (click)="clickAction()">
50
- <img src="{{ icon }}" alt="icon_url" />
51
- <p>{{ text }}</p>
52
- </a>
53
-
54
- <a *ngSwitchCase="1" class="flex-item-menu__link flex-item-active" (click)="clickAction()">
55
- <img src="{{ icon }}" alt="icon_url" />
56
- <p>{{ text }}</p>
57
- </a>
58
- </div>
59
- `, styles: ["*{font-family:Poppins,sans-serif}@media (min-width: 320px){.flex-item-menu__link{cursor:pointer;width:-webkit-fill-available;width:-moz-available;text-decoration:none;display:flex;justify-items:center;padding:.4rem 1rem;transition:all .3s ease 0s;border-radius:30px;margin:15px}.flex-item-menu__link img{cursor:pointer;width:1.4rem;height:1.4rem}.flex-item-menu__link p{cursor:pointer;display:inline;font-weight:500;font-family:Poppins,sans-serif;font-size:.8rem;padding:0 .8rem;margin:auto 0;color:#fff}a:hover,a:focus,.flex-item-menu__link:hover,.flex-item-menu__link p:focus{color:#fff;background-color:#ffffff4f;-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);box-shadow:#0006 0 30px 90px;border-radius:50px}.flex-item-img{width:2.5rem;height:2.5rem;padding:.4rem}.flex-item-active{box-shadow:#0006 0 30px 90px;background:transparent;border:1px solid white}}@media (min-width: 1024px){.flex-item-menu__link{padding:.4rem 1rem}.flex-item-menu__link:focus{border:1px solid white}.flex-item-menu__link img{cursor:pointer;width:1.6rem;height:1.6rem}.flex-item-menu__link p{font-size:1rem;color:#fff}a:hover,a:focus,.flex-item-menu__link:hover,.flex-item-menu__link p:focus{color:#fff;background-color:#ffffff4f;-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);box-shadow:#0006 0 30px 90px}.flex-item-img{width:2.5rem;height:2.5rem;padding:.4rem}}\n"] }]
60
- }], propDecorators: { icon: [{
61
- type: Input
62
- }], text: [{
63
- type: Input
64
- }], buttonActive: [{
65
- type: Input
66
- }], isClicked: [{
67
- type: Output
23
+ class AsideButtonComponent {
24
+ constructor() {
25
+ this.isClicked = new EventEmitter();
26
+ }
27
+ clickAction() {
28
+ this.isClicked.emit(true);
29
+ }
30
+ }
31
+ AsideButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AsideButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
32
+ AsideButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: AsideButtonComponent, selector: "ipt-aside-button", inputs: { icon: "icon", text: "text", buttonActive: "buttonActive" }, outputs: { isClicked: "isClicked" }, ngImport: i0, template: `
33
+ <div [ngSwitch]="buttonActive">
34
+ <a *ngSwitchCase="0" class="flex-item-menu__link" (click)="clickAction()">
35
+ <img src="{{ icon }}" alt="icon_url" />
36
+ <p>{{ text }}</p>
37
+ </a>
38
+
39
+ <a *ngSwitchCase="1" class="flex-item-menu__link flex-item-active" (click)="clickAction()">
40
+ <img src="{{ icon }}" alt="icon_url" />
41
+ <p>{{ text }}</p>
42
+ </a>
43
+ </div>
44
+ `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}@media (min-width: 320px){.flex-item-menu__link{cursor:pointer;width:-webkit-fill-available;width:-moz-available;text-decoration:none;display:flex;justify-items:center;padding:.4rem 1rem;transition:all .3s ease 0s;border-radius:30px;margin:15px}.flex-item-menu__link img{cursor:pointer;width:1.4rem;height:1.4rem}.flex-item-menu__link p{cursor:pointer;display:inline;font-weight:500;font-family:Poppins,sans-serif;font-size:.8rem;padding:0 .8rem;margin:auto 0;color:#fff}a:hover,a:focus,.flex-item-menu__link:hover,.flex-item-menu__link p:focus{color:#fff;background-color:#ffffff4f;-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);box-shadow:#0006 0 30px 90px;border-radius:50px}.flex-item-img{width:2.5rem;height:2.5rem;padding:.4rem}.flex-item-active{box-shadow:#0006 0 30px 90px;background:transparent;border:1px solid white}}@media (min-width: 1024px){.flex-item-menu__link{padding:.4rem 1rem}.flex-item-menu__link:focus{border:1px solid white}.flex-item-menu__link img{cursor:pointer;width:1.6rem;height:1.6rem}.flex-item-menu__link p{font-size:1rem;color:#fff}a:hover,a:focus,.flex-item-menu__link:hover,.flex-item-menu__link p:focus{color:#fff;background-color:#ffffff4f;-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);box-shadow:#0006 0 30px 90px}.flex-item-img{width:2.5rem;height:2.5rem;padding:.4rem}}\n"], directives: [{ type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] });
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AsideButtonComponent, decorators: [{
46
+ type: Component,
47
+ args: [{ selector: 'ipt-aside-button', template: `
48
+ <div [ngSwitch]="buttonActive">
49
+ <a *ngSwitchCase="0" class="flex-item-menu__link" (click)="clickAction()">
50
+ <img src="{{ icon }}" alt="icon_url" />
51
+ <p>{{ text }}</p>
52
+ </a>
53
+
54
+ <a *ngSwitchCase="1" class="flex-item-menu__link flex-item-active" (click)="clickAction()">
55
+ <img src="{{ icon }}" alt="icon_url" />
56
+ <p>{{ text }}</p>
57
+ </a>
58
+ </div>
59
+ `, styles: ["*{font-family:Poppins,sans-serif}@media (min-width: 320px){.flex-item-menu__link{cursor:pointer;width:-webkit-fill-available;width:-moz-available;text-decoration:none;display:flex;justify-items:center;padding:.4rem 1rem;transition:all .3s ease 0s;border-radius:30px;margin:15px}.flex-item-menu__link img{cursor:pointer;width:1.4rem;height:1.4rem}.flex-item-menu__link p{cursor:pointer;display:inline;font-weight:500;font-family:Poppins,sans-serif;font-size:.8rem;padding:0 .8rem;margin:auto 0;color:#fff}a:hover,a:focus,.flex-item-menu__link:hover,.flex-item-menu__link p:focus{color:#fff;background-color:#ffffff4f;-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);box-shadow:#0006 0 30px 90px;border-radius:50px}.flex-item-img{width:2.5rem;height:2.5rem;padding:.4rem}.flex-item-active{box-shadow:#0006 0 30px 90px;background:transparent;border:1px solid white}}@media (min-width: 1024px){.flex-item-menu__link{padding:.4rem 1rem}.flex-item-menu__link:focus{border:1px solid white}.flex-item-menu__link img{cursor:pointer;width:1.6rem;height:1.6rem}.flex-item-menu__link p{font-size:1rem;color:#fff}a:hover,a:focus,.flex-item-menu__link:hover,.flex-item-menu__link p:focus{color:#fff;background-color:#ffffff4f;-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);box-shadow:#0006 0 30px 90px}.flex-item-img{width:2.5rem;height:2.5rem;padding:.4rem}}\n"] }]
60
+ }], propDecorators: { icon: [{
61
+ type: Input
62
+ }], text: [{
63
+ type: Input
64
+ }], buttonActive: [{
65
+ type: Input
66
+ }], isClicked: [{
67
+ type: Output
68
68
  }] } });
69
69
 
70
- class ButtonComponent {
71
- constructor() {
72
- this.primary = false;
73
- this.size = 'medium';
74
- this.label = 'Button';
75
- this.isEnabled = true;
76
- this.onClick = new EventEmitter();
77
- }
78
- get classes() {
79
- const mode = this.primary && this.isEnabled === true
80
- ? 'ipt-button--primary'
81
- : this.isEnabled === false ? 'ipt-button--primary-disabled'
82
- : 'ipt-button--secondary';
83
- return ['ipt-button', `ipt-button--${this.size}`, mode];
84
- }
85
- }
86
- ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
87
- ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: ButtonComponent, selector: "ipt-button", inputs: { primary: "primary", size: "size", label: "label", buttonType: "buttonType", isEnabled: "isEnabled" }, outputs: { onClick: "onClick" }, ngImport: i0, template: `<button *ngIf="isEnabled"
88
- type="{{ buttonType }}"
89
- (click)="onClick.emit($event)"
90
- [ngClass]="classes"
91
- >
92
- {{ label }}
93
- </button>
94
-
95
- <button *ngIf="!isEnabled"
96
- type="{{ buttonType }}"
97
- [ngClass]="classes"
98
- >
99
- {{ label }}
100
- </button>`, isInline: true, styles: [".ipt-button{font-family:Poppins,sans-serif;font-weight:700;border:0;border-radius:12px;cursor:pointer;display:inline-block;line-height:1;transition:.4s;width:100%;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.ipt-button:hover{box-shadow:0 10px 20px #1b1b1b80;transform:translateY(-3px)}.ipt-button:active{transform:scale(.99)}.ipt-button--primary{color:#fff;background-color:#1c77f7}.ipt-button--primary-disabled{color:gray;background-color:#fff;border:1px solid gray;box-shadow:none;cursor:not-allowed}.ipt-button--primary-disabled:hover{box-shadow:none;transform:translateY(0)}.ipt-button--secondary{color:#1c77f7;background-color:#fff;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.ipt-button--small{font-size:12px;padding:10px 16px}.ipt-button--medium{font-size:14px;padding:11px 20px}.ipt-button--large{font-size:16px;padding:12px 24px}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
101
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ButtonComponent, decorators: [{
102
- type: Component,
103
- args: [{ selector: 'ipt-button', template: `<button *ngIf="isEnabled"
104
- type="{{ buttonType }}"
105
- (click)="onClick.emit($event)"
106
- [ngClass]="classes"
107
- >
108
- {{ label }}
109
- </button>
110
-
111
- <button *ngIf="!isEnabled"
112
- type="{{ buttonType }}"
113
- [ngClass]="classes"
114
- >
115
- {{ label }}
116
- </button>`, styles: [".ipt-button{font-family:Poppins,sans-serif;font-weight:700;border:0;border-radius:12px;cursor:pointer;display:inline-block;line-height:1;transition:.4s;width:100%;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.ipt-button:hover{box-shadow:0 10px 20px #1b1b1b80;transform:translateY(-3px)}.ipt-button:active{transform:scale(.99)}.ipt-button--primary{color:#fff;background-color:#1c77f7}.ipt-button--primary-disabled{color:gray;background-color:#fff;border:1px solid gray;box-shadow:none;cursor:not-allowed}.ipt-button--primary-disabled:hover{box-shadow:none;transform:translateY(0)}.ipt-button--secondary{color:#1c77f7;background-color:#fff;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.ipt-button--small{font-size:12px;padding:10px 16px}.ipt-button--medium{font-size:14px;padding:11px 20px}.ipt-button--large{font-size:16px;padding:12px 24px}\n"] }]
117
- }], propDecorators: { primary: [{
118
- type: Input
119
- }], size: [{
120
- type: Input
121
- }], label: [{
122
- type: Input
123
- }], buttonType: [{
124
- type: Input
125
- }], isEnabled: [{
126
- type: Input
127
- }], onClick: [{
128
- type: Output
70
+ class ButtonComponent {
71
+ constructor() {
72
+ this.primary = false;
73
+ this.size = 'medium';
74
+ this.label = 'Button';
75
+ this.isEnabled = true;
76
+ this.onClick = new EventEmitter();
77
+ }
78
+ get classes() {
79
+ const mode = this.primary && this.isEnabled === true
80
+ ? 'ipt-button--primary'
81
+ : this.isEnabled === false ? 'ipt-button--primary-disabled'
82
+ : 'ipt-button--secondary';
83
+ return ['ipt-button', `ipt-button--${this.size}`, mode];
84
+ }
85
+ }
86
+ ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
87
+ ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: ButtonComponent, selector: "ipt-button", inputs: { primary: "primary", size: "size", label: "label", buttonType: "buttonType", isEnabled: "isEnabled" }, outputs: { onClick: "onClick" }, ngImport: i0, template: `<button *ngIf="isEnabled"
88
+ type="{{ buttonType }}"
89
+ (click)="onClick.emit($event)"
90
+ [ngClass]="classes"
91
+ >
92
+ {{ label }}
93
+ </button>
94
+
95
+ <button *ngIf="!isEnabled"
96
+ type="{{ buttonType }}"
97
+ [ngClass]="classes"
98
+ >
99
+ {{ label }}
100
+ </button>`, isInline: true, styles: [".ipt-button{font-family:Poppins,sans-serif;font-weight:700;border:0;border-radius:12px;cursor:pointer;display:inline-block;line-height:1;transition:.4s;width:100%;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.ipt-button:hover{box-shadow:0 10px 20px #1b1b1b80;transform:translateY(-3px)}.ipt-button:active{transform:scale(.99)}.ipt-button--primary{color:#fff;background-color:#1c77f7}.ipt-button--primary-disabled{color:gray;background-color:#fff;border:1px solid gray;box-shadow:none;cursor:not-allowed}.ipt-button--primary-disabled:hover{box-shadow:none;transform:translateY(0)}.ipt-button--secondary{color:#1c77f7;background-color:#fff;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.ipt-button--small{font-size:12px;padding:10px 16px}.ipt-button--medium{font-size:14px;padding:11px 20px}.ipt-button--large{font-size:16px;padding:12px 24px}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ButtonComponent, decorators: [{
102
+ type: Component,
103
+ args: [{ selector: 'ipt-button', template: `<button *ngIf="isEnabled"
104
+ type="{{ buttonType }}"
105
+ (click)="onClick.emit($event)"
106
+ [ngClass]="classes"
107
+ >
108
+ {{ label }}
109
+ </button>
110
+
111
+ <button *ngIf="!isEnabled"
112
+ type="{{ buttonType }}"
113
+ [ngClass]="classes"
114
+ >
115
+ {{ label }}
116
+ </button>`, styles: [".ipt-button{font-family:Poppins,sans-serif;font-weight:700;border:0;border-radius:12px;cursor:pointer;display:inline-block;line-height:1;transition:.4s;width:100%;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.ipt-button:hover{box-shadow:0 10px 20px #1b1b1b80;transform:translateY(-3px)}.ipt-button:active{transform:scale(.99)}.ipt-button--primary{color:#fff;background-color:#1c77f7}.ipt-button--primary-disabled{color:gray;background-color:#fff;border:1px solid gray;box-shadow:none;cursor:not-allowed}.ipt-button--primary-disabled:hover{box-shadow:none;transform:translateY(0)}.ipt-button--secondary{color:#1c77f7;background-color:#fff;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.ipt-button--small{font-size:12px;padding:10px 16px}.ipt-button--medium{font-size:14px;padding:11px 20px}.ipt-button--large{font-size:16px;padding:12px 24px}\n"] }]
117
+ }], propDecorators: { primary: [{
118
+ type: Input
119
+ }], size: [{
120
+ type: Input
121
+ }], label: [{
122
+ type: Input
123
+ }], buttonType: [{
124
+ type: Input
125
+ }], isEnabled: [{
126
+ type: Input
127
+ }], onClick: [{
128
+ type: Output
129
129
  }] } });
130
130
 
131
- class CheckboxComponent {
132
- constructor() {
133
- this.checkboxOption = false;
134
- this.onChecked = new EventEmitter();
135
- }
136
- set control(value) {
137
- if (this.formControl !== value) {
138
- this.formControl = value;
139
- }
140
- }
141
- }
142
- CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
143
- CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: CheckboxComponent, selector: "ipt-checkbox", inputs: { checkboxOption: "checkboxOption", control: "control" }, outputs: { onChecked: "onChecked" }, ngImport: i0, template: `
144
- <label class="cont">
145
- <input
146
- class="checkbox"
147
- [formControl]="formControl"
148
- [checked]="checkboxOption"
149
- (click)="onChecked.emit($event)"
150
- type="checkbox">
151
- <span></span>
152
- </label>
153
- `, isInline: true, styles: [".cont{display:flex;align-items:center;transform:scale(1)}@media screen and (min-width: 320px){input[type=checkbox]{height:1rem;width:1.1rem;margin:5px;display:inline-block;-webkit-appearance:none;appearance:none;position:relative;background-color:#1c77f733;border-radius:15%;cursor:pointer;overflow:hidden}input[type=checkbox]:after{content:\"\";display:block;height:.4rem;width:.2rem;border-bottom:.21rem solid white;border-right:.21rem solid white;opacity:0;transform:rotate(45deg) translate(-50%,-50%);position:absolute;top:50%;left:20%;transition:.25s ease}input[type=checkbox]:before{content:\"\";display:block;height:0;width:0;background-color:#1c77f7;border-radius:50%;opacity:.5;transform:translate(-50%,-50%);position:absolute;top:50%;left:50%;transition:.3s ease}input[type=checkbox]:checked:before{height:130%;width:130%;opacity:100%}input[type=checkbox]:checked:after{opacity:100%}span{font-size:1rem}}@media screen and (min-width: 375px){input[type=checkbox]{height:1.2rem;width:1.3rem}input[type=checkbox]:after{height:.5rem;width:.2rem;border-bottom:.21rem solid white;border-right:.21rem solid white}}@media screen and (min-width: 1024px){input[type=checkbox]{height:1.3rem;width:1.4rem}input[type=checkbox]:after{height:.6rem;width:.3rem;border-bottom:.21rem solid white;border-right:.21rem solid white}}\n"], directives: [{ type: i1$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
154
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CheckboxComponent, decorators: [{
155
- type: Component,
156
- args: [{ selector: 'ipt-checkbox', template: `
157
- <label class="cont">
158
- <input
159
- class="checkbox"
160
- [formControl]="formControl"
161
- [checked]="checkboxOption"
162
- (click)="onChecked.emit($event)"
163
- type="checkbox">
164
- <span></span>
165
- </label>
166
- `, styles: [".cont{display:flex;align-items:center;transform:scale(1)}@media screen and (min-width: 320px){input[type=checkbox]{height:1rem;width:1.1rem;margin:5px;display:inline-block;-webkit-appearance:none;appearance:none;position:relative;background-color:#1c77f733;border-radius:15%;cursor:pointer;overflow:hidden}input[type=checkbox]:after{content:\"\";display:block;height:.4rem;width:.2rem;border-bottom:.21rem solid white;border-right:.21rem solid white;opacity:0;transform:rotate(45deg) translate(-50%,-50%);position:absolute;top:50%;left:20%;transition:.25s ease}input[type=checkbox]:before{content:\"\";display:block;height:0;width:0;background-color:#1c77f7;border-radius:50%;opacity:.5;transform:translate(-50%,-50%);position:absolute;top:50%;left:50%;transition:.3s ease}input[type=checkbox]:checked:before{height:130%;width:130%;opacity:100%}input[type=checkbox]:checked:after{opacity:100%}span{font-size:1rem}}@media screen and (min-width: 375px){input[type=checkbox]{height:1.2rem;width:1.3rem}input[type=checkbox]:after{height:.5rem;width:.2rem;border-bottom:.21rem solid white;border-right:.21rem solid white}}@media screen and (min-width: 1024px){input[type=checkbox]{height:1.3rem;width:1.4rem}input[type=checkbox]:after{height:.6rem;width:.3rem;border-bottom:.21rem solid white;border-right:.21rem solid white}}\n"] }]
167
- }], propDecorators: { checkboxOption: [{
168
- type: Input
169
- }], control: [{
170
- type: Input
171
- }], onChecked: [{
172
- type: Output
131
+ class CheckboxComponent {
132
+ constructor() {
133
+ this.checkboxOption = false;
134
+ this.onChecked = new EventEmitter();
135
+ }
136
+ set control(value) {
137
+ if (this.formControl !== value) {
138
+ this.formControl = value;
139
+ }
140
+ }
141
+ }
142
+ CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
143
+ CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: CheckboxComponent, selector: "ipt-checkbox", inputs: { checkboxOption: "checkboxOption", control: "control" }, outputs: { onChecked: "onChecked" }, ngImport: i0, template: `
144
+ <label class="cont">
145
+ <input
146
+ class="checkbox"
147
+ [formControl]="formControl"
148
+ [checked]="checkboxOption"
149
+ (click)="onChecked.emit($event)"
150
+ type="checkbox">
151
+ <span></span>
152
+ </label>
153
+ `, isInline: true, styles: [".cont{display:flex;align-items:center;transform:scale(1)}@media screen and (min-width: 320px){input[type=checkbox]{height:1rem;width:1.1rem;margin:5px;display:inline-block;-webkit-appearance:none;appearance:none;position:relative;background-color:#1c77f733;border-radius:15%;cursor:pointer;overflow:hidden}input[type=checkbox]:after{content:\"\";display:block;height:.4rem;width:.2rem;border-bottom:.21rem solid white;border-right:.21rem solid white;opacity:0;transform:rotate(45deg) translate(-50%,-50%);position:absolute;top:50%;left:20%;transition:.25s ease}input[type=checkbox]:before{content:\"\";display:block;height:0;width:0;background-color:#1c77f7;border-radius:50%;opacity:.5;transform:translate(-50%,-50%);position:absolute;top:50%;left:50%;transition:.3s ease}input[type=checkbox]:checked:before{height:130%;width:130%;opacity:100%}input[type=checkbox]:checked:after{opacity:100%}span{font-size:1rem}}@media screen and (min-width: 375px){input[type=checkbox]{height:1.2rem;width:1.3rem}input[type=checkbox]:after{height:.5rem;width:.2rem;border-bottom:.21rem solid white;border-right:.21rem solid white}}@media screen and (min-width: 1024px){input[type=checkbox]{height:1.3rem;width:1.4rem}input[type=checkbox]:after{height:.6rem;width:.3rem;border-bottom:.21rem solid white;border-right:.21rem solid white}}\n"], directives: [{ type: i1$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CheckboxComponent, decorators: [{
155
+ type: Component,
156
+ args: [{ selector: 'ipt-checkbox', template: `
157
+ <label class="cont">
158
+ <input
159
+ class="checkbox"
160
+ [formControl]="formControl"
161
+ [checked]="checkboxOption"
162
+ (click)="onChecked.emit($event)"
163
+ type="checkbox">
164
+ <span></span>
165
+ </label>
166
+ `, styles: [".cont{display:flex;align-items:center;transform:scale(1)}@media screen and (min-width: 320px){input[type=checkbox]{height:1rem;width:1.1rem;margin:5px;display:inline-block;-webkit-appearance:none;appearance:none;position:relative;background-color:#1c77f733;border-radius:15%;cursor:pointer;overflow:hidden}input[type=checkbox]:after{content:\"\";display:block;height:.4rem;width:.2rem;border-bottom:.21rem solid white;border-right:.21rem solid white;opacity:0;transform:rotate(45deg) translate(-50%,-50%);position:absolute;top:50%;left:20%;transition:.25s ease}input[type=checkbox]:before{content:\"\";display:block;height:0;width:0;background-color:#1c77f7;border-radius:50%;opacity:.5;transform:translate(-50%,-50%);position:absolute;top:50%;left:50%;transition:.3s ease}input[type=checkbox]:checked:before{height:130%;width:130%;opacity:100%}input[type=checkbox]:checked:after{opacity:100%}span{font-size:1rem}}@media screen and (min-width: 375px){input[type=checkbox]{height:1.2rem;width:1.3rem}input[type=checkbox]:after{height:.5rem;width:.2rem;border-bottom:.21rem solid white;border-right:.21rem solid white}}@media screen and (min-width: 1024px){input[type=checkbox]{height:1.3rem;width:1.4rem}input[type=checkbox]:after{height:.6rem;width:.3rem;border-bottom:.21rem solid white;border-right:.21rem solid white}}\n"] }]
167
+ }], propDecorators: { checkboxOption: [{
168
+ type: Input
169
+ }], control: [{
170
+ type: Input
171
+ }], onChecked: [{
172
+ type: Output
173
173
  }] } });
174
174
 
175
- class DatalistComponent {
176
- constructor(fb) {
177
- this.disabledSel = false;
178
- this.isChanged = new EventEmitter();
179
- this.clicked = false;
180
- }
181
- optionChanged(event) {
182
- let selectOption = this.datalistData.find(element => element.name == event.target.value);
183
- if (typeof (selectOption) != 'undefined') {
184
- this.isChanged.emit(selectOption.code);
185
- }
186
- else {
187
- this.isChanged.emit('-1');
188
- }
189
- }
190
- click(value) {
191
- this.clicked = value.isTrusted;
192
- }
193
- setDataListValue() {
194
- let selectOption = this.datalistData.find(element => element.code == this.initalData);
195
- if (typeof (selectOption) != 'undefined') {
196
- return selectOption.name;
197
- }
198
- else {
199
- return '';
200
- }
201
- }
202
- get labelClass() {
203
- return this.clicked === false ? 'label' : 'labelUp';
204
- }
205
- }
206
- DatalistComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DatalistComponent, deps: [{ token: i1$1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
207
- DatalistComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: DatalistComponent, selector: "ipt-datalist", inputs: { datalistId: "datalistId", datalistData: "datalistData", placeHolder: "placeHolder", validateText: "validateText", initalData: "initalData", disabledSel: "disabledSel" }, outputs: { isChanged: "isChanged" }, ngImport: i0, template: `
208
- <div class="input-container">
209
- <label [ngClass]="labelClass">{{ placeHolder }}</label>
210
- <input
211
- type="text"
212
- class="input"
213
- (click)="click($event)"
214
- [attr.list]="datalistId"
215
- (change)="optionChanged($event)"
216
- [disabled]="disabledSel"
217
- [value]="setDataListValue()"
218
- />
219
-
220
- <datalist id="{{ datalistId }}">
221
- <option *ngFor="let item of datalistData; index as i" [value]="item.name">
222
- {{item.id_card}} {{item.name}}
223
- </option>
224
- </datalist>
225
- </div>
226
- `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}.input-container{position:relative;margin-top:30px}.input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;margin:10px 10px -30px;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff}.input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] });
227
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DatalistComponent, decorators: [{
228
- type: Component,
229
- args: [{ selector: 'ipt-datalist', template: `
230
- <div class="input-container">
231
- <label [ngClass]="labelClass">{{ placeHolder }}</label>
232
- <input
233
- type="text"
234
- class="input"
235
- (click)="click($event)"
236
- [attr.list]="datalistId"
237
- (change)="optionChanged($event)"
238
- [disabled]="disabledSel"
239
- [value]="setDataListValue()"
240
- />
241
-
242
- <datalist id="{{ datalistId }}">
243
- <option *ngFor="let item of datalistData; index as i" [value]="item.name">
244
- {{item.id_card}} {{item.name}}
245
- </option>
246
- </datalist>
247
- </div>
248
- `, styles: ["*{font-family:Poppins,sans-serif}.input-container{position:relative;margin-top:30px}.input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;margin:10px 10px -30px;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff}.input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"] }]
249
- }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }]; }, propDecorators: { datalistId: [{
250
- type: Input
251
- }], datalistData: [{
252
- type: Input
253
- }], placeHolder: [{
254
- type: Input
255
- }], validateText: [{
256
- type: Input
257
- }], initalData: [{
258
- type: Input
259
- }], disabledSel: [{
260
- type: Input
261
- }], isChanged: [{
262
- type: Output
175
+ class DatalistComponent {
176
+ constructor(fb) {
177
+ this.disabledSel = false;
178
+ this.isChanged = new EventEmitter();
179
+ this.clicked = false;
180
+ }
181
+ optionChanged(event) {
182
+ let selectOption = this.datalistData.find(element => element.name == event.target.value);
183
+ if (typeof (selectOption) != 'undefined') {
184
+ this.isChanged.emit(selectOption.code);
185
+ }
186
+ else {
187
+ this.isChanged.emit('-1');
188
+ }
189
+ }
190
+ click(value) {
191
+ this.clicked = value.isTrusted;
192
+ }
193
+ setDataListValue() {
194
+ let selectOption = this.datalistData.find(element => element.code == this.initalData);
195
+ if (typeof (selectOption) != 'undefined') {
196
+ return selectOption.name;
197
+ }
198
+ else {
199
+ return '';
200
+ }
201
+ }
202
+ get labelClass() {
203
+ return this.clicked === false ? 'label' : 'labelUp';
204
+ }
205
+ }
206
+ DatalistComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DatalistComponent, deps: [{ token: i1$1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
207
+ DatalistComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: DatalistComponent, selector: "ipt-datalist", inputs: { datalistId: "datalistId", datalistData: "datalistData", placeHolder: "placeHolder", validateText: "validateText", initalData: "initalData", disabledSel: "disabledSel" }, outputs: { isChanged: "isChanged" }, ngImport: i0, template: `
208
+ <div class="input-container">
209
+ <label [ngClass]="labelClass">{{ placeHolder }}</label>
210
+ <input
211
+ type="text"
212
+ class="input"
213
+ (click)="click($event)"
214
+ [attr.list]="datalistId"
215
+ (change)="optionChanged($event)"
216
+ [disabled]="disabledSel"
217
+ [value]="setDataListValue()"
218
+ />
219
+
220
+ <datalist id="{{ datalistId }}">
221
+ <option *ngFor="let item of datalistData; index as i" [value]="item.name">
222
+ {{item.id_card}} {{item.name}}
223
+ </option>
224
+ </datalist>
225
+ </div>
226
+ `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}.input-container{position:relative;margin-top:30px}.input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;margin:10px 10px -30px;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff}.input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] });
227
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DatalistComponent, decorators: [{
228
+ type: Component,
229
+ args: [{ selector: 'ipt-datalist', template: `
230
+ <div class="input-container">
231
+ <label [ngClass]="labelClass">{{ placeHolder }}</label>
232
+ <input
233
+ type="text"
234
+ class="input"
235
+ (click)="click($event)"
236
+ [attr.list]="datalistId"
237
+ (change)="optionChanged($event)"
238
+ [disabled]="disabledSel"
239
+ [value]="setDataListValue()"
240
+ />
241
+
242
+ <datalist id="{{ datalistId }}">
243
+ <option *ngFor="let item of datalistData; index as i" [value]="item.name">
244
+ {{item.id_card}} {{item.name}}
245
+ </option>
246
+ </datalist>
247
+ </div>
248
+ `, styles: ["*{font-family:Poppins,sans-serif}.input-container{position:relative;margin-top:30px}.input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;margin:10px 10px -30px;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff}.input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"] }]
249
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }]; }, propDecorators: { datalistId: [{
250
+ type: Input
251
+ }], datalistData: [{
252
+ type: Input
253
+ }], placeHolder: [{
254
+ type: Input
255
+ }], validateText: [{
256
+ type: Input
257
+ }], initalData: [{
258
+ type: Input
259
+ }], disabledSel: [{
260
+ type: Input
261
+ }], isChanged: [{
262
+ type: Output
263
263
  }] } });
264
264
 
265
- class InputComponent {
266
- constructor() {
267
- this.data = [];
268
- this.clicked = false;
269
- this.withPipe = false;
270
- this.prefix = '$';
271
- this.thousands = '.';
272
- this.decimal = ',';
273
- this.dateSelected = new EventEmitter();
274
- }
275
- set control(value) {
276
- if (this.formControl !== value) {
277
- this.formControl = value;
278
- }
279
- }
280
- ngOnInit() { }
281
- selectedDate(evt) {
282
- this.dateSelected.emit(evt);
283
- }
284
- click(value) {
285
- this.clicked = value.isTrusted;
286
- }
287
- }
288
- InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
289
- InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: InputComponent, selector: "ipt-input", inputs: { inputType: "inputType", placeHolder: "placeHolder", validateText: "validateText", withPipe: "withPipe", list: "list", iconUrl: "iconUrl", control: "control", prefix: "prefix", thousands: "thousands", decimal: "decimal" }, outputs: { dateSelected: "dateSelected" }, ngImport: i0, template: `
290
- <div class="input-container">
291
- <input *ngIf="inputType === 'date'"
292
- class="input"
293
- type="{{ inputType ? 'text' : 'date' }}"
294
- [formControl]="formControl"
295
- (ngModelChange)="selectedDate($event)"
296
- onfocus="this.type='date';"
297
- onblur="javascript: if( !this.value ) this.type='text';"
298
- uib-datepicker-popup="dd/MM/yyyy"
299
- ng-model="inputType"/>
300
-
301
- <input *ngIf="inputType !== 'date' && inputType !== 'time' && !withPipe"
302
- class="input"
303
- type="{{ inputType }}"
304
- [formControl]="formControl"
305
- [attr.list]="list"/>
306
-
307
- <input *ngIf="inputType === 'text' && withPipe"
308
- class="input"
309
- currencyMask
310
- [options]="{ prefix: prefix, thousands: thousands, decimal: decimal, allowNegative: false }"
311
- type="{{ inputType }}"
312
- [formControl]="formControl"
313
- [attr.list]="list"/>
314
-
315
- <input *ngIf="inputType === 'time'"
316
- class="input"
317
- type="time"
318
- [formControl]="formControl"
319
- [min]="'06:00:00'"
320
- max="22:00:00"
321
- step="900"
322
- autocomplete="on"
323
- value="08:00:00"
324
- (click)="click($event)"
325
- />
326
-
327
- <label [ngClass]="{'labelUp': formControl.value !== ''}">{{ placeHolder }}</label>
328
-
329
- <p *ngIf="(formControl.invalid && formControl.value !== '')">
330
- {{ validateText }}
331
- </p>
332
- </div>
333
- `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){p{color:#c73a3a;font-size:12px;padding-left:15px}}@media screen and (min-width: 768px){p{color:#c73a3a;font-size:13px;padding-left:15px}}@media screen and (min-width: 1024px){p{color:#c73a3a;font-size:13px;padding-left:15px}}.input-container{position:relative;margin-top:30px}input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.input:focus~label,.input:invalid~label{top:-20px;font-size:15px;color:#1c77f7}.labelUp{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i3.CurrencyMaskDirective, selector: "[currencyMask]", inputs: ["max", "min", "options"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
334
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: InputComponent, decorators: [{
335
- type: Component,
336
- args: [{ selector: 'ipt-input', template: `
337
- <div class="input-container">
338
- <input *ngIf="inputType === 'date'"
339
- class="input"
340
- type="{{ inputType ? 'text' : 'date' }}"
341
- [formControl]="formControl"
342
- (ngModelChange)="selectedDate($event)"
343
- onfocus="this.type='date';"
344
- onblur="javascript: if( !this.value ) this.type='text';"
345
- uib-datepicker-popup="dd/MM/yyyy"
346
- ng-model="inputType"/>
347
-
348
- <input *ngIf="inputType !== 'date' && inputType !== 'time' && !withPipe"
349
- class="input"
350
- type="{{ inputType }}"
351
- [formControl]="formControl"
352
- [attr.list]="list"/>
353
-
354
- <input *ngIf="inputType === 'text' && withPipe"
355
- class="input"
356
- currencyMask
357
- [options]="{ prefix: prefix, thousands: thousands, decimal: decimal, allowNegative: false }"
358
- type="{{ inputType }}"
359
- [formControl]="formControl"
360
- [attr.list]="list"/>
361
-
362
- <input *ngIf="inputType === 'time'"
363
- class="input"
364
- type="time"
365
- [formControl]="formControl"
366
- [min]="'06:00:00'"
367
- max="22:00:00"
368
- step="900"
369
- autocomplete="on"
370
- value="08:00:00"
371
- (click)="click($event)"
372
- />
373
-
374
- <label [ngClass]="{'labelUp': formControl.value !== ''}">{{ placeHolder }}</label>
375
-
376
- <p *ngIf="(formControl.invalid && formControl.value !== '')">
377
- {{ validateText }}
378
- </p>
379
- </div>
380
- `, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){p{color:#c73a3a;font-size:12px;padding-left:15px}}@media screen and (min-width: 768px){p{color:#c73a3a;font-size:13px;padding-left:15px}}@media screen and (min-width: 1024px){p{color:#c73a3a;font-size:13px;padding-left:15px}}.input-container{position:relative;margin-top:30px}input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.input:focus~label,.input:invalid~label{top:-20px;font-size:15px;color:#1c77f7}.labelUp{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"] }]
381
- }], ctorParameters: function () { return []; }, propDecorators: { inputType: [{
382
- type: Input
383
- }], placeHolder: [{
384
- type: Input
385
- }], validateText: [{
386
- type: Input
387
- }], withPipe: [{
388
- type: Input
389
- }], list: [{
390
- type: Input
391
- }], iconUrl: [{
392
- type: Input
393
- }], control: [{
394
- type: Input
395
- }], prefix: [{
396
- type: Input
397
- }], thousands: [{
398
- type: Input
399
- }], decimal: [{
400
- type: Input
401
- }], dateSelected: [{
402
- type: Output
265
+ class InputComponent {
266
+ constructor() {
267
+ this.data = [];
268
+ this.clicked = false;
269
+ this.withPipe = false;
270
+ this.prefix = '$';
271
+ this.thousands = '.';
272
+ this.decimal = ',';
273
+ this.dateSelected = new EventEmitter();
274
+ }
275
+ set control(value) {
276
+ if (this.formControl !== value) {
277
+ this.formControl = value;
278
+ }
279
+ }
280
+ ngOnInit() { }
281
+ selectedDate(evt) {
282
+ this.dateSelected.emit(evt);
283
+ }
284
+ click(value) {
285
+ this.clicked = value.isTrusted;
286
+ }
287
+ }
288
+ InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
289
+ InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: InputComponent, selector: "ipt-input", inputs: { inputType: "inputType", placeHolder: "placeHolder", validateText: "validateText", withPipe: "withPipe", list: "list", iconUrl: "iconUrl", control: "control", prefix: "prefix", thousands: "thousands", decimal: "decimal" }, outputs: { dateSelected: "dateSelected" }, ngImport: i0, template: `
290
+ <div class="input-container">
291
+ <input *ngIf="inputType === 'date'"
292
+ class="input"
293
+ type="{{ inputType ? 'text' : 'date' }}"
294
+ [formControl]="formControl"
295
+ (ngModelChange)="selectedDate($event)"
296
+ onfocus="this.type='date';"
297
+ onblur="javascript: if( !this.value ) this.type='text';"
298
+ uib-datepicker-popup="dd/MM/yyyy"
299
+ ng-model="inputType"/>
300
+
301
+ <input *ngIf="inputType !== 'date' && inputType !== 'time' && !withPipe"
302
+ class="input"
303
+ type="{{ inputType }}"
304
+ [formControl]="formControl"
305
+ [attr.list]="list"/>
306
+
307
+ <input *ngIf="inputType === 'text' && withPipe"
308
+ class="input"
309
+ currencyMask
310
+ [options]="{ prefix: prefix, thousands: thousands, decimal: decimal, allowNegative: false }"
311
+ type="{{ inputType }}"
312
+ [formControl]="formControl"
313
+ [attr.list]="list"/>
314
+
315
+ <input *ngIf="inputType === 'time'"
316
+ class="input"
317
+ type="time"
318
+ [formControl]="formControl"
319
+ [min]="'06:00:00'"
320
+ max="22:00:00"
321
+ step="900"
322
+ autocomplete="on"
323
+ value="08:00:00"
324
+ (click)="click($event)"
325
+ />
326
+
327
+ <label [ngClass]="{'labelUp': formControl.value !== ''}">{{ placeHolder }}</label>
328
+
329
+ <p *ngIf="(formControl.invalid && formControl.value !== '')">
330
+ {{ validateText }}
331
+ </p>
332
+ </div>
333
+ `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){p{color:#c73a3a;font-size:12px;padding-left:15px}}@media screen and (min-width: 768px){p{color:#c73a3a;font-size:13px;padding-left:15px}}@media screen and (min-width: 1024px){p{color:#c73a3a;font-size:13px;padding-left:15px}}.input-container{position:relative;margin-top:30px}input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.input:focus~label,.input:invalid~label{top:-20px;font-size:15px;color:#1c77f7}.labelUp{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i3.CurrencyMaskDirective, selector: "[currencyMask]", inputs: ["max", "min", "options"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
334
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: InputComponent, decorators: [{
335
+ type: Component,
336
+ args: [{ selector: 'ipt-input', template: `
337
+ <div class="input-container">
338
+ <input *ngIf="inputType === 'date'"
339
+ class="input"
340
+ type="{{ inputType ? 'text' : 'date' }}"
341
+ [formControl]="formControl"
342
+ (ngModelChange)="selectedDate($event)"
343
+ onfocus="this.type='date';"
344
+ onblur="javascript: if( !this.value ) this.type='text';"
345
+ uib-datepicker-popup="dd/MM/yyyy"
346
+ ng-model="inputType"/>
347
+
348
+ <input *ngIf="inputType !== 'date' && inputType !== 'time' && !withPipe"
349
+ class="input"
350
+ type="{{ inputType }}"
351
+ [formControl]="formControl"
352
+ [attr.list]="list"/>
353
+
354
+ <input *ngIf="inputType === 'text' && withPipe"
355
+ class="input"
356
+ currencyMask
357
+ [options]="{ prefix: prefix, thousands: thousands, decimal: decimal, allowNegative: false }"
358
+ type="{{ inputType }}"
359
+ [formControl]="formControl"
360
+ [attr.list]="list"/>
361
+
362
+ <input *ngIf="inputType === 'time'"
363
+ class="input"
364
+ type="time"
365
+ [formControl]="formControl"
366
+ [min]="'06:00:00'"
367
+ max="22:00:00"
368
+ step="900"
369
+ autocomplete="on"
370
+ value="08:00:00"
371
+ (click)="click($event)"
372
+ />
373
+
374
+ <label [ngClass]="{'labelUp': formControl.value !== ''}">{{ placeHolder }}</label>
375
+
376
+ <p *ngIf="(formControl.invalid && formControl.value !== '')">
377
+ {{ validateText }}
378
+ </p>
379
+ </div>
380
+ `, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){p{color:#c73a3a;font-size:12px;padding-left:15px}}@media screen and (min-width: 768px){p{color:#c73a3a;font-size:13px;padding-left:15px}}@media screen and (min-width: 1024px){p{color:#c73a3a;font-size:13px;padding-left:15px}}.input-container{position:relative;margin-top:30px}input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.input:focus~label,.input:invalid~label{top:-20px;font-size:15px;color:#1c77f7}.labelUp{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"] }]
381
+ }], ctorParameters: function () { return []; }, propDecorators: { inputType: [{
382
+ type: Input
383
+ }], placeHolder: [{
384
+ type: Input
385
+ }], validateText: [{
386
+ type: Input
387
+ }], withPipe: [{
388
+ type: Input
389
+ }], list: [{
390
+ type: Input
391
+ }], iconUrl: [{
392
+ type: Input
393
+ }], control: [{
394
+ type: Input
395
+ }], prefix: [{
396
+ type: Input
397
+ }], thousands: [{
398
+ type: Input
399
+ }], decimal: [{
400
+ type: Input
401
+ }], dateSelected: [{
402
+ type: Output
403
403
  }] } });
404
404
 
405
- class LevelButtonComponent {
406
- constructor() {
407
- this.isClicked = new EventEmitter();
408
- }
409
- clickAction() {
410
- this.isClicked.emit(true);
411
- }
412
- }
413
- LevelButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LevelButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
414
- LevelButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LevelButtonComponent, selector: "ipt-level-button", inputs: { level: "level", buttonActive: "buttonActive", idColor: "idColor" }, outputs: { isClicked: "isClicked" }, ngImport: i0, template: `
415
- <div [ngSwitch]="buttonActive">
416
- <button
417
- *ngSwitchCase="0"
418
- (click)="clickAction()"
419
- id="level"
420
- class="courses"
421
- >
422
- <p class="p-level">{{ level }}</p>
423
- </button>
424
-
425
- <button
426
- *ngSwitchCase="1"
427
- (click)="clickAction()"
428
- id="{{ idColor }}"
429
- class="courses">
430
- <p class="p-level p-level-active">{{ level }}</p>
431
- </button>
432
- </div>
433
- `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}@media (min-width: 320px){.courses{cursor:pointer;text-decoration:none;display:flex;border-radius:6px;width:100%;height:30px;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset;border:none;outline:none;align-items:center;background-color:transparent;color:#1c77f7}.p-level{display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}#level-1{background-color:#02eed8}#level-2{background-color:#61acff}#level-3{background-color:#f168f4}#level-4{background-color:#ff3737}#level-5{background-color:#004dfa}#level-6{background-color:#14c25a}#level-7{background-color:#a052da}#level-8{background-color:#f2583d}#level-9{background-color:#291d26}#level-10{background-color:#1c77f7}.p-level-active{color:#fff}}@media (min-width: 375px){.courses{height:40px}.p-level{font-size:18px}}@media (min-width: 425px){.courses{height:30px}}@media (min-width: 768px){.courses{height:40px}}@media (min-width: 1024px){.courses{transition:.6s}.courses:active{transform:scale(1.05);box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.p-level{font-weight:700}}@media (min-width: 1440px){.p-level{font-weight:600}}\n"], directives: [{ type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] });
434
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LevelButtonComponent, decorators: [{
435
- type: Component,
436
- args: [{ selector: 'ipt-level-button', template: `
437
- <div [ngSwitch]="buttonActive">
438
- <button
439
- *ngSwitchCase="0"
440
- (click)="clickAction()"
441
- id="level"
442
- class="courses"
443
- >
444
- <p class="p-level">{{ level }}</p>
445
- </button>
446
-
447
- <button
448
- *ngSwitchCase="1"
449
- (click)="clickAction()"
450
- id="{{ idColor }}"
451
- class="courses">
452
- <p class="p-level p-level-active">{{ level }}</p>
453
- </button>
454
- </div>
455
- `, styles: ["*{font-family:Poppins,sans-serif}@media (min-width: 320px){.courses{cursor:pointer;text-decoration:none;display:flex;border-radius:6px;width:100%;height:30px;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset;border:none;outline:none;align-items:center;background-color:transparent;color:#1c77f7}.p-level{display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}#level-1{background-color:#02eed8}#level-2{background-color:#61acff}#level-3{background-color:#f168f4}#level-4{background-color:#ff3737}#level-5{background-color:#004dfa}#level-6{background-color:#14c25a}#level-7{background-color:#a052da}#level-8{background-color:#f2583d}#level-9{background-color:#291d26}#level-10{background-color:#1c77f7}.p-level-active{color:#fff}}@media (min-width: 375px){.courses{height:40px}.p-level{font-size:18px}}@media (min-width: 425px){.courses{height:30px}}@media (min-width: 768px){.courses{height:40px}}@media (min-width: 1024px){.courses{transition:.6s}.courses:active{transform:scale(1.05);box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.p-level{font-weight:700}}@media (min-width: 1440px){.p-level{font-weight:600}}\n"] }]
456
- }], propDecorators: { level: [{
457
- type: Input
458
- }], buttonActive: [{
459
- type: Input
460
- }], idColor: [{
461
- type: Input
462
- }], isClicked: [{
463
- type: Output
405
+ class LevelButtonComponent {
406
+ constructor() {
407
+ this.isClicked = new EventEmitter();
408
+ }
409
+ clickAction() {
410
+ this.isClicked.emit(true);
411
+ }
412
+ }
413
+ LevelButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LevelButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
414
+ LevelButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LevelButtonComponent, selector: "ipt-level-button", inputs: { level: "level", buttonActive: "buttonActive", idColor: "idColor" }, outputs: { isClicked: "isClicked" }, ngImport: i0, template: `
415
+ <div [ngSwitch]="buttonActive">
416
+ <button
417
+ *ngSwitchCase="0"
418
+ (click)="clickAction()"
419
+ id="level"
420
+ class="courses"
421
+ >
422
+ <p class="p-level">{{ level }}</p>
423
+ </button>
424
+
425
+ <button
426
+ *ngSwitchCase="1"
427
+ (click)="clickAction()"
428
+ id="{{ idColor }}"
429
+ class="courses">
430
+ <p class="p-level p-level-active">{{ level }}</p>
431
+ </button>
432
+ </div>
433
+ `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}@media (min-width: 320px){.courses{cursor:pointer;text-decoration:none;display:flex;border-radius:6px;width:100%;height:30px;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset;border:none;outline:none;align-items:center;background-color:transparent;color:#1c77f7}.p-level{display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}#level-1{background-color:#02eed8}#level-2{background-color:#61acff}#level-3{background-color:#f168f4}#level-4{background-color:#ff3737}#level-5{background-color:#004dfa}#level-6{background-color:#14c25a}#level-7{background-color:#a052da}#level-8{background-color:#f2583d}#level-9{background-color:#291d26}#level-10{background-color:#1c77f7}.p-level-active{color:#fff}}@media (min-width: 375px){.courses{height:40px}.p-level{font-size:18px}}@media (min-width: 425px){.courses{height:30px}}@media (min-width: 768px){.courses{height:40px}}@media (min-width: 1024px){.courses{transition:.6s}.courses:active{transform:scale(1.05);box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.p-level{font-weight:700}}@media (min-width: 1440px){.p-level{font-weight:600}}\n"], directives: [{ type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] });
434
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LevelButtonComponent, decorators: [{
435
+ type: Component,
436
+ args: [{ selector: 'ipt-level-button', template: `
437
+ <div [ngSwitch]="buttonActive">
438
+ <button
439
+ *ngSwitchCase="0"
440
+ (click)="clickAction()"
441
+ id="level"
442
+ class="courses"
443
+ >
444
+ <p class="p-level">{{ level }}</p>
445
+ </button>
446
+
447
+ <button
448
+ *ngSwitchCase="1"
449
+ (click)="clickAction()"
450
+ id="{{ idColor }}"
451
+ class="courses">
452
+ <p class="p-level p-level-active">{{ level }}</p>
453
+ </button>
454
+ </div>
455
+ `, styles: ["*{font-family:Poppins,sans-serif}@media (min-width: 320px){.courses{cursor:pointer;text-decoration:none;display:flex;border-radius:6px;width:100%;height:30px;box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset;border:none;outline:none;align-items:center;background-color:transparent;color:#1c77f7}.p-level{display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}#level-1{background-color:#02eed8}#level-2{background-color:#61acff}#level-3{background-color:#f168f4}#level-4{background-color:#ff3737}#level-5{background-color:#004dfa}#level-6{background-color:#14c25a}#level-7{background-color:#a052da}#level-8{background-color:#f2583d}#level-9{background-color:#291d26}#level-10{background-color:#1c77f7}.p-level-active{color:#fff}}@media (min-width: 375px){.courses{height:40px}.p-level{font-size:18px}}@media (min-width: 425px){.courses{height:30px}}@media (min-width: 768px){.courses{height:40px}}@media (min-width: 1024px){.courses{transition:.6s}.courses:active{transform:scale(1.05);box-shadow:#06182c66 0 0 0 2px,#06182ca6 0 4px 6px -1px,#ffffff14 0 1px inset}.p-level{font-weight:700}}@media (min-width: 1440px){.p-level{font-weight:600}}\n"] }]
456
+ }], propDecorators: { level: [{
457
+ type: Input
458
+ }], buttonActive: [{
459
+ type: Input
460
+ }], idColor: [{
461
+ type: Input
462
+ }], isClicked: [{
463
+ type: Output
464
464
  }] } });
465
465
 
466
- class LevelTextComponent {
467
- }
468
- LevelTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LevelTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
469
- LevelTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LevelTextComponent, selector: "ipt-level-button", inputs: { level: "level", total: "total" }, ngImport: i0, template: `
470
- <p class="p-table-course">{{ level }}: {{ total }}</p>
471
- `, isInline: true, styles: ["@media (min-width: 320px){.p-table-course{background-color:#4b4a4a;color:#fff;font-size:14px;font-weight:700;padding:5px;width:100%;text-align:center}}@media (min-width: 375px){.p-table-course{background-color:#4b4a4a;color:#fff;font-size:14px;font-weight:700;padding:5px;width:100%;text-align:center}}@media (min-width: 425px){.p-table-course{font-size:18px}}@media (min-width: 1024px){.p-table-course{font-size:20px}}\n"] });
472
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LevelTextComponent, decorators: [{
473
- type: Component,
474
- args: [{ selector: 'ipt-level-button', template: `
475
- <p class="p-table-course">{{ level }}: {{ total }}</p>
476
- `, styles: ["@media (min-width: 320px){.p-table-course{background-color:#4b4a4a;color:#fff;font-size:14px;font-weight:700;padding:5px;width:100%;text-align:center}}@media (min-width: 375px){.p-table-course{background-color:#4b4a4a;color:#fff;font-size:14px;font-weight:700;padding:5px;width:100%;text-align:center}}@media (min-width: 425px){.p-table-course{font-size:18px}}@media (min-width: 1024px){.p-table-course{font-size:20px}}\n"] }]
477
- }], propDecorators: { level: [{
478
- type: Input
479
- }], total: [{
480
- type: Input
466
+ class LevelTextComponent {
467
+ }
468
+ LevelTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LevelTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
469
+ LevelTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LevelTextComponent, selector: "ipt-level-button", inputs: { level: "level", total: "total" }, ngImport: i0, template: `
470
+ <p class="p-table-course">{{ level }}: {{ total }}</p>
471
+ `, isInline: true, styles: ["@media (min-width: 320px){.p-table-course{background-color:#4b4a4a;color:#fff;font-size:14px;font-weight:700;padding:5px;width:100%;text-align:center}}@media (min-width: 375px){.p-table-course{background-color:#4b4a4a;color:#fff;font-size:14px;font-weight:700;padding:5px;width:100%;text-align:center}}@media (min-width: 425px){.p-table-course{font-size:18px}}@media (min-width: 1024px){.p-table-course{font-size:20px}}\n"] });
472
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LevelTextComponent, decorators: [{
473
+ type: Component,
474
+ args: [{ selector: 'ipt-level-button', template: `
475
+ <p class="p-table-course">{{ level }}: {{ total }}</p>
476
+ `, styles: ["@media (min-width: 320px){.p-table-course{background-color:#4b4a4a;color:#fff;font-size:14px;font-weight:700;padding:5px;width:100%;text-align:center}}@media (min-width: 375px){.p-table-course{background-color:#4b4a4a;color:#fff;font-size:14px;font-weight:700;padding:5px;width:100%;text-align:center}}@media (min-width: 425px){.p-table-course{font-size:18px}}@media (min-width: 1024px){.p-table-course{font-size:20px}}\n"] }]
477
+ }], propDecorators: { level: [{
478
+ type: Input
479
+ }], total: [{
480
+ type: Input
481
481
  }] } });
482
482
 
483
- class LoaderComponent {
484
- constructor() {
485
- this.message = '';
486
- this.isDialog = false;
487
- }
488
- }
489
- LoaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
490
- LoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LoaderComponent, selector: "ipt-loader", inputs: { message: "message", isDialog: "isDialog" }, ngImport: i0, template: `
491
- <div [ngClass]="{'dialog': isDialog}">
492
- <div [ngClass]="{'loader_container' : isDialog}">
493
- <span>{{ message }}</span>
494
- <div class="container">
495
- <div class="spinner">
496
- <div class="dot"></div>
497
- <div class="dot"></div>
498
- <div class="dot"></div>
499
- <div class="dot"></div>
500
- <div class="dot"></div>
501
- </div>
502
- </div>
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;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
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoaderComponent, decorators: [{
506
- type: Component,
507
- args: [{ selector: 'ipt-loader', template: `
508
- <div [ngClass]="{'dialog': isDialog}">
509
- <div [ngClass]="{'loader_container' : isDialog}">
510
- <span>{{ message }}</span>
511
- <div class="container">
512
- <div class="spinner">
513
- <div class="dot"></div>
514
- <div class="dot"></div>
515
- <div class="dot"></div>
516
- <div class="dot"></div>
517
- <div class="dot"></div>
518
- </div>
519
- </div>
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;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
- }], propDecorators: { message: [{
523
- type: Input
524
- }], isDialog: [{
525
- type: Input
483
+ class LoaderComponent {
484
+ constructor() {
485
+ this.message = '';
486
+ this.isDialog = false;
487
+ }
488
+ }
489
+ LoaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
490
+ LoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LoaderComponent, selector: "ipt-loader", inputs: { message: "message", isDialog: "isDialog" }, ngImport: i0, template: `
491
+ <div [ngClass]="{'dialog': isDialog}">
492
+ <div [ngClass]="{'loader_container' : isDialog}">
493
+ <span>{{ message }}</span>
494
+ <div class="container">
495
+ <div class="spinner">
496
+ <div class="dot"></div>
497
+ <div class="dot"></div>
498
+ <div class="dot"></div>
499
+ <div class="dot"></div>
500
+ <div class="dot"></div>
501
+ </div>
502
+ </div>
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;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
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoaderComponent, decorators: [{
506
+ type: Component,
507
+ args: [{ selector: 'ipt-loader', template: `
508
+ <div [ngClass]="{'dialog': isDialog}">
509
+ <div [ngClass]="{'loader_container' : isDialog}">
510
+ <span>{{ message }}</span>
511
+ <div class="container">
512
+ <div class="spinner">
513
+ <div class="dot"></div>
514
+ <div class="dot"></div>
515
+ <div class="dot"></div>
516
+ <div class="dot"></div>
517
+ <div class="dot"></div>
518
+ </div>
519
+ </div>
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;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
+ }], propDecorators: { message: [{
523
+ type: Input
524
+ }], isDialog: [{
525
+ type: Input
526
526
  }] } });
527
527
 
528
- class RadioComponent {
529
- constructor() {
530
- this.radioOption = false;
531
- this.onSelected = new EventEmitter();
532
- }
533
- set control(value) {
534
- if (this.formControl !== value) {
535
- this.formControl = value;
536
- }
537
- }
538
- }
539
- RadioComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RadioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
540
- RadioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: RadioComponent, selector: "ipt-radio", inputs: { radioOption: "radioOption", control: "control" }, outputs: { onSelected: "onSelected" }, ngImport: i0, template: `
541
- <label class="cont">
542
- <input
543
- class="radio"
544
- [formControl]="formControl"
545
- [checked]="radioOption"
546
- (click)="onSelected.emit($event)"
547
- type="radio">
548
- <span></span>
549
- </label>
550
- `, isInline: true, styles: [""], directives: [{ type: i1$1.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
551
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RadioComponent, decorators: [{
552
- type: Component,
553
- args: [{ selector: 'ipt-radio', template: `
554
- <label class="cont">
555
- <input
556
- class="radio"
557
- [formControl]="formControl"
558
- [checked]="radioOption"
559
- (click)="onSelected.emit($event)"
560
- type="radio">
561
- <span></span>
562
- </label>
563
- `, styles: [""] }]
564
- }], propDecorators: { radioOption: [{
565
- type: Input
566
- }], control: [{
567
- type: Input
568
- }], onSelected: [{
569
- type: Output
528
+ class RadioComponent {
529
+ constructor() {
530
+ this.radioOption = false;
531
+ this.onSelected = new EventEmitter();
532
+ }
533
+ set control(value) {
534
+ if (this.formControl !== value) {
535
+ this.formControl = value;
536
+ }
537
+ }
538
+ }
539
+ RadioComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RadioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
540
+ RadioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: RadioComponent, selector: "ipt-radio", inputs: { radioOption: "radioOption", control: "control" }, outputs: { onSelected: "onSelected" }, ngImport: i0, template: `
541
+ <label class="cont">
542
+ <input
543
+ class="radio"
544
+ [formControl]="formControl"
545
+ [checked]="radioOption"
546
+ (click)="onSelected.emit($event)"
547
+ type="radio">
548
+ <span></span>
549
+ </label>
550
+ `, isInline: true, styles: [""], directives: [{ type: i1$1.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
551
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RadioComponent, decorators: [{
552
+ type: Component,
553
+ args: [{ selector: 'ipt-radio', template: `
554
+ <label class="cont">
555
+ <input
556
+ class="radio"
557
+ [formControl]="formControl"
558
+ [checked]="radioOption"
559
+ (click)="onSelected.emit($event)"
560
+ type="radio">
561
+ <span></span>
562
+ </label>
563
+ `, styles: [""] }]
564
+ }], propDecorators: { radioOption: [{
565
+ type: Input
566
+ }], control: [{
567
+ type: Input
568
+ }], onSelected: [{
569
+ type: Output
570
570
  }] } });
571
571
 
572
- class SelectComponent {
573
- constructor() {
574
- this.boxShadow = 0;
575
- this.clicked = false;
576
- this.disabledSel = false;
577
- this.eventSelect = new EventEmitter();
578
- }
579
- // type viene de otro componente -> indica de que tipo es el arreglo si pregrade, posgrade o modo
580
- set control(value) {
581
- if (this.formControl !== value) {
582
- this.formControl = value;
583
- }
584
- }
585
- ngOnChanges(changes) {
586
- if (changes['data']) {
587
- this.binding = this.defaultText;
588
- }
589
- }
590
- seleccionar(evt) {
591
- if (this.eventSelect.emit(evt) !== this.defaultText) {
592
- this.boxShadow = 1;
593
- }
594
- else {
595
- this.boxShadow = 2;
596
- }
597
- }
598
- click(value) {
599
- this.clicked = value.isTrusted;
600
- }
601
- ngOnInit() {
602
- this.binding = this.defaultText;
603
- }
604
- get textClass() {
605
- return this.defaultText === '' ? 'selected' : 'select';
606
- }
607
- get labelClass() {
608
- return this.clicked === false ? 'label' : 'labelUp';
609
- }
610
- }
611
- SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
612
- SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: SelectComponent, selector: "ipt-select", inputs: { isRequired: "isRequired", data: "data", defaultText: "defaultText", selectCode: "selectCode", disabledSel: "disabledSel", control: "control" }, outputs: { eventSelect: "eventSelect" }, usesOnChanges: true, ngImport: i0, template: `
613
- <div class="select-container">
614
- <label [ngClass]="labelClass">{{ defaultText }}</label>
615
- <select
616
- [(ngModel)]="binding"
617
- (ngModelChange)="seleccionar($event)"
618
- (click)="click($event)"
619
- [ngClass]="textClass"
620
- [disabled]="disabledSel">
621
- <option *ngFor="let item of data; index as i" [value]="item.code">
622
- {{ item.name }} {{ item.prefix }}
623
- </option>
624
- </select>
625
- </div>
626
- `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}.select-container{position:relative;margin-top:30px}.select{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}.selected{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.5s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;background-color:#fff;padding-left:10px}select:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.select:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] });
627
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SelectComponent, decorators: [{
628
- type: Component,
629
- args: [{ selector: 'ipt-select', template: `
630
- <div class="select-container">
631
- <label [ngClass]="labelClass">{{ defaultText }}</label>
632
- <select
633
- [(ngModel)]="binding"
634
- (ngModelChange)="seleccionar($event)"
635
- (click)="click($event)"
636
- [ngClass]="textClass"
637
- [disabled]="disabledSel">
638
- <option *ngFor="let item of data; index as i" [value]="item.code">
639
- {{ item.name }} {{ item.prefix }}
640
- </option>
641
- </select>
642
- </div>
643
- `, styles: ["*{font-family:Poppins,sans-serif}.select-container{position:relative;margin-top:30px}.select{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}.selected{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.5s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;background-color:#fff;padding-left:10px}select:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.select:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"] }]
644
- }], propDecorators: { isRequired: [{
645
- type: Input
646
- }], data: [{
647
- type: Input
648
- }], defaultText: [{
649
- type: Input
650
- }], selectCode: [{
651
- type: Input
652
- }], disabledSel: [{
653
- type: Input
654
- }], eventSelect: [{
655
- type: Output
656
- }], control: [{
657
- type: Input
572
+ class SelectComponent {
573
+ constructor() {
574
+ this.boxShadow = 0;
575
+ this.clicked = false;
576
+ this.disabledSel = false;
577
+ this.eventSelect = new EventEmitter();
578
+ }
579
+ // type viene de otro componente -> indica de que tipo es el arreglo si pregrade, posgrade o modo
580
+ set control(value) {
581
+ if (this.formControl !== value) {
582
+ this.formControl = value;
583
+ }
584
+ }
585
+ ngOnChanges(changes) {
586
+ if (changes['data']) {
587
+ this.binding = this.defaultText;
588
+ }
589
+ }
590
+ seleccionar(evt) {
591
+ if (this.eventSelect.emit(evt) !== this.defaultText) {
592
+ this.boxShadow = 1;
593
+ }
594
+ else {
595
+ this.boxShadow = 2;
596
+ }
597
+ }
598
+ click(value) {
599
+ this.clicked = value.isTrusted;
600
+ }
601
+ ngOnInit() {
602
+ this.binding = this.defaultText;
603
+ }
604
+ get textClass() {
605
+ return this.defaultText === '' ? 'selected' : 'select';
606
+ }
607
+ get labelClass() {
608
+ return this.clicked === false ? 'label' : 'labelUp';
609
+ }
610
+ }
611
+ SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
612
+ SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: SelectComponent, selector: "ipt-select", inputs: { isRequired: "isRequired", data: "data", defaultText: "defaultText", selectCode: "selectCode", disabledSel: "disabledSel", control: "control" }, outputs: { eventSelect: "eventSelect" }, usesOnChanges: true, ngImport: i0, template: `
613
+ <div class="select-container">
614
+ <label [ngClass]="labelClass">{{ defaultText }}</label>
615
+ <select
616
+ [(ngModel)]="binding"
617
+ (ngModelChange)="seleccionar($event)"
618
+ (click)="click($event)"
619
+ [ngClass]="textClass"
620
+ [disabled]="disabledSel">
621
+ <option *ngFor="let item of data; index as i" [value]="item.code">
622
+ {{ item.name }} {{ item.prefix }}
623
+ </option>
624
+ </select>
625
+ </div>
626
+ `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}.select-container{position:relative;margin-top:30px}.select{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}.selected{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.5s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;background-color:#fff;padding-left:10px}select:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.select:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] });
627
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SelectComponent, decorators: [{
628
+ type: Component,
629
+ args: [{ selector: 'ipt-select', template: `
630
+ <div class="select-container">
631
+ <label [ngClass]="labelClass">{{ defaultText }}</label>
632
+ <select
633
+ [(ngModel)]="binding"
634
+ (ngModelChange)="seleccionar($event)"
635
+ (click)="click($event)"
636
+ [ngClass]="textClass"
637
+ [disabled]="disabledSel">
638
+ <option *ngFor="let item of data; index as i" [value]="item.code">
639
+ {{ item.name }} {{ item.prefix }}
640
+ </option>
641
+ </select>
642
+ </div>
643
+ `, styles: ["*{font-family:Poppins,sans-serif}.select-container{position:relative;margin-top:30px}.select{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}.selected{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;transition:.5s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;background-color:#fff;padding-left:10px}select:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.select:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"] }]
644
+ }], propDecorators: { isRequired: [{
645
+ type: Input
646
+ }], data: [{
647
+ type: Input
648
+ }], defaultText: [{
649
+ type: Input
650
+ }], selectCode: [{
651
+ type: Input
652
+ }], disabledSel: [{
653
+ type: Input
654
+ }], eventSelect: [{
655
+ type: Output
656
+ }], control: [{
657
+ type: Input
658
658
  }] } });
659
659
 
660
- class TextLinkComponent {
661
- constructor() {
662
- this.isClicked = new EventEmitter();
663
- }
664
- isLinkClicked() {
665
- this.isClicked.emit(true);
666
- }
667
- }
668
- TextLinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TextLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
669
- TextLinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: TextLinkComponent, selector: "ipt-text-link", inputs: { text: "text", blank: "blank", icon: "icon" }, outputs: { isClicked: "isClicked" }, ngImport: i0, template: `
670
- <a class="text-link" (click)='isLinkClicked()'>
671
- <p class="text-link__paragraph">
672
- <i class="{{icon}}" aria-hidden="true"></i>
673
- {{text}}
674
- </p>
675
- </a>
676
- `, isInline: true, styles: [".text-link{font-family:Poppins,sans-serif;font-size:1.1rem;color:gray;display:flex;flex-direction:row}.text-link__image{height:1rem;background-position:center;fill:#0ff;-webkit-print-color-adjust:aqua;color-adjust:aqua}.text-link__paragraph{margin:0;text-align:end}a:hover,a:focus,.text-link:hover,.text-link:focus{color:#1c77f7;cursor:pointer}@media (max-width: 1200px){.text-link{font-size:.9rem;width:160px}}@media (max-width: 450px){.text-link{font-size:.9rem;width:150px}}\n"] });
677
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TextLinkComponent, decorators: [{
678
- type: Component,
679
- args: [{ selector: 'ipt-text-link', template: `
680
- <a class="text-link" (click)='isLinkClicked()'>
681
- <p class="text-link__paragraph">
682
- <i class="{{icon}}" aria-hidden="true"></i>
683
- {{text}}
684
- </p>
685
- </a>
686
- `, styles: [".text-link{font-family:Poppins,sans-serif;font-size:1.1rem;color:gray;display:flex;flex-direction:row}.text-link__image{height:1rem;background-position:center;fill:#0ff;-webkit-print-color-adjust:aqua;color-adjust:aqua}.text-link__paragraph{margin:0;text-align:end}a:hover,a:focus,.text-link:hover,.text-link:focus{color:#1c77f7;cursor:pointer}@media (max-width: 1200px){.text-link{font-size:.9rem;width:160px}}@media (max-width: 450px){.text-link{font-size:.9rem;width:150px}}\n"] }]
687
- }], ctorParameters: function () { return []; }, propDecorators: { text: [{
688
- type: Input
689
- }], blank: [{
690
- type: Input
691
- }], icon: [{
692
- type: Input
693
- }], isClicked: [{
694
- type: Output
660
+ class TextLinkComponent {
661
+ constructor() {
662
+ this.isClicked = new EventEmitter();
663
+ }
664
+ isLinkClicked() {
665
+ this.isClicked.emit(true);
666
+ }
667
+ }
668
+ TextLinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TextLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
669
+ TextLinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: TextLinkComponent, selector: "ipt-text-link", inputs: { text: "text", blank: "blank", icon: "icon" }, outputs: { isClicked: "isClicked" }, ngImport: i0, template: `
670
+ <a class="text-link" (click)='isLinkClicked()'>
671
+ <p class="text-link__paragraph">
672
+ <i class="{{icon}}" aria-hidden="true"></i>
673
+ {{text}}
674
+ </p>
675
+ </a>
676
+ `, isInline: true, styles: [".text-link{font-family:Poppins,sans-serif;font-size:1.1rem;color:gray;display:flex;flex-direction:row}.text-link__image{height:1rem;background-position:center;fill:#0ff;-webkit-print-color-adjust:aqua;color-adjust:aqua}.text-link__paragraph{margin:0;text-align:end}a:hover,a:focus,.text-link:hover,.text-link:focus{color:#1c77f7;cursor:pointer}@media (max-width: 1200px){.text-link{font-size:.9rem;width:160px}}@media (max-width: 450px){.text-link{font-size:.9rem;width:150px}}\n"] });
677
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TextLinkComponent, decorators: [{
678
+ type: Component,
679
+ args: [{ selector: 'ipt-text-link', template: `
680
+ <a class="text-link" (click)='isLinkClicked()'>
681
+ <p class="text-link__paragraph">
682
+ <i class="{{icon}}" aria-hidden="true"></i>
683
+ {{text}}
684
+ </p>
685
+ </a>
686
+ `, styles: [".text-link{font-family:Poppins,sans-serif;font-size:1.1rem;color:gray;display:flex;flex-direction:row}.text-link__image{height:1rem;background-position:center;fill:#0ff;-webkit-print-color-adjust:aqua;color-adjust:aqua}.text-link__paragraph{margin:0;text-align:end}a:hover,a:focus,.text-link:hover,.text-link:focus{color:#1c77f7;cursor:pointer}@media (max-width: 1200px){.text-link{font-size:.9rem;width:160px}}@media (max-width: 450px){.text-link{font-size:.9rem;width:150px}}\n"] }]
687
+ }], ctorParameters: function () { return []; }, propDecorators: { text: [{
688
+ type: Input
689
+ }], blank: [{
690
+ type: Input
691
+ }], icon: [{
692
+ type: Input
693
+ }], isClicked: [{
694
+ type: Output
695
695
  }] } });
696
696
 
697
- class UserService {
698
- constructor(http) {
699
- this.http = http;
700
- this.SERVICE_URL = 'https://iptdev.com.co/lab/users/api/';
701
- }
702
- login(userLogin) {
703
- let serviceUrl = this.SERVICE_URL + 'post/login';
704
- this.generateRequestParams(userLogin);
705
- return this.http.post(serviceUrl, this.httpOptions);
706
- }
707
- resetPassword(resetPassword) {
708
- let serviceUrl = this.SERVICE_URL + 'reset/password';
709
- this.generateRequestParams(resetPassword);
710
- return this.http.post(serviceUrl, this.httpOptions);
711
- }
712
- register(user) {
713
- let serviceUrl = this.SERVICE_URL + 'post/create/web';
714
- this.generateRequestParams(user);
715
- return this.http.post(serviceUrl, this.httpOptions);
716
- }
717
- registerIndex(register) {
718
- let serviceUrl = this.SERVICE_URL + 'post/create/marketing';
719
- this.generateRequestParams(register);
720
- return this.http.post(serviceUrl, this.httpOptions);
721
- }
722
- registerDashboard(user) {
723
- let serviceUrl = this.SERVICE_URL + 'post/create/dashboard';
724
- this.generateRequestParams(user);
725
- return this.http.post(serviceUrl, this.httpOptions);
726
- }
727
- getAvailableTeachers(token) {
728
- let serviceUrl = this.SERVICE_URL + 'post/obtain/teachers';
729
- this.generateRequestParams(token);
730
- return this.http.post(serviceUrl, this.httpOptions);
731
- }
732
- getAllAdvisor(userToken) {
733
- let serviceUrl = this.SERVICE_URL + 'post/obtain/all/user/commercial';
734
- this.generateRequestParams(userToken);
735
- return this.http.post(serviceUrl, this.httpOptions);
736
- }
737
- getByRoleUser(codeRole) {
738
- let serviceUrl = this.SERVICE_URL + 'get/obtain/by/role/user/' + codeRole;
739
- return this.http.get(serviceUrl);
740
- }
741
- getUserStatistics(userToken) {
742
- let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/statistics';
743
- this.generateRequestParams(userToken);
744
- return this.http.post(serviceUrl, this.httpOptions);
745
- }
746
- getRoutesForRole(token) {
747
- let serviceUrl = this.SERVICE_URL + 'post/routes/role';
748
- this.generateRequestParams(token);
749
- return this.http.post(serviceUrl, this.httpOptions);
750
- }
751
- getStudents(token) {
752
- let serviceUrl = this.SERVICE_URL + 'post/obtain/students';
753
- this.generateRequestParams(token);
754
- return this.http.post(serviceUrl, this.httpOptions);
755
- }
756
- getStudent(token) {
757
- let serviceUrl = this.SERVICE_URL + 'post/obtain/student';
758
- this.generateRequestParams(token);
759
- return this.http.post(serviceUrl, this.httpOptions);
760
- }
761
- generateRequestParams(param) {
762
- this.httpOptions = {
763
- header: new HttpHeaders(),
764
- params: param,
765
- };
766
- }
767
- }
768
- UserService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: UserService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
769
- UserService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: UserService, providedIn: 'root' });
770
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: UserService, decorators: [{
771
- type: Injectable,
772
- args: [{
773
- providedIn: 'root',
774
- }]
697
+ class UserService {
698
+ constructor(http) {
699
+ this.http = http;
700
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/users/api/';
701
+ }
702
+ login(userLogin) {
703
+ let serviceUrl = this.SERVICE_URL + 'post/login';
704
+ this.generateRequestParams(userLogin);
705
+ return this.http.post(serviceUrl, this.httpOptions);
706
+ }
707
+ resetPassword(resetPassword) {
708
+ let serviceUrl = this.SERVICE_URL + 'reset/password';
709
+ this.generateRequestParams(resetPassword);
710
+ return this.http.post(serviceUrl, this.httpOptions);
711
+ }
712
+ register(user) {
713
+ let serviceUrl = this.SERVICE_URL + 'post/create/web';
714
+ this.generateRequestParams(user);
715
+ return this.http.post(serviceUrl, this.httpOptions);
716
+ }
717
+ registerIndex(register) {
718
+ let serviceUrl = this.SERVICE_URL + 'post/create/marketing';
719
+ this.generateRequestParams(register);
720
+ return this.http.post(serviceUrl, this.httpOptions);
721
+ }
722
+ registerDashboard(user) {
723
+ let serviceUrl = this.SERVICE_URL + 'post/create/dashboard';
724
+ this.generateRequestParams(user);
725
+ return this.http.post(serviceUrl, this.httpOptions);
726
+ }
727
+ getAvailableTeachers(token) {
728
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/teachers';
729
+ this.generateRequestParams(token);
730
+ return this.http.post(serviceUrl, this.httpOptions);
731
+ }
732
+ getAllAdvisor(userToken) {
733
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/all/user/commercial';
734
+ this.generateRequestParams(userToken);
735
+ return this.http.post(serviceUrl, this.httpOptions);
736
+ }
737
+ getByRoleUser(codeRole) {
738
+ let serviceUrl = this.SERVICE_URL + 'get/obtain/by/role/user/' + codeRole;
739
+ return this.http.get(serviceUrl);
740
+ }
741
+ getUserStatistics(userToken) {
742
+ let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/statistics';
743
+ this.generateRequestParams(userToken);
744
+ return this.http.post(serviceUrl, this.httpOptions);
745
+ }
746
+ getRoutesForRole(token) {
747
+ let serviceUrl = this.SERVICE_URL + 'post/routes/role';
748
+ this.generateRequestParams(token);
749
+ return this.http.post(serviceUrl, this.httpOptions);
750
+ }
751
+ getStudents(token) {
752
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/students';
753
+ this.generateRequestParams(token);
754
+ return this.http.post(serviceUrl, this.httpOptions);
755
+ }
756
+ getStudent(token) {
757
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/student';
758
+ this.generateRequestParams(token);
759
+ return this.http.post(serviceUrl, this.httpOptions);
760
+ }
761
+ generateRequestParams(param) {
762
+ this.httpOptions = {
763
+ header: new HttpHeaders(),
764
+ params: param,
765
+ };
766
+ }
767
+ }
768
+ UserService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: UserService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
769
+ UserService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: UserService, providedIn: 'root' });
770
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: UserService, decorators: [{
771
+ type: Injectable,
772
+ args: [{
773
+ providedIn: 'root',
774
+ }]
775
775
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
776
776
 
777
- class StorageService {
778
- constructor() {
779
- this.currentSession = null;
780
- this.localStorageService = localStorage;
781
- this.currentSession = this.loadSessionData();
782
- }
783
- setCurrentSession(session) {
784
- this.currentSession = session;
785
- this.localStorageService.setItem('606a7d4e73650b75ebb06972e77d6cc4', JSON.stringify(session));
786
- }
787
- loadSessionData() {
788
- var sessionStr = this.localStorageService.getItem('606a7d4e73650b75ebb06972e77d6cc4');
789
- return (sessionStr) ? JSON.parse(sessionStr) : null;
790
- }
791
- getCurrentSession() {
792
- return this.currentSession;
793
- }
794
- removeCurrentSession() {
795
- this.localStorageService.removeItem('606a7d4e73650b75ebb06972e77d6cc4');
796
- this.currentSession = null;
797
- }
798
- getCurrentUser() {
799
- var session = this.getCurrentSession();
800
- return (session && session.user) ? session.user : null;
801
- }
802
- ;
803
- isAuthenticated() {
804
- return (this.getCurrentToken() != null) ? true : false;
805
- }
806
- ;
807
- getCurrentToken() {
808
- var session = this.getCurrentSession();
809
- return (session && session.token) ? session.token : null;
810
- }
811
- ;
812
- logout() {
813
- this.removeCurrentSession();
814
- }
815
- }
816
- StorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
817
- StorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, providedIn: 'root' });
818
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, decorators: [{
819
- type: Injectable,
820
- args: [{
821
- providedIn: 'root',
822
- }]
777
+ class StorageService {
778
+ constructor() {
779
+ this.currentSession = null;
780
+ this.localStorageService = localStorage;
781
+ this.currentSession = this.loadSessionData();
782
+ }
783
+ setCurrentSession(session) {
784
+ this.currentSession = session;
785
+ this.localStorageService.setItem('606a7d4e73650b75ebb06972e77d6cc4', JSON.stringify(session));
786
+ }
787
+ loadSessionData() {
788
+ var sessionStr = this.localStorageService.getItem('606a7d4e73650b75ebb06972e77d6cc4');
789
+ return (sessionStr) ? JSON.parse(sessionStr) : null;
790
+ }
791
+ getCurrentSession() {
792
+ return this.currentSession;
793
+ }
794
+ removeCurrentSession() {
795
+ this.localStorageService.removeItem('606a7d4e73650b75ebb06972e77d6cc4');
796
+ this.currentSession = null;
797
+ }
798
+ getCurrentUser() {
799
+ var session = this.getCurrentSession();
800
+ return (session && session.user) ? session.user : null;
801
+ }
802
+ ;
803
+ isAuthenticated() {
804
+ return (this.getCurrentToken() != null) ? true : false;
805
+ }
806
+ ;
807
+ getCurrentToken() {
808
+ var session = this.getCurrentSession();
809
+ return (session && session.token) ? session.token : null;
810
+ }
811
+ ;
812
+ logout() {
813
+ this.removeCurrentSession();
814
+ }
815
+ }
816
+ StorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
817
+ StorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, providedIn: 'root' });
818
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, decorators: [{
819
+ type: Injectable,
820
+ args: [{
821
+ providedIn: 'root',
822
+ }]
823
823
  }], ctorParameters: function () { return []; } });
824
824
 
825
- class BaseService {
826
- constructor(userService, storageService) {
827
- this.userService = userService;
828
- this.storageService = storageService;
829
- }
830
- webLogin(user, password) {
831
- let request = {
832
- user: user,
833
- password: password
834
- };
835
- let service = this.userService;
836
- let storage = this.storageService;
837
- return new Promise(function (resolve, reject) {
838
- service.login(request).subscribe(response => {
839
- switch (response.message.code) {
840
- case 1:
841
- Swal.fire({
842
- 'title': '<p style="font-family: Poppins"">Perfect!</p>',
843
- 'html': '<p style="font-family: Poppins"">Succesfull login</p>',
844
- 'icon': 'success',
845
- });
846
- const loginRegisterUser = {
847
- token: response.data.token,
848
- user: response.data,
849
- };
850
- storage.setCurrentSession(loginRegisterUser);
851
- resolve(true);
852
- break;
853
- case 2:
854
- Swal.fire({
855
- 'title': '<p style="font-family: Poppins"">Warning!</p>',
856
- 'html': '<p style="font-family: Poppins"">The data does not correspond to a user registered in our system, please review them.</p>',
857
- 'icon': 'warning',
858
- });
859
- resolve(false);
860
- break;
861
- case 3:
862
- Swal.fire({
863
- 'title': '<p style="font-family: Poppins"">Error!</p>',
864
- 'html': '<p style="font-family: Poppins"">The input data does not meet the established parameters.</p>',
865
- 'icon': 'error',
866
- });
867
- resolve(false);
868
- break;
869
- default:
870
- Swal.fire({
871
- 'title': '<p style="font-family: Poppins"">Error!</p>',
872
- 'html': '<p style="font-family: Poppins"">An unexpected error has occurred</p>',
873
- 'icon': 'error',
874
- });
875
- resolve(false);
876
- break;
877
- }
878
- reject('Unhandled exception');
879
- });
880
- });
881
- }
882
- getUserRole() {
883
- let user = this.storageService.getCurrentUser()?.role;
884
- return user === undefined ? -1 : user;
885
- }
886
- getUserToken() {
887
- let token = this.storageService.getCurrentUser()?.token;
888
- return token === undefined ? '-1' : token;
889
- }
890
- getUserName() {
891
- let user = this.storageService.getCurrentUser();
892
- let response = user === null ? '' : user.name;
893
- return response;
894
- }
895
- registerUserFromDashboard(registerDashboardRq) {
896
- let request = registerDashboardRq;
897
- let service = this.userService;
898
- return new Promise(function (resolve, reject) {
899
- service.registerDashboard(request).subscribe((response) => {
900
- switch (response.message.code) {
901
- case 1:
902
- Swal.fire({
903
- 'title': '<p style="font-family: Poppins"">Perfect!</p>',
904
- 'html': '<p style="font-family: Poppins"">Sucesfull register!</p>',
905
- 'icon': 'success',
906
- });
907
- resolve(true);
908
- break;
909
- case 3:
910
- Swal.fire({
911
- 'title': '<p style="font-family: Poppins"">Error!</p>',
912
- 'html': '<p style="font-family: Poppins"">The input data does not meet the established parameters.</p>',
913
- 'icon': 'error',
914
- });
915
- resolve(false);
916
- break;
917
- case 4:
918
- Swal.fire({
919
- 'title': '<p style="font-family: Poppins">Ups!</p>',
920
- 'html': '<p style="font-family: Poppins">The input data has a high relation with a user that already exists!</p>',
921
- 'icon': 'warning',
922
- });
923
- resolve(false);
924
- break;
925
- default:
926
- Swal.fire({
927
- 'title': '<p style="font-family: Poppins"">Error!</p>',
928
- 'html': '<p style="font-family: Poppins"">An unexpected error has occurred</p>',
929
- 'icon': 'error',
930
- });
931
- resolve(false);
932
- break;
933
- }
934
- reject('Unhandled exception');
935
- });
936
- });
937
- }
938
- jsonToArray(data) {
939
- var response = [];
940
- data.forEach((element) => {
941
- var object = [];
942
- for (var clave in element) {
943
- if (element.hasOwnProperty(clave)) {
944
- if (typeof element[clave] == 'object') {
945
- element[clave] = this.subJsonToArray(element[clave]);
946
- }
947
- object.push(element[clave]);
948
- }
949
- }
950
- response.push(object);
951
- });
952
- return response;
953
- }
954
- subJsonToArray(data) {
955
- var object = '';
956
- for (var clave in data) {
957
- if (clave != 'code') {
958
- object += '\n' + data[clave];
959
- }
960
- }
961
- return object;
962
- }
963
- }
964
- BaseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BaseService, deps: [{ token: UserService }, { token: StorageService }], target: i0.ɵɵFactoryTarget.Injectable });
965
- BaseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BaseService, providedIn: 'root' });
966
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BaseService, decorators: [{
967
- type: Injectable,
968
- args: [{
969
- providedIn: 'root',
970
- }]
971
- }], ctorParameters: function () { return [{ type: UserService }, { type: StorageService }]; } });
972
-
973
- class LoginFormComponent {
974
- constructor(fb, baseService) {
975
- this.baseService = baseService;
976
- this.isLogged = new EventEmitter();
977
- this.loginForm = fb.group({
978
- email: ['', [Validators.required]],
979
- password: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(15)]],
980
- });
981
- }
982
- login(data) {
983
- this.baseService.webLogin(data.controls['email'].value, data.controls['password'].value).then((isLogged) => {
984
- this.isLogged.emit(isLogged);
985
- });
986
- }
987
- }
988
- LoginFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoginFormComponent, deps: [{ token: i1$1.FormBuilder }, { token: BaseService }], target: i0.ɵɵFactoryTarget.Component });
989
- LoginFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LoginFormComponent, selector: "ipt-login-form", outputs: { isLogged: "isLogged" }, ngImport: i0, template: `
990
- <div class="form-container">
991
-
992
- <h2 style="text-align: center;">IPT PLATFORM</h2>
993
- <hr>
994
-
995
- <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
996
- <ipt-input
997
- [inputType]="'text'"
998
- [placeHolder]="'Email'"
999
- [validateText]="'Debe ser @inglesparatodos.edu.co'"
1000
- [control]="loginForm.controls['email']"
1001
- ></ipt-input>
1002
-
1003
- <ipt-input
1004
- [inputType]="'password'"
1005
- [placeHolder]="'Password'"
1006
- [control]="loginForm.controls['password']"
1007
- ></ipt-input>
1008
- </form>
1009
-
1010
- <div class="button-container">
1011
- <ipt-button
1012
- [label]="'Login'"
1013
- [primary]="true"
1014
- [isEnabled]="loginForm.valid"
1015
- (onClick)="login(loginForm)"
1016
- ></ipt-button>
1017
- </div>
1018
-
1019
- </div>
1020
- `, 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: InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { type: ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }], directives: [{ 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"] }] });
1021
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoginFormComponent, decorators: [{
1022
- type: Component,
1023
- args: [{ selector: 'ipt-login-form', template: `
1024
- <div class="form-container">
1025
-
1026
- <h2 style="text-align: center;">IPT PLATFORM</h2>
1027
- <hr>
1028
-
1029
- <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
1030
- <ipt-input
1031
- [inputType]="'text'"
1032
- [placeHolder]="'Email'"
1033
- [validateText]="'Debe ser @inglesparatodos.edu.co'"
1034
- [control]="loginForm.controls['email']"
1035
- ></ipt-input>
1036
-
1037
- <ipt-input
1038
- [inputType]="'password'"
1039
- [placeHolder]="'Password'"
1040
- [control]="loginForm.controls['password']"
1041
- ></ipt-input>
1042
- </form>
1043
-
1044
- <div class="button-container">
1045
- <ipt-button
1046
- [label]="'Login'"
1047
- [primary]="true"
1048
- [isEnabled]="loginForm.valid"
1049
- (onClick)="login(loginForm)"
1050
- ></ipt-button>
1051
- </div>
1052
-
1053
- </div>
1054
- `, 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"] }]
1055
- }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: BaseService }]; }, propDecorators: { isLogged: [{
1056
- type: Output
825
+ class CalendarService {
826
+ constructor(http) {
827
+ this.http = http;
828
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/calendar/api/';
829
+ }
830
+ postCreateQueryEvent(params) {
831
+ let serviceUrl = this.SERVICE_URL + 'post/event/create/query';
832
+ this.generateRequestParams(params);
833
+ return this.http.post(serviceUrl, this.httpOptions);
834
+ }
835
+ getEventByIdCalendar(idCalendar) {
836
+ let serviceUrl = this.SERVICE_URL + 'get/event/calendar/idcalendar/all/' + idCalendar;
837
+ return this.http.get(serviceUrl);
838
+ }
839
+ postEventByDayTime(params) {
840
+ let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/datetime';
841
+ this.generateRequestParams(params);
842
+ return this.http.post(serviceUrl, this.httpOptions);
843
+ }
844
+ generateRequestParams(param) {
845
+ this.httpOptions = {
846
+ header: new HttpHeaders(),
847
+ params: param,
848
+ };
849
+ }
850
+ }
851
+ CalendarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CalendarService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
852
+ CalendarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CalendarService, providedIn: 'root' });
853
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CalendarService, decorators: [{
854
+ type: Injectable,
855
+ args: [{
856
+ providedIn: 'root',
857
+ }]
858
+ }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
859
+
860
+ class BaseService {
861
+ constructor(userService, storageService, calendarService) {
862
+ this.userService = userService;
863
+ this.storageService = storageService;
864
+ this.calendarService = calendarService;
865
+ }
866
+ webLogin(user, password) {
867
+ let request = {
868
+ user: user,
869
+ password: password
870
+ };
871
+ let service = this.userService;
872
+ let storage = this.storageService;
873
+ return new Promise(function (resolve, reject) {
874
+ service.login(request).subscribe(response => {
875
+ switch (response.message.code) {
876
+ case 1:
877
+ Swal.fire({
878
+ 'title': '<p style="font-family: Poppins"">Perfect!</p>',
879
+ 'html': '<p style="font-family: Poppins"">Succesfull login</p>',
880
+ 'icon': 'success',
881
+ });
882
+ const loginRegisterUser = {
883
+ token: response.data.token,
884
+ user: response.data,
885
+ };
886
+ storage.setCurrentSession(loginRegisterUser);
887
+ resolve(true);
888
+ break;
889
+ case 2:
890
+ Swal.fire({
891
+ 'title': '<p style="font-family: Poppins"">Warning!</p>',
892
+ 'html': '<p style="font-family: Poppins"">The data does not correspond to a user registered in our system, please review them.</p>',
893
+ 'icon': 'warning',
894
+ });
895
+ resolve(false);
896
+ break;
897
+ case 3:
898
+ Swal.fire({
899
+ 'title': '<p style="font-family: Poppins"">Error!</p>',
900
+ 'html': '<p style="font-family: Poppins"">The input data does not meet the established parameters.</p>',
901
+ 'icon': 'error',
902
+ });
903
+ resolve(false);
904
+ break;
905
+ default:
906
+ Swal.fire({
907
+ 'title': '<p style="font-family: Poppins"">Error!</p>',
908
+ 'html': '<p style="font-family: Poppins"">An unexpected error has occurred</p>',
909
+ 'icon': 'error',
910
+ });
911
+ resolve(false);
912
+ break;
913
+ }
914
+ reject('Unhandled exception');
915
+ });
916
+ });
917
+ }
918
+ getCronogramAvailability(isTeacher, code, startDate, numClass, weekDays, startTime, endTime) {
919
+ let request = {
920
+ isTeacher: isTeacher,
921
+ code: code,
922
+ startDate: startDate,
923
+ numClass: numClass,
924
+ weekDays: weekDays,
925
+ startTime: startTime,
926
+ endTime: endTime,
927
+ };
928
+ let service = this.calendarService;
929
+ return new Promise(function (resolve, reject) {
930
+ service.postCreateQueryEvent(request).subscribe((response) => {
931
+ switch (response.message.code) {
932
+ case 1:
933
+ resolve(response.data);
934
+ break;
935
+ default:
936
+ reject('Unhandled exception');
937
+ }
938
+ reject('Unhandled exception');
939
+ });
940
+ });
941
+ }
942
+ getUserRole() {
943
+ let user = this.storageService.getCurrentUser()?.role;
944
+ return user === undefined ? -1 : user;
945
+ }
946
+ getUserToken() {
947
+ let token = this.storageService.getCurrentUser()?.token;
948
+ return token === undefined ? '-1' : token;
949
+ }
950
+ getUserName() {
951
+ let user = this.storageService.getCurrentUser();
952
+ let response = user === null ? '' : user.name;
953
+ return response;
954
+ }
955
+ registerUserFromDashboard(registerDashboardRq) {
956
+ let request = registerDashboardRq;
957
+ let service = this.userService;
958
+ return new Promise(function (resolve, reject) {
959
+ service.registerDashboard(request).subscribe((response) => {
960
+ switch (response.message.code) {
961
+ case 1:
962
+ Swal.fire({
963
+ 'title': '<p style="font-family: Poppins"">Perfect!</p>',
964
+ 'html': '<p style="font-family: Poppins"">Sucesfull register!</p>',
965
+ 'icon': 'success',
966
+ });
967
+ resolve(true);
968
+ break;
969
+ case 3:
970
+ Swal.fire({
971
+ 'title': '<p style="font-family: Poppins"">Error!</p>',
972
+ 'html': '<p style="font-family: Poppins"">The input data does not meet the established parameters.</p>',
973
+ 'icon': 'error',
974
+ });
975
+ resolve(false);
976
+ break;
977
+ case 4:
978
+ Swal.fire({
979
+ 'title': '<p style="font-family: Poppins">Ups!</p>',
980
+ 'html': '<p style="font-family: Poppins">The input data has a high relation with a user that already exists!</p>',
981
+ 'icon': 'warning',
982
+ });
983
+ resolve(false);
984
+ break;
985
+ default:
986
+ Swal.fire({
987
+ 'title': '<p style="font-family: Poppins"">Error!</p>',
988
+ 'html': '<p style="font-family: Poppins"">An unexpected error has occurred</p>',
989
+ 'icon': 'error',
990
+ });
991
+ resolve(false);
992
+ break;
993
+ }
994
+ reject('Unhandled exception');
995
+ });
996
+ });
997
+ }
998
+ jsonToArray(data) {
999
+ var response = [];
1000
+ data.forEach((element) => {
1001
+ var object = [];
1002
+ for (var clave in element) {
1003
+ if (element.hasOwnProperty(clave)) {
1004
+ if (typeof element[clave] == 'object') {
1005
+ element[clave] = this.subJsonToArray(element[clave]);
1006
+ }
1007
+ object.push(element[clave]);
1008
+ }
1009
+ }
1010
+ response.push(object);
1011
+ });
1012
+ return response;
1013
+ }
1014
+ subJsonToArray(data) {
1015
+ var object = '';
1016
+ for (var clave in data) {
1017
+ if (clave != 'code') {
1018
+ object += '\n' + data[clave];
1019
+ }
1020
+ }
1021
+ return object;
1022
+ }
1023
+ }
1024
+ BaseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BaseService, deps: [{ token: UserService }, { token: StorageService }, { token: CalendarService }], target: i0.ɵɵFactoryTarget.Injectable });
1025
+ BaseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BaseService, providedIn: 'root' });
1026
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BaseService, decorators: [{
1027
+ type: Injectable,
1028
+ args: [{
1029
+ providedIn: 'root',
1030
+ }]
1031
+ }], ctorParameters: function () { return [{ type: UserService }, { type: StorageService }, { type: CalendarService }]; } });
1032
+
1033
+ class LoginFormComponent {
1034
+ constructor(fb, baseService) {
1035
+ this.baseService = baseService;
1036
+ this.isLogged = new EventEmitter();
1037
+ this.loginForm = fb.group({
1038
+ email: ['', [Validators.required]],
1039
+ password: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(15)]],
1040
+ });
1041
+ }
1042
+ login(data) {
1043
+ this.baseService.webLogin(data.controls['email'].value, data.controls['password'].value).then((isLogged) => {
1044
+ this.isLogged.emit(isLogged);
1045
+ });
1046
+ }
1047
+ }
1048
+ LoginFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoginFormComponent, deps: [{ token: i1$1.FormBuilder }, { token: BaseService }], target: i0.ɵɵFactoryTarget.Component });
1049
+ LoginFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LoginFormComponent, selector: "ipt-login-form", outputs: { isLogged: "isLogged" }, ngImport: i0, template: `
1050
+ <div class="form-container">
1051
+
1052
+ <h2 style="text-align: center;">IPT PLATFORM</h2>
1053
+ <hr>
1054
+
1055
+ <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
1056
+ <ipt-input
1057
+ [inputType]="'text'"
1058
+ [placeHolder]="'Email'"
1059
+ [validateText]="'Debe ser @inglesparatodos.edu.co'"
1060
+ [control]="loginForm.controls['email']"
1061
+ ></ipt-input>
1062
+
1063
+ <ipt-input
1064
+ [inputType]="'password'"
1065
+ [placeHolder]="'Password'"
1066
+ [control]="loginForm.controls['password']"
1067
+ ></ipt-input>
1068
+ </form>
1069
+
1070
+ <div class="button-container">
1071
+ <ipt-button
1072
+ [label]="'Login'"
1073
+ [primary]="true"
1074
+ [isEnabled]="loginForm.valid"
1075
+ (onClick)="login(loginForm)"
1076
+ ></ipt-button>
1077
+ </div>
1078
+
1079
+ </div>
1080
+ `, 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: InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { type: ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }], directives: [{ 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"] }] });
1081
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoginFormComponent, decorators: [{
1082
+ type: Component,
1083
+ args: [{ selector: 'ipt-login-form', template: `
1084
+ <div class="form-container">
1085
+
1086
+ <h2 style="text-align: center;">IPT PLATFORM</h2>
1087
+ <hr>
1088
+
1089
+ <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
1090
+ <ipt-input
1091
+ [inputType]="'text'"
1092
+ [placeHolder]="'Email'"
1093
+ [validateText]="'Debe ser @inglesparatodos.edu.co'"
1094
+ [control]="loginForm.controls['email']"
1095
+ ></ipt-input>
1096
+
1097
+ <ipt-input
1098
+ [inputType]="'password'"
1099
+ [placeHolder]="'Password'"
1100
+ [control]="loginForm.controls['password']"
1101
+ ></ipt-input>
1102
+ </form>
1103
+
1104
+ <div class="button-container">
1105
+ <ipt-button
1106
+ [label]="'Login'"
1107
+ [primary]="true"
1108
+ [isEnabled]="loginForm.valid"
1109
+ (onClick)="login(loginForm)"
1110
+ ></ipt-button>
1111
+ </div>
1112
+
1113
+ </div>
1114
+ `, 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"] }]
1115
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: BaseService }]; }, propDecorators: { isLogged: [{
1116
+ type: Output
1057
1117
  }] } });
1058
1118
 
1059
- class ParameterService {
1060
- constructor(http) {
1061
- this.http = http;
1062
- this.SERVICE_URL = 'https://iptdev.com.co/lab/parameters/api/';
1063
- }
1064
- getIndicatives() {
1065
- let serviceUrl = this.SERVICE_URL + 'get/indicatives';
1066
- return this.http.get(serviceUrl);
1067
- }
1068
- getCardTypes(country) {
1069
- let serviceUrl = this.SERVICE_URL + 'get/id/card/type/country/' + country;
1070
- return this.http.get(serviceUrl);
1071
- }
1072
- getCountries() {
1073
- let serviceUrl = this.SERVICE_URL + 'get/countries';
1074
- return this.http.get(serviceUrl);
1075
- }
1076
- getStatesByCountry(country) {
1077
- let serviceUrl = this.SERVICE_URL + 'get/state/country/iso/' + country;
1078
- return this.http.get(serviceUrl);
1079
- }
1080
- getCitiesByState(state) {
1081
- let serviceUrl = this.SERVICE_URL + 'get/cities/state/' + state;
1082
- return this.http.get(serviceUrl);
1083
- }
1084
- getAllPlans() {
1085
- let serviceUrl = this.SERVICE_URL + 'get/all/plans';
1086
- return this.http.get(serviceUrl);
1087
- }
1088
- getLevels() {
1089
- let serviceUrl = this.SERVICE_URL + 'get/english/levels';
1090
- return this.http.get(serviceUrl);
1091
- }
1092
- getAgreements() {
1093
- let serviceUrl = this.SERVICE_URL + 'get/all/agreement';
1094
- return this.http.get(serviceUrl);
1095
- }
1096
- getAgreementByCategory(typeCategory) {
1097
- let serviceUrl = this.SERVICE_URL + 'get/agreement/by/category/' + typeCategory;
1098
- return this.http.get(serviceUrl);
1099
- }
1100
- getAllClassrooms() {
1101
- let serviceUrl = this.SERVICE_URL + 'get/all/classroom';
1102
- return this.http.get(serviceUrl);
1103
- }
1104
- getCoursesTypes() {
1105
- let serviceUrl = this.SERVICE_URL + 'get/all/course/type';
1106
- return this.http.get(serviceUrl);
1107
- }
1108
- getCoursesTypesByPlan(typePlan) {
1109
- let serviceUrl = this.SERVICE_URL + 'get/course/by/plan/' + typePlan;
1110
- return this.http.get(serviceUrl);
1111
- }
1112
- getDegrees() {
1113
- let serviceUrl = this.SERVICE_URL + 'get/all/degrees';
1114
- return this.http.get(serviceUrl);
1115
- }
1116
- getProgramsByDegree(typeDegree) {
1117
- let serviceUrl = this.SERVICE_URL + 'get/programs/by/degree/' + typeDegree;
1118
- return this.http.get(serviceUrl);
1119
- }
1120
- getMarketingReasons() {
1121
- let serviceUrl = this.SERVICE_URL + 'get/all/mkt/reasons';
1122
- return this.http.get(serviceUrl);
1123
- }
1124
- getStudyReasons() {
1125
- let serviceUrl = this.SERVICE_URL + 'get/all/study/reasons';
1126
- return this.http.get(serviceUrl);
1127
- }
1128
- getAcademicUnits() {
1129
- let serviceUrl = this.SERVICE_URL + 'get/academic/units';
1130
- return this.http.get(serviceUrl);
1131
- }
1132
- getStatusContact() {
1133
- let serviceUrl = this.SERVICE_URL + 'get/contact/status/all';
1134
- return this.http.get(serviceUrl);
1135
- }
1136
- getTypePlan() {
1137
- let serviceUrl = this.SERVICE_URL + 'get/all/plans';
1138
- return this.http.get(serviceUrl);
1139
- }
1140
- getTypePlanDiscount() {
1141
- let serviceUrl = this.SERVICE_URL + 'get/discount/all/plans';
1142
- return this.http.get(serviceUrl);
1143
- }
1144
- getContactedType() {
1145
- let serviceUrl = this.SERVICE_URL + 'get/contact/contacted/all';
1146
- return this.http.get(serviceUrl);
1147
- }
1148
- getStatusByCode(codeStatus) {
1149
- let serviceUrl = this.SERVICE_URL + 'get/contact/status/bycode/' + codeStatus;
1150
- return this.http.get(serviceUrl);
1151
- }
1152
- getAllTypeDiscount() {
1153
- let serviceUrl = this.SERVICE_URL + 'get/commercial/typediscounts/all';
1154
- return this.http.get(serviceUrl);
1155
- }
1156
- getAllCourseModality() {
1157
- let serviceUrl = this.SERVICE_URL + 'get/all/course/modality';
1158
- return this.http.get(serviceUrl);
1159
- }
1160
- }
1161
- 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 });
1162
- ParameterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, providedIn: 'root' });
1163
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, decorators: [{
1164
- type: Injectable,
1165
- args: [{
1166
- providedIn: 'root',
1167
- }]
1119
+ class ParameterService {
1120
+ constructor(http) {
1121
+ this.http = http;
1122
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/parameters/api/';
1123
+ }
1124
+ getIndicatives() {
1125
+ let serviceUrl = this.SERVICE_URL + 'get/indicatives';
1126
+ return this.http.get(serviceUrl);
1127
+ }
1128
+ getCardTypes(country) {
1129
+ let serviceUrl = this.SERVICE_URL + 'get/id/card/type/country/' + country;
1130
+ return this.http.get(serviceUrl);
1131
+ }
1132
+ getCountries() {
1133
+ let serviceUrl = this.SERVICE_URL + 'get/countries';
1134
+ return this.http.get(serviceUrl);
1135
+ }
1136
+ getStatesByCountry(country) {
1137
+ let serviceUrl = this.SERVICE_URL + 'get/state/country/iso/' + country;
1138
+ return this.http.get(serviceUrl);
1139
+ }
1140
+ getCitiesByState(state) {
1141
+ let serviceUrl = this.SERVICE_URL + 'get/cities/state/' + state;
1142
+ return this.http.get(serviceUrl);
1143
+ }
1144
+ getAllPlans() {
1145
+ let serviceUrl = this.SERVICE_URL + 'get/all/plans';
1146
+ return this.http.get(serviceUrl);
1147
+ }
1148
+ getLevels() {
1149
+ let serviceUrl = this.SERVICE_URL + 'get/english/levels';
1150
+ return this.http.get(serviceUrl);
1151
+ }
1152
+ getAgreements() {
1153
+ let serviceUrl = this.SERVICE_URL + 'get/all/agreement';
1154
+ return this.http.get(serviceUrl);
1155
+ }
1156
+ getAgreementByCategory(typeCategory) {
1157
+ let serviceUrl = this.SERVICE_URL + 'get/agreement/by/category/' + typeCategory;
1158
+ return this.http.get(serviceUrl);
1159
+ }
1160
+ getAllClassrooms() {
1161
+ let serviceUrl = this.SERVICE_URL + 'get/all/classroom';
1162
+ return this.http.get(serviceUrl);
1163
+ }
1164
+ getCoursesTypes() {
1165
+ let serviceUrl = this.SERVICE_URL + 'get/all/course/type';
1166
+ return this.http.get(serviceUrl);
1167
+ }
1168
+ getCoursesTypesByPlan(typePlan) {
1169
+ let serviceUrl = this.SERVICE_URL + 'get/course/by/plan/' + typePlan;
1170
+ return this.http.get(serviceUrl);
1171
+ }
1172
+ getDegrees() {
1173
+ let serviceUrl = this.SERVICE_URL + 'get/all/degrees';
1174
+ return this.http.get(serviceUrl);
1175
+ }
1176
+ getProgramsByDegree(typeDegree) {
1177
+ let serviceUrl = this.SERVICE_URL + 'get/programs/by/degree/' + typeDegree;
1178
+ return this.http.get(serviceUrl);
1179
+ }
1180
+ getMarketingReasons() {
1181
+ let serviceUrl = this.SERVICE_URL + 'get/all/mkt/reasons';
1182
+ return this.http.get(serviceUrl);
1183
+ }
1184
+ getStudyReasons() {
1185
+ let serviceUrl = this.SERVICE_URL + 'get/all/study/reasons';
1186
+ return this.http.get(serviceUrl);
1187
+ }
1188
+ getAcademicUnits() {
1189
+ let serviceUrl = this.SERVICE_URL + 'get/academic/units';
1190
+ return this.http.get(serviceUrl);
1191
+ }
1192
+ getStatusContact() {
1193
+ let serviceUrl = this.SERVICE_URL + 'get/contact/status/all';
1194
+ return this.http.get(serviceUrl);
1195
+ }
1196
+ getTypePlan() {
1197
+ let serviceUrl = this.SERVICE_URL + 'get/all/plans';
1198
+ return this.http.get(serviceUrl);
1199
+ }
1200
+ getTypePlanDiscount() {
1201
+ let serviceUrl = this.SERVICE_URL + 'get/discount/all/plans';
1202
+ return this.http.get(serviceUrl);
1203
+ }
1204
+ getContactedType() {
1205
+ let serviceUrl = this.SERVICE_URL + 'get/contact/contacted/all';
1206
+ return this.http.get(serviceUrl);
1207
+ }
1208
+ getStatusByCode(codeStatus) {
1209
+ let serviceUrl = this.SERVICE_URL + 'get/contact/status/bycode/' + codeStatus;
1210
+ return this.http.get(serviceUrl);
1211
+ }
1212
+ getAllTypeDiscount() {
1213
+ let serviceUrl = this.SERVICE_URL + 'get/commercial/typediscounts/all';
1214
+ return this.http.get(serviceUrl);
1215
+ }
1216
+ getAllCourseModality() {
1217
+ let serviceUrl = this.SERVICE_URL + 'get/all/course/modality';
1218
+ return this.http.get(serviceUrl);
1219
+ }
1220
+ }
1221
+ 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 });
1222
+ ParameterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, providedIn: 'root' });
1223
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, decorators: [{
1224
+ type: Injectable,
1225
+ args: [{
1226
+ providedIn: 'root',
1227
+ }]
1168
1228
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
1169
1229
 
1170
- class CreateUserFormComponent {
1171
- constructor(fb, parameterService, userService) {
1172
- this.fb = fb;
1173
- this.parameterService = parameterService;
1174
- this.userService = userService;
1175
- this.visibility = false;
1176
- this.userCreated = new EventEmitter(false);
1177
- this.onHide = new EventEmitter(false);
1178
- this.loader = false;
1179
- this.photo = '';
1180
- }
1181
- ngOnInit() {
1182
- this.initForm();
1183
- this.getParameters();
1184
- }
1185
- closeModal() {
1186
- this.visibility = false;
1187
- this.onHide.emit(true);
1188
- }
1189
- createUser() {
1190
- this.loader = true;
1191
- let request = {
1192
- name: this.createUserForm.controls['name'].value,
1193
- last_name: this.createUserForm.controls['last_name'].value,
1194
- id_card_type: this.createUserForm.controls['id_card_type'].value,
1195
- id_card: this.createUserForm.controls['id_card'].value,
1196
- phone_indicative: this.createUserForm.controls['phone_indicative'].value,
1197
- phone_number: this.createUserForm.controls['phone_number'].value,
1198
- email: this.createUserForm.controls['email'].value,
1199
- city: this.createUserForm.controls['city'].value,
1200
- service_hour: this.createUserForm.controls['service_hour'].value,
1201
- role: this.createUserForm.controls['role'].value,
1202
- password: this.createUserForm.controls['password'].value,
1203
- };
1204
- this.userService.registerDashboard(request).subscribe((response) => {
1205
- console.log(response.message);
1206
- switch (response.message.code) {
1207
- case 1:
1208
- this.userCreated.emit(true);
1209
- this.initForm();
1210
- break;
1211
- case 2:
1212
- throw new Error("Los datos ingresados no corresponden a un usuario registrado en nuestro sistema, por favor reviselos.");
1213
- case 3:
1214
- throw new Error("Los datos ingresados no cumplen los parámetros establecidos");
1215
- default:
1216
- break;
1217
- }
1218
- this.loader = false;
1219
- });
1220
- }
1221
- getParameters() {
1222
- this.parameterService.getIndicatives().subscribe((response) => {
1223
- this.phoneNumberIndicatives = response.data;
1224
- });
1225
- this.parameterService.getCardTypes('col').subscribe((response) => {
1226
- this.idTypes = response.data;
1227
- });
1228
- this.parameterService.getStatesByCountry('col').subscribe((response) => {
1229
- this.states = response.data;
1230
- });
1231
- }
1232
- getRolesOptions() {
1233
- // Estudiante
1234
- if (this.userType === 'student') {
1235
- this.setPhoto('student');
1236
- return [
1237
- { code: '13', name: 'Student' },
1238
- ];
1239
- }
1240
- // Académico
1241
- if (this.userType === 'academic') {
1242
- this.setPhoto('academic');
1243
- return [
1244
- { code: '11', name: 'Teacher PRO' },
1245
- { code: '12', name: 'Teacher' },
1246
- ];
1247
- }
1248
- // Administrativo
1249
- if (this.userType === 'administrative') {
1250
- this.setPhoto('administrative');
1251
- return [
1252
- { code: '31', name: 'Administrative Supervisor' },
1253
- { code: '32', name: 'Administrative Advisor' },
1254
- ];
1255
- }
1256
- // Marketing
1257
- if (this.userType === 'marketing') {
1258
- this.setPhoto('marketing');
1259
- return [
1260
- { code: '21', name: 'Marketing Supervisor' },
1261
- { code: '22', name: 'Marketing Advisor' },
1262
- ];
1263
- }
1264
- // Comercial
1265
- if (this.userType === 'commercial') {
1266
- this.setPhoto('commercial');
1267
- return [
1268
- { code: '41', name: 'Commercial Supervisor' },
1269
- { code: '42', name: 'Commercial Advisor' },
1270
- ];
1271
- }
1272
- // Cartera
1273
- if (this.userType === 'treasure') {
1274
- this.setPhoto('treasure');
1275
- return [
1276
- { code: '51', name: 'Treauser Supervisor' },
1277
- { code: '52', name: 'Treauser Advisor' },
1278
- ];
1279
- }
1280
- }
1281
- initForm() {
1282
- this.createUserForm = this.fb.group({
1283
- name: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(32)],],
1284
- last_name: ['', [Validators.required, Validators.minLength(5), Validators.maxLength(32),],],
1285
- email: ['', [Validators.required, Validators.maxLength(300)]],
1286
- id_card_type: ['', [Validators.required]],
1287
- id_card: ['', [Validators.required, Validators.minLength(5), Validators.maxLength(20),]],
1288
- phone_indicative: ['', [Validators.required]],
1289
- city: ['', [Validators.required]],
1290
- role: ['', [Validators.required]],
1291
- service_hour: ['', [Validators.required]],
1292
- phone_number: ['', [Validators.required, Validators.minLength(10), Validators.maxLength(15)]],
1293
- password: ['', [Validators.required, Validators.minLength(7), Validators.maxLength(32)]],
1294
- re_password: ['', [Validators.required, Validators.minLength(7), Validators.maxLength(32)]],
1295
- state: [''],
1296
- });
1297
- }
1298
- setPhoto(type) {
1299
- if (type === 'student')
1300
- this.photo = '../../../assets/user-form-assets/estudiante.jpg';
1301
- if (type === 'academic')
1302
- this.photo = '../../../assets/user-form-assets/academico.png';
1303
- if (type === 'administrative')
1304
- this.photo = '../../../assets/user-form-assets/administrativo.jpg';
1305
- if (type === 'marketing')
1306
- this.photo = '../../../assets/user-form-assets/marketing.jpg';
1307
- if (type === 'commercial')
1308
- this.photo = '../../../assets/user-form-assets/comercial.jpg';
1309
- if (type === 'treasure')
1310
- this.photo = '../../../assets/user-form-assets/administrativo.jpg';
1311
- }
1312
- selectRol(role) {
1313
- if (role !== 'Seleccione el rol') {
1314
- this.createUserForm.controls['role'].setValue(role);
1315
- }
1316
- else {
1317
- this.createUserForm.controls['role'].setValue(null);
1318
- }
1319
- }
1320
- selectIndicatives(indicative) {
1321
- if (indicative !== 'Seleccione el indicativo') {
1322
- this.createUserForm.controls['phone_indicative'].setValue(indicative);
1323
- }
1324
- else {
1325
- this.createUserForm.controls['phone_indicative'].setValue(null);
1326
- }
1327
- }
1328
- selectIdType(idType) {
1329
- if (idType !== 'Ingrese el tipo de documento') {
1330
- this.createUserForm.controls['id_card_type'].setValue(idType);
1331
- }
1332
- else {
1333
- this.createUserForm.controls['id_card_type'].setValue(null);
1334
- }
1335
- }
1336
- selectState(state) {
1337
- if (state !== 'Seleccione el departamento') {
1338
- this.createUserForm.controls['state'].setValue(state);
1339
- this.parameterService.getCitiesByState(state).subscribe((response) => {
1340
- this.cities = response.data;
1341
- });
1342
- }
1343
- else {
1344
- this.createUserForm.controls['state'].setValue(null);
1345
- this.createUserForm.controls['city'].setValue(null);
1346
- this.cities = [];
1347
- }
1348
- }
1349
- selectCity(city) {
1350
- if (city !== 'Ciudad de residencia') {
1351
- this.createUserForm.controls['city'].setValue(city);
1352
- }
1353
- else {
1354
- this.createUserForm.controls['city'].setValue(null);
1355
- }
1356
- }
1357
- }
1358
- 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 });
1359
- 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", "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: [
1360
- trigger('fade', [
1361
- transition('void => *', [
1362
- style({ opacity: 0 }),
1363
- animate(200, style({ opacity: 1 }))
1364
- ])
1365
- ])
1366
- ] });
1367
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CreateUserFormComponent, decorators: [{
1368
- type: Component,
1369
- args: [{ selector: 'ipt-create-user-form', animations: [
1370
- trigger('fade', [
1371
- transition('void => *', [
1372
- style({ opacity: 0 }),
1373
- animate(200, style({ opacity: 1 }))
1374
- ])
1375
- ])
1376
- ], 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"] }]
1377
- }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: ParameterService }, { type: UserService }]; }, propDecorators: { userType: [{
1378
- type: Input
1379
- }], visibility: [{
1380
- type: Input
1381
- }], userCreated: [{
1382
- type: Output
1383
- }], onHide: [{
1384
- type: Output
1230
+ class CreateUserFormComponent {
1231
+ constructor(fb, parameterService, userService) {
1232
+ this.fb = fb;
1233
+ this.parameterService = parameterService;
1234
+ this.userService = userService;
1235
+ this.visibility = false;
1236
+ this.userCreated = new EventEmitter(false);
1237
+ this.onHide = new EventEmitter(false);
1238
+ this.loader = false;
1239
+ this.photo = '';
1240
+ }
1241
+ ngOnInit() {
1242
+ this.initForm();
1243
+ this.getParameters();
1244
+ }
1245
+ closeModal() {
1246
+ this.visibility = false;
1247
+ this.onHide.emit(true);
1248
+ }
1249
+ createUser() {
1250
+ this.loader = true;
1251
+ let request = {
1252
+ name: this.createUserForm.controls['name'].value,
1253
+ last_name: this.createUserForm.controls['last_name'].value,
1254
+ id_card_type: this.createUserForm.controls['id_card_type'].value,
1255
+ id_card: this.createUserForm.controls['id_card'].value,
1256
+ phone_indicative: this.createUserForm.controls['phone_indicative'].value,
1257
+ phone_number: this.createUserForm.controls['phone_number'].value,
1258
+ email: this.createUserForm.controls['email'].value,
1259
+ city: this.createUserForm.controls['city'].value,
1260
+ service_hour: this.createUserForm.controls['service_hour'].value,
1261
+ role: this.createUserForm.controls['role'].value,
1262
+ password: this.createUserForm.controls['password'].value,
1263
+ };
1264
+ this.userService.registerDashboard(request).subscribe((response) => {
1265
+ console.log(response.message);
1266
+ switch (response.message.code) {
1267
+ case 1:
1268
+ this.userCreated.emit(true);
1269
+ this.initForm();
1270
+ break;
1271
+ case 2:
1272
+ throw new Error("Los datos ingresados no corresponden a un usuario registrado en nuestro sistema, por favor reviselos.");
1273
+ case 3:
1274
+ throw new Error("Los datos ingresados no cumplen los parámetros establecidos");
1275
+ default:
1276
+ break;
1277
+ }
1278
+ this.loader = false;
1279
+ });
1280
+ }
1281
+ getParameters() {
1282
+ this.parameterService.getIndicatives().subscribe((response) => {
1283
+ this.phoneNumberIndicatives = response.data;
1284
+ });
1285
+ this.parameterService.getCardTypes('col').subscribe((response) => {
1286
+ this.idTypes = response.data;
1287
+ });
1288
+ this.parameterService.getStatesByCountry('col').subscribe((response) => {
1289
+ this.states = response.data;
1290
+ });
1291
+ }
1292
+ getRolesOptions() {
1293
+ // Estudiante
1294
+ if (this.userType === 'student') {
1295
+ this.setPhoto('student');
1296
+ return [
1297
+ { code: '13', name: 'Student' },
1298
+ ];
1299
+ }
1300
+ // Académico
1301
+ if (this.userType === 'academic') {
1302
+ this.setPhoto('academic');
1303
+ return [
1304
+ { code: '11', name: 'Teacher PRO' },
1305
+ { code: '12', name: 'Teacher' },
1306
+ ];
1307
+ }
1308
+ // Administrativo
1309
+ if (this.userType === 'administrative') {
1310
+ this.setPhoto('administrative');
1311
+ return [
1312
+ { code: '31', name: 'Administrative Supervisor' },
1313
+ { code: '32', name: 'Administrative Advisor' },
1314
+ ];
1315
+ }
1316
+ // Marketing
1317
+ if (this.userType === 'marketing') {
1318
+ this.setPhoto('marketing');
1319
+ return [
1320
+ { code: '21', name: 'Marketing Supervisor' },
1321
+ { code: '22', name: 'Marketing Advisor' },
1322
+ ];
1323
+ }
1324
+ // Comercial
1325
+ if (this.userType === 'commercial') {
1326
+ this.setPhoto('commercial');
1327
+ return [
1328
+ { code: '41', name: 'Commercial Supervisor' },
1329
+ { code: '42', name: 'Commercial Advisor' },
1330
+ ];
1331
+ }
1332
+ // Cartera
1333
+ if (this.userType === 'treasure') {
1334
+ this.setPhoto('treasure');
1335
+ return [
1336
+ { code: '51', name: 'Treauser Supervisor' },
1337
+ { code: '52', name: 'Treauser Advisor' },
1338
+ ];
1339
+ }
1340
+ }
1341
+ initForm() {
1342
+ this.createUserForm = this.fb.group({
1343
+ name: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(32)],],
1344
+ last_name: ['', [Validators.required, Validators.minLength(5), Validators.maxLength(32),],],
1345
+ email: ['', [Validators.required, Validators.maxLength(300)]],
1346
+ id_card_type: ['', [Validators.required]],
1347
+ id_card: ['', [Validators.required, Validators.minLength(5), Validators.maxLength(20),]],
1348
+ phone_indicative: ['', [Validators.required]],
1349
+ city: ['', [Validators.required]],
1350
+ role: ['', [Validators.required]],
1351
+ service_hour: ['', [Validators.required]],
1352
+ phone_number: ['', [Validators.required, Validators.minLength(10), Validators.maxLength(15)]],
1353
+ password: ['', [Validators.required, Validators.minLength(7), Validators.maxLength(32)]],
1354
+ re_password: ['', [Validators.required, Validators.minLength(7), Validators.maxLength(32)]],
1355
+ state: [''],
1356
+ });
1357
+ }
1358
+ setPhoto(type) {
1359
+ if (type === 'student')
1360
+ this.photo = '../../../assets/user-form-assets/estudiante.jpg';
1361
+ if (type === 'academic')
1362
+ this.photo = '../../../assets/user-form-assets/academico.png';
1363
+ if (type === 'administrative')
1364
+ this.photo = '../../../assets/user-form-assets/administrativo.jpg';
1365
+ if (type === 'marketing')
1366
+ this.photo = '../../../assets/user-form-assets/marketing.jpg';
1367
+ if (type === 'commercial')
1368
+ this.photo = '../../../assets/user-form-assets/comercial.jpg';
1369
+ if (type === 'treasure')
1370
+ this.photo = '../../../assets/user-form-assets/administrativo.jpg';
1371
+ }
1372
+ selectRol(role) {
1373
+ if (role !== 'Seleccione el rol') {
1374
+ this.createUserForm.controls['role'].setValue(role);
1375
+ }
1376
+ else {
1377
+ this.createUserForm.controls['role'].setValue(null);
1378
+ }
1379
+ }
1380
+ selectIndicatives(indicative) {
1381
+ if (indicative !== 'Seleccione el indicativo') {
1382
+ this.createUserForm.controls['phone_indicative'].setValue(indicative);
1383
+ }
1384
+ else {
1385
+ this.createUserForm.controls['phone_indicative'].setValue(null);
1386
+ }
1387
+ }
1388
+ selectIdType(idType) {
1389
+ if (idType !== 'Ingrese el tipo de documento') {
1390
+ this.createUserForm.controls['id_card_type'].setValue(idType);
1391
+ }
1392
+ else {
1393
+ this.createUserForm.controls['id_card_type'].setValue(null);
1394
+ }
1395
+ }
1396
+ selectState(state) {
1397
+ if (state !== 'Seleccione el departamento') {
1398
+ this.createUserForm.controls['state'].setValue(state);
1399
+ this.parameterService.getCitiesByState(state).subscribe((response) => {
1400
+ this.cities = response.data;
1401
+ });
1402
+ }
1403
+ else {
1404
+ this.createUserForm.controls['state'].setValue(null);
1405
+ this.createUserForm.controls['city'].setValue(null);
1406
+ this.cities = [];
1407
+ }
1408
+ }
1409
+ selectCity(city) {
1410
+ if (city !== 'Ciudad de residencia') {
1411
+ this.createUserForm.controls['city'].setValue(city);
1412
+ }
1413
+ else {
1414
+ this.createUserForm.controls['city'].setValue(null);
1415
+ }
1416
+ }
1417
+ }
1418
+ 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 });
1419
+ 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\">\n <div @fade class=\"modal_container\">\n <div class=\"header_modal\">\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\n <button (click)=\"closeModal()\">x</button>\n </div>\n <div class=\"grid_container\">\n <div>\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Nombre completo'\"\n [control]=\"createUserForm.controls['name']\"\n [validateText]=\"'Debe ingresar el nombre'\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Apellidos'\"\n [control]=\"createUserForm.controls['last_name']\"\n [validateText]=\"'Debe ingresar los apellidos'\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Correo electr\u00F3nico'\"\n [control]=\"createUserForm.controls['email']\"\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\n ></ipt-input>\n <ipt-select\n [isRequired]=\"true\"\n [defaultText]=\"'Seleccione el rol'\"\n (eventSelect)=\"selectRol($event)\"\n [data]=\"getRolesOptions()\"\n ></ipt-select>\n <ipt-select\n [isRequired]=\"true\"\n [data]=\"phoneNumberIndicatives\"\n (eventSelect)=\"selectIndicatives($event)\"\n [defaultText]=\"'Seleccione el indicativo'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'number'\"\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\n [control]=\"createUserForm.controls['phone_number']\"\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\n ></ipt-input>\n <ipt-select\n [isRequired]=\"true\"\n [data]=\"idTypes\"\n (eventSelect)=\"selectIdType($event)\"\n [defaultText]=\"'Ingrese el tipo de documento'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'number'\"\n [placeHolder]=\"'Documento de identidad'\"\n [control]=\"createUserForm.controls['id_card']\"\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\n ></ipt-input>\n <ipt-select\n [isRequired]=\"true\"\n (eventSelect)=\"selectState($event)\"\n [data]=\"states\"\n [defaultText]=\"'Seleccione el departamento'\"\n ></ipt-select>\n <ipt-select\n [isRequired]=\"true\"\n (eventSelect)=\"selectCity($event)\"\n [data]=\"cities\"\n [defaultText]=\"'Ciudad de residencia'\"\n ></ipt-select>\n <ipt-input *ngIf=\"!(userType === 'student')\"\n [inputType]=\"'number'\"\n [placeHolder]=\"'Ingrese las horas de servicio'\"\n [control]=\"createUserForm.controls['service_hour']\"\n [validateText]=\"'Debe ingresar las horas de servicio'\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'password'\"\n [placeHolder]=\"'Contrase\u00F1a'\"\n [control]=\"createUserForm.controls['password']\"\n >\n </ipt-input>\n <ipt-input\n [inputType]=\"'password'\"\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\n [control]=\"createUserForm.controls['re_password']\"\n >\n </ipt-input>\n </form>\n\n <div class=\"buttons-container\">\n <ipt-button\n [label]=\"'Crear usuario'\"\n [isEnabled]=\"\n !loader &&\n createUserForm.value['re_password'] ===\n createUserForm.value['password']\n \"\n (onClick)=\"createUser()\"\n [primary]=\"true\"\n >\n </ipt-button>\n </div>\n </div>\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\n </div>\n </div>\n</main>\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", "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: [
1420
+ trigger('fade', [
1421
+ transition('void => *', [
1422
+ style({ opacity: 0 }),
1423
+ animate(200, style({ opacity: 1 }))
1424
+ ])
1425
+ ])
1426
+ ] });
1427
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CreateUserFormComponent, decorators: [{
1428
+ type: Component,
1429
+ args: [{ selector: 'ipt-create-user-form', animations: [
1430
+ trigger('fade', [
1431
+ transition('void => *', [
1432
+ style({ opacity: 0 }),
1433
+ animate(200, style({ opacity: 1 }))
1434
+ ])
1435
+ ])
1436
+ ], template: "<main *ngIf=\"visibility\">\n <div @fade class=\"modal_container\">\n <div class=\"header_modal\">\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\n <button (click)=\"closeModal()\">x</button>\n </div>\n <div class=\"grid_container\">\n <div>\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Nombre completo'\"\n [control]=\"createUserForm.controls['name']\"\n [validateText]=\"'Debe ingresar el nombre'\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Apellidos'\"\n [control]=\"createUserForm.controls['last_name']\"\n [validateText]=\"'Debe ingresar los apellidos'\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Correo electr\u00F3nico'\"\n [control]=\"createUserForm.controls['email']\"\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\n ></ipt-input>\n <ipt-select\n [isRequired]=\"true\"\n [defaultText]=\"'Seleccione el rol'\"\n (eventSelect)=\"selectRol($event)\"\n [data]=\"getRolesOptions()\"\n ></ipt-select>\n <ipt-select\n [isRequired]=\"true\"\n [data]=\"phoneNumberIndicatives\"\n (eventSelect)=\"selectIndicatives($event)\"\n [defaultText]=\"'Seleccione el indicativo'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'number'\"\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\n [control]=\"createUserForm.controls['phone_number']\"\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\n ></ipt-input>\n <ipt-select\n [isRequired]=\"true\"\n [data]=\"idTypes\"\n (eventSelect)=\"selectIdType($event)\"\n [defaultText]=\"'Ingrese el tipo de documento'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'number'\"\n [placeHolder]=\"'Documento de identidad'\"\n [control]=\"createUserForm.controls['id_card']\"\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\n ></ipt-input>\n <ipt-select\n [isRequired]=\"true\"\n (eventSelect)=\"selectState($event)\"\n [data]=\"states\"\n [defaultText]=\"'Seleccione el departamento'\"\n ></ipt-select>\n <ipt-select\n [isRequired]=\"true\"\n (eventSelect)=\"selectCity($event)\"\n [data]=\"cities\"\n [defaultText]=\"'Ciudad de residencia'\"\n ></ipt-select>\n <ipt-input *ngIf=\"!(userType === 'student')\"\n [inputType]=\"'number'\"\n [placeHolder]=\"'Ingrese las horas de servicio'\"\n [control]=\"createUserForm.controls['service_hour']\"\n [validateText]=\"'Debe ingresar las horas de servicio'\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'password'\"\n [placeHolder]=\"'Contrase\u00F1a'\"\n [control]=\"createUserForm.controls['password']\"\n >\n </ipt-input>\n <ipt-input\n [inputType]=\"'password'\"\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\n [control]=\"createUserForm.controls['re_password']\"\n >\n </ipt-input>\n </form>\n\n <div class=\"buttons-container\">\n <ipt-button\n [label]=\"'Crear usuario'\"\n [isEnabled]=\"\n !loader &&\n createUserForm.value['re_password'] ===\n createUserForm.value['password']\n \"\n (onClick)=\"createUser()\"\n [primary]=\"true\"\n >\n </ipt-button>\n </div>\n </div>\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\n </div>\n </div>\n</main>\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"] }]
1437
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: ParameterService }, { type: UserService }]; }, propDecorators: { userType: [{
1438
+ type: Input
1439
+ }], visibility: [{
1440
+ type: Input
1441
+ }], userCreated: [{
1442
+ type: Output
1443
+ }], onHide: [{
1444
+ type: Output
1385
1445
  }] } });
1386
1446
 
1387
- class SidenavComponent {
1388
- constructor(userService, storageService) {
1389
- this.userService = userService;
1390
- this.storageService = storageService;
1391
- this.pageChangeEvent = new EventEmitter();
1392
- this.routes = [];
1393
- this.options = { weekday: 'long', month: 'long', day: 'numeric' };
1394
- this.currentDay = new Date().toLocaleDateString('en-EN', this.options);
1395
- this.hour = new Date().getHours();
1396
- }
1397
- ngOnInit() {
1398
- let user = this.storageService.getCurrentUser()?.token;
1399
- let token = user === undefined ? '' : user;
1400
- let request = {
1401
- token: token,
1402
- };
1403
- this.userService.getRoutesForRole(request).subscribe((response) => {
1404
- this.routes = response.data;
1405
- });
1406
- }
1407
- clickPage(event) {
1408
- this.pageChangeEvent.emit(event);
1409
- }
1410
- logout() {
1411
- this.storageService.logout();
1412
- this.pageChangeEvent.emit('logout');
1413
- }
1414
- }
1415
- SidenavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SidenavComponent, deps: [{ token: UserService }, { token: StorageService }], target: i0.ɵɵFactoryTarget.Component });
1416
- SidenavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: SidenavComponent, selector: "ipt-sidenav", inputs: { department: "department", setPage: "setPage", userName: "userName" }, outputs: { pageChangeEvent: "pageChangeEvent" }, ngImport: i0, template: `
1417
- <mat-sidenav #sidenav mode="push" >
1418
- <mat-toolbar color="primary" (click)="sidenav.toggle()">
1419
- <span style="font-size: 15px;">{{department}}</span>
1420
- <span class="menu-icon-close"></span>
1421
- </mat-toolbar>
1422
-
1423
- <mat-nav-list *ngFor="let route of routes">
1424
- <nav class="flex-container-menu">
1425
- <ipt-aside-button
1426
- [buttonActive]="this.setPage === route.page"
1427
- [icon]="route.icon"
1428
- [text]="route.text"
1429
- (isClicked)="clickPage(route.page)"
1430
- (click)="sidenav.toggle()"
1431
- >
1432
- </ipt-aside-button>
1433
- </nav>
1434
- </mat-nav-list>
1435
- </mat-sidenav>
1436
-
1437
- <mat-toolbar class="header">
1438
- <div class="menu-container" (click)="sidenav.toggle()">
1439
- <p>Menu</p>
1440
- <div class="menu-icon"></div>
1441
- </div>
1442
-
1443
- <img class="img-logo" src="http://qa.iptdev.com.co/assets/logos/IPT-logo.png" alt="" />
1444
-
1445
- <div class="text-container">
1446
- <span class="p1">{{ currentDay }}</span>
1447
- <span *ngIf="hour >= 0 && hour < 12" class="p2">
1448
- Hey {{ userName }}, Good moorning!
1449
- </span>
1450
- <p *ngIf="hour >= 12 && hour < 18" class="p2">
1451
- Hey {{ userName }}, Good afternoon!
1452
- </p>
1453
- <p *ngIf="hour >= 18 && hour < 24" class="p2">
1454
- Hey {{ userName }}, Good evening!
1455
- </p>
1456
- </div>
1457
-
1458
- <div class="logout-container" (click)="logout()">
1459
- <p class="logout-button">Cerrar sesión</p>
1460
- <div class="photo-logout"></div>
1461
- </div>
1462
- </mat-toolbar>
1463
- `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){.header{background-color:#fff;display:flex;justify-content:space-between;filter:drop-shadow(0px -1px 7px #000)}mat-sidenav{width:-moz-fit-content!important;width:fit-content!important;background-color:#1c77f7!important}.img-logo,.text-container{display:none}.mat-toolbar.mat-primary{background-color:#fff!important;color:#003d99!important;filter:drop-shadow(0px -1px 7px #000)}.logout-container{box-shadow:#11111a1a 0 8px 24px,#11111a1a 0 16px 56px,#11111a1a 0 24px 80px;height:35px;width:auto;border-radius:30px;display:flex;margin-left:10px}.logout-button{display:flex;align-items:center;color:#1c77f7;font-weight:500;font-size:16px;margin-left:20px;text-align:center;width:150px}.photo-logout{background:url(http://qa.iptdev.com.co/assets/icons/exit.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat}.menu-icon{background:url(http://qa.iptdev.com.co/assets/icons/icon-menu.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat}.menu-icon-close{background:url(http://qa.iptdev.com.co/assets/icons/cruz.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat;width:35px;height:35px}.menu-container{box-shadow:#11111a1a 0 8px 24px,#11111a1a 0 16px 56px,#11111a1a 0 24px 80px;height:35px;width:52.5px;width:auto;border-radius:30px;display:flex}.menu-container:hover{cursor:pointer}.menu-container p{width:85px;display:flex;align-items:center;color:#1c77f7;font-weight:500;font-size:16px;margin:0 0 0 15px;text-align:center}}@media screen and (min-width: 768px){.img-logo{display:flex;width:120px;height:60px}.text-container{border-radius:40px;height:45px;width:100%;display:flex;gap:-100px;justify-content:center;flex-direction:column;align-items:flex-start}}.p1{color:gray;margin-left:30px;font-size:13px;height:20px}.p2{margin-left:30px;font-size:14px;font-weight:600;color:#1c77f7}.flex-container-menu{font-size:18px;color:#fff!important}.mat-nav-list{padding:0}\n"], components: [{ type: i3$1.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i5.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { type: AsideButtonComponent, selector: "ipt-aside-button", inputs: ["icon", "text", "buttonActive"], outputs: ["isClicked"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1464
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SidenavComponent, decorators: [{
1465
- type: Component,
1466
- args: [{ selector: 'ipt-sidenav', template: `
1467
- <mat-sidenav #sidenav mode="push" >
1468
- <mat-toolbar color="primary" (click)="sidenav.toggle()">
1469
- <span style="font-size: 15px;">{{department}}</span>
1470
- <span class="menu-icon-close"></span>
1471
- </mat-toolbar>
1472
-
1473
- <mat-nav-list *ngFor="let route of routes">
1474
- <nav class="flex-container-menu">
1475
- <ipt-aside-button
1476
- [buttonActive]="this.setPage === route.page"
1477
- [icon]="route.icon"
1478
- [text]="route.text"
1479
- (isClicked)="clickPage(route.page)"
1480
- (click)="sidenav.toggle()"
1481
- >
1482
- </ipt-aside-button>
1483
- </nav>
1484
- </mat-nav-list>
1485
- </mat-sidenav>
1486
-
1487
- <mat-toolbar class="header">
1488
- <div class="menu-container" (click)="sidenav.toggle()">
1489
- <p>Menu</p>
1490
- <div class="menu-icon"></div>
1491
- </div>
1492
-
1493
- <img class="img-logo" src="http://qa.iptdev.com.co/assets/logos/IPT-logo.png" alt="" />
1494
-
1495
- <div class="text-container">
1496
- <span class="p1">{{ currentDay }}</span>
1497
- <span *ngIf="hour >= 0 && hour < 12" class="p2">
1498
- Hey {{ userName }}, Good moorning!
1499
- </span>
1500
- <p *ngIf="hour >= 12 && hour < 18" class="p2">
1501
- Hey {{ userName }}, Good afternoon!
1502
- </p>
1503
- <p *ngIf="hour >= 18 && hour < 24" class="p2">
1504
- Hey {{ userName }}, Good evening!
1505
- </p>
1506
- </div>
1507
-
1508
- <div class="logout-container" (click)="logout()">
1509
- <p class="logout-button">Cerrar sesión</p>
1510
- <div class="photo-logout"></div>
1511
- </div>
1512
- </mat-toolbar>
1513
- `, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){.header{background-color:#fff;display:flex;justify-content:space-between;filter:drop-shadow(0px -1px 7px #000)}mat-sidenav{width:-moz-fit-content!important;width:fit-content!important;background-color:#1c77f7!important}.img-logo,.text-container{display:none}.mat-toolbar.mat-primary{background-color:#fff!important;color:#003d99!important;filter:drop-shadow(0px -1px 7px #000)}.logout-container{box-shadow:#11111a1a 0 8px 24px,#11111a1a 0 16px 56px,#11111a1a 0 24px 80px;height:35px;width:auto;border-radius:30px;display:flex;margin-left:10px}.logout-button{display:flex;align-items:center;color:#1c77f7;font-weight:500;font-size:16px;margin-left:20px;text-align:center;width:150px}.photo-logout{background:url(http://qa.iptdev.com.co/assets/icons/exit.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat}.menu-icon{background:url(http://qa.iptdev.com.co/assets/icons/icon-menu.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat}.menu-icon-close{background:url(http://qa.iptdev.com.co/assets/icons/cruz.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat;width:35px;height:35px}.menu-container{box-shadow:#11111a1a 0 8px 24px,#11111a1a 0 16px 56px,#11111a1a 0 24px 80px;height:35px;width:52.5px;width:auto;border-radius:30px;display:flex}.menu-container:hover{cursor:pointer}.menu-container p{width:85px;display:flex;align-items:center;color:#1c77f7;font-weight:500;font-size:16px;margin:0 0 0 15px;text-align:center}}@media screen and (min-width: 768px){.img-logo{display:flex;width:120px;height:60px}.text-container{border-radius:40px;height:45px;width:100%;display:flex;gap:-100px;justify-content:center;flex-direction:column;align-items:flex-start}}.p1{color:gray;margin-left:30px;font-size:13px;height:20px}.p2{margin-left:30px;font-size:14px;font-weight:600;color:#1c77f7}.flex-container-menu{font-size:18px;color:#fff!important}.mat-nav-list{padding:0}\n"] }]
1514
- }], ctorParameters: function () { return [{ type: UserService }, { type: StorageService }]; }, propDecorators: { department: [{
1515
- type: Input
1516
- }], setPage: [{
1517
- type: Input
1518
- }], userName: [{
1519
- type: Input
1520
- }], pageChangeEvent: [{
1521
- type: Output
1447
+ class SidenavComponent {
1448
+ constructor(userService, storageService) {
1449
+ this.userService = userService;
1450
+ this.storageService = storageService;
1451
+ this.pageChangeEvent = new EventEmitter();
1452
+ this.routes = [];
1453
+ this.options = { weekday: 'long', month: 'long', day: 'numeric' };
1454
+ this.currentDay = new Date().toLocaleDateString('en-EN', this.options);
1455
+ this.hour = new Date().getHours();
1456
+ }
1457
+ ngOnInit() {
1458
+ let user = this.storageService.getCurrentUser()?.token;
1459
+ let token = user === undefined ? '' : user;
1460
+ let request = {
1461
+ token: token,
1462
+ };
1463
+ this.userService.getRoutesForRole(request).subscribe((response) => {
1464
+ this.routes = response.data;
1465
+ });
1466
+ }
1467
+ clickPage(event) {
1468
+ this.pageChangeEvent.emit(event);
1469
+ }
1470
+ logout() {
1471
+ this.storageService.logout();
1472
+ this.pageChangeEvent.emit('logout');
1473
+ }
1474
+ }
1475
+ SidenavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SidenavComponent, deps: [{ token: UserService }, { token: StorageService }], target: i0.ɵɵFactoryTarget.Component });
1476
+ SidenavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: SidenavComponent, selector: "ipt-sidenav", inputs: { department: "department", setPage: "setPage", userName: "userName" }, outputs: { pageChangeEvent: "pageChangeEvent" }, ngImport: i0, template: `
1477
+ <mat-sidenav #sidenav mode="push" >
1478
+ <mat-toolbar color="primary" (click)="sidenav.toggle()">
1479
+ <span style="font-size: 15px;">{{department}}</span>
1480
+ <span class="menu-icon-close"></span>
1481
+ </mat-toolbar>
1482
+
1483
+ <mat-nav-list *ngFor="let route of routes">
1484
+ <nav class="flex-container-menu">
1485
+ <ipt-aside-button
1486
+ [buttonActive]="this.setPage === route.page"
1487
+ [icon]="route.icon"
1488
+ [text]="route.text"
1489
+ (isClicked)="clickPage(route.page)"
1490
+ (click)="sidenav.toggle()"
1491
+ >
1492
+ </ipt-aside-button>
1493
+ </nav>
1494
+ </mat-nav-list>
1495
+ </mat-sidenav>
1496
+
1497
+ <mat-toolbar class="header">
1498
+ <div class="menu-container" (click)="sidenav.toggle()">
1499
+ <p>Menu</p>
1500
+ <div class="menu-icon"></div>
1501
+ </div>
1502
+
1503
+ <img class="img-logo" src="http://qa.iptdev.com.co/assets/logos/IPT-logo.png" alt="" />
1504
+
1505
+ <div class="text-container">
1506
+ <span class="p1">{{ currentDay }}</span>
1507
+ <span *ngIf="hour >= 0 && hour < 12" class="p2">
1508
+ Hey {{ userName }}, Good moorning!
1509
+ </span>
1510
+ <p *ngIf="hour >= 12 && hour < 18" class="p2">
1511
+ Hey {{ userName }}, Good afternoon!
1512
+ </p>
1513
+ <p *ngIf="hour >= 18 && hour < 24" class="p2">
1514
+ Hey {{ userName }}, Good evening!
1515
+ </p>
1516
+ </div>
1517
+
1518
+ <div class="logout-container" (click)="logout()">
1519
+ <p class="logout-button">Cerrar sesión</p>
1520
+ <div class="photo-logout"></div>
1521
+ </div>
1522
+ </mat-toolbar>
1523
+ `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){.header{background-color:#fff;display:flex;justify-content:space-between;filter:drop-shadow(0px -1px 7px #000)}mat-sidenav{width:-moz-fit-content!important;width:fit-content!important;background-color:#1c77f7!important}.img-logo,.text-container{display:none}.mat-toolbar.mat-primary{background-color:#fff!important;color:#003d99!important;filter:drop-shadow(0px -1px 7px #000)}.logout-container{box-shadow:#11111a1a 0 8px 24px,#11111a1a 0 16px 56px,#11111a1a 0 24px 80px;height:35px;width:auto;border-radius:30px;display:flex;margin-left:10px}.logout-button{display:flex;align-items:center;color:#1c77f7;font-weight:500;font-size:16px;margin-left:20px;text-align:center;width:150px}.photo-logout{background:url(http://qa.iptdev.com.co/assets/icons/exit.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat}.menu-icon{background:url(http://qa.iptdev.com.co/assets/icons/icon-menu.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat}.menu-icon-close{background:url(http://qa.iptdev.com.co/assets/icons/cruz.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat;width:35px;height:35px}.menu-container{box-shadow:#11111a1a 0 8px 24px,#11111a1a 0 16px 56px,#11111a1a 0 24px 80px;height:35px;width:52.5px;width:auto;border-radius:30px;display:flex}.menu-container:hover{cursor:pointer}.menu-container p{width:85px;display:flex;align-items:center;color:#1c77f7;font-weight:500;font-size:16px;margin:0 0 0 15px;text-align:center}}@media screen and (min-width: 768px){.img-logo{display:flex;width:120px;height:60px}.text-container{border-radius:40px;height:45px;width:100%;display:flex;gap:-100px;justify-content:center;flex-direction:column;align-items:flex-start}}.p1{color:gray;margin-left:30px;font-size:13px;height:20px}.p2{margin-left:30px;font-size:14px;font-weight:600;color:#1c77f7}.flex-container-menu{font-size:18px;color:#fff!important}.mat-nav-list{padding:0}\n"], components: [{ type: i3$1.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i5.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { type: AsideButtonComponent, selector: "ipt-aside-button", inputs: ["icon", "text", "buttonActive"], outputs: ["isClicked"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1524
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SidenavComponent, decorators: [{
1525
+ type: Component,
1526
+ args: [{ selector: 'ipt-sidenav', template: `
1527
+ <mat-sidenav #sidenav mode="push" >
1528
+ <mat-toolbar color="primary" (click)="sidenav.toggle()">
1529
+ <span style="font-size: 15px;">{{department}}</span>
1530
+ <span class="menu-icon-close"></span>
1531
+ </mat-toolbar>
1532
+
1533
+ <mat-nav-list *ngFor="let route of routes">
1534
+ <nav class="flex-container-menu">
1535
+ <ipt-aside-button
1536
+ [buttonActive]="this.setPage === route.page"
1537
+ [icon]="route.icon"
1538
+ [text]="route.text"
1539
+ (isClicked)="clickPage(route.page)"
1540
+ (click)="sidenav.toggle()"
1541
+ >
1542
+ </ipt-aside-button>
1543
+ </nav>
1544
+ </mat-nav-list>
1545
+ </mat-sidenav>
1546
+
1547
+ <mat-toolbar class="header">
1548
+ <div class="menu-container" (click)="sidenav.toggle()">
1549
+ <p>Menu</p>
1550
+ <div class="menu-icon"></div>
1551
+ </div>
1552
+
1553
+ <img class="img-logo" src="http://qa.iptdev.com.co/assets/logos/IPT-logo.png" alt="" />
1554
+
1555
+ <div class="text-container">
1556
+ <span class="p1">{{ currentDay }}</span>
1557
+ <span *ngIf="hour >= 0 && hour < 12" class="p2">
1558
+ Hey {{ userName }}, Good moorning!
1559
+ </span>
1560
+ <p *ngIf="hour >= 12 && hour < 18" class="p2">
1561
+ Hey {{ userName }}, Good afternoon!
1562
+ </p>
1563
+ <p *ngIf="hour >= 18 && hour < 24" class="p2">
1564
+ Hey {{ userName }}, Good evening!
1565
+ </p>
1566
+ </div>
1567
+
1568
+ <div class="logout-container" (click)="logout()">
1569
+ <p class="logout-button">Cerrar sesión</p>
1570
+ <div class="photo-logout"></div>
1571
+ </div>
1572
+ </mat-toolbar>
1573
+ `, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){.header{background-color:#fff;display:flex;justify-content:space-between;filter:drop-shadow(0px -1px 7px #000)}mat-sidenav{width:-moz-fit-content!important;width:fit-content!important;background-color:#1c77f7!important}.img-logo,.text-container{display:none}.mat-toolbar.mat-primary{background-color:#fff!important;color:#003d99!important;filter:drop-shadow(0px -1px 7px #000)}.logout-container{box-shadow:#11111a1a 0 8px 24px,#11111a1a 0 16px 56px,#11111a1a 0 24px 80px;height:35px;width:auto;border-radius:30px;display:flex;margin-left:10px}.logout-button{display:flex;align-items:center;color:#1c77f7;font-weight:500;font-size:16px;margin-left:20px;text-align:center;width:150px}.photo-logout{background:url(http://qa.iptdev.com.co/assets/icons/exit.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat}.menu-icon{background:url(http://qa.iptdev.com.co/assets/icons/icon-menu.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat}.menu-icon-close{background:url(http://qa.iptdev.com.co/assets/icons/cruz.png);background-size:25px 25px;background-position:center;background-repeat:no-repeat;width:35px;height:35px}.menu-container{box-shadow:#11111a1a 0 8px 24px,#11111a1a 0 16px 56px,#11111a1a 0 24px 80px;height:35px;width:52.5px;width:auto;border-radius:30px;display:flex}.menu-container:hover{cursor:pointer}.menu-container p{width:85px;display:flex;align-items:center;color:#1c77f7;font-weight:500;font-size:16px;margin:0 0 0 15px;text-align:center}}@media screen and (min-width: 768px){.img-logo{display:flex;width:120px;height:60px}.text-container{border-radius:40px;height:45px;width:100%;display:flex;gap:-100px;justify-content:center;flex-direction:column;align-items:flex-start}}.p1{color:gray;margin-left:30px;font-size:13px;height:20px}.p2{margin-left:30px;font-size:14px;font-weight:600;color:#1c77f7}.flex-container-menu{font-size:18px;color:#fff!important}.mat-nav-list{padding:0}\n"] }]
1574
+ }], ctorParameters: function () { return [{ type: UserService }, { type: StorageService }]; }, propDecorators: { department: [{
1575
+ type: Input
1576
+ }], setPage: [{
1577
+ type: Input
1578
+ }], userName: [{
1579
+ type: Input
1580
+ }], pageChangeEvent: [{
1581
+ type: Output
1522
1582
  }] } });
1523
1583
 
1524
- class MaterialModule {
1525
- }
1526
- MaterialModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1527
- MaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
1528
- MaterialModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, imports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
1529
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, decorators: [{
1530
- type: NgModule,
1531
- args: [{
1532
- exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule],
1533
- }]
1584
+ class MaterialModule {
1585
+ }
1586
+ MaterialModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1587
+ MaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
1588
+ MaterialModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, imports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
1589
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, decorators: [{
1590
+ type: NgModule,
1591
+ args: [{
1592
+ exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule],
1593
+ }]
1534
1594
  }] });
1535
1595
 
1536
- class ComponentsModule {
1537
- }
1538
- ComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1539
- ComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, declarations: [AsideButtonComponent,
1540
- ButtonComponent,
1541
- CheckboxComponent,
1542
- CreateUserFormComponent,
1543
- DatalistComponent,
1544
- InputComponent,
1545
- LevelButtonComponent,
1546
- LevelTextComponent,
1547
- LoginFormComponent,
1548
- LoaderComponent,
1549
- RadioComponent,
1550
- SelectComponent,
1551
- SidenavComponent,
1552
- TextLinkComponent], imports: [CommonModule,
1553
- // BrowserModule, // Para evitar doble carga de BrowserModule
1554
- FormsModule,
1555
- ReactiveFormsModule,
1556
- MaterialModule,
1557
- CurrencyMaskModule], exports: [AsideButtonComponent,
1558
- ButtonComponent,
1559
- CheckboxComponent,
1560
- CreateUserFormComponent,
1561
- DatalistComponent,
1562
- InputComponent,
1563
- LevelButtonComponent,
1564
- LevelTextComponent,
1565
- LoaderComponent,
1566
- RadioComponent,
1567
- SelectComponent,
1568
- TextLinkComponent,
1569
- LoginFormComponent,
1570
- SidenavComponent,
1571
- CurrencyMaskModule] });
1572
- ComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, providers: [
1573
- CurrencyPipe,
1574
- TitleCasePipe
1575
- ], imports: [[
1576
- CommonModule,
1577
- // BrowserModule, // Para evitar doble carga de BrowserModule
1578
- FormsModule,
1579
- ReactiveFormsModule,
1580
- MaterialModule,
1581
- CurrencyMaskModule
1582
- ], CurrencyMaskModule] });
1583
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, decorators: [{
1584
- type: NgModule,
1585
- args: [{
1586
- declarations: [
1587
- AsideButtonComponent,
1588
- ButtonComponent,
1589
- CheckboxComponent,
1590
- CreateUserFormComponent,
1591
- DatalistComponent,
1592
- InputComponent,
1593
- LevelButtonComponent,
1594
- LevelTextComponent,
1595
- LoginFormComponent,
1596
- LoaderComponent,
1597
- RadioComponent,
1598
- SelectComponent,
1599
- SidenavComponent,
1600
- TextLinkComponent,
1601
- ],
1602
- imports: [
1603
- CommonModule,
1604
- // BrowserModule, // Para evitar doble carga de BrowserModule
1605
- FormsModule,
1606
- ReactiveFormsModule,
1607
- MaterialModule,
1608
- CurrencyMaskModule
1609
- ],
1610
- exports: [
1611
- AsideButtonComponent,
1612
- ButtonComponent,
1613
- CheckboxComponent,
1614
- CreateUserFormComponent,
1615
- DatalistComponent,
1616
- InputComponent,
1617
- LevelButtonComponent,
1618
- LevelTextComponent,
1619
- LoaderComponent,
1620
- RadioComponent,
1621
- SelectComponent,
1622
- TextLinkComponent,
1623
- LoginFormComponent,
1624
- SidenavComponent,
1625
- CurrencyMaskModule
1626
- ],
1627
- providers: [
1628
- CurrencyPipe,
1629
- TitleCasePipe
1630
- ]
1631
- }]
1596
+ class ComponentsModule {
1597
+ }
1598
+ ComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1599
+ ComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, declarations: [AsideButtonComponent,
1600
+ ButtonComponent,
1601
+ CheckboxComponent,
1602
+ CreateUserFormComponent,
1603
+ DatalistComponent,
1604
+ InputComponent,
1605
+ LevelButtonComponent,
1606
+ LevelTextComponent,
1607
+ LoginFormComponent,
1608
+ LoaderComponent,
1609
+ RadioComponent,
1610
+ SelectComponent,
1611
+ SidenavComponent,
1612
+ TextLinkComponent], imports: [CommonModule,
1613
+ // BrowserModule, // Para evitar doble carga de BrowserModule
1614
+ FormsModule,
1615
+ ReactiveFormsModule,
1616
+ MaterialModule,
1617
+ CurrencyMaskModule], exports: [AsideButtonComponent,
1618
+ ButtonComponent,
1619
+ CheckboxComponent,
1620
+ CreateUserFormComponent,
1621
+ DatalistComponent,
1622
+ InputComponent,
1623
+ LevelButtonComponent,
1624
+ LevelTextComponent,
1625
+ LoaderComponent,
1626
+ RadioComponent,
1627
+ SelectComponent,
1628
+ TextLinkComponent,
1629
+ LoginFormComponent,
1630
+ SidenavComponent,
1631
+ CurrencyMaskModule] });
1632
+ ComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, providers: [
1633
+ CurrencyPipe,
1634
+ TitleCasePipe
1635
+ ], imports: [[
1636
+ CommonModule,
1637
+ // BrowserModule, // Para evitar doble carga de BrowserModule
1638
+ FormsModule,
1639
+ ReactiveFormsModule,
1640
+ MaterialModule,
1641
+ CurrencyMaskModule
1642
+ ], CurrencyMaskModule] });
1643
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, decorators: [{
1644
+ type: NgModule,
1645
+ args: [{
1646
+ declarations: [
1647
+ AsideButtonComponent,
1648
+ ButtonComponent,
1649
+ CheckboxComponent,
1650
+ CreateUserFormComponent,
1651
+ DatalistComponent,
1652
+ InputComponent,
1653
+ LevelButtonComponent,
1654
+ LevelTextComponent,
1655
+ LoginFormComponent,
1656
+ LoaderComponent,
1657
+ RadioComponent,
1658
+ SelectComponent,
1659
+ SidenavComponent,
1660
+ TextLinkComponent,
1661
+ ],
1662
+ imports: [
1663
+ CommonModule,
1664
+ // BrowserModule, // Para evitar doble carga de BrowserModule
1665
+ FormsModule,
1666
+ ReactiveFormsModule,
1667
+ MaterialModule,
1668
+ CurrencyMaskModule
1669
+ ],
1670
+ exports: [
1671
+ AsideButtonComponent,
1672
+ ButtonComponent,
1673
+ CheckboxComponent,
1674
+ CreateUserFormComponent,
1675
+ DatalistComponent,
1676
+ InputComponent,
1677
+ LevelButtonComponent,
1678
+ LevelTextComponent,
1679
+ LoaderComponent,
1680
+ RadioComponent,
1681
+ SelectComponent,
1682
+ TextLinkComponent,
1683
+ LoginFormComponent,
1684
+ SidenavComponent,
1685
+ CurrencyMaskModule
1686
+ ],
1687
+ providers: [
1688
+ CurrencyPipe,
1689
+ TitleCasePipe
1690
+ ]
1691
+ }]
1632
1692
  }] });
1633
1693
 
1634
- class CourseService {
1635
- constructor(http) {
1636
- this.http = http;
1637
- this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
1638
- }
1639
- createCourse(course) {
1640
- let serviceUrl = this.SERVICE_URL + 'post/course';
1641
- this.generateRequestParams(course);
1642
- return this.http.post(serviceUrl, this.httpOptions);
1643
- }
1644
- editCourse(course) {
1645
- let serviceUrl = this.SERVICE_URL + 'put/course';
1646
- this.generateRequestParams(course);
1647
- return this.http.put(serviceUrl, this.httpOptions);
1648
- }
1649
- getAllCourses(params) {
1650
- let serviceUrl = this.SERVICE_URL + 'post/all/courses';
1651
- this.generateRequestParams(params);
1652
- return this.http.post(serviceUrl, this.httpOptions);
1653
- }
1654
- getCoursesByLevel(params) {
1655
- let serviceUrl = this.SERVICE_URL + 'post/course/by/level';
1656
- this.generateRequestParams(params);
1657
- return this.http.post(serviceUrl, this.httpOptions);
1658
- }
1659
- getAvailibleCourses(availibleCourses) {
1660
- let serviceUrl = this.SERVICE_URL + 'post/course/for/cod';
1661
- this.generateRequestParams(availibleCourses);
1662
- return this.http.post(serviceUrl, this.httpOptions);
1663
- }
1664
- getCourseByCode(params) {
1665
- let serviceUrl = this.SERVICE_URL + 'post/course/by/code';
1666
- this.generateRequestParams(params);
1667
- return this.http.post(serviceUrl, this.httpOptions);
1668
- }
1669
- getCoursesByTeacher(params) {
1670
- let serviceUrl = this.SERVICE_URL + 'post/course/by/teacher';
1671
- this.generateRequestParams(params);
1672
- return this.http.post(serviceUrl, this.httpOptions);
1673
- }
1674
- getFilteredCoursesByTeacher(params) {
1675
- let serviceUrl = this.SERVICE_URL + 'post/course/filtered/by/teacher';
1676
- this.generateRequestParams(params);
1677
- return this.http.post(serviceUrl, this.httpOptions);
1678
- }
1679
- getCoursesByStartDate(params) {
1680
- let serviceUrl = this.SERVICE_URL + 'post/course/by/startdate';
1681
- this.generateRequestParams(params);
1682
- return this.http.post(serviceUrl, this.httpOptions);
1683
- }
1684
- numberClassByCode(idCode) {
1685
- let serviceUrl = this.SERVICE_URL + 'get/coursetype/numclass/by/code/' + idCode;
1686
- return this.http.get(serviceUrl);
1687
- }
1688
- // construye los headers y params
1689
- generateRequestParams(param) {
1690
- this.httpOptions = {
1691
- header: new HttpHeaders(),
1692
- params: param,
1693
- };
1694
- }
1695
- }
1696
- CourseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CourseService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1697
- CourseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CourseService, providedIn: 'root' });
1698
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CourseService, decorators: [{
1699
- type: Injectable,
1700
- args: [{
1701
- providedIn: 'root',
1702
- }]
1694
+ class CourseService {
1695
+ constructor(http) {
1696
+ this.http = http;
1697
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
1698
+ }
1699
+ createCourse(course) {
1700
+ let serviceUrl = this.SERVICE_URL + 'post/course';
1701
+ this.generateRequestParams(course);
1702
+ return this.http.post(serviceUrl, this.httpOptions);
1703
+ }
1704
+ editCourse(course) {
1705
+ let serviceUrl = this.SERVICE_URL + 'put/course';
1706
+ this.generateRequestParams(course);
1707
+ return this.http.put(serviceUrl, this.httpOptions);
1708
+ }
1709
+ getAllCourses(params) {
1710
+ let serviceUrl = this.SERVICE_URL + 'post/all/courses';
1711
+ this.generateRequestParams(params);
1712
+ return this.http.post(serviceUrl, this.httpOptions);
1713
+ }
1714
+ getCoursesByLevel(params) {
1715
+ let serviceUrl = this.SERVICE_URL + 'post/course/by/level';
1716
+ this.generateRequestParams(params);
1717
+ return this.http.post(serviceUrl, this.httpOptions);
1718
+ }
1719
+ getAvailibleCourses(availibleCourses) {
1720
+ let serviceUrl = this.SERVICE_URL + 'post/course/for/cod';
1721
+ this.generateRequestParams(availibleCourses);
1722
+ return this.http.post(serviceUrl, this.httpOptions);
1723
+ }
1724
+ getCourseByCode(params) {
1725
+ let serviceUrl = this.SERVICE_URL + 'post/course/by/code';
1726
+ this.generateRequestParams(params);
1727
+ return this.http.post(serviceUrl, this.httpOptions);
1728
+ }
1729
+ getCoursesByTeacher(params) {
1730
+ let serviceUrl = this.SERVICE_URL + 'post/course/by/teacher';
1731
+ this.generateRequestParams(params);
1732
+ return this.http.post(serviceUrl, this.httpOptions);
1733
+ }
1734
+ getFilteredCoursesByTeacher(params) {
1735
+ let serviceUrl = this.SERVICE_URL + 'post/course/filtered/by/teacher';
1736
+ this.generateRequestParams(params);
1737
+ return this.http.post(serviceUrl, this.httpOptions);
1738
+ }
1739
+ getCoursesByStartDate(params) {
1740
+ let serviceUrl = this.SERVICE_URL + 'post/course/by/startdate';
1741
+ this.generateRequestParams(params);
1742
+ return this.http.post(serviceUrl, this.httpOptions);
1743
+ }
1744
+ numberClassByCode(idCode) {
1745
+ let serviceUrl = this.SERVICE_URL + 'get/coursetype/numclass/by/code/' + idCode;
1746
+ return this.http.get(serviceUrl);
1747
+ }
1748
+ // construye los headers y params
1749
+ generateRequestParams(param) {
1750
+ this.httpOptions = {
1751
+ header: new HttpHeaders(),
1752
+ params: param,
1753
+ };
1754
+ }
1755
+ }
1756
+ CourseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CourseService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1757
+ CourseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CourseService, providedIn: 'root' });
1758
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CourseService, decorators: [{
1759
+ type: Injectable,
1760
+ args: [{
1761
+ providedIn: 'root',
1762
+ }]
1703
1763
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
1704
1764
 
1705
- class RedirectGuard {
1706
- constructor(router) {
1707
- this.router = router;
1708
- }
1709
- canActivate(route, state) {
1710
- window.location.href = route.data['externalUrl'];
1711
- return true;
1712
- }
1713
- }
1714
- RedirectGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RedirectGuard, deps: [{ token: i1$3.Router }], target: i0.ɵɵFactoryTarget.Injectable });
1715
- RedirectGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RedirectGuard });
1716
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RedirectGuard, decorators: [{
1717
- type: Injectable
1765
+ class RedirectGuard {
1766
+ constructor(router) {
1767
+ this.router = router;
1768
+ }
1769
+ canActivate(route, state) {
1770
+ window.location.href = route.data['externalUrl'];
1771
+ return true;
1772
+ }
1773
+ }
1774
+ RedirectGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RedirectGuard, deps: [{ token: i1$3.Router }], target: i0.ɵɵFactoryTarget.Injectable });
1775
+ RedirectGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RedirectGuard });
1776
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RedirectGuard, decorators: [{
1777
+ type: Injectable
1718
1778
  }], ctorParameters: function () { return [{ type: i1$3.Router }]; } });
1719
1779
 
1720
- class SwitchService {
1721
- constructor() {
1722
- this.$modal = new EventEmitter();
1723
- }
1724
- }
1725
- SwitchService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1726
- SwitchService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, providedIn: 'root' });
1727
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, decorators: [{
1728
- type: Injectable,
1729
- args: [{
1730
- providedIn: 'root'
1731
- }]
1780
+ class SwitchService {
1781
+ constructor() {
1782
+ this.$modal = new EventEmitter();
1783
+ }
1784
+ }
1785
+ SwitchService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1786
+ SwitchService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, providedIn: 'root' });
1787
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, decorators: [{
1788
+ type: Injectable,
1789
+ args: [{
1790
+ providedIn: 'root'
1791
+ }]
1732
1792
  }], ctorParameters: function () { return []; } });
1733
1793
 
1734
- class TestService {
1735
- constructor(http) {
1736
- this.http = http;
1737
- this.SERVICE_URL = 'https://iptdev.com.co/lab/test/api/';
1738
- }
1739
- // ---------------------- EXÁMENES ---------------------- //
1740
- createExam(exam) {
1741
- let serviceUrl = this.SERVICE_URL + 'post/exam';
1742
- this.generateRequestParams(exam);
1743
- return this.http.post(serviceUrl, this.httpOptions);
1744
- }
1745
- getAllExams(params) {
1746
- let serviceUrl = this.SERVICE_URL + 'post/all/exam';
1747
- this.generateRequestParams(params);
1748
- return this.http.post(serviceUrl, this.httpOptions);
1749
- }
1750
- updateExam(params) {
1751
- let serviceUrl = this.SERVICE_URL + 'update/exam';
1752
- this.generateRequestParams(params);
1753
- return this.http.put(serviceUrl, this.httpOptions);
1754
- }
1755
- updateExamStatus(params) {
1756
- let serviceUrl = this.SERVICE_URL + 'update/exam/status';
1757
- this.generateRequestParams(params);
1758
- return this.http.put(serviceUrl, this.httpOptions);
1759
- }
1760
- copyExam(params) {
1761
- let serviceUrl = this.SERVICE_URL + 'copy/exam';
1762
- this.generateRequestParams(params);
1763
- return this.http.put(serviceUrl, this.httpOptions);
1764
- }
1765
- getExamByCode(code) {
1766
- let serviceUrl = this.SERVICE_URL + 'get/exam/by/code/' + code;
1767
- return this.http.get(serviceUrl);
1768
- }
1769
- getExamByAuthor(code) {
1770
- let serviceUrl = this.SERVICE_URL + 'get/exams/by/author/' + code;
1771
- return this.http.get(serviceUrl);
1772
- }
1773
- // ---------------------- SECCIONES ---------------------- //
1774
- createSectionWithAll(params) {
1775
- let serviceUrl = this.SERVICE_URL + 'post/section/with/all';
1776
- this.generateRequestParams(params);
1777
- return this.http.post(serviceUrl, this.httpOptions);
1778
- }
1779
- createSection(params) {
1780
- let serviceUrl = this.SERVICE_URL + 'post/section';
1781
- this.generateRequestParams(params);
1782
- return this.http.post(serviceUrl, this.httpOptions);
1783
- }
1784
- getAllSections(params) {
1785
- let serviceUrl = this.SERVICE_URL + 'post/all/sections';
1786
- this.generateRequestParams(params);
1787
- return this.http.post(serviceUrl, this.httpOptions);
1788
- }
1789
- updateSection(params) {
1790
- let serviceUrl = this.SERVICE_URL + 'update/section';
1791
- this.generateRequestParams(params);
1792
- return this.http.put(serviceUrl, this.httpOptions);
1793
- }
1794
- updateSectionMedia(params) {
1795
- let serviceUrl = this.SERVICE_URL + 'post/section/media';
1796
- this.generateRequestParams(params);
1797
- return this.http.post(serviceUrl, this.httpOptions);
1798
- }
1799
- updateSectionState(params) {
1800
- let serviceUrl = this.SERVICE_URL + 'update/section/state';
1801
- this.generateRequestParams(params);
1802
- return this.http.put(serviceUrl, this.httpOptions);
1803
- }
1804
- getSectionsByExam(code) {
1805
- let serviceUrl = this.SERVICE_URL + 'get/sections/by/exam/' + code;
1806
- return this.http.get(serviceUrl);
1807
- }
1808
- // ---------------------- PREGUNTAS ---------------------- //
1809
- createQuestion(params) {
1810
- let serviceUrl = this.SERVICE_URL + 'post/question';
1811
- this.generateRequestParams(params);
1812
- return this.http.post(serviceUrl, this.httpOptions);
1813
- }
1814
- updateQuestion(params) {
1815
- let serviceUrl = this.SERVICE_URL + 'update/question';
1816
- this.generateRequestParams(params);
1817
- return this.http.put(serviceUrl, this.httpOptions);
1818
- }
1819
- getQuestionsBySections(params) {
1820
- let serviceUrl = this.SERVICE_URL + 'get/questions/by/sections';
1821
- this.generateRequestParams(params);
1822
- return this.http.post(serviceUrl, this.httpOptions);
1823
- }
1824
- getQuestionsBySection(params) {
1825
- let serviceUrl = this.SERVICE_URL + 'get/questions/by/section';
1826
- this.generateRequestParams(params);
1827
- return this.http.post(serviceUrl, this.httpOptions);
1828
- }
1829
- // ---------------------- RESPUESTAS ---------------------- //
1830
- createAnswer(params) {
1831
- let serviceUrl = this.SERVICE_URL + 'post/answer';
1832
- this.generateRequestParams(params);
1833
- return this.http.post(serviceUrl, this.httpOptions);
1834
- }
1835
- updateAnswer(params) {
1836
- let serviceUrl = this.SERVICE_URL + 'update/answer';
1837
- this.generateRequestParams(params);
1838
- return this.http.put(serviceUrl, this.httpOptions);
1839
- }
1840
- getAnswersByQuestion(code) {
1841
- let serviceUrl = this.SERVICE_URL + 'get/answers/by/question/' + code;
1842
- return this.http.get(serviceUrl, this.httpOptions);
1843
- }
1844
- updateQuestionState(params) {
1845
- let serviceUrl = this.SERVICE_URL + 'update/question/state';
1846
- this.generateRequestParams(params);
1847
- return this.http.put(serviceUrl, this.httpOptions);
1848
- }
1849
- // construye los headers y params
1850
- generateRequestParams(param) {
1851
- this.httpOptions = {
1852
- header: new HttpHeaders(),
1853
- params: param,
1854
- };
1855
- }
1856
- }
1857
- TestService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TestService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1858
- TestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TestService, providedIn: 'root' });
1859
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TestService, decorators: [{
1860
- type: Injectable,
1861
- args: [{
1862
- providedIn: 'root',
1863
- }]
1794
+ class TestService {
1795
+ constructor(http) {
1796
+ this.http = http;
1797
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/test/api/';
1798
+ }
1799
+ // ---------------------- EXÁMENES ---------------------- //
1800
+ createExam(exam) {
1801
+ let serviceUrl = this.SERVICE_URL + 'post/exam';
1802
+ this.generateRequestParams(exam);
1803
+ return this.http.post(serviceUrl, this.httpOptions);
1804
+ }
1805
+ getAllExams(params) {
1806
+ let serviceUrl = this.SERVICE_URL + 'post/all/exam';
1807
+ this.generateRequestParams(params);
1808
+ return this.http.post(serviceUrl, this.httpOptions);
1809
+ }
1810
+ updateExam(params) {
1811
+ let serviceUrl = this.SERVICE_URL + 'update/exam';
1812
+ this.generateRequestParams(params);
1813
+ return this.http.put(serviceUrl, this.httpOptions);
1814
+ }
1815
+ updateExamStatus(params) {
1816
+ let serviceUrl = this.SERVICE_URL + 'update/exam/status';
1817
+ this.generateRequestParams(params);
1818
+ return this.http.put(serviceUrl, this.httpOptions);
1819
+ }
1820
+ copyExam(params) {
1821
+ let serviceUrl = this.SERVICE_URL + 'copy/exam';
1822
+ this.generateRequestParams(params);
1823
+ return this.http.put(serviceUrl, this.httpOptions);
1824
+ }
1825
+ getExamByCode(code) {
1826
+ let serviceUrl = this.SERVICE_URL + 'get/exam/by/code/' + code;
1827
+ return this.http.get(serviceUrl);
1828
+ }
1829
+ getExamByAuthor(code) {
1830
+ let serviceUrl = this.SERVICE_URL + 'get/exams/by/author/' + code;
1831
+ return this.http.get(serviceUrl);
1832
+ }
1833
+ // ---------------------- SECCIONES ---------------------- //
1834
+ createSectionWithAll(params) {
1835
+ let serviceUrl = this.SERVICE_URL + 'post/section/with/all';
1836
+ this.generateRequestParams(params);
1837
+ return this.http.post(serviceUrl, this.httpOptions);
1838
+ }
1839
+ createSection(params) {
1840
+ let serviceUrl = this.SERVICE_URL + 'post/section';
1841
+ this.generateRequestParams(params);
1842
+ return this.http.post(serviceUrl, this.httpOptions);
1843
+ }
1844
+ getAllSections(params) {
1845
+ let serviceUrl = this.SERVICE_URL + 'post/all/sections';
1846
+ this.generateRequestParams(params);
1847
+ return this.http.post(serviceUrl, this.httpOptions);
1848
+ }
1849
+ updateSection(params) {
1850
+ let serviceUrl = this.SERVICE_URL + 'update/section';
1851
+ this.generateRequestParams(params);
1852
+ return this.http.put(serviceUrl, this.httpOptions);
1853
+ }
1854
+ updateSectionMedia(params) {
1855
+ let serviceUrl = this.SERVICE_URL + 'post/section/media';
1856
+ this.generateRequestParams(params);
1857
+ return this.http.post(serviceUrl, this.httpOptions);
1858
+ }
1859
+ updateSectionState(params) {
1860
+ let serviceUrl = this.SERVICE_URL + 'update/section/state';
1861
+ this.generateRequestParams(params);
1862
+ return this.http.put(serviceUrl, this.httpOptions);
1863
+ }
1864
+ getSectionsByExam(code) {
1865
+ let serviceUrl = this.SERVICE_URL + 'get/sections/by/exam/' + code;
1866
+ return this.http.get(serviceUrl);
1867
+ }
1868
+ // ---------------------- PREGUNTAS ---------------------- //
1869
+ createQuestion(params) {
1870
+ let serviceUrl = this.SERVICE_URL + 'post/question';
1871
+ this.generateRequestParams(params);
1872
+ return this.http.post(serviceUrl, this.httpOptions);
1873
+ }
1874
+ updateQuestion(params) {
1875
+ let serviceUrl = this.SERVICE_URL + 'update/question';
1876
+ this.generateRequestParams(params);
1877
+ return this.http.put(serviceUrl, this.httpOptions);
1878
+ }
1879
+ getQuestionsBySections(params) {
1880
+ let serviceUrl = this.SERVICE_URL + 'get/questions/by/sections';
1881
+ this.generateRequestParams(params);
1882
+ return this.http.post(serviceUrl, this.httpOptions);
1883
+ }
1884
+ getQuestionsBySection(params) {
1885
+ let serviceUrl = this.SERVICE_URL + 'get/questions/by/section';
1886
+ this.generateRequestParams(params);
1887
+ return this.http.post(serviceUrl, this.httpOptions);
1888
+ }
1889
+ // ---------------------- RESPUESTAS ---------------------- //
1890
+ createAnswer(params) {
1891
+ let serviceUrl = this.SERVICE_URL + 'post/answer';
1892
+ this.generateRequestParams(params);
1893
+ return this.http.post(serviceUrl, this.httpOptions);
1894
+ }
1895
+ updateAnswer(params) {
1896
+ let serviceUrl = this.SERVICE_URL + 'update/answer';
1897
+ this.generateRequestParams(params);
1898
+ return this.http.put(serviceUrl, this.httpOptions);
1899
+ }
1900
+ getAnswersByQuestion(code) {
1901
+ let serviceUrl = this.SERVICE_URL + 'get/answers/by/question/' + code;
1902
+ return this.http.get(serviceUrl, this.httpOptions);
1903
+ }
1904
+ updateQuestionState(params) {
1905
+ let serviceUrl = this.SERVICE_URL + 'update/question/state';
1906
+ this.generateRequestParams(params);
1907
+ return this.http.put(serviceUrl, this.httpOptions);
1908
+ }
1909
+ // construye los headers y params
1910
+ generateRequestParams(param) {
1911
+ this.httpOptions = {
1912
+ header: new HttpHeaders(),
1913
+ params: param,
1914
+ };
1915
+ }
1916
+ }
1917
+ TestService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TestService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1918
+ TestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TestService, providedIn: 'root' });
1919
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TestService, decorators: [{
1920
+ type: Injectable,
1921
+ args: [{
1922
+ providedIn: 'root',
1923
+ }]
1864
1924
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
1865
1925
 
1866
- class MarketingService {
1867
- constructor(http) {
1868
- this.http = http;
1869
- this.SERVICE_URL = 'https://iptdev.com.co/lab/commercial/api/';
1870
- }
1871
- getStrategyByUserCommercial(user) {
1872
- let serviceUrl = this.SERVICE_URL + 'post/contact/strategy/byaviser';
1873
- this.generateRequestParams(user);
1874
- return this.http.post(serviceUrl, this.httpOptions);
1875
- }
1876
- getObservationsContact(codeContact) {
1877
- let serviceUrl = this.SERVICE_URL + 'get/contact/observation/strategy/bycode/' + codeContact;
1878
- return this.http.get(serviceUrl);
1879
- }
1880
- createObservations(params) {
1881
- let serviceUrl = this.SERVICE_URL + 'post/contact/observation/create';
1882
- this.generateRequestParams(params);
1883
- return this.http.post(serviceUrl, this.httpOptions);
1884
- }
1885
- getUserStatistics(userToken) {
1886
- let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/statistics';
1887
- this.generateRequestParams(userToken);
1888
- return this.http.post(serviceUrl, this.httpOptions);
1889
- }
1890
- getTopAdviser() {
1891
- let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/topadviser';
1892
- return this.http.get(serviceUrl, this.httpOptions);
1893
- }
1894
- getMovementStatus() {
1895
- let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/movements/status';
1896
- return this.http.get(serviceUrl, this.httpOptions);
1897
- }
1898
- getgroupSignupStatus() {
1899
- let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/group/signup';
1900
- return this.http.get(serviceUrl, this.httpOptions);
1901
- }
1902
- //Construye los headers y paramns
1903
- generateRequestParams(param) {
1904
- this.httpOptions = {
1905
- header: new HttpHeaders(),
1906
- params: param,
1907
- };
1908
- }
1909
- }
1910
- MarketingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MarketingService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1911
- MarketingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MarketingService, providedIn: 'root' });
1912
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MarketingService, decorators: [{
1913
- type: Injectable,
1914
- args: [{
1915
- providedIn: 'root'
1916
- }]
1926
+ class MarketingService {
1927
+ constructor(http) {
1928
+ this.http = http;
1929
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/commercial/api/';
1930
+ }
1931
+ getStrategyByUserCommercial(user) {
1932
+ let serviceUrl = this.SERVICE_URL + 'post/contact/strategy/byaviser';
1933
+ this.generateRequestParams(user);
1934
+ return this.http.post(serviceUrl, this.httpOptions);
1935
+ }
1936
+ getObservationsContact(codeContact) {
1937
+ let serviceUrl = this.SERVICE_URL + 'get/contact/observation/strategy/bycode/' + codeContact;
1938
+ return this.http.get(serviceUrl);
1939
+ }
1940
+ createObservations(params) {
1941
+ let serviceUrl = this.SERVICE_URL + 'post/contact/observation/create';
1942
+ this.generateRequestParams(params);
1943
+ return this.http.post(serviceUrl, this.httpOptions);
1944
+ }
1945
+ getUserStatistics(userToken) {
1946
+ let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/statistics';
1947
+ this.generateRequestParams(userToken);
1948
+ return this.http.post(serviceUrl, this.httpOptions);
1949
+ }
1950
+ getTopAdviser() {
1951
+ let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/topadviser';
1952
+ return this.http.get(serviceUrl, this.httpOptions);
1953
+ }
1954
+ getMovementStatus() {
1955
+ let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/movements/status';
1956
+ return this.http.get(serviceUrl, this.httpOptions);
1957
+ }
1958
+ getgroupSignupStatus() {
1959
+ let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/group/signup';
1960
+ return this.http.get(serviceUrl, this.httpOptions);
1961
+ }
1962
+ //Construye los headers y paramns
1963
+ generateRequestParams(param) {
1964
+ this.httpOptions = {
1965
+ header: new HttpHeaders(),
1966
+ params: param,
1967
+ };
1968
+ }
1969
+ }
1970
+ MarketingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MarketingService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1971
+ MarketingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MarketingService, providedIn: 'root' });
1972
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MarketingService, decorators: [{
1973
+ type: Injectable,
1974
+ args: [{
1975
+ providedIn: 'root'
1976
+ }]
1917
1977
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
1918
1978
 
1919
- class BudgetService {
1920
- constructor(http) {
1921
- this.http = http;
1922
- this.SERVICE_URL = 'https://iptdev.com.co/lab/budget/api/';
1923
- }
1924
- getAllDiscount(user) {
1925
- let serviceUrl = this.SERVICE_URL + 'post/discounts/coupon/all';
1926
- this.generateRequestParams(user);
1927
- return this.http.post(serviceUrl, this.httpOptions);
1928
- }
1929
- createDiscount(params) {
1930
- let serviceUrl = this.SERVICE_URL + 'post/discount/coupon/create';
1931
- this.generateRequestParams(params);
1932
- return this.http.post(serviceUrl, this.httpOptions);
1933
- }
1934
- updateDiscount(params) {
1935
- let serviceUrl = this.SERVICE_URL + 'post/discount/coupon/update';
1936
- this.generateRequestParams(params);
1937
- return this.http.post(serviceUrl, this.httpOptions);
1938
- }
1939
- //Construye los headers y paramns
1940
- generateRequestParams(param) {
1941
- this.httpOptions = {
1942
- header: new HttpHeaders(),
1943
- params: param,
1944
- };
1945
- }
1946
- }
1947
- BudgetService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BudgetService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1948
- BudgetService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BudgetService, providedIn: 'root' });
1949
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BudgetService, decorators: [{
1950
- type: Injectable,
1951
- args: [{
1952
- providedIn: 'root'
1953
- }]
1979
+ class BudgetService {
1980
+ constructor(http) {
1981
+ this.http = http;
1982
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/budget/api/';
1983
+ }
1984
+ getAllDiscount(user) {
1985
+ let serviceUrl = this.SERVICE_URL + 'post/discounts/coupon/all';
1986
+ this.generateRequestParams(user);
1987
+ return this.http.post(serviceUrl, this.httpOptions);
1988
+ }
1989
+ createDiscount(params) {
1990
+ let serviceUrl = this.SERVICE_URL + 'post/discount/coupon/create';
1991
+ this.generateRequestParams(params);
1992
+ return this.http.post(serviceUrl, this.httpOptions);
1993
+ }
1994
+ updateDiscount(params) {
1995
+ let serviceUrl = this.SERVICE_URL + 'post/discount/coupon/update';
1996
+ this.generateRequestParams(params);
1997
+ return this.http.post(serviceUrl, this.httpOptions);
1998
+ }
1999
+ //Construye los headers y paramns
2000
+ generateRequestParams(param) {
2001
+ this.httpOptions = {
2002
+ header: new HttpHeaders(),
2003
+ params: param,
2004
+ };
2005
+ }
2006
+ }
2007
+ BudgetService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BudgetService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2008
+ BudgetService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BudgetService, providedIn: 'root' });
2009
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BudgetService, decorators: [{
2010
+ type: Injectable,
2011
+ args: [{
2012
+ providedIn: 'root'
2013
+ }]
1954
2014
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
1955
2015
 
1956
- class CoreModule {
1957
- }
1958
- CoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1959
- CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule });
1960
- CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, providers: [
1961
- ParameterService,
1962
- CourseService,
1963
- StorageService,
1964
- UserService,
1965
- SwitchService,
1966
- RedirectGuard,
1967
- BaseService,
1968
- TestService,
1969
- MarketingService,
1970
- BudgetService
1971
- ] });
1972
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, decorators: [{
1973
- type: NgModule,
1974
- args: [{
1975
- providers: [
1976
- ParameterService,
1977
- CourseService,
1978
- StorageService,
1979
- UserService,
1980
- SwitchService,
1981
- RedirectGuard,
1982
- BaseService,
1983
- TestService,
1984
- MarketingService,
1985
- BudgetService
1986
- ]
1987
- }]
1988
- }] });
2016
+ class ClassroomService {
2017
+ constructor(http) {
2018
+ this.http = http;
2019
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
2020
+ }
2021
+ getClassroomsByModality(params) {
2022
+ let serviceUrl = this.SERVICE_URL + 'api/post/classroom/by/modality';
2023
+ this.generateRequestParams(params);
2024
+ return this.http.post(serviceUrl, this.httpOptions);
2025
+ }
2026
+ // construye los headers y params
2027
+ generateRequestParams(param) {
2028
+ this.httpOptions = {
2029
+ header: new HttpHeaders(),
2030
+ params: param,
2031
+ };
2032
+ }
2033
+ }
2034
+ ClassroomService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ClassroomService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2035
+ ClassroomService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ClassroomService, providedIn: 'root' });
2036
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ClassroomService, decorators: [{
2037
+ type: Injectable,
2038
+ args: [{
2039
+ providedIn: 'root',
2040
+ }]
2041
+ }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
1989
2042
 
1990
- class DesignSystemModule {
1991
- }
1992
- DesignSystemModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1993
- DesignSystemModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, imports: [ComponentsModule,
1994
- CoreModule,
1995
- CurrencyMaskModule], exports: [ComponentsModule,
1996
- CoreModule,
1997
- CurrencyMaskModule] });
1998
- DesignSystemModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, imports: [[
1999
- ComponentsModule,
2000
- CoreModule,
2001
- CurrencyMaskModule
2002
- ], ComponentsModule,
2003
- CoreModule,
2004
- CurrencyMaskModule] });
2005
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, decorators: [{
2006
- type: NgModule,
2007
- args: [{
2008
- imports: [
2009
- ComponentsModule,
2010
- CoreModule,
2011
- CurrencyMaskModule
2012
- ],
2013
- exports: [
2014
- ComponentsModule,
2015
- CoreModule,
2016
- CurrencyMaskModule
2017
- ],
2018
- }]
2043
+ class CoreModule {
2044
+ }
2045
+ CoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2046
+ CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule });
2047
+ CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, providers: [
2048
+ ParameterService,
2049
+ CourseService,
2050
+ StorageService,
2051
+ UserService,
2052
+ SwitchService,
2053
+ RedirectGuard,
2054
+ BaseService,
2055
+ TestService,
2056
+ MarketingService,
2057
+ ClassroomService,
2058
+ BudgetService
2059
+ ] });
2060
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, decorators: [{
2061
+ type: NgModule,
2062
+ args: [{
2063
+ providers: [
2064
+ ParameterService,
2065
+ CourseService,
2066
+ StorageService,
2067
+ UserService,
2068
+ SwitchService,
2069
+ RedirectGuard,
2070
+ BaseService,
2071
+ TestService,
2072
+ MarketingService,
2073
+ ClassroomService,
2074
+ BudgetService
2075
+ ]
2076
+ }]
2019
2077
  }] });
2020
2078
 
2021
- class AttendanceService {
2022
- constructor(http) {
2023
- this.http = http;
2024
- this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api';
2025
- }
2026
- addEventByCourseRq(params) {
2027
- let serviceUrl = `${this.SERVICE_URL}/post/event/by/course`;
2028
- this.generateRequestParams(params);
2029
- return this.http.post(serviceUrl, this.httpOptions);
2030
- }
2031
- getEventsByCourseCode(params) {
2032
- let serviceUrl = `${this.SERVICE_URL}/post/obtain/events/by/course_code`;
2033
- this.generateRequestParams(params);
2034
- return this.http.post(serviceUrl, this.httpOptions);
2035
- }
2036
- getEventByCode(params) {
2037
- let serviceUrl = `${this.SERVICE_URL}/post/obtain/event/by/code`;
2038
- this.generateRequestParams(params);
2039
- return this.http.post(serviceUrl, this.httpOptions);
2040
- }
2041
- registerNewAttendanceByEvent(params) {
2042
- let serviceUrl = `${this.SERVICE_URL}/register/attendance/by/event`;
2043
- this.generateRequestParams(params);
2044
- return this.http.post(serviceUrl, this.httpOptions);
2045
- }
2046
- getAttendaceByCourse(courseCode) {
2047
- let serviceUrl = `${this.SERVICE_URL}/post/obtain/attendances/by/course/${courseCode}`;
2048
- return this.http.get(serviceUrl);
2049
- }
2050
- getCODCodeByStudentCode(studentCode) {
2051
- let serviceUrl = `${this.SERVICE_URL}/get/cod_code/by/student_code/${studentCode}`;
2052
- return this.http.get(serviceUrl);
2053
- }
2054
- getAttendanceHistoryByStudent(token, cod_code) {
2055
- let serviceUrl = `${this.SERVICE_URL}/post/obtain/attendance/history/by/student`;
2056
- this.generateRequestParams({ token, cod_code });
2057
- return this.http.post(serviceUrl, this.httpOptions);
2058
- }
2059
- getAllNotAttendancesByCodRq(params) {
2060
- let serviceUrl = `${this.SERVICE_URL}/get/all/not/attendances/by/cod`;
2061
- this.generateRequestParams(params);
2062
- return this.http.post(serviceUrl, this.httpOptions);
2063
- }
2064
- // construye los headers y params
2065
- generateRequestParams(param) {
2066
- this.httpOptions = {
2067
- header: new HttpHeaders(),
2068
- params: param,
2069
- };
2070
- }
2071
- }
2072
- AttendanceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AttendanceService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2073
- AttendanceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AttendanceService, providedIn: 'root' });
2074
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AttendanceService, decorators: [{
2075
- type: Injectable,
2076
- args: [{
2077
- providedIn: 'root'
2078
- }]
2079
- }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2079
+ class DesignSystemModule {
2080
+ }
2081
+ DesignSystemModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2082
+ DesignSystemModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, imports: [ComponentsModule,
2083
+ CoreModule,
2084
+ CurrencyMaskModule], exports: [ComponentsModule,
2085
+ CoreModule,
2086
+ CurrencyMaskModule] });
2087
+ DesignSystemModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, imports: [[
2088
+ ComponentsModule,
2089
+ CoreModule,
2090
+ CurrencyMaskModule
2091
+ ], ComponentsModule,
2092
+ CoreModule,
2093
+ CurrencyMaskModule] });
2094
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, decorators: [{
2095
+ type: NgModule,
2096
+ args: [{
2097
+ imports: [
2098
+ ComponentsModule,
2099
+ CoreModule,
2100
+ CurrencyMaskModule
2101
+ ],
2102
+ exports: [
2103
+ ComponentsModule,
2104
+ CoreModule,
2105
+ CurrencyMaskModule
2106
+ ],
2107
+ }]
2108
+ }] });
2080
2109
 
2081
- class CalendarService {
2082
- constructor(http) {
2083
- this.http = http;
2084
- this.SERVICE_URL = 'https://iptdev.com.co/lab/calendar/api/';
2085
- }
2086
- getEventByIdCalendar(idCalendar) {
2087
- let serviceUrl = this.SERVICE_URL + 'get/event/calendar/idcalendar/all/' + idCalendar;
2088
- return this.http.get(serviceUrl);
2089
- }
2090
- postEventByDayTime(params) {
2091
- let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/datetime';
2092
- this.generateRequestParams(params);
2093
- return this.http.post(serviceUrl, this.httpOptions);
2094
- }
2095
- generateRequestParams(param) {
2096
- this.httpOptions = {
2097
- header: new HttpHeaders(),
2098
- params: param,
2099
- };
2100
- }
2101
- }
2102
- CalendarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CalendarService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2103
- CalendarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CalendarService, providedIn: 'root' });
2104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CalendarService, decorators: [{
2105
- type: Injectable,
2106
- args: [{
2107
- providedIn: 'root',
2108
- }]
2110
+ class AttendanceService {
2111
+ constructor(http) {
2112
+ this.http = http;
2113
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api';
2114
+ }
2115
+ addEventByCourseRq(params) {
2116
+ let serviceUrl = `${this.SERVICE_URL}/post/event/by/course`;
2117
+ this.generateRequestParams(params);
2118
+ return this.http.post(serviceUrl, this.httpOptions);
2119
+ }
2120
+ getEventsByCourseCode(params) {
2121
+ let serviceUrl = `${this.SERVICE_URL}/post/obtain/events/by/course_code`;
2122
+ this.generateRequestParams(params);
2123
+ return this.http.post(serviceUrl, this.httpOptions);
2124
+ }
2125
+ getEventByCode(params) {
2126
+ let serviceUrl = `${this.SERVICE_URL}/post/obtain/event/by/code`;
2127
+ this.generateRequestParams(params);
2128
+ return this.http.post(serviceUrl, this.httpOptions);
2129
+ }
2130
+ registerNewAttendanceByEvent(params) {
2131
+ let serviceUrl = `${this.SERVICE_URL}/register/attendance/by/event`;
2132
+ this.generateRequestParams(params);
2133
+ return this.http.post(serviceUrl, this.httpOptions);
2134
+ }
2135
+ getAttendaceByCourse(courseCode) {
2136
+ let serviceUrl = `${this.SERVICE_URL}/post/obtain/attendances/by/course/${courseCode}`;
2137
+ return this.http.get(serviceUrl);
2138
+ }
2139
+ getCODCodeByStudentCode(studentCode) {
2140
+ let serviceUrl = `${this.SERVICE_URL}/get/cod_code/by/student_code/${studentCode}`;
2141
+ return this.http.get(serviceUrl);
2142
+ }
2143
+ getAttendanceHistoryByStudent(token, cod_code) {
2144
+ let serviceUrl = `${this.SERVICE_URL}/post/obtain/attendance/history/by/student`;
2145
+ this.generateRequestParams({ token, cod_code });
2146
+ return this.http.post(serviceUrl, this.httpOptions);
2147
+ }
2148
+ getAllNotAttendancesByCodRq(params) {
2149
+ let serviceUrl = `${this.SERVICE_URL}/get/all/not/attendances/by/cod`;
2150
+ this.generateRequestParams(params);
2151
+ return this.http.post(serviceUrl, this.httpOptions);
2152
+ }
2153
+ // construye los headers y params
2154
+ generateRequestParams(param) {
2155
+ this.httpOptions = {
2156
+ header: new HttpHeaders(),
2157
+ params: param,
2158
+ };
2159
+ }
2160
+ }
2161
+ AttendanceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AttendanceService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2162
+ AttendanceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AttendanceService, providedIn: 'root' });
2163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AttendanceService, decorators: [{
2164
+ type: Injectable,
2165
+ args: [{
2166
+ providedIn: 'root'
2167
+ }]
2109
2168
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2110
2169
 
2111
- class NotesService {
2112
- constructor(http) {
2113
- this.http = http;
2114
- this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
2115
- }
2116
- getNotesByGroup(params) {
2117
- let serviceUrl = this.SERVICE_URL + 'post/obtain/notes/by/course';
2118
- this.generateRequestParams(params);
2119
- return this.http.post(serviceUrl, this.httpOptions);
2120
- }
2121
- getNotesByStudent(params) {
2122
- let serviceUrl = this.SERVICE_URL + 'post/obtain/notes/by/student';
2123
- this.generateRequestParams(params);
2124
- return this.http.post(serviceUrl, this.httpOptions);
2125
- }
2126
- createNewNote(params) {
2127
- let serviceUrl = this.SERVICE_URL + 'post/create/note';
2128
- this.generateRequestParams(params);
2129
- return this.http.post(serviceUrl, this.httpOptions);
2130
- }
2131
- updateStudentNote(params) {
2132
- let serviceUrl = this.SERVICE_URL + 'update/note';
2133
- this.generateRequestParams(params);
2134
- return this.http.put(serviceUrl, this.httpOptions);
2135
- }
2136
- calculateFinalNote(params) {
2137
- let serviceUrl = this.SERVICE_URL + 'post/calculate/final/note';
2138
- this.generateRequestParams(params);
2139
- return this.http.post(serviceUrl, this.httpOptions);
2140
- }
2141
- generateRequestParams(param) {
2142
- this.httpOptions = {
2143
- header: new HttpHeaders(),
2144
- params: param,
2145
- };
2146
- }
2147
- }
2148
- NotesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NotesService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2149
- NotesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NotesService, providedIn: 'root' });
2150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NotesService, decorators: [{
2151
- type: Injectable,
2152
- args: [{
2153
- providedIn: 'root'
2154
- }]
2170
+ class NotesService {
2171
+ constructor(http) {
2172
+ this.http = http;
2173
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
2174
+ }
2175
+ getNotesByGroup(params) {
2176
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/notes/by/course';
2177
+ this.generateRequestParams(params);
2178
+ return this.http.post(serviceUrl, this.httpOptions);
2179
+ }
2180
+ getNotesByStudent(params) {
2181
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/notes/by/student';
2182
+ this.generateRequestParams(params);
2183
+ return this.http.post(serviceUrl, this.httpOptions);
2184
+ }
2185
+ createNewNote(params) {
2186
+ let serviceUrl = this.SERVICE_URL + 'post/create/note';
2187
+ this.generateRequestParams(params);
2188
+ return this.http.post(serviceUrl, this.httpOptions);
2189
+ }
2190
+ updateStudentNote(params) {
2191
+ let serviceUrl = this.SERVICE_URL + 'update/note';
2192
+ this.generateRequestParams(params);
2193
+ return this.http.put(serviceUrl, this.httpOptions);
2194
+ }
2195
+ calculateFinalNote(params) {
2196
+ let serviceUrl = this.SERVICE_URL + 'post/calculate/final/note';
2197
+ this.generateRequestParams(params);
2198
+ return this.http.post(serviceUrl, this.httpOptions);
2199
+ }
2200
+ generateRequestParams(param) {
2201
+ this.httpOptions = {
2202
+ header: new HttpHeaders(),
2203
+ params: param,
2204
+ };
2205
+ }
2206
+ }
2207
+ NotesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NotesService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2208
+ NotesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NotesService, providedIn: 'root' });
2209
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NotesService, decorators: [{
2210
+ type: Injectable,
2211
+ args: [{
2212
+ providedIn: 'root'
2213
+ }]
2155
2214
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2156
2215
 
2157
- class StudentService {
2158
- constructor(http) {
2159
- this.http = http;
2160
- this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
2161
- }
2162
- getStudentsByCourse(params) {
2163
- let serviceUrl = this.SERVICE_URL + 'post/obtain/students/by/course';
2164
- this.generateRequestParams(params);
2165
- return this.http.post(serviceUrl, this.httpOptions);
2166
- }
2167
- generateRequestParams(param) {
2168
- this.httpOptions = {
2169
- header: new HttpHeaders(),
2170
- params: param,
2171
- };
2172
- }
2173
- }
2174
- StudentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StudentService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2175
- StudentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StudentService, providedIn: 'root' });
2176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StudentService, decorators: [{
2177
- type: Injectable,
2178
- args: [{
2179
- providedIn: 'root'
2180
- }]
2216
+ class StudentService {
2217
+ constructor(http) {
2218
+ this.http = http;
2219
+ this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
2220
+ }
2221
+ getStudentsByCourse(params) {
2222
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/students/by/course';
2223
+ this.generateRequestParams(params);
2224
+ return this.http.post(serviceUrl, this.httpOptions);
2225
+ }
2226
+ generateRequestParams(param) {
2227
+ this.httpOptions = {
2228
+ header: new HttpHeaders(),
2229
+ params: param,
2230
+ };
2231
+ }
2232
+ }
2233
+ StudentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StudentService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2234
+ StudentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StudentService, providedIn: 'root' });
2235
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StudentService, decorators: [{
2236
+ type: Injectable,
2237
+ args: [{
2238
+ providedIn: 'root'
2239
+ }]
2181
2240
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2182
2241
 
2183
- class Session {
2242
+ class Session {
2184
2243
  }
2185
2244
 
2186
- class UserRs {
2187
- }
2188
- class UserLoginRs {
2245
+ class UserRs {
2246
+ }
2247
+ class UserLoginRs {
2189
2248
  }
2190
2249
 
2191
- /*
2192
- * Public API Surface of design-system
2250
+ /*
2251
+ * Public API Surface of design-system
2193
2252
  */
2194
2253
 
2195
- /**
2196
- * Generated bundle index. Do not edit.
2254
+ /**
2255
+ * Generated bundle index. Do not edit.
2197
2256
  */
2198
2257
 
2199
- export { AsideButtonComponent, AttendanceService, BaseService, BudgetService, ButtonComponent, CalendarService, CheckboxComponent, ComponentsModule, CoreModule, CourseService, CreateUserFormComponent, DatalistComponent, DesignSystemModule, InputComponent, LevelButtonComponent, LevelTextComponent, LoaderComponent, LoginFormComponent, MarketingService, NotesService, ParameterService, RadioComponent, RedirectGuard, SelectComponent, Session, SidenavComponent, StorageService, StudentService, SwitchService, TestService, TextLinkComponent, UserLoginRs, UserRs, UserService };
2258
+ export { AsideButtonComponent, AttendanceService, BaseService, BudgetService, ButtonComponent, CalendarService, CheckboxComponent, ClassroomService, ComponentsModule, CoreModule, CourseService, CreateUserFormComponent, DatalistComponent, DesignSystemModule, InputComponent, LevelButtonComponent, LevelTextComponent, LoaderComponent, LoginFormComponent, MarketingService, NotesService, ParameterService, RadioComponent, RedirectGuard, SelectComponent, Session, SidenavComponent, StorageService, StudentService, SwitchService, TestService, TextLinkComponent, UserLoginRs, UserRs, UserService };
2200
2259
  //# sourceMappingURL=iptdevs-design-system.mjs.map