bpm-core 0.0.25 → 0.0.26
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/lib/app/app.component.mjs +4 -4
- package/esm2022/lib/components/app-component-sections/activities/activities.component.mjs +20 -34
- package/esm2022/lib/components/app-component-sections/approvals/approvals.component.mjs +26 -0
- package/esm2022/lib/components/app-component-sections/approvals-workflow/approvals-workflow.component.mjs +98 -0
- package/esm2022/lib/components/app-component-sections/service-header/service-header.component.mjs +15 -13
- package/esm2022/lib/components/shared-components/action-buttons/action-buttons.component.mjs +93 -11
- package/esm2022/lib/components/shared-components/dialogs/submit-dialog/submit-dialog.component.mjs +12 -17
- package/esm2022/lib/components/shared-components/form-field/control-value-accessor.directive.mjs +9 -11
- package/esm2022/lib/components/shared-components/form-field/date-picker/date-picker.component.mjs +3 -5
- package/esm2022/lib/components/shared-components/form-field/input/input.component.mjs +9 -42
- package/esm2022/lib/components/shared-components/form-field/validation-errors/validation-errors.component.mjs +42 -0
- package/esm2022/lib/constants/constants.mjs +3 -1
- package/esm2022/lib/environments/environment.local.mjs +2 -2
- package/esm2022/lib/services/core.service.ts.mjs +304 -295
- package/esm2022/lib/testComponent/general-approver-section/general-approver-section.component.mjs +72 -27
- package/esm2022/lib/testComponent/request-details-section/request-details-section.component.mjs +33 -11
- package/fesm2022/bpm-core.mjs +774 -668
- package/fesm2022/bpm-core.mjs.map +1 -1
- package/lib/components/app-component-sections/activities/activities.component.d.ts +5 -14
- package/lib/components/app-component-sections/approvals/approvals.component.d.ts +11 -0
- package/lib/components/app-component-sections/approvals-workflow/approvals-workflow.component.d.ts +20 -0
- package/lib/components/app-component-sections/form-section/form-section.component.d.ts +1 -1
- package/lib/components/app-component-sections/service-header/service-header.component.d.ts +4 -3
- package/lib/components/shared-components/action-buttons/action-buttons.component.d.ts +27 -6
- package/lib/components/shared-components/dialogs/submit-dialog/submit-dialog.component.d.ts +4 -4
- package/lib/components/shared-components/form-field/control-value-accessor.directive.d.ts +3 -2
- package/lib/components/shared-components/form-field/input/input.component.d.ts +1 -4
- package/lib/components/shared-components/form-field/validation-errors/validation-errors.component.d.ts +16 -0
- package/lib/constants/constants.d.ts +2 -0
- package/lib/services/core.service.ts.d.ts +34 -1
- package/lib/testComponent/general-approver-section/general-approver-section.component.d.ts +21 -13
- package/lib/testComponent/request-details-section/request-details-section.component.d.ts +14 -6
- package/package.json +1 -1
- package/src/lib/assets/scss/_upgrade.scss +3 -3
package/esm2022/lib/components/app-component-sections/service-header/service-header.component.mjs
CHANGED
|
@@ -17,6 +17,7 @@ import * as i2 from "@angular/material/dialog";
|
|
|
17
17
|
import * as i3 from "@ncstate/sat-popover";
|
|
18
18
|
export class ServiceHeaderComponent {
|
|
19
19
|
cdRef;
|
|
20
|
+
coreService;
|
|
20
21
|
i18n;
|
|
21
22
|
feedBackService;
|
|
22
23
|
dialog;
|
|
@@ -33,8 +34,9 @@ export class ServiceHeaderComponent {
|
|
|
33
34
|
approvals = [];
|
|
34
35
|
feedBackIcon = null;
|
|
35
36
|
flagPriority;
|
|
36
|
-
constructor(cdRef, i18n, feedBackService, dialog, sidenavService) {
|
|
37
|
+
constructor(cdRef, coreService, i18n, feedBackService, dialog, sidenavService) {
|
|
37
38
|
this.cdRef = cdRef;
|
|
39
|
+
this.coreService = coreService;
|
|
38
40
|
this.i18n = i18n;
|
|
39
41
|
this.feedBackService = feedBackService;
|
|
40
42
|
this.dialog = dialog;
|
|
@@ -51,17 +53,17 @@ export class ServiceHeaderComponent {
|
|
|
51
53
|
for (let index = 0; index < comments.length; index++) {
|
|
52
54
|
const item = comments[index];
|
|
53
55
|
const obj = {
|
|
54
|
-
name: item
|
|
56
|
+
name: item['employeeName'],
|
|
55
57
|
title: item.jobPosition,
|
|
56
|
-
image: item
|
|
57
|
-
date: moment(item
|
|
58
|
-
time: moment(item
|
|
59
|
-
comment: item
|
|
60
|
-
attachments: item
|
|
58
|
+
image: item['profilePicture'],
|
|
59
|
+
date: moment(item['commentDate']).locale('en-US').format('YYYY-MM-DD'),
|
|
60
|
+
time: moment(item['commentDate']).locale('en-US').format('h:mm a'),
|
|
61
|
+
comment: item['commentBody'],
|
|
62
|
+
attachments: item['attachment']
|
|
61
63
|
};
|
|
62
64
|
resultData.push(obj);
|
|
63
65
|
}
|
|
64
|
-
|
|
66
|
+
this.coreService.activities = resultData;
|
|
65
67
|
this.sidenavService.publish('open', ActivitiesComponent);
|
|
66
68
|
}
|
|
67
69
|
feedback() {
|
|
@@ -124,10 +126,10 @@ export class ServiceHeaderComponent {
|
|
|
124
126
|
this.approvals.push(obj);
|
|
125
127
|
});
|
|
126
128
|
}
|
|
127
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ServiceHeaderComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.CoreI18nService }, { token: i1.FeedBackService }, { token: i2.MatDialog }, { token: i1.SidenavService }], target: i0.ɵɵFactoryTarget.Component });
|
|
129
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ServiceHeaderComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.CoreService }, { token: i1.CoreI18nService }, { token: i1.FeedBackService }, { token: i2.MatDialog }, { token: i1.SidenavService }], target: i0.ɵɵFactoryTarget.Component });
|
|
128
130
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: ServiceHeaderComponent, isStandalone: true, selector: "core-service-header", inputs: { form: "form", showHistory: "showHistory", isLoading: "isLoading", showApprovalHistory: "showApprovalHistory", approvalHistory: "approvalHistory", creationDate: "creationDate", formTitle: "formTitle", section: "section", serviceBrief: "serviceBrief" }, providers: [FeedBackService,
|
|
129
131
|
{ provide: MAT_DIALOG_DATA, useValue: {} },
|
|
130
|
-
], ngImport: i0, template: "<ng-container *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n <div class=\"d-flex align-items-center justify-content-end gap-2 my-2\" *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n\r\n <!-- flag-->\r\n <ds-button\r\n *ngIf=\"form?.inboxItem && !form.sections[form.sections.length -1].header.readOnly && !isLoading\"\r\n square\r\n icon\r\n size=\"small\"\r\n [matMenuTriggerFor]=\"menu\"\r\n class=\"icon-btn-shadow\">\r\n <ds-icon\r\n [ngClass]=\"{'fc-purple' : (flagPriority === '0' || flagPriority === null),'fc-yellow' : flagPriority === '1','fc-green' : flagPriority === '2','fc-coral' : flagPriority === '3'}\"\r\n icon=\"flag-o\" class=\"fs-20 fs-md-17 fc-purple\">\r\n </ds-icon>\r\n </ds-button>\r\n <mat-menu #menu=\"matMenu\" panelClass=\"action-menu\">\r\n <button mat-menu-item (click)=\"setFlagPriority('0')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-purple fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('1')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-yellow fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('2')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-green fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('3')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-coral fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n </mat-menu>\r\n\r\n <!-- print-->\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <header class=\"service-header bc-white p-3 p-sm-4 py-4 gap-3 {{statusClass(form?.header?.status?.['key'])}}\">\r\n\r\n <div class=\"service-header-icon\">\r\n <img\r\n alt=\"\"\r\n src=\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAiIGhlaWdodD0iMjkiIHZpZXdCb3g9IjAgMCAzMCAyOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTI1LjEgMEg0LjlDMi4yIDAgMCAyLjIgMCA0LjlWMjguNkgyNS4xQzI3LjggMjguNiAzMCAyNi40IDMwIDIzLjdWNC45QzMwIDIuMiAyNy44IDAgMjUuMSAwWk0yIDQuOUMyIDMuMyAzLjMgMiA0LjkgMkgyNS4xQzI2LjcgMiAyOCAzLjMgMjggNC45VjIzLjdDMjggMjUuMyAyNi43IDI2LjYgMjUuMSAyNi42SDJWNC45Wk0xMS41IDYuM0M3LjEgNi4zIDMuNSA5LjkgMy41IDE0LjNDMy41IDE4LjcgNy4xIDIyLjMgMTEuNSAyMi4zQzE1LjkgMjIuMyAxOS41IDE4LjcgMTkuNSAxNC4zQzE5LjUgOS45IDE1LjkgNi4zIDExLjUgNi4zWk0xNS4xIDE5QzE0LjEgMTkuOCAxMi44IDIwLjIgMTEuNSAyMC4yQzEwLjIgMjAuMiA4LjkgMTkuOCA3LjkgMTlDOC43IDE3LjcgMTAgMTcgMTEuNSAxN0MxMyAxNyAxNC40IDE3LjggMTUuMSAxOVpNMTMuMSAxMy40QzEzLjEgMTQuMyAxMi40IDE1IDExLjUgMTVDMTAuNiAxNSA5LjkgMTQuMyA5LjkgMTMuNEM5LjkgMTIuNSAxMC42IDExLjggMTEuNSAxMS44QzEyLjQgMTEuOCAxMy4xIDEyLjUgMTMuMSAxMy40Wk0xNS4xIDEzLjRDMTUuMSAxMS40IDEzLjUgOS44IDExLjUgOS44QzkuNSA5LjggNy45IDExLjQgNy45IDEzLjRDNy45IDE0LjIgOC4yIDE1IDguNyAxNS43QzcuOCAxNi4xIDcuMSAxNi44IDYuNSAxNy42QzUuOCAxNi42IDUuNSAxNS41IDUuNSAxNC4zQzUuNSAxMSA4LjIgOC4zIDExLjUgOC4zQzE0LjggOC4zIDE3LjUgMTEgMTcuNSAxNC4zQzE3LjUgMTUuNSAxNy4yIDE2LjYgMTYuNSAxNy42QzE1LjkgMTYuOCAxNS4yIDE2LjIgMTQuMyAxNS43QzE0LjggMTUuMSAxNS4xIDE0LjIgMTUuMSAxMy40Wk0yMSA5LjFDMjEgOC42IDIxLjQgOC4xIDIyIDguMUgyNS41QzI2IDguMSAyNi41IDguNSAyNi41IDkuMUMyNi41IDkuNiAyNi4xIDEwLjEgMjUuNSAxMC4xSDIyQzIxLjQgMTAuMSAyMSA5LjYgMjEgOS4xWk0yMSAxMi41QzIxIDEyIDIxLjQgMTEuNSAyMiAxMS41SDI1LjVDMjYgMTEuNSAyNi41IDExLjkgMjYuNSAxMi41QzI2LjUgMTMgMjYuMSAxMy41IDI1LjUgMTMuNUgyMkMyMS40IDEzLjUgMjEgMTMuMSAyMSAxMi41Wk0yMSAxNkMyMSAxNS41IDIxLjQgMTUgMjIgMTVIMjUuNUMyNiAxNSAyNi41IDE1LjQgMjYuNSAxNkMyNi41IDE2LjUgMjYuMSAxNyAyNS41IDE3SDIyQzIxLjQgMTcgMjEgMTYuNiAyMSAxNlpNMjUuNSAyMC41SDIyQzIxLjUgMjAuNSAyMSAyMC4xIDIxIDE5LjVDMjEgMTguOSAyMS40IDE4LjUgMjIgMTguNUgyNS41QzI2IDE4LjUgMjYuNSAxOC45IDI2LjUgMTkuNUMyNi41IDIwLjEgMjYuMSAyMC41IDI1LjUgMjAuNVoiIGZpbGw9IiNGRjM3NUUiLz4KPC9zdmc+Cg==\"/>\r\n </div>\r\n\r\n <div class=\"flex-grow-1 d-flex flex-column flex-sm-row align-items-sm-center gap-2\">\r\n <div class=\"flex-grow-1\">\r\n <!-- title-->\r\n <h1 class=\"fs-20 fs-md-16 fw-bold fc-black header-title m-0\">{{ formTitle }}\r\n <ds-icon\r\n icon=\"info\" class=\"fs-22 fc-dark-gray cursor-pointer\" *ngIf=\"serviceBrief.length\"\r\n (click)=\"openFaq()\"></ds-icon>\r\n </h1>\r\n <div\r\n class=\"header-user d-flex align-items-sm-center gap-2 mt-sm-1\"\r\n *ngIf=\"form?.header?.status?.['key'] !== 'NEW' || isLoading\">\r\n <ds-avatar\r\n *ngIf=\"!isLoading\" image=\"{{form?.header?.requesterPhoto}}\" size=\"xx-small\"\r\n class=\"d-inline-flex cursor-pointer\" (click)=\"showUserInfo()\"></ds-avatar>\r\n <span\r\n class=\"fs-12 text-truncate d-sm-block cursor-pointer\" (click)=\"showUserInfo()\"\r\n [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ (form?.header?.requesterName) }}</span>\r\n <mat-divider class=\"divider circle mx-2 d-none d-sm-block\"></mat-divider>\r\n <span class=\"fs-12\" [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ form?.header?.formId }}</span>\r\n <mat-divider *ngIf=\"creationDate\" class=\"divider circle mx-2 d-none d-sm-block\"></mat-divider>\r\n <span *ngIf=\"creationDate\" class=\"fs-14\" [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ creationDate }}</span>\r\n </div>\r\n </div>\r\n <!-- header-actions-->\r\n <div\r\n class=\"header-actions d-flex flex-row flex-sm-column justify-content-between justify-content-sm-center gap-2 mt-2 mt-sm-0\"\r\n *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n <ds-status\r\n *ngIf=\"form?.header?.status?.['key'] !== 'NEW' && !isLoading\"\r\n status=\"{{statusClass(form?.header?.status?.['key'])}}\" class=\"header-status\">{{ form?.header?.status?.['value'] }}\r\n </ds-status>\r\n\r\n <div class=\"d-flex align-items-center justify-content-end gap-2\">\r\n <!-- feedback-->\r\n<!-- *ngIf=\"form?.inboxItem && (form?.inboxItem?.canRequestFeedback ==='true'|| form?.inboxItem?.hasFeedback==='true') && !isLoading\"-->\r\n <!-- <ds-button\r\n square icon size=\"small\" (click)=\"feedback()\">\r\n <ds-icon\r\n icon=\"chat-o\" class=\"fs-20 fs-md-17 fc-coral\"\r\n [ngClass]=\"{'fc-green':feedBackIcon === 'feedbackResponded' , 'fc-red': feedBackIcon === 'respondToFeedback' , 'fc-yellow': feedBackIcon === 'waitingFeedback'}\">\r\n </ds-icon>\r\n </ds-button>-->\r\n <ds-button\r\n *ngIf=\"form?.commentsDrop?.length > 0 && !isLoading\" square icon size=\"small\"\r\n (click)=\"onCommentsFormClick()\" class=\"has-comments\">\r\n <ds-icon icon=\"clock\" class=\"fc-coral fs-20 fs-md-17\"></ds-icon>\r\n </ds-button>\r\n <ng-container *ngIf=\"showApprovalHistory\">\r\n <ds-button\r\n color=\"white\" shape=\"text\" square size=\"small\" [satPopoverAnchor]=\"workflow\"\r\n #workflowAnchor=\"satPopoverAnchor\" (click)=\"workflowAnchor.popover.open()\">\r\n <slot name=\"prefix\">\r\n <ds-icon icon=\"workflow\" class=\"fs-24\"></ds-icon>\r\n </slot>\r\n </ds-button>\r\n\r\n <sat-popover\r\n #workflow [anchor]=\"workflowAnchor\" [hasBackdrop]=\"true\" verticalAlign=\"below\"\r\n horizontalAlign=\"end\">\r\n <div class=\"default-popover p-3\" style=\"min-width: 330px;\">\r\n <ds-approvals *ngIf=\"approvalHistory\" class=\"popover-approvals\" approvalsData=\"{{approvals}}\">\r\n </ds-approvals>\r\n </div>\r\n </sat-popover>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </header>\r\n</ng-container>\r\n<header\r\n class=\"mb-4 mt-4 d-flex align-items-center justify-content-between align-items-end gap-2\"\r\n *ngIf=\"(form?.header?.status?.['key'] === 'NEW')\">\r\n <section>\r\n <h6 class=\"fs-14 fs-md-12 fw-normal fc-dark-gray mb-0\">\r\n {{ i18n.translate('Hello') }}\r\n {{ (form?.header?.requesterName) }}, {{ i18n.translate('welcomeBack') }}!\r\n </h6>\r\n <h1 class=\"fs-26 fs-md-20 fw-bold fc-black d-flex align-items-center gap-2 mb-1\">\r\n {{ formTitle }}\r\n <ds-icon icon=\"info\" class=\"fs-22 fc-dark-gray cursor-pointer\" *ngIf=\"serviceBrief.length\" (click)=\"openFaq()\">\r\n </ds-icon>\r\n </h1>\r\n </section>\r\n\r\n</header>\r\n", styles: [":host ::ng-deep .filter-section .select-form-field{--input-bg: var(--white);--input-border: var(--white);--placeholder-fc: var(--black);--input-width: 85px;--input-fs: .75rem;--placeholder-fs: .75rem;--label-fs: .75rem;--label-fw: var(--font-regular);--input-height: var(--default-size-sm);font-size:var(--label-fs);box-shadow:var(--box-shadow)}:host ::ng-deep ds-button::part(base){--default-size-sm: 30px;--btn-radius: 3px}@media (max-width: 576px){:host ::ng-deep ds-button::part(base){--default-size-sm: 25px}}:host ::ng-deep .loading-width{min-width:100px;width:40px;flex-grow:1}:host ::ng-deep ds-avatar::part(base){--default-size: 20px}:host ::ng-deep .service-header{--service-header-icon-size: var(--default-size-lg);--header-border-color: var(--coral);display:flex;align-items:flex-start;border-top:5px solid var(--header-border-color);box-shadow:0 7px 10px rgba(var(--rgb-black),3%)}@media (max-width: 576px){:host ::ng-deep .service-header{border-radius:3px 3px 0 0}}:host ::ng-deep .service-header.loading{--header-border-color: var(--off-white)}:host ::ng-deep .service-header.warning{--header-border-color: var(--yellow)}:host ::ng-deep .service-header.success{--header-border-color: var(--green)}:host ::ng-deep .service-header.danger{--header-border-color: var(--red)}@media (max-width: 576px){:host ::ng-deep .service-header{--service-header-icon-size: var(--default-size-sm)}}:host ::ng-deep .service-header .service-header-icon{min-width:var(--service-header-icon-size);width:var(--service-header-icon-size);height:var(--service-header-icon-size);display:inline-flex;align-items:center;justify-content:center;padding:.75rem;border-radius:6px 6px 6px 0;background-color:rgba(var(--rgb-coral),.1)}@media (max-width: 576px){:host ::ng-deep .service-header .service-header-icon{padding:.5rem}}:host ::ng-deep .service-header .header-title{text-align:start}:host ::ng-deep .service-header .divider.circle{min-width:5px;width:5px;min-height:5px;height:5px;border-radius:50%;background-color:var(--dark-gray)}:host ::ng-deep .service-header .header-actions{align-items:flex-end;justify-content:flex-end}:host ::ng-deep .service-header .header-actions .has-comments{position:relative}:host ::ng-deep .service-header .header-actions .has-comments:before{content:\"\";min-width:8px;height:8px;border-radius:50%;background-color:var(--coral);position:absolute;top:-3px;right:-3px;z-index:1}[dir=rtl] :host ::ng-deep .service-header .header-actions .has-comments:before{right:auto;left:-3px}:host ::ng-deep .service-header .header-actions ds-button::part(base){--btn-color: var(--coral);--btn-bg-color: var(--light-gray);--btn-border-color: var(--light-gray)}:host ::ng-deep .service-header .header-user{color:var(--dark-gray)}:host ::ng-deep .history-button::part(base){background-color:var(--white);--btn-height: var(--default-size-sm);--btn-shadow: 0 7px 10px rgba(var(--rgb-black), 3%)}@media (max-width: 576px){:host ::ng-deep .history-button::part(base){--btn-height: 35px;--btn-width: 35px}}@media (max-width: 576px){:host ::ng-deep .history-button::part(label){display:none}}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: SatPopoverModule }, { kind: "component", type: i3.SatPopoverComponent, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }, { kind: "directive", type: i3.SatPopoverAnchorDirective, selector: "[satPopoverAnchor]", inputs: ["satPopoverAnchor"], exportAs: ["satPopoverAnchor"] }, { kind: "component", type: MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }] });
|
|
132
|
+
], ngImport: i0, template: "<ng-container *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n <div class=\"d-flex align-items-center justify-content-end gap-2 my-2\" *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n\r\n <!-- flag-->\r\n <ds-button\r\n *ngIf=\"form?.inboxItem && !form.sections[form.sections.length -1].header.readOnly && !isLoading\"\r\n square\r\n icon\r\n size=\"small\"\r\n [matMenuTriggerFor]=\"menu\"\r\n class=\"icon-btn-shadow\">\r\n <ds-icon\r\n [ngClass]=\"{'fc-purple' : (flagPriority === '0' || flagPriority === null),'fc-yellow' : flagPriority === '1','fc-green' : flagPriority === '2','fc-coral' : flagPriority === '3'}\"\r\n icon=\"flag-o\" class=\"fs-20 fs-md-17 fc-purple\">\r\n </ds-icon>\r\n </ds-button>\r\n <mat-menu #menu=\"matMenu\" panelClass=\"action-menu\">\r\n <button mat-menu-item (click)=\"setFlagPriority('0')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-purple fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('1')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-yellow fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('2')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-green fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('3')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-coral fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n </mat-menu>\r\n\r\n <!-- print-->\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <header class=\"service-header bc-white p-3 p-sm-4 py-4 gap-3 {{statusClass(form?.header?.status?.['key'])}}\">\r\n\r\n <div class=\"service-header-icon\">\r\n <img\r\n alt=\"\"\r\n src=\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAiIGhlaWdodD0iMjkiIHZpZXdCb3g9IjAgMCAzMCAyOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTI1LjEgMEg0LjlDMi4yIDAgMCAyLjIgMCA0LjlWMjguNkgyNS4xQzI3LjggMjguNiAzMCAyNi40IDMwIDIzLjdWNC45QzMwIDIuMiAyNy44IDAgMjUuMSAwWk0yIDQuOUMyIDMuMyAzLjMgMiA0LjkgMkgyNS4xQzI2LjcgMiAyOCAzLjMgMjggNC45VjIzLjdDMjggMjUuMyAyNi43IDI2LjYgMjUuMSAyNi42SDJWNC45Wk0xMS41IDYuM0M3LjEgNi4zIDMuNSA5LjkgMy41IDE0LjNDMy41IDE4LjcgNy4xIDIyLjMgMTEuNSAyMi4zQzE1LjkgMjIuMyAxOS41IDE4LjcgMTkuNSAxNC4zQzE5LjUgOS45IDE1LjkgNi4zIDExLjUgNi4zWk0xNS4xIDE5QzE0LjEgMTkuOCAxMi44IDIwLjIgMTEuNSAyMC4yQzEwLjIgMjAuMiA4LjkgMTkuOCA3LjkgMTlDOC43IDE3LjcgMTAgMTcgMTEuNSAxN0MxMyAxNyAxNC40IDE3LjggMTUuMSAxOVpNMTMuMSAxMy40QzEzLjEgMTQuMyAxMi40IDE1IDExLjUgMTVDMTAuNiAxNSA5LjkgMTQuMyA5LjkgMTMuNEM5LjkgMTIuNSAxMC42IDExLjggMTEuNSAxMS44QzEyLjQgMTEuOCAxMy4xIDEyLjUgMTMuMSAxMy40Wk0xNS4xIDEzLjRDMTUuMSAxMS40IDEzLjUgOS44IDExLjUgOS44QzkuNSA5LjggNy45IDExLjQgNy45IDEzLjRDNy45IDE0LjIgOC4yIDE1IDguNyAxNS43QzcuOCAxNi4xIDcuMSAxNi44IDYuNSAxNy42QzUuOCAxNi42IDUuNSAxNS41IDUuNSAxNC4zQzUuNSAxMSA4LjIgOC4zIDExLjUgOC4zQzE0LjggOC4zIDE3LjUgMTEgMTcuNSAxNC4zQzE3LjUgMTUuNSAxNy4yIDE2LjYgMTYuNSAxNy42QzE1LjkgMTYuOCAxNS4yIDE2LjIgMTQuMyAxNS43QzE0LjggMTUuMSAxNS4xIDE0LjIgMTUuMSAxMy40Wk0yMSA5LjFDMjEgOC42IDIxLjQgOC4xIDIyIDguMUgyNS41QzI2IDguMSAyNi41IDguNSAyNi41IDkuMUMyNi41IDkuNiAyNi4xIDEwLjEgMjUuNSAxMC4xSDIyQzIxLjQgMTAuMSAyMSA5LjYgMjEgOS4xWk0yMSAxMi41QzIxIDEyIDIxLjQgMTEuNSAyMiAxMS41SDI1LjVDMjYgMTEuNSAyNi41IDExLjkgMjYuNSAxMi41QzI2LjUgMTMgMjYuMSAxMy41IDI1LjUgMTMuNUgyMkMyMS40IDEzLjUgMjEgMTMuMSAyMSAxMi41Wk0yMSAxNkMyMSAxNS41IDIxLjQgMTUgMjIgMTVIMjUuNUMyNiAxNSAyNi41IDE1LjQgMjYuNSAxNkMyNi41IDE2LjUgMjYuMSAxNyAyNS41IDE3SDIyQzIxLjQgMTcgMjEgMTYuNiAyMSAxNlpNMjUuNSAyMC41SDIyQzIxLjUgMjAuNSAyMSAyMC4xIDIxIDE5LjVDMjEgMTguOSAyMS40IDE4LjUgMjIgMTguNUgyNS41QzI2IDE4LjUgMjYuNSAxOC45IDI2LjUgMTkuNUMyNi41IDIwLjEgMjYuMSAyMC41IDI1LjUgMjAuNVoiIGZpbGw9IiNGRjM3NUUiLz4KPC9zdmc+Cg==\"/>\r\n </div>\r\n\r\n <div class=\"flex-grow-1 d-flex flex-column flex-sm-row align-items-sm-center gap-2\">\r\n <div class=\"flex-grow-1\">\r\n <!-- title-->\r\n <h1 class=\"fs-20 fs-md-16 fw-bold fc-black header-title m-0\">{{ formTitle }}\r\n <ds-icon\r\n icon=\"info\" class=\"fs-22 fc-dark-gray cursor-pointer\" *ngIf=\"serviceBrief.length\"\r\n (click)=\"openFaq()\"></ds-icon>\r\n </h1>\r\n <div\r\n class=\"header-user d-flex align-items-sm-center gap-2 mt-sm-1\"\r\n *ngIf=\"form?.header?.status?.['key'] !== 'NEW' || isLoading\">\r\n <ds-avatar\r\n *ngIf=\"!isLoading\" image=\"{{form?.header?.requesterPhoto}}\" size=\"xx-small\"\r\n class=\"d-inline-flex cursor-pointer\" (click)=\"showUserInfo()\"></ds-avatar>\r\n <span\r\n class=\"fs-12 text-truncate d-sm-block cursor-pointer\" (click)=\"showUserInfo()\"\r\n [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ coreService.getShortName(form?.header?.requesterName) }}</span>\r\n <mat-divider class=\"divider circle mx-2 d-none d-sm-block\"></mat-divider>\r\n <span class=\"fs-12\" [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ form?.header?.formId }}</span>\r\n <mat-divider *ngIf=\"creationDate\" class=\"divider circle mx-2 d-none d-sm-block\"></mat-divider>\r\n <span *ngIf=\"creationDate\" class=\"fs-14\" [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ creationDate }}</span>\r\n </div>\r\n </div>\r\n <!-- header-actions-->\r\n <div\r\n class=\"header-actions d-flex flex-row flex-sm-column justify-content-between justify-content-sm-center gap-2 mt-2 mt-sm-0\"\r\n *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n <ds-status\r\n *ngIf=\"form?.header?.status?.['key'] !== 'NEW' && !isLoading\"\r\n status=\"{{statusClass(form?.header?.status?.['key'])}}\" class=\"header-status\">{{ form?.header?.status?.['value'] }}\r\n </ds-status>\r\n\r\n <div class=\"d-flex align-items-center justify-content-end gap-2\">\r\n <!-- feedback-->\r\n<!-- *ngIf=\"form?.inboxItem && (form?.inboxItem?.canRequestFeedback ==='true'|| form?.inboxItem?.hasFeedback==='true') && !isLoading\"-->\r\n <!-- <ds-button\r\n square icon size=\"small\" (click)=\"feedback()\">\r\n <ds-icon\r\n icon=\"chat-o\" class=\"fs-20 fs-md-17 fc-coral\"\r\n [ngClass]=\"{'fc-green':feedBackIcon === 'feedbackResponded' , 'fc-red': feedBackIcon === 'respondToFeedback' , 'fc-yellow': feedBackIcon === 'waitingFeedback'}\">\r\n </ds-icon>\r\n </ds-button>-->\r\n <ds-button\r\n *ngIf=\"form?.commentsDrop?.length > 0 && !isLoading\" square icon size=\"small\"\r\n (click)=\"onCommentsFormClick()\" class=\"has-comments\">\r\n <ds-icon icon=\"clock\" class=\"fc-coral fs-20 fs-md-17\"></ds-icon>\r\n </ds-button>\r\n <ng-container *ngIf=\"showApprovalHistory\">\r\n <ds-button\r\n color=\"white\" shape=\"text\" square size=\"small\" [satPopoverAnchor]=\"workflow\"\r\n #workflowAnchor=\"satPopoverAnchor\" (click)=\"workflowAnchor.popover.open()\">\r\n <slot name=\"prefix\">\r\n <ds-icon icon=\"workflow\" class=\"fs-24\"></ds-icon>\r\n </slot>\r\n </ds-button>\r\n\r\n <sat-popover\r\n #workflow [anchor]=\"workflowAnchor\" [hasBackdrop]=\"true\" verticalAlign=\"below\"\r\n horizontalAlign=\"end\">\r\n <div class=\"default-popover p-3\" style=\"min-width: 330px;\">\r\n <ds-approvals *ngIf=\"approvalHistory\" class=\"popover-approvals\" approvalsData=\"{{approvals}}\">\r\n </ds-approvals>\r\n </div>\r\n </sat-popover>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </header>\r\n</ng-container>\r\n<header\r\n class=\"mb-4 mt-4 d-flex align-items-center justify-content-between align-items-end gap-2\"\r\n *ngIf=\"(form?.header?.status?.['key'] === 'NEW')\">\r\n <section>\r\n <h6 class=\"fs-14 fs-md-12 fw-normal fc-dark-gray mb-0\">\r\n {{ i18n.translate('Hello') }}\r\n {{ coreService.getShortName(form?.header?.requesterName) }}, {{ i18n.translate('welcomeBack') }}!\r\n </h6>\r\n <h1 class=\"fs-26 fs-md-20 fw-bold fc-black d-flex align-items-center gap-2 mb-1\">\r\n {{ formTitle }}\r\n <ds-icon icon=\"info\" class=\"fs-22 fc-dark-gray cursor-pointer\" *ngIf=\"serviceBrief.length\" (click)=\"openFaq()\">\r\n </ds-icon>\r\n </h1>\r\n </section>\r\n\r\n</header>\r\n", styles: [":host ::ng-deep .filter-section .select-form-field{--input-bg: var(--white);--input-border: var(--white);--placeholder-fc: var(--black);--input-width: 85px;--input-fs: .75rem;--placeholder-fs: .75rem;--label-fs: .75rem;--label-fw: var(--font-regular);--input-height: var(--default-size-sm);font-size:var(--label-fs);box-shadow:var(--box-shadow)}:host ::ng-deep ds-button::part(base){--default-size-sm: 30px;--btn-radius: 3px}@media (max-width: 576px){:host ::ng-deep ds-button::part(base){--default-size-sm: 25px}}:host ::ng-deep .loading-width{min-width:100px;width:40px;flex-grow:1}:host ::ng-deep ds-avatar::part(base){--default-size: 20px}:host ::ng-deep .service-header{--service-header-icon-size: var(--default-size-lg);--header-border-color: var(--coral);display:flex;align-items:flex-start;border-top:5px solid var(--header-border-color);box-shadow:0 7px 10px rgba(var(--rgb-black),3%)}@media (max-width: 576px){:host ::ng-deep .service-header{border-radius:3px 3px 0 0}}:host ::ng-deep .service-header.loading{--header-border-color: var(--off-white)}:host ::ng-deep .service-header.warning{--header-border-color: var(--yellow)}:host ::ng-deep .service-header.success{--header-border-color: var(--green)}:host ::ng-deep .service-header.danger{--header-border-color: var(--red)}@media (max-width: 576px){:host ::ng-deep .service-header{--service-header-icon-size: var(--default-size-sm)}}:host ::ng-deep .service-header .service-header-icon{min-width:var(--service-header-icon-size);width:var(--service-header-icon-size);height:var(--service-header-icon-size);display:inline-flex;align-items:center;justify-content:center;padding:.75rem;border-radius:6px 6px 6px 0;background-color:rgba(var(--rgb-coral),.1)}@media (max-width: 576px){:host ::ng-deep .service-header .service-header-icon{padding:.5rem}}:host ::ng-deep .service-header .header-title{text-align:start}:host ::ng-deep .service-header .divider.circle{min-width:5px;width:5px;min-height:5px;height:5px;border-radius:50%;background-color:var(--dark-gray)}:host ::ng-deep .service-header .header-actions{align-items:flex-end;justify-content:flex-end}:host ::ng-deep .service-header .header-actions .has-comments{position:relative}:host ::ng-deep .service-header .header-actions .has-comments:before{content:\"\";min-width:8px;height:8px;border-radius:50%;background-color:var(--coral);position:absolute;top:-3px;right:-3px;z-index:1}[dir=rtl] :host ::ng-deep .service-header .header-actions .has-comments:before{right:auto;left:-3px}:host ::ng-deep .service-header .header-actions ds-button::part(base){--btn-color: var(--coral);--btn-bg-color: var(--light-gray);--btn-border-color: var(--light-gray)}:host ::ng-deep .service-header .header-user{color:var(--dark-gray)}:host ::ng-deep .history-button::part(base){background-color:var(--white);--btn-height: var(--default-size-sm);--btn-shadow: 0 7px 10px rgba(var(--rgb-black), 3%)}@media (max-width: 576px){:host ::ng-deep .history-button::part(base){--btn-height: 35px;--btn-width: 35px}}@media (max-width: 576px){:host ::ng-deep .history-button::part(label){display:none}}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: SatPopoverModule }, { kind: "component", type: i3.SatPopoverComponent, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }, { kind: "directive", type: i3.SatPopoverAnchorDirective, selector: "[satPopoverAnchor]", inputs: ["satPopoverAnchor"], exportAs: ["satPopoverAnchor"] }, { kind: "component", type: MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }] });
|
|
131
133
|
}
|
|
132
134
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ServiceHeaderComponent, decorators: [{
|
|
133
135
|
type: Component,
|
|
@@ -141,8 +143,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
141
143
|
MatMenuItem
|
|
142
144
|
], schemas: [CUSTOM_ELEMENTS_SCHEMA], providers: [FeedBackService,
|
|
143
145
|
{ provide: MAT_DIALOG_DATA, useValue: {} },
|
|
144
|
-
], template: "<ng-container *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n <div class=\"d-flex align-items-center justify-content-end gap-2 my-2\" *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n\r\n <!-- flag-->\r\n <ds-button\r\n *ngIf=\"form?.inboxItem && !form.sections[form.sections.length -1].header.readOnly && !isLoading\"\r\n square\r\n icon\r\n size=\"small\"\r\n [matMenuTriggerFor]=\"menu\"\r\n class=\"icon-btn-shadow\">\r\n <ds-icon\r\n [ngClass]=\"{'fc-purple' : (flagPriority === '0' || flagPriority === null),'fc-yellow' : flagPriority === '1','fc-green' : flagPriority === '2','fc-coral' : flagPriority === '3'}\"\r\n icon=\"flag-o\" class=\"fs-20 fs-md-17 fc-purple\">\r\n </ds-icon>\r\n </ds-button>\r\n <mat-menu #menu=\"matMenu\" panelClass=\"action-menu\">\r\n <button mat-menu-item (click)=\"setFlagPriority('0')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-purple fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('1')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-yellow fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('2')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-green fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('3')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-coral fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n </mat-menu>\r\n\r\n <!-- print-->\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <header class=\"service-header bc-white p-3 p-sm-4 py-4 gap-3 {{statusClass(form?.header?.status?.['key'])}}\">\r\n\r\n <div class=\"service-header-icon\">\r\n <img\r\n alt=\"\"\r\n src=\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAiIGhlaWdodD0iMjkiIHZpZXdCb3g9IjAgMCAzMCAyOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTI1LjEgMEg0LjlDMi4yIDAgMCAyLjIgMCA0LjlWMjguNkgyNS4xQzI3LjggMjguNiAzMCAyNi40IDMwIDIzLjdWNC45QzMwIDIuMiAyNy44IDAgMjUuMSAwWk0yIDQuOUMyIDMuMyAzLjMgMiA0LjkgMkgyNS4xQzI2LjcgMiAyOCAzLjMgMjggNC45VjIzLjdDMjggMjUuMyAyNi43IDI2LjYgMjUuMSAyNi42SDJWNC45Wk0xMS41IDYuM0M3LjEgNi4zIDMuNSA5LjkgMy41IDE0LjNDMy41IDE4LjcgNy4xIDIyLjMgMTEuNSAyMi4zQzE1LjkgMjIuMyAxOS41IDE4LjcgMTkuNSAxNC4zQzE5LjUgOS45IDE1LjkgNi4zIDExLjUgNi4zWk0xNS4xIDE5QzE0LjEgMTkuOCAxMi44IDIwLjIgMTEuNSAyMC4yQzEwLjIgMjAuMiA4LjkgMTkuOCA3LjkgMTlDOC43IDE3LjcgMTAgMTcgMTEuNSAxN0MxMyAxNyAxNC40IDE3LjggMTUuMSAxOVpNMTMuMSAxMy40QzEzLjEgMTQuMyAxMi40IDE1IDExLjUgMTVDMTAuNiAxNSA5LjkgMTQuMyA5LjkgMTMuNEM5LjkgMTIuNSAxMC42IDExLjggMTEuNSAxMS44QzEyLjQgMTEuOCAxMy4xIDEyLjUgMTMuMSAxMy40Wk0xNS4xIDEzLjRDMTUuMSAxMS40IDEzLjUgOS44IDExLjUgOS44QzkuNSA5LjggNy45IDExLjQgNy45IDEzLjRDNy45IDE0LjIgOC4yIDE1IDguNyAxNS43QzcuOCAxNi4xIDcuMSAxNi44IDYuNSAxNy42QzUuOCAxNi42IDUuNSAxNS41IDUuNSAxNC4zQzUuNSAxMSA4LjIgOC4zIDExLjUgOC4zQzE0LjggOC4zIDE3LjUgMTEgMTcuNSAxNC4zQzE3LjUgMTUuNSAxNy4yIDE2LjYgMTYuNSAxNy42QzE1LjkgMTYuOCAxNS4yIDE2LjIgMTQuMyAxNS43QzE0LjggMTUuMSAxNS4xIDE0LjIgMTUuMSAxMy40Wk0yMSA5LjFDMjEgOC42IDIxLjQgOC4xIDIyIDguMUgyNS41QzI2IDguMSAyNi41IDguNSAyNi41IDkuMUMyNi41IDkuNiAyNi4xIDEwLjEgMjUuNSAxMC4xSDIyQzIxLjQgMTAuMSAyMSA5LjYgMjEgOS4xWk0yMSAxMi41QzIxIDEyIDIxLjQgMTEuNSAyMiAxMS41SDI1LjVDMjYgMTEuNSAyNi41IDExLjkgMjYuNSAxMi41QzI2LjUgMTMgMjYuMSAxMy41IDI1LjUgMTMuNUgyMkMyMS40IDEzLjUgMjEgMTMuMSAyMSAxMi41Wk0yMSAxNkMyMSAxNS41IDIxLjQgMTUgMjIgMTVIMjUuNUMyNiAxNSAyNi41IDE1LjQgMjYuNSAxNkMyNi41IDE2LjUgMjYuMSAxNyAyNS41IDE3SDIyQzIxLjQgMTcgMjEgMTYuNiAyMSAxNlpNMjUuNSAyMC41SDIyQzIxLjUgMjAuNSAyMSAyMC4xIDIxIDE5LjVDMjEgMTguOSAyMS40IDE4LjUgMjIgMTguNUgyNS41QzI2IDE4LjUgMjYuNSAxOC45IDI2LjUgMTkuNUMyNi41IDIwLjEgMjYuMSAyMC41IDI1LjUgMjAuNVoiIGZpbGw9IiNGRjM3NUUiLz4KPC9zdmc+Cg==\"/>\r\n </div>\r\n\r\n <div class=\"flex-grow-1 d-flex flex-column flex-sm-row align-items-sm-center gap-2\">\r\n <div class=\"flex-grow-1\">\r\n <!-- title-->\r\n <h1 class=\"fs-20 fs-md-16 fw-bold fc-black header-title m-0\">{{ formTitle }}\r\n <ds-icon\r\n icon=\"info\" class=\"fs-22 fc-dark-gray cursor-pointer\" *ngIf=\"serviceBrief.length\"\r\n (click)=\"openFaq()\"></ds-icon>\r\n </h1>\r\n <div\r\n class=\"header-user d-flex align-items-sm-center gap-2 mt-sm-1\"\r\n *ngIf=\"form?.header?.status?.['key'] !== 'NEW' || isLoading\">\r\n <ds-avatar\r\n *ngIf=\"!isLoading\" image=\"{{form?.header?.requesterPhoto}}\" size=\"xx-small\"\r\n class=\"d-inline-flex cursor-pointer\" (click)=\"showUserInfo()\"></ds-avatar>\r\n <span\r\n class=\"fs-12 text-truncate d-sm-block cursor-pointer\" (click)=\"showUserInfo()\"\r\n [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ (form?.header?.requesterName) }}</span>\r\n <mat-divider class=\"divider circle mx-2 d-none d-sm-block\"></mat-divider>\r\n <span class=\"fs-12\" [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ form?.header?.formId }}</span>\r\n <mat-divider *ngIf=\"creationDate\" class=\"divider circle mx-2 d-none d-sm-block\"></mat-divider>\r\n <span *ngIf=\"creationDate\" class=\"fs-14\" [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ creationDate }}</span>\r\n </div>\r\n </div>\r\n <!-- header-actions-->\r\n <div\r\n class=\"header-actions d-flex flex-row flex-sm-column justify-content-between justify-content-sm-center gap-2 mt-2 mt-sm-0\"\r\n *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n <ds-status\r\n *ngIf=\"form?.header?.status?.['key'] !== 'NEW' && !isLoading\"\r\n status=\"{{statusClass(form?.header?.status?.['key'])}}\" class=\"header-status\">{{ form?.header?.status?.['value'] }}\r\n </ds-status>\r\n\r\n <div class=\"d-flex align-items-center justify-content-end gap-2\">\r\n <!-- feedback-->\r\n<!-- *ngIf=\"form?.inboxItem && (form?.inboxItem?.canRequestFeedback ==='true'|| form?.inboxItem?.hasFeedback==='true') && !isLoading\"-->\r\n <!-- <ds-button\r\n square icon size=\"small\" (click)=\"feedback()\">\r\n <ds-icon\r\n icon=\"chat-o\" class=\"fs-20 fs-md-17 fc-coral\"\r\n [ngClass]=\"{'fc-green':feedBackIcon === 'feedbackResponded' , 'fc-red': feedBackIcon === 'respondToFeedback' , 'fc-yellow': feedBackIcon === 'waitingFeedback'}\">\r\n </ds-icon>\r\n </ds-button>-->\r\n <ds-button\r\n *ngIf=\"form?.commentsDrop?.length > 0 && !isLoading\" square icon size=\"small\"\r\n (click)=\"onCommentsFormClick()\" class=\"has-comments\">\r\n <ds-icon icon=\"clock\" class=\"fc-coral fs-20 fs-md-17\"></ds-icon>\r\n </ds-button>\r\n <ng-container *ngIf=\"showApprovalHistory\">\r\n <ds-button\r\n color=\"white\" shape=\"text\" square size=\"small\" [satPopoverAnchor]=\"workflow\"\r\n #workflowAnchor=\"satPopoverAnchor\" (click)=\"workflowAnchor.popover.open()\">\r\n <slot name=\"prefix\">\r\n <ds-icon icon=\"workflow\" class=\"fs-24\"></ds-icon>\r\n </slot>\r\n </ds-button>\r\n\r\n <sat-popover\r\n #workflow [anchor]=\"workflowAnchor\" [hasBackdrop]=\"true\" verticalAlign=\"below\"\r\n horizontalAlign=\"end\">\r\n <div class=\"default-popover p-3\" style=\"min-width: 330px;\">\r\n <ds-approvals *ngIf=\"approvalHistory\" class=\"popover-approvals\" approvalsData=\"{{approvals}}\">\r\n </ds-approvals>\r\n </div>\r\n </sat-popover>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </header>\r\n</ng-container>\r\n<header\r\n class=\"mb-4 mt-4 d-flex align-items-center justify-content-between align-items-end gap-2\"\r\n *ngIf=\"(form?.header?.status?.['key'] === 'NEW')\">\r\n <section>\r\n <h6 class=\"fs-14 fs-md-12 fw-normal fc-dark-gray mb-0\">\r\n {{ i18n.translate('Hello') }}\r\n {{ (form?.header?.requesterName) }}, {{ i18n.translate('welcomeBack') }}!\r\n </h6>\r\n <h1 class=\"fs-26 fs-md-20 fw-bold fc-black d-flex align-items-center gap-2 mb-1\">\r\n {{ formTitle }}\r\n <ds-icon icon=\"info\" class=\"fs-22 fc-dark-gray cursor-pointer\" *ngIf=\"serviceBrief.length\" (click)=\"openFaq()\">\r\n </ds-icon>\r\n </h1>\r\n </section>\r\n\r\n</header>\r\n", styles: [":host ::ng-deep .filter-section .select-form-field{--input-bg: var(--white);--input-border: var(--white);--placeholder-fc: var(--black);--input-width: 85px;--input-fs: .75rem;--placeholder-fs: .75rem;--label-fs: .75rem;--label-fw: var(--font-regular);--input-height: var(--default-size-sm);font-size:var(--label-fs);box-shadow:var(--box-shadow)}:host ::ng-deep ds-button::part(base){--default-size-sm: 30px;--btn-radius: 3px}@media (max-width: 576px){:host ::ng-deep ds-button::part(base){--default-size-sm: 25px}}:host ::ng-deep .loading-width{min-width:100px;width:40px;flex-grow:1}:host ::ng-deep ds-avatar::part(base){--default-size: 20px}:host ::ng-deep .service-header{--service-header-icon-size: var(--default-size-lg);--header-border-color: var(--coral);display:flex;align-items:flex-start;border-top:5px solid var(--header-border-color);box-shadow:0 7px 10px rgba(var(--rgb-black),3%)}@media (max-width: 576px){:host ::ng-deep .service-header{border-radius:3px 3px 0 0}}:host ::ng-deep .service-header.loading{--header-border-color: var(--off-white)}:host ::ng-deep .service-header.warning{--header-border-color: var(--yellow)}:host ::ng-deep .service-header.success{--header-border-color: var(--green)}:host ::ng-deep .service-header.danger{--header-border-color: var(--red)}@media (max-width: 576px){:host ::ng-deep .service-header{--service-header-icon-size: var(--default-size-sm)}}:host ::ng-deep .service-header .service-header-icon{min-width:var(--service-header-icon-size);width:var(--service-header-icon-size);height:var(--service-header-icon-size);display:inline-flex;align-items:center;justify-content:center;padding:.75rem;border-radius:6px 6px 6px 0;background-color:rgba(var(--rgb-coral),.1)}@media (max-width: 576px){:host ::ng-deep .service-header .service-header-icon{padding:.5rem}}:host ::ng-deep .service-header .header-title{text-align:start}:host ::ng-deep .service-header .divider.circle{min-width:5px;width:5px;min-height:5px;height:5px;border-radius:50%;background-color:var(--dark-gray)}:host ::ng-deep .service-header .header-actions{align-items:flex-end;justify-content:flex-end}:host ::ng-deep .service-header .header-actions .has-comments{position:relative}:host ::ng-deep .service-header .header-actions .has-comments:before{content:\"\";min-width:8px;height:8px;border-radius:50%;background-color:var(--coral);position:absolute;top:-3px;right:-3px;z-index:1}[dir=rtl] :host ::ng-deep .service-header .header-actions .has-comments:before{right:auto;left:-3px}:host ::ng-deep .service-header .header-actions ds-button::part(base){--btn-color: var(--coral);--btn-bg-color: var(--light-gray);--btn-border-color: var(--light-gray)}:host ::ng-deep .service-header .header-user{color:var(--dark-gray)}:host ::ng-deep .history-button::part(base){background-color:var(--white);--btn-height: var(--default-size-sm);--btn-shadow: 0 7px 10px rgba(var(--rgb-black), 3%)}@media (max-width: 576px){:host ::ng-deep .history-button::part(base){--btn-height: 35px;--btn-width: 35px}}@media (max-width: 576px){:host ::ng-deep .history-button::part(label){display:none}}\n"] }]
|
|
145
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.CoreI18nService }, { type: i1.FeedBackService }, { type: i2.MatDialog }, { type: i1.SidenavService }], propDecorators: { form: [{
|
|
146
|
+
], template: "<ng-container *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n <div class=\"d-flex align-items-center justify-content-end gap-2 my-2\" *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n\r\n <!-- flag-->\r\n <ds-button\r\n *ngIf=\"form?.inboxItem && !form.sections[form.sections.length -1].header.readOnly && !isLoading\"\r\n square\r\n icon\r\n size=\"small\"\r\n [matMenuTriggerFor]=\"menu\"\r\n class=\"icon-btn-shadow\">\r\n <ds-icon\r\n [ngClass]=\"{'fc-purple' : (flagPriority === '0' || flagPriority === null),'fc-yellow' : flagPriority === '1','fc-green' : flagPriority === '2','fc-coral' : flagPriority === '3'}\"\r\n icon=\"flag-o\" class=\"fs-20 fs-md-17 fc-purple\">\r\n </ds-icon>\r\n </ds-button>\r\n <mat-menu #menu=\"matMenu\" panelClass=\"action-menu\">\r\n <button mat-menu-item (click)=\"setFlagPriority('0')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-purple fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('1')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-yellow fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('2')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-green fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n <button mat-menu-item (click)=\"setFlagPriority('3')\">\r\n <ds-icon icon=\"flag-o\" class=\"fc-coral fs-20 fs-md-17\"></ds-icon>\r\n </button>\r\n </mat-menu>\r\n\r\n <!-- print-->\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <header class=\"service-header bc-white p-3 p-sm-4 py-4 gap-3 {{statusClass(form?.header?.status?.['key'])}}\">\r\n\r\n <div class=\"service-header-icon\">\r\n <img\r\n alt=\"\"\r\n src=\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAiIGhlaWdodD0iMjkiIHZpZXdCb3g9IjAgMCAzMCAyOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTI1LjEgMEg0LjlDMi4yIDAgMCAyLjIgMCA0LjlWMjguNkgyNS4xQzI3LjggMjguNiAzMCAyNi40IDMwIDIzLjdWNC45QzMwIDIuMiAyNy44IDAgMjUuMSAwWk0yIDQuOUMyIDMuMyAzLjMgMiA0LjkgMkgyNS4xQzI2LjcgMiAyOCAzLjMgMjggNC45VjIzLjdDMjggMjUuMyAyNi43IDI2LjYgMjUuMSAyNi42SDJWNC45Wk0xMS41IDYuM0M3LjEgNi4zIDMuNSA5LjkgMy41IDE0LjNDMy41IDE4LjcgNy4xIDIyLjMgMTEuNSAyMi4zQzE1LjkgMjIuMyAxOS41IDE4LjcgMTkuNSAxNC4zQzE5LjUgOS45IDE1LjkgNi4zIDExLjUgNi4zWk0xNS4xIDE5QzE0LjEgMTkuOCAxMi44IDIwLjIgMTEuNSAyMC4yQzEwLjIgMjAuMiA4LjkgMTkuOCA3LjkgMTlDOC43IDE3LjcgMTAgMTcgMTEuNSAxN0MxMyAxNyAxNC40IDE3LjggMTUuMSAxOVpNMTMuMSAxMy40QzEzLjEgMTQuMyAxMi40IDE1IDExLjUgMTVDMTAuNiAxNSA5LjkgMTQuMyA5LjkgMTMuNEM5LjkgMTIuNSAxMC42IDExLjggMTEuNSAxMS44QzEyLjQgMTEuOCAxMy4xIDEyLjUgMTMuMSAxMy40Wk0xNS4xIDEzLjRDMTUuMSAxMS40IDEzLjUgOS44IDExLjUgOS44QzkuNSA5LjggNy45IDExLjQgNy45IDEzLjRDNy45IDE0LjIgOC4yIDE1IDguNyAxNS43QzcuOCAxNi4xIDcuMSAxNi44IDYuNSAxNy42QzUuOCAxNi42IDUuNSAxNS41IDUuNSAxNC4zQzUuNSAxMSA4LjIgOC4zIDExLjUgOC4zQzE0LjggOC4zIDE3LjUgMTEgMTcuNSAxNC4zQzE3LjUgMTUuNSAxNy4yIDE2LjYgMTYuNSAxNy42QzE1LjkgMTYuOCAxNS4yIDE2LjIgMTQuMyAxNS43QzE0LjggMTUuMSAxNS4xIDE0LjIgMTUuMSAxMy40Wk0yMSA5LjFDMjEgOC42IDIxLjQgOC4xIDIyIDguMUgyNS41QzI2IDguMSAyNi41IDguNSAyNi41IDkuMUMyNi41IDkuNiAyNi4xIDEwLjEgMjUuNSAxMC4xSDIyQzIxLjQgMTAuMSAyMSA5LjYgMjEgOS4xWk0yMSAxMi41QzIxIDEyIDIxLjQgMTEuNSAyMiAxMS41SDI1LjVDMjYgMTEuNSAyNi41IDExLjkgMjYuNSAxMi41QzI2LjUgMTMgMjYuMSAxMy41IDI1LjUgMTMuNUgyMkMyMS40IDEzLjUgMjEgMTMuMSAyMSAxMi41Wk0yMSAxNkMyMSAxNS41IDIxLjQgMTUgMjIgMTVIMjUuNUMyNiAxNSAyNi41IDE1LjQgMjYuNSAxNkMyNi41IDE2LjUgMjYuMSAxNyAyNS41IDE3SDIyQzIxLjQgMTcgMjEgMTYuNiAyMSAxNlpNMjUuNSAyMC41SDIyQzIxLjUgMjAuNSAyMSAyMC4xIDIxIDE5LjVDMjEgMTguOSAyMS40IDE4LjUgMjIgMTguNUgyNS41QzI2IDE4LjUgMjYuNSAxOC45IDI2LjUgMTkuNUMyNi41IDIwLjEgMjYuMSAyMC41IDI1LjUgMjAuNVoiIGZpbGw9IiNGRjM3NUUiLz4KPC9zdmc+Cg==\"/>\r\n </div>\r\n\r\n <div class=\"flex-grow-1 d-flex flex-column flex-sm-row align-items-sm-center gap-2\">\r\n <div class=\"flex-grow-1\">\r\n <!-- title-->\r\n <h1 class=\"fs-20 fs-md-16 fw-bold fc-black header-title m-0\">{{ formTitle }}\r\n <ds-icon\r\n icon=\"info\" class=\"fs-22 fc-dark-gray cursor-pointer\" *ngIf=\"serviceBrief.length\"\r\n (click)=\"openFaq()\"></ds-icon>\r\n </h1>\r\n <div\r\n class=\"header-user d-flex align-items-sm-center gap-2 mt-sm-1\"\r\n *ngIf=\"form?.header?.status?.['key'] !== 'NEW' || isLoading\">\r\n <ds-avatar\r\n *ngIf=\"!isLoading\" image=\"{{form?.header?.requesterPhoto}}\" size=\"xx-small\"\r\n class=\"d-inline-flex cursor-pointer\" (click)=\"showUserInfo()\"></ds-avatar>\r\n <span\r\n class=\"fs-12 text-truncate d-sm-block cursor-pointer\" (click)=\"showUserInfo()\"\r\n [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ coreService.getShortName(form?.header?.requesterName) }}</span>\r\n <mat-divider class=\"divider circle mx-2 d-none d-sm-block\"></mat-divider>\r\n <span class=\"fs-12\" [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ form?.header?.formId }}</span>\r\n <mat-divider *ngIf=\"creationDate\" class=\"divider circle mx-2 d-none d-sm-block\"></mat-divider>\r\n <span *ngIf=\"creationDate\" class=\"fs-14\" [ngClass]=\"{'loading-bg loading-width': isLoading}\">{{ creationDate }}</span>\r\n </div>\r\n </div>\r\n <!-- header-actions-->\r\n <div\r\n class=\"header-actions d-flex flex-row flex-sm-column justify-content-between justify-content-sm-center gap-2 mt-2 mt-sm-0\"\r\n *ngIf=\"!(form?.header?.status?.['key'] === 'NEW')\">\r\n <ds-status\r\n *ngIf=\"form?.header?.status?.['key'] !== 'NEW' && !isLoading\"\r\n status=\"{{statusClass(form?.header?.status?.['key'])}}\" class=\"header-status\">{{ form?.header?.status?.['value'] }}\r\n </ds-status>\r\n\r\n <div class=\"d-flex align-items-center justify-content-end gap-2\">\r\n <!-- feedback-->\r\n<!-- *ngIf=\"form?.inboxItem && (form?.inboxItem?.canRequestFeedback ==='true'|| form?.inboxItem?.hasFeedback==='true') && !isLoading\"-->\r\n <!-- <ds-button\r\n square icon size=\"small\" (click)=\"feedback()\">\r\n <ds-icon\r\n icon=\"chat-o\" class=\"fs-20 fs-md-17 fc-coral\"\r\n [ngClass]=\"{'fc-green':feedBackIcon === 'feedbackResponded' , 'fc-red': feedBackIcon === 'respondToFeedback' , 'fc-yellow': feedBackIcon === 'waitingFeedback'}\">\r\n </ds-icon>\r\n </ds-button>-->\r\n <ds-button\r\n *ngIf=\"form?.commentsDrop?.length > 0 && !isLoading\" square icon size=\"small\"\r\n (click)=\"onCommentsFormClick()\" class=\"has-comments\">\r\n <ds-icon icon=\"clock\" class=\"fc-coral fs-20 fs-md-17\"></ds-icon>\r\n </ds-button>\r\n <ng-container *ngIf=\"showApprovalHistory\">\r\n <ds-button\r\n color=\"white\" shape=\"text\" square size=\"small\" [satPopoverAnchor]=\"workflow\"\r\n #workflowAnchor=\"satPopoverAnchor\" (click)=\"workflowAnchor.popover.open()\">\r\n <slot name=\"prefix\">\r\n <ds-icon icon=\"workflow\" class=\"fs-24\"></ds-icon>\r\n </slot>\r\n </ds-button>\r\n\r\n <sat-popover\r\n #workflow [anchor]=\"workflowAnchor\" [hasBackdrop]=\"true\" verticalAlign=\"below\"\r\n horizontalAlign=\"end\">\r\n <div class=\"default-popover p-3\" style=\"min-width: 330px;\">\r\n <ds-approvals *ngIf=\"approvalHistory\" class=\"popover-approvals\" approvalsData=\"{{approvals}}\">\r\n </ds-approvals>\r\n </div>\r\n </sat-popover>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </header>\r\n</ng-container>\r\n<header\r\n class=\"mb-4 mt-4 d-flex align-items-center justify-content-between align-items-end gap-2\"\r\n *ngIf=\"(form?.header?.status?.['key'] === 'NEW')\">\r\n <section>\r\n <h6 class=\"fs-14 fs-md-12 fw-normal fc-dark-gray mb-0\">\r\n {{ i18n.translate('Hello') }}\r\n {{ coreService.getShortName(form?.header?.requesterName) }}, {{ i18n.translate('welcomeBack') }}!\r\n </h6>\r\n <h1 class=\"fs-26 fs-md-20 fw-bold fc-black d-flex align-items-center gap-2 mb-1\">\r\n {{ formTitle }}\r\n <ds-icon icon=\"info\" class=\"fs-22 fc-dark-gray cursor-pointer\" *ngIf=\"serviceBrief.length\" (click)=\"openFaq()\">\r\n </ds-icon>\r\n </h1>\r\n </section>\r\n\r\n</header>\r\n", styles: [":host ::ng-deep .filter-section .select-form-field{--input-bg: var(--white);--input-border: var(--white);--placeholder-fc: var(--black);--input-width: 85px;--input-fs: .75rem;--placeholder-fs: .75rem;--label-fs: .75rem;--label-fw: var(--font-regular);--input-height: var(--default-size-sm);font-size:var(--label-fs);box-shadow:var(--box-shadow)}:host ::ng-deep ds-button::part(base){--default-size-sm: 30px;--btn-radius: 3px}@media (max-width: 576px){:host ::ng-deep ds-button::part(base){--default-size-sm: 25px}}:host ::ng-deep .loading-width{min-width:100px;width:40px;flex-grow:1}:host ::ng-deep ds-avatar::part(base){--default-size: 20px}:host ::ng-deep .service-header{--service-header-icon-size: var(--default-size-lg);--header-border-color: var(--coral);display:flex;align-items:flex-start;border-top:5px solid var(--header-border-color);box-shadow:0 7px 10px rgba(var(--rgb-black),3%)}@media (max-width: 576px){:host ::ng-deep .service-header{border-radius:3px 3px 0 0}}:host ::ng-deep .service-header.loading{--header-border-color: var(--off-white)}:host ::ng-deep .service-header.warning{--header-border-color: var(--yellow)}:host ::ng-deep .service-header.success{--header-border-color: var(--green)}:host ::ng-deep .service-header.danger{--header-border-color: var(--red)}@media (max-width: 576px){:host ::ng-deep .service-header{--service-header-icon-size: var(--default-size-sm)}}:host ::ng-deep .service-header .service-header-icon{min-width:var(--service-header-icon-size);width:var(--service-header-icon-size);height:var(--service-header-icon-size);display:inline-flex;align-items:center;justify-content:center;padding:.75rem;border-radius:6px 6px 6px 0;background-color:rgba(var(--rgb-coral),.1)}@media (max-width: 576px){:host ::ng-deep .service-header .service-header-icon{padding:.5rem}}:host ::ng-deep .service-header .header-title{text-align:start}:host ::ng-deep .service-header .divider.circle{min-width:5px;width:5px;min-height:5px;height:5px;border-radius:50%;background-color:var(--dark-gray)}:host ::ng-deep .service-header .header-actions{align-items:flex-end;justify-content:flex-end}:host ::ng-deep .service-header .header-actions .has-comments{position:relative}:host ::ng-deep .service-header .header-actions .has-comments:before{content:\"\";min-width:8px;height:8px;border-radius:50%;background-color:var(--coral);position:absolute;top:-3px;right:-3px;z-index:1}[dir=rtl] :host ::ng-deep .service-header .header-actions .has-comments:before{right:auto;left:-3px}:host ::ng-deep .service-header .header-actions ds-button::part(base){--btn-color: var(--coral);--btn-bg-color: var(--light-gray);--btn-border-color: var(--light-gray)}:host ::ng-deep .service-header .header-user{color:var(--dark-gray)}:host ::ng-deep .history-button::part(base){background-color:var(--white);--btn-height: var(--default-size-sm);--btn-shadow: 0 7px 10px rgba(var(--rgb-black), 3%)}@media (max-width: 576px){:host ::ng-deep .history-button::part(base){--btn-height: 35px;--btn-width: 35px}}@media (max-width: 576px){:host ::ng-deep .history-button::part(label){display:none}}\n"] }]
|
|
147
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.CoreService }, { type: i1.CoreI18nService }, { type: i1.FeedBackService }, { type: i2.MatDialog }, { type: i1.SidenavService }], propDecorators: { form: [{
|
|
146
148
|
type: Input
|
|
147
149
|
}], showHistory: [{
|
|
148
150
|
type: Input
|
|
@@ -161,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
161
163
|
}], serviceBrief: [{
|
|
162
164
|
type: Input
|
|
163
165
|
}] } });
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvc2VydmljZS1oZWFkZXIvc2VydmljZS1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvc2VydmljZS1oZWFkZXIvc2VydmljZS1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQyxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXpHLE9BQU8sS0FBSyxTQUFTLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFDLGVBQWUsRUFBWSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BFLE9BQU8sRUFBa0IsZUFBZSxFQUFpQixNQUFNLG1CQUFtQixDQUFDO0FBQ25GLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzVFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxt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QUU7YUFDNUcsQ0FBQztZQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0FoSFUsc0JBQXNCOzJGQUF0QixzQkFBc0Isd1VBSnRCLENBQUMsZUFBZTtZQUN6QixFQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBQztTQUN6QywwQkNqQ0gscTJRQWtJQSwra0dENUdJLElBQUksNEZBQ0osZ0JBQWdCLG1xQkFDaEIsVUFBVSx1RkFDVixjQUFjLHFTQUNkLE9BQU8sb0ZBQ1AsT0FBTywyUUFDUCxXQUFXOzsyRkFPRixzQkFBc0I7a0JBbkJsQyxTQUFTOytCQUNFLHFCQUFxQixjQUduQixJQUFJLFdBQ1A7d0JBQ1AsSUFBSTt3QkFDSixnQkFBZ0I7d0JBQ2hCLFVBQVU7d0JBQ1YsY0FBYzt3QkFDZCxPQUFPO3dCQUNQLE9BQU87d0JBQ1AsV0FBVztxQkFDWixXQUNRLENBQUMsc0JBQXNCLENBQUMsYUFDdEIsQ0FBQyxlQUFlO3dCQUN6QixFQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBQztxQkFDekM7dU1BR1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtGb3JtLCBTZWN0aW9ufSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0ICogYXMgQ29uc3RhbnRzIGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9jb25zdGFudHMnO1xyXG5pbXBvcnQge01BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQge0NvcmVJMThuU2VydmljZSwgRmVlZEJhY2tTZXJ2aWNlLCBTaWRlbmF2U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQge1Byb2ZpbGVTZWN0aW9uQ29tcG9uZW50fSBmcm9tICcuLi9wcm9maWxlLXNlY3Rpb24vcHJvZmlsZS1zZWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7RmVlZGJhY2tTZWN0aW9uQ29tcG9uZW50fSBmcm9tICcuLi9mZWVkYmFjay1zZWN0aW9uL2ZlZWRiYWNrLXNlY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHtOZ0NsYXNzLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1NhdFBvcG92ZXJNb2R1bGV9IGZyb20gJ0BuY3N0YXRlL3NhdC1wb3BvdmVyJztcclxuaW1wb3J0IHtNYXREaXZpZGVyfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaXZpZGVyJztcclxuaW1wb3J0IHtNYXRNZW51LCBNYXRNZW51SXRlbSwgTWF0TWVudVRyaWdnZXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xyXG5pbXBvcnQge0ZhcVNpZGVuYXZDb21wb25lbnR9IGZyb20gJy4uL2ZhcS1zaWRlbmF2L2ZhcS1zaWRlbmF2LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7QWN0aXZpdGllc0NvbXBvbmVudH0gZnJvbSAnLi4vYWN0aXZpdGllcy9hY3Rpdml0aWVzLmNvbXBvbmVudCc7XHJcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tICdtb21lbnQnXHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjb3JlLXNlcnZpY2UtaGVhZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2VydmljZS1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NlcnZpY2UtaGVhZGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBOZ0lmLFxyXG4gICAgU2F0UG9wb3Zlck1vZHVsZSxcclxuICAgIE1hdERpdmlkZXIsXHJcbiAgICBNYXRNZW51VHJpZ2dlcixcclxuICAgIE5nQ2xhc3MsXHJcbiAgICBNYXRNZW51LFxyXG4gICAgTWF0TWVudUl0ZW1cclxuICBdLFxyXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcclxuICBwcm92aWRlcnM6IFtGZWVkQmFja1NlcnZpY2UsXHJcbiAgICB7cHJvdmlkZTogTUFUX0RJQUxPR19EQVRBLCB1c2VWYWx1ZToge319LFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNlcnZpY2VIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuICBASW5wdXQoKSBmb3JtOiBGb3JtO1xyXG4gIEBJbnB1dCgpIHNob3dIaXN0b3J5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2hvd0FwcHJvdmFsSGlzdG9yeSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGFwcHJvdmFsSGlzdG9yeTogYW55O1xyXG4gIEBJbnB1dCgpIGNyZWF0aW9uRGF0ZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGZvcm1UaXRsZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb246IFNlY3Rpb247XHJcbiAgQElucHV0KCkgc2VydmljZUJyaWVmOiBhbnlbXSA9IFtdO1xyXG4gIGFwcHJvdmFsczogYW55W10gPSBbXTtcclxuICBwdWJsaWMgZmVlZEJhY2tJY29uOiBzdHJpbmcgPSBudWxsO1xyXG4gIGZsYWdQcmlvcml0eTogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHVibGljIGkxOG46IENvcmVJMThuU2VydmljZSwgcHJpdmF0ZSBmZWVkQmFja1NlcnZpY2U6IEZlZWRCYWNrU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nOiBNYXREaWFsb2csIHByaXZhdGUgcmVhZG9ubHkgc2lkZW5hdlNlcnZpY2U6IFNpZGVuYXZTZXJ2aWNlLFxyXG4gICkge1xyXG5cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuZ2V0QXBwcm92YWxIaXN0b3J5KCk7XHJcbiAgICB0aGlzLmNyZWF0aW9uRGF0ZSA9IG1vbWVudCh0aGlzLmZvcm0/LmhlYWRlcj8uY3JlYXRpb25EYXRlKS5sb2NhbGUoJ2VuLVVTJykuZm9ybWF0KFwiREQvTU0vWVlZWSBISDptbTpzc1wiKTtcclxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cclxuICB9XHJcblxyXG4gIG9uQ29tbWVudHNGb3JtQ2xpY2soKSB7XHJcbiAgICBjb25zdCBjb21tZW50czogYW55ID0gdGhpcy5mb3JtLmNvbW1lbnRzRHJvcDtcclxuICAgIGNvbnN0IHJlc3VsdERhdGEgPSBbXTtcclxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBjb21tZW50cy5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgY29uc3QgaXRlbSA9IGNvbW1lbnRzW2luZGV4XTtcclxuICAgICAgY29uc3Qgb2JqID1cclxuICAgICAgICB7XHJcbiAgICAgICAgICBuYW1lOiBpdGVtLmVtcGxveWVlTmFtZSxcclxuICAgICAgICAgIHRpdGxlOiBpdGVtLmpvYlBvc2l0aW9uLFxyXG4gICAgICAgICAgaW1hZ2U6IGl0ZW0ucHJvZmlsZVBpY3R1cmUsXHJcbiAgICAgICAgICBkYXRlOiBtb21lbnQoaXRlbS5jb21tZW50RGF0ZSkubG9jYWxlKCdlbi1VUycpLmZvcm1hdCgnWVlZWS1NTS1ERCcpLFxyXG4gICAgICAgICAgdGltZTogbW9tZW50KGl0ZW0uY29tbWVudERhdGUpLmxvY2FsZSgnZW4tVVMnKS5mb3JtYXQoJ2g6bW0gYScpLFxyXG4gICAgICAgICAgY29tbWVudDogaXRlbS5jb21tZW50Qm9keSxcclxuICAgICAgICAgIGF0dGFjaG1lbnRzOiBpdGVtLmF0dGFjaG1lbnRcclxuICAgICAgICB9O1xyXG4gICAgICByZXN1bHREYXRhLnB1c2gob2JqKTtcclxuICAgIH1cclxuICAgIC8vIHRoaXMucHJvZmlsZVJlcXVlc3RlclNlcnZpY2UuYWN0aXZpdGllcyA9IHJlc3VsdERhdGE7XHJcbiAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLnB1Ymxpc2goJ29wZW4nLCBBY3Rpdml0aWVzQ29tcG9uZW50KTtcclxuICB9XHJcblxyXG4gIGZlZWRiYWNrKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kaWFsb2cub3BlbihGZWVkYmFja1NlY3Rpb25Db21wb25lbnQsIHtcclxuICAgICAgcGFuZWxDbGFzczogWydtYWluLXBvcHVwJ10sXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBwcm9maWxlOiB0aGlzLmZvcm0ucHJvZmlsZUluZm9Ecm9wLFxyXG4gICAgICAgIGluYm94SXRlbTogdGhpcy5mb3JtLmluYm94SXRlbSxcclxuICAgICAgICBmb3JtOiB0aGlzLmZvcm1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzaG93VXNlckluZm8oKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaXNMb2FkaW5nKSB7XHJcbiAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UuZGF0YSA9IHRoaXMuZm9ybT8ucHJvZmlsZUluZm9Ecm9wO1xyXG4gICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLnB1Ymxpc2goJ29wZW4nLCBQcm9maWxlU2VjdGlvbkNvbXBvbmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRGbGFnUHJpb3JpdHkoaWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5mbGFnUHJpb3JpdHkgPSBpZDtcclxuICAgIHRoaXMuZm9ybS5pbmJveEl0ZW0uZmxhZ1ByaW9yaXR5ID0gaWQ7XHJcbiAgICAvLyB0aGlzLnN0YXRlTWFjaGluZVNlcnZpY2UuZGlzcGF0Y2goQ29uc3RhbnRzLlNUQVRFX01BQ0hJTkVfQUNUSU9OX1NFVF9GTEFHLCBpZCkudGhlbigoKSA9PiB7XHJcbiAgICAvLyB9KTtcclxuICB9XHJcblxyXG4gIHN0YXR1c0NsYXNzKHN0YXR1czogc3RyaW5nKSB7XHJcbiAgICBpZiAoc3RhdHVzKSB7XHJcbiAgICAgIGlmICh0aGlzLmlzTG9hZGluZykge1xyXG4gICAgICAgIHJldHVybiAnbG9hZGluZyc7XHJcbiAgICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgc3RhdHVzID09PSBDb25zdGFudHMuRk9STV9TVEFUVVNfUkVKRUNURUQgfHwgc3RhdHVzID09PSBDb25zdGFudHMuRk9STV9TVEFUVVNfQ0FOQ0VMTEVEXHJcbiAgICAgICAgfHwgc3RhdHVzLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2RlbnknKVxyXG4gICAgICAgIHx8IHN0YXR1cy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdyZWplY3QnKVxyXG4gICAgICAgIHx8IHN0YXR1cz8udG9Mb3dlckNhc2UoKSA9PT0gJ3JlamVjdCcgfHwgc3RhdHVzPy50b0xvd2VyQ2FzZSgpID09PSAndW5zYXRpc2ZpZWQnIHx8IHN0YXR1cz8udG9Mb3dlckNhc2UoKSA9PT0gJ2NhbmNlbCdcclxuICAgICAgKSB7XHJcbiAgICAgICAgcmV0dXJuICdkYW5nZXInO1xyXG4gICAgICB9IGVsc2UgaWYgKHN0YXR1cyA9PT0gQ29uc3RhbnRzLkZPUk1fU1RBVFVTX1BFTkRJTkcgfHwgc3RhdHVzPy50b0xvd2VyQ2FzZSgpID09PSAncGVuZGluZycpIHtcclxuICAgICAgICByZXR1cm4gJ3dhcm5pbmcnO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiAnc3VjY2Vzcyc7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAnc3VjY2Vzcyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvcGVuRmFxKCkge1xyXG4gICAgdGhpcy5zaWRlbmF2U2VydmljZS5wdWJsaXNoKCdvcGVuJywgRmFxU2lkZW5hdkNvbXBvbmVudCwgJ2VuZCcsICdvdmVyJywgdGhpcy5zZXJ2aWNlQnJpZWYpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QXBwcm92YWxIaXN0b3J5KCkge1xyXG4gICAgdGhpcy5hcHByb3ZhbEhpc3Rvcnk/LmZvckVhY2goKGVsZW1lbnQ6IHsgYXBwcm92ZXI6IHsgcGVyc29uTmFtZTogYW55OyBwZXJzb25FbWFpbDogc3RyaW5nOyB9OyBwb3NpdGlvblR5cGU6IGFueTsgfSwgaW5kZXg6IG51bWJlcikgPT4ge1xyXG4gICAgICBjb25zdCBvYmogPSB7XHJcbiAgICAgICAgaWQ6IGluZGV4ICsgMSxcclxuICAgICAgICBuYW1lOiBlbGVtZW50LmFwcHJvdmVyLnBlcnNvbk5hbWUsXHJcbiAgICAgICAgdGl0bGU6IGVsZW1lbnQucG9zaXRpb25UeXBlLFxyXG4gICAgICAgIGltYWdlOiAnL2dyb3VwL2ktZ2F0ZS93bS1icG0vZm9ybXMvLS9wcm94eS9wb3J0cmFpdD9lbWFpbD0nICsgZWxlbWVudC5hcHByb3Zlci5wZXJzb25FbWFpbCxcclxuICAgICAgICBzdGF0dXM6IHRoaXMuZm9ybS5zZWN0aW9uc1tpbmRleCArIDFdID8gdGhpcy5zdGF0dXNDbGFzcyh0aGlzLmZvcm0uc2VjdGlvbnNbaW5kZXggKyAxXS5ib2R5LmRldGFpbHMuZGVjaXNpb24ua2V5KSA6ICcnLFxyXG4gICAgICAgIHN0YXR1c0xhYmVsOiB0aGlzLmZvcm0uc2VjdGlvbnNbaW5kZXggKyAxXSA/IHRoaXMuZm9ybS5zZWN0aW9uc1tpbmRleCArIDFdLmJvZHkuZGV0YWlscy5kZWNpc2lvbi52YWx1ZSA6ICcnXHJcbiAgICAgIH07XHJcbiAgICAgIHRoaXMuYXBwcm92YWxzLnB1c2gob2JqKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIShmb3JtPy5oZWFkZXI/LnN0YXR1cz8uWydrZXknXSA9PT0gJ05FVycpXCI+XHJcbiAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMiBteS0yXCIgKm5nSWY9XCIhKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddID09PSAnTkVXJylcIj5cclxuXHJcbiAgICA8IS0tIGZsYWctLT5cclxuICAgIDxkcy1idXR0b25cclxuICAgICAgKm5nSWY9XCJmb3JtPy5pbmJveEl0ZW0gJiYgIWZvcm0uc2VjdGlvbnNbZm9ybS5zZWN0aW9ucy5sZW5ndGggLTFdLmhlYWRlci5yZWFkT25seSAmJiAhaXNMb2FkaW5nXCJcclxuICAgICAgc3F1YXJlXHJcbiAgICAgIGljb25cclxuICAgICAgc2l6ZT1cInNtYWxsXCJcclxuICAgICAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIlxyXG4gICAgICBjbGFzcz1cImljb24tYnRuLXNoYWRvd1wiPlxyXG4gICAgICA8ZHMtaWNvblxyXG4gICAgICAgIFtuZ0NsYXNzXT1cInsnZmMtcHVycGxlJyA6IChmbGFnUHJpb3JpdHkgPT09ICcwJyB8fCAgZmxhZ1ByaW9yaXR5ID09PSBudWxsKSwnZmMteWVsbG93JyA6IGZsYWdQcmlvcml0eSA9PT0gJzEnLCdmYy1ncmVlbicgOiBmbGFnUHJpb3JpdHkgPT09ICcyJywnZmMtY29yYWwnIDogZmxhZ1ByaW9yaXR5ID09PSAnMyd9XCJcclxuICAgICAgICBpY29uPVwiZmxhZy1vXCIgY2xhc3M9XCJmcy0yMCBmcy1tZC0xNyBmYy1wdXJwbGVcIj5cclxuICAgICAgPC9kcy1pY29uPlxyXG4gICAgPC9kcy1idXR0b24+XHJcbiAgICA8bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCIgcGFuZWxDbGFzcz1cImFjdGlvbi1tZW51XCI+XHJcbiAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwic2V0RmxhZ1ByaW9yaXR5KCcwJylcIj5cclxuICAgICAgICA8ZHMtaWNvbiBpY29uPVwiZmxhZy1vXCIgY2xhc3M9XCJmYy1wdXJwbGUgZnMtMjAgZnMtbWQtMTdcIj48L2RzLWljb24+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cInNldEZsYWdQcmlvcml0eSgnMScpXCI+XHJcbiAgICAgICAgPGRzLWljb24gaWNvbj1cImZsYWctb1wiIGNsYXNzPVwiZmMteWVsbG93IGZzLTIwIGZzLW1kLTE3XCI+PC9kcy1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJzZXRGbGFnUHJpb3JpdHkoJzInKVwiPlxyXG4gICAgICAgIDxkcy1pY29uIGljb249XCJmbGFnLW9cIiBjbGFzcz1cImZjLWdyZWVuIGZzLTIwIGZzLW1kLTE3XCI+PC9kcy1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJzZXRGbGFnUHJpb3JpdHkoJzMnKVwiPlxyXG4gICAgICAgIDxkcy1pY29uIGljb249XCJmbGFnLW9cIiBjbGFzcz1cImZjLWNvcmFsIGZzLTIwIGZzLW1kLTE3XCI+PC9kcy1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvbWF0LW1lbnU+XHJcblxyXG4gICAgPCEtLSBwcmludC0tPlxyXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8aGVhZGVyIGNsYXNzPVwic2VydmljZS1oZWFkZXIgYmMtd2hpdGUgcC0zIHAtc20tNCBweS00IGdhcC0zIHt7c3RhdHVzQ2xhc3MoZm9ybT8uaGVhZGVyPy5zdGF0dXM/Llsna2V5J10pfX1cIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwic2VydmljZS1oZWFkZXItaWNvblwiPlxyXG4gICAgICA8aW1nXHJcbiAgICAgICAgYWx0PVwiXCJcclxuICAgICAgICBzcmM9XCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNekFpSUdobGFXZG9kRDBpTWpraUlIWnBaWGRDYjNnOUlqQWdNQ0F6TUNBeU9TSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEhCaGRHZ2daRDBpVFRJMUxqRWdNRWcwTGpsRE1pNHlJREFnTUNBeUxqSWdNQ0EwTGpsV01qZ3VOa2d5TlM0eFF6STNMamdnTWpndU5pQXpNQ0F5Tmk0MElETXdJREl6TGpkV05DNDVRek13SURJdU1pQXlOeTQ0SURBZ01qVXVNU0F3V2sweUlEUXVPVU15SURNdU15QXpMak1nTWlBMExqa2dNa2d5TlM0eFF6STJMamNnTWlBeU9DQXpMak1nTWpnZ05DNDVWakl6TGpkRE1qZ2dNalV1TXlBeU5pNDNJREkyTGpZZ01qVXVNU0F5Tmk0MlNESldOQzQ1V2sweE1TNDFJRFl1TTBNM0xqRWdOaTR6SURNdU5TQTVMamtnTXk0MUlERTBMak5ETXk0MUlERTRMamNnTnk0eElESXlMak1nTVRFdU5TQXlNaTR6UXpFMUxqa2dNakl1TXlBeE9TNDFJREU0TGpjZ01Ua3VOU0F4TkM0elF6RTVMalVnT1M0NUlERTFMamtnTmk0eklERXhMalVnTmk0eldrMHhOUzR4SURFNVF6RTBMakVnTVRrdU9DQXhNaTQ0SURJd0xqSWdNVEV1TlNBeU1DNHlRekV3TGpJZ01qQXVNaUE0TGprZ01Ua3VPQ0EzTGprZ01UbERPQzQzSURFM0xqY2dNVEFnTVRjZ01URXVOU0F4TjBNeE15QXhOeUF4TkM0MElERTNMamdnTVRVdU1TQXhPVnBOTVRNdU1TQXhNeTQwUXpFekxqRWdNVFF1TXlBeE1pNDBJREUxSURFeExqVWdNVFZETVRBdU5pQXhOU0E1TGprZ01UUXVNeUE1TGprZ01UTXVORU01TGprZ01USXVOU0F4TUM0MklERXhMamdnTVRFdU5TQXhNUzQ0UXpFeUxqUWdNVEV1T0NBeE15NHhJREV5TGpVZ01UTXVNU0F4TXk0MFdrMHhOUzR4SURFekxqUkRNVFV1TVNBeE1TNDBJREV6TGpVZ09TNDRJREV4TGpVZ09TNDRRemt1TlNBNUxqZ2dOeTQ1SURFeExqUWdOeTQ1SURFekxqUkROeTQ1SURFMExqSWdPQzR5SURFMUlEZ3VOeUF4TlM0M1F6Y3VPQ0F4Tmk0eElEY3VNU0F4Tmk0NElEWXVOU0F4Tnk0MlF6VXVPQ0F4Tmk0MklEVXVOU0F4TlM0MUlEVXVOU0F4TkM0elF6VXVOU0F4TVNBNExqSWdPQzR6SURFeExqVWdPQzR6UXpFMExqZ2dPQzR6SURFM0xqVWdNVEVnTVRjdU5TQXhOQzR6UXpFM0xqVWdNVFV1TlNBeE55NHlJREUyTGpZZ01UWXVOU0F4Tnk0MlF6RTFMamtnTVRZdU9DQXhOUzR5SURFMkxqSWdNVFF1TXlBeE5TNDNRekUwTGpnZ01UVXVNU0F4TlM0eElERTBMaklnTVRVdU1TQXhNeTQwV2sweU1TQTVMakZETWpFZ09DNDJJREl4TGpRZ09DNHhJREl5SURndU1VZ3lOUzQxUXpJMklEZ3VNU0F5Tmk0MUlEZ3VOU0F5Tmk0MUlEa3VNVU15Tmk0MUlEa3VOaUF5Tmk0eElERXdMakVnTWpVdU5TQXhNQzR4U0RJeVF6SXhMalFnTVRBdU1TQXlNU0E1TGpZZ01qRWdPUzR4V2sweU1TQXhNaTQxUXpJeElERXlJREl4TGpRZ01URXVOU0F5TWlBeE1TNDFTREkxTGpWRE1qWWdNVEV1TlNBeU5pNDFJREV4TGprZ01qWXVOU0F4TWk0MVF6STJMalVnTVRNZ01qWXVNU0F4TXk0MUlESTFMalVnTVRNdU5VZ3lNa015TVM0MElERXpMalVnTWpFZ01UTXVNU0F5TVNBeE1pNDFXazB5TVNBeE5rTXlNU0F4TlM0MUlESXhMalFnTVRVZ01qSWdNVFZJTWpVdU5VTXlOaUF4TlNBeU5pNDFJREUxTGpRZ01qWXVOU0F4TmtNeU5pNDFJREUyTGpVZ01qWXVNU0F4TnlBeU5TNDFJREUzU0RJeVF6SXhMalFnTVRjZ01qRWdNVFl1TmlBeU1TQXhObHBOTWpVdU5TQXlNQzQxU0RJeVF6SXhMalVnTWpBdU5TQXlNU0F5TUM0eElESXhJREU1TGpWRE1qRWdNVGd1T1NBeU1TNDBJREU0TGpVZ01qSWdNVGd1TlVneU5TNDFRekkySURFNExqVWdNall1TlNBeE9DNDVJREkyTGpVZ01Ua3VOVU15Tmk0MUlESXdMakVnTWpZdU1TQXlNQzQxSURJMUxqVWdNakF1TlZvaUlHWnBiR3c5SWlOR1JqTTNOVVVpTHo0S1BDOXpkbWMrQ2c9PVwiLz5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LWdyb3ctMSBkLWZsZXggZmxleC1jb2x1bW4gZmxleC1zbS1yb3cgYWxpZ24taXRlbXMtc20tY2VudGVyIGdhcC0yXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LWdyb3ctMVwiPlxyXG4gICAgICAgIDwhLS0gdGl0bGUtLT5cclxuICAgICAgICA8aDEgY2xhc3M9XCJmcy0yMCBmcy1tZC0xNiBmdy1ib2xkIGZjLWJsYWNrIGhlYWRlci10aXRsZSBtLTBcIj57eyBmb3JtVGl0bGUgfX1cclxuICAgICAgICAgIDxkcy1pY29uXHJcbiAgICAgICAgICAgIGljb249XCJpbmZvXCIgY2xhc3M9XCJmcy0yMiBmYy1kYXJrLWdyYXkgY3Vyc29yLXBvaW50ZXJcIiAqbmdJZj1cInNlcnZpY2VCcmllZi5sZW5ndGhcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib3BlbkZhcSgpXCI+PC9kcy1pY29uPlxyXG4gICAgICAgIDwvaDE+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJoZWFkZXItdXNlciBkLWZsZXggYWxpZ24taXRlbXMtc20tY2VudGVyIGdhcC0yIG10LXNtLTFcIlxyXG4gICAgICAgICAgKm5nSWY9XCJmb3JtPy5oZWFkZXI/LnN0YXR1cz8uWydrZXknXSAhPT0gJ05FVycgfHwgaXNMb2FkaW5nXCI+XHJcbiAgICAgICAgICA8ZHMtYXZhdGFyXHJcbiAgICAgICAgICAgICpuZ0lmPVwiIWlzTG9hZGluZ1wiIGltYWdlPVwie3tmb3JtPy5oZWFkZXI/LnJlcXVlc3RlclBob3RvfX1cIiBzaXplPVwieHgtc21hbGxcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImQtaW5saW5lLWZsZXggY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic2hvd1VzZXJJbmZvKClcIj48L2RzLWF2YXRhcj5cclxuICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgIGNsYXNzPVwiZnMtMTIgdGV4dC10cnVuY2F0ZSBkLXNtLWJsb2NrIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNob3dVc2VySW5mbygpXCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieydsb2FkaW5nLWJnIGxvYWRpbmctd2lkdGgnOiBpc0xvYWRpbmd9XCI+e3sgKGZvcm0/LmhlYWRlcj8ucmVxdWVzdGVyTmFtZSkgfX08L3NwYW4+XHJcbiAgICAgICAgICA8bWF0LWRpdmlkZXIgY2xhc3M9XCJkaXZpZGVyIGNpcmNsZSBteC0yIGQtbm9uZSBkLXNtLWJsb2NrXCI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZnMtMTJcIiBbbmdDbGFzc109XCJ7J2xvYWRpbmctYmcgbG9hZGluZy13aWR0aCc6IGlzTG9hZGluZ31cIj57eyBmb3JtPy5oZWFkZXI/LmZvcm1JZCB9fTwvc3Bhbj5cclxuICAgICAgICAgIDxtYXQtZGl2aWRlciAqbmdJZj1cImNyZWF0aW9uRGF0ZVwiIGNsYXNzPVwiZGl2aWRlciBjaXJjbGUgbXgtMiBkLW5vbmUgZC1zbS1ibG9ja1wiPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgICA8c3BhbiAqbmdJZj1cImNyZWF0aW9uRGF0ZVwiIGNsYXNzPVwiZnMtMTRcIiBbbmdDbGFzc109XCJ7J2xvYWRpbmctYmcgbG9hZGluZy13aWR0aCc6IGlzTG9hZGluZ31cIj57eyBjcmVhdGlvbkRhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8IS0tIGhlYWRlci1hY3Rpb25zLS0+XHJcbiAgICAgIDxkaXZcclxuICAgICAgICBjbGFzcz1cImhlYWRlci1hY3Rpb25zIGQtZmxleCBmbGV4LXJvdyBmbGV4LXNtLWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBqdXN0aWZ5LWNvbnRlbnQtc20tY2VudGVyIGdhcC0yIG10LTIgbXQtc20tMFwiXHJcbiAgICAgICAgKm5nSWY9XCIhKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddID09PSAnTkVXJylcIj5cclxuICAgICAgICA8ZHMtc3RhdHVzXHJcbiAgICAgICAgICAqbmdJZj1cImZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddICE9PSAnTkVXJyAmJiAhaXNMb2FkaW5nXCJcclxuICAgICAgICAgIHN0YXR1cz1cInt7c3RhdHVzQ2xhc3MoZm9ybT8uaGVhZGVyPy5zdGF0dXM/Llsna2V5J10pfX1cIiBjbGFzcz1cImhlYWRlci1zdGF0dXNcIj57eyBmb3JtPy5oZWFkZXI/LnN0YXR1cz8uWyd2YWx1ZSddIH19XHJcbiAgICAgICAgPC9kcy1zdGF0dXM+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1lbmQgZ2FwLTJcIj5cclxuICAgICAgICAgIDwhLS0gZmVlZGJhY2stLT5cclxuPCEtLSAgICAgICAgICAgICpuZ0lmPVwiZm9ybT8uaW5ib3hJdGVtICYmIChmb3JtPy5pbmJveEl0ZW0/LmNhblJlcXVlc3RGZWVkYmFjayA9PT0ndHJ1ZSd8fCBmb3JtPy5pbmJveEl0ZW0/Lmhhc0ZlZWRiYWNrPT09J3RydWUnKSAmJiAhaXNMb2FkaW5nXCItLT5cclxuICAgICAgICA8IS0tICA8ZHMtYnV0dG9uXHJcbiAgICAgICAgICAgIHNxdWFyZSBpY29uIHNpemU9XCJzbWFsbFwiIChjbGljayk9XCJmZWVkYmFjaygpXCI+XHJcbiAgICAgICAgICAgIDxkcy1pY29uXHJcbiAgICAgICAgICAgICAgaWNvbj1cImNoYXQtb1wiIGNsYXNzPVwiZnMtMjAgZnMtbWQtMTcgZmMtY29yYWxcIlxyXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZmMtZ3JlZW4nOmZlZWRCYWNrSWNvbiA9PT0gJ2ZlZWRiYWNrUmVzcG9uZGVkJyAsICdmYy1yZWQnOiBmZWVkQmFja0ljb24gPT09ICdyZXNwb25kVG9GZWVkYmFjaycgLCAnZmMteWVsbG93JzogZmVlZEJhY2tJY29uID09PSAnd2FpdGluZ0ZlZWRiYWNrJ31cIj5cclxuICAgICAgICAgICAgPC9kcy1pY29uPlxyXG4gICAgICAgICAgPC9kcy1idXR0b24+LS0+XHJcbiAgICAgICAgICA8ZHMtYnV0dG9uXHJcbiAgICAgICAgICAgICpuZ0lmPVwiZm9ybT8uY29tbWVudHNEcm9wPy5sZW5ndGggPiAwICYmICFpc0xvYWRpbmdcIiBzcXVhcmUgaWNvbiBzaXplPVwic21hbGxcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25Db21tZW50c0Zvcm1DbGljaygpXCIgY2xhc3M9XCJoYXMtY29tbWVudHNcIj5cclxuICAgICAgICAgICAgPGRzLWljb24gaWNvbj1cImNsb2NrXCIgY2xhc3M9XCJmYy1jb3JhbCBmcy0yMCBmcy1tZC0xN1wiPjwvZHMtaWNvbj5cclxuICAgICAgICAgIDwvZHMtYnV0dG9uPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dBcHByb3ZhbEhpc3RvcnlcIj5cclxuICAgICAgICAgICAgPGRzLWJ1dHRvblxyXG4gICAgICAgICAgICAgIGNvbG9yPVwid2hpdGVcIiBzaGFwZT1cInRleHRcIiBzcXVhcmUgc2l6ZT1cInNtYWxsXCIgW3NhdFBvcG92ZXJBbmNob3JdPVwid29ya2Zsb3dcIlxyXG4gICAgICAgICAgICAgICN3b3JrZmxvd0FuY2hvcj1cInNhdFBvcG92ZXJBbmNob3JcIiAoY2xpY2spPVwid29ya2Zsb3dBbmNob3IucG9wb3Zlci5vcGVuKClcIj5cclxuICAgICAgICAgICAgICA8c2xvdCBuYW1lPVwicHJlZml4XCI+XHJcbiAgICAgICAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwid29ya2Zsb3dcIiBjbGFzcz1cImZzLTI0XCI+PC9kcy1pY29uPlxyXG4gICAgICAgICAgICAgIDwvc2xvdD5cclxuICAgICAgICAgICAgPC9kcy1idXR0b24+XHJcblxyXG4gICAgICAgICAgICA8c2F0LXBvcG92ZXJcclxuICAgICAgICAgICAgICAjd29ya2Zsb3cgW2FuY2hvcl09XCJ3b3JrZmxvd0FuY2hvclwiIFtoYXNCYWNrZHJvcF09XCJ0cnVlXCIgdmVydGljYWxBbGlnbj1cImJlbG93XCJcclxuICAgICAgICAgICAgICBob3Jpem9udGFsQWxpZ249XCJlbmRcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1wb3BvdmVyIHAtM1wiIHN0eWxlPVwibWluLXdpZHRoOiAzMzBweDtcIj5cclxuICAgICAgICAgICAgICAgIDxkcy1hcHByb3ZhbHMgKm5nSWY9XCJhcHByb3ZhbEhpc3RvcnlcIiBjbGFzcz1cInBvcG92ZXItYXBwcm92YWxzXCIgYXBwcm92YWxzRGF0YT1cInt7YXBwcm92YWxzfX1cIj5cclxuICAgICAgICAgICAgICAgIDwvZHMtYXBwcm92YWxzPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L3NhdC1wb3BvdmVyPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gIDwvaGVhZGVyPlxyXG48L25nLWNvbnRhaW5lcj5cclxuPGhlYWRlclxyXG4gIGNsYXNzPVwibWItNCBtdC00IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtZW5kIGdhcC0yXCJcclxuICAqbmdJZj1cIihmb3JtPy5oZWFkZXI/LnN0YXR1cz8uWydrZXknXSA9PT0gJ05FVycpXCI+XHJcbiAgPHNlY3Rpb24+XHJcbiAgICA8aDYgY2xhc3M9XCJmcy0xNCBmcy1tZC0xMiBmdy1ub3JtYWwgZmMtZGFyay1ncmF5IG1iLTBcIj5cclxuICAgICAge3sgaTE4bi50cmFuc2xhdGUoJ0hlbGxvJykgfX1cclxuICAgICAge3sgKGZvcm0/LmhlYWRlcj8ucmVxdWVzdGVyTmFtZSkgfX0sIHt7IGkxOG4udHJhbnNsYXRlKCd3ZWxjb21lQmFjaycpIH19IVxyXG4gICAgPC9oNj5cclxuICAgIDxoMSBjbGFzcz1cImZzLTI2IGZzLW1kLTIwIGZ3LWJvbGQgZmMtYmxhY2sgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMiBtYi0xXCI+XHJcbiAgICAgIHt7IGZvcm1UaXRsZSB9fVxyXG4gICAgICA8ZHMtaWNvbiBpY29uPVwiaW5mb1wiIGNsYXNzPVwiZnMtMjIgZmMtZGFyay1ncmF5IGN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCJzZXJ2aWNlQnJpZWYubGVuZ3RoXCIgKGNsaWNrKT1cIm9wZW5GYXEoKVwiPlxyXG4gICAgICA8L2RzLWljb24+XHJcbiAgICA8L2gxPlxyXG4gIDwvc2VjdGlvbj5cclxuXHJcbjwvaGVhZGVyPlxyXG4iXX0=
|
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvc2VydmljZS1oZWFkZXIvc2VydmljZS1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvc2VydmljZS1oZWFkZXIvc2VydmljZS1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQyxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXpHLE9BQU8sS0FBSyxTQUFTLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFDLGVBQWUsRUFBWSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BFLE9BQU8sRUFBK0IsZUFBZSxFQUFpQixNQUFNLG1CQUFtQixDQUFDO0FBQ2hHLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzVFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxt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ZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Rm9ybSwgU2VjdGlvbn0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCAqIGFzIENvbnN0YW50cyBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvY29uc3RhbnRzJztcclxuaW1wb3J0IHtNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHtDb3JlSTE4blNlcnZpY2UsIENvcmVTZXJ2aWNlLCBGZWVkQmFja1NlcnZpY2UsIFNpZGVuYXZTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7UHJvZmlsZVNlY3Rpb25Db21wb25lbnR9IGZyb20gJy4uL3Byb2ZpbGUtc2VjdGlvbi9wcm9maWxlLXNlY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHtGZWVkYmFja1NlY3Rpb25Db21wb25lbnR9IGZyb20gJy4uL2ZlZWRiYWNrLXNlY3Rpb24vZmVlZGJhY2stc2VjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQge05nQ2xhc3MsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7U2F0UG9wb3Zlck1vZHVsZX0gZnJvbSAnQG5jc3RhdGUvc2F0LXBvcG92ZXInO1xyXG5pbXBvcnQge01hdERpdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpdmlkZXInO1xyXG5pbXBvcnQge01hdE1lbnUsIE1hdE1lbnVJdGVtLCBNYXRNZW51VHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XHJcbmltcG9ydCB7RmFxU2lkZW5hdkNvbXBvbmVudH0gZnJvbSAnLi4vZmFxLXNpZGVuYXYvZmFxLXNpZGVuYXYuY29tcG9uZW50JztcclxuaW1wb3J0IHtBY3Rpdml0aWVzQ29tcG9uZW50fSBmcm9tICcuLi9hY3Rpdml0aWVzL2FjdGl2aXRpZXMuY29tcG9uZW50JztcclxuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gJ21vbWVudCdcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvcmUtc2VydmljZS1oZWFkZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zZXJ2aWNlLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc2VydmljZS1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nSWYsXHJcbiAgICBTYXRQb3BvdmVyTW9kdWxlLFxyXG4gICAgTWF0RGl2aWRlcixcclxuICAgIE1hdE1lbnVUcmlnZ2VyLFxyXG4gICAgTmdDbGFzcyxcclxuICAgIE1hdE1lbnUsXHJcbiAgICBNYXRNZW51SXRlbVxyXG4gIF0sXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxyXG4gIHByb3ZpZGVyczogW0ZlZWRCYWNrU2VydmljZSxcclxuICAgIHtwcm92aWRlOiBNQVRfRElBTE9HX0RBVEEsIHVzZVZhbHVlOiB7fX0sXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VydmljZUhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG4gIEBJbnB1dCgpIGZvcm06IEZvcm07XHJcbiAgQElucHV0KCkgc2hvd0hpc3RvcnkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzaG93QXBwcm92YWxIaXN0b3J5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgYXBwcm92YWxIaXN0b3J5OiBhbnk7XHJcbiAgQElucHV0KCkgY3JlYXRpb25EYXRlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZm9ybVRpdGxlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc2VjdGlvbjogU2VjdGlvbjtcclxuICBASW5wdXQoKSBzZXJ2aWNlQnJpZWY6IGFueVtdID0gW107XHJcbiAgYXBwcm92YWxzOiBhbnlbXSA9IFtdO1xyXG4gIHB1YmxpYyBmZWVkQmFja0ljb246IHN0cmluZyA9IG51bGw7XHJcbiAgZmxhZ1ByaW9yaXR5OiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29yZVNlcnZpY2U6Q29yZVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaTE4bjogQ29yZUkxOG5TZXJ2aWNlLCBwcml2YXRlIGZlZWRCYWNrU2VydmljZTogRmVlZEJhY2tTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2c6IE1hdERpYWxvZywgcHJpdmF0ZSByZWFkb25seSBzaWRlbmF2U2VydmljZTogU2lkZW5hdlNlcnZpY2UsXHJcbiAgKSB7XHJcblxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5nZXRBcHByb3ZhbEhpc3RvcnkoKTtcclxuICAgIHRoaXMuY3JlYXRpb25EYXRlID0gbW9tZW50KHRoaXMuZm9ybT8uaGVhZGVyPy5jcmVhdGlvbkRhdGUpLmxvY2FsZSgnZW4tVVMnKS5mb3JtYXQoXCJERC9NTS9ZWVlZIEhIOm1tOnNzXCIpO1xyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcblxyXG4gIH1cclxuXHJcbiAgb25Db21tZW50c0Zvcm1DbGljaygpIHtcclxuICAgIGNvbnN0IGNvbW1lbnRzOiBhbnkgPSB0aGlzLmZvcm0uY29tbWVudHNEcm9wO1xyXG4gICAgY29uc3QgcmVzdWx0RGF0YSA9IFtdO1xyXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGNvbW1lbnRzLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICBjb25zdCBpdGVtID0gY29tbWVudHNbaW5kZXhdO1xyXG4gICAgICBjb25zdCBvYmogPVxyXG4gICAgICAgIHtcclxuICAgICAgICAgIG5hbWU6IGl0ZW1bJ2VtcGxveWVlTmFtZSddLFxyXG4gICAgICAgICAgdGl0bGU6IGl0ZW0uam9iUG9zaXRpb24sXHJcbiAgICAgICAgICBpbWFnZTogaXRlbVsncHJvZmlsZVBpY3R1cmUnXSxcclxuICAgICAgICAgIGRhdGU6IG1vbWVudChpdGVtWydjb21tZW50RGF0ZSddKS5sb2NhbGUoJ2VuLVVTJykuZm9ybWF0KCdZWVlZLU1NLUREJyksXHJcbiAgICAgICAgICB0aW1lOiBtb21lbnQoaXRlbVsnY29tbWVudERhdGUnXSkubG9jYWxlKCdlbi1VUycpLmZvcm1hdCgnaDptbSBhJyksXHJcbiAgICAgICAgICBjb21tZW50OiBpdGVtWydjb21tZW50Qm9keSddLFxyXG4gICAgICAgICAgYXR0YWNobWVudHM6IGl0ZW1bJ2F0dGFjaG1lbnQnXVxyXG4gICAgICAgIH07XHJcbiAgICAgIHJlc3VsdERhdGEucHVzaChvYmopO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb3JlU2VydmljZS5hY3Rpdml0aWVzID0gcmVzdWx0RGF0YTtcclxuICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UucHVibGlzaCgnb3BlbicsIEFjdGl2aXRpZXNDb21wb25lbnQpO1xyXG4gIH1cclxuXHJcbiAgZmVlZGJhY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpYWxvZy5vcGVuKEZlZWRiYWNrU2VjdGlvbkNvbXBvbmVudCwge1xyXG4gICAgICBwYW5lbENsYXNzOiBbJ21haW4tcG9wdXAnXSxcclxuICAgICAgZGF0YToge1xyXG4gICAgICAgIHByb2ZpbGU6IHRoaXMuZm9ybS5wcm9maWxlSW5mb0Ryb3AsXHJcbiAgICAgICAgaW5ib3hJdGVtOiB0aGlzLmZvcm0uaW5ib3hJdGVtLFxyXG4gICAgICAgIGZvcm06IHRoaXMuZm9ybVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNob3dVc2VySW5mbygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5pc0xvYWRpbmcpIHtcclxuICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS5kYXRhID0gdGhpcy5mb3JtPy5wcm9maWxlSW5mb0Ryb3A7XHJcbiAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UucHVibGlzaCgnb3BlbicsIFByb2ZpbGVTZWN0aW9uQ29tcG9uZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldEZsYWdQcmlvcml0eShpZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmZsYWdQcmlvcml0eSA9IGlkO1xyXG4gICAgdGhpcy5mb3JtLmluYm94SXRlbS5mbGFnUHJpb3JpdHkgPSBpZDtcclxuICAgIC8vIHRoaXMuc3RhdGVNYWNoaW5lU2VydmljZS5kaXNwYXRjaChDb25zdGFudHMuU1RBVEVfTUFDSElORV9BQ1RJT05fU0VUX0ZMQUcsIGlkKS50aGVuKCgpID0+IHtcclxuICAgIC8vIH0pO1xyXG4gIH1cclxuXHJcbiAgc3RhdHVzQ2xhc3Moc3RhdHVzOiBzdHJpbmcpIHtcclxuICAgIGlmIChzdGF0dXMpIHtcclxuICAgICAgaWYgKHRoaXMuaXNMb2FkaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuICdsb2FkaW5nJztcclxuICAgICAgfSBlbHNlIGlmIChcclxuICAgICAgICBzdGF0dXMgPT09IENvbnN0YW50cy5GT1JNX1NUQVRVU19SRUpFQ1RFRCB8fCBzdGF0dXMgPT09IENvbnN0YW50cy5GT1JNX1NUQVRVU19DQU5DRUxMRURcclxuICAgICAgICB8fCBzdGF0dXMudG9Mb3dlckNhc2UoKS5pbmNsdWRlcygnZGVueScpXHJcbiAgICAgICAgfHwgc3RhdHVzLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ3JlamVjdCcpXHJcbiAgICAgICAgfHwgc3RhdHVzPy50b0xvd2VyQ2FzZSgpID09PSAncmVqZWN0JyB8fCBzdGF0dXM/LnRvTG93ZXJDYXNlKCkgPT09ICd1bnNhdGlzZmllZCcgfHwgc3RhdHVzPy50b0xvd2VyQ2FzZSgpID09PSAnY2FuY2VsJ1xyXG4gICAgICApIHtcclxuICAgICAgICByZXR1cm4gJ2Rhbmdlcic7XHJcbiAgICAgIH0gZWxzZSBpZiAoc3RhdHVzID09PSBDb25zdGFudHMuRk9STV9TVEFUVVNfUEVORElORyB8fCBzdGF0dXM/LnRvTG93ZXJDYXNlKCkgPT09ICdwZW5kaW5nJykge1xyXG4gICAgICAgIHJldHVybiAnd2FybmluZyc7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuICdzdWNjZXNzJztcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICdzdWNjZXNzJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9wZW5GYXEoKSB7XHJcbiAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLnB1Ymxpc2goJ29wZW4nLCBGYXFTaWRlbmF2Q29tcG9uZW50LCAnZW5kJywgJ292ZXInLCB0aGlzLnNlcnZpY2VCcmllZik7XHJcbiAgfVxyXG5cclxuICBnZXRBcHByb3ZhbEhpc3RvcnkoKSB7XHJcbiAgICB0aGlzLmFwcHJvdmFsSGlzdG9yeT8uZm9yRWFjaCgoZWxlbWVudDogeyBhcHByb3ZlcjogeyBwZXJzb25OYW1lOiBhbnk7IHBlcnNvbkVtYWlsOiBzdHJpbmc7IH07IHBvc2l0aW9uVHlwZTogYW55OyB9LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgIGNvbnN0IG9iaiA9IHtcclxuICAgICAgICBpZDogaW5kZXggKyAxLFxyXG4gICAgICAgIG5hbWU6IGVsZW1lbnQuYXBwcm92ZXIucGVyc29uTmFtZSxcclxuICAgICAgICB0aXRsZTogZWxlbWVudC5wb3NpdGlvblR5cGUsXHJcbiAgICAgICAgaW1hZ2U6ICcvZ3JvdXAvaS1nYXRlL3dtLWJwbS9mb3Jtcy8tL3Byb3h5L3BvcnRyYWl0P2VtYWlsPScgKyBlbGVtZW50LmFwcHJvdmVyLnBlcnNvbkVtYWlsLFxyXG4gICAgICAgIHN0YXR1czogdGhpcy5mb3JtLnNlY3Rpb25zW2luZGV4ICsgMV0gPyB0aGlzLnN0YXR1c0NsYXNzKHRoaXMuZm9ybS5zZWN0aW9uc1tpbmRleCArIDFdLmJvZHkuZGV0YWlscy5kZWNpc2lvbi5rZXkpIDogJycsXHJcbiAgICAgICAgc3RhdHVzTGFiZWw6IHRoaXMuZm9ybS5zZWN0aW9uc1tpbmRleCArIDFdID8gdGhpcy5mb3JtLnNlY3Rpb25zW2luZGV4ICsgMV0uYm9keS5kZXRhaWxzLmRlY2lzaW9uLnZhbHVlIDogJydcclxuICAgICAgfTtcclxuICAgICAgdGhpcy5hcHByb3ZhbHMucHVzaChvYmopO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIhKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddID09PSAnTkVXJylcIj5cclxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtZW5kIGdhcC0yIG15LTJcIiAqbmdJZj1cIiEoZm9ybT8uaGVhZGVyPy5zdGF0dXM/Llsna2V5J10gPT09ICdORVcnKVwiPlxyXG5cclxuICAgIDwhLS0gZmxhZy0tPlxyXG4gICAgPGRzLWJ1dHRvblxyXG4gICAgICAqbmdJZj1cImZvcm0/LmluYm94SXRlbSAmJiAhZm9ybS5zZWN0aW9uc1tmb3JtLnNlY3Rpb25zLmxlbmd0aCAtMV0uaGVhZGVyLnJlYWRPbmx5ICYmICFpc0xvYWRpbmdcIlxyXG4gICAgICBzcXVhcmVcclxuICAgICAgaWNvblxyXG4gICAgICBzaXplPVwic21hbGxcIlxyXG4gICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiXHJcbiAgICAgIGNsYXNzPVwiaWNvbi1idG4tc2hhZG93XCI+XHJcbiAgICAgIDxkcy1pY29uXHJcbiAgICAgICAgW25nQ2xhc3NdPVwieydmYy1wdXJwbGUnIDogKGZsYWdQcmlvcml0eSA9PT0gJzAnIHx8ICBmbGFnUHJpb3JpdHkgPT09IG51bGwpLCdmYy15ZWxsb3cnIDogZmxhZ1ByaW9yaXR5ID09PSAnMScsJ2ZjLWdyZWVuJyA6IGZsYWdQcmlvcml0eSA9PT0gJzInLCdmYy1jb3JhbCcgOiBmbGFnUHJpb3JpdHkgPT09ICczJ31cIlxyXG4gICAgICAgIGljb249XCJmbGFnLW9cIiBjbGFzcz1cImZzLTIwIGZzLW1kLTE3IGZjLXB1cnBsZVwiPlxyXG4gICAgICA8L2RzLWljb24+XHJcbiAgICA8L2RzLWJ1dHRvbj5cclxuICAgIDxtYXQtbWVudSAjbWVudT1cIm1hdE1lbnVcIiBwYW5lbENsYXNzPVwiYWN0aW9uLW1lbnVcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJzZXRGbGFnUHJpb3JpdHkoJzAnKVwiPlxyXG4gICAgICAgIDxkcy1pY29uIGljb249XCJmbGFnLW9cIiBjbGFzcz1cImZjLXB1cnBsZSBmcy0yMCBmcy1tZC0xN1wiPjwvZHMtaWNvbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwic2V0RmxhZ1ByaW9yaXR5KCcxJylcIj5cclxuICAgICAgICA8ZHMtaWNvbiBpY29uPVwiZmxhZy1vXCIgY2xhc3M9XCJmYy15ZWxsb3cgZnMtMjAgZnMtbWQtMTdcIj48L2RzLWljb24+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cInNldEZsYWdQcmlvcml0eSgnMicpXCI+XHJcbiAgICAgICAgPGRzLWljb24gaWNvbj1cImZsYWctb1wiIGNsYXNzPVwiZmMtZ3JlZW4gZnMtMjAgZnMtbWQtMTdcIj48L2RzLWljb24+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cInNldEZsYWdQcmlvcml0eSgnMycpXCI+XHJcbiAgICAgICAgPGRzLWljb24gaWNvbj1cImZsYWctb1wiIGNsYXNzPVwiZmMtY29yYWwgZnMtMjAgZnMtbWQtMTdcIj48L2RzLWljb24+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9tYXQtbWVudT5cclxuXHJcbiAgICA8IS0tIHByaW50LS0+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxoZWFkZXIgY2xhc3M9XCJzZXJ2aWNlLWhlYWRlciBiYy13aGl0ZSBwLTMgcC1zbS00IHB5LTQgZ2FwLTMge3tzdGF0dXNDbGFzcyhmb3JtPy5oZWFkZXI/LnN0YXR1cz8uWydrZXknXSl9fVwiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJzZXJ2aWNlLWhlYWRlci1pY29uXCI+XHJcbiAgICAgIDxpbWdcclxuICAgICAgICBhbHQ9XCJcIlxyXG4gICAgICAgIHNyYz1cImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU16QWlJR2hsYVdkb2REMGlNamtpSUhacFpYZENiM2c5SWpBZ01DQXpNQ0F5T1NJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQSEJoZEdnZ1pEMGlUVEkxTGpFZ01FZzBMamxETWk0eUlEQWdNQ0F5TGpJZ01DQTBMamxXTWpndU5rZ3lOUzR4UXpJM0xqZ2dNamd1TmlBek1DQXlOaTQwSURNd0lESXpMamRXTkM0NVF6TXdJREl1TWlBeU55NDRJREFnTWpVdU1TQXdXazB5SURRdU9VTXlJRE11TXlBekxqTWdNaUEwTGprZ01rZ3lOUzR4UXpJMkxqY2dNaUF5T0NBekxqTWdNamdnTkM0NVZqSXpMamRETWpnZ01qVXVNeUF5Tmk0M0lESTJMallnTWpVdU1TQXlOaTQyU0RKV05DNDVXazB4TVM0MUlEWXVNME0zTGpFZ05pNHpJRE11TlNBNUxqa2dNeTQxSURFMExqTkRNeTQxSURFNExqY2dOeTR4SURJeUxqTWdNVEV1TlNBeU1pNHpRekUxTGprZ01qSXVNeUF4T1M0MUlERTRMamNnTVRrdU5TQXhOQzR6UXpFNUxqVWdPUzQ1SURFMUxqa2dOaTR6SURFeExqVWdOaTR6V2sweE5TNHhJREU1UXpFMExqRWdNVGt1T0NBeE1pNDRJREl3TGpJZ01URXVOU0F5TUM0eVF6RXdMaklnTWpBdU1pQTRMamtnTVRrdU9DQTNMamtnTVRsRE9DNDNJREUzTGpjZ01UQWdNVGNnTVRFdU5TQXhOME14TXlBeE55QXhOQzQwSURFM0xqZ2dNVFV1TVNBeE9WcE5NVE11TVNBeE15NDBRekV6TGpFZ01UUXVNeUF4TWk0MElERTFJREV4TGpVZ01UVkRNVEF1TmlBeE5TQTVMamtnTVRRdU15QTVMamtnTVRNdU5FTTVMamtnTVRJdU5TQXhNQzQySURFeExqZ2dNVEV1TlNBeE1TNDRRekV5TGpRZ01URXVPQ0F4TXk0eElERXlMalVnTVRNdU1TQXhNeTQwV2sweE5TNHhJREV6TGpSRE1UVXVNU0F4TVM0MElERXpMalVnT1M0NElERXhMalVnT1M0NFF6a3VOU0E1TGpnZ055NDVJREV4TGpRZ055NDVJREV6TGpSRE55NDVJREUwTGpJZ09DNHlJREUxSURndU55QXhOUzQzUXpjdU9DQXhOaTR4SURjdU1TQXhOaTQ0SURZdU5TQXhOeTQyUXpVdU9DQXhOaTQySURVdU5TQXhOUzQxSURVdU5TQXhOQzR6UXpVdU5TQXhNU0E0TGpJZ09DNHpJREV4TGpVZ09DNHpRekUwTGpnZ09DNHpJREUzTGpVZ01URWdNVGN1TlNBeE5DNHpRekUzTGpVZ01UVXVOU0F4Tnk0eUlERTJMallnTVRZdU5TQXhOeTQyUXpFMUxqa2dNVFl1T0NBeE5TNHlJREUyTGpJZ01UUXVNeUF4TlM0M1F6RTBMamdnTVRVdU1TQXhOUzR4SURFMExqSWdNVFV1TVNBeE15NDBXazB5TVNBNUxqRkRNakVnT0M0MklESXhMalFnT0M0eElESXlJRGd1TVVneU5TNDFRekkySURndU1TQXlOaTQxSURndU5TQXlOaTQxSURrdU1VTXlOaTQxSURrdU5pQXlOaTR4SURFd0xqRWdNalV1TlNBeE1DNHhTREl5UXpJeExqUWdNVEF1TVNBeU1TQTVMallnTWpFZ09TNHhXazB5TVNBeE1pNDFRekl4SURFeUlESXhMalFnTVRFdU5TQXlNaUF4TVM0MVNESTFMalZETWpZZ01URXVOU0F5Tmk0MUlERXhMamtnTWpZdU5TQXhNaTQxUXpJMkxqVWdNVE1nTWpZdU1TQXhNeTQxSURJMUxqVWdNVE11TlVneU1rTXlNUzQwSURFekxqVWdNakVnTVRNdU1TQXlNU0F4TWk0MVdrMHlNU0F4TmtNeU1TQXhOUzQxSURJeExqUWdNVFVnTWpJZ01UVklNalV1TlVNeU5pQXhOU0F5Tmk0MUlERTFMalFnTWpZdU5TQXhOa015Tmk0MUlERTJMalVnTWpZdU1TQXhOeUF5TlM0MUlERTNTREl5UXpJeExqUWdNVGNnTWpFZ01UWXVOaUF5TVNBeE5scE5NalV1TlNBeU1DNDFTREl5UXpJeExqVWdNakF1TlNBeU1TQXlNQzR4SURJeElERTVMalZETWpFZ01UZ3VPU0F5TVM0MElERTRMalVnTWpJZ01UZ3VOVWd5TlM0MVF6STJJREU0TGpVZ01qWXVOU0F4T0M0NUlESTJMalVnTVRrdU5VTXlOaTQxSURJd0xqRWdNall1TVNBeU1DNDFJREkxTGpVZ01qQXVOVm9pSUdacGJHdzlJaU5HUmpNM05VVWlMejRLUEM5emRtYytDZz09XCIvPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXgtZ3Jvdy0xIGQtZmxleCBmbGV4LWNvbHVtbiBmbGV4LXNtLXJvdyBhbGlnbi1pdGVtcy1zbS1jZW50ZXIgZ2FwLTJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgPCEtLSB0aXRsZS0tPlxyXG4gICAgICAgIDxoMSBjbGFzcz1cImZzLTIwIGZzLW1kLTE2IGZ3LWJvbGQgZmMtYmxhY2sgaGVhZGVyLXRpdGxlIG0tMFwiPnt7IGZvcm1UaXRsZSB9fVxyXG4gICAgICAgICAgPGRzLWljb25cclxuICAgICAgICAgICAgaWNvbj1cImluZm9cIiBjbGFzcz1cImZzLTIyIGZjLWRhcmstZ3JheSBjdXJzb3ItcG9pbnRlclwiICpuZ0lmPVwic2VydmljZUJyaWVmLmxlbmd0aFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvcGVuRmFxKClcIj48L2RzLWljb24+XHJcbiAgICAgICAgPC9oMT5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICBjbGFzcz1cImhlYWRlci11c2VyIGQtZmxleCBhbGlnbi1pdGVtcy1zbS1jZW50ZXIgZ2FwLTIgbXQtc20tMVwiXHJcbiAgICAgICAgICAqbmdJZj1cImZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddICE9PSAnTkVXJyB8fCBpc0xvYWRpbmdcIj5cclxuICAgICAgICAgIDxkcy1hdmF0YXJcclxuICAgICAgICAgICAgKm5nSWY9XCIhaXNMb2FkaW5nXCIgaW1hZ2U9XCJ7e2Zvcm0/LmhlYWRlcj8ucmVxdWVzdGVyUGhvdG99fVwiIHNpemU9XCJ4eC1zbWFsbFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiZC1pbmxpbmUtZmxleCBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJzaG93VXNlckluZm8oKVwiPjwvZHMtYXZhdGFyPlxyXG4gICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgY2xhc3M9XCJmcy0xMiB0ZXh0LXRydW5jYXRlIGQtc20tYmxvY2sgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic2hvd1VzZXJJbmZvKClcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7J2xvYWRpbmctYmcgbG9hZGluZy13aWR0aCc6IGlzTG9hZGluZ31cIj57eyBjb3JlU2VydmljZS5nZXRTaG9ydE5hbWUoZm9ybT8uaGVhZGVyPy5yZXF1ZXN0ZXJOYW1lKSB9fTwvc3Bhbj5cclxuICAgICAgICAgIDxtYXQtZGl2aWRlciBjbGFzcz1cImRpdmlkZXIgY2lyY2xlIG14LTIgZC1ub25lIGQtc20tYmxvY2tcIj48L21hdC1kaXZpZGVyPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJmcy0xMlwiIFtuZ0NsYXNzXT1cInsnbG9hZGluZy1iZyBsb2FkaW5nLXdpZHRoJzogaXNMb2FkaW5nfVwiPnt7IGZvcm0/LmhlYWRlcj8uZm9ybUlkIH19PC9zcGFuPlxyXG4gICAgICAgICAgPG1hdC1kaXZpZGVyICpuZ0lmPVwiY3JlYXRpb25EYXRlXCIgY2xhc3M9XCJkaXZpZGVyIGNpcmNsZSBteC0yIGQtbm9uZSBkLXNtLWJsb2NrXCI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY3JlYXRpb25EYXRlXCIgY2xhc3M9XCJmcy0xNFwiIFtuZ0NsYXNzXT1cInsnbG9hZGluZy1iZyBsb2FkaW5nLXdpZHRoJzogaXNMb2FkaW5nfVwiPnt7IGNyZWF0aW9uRGF0ZSB9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDwhLS0gaGVhZGVyLWFjdGlvbnMtLT5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwiaGVhZGVyLWFjdGlvbnMgZC1mbGV4IGZsZXgtcm93IGZsZXgtc20tY29sdW1uIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGp1c3RpZnktY29udGVudC1zbS1jZW50ZXIgZ2FwLTIgbXQtMiBtdC1zbS0wXCJcclxuICAgICAgICAqbmdJZj1cIiEoZm9ybT8uaGVhZGVyPy5zdGF0dXM/Llsna2V5J10gPT09ICdORVcnKVwiPlxyXG4gICAgICAgIDxkcy1zdGF0dXNcclxuICAgICAgICAgICpuZ0lmPVwiZm9ybT8uaGVhZGVyPy5zdGF0dXM/Llsna2V5J10gIT09ICdORVcnICYmICFpc0xvYWRpbmdcIlxyXG4gICAgICAgICAgc3RhdHVzPVwie3tzdGF0dXNDbGFzcyhmb3JtPy5oZWFkZXI/LnN0YXR1cz8uWydrZXknXSl9fVwiIGNsYXNzPVwiaGVhZGVyLXN0YXR1c1wiPnt7IGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ3ZhbHVlJ10gfX1cclxuICAgICAgICA8L2RzLXN0YXR1cz5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMlwiPlxyXG4gICAgICAgICAgPCEtLSBmZWVkYmFjay0tPlxyXG48IS0tICAgICAgICAgICAgKm5nSWY9XCJmb3JtPy5pbmJveEl0ZW0gJiYgKGZvcm0/LmluYm94SXRlbT8uY2FuUmVxdWVzdEZlZWRiYWNrID09PSd0cnVlJ3x8IGZvcm0/LmluYm94SXRlbT8uaGFzRmVlZGJhY2s9PT0ndHJ1ZScpICYmICFpc0xvYWRpbmdcIi0tPlxyXG4gICAgICAgIDwhLS0gIDxkcy1idXR0b25cclxuICAgICAgICAgICAgc3F1YXJlIGljb24gc2l6ZT1cInNtYWxsXCIgKGNsaWNrKT1cImZlZWRiYWNrKClcIj5cclxuICAgICAgICAgICAgPGRzLWljb25cclxuICAgICAgICAgICAgICBpY29uPVwiY2hhdC1vXCIgY2xhc3M9XCJmcy0yMCBmcy1tZC0xNyBmYy1jb3JhbFwiXHJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydmYy1ncmVlbic6ZmVlZEJhY2tJY29uID09PSAnZmVlZGJhY2tSZXNwb25kZWQnICwgJ2ZjLXJlZCc6IGZlZWRCYWNrSWNvbiA9PT0gJ3Jlc3BvbmRUb0ZlZWRiYWNrJyAsICdmYy15ZWxsb3cnOiBmZWVkQmFja0ljb24gPT09ICd3YWl0aW5nRmVlZGJhY2snfVwiPlxyXG4gICAgICAgICAgICA8L2RzLWljb24+XHJcbiAgICAgICAgICA8L2RzLWJ1dHRvbj4tLT5cclxuICAgICAgICAgIDxkcy1idXR0b25cclxuICAgICAgICAgICAgKm5nSWY9XCJmb3JtPy5jb21tZW50c0Ryb3A/Lmxlbmd0aCA+IDAgJiYgIWlzTG9hZGluZ1wiIHNxdWFyZSBpY29uIHNpemU9XCJzbWFsbFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNvbW1lbnRzRm9ybUNsaWNrKClcIiBjbGFzcz1cImhhcy1jb21tZW50c1wiPlxyXG4gICAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiY2xvY2tcIiBjbGFzcz1cImZjLWNvcmFsIGZzLTIwIGZzLW1kLTE3XCI+PC9kcy1pY29uPlxyXG4gICAgICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0FwcHJvdmFsSGlzdG9yeVwiPlxyXG4gICAgICAgICAgICA8ZHMtYnV0dG9uXHJcbiAgICAgICAgICAgICAgY29sb3I9XCJ3aGl0ZVwiIHNoYXBlPVwidGV4dFwiIHNxdWFyZSBzaXplPVwic21hbGxcIiBbc2F0UG9wb3ZlckFuY2hvcl09XCJ3b3JrZmxvd1wiXHJcbiAgICAgICAgICAgICAgI3dvcmtmbG93QW5jaG9yPVwic2F0UG9wb3ZlckFuY2hvclwiIChjbGljayk9XCJ3b3JrZmxvd0FuY2hvci5wb3BvdmVyLm9wZW4oKVwiPlxyXG4gICAgICAgICAgICAgIDxzbG90IG5hbWU9XCJwcmVmaXhcIj5cclxuICAgICAgICAgICAgICAgIDxkcy1pY29uIGljb249XCJ3b3JrZmxvd1wiIGNsYXNzPVwiZnMtMjRcIj48L2RzLWljb24+XHJcbiAgICAgICAgICAgICAgPC9zbG90PlxyXG4gICAgICAgICAgICA8L2RzLWJ1dHRvbj5cclxuXHJcbiAgICAgICAgICAgIDxzYXQtcG9wb3ZlclxyXG4gICAgICAgICAgICAgICN3b3JrZmxvdyBbYW5jaG9yXT1cIndvcmtmbG93QW5jaG9yXCIgW2hhc0JhY2tkcm9wXT1cInRydWVcIiB2ZXJ0aWNhbEFsaWduPVwiYmVsb3dcIlxyXG4gICAgICAgICAgICAgIGhvcml6b250YWxBbGlnbj1cImVuZFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LXBvcG92ZXIgcC0zXCIgc3R5bGU9XCJtaW4td2lkdGg6IDMzMHB4O1wiPlxyXG4gICAgICAgICAgICAgICAgPGRzLWFwcHJvdmFscyAqbmdJZj1cImFwcHJvdmFsSGlzdG9yeVwiIGNsYXNzPVwicG9wb3Zlci1hcHByb3ZhbHNcIiBhcHByb3ZhbHNEYXRhPVwie3thcHByb3ZhbHN9fVwiPlxyXG4gICAgICAgICAgICAgICAgPC9kcy1hcHByb3ZhbHM+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvc2F0LXBvcG92ZXI+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgPC9oZWFkZXI+XHJcbjwvbmctY29udGFpbmVyPlxyXG48aGVhZGVyXHJcbiAgY2xhc3M9XCJtYi00IG10LTQgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1lbmQgZ2FwLTJcIlxyXG4gICpuZ0lmPVwiKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddID09PSAnTkVXJylcIj5cclxuICA8c2VjdGlvbj5cclxuICAgIDxoNiBjbGFzcz1cImZzLTE0IGZzLW1kLTEyIGZ3LW5vcm1hbCBmYy1kYXJrLWdyYXkgbWItMFwiPlxyXG4gICAgICB7eyBpMThuLnRyYW5zbGF0ZSgnSGVsbG8nKSB9fVxyXG4gICAgICB7eyBjb3JlU2VydmljZS5nZXRTaG9ydE5hbWUoZm9ybT8uaGVhZGVyPy5yZXF1ZXN0ZXJOYW1lKSB9fSwge3sgaTE4bi50cmFuc2xhdGUoJ3dlbGNvbWVCYWNrJykgfX0hXHJcbiAgICA8L2g2PlxyXG4gICAgPGgxIGNsYXNzPVwiZnMtMjYgZnMtbWQtMjAgZnctYm9sZCBmYy1ibGFjayBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yIG1iLTFcIj5cclxuICAgICAge3sgZm9ybVRpdGxlIH19XHJcbiAgICAgIDxkcy1pY29uIGljb249XCJpbmZvXCIgY2xhc3M9XCJmcy0yMiBmYy1kYXJrLWdyYXkgY3Vyc29yLXBvaW50ZXJcIiAqbmdJZj1cInNlcnZpY2VCcmllZi5sZW5ndGhcIiAoY2xpY2spPVwib3BlbkZhcSgpXCI+XHJcbiAgICAgIDwvZHMtaWNvbj5cclxuICAgIDwvaDE+XHJcbiAgPC9zZWN0aW9uPlxyXG5cclxuPC9oZWFkZXI+XHJcbiJdfQ==
|
package/esm2022/lib/components/shared-components/action-buttons/action-buttons.component.mjs
CHANGED
|
@@ -1,27 +1,92 @@
|
|
|
1
|
-
import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, NO_ERRORS_SCHEMA } from '@angular/core';
|
|
1
|
+
import { Component, CUSTOM_ELEMENTS_SCHEMA, EventEmitter, Input, NO_ERRORS_SCHEMA, Output } from '@angular/core';
|
|
2
2
|
import * as constants from "../../../constants";
|
|
3
3
|
import { NgClass, NgForOf, NgIf } from "@angular/common";
|
|
4
4
|
import { InputComponent } from "../form-field";
|
|
5
|
+
import { SubmitDialogComponent } from "../dialogs/submit-dialog/submit-dialog.component";
|
|
6
|
+
import { NoopScrollStrategy } from "@angular/cdk/overlay";
|
|
7
|
+
import { ApprovalsWorkflowComponent } from "../../app-component-sections/approvals-workflow/approvals-workflow.component";
|
|
5
8
|
import * as i0 from "@angular/core";
|
|
6
9
|
import * as i1 from "../../../services";
|
|
7
|
-
import * as i2 from "
|
|
10
|
+
import * as i2 from "@angular/material/dialog";
|
|
11
|
+
import * as i3 from "ngx-toastr";
|
|
8
12
|
export class ActionButtonsComponent {
|
|
9
13
|
i18n;
|
|
10
14
|
actionStateService;
|
|
15
|
+
coreService;
|
|
16
|
+
dialog;
|
|
17
|
+
toasterService;
|
|
18
|
+
cdRef;
|
|
19
|
+
sidenavService;
|
|
11
20
|
lovOptions;
|
|
12
21
|
lovType;
|
|
22
|
+
fieldsForm;
|
|
23
|
+
form;
|
|
24
|
+
section;
|
|
25
|
+
sections;
|
|
26
|
+
showApprovalCycle = true;
|
|
27
|
+
customCall = false;
|
|
28
|
+
resetFormEmit = new EventEmitter();
|
|
29
|
+
customCallEmit = new EventEmitter();
|
|
13
30
|
actionStates;
|
|
14
|
-
|
|
31
|
+
isSubmitting = {};
|
|
32
|
+
submittingForm;
|
|
33
|
+
constructor(i18n, actionStateService, coreService, dialog, toasterService, cdRef, sidenavService) {
|
|
15
34
|
this.i18n = i18n;
|
|
16
35
|
this.actionStateService = actionStateService;
|
|
36
|
+
this.coreService = coreService;
|
|
37
|
+
this.dialog = dialog;
|
|
38
|
+
this.toasterService = toasterService;
|
|
39
|
+
this.cdRef = cdRef;
|
|
40
|
+
this.sidenavService = sidenavService;
|
|
17
41
|
this.actionStateService.actionStates$.subscribe(states => this.actionStates = states);
|
|
18
42
|
}
|
|
43
|
+
ngAfterViewInit() {
|
|
44
|
+
this.lovOptions?.forEach((item) => {
|
|
45
|
+
this.isSubmitting[item.value] = false;
|
|
46
|
+
});
|
|
47
|
+
this.cdRef.detectChanges();
|
|
48
|
+
}
|
|
19
49
|
resetForm() {
|
|
50
|
+
this.resetFormEmit.emit();
|
|
20
51
|
}
|
|
21
52
|
onSubmit(action) {
|
|
53
|
+
if (this.customCall) {
|
|
54
|
+
this.customCallEmit.emit(action);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
this.submitForm(action, this.section);
|
|
58
|
+
}
|
|
22
59
|
}
|
|
23
|
-
|
|
24
|
-
|
|
60
|
+
submitForm(action, section) {
|
|
61
|
+
const lastSection = this.sections[this.sections.length - 1];
|
|
62
|
+
if (lastSection.body.details.decision) {
|
|
63
|
+
lastSection.body.details.decision = { key: action };
|
|
64
|
+
}
|
|
65
|
+
this.isSubmitting[action] = true;
|
|
66
|
+
this.submittingForm = true;
|
|
67
|
+
this.coreService.submitForm(section, action).subscribe((response) => {
|
|
68
|
+
if (response) {
|
|
69
|
+
this.isSubmitting[action] = false;
|
|
70
|
+
this.success(response);
|
|
71
|
+
}
|
|
72
|
+
}, (err) => {
|
|
73
|
+
err?.error?.meta?.messages?.forEach((msg) => {
|
|
74
|
+
this.submittingForm = false;
|
|
75
|
+
this.isSubmitting[action] = false;
|
|
76
|
+
this.toasterService.error(msg.message);
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
success(response) {
|
|
81
|
+
console.log('success', response);
|
|
82
|
+
const dialogRef = this.dialog.open(SubmitDialogComponent, {
|
|
83
|
+
data: response,
|
|
84
|
+
panelClass: ['main-popup', 'confirm-dialog'],
|
|
85
|
+
scrollStrategy: new NoopScrollStrategy(),
|
|
86
|
+
});
|
|
87
|
+
dialogRef.afterClosed().subscribe(() => {
|
|
88
|
+
window.location.reload();
|
|
89
|
+
});
|
|
25
90
|
}
|
|
26
91
|
buttonShape(item) {
|
|
27
92
|
if (item?.value === constants.FORM_STATUS_REJECT || item?.value === constants.FORM_STATUS_CANCEL || item?.value === constants.FORM_STATUS_SEND_BACK) {
|
|
@@ -35,8 +100,8 @@ export class ActionButtonsComponent {
|
|
|
35
100
|
}
|
|
36
101
|
return '';
|
|
37
102
|
}
|
|
38
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ActionButtonsComponent, deps: [{ token: i1.CoreI18nService }, { token:
|
|
39
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: ActionButtonsComponent, isStandalone: true, selector: "lib-action-buttons", inputs: { lovOptions: "lovOptions", lovType: "lovType" }, ngImport: i0, template: "<div class=\"mt-4\">\r\n @if (lovType === 'button') {\r\n <div class=\"d-flex align-items-center gap-3\">\r\n <ds-button shape=\"text\" color=\"red\" (click)=\"resetForm()\">\r\n <span class=\"fs-16 fw-medium\">{{ i18n.translate('reset') }}</span>\r\n </ds-button>\r\n <div class=\"d-flex flex-wrap align-items-center flex-grow-1 flex-row-reverse gap-3\">\r\n @for (item of lovOptions; track $index) {\r\n <ds-button\r\n [ngClass]=\"{'disabled': !actionStates[item.value]}\"\r\n shape=\"{{ buttonShape(item) }}\"\r\n color=\"{{ buttonColor(item) }}\"\r\n (click)=\"onSubmit(item?.value)\">\r\n {{ item?.['description'] }}\r\n </ds-button>\r\n }\r\n </div>\r\n </div>\r\n } @else {\r\n <div class=\"d-flex flex-wrap align-items-center flex-grow-1 justify-content-end gap-3\">\r\n <ds-button shape=\"text\" color=\"red\" (click)=\"resetForm()\">\r\n <span class=\"fs-16 fw-medium\">{{ i18n.translate('reset') }}</span>\r\n </ds-button>\r\n <ds-button\r\n [ngClass]=\"{'disabled': !
|
|
103
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ActionButtonsComponent, deps: [{ token: i1.CoreI18nService }, { token: i1.ActionStateService }, { token: i1.CoreService }, { token: i2.MatDialog }, { token: i3.ToastrService }, { token: i0.ChangeDetectorRef }, { token: i1.SidenavService }], target: i0.ɵɵFactoryTarget.Component });
|
|
104
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: ActionButtonsComponent, isStandalone: true, selector: "lib-action-buttons", inputs: { lovOptions: "lovOptions", lovType: "lovType", fieldsForm: "fieldsForm", form: "form", section: "section", sections: "sections", showApprovalCycle: "showApprovalCycle", customCall: "customCall" }, outputs: { resetFormEmit: "resetFormEmit", customCallEmit: "customCallEmit" }, ngImport: i0, template: "<div class=\"mt-4\">\r\n @if (lovType === 'button') {\r\n <div class=\"d-flex align-items-center gap-3\">\r\n <ds-button shape=\"text\" color=\"red\" (click)=\"resetForm()\">\r\n <span class=\"fs-16 fw-medium\">{{ i18n.translate('reset') }}</span>\r\n </ds-button>\r\n @if (form?.sections?.length == 1 && showApprovalCycle) {\r\n <lib-approvals-workflow [section]=\"section\" [form]=\"form\"></lib-approvals-workflow>\r\n }\r\n <div class=\"d-flex flex-wrap align-items-center flex-grow-1 flex-row-reverse gap-3\">\r\n @for (item of lovOptions; track $index) {\r\n <ds-button\r\n loading=\"{{isSubmitting[item.value]}}\"\r\n [ngClass]=\"{'disabled': !actionStates[item.value] || submittingForm}\"\r\n shape=\"{{ buttonShape(item) }}\"\r\n color=\"{{ buttonColor(item) }}\"\r\n (click)=\"onSubmit(item?.value)\">\r\n {{ item?.['description'] }}\r\n </ds-button>\r\n }\r\n </div>\r\n </div>\r\n } @else {\r\n <div class=\"d-flex flex-wrap align-items-center flex-grow-1 justify-content-end gap-3\">\r\n <ds-button shape=\"text\" color=\"red\" (click)=\"resetForm()\">\r\n <span class=\"fs-16 fw-medium\">{{ i18n.translate('reset') }}</span>\r\n </ds-button>\r\n @if (form?.sections?.length == 1 && showApprovalCycle) {\r\n <lib-approvals-workflow [section]=\"section\" [form]=\"form\"></lib-approvals-workflow>\r\n }\r\n <ds-button\r\n [ngClass]=\"{'disabled': !actionStates['SUBMIT'] || submittingForm}\"\r\n loading=\"{{isSubmitting['SUBMIT']}}\"\r\n (click)=\"onSubmit('SUBMIT')\">\r\n {{ i18n.translate('submit') }}\r\n </ds-button>\r\n </div>\r\n }\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ApprovalsWorkflowComponent, selector: "lib-approvals-workflow", inputs: ["section", "form"] }] });
|
|
40
105
|
}
|
|
41
106
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ActionButtonsComponent, decorators: [{
|
|
42
107
|
type: Component,
|
|
@@ -44,11 +109,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
44
109
|
NgClass,
|
|
45
110
|
InputComponent,
|
|
46
111
|
NgIf,
|
|
47
|
-
NgForOf
|
|
48
|
-
|
|
49
|
-
|
|
112
|
+
NgForOf,
|
|
113
|
+
ApprovalsWorkflowComponent
|
|
114
|
+
], template: "<div class=\"mt-4\">\r\n @if (lovType === 'button') {\r\n <div class=\"d-flex align-items-center gap-3\">\r\n <ds-button shape=\"text\" color=\"red\" (click)=\"resetForm()\">\r\n <span class=\"fs-16 fw-medium\">{{ i18n.translate('reset') }}</span>\r\n </ds-button>\r\n @if (form?.sections?.length == 1 && showApprovalCycle) {\r\n <lib-approvals-workflow [section]=\"section\" [form]=\"form\"></lib-approvals-workflow>\r\n }\r\n <div class=\"d-flex flex-wrap align-items-center flex-grow-1 flex-row-reverse gap-3\">\r\n @for (item of lovOptions; track $index) {\r\n <ds-button\r\n loading=\"{{isSubmitting[item.value]}}\"\r\n [ngClass]=\"{'disabled': !actionStates[item.value] || submittingForm}\"\r\n shape=\"{{ buttonShape(item) }}\"\r\n color=\"{{ buttonColor(item) }}\"\r\n (click)=\"onSubmit(item?.value)\">\r\n {{ item?.['description'] }}\r\n </ds-button>\r\n }\r\n </div>\r\n </div>\r\n } @else {\r\n <div class=\"d-flex flex-wrap align-items-center flex-grow-1 justify-content-end gap-3\">\r\n <ds-button shape=\"text\" color=\"red\" (click)=\"resetForm()\">\r\n <span class=\"fs-16 fw-medium\">{{ i18n.translate('reset') }}</span>\r\n </ds-button>\r\n @if (form?.sections?.length == 1 && showApprovalCycle) {\r\n <lib-approvals-workflow [section]=\"section\" [form]=\"form\"></lib-approvals-workflow>\r\n }\r\n <ds-button\r\n [ngClass]=\"{'disabled': !actionStates['SUBMIT'] || submittingForm}\"\r\n loading=\"{{isSubmitting['SUBMIT']}}\"\r\n (click)=\"onSubmit('SUBMIT')\">\r\n {{ i18n.translate('submit') }}\r\n </ds-button>\r\n </div>\r\n }\r\n</div>\r\n" }]
|
|
115
|
+
}], ctorParameters: () => [{ type: i1.CoreI18nService }, { type: i1.ActionStateService }, { type: i1.CoreService }, { type: i2.MatDialog }, { type: i3.ToastrService }, { type: i0.ChangeDetectorRef }, { type: i1.SidenavService }], propDecorators: { lovOptions: [{
|
|
50
116
|
type: Input
|
|
51
117
|
}], lovType: [{
|
|
52
118
|
type: Input
|
|
119
|
+
}], fieldsForm: [{
|
|
120
|
+
type: Input
|
|
121
|
+
}], form: [{
|
|
122
|
+
type: Input
|
|
123
|
+
}], section: [{
|
|
124
|
+
type: Input
|
|
125
|
+
}], sections: [{
|
|
126
|
+
type: Input
|
|
127
|
+
}], showApprovalCycle: [{
|
|
128
|
+
type: Input
|
|
129
|
+
}], customCall: [{
|
|
130
|
+
type: Input
|
|
131
|
+
}], resetFormEmit: [{
|
|
132
|
+
type: Output
|
|
133
|
+
}], customCallEmit: [{
|
|
134
|
+
type: Output
|
|
53
135
|
}] } });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJ1dHRvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC1jb21wb25lbnRzL2FjdGlvbi1idXR0b25zL2FjdGlvbi1idXR0b25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JwbS1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQtY29tcG9uZW50cy9hY3Rpb24tYnV0dG9ucy9hY3Rpb24tYnV0dG9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLHNCQUFzQixFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEtBQUssU0FBUyxNQUFNLG9CQUFvQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7QUFpQjdDLE1BQU0sT0FBTyxzQkFBc0I7SUFLZDtJQUNDO0lBTFgsVUFBVSxDQUFRO0lBQ2xCLE9BQU8sQ0FBUztJQUN6QixZQUFZLENBQWdDO0lBRTVDLFlBQW1CLElBQXFCLEVBQ3BCLGtCQUFzQztRQUR2QyxTQUFJLEdBQUosSUFBSSxDQUFpQjtRQUNwQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBRXhELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsU0FBUztJQUVULENBQUM7SUFFRCxRQUFRLENBQUMsTUFBYztJQUV2QixDQUFDO0lBRUQsU0FBUyxDQUFDLE1BQWM7UUFDdEIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQsV0FBVyxDQUFDLElBQUk7UUFDZCxJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssU0FBUyxDQUFDLGtCQUFrQixJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssU0FBUyxDQUFDLGtCQUFrQixJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssU0FBUyxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDcEosT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFJO1FBQ2QsSUFBSSxJQUFJLEVBQUUsS0FBSyxLQUFLLFNBQVMsQ0FBQyxrQkFBa0IsSUFBSSxJQUFJLEVBQUUsS0FBSyxLQUFLLFNBQVMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQ3BHLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzt1R0FuQ1Usc0JBQXNCOzJGQUF0QixzQkFBc0Isd0lDcEJuQyxteENBK0JBLDBERGpCSSxPQUFPOzsyRkFNRSxzQkFBc0I7a0JBYmxDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBR2xCLElBQUksV0FDUCxDQUFDLHNCQUFzQixFQUFFLGdCQUFnQixDQUFDLFdBQzFDO3dCQUNQLE9BQU87d0JBQ1AsY0FBYzt3QkFDZCxJQUFJO3dCQUNKLE9BQU87cUJBQ1I7cUhBR1EsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgSW5wdXQsIE5PX0VSUk9SU19TQ0hFTUF9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSBcIi4uLy4uLy4uL2NvbnN0YW50c1wiO1xyXG5pbXBvcnQge05nQ2xhc3MsIE5nRm9yT2YsIE5nSWZ9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtJbnB1dENvbXBvbmVudH0gZnJvbSBcIi4uL2Zvcm0tZmllbGRcIjtcclxuaW1wb3J0IHtDb3JlSTE4blNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlc1wiO1xyXG5pbXBvcnQge0FjdGlvblN0YXRlU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2VzL2FjdGlvbi5zZXJ2aWNlLnRzXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1hY3Rpb24tYnV0dG9ucycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FjdGlvbi1idXR0b25zLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYWN0aW9uLWJ1dHRvbnMuY29tcG9uZW50LnNjc3MnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5PX0VSUk9SU19TQ0hFTUFdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nQ2xhc3MsXHJcbiAgICBJbnB1dENvbXBvbmVudCxcclxuICAgIE5nSWYsXHJcbiAgICBOZ0Zvck9mXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aW9uQnV0dG9uc0NvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgbG92T3B0aW9uczogYW55W107XHJcbiAgQElucHV0KCkgbG92VHlwZTogc3RyaW5nO1xyXG4gIGFjdGlvblN0YXRlczogeyBbYWN0aW9uOiBzdHJpbmddOiBib29sZWFuIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBpMThuOiBDb3JlSTE4blNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBhY3Rpb25TdGF0ZVNlcnZpY2U6IEFjdGlvblN0YXRlU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5hY3Rpb25TdGF0ZVNlcnZpY2UuYWN0aW9uU3RhdGVzJC5zdWJzY3JpYmUoc3RhdGVzID0+IHRoaXMuYWN0aW9uU3RhdGVzID0gc3RhdGVzKTtcclxuICB9XHJcblxyXG4gIHJlc2V0Rm9ybSgpIHtcclxuXHJcbiAgfVxyXG5cclxuICBvblN1Ym1pdChhY3Rpb246IHN0cmluZykge1xyXG5cclxuICB9XHJcblxyXG4gIHZhbGlkRm9ybShhY3Rpb246IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRydWVcclxuICB9XHJcblxyXG4gIGJ1dHRvblNoYXBlKGl0ZW0pIHtcclxuICAgIGlmIChpdGVtPy52YWx1ZSA9PT0gY29uc3RhbnRzLkZPUk1fU1RBVFVTX1JFSkVDVCB8fCBpdGVtPy52YWx1ZSA9PT0gY29uc3RhbnRzLkZPUk1fU1RBVFVTX0NBTkNFTCB8fCBpdGVtPy52YWx1ZSA9PT0gY29uc3RhbnRzLkZPUk1fU1RBVFVTX1NFTkRfQkFDSykge1xyXG4gICAgICByZXR1cm4gJ291dGxpbmUnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuXHJcbiAgYnV0dG9uQ29sb3IoaXRlbSkge1xyXG4gICAgaWYgKGl0ZW0/LnZhbHVlID09PSBjb25zdGFudHMuRk9STV9TVEFUVVNfUkVKRUNUIHx8IGl0ZW0/LnZhbHVlID09PSBjb25zdGFudHMuRk9STV9TVEFUVVNfU0VORF9CQUNLKSB7XHJcbiAgICAgIHJldHVybiAncmVkJztcclxuICAgIH1cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm10LTRcIj5cclxuICBAaWYgKGxvdlR5cGUgPT09ICdidXR0b24nKSB7XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtM1wiPlxyXG4gICAgICA8ZHMtYnV0dG9uIHNoYXBlPVwidGV4dFwiIGNvbG9yPVwicmVkXCIgKGNsaWNrKT1cInJlc2V0Rm9ybSgpXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmcy0xNiBmdy1tZWRpdW1cIj57eyBpMThuLnRyYW5zbGF0ZSgncmVzZXQnKSB9fTwvc3Bhbj5cclxuICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC13cmFwIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWdyb3ctMSBmbGV4LXJvdy1yZXZlcnNlIGdhcC0zXCI+XHJcbiAgICAgICAgQGZvciAoaXRlbSBvZiBsb3ZPcHRpb25zOyB0cmFjayAkaW5kZXgpIHtcclxuICAgICAgICAgIDxkcy1idXR0b25cclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlZCc6ICFhY3Rpb25TdGF0ZXNbaXRlbS52YWx1ZV19XCJcclxuICAgICAgICAgICAgc2hhcGU9XCJ7eyBidXR0b25TaGFwZShpdGVtKSB9fVwiXHJcbiAgICAgICAgICAgIGNvbG9yPVwie3sgYnV0dG9uQ29sb3IoaXRlbSkgfX1cIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25TdWJtaXQoaXRlbT8udmFsdWUpXCI+XHJcbiAgICAgICAgICAgIHt7IGl0ZW0/LlsnZGVzY3JpcHRpb24nXSB9fVxyXG4gICAgICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIH0gQGVsc2Uge1xyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtZ3Jvdy0xIGp1c3RpZnktY29udGVudC1lbmQgZ2FwLTNcIj5cclxuICAgICAgPGRzLWJ1dHRvbiBzaGFwZT1cInRleHRcIiBjb2xvcj1cInJlZFwiIChjbGljayk9XCJyZXNldEZvcm0oKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZnMtMTYgZnctbWVkaXVtXCI+e3sgaTE4bi50cmFuc2xhdGUoJ3Jlc2V0JykgfX08L3NwYW4+XHJcbiAgICAgIDwvZHMtYnV0dG9uPlxyXG4gICAgICA8ZHMtYnV0dG9uXHJcbiAgICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlZCc6ICF2YWxpZEZvcm0oJ1NVQk1JVCcpfVwiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uU3VibWl0KCdTVUJNSVQnKVwiPlxyXG4gICAgICAgIHt7IGkxOG4udHJhbnNsYXRlKCdzdWJtaXQnKSB9fVxyXG4gICAgICA8L2RzLWJ1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIH1cclxuPC9kaXY+XHJcbiJdfQ==
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJ1dHRvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC1jb21wb25lbnRzL2FjdGlvbi1idXR0b25zL2FjdGlvbi1idXR0b25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JwbS1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQtY29tcG9uZW50cy9hY3Rpb24tYnV0dG9ucy9hY3Rpb24tYnV0dG9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1DLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqSixPQUFPLEtBQUssU0FBUyxNQUFNLG9CQUFvQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHN0MsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDdkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFJeEQsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sOEVBQThFLENBQUM7Ozs7O0FBZ0J4SCxNQUFNLE9BQU8sc0JBQXNCO0lBZWQ7SUFDQztJQUNBO0lBQ0Q7SUFDQztJQUNBO0lBQ0E7SUFwQlgsVUFBVSxDQUFRO0lBQ2xCLE9BQU8sQ0FBUztJQUNoQixVQUFVLENBQVk7SUFDdEIsSUFBSSxDQUFPO0lBQ1gsT0FBTyxDQUFVO0lBQ2pCLFFBQVEsQ0FBWTtJQUNwQixpQkFBaUIsR0FBWSxJQUFJLENB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c0JBQXNCLDJXQzNCbkMsb3dEQXVDQSwwRERuQkksT0FBTyxvRkFJUCwwQkFBMEI7OzJGQUdqQixzQkFBc0I7a0JBZGxDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBR2xCLElBQUksV0FDUCxDQUFDLHNCQUFzQixFQUFFLGdCQUFnQixDQUFDLFdBQzFDO3dCQUNQLE9BQU87d0JBQ1AsY0FBYzt3QkFDZCxJQUFJO3dCQUNKLE9BQU87d0JBQ1AsMEJBQTBCO3FCQUMzQjtnUUFHUSxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE5PX0VSUk9SU19TQ0hFTUEsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCAqIGFzIGNvbnN0YW50cyBmcm9tIFwiLi4vLi4vLi4vY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7TmdDbGFzcywgTmdGb3JPZiwgTmdJZn0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge0lucHV0Q29tcG9uZW50fSBmcm9tIFwiLi4vZm9ybS1maWVsZFwiO1xyXG5pbXBvcnQge0FjdGlvblN0YXRlU2VydmljZSwgQ29yZUkxOG5TZXJ2aWNlLCBDb3JlU2VydmljZSwgU2lkZW5hdlNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlc1wiO1xyXG5pbXBvcnQge0Zvcm0sIFNlY3Rpb259IGZyb20gXCIuLi8uLi8uLi9pbnRlcmZhY2VzXCI7XHJcbmltcG9ydCB7U3VibWl0RGlhbG9nQ29tcG9uZW50fSBmcm9tIFwiLi4vZGlhbG9ncy9zdWJtaXQtZGlhbG9nL3N1Ym1pdC1kaWFsb2cuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7Tm9vcFNjcm9sbFN0cmF0ZWd5fSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcclxuaW1wb3J0IHtNYXREaWFsb2d9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcclxuaW1wb3J0IHtGb3JtR3JvdXB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQge1RvYXN0clNlcnZpY2V9IGZyb20gXCJuZ3gtdG9hc3RyXCI7XHJcbmltcG9ydCB7QXBwcm92YWxzV29ya2Zsb3dDb21wb25lbnR9IGZyb20gXCIuLi8uLi9hcHAtY29tcG9uZW50LXNlY3Rpb25zL2FwcHJvdmFscy13b3JrZmxvdy9hcHByb3ZhbHMtd29ya2Zsb3cuY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1hY3Rpb24tYnV0dG9ucycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FjdGlvbi1idXR0b25zLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYWN0aW9uLWJ1dHRvbnMuY29tcG9uZW50LnNjc3MnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5PX0VSUk9SU19TQ0hFTUFdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nQ2xhc3MsXHJcbiAgICBJbnB1dENvbXBvbmVudCxcclxuICAgIE5nSWYsXHJcbiAgICBOZ0Zvck9mLFxyXG4gICAgQXBwcm92YWxzV29ya2Zsb3dDb21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBY3Rpb25CdXR0b25zQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQElucHV0KCkgbG92T3B0aW9uczogYW55W107XHJcbiAgQElucHV0KCkgbG92VHlwZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGZpZWxkc0Zvcm06IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKSBmb3JtOiBGb3JtO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb246IFNlY3Rpb247XHJcbiAgQElucHV0KCkgc2VjdGlvbnM6IFNlY3Rpb25bXTtcclxuICBASW5wdXQoKSBzaG93QXBwcm92YWxDeWNsZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgY3VzdG9tQ2FsbDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSByZXNldEZvcm1FbWl0OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY3VzdG9tQ2FsbEVtaXQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIGFjdGlvblN0YXRlczogeyBbYWN0aW9uOiBzdHJpbmddOiBib29sZWFuIH07XHJcbiAgaXNTdWJtaXR0aW5nID0ge307XHJcbiAgc3VibWl0dGluZ0Zvcm06IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBpMThuOiBDb3JlSTE4blNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBhY3Rpb25TdGF0ZVNlcnZpY2U6IEFjdGlvblN0YXRlU2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIGNvcmVTZXJ2aWNlOiBDb3JlU2VydmljZSxcclxuICAgICAgICAgICAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSB0b2FzdGVyU2VydmljZTogVG9hc3RyU2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgICAgICAgICAgICBwcml2YXRlIHNpZGVuYXZTZXJ2aWNlOiBTaWRlbmF2U2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5hY3Rpb25TdGF0ZVNlcnZpY2UuYWN0aW9uU3RhdGVzJC5zdWJzY3JpYmUoc3RhdGVzID0+IHRoaXMuYWN0aW9uU3RhdGVzID0gc3RhdGVzKTtcclxuXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmxvdk9wdGlvbnM/LmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgdGhpcy5pc1N1Ym1pdHRpbmdbaXRlbS52YWx1ZV0gPSBmYWxzZVxyXG4gICAgfSlcclxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcmVzZXRGb3JtKCkge1xyXG4gICAgdGhpcy5yZXNldEZvcm1FbWl0LmVtaXQoKVxyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoYWN0aW9uOiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLmN1c3RvbUNhbGwpIHtcclxuICAgICAgdGhpcy5jdXN0b21DYWxsRW1pdC5lbWl0KGFjdGlvbilcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc3VibWl0Rm9ybShhY3Rpb24sIHRoaXMuc2VjdGlvbilcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN1Ym1pdEZvcm0oYWN0aW9uOiBzdHJpbmcsIHNlY3Rpb246IFNlY3Rpb24pIHtcclxuICAgIGNvbnN0IGxhc3RTZWN0aW9uID0gdGhpcy5zZWN0aW9uc1t0aGlzLnNlY3Rpb25zLmxlbmd0aCAtIDFdO1xyXG5cclxuICAgIGlmIChsYXN0U2VjdGlvbi5ib2R5LmRldGFpbHMuZGVjaXNpb24pIHtcclxuICAgICAgbGFzdFNlY3Rpb24uYm9keS5kZXRhaWxzLmRlY2lzaW9uID0ge2tleTogYWN0aW9ufTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmlzU3VibWl0dGluZ1thY3Rpb25dID0gdHJ1ZTtcclxuICAgIHRoaXMuc3VibWl0dGluZ0Zvcm0gPSB0cnVlO1xyXG5cclxuICAgIHRoaXMuY29yZVNlcnZpY2Uuc3VibWl0Rm9ybShzZWN0aW9uLCBhY3Rpb24pLnN1YnNjcmliZShcclxuICAgICAgKHJlc3BvbnNlOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UpIHtcclxuICAgICAgICAgIHRoaXMuaXNTdWJtaXR0aW5nW2FjdGlvbl0gPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMuc3VjY2VzcyhyZXNwb25zZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICBlcnI/LmVycm9yPy5tZXRhPy5tZXNzYWdlcz8uZm9yRWFjaCgobXNnKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnN1Ym1pdHRpbmdGb3JtID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLmlzU3VibWl0dGluZ1thY3Rpb25dID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLmVycm9yKG1zZy5tZXNzYWdlKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHN1Y2Nlc3MocmVzcG9uc2UpIHtcclxuICAgIGNvbnNvbGUubG9nKCdzdWNjZXNzJywgcmVzcG9uc2UpXHJcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKFN1Ym1pdERpYWxvZ0NvbXBvbmVudCwge1xyXG4gICAgICBkYXRhOiByZXNwb25zZSxcclxuICAgICAgcGFuZWxDbGFzczogWydtYWluLXBvcHVwJywgJ2NvbmZpcm0tZGlhbG9nJ10sXHJcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiBuZXcgTm9vcFNjcm9sbFN0cmF0ZWd5KCksXHJcbiAgICB9KTtcclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgYnV0dG9uU2hhcGUoaXRlbSkge1xyXG4gICAgaWYgKGl0ZW0/LnZhbHVlID09PSBjb25zdGFudHMuRk9STV9TVEFUVVNfUkVKRUNUIHx8IGl0ZW0/LnZhbHVlID09PSBjb25zdGFudHMuRk9STV9TVEFUVVNfQ0FOQ0VMIHx8IGl0ZW0/LnZhbHVlID09PSBjb25zdGFudHMuRk9STV9TVEFUVVNfU0VORF9CQUNLKSB7XHJcbiAgICAgIHJldHVybiAnb3V0bGluZSc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJyc7XHJcbiAgfVxyXG5cclxuICBidXR0b25Db2xvcihpdGVtKSB7XHJcbiAgICBpZiAoaXRlbT8udmFsdWUgPT09IGNvbnN0YW50cy5GT1JNX1NUQVRVU19SRUpFQ1QgfHwgaXRlbT8udmFsdWUgPT09IGNvbnN0YW50cy5GT1JNX1NUQVRVU19TRU5EX0JBQ0spIHtcclxuICAgICAgcmV0dXJuICdyZWQnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibXQtNFwiPlxyXG4gIEBpZiAobG92VHlwZSA9PT0gJ2J1dHRvbicpIHtcclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0zXCI+XHJcbiAgICAgIDxkcy1idXR0b24gc2hhcGU9XCJ0ZXh0XCIgY29sb3I9XCJyZWRcIiAoY2xpY2spPVwicmVzZXRGb3JtKClcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImZzLTE2IGZ3LW1lZGl1bVwiPnt7IGkxOG4udHJhbnNsYXRlKCdyZXNldCcpIH19PC9zcGFuPlxyXG4gICAgICA8L2RzLWJ1dHRvbj5cclxuICAgICAgQGlmIChmb3JtPy5zZWN0aW9ucz8ubGVuZ3RoID09IDEgJiYgc2hvd0FwcHJvdmFsQ3ljbGUpIHtcclxuICAgICAgICA8bGliLWFwcHJvdmFscy13b3JrZmxvdyBbc2VjdGlvbl09XCJzZWN0aW9uXCIgW2Zvcm1dPVwiZm9ybVwiPjwvbGliLWFwcHJvdmFscy13b3JrZmxvdz5cclxuICAgICAgfVxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtd3JhcCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1ncm93LTEgZmxleC1yb3ctcmV2ZXJzZSBnYXAtM1wiPlxyXG4gICAgICAgIEBmb3IgKGl0ZW0gb2YgbG92T3B0aW9uczsgdHJhY2sgJGluZGV4KSB7XHJcbiAgICAgICAgICA8ZHMtYnV0dG9uXHJcbiAgICAgICAgICAgIGxvYWRpbmc9XCJ7e2lzU3VibWl0dGluZ1tpdGVtLnZhbHVlXX19XCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlZCc6ICFhY3Rpb25TdGF0ZXNbaXRlbS52YWx1ZV0gfHwgc3VibWl0dGluZ0Zvcm19XCJcclxuICAgICAgICAgICAgc2hhcGU9XCJ7eyBidXR0b25TaGFwZShpdGVtKSB9fVwiXHJcbiAgICAgICAgICAgIGNvbG9yPVwie3sgYnV0dG9uQ29sb3IoaXRlbSkgfX1cIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25TdWJtaXQoaXRlbT8udmFsdWUpXCI+XHJcbiAgICAgICAgICAgIHt7IGl0ZW0/LlsnZGVzY3JpcHRpb24nXSB9fVxyXG4gICAgICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIH0gQGVsc2Uge1xyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtZ3Jvdy0xIGp1c3RpZnktY29udGVudC1lbmQgZ2FwLTNcIj5cclxuICAgICAgPGRzLWJ1dHRvbiBzaGFwZT1cInRleHRcIiBjb2xvcj1cInJlZFwiIChjbGljayk9XCJyZXNldEZvcm0oKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZnMtMTYgZnctbWVkaXVtXCI+e3sgaTE4bi50cmFuc2xhdGUoJ3Jlc2V0JykgfX08L3NwYW4+XHJcbiAgICAgIDwvZHMtYnV0dG9uPlxyXG4gICAgICBAaWYgKGZvcm0/LnNlY3Rpb25zPy5sZW5ndGggPT0gMSAmJiBzaG93QXBwcm92YWxDeWNsZSkge1xyXG4gICAgICAgIDxsaWItYXBwcm92YWxzLXdvcmtmbG93IFtzZWN0aW9uXT1cInNlY3Rpb25cIiBbZm9ybV09XCJmb3JtXCI+PC9saWItYXBwcm92YWxzLXdvcmtmbG93PlxyXG4gICAgICB9XHJcbiAgICAgIDxkcy1idXR0b25cclxuICAgICAgICBbbmdDbGFzc109XCJ7J2Rpc2FibGVkJzogIWFjdGlvblN0YXRlc1snU1VCTUlUJ10gfHwgc3VibWl0dGluZ0Zvcm19XCJcclxuICAgICAgICBsb2FkaW5nPVwie3tpc1N1Ym1pdHRpbmdbJ1NVQk1JVCddfX1cIlxyXG4gICAgICAgIChjbGljayk9XCJvblN1Ym1pdCgnU1VCTUlUJylcIj5cclxuICAgICAgICB7eyBpMThuLnRyYW5zbGF0ZSgnc3VibWl0JykgfX1cclxuICAgICAgPC9kcy1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICB9XHJcbjwvZGl2PlxyXG4iXX0=
|