iptdevs-design-system 2.6.56 → 2.7.0

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 (118) 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 +102 -102
  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 +150 -150
  19. package/esm2020/lib/core/core.module.mjs +52 -52
  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 -2
  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/activity-service/activity.service.mjs +87 -92
  39. package/esm2020/lib/core/services/attendance-service/attendance.service.mjs +64 -69
  40. package/esm2020/lib/core/services/budget-service/budget-service.mjs +36 -41
  41. package/esm2020/lib/core/services/calendar-service/calendar.service.mjs +55 -59
  42. package/esm2020/lib/core/services/classroom-service/classroom-service.service.mjs +31 -36
  43. package/esm2020/lib/core/services/course-service/course-service.model.mjs +70 -75
  44. package/esm2020/lib/core/services/marketing-service/marketing-service.mjs +52 -57
  45. package/esm2020/lib/core/services/notes-service/notes.service.mjs +46 -50
  46. package/esm2020/lib/core/services/parameters-service/parameters.service.mjs +117 -114
  47. package/esm2020/lib/core/services/service-enviroments.mjs +26 -0
  48. package/esm2020/lib/core/services/storage-service/storage-service.mjs +50 -50
  49. package/esm2020/lib/core/services/student-service/student.service.mjs +26 -30
  50. package/esm2020/lib/core/services/switch-service/switch.service.mjs +16 -16
  51. package/esm2020/lib/core/services/test-service/test.service.mjs +131 -136
  52. package/esm2020/lib/core/services/user-service/user-service.mjs +80 -86
  53. package/esm2020/lib/core/utils/base-service/base.service.mjs +186 -186
  54. package/esm2020/lib/core/utils/route-service/route.service.mjs +18 -18
  55. package/esm2020/lib/design-system.module.mjs +36 -36
  56. package/esm2020/public-api.mjs +61 -61
  57. package/fesm2015/iptdevs-design-system.mjs +2278 -2309
  58. package/fesm2015/iptdevs-design-system.mjs.map +1 -1
  59. package/fesm2020/iptdevs-design-system.mjs +2275 -2306
  60. package/fesm2020/iptdevs-design-system.mjs.map +1 -1
  61. package/iptdevs-design-system.d.ts +5 -5
  62. package/lib/components/atoms/aside-button/aside-button.component.d.ts +11 -11
  63. package/lib/components/atoms/button/button.component.d.ts +13 -13
  64. package/lib/components/atoms/checkbox/checkbox.component.d.ts +11 -11
  65. package/lib/components/atoms/datalist/datalist.component.d.ts +20 -20
  66. package/lib/components/atoms/input/input.component.d.ts +26 -26
  67. package/lib/components/atoms/level-button/level-button.component.d.ts +11 -11
  68. package/lib/components/atoms/level-text/level-text.component.d.ts +7 -7
  69. package/lib/components/atoms/loader/loader.component.d.ts +7 -7
  70. package/lib/components/atoms/radio/radio.component.d.ts +11 -11
  71. package/lib/components/atoms/select/select.component.d.ts +26 -26
  72. package/lib/components/atoms/text-link/text-link.component.d.ts +12 -12
  73. package/lib/components/components.module.d.ts +24 -24
  74. package/lib/components/forms/create-user-form/create-user-form.component.d.ts +36 -36
  75. package/lib/components/forms/login-form/login-form.component.d.ts +13 -13
  76. package/lib/components/material.module.d.ts +11 -11
  77. package/lib/components/molecules/sidenav/sidenav.component.d.ts +25 -25
  78. package/lib/core/core.module.d.ts +6 -6
  79. package/lib/core/models/activities/activities.interface.d.ts +12 -12
  80. package/lib/core/models/attendance/attendance.interface.d.ts +62 -62
  81. package/lib/core/models/budget/budget.model.d.ts +69 -69
  82. package/lib/core/models/calendar/calendar-rq.models.d.ts +27 -27
  83. package/lib/core/models/classroom/classroom-rq.model.d.ts +18 -18
  84. package/lib/core/models/cod/cod-rq.model.d.ts +51 -51
  85. package/lib/core/models/course/course-rq.model.d.ts +86 -86
  86. package/lib/core/models/cronogram/cronogram.models.d.ts +183 -183
  87. package/lib/core/models/marketing/marketing.model.d.ts +104 -104
  88. package/lib/core/models/notes/notes.interface.d.ts +89 -89
  89. package/lib/core/models/response/response.interface.d.ts +10 -10
  90. package/lib/core/models/session/session.model.d.ts +5 -5
  91. package/lib/core/models/student/student.interface.d.ts +4 -4
  92. package/lib/core/models/table/table-rs.model.d.ts +7 -7
  93. package/lib/core/models/test/test.model.d.ts +219 -219
  94. package/lib/core/models/url/url.model.d.ts +8 -8
  95. package/lib/core/models/user/user-rq.model.d.ts +86 -86
  96. package/lib/core/models/user/user-rs.model.d.ts +35 -35
  97. package/lib/core/services/activity-service/activity.service.d.ts +25 -26
  98. package/lib/core/services/attendance-service/attendance.service.d.ts +22 -23
  99. package/lib/core/services/budget-service/budget-service.d.ts +15 -16
  100. package/lib/core/services/calendar-service/calendar.service.d.ts +21 -22
  101. package/lib/core/services/classroom-service/classroom-service.service.d.ts +14 -15
  102. package/lib/core/services/course-service/course-service.model.d.ts +23 -24
  103. package/lib/core/services/marketing-service/marketing-service.d.ts +19 -20
  104. package/lib/core/services/notes-service/notes.service.d.ts +18 -19
  105. package/lib/core/services/parameters-service/parameters.service.d.ts +35 -34
  106. package/lib/core/services/service-enviroments.d.ts +5 -0
  107. package/lib/core/services/storage-service/storage-service.d.ts +18 -18
  108. package/lib/core/services/student-service/student.service.d.ts +13 -14
  109. package/lib/core/services/switch-service/switch.service.d.ts +8 -8
  110. package/lib/core/services/test-service/test.service.d.ts +34 -35
  111. package/lib/core/services/user-service/user-service.d.ts +25 -26
  112. package/lib/core/utils/base-service/base.service.d.ts +22 -22
  113. package/lib/core/utils/route-service/route.service.d.ts +9 -9
  114. package/lib/design-system.module.d.ts +9 -9
  115. package/package.json +1 -1
  116. package/public-api.d.ts +52 -52
  117. package/environments/environment.d.ts +0 -5
  118. package/esm2020/environments/environment.mjs +0 -6
@@ -20,2386 +20,2355 @@ 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.setBinding();
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
- setBinding() {
599
- if (this.initialValue !== '') {
600
- this.binding = this.initialValue;
601
- }
602
- else {
603
- this.binding = this.defaultText;
604
- }
605
- }
606
- click(value) {
607
- this.clicked = value.isTrusted;
608
- }
609
- ngOnInit() {
610
- this.setBinding();
611
- }
612
- get textClass() {
613
- return this.defaultText === '' ? 'selected' : 'select';
614
- }
615
- get labelClass() {
616
- return this.clicked === false ? 'label' : 'labelUp';
617
- }
618
- }
619
- SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
620
- 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", initialValue: "initialValue", control: "control" }, outputs: { eventSelect: "eventSelect" }, usesOnChanges: true, ngImport: i0, template: `
621
- <div class="select-container">
622
- <label [ngClass]="labelClass">{{ defaultText }}</label>
623
- <select
624
- [(ngModel)]="binding"
625
- (ngModelChange)="seleccionar($event)"
626
- (click)="click($event)"
627
- [ngClass]="textClass"
628
- [disabled]="disabledSel">
629
- <option *ngFor="let item of data; index as i" [value]="item.code">
630
- {{ item.name }} {{ item.prefix }}
631
- </option>
632
- </select>
633
- </div>
634
- `, 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"] }] });
635
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SelectComponent, decorators: [{
636
- type: Component,
637
- args: [{ selector: 'ipt-select', template: `
638
- <div class="select-container">
639
- <label [ngClass]="labelClass">{{ defaultText }}</label>
640
- <select
641
- [(ngModel)]="binding"
642
- (ngModelChange)="seleccionar($event)"
643
- (click)="click($event)"
644
- [ngClass]="textClass"
645
- [disabled]="disabledSel">
646
- <option *ngFor="let item of data; index as i" [value]="item.code">
647
- {{ item.name }} {{ item.prefix }}
648
- </option>
649
- </select>
650
- </div>
651
- `, 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"] }]
652
- }], propDecorators: { isRequired: [{
653
- type: Input
654
- }], data: [{
655
- type: Input
656
- }], defaultText: [{
657
- type: Input
658
- }], selectCode: [{
659
- type: Input
660
- }], disabledSel: [{
661
- type: Input
662
- }], initialValue: [{
663
- type: Input
664
- }], eventSelect: [{
665
- type: Output
666
- }], control: [{
667
- 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.setBinding();
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
+ setBinding() {
599
+ if (this.initialValue !== '') {
600
+ this.binding = this.initialValue;
601
+ }
602
+ else {
603
+ this.binding = this.defaultText;
604
+ }
605
+ }
606
+ click(value) {
607
+ this.clicked = value.isTrusted;
608
+ }
609
+ ngOnInit() {
610
+ this.setBinding();
611
+ }
612
+ get textClass() {
613
+ return this.defaultText === '' ? 'selected' : 'select';
614
+ }
615
+ get labelClass() {
616
+ return this.clicked === false ? 'label' : 'labelUp';
617
+ }
618
+ }
619
+ SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
620
+ 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", initialValue: "initialValue", control: "control" }, outputs: { eventSelect: "eventSelect" }, usesOnChanges: true, ngImport: i0, template: `
621
+ <div class="select-container">
622
+ <label [ngClass]="labelClass">{{ defaultText }}</label>
623
+ <select
624
+ [(ngModel)]="binding"
625
+ (ngModelChange)="seleccionar($event)"
626
+ (click)="click($event)"
627
+ [ngClass]="textClass"
628
+ [disabled]="disabledSel">
629
+ <option *ngFor="let item of data; index as i" [value]="item.code">
630
+ {{ item.name }} {{ item.prefix }}
631
+ </option>
632
+ </select>
633
+ </div>
634
+ `, 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"] }] });
635
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SelectComponent, decorators: [{
636
+ type: Component,
637
+ args: [{ selector: 'ipt-select', template: `
638
+ <div class="select-container">
639
+ <label [ngClass]="labelClass">{{ defaultText }}</label>
640
+ <select
641
+ [(ngModel)]="binding"
642
+ (ngModelChange)="seleccionar($event)"
643
+ (click)="click($event)"
644
+ [ngClass]="textClass"
645
+ [disabled]="disabledSel">
646
+ <option *ngFor="let item of data; index as i" [value]="item.code">
647
+ {{ item.name }} {{ item.prefix }}
648
+ </option>
649
+ </select>
650
+ </div>
651
+ `, 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"] }]
652
+ }], propDecorators: { isRequired: [{
653
+ type: Input
654
+ }], data: [{
655
+ type: Input
656
+ }], defaultText: [{
657
+ type: Input
658
+ }], selectCode: [{
659
+ type: Input
660
+ }], disabledSel: [{
661
+ type: Input
662
+ }], initialValue: [{
663
+ type: Input
664
+ }], eventSelect: [{
665
+ type: Output
666
+ }], control: [{
667
+ type: Input
668
668
  }] } });
669
669
 
670
- class TextLinkComponent {
671
- constructor() {
672
- this.isClicked = new EventEmitter();
673
- }
674
- isLinkClicked() {
675
- this.isClicked.emit(true);
676
- }
677
- }
678
- TextLinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TextLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
679
- 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: `
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
- `, 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"] });
687
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TextLinkComponent, decorators: [{
688
- type: Component,
689
- args: [{ selector: 'ipt-text-link', template: `
690
- <a class="text-link" (click)='isLinkClicked()'>
691
- <p class="text-link__paragraph">
692
- <i class="{{icon}}" aria-hidden="true"></i>
693
- {{text}}
694
- </p>
695
- </a>
696
- `, 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"] }]
697
- }], ctorParameters: function () { return []; }, propDecorators: { text: [{
698
- type: Input
699
- }], blank: [{
700
- type: Input
701
- }], icon: [{
702
- type: Input
703
- }], isClicked: [{
704
- type: Output
670
+ class TextLinkComponent {
671
+ constructor() {
672
+ this.isClicked = new EventEmitter();
673
+ }
674
+ isLinkClicked() {
675
+ this.isClicked.emit(true);
676
+ }
677
+ }
678
+ TextLinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TextLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
679
+ 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: `
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
+ `, 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"] });
687
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TextLinkComponent, decorators: [{
688
+ type: Component,
689
+ args: [{ selector: 'ipt-text-link', template: `
690
+ <a class="text-link" (click)='isLinkClicked()'>
691
+ <p class="text-link__paragraph">
692
+ <i class="{{icon}}" aria-hidden="true"></i>
693
+ {{text}}
694
+ </p>
695
+ </a>
696
+ `, 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"] }]
697
+ }], ctorParameters: function () { return []; }, propDecorators: { text: [{
698
+ type: Input
699
+ }], blank: [{
700
+ type: Input
701
+ }], icon: [{
702
+ type: Input
703
+ }], isClicked: [{
704
+ type: Output
705
705
  }] } });
706
706
 
707
- const environment = {
708
- production: false,
709
- baseUrl: 'https://lab.iptdev.com.co/',
710
- assets: 'https://qa.iptdev.com.co/assets/'
711
- };
712
-
713
- class UserService {
714
- constructor(http) {
715
- this.http = http;
716
- // private SERVICE_URL = 'https://iptdev.com.co/lab/users/api/';
717
- this.SERVICE_URL = environment.baseUrl + 'users/api/';
718
- }
719
- login(userLogin) {
720
- let serviceUrl = this.SERVICE_URL + 'post/login';
721
- this.generateRequestParams(userLogin);
722
- return this.http.post(serviceUrl, this.httpOptions);
723
- }
724
- resetPassword(resetPassword) {
725
- let serviceUrl = this.SERVICE_URL + 'reset/password';
726
- this.generateRequestParams(resetPassword);
727
- return this.http.post(serviceUrl, this.httpOptions);
728
- }
729
- register(user) {
730
- let serviceUrl = this.SERVICE_URL + 'post/create/web';
731
- this.generateRequestParams(user);
732
- return this.http.post(serviceUrl, this.httpOptions);
733
- }
734
- registerIndex(register) {
735
- let serviceUrl = this.SERVICE_URL + 'post/create/marketing';
736
- this.generateRequestParams(register);
737
- return this.http.post(serviceUrl, this.httpOptions);
738
- }
739
- registerDashboard(user) {
740
- let serviceUrl = this.SERVICE_URL + 'post/create/dashboard';
741
- this.generateRequestParams(user);
742
- return this.http.post(serviceUrl, this.httpOptions);
743
- }
744
- getAvailableTeachers(token) {
745
- let serviceUrl = this.SERVICE_URL + 'post/obtain/teachers';
746
- this.generateRequestParams(token);
747
- return this.http.post(serviceUrl, this.httpOptions);
748
- }
749
- getAllAdvisor(userToken) {
750
- let serviceUrl = this.SERVICE_URL + 'post/obtain/all/user/commercial';
751
- this.generateRequestParams(userToken);
752
- return this.http.post(serviceUrl, this.httpOptions);
753
- }
754
- getByRoleUser(codeRole) {
755
- let serviceUrl = this.SERVICE_URL + 'get/obtain/by/role/user/' + codeRole;
756
- return this.http.get(serviceUrl);
757
- }
758
- getUserStatistics(userToken) {
759
- let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/statistics';
760
- this.generateRequestParams(userToken);
761
- return this.http.post(serviceUrl, this.httpOptions);
762
- }
763
- getRoutesForRole(token) {
764
- let serviceUrl = this.SERVICE_URL + 'post/routes/role';
765
- this.generateRequestParams(token);
766
- return this.http.post(serviceUrl, this.httpOptions);
767
- }
768
- getStudents(token) {
769
- let serviceUrl = this.SERVICE_URL + 'post/obtain/students';
770
- this.generateRequestParams(token);
771
- return this.http.post(serviceUrl, this.httpOptions);
772
- }
773
- getStudent(token) {
774
- let serviceUrl = this.SERVICE_URL + 'post/obtain/student';
775
- this.generateRequestParams(token);
776
- return this.http.post(serviceUrl, this.httpOptions);
777
- }
778
- generateRequestParams(param) {
779
- this.httpOptions = {
780
- header: new HttpHeaders(),
781
- params: param,
782
- };
783
- }
784
- }
785
- 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 });
786
- UserService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: UserService, providedIn: 'root' });
787
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: UserService, decorators: [{
788
- type: Injectable,
789
- args: [{
790
- providedIn: 'root',
791
- }]
707
+ class IPTGeneralService {
708
+ baseUrl() {
709
+ let url = window.location.href;
710
+ if (url.includes('localhost')) {
711
+ return 'https://lab.iptdev.com.co';
712
+ }
713
+ else if (url.includes('inglesparatodos.edu.co') || url.includes('qa')) {
714
+ return 'https://iptdev.com.co';
715
+ }
716
+ else if (url.includes('inglesparatodos.us')) {
717
+ return 'https://iptdev.com.co';
718
+ }
719
+ else {
720
+ return 'error.com';
721
+ }
722
+ }
723
+ // construye los headers y params
724
+ generateRequestParams(param) {
725
+ this.httpOptions = {
726
+ header: new HttpHeaders(),
727
+ params: param,
728
+ };
729
+ }
730
+ }
731
+
732
+ class UserService extends IPTGeneralService {
733
+ constructor(http) {
734
+ super();
735
+ this.http = http;
736
+ this.SERVICE_URL = 'users/api/';
737
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
738
+ }
739
+ login(userLogin) {
740
+ let serviceUrl = this.SERVICE_URL + 'post/login';
741
+ this.generateRequestParams(userLogin);
742
+ return this.http.post(serviceUrl, this.httpOptions);
743
+ }
744
+ resetPassword(resetPassword) {
745
+ let serviceUrl = this.SERVICE_URL + 'reset/password';
746
+ this.generateRequestParams(resetPassword);
747
+ return this.http.post(serviceUrl, this.httpOptions);
748
+ }
749
+ register(user) {
750
+ let serviceUrl = this.SERVICE_URL + 'post/create/web';
751
+ this.generateRequestParams(user);
752
+ return this.http.post(serviceUrl, this.httpOptions);
753
+ }
754
+ registerIndex(register) {
755
+ let serviceUrl = this.SERVICE_URL + 'post/create/marketing';
756
+ this.generateRequestParams(register);
757
+ return this.http.post(serviceUrl, this.httpOptions);
758
+ }
759
+ registerDashboard(user) {
760
+ let serviceUrl = this.SERVICE_URL + 'post/create/dashboard';
761
+ this.generateRequestParams(user);
762
+ return this.http.post(serviceUrl, this.httpOptions);
763
+ }
764
+ getAvailableTeachers(token) {
765
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/teachers';
766
+ this.generateRequestParams(token);
767
+ return this.http.post(serviceUrl, this.httpOptions);
768
+ }
769
+ getAllAdvisor(userToken) {
770
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/all/user/commercial';
771
+ this.generateRequestParams(userToken);
772
+ return this.http.post(serviceUrl, this.httpOptions);
773
+ }
774
+ getByRoleUser(codeRole) {
775
+ let serviceUrl = this.SERVICE_URL + 'get/obtain/by/role/user/' + codeRole;
776
+ return this.http.get(serviceUrl);
777
+ }
778
+ getUserStatistics(userToken) {
779
+ let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/statistics';
780
+ this.generateRequestParams(userToken);
781
+ return this.http.post(serviceUrl, this.httpOptions);
782
+ }
783
+ getRoutesForRole(token) {
784
+ let serviceUrl = this.SERVICE_URL + 'post/routes/role';
785
+ this.generateRequestParams(token);
786
+ return this.http.post(serviceUrl, this.httpOptions);
787
+ }
788
+ getStudents(token) {
789
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/students';
790
+ this.generateRequestParams(token);
791
+ return this.http.post(serviceUrl, this.httpOptions);
792
+ }
793
+ getStudent(token) {
794
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/student';
795
+ this.generateRequestParams(token);
796
+ return this.http.post(serviceUrl, this.httpOptions);
797
+ }
798
+ }
799
+ 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 });
800
+ UserService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: UserService, providedIn: 'root' });
801
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: UserService, decorators: [{
802
+ type: Injectable,
803
+ args: [{
804
+ providedIn: 'root',
805
+ }]
792
806
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
793
807
 
794
- class StorageService {
795
- constructor() {
796
- this.currentSession = null;
797
- this.localStorageService = localStorage;
798
- this.currentSession = this.loadSessionData();
799
- }
800
- setCurrentSession(session) {
801
- this.currentSession = session;
802
- this.localStorageService.setItem('606a7d4e73650b75ebb06972e77d6cc4', JSON.stringify(session));
803
- }
804
- loadSessionData() {
805
- var sessionStr = this.localStorageService.getItem('606a7d4e73650b75ebb06972e77d6cc4');
806
- return (sessionStr) ? JSON.parse(sessionStr) : null;
807
- }
808
- getCurrentSession() {
809
- return this.currentSession;
810
- }
811
- removeCurrentSession() {
812
- this.localStorageService.removeItem('606a7d4e73650b75ebb06972e77d6cc4');
813
- this.currentSession = null;
814
- }
815
- getCurrentUser() {
816
- var session = this.getCurrentSession();
817
- return (session && session.user) ? session.user : null;
818
- }
819
- ;
820
- isAuthenticated() {
821
- return (this.getCurrentToken() != null) ? true : false;
822
- }
823
- ;
824
- getCurrentToken() {
825
- var session = this.getCurrentSession();
826
- return (session && session.token) ? session.token : null;
827
- }
828
- ;
829
- logout() {
830
- this.removeCurrentSession();
831
- }
832
- }
833
- StorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
834
- StorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, providedIn: 'root' });
835
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, decorators: [{
836
- type: Injectable,
837
- args: [{
838
- providedIn: 'root',
839
- }]
808
+ class StorageService {
809
+ constructor() {
810
+ this.currentSession = null;
811
+ this.localStorageService = localStorage;
812
+ this.currentSession = this.loadSessionData();
813
+ }
814
+ setCurrentSession(session) {
815
+ this.currentSession = session;
816
+ this.localStorageService.setItem('606a7d4e73650b75ebb06972e77d6cc4', JSON.stringify(session));
817
+ }
818
+ loadSessionData() {
819
+ var sessionStr = this.localStorageService.getItem('606a7d4e73650b75ebb06972e77d6cc4');
820
+ return (sessionStr) ? JSON.parse(sessionStr) : null;
821
+ }
822
+ getCurrentSession() {
823
+ return this.currentSession;
824
+ }
825
+ removeCurrentSession() {
826
+ this.localStorageService.removeItem('606a7d4e73650b75ebb06972e77d6cc4');
827
+ this.currentSession = null;
828
+ }
829
+ getCurrentUser() {
830
+ var session = this.getCurrentSession();
831
+ return (session && session.user) ? session.user : null;
832
+ }
833
+ ;
834
+ isAuthenticated() {
835
+ return (this.getCurrentToken() != null) ? true : false;
836
+ }
837
+ ;
838
+ getCurrentToken() {
839
+ var session = this.getCurrentSession();
840
+ return (session && session.token) ? session.token : null;
841
+ }
842
+ ;
843
+ logout() {
844
+ this.removeCurrentSession();
845
+ }
846
+ }
847
+ StorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
848
+ StorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, providedIn: 'root' });
849
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StorageService, decorators: [{
850
+ type: Injectable,
851
+ args: [{
852
+ providedIn: 'root',
853
+ }]
840
854
  }], ctorParameters: function () { return []; } });
841
855
 
842
- class CalendarService {
843
- constructor(http) {
844
- this.http = http;
845
- this.SERVICE_URL = 'https://iptdev.com.co/lab/calendar/api/';
846
- }
847
- postCreateQueryEvent(params) {
848
- let serviceUrl = this.SERVICE_URL + 'post/event/create/query';
849
- this.generateRequestParams(params);
850
- return this.http.post(serviceUrl, this.httpOptions);
851
- }
852
- getEventByIdCalendar(idCalendar) {
853
- let serviceUrl = this.SERVICE_URL + 'get/event/calendar/idcalendar/all/' + idCalendar;
854
- return this.http.get(serviceUrl);
855
- }
856
- postEventByDayTime(params) {
857
- let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/datetime';
858
- this.generateRequestParams(params);
859
- return this.http.post(serviceUrl, this.httpOptions);
860
- }
861
- getEventsByCourse(params) {
862
- let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/course';
863
- this.generateRequestParams(params);
864
- return this.http.post(serviceUrl, this.httpOptions);
865
- }
866
- getEventByDateTime(params) {
867
- let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/datetime';
868
- this.generateRequestParams(params);
869
- return this.http.post(serviceUrl, this.httpOptions);
870
- }
871
- getAvailability(params) {
872
- let serviceUrl = this.SERVICE_URL + 'post/event/create/query';
873
- this.generateRequestParams(params);
874
- return this.http.post(serviceUrl, this.httpOptions);
875
- }
876
- addNewEvent(params) {
877
- let serviceUrl = this.SERVICE_URL + 'post/add/event/calendar/by/daytime';
878
- this.generateRequestParams(params);
879
- return this.http.post(serviceUrl, this.httpOptions);
880
- }
881
- generateRequestParams(param) {
882
- this.httpOptions = {
883
- header: new HttpHeaders(),
884
- params: param,
885
- };
886
- }
887
- }
888
- 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 });
889
- CalendarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CalendarService, providedIn: 'root' });
890
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CalendarService, decorators: [{
891
- type: Injectable,
892
- args: [{
893
- providedIn: 'root',
894
- }]
856
+ class CalendarService extends IPTGeneralService {
857
+ constructor(http) {
858
+ super();
859
+ this.http = http;
860
+ this.SERVICE_URL = 'calendar/api/';
861
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
862
+ }
863
+ postCreateQueryEvent(params) {
864
+ let serviceUrl = this.SERVICE_URL + 'post/event/create/query';
865
+ this.generateRequestParams(params);
866
+ return this.http.post(serviceUrl, this.httpOptions);
867
+ }
868
+ getEventByIdCalendar(idCalendar) {
869
+ let serviceUrl = this.SERVICE_URL + 'get/event/calendar/idcalendar/all/' + idCalendar;
870
+ return this.http.get(serviceUrl);
871
+ }
872
+ postEventByDayTime(params) {
873
+ let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/datetime';
874
+ this.generateRequestParams(params);
875
+ return this.http.post(serviceUrl, this.httpOptions);
876
+ }
877
+ getEventsByCourse(params) {
878
+ let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/course';
879
+ this.generateRequestParams(params);
880
+ return this.http.post(serviceUrl, this.httpOptions);
881
+ }
882
+ getEventByDateTime(params) {
883
+ let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/datetime';
884
+ this.generateRequestParams(params);
885
+ return this.http.post(serviceUrl, this.httpOptions);
886
+ }
887
+ getAvailability(params) {
888
+ let serviceUrl = this.SERVICE_URL + 'post/event/create/query';
889
+ this.generateRequestParams(params);
890
+ return this.http.post(serviceUrl, this.httpOptions);
891
+ }
892
+ addNewEvent(params) {
893
+ let serviceUrl = this.SERVICE_URL + 'post/add/event/calendar/by/daytime';
894
+ this.generateRequestParams(params);
895
+ return this.http.post(serviceUrl, this.httpOptions);
896
+ }
897
+ }
898
+ 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 });
899
+ CalendarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CalendarService, providedIn: 'root' });
900
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CalendarService, decorators: [{
901
+ type: Injectable,
902
+ args: [{
903
+ providedIn: 'root',
904
+ }]
895
905
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
896
906
 
897
- class BaseService {
898
- constructor(userService, storageService, calendarService) {
899
- this.userService = userService;
900
- this.storageService = storageService;
901
- this.calendarService = calendarService;
902
- }
903
- webLogin(user, password) {
904
- let request = {
905
- user: user,
906
- password: password
907
- };
908
- let service = this.userService;
909
- let storage = this.storageService;
910
- let appUser = this.isAnAppUser();
911
- return new Promise(function (resolve, reject) {
912
- service.login(request).subscribe(response => {
913
- switch (response.message.code) {
914
- case 1:
915
- if (!appUser) {
916
- Swal.fire({
917
- 'title': '<p style="font-family: Poppins"">Perfect!</p>',
918
- 'html': '<p style="font-family: Poppins"">Succesfull login</p>',
919
- 'icon': 'success',
920
- });
921
- }
922
- const loginRegisterUser = {
923
- token: response.data.token,
924
- user: response.data,
925
- };
926
- storage.setCurrentSession(loginRegisterUser);
927
- resolve(true);
928
- break;
929
- case 2:
930
- Swal.fire({
931
- 'title': '<p style="font-family: Poppins"">Warning!</p>',
932
- 'html': '<p style="font-family: Poppins"">The data does not correspond to a user registered in our system, please review them.</p>',
933
- 'icon': 'warning',
934
- });
935
- resolve(false);
936
- break;
937
- case 3:
938
- Swal.fire({
939
- 'title': '<p style="font-family: Poppins"">Error!</p>',
940
- 'html': '<p style="font-family: Poppins"">The input data does not meet the established parameters.</p>',
941
- 'icon': 'error',
942
- });
943
- resolve(false);
944
- break;
945
- default:
946
- Swal.fire({
947
- 'title': '<p style="font-family: Poppins"">Error!</p>',
948
- 'html': '<p style="font-family: Poppins"">An unexpected error has occurred</p>',
949
- 'icon': 'error',
950
- });
951
- resolve(false);
952
- break;
953
- }
954
- reject('Unhandled exception');
955
- });
956
- });
957
- }
958
- getCronogramAvailability(isTeacher, code, startDate, numClass, weekDays, startTime, endTime) {
959
- let request = {
960
- isTeacher: isTeacher,
961
- code: code,
962
- startDate: startDate,
963
- numClass: numClass,
964
- weekDays: weekDays,
965
- startTime: startTime,
966
- endTime: endTime,
967
- };
968
- let service = this.calendarService;
969
- return new Promise(function (resolve, reject) {
970
- service.postCreateQueryEvent(request).subscribe((response) => {
971
- switch (response.message.code) {
972
- case 1:
973
- resolve(response.data);
974
- break;
975
- default:
976
- reject('Unhandled exception');
977
- }
978
- reject('Unhandled exception');
979
- });
980
- });
981
- }
982
- isAnAppUser() {
983
- const userAgent = window.navigator.userAgent;
984
- return userAgent.includes('Flutter IPT APP');
985
- }
986
- getUserRole() {
987
- let user = this.storageService.getCurrentUser()?.role;
988
- return user === undefined ? -1 : user;
989
- }
990
- getUserToken() {
991
- let token = this.storageService.getCurrentUser()?.token;
992
- return token === undefined ? '-1' : token;
993
- }
994
- getUserName() {
995
- let user = this.storageService.getCurrentUser();
996
- let response = user === null ? '' : user.name;
997
- return response;
998
- }
999
- registerUserFromDashboard(registerDashboardRq) {
1000
- let request = registerDashboardRq;
1001
- let service = this.userService;
1002
- return new Promise(function (resolve, reject) {
1003
- service.registerDashboard(request).subscribe((response) => {
1004
- switch (response.message.code) {
1005
- case 1:
1006
- Swal.fire({
1007
- 'title': '<p style="font-family: Poppins"">Perfect!</p>',
1008
- 'html': '<p style="font-family: Poppins"">Sucesfull register!</p>',
1009
- 'icon': 'success',
1010
- });
1011
- resolve(true);
1012
- break;
1013
- case 3:
1014
- Swal.fire({
1015
- 'title': '<p style="font-family: Poppins"">Error!</p>',
1016
- 'html': '<p style="font-family: Poppins"">The input data does not meet the established parameters.</p>',
1017
- 'icon': 'error',
1018
- });
1019
- resolve(false);
1020
- break;
1021
- case 4:
1022
- Swal.fire({
1023
- 'title': '<p style="font-family: Poppins">Ups!</p>',
1024
- 'html': '<p style="font-family: Poppins">The input data has a high relation with a user that already exists!</p>',
1025
- 'icon': 'warning',
1026
- });
1027
- resolve(false);
1028
- break;
1029
- default:
1030
- Swal.fire({
1031
- 'title': '<p style="font-family: Poppins"">Error!</p>',
1032
- 'html': '<p style="font-family: Poppins"">An unexpected error has occurred</p>',
1033
- 'icon': 'error',
1034
- });
1035
- resolve(false);
1036
- break;
1037
- }
1038
- reject('Unhandled exception');
1039
- });
1040
- });
1041
- }
1042
- jsonToArray(data) {
1043
- var response = [];
1044
- data.forEach((element) => {
1045
- var object = [];
1046
- for (var clave in element) {
1047
- if (element.hasOwnProperty(clave)) {
1048
- if (typeof element[clave] == 'object') {
1049
- element[clave] = this.subJsonToArray(element[clave]);
1050
- }
1051
- object.push(element[clave]);
1052
- }
1053
- }
1054
- response.push(object);
1055
- });
1056
- return response;
1057
- }
1058
- subJsonToArray(data) {
1059
- var object = '';
1060
- for (var clave in data) {
1061
- if (clave != 'code') {
1062
- object += '\n' + data[clave];
1063
- }
1064
- }
1065
- return object;
1066
- }
1067
- }
1068
- 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 });
1069
- BaseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BaseService, providedIn: 'root' });
1070
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BaseService, decorators: [{
1071
- type: Injectable,
1072
- args: [{
1073
- providedIn: 'root',
1074
- }]
907
+ class BaseService {
908
+ constructor(userService, storageService, calendarService) {
909
+ this.userService = userService;
910
+ this.storageService = storageService;
911
+ this.calendarService = calendarService;
912
+ }
913
+ webLogin(user, password) {
914
+ let request = {
915
+ user: user,
916
+ password: password
917
+ };
918
+ let service = this.userService;
919
+ let storage = this.storageService;
920
+ let appUser = this.isAnAppUser();
921
+ return new Promise(function (resolve, reject) {
922
+ service.login(request).subscribe(response => {
923
+ switch (response.message.code) {
924
+ case 1:
925
+ if (!appUser) {
926
+ Swal.fire({
927
+ 'title': '<p style="font-family: Poppins"">Perfect!</p>',
928
+ 'html': '<p style="font-family: Poppins"">Succesfull login</p>',
929
+ 'icon': 'success',
930
+ });
931
+ }
932
+ const loginRegisterUser = {
933
+ token: response.data.token,
934
+ user: response.data,
935
+ };
936
+ storage.setCurrentSession(loginRegisterUser);
937
+ resolve(true);
938
+ break;
939
+ case 2:
940
+ Swal.fire({
941
+ 'title': '<p style="font-family: Poppins"">Warning!</p>',
942
+ 'html': '<p style="font-family: Poppins"">The data does not correspond to a user registered in our system, please review them.</p>',
943
+ 'icon': 'warning',
944
+ });
945
+ resolve(false);
946
+ break;
947
+ case 3:
948
+ Swal.fire({
949
+ 'title': '<p style="font-family: Poppins"">Error!</p>',
950
+ 'html': '<p style="font-family: Poppins"">The input data does not meet the established parameters.</p>',
951
+ 'icon': 'error',
952
+ });
953
+ resolve(false);
954
+ break;
955
+ default:
956
+ Swal.fire({
957
+ 'title': '<p style="font-family: Poppins"">Error!</p>',
958
+ 'html': '<p style="font-family: Poppins"">An unexpected error has occurred</p>',
959
+ 'icon': 'error',
960
+ });
961
+ resolve(false);
962
+ break;
963
+ }
964
+ reject('Unhandled exception');
965
+ });
966
+ });
967
+ }
968
+ getCronogramAvailability(isTeacher, code, startDate, numClass, weekDays, startTime, endTime) {
969
+ let request = {
970
+ isTeacher: isTeacher,
971
+ code: code,
972
+ startDate: startDate,
973
+ numClass: numClass,
974
+ weekDays: weekDays,
975
+ startTime: startTime,
976
+ endTime: endTime,
977
+ };
978
+ let service = this.calendarService;
979
+ return new Promise(function (resolve, reject) {
980
+ service.postCreateQueryEvent(request).subscribe((response) => {
981
+ switch (response.message.code) {
982
+ case 1:
983
+ resolve(response.data);
984
+ break;
985
+ default:
986
+ reject('Unhandled exception');
987
+ }
988
+ reject('Unhandled exception');
989
+ });
990
+ });
991
+ }
992
+ isAnAppUser() {
993
+ const userAgent = window.navigator.userAgent;
994
+ return userAgent.includes('Flutter IPT APP');
995
+ }
996
+ getUserRole() {
997
+ let user = this.storageService.getCurrentUser()?.role;
998
+ return user === undefined ? -1 : user;
999
+ }
1000
+ getUserToken() {
1001
+ let token = this.storageService.getCurrentUser()?.token;
1002
+ return token === undefined ? '-1' : token;
1003
+ }
1004
+ getUserName() {
1005
+ let user = this.storageService.getCurrentUser();
1006
+ let response = user === null ? '' : user.name;
1007
+ return response;
1008
+ }
1009
+ registerUserFromDashboard(registerDashboardRq) {
1010
+ let request = registerDashboardRq;
1011
+ let service = this.userService;
1012
+ return new Promise(function (resolve, reject) {
1013
+ service.registerDashboard(request).subscribe((response) => {
1014
+ switch (response.message.code) {
1015
+ case 1:
1016
+ Swal.fire({
1017
+ 'title': '<p style="font-family: Poppins"">Perfect!</p>',
1018
+ 'html': '<p style="font-family: Poppins"">Sucesfull register!</p>',
1019
+ 'icon': 'success',
1020
+ });
1021
+ resolve(true);
1022
+ break;
1023
+ case 3:
1024
+ Swal.fire({
1025
+ 'title': '<p style="font-family: Poppins"">Error!</p>',
1026
+ 'html': '<p style="font-family: Poppins"">The input data does not meet the established parameters.</p>',
1027
+ 'icon': 'error',
1028
+ });
1029
+ resolve(false);
1030
+ break;
1031
+ case 4:
1032
+ Swal.fire({
1033
+ 'title': '<p style="font-family: Poppins">Ups!</p>',
1034
+ 'html': '<p style="font-family: Poppins">The input data has a high relation with a user that already exists!</p>',
1035
+ 'icon': 'warning',
1036
+ });
1037
+ resolve(false);
1038
+ break;
1039
+ default:
1040
+ Swal.fire({
1041
+ 'title': '<p style="font-family: Poppins"">Error!</p>',
1042
+ 'html': '<p style="font-family: Poppins"">An unexpected error has occurred</p>',
1043
+ 'icon': 'error',
1044
+ });
1045
+ resolve(false);
1046
+ break;
1047
+ }
1048
+ reject('Unhandled exception');
1049
+ });
1050
+ });
1051
+ }
1052
+ jsonToArray(data) {
1053
+ var response = [];
1054
+ data.forEach((element) => {
1055
+ var object = [];
1056
+ for (var clave in element) {
1057
+ if (element.hasOwnProperty(clave)) {
1058
+ if (typeof element[clave] == 'object') {
1059
+ element[clave] = this.subJsonToArray(element[clave]);
1060
+ }
1061
+ object.push(element[clave]);
1062
+ }
1063
+ }
1064
+ response.push(object);
1065
+ });
1066
+ return response;
1067
+ }
1068
+ subJsonToArray(data) {
1069
+ var object = '';
1070
+ for (var clave in data) {
1071
+ if (clave != 'code') {
1072
+ object += '\n' + data[clave];
1073
+ }
1074
+ }
1075
+ return object;
1076
+ }
1077
+ }
1078
+ 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 });
1079
+ BaseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BaseService, providedIn: 'root' });
1080
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BaseService, decorators: [{
1081
+ type: Injectable,
1082
+ args: [{
1083
+ providedIn: 'root',
1084
+ }]
1075
1085
  }], ctorParameters: function () { return [{ type: UserService }, { type: StorageService }, { type: CalendarService }]; } });
1076
1086
 
1077
- class LoginFormComponent {
1078
- constructor(fb, baseService) {
1079
- this.baseService = baseService;
1080
- this.isLogged = new EventEmitter();
1081
- this.loginForm = fb.group({
1082
- email: ['', [Validators.required]],
1083
- password: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(15)]],
1084
- });
1085
- }
1086
- login(data) {
1087
- this.baseService.webLogin(data.controls['email'].value, data.controls['password'].value).then((isLogged) => {
1088
- this.isLogged.emit(isLogged);
1089
- });
1090
- }
1091
- }
1092
- 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 });
1093
- LoginFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LoginFormComponent, selector: "ipt-login-form", outputs: { isLogged: "isLogged" }, ngImport: i0, template: `
1094
- <div class="form-container">
1095
-
1096
- <h2 style="text-align: center;">IPT PLATFORM</h2>
1097
- <hr>
1098
-
1099
- <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
1100
- <ipt-input
1101
- [inputType]="'text'"
1102
- [placeHolder]="'Email'"
1103
- [validateText]="'Debe ser @inglesparatodos.edu.co'"
1104
- [control]="loginForm.controls['email']"
1105
- ></ipt-input>
1106
-
1107
- <ipt-input
1108
- [inputType]="'password'"
1109
- [placeHolder]="'Password'"
1110
- [control]="loginForm.controls['password']"
1111
- ></ipt-input>
1112
- </form>
1113
-
1114
- <div class="button-container">
1115
- <ipt-button
1116
- [label]="'Login'"
1117
- [primary]="true"
1118
- [isEnabled]="loginForm.valid"
1119
- (onClick)="login(loginForm)"
1120
- ></ipt-button>
1121
- </div>
1122
-
1123
- </div>
1124
- `, 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"] }] });
1125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoginFormComponent, decorators: [{
1126
- type: Component,
1127
- args: [{ selector: 'ipt-login-form', template: `
1128
- <div class="form-container">
1129
-
1130
- <h2 style="text-align: center;">IPT PLATFORM</h2>
1131
- <hr>
1132
-
1133
- <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
1134
- <ipt-input
1135
- [inputType]="'text'"
1136
- [placeHolder]="'Email'"
1137
- [validateText]="'Debe ser @inglesparatodos.edu.co'"
1138
- [control]="loginForm.controls['email']"
1139
- ></ipt-input>
1140
-
1141
- <ipt-input
1142
- [inputType]="'password'"
1143
- [placeHolder]="'Password'"
1144
- [control]="loginForm.controls['password']"
1145
- ></ipt-input>
1146
- </form>
1147
-
1148
- <div class="button-container">
1149
- <ipt-button
1150
- [label]="'Login'"
1151
- [primary]="true"
1152
- [isEnabled]="loginForm.valid"
1153
- (onClick)="login(loginForm)"
1154
- ></ipt-button>
1155
- </div>
1156
-
1157
- </div>
1158
- `, 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"] }]
1159
- }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: BaseService }]; }, propDecorators: { isLogged: [{
1160
- type: Output
1087
+ class LoginFormComponent {
1088
+ constructor(fb, baseService) {
1089
+ this.baseService = baseService;
1090
+ this.isLogged = new EventEmitter();
1091
+ this.loginForm = fb.group({
1092
+ email: ['', [Validators.required]],
1093
+ password: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(15)]],
1094
+ });
1095
+ }
1096
+ login(data) {
1097
+ this.baseService.webLogin(data.controls['email'].value, data.controls['password'].value).then((isLogged) => {
1098
+ this.isLogged.emit(isLogged);
1099
+ });
1100
+ }
1101
+ }
1102
+ 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 });
1103
+ LoginFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: LoginFormComponent, selector: "ipt-login-form", outputs: { isLogged: "isLogged" }, ngImport: i0, template: `
1104
+ <div class="form-container">
1105
+
1106
+ <h2 style="text-align: center;">IPT PLATFORM</h2>
1107
+ <hr>
1108
+
1109
+ <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
1110
+ <ipt-input
1111
+ [inputType]="'text'"
1112
+ [placeHolder]="'Email'"
1113
+ [validateText]="'Debe ser @inglesparatodos.edu.co'"
1114
+ [control]="loginForm.controls['email']"
1115
+ ></ipt-input>
1116
+
1117
+ <ipt-input
1118
+ [inputType]="'password'"
1119
+ [placeHolder]="'Password'"
1120
+ [control]="loginForm.controls['password']"
1121
+ ></ipt-input>
1122
+ </form>
1123
+
1124
+ <div class="button-container">
1125
+ <ipt-button
1126
+ [label]="'Login'"
1127
+ [primary]="true"
1128
+ [isEnabled]="loginForm.valid"
1129
+ (onClick)="login(loginForm)"
1130
+ ></ipt-button>
1131
+ </div>
1132
+
1133
+ </div>
1134
+ `, 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"] }] });
1135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: LoginFormComponent, decorators: [{
1136
+ type: Component,
1137
+ args: [{ selector: 'ipt-login-form', template: `
1138
+ <div class="form-container">
1139
+
1140
+ <h2 style="text-align: center;">IPT PLATFORM</h2>
1141
+ <hr>
1142
+
1143
+ <form (ngSubmit)="login(loginForm)" [formGroup]="loginForm">
1144
+ <ipt-input
1145
+ [inputType]="'text'"
1146
+ [placeHolder]="'Email'"
1147
+ [validateText]="'Debe ser @inglesparatodos.edu.co'"
1148
+ [control]="loginForm.controls['email']"
1149
+ ></ipt-input>
1150
+
1151
+ <ipt-input
1152
+ [inputType]="'password'"
1153
+ [placeHolder]="'Password'"
1154
+ [control]="loginForm.controls['password']"
1155
+ ></ipt-input>
1156
+ </form>
1157
+
1158
+ <div class="button-container">
1159
+ <ipt-button
1160
+ [label]="'Login'"
1161
+ [primary]="true"
1162
+ [isEnabled]="loginForm.valid"
1163
+ (onClick)="login(loginForm)"
1164
+ ></ipt-button>
1165
+ </div>
1166
+
1167
+ </div>
1168
+ `, 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"] }]
1169
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: BaseService }]; }, propDecorators: { isLogged: [{
1170
+ type: Output
1161
1171
  }] } });
1162
1172
 
1163
- class ParameterService {
1164
- constructor(http) {
1165
- this.http = http;
1166
- this.SERVICE_URL = 'https://iptdev.com.co/lab/parameters/api/';
1167
- }
1168
- getIndicatives() {
1169
- let serviceUrl = this.SERVICE_URL + 'get/indicatives';
1170
- return this.http.get(serviceUrl);
1171
- }
1172
- getCardTypes(country) {
1173
- let serviceUrl = this.SERVICE_URL + 'get/id/card/type/country/' + country;
1174
- return this.http.get(serviceUrl);
1175
- }
1176
- getCountries() {
1177
- let serviceUrl = this.SERVICE_URL + 'get/countries';
1178
- return this.http.get(serviceUrl);
1179
- }
1180
- getStatesByCountry(country) {
1181
- let serviceUrl = this.SERVICE_URL + 'get/state/country/iso/' + country;
1182
- return this.http.get(serviceUrl);
1183
- }
1184
- getCitiesByState(state) {
1185
- let serviceUrl = this.SERVICE_URL + 'get/cities/state/' + state;
1186
- return this.http.get(serviceUrl);
1187
- }
1188
- getAllPlans() {
1189
- let serviceUrl = this.SERVICE_URL + 'get/all/plans';
1190
- return this.http.get(serviceUrl);
1191
- }
1192
- getLevels() {
1193
- let serviceUrl = this.SERVICE_URL + 'get/english/levels';
1194
- return this.http.get(serviceUrl);
1195
- }
1196
- getAgreements() {
1197
- let serviceUrl = this.SERVICE_URL + 'get/all/agreement';
1198
- return this.http.get(serviceUrl);
1199
- }
1200
- getAgreementByCategory(typeCategory) {
1201
- let serviceUrl = this.SERVICE_URL + 'get/agreement/by/category/' + typeCategory;
1202
- return this.http.get(serviceUrl);
1203
- }
1204
- getAllClassrooms() {
1205
- let serviceUrl = this.SERVICE_URL + 'get/all/classroom';
1206
- return this.http.get(serviceUrl);
1207
- }
1208
- getCoursesTypes() {
1209
- let serviceUrl = this.SERVICE_URL + 'get/all/course/type';
1210
- return this.http.get(serviceUrl);
1211
- }
1212
- getCoursesTypesByPlan(typePlan) {
1213
- let serviceUrl = this.SERVICE_URL + 'get/course/by/plan/' + typePlan;
1214
- return this.http.get(serviceUrl);
1215
- }
1216
- getDegrees() {
1217
- let serviceUrl = this.SERVICE_URL + 'get/all/degrees';
1218
- return this.http.get(serviceUrl);
1219
- }
1220
- getProgramsByDegree(typeDegree) {
1221
- let serviceUrl = this.SERVICE_URL + 'get/programs/by/degree/' + typeDegree;
1222
- return this.http.get(serviceUrl);
1223
- }
1224
- getMarketingReasons() {
1225
- let serviceUrl = this.SERVICE_URL + 'get/all/mkt/reasons';
1226
- return this.http.get(serviceUrl);
1227
- }
1228
- getStudyReasons() {
1229
- let serviceUrl = this.SERVICE_URL + 'get/all/study/reasons';
1230
- return this.http.get(serviceUrl);
1231
- }
1232
- getAcademicUnits() {
1233
- let serviceUrl = this.SERVICE_URL + 'get/academic/units';
1234
- return this.http.get(serviceUrl);
1235
- }
1236
- getStatusContact() {
1237
- let serviceUrl = this.SERVICE_URL + 'get/contact/status/all';
1238
- return this.http.get(serviceUrl);
1239
- }
1240
- getTypePlan() {
1241
- let serviceUrl = this.SERVICE_URL + 'get/all/plans';
1242
- return this.http.get(serviceUrl);
1243
- }
1244
- getTypePlanDiscount() {
1245
- let serviceUrl = this.SERVICE_URL + 'get/discount/all/plans';
1246
- return this.http.get(serviceUrl);
1247
- }
1248
- getContactedType() {
1249
- let serviceUrl = this.SERVICE_URL + 'get/contact/contacted/all';
1250
- return this.http.get(serviceUrl);
1251
- }
1252
- getStatusByCode(codeStatus) {
1253
- let serviceUrl = this.SERVICE_URL + 'get/contact/status/bycode/' + codeStatus;
1254
- return this.http.get(serviceUrl);
1255
- }
1256
- getAllTypeDiscount() {
1257
- let serviceUrl = this.SERVICE_URL + 'get/commercial/typediscounts/all';
1258
- return this.http.get(serviceUrl);
1259
- }
1260
- getAllCourseModality() {
1261
- let serviceUrl = this.SERVICE_URL + 'get/all/course/modality';
1262
- return this.http.get(serviceUrl);
1263
- }
1264
- }
1265
- 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 });
1266
- ParameterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, providedIn: 'root' });
1267
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, decorators: [{
1268
- type: Injectable,
1269
- args: [{
1270
- providedIn: 'root',
1271
- }]
1173
+ class ParameterService extends IPTGeneralService {
1174
+ constructor(http) {
1175
+ super();
1176
+ this.http = http;
1177
+ this.SERVICE_URL = 'parameters/api/';
1178
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
1179
+ }
1180
+ getIndicatives() {
1181
+ let serviceUrl = this.SERVICE_URL + 'get/indicatives';
1182
+ return this.http.get(serviceUrl);
1183
+ }
1184
+ getCardTypes(country) {
1185
+ let serviceUrl = this.SERVICE_URL + 'get/id/card/type/country/' + country;
1186
+ return this.http.get(serviceUrl);
1187
+ }
1188
+ getCountries() {
1189
+ let serviceUrl = this.SERVICE_URL + 'get/countries';
1190
+ return this.http.get(serviceUrl);
1191
+ }
1192
+ getStatesByCountry(country) {
1193
+ let serviceUrl = this.SERVICE_URL + 'get/state/country/iso/' + country;
1194
+ return this.http.get(serviceUrl);
1195
+ }
1196
+ getCitiesByState(state) {
1197
+ let serviceUrl = this.SERVICE_URL + 'get/cities/state/' + state;
1198
+ return this.http.get(serviceUrl);
1199
+ }
1200
+ getAllPlans() {
1201
+ let serviceUrl = this.SERVICE_URL + 'get/all/plans';
1202
+ return this.http.get(serviceUrl);
1203
+ }
1204
+ getLevels() {
1205
+ let serviceUrl = this.SERVICE_URL + 'get/english/levels';
1206
+ return this.http.get(serviceUrl);
1207
+ }
1208
+ getAgreements() {
1209
+ let serviceUrl = this.SERVICE_URL + 'get/all/agreement';
1210
+ return this.http.get(serviceUrl);
1211
+ }
1212
+ getAgreementByCategory(typeCategory) {
1213
+ let serviceUrl = this.SERVICE_URL + 'get/agreement/by/category/' + typeCategory;
1214
+ return this.http.get(serviceUrl);
1215
+ }
1216
+ getAllClassrooms() {
1217
+ let serviceUrl = this.SERVICE_URL + 'get/all/classroom';
1218
+ return this.http.get(serviceUrl);
1219
+ }
1220
+ getCoursesTypes() {
1221
+ let serviceUrl = this.SERVICE_URL + 'get/all/course/type';
1222
+ return this.http.get(serviceUrl);
1223
+ }
1224
+ getCoursesTypesByPlan(typePlan) {
1225
+ let serviceUrl = this.SERVICE_URL + 'get/course/by/plan/' + typePlan;
1226
+ return this.http.get(serviceUrl);
1227
+ }
1228
+ getDegrees() {
1229
+ let serviceUrl = this.SERVICE_URL + 'get/all/degrees';
1230
+ return this.http.get(serviceUrl);
1231
+ }
1232
+ getProgramsByDegree(typeDegree) {
1233
+ let serviceUrl = this.SERVICE_URL + 'get/programs/by/degree/' + typeDegree;
1234
+ return this.http.get(serviceUrl);
1235
+ }
1236
+ getMarketingReasons() {
1237
+ let serviceUrl = this.SERVICE_URL + 'get/all/mkt/reasons';
1238
+ return this.http.get(serviceUrl);
1239
+ }
1240
+ getStudyReasons() {
1241
+ let serviceUrl = this.SERVICE_URL + 'get/all/study/reasons';
1242
+ return this.http.get(serviceUrl);
1243
+ }
1244
+ getAcademicUnits() {
1245
+ let serviceUrl = this.SERVICE_URL + 'get/academic/units';
1246
+ return this.http.get(serviceUrl);
1247
+ }
1248
+ getStatusContact() {
1249
+ let serviceUrl = this.SERVICE_URL + 'get/contact/status/all';
1250
+ return this.http.get(serviceUrl);
1251
+ }
1252
+ getTypePlan() {
1253
+ let serviceUrl = this.SERVICE_URL + 'get/all/plans';
1254
+ return this.http.get(serviceUrl);
1255
+ }
1256
+ getTypePlanDiscount() {
1257
+ let serviceUrl = this.SERVICE_URL + 'get/discount/all/plans';
1258
+ return this.http.get(serviceUrl);
1259
+ }
1260
+ getContactedType() {
1261
+ let serviceUrl = this.SERVICE_URL + 'get/contact/contacted/all';
1262
+ return this.http.get(serviceUrl);
1263
+ }
1264
+ getStatusByCode(codeStatus) {
1265
+ let serviceUrl = this.SERVICE_URL + 'get/contact/status/bycode/' + codeStatus;
1266
+ return this.http.get(serviceUrl);
1267
+ }
1268
+ getAllTypeDiscount() {
1269
+ let serviceUrl = this.SERVICE_URL + 'get/commercial/typediscounts/all';
1270
+ return this.http.get(serviceUrl);
1271
+ }
1272
+ getAllCourseModality() {
1273
+ let serviceUrl = this.SERVICE_URL + 'get/all/course/modality';
1274
+ return this.http.get(serviceUrl);
1275
+ }
1276
+ }
1277
+ 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 });
1278
+ ParameterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, providedIn: 'root' });
1279
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ParameterService, decorators: [{
1280
+ type: Injectable,
1281
+ args: [{
1282
+ providedIn: 'root',
1283
+ }]
1272
1284
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
1273
1285
 
1274
- class CreateUserFormComponent {
1275
- constructor(fb, parameterService, userService) {
1276
- this.fb = fb;
1277
- this.parameterService = parameterService;
1278
- this.userService = userService;
1279
- this.visibility = false;
1280
- this.userCreated = new EventEmitter(false);
1281
- this.onHide = new EventEmitter(false);
1282
- this.loader = false;
1283
- this.photo = '';
1284
- }
1285
- ngOnInit() {
1286
- this.initForm();
1287
- this.getParameters();
1288
- }
1289
- closeModal() {
1290
- this.visibility = false;
1291
- this.onHide.emit(true);
1292
- }
1293
- createUser() {
1294
- this.loader = true;
1295
- let request = {
1296
- name: this.createUserForm.controls['name'].value,
1297
- last_name: this.createUserForm.controls['last_name'].value,
1298
- id_card_type: this.createUserForm.controls['id_card_type'].value,
1299
- id_card: this.createUserForm.controls['id_card'].value,
1300
- phone_indicative: this.createUserForm.controls['phone_indicative'].value,
1301
- phone_number: this.createUserForm.controls['phone_number'].value,
1302
- email: this.createUserForm.controls['email'].value,
1303
- city: this.createUserForm.controls['city'].value,
1304
- service_hour: this.createUserForm.controls['service_hour'].value,
1305
- role: this.createUserForm.controls['role'].value,
1306
- password: this.createUserForm.controls['password'].value,
1307
- };
1308
- this.userService.registerDashboard(request).subscribe((response) => {
1309
- console.log(response.message);
1310
- switch (response.message.code) {
1311
- case 1:
1312
- this.userCreated.emit(true);
1313
- this.initForm();
1314
- break;
1315
- case 2:
1316
- throw new Error("Los datos ingresados no corresponden a un usuario registrado en nuestro sistema, por favor reviselos.");
1317
- case 3:
1318
- throw new Error("Los datos ingresados no cumplen los parámetros establecidos");
1319
- default:
1320
- break;
1321
- }
1322
- this.loader = false;
1323
- });
1324
- }
1325
- getParameters() {
1326
- this.parameterService.getIndicatives().subscribe((response) => {
1327
- this.phoneNumberIndicatives = response.data;
1328
- });
1329
- this.parameterService.getCardTypes('col').subscribe((response) => {
1330
- this.idTypes = response.data;
1331
- });
1332
- this.parameterService.getStatesByCountry('col').subscribe((response) => {
1333
- this.states = response.data;
1334
- });
1335
- }
1336
- getRolesOptions() {
1337
- // Estudiante
1338
- if (this.userType === 'student') {
1339
- this.setPhoto('student');
1340
- return [
1341
- { code: '13', name: 'Student' },
1342
- ];
1343
- }
1344
- // Académico
1345
- if (this.userType === 'academic') {
1346
- this.setPhoto('academic');
1347
- return [
1348
- { code: '11', name: 'Teacher PRO' },
1349
- { code: '12', name: 'Teacher' },
1350
- ];
1351
- }
1352
- // Administrativo
1353
- if (this.userType === 'administrative') {
1354
- this.setPhoto('administrative');
1355
- return [
1356
- { code: '31', name: 'Administrative Supervisor' },
1357
- { code: '32', name: 'Administrative Advisor' },
1358
- ];
1359
- }
1360
- // Marketing
1361
- if (this.userType === 'marketing') {
1362
- this.setPhoto('marketing');
1363
- return [
1364
- { code: '21', name: 'Marketing Supervisor' },
1365
- { code: '22', name: 'Marketing Advisor' },
1366
- ];
1367
- }
1368
- // Comercial
1369
- if (this.userType === 'commercial') {
1370
- this.setPhoto('commercial');
1371
- return [
1372
- { code: '41', name: 'Commercial Supervisor' },
1373
- { code: '42', name: 'Commercial Advisor' },
1374
- ];
1375
- }
1376
- // Cartera
1377
- if (this.userType === 'treasure') {
1378
- this.setPhoto('treasure');
1379
- return [
1380
- { code: '51', name: 'Treauser Supervisor' },
1381
- { code: '52', name: 'Treauser Advisor' },
1382
- ];
1383
- }
1384
- }
1385
- initForm() {
1386
- this.createUserForm = this.fb.group({
1387
- name: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(32)],],
1388
- last_name: ['', [Validators.required, Validators.minLength(5), Validators.maxLength(32),],],
1389
- email: ['', [Validators.required, Validators.maxLength(300)]],
1390
- id_card_type: ['', [Validators.required]],
1391
- id_card: ['', [Validators.required, Validators.minLength(5), Validators.maxLength(20),]],
1392
- phone_indicative: ['', [Validators.required]],
1393
- city: ['', [Validators.required]],
1394
- role: ['', [Validators.required]],
1395
- service_hour: ['', [Validators.required]],
1396
- phone_number: ['', [Validators.required, Validators.minLength(10), Validators.maxLength(15)]],
1397
- password: ['', [Validators.required, Validators.minLength(7), Validators.maxLength(32)]],
1398
- re_password: ['', [Validators.required, Validators.minLength(7), Validators.maxLength(32)]],
1399
- state: [''],
1400
- });
1401
- }
1402
- setPhoto(type) {
1403
- if (type === 'student')
1404
- this.photo = '../../../assets/user-form-assets/estudiante.jpg';
1405
- if (type === 'academic')
1406
- this.photo = '../../../assets/user-form-assets/academico.png';
1407
- if (type === 'administrative')
1408
- this.photo = '../../../assets/user-form-assets/administrativo.jpg';
1409
- if (type === 'marketing')
1410
- this.photo = '../../../assets/user-form-assets/marketing.jpg';
1411
- if (type === 'commercial')
1412
- this.photo = '../../../assets/user-form-assets/comercial.jpg';
1413
- if (type === 'treasure')
1414
- this.photo = '../../../assets/user-form-assets/administrativo.jpg';
1415
- }
1416
- selectRol(role) {
1417
- if (role !== 'Seleccione el rol') {
1418
- this.createUserForm.controls['role'].setValue(role);
1419
- }
1420
- else {
1421
- this.createUserForm.controls['role'].setValue(null);
1422
- }
1423
- }
1424
- selectIndicatives(indicative) {
1425
- if (indicative !== 'Seleccione el indicativo') {
1426
- this.createUserForm.controls['phone_indicative'].setValue(indicative);
1427
- }
1428
- else {
1429
- this.createUserForm.controls['phone_indicative'].setValue(null);
1430
- }
1431
- }
1432
- selectIdType(idType) {
1433
- if (idType !== 'Ingrese el tipo de documento') {
1434
- this.createUserForm.controls['id_card_type'].setValue(idType);
1435
- }
1436
- else {
1437
- this.createUserForm.controls['id_card_type'].setValue(null);
1438
- }
1439
- }
1440
- selectState(state) {
1441
- if (state !== 'Seleccione el departamento') {
1442
- this.createUserForm.controls['state'].setValue(state);
1443
- this.parameterService.getCitiesByState(state).subscribe((response) => {
1444
- this.cities = response.data;
1445
- });
1446
- }
1447
- else {
1448
- this.createUserForm.controls['state'].setValue(null);
1449
- this.createUserForm.controls['city'].setValue(null);
1450
- this.cities = [];
1451
- }
1452
- }
1453
- selectCity(city) {
1454
- if (city !== 'Ciudad de residencia') {
1455
- this.createUserForm.controls['city'].setValue(city);
1456
- }
1457
- else {
1458
- this.createUserForm.controls['city'].setValue(null);
1459
- }
1460
- }
1461
- }
1462
- 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 });
1463
- CreateUserFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: CreateUserFormComponent, selector: "ipt-create-user-form", inputs: { userType: "userType", visibility: "visibility" }, outputs: { userCreated: "userCreated", onHide: "onHide" }, ngImport: i0, template: "<main *ngIf=\"visibility\">\r\n <div @fade class=\"modal_container\">\r\n <div class=\"header_modal\">\r\n <h1>Crear usuario de {{ userType | titlecase}}</h1>\r\n <button (click)=\"closeModal()\">x</button>\r\n </div>\r\n <div class=\"grid_container\">\r\n <div>\r\n <form autocomplete=\"off\" [formGroup]=\"createUserForm\">\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Nombre completo'\"\r\n [control]=\"createUserForm.controls['name']\"\r\n [validateText]=\"'Debe ingresar el nombre'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Apellidos'\"\r\n [control]=\"createUserForm.controls['last_name']\"\r\n [validateText]=\"'Debe ingresar los apellidos'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'text'\"\r\n [placeHolder]=\"'Correo electr\u00F3nico'\"\r\n [control]=\"createUserForm.controls['email']\"\r\n [validateText]=\"'Debe tener dominio @inglesparatodos.edu.co'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [defaultText]=\"'Seleccione el rol'\"\r\n (eventSelect)=\"selectRol($event)\"\r\n [data]=\"getRolesOptions()\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"phoneNumberIndicatives\"\r\n (eventSelect)=\"selectIndicatives($event)\"\r\n [defaultText]=\"'Seleccione el indicativo'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'N\u00FAmero de tel\u00E9fono'\"\r\n [control]=\"createUserForm.controls['phone_number']\"\r\n [validateText]=\"'Debe ingresar un n\u00FAmero de tel\u00E9fono v\u00E1lido'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n [data]=\"idTypes\"\r\n (eventSelect)=\"selectIdType($event)\"\r\n [defaultText]=\"'Ingrese el tipo de documento'\"\r\n ></ipt-select>\r\n <ipt-input\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Documento de identidad'\"\r\n [control]=\"createUserForm.controls['id_card']\"\r\n [validateText]=\"'Debe ingresar el n\u00FAmero de documento'\"\r\n ></ipt-input>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectState($event)\"\r\n [data]=\"states\"\r\n [defaultText]=\"'Seleccione el departamento'\"\r\n ></ipt-select>\r\n <ipt-select\r\n [isRequired]=\"true\"\r\n (eventSelect)=\"selectCity($event)\"\r\n [data]=\"cities\"\r\n [defaultText]=\"'Ciudad de residencia'\"\r\n ></ipt-select>\r\n <ipt-input *ngIf=\"!(userType === 'student')\"\r\n [inputType]=\"'number'\"\r\n [placeHolder]=\"'Ingrese las horas de servicio'\"\r\n [control]=\"createUserForm.controls['service_hour']\"\r\n [validateText]=\"'Debe ingresar las horas de servicio'\"\r\n ></ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['password']\"\r\n >\r\n </ipt-input>\r\n <ipt-input\r\n [inputType]=\"'password'\"\r\n [placeHolder]=\"'Repetir contrase\u00F1a'\"\r\n [control]=\"createUserForm.controls['re_password']\"\r\n >\r\n </ipt-input>\r\n </form>\r\n\r\n <div class=\"buttons-container\">\r\n <ipt-button\r\n [label]=\"'Crear usuario'\"\r\n [isEnabled]=\"\r\n !loader &&\r\n createUserForm.value['re_password'] ===\r\n createUserForm.value['password']\r\n \"\r\n (onClick)=\"createUser()\"\r\n [primary]=\"true\"\r\n >\r\n </ipt-button>\r\n </div>\r\n </div>\r\n <div [ngStyle]=\"{'background-image': 'url(' + photo + ')'}\" class=\"user_type_image\"></div>\r\n </div>\r\n </div>\r\n</main>\r\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100vh;width:100vw;transition:all .5s}main .modal_container{width:60%;height:-moz-fit-content;height:fit-content;position:absolute;inset:0;margin:auto;background-color:#fff;border-radius:6px}.header_modal{display:flex;padding:0 15px;gap:1rem;align-items:center}.header_modal h1{padding:.5rem;background-color:#1c77f7;color:#fff;width:100%;border-radius:10px;font-size:1.25rem;font-weight:700}.header_modal button{margin-left:auto;font-size:26px;padding:1.2rem;font-weight:200;color:#6c7f7d;display:flex;width:25px;height:25px;align-items:center;justify-content:center;transition:50ms;background-color:transparent;border:none}.header_modal button:hover{cursor:pointer;border-radius:50%;background-color:#d4d4d4}.grid_container{display:grid;grid-template-columns:1fr}form{display:grid;grid-template-columns:1fr;grid-gap:.25rem;gap:.25rem;justify-content:center;padding:0 1rem}.buttons-container{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center;align-items:center;justify-items:center;align-content:center}.user_type_image{display:none}}@media screen and (min-width: 768px){form{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;justify-content:center}}@media screen and (min-width: 1366px){form{padding:0rem}.grid_container{display:grid;grid-template-columns:1fr 250px;grid-gap:1rem;gap:1rem;padding:1rem}.user_type_image{display:flex;background-size:cover;background-repeat:no-repeat;background-position:center;height:100%;border-radius:1rem;padding:1rem}}\n"], components: [{ type: InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { type: SelectComponent, selector: "ipt-select", inputs: ["isRequired", "data", "defaultText", "selectCode", "disabledSel", "initialValue", "control"], outputs: ["eventSelect"] }, { type: ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], pipes: { "titlecase": i1.TitleCasePipe }, animations: [
1464
- trigger('fade', [
1465
- transition('void => *', [
1466
- style({ opacity: 0 }),
1467
- animate(200, style({ opacity: 1 }))
1468
- ])
1469
- ])
1470
- ] });
1471
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CreateUserFormComponent, decorators: [{
1472
- type: Component,
1473
- args: [{ selector: 'ipt-create-user-form', animations: [
1474
- trigger('fade', [
1475
- transition('void => *', [
1476
- style({ opacity: 0 }),
1477
- animate(200, style({ opacity: 1 }))
1478
- ])
1479
- ])
1480
- ], 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"] }]
1481
- }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: ParameterService }, { type: UserService }]; }, propDecorators: { userType: [{
1482
- type: Input
1483
- }], visibility: [{
1484
- type: Input
1485
- }], userCreated: [{
1486
- type: Output
1487
- }], onHide: [{
1488
- type: Output
1286
+ class CreateUserFormComponent {
1287
+ constructor(fb, parameterService, userService) {
1288
+ this.fb = fb;
1289
+ this.parameterService = parameterService;
1290
+ this.userService = userService;
1291
+ this.visibility = false;
1292
+ this.userCreated = new EventEmitter(false);
1293
+ this.onHide = new EventEmitter(false);
1294
+ this.loader = false;
1295
+ this.photo = '';
1296
+ }
1297
+ ngOnInit() {
1298
+ this.initForm();
1299
+ this.getParameters();
1300
+ }
1301
+ closeModal() {
1302
+ this.visibility = false;
1303
+ this.onHide.emit(true);
1304
+ }
1305
+ createUser() {
1306
+ this.loader = true;
1307
+ let request = {
1308
+ name: this.createUserForm.controls['name'].value,
1309
+ last_name: this.createUserForm.controls['last_name'].value,
1310
+ id_card_type: this.createUserForm.controls['id_card_type'].value,
1311
+ id_card: this.createUserForm.controls['id_card'].value,
1312
+ phone_indicative: this.createUserForm.controls['phone_indicative'].value,
1313
+ phone_number: this.createUserForm.controls['phone_number'].value,
1314
+ email: this.createUserForm.controls['email'].value,
1315
+ city: this.createUserForm.controls['city'].value,
1316
+ service_hour: this.createUserForm.controls['service_hour'].value,
1317
+ role: this.createUserForm.controls['role'].value,
1318
+ password: this.createUserForm.controls['password'].value,
1319
+ };
1320
+ this.userService.registerDashboard(request).subscribe((response) => {
1321
+ console.log(response.message);
1322
+ switch (response.message.code) {
1323
+ case 1:
1324
+ this.userCreated.emit(true);
1325
+ this.initForm();
1326
+ break;
1327
+ case 2:
1328
+ throw new Error("Los datos ingresados no corresponden a un usuario registrado en nuestro sistema, por favor reviselos.");
1329
+ case 3:
1330
+ throw new Error("Los datos ingresados no cumplen los parámetros establecidos");
1331
+ default:
1332
+ break;
1333
+ }
1334
+ this.loader = false;
1335
+ });
1336
+ }
1337
+ getParameters() {
1338
+ this.parameterService.getIndicatives().subscribe((response) => {
1339
+ this.phoneNumberIndicatives = response.data;
1340
+ });
1341
+ this.parameterService.getCardTypes('col').subscribe((response) => {
1342
+ this.idTypes = response.data;
1343
+ });
1344
+ this.parameterService.getStatesByCountry('col').subscribe((response) => {
1345
+ this.states = response.data;
1346
+ });
1347
+ }
1348
+ getRolesOptions() {
1349
+ // Estudiante
1350
+ if (this.userType === 'student') {
1351
+ this.setPhoto('student');
1352
+ return [
1353
+ { code: '13', name: 'Student' },
1354
+ ];
1355
+ }
1356
+ // Académico
1357
+ if (this.userType === 'academic') {
1358
+ this.setPhoto('academic');
1359
+ return [
1360
+ { code: '11', name: 'Teacher PRO' },
1361
+ { code: '12', name: 'Teacher' },
1362
+ ];
1363
+ }
1364
+ // Administrativo
1365
+ if (this.userType === 'administrative') {
1366
+ this.setPhoto('administrative');
1367
+ return [
1368
+ { code: '31', name: 'Administrative Supervisor' },
1369
+ { code: '32', name: 'Administrative Advisor' },
1370
+ ];
1371
+ }
1372
+ // Marketing
1373
+ if (this.userType === 'marketing') {
1374
+ this.setPhoto('marketing');
1375
+ return [
1376
+ { code: '21', name: 'Marketing Supervisor' },
1377
+ { code: '22', name: 'Marketing Advisor' },
1378
+ ];
1379
+ }
1380
+ // Comercial
1381
+ if (this.userType === 'commercial') {
1382
+ this.setPhoto('commercial');
1383
+ return [
1384
+ { code: '41', name: 'Commercial Supervisor' },
1385
+ { code: '42', name: 'Commercial Advisor' },
1386
+ ];
1387
+ }
1388
+ // Cartera
1389
+ if (this.userType === 'treasure') {
1390
+ this.setPhoto('treasure');
1391
+ return [
1392
+ { code: '51', name: 'Treauser Supervisor' },
1393
+ { code: '52', name: 'Treauser Advisor' },
1394
+ ];
1395
+ }
1396
+ }
1397
+ initForm() {
1398
+ this.createUserForm = this.fb.group({
1399
+ name: ['', [Validators.required, Validators.minLength(3), Validators.maxLength(32)],],
1400
+ last_name: ['', [Validators.required, Validators.minLength(5), Validators.maxLength(32),],],
1401
+ email: ['', [Validators.required, Validators.maxLength(300)]],
1402
+ id_card_type: ['', [Validators.required]],
1403
+ id_card: ['', [Validators.required, Validators.minLength(5), Validators.maxLength(20),]],
1404
+ phone_indicative: ['', [Validators.required]],
1405
+ city: ['', [Validators.required]],
1406
+ role: ['', [Validators.required]],
1407
+ service_hour: ['', [Validators.required]],
1408
+ phone_number: ['', [Validators.required, Validators.minLength(10), Validators.maxLength(15)]],
1409
+ password: ['', [Validators.required, Validators.minLength(7), Validators.maxLength(32)]],
1410
+ re_password: ['', [Validators.required, Validators.minLength(7), Validators.maxLength(32)]],
1411
+ state: [''],
1412
+ });
1413
+ }
1414
+ setPhoto(type) {
1415
+ if (type === 'student')
1416
+ this.photo = '../../../assets/user-form-assets/estudiante.jpg';
1417
+ if (type === 'academic')
1418
+ this.photo = '../../../assets/user-form-assets/academico.png';
1419
+ if (type === 'administrative')
1420
+ this.photo = '../../../assets/user-form-assets/administrativo.jpg';
1421
+ if (type === 'marketing')
1422
+ this.photo = '../../../assets/user-form-assets/marketing.jpg';
1423
+ if (type === 'commercial')
1424
+ this.photo = '../../../assets/user-form-assets/comercial.jpg';
1425
+ if (type === 'treasure')
1426
+ this.photo = '../../../assets/user-form-assets/administrativo.jpg';
1427
+ }
1428
+ selectRol(role) {
1429
+ if (role !== 'Seleccione el rol') {
1430
+ this.createUserForm.controls['role'].setValue(role);
1431
+ }
1432
+ else {
1433
+ this.createUserForm.controls['role'].setValue(null);
1434
+ }
1435
+ }
1436
+ selectIndicatives(indicative) {
1437
+ if (indicative !== 'Seleccione el indicativo') {
1438
+ this.createUserForm.controls['phone_indicative'].setValue(indicative);
1439
+ }
1440
+ else {
1441
+ this.createUserForm.controls['phone_indicative'].setValue(null);
1442
+ }
1443
+ }
1444
+ selectIdType(idType) {
1445
+ if (idType !== 'Ingrese el tipo de documento') {
1446
+ this.createUserForm.controls['id_card_type'].setValue(idType);
1447
+ }
1448
+ else {
1449
+ this.createUserForm.controls['id_card_type'].setValue(null);
1450
+ }
1451
+ }
1452
+ selectState(state) {
1453
+ if (state !== 'Seleccione el departamento') {
1454
+ this.createUserForm.controls['state'].setValue(state);
1455
+ this.parameterService.getCitiesByState(state).subscribe((response) => {
1456
+ this.cities = response.data;
1457
+ });
1458
+ }
1459
+ else {
1460
+ this.createUserForm.controls['state'].setValue(null);
1461
+ this.createUserForm.controls['city'].setValue(null);
1462
+ this.cities = [];
1463
+ }
1464
+ }
1465
+ selectCity(city) {
1466
+ if (city !== 'Ciudad de residencia') {
1467
+ this.createUserForm.controls['city'].setValue(city);
1468
+ }
1469
+ else {
1470
+ this.createUserForm.controls['city'].setValue(null);
1471
+ }
1472
+ }
1473
+ }
1474
+ 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 });
1475
+ 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", "initialValue", "control"], outputs: ["eventSelect"] }, { type: ButtonComponent, selector: "ipt-button", inputs: ["primary", "size", "label", "buttonType", "isEnabled"], outputs: ["onClick"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], pipes: { "titlecase": i1.TitleCasePipe }, animations: [
1476
+ trigger('fade', [
1477
+ transition('void => *', [
1478
+ style({ opacity: 0 }),
1479
+ animate(200, style({ opacity: 1 }))
1480
+ ])
1481
+ ])
1482
+ ] });
1483
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CreateUserFormComponent, decorators: [{
1484
+ type: Component,
1485
+ args: [{ selector: 'ipt-create-user-form', animations: [
1486
+ trigger('fade', [
1487
+ transition('void => *', [
1488
+ style({ opacity: 0 }),
1489
+ animate(200, style({ opacity: 1 }))
1490
+ ])
1491
+ ])
1492
+ ], 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"] }]
1493
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: ParameterService }, { type: UserService }]; }, propDecorators: { userType: [{
1494
+ type: Input
1495
+ }], visibility: [{
1496
+ type: Input
1497
+ }], userCreated: [{
1498
+ type: Output
1499
+ }], onHide: [{
1500
+ type: Output
1489
1501
  }] } });
1490
1502
 
1491
- class SidenavComponent {
1492
- constructor(userService, baseService, storageService) {
1493
- this.userService = userService;
1494
- this.baseService = baseService;
1495
- this.storageService = storageService;
1496
- this.pageChangeEvent = new EventEmitter();
1497
- this.appUser = false;
1498
- this.routes = [];
1499
- this.options = { weekday: 'long', month: 'long', day: 'numeric' };
1500
- this.currentDay = new Date().toLocaleDateString('en-EN', this.options);
1501
- this.hour = new Date().getHours();
1502
- }
1503
- ngOnInit() {
1504
- let user = this.storageService.getCurrentUser()?.token;
1505
- let token = user === undefined ? '' : user;
1506
- let request = {
1507
- token: token,
1508
- };
1509
- this.userService.getRoutesForRole(request).subscribe((response) => {
1510
- this.routes = response.data;
1511
- });
1512
- this.appUser = this.baseService.isAnAppUser();
1513
- }
1514
- clickPage(event) {
1515
- this.pageChangeEvent.emit(event);
1516
- }
1517
- logout() {
1518
- this.storageService.logout();
1519
- this.pageChangeEvent.emit('logout');
1520
- }
1521
- }
1522
- SidenavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SidenavComponent, deps: [{ token: UserService }, { token: BaseService }, { token: StorageService }], target: i0.ɵɵFactoryTarget.Component });
1523
- 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: `
1524
- <mat-sidenav #sidenav mode="push" >
1525
- <mat-toolbar color="primary" (click)="sidenav.toggle()">
1526
- <span style="font-size: 15px;">{{department}}</span>
1527
- <span class="menu-icon-close"></span>
1528
- </mat-toolbar>
1529
-
1530
- <mat-nav-list *ngFor="let route of routes">
1531
- <nav class="flex-container-menu">
1532
- <ipt-aside-button
1533
- [buttonActive]="this.setPage === route.page"
1534
- [icon]="route.icon"
1535
- [text]="route.text"
1536
- (isClicked)="clickPage(route.page)"
1537
- (click)="sidenav.toggle()"
1538
- >
1539
- </ipt-aside-button>
1540
- </nav>
1541
- </mat-nav-list>
1542
- </mat-sidenav>
1543
-
1544
- <mat-toolbar class="header">
1545
- <div class="menu-container" (click)="sidenav.toggle()">
1546
- <p>Menu</p>
1547
- <div class="menu-icon"></div>
1548
- </div>
1549
-
1550
- <img class="img-logo" src="http://qa.iptdev.com.co/assets/logos/IPT-logo.png" alt="" />
1551
-
1552
- <div class="text-container">
1553
- <span class="p1">{{ currentDay }}</span>
1554
- <span *ngIf="hour >= 0 && hour < 12" class="p2">
1555
- Hey {{ userName }}, Good moorning!
1556
- </span>
1557
- <p *ngIf="hour >= 12 && hour < 18" class="p2">
1558
- Hey {{ userName }}, Good afternoon!
1559
- </p>
1560
- <p *ngIf="hour >= 18 && hour < 24" class="p2">
1561
- Hey {{ userName }}, Good evening!
1562
- </p>
1563
- </div>
1564
-
1565
- <div *ngIf="!this.appUser" class="logout-container" (click)="logout()">
1566
- <p class="logout-button">Cerrar sesión</p>
1567
- <div class="photo-logout"></div>
1568
- </div>
1569
- </mat-toolbar>
1570
- `, 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: i4.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i5.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i6.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"] }] });
1571
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SidenavComponent, decorators: [{
1572
- type: Component,
1573
- args: [{ selector: 'ipt-sidenav', template: `
1574
- <mat-sidenav #sidenav mode="push" >
1575
- <mat-toolbar color="primary" (click)="sidenav.toggle()">
1576
- <span style="font-size: 15px;">{{department}}</span>
1577
- <span class="menu-icon-close"></span>
1578
- </mat-toolbar>
1579
-
1580
- <mat-nav-list *ngFor="let route of routes">
1581
- <nav class="flex-container-menu">
1582
- <ipt-aside-button
1583
- [buttonActive]="this.setPage === route.page"
1584
- [icon]="route.icon"
1585
- [text]="route.text"
1586
- (isClicked)="clickPage(route.page)"
1587
- (click)="sidenav.toggle()"
1588
- >
1589
- </ipt-aside-button>
1590
- </nav>
1591
- </mat-nav-list>
1592
- </mat-sidenav>
1593
-
1594
- <mat-toolbar class="header">
1595
- <div class="menu-container" (click)="sidenav.toggle()">
1596
- <p>Menu</p>
1597
- <div class="menu-icon"></div>
1598
- </div>
1599
-
1600
- <img class="img-logo" src="http://qa.iptdev.com.co/assets/logos/IPT-logo.png" alt="" />
1601
-
1602
- <div class="text-container">
1603
- <span class="p1">{{ currentDay }}</span>
1604
- <span *ngIf="hour >= 0 && hour < 12" class="p2">
1605
- Hey {{ userName }}, Good moorning!
1606
- </span>
1607
- <p *ngIf="hour >= 12 && hour < 18" class="p2">
1608
- Hey {{ userName }}, Good afternoon!
1609
- </p>
1610
- <p *ngIf="hour >= 18 && hour < 24" class="p2">
1611
- Hey {{ userName }}, Good evening!
1612
- </p>
1613
- </div>
1614
-
1615
- <div *ngIf="!this.appUser" class="logout-container" (click)="logout()">
1616
- <p class="logout-button">Cerrar sesión</p>
1617
- <div class="photo-logout"></div>
1618
- </div>
1619
- </mat-toolbar>
1620
- `, 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"] }]
1621
- }], ctorParameters: function () { return [{ type: UserService }, { type: BaseService }, { type: StorageService }]; }, propDecorators: { department: [{
1622
- type: Input
1623
- }], setPage: [{
1624
- type: Input
1625
- }], userName: [{
1626
- type: Input
1627
- }], pageChangeEvent: [{
1628
- type: Output
1503
+ class SidenavComponent {
1504
+ constructor(userService, baseService, storageService) {
1505
+ this.userService = userService;
1506
+ this.baseService = baseService;
1507
+ this.storageService = storageService;
1508
+ this.pageChangeEvent = new EventEmitter();
1509
+ this.appUser = false;
1510
+ this.routes = [];
1511
+ this.options = { weekday: 'long', month: 'long', day: 'numeric' };
1512
+ this.currentDay = new Date().toLocaleDateString('en-EN', this.options);
1513
+ this.hour = new Date().getHours();
1514
+ }
1515
+ ngOnInit() {
1516
+ let user = this.storageService.getCurrentUser()?.token;
1517
+ let token = user === undefined ? '' : user;
1518
+ let request = {
1519
+ token: token,
1520
+ };
1521
+ this.userService.getRoutesForRole(request).subscribe((response) => {
1522
+ this.routes = response.data;
1523
+ });
1524
+ this.appUser = this.baseService.isAnAppUser();
1525
+ }
1526
+ clickPage(event) {
1527
+ this.pageChangeEvent.emit(event);
1528
+ }
1529
+ logout() {
1530
+ this.storageService.logout();
1531
+ this.pageChangeEvent.emit('logout');
1532
+ }
1533
+ }
1534
+ SidenavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SidenavComponent, deps: [{ token: UserService }, { token: BaseService }, { token: StorageService }], target: i0.ɵɵFactoryTarget.Component });
1535
+ 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: `
1536
+ <mat-sidenav #sidenav mode="push" >
1537
+ <mat-toolbar color="primary" (click)="sidenav.toggle()">
1538
+ <span style="font-size: 15px;">{{department}}</span>
1539
+ <span class="menu-icon-close"></span>
1540
+ </mat-toolbar>
1541
+
1542
+ <mat-nav-list *ngFor="let route of routes">
1543
+ <nav class="flex-container-menu">
1544
+ <ipt-aside-button
1545
+ [buttonActive]="this.setPage === route.page"
1546
+ [icon]="route.icon"
1547
+ [text]="route.text"
1548
+ (isClicked)="clickPage(route.page)"
1549
+ (click)="sidenav.toggle()"
1550
+ >
1551
+ </ipt-aside-button>
1552
+ </nav>
1553
+ </mat-nav-list>
1554
+ </mat-sidenav>
1555
+
1556
+ <mat-toolbar class="header">
1557
+ <div class="menu-container" (click)="sidenav.toggle()">
1558
+ <p>Menu</p>
1559
+ <div class="menu-icon"></div>
1560
+ </div>
1561
+
1562
+ <img class="img-logo" src="http://qa.iptdev.com.co/assets/logos/IPT-logo.png" alt="" />
1563
+
1564
+ <div class="text-container">
1565
+ <span class="p1">{{ currentDay }}</span>
1566
+ <span *ngIf="hour >= 0 && hour < 12" class="p2">
1567
+ Hey {{ userName }}, Good moorning!
1568
+ </span>
1569
+ <p *ngIf="hour >= 12 && hour < 18" class="p2">
1570
+ Hey {{ userName }}, Good afternoon!
1571
+ </p>
1572
+ <p *ngIf="hour >= 18 && hour < 24" class="p2">
1573
+ Hey {{ userName }}, Good evening!
1574
+ </p>
1575
+ </div>
1576
+
1577
+ <div *ngIf="!this.appUser" class="logout-container" (click)="logout()">
1578
+ <p class="logout-button">Cerrar sesión</p>
1579
+ <div class="photo-logout"></div>
1580
+ </div>
1581
+ </mat-toolbar>
1582
+ `, 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: i4.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i5.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i6.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"] }] });
1583
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SidenavComponent, decorators: [{
1584
+ type: Component,
1585
+ args: [{ selector: 'ipt-sidenav', template: `
1586
+ <mat-sidenav #sidenav mode="push" >
1587
+ <mat-toolbar color="primary" (click)="sidenav.toggle()">
1588
+ <span style="font-size: 15px;">{{department}}</span>
1589
+ <span class="menu-icon-close"></span>
1590
+ </mat-toolbar>
1591
+
1592
+ <mat-nav-list *ngFor="let route of routes">
1593
+ <nav class="flex-container-menu">
1594
+ <ipt-aside-button
1595
+ [buttonActive]="this.setPage === route.page"
1596
+ [icon]="route.icon"
1597
+ [text]="route.text"
1598
+ (isClicked)="clickPage(route.page)"
1599
+ (click)="sidenav.toggle()"
1600
+ >
1601
+ </ipt-aside-button>
1602
+ </nav>
1603
+ </mat-nav-list>
1604
+ </mat-sidenav>
1605
+
1606
+ <mat-toolbar class="header">
1607
+ <div class="menu-container" (click)="sidenav.toggle()">
1608
+ <p>Menu</p>
1609
+ <div class="menu-icon"></div>
1610
+ </div>
1611
+
1612
+ <img class="img-logo" src="http://qa.iptdev.com.co/assets/logos/IPT-logo.png" alt="" />
1613
+
1614
+ <div class="text-container">
1615
+ <span class="p1">{{ currentDay }}</span>
1616
+ <span *ngIf="hour >= 0 && hour < 12" class="p2">
1617
+ Hey {{ userName }}, Good moorning!
1618
+ </span>
1619
+ <p *ngIf="hour >= 12 && hour < 18" class="p2">
1620
+ Hey {{ userName }}, Good afternoon!
1621
+ </p>
1622
+ <p *ngIf="hour >= 18 && hour < 24" class="p2">
1623
+ Hey {{ userName }}, Good evening!
1624
+ </p>
1625
+ </div>
1626
+
1627
+ <div *ngIf="!this.appUser" class="logout-container" (click)="logout()">
1628
+ <p class="logout-button">Cerrar sesión</p>
1629
+ <div class="photo-logout"></div>
1630
+ </div>
1631
+ </mat-toolbar>
1632
+ `, 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"] }]
1633
+ }], ctorParameters: function () { return [{ type: UserService }, { type: BaseService }, { type: StorageService }]; }, propDecorators: { department: [{
1634
+ type: Input
1635
+ }], setPage: [{
1636
+ type: Input
1637
+ }], userName: [{
1638
+ type: Input
1639
+ }], pageChangeEvent: [{
1640
+ type: Output
1629
1641
  }] } });
1630
1642
 
1631
- class MaterialModule {
1632
- }
1633
- MaterialModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1634
- MaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
1635
- MaterialModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, imports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
1636
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, decorators: [{
1637
- type: NgModule,
1638
- args: [{
1639
- exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule],
1640
- }]
1643
+ class MaterialModule {
1644
+ }
1645
+ MaterialModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1646
+ MaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
1647
+ MaterialModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, imports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule] });
1648
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MaterialModule, decorators: [{
1649
+ type: NgModule,
1650
+ args: [{
1651
+ exports: [MatSidenavModule, MatToolbarModule, MatIconModule, MatListModule, MatButtonModule],
1652
+ }]
1641
1653
  }] });
1642
1654
 
1643
- class ComponentsModule {
1644
- }
1645
- ComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1646
- ComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, declarations: [AsideButtonComponent,
1647
- ButtonComponent,
1648
- CheckboxComponent,
1649
- CreateUserFormComponent,
1650
- DatalistComponent,
1651
- InputComponent,
1652
- LevelButtonComponent,
1653
- LevelTextComponent,
1654
- LoginFormComponent,
1655
- LoaderComponent,
1656
- RadioComponent,
1657
- SelectComponent,
1658
- SidenavComponent,
1659
- TextLinkComponent], imports: [CommonModule,
1660
- // BrowserModule, // Para evitar doble carga de BrowserModule
1661
- FormsModule,
1662
- ReactiveFormsModule,
1663
- MaterialModule,
1664
- CurrencyMaskModule], exports: [AsideButtonComponent,
1665
- ButtonComponent,
1666
- CheckboxComponent,
1667
- CreateUserFormComponent,
1668
- DatalistComponent,
1669
- InputComponent,
1670
- LevelButtonComponent,
1671
- LevelTextComponent,
1672
- LoaderComponent,
1673
- RadioComponent,
1674
- SelectComponent,
1675
- TextLinkComponent,
1676
- LoginFormComponent,
1677
- SidenavComponent,
1678
- CurrencyMaskModule] });
1679
- ComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, providers: [
1680
- CurrencyPipe,
1681
- TitleCasePipe
1682
- ], imports: [[
1683
- CommonModule,
1684
- // BrowserModule, // Para evitar doble carga de BrowserModule
1685
- FormsModule,
1686
- ReactiveFormsModule,
1687
- MaterialModule,
1688
- CurrencyMaskModule
1689
- ], CurrencyMaskModule] });
1690
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, decorators: [{
1691
- type: NgModule,
1692
- args: [{
1693
- declarations: [
1694
- AsideButtonComponent,
1695
- ButtonComponent,
1696
- CheckboxComponent,
1697
- CreateUserFormComponent,
1698
- DatalistComponent,
1699
- InputComponent,
1700
- LevelButtonComponent,
1701
- LevelTextComponent,
1702
- LoginFormComponent,
1703
- LoaderComponent,
1704
- RadioComponent,
1705
- SelectComponent,
1706
- SidenavComponent,
1707
- TextLinkComponent,
1708
- ],
1709
- imports: [
1710
- CommonModule,
1711
- // BrowserModule, // Para evitar doble carga de BrowserModule
1712
- FormsModule,
1713
- ReactiveFormsModule,
1714
- MaterialModule,
1715
- CurrencyMaskModule
1716
- ],
1717
- exports: [
1718
- AsideButtonComponent,
1719
- ButtonComponent,
1720
- CheckboxComponent,
1721
- CreateUserFormComponent,
1722
- DatalistComponent,
1723
- InputComponent,
1724
- LevelButtonComponent,
1725
- LevelTextComponent,
1726
- LoaderComponent,
1727
- RadioComponent,
1728
- SelectComponent,
1729
- TextLinkComponent,
1730
- LoginFormComponent,
1731
- SidenavComponent,
1732
- CurrencyMaskModule
1733
- ],
1734
- providers: [
1735
- CurrencyPipe,
1736
- TitleCasePipe
1737
- ]
1738
- }]
1655
+ class ComponentsModule {
1656
+ }
1657
+ ComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1658
+ ComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, declarations: [AsideButtonComponent,
1659
+ ButtonComponent,
1660
+ CheckboxComponent,
1661
+ CreateUserFormComponent,
1662
+ DatalistComponent,
1663
+ InputComponent,
1664
+ LevelButtonComponent,
1665
+ LevelTextComponent,
1666
+ LoginFormComponent,
1667
+ LoaderComponent,
1668
+ RadioComponent,
1669
+ SelectComponent,
1670
+ SidenavComponent,
1671
+ TextLinkComponent], imports: [CommonModule,
1672
+ // BrowserModule, // Para evitar doble carga de BrowserModule
1673
+ FormsModule,
1674
+ ReactiveFormsModule,
1675
+ MaterialModule,
1676
+ CurrencyMaskModule], exports: [AsideButtonComponent,
1677
+ ButtonComponent,
1678
+ CheckboxComponent,
1679
+ CreateUserFormComponent,
1680
+ DatalistComponent,
1681
+ InputComponent,
1682
+ LevelButtonComponent,
1683
+ LevelTextComponent,
1684
+ LoaderComponent,
1685
+ RadioComponent,
1686
+ SelectComponent,
1687
+ TextLinkComponent,
1688
+ LoginFormComponent,
1689
+ SidenavComponent,
1690
+ CurrencyMaskModule] });
1691
+ ComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, providers: [
1692
+ CurrencyPipe,
1693
+ TitleCasePipe
1694
+ ], imports: [[
1695
+ CommonModule,
1696
+ // BrowserModule, // Para evitar doble carga de BrowserModule
1697
+ FormsModule,
1698
+ ReactiveFormsModule,
1699
+ MaterialModule,
1700
+ CurrencyMaskModule
1701
+ ], CurrencyMaskModule] });
1702
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ComponentsModule, decorators: [{
1703
+ type: NgModule,
1704
+ args: [{
1705
+ declarations: [
1706
+ AsideButtonComponent,
1707
+ ButtonComponent,
1708
+ CheckboxComponent,
1709
+ CreateUserFormComponent,
1710
+ DatalistComponent,
1711
+ InputComponent,
1712
+ LevelButtonComponent,
1713
+ LevelTextComponent,
1714
+ LoginFormComponent,
1715
+ LoaderComponent,
1716
+ RadioComponent,
1717
+ SelectComponent,
1718
+ SidenavComponent,
1719
+ TextLinkComponent,
1720
+ ],
1721
+ imports: [
1722
+ CommonModule,
1723
+ // BrowserModule, // Para evitar doble carga de BrowserModule
1724
+ FormsModule,
1725
+ ReactiveFormsModule,
1726
+ MaterialModule,
1727
+ CurrencyMaskModule
1728
+ ],
1729
+ exports: [
1730
+ AsideButtonComponent,
1731
+ ButtonComponent,
1732
+ CheckboxComponent,
1733
+ CreateUserFormComponent,
1734
+ DatalistComponent,
1735
+ InputComponent,
1736
+ LevelButtonComponent,
1737
+ LevelTextComponent,
1738
+ LoaderComponent,
1739
+ RadioComponent,
1740
+ SelectComponent,
1741
+ TextLinkComponent,
1742
+ LoginFormComponent,
1743
+ SidenavComponent,
1744
+ CurrencyMaskModule
1745
+ ],
1746
+ providers: [
1747
+ CurrencyPipe,
1748
+ TitleCasePipe
1749
+ ]
1750
+ }]
1739
1751
  }] });
1740
1752
 
1741
- class CourseService {
1742
- constructor(http) {
1743
- this.http = http;
1744
- this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
1745
- }
1746
- createCourse(course) {
1747
- let serviceUrl = this.SERVICE_URL + 'post/course';
1748
- this.generateRequestParams(course);
1749
- return this.http.post(serviceUrl, this.httpOptions);
1750
- }
1751
- editCourse(course) {
1752
- let serviceUrl = this.SERVICE_URL + 'put/course';
1753
- this.generateRequestParams(course);
1754
- return this.http.put(serviceUrl, this.httpOptions);
1755
- }
1756
- getAllCourses(params) {
1757
- let serviceUrl = this.SERVICE_URL + 'post/all/courses';
1758
- this.generateRequestParams(params);
1759
- return this.http.post(serviceUrl, this.httpOptions);
1760
- }
1761
- getCoursesByLevel(params) {
1762
- let serviceUrl = this.SERVICE_URL + 'post/course/by/level';
1763
- this.generateRequestParams(params);
1764
- return this.http.post(serviceUrl, this.httpOptions);
1765
- }
1766
- getAvailibleCourses(availibleCourses) {
1767
- let serviceUrl = this.SERVICE_URL + 'post/course/for/cod';
1768
- this.generateRequestParams(availibleCourses);
1769
- return this.http.post(serviceUrl, this.httpOptions);
1770
- }
1771
- getCourseByCode(params) {
1772
- let serviceUrl = this.SERVICE_URL + 'post/course/by/code';
1773
- this.generateRequestParams(params);
1774
- return this.http.post(serviceUrl, this.httpOptions);
1775
- }
1776
- getCoursesByTeacher(params) {
1777
- let serviceUrl = this.SERVICE_URL + 'post/course/by/teacher';
1778
- this.generateRequestParams(params);
1779
- return this.http.post(serviceUrl, this.httpOptions);
1780
- }
1781
- getFilteredCoursesByTeacher(params) {
1782
- let serviceUrl = this.SERVICE_URL + 'post/course/filtered/by/teacher';
1783
- this.generateRequestParams(params);
1784
- return this.http.post(serviceUrl, this.httpOptions);
1785
- }
1786
- getCoursesByStartDate(params) {
1787
- let serviceUrl = this.SERVICE_URL + 'post/course/by/startdate';
1788
- this.generateRequestParams(params);
1789
- return this.http.post(serviceUrl, this.httpOptions);
1790
- }
1791
- numberClassByCode(idCode) {
1792
- let serviceUrl = this.SERVICE_URL + 'get/coursetype/numclass/by/code/' + idCode;
1793
- return this.http.get(serviceUrl);
1794
- }
1795
- // construye los headers y params
1796
- generateRequestParams(param) {
1797
- this.httpOptions = {
1798
- header: new HttpHeaders(),
1799
- params: param,
1800
- };
1801
- }
1802
- }
1803
- 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 });
1804
- CourseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CourseService, providedIn: 'root' });
1805
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CourseService, decorators: [{
1806
- type: Injectable,
1807
- args: [{
1808
- providedIn: 'root',
1809
- }]
1753
+ class CourseService extends IPTGeneralService {
1754
+ constructor(http) {
1755
+ super();
1756
+ this.http = http;
1757
+ this.SERVICE_URL = 'academic/api/';
1758
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
1759
+ }
1760
+ createCourse(course) {
1761
+ let serviceUrl = this.SERVICE_URL + 'post/course';
1762
+ this.generateRequestParams(course);
1763
+ return this.http.post(serviceUrl, this.httpOptions);
1764
+ }
1765
+ editCourse(course) {
1766
+ let serviceUrl = this.SERVICE_URL + 'put/course';
1767
+ this.generateRequestParams(course);
1768
+ return this.http.put(serviceUrl, this.httpOptions);
1769
+ }
1770
+ getAllCourses(params) {
1771
+ let serviceUrl = this.SERVICE_URL + 'post/all/courses';
1772
+ this.generateRequestParams(params);
1773
+ return this.http.post(serviceUrl, this.httpOptions);
1774
+ }
1775
+ getCoursesByLevel(params) {
1776
+ let serviceUrl = this.SERVICE_URL + 'post/course/by/level';
1777
+ this.generateRequestParams(params);
1778
+ return this.http.post(serviceUrl, this.httpOptions);
1779
+ }
1780
+ getAvailibleCourses(availibleCourses) {
1781
+ let serviceUrl = this.SERVICE_URL + 'post/course/for/cod';
1782
+ this.generateRequestParams(availibleCourses);
1783
+ return this.http.post(serviceUrl, this.httpOptions);
1784
+ }
1785
+ getCourseByCode(params) {
1786
+ let serviceUrl = this.SERVICE_URL + 'post/course/by/code';
1787
+ this.generateRequestParams(params);
1788
+ return this.http.post(serviceUrl, this.httpOptions);
1789
+ }
1790
+ getCoursesByTeacher(params) {
1791
+ let serviceUrl = this.SERVICE_URL + 'post/course/by/teacher';
1792
+ this.generateRequestParams(params);
1793
+ return this.http.post(serviceUrl, this.httpOptions);
1794
+ }
1795
+ getFilteredCoursesByTeacher(params) {
1796
+ let serviceUrl = this.SERVICE_URL + 'post/course/filtered/by/teacher';
1797
+ this.generateRequestParams(params);
1798
+ return this.http.post(serviceUrl, this.httpOptions);
1799
+ }
1800
+ getCoursesByStartDate(params) {
1801
+ let serviceUrl = this.SERVICE_URL + 'post/course/by/startdate';
1802
+ this.generateRequestParams(params);
1803
+ return this.http.post(serviceUrl, this.httpOptions);
1804
+ }
1805
+ numberClassByCode(idCode) {
1806
+ let serviceUrl = this.SERVICE_URL + 'get/coursetype/numclass/by/code/' + idCode;
1807
+ return this.http.get(serviceUrl);
1808
+ }
1809
+ }
1810
+ 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 });
1811
+ CourseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CourseService, providedIn: 'root' });
1812
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CourseService, decorators: [{
1813
+ type: Injectable,
1814
+ args: [{
1815
+ providedIn: 'root',
1816
+ }]
1810
1817
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
1811
1818
 
1812
- class RedirectGuard {
1813
- constructor(router) {
1814
- this.router = router;
1815
- }
1816
- canActivate(route, state) {
1817
- window.location.href = route.data['externalUrl'];
1818
- return true;
1819
- }
1820
- }
1821
- 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 });
1822
- RedirectGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RedirectGuard });
1823
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RedirectGuard, decorators: [{
1824
- type: Injectable
1819
+ class RedirectGuard {
1820
+ constructor(router) {
1821
+ this.router = router;
1822
+ }
1823
+ canActivate(route, state) {
1824
+ window.location.href = route.data['externalUrl'];
1825
+ return true;
1826
+ }
1827
+ }
1828
+ 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 });
1829
+ RedirectGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RedirectGuard });
1830
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RedirectGuard, decorators: [{
1831
+ type: Injectable
1825
1832
  }], ctorParameters: function () { return [{ type: i1$3.Router }]; } });
1826
1833
 
1827
- class SwitchService {
1828
- constructor() {
1829
- this.$modal = new EventEmitter();
1830
- }
1831
- }
1832
- SwitchService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1833
- SwitchService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, providedIn: 'root' });
1834
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, decorators: [{
1835
- type: Injectable,
1836
- args: [{
1837
- providedIn: 'root'
1838
- }]
1834
+ class SwitchService {
1835
+ constructor() {
1836
+ this.$modal = new EventEmitter();
1837
+ }
1838
+ }
1839
+ SwitchService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1840
+ SwitchService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, providedIn: 'root' });
1841
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SwitchService, decorators: [{
1842
+ type: Injectable,
1843
+ args: [{
1844
+ providedIn: 'root'
1845
+ }]
1839
1846
  }], ctorParameters: function () { return []; } });
1840
1847
 
1841
- class TestService {
1842
- constructor(http) {
1843
- this.http = http;
1844
- this.SERVICE_URL = 'https://iptdev.com.co/lab/test/api/';
1845
- }
1846
- // ---------------------- EXÁMENES ---------------------- //
1847
- createExam(exam) {
1848
- let serviceUrl = this.SERVICE_URL + 'post/exam';
1849
- this.generateRequestParams(exam);
1850
- return this.http.post(serviceUrl, this.httpOptions);
1851
- }
1852
- getAllExams(params) {
1853
- let serviceUrl = this.SERVICE_URL + 'post/all/exam';
1854
- this.generateRequestParams(params);
1855
- return this.http.post(serviceUrl, this.httpOptions);
1856
- }
1857
- updateExam(params) {
1858
- let serviceUrl = this.SERVICE_URL + 'update/exam';
1859
- this.generateRequestParams(params);
1860
- return this.http.put(serviceUrl, this.httpOptions);
1861
- }
1862
- updateExamStatus(params) {
1863
- let serviceUrl = this.SERVICE_URL + 'update/exam/status';
1864
- this.generateRequestParams(params);
1865
- return this.http.put(serviceUrl, this.httpOptions);
1866
- }
1867
- copyExam(params) {
1868
- let serviceUrl = this.SERVICE_URL + 'copy/exam';
1869
- this.generateRequestParams(params);
1870
- return this.http.put(serviceUrl, this.httpOptions);
1871
- }
1872
- getExamByCode(code) {
1873
- let serviceUrl = this.SERVICE_URL + 'get/exam/by/code/' + code;
1874
- return this.http.get(serviceUrl);
1875
- }
1876
- getExamByAuthor(code) {
1877
- let serviceUrl = this.SERVICE_URL + 'get/exams/by/author/' + code;
1878
- return this.http.get(serviceUrl);
1879
- }
1880
- // ---------------------- SECCIONES ---------------------- //
1881
- createSectionWithAll(params) {
1882
- let serviceUrl = this.SERVICE_URL + 'post/section/with/all';
1883
- this.generateRequestParams(params);
1884
- return this.http.post(serviceUrl, this.httpOptions);
1885
- }
1886
- createSection(params) {
1887
- let serviceUrl = this.SERVICE_URL + 'post/section';
1888
- this.generateRequestParams(params);
1889
- return this.http.post(serviceUrl, this.httpOptions);
1890
- }
1891
- getAllSections(params) {
1892
- let serviceUrl = this.SERVICE_URL + 'post/all/sections';
1893
- this.generateRequestParams(params);
1894
- return this.http.post(serviceUrl, this.httpOptions);
1895
- }
1896
- updateSection(params) {
1897
- let serviceUrl = this.SERVICE_URL + 'update/section';
1898
- this.generateRequestParams(params);
1899
- return this.http.put(serviceUrl, this.httpOptions);
1900
- }
1901
- updateSectionMedia(params) {
1902
- let serviceUrl = this.SERVICE_URL + 'post/section/media';
1903
- this.generateRequestParams(params);
1904
- return this.http.post(serviceUrl, this.httpOptions);
1905
- }
1906
- updateSectionState(params) {
1907
- let serviceUrl = this.SERVICE_URL + 'update/section/state';
1908
- this.generateRequestParams(params);
1909
- return this.http.put(serviceUrl, this.httpOptions);
1910
- }
1911
- getSectionsByExam(code) {
1912
- let serviceUrl = this.SERVICE_URL + 'get/sections/by/exam/' + code;
1913
- return this.http.get(serviceUrl);
1914
- }
1915
- // ---------------------- PREGUNTAS ---------------------- //
1916
- createQuestion(params) {
1917
- let serviceUrl = this.SERVICE_URL + 'post/question';
1918
- this.generateRequestParams(params);
1919
- return this.http.post(serviceUrl, this.httpOptions);
1920
- }
1921
- updateQuestion(params) {
1922
- let serviceUrl = this.SERVICE_URL + 'update/question';
1923
- this.generateRequestParams(params);
1924
- return this.http.put(serviceUrl, this.httpOptions);
1925
- }
1926
- getQuestionsBySections(params) {
1927
- let serviceUrl = this.SERVICE_URL + 'get/questions/by/sections';
1928
- this.generateRequestParams(params);
1929
- return this.http.post(serviceUrl, this.httpOptions);
1930
- }
1931
- getQuestionsBySection(params) {
1932
- let serviceUrl = this.SERVICE_URL + 'get/questions/by/section';
1933
- this.generateRequestParams(params);
1934
- return this.http.post(serviceUrl, this.httpOptions);
1935
- }
1936
- // ---------------------- RESPUESTAS ---------------------- //
1937
- createAnswer(params) {
1938
- let serviceUrl = this.SERVICE_URL + 'post/answer';
1939
- this.generateRequestParams(params);
1940
- return this.http.post(serviceUrl, this.httpOptions);
1941
- }
1942
- updateAnswer(params) {
1943
- let serviceUrl = this.SERVICE_URL + 'update/answer';
1944
- this.generateRequestParams(params);
1945
- return this.http.put(serviceUrl, this.httpOptions);
1946
- }
1947
- getAnswersByQuestion(code) {
1948
- let serviceUrl = this.SERVICE_URL + 'get/answers/by/question/' + code;
1949
- return this.http.get(serviceUrl, this.httpOptions);
1950
- }
1951
- updateQuestionState(params) {
1952
- let serviceUrl = this.SERVICE_URL + 'update/question/state';
1953
- this.generateRequestParams(params);
1954
- return this.http.put(serviceUrl, this.httpOptions);
1955
- }
1956
- // construye los headers y params
1957
- generateRequestParams(param) {
1958
- this.httpOptions = {
1959
- header: new HttpHeaders(),
1960
- params: param,
1961
- };
1962
- }
1963
- }
1964
- 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 });
1965
- TestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TestService, providedIn: 'root' });
1966
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TestService, decorators: [{
1967
- type: Injectable,
1968
- args: [{
1969
- providedIn: 'root',
1970
- }]
1848
+ class TestService extends IPTGeneralService {
1849
+ constructor(http) {
1850
+ super();
1851
+ this.http = http;
1852
+ this.SERVICE_URL = 'test/api/';
1853
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
1854
+ }
1855
+ // ---------------------- EXÁMENES ---------------------- //
1856
+ createExam(exam) {
1857
+ let serviceUrl = this.SERVICE_URL + 'post/exam';
1858
+ this.generateRequestParams(exam);
1859
+ return this.http.post(serviceUrl, this.httpOptions);
1860
+ }
1861
+ getAllExams(params) {
1862
+ let serviceUrl = this.SERVICE_URL + 'post/all/exam';
1863
+ this.generateRequestParams(params);
1864
+ return this.http.post(serviceUrl, this.httpOptions);
1865
+ }
1866
+ updateExam(params) {
1867
+ let serviceUrl = this.SERVICE_URL + 'update/exam';
1868
+ this.generateRequestParams(params);
1869
+ return this.http.put(serviceUrl, this.httpOptions);
1870
+ }
1871
+ updateExamStatus(params) {
1872
+ let serviceUrl = this.SERVICE_URL + 'update/exam/status';
1873
+ this.generateRequestParams(params);
1874
+ return this.http.put(serviceUrl, this.httpOptions);
1875
+ }
1876
+ copyExam(params) {
1877
+ let serviceUrl = this.SERVICE_URL + 'copy/exam';
1878
+ this.generateRequestParams(params);
1879
+ return this.http.put(serviceUrl, this.httpOptions);
1880
+ }
1881
+ getExamByCode(code) {
1882
+ let serviceUrl = this.SERVICE_URL + 'get/exam/by/code/' + code;
1883
+ return this.http.get(serviceUrl);
1884
+ }
1885
+ getExamByAuthor(code) {
1886
+ let serviceUrl = this.SERVICE_URL + 'get/exams/by/author/' + code;
1887
+ return this.http.get(serviceUrl);
1888
+ }
1889
+ // ---------------------- SECCIONES ---------------------- //
1890
+ createSectionWithAll(params) {
1891
+ let serviceUrl = this.SERVICE_URL + 'post/section/with/all';
1892
+ this.generateRequestParams(params);
1893
+ return this.http.post(serviceUrl, this.httpOptions);
1894
+ }
1895
+ createSection(params) {
1896
+ let serviceUrl = this.SERVICE_URL + 'post/section';
1897
+ this.generateRequestParams(params);
1898
+ return this.http.post(serviceUrl, this.httpOptions);
1899
+ }
1900
+ getAllSections(params) {
1901
+ let serviceUrl = this.SERVICE_URL + 'post/all/sections';
1902
+ this.generateRequestParams(params);
1903
+ return this.http.post(serviceUrl, this.httpOptions);
1904
+ }
1905
+ updateSection(params) {
1906
+ let serviceUrl = this.SERVICE_URL + 'update/section';
1907
+ this.generateRequestParams(params);
1908
+ return this.http.put(serviceUrl, this.httpOptions);
1909
+ }
1910
+ updateSectionMedia(params) {
1911
+ let serviceUrl = this.SERVICE_URL + 'post/section/media';
1912
+ this.generateRequestParams(params);
1913
+ return this.http.post(serviceUrl, this.httpOptions);
1914
+ }
1915
+ updateSectionState(params) {
1916
+ let serviceUrl = this.SERVICE_URL + 'update/section/state';
1917
+ this.generateRequestParams(params);
1918
+ return this.http.put(serviceUrl, this.httpOptions);
1919
+ }
1920
+ getSectionsByExam(code) {
1921
+ let serviceUrl = this.SERVICE_URL + 'get/sections/by/exam/' + code;
1922
+ return this.http.get(serviceUrl);
1923
+ }
1924
+ // ---------------------- PREGUNTAS ---------------------- //
1925
+ createQuestion(params) {
1926
+ let serviceUrl = this.SERVICE_URL + 'post/question';
1927
+ this.generateRequestParams(params);
1928
+ return this.http.post(serviceUrl, this.httpOptions);
1929
+ }
1930
+ updateQuestion(params) {
1931
+ let serviceUrl = this.SERVICE_URL + 'update/question';
1932
+ this.generateRequestParams(params);
1933
+ return this.http.put(serviceUrl, this.httpOptions);
1934
+ }
1935
+ getQuestionsBySections(params) {
1936
+ let serviceUrl = this.SERVICE_URL + 'get/questions/by/sections';
1937
+ this.generateRequestParams(params);
1938
+ return this.http.post(serviceUrl, this.httpOptions);
1939
+ }
1940
+ getQuestionsBySection(params) {
1941
+ let serviceUrl = this.SERVICE_URL + 'get/questions/by/section';
1942
+ this.generateRequestParams(params);
1943
+ return this.http.post(serviceUrl, this.httpOptions);
1944
+ }
1945
+ // ---------------------- RESPUESTAS ---------------------- //
1946
+ createAnswer(params) {
1947
+ let serviceUrl = this.SERVICE_URL + 'post/answer';
1948
+ this.generateRequestParams(params);
1949
+ return this.http.post(serviceUrl, this.httpOptions);
1950
+ }
1951
+ updateAnswer(params) {
1952
+ let serviceUrl = this.SERVICE_URL + 'update/answer';
1953
+ this.generateRequestParams(params);
1954
+ return this.http.put(serviceUrl, this.httpOptions);
1955
+ }
1956
+ getAnswersByQuestion(code) {
1957
+ let serviceUrl = this.SERVICE_URL + 'get/answers/by/question/' + code;
1958
+ return this.http.get(serviceUrl, this.httpOptions);
1959
+ }
1960
+ updateQuestionState(params) {
1961
+ let serviceUrl = this.SERVICE_URL + 'update/question/state';
1962
+ this.generateRequestParams(params);
1963
+ return this.http.put(serviceUrl, this.httpOptions);
1964
+ }
1965
+ }
1966
+ 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 });
1967
+ TestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TestService, providedIn: 'root' });
1968
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: TestService, decorators: [{
1969
+ type: Injectable,
1970
+ args: [{
1971
+ providedIn: 'root',
1972
+ }]
1971
1973
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
1972
1974
 
1973
- class MarketingService {
1974
- constructor(http) {
1975
- this.http = http;
1976
- this.SERVICE_URL = 'https://iptdev.com.co/lab/commercial/api/';
1977
- }
1978
- getStrategyByUserCommercial(user) {
1979
- let serviceUrl = this.SERVICE_URL + 'post/contact/strategy/byaviser';
1980
- this.generateRequestParams(user);
1981
- return this.http.post(serviceUrl, this.httpOptions);
1982
- }
1983
- getObservationsContact(codeContact) {
1984
- let serviceUrl = this.SERVICE_URL + 'get/contact/observation/strategy/bycode/' + codeContact;
1985
- return this.http.get(serviceUrl);
1986
- }
1987
- createObservations(params) {
1988
- let serviceUrl = this.SERVICE_URL + 'post/contact/observation/create';
1989
- this.generateRequestParams(params);
1990
- return this.http.post(serviceUrl, this.httpOptions);
1991
- }
1992
- getUserStatistics(userToken) {
1993
- let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/statistics';
1994
- this.generateRequestParams(userToken);
1995
- return this.http.post(serviceUrl, this.httpOptions);
1996
- }
1997
- getTopAdviser() {
1998
- let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/topadviser';
1999
- return this.http.get(serviceUrl, this.httpOptions);
2000
- }
2001
- getMovementStatus() {
2002
- let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/movements/status';
2003
- return this.http.get(serviceUrl, this.httpOptions);
2004
- }
2005
- getgroupSignupStatus() {
2006
- let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/group/signup';
2007
- return this.http.get(serviceUrl, this.httpOptions);
2008
- }
2009
- //Construye los headers y paramns
2010
- generateRequestParams(param) {
2011
- this.httpOptions = {
2012
- header: new HttpHeaders(),
2013
- params: param,
2014
- };
2015
- }
2016
- }
2017
- 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 });
2018
- MarketingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MarketingService, providedIn: 'root' });
2019
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MarketingService, decorators: [{
2020
- type: Injectable,
2021
- args: [{
2022
- providedIn: 'root'
2023
- }]
1975
+ class MarketingService extends IPTGeneralService {
1976
+ constructor(http) {
1977
+ super();
1978
+ this.http = http;
1979
+ this.SERVICE_URL = 'commercial/api/';
1980
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
1981
+ }
1982
+ getStrategyByUserCommercial(user) {
1983
+ let serviceUrl = this.SERVICE_URL + 'post/contact/strategy/byaviser';
1984
+ this.generateRequestParams(user);
1985
+ return this.http.post(serviceUrl, this.httpOptions);
1986
+ }
1987
+ getObservationsContact(codeContact) {
1988
+ let serviceUrl = this.SERVICE_URL + 'get/contact/observation/strategy/bycode/' + codeContact;
1989
+ return this.http.get(serviceUrl);
1990
+ }
1991
+ createObservations(params) {
1992
+ let serviceUrl = this.SERVICE_URL + 'post/contact/observation/create';
1993
+ this.generateRequestParams(params);
1994
+ return this.http.post(serviceUrl, this.httpOptions);
1995
+ }
1996
+ getUserStatistics(userToken) {
1997
+ let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/statistics';
1998
+ this.generateRequestParams(userToken);
1999
+ return this.http.post(serviceUrl, this.httpOptions);
2000
+ }
2001
+ getTopAdviser() {
2002
+ let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/topadviser';
2003
+ return this.http.get(serviceUrl, this.httpOptions);
2004
+ }
2005
+ getMovementStatus() {
2006
+ let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/movements/status';
2007
+ return this.http.get(serviceUrl, this.httpOptions);
2008
+ }
2009
+ getgroupSignupStatus() {
2010
+ let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/group/signup';
2011
+ return this.http.get(serviceUrl, this.httpOptions);
2012
+ }
2013
+ }
2014
+ 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 });
2015
+ MarketingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MarketingService, providedIn: 'root' });
2016
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MarketingService, decorators: [{
2017
+ type: Injectable,
2018
+ args: [{
2019
+ providedIn: 'root'
2020
+ }]
2024
2021
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2025
2022
 
2026
- class BudgetService {
2027
- constructor(http) {
2028
- this.http = http;
2029
- this.SERVICE_URL = 'https://iptdev.com.co/lab/budget/api/';
2030
- }
2031
- getAllDiscount(user) {
2032
- let serviceUrl = this.SERVICE_URL + 'post/discounts/coupon/all';
2033
- this.generateRequestParams(user);
2034
- return this.http.post(serviceUrl, this.httpOptions);
2035
- }
2036
- createDiscount(params) {
2037
- let serviceUrl = this.SERVICE_URL + 'post/discount/coupon/create';
2038
- this.generateRequestParams(params);
2039
- return this.http.post(serviceUrl, this.httpOptions);
2040
- }
2041
- updateDiscount(params) {
2042
- let serviceUrl = this.SERVICE_URL + 'post/discount/coupon/update';
2043
- this.generateRequestParams(params);
2044
- return this.http.post(serviceUrl, this.httpOptions);
2045
- }
2046
- //Construye los headers y paramns
2047
- generateRequestParams(param) {
2048
- this.httpOptions = {
2049
- header: new HttpHeaders(),
2050
- params: param,
2051
- };
2052
- }
2053
- }
2054
- 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 });
2055
- BudgetService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BudgetService, providedIn: 'root' });
2056
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BudgetService, decorators: [{
2057
- type: Injectable,
2058
- args: [{
2059
- providedIn: 'root'
2060
- }]
2023
+ class BudgetService extends IPTGeneralService {
2024
+ constructor(http) {
2025
+ super();
2026
+ this.http = http;
2027
+ this.SERVICE_URL = 'budget/api/';
2028
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
2029
+ }
2030
+ getAllDiscount(user) {
2031
+ let serviceUrl = this.SERVICE_URL + 'post/discounts/coupon/all';
2032
+ this.generateRequestParams(user);
2033
+ return this.http.post(serviceUrl, this.httpOptions);
2034
+ }
2035
+ createDiscount(params) {
2036
+ let serviceUrl = this.SERVICE_URL + 'post/discount/coupon/create';
2037
+ this.generateRequestParams(params);
2038
+ return this.http.post(serviceUrl, this.httpOptions);
2039
+ }
2040
+ updateDiscount(params) {
2041
+ let serviceUrl = this.SERVICE_URL + 'post/discount/coupon/update';
2042
+ this.generateRequestParams(params);
2043
+ return this.http.post(serviceUrl, this.httpOptions);
2044
+ }
2045
+ }
2046
+ 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 });
2047
+ BudgetService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BudgetService, providedIn: 'root' });
2048
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: BudgetService, decorators: [{
2049
+ type: Injectable,
2050
+ args: [{
2051
+ providedIn: 'root'
2052
+ }]
2061
2053
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2062
2054
 
2063
- class ClassroomService {
2064
- constructor(http) {
2065
- this.http = http;
2066
- this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
2067
- }
2068
- getClassroomsByModality(params) {
2069
- let serviceUrl = this.SERVICE_URL + 'post/classroom/by/modality';
2070
- this.generateRequestParams(params);
2071
- return this.http.post(serviceUrl, this.httpOptions);
2072
- }
2073
- getClassroomByIdCalendar(params) {
2074
- let serviceUrl = this.SERVICE_URL + 'post/classroom/by/idcalendar';
2075
- this.generateRequestParams(params);
2076
- return this.http.post(serviceUrl, this.httpOptions);
2077
- }
2078
- // construye los headers y params
2079
- generateRequestParams(param) {
2080
- this.httpOptions = {
2081
- header: new HttpHeaders(),
2082
- params: param,
2083
- };
2084
- }
2085
- }
2086
- 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 });
2087
- ClassroomService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ClassroomService, providedIn: 'root' });
2088
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ClassroomService, decorators: [{
2089
- type: Injectable,
2090
- args: [{
2091
- providedIn: 'root',
2092
- }]
2055
+ class ClassroomService extends IPTGeneralService {
2056
+ constructor(http) {
2057
+ super();
2058
+ this.http = http;
2059
+ this.SERVICE_URL = 'academic/api/';
2060
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
2061
+ }
2062
+ getClassroomsByModality(params) {
2063
+ let serviceUrl = this.SERVICE_URL + 'post/classroom/by/modality';
2064
+ this.generateRequestParams(params);
2065
+ return this.http.post(serviceUrl, this.httpOptions);
2066
+ }
2067
+ getClassroomByIdCalendar(params) {
2068
+ let serviceUrl = this.SERVICE_URL + 'post/classroom/by/idcalendar';
2069
+ this.generateRequestParams(params);
2070
+ return this.http.post(serviceUrl, this.httpOptions);
2071
+ }
2072
+ }
2073
+ 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 });
2074
+ ClassroomService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ClassroomService, providedIn: 'root' });
2075
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ClassroomService, decorators: [{
2076
+ type: Injectable,
2077
+ args: [{
2078
+ providedIn: 'root',
2079
+ }]
2093
2080
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2094
2081
 
2095
- class ActivityService {
2096
- constructor(http) {
2097
- this.http = http;
2098
- this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
2099
- }
2100
- getActivityByCourse(params) {
2101
- let serviceUrl = this.SERVICE_URL + 'post/activities/by/course/code';
2102
- this.generateRequestParams(params);
2103
- return this.http.post(serviceUrl, this.httpOptions);
2104
- }
2105
- getNoticesByCourse(codeCourse) {
2106
- let serviceUrl = this.SERVICE_URL + 'post/notices/by/course/code/' + codeCourse;
2107
- return this.http.get(serviceUrl);
2108
- }
2109
- getUnitsByActivity(params) {
2110
- let serviceUrl = this.SERVICE_URL + 'post/units/by/activity/code';
2111
- this.generateRequestParams(params);
2112
- return this.http.post(serviceUrl, this.httpOptions);
2113
- }
2114
- getElementsByUnit(params) {
2115
- let serviceUrl = this.SERVICE_URL + 'post/element/by/unit/code';
2116
- this.generateRequestParams(params);
2117
- return this.http.post(serviceUrl, this.httpOptions);
2118
- }
2119
- getCourseTeacherByToken(params) {
2120
- let serviceUrl = this.SERVICE_URL + 'post/course/teacher/by/token';
2121
- this.generateRequestParams(params);
2122
- return this.http.post(serviceUrl, this.httpOptions);
2123
- }
2124
- getAllTypeResource() {
2125
- let serviceUrl = this.SERVICE_URL + 'get/all/type/resource/template';
2126
- return this.http.get(serviceUrl);
2127
- }
2128
- getAllTypeElement() {
2129
- let serviceUrl = this.SERVICE_URL + 'get/all/type/element/template';
2130
- return this.http.get(serviceUrl);
2131
- }
2132
- getElementsByUnitNew(params) {
2133
- let serviceUrl = this.SERVICE_URL + 'post/element/by/unit/code/new';
2134
- this.generateRequestParams(params);
2135
- return this.http.post(serviceUrl, this.httpOptions);
2136
- }
2137
- updateCourseByCronogram(params) {
2138
- let serviceUrl = this.SERVICE_URL + 'post/update/course/by/code';
2139
- this.generateRequestParams(params);
2140
- return this.http.post(serviceUrl, this.httpOptions);
2141
- }
2142
- getTemplateCourseByCourse(codeCourse) {
2143
- let serviceUrl = this.SERVICE_URL + 'get/template/course/by/course/code/' + codeCourse;
2144
- return this.http.get(serviceUrl);
2145
- }
2146
- saveMagnageActivity(params) {
2147
- let serviceUrl = this.SERVICE_URL + 'post/manage/activities/by/course/element';
2148
- this.generateRequestParams(params);
2149
- return this.http.post(serviceUrl, this.httpOptions);
2150
- }
2151
- postNotesActivityH5P(params) {
2152
- let serviceUrl = this.SERVICE_URL + 'post/activity/h5p/notes';
2153
- this.generateRequestParams(params);
2154
- return this.http.post(serviceUrl, this.httpOptions);
2155
- }
2156
- getMagnageActivity(params) {
2157
- let serviceUrl = this.SERVICE_URL + 'post/template/admin/by/course/element';
2158
- this.generateRequestParams(params);
2159
- return this.http.post(serviceUrl, this.httpOptions);
2160
- }
2161
- getNoteActivityH5P(params) {
2162
- let serviceUrl = this.SERVICE_URL + 'post/note/activity/h5p';
2163
- this.generateRequestParams(params);
2164
- return this.http.post(serviceUrl, this.httpOptions);
2165
- }
2166
- // construye los headers y params
2167
- generateRequestParams(param) {
2168
- this.httpOptions = {
2169
- header: new HttpHeaders(),
2170
- params: param,
2171
- };
2172
- }
2173
- }
2174
- ActivityService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ActivityService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2175
- ActivityService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ActivityService, providedIn: 'root' });
2176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ActivityService, decorators: [{
2177
- type: Injectable,
2178
- args: [{
2179
- providedIn: 'root',
2180
- }]
2082
+ class ActivityService extends IPTGeneralService {
2083
+ constructor(http) {
2084
+ super();
2085
+ this.http = http;
2086
+ this.SERVICE_URL = 'academic/api/';
2087
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
2088
+ }
2089
+ getActivityByCourse(params) {
2090
+ let serviceUrl = this.SERVICE_URL + 'post/activities/by/course/code';
2091
+ this.generateRequestParams(params);
2092
+ return this.http.post(serviceUrl, this.httpOptions);
2093
+ }
2094
+ getNoticesByCourse(codeCourse) {
2095
+ let serviceUrl = this.SERVICE_URL + 'post/notices/by/course/code/' + codeCourse;
2096
+ return this.http.get(serviceUrl);
2097
+ }
2098
+ getUnitsByActivity(params) {
2099
+ let serviceUrl = this.SERVICE_URL + 'post/units/by/activity/code';
2100
+ this.generateRequestParams(params);
2101
+ return this.http.post(serviceUrl, this.httpOptions);
2102
+ }
2103
+ getElementsByUnit(params) {
2104
+ let serviceUrl = this.SERVICE_URL + 'post/element/by/unit/code';
2105
+ this.generateRequestParams(params);
2106
+ return this.http.post(serviceUrl, this.httpOptions);
2107
+ }
2108
+ getCourseTeacherByToken(params) {
2109
+ let serviceUrl = this.SERVICE_URL + 'post/course/teacher/by/token';
2110
+ this.generateRequestParams(params);
2111
+ return this.http.post(serviceUrl, this.httpOptions);
2112
+ }
2113
+ getAllTypeResource() {
2114
+ let serviceUrl = this.SERVICE_URL + 'get/all/type/resource/template';
2115
+ return this.http.get(serviceUrl);
2116
+ }
2117
+ getAllTypeElement() {
2118
+ let serviceUrl = this.SERVICE_URL + 'get/all/type/element/template';
2119
+ return this.http.get(serviceUrl);
2120
+ }
2121
+ getElementsByUnitNew(params) {
2122
+ let serviceUrl = this.SERVICE_URL + 'post/element/by/unit/code/new';
2123
+ this.generateRequestParams(params);
2124
+ return this.http.post(serviceUrl, this.httpOptions);
2125
+ }
2126
+ updateCourseByCronogram(params) {
2127
+ let serviceUrl = this.SERVICE_URL + 'post/update/course/by/code';
2128
+ this.generateRequestParams(params);
2129
+ return this.http.post(serviceUrl, this.httpOptions);
2130
+ }
2131
+ getTemplateCourseByCourse(codeCourse) {
2132
+ let serviceUrl = this.SERVICE_URL + 'get/template/course/by/course/code/' + codeCourse;
2133
+ return this.http.get(serviceUrl);
2134
+ }
2135
+ saveMagnageActivity(params) {
2136
+ let serviceUrl = this.SERVICE_URL + 'post/manage/activities/by/course/element';
2137
+ this.generateRequestParams(params);
2138
+ return this.http.post(serviceUrl, this.httpOptions);
2139
+ }
2140
+ postNotesActivityH5P(params) {
2141
+ let serviceUrl = this.SERVICE_URL + 'post/activity/h5p/notes';
2142
+ this.generateRequestParams(params);
2143
+ return this.http.post(serviceUrl, this.httpOptions);
2144
+ }
2145
+ getMagnageActivity(params) {
2146
+ let serviceUrl = this.SERVICE_URL + 'post/template/admin/by/course/element';
2147
+ this.generateRequestParams(params);
2148
+ return this.http.post(serviceUrl, this.httpOptions);
2149
+ }
2150
+ getNoteActivityH5P(params) {
2151
+ let serviceUrl = this.SERVICE_URL + 'post/note/activity/h5p';
2152
+ this.generateRequestParams(params);
2153
+ return this.http.post(serviceUrl, this.httpOptions);
2154
+ }
2155
+ }
2156
+ ActivityService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ActivityService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2157
+ ActivityService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ActivityService, providedIn: 'root' });
2158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: ActivityService, decorators: [{
2159
+ type: Injectable,
2160
+ args: [{
2161
+ providedIn: 'root',
2162
+ }]
2181
2163
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2182
2164
 
2183
- class CoreModule {
2184
- }
2185
- CoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2186
- CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule });
2187
- CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, providers: [
2188
- ParameterService,
2189
- CourseService,
2190
- StorageService,
2191
- UserService,
2192
- SwitchService,
2193
- RedirectGuard,
2194
- BaseService,
2195
- TestService,
2196
- MarketingService,
2197
- ClassroomService,
2198
- BudgetService,
2199
- ActivityService
2200
- ] });
2201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, decorators: [{
2202
- type: NgModule,
2203
- args: [{
2204
- providers: [
2205
- ParameterService,
2206
- CourseService,
2207
- StorageService,
2208
- UserService,
2209
- SwitchService,
2210
- RedirectGuard,
2211
- BaseService,
2212
- TestService,
2213
- MarketingService,
2214
- ClassroomService,
2215
- BudgetService,
2216
- ActivityService
2217
- ]
2218
- }]
2165
+ class CoreModule {
2166
+ }
2167
+ CoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2168
+ CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule });
2169
+ CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, providers: [
2170
+ ParameterService,
2171
+ CourseService,
2172
+ StorageService,
2173
+ UserService,
2174
+ SwitchService,
2175
+ RedirectGuard,
2176
+ BaseService,
2177
+ TestService,
2178
+ MarketingService,
2179
+ ClassroomService,
2180
+ BudgetService,
2181
+ ActivityService
2182
+ ] });
2183
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: CoreModule, decorators: [{
2184
+ type: NgModule,
2185
+ args: [{
2186
+ providers: [
2187
+ ParameterService,
2188
+ CourseService,
2189
+ StorageService,
2190
+ UserService,
2191
+ SwitchService,
2192
+ RedirectGuard,
2193
+ BaseService,
2194
+ TestService,
2195
+ MarketingService,
2196
+ ClassroomService,
2197
+ BudgetService,
2198
+ ActivityService
2199
+ ]
2200
+ }]
2219
2201
  }] });
2220
2202
 
2221
- class DesignSystemModule {
2222
- }
2223
- DesignSystemModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2224
- DesignSystemModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, imports: [ComponentsModule,
2225
- CoreModule,
2226
- CurrencyMaskModule], exports: [ComponentsModule,
2227
- CoreModule,
2228
- CurrencyMaskModule] });
2229
- DesignSystemModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, imports: [[
2230
- ComponentsModule,
2231
- CoreModule,
2232
- CurrencyMaskModule
2233
- ], ComponentsModule,
2234
- CoreModule,
2235
- CurrencyMaskModule] });
2236
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, decorators: [{
2237
- type: NgModule,
2238
- args: [{
2239
- imports: [
2240
- ComponentsModule,
2241
- CoreModule,
2242
- CurrencyMaskModule
2243
- ],
2244
- exports: [
2245
- ComponentsModule,
2246
- CoreModule,
2247
- CurrencyMaskModule
2248
- ],
2249
- }]
2203
+ class DesignSystemModule {
2204
+ }
2205
+ DesignSystemModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2206
+ DesignSystemModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, imports: [ComponentsModule,
2207
+ CoreModule,
2208
+ CurrencyMaskModule], exports: [ComponentsModule,
2209
+ CoreModule,
2210
+ CurrencyMaskModule] });
2211
+ DesignSystemModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, imports: [[
2212
+ ComponentsModule,
2213
+ CoreModule,
2214
+ CurrencyMaskModule
2215
+ ], ComponentsModule,
2216
+ CoreModule,
2217
+ CurrencyMaskModule] });
2218
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DesignSystemModule, decorators: [{
2219
+ type: NgModule,
2220
+ args: [{
2221
+ imports: [
2222
+ ComponentsModule,
2223
+ CoreModule,
2224
+ CurrencyMaskModule
2225
+ ],
2226
+ exports: [
2227
+ ComponentsModule,
2228
+ CoreModule,
2229
+ CurrencyMaskModule
2230
+ ],
2231
+ }]
2250
2232
  }] });
2251
2233
 
2252
- class AttendanceService {
2253
- constructor(http) {
2254
- this.http = http;
2255
- this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api';
2256
- }
2257
- addEventByCourseRq(params) {
2258
- let serviceUrl = `${this.SERVICE_URL}/post/event/by/course`;
2259
- this.generateRequestParams(params);
2260
- return this.http.post(serviceUrl, this.httpOptions);
2261
- }
2262
- getEventsByCourseCode(params) {
2263
- let serviceUrl = `${this.SERVICE_URL}/post/obtain/events/by/course_code`;
2264
- this.generateRequestParams(params);
2265
- return this.http.post(serviceUrl, this.httpOptions);
2266
- }
2267
- getEventByCode(params) {
2268
- let serviceUrl = `${this.SERVICE_URL}/post/obtain/event/by/code`;
2269
- this.generateRequestParams(params);
2270
- return this.http.post(serviceUrl, this.httpOptions);
2271
- }
2272
- registerNewAttendanceByEvent(params) {
2273
- let serviceUrl = `${this.SERVICE_URL}/register/attendance/by/event`;
2274
- this.generateRequestParams(params);
2275
- return this.http.post(serviceUrl, this.httpOptions);
2276
- }
2277
- getAttendaceByCourse(courseCode) {
2278
- let serviceUrl = `${this.SERVICE_URL}/post/obtain/attendances/by/course/${courseCode}`;
2279
- return this.http.get(serviceUrl);
2280
- }
2281
- getCODCodeByStudentCode(studentCode) {
2282
- let serviceUrl = `${this.SERVICE_URL}/get/cod_code/by/student_code/${studentCode}`;
2283
- return this.http.get(serviceUrl);
2284
- }
2285
- getAttendanceHistoryByStudent(token, cod_code) {
2286
- let serviceUrl = `${this.SERVICE_URL}/post/obtain/attendance/history/by/student`;
2287
- this.generateRequestParams({ token, cod_code });
2288
- return this.http.post(serviceUrl, this.httpOptions);
2289
- }
2290
- getAllNotAttendancesByCod(params) {
2291
- let serviceUrl = `${this.SERVICE_URL}/get/all/not/attendances/by/cod`;
2292
- this.generateRequestParams(params);
2293
- return this.http.post(serviceUrl, this.httpOptions);
2294
- }
2295
- getNotAttendancesOfLastWeekByCod(params) {
2296
- let serviceUrl = `${this.SERVICE_URL}/get/all/not/attendances/lastweek/by/cod`;
2297
- this.generateRequestParams(params);
2298
- return this.http.post(serviceUrl, this.httpOptions);
2299
- }
2300
- // construye los headers y params
2301
- generateRequestParams(param) {
2302
- this.httpOptions = {
2303
- header: new HttpHeaders(),
2304
- params: param,
2305
- };
2306
- }
2307
- }
2308
- 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 });
2309
- AttendanceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AttendanceService, providedIn: 'root' });
2310
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AttendanceService, decorators: [{
2311
- type: Injectable,
2312
- args: [{
2313
- providedIn: 'root'
2314
- }]
2234
+ class AttendanceService extends IPTGeneralService {
2235
+ constructor(http) {
2236
+ super();
2237
+ this.http = http;
2238
+ this.SERVICE_URL = 'academic/api/';
2239
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
2240
+ }
2241
+ addEventByCourseRq(params) {
2242
+ let serviceUrl = `${this.SERVICE_URL}/post/event/by/course`;
2243
+ this.generateRequestParams(params);
2244
+ return this.http.post(serviceUrl, this.httpOptions);
2245
+ }
2246
+ getEventsByCourseCode(params) {
2247
+ let serviceUrl = `${this.SERVICE_URL}/post/obtain/events/by/course_code`;
2248
+ this.generateRequestParams(params);
2249
+ return this.http.post(serviceUrl, this.httpOptions);
2250
+ }
2251
+ getEventByCode(params) {
2252
+ let serviceUrl = `${this.SERVICE_URL}/post/obtain/event/by/code`;
2253
+ this.generateRequestParams(params);
2254
+ return this.http.post(serviceUrl, this.httpOptions);
2255
+ }
2256
+ registerNewAttendanceByEvent(params) {
2257
+ let serviceUrl = `${this.SERVICE_URL}/register/attendance/by/event`;
2258
+ this.generateRequestParams(params);
2259
+ return this.http.post(serviceUrl, this.httpOptions);
2260
+ }
2261
+ getAttendaceByCourse(courseCode) {
2262
+ let serviceUrl = `${this.SERVICE_URL}/post/obtain/attendances/by/course/${courseCode}`;
2263
+ return this.http.get(serviceUrl);
2264
+ }
2265
+ getCODCodeByStudentCode(studentCode) {
2266
+ let serviceUrl = `${this.SERVICE_URL}/get/cod_code/by/student_code/${studentCode}`;
2267
+ return this.http.get(serviceUrl);
2268
+ }
2269
+ getAttendanceHistoryByStudent(token, cod_code) {
2270
+ let serviceUrl = `${this.SERVICE_URL}/post/obtain/attendance/history/by/student`;
2271
+ this.generateRequestParams({ token, cod_code });
2272
+ return this.http.post(serviceUrl, this.httpOptions);
2273
+ }
2274
+ getAllNotAttendancesByCod(params) {
2275
+ let serviceUrl = `${this.SERVICE_URL}/get/all/not/attendances/by/cod`;
2276
+ this.generateRequestParams(params);
2277
+ return this.http.post(serviceUrl, this.httpOptions);
2278
+ }
2279
+ getNotAttendancesOfLastWeekByCod(params) {
2280
+ let serviceUrl = `${this.SERVICE_URL}/get/all/not/attendances/lastweek/by/cod`;
2281
+ this.generateRequestParams(params);
2282
+ return this.http.post(serviceUrl, this.httpOptions);
2283
+ }
2284
+ }
2285
+ 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 });
2286
+ AttendanceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AttendanceService, providedIn: 'root' });
2287
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: AttendanceService, decorators: [{
2288
+ type: Injectable,
2289
+ args: [{
2290
+ providedIn: 'root'
2291
+ }]
2315
2292
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2316
2293
 
2317
- class NotesService {
2318
- constructor(http) {
2319
- this.http = http;
2320
- this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
2321
- }
2322
- getNotesByGroup(params) {
2323
- let serviceUrl = this.SERVICE_URL + 'post/obtain/notes/by/course';
2324
- this.generateRequestParams(params);
2325
- return this.http.post(serviceUrl, this.httpOptions);
2326
- }
2327
- getNotesByStudent(params) {
2328
- let serviceUrl = this.SERVICE_URL + 'post/obtain/notes/by/student';
2329
- this.generateRequestParams(params);
2330
- return this.http.post(serviceUrl, this.httpOptions);
2331
- }
2332
- createNewNote(params) {
2333
- let serviceUrl = this.SERVICE_URL + 'post/create/note';
2334
- this.generateRequestParams(params);
2335
- return this.http.post(serviceUrl, this.httpOptions);
2336
- }
2337
- updateStudentNote(params) {
2338
- let serviceUrl = this.SERVICE_URL + 'update/note';
2339
- this.generateRequestParams(params);
2340
- return this.http.put(serviceUrl, this.httpOptions);
2341
- }
2342
- calculateFinalNote(params) {
2343
- let serviceUrl = this.SERVICE_URL + 'post/calculate/final/note';
2344
- this.generateRequestParams(params);
2345
- return this.http.post(serviceUrl, this.httpOptions);
2346
- }
2347
- generateRequestParams(param) {
2348
- this.httpOptions = {
2349
- header: new HttpHeaders(),
2350
- params: param,
2351
- };
2352
- }
2353
- }
2354
- 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 });
2355
- NotesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NotesService, providedIn: 'root' });
2356
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NotesService, decorators: [{
2357
- type: Injectable,
2358
- args: [{
2359
- providedIn: 'root'
2360
- }]
2294
+ class NotesService extends IPTGeneralService {
2295
+ constructor(http) {
2296
+ super();
2297
+ this.http = http;
2298
+ this.SERVICE_URL = 'academic/api/';
2299
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
2300
+ }
2301
+ getNotesByGroup(params) {
2302
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/notes/by/course';
2303
+ this.generateRequestParams(params);
2304
+ return this.http.post(serviceUrl, this.httpOptions);
2305
+ }
2306
+ getNotesByStudent(params) {
2307
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/notes/by/student';
2308
+ this.generateRequestParams(params);
2309
+ return this.http.post(serviceUrl, this.httpOptions);
2310
+ }
2311
+ createNewNote(params) {
2312
+ let serviceUrl = this.SERVICE_URL + 'post/create/note';
2313
+ this.generateRequestParams(params);
2314
+ return this.http.post(serviceUrl, this.httpOptions);
2315
+ }
2316
+ updateStudentNote(params) {
2317
+ let serviceUrl = this.SERVICE_URL + 'update/note';
2318
+ this.generateRequestParams(params);
2319
+ return this.http.put(serviceUrl, this.httpOptions);
2320
+ }
2321
+ calculateFinalNote(params) {
2322
+ let serviceUrl = this.SERVICE_URL + 'post/calculate/final/note';
2323
+ this.generateRequestParams(params);
2324
+ return this.http.post(serviceUrl, this.httpOptions);
2325
+ }
2326
+ }
2327
+ 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 });
2328
+ NotesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NotesService, providedIn: 'root' });
2329
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NotesService, decorators: [{
2330
+ type: Injectable,
2331
+ args: [{
2332
+ providedIn: 'root'
2333
+ }]
2361
2334
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2362
2335
 
2363
- class StudentService {
2364
- constructor(http) {
2365
- this.http = http;
2366
- this.SERVICE_URL = 'https://iptdev.com.co/lab/academic/api/';
2367
- }
2368
- getStudentsByCourse(params) {
2369
- let serviceUrl = this.SERVICE_URL + 'post/obtain/students/by/course';
2370
- this.generateRequestParams(params);
2371
- return this.http.post(serviceUrl, this.httpOptions);
2372
- }
2373
- generateRequestParams(param) {
2374
- this.httpOptions = {
2375
- header: new HttpHeaders(),
2376
- params: param,
2377
- };
2378
- }
2379
- }
2380
- 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 });
2381
- StudentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StudentService, providedIn: 'root' });
2382
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StudentService, decorators: [{
2383
- type: Injectable,
2384
- args: [{
2385
- providedIn: 'root'
2386
- }]
2336
+ class StudentService extends IPTGeneralService {
2337
+ constructor(http) {
2338
+ super();
2339
+ this.http = http;
2340
+ this.SERVICE_URL = 'academic/api/';
2341
+ this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;
2342
+ }
2343
+ getStudentsByCourse(params) {
2344
+ let serviceUrl = this.SERVICE_URL + 'post/obtain/students/by/course';
2345
+ this.generateRequestParams(params);
2346
+ return this.http.post(serviceUrl, this.httpOptions);
2347
+ }
2348
+ }
2349
+ 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 });
2350
+ StudentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StudentService, providedIn: 'root' });
2351
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: StudentService, decorators: [{
2352
+ type: Injectable,
2353
+ args: [{
2354
+ providedIn: 'root'
2355
+ }]
2387
2356
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
2388
2357
 
2389
- class Session {
2358
+ class Session {
2390
2359
  }
2391
2360
 
2392
- class UserRs {
2393
- }
2394
- class UserLoginRs {
2361
+ class UserRs {
2362
+ }
2363
+ class UserLoginRs {
2395
2364
  }
2396
2365
 
2397
- /*
2398
- * Public API Surface of design-system
2366
+ /*
2367
+ * Public API Surface of design-system
2399
2368
  */
2400
2369
 
2401
- /**
2402
- * Generated bundle index. Do not edit.
2370
+ /**
2371
+ * Generated bundle index. Do not edit.
2403
2372
  */
2404
2373
 
2405
2374
  export { ActivityService, 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 };