awf-test-lib 0.1.23 → 0.1.24

Sign up to get free protection for your applications and to get access to all the features.
Files changed (141) hide show
  1. package/{esm2020 → esm2022}/awf-test-lib.mjs +4 -4
  2. package/{esm2020 → esm2022}/lib/core/core-routing.module.mjs +18 -18
  3. package/{esm2020 → esm2022}/lib/core/core.module.mjs +51 -51
  4. package/esm2022/lib/core/menu/menu.component.mjs +44 -0
  5. package/esm2022/lib/core/menu-consomer/menu-consomer.component.mjs +28 -0
  6. package/esm2022/lib/core/menu-ge-portal/menu-ge-portal.component.mjs +108 -0
  7. package/esm2022/lib/core/menu-warranty/menu-warranty.component.mjs +37 -0
  8. package/esm2022/lib/core/not-found/not-found.component.mjs +21 -0
  9. package/{esm2020 → esm2022}/lib/core/top-bar/top-bar.component.mjs +43 -41
  10. package/esm2022/lib/models/account.model.mjs +15 -0
  11. package/esm2022/lib/models/alternativeDate.model.mjs +7 -0
  12. package/{esm2020 → esm2022}/lib/models/applicationName.mjs +6 -6
  13. package/{esm2020 → esm2022}/lib/models/cancelPMMailRequest.model.mjs +6 -4
  14. package/{esm2020 → esm2022}/lib/models/customObject.model.mjs +4 -3
  15. package/esm2022/lib/models/detailedPmJob.model.mjs +23 -0
  16. package/{esm2020 → esm2022}/lib/models/emailStatus.mjs +5 -5
  17. package/{esm2020 → esm2022}/lib/models/emailType.mjs +16 -16
  18. package/{esm2020 → esm2022}/lib/models/eventStatus.mjs +8 -8
  19. package/{esm2020 → esm2022}/lib/models/field.mjs +8 -8
  20. package/{esm2020 → esm2022}/lib/models/language.mjs +5 -5
  21. package/esm2022/lib/models/mailRequest.model.mjs +17 -0
  22. package/{esm2020 → esm2022}/lib/models/pMGroupedJob.model.mjs +4 -3
  23. package/esm2022/lib/models/pmJob.model.mjs +23 -0
  24. package/esm2022/lib/models/pmJobRequest.model.mjs +5 -0
  25. package/{esm2020 → esm2022}/lib/models/pmJobStatus.mjs +16 -16
  26. package/{esm2020 → esm2022}/lib/models/reason.model.mjs +5 -3
  27. package/{esm2020 → esm2022}/lib/models/reasonCode.mjs +8 -8
  28. package/{esm2020 → esm2022}/lib/models/reasonContact.mjs +7 -7
  29. package/{esm2020 → esm2022}/lib/models/reportDateMailRequest.model.mjs +6 -4
  30. package/{esm2020 → esm2022}/lib/models/role.mjs +6 -6
  31. package/esm2022/lib/models/service.model.mjs +9 -0
  32. package/{esm2020 → esm2022}/lib/models/serviceName.mjs +11 -11
  33. package/esm2022/lib/models/socialLoginRequest.model.mjs +7 -0
  34. package/{esm2020 → esm2022}/lib/models/socialMadia.mjs +4 -4
  35. package/{esm2020 → esm2022}/lib/models/stingBoolean.mjs +5 -5
  36. package/esm2022/lib/models/system.mjs +14 -0
  37. package/{esm2020 → esm2022}/lib/models/theme.model.mjs +1 -1
  38. package/{esm2020 → esm2022}/lib/models/tokenStatus.mjs +6 -6
  39. package/esm2022/lib/models/warranty.mjs +18 -0
  40. package/{esm2020 → esm2022}/lib/pipes/pipes/pipes.module.mjs +21 -21
  41. package/esm2022/lib/pipes/subrtring-w.pipe.mjs +20 -0
  42. package/{esm2020 → esm2022}/lib/pipes/substring.pipe.mjs +16 -16
  43. package/esm2022/lib/shared/choose-another-date/choose-another-date.component.mjs +117 -0
  44. package/esm2022/lib/shared/confirm-dialog/confirm-dialog.component.mjs +52 -0
  45. package/esm2022/lib/shared/confirm-dialog-contact/confirm-dialog-contact.component.mjs +48 -0
  46. package/esm2022/lib/shared/confirmed-date-information/confirmed-date-information.component.mjs +44 -0
  47. package/esm2022/lib/shared/contact/contact.component.mjs +170 -0
  48. package/esm2022/lib/shared/contact-support/contact-support.component.mjs +186 -0
  49. package/esm2022/lib/shared/dashboard/dashboard.component.mjs +39 -0
  50. package/esm2022/lib/shared/maintenance-list/maintenance-list.component.mjs +372 -0
  51. package/{esm2020 → esm2022}/lib/shared/shared-routing.module.mjs +18 -18
  52. package/{esm2020 → esm2022}/lib/shared/shared.module.mjs +144 -144
  53. package/esm2022/lib/shared/show-links/show-links.component.mjs +86 -0
  54. package/{esm2020 → esm2022}/lib/shared/system-list/system-list.component.mjs +35 -33
  55. package/{esm2020 → esm2022}/public-api.mjs +47 -47
  56. package/{fesm2020 → fesm2022}/awf-test-lib.mjs +1709 -1499
  57. package/fesm2022/awf-test-lib.mjs.map +1 -0
  58. package/index.d.ts +5 -5
  59. package/lib/core/core-routing.module.d.ts +7 -7
  60. package/lib/core/core.module.d.ts +15 -15
  61. package/lib/core/menu/menu.component.d.ts +17 -17
  62. package/lib/core/menu-consomer/menu-consomer.component.d.ts +12 -12
  63. package/lib/core/menu-ge-portal/menu-ge-portal.component.d.ts +20 -20
  64. package/lib/core/menu-warranty/menu-warranty.component.d.ts +15 -15
  65. package/lib/core/not-found/not-found.component.d.ts +10 -10
  66. package/lib/core/top-bar/top-bar.component.d.ts +13 -13
  67. package/lib/models/account.model.d.ts +14 -14
  68. package/lib/models/alternativeDate.model.d.ts +6 -6
  69. package/lib/models/applicationName.d.ts +5 -5
  70. package/lib/models/cancelPMMailRequest.model.d.ts +5 -5
  71. package/lib/models/customObject.model.d.ts +3 -3
  72. package/lib/models/detailedPmJob.model.d.ts +23 -23
  73. package/lib/models/emailStatus.d.ts +4 -4
  74. package/lib/models/emailType.d.ts +15 -15
  75. package/lib/models/eventStatus.d.ts +7 -7
  76. package/lib/models/field.d.ts +7 -7
  77. package/lib/models/language.d.ts +4 -4
  78. package/lib/models/mailRequest.model.d.ts +16 -16
  79. package/lib/models/pMGroupedJob.model.d.ts +3 -3
  80. package/lib/models/pmJob.model.d.ts +25 -25
  81. package/lib/models/pmJobRequest.model.d.ts +5 -5
  82. package/lib/models/pmJobStatus.d.ts +14 -14
  83. package/lib/models/reason.model.d.ts +4 -4
  84. package/lib/models/reasonCode.d.ts +7 -7
  85. package/lib/models/reasonContact.d.ts +6 -6
  86. package/lib/models/reportDateMailRequest.model.d.ts +5 -5
  87. package/lib/models/role.d.ts +5 -5
  88. package/lib/models/service.model.d.ts +8 -8
  89. package/lib/models/serviceName.d.ts +10 -10
  90. package/lib/models/socialLoginRequest.model.d.ts +6 -6
  91. package/lib/models/socialMadia.d.ts +3 -3
  92. package/lib/models/stingBoolean.d.ts +4 -4
  93. package/lib/models/system.d.ts +14 -14
  94. package/lib/models/theme.model.d.ts +38 -38
  95. package/lib/models/tokenStatus.d.ts +5 -5
  96. package/lib/models/warranty.d.ts +17 -17
  97. package/lib/pipes/pipes/pipes.module.d.ts +9 -9
  98. package/lib/pipes/subrtring-w.pipe.d.ts +7 -7
  99. package/lib/pipes/substring.pipe.d.ts +7 -7
  100. package/lib/shared/choose-another-date/choose-another-date.component.d.ts +33 -33
  101. package/lib/shared/confirm-dialog/confirm-dialog.component.d.ts +21 -21
  102. package/lib/shared/confirm-dialog-contact/confirm-dialog-contact.component.d.ts +19 -19
  103. package/lib/shared/confirmed-date-information/confirmed-date-information.component.d.ts +17 -17
  104. package/lib/shared/contact/contact.component.d.ts +39 -39
  105. package/lib/shared/contact-support/contact-support.component.d.ts +50 -50
  106. package/lib/shared/dashboard/dashboard.component.d.ts +18 -18
  107. package/lib/shared/maintenance-list/maintenance-list.component.d.ts +81 -81
  108. package/lib/shared/shared-routing.module.d.ts +7 -7
  109. package/lib/shared/shared.module.d.ts +40 -40
  110. package/lib/shared/show-links/show-links.component.d.ts +24 -24
  111. package/lib/shared/system-list/system-list.component.d.ts +16 -16
  112. package/package.json +5 -11
  113. package/public-api.d.ts +42 -42
  114. package/esm2020/lib/core/menu/menu.component.mjs +0 -40
  115. package/esm2020/lib/core/menu-consomer/menu-consomer.component.mjs +0 -27
  116. package/esm2020/lib/core/menu-ge-portal/menu-ge-portal.component.mjs +0 -105
  117. package/esm2020/lib/core/menu-warranty/menu-warranty.component.mjs +0 -35
  118. package/esm2020/lib/core/not-found/not-found.component.mjs +0 -19
  119. package/esm2020/lib/models/account.model.mjs +0 -3
  120. package/esm2020/lib/models/alternativeDate.model.mjs +0 -3
  121. package/esm2020/lib/models/detailedPmJob.model.mjs +0 -3
  122. package/esm2020/lib/models/mailRequest.model.mjs +0 -3
  123. package/esm2020/lib/models/pmJob.model.mjs +0 -3
  124. package/esm2020/lib/models/pmJobRequest.model.mjs +0 -3
  125. package/esm2020/lib/models/service.model.mjs +0 -3
  126. package/esm2020/lib/models/socialLoginRequest.model.mjs +0 -3
  127. package/esm2020/lib/models/system.mjs +0 -3
  128. package/esm2020/lib/models/warranty.mjs +0 -3
  129. package/esm2020/lib/pipes/subrtring-w.pipe.mjs +0 -20
  130. package/esm2020/lib/shared/choose-another-date/choose-another-date.component.mjs +0 -110
  131. package/esm2020/lib/shared/confirm-dialog/confirm-dialog.component.mjs +0 -45
  132. package/esm2020/lib/shared/confirm-dialog-contact/confirm-dialog-contact.component.mjs +0 -42
  133. package/esm2020/lib/shared/confirmed-date-information/confirmed-date-information.component.mjs +0 -39
  134. package/esm2020/lib/shared/contact/contact.component.mjs +0 -160
  135. package/esm2020/lib/shared/contact-support/contact-support.component.mjs +0 -172
  136. package/esm2020/lib/shared/dashboard/dashboard.component.mjs +0 -35
  137. package/esm2020/lib/shared/maintenance-list/maintenance-list.component.mjs +0 -352
  138. package/esm2020/lib/shared/show-links/show-links.component.mjs +0 -80
  139. package/fesm2015/awf-test-lib.mjs +0 -1654
  140. package/fesm2015/awf-test-lib.mjs.map +0 -1
  141. package/fesm2020/awf-test-lib.mjs.map +0 -1
@@ -6,7 +6,7 @@ import * as i1 from '@angular/router';
6
6
  import { RouterModule } from '@angular/router';
7
7
  import * as i1$2 from 'primeng/megamenu';
8
8
  import { MegaMenuModule } from 'primeng/megamenu';
9
- import jwt_decode from 'jwt-decode';
9
+ import { jwtDecode } from 'jwt-decode';
10
10
  import * as i1$3 from 'primeng/api';
11
11
  import { MessageService, ConfirmationService } from 'primeng/api';
12
12
  import * as i2 from 'primeng/table';
@@ -42,1608 +42,1818 @@ import { SelectButtonModule } from 'primeng/selectbutton';
42
42
  import { RadioButtonModule } from 'primeng/radiobutton';
43
43
  import { CheckboxModule } from 'primeng/checkbox';
44
44
 
45
- const routes$1 = [];
46
- class CoreRoutingModule {
47
- }
48
- CoreRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
49
- CoreRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: CoreRoutingModule, imports: [i1.RouterModule], exports: [RouterModule] });
50
- CoreRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreRoutingModule, imports: [RouterModule.forChild(routes$1), RouterModule] });
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreRoutingModule, decorators: [{
52
- type: NgModule,
53
- args: [{
54
- imports: [RouterModule.forChild(routes$1)],
55
- exports: [RouterModule]
56
- }]
45
+ const routes$1 = [];
46
+ class CoreRoutingModule {
47
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: CoreRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
48
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.2", ngImport: i0, type: CoreRoutingModule, imports: [i1.RouterModule], exports: [RouterModule] });
49
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: CoreRoutingModule, imports: [RouterModule.forChild(routes$1), RouterModule] });
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: CoreRoutingModule, decorators: [{
52
+ type: NgModule,
53
+ args: [{
54
+ imports: [RouterModule.forChild(routes$1)],
55
+ exports: [RouterModule]
56
+ }]
57
57
  }] });
58
58
 
59
- class NotFoundComponent {
60
- constructor() { }
61
- ngOnChanges() { }
62
- }
63
- NotFoundComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
64
- 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$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NotFoundComponent, decorators: [{
66
- type: Component,
67
- 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"] }]
68
- }], ctorParameters: function () { return []; }, propDecorators: { translate: [{
69
- type: Input
70
- }], applicationName: [{
71
- type: Input
59
+ class NotFoundComponent {
60
+ translate;
61
+ applicationName;
62
+ constructor() { }
63
+ ngOnChanges() { }
64
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
65
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
66
+ }
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: NotFoundComponent, decorators: [{
68
+ type: Component,
69
+ 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"] }]
70
+ }], ctorParameters: () => [], propDecorators: { translate: [{
71
+ type: Input
72
+ }], applicationName: [{
73
+ type: Input
72
74
  }] } });
73
75
 
74
- class TopBarComponent {
75
- constructor() {
76
- this.logOutClick = new EventEmitter();
77
- }
78
- ngOnChanges() {
79
- this.items = [
80
- {
81
- label: this.translate.parameters, icon: 'pi pi-fw pi-user',
82
- items: [
83
- [
84
- {
85
- label: this.translate.account,
86
- items: [
87
- { label: this.translate.logout, icon: 'pi pi-fw pi-power-off', command: () => { this.logout(); } },
88
- ]
89
- },
90
- ],
91
- ]
92
- }
93
- ];
94
- }
95
- logout() {
96
- this.logOutClick.emit();
97
- }
98
- }
99
- TopBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: TopBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
100
- 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$2.MegaMenu, selector: "p-megaMenu", inputs: ["model", "style", "styleClass", "orientation", "autoZIndex", "baseZIndex"] }] });
101
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: TopBarComponent, decorators: [{
102
- type: Component,
103
- 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"] }]
104
- }], ctorParameters: function () { return []; }, propDecorators: { translate: [{
105
- type: Input
106
- }], applicationName: [{
107
- type: Input
108
- }], logOutClick: [{
109
- type: Output
76
+ class TopBarComponent {
77
+ translate;
78
+ applicationName;
79
+ logOutClick = new EventEmitter();
80
+ items;
81
+ constructor() { }
82
+ ngOnChanges() {
83
+ this.items = [
84
+ {
85
+ label: this.translate.parameters, icon: 'pi pi-fw pi-user',
86
+ items: [
87
+ [
88
+ {
89
+ label: this.translate.account,
90
+ items: [
91
+ { label: this.translate.logout, icon: 'pi pi-fw pi-power-off', command: () => { this.logout(); } },
92
+ ]
93
+ },
94
+ ],
95
+ ]
96
+ }
97
+ ];
98
+ }
99
+ logout() {
100
+ this.logOutClick.emit();
101
+ }
102
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: TopBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
103
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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$2.MegaMenu, selector: "p-megaMenu", inputs: ["model", "style", "styleClass", "orientation", "id", "ariaLabel", "ariaLabelledBy", "disabled", "tabindex"] }] });
104
+ }
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: TopBarComponent, decorators: [{
106
+ type: Component,
107
+ 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"] }]
108
+ }], ctorParameters: () => [], propDecorators: { translate: [{
109
+ type: Input
110
+ }], applicationName: [{
111
+ type: Input
112
+ }], logOutClick: [{
113
+ type: Output
110
114
  }] } });
111
115
 
112
- class MenuWarrantyComponent {
113
- constructor() {
114
- this.logOutClick = new EventEmitter();
115
- this.hideMenu = new EventEmitter();
116
- }
117
- ngOnInit() {
118
- }
119
- logout() {
120
- this.logOutClick.emit();
121
- }
122
- hideMenuMethode() {
123
- this.hideMenu.emit();
124
- }
125
- }
126
- MenuWarrantyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuWarrantyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
127
- 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$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
128
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuWarrantyComponent, decorators: [{
129
- type: Component,
130
- 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"] }]
131
- }], ctorParameters: function () { return []; }, propDecorators: { logOutClick: [{
132
- type: Output
133
- }], hideMenu: [{
134
- type: Output
135
- }], isAdmin: [{
136
- type: Input
137
- }], translate: [{
138
- type: Input
139
- }], haveConsumerDataId: [{
140
- type: Input
116
+ class MenuWarrantyComponent {
117
+ logOutClick = new EventEmitter();
118
+ hideMenu = new EventEmitter();
119
+ isAdmin;
120
+ translate;
121
+ haveConsumerDataId;
122
+ constructor() { }
123
+ ngOnInit() {
124
+ }
125
+ logout() {
126
+ this.logOutClick.emit();
127
+ }
128
+ hideMenuMethode() {
129
+ this.hideMenu.emit();
130
+ }
131
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MenuWarrantyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
132
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
133
+ }
134
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MenuWarrantyComponent, decorators: [{
135
+ type: Component,
136
+ 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"] }]
137
+ }], ctorParameters: () => [], propDecorators: { logOutClick: [{
138
+ type: Output
139
+ }], hideMenu: [{
140
+ type: Output
141
+ }], isAdmin: [{
142
+ type: Input
143
+ }], translate: [{
144
+ type: Input
145
+ }], haveConsumerDataId: [{
146
+ type: Input
141
147
  }] } });
142
148
 
143
- class MenuConsomerComponent {
144
- constructor() {
145
- this.logOutClick = new EventEmitter();
146
- }
147
- ngOnChanges() {
148
- }
149
- logout() {
150
- this.logOutClick.emit();
151
- }
152
- }
153
- MenuConsomerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuConsomerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
154
- 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$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuConsomerComponent, decorators: [{
156
- type: Component,
157
- 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"] }]
158
- }], ctorParameters: function () { return []; }, propDecorators: { logOutClick: [{
159
- type: Output
160
- }], translate: [{
161
- type: Input
162
- }], isAdmin: [{
163
- type: Input
149
+ class MenuConsomerComponent {
150
+ logOutClick = new EventEmitter();
151
+ translate;
152
+ isAdmin;
153
+ constructor() { }
154
+ ngOnChanges() {
155
+ }
156
+ logout() {
157
+ this.logOutClick.emit();
158
+ }
159
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MenuConsomerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
160
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
161
+ }
162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MenuConsomerComponent, decorators: [{
163
+ type: Component,
164
+ 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"] }]
165
+ }], ctorParameters: () => [], propDecorators: { logOutClick: [{
166
+ type: Output
167
+ }], translate: [{
168
+ type: Input
169
+ }], isAdmin: [{
170
+ type: Input
164
171
  }] } });
165
172
 
166
- class MenuGePortalComponent {
167
- constructor(router) {
168
- this.router = router;
169
- this.logOutClick = new EventEmitter();
170
- this.hideMenu = new EventEmitter();
171
- this.displayViewAs = false;
172
- this.displayViewAs = !this.isTokenExpired();
173
- }
174
- logout() {
175
- this.displayViewAs = !this.isTokenExpired();
176
- if (this.displayViewAs) {
177
- this.deleteConnexionInfo();
178
- this.navigate("/ge");
179
- }
180
- else {
181
- this.logOutClick.emit();
182
- }
183
- }
184
- menuMethode(path) {
185
- this.redirectByPath(path);
186
- this.hideMenu.emit();
187
- }
188
- isTokenExpired() {
189
- const token = sessionStorage.getItem("va-token") ? sessionStorage.getItem("va-token") : localStorage.getItem("va-token");
190
- if (!token) {
191
- return true; // Token absent, considéré comme expiré
192
- }
193
- const tokenData = jwt_decode(token);
194
- const expirationTime = tokenData?.exp; // Convertir en millisecondes
195
- const currentTimeInSeconds = Math.floor(Date.now() / 1000); // Temps actuel en secondes
196
- const isExpired = expirationTime ? expirationTime < currentTimeInSeconds : true;
197
- if (isExpired) {
198
- this.deleteConnexionInfo();
199
- }
200
- return isExpired;
201
- }
202
- redirectByPath(path) {
203
- this.displayViewAs = !this.isTokenExpired();
204
- if (this.displayViewAs) {
205
- switch (path) {
206
- case null || undefined || '':
207
- this.navigate('/ge/view-as/home');
208
- break;
209
- case 'contact':
210
- this.navigate('/ge/view-as/contact');
211
- break;
212
- case 'maintenance':
213
- this.navigate('/ge/view-as/maintenance');
214
- break;
215
- case 'systems':
216
- this.navigate('/ge/view-as/systems');
217
- break;
218
- default: this.navigate('/ge/view-as/home');
219
- }
220
- }
221
- else {
222
- switch (path) {
223
- case null || undefined || '':
224
- this.navigate('/ge');
225
- break;
226
- case 'contact':
227
- this.navigate('/ge/contact');
228
- break;
229
- case 'maintenance':
230
- this.navigate('/ge/maintenance');
231
- break;
232
- case 'systems':
233
- this.navigate('/ge/systems');
234
- break;
235
- default: this.navigate('/ge');
236
- }
237
- }
238
- }
239
- deleteConnexionInfo() {
240
- sessionStorage.removeItem("va-token");
241
- sessionStorage.removeItem("va-email");
242
- localStorage.removeItem("va-token");
243
- localStorage.removeItem("va-email");
244
- sessionStorage.setItem("va", "false");
245
- localStorage.setItem("va", "false");
246
- }
247
- navigate(route) {
248
- this.router.navigate([route]);
249
- }
250
- }
251
- MenuGePortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuGePortalComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
252
- 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\" (click)=\"menuMethode()\"> <i class=\"pi pi-home\"></i> {{translate.home}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('contact')\"> <i class=\"pi pi-phone\"></i> {{translate.contact}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('systems')\"> <i class=\"pi pi-eye\"></i> {{translate.systems}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('maintenance')\"> <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$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
253
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuGePortalComponent, decorators: [{
254
- type: Component,
255
- args: [{ selector: 'awf-menu-ge-portal', template: "<div class=\"layout-menu\" *ngIf=\"translate\">\r\n <div class=\"menu\" (click)=\"menuMethode()\"> <i class=\"pi pi-home\"></i> {{translate.home}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('contact')\"> <i class=\"pi pi-phone\"></i> {{translate.contact}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('systems')\"> <i class=\"pi pi-eye\"></i> {{translate.systems}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('maintenance')\"> <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"] }]
256
- }], ctorParameters: function () { return [{ type: i1.Router }]; }, propDecorators: { logOutClick: [{
257
- type: Output
258
- }], translate: [{
259
- type: Input
260
- }], isAdmin: [{
261
- type: Input
262
- }], hideMenu: [{
263
- type: Output
173
+ class MenuGePortalComponent {
174
+ router;
175
+ logOutClick = new EventEmitter();
176
+ translate;
177
+ isAdmin;
178
+ hideMenu = new EventEmitter();
179
+ displayViewAs = false;
180
+ constructor(router) {
181
+ this.router = router;
182
+ this.displayViewAs = !this.isTokenExpired();
183
+ }
184
+ logout() {
185
+ this.displayViewAs = !this.isTokenExpired();
186
+ if (this.displayViewAs) {
187
+ this.deleteConnexionInfo();
188
+ this.navigate("/ge");
189
+ }
190
+ else {
191
+ this.logOutClick.emit();
192
+ }
193
+ }
194
+ menuMethode(path) {
195
+ this.redirectByPath(path);
196
+ this.hideMenu.emit();
197
+ }
198
+ isTokenExpired() {
199
+ const token = sessionStorage.getItem("va-token") ? sessionStorage.getItem("va-token") : localStorage.getItem("va-token");
200
+ if (!token) {
201
+ return true; // Token absent, considéré comme expiré
202
+ }
203
+ const tokenData = jwtDecode(token);
204
+ const expirationTime = tokenData?.exp; // Convertir en millisecondes
205
+ const currentTimeInSeconds = Math.floor(Date.now() / 1000); // Temps actuel en secondes
206
+ const isExpired = expirationTime ? expirationTime < currentTimeInSeconds : true;
207
+ if (isExpired) {
208
+ this.deleteConnexionInfo();
209
+ }
210
+ return isExpired;
211
+ }
212
+ redirectByPath(path) {
213
+ this.displayViewAs = !this.isTokenExpired();
214
+ if (this.displayViewAs) {
215
+ switch (path) {
216
+ case null || undefined || '':
217
+ this.navigate('/ge/view-as/home');
218
+ break;
219
+ case 'contact':
220
+ this.navigate('/ge/view-as/contact');
221
+ break;
222
+ case 'maintenance':
223
+ this.navigate('/ge/view-as/maintenance');
224
+ break;
225
+ case 'systems':
226
+ this.navigate('/ge/view-as/systems');
227
+ break;
228
+ default: this.navigate('/ge/view-as/home');
229
+ }
230
+ }
231
+ else {
232
+ switch (path) {
233
+ case null || undefined || '':
234
+ this.navigate('/ge');
235
+ break;
236
+ case 'contact':
237
+ this.navigate('/ge/contact');
238
+ break;
239
+ case 'maintenance':
240
+ this.navigate('/ge/maintenance');
241
+ break;
242
+ case 'systems':
243
+ this.navigate('/ge/systems');
244
+ break;
245
+ default: this.navigate('/ge');
246
+ }
247
+ }
248
+ }
249
+ deleteConnexionInfo() {
250
+ sessionStorage.removeItem("va-token");
251
+ sessionStorage.removeItem("va-email");
252
+ localStorage.removeItem("va-token");
253
+ localStorage.removeItem("va-email");
254
+ sessionStorage.setItem("va", "false");
255
+ localStorage.setItem("va", "false");
256
+ }
257
+ navigate(route) {
258
+ this.router.navigate([route]);
259
+ }
260
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MenuGePortalComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
261
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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\" (click)=\"menuMethode()\"> <i class=\"pi pi-home\"></i> {{translate.home}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('contact')\"> <i class=\"pi pi-phone\"></i> {{translate.contact}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('systems')\"> <i class=\"pi pi-eye\"></i> {{translate.systems}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('maintenance')\"> <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$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
262
+ }
263
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MenuGePortalComponent, decorators: [{
264
+ type: Component,
265
+ args: [{ selector: 'awf-menu-ge-portal', template: "<div class=\"layout-menu\" *ngIf=\"translate\">\r\n <div class=\"menu\" (click)=\"menuMethode()\"> <i class=\"pi pi-home\"></i> {{translate.home}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('contact')\"> <i class=\"pi pi-phone\"></i> {{translate.contact}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('systems')\"> <i class=\"pi pi-eye\"></i> {{translate.systems}}</div>\r\n <div class=\"menu\" (click)=\"menuMethode('maintenance')\"> <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"] }]
266
+ }], ctorParameters: () => [{ type: i1.Router }], propDecorators: { logOutClick: [{
267
+ type: Output
268
+ }], translate: [{
269
+ type: Input
270
+ }], isAdmin: [{
271
+ type: Input
272
+ }], hideMenu: [{
273
+ type: Output
264
274
  }] } });
265
275
 
266
- class MenuComponent {
267
- constructor() {
268
- this.logOutClick = new EventEmitter();
269
- this.hideMenu = new EventEmitter();
270
- }
271
- ngOnInit() { }
272
- logout() {
273
- this.logOutClick.emit();
274
- }
275
- hideMenuMethode() {
276
- this.hideMenu.emit();
277
- }
278
- }
279
- MenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
280
- 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$1.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"] }] });
281
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MenuComponent, decorators: [{
282
- type: Component,
283
- 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"] }]
284
- }], ctorParameters: function () { return []; }, propDecorators: { logOutClick: [{
285
- type: Output
286
- }], hideMenu: [{
287
- type: Output
288
- }], active: [{
289
- type: Input
290
- }], isAdmin: [{
291
- type: Input
292
- }], translate: [{
293
- type: Input
294
- }], applicationName: [{
295
- type: Input
296
- }], haveConsumerDataId: [{
297
- type: Input
276
+ class MenuComponent {
277
+ logOutClick = new EventEmitter();
278
+ hideMenu = new EventEmitter();
279
+ active;
280
+ isAdmin;
281
+ translate;
282
+ applicationName;
283
+ haveConsumerDataId;
284
+ constructor() { }
285
+ ngOnInit() { }
286
+ logout() {
287
+ this.logOutClick.emit();
288
+ }
289
+ hideMenuMethode() {
290
+ this.hideMenu.emit();
291
+ }
292
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
293
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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$1.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"] }] });
294
+ }
295
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MenuComponent, decorators: [{
296
+ type: Component,
297
+ 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"] }]
298
+ }], ctorParameters: () => [], propDecorators: { logOutClick: [{
299
+ type: Output
300
+ }], hideMenu: [{
301
+ type: Output
302
+ }], active: [{
303
+ type: Input
304
+ }], isAdmin: [{
305
+ type: Input
306
+ }], translate: [{
307
+ type: Input
308
+ }], applicationName: [{
309
+ type: Input
310
+ }], haveConsumerDataId: [{
311
+ type: Input
298
312
  }] } });
299
313
 
300
- class CoreModule {
301
- }
302
- CoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
303
- CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: CoreModule, declarations: [TopBarComponent,
304
- NotFoundComponent,
305
- MenuComponent,
306
- MenuWarrantyComponent,
307
- MenuConsomerComponent,
308
- MenuGePortalComponent], imports: [CommonModule,
309
- CoreRoutingModule,
310
- MegaMenuModule], exports: [NotFoundComponent,
311
- MenuComponent,
312
- TopBarComponent] });
313
- CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreModule, imports: [CommonModule,
314
- CoreRoutingModule,
315
- MegaMenuModule] });
316
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CoreModule, decorators: [{
317
- type: NgModule,
318
- args: [{
319
- declarations: [
320
- TopBarComponent,
321
- NotFoundComponent,
322
- MenuComponent,
323
- MenuWarrantyComponent,
324
- MenuConsomerComponent,
325
- MenuGePortalComponent,
326
- ],
327
- imports: [
328
- CommonModule,
329
- CoreRoutingModule,
330
- MegaMenuModule
331
- ],
332
- exports: [
333
- NotFoundComponent,
334
- MenuComponent,
335
- TopBarComponent,
336
- ]
337
- }]
314
+ class CoreModule {
315
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
316
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.2", ngImport: i0, type: CoreModule, declarations: [TopBarComponent,
317
+ NotFoundComponent,
318
+ MenuComponent,
319
+ MenuWarrantyComponent,
320
+ MenuConsomerComponent,
321
+ MenuGePortalComponent], imports: [CommonModule,
322
+ CoreRoutingModule,
323
+ MegaMenuModule], exports: [NotFoundComponent,
324
+ MenuComponent,
325
+ TopBarComponent] });
326
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: CoreModule, imports: [CommonModule,
327
+ CoreRoutingModule,
328
+ MegaMenuModule] });
329
+ }
330
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: CoreModule, decorators: [{
331
+ type: NgModule,
332
+ args: [{
333
+ declarations: [
334
+ TopBarComponent,
335
+ NotFoundComponent,
336
+ MenuComponent,
337
+ MenuWarrantyComponent,
338
+ MenuConsomerComponent,
339
+ MenuGePortalComponent,
340
+ ],
341
+ imports: [
342
+ CommonModule,
343
+ CoreRoutingModule,
344
+ MegaMenuModule
345
+ ],
346
+ exports: [
347
+ NotFoundComponent,
348
+ MenuComponent,
349
+ TopBarComponent,
350
+ ]
351
+ }]
338
352
  }] });
339
353
 
340
- class SystemListComponent {
341
- constructor() {
342
- this.systems = [];
343
- this.language = navigator.language.substr(0, 2).toLowerCase();
344
- }
345
- ngOnChanges() { }
346
- applyFilterGlobal($event, stringVal) {
347
- this.dt?.filterGlobal($event.target.value, stringVal);
348
- }
349
- }
350
- SystemListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SystemListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
351
- 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: \"EEE dd MMM yyyy\":\"\":language}}</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: i2.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: i2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i2.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "directive", type: i4.InputText, selector: "[pInputText]" }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }] });
352
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SystemListComponent, decorators: [{
353
- type: Component,
354
- 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: \"EEE dd MMM yyyy\":\"\":language}}</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" }]
355
- }], ctorParameters: function () { return []; }, propDecorators: { dt: [{
356
- type: ViewChild,
357
- args: ['dt']
358
- }], translate: [{
359
- type: Input
360
- }], globaltranslate: [{
361
- type: Input
362
- }], systems: [{
363
- type: Input
354
+ class SystemListComponent {
355
+ dt;
356
+ translate;
357
+ globaltranslate;
358
+ systems = [];
359
+ language = navigator.language.substr(0, 2).toLowerCase();
360
+ constructor() { }
361
+ ngOnChanges() { }
362
+ applyFilterGlobal($event, stringVal) {
363
+ this.dt?.filterGlobal($event.target.value, stringVal);
364
+ }
365
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SystemListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
366
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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: \"EEE dd MMM yyyy\":\"\":language}}</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: i2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "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", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "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: i2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i2.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "directive", type: i4.InputText, selector: "[pInputText]" }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }] });
367
+ }
368
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SystemListComponent, decorators: [{
369
+ type: Component,
370
+ 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: \"EEE dd MMM yyyy\":\"\":language}}</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" }]
371
+ }], ctorParameters: () => [], propDecorators: { dt: [{
372
+ type: ViewChild,
373
+ args: ['dt']
374
+ }], translate: [{
375
+ type: Input
376
+ }], globaltranslate: [{
377
+ type: Input
378
+ }], systems: [{
379
+ type: Input
364
380
  }] } });
365
381
 
366
- class SubstringPipe {
367
- transform(time, arg1, arg2) {
368
- return time.substring(arg1, arg2);
369
- }
370
- }
371
- SubstringPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubstringPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
372
- SubstringPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SubstringPipe, name: "substring" });
373
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubstringPipe, decorators: [{
374
- type: Pipe,
375
- args: [{
376
- name: 'substring'
377
- }]
382
+ class SubstringPipe {
383
+ transform(time, arg1, arg2) {
384
+ return time.substring(arg1, arg2);
385
+ }
386
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SubstringPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
387
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.2.2", ngImport: i0, type: SubstringPipe, name: "substring" });
388
+ }
389
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SubstringPipe, decorators: [{
390
+ type: Pipe,
391
+ args: [{
392
+ name: 'substring'
393
+ }]
378
394
  }] });
379
395
 
380
- class SubrtringWPipe {
381
- transform(brand, manufacturerId) {
382
- if (manufacturerId == 4 && (brand.substring(0, 2) === 'FR')) {
383
- return brand.substring(2, 12);
384
- }
385
- else
386
- return brand;
387
- }
388
- }
389
- SubrtringWPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubrtringWPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
390
- SubrtringWPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SubrtringWPipe, name: "subrtringW" });
391
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SubrtringWPipe, decorators: [{
392
- type: Pipe,
393
- args: [{
394
- name: 'subrtringW'
395
- }]
396
+ class SubrtringWPipe {
397
+ transform(brand, manufacturerId) {
398
+ if (manufacturerId == 4 && (brand.substring(0, 2) === 'FR')) {
399
+ return brand.substring(2, 12);
400
+ }
401
+ else
402
+ return brand;
403
+ }
404
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SubrtringWPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
405
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.2.2", ngImport: i0, type: SubrtringWPipe, name: "subrtringW" });
406
+ }
407
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SubrtringWPipe, decorators: [{
408
+ type: Pipe,
409
+ args: [{
410
+ name: 'subrtringW'
411
+ }]
396
412
  }] });
397
413
 
398
- class PipesModule {
399
- }
400
- PipesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
401
- PipesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, declarations: [SubstringPipe, SubrtringWPipe], imports: [CommonModule], exports: [SubstringPipe, SubrtringWPipe] });
402
- PipesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, imports: [CommonModule] });
403
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: PipesModule, decorators: [{
404
- type: NgModule,
405
- args: [{
406
- declarations: [SubstringPipe, SubrtringWPipe],
407
- exports: [SubstringPipe, SubrtringWPipe],
408
- imports: [
409
- CommonModule
410
- ]
411
- }]
414
+ class PipesModule {
415
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: PipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
416
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.2", ngImport: i0, type: PipesModule, declarations: [SubstringPipe, SubrtringWPipe], imports: [CommonModule], exports: [SubstringPipe, SubrtringWPipe] });
417
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: PipesModule, imports: [CommonModule] });
418
+ }
419
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: PipesModule, decorators: [{
420
+ type: NgModule,
421
+ args: [{
422
+ declarations: [SubstringPipe, SubrtringWPipe],
423
+ exports: [SubstringPipe, SubrtringWPipe],
424
+ imports: [
425
+ CommonModule
426
+ ]
427
+ }]
412
428
  }] });
413
429
 
414
- var PmJobStatus;
415
- (function (PmJobStatus) {
416
- PmJobStatus["NEW"] = "new";
417
- PmJobStatus["ACCEPTED"] = "accepted";
418
- PmJobStatus["CLOSED"] = "closed";
419
- PmJobStatus["Late"] = "late";
420
- PmJobStatus["OPEN"] = "open";
421
- PmJobStatus["WAITING"] = "waiting";
422
- PmJobStatus["DONE"] = "done";
423
- PmJobStatus["VALIDATED"] = "validated";
424
- // statues if i select reason in contact page
425
- PmJobStatus["DESINSTALLED"] = "desinstalled";
426
- PmJobStatus["REPORTED"] = "reported";
427
- PmJobStatus["CANCELLED"] = "cancelled";
428
- PmJobStatus["OTHER"] = "other";
430
+ var PmJobStatus;
431
+ (function (PmJobStatus) {
432
+ PmJobStatus["NEW"] = "new";
433
+ PmJobStatus["ACCEPTED"] = "accepted";
434
+ PmJobStatus["CLOSED"] = "closed";
435
+ PmJobStatus["Late"] = "late";
436
+ PmJobStatus["OPEN"] = "open";
437
+ PmJobStatus["WAITING"] = "waiting";
438
+ PmJobStatus["DONE"] = "done";
439
+ PmJobStatus["VALIDATED"] = "validated";
440
+ // statues if i select reason in contact page
441
+ PmJobStatus["DESINSTALLED"] = "desinstalled";
442
+ PmJobStatus["REPORTED"] = "reported";
443
+ PmJobStatus["CANCELLED"] = "cancelled";
444
+ PmJobStatus["OTHER"] = "other";
429
445
  })(PmJobStatus || (PmJobStatus = {}));
430
446
 
431
- var ReasonCode;
432
- (function (ReasonCode) {
433
- ReasonCode["MPM"] = "MPM";
434
- ReasonCode["RPM"] = "RPM";
435
- ReasonCode["CPM"] = "CPM";
436
- ReasonCode["SDI"] = "SDI";
437
- ReasonCode["OTH"] = "OTH";
447
+ var ReasonCode;
448
+ (function (ReasonCode) {
449
+ ReasonCode["MPM"] = "MPM";
450
+ ReasonCode["RPM"] = "RPM";
451
+ ReasonCode["CPM"] = "CPM";
452
+ ReasonCode["SDI"] = "SDI";
453
+ ReasonCode["OTH"] = "OTH";
438
454
  })(ReasonCode || (ReasonCode = {}));
439
455
 
440
- var ReasonContact;
441
- (function (ReasonContact) {
442
- ReasonContact["MoreDatesFormPm"] = "MoreDatesFormPm";
443
- ReasonContact["ContactFormPm"] = "ContactFormPm";
444
- ReasonContact["CancelFormPm"] = "CancelFormPm";
445
- ReasonContact["Contact"] = "Contact";
456
+ var ReasonContact;
457
+ (function (ReasonContact) {
458
+ ReasonContact["MoreDatesFormPm"] = "MoreDatesFormPm";
459
+ ReasonContact["ContactFormPm"] = "ContactFormPm";
460
+ ReasonContact["CancelFormPm"] = "CancelFormPm";
461
+ ReasonContact["Contact"] = "Contact";
446
462
  })(ReasonContact || (ReasonContact = {}));
447
463
 
448
- class ContactComponent {
449
- constructor(formBuilder, messageService, datePipe) {
450
- this.formBuilder = formBuilder;
451
- this.messageService = messageService;
452
- this.datePipe = datePipe;
453
- this.loading = false;
454
- this.submitted = false;
455
- this.systems = [];
456
- this.selectedSystems = [];
457
- this.sendForm = new EventEmitter();
458
- this.systemContainPm = true;
459
- this.showPm = false;
460
- }
461
- ngOnChanges() {
462
- this.reasons = this.reasons.filter((x) => x.code == ReasonCode.SDI || x.code == ReasonCode.OTH);
463
- this.selectPM(this.selectedSystem);
464
- this.loadForm();
465
- }
466
- // convenience getter for easy access to form fields
467
- get f() {
468
- return this.form.controls;
469
- }
470
- preventStringKeypress(event) {
471
- if (isNaN(Number(String.fromCharCode(event.charCode))) ||
472
- String.fromCharCode(event.charCode) === ' ') {
473
- event.preventDefault();
474
- }
475
- }
476
- onSubmit() {
477
- this.submitted = true;
478
- if (this.form.invalid) {
479
- this.messageService.add({ severity: 'error', summary: this.translate.summaryError, detail: this.translate.invalidForm });
480
- return;
481
- }
482
- let detailedPmJob = {};
483
- detailedPmJob.name = this.form.value.name;
484
- detailedPmJob.phone = this.form.value.phone;
485
- detailedPmJob.extentionOrComment = this.form.value.extentionOrComment;
486
- detailedPmJob.email = this.form.value.email;
487
- detailedPmJob.reason = this.form.value.reason.name;
488
- detailedPmJob.comment = this.form.value.message;
489
- if (this.form.value.pms !== undefined) {
490
- detailedPmJob.pmJob = this.form.value.pms;
491
- }
492
- detailedPmJob.systemName = this.selectedSystem.name;
493
- detailedPmJob.systemId = this.selectedSystem.systemId;
494
- detailedPmJob.siteName = this.selectedSystem.siteName;
495
- detailedPmJob.siteCity = this.selectedSystem.siteCity;
496
- detailedPmJob.sitePostalCode = this.selectedSystem.sitePostalCode;
497
- detailedPmJob.toUpdate = true;
498
- if (this.form.value.pms !== undefined) {
499
- detailedPmJob.selectedDate = detailedPmJob.pmJob.startDateTime;
500
- }
501
- detailedPmJob.reasonContact = ReasonContact.Contact;
502
- detailedPmJob.futureStatus = this.slectsFutureStatus(this.form.value.reason.code);
503
- this.sendForm.emit(detailedPmJob);
504
- }
505
- slectsFutureStatus(status) {
506
- switch (status) {
507
- case ReasonCode.MPM:
508
- return PmJobStatus.WAITING;
509
- case ReasonCode.RPM:
510
- return PmJobStatus.REPORTED;
511
- case ReasonCode.CPM:
512
- return PmJobStatus.CANCELLED;
513
- case ReasonCode.SDI:
514
- return PmJobStatus.DESINSTALLED;
515
- case ReasonCode.OTH:
516
- return PmJobStatus.OTHER;
517
- default:
518
- return 'Erreur';
519
- }
520
- }
521
- loadForm() {
522
- let name = sessionStorage.getItem('userName') ? sessionStorage.getItem('userName') : localStorage.getItem('userName');
523
- let email = sessionStorage.getItem('email') ? sessionStorage.getItem('email') : localStorage.getItem('email');
524
- let phone = sessionStorage.getItem('mobilePhoneNumber') ? sessionStorage.getItem('mobilePhoneNumber') : localStorage.getItem('mobilePhoneNumber');
525
- this.form = this.formBuilder.group({
526
- name: [
527
- name !== 'null' ? name : '',
528
- [Validators.required, Validators.minLength(3)],
529
- ],
530
- email: [
531
- email !== 'null' ? email : '',
532
- [Validators.required, Validators.email],
533
- ],
534
- phone: [phone !== 'null' ? phone : '', [Validators.required]],
535
- extentionOrComment: [''],
536
- reason: ['', [Validators.required]],
537
- systems: [[], [Validators.required]],
538
- pms: [[], this.showPm ? [] : []],
539
- message: ['', [Validators.required, Validators.minLength(15)]],
540
- });
541
- }
542
- selectPM(selectedSystem) {
543
- this.systemContainPm = true;
544
- if (selectedSystem === undefined) {
545
- return;
546
- }
547
- else {
548
- if (selectedSystem.pmJobs.length === 0) {
549
- this.showPm = false;
550
- }
551
- else {
552
- this.selectedSystem = selectedSystem;
553
- this.pmJobs = selectedSystem.pmJobs;
554
- this.pmJobs.forEach((element) => {
555
- if (element.startDateTime) {
556
- if (element.caseType == 'Planned Maintenance') {
557
- element.wokorderDetails = element.workorderNumber + ' - ' + this.datePipe.transform(element.startDateTime, 'dd MMM yyyy') + ' - ' + this.translate.typePlanned;
558
- }
559
- else if (element.caseType == "QARA") {
560
- element.wokorderDetails = element.workorderNumber + ' - ' + this.datePipe.transform(element.startDateTime, 'dd MMM yyyy') + ' - ' + this.translate.typeQARA;
561
- }
562
- else {
563
- element.wokorderDetails = element.workorderNumber + " - " + this.datePipe.transform(element.startDateTime, 'dd MMM yyyy');
564
- }
565
- }
566
- });
567
- this.showPm = true;
568
- }
569
- }
570
- }
571
- }
572
- 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 }, { token: i1$1.DatePipe }], target: i0.ɵɵFactoryTarget.Component });
573
- 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, DatePipe], 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-6\">\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 class=\"p-col-12 p-md-6\">\r\n <span class=\"titre\">{{translate.placeholderextentionOrComment}}</span>:\r\n <input [placeholder]=\"translate.placeholderextentionOrComment\" type=\"text\" pInputText formControlName=\"extentionOrComment\">\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 \r\n [options]=\"pmJobs\" \r\n [placeholder]=\"translate.selectPM\" \r\n [(ngModel)]=\"selectedPm\" \r\n [optionLabel]=\"'wokorderDetails'\" \r\n formControlName=\"pms\" \r\n optionDisabled=\"inactive\" \r\n [ngClass]=\"{ 'is-invalid': submitted && f.pms.invalid }\">\r\n </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$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.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"] }] });
574
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContactComponent, decorators: [{
575
- type: Component,
576
- args: [{ selector: 'awf-contact', providers: [MessageService, DatePipe], 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-6\">\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 class=\"p-col-12 p-md-6\">\r\n <span class=\"titre\">{{translate.placeholderextentionOrComment}}</span>:\r\n <input [placeholder]=\"translate.placeholderextentionOrComment\" type=\"text\" pInputText formControlName=\"extentionOrComment\">\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 \r\n [options]=\"pmJobs\" \r\n [placeholder]=\"translate.selectPM\" \r\n [(ngModel)]=\"selectedPm\" \r\n [optionLabel]=\"'wokorderDetails'\" \r\n formControlName=\"pms\" \r\n optionDisabled=\"inactive\" \r\n [ngClass]=\"{ 'is-invalid': submitted && f.pms.invalid }\">\r\n </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"] }]
577
- }], ctorParameters: function () { return [{ type: i1$4.FormBuilder }, { type: i1$3.MessageService }, { type: i1$1.DatePipe }]; }, propDecorators: { loading: [{
578
- type: Input
579
- }], submitted: [{
580
- type: Input
581
- }], systems: [{
582
- type: Input
583
- }], selectedSystems: [{
584
- type: Input
585
- }], translate: [{
586
- type: Input
587
- }], reasons: [{
588
- type: Input
589
- }], sendForm: [{
590
- type: Output
464
+ class ContactComponent {
465
+ formBuilder;
466
+ messageService;
467
+ datePipe;
468
+ loading = false;
469
+ submitted = false;
470
+ systems = [];
471
+ selectedSystems = [];
472
+ translate;
473
+ reasons;
474
+ sendForm = new EventEmitter();
475
+ form;
476
+ selectedReason;
477
+ selectedSystem;
478
+ selectedPm;
479
+ pmJobs;
480
+ systemContainPm = true;
481
+ showPm = false;
482
+ constructor(formBuilder, messageService, datePipe) {
483
+ this.formBuilder = formBuilder;
484
+ this.messageService = messageService;
485
+ this.datePipe = datePipe;
486
+ }
487
+ ngOnChanges() {
488
+ this.reasons = this.reasons.filter((x) => x.code == ReasonCode.SDI || x.code == ReasonCode.OTH);
489
+ this.selectPM(this.selectedSystem);
490
+ this.loadForm();
491
+ }
492
+ // convenience getter for easy access to form fields
493
+ get f() {
494
+ return this.form.controls;
495
+ }
496
+ preventStringKeypress(event) {
497
+ if (isNaN(Number(String.fromCharCode(event.charCode))) ||
498
+ String.fromCharCode(event.charCode) === ' ') {
499
+ event.preventDefault();
500
+ }
501
+ }
502
+ onSubmit() {
503
+ this.submitted = true;
504
+ if (this.form.invalid) {
505
+ this.messageService.add({ severity: 'error', summary: this.translate.summaryError, detail: this.translate.invalidForm });
506
+ return;
507
+ }
508
+ let detailedPmJob = {};
509
+ detailedPmJob.name = this.form.value.name;
510
+ detailedPmJob.phone = this.form.value.phone;
511
+ detailedPmJob.extentionOrComment = this.form.value.extentionOrComment;
512
+ detailedPmJob.email = this.form.value.email;
513
+ detailedPmJob.reason = this.form.value.reason.name;
514
+ detailedPmJob.comment = this.form.value.message;
515
+ if (this.form.value.pms !== undefined) {
516
+ detailedPmJob.pmJob = this.form.value.pms;
517
+ }
518
+ detailedPmJob.systemName = this.selectedSystem.name;
519
+ detailedPmJob.systemId = this.selectedSystem.systemId;
520
+ detailedPmJob.siteName = this.selectedSystem.siteName;
521
+ detailedPmJob.siteCity = this.selectedSystem.siteCity;
522
+ detailedPmJob.sitePostalCode = this.selectedSystem.sitePostalCode;
523
+ detailedPmJob.toUpdate = true;
524
+ if (this.form.value.pms !== undefined) {
525
+ detailedPmJob.selectedDate = detailedPmJob.pmJob.startDateTime;
526
+ }
527
+ detailedPmJob.reasonContact = ReasonContact.Contact;
528
+ detailedPmJob.futureStatus = this.slectsFutureStatus(this.form.value.reason.code);
529
+ this.sendForm.emit(detailedPmJob);
530
+ }
531
+ slectsFutureStatus(status) {
532
+ switch (status) {
533
+ case ReasonCode.MPM:
534
+ return PmJobStatus.WAITING;
535
+ case ReasonCode.RPM:
536
+ return PmJobStatus.REPORTED;
537
+ case ReasonCode.CPM:
538
+ return PmJobStatus.CANCELLED;
539
+ case ReasonCode.SDI:
540
+ return PmJobStatus.DESINSTALLED;
541
+ case ReasonCode.OTH:
542
+ return PmJobStatus.OTHER;
543
+ default:
544
+ return 'Erreur';
545
+ }
546
+ }
547
+ loadForm() {
548
+ let name = sessionStorage.getItem('userName') ? sessionStorage.getItem('userName') : localStorage.getItem('userName');
549
+ let email = sessionStorage.getItem('email') ? sessionStorage.getItem('email') : localStorage.getItem('email');
550
+ let phone = sessionStorage.getItem('mobilePhoneNumber') ? sessionStorage.getItem('mobilePhoneNumber') : localStorage.getItem('mobilePhoneNumber');
551
+ this.form = this.formBuilder.group({
552
+ name: [
553
+ name !== 'null' ? name : '',
554
+ [Validators.required, Validators.minLength(3)],
555
+ ],
556
+ email: [
557
+ email !== 'null' ? email : '',
558
+ [Validators.required, Validators.email],
559
+ ],
560
+ phone: [phone !== 'null' ? phone : '', [Validators.required]],
561
+ extentionOrComment: [''],
562
+ reason: ['', [Validators.required]],
563
+ systems: [[], [Validators.required]],
564
+ pms: [[], this.showPm ? [] : []],
565
+ message: ['', [Validators.required, Validators.minLength(15)]],
566
+ });
567
+ }
568
+ selectPM(selectedSystem) {
569
+ this.systemContainPm = true;
570
+ if (selectedSystem === undefined) {
571
+ return;
572
+ }
573
+ else {
574
+ if (selectedSystem.pmJobs.length === 0) {
575
+ this.showPm = false;
576
+ }
577
+ else {
578
+ this.selectedSystem = selectedSystem;
579
+ this.pmJobs = selectedSystem.pmJobs;
580
+ this.pmJobs.forEach((element) => {
581
+ if (element.startDateTime) {
582
+ if (element.caseType == 'Planned Maintenance') {
583
+ element.wokorderDetails = element.workorderNumber + ' - ' + this.datePipe.transform(element.startDateTime, 'dd MMM yyyy') + ' - ' + this.translate.typePlanned;
584
+ }
585
+ else if (element.caseType == "QARA") {
586
+ element.wokorderDetails = element.workorderNumber + ' - ' + this.datePipe.transform(element.startDateTime, 'dd MMM yyyy') + ' - ' + this.translate.typeQARA;
587
+ }
588
+ else {
589
+ element.wokorderDetails = element.workorderNumber + " - " + this.datePipe.transform(element.startDateTime, 'dd MMM yyyy');
590
+ }
591
+ }
592
+ });
593
+ this.showPm = true;
594
+ }
595
+ }
596
+ }
597
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ContactComponent, deps: [{ token: i1$4.FormBuilder }, { token: i1$3.MessageService }, { token: i1$1.DatePipe }], target: i0.ɵɵFactoryTarget.Component });
598
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: ContactComponent, selector: "awf-contact", inputs: { loading: "loading", submitted: "submitted", systems: "systems", selectedSystems: "selectedSystems", translate: "translate", reasons: "reasons" }, outputs: { sendForm: "sendForm" }, providers: [MessageService, DatePipe], 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-6\">\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 class=\"p-col-12 p-md-6\">\r\n <span class=\"titre\">{{translate.placeholderextentionOrComment}}</span>:\r\n <input [placeholder]=\"translate.placeholderextentionOrComment\" type=\"text\" pInputText formControlName=\"extentionOrComment\">\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 \r\n [options]=\"pmJobs\" \r\n [placeholder]=\"translate.selectPM\" \r\n [(ngModel)]=\"selectedPm\" \r\n [optionLabel]=\"'wokorderDetails'\" \r\n formControlName=\"pms\" \r\n optionDisabled=\"inactive\" \r\n [ngClass]=\"{ 'is-invalid': submitted && f.pms.invalid }\">\r\n </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]{-moz-appearance:textfield;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$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.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", "life", "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: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "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", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }] });
599
+ }
600
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ContactComponent, decorators: [{
601
+ type: Component,
602
+ args: [{ selector: 'awf-contact', providers: [MessageService, DatePipe], 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-6\">\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 class=\"p-col-12 p-md-6\">\r\n <span class=\"titre\">{{translate.placeholderextentionOrComment}}</span>:\r\n <input [placeholder]=\"translate.placeholderextentionOrComment\" type=\"text\" pInputText formControlName=\"extentionOrComment\">\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 \r\n [options]=\"pmJobs\" \r\n [placeholder]=\"translate.selectPM\" \r\n [(ngModel)]=\"selectedPm\" \r\n [optionLabel]=\"'wokorderDetails'\" \r\n formControlName=\"pms\" \r\n optionDisabled=\"inactive\" \r\n [ngClass]=\"{ 'is-invalid': submitted && f.pms.invalid }\">\r\n </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]{-moz-appearance:textfield;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"] }]
603
+ }], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: i1$3.MessageService }, { type: i1$1.DatePipe }], propDecorators: { loading: [{
604
+ type: Input
605
+ }], submitted: [{
606
+ type: Input
607
+ }], systems: [{
608
+ type: Input
609
+ }], selectedSystems: [{
610
+ type: Input
611
+ }], translate: [{
612
+ type: Input
613
+ }], reasons: [{
614
+ type: Input
615
+ }], sendForm: [{
616
+ type: Output
591
617
  }] } });
592
618
 
593
- class ChooseAnotherDateComponent {
594
- constructor(messageService) {
595
- this.messageService = messageService;
596
- this.closeAnotherDate = new EventEmitter();
597
- this.acceptDate = new EventEmitter();
598
- this.dates = [];
599
- this.datesRef = [];
600
- this.show = false;
601
- this.dateslength = 0;
602
- this.indexSelectedDate = 0;
603
- }
604
- ngOnInit() {
605
- this.loadDates();
606
- }
607
- ngOnChanges() { }
608
- close() {
609
- this.closeAnotherDate.emit(true);
610
- this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
611
- }
612
- accept() {
613
- this.controlAlternativeDates();
614
- this.acceptDate.emit(this.alternativeDatesList);
615
- }
616
- askDate() {
617
- this.closeAnotherDate.emit(false);
618
- }
619
- controlAlternativeDates() {
620
- let i = 0;
621
- this.alternativeDatesList.forEach((item) => {
622
- item.selected = (i === this.indexSelectedDate) ? "Yes" : "No";
623
- i++;
624
- });
625
- }
626
- loadDates() {
627
- this.dates = [];
628
- this.datesRef = [];
629
- if (this.alternativeDatesList) {
630
- this.alternativeDatesList.forEach((element) => {
631
- this.dates.push(new Date(element.startDateTime));
632
- this.datesRef.push(new Date(element.startDateTime));
633
- });
634
- }
635
- this.dateslength = this.dates.length;
636
- }
637
- onSelect() {
638
- if (this.dateslength < this.dates.length) {
639
- this.loadDates();
640
- }
641
- else if (this.dateslength > this.dates.length) {
642
- this.selectedDate = this.arrdiff(this.datesRef, this.dates)[0];
643
- for (var i = 0; i < this.datesRef.length; i++) {
644
- if (this.datesRef[i] == this.selectedDate) {
645
- this.indexSelectedDate = i;
646
- }
647
- }
648
- this.controlAlternativeDates();
649
- this.accept();
650
- this.loadDates();
651
- }
652
- this.dates;
653
- }
654
- arrdiff(a1, a2) {
655
- var a = [], diff = [];
656
- for (var i = 0; i < a1.length; i++) {
657
- a[a1[i]] = true;
658
- }
659
- for (var i = 0; i < a2.length; i++) {
660
- if (a[a2[i]]) {
661
- delete a[a2[i]];
662
- }
663
- else {
664
- a[a2[i]] = true;
665
- }
666
- }
667
- for (var k in a) {
668
- diff.push(k);
669
- }
670
- return diff;
671
- }
672
- }
673
- 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 });
674
- 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 <div class=\"popup-footer\">\r\n <p class=\"popup-footer-message\">{{translate.message}}</p>\r\n <p-button icon=\"pi pi-calendar-plus\" (click)=\"askDate()\" [label]=\"translate.ask\" class=\"p-button-text\"></p-button>\r\n </div>\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)}.popup-footer{display:flex;justify-content:space-between}.popup-footer-message{font-size:13px;font-weight:600}\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: i6$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 });
675
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ChooseAnotherDateComponent, decorators: [{
676
- type: Component,
677
- 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 <div class=\"popup-footer\">\r\n <p class=\"popup-footer-message\">{{translate.message}}</p>\r\n <p-button icon=\"pi pi-calendar-plus\" (click)=\"askDate()\" [label]=\"translate.ask\" class=\"p-button-text\"></p-button>\r\n </div>\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)}.popup-footer{display:flex;justify-content:space-between}.popup-footer-message{font-size:13px;font-weight:600}\n"] }]
678
- }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { displayAnotherDate: [{
679
- type: Input
680
- }], globaltranslate: [{
681
- type: Input
682
- }], translate: [{
683
- type: Input
684
- }], alternativeDatesList: [{
685
- type: Input
686
- }], closeAnotherDate: [{
687
- type: Output
688
- }], acceptDate: [{
689
- type: Output
690
- }], calendar: [{
691
- type: ViewChild,
692
- args: ['calendar']
619
+ class ChooseAnotherDateComponent {
620
+ messageService;
621
+ displayAnotherDate;
622
+ globaltranslate;
623
+ translate;
624
+ alternativeDatesList;
625
+ closeAnotherDate = new EventEmitter();
626
+ acceptDate = new EventEmitter();
627
+ calendar;
628
+ dates = [];
629
+ datesRef = [];
630
+ selectedDate;
631
+ show = false;
632
+ dateslength = 0;
633
+ indexSelectedDate = 0;
634
+ constructor(messageService) {
635
+ this.messageService = messageService;
636
+ }
637
+ ngOnInit() {
638
+ this.loadDates();
639
+ }
640
+ ngOnChanges() { }
641
+ close() {
642
+ this.closeAnotherDate.emit(true);
643
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
644
+ }
645
+ accept() {
646
+ this.controlAlternativeDates();
647
+ this.acceptDate.emit(this.alternativeDatesList);
648
+ }
649
+ askDate() {
650
+ this.closeAnotherDate.emit(false);
651
+ }
652
+ controlAlternativeDates() {
653
+ let i = 0;
654
+ this.alternativeDatesList.forEach((item) => {
655
+ item.selected = (i === this.indexSelectedDate) ? "Yes" : "No";
656
+ i++;
657
+ });
658
+ }
659
+ loadDates() {
660
+ this.dates = [];
661
+ this.datesRef = [];
662
+ if (this.alternativeDatesList) {
663
+ this.alternativeDatesList.forEach((element) => {
664
+ this.dates.push(new Date(element.startDateTime));
665
+ this.datesRef.push(new Date(element.startDateTime));
666
+ });
667
+ }
668
+ this.dateslength = this.dates.length;
669
+ }
670
+ onSelect() {
671
+ if (this.dateslength < this.dates.length) {
672
+ this.loadDates();
673
+ }
674
+ else if (this.dateslength > this.dates.length) {
675
+ this.selectedDate = this.arrdiff(this.datesRef, this.dates)[0];
676
+ for (var i = 0; i < this.datesRef.length; i++) {
677
+ if (this.datesRef[i] == this.selectedDate) {
678
+ this.indexSelectedDate = i;
679
+ }
680
+ }
681
+ this.controlAlternativeDates();
682
+ this.accept();
683
+ this.loadDates();
684
+ }
685
+ this.dates;
686
+ }
687
+ arrdiff(a1, a2) {
688
+ var a = [], diff = [];
689
+ for (var i = 0; i < a1.length; i++) {
690
+ a[a1[i]] = true;
691
+ }
692
+ for (var i = 0; i < a2.length; i++) {
693
+ if (a[a2[i]]) {
694
+ delete a[a2[i]];
695
+ }
696
+ else {
697
+ a[a2[i]] = true;
698
+ }
699
+ }
700
+ for (var k in a) {
701
+ diff.push(k);
702
+ }
703
+ return diff;
704
+ }
705
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ChooseAnotherDateComponent, deps: [{ token: i1$3.MessageService }], target: i0.ɵɵFactoryTarget.Component });
706
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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 <div class=\"popup-footer\">\r\n <p class=\"popup-footer-message\">{{translate.message}}</p>\r\n <p-button icon=\"pi pi-calendar-plus\" (click)=\"askDate()\" [label]=\"translate.ask\" class=\"p-button-text\"></p-button>\r\n </div>\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)}.popup-footer{display:flex;justify-content:space-between}.popup-footer-message{font-size:13px;font-weight:600}\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", "life", "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: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "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", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], 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", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "size", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i6$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "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 });
707
+ }
708
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ChooseAnotherDateComponent, decorators: [{
709
+ type: Component,
710
+ 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 <div class=\"popup-footer\">\r\n <p class=\"popup-footer-message\">{{translate.message}}</p>\r\n <p-button icon=\"pi pi-calendar-plus\" (click)=\"askDate()\" [label]=\"translate.ask\" class=\"p-button-text\"></p-button>\r\n </div>\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)}.popup-footer{display:flex;justify-content:space-between}.popup-footer-message{font-size:13px;font-weight:600}\n"] }]
711
+ }], ctorParameters: () => [{ type: i1$3.MessageService }], propDecorators: { displayAnotherDate: [{
712
+ type: Input
713
+ }], globaltranslate: [{
714
+ type: Input
715
+ }], translate: [{
716
+ type: Input
717
+ }], alternativeDatesList: [{
718
+ type: Input
719
+ }], closeAnotherDate: [{
720
+ type: Output
721
+ }], acceptDate: [{
722
+ type: Output
723
+ }], calendar: [{
724
+ type: ViewChild,
725
+ args: ['calendar']
693
726
  }] } });
694
727
 
695
- class ConfirmDialogComponent {
696
- constructor(messageService) {
697
- this.messageService = messageService;
698
- this.detailedPmJobLinkedList = [];
699
- this.closeConfirmDialog = new EventEmitter();
700
- this.language = navigator.language.substr(0, 2).toLowerCase();
701
- }
702
- rejectDate() {
703
- this.closeConfirmDialog.emit(false);
704
- this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
705
- }
706
- confirmDate() {
707
- this.closeConfirmDialog.emit(true);
708
- }
709
- }
710
- 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 });
711
- 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 <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: \"EEE dd MMM yyyy\":\"\":language}} </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$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.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: i6$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$1.DatePipe, name: "date" }] });
712
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmDialogComponent, decorators: [{
713
- type: Component,
714
- 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 <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: \"EEE dd MMM yyyy\":\"\":language}} </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>" }]
715
- }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { displayConfirmDialog: [{
716
- type: Input
717
- }], startDateTime: [{
718
- type: Input
719
- }], endDateTime: [{
720
- type: Input
721
- }], globaltranslate: [{
722
- type: Input
723
- }], translate: [{
724
- type: Input
725
- }], isProposedDate: [{
726
- type: Input
727
- }], detailedPmJobLinkedList: [{
728
- type: Input
729
- }], closeConfirmDialog: [{
730
- type: Output
728
+ class ConfirmDialogComponent {
729
+ messageService;
730
+ displayConfirmDialog;
731
+ startDateTime;
732
+ endDateTime;
733
+ globaltranslate;
734
+ translate;
735
+ isProposedDate;
736
+ detailedPmJobLinkedList = [];
737
+ closeConfirmDialog = new EventEmitter();
738
+ language = navigator.language.substr(0, 2).toLowerCase();
739
+ constructor(messageService) {
740
+ this.messageService = messageService;
741
+ }
742
+ rejectDate() {
743
+ this.closeConfirmDialog.emit(false);
744
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
745
+ }
746
+ confirmDate() {
747
+ this.closeConfirmDialog.emit(true);
748
+ }
749
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ConfirmDialogComponent, deps: [{ token: i1$3.MessageService }], target: i0.ɵɵFactoryTarget.Component });
750
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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 <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: \"EEE dd MMM yyyy\":\"\":language}} </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$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.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", "life", "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", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "size", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i6$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "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$1.DatePipe, name: "date" }] });
751
+ }
752
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ConfirmDialogComponent, decorators: [{
753
+ type: Component,
754
+ 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 <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: \"EEE dd MMM yyyy\":\"\":language}} </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>" }]
755
+ }], ctorParameters: () => [{ type: i1$3.MessageService }], propDecorators: { displayConfirmDialog: [{
756
+ type: Input
757
+ }], startDateTime: [{
758
+ type: Input
759
+ }], endDateTime: [{
760
+ type: Input
761
+ }], globaltranslate: [{
762
+ type: Input
763
+ }], translate: [{
764
+ type: Input
765
+ }], isProposedDate: [{
766
+ type: Input
767
+ }], detailedPmJobLinkedList: [{
768
+ type: Input
769
+ }], closeConfirmDialog: [{
770
+ type: Output
731
771
  }] } });
732
772
 
733
- class ConfirmedDateInformationComponent {
734
- constructor() {
735
- this.closeConfirmedDateInfo = new EventEmitter();
736
- this.language = navigator.language.substr(0, 2).toLowerCase();
737
- }
738
- ngOnDestroy() {
739
- // this.displayConfirmedDateInfos = false;
740
- }
741
- confirmDate() {
742
- this.closeConfirmedDateInfo.emit(true);
743
- }
744
- }
745
- ConfirmedDateInformationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmedDateInformationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
746
- ConfirmedDateInformationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ConfirmedDateInformationComponent, selector: "app-confirmed-date-information", inputs: { displayConfirmedDateInfos: "displayConfirmedDateInfos", startDateTime: "startDateTime", endDateTime: "endDateTime", globaltranslate: "globaltranslate", translate: "translate", moreDates: "moreDates" }, outputs: { closeConfirmedDateInfo: "closeConfirmedDateInfo" }, ngImport: i0, template: "<p-dialog [header]=\"globaltranslate.information\" [(visible)]=\"displayConfirmedDateInfos\" [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: \"EEE dd MMM yyyy\":\"\":language}}</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$1.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: i6$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$1.DatePipe, name: "date" }] });
747
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmedDateInformationComponent, decorators: [{
748
- type: Component,
749
- args: [{ selector: 'app-confirmed-date-information', template: "<p-dialog [header]=\"globaltranslate.information\" [(visible)]=\"displayConfirmedDateInfos\" [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: \"EEE dd MMM yyyy\":\"\":language}}</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"] }]
750
- }], ctorParameters: function () { return []; }, propDecorators: { displayConfirmedDateInfos: [{
751
- type: Input
752
- }], startDateTime: [{
753
- type: Input
754
- }], endDateTime: [{
755
- type: Input
756
- }], globaltranslate: [{
757
- type: Input
758
- }], translate: [{
759
- type: Input
760
- }], moreDates: [{
761
- type: Input
762
- }], closeConfirmedDateInfo: [{
763
- type: Output
773
+ class ConfirmedDateInformationComponent {
774
+ displayConfirmedDateInfos;
775
+ startDateTime;
776
+ endDateTime;
777
+ globaltranslate;
778
+ translate;
779
+ moreDates;
780
+ closeConfirmedDateInfo = new EventEmitter();
781
+ language = navigator.language.substr(0, 2).toLowerCase();
782
+ constructor() { }
783
+ ngOnDestroy() {
784
+ // this.displayConfirmedDateInfos = false;
785
+ }
786
+ confirmDate() {
787
+ this.closeConfirmedDateInfo.emit(true);
788
+ }
789
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ConfirmedDateInformationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
790
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: ConfirmedDateInformationComponent, selector: "app-confirmed-date-information", inputs: { displayConfirmedDateInfos: "displayConfirmedDateInfos", startDateTime: "startDateTime", endDateTime: "endDateTime", globaltranslate: "globaltranslate", translate: "translate", moreDates: "moreDates" }, outputs: { closeConfirmedDateInfo: "closeConfirmedDateInfo" }, ngImport: i0, template: "<p-dialog [header]=\"globaltranslate.information\" [(visible)]=\"displayConfirmedDateInfos\" [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: \"EEE dd MMM yyyy\":\"\":language}}</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$1.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", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "size", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i6$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "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$1.DatePipe, name: "date" }] });
791
+ }
792
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ConfirmedDateInformationComponent, decorators: [{
793
+ type: Component,
794
+ args: [{ selector: 'app-confirmed-date-information', template: "<p-dialog [header]=\"globaltranslate.information\" [(visible)]=\"displayConfirmedDateInfos\" [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: \"EEE dd MMM yyyy\":\"\":language}}</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"] }]
795
+ }], ctorParameters: () => [], propDecorators: { displayConfirmedDateInfos: [{
796
+ type: Input
797
+ }], startDateTime: [{
798
+ type: Input
799
+ }], endDateTime: [{
800
+ type: Input
801
+ }], globaltranslate: [{
802
+ type: Input
803
+ }], translate: [{
804
+ type: Input
805
+ }], moreDates: [{
806
+ type: Input
807
+ }], closeConfirmedDateInfo: [{
808
+ type: Output
764
809
  }] } });
765
810
 
766
- class ContactSupportComponent {
767
- constructor(messageService, formBuilder) {
768
- this.messageService = messageService;
769
- this.formBuilder = formBuilder;
770
- this.sendDetailedPm = new EventEmitter();
771
- this.sendForm = new EventEmitter();
772
- this.closeContactSupport = new EventEmitter();
773
- this.loading = false;
774
- this.submitted = false;
775
- this.displayNumber = false;
776
- }
777
- ngOnChanges(changes) {
778
- this.loadDatas();
779
- }
780
- ngOnInit() {
781
- this.loadDatas();
782
- }
783
- loadDatas() {
784
- this.filterReasons();
785
- this.setDateRules();
786
- this.loadForm();
787
- }
788
- filterReasons() {
789
- if (this.reasons && this.reasonContact === ReasonContact.MoreDatesFormPm) {
790
- this.selectedReason = this.reasons[0];
791
- this.reasons = this.reasons.filter(x => x.code === ReasonCode.MPM);
792
- }
793
- if (this.reasons && this.reasonContact === ReasonContact.CancelFormPm) {
794
- this.selectedReason = this.reasons[2];
795
- this.reasons = this.reasons.filter(x => x.code === ReasonCode.CPM);
796
- }
797
- if (this.detailedPmJob.status === PmJobStatus.DONE) {
798
- this.reasons = this.reasons.filter(x => x.code === ReasonCode.OTH);
799
- }
800
- if (this.detailedPmJob.status === PmJobStatus.VALIDATED) {
801
- this.reasons = this.reasons.filter(x => x.code !== ReasonCode.MPM);
802
- }
803
- }
804
- cancelContactSupport() {
805
- this.closeContactSupport.emit(true);
806
- this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
807
- }
808
- get f() {
809
- return this.form.controls;
810
- }
811
- setDateRules() {
812
- let today = new Date();
813
- let month = today.getMonth();
814
- let year = today.getFullYear();
815
- let prevMonth = (month === 0) ? 11 : month - 1;
816
- let prevYear = (prevMonth === 11) ? year - 1 : year;
817
- this.minDate = new Date();
818
- this.minDate.setMonth(month);
819
- this.minDate.setFullYear(prevYear);
820
- }
821
- loadForm() {
822
- let name = sessionStorage.getItem('userName') ? sessionStorage.getItem('userName') : localStorage.getItem('userName');
823
- let email = sessionStorage.getItem('email') ? sessionStorage.getItem('email') : localStorage.getItem('email');
824
- let phone = sessionStorage.getItem('mobilePhoneNumber') ? sessionStorage.getItem('mobilePhoneNumber') : localStorage.getItem('mobilePhoneNumber');
825
- this.form = this.formBuilder.group({
826
- name: [name !== 'null' ? name : '', [Validators.required, Validators.minLength(3)]],
827
- email: [email !== 'null' ? email : '', [Validators.required, Validators.email]],
828
- phone: [this.checkPhone(phone) ? phone : '', [Validators.required]],
829
- extentionOrComment: [''],
830
- reason: [{ value: '' }, [Validators.required]],
831
- system: [{ value: this.detailedPmJob.systemName + ' ' + this.detailedPmJob.systemId, disabled: true }, [Validators.required]],
832
- workOrder: [{ value: this.detailedPmJob.pmJob.workorderNumber, disabled: true }, [Validators.required]],
833
- message: ['', (this.reasonContact === ReasonContact.MoreDatesFormPm) ? [] : [Validators.required, Validators.minLength(15)]],
834
- });
835
- }
836
- checkPhone(phone) {
837
- if (phone == null || phone == 'null' || phone == undefined || phone.length == 0) {
838
- return false;
839
- }
840
- else {
841
- return true;
842
- }
843
- }
844
- contacted() {
845
- this.sendContactMeEmailMethode();
846
- }
847
- contact() {
848
- this.displayNumber = true;
849
- }
850
- closeNumber() {
851
- this.displayNumber = false;
852
- }
853
- sendContactMeEmailMethode() {
854
- if (this.form.value.reason.name == "Demander d'autres dates de PM") {
855
- this.reasonContact = ReasonContact.MoreDatesFormPm;
856
- }
857
- this.detailedPmJob.name = this.form.value.name;
858
- this.detailedPmJob.phone = this.form.value.phone;
859
- this.detailedPmJob.extentionOrComment = this.form.value.extentionOrComment;
860
- this.detailedPmJob.email = this.form.value.email;
861
- // this.detailedPmJob.reason = (this.reasonContact === ReasonContact.MoreDatesFormPm) ? this.reasons[0].name : this.form.value.reason.name;
862
- this.detailedPmJob.reason = this.form.value.reason.name;
863
- this.detailedPmJob.extentionOrComment = this.form.value.extentionOrComment;
864
- this.detailedPmJob.comment = this.form.value.message;
865
- this.detailedPmJob.reasonContact = this.reasonContact;
866
- this.detailedPmJob.futureStatus = this.slectsFutureStatus(this.form.value.reason.code);
867
- this.sendDetailedPm.emit(this.detailedPmJob);
868
- }
869
- slectsFutureStatus(status) {
870
- switch (status) {
871
- case ReasonCode.MPM: return PmJobStatus.WAITING;
872
- case ReasonCode.RPM: return PmJobStatus.REPORTED;
873
- case ReasonCode.CPM: return PmJobStatus.CANCELLED;
874
- case ReasonCode.SDI: return PmJobStatus.DESINSTALLED;
875
- case ReasonCode.OTH: return PmJobStatus.OTHER;
876
- default: return "Erreur";
877
- }
878
- }
879
- onSubmit() {
880
- this.submitted = true;
881
- if (this.form.invalid) {
882
- this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryError, detail: this.globaltranslate.invalidForm });
883
- return;
884
- }
885
- this.contacted();
886
- }
887
- preventStringKeypress(event) {
888
- if (isNaN(Number(String.fromCharCode(event.charCode))) ||
889
- String.fromCharCode(event.charCode) === ' ') {
890
- event.preventDefault();
891
- }
892
- }
893
- }
894
- 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 });
895
- 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-6\">\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 class=\"p-col-12 p-md-6\">\r\n <span class=\"titre\">{{translate.placeholderextentionOrComment}}</span>:\r\n <input [placeholder]=\"translate.placeholderextentionOrComment\" type=\"text\" pInputText formControlName=\"extentionOrComment\">\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$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.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: i6$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"] }] });
896
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContactSupportComponent, decorators: [{
897
- type: Component,
898
- 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-6\">\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 class=\"p-col-12 p-md-6\">\r\n <span class=\"titre\">{{translate.placeholderextentionOrComment}}</span>:\r\n <input [placeholder]=\"translate.placeholderextentionOrComment\" type=\"text\" pInputText formControlName=\"extentionOrComment\">\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"] }]
899
- }], ctorParameters: function () { return [{ type: i1$3.MessageService }, { type: i1$4.FormBuilder }]; }, propDecorators: { displaycontactSupport: [{
900
- type: Input
901
- }], globaltranslate: [{
902
- type: Input
903
- }], translate: [{
904
- type: Input
905
- }], showDate: [{
906
- type: Input
907
- }], detailedPmJob: [{
908
- type: Input
909
- }], reasonContact: [{
910
- type: Input
911
- }], reasons: [{
912
- type: Input
913
- }], sendDetailedPm: [{
914
- type: Output
915
- }], sendForm: [{
916
- type: Output
917
- }], closeContactSupport: [{
918
- type: Output
811
+ class ContactSupportComponent {
812
+ messageService;
813
+ formBuilder;
814
+ displaycontactSupport;
815
+ globaltranslate;
816
+ translate;
817
+ showDate;
818
+ detailedPmJob;
819
+ reasonContact;
820
+ reasons;
821
+ sendDetailedPm = new EventEmitter();
822
+ sendForm = new EventEmitter();
823
+ closeContactSupport = new EventEmitter();
824
+ form;
825
+ dates;
826
+ loading = false;
827
+ submitted = false;
828
+ minDate;
829
+ maxDate;
830
+ displayNumber = false;
831
+ selectedReason;
832
+ constructor(messageService, formBuilder) {
833
+ this.messageService = messageService;
834
+ this.formBuilder = formBuilder;
835
+ }
836
+ ngOnChanges(changes) {
837
+ this.loadDatas();
838
+ }
839
+ ngOnInit() {
840
+ this.loadDatas();
841
+ }
842
+ loadDatas() {
843
+ this.filterReasons();
844
+ this.setDateRules();
845
+ this.loadForm();
846
+ }
847
+ filterReasons() {
848
+ if (this.reasons && this.reasonContact === ReasonContact.MoreDatesFormPm) {
849
+ this.selectedReason = this.reasons[0];
850
+ this.reasons = this.reasons.filter(x => x.code === ReasonCode.MPM);
851
+ }
852
+ if (this.reasons && this.reasonContact === ReasonContact.CancelFormPm) {
853
+ this.selectedReason = this.reasons[2];
854
+ this.reasons = this.reasons.filter(x => x.code === ReasonCode.CPM);
855
+ }
856
+ if (this.detailedPmJob.status === PmJobStatus.DONE) {
857
+ this.reasons = this.reasons.filter(x => x.code === ReasonCode.OTH);
858
+ }
859
+ if (this.detailedPmJob.status === PmJobStatus.VALIDATED) {
860
+ this.reasons = this.reasons.filter(x => x.code !== ReasonCode.MPM);
861
+ }
862
+ }
863
+ cancelContactSupport() {
864
+ this.closeContactSupport.emit(true);
865
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
866
+ }
867
+ get f() {
868
+ return this.form.controls;
869
+ }
870
+ setDateRules() {
871
+ let today = new Date();
872
+ let month = today.getMonth();
873
+ let year = today.getFullYear();
874
+ let prevMonth = (month === 0) ? 11 : month - 1;
875
+ let prevYear = (prevMonth === 11) ? year - 1 : year;
876
+ this.minDate = new Date();
877
+ this.minDate.setMonth(month);
878
+ this.minDate.setFullYear(prevYear);
879
+ }
880
+ loadForm() {
881
+ let name = sessionStorage.getItem('userName') ? sessionStorage.getItem('userName') : localStorage.getItem('userName');
882
+ let email = sessionStorage.getItem('email') ? sessionStorage.getItem('email') : localStorage.getItem('email');
883
+ let phone = sessionStorage.getItem('mobilePhoneNumber') ? sessionStorage.getItem('mobilePhoneNumber') : localStorage.getItem('mobilePhoneNumber');
884
+ this.form = this.formBuilder.group({
885
+ name: [name !== 'null' ? name : '', [Validators.required, Validators.minLength(3)]],
886
+ email: [email !== 'null' ? email : '', [Validators.required, Validators.email]],
887
+ phone: [this.checkPhone(phone) ? phone : '', [Validators.required]],
888
+ extentionOrComment: [''],
889
+ reason: [{ value: '' }, [Validators.required]],
890
+ system: [{ value: this.detailedPmJob.systemName + ' ' + this.detailedPmJob.systemId, disabled: true }, [Validators.required]],
891
+ workOrder: [{ value: this.detailedPmJob.pmJob.workorderNumber, disabled: true }, [Validators.required]],
892
+ message: ['', (this.reasonContact === ReasonContact.MoreDatesFormPm) ? [] : [Validators.required, Validators.minLength(15)]],
893
+ });
894
+ }
895
+ checkPhone(phone) {
896
+ if (phone == null || phone == 'null' || phone == undefined || phone.length == 0) {
897
+ return false;
898
+ }
899
+ else {
900
+ return true;
901
+ }
902
+ }
903
+ contacted() {
904
+ this.sendContactMeEmailMethode();
905
+ }
906
+ contact() {
907
+ this.displayNumber = true;
908
+ }
909
+ closeNumber() {
910
+ this.displayNumber = false;
911
+ }
912
+ sendContactMeEmailMethode() {
913
+ if (this.form.value.reason.name == "Demander d'autres dates de PM") {
914
+ this.reasonContact = ReasonContact.MoreDatesFormPm;
915
+ }
916
+ this.detailedPmJob.name = this.form.value.name;
917
+ this.detailedPmJob.phone = this.form.value.phone;
918
+ this.detailedPmJob.extentionOrComment = this.form.value.extentionOrComment;
919
+ this.detailedPmJob.email = this.form.value.email;
920
+ // this.detailedPmJob.reason = (this.reasonContact === ReasonContact.MoreDatesFormPm) ? this.reasons[0].name : this.form.value.reason.name;
921
+ this.detailedPmJob.reason = this.form.value.reason.name;
922
+ this.detailedPmJob.extentionOrComment = this.form.value.extentionOrComment;
923
+ this.detailedPmJob.comment = this.form.value.message;
924
+ this.detailedPmJob.reasonContact = this.reasonContact;
925
+ this.detailedPmJob.futureStatus = this.slectsFutureStatus(this.form.value.reason.code);
926
+ this.sendDetailedPm.emit(this.detailedPmJob);
927
+ }
928
+ slectsFutureStatus(status) {
929
+ switch (status) {
930
+ case ReasonCode.MPM: return PmJobStatus.WAITING;
931
+ case ReasonCode.RPM: return PmJobStatus.REPORTED;
932
+ case ReasonCode.CPM: return PmJobStatus.CANCELLED;
933
+ case ReasonCode.SDI: return PmJobStatus.DESINSTALLED;
934
+ case ReasonCode.OTH: return PmJobStatus.OTHER;
935
+ default: return "Erreur";
936
+ }
937
+ }
938
+ onSubmit() {
939
+ this.submitted = true;
940
+ if (this.form.invalid) {
941
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryError, detail: this.globaltranslate.invalidForm });
942
+ return;
943
+ }
944
+ this.contacted();
945
+ }
946
+ preventStringKeypress(event) {
947
+ if (isNaN(Number(String.fromCharCode(event.charCode))) ||
948
+ String.fromCharCode(event.charCode) === ' ') {
949
+ event.preventDefault();
950
+ }
951
+ }
952
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ContactSupportComponent, deps: [{ token: i1$3.MessageService }, { token: i1$4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
953
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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-6\">\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 class=\"p-col-12 p-md-6\">\r\n <span class=\"titre\">{{translate.placeholderextentionOrComment}}</span>:\r\n <input [placeholder]=\"translate.placeholderextentionOrComment\" type=\"text\" pInputText formControlName=\"extentionOrComment\">\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$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.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", "life", "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", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i4$2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i6$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "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: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "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", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }] });
954
+ }
955
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ContactSupportComponent, decorators: [{
956
+ type: Component,
957
+ 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-6\">\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 class=\"p-col-12 p-md-6\">\r\n <span class=\"titre\">{{translate.placeholderextentionOrComment}}</span>:\r\n <input [placeholder]=\"translate.placeholderextentionOrComment\" type=\"text\" pInputText formControlName=\"extentionOrComment\">\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"] }]
958
+ }], ctorParameters: () => [{ type: i1$3.MessageService }, { type: i1$4.FormBuilder }], propDecorators: { displaycontactSupport: [{
959
+ type: Input
960
+ }], globaltranslate: [{
961
+ type: Input
962
+ }], translate: [{
963
+ type: Input
964
+ }], showDate: [{
965
+ type: Input
966
+ }], detailedPmJob: [{
967
+ type: Input
968
+ }], reasonContact: [{
969
+ type: Input
970
+ }], reasons: [{
971
+ type: Input
972
+ }], sendDetailedPm: [{
973
+ type: Output
974
+ }], sendForm: [{
975
+ type: Output
976
+ }], closeContactSupport: [{
977
+ type: Output
919
978
  }] } });
920
979
 
921
- var EmailType;
922
- (function (EmailType) {
923
- EmailType["Accepted_Clients_Alternate"] = "Accepted_Clients_Alternate";
924
- EmailType["Accepted_CSC_Alternate"] = "Accepted_CSC_Alternate";
925
- EmailType["Accepted_Clients"] = "Accepted_Clients";
926
- EmailType["Accepted_CSC"] = "Accepted_CSC";
927
- EmailType["CancelPM_Clients"] = "CancelPM_Clients";
928
- EmailType["CancelPM_CSC"] = "CancelPM_CSC";
929
- EmailType["ContactMe_Clients"] = "ContactMe_Clients";
930
- EmailType["ContactMe_CSC"] = "ContactMe_CSC";
931
- EmailType["ReportDate_Clients"] = "ReportDate_Clients";
932
- EmailType["ReportDate_CSC"] = "ReportDate_CSC";
933
- EmailType["SendNewDates_Clients"] = "SendNewDates_Clients";
934
- EmailType["SendNewDates_CSC"] = "SendNewDates_CSC";
935
- EmailType["DesynchroPM_CSC"] = "DesynchroPM_CSC";
980
+ var EmailType;
981
+ (function (EmailType) {
982
+ EmailType["Accepted_Clients_Alternate"] = "Accepted_Clients_Alternate";
983
+ EmailType["Accepted_CSC_Alternate"] = "Accepted_CSC_Alternate";
984
+ EmailType["Accepted_Clients"] = "Accepted_Clients";
985
+ EmailType["Accepted_CSC"] = "Accepted_CSC";
986
+ EmailType["CancelPM_Clients"] = "CancelPM_Clients";
987
+ EmailType["CancelPM_CSC"] = "CancelPM_CSC";
988
+ EmailType["ContactMe_Clients"] = "ContactMe_Clients";
989
+ EmailType["ContactMe_CSC"] = "ContactMe_CSC";
990
+ EmailType["ReportDate_Clients"] = "ReportDate_Clients";
991
+ EmailType["ReportDate_CSC"] = "ReportDate_CSC";
992
+ EmailType["SendNewDates_Clients"] = "SendNewDates_Clients";
993
+ EmailType["SendNewDates_CSC"] = "SendNewDates_CSC";
994
+ EmailType["DesynchroPM_CSC"] = "DesynchroPM_CSC";
936
995
  })(EmailType || (EmailType = {}));
937
996
 
938
- var EventStatus;
939
- (function (EventStatus) {
940
- EventStatus["ASSIGNEDANC"] = "Assigned ANC";
941
- EventStatus["ASSIGNED"] = "Assigned";
942
- EventStatus["ASSIGNEDPINNED"] = "Assigned Pinned";
943
- EventStatus["COMPLETE"] = "Complete";
944
- EventStatus["INCOMPLETE"] = "Incomplete";
997
+ var EventStatus;
998
+ (function (EventStatus) {
999
+ EventStatus["ASSIGNEDANC"] = "Assigned ANC";
1000
+ EventStatus["ASSIGNED"] = "Assigned";
1001
+ EventStatus["ASSIGNEDPINNED"] = "Assigned Pinned";
1002
+ EventStatus["COMPLETE"] = "Complete";
1003
+ EventStatus["INCOMPLETE"] = "Incomplete";
945
1004
  })(EventStatus || (EventStatus = {}));
946
1005
 
947
- var StingBoolean;
948
- (function (StingBoolean) {
949
- StingBoolean["YES"] = "Yes";
950
- StingBoolean["NO"] = "No";
1006
+ var StingBoolean;
1007
+ (function (StingBoolean) {
1008
+ StingBoolean["YES"] = "Yes";
1009
+ StingBoolean["NO"] = "No";
951
1010
  })(StingBoolean || (StingBoolean = {}));
952
1011
 
953
- class ShowLinksComponent {
954
- constructor() {
955
- this.closeShowLinks = new EventEmitter();
956
- this.detailedPmJobLinkedList = [];
957
- this.header = "header";
958
- this.language = navigator.language.substr(0, 2).toLowerCase();
959
- this.header = "PM : " + this.selectedWorkorderId;
960
- }
961
- close() {
962
- this.closeShowLinks.emit(false);
963
- }
964
- applyFilterGlobal($event, stringVal) {
965
- this.dt?.filterGlobal($event.target.value, stringVal);
966
- }
967
- transformStatus(status) {
968
- switch (status) {
969
- case PmJobStatus.NEW: return this.status.new;
970
- case PmJobStatus.ACCEPTED: return this.status.accepted;
971
- case PmJobStatus.CLOSED: return this.status.closed;
972
- case PmJobStatus.Late: return this.status.late;
973
- case PmJobStatus.OPEN: return this.status.open;
974
- case PmJobStatus.WAITING: return this.status.waiting;
975
- case PmJobStatus.DONE: return this.status.done;
976
- case PmJobStatus.VALIDATED: return this.status.validated;
977
- default: return "Erreur";
978
- }
979
- }
980
- getStatusTooltip(status) {
981
- switch (status) {
982
- case PmJobStatus.ACCEPTED: return this.status.acceptedTooltip;
983
- case PmJobStatus.NEW: return this.status.newTooltip;
984
- case PmJobStatus.CLOSED: return this.status.closedTooltip;
985
- case PmJobStatus.Late: return this.status.lateTooltip;
986
- case PmJobStatus.OPEN: return this.status.openTooltip;
987
- case PmJobStatus.WAITING: return this.status.waitingTooltip;
988
- case PmJobStatus.DONE: return this.status.doneTooltip;
989
- case PmJobStatus.VALIDATED: return this.status.validatedTooltip;
990
- default: return "Erreur";
991
- }
992
- }
993
- transformType(type) {
994
- if (type === "Planned Maintenance") {
995
- return "Maintenance planifiée";
996
- }
997
- return type;
998
- }
999
- }
1000
- ShowLinksComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ShowLinksComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1001
- 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: \"EEE dd MMM yyyy\":\"\":language}}</td>\r\n <td *ngIf=\"product.pmJob.caseType == 'Planned Maintenance'\">{{translate.maintenanceList.typePlanned}}</td>\r\n <td *ngIf=\"product.pmJob.caseType == 'QARA'\">{{translate.maintenanceList.typeQARA}}</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: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.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: i2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i2.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: i6$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$1.DatePipe, name: "date" }] });
1002
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ShowLinksComponent, decorators: [{
1003
- type: Component,
1004
- 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: \"EEE dd MMM yyyy\":\"\":language}}</td>\r\n <td *ngIf=\"product.pmJob.caseType == 'Planned Maintenance'\">{{translate.maintenanceList.typePlanned}}</td>\r\n <td *ngIf=\"product.pmJob.caseType == 'QARA'\">{{translate.maintenanceList.typeQARA}}</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>" }]
1005
- }], ctorParameters: function () { return []; }, propDecorators: { dt: [{
1006
- type: ViewChild,
1007
- args: ['dt']
1008
- }], displayShowLinks: [{
1009
- type: Input
1010
- }], closeShowLinks: [{
1011
- type: Output
1012
- }], detailedPmJobLinkedList: [{
1013
- type: Input
1014
- }], selectedWorkorderId: [{
1015
- type: Input
1016
- }], globaltranslate: [{
1017
- type: Input
1018
- }], translate: [{
1019
- type: Input
1020
- }], status: [{
1021
- type: Input
1012
+ class ShowLinksComponent {
1013
+ dt;
1014
+ displayShowLinks;
1015
+ closeShowLinks = new EventEmitter();
1016
+ detailedPmJobLinkedList = [];
1017
+ selectedWorkorderId;
1018
+ globaltranslate;
1019
+ translate;
1020
+ status;
1021
+ header = "header";
1022
+ language = navigator.language.substr(0, 2).toLowerCase();
1023
+ constructor() {
1024
+ this.header = "PM : " + this.selectedWorkorderId;
1025
+ }
1026
+ close() {
1027
+ this.closeShowLinks.emit(false);
1028
+ }
1029
+ applyFilterGlobal($event, stringVal) {
1030
+ this.dt?.filterGlobal($event.target.value, stringVal);
1031
+ }
1032
+ transformStatus(status) {
1033
+ switch (status) {
1034
+ case PmJobStatus.NEW: return this.status.new;
1035
+ case PmJobStatus.ACCEPTED: return this.status.accepted;
1036
+ case PmJobStatus.CLOSED: return this.status.closed;
1037
+ case PmJobStatus.Late: return this.status.late;
1038
+ case PmJobStatus.OPEN: return this.status.open;
1039
+ case PmJobStatus.WAITING: return this.status.waiting;
1040
+ case PmJobStatus.DONE: return this.status.done;
1041
+ case PmJobStatus.VALIDATED: return this.status.validated;
1042
+ default: return "Erreur";
1043
+ }
1044
+ }
1045
+ getStatusTooltip(status) {
1046
+ switch (status) {
1047
+ case PmJobStatus.ACCEPTED: return this.status.acceptedTooltip;
1048
+ case PmJobStatus.NEW: return this.status.newTooltip;
1049
+ case PmJobStatus.CLOSED: return this.status.closedTooltip;
1050
+ case PmJobStatus.Late: return this.status.lateTooltip;
1051
+ case PmJobStatus.OPEN: return this.status.openTooltip;
1052
+ case PmJobStatus.WAITING: return this.status.waitingTooltip;
1053
+ case PmJobStatus.DONE: return this.status.doneTooltip;
1054
+ case PmJobStatus.VALIDATED: return this.status.validatedTooltip;
1055
+ default: return "Erreur";
1056
+ }
1057
+ }
1058
+ transformType(type) {
1059
+ if (type === "Planned Maintenance") {
1060
+ return "Maintenance planifiée";
1061
+ }
1062
+ return type;
1063
+ }
1064
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ShowLinksComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1065
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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: \"EEE dd MMM yyyy\":\"\":language}}</td>\r\n <td *ngIf=\"product.pmJob.caseType == 'Planned Maintenance'\">{{translate.maintenanceList.typePlanned}}</td>\r\n <td *ngIf=\"product.pmJob.caseType == 'QARA'\">{{translate.maintenanceList.typeQARA}}</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: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "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", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "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: i2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i2.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", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i6$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "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$1.DatePipe, name: "date" }] });
1066
+ }
1067
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ShowLinksComponent, decorators: [{
1068
+ type: Component,
1069
+ 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: \"EEE dd MMM yyyy\":\"\":language}}</td>\r\n <td *ngIf=\"product.pmJob.caseType == 'Planned Maintenance'\">{{translate.maintenanceList.typePlanned}}</td>\r\n <td *ngIf=\"product.pmJob.caseType == 'QARA'\">{{translate.maintenanceList.typeQARA}}</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>" }]
1070
+ }], ctorParameters: () => [], propDecorators: { dt: [{
1071
+ type: ViewChild,
1072
+ args: ['dt']
1073
+ }], displayShowLinks: [{
1074
+ type: Input
1075
+ }], closeShowLinks: [{
1076
+ type: Output
1077
+ }], detailedPmJobLinkedList: [{
1078
+ type: Input
1079
+ }], selectedWorkorderId: [{
1080
+ type: Input
1081
+ }], globaltranslate: [{
1082
+ type: Input
1083
+ }], translate: [{
1084
+ type: Input
1085
+ }], status: [{
1086
+ type: Input
1022
1087
  }] } });
1023
1088
 
1024
- class ConfirmDialogContactComponent {
1025
- constructor(messageService) {
1026
- this.messageService = messageService;
1027
- this.detailedPmJobLinkedList = [];
1028
- this.closeConfirmDialogContact = new EventEmitter();
1029
- }
1030
- rejectDate() {
1031
- this.closeConfirmDialogContact.emit(false);
1032
- this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
1033
- }
1034
- confirmDate() {
1035
- this.closeConfirmDialogContact.emit(true);
1036
- }
1037
- }
1038
- 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 });
1039
- 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$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.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: i6$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"] }] });
1040
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ConfirmDialogContactComponent, decorators: [{
1041
- type: Component,
1042
- 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" }]
1043
- }], ctorParameters: function () { return [{ type: i1$3.MessageService }]; }, propDecorators: { displayConfirmDialogContact: [{
1044
- type: Input
1045
- }], startDateTime: [{
1046
- type: Input
1047
- }], endDateTime: [{
1048
- type: Input
1049
- }], globaltranslate: [{
1050
- type: Input
1051
- }], translate: [{
1052
- type: Input
1053
- }], detailedPmJobLinkedList: [{
1054
- type: Input
1055
- }], closeConfirmDialogContact: [{
1056
- type: Output
1089
+ class ConfirmDialogContactComponent {
1090
+ messageService;
1091
+ displayConfirmDialogContact;
1092
+ startDateTime;
1093
+ endDateTime;
1094
+ globaltranslate;
1095
+ translate;
1096
+ detailedPmJobLinkedList = [];
1097
+ closeConfirmDialogContact = new EventEmitter();
1098
+ constructor(messageService) {
1099
+ this.messageService = messageService;
1100
+ }
1101
+ rejectDate() {
1102
+ this.closeConfirmDialogContact.emit(false);
1103
+ this.messageService.add({ severity: 'error', summary: this.globaltranslate.summaryReject, detail: this.globaltranslate.detailReject });
1104
+ }
1105
+ confirmDate() {
1106
+ this.closeConfirmDialogContact.emit(true);
1107
+ }
1108
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ConfirmDialogContactComponent, deps: [{ token: i1$3.MessageService }], target: i0.ɵɵFactoryTarget.Component });
1109
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.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", "life", "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", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "size", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i6$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "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"] }] });
1110
+ }
1111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ConfirmDialogContactComponent, decorators: [{
1112
+ type: Component,
1113
+ 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" }]
1114
+ }], ctorParameters: () => [{ type: i1$3.MessageService }], propDecorators: { displayConfirmDialogContact: [{
1115
+ type: Input
1116
+ }], startDateTime: [{
1117
+ type: Input
1118
+ }], endDateTime: [{
1119
+ type: Input
1120
+ }], globaltranslate: [{
1121
+ type: Input
1122
+ }], translate: [{
1123
+ type: Input
1124
+ }], detailedPmJobLinkedList: [{
1125
+ type: Input
1126
+ }], closeConfirmDialogContact: [{
1127
+ type: Output
1057
1128
  }] } });
1058
1129
 
1059
- class MaintenanceListComponent {
1060
- constructor() {
1061
- this.maintenanceList = [];
1062
- this.maintenanceListNotDisplayed = [];
1063
- this.pmJobList = [];
1064
- this.displayConfirmedDateInfo = false;
1065
- this.emitForUpdate = new EventEmitter();
1066
- this.emitForAlternativeDates = new EventEmitter();
1067
- this.sendContactMeEmail = new EventEmitter();
1068
- this.sendForm = new EventEmitter();
1069
- this.detailedPmJobLinkedList = [];
1070
- this.alternativeDatesSelected = [];
1071
- this.displaycontactSupport = false;
1072
- this.displayConfirmDialog = false;
1073
- this.displayConfirmDateAlternativeDialog = false;
1074
- this.displayConfirmDialogContact = false;
1075
- this.displayShowLinks = false;
1076
- this.displayAnotherDate = false;
1077
- this.isWithLinks = false;
1078
- this.isProposedDate = true;
1079
- this.reasonContact = "";
1080
- this.first = 0;
1081
- this.language = navigator.language.substr(0, 2).toLowerCase();
1082
- }
1083
- ngOnDestroy() {
1084
- if (this.updatePmSubscription) {
1085
- this.updatePmSubscription.unsubscribe();
1086
- }
1087
- if (this.alternativeDatesSubscription) {
1088
- this.alternativeDatesSubscription.unsubscribe();
1089
- }
1090
- }
1091
- applyFilterGlobal($event, stringVal) {
1092
- this.dt?.filterGlobal($event.target.value, stringVal);
1093
- }
1094
- selectElement(element) {
1095
- this.alternativeDatesList = null;
1096
- this.emailTypes = [];
1097
- if (element) {
1098
- this.pmSelectedStatus = element.status;
1099
- }
1100
- if (element.pmJob.groupList) {
1101
- this.isWithLinks = element.pmJob.groupList?.length > 0 ? true : false;
1102
- }
1103
- this.selectedWorkorderId = element.pmJob.workorderNumber;
1104
- this.maintenanceSelected = element;
1105
- this.maintenanceSelected.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1106
- if (!this.isAlreadyScheduled) {
1107
- this.getAlternativeDates(element.pmJob);
1108
- }
1109
- this.startDateTime = this.maintenanceSelected.pmJob.startDateTime;
1110
- this.endDateTime = this.maintenanceSelected.pmJob.endDateTime;
1111
- this.getLinkedPmJob();
1112
- }
1113
- getAlternativeDates(pmJob) {
1114
- this.emitForAlternativeDates.emit(pmJob);
1115
- }
1116
- getLinkedPmJob() {
1117
- this.detailedPmJobLinkedList = [];
1118
- if (this.maintenanceSelected.pmJob.groupList) {
1119
- this.maintenanceSelected.pmJob.groupList.forEach((linked) => {
1120
- this.maintenanceList.forEach((item) => {
1121
- if (linked.workorderId === item.pmJob.workorderId) {
1122
- this.detailedPmJobLinkedList.push(item);
1123
- }
1124
- });
1125
- });
1126
- }
1127
- // if the linked PM in the other maintenance list not selected
1128
- if (this.maintenanceSelected.pmJob.groupList && (this.maintenanceSelected.pmJob.groupList.length !== this.detailedPmJobLinkedList.length)) {
1129
- this.maintenanceSelected.pmJob.groupList.forEach((linked) => {
1130
- this.maintenanceListNotDisplayed.forEach((item) => {
1131
- item.toUpdate = false;
1132
- if (linked.workorderId === item.pmJob.workorderId) {
1133
- this.detailedPmJobLinkedList.push(item);
1134
- }
1135
- });
1136
- });
1137
- }
1138
- }
1139
- confirmDialog() {
1140
- this.isProposedDate = true;
1141
- this.op.hide();
1142
- this.displayConfirmDialog = true;
1143
- }
1144
- closeConfirmDialog(confirm) {
1145
- console.log(this.isProposedDate);
1146
- this.displayConfirmDialog = false;
1147
- this.maintenanceSelected.futureStatus = PmJobStatus.ACCEPTED;
1148
- if (confirm) {
1149
- if (!this.isProposedDate) {
1150
- this.emailTypes.push(EmailType.Accepted_CSC_Alternate);
1151
- this.emailTypes.push(EmailType.Accepted_Clients_Alternate);
1152
- this.updateAlternativeDate();
1153
- }
1154
- else {
1155
- this.emailTypes.push(EmailType.Accepted_CSC);
1156
- this.emailTypes.push(EmailType.Accepted_Clients);
1157
- this.updateProposedDate();
1158
- }
1159
- this.updatePmJob();
1160
- }
1161
- }
1162
- closeConfirmDialogContact(confirm) {
1163
- this.displayConfirmDialogContact = false;
1164
- if (confirm) {
1165
- this.emailTypes = [];
1166
- if (this.reasonContact === ReasonContact.ContactFormPm) {
1167
- this.emailTypes.push(EmailType.ContactMe_Clients);
1168
- this.emailTypes.push(EmailType.ContactMe_CSC);
1169
- }
1170
- else if (this.reasonContact === ReasonContact.CancelFormPm) {
1171
- this.maintenanceSelected.pmJob.customObject = {};
1172
- this.maintenanceSelected.pmJob.customObject.customerWaiting = StingBoolean.YES;
1173
- this.maintenanceSelected.futureStatus = PmJobStatus.WAITING;
1174
- this.emailTypes.push(EmailType.CancelPM_CSC);
1175
- this.emailTypes.push(EmailType.CancelPM_Clients);
1176
- }
1177
- else {
1178
- this.maintenanceSelected.pmJob.customObject = {};
1179
- this.maintenanceSelected.pmJob.customObject.customerWaiting = StingBoolean.YES;
1180
- this.maintenanceSelected.futureStatus = PmJobStatus.WAITING;
1181
- this.emailTypes.push(EmailType.SendNewDates_CSC);
1182
- this.emailTypes.push(EmailType.SendNewDates_Clients);
1183
- }
1184
- this.updateLinkedPMFormContact();
1185
- this.closeContactSupport(true);
1186
- }
1187
- }
1188
- updateLinkedPMFormContact() {
1189
- this.pmJobList = [];
1190
- this.pmJobList.push(this.maintenanceSelected);
1191
- if (this.detailedPmJobLinkedList.length > 0) {
1192
- this.detailedPmJobLinkedList.forEach((item) => {
1193
- item.futureStatus = item.status;
1194
- item.selectedDate = item.pmJob.startDateTime;
1195
- item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1196
- if (this.reasonContact === ReasonContact.MoreDatesFormPm || this.reasonContact === ReasonContact.CancelFormPm) {
1197
- item.reason = this.maintenanceSelected.reason;
1198
- item.reasonContact = this.maintenanceSelected.reasonContact;
1199
- item.pmJob.customObject = {};
1200
- item.pmJob.customObject.customerWaiting = StingBoolean.YES;
1201
- item.futureStatus = PmJobStatus.WAITING;
1202
- }
1203
- this.pmJobList.push(item);
1204
- });
1205
- }
1206
- this.callApiToUpdate();
1207
- }
1208
- closeContactSupport(event) {
1209
- this.displaycontactSupport = false;
1210
- this.showDate = false;
1211
- this.reasonContact = "";
1212
- }
1213
- proposeAnotherDate() {
1214
- this.isProposedDate = false;
1215
- this.op.hide();
1216
- this.displayAnotherDate = true;
1217
- }
1218
- contactSupport(fromOtherDate) {
1219
- this.op.hide();
1220
- this.reasonContact = fromOtherDate ? ReasonContact.MoreDatesFormPm : ReasonContact.ContactFormPm;
1221
- this.displaycontactSupport = true;
1222
- }
1223
- showLinks(element) {
1224
- if (element) {
1225
- this.selectElement(element);
1226
- }
1227
- this.op.hide();
1228
- this.displayShowLinks = true;
1229
- }
1230
- closeShowLinks() {
1231
- this.displayShowLinks = false;
1232
- }
1233
- closeConfirmedDateInfo() {
1234
- this.displayConfirmedDateInfo = false;
1235
- }
1236
- acceptDate(alternativeDates) {
1237
- this.displayConfirmDialog = true;
1238
- this.alternativeDatesSelected = alternativeDates;
1239
- this.findDatesSelected();
1240
- }
1241
- findDatesSelected() {
1242
- this.alternativeDatesSelected.forEach((alternativeDate) => {
1243
- if (alternativeDate.selected === "Yes") {
1244
- this.startDateTime = alternativeDate.startDateTime;
1245
- this.endDateTime = alternativeDate.endDateTime;
1246
- this.maintenanceSelected.selectedDate = alternativeDate.startDateTime;
1247
- return;
1248
- }
1249
- });
1250
- }
1251
- closeAnotherDate(event) {
1252
- this.displayAnotherDate = false;
1253
- if (event === false) {
1254
- this.alreadyScheduledMsg = false;
1255
- this.op.hide();
1256
- this.contactSupport(true);
1257
- }
1258
- }
1259
- updatePmJob() {
1260
- this.pmJobList = [];
1261
- this.pmJobList.push(this.maintenanceSelected);
1262
- if (this.detailedPmJobLinkedList.length > 0) {
1263
- this.detailedPmJobLinkedList.forEach((pMJob) => {
1264
- this.pmJobList.push(pMJob);
1265
- });
1266
- }
1267
- this.callApiToUpdate();
1268
- }
1269
- editPm() {
1270
- this.alreadyScheduledMsg = true;
1271
- this.op.hide();
1272
- this.reasonContact = ReasonContact.CancelFormPm;
1273
- this.prepareForPopup();
1274
- this.displaycontactSupport = true;
1275
- }
1276
- prepareForPopup() {
1277
- if (this.maintenanceSelected.pmJob.customerAccepted === "Yes") {
1278
- this.startDateTime = this.maintenanceSelected.pmJob.startDateTime;
1279
- this.endDateTime = this.maintenanceSelected.pmJob.endDateTime;
1280
- }
1281
- else {
1282
- this.alternativeDatesSelected = this.maintenanceSelected.pmJob.alternativeDates;
1283
- this.findDatesSelected();
1284
- }
1285
- }
1286
- updateProposedDate() {
1287
- this.maintenanceSelected.pmJob.customerAccepted = StingBoolean.YES;
1288
- this.maintenanceSelected.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1289
- this.detailedPmJobLinkedList.forEach((item) => {
1290
- item.pmJob.customerAccepted = StingBoolean.YES;
1291
- item.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1292
- item.futureStatus = PmJobStatus.ACCEPTED;
1293
- item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1294
- });
1295
- }
1296
- updateAlternativeDate() {
1297
- this.findDatesSelected();
1298
- this.maintenanceSelected.pmJob.alternativeDates = this.alternativeDatesSelected;
1299
- this.detailedPmJobLinkedList.forEach((item) => {
1300
- item.pmJob.alternativeDates = this.alternativeDatesSelected;
1301
- item.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1302
- item.futureStatus = PmJobStatus.ACCEPTED;
1303
- item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1304
- });
1305
- this.displayAnotherDate = false;
1306
- }
1307
- sendContactMeForm(contactMeRequest) {
1308
- this.moreDates = false;
1309
- if (contactMeRequest.reasonContact === ReasonContact.MoreDatesFormPm) {
1310
- this.moreDates = true;
1311
- }
1312
- this.displayConfirmDialogContact = true;
1313
- this.maintenanceSelected = contactMeRequest;
1314
- }
1315
- callApiToUpdate() {
1316
- let PmJobListForUpdate = {};
1317
- PmJobListForUpdate.pmJobList = this.pmJobList;
1318
- PmJobListForUpdate.emailTypes = this.emailTypes;
1319
- this.emitForUpdate.emit(PmJobListForUpdate);
1320
- }
1321
- transformStatus(status) {
1322
- switch (status) {
1323
- case PmJobStatus.NEW: return this.status.new;
1324
- case PmJobStatus.ACCEPTED: return this.status.accepted;
1325
- case PmJobStatus.CLOSED: return this.status.closed;
1326
- case PmJobStatus.Late: return this.status.late;
1327
- case PmJobStatus.OPEN: return this.status.open;
1328
- case PmJobStatus.WAITING: return this.status.waiting;
1329
- case PmJobStatus.DONE: return this.status.done;
1330
- case PmJobStatus.VALIDATED: return this.status.validated;
1331
- default: return "Erreur";
1332
- }
1333
- }
1334
- getStatusTooltip(status) {
1335
- switch (status) {
1336
- case PmJobStatus.ACCEPTED: return this.status.acceptedTooltip;
1337
- case PmJobStatus.NEW: return this.status.newTooltip;
1338
- case PmJobStatus.CLOSED: return this.status.closedTooltip;
1339
- case PmJobStatus.Late: return this.status.lateTooltip;
1340
- case PmJobStatus.OPEN: return this.status.openTooltip;
1341
- case PmJobStatus.WAITING: return this.status.waitingTooltip;
1342
- case PmJobStatus.DONE: return this.status.doneTooltip;
1343
- case PmJobStatus.VALIDATED: return this.status.validatedTooltip;
1344
- default: return "Erreur";
1345
- }
1346
- }
1347
- }
1348
- MaintenanceListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MaintenanceListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1349
- 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 }], ngImport: i0, template: "<p-table #dt [value]=\"maintenanceList\" responsiveLayout=\"stack\" [rows]=\"10\" [showCurrentPageReport]=\"true\" [rowsPerPageOptions]=\"[5,10,25,50]\" \r\n[globalFilterFields]=\"['systemId','pmJob.caseId','systemName','pmJob.workorderNumber','pmJob.startDateTime','pmJob.endDateTime','pmJob.case_type','pmJob.case_category','status']\"\r\n[paginator]=\"true\" [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=\"pmJob.workorderNumber\">{{translate.maintenanceList.workOrder}}\r\n <p-sortIcon field=\"pmJob.workorderNumber\"></p-sortIcon>\r\n <th pSortableColumn=\"pmJob.startDateTime\">{{translate.maintenanceList.startDate}}\r\n <p-sortIcon field=\"pmJob.startDateTime\"></p-sortIcon>\r\n <th pSortableColumn=\"pmJob.caseType\">{{translate.maintenanceList.type}}\r\n <p-sortIcon field=\"pmJob.caseType\"></p-sortIcon>\r\n <th pSortableColumn=\"status\">{{translate.maintenanceList.status}}\r\n <p-sortIcon field=\"status\"></p-sortIcon>\r\n <th>{{translate.maintenanceList.NbrLinks}}\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: \"EEE dd MMM yyyy\":\"\":language}}</td>\r\n <td *ngIf=\"product.pmJob.caseType === 'Planned Maintenance'\">{{translate.maintenanceList.typePlanned}}</td>\r\n <td *ngIf=\"product.pmJob.caseType === 'QARA'\">{{translate.maintenanceList.typeQARA}}</td>\r\n <td>\r\n <span [class]=\"'product-status status-' + product.status\"\r\n [pTooltip]=\"getStatusTooltip(product.status)\">\r\n {{transformStatus(product.status)}}\r\n </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\" [displayConfirmedDateInfos]=\"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$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.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: i2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i2.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: ["displayConfirmedDateInfos", "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$1.DatePipe, name: "date" }] });
1350
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: MaintenanceListComponent, decorators: [{
1351
- type: Component,
1352
- 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]\" \r\n[globalFilterFields]=\"['systemId','pmJob.caseId','systemName','pmJob.workorderNumber','pmJob.startDateTime','pmJob.endDateTime','pmJob.case_type','pmJob.case_category','status']\"\r\n[paginator]=\"true\" [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=\"pmJob.workorderNumber\">{{translate.maintenanceList.workOrder}}\r\n <p-sortIcon field=\"pmJob.workorderNumber\"></p-sortIcon>\r\n <th pSortableColumn=\"pmJob.startDateTime\">{{translate.maintenanceList.startDate}}\r\n <p-sortIcon field=\"pmJob.startDateTime\"></p-sortIcon>\r\n <th pSortableColumn=\"pmJob.caseType\">{{translate.maintenanceList.type}}\r\n <p-sortIcon field=\"pmJob.caseType\"></p-sortIcon>\r\n <th pSortableColumn=\"status\">{{translate.maintenanceList.status}}\r\n <p-sortIcon field=\"status\"></p-sortIcon>\r\n <th>{{translate.maintenanceList.NbrLinks}}\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: \"EEE dd MMM yyyy\":\"\":language}}</td>\r\n <td *ngIf=\"product.pmJob.caseType === 'Planned Maintenance'\">{{translate.maintenanceList.typePlanned}}</td>\r\n <td *ngIf=\"product.pmJob.caseType === 'QARA'\">{{translate.maintenanceList.typeQARA}}</td>\r\n <td>\r\n <span [class]=\"'product-status status-' + product.status\"\r\n [pTooltip]=\"getStatusTooltip(product.status)\">\r\n {{transformStatus(product.status)}}\r\n </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\" [displayConfirmedDateInfos]=\"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"] }]
1353
- }], ctorParameters: function () { return []; }, propDecorators: { dt: [{
1354
- type: ViewChild,
1355
- args: ['dt']
1356
- }], op: [{
1357
- type: ViewChild,
1358
- args: ['op']
1359
- }], translate: [{
1360
- type: Input
1361
- }], reasons: [{
1362
- type: Input
1363
- }], globaltranslate: [{
1364
- type: Input
1365
- }], maintenanceList: [{
1366
- type: Input
1367
- }], maintenanceListNotDisplayed: [{
1368
- type: Input
1369
- }], pmJobList: [{
1370
- type: Input
1371
- }], isAlreadyScheduled: [{
1372
- type: Input
1373
- }], displayConfirmedDateInfo: [{
1374
- type: Input
1375
- }], alternativeDatesList: [{
1376
- type: Input
1377
- }], emitForUpdate: [{
1378
- type: Output
1379
- }], emitForAlternativeDates: [{
1380
- type: Output
1381
- }], sendContactMeEmail: [{
1382
- type: Output
1383
- }], status: [{
1384
- type: Input
1385
- }], sendForm: [{
1386
- type: Output
1130
+ class MaintenanceListComponent {
1131
+ dt;
1132
+ op;
1133
+ translate;
1134
+ reasons;
1135
+ globaltranslate;
1136
+ maintenanceList = [];
1137
+ maintenanceListNotDisplayed = [];
1138
+ pmJobList = [];
1139
+ isAlreadyScheduled;
1140
+ displayConfirmedDateInfo = false;
1141
+ alternativeDatesList;
1142
+ emitForUpdate = new EventEmitter();
1143
+ emitForAlternativeDates = new EventEmitter();
1144
+ sendContactMeEmail = new EventEmitter();
1145
+ status;
1146
+ sendForm = new EventEmitter();
1147
+ moreDates;
1148
+ detailedPmJobLinkedList = [];
1149
+ updatePmSubscription;
1150
+ alternativeDatesSubscription;
1151
+ showDate;
1152
+ maintenanceSelected;
1153
+ startDateTime;
1154
+ endDateTime;
1155
+ selectedWorkorderId;
1156
+ alternativeDate;
1157
+ alternativeDatesSelected = [];
1158
+ displaycontactSupport = false;
1159
+ displayConfirmDialog = false;
1160
+ displayConfirmDateAlternativeDialog = false;
1161
+ displayConfirmDialogContact = false;
1162
+ displayShowLinks = false;
1163
+ displayAnotherDate = false;
1164
+ isWithLinks = false;
1165
+ isProposedDate = true;
1166
+ pmSelectedStatus;
1167
+ emailTypes;
1168
+ alreadyScheduledMsg;
1169
+ reasonContact = "";
1170
+ contactMeRequest;
1171
+ first = 0;
1172
+ language = navigator.language.substr(0, 2).toLowerCase();
1173
+ constructor() { }
1174
+ ngOnDestroy() {
1175
+ if (this.updatePmSubscription) {
1176
+ this.updatePmSubscription.unsubscribe();
1177
+ }
1178
+ if (this.alternativeDatesSubscription) {
1179
+ this.alternativeDatesSubscription.unsubscribe();
1180
+ }
1181
+ }
1182
+ applyFilterGlobal($event, stringVal) {
1183
+ this.dt?.filterGlobal($event.target.value, stringVal);
1184
+ }
1185
+ selectElement(element) {
1186
+ this.alternativeDatesList = null;
1187
+ this.emailTypes = [];
1188
+ if (element) {
1189
+ this.pmSelectedStatus = element.status;
1190
+ }
1191
+ if (element.pmJob.groupList) {
1192
+ this.isWithLinks = element.pmJob.groupList?.length > 0 ? true : false;
1193
+ }
1194
+ this.selectedWorkorderId = element.pmJob.workorderNumber;
1195
+ this.maintenanceSelected = element;
1196
+ this.maintenanceSelected.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1197
+ if (!this.isAlreadyScheduled) {
1198
+ this.getAlternativeDates(element.pmJob);
1199
+ }
1200
+ this.startDateTime = this.maintenanceSelected.pmJob.startDateTime;
1201
+ this.endDateTime = this.maintenanceSelected.pmJob.endDateTime;
1202
+ this.getLinkedPmJob();
1203
+ }
1204
+ getAlternativeDates(pmJob) {
1205
+ this.emitForAlternativeDates.emit(pmJob);
1206
+ }
1207
+ getLinkedPmJob() {
1208
+ this.detailedPmJobLinkedList = [];
1209
+ if (this.maintenanceSelected.pmJob.groupList) {
1210
+ this.maintenanceSelected.pmJob.groupList.forEach((linked) => {
1211
+ this.maintenanceList.forEach((item) => {
1212
+ if (linked.workorderId === item.pmJob.workorderId) {
1213
+ this.detailedPmJobLinkedList.push(item);
1214
+ }
1215
+ });
1216
+ });
1217
+ }
1218
+ // if the linked PM in the other maintenance list not selected
1219
+ if (this.maintenanceSelected.pmJob.groupList && (this.maintenanceSelected.pmJob.groupList.length !== this.detailedPmJobLinkedList.length)) {
1220
+ this.maintenanceSelected.pmJob.groupList.forEach((linked) => {
1221
+ this.maintenanceListNotDisplayed.forEach((item) => {
1222
+ item.toUpdate = false;
1223
+ if (linked.workorderId === item.pmJob.workorderId) {
1224
+ this.detailedPmJobLinkedList.push(item);
1225
+ }
1226
+ });
1227
+ });
1228
+ }
1229
+ }
1230
+ confirmDialog() {
1231
+ this.isProposedDate = true;
1232
+ this.op.hide();
1233
+ this.displayConfirmDialog = true;
1234
+ }
1235
+ closeConfirmDialog(confirm) {
1236
+ console.log(this.isProposedDate);
1237
+ this.displayConfirmDialog = false;
1238
+ this.maintenanceSelected.futureStatus = PmJobStatus.ACCEPTED;
1239
+ if (confirm) {
1240
+ if (!this.isProposedDate) {
1241
+ this.emailTypes.push(EmailType.Accepted_CSC_Alternate);
1242
+ this.emailTypes.push(EmailType.Accepted_Clients_Alternate);
1243
+ this.updateAlternativeDate();
1244
+ }
1245
+ else {
1246
+ this.emailTypes.push(EmailType.Accepted_CSC);
1247
+ this.emailTypes.push(EmailType.Accepted_Clients);
1248
+ this.updateProposedDate();
1249
+ }
1250
+ this.updatePmJob();
1251
+ }
1252
+ }
1253
+ closeConfirmDialogContact(confirm) {
1254
+ this.displayConfirmDialogContact = false;
1255
+ if (confirm) {
1256
+ this.emailTypes = [];
1257
+ if (this.reasonContact === ReasonContact.ContactFormPm) {
1258
+ this.emailTypes.push(EmailType.ContactMe_Clients);
1259
+ this.emailTypes.push(EmailType.ContactMe_CSC);
1260
+ }
1261
+ else if (this.reasonContact === ReasonContact.CancelFormPm) {
1262
+ this.maintenanceSelected.pmJob.customObject = {};
1263
+ this.maintenanceSelected.pmJob.customObject.customerWaiting = StingBoolean.YES;
1264
+ this.maintenanceSelected.futureStatus = PmJobStatus.WAITING;
1265
+ this.emailTypes.push(EmailType.CancelPM_CSC);
1266
+ this.emailTypes.push(EmailType.CancelPM_Clients);
1267
+ }
1268
+ else {
1269
+ this.maintenanceSelected.pmJob.customObject = {};
1270
+ this.maintenanceSelected.pmJob.customObject.customerWaiting = StingBoolean.YES;
1271
+ this.maintenanceSelected.futureStatus = PmJobStatus.WAITING;
1272
+ this.emailTypes.push(EmailType.SendNewDates_CSC);
1273
+ this.emailTypes.push(EmailType.SendNewDates_Clients);
1274
+ }
1275
+ this.updateLinkedPMFormContact();
1276
+ this.closeContactSupport(true);
1277
+ }
1278
+ }
1279
+ updateLinkedPMFormContact() {
1280
+ this.pmJobList = [];
1281
+ this.pmJobList.push(this.maintenanceSelected);
1282
+ if (this.detailedPmJobLinkedList.length > 0) {
1283
+ this.detailedPmJobLinkedList.forEach((item) => {
1284
+ item.futureStatus = item.status;
1285
+ item.selectedDate = item.pmJob.startDateTime;
1286
+ item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1287
+ if (this.reasonContact === ReasonContact.MoreDatesFormPm || this.reasonContact === ReasonContact.CancelFormPm) {
1288
+ item.reason = this.maintenanceSelected.reason;
1289
+ item.reasonContact = this.maintenanceSelected.reasonContact;
1290
+ item.pmJob.customObject = {};
1291
+ item.pmJob.customObject.customerWaiting = StingBoolean.YES;
1292
+ item.futureStatus = PmJobStatus.WAITING;
1293
+ }
1294
+ this.pmJobList.push(item);
1295
+ });
1296
+ }
1297
+ this.callApiToUpdate();
1298
+ }
1299
+ closeContactSupport(event) {
1300
+ this.displaycontactSupport = false;
1301
+ this.showDate = false;
1302
+ this.reasonContact = "";
1303
+ }
1304
+ proposeAnotherDate() {
1305
+ this.isProposedDate = false;
1306
+ this.op.hide();
1307
+ this.displayAnotherDate = true;
1308
+ }
1309
+ contactSupport(fromOtherDate) {
1310
+ this.op.hide();
1311
+ this.reasonContact = fromOtherDate ? ReasonContact.MoreDatesFormPm : ReasonContact.ContactFormPm;
1312
+ this.displaycontactSupport = true;
1313
+ }
1314
+ showLinks(element) {
1315
+ if (element) {
1316
+ this.selectElement(element);
1317
+ }
1318
+ this.op.hide();
1319
+ this.displayShowLinks = true;
1320
+ }
1321
+ closeShowLinks() {
1322
+ this.displayShowLinks = false;
1323
+ }
1324
+ closeConfirmedDateInfo() {
1325
+ this.displayConfirmedDateInfo = false;
1326
+ }
1327
+ acceptDate(alternativeDates) {
1328
+ this.displayConfirmDialog = true;
1329
+ this.alternativeDatesSelected = alternativeDates;
1330
+ this.findDatesSelected();
1331
+ }
1332
+ findDatesSelected() {
1333
+ this.alternativeDatesSelected.forEach((alternativeDate) => {
1334
+ if (alternativeDate.selected === "Yes") {
1335
+ this.startDateTime = alternativeDate.startDateTime;
1336
+ this.endDateTime = alternativeDate.endDateTime;
1337
+ this.maintenanceSelected.selectedDate = alternativeDate.startDateTime;
1338
+ return;
1339
+ }
1340
+ });
1341
+ }
1342
+ closeAnotherDate(event) {
1343
+ this.displayAnotherDate = false;
1344
+ if (event === false) {
1345
+ this.alreadyScheduledMsg = false;
1346
+ this.op.hide();
1347
+ this.contactSupport(true);
1348
+ }
1349
+ }
1350
+ updatePmJob() {
1351
+ this.pmJobList = [];
1352
+ this.pmJobList.push(this.maintenanceSelected);
1353
+ if (this.detailedPmJobLinkedList.length > 0) {
1354
+ this.detailedPmJobLinkedList.forEach((pMJob) => {
1355
+ this.pmJobList.push(pMJob);
1356
+ });
1357
+ }
1358
+ this.callApiToUpdate();
1359
+ }
1360
+ editPm() {
1361
+ this.alreadyScheduledMsg = true;
1362
+ this.op.hide();
1363
+ this.reasonContact = ReasonContact.CancelFormPm;
1364
+ this.prepareForPopup();
1365
+ this.displaycontactSupport = true;
1366
+ }
1367
+ prepareForPopup() {
1368
+ if (this.maintenanceSelected.pmJob.customerAccepted === "Yes") {
1369
+ this.startDateTime = this.maintenanceSelected.pmJob.startDateTime;
1370
+ this.endDateTime = this.maintenanceSelected.pmJob.endDateTime;
1371
+ }
1372
+ else {
1373
+ this.alternativeDatesSelected = this.maintenanceSelected.pmJob.alternativeDates;
1374
+ this.findDatesSelected();
1375
+ }
1376
+ }
1377
+ updateProposedDate() {
1378
+ this.maintenanceSelected.pmJob.customerAccepted = StingBoolean.YES;
1379
+ this.maintenanceSelected.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1380
+ this.detailedPmJobLinkedList.forEach((item) => {
1381
+ item.pmJob.customerAccepted = StingBoolean.YES;
1382
+ item.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1383
+ item.futureStatus = PmJobStatus.ACCEPTED;
1384
+ item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1385
+ });
1386
+ }
1387
+ updateAlternativeDate() {
1388
+ this.findDatesSelected();
1389
+ this.maintenanceSelected.pmJob.alternativeDates = this.alternativeDatesSelected;
1390
+ this.detailedPmJobLinkedList.forEach((item) => {
1391
+ item.pmJob.alternativeDates = this.alternativeDatesSelected;
1392
+ item.pmJob.eventStatus = EventStatus.ASSIGNEDANC;
1393
+ item.futureStatus = PmJobStatus.ACCEPTED;
1394
+ item.WorkorderNumberSelected = this.maintenanceSelected.pmJob.workorderId;
1395
+ });
1396
+ this.displayAnotherDate = false;
1397
+ }
1398
+ sendContactMeForm(contactMeRequest) {
1399
+ this.moreDates = false;
1400
+ if (contactMeRequest.reasonContact === ReasonContact.MoreDatesFormPm) {
1401
+ this.moreDates = true;
1402
+ }
1403
+ this.displayConfirmDialogContact = true;
1404
+ this.maintenanceSelected = contactMeRequest;
1405
+ }
1406
+ callApiToUpdate() {
1407
+ let PmJobListForUpdate = {};
1408
+ PmJobListForUpdate.pmJobList = this.pmJobList;
1409
+ PmJobListForUpdate.emailTypes = this.emailTypes;
1410
+ this.emitForUpdate.emit(PmJobListForUpdate);
1411
+ }
1412
+ transformStatus(status) {
1413
+ switch (status) {
1414
+ case PmJobStatus.NEW: return this.status.new;
1415
+ case PmJobStatus.ACCEPTED: return this.status.accepted;
1416
+ case PmJobStatus.CLOSED: return this.status.closed;
1417
+ case PmJobStatus.Late: return this.status.late;
1418
+ case PmJobStatus.OPEN: return this.status.open;
1419
+ case PmJobStatus.WAITING: return this.status.waiting;
1420
+ case PmJobStatus.DONE: return this.status.done;
1421
+ case PmJobStatus.VALIDATED: return this.status.validated;
1422
+ default: return "Erreur";
1423
+ }
1424
+ }
1425
+ getStatusTooltip(status) {
1426
+ switch (status) {
1427
+ case PmJobStatus.ACCEPTED: return this.status.acceptedTooltip;
1428
+ case PmJobStatus.NEW: return this.status.newTooltip;
1429
+ case PmJobStatus.CLOSED: return this.status.closedTooltip;
1430
+ case PmJobStatus.Late: return this.status.lateTooltip;
1431
+ case PmJobStatus.OPEN: return this.status.openTooltip;
1432
+ case PmJobStatus.WAITING: return this.status.waitingTooltip;
1433
+ case PmJobStatus.DONE: return this.status.doneTooltip;
1434
+ case PmJobStatus.VALIDATED: return this.status.validatedTooltip;
1435
+ default: return "Erreur";
1436
+ }
1437
+ }
1438
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MaintenanceListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1439
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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 }], ngImport: i0, template: "<p-table #dt [value]=\"maintenanceList\" responsiveLayout=\"stack\" [rows]=\"10\" [showCurrentPageReport]=\"true\" [rowsPerPageOptions]=\"[5,10,25,50]\" \r\n[globalFilterFields]=\"['systemId','pmJob.caseId','systemName','pmJob.workorderNumber','pmJob.startDateTime','pmJob.endDateTime','pmJob.case_type','pmJob.case_category','status']\"\r\n[paginator]=\"true\" [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=\"pmJob.workorderNumber\">{{translate.maintenanceList.workOrder}}\r\n <p-sortIcon field=\"pmJob.workorderNumber\"></p-sortIcon>\r\n <th pSortableColumn=\"pmJob.startDateTime\">{{translate.maintenanceList.startDate}}\r\n <p-sortIcon field=\"pmJob.startDateTime\"></p-sortIcon>\r\n <th pSortableColumn=\"pmJob.caseType\">{{translate.maintenanceList.type}}\r\n <p-sortIcon field=\"pmJob.caseType\"></p-sortIcon>\r\n <th pSortableColumn=\"status\">{{translate.maintenanceList.status}}\r\n <p-sortIcon field=\"status\"></p-sortIcon>\r\n <th>{{translate.maintenanceList.NbrLinks}}\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: \"EEE dd MMM yyyy\":\"\":language}}</td>\r\n <td *ngIf=\"product.pmJob.caseType === 'Planned Maintenance'\">{{translate.maintenanceList.typePlanned}}</td>\r\n <td *ngIf=\"product.pmJob.caseType === 'QARA'\">{{translate.maintenanceList.typeQARA}}</td>\r\n <td>\r\n <span [class]=\"'product-status status-' + product.status\"\r\n [pTooltip]=\"getStatusTooltip(product.status)\">\r\n {{transformStatus(product.status)}}\r\n </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\" [displayConfirmedDateInfos]=\"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$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "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", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "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: i2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i2.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", "life", "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", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i7$2.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "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: ["displayConfirmedDateInfos", "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$1.DatePipe, name: "date" }] });
1440
+ }
1441
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MaintenanceListComponent, decorators: [{
1442
+ type: Component,
1443
+ 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]\" \r\n[globalFilterFields]=\"['systemId','pmJob.caseId','systemName','pmJob.workorderNumber','pmJob.startDateTime','pmJob.endDateTime','pmJob.case_type','pmJob.case_category','status']\"\r\n[paginator]=\"true\" [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=\"pmJob.workorderNumber\">{{translate.maintenanceList.workOrder}}\r\n <p-sortIcon field=\"pmJob.workorderNumber\"></p-sortIcon>\r\n <th pSortableColumn=\"pmJob.startDateTime\">{{translate.maintenanceList.startDate}}\r\n <p-sortIcon field=\"pmJob.startDateTime\"></p-sortIcon>\r\n <th pSortableColumn=\"pmJob.caseType\">{{translate.maintenanceList.type}}\r\n <p-sortIcon field=\"pmJob.caseType\"></p-sortIcon>\r\n <th pSortableColumn=\"status\">{{translate.maintenanceList.status}}\r\n <p-sortIcon field=\"status\"></p-sortIcon>\r\n <th>{{translate.maintenanceList.NbrLinks}}\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: \"EEE dd MMM yyyy\":\"\":language}}</td>\r\n <td *ngIf=\"product.pmJob.caseType === 'Planned Maintenance'\">{{translate.maintenanceList.typePlanned}}</td>\r\n <td *ngIf=\"product.pmJob.caseType === 'QARA'\">{{translate.maintenanceList.typeQARA}}</td>\r\n <td>\r\n <span [class]=\"'product-status status-' + product.status\"\r\n [pTooltip]=\"getStatusTooltip(product.status)\">\r\n {{transformStatus(product.status)}}\r\n </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\" [displayConfirmedDateInfos]=\"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"] }]
1444
+ }], ctorParameters: () => [], propDecorators: { dt: [{
1445
+ type: ViewChild,
1446
+ args: ['dt']
1447
+ }], op: [{
1448
+ type: ViewChild,
1449
+ args: ['op']
1450
+ }], translate: [{
1451
+ type: Input
1452
+ }], reasons: [{
1453
+ type: Input
1454
+ }], globaltranslate: [{
1455
+ type: Input
1456
+ }], maintenanceList: [{
1457
+ type: Input
1458
+ }], maintenanceListNotDisplayed: [{
1459
+ type: Input
1460
+ }], pmJobList: [{
1461
+ type: Input
1462
+ }], isAlreadyScheduled: [{
1463
+ type: Input
1464
+ }], displayConfirmedDateInfo: [{
1465
+ type: Input
1466
+ }], alternativeDatesList: [{
1467
+ type: Input
1468
+ }], emitForUpdate: [{
1469
+ type: Output
1470
+ }], emitForAlternativeDates: [{
1471
+ type: Output
1472
+ }], sendContactMeEmail: [{
1473
+ type: Output
1474
+ }], status: [{
1475
+ type: Input
1476
+ }], sendForm: [{
1477
+ type: Output
1387
1478
  }] } });
1388
1479
 
1389
- const routes = [];
1390
- class SharedRoutingModule {
1391
- }
1392
- SharedRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1393
- SharedRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, imports: [i1.RouterModule], exports: [RouterModule] });
1394
- SharedRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] });
1395
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedRoutingModule, decorators: [{
1396
- type: NgModule,
1397
- args: [{
1398
- imports: [RouterModule.forChild(routes)],
1399
- exports: [RouterModule]
1400
- }]
1480
+ const routes = [];
1481
+ class SharedRoutingModule {
1482
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SharedRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1483
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.2", ngImport: i0, type: SharedRoutingModule, imports: [i1.RouterModule], exports: [RouterModule] });
1484
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SharedRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] });
1485
+ }
1486
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SharedRoutingModule, decorators: [{
1487
+ type: NgModule,
1488
+ args: [{
1489
+ imports: [RouterModule.forChild(routes)],
1490
+ exports: [RouterModule]
1491
+ }]
1401
1492
  }] });
1402
1493
 
1403
- class DashboardComponent {
1404
- constructor() {
1405
- this.toBeScheduledMaintenanceList = [];
1406
- this.alreadyScheduledMaintenanceList = [];
1407
- this.language = navigator.language.substr(0, 2).toLowerCase();
1408
- }
1409
- ngOnChanges(changes) { }
1410
- }
1411
- DashboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: DashboardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1412
- 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\" style=\"cursor: pointer;\" 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\" style=\"cursor: pointer;\" 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: \"EEE dd MMM yyyy\":\"\":language}} </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\" style=\"cursor: pointer;\">\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: i1.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i2.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$1.DatePipe, name: "date" }] });
1413
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: DashboardComponent, decorators: [{
1414
- type: Component,
1415
- 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\" style=\"cursor: pointer;\" 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\" style=\"cursor: pointer;\" 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: \"EEE dd MMM yyyy\":\"\":language}} </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\" style=\"cursor: pointer;\">\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"] }]
1416
- }], ctorParameters: function () { return []; }, propDecorators: { name: [{
1417
- type: Input
1418
- }], email: [{
1419
- type: Input
1420
- }], number: [{
1421
- type: Input
1422
- }], systems: [{
1423
- type: Input
1424
- }], toBeScheduledMaintenanceList: [{
1425
- type: Input
1426
- }], alreadyScheduledMaintenanceList: [{
1427
- type: Input
1428
- }], translate: [{
1429
- type: Input
1494
+ class DashboardComponent {
1495
+ name;
1496
+ email;
1497
+ number;
1498
+ systems;
1499
+ toBeScheduledMaintenanceList = [];
1500
+ alreadyScheduledMaintenanceList = [];
1501
+ translate;
1502
+ language = navigator.language.substr(0, 2).toLowerCase();
1503
+ constructor() { }
1504
+ ngOnChanges(changes) { }
1505
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: DashboardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1506
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", 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\" style=\"cursor: pointer;\" 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\" style=\"cursor: pointer;\" 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: \"EEE dd MMM yyyy\":\"\":language}} </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\" style=\"cursor: pointer;\">\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: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "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", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "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$1.DatePipe, name: "date" }] });
1507
+ }
1508
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: DashboardComponent, decorators: [{
1509
+ type: Component,
1510
+ 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\" style=\"cursor: pointer;\" 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\" style=\"cursor: pointer;\" 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: \"EEE dd MMM yyyy\":\"\":language}} </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\" style=\"cursor: pointer;\">\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"] }]
1511
+ }], ctorParameters: () => [], propDecorators: { name: [{
1512
+ type: Input
1513
+ }], email: [{
1514
+ type: Input
1515
+ }], number: [{
1516
+ type: Input
1517
+ }], systems: [{
1518
+ type: Input
1519
+ }], toBeScheduledMaintenanceList: [{
1520
+ type: Input
1521
+ }], alreadyScheduledMaintenanceList: [{
1522
+ type: Input
1523
+ }], translate: [{
1524
+ type: Input
1430
1525
  }] } });
1431
1526
 
1432
- class SharedModule {
1433
- }
1434
- SharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1435
- SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, declarations: [SystemListComponent,
1436
- ContactComponent,
1437
- ChooseAnotherDateComponent,
1438
- ConfirmDialogComponent,
1439
- ConfirmedDateInformationComponent,
1440
- ContactSupportComponent,
1441
- MaintenanceListComponent,
1442
- ShowLinksComponent,
1443
- DashboardComponent,
1444
- ConfirmDialogContactComponent], imports: [CommonModule,
1445
- SharedRoutingModule,
1446
- TableModule,
1447
- InputTextModule,
1448
- PipesModule,
1449
- ToastModule,
1450
- InputTextareaModule,
1451
- MultiSelectModule,
1452
- FormsModule,
1453
- ReactiveFormsModule,
1454
- ProgressSpinnerModule,
1455
- RadioButtonModule,
1456
- CheckboxModule,
1457
- SelectButtonModule,
1458
- TooltipModule,
1459
- OverlayPanelModule,
1460
- CalendarModule,
1461
- SliderModule,
1462
- DialogModule,
1463
- ConfirmPopupModule,
1464
- ConfirmDialogModule,
1465
- ContextMenuModule,
1466
- DropdownModule,
1467
- ButtonModule,
1468
- ToolbarModule], exports: [SystemListComponent, ContactComponent, MaintenanceListComponent, DashboardComponent] });
1469
- SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, imports: [CommonModule,
1470
- SharedRoutingModule,
1471
- TableModule,
1472
- InputTextModule,
1473
- PipesModule,
1474
- ToastModule,
1475
- InputTextareaModule,
1476
- MultiSelectModule,
1477
- FormsModule,
1478
- ReactiveFormsModule,
1479
- ProgressSpinnerModule,
1480
- RadioButtonModule,
1481
- CheckboxModule,
1482
- SelectButtonModule,
1483
- TooltipModule,
1484
- OverlayPanelModule,
1485
- CalendarModule,
1486
- SliderModule,
1487
- DialogModule,
1488
- ConfirmPopupModule,
1489
- ConfirmDialogModule,
1490
- ContextMenuModule,
1491
- DropdownModule,
1492
- ButtonModule,
1493
- ToolbarModule] });
1494
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: SharedModule, decorators: [{
1495
- type: NgModule,
1496
- args: [{
1497
- declarations: [
1498
- SystemListComponent,
1499
- ContactComponent,
1500
- ChooseAnotherDateComponent,
1501
- ConfirmDialogComponent,
1502
- ConfirmedDateInformationComponent,
1503
- ContactSupportComponent,
1504
- MaintenanceListComponent,
1505
- ShowLinksComponent,
1506
- DashboardComponent,
1507
- ConfirmDialogContactComponent
1508
- ],
1509
- imports: [
1510
- CommonModule,
1511
- SharedRoutingModule,
1512
- TableModule,
1513
- InputTextModule,
1514
- PipesModule,
1515
- ToastModule,
1516
- InputTextareaModule,
1517
- MultiSelectModule,
1518
- FormsModule,
1519
- ReactiveFormsModule,
1520
- ProgressSpinnerModule,
1521
- RadioButtonModule,
1522
- CheckboxModule,
1523
- SelectButtonModule,
1524
- TooltipModule,
1525
- OverlayPanelModule,
1526
- CalendarModule,
1527
- SliderModule,
1528
- DialogModule,
1529
- ConfirmPopupModule,
1530
- ConfirmDialogModule,
1531
- ContextMenuModule,
1532
- DropdownModule,
1533
- ButtonModule,
1534
- ToolbarModule,
1535
- ],
1536
- exports: [SystemListComponent, ContactComponent, MaintenanceListComponent, DashboardComponent]
1537
- }]
1527
+ class SharedModule {
1528
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1529
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.2", ngImport: i0, type: SharedModule, declarations: [SystemListComponent,
1530
+ ContactComponent,
1531
+ ChooseAnotherDateComponent,
1532
+ ConfirmDialogComponent,
1533
+ ConfirmedDateInformationComponent,
1534
+ ContactSupportComponent,
1535
+ MaintenanceListComponent,
1536
+ ShowLinksComponent,
1537
+ DashboardComponent,
1538
+ ConfirmDialogContactComponent], imports: [CommonModule,
1539
+ SharedRoutingModule,
1540
+ TableModule,
1541
+ InputTextModule,
1542
+ PipesModule,
1543
+ ToastModule,
1544
+ InputTextareaModule,
1545
+ MultiSelectModule,
1546
+ FormsModule,
1547
+ ReactiveFormsModule,
1548
+ ProgressSpinnerModule,
1549
+ RadioButtonModule,
1550
+ CheckboxModule,
1551
+ SelectButtonModule,
1552
+ TooltipModule,
1553
+ OverlayPanelModule,
1554
+ CalendarModule,
1555
+ SliderModule,
1556
+ DialogModule,
1557
+ ConfirmPopupModule,
1558
+ ConfirmDialogModule,
1559
+ ContextMenuModule,
1560
+ DropdownModule,
1561
+ ButtonModule,
1562
+ ToolbarModule], exports: [SystemListComponent, ContactComponent, MaintenanceListComponent, DashboardComponent] });
1563
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SharedModule, imports: [CommonModule,
1564
+ SharedRoutingModule,
1565
+ TableModule,
1566
+ InputTextModule,
1567
+ PipesModule,
1568
+ ToastModule,
1569
+ InputTextareaModule,
1570
+ MultiSelectModule,
1571
+ FormsModule,
1572
+ ReactiveFormsModule,
1573
+ ProgressSpinnerModule,
1574
+ RadioButtonModule,
1575
+ CheckboxModule,
1576
+ SelectButtonModule,
1577
+ TooltipModule,
1578
+ OverlayPanelModule,
1579
+ CalendarModule,
1580
+ SliderModule,
1581
+ DialogModule,
1582
+ ConfirmPopupModule,
1583
+ ConfirmDialogModule,
1584
+ ContextMenuModule,
1585
+ DropdownModule,
1586
+ ButtonModule,
1587
+ ToolbarModule] });
1588
+ }
1589
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SharedModule, decorators: [{
1590
+ type: NgModule,
1591
+ args: [{
1592
+ declarations: [
1593
+ SystemListComponent,
1594
+ ContactComponent,
1595
+ ChooseAnotherDateComponent,
1596
+ ConfirmDialogComponent,
1597
+ ConfirmedDateInformationComponent,
1598
+ ContactSupportComponent,
1599
+ MaintenanceListComponent,
1600
+ ShowLinksComponent,
1601
+ DashboardComponent,
1602
+ ConfirmDialogContactComponent
1603
+ ],
1604
+ imports: [
1605
+ CommonModule,
1606
+ SharedRoutingModule,
1607
+ TableModule,
1608
+ InputTextModule,
1609
+ PipesModule,
1610
+ ToastModule,
1611
+ InputTextareaModule,
1612
+ MultiSelectModule,
1613
+ FormsModule,
1614
+ ReactiveFormsModule,
1615
+ ProgressSpinnerModule,
1616
+ RadioButtonModule,
1617
+ CheckboxModule,
1618
+ SelectButtonModule,
1619
+ TooltipModule,
1620
+ OverlayPanelModule,
1621
+ CalendarModule,
1622
+ SliderModule,
1623
+ DialogModule,
1624
+ ConfirmPopupModule,
1625
+ ConfirmDialogModule,
1626
+ ContextMenuModule,
1627
+ DropdownModule,
1628
+ ButtonModule,
1629
+ ToolbarModule,
1630
+ ],
1631
+ exports: [SystemListComponent, ContactComponent, MaintenanceListComponent, DashboardComponent]
1632
+ }]
1538
1633
  }] });
1539
1634
 
1540
- class Account {
1635
+ class Account {
1636
+ id;
1637
+ title;
1638
+ firstName;
1639
+ lastName;
1640
+ email;
1641
+ language;
1642
+ isVerified;
1643
+ role;
1644
+ accessToken;
1645
+ refreshToken;
1646
+ userName;
1647
+ geAccessToken;
1541
1648
  }
1542
1649
 
1543
- class AlternativeDate {
1650
+ class AlternativeDate {
1651
+ startDateTime;
1652
+ endDateTime;
1653
+ fseSSO;
1654
+ selected;
1544
1655
  }
1545
1656
 
1546
- var ApplicationName;
1547
- (function (ApplicationName) {
1548
- ApplicationName["ConsomerPortal"] = "ConsomerPortal";
1549
- ApplicationName["WarrantyPortal"] = "WarrantyPortal";
1550
- ApplicationName["GEPortal"] = "GEPortal";
1657
+ var ApplicationName;
1658
+ (function (ApplicationName) {
1659
+ ApplicationName["ConsomerPortal"] = "ConsomerPortal";
1660
+ ApplicationName["WarrantyPortal"] = "WarrantyPortal";
1661
+ ApplicationName["GEPortal"] = "GEPortal";
1551
1662
  })(ApplicationName || (ApplicationName = {}));
1552
1663
 
1553
- class MailRequest {
1664
+ class MailRequest {
1665
+ sr_Number;
1666
+ facility_name;
1667
+ city;
1668
+ call_Number;
1669
+ sheet;
1670
+ system;
1671
+ equipment;
1672
+ debrief_Date;
1673
+ call_state;
1674
+ engineer;
1675
+ diagnostic;
1676
+ action;
1677
+ verification;
1678
+ language;
1554
1679
  }
1555
1680
 
1556
- class CancelPMMailRequest extends MailRequest {
1681
+ class CancelPMMailRequest extends MailRequest {
1682
+ pm_Number;
1683
+ motive;
1557
1684
  }
1558
1685
 
1559
- class CustomObject {
1686
+ class CustomObject {
1687
+ customerWaiting;
1560
1688
  }
1561
1689
 
1562
- class DetailedPmJob {
1690
+ class DetailedPmJob {
1691
+ systemId;
1692
+ systemName;
1693
+ status;
1694
+ siteName;
1695
+ siteCity;
1696
+ language;
1697
+ pmJob;
1698
+ comment;
1699
+ name;
1700
+ email;
1701
+ phone;
1702
+ extentionOrComment;
1703
+ reason;
1704
+ reasonContact;
1705
+ futureStatus;
1706
+ selectedDate;
1707
+ toUpdate;
1708
+ WorkorderNumberSelected;
1709
+ sitePostalCode;
1710
+ room;
1563
1711
  }
1564
1712
 
1565
- var EmailStatus;
1566
- (function (EmailStatus) {
1567
- EmailStatus[EmailStatus["Verifying"] = 0] = "Verifying";
1568
- EmailStatus[EmailStatus["Failed"] = 1] = "Failed";
1713
+ var EmailStatus;
1714
+ (function (EmailStatus) {
1715
+ EmailStatus[EmailStatus["Verifying"] = 0] = "Verifying";
1716
+ EmailStatus[EmailStatus["Failed"] = 1] = "Failed";
1569
1717
  })(EmailStatus || (EmailStatus = {}));
1570
1718
 
1571
- var Field;
1572
- (function (Field) {
1573
- Field["Textbox"] = "textbox";
1574
- Field["File"] = "file";
1575
- Field["Dropdown"] = "dropdown";
1576
- Field["Radio"] = "radio";
1577
- Field["Checkbox"] = "checkbox";
1719
+ var Field;
1720
+ (function (Field) {
1721
+ Field["Textbox"] = "textbox";
1722
+ Field["File"] = "file";
1723
+ Field["Dropdown"] = "dropdown";
1724
+ Field["Radio"] = "radio";
1725
+ Field["Checkbox"] = "checkbox";
1578
1726
  })(Field || (Field = {}));
1579
1727
 
1580
- var Language;
1581
- (function (Language) {
1582
- Language["FR"] = "fr-FR";
1583
- Language["EN"] = "en-US";
1728
+ var Language;
1729
+ (function (Language) {
1730
+ Language["FR"] = "fr-FR";
1731
+ Language["EN"] = "en-US";
1584
1732
  })(Language || (Language = {}));
1585
1733
 
1586
- class PMGroupedJob {
1734
+ class PMGroupedJob {
1735
+ workorderId;
1587
1736
  }
1588
1737
 
1589
- class PmJob {
1738
+ class PmJob {
1739
+ caseId;
1740
+ caseNumber;
1741
+ workorderId;
1742
+ workorderNumber;
1743
+ workorderStatus;
1744
+ eventId;
1745
+ eventStatus;
1746
+ startDateTime;
1747
+ endDateTime;
1748
+ caseType;
1749
+ caseCategory;
1750
+ levelOfService;
1751
+ fseSSO;
1752
+ customerAccepted;
1753
+ alternativeDates;
1754
+ groupList;
1755
+ customObject;
1756
+ caseDescription;
1757
+ fseName;
1758
+ caseStatus;
1590
1759
  }
1591
1760
 
1592
- class PmJobRequest {
1761
+ class PmJobRequest {
1762
+ countrymodule;
1763
+ pmJob;
1593
1764
  }
1594
1765
 
1595
- class ReportDateMailRequest extends MailRequest {
1766
+ class ReportDateMailRequest extends MailRequest {
1767
+ pm_Number;
1768
+ date;
1596
1769
  }
1597
1770
 
1598
- var Role;
1599
- (function (Role) {
1600
- Role["User"] = "BasicUser";
1601
- Role["Admin"] = "Admin";
1602
- Role["RGPDUser"] = "RGPDUser";
1771
+ var Role;
1772
+ (function (Role) {
1773
+ Role["User"] = "BasicUser";
1774
+ Role["Admin"] = "Admin";
1775
+ Role["RGPDUser"] = "RGPDUser";
1603
1776
  })(Role || (Role = {}));
1604
1777
 
1605
- class Service {
1778
+ class Service {
1779
+ id;
1780
+ label;
1781
+ name;
1782
+ routerLink;
1783
+ description;
1784
+ display;
1606
1785
  }
1607
1786
 
1608
- var ServiceName;
1609
- (function (ServiceName) {
1610
- ServiceName["Repairer"] = "repairer";
1611
- ServiceName["WarrantyContract"] = "warrantyContract";
1612
- ServiceName["Devices"] = "devices";
1613
- ServiceName["TrackRepairs"] = "trackRepairs";
1614
- ServiceName["ExtendedWarranty"] = "extendedWarranty";
1615
- ServiceName["ScheduleAppointment"] = "scheduleAppointment";
1616
- ServiceName["Documentation"] = "documentation";
1617
- ServiceName["RepairabilityIndex"] = "repairabilityIndex";
1787
+ var ServiceName;
1788
+ (function (ServiceName) {
1789
+ ServiceName["Repairer"] = "repairer";
1790
+ ServiceName["WarrantyContract"] = "warrantyContract";
1791
+ ServiceName["Devices"] = "devices";
1792
+ ServiceName["TrackRepairs"] = "trackRepairs";
1793
+ ServiceName["ExtendedWarranty"] = "extendedWarranty";
1794
+ ServiceName["ScheduleAppointment"] = "scheduleAppointment";
1795
+ ServiceName["Documentation"] = "documentation";
1796
+ ServiceName["RepairabilityIndex"] = "repairabilityIndex";
1618
1797
  })(ServiceName || (ServiceName = {}));
1619
1798
 
1620
- class SocialLoginRequest {
1799
+ class SocialLoginRequest {
1800
+ acessToken;
1801
+ userName;
1802
+ applicationName;
1803
+ socialMediaName;
1621
1804
  }
1622
1805
 
1623
- var SocialMadia;
1624
- (function (SocialMadia) {
1625
- SocialMadia["Gmail"] = "Gmail";
1806
+ var SocialMadia;
1807
+ (function (SocialMadia) {
1808
+ SocialMadia["Gmail"] = "Gmail";
1626
1809
  })(SocialMadia || (SocialMadia = {}));
1627
1810
 
1628
- class System {
1811
+ class System {
1812
+ id;
1813
+ systemId;
1814
+ name;
1815
+ modality;
1816
+ installDate;
1817
+ siteName;
1818
+ siteCity;
1819
+ pmJobs;
1820
+ description;
1821
+ sitePostalCode;
1822
+ room;
1629
1823
  }
1630
1824
 
1631
- var TokenStatus;
1632
- (function (TokenStatus) {
1633
- TokenStatus[TokenStatus["Validating"] = 0] = "Validating";
1634
- TokenStatus[TokenStatus["Valid"] = 1] = "Valid";
1635
- TokenStatus[TokenStatus["Invalid"] = 2] = "Invalid";
1825
+ var TokenStatus;
1826
+ (function (TokenStatus) {
1827
+ TokenStatus[TokenStatus["Validating"] = 0] = "Validating";
1828
+ TokenStatus[TokenStatus["Valid"] = 1] = "Valid";
1829
+ TokenStatus[TokenStatus["Invalid"] = 2] = "Invalid";
1636
1830
  })(TokenStatus || (TokenStatus = {}));
1637
1831
 
1638
- class Warranty {
1832
+ class Warranty {
1833
+ manufacturerId;
1834
+ contractId;
1835
+ contractProductId;
1836
+ contractProductParentId;
1837
+ contractCode;
1838
+ saleDate;
1839
+ brand;
1840
+ family;
1841
+ commercialReference;
1842
+ technicalReference;
1843
+ productDescription;
1844
+ startDate;
1845
+ endDate;
1846
+ PdfLink;
1847
+ consId;
1639
1848
  }
1640
1849
 
1641
- /*
1642
- * Public API Surface of awf-test-lib
1850
+ /*
1851
+ * Public API Surface of awf-test-lib
1643
1852
  */
1853
+ /*********** shared module***********/
1644
1854
 
1645
- /**
1646
- * Generated bundle index. Do not edit.
1855
+ /**
1856
+ * Generated bundle index. Do not edit.
1647
1857
  */
1648
1858
 
1649
1859
  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 };