@unifylib/ui-lib 1.1.48 → 1.1.50
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/components/base-table/base-table.component.mjs +16 -3
- package/esm2022/lib/components/title-bar/title-bar.component.mjs +27 -4
- package/fesm2022/iq-ui-lib.mjs +41 -5
- package/fesm2022/iq-ui-lib.mjs.map +1 -1
- package/fesm2022/unifylib-ui-lib.mjs +41 -5
- package/fesm2022/unifylib-ui-lib.mjs.map +1 -1
- package/lib/components/base-table/base-table.component.d.ts +1 -0
- package/lib/components/title-bar/title-bar.component.d.ts +2 -1
- package/package.json +1 -1
|
@@ -72,7 +72,30 @@ export class TitleBarComponent {
|
|
|
72
72
|
goBack() {
|
|
73
73
|
this.location.back();
|
|
74
74
|
}
|
|
75
|
-
|
|
75
|
+
resolveButtonHref(btn) {
|
|
76
|
+
if (btn.showCommentDialog) {
|
|
77
|
+
return null;
|
|
78
|
+
}
|
|
79
|
+
const lh = btn.linkHref;
|
|
80
|
+
if (lh == null || lh === '') {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
if (typeof lh === 'function') {
|
|
84
|
+
const resolved = lh(undefined);
|
|
85
|
+
const s = resolved != null ? String(resolved).trim() : '';
|
|
86
|
+
return s.length > 0 ? s : null;
|
|
87
|
+
}
|
|
88
|
+
const s = String(lh).trim();
|
|
89
|
+
return s.length > 0 ? s : null;
|
|
90
|
+
}
|
|
91
|
+
onButtonClick(btn, event) {
|
|
92
|
+
const href = this.resolveButtonHref(btn);
|
|
93
|
+
if (href && event) {
|
|
94
|
+
if (event.ctrlKey || event.metaKey || event.button === 1) {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
event.preventDefault();
|
|
98
|
+
}
|
|
76
99
|
this.buttonClicked.emit(btn);
|
|
77
100
|
}
|
|
78
101
|
onViewModeChanged(isPending) {
|
|
@@ -92,7 +115,7 @@ export class TitleBarComponent {
|
|
|
92
115
|
this.onViewModeChanged(value === 'PENDING');
|
|
93
116
|
}
|
|
94
117
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TitleBarComponent, deps: [{ token: i1.Location }, { token: i2.Directionality }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
95
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TitleBarComponent, isStandalone: true, selector: "app-title-bar", inputs: { pageTitle: "pageTitle", showExtractButton: "showExtractButton", totalElements: "totalElements", titleMode: "titleMode", pageInfo: "pageInfo", subTitle: "subTitle", statusDesc: "statusDesc", newAction: "newAction", extraButton: "extraButton", showDetails: "showDetails", showImport: "showImport", showButton: "showButton", extraData: "extraData", titleCorporateAdmin: "titleCorporateAdmin", hideBackButton: "hideBackButton", buttons: "buttons", buttonsDisplayMode: "buttonsDisplayMode", draftSupported: "draftSupported", isPending: "isPending", onViewModeChange: "onViewModeChange" }, outputs: { newActionClicked: "newActionClicked", extraButtonClicked: "extraButtonClicked", extractReport: "extractReport", buttonClicked: "buttonClicked", viewModeChanged: "viewModeChanged" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row mainTitleBar gap-20 default-align\">\r\n\r\n <div class=\"column flex-auto textTitle\" >\r\n <h2 *ngIf=\"!pageInfo.hideTitle\" style=\"margin: 0;\">\r\n <span class=\"textTitle__titleMode\">{{ titleMode | translate }}</span>\r\n {{ listTitle | translate }}\r\n <span *ngIf=\"titleCorporateAdmin && isRoot\">({{ titleCorporateAdmin }})</span>\r\n {{ extraData }}\r\n </h2>\r\n <span *ngIf=\"subTitle\" class=\"textTitle__subTitle\">{{ subTitle | translate }}</span>\r\n <div *ngIf=\"pageInfo.draftSupported\" class=\"chips-container\">\r\n <mat-chip-listbox #box aria-label=\"Color selection\" [multiple]=\"false\" [value]=\"currentIsPending ? 'PENDING' : 'COMPLETED'\" (click)=\"$event.stopPropagation()\" (change)=\"onChipSelectionChange($event, box)\">\r\n <mat-chip-option [selected]=\"!currentIsPending\" [color]=\"'accent'\" value=\"COMPLETED\" (click)=\"$event.stopPropagation()\">\r\n <mat-icon *ngIf=\"!currentIsPending\" style=\"font-size: 14px; width: 14px; height: 14px; margin-right: 4px;\">check</mat-icon>\r\n {{'finished' | translate}}\r\n </mat-chip-option>\r\n <mat-chip-option [selected]=\"currentIsPending\" [color]=\"'accent'\" value=\"PENDING\" (click)=\"$event.stopPropagation()\">\r\n <mat-icon *ngIf=\"currentIsPending\" style=\"font-size: 14px; width: 14px; height: 14px; margin-right: 4px;\">check</mat-icon>\r\n {{'todo' | translate}}\r\n </mat-chip-option>\r\n </mat-chip-listbox>\r\n </div>\r\n </div>\r\n\r\n <div class=\"column end-items gap-20\">\r\n <button mat-flat-button color=\"primary\" style=\"width: 100px\" *ngIf=\"!hideBackButton\" (click)=\"goBack()\" id=\"title-bar-back-btn\">\r\n <mat-icon color=\"second\">{{ backIcon }}</mat-icon>\r\n <span style=\"font-weight: bold\">{{ 'back' | translate }}</span>\r\n </button>\r\n\r\n <div class=\"row flex-auto gap-20 buttons-wrapper\">\r\n <ng-container *ngIf=\"buttonsDisplayMode === 'dropdown'\">\r\n <button\r\n *ngIf=\"buttons && buttons.length > 0\"\r\n mat-flat-button\r\n [matMenuTriggerFor]=\"actionMenu\"\r\n class=\"title-bar-action-button\"\r\n [attr.id]=\"'title-bar-action-button'\">\r\n <div class=\"button-content\">\r\n <mat-icon class=\"button-icon\">{{ buttons[0].icon }}</mat-icon>\r\n <span class=\"button-label\">{{ buttons[0].label | translate }}</span>\r\n <mat-icon class=\"button-arrow\">keyboard_arrow_down</mat-icon>\r\n </div>\r\n </button>\r\n <mat-menu #actionMenu=\"matMenu\" class=\"title-bar-action-menu\">\r\n <button\r\n mat-menu-item\r\n *ngFor=\"let btn of buttons\"\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.id]=\"btn.id || ('title-bar-menu-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"buttonsDisplayMode === 'list'\">\r\n <button\r\n *ngFor=\"let btn of buttons\"\r\n mat-flat-button\r\n color=\"primary\"\r\n class=\"title-bar-list-button\"\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.id]=\"btn.id || ('title-bar-list-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </button>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["", ":host{display:block;width:100%}.mainTitleBar{display:flex;width:100%;gap:20px;align-items:center;justify-content:flex-start}.mainTitleBar.row{flex-direction:row;margin-left:0!important;margin-right:0!important;padding-bottom:20px;border-bottom:1px solid #F0EEEE}.mainTitleBar.column{flex-direction:column}.mainTitleBar .textTitle{flex:1 1 0;display:flex;flex-direction:column;width:auto;gap:12px}.mainTitleBar .textTitle h2{margin:0;padding:0;line-height:1.2}.mainTitleBar .textTitle__titleMode{font-weight:200;color:gray}.mainTitleBar .textTitle__subTitle{color:#888;font-size:16px;font-weight:300;font-style:normal}.mainTitleBar .textTitle .chips-container{margin-top:0}.mainTitleBar .end-items{display:flex;flex-direction:row;align-items:center;gap:20px}.mainTitleBar .buttons-wrapper{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-direction:row;text-align-last:end;margin-left:0!important;margin-right:0!important}.mainTitleBar .buttons-wrapper .action-btn{width:210px!important}.mainTitleBar .title-bar-action-button{background:#0d4261!important;color:#fff!important;border-radius:8px!important;height:44px!important;padding:8px 12px!important;min-width:209px!important;box-shadow:none!important}.mainTitleBar .title-bar-action-button:hover{background:#0a3550!important}.mainTitleBar .title-bar-action-button .button-content{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.mainTitleBar .title-bar-action-button .button-icon{font-size:14px;width:14px;height:14px;color:#fff}.mainTitleBar .title-bar-action-button .button-label{font-weight:500;font-size:16px;line-height:1.2;color:#fff;white-space:nowrap;height:16px}.mainTitleBar .title-bar-action-button .button-arrow{font-size:14px;width:14px;height:14px;color:#fff;margin-left:auto}.mainTitleBar .actionButton{width:100%}.mainTitleBar .actionButton__expand{font-size:20px!important;color:var(--accent-color);margin-top:5px}.mainTitleBar .title-bar-list-button{background:#0d4261!important;color:#fff!important;border-radius:8px!important;height:44px!important;padding:8px 16px!important;min-width:auto!important;box-shadow:none!important;display:flex!important;align-items:center!important;gap:8px!important;font-weight:500!important;font-size:16px!important;line-height:1.2!important;white-space:nowrap!important}.mainTitleBar .title-bar-list-button:hover{background:#0a3550!important}.mainTitleBar .title-bar-list-button mat-icon{font-size:20px!important;width:20px!important;height:28px!important;color:#fff!important;margin:0!important}.mainTitleBar .title-bar-list-button span{color:#fff!important}.mainTitleBar mat-chip-listbox{display:flex;flex-direction:row;gap:8px;align-items:center}.mainTitleBar mat-chip-listbox mat-chip-option{height:32px!important;min-height:32px!important;border-radius:8px!important;font-size:16px!important;line-height:1.2!important;font-weight:400!important;border:none!important;box-shadow:none!important;transition:all .2s ease;font-family:Lusail,sans-serif!important;padding:0!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true],.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true]{background:#0d4261!important;color:#fff!important;font-weight:500!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected .mdc-evolution-chip__text-label,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true] .mdc-evolution-chip__text-label,.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true] .mdc-evolution-chip__text-label{color:#fff!important;font-weight:500!important;padding-left:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected mat-icon,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true] mat-icon,.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true] mat-icon{color:#fff!important}.mainTitleBar mat-chip-listbox mat-chip-option:not(.mdc-evolution-chip--selected):not([selected=true]):not([aria-selected=true]){background:#e9e9e9!important;color:#000!important;font-weight:400!important}.mainTitleBar mat-chip-listbox mat-chip-option:not(.mdc-evolution-chip--selected):not([selected=true]):not([aria-selected=true]) .mdc-evolution-chip__text-label{color:#000!important;font-weight:400!important}.mainTitleBar mat-chip-listbox mat-chip-option .mdc-evolution-chip__action{padding:8px 12px!important;min-height:32px!important;display:flex!important;align-items:center!important;gap:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option .mdc-evolution-chip__text-label{padding:0!important;font-size:16px!important;line-height:1.2!important;font-family:Lusail,sans-serif!important}.mainTitleBar mat-chip-listbox mat-chip-option mat-icon{font-size:14px!important;width:14px!important;height:14px!important;margin-right:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__graphic,.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__checkmark{display:none!important}.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__action--primary{padding:10px!important}.mainTitleBar mat-chip-listbox mat-chip-option:hover{opacity:.9}.row{display:flex;flex-direction:row;width:100%}.column{display:flex;flex-direction:column;width:auto}.fx-flex-fill{width:100%;height:100%;flex:1 1 auto}.flex-auto{flex:1 1 auto;display:flex;flex-direction:column}.end-items{align-items:flex-end}.gap-20{gap:20px}@media (max-width: 960px){.mainTitleBar.row.default-align{justify-content:flex-end}}@media (max-width: 768px){.mainTitleBar.row,.mainTitleBar.column{flex-direction:column;align-items:flex-start;gap:20px}.end-items{align-items:flex-start}}@media (max-width: 600px){.gap-20{gap:10px}}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { 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: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { 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: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "component", type: MatChipListbox, selector: "mat-chip-listbox", inputs: ["multiple", "aria-orientation", "selectable", "compareWith", "required", "hideSingleSelectionIndicator", "value"], outputs: ["change"] }, { kind: "component", type: MatChipOption, selector: "mat-basic-chip-option, [mat-basic-chip-option], mat-chip-option, [mat-chip-option]", inputs: ["selectable", "selected"], outputs: ["selectionChange"] }] }); }
|
|
118
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TitleBarComponent, isStandalone: true, selector: "app-title-bar", inputs: { pageTitle: "pageTitle", showExtractButton: "showExtractButton", totalElements: "totalElements", titleMode: "titleMode", pageInfo: "pageInfo", subTitle: "subTitle", statusDesc: "statusDesc", newAction: "newAction", extraButton: "extraButton", showDetails: "showDetails", showImport: "showImport", showButton: "showButton", extraData: "extraData", titleCorporateAdmin: "titleCorporateAdmin", hideBackButton: "hideBackButton", buttons: "buttons", buttonsDisplayMode: "buttonsDisplayMode", draftSupported: "draftSupported", isPending: "isPending", onViewModeChange: "onViewModeChange" }, outputs: { newActionClicked: "newActionClicked", extraButtonClicked: "extraButtonClicked", extractReport: "extractReport", buttonClicked: "buttonClicked", viewModeChanged: "viewModeChanged" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row mainTitleBar gap-20 default-align\">\r\n\r\n <div class=\"column flex-auto textTitle\" >\r\n <h2 *ngIf=\"!pageInfo.hideTitle\" style=\"margin: 0;\">\r\n <span class=\"textTitle__titleMode\">{{ titleMode | translate }}</span>\r\n {{ listTitle | translate }}\r\n <span *ngIf=\"titleCorporateAdmin && isRoot\">({{ titleCorporateAdmin }})</span>\r\n {{ extraData }}\r\n </h2>\r\n <span *ngIf=\"subTitle\" class=\"textTitle__subTitle\">{{ subTitle | translate }}</span>\r\n <div *ngIf=\"pageInfo.draftSupported\" class=\"chips-container\">\r\n <mat-chip-listbox #box aria-label=\"Color selection\" [multiple]=\"false\" [value]=\"currentIsPending ? 'PENDING' : 'COMPLETED'\" (click)=\"$event.stopPropagation()\" (change)=\"onChipSelectionChange($event, box)\">\r\n <mat-chip-option [selected]=\"!currentIsPending\" [color]=\"'accent'\" value=\"COMPLETED\" (click)=\"$event.stopPropagation()\">\r\n <mat-icon *ngIf=\"!currentIsPending\" style=\"font-size: 14px; width: 14px; height: 14px; margin-right: 4px;\">check</mat-icon>\r\n {{'finished' | translate}}\r\n </mat-chip-option>\r\n <mat-chip-option [selected]=\"currentIsPending\" [color]=\"'accent'\" value=\"PENDING\" (click)=\"$event.stopPropagation()\">\r\n <mat-icon *ngIf=\"currentIsPending\" style=\"font-size: 14px; width: 14px; height: 14px; margin-right: 4px;\">check</mat-icon>\r\n {{'todo' | translate}}\r\n </mat-chip-option>\r\n </mat-chip-listbox>\r\n </div>\r\n </div>\r\n\r\n <div class=\"column end-items gap-20\">\r\n <button type=\"button\" mat-flat-button color=\"primary\" style=\"width: 100px\" *ngIf=\"!hideBackButton\" (click)=\"goBack()\" id=\"title-bar-back-btn\">\r\n <mat-icon color=\"second\">{{ backIcon }}</mat-icon>\r\n <span style=\"font-weight: bold\">{{ 'back' | translate }}</span>\r\n </button>\r\n\r\n <div class=\"row flex-auto gap-20 buttons-wrapper\">\r\n <ng-container *ngIf=\"buttonsDisplayMode === 'dropdown'\">\r\n <button\r\n type=\"button\"\r\n *ngIf=\"buttons && buttons.length > 0\"\r\n mat-flat-button\r\n [matMenuTriggerFor]=\"actionMenu\"\r\n class=\"title-bar-action-button\"\r\n [attr.id]=\"'title-bar-action-button'\">\r\n <div class=\"button-content\">\r\n <mat-icon class=\"button-icon\">{{ buttons[0].icon }}</mat-icon>\r\n <span class=\"button-label\">{{ buttons[0].label | translate }}</span>\r\n <mat-icon class=\"button-arrow\">keyboard_arrow_down</mat-icon>\r\n </div>\r\n </button>\r\n <mat-menu #actionMenu=\"matMenu\" class=\"title-bar-action-menu\">\r\n <ng-container *ngFor=\"let btn of buttons\">\r\n <a\r\n *ngIf=\"resolveButtonHref(btn) as href\"\r\n mat-menu-item\r\n [href]=\"href\"\r\n (click)=\"onButtonClick(btn, $event)\"\r\n [attr.id]=\"btn.id || ('title-bar-menu-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </a>\r\n <button\r\n *ngIf=\"!resolveButtonHref(btn)\"\r\n type=\"button\"\r\n mat-menu-item\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.id]=\"btn.id || ('title-bar-menu-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </button>\r\n </ng-container>\r\n </mat-menu>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"buttonsDisplayMode === 'list'\">\r\n <ng-container *ngFor=\"let btn of buttons\">\r\n <a\r\n *ngIf=\"resolveButtonHref(btn) as href\"\r\n mat-flat-button\r\n color=\"primary\"\r\n class=\"title-bar-list-button\"\r\n [href]=\"href\"\r\n (click)=\"onButtonClick(btn, $event)\"\r\n [attr.id]=\"btn.id || ('title-bar-list-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </a>\r\n <button\r\n *ngIf=\"!resolveButtonHref(btn)\"\r\n type=\"button\"\r\n mat-flat-button\r\n color=\"primary\"\r\n class=\"title-bar-list-button\"\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.id]=\"btn.id || ('title-bar-list-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["", ":host{display:block;width:100%}.mainTitleBar{display:flex;width:100%;gap:20px;align-items:center;justify-content:flex-start}.mainTitleBar.row{flex-direction:row;margin-left:0!important;margin-right:0!important;padding-bottom:20px;border-bottom:1px solid #F0EEEE}.mainTitleBar.column{flex-direction:column}.mainTitleBar .textTitle{flex:1 1 0;display:flex;flex-direction:column;width:auto;gap:12px}.mainTitleBar .textTitle h2{margin:0;padding:0;line-height:1.2}.mainTitleBar .textTitle__titleMode{font-weight:200;color:gray}.mainTitleBar .textTitle__subTitle{color:#888;font-size:16px;font-weight:300;font-style:normal}.mainTitleBar .textTitle .chips-container{margin-top:0}.mainTitleBar .end-items{display:flex;flex-direction:row;align-items:center;gap:20px}.mainTitleBar .buttons-wrapper{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-direction:row;text-align-last:end;margin-left:0!important;margin-right:0!important}.mainTitleBar .buttons-wrapper .action-btn{width:210px!important}.mainTitleBar .title-bar-action-button{background:#0d4261!important;color:#fff!important;border-radius:8px!important;height:44px!important;padding:8px 12px!important;min-width:209px!important;box-shadow:none!important}.mainTitleBar .title-bar-action-button:hover{background:#0a3550!important}.mainTitleBar .title-bar-action-button .button-content{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.mainTitleBar .title-bar-action-button .button-icon{font-size:14px;width:14px;height:14px;color:#fff}.mainTitleBar .title-bar-action-button .button-label{font-weight:500;font-size:16px;line-height:1.2;color:#fff;white-space:nowrap;height:16px}.mainTitleBar .title-bar-action-button .button-arrow{font-size:14px;width:14px;height:14px;color:#fff;margin-left:auto}.mainTitleBar .actionButton{width:100%}.mainTitleBar .actionButton__expand{font-size:20px!important;color:var(--accent-color);margin-top:5px}.mainTitleBar .title-bar-list-button{background:#0d4261!important;color:#fff!important;border-radius:8px!important;height:44px!important;padding:8px 16px!important;min-width:auto!important;box-shadow:none!important;display:flex!important;align-items:center!important;gap:8px!important;font-weight:500!important;font-size:16px!important;line-height:1.2!important;white-space:nowrap!important;text-decoration:none!important;box-sizing:border-box!important;outline:none!important;cursor:pointer!important}.mainTitleBar .title-bar-list-button:hover{background:#0a3550!important}.mainTitleBar .title-bar-list-button mat-icon{font-size:20px!important;width:20px!important;height:28px!important;color:#fff!important;margin:0!important}.mainTitleBar .title-bar-list-button span{color:#fff!important}.mainTitleBar mat-chip-listbox{display:flex;flex-direction:row;gap:8px;align-items:center}.mainTitleBar mat-chip-listbox mat-chip-option{height:32px!important;min-height:32px!important;border-radius:8px!important;font-size:16px!important;line-height:1.2!important;font-weight:400!important;border:none!important;box-shadow:none!important;transition:all .2s ease;font-family:Lusail,sans-serif!important;padding:0!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true],.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true]{background:#0d4261!important;color:#fff!important;font-weight:500!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected .mdc-evolution-chip__text-label,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true] .mdc-evolution-chip__text-label,.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true] .mdc-evolution-chip__text-label{color:#fff!important;font-weight:500!important;padding-left:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected mat-icon,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true] mat-icon,.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true] mat-icon{color:#fff!important}.mainTitleBar mat-chip-listbox mat-chip-option:not(.mdc-evolution-chip--selected):not([selected=true]):not([aria-selected=true]){background:#e9e9e9!important;color:#000!important;font-weight:400!important}.mainTitleBar mat-chip-listbox mat-chip-option:not(.mdc-evolution-chip--selected):not([selected=true]):not([aria-selected=true]) .mdc-evolution-chip__text-label{color:#000!important;font-weight:400!important}.mainTitleBar mat-chip-listbox mat-chip-option .mdc-evolution-chip__action{padding:8px 12px!important;min-height:32px!important;display:flex!important;align-items:center!important;gap:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option .mdc-evolution-chip__text-label{padding:0!important;font-size:16px!important;line-height:1.2!important;font-family:Lusail,sans-serif!important}.mainTitleBar mat-chip-listbox mat-chip-option mat-icon{font-size:14px!important;width:14px!important;height:14px!important;margin-right:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__graphic,.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__checkmark{display:none!important}.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__action--primary{padding:10px!important}.mainTitleBar mat-chip-listbox mat-chip-option:hover{opacity:.9}.row{display:flex;flex-direction:row;width:100%}.column{display:flex;flex-direction:column;width:auto}.fx-flex-fill{width:100%;height:100%;flex:1 1 auto}.flex-auto{flex:1 1 auto;display:flex;flex-direction:column}.end-items{align-items:flex-end}.gap-20{gap:20px}@media (max-width: 960px){.mainTitleBar.row.default-align{justify-content:flex-end}}@media (max-width: 768px){.mainTitleBar.row,.mainTitleBar.column{flex-direction:column;align-items:flex-start;gap:20px}.end-items{align-items:flex-start}}@media (max-width: 600px){.gap-20{gap:10px}}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { 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: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { 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: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "component", type: MatChipListbox, selector: "mat-chip-listbox", inputs: ["multiple", "aria-orientation", "selectable", "compareWith", "required", "hideSingleSelectionIndicator", "value"], outputs: ["change"] }, { kind: "component", type: MatChipOption, selector: "mat-basic-chip-option, [mat-basic-chip-option], mat-chip-option, [mat-chip-option]", inputs: ["selectable", "selected"], outputs: ["selectionChange"] }] }); }
|
|
96
119
|
}
|
|
97
120
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TitleBarComponent, decorators: [{
|
|
98
121
|
type: Component,
|
|
@@ -107,7 +130,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
107
130
|
TranslateModule,
|
|
108
131
|
MatChipListbox,
|
|
109
132
|
MatChipOption,
|
|
110
|
-
], template: "<div class=\"row mainTitleBar gap-20 default-align\">\r\n\r\n <div class=\"column flex-auto textTitle\" >\r\n <h2 *ngIf=\"!pageInfo.hideTitle\" style=\"margin: 0;\">\r\n <span class=\"textTitle__titleMode\">{{ titleMode | translate }}</span>\r\n {{ listTitle | translate }}\r\n <span *ngIf=\"titleCorporateAdmin && isRoot\">({{ titleCorporateAdmin }})</span>\r\n {{ extraData }}\r\n </h2>\r\n <span *ngIf=\"subTitle\" class=\"textTitle__subTitle\">{{ subTitle | translate }}</span>\r\n <div *ngIf=\"pageInfo.draftSupported\" class=\"chips-container\">\r\n <mat-chip-listbox #box aria-label=\"Color selection\" [multiple]=\"false\" [value]=\"currentIsPending ? 'PENDING' : 'COMPLETED'\" (click)=\"$event.stopPropagation()\" (change)=\"onChipSelectionChange($event, box)\">\r\n <mat-chip-option [selected]=\"!currentIsPending\" [color]=\"'accent'\" value=\"COMPLETED\" (click)=\"$event.stopPropagation()\">\r\n <mat-icon *ngIf=\"!currentIsPending\" style=\"font-size: 14px; width: 14px; height: 14px; margin-right: 4px;\">check</mat-icon>\r\n {{'finished' | translate}}\r\n </mat-chip-option>\r\n <mat-chip-option [selected]=\"currentIsPending\" [color]=\"'accent'\" value=\"PENDING\" (click)=\"$event.stopPropagation()\">\r\n <mat-icon *ngIf=\"currentIsPending\" style=\"font-size: 14px; width: 14px; height: 14px; margin-right: 4px;\">check</mat-icon>\r\n {{'todo' | translate}}\r\n </mat-chip-option>\r\n </mat-chip-listbox>\r\n </div>\r\n </div>\r\n\r\n <div class=\"column end-items gap-20\">\r\n <button mat-flat-button color=\"primary\" style=\"width: 100px\" *ngIf=\"!hideBackButton\" (click)=\"goBack()\" id=\"title-bar-back-btn\">\r\n <mat-icon color=\"second\">{{ backIcon }}</mat-icon>\r\n <span style=\"font-weight: bold\">{{ 'back' | translate }}</span>\r\n </button>\r\n\r\n <div class=\"row flex-auto gap-20 buttons-wrapper\">\r\n <ng-container *ngIf=\"buttonsDisplayMode === 'dropdown'\">\r\n <button\r\n *ngIf=\"buttons && buttons.length > 0\"\r\n mat-flat-button\r\n [matMenuTriggerFor]=\"actionMenu\"\r\n class=\"title-bar-action-button\"\r\n [attr.id]=\"'title-bar-action-button'\">\r\n <div class=\"button-content\">\r\n <mat-icon class=\"button-icon\">{{ buttons[0].icon }}</mat-icon>\r\n <span class=\"button-label\">{{ buttons[0].label | translate }}</span>\r\n <mat-icon class=\"button-arrow\">keyboard_arrow_down</mat-icon>\r\n </div>\r\n </button>\r\n <mat-menu #actionMenu=\"matMenu\" class=\"title-bar-action-menu\">\r\n <button\r\n mat-menu-item\r\n *ngFor=\"let btn of buttons\"\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.id]=\"btn.id || ('title-bar-menu-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"buttonsDisplayMode === 'list'\">\r\n <button\r\n *ngFor=\"let btn of buttons\"\r\n mat-flat-button\r\n color=\"primary\"\r\n class=\"title-bar-list-button\"\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.id]=\"btn.id || ('title-bar-list-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </button>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;width:100%}.mainTitleBar{display:flex;width:100%;gap:20px;align-items:center;justify-content:flex-start}.mainTitleBar.row{flex-direction:row;margin-left:0!important;margin-right:0!important;padding-bottom:20px;border-bottom:1px solid #F0EEEE}.mainTitleBar.column{flex-direction:column}.mainTitleBar .textTitle{flex:1 1 0;display:flex;flex-direction:column;width:auto;gap:12px}.mainTitleBar .textTitle h2{margin:0;padding:0;line-height:1.2}.mainTitleBar .textTitle__titleMode{font-weight:200;color:gray}.mainTitleBar .textTitle__subTitle{color:#888;font-size:16px;font-weight:300;font-style:normal}.mainTitleBar .textTitle .chips-container{margin-top:0}.mainTitleBar .end-items{display:flex;flex-direction:row;align-items:center;gap:20px}.mainTitleBar .buttons-wrapper{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-direction:row;text-align-last:end;margin-left:0!important;margin-right:0!important}.mainTitleBar .buttons-wrapper .action-btn{width:210px!important}.mainTitleBar .title-bar-action-button{background:#0d4261!important;color:#fff!important;border-radius:8px!important;height:44px!important;padding:8px 12px!important;min-width:209px!important;box-shadow:none!important}.mainTitleBar .title-bar-action-button:hover{background:#0a3550!important}.mainTitleBar .title-bar-action-button .button-content{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.mainTitleBar .title-bar-action-button .button-icon{font-size:14px;width:14px;height:14px;color:#fff}.mainTitleBar .title-bar-action-button .button-label{font-weight:500;font-size:16px;line-height:1.2;color:#fff;white-space:nowrap;height:16px}.mainTitleBar .title-bar-action-button .button-arrow{font-size:14px;width:14px;height:14px;color:#fff;margin-left:auto}.mainTitleBar .actionButton{width:100%}.mainTitleBar .actionButton__expand{font-size:20px!important;color:var(--accent-color);margin-top:5px}.mainTitleBar .title-bar-list-button{background:#0d4261!important;color:#fff!important;border-radius:8px!important;height:44px!important;padding:8px 16px!important;min-width:auto!important;box-shadow:none!important;display:flex!important;align-items:center!important;gap:8px!important;font-weight:500!important;font-size:16px!important;line-height:1.2!important;white-space:nowrap!important}.mainTitleBar .title-bar-list-button:hover{background:#0a3550!important}.mainTitleBar .title-bar-list-button mat-icon{font-size:20px!important;width:20px!important;height:28px!important;color:#fff!important;margin:0!important}.mainTitleBar .title-bar-list-button span{color:#fff!important}.mainTitleBar mat-chip-listbox{display:flex;flex-direction:row;gap:8px;align-items:center}.mainTitleBar mat-chip-listbox mat-chip-option{height:32px!important;min-height:32px!important;border-radius:8px!important;font-size:16px!important;line-height:1.2!important;font-weight:400!important;border:none!important;box-shadow:none!important;transition:all .2s ease;font-family:Lusail,sans-serif!important;padding:0!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true],.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true]{background:#0d4261!important;color:#fff!important;font-weight:500!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected .mdc-evolution-chip__text-label,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true] .mdc-evolution-chip__text-label,.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true] .mdc-evolution-chip__text-label{color:#fff!important;font-weight:500!important;padding-left:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected mat-icon,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true] mat-icon,.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true] mat-icon{color:#fff!important}.mainTitleBar mat-chip-listbox mat-chip-option:not(.mdc-evolution-chip--selected):not([selected=true]):not([aria-selected=true]){background:#e9e9e9!important;color:#000!important;font-weight:400!important}.mainTitleBar mat-chip-listbox mat-chip-option:not(.mdc-evolution-chip--selected):not([selected=true]):not([aria-selected=true]) .mdc-evolution-chip__text-label{color:#000!important;font-weight:400!important}.mainTitleBar mat-chip-listbox mat-chip-option .mdc-evolution-chip__action{padding:8px 12px!important;min-height:32px!important;display:flex!important;align-items:center!important;gap:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option .mdc-evolution-chip__text-label{padding:0!important;font-size:16px!important;line-height:1.2!important;font-family:Lusail,sans-serif!important}.mainTitleBar mat-chip-listbox mat-chip-option mat-icon{font-size:14px!important;width:14px!important;height:14px!important;margin-right:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__graphic,.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__checkmark{display:none!important}.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__action--primary{padding:10px!important}.mainTitleBar mat-chip-listbox mat-chip-option:hover{opacity:.9}.row{display:flex;flex-direction:row;width:100%}.column{display:flex;flex-direction:column;width:auto}.fx-flex-fill{width:100%;height:100%;flex:1 1 auto}.flex-auto{flex:1 1 auto;display:flex;flex-direction:column}.end-items{align-items:flex-end}.gap-20{gap:20px}@media (max-width: 960px){.mainTitleBar.row.default-align{justify-content:flex-end}}@media (max-width: 768px){.mainTitleBar.row,.mainTitleBar.column{flex-direction:column;align-items:flex-start;gap:20px}.end-items{align-items:flex-start}}@media (max-width: 600px){.gap-20{gap:10px}}\n"] }]
|
|
133
|
+
], template: "<div class=\"row mainTitleBar gap-20 default-align\">\r\n\r\n <div class=\"column flex-auto textTitle\" >\r\n <h2 *ngIf=\"!pageInfo.hideTitle\" style=\"margin: 0;\">\r\n <span class=\"textTitle__titleMode\">{{ titleMode | translate }}</span>\r\n {{ listTitle | translate }}\r\n <span *ngIf=\"titleCorporateAdmin && isRoot\">({{ titleCorporateAdmin }})</span>\r\n {{ extraData }}\r\n </h2>\r\n <span *ngIf=\"subTitle\" class=\"textTitle__subTitle\">{{ subTitle | translate }}</span>\r\n <div *ngIf=\"pageInfo.draftSupported\" class=\"chips-container\">\r\n <mat-chip-listbox #box aria-label=\"Color selection\" [multiple]=\"false\" [value]=\"currentIsPending ? 'PENDING' : 'COMPLETED'\" (click)=\"$event.stopPropagation()\" (change)=\"onChipSelectionChange($event, box)\">\r\n <mat-chip-option [selected]=\"!currentIsPending\" [color]=\"'accent'\" value=\"COMPLETED\" (click)=\"$event.stopPropagation()\">\r\n <mat-icon *ngIf=\"!currentIsPending\" style=\"font-size: 14px; width: 14px; height: 14px; margin-right: 4px;\">check</mat-icon>\r\n {{'finished' | translate}}\r\n </mat-chip-option>\r\n <mat-chip-option [selected]=\"currentIsPending\" [color]=\"'accent'\" value=\"PENDING\" (click)=\"$event.stopPropagation()\">\r\n <mat-icon *ngIf=\"currentIsPending\" style=\"font-size: 14px; width: 14px; height: 14px; margin-right: 4px;\">check</mat-icon>\r\n {{'todo' | translate}}\r\n </mat-chip-option>\r\n </mat-chip-listbox>\r\n </div>\r\n </div>\r\n\r\n <div class=\"column end-items gap-20\">\r\n <button type=\"button\" mat-flat-button color=\"primary\" style=\"width: 100px\" *ngIf=\"!hideBackButton\" (click)=\"goBack()\" id=\"title-bar-back-btn\">\r\n <mat-icon color=\"second\">{{ backIcon }}</mat-icon>\r\n <span style=\"font-weight: bold\">{{ 'back' | translate }}</span>\r\n </button>\r\n\r\n <div class=\"row flex-auto gap-20 buttons-wrapper\">\r\n <ng-container *ngIf=\"buttonsDisplayMode === 'dropdown'\">\r\n <button\r\n type=\"button\"\r\n *ngIf=\"buttons && buttons.length > 0\"\r\n mat-flat-button\r\n [matMenuTriggerFor]=\"actionMenu\"\r\n class=\"title-bar-action-button\"\r\n [attr.id]=\"'title-bar-action-button'\">\r\n <div class=\"button-content\">\r\n <mat-icon class=\"button-icon\">{{ buttons[0].icon }}</mat-icon>\r\n <span class=\"button-label\">{{ buttons[0].label | translate }}</span>\r\n <mat-icon class=\"button-arrow\">keyboard_arrow_down</mat-icon>\r\n </div>\r\n </button>\r\n <mat-menu #actionMenu=\"matMenu\" class=\"title-bar-action-menu\">\r\n <ng-container *ngFor=\"let btn of buttons\">\r\n <a\r\n *ngIf=\"resolveButtonHref(btn) as href\"\r\n mat-menu-item\r\n [href]=\"href\"\r\n (click)=\"onButtonClick(btn, $event)\"\r\n [attr.id]=\"btn.id || ('title-bar-menu-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </a>\r\n <button\r\n *ngIf=\"!resolveButtonHref(btn)\"\r\n type=\"button\"\r\n mat-menu-item\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.id]=\"btn.id || ('title-bar-menu-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </button>\r\n </ng-container>\r\n </mat-menu>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"buttonsDisplayMode === 'list'\">\r\n <ng-container *ngFor=\"let btn of buttons\">\r\n <a\r\n *ngIf=\"resolveButtonHref(btn) as href\"\r\n mat-flat-button\r\n color=\"primary\"\r\n class=\"title-bar-list-button\"\r\n [href]=\"href\"\r\n (click)=\"onButtonClick(btn, $event)\"\r\n [attr.id]=\"btn.id || ('title-bar-list-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </a>\r\n <button\r\n *ngIf=\"!resolveButtonHref(btn)\"\r\n type=\"button\"\r\n mat-flat-button\r\n color=\"primary\"\r\n class=\"title-bar-list-button\"\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.id]=\"btn.id || ('title-bar-list-btn-' + (btn.action || btn.label || btn.key))\">\r\n <mat-icon>{{ btn.icon }}</mat-icon>\r\n <span>{{ btn.label | translate }}</span>\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;width:100%}.mainTitleBar{display:flex;width:100%;gap:20px;align-items:center;justify-content:flex-start}.mainTitleBar.row{flex-direction:row;margin-left:0!important;margin-right:0!important;padding-bottom:20px;border-bottom:1px solid #F0EEEE}.mainTitleBar.column{flex-direction:column}.mainTitleBar .textTitle{flex:1 1 0;display:flex;flex-direction:column;width:auto;gap:12px}.mainTitleBar .textTitle h2{margin:0;padding:0;line-height:1.2}.mainTitleBar .textTitle__titleMode{font-weight:200;color:gray}.mainTitleBar .textTitle__subTitle{color:#888;font-size:16px;font-weight:300;font-style:normal}.mainTitleBar .textTitle .chips-container{margin-top:0}.mainTitleBar .end-items{display:flex;flex-direction:row;align-items:center;gap:20px}.mainTitleBar .buttons-wrapper{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-direction:row;text-align-last:end;margin-left:0!important;margin-right:0!important}.mainTitleBar .buttons-wrapper .action-btn{width:210px!important}.mainTitleBar .title-bar-action-button{background:#0d4261!important;color:#fff!important;border-radius:8px!important;height:44px!important;padding:8px 12px!important;min-width:209px!important;box-shadow:none!important}.mainTitleBar .title-bar-action-button:hover{background:#0a3550!important}.mainTitleBar .title-bar-action-button .button-content{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.mainTitleBar .title-bar-action-button .button-icon{font-size:14px;width:14px;height:14px;color:#fff}.mainTitleBar .title-bar-action-button .button-label{font-weight:500;font-size:16px;line-height:1.2;color:#fff;white-space:nowrap;height:16px}.mainTitleBar .title-bar-action-button .button-arrow{font-size:14px;width:14px;height:14px;color:#fff;margin-left:auto}.mainTitleBar .actionButton{width:100%}.mainTitleBar .actionButton__expand{font-size:20px!important;color:var(--accent-color);margin-top:5px}.mainTitleBar .title-bar-list-button{background:#0d4261!important;color:#fff!important;border-radius:8px!important;height:44px!important;padding:8px 16px!important;min-width:auto!important;box-shadow:none!important;display:flex!important;align-items:center!important;gap:8px!important;font-weight:500!important;font-size:16px!important;line-height:1.2!important;white-space:nowrap!important;text-decoration:none!important;box-sizing:border-box!important;outline:none!important;cursor:pointer!important}.mainTitleBar .title-bar-list-button:hover{background:#0a3550!important}.mainTitleBar .title-bar-list-button mat-icon{font-size:20px!important;width:20px!important;height:28px!important;color:#fff!important;margin:0!important}.mainTitleBar .title-bar-list-button span{color:#fff!important}.mainTitleBar mat-chip-listbox{display:flex;flex-direction:row;gap:8px;align-items:center}.mainTitleBar mat-chip-listbox mat-chip-option{height:32px!important;min-height:32px!important;border-radius:8px!important;font-size:16px!important;line-height:1.2!important;font-weight:400!important;border:none!important;box-shadow:none!important;transition:all .2s ease;font-family:Lusail,sans-serif!important;padding:0!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true],.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true]{background:#0d4261!important;color:#fff!important;font-weight:500!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected .mdc-evolution-chip__text-label,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true] .mdc-evolution-chip__text-label,.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true] .mdc-evolution-chip__text-label{color:#fff!important;font-weight:500!important;padding-left:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option.mdc-evolution-chip--selected mat-icon,.mainTitleBar mat-chip-listbox mat-chip-option[selected=true] mat-icon,.mainTitleBar mat-chip-listbox mat-chip-option[aria-selected=true] mat-icon{color:#fff!important}.mainTitleBar mat-chip-listbox mat-chip-option:not(.mdc-evolution-chip--selected):not([selected=true]):not([aria-selected=true]){background:#e9e9e9!important;color:#000!important;font-weight:400!important}.mainTitleBar mat-chip-listbox mat-chip-option:not(.mdc-evolution-chip--selected):not([selected=true]):not([aria-selected=true]) .mdc-evolution-chip__text-label{color:#000!important;font-weight:400!important}.mainTitleBar mat-chip-listbox mat-chip-option .mdc-evolution-chip__action{padding:8px 12px!important;min-height:32px!important;display:flex!important;align-items:center!important;gap:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option .mdc-evolution-chip__text-label{padding:0!important;font-size:16px!important;line-height:1.2!important;font-family:Lusail,sans-serif!important}.mainTitleBar mat-chip-listbox mat-chip-option mat-icon{font-size:14px!important;width:14px!important;height:14px!important;margin-right:4px!important}.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__graphic,.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__checkmark{display:none!important}.mainTitleBar mat-chip-listbox mat-chip-option ::ng-deep .mdc-evolution-chip__action--primary{padding:10px!important}.mainTitleBar mat-chip-listbox mat-chip-option:hover{opacity:.9}.row{display:flex;flex-direction:row;width:100%}.column{display:flex;flex-direction:column;width:auto}.fx-flex-fill{width:100%;height:100%;flex:1 1 auto}.flex-auto{flex:1 1 auto;display:flex;flex-direction:column}.end-items{align-items:flex-end}.gap-20{gap:20px}@media (max-width: 960px){.mainTitleBar.row.default-align{justify-content:flex-end}}@media (max-width: 768px){.mainTitleBar.row,.mainTitleBar.column{flex-direction:column;align-items:flex-start;gap:20px}.end-items{align-items:flex-start}}@media (max-width: 600px){.gap-20{gap:10px}}\n"] }]
|
|
111
134
|
}], ctorParameters: () => [{ type: i1.Location }, { type: i2.Directionality }], propDecorators: { pageTitle: [{
|
|
112
135
|
type: Input
|
|
113
136
|
}], showExtractButton: [{
|
|
@@ -159,4 +182,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
159
182
|
}], viewModeChanged: [{
|
|
160
183
|
type: Output
|
|
161
184
|
}] } });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGUtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ludm9pY2VxL3VpLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvdGl0bGUtYmFyL3RpdGxlLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZvaWNlcS91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL3RpdGxlLWJhci90aXRsZS1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZHLE9BQU8sRUFBVyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFHcEQsT0FBTyxFQUFDLGNBQWMsRUFBRSxhQUFhLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7O0FBb0J0RSxNQUFNLE9BQU8saUJBQWlCO0lBd0U1QixZQUFvQixRQUFpQixFQUNqQixHQUFtQjtRQURuQixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLFFBQUcsR0FBSCxHQUFHLENBQWdCO1FBdkV2QyxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBR3ZCLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQU1uQyxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBTXZCLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFNdEIsY0FBUyxH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c0JBRFQsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBS04sV0FBVztzQkFEVixLQUFLO2dCQUtOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLGdCQUFnQjtzQkFEZixNQUFNO2dCQUlQLGtCQUFrQjtzQkFEakIsTUFBTTtnQkFLUCxhQUFhO3NCQURaLE1BQU07Z0JBSVAsU0FBUztzQkFEUixLQUFLO2dCQU9OLG1CQUFtQjtzQkFEbEIsS0FBSztnQkFLTixjQUFjO3NCQURiLEtBQUs7Z0JBR0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNO2dCQUNFLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0ksZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtMb2NhdGlvbiwgTmdGb3JPZiwgTmdJZn0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge01hdEljb25Nb2R1bGV9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9pY29uXCI7XHJcbmltcG9ydCB7TWF0QnV0dG9ufSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uXCI7XHJcbmltcG9ydCB7TWF0TWVudSwgTWF0TWVudUl0ZW0sIE1hdE1lbnVUcmlnZ2VyfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudVwiO1xyXG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZX0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcclxuaW1wb3J0IHtEaXJlY3Rpb25hbGl0eX0gZnJvbSBcIkBhbmd1bGFyL2Nkay9iaWRpXCI7XHJcbmltcG9ydCB7QnV0dG9uQWN0aW9uU2V0dGluZ3MsIFBhZ2VJbmZvfSBmcm9tIFwiLi4vLi4vYmFzZS1tb2RlbFwiO1xyXG5pbXBvcnQge01hdENoaXBMaXN0Ym94LCBNYXRDaGlwT3B0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXRpdGxlLWJhcicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBOZ0lmLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIE1hdEJ1dHRvbixcclxuICAgIE1hdE1lbnVJdGVtLFxyXG4gICAgTWF0TWVudSxcclxuICAgIE5nRm9yT2YsXHJcbiAgICBNYXRNZW51VHJpZ2dlcixcclxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcclxuICAgIE1hdENoaXBMaXN0Ym94LFxyXG4gICAgTWF0Q2hpcE9wdGlvbixcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90aXRsZS1iYXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RpdGxlLWJhci5jb21wb25lbnQuY3NzJywgJ3RpdGxlLWJhci5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUaXRsZUJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKVxyXG4gIHBhZ2VUaXRsZTogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgQElucHV0KClcclxuICBzaG93RXh0cmFjdEJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHRvdGFsRWxlbWVudHM/OiBudW1iZXI7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdGl0bGVNb2RlOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgQElucHV0KClcclxuICBwYWdlSW5mbzogUGFnZUluZm87XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc3ViVGl0bGU6IHN0cmluZyA9ICcnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHN0YXR1c0Rlc2M/OiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgbmV3QWN0aW9uOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG5cclxuICBASW5wdXQoKSAvLyBAdHMtaWdub3JlXHJcbiAgZXh0cmFCdXR0b246IHN0cmluZztcclxuXHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2hvd0RldGFpbHM6IGFueSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNob3dJbXBvcnQgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBzaG93QnV0dG9uID0gZmFsc2U7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIG5ld0FjdGlvbkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGV4dHJhQnV0dG9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGV4dHJhY3RSZXBvcnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZXh0cmFEYXRhID0gJyc7XHJcblxyXG4gIGxpc3RUaXRsZSA9ICcnO1xyXG4gIG5ld0J1dHRvbiA9ICcnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHRpdGxlQ29ycG9yYXRlQWRtaW46IHN0cmluZyA9ICcnO1xyXG5cclxuICBpc1Jvb3Q6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIGhpZGVCYWNrQnV0dG9uOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KCkgYnV0dG9uczogQnV0dG9uQWN0aW9uU2V0dGluZ3NbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGJ1dHRvbnNEaXNwbGF5TW9kZTogJ2Ryb3Bkb3duJyB8ICdsaXN0JyA9ICdkcm9wZG93bic7XHJcbiAgQE91dHB1dCgpIGJ1dHRvbkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEJ1dHRvbkFjdGlvblNldHRpbmdzPigpO1xyXG4gIEBJbnB1dCgpIGRyYWZ0U3VwcG9ydGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgaXNQZW5kaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgb25WaWV3TW9kZUNoYW5nZT86IChpc1BlbmRpbmc6IGJvb2xlYW4pID0+IHZvaWQ7XHJcbiAgQE91dHB1dCgpIHZpZXdNb2RlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgcHJpdmF0ZSBfaXNQZW5kaW5nOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9jYXRpb246TG9jYXRpb24sXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBkaXI6IERpcmVjdGlvbmFsaXR5KSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMubGlzdFRpdGxlID0gdGhpcy5wYWdlVGl0bGU7XHJcbiAgICB0aGlzLm5ld0J1dHRvbiA9IHRoaXMuZXh0cmFCdXR0b247XHJcbiAgICAvLyB0aGlzLmlzUm9vdCA9IHRoaXMuYXV0aFNlcnZpY2UuaXNSb290T3JnKCk7XHJcbiAgICB0aGlzLmlzUm9vdCA9IGZhbHNlO1xyXG4gICAgdGhpcy5faXNQZW5kaW5nID0gdGhpcy5pc1BlbmRpbmc7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlc1tcInBhZ2VUaXRsZVwiXSAmJiAhY2hhbmdlc1tcInBhZ2VUaXRsZVwiXS5pc0ZpcnN0Q2hhbmdlKCkgKSB7XHJcbiAgICAgIHRoaXMubGlzdFRpdGxlID0gdGhpcy5wYWdlVGl0bGU7XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1tcImlzUGVuZGluZ1wiXSkge1xyXG4gICAgICB0aGlzLl9pc1BlbmRpbmcgPSB0aGlzLmlzUGVuZGluZztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBjdXJyZW50SXNQZW5kaW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzUGVuZGluZztcclxuICB9XHJcblxyXG4gIGdldCBiYWNrSWNvbigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZGlyLnZhbHVlID09PSAncnRsJyA/ICdhcnJvd19iYWNrJyA6ICdhcnJvd19mb3J3YXJkJztcclxuICB9XHJcblxyXG4gIHB1Ymxpc2hFdmVudCgpIHtcclxuICAgIHRoaXMubmV3QWN0aW9uQ2xpY2tlZC5lbWl0KHRydWUpO1xyXG4gIH1cclxuXHJcblxyXG4gIGRvRXh0cmFjdFJlcG9ydCh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLmV4dHJhY3RSZXBvcnQuZW1pdCh2YWx1ZSk7XHJcbiAgfVxyXG4gIHB1Ymxpc2hFeHRyYUJ1dHRvbkV2ZW50KCkge1xyXG4gICAgdGhpcy5leHRyYUJ1dHRvbkNsaWNrZWQuZW1pdCh0cnVlKTtcclxuICB9XHJcblxyXG4gIGdvQmFjaygpIHtcclxuICAgIHRoaXMubG9jYXRpb24uYmFjaygpXHJcbiAgfVxyXG5cclxuICBvbkJ1dHRvbkNsaWNrKGJ0bjogQnV0dG9uQWN0aW9uU2V0dGluZ3MpIHtcclxuICAgIHRoaXMuYnV0dG9uQ2xpY2tlZC5lbWl0KGJ0bik7XHJcbiAgfVxyXG5cclxuICBvblZpZXdNb2RlQ2hhbmdlZChpc1BlbmRpbmc6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX2lzUGVuZGluZyA9IGlzUGVuZGluZztcclxuICAgICAgICBpZiAodGhpcy5vblZpZXdNb2RlQ2hhbmdlKSB7XHJcbiAgICAgIHRoaXMub25WaWV3TW9kZUNoYW5nZShpc1BlbmRpbmcpO1xyXG4gICAgfVxyXG4gICAgdGhpcy52aWV3TW9kZUNoYW5nZWQuZW1pdChpc1BlbmRpbmcpO1xyXG4gIH1cclxuXHJcbiAgb25DaGlwU2VsZWN0aW9uQ2hhbmdlKGV2ZW50OiBhbnksIGxpc3Rib3g/OiBNYXRDaGlwTGlzdGJveCk6IHZvaWQge1xyXG4gICAgY29uc3QgdmFsdWUgPSBldmVudC52YWx1ZTtcclxuICAgIGlmICh2YWx1ZSAhPT0gJ0NPTVBMRVRFRCcgJiYgdmFsdWUgIT09ICdQRU5ESU5HJykge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IGxpc3Rib3ggJiYgKGxpc3Rib3gudmFsdWUgPSB0aGlzLl9pc1BlbmRpbmcgPyAnUEVORElORycgOiAnQ09NUExFVEVEJykpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5faXNQZW5kaW5nICE9PSAodmFsdWUgPT09ICdQRU5ESU5HJykpIHRoaXMub25WaWV3TW9kZUNoYW5nZWQodmFsdWUgPT09ICdQRU5ESU5HJyk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyb3cgbWFpblRpdGxlQmFyIGdhcC0yMCBkZWZhdWx0LWFsaWduXCI+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJjb2x1bW4gZmxleC1hdXRvIHRleHRUaXRsZVwiID5cclxuICAgIDxoMiAqbmdJZj1cIiFwYWdlSW5mby5oaWRlVGl0bGVcIiBzdHlsZT1cIm1hcmdpbjogMDtcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0VGl0bGVfX3RpdGxlTW9kZVwiPnt7IHRpdGxlTW9kZSB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgICAge3sgbGlzdFRpdGxlIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwidGl0bGVDb3Jwb3JhdGVBZG1pbiAmJiBpc1Jvb3RcIj4oe3sgdGl0bGVDb3Jwb3JhdGVBZG1pbiB9fSk8L3NwYW4+XHJcbiAgICAgIHt7IGV4dHJhRGF0YSB9fVxyXG4gICAgPC9oMj5cclxuICAgIDxzcGFuICpuZ0lmPVwic3ViVGl0bGVcIiBjbGFzcz1cInRleHRUaXRsZV9fc3ViVGl0bGVcIj57eyBzdWJUaXRsZSB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgIDxkaXYgKm5nSWY9XCJwYWdlSW5mby5kcmFmdFN1cHBvcnRlZFwiIGNsYXNzPVwiY2hpcHMtY29udGFpbmVyXCI+XHJcbiAgICAgIDxtYXQtY2hpcC1saXN0Ym94ICNib3ggYXJpYS1sYWJlbD1cIkNvbG9yIHNlbGVjdGlvblwiIFttdWx0aXBsZV09XCJmYWxzZVwiIFt2YWx1ZV09XCJjdXJyZW50SXNQZW5kaW5nID8gJ1BFTkRJTkcnIDogJ0NPTVBMRVRFRCdcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCIgKGNoYW5nZSk9XCJvbkNoaXBTZWxlY3Rpb25DaGFuZ2UoJGV2ZW50LCBib3gpXCI+XHJcbiAgICAgICAgPG1hdC1jaGlwLW9wdGlvbiBbc2VsZWN0ZWRdPVwiIWN1cnJlbnRJc1BlbmRpbmdcIiBbY29sb3JdPVwiJ2FjY2VudCdcIiB2YWx1ZT1cIkNPTVBMRVRFRFwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIiFjdXJyZW50SXNQZW5kaW5nXCIgc3R5bGU9XCJmb250LXNpemU6IDE0cHg7IHdpZHRoOiAxNHB4OyBoZWlnaHQ6IDE0cHg7IG1hcmdpbi1yaWdodDogNHB4O1wiPmNoZWNrPC9tYXQtaWNvbj5cclxuICAgICAgICAgIHt7J2ZpbmlzaGVkJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgPC9tYXQtY2hpcC1vcHRpb24+XHJcbiAgICAgICAgPG1hdC1jaGlwLW9wdGlvbiBbc2VsZWN0ZWRdPVwiY3VycmVudElzUGVuZGluZ1wiIFtjb2xvcl09XCInYWNjZW50J1wiIHZhbHVlPVwiUEVORElOR1wiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImN1cnJlbnRJc1BlbmRpbmdcIiBzdHlsZT1cImZvbnQtc2l6ZTogMTRweDsgd2lkdGg6IDE0cHg7IGhlaWdodDogMTRweDsgbWFyZ2luLXJpZ2h0OiA0cHg7XCI+Y2hlY2s8L21hdC1pY29uPlxyXG4gICAgICAgICAge3sndG9kbycgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgIDwvbWF0LWNoaXAtb3B0aW9uPlxyXG4gICAgICA8L21hdC1jaGlwLWxpc3Rib3g+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImNvbHVtbiBlbmQtaXRlbXMgZ2FwLTIwXCI+XHJcbiAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBzdHlsZT1cIndpZHRoOiAxMDBweFwiICpuZ0lmPVwiIWhpZGVCYWNrQnV0dG9uXCIgKGNsaWNrKT1cImdvQmFjaygpXCIgaWQ9XCJ0aXRsZS1iYXItYmFjay1idG5cIj5cclxuICAgICAgPG1hdC1pY29uIGNvbG9yPVwic2Vjb25kXCI+e3sgYmFja0ljb24gfX08L21hdC1pY29uPlxyXG4gICAgICA8c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkXCI+e3sgJ2JhY2snIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyBmbGV4LWF1dG8gZ2FwLTIwIGJ1dHRvbnMtd3JhcHBlclwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYnV0dG9uc0Rpc3BsYXlNb2RlID09PSAnZHJvcGRvd24nXCI+XHJcbiAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgKm5nSWY9XCJidXR0b25zICYmIGJ1dHRvbnMubGVuZ3RoID4gMFwiXHJcbiAgICAgICAgICBtYXQtZmxhdC1idXR0b25cclxuICAgICAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJhY3Rpb25NZW51XCJcclxuICAgICAgICAgIGNsYXNzPVwidGl0bGUtYmFyLWFjdGlvbi1idXR0b25cIlxyXG4gICAgICAgICAgW2F0dHIuaWRdPVwiJ3RpdGxlLWJhci1hY3Rpb24tYnV0dG9uJ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1jb250ZW50XCI+XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImJ1dHRvbi1pY29uXCI+e3sgYnV0dG9uc1swXS5pY29uIH19PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJidXR0b24tbGFiZWxcIj57eyBidXR0b25zWzBdLmxhYmVsIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJidXR0b24tYXJyb3dcIj5rZXlib2FyZF9hcnJvd19kb3duPC9tYXQtaWNvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxtYXQtbWVudSAjYWN0aW9uTWVudT1cIm1hdE1lbnVcIiBjbGFzcz1cInRpdGxlLWJhci1hY3Rpb24tbWVudVwiPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBtYXQtbWVudS1pdGVtXHJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBidG4gb2YgYnV0dG9uc1wiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkJ1dHRvbkNsaWNrKGJ0bilcIlxyXG4gICAgICAgICAgICBbYXR0ci5pZF09XCJidG4uaWQgfHwgKCd0aXRsZS1iYXItbWVudS1idG4tJyArIChidG4uYWN0aW9uIHx8IGJ0bi5sYWJlbCB8fCBidG4ua2V5KSlcIj5cclxuICAgICAgICAgICAgPG1hdC1pY29uPnt7IGJ0bi5pY29uIH19PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgPHNwYW4+e3sgYnRuLmxhYmVsIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9tYXQtbWVudT5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYnV0dG9uc0Rpc3BsYXlNb2RlID09PSAnbGlzdCdcIj5cclxuICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgYnRuIG9mIGJ1dHRvbnNcIlxyXG4gICAgICAgICAgbWF0LWZsYXQtYnV0dG9uXHJcbiAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxyXG4gICAgICAgICAgY2xhc3M9XCJ0aXRsZS1iYXItbGlzdC1idXR0b25cIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQnV0dG9uQ2xpY2soYnRuKVwiXHJcbiAgICAgICAgICBbYXR0ci5pZF09XCJidG4uaWQgfHwgKCd0aXRsZS1iYXItbGlzdC1idG4tJyArIChidG4uYWN0aW9uIHx8IGJ0bi5sYWJlbCB8fCBidG4ua2V5KSlcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbj57eyBidG4uaWNvbiB9fTwvbWF0LWljb24+XHJcbiAgICAgICAgICA8c3Bhbj57eyBidG4ubGFiZWwgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
185
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGUtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ludm9pY2VxL3VpLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvdGl0bGUtYmFyL3RpdGxlLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZvaWNlcS91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL3RpdGxlLWJhci90aXRsZS1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZHLE9BQU8sRUFBVyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFHcEQsT0FBTyxFQUFDLGNBQWMsRUFBRSxhQUFhLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7O0FBb0J0RSxNQUFNLE9BQU8saUJBQWlCO0lBd0U1QixZQUFvQixRQUFpQixFQUNqQixHQUFtQjtRQURuQixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLFFBQUcsR0FBSCxHQUFHLENBQWdCO1FBdkV2QyxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBR3ZCLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQU1uQyxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBTXZCLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFNdEIsY0FBUyxH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QUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFLTixXQUFXO3NCQURWLEtBQUs7Z0JBS04sV0FBVztzQkFEVixLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sZ0JBQWdCO3NCQURmLE1BQU07Z0JBSVAsa0JBQWtCO3NCQURqQixNQUFNO2dCQUtQLGFBQWE7c0JBRFosTUFBTTtnQkFJUCxTQUFTO3NCQURSLEtBQUs7Z0JBT04sbUJBQW1CO3NCQURsQixLQUFLO2dCQUtOLGNBQWM7c0JBRGIsS0FBSztnQkFHRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNJLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0UsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDSSxlQUFlO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXN9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0xvY2F0aW9uLCBOZ0Zvck9mLCBOZ0lmfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7TWF0SWNvbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2ljb25cIjtcclxuaW1wb3J0IHtNYXRCdXR0b259IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b25cIjtcclxuaW1wb3J0IHtNYXRNZW51LCBNYXRNZW51SXRlbSwgTWF0TWVudVRyaWdnZXJ9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9tZW51XCI7XHJcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xyXG5pbXBvcnQge0RpcmVjdGlvbmFsaXR5fSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2JpZGlcIjtcclxuaW1wb3J0IHtCdXR0b25BY3Rpb25TZXR0aW5ncywgUGFnZUluZm99IGZyb20gXCIuLi8uLi9iYXNlLW1vZGVsXCI7XHJcbmltcG9ydCB7TWF0Q2hpcExpc3Rib3gsIE1hdENoaXBPcHRpb259IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9jaGlwc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtdGl0bGUtYmFyJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nSWYsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uLFxyXG4gICAgTWF0TWVudUl0ZW0sXHJcbiAgICBNYXRNZW51LFxyXG4gICAgTmdGb3JPZixcclxuICAgIE1hdE1lbnVUcmlnZ2VyLFxyXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxyXG4gICAgTWF0Q2hpcExpc3Rib3gsXHJcbiAgICBNYXRDaGlwT3B0aW9uLFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RpdGxlLWJhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGl0bGUtYmFyLmNvbXBvbmVudC5jc3MnLCAndGl0bGUtYmFyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRpdGxlQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpXHJcbiAgcGFnZVRpdGxlOiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNob3dFeHRyYWN0QnV0dG9uOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdG90YWxFbGVtZW50cz86IG51bWJlcjtcclxuXHJcbiAgQElucHV0KClcclxuICB0aXRsZU1vZGU6IHN0cmluZyA9ICcnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHBhZ2VJbmZvOiBQYWdlSW5mbztcclxuXHJcbiAgQElucHV0KClcclxuICBzdWJUaXRsZTogc3RyaW5nID0gJyc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc3RhdHVzRGVzYz86IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBuZXdBY3Rpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcblxyXG4gIEBJbnB1dCgpIC8vIEB0cy1pZ25vcmVcclxuICBleHRyYUJ1dHRvbjogc3RyaW5nO1xyXG5cclxuXHJcbiAgQElucHV0KClcclxuICBzaG93RGV0YWlsczogYW55ID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2hvd0ltcG9ydCA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNob3dCdXR0b24gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgbmV3QWN0aW9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgZXh0cmFCdXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgZXh0cmFjdFJlcG9ydCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQElucHV0KClcclxuICBleHRyYURhdGEgPSAnJztcclxuXHJcbiAgbGlzdFRpdGxlID0gJyc7XHJcbiAgbmV3QnV0dG9uID0gJyc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdGl0bGVDb3Jwb3JhdGVBZG1pbjogc3RyaW5nID0gJyc7XHJcblxyXG4gIGlzUm9vdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgaGlkZUJhY2tCdXR0b246IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKSBidXR0b25zOiBCdXR0b25BY3Rpb25TZXR0aW5nc1tdID0gW107XHJcbiAgQElucHV0KCkgYnV0dG9uc0Rpc3BsYXlNb2RlOiAnZHJvcGRvd24nIHwgJ2xpc3QnID0gJ2Ryb3Bkb3duJztcclxuICBAT3V0cHV0KCkgYnV0dG9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8QnV0dG9uQWN0aW9uU2V0dGluZ3M+KCk7XHJcbiAgQElucHV0KCkgZHJhZnRTdXBwb3J0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBpc1BlbmRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBvblZpZXdNb2RlQ2hhbmdlPzogKGlzUGVuZGluZzogYm9vbGVhbikgPT4gdm9pZDtcclxuICBAT3V0cHV0KCkgdmlld01vZGVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBwcml2YXRlIF9pc1BlbmRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBsb2NhdGlvbjpMb2NhdGlvbixcclxuICAgICAgICAgICAgICBwcml2YXRlIGRpcjogRGlyZWN0aW9uYWxpdHkpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5saXN0VGl0bGUgPSB0aGlzLnBhZ2VUaXRsZTtcclxuICAgIHRoaXMubmV3QnV0dG9uID0gdGhpcy5leHRyYUJ1dHRvbjtcclxuICAgIC8vIHRoaXMuaXNSb290ID0gdGhpcy5hdXRoU2VydmljZS5pc1Jvb3RPcmcoKTtcclxuICAgIHRoaXMuaXNSb290ID0gZmFsc2U7XHJcbiAgICB0aGlzLl9pc1BlbmRpbmcgPSB0aGlzLmlzUGVuZGluZztcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzW1wicGFnZVRpdGxlXCJdICYmICFjaGFuZ2VzW1wicGFnZVRpdGxlXCJdLmlzRmlyc3RDaGFuZ2UoKSApIHtcclxuICAgICAgdGhpcy5saXN0VGl0bGUgPSB0aGlzLnBhZ2VUaXRsZTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzW1wiaXNQZW5kaW5nXCJdKSB7XHJcbiAgICAgIHRoaXMuX2lzUGVuZGluZyA9IHRoaXMuaXNQZW5kaW5nO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IGN1cnJlbnRJc1BlbmRpbmcoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNQZW5kaW5nO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGJhY2tJY29uKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5kaXIudmFsdWUgPT09ICdydGwnID8gJ2Fycm93X2JhY2snIDogJ2Fycm93X2ZvcndhcmQnO1xyXG4gIH1cclxuXHJcbiAgcHVibGlzaEV2ZW50KCkge1xyXG4gICAgdGhpcy5uZXdBY3Rpb25DbGlja2VkLmVtaXQodHJ1ZSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgZG9FeHRyYWN0UmVwb3J0KHZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMuZXh0cmFjdFJlcG9ydC5lbWl0KHZhbHVlKTtcclxuICB9XHJcbiAgcHVibGlzaEV4dHJhQnV0dG9uRXZlbnQoKSB7XHJcbiAgICB0aGlzLmV4dHJhQnV0dG9uQ2xpY2tlZC5lbWl0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgZ29CYWNrKCkge1xyXG4gICAgdGhpcy5sb2NhdGlvbi5iYWNrKClcclxuICB9XHJcblxyXG4gIHJlc29sdmVCdXR0b25IcmVmKGJ0bjogQnV0dG9uQWN0aW9uU2V0dGluZ3MpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgIGlmIChidG4uc2hvd0NvbW1lbnREaWFsb2cpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBjb25zdCBsaCA9IGJ0bi5saW5rSHJlZjtcclxuICAgIGlmIChsaCA9PSBudWxsIHx8IGxoID09PSAnJykge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGlmICh0eXBlb2YgbGggPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgY29uc3QgcmVzb2x2ZWQgPSBsaCh1bmRlZmluZWQgYXMgdW5rbm93bik7XHJcbiAgICAgIGNvbnN0IHMgPSByZXNvbHZlZCAhPSBudWxsID8gU3RyaW5nKHJlc29sdmVkKS50cmltKCkgOiAnJztcclxuICAgICAgcmV0dXJuIHMubGVuZ3RoID4gMCA/IHMgOiBudWxsO1xyXG4gICAgfVxyXG4gICAgY29uc3QgcyA9IFN0cmluZyhsaCkudHJpbSgpO1xyXG4gICAgcmV0dXJuIHMubGVuZ3RoID4gMCA/IHMgOiBudWxsO1xyXG4gIH1cclxuXHJcbiAgb25CdXR0b25DbGljayhidG46IEJ1dHRvbkFjdGlvblNldHRpbmdzLCBldmVudD86IE1vdXNlRXZlbnQpIHtcclxuICAgIGNvbnN0IGhyZWYgPSB0aGlzLnJlc29sdmVCdXR0b25IcmVmKGJ0bik7XHJcbiAgICBpZiAoaHJlZiAmJiBldmVudCkge1xyXG4gICAgICBpZiAoZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5IHx8IGV2ZW50LmJ1dHRvbiA9PT0gMSkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5idXR0b25DbGlja2VkLmVtaXQoYnRuKTtcclxuICB9XHJcblxyXG4gIG9uVmlld01vZGVDaGFuZ2VkKGlzUGVuZGluZzogYm9vbGVhbikge1xyXG4gICAgdGhpcy5faXNQZW5kaW5nID0gaXNQZW5kaW5nO1xyXG4gICAgICAgIGlmICh0aGlzLm9uVmlld01vZGVDaGFuZ2UpIHtcclxuICAgICAgdGhpcy5vblZpZXdNb2RlQ2hhbmdlKGlzUGVuZGluZyk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnZpZXdNb2RlQ2hhbmdlZC5lbWl0KGlzUGVuZGluZyk7XHJcbiAgfVxyXG5cclxuICBvbkNoaXBTZWxlY3Rpb25DaGFuZ2UoZXZlbnQ6IGFueSwgbGlzdGJveD86IE1hdENoaXBMaXN0Ym94KTogdm9pZCB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnZhbHVlO1xyXG4gICAgaWYgKHZhbHVlICE9PSAnQ09NUExFVEVEJyAmJiB2YWx1ZSAhPT0gJ1BFTkRJTkcnKSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gbGlzdGJveCAmJiAobGlzdGJveC52YWx1ZSA9IHRoaXMuX2lzUGVuZGluZyA/ICdQRU5ESU5HJyA6ICdDT01QTEVURUQnKSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLl9pc1BlbmRpbmcgIT09ICh2YWx1ZSA9PT0gJ1BFTkRJTkcnKSkgdGhpcy5vblZpZXdNb2RlQ2hhbmdlZCh2YWx1ZSA9PT0gJ1BFTkRJTkcnKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvdyBtYWluVGl0bGVCYXIgZ2FwLTIwIGRlZmF1bHQtYWxpZ25cIj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImNvbHVtbiBmbGV4LWF1dG8gdGV4dFRpdGxlXCIgPlxyXG4gICAgPGgyICpuZ0lmPVwiIXBhZ2VJbmZvLmhpZGVUaXRsZVwiIHN0eWxlPVwibWFyZ2luOiAwO1wiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInRleHRUaXRsZV9fdGl0bGVNb2RlXCI+e3sgdGl0bGVNb2RlIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICB7eyBsaXN0VGl0bGUgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgPHNwYW4gKm5nSWY9XCJ0aXRsZUNvcnBvcmF0ZUFkbWluICYmIGlzUm9vdFwiPih7eyB0aXRsZUNvcnBvcmF0ZUFkbWluIH19KTwvc3Bhbj5cclxuICAgICAge3sgZXh0cmFEYXRhIH19XHJcbiAgICA8L2gyPlxyXG4gICAgPHNwYW4gKm5nSWY9XCJzdWJUaXRsZVwiIGNsYXNzPVwidGV4dFRpdGxlX19zdWJUaXRsZVwiPnt7IHN1YlRpdGxlIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgPGRpdiAqbmdJZj1cInBhZ2VJbmZvLmRyYWZ0U3VwcG9ydGVkXCIgY2xhc3M9XCJjaGlwcy1jb250YWluZXJcIj5cclxuICAgICAgPG1hdC1jaGlwLWxpc3Rib3ggI2JveCBhcmlhLWxhYmVsPVwiQ29sb3Igc2VsZWN0aW9uXCIgW211bHRpcGxlXT1cImZhbHNlXCIgW3ZhbHVlXT1cImN1cnJlbnRJc1BlbmRpbmcgPyAnUEVORElORycgOiAnQ09NUExFVEVEJ1wiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIiAoY2hhbmdlKT1cIm9uQ2hpcFNlbGVjdGlvbkNoYW5nZSgkZXZlbnQsIGJveClcIj5cclxuICAgICAgICA8bWF0LWNoaXAtb3B0aW9uIFtzZWxlY3RlZF09XCIhY3VycmVudElzUGVuZGluZ1wiIFtjb2xvcl09XCInYWNjZW50J1wiIHZhbHVlPVwiQ09NUExFVEVEXCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIWN1cnJlbnRJc1BlbmRpbmdcIiBzdHlsZT1cImZvbnQtc2l6ZTogMTRweDsgd2lkdGg6IDE0cHg7IGhlaWdodDogMTRweDsgbWFyZ2luLXJpZ2h0OiA0cHg7XCI+Y2hlY2s8L21hdC1pY29uPlxyXG4gICAgICAgICAge3snZmluaXNoZWQnIHwgdHJhbnNsYXRlfX1cclxuICAgICAgICA8L21hdC1jaGlwLW9wdGlvbj5cclxuICAgICAgICA8bWF0LWNoaXAtb3B0aW9uIFtzZWxlY3RlZF09XCJjdXJyZW50SXNQZW5kaW5nXCIgW2NvbG9yXT1cIidhY2NlbnQnXCIgdmFsdWU9XCJQRU5ESU5HXCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiY3VycmVudElzUGVuZGluZ1wiIHN0eWxlPVwiZm9udC1zaXplOiAxNHB4OyB3aWR0aDogMTRweDsgaGVpZ2h0OiAxNHB4OyBtYXJnaW4tcmlnaHQ6IDRweDtcIj5jaGVjazwvbWF0LWljb24+XHJcbiAgICAgICAgICB7eyd0b2RvJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgPC9tYXQtY2hpcC1vcHRpb24+XHJcbiAgICAgIDwvbWF0LWNoaXAtbGlzdGJveD5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiY29sdW1uIGVuZC1pdGVtcyBnYXAtMjBcIj5cclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBzdHlsZT1cIndpZHRoOiAxMDBweFwiICpuZ0lmPVwiIWhpZGVCYWNrQnV0dG9uXCIgKGNsaWNrKT1cImdvQmFjaygpXCIgaWQ9XCJ0aXRsZS1iYXItYmFjay1idG5cIj5cclxuICAgICAgPG1hdC1pY29uIGNvbG9yPVwic2Vjb25kXCI+e3sgYmFja0ljb24gfX08L21hdC1pY29uPlxyXG4gICAgICA8c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkXCI+e3sgJ2JhY2snIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyBmbGV4LWF1dG8gZ2FwLTIwIGJ1dHRvbnMtd3JhcHBlclwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYnV0dG9uc0Rpc3BsYXlNb2RlID09PSAnZHJvcGRvd24nXCI+XHJcbiAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAqbmdJZj1cImJ1dHRvbnMgJiYgYnV0dG9ucy5sZW5ndGggPiAwXCJcclxuICAgICAgICAgIG1hdC1mbGF0LWJ1dHRvblxyXG4gICAgICAgICAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cImFjdGlvbk1lbnVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJ0aXRsZS1iYXItYWN0aW9uLWJ1dHRvblwiXHJcbiAgICAgICAgICBbYXR0ci5pZF09XCIndGl0bGUtYmFyLWFjdGlvbi1idXR0b24nXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiYnV0dG9uLWljb25cIj57eyBidXR0b25zWzBdLmljb24gfX08L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJ1dHRvbi1sYWJlbFwiPnt7IGJ1dHRvbnNbMF0ubGFiZWwgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImJ1dHRvbi1hcnJvd1wiPmtleWJvYXJkX2Fycm93X2Rvd248L21hdC1pY29uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPG1hdC1tZW51ICNhY3Rpb25NZW51PVwibWF0TWVudVwiIGNsYXNzPVwidGl0bGUtYmFyLWFjdGlvbi1tZW51XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBidG4gb2YgYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICpuZ0lmPVwicmVzb2x2ZUJ1dHRvbkhyZWYoYnRuKSBhcyBocmVmXCJcclxuICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXHJcbiAgICAgICAgICAgICAgW2hyZWZdPVwiaHJlZlwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQnV0dG9uQ2xpY2soYnRuLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgICBbYXR0ci5pZF09XCJidG4uaWQgfHwgKCd0aXRsZS1iYXItbWVudS1idG4tJyArIChidG4uYWN0aW9uIHx8IGJ0bi5sYWJlbCB8fCBidG4ua2V5KSlcIj5cclxuICAgICAgICAgICAgICA8bWF0LWljb24+e3sgYnRuLmljb24gfX08L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgIDxzcGFuPnt7IGJ0bi5sYWJlbCB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgKm5nSWY9XCIhcmVzb2x2ZUJ1dHRvbkhyZWYoYnRuKVwiXHJcbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgbWF0LW1lbnUtaXRlbVxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkJ1dHRvbkNsaWNrKGJ0bilcIlxyXG4gICAgICAgICAgICAgIFthdHRyLmlkXT1cImJ0bi5pZCB8fCAoJ3RpdGxlLWJhci1tZW51LWJ0bi0nICsgKGJ0bi5hY3Rpb24gfHwgYnRuLmxhYmVsIHx8IGJ0bi5rZXkpKVwiPlxyXG4gICAgICAgICAgICAgIDxtYXQtaWNvbj57eyBidG4uaWNvbiB9fTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgPHNwYW4+e3sgYnRuLmxhYmVsIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvbWF0LW1lbnU+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImJ1dHRvbnNEaXNwbGF5TW9kZSA9PT0gJ2xpc3QnXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYnRuIG9mIGJ1dHRvbnNcIj5cclxuICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICpuZ0lmPVwicmVzb2x2ZUJ1dHRvbkhyZWYoYnRuKSBhcyBocmVmXCJcclxuICAgICAgICAgICAgbWF0LWZsYXQtYnV0dG9uXHJcbiAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidGl0bGUtYmFyLWxpc3QtYnV0dG9uXCJcclxuICAgICAgICAgICAgW2hyZWZdPVwiaHJlZlwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkJ1dHRvbkNsaWNrKGJ0biwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFthdHRyLmlkXT1cImJ0bi5pZCB8fCAoJ3RpdGxlLWJhci1saXN0LWJ0bi0nICsgKGJ0bi5hY3Rpb24gfHwgYnRuLmxhYmVsIHx8IGJ0bi5rZXkpKVwiPlxyXG4gICAgICAgICAgICA8bWF0LWljb24+e3sgYnRuLmljb24gfX08L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8c3Bhbj57eyBidG4ubGFiZWwgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICpuZ0lmPVwiIXJlc29sdmVCdXR0b25IcmVmKGJ0bilcIlxyXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgbWF0LWZsYXQtYnV0dG9uXHJcbiAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidGl0bGUtYmFyLWxpc3QtYnV0dG9uXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQnV0dG9uQ2xpY2soYnRuKVwiXHJcbiAgICAgICAgICAgIFthdHRyLmlkXT1cImJ0bi5pZCB8fCAoJ3RpdGxlLWJhci1saXN0LWJ0bi0nICsgKGJ0bi5hY3Rpb24gfHwgYnRuLmxhYmVsIHx8IGJ0bi5rZXkpKVwiPlxyXG4gICAgICAgICAgICA8bWF0LWljb24+e3sgYnRuLmljb24gfX08L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8c3Bhbj57eyBidG4ubGFiZWwgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|