awf-test-lib 17.2.0 → 18.0.1

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