@unifylib/ui-lib 1.0.3 → 1.1.4
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/esm2022/iq-ui-lib.mjs +5 -0
- package/esm2022/lib/base-model/SearchStrConfig.mjs +11 -0
- package/esm2022/lib/base-model/api-response.mjs +2 -0
- package/esm2022/lib/base-model/audit-log-entry.mjs +3 -0
- package/esm2022/lib/base-model/button-action-settings.mjs +16 -0
- package/esm2022/lib/base-model/column-def.model.mjs +28 -0
- package/esm2022/lib/base-model/do-action-request.mjs +8 -0
- package/esm2022/lib/base-model/field-action.mjs +6 -0
- package/esm2022/lib/base-model/field-filter.model.mjs +3 -0
- package/esm2022/lib/base-model/field-info.mjs +57 -0
- package/esm2022/lib/base-model/field-predicate.model.mjs +10 -0
- package/esm2022/lib/base-model/filter-request.mjs +13 -0
- package/esm2022/lib/base-model/filter.model.mjs +25 -0
- package/esm2022/lib/base-model/get-items-list.mjs +10 -0
- package/esm2022/lib/base-model/index.mjs +12 -0
- package/esm2022/lib/base-model/items-total.model.mjs +8 -0
- package/esm2022/lib/base-model/line-item.model.mjs +11 -0
- package/esm2022/lib/base-model/lookupItem.mjs +16 -0
- package/esm2022/lib/base-model/page-info.mjs +17 -0
- package/esm2022/lib/base-model/report-request.model.mjs +17 -0
- package/esm2022/lib/base-model/response-envelop.model.mjs +10 -0
- package/esm2022/lib/base-model/snack-message.model.mjs +11 -0
- package/esm2022/lib/base-model/table-column.interface.mjs +2 -0
- package/esm2022/lib/base-model/table-page-user-action.interface.mjs +21 -0
- package/esm2022/lib/base-model/workflow/workflow-steps.model.mjs +9 -0
- package/esm2022/lib/base-model/workflow/workflow.model.mjs +42 -0
- package/esm2022/lib/components/action-comment/action-comment.component.mjs +101 -0
- package/esm2022/lib/components/action-confirmation/action-confirmation.component.mjs +55 -0
- package/esm2022/lib/components/activity-report-form/activity-report-form.component.mjs +499 -0
- package/esm2022/lib/components/advanced-filter/field-filter/field-filter.component.mjs +41 -0
- package/esm2022/lib/components/advanced-filter/filter-builder/filter-builder.component.mjs +162 -0
- package/esm2022/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.mjs +70 -0
- package/esm2022/lib/components/audit-log-list/audit-log.component.mjs +99 -0
- package/esm2022/lib/components/auto-complete/auto-complete.component.mjs +292 -0
- package/esm2022/lib/components/base-form/base-form.component.mjs +297 -0
- package/esm2022/lib/components/base-form-canvas/base-form-canvas.component.mjs +591 -0
- package/esm2022/lib/components/base-input-dialog/base-input-dialog.component.mjs +72 -0
- package/esm2022/lib/components/base-table/base-table.component.mjs +514 -0
- package/esm2022/lib/components/button-actions/button-actions.component.mjs +70 -0
- package/esm2022/lib/components/editable-base-table/editable-base-table.component.mjs +496 -0
- package/esm2022/lib/components/equation-builder/equation-builder.component.mjs +112 -0
- package/esm2022/lib/components/item-line-editor/item-line-editor.component.mjs +299 -0
- package/esm2022/lib/components/multi-auto-complete/multi-auto-complete.component.mjs +278 -0
- package/esm2022/lib/components/paginator/paginator.component.mjs +91 -0
- package/esm2022/lib/components/report-details-dialog/report-details-dialog.component.mjs +102 -0
- package/esm2022/lib/components/report-form/report-form.component.mjs +498 -0
- package/esm2022/lib/components/search-bar/search-bar.component.mjs +62 -0
- package/esm2022/lib/components/section-form-canvas/section-form-canvas.component.mjs +81 -0
- package/esm2022/lib/components/shared/action-button/action-button.component.mjs +59 -0
- package/esm2022/lib/components/shared/action-card/action-card.component.mjs +93 -0
- package/esm2022/lib/components/shared/attachment-uploader/attachment-uploader.component.mjs +70 -0
- package/esm2022/lib/components/shared-list/shared-list.component.mjs +47 -0
- package/esm2022/lib/components/snackbar-static/snackbar-static.component.mjs +43 -0
- package/esm2022/lib/components/title-bar/title-bar.component.mjs +119 -0
- package/esm2022/lib/services/backend-service.mjs +240 -0
- package/esm2022/lib/services/index.mjs +4 -0
- package/esm2022/lib/services/top-panel.mjs +22 -0
- package/esm2022/lib/services/trigger-form.service.mjs +17 -0
- package/esm2022/lib/utils/base-utils.mjs +97 -0
- package/esm2022/lib/validators/date-range-validator.mjs +27 -0
- package/esm2022/lib/validators/index.mjs +4 -0
- package/esm2022/lib/validators/match-list.validator.mjs +9 -0
- package/esm2022/lib/validators/multi-email-validator.mjs +13 -0
- package/esm2022/public-api.mjs +29 -0
- package/esm2022/q-btech-ui-lib.mjs +5 -0
- package/esm2022/unifylib-ui-lib.mjs +5 -0
- package/fesm2022/iq-ui-lib.mjs +5625 -0
- package/fesm2022/iq-ui-lib.mjs.map +1 -0
- package/fesm2022/q-btech-ui-lib.mjs +5619 -0
- package/fesm2022/q-btech-ui-lib.mjs.map +1 -0
- package/fesm2022/unifylib-ui-lib.mjs +5625 -0
- package/fesm2022/unifylib-ui-lib.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/base-model/SearchStrConfig.d.ts +8 -0
- package/{src/lib/base-model/api-response.ts → lib/base-model/api-response.d.ts} +5 -7
- package/lib/base-model/audit-log-entry.d.ts +7 -0
- package/lib/base-model/button-action-settings.d.ts +15 -0
- package/lib/base-model/column-def.model.d.ts +11 -0
- package/lib/base-model/do-action-request.d.ts +10 -0
- package/lib/base-model/field-action.d.ts +6 -0
- package/lib/base-model/field-filter.model.d.ts +7 -0
- package/lib/base-model/field-info.d.ts +53 -0
- package/lib/base-model/field-predicate.model.d.ts +7 -0
- package/lib/base-model/filter-request.d.ts +15 -0
- package/lib/base-model/filter.model.d.ts +22 -0
- package/lib/base-model/get-items-list.d.ts +21 -0
- package/lib/base-model/index.d.ts +11 -0
- package/lib/base-model/items-total.model.d.ts +6 -0
- package/lib/base-model/line-item.model.d.ts +9 -0
- package/lib/base-model/lookupItem.d.ts +13 -0
- package/{src/lib/base-model/page-info.ts → lib/base-model/page-info.d.ts} +25 -24
- package/lib/base-model/report-request.model.d.ts +18 -0
- package/lib/base-model/response-envelop.model.d.ts +8 -0
- package/lib/base-model/snack-message.model.d.ts +7 -0
- package/lib/base-model/table-column.interface.d.ts +28 -0
- package/lib/base-model/table-page-user-action.interface.d.ts +14 -0
- package/lib/base-model/workflow/workflow-steps.model.d.ts +7 -0
- package/lib/base-model/workflow/workflow.model.d.ts +13 -0
- package/lib/components/action-comment/action-comment.component.d.ts +32 -0
- package/lib/components/action-confirmation/action-confirmation.component.d.ts +19 -0
- package/lib/components/activity-report-form/activity-report-form.component.d.ts +93 -0
- package/lib/components/advanced-filter/field-filter/field-filter.component.d.ts +20 -0
- package/lib/components/advanced-filter/filter-builder/filter-builder.component.d.ts +28 -0
- package/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.d.ts +25 -0
- package/lib/components/audit-log-list/audit-log.component.d.ts +36 -0
- package/lib/components/auto-complete/auto-complete.component.d.ts +51 -0
- package/lib/components/base-form/base-form.component.d.ts +59 -0
- package/lib/components/base-form-canvas/base-form-canvas.component.d.ts +124 -0
- package/lib/components/base-input-dialog/base-input-dialog.component.d.ts +23 -0
- package/lib/components/base-table/base-table.component.d.ts +128 -0
- package/lib/components/button-actions/button-actions.component.d.ts +17 -0
- package/lib/components/editable-base-table/editable-base-table.component.d.ts +106 -0
- package/lib/components/equation-builder/equation-builder.component.d.ts +23 -0
- package/lib/components/item-line-editor/item-line-editor.component.d.ts +64 -0
- package/lib/components/multi-auto-complete/multi-auto-complete.component.d.ts +51 -0
- package/lib/components/paginator/paginator.component.d.ts +26 -0
- package/lib/components/report-details-dialog/report-details-dialog.component.d.ts +34 -0
- package/lib/components/report-form/report-form.component.d.ts +92 -0
- package/lib/components/search-bar/search-bar.component.d.ts +29 -0
- package/lib/components/section-form-canvas/section-form-canvas.component.d.ts +27 -0
- package/lib/components/shared/action-button/action-button.component.d.ts +17 -0
- package/lib/components/shared/action-card/action-card.component.d.ts +37 -0
- package/lib/components/shared/attachment-uploader/attachment-uploader.component.d.ts +16 -0
- package/lib/components/shared-list/shared-list.component.d.ts +21 -0
- package/lib/components/snackbar-static/snackbar-static.component.d.ts +15 -0
- package/lib/components/title-bar/title-bar.component.d.ts +42 -0
- package/lib/services/backend-service.d.ts +59 -0
- package/{src/lib/services/index.ts → lib/services/index.d.ts} +1 -1
- package/lib/services/top-panel.d.ts +8 -0
- package/lib/services/trigger-form.service.d.ts +7 -0
- package/lib/utils/base-utils.d.ts +13 -0
- package/lib/validators/date-range-validator.d.ts +2 -0
- package/lib/validators/match-list.validator.d.ts +4 -0
- package/lib/validators/multi-email-validator.d.ts +6 -0
- package/package.json +19 -4
- package/{src/public-api.ts → public-api.d.ts} +22 -18
- package/ng-package.json +0 -7
- package/src/lib/base-model/SearchStrConfig.ts +0 -12
- package/src/lib/base-model/audit-log-entry.ts +0 -7
- package/src/lib/base-model/button-action-settings.ts +0 -25
- package/src/lib/base-model/column-def.model.ts +0 -34
- package/src/lib/base-model/do-action-request.ts +0 -11
- package/src/lib/base-model/field-action.ts +0 -7
- package/src/lib/base-model/field-filter.model.ts +0 -14
- package/src/lib/base-model/field-info.ts +0 -98
- package/src/lib/base-model/field-predicate.model.ts +0 -7
- package/src/lib/base-model/filter-request.ts +0 -27
- package/src/lib/base-model/filter.model.ts +0 -49
- package/src/lib/base-model/get-items-list.ts +0 -24
- package/src/lib/base-model/index.ts +0 -11
- package/src/lib/base-model/lookupItem.ts +0 -21
- package/src/lib/base-model/null-snackmessage.ts +0 -9
- package/src/lib/base-model/report-request.model.ts +0 -33
- package/src/lib/base-model/response-envelop.model.ts +0 -15
- package/src/lib/base-model/snack-message.model.ts +0 -14
- package/src/lib/base-model/snackmessage-interface.ts +0 -7
- package/src/lib/base-model/table-column.interface.ts +0 -29
- package/src/lib/base-model/table-page-user-action.interface.ts +0 -33
- package/src/lib/base-model/workflow/workflow-steps.model.ts +0 -9
- package/src/lib/base-model/workflow/workflow.model.ts +0 -52
- package/src/lib/components/action-confirmation/action-confirmation.component.css +0 -34
- package/src/lib/components/action-confirmation/action-confirmation.component.html +0 -18
- package/src/lib/components/action-confirmation/action-confirmation.component.spec.ts +0 -23
- package/src/lib/components/action-confirmation/action-confirmation.component.ts +0 -58
- package/src/lib/components/activity-report-form/activity-report-form.component.html +0 -109
- package/src/lib/components/activity-report-form/activity-report-form.component.scss +0 -0
- package/src/lib/components/activity-report-form/activity-report-form.component.spec.ts +0 -25
- package/src/lib/components/activity-report-form/activity-report-form.component.ts +0 -605
- package/src/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.css +0 -51
- package/src/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.html +0 -23
- package/src/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.spec.ts +0 -23
- package/src/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.ts +0 -69
- package/src/lib/components/audit-log-list/audit-log.component.html +0 -23
- package/src/lib/components/audit-log-list/audit-log.component.scss +0 -0
- package/src/lib/components/audit-log-list/audit-log.component.spec.ts +0 -25
- package/src/lib/components/audit-log-list/audit-log.component.ts +0 -116
- package/src/lib/components/auto-complete/auto-complete.component.css +0 -14
- package/src/lib/components/auto-complete/auto-complete.component.html +0 -29
- package/src/lib/components/auto-complete/auto-complete.component.spec.ts +0 -23
- package/src/lib/components/auto-complete/auto-complete.component.ts +0 -330
- package/src/lib/components/base-form/base-form.component.html +0 -58
- package/src/lib/components/base-form/base-form.component.scss +0 -0
- package/src/lib/components/base-form/base-form.component.spec.ts +0 -25
- package/src/lib/components/base-form/base-form.component.ts +0 -305
- package/src/lib/components/base-form-canvas/base-form-canvas.component.css +0 -22
- package/src/lib/components/base-form-canvas/base-form-canvas.component.html +0 -1006
- package/src/lib/components/base-form-canvas/base-form-canvas.component.spec.ts +0 -23
- package/src/lib/components/base-form-canvas/base-form-canvas.component.ts +0 -573
- package/src/lib/components/base-input-dialog/base-input-dialog.component.css +0 -0
- package/src/lib/components/base-input-dialog/base-input-dialog.component.html +0 -42
- package/src/lib/components/base-input-dialog/base-input-dialog.component.spec.ts +0 -23
- package/src/lib/components/base-input-dialog/base-input-dialog.component.ts +0 -78
- package/src/lib/components/base-table/base-table.component.html +0 -242
- package/src/lib/components/base-table/base-table.component.scss +0 -31
- package/src/lib/components/base-table/base-table.component.spec.ts +0 -25
- package/src/lib/components/base-table/base-table.component.ts +0 -568
- package/src/lib/components/button-actions/button-actions.component.html +0 -28
- package/src/lib/components/button-actions/button-actions.component.scss +0 -6
- package/src/lib/components/button-actions/button-actions.component.spec.ts +0 -23
- package/src/lib/components/button-actions/button-actions.component.ts +0 -72
- package/src/lib/components/editable-base-table/editable-base-table.component.html +0 -372
- package/src/lib/components/editable-base-table/editable-base-table.component.scss +0 -44
- package/src/lib/components/editable-base-table/editable-base-table.component.spec.ts +0 -25
- package/src/lib/components/editable-base-table/editable-base-table.component.ts +0 -570
- package/src/lib/components/equation-builder/equation-builder.component.css +0 -0
- package/src/lib/components/equation-builder/equation-builder.component.html +0 -31
- package/src/lib/components/equation-builder/equation-builder.component.spec.ts +0 -23
- package/src/lib/components/equation-builder/equation-builder.component.ts +0 -121
- package/src/lib/components/multi-auto-complete/multi-auto-complete.component.css +0 -11
- package/src/lib/components/multi-auto-complete/multi-auto-complete.component.html +0 -38
- package/src/lib/components/multi-auto-complete/multi-auto-complete.component.spec.ts +0 -23
- package/src/lib/components/multi-auto-complete/multi-auto-complete.component.ts +0 -317
- package/src/lib/components/paginator/paginator.component.css +0 -25
- package/src/lib/components/paginator/paginator.component.html +0 -34
- package/src/lib/components/paginator/paginator.component.ts +0 -94
- package/src/lib/components/rejection-comment/action-comment.component.css +0 -33
- package/src/lib/components/rejection-comment/action-comment.component.html +0 -46
- package/src/lib/components/rejection-comment/action-comment.component.spec.ts +0 -23
- package/src/lib/components/rejection-comment/action-comment.component.ts +0 -86
- package/src/lib/components/report-details-dialog/report-details-dialog.component.css +0 -17
- package/src/lib/components/report-details-dialog/report-details-dialog.component.html +0 -16
- package/src/lib/components/report-details-dialog/report-details-dialog.component.spec.ts +0 -23
- package/src/lib/components/report-details-dialog/report-details-dialog.component.ts +0 -113
- package/src/lib/components/report-form/report-form.component.html +0 -94
- package/src/lib/components/report-form/report-form.component.scss +0 -0
- package/src/lib/components/report-form/report-form.component.spec.ts +0 -25
- package/src/lib/components/report-form/report-form.component.ts +0 -588
- package/src/lib/components/search-bar/search-bar.component.html +0 -62
- package/src/lib/components/search-bar/search-bar.component.scss +0 -8
- package/src/lib/components/search-bar/search-bar.component.spec.ts +0 -25
- package/src/lib/components/search-bar/search-bar.component.ts +0 -70
- package/src/lib/components/shared/attachment-uploader/attachment-uploader.component.css +0 -54
- package/src/lib/components/shared/attachment-uploader/attachment-uploader.component.html +0 -22
- package/src/lib/components/shared/attachment-uploader/attachment-uploader.component.spec.ts +0 -23
- package/src/lib/components/shared/attachment-uploader/attachment-uploader.component.ts +0 -45
- package/src/lib/components/shared-list/shared-list.component.css +0 -0
- package/src/lib/components/shared-list/shared-list.component.html +0 -17
- package/src/lib/components/shared-list/shared-list.component.spec.ts +0 -23
- package/src/lib/components/shared-list/shared-list.component.ts +0 -53
- package/src/lib/components/title-bar/title-bar.component.css +0 -0
- package/src/lib/components/title-bar/title-bar.component.css.map +0 -1
- package/src/lib/components/title-bar/title-bar.component.html +0 -31
- package/src/lib/components/title-bar/title-bar.component.scss +0 -23
- package/src/lib/components/title-bar/title-bar.component.spec.ts +0 -23
- package/src/lib/components/title-bar/title-bar.component.ts +0 -119
- package/src/lib/services/backend-service.ts +0 -286
- package/src/lib/services/top-panel.ts +0 -17
- package/src/lib/services/trigger-form.service.ts +0 -11
- package/src/lib/share-module/shared-module.ts +0 -10
- package/src/lib/styles/invoiceq-theme.scss +0 -252
- package/src/lib/styles/styles.scss +0 -1723
- package/src/lib/utils/base-utils.ts +0 -102
- package/src/lib/validators/date-range-validator.ts +0 -31
- package/src/lib/validators/match-list.validator.ts +0 -10
- package/src/lib/validators/multi-email-validator.ts +0 -15
- package/tsconfig.lib.json +0 -15
- package/tsconfig.lib.prod.json +0 -11
- package/tsconfig.spec.json +0 -15
- /package/{src/lib/validators/index.ts → lib/validators/index.d.ts} +0 -0
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { NgIf } from "@angular/common";
|
|
3
|
+
import { BaseTableComponent } from "../base-table/base-table.component";
|
|
4
|
+
import { EMPTY_PAGE_INFO, FilterRequest } from "../../base-model";
|
|
5
|
+
import { EditableBaseTableComponent } from "../editable-base-table/editable-base-table.component";
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/router";
|
|
8
|
+
export class SharedListComponent {
|
|
9
|
+
constructor(activatedRoute) {
|
|
10
|
+
this.activatedRoute = activatedRoute;
|
|
11
|
+
this.pageInfo = EMPTY_PAGE_INFO;
|
|
12
|
+
this.columnsDefinition = [];
|
|
13
|
+
this.fields = [];
|
|
14
|
+
this.filters = [];
|
|
15
|
+
this.readyToLoad = false;
|
|
16
|
+
this.isPending = false;
|
|
17
|
+
this.listAction = [];
|
|
18
|
+
this.editableTable = false;
|
|
19
|
+
this.filterRequest = new FilterRequest();
|
|
20
|
+
}
|
|
21
|
+
ngOnInit() {
|
|
22
|
+
this.activatedRoute.data.subscribe(data => {
|
|
23
|
+
this.pageInfo = data['pageInfo'];
|
|
24
|
+
this.columnsDefinition = data["columnsDefinition"];
|
|
25
|
+
this.filters = data["filters"] || [];
|
|
26
|
+
this.isPending = 'pending' === data["mode"];
|
|
27
|
+
this.listAction = data['actions'];
|
|
28
|
+
this.editableTable = data['editableTable'] || false;
|
|
29
|
+
this.fields = data['fields'];
|
|
30
|
+
this.filterRequest = new FilterRequest();
|
|
31
|
+
this.filterRequest.columns = this.fields?.filter(c => c.type !== 'button').map(c => c.property) || [];
|
|
32
|
+
this.filterRequest.filters = this.filters;
|
|
33
|
+
this.readyToLoad = true;
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SharedListComponent, deps: [{ token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SharedListComponent, isStandalone: true, selector: "app-shared-list", ngImport: i0, template: "<ng-container *ngIf=\"readyToLoad\">\r\n @if (editableTable) {\r\n <app-editable-base-table [filterRequest]=\"filterRequest\" [pageInfo]=\"pageInfo\"\r\n [fields]=\"fields\"\r\n [isPending]=\"isPending\"\r\n ></app-editable-base-table>\r\n\r\n } @else {\r\n\r\n <app-base-table [filters]=\"filters\" [pageInfo]=\"pageInfo\"\r\n [columns]=\"columnsDefinition\"\r\n [listAction]=\"listAction\"\r\n [isPending]=\"isPending\"\r\n ></app-base-table>\r\n\r\n }\r\n</ng-container>\r\n", styles: [""], dependencies: [{ kind: "component", type: BaseTableComponent, selector: "app-base-table", inputs: ["filterFields", "noDataFoundIcon", "noDataFoundTitle", "noDataFoundSubtitle", "pageInfo", "enablePagination", "data", "listAction", "columns", "filters", "pathParam", "extraButton", "enforceRefresh", "isPending", "trigger", "reportRequest", "separateEndpointData", "manageablePages", "totalPagesCount", "currentPageIndex", "customizedData"], outputs: ["pageChange", "userAction", "hyperLinkAction", "extraAction", "selectedColumn", "listActionClicked", "showDialog", "clickRoutePage"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: EditableBaseTableComponent, selector: "app-editable-base-table", inputs: ["filterRequest", "superDataElements", "pageInfo", "enforceRefresh", "isPending", "isBulkItemsSupported", "fields", "searchFormFields", "translationKey", "actionRequestCallback"], outputs: ["formUpdated", "saveActionEmitter", "saveAttachmentEmitter"] }] }); }
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SharedListComponent, decorators: [{
|
|
40
|
+
type: Component,
|
|
41
|
+
args: [{ selector: 'app-shared-list', standalone: true, imports: [
|
|
42
|
+
BaseTableComponent,
|
|
43
|
+
NgIf,
|
|
44
|
+
EditableBaseTableComponent
|
|
45
|
+
], template: "<ng-container *ngIf=\"readyToLoad\">\r\n @if (editableTable) {\r\n <app-editable-base-table [filterRequest]=\"filterRequest\" [pageInfo]=\"pageInfo\"\r\n [fields]=\"fields\"\r\n [isPending]=\"isPending\"\r\n ></app-editable-base-table>\r\n\r\n } @else {\r\n\r\n <app-base-table [filters]=\"filters\" [pageInfo]=\"pageInfo\"\r\n [columns]=\"columnsDefinition\"\r\n [listAction]=\"listAction\"\r\n [isPending]=\"isPending\"\r\n ></app-base-table>\r\n\r\n }\r\n</ng-container>\r\n" }]
|
|
46
|
+
}], ctorParameters: () => [{ type: i1.ActivatedRoute }] });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52b2ljZXEvdWktbGliL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQtbGlzdC9zaGFyZWQtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZvaWNlcS91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC1saXN0L3NoYXJlZC1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFFaEQsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3JDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3RFLE9BQU8sRUFBdUIsZUFBZSxFQUFhLGFBQWEsRUFBd0IsTUFBTSxrQkFBa0IsQ0FBQztBQUV4SCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxzREFBc0QsQ0FBQzs7O0FBYWhHLE1BQU0sT0FBTyxtQkFBbUI7SUFVOUIsWUFBb0IsY0FBOEI7UUFBOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBVGxELGFBQVEsR0FBYSxlQUFlLENBQUM7UUFDckMsc0JBQWlCLEdBQXVCLEVBQUUsQ0FBQztRQUMzQyxXQUFNLEdBQWdCLEVBQUUsQ0FBQztRQUN6QixZQUFPLEdBQWEsRUFBRSxDQUFDO1FBQ3ZCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzdCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFDM0IsZUFBVSxHQUEyQixFQUFFLENBQUM7UUFDeEMsa0JBQWEsR0FBYSxLQUFLLENBQUM7UUFDaEMsa0JBQWEsR0FBa0IsSUFBSSxhQUFhLEVBQUUsQ0FBQztJQUNHLENBQUM7SUFFdkQsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN4QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNqQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDbkQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1lBRXJDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNsQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxLQUFLLENBQUM7WUFDcEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3RHLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7WUFFMUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFFMUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOytHQTlCVSxtQkFBbUI7bUdBQW5CLG1CQUFtQiwyRUNuQmhDLDZrQkFpQkEsMERETEksa0JBQWtCLDBpQkFDbEIsSUFBSSw2RkFDSiwwQkFBMEI7OzRGQUtqQixtQkFBbUI7a0JBWC9CLFNBQVM7K0JBQ0UsaUJBQWlCLGNBQ2YsSUFBSSxXQUNQO3dCQUNQLGtCQUFrQjt3QkFDbEIsSUFBSTt3QkFDSiwwQkFBMEI7cUJBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7QWN0aXZhdGVkUm91dGV9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHtOZ0lmfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7QmFzZVRhYmxlQ29tcG9uZW50fSBmcm9tIFwiLi4vYmFzZS10YWJsZS9iYXNlLXRhYmxlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0J1dHRvbkFjdGlvblNldHRpbmdzLCBFTVBUWV9QQUdFX0lORk8sIEZpZWxkSW5mbywgRmlsdGVyUmVxdWVzdCwgUGFnZUluZm8sIFRhYmxlQ29sdW1ufSBmcm9tIFwiLi4vLi4vYmFzZS1tb2RlbFwiO1xyXG5pbXBvcnQge0ZpbHRlcn0gZnJvbSBcIi4uLy4uL2Jhc2UtbW9kZWxcIjtcclxuaW1wb3J0IHtFZGl0YWJsZUJhc2VUYWJsZUNvbXBvbmVudH0gZnJvbSBcIi4uL2VkaXRhYmxlLWJhc2UtdGFibGUvZWRpdGFibGUtYmFzZS10YWJsZS5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXNoYXJlZC1saXN0JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIEJhc2VUYWJsZUNvbXBvbmVudCxcclxuICAgIE5nSWYsXHJcbiAgICBFZGl0YWJsZUJhc2VUYWJsZUNvbXBvbmVudFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NoYXJlZC1saXN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6WyAnLi9zaGFyZWQtbGlzdC5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFNoYXJlZExpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHBhZ2VJbmZvOiBQYWdlSW5mbyA9IEVNUFRZX1BBR0VfSU5GTztcclxuICBjb2x1bW5zRGVmaW5pdGlvbjogVGFibGVDb2x1bW48YW55PltdID0gW107XHJcbiAgZmllbGRzOiBGaWVsZEluZm9bXSA9IFtdO1xyXG4gIGZpbHRlcnM6IEZpbHRlcltdID0gW107XHJcbiAgcmVhZHlUb0xvYWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBpc1BlbmRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBsaXN0QWN0aW9uOiBCdXR0b25BY3Rpb25TZXR0aW5nc1tdID0gW107XHJcbiAgZWRpdGFibGVUYWJsZSA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBmaWx0ZXJSZXF1ZXN0OiBGaWx0ZXJSZXF1ZXN0ID0gbmV3IEZpbHRlclJlcXVlc3QoKTtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5kYXRhLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgdGhpcy5wYWdlSW5mbyA9IGRhdGFbJ3BhZ2VJbmZvJ107XHJcbiAgICAgIHRoaXMuY29sdW1uc0RlZmluaXRpb24gPSBkYXRhW1wiY29sdW1uc0RlZmluaXRpb25cIl07XHJcbiAgICAgIHRoaXMuZmlsdGVycyA9IGRhdGFbXCJmaWx0ZXJzXCJdIHx8IFtdO1xyXG5cclxuICAgICAgdGhpcy5pc1BlbmRpbmcgPSAncGVuZGluZycgPT09IGRhdGFbXCJtb2RlXCJdO1xyXG4gICAgICB0aGlzLmxpc3RBY3Rpb24gPSBkYXRhWydhY3Rpb25zJ107XHJcbiAgICAgIHRoaXMuZWRpdGFibGVUYWJsZSA9IGRhdGFbJ2VkaXRhYmxlVGFibGUnXSB8fCBmYWxzZTtcclxuICAgICAgdGhpcy5maWVsZHMgPSBkYXRhWydmaWVsZHMnXTtcclxuXHJcbiAgICAgIHRoaXMuZmlsdGVyUmVxdWVzdCA9IG5ldyBGaWx0ZXJSZXF1ZXN0KCk7XHJcbiAgICAgIHRoaXMuZmlsdGVyUmVxdWVzdC5jb2x1bW5zID0gdGhpcy5maWVsZHM/LmZpbHRlcihjID0+IGMudHlwZSAhPT0gJ2J1dHRvbicpLm1hcChjID0+IGMucHJvcGVydHkpIHx8IFtdO1xyXG4gICAgICB0aGlzLmZpbHRlclJlcXVlc3QuZmlsdGVycyA9IHRoaXMuZmlsdGVycztcclxuXHJcbiAgICAgIHRoaXMucmVhZHlUb0xvYWQgPSB0cnVlO1xyXG5cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcblxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJyZWFkeVRvTG9hZFwiPlxyXG4gIEBpZiAoZWRpdGFibGVUYWJsZSkge1xyXG4gICAgPGFwcC1lZGl0YWJsZS1iYXNlLXRhYmxlIFtmaWx0ZXJSZXF1ZXN0XT1cImZpbHRlclJlcXVlc3RcIiBbcGFnZUluZm9dPVwicGFnZUluZm9cIlxyXG4gICAgICAgICAgICAgICAgICAgIFtmaWVsZHNdPVwiZmllbGRzXCJcclxuICAgICAgICAgICAgICAgICAgICBbaXNQZW5kaW5nXT1cImlzUGVuZGluZ1wiXHJcbiAgICA+PC9hcHAtZWRpdGFibGUtYmFzZS10YWJsZT5cclxuXHJcbiAgfSBAZWxzZSB7XHJcblxyXG4gICAgPGFwcC1iYXNlLXRhYmxlIFtmaWx0ZXJzXT1cImZpbHRlcnNcIiBbcGFnZUluZm9dPVwicGFnZUluZm9cIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjb2x1bW5zXT1cImNvbHVtbnNEZWZpbml0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbbGlzdEFjdGlvbl09XCJsaXN0QWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbaXNQZW5kaW5nXT1cImlzUGVuZGluZ1wiXHJcbiAgICA+PC9hcHAtYmFzZS10YWJsZT5cclxuXHJcbiAgfVxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { MatButton, MatIconButton } from '@angular/material/button';
|
|
3
|
+
import { MatIcon } from '@angular/material/icon';
|
|
4
|
+
import { NgIf, NgStyle } from '@angular/common';
|
|
5
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@ngx-translate/core";
|
|
8
|
+
export class SnackbarStaticComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.messageKey = '';
|
|
11
|
+
this.titleKey = '';
|
|
12
|
+
this.params = {};
|
|
13
|
+
this.paramsTitle = {};
|
|
14
|
+
this.actionBtn = new EventEmitter();
|
|
15
|
+
this.width = 'auto';
|
|
16
|
+
}
|
|
17
|
+
submit() {
|
|
18
|
+
this.actionBtn.emit();
|
|
19
|
+
}
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SnackbarStaticComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SnackbarStaticComponent, isStandalone: true, selector: "app-snackbar-static", inputs: { messageKey: "messageKey", titleKey: "titleKey", params: "params", paramsTitle: "paramsTitle", type: "type", width: "width", textBtn: "textBtn" }, outputs: { actionBtn: "actionBtn" }, ngImport: i0, template: "<div class=\"snackbar snackbar-{{type}}\" [ngStyle]=\"{'width': width == 'auto' ? 'auto' : width}\">\r\n <div class=\"sub-snackbar\">\r\n <mat-icon *ngIf=\"type === 'error'\">error</mat-icon>\r\n <mat-icon *ngIf=\"type === 'success'\">check_box</mat-icon>\r\n <mat-icon *ngIf=\"type === 'warning'\">warning</mat-icon>\r\n <mat-icon *ngIf=\"type === 'info'\">info</mat-icon>\r\n <mat-icon *ngIf=\"type === 'help'\">help</mat-icon>\r\n\r\n <div class=\"text-content\">\r\n <div class=\"title\">{{ titleKey | translate : paramsTitle }}</div>\r\n <div class=\"subtitle\">{{ messageKey | translate: params }}</div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"action\" *ngIf=\"textBtn\">\r\n <button mat-stroked-button class=\"btn-none-background-primary action-btn\" (click)=\"submit()\" id=\"snackbar-action-btn\">\r\n {{ textBtn | translate}}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".snackbar{position:relative;width:auto;max-width:100%;box-sizing:border-box;background:#fff;border:1.5px solid #1c8c7a;border-radius:10px;padding:12px 20px;display:flex;flex-direction:column;color:#1c8c7a;box-shadow:0 2px 4px #00000014;overflow:hidden;word-break:break-word;overflow-wrap:anywhere;--snackbar-icon-size: clamp(16px, 2.4vw, 20px);--snackbar-title-size: clamp(14px, 2.6vw, 16px);--snackbar-subtitle-size: clamp(12px, 2.3vw, 14px)}.snackbar .sub-snackbar{display:flex;gap:10px;align-items:start}.snackbar .sub-snackbar mat-icon{font-size:var(--snackbar-icon-size);line-height:1;width:1em;height:1em;flex:0 0 auto}.snackbar .sub-snackbar .text-content{display:flex;flex-direction:column;line-height:24px}.snackbar .sub-snackbar .text-content .title{font-weight:400;color:inherit;font-family:lusail-regular,sans-serif;font-size:var(--snackbar-title-size)}.snackbar .sub-snackbar .text-content .subtitle{font-weight:400;color:#888;font-family:lusail-light,sans-serif;font-size:var(--snackbar-subtitle-size)}.snackbar .action{display:flex;justify-content:flex-end}.snackbar .action .action-btn{font-size:var(--snackbar-title-size);font-weight:400;border-radius:8px;min-height:19px!important;margin:0!important;max-width:100%}.snackbar .action .action-btn mat-icon{font-size:var(--snackbar-icon-size)}.snackbar-success{border-color:#0d7d6a;color:#0d7d6a}.snackbar-error{border-color:#a42b2b;color:#a42b2b}.snackbar-warning{border-color:#b54708;color:#b54708}.snackbar-info{border-color:#0d47a1;color:#0d47a1}.snackbar-help{border-color:var(--primary-color-3nd);color:var(--primary-color-3nd)}@media (max-width: 600px){.snackbar{padding:10px 14px;--snackbar-icon-size: clamp(16px, 3.6vw, 18px);--snackbar-title-size: clamp(14px, 3.8vw, 15px);--snackbar-subtitle-size: clamp(12px, 3.4vw, 13px)}.snackbar .sub-snackbar{gap:8px}.snackbar .sub-snackbar .text-content{line-height:22px}.snackbar .action{margin-top:8px}.snackbar .action .action-btn{width:100%;font-size:var(--snackbar-title-size)}}@media (max-width: 360px){.snackbar{padding:8px 10px;border-radius:8px;--snackbar-icon-size: clamp(14px, 4.5vw, 16px);--snackbar-title-size: clamp(13px, 4.6vw, 14px);--snackbar-subtitle-size: clamp(11px, 4.2vw, 12px)}}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SnackbarStaticComponent, decorators: [{
|
|
24
|
+
type: Component,
|
|
25
|
+
args: [{ selector: 'app-snackbar-static', standalone: true, imports: [MatIcon, NgIf, TranslateModule, MatIconButton, MatButton, NgStyle], template: "<div class=\"snackbar snackbar-{{type}}\" [ngStyle]=\"{'width': width == 'auto' ? 'auto' : width}\">\r\n <div class=\"sub-snackbar\">\r\n <mat-icon *ngIf=\"type === 'error'\">error</mat-icon>\r\n <mat-icon *ngIf=\"type === 'success'\">check_box</mat-icon>\r\n <mat-icon *ngIf=\"type === 'warning'\">warning</mat-icon>\r\n <mat-icon *ngIf=\"type === 'info'\">info</mat-icon>\r\n <mat-icon *ngIf=\"type === 'help'\">help</mat-icon>\r\n\r\n <div class=\"text-content\">\r\n <div class=\"title\">{{ titleKey | translate : paramsTitle }}</div>\r\n <div class=\"subtitle\">{{ messageKey | translate: params }}</div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"action\" *ngIf=\"textBtn\">\r\n <button mat-stroked-button class=\"btn-none-background-primary action-btn\" (click)=\"submit()\" id=\"snackbar-action-btn\">\r\n {{ textBtn | translate}}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".snackbar{position:relative;width:auto;max-width:100%;box-sizing:border-box;background:#fff;border:1.5px solid #1c8c7a;border-radius:10px;padding:12px 20px;display:flex;flex-direction:column;color:#1c8c7a;box-shadow:0 2px 4px #00000014;overflow:hidden;word-break:break-word;overflow-wrap:anywhere;--snackbar-icon-size: clamp(16px, 2.4vw, 20px);--snackbar-title-size: clamp(14px, 2.6vw, 16px);--snackbar-subtitle-size: clamp(12px, 2.3vw, 14px)}.snackbar .sub-snackbar{display:flex;gap:10px;align-items:start}.snackbar .sub-snackbar mat-icon{font-size:var(--snackbar-icon-size);line-height:1;width:1em;height:1em;flex:0 0 auto}.snackbar .sub-snackbar .text-content{display:flex;flex-direction:column;line-height:24px}.snackbar .sub-snackbar .text-content .title{font-weight:400;color:inherit;font-family:lusail-regular,sans-serif;font-size:var(--snackbar-title-size)}.snackbar .sub-snackbar .text-content .subtitle{font-weight:400;color:#888;font-family:lusail-light,sans-serif;font-size:var(--snackbar-subtitle-size)}.snackbar .action{display:flex;justify-content:flex-end}.snackbar .action .action-btn{font-size:var(--snackbar-title-size);font-weight:400;border-radius:8px;min-height:19px!important;margin:0!important;max-width:100%}.snackbar .action .action-btn mat-icon{font-size:var(--snackbar-icon-size)}.snackbar-success{border-color:#0d7d6a;color:#0d7d6a}.snackbar-error{border-color:#a42b2b;color:#a42b2b}.snackbar-warning{border-color:#b54708;color:#b54708}.snackbar-info{border-color:#0d47a1;color:#0d47a1}.snackbar-help{border-color:var(--primary-color-3nd);color:var(--primary-color-3nd)}@media (max-width: 600px){.snackbar{padding:10px 14px;--snackbar-icon-size: clamp(16px, 3.6vw, 18px);--snackbar-title-size: clamp(14px, 3.8vw, 15px);--snackbar-subtitle-size: clamp(12px, 3.4vw, 13px)}.snackbar .sub-snackbar{gap:8px}.snackbar .sub-snackbar .text-content{line-height:22px}.snackbar .action{margin-top:8px}.snackbar .action .action-btn{width:100%;font-size:var(--snackbar-title-size)}}@media (max-width: 360px){.snackbar{padding:8px 10px;border-radius:8px;--snackbar-icon-size: clamp(14px, 4.5vw, 16px);--snackbar-title-size: clamp(13px, 4.6vw, 14px);--snackbar-subtitle-size: clamp(11px, 4.2vw, 12px)}}\n"] }]
|
|
26
|
+
}], propDecorators: { messageKey: [{
|
|
27
|
+
type: Input
|
|
28
|
+
}], titleKey: [{
|
|
29
|
+
type: Input
|
|
30
|
+
}], params: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}], paramsTitle: [{
|
|
33
|
+
type: Input
|
|
34
|
+
}], type: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}], actionBtn: [{
|
|
37
|
+
type: Output
|
|
38
|
+
}], width: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], textBtn: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}] } });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hY2tiYXItc3RhdGljLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ludm9pY2VxL3VpLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvc25hY2tiYXItc3RhdGljL3NuYWNrYmFyLXN0YXRpYy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZvaWNlcS91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NuYWNrYmFyLXN0YXRpYy9zbmFja2Jhci1zdGF0aWMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUMsU0FBUyxFQUFFLGFBQWEsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRCxPQUFPLEVBQUMsSUFBSSxFQUFFLE9BQU8sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBU3RELE1BQU0sT0FBTyx1QkFBdUI7SUFQcEM7UUFRVyxlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxXQUFNLEdBQXdCLEVBQUUsQ0FBQztRQUNqQyxnQkFBVyxHQUF3QixFQUFFLENBQUM7UUFFckMsY0FBUyxHQUF1QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BELFVBQUssR0FBVyxNQUFNLENBQUM7S0FLakM7SUFIQyxNQUFNO1FBQ0osSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUN2QixDQUFDOytHQVhVLHVCQUF1QjttR0FBdkIsdUJBQXVCLGdSQ2JwQywrNUJBb0JBLG91RURYWSxPQUFPLDJJQUFFLElBQUksNEZBQUUsZUFBZSw0RkFBaUIsU0FBUyxpTEFBRSxPQUFPOzs0RkFJaEUsdUJBQXVCO2tCQVBuQyxTQUFTOytCQUNFLHFCQUFxQixjQUNuQixJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQzs4QkFLbkUsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNFLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtNYXRCdXR0b24sIE1hdEljb25CdXR0b259IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHtOZ0lmLCBOZ1N0eWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXNuYWNrYmFyLXN0YXRpYycsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbTWF0SWNvbiwgTmdJZiwgVHJhbnNsYXRlTW9kdWxlLCBNYXRJY29uQnV0dG9uLCBNYXRCdXR0b24sIE5nU3R5bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zbmFja2Jhci1zdGF0aWMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NuYWNrYmFyLXN0YXRpYy5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTbmFja2JhclN0YXRpY0NvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgbWVzc2FnZUtleSA9ICcnO1xyXG4gIEBJbnB1dCgpIHRpdGxlS2V5ID0gJyc7XHJcbiAgQElucHV0KCkgcGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XHJcbiAgQElucHV0KCkgcGFyYW1zVGl0bGU6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcclxuICBASW5wdXQoKSB0eXBlOiAnZXJyb3InIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2luZm8nIHwgJ2hlbHAnXHJcbiAgQE91dHB1dCgpIGFjdGlvbkJ0bjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBJbnB1dCgpIHdpZHRoOiBzdHJpbmcgPSAnYXV0byc7XHJcbiAgQElucHV0KCkgdGV4dEJ0bjogc3RyaW5nO1xyXG4gIHN1Ym1pdCgpIHtcclxuICAgIHRoaXMuYWN0aW9uQnRuLmVtaXQoKVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwic25hY2tiYXIgc25hY2tiYXIte3t0eXBlfX1cIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogd2lkdGggPT0gJ2F1dG8nID8gJ2F1dG8nIDogd2lkdGh9XCI+XHJcbiAgPGRpdiBjbGFzcz1cInN1Yi1zbmFja2JhclwiPlxyXG4gICAgPG1hdC1pY29uICpuZ0lmPVwidHlwZSA9PT0gJ2Vycm9yJ1wiPmVycm9yPC9tYXQtaWNvbj5cclxuICAgIDxtYXQtaWNvbiAqbmdJZj1cInR5cGUgPT09ICdzdWNjZXNzJ1wiPmNoZWNrX2JveDwvbWF0LWljb24+XHJcbiAgICA8bWF0LWljb24gKm5nSWY9XCJ0eXBlID09PSAnd2FybmluZydcIj53YXJuaW5nPC9tYXQtaWNvbj5cclxuICAgIDxtYXQtaWNvbiAqbmdJZj1cInR5cGUgPT09ICdpbmZvJ1wiPmluZm88L21hdC1pY29uPlxyXG4gICAgPG1hdC1pY29uICpuZ0lmPVwidHlwZSA9PT0gJ2hlbHAnXCI+aGVscDwvbWF0LWljb24+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInRleHQtY29udGVudFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidGl0bGVcIj57eyB0aXRsZUtleSB8IHRyYW5zbGF0ZSA6IHBhcmFtc1RpdGxlIH19PC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdWJ0aXRsZVwiPnt7IG1lc3NhZ2VLZXkgfCB0cmFuc2xhdGU6IHBhcmFtcyB9fTwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJhY3Rpb25cIiAqbmdJZj1cInRleHRCdG5cIj5cclxuICAgIDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwiYnRuLW5vbmUtYmFja2dyb3VuZC1wcmltYXJ5IGFjdGlvbi1idG5cIiAoY2xpY2spPVwic3VibWl0KClcIiBpZD1cInNuYWNrYmFyLWFjdGlvbi1idG5cIj5cclxuICAgICAgICB7eyB0ZXh0QnRuIHwgdHJhbnNsYXRlfX1cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { NgForOf, NgIf } from "@angular/common";
|
|
3
|
+
import { MatIconModule } from "@angular/material/icon";
|
|
4
|
+
import { MatButton } from "@angular/material/button";
|
|
5
|
+
import { MatMenu, MatMenuItem, MatMenuTrigger } from "@angular/material/menu";
|
|
6
|
+
import { TranslateModule } from "@ngx-translate/core";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/common";
|
|
9
|
+
import * as i2 from "@angular/cdk/bidi";
|
|
10
|
+
import * as i3 from "@angular/material/icon";
|
|
11
|
+
import * as i4 from "@ngx-translate/core";
|
|
12
|
+
export class TitleBarComponent {
|
|
13
|
+
constructor(location, dir) {
|
|
14
|
+
this.location = location;
|
|
15
|
+
this.dir = dir;
|
|
16
|
+
this.pageTitle = "";
|
|
17
|
+
this.showExtractButton = false;
|
|
18
|
+
this.titleMode = '';
|
|
19
|
+
this.subTitle = '';
|
|
20
|
+
this.newAction = false;
|
|
21
|
+
this.showDetails = [];
|
|
22
|
+
this.showImport = false;
|
|
23
|
+
this.showButton = false;
|
|
24
|
+
this.newActionClicked = new EventEmitter();
|
|
25
|
+
this.extraButtonClicked = new EventEmitter();
|
|
26
|
+
this.extractReport = new EventEmitter();
|
|
27
|
+
this.extraData = '';
|
|
28
|
+
this.listTitle = '';
|
|
29
|
+
this.newButton = '';
|
|
30
|
+
this.titleCorporateAdmin = '';
|
|
31
|
+
this.isRoot = false;
|
|
32
|
+
this.hideBackButton = true;
|
|
33
|
+
this.buttons = [];
|
|
34
|
+
this.buttonClicked = new EventEmitter();
|
|
35
|
+
}
|
|
36
|
+
ngOnInit() {
|
|
37
|
+
this.listTitle = this.pageTitle;
|
|
38
|
+
this.newButton = this.extraButton;
|
|
39
|
+
// this.isRoot = this.authService.isRootOrg();
|
|
40
|
+
this.isRoot = false;
|
|
41
|
+
}
|
|
42
|
+
get backIcon() {
|
|
43
|
+
return this.dir.value === 'rtl' ? 'arrow_back' : 'arrow_forward';
|
|
44
|
+
}
|
|
45
|
+
publishEvent() {
|
|
46
|
+
this.newActionClicked.emit(true);
|
|
47
|
+
}
|
|
48
|
+
doExtractReport(value) {
|
|
49
|
+
this.extractReport.emit(value);
|
|
50
|
+
}
|
|
51
|
+
publishExtraButtonEvent() {
|
|
52
|
+
this.extraButtonClicked.emit(true);
|
|
53
|
+
}
|
|
54
|
+
ngOnChanges(changes) {
|
|
55
|
+
if (changes["pageTitle"] && !changes["pageTitle"].isFirstChange()) {
|
|
56
|
+
this.listTitle = this.pageTitle;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
goBack() {
|
|
60
|
+
this.location.back();
|
|
61
|
+
}
|
|
62
|
+
onButtonClick(btn) {
|
|
63
|
+
this.buttonClicked.emit(btn);
|
|
64
|
+
}
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TitleBarComponent, deps: [{ token: i1.Location }, { token: i2.Directionality }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TitleBarComponent, isStandalone: true, selector: "app-title-bar", inputs: { pageTitle: "pageTitle", showExtractButton: "showExtractButton", totalElements: "totalElements", titleMode: "titleMode", subTitle: "subTitle", statusDesc: "statusDesc", newAction: "newAction", extraButton: "extraButton", showDetails: "showDetails", showImport: "showImport", showButton: "showButton", extraData: "extraData", titleCorporateAdmin: "titleCorporateAdmin", hideBackButton: "hideBackButton", buttons: "buttons" }, outputs: { newActionClicked: "newActionClicked", extraButtonClicked: "extraButtonClicked", extractReport: "extractReport", buttonClicked: "buttonClicked" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row mainTitleBar gap-20 default-align\">\r\n\r\n <div class=\"column flex-auto textTitle\" >\r\n <h2 *ngIf=\"false\">\r\n <span class=\"textTitle__titleMode\">{{ titleMode | translate }}</span>\r\n {{ listTitle | translate }}\r\n <span *ngIf=\"titleCorporateAdmin && isRoot\">({{ titleCorporateAdmin }})</span>\r\n {{ extraData }}\r\n </h2>\r\n <span *ngIf=\"false\" class=\"textTitle__subTitle\">{{ subTitle | translate }}</span>\r\n </div>\r\n\r\n <div class=\"column end-items gap-20\">\r\n <button mat-flat-button color=\"primary\" style=\"width: 100px\" *ngIf=\"!hideBackButton\" (click)=\"goBack()\" id=\"title-bar-back-btn\">\r\n <mat-icon color=\"second\">{{ backIcon }}</mat-icon>\r\n <span style=\"font-weight: bold\">{{ 'back' | translate }}</span>\r\n </button>\r\n\r\n <div class=\"row flex-auto gap-20 buttons-wrapper\">\r\n <button\r\n mat-flat-button\r\n *ngFor=\"let btn of buttons\"\r\n [color]=\"btn.color || 'primary'\"\r\n (click)=\"onButtonClick(btn)\"\r\n class=\"btn-background-primary action-btn\"\r\n [attr.id]=\"btn.id || ('title-bar-btn-' + (btn.action || btn.label || btn.key))\"\r\n >\r\n <div class=\"button-text\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </div>\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["", ".mainTitleBar{display:flex;width:100%;gap:20px;align-items:center;justify-content:flex-start}.mainTitleBar.row{flex-direction:row}.mainTitleBar.column{flex-direction:column}.mainTitleBar .textTitle{flex:1 1 0;display:flex;flex-direction:column;width:auto}.mainTitleBar .textTitle h2{margin:0;padding:0;line-height:1.2}.mainTitleBar .textTitle__titleMode{font-weight:200;color:gray}.mainTitleBar .textTitle__subTitle{color:#222;font-size:14px;font-weight:300;font-style:normal}.mainTitleBar .end-items{display:flex;flex-direction:column;align-items:flex-end;gap:20px}.mainTitleBar .buttons-wrapper{display:inline-block;text-align-last:end}.mainTitleBar .buttons-wrapper .action-btn{width:210px!important}.mainTitleBar .actionButton{width:100%}.mainTitleBar .actionButton__expand{font-size:20px!important;color:var(--accent-color);margin-top:5px}.row{display:flex;flex-direction:row;width:100%}.column{display:flex;flex-direction:column;width:auto}.fx-flex-fill{width:100%;height:100%;flex:1 1 auto}.flex-auto{flex:1 1 auto;display:flex;flex-direction:column}.end-items{align-items:flex-end}.gap-20{gap:20px}@media (max-width: 960px){.mainTitleBar.row.default-align{justify-content:flex-end}}@media (max-width: 768px){.mainTitleBar.row,.mainTitleBar.column{flex-direction:column;align-items:flex-start;gap:20px}.end-items{align-items:flex-start}}@media (max-width: 600px){.gap-20{gap:10px}}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] }); }
|
|
67
|
+
}
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TitleBarComponent, decorators: [{
|
|
69
|
+
type: Component,
|
|
70
|
+
args: [{ selector: 'app-title-bar', standalone: true, imports: [
|
|
71
|
+
NgIf,
|
|
72
|
+
MatIconModule,
|
|
73
|
+
MatButton,
|
|
74
|
+
MatMenuItem,
|
|
75
|
+
MatMenu,
|
|
76
|
+
NgForOf,
|
|
77
|
+
MatMenuTrigger,
|
|
78
|
+
TranslateModule,
|
|
79
|
+
], template: "<div class=\"row mainTitleBar gap-20 default-align\">\r\n\r\n <div class=\"column flex-auto textTitle\" >\r\n <h2 *ngIf=\"false\">\r\n <span class=\"textTitle__titleMode\">{{ titleMode | translate }}</span>\r\n {{ listTitle | translate }}\r\n <span *ngIf=\"titleCorporateAdmin && isRoot\">({{ titleCorporateAdmin }})</span>\r\n {{ extraData }}\r\n </h2>\r\n <span *ngIf=\"false\" class=\"textTitle__subTitle\">{{ subTitle | translate }}</span>\r\n </div>\r\n\r\n <div class=\"column end-items gap-20\">\r\n <button mat-flat-button color=\"primary\" style=\"width: 100px\" *ngIf=\"!hideBackButton\" (click)=\"goBack()\" id=\"title-bar-back-btn\">\r\n <mat-icon color=\"second\">{{ backIcon }}</mat-icon>\r\n <span style=\"font-weight: bold\">{{ 'back' | translate }}</span>\r\n </button>\r\n\r\n <div class=\"row flex-auto gap-20 buttons-wrapper\">\r\n <button\r\n mat-flat-button\r\n *ngFor=\"let btn of buttons\"\r\n [color]=\"btn.color || 'primary'\"\r\n (click)=\"onButtonClick(btn)\"\r\n class=\"btn-background-primary action-btn\"\r\n [attr.id]=\"btn.id || ('title-bar-btn-' + (btn.action || btn.label || btn.key))\"\r\n >\r\n <div class=\"button-text\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </div>\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".mainTitleBar{display:flex;width:100%;gap:20px;align-items:center;justify-content:flex-start}.mainTitleBar.row{flex-direction:row}.mainTitleBar.column{flex-direction:column}.mainTitleBar .textTitle{flex:1 1 0;display:flex;flex-direction:column;width:auto}.mainTitleBar .textTitle h2{margin:0;padding:0;line-height:1.2}.mainTitleBar .textTitle__titleMode{font-weight:200;color:gray}.mainTitleBar .textTitle__subTitle{color:#222;font-size:14px;font-weight:300;font-style:normal}.mainTitleBar .end-items{display:flex;flex-direction:column;align-items:flex-end;gap:20px}.mainTitleBar .buttons-wrapper{display:inline-block;text-align-last:end}.mainTitleBar .buttons-wrapper .action-btn{width:210px!important}.mainTitleBar .actionButton{width:100%}.mainTitleBar .actionButton__expand{font-size:20px!important;color:var(--accent-color);margin-top:5px}.row{display:flex;flex-direction:row;width:100%}.column{display:flex;flex-direction:column;width:auto}.fx-flex-fill{width:100%;height:100%;flex:1 1 auto}.flex-auto{flex:1 1 auto;display:flex;flex-direction:column}.end-items{align-items:flex-end}.gap-20{gap:20px}@media (max-width: 960px){.mainTitleBar.row.default-align{justify-content:flex-end}}@media (max-width: 768px){.mainTitleBar.row,.mainTitleBar.column{flex-direction:column;align-items:flex-start;gap:20px}.end-items{align-items:flex-start}}@media (max-width: 600px){.gap-20{gap:10px}}\n"] }]
|
|
80
|
+
}], ctorParameters: () => [{ type: i1.Location }, { type: i2.Directionality }], propDecorators: { pageTitle: [{
|
|
81
|
+
type: Input
|
|
82
|
+
}], showExtractButton: [{
|
|
83
|
+
type: Input
|
|
84
|
+
}], totalElements: [{
|
|
85
|
+
type: Input
|
|
86
|
+
}], titleMode: [{
|
|
87
|
+
type: Input
|
|
88
|
+
}], subTitle: [{
|
|
89
|
+
type: Input
|
|
90
|
+
}], statusDesc: [{
|
|
91
|
+
type: Input
|
|
92
|
+
}], newAction: [{
|
|
93
|
+
type: Input
|
|
94
|
+
}], extraButton: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], showDetails: [{
|
|
97
|
+
type: Input
|
|
98
|
+
}], showImport: [{
|
|
99
|
+
type: Input
|
|
100
|
+
}], showButton: [{
|
|
101
|
+
type: Input
|
|
102
|
+
}], newActionClicked: [{
|
|
103
|
+
type: Output
|
|
104
|
+
}], extraButtonClicked: [{
|
|
105
|
+
type: Output
|
|
106
|
+
}], extractReport: [{
|
|
107
|
+
type: Output
|
|
108
|
+
}], extraData: [{
|
|
109
|
+
type: Input
|
|
110
|
+
}], titleCorporateAdmin: [{
|
|
111
|
+
type: Input
|
|
112
|
+
}], hideBackButton: [{
|
|
113
|
+
type: Input
|
|
114
|
+
}], buttons: [{
|
|
115
|
+
type: Input
|
|
116
|
+
}], buttonClicked: [{
|
|
117
|
+
type: Output
|
|
118
|
+
}] } });
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGUtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ludm9pY2VxL3VpLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvdGl0bGUtYmFyL3RpdGxlLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZvaWNlcS91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL3RpdGxlLWJhci90aXRsZS1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZHLE9BQU8sRUFBVyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7Ozs7OztBQXFCcEQsTUFBTSxPQUFPLGlCQUFpQjtJQTRENUIsWUFBb0IsUUFBaUIsRUFDakIsR0FBbUI7UUFEbkIsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixRQUFHLEdBQUgsR0FBRyxDQUFnQjtRQTNEdkMsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUd2QixzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFNbkMsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUV2QixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBTXRCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFRM0IsZ0JBQVcsR0FBUSxFQUFFLENBQUM7UUFHdEIsZUFBVSxH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QkFPTixtQkFBbUI7c0JBRGxCLEtBQUs7Z0JBS04sY0FBYztzQkFEYixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXN9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0xvY2F0aW9uLCBOZ0Zvck9mLCBOZ0lmfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7TWF0SWNvbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2ljb25cIjtcclxuaW1wb3J0IHtNYXRCdXR0b259IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b25cIjtcclxuaW1wb3J0IHtNYXRNZW51LCBNYXRNZW51SXRlbSwgTWF0TWVudVRyaWdnZXJ9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9tZW51XCI7XHJcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xyXG5pbXBvcnQge0RpcmVjdGlvbmFsaXR5fSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2JpZGlcIjtcclxuaW1wb3J0IHtCdXR0b25BY3Rpb25TZXR0aW5nc30gZnJvbSBcIi4uLy4uL2Jhc2UtbW9kZWxcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXRpdGxlLWJhcicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBOZ0lmLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIE1hdEJ1dHRvbixcclxuICAgIE1hdE1lbnVJdGVtLFxyXG4gICAgTWF0TWVudSxcclxuICAgIE5nRm9yT2YsXHJcbiAgICBNYXRNZW51VHJpZ2dlcixcclxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcclxuXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGl0bGUtYmFyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90aXRsZS1iYXIuY29tcG9uZW50LmNzcycsICd0aXRsZS1iYXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGl0bGVCYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XHJcbiAgQElucHV0KClcclxuICBwYWdlVGl0bGU6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2hvd0V4dHJhY3RCdXR0b246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICB0b3RhbEVsZW1lbnRzPzogbnVtYmVyO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHRpdGxlTW9kZTogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KClcclxuICBzdWJUaXRsZTogc3RyaW5nID0gJyc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc3RhdHVzRGVzYz86IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBuZXdBY3Rpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcblxyXG4gIEBJbnB1dCgpIC8vIEB0cy1pZ25vcmVcclxuICBleHRyYUJ1dHRvbjogc3RyaW5nO1xyXG5cclxuXHJcbiAgQElucHV0KClcclxuICBzaG93RGV0YWlsczogYW55ID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2hvd0ltcG9ydCA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNob3dCdXR0b24gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgbmV3QWN0aW9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgZXh0cmFCdXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgZXh0cmFjdFJlcG9ydCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQElucHV0KClcclxuICBleHRyYURhdGEgPSAnJztcclxuXHJcbiAgbGlzdFRpdGxlID0gJyc7XHJcbiAgbmV3QnV0dG9uID0gJyc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdGl0bGVDb3Jwb3JhdGVBZG1pbjogc3RyaW5nID0gJyc7XHJcblxyXG4gIGlzUm9vdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgaGlkZUJhY2tCdXR0b246IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKSBidXR0b25zOiBCdXR0b25BY3Rpb25TZXR0aW5nc1tdID0gW107XHJcbiAgQE91dHB1dCgpIGJ1dHRvbkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEJ1dHRvbkFjdGlvblNldHRpbmdzPigpO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9jYXRpb246TG9jYXRpb24sXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBkaXI6IERpcmVjdGlvbmFsaXR5KSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMubGlzdFRpdGxlID0gdGhpcy5wYWdlVGl0bGU7XHJcbiAgICB0aGlzLm5ld0J1dHRvbiA9IHRoaXMuZXh0cmFCdXR0b247XHJcbiAgICAvLyB0aGlzLmlzUm9vdCA9IHRoaXMuYXV0aFNlcnZpY2UuaXNSb290T3JnKCk7XHJcbiAgICB0aGlzLmlzUm9vdCA9IGZhbHNlO1xyXG4gIH1cclxuICBnZXQgYmFja0ljb24oKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmRpci52YWx1ZSA9PT0gJ3J0bCcgPyAnYXJyb3dfYmFjaycgOiAnYXJyb3dfZm9yd2FyZCc7XHJcbiAgfVxyXG5cclxuICBwdWJsaXNoRXZlbnQoKSB7XHJcbiAgICB0aGlzLm5ld0FjdGlvbkNsaWNrZWQuZW1pdCh0cnVlKTtcclxuICB9XHJcblxyXG5cclxuICBkb0V4dHJhY3RSZXBvcnQodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5leHRyYWN0UmVwb3J0LmVtaXQodmFsdWUpO1xyXG4gIH1cclxuICBwdWJsaXNoRXh0cmFCdXR0b25FdmVudCgpIHtcclxuICAgIHRoaXMuZXh0cmFCdXR0b25DbGlja2VkLmVtaXQodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlc1tcInBhZ2VUaXRsZVwiXSAmJiAhY2hhbmdlc1tcInBhZ2VUaXRsZVwiXS5pc0ZpcnN0Q2hhbmdlKCkgKSB7XHJcbiAgICAgIHRoaXMubGlzdFRpdGxlID0gdGhpcy5wYWdlVGl0bGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnb0JhY2soKSB7XHJcbiAgICB0aGlzLmxvY2F0aW9uLmJhY2soKVxyXG4gIH1cclxuXHJcbiAgb25CdXR0b25DbGljayhidG46IEJ1dHRvbkFjdGlvblNldHRpbmdzKSB7XHJcbiAgICB0aGlzLmJ1dHRvbkNsaWNrZWQuZW1pdChidG4pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicm93IG1haW5UaXRsZUJhciBnYXAtMjAgZGVmYXVsdC1hbGlnblwiPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiY29sdW1uIGZsZXgtYXV0byB0ZXh0VGl0bGVcIiA+XHJcbiAgICA8aDIgKm5nSWY9XCJmYWxzZVwiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInRleHRUaXRsZV9fdGl0bGVNb2RlXCI+e3sgdGl0bGVNb2RlIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICB7eyBsaXN0VGl0bGUgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgPHNwYW4gKm5nSWY9XCJ0aXRsZUNvcnBvcmF0ZUFkbWluICYmIGlzUm9vdFwiPih7eyB0aXRsZUNvcnBvcmF0ZUFkbWluIH19KTwvc3Bhbj5cclxuICAgICAge3sgZXh0cmFEYXRhIH19XHJcbiAgICA8L2gyPlxyXG4gICAgPHNwYW4gICpuZ0lmPVwiZmFsc2VcIiBjbGFzcz1cInRleHRUaXRsZV9fc3ViVGl0bGVcIj57eyBzdWJUaXRsZSB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImNvbHVtbiBlbmQtaXRlbXMgZ2FwLTIwXCI+XHJcbiAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBzdHlsZT1cIndpZHRoOiAxMDBweFwiICpuZ0lmPVwiIWhpZGVCYWNrQnV0dG9uXCIgKGNsaWNrKT1cImdvQmFjaygpXCIgaWQ9XCJ0aXRsZS1iYXItYmFjay1idG5cIj5cclxuICAgICAgPG1hdC1pY29uIGNvbG9yPVwic2Vjb25kXCI+e3sgYmFja0ljb24gfX08L21hdC1pY29uPlxyXG4gICAgICA8c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkXCI+e3sgJ2JhY2snIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyBmbGV4LWF1dG8gZ2FwLTIwIGJ1dHRvbnMtd3JhcHBlclwiPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgbWF0LWZsYXQtYnV0dG9uXHJcbiAgICAgICAgKm5nRm9yPVwibGV0IGJ0biBvZiBidXR0b25zXCJcclxuICAgICAgICBbY29sb3JdPVwiYnRuLmNvbG9yIHx8ICdwcmltYXJ5J1wiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uQnV0dG9uQ2xpY2soYnRuKVwiXHJcbiAgICAgICAgY2xhc3M9XCJidG4tYmFja2dyb3VuZC1wcmltYXJ5IGFjdGlvbi1idG5cIlxyXG4gICAgICAgIFthdHRyLmlkXT1cImJ0bi5pZCB8fCAoJ3RpdGxlLWJhci1idG4tJyArIChidG4uYWN0aW9uIHx8IGJ0bi5sYWJlbCB8fCBidG4ua2V5KSlcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi10ZXh0XCI+XHJcbiAgICAgICAgICA8bWF0LWljb24+e3sgYnRuLmljb24gfX08L21hdC1pY29uPlxyXG4gICAgICAgICAgPHNwYW4+e3sgYnRuLmxhYmVsIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
import { Inject, Injectable } from "@angular/core";
|
|
2
|
+
import { HttpHeaders, HttpParams } from "@angular/common/http";
|
|
3
|
+
import { of, Subject } from "rxjs";
|
|
4
|
+
import { catchError, distinctUntilChanged } from "rxjs/operators";
|
|
5
|
+
import { SnackMessage } from "../base-model/snack-message.model";
|
|
6
|
+
import { ColumnDef } from "../base-model/column-def.model";
|
|
7
|
+
import { ReportRequest } from "../base-model/report-request.model";
|
|
8
|
+
import { ActionConfirmationComponent } from "../components/action-confirmation/action-confirmation.component";
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@angular/common/http";
|
|
11
|
+
import * as i2 from "./top-panel";
|
|
12
|
+
import * as i3 from "@ngx-translate/core";
|
|
13
|
+
import * as i4 from "@angular/router";
|
|
14
|
+
import * as i5 from "@angular/material/dialog";
|
|
15
|
+
const WORKFLOW_STATES_MAP = {
|
|
16
|
+
1: 'New',
|
|
17
|
+
2: 'Pending',
|
|
18
|
+
3: 'Terminated',
|
|
19
|
+
4: 'Completed',
|
|
20
|
+
5: 'Updated',
|
|
21
|
+
6: 'Default'
|
|
22
|
+
};
|
|
23
|
+
const EXCLUDED_REPORT_COLUMNS = ['listAction', 'button', 'checkbox'];
|
|
24
|
+
export class BackendService {
|
|
25
|
+
constructor(http, topPanel, translateService, route, dialog, config, secretsManager) {
|
|
26
|
+
this.http = http;
|
|
27
|
+
this.topPanel = topPanel;
|
|
28
|
+
this.translateService = translateService;
|
|
29
|
+
this.route = route;
|
|
30
|
+
this.dialog = dialog;
|
|
31
|
+
this.config = config;
|
|
32
|
+
this.secretsManager = secretsManager;
|
|
33
|
+
this.topPanelMessage$ = new Subject();
|
|
34
|
+
this.fieldAction$ = new Subject();
|
|
35
|
+
this.isEmptyItems = true;
|
|
36
|
+
this.topPanelMessage$.subscribe(msg => {
|
|
37
|
+
this.topPanel.topPanelMessage$.next(msg);
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
set defaults(value) {
|
|
41
|
+
}
|
|
42
|
+
get defaults() {
|
|
43
|
+
return {};
|
|
44
|
+
}
|
|
45
|
+
getStatusDescription(element, workflow) {
|
|
46
|
+
if (element?.stepId) {
|
|
47
|
+
let index = workflow?.workflowSteps?.findIndex(s => s.stepId === element.stepId);
|
|
48
|
+
if (index > -1) {
|
|
49
|
+
return this.translateService.getDefaultLang() === 'ar' ?
|
|
50
|
+
workflow?.workflowSteps[index].stepNameAr || workflow?.workflowSteps[index].stepName :
|
|
51
|
+
workflow?.workflowSteps[index].stepName;
|
|
52
|
+
// return this.translateService.instant(workflow?.workflowSteps[index].stepName);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
return this.translateService.instant('INVENTORY.inprocessStatus');
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
if (element.statusId === 4 && element.statusDescription) {
|
|
60
|
+
return element.statusDescription;
|
|
61
|
+
}
|
|
62
|
+
else if (element.statusId) {
|
|
63
|
+
return this.translateService.instant(WORKFLOW_STATES_MAP[element.statusId]);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
return "unknown";
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//sss
|
|
71
|
+
getItemsByFilter(reportRequest, apiUrl) {
|
|
72
|
+
const url = `${this.getApiBasePath()}/api/v1${apiUrl}/list`;
|
|
73
|
+
return this.http.post(url, reportRequest, { headers: this.buildSecuredHeader() }).pipe(distinctUntilChanged(), catchError(err => of(err.message || err)));
|
|
74
|
+
}
|
|
75
|
+
getItemAuditLog(reportRequest, apiUrl) {
|
|
76
|
+
const url = `${this.getApiBasePath()}/api/v1${apiUrl}/audit-log`;
|
|
77
|
+
return this.http.post(url, reportRequest, { headers: this.buildSecuredHeader() }).pipe(distinctUntilChanged(), catchError(err => of(err.message || err)));
|
|
78
|
+
}
|
|
79
|
+
buildSecuredHeader() {
|
|
80
|
+
const headers = new HttpHeaders({
|
|
81
|
+
'Content-Type': 'application/json',
|
|
82
|
+
Authorization: this.config.getAuthToken()
|
|
83
|
+
});
|
|
84
|
+
return headers;
|
|
85
|
+
}
|
|
86
|
+
buildFormSecuredHeader() {
|
|
87
|
+
const headers = new HttpHeaders({
|
|
88
|
+
Authorization: this.config.getAuthToken()
|
|
89
|
+
});
|
|
90
|
+
return headers;
|
|
91
|
+
}
|
|
92
|
+
labelKey(column, pageInfo) {
|
|
93
|
+
const configuredKey = column.label ? column.label : column.property;
|
|
94
|
+
if (configuredKey && configuredKey.trim() !== '' && configuredKey.startsWith(pageInfo.labelsSection)) {
|
|
95
|
+
return configuredKey;
|
|
96
|
+
}
|
|
97
|
+
return `${pageInfo.labelsSection}.${configuredKey}`;
|
|
98
|
+
}
|
|
99
|
+
buildReportColumn(columns, pageInfo) {
|
|
100
|
+
let columnDef = [];
|
|
101
|
+
columns.filter(x => !EXCLUDED_REPORT_COLUMNS.includes(x.type)).forEach((c, index) => {
|
|
102
|
+
let transLabel = this.translateService.instant(this.labelKey(c, pageInfo));
|
|
103
|
+
let transGroup = pageInfo.supportGroupingInExport ?
|
|
104
|
+
c.group.trim() ? this.translateService.instant(c.group) : ' ' : null;
|
|
105
|
+
if (c.type === 'workflowStatus') {
|
|
106
|
+
transLabel = this.translateService.instant('workflowStatus');
|
|
107
|
+
}
|
|
108
|
+
if ((c.reportVisible === true) || (c.visible === true && c.reportVisible !== false)) {
|
|
109
|
+
columnDef.push(new ColumnDef(c, index, transLabel, this.translateService.getDefaultLang(), transGroup));
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
return columnDef;
|
|
113
|
+
}
|
|
114
|
+
base64ToArrayBuffer(base64) {
|
|
115
|
+
const binaryString = window.atob(base64); // Comment this if not using base64
|
|
116
|
+
const bytes = new Uint8Array(binaryString.length);
|
|
117
|
+
return bytes.map((byte, i) => binaryString.charCodeAt(i));
|
|
118
|
+
}
|
|
119
|
+
buildReportRequest(columns, title, filterRequest, reportType, pageInfo, searchStr, orientation = 'PORTRAIT') {
|
|
120
|
+
const columnDef = this.buildReportColumn(columns, pageInfo);
|
|
121
|
+
const reportRequest = new ReportRequest({
|
|
122
|
+
dataset: [], filter: "",
|
|
123
|
+
columns: columnDef,
|
|
124
|
+
// sessionId: this.topPanel.userSession().sessionId,
|
|
125
|
+
sessionId: this.config.getAuthToken(),
|
|
126
|
+
title: this.translateService.instant(title),
|
|
127
|
+
prefLang: this.translateService.getDefaultLang(),
|
|
128
|
+
reportType: reportType,
|
|
129
|
+
searchStr: searchStr,
|
|
130
|
+
filterRequest: filterRequest,
|
|
131
|
+
orientation: orientation
|
|
132
|
+
});
|
|
133
|
+
return reportRequest;
|
|
134
|
+
}
|
|
135
|
+
getLookupItemsByMultiFilter(listItems, filterRequest) {
|
|
136
|
+
listItems.pageSize = 100;
|
|
137
|
+
filterRequest.pageSize = 100;
|
|
138
|
+
const params = new HttpParams().set('searchStr', listItems.searchStr);
|
|
139
|
+
let url = `${this.getApiBasePath()}/api/v1/${listItems.apiUri}`;
|
|
140
|
+
return this.http.post(url, filterRequest, { headers: this.buildSecuredHeader(), params: params }).pipe(distinctUntilChanged(), catchError(err => of(err.message || err)));
|
|
141
|
+
}
|
|
142
|
+
getLookupItemsByFilter(listItems, cascadedId) {
|
|
143
|
+
listItems.pageSize = 500;
|
|
144
|
+
const params = new HttpParams().set('searchStr', listItems.searchStr);
|
|
145
|
+
let url = `${this.getApiBasePath()}/api/v1/${listItems.apiUri}`;
|
|
146
|
+
if (cascadedId) {
|
|
147
|
+
url = url + `/${cascadedId}`;
|
|
148
|
+
}
|
|
149
|
+
return this.http.post(url, listItems, { headers: this.buildSecuredHeader() }).pipe(distinctUntilChanged(), catchError(err => of(err.message || err)));
|
|
150
|
+
}
|
|
151
|
+
downloadReport(reportRequest, pageApiPath, readyPath) {
|
|
152
|
+
const s = readyPath === true ? `/api/v1${pageApiPath}` : `/api/v1${pageApiPath}/extractAndDownloadListReport`;
|
|
153
|
+
return this.http.post(this.getApiBasePath() + s, reportRequest, { headers: this.buildSecuredHeader() }).subscribe((resp) => {
|
|
154
|
+
if (resp.valid) {
|
|
155
|
+
if (resp.body) {
|
|
156
|
+
const filename = reportRequest.title + "." + reportRequest.reportType;
|
|
157
|
+
const blob = new Blob([this.base64ToArrayBuffer(resp.body)]);
|
|
158
|
+
if (navigator.msSaveBlob) {
|
|
159
|
+
navigator.msSaveBlob(blob, filename);
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
const link = document.createElement('a');
|
|
163
|
+
// Browsers that support HTML5 download attribute
|
|
164
|
+
if (link.download !== undefined) {
|
|
165
|
+
const url = URL.createObjectURL(blob);
|
|
166
|
+
link.setAttribute('href', url);
|
|
167
|
+
link.setAttribute('download', filename);
|
|
168
|
+
link.style.visibility = 'hidden';
|
|
169
|
+
document.body.appendChild(link);
|
|
170
|
+
link.click();
|
|
171
|
+
document.body.removeChild(link);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
else {
|
|
176
|
+
this.topPanel.topPanelMessage$.next(new SnackMessage(resp.message.toString(), true, 'info'));
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
else {
|
|
180
|
+
this.topPanel.topPanelMessage$.next(new SnackMessage(resp.message.toString(), false, 'error'));
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
getApiBasePath() {
|
|
185
|
+
return this.config.getBaseApi();
|
|
186
|
+
}
|
|
187
|
+
doActionWithAttachments(request, param2, pageInfo) {
|
|
188
|
+
const url = `${this.getApiBasePath()}/api/v1${pageInfo.apiUri}/doActionWithAttachments`;
|
|
189
|
+
const formData = new FormData();
|
|
190
|
+
formData.set('doActionRequest', new Blob([JSON.stringify(request)], {
|
|
191
|
+
type: "application/json"
|
|
192
|
+
}));
|
|
193
|
+
return this.http.post(url, formData, { headers: this.buildFormSecuredHeader() }).pipe(distinctUntilChanged(), catchError((error) => {
|
|
194
|
+
return of(error.error);
|
|
195
|
+
}));
|
|
196
|
+
}
|
|
197
|
+
doActionWithAttachment(request, file, pageInfo) {
|
|
198
|
+
const url = `${this.getApiBasePath()}/api/v1${pageInfo.apiUri}/doActionWithAttachments`;
|
|
199
|
+
const formData = new FormData();
|
|
200
|
+
formData.append('files', file);
|
|
201
|
+
formData.set('doActionRequest', new Blob([JSON.stringify(request)], {
|
|
202
|
+
type: "application/json"
|
|
203
|
+
}));
|
|
204
|
+
return this.http.post(url, formData, {
|
|
205
|
+
headers: this.buildFormSecuredHeader()
|
|
206
|
+
}).pipe(distinctUntilChanged(), catchError((error) => {
|
|
207
|
+
// Transform the error into a fake success-like response
|
|
208
|
+
return of(error.error); // This will now be passed to `next` in subscribe()
|
|
209
|
+
}));
|
|
210
|
+
}
|
|
211
|
+
encrypt(message) {
|
|
212
|
+
return this.secretsManager.encryptSecret(message);
|
|
213
|
+
}
|
|
214
|
+
decrypt(secret) {
|
|
215
|
+
return this.secretsManager.decryptSecret(secret);
|
|
216
|
+
}
|
|
217
|
+
getConfirmation() {
|
|
218
|
+
const dialogRef = this.dialog.open(ActionConfirmationComponent, {
|
|
219
|
+
data: { acceptActionLabel: 'accept', rejectActionLabel: 'return', warningMsg: 'confirmation_message' },
|
|
220
|
+
width: '600px',
|
|
221
|
+
height: 'auto'
|
|
222
|
+
});
|
|
223
|
+
return dialogRef.afterClosed();
|
|
224
|
+
}
|
|
225
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BackendService, deps: [{ token: i1.HttpClient }, { token: i2.TopPanel }, { token: i3.TranslateService }, { token: i4.ActivatedRoute }, { token: i5.MatDialog }, { token: 'config' }, { token: 'secretsManager' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
226
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BackendService, providedIn: 'root' }); }
|
|
227
|
+
}
|
|
228
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BackendService, decorators: [{
|
|
229
|
+
type: Injectable,
|
|
230
|
+
args: [{
|
|
231
|
+
providedIn: 'root'
|
|
232
|
+
}]
|
|
233
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.TopPanel }, { type: i3.TranslateService }, { type: i4.ActivatedRoute }, { type: i5.MatDialog }, { type: undefined, decorators: [{
|
|
234
|
+
type: Inject,
|
|
235
|
+
args: ['config']
|
|
236
|
+
}] }, { type: undefined, decorators: [{
|
|
237
|
+
type: Inject,
|
|
238
|
+
args: ['secretsManager']
|
|
239
|
+
}] }] });
|
|
240
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZC1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52b2ljZXEvdWktbGliL3NyYy9saWIvc2VydmljZXMvYmFja2VuZC1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBZ0MsV0FBVyxFQUFFLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzVGLE9BQU8sRUFBYSxFQUFFLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzdDLE9BQU8sRUFBQyxVQUFVLEVBQUUsb0JBQW9CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFHL0QsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBS3pELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQVFqRSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQzs7Ozs7OztBQUU1RyxNQUFNLG1CQUFtQixHQUEyQjtJQUNoRCxDQUFDLEVBQUUsS0FBSztJQUNSLENBQUMsRUFBRSxTQUFTO0lBQ1osQ0FBQyxFQUFFLFlBQVk7SUFDZixDQUFDLEVBQUUsV0FBVztJQUNkLENBQUMsRUFBRSxTQUFTO0lBQ1osQ0FBQyxFQUFFLFNBQVM7Q0FDZixDQUFDO0FBRUYsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLFlBQVksRUFBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFJcEUsTUFBTSxPQUFPLGNBQWM7SUFRdkIsWUFBb0IsSUFBZ0IsRUFDaEIsUUFBa0IsRUFDbEIsZ0JBQWtDLEVBQ2xDLEtBQXFCLEVBQ3JCLE1BQWlCLEVBQ0MsTUFBVyxFQUNILGNBQW1CO1FBTjdDLFNBQUks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USxFQUFFO1lBQ3hDLE9BQU8sRUFBRSxJQUFJLENBQUMsc0JBQXNCLEVBQUU7U0FDdkMsQ0FBQyxDQUFDLElBQUksQ0FDTCxvQkFBb0IsRUFBRSxFQUN0QixVQUFVLENBQUMsQ0FBQyxLQUF3QixFQUFFLEVBQUU7WUFDdEMsd0RBQXdEO1lBQ3hELE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLG1EQUFtRDtRQUM3RSxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8sQ0FBQyxPQUFZO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELE9BQU8sQ0FBQyxNQUFXO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVNLGVBQWU7UUFDcEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUU7WUFDOUQsSUFBSSxFQUFFLEVBQUMsaUJBQWlCLEVBQUUsUUFBUSxFQUFDLGlCQUFpQixFQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsc0JBQXNCLEVBQUM7WUFDbEcsS0FBSyxFQUFFLE9BQU87WUFDZCxNQUFNLEVBQUUsTUFBTTtTQUNmLENBQUMsQ0FBQztRQUNILE9BQU8sU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2pDLENBQUM7K0dBblBVLGNBQWMsMkpBYUgsUUFBUSxhQUNSLGdCQUFnQjttSEFkM0IsY0FBYyxjQUZYLE1BQU07OzRGQUVULGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFjZ0IsTUFBTTsyQkFBQyxRQUFROzswQkFDZixNQUFNOzJCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0h0dHBDbGllbnQsIEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwSGVhZGVycywgSHR0cFBhcmFtc30gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7T2JzZXJ2YWJsZSwgb2YsIFN1YmplY3R9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7Y2F0Y2hFcnJvciwgZGlzdGluY3RVbnRpbENoYW5nZWR9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQge1NuYWNrTWVzc2FnZX0gZnJvbSBcIi4uL2Jhc2UtbW9kZWwvc25hY2stbWVzc2FnZS5tb2RlbFwiO1xyXG5pbXBvcnQge1BhZ2VJbmZvfSBmcm9tIFwiLi4vYmFzZS1tb2RlbC9wYWdlLWluZm9cIjtcclxuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xyXG5pbXBvcnQge0NvbHVtbkRlZn0gZnJvbSBcIi4uL2Jhc2UtbW9kZWwvY29sdW1uLWRlZi5tb2RlbFwiO1xyXG5pbXBvcnQge1RhYmxlQ29sdW1ufSBmcm9tIFwiLi4vYmFzZS1tb2RlbC90YWJsZS1jb2x1bW4uaW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7R2V0SXRlbXNMaXN0fSBmcm9tIFwiLi4vYmFzZS1tb2RlbC9nZXQtaXRlbXMtbGlzdFwiO1xyXG5pbXBvcnQge0ZpZWxkQWN0aW9ufSBmcm9tIFwiLi4vYmFzZS1tb2RlbC9maWVsZC1hY3Rpb25cIjtcclxuaW1wb3J0IHtXb3JrZmxvd30gZnJvbSBcIi4uL2Jhc2UtbW9kZWwvd29ya2Zsb3cvd29ya2Zsb3cubW9kZWxcIjtcclxuaW1wb3J0IHtSZXBvcnRSZXF1ZXN0fSBmcm9tIFwiLi4vYmFzZS1tb2RlbC9yZXBvcnQtcmVxdWVzdC5tb2RlbFwiO1xyXG5pbXBvcnQge0ZpbHRlclJlcXVlc3R9IGZyb20gXCIuLi9iYXNlLW1vZGVsL2ZpbHRlci1yZXF1ZXN0XCI7XHJcbmltcG9ydCB7UmVzcG9uc2VFbnZlbG9wfSBmcm9tIFwiLi4vYmFzZS1tb2RlbC9yZXNwb25zZS1lbnZlbG9wLm1vZGVsXCI7XHJcbmltcG9ydCB7Rm9ybUdyb3VwfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7VG9wUGFuZWx9IGZyb20gXCIuL3RvcC1wYW5lbFwiO1xyXG5pbXBvcnQge0RvQWN0aW9uUmVxdWVzdH0gZnJvbSBcIi4uL2Jhc2UtbW9kZWwvZG8tYWN0aW9uLXJlcXVlc3RcIjtcclxuaW1wb3J0IHtNYXREaWFsb2d9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcclxuaW1wb3J0IHtBY3Rpb25Db25maXJtYXRpb25Db21wb25lbnR9IGZyb20gXCIuLi9jb21wb25lbnRzL2FjdGlvbi1jb25maXJtYXRpb24vYWN0aW9uLWNvbmZpcm1hdGlvbi5jb21wb25lbnRcIjtcclxuXHJcbmNvbnN0IFdPUktGTE9XX1NUQVRFU19NQVA6IFJlY29yZDxudW1iZXIsIHN0cmluZz4gPSB7XHJcbiAgICAxOiAnTmV3JyxcclxuICAgIDI6ICdQZW5kaW5nJyxcclxuICAgIDM6ICdUZXJtaW5hdGVkJyxcclxuICAgIDQ6ICdDb21wbGV0ZWQnLFxyXG4gICAgNTogJ1VwZGF0ZWQnLFxyXG4gICAgNjogJ0RlZmF1bHQnXHJcbn07XHJcblxyXG5jb25zdCBFWENMVURFRF9SRVBPUlRfQ09MVU1OUyA9IFsnbGlzdEFjdGlvbicsJ2J1dHRvbicsICdjaGVja2JveCddO1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEJhY2tlbmRTZXJ2aWNlIHtcclxuICAgIHB1YmxpYyB0b3BQYW5lbE1lc3NhZ2UkID0gbmV3IFN1YmplY3Q8U25hY2tNZXNzYWdlPigpO1xyXG4gICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgcHVibGljIHBhcmVudEZvcm06IEZvcm1Hcm91cDtcclxuICAgIHB1YmxpYyBjaGlsZEZvcm06IEZvcm1Hcm91cDtcclxuICAgIHB1YmxpYyBmaWVsZEFjdGlvbiQgPSBuZXcgU3ViamVjdDxGaWVsZEFjdGlvbj4oKTtcclxuICAgIHB1YmxpYyBpc0VtcHR5SXRlbXM6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgICAgICAgICAgICAgIHByaXZhdGUgdG9wUGFuZWw6IFRvcFBhbmVsLFxyXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgICAgICAgICAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgICAgICAgICAgICAgQEluamVjdCgnY29uZmlnJykgcHJpdmF0ZSBjb25maWc6IGFueSxcclxuICAgICAgICAgICAgICAgIEBJbmplY3QoJ3NlY3JldHNNYW5hZ2VyJykgcHJpdmF0ZSBzZWNyZXRzTWFuYWdlcjogYW55KSB7XHJcblxyXG4gICAgICAgIHRoaXMudG9wUGFuZWxNZXNzYWdlJC5zdWJzY3JpYmUobXNnID0+IHtcclxuICAgICAgICAgICAgdGhpcy50b3BQYW5lbC50b3BQYW5lbE1lc3NhZ2UkLm5leHQobXNnKTtcclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHNldCBkZWZhdWx0cyh2YWx1ZTogYW55IHwgdW5kZWZpbmVkKSB7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGRlZmF1bHRzKCk6IGFueSB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgcmV0dXJuIHt9O1xyXG4gICAgfVxyXG5cclxuICAgIGdldFN0YXR1c0Rlc2NyaXB0aW9uKGVsZW1lbnQ6IGFueSwgd29ya2Zsb3c6IFdvcmtmbG93KSB7XHJcbiAgICAgICAgaWYgKGVsZW1lbnQ/LnN0ZXBJZCkge1xyXG5cclxuICAgICAgICAgICAgbGV0IGluZGV4ID0gd29ya2Zsb3c/LndvcmtmbG93U3RlcHM/LmZpbmRJbmRleChzID0+IHMuc3RlcElkID09PSBlbGVtZW50LnN0ZXBJZCk7XHJcbiAgICAgICAgICAgIGlmIChpbmRleCA+IC0xKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldERlZmF1bHRMYW5nKCkgPT09ICdhcicgP1xyXG4gICAgICAgICAgICAgICAgICAgIHdvcmtmbG93Py53b3JrZmxvd1N0ZXBzW2luZGV4XS5zdGVwTmFtZUFyIHx8IHdvcmtmbG93Py53b3JrZmxvd1N0ZXBzW2luZGV4XS5zdGVwTmFtZTpcclxuICAgICAgICAgICAgICAgICAgICB3b3JrZmxvdz8ud29ya2Zsb3dTdGVwc1tpbmRleF0uc3RlcE5hbWU7XHJcbiAgICAgICAgICAgICAgICAvLyByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQod29ya2Zsb3c/LndvcmtmbG93U3RlcHNbaW5kZXhdLnN0ZXBOYW1lKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnSU5WRU5UT1JZLmlucHJvY2Vzc1N0YXR1cycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKGVsZW1lbnQuc3RhdHVzSWQgPT09IDQgJiYgZWxlbWVudC5zdGF0dXNEZXNjcmlwdGlvbikge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQuc3RhdHVzRGVzY3JpcHRpb247XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZWxlbWVudC5zdGF0dXNJZCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFdPUktGTE9XX1NUQVRFU19NQVBbZWxlbWVudC5zdGF0dXNJZF0pO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIFwidW5rbm93blwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4vL3Nzc1xyXG4gICAgZ2V0SXRlbXNCeUZpbHRlcihyZXBvcnRSZXF1ZXN0OiBhbnksIGFwaVVybDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgICAgICBjb25zdCB1cmwgPSBgJHt0aGlzLmdldEFwaUJhc2VQYXRoKCl9L2FwaS92MSR7YXBpVXJsfS9saXN0YDtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCByZXBvcnRSZXF1ZXN0LCB7IGhlYWRlcnM6IHRoaXMuYnVpbGRTZWN1cmVkSGVhZGVyKCl9KS5waXBlKFxyXG4gICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxyXG4gICAgICAgICAgICBjYXRjaEVycm9yKGVyciA9PiBvZihlcnIubWVzc2FnZSB8fCBlcnIpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0SXRlbUF1ZGl0TG9nKHJlcG9ydFJlcXVlc3Q6IGFueSwgYXBpVXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuZ2V0QXBpQmFzZVBhdGgoKX0vYXBpL3YxJHthcGlVcmx9L2F1ZGl0LWxvZ2A7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgcmVwb3J0UmVxdWVzdCwgeyBoZWFkZXJzOiB0aGlzLmJ1aWxkU2VjdXJlZEhlYWRlcigpfSkucGlwZShcclxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4gb2YoZXJyLm1lc3NhZ2UgfHwgZXJyKSkpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwcml2YXRlIGJ1aWxkU2VjdXJlZEhlYWRlcigpIHtcclxuICAgICAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKHtcclxuICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgICAgICAgICAgQXV0aG9yaXphdGlvbjogdGhpcy5jb25maWcuZ2V0QXV0aFRva2VuKClcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gaGVhZGVycztcclxuICAgIH1cclxuXHJcbiAgcHVibGljIGJ1aWxkRm9ybVNlY3VyZWRIZWFkZXIoKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKHtcclxuICAgICAgQXV0aG9yaXphdGlvbjogdGhpcy5jb25maWcuZ2V0QXV0aFRva2VuKClcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGhlYWRlcnM7XHJcbiAgfVxyXG5cclxuICBsYWJlbEtleShjb2x1bW46IGFueSwgcGFnZUluZm86IFBhZ2VJbmZvKSB7XHJcbiAgICBjb25zdCBjb25maWd1cmVkS2V5ID0gY29sdW1uLmxhYmVsID8gY29sdW1uLmxhYmVsIDogY29sdW1uLnByb3BlcnR5O1xyXG5cclxuICAgIGlmIChjb25maWd1cmVkS2V5ICYmIGNvbmZpZ3VyZWRLZXkudHJpbSgpICE9PSAnJyAmJiBjb25maWd1cmVkS2V5LnN0YXJ0c1dpdGgocGFnZUluZm8ubGFiZWxzU2VjdGlvbikpIHtcclxuICAgICAgcmV0dXJuIGNvbmZpZ3VyZWRLZXk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGAke3BhZ2VJbmZvLmxhYmVsc1NlY3Rpb259LiR7Y29uZmlndXJlZEtleX1gO1xyXG4gIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBidWlsZFJlcG9ydENvbHVtbihjb2x1bW5zOiBUYWJsZUNvbHVtbjxhbnk+W10sIHBhZ2VJbmZvOiBQYWdlSW5mbyk6IENvbHVtbkRlZltdIHtcclxuICAgICAgICBsZXQgY29sdW1uRGVmOiBDb2x1bW5EZWZbXSA9IFtdO1xyXG5cclxuICAgICAgICAgIGNvbHVtbnMuZmlsdGVyKHggPT4gIUVYQ0xVREVEX1JFUE9SVF9DT0xVTU5TLmluY2x1ZGVzKHgudHlwZSkpLmZvckVhY2goKGMsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgIGxldCB0cmFuc0xhYmVsID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQodGhpcy5sYWJlbEtleShjLHBhZ2VJbmZvKSk7XHJcbiAgICAgICAgICAgIGxldCB0cmFuc0dyb3VwID0gcGFnZUluZm8uc3VwcG9ydEdyb3VwaW5nSW5FeHBvcnQgP1xyXG4gICAgICAgICAgICAgIGMuZ3JvdXAudHJpbSgpID8gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoYy5ncm91cCkgOiAnICcgOiBudWxsO1xyXG4gICAgICAgICAgICBpZiAoYy50eXBlID09PSAnd29ya2Zsb3dTdGF0dXMnKSB7XHJcbiAgICAgICAgICAgICAgdHJhbnNMYWJlbCA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCd3b3JrZmxvd1N0YXR1cycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICgoYy5yZXBvcnRWaXNpYmxlID09PSB0cnVlKSB8fCAoYy52aXNpYmxlID09PSB0cnVlICYmIGMucmVwb3J0VmlzaWJsZSAhPT0gZmFsc2UpKSB7XHJcbiAgICAgICAgICAgICAgY29sdW1uRGVmLnB1c2gobmV3IENvbHVtbkRlZihjLCBpbmRleCwgdHJhbnNMYWJlbCwgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldERlZmF1bHRMYW5nKCksdHJhbnNHcm91cCkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIGNvbHVtbkRlZjtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGJhc2U2NFRvQXJyYXlCdWZmZXIoYmFzZTY0OiBzdHJpbmcpIHtcclxuICAgICAgICBjb25zdCBiaW5hcnlTdHJpbmcgPSB3aW5kb3cuYXRvYihiYXNlNjQpOyAvLyBDb21tZW50IHRoaXMgaWYgbm90IHVzaW5nIGJhc2U2NFxyXG4gICAgICAgIGNvbnN0IGJ5dGVzID0gbmV3IFVpbnQ4QXJyYXkoYmluYXJ5U3RyaW5nLmxlbmd0aCk7XHJcbiAgICAgICAgcmV0dXJuIGJ5dGVzLm1hcCgoYnl0ZSwgaSkgPT4gYmluYXJ5U3RyaW5nLmNoYXJDb2RlQXQoaSkpO1xyXG4gICAgfVxyXG5cclxuICAgIGJ1aWxkUmVwb3J0UmVxdWVzdChjb2x1bW5zOiBUYWJsZUNvbHVtbjxhbnk+W10sIHRpdGxlOiBzdHJpbmcgfCBzdHJpbmdbXSwgZmlsdGVyUmVxdWVzdDogRmlsdGVyUmVxdWVzdCwgcmVwb3J0VHlwZTogYW55LCBwYWdlSW5mbzogUGFnZUluZm8sIHNlYXJjaFN0cjogc3RyaW5nICxvcmllbnRhdGlvbj0nUE9SVFJBSVQnKTogUmVwb3J0UmVxdWVzdCB7XHJcbiAgICAgICAgY29uc3QgY29sdW1uRGVmID0gdGhpcy5idWlsZFJlcG9ydENvbHVtbihjb2x1bW5zLCBwYWdlSW5mbyk7XHJcbiAgICAgICAgY29uc3QgcmVwb3J0UmVxdWVzdCA9IG5ldyBSZXBvcnRSZXF1ZXN0KHtcclxuICAgICAgICAgICAgZGF0YXNldDogW10sIGZpbHRlcjogXCJcIixcclxuICAgICAgICAgICAgY29sdW1uczogY29sdW1uRGVmLFxyXG4gICAgICAgICAgICAvLyBzZXNzaW9uSWQ6IHRoaXMudG9wUGFuZWwudXNlclNlc3Npb24oKS5zZXNzaW9uSWQsXHJcbiAgICAgICAgICAgIHNlc3Npb25JZDogdGhpcy5jb25maWcuZ2V0QXV0aFRva2VuKCksXHJcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCh0aXRsZSksXHJcbiAgICAgICAgICAgIHByZWZMYW5nOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuZ2V0RGVmYXVsdExhbmcoKSxcclxuICAgICAgICAgICAgcmVwb3J0VHlwZTogcmVwb3J0VHlwZSxcclxuICAgICAgICAgICAgc2VhcmNoU3RyOiBzZWFyY2hTdHIsXHJcbiAgICAgICAgICAgIGZpbHRlclJlcXVlc3Q6IGZpbHRlclJlcXVlc3QsXHJcbiAgICAgICAgICAgIG9yaWVudGF0aW9uOiBvcmllbnRhdGlvbn0pO1xyXG4gICAgICAgIHJldHVybiByZXBvcnRSZXF1ZXN0O1xyXG4gICAgfVxyXG5cclxuICAgIGdldExvb2t1cEl0ZW1zQnlNdWx0aUZpbHRlcihsaXN0SXRlbXM6IEdldEl0ZW1zTGlzdCwgZmlsdGVyUmVxdWVzdD86IEZpbHRlclJlcXVlc3QpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICBsaXN0SXRlbXMucGFnZVNpemUgPSAxMDA7XHJcbiAgICAgIGZpbHRlclJlcXVlc3QucGFnZVNpemUgPSAxMDA7XHJcbiAgICAgICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ3NlYXJjaFN0cicsIGxpc3RJdGVtcy5zZWFyY2hTdHIpO1xyXG4gICAgICAgIGxldCB1cmwgPSBgJHt0aGlzLmdldEFwaUJhc2VQYXRoKCl9L2FwaS92MS8ke2xpc3RJdGVtcy5hcGlVcml9YDtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCBmaWx0ZXJSZXF1ZXN0LCB7IGhlYWRlcnM6IHRoaXMuYnVpbGRTZWN1cmVkSGVhZGVyKCksIHBhcmFtczogcGFyYW1zfSkucGlwZShcclxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4gb2YoZXJyLm1lc3NhZ2UgfHwgZXJyKSkpO1xyXG4gICAgfVxyXG4gICAgZ2V0TG9va3VwSXRlbXNCeUZpbHRlcihsaXN0SXRlbXM6IEdldEl0ZW1zTGlzdCwgY2FzY2FkZWRJZD86IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICAgICAgbGlzdEl0ZW1zLnBhZ2VTaXplID0gNTAwO1xyXG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdzZWFyY2hTdHInLCBsaXN0SXRlbXMuc2VhcmNoU3RyKTtcclxuICAgICAgICBsZXQgdXJsID0gYCR7dGhpcy5nZXRBcGlCYXNlUGF0aCgpfS9hcGkvdjEvJHtsaXN0SXRlbXMuYXBpVXJpfWA7XHJcbiAgICAgICAgaWYgKGNhc2NhZGVkSWQpIHtcclxuICAgICAgICAgICAgdXJsID0gdXJsICsgYC8ke2Nhc2NhZGVkSWR9YFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgbGlzdEl0ZW1zLHsgaGVhZGVyczogdGhpcy5idWlsZFNlY3VyZWRIZWFkZXIoKX0pLnBpcGUoXHJcbiAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXHJcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoZXJyID0+IG9mKGVyci5tZXNzYWdlIHx8IGVycikpKTtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIGRvd25sb2FkUmVwb3J0KHJlcG9ydFJlcXVlc3Q6IFJlcG9ydFJlcXVlc3QsIHBhZ2VBcGlQYXRoIDogc3RyaW5nLCByZWFkeVBhdGg/IDogYm9vbGVhbiApIHtcclxuICAgICAgY29uc3QgcyA9IHJlYWR5UGF0aCA9PT0gdHJ1ZSA/IGAvYXBpL3YxJHtwYWdlQXBpUGF0aH1gIDogYC9hcGkvdjEke3BhZ2VBcGlQYXRofS9leHRyYWN0QW5kRG93bmxvYWRMaXN0UmVwb3J0YDtcclxuICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PFJlc3BvbnNlRW52ZWxvcD4odGhpcy5nZXRBcGlCYXNlUGF0aCgpICsgcywgcmVwb3J0UmVxdWVzdCwge2hlYWRlcnM6IHRoaXMuYnVpbGRTZWN1cmVkSGVhZGVyKCl9KS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgIChyZXNwOlJlc3BvbnNlRW52ZWxvcCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHJlc3AudmFsaWQpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcC5ib2R5KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGZpbGVuYW1lID0gcmVwb3J0UmVxdWVzdC50aXRsZSArIFwiLlwiICsgcmVwb3J0UmVxdWVzdC5yZXBvcnRUeXBlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW3RoaXMuYmFzZTY0VG9BcnJheUJ1ZmZlcihyZXNwLmJvZHkpXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuYXZpZ2F0b3IubXNTYXZlQmxvYikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2aWdhdG9yLm1zU2F2ZUJsb2IoYmxvYiwgZmlsZW5hbWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEJyb3dzZXJzIHRoYXQgc3VwcG9ydCBIVE1MNSBkb3dubG9hZCBhdHRyaWJ1dGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsaW5rLmRvd25sb2FkICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1cmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmsuc2V0QXR0cmlidXRlKCdocmVmJywgdXJsKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5rLnNldEF0dHJpYnV0ZSgnZG93bmxvYWQnLCBmaWxlbmFtZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluay5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5rLmNsaWNrKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudG9wUGFuZWwudG9wUGFuZWxNZXNzYWdlJC5uZXh0KG5ldyBTbmFja01lc3NhZ2UocmVzcC5tZXNzYWdlLnRvU3RyaW5nKCksIHRydWUsICdpbmZvJykpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b3BQYW5lbC50b3BQYW5lbE1lc3NhZ2UkLm5leHQobmV3IFNuYWNrTWVzc2FnZShyZXNwLm1lc3NhZ2UudG9TdHJpbmcoKSwgZmFsc2UsICdlcnJvcicpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0QXBpQmFzZVBhdGgoKXtcclxuICAgICAgcmV0dXJuIHRoaXMuY29uZmlnLmdldEJhc2VBcGkoKTtcclxuICAgIH1cclxuXHJcbiAgZG9BY3Rpb25XaXRoQXR0YWNobWVudHMocmVxdWVzdDogRG9BY3Rpb25SZXF1ZXN0LCBwYXJhbTI6IGFueVtdLCBwYWdlSW5mbzogUGFnZUluZm8pIHtcclxuICAgIGNvbnN0IHVybCA9IGAke3RoaXMuZ2V0QXBpQmFzZVBhdGgoKX0vYXBpL3YxJHtwYWdlSW5mby5hcGlVcml9L2RvQWN0aW9uV2l0aEF0dGFjaG1lbnRzYDtcclxuICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgZm9ybURhdGEuc2V0KCdkb0FjdGlvblJlcXVlc3QnLCBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkocmVxdWVzdCldLCB7XHJcbiAgICAgIHR5cGU6IFwiYXBwbGljYXRpb24vanNvblwiXHJcbiAgICB9KSk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgZm9ybURhdGEsIHsgaGVhZGVyczogdGhpcy5idWlsZEZvcm1TZWN1cmVkSGVhZGVyKCkgfSkucGlwZShcclxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yLmVycm9yKTtcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gIH1cclxuICBkb0FjdGlvbldpdGhBdHRhY2htZW50KHJlcXVlc3Q6IERvQWN0aW9uUmVxdWVzdCwgZmlsZTogRmlsZSwgcGFnZUluZm86IFBhZ2VJbmZvKSB7XHJcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLmdldEFwaUJhc2VQYXRoKCl9L2FwaS92MSR7cGFnZUluZm8uYXBpVXJpfS9kb0FjdGlvbldpdGhBdHRhY2htZW50c2A7XHJcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcclxuXHJcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGVzJywgZmlsZSk7XHJcbiAgICBmb3JtRGF0YS5zZXQoJ2RvQWN0aW9uUmVxdWVzdCcsIG5ldyBCbG9iKFtKU09OLnN0cmluZ2lmeShyZXF1ZXN0KV0sIHtcclxuICAgICAgdHlwZTogXCJhcHBsaWNhdGlvbi9qc29uXCJcclxuICAgIH0pKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55Pih1cmwsIGZvcm1EYXRhLCB7XHJcbiAgICAgIGhlYWRlcnM6IHRoaXMuYnVpbGRGb3JtU2VjdXJlZEhlYWRlcigpXHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxyXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAvLyBUcmFuc2Zvcm0gdGhlIGVycm9yIGludG8gYSBmYWtlIHN1Y2Nlc3MtbGlrZSByZXNwb25zZVxyXG4gICAgICAgIHJldHVybiBvZihlcnJvci5lcnJvcik7IC8vIFRoaXMgd2lsbCBub3cgYmUgcGFzc2VkIHRvIGBuZXh0YCBpbiBzdWJzY3JpYmUoKVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGVuY3J5cHQobWVzc2FnZTogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5zZWNyZXRzTWFuYWdlci5lbmNyeXB0U2VjcmV0KG1lc3NhZ2UpO1xyXG4gIH1cclxuXHJcbiAgZGVjcnlwdChzZWNyZXQ6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2VjcmV0c01hbmFnZXIuZGVjcnlwdFNlY3JldChzZWNyZXQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldENvbmZpcm1hdGlvbigpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihBY3Rpb25Db25maXJtYXRpb25Db21wb25lbnQsIHtcclxuICAgICAgZGF0YToge2FjY2VwdEFjdGlvbkxhYmVsOiAnYWNjZXB0JyxyZWplY3RBY3Rpb25MYWJlbDoncmV0dXJuJywgd2FybmluZ01zZzogJ2NvbmZpcm1hdGlvbl9tZXNzYWdlJ30sXHJcbiAgICAgIHdpZHRoOiAnNjAwcHgnLFxyXG4gICAgICBoZWlnaHQ6ICdhdXRvJ1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCk7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuZGVjbGFyZSBnbG9iYWwge1xyXG4gICAgaW50ZXJmYWNlIE5hdmlnYXRvciB7XHJcbiAgICAgICAgbXNTYXZlQmxvYjogKGJsb2JPckJhc2U2NDogQmxvYiB8IHN0cmluZywgZmlsZW5hbWU6IHN0cmluZykgPT4gdm9pZFxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './backend-service';
|
|
2
|
+
export * from './top-panel';
|
|
3
|
+
export * from './trigger-form.service';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZvaWNlcS91aS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsd0JBQXdCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2JhY2tlbmQtc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdG9wLXBhbmVsJztcclxuZXhwb3J0ICogZnJvbSAnLi90cmlnZ2VyLWZvcm0uc2VydmljZSdcclxuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { BehaviorSubject } from "rxjs";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class TopPanel {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.topPanelMessage$ = new BehaviorSubject({
|
|
7
|
+
message: '',
|
|
8
|
+
translate: false,
|
|
9
|
+
type: 'info',
|
|
10
|
+
translateParams: {}
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopPanel, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
14
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopPanel, providedIn: 'root' }); }
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopPanel, decorators: [{
|
|
17
|
+
type: Injectable,
|
|
18
|
+
args: [{
|
|
19
|
+
providedIn: 'root'
|
|
20
|
+
}]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wLXBhbmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52b2ljZXEvdWktbGliL3NyYy9saWIvc2VydmljZXMvdG9wLXBhbmVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLE1BQU0sQ0FBQzs7QUFNckMsTUFBTSxPQUFPLFFBQVE7SUFIckI7UUFLUyxxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBZTtZQUMxRCxPQUFPLEVBQUUsRUFBRTtZQUNYLFNBQVMsRUFBRSxLQUFLO1lBQ2hCLElBQUksRUFBRSxNQUFNO1lBQ1osZUFBZSxFQUFFLEVBQUU7U0FDcEIsQ0FBQyxDQUFDO0tBRUo7K0dBVFksUUFBUTttSEFBUixRQUFRLGNBRlAsTUFBTTs7NEZBRVAsUUFBUTtrQkFIcEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge1NuYWNrTWVzc2FnZX0gZnJvbSBcIi4uL2Jhc2UtbW9kZWwvc25hY2stbWVzc2FnZS5tb2RlbFwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9wUGFuZWwge1xyXG5cclxuICBwdWJsaWMgdG9wUGFuZWxNZXNzYWdlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U25hY2tNZXNzYWdlPih7XHJcbiAgICBtZXNzYWdlOiAnJyxcclxuICAgIHRyYW5zbGF0ZTogZmFsc2UsXHJcbiAgICB0eXBlOiAnaW5mbycsXHJcbiAgICB0cmFuc2xhdGVQYXJhbXM6IHt9XHJcbiAgfSk7XHJcblxyXG59XHJcbiJdfQ==
|