ngx-st-sap-installed-instruments 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/README.md +24 -0
  2. package/esm2020/lib/base-interfaces.mjs +2 -0
  3. package/esm2020/lib/components/sap-installed-instrument-details/activities-list-view/activities-list-view.component.mjs +54 -0
  4. package/esm2020/lib/components/sap-installed-instrument-details/activity-details-view/activity-details-view.component.mjs +41 -0
  5. package/esm2020/lib/components/sap-installed-instrument-details/call-details-view/call-details-view.component.mjs +51 -0
  6. package/esm2020/lib/components/sap-installed-instrument-details/calls-list-view/calls-list-view.component.mjs +56 -0
  7. package/esm2020/lib/components/sap-installed-instrument-details/data-details-view/data-details-view.component.mjs +20 -0
  8. package/esm2020/lib/components/sap-installed-instrument-details/sap-installed-instrument-details.component.mjs +56 -0
  9. package/esm2020/lib/components/sap-installed-instrument-details/service-contract-details-view/service-contract-details-view.component.mjs +19 -0
  10. package/esm2020/lib/components/sap-installed-instrument-details/service-contracts-list-view/service-contracts-list-view.component.mjs +53 -0
  11. package/esm2020/lib/components/sap-installed-instrument-details/service-contracts-modal-details-view/service-contracts-modal-details-view.component.mjs +28 -0
  12. package/esm2020/lib/components/sap-installed-instrument-list/sap-installed-instrument-list-search/sap-installed-instrument-list-search.component.mjs +134 -0
  13. package/esm2020/lib/components/sap-installed-instrument-list/sap-installed-instrument-list-table/sap-installed-instrument-list-table.component.mjs +105 -0
  14. package/esm2020/lib/components/sap-installed-instrument-list/sap-installed-instrument-list.component.mjs +79 -0
  15. package/esm2020/lib/models/installed-instrument-form.model.mjs +2 -0
  16. package/esm2020/lib/models/installed-instrument-sort-by-column.enum.mjs +15 -0
  17. package/esm2020/lib/models/installed-instrument-sort-order.enum.mjs +6 -0
  18. package/esm2020/lib/models/installed-instrument-table-columns.model.mjs +15 -0
  19. package/esm2020/lib/models/sap-activity.model.mjs +2 -0
  20. package/esm2020/lib/models/sap-attachment.model.mjs +2 -0
  21. package/esm2020/lib/models/sap-call.model.mjs +2 -0
  22. package/esm2020/lib/models/sap-contract.model.mjs +2 -0
  23. package/esm2020/lib/models/sap-country.model.mjs +2 -0
  24. package/esm2020/lib/models/sap-installed-instrument-list.model.mjs +2 -0
  25. package/esm2020/lib/models/sap-installed-instrument-search.model.mjs +2 -0
  26. package/esm2020/lib/models/sap-installed-instrument.model.mjs +2 -0
  27. package/esm2020/lib/models/sap-state.model.mjs +2 -0
  28. package/esm2020/lib/models/sap-territory.model.mjs +2 -0
  29. package/esm2020/lib/models/view-sap-installed-instrument-list.model.mjs +2 -0
  30. package/esm2020/lib/sap-installed-instruments-routing.module.mjs +7 -0
  31. package/esm2020/lib/services/sap-installed-instruments.service.mjs +108 -0
  32. package/esm2020/lib/st-sap-installed-instruments.module.mjs +180 -0
  33. package/esm2020/ngx-st-sap-installed-instruments.mjs +5 -0
  34. package/esm2020/public-api.mjs +34 -0
  35. package/fesm2015/ngx-st-sap-installed-instruments.mjs +920 -0
  36. package/fesm2015/ngx-st-sap-installed-instruments.mjs.map +1 -0
  37. package/fesm2020/ngx-st-sap-installed-instruments.mjs +921 -0
  38. package/fesm2020/ngx-st-sap-installed-instruments.mjs.map +1 -0
  39. package/index.d.ts +5 -0
  40. package/lib/base-interfaces.d.ts +9 -0
  41. package/lib/components/sap-installed-instrument-details/activities-list-view/activities-list-view.component.d.ts +19 -0
  42. package/lib/components/sap-installed-instrument-details/activity-details-view/activity-details-view.component.d.ts +14 -0
  43. package/lib/components/sap-installed-instrument-details/call-details-view/call-details-view.component.d.ts +25 -0
  44. package/lib/components/sap-installed-instrument-details/calls-list-view/calls-list-view.component.d.ts +21 -0
  45. package/lib/components/sap-installed-instrument-details/data-details-view/data-details-view.component.d.ts +10 -0
  46. package/lib/components/sap-installed-instrument-details/sap-installed-instrument-details.component.d.ts +30 -0
  47. package/lib/components/sap-installed-instrument-details/service-contract-details-view/service-contract-details-view.component.d.ts +10 -0
  48. package/lib/components/sap-installed-instrument-details/service-contracts-list-view/service-contracts-list-view.component.d.ts +19 -0
  49. package/lib/components/sap-installed-instrument-details/service-contracts-modal-details-view/service-contracts-modal-details-view.component.d.ts +17 -0
  50. package/lib/components/sap-installed-instrument-list/sap-installed-instrument-list-search/sap-installed-instrument-list-search.component.d.ts +59 -0
  51. package/lib/components/sap-installed-instrument-list/sap-installed-instrument-list-table/sap-installed-instrument-list-table.component.d.ts +29 -0
  52. package/lib/components/sap-installed-instrument-list/sap-installed-instrument-list.component.d.ts +25 -0
  53. package/lib/models/installed-instrument-form.model.d.ts +19 -0
  54. package/lib/models/installed-instrument-sort-by-column.enum.d.ts +13 -0
  55. package/lib/models/installed-instrument-sort-order.enum.d.ts +4 -0
  56. package/lib/models/installed-instrument-table-columns.model.d.ts +14 -0
  57. package/lib/models/sap-activity.model.d.ts +23 -0
  58. package/lib/models/sap-attachment.model.d.ts +7 -0
  59. package/lib/models/sap-call.model.d.ts +35 -0
  60. package/lib/models/sap-contract.model.d.ts +20 -0
  61. package/lib/models/sap-country.model.d.ts +4 -0
  62. package/lib/models/sap-installed-instrument-list.model.d.ts +23 -0
  63. package/lib/models/sap-installed-instrument-search.model.d.ts +23 -0
  64. package/lib/models/sap-installed-instrument.model.d.ts +54 -0
  65. package/lib/models/sap-state.model.d.ts +5 -0
  66. package/lib/models/sap-territory.model.d.ts +4 -0
  67. package/lib/models/view-sap-installed-instrument-list.model.d.ts +4 -0
  68. package/lib/sap-installed-instruments-routing.module.d.ts +2 -0
  69. package/lib/services/sap-installed-instruments.service.d.ts +30 -0
  70. package/lib/st-sap-installed-instruments.module.d.ts +47 -0
  71. package/package.json +35 -0
  72. package/public-api.d.ts +28 -0
@@ -0,0 +1,920 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable, Inject, EventEmitter, Component, ChangeDetectionStrategy, ViewChild, Input, Output, HostBinding, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/common/http';
4
+ import { HttpParams, HTTP_INTERCEPTORS } from '@angular/common/http';
5
+ import { map, tap } from 'rxjs/operators';
6
+ import moment from 'moment';
7
+ import { StSubscribeDestroyComponent } from 'ngx-st-base-functions';
8
+ import * as i3$1 from '@angular/material/paginator';
9
+ import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator';
10
+ import * as i2$1 from '@angular/material/table';
11
+ import { MatTableDataSource, MatTableModule } from '@angular/material/table';
12
+ import * as i5 from '@angular/material/sort';
13
+ import { MatSort, MatSortModule } from '@angular/material/sort';
14
+ import * as i2 from '@angular/router';
15
+ import { RouterModule } from '@angular/router';
16
+ import * as i3 from '@angular/common';
17
+ import { CommonModule } from '@angular/common';
18
+ import * as i5$1 from '@ngx-translate/core';
19
+ import { TranslateModule } from '@ngx-translate/core';
20
+ import * as i7 from 'ngx-st-date-format';
21
+ import { StDateFormatModule } from 'ngx-st-date-format';
22
+ import { of } from 'rxjs';
23
+ import * as i3$2 from '@angular/forms';
24
+ import { ReactiveFormsModule } from '@angular/forms';
25
+ import * as i2$2 from '@angular/material/button';
26
+ import { MatButtonModule } from '@angular/material/button';
27
+ import * as i6 from '@angular/material/form-field';
28
+ import { MatFormFieldModule } from '@angular/material/form-field';
29
+ import * as i7$1 from '@angular/material/input';
30
+ import { MatInputModule } from '@angular/material/input';
31
+ import * as i8 from '@angular/material/select';
32
+ import { MatSelectModule } from '@angular/material/select';
33
+ import * as i9 from '@angular/material/core';
34
+ import { MatRippleModule, MatNativeDateModule } from '@angular/material/core';
35
+ import * as i10 from '@angular/material/tooltip';
36
+ import { MatTooltipModule } from '@angular/material/tooltip';
37
+ import * as i11 from '@angular/material/icon';
38
+ import { MatIconModule } from '@angular/material/icon';
39
+ import * as i12 from '@angular/material/datepicker';
40
+ import { MatDatepickerModule } from '@angular/material/datepicker';
41
+ import * as i13 from 'ngx-st-multiselect-autocomplete';
42
+ import { NgxStMultiselectAutocompleteModule } from 'ngx-st-multiselect-autocomplete';
43
+ import * as i14 from 'ngx-st-search-selects';
44
+ import { StSearchSelectsModule } from 'ngx-st-search-selects';
45
+ import { trigger, state, style, transition, animate } from '@angular/animations';
46
+ import * as i1$1 from '@angular/material/dialog';
47
+ import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
48
+ import * as i4 from '@angular/material/tabs';
49
+ import { MatTabsModule } from '@angular/material/tabs';
50
+ import { MatAutocompleteModule } from '@angular/material/autocomplete';
51
+ import { MatMenuModule } from '@angular/material/menu';
52
+ import { MatChipsModule } from '@angular/material/chips';
53
+ import { MatListModule } from '@angular/material/list';
54
+ import { MatSnackBarModule } from '@angular/material/snack-bar';
55
+ import { MatCheckboxModule } from '@angular/material/checkbox';
56
+
57
+ var InstalledInstrumentSortByColumnEnum;
58
+ (function (InstalledInstrumentSortByColumnEnum) {
59
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["ItemCode"] = 0] = "ItemCode";
60
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["ItemName"] = 1] = "ItemName";
61
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["SerialNumber"] = 2] = "SerialNumber";
62
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["BpId"] = 3] = "BpId";
63
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["BpName"] = 4] = "BpName";
64
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["EndCustomer"] = 5] = "EndCustomer";
65
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["City"] = 6] = "City";
66
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["Territory"] = 7] = "Territory";
67
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["Country"] = 8] = "Country";
68
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["Status"] = 9] = "Status";
69
+ InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["InstallationDate"] = 10] = "InstallationDate";
70
+ })(InstalledInstrumentSortByColumnEnum || (InstalledInstrumentSortByColumnEnum = {}));
71
+
72
+ var InstalledInstrumentSortOrderEnum;
73
+ (function (InstalledInstrumentSortOrderEnum) {
74
+ InstalledInstrumentSortOrderEnum[InstalledInstrumentSortOrderEnum["Asc"] = 0] = "Asc";
75
+ InstalledInstrumentSortOrderEnum[InstalledInstrumentSortOrderEnum["Desc"] = 1] = "Desc";
76
+ })(InstalledInstrumentSortOrderEnum || (InstalledInstrumentSortOrderEnum = {}));
77
+
78
+ var InstalledInstrumentTableColumnsMapperEnum;
79
+ (function (InstalledInstrumentTableColumnsMapperEnum) {
80
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["instrumentNo"] = 0] = "instrumentNo";
81
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["instrumentDescription"] = 1] = "instrumentDescription";
82
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["serialNumber"] = 2] = "serialNumber";
83
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["customerNo"] = 3] = "customerNo";
84
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["businessPartnerName"] = 4] = "businessPartnerName";
85
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["endUserName"] = 5] = "endUserName";
86
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["city"] = 6] = "city";
87
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["territoryId"] = 7] = "territoryId";
88
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["country"] = 8] = "country";
89
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["status"] = 9] = "status";
90
+ InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["installationDate"] = 10] = "installationDate";
91
+ })(InstalledInstrumentTableColumnsMapperEnum || (InstalledInstrumentTableColumnsMapperEnum = {}));
92
+
93
+ class SapInstalledInstrumentsService {
94
+ constructor(config, http) {
95
+ this.config = config;
96
+ this.http = http;
97
+ }
98
+ getInstalledInstrumentList(searchForm, sort) {
99
+ const search = {
100
+ applicationList: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.application) || [],
101
+ instrumentNo: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.instrumentNo) || '',
102
+ instrumentDescription: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.instrumentDesc) || '',
103
+ serialNumber: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.serialNumber) || '',
104
+ customerNo: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.customerNo) || '',
105
+ businessPartnerName: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.bpName) || '',
106
+ statusId: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.status) || '',
107
+ technicianLastName: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.technicianLastName) || '',
108
+ territoryId: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.territory) || null,
109
+ endUserName: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.endUserName) || '',
110
+ endUserCode: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.endUserCode) || '',
111
+ city: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.city) || '',
112
+ stateId: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.state) || '',
113
+ countryId: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.country) || '',
114
+ county: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.county) || '',
115
+ installationDateFrom: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.installationDateFrom)
116
+ ? moment(searchForm.installationDateFrom).format('YYYY-MM-DD')
117
+ : null,
118
+ installationDateTo: (searchForm === null || searchForm === void 0 ? void 0 : searchForm.installationDateTo)
119
+ ? moment(searchForm.installationDateTo).format('YYYY-MM-DD')
120
+ : null,
121
+ };
122
+ if (sort && sort.direction !== '') {
123
+ search.sortOrder =
124
+ sort.direction === 'asc'
125
+ ? InstalledInstrumentSortOrderEnum.Asc
126
+ : InstalledInstrumentSortOrderEnum.Desc;
127
+ search.sortByColumn = InstalledInstrumentTableColumnsMapperEnum[sort.active];
128
+ }
129
+ return this.http
130
+ .post(this.config.api_base_uri + '/admin/sap-master-data/installedInstrument/list', search)
131
+ .pipe(map((res) => {
132
+ return res.map(installInstrument => (Object.assign(Object.assign({}, installInstrument), { technicianName: installInstrument.technicianFirstName
133
+ ? installInstrument.technicianFirstName +
134
+ ' ' +
135
+ installInstrument.technicianLastName
136
+ : '' })));
137
+ }));
138
+ }
139
+ getInstalledInstrument(eqCard) {
140
+ const params = new HttpParams().set('eqCard', eqCard);
141
+ return this.http.get(this.config.api_base_uri + '/admin/sap-master-data/installedInstrument', { params });
142
+ }
143
+ getTerritory(refresh = false) {
144
+ const params = new HttpParams().set('refresh', refresh);
145
+ return this.http.get(this.config.api_base_uri +
146
+ '/admin/sap-master-data/installedInstrument/territory', { params });
147
+ }
148
+ getState(country, refresh = false) {
149
+ const params = new HttpParams()
150
+ .set('refresh', refresh)
151
+ .set('country', country);
152
+ return this.http.get(this.config.api_base_uri +
153
+ '/admin/sap-master-data/installedInstrument/state', { params });
154
+ }
155
+ getCountry(refresh = false) {
156
+ const params = new HttpParams().set('refresh', refresh);
157
+ return this.http.get(this.config.api_base_uri +
158
+ '/admin/sap-master-data/installedInstrument/country', { params });
159
+ }
160
+ getContracts(eqCard) {
161
+ const params = new HttpParams().set('eqCard', eqCard);
162
+ return this.http.get(this.config.api_base_uri +
163
+ '/admin/sap-master-data/installedInstrument/contract', { params });
164
+ }
165
+ getCalls(eqCard) {
166
+ const params = new HttpParams().set('eqCard', eqCard);
167
+ return this.http.get(this.config.api_base_uri +
168
+ '/admin/sap-master-data/installedInstrument/call', { params });
169
+ }
170
+ getActivities(callId) {
171
+ const params = new HttpParams().set('callId', callId);
172
+ return this.http.get(this.config.api_base_uri +
173
+ '/admin/sap-master-data/installedInstrument/activity', { params });
174
+ }
175
+ getApplicationSearch(search) {
176
+ return this.http.get(this.config.api_base_uri +
177
+ '/admin/sap-master-data/InstalledInstrument/application?application=' +
178
+ search);
179
+ }
180
+ }
181
+ SapInstalledInstrumentsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentsService, deps: [{ token: 'config' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
182
+ SapInstalledInstrumentsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentsService });
183
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentsService, decorators: [{
184
+ type: Injectable
185
+ }], ctorParameters: function () {
186
+ return [{ type: undefined, decorators: [{
187
+ type: Inject,
188
+ args: ['config']
189
+ }] }, { type: i1.HttpClient }];
190
+ } });
191
+
192
+ class SapInstalledInstrumentListTableComponent extends StSubscribeDestroyComponent {
193
+ constructor(router, activatedRoute) {
194
+ super();
195
+ this.router = router;
196
+ this.activatedRoute = activatedRoute;
197
+ this.sortChanged = new EventEmitter();
198
+ this.dataSource = new MatTableDataSource();
199
+ this.tableColumns = [
200
+ 'instrumentNo',
201
+ 'instrumentDescription',
202
+ 'serialNumber',
203
+ 'customerNo',
204
+ 'businessPartnerName',
205
+ 'endUserName',
206
+ 'city',
207
+ 'territoryId',
208
+ 'country',
209
+ 'installationDate',
210
+ 'status',
211
+ ];
212
+ }
213
+ set tableData(data) {
214
+ this.dataSource.data = data;
215
+ }
216
+ ngOnInit() {
217
+ this.setTableColumns();
218
+ // this.store
219
+ // .select(appQuery.getUser)
220
+ // .pipe(takeUntil(this.ngDestroyed$), filter(StBaseService.notNull))
221
+ // .subscribe(user => {
222
+ // if (!user.instrumentTerritoryFilter) {
223
+ // this.tableColumns = this.tableColumns.filter(
224
+ // column => column !== 'territoryId'
225
+ // );
226
+ // }
227
+ // });
228
+ }
229
+ ngAfterViewInit() {
230
+ this.dataSource.paginator = this.paginator;
231
+ this.dataSource.sort = this.sort;
232
+ this.sort.sortChange.subscribe(res => {
233
+ this.sortChanged.emit(res);
234
+ });
235
+ const queryParamsKeys = Object.keys(this.activatedRoute.snapshot.queryParams || {});
236
+ if (queryParamsKeys.length > 0 &&
237
+ this.activatedRoute.snapshot.queryParams['active'] &&
238
+ this.activatedRoute.snapshot.queryParams['direction']) {
239
+ this.sort.sort({
240
+ id: this.activatedRoute.snapshot.queryParams['active'],
241
+ start: this.activatedRoute.snapshot.queryParams['direction'],
242
+ disableClear: false,
243
+ });
244
+ }
245
+ }
246
+ rowClicked(row) {
247
+ this.router.navigate(['details', row.equipmentCardNo], {
248
+ relativeTo: this.activatedRoute,
249
+ });
250
+ }
251
+ setTableColumns() {
252
+ this.mapTableColumns = {
253
+ instrumentNo: 'sapAdminInstalledInstrument.instrumentNo',
254
+ instrumentDescription: 'sapAdminInstalledInstrument.instrumentDescription',
255
+ serialNumber: 'sapAdminInstalledInstrument.serialNumber',
256
+ customerNo: 'sapAdminInstalledInstrument.accountNo',
257
+ businessPartnerName: 'sapAdminInstalledInstrument.accountName',
258
+ endUserName: 'sapAdminInstalledInstrument.endCustomer',
259
+ city: 'global.city',
260
+ territoryId: 'global.territory',
261
+ country: 'global.country',
262
+ status: 'global.status',
263
+ installationDate: 'sapAdminInstalledInstrument.installationDate',
264
+ };
265
+ }
266
+ }
267
+ SapInstalledInstrumentListTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListTableComponent, deps: [{ token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
268
+ SapInstalledInstrumentListTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentListTableComponent, selector: "app-sap-installed-instrument-list-table", inputs: { tableData: "tableData" }, outputs: { sortChanged: "sortChanged" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, static: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true }], usesInheritance: true, ngImport: i0, template: "<table\r\n mat-table\r\n [dataSource]=\"dataSource\"\r\n style=\"width: 100%\"\r\n class=\"no-hover\"\r\n matSort\r\n>\r\n <ng-container [matColumnDef]=\"column\" *ngFor=\"let column of tableColumns\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header>\r\n {{ mapTableColumns[column] | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <ng-container *ngIf=\"column === 'installationDate'\">\r\n {{ element[column] | stDateFormatPipe }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column !== 'installationDate'\">\r\n {{ element[column] }}\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"tableColumns\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: tableColumns\"\r\n (click)=\"rowClicked(row)\"\r\n ></tr>\r\n</table>\r\n<mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n [showFirstLastButtons]=\"true\"\r\n></mat-paginator>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "directive", type: i5.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i5.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateFormatPipe, name: "stDateFormatPipe" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
269
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListTableComponent, decorators: [{
270
+ type: Component,
271
+ args: [{ selector: 'app-sap-installed-instrument-list-table', changeDetection: ChangeDetectionStrategy.OnPush, template: "<table\r\n mat-table\r\n [dataSource]=\"dataSource\"\r\n style=\"width: 100%\"\r\n class=\"no-hover\"\r\n matSort\r\n>\r\n <ng-container [matColumnDef]=\"column\" *ngFor=\"let column of tableColumns\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header>\r\n {{ mapTableColumns[column] | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <ng-container *ngIf=\"column === 'installationDate'\">\r\n {{ element[column] | stDateFormatPipe }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column !== 'installationDate'\">\r\n {{ element[column] }}\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"tableColumns\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: tableColumns\"\r\n (click)=\"rowClicked(row)\"\r\n ></tr>\r\n</table>\r\n<mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n [showFirstLastButtons]=\"true\"\r\n></mat-paginator>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\n"] }]
272
+ }], ctorParameters: function () { return [{ type: i2.Router }, { type: i2.ActivatedRoute }]; }, propDecorators: { paginator: [{
273
+ type: ViewChild,
274
+ args: [MatPaginator, { static: true }]
275
+ }], sort: [{
276
+ type: ViewChild,
277
+ args: [MatSort]
278
+ }], tableData: [{
279
+ type: Input
280
+ }], sortChanged: [{
281
+ type: Output
282
+ }] } });
283
+
284
+ class SapInstalledInstrumentListSearchComponent {
285
+ constructor(sapInstalledInstrumentService, router, activatedRoute, fb) {
286
+ this.sapInstalledInstrumentService = sapInstalledInstrumentService;
287
+ this.router = router;
288
+ this.activatedRoute = activatedRoute;
289
+ this.fb = fb;
290
+ this.filtersChanged = new EventEmitter();
291
+ this.showFilters = false;
292
+ this.searchForm = this.fb.group({
293
+ application: [[]],
294
+ serialNumber: '',
295
+ instrumentNo: '',
296
+ instrumentDesc: '',
297
+ customerNo: '',
298
+ bpName: '',
299
+ city: '',
300
+ county: '',
301
+ endUserName: '',
302
+ endUserCode: '',
303
+ territory: null,
304
+ technicianLastName: '',
305
+ country: '',
306
+ state: '',
307
+ status: '',
308
+ installationDateFrom: null,
309
+ installationDateTo: null
310
+ });
311
+ this.getFilteredOptions = (search) => {
312
+ return this.sapInstalledInstrumentService.getApplicationSearch(search);
313
+ };
314
+ }
315
+ ngOnInit() {
316
+ this.setSearchForm();
317
+ this.setAsyncFilters();
318
+ const queryParamsKeys = Object.keys(this.activatedRoute.snapshot.queryParams || {});
319
+ if (queryParamsKeys.length > 2) {
320
+ this.showFilters = true;
321
+ queryParamsKeys.forEach((queryParam) => {
322
+ const formControl = this.searchForm.get(queryParam);
323
+ if (formControl) {
324
+ if (queryParam === 'installationDateFrom' || queryParam === 'installationDateTo') {
325
+ formControl.setValue(this.activatedRoute.snapshot.queryParams[queryParam] ? new Date(this.activatedRoute.snapshot.queryParams[queryParam]) : null);
326
+ }
327
+ else {
328
+ formControl.setValue(this.activatedRoute.snapshot.queryParams[queryParam]);
329
+ }
330
+ }
331
+ });
332
+ }
333
+ }
334
+ clearAllFilters() {
335
+ this.searchForm.reset();
336
+ this.multiselectAutocomplete.clearSelectedData();
337
+ this.searchSubmitted();
338
+ }
339
+ refreshTerritories() {
340
+ this.searchForm.controls.territory.setValue(null);
341
+ this.territories$ = this.sapInstalledInstrumentService.getTerritory(true);
342
+ }
343
+ refreshCountries() {
344
+ this.searchForm.controls.country.setValue('');
345
+ this.countries$ = this.sapInstalledInstrumentService.getCountry(true);
346
+ }
347
+ refreshStates() {
348
+ this.searchForm.controls.state.setValue('');
349
+ this.states$ = this.sapInstalledInstrumentService.getState(this.searchForm.controls.country.value, true);
350
+ }
351
+ getCountryValue(country) {
352
+ return country.id;
353
+ }
354
+ getStateValue(state) {
355
+ return state.id;
356
+ }
357
+ getTerritoryValue(territory) {
358
+ return territory.id;
359
+ }
360
+ searchSubmitted() {
361
+ const formValues = this.searchForm.getRawValue();
362
+ this.filtersChanged.emit(formValues);
363
+ }
364
+ clearInputValue(formControlName) {
365
+ this.searchForm.get(formControlName).setValue('');
366
+ this.searchSubmitted();
367
+ }
368
+ applicationSelected(data) {
369
+ this.searchForm.controls.application.setValue(data);
370
+ }
371
+ setAsyncFilters() {
372
+ this.territories$ = this.sapInstalledInstrumentService.getTerritory(false);
373
+ this.countries$ = this.sapInstalledInstrumentService.getCountry(false);
374
+ this.states$ = of([]);
375
+ }
376
+ setSearchForm() {
377
+ this.searchForm.controls.country.valueChanges.subscribe((country) => {
378
+ this.searchForm.controls.state.setValue('');
379
+ if (country) {
380
+ this.states$ = this.sapInstalledInstrumentService.getState(country);
381
+ }
382
+ else {
383
+ this.states$ = of([]);
384
+ }
385
+ });
386
+ }
387
+ }
388
+ SapInstalledInstrumentListSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListSearchComponent, deps: [{ token: SapInstalledInstrumentsService }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i3$2.NonNullableFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
389
+ SapInstalledInstrumentListSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentListSearchComponent, selector: "app-sap-installed-instrument-list-search", outputs: { filtersChanged: "filtersChanged" }, viewQueries: [{ propertyName: "multiselectAutocomplete", first: true, predicate: ["multiselectAutocomplete"], descendants: true }], ngImport: i0, template: "<form\r\n class=\"search-filters\"\r\n [formGroup]=\"searchForm\"\r\n (ngSubmit)=\"searchSubmitted()\"\r\n>\r\n <div class=\"row align-items-center\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <ngx-st-multiselect-autocomplete\r\n #multiselectAutocomplete\r\n [label]=\"\r\n ('sapAdminInstalledInstrument.application' | translate) +\r\n ' (' +\r\n ('global.max' | translate) +\r\n ': 10)'\r\n \"\r\n [placeholder]=\"\r\n 'sapAdminInstalledInstrument.applicationPlaceholder' | translate\r\n \"\r\n [getFilteredOptions]=\"this.getFilteredOptions\"\r\n [initSelectedData]=\"searchForm.controls.application.value\"\r\n [maxLengthSelectedData]=\"10\"\r\n (selectedDataChanged)=\"applicationSelected($event)\"\r\n ></ngx-st-multiselect-autocomplete>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"bpName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.accountName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.bpName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('bpName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"technicianLastName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.technicianLastName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.technicianLastName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('technicianLastName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"serialNumber\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.serialNumber' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.serialNumber.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('serialNumber')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"instrumentNo\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.instrumentNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.instrumentNo.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('instrumentNo')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"instrumentDesc\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.instrumentDescription' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.instrumentDesc.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('instrumentDesc')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.instrumentStatus' | translate\r\n }}</mat-label>\r\n <mat-select formControlName=\"status\">\r\n <mat-option [value]=\"''\">{{ 'global.empty' | translate }}</mat-option>\r\n <mat-option [value]=\"'A'\">{{\r\n 'sapAdminInstalledInstrument.statusA' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'R'\">{{\r\n 'sapAdminInstalledInstrument.statusR' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'T'\">{{\r\n 'sapAdminInstalledInstrument.statusT' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'L'\">{{\r\n 'sapAdminInstalledInstrument.statusL' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'I'\">{{\r\n 'sapAdminInstalledInstrument.statusI' | translate\r\n }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"customerNo\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.accountNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.customerNo.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('customerNo')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"\r\n searchForm?.get('territory') &&\r\n ((territories$ | async) || []) as territories\r\n \"\r\n [options]=\"territories || []\"\r\n [selectLabel]=\"'global.territory' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.territory\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getTerritoryValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n (click)=\"refreshTerritories()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"city\"\r\n placeholder=\"{{ 'global.city' | translate }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.city.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('city')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"searchForm?.get('state') && ((states$ | async) || []) as states\"\r\n [options]=\"states || []\"\r\n [selectLabel]=\"'global.state' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.state\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getStateValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n [disabled]=\"!searchForm.controls.country.value\"\r\n (click)=\"refreshStates()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"county\"\r\n placeholder=\"{{ 'global.county' | translate }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.county.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('county')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"\r\n searchForm?.get('country') &&\r\n ((countries$ | async) || []) as countries\r\n \"\r\n [options]=\"countries || []\"\r\n [selectLabel]=\"'global.country' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.country\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getCountryValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n (click)=\"refreshCountries()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.installationDateFrom' | translate\r\n }}</mat-label>\r\n <input\r\n matInput\r\n [matDatepicker]=\"picker1\"\r\n formControlName=\"installationDateFrom\"\r\n />\r\n <mat-datepicker-toggle\r\n matSuffix\r\n [for]=\"picker1\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker1></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.installationDateTo' | translate\r\n }}</mat-label>\r\n <input\r\n matInput\r\n [matDatepicker]=\"picker2\"\r\n formControlName=\"installationDateTo\"\r\n />\r\n <mat-datepicker-toggle\r\n matSuffix\r\n [for]=\"picker2\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker2></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"endUserName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.endCustomerName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.endUserName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('endUserName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"endUserCode\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.endCustomerNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.endUserCode.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('endUserCode')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row justify-content-center\" style=\"margin-bottom: 10px\">\r\n <button\r\n mat-raised-button\r\n type=\"button\"\r\n (click)=\"clearAllFilters()\"\r\n *ngIf=\"showFilters\"\r\n style=\"margin-right: 10px\"\r\n >\r\n Clear All\r\n </button>\r\n <button\r\n mat-raised-button\r\n type=\"button\"\r\n color=\"accent\"\r\n (click)=\"showFilters = !showFilters\"\r\n >\r\n <ng-container *ngIf=\"showFilters\">\r\n {{ 'sapAdminInstalledInstrument.hideFilters' | translate }}\r\n </ng-container>\r\n <ng-container *ngIf=\"!showFilters\">\r\n {{ 'sapAdminInstalledInstrument.showFilters' | translate }}\r\n </ng-container>\r\n </button>\r\n <button\r\n *ngIf=\"showFilters\"\r\n mat-raised-button\r\n type=\"submit\"\r\n color=\"primary\"\r\n style=\"margin-left: 10px\"\r\n >\r\n Search\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i7$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i11.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i12.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i12.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i12.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i3$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$2.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: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i13.NgxStMultiselectAutocompleteComponent, selector: "ngx-st-multiselect-autocomplete", inputs: ["label", "placeholder", "getFilteredOptions", "initSelectedData", "maxLengthSelectedData"], outputs: ["selectedDataChanged"] }, { kind: "component", type: i14.SearchSelectComponent, selector: "ngx-st-search-select", inputs: ["selectLabel", "filterMethod", "optionLabelMethod", "optionLabelPropertyName", "valueMethod", "displaySelected", "model", "modelChange", "selectFormControl", "required", "selectBindType", "searchLabel", "options"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
390
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListSearchComponent, decorators: [{
391
+ type: Component,
392
+ args: [{ selector: 'app-sap-installed-instrument-list-search', changeDetection: ChangeDetectionStrategy.OnPush, template: "<form\r\n class=\"search-filters\"\r\n [formGroup]=\"searchForm\"\r\n (ngSubmit)=\"searchSubmitted()\"\r\n>\r\n <div class=\"row align-items-center\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <ngx-st-multiselect-autocomplete\r\n #multiselectAutocomplete\r\n [label]=\"\r\n ('sapAdminInstalledInstrument.application' | translate) +\r\n ' (' +\r\n ('global.max' | translate) +\r\n ': 10)'\r\n \"\r\n [placeholder]=\"\r\n 'sapAdminInstalledInstrument.applicationPlaceholder' | translate\r\n \"\r\n [getFilteredOptions]=\"this.getFilteredOptions\"\r\n [initSelectedData]=\"searchForm.controls.application.value\"\r\n [maxLengthSelectedData]=\"10\"\r\n (selectedDataChanged)=\"applicationSelected($event)\"\r\n ></ngx-st-multiselect-autocomplete>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"bpName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.accountName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.bpName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('bpName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"technicianLastName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.technicianLastName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.technicianLastName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('technicianLastName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"serialNumber\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.serialNumber' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.serialNumber.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('serialNumber')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"instrumentNo\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.instrumentNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.instrumentNo.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('instrumentNo')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"instrumentDesc\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.instrumentDescription' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.instrumentDesc.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('instrumentDesc')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.instrumentStatus' | translate\r\n }}</mat-label>\r\n <mat-select formControlName=\"status\">\r\n <mat-option [value]=\"''\">{{ 'global.empty' | translate }}</mat-option>\r\n <mat-option [value]=\"'A'\">{{\r\n 'sapAdminInstalledInstrument.statusA' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'R'\">{{\r\n 'sapAdminInstalledInstrument.statusR' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'T'\">{{\r\n 'sapAdminInstalledInstrument.statusT' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'L'\">{{\r\n 'sapAdminInstalledInstrument.statusL' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'I'\">{{\r\n 'sapAdminInstalledInstrument.statusI' | translate\r\n }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"customerNo\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.accountNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.customerNo.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('customerNo')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"\r\n searchForm?.get('territory') &&\r\n ((territories$ | async) || []) as territories\r\n \"\r\n [options]=\"territories || []\"\r\n [selectLabel]=\"'global.territory' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.territory\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getTerritoryValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n (click)=\"refreshTerritories()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"city\"\r\n placeholder=\"{{ 'global.city' | translate }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.city.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('city')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"searchForm?.get('state') && ((states$ | async) || []) as states\"\r\n [options]=\"states || []\"\r\n [selectLabel]=\"'global.state' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.state\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getStateValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n [disabled]=\"!searchForm.controls.country.value\"\r\n (click)=\"refreshStates()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"county\"\r\n placeholder=\"{{ 'global.county' | translate }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.county.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('county')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"\r\n searchForm?.get('country') &&\r\n ((countries$ | async) || []) as countries\r\n \"\r\n [options]=\"countries || []\"\r\n [selectLabel]=\"'global.country' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.country\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getCountryValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n (click)=\"refreshCountries()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.installationDateFrom' | translate\r\n }}</mat-label>\r\n <input\r\n matInput\r\n [matDatepicker]=\"picker1\"\r\n formControlName=\"installationDateFrom\"\r\n />\r\n <mat-datepicker-toggle\r\n matSuffix\r\n [for]=\"picker1\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker1></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.installationDateTo' | translate\r\n }}</mat-label>\r\n <input\r\n matInput\r\n [matDatepicker]=\"picker2\"\r\n formControlName=\"installationDateTo\"\r\n />\r\n <mat-datepicker-toggle\r\n matSuffix\r\n [for]=\"picker2\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker2></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"endUserName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.endCustomerName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.endUserName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('endUserName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"endUserCode\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.endCustomerNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.endUserCode.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('endUserCode')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row justify-content-center\" style=\"margin-bottom: 10px\">\r\n <button\r\n mat-raised-button\r\n type=\"button\"\r\n (click)=\"clearAllFilters()\"\r\n *ngIf=\"showFilters\"\r\n style=\"margin-right: 10px\"\r\n >\r\n Clear All\r\n </button>\r\n <button\r\n mat-raised-button\r\n type=\"button\"\r\n color=\"accent\"\r\n (click)=\"showFilters = !showFilters\"\r\n >\r\n <ng-container *ngIf=\"showFilters\">\r\n {{ 'sapAdminInstalledInstrument.hideFilters' | translate }}\r\n </ng-container>\r\n <ng-container *ngIf=\"!showFilters\">\r\n {{ 'sapAdminInstalledInstrument.showFilters' | translate }}\r\n </ng-container>\r\n </button>\r\n <button\r\n *ngIf=\"showFilters\"\r\n mat-raised-button\r\n type=\"submit\"\r\n color=\"primary\"\r\n style=\"margin-left: 10px\"\r\n >\r\n Search\r\n </button>\r\n </div>\r\n</form>\r\n" }]
393
+ }], ctorParameters: function () { return [{ type: SapInstalledInstrumentsService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3$2.NonNullableFormBuilder }]; }, propDecorators: { multiselectAutocomplete: [{
394
+ type: ViewChild,
395
+ args: ['multiselectAutocomplete']
396
+ }], filtersChanged: [{
397
+ type: Output
398
+ }] } });
399
+
400
+ class SapInstalledInstrumentListComponent extends StSubscribeDestroyComponent {
401
+ constructor(sapInstalledInstrumentService, changeDetector, router, activatedRoute) {
402
+ super();
403
+ this.sapInstalledInstrumentService = sapInstalledInstrumentService;
404
+ this.changeDetector = changeDetector;
405
+ this.router = router;
406
+ this.activatedRoute = activatedRoute;
407
+ this.class = 'display-flex-component';
408
+ this.installedInstruments = [];
409
+ this.lastSearchFilters = {};
410
+ this.lastSearchSorts = {};
411
+ }
412
+ ngOnInit() {
413
+ const queryParamsKeys = Object.keys(this.activatedRoute.snapshot.queryParams || {});
414
+ if (queryParamsKeys.length > 0) {
415
+ queryParamsKeys.forEach(queryParam => {
416
+ if (queryParam === 'active' || queryParam === 'direction') {
417
+ this.lastSearchSorts[queryParam] =
418
+ this.activatedRoute.snapshot.queryParams[queryParam];
419
+ }
420
+ else {
421
+ this.lastSearchFilters[queryParam] =
422
+ this.activatedRoute.snapshot.queryParams[queryParam];
423
+ this.lastSearchFilters['installationDateFrom'] = this.activatedRoute
424
+ .snapshot.queryParams['installationDateFrom']
425
+ ? new Date(this.activatedRoute.snapshot.queryParams['installationDateFrom'])
426
+ : null;
427
+ this.lastSearchFilters['installationDateTo'] = this.activatedRoute
428
+ .snapshot.queryParams['installationDateTo']
429
+ ? new Date(this.activatedRoute.snapshot.queryParams['installationDateTo'])
430
+ : null;
431
+ }
432
+ });
433
+ }
434
+ this.loadInstalledInstruments(this.lastSearchFilters, this.lastSearchSorts);
435
+ }
436
+ filtersChanged(event) {
437
+ this.loadInstalledInstruments(event, this.lastSearchSorts);
438
+ }
439
+ sortChanged(event) {
440
+ this.loadInstalledInstruments(this.lastSearchFilters, event);
441
+ }
442
+ loadInstalledInstruments(searchForm, sort) {
443
+ var _a, _b;
444
+ this.router.navigate([], {
445
+ queryParams: Object.assign(Object.assign(Object.assign({}, searchForm), { installationDateFrom: ((_a = searchForm.installationDateFrom) === null || _a === void 0 ? void 0 : _a.toISOString()) || '', installationDateTo: ((_b = searchForm.installationDateTo) === null || _b === void 0 ? void 0 : _b.toISOString()) || '' }), sort),
446
+ });
447
+ this.sapInstalledInstrumentService
448
+ .getInstalledInstrumentList(searchForm, sort)
449
+ .subscribe(res => {
450
+ this.lastSearchFilters = searchForm;
451
+ this.lastSearchSorts = sort;
452
+ this.installedInstruments = res;
453
+ this.changeDetector.markForCheck();
454
+ });
455
+ }
456
+ }
457
+ SapInstalledInstrumentListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListComponent, deps: [{ token: SapInstalledInstrumentsService }, { token: i0.ChangeDetectorRef }, { token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
458
+ SapInstalledInstrumentListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentListComponent, selector: "app-sap-installed-instrument-list", host: { properties: { "class": "this.class" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"container-fluid no-cut\">\r\n <div class=\"card\">\r\n <div class=\"card-header card-header-warning\">\r\n <h3 class=\"card-title\">\r\n {{\r\n 'sapAdminInstalledInstrument.titleInstalledInstrumentList' | translate\r\n }}\r\n </h3>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <app-sap-installed-instrument-list-search\r\n (filtersChanged)=\"filtersChanged($event)\"\r\n ></app-sap-installed-instrument-list-search>\r\n\r\n <app-sap-installed-instrument-list-table\r\n [tableData]=\"installedInstruments\"\r\n (sortChanged)=\"sortChanged($event)\"\r\n ></app-sap-installed-instrument-list-table>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: SapInstalledInstrumentListSearchComponent, selector: "app-sap-installed-instrument-list-search", outputs: ["filtersChanged"] }, { kind: "component", type: SapInstalledInstrumentListTableComponent, selector: "app-sap-installed-instrument-list-table", inputs: ["tableData"], outputs: ["sortChanged"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
459
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListComponent, decorators: [{
460
+ type: Component,
461
+ args: [{ selector: 'app-sap-installed-instrument-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"container-fluid no-cut\">\r\n <div class=\"card\">\r\n <div class=\"card-header card-header-warning\">\r\n <h3 class=\"card-title\">\r\n {{\r\n 'sapAdminInstalledInstrument.titleInstalledInstrumentList' | translate\r\n }}\r\n </h3>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <app-sap-installed-instrument-list-search\r\n (filtersChanged)=\"filtersChanged($event)\"\r\n ></app-sap-installed-instrument-list-search>\r\n\r\n <app-sap-installed-instrument-list-table\r\n [tableData]=\"installedInstruments\"\r\n (sortChanged)=\"sortChanged($event)\"\r\n ></app-sap-installed-instrument-list-table>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
462
+ }], ctorParameters: function () { return [{ type: SapInstalledInstrumentsService }, { type: i0.ChangeDetectorRef }, { type: i2.Router }, { type: i2.ActivatedRoute }]; }, propDecorators: { class: [{
463
+ type: HostBinding,
464
+ args: ['class']
465
+ }] } });
466
+
467
+ class ActivityDetailsViewComponent {
468
+ constructor(config) {
469
+ this.config = config;
470
+ this.baseDownloadLink = '';
471
+ }
472
+ ngOnInit() {
473
+ this.baseDownloadLink =
474
+ this.config.api_base_uri +
475
+ '/admin/sap-master-data/installedInstrument/activity-attachment?access_token=' +
476
+ this.config.accessToken;
477
+ }
478
+ updateLink() {
479
+ const company = localStorage.getItem('company-id')
480
+ ? `&company-id=${localStorage.getItem('company-id')}`
481
+ : '';
482
+ this.baseDownloadLink =
483
+ this.config.api_base_uri +
484
+ '/admin/sap-master-data/installedInstrument/activity-attachment?access_token=' +
485
+ this.config.accessToken +
486
+ company;
487
+ }
488
+ }
489
+ ActivityDetailsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActivityDetailsViewComponent, deps: [{ token: 'config' }], target: i0.ɵɵFactoryTarget.Component });
490
+ ActivityDetailsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ActivityDetailsViewComponent, selector: "app-activity-details-view", inputs: { activity: "activity" }, ngImport: i0, template: "<div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.activity' | translate}}</span>\r\n <p>{{activity.activity || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.type' | translate}}</span>\r\n <p>{{activity.type || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.subject' | translate}}</span>\r\n <p>{{activity.subject || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.remarks' | translate}}</span>\r\n <p>{{activity.remarks || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.startTime' | translate}}</span>\r\n <p>{{(activity.startTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.endTime' | translate}}</span>\r\n <p>{{(activity.endTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.duration' | translate}}</span>\r\n <p>{{activity.duration || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.content' | translate}}</span>\r\n <p>{{activity.content || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.coordinator' | translate}}</span>\r\n <p>{{activity.coordinatorName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.orderNumber' | translate}}</span>\r\n <p>{{activity.orderNumber || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.detailedSymptom' | translate}}</span>\r\n <p>{{activity.detailedSymptom || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.solution' | translate}}</span>\r\n <p>{{activity.solution || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.incompleteReason' | translate}}</span>\r\n <p>{{activity.incompleteReason || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\" *ngIf=\"activity.attachmentList.length > 0\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <p class=\"attachments-title\">{{'global.attachments' | translate}}:</p>\r\n <ul class=\"row\">\r\n <li class=\"row align-items-center\" *ngFor=\"let attachment of activity.attachmentList\">\r\n <p>{{attachment.fileName}}.{{attachment.fileExt}}</p>\r\n\r\n <a [href]=\"baseDownloadLink + '&id=' + attachment.id + '&line=' + attachment.line + '&preview=true'\" target=\"_blank\" (click)=\"updateLink()\">\r\n <button mat-icon-button>\r\n <mat-icon class=\"material-icons\">preview</mat-icon>\r\n </button>\r\n </a>\r\n\r\n <a [href]=\"baseDownloadLink + '&id=' + attachment.id + '&line=' + attachment.line + '&preview=false'\" target=\"_blank\" (click)=\"updateLink()\">\r\n <button mat-icon-button>\r\n <mat-icon class=\"material-icons\">cloud_download</mat-icon>\r\n </button>\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n", styles: [".group-details .attachments-title{font-weight:500;margin-bottom:0}.group-details ul{padding-left:0}.group-details ul li{padding:0 10px;border-right:2px solid #66bb6a}.group-details ul li:last-child{border-right:0}.group-details ul li p{margin-bottom:0}.group-details ul li button{width:32px;height:32px;line-height:32px;opacity:.8}.group-details ul li button:hover{opacity:1}.group-details ul li button mat-icon{font-size:22px;line-height:22px;width:22px;height:22px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i11.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateTimeFormatPipe, name: "stDateTimeFormatPipe" }] });
491
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActivityDetailsViewComponent, decorators: [{
492
+ type: Component,
493
+ args: [{ selector: 'app-activity-details-view', template: "<div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.activity' | translate}}</span>\r\n <p>{{activity.activity || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.type' | translate}}</span>\r\n <p>{{activity.type || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.subject' | translate}}</span>\r\n <p>{{activity.subject || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.remarks' | translate}}</span>\r\n <p>{{activity.remarks || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.startTime' | translate}}</span>\r\n <p>{{(activity.startTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.endTime' | translate}}</span>\r\n <p>{{(activity.endTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.duration' | translate}}</span>\r\n <p>{{activity.duration || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.content' | translate}}</span>\r\n <p>{{activity.content || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.coordinator' | translate}}</span>\r\n <p>{{activity.coordinatorName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.orderNumber' | translate}}</span>\r\n <p>{{activity.orderNumber || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.detailedSymptom' | translate}}</span>\r\n <p>{{activity.detailedSymptom || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.solution' | translate}}</span>\r\n <p>{{activity.solution || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.incompleteReason' | translate}}</span>\r\n <p>{{activity.incompleteReason || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\" *ngIf=\"activity.attachmentList.length > 0\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <p class=\"attachments-title\">{{'global.attachments' | translate}}:</p>\r\n <ul class=\"row\">\r\n <li class=\"row align-items-center\" *ngFor=\"let attachment of activity.attachmentList\">\r\n <p>{{attachment.fileName}}.{{attachment.fileExt}}</p>\r\n\r\n <a [href]=\"baseDownloadLink + '&id=' + attachment.id + '&line=' + attachment.line + '&preview=true'\" target=\"_blank\" (click)=\"updateLink()\">\r\n <button mat-icon-button>\r\n <mat-icon class=\"material-icons\">preview</mat-icon>\r\n </button>\r\n </a>\r\n\r\n <a [href]=\"baseDownloadLink + '&id=' + attachment.id + '&line=' + attachment.line + '&preview=false'\" target=\"_blank\" (click)=\"updateLink()\">\r\n <button mat-icon-button>\r\n <mat-icon class=\"material-icons\">cloud_download</mat-icon>\r\n </button>\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n", styles: [".group-details .attachments-title{font-weight:500;margin-bottom:0}.group-details ul{padding-left:0}.group-details ul li{padding:0 10px;border-right:2px solid #66bb6a}.group-details ul li:last-child{border-right:0}.group-details ul li p{margin-bottom:0}.group-details ul li button{width:32px;height:32px;line-height:32px;opacity:.8}.group-details ul li button:hover{opacity:1}.group-details ul li button mat-icon{font-size:22px;line-height:22px;width:22px;height:22px}\n"] }]
494
+ }], ctorParameters: function () {
495
+ return [{ type: undefined, decorators: [{
496
+ type: Inject,
497
+ args: ['config']
498
+ }] }];
499
+ }, propDecorators: { activity: [{
500
+ type: Input
501
+ }] } });
502
+
503
+ class ActivitiesListViewComponent {
504
+ constructor() {
505
+ this.class = 'display-flex-component';
506
+ this.columnsToDisplay = ['activityNumber', 'detailedSymptom', 'solution', 'coordinator', 'startTime', 'endTime'];
507
+ }
508
+ ngOnInit() {
509
+ this.setTable();
510
+ }
511
+ ngAfterViewInit() {
512
+ this.paginator.pageSize = 5;
513
+ this.tableSource.paginator = this.paginator;
514
+ }
515
+ setTable() {
516
+ this.tableSource = new MatTableDataSource(this.activities);
517
+ }
518
+ }
519
+ ActivitiesListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActivitiesListViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
520
+ ActivitiesListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ActivitiesListViewComponent, selector: "app-activities-list-view", inputs: { activities: "activities" }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"activities-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"activityNumber\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.activityNo' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.activityNumber }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"type\">\r\n <th mat-header-cell *matHeaderCellDef>{{ 'global.type' | translate }}</th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.type }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"detailedSymptom\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.detailedSymptom' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.detailedSymptom }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"solution\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.solution' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.solution }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"coordinator\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.coordinator' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.coordinatorName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"startTime\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.startTime' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.startTime | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"endTime\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.endTime' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.endTime | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-activity-details-view\r\n *ngIf=\"element == expandedElement\"\r\n [activity]=\"element\"\r\n ></app-activity-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[5, 10]\"\r\n [showFirstLastButtons]=\"true\"\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.activities-list-view{width:100%}table::ng-deep tbody>tr.active{background-color:#90caf9!important}table::ng-deep tbody>tr:hover{background-color:#90caf9!important}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#bbdefb;border-left:3px solid #bbdefb;border-right:3px solid #bbdefb}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #bbdefb;border-right:3px solid #bbdefb;border-bottom:3px solid #bbdefb}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: ActivityDetailsViewComponent, selector: "app-activity-details-view", inputs: ["activity"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateTimeFormatPipe, name: "stDateTimeFormatPipe" }], animations: [
521
+ trigger('detailExpand', [
522
+ state('collapsed', style({ height: '0px', minHeight: '0' })),
523
+ state('expanded', style({ height: '*' })),
524
+ transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
525
+ ]),
526
+ ] });
527
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActivitiesListViewComponent, decorators: [{
528
+ type: Component,
529
+ args: [{ selector: 'app-activities-list-view', animations: [
530
+ trigger('detailExpand', [
531
+ state('collapsed', style({ height: '0px', minHeight: '0' })),
532
+ state('expanded', style({ height: '*' })),
533
+ transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
534
+ ]),
535
+ ], template: "<div class=\"activities-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"activityNumber\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.activityNo' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.activityNumber }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"type\">\r\n <th mat-header-cell *matHeaderCellDef>{{ 'global.type' | translate }}</th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.type }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"detailedSymptom\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.detailedSymptom' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.detailedSymptom }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"solution\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.solution' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.solution }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"coordinator\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.coordinator' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.coordinatorName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"startTime\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.startTime' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.startTime | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"endTime\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.endTime' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.endTime | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-activity-details-view\r\n *ngIf=\"element == expandedElement\"\r\n [activity]=\"element\"\r\n ></app-activity-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[5, 10]\"\r\n [showFirstLastButtons]=\"true\"\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.activities-list-view{width:100%}table::ng-deep tbody>tr.active{background-color:#90caf9!important}table::ng-deep tbody>tr:hover{background-color:#90caf9!important}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#bbdefb;border-left:3px solid #bbdefb;border-right:3px solid #bbdefb}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #bbdefb;border-right:3px solid #bbdefb;border-bottom:3px solid #bbdefb}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"] }]
536
+ }], ctorParameters: function () { return []; }, propDecorators: { class: [{
537
+ type: HostBinding,
538
+ args: ['class']
539
+ }], paginator: [{
540
+ type: ViewChild,
541
+ args: [MatPaginator]
542
+ }], activities: [{
543
+ type: Input
544
+ }] } });
545
+
546
+ class ServiceContractDetailsViewComponent {
547
+ constructor() {
548
+ }
549
+ ngOnInit() {
550
+ }
551
+ }
552
+ ServiceContractDetailsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractDetailsViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
553
+ ServiceContractDetailsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ServiceContractDetailsViewComponent, selector: "app-service-contract-details-view", inputs: { contract: "contract" }, ngImport: i0, template: "<div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customer' | translate}}</span>\r\n <p>{{contract.customer || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customerName' | translate}}</span>\r\n <p>{{contract.customerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.description' | translate}}</span>\r\n <p>{{contract.description || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.startDate' | translate}}</span>\r\n <p>{{(contract.startDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endDate' | translate}}</span>\r\n <p>{{(contract.endDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.terminationDate' | translate}}</span>\r\n <p>{{(contract.terminationDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.serviceType' | translate}}</span>\r\n <p>{{(contract.serviceType) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.template' | translate}}</span>\r\n <p>{{(contract.template) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.handledBy' | translate}}</span>\r\n <p>{{(contract.handledBy) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.remarks' | translate}}</span>\r\n <p>{{(contract.remarks) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.itemCode' | translate}}</span>\r\n <p>{{(contract.itemCode) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.itemName' | translate}}</span>\r\n <p>{{(contract.itemName) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.serialNumber' | translate}}</span>\r\n <p>{{(contract.serialNumber) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.startDateDetails' | translate}}</span>\r\n <p>{{(contract.startDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endDateDetails' | translate}}</span>\r\n <p>{{(contract.endDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.terminationDateDetails' | translate}}</span>\r\n <p>{{(contract.terminationDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateFormatPipe, name: "stDateFormatPipe" }] });
554
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractDetailsViewComponent, decorators: [{
555
+ type: Component,
556
+ args: [{ selector: 'app-service-contract-details-view', template: "<div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customer' | translate}}</span>\r\n <p>{{contract.customer || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customerName' | translate}}</span>\r\n <p>{{contract.customerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.description' | translate}}</span>\r\n <p>{{contract.description || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.startDate' | translate}}</span>\r\n <p>{{(contract.startDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endDate' | translate}}</span>\r\n <p>{{(contract.endDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.terminationDate' | translate}}</span>\r\n <p>{{(contract.terminationDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.serviceType' | translate}}</span>\r\n <p>{{(contract.serviceType) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.template' | translate}}</span>\r\n <p>{{(contract.template) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.handledBy' | translate}}</span>\r\n <p>{{(contract.handledBy) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.remarks' | translate}}</span>\r\n <p>{{(contract.remarks) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.itemCode' | translate}}</span>\r\n <p>{{(contract.itemCode) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.itemName' | translate}}</span>\r\n <p>{{(contract.itemName) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.serialNumber' | translate}}</span>\r\n <p>{{(contract.serialNumber) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.startDateDetails' | translate}}</span>\r\n <p>{{(contract.startDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endDateDetails' | translate}}</span>\r\n <p>{{(contract.endDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.terminationDateDetails' | translate}}</span>\r\n <p>{{(contract.terminationDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n</div>\r\n" }]
557
+ }], ctorParameters: function () { return []; }, propDecorators: { contract: [{
558
+ type: Input
559
+ }] } });
560
+
561
+ class ServiceContractsModalDetailsViewComponent {
562
+ constructor(data, dialogRef) {
563
+ this.data = data;
564
+ this.dialogRef = dialogRef;
565
+ }
566
+ ngOnInit() {
567
+ }
568
+ close() {
569
+ this.dialogRef.close();
570
+ }
571
+ }
572
+ ServiceContractsModalDetailsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractsModalDetailsViewComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1$1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
573
+ ServiceContractsModalDetailsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ServiceContractsModalDetailsViewComponent, selector: "app-service-contracts-modal-details-view", ngImport: i0, template: "<h1 mat-dialog-title>{{'sapAdminInstalledInstrument.serviceContract' | translate}}</h1>\r\n<div mat-dialog-content>\r\n <app-service-contract-details-view\r\n [contract]=\"data.contract\"\r\n ></app-service-contract-details-view>\r\n</div>\r\n<div class=\"row justify-content-end\" mat-dialog-actions>\r\n <button mat-button type=\"button\" (click)=\"close()\">{{'global.close' | translate}}</button>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1$1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: ServiceContractDetailsViewComponent, selector: "app-service-contract-details-view", inputs: ["contract"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }] });
574
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractsModalDetailsViewComponent, decorators: [{
575
+ type: Component,
576
+ args: [{ selector: 'app-service-contracts-modal-details-view', template: "<h1 mat-dialog-title>{{'sapAdminInstalledInstrument.serviceContract' | translate}}</h1>\r\n<div mat-dialog-content>\r\n <app-service-contract-details-view\r\n [contract]=\"data.contract\"\r\n ></app-service-contract-details-view>\r\n</div>\r\n<div class=\"row justify-content-end\" mat-dialog-actions>\r\n <button mat-button type=\"button\" (click)=\"close()\">{{'global.close' | translate}}</button>\r\n</div>\r\n" }]
577
+ }], ctorParameters: function () {
578
+ return [{ type: undefined, decorators: [{
579
+ type: Inject,
580
+ args: [MAT_DIALOG_DATA]
581
+ }] }, { type: i1$1.MatDialogRef }];
582
+ } });
583
+
584
+ class CallDetailsViewComponent {
585
+ constructor(dialog, sapInstalledInstruments) {
586
+ this.dialog = dialog;
587
+ this.sapInstalledInstruments = sapInstalledInstruments;
588
+ this.activitiesLoading = true;
589
+ this.activities = [];
590
+ }
591
+ ngOnInit() {
592
+ if (this.call && this.contracts && this.call.contractNo) {
593
+ this.contractDetails = this.contracts.find((contract) => contract.contractId === this.call.contractNo);
594
+ }
595
+ this.loadActivities();
596
+ }
597
+ openContractModel() {
598
+ this.dialog.open(ServiceContractsModalDetailsViewComponent, {
599
+ data: { contract: this.contractDetails },
600
+ width: '50%',
601
+ });
602
+ }
603
+ tabChanged(event) {
604
+ }
605
+ loadActivities() {
606
+ this.activities$ = this.sapInstalledInstruments.getActivities(this.call.callId)
607
+ .pipe(tap(res => {
608
+ this.activities = res;
609
+ this.activitiesLoading = false;
610
+ }));
611
+ }
612
+ }
613
+ CallDetailsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CallDetailsViewComponent, deps: [{ token: i1$1.MatDialog }, { token: SapInstalledInstrumentsService }], target: i0.ɵɵFactoryTarget.Component });
614
+ CallDetailsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CallDetailsViewComponent, selector: "app-call-details-view", inputs: { call: "call", contracts: "contracts" }, ngImport: i0, template: "<mat-tab-group (selectedTabChange)=\"tabChanged($event)\">\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.callDetails' | translate}}\">\r\n <div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.callId' | translate}}</span>\r\n <p>{{call.callId || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.contractNo' | translate}}</span>\r\n <div class=\"row\">\r\n <p>{{call.contractNo || '-'}}</p>\r\n <i class=\"material-icons-outlined show-contract\" *ngIf=\"contractDetails\" (click)=\"openContractModel()\">visibility</i>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.accountNo' | translate}}</span>\r\n <p>{{call.customer || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.accountName' | translate}}</span>\r\n <p>{{call.customerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.contactPerson' | translate}}</span>\r\n <p>{{call.contactPerson || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.phone' | translate}}</span>\r\n <p>{{call.telephoneNo || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.shipToCode' | translate}}</span>\r\n <p>{{call.shipToCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.shipToAddress' | translate}}</span>\r\n <p>{{call.shipToAddress || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.billToCode' | translate}}</span>\r\n <p>{{call.billToCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.billToAddress' | translate}}</span>\r\n <p>{{call.billToAddress || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.subject' | translate}}</span>\r\n <p>{{call.subject || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.callStatus' | translate}}</span>\r\n <p>{{call.callStatus || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.createdOn' | translate}}</span>\r\n <p>{{(call.createdOn | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.closedOn' | translate}}</span>\r\n <p>{{(call.closedOn | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.origin' | translate}}</span>\r\n <p>{{call.origin || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.problemType' | translate}}</span>\r\n <p>{{call.problemType || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.problemSubtype' | translate}}</span>\r\n <p>{{call.problemSubtype || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.callType' | translate}}</span>\r\n <p>{{call.callType || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.technician' | translate}}</span>\r\n <p>{{call.technicianFirstName ? call.technicianFirstName + ' ' + call.technicianLastName : '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.handledBy' | translate}}</span>\r\n <p>{{call.handledBy || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'global.remarks' | translate}}</span>\r\n <p>{{call.remarks || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.resolution' | translate}}</span>\r\n <p>{{call.resolution || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.startTime' | translate}}</span>\r\n <p>{{(call.startTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.endTime' | translate}}</span>\r\n <p>{{(call.endTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.duration' | translate}}</span>\r\n <p>{{call.duration || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.travelTime' | translate}}</span>\r\n <p>{{call.travelTime || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.internalComments' | translate}}</span>\r\n <p>{{call.internalComments || '-'}}</p>\r\n </div>\r\n </div>\r\n </mat-tab>\r\n\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.activities' | translate}} ({{activities.length || 0}})\">\r\n <ng-container *ngIf=\"activities$ | async\">\r\n <app-activities-list-view\r\n [activities]=\"activities\"\r\n ></app-activities-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n</mat-tab-group>\r\n\r\n\r\n\r\n\r\n", styles: [".show-contract{margin-left:5px;font-size:22px;opacity:.8;cursor:pointer;color:#1976d2}.show-contract:hover{opacity:1}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "component", type: i4.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: ActivitiesListViewComponent, selector: "app-activities-list-view", inputs: ["activities"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateTimeFormatPipe, name: "stDateTimeFormatPipe" }] });
615
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CallDetailsViewComponent, decorators: [{
616
+ type: Component,
617
+ args: [{ selector: 'app-call-details-view', template: "<mat-tab-group (selectedTabChange)=\"tabChanged($event)\">\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.callDetails' | translate}}\">\r\n <div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.callId' | translate}}</span>\r\n <p>{{call.callId || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.contractNo' | translate}}</span>\r\n <div class=\"row\">\r\n <p>{{call.contractNo || '-'}}</p>\r\n <i class=\"material-icons-outlined show-contract\" *ngIf=\"contractDetails\" (click)=\"openContractModel()\">visibility</i>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.accountNo' | translate}}</span>\r\n <p>{{call.customer || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.accountName' | translate}}</span>\r\n <p>{{call.customerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.contactPerson' | translate}}</span>\r\n <p>{{call.contactPerson || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.phone' | translate}}</span>\r\n <p>{{call.telephoneNo || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.shipToCode' | translate}}</span>\r\n <p>{{call.shipToCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.shipToAddress' | translate}}</span>\r\n <p>{{call.shipToAddress || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.billToCode' | translate}}</span>\r\n <p>{{call.billToCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.billToAddress' | translate}}</span>\r\n <p>{{call.billToAddress || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.subject' | translate}}</span>\r\n <p>{{call.subject || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.callStatus' | translate}}</span>\r\n <p>{{call.callStatus || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.createdOn' | translate}}</span>\r\n <p>{{(call.createdOn | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.closedOn' | translate}}</span>\r\n <p>{{(call.closedOn | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.origin' | translate}}</span>\r\n <p>{{call.origin || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.problemType' | translate}}</span>\r\n <p>{{call.problemType || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.problemSubtype' | translate}}</span>\r\n <p>{{call.problemSubtype || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.callType' | translate}}</span>\r\n <p>{{call.callType || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.technician' | translate}}</span>\r\n <p>{{call.technicianFirstName ? call.technicianFirstName + ' ' + call.technicianLastName : '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.handledBy' | translate}}</span>\r\n <p>{{call.handledBy || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'global.remarks' | translate}}</span>\r\n <p>{{call.remarks || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.resolution' | translate}}</span>\r\n <p>{{call.resolution || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.startTime' | translate}}</span>\r\n <p>{{(call.startTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.endTime' | translate}}</span>\r\n <p>{{(call.endTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.duration' | translate}}</span>\r\n <p>{{call.duration || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.travelTime' | translate}}</span>\r\n <p>{{call.travelTime || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.internalComments' | translate}}</span>\r\n <p>{{call.internalComments || '-'}}</p>\r\n </div>\r\n </div>\r\n </mat-tab>\r\n\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.activities' | translate}} ({{activities.length || 0}})\">\r\n <ng-container *ngIf=\"activities$ | async\">\r\n <app-activities-list-view\r\n [activities]=\"activities\"\r\n ></app-activities-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n</mat-tab-group>\r\n\r\n\r\n\r\n\r\n", styles: [".show-contract{margin-left:5px;font-size:22px;opacity:.8;cursor:pointer;color:#1976d2}.show-contract:hover{opacity:1}\n"] }]
618
+ }], ctorParameters: function () { return [{ type: i1$1.MatDialog }, { type: SapInstalledInstrumentsService }]; }, propDecorators: { call: [{
619
+ type: Input
620
+ }], contracts: [{
621
+ type: Input
622
+ }] } });
623
+
624
+ class CallsListViewComponent {
625
+ constructor() {
626
+ this.class = 'display-flex-component';
627
+ this.columnsToDisplay = ['callId', 'callStatus', 'callType', 'problemType', 'customer', 'customerName', 'handledBy', 'createdOn', 'closedOn'];
628
+ }
629
+ ngOnInit() {
630
+ this.setTable();
631
+ }
632
+ ngAfterViewInit() {
633
+ this.paginator.pageSize = 10;
634
+ this.tableSource.paginator = this.paginator;
635
+ }
636
+ setTable() {
637
+ this.tableSource = new MatTableDataSource(this.calls);
638
+ }
639
+ }
640
+ CallsListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CallsListViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
641
+ CallsListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CallsListViewComponent, selector: "app-calls-list-view", inputs: { calls: "calls", contracts: "contracts" }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"calls-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"callId\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'global.callId' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callId }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"callStatus\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'global.status' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callStatus }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"callType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.callType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"problemType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.problemType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.problemType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customer\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.accountNo' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customer }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customerName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.accountName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customerName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"handledBy\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.handledBy' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.handledBy }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"createdOn\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.createdOn' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.createdOn | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"closedOn\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.closedOn' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.closedOn | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-call-details-view\r\n *ngIf=\"element == expandedElement\"\r\n [call]=\"element\"\r\n [contracts]=\"contracts\"\r\n ></app-call-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n showFirstLastButtons\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.calls-list-view{width:100%}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#c8e6c9;border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9;border-bottom:3px solid #c8e6c9}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: CallDetailsViewComponent, selector: "app-call-details-view", inputs: ["call", "contracts"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateTimeFormatPipe, name: "stDateTimeFormatPipe" }], animations: [
642
+ trigger('detailExpand', [
643
+ state('collapsed', style({ height: '0px', minHeight: '0' })),
644
+ state('expanded', style({ height: '*' })),
645
+ transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
646
+ ]),
647
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
648
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CallsListViewComponent, decorators: [{
649
+ type: Component,
650
+ args: [{ selector: 'app-calls-list-view', animations: [
651
+ trigger('detailExpand', [
652
+ state('collapsed', style({ height: '0px', minHeight: '0' })),
653
+ state('expanded', style({ height: '*' })),
654
+ transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
655
+ ]),
656
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"calls-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"callId\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'global.callId' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callId }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"callStatus\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'global.status' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callStatus }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"callType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.callType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"problemType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.problemType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.problemType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customer\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.accountNo' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customer }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customerName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.accountName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customerName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"handledBy\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.handledBy' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.handledBy }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"createdOn\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.createdOn' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.createdOn | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"closedOn\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.closedOn' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.closedOn | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-call-details-view\r\n *ngIf=\"element == expandedElement\"\r\n [call]=\"element\"\r\n [contracts]=\"contracts\"\r\n ></app-call-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n showFirstLastButtons\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.calls-list-view{width:100%}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#c8e6c9;border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9;border-bottom:3px solid #c8e6c9}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"] }]
657
+ }], ctorParameters: function () { return []; }, propDecorators: { class: [{
658
+ type: HostBinding,
659
+ args: ['class']
660
+ }], paginator: [{
661
+ type: ViewChild,
662
+ args: [MatPaginator]
663
+ }], calls: [{
664
+ type: Input
665
+ }], contracts: [{
666
+ type: Input
667
+ }] } });
668
+
669
+ class DataDetailsViewComponent {
670
+ constructor() {
671
+ }
672
+ ngOnInit() {
673
+ }
674
+ }
675
+ DataDetailsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DataDetailsViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
676
+ DataDetailsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: DataDetailsViewComponent, selector: "app-data-details-view", inputs: { installedInstrument: "installedInstrument" }, ngImport: i0, template: "<ng-container *ngIf=\"installedInstrument\">\r\n <div class=\"group-details row\">\r\n<!-- <div class=\"col-xs-12 col-sm-4\">-->\r\n<!-- <span>{{'sapAdminInstalledInstrument.equipmentCardNo' | translate}}</span>-->\r\n<!-- <p>{{installedInstrument.equipmentCardNo || '-'}}</p>-->\r\n<!-- </div>-->\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.instrumentNo' | translate}}</span>\r\n <p>{{installedInstrument.instrumentNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.instrumentDescription' | translate}}</span>\r\n <p>{{installedInstrument.instrumentDescription || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.serialNumber' | translate}}</span>\r\n <p>{{installedInstrument.serialNumber || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customerNo' | translate}}</span>\r\n <p>{{installedInstrument.customerNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.businessPartnerName' | translate}}</span>\r\n <p>{{installedInstrument.businessPartnerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.contactPerson' | translate}}</span>\r\n <p>{{installedInstrument.contactPerson || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.status' | translate}}</span>\r\n <p>{{installedInstrument.status || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.technicianName' | translate}}</span>\r\n <p>{{installedInstrument.technicianFirstName ? installedInstrument.technicianFirstName + ' ' + installedInstrument.technicianLastName : '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.territory' | translate}}</span>\r\n <p>{{installedInstrument.territory || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.installationDate' | translate}}</span>\r\n <p>{{(installedInstrument.installationDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endUserName' | translate}}</span>\r\n <p>{{installedInstrument.endUserName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endUserCode' | translate}}</span>\r\n <p>{{installedInstrument.endUserCode || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.addressName' | translate}}</span>\r\n <p>{{installedInstrument.addressName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.street' | translate}}</span>\r\n <p>{{installedInstrument.street || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.streetNo' | translate}}</span>\r\n <p>{{installedInstrument.streetNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.block' | translate}}</span>\r\n <p>{{installedInstrument.block || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.building' | translate}}</span>\r\n <p>{{installedInstrument.building || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.city' | translate}}</span>\r\n <p>{{installedInstrument.city || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.county' | translate}}</span>\r\n <p>{{installedInstrument.county || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.state' | translate}}</span>\r\n <p>{{installedInstrument.state || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.zipCode' | translate}}</span>\r\n <p>{{installedInstrument.zipCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.country' | translate}}</span>\r\n <p>{{installedInstrument.country || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.softwareVersion' | translate}}</span>\r\n <p>{{installedInstrument.softwareVersion || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.pcSoftwareVersion' | translate}}</span>\r\n <p>{{installedInstrument.pcSoftwareVersion || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.vessels' | translate}}</span>\r\n <p>{{installedInstrument.vessels || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem1' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem2' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem3' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem3 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit1' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit2' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit3' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit3 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit4' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit4 || '-'}}</p>\r\n </div>\r\n </div>\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit5' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit5 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit6' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit6 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit7' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit7 || '-'}}</p>\r\n </div>\r\n </div>\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit8' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit8 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit9' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit9 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit10' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit10 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.numberOfAnalysis' | translate}}</span>\r\n <p>{{installedInstrument.numberOfAnalysis || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application1' | translate}}</span>\r\n <p>{{installedInstrument.application1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application2' | translate}}</span>\r\n <p>{{installedInstrument.application2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application3' | translate}}</span>\r\n <p>{{installedInstrument.application3 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application4' | translate}}</span>\r\n <p>{{installedInstrument.application4 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application5' | translate}}</span>\r\n <p>{{installedInstrument.application5 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application6' | translate}}</span>\r\n <p>{{installedInstrument.application6 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application7' | translate}}</span>\r\n <p>{{installedInstrument.application7 || '-'}}</p>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateFormatPipe, name: "stDateFormatPipe" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
677
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DataDetailsViewComponent, decorators: [{
678
+ type: Component,
679
+ args: [{ selector: 'app-data-details-view', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"installedInstrument\">\r\n <div class=\"group-details row\">\r\n<!-- <div class=\"col-xs-12 col-sm-4\">-->\r\n<!-- <span>{{'sapAdminInstalledInstrument.equipmentCardNo' | translate}}</span>-->\r\n<!-- <p>{{installedInstrument.equipmentCardNo || '-'}}</p>-->\r\n<!-- </div>-->\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.instrumentNo' | translate}}</span>\r\n <p>{{installedInstrument.instrumentNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.instrumentDescription' | translate}}</span>\r\n <p>{{installedInstrument.instrumentDescription || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.serialNumber' | translate}}</span>\r\n <p>{{installedInstrument.serialNumber || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customerNo' | translate}}</span>\r\n <p>{{installedInstrument.customerNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.businessPartnerName' | translate}}</span>\r\n <p>{{installedInstrument.businessPartnerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.contactPerson' | translate}}</span>\r\n <p>{{installedInstrument.contactPerson || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.status' | translate}}</span>\r\n <p>{{installedInstrument.status || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.technicianName' | translate}}</span>\r\n <p>{{installedInstrument.technicianFirstName ? installedInstrument.technicianFirstName + ' ' + installedInstrument.technicianLastName : '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.territory' | translate}}</span>\r\n <p>{{installedInstrument.territory || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.installationDate' | translate}}</span>\r\n <p>{{(installedInstrument.installationDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endUserName' | translate}}</span>\r\n <p>{{installedInstrument.endUserName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endUserCode' | translate}}</span>\r\n <p>{{installedInstrument.endUserCode || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.addressName' | translate}}</span>\r\n <p>{{installedInstrument.addressName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.street' | translate}}</span>\r\n <p>{{installedInstrument.street || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.streetNo' | translate}}</span>\r\n <p>{{installedInstrument.streetNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.block' | translate}}</span>\r\n <p>{{installedInstrument.block || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.building' | translate}}</span>\r\n <p>{{installedInstrument.building || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.city' | translate}}</span>\r\n <p>{{installedInstrument.city || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.county' | translate}}</span>\r\n <p>{{installedInstrument.county || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.state' | translate}}</span>\r\n <p>{{installedInstrument.state || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.zipCode' | translate}}</span>\r\n <p>{{installedInstrument.zipCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.country' | translate}}</span>\r\n <p>{{installedInstrument.country || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.softwareVersion' | translate}}</span>\r\n <p>{{installedInstrument.softwareVersion || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.pcSoftwareVersion' | translate}}</span>\r\n <p>{{installedInstrument.pcSoftwareVersion || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.vessels' | translate}}</span>\r\n <p>{{installedInstrument.vessels || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem1' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem2' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem3' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem3 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit1' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit2' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit3' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit3 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit4' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit4 || '-'}}</p>\r\n </div>\r\n </div>\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit5' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit5 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit6' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit6 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit7' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit7 || '-'}}</p>\r\n </div>\r\n </div>\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit8' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit8 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit9' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit9 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit10' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit10 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.numberOfAnalysis' | translate}}</span>\r\n <p>{{installedInstrument.numberOfAnalysis || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application1' | translate}}</span>\r\n <p>{{installedInstrument.application1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application2' | translate}}</span>\r\n <p>{{installedInstrument.application2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application3' | translate}}</span>\r\n <p>{{installedInstrument.application3 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application4' | translate}}</span>\r\n <p>{{installedInstrument.application4 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application5' | translate}}</span>\r\n <p>{{installedInstrument.application5 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application6' | translate}}</span>\r\n <p>{{installedInstrument.application6 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application7' | translate}}</span>\r\n <p>{{installedInstrument.application7 || '-'}}</p>\r\n </div>\r\n </div>\r\n</ng-container>\r\n" }]
680
+ }], ctorParameters: function () { return []; }, propDecorators: { installedInstrument: [{
681
+ type: Input
682
+ }] } });
683
+
684
+ class ServiceContractsListViewComponent {
685
+ constructor() {
686
+ this.class = 'display-flex-component';
687
+ this.columnsToDisplay = ['contractId', 'customer', 'customerName', 'itemCode', 'itemName', 'serialNumber', 'serviceType', 'startDate', 'terminationDate'];
688
+ }
689
+ ngOnInit() {
690
+ this.setTable();
691
+ }
692
+ ngAfterViewInit() {
693
+ this.paginator.pageSize = 10;
694
+ this.tableSource.paginator = this.paginator;
695
+ }
696
+ setTable() {
697
+ this.tableSource = new MatTableDataSource(this.contracts);
698
+ }
699
+ }
700
+ ServiceContractsListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractsListViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
701
+ ServiceContractsListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ServiceContractsListViewComponent, selector: "app-service-contracts-list-view", inputs: { contracts: "contracts" }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"service-contracts-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"contractId\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.contractId' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.contractId }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customer\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.customer' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customer }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customerName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.customerName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customerName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"itemCode\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.itemCode' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.itemCode }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"itemName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.itemName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.itemName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"serialNumber\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.serialNumber' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.serialNumber }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"serviceType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.serviceType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.serviceType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"startDate\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.startDate' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.startDate | stDateFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"terminationDate\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.endDate' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.endDateDetail | stDateFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-service-contract-details-view\r\n [contract]=\"element\"\r\n ></app-service-contract-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n showFirstLastButtons\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.service-contracts-list-view{width:100%}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#c8e6c9;border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9;border-bottom:3px solid #c8e6c9}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"], dependencies: [{ kind: "component", type: i2$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: ServiceContractDetailsViewComponent, selector: "app-service-contract-details-view", inputs: ["contract"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateFormatPipe, name: "stDateFormatPipe" }], animations: [
702
+ trigger('detailExpand', [
703
+ state('collapsed', style({ height: '0px', minHeight: '0' })),
704
+ state('expanded', style({ height: '*' })),
705
+ transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
706
+ ]),
707
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
708
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractsListViewComponent, decorators: [{
709
+ type: Component,
710
+ args: [{ selector: 'app-service-contracts-list-view', animations: [
711
+ trigger('detailExpand', [
712
+ state('collapsed', style({ height: '0px', minHeight: '0' })),
713
+ state('expanded', style({ height: '*' })),
714
+ transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
715
+ ]),
716
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"service-contracts-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"contractId\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.contractId' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.contractId }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customer\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.customer' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customer }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customerName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.customerName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customerName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"itemCode\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.itemCode' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.itemCode }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"itemName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.itemName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.itemName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"serialNumber\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.serialNumber' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.serialNumber }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"serviceType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.serviceType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.serviceType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"startDate\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.startDate' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.startDate | stDateFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"terminationDate\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.endDate' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.endDateDetail | stDateFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-service-contract-details-view\r\n [contract]=\"element\"\r\n ></app-service-contract-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n showFirstLastButtons\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.service-contracts-list-view{width:100%}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#c8e6c9;border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9;border-bottom:3px solid #c8e6c9}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"] }]
717
+ }], ctorParameters: function () { return []; }, propDecorators: { class: [{
718
+ type: HostBinding,
719
+ args: ['class']
720
+ }], paginator: [{
721
+ type: ViewChild,
722
+ args: [MatPaginator]
723
+ }], contracts: [{
724
+ type: Input
725
+ }] } });
726
+
727
+ class SapInstalledInstrumentDetailsComponent {
728
+ constructor(sapInstalledInstrumentService, activatedRoute, location) {
729
+ this.sapInstalledInstrumentService = sapInstalledInstrumentService;
730
+ this.activatedRoute = activatedRoute;
731
+ this.location = location;
732
+ this.class = 'display-flex-component';
733
+ this.tabActive = 0;
734
+ this.calls = [];
735
+ this.serviceContracts = [];
736
+ }
737
+ ngOnInit() {
738
+ this.id = this.activatedRoute.snapshot.params['id'];
739
+ this.loadTabsData();
740
+ }
741
+ tabChanged(event) {
742
+ this.tabActive = event.index;
743
+ }
744
+ goBack() {
745
+ this.location.back();
746
+ }
747
+ loadTabsData() {
748
+ this.installedInstrument$ = this.sapInstalledInstrumentService
749
+ .getInstalledInstrument(this.id)
750
+ .pipe(tap(installedInstrument => {
751
+ this.installedInstrument = installedInstrument;
752
+ }));
753
+ this.calls$ = this.sapInstalledInstrumentService
754
+ .getCalls(this.id)
755
+ .pipe(tap(res => (this.calls = res)));
756
+ this.serviceContracts$ = this.sapInstalledInstrumentService
757
+ .getContracts(this.id)
758
+ .pipe(tap(res => (this.serviceContracts = res)));
759
+ }
760
+ }
761
+ SapInstalledInstrumentDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentDetailsComponent, deps: [{ token: SapInstalledInstrumentsService }, { token: i2.ActivatedRoute }, { token: i3.Location }], target: i0.ɵɵFactoryTarget.Component });
762
+ SapInstalledInstrumentDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentDetailsComponent, selector: "app-sap-installed-instrument-details", host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<div class=\"container-fluid no-cut\">\r\n <div class=\"card\">\r\n <div class=\"card-header card-header-warning\">\r\n <h3 class=\"card-title\">{{'sapAdminInstalledInstrument.titleInstalledInstrumentDetails' | translate}}</h3>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <button mat-icon-button class=\"back-link\" (click)=\"goBack()\">\r\n <span class=\"material-icons\">keyboard_backspace</span>\r\n </button>\r\n\r\n <mat-tab-group (selectedTabChange)=\"tabChanged($event)\">\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.instrumentDetails' | translate}}\">\r\n <ng-container *ngIf=\"installedInstrument$ | async\">\r\n <app-data-details-view\r\n *ngIf=\"tabActive === 0\"\r\n [installedInstrument]=\"installedInstrument\"\r\n ></app-data-details-view>\r\n </ng-container>\r\n </mat-tab>\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.calls' | translate}} ({{calls.length || 0}})\">\r\n <ng-container *ngIf=\"calls$ | async\">\r\n <app-calls-list-view\r\n *ngIf=\"tabActive === 1\"\r\n [calls]=\"calls\"\r\n [contracts]=\"serviceContracts\"\r\n ></app-calls-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.serviceContracts' | translate}} ({{serviceContracts.length || 0}})\">\r\n <ng-container *ngIf=\"serviceContracts$ | async\">\r\n <app-service-contracts-list-view\r\n *ngIf=\"tabActive === 2\"\r\n [contracts]=\"serviceContracts\"\r\n ></app-service-contracts-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n </mat-tab-group>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["mat-tab-group::ng-deep mat-tab-body{padding:10px 0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "component", type: i4.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: DataDetailsViewComponent, selector: "app-data-details-view", inputs: ["installedInstrument"] }, { kind: "component", type: CallsListViewComponent, selector: "app-calls-list-view", inputs: ["calls", "contracts"] }, { kind: "component", type: ServiceContractsListViewComponent, selector: "app-service-contracts-list-view", inputs: ["contracts"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }] });
763
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentDetailsComponent, decorators: [{
764
+ type: Component,
765
+ args: [{ selector: 'app-sap-installed-instrument-details', template: "<div class=\"container-fluid no-cut\">\r\n <div class=\"card\">\r\n <div class=\"card-header card-header-warning\">\r\n <h3 class=\"card-title\">{{'sapAdminInstalledInstrument.titleInstalledInstrumentDetails' | translate}}</h3>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <button mat-icon-button class=\"back-link\" (click)=\"goBack()\">\r\n <span class=\"material-icons\">keyboard_backspace</span>\r\n </button>\r\n\r\n <mat-tab-group (selectedTabChange)=\"tabChanged($event)\">\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.instrumentDetails' | translate}}\">\r\n <ng-container *ngIf=\"installedInstrument$ | async\">\r\n <app-data-details-view\r\n *ngIf=\"tabActive === 0\"\r\n [installedInstrument]=\"installedInstrument\"\r\n ></app-data-details-view>\r\n </ng-container>\r\n </mat-tab>\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.calls' | translate}} ({{calls.length || 0}})\">\r\n <ng-container *ngIf=\"calls$ | async\">\r\n <app-calls-list-view\r\n *ngIf=\"tabActive === 1\"\r\n [calls]=\"calls\"\r\n [contracts]=\"serviceContracts\"\r\n ></app-calls-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.serviceContracts' | translate}} ({{serviceContracts.length || 0}})\">\r\n <ng-container *ngIf=\"serviceContracts$ | async\">\r\n <app-service-contracts-list-view\r\n *ngIf=\"tabActive === 2\"\r\n [contracts]=\"serviceContracts\"\r\n ></app-service-contracts-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n </mat-tab-group>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["mat-tab-group::ng-deep mat-tab-body{padding:10px 0}\n"] }]
766
+ }], ctorParameters: function () { return [{ type: SapInstalledInstrumentsService }, { type: i2.ActivatedRoute }, { type: i3.Location }]; }, propDecorators: { class: [{
767
+ type: HostBinding,
768
+ args: ['class']
769
+ }] } });
770
+
771
+ const StSapInstalledInstrumentsRoutingModule = [
772
+ { path: '', component: SapInstalledInstrumentListComponent },
773
+ { path: 'details/:id', component: SapInstalledInstrumentDetailsComponent }
774
+ ];
775
+
776
+ class StSapInstalledInstrumentsModule {
777
+ static forRoot(config = {}) {
778
+ return {
779
+ ngModule: StSapInstalledInstrumentsModule,
780
+ providers: [
781
+ {
782
+ provide: HTTP_INTERCEPTORS,
783
+ useClass: config.errorInterceptor,
784
+ multi: true,
785
+ },
786
+ {
787
+ provide: HTTP_INTERCEPTORS,
788
+ useClass: config.apiInterceptor,
789
+ multi: true,
790
+ },
791
+ ],
792
+ };
793
+ }
794
+ }
795
+ StSapInstalledInstrumentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: StSapInstalledInstrumentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
796
+ StSapInstalledInstrumentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: StSapInstalledInstrumentsModule, declarations: [SapInstalledInstrumentListComponent,
797
+ SapInstalledInstrumentDetailsComponent,
798
+ DataDetailsViewComponent,
799
+ CallsListViewComponent,
800
+ ServiceContractsListViewComponent,
801
+ ServiceContractDetailsViewComponent,
802
+ CallDetailsViewComponent,
803
+ ServiceContractsModalDetailsViewComponent,
804
+ ActivitiesListViewComponent,
805
+ ActivityDetailsViewComponent,
806
+ SapInstalledInstrumentListSearchComponent,
807
+ SapInstalledInstrumentListTableComponent], imports: [CommonModule, i2.RouterModule, MatButtonModule,
808
+ MatRippleModule,
809
+ MatFormFieldModule,
810
+ MatInputModule,
811
+ MatSelectModule,
812
+ MatTooltipModule,
813
+ MatMenuModule,
814
+ MatIconModule,
815
+ MatChipsModule,
816
+ MatTableModule,
817
+ MatPaginatorModule,
818
+ MatListModule,
819
+ MatDatepickerModule,
820
+ MatNativeDateModule,
821
+ MatDialogModule,
822
+ MatTabsModule,
823
+ MatSnackBarModule,
824
+ MatCheckboxModule,
825
+ MatAutocompleteModule,
826
+ MatAutocompleteModule,
827
+ MatSortModule, i5$1.TranslateModule, StDateFormatModule,
828
+ ReactiveFormsModule,
829
+ NgxStMultiselectAutocompleteModule,
830
+ StSearchSelectsModule] });
831
+ StSapInstalledInstrumentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: StSapInstalledInstrumentsModule, providers: [SapInstalledInstrumentsService], imports: [CommonModule,
832
+ RouterModule.forChild(StSapInstalledInstrumentsRoutingModule),
833
+ MatButtonModule,
834
+ MatRippleModule,
835
+ MatFormFieldModule,
836
+ MatInputModule,
837
+ MatSelectModule,
838
+ MatTooltipModule,
839
+ MatMenuModule,
840
+ MatIconModule,
841
+ MatChipsModule,
842
+ MatTableModule,
843
+ MatPaginatorModule,
844
+ MatListModule,
845
+ MatDatepickerModule,
846
+ MatNativeDateModule,
847
+ MatDialogModule,
848
+ MatTabsModule,
849
+ MatSnackBarModule,
850
+ MatCheckboxModule,
851
+ MatAutocompleteModule,
852
+ MatAutocompleteModule,
853
+ MatSortModule,
854
+ TranslateModule.forChild(),
855
+ StDateFormatModule,
856
+ ReactiveFormsModule,
857
+ NgxStMultiselectAutocompleteModule,
858
+ StSearchSelectsModule] });
859
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: StSapInstalledInstrumentsModule, decorators: [{
860
+ type: NgModule,
861
+ args: [{
862
+ declarations: [
863
+ SapInstalledInstrumentListComponent,
864
+ SapInstalledInstrumentDetailsComponent,
865
+ DataDetailsViewComponent,
866
+ CallsListViewComponent,
867
+ ServiceContractsListViewComponent,
868
+ ServiceContractDetailsViewComponent,
869
+ CallDetailsViewComponent,
870
+ ServiceContractsModalDetailsViewComponent,
871
+ ActivitiesListViewComponent,
872
+ ActivityDetailsViewComponent,
873
+ SapInstalledInstrumentListSearchComponent,
874
+ SapInstalledInstrumentListTableComponent,
875
+ ],
876
+ imports: [
877
+ CommonModule,
878
+ RouterModule.forChild(StSapInstalledInstrumentsRoutingModule),
879
+ MatButtonModule,
880
+ MatRippleModule,
881
+ MatFormFieldModule,
882
+ MatInputModule,
883
+ MatSelectModule,
884
+ MatTooltipModule,
885
+ MatMenuModule,
886
+ MatIconModule,
887
+ MatChipsModule,
888
+ MatTableModule,
889
+ MatPaginatorModule,
890
+ MatListModule,
891
+ MatDatepickerModule,
892
+ MatNativeDateModule,
893
+ MatDialogModule,
894
+ MatTabsModule,
895
+ MatSnackBarModule,
896
+ MatCheckboxModule,
897
+ MatAutocompleteModule,
898
+ MatAutocompleteModule,
899
+ MatSortModule,
900
+ TranslateModule.forChild(),
901
+ StDateFormatModule,
902
+ ReactiveFormsModule,
903
+ NgxStMultiselectAutocompleteModule,
904
+ StSearchSelectsModule,
905
+ ],
906
+ providers: [SapInstalledInstrumentsService],
907
+ exports: [],
908
+ }]
909
+ }] });
910
+
911
+ /*
912
+ * Public API Surface of ngx-st-sap-installed-instruments
913
+ */
914
+
915
+ /**
916
+ * Generated bundle index. Do not edit.
917
+ */
918
+
919
+ export { ActivitiesListViewComponent, ActivityDetailsViewComponent, CallDetailsViewComponent, CallsListViewComponent, DataDetailsViewComponent, InstalledInstrumentSortByColumnEnum, InstalledInstrumentSortOrderEnum, SapInstalledInstrumentDetailsComponent, SapInstalledInstrumentListComponent, SapInstalledInstrumentListSearchComponent, SapInstalledInstrumentListTableComponent, SapInstalledInstrumentsService, ServiceContractDetailsViewComponent, ServiceContractsListViewComponent, ServiceContractsModalDetailsViewComponent, StSapInstalledInstrumentsModule };
920
+ //# sourceMappingURL=ngx-st-sap-installed-instruments.mjs.map