awf-test-lib 0.1.1 → 0.1.3

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 (218) hide show
  1. package/esm2020/awf-test-lib.mjs +5 -0
  2. package/esm2020/lib/core/core-routing.module.mjs +18 -0
  3. package/esm2020/lib/core/core.module.mjs +51 -0
  4. package/esm2020/lib/core/menu/menu.component.mjs +40 -0
  5. package/esm2020/lib/core/menu-consomer/menu-consomer.component.mjs +27 -0
  6. package/esm2020/lib/core/menu-ge-portal/menu-ge-portal.component.mjs +31 -0
  7. package/esm2020/lib/core/menu-warranty/menu-warranty.component.mjs +35 -0
  8. package/esm2020/lib/core/not-found/not-found.component.mjs +19 -0
  9. package/esm2020/lib/core/top-bar/top-bar.component.mjs +41 -0
  10. package/esm2020/lib/models/account.model.mjs +3 -0
  11. package/esm2020/lib/models/alternativeDate.model.mjs +3 -0
  12. package/esm2020/lib/models/applicationName.mjs +7 -0
  13. package/esm2020/lib/models/cancelPMMailRequest.model.mjs +4 -0
  14. package/esm2020/lib/models/customObject.model.mjs +3 -0
  15. package/esm2020/lib/models/detailedPmJob.model.mjs +3 -0
  16. package/esm2020/lib/models/emailStatus.mjs +6 -0
  17. package/esm2020/lib/models/emailType.mjs +15 -0
  18. package/esm2020/lib/models/eventStatus.mjs +9 -0
  19. package/esm2020/lib/models/field.mjs +9 -0
  20. package/esm2020/lib/models/language.mjs +6 -0
  21. package/esm2020/lib/models/mailRequest.model.mjs +3 -0
  22. package/esm2020/lib/models/pMGroupedJob.model.mjs +3 -0
  23. package/esm2020/lib/models/pmJob.model.mjs +3 -0
  24. package/esm2020/lib/models/pmJobRequest.model.mjs +3 -0
  25. package/esm2020/lib/models/pmJobStatus.mjs +17 -0
  26. package/esm2020/lib/models/reason.model.mjs +3 -0
  27. package/esm2020/lib/models/reasonCode.mjs +9 -0
  28. package/esm2020/lib/models/reasonContact.mjs +8 -0
  29. package/esm2020/lib/models/reportDateMailRequest.model.mjs +4 -0
  30. package/esm2020/lib/models/role.mjs +7 -0
  31. package/esm2020/lib/models/service.model.mjs +3 -0
  32. package/esm2020/lib/models/serviceName.mjs +12 -0
  33. package/esm2020/lib/models/socialLoginRequest.model.mjs +3 -0
  34. package/esm2020/lib/models/socialMadia.mjs +5 -0
  35. package/esm2020/lib/models/stingBoolean.mjs +6 -0
  36. package/esm2020/lib/models/system.mjs +3 -0
  37. package/esm2020/lib/models/theme.model.mjs +2 -0
  38. package/esm2020/lib/models/tokenStatus.mjs +7 -0
  39. package/esm2020/lib/models/warranty.mjs +3 -0
  40. package/esm2020/lib/pipes/pipes/pipes.module.mjs +21 -0
  41. package/esm2020/lib/pipes/subrtring-w.pipe.mjs +20 -0
  42. package/esm2020/lib/pipes/substring.pipe.mjs +16 -0
  43. package/esm2020/lib/shared/choose-another-date/choose-another-date.component.mjs +110 -0
  44. package/esm2020/lib/shared/confirm-dialog/confirm-dialog.component.mjs +44 -0
  45. package/esm2020/lib/shared/confirm-dialog-contact/confirm-dialog-contact.component.mjs +42 -0
  46. package/esm2020/lib/shared/confirmed-date-information/confirmed-date-information.component.mjs +35 -0
  47. package/esm2020/lib/shared/contact/contact.component.mjs +139 -0
  48. package/esm2020/lib/shared/contact-support/contact-support.component.mjs +161 -0
  49. package/esm2020/lib/shared/dashboard/dashboard.component.mjs +34 -0
  50. package/esm2020/lib/shared/maintenance-list/maintenance-list.component.mjs +360 -0
  51. package/esm2020/lib/shared/shared-routing.module.mjs +18 -0
  52. package/esm2020/lib/shared/shared.module.mjs +144 -0
  53. package/esm2020/lib/shared/show-links/show-links.component.mjs +81 -0
  54. package/esm2020/lib/shared/system-list/system-list.component.mjs +32 -0
  55. package/esm2020/public-api.mjs +48 -0
  56. package/fesm2015/awf-test-lib.mjs +1549 -0
  57. package/fesm2015/awf-test-lib.mjs.map +1 -0
  58. package/fesm2020/awf-test-lib.mjs +1545 -0
  59. package/fesm2020/awf-test-lib.mjs.map +1 -0
  60. package/index.d.ts +5 -0
  61. package/lib/core/core-routing.module.d.ts +7 -0
  62. package/lib/core/core.module.d.ts +15 -0
  63. package/lib/core/menu/menu.component.d.ts +17 -0
  64. package/lib/core/menu-consomer/menu-consomer.component.d.ts +12 -0
  65. package/lib/core/menu-ge-portal/menu-ge-portal.component.d.ts +13 -0
  66. package/lib/core/menu-warranty/menu-warranty.component.d.ts +15 -0
  67. package/lib/core/not-found/not-found.component.d.ts +10 -0
  68. package/lib/core/top-bar/top-bar.component.d.ts +13 -0
  69. package/{src/lib/models/account.model.ts → lib/models/account.model.d.ts} +3 -6
  70. package/lib/models/alternativeDate.model.d.ts +6 -0
  71. package/lib/models/applicationName.d.ts +5 -0
  72. package/{src/lib/models/cancelPMMailRequest.model.ts → lib/models/cancelPMMailRequest.model.d.ts} +1 -3
  73. package/lib/models/customObject.model.d.ts +3 -0
  74. package/lib/models/detailedPmJob.model.d.ts +22 -0
  75. package/lib/models/emailStatus.d.ts +4 -0
  76. package/lib/models/emailType.d.ts +13 -0
  77. package/lib/models/eventStatus.d.ts +7 -0
  78. package/lib/models/field.d.ts +7 -0
  79. package/lib/models/language.d.ts +4 -0
  80. package/{src/lib/models/mailRequest.model.ts → lib/models/mailRequest.model.d.ts} +1 -3
  81. package/lib/models/pMGroupedJob.model.d.ts +3 -0
  82. package/{src/lib/models/pmJob.model.ts → lib/models/pmJob.model.d.ts} +6 -7
  83. package/lib/models/pmJobRequest.model.d.ts +5 -0
  84. package/{src/lib/models/pmJobStatus.ts → lib/models/pmJobStatus.d.ts} +3 -8
  85. package/lib/models/reason.model.d.ts +4 -0
  86. package/lib/models/reasonCode.d.ts +7 -0
  87. package/lib/models/reasonContact.d.ts +6 -0
  88. package/{src/lib/models/reportDateMailRequest.model.ts → lib/models/reportDateMailRequest.model.d.ts} +1 -3
  89. package/lib/models/role.d.ts +5 -0
  90. package/lib/models/service.model.d.ts +8 -0
  91. package/lib/models/serviceName.d.ts +10 -0
  92. package/{src/lib/models/socialLoginRequest.model.ts → lib/models/socialLoginRequest.model.d.ts} +1 -1
  93. package/lib/models/socialMadia.d.ts +3 -0
  94. package/lib/models/stingBoolean.d.ts +4 -0
  95. package/lib/models/system.d.ts +14 -0
  96. package/{src/lib/models/theme.model.ts → lib/models/theme.model.d.ts} +11 -18
  97. package/lib/models/tokenStatus.d.ts +5 -0
  98. package/lib/models/warranty.d.ts +17 -0
  99. package/lib/pipes/pipes/pipes.module.d.ts +9 -0
  100. package/lib/pipes/subrtring-w.pipe.d.ts +7 -0
  101. package/lib/pipes/substring.pipe.d.ts +7 -0
  102. package/lib/shared/choose-another-date/choose-another-date.component.d.ts +33 -0
  103. package/lib/shared/confirm-dialog/confirm-dialog.component.d.ts +20 -0
  104. package/lib/shared/confirm-dialog-contact/confirm-dialog-contact.component.d.ts +19 -0
  105. package/lib/shared/confirmed-date-information/confirmed-date-information.component.d.ts +15 -0
  106. package/lib/shared/contact/contact.component.d.ts +38 -0
  107. package/lib/shared/contact-support/contact-support.component.d.ts +49 -0
  108. package/lib/shared/dashboard/dashboard.component.d.ts +17 -0
  109. package/lib/shared/maintenance-list/maintenance-list.component.d.ts +83 -0
  110. package/lib/shared/shared-routing.module.d.ts +7 -0
  111. package/lib/shared/shared.module.d.ts +40 -0
  112. package/lib/shared/show-links/show-links.component.d.ts +23 -0
  113. package/lib/shared/system-list/system-list.component.d.ts +15 -0
  114. package/package.json +30 -10
  115. package/{src/public-api.ts → public-api.d.ts} +1 -16
  116. package/karma.conf.js +0 -44
  117. package/ng-package.json +0 -7
  118. package/src/lib/core/core-routing.module.ts +0 -10
  119. package/src/lib/core/core.module.ts +0 -35
  120. package/src/lib/core/menu/menu.component.css +0 -18
  121. package/src/lib/core/menu/menu.component.html +0 -8
  122. package/src/lib/core/menu/menu.component.spec.ts +0 -23
  123. package/src/lib/core/menu/menu.component.ts +0 -27
  124. package/src/lib/core/menu-consomer/menu-consomer.component.html +0 -20
  125. package/src/lib/core/menu-consomer/menu-consomer.component.scss +0 -20
  126. package/src/lib/core/menu-consomer/menu-consomer.component.spec.ts +0 -25
  127. package/src/lib/core/menu-consomer/menu-consomer.component.ts +0 -21
  128. package/src/lib/core/menu-ge-portal/menu-ge-portal.component.html +0 -7
  129. package/src/lib/core/menu-ge-portal/menu-ge-portal.component.scss +0 -17
  130. package/src/lib/core/menu-ge-portal/menu-ge-portal.component.spec.ts +0 -25
  131. package/src/lib/core/menu-ge-portal/menu-ge-portal.component.ts +0 -24
  132. package/src/lib/core/menu-warranty/menu-warranty.component.html +0 -20
  133. package/src/lib/core/menu-warranty/menu-warranty.component.scss +0 -16
  134. package/src/lib/core/menu-warranty/menu-warranty.component.spec.ts +0 -25
  135. package/src/lib/core/menu-warranty/menu-warranty.component.ts +0 -31
  136. package/src/lib/core/not-found/not-found.component.css +0 -31
  137. package/src/lib/core/not-found/not-found.component.html +0 -6
  138. package/src/lib/core/not-found/not-found.component.spec.ts +0 -23
  139. package/src/lib/core/not-found/not-found.component.ts +0 -15
  140. package/src/lib/core/top-bar/top-bar.component.css +0 -116
  141. package/src/lib/core/top-bar/top-bar.component.html +0 -1
  142. package/src/lib/core/top-bar/top-bar.component.spec.ts +0 -23
  143. package/src/lib/core/top-bar/top-bar.component.ts +0 -39
  144. package/src/lib/models/alternativeDate.model.ts +0 -6
  145. package/src/lib/models/applicationName.ts +0 -6
  146. package/src/lib/models/customObject.model.ts +0 -4
  147. package/src/lib/models/detailedPmJob.model.ts +0 -24
  148. package/src/lib/models/emailStatus.ts +0 -4
  149. package/src/lib/models/emailType.ts +0 -17
  150. package/src/lib/models/eventStatus.ts +0 -8
  151. package/src/lib/models/field.ts +0 -7
  152. package/src/lib/models/language.ts +0 -4
  153. package/src/lib/models/pMGroupedJob.model.ts +0 -4
  154. package/src/lib/models/pmJobRequest.model.ts +0 -6
  155. package/src/lib/models/reason.model.ts +0 -7
  156. package/src/lib/models/reasonCode.ts +0 -9
  157. package/src/lib/models/reasonContact.ts +0 -7
  158. package/src/lib/models/role.ts +0 -5
  159. package/src/lib/models/service.model.ts +0 -8
  160. package/src/lib/models/serviceName.ts +0 -14
  161. package/src/lib/models/socialMadia.ts +0 -4
  162. package/src/lib/models/stingBoolean.ts +0 -7
  163. package/src/lib/models/system.ts +0 -15
  164. package/src/lib/models/tokenStatus.ts +0 -6
  165. package/src/lib/models/warranty.ts +0 -18
  166. package/src/lib/pipes/pipes/pipes.module.ts +0 -14
  167. package/src/lib/pipes/subrtring-w.pipe.spec.ts +0 -8
  168. package/src/lib/pipes/subrtring-w.pipe.ts +0 -16
  169. package/src/lib/pipes/substring.pipe.spec.ts +0 -8
  170. package/src/lib/pipes/substring.pipe.ts +0 -15
  171. package/src/lib/shared/choose-another-date/choose-another-date.component.html +0 -9
  172. package/src/lib/shared/choose-another-date/choose-another-date.component.scss +0 -4
  173. package/src/lib/shared/choose-another-date/choose-another-date.component.spec.ts +0 -25
  174. package/src/lib/shared/choose-another-date/choose-another-date.component.ts +0 -126
  175. package/src/lib/shared/confirm-dialog/confirm-dialog.component.html +0 -27
  176. package/src/lib/shared/confirm-dialog/confirm-dialog.component.scss +0 -0
  177. package/src/lib/shared/confirm-dialog/confirm-dialog.component.spec.ts +0 -25
  178. package/src/lib/shared/confirm-dialog/confirm-dialog.component.ts +0 -35
  179. package/src/lib/shared/confirm-dialog-contact/confirm-dialog-contact.component.css +0 -0
  180. package/src/lib/shared/confirm-dialog-contact/confirm-dialog-contact.component.html +0 -19
  181. package/src/lib/shared/confirm-dialog-contact/confirm-dialog-contact.component.spec.ts +0 -23
  182. package/src/lib/shared/confirm-dialog-contact/confirm-dialog-contact.component.ts +0 -36
  183. package/src/lib/shared/confirmed-date-information/confirmed-date-information.component.html +0 -25
  184. package/src/lib/shared/confirmed-date-information/confirmed-date-information.component.scss +0 -23
  185. package/src/lib/shared/confirmed-date-information/confirmed-date-information.component.spec.ts +0 -25
  186. package/src/lib/shared/confirmed-date-information/confirmed-date-information.component.ts +0 -25
  187. package/src/lib/shared/contact/contact.component.css +0 -144
  188. package/src/lib/shared/contact/contact.component.html +0 -124
  189. package/src/lib/shared/contact/contact.component.spec.ts +0 -23
  190. package/src/lib/shared/contact/contact.component.ts +0 -161
  191. package/src/lib/shared/contact-support/contact-support.component.html +0 -126
  192. package/src/lib/shared/contact-support/contact-support.component.scss +0 -10
  193. package/src/lib/shared/contact-support/contact-support.component.spec.ts +0 -25
  194. package/src/lib/shared/contact-support/contact-support.component.ts +0 -191
  195. package/src/lib/shared/dashboard/dashboard.component.html +0 -81
  196. package/src/lib/shared/dashboard/dashboard.component.scss +0 -5
  197. package/src/lib/shared/dashboard/dashboard.component.spec.ts +0 -23
  198. package/src/lib/shared/dashboard/dashboard.component.ts +0 -21
  199. package/src/lib/shared/maintenance-list/maintenance-list.component.html +0 -100
  200. package/src/lib/shared/maintenance-list/maintenance-list.component.scss +0 -26
  201. package/src/lib/shared/maintenance-list/maintenance-list.component.spec.ts +0 -25
  202. package/src/lib/shared/maintenance-list/maintenance-list.component.ts +0 -466
  203. package/src/lib/shared/shared-routing.module.ts +0 -10
  204. package/src/lib/shared/shared.module.ts +0 -84
  205. package/src/lib/shared/show-links/show-links.component.html +0 -48
  206. package/src/lib/shared/show-links/show-links.component.scss +0 -0
  207. package/src/lib/shared/show-links/show-links.component.spec.ts +0 -25
  208. package/src/lib/shared/show-links/show-links.component.ts +0 -80
  209. package/src/lib/shared/system-list/system-list.component.css +0 -0
  210. package/src/lib/shared/system-list/system-list.component.html +0 -40
  211. package/src/lib/shared/system-list/system-list.component.spec.ts +0 -23
  212. package/src/lib/shared/system-list/system-list.component.ts +0 -26
  213. package/src/test.ts +0 -27
  214. package/tsconfig.lib.dev.json +0 -10
  215. package/tsconfig.lib.json +0 -15
  216. package/tsconfig.lib.pp.json +0 -10
  217. package/tsconfig.lib.prod.json +0 -10
  218. package/tsconfig.spec.json +0 -17
@@ -0,0 +1,1549 @@
1
+ import * as i0 from '@angular/core';
2
+ import { NgModule, Component, Input, EventEmitter, Output, ViewChild, Pipe, ViewEncapsulation } from '@angular/core';
3
+ import * as i1 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i2 from '@angular/router';
6
+ import { RouterModule } from '@angular/router';
7
+ import * as i1$1 from 'primeng/megamenu';
8
+ import { MegaMenuModule } from 'primeng/megamenu';
9
+ import * as i1$3 from 'primeng/api';
10
+ import { MessageService, ConfirmationService } from 'primeng/api';
11
+ import * as i1$2 from 'primeng/table';
12
+ import { TableModule } from 'primeng/table';
13
+ import * as i4 from 'primeng/inputtext';
14
+ import { InputTextModule } from 'primeng/inputtext';
15
+ import * as i1$4 from '@angular/forms';
16
+ import { Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
17
+ import * as i5 from 'primeng/toast';
18
+ import { ToastModule } from 'primeng/toast';
19
+ import * as i6 from 'primeng/inputtextarea';
20
+ import { InputTextareaModule } from 'primeng/inputtextarea';
21
+ import * as i7 from 'primeng/dropdown';
22
+ import { DropdownModule } from 'primeng/dropdown';
23
+ import { MultiSelectModule } from 'primeng/multiselect';
24
+ import * as i4$1 from 'primeng/calendar';
25
+ import { CalendarModule } from 'primeng/calendar';
26
+ import * as i4$2 from 'primeng/button';
27
+ import { ButtonModule } from 'primeng/button';
28
+ import * as i5$1 from 'primeng/dialog';
29
+ import { DialogModule } from 'primeng/dialog';
30
+ import * as i7$1 from 'primeng/tooltip';
31
+ import { TooltipModule } from 'primeng/tooltip';
32
+ import * as i7$2 from 'primeng/overlaypanel';
33
+ import { OverlayPanelModule } from 'primeng/overlaypanel';
34
+ import { SliderModule } from 'primeng/slider';
35
+ import { ContextMenuModule } from 'primeng/contextmenu';
36
+ import { ToolbarModule } from 'primeng/toolbar';
37
+ import { ProgressSpinnerModule } from 'primeng/progressspinner';
38
+ import { ConfirmDialogModule } from 'primeng/confirmdialog';
39
+ import { ConfirmPopupModule } from 'primeng/confirmpopup';
40
+ import { SelectButtonModule } from 'primeng/selectbutton';
41
+ import { RadioButtonModule } from 'primeng/radiobutton';
42
+ import { CheckboxModule } from 'primeng/checkbox';
43
+
44
+ const routes$1 = [];
45
+ class CoreRoutingModule {
46
+ }
47
+ CoreRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
48
+ CoreRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: CoreRoutingModule, imports: [i2.RouterModule], exports: [RouterModule] });
49
+ CoreRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreRoutingModule, imports: [RouterModule.forChild(routes$1), RouterModule] });
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreRoutingModule, decorators: [{
51
+ type: NgModule,
52
+ args: [{
53
+ imports: [RouterModule.forChild(routes$1)],
54
+ exports: [RouterModule]
55
+ }]
56
+ }] });
57
+
58
+ class NotFoundComponent {
59
+ constructor() { }
60
+ ngOnChanges() { }
61
+ }
62
+ NotFoundComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
63
+ NotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: NotFoundComponent, selector: "awf-not-found", inputs: { translate: "translate", applicationName: "applicationName" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"container\" *ngIf=\"translate\">\r\n <h2>{{translate.title}}</h2>\r\n <h3>{{translate.oops}}</h3>\r\n <p>{{translate.checkUrl}}</p>\r\n <p>{{translate.otherwise}}<a routerLink=\"./home\">{{translate.clickHere}} </a>{{translate.redirect}}</p>\r\n</div>\r\n", styles: [".container{display:flex;flex-direction:column;align-items:center;width:100%;background-color:#5ca3dd93}h2{font-size:150px;margin:0;text-shadow:15px 5px 2px black}h3{font-size:40px;margin:20px}p{font-size:18px;margin:5px}p:last-of-type{margin-bottom:35px}a{text-decoration:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NotFoundComponent, decorators: [{
65
+ type: Component,
66
+ args: [{ selector: 'awf-not-found', template: "<div class=\"container\" *ngIf=\"translate\">\r\n <h2>{{translate.title}}</h2>\r\n <h3>{{translate.oops}}</h3>\r\n <p>{{translate.checkUrl}}</p>\r\n <p>{{translate.otherwise}}<a routerLink=\"./home\">{{translate.clickHere}} </a>{{translate.redirect}}</p>\r\n</div>\r\n", styles: [".container{display:flex;flex-direction:column;align-items:center;width:100%;background-color:#5ca3dd93}h2{font-size:150px;margin:0;text-shadow:15px 5px 2px black}h3{font-size:40px;margin:20px}p{font-size:18px;margin:5px}p:last-of-type{margin-bottom:35px}a{text-decoration:none}\n"] }]
67
+ }], ctorParameters: function () { return []; }, propDecorators: { translate: [{
68
+ type: Input
69
+ }], applicationName: [{
70
+ type: Input
71
+ }] } });
72
+
73
+ class TopBarComponent {
74
+ constructor() {
75
+ this.logOutClick = new EventEmitter();
76
+ }
77
+ ngOnChanges() {
78
+ this.items = [
79
+ {
80
+ label: this.translate.parameters, icon: 'pi pi-fw pi-user',
81
+ items: [
82
+ [
83
+ {
84
+ label: this.translate.account,
85
+ items: [
86
+ { label: this.translate.logout, icon: 'pi pi-fw pi-power-off', command: () => { this.logout(); } },
87
+ ]
88
+ },
89
+ ],
90
+ ]
91
+ }
92
+ ];
93
+ }
94
+ logout() {
95
+ this.logOutClick.emit();
96
+ }
97
+ }
98
+ TopBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: TopBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
99
+ TopBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: TopBarComponent, selector: "awf-top-bar", inputs: { translate: "translate", applicationName: "applicationName" }, outputs: { logOutClick: "logOutClick" }, usesOnChanges: true, ngImport: i0, template: "<p-megaMenu [model]=\"items\"></p-megaMenu>", styles: ["body{background:#f6f7f8}#main{margin-top:60px;padding:20px 30px;transition:all .3s}.layout-topbar .toggle-sidebar-btn{font-size:26px;padding-left:10px;cursor:pointer;color:var(--secondarycolor)}.layout-topbar .search-bar{min-width:650px;padding:0 20px}@media (max-width: var(--smallscreen)){.layout-topbar .search-bar{position:fixed;top:50px;left:0;right:0;padding:20px;box-shadow:0 0 15px #0129701a;background:var(--primarycolorwhite);z-index:9999;transition:.3s;visibility:hidden;opacity:0;min-width:432px}}@media (max-width: var(--largescreen)){.layout-topbar .search-bar-show{top:60px;visibility:visible;opacity:1}}.layout-topbar .search-form{width:100%}.layout-topbar .search-form input{border:0;font-size:14px;color:#012970;border:1px solid rgba(1,41,112,.2);padding:7px 38px 7px 8px;border-radius:3px;transition:.3s;width:500px}.layout-topbar .search-form input:hover,.layout-topbar .search-form input:focus{outline:none;box-shadow:0 0 10px #01297026;border:1px solid rgba(1,41,112,.3)}@media (max-width: var(--largescreen)){.layout-topbar .search-form input{width:100%}}.layout-topbar .search-form button{border:0;margin-left:-70px;background:#f8f9fa;padding:5px 26px;border-left:1px solid rgba(1,41,112,.2);border-radius:0 0 5px}.topbar-menu ul{margin:0;padding:0;list-style:none}.topbar-menu .nav-profile img{max-height:36px}.topbar-menu .nav-profile span{font-size:14px;font-weight:600}.topbar-menu .profile{min-width:240px;padding-bottom:0}.topbar-menu .profile .dropdown-header h6{font-size:18px;margin-bottom:0;font-weight:600;color:#444}.topbar-menu .profile .dropdown-header span{font-size:14px}.p-megamenu{background:transparent;border:none}.p-megamenu .p-menuitem-link .p-menuitem-text{line-height:20px}.p-megamenu .p-megamenu-grid .p-menuitem-link:not(.p-disabled):hover{background:#e9ecef;border-left:4px solid var(--primarycolor)}.p-megamenu-panel .p-megamenu-col-12{padding:.5rem 0}\n"], dependencies: [{ kind: "component", type: i1$1.MegaMenu, selector: "p-megaMenu", inputs: ["model", "style", "styleClass", "orientation", "autoZIndex", "baseZIndex"] }] });
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: TopBarComponent, decorators: [{
101
+ type: Component,
102
+ args: [{ selector: 'awf-top-bar', template: "<p-megaMenu [model]=\"items\"></p-megaMenu>", styles: ["body{background:#f6f7f8}#main{margin-top:60px;padding:20px 30px;transition:all .3s}.layout-topbar .toggle-sidebar-btn{font-size:26px;padding-left:10px;cursor:pointer;color:var(--secondarycolor)}.layout-topbar .search-bar{min-width:650px;padding:0 20px}@media (max-width: var(--smallscreen)){.layout-topbar .search-bar{position:fixed;top:50px;left:0;right:0;padding:20px;box-shadow:0 0 15px #0129701a;background:var(--primarycolorwhite);z-index:9999;transition:.3s;visibility:hidden;opacity:0;min-width:432px}}@media (max-width: var(--largescreen)){.layout-topbar .search-bar-show{top:60px;visibility:visible;opacity:1}}.layout-topbar .search-form{width:100%}.layout-topbar .search-form input{border:0;font-size:14px;color:#012970;border:1px solid rgba(1,41,112,.2);padding:7px 38px 7px 8px;border-radius:3px;transition:.3s;width:500px}.layout-topbar .search-form input:hover,.layout-topbar .search-form input:focus{outline:none;box-shadow:0 0 10px #01297026;border:1px solid rgba(1,41,112,.3)}@media (max-width: var(--largescreen)){.layout-topbar .search-form input{width:100%}}.layout-topbar .search-form button{border:0;margin-left:-70px;background:#f8f9fa;padding:5px 26px;border-left:1px solid rgba(1,41,112,.2);border-radius:0 0 5px}.topbar-menu ul{margin:0;padding:0;list-style:none}.topbar-menu .nav-profile img{max-height:36px}.topbar-menu .nav-profile span{font-size:14px;font-weight:600}.topbar-menu .profile{min-width:240px;padding-bottom:0}.topbar-menu .profile .dropdown-header h6{font-size:18px;margin-bottom:0;font-weight:600;color:#444}.topbar-menu .profile .dropdown-header span{font-size:14px}.p-megamenu{background:transparent;border:none}.p-megamenu .p-menuitem-link .p-menuitem-text{line-height:20px}.p-megamenu .p-megamenu-grid .p-menuitem-link:not(.p-disabled):hover{background:#e9ecef;border-left:4px solid var(--primarycolor)}.p-megamenu-panel .p-megamenu-col-12{padding:.5rem 0}\n"] }]
103
+ }], ctorParameters: function () { return []; }, propDecorators: { translate: [{
104
+ type: Input
105
+ }], applicationName: [{
106
+ type: Input
107
+ }], logOutClick: [{
108
+ type: Output
109
+ }] } });
110
+
111
+ class MenuWarrantyComponent {
112
+ constructor() {
113
+ this.logOutClick = new EventEmitter();
114
+ this.hideMenu = new EventEmitter();
115
+ }
116
+ ngOnInit() {
117
+ }
118
+ logout() {
119
+ this.logOutClick.emit();
120
+ }
121
+ hideMenuMethode() {
122
+ this.hideMenu.emit();
123
+ }
124
+ }
125
+ MenuWarrantyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuWarrantyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
126
+ MenuWarrantyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: MenuWarrantyComponent, selector: "awf-menu-warranty", inputs: { isAdmin: "isAdmin", translate: "translate", haveConsumerDataId: "haveConsumerDataId" }, outputs: { logOutClick: "logOutClick", hideMenu: "hideMenu" }, ngImport: i0, template: "<div class=\"layout-menu\" *ngIf=\"translate\">\r\n <div class=\"menu-category\"> <i class=\"pi pi-home\"></i> {{translate.general}}</div>\r\n <div class=\"menu-items\">\r\n <a routerLink=\"./warranties\" (click)=\"hideMenuMethode()\">{{translate.Homepage}}</a>\r\n <a routerLink=\"./device\" (click)=\"hideMenuMethode()\">{{translate.devices}}</a>\r\n </div>\r\n <div class=\"menu-category\" *ngIf=\"isAdmin \"> <i class=\"pi pi-cog\"></i> {{translate.config}}</div>\r\n <div class=\"menu-items\" *ngIf=\"isAdmin \">\r\n\r\n <a routerLink=\"./theme\" (click)=\"hideMenuMethode()\">{{translate.themes}}</a>\r\n <a routerLink=\"./servicesConfig\" (click)=\"hideMenuMethode()\">{{translate.services}}</a>\r\n </div>\r\n <div class=\"menu-category\"> <i class=\"pi pi-user\"></i> {{translate.account}}</div>\r\n <div class=\"menu-items\">\r\n <a routerLink=\"./account\" *ngIf=\"haveConsumerDataId\" (click)=\"hideMenuMethode()\">{{translate.personalData}}</a>\r\n <a routerLink=\"./account/optionsList\" *ngIf=\"haveConsumerDataId\" (click)=\"hideMenuMethode()\">{{translate.optionsList}}</a>\r\n <a routerLink=\"./account/change-password\" *ngIf=\"haveConsumerDataId\" (click)=\"hideMenuMethode()\">{{translate.changePassword}}</a>\r\n <a (click)=\"logout()\">{{translate.logout}}</a>\r\n </div>\r\n</div>", styles: [".layout-menu .logo img{width:150px;max-height:20px;margin-left:24px}@media (max-width: var(--smscreen)){.layout-menu .logo img{max-height:33px;margin-left:0}}.layout-menu .a{font-family:var(--font)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuWarrantyComponent, decorators: [{
128
+ type: Component,
129
+ args: [{ selector: 'awf-menu-warranty', template: "<div class=\"layout-menu\" *ngIf=\"translate\">\r\n <div class=\"menu-category\"> <i class=\"pi pi-home\"></i> {{translate.general}}</div>\r\n <div class=\"menu-items\">\r\n <a routerLink=\"./warranties\" (click)=\"hideMenuMethode()\">{{translate.Homepage}}</a>\r\n <a routerLink=\"./device\" (click)=\"hideMenuMethode()\">{{translate.devices}}</a>\r\n </div>\r\n <div class=\"menu-category\" *ngIf=\"isAdmin \"> <i class=\"pi pi-cog\"></i> {{translate.config}}</div>\r\n <div class=\"menu-items\" *ngIf=\"isAdmin \">\r\n\r\n <a routerLink=\"./theme\" (click)=\"hideMenuMethode()\">{{translate.themes}}</a>\r\n <a routerLink=\"./servicesConfig\" (click)=\"hideMenuMethode()\">{{translate.services}}</a>\r\n </div>\r\n <div class=\"menu-category\"> <i class=\"pi pi-user\"></i> {{translate.account}}</div>\r\n <div class=\"menu-items\">\r\n <a routerLink=\"./account\" *ngIf=\"haveConsumerDataId\" (click)=\"hideMenuMethode()\">{{translate.personalData}}</a>\r\n <a routerLink=\"./account/optionsList\" *ngIf=\"haveConsumerDataId\" (click)=\"hideMenuMethode()\">{{translate.optionsList}}</a>\r\n <a routerLink=\"./account/change-password\" *ngIf=\"haveConsumerDataId\" (click)=\"hideMenuMethode()\">{{translate.changePassword}}</a>\r\n <a (click)=\"logout()\">{{translate.logout}}</a>\r\n </div>\r\n</div>", styles: [".layout-menu .logo img{width:150px;max-height:20px;margin-left:24px}@media (max-width: var(--smscreen)){.layout-menu .logo img{max-height:33px;margin-left:0}}.layout-menu .a{font-family:var(--font)}\n"] }]
130
+ }], ctorParameters: function () { return []; }, propDecorators: { logOutClick: [{
131
+ type: Output
132
+ }], hideMenu: [{
133
+ type: Output
134
+ }], isAdmin: [{
135
+ type: Input
136
+ }], translate: [{
137
+ type: Input
138
+ }], haveConsumerDataId: [{
139
+ type: Input
140
+ }] } });
141
+
142
+ class MenuConsomerComponent {
143
+ constructor() {
144
+ this.logOutClick = new EventEmitter();
145
+ }
146
+ ngOnChanges() {
147
+ }
148
+ logout() {
149
+ this.logOutClick.emit();
150
+ }
151
+ }
152
+ MenuConsomerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuConsomerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
153
+ MenuConsomerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: MenuConsomerComponent, selector: "awf-menu-consomer", inputs: { translate: "translate", isAdmin: "isAdmin" }, outputs: { logOutClick: "logOutClick" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"layout-menu\" *ngIf=\"translate\">\r\n <div class=\"menu-category\"> <i class=\"pi pi-home\"></i> {{translate.general}}</div>\r\n <div class=\"menu-items\">\r\n <a routerLink=\"./\">{{translate.Homepage}}</a>\r\n <a routerLink=\"./device\">{{translate.myDevices}}</a>\r\n <a routerLink=\"./personalData\">{{translate.personalData}}</a>\r\n </div>\r\n \r\n <div class=\"menu-category\" *ngIf=\"isAdmin \"> <i class=\"pi pi-cog\"></i> {{translate.config}}</div>\r\n <div class=\"menu-items\" *ngIf=\"isAdmin \">\r\n <a routerLink=\"./theme\">{{translate.themes}}</a>\r\n <a routerLink=\"./servicesConfig\">{{translate.services}}</a>\r\n </div>\r\n\r\n <div class=\"menu-category\"> <i class=\"pi pi-user\"></i> {{translate.account}}</div>\r\n <div class=\"menu-items\">\r\n <a >{{translate.profile}}</a>\r\n <a (click)=\"logout()\">{{translate.logout}}</a>\r\n </div>\r\n</div>\r\n", styles: [".layout-menu .logo img{width:150px;max-height:20px;margin-left:24px}@media (max-width: var(--smscreen)){.layout-menu .logo img{max-height:33px;margin-left:0}}.layout-menu .a{font-family:var(--font)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuConsomerComponent, decorators: [{
155
+ type: Component,
156
+ args: [{ selector: 'awf-menu-consomer', template: "<div class=\"layout-menu\" *ngIf=\"translate\">\r\n <div class=\"menu-category\"> <i class=\"pi pi-home\"></i> {{translate.general}}</div>\r\n <div class=\"menu-items\">\r\n <a routerLink=\"./\">{{translate.Homepage}}</a>\r\n <a routerLink=\"./device\">{{translate.myDevices}}</a>\r\n <a routerLink=\"./personalData\">{{translate.personalData}}</a>\r\n </div>\r\n \r\n <div class=\"menu-category\" *ngIf=\"isAdmin \"> <i class=\"pi pi-cog\"></i> {{translate.config}}</div>\r\n <div class=\"menu-items\" *ngIf=\"isAdmin \">\r\n <a routerLink=\"./theme\">{{translate.themes}}</a>\r\n <a routerLink=\"./servicesConfig\">{{translate.services}}</a>\r\n </div>\r\n\r\n <div class=\"menu-category\"> <i class=\"pi pi-user\"></i> {{translate.account}}</div>\r\n <div class=\"menu-items\">\r\n <a >{{translate.profile}}</a>\r\n <a (click)=\"logout()\">{{translate.logout}}</a>\r\n </div>\r\n</div>\r\n", styles: [".layout-menu .logo img{width:150px;max-height:20px;margin-left:24px}@media (max-width: var(--smscreen)){.layout-menu .logo img{max-height:33px;margin-left:0}}.layout-menu .a{font-family:var(--font)}\n"] }]
157
+ }], ctorParameters: function () { return []; }, propDecorators: { logOutClick: [{
158
+ type: Output
159
+ }], translate: [{
160
+ type: Input
161
+ }], isAdmin: [{
162
+ type: Input
163
+ }] } });
164
+
165
+ class MenuGePortalComponent {
166
+ constructor() {
167
+ this.logOutClick = new EventEmitter();
168
+ this.hideMenu = new EventEmitter();
169
+ }
170
+ logout() {
171
+ this.logOutClick.emit();
172
+ }
173
+ hideMenuMethode() {
174
+ this.hideMenu.emit();
175
+ }
176
+ }
177
+ MenuGePortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuGePortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
178
+ MenuGePortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: MenuGePortalComponent, selector: "awf-menu-ge-portal", inputs: { translate: "translate", isAdmin: "isAdmin" }, outputs: { logOutClick: "logOutClick", hideMenu: "hideMenu" }, ngImport: i0, template: "<div class=\"layout-menu\" *ngIf=\"translate\">\r\n <div class=\"menu\" routerLink=\"./\" (click)=\"hideMenuMethode()\"> <i class=\"pi pi-home\"></i> {{translate.home}}</div>\r\n <div class=\"menu\" routerLink=\"./contact\" (click)=\"hideMenuMethode()\"> <i class=\"pi pi-phone\"></i> {{translate.contact}}</div>\r\n <div class=\"menu\" routerLink=\"./systems\" (click)=\"hideMenuMethode()\"> <i class=\"pi pi-eye\"></i> {{translate.systems}}</div>\r\n <div class=\"menu\" routerLink=\"./maintenance\" (click)=\"hideMenuMethode()\"> <i class=\"pi pi-inbox\"></i> {{translate.maintenance}}</div>\r\n <div class=\"menu\" (click)=\"logout()\"> <i class=\"pi pi-power-off\"></i> {{translate.logout}}</div>\r\n</div> ", styles: [".layout-menu{margin-left:50px}.layout-menu .menu{display:block;color:#8da1b5;font-weight:300;padding:1rem 0 .5rem;font-size:16px;cursor:pointer}.layout-menu .menu:hover{font-weight:700;color:var(--primarycolor)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
179
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuGePortalComponent, decorators: [{
180
+ type: Component,
181
+ args: [{ selector: 'awf-menu-ge-portal', template: "<div class=\"layout-menu\" *ngIf=\"translate\">\r\n <div class=\"menu\" routerLink=\"./\" (click)=\"hideMenuMethode()\"> <i class=\"pi pi-home\"></i> {{translate.home}}</div>\r\n <div class=\"menu\" routerLink=\"./contact\" (click)=\"hideMenuMethode()\"> <i class=\"pi pi-phone\"></i> {{translate.contact}}</div>\r\n <div class=\"menu\" routerLink=\"./systems\" (click)=\"hideMenuMethode()\"> <i class=\"pi pi-eye\"></i> {{translate.systems}}</div>\r\n <div class=\"menu\" routerLink=\"./maintenance\" (click)=\"hideMenuMethode()\"> <i class=\"pi pi-inbox\"></i> {{translate.maintenance}}</div>\r\n <div class=\"menu\" (click)=\"logout()\"> <i class=\"pi pi-power-off\"></i> {{translate.logout}}</div>\r\n</div> ", styles: [".layout-menu{margin-left:50px}.layout-menu .menu{display:block;color:#8da1b5;font-weight:300;padding:1rem 0 .5rem;font-size:16px;cursor:pointer}.layout-menu .menu:hover{font-weight:700;color:var(--primarycolor)}\n"] }]
182
+ }], ctorParameters: function () { return []; }, propDecorators: { logOutClick: [{
183
+ type: Output
184
+ }], translate: [{
185
+ type: Input
186
+ }], isAdmin: [{
187
+ type: Input
188
+ }], hideMenu: [{
189
+ type: Output
190
+ }] } });
191
+
192
+ class MenuComponent {
193
+ constructor() {
194
+ this.logOutClick = new EventEmitter();
195
+ this.hideMenu = new EventEmitter();
196
+ }
197
+ ngOnInit() { }
198
+ logout() {
199
+ this.logOutClick.emit();
200
+ }
201
+ hideMenuMethode() {
202
+ this.hideMenu.emit();
203
+ }
204
+ }
205
+ MenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
206
+ MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: MenuComponent, selector: "awf-menu", inputs: { active: "active", isAdmin: "isAdmin", translate: "translate", applicationName: "applicationName", haveConsumerDataId: "haveConsumerDataId" }, outputs: { logOutClick: "logOutClick", hideMenu: "hideMenu" }, ngImport: i0, template: "\r\n\r\n <awf-menu-warranty [haveConsumerDataId]=\"haveConsumerDataId\" [translate]=\"translate\" [isAdmin]=\"isAdmin\" *ngIf=\"applicationName ==='WarrantyPortal' \" (logOutClick)=logout() (hideMenu)=\"hideMenuMethode()\">\r\n </awf-menu-warranty>\r\n <awf-menu-consomer [translate]=\"translate\" [isAdmin]=\"isAdmin\" *ngIf=\"applicationName ==='ConsomerPortal' \" (logOutClick)=logout() (hideMenu)=\"hideMenuMethode()\">\r\n </awf-menu-consomer>\r\n <awf-menu-ge-portal [translate]=\"translate\" [isAdmin]=\"isAdmin\" *ngIf=\"applicationName ==='GEPortal' \" (logOutClick)=logout() (hideMenu)=\"hideMenuMethode()\">\r\n </awf-menu-ge-portal> \r\n", styles: [".layout-menu .logo img{width:150px;max-height:20px;margin-left:24px}@media (max-width: var(--smscreen)){.layout-menu .logo img{max-height:33px;margin-left:0}}.layout-menu .a{font-family:var(--font)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MenuWarrantyComponent, selector: "awf-menu-warranty", inputs: ["isAdmin", "translate", "haveConsumerDataId"], outputs: ["logOutClick", "hideMenu"] }, { kind: "component", type: MenuConsomerComponent, selector: "awf-menu-consomer", inputs: ["translate", "isAdmin"], outputs: ["logOutClick"] }, { kind: "component", type: MenuGePortalComponent, selector: "awf-menu-ge-portal", inputs: ["translate", "isAdmin"], outputs: ["logOutClick", "hideMenu"] }] });
207
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuComponent, decorators: [{
208
+ type: Component,
209
+ args: [{ selector: 'awf-menu', template: "\r\n\r\n <awf-menu-warranty [haveConsumerDataId]=\"haveConsumerDataId\" [translate]=\"translate\" [isAdmin]=\"isAdmin\" *ngIf=\"applicationName ==='WarrantyPortal' \" (logOutClick)=logout() (hideMenu)=\"hideMenuMethode()\">\r\n </awf-menu-warranty>\r\n <awf-menu-consomer [translate]=\"translate\" [isAdmin]=\"isAdmin\" *ngIf=\"applicationName ==='ConsomerPortal' \" (logOutClick)=logout() (hideMenu)=\"hideMenuMethode()\">\r\n </awf-menu-consomer>\r\n <awf-menu-ge-portal [translate]=\"translate\" [isAdmin]=\"isAdmin\" *ngIf=\"applicationName ==='GEPortal' \" (logOutClick)=logout() (hideMenu)=\"hideMenuMethode()\">\r\n </awf-menu-ge-portal> \r\n", styles: [".layout-menu .logo img{width:150px;max-height:20px;margin-left:24px}@media (max-width: var(--smscreen)){.layout-menu .logo img{max-height:33px;margin-left:0}}.layout-menu .a{font-family:var(--font)}\n"] }]
210
+ }], ctorParameters: function () { return []; }, propDecorators: { logOutClick: [{
211
+ type: Output
212
+ }], hideMenu: [{
213
+ type: Output
214
+ }], active: [{
215
+ type: Input
216
+ }], isAdmin: [{
217
+ type: Input
218
+ }], translate: [{
219
+ type: Input
220
+ }], applicationName: [{
221
+ type: Input
222
+ }], haveConsumerDataId: [{
223
+ type: Input
224
+ }] } });
225
+
226
+ class CoreModule {
227
+ }
228
+ CoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
229
+ CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: CoreModule, declarations: [TopBarComponent,
230
+ NotFoundComponent,
231
+ MenuComponent,
232
+ MenuWarrantyComponent,
233
+ MenuConsomerComponent,
234
+ MenuGePortalComponent], imports: [CommonModule,
235
+ CoreRoutingModule,
236
+ MegaMenuModule], exports: [NotFoundComponent,
237
+ MenuComponent,
238
+ TopBarComponent] });
239
+ CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreModule, imports: [CommonModule,
240
+ CoreRoutingModule,
241
+ MegaMenuModule] });
242
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreModule, decorators: [{
243
+ type: NgModule,
244
+ args: [{
245
+ declarations: [
246
+ TopBarComponent,
247
+ NotFoundComponent,
248
+ MenuComponent,
249
+ MenuWarrantyComponent,
250
+ MenuConsomerComponent,
251
+ MenuGePortalComponent,
252
+ ],
253
+ imports: [
254
+ CommonModule,
255
+ CoreRoutingModule,
256
+ MegaMenuModule
257
+ ],
258
+ exports: [
259
+ NotFoundComponent,
260
+ MenuComponent,
261
+ TopBarComponent,
262
+ ]
263
+ }]
264
+ }] });
265
+
266
+ class SystemListComponent {
267
+ constructor() {
268
+ this.systems = [];
269
+ }
270
+ ngOnChanges() { }
271
+ applyFilterGlobal($event, stringVal) {
272
+ var _a;
273
+ (_a = this.dt) === null || _a === void 0 ? void 0 : _a.filterGlobal($event.target.value, stringVal);
274
+ }
275
+ }
276
+ SystemListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SystemListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
277
+ SystemListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: SystemListComponent, selector: "awf-system-list", inputs: { translate: "translate", globaltranslate: "globaltranslate", systems: "systems" }, providers: [MessageService], viewQueries: [{ propertyName: "dt", first: true, predicate: ["dt"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<p-table #dt [value]=\"systems\" responsiveLayout=\"stack\" [rows]=\"5\" [showCurrentPageReport]=\"true\" [rowsPerPageOptions]=\"[5,10,25,50]\" [paginator]=\"true\" [globalFilterFields]=\"['id','systemId','name','modality','installDate']\" [rowHover]=\"true\" dataKey=\"id\"\r\n [currentPageReportTemplate]=\"globaltranslate.countPages\" [showCurrentPageReport]=\"true\">\r\n <ng-template pTemplate=\"caption\">\r\n <div>\r\n <span class=\"p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" (input)=\"applyFilterGlobal($event, 'contains')\"\r\n [placeholder]=\"globaltranslate.search\" />\r\n </span>\r\n </div>\r\n </ng-template>\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n \r\n <th pSortableColumn=\"name\">{{translate.name}}\r\n <p-sortIcon field=\"name\"></p-sortIcon>\r\n <th pSortableColumn=\"systemId\">{{translate.systemId}}\r\n <p-sortIcon field=\"systemId\"></p-sortIcon>\r\n <th pSortableColumn=\"modality\">{{translate.modality}}\r\n <p-sortIcon field=\"modality\"></p-sortIcon>\r\n <th pSortableColumn=\"installDate\">{{translate.installDate}}\r\n <p-sortIcon field=\"installDate\"></p-sortIcon>\r\n \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-product let-columns=\"columns\">\r\n <tr>\r\n <td>{{product.name }}</td>\r\n <td>{{product.systemId }}</td>\r\n \r\n <td>{{product.modality }}</td>\r\n <td>{{product.installDate | date: 'dd MMM yyyy' }}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"summary\">\r\n <div class=\"p-d-flex p-ai-center p-jc-between\">\r\n {{globaltranslate.count}} {{systems ? systems.length : 0 }} {{globaltranslate.elements}}.\r\n </div>\r\n </ng-template>\r\n</p-table>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i1$3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i1$2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i1$2.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "directive", type: i4.InputText, selector: "[pInputText]" }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
278
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SystemListComponent, decorators: [{
279
+ type: Component,
280
+ args: [{ selector: 'awf-system-list', providers: [MessageService], template: "<p-table #dt [value]=\"systems\" responsiveLayout=\"stack\" [rows]=\"5\" [showCurrentPageReport]=\"true\" [rowsPerPageOptions]=\"[5,10,25,50]\" [paginator]=\"true\" [globalFilterFields]=\"['id','systemId','name','modality','installDate']\" [rowHover]=\"true\" dataKey=\"id\"\r\n [currentPageReportTemplate]=\"globaltranslate.countPages\" [showCurrentPageReport]=\"true\">\r\n <ng-template pTemplate=\"caption\">\r\n <div>\r\n <span class=\"p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" (input)=\"applyFilterGlobal($event, 'contains')\"\r\n [placeholder]=\"globaltranslate.search\" />\r\n </span>\r\n </div>\r\n </ng-template>\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n \r\n <th pSortableColumn=\"name\">{{translate.name}}\r\n <p-sortIcon field=\"name\"></p-sortIcon>\r\n <th pSortableColumn=\"systemId\">{{translate.systemId}}\r\n <p-sortIcon field=\"systemId\"></p-sortIcon>\r\n <th pSortableColumn=\"modality\">{{translate.modality}}\r\n <p-sortIcon field=\"modality\"></p-sortIcon>\r\n <th pSortableColumn=\"installDate\">{{translate.installDate}}\r\n <p-sortIcon field=\"installDate\"></p-sortIcon>\r\n \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-product let-columns=\"columns\">\r\n <tr>\r\n <td>{{product.name }}</td>\r\n <td>{{product.systemId }}</td>\r\n \r\n <td>{{product.modality }}</td>\r\n <td>{{product.installDate | date: 'dd MMM yyyy' }}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"summary\">\r\n <div class=\"p-d-flex p-ai-center p-jc-between\">\r\n {{globaltranslate.count}} {{systems ? systems.length : 0 }} {{globaltranslate.elements}}.\r\n </div>\r\n </ng-template>\r\n</p-table>\r\n" }]
281
+ }], ctorParameters: function () { return []; }, propDecorators: { dt: [{
282
+ type: ViewChild,
283
+ args: ['dt']
284
+ }], translate: [{
285
+ type: Input
286
+ }], globaltranslate: [{
287
+ type: Input
288
+ }], systems: [{
289
+ type: Input
290
+ }] } });
291
+
292
+ class SubstringPipe {
293
+ transform(time, arg1, arg2) {
294
+ return time.substring(arg1, arg2);
295
+ }
296
+ }
297
+ SubstringPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubstringPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
298
+ SubstringPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SubstringPipe, name: "substring" });
299
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubstringPipe, decorators: [{
300
+ type: Pipe,
301
+ args: [{
302
+ name: 'substring'
303
+ }]
304
+ }] });
305
+
306
+ class SubrtringWPipe {
307
+ transform(brand, manufacturerId) {
308
+ if (manufacturerId == 4 && (brand.substring(0, 2) === 'FR')) {
309
+ return brand.substring(2, 12);
310
+ }
311
+ else
312
+ return brand;
313
+ }
314
+ }
315
+ SubrtringWPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubrtringWPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
316
+ SubrtringWPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SubrtringWPipe, name: "subrtringW" });
317
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubrtringWPipe, decorators: [{
318
+ type: Pipe,
319
+ args: [{
320
+ name: 'subrtringW'
321
+ }]
322
+ }] });
323
+
324
+ class PipesModule {
325
+ }
326
+ PipesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
327
+ PipesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, declarations: [SubstringPipe, SubrtringWPipe], imports: [CommonModule], exports: [SubstringPipe, SubrtringWPipe] });
328
+ PipesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, imports: [CommonModule] });
329
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, decorators: [{
330
+ type: NgModule,
331
+ args: [{
332
+ declarations: [SubstringPipe, SubrtringWPipe],
333
+ exports: [SubstringPipe, SubrtringWPipe],
334
+ imports: [
335
+ CommonModule
336
+ ]
337
+ }]
338
+ }] });
339
+
340
+ var PmJobStatus;
341
+ (function (PmJobStatus) {
342
+ PmJobStatus["NEW"] = "new";
343
+ PmJobStatus["ACCEPTED"] = "accepted";
344
+ PmJobStatus["CLOSED"] = "closed";
345
+ PmJobStatus["Late"] = "late";
346
+ PmJobStatus["OPEN"] = "open";
347
+ PmJobStatus["WAITING"] = "waiting";
348
+ PmJobStatus["DONE"] = "done";
349
+ PmJobStatus["VALIDATED"] = "validated";
350
+ // statues if i select reason in contact page
351
+ PmJobStatus["DESINSTALLED"] = "desinstalled";
352
+ PmJobStatus["REPORTED"] = "reported";
353
+ PmJobStatus["CANCELLED"] = "cancelled";
354
+ PmJobStatus["OTHER"] = "other";
355
+ })(PmJobStatus || (PmJobStatus = {}));
356
+
357
+ var ReasonCode;
358
+ (function (ReasonCode) {
359
+ ReasonCode["MPM"] = "MPM";
360
+ ReasonCode["RPM"] = "RPM";
361
+ ReasonCode["CPM"] = "CPM";
362
+ ReasonCode["SDI"] = "SDI";
363
+ ReasonCode["OTH"] = "OTH";
364
+ })(ReasonCode || (ReasonCode = {}));
365
+
366
+ var ReasonContact;
367
+ (function (ReasonContact) {
368
+ ReasonContact["MoreDatesFormPm"] = "MoreDatesFormPm";
369
+ ReasonContact["ContactFormPm"] = "ContactFormPm";
370
+ ReasonContact["CancelFormPm"] = "CancelFormPm";
371
+ ReasonContact["Contact"] = "Contact";
372
+ })(ReasonContact || (ReasonContact = {}));
373
+
374
+ class ContactComponent {
375
+ constructor(formBuilder, messageService) {
376
+ this.formBuilder = formBuilder;
377
+ this.messageService = messageService;
378
+ this.loading = false;
379
+ this.submitted = false;
380
+ this.systems = [];
381
+ this.selectedSystems = [];
382
+ this.sendForm = new EventEmitter();
383
+ this.systemContainPm = true;
384
+ this.showPm = false;
385
+ }
386
+ ngOnChanges() {
387
+ this.reasons = this.reasons.filter(x => (x.code == ReasonCode.SDI || x.code == ReasonCode.OTH));
388
+ this.selectPM(this.selectedSystem);
389
+ this.loadForm();
390
+ console.log('changed');
391
+ }
392
+ // convenience getter for easy access to form fields
393
+ get f() {
394
+ return this.form.controls;
395
+ }
396
+ preventStringKeypress(event) {
397
+ if (isNaN(Number(String.fromCharCode(event.charCode))) ||
398
+ String.fromCharCode(event.charCode) === ' ') {
399
+ event.preventDefault();
400
+ }
401
+ }
402
+ onSubmit() {
403
+ this.submitted = true;
404
+ if (this.form.invalid) {
405
+ this.messageService.add({
406
+ severity: 'error',
407
+ summary: 'Error',
408
+ detail: 'The form is invalid',
409
+ });
410
+ return;
411
+ }
412
+ console.log(this.form.value.pms);
413
+ let detailedPmJob = {};
414
+ detailedPmJob.name = this.form.value.name;
415
+ detailedPmJob.phone = this.form.value.phone;
416
+ detailedPmJob.email = this.form.value.email;
417
+ detailedPmJob.reason = this.form.value.reason.name;
418
+ detailedPmJob.comment = this.form.value.message;
419
+ if (this.form.value.pms !== undefined) {
420
+ detailedPmJob.pmJob = this.form.value.pms;
421
+ }
422
+ detailedPmJob.systemName = this.selectedSystem.name;
423
+ detailedPmJob.systemId = this.selectedSystem.systemId;
424
+ detailedPmJob.siteName = this.selectedSystem.siteName;
425
+ detailedPmJob.siteCity = this.selectedSystem.siteCity;
426
+ detailedPmJob.sitePostalCode = this.selectedSystem.sitePostalCode;
427
+ detailedPmJob.toUpdate = true;
428
+ if (this.form.value.pms !== undefined) {
429
+ detailedPmJob.selectedDate = detailedPmJob.pmJob.startDateTime;
430
+ }
431
+ detailedPmJob.reasonContact = ReasonContact.Contact;
432
+ detailedPmJob.futureStatus = this.slectsFutureStatus(this.form.value.reason.code);
433
+ console.log();
434
+ this.sendForm.emit(detailedPmJob);
435
+ }
436
+ slectsFutureStatus(status) {
437
+ switch (status) {
438
+ case ReasonCode.MPM: return PmJobStatus.WAITING;
439
+ case ReasonCode.RPM: return PmJobStatus.REPORTED;
440
+ case ReasonCode.CPM: return PmJobStatus.CANCELLED;
441
+ case ReasonCode.SDI: return PmJobStatus.DESINSTALLED;
442
+ case ReasonCode.OTH: return PmJobStatus.OTHER;
443
+ default: return "Erreur";
444
+ }
445
+ }
446
+ loadForm() {
447
+ let name = sessionStorage.getItem('userName');
448
+ let email = sessionStorage.getItem('email');
449
+ let phone = sessionStorage.getItem('mobilePhoneNumber');
450
+ this.form = this.formBuilder.group({
451
+ name: [name !== 'null' ? name : '', [Validators.required, Validators.minLength(3)]],
452
+ email: [email !== 'null' ? email : '', [Validators.required, Validators.email]],
453
+ phone: [phone !== 'null' ? phone : '', [Validators.required]],
454
+ reason: ['', [Validators.required]],
455
+ systems: [[], [Validators.required]],
456
+ pms: [[], this.showPm ? [] : []],
457
+ message: ['', [Validators.required, Validators.minLength(15)]],
458
+ });
459
+ }
460
+ selectPM(selectedSystem) {
461
+ console.log(selectedSystem);
462
+ this.systemContainPm = true;
463
+ if (selectedSystem === undefined) {
464
+ return;
465
+ }
466
+ else {
467
+ if (selectedSystem.pmJobs.length === 0) {
468
+ this.showPm = false;
469
+ }
470
+ else {
471
+ this.selectedSystem = selectedSystem;
472
+ this.pmJobs = selectedSystem.pmJobs;
473
+ this.showPm = true;
474
+ }
475
+ }
476
+ }
477
+ }
478
+ ContactComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContactComponent, deps: [{ token: i1$4.FormBuilder }, { token: i1$3.MessageService }], target: i0.ɵɵFactoryTarget.Component });
479
+ ContactComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ContactComponent, selector: "awf-contact", inputs: { loading: "loading", submitted: "submitted", systems: "systems", selectedSystems: "selectedSystems", translate: "translate", reasons: "reasons" }, outputs: { sendForm: "sendForm" }, providers: [MessageService], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"translate && reasons \">\r\n <section class=\"pt-0\">\r\n <div class=\"app-section-header-img\">\r\n <div class=\"container pt-4\">\r\n <div class=\"\">\r\n <h2>{{translate.title}} </h2>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n <section class=\"py-5 background-light\">\r\n <div class=\"container px-lg-5\">\r\n <div class=\"row align-items-center\">\r\n <div class=\"col-md-6\">\r\n <div class=\"container-contact100\">\r\n <div class=\"wrap-contact100\">\r\n <form [formGroup]=\"form\" *ngIf=\"form && systems && reasons\" class=\"contact100-form validate-form\">\r\n <span class=\"contact100-form-title\">{{translate.title}} </span>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderName}}</span> <span class=\"requis\">* </span>:\r\n <input [placeholder]=\"translate.placeholderName\" type=\"text\" pInputText formControlName=\"name\" [ngClass]=\"{ 'is-invalid': submitted && f.name.invalid }\">\r\n <div *ngIf=\"submitted && f.name.errors\">\r\n <div class=\"requis\" *ngIf=\"f.name.errors.required\">{{translate.requiredName}}</div>\r\n <div class=\"requis\" *ngIf=\"f.name.errors.minlength\">{{translate.requiredNameMin}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderEmail}}</span> <span class=\"requis\">*</span>:\r\n <input [placeholder]=\"translate.placeholderEmail\" type=\"text\" pInputText formControlName=\"email\" [ngClass]=\"{ 'is-invalid': submitted && f.email.invalid }\">\r\n <div *ngIf=\"submitted && f.email.errors\">\r\n <div class=\"requis\" *ngIf=\"f.email.errors.required\">{{translate.requiredEmail}}</div>\r\n <div class=\"requis\" *ngIf=\"f.email.errors.email\">{{translate.requiredEmailFormat}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderPhone}}</span> <span class=\"requis\">*</span>:\r\n <input [placeholder]=\"translate.placeholderPhone\" type=\"text\" pInputText formControlName=\"phone\" [ngClass]=\"{ 'is-invalid': submitted && f.phone.invalid }\" (keypress)=\"preventStringKeypress($event)\">\r\n <div *ngIf=\"submitted && f.phone.errors\">\r\n <div class=\"requis\" *ngIf=\"f.phone.errors.required\">{{translate.requiredPhone}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.RelatedSystems}}</span> <span class=\"requis\">*</span>:\r\n <p-dropdown (click)=\"selectPM(selectedSystem)\" [options]=\"systems\" [placeholder]=\"translate.selectSystem\" [(ngModel)]=\"selectedSystem\" [optionLabel]=\"'name'\" formControlName=\"systems\" optionDisabled=\"inactive\" [ngClass]=\"{ 'is-invalid': submitted && f.systems.invalid }\"></p-dropdown> \r\n \r\n <div *ngIf=\"submitted && f.systems.errors\">\r\n <div class=\"requis\" *ngIf=\"f.systems.errors.required\">{{translate.requiredSystem}}</div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\" *ngIf=\"showPm\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.RelatedPMs}}</span>:\r\n <p-dropdown [options]=\"pmJobs\" [placeholder]=\"translate.selectPM\" [(ngModel)]=\"selectedPm\" [optionLabel]=\"'workorderNumber'\" formControlName=\"pms\" optionDisabled=\"inactive\" [ngClass]=\"{ 'is-invalid': submitted && f.pms.invalid }\"></p-dropdown> \r\n <!-- <div *ngIf=\"submitted && f.pms.errors\">\r\n <div class=\"requis\" *ngIf=\"f.pms.errors.required\">{{translate.requiredPM }}</div>\r\n </div>-->\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.reason}}</span> <span class=\"requis\">*</span>:\r\n <p-dropdown [options]=\"reasons\" [placeholder]=\"translate.selectReason\" [(ngModel)]=\"selectedReason\" optionLabel=\"name\" formControlName=\"reason\" optionDisabled=\"inactive\" [ngClass]=\"{ 'is-invalid': submitted && f.reason.invalid }\"></p-dropdown>\r\n <!-- <input [placeholder]=\"translate.reason\" type=\"text\" pInputText formControlName=\"reason\" [ngClass]=\"{ 'is-invalid': submitted && f.reason.invalid }\"> -->\r\n <div *ngIf=\"submitted && f.reason.errors\">\r\n <div class=\"requis\" *ngIf=\"f.reason.errors.required\">{{translate.reasonRequired}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderMessage}} </span> <span class=\"requis\">*</span>:\r\n <textarea pInputTextarea style=\" min-height:100px;height:100%;width:100%;\" [placeholder]=\"translate.placeholderMessage +'...'\" formControlName=\"message\" [ngClass]=\"{ 'is-invalid': submitted && f.message.errors }\"></textarea>\r\n <div *ngIf=\"submitted && f.message.errors\">\r\n <div class=\"requis\" *ngIf=\"f.message.errors.required\">{{translate.requiredMessage}}</div>\r\n <div class=\"requis\" *ngIf=\"f.message.errors.minlength\">{{translate.requiredMessageMin}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <br>\r\n <br>\r\n <div class=\"container-contact100-form-btn\">\r\n <div class=\"wrap-contact100-form-btn\">\r\n <div class=\"contact100-form-bgbtn\"></div>\r\n <button class=\"btn-warranty mt-3\" (click)=\"onSubmit()\">\r\n {{translate.send}}\r\n </button>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-6 contact\">\r\n <iframe src=\"https://maps.google.com/maps?q=283,%20Rue%20De%20la%20Miniere-BP34%20%2078533%20BUC%20%E2%80%93%20Cedex&amp;t=&amp;z=13&amp;ie=UTF8&amp;iwloc=&amp;output=embed\" width=\"100%\" height=\"250\" style=\"border:0;\" allowfullscreen=\"\" loading=\"lazy\"></iframe>\r\n <h6 class=\"fs-4 mt-3\"> {{translate.information}}</h6>\r\n <section class=\"mb-4\">\r\n <div class=\"\">\r\n <i class=\"pi pi-envelope\"></i><label> &nbsp; {{translate.emailText}}</label>\r\n <p class=\"\">{{translate.email}} </p>\r\n </div>\r\n <div class=\" mt-4\">\r\n <i class=\"pi pi-map\"></i><label> &nbsp; {{translate.addressText}}</label>\r\n <p class=\"\">{{translate.adress}}</p>\r\n <p class=\"\">{{translate.town}}</p>\r\n <p class=\"\">{{translate.country}}</p>\r\n </div>\r\n </section>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </section>\r\n</div>\r\n\r\n<p-toast position=\"top-center\"></p-toast>\r\n", styles: ["h1,h2,h3,h4,h5,h6,p,span,label,::placeholder{font-family:var(--font)}.app-section-header-img{background-image:url(/assets/img/GEPortal/contact.png);background-repeat:no-repeat;background-size:cover;background-position:center center;display:flex;align-items:center;height:237px}@media (max-width: var(--smallscreen)){.app-section-header-img{height:auto}}.app-section-header-img h2{font-size:48px;font-family:var(--font);font-weight:600;color:#fff;text-align:center}@media (max-width: var(--smallscreen)){.app-section-header-img h2{font-size:30px}}@media (max-width: var(--smallscreen)){.app-section-header-img{padding-left:15px;padding-right:15px}}@media (max-width: var(--tinyscreen)){.app-section-header-img{height:200px}}h2{font-weight:600}a:focus{outline:none!important}a:hover{text-decoration:none}input{outline:none;border:none}input.input100{height:62px;padding:0 20px 0 58px}input[type=number]{appearance:none;-webkit-appearance:none}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}textarea{outline:none;border:none}textarea.input100{min-height:199px;padding:19px 20px 0 23px}textarea:focus,input:focus{border-color:transparent!important}.container-contact100{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;padding:15px}.wrap-contact100{width:550px;background:transparent;padding:30px 0 80px}.contact100-form-title{display:block;font-family:var(--font);font-size:30px;color:#43383e;line-height:1.2;text-align:left;padding-bottom:35px}.wrap-input100{width:100%;position:relative;background-color:#fff;margin-bottom:17px}.label-input100{display:flex;justify-content:center;align-items:center;width:58px;height:62px;position:absolute;top:0;left:0;cursor:pointer;font-size:18px;color:#999}.input100{display:block;width:100%;background:transparent;font-size:15px;color:#43383e;line-height:1.2;padding:0 5px}@media (max-width: var(--smallscreen)){.contact iframe{width:auto}}.contact label{margin-left:10px;color:#a2a2a2;font-weight:700}.contact i{color:#a2a2a2;font-weight:700}.contact .social li{display:inline;padding:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.InputText, selector: "[pInputText]" }, { kind: "component", type: i5.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i6.InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize"], outputs: ["onResize"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i7.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "overlayDirection", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "options", "filterValue"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }] });
480
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContactComponent, decorators: [{
481
+ type: Component,
482
+ args: [{ selector: 'awf-contact', providers: [MessageService], template: "<div *ngIf=\"translate && reasons \">\r\n <section class=\"pt-0\">\r\n <div class=\"app-section-header-img\">\r\n <div class=\"container pt-4\">\r\n <div class=\"\">\r\n <h2>{{translate.title}} </h2>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n <section class=\"py-5 background-light\">\r\n <div class=\"container px-lg-5\">\r\n <div class=\"row align-items-center\">\r\n <div class=\"col-md-6\">\r\n <div class=\"container-contact100\">\r\n <div class=\"wrap-contact100\">\r\n <form [formGroup]=\"form\" *ngIf=\"form && systems && reasons\" class=\"contact100-form validate-form\">\r\n <span class=\"contact100-form-title\">{{translate.title}} </span>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderName}}</span> <span class=\"requis\">* </span>:\r\n <input [placeholder]=\"translate.placeholderName\" type=\"text\" pInputText formControlName=\"name\" [ngClass]=\"{ 'is-invalid': submitted && f.name.invalid }\">\r\n <div *ngIf=\"submitted && f.name.errors\">\r\n <div class=\"requis\" *ngIf=\"f.name.errors.required\">{{translate.requiredName}}</div>\r\n <div class=\"requis\" *ngIf=\"f.name.errors.minlength\">{{translate.requiredNameMin}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderEmail}}</span> <span class=\"requis\">*</span>:\r\n <input [placeholder]=\"translate.placeholderEmail\" type=\"text\" pInputText formControlName=\"email\" [ngClass]=\"{ 'is-invalid': submitted && f.email.invalid }\">\r\n <div *ngIf=\"submitted && f.email.errors\">\r\n <div class=\"requis\" *ngIf=\"f.email.errors.required\">{{translate.requiredEmail}}</div>\r\n <div class=\"requis\" *ngIf=\"f.email.errors.email\">{{translate.requiredEmailFormat}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderPhone}}</span> <span class=\"requis\">*</span>:\r\n <input [placeholder]=\"translate.placeholderPhone\" type=\"text\" pInputText formControlName=\"phone\" [ngClass]=\"{ 'is-invalid': submitted && f.phone.invalid }\" (keypress)=\"preventStringKeypress($event)\">\r\n <div *ngIf=\"submitted && f.phone.errors\">\r\n <div class=\"requis\" *ngIf=\"f.phone.errors.required\">{{translate.requiredPhone}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.RelatedSystems}}</span> <span class=\"requis\">*</span>:\r\n <p-dropdown (click)=\"selectPM(selectedSystem)\" [options]=\"systems\" [placeholder]=\"translate.selectSystem\" [(ngModel)]=\"selectedSystem\" [optionLabel]=\"'name'\" formControlName=\"systems\" optionDisabled=\"inactive\" [ngClass]=\"{ 'is-invalid': submitted && f.systems.invalid }\"></p-dropdown> \r\n \r\n <div *ngIf=\"submitted && f.systems.errors\">\r\n <div class=\"requis\" *ngIf=\"f.systems.errors.required\">{{translate.requiredSystem}}</div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\" *ngIf=\"showPm\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.RelatedPMs}}</span>:\r\n <p-dropdown [options]=\"pmJobs\" [placeholder]=\"translate.selectPM\" [(ngModel)]=\"selectedPm\" [optionLabel]=\"'workorderNumber'\" formControlName=\"pms\" optionDisabled=\"inactive\" [ngClass]=\"{ 'is-invalid': submitted && f.pms.invalid }\"></p-dropdown> \r\n <!-- <div *ngIf=\"submitted && f.pms.errors\">\r\n <div class=\"requis\" *ngIf=\"f.pms.errors.required\">{{translate.requiredPM }}</div>\r\n </div>-->\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.reason}}</span> <span class=\"requis\">*</span>:\r\n <p-dropdown [options]=\"reasons\" [placeholder]=\"translate.selectReason\" [(ngModel)]=\"selectedReason\" optionLabel=\"name\" formControlName=\"reason\" optionDisabled=\"inactive\" [ngClass]=\"{ 'is-invalid': submitted && f.reason.invalid }\"></p-dropdown>\r\n <!-- <input [placeholder]=\"translate.reason\" type=\"text\" pInputText formControlName=\"reason\" [ngClass]=\"{ 'is-invalid': submitted && f.reason.invalid }\"> -->\r\n <div *ngIf=\"submitted && f.reason.errors\">\r\n <div class=\"requis\" *ngIf=\"f.reason.errors.required\">{{translate.reasonRequired}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderMessage}} </span> <span class=\"requis\">*</span>:\r\n <textarea pInputTextarea style=\" min-height:100px;height:100%;width:100%;\" [placeholder]=\"translate.placeholderMessage +'...'\" formControlName=\"message\" [ngClass]=\"{ 'is-invalid': submitted && f.message.errors }\"></textarea>\r\n <div *ngIf=\"submitted && f.message.errors\">\r\n <div class=\"requis\" *ngIf=\"f.message.errors.required\">{{translate.requiredMessage}}</div>\r\n <div class=\"requis\" *ngIf=\"f.message.errors.minlength\">{{translate.requiredMessageMin}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <br>\r\n <br>\r\n <div class=\"container-contact100-form-btn\">\r\n <div class=\"wrap-contact100-form-btn\">\r\n <div class=\"contact100-form-bgbtn\"></div>\r\n <button class=\"btn-warranty mt-3\" (click)=\"onSubmit()\">\r\n {{translate.send}}\r\n </button>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-6 contact\">\r\n <iframe src=\"https://maps.google.com/maps?q=283,%20Rue%20De%20la%20Miniere-BP34%20%2078533%20BUC%20%E2%80%93%20Cedex&amp;t=&amp;z=13&amp;ie=UTF8&amp;iwloc=&amp;output=embed\" width=\"100%\" height=\"250\" style=\"border:0;\" allowfullscreen=\"\" loading=\"lazy\"></iframe>\r\n <h6 class=\"fs-4 mt-3\"> {{translate.information}}</h6>\r\n <section class=\"mb-4\">\r\n <div class=\"\">\r\n <i class=\"pi pi-envelope\"></i><label> &nbsp; {{translate.emailText}}</label>\r\n <p class=\"\">{{translate.email}} </p>\r\n </div>\r\n <div class=\" mt-4\">\r\n <i class=\"pi pi-map\"></i><label> &nbsp; {{translate.addressText}}</label>\r\n <p class=\"\">{{translate.adress}}</p>\r\n <p class=\"\">{{translate.town}}</p>\r\n <p class=\"\">{{translate.country}}</p>\r\n </div>\r\n </section>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </section>\r\n</div>\r\n\r\n<p-toast position=\"top-center\"></p-toast>\r\n", styles: ["h1,h2,h3,h4,h5,h6,p,span,label,::placeholder{font-family:var(--font)}.app-section-header-img{background-image:url(/assets/img/GEPortal/contact.png);background-repeat:no-repeat;background-size:cover;background-position:center center;display:flex;align-items:center;height:237px}@media (max-width: var(--smallscreen)){.app-section-header-img{height:auto}}.app-section-header-img h2{font-size:48px;font-family:var(--font);font-weight:600;color:#fff;text-align:center}@media (max-width: var(--smallscreen)){.app-section-header-img h2{font-size:30px}}@media (max-width: var(--smallscreen)){.app-section-header-img{padding-left:15px;padding-right:15px}}@media (max-width: var(--tinyscreen)){.app-section-header-img{height:200px}}h2{font-weight:600}a:focus{outline:none!important}a:hover{text-decoration:none}input{outline:none;border:none}input.input100{height:62px;padding:0 20px 0 58px}input[type=number]{appearance:none;-webkit-appearance:none}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}textarea{outline:none;border:none}textarea.input100{min-height:199px;padding:19px 20px 0 23px}textarea:focus,input:focus{border-color:transparent!important}.container-contact100{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;padding:15px}.wrap-contact100{width:550px;background:transparent;padding:30px 0 80px}.contact100-form-title{display:block;font-family:var(--font);font-size:30px;color:#43383e;line-height:1.2;text-align:left;padding-bottom:35px}.wrap-input100{width:100%;position:relative;background-color:#fff;margin-bottom:17px}.label-input100{display:flex;justify-content:center;align-items:center;width:58px;height:62px;position:absolute;top:0;left:0;cursor:pointer;font-size:18px;color:#999}.input100{display:block;width:100%;background:transparent;font-size:15px;color:#43383e;line-height:1.2;padding:0 5px}@media (max-width: var(--smallscreen)){.contact iframe{width:auto}}.contact label{margin-left:10px;color:#a2a2a2;font-weight:700}.contact i{color:#a2a2a2;font-weight:700}.contact .social li{display:inline;padding:10px}\n"] }]
483
+ }], ctorParameters: function () { return [{ type: i1$4.FormBuilder }, { type: i1$3.MessageService }]; }, propDecorators: { loading: [{
484
+ type: Input
485
+ }], submitted: [{
486
+ type: Input
487
+ }], systems: [{
488
+ type: Input
489
+ }], selectedSystems: [{
490
+ type: Input
491
+ }], translate: [{
492
+ type: Input
493
+ }], reasons: [{
494
+ type: Input
495
+ }], sendForm: [{
496
+ type: Output
497
+ }] } });
498
+
499
+ class ChooseAnotherDateComponent {
500
+ constructor(messageService) {
501
+ this.messageService = messageService;
502
+ this.closeAnotherDate = new EventEmitter();
503
+ this.acceptDate = new EventEmitter();
504
+ this.dates = [];
505
+ this.datesRef = [];
506
+ this.show = false;
507
+ this.dateslength = 0;
508
+ this.indexSelectedDate = 0;
509
+ }
510
+ ngOnInit() {
511
+ this.loadDates();
512
+ }
513
+ ngOnChanges() { }
514
+ close() {
515
+ this.closeAnotherDate.emit(true);
516
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
517
+ }
518
+ accept() {
519
+ this.controlAlternativeDates();
520
+ this.acceptDate.emit(this.alternativeDatesList);
521
+ }
522
+ askDate() {
523
+ this.closeAnotherDate.emit(false);
524
+ }
525
+ controlAlternativeDates() {
526
+ let i = 0;
527
+ this.alternativeDatesList.forEach((item) => {
528
+ item.selected = (i === this.indexSelectedDate) ? "Yes" : "No";
529
+ i++;
530
+ });
531
+ }
532
+ loadDates() {
533
+ this.dates = [];
534
+ this.datesRef = [];
535
+ if (this.alternativeDatesList) {
536
+ this.alternativeDatesList.forEach((element) => {
537
+ this.dates.push(new Date(element.startDateTime));
538
+ this.datesRef.push(new Date(element.startDateTime));
539
+ });
540
+ }
541
+ this.dateslength = this.dates.length;
542
+ }
543
+ onSelect() {
544
+ if (this.dateslength < this.dates.length) {
545
+ this.loadDates();
546
+ }
547
+ else if (this.dateslength > this.dates.length) {
548
+ this.selectedDate = this.arrdiff(this.datesRef, this.dates)[0];
549
+ for (var i = 0; i < this.datesRef.length; i++) {
550
+ if (this.datesRef[i] == this.selectedDate) {
551
+ this.indexSelectedDate = i;
552
+ }
553
+ }
554
+ this.controlAlternativeDates();
555
+ this.accept();
556
+ this.loadDates();
557
+ }
558
+ this.dates;
559
+ }
560
+ arrdiff(a1, a2) {
561
+ var a = [], diff = [];
562
+ for (var i = 0; i < a1.length; i++) {
563
+ a[a1[i]] = true;
564
+ }
565
+ for (var i = 0; i < a2.length; i++) {
566
+ if (a[a2[i]]) {
567
+ delete a[a2[i]];
568
+ }
569
+ else {
570
+ a[a2[i]] = true;
571
+ }
572
+ }
573
+ for (var k in a) {
574
+ diff.push(k);
575
+ }
576
+ return diff;
577
+ }
578
+ }
579
+ ChooseAnotherDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ChooseAnotherDateComponent, deps: [{ token: i1$3.MessageService }], target: i0.ɵɵFactoryTarget.Component });
580
+ ChooseAnotherDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ChooseAnotherDateComponent, selector: "app-choose-another-date", inputs: { displayAnotherDate: "displayAnotherDate", globaltranslate: "globaltranslate", translate: "translate", alternativeDatesList: "alternativeDatesList" }, outputs: { closeAnotherDate: "closeAnotherDate", acceptDate: "acceptDate" }, viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<p-toast position=\"top-center\"></p-toast>\r\n<div>\r\n <p-dialog [header]=\"translate.text\" [(visible)]=\"displayAnotherDate\" [modal]=\"true\" [style]=\"{width: '2000px',height:'600px'}\" [draggable]=\"false\" [resizable]=\"false\" (onHide)=\"close()\">\r\n <p-calendar #calendar [(ngModel)]=\"dates\" selectionMode=\"multiple\" [numberOfMonths]=\"2\" [touchUI]=\"true\" [inline]=\"true\" inputId=\"multiplemonths\" (click)=\"onSelect()\"></p-calendar>\r\n <ng-template pTemplate=\"footer\">\r\n <p-button icon=\"pi pi-calendar-plus\" (click)=\"askDate()\" [label]=\"translate.ask\" class=\"p-button-text\"></p-button>\r\n </ng-template>\r\n </p-dialog>\r\n</div>", styles: [".p-datepicker table td.p-datepicker-today>span.p-highlight{color:#fff;background:var(--primarycolor)}\n"], dependencies: [{ kind: "directive", type: i1$3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i5.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$1.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "view", "defaultDate", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i4$2.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i5$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }], encapsulation: i0.ViewEncapsulation.None });
581
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ChooseAnotherDateComponent, decorators: [{
582
+ type: Component,
583
+ args: [{ selector: 'app-choose-another-date', encapsulation: ViewEncapsulation.None, template: "<p-toast position=\"top-center\"></p-toast>\r\n<div>\r\n <p-dialog [header]=\"translate.text\" [(visible)]=\"displayAnotherDate\" [modal]=\"true\" [style]=\"{width: '2000px',height:'600px'}\" [draggable]=\"false\" [resizable]=\"false\" (onHide)=\"close()\">\r\n <p-calendar #calendar [(ngModel)]=\"dates\" selectionMode=\"multiple\" [numberOfMonths]=\"2\" [touchUI]=\"true\" [inline]=\"true\" inputId=\"multiplemonths\" (click)=\"onSelect()\"></p-calendar>\r\n <ng-template pTemplate=\"footer\">\r\n <p-button icon=\"pi pi-calendar-plus\" (click)=\"askDate()\" [label]=\"translate.ask\" class=\"p-button-text\"></p-button>\r\n </ng-template>\r\n </p-dialog>\r\n</div>", styles: [".p-datepicker table td.p-datepicker-today>span.p-highlight{color:#fff;background:var(--primarycolor)}\n"] }]
584
+ }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { displayAnotherDate: [{
585
+ type: Input
586
+ }], globaltranslate: [{
587
+ type: Input
588
+ }], translate: [{
589
+ type: Input
590
+ }], alternativeDatesList: [{
591
+ type: Input
592
+ }], closeAnotherDate: [{
593
+ type: Output
594
+ }], acceptDate: [{
595
+ type: Output
596
+ }], calendar: [{
597
+ type: ViewChild,
598
+ args: ['calendar']
599
+ }] } });
600
+
601
+ class ConfirmDialogComponent {
602
+ constructor(messageService) {
603
+ this.messageService = messageService;
604
+ this.detailedPmJobLinkedList = [];
605
+ this.closeConfirmDialog = new EventEmitter();
606
+ }
607
+ rejectDate() {
608
+ this.closeConfirmDialog.emit(false);
609
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
610
+ }
611
+ confirmDate() {
612
+ this.closeConfirmDialog.emit(true);
613
+ }
614
+ }
615
+ ConfirmDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmDialogComponent, deps: [{ token: i1$3.MessageService }], target: i0.ɵɵFactoryTarget.Component });
616
+ ConfirmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ConfirmDialogComponent, selector: "app-confirm-dialog", inputs: { displayConfirmDialog: "displayConfirmDialog", startDateTime: "startDateTime", endDateTime: "endDateTime", globaltranslate: "globaltranslate", translate: "translate", isProposedDate: "isProposedDate", detailedPmJobLinkedList: "detailedPmJobLinkedList" }, outputs: { closeConfirmDialog: "closeConfirmDialog" }, ngImport: i0, template: "<p-dialog [header]=\"globaltranslate.confirmation\" [(visible)]=\"displayConfirmDialog\" [modal]=\"true\" [style]=\"{width: '50vw'}\" (onHide)=\"rejectDate()\" [maximizable]=\"true\" [baseZIndex]=\"10000\" [draggable]=\"false\" [resizable]=\"false\">\r\n \r\n <div>\r\n {{ isProposedDate ? translate.textProposed : translate.textAlternative }}\r\n <div>\r\n <br> <br>{{translate.start}} : <i class=\"pi pi-calendar\"></i> &nbsp; <strong>\r\n {{startDateTime | date: 'dd MMM yyyy'}} </strong> &nbsp; {{translate.from}}: <strong>08:00 </strong>\r\n <div *ngIf=\"detailedPmJobLinkedList.length>0\">\r\n <br> <p style=\"color:rgb(245, 57, 57) ;\"><strong>{{ translate.textWarn }}</strong></p>\r\n <ul>\r\n <strong><li *ngFor=\"let detailedPmJob of detailedPmJobLinkedList\">{{ detailedPmJob.pmJob.workorderNumber }}</li></strong>\r\n \r\n </ul>\r\n </div>\r\n <br><br>\r\n <p>{{translate.infoEmail}}</p>\r\n \r\n </div>\r\n \r\n </div>\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <p-button icon=\"pi pi-times\" (click)=\"rejectDate()\" class=\"annuler\" [label]=\"globaltranslate.no\"></p-button>\r\n <p-button icon=\"pi pi-check\" (click)=\"confirmDate()\" [label]=\"globaltranslate.yes\" class=\"p-button-text\"></p-button>\r\n </ng-template>\r\n</p-dialog>\r\n<p-toast position=\"top-center\"></p-toast>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i5.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "component", type: i4$2.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i5$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
617
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmDialogComponent, decorators: [{
618
+ type: Component,
619
+ args: [{ selector: 'app-confirm-dialog', template: "<p-dialog [header]=\"globaltranslate.confirmation\" [(visible)]=\"displayConfirmDialog\" [modal]=\"true\" [style]=\"{width: '50vw'}\" (onHide)=\"rejectDate()\" [maximizable]=\"true\" [baseZIndex]=\"10000\" [draggable]=\"false\" [resizable]=\"false\">\r\n \r\n <div>\r\n {{ isProposedDate ? translate.textProposed : translate.textAlternative }}\r\n <div>\r\n <br> <br>{{translate.start}} : <i class=\"pi pi-calendar\"></i> &nbsp; <strong>\r\n {{startDateTime | date: 'dd MMM yyyy'}} </strong> &nbsp; {{translate.from}}: <strong>08:00 </strong>\r\n <div *ngIf=\"detailedPmJobLinkedList.length>0\">\r\n <br> <p style=\"color:rgb(245, 57, 57) ;\"><strong>{{ translate.textWarn }}</strong></p>\r\n <ul>\r\n <strong><li *ngFor=\"let detailedPmJob of detailedPmJobLinkedList\">{{ detailedPmJob.pmJob.workorderNumber }}</li></strong>\r\n \r\n </ul>\r\n </div>\r\n <br><br>\r\n <p>{{translate.infoEmail}}</p>\r\n \r\n </div>\r\n \r\n </div>\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <p-button icon=\"pi pi-times\" (click)=\"rejectDate()\" class=\"annuler\" [label]=\"globaltranslate.no\"></p-button>\r\n <p-button icon=\"pi pi-check\" (click)=\"confirmDate()\" [label]=\"globaltranslate.yes\" class=\"p-button-text\"></p-button>\r\n </ng-template>\r\n</p-dialog>\r\n<p-toast position=\"top-center\"></p-toast>" }]
620
+ }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { displayConfirmDialog: [{
621
+ type: Input
622
+ }], startDateTime: [{
623
+ type: Input
624
+ }], endDateTime: [{
625
+ type: Input
626
+ }], globaltranslate: [{
627
+ type: Input
628
+ }], translate: [{
629
+ type: Input
630
+ }], isProposedDate: [{
631
+ type: Input
632
+ }], detailedPmJobLinkedList: [{
633
+ type: Input
634
+ }], closeConfirmDialog: [{
635
+ type: Output
636
+ }] } });
637
+
638
+ class ConfirmedDateInformationComponent {
639
+ constructor() {
640
+ this.closeConfirmedDateInfo = new EventEmitter();
641
+ }
642
+ confirmDate() {
643
+ this.closeConfirmedDateInfo.emit(true);
644
+ }
645
+ }
646
+ ConfirmedDateInformationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmedDateInformationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
647
+ ConfirmedDateInformationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ConfirmedDateInformationComponent, selector: "app-confirmed-date-information", inputs: { displayConfirmedDateInfo: "displayConfirmedDateInfo", startDateTime: "startDateTime", endDateTime: "endDateTime", globaltranslate: "globaltranslate", translate: "translate", moreDates: "moreDates" }, outputs: { closeConfirmedDateInfo: "closeConfirmedDateInfo" }, ngImport: i0, template: "<p-dialog [header]=\"globaltranslate.information\" [(visible)]=\"displayConfirmedDateInfo\" [modal]=\"true\" [style]=\"{width: '50vw'}\" (onHide)=\"confirmDate()\" [maximizable]=\"true\" [baseZIndex]=\"10000\" [draggable]=\"false\" [resizable]=\"false\">\r\n <i class=\"pi pi-check icon-check\"></i>\r\n\r\n \r\n <div *ngIf=\"moreDates\" style=\"text-align:center ;\">\r\n <br><br>\r\n {{translate.textMoreDates}}\r\n <br><br>\r\n\r\n </div>\r\n <div *ngIf=\"!moreDates\">\r\n <div class=\"text-center\">\r\n <p> {{translate.text }} <br> {{translate.start}} : <i class=\"pi pi-calendar\"></i> &nbsp; <strong>\r\n {{startDateTime | date: 'dd MMM yyyy'}}</strong> <br> {{translate.from}}: <strong>08:00 </strong> </p>\r\n </div>\r\n <br><br>\r\n <p>{{translate.infoEmail}}</p>\r\n\r\n </div>\r\n \r\n\r\n <ng-template pTemplate=\"footer\">\r\n <p-button icon=\"pi pi-times \" (click)=\"confirmDate()\" label=\"Close\" class=\" text-center d-block\"></p-button>\r\n </ng-template>\r\n</p-dialog>", styles: ["p-dialog p{font-size:14px;line-height:34px;margin-top:30px}p-dialog .icon-check{text-align:center;color:#fff;background:var(--primarycolor);width:80px;height:80px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:30px;font-weight:700;margin:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4$2.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i5$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
648
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmedDateInformationComponent, decorators: [{
649
+ type: Component,
650
+ args: [{ selector: 'app-confirmed-date-information', template: "<p-dialog [header]=\"globaltranslate.information\" [(visible)]=\"displayConfirmedDateInfo\" [modal]=\"true\" [style]=\"{width: '50vw'}\" (onHide)=\"confirmDate()\" [maximizable]=\"true\" [baseZIndex]=\"10000\" [draggable]=\"false\" [resizable]=\"false\">\r\n <i class=\"pi pi-check icon-check\"></i>\r\n\r\n \r\n <div *ngIf=\"moreDates\" style=\"text-align:center ;\">\r\n <br><br>\r\n {{translate.textMoreDates}}\r\n <br><br>\r\n\r\n </div>\r\n <div *ngIf=\"!moreDates\">\r\n <div class=\"text-center\">\r\n <p> {{translate.text }} <br> {{translate.start}} : <i class=\"pi pi-calendar\"></i> &nbsp; <strong>\r\n {{startDateTime | date: 'dd MMM yyyy'}}</strong> <br> {{translate.from}}: <strong>08:00 </strong> </p>\r\n </div>\r\n <br><br>\r\n <p>{{translate.infoEmail}}</p>\r\n\r\n </div>\r\n \r\n\r\n <ng-template pTemplate=\"footer\">\r\n <p-button icon=\"pi pi-times \" (click)=\"confirmDate()\" label=\"Close\" class=\" text-center d-block\"></p-button>\r\n </ng-template>\r\n</p-dialog>", styles: ["p-dialog p{font-size:14px;line-height:34px;margin-top:30px}p-dialog .icon-check{text-align:center;color:#fff;background:var(--primarycolor);width:80px;height:80px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:30px;font-weight:700;margin:auto}\n"] }]
651
+ }], ctorParameters: function () { return []; }, propDecorators: { displayConfirmedDateInfo: [{
652
+ type: Input
653
+ }], startDateTime: [{
654
+ type: Input
655
+ }], endDateTime: [{
656
+ type: Input
657
+ }], globaltranslate: [{
658
+ type: Input
659
+ }], translate: [{
660
+ type: Input
661
+ }], moreDates: [{
662
+ type: Input
663
+ }], closeConfirmedDateInfo: [{
664
+ type: Output
665
+ }] } });
666
+
667
+ class ContactSupportComponent {
668
+ constructor(messageService, formBuilder) {
669
+ this.messageService = messageService;
670
+ this.formBuilder = formBuilder;
671
+ this.sendDetailedPm = new EventEmitter();
672
+ this.sendForm = new EventEmitter();
673
+ this.closeContactSupport = new EventEmitter();
674
+ this.loading = false;
675
+ this.submitted = false;
676
+ this.displayNumber = false;
677
+ }
678
+ ngOnChanges(changes) {
679
+ this.loadDatas();
680
+ }
681
+ ngOnInit() {
682
+ this.loadDatas();
683
+ }
684
+ loadDatas() {
685
+ this.filterReasons();
686
+ this.setDateRules();
687
+ this.loadForm();
688
+ }
689
+ filterReasons() {
690
+ if (this.reasons && this.reasonContact === ReasonContact.MoreDatesFormPm) {
691
+ this.selectedReason = this.reasons[0];
692
+ this.reasons = this.reasons.filter(x => x.code === ReasonCode.MPM);
693
+ }
694
+ if (this.reasons && this.reasonContact === ReasonContact.CancelFormPm) {
695
+ this.selectedReason = this.reasons[2];
696
+ this.reasons = this.reasons.filter(x => x.code === ReasonCode.CPM);
697
+ }
698
+ if (this.detailedPmJob.status === PmJobStatus.DONE) {
699
+ this.reasons = this.reasons.filter(x => x.code === ReasonCode.OTH);
700
+ }
701
+ if (this.detailedPmJob.status === PmJobStatus.VALIDATED) {
702
+ this.reasons = this.reasons.filter(x => x.code !== ReasonCode.MPM);
703
+ }
704
+ }
705
+ cancelContactSupport() {
706
+ this.closeContactSupport.emit(true);
707
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
708
+ }
709
+ get f() {
710
+ return this.form.controls;
711
+ }
712
+ setDateRules() {
713
+ let today = new Date();
714
+ let month = today.getMonth();
715
+ let year = today.getFullYear();
716
+ let prevMonth = (month === 0) ? 11 : month - 1;
717
+ let prevYear = (prevMonth === 11) ? year - 1 : year;
718
+ this.minDate = new Date();
719
+ this.minDate.setMonth(month);
720
+ this.minDate.setFullYear(prevYear);
721
+ }
722
+ loadForm() {
723
+ let name = sessionStorage.getItem('userName');
724
+ let email = sessionStorage.getItem('email');
725
+ let phone = sessionStorage.getItem('mobilePhoneNumber');
726
+ this.form = this.formBuilder.group({
727
+ name: [name !== 'null' ? name : '', [Validators.required, Validators.minLength(3)]],
728
+ email: [email !== 'null' ? email : '', [Validators.required, Validators.email]],
729
+ phone: [phone !== 'null' ? phone : '', [Validators.required]],
730
+ reason: [{ value: '' }, [Validators.required]],
731
+ system: [{ value: this.detailedPmJob.systemName + ' ' + this.detailedPmJob.systemId, disabled: true }, [Validators.required]],
732
+ workOrder: [{ value: this.detailedPmJob.pmJob.workorderNumber, disabled: true }, [Validators.required]],
733
+ message: ['', (this.reasonContact === ReasonContact.MoreDatesFormPm) ? [] : [Validators.required, Validators.minLength(15)]],
734
+ });
735
+ }
736
+ contacted() {
737
+ this.sendContactMeEmailMethode();
738
+ }
739
+ contact() {
740
+ this.displayNumber = true;
741
+ }
742
+ closeNumber() {
743
+ this.displayNumber = false;
744
+ }
745
+ sendContactMeEmailMethode() {
746
+ this.detailedPmJob.name = this.form.value.name;
747
+ this.detailedPmJob.phone = this.form.value.phone;
748
+ this.detailedPmJob.email = this.form.value.email;
749
+ this.detailedPmJob.reason = (this.reasonContact === ReasonContact.MoreDatesFormPm) ? this.reasons[0].name : this.form.value.reason.name;
750
+ this.detailedPmJob.comment = this.form.value.message;
751
+ this.detailedPmJob.reasonContact = this.reasonContact;
752
+ this.detailedPmJob.futureStatus = this.slectsFutureStatus(this.form.value.reason.code);
753
+ this.sendDetailedPm.emit(this.detailedPmJob);
754
+ }
755
+ slectsFutureStatus(status) {
756
+ switch (status) {
757
+ case ReasonCode.MPM: return PmJobStatus.WAITING;
758
+ case ReasonCode.RPM: return PmJobStatus.REPORTED;
759
+ case ReasonCode.CPM: return PmJobStatus.CANCELLED;
760
+ case ReasonCode.SDI: return PmJobStatus.DESINSTALLED;
761
+ case ReasonCode.OTH: return PmJobStatus.OTHER;
762
+ default: return "Erreur";
763
+ }
764
+ }
765
+ onSubmit() {
766
+ this.submitted = true;
767
+ if (this.form.invalid) {
768
+ this.messageService.add({
769
+ severity: 'error',
770
+ summary: 'Error',
771
+ detail: 'The form is invalid',
772
+ });
773
+ return;
774
+ }
775
+ this.contacted();
776
+ }
777
+ preventStringKeypress(event) {
778
+ if (isNaN(Number(String.fromCharCode(event.charCode))) ||
779
+ String.fromCharCode(event.charCode) === ' ') {
780
+ event.preventDefault();
781
+ }
782
+ }
783
+ }
784
+ ContactSupportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContactSupportComponent, deps: [{ token: i1$3.MessageService }, { token: i1$4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
785
+ ContactSupportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ContactSupportComponent, selector: "app-contact-support", inputs: { displaycontactSupport: "displaycontactSupport", globaltranslate: "globaltranslate", translate: "translate", showDate: "showDate", detailedPmJob: "detailedPmJob", reasonContact: "reasonContact", reasons: "reasons" }, outputs: { sendDetailedPm: "sendDetailedPm", sendForm: "sendForm", closeContactSupport: "closeContactSupport" }, providers: [MessageService], usesOnChanges: true, ngImport: i0, template: "<p-dialog header=\"\" [modal]=\"true\" [(visible)]=\"displaycontactSupport\" [maximizable]=\"true\" [breakpoints]=\"{'960px': '75vw'}\" [style]=\"{width: '900px',height:'1400px'}\" [draggable]=\"false\" [resizable]=\"true\" (onHide)=\"cancelContactSupport()\">\r\n <strong>\r\n <h3 class=\"text-center title\"> {{translate.header}} </h3>\r\n </strong>\r\n <br>\r\n <div class=\"row\" *ngIf=\"translate && form && reasons \">\r\n \r\n <div class=\"col-md-6 card-bg\" >\r\n <div class=\"conteur contact-bloc\" [style]=\"{height:'150px'}\">\r\n <img class=\"d-block mx-auto\" src=\"assets/img/GEPortal/phone-call-.png\">\r\n <p class=\"counter contact-icon text-center mt-4\">{{translate.contacted}}</p>\r\n </div>\r\n <br>\r\n <form [formGroup]=\"form\" *ngIf=\"form\" class=\"contact100-form validate-form\">\r\n <span class=\"contact100-form-title\">{{translate.title}}</span>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderName}}</span> <span class=\"requis\">* </span>:\r\n <input [placeholder]=\"translate.placeholderName\" type=\"text\" pInputText formControlName=\"name\" [ngClass]=\"{ 'is-invalid': submitted && f.name.invalid }\">\r\n <div *ngIf=\"submitted && f.name.errors\">\r\n <div class=\"requis\" *ngIf=\"f.name.errors.required\">{{translate.requiredName}}</div>\r\n <div class=\"requis\" *ngIf=\"f.name.errors.minlength\">{{translate.requiredNameMin}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderEmail}}</span> <span class=\"requis\">*</span>:\r\n <input [placeholder]=\"translate.placeholderEmail\" type=\"text\" pInputText formControlName=\"email\" [ngClass]=\"{ 'is-invalid': submitted && f.email.invalid }\">\r\n <div *ngIf=\"submitted && f.email.errors\">\r\n <div class=\"requis\" *ngIf=\"f.email.errors.required\">{{translate.requiredEmail}}</div>\r\n <div class=\"requis\" *ngIf=\"f.email.errors.email\">{{translate.requiredEmailFormat}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderPhone}}</span> <span class=\"requis\">*</span>:\r\n <input [placeholder]=\"translate.placeholderPhone\" type=\"text\" pInputText formControlName=\"phone\" [ngClass]=\"{ 'is-invalid': submitted && f.phone.invalid }\" (keypress)=\"preventStringKeypress($event)\">\r\n <div *ngIf=\"submitted && f.phone.errors\">\r\n <div class=\"requis\" *ngIf=\"f.phone.errors.required\">{{translate.requiredPhone}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.system}}</span> <span class=\"requis\">*</span>:\r\n <input [placeholder]=\"translate.system\" type=\"text\" pInputText formControlName=\"system\" [ngClass]=\"{ 'is-invalid': submitted && f.system.invalid }\">\r\n <div *ngIf=\"submitted && f.system.errors\">\r\n <div class=\"requis\" *ngIf=\"f.system.errors?.required\">{{translate.required}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.workOrder}}</span> <span class=\"requis\"></span>:\r\n <input [placeholder]=\"translate.workOrder\" type=\"text\" pInputText formControlName=\"workOrder\" [ngClass]=\"{ 'is-invalid': submitted && f.workOrder.invalid }\">\r\n <div *ngIf=\"submitted && f.workOrder.errors\">\r\n <div class=\"requis\" *ngIf=\"f.workOrder.errors?.required\">{{translate.required}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.reason}}</span> <span class=\"requis\">*</span>:\r\n <p-dropdown [options]=\"reasons\" [placeholder]=\"translate.selectReason\" [(ngModel)]=\"selectedReason\" optionLabel=\"name\" formControlName=\"reason\" optionDisabled=\"inactive\" [ngClass]=\"{ 'is-invalid': submitted && f.reason.invalid }\"></p-dropdown>\r\n <!-- <input [placeholder]=\"translate.reason\" type=\"text\" pInputText formControlName=\"reason\" [ngClass]=\"{ 'is-invalid': submitted && f.reason.invalid }\"> -->\r\n <div *ngIf=\"submitted && f.reason.errors\">\r\n <div class=\"requis\" *ngIf=\"f.reason.errors.required\">{{translate.reasonRequired}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.message}} </span> <span *ngIf=\" reasonContact !=='MoreDatesFormPm'\" class=\"requis\">*</span>:\r\n <textarea pInputTextarea style=\" min-height:100px;height:100%;width:100%;\" [placeholder]=\"translate.message +'...'\" formControlName=\"message\" [ngClass]=\"{ 'is-invalid': submitted && f.message.errors }\"></textarea>\r\n <div *ngIf=\"submitted && f.message.errors\">\r\n <div class=\"requis\" *ngIf=\"f.message.errors.required\">{{translate.required}}</div>\r\n <div class=\"requis\" *ngIf=\"f.message.errors.minlength\">{{translate.requiredMessageMin}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <br>\r\n <br>\r\n <div class=\"container-contact100-form-btn\">\r\n <div class=\"wrap-contact100-form-btn\">\r\n <div class=\"contact100-form-bgbtn\"></div>\r\n <button pButton pRipple class=\"d-block mx-auto\" [label]=\"translate.accept\" icon=\"pi pi-thumbs-up\" [pTooltip]=\"translate.accept\" tooltipPosition=\"bottom\" (click)=\"onSubmit()\"></button>\r\n </div>\r\n </div>\r\n </form>\r\n <!-- <button pButton pRipple class=\"d-block mx-auto\" [label]=\"translate.accept\" icon=\"pi pi-thumbs-up\" [pTooltip]=\"translate.accept\" tooltipPosition=\"bottom\" (click)=\"contacted()\"></button> -->\r\n </div>\r\n <div class=\"col-md-6 card-bg\" >\r\n <div class=\"conteur contact-bloc\" [style]=\"{height:'150px'}\">\r\n <img class=\"d-block mx-auto\" src=\"assets/img/GEPortal/phone-called.png\">\r\n <p class=\"counter contact-icon text-center mt-4\">{{translate.contact}}</p>\r\n </div>\r\n <br>\r\n <button pButton pRipple class=\"d-block mx-auto\" [label]=\"translate.seeNumber\" icon=\"pi pi-eye\" [pTooltip]=\"translate.accept\" tooltipPosition=\"bottom\" (click)=\"contact()\"></button>\r\n <br>\r\n <iframe src=\"https://maps.google.com/maps?q=283,%20Rue%20De%20la%20Miniere-BP34%20%2078533%20BUC%20%E2%80%93%20Cedex&amp;t=&amp;z=13&amp;ie=UTF8&amp;iwloc=&amp;output=embed\" width=\"100%\" height=\"250\" style=\"border:0;\" allowfullscreen=\"\" loading=\"lazy\"></iframe>\r\n <h6 class=\"fs-4 mt-3\"> {{translate.information}}</h6>\r\n <section class=\"mb-4\">\r\n <div class=\"\">\r\n <i class=\"pi pi-envelope\"></i><label> &nbsp; {{translate.emailText}}</label>\r\n <p class=\"\">{{translate.email}} </p>\r\n </div>\r\n <div class=\" mt-4\">\r\n <i class=\"pi pi-map\"></i><label> &nbsp; {{translate.addressText}}</label>\r\n <p class=\"\">{{translate.adress}}</p>\r\n <p class=\"\">{{translate.town}}</p>\r\n <p class=\"\">{{translate.country}}</p>\r\n </div>\r\n </section>\r\n </div>\r\n </div>\r\n</p-dialog>\r\n<p-dialog *ngIf=\"translate\"[header]=\"translate.serviceCenterPhoneText\" [modal]=\"true\" [(visible)]=\"displayNumber\" [breakpoints]=\"{'960px': '75vw'}\" [style]=\"{width: '400px',height:'200px'}\" [draggable]=\"false\" [resizable]=\"false\" (onHide)=\"closeNumber()\">\r\n<br>\r\n <h4 class=\"number\"> <strong> <i class=\"pi pi-phone\"></i> &nbsp;{{translate.contactNumber}}</strong></h4>\r\n</p-dialog>\r\n\r\n\r\n<p-toast position=\"top-center\"></p-toast>", styles: [".contact-icon{font-weight:inherit;font-size:15px}.number{text-align:center;color:#0084ff}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.InputText, selector: "[pInputText]" }, { kind: "component", type: i5.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i6.InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize"], outputs: ["onResize"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i7$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "fitContent", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i4$2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i5$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "component", type: i7.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "overlayDirection", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "options", "filterValue"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }] });
786
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContactSupportComponent, decorators: [{
787
+ type: Component,
788
+ args: [{ selector: 'app-contact-support', providers: [MessageService], template: "<p-dialog header=\"\" [modal]=\"true\" [(visible)]=\"displaycontactSupport\" [maximizable]=\"true\" [breakpoints]=\"{'960px': '75vw'}\" [style]=\"{width: '900px',height:'1400px'}\" [draggable]=\"false\" [resizable]=\"true\" (onHide)=\"cancelContactSupport()\">\r\n <strong>\r\n <h3 class=\"text-center title\"> {{translate.header}} </h3>\r\n </strong>\r\n <br>\r\n <div class=\"row\" *ngIf=\"translate && form && reasons \">\r\n \r\n <div class=\"col-md-6 card-bg\" >\r\n <div class=\"conteur contact-bloc\" [style]=\"{height:'150px'}\">\r\n <img class=\"d-block mx-auto\" src=\"assets/img/GEPortal/phone-call-.png\">\r\n <p class=\"counter contact-icon text-center mt-4\">{{translate.contacted}}</p>\r\n </div>\r\n <br>\r\n <form [formGroup]=\"form\" *ngIf=\"form\" class=\"contact100-form validate-form\">\r\n <span class=\"contact100-form-title\">{{translate.title}}</span>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderName}}</span> <span class=\"requis\">* </span>:\r\n <input [placeholder]=\"translate.placeholderName\" type=\"text\" pInputText formControlName=\"name\" [ngClass]=\"{ 'is-invalid': submitted && f.name.invalid }\">\r\n <div *ngIf=\"submitted && f.name.errors\">\r\n <div class=\"requis\" *ngIf=\"f.name.errors.required\">{{translate.requiredName}}</div>\r\n <div class=\"requis\" *ngIf=\"f.name.errors.minlength\">{{translate.requiredNameMin}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderEmail}}</span> <span class=\"requis\">*</span>:\r\n <input [placeholder]=\"translate.placeholderEmail\" type=\"text\" pInputText formControlName=\"email\" [ngClass]=\"{ 'is-invalid': submitted && f.email.invalid }\">\r\n <div *ngIf=\"submitted && f.email.errors\">\r\n <div class=\"requis\" *ngIf=\"f.email.errors.required\">{{translate.requiredEmail}}</div>\r\n <div class=\"requis\" *ngIf=\"f.email.errors.email\">{{translate.requiredEmailFormat}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.placeholderPhone}}</span> <span class=\"requis\">*</span>:\r\n <input [placeholder]=\"translate.placeholderPhone\" type=\"text\" pInputText formControlName=\"phone\" [ngClass]=\"{ 'is-invalid': submitted && f.phone.invalid }\" (keypress)=\"preventStringKeypress($event)\">\r\n <div *ngIf=\"submitted && f.phone.errors\">\r\n <div class=\"requis\" *ngIf=\"f.phone.errors.required\">{{translate.requiredPhone}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.system}}</span> <span class=\"requis\">*</span>:\r\n <input [placeholder]=\"translate.system\" type=\"text\" pInputText formControlName=\"system\" [ngClass]=\"{ 'is-invalid': submitted && f.system.invalid }\">\r\n <div *ngIf=\"submitted && f.system.errors\">\r\n <div class=\"requis\" *ngIf=\"f.system.errors?.required\">{{translate.required}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.workOrder}}</span> <span class=\"requis\"></span>:\r\n <input [placeholder]=\"translate.workOrder\" type=\"text\" pInputText formControlName=\"workOrder\" [ngClass]=\"{ 'is-invalid': submitted && f.workOrder.invalid }\">\r\n <div *ngIf=\"submitted && f.workOrder.errors\">\r\n <div class=\"requis\" *ngIf=\"f.workOrder.errors?.required\">{{translate.required}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.reason}}</span> <span class=\"requis\">*</span>:\r\n <p-dropdown [options]=\"reasons\" [placeholder]=\"translate.selectReason\" [(ngModel)]=\"selectedReason\" optionLabel=\"name\" formControlName=\"reason\" optionDisabled=\"inactive\" [ngClass]=\"{ 'is-invalid': submitted && f.reason.invalid }\"></p-dropdown>\r\n <!-- <input [placeholder]=\"translate.reason\" type=\"text\" pInputText formControlName=\"reason\" [ngClass]=\"{ 'is-invalid': submitted && f.reason.invalid }\"> -->\r\n <div *ngIf=\"submitted && f.reason.errors\">\r\n <div class=\"requis\" *ngIf=\"f.reason.errors.required\">{{translate.reasonRequired}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid p-fluid p-mt-2\">\r\n <div class=\"p-col-12 p-md-12 \">\r\n <span class=\"titre\">{{translate.message}} </span> <span *ngIf=\" reasonContact !=='MoreDatesFormPm'\" class=\"requis\">*</span>:\r\n <textarea pInputTextarea style=\" min-height:100px;height:100%;width:100%;\" [placeholder]=\"translate.message +'...'\" formControlName=\"message\" [ngClass]=\"{ 'is-invalid': submitted && f.message.errors }\"></textarea>\r\n <div *ngIf=\"submitted && f.message.errors\">\r\n <div class=\"requis\" *ngIf=\"f.message.errors.required\">{{translate.required}}</div>\r\n <div class=\"requis\" *ngIf=\"f.message.errors.minlength\">{{translate.requiredMessageMin}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <br>\r\n <br>\r\n <div class=\"container-contact100-form-btn\">\r\n <div class=\"wrap-contact100-form-btn\">\r\n <div class=\"contact100-form-bgbtn\"></div>\r\n <button pButton pRipple class=\"d-block mx-auto\" [label]=\"translate.accept\" icon=\"pi pi-thumbs-up\" [pTooltip]=\"translate.accept\" tooltipPosition=\"bottom\" (click)=\"onSubmit()\"></button>\r\n </div>\r\n </div>\r\n </form>\r\n <!-- <button pButton pRipple class=\"d-block mx-auto\" [label]=\"translate.accept\" icon=\"pi pi-thumbs-up\" [pTooltip]=\"translate.accept\" tooltipPosition=\"bottom\" (click)=\"contacted()\"></button> -->\r\n </div>\r\n <div class=\"col-md-6 card-bg\" >\r\n <div class=\"conteur contact-bloc\" [style]=\"{height:'150px'}\">\r\n <img class=\"d-block mx-auto\" src=\"assets/img/GEPortal/phone-called.png\">\r\n <p class=\"counter contact-icon text-center mt-4\">{{translate.contact}}</p>\r\n </div>\r\n <br>\r\n <button pButton pRipple class=\"d-block mx-auto\" [label]=\"translate.seeNumber\" icon=\"pi pi-eye\" [pTooltip]=\"translate.accept\" tooltipPosition=\"bottom\" (click)=\"contact()\"></button>\r\n <br>\r\n <iframe src=\"https://maps.google.com/maps?q=283,%20Rue%20De%20la%20Miniere-BP34%20%2078533%20BUC%20%E2%80%93%20Cedex&amp;t=&amp;z=13&amp;ie=UTF8&amp;iwloc=&amp;output=embed\" width=\"100%\" height=\"250\" style=\"border:0;\" allowfullscreen=\"\" loading=\"lazy\"></iframe>\r\n <h6 class=\"fs-4 mt-3\"> {{translate.information}}</h6>\r\n <section class=\"mb-4\">\r\n <div class=\"\">\r\n <i class=\"pi pi-envelope\"></i><label> &nbsp; {{translate.emailText}}</label>\r\n <p class=\"\">{{translate.email}} </p>\r\n </div>\r\n <div class=\" mt-4\">\r\n <i class=\"pi pi-map\"></i><label> &nbsp; {{translate.addressText}}</label>\r\n <p class=\"\">{{translate.adress}}</p>\r\n <p class=\"\">{{translate.town}}</p>\r\n <p class=\"\">{{translate.country}}</p>\r\n </div>\r\n </section>\r\n </div>\r\n </div>\r\n</p-dialog>\r\n<p-dialog *ngIf=\"translate\"[header]=\"translate.serviceCenterPhoneText\" [modal]=\"true\" [(visible)]=\"displayNumber\" [breakpoints]=\"{'960px': '75vw'}\" [style]=\"{width: '400px',height:'200px'}\" [draggable]=\"false\" [resizable]=\"false\" (onHide)=\"closeNumber()\">\r\n<br>\r\n <h4 class=\"number\"> <strong> <i class=\"pi pi-phone\"></i> &nbsp;{{translate.contactNumber}}</strong></h4>\r\n</p-dialog>\r\n\r\n\r\n<p-toast position=\"top-center\"></p-toast>", styles: [".contact-icon{font-weight:inherit;font-size:15px}.number{text-align:center;color:#0084ff}\n"] }]
789
+ }], ctorParameters: function () { return [{ type: i1$3.MessageService }, { type: i1$4.FormBuilder }]; }, propDecorators: { displaycontactSupport: [{
790
+ type: Input
791
+ }], globaltranslate: [{
792
+ type: Input
793
+ }], translate: [{
794
+ type: Input
795
+ }], showDate: [{
796
+ type: Input
797
+ }], detailedPmJob: [{
798
+ type: Input
799
+ }], reasonContact: [{
800
+ type: Input
801
+ }], reasons: [{
802
+ type: Input
803
+ }], sendDetailedPm: [{
804
+ type: Output
805
+ }], sendForm: [{
806
+ type: Output
807
+ }], closeContactSupport: [{
808
+ type: Output
809
+ }] } });
810
+
811
+ var EmailType;
812
+ (function (EmailType) {
813
+ EmailType["Accepted_Clients"] = "Accepted_Clients";
814
+ EmailType["Accepted_CSC"] = "Accepted_CSC";
815
+ EmailType["CancelPM_Clients"] = "CancelPM_Clients";
816
+ EmailType["CancelPM_CSC"] = "CancelPM_CSC";
817
+ EmailType["ContactMe_Clients"] = "ContactMe_Clients";
818
+ EmailType["ContactMe_CSC"] = "ContactMe_CSC";
819
+ EmailType["ReportDate_Clients"] = "ReportDate_Clients";
820
+ EmailType["ReportDate_CSC"] = "ReportDate_CSC";
821
+ EmailType["SendNewDates_Clients"] = "SendNewDates_Clients";
822
+ EmailType["SendNewDates_CSC"] = "SendNewDates_CSC";
823
+ EmailType["DesynchroPM_CSC"] = "DesynchroPM_CSC";
824
+ })(EmailType || (EmailType = {}));
825
+
826
+ var EventStatus;
827
+ (function (EventStatus) {
828
+ EventStatus["ASSIGNEDANC"] = "Assigned ANC";
829
+ EventStatus["ASSIGNED"] = "Assigned";
830
+ EventStatus["ASSIGNEDPINNED"] = "Assigned Pinned";
831
+ EventStatus["COMPLETE"] = "Complete";
832
+ EventStatus["INCOMPLETE"] = "Incomplete";
833
+ })(EventStatus || (EventStatus = {}));
834
+
835
+ var StingBoolean;
836
+ (function (StingBoolean) {
837
+ StingBoolean["YES"] = "Yes";
838
+ StingBoolean["NO"] = "No";
839
+ })(StingBoolean || (StingBoolean = {}));
840
+
841
+ class ShowLinksComponent {
842
+ constructor() {
843
+ this.closeShowLinks = new EventEmitter();
844
+ this.detailedPmJobLinkedList = [];
845
+ this.header = "header";
846
+ this.header = "PM : " + this.selectedWorkorderId;
847
+ }
848
+ close() {
849
+ this.closeShowLinks.emit(false);
850
+ }
851
+ applyFilterGlobal($event, stringVal) {
852
+ var _a;
853
+ (_a = this.dt) === null || _a === void 0 ? void 0 : _a.filterGlobal($event.target.value, stringVal);
854
+ }
855
+ transformStatus(status) {
856
+ switch (status) {
857
+ case PmJobStatus.NEW: return this.status.new;
858
+ case PmJobStatus.ACCEPTED: return this.status.accepted;
859
+ case PmJobStatus.CLOSED: return this.status.closed;
860
+ case PmJobStatus.Late: return this.status.late;
861
+ case PmJobStatus.OPEN: return this.status.open;
862
+ case PmJobStatus.WAITING: return this.status.waiting;
863
+ case PmJobStatus.DONE: return this.status.done;
864
+ case PmJobStatus.VALIDATED: return this.status.validated;
865
+ default: return "Erreur";
866
+ }
867
+ }
868
+ getStatusTooltip(status) {
869
+ switch (status) {
870
+ case PmJobStatus.ACCEPTED: return this.status.acceptedTooltip;
871
+ case PmJobStatus.NEW: return this.status.newTooltip;
872
+ case PmJobStatus.CLOSED: return this.status.closedTooltip;
873
+ case PmJobStatus.Late: return this.status.lateTooltip;
874
+ case PmJobStatus.OPEN: return this.status.openTooltip;
875
+ case PmJobStatus.WAITING: return this.status.waitingTooltip;
876
+ case PmJobStatus.DONE: return this.status.doneTooltip;
877
+ case PmJobStatus.VALIDATED: return this.status.validatedTooltip;
878
+ default: return "Erreur";
879
+ }
880
+ }
881
+ transformType(type) {
882
+ if (type === "Planned Maintenance") {
883
+ return "Maintenance planifiée";
884
+ console.log("test");
885
+ }
886
+ console.log("test2");
887
+ return type;
888
+ }
889
+ }
890
+ ShowLinksComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ShowLinksComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
891
+ ShowLinksComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ShowLinksComponent, selector: "app-show-links", inputs: { displayShowLinks: "displayShowLinks", detailedPmJobLinkedList: "detailedPmJobLinkedList", selectedWorkorderId: "selectedWorkorderId", globaltranslate: "globaltranslate", translate: "translate", status: "status" }, outputs: { closeShowLinks: "closeShowLinks" }, viewQueries: [{ propertyName: "dt", first: true, predicate: ["dt"], descendants: true }], ngImport: i0, template: "<p-dialog [header]=\"translate.titleShowLinks+ selectedWorkorderId \" [(visible)]=\"displayShowLinks\" [modal]=\"true\" [style]=\"{width: '50vw'}\" (onHide)=\"close()\" [maximizable]=\"true\" [baseZIndex]=\"10000\" [draggable]=\"false\" [resizable]=\"false\">\r\n <p-table #dt [value]=\"detailedPmJobLinkedList\" responsiveLayout=\"stack\" [rows]=\"5\" [showCurrentPageReport]=\"false\" [rowsPerPageOptions]=\"[5,10,25,50]\" [paginator]=\"true\" [globalFilterFields]=\"['systemId','pmJob.caseId','systemName','pmJob.workorderNumber','pmJob.startDateTime','pmJob.endDateTime','pmJob.case_type','pmJob.case_category','status']\"\r\n [rowHover]=\"true\" dataKey=\"id\" [currentPageReportTemplate]=\"globaltranslate.countPages\">\r\n <ng-template pTemplate=\"caption\">\r\n <div>\r\n <span class=\"p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" (input)=\"applyFilterGlobal($event, 'contains')\"\r\n [placeholder]=\"globaltranslate.search\" />\r\n </span>\r\n </div>\r\n </ng-template>\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th pSortableColumn=\"systemName\">{{translate.maintenanceList.system}}\r\n <p-sortIcon field=\"systemId\"></p-sortIcon>\r\n <th pSortableColumn=\"systemId\">System Id\r\n <p-sortIcon field=\"systemName\"></p-sortIcon>\r\n <th pSortableColumn=\"workorderNumber\">{{translate.maintenanceList.workOrder}}\r\n <p-sortIcon field=\"workorderNumber\"></p-sortIcon>\r\n <th pSortableColumn=\"startDateTime\">{{translate.maintenanceList.startDate}}\r\n <p-sortIcon field=\"startDateTime\"></p-sortIcon>\r\n <th pSortableColumn=\"case_type\">{{translate.maintenanceList.type}}\r\n <p-sortIcon field=\"case_type\"></p-sortIcon>\r\n <th pSortableColumn=\"status\">{{translate.maintenanceList.status}}\r\n <p-sortIcon field=\"status\"></p-sortIcon>\r\n \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-product let-columns=\"columns\">\r\n <tr>\r\n <td>{{product.systemName }}</td>\r\n <td>{{product.systemId }}</td>\r\n <td>{{product.pmJob.workorderNumber }}</td>\r\n <td>{{product.pmJob.startDateTime | date: 'dd MMM yyyy' }}</td>\r\n <td>{{transformType(product.pmJob.caseType) }}</td>\r\n <td><span [class]=\"'product-status status-' + product.status\" [pTooltip]=\"getStatusTooltip(product.status)\">{{transformStatus(product.status) }}</span>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"summary\">\r\n <div class=\"p-d-flex p-ai-center p-jc-between\">\r\n {{globaltranslate.count}} {{detailedPmJobLinkedList ? detailedPmJobLinkedList.length : 0 }} {{globaltranslate.elements}}.\r\n </div>\r\n </ng-template>\r\n </p-table>\r\n\r\n</p-dialog>", styles: [""], dependencies: [{ kind: "component", type: i1$2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i1$3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i1$2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i1$2.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "directive", type: i4.InputText, selector: "[pInputText]" }, { kind: "directive", type: i7$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "fitContent", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i5$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
892
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ShowLinksComponent, decorators: [{
893
+ type: Component,
894
+ args: [{ selector: 'app-show-links', template: "<p-dialog [header]=\"translate.titleShowLinks+ selectedWorkorderId \" [(visible)]=\"displayShowLinks\" [modal]=\"true\" [style]=\"{width: '50vw'}\" (onHide)=\"close()\" [maximizable]=\"true\" [baseZIndex]=\"10000\" [draggable]=\"false\" [resizable]=\"false\">\r\n <p-table #dt [value]=\"detailedPmJobLinkedList\" responsiveLayout=\"stack\" [rows]=\"5\" [showCurrentPageReport]=\"false\" [rowsPerPageOptions]=\"[5,10,25,50]\" [paginator]=\"true\" [globalFilterFields]=\"['systemId','pmJob.caseId','systemName','pmJob.workorderNumber','pmJob.startDateTime','pmJob.endDateTime','pmJob.case_type','pmJob.case_category','status']\"\r\n [rowHover]=\"true\" dataKey=\"id\" [currentPageReportTemplate]=\"globaltranslate.countPages\">\r\n <ng-template pTemplate=\"caption\">\r\n <div>\r\n <span class=\"p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" (input)=\"applyFilterGlobal($event, 'contains')\"\r\n [placeholder]=\"globaltranslate.search\" />\r\n </span>\r\n </div>\r\n </ng-template>\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th pSortableColumn=\"systemName\">{{translate.maintenanceList.system}}\r\n <p-sortIcon field=\"systemId\"></p-sortIcon>\r\n <th pSortableColumn=\"systemId\">System Id\r\n <p-sortIcon field=\"systemName\"></p-sortIcon>\r\n <th pSortableColumn=\"workorderNumber\">{{translate.maintenanceList.workOrder}}\r\n <p-sortIcon field=\"workorderNumber\"></p-sortIcon>\r\n <th pSortableColumn=\"startDateTime\">{{translate.maintenanceList.startDate}}\r\n <p-sortIcon field=\"startDateTime\"></p-sortIcon>\r\n <th pSortableColumn=\"case_type\">{{translate.maintenanceList.type}}\r\n <p-sortIcon field=\"case_type\"></p-sortIcon>\r\n <th pSortableColumn=\"status\">{{translate.maintenanceList.status}}\r\n <p-sortIcon field=\"status\"></p-sortIcon>\r\n \r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-product let-columns=\"columns\">\r\n <tr>\r\n <td>{{product.systemName }}</td>\r\n <td>{{product.systemId }}</td>\r\n <td>{{product.pmJob.workorderNumber }}</td>\r\n <td>{{product.pmJob.startDateTime | date: 'dd MMM yyyy' }}</td>\r\n <td>{{transformType(product.pmJob.caseType) }}</td>\r\n <td><span [class]=\"'product-status status-' + product.status\" [pTooltip]=\"getStatusTooltip(product.status)\">{{transformStatus(product.status) }}</span>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"summary\">\r\n <div class=\"p-d-flex p-ai-center p-jc-between\">\r\n {{globaltranslate.count}} {{detailedPmJobLinkedList ? detailedPmJobLinkedList.length : 0 }} {{globaltranslate.elements}}.\r\n </div>\r\n </ng-template>\r\n </p-table>\r\n\r\n</p-dialog>" }]
895
+ }], ctorParameters: function () { return []; }, propDecorators: { dt: [{
896
+ type: ViewChild,
897
+ args: ['dt']
898
+ }], displayShowLinks: [{
899
+ type: Input
900
+ }], closeShowLinks: [{
901
+ type: Output
902
+ }], detailedPmJobLinkedList: [{
903
+ type: Input
904
+ }], selectedWorkorderId: [{
905
+ type: Input
906
+ }], globaltranslate: [{
907
+ type: Input
908
+ }], translate: [{
909
+ type: Input
910
+ }], status: [{
911
+ type: Input
912
+ }] } });
913
+
914
+ class ConfirmDialogContactComponent {
915
+ constructor(messageService) {
916
+ this.messageService = messageService;
917
+ this.detailedPmJobLinkedList = [];
918
+ this.closeConfirmDialogContact = new EventEmitter();
919
+ }
920
+ rejectDate() {
921
+ this.closeConfirmDialogContact.emit(false);
922
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
923
+ }
924
+ confirmDate() {
925
+ this.closeConfirmDialogContact.emit(true);
926
+ }
927
+ }
928
+ ConfirmDialogContactComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmDialogContactComponent, deps: [{ token: i1$3.MessageService }], target: i0.ɵɵFactoryTarget.Component });
929
+ ConfirmDialogContactComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ConfirmDialogContactComponent, selector: "app-confirm-dialog-contact", inputs: { displayConfirmDialogContact: "displayConfirmDialogContact", startDateTime: "startDateTime", endDateTime: "endDateTime", globaltranslate: "globaltranslate", translate: "translate", detailedPmJobLinkedList: "detailedPmJobLinkedList" }, outputs: { closeConfirmDialogContact: "closeConfirmDialogContact" }, ngImport: i0, template: "<p-dialog [header]=\"globaltranslate.confirmation\" [(visible)]=\"displayConfirmDialogContact\" [modal]=\"true\" [style]=\"{width: '50vw'}\" (onHide)=\"rejectDate()\" [maximizable]=\"true\" [baseZIndex]=\"10000\" [draggable]=\"false\" [resizable]=\"false\">\r\n {{ translate.text }}<br>\r\n <!-- <br>{{translate.start}} : <i class=\"pi pi-calendar\"></i> &nbsp; <strong>\r\n {{startDateTime | date: 'dd MMM yyyy'}} </strong> &nbsp; {{translate.from}}: <strong>08:00 </strong> -->\r\n <div *ngIf=\"detailedPmJobLinkedList.length>0\">\r\n <br> <p style=\"color:rgb(245, 57, 57) ;\"><strong>{{ translate.textWarn }}</strong></p>\r\n <ul>\r\n <strong><li *ngFor=\"let detailedPmJob of detailedPmJobLinkedList\">{{ detailedPmJob.pmJob.workorderNumber }}</li></strong>\r\n\r\n </ul>\r\n </div>\r\n <br><br>\r\n <!-- <p>{{translate.infoEmail}}</p> -->\r\n <ng-template pTemplate=\"footer\">\r\n <p-button icon=\"pi pi-times\" (click)=\"rejectDate()\" class=\"annuler\" [label]=\"globaltranslate.no\"></p-button>\r\n <p-button icon=\"pi pi-check\" (click)=\"confirmDate()\" [label]=\"globaltranslate.yes\" class=\"p-button-text\"></p-button>\r\n </ng-template>\r\n</p-dialog>\r\n<p-toast position=\"top-center\"></p-toast>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i5.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "component", type: i4$2.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i5$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }] });
930
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmDialogContactComponent, decorators: [{
931
+ type: Component,
932
+ args: [{ selector: 'app-confirm-dialog-contact', template: "<p-dialog [header]=\"globaltranslate.confirmation\" [(visible)]=\"displayConfirmDialogContact\" [modal]=\"true\" [style]=\"{width: '50vw'}\" (onHide)=\"rejectDate()\" [maximizable]=\"true\" [baseZIndex]=\"10000\" [draggable]=\"false\" [resizable]=\"false\">\r\n {{ translate.text }}<br>\r\n <!-- <br>{{translate.start}} : <i class=\"pi pi-calendar\"></i> &nbsp; <strong>\r\n {{startDateTime | date: 'dd MMM yyyy'}} </strong> &nbsp; {{translate.from}}: <strong>08:00 </strong> -->\r\n <div *ngIf=\"detailedPmJobLinkedList.length>0\">\r\n <br> <p style=\"color:rgb(245, 57, 57) ;\"><strong>{{ translate.textWarn }}</strong></p>\r\n <ul>\r\n <strong><li *ngFor=\"let detailedPmJob of detailedPmJobLinkedList\">{{ detailedPmJob.pmJob.workorderNumber }}</li></strong>\r\n\r\n </ul>\r\n </div>\r\n <br><br>\r\n <!-- <p>{{translate.infoEmail}}</p> -->\r\n <ng-template pTemplate=\"footer\">\r\n <p-button icon=\"pi pi-times\" (click)=\"rejectDate()\" class=\"annuler\" [label]=\"globaltranslate.no\"></p-button>\r\n <p-button icon=\"pi pi-check\" (click)=\"confirmDate()\" [label]=\"globaltranslate.yes\" class=\"p-button-text\"></p-button>\r\n </ng-template>\r\n</p-dialog>\r\n<p-toast position=\"top-center\"></p-toast>\r\n" }]
933
+ }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { displayConfirmDialogContact: [{
934
+ type: Input
935
+ }], startDateTime: [{
936
+ type: Input
937
+ }], endDateTime: [{
938
+ type: Input
939
+ }], globaltranslate: [{
940
+ type: Input
941
+ }], translate: [{
942
+ type: Input
943
+ }], detailedPmJobLinkedList: [{
944
+ type: Input
945
+ }], closeConfirmDialogContact: [{
946
+ type: Output
947
+ }] } });
948
+
949
+ class MaintenanceListComponent {
950
+ constructor(messageService) {
951
+ this.messageService = messageService;
952
+ this.maintenanceList = [];
953
+ this.maintenanceListNotDisplayed = [];
954
+ this.pmJobList = [];
955
+ this.displayConfirmedDateInfo = false;
956
+ this.emitForUpdate = new EventEmitter();
957
+ this.emitForAlternativeDates = new EventEmitter();
958
+ this.sendContactMeEmail = new EventEmitter();
959
+ this.sendForm = new EventEmitter();
960
+ this.detailedPmJobLinkedList = [];
961
+ this.alternativeDatesSelected = [];
962
+ this.displaycontactSupport = false;
963
+ this.displayConfirmDialog = false;
964
+ this.displayConfirmDialogContact = false;
965
+ this.displayShowLinks = false;
966
+ this.displayAnotherDate = false;
967
+ this.isWithLinks = false;
968
+ this.isProposedDate = true;
969
+ this.reasonContact = "";
970
+ this.first = 0;
971
+ }
972
+ ngOnChanges(changes) {
973
+ this.first = 0;
974
+ console.log("hello");
975
+ }
976
+ ngOnDestroy() {
977
+ if (this.updatePmSubscription) {
978
+ this.updatePmSubscription.unsubscribe();
979
+ }
980
+ if (this.alternativeDatesSubscription) {
981
+ this.alternativeDatesSubscription.unsubscribe();
982
+ }
983
+ }
984
+ applyFilterGlobal($event, stringVal) {
985
+ var _a;
986
+ (_a = this.dt) === null || _a === void 0 ? void 0 : _a.filterGlobal($event.target.value, stringVal);
987
+ }
988
+ selectElement(element) {
989
+ var _a;
990
+ this.alternativeDatesList = null;
991
+ this.emailTypes = [];
992
+ if (element) {
993
+ this.pmSelectedStatus = element.status;
994
+ }
995
+ if (element.pmJob.groupList) {
996
+ this.isWithLinks = ((_a = element.pmJob.groupList) === null || _a === void 0 ? void 0 : _a.length) > 0 ? true : false;
997
+ }
998
+ this.selectedWorkorderId = element.pmJob.workorderNumber;
999
+ this.maintenanceSelected = element;
1000
+ this.maintenanceSelected.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1001
+ if (!this.isAlreadyScheduled) {
1002
+ this.getAlternativeDates(element.pmJob);
1003
+ }
1004
+ this.startDateTime = this.maintenanceSelected.pmJob.startDateTime;
1005
+ this.endDateTime = this.maintenanceSelected.pmJob.endDateTime;
1006
+ this.getLinkedPmJob();
1007
+ }
1008
+ getAlternativeDates(pmJob) {
1009
+ this.emitForAlternativeDates.emit(pmJob);
1010
+ }
1011
+ getLinkedPmJob() {
1012
+ this.detailedPmJobLinkedList = [];
1013
+ if (this.maintenanceSelected.pmJob.groupList) {
1014
+ this.maintenanceSelected.pmJob.groupList.forEach((linked) => {
1015
+ this.maintenanceList.forEach((item) => {
1016
+ if (linked.workorderId === item.pmJob.workorderId) {
1017
+ this.detailedPmJobLinkedList.push(item);
1018
+ }
1019
+ });
1020
+ });
1021
+ }
1022
+ // if the linked PM in the other maintenance list not selected
1023
+ if (this.maintenanceSelected.pmJob.groupList && (this.maintenanceSelected.pmJob.groupList.length !== this.detailedPmJobLinkedList.length)) {
1024
+ this.maintenanceSelected.pmJob.groupList.forEach((linked) => {
1025
+ this.maintenanceListNotDisplayed.forEach((item) => {
1026
+ item.toUpdate = false;
1027
+ if (linked.workorderId === item.pmJob.workorderId) {
1028
+ this.detailedPmJobLinkedList.push(item);
1029
+ }
1030
+ });
1031
+ });
1032
+ }
1033
+ }
1034
+ confirmDialog() {
1035
+ this.isProposedDate = true;
1036
+ this.op.hide();
1037
+ this.displayConfirmDialog = true;
1038
+ }
1039
+ closeConfirmDialog(confirm) {
1040
+ this.displayConfirmDialog = false;
1041
+ this.maintenanceSelected.futureStatus = PmJobStatus.ACCEPTED;
1042
+ if (confirm) {
1043
+ if (!this.isProposedDate) {
1044
+ this.updateAlternativeDate();
1045
+ }
1046
+ else {
1047
+ this.updateProposedDate();
1048
+ }
1049
+ this.emailTypes.push(EmailType.Accepted_CSC);
1050
+ this.emailTypes.push(EmailType.Accepted_Clients);
1051
+ this.updatePmJob();
1052
+ }
1053
+ }
1054
+ closeConfirmDialogContact(confirm) {
1055
+ this.displayConfirmDialogContact = false;
1056
+ if (confirm) {
1057
+ this.emailTypes = [];
1058
+ if (this.reasonContact === ReasonContact.ContactFormPm) {
1059
+ this.emailTypes.push(EmailType.ContactMe_Clients);
1060
+ this.emailTypes.push(EmailType.ContactMe_CSC);
1061
+ }
1062
+ else if (this.reasonContact === ReasonContact.CancelFormPm) {
1063
+ this.maintenanceSelected.pmJob.customObject = {};
1064
+ this.maintenanceSelected.pmJob.customObject.customerWaiting = StingBoolean.YES;
1065
+ this.maintenanceSelected.futureStatus = PmJobStatus.WAITING;
1066
+ this.emailTypes.push(EmailType.CancelPM_CSC);
1067
+ this.emailTypes.push(EmailType.CancelPM_Clients);
1068
+ }
1069
+ else {
1070
+ this.maintenanceSelected.pmJob.customObject = {};
1071
+ this.maintenanceSelected.pmJob.customObject.customerWaiting = StingBoolean.YES;
1072
+ this.maintenanceSelected.futureStatus = PmJobStatus.WAITING;
1073
+ this.emailTypes.push(EmailType.SendNewDates_CSC);
1074
+ this.emailTypes.push(EmailType.SendNewDates_Clients);
1075
+ }
1076
+ this.updateLinkedPMFormContact();
1077
+ this.closeContactSupport(true);
1078
+ }
1079
+ }
1080
+ updateLinkedPMFormContact() {
1081
+ this.pmJobList = [];
1082
+ this.pmJobList.push(this.maintenanceSelected);
1083
+ if (this.detailedPmJobLinkedList.length > 0) {
1084
+ this.detailedPmJobLinkedList.forEach((item) => {
1085
+ item.futureStatus = item.status;
1086
+ item.selectedDate = item.pmJob.startDateTime;
1087
+ item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1088
+ if (this.reasonContact === ReasonContact.MoreDatesFormPm || this.reasonContact === ReasonContact.CancelFormPm) {
1089
+ item.reason = this.maintenanceSelected.reason;
1090
+ item.reasonContact = this.maintenanceSelected.reasonContact;
1091
+ item.pmJob.customObject = {};
1092
+ item.pmJob.customObject.customerWaiting = StingBoolean.YES;
1093
+ item.futureStatus = PmJobStatus.WAITING;
1094
+ }
1095
+ this.pmJobList.push(item);
1096
+ });
1097
+ }
1098
+ this.callApiToUpdate();
1099
+ }
1100
+ closeContactSupport(event) {
1101
+ this.displaycontactSupport = false;
1102
+ this.showDate = false;
1103
+ this.reasonContact = "";
1104
+ }
1105
+ proposeAnotherDate() {
1106
+ this.isProposedDate = false;
1107
+ this.op.hide();
1108
+ this.displayAnotherDate = true;
1109
+ }
1110
+ contactSupport(fromOtherDate) {
1111
+ this.op.hide();
1112
+ this.reasonContact = fromOtherDate ? ReasonContact.MoreDatesFormPm : ReasonContact.ContactFormPm;
1113
+ this.displaycontactSupport = true;
1114
+ }
1115
+ showLinks(element) {
1116
+ if (element) {
1117
+ this.selectElement(element);
1118
+ }
1119
+ this.op.hide();
1120
+ this.displayShowLinks = true;
1121
+ }
1122
+ closeShowLinks() {
1123
+ this.displayShowLinks = false;
1124
+ }
1125
+ closeConfirmedDateInfo() {
1126
+ this.displayConfirmedDateInfo = false;
1127
+ }
1128
+ acceptDate(alternativeDates) {
1129
+ this.displayConfirmDialog = true;
1130
+ this.alternativeDatesSelected = alternativeDates;
1131
+ this.findDatesSelected();
1132
+ }
1133
+ findDatesSelected() {
1134
+ this.alternativeDatesSelected.forEach((alternativeDate) => {
1135
+ if (alternativeDate.selected === "Yes") {
1136
+ this.startDateTime = alternativeDate.startDateTime;
1137
+ this.endDateTime = alternativeDate.endDateTime;
1138
+ this.maintenanceSelected.selectedDate = alternativeDate.startDateTime;
1139
+ return;
1140
+ }
1141
+ });
1142
+ }
1143
+ closeAnotherDate(event) {
1144
+ this.displayAnotherDate = false;
1145
+ if (event === false) {
1146
+ this.alreadyScheduledMsg = false;
1147
+ this.op.hide();
1148
+ this.contactSupport(true);
1149
+ }
1150
+ }
1151
+ updatePmJob() {
1152
+ this.pmJobList = [];
1153
+ this.pmJobList.push(this.maintenanceSelected);
1154
+ if (this.detailedPmJobLinkedList.length > 0) {
1155
+ this.detailedPmJobLinkedList.forEach((pMJob) => {
1156
+ this.pmJobList.push(pMJob);
1157
+ });
1158
+ }
1159
+ this.callApiToUpdate();
1160
+ }
1161
+ editPm() {
1162
+ this.alreadyScheduledMsg = true;
1163
+ this.op.hide();
1164
+ this.reasonContact = ReasonContact.CancelFormPm;
1165
+ this.prepareForPopup();
1166
+ this.displaycontactSupport = true;
1167
+ }
1168
+ prepareForPopup() {
1169
+ if (this.maintenanceSelected.pmJob.customerAccepted === "Yes") {
1170
+ this.startDateTime = this.maintenanceSelected.pmJob.startDateTime;
1171
+ this.endDateTime = this.maintenanceSelected.pmJob.endDateTime;
1172
+ }
1173
+ else {
1174
+ this.alternativeDatesSelected = this.maintenanceSelected.pmJob.alternativeDates;
1175
+ this.findDatesSelected();
1176
+ }
1177
+ }
1178
+ updateProposedDate() {
1179
+ this.maintenanceSelected.pmJob.customerAccepted = StingBoolean.YES;
1180
+ this.maintenanceSelected.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1181
+ this.detailedPmJobLinkedList.forEach((item) => {
1182
+ item.pmJob.customerAccepted = StingBoolean.YES;
1183
+ item.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1184
+ item.futureStatus = PmJobStatus.ACCEPTED;
1185
+ item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1186
+ });
1187
+ }
1188
+ updateAlternativeDate() {
1189
+ this.findDatesSelected();
1190
+ this.maintenanceSelected.pmJob.alternativeDates = this.alternativeDatesSelected;
1191
+ this.detailedPmJobLinkedList.forEach((item) => {
1192
+ item.pmJob.alternativeDates = this.alternativeDatesSelected;
1193
+ item.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1194
+ item.futureStatus = PmJobStatus.ACCEPTED;
1195
+ item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1196
+ });
1197
+ this.displayAnotherDate = false;
1198
+ }
1199
+ sendContactMeForm(contactMeRequest) {
1200
+ this.moreDates = false;
1201
+ if (contactMeRequest.reasonContact === ReasonContact.MoreDatesFormPm) {
1202
+ this.moreDates = true;
1203
+ }
1204
+ this.displayConfirmDialogContact = true;
1205
+ this.maintenanceSelected = contactMeRequest;
1206
+ }
1207
+ callApiToUpdate() {
1208
+ let PmJobListForUpdate = {};
1209
+ PmJobListForUpdate.pmJobList = this.pmJobList;
1210
+ PmJobListForUpdate.emailTypes = this.emailTypes;
1211
+ this.emitForUpdate.emit(PmJobListForUpdate);
1212
+ }
1213
+ transformType(type) {
1214
+ if (type === "Planned Maintenance") {
1215
+ return "Maintenance planifiée";
1216
+ console.log("test");
1217
+ }
1218
+ console.log("test2");
1219
+ return type;
1220
+ }
1221
+ transformStatus(status) {
1222
+ switch (status) {
1223
+ case PmJobStatus.NEW: return this.status.new;
1224
+ case PmJobStatus.ACCEPTED: return this.status.accepted;
1225
+ case PmJobStatus.CLOSED: return this.status.closed;
1226
+ case PmJobStatus.Late: return this.status.late;
1227
+ case PmJobStatus.OPEN: return this.status.open;
1228
+ case PmJobStatus.WAITING: return this.status.waiting;
1229
+ case PmJobStatus.DONE: return this.status.done;
1230
+ case PmJobStatus.VALIDATED: return this.status.validated;
1231
+ default: return "Erreur";
1232
+ }
1233
+ }
1234
+ getStatusTooltip(status) {
1235
+ switch (status) {
1236
+ case PmJobStatus.ACCEPTED: return this.status.acceptedTooltip;
1237
+ case PmJobStatus.NEW: return this.status.newTooltip;
1238
+ case PmJobStatus.CLOSED: return this.status.closedTooltip;
1239
+ case PmJobStatus.Late: return this.status.lateTooltip;
1240
+ case PmJobStatus.OPEN: return this.status.openTooltip;
1241
+ case PmJobStatus.WAITING: return this.status.waitingTooltip;
1242
+ case PmJobStatus.DONE: return this.status.doneTooltip;
1243
+ case PmJobStatus.VALIDATED: return this.status.validatedTooltip;
1244
+ default: return "Erreur";
1245
+ }
1246
+ }
1247
+ }
1248
+ MaintenanceListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MaintenanceListComponent, deps: [{ token: i1$3.MessageService }], target: i0.ɵɵFactoryTarget.Component });
1249
+ MaintenanceListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: MaintenanceListComponent, selector: "awf-maintenance-list", inputs: { translate: "translate", reasons: "reasons", globaltranslate: "globaltranslate", maintenanceList: "maintenanceList", maintenanceListNotDisplayed: "maintenanceListNotDisplayed", pmJobList: "pmJobList", isAlreadyScheduled: "isAlreadyScheduled", displayConfirmedDateInfo: "displayConfirmedDateInfo", alternativeDatesList: "alternativeDatesList", status: "status" }, outputs: { emitForUpdate: "emitForUpdate", emitForAlternativeDates: "emitForAlternativeDates", sendContactMeEmail: "sendContactMeEmail", sendForm: "sendForm" }, providers: [MessageService, ConfirmationService], viewQueries: [{ propertyName: "dt", first: true, predicate: ["dt"], descendants: true }, { propertyName: "op", first: true, predicate: ["op"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<p-table #dt [value]=\"maintenanceList\" responsiveLayout=\"stack\" [rows]=\"10\" [showCurrentPageReport]=\"true\" [rowsPerPageOptions]=\"[5,10,25,50]\" [paginator]=\"true\" [globalFilterFields]=\"['systemId','pmJob.caseId','systemName','pmJob.workorderNumber','pmJob.startDateTime','pmJob.endDateTime','pmJob.case_type','pmJob.case_category','status']\"\r\n [rowHover]=\"true\" dataKey=\"id\" [currentPageReportTemplate]=\"globaltranslate.countPages\" [first]=\"first\">\r\n <ng-template pTemplate=\"caption\">\r\n <div>\r\n <span class=\"p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" (input)=\"applyFilterGlobal($event, 'contains')\"\r\n [placeholder]=\"globaltranslate.search\" />\r\n </span>\r\n </div>\r\n </ng-template>\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <!-- <th pSortableColumn=\"caseId\">Case Id <p-sortIcon field=\"caseId\"></p-sortIcon> -->\r\n <th pSortableColumn=\"systemName\">{{translate.maintenanceList.system}}\r\n <p-sortIcon field=\"systemName\"></p-sortIcon>\r\n <th pSortableColumn=\"room\">{{translate.maintenanceList.room}}\r\n <p-sortIcon field=\"room\"></p-sortIcon>\r\n <th pSortableColumn=\"systemId\">System Id\r\n <p-sortIcon field=\"systemId\"></p-sortIcon>\r\n <th pSortableColumn=\"workorderNumber\">{{translate.maintenanceList.workOrder}}\r\n <p-sortIcon field=\"workorderNumber\"></p-sortIcon>\r\n <th pSortableColumn=\"startDateTime\">{{translate.maintenanceList.startDate}}\r\n <p-sortIcon field=\"startDateTime\"></p-sortIcon>\r\n <th pSortableColumn=\"case_type\">{{translate.maintenanceList.type}}\r\n <p-sortIcon field=\"case_type\"></p-sortIcon>\r\n <th pSortableColumn=\"status\">{{translate.maintenanceList.status}}\r\n <p-sortIcon field=\"status\"></p-sortIcon>\r\n <th pSortableColumn=\"status\" >{{translate.maintenanceList.NbrLinks}}\r\n <p-sortIcon field=\"status\"></p-sortIcon>\r\n <th> Action</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-product let-columns=\"columns\">\r\n <tr> \r\n <td>{{product.systemName }}</td>\r\n <td>{{product.room }}</td>\r\n <td>{{product.systemId }}</td>\r\n <td>{{product.pmJob.workorderNumber }}</td>\r\n <td>{{product.pmJob.startDateTime | date: 'dd MMM yyyy ' }}</td>\r\n <td>{{transformType(product.pmJob.caseType) }}</td>\r\n <td><span [class]=\"'product-status status-' + product.status\" [pTooltip]=\"getStatusTooltip(product.status)\">{{transformStatus(product.status) }}</span>\r\n </td>\r\n <td *ngIf=\"product.pmJob.groupList !== null \" (click)=\"showLinks(product)\"> <span class=\"circle\">{{product.pmJob.groupList.length }}</span> <i class=\"pi pi-link\" style=\"font-size: 1rem\"></i> </td>\r\n <td *ngIf=\"product.pmJob.groupList ===null\" (click)=\"showLinks(product)\"> <span class=\"circlelinked\">{{product.pmJob.groupList.length }}</span> <i class=\"pi pi-link\" style=\"font-size: 1rem\"></i> </td>\r\n <td>\r\n <button pButton pRipple type=\"button\" label=\"\" icon=\"pi pi-calendar\" class=\"p-button-rounded\" #actualTarget (click)=\"selectElement(product)\" (click)=\"op.toggle($event)\" [disabled]=\"((product.status ==='late' || product.status ==='accepted') && !isAlreadyScheduled) || product.status ==='waiting'\"></button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"summary\">\r\n <div class=\"p-d-flex p-ai-center p-jc-between\">\r\n {{globaltranslate.count}} {{maintenanceList ? maintenanceList.length : 0 }} {{globaltranslate.elements}}.\r\n </div>\r\n </ng-template>\r\n</p-table>\r\n\r\n<p-toast position=\"top-center\"></p-toast>\r\n<p-overlayPanel #op [dismissable]=\"true\" [showCloseIcon]=\"false\" [showTransitionOptions]=\"'0ms'\" [hideTransitionOptions]=\"'0ms'\">\r\n <ng-template pTemplate>\r\n\r\n <button style=\"width: 100%;\" *ngIf=\"!isAlreadyScheduled\" icon=\"pi pi-thumbs-up\" (click)=\"confirmDialog()\" [label]=\"translate.maintenanceList.confirmDate\" class=\"p-button-text p-button-raised\" pButton pRipple type=\"button\">\r\n </button>\r\n <hr *ngIf=\"!isAlreadyScheduled\">\r\n <button style=\"width: 100%;\" *ngIf=\"!isAlreadyScheduled && (alternativeDatesList !== null) \" icon=\"pi pi-calendar-plus\" (click)=\"proposeAnotherDate()\" [label]=\"translate.maintenanceList.chooseAnotherDate\" class=\"p-button-text p-button-raised\" pButton pRipple type=\"button\"></button>\r\n <hr *ngIf=\"!isAlreadyScheduled && (alternativeDatesList!==null) \">\r\n <button style=\"width: 100%;\" icon=\"pi pi-phone\" (click)=\"contactSupport(false)\" [label]=\"translate.maintenanceList.contactSuppor\" class=\"p-button-text p-button-raised\" pButton pRipple type=\"button\"></button>\r\n <hr *ngIf=\"isWithLinks\">\r\n <button style=\"width: 100%;\" icon=\"pi pi-link\" *ngIf=\"isWithLinks\" (click)=\"showLinks()\" [label]=\"translate.maintenanceList.showLinks\" class=\"p-button-text p-button-raised\" pButton pRipple type=\"button\"></button>\r\n <hr *ngIf=\"isAlreadyScheduled && pmSelectedStatus ==='validated'\">\r\n <button style=\"width: 100%;\" *ngIf=\"isAlreadyScheduled && pmSelectedStatus ==='validated'\" icon=\"pi pi-pencil\" (click)=\"editPm()\" [label]=\"translate.maintenanceList.cancel\" class=\"p-button-text p-button-raised\" pButton pRipple type=\"button\">\r\n </button>\r\n </ng-template>\r\n</p-overlayPanel>\r\n\r\n<div *ngIf=\"displaycontactSupport \" >\r\n <app-contact-support [reasonContact]=\"reasonContact\" (closeContactSupport)=\"closeContactSupport($event)\" (sendDetailedPm)=\"sendContactMeForm($event)\" [detailedPmJob] =\"maintenanceSelected\" [globaltranslate]=\"globaltranslate\" [reasons]=\"reasons\" [translate]=\"translate.contactSupport\" [displaycontactSupport]=\"displaycontactSupport\" [showDate]=\"showDate\" ></app-contact-support>\r\n</div>\r\n<div *ngIf=\"displayConfirmDialog\">\r\n <app-confirm-dialog [detailedPmJobLinkedList]=\"detailedPmJobLinkedList\" [isProposedDate]=\"isProposedDate\" [globaltranslate]=\"globaltranslate\" [translate]=\"translate.confirmDialog\"\r\n [startDateTime]=\"startDateTime\" [endDateTime]=\"endDateTime\" [displayConfirmDialog]=\"displayConfirmDialog\" (closeConfirmDialog)=\"closeConfirmDialog($event)\">\r\n </app-confirm-dialog>\r\n</div>\r\n<div *ngIf=\"displayConfirmDialogContact\">\r\n <app-confirm-dialog-contact [detailedPmJobLinkedList]=\"detailedPmJobLinkedList\" [globaltranslate]=\"globaltranslate\" [translate]=\"translate.confirmDialogContact\"\r\n [startDateTime]=\"startDateTime\" [endDateTime]=\"endDateTime\" [displayConfirmDialogContact]=\"displayConfirmDialogContact\" (closeConfirmDialogContact)=\"closeConfirmDialogContact($event)\">\r\n </app-confirm-dialog-contact >\r\n</div>\r\n<div *ngIf=\"displayConfirmedDateInfo\">\r\n <app-confirmed-date-information [moreDates]=\"moreDates\" [globaltranslate]=\"globaltranslate\" [translate]=\"translate.confirmDateInformation\" [startDateTime]=\"startDateTime\" [endDateTime]=\"endDateTime\" [displayConfirmedDateInfo]=\"displayConfirmedDateInfo\" (closeConfirmedDateInfo)=\"closeConfirmedDateInfo()\"></app-confirmed-date-information>\r\n</div>\r\n<div *ngIf=\"displayAnotherDate && alternativeDatesList\">\r\n <app-choose-another-date [globaltranslate]=\"globaltranslate\" [translate]=\"translate.chooseAnotherDate\" [alternativeDatesList]=\"alternativeDatesList\" [displayAnotherDate]=\"displayAnotherDate\" (closeAnotherDate)=\"closeAnotherDate($event)\" (acceptDate)=\"acceptDate($event)\">\r\n </app-choose-another-date>\r\n</div>\r\n<div *ngIf=\"displayShowLinks && selectedWorkorderId\">\r\n <app-show-links [status]=\"status\" [selectedWorkorderId]=\"selectedWorkorderId\" [translate]=\"translate\" [globaltranslate]=\"globaltranslate\" [displayShowLinks]=\"displayShowLinks\" (closeShowLinks)=\"closeShowLinks()\" [detailedPmJobLinkedList]=\"detailedPmJobLinkedList\"></app-show-links>\r\n</div>\r\n\r\n\r\n", styles: ["span.circle{background:#f86359;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%;color:#f8f8f8;display:inline-block;font-weight:700;line-height:20px;margin-right:5px;text-align:center;width:20px}span.circlelinked{background:#80a161;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%;color:#fff;display:inline-block;font-weight:700;line-height:20px;margin-right:5px;text-align:center;width:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i1$3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i1$2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i1$2.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "directive", type: i4.InputText, selector: "[pInputText]" }, { kind: "component", type: i5.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i7$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "fitContent", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i7$2.OverlayPanel, selector: "p-overlayPanel", inputs: ["dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i4$2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: ChooseAnotherDateComponent, selector: "app-choose-another-date", inputs: ["displayAnotherDate", "globaltranslate", "translate", "alternativeDatesList"], outputs: ["closeAnotherDate", "acceptDate"] }, { kind: "component", type: ConfirmDialogComponent, selector: "app-confirm-dialog", inputs: ["displayConfirmDialog", "startDateTime", "endDateTime", "globaltranslate", "translate", "isProposedDate", "detailedPmJobLinkedList"], outputs: ["closeConfirmDialog"] }, { kind: "component", type: ConfirmedDateInformationComponent, selector: "app-confirmed-date-information", inputs: ["displayConfirmedDateInfo", "startDateTime", "endDateTime", "globaltranslate", "translate", "moreDates"], outputs: ["closeConfirmedDateInfo"] }, { kind: "component", type: ContactSupportComponent, selector: "app-contact-support", inputs: ["displaycontactSupport", "globaltranslate", "translate", "showDate", "detailedPmJob", "reasonContact", "reasons"], outputs: ["sendDetailedPm", "sendForm", "closeContactSupport"] }, { kind: "component", type: ShowLinksComponent, selector: "app-show-links", inputs: ["displayShowLinks", "detailedPmJobLinkedList", "selectedWorkorderId", "globaltranslate", "translate", "status"], outputs: ["closeShowLinks"] }, { kind: "component", type: ConfirmDialogContactComponent, selector: "app-confirm-dialog-contact", inputs: ["displayConfirmDialogContact", "startDateTime", "endDateTime", "globaltranslate", "translate", "detailedPmJobLinkedList"], outputs: ["closeConfirmDialogContact"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
1250
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MaintenanceListComponent, decorators: [{
1251
+ type: Component,
1252
+ args: [{ selector: 'awf-maintenance-list', providers: [MessageService, ConfirmationService], template: "<p-table #dt [value]=\"maintenanceList\" responsiveLayout=\"stack\" [rows]=\"10\" [showCurrentPageReport]=\"true\" [rowsPerPageOptions]=\"[5,10,25,50]\" [paginator]=\"true\" [globalFilterFields]=\"['systemId','pmJob.caseId','systemName','pmJob.workorderNumber','pmJob.startDateTime','pmJob.endDateTime','pmJob.case_type','pmJob.case_category','status']\"\r\n [rowHover]=\"true\" dataKey=\"id\" [currentPageReportTemplate]=\"globaltranslate.countPages\" [first]=\"first\">\r\n <ng-template pTemplate=\"caption\">\r\n <div>\r\n <span class=\"p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" (input)=\"applyFilterGlobal($event, 'contains')\"\r\n [placeholder]=\"globaltranslate.search\" />\r\n </span>\r\n </div>\r\n </ng-template>\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <!-- <th pSortableColumn=\"caseId\">Case Id <p-sortIcon field=\"caseId\"></p-sortIcon> -->\r\n <th pSortableColumn=\"systemName\">{{translate.maintenanceList.system}}\r\n <p-sortIcon field=\"systemName\"></p-sortIcon>\r\n <th pSortableColumn=\"room\">{{translate.maintenanceList.room}}\r\n <p-sortIcon field=\"room\"></p-sortIcon>\r\n <th pSortableColumn=\"systemId\">System Id\r\n <p-sortIcon field=\"systemId\"></p-sortIcon>\r\n <th pSortableColumn=\"workorderNumber\">{{translate.maintenanceList.workOrder}}\r\n <p-sortIcon field=\"workorderNumber\"></p-sortIcon>\r\n <th pSortableColumn=\"startDateTime\">{{translate.maintenanceList.startDate}}\r\n <p-sortIcon field=\"startDateTime\"></p-sortIcon>\r\n <th pSortableColumn=\"case_type\">{{translate.maintenanceList.type}}\r\n <p-sortIcon field=\"case_type\"></p-sortIcon>\r\n <th pSortableColumn=\"status\">{{translate.maintenanceList.status}}\r\n <p-sortIcon field=\"status\"></p-sortIcon>\r\n <th pSortableColumn=\"status\" >{{translate.maintenanceList.NbrLinks}}\r\n <p-sortIcon field=\"status\"></p-sortIcon>\r\n <th> Action</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-product let-columns=\"columns\">\r\n <tr> \r\n <td>{{product.systemName }}</td>\r\n <td>{{product.room }}</td>\r\n <td>{{product.systemId }}</td>\r\n <td>{{product.pmJob.workorderNumber }}</td>\r\n <td>{{product.pmJob.startDateTime | date: 'dd MMM yyyy ' }}</td>\r\n <td>{{transformType(product.pmJob.caseType) }}</td>\r\n <td><span [class]=\"'product-status status-' + product.status\" [pTooltip]=\"getStatusTooltip(product.status)\">{{transformStatus(product.status) }}</span>\r\n </td>\r\n <td *ngIf=\"product.pmJob.groupList !== null \" (click)=\"showLinks(product)\"> <span class=\"circle\">{{product.pmJob.groupList.length }}</span> <i class=\"pi pi-link\" style=\"font-size: 1rem\"></i> </td>\r\n <td *ngIf=\"product.pmJob.groupList ===null\" (click)=\"showLinks(product)\"> <span class=\"circlelinked\">{{product.pmJob.groupList.length }}</span> <i class=\"pi pi-link\" style=\"font-size: 1rem\"></i> </td>\r\n <td>\r\n <button pButton pRipple type=\"button\" label=\"\" icon=\"pi pi-calendar\" class=\"p-button-rounded\" #actualTarget (click)=\"selectElement(product)\" (click)=\"op.toggle($event)\" [disabled]=\"((product.status ==='late' || product.status ==='accepted') && !isAlreadyScheduled) || product.status ==='waiting'\"></button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"summary\">\r\n <div class=\"p-d-flex p-ai-center p-jc-between\">\r\n {{globaltranslate.count}} {{maintenanceList ? maintenanceList.length : 0 }} {{globaltranslate.elements}}.\r\n </div>\r\n </ng-template>\r\n</p-table>\r\n\r\n<p-toast position=\"top-center\"></p-toast>\r\n<p-overlayPanel #op [dismissable]=\"true\" [showCloseIcon]=\"false\" [showTransitionOptions]=\"'0ms'\" [hideTransitionOptions]=\"'0ms'\">\r\n <ng-template pTemplate>\r\n\r\n <button style=\"width: 100%;\" *ngIf=\"!isAlreadyScheduled\" icon=\"pi pi-thumbs-up\" (click)=\"confirmDialog()\" [label]=\"translate.maintenanceList.confirmDate\" class=\"p-button-text p-button-raised\" pButton pRipple type=\"button\">\r\n </button>\r\n <hr *ngIf=\"!isAlreadyScheduled\">\r\n <button style=\"width: 100%;\" *ngIf=\"!isAlreadyScheduled && (alternativeDatesList !== null) \" icon=\"pi pi-calendar-plus\" (click)=\"proposeAnotherDate()\" [label]=\"translate.maintenanceList.chooseAnotherDate\" class=\"p-button-text p-button-raised\" pButton pRipple type=\"button\"></button>\r\n <hr *ngIf=\"!isAlreadyScheduled && (alternativeDatesList!==null) \">\r\n <button style=\"width: 100%;\" icon=\"pi pi-phone\" (click)=\"contactSupport(false)\" [label]=\"translate.maintenanceList.contactSuppor\" class=\"p-button-text p-button-raised\" pButton pRipple type=\"button\"></button>\r\n <hr *ngIf=\"isWithLinks\">\r\n <button style=\"width: 100%;\" icon=\"pi pi-link\" *ngIf=\"isWithLinks\" (click)=\"showLinks()\" [label]=\"translate.maintenanceList.showLinks\" class=\"p-button-text p-button-raised\" pButton pRipple type=\"button\"></button>\r\n <hr *ngIf=\"isAlreadyScheduled && pmSelectedStatus ==='validated'\">\r\n <button style=\"width: 100%;\" *ngIf=\"isAlreadyScheduled && pmSelectedStatus ==='validated'\" icon=\"pi pi-pencil\" (click)=\"editPm()\" [label]=\"translate.maintenanceList.cancel\" class=\"p-button-text p-button-raised\" pButton pRipple type=\"button\">\r\n </button>\r\n </ng-template>\r\n</p-overlayPanel>\r\n\r\n<div *ngIf=\"displaycontactSupport \" >\r\n <app-contact-support [reasonContact]=\"reasonContact\" (closeContactSupport)=\"closeContactSupport($event)\" (sendDetailedPm)=\"sendContactMeForm($event)\" [detailedPmJob] =\"maintenanceSelected\" [globaltranslate]=\"globaltranslate\" [reasons]=\"reasons\" [translate]=\"translate.contactSupport\" [displaycontactSupport]=\"displaycontactSupport\" [showDate]=\"showDate\" ></app-contact-support>\r\n</div>\r\n<div *ngIf=\"displayConfirmDialog\">\r\n <app-confirm-dialog [detailedPmJobLinkedList]=\"detailedPmJobLinkedList\" [isProposedDate]=\"isProposedDate\" [globaltranslate]=\"globaltranslate\" [translate]=\"translate.confirmDialog\"\r\n [startDateTime]=\"startDateTime\" [endDateTime]=\"endDateTime\" [displayConfirmDialog]=\"displayConfirmDialog\" (closeConfirmDialog)=\"closeConfirmDialog($event)\">\r\n </app-confirm-dialog>\r\n</div>\r\n<div *ngIf=\"displayConfirmDialogContact\">\r\n <app-confirm-dialog-contact [detailedPmJobLinkedList]=\"detailedPmJobLinkedList\" [globaltranslate]=\"globaltranslate\" [translate]=\"translate.confirmDialogContact\"\r\n [startDateTime]=\"startDateTime\" [endDateTime]=\"endDateTime\" [displayConfirmDialogContact]=\"displayConfirmDialogContact\" (closeConfirmDialogContact)=\"closeConfirmDialogContact($event)\">\r\n </app-confirm-dialog-contact >\r\n</div>\r\n<div *ngIf=\"displayConfirmedDateInfo\">\r\n <app-confirmed-date-information [moreDates]=\"moreDates\" [globaltranslate]=\"globaltranslate\" [translate]=\"translate.confirmDateInformation\" [startDateTime]=\"startDateTime\" [endDateTime]=\"endDateTime\" [displayConfirmedDateInfo]=\"displayConfirmedDateInfo\" (closeConfirmedDateInfo)=\"closeConfirmedDateInfo()\"></app-confirmed-date-information>\r\n</div>\r\n<div *ngIf=\"displayAnotherDate && alternativeDatesList\">\r\n <app-choose-another-date [globaltranslate]=\"globaltranslate\" [translate]=\"translate.chooseAnotherDate\" [alternativeDatesList]=\"alternativeDatesList\" [displayAnotherDate]=\"displayAnotherDate\" (closeAnotherDate)=\"closeAnotherDate($event)\" (acceptDate)=\"acceptDate($event)\">\r\n </app-choose-another-date>\r\n</div>\r\n<div *ngIf=\"displayShowLinks && selectedWorkorderId\">\r\n <app-show-links [status]=\"status\" [selectedWorkorderId]=\"selectedWorkorderId\" [translate]=\"translate\" [globaltranslate]=\"globaltranslate\" [displayShowLinks]=\"displayShowLinks\" (closeShowLinks)=\"closeShowLinks()\" [detailedPmJobLinkedList]=\"detailedPmJobLinkedList\"></app-show-links>\r\n</div>\r\n\r\n\r\n", styles: ["span.circle{background:#f86359;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%;color:#f8f8f8;display:inline-block;font-weight:700;line-height:20px;margin-right:5px;text-align:center;width:20px}span.circlelinked{background:#80a161;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%;color:#fff;display:inline-block;font-weight:700;line-height:20px;margin-right:5px;text-align:center;width:20px}\n"] }]
1253
+ }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { dt: [{
1254
+ type: ViewChild,
1255
+ args: ['dt']
1256
+ }], op: [{
1257
+ type: ViewChild,
1258
+ args: ['op']
1259
+ }], translate: [{
1260
+ type: Input
1261
+ }], reasons: [{
1262
+ type: Input
1263
+ }], globaltranslate: [{
1264
+ type: Input
1265
+ }], maintenanceList: [{
1266
+ type: Input
1267
+ }], maintenanceListNotDisplayed: [{
1268
+ type: Input
1269
+ }], pmJobList: [{
1270
+ type: Input
1271
+ }], isAlreadyScheduled: [{
1272
+ type: Input
1273
+ }], displayConfirmedDateInfo: [{
1274
+ type: Input
1275
+ }], alternativeDatesList: [{
1276
+ type: Input
1277
+ }], emitForUpdate: [{
1278
+ type: Output
1279
+ }], emitForAlternativeDates: [{
1280
+ type: Output
1281
+ }], sendContactMeEmail: [{
1282
+ type: Output
1283
+ }], status: [{
1284
+ type: Input
1285
+ }], sendForm: [{
1286
+ type: Output
1287
+ }] } });
1288
+
1289
+ const routes = [];
1290
+ class SharedRoutingModule {
1291
+ }
1292
+ SharedRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1293
+ SharedRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, imports: [i2.RouterModule], exports: [RouterModule] });
1294
+ SharedRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] });
1295
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, decorators: [{
1296
+ type: NgModule,
1297
+ args: [{
1298
+ imports: [RouterModule.forChild(routes)],
1299
+ exports: [RouterModule]
1300
+ }]
1301
+ }] });
1302
+
1303
+ class DashboardComponent {
1304
+ constructor() {
1305
+ this.toBeScheduledMaintenanceList = [];
1306
+ this.alreadyScheduledMaintenanceList = [];
1307
+ }
1308
+ ngOnChanges(changes) { }
1309
+ }
1310
+ DashboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: DashboardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1311
+ DashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: DashboardComponent, selector: "awf-dashboard", inputs: { name: "name", email: "email", number: "number", systems: "systems", toBeScheduledMaintenanceList: "toBeScheduledMaintenanceList", alreadyScheduledMaintenanceList: "alreadyScheduledMaintenanceList", translate: "translate" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"GE\">\r\n <div class=\"home\">\r\n <h3 class=\"title\">{{translate.title}}</h3>\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12 card-bg\" routerLink=\"./systems\">\r\n <div class=\"conteur\">\r\n <img class=\"d-block mx-auto\" height=\"60px\" src=\"assets/img/GEPortal/tools.png\">\r\n <h3 class=\"counter text-center mt-4\">{{systems.length}} &nbsp; {{translate.systems}}</h3>\r\n </div>\r\n </div>\r\n </div>\r\n <br>\r\n\r\n <div class=\"row\">\r\n <div class=\"col-md-12 card-bg\" routerLink=\"./maintenance\">\r\n <div class=\"conteur conteur bg--primary\">\r\n <img class=\"d-block mx-auto \" height=\"60px\" src=\"assets/img/GEPortal/calendar-check.png\">\r\n <h3 class=\"counter text-center mt-4\">{{toBeScheduledMaintenanceList.length}} &nbsp; {{translate.upComing}}</h3>\r\n </div>\r\n </div>\r\n <!-- <div class=\"col-md-6 card-bg\">\r\n <div class=\"d-block mx-auto conteur bg--primary\">\r\n <img class=\"d-block mx-auto\" height=\"60px\" src=\"assets/img/GEPortal/calendar-check.png\">\r\n <h3 class=\"counter text-center mt-4\"> {{alreadyScheduledMaintenanceList.length}} &nbsp; {{translate.toValidate}}</h3>\r\n </div>\r\n </div> -->\r\n </div>\r\n <div class=\"row mt-4\">\r\n <div class=\"col-md-12 card-bg\">\r\n <div class=\"conteur\">\r\n <h4> {{translate.upcoming}}</h4>\r\n <p-table [value]=\"toBeScheduledMaintenanceList\" responsiveLayout=\"scroll\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th>{{translate.name}}</th>\r\n <th>{{translate.systemId}}</th>\r\n <th>{{translate.workorderId}}</th>\r\n <th>{{translate.endDateTime}}</th>\r\n </tr>\r\n </ng-template> \r\n <ng-template pTemplate=\"body\" let-product>\r\n <tr>\r\n <td>{{product.systemName }}</td>\r\n <td>{{product.systemId }}</td>\r\n <td>{{product.pmJob.workorderNumber}}</td>\r\n <td>{{product.pmJob.endDateTime | date: 'dd MMM yyyy '}} </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-4\" >\r\n <div routerLink=\"./contact\" class=\"card- d-grid text-center justify-content-center align-items-center p-5\">\r\n <img src=\"assets/img/GEPortal/phone.png\" width=\"80px\" class=\"img-fluid mx-auto\">\r\n <h5 class=\"mt-5\">\u00A0{{ translate.contact}}</h5>\r\n </div>\r\n <div class=\"card- d-grid mt-4 p-4\">\r\n <h4>{{ translate.profil}}</h4>\r\n <div class=\"d-flex align-items-center mb-3 mt-4\"> <img src=\"assets/img/GEPortal/user.png\">\r\n <p>&nbsp;{{name}}</p>\r\n </div>\r\n <div class=\"d-flex align-items-center mb-3\"> <img src=\"assets/img/GEPortal/mail.png\">\r\n <p>&nbsp;{{email}}</p>\r\n </div>\r\n <!-- <div class=\"d-flex align-items-center mb-3\"> <img src=\"assets/img/GEPortal/map.png\">\r\n <p>31 rue marseille France</p>\r\n </div> -->\r\n <div class=\"d-flex align-items-center mb-3\"> <img src=\"assets/img/GEPortal/phone-call.png\">\r\n <p>&nbsp;{{number}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["h3.counter{font-size:20px}\n"], dependencies: [{ kind: "directive", type: i2.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i1$2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i1$3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
1312
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: DashboardComponent, decorators: [{
1313
+ type: Component,
1314
+ args: [{ selector: 'awf-dashboard', template: "<div class=\"GE\">\r\n <div class=\"home\">\r\n <h3 class=\"title\">{{translate.title}}</h3>\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12 card-bg\" routerLink=\"./systems\">\r\n <div class=\"conteur\">\r\n <img class=\"d-block mx-auto\" height=\"60px\" src=\"assets/img/GEPortal/tools.png\">\r\n <h3 class=\"counter text-center mt-4\">{{systems.length}} &nbsp; {{translate.systems}}</h3>\r\n </div>\r\n </div>\r\n </div>\r\n <br>\r\n\r\n <div class=\"row\">\r\n <div class=\"col-md-12 card-bg\" routerLink=\"./maintenance\">\r\n <div class=\"conteur conteur bg--primary\">\r\n <img class=\"d-block mx-auto \" height=\"60px\" src=\"assets/img/GEPortal/calendar-check.png\">\r\n <h3 class=\"counter text-center mt-4\">{{toBeScheduledMaintenanceList.length}} &nbsp; {{translate.upComing}}</h3>\r\n </div>\r\n </div>\r\n <!-- <div class=\"col-md-6 card-bg\">\r\n <div class=\"d-block mx-auto conteur bg--primary\">\r\n <img class=\"d-block mx-auto\" height=\"60px\" src=\"assets/img/GEPortal/calendar-check.png\">\r\n <h3 class=\"counter text-center mt-4\"> {{alreadyScheduledMaintenanceList.length}} &nbsp; {{translate.toValidate}}</h3>\r\n </div>\r\n </div> -->\r\n </div>\r\n <div class=\"row mt-4\">\r\n <div class=\"col-md-12 card-bg\">\r\n <div class=\"conteur\">\r\n <h4> {{translate.upcoming}}</h4>\r\n <p-table [value]=\"toBeScheduledMaintenanceList\" responsiveLayout=\"scroll\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th>{{translate.name}}</th>\r\n <th>{{translate.systemId}}</th>\r\n <th>{{translate.workorderId}}</th>\r\n <th>{{translate.endDateTime}}</th>\r\n </tr>\r\n </ng-template> \r\n <ng-template pTemplate=\"body\" let-product>\r\n <tr>\r\n <td>{{product.systemName }}</td>\r\n <td>{{product.systemId }}</td>\r\n <td>{{product.pmJob.workorderNumber}}</td>\r\n <td>{{product.pmJob.endDateTime | date: 'dd MMM yyyy '}} </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-4\" >\r\n <div routerLink=\"./contact\" class=\"card- d-grid text-center justify-content-center align-items-center p-5\">\r\n <img src=\"assets/img/GEPortal/phone.png\" width=\"80px\" class=\"img-fluid mx-auto\">\r\n <h5 class=\"mt-5\">\u00A0{{ translate.contact}}</h5>\r\n </div>\r\n <div class=\"card- d-grid mt-4 p-4\">\r\n <h4>{{ translate.profil}}</h4>\r\n <div class=\"d-flex align-items-center mb-3 mt-4\"> <img src=\"assets/img/GEPortal/user.png\">\r\n <p>&nbsp;{{name}}</p>\r\n </div>\r\n <div class=\"d-flex align-items-center mb-3\"> <img src=\"assets/img/GEPortal/mail.png\">\r\n <p>&nbsp;{{email}}</p>\r\n </div>\r\n <!-- <div class=\"d-flex align-items-center mb-3\"> <img src=\"assets/img/GEPortal/map.png\">\r\n <p>31 rue marseille France</p>\r\n </div> -->\r\n <div class=\"d-flex align-items-center mb-3\"> <img src=\"assets/img/GEPortal/phone-call.png\">\r\n <p>&nbsp;{{number}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["h3.counter{font-size:20px}\n"] }]
1315
+ }], ctorParameters: function () { return []; }, propDecorators: { name: [{
1316
+ type: Input
1317
+ }], email: [{
1318
+ type: Input
1319
+ }], number: [{
1320
+ type: Input
1321
+ }], systems: [{
1322
+ type: Input
1323
+ }], toBeScheduledMaintenanceList: [{
1324
+ type: Input
1325
+ }], alreadyScheduledMaintenanceList: [{
1326
+ type: Input
1327
+ }], translate: [{
1328
+ type: Input
1329
+ }] } });
1330
+
1331
+ class SharedModule {
1332
+ }
1333
+ SharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1334
+ SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, declarations: [SystemListComponent,
1335
+ ContactComponent,
1336
+ ChooseAnotherDateComponent,
1337
+ ConfirmDialogComponent,
1338
+ ConfirmedDateInformationComponent,
1339
+ ContactSupportComponent,
1340
+ MaintenanceListComponent,
1341
+ ShowLinksComponent,
1342
+ DashboardComponent,
1343
+ ConfirmDialogContactComponent], imports: [CommonModule,
1344
+ SharedRoutingModule,
1345
+ TableModule,
1346
+ InputTextModule,
1347
+ PipesModule,
1348
+ ToastModule,
1349
+ InputTextareaModule,
1350
+ MultiSelectModule,
1351
+ FormsModule,
1352
+ ReactiveFormsModule,
1353
+ ProgressSpinnerModule,
1354
+ RadioButtonModule,
1355
+ CheckboxModule,
1356
+ SelectButtonModule,
1357
+ TooltipModule,
1358
+ OverlayPanelModule,
1359
+ CalendarModule,
1360
+ SliderModule,
1361
+ DialogModule,
1362
+ ConfirmPopupModule,
1363
+ ConfirmDialogModule,
1364
+ ContextMenuModule,
1365
+ DropdownModule,
1366
+ ButtonModule,
1367
+ ToolbarModule], exports: [SystemListComponent, ContactComponent, MaintenanceListComponent, DashboardComponent] });
1368
+ SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, imports: [CommonModule,
1369
+ SharedRoutingModule,
1370
+ TableModule,
1371
+ InputTextModule,
1372
+ PipesModule,
1373
+ ToastModule,
1374
+ InputTextareaModule,
1375
+ MultiSelectModule,
1376
+ FormsModule,
1377
+ ReactiveFormsModule,
1378
+ ProgressSpinnerModule,
1379
+ RadioButtonModule,
1380
+ CheckboxModule,
1381
+ SelectButtonModule,
1382
+ TooltipModule,
1383
+ OverlayPanelModule,
1384
+ CalendarModule,
1385
+ SliderModule,
1386
+ DialogModule,
1387
+ ConfirmPopupModule,
1388
+ ConfirmDialogModule,
1389
+ ContextMenuModule,
1390
+ DropdownModule,
1391
+ ButtonModule,
1392
+ ToolbarModule] });
1393
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, decorators: [{
1394
+ type: NgModule,
1395
+ args: [{
1396
+ declarations: [
1397
+ SystemListComponent,
1398
+ ContactComponent,
1399
+ ChooseAnotherDateComponent,
1400
+ ConfirmDialogComponent,
1401
+ ConfirmedDateInformationComponent,
1402
+ ContactSupportComponent,
1403
+ MaintenanceListComponent,
1404
+ ShowLinksComponent,
1405
+ DashboardComponent,
1406
+ ConfirmDialogContactComponent
1407
+ ],
1408
+ imports: [
1409
+ CommonModule,
1410
+ SharedRoutingModule,
1411
+ TableModule,
1412
+ InputTextModule,
1413
+ PipesModule,
1414
+ ToastModule,
1415
+ InputTextareaModule,
1416
+ MultiSelectModule,
1417
+ FormsModule,
1418
+ ReactiveFormsModule,
1419
+ ProgressSpinnerModule,
1420
+ RadioButtonModule,
1421
+ CheckboxModule,
1422
+ SelectButtonModule,
1423
+ TooltipModule,
1424
+ OverlayPanelModule,
1425
+ CalendarModule,
1426
+ SliderModule,
1427
+ DialogModule,
1428
+ ConfirmPopupModule,
1429
+ ConfirmDialogModule,
1430
+ ContextMenuModule,
1431
+ DropdownModule,
1432
+ ButtonModule,
1433
+ ToolbarModule,
1434
+ ],
1435
+ exports: [SystemListComponent, ContactComponent, MaintenanceListComponent, DashboardComponent]
1436
+ }]
1437
+ }] });
1438
+
1439
+ class Account {
1440
+ }
1441
+
1442
+ class AlternativeDate {
1443
+ }
1444
+
1445
+ var ApplicationName;
1446
+ (function (ApplicationName) {
1447
+ ApplicationName["ConsomerPortal"] = "ConsomerPortal";
1448
+ ApplicationName["WarrantyPortal"] = "WarrantyPortal";
1449
+ ApplicationName["GEPortal"] = "GEPortal";
1450
+ })(ApplicationName || (ApplicationName = {}));
1451
+
1452
+ class MailRequest {
1453
+ }
1454
+
1455
+ class CancelPMMailRequest extends MailRequest {
1456
+ }
1457
+
1458
+ class CustomObject {
1459
+ }
1460
+
1461
+ class DetailedPmJob {
1462
+ }
1463
+
1464
+ var EmailStatus;
1465
+ (function (EmailStatus) {
1466
+ EmailStatus[EmailStatus["Verifying"] = 0] = "Verifying";
1467
+ EmailStatus[EmailStatus["Failed"] = 1] = "Failed";
1468
+ })(EmailStatus || (EmailStatus = {}));
1469
+
1470
+ var Field;
1471
+ (function (Field) {
1472
+ Field["Textbox"] = "textbox";
1473
+ Field["File"] = "file";
1474
+ Field["Dropdown"] = "dropdown";
1475
+ Field["Radio"] = "radio";
1476
+ Field["Checkbox"] = "checkbox";
1477
+ })(Field || (Field = {}));
1478
+
1479
+ var Language;
1480
+ (function (Language) {
1481
+ Language["FR"] = "fr-FR";
1482
+ Language["EN"] = "en-US";
1483
+ })(Language || (Language = {}));
1484
+
1485
+ class PMGroupedJob {
1486
+ }
1487
+
1488
+ class PmJob {
1489
+ }
1490
+
1491
+ class PmJobRequest {
1492
+ }
1493
+
1494
+ class ReportDateMailRequest extends MailRequest {
1495
+ }
1496
+
1497
+ var Role;
1498
+ (function (Role) {
1499
+ Role["User"] = "BasicUser";
1500
+ Role["Admin"] = "Admin";
1501
+ Role["RGPDUser"] = "RGPDUser";
1502
+ })(Role || (Role = {}));
1503
+
1504
+ class Service {
1505
+ }
1506
+
1507
+ var ServiceName;
1508
+ (function (ServiceName) {
1509
+ ServiceName["Repairer"] = "repairer";
1510
+ ServiceName["WarrantyContract"] = "warrantyContract";
1511
+ ServiceName["Devices"] = "devices";
1512
+ ServiceName["TrackRepairs"] = "trackRepairs";
1513
+ ServiceName["ExtendedWarranty"] = "extendedWarranty";
1514
+ ServiceName["ScheduleAppointment"] = "scheduleAppointment";
1515
+ ServiceName["Documentation"] = "documentation";
1516
+ ServiceName["RepairabilityIndex"] = "repairabilityIndex";
1517
+ })(ServiceName || (ServiceName = {}));
1518
+
1519
+ class SocialLoginRequest {
1520
+ }
1521
+
1522
+ var SocialMadia;
1523
+ (function (SocialMadia) {
1524
+ SocialMadia["Gmail"] = "Gmail";
1525
+ })(SocialMadia || (SocialMadia = {}));
1526
+
1527
+ class System {
1528
+ }
1529
+
1530
+ var TokenStatus;
1531
+ (function (TokenStatus) {
1532
+ TokenStatus[TokenStatus["Validating"] = 0] = "Validating";
1533
+ TokenStatus[TokenStatus["Valid"] = 1] = "Valid";
1534
+ TokenStatus[TokenStatus["Invalid"] = 2] = "Invalid";
1535
+ })(TokenStatus || (TokenStatus = {}));
1536
+
1537
+ class Warranty {
1538
+ }
1539
+
1540
+ /*
1541
+ * Public API Surface of awf-test-lib
1542
+ */
1543
+
1544
+ /**
1545
+ * Generated bundle index. Do not edit.
1546
+ */
1547
+
1548
+ export { Account, AlternativeDate, ApplicationName, CancelPMMailRequest, ContactComponent, CoreModule, CustomObject, DashboardComponent, DetailedPmJob, EmailStatus, EmailType, EventStatus, Field, Language, MailRequest, MaintenanceListComponent, MenuComponent, NotFoundComponent, PMGroupedJob, PipesModule, PmJob, PmJobRequest, PmJobStatus, ReasonContact, ReportDateMailRequest, Role, Service, ServiceName, SharedModule, SocialLoginRequest, SocialMadia, StingBoolean, SubrtringWPipe, SubstringPipe, System, SystemListComponent, TokenStatus, TopBarComponent, Warranty };
1549
+ //# sourceMappingURL=awf-test-lib.mjs.map