awf-test-lib 0.0.95 → 0.0.96

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 +136 -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 +1546 -0
  57. package/fesm2015/awf-test-lib.mjs.map +1 -0
  58. package/fesm2020/awf-test-lib.mjs +1542 -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 -157
  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,1542 @@
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
+ this.dt?.filterGlobal($event.target.value, stringVal);
273
+ }
274
+ }
275
+ SystemListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SystemListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
276
+ 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" }] });
277
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SystemListComponent, decorators: [{
278
+ type: Component,
279
+ 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" }]
280
+ }], ctorParameters: function () { return []; }, propDecorators: { dt: [{
281
+ type: ViewChild,
282
+ args: ['dt']
283
+ }], translate: [{
284
+ type: Input
285
+ }], globaltranslate: [{
286
+ type: Input
287
+ }], systems: [{
288
+ type: Input
289
+ }] } });
290
+
291
+ class SubstringPipe {
292
+ transform(time, arg1, arg2) {
293
+ return time.substring(arg1, arg2);
294
+ }
295
+ }
296
+ SubstringPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubstringPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
297
+ SubstringPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SubstringPipe, name: "substring" });
298
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubstringPipe, decorators: [{
299
+ type: Pipe,
300
+ args: [{
301
+ name: 'substring'
302
+ }]
303
+ }] });
304
+
305
+ class SubrtringWPipe {
306
+ transform(brand, manufacturerId) {
307
+ if (manufacturerId == 4 && (brand.substring(0, 2) === 'FR')) {
308
+ return brand.substring(2, 12);
309
+ }
310
+ else
311
+ return brand;
312
+ }
313
+ }
314
+ SubrtringWPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubrtringWPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
315
+ SubrtringWPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SubrtringWPipe, name: "subrtringW" });
316
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubrtringWPipe, decorators: [{
317
+ type: Pipe,
318
+ args: [{
319
+ name: 'subrtringW'
320
+ }]
321
+ }] });
322
+
323
+ class PipesModule {
324
+ }
325
+ PipesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
326
+ PipesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, declarations: [SubstringPipe, SubrtringWPipe], imports: [CommonModule], exports: [SubstringPipe, SubrtringWPipe] });
327
+ PipesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, imports: [CommonModule] });
328
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, decorators: [{
329
+ type: NgModule,
330
+ args: [{
331
+ declarations: [SubstringPipe, SubrtringWPipe],
332
+ exports: [SubstringPipe, SubrtringWPipe],
333
+ imports: [
334
+ CommonModule
335
+ ]
336
+ }]
337
+ }] });
338
+
339
+ var PmJobStatus;
340
+ (function (PmJobStatus) {
341
+ PmJobStatus["NEW"] = "new";
342
+ PmJobStatus["ACCEPTED"] = "accepted";
343
+ PmJobStatus["CLOSED"] = "closed";
344
+ PmJobStatus["Late"] = "late";
345
+ PmJobStatus["OPEN"] = "open";
346
+ PmJobStatus["WAITING"] = "waiting";
347
+ PmJobStatus["DONE"] = "done";
348
+ PmJobStatus["VALIDATED"] = "validated";
349
+ // statues if i select reason in contact page
350
+ PmJobStatus["DESINSTALLED"] = "desinstalled";
351
+ PmJobStatus["REPORTED"] = "reported";
352
+ PmJobStatus["CANCELLED"] = "cancelled";
353
+ PmJobStatus["OTHER"] = "other";
354
+ })(PmJobStatus || (PmJobStatus = {}));
355
+
356
+ var ReasonCode;
357
+ (function (ReasonCode) {
358
+ ReasonCode["MPM"] = "MPM";
359
+ ReasonCode["RPM"] = "RPM";
360
+ ReasonCode["CPM"] = "CPM";
361
+ ReasonCode["SDI"] = "SDI";
362
+ ReasonCode["OTH"] = "OTH";
363
+ })(ReasonCode || (ReasonCode = {}));
364
+
365
+ var ReasonContact;
366
+ (function (ReasonContact) {
367
+ ReasonContact["MoreDatesFormPm"] = "MoreDatesFormPm";
368
+ ReasonContact["ContactFormPm"] = "ContactFormPm";
369
+ ReasonContact["CancelFormPm"] = "CancelFormPm";
370
+ ReasonContact["Contact"] = "Contact";
371
+ })(ReasonContact || (ReasonContact = {}));
372
+
373
+ class ContactComponent {
374
+ constructor(formBuilder, messageService) {
375
+ this.formBuilder = formBuilder;
376
+ this.messageService = messageService;
377
+ this.loading = false;
378
+ this.submitted = false;
379
+ this.systems = [];
380
+ this.selectedSystems = [];
381
+ this.sendForm = new EventEmitter();
382
+ this.systemContainPm = true;
383
+ this.showPm = false;
384
+ }
385
+ ngOnChanges() {
386
+ this.reasons = this.reasons.filter(x => (x.code == ReasonCode.SDI || x.code == ReasonCode.OTH));
387
+ this.loadForm();
388
+ }
389
+ // convenience getter for easy access to form fields
390
+ get f() {
391
+ return this.form.controls;
392
+ }
393
+ preventStringKeypress(event) {
394
+ if (isNaN(Number(String.fromCharCode(event.charCode))) ||
395
+ String.fromCharCode(event.charCode) === ' ') {
396
+ event.preventDefault();
397
+ }
398
+ }
399
+ onSubmit() {
400
+ this.submitted = true;
401
+ if (this.form.invalid) {
402
+ this.messageService.add({
403
+ severity: 'error',
404
+ summary: 'Error',
405
+ detail: 'The form is invalid',
406
+ });
407
+ return;
408
+ }
409
+ console.log(this.form.value.pms);
410
+ let detailedPmJob = {};
411
+ detailedPmJob.name = this.form.value.name;
412
+ detailedPmJob.phone = this.form.value.phone;
413
+ detailedPmJob.email = this.form.value.email;
414
+ detailedPmJob.reason = this.form.value.reason.name;
415
+ detailedPmJob.comment = this.form.value.message;
416
+ if (this.form.value.pms !== undefined) {
417
+ detailedPmJob.pmJob = this.form.value.pms;
418
+ }
419
+ detailedPmJob.systemName = this.selectedSystem.name;
420
+ detailedPmJob.systemId = this.selectedSystem.systemId;
421
+ detailedPmJob.siteName = this.selectedSystem.siteName;
422
+ detailedPmJob.siteCity = this.selectedSystem.siteCity;
423
+ detailedPmJob.sitePostalCode = this.selectedSystem.sitePostalCode;
424
+ detailedPmJob.toUpdate = true;
425
+ if (this.form.value.pms !== undefined) {
426
+ detailedPmJob.selectedDate = detailedPmJob.pmJob.startDateTime;
427
+ }
428
+ detailedPmJob.reasonContact = ReasonContact.Contact;
429
+ detailedPmJob.futureStatus = this.slectsFutureStatus(this.form.value.reason.code);
430
+ console.log();
431
+ this.sendForm.emit(detailedPmJob);
432
+ }
433
+ slectsFutureStatus(status) {
434
+ switch (status) {
435
+ case ReasonCode.MPM: return PmJobStatus.WAITING;
436
+ case ReasonCode.RPM: return PmJobStatus.REPORTED;
437
+ case ReasonCode.CPM: return PmJobStatus.CANCELLED;
438
+ case ReasonCode.SDI: return PmJobStatus.DESINSTALLED;
439
+ case ReasonCode.OTH: return PmJobStatus.OTHER;
440
+ default: return "Erreur";
441
+ }
442
+ }
443
+ loadForm() {
444
+ let name = sessionStorage.getItem('userName');
445
+ let email = sessionStorage.getItem('email');
446
+ let phone = sessionStorage.getItem('mobilePhoneNumber');
447
+ this.form = this.formBuilder.group({
448
+ name: [name !== 'null' ? name : '', [Validators.required, Validators.minLength(3)]],
449
+ email: [email !== 'null' ? email : '', [Validators.required, Validators.email]],
450
+ phone: [phone !== 'null' ? phone : '', [Validators.required]],
451
+ reason: ['', [Validators.required]],
452
+ systems: [[], [Validators.required]],
453
+ pms: [[], this.showPm ? [] : []],
454
+ message: ['', [Validators.required, Validators.minLength(15)]],
455
+ });
456
+ }
457
+ selectPM(selectedSystem) {
458
+ this.systemContainPm = true;
459
+ if (selectedSystem === undefined) {
460
+ return;
461
+ }
462
+ else {
463
+ if (selectedSystem.pmJobs.length === 0) {
464
+ this.systemContainPm = false;
465
+ }
466
+ else {
467
+ this.selectedSystem = selectedSystem;
468
+ this.pmJobs = selectedSystem.pmJobs;
469
+ this.showPm = true;
470
+ }
471
+ }
472
+ }
473
+ }
474
+ 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 });
475
+ 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"] }] });
476
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContactComponent, decorators: [{
477
+ type: Component,
478
+ 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"] }]
479
+ }], ctorParameters: function () { return [{ type: i1$4.FormBuilder }, { type: i1$3.MessageService }]; }, propDecorators: { loading: [{
480
+ type: Input
481
+ }], submitted: [{
482
+ type: Input
483
+ }], systems: [{
484
+ type: Input
485
+ }], selectedSystems: [{
486
+ type: Input
487
+ }], translate: [{
488
+ type: Input
489
+ }], reasons: [{
490
+ type: Input
491
+ }], sendForm: [{
492
+ type: Output
493
+ }] } });
494
+
495
+ class ChooseAnotherDateComponent {
496
+ constructor(messageService) {
497
+ this.messageService = messageService;
498
+ this.closeAnotherDate = new EventEmitter();
499
+ this.acceptDate = new EventEmitter();
500
+ this.dates = [];
501
+ this.datesRef = [];
502
+ this.show = false;
503
+ this.dateslength = 0;
504
+ this.indexSelectedDate = 0;
505
+ }
506
+ ngOnInit() {
507
+ this.loadDates();
508
+ }
509
+ ngOnChanges() { }
510
+ close() {
511
+ this.closeAnotherDate.emit(true);
512
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
513
+ }
514
+ accept() {
515
+ this.controlAlternativeDates();
516
+ this.acceptDate.emit(this.alternativeDatesList);
517
+ }
518
+ askDate() {
519
+ this.closeAnotherDate.emit(false);
520
+ }
521
+ controlAlternativeDates() {
522
+ let i = 0;
523
+ this.alternativeDatesList.forEach((item) => {
524
+ item.selected = (i === this.indexSelectedDate) ? "Yes" : "No";
525
+ i++;
526
+ });
527
+ }
528
+ loadDates() {
529
+ this.dates = [];
530
+ this.datesRef = [];
531
+ if (this.alternativeDatesList) {
532
+ this.alternativeDatesList.forEach((element) => {
533
+ this.dates.push(new Date(element.startDateTime));
534
+ this.datesRef.push(new Date(element.startDateTime));
535
+ });
536
+ }
537
+ this.dateslength = this.dates.length;
538
+ }
539
+ onSelect() {
540
+ if (this.dateslength < this.dates.length) {
541
+ this.loadDates();
542
+ }
543
+ else if (this.dateslength > this.dates.length) {
544
+ this.selectedDate = this.arrdiff(this.datesRef, this.dates)[0];
545
+ for (var i = 0; i < this.datesRef.length; i++) {
546
+ if (this.datesRef[i] == this.selectedDate) {
547
+ this.indexSelectedDate = i;
548
+ }
549
+ }
550
+ this.controlAlternativeDates();
551
+ this.accept();
552
+ this.loadDates();
553
+ }
554
+ this.dates;
555
+ }
556
+ arrdiff(a1, a2) {
557
+ var a = [], diff = [];
558
+ for (var i = 0; i < a1.length; i++) {
559
+ a[a1[i]] = true;
560
+ }
561
+ for (var i = 0; i < a2.length; i++) {
562
+ if (a[a2[i]]) {
563
+ delete a[a2[i]];
564
+ }
565
+ else {
566
+ a[a2[i]] = true;
567
+ }
568
+ }
569
+ for (var k in a) {
570
+ diff.push(k);
571
+ }
572
+ return diff;
573
+ }
574
+ }
575
+ 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 });
576
+ 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 });
577
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ChooseAnotherDateComponent, decorators: [{
578
+ type: Component,
579
+ 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"] }]
580
+ }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { displayAnotherDate: [{
581
+ type: Input
582
+ }], globaltranslate: [{
583
+ type: Input
584
+ }], translate: [{
585
+ type: Input
586
+ }], alternativeDatesList: [{
587
+ type: Input
588
+ }], closeAnotherDate: [{
589
+ type: Output
590
+ }], acceptDate: [{
591
+ type: Output
592
+ }], calendar: [{
593
+ type: ViewChild,
594
+ args: ['calendar']
595
+ }] } });
596
+
597
+ class ConfirmDialogComponent {
598
+ constructor(messageService) {
599
+ this.messageService = messageService;
600
+ this.detailedPmJobLinkedList = [];
601
+ this.closeConfirmDialog = new EventEmitter();
602
+ }
603
+ rejectDate() {
604
+ this.closeConfirmDialog.emit(false);
605
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
606
+ }
607
+ confirmDate() {
608
+ this.closeConfirmDialog.emit(true);
609
+ }
610
+ }
611
+ 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 });
612
+ 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" }] });
613
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmDialogComponent, decorators: [{
614
+ type: Component,
615
+ 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>" }]
616
+ }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { displayConfirmDialog: [{
617
+ type: Input
618
+ }], startDateTime: [{
619
+ type: Input
620
+ }], endDateTime: [{
621
+ type: Input
622
+ }], globaltranslate: [{
623
+ type: Input
624
+ }], translate: [{
625
+ type: Input
626
+ }], isProposedDate: [{
627
+ type: Input
628
+ }], detailedPmJobLinkedList: [{
629
+ type: Input
630
+ }], closeConfirmDialog: [{
631
+ type: Output
632
+ }] } });
633
+
634
+ class ConfirmedDateInformationComponent {
635
+ constructor() {
636
+ this.closeConfirmedDateInfo = new EventEmitter();
637
+ }
638
+ confirmDate() {
639
+ this.closeConfirmedDateInfo.emit(true);
640
+ }
641
+ }
642
+ ConfirmedDateInformationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmedDateInformationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
643
+ 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" }] });
644
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmedDateInformationComponent, decorators: [{
645
+ type: Component,
646
+ 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"] }]
647
+ }], ctorParameters: function () { return []; }, propDecorators: { displayConfirmedDateInfo: [{
648
+ type: Input
649
+ }], startDateTime: [{
650
+ type: Input
651
+ }], endDateTime: [{
652
+ type: Input
653
+ }], globaltranslate: [{
654
+ type: Input
655
+ }], translate: [{
656
+ type: Input
657
+ }], moreDates: [{
658
+ type: Input
659
+ }], closeConfirmedDateInfo: [{
660
+ type: Output
661
+ }] } });
662
+
663
+ class ContactSupportComponent {
664
+ constructor(messageService, formBuilder) {
665
+ this.messageService = messageService;
666
+ this.formBuilder = formBuilder;
667
+ this.sendDetailedPm = new EventEmitter();
668
+ this.sendForm = new EventEmitter();
669
+ this.closeContactSupport = new EventEmitter();
670
+ this.loading = false;
671
+ this.submitted = false;
672
+ this.displayNumber = false;
673
+ }
674
+ ngOnChanges(changes) {
675
+ this.loadDatas();
676
+ }
677
+ ngOnInit() {
678
+ this.loadDatas();
679
+ }
680
+ loadDatas() {
681
+ this.filterReasons();
682
+ this.setDateRules();
683
+ this.loadForm();
684
+ }
685
+ filterReasons() {
686
+ if (this.reasons && this.reasonContact === ReasonContact.MoreDatesFormPm) {
687
+ this.selectedReason = this.reasons[0];
688
+ this.reasons = this.reasons.filter(x => x.code === ReasonCode.MPM);
689
+ }
690
+ if (this.reasons && this.reasonContact === ReasonContact.CancelFormPm) {
691
+ this.selectedReason = this.reasons[2];
692
+ this.reasons = this.reasons.filter(x => x.code === ReasonCode.CPM);
693
+ }
694
+ if (this.detailedPmJob.status === PmJobStatus.DONE) {
695
+ this.reasons = this.reasons.filter(x => x.code === ReasonCode.OTH);
696
+ }
697
+ if (this.detailedPmJob.status === PmJobStatus.VALIDATED) {
698
+ this.reasons = this.reasons.filter(x => x.code !== ReasonCode.MPM);
699
+ }
700
+ }
701
+ cancelContactSupport() {
702
+ this.closeContactSupport.emit(true);
703
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
704
+ }
705
+ get f() {
706
+ return this.form.controls;
707
+ }
708
+ setDateRules() {
709
+ let today = new Date();
710
+ let month = today.getMonth();
711
+ let year = today.getFullYear();
712
+ let prevMonth = (month === 0) ? 11 : month - 1;
713
+ let prevYear = (prevMonth === 11) ? year - 1 : year;
714
+ this.minDate = new Date();
715
+ this.minDate.setMonth(month);
716
+ this.minDate.setFullYear(prevYear);
717
+ }
718
+ loadForm() {
719
+ let name = sessionStorage.getItem('userName');
720
+ let email = sessionStorage.getItem('email');
721
+ let phone = sessionStorage.getItem('mobilePhoneNumber');
722
+ this.form = this.formBuilder.group({
723
+ name: [name !== 'null' ? name : '', [Validators.required, Validators.minLength(3)]],
724
+ email: [email !== 'null' ? email : '', [Validators.required, Validators.email]],
725
+ phone: [phone !== 'null' ? phone : '', [Validators.required]],
726
+ reason: [{ value: '' }, [Validators.required]],
727
+ system: [{ value: this.detailedPmJob.systemName + ' ' + this.detailedPmJob.systemId, disabled: true }, [Validators.required]],
728
+ workOrder: [{ value: this.detailedPmJob.pmJob.workorderNumber, disabled: true }, [Validators.required]],
729
+ message: ['', (this.reasonContact === ReasonContact.MoreDatesFormPm) ? [] : [Validators.required, Validators.minLength(15)]],
730
+ });
731
+ }
732
+ contacted() {
733
+ this.sendContactMeEmailMethode();
734
+ }
735
+ contact() {
736
+ this.displayNumber = true;
737
+ }
738
+ closeNumber() {
739
+ this.displayNumber = false;
740
+ }
741
+ sendContactMeEmailMethode() {
742
+ this.detailedPmJob.name = this.form.value.name;
743
+ this.detailedPmJob.phone = this.form.value.phone;
744
+ this.detailedPmJob.email = this.form.value.email;
745
+ this.detailedPmJob.reason = (this.reasonContact === ReasonContact.MoreDatesFormPm) ? this.reasons[0].name : this.form.value.reason.name;
746
+ this.detailedPmJob.comment = this.form.value.message;
747
+ this.detailedPmJob.reasonContact = this.reasonContact;
748
+ this.detailedPmJob.futureStatus = this.slectsFutureStatus(this.form.value.reason.code);
749
+ this.sendDetailedPm.emit(this.detailedPmJob);
750
+ }
751
+ slectsFutureStatus(status) {
752
+ switch (status) {
753
+ case ReasonCode.MPM: return PmJobStatus.WAITING;
754
+ case ReasonCode.RPM: return PmJobStatus.REPORTED;
755
+ case ReasonCode.CPM: return PmJobStatus.CANCELLED;
756
+ case ReasonCode.SDI: return PmJobStatus.DESINSTALLED;
757
+ case ReasonCode.OTH: return PmJobStatus.OTHER;
758
+ default: return "Erreur";
759
+ }
760
+ }
761
+ onSubmit() {
762
+ this.submitted = true;
763
+ if (this.form.invalid) {
764
+ this.messageService.add({
765
+ severity: 'error',
766
+ summary: 'Error',
767
+ detail: 'The form is invalid',
768
+ });
769
+ return;
770
+ }
771
+ this.contacted();
772
+ }
773
+ preventStringKeypress(event) {
774
+ if (isNaN(Number(String.fromCharCode(event.charCode))) ||
775
+ String.fromCharCode(event.charCode) === ' ') {
776
+ event.preventDefault();
777
+ }
778
+ }
779
+ }
780
+ 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 });
781
+ 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"] }] });
782
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContactSupportComponent, decorators: [{
783
+ type: Component,
784
+ 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"] }]
785
+ }], ctorParameters: function () { return [{ type: i1$3.MessageService }, { type: i1$4.FormBuilder }]; }, propDecorators: { displaycontactSupport: [{
786
+ type: Input
787
+ }], globaltranslate: [{
788
+ type: Input
789
+ }], translate: [{
790
+ type: Input
791
+ }], showDate: [{
792
+ type: Input
793
+ }], detailedPmJob: [{
794
+ type: Input
795
+ }], reasonContact: [{
796
+ type: Input
797
+ }], reasons: [{
798
+ type: Input
799
+ }], sendDetailedPm: [{
800
+ type: Output
801
+ }], sendForm: [{
802
+ type: Output
803
+ }], closeContactSupport: [{
804
+ type: Output
805
+ }] } });
806
+
807
+ var EmailType;
808
+ (function (EmailType) {
809
+ EmailType["Accepted_Clients"] = "Accepted_Clients";
810
+ EmailType["Accepted_CSC"] = "Accepted_CSC";
811
+ EmailType["CancelPM_Clients"] = "CancelPM_Clients";
812
+ EmailType["CancelPM_CSC"] = "CancelPM_CSC";
813
+ EmailType["ContactMe_Clients"] = "ContactMe_Clients";
814
+ EmailType["ContactMe_CSC"] = "ContactMe_CSC";
815
+ EmailType["ReportDate_Clients"] = "ReportDate_Clients";
816
+ EmailType["ReportDate_CSC"] = "ReportDate_CSC";
817
+ EmailType["SendNewDates_Clients"] = "SendNewDates_Clients";
818
+ EmailType["SendNewDates_CSC"] = "SendNewDates_CSC";
819
+ EmailType["DesynchroPM_CSC"] = "DesynchroPM_CSC";
820
+ })(EmailType || (EmailType = {}));
821
+
822
+ var EventStatus;
823
+ (function (EventStatus) {
824
+ EventStatus["ASSIGNEDANC"] = "Assigned ANC";
825
+ EventStatus["ASSIGNED"] = "Assigned";
826
+ EventStatus["ASSIGNEDPINNED"] = "Assigned Pinned";
827
+ EventStatus["COMPLETE"] = "Complete";
828
+ EventStatus["INCOMPLETE"] = "Incomplete";
829
+ })(EventStatus || (EventStatus = {}));
830
+
831
+ var StingBoolean;
832
+ (function (StingBoolean) {
833
+ StingBoolean["YES"] = "Yes";
834
+ StingBoolean["NO"] = "No";
835
+ })(StingBoolean || (StingBoolean = {}));
836
+
837
+ class ShowLinksComponent {
838
+ constructor() {
839
+ this.closeShowLinks = new EventEmitter();
840
+ this.detailedPmJobLinkedList = [];
841
+ this.header = "header";
842
+ this.header = "PM : " + this.selectedWorkorderId;
843
+ }
844
+ close() {
845
+ this.closeShowLinks.emit(false);
846
+ }
847
+ applyFilterGlobal($event, stringVal) {
848
+ this.dt?.filterGlobal($event.target.value, stringVal);
849
+ }
850
+ transformStatus(status) {
851
+ switch (status) {
852
+ case PmJobStatus.NEW: return this.status.new;
853
+ case PmJobStatus.ACCEPTED: return this.status.accepted;
854
+ case PmJobStatus.CLOSED: return this.status.closed;
855
+ case PmJobStatus.Late: return this.status.late;
856
+ case PmJobStatus.OPEN: return this.status.open;
857
+ case PmJobStatus.WAITING: return this.status.waiting;
858
+ case PmJobStatus.DONE: return this.status.done;
859
+ case PmJobStatus.VALIDATED: return this.status.validated;
860
+ default: return "Erreur";
861
+ }
862
+ }
863
+ getStatusTooltip(status) {
864
+ switch (status) {
865
+ case PmJobStatus.ACCEPTED: return this.status.acceptedTooltip;
866
+ case PmJobStatus.NEW: return this.status.newTooltip;
867
+ case PmJobStatus.CLOSED: return this.status.closedTooltip;
868
+ case PmJobStatus.Late: return this.status.lateTooltip;
869
+ case PmJobStatus.OPEN: return this.status.openTooltip;
870
+ case PmJobStatus.WAITING: return this.status.waitingTooltip;
871
+ case PmJobStatus.DONE: return this.status.doneTooltip;
872
+ case PmJobStatus.VALIDATED: return this.status.validatedTooltip;
873
+ default: return "Erreur";
874
+ }
875
+ }
876
+ transformType(type) {
877
+ if (type === "Planned Maintenance") {
878
+ return "Maintenance planifiée";
879
+ console.log("test");
880
+ }
881
+ console.log("test2");
882
+ return type;
883
+ }
884
+ }
885
+ ShowLinksComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ShowLinksComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
886
+ 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" }] });
887
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ShowLinksComponent, decorators: [{
888
+ type: Component,
889
+ 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>" }]
890
+ }], ctorParameters: function () { return []; }, propDecorators: { dt: [{
891
+ type: ViewChild,
892
+ args: ['dt']
893
+ }], displayShowLinks: [{
894
+ type: Input
895
+ }], closeShowLinks: [{
896
+ type: Output
897
+ }], detailedPmJobLinkedList: [{
898
+ type: Input
899
+ }], selectedWorkorderId: [{
900
+ type: Input
901
+ }], globaltranslate: [{
902
+ type: Input
903
+ }], translate: [{
904
+ type: Input
905
+ }], status: [{
906
+ type: Input
907
+ }] } });
908
+
909
+ class ConfirmDialogContactComponent {
910
+ constructor(messageService) {
911
+ this.messageService = messageService;
912
+ this.detailedPmJobLinkedList = [];
913
+ this.closeConfirmDialogContact = new EventEmitter();
914
+ }
915
+ rejectDate() {
916
+ this.closeConfirmDialogContact.emit(false);
917
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
918
+ }
919
+ confirmDate() {
920
+ this.closeConfirmDialogContact.emit(true);
921
+ }
922
+ }
923
+ 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 });
924
+ 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"] }] });
925
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmDialogContactComponent, decorators: [{
926
+ type: Component,
927
+ 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" }]
928
+ }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { displayConfirmDialogContact: [{
929
+ type: Input
930
+ }], startDateTime: [{
931
+ type: Input
932
+ }], endDateTime: [{
933
+ type: Input
934
+ }], globaltranslate: [{
935
+ type: Input
936
+ }], translate: [{
937
+ type: Input
938
+ }], detailedPmJobLinkedList: [{
939
+ type: Input
940
+ }], closeConfirmDialogContact: [{
941
+ type: Output
942
+ }] } });
943
+
944
+ class MaintenanceListComponent {
945
+ constructor(messageService) {
946
+ this.messageService = messageService;
947
+ this.maintenanceList = [];
948
+ this.maintenanceListNotDisplayed = [];
949
+ this.pmJobList = [];
950
+ this.displayConfirmedDateInfo = false;
951
+ this.emitForUpdate = new EventEmitter();
952
+ this.emitForAlternativeDates = new EventEmitter();
953
+ this.sendContactMeEmail = new EventEmitter();
954
+ this.sendForm = new EventEmitter();
955
+ this.detailedPmJobLinkedList = [];
956
+ this.alternativeDatesSelected = [];
957
+ this.displaycontactSupport = false;
958
+ this.displayConfirmDialog = false;
959
+ this.displayConfirmDialogContact = false;
960
+ this.displayShowLinks = false;
961
+ this.displayAnotherDate = false;
962
+ this.isWithLinks = false;
963
+ this.isProposedDate = true;
964
+ this.reasonContact = "";
965
+ this.first = 0;
966
+ }
967
+ ngOnChanges(changes) {
968
+ this.first = 0;
969
+ console.log("hello");
970
+ }
971
+ ngOnDestroy() {
972
+ if (this.updatePmSubscription) {
973
+ this.updatePmSubscription.unsubscribe();
974
+ }
975
+ if (this.alternativeDatesSubscription) {
976
+ this.alternativeDatesSubscription.unsubscribe();
977
+ }
978
+ }
979
+ applyFilterGlobal($event, stringVal) {
980
+ this.dt?.filterGlobal($event.target.value, stringVal);
981
+ }
982
+ selectElement(element) {
983
+ this.alternativeDatesList = null;
984
+ this.emailTypes = [];
985
+ if (element) {
986
+ this.pmSelectedStatus = element.status;
987
+ }
988
+ if (element.pmJob.groupList) {
989
+ this.isWithLinks = element.pmJob.groupList?.length > 0 ? true : false;
990
+ }
991
+ this.selectedWorkorderId = element.pmJob.workorderNumber;
992
+ this.maintenanceSelected = element;
993
+ this.maintenanceSelected.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
994
+ if (!this.isAlreadyScheduled) {
995
+ this.getAlternativeDates(element.pmJob);
996
+ }
997
+ this.startDateTime = this.maintenanceSelected.pmJob.startDateTime;
998
+ this.endDateTime = this.maintenanceSelected.pmJob.endDateTime;
999
+ this.getLinkedPmJob();
1000
+ }
1001
+ getAlternativeDates(pmJob) {
1002
+ this.emitForAlternativeDates.emit(pmJob);
1003
+ }
1004
+ getLinkedPmJob() {
1005
+ this.detailedPmJobLinkedList = [];
1006
+ if (this.maintenanceSelected.pmJob.groupList) {
1007
+ this.maintenanceSelected.pmJob.groupList.forEach((linked) => {
1008
+ this.maintenanceList.forEach((item) => {
1009
+ if (linked.workorderId === item.pmJob.workorderId) {
1010
+ this.detailedPmJobLinkedList.push(item);
1011
+ }
1012
+ });
1013
+ });
1014
+ }
1015
+ // if the linked PM in the other maintenance list not selected
1016
+ if (this.maintenanceSelected.pmJob.groupList && (this.maintenanceSelected.pmJob.groupList.length !== this.detailedPmJobLinkedList.length)) {
1017
+ this.maintenanceSelected.pmJob.groupList.forEach((linked) => {
1018
+ this.maintenanceListNotDisplayed.forEach((item) => {
1019
+ item.toUpdate = false;
1020
+ if (linked.workorderId === item.pmJob.workorderId) {
1021
+ this.detailedPmJobLinkedList.push(item);
1022
+ }
1023
+ });
1024
+ });
1025
+ }
1026
+ }
1027
+ confirmDialog() {
1028
+ this.isProposedDate = true;
1029
+ this.op.hide();
1030
+ this.displayConfirmDialog = true;
1031
+ }
1032
+ closeConfirmDialog(confirm) {
1033
+ this.displayConfirmDialog = false;
1034
+ this.maintenanceSelected.futureStatus = PmJobStatus.ACCEPTED;
1035
+ if (confirm) {
1036
+ if (!this.isProposedDate) {
1037
+ this.updateAlternativeDate();
1038
+ }
1039
+ else {
1040
+ this.updateProposedDate();
1041
+ }
1042
+ this.emailTypes.push(EmailType.Accepted_CSC);
1043
+ this.emailTypes.push(EmailType.Accepted_Clients);
1044
+ this.updatePmJob();
1045
+ }
1046
+ }
1047
+ closeConfirmDialogContact(confirm) {
1048
+ this.displayConfirmDialogContact = false;
1049
+ if (confirm) {
1050
+ this.emailTypes = [];
1051
+ if (this.reasonContact === ReasonContact.ContactFormPm) {
1052
+ this.emailTypes.push(EmailType.ContactMe_Clients);
1053
+ this.emailTypes.push(EmailType.ContactMe_CSC);
1054
+ }
1055
+ else if (this.reasonContact === ReasonContact.CancelFormPm) {
1056
+ this.maintenanceSelected.pmJob.customObject = {};
1057
+ this.maintenanceSelected.pmJob.customObject.customerWaiting = StingBoolean.YES;
1058
+ this.maintenanceSelected.futureStatus = PmJobStatus.WAITING;
1059
+ this.emailTypes.push(EmailType.CancelPM_CSC);
1060
+ this.emailTypes.push(EmailType.CancelPM_Clients);
1061
+ }
1062
+ else {
1063
+ this.maintenanceSelected.pmJob.customObject = {};
1064
+ this.maintenanceSelected.pmJob.customObject.customerWaiting = StingBoolean.YES;
1065
+ this.maintenanceSelected.futureStatus = PmJobStatus.WAITING;
1066
+ this.emailTypes.push(EmailType.SendNewDates_CSC);
1067
+ this.emailTypes.push(EmailType.SendNewDates_Clients);
1068
+ }
1069
+ this.updateLinkedPMFormContact();
1070
+ this.closeContactSupport(true);
1071
+ }
1072
+ }
1073
+ updateLinkedPMFormContact() {
1074
+ this.pmJobList = [];
1075
+ this.pmJobList.push(this.maintenanceSelected);
1076
+ if (this.detailedPmJobLinkedList.length > 0) {
1077
+ this.detailedPmJobLinkedList.forEach((item) => {
1078
+ item.futureStatus = item.status;
1079
+ item.selectedDate = item.pmJob.startDateTime;
1080
+ item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1081
+ if (this.reasonContact === ReasonContact.MoreDatesFormPm || this.reasonContact === ReasonContact.CancelFormPm) {
1082
+ item.reason = this.maintenanceSelected.reason;
1083
+ item.reasonContact = this.maintenanceSelected.reasonContact;
1084
+ item.pmJob.customObject = {};
1085
+ item.pmJob.customObject.customerWaiting = StingBoolean.YES;
1086
+ item.futureStatus = PmJobStatus.WAITING;
1087
+ }
1088
+ this.pmJobList.push(item);
1089
+ });
1090
+ }
1091
+ this.callApiToUpdate();
1092
+ }
1093
+ closeContactSupport(event) {
1094
+ this.displaycontactSupport = false;
1095
+ this.showDate = false;
1096
+ this.reasonContact = "";
1097
+ }
1098
+ proposeAnotherDate() {
1099
+ this.isProposedDate = false;
1100
+ this.op.hide();
1101
+ this.displayAnotherDate = true;
1102
+ }
1103
+ contactSupport(fromOtherDate) {
1104
+ this.op.hide();
1105
+ this.reasonContact = fromOtherDate ? ReasonContact.MoreDatesFormPm : ReasonContact.ContactFormPm;
1106
+ this.displaycontactSupport = true;
1107
+ }
1108
+ showLinks(element) {
1109
+ if (element) {
1110
+ this.selectElement(element);
1111
+ }
1112
+ this.op.hide();
1113
+ this.displayShowLinks = true;
1114
+ }
1115
+ closeShowLinks() {
1116
+ this.displayShowLinks = false;
1117
+ }
1118
+ closeConfirmedDateInfo() {
1119
+ this.displayConfirmedDateInfo = false;
1120
+ }
1121
+ acceptDate(alternativeDates) {
1122
+ this.displayConfirmDialog = true;
1123
+ this.alternativeDatesSelected = alternativeDates;
1124
+ this.findDatesSelected();
1125
+ }
1126
+ findDatesSelected() {
1127
+ this.alternativeDatesSelected.forEach((alternativeDate) => {
1128
+ if (alternativeDate.selected === "Yes") {
1129
+ this.startDateTime = alternativeDate.startDateTime;
1130
+ this.endDateTime = alternativeDate.endDateTime;
1131
+ this.maintenanceSelected.selectedDate = alternativeDate.startDateTime;
1132
+ return;
1133
+ }
1134
+ });
1135
+ }
1136
+ closeAnotherDate(event) {
1137
+ this.displayAnotherDate = false;
1138
+ if (event === false) {
1139
+ this.alreadyScheduledMsg = false;
1140
+ this.op.hide();
1141
+ this.contactSupport(true);
1142
+ }
1143
+ }
1144
+ updatePmJob() {
1145
+ this.pmJobList = [];
1146
+ this.pmJobList.push(this.maintenanceSelected);
1147
+ if (this.detailedPmJobLinkedList.length > 0) {
1148
+ this.detailedPmJobLinkedList.forEach((pMJob) => {
1149
+ this.pmJobList.push(pMJob);
1150
+ });
1151
+ }
1152
+ this.callApiToUpdate();
1153
+ }
1154
+ editPm() {
1155
+ this.alreadyScheduledMsg = true;
1156
+ this.op.hide();
1157
+ this.reasonContact = ReasonContact.CancelFormPm;
1158
+ this.prepareForPopup();
1159
+ this.displaycontactSupport = true;
1160
+ }
1161
+ prepareForPopup() {
1162
+ if (this.maintenanceSelected.pmJob.customerAccepted === "Yes") {
1163
+ this.startDateTime = this.maintenanceSelected.pmJob.startDateTime;
1164
+ this.endDateTime = this.maintenanceSelected.pmJob.endDateTime;
1165
+ }
1166
+ else {
1167
+ this.alternativeDatesSelected = this.maintenanceSelected.pmJob.alternativeDates;
1168
+ this.findDatesSelected();
1169
+ }
1170
+ }
1171
+ updateProposedDate() {
1172
+ this.maintenanceSelected.pmJob.customerAccepted = StingBoolean.YES;
1173
+ this.maintenanceSelected.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1174
+ this.detailedPmJobLinkedList.forEach((item) => {
1175
+ item.pmJob.customerAccepted = StingBoolean.YES;
1176
+ item.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1177
+ item.futureStatus = PmJobStatus.ACCEPTED;
1178
+ item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1179
+ });
1180
+ }
1181
+ updateAlternativeDate() {
1182
+ this.findDatesSelected();
1183
+ this.maintenanceSelected.pmJob.alternativeDates = this.alternativeDatesSelected;
1184
+ this.detailedPmJobLinkedList.forEach((item) => {
1185
+ item.pmJob.alternativeDates = this.alternativeDatesSelected;
1186
+ item.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1187
+ item.futureStatus = PmJobStatus.ACCEPTED;
1188
+ item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1189
+ });
1190
+ this.displayAnotherDate = false;
1191
+ }
1192
+ sendContactMeForm(contactMeRequest) {
1193
+ this.moreDates = false;
1194
+ if (contactMeRequest.reasonContact === ReasonContact.MoreDatesFormPm) {
1195
+ this.moreDates = true;
1196
+ }
1197
+ this.displayConfirmDialogContact = true;
1198
+ this.maintenanceSelected = contactMeRequest;
1199
+ }
1200
+ callApiToUpdate() {
1201
+ let PmJobListForUpdate = {};
1202
+ PmJobListForUpdate.pmJobList = this.pmJobList;
1203
+ PmJobListForUpdate.emailTypes = this.emailTypes;
1204
+ this.emitForUpdate.emit(PmJobListForUpdate);
1205
+ }
1206
+ transformType(type) {
1207
+ if (type === "Planned Maintenance") {
1208
+ return "Maintenance planifiée";
1209
+ console.log("test");
1210
+ }
1211
+ console.log("test2");
1212
+ return type;
1213
+ }
1214
+ transformStatus(status) {
1215
+ switch (status) {
1216
+ case PmJobStatus.NEW: return this.status.new;
1217
+ case PmJobStatus.ACCEPTED: return this.status.accepted;
1218
+ case PmJobStatus.CLOSED: return this.status.closed;
1219
+ case PmJobStatus.Late: return this.status.late;
1220
+ case PmJobStatus.OPEN: return this.status.open;
1221
+ case PmJobStatus.WAITING: return this.status.waiting;
1222
+ case PmJobStatus.DONE: return this.status.done;
1223
+ case PmJobStatus.VALIDATED: return this.status.validated;
1224
+ default: return "Erreur";
1225
+ }
1226
+ }
1227
+ getStatusTooltip(status) {
1228
+ switch (status) {
1229
+ case PmJobStatus.ACCEPTED: return this.status.acceptedTooltip;
1230
+ case PmJobStatus.NEW: return this.status.newTooltip;
1231
+ case PmJobStatus.CLOSED: return this.status.closedTooltip;
1232
+ case PmJobStatus.Late: return this.status.lateTooltip;
1233
+ case PmJobStatus.OPEN: return this.status.openTooltip;
1234
+ case PmJobStatus.WAITING: return this.status.waitingTooltip;
1235
+ case PmJobStatus.DONE: return this.status.doneTooltip;
1236
+ case PmJobStatus.VALIDATED: return this.status.validatedTooltip;
1237
+ default: return "Erreur";
1238
+ }
1239
+ }
1240
+ }
1241
+ 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 });
1242
+ 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" }] });
1243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MaintenanceListComponent, decorators: [{
1244
+ type: Component,
1245
+ 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"] }]
1246
+ }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { dt: [{
1247
+ type: ViewChild,
1248
+ args: ['dt']
1249
+ }], op: [{
1250
+ type: ViewChild,
1251
+ args: ['op']
1252
+ }], translate: [{
1253
+ type: Input
1254
+ }], reasons: [{
1255
+ type: Input
1256
+ }], globaltranslate: [{
1257
+ type: Input
1258
+ }], maintenanceList: [{
1259
+ type: Input
1260
+ }], maintenanceListNotDisplayed: [{
1261
+ type: Input
1262
+ }], pmJobList: [{
1263
+ type: Input
1264
+ }], isAlreadyScheduled: [{
1265
+ type: Input
1266
+ }], displayConfirmedDateInfo: [{
1267
+ type: Input
1268
+ }], alternativeDatesList: [{
1269
+ type: Input
1270
+ }], emitForUpdate: [{
1271
+ type: Output
1272
+ }], emitForAlternativeDates: [{
1273
+ type: Output
1274
+ }], sendContactMeEmail: [{
1275
+ type: Output
1276
+ }], status: [{
1277
+ type: Input
1278
+ }], sendForm: [{
1279
+ type: Output
1280
+ }] } });
1281
+
1282
+ const routes = [];
1283
+ class SharedRoutingModule {
1284
+ }
1285
+ SharedRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1286
+ SharedRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, imports: [i2.RouterModule], exports: [RouterModule] });
1287
+ SharedRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] });
1288
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, decorators: [{
1289
+ type: NgModule,
1290
+ args: [{
1291
+ imports: [RouterModule.forChild(routes)],
1292
+ exports: [RouterModule]
1293
+ }]
1294
+ }] });
1295
+
1296
+ class DashboardComponent {
1297
+ constructor() {
1298
+ this.toBeScheduledMaintenanceList = [];
1299
+ this.alreadyScheduledMaintenanceList = [];
1300
+ }
1301
+ ngOnChanges(changes) { }
1302
+ }
1303
+ DashboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: DashboardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1304
+ 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" }] });
1305
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: DashboardComponent, decorators: [{
1306
+ type: Component,
1307
+ 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"] }]
1308
+ }], ctorParameters: function () { return []; }, propDecorators: { name: [{
1309
+ type: Input
1310
+ }], email: [{
1311
+ type: Input
1312
+ }], number: [{
1313
+ type: Input
1314
+ }], systems: [{
1315
+ type: Input
1316
+ }], toBeScheduledMaintenanceList: [{
1317
+ type: Input
1318
+ }], alreadyScheduledMaintenanceList: [{
1319
+ type: Input
1320
+ }], translate: [{
1321
+ type: Input
1322
+ }] } });
1323
+
1324
+ class SharedModule {
1325
+ }
1326
+ SharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1327
+ SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, declarations: [SystemListComponent,
1328
+ ContactComponent,
1329
+ ChooseAnotherDateComponent,
1330
+ ConfirmDialogComponent,
1331
+ ConfirmedDateInformationComponent,
1332
+ ContactSupportComponent,
1333
+ MaintenanceListComponent,
1334
+ ShowLinksComponent,
1335
+ DashboardComponent,
1336
+ ConfirmDialogContactComponent], imports: [CommonModule,
1337
+ SharedRoutingModule,
1338
+ TableModule,
1339
+ InputTextModule,
1340
+ PipesModule,
1341
+ ToastModule,
1342
+ InputTextareaModule,
1343
+ MultiSelectModule,
1344
+ FormsModule,
1345
+ ReactiveFormsModule,
1346
+ ProgressSpinnerModule,
1347
+ RadioButtonModule,
1348
+ CheckboxModule,
1349
+ SelectButtonModule,
1350
+ TooltipModule,
1351
+ OverlayPanelModule,
1352
+ CalendarModule,
1353
+ SliderModule,
1354
+ DialogModule,
1355
+ ConfirmPopupModule,
1356
+ ConfirmDialogModule,
1357
+ ContextMenuModule,
1358
+ DropdownModule,
1359
+ ButtonModule,
1360
+ ToolbarModule], exports: [SystemListComponent, ContactComponent, MaintenanceListComponent, DashboardComponent] });
1361
+ SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, imports: [CommonModule,
1362
+ SharedRoutingModule,
1363
+ TableModule,
1364
+ InputTextModule,
1365
+ PipesModule,
1366
+ ToastModule,
1367
+ InputTextareaModule,
1368
+ MultiSelectModule,
1369
+ FormsModule,
1370
+ ReactiveFormsModule,
1371
+ ProgressSpinnerModule,
1372
+ RadioButtonModule,
1373
+ CheckboxModule,
1374
+ SelectButtonModule,
1375
+ TooltipModule,
1376
+ OverlayPanelModule,
1377
+ CalendarModule,
1378
+ SliderModule,
1379
+ DialogModule,
1380
+ ConfirmPopupModule,
1381
+ ConfirmDialogModule,
1382
+ ContextMenuModule,
1383
+ DropdownModule,
1384
+ ButtonModule,
1385
+ ToolbarModule] });
1386
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, decorators: [{
1387
+ type: NgModule,
1388
+ args: [{
1389
+ declarations: [
1390
+ SystemListComponent,
1391
+ ContactComponent,
1392
+ ChooseAnotherDateComponent,
1393
+ ConfirmDialogComponent,
1394
+ ConfirmedDateInformationComponent,
1395
+ ContactSupportComponent,
1396
+ MaintenanceListComponent,
1397
+ ShowLinksComponent,
1398
+ DashboardComponent,
1399
+ ConfirmDialogContactComponent
1400
+ ],
1401
+ imports: [
1402
+ CommonModule,
1403
+ SharedRoutingModule,
1404
+ TableModule,
1405
+ InputTextModule,
1406
+ PipesModule,
1407
+ ToastModule,
1408
+ InputTextareaModule,
1409
+ MultiSelectModule,
1410
+ FormsModule,
1411
+ ReactiveFormsModule,
1412
+ ProgressSpinnerModule,
1413
+ RadioButtonModule,
1414
+ CheckboxModule,
1415
+ SelectButtonModule,
1416
+ TooltipModule,
1417
+ OverlayPanelModule,
1418
+ CalendarModule,
1419
+ SliderModule,
1420
+ DialogModule,
1421
+ ConfirmPopupModule,
1422
+ ConfirmDialogModule,
1423
+ ContextMenuModule,
1424
+ DropdownModule,
1425
+ ButtonModule,
1426
+ ToolbarModule,
1427
+ ],
1428
+ exports: [SystemListComponent, ContactComponent, MaintenanceListComponent, DashboardComponent]
1429
+ }]
1430
+ }] });
1431
+
1432
+ class Account {
1433
+ }
1434
+
1435
+ class AlternativeDate {
1436
+ }
1437
+
1438
+ var ApplicationName;
1439
+ (function (ApplicationName) {
1440
+ ApplicationName["ConsomerPortal"] = "ConsomerPortal";
1441
+ ApplicationName["WarrantyPortal"] = "WarrantyPortal";
1442
+ ApplicationName["GEPortal"] = "GEPortal";
1443
+ })(ApplicationName || (ApplicationName = {}));
1444
+
1445
+ class MailRequest {
1446
+ }
1447
+
1448
+ class CancelPMMailRequest extends MailRequest {
1449
+ }
1450
+
1451
+ class CustomObject {
1452
+ }
1453
+
1454
+ class DetailedPmJob {
1455
+ }
1456
+
1457
+ var EmailStatus;
1458
+ (function (EmailStatus) {
1459
+ EmailStatus[EmailStatus["Verifying"] = 0] = "Verifying";
1460
+ EmailStatus[EmailStatus["Failed"] = 1] = "Failed";
1461
+ })(EmailStatus || (EmailStatus = {}));
1462
+
1463
+ var Field;
1464
+ (function (Field) {
1465
+ Field["Textbox"] = "textbox";
1466
+ Field["File"] = "file";
1467
+ Field["Dropdown"] = "dropdown";
1468
+ Field["Radio"] = "radio";
1469
+ Field["Checkbox"] = "checkbox";
1470
+ })(Field || (Field = {}));
1471
+
1472
+ var Language;
1473
+ (function (Language) {
1474
+ Language["FR"] = "fr-FR";
1475
+ Language["EN"] = "en-US";
1476
+ })(Language || (Language = {}));
1477
+
1478
+ class PMGroupedJob {
1479
+ }
1480
+
1481
+ class PmJob {
1482
+ }
1483
+
1484
+ class PmJobRequest {
1485
+ }
1486
+
1487
+ class ReportDateMailRequest extends MailRequest {
1488
+ }
1489
+
1490
+ var Role;
1491
+ (function (Role) {
1492
+ Role["User"] = "BasicUser";
1493
+ Role["Admin"] = "Admin";
1494
+ Role["RGPDUser"] = "RGPDUser";
1495
+ })(Role || (Role = {}));
1496
+
1497
+ class Service {
1498
+ }
1499
+
1500
+ var ServiceName;
1501
+ (function (ServiceName) {
1502
+ ServiceName["Repairer"] = "repairer";
1503
+ ServiceName["WarrantyContract"] = "warrantyContract";
1504
+ ServiceName["Devices"] = "devices";
1505
+ ServiceName["TrackRepairs"] = "trackRepairs";
1506
+ ServiceName["ExtendedWarranty"] = "extendedWarranty";
1507
+ ServiceName["ScheduleAppointment"] = "scheduleAppointment";
1508
+ ServiceName["Documentation"] = "documentation";
1509
+ ServiceName["RepairabilityIndex"] = "repairabilityIndex";
1510
+ })(ServiceName || (ServiceName = {}));
1511
+
1512
+ class SocialLoginRequest {
1513
+ }
1514
+
1515
+ var SocialMadia;
1516
+ (function (SocialMadia) {
1517
+ SocialMadia["Gmail"] = "Gmail";
1518
+ })(SocialMadia || (SocialMadia = {}));
1519
+
1520
+ class System {
1521
+ }
1522
+
1523
+ var TokenStatus;
1524
+ (function (TokenStatus) {
1525
+ TokenStatus[TokenStatus["Validating"] = 0] = "Validating";
1526
+ TokenStatus[TokenStatus["Valid"] = 1] = "Valid";
1527
+ TokenStatus[TokenStatus["Invalid"] = 2] = "Invalid";
1528
+ })(TokenStatus || (TokenStatus = {}));
1529
+
1530
+ class Warranty {
1531
+ }
1532
+
1533
+ /*
1534
+ * Public API Surface of awf-test-lib
1535
+ */
1536
+
1537
+ /**
1538
+ * Generated bundle index. Do not edit.
1539
+ */
1540
+
1541
+ 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 };
1542
+ //# sourceMappingURL=awf-test-lib.mjs.map