ngx-st-sap-installed-instruments 1.0.4 → 1.0.6
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.
- package/assets/base-card.scss +33 -0
- package/esm2020/lib/components/sap-installed-instrument-details/sap-installed-instrument-details.component.mjs +3 -3
- package/esm2020/lib/components/sap-installed-instrument-list/sap-installed-instrument-list-search/sap-installed-instrument-list-search.component.mjs +2 -2
- package/esm2020/lib/components/sap-installed-instrument-list/sap-installed-instrument-list.component.mjs +3 -3
- package/fesm2015/ngx-st-sap-installed-instruments.mjs +6 -6
- package/fesm2015/ngx-st-sap-installed-instruments.mjs.map +1 -1
- package/fesm2020/ngx-st-sap-installed-instruments.mjs +6 -6
- package/fesm2020/ngx-st-sap-installed-instruments.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
.card {
|
|
2
|
+
background: #fff;
|
|
3
|
+
border: none;
|
|
4
|
+
box-shadow: 0 1px 4px #00000024;
|
|
5
|
+
margin-bottom: 30px;
|
|
6
|
+
margin-top: 30px;
|
|
7
|
+
font-size: 1rem;
|
|
8
|
+
|
|
9
|
+
.card-header {
|
|
10
|
+
max-width: 380px;
|
|
11
|
+
text-align: center;
|
|
12
|
+
margin-left: auto !important;
|
|
13
|
+
margin-right: auto !important;
|
|
14
|
+
border-radius: 3px;
|
|
15
|
+
margin-top: -20px;
|
|
16
|
+
background: linear-gradient(60deg, #ffa726, #fb8c00) !important;
|
|
17
|
+
padding: 15px 30px;
|
|
18
|
+
border: none;
|
|
19
|
+
|
|
20
|
+
h4,
|
|
21
|
+
h3 {
|
|
22
|
+
margin: 0 !important;
|
|
23
|
+
color: #fff;
|
|
24
|
+
font-size: 1.5625rem;
|
|
25
|
+
line-height: 1.4em;
|
|
26
|
+
font-weight: 400;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.card-body {
|
|
31
|
+
position: relative;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -44,10 +44,10 @@ export class SapInstalledInstrumentDetailsComponent {
|
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
SapInstalledInstrumentDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentDetailsComponent, deps: [{ token: i1.SapInstalledInstrumentsService }, { token: i2.Location }], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
-
SapInstalledInstrumentDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentDetailsComponent, selector: "app-sap-installed-instrument-details", inputs: { id: "id", accessToken: "accessToken", territoryFilter: "territoryFilter" }, 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: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.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: i5.DataDetailsViewComponent, selector: "app-data-details-view", inputs: ["installedInstrument"] }, { kind: "component", type: i6.CallsListViewComponent, selector: "app-calls-list-view", inputs: ["calls", "contracts"] }, { kind: "component", type: i7.ServiceContractsListViewComponent, selector: "app-service-contracts-list-view", inputs: ["contracts"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
|
|
47
|
+
SapInstalledInstrumentDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentDetailsComponent, selector: "app-sap-installed-instrument-details", inputs: { id: "id", accessToken: "accessToken", territoryFilter: "territoryFilter" }, 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", ".card{background:#fff;border:none;box-shadow:0 1px 4px #00000024;margin-bottom:30px;margin-top:30px;font-size:1rem}.card .card-header{max-width:380px;text-align:center;margin-left:auto!important;margin-right:auto!important;border-radius:3px;margin-top:-20px;background:linear-gradient(60deg,#ffa726,#fb8c00)!important;padding:15px 30px;border:none}.card .card-header h4,.card .card-header h3{margin:0!important;color:#fff;font-size:1.5625rem;line-height:1.4em;font-weight:400}.card .card-body{position:relative}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.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: i5.DataDetailsViewComponent, selector: "app-data-details-view", inputs: ["installedInstrument"] }, { kind: "component", type: i6.CallsListViewComponent, selector: "app-calls-list-view", inputs: ["calls", "contracts"] }, { kind: "component", type: i7.ServiceContractsListViewComponent, selector: "app-service-contracts-list-view", inputs: ["contracts"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
|
|
48
48
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentDetailsComponent, decorators: [{
|
|
49
49
|
type: Component,
|
|
50
|
-
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"] }]
|
|
50
|
+
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", ".card{background:#fff;border:none;box-shadow:0 1px 4px #00000024;margin-bottom:30px;margin-top:30px;font-size:1rem}.card .card-header{max-width:380px;text-align:center;margin-left:auto!important;margin-right:auto!important;border-radius:3px;margin-top:-20px;background:linear-gradient(60deg,#ffa726,#fb8c00)!important;padding:15px 30px;border:none}.card .card-header h4,.card .card-header h3{margin:0!important;color:#fff;font-size:1.5625rem;line-height:1.4em;font-weight:400}.card .card-body{position:relative}\n"] }]
|
|
51
51
|
}], ctorParameters: function () { return [{ type: i1.SapInstalledInstrumentsService }, { type: i2.Location }]; }, propDecorators: { class: [{
|
|
52
52
|
type: HostBinding,
|
|
53
53
|
args: ['class']
|
|
@@ -58,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
58
58
|
}], territoryFilter: [{
|
|
59
59
|
type: Input
|
|
60
60
|
}] } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FwLWluc3RhbGxlZC1pbnN0cnVtZW50LWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXN0LXNhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudHMvc3JjL2xpYi9jb21wb25lbnRzL3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1kZXRhaWxzL3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1kZXRhaWxzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zdC1zYXAtaW5zdGFsbGVkLWluc3RydW1lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQtZGV0YWlscy9zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQtZGV0YWlscy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFJdEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7O0FBYXJDLE1BQU0sT0FBTyxzQ0FBc0M7SUFzQmpELFlBQ1UsNkJBQTZELEVBQzdELFFBQWtCO1FBRGxCLGtDQUE2QixHQUE3Qiw2QkFBNkIsQ0FBZ0M7UUFDN0QsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQXZCTixVQUFLLEdBQUcsd0JBQXdCLENBQUM7UUFldkQsY0FBUyxHQUFHLENBQUMsQ0FBQztRQUdkLFVBQUssR0FBbUIsRUFBRSxDQUFDO1FBQzNCLHFCQUFnQixHQUF1QixFQUFFLENBQUM7UUFNeEMsSUFBSSxDQUFDLDZCQUE2QixDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ2xFLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM1RSxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO0lBQy9CLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU8sWUFBWTtRQUNsQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLDZCQUE2QjthQUMzRCxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2FBQy9CLElBQUksQ0FDSCxHQUFHLENBQUMsbUJBQW1CLENBQUMsRUFBRTtZQUN4QixJQUFJLENBQUMsbUJBQW1CLEdBQUcsbUJBQW1CLENBQUM7UUFDakQsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUVKLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLDZCQUE2QjthQUM3QyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzthQUNqQixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV4QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLDZCQUE2QjthQUN4RCxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzthQUNyQixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7O21JQTFEVSxzQ0FBc0M7dUhBQXRDLHNDQUFzQyxtTkNqQm5ELHlwRUF5Q0E7MkZEeEJhLHNDQUFzQztrQkFSbEQsU0FBUzsrQkFDRSxzQ0FBc0M7NElBUTFCLEtBQUs7c0JBQTFCLFdBQVc7dUJBQUMsT0FBTztnQkFHcEIsRUFBRTtzQkFERCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixlQUFlO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNhcEluc3RhbGxlZEluc3RydW1lbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IFNhcEluc3RhbGxlZEluc3RydW1lbnRNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQubW9kZWwnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU2FwQ2FsbE1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3NhcC1jYWxsLm1vZGVsJztcclxuaW1wb3J0IHsgU2FwQ29udHJhY3RNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9zYXAtY29udHJhY3QubW9kZWwnO1xyXG5pbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQtZGV0YWlscycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1kZXRhaWxzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFtcclxuICAgICcuL3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1kZXRhaWxzLmNvbXBvbmVudC5zY3NzJyxcclxuICAgICcuLi8uLi8uLi8uLi9hc3NldHMvYmFzZS1jYXJkLnNjc3MnLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYXBJbnN0YWxsZWRJbnN0cnVtZW50RGV0YWlsc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGNsYXNzID0gJ2Rpc3BsYXktZmxleC1jb21wb25lbnQnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGlkOiBudW1iZXI7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYWNjZXNzVG9rZW46IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICB0ZXJyaXRvcnlGaWx0ZXI6IGJvb2xlYW47XHJcblxyXG4gIGluc3RhbGxlZEluc3RydW1lbnQkOiBPYnNlcnZhYmxlPFNhcEluc3RhbGxlZEluc3RydW1lbnRNb2RlbD47XHJcbiAgY2FsbHMkOiBPYnNlcnZhYmxlPFNhcENhbGxNb2RlbFtdPjtcclxuICBzZXJ2aWNlQ29udHJhY3RzJDogT2JzZXJ2YWJsZTxTYXBDb250cmFjdE1vZGVsW10+O1xyXG5cclxuICB0YWJBY3RpdmUgPSAwO1xyXG5cclxuICBpbnN0YWxsZWRJbnN0cnVtZW50OiBTYXBJbnN0YWxsZWRJbnN0cnVtZW50TW9kZWw7XHJcbiAgY2FsbHM6IFNhcENhbGxNb2RlbFtdID0gW107XHJcbiAgc2VydmljZUNvbnRyYWN0czogU2FwQ29udHJhY3RNb2RlbFtdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBzYXBJbnN0YWxsZWRJbnN0cnVtZW50U2VydmljZTogU2FwSW5zdGFsbGVkSW5zdHJ1bWVudHNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBsb2NhdGlvbjogTG9jYXRpb25cclxuICApIHtcclxuICAgIHRoaXMuc2FwSW5zdGFsbGVkSW5zdHJ1bWVudFNlcnZpY2UuYWNjZXNzVG9rZW4gPSB0aGlzLmFjY2Vzc1Rva2VuO1xyXG4gICAgdGhpcy5zYXBJbnN0YWxsZWRJbnN0cnVtZW50U2VydmljZS50ZXJyaXRvcnlGaWx0ZXIgPSB0aGlzLnRlcnJpdG9yeUZpbHRlcjtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkVGFic0RhdGEoKTtcclxuICB9XHJcblxyXG4gIHRhYkNoYW5nZWQoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy50YWJBY3RpdmUgPSBldmVudC5pbmRleDtcclxuICB9XHJcblxyXG4gIGdvQmFjaygpIHtcclxuICAgIHRoaXMubG9jYXRpb24uYmFjaygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkVGFic0RhdGEoKSB7XHJcbiAgICB0aGlzLmluc3RhbGxlZEluc3RydW1lbnQkID0gdGhpcy5zYXBJbnN0YWxsZWRJbnN0cnVtZW50U2VydmljZVxyXG4gICAgICAuZ2V0SW5zdGFsbGVkSW5zdHJ1bWVudCh0aGlzLmlkKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICB0YXAoaW5zdGFsbGVkSW5zdHJ1bWVudCA9PiB7XHJcbiAgICAgICAgICB0aGlzLmluc3RhbGxlZEluc3RydW1lbnQgPSBpbnN0YWxsZWRJbnN0cnVtZW50O1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcblxyXG4gICAgdGhpcy5jYWxscyQgPSB0aGlzLnNhcEluc3RhbGxlZEluc3RydW1lbnRTZXJ2aWNlXHJcbiAgICAgIC5nZXRDYWxscyh0aGlzLmlkKVxyXG4gICAgICAucGlwZSh0YXAocmVzID0+ICh0aGlzLmNhbGxzID0gcmVzKSkpO1xyXG5cclxuICAgIHRoaXMuc2VydmljZUNvbnRyYWN0cyQgPSB0aGlzLnNhcEluc3RhbGxlZEluc3RydW1lbnRTZXJ2aWNlXHJcbiAgICAgIC5nZXRDb250cmFjdHModGhpcy5pZClcclxuICAgICAgLnBpcGUodGFwKHJlcyA9PiAodGhpcy5zZXJ2aWNlQ29udHJhY3RzID0gcmVzKSkpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkIG5vLWN1dFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgY2FyZC1oZWFkZXItd2FybmluZ1wiPlxyXG4gICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlXCI+e3snc2FwQWRtaW5JbnN0YWxsZWRJbnN0cnVtZW50LnRpdGxlSW5zdGFsbGVkSW5zdHJ1bWVudERldGFpbHMnIHwgdHJhbnNsYXRlfX08L2gzPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGNsYXNzPVwiYmFjay1saW5rXCIgKGNsaWNrKT1cImdvQmFjaygpXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zXCI+a2V5Ym9hcmRfYmFja3NwYWNlPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgIDxtYXQtdGFiLWdyb3VwIChzZWxlY3RlZFRhYkNoYW5nZSk9XCJ0YWJDaGFuZ2VkKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtdGFiIGxhYmVsPVwie3snc2FwQWRtaW5JbnN0YWxsZWRJbnN0cnVtZW50Lmluc3RydW1lbnREZXRhaWxzJyB8IHRyYW5zbGF0ZX19XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImluc3RhbGxlZEluc3RydW1lbnQkIHwgYXN5bmNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1kYXRhLWRldGFpbHMtdmlld1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidGFiQWN0aXZlID09PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5zdGFsbGVkSW5zdHJ1bWVudF09XCJpbnN0YWxsZWRJbnN0cnVtZW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYXBwLWRhdGEtZGV0YWlscy12aWV3PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9tYXQtdGFiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC10YWIgbGFiZWw9XCJ7eydzYXBBZG1pbkluc3RhbGxlZEluc3RydW1lbnQuY2FsbHMnIHwgdHJhbnNsYXRlfX0gKHt7Y2FsbHMubGVuZ3RoIHx8IDB9fSlcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2FsbHMkIHwgYXN5bmNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1jYWxscy1saXN0LXZpZXdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRhYkFjdGl2ZSA9PT0gMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NhbGxzXT1cImNhbGxzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29udHJhY3RzXT1cInNlcnZpY2VDb250cmFjdHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9hcHAtY2FsbHMtbGlzdC12aWV3PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9tYXQtdGFiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC10YWIgbGFiZWw9XCJ7eydzYXBBZG1pbkluc3RhbGxlZEluc3RydW1lbnQuc2VydmljZUNvbnRyYWN0cycgfCB0cmFuc2xhdGV9fSAoe3tzZXJ2aWNlQ29udHJhY3RzLmxlbmd0aCB8fCAwfX0pXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlcnZpY2VDb250cmFjdHMkIHwgYXN5bmNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1zZXJ2aWNlLWNvbnRyYWN0cy1saXN0LXZpZXdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRhYkFjdGl2ZSA9PT0gMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRyYWN0c109XCJzZXJ2aWNlQ29udHJhY3RzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYXBwLXNlcnZpY2UtY29udHJhY3RzLWxpc3Qtdmlldz5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDwvbWF0LXRhYj5cclxuICAgICAgICAgICAgPC9tYXQtdGFiLWdyb3VwPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -121,10 +121,10 @@ export class SapInstalledInstrumentListSearchComponent {
|
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
SapInstalledInstrumentListSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListSearchComponent, deps: [{ token: i1.SapInstalledInstrumentsService }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i3.NonNullableFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
124
|
-
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 [searchLabel]=\"\r\n 'sapAdminInstalledInstrument.applicationPlaceholder' | translate\r\n \"\r\n [settings]=\"{\r\n getFilteredOptions: this.getFilteredOptions\r\n }\"\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: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.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.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.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.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.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i13.NgxStMultiselectAutocompleteComponent, selector: "ngx-st-multiselect-autocomplete[settings]", inputs: ["label", "searchLabel", "settings", "initSelectedData", "maxLengthSelectedData", "clearAfterSelect"], 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", "showEmptyOption", "options"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i15.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
124
|
+
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 [searchLabel]=\"\r\n 'sapAdminInstalledInstrument.applicationPlaceholder' | translate\r\n \"\r\n [settings]=\"{\r\n getFilteredOptions: this.getFilteredOptions\r\n }\"\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: [".hide{display:none}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.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.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.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.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.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i13.NgxStMultiselectAutocompleteComponent, selector: "ngx-st-multiselect-autocomplete[settings]", inputs: ["label", "searchLabel", "settings", "initSelectedData", "maxLengthSelectedData", "clearAfterSelect"], 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", "showEmptyOption", "options"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i15.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
125
125
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListSearchComponent, decorators: [{
|
|
126
126
|
type: Component,
|
|
127
|
-
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 [searchLabel]=\"\r\n 'sapAdminInstalledInstrument.applicationPlaceholder' | translate\r\n \"\r\n [settings]=\"{\r\n getFilteredOptions: this.getFilteredOptions\r\n }\"\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" }]
|
|
127
|
+
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 [searchLabel]=\"\r\n 'sapAdminInstalledInstrument.applicationPlaceholder' | translate\r\n \"\r\n [settings]=\"{\r\n getFilteredOptions: this.getFilteredOptions\r\n }\"\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: [".hide{display:none}\n"] }]
|
|
128
128
|
}], ctorParameters: function () { return [{ type: i1.SapInstalledInstrumentsService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.NonNullableFormBuilder }]; }, propDecorators: { multiselectAutocomplete: [{
|
|
129
129
|
type: ViewChild,
|
|
130
130
|
args: ['multiselectAutocomplete']
|
|
@@ -70,10 +70,10 @@ export class SapInstalledInstrumentListComponent extends StSubscribeDestroyCompo
|
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
SapInstalledInstrumentListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListComponent, deps: [{ token: i1.SapInstalledInstrumentsService }, { token: i0.ChangeDetectorRef }, { token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
|
|
73
|
-
SapInstalledInstrumentListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentListComponent, selector: "app-sap-installed-instrument-list", inputs: { accessToken: "accessToken", territoryFilter: "territoryFilter" }, 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: i3.SapInstalledInstrumentListSearchComponent, selector: "app-sap-installed-instrument-list-search", outputs: ["filtersChanged"] }, { kind: "component", type: i4.SapInstalledInstrumentListTableComponent, selector: "app-sap-installed-instrument-list-table", inputs: ["tableData"], outputs: ["sortChanged"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
73
|
+
SapInstalledInstrumentListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentListComponent, selector: "app-sap-installed-instrument-list", inputs: { accessToken: "accessToken", territoryFilter: "territoryFilter" }, 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: ["", ".card{background:#fff;border:none;box-shadow:0 1px 4px #00000024;margin-bottom:30px;margin-top:30px;font-size:1rem}.card .card-header{max-width:380px;text-align:center;margin-left:auto!important;margin-right:auto!important;border-radius:3px;margin-top:-20px;background:linear-gradient(60deg,#ffa726,#fb8c00)!important;padding:15px 30px;border:none}.card .card-header h4,.card .card-header h3{margin:0!important;color:#fff;font-size:1.5625rem;line-height:1.4em;font-weight:400}.card .card-body{position:relative}\n"], dependencies: [{ kind: "component", type: i3.SapInstalledInstrumentListSearchComponent, selector: "app-sap-installed-instrument-list-search", outputs: ["filtersChanged"] }, { kind: "component", type: i4.SapInstalledInstrumentListTableComponent, selector: "app-sap-installed-instrument-list-table", inputs: ["tableData"], outputs: ["sortChanged"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
74
74
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListComponent, decorators: [{
|
|
75
75
|
type: Component,
|
|
76
|
-
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" }]
|
|
76
|
+
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", styles: [".card{background:#fff;border:none;box-shadow:0 1px 4px #00000024;margin-bottom:30px;margin-top:30px;font-size:1rem}.card .card-header{max-width:380px;text-align:center;margin-left:auto!important;margin-right:auto!important;border-radius:3px;margin-top:-20px;background:linear-gradient(60deg,#ffa726,#fb8c00)!important;padding:15px 30px;border:none}.card .card-header h4,.card .card-header h3{margin:0!important;color:#fff;font-size:1.5625rem;line-height:1.4em;font-weight:400}.card .card-body{position:relative}\n"] }]
|
|
77
77
|
}], ctorParameters: function () { return [{ type: i1.SapInstalledInstrumentsService }, { type: i0.ChangeDetectorRef }, { type: i2.Router }, { type: i2.ActivatedRoute }]; }, propDecorators: { class: [{
|
|
78
78
|
type: HostBinding,
|
|
79
79
|
args: ['class']
|
|
@@ -82,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
82
82
|
}], territoryFilter: [{
|
|
83
83
|
type: Input
|
|
84
84
|
}] } });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FwLWluc3RhbGxlZC1pbnN0cnVtZW50LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXN0LXNhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudHMvc3JjL2xpYi9jb21wb25lbnRzL3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0L3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zdC1zYXAtaW5zdGFsbGVkLWluc3RydW1lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQtbGlzdC9zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7O0FBV3BFLE1BQU0sT0FBTyxtQ0FDWCxTQUFRLDJCQUEyQjtJQWtCbkMsWUFDVSw2QkFBNkQsRUFDN0QsY0FBaUMsRUFDakMsTUFBYyxFQUNkLGNBQThCO1FBRXRDLEtBQUssRUFBRSxDQUFDO1FBTEEsa0NBQTZCLEdBQTdCLDZCQUE2QixDQUFnQztRQUM3RCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDakMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQW5CbEIsVUFBSyxHQUFHLHdCQUF3QixDQUFDO1FBUXZELHlCQUFvQixHQUFzQyxFQUFFLENBQUM7UUFFckQsc0JBQWlCLEdBRXhCLEVBQUUsQ0FBQztRQUNJLG9CQUFlLEdBQWUsRUFBRSxDQUFDO1FBU3ZDLElBQUksQ0FBQyw2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QUFZLEVBQUUsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O2dJQTdGVSxtQ0FBbUM7b0hBQW5DLG1DQUFtQyw2TkNyQmhELGt1QkFzQkE7MkZERGEsbUNBQW1DO2tCQU4vQyxTQUFTOytCQUNFLG1DQUFtQyxtQkFHNUIsdUJBQXVCLENBQUMsTUFBTTt1TUFNekIsS0FBSztzQkFBMUIsV0FBVzt1QkFBQyxPQUFPO2dCQUdwQixXQUFXO3NCQURWLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTYXBJbnN0YWxsZWRJbnN0cnVtZW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYXAtaW5zdGFsbGVkLWluc3RydW1lbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTYXBJbnN0YWxsZWRJbnN0cnVtZW50TGlzdE1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0Lm1vZGVsJztcclxuaW1wb3J0IHsgU3RTdWJzY3JpYmVEZXN0cm95Q29tcG9uZW50IH0gZnJvbSAnbmd4LXN0LWJhc2UtZnVuY3Rpb25zJztcclxuaW1wb3J0IHsgSW5zdGFsbGVkSW5zdHJ1bWVudEZvcm1Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9pbnN0YWxsZWQtaW5zdHJ1bWVudC1mb3JtLm1vZGVsJztcclxuaW1wb3J0IHsgU29ydCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXNhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2FwLWluc3RhbGxlZC1pbnN0cnVtZW50LWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYXBJbnN0YWxsZWRJbnN0cnVtZW50TGlzdENvbXBvbmVudFxyXG4gIGV4dGVuZHMgU3RTdWJzY3JpYmVEZXN0cm95Q29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBPbkluaXRcclxue1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBjbGFzcyA9ICdkaXNwbGF5LWZsZXgtY29tcG9uZW50JztcclxuXHJcbiAgQElucHV0KClcclxuICBhY2Nlc3NUb2tlbjogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHRlcnJpdG9yeUZpbHRlcjogYm9vbGVhbjtcclxuXHJcbiAgaW5zdGFsbGVkSW5zdHJ1bWVudHM6IFNhcEluc3RhbGxlZEluc3RydW1lbnRMaXN0TW9kZWxbXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIGxhc3RTZWFyY2hGaWx0ZXJzOiBJbnN0YWxsZWRJbnN0cnVtZW50Rm9ybU1vZGVsIHwgYW55ID0gPFxyXG4gICAgSW5zdGFsbGVkSW5zdHJ1bWVudEZvcm1Nb2RlbFxyXG4gID57fTtcclxuICBwcml2YXRlIGxhc3RTZWFyY2hTb3J0czogU29ydCA9IDxTb3J0Pnt9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgc2FwSW5zdGFsbGVkSW5zdHJ1bWVudFNlcnZpY2U6IFNhcEluc3RhbGxlZEluc3RydW1lbnRzU2VydmljZSxcclxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5zYXBJbnN0YWxsZWRJbnN0cnVtZW50U2VydmljZS5hY2Nlc3NUb2tlbiA9IHRoaXMuYWNjZXNzVG9rZW47XHJcbiAgICB0aGlzLnNhcEluc3RhbGxlZEluc3RydW1lbnRTZXJ2aWNlLnRlcnJpdG9yeUZpbHRlciA9IHRoaXMudGVycml0b3J5RmlsdGVyO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBxdWVyeVBhcmFtc0tleXMgPSBPYmplY3Qua2V5cyhcclxuICAgICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcyB8fCB7fVxyXG4gICAgKTtcclxuXHJcbiAgICBpZiAocXVlcnlQYXJhbXNLZXlzLmxlbmd0aCA+IDApIHtcclxuICAgICAgcXVlcnlQYXJhbXNLZXlzLmZvckVhY2gocXVlcnlQYXJhbSA9PiB7XHJcbiAgICAgICAgaWYgKHF1ZXJ5UGFyYW0gPT09ICdhY3RpdmUnIHx8IHF1ZXJ5UGFyYW0gPT09ICdkaXJlY3Rpb24nKSB7XHJcbiAgICAgICAgICB0aGlzLmxhc3RTZWFyY2hTb3J0c1txdWVyeVBhcmFtXSA9XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbXNbcXVlcnlQYXJhbV07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMubGFzdFNlYXJjaEZpbHRlcnNbcXVlcnlQYXJhbV0gPVxyXG4gICAgICAgICAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zW3F1ZXJ5UGFyYW1dO1xyXG4gICAgICAgICAgdGhpcy5sYXN0U2VhcmNoRmlsdGVyc1snaW5zdGFsbGF0aW9uRGF0ZUZyb20nXSA9IHRoaXMuYWN0aXZhdGVkUm91dGVcclxuICAgICAgICAgICAgLnNuYXBzaG90LnF1ZXJ5UGFyYW1zWydpbnN0YWxsYXRpb25EYXRlRnJvbSddXHJcbiAgICAgICAgICAgID8gbmV3IERhdGUoXHJcbiAgICAgICAgICAgICAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zWydpbnN0YWxsYXRpb25EYXRlRnJvbSddXHJcbiAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICA6IG51bGw7XHJcbiAgICAgICAgICB0aGlzLmxhc3RTZWFyY2hGaWx0ZXJzWydpbnN0YWxsYXRpb25EYXRlVG8nXSA9IHRoaXMuYWN0aXZhdGVkUm91dGVcclxuICAgICAgICAgICAgLnNuYXBzaG90LnF1ZXJ5UGFyYW1zWydpbnN0YWxsYXRpb25EYXRlVG8nXVxyXG4gICAgICAgICAgICA/IG5ldyBEYXRlKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1snaW5zdGFsbGF0aW9uRGF0ZVRvJ11cclxuICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgIDogbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubG9hZEluc3RhbGxlZEluc3RydW1lbnRzKHRoaXMubGFzdFNlYXJjaEZpbHRlcnMsIHRoaXMubGFzdFNlYXJjaFNvcnRzKTtcclxuICB9XHJcblxyXG4gIGZpbHRlcnNDaGFuZ2VkKGV2ZW50OiBJbnN0YWxsZWRJbnN0cnVtZW50Rm9ybU1vZGVsKSB7XHJcbiAgICB0aGlzLmxvYWRJbnN0YWxsZWRJbnN0cnVtZW50cyhldmVudCwgdGhpcy5sYXN0U2VhcmNoU29ydHMpO1xyXG4gIH1cclxuXHJcbiAgc29ydENoYW5nZWQoZXZlbnQ6IFNvcnQpIHtcclxuICAgIHRoaXMubG9hZEluc3RhbGxlZEluc3RydW1lbnRzKHRoaXMubGFzdFNlYXJjaEZpbHRlcnMsIGV2ZW50KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbG9hZEluc3RhbGxlZEluc3RydW1lbnRzKFxyXG4gICAgc2VhcmNoRm9ybTogSW5zdGFsbGVkSW5zdHJ1bWVudEZvcm1Nb2RlbCxcclxuICAgIHNvcnQ6IFNvcnRcclxuICApIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtdLCB7XHJcbiAgICAgIHF1ZXJ5UGFyYW1zOiB7XHJcbiAgICAgICAgLi4uc2VhcmNoRm9ybSxcclxuICAgICAgICBpbnN0YWxsYXRpb25EYXRlRnJvbTpcclxuICAgICAgICAgIHNlYXJjaEZvcm0uaW5zdGFsbGF0aW9uRGF0ZUZyb20/LnRvSVNPU3RyaW5nKCkgfHwgJycsXHJcbiAgICAgICAgaW5zdGFsbGF0aW9uRGF0ZVRvOiBzZWFyY2hGb3JtLmluc3RhbGxhdGlvbkRhdGVUbz8udG9JU09TdHJpbmcoKSB8fCAnJyxcclxuICAgICAgICAuLi5zb3J0LFxyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5zYXBJbnN0YWxsZWRJbnN0cnVtZW50U2VydmljZVxyXG4gICAgICAuZ2V0SW5zdGFsbGVkSW5zdHJ1bWVudExpc3Qoc2VhcmNoRm9ybSwgc29ydClcclxuICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICAgIHRoaXMubGFzdFNlYXJjaEZpbHRlcnMgPSBzZWFyY2hGb3JtO1xyXG4gICAgICAgIHRoaXMubGFzdFNlYXJjaFNvcnRzID0gc29ydDtcclxuXHJcbiAgICAgICAgdGhpcy5pbnN0YWxsZWRJbnN0cnVtZW50cyA9IHJlcztcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZCBuby1jdXRcIj5cclxuICA8ZGl2IGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGNhcmQtaGVhZGVyLXdhcm5pbmdcIj5cclxuICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZVwiPlxyXG4gICAgICAgIHt7XHJcbiAgICAgICAgICAnc2FwQWRtaW5JbnN0YWxsZWRJbnN0cnVtZW50LnRpdGxlSW5zdGFsbGVkSW5zdHJ1bWVudExpc3QnIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgfX1cclxuICAgICAgPC9oMz5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgICAgPGFwcC1zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQtbGlzdC1zZWFyY2hcclxuICAgICAgICAoZmlsdGVyc0NoYW5nZWQpPVwiZmlsdGVyc0NoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgID48L2FwcC1zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQtbGlzdC1zZWFyY2g+XHJcblxyXG4gICAgICA8YXBwLXNhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0LXRhYmxlXHJcbiAgICAgICAgW3RhYmxlRGF0YV09XCJpbnN0YWxsZWRJbnN0cnVtZW50c1wiXHJcbiAgICAgICAgKHNvcnRDaGFuZ2VkKT1cInNvcnRDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICA+PC9hcHAtc2FwLWluc3RhbGxlZC1pbnN0cnVtZW50LWxpc3QtdGFibGU+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FwLWluc3RhbGxlZC1pbnN0cnVtZW50LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXN0LXNhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudHMvc3JjL2xpYi9jb21wb25lbnRzL3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0L3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zdC1zYXAtaW5zdGFsbGVkLWluc3RydW1lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQtbGlzdC9zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7O0FBY3BFLE1BQU0sT0FBTyxtQ0FDWCxTQUFRLDJCQUEyQjtJQWtCbkMsWUFDVSw2QkFBNkQsRUFDN0QsY0FBaUMsRUFDakMsTUFBYyxFQUNkLGNBQThCO1FBRXRDLEtBQUssRUFBRSxDQUFDO1FBTEEsa0NBQTZCLEdBQTdCLDZCQUE2QixDQUFnQztRQUM3RCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDakMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQW5CbEIsVUFBSyxHQUFHLHdCQUF3QixDQUFDO1FBUXZELHlCQUFvQixHQUFzQyxFQUFFLENBQUM7UUFFckQsc0JBQWlCLEdBRXhCLEVBQUUsQ0FBQztRQUNJLG9CQUFlLEdBQWUsRUFBRSxDQUFDO1FBU3ZDLElBQUksQ0FBQyw2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QUFZLEVBQUUsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O2dJQTdGVSxtQ0FBbUM7b0hBQW5DLG1DQUFtQyw2TkN4QmhELGt1QkFzQkE7MkZERWEsbUNBQW1DO2tCQVQvQyxTQUFTOytCQUNFLG1DQUFtQyxtQkFNNUIsdUJBQXVCLENBQUMsTUFBTTt1TUFNekIsS0FBSztzQkFBMUIsV0FBVzt1QkFBQyxPQUFPO2dCQUdwQixXQUFXO3NCQURWLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTYXBJbnN0YWxsZWRJbnN0cnVtZW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYXAtaW5zdGFsbGVkLWluc3RydW1lbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTYXBJbnN0YWxsZWRJbnN0cnVtZW50TGlzdE1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3NhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0Lm1vZGVsJztcclxuaW1wb3J0IHsgU3RTdWJzY3JpYmVEZXN0cm95Q29tcG9uZW50IH0gZnJvbSAnbmd4LXN0LWJhc2UtZnVuY3Rpb25zJztcclxuaW1wb3J0IHsgSW5zdGFsbGVkSW5zdHJ1bWVudEZvcm1Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9pbnN0YWxsZWQtaW5zdHJ1bWVudC1mb3JtLm1vZGVsJztcclxuaW1wb3J0IHsgU29ydCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXNhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2FwLWluc3RhbGxlZC1pbnN0cnVtZW50LWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogW1xyXG4gICAgJy4vc2FwLWluc3RhbGxlZC1pbnN0cnVtZW50LWxpc3QuY29tcG9uZW50LnNjc3MnLFxyXG4gICAgJy4uLy4uLy4uLy4uL2Fzc2V0cy9iYXNlLWNhcmQuc2NzcycsXHJcbiAgXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhcEluc3RhbGxlZEluc3RydW1lbnRMaXN0Q29tcG9uZW50XHJcbiAgZXh0ZW5kcyBTdFN1YnNjcmliZURlc3Ryb3lDb21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uSW5pdFxyXG57XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGNsYXNzID0gJ2Rpc3BsYXktZmxleC1jb21wb25lbnQnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdGVycml0b3J5RmlsdGVyOiBib29sZWFuO1xyXG5cclxuICBpbnN0YWxsZWRJbnN0cnVtZW50czogU2FwSW5zdGFsbGVkSW5zdHJ1bWVudExpc3RNb2RlbFtdID0gW107XHJcblxyXG4gIHByaXZhdGUgbGFzdFNlYXJjaEZpbHRlcnM6IEluc3RhbGxlZEluc3RydW1lbnRGb3JtTW9kZWwgfCBhbnkgPSA8XHJcbiAgICBJbnN0YWxsZWRJbnN0cnVtZW50Rm9ybU1vZGVsXHJcbiAgPnt9O1xyXG4gIHByaXZhdGUgbGFzdFNlYXJjaFNvcnRzOiBTb3J0ID0gPFNvcnQ+e307XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBzYXBJbnN0YWxsZWRJbnN0cnVtZW50U2VydmljZTogU2FwSW5zdGFsbGVkSW5zdHJ1bWVudHNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICB0aGlzLnNhcEluc3RhbGxlZEluc3RydW1lbnRTZXJ2aWNlLmFjY2Vzc1Rva2VuID0gdGhpcy5hY2Nlc3NUb2tlbjtcclxuICAgIHRoaXMuc2FwSW5zdGFsbGVkSW5zdHJ1bWVudFNlcnZpY2UudGVycml0b3J5RmlsdGVyID0gdGhpcy50ZXJyaXRvcnlGaWx0ZXI7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHF1ZXJ5UGFyYW1zS2V5cyA9IE9iamVjdC5rZXlzKFxyXG4gICAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zIHx8IHt9XHJcbiAgICApO1xyXG5cclxuICAgIGlmIChxdWVyeVBhcmFtc0tleXMubGVuZ3RoID4gMCkge1xyXG4gICAgICBxdWVyeVBhcmFtc0tleXMuZm9yRWFjaChxdWVyeVBhcmFtID0+IHtcclxuICAgICAgICBpZiAocXVlcnlQYXJhbSA9PT0gJ2FjdGl2ZScgfHwgcXVlcnlQYXJhbSA9PT0gJ2RpcmVjdGlvbicpIHtcclxuICAgICAgICAgIHRoaXMubGFzdFNlYXJjaFNvcnRzW3F1ZXJ5UGFyYW1dID1cclxuICAgICAgICAgICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1txdWVyeVBhcmFtXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5sYXN0U2VhcmNoRmlsdGVyc1txdWVyeVBhcmFtXSA9XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbXNbcXVlcnlQYXJhbV07XHJcbiAgICAgICAgICB0aGlzLmxhc3RTZWFyY2hGaWx0ZXJzWydpbnN0YWxsYXRpb25EYXRlRnJvbSddID0gdGhpcy5hY3RpdmF0ZWRSb3V0ZVxyXG4gICAgICAgICAgICAuc25hcHNob3QucXVlcnlQYXJhbXNbJ2luc3RhbGxhdGlvbkRhdGVGcm9tJ11cclxuICAgICAgICAgICAgPyBuZXcgRGF0ZShcclxuICAgICAgICAgICAgICAgIHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbXNbJ2luc3RhbGxhdGlvbkRhdGVGcm9tJ11cclxuICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgIDogbnVsbDtcclxuICAgICAgICAgIHRoaXMubGFzdFNlYXJjaEZpbHRlcnNbJ2luc3RhbGxhdGlvbkRhdGVUbyddID0gdGhpcy5hY3RpdmF0ZWRSb3V0ZVxyXG4gICAgICAgICAgICAuc25hcHNob3QucXVlcnlQYXJhbXNbJ2luc3RhbGxhdGlvbkRhdGVUbyddXHJcbiAgICAgICAgICAgID8gbmV3IERhdGUoXHJcbiAgICAgICAgICAgICAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zWydpbnN0YWxsYXRpb25EYXRlVG8nXVxyXG4gICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgOiBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5sb2FkSW5zdGFsbGVkSW5zdHJ1bWVudHModGhpcy5sYXN0U2VhcmNoRmlsdGVycywgdGhpcy5sYXN0U2VhcmNoU29ydHMpO1xyXG4gIH1cclxuXHJcbiAgZmlsdGVyc0NoYW5nZWQoZXZlbnQ6IEluc3RhbGxlZEluc3RydW1lbnRGb3JtTW9kZWwpIHtcclxuICAgIHRoaXMubG9hZEluc3RhbGxlZEluc3RydW1lbnRzKGV2ZW50LCB0aGlzLmxhc3RTZWFyY2hTb3J0cyk7XHJcbiAgfVxyXG5cclxuICBzb3J0Q2hhbmdlZChldmVudDogU29ydCkge1xyXG4gICAgdGhpcy5sb2FkSW5zdGFsbGVkSW5zdHJ1bWVudHModGhpcy5sYXN0U2VhcmNoRmlsdGVycywgZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkSW5zdGFsbGVkSW5zdHJ1bWVudHMoXHJcbiAgICBzZWFyY2hGb3JtOiBJbnN0YWxsZWRJbnN0cnVtZW50Rm9ybU1vZGVsLFxyXG4gICAgc29ydDogU29ydFxyXG4gICkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtcclxuICAgICAgcXVlcnlQYXJhbXM6IHtcclxuICAgICAgICAuLi5zZWFyY2hGb3JtLFxyXG4gICAgICAgIGluc3RhbGxhdGlvbkRhdGVGcm9tOlxyXG4gICAgICAgICAgc2VhcmNoRm9ybS5pbnN0YWxsYXRpb25EYXRlRnJvbT8udG9JU09TdHJpbmcoKSB8fCAnJyxcclxuICAgICAgICBpbnN0YWxsYXRpb25EYXRlVG86IHNlYXJjaEZvcm0uaW5zdGFsbGF0aW9uRGF0ZVRvPy50b0lTT1N0cmluZygpIHx8ICcnLFxyXG4gICAgICAgIC4uLnNvcnQsXHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLnNhcEluc3RhbGxlZEluc3RydW1lbnRTZXJ2aWNlXHJcbiAgICAgIC5nZXRJbnN0YWxsZWRJbnN0cnVtZW50TGlzdChzZWFyY2hGb3JtLCBzb3J0KVxyXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgdGhpcy5sYXN0U2VhcmNoRmlsdGVycyA9IHNlYXJjaEZvcm07XHJcbiAgICAgICAgdGhpcy5sYXN0U2VhcmNoU29ydHMgPSBzb3J0O1xyXG5cclxuICAgICAgICB0aGlzLmluc3RhbGxlZEluc3RydW1lbnRzID0gcmVzO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkIG5vLWN1dFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJjYXJkXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgY2FyZC1oZWFkZXItd2FybmluZ1wiPlxyXG4gICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlXCI+XHJcbiAgICAgICAge3tcclxuICAgICAgICAgICdzYXBBZG1pbkluc3RhbGxlZEluc3RydW1lbnQudGl0bGVJbnN0YWxsZWRJbnN0cnVtZW50TGlzdCcgfCB0cmFuc2xhdGVcclxuICAgICAgICB9fVxyXG4gICAgICA8L2gzPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICA8YXBwLXNhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0LXNlYXJjaFxyXG4gICAgICAgIChmaWx0ZXJzQ2hhbmdlZCk9XCJmaWx0ZXJzQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgPjwvYXBwLXNhcC1pbnN0YWxsZWQtaW5zdHJ1bWVudC1saXN0LXNlYXJjaD5cclxuXHJcbiAgICAgIDxhcHAtc2FwLWluc3RhbGxlZC1pbnN0cnVtZW50LWxpc3QtdGFibGVcclxuICAgICAgICBbdGFibGVEYXRhXT1cImluc3RhbGxlZEluc3RydW1lbnRzXCJcclxuICAgICAgICAoc29ydENoYW5nZWQpPVwic29ydENoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgID48L2FwcC1zYXAtaW5zdGFsbGVkLWluc3RydW1lbnQtbGlzdC10YWJsZT5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|